bug 513697: [Interoperability][Rpy] Move Rpy migration plugin into new git

Change-Id: I0063032a5997f51269f065bbdf31388059549718
Signed-off-by: Vincent Lorenzo <vincent.lorenzo@cea.fr>
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/.classpath b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/.classpath
new file mode 100644
index 0000000..e4dad7e
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/.classpath
@@ -0,0 +1,7 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<classpath>
+	<classpathentry kind="src" path="src-gen"/>
+	<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-1.6"/>
+	<classpathentry kind="con" path="org.eclipse.pde.core.requiredPlugins"/>
+	<classpathentry kind="output" path="bin"/>
+</classpath>
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/.gitignore b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/.gitignore
new file mode 100644
index 0000000..ae3c172
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/.gitignore
@@ -0,0 +1 @@
+/bin/
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/.project b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/.project
new file mode 100644
index 0000000..ce3a470
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/.project
@@ -0,0 +1,28 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<projectDescription>
+	<name>org.eclipse.papyrus.interoperability.rpy.metamodel.edit</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.jdt.core.javanature</nature>
+		<nature>org.eclipse.pde.PluginNature</nature>
+	</natures>
+</projectDescription>
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/.settings/org.eclipse.jdt.core.prefs b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/.settings/org.eclipse.jdt.core.prefs
new file mode 100644
index 0000000..b3aa6d6
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/.settings/org.eclipse.jdt.core.prefs
@@ -0,0 +1,291 @@
+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
+org.eclipse.jdt.core.formatter.align_type_members_on_columns=false
+org.eclipse.jdt.core.formatter.alignment_for_arguments_in_allocation_expression=16
+org.eclipse.jdt.core.formatter.alignment_for_arguments_in_annotation=0
+org.eclipse.jdt.core.formatter.alignment_for_arguments_in_enum_constant=16
+org.eclipse.jdt.core.formatter.alignment_for_arguments_in_explicit_constructor_call=16
+org.eclipse.jdt.core.formatter.alignment_for_arguments_in_method_invocation=16
+org.eclipse.jdt.core.formatter.alignment_for_arguments_in_qualified_allocation_expression=16
+org.eclipse.jdt.core.formatter.alignment_for_assignment=0
+org.eclipse.jdt.core.formatter.alignment_for_binary_expression=16
+org.eclipse.jdt.core.formatter.alignment_for_compact_if=16
+org.eclipse.jdt.core.formatter.alignment_for_conditional_expression=80
+org.eclipse.jdt.core.formatter.alignment_for_enum_constants=0
+org.eclipse.jdt.core.formatter.alignment_for_expressions_in_array_initializer=16
+org.eclipse.jdt.core.formatter.alignment_for_method_declaration=0
+org.eclipse.jdt.core.formatter.alignment_for_multiple_fields=16
+org.eclipse.jdt.core.formatter.alignment_for_parameters_in_constructor_declaration=16
+org.eclipse.jdt.core.formatter.alignment_for_parameters_in_method_declaration=16
+org.eclipse.jdt.core.formatter.alignment_for_resources_in_try=80
+org.eclipse.jdt.core.formatter.alignment_for_selector_in_method_invocation=16
+org.eclipse.jdt.core.formatter.alignment_for_superclass_in_type_declaration=16
+org.eclipse.jdt.core.formatter.alignment_for_superinterfaces_in_enum_declaration=16
+org.eclipse.jdt.core.formatter.alignment_for_superinterfaces_in_type_declaration=16
+org.eclipse.jdt.core.formatter.alignment_for_throws_clause_in_constructor_declaration=16
+org.eclipse.jdt.core.formatter.alignment_for_throws_clause_in_method_declaration=16
+org.eclipse.jdt.core.formatter.alignment_for_union_type_in_multicatch=16
+org.eclipse.jdt.core.formatter.blank_lines_after_imports=1
+org.eclipse.jdt.core.formatter.blank_lines_after_package=1
+org.eclipse.jdt.core.formatter.blank_lines_before_field=0
+org.eclipse.jdt.core.formatter.blank_lines_before_first_class_body_declaration=0
+org.eclipse.jdt.core.formatter.blank_lines_before_imports=1
+org.eclipse.jdt.core.formatter.blank_lines_before_member_type=1
+org.eclipse.jdt.core.formatter.blank_lines_before_method=1
+org.eclipse.jdt.core.formatter.blank_lines_before_new_chunk=1
+org.eclipse.jdt.core.formatter.blank_lines_before_package=0
+org.eclipse.jdt.core.formatter.blank_lines_between_import_groups=1
+org.eclipse.jdt.core.formatter.blank_lines_between_type_declarations=1
+org.eclipse.jdt.core.formatter.brace_position_for_annotation_type_declaration=end_of_line
+org.eclipse.jdt.core.formatter.brace_position_for_anonymous_type_declaration=end_of_line
+org.eclipse.jdt.core.formatter.brace_position_for_array_initializer=end_of_line
+org.eclipse.jdt.core.formatter.brace_position_for_block=end_of_line
+org.eclipse.jdt.core.formatter.brace_position_for_block_in_case=end_of_line
+org.eclipse.jdt.core.formatter.brace_position_for_constructor_declaration=end_of_line
+org.eclipse.jdt.core.formatter.brace_position_for_enum_constant=end_of_line
+org.eclipse.jdt.core.formatter.brace_position_for_enum_declaration=end_of_line
+org.eclipse.jdt.core.formatter.brace_position_for_lambda_body=end_of_line
+org.eclipse.jdt.core.formatter.brace_position_for_method_declaration=end_of_line
+org.eclipse.jdt.core.formatter.brace_position_for_switch=end_of_line
+org.eclipse.jdt.core.formatter.brace_position_for_type_declaration=end_of_line
+org.eclipse.jdt.core.formatter.comment.clear_blank_lines_in_block_comment=false
+org.eclipse.jdt.core.formatter.comment.clear_blank_lines_in_javadoc_comment=false
+org.eclipse.jdt.core.formatter.comment.format_block_comments=true
+org.eclipse.jdt.core.formatter.comment.format_header=false
+org.eclipse.jdt.core.formatter.comment.format_html=true
+org.eclipse.jdt.core.formatter.comment.format_javadoc_comments=true
+org.eclipse.jdt.core.formatter.comment.format_line_comments=true
+org.eclipse.jdt.core.formatter.comment.format_source_code=true
+org.eclipse.jdt.core.formatter.comment.indent_parameter_description=true
+org.eclipse.jdt.core.formatter.comment.indent_root_tags=true
+org.eclipse.jdt.core.formatter.comment.insert_new_line_before_root_tags=insert
+org.eclipse.jdt.core.formatter.comment.insert_new_line_for_parameter=insert
+org.eclipse.jdt.core.formatter.comment.line_length=260
+org.eclipse.jdt.core.formatter.comment.new_lines_at_block_boundaries=true
+org.eclipse.jdt.core.formatter.comment.new_lines_at_javadoc_boundaries=true
+org.eclipse.jdt.core.formatter.comment.preserve_white_space_between_code_and_line_comments=false
+org.eclipse.jdt.core.formatter.compact_else_if=true
+org.eclipse.jdt.core.formatter.continuation_indentation=2
+org.eclipse.jdt.core.formatter.continuation_indentation_for_array_initializer=2
+org.eclipse.jdt.core.formatter.disabling_tag=@formatter\:off
+org.eclipse.jdt.core.formatter.enabling_tag=@formatter\:on
+org.eclipse.jdt.core.formatter.format_guardian_clause_on_one_line=false
+org.eclipse.jdt.core.formatter.format_line_comment_starting_on_first_column=true
+org.eclipse.jdt.core.formatter.indent_body_declarations_compare_to_annotation_declaration_header=true
+org.eclipse.jdt.core.formatter.indent_body_declarations_compare_to_enum_constant_header=true
+org.eclipse.jdt.core.formatter.indent_body_declarations_compare_to_enum_declaration_header=true
+org.eclipse.jdt.core.formatter.indent_body_declarations_compare_to_type_header=true
+org.eclipse.jdt.core.formatter.indent_breaks_compare_to_cases=true
+org.eclipse.jdt.core.formatter.indent_empty_lines=false
+org.eclipse.jdt.core.formatter.indent_statements_compare_to_block=true
+org.eclipse.jdt.core.formatter.indent_statements_compare_to_body=true
+org.eclipse.jdt.core.formatter.indent_switchstatements_compare_to_cases=true
+org.eclipse.jdt.core.formatter.indent_switchstatements_compare_to_switch=false
+org.eclipse.jdt.core.formatter.indentation.size=4
+org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_field=insert
+org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_local_variable=insert
+org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_method=insert
+org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_package=insert
+org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_parameter=do not insert
+org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_type=insert
+org.eclipse.jdt.core.formatter.insert_new_line_after_label=do not insert
+org.eclipse.jdt.core.formatter.insert_new_line_after_opening_brace_in_array_initializer=do not insert
+org.eclipse.jdt.core.formatter.insert_new_line_after_type_annotation=do not insert
+org.eclipse.jdt.core.formatter.insert_new_line_at_end_of_file_if_missing=do not insert
+org.eclipse.jdt.core.formatter.insert_new_line_before_catch_in_try_statement=do not insert
+org.eclipse.jdt.core.formatter.insert_new_line_before_closing_brace_in_array_initializer=do not insert
+org.eclipse.jdt.core.formatter.insert_new_line_before_else_in_if_statement=do not insert
+org.eclipse.jdt.core.formatter.insert_new_line_before_finally_in_try_statement=do not insert
+org.eclipse.jdt.core.formatter.insert_new_line_before_while_in_do_statement=do not insert
+org.eclipse.jdt.core.formatter.insert_new_line_in_empty_annotation_declaration=insert
+org.eclipse.jdt.core.formatter.insert_new_line_in_empty_anonymous_type_declaration=insert
+org.eclipse.jdt.core.formatter.insert_new_line_in_empty_block=insert
+org.eclipse.jdt.core.formatter.insert_new_line_in_empty_enum_constant=insert
+org.eclipse.jdt.core.formatter.insert_new_line_in_empty_enum_declaration=insert
+org.eclipse.jdt.core.formatter.insert_new_line_in_empty_method_body=insert
+org.eclipse.jdt.core.formatter.insert_new_line_in_empty_type_declaration=insert
+org.eclipse.jdt.core.formatter.insert_space_after_and_in_type_parameter=insert
+org.eclipse.jdt.core.formatter.insert_space_after_assignment_operator=insert
+org.eclipse.jdt.core.formatter.insert_space_after_at_in_annotation=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_at_in_annotation_type_declaration=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_binary_operator=insert
+org.eclipse.jdt.core.formatter.insert_space_after_closing_angle_bracket_in_type_arguments=insert
+org.eclipse.jdt.core.formatter.insert_space_after_closing_angle_bracket_in_type_parameters=insert
+org.eclipse.jdt.core.formatter.insert_space_after_closing_brace_in_block=insert
+org.eclipse.jdt.core.formatter.insert_space_after_closing_paren_in_cast=insert
+org.eclipse.jdt.core.formatter.insert_space_after_colon_in_assert=insert
+org.eclipse.jdt.core.formatter.insert_space_after_colon_in_case=insert
+org.eclipse.jdt.core.formatter.insert_space_after_colon_in_conditional=insert
+org.eclipse.jdt.core.formatter.insert_space_after_colon_in_for=insert
+org.eclipse.jdt.core.formatter.insert_space_after_colon_in_labeled_statement=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_allocation_expression=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_annotation=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_array_initializer=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_constructor_declaration_parameters=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_constructor_declaration_throws=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_enum_constant_arguments=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_enum_declarations=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_explicitconstructorcall_arguments=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_for_increments=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_for_inits=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_method_declaration_parameters=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_method_declaration_throws=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_method_invocation_arguments=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_multiple_field_declarations=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_multiple_local_declarations=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_parameterized_type_reference=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_superinterfaces=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_type_arguments=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_type_parameters=insert
+org.eclipse.jdt.core.formatter.insert_space_after_ellipsis=insert
+org.eclipse.jdt.core.formatter.insert_space_after_lambda_arrow=insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_angle_bracket_in_parameterized_type_reference=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_angle_bracket_in_type_arguments=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_angle_bracket_in_type_parameters=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_brace_in_array_initializer=insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_bracket_in_array_allocation_expression=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_bracket_in_array_reference=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_annotation=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_cast=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_catch=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_constructor_declaration=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_enum_constant=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_for=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_if=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_method_declaration=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_method_invocation=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_parenthesized_expression=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_switch=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_synchronized=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_try=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_while=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_postfix_operator=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_prefix_operator=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_question_in_conditional=insert
+org.eclipse.jdt.core.formatter.insert_space_after_question_in_wildcard=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_semicolon_in_for=insert
+org.eclipse.jdt.core.formatter.insert_space_after_semicolon_in_try_resources=insert
+org.eclipse.jdt.core.formatter.insert_space_after_unary_operator=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_and_in_type_parameter=insert
+org.eclipse.jdt.core.formatter.insert_space_before_assignment_operator=insert
+org.eclipse.jdt.core.formatter.insert_space_before_at_in_annotation_type_declaration=insert
+org.eclipse.jdt.core.formatter.insert_space_before_binary_operator=insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_angle_bracket_in_parameterized_type_reference=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_angle_bracket_in_type_arguments=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_angle_bracket_in_type_parameters=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_brace_in_array_initializer=insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_bracket_in_array_allocation_expression=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_bracket_in_array_reference=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_annotation=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_cast=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_catch=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_constructor_declaration=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_enum_constant=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_for=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_if=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_method_declaration=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_method_invocation=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_parenthesized_expression=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_switch=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_synchronized=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_try=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_while=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_colon_in_assert=insert
+org.eclipse.jdt.core.formatter.insert_space_before_colon_in_case=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_colon_in_conditional=insert
+org.eclipse.jdt.core.formatter.insert_space_before_colon_in_default=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_colon_in_for=insert
+org.eclipse.jdt.core.formatter.insert_space_before_colon_in_labeled_statement=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_allocation_expression=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_annotation=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_array_initializer=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_constructor_declaration_parameters=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_constructor_declaration_throws=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_enum_constant_arguments=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_enum_declarations=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_explicitconstructorcall_arguments=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_for_increments=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_for_inits=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_method_declaration_parameters=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_method_declaration_throws=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_method_invocation_arguments=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_multiple_field_declarations=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_multiple_local_declarations=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_parameterized_type_reference=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_superinterfaces=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_type_arguments=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_type_parameters=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_ellipsis=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_lambda_arrow=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_angle_bracket_in_parameterized_type_reference=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_angle_bracket_in_type_arguments=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_angle_bracket_in_type_parameters=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_annotation_type_declaration=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_anonymous_type_declaration=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_array_initializer=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_block=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_constructor_declaration=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_enum_constant=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_enum_declaration=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_method_declaration=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_switch=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_type_declaration=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_bracket_in_array_allocation_expression=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_bracket_in_array_reference=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_bracket_in_array_type_reference=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_annotation=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_annotation_type_member_declaration=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_catch=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_constructor_declaration=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_enum_constant=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_for=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_if=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_method_declaration=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_method_invocation=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_parenthesized_expression=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_switch=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_synchronized=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_try=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_while=insert
+org.eclipse.jdt.core.formatter.insert_space_before_parenthesized_expression_in_return=insert
+org.eclipse.jdt.core.formatter.insert_space_before_parenthesized_expression_in_throw=insert
+org.eclipse.jdt.core.formatter.insert_space_before_postfix_operator=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_prefix_operator=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_question_in_conditional=insert
+org.eclipse.jdt.core.formatter.insert_space_before_question_in_wildcard=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_semicolon=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_semicolon_in_for=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_semicolon_in_try_resources=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_unary_operator=do not insert
+org.eclipse.jdt.core.formatter.insert_space_between_brackets_in_array_type_reference=do not insert
+org.eclipse.jdt.core.formatter.insert_space_between_empty_braces_in_array_initializer=do not insert
+org.eclipse.jdt.core.formatter.insert_space_between_empty_brackets_in_array_allocation_expression=do not insert
+org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_annotation_type_member_declaration=do not insert
+org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_constructor_declaration=do not insert
+org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_enum_constant=do not insert
+org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_method_declaration=do not insert
+org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_method_invocation=do not insert
+org.eclipse.jdt.core.formatter.join_lines_in_comments=false
+org.eclipse.jdt.core.formatter.join_wrapped_lines=false
+org.eclipse.jdt.core.formatter.keep_else_statement_on_same_line=false
+org.eclipse.jdt.core.formatter.keep_empty_array_initializer_on_one_line=false
+org.eclipse.jdt.core.formatter.keep_imple_if_on_one_line=false
+org.eclipse.jdt.core.formatter.keep_then_statement_on_same_line=false
+org.eclipse.jdt.core.formatter.lineSplit=260
+org.eclipse.jdt.core.formatter.never_indent_block_comments_on_first_column=false
+org.eclipse.jdt.core.formatter.never_indent_line_comments_on_first_column=false
+org.eclipse.jdt.core.formatter.number_of_blank_lines_at_beginning_of_method_body=0
+org.eclipse.jdt.core.formatter.number_of_empty_lines_to_preserve=5
+org.eclipse.jdt.core.formatter.put_empty_statement_on_new_line=true
+org.eclipse.jdt.core.formatter.tabulation.char=tab
+org.eclipse.jdt.core.formatter.tabulation.size=4
+org.eclipse.jdt.core.formatter.use_on_off_tags=false
+org.eclipse.jdt.core.formatter.use_tabs_only_for_leading_indentations=false
+org.eclipse.jdt.core.formatter.wrap_before_binary_operator=true
+org.eclipse.jdt.core.formatter.wrap_before_or_operator_multicatch=true
+org.eclipse.jdt.core.formatter.wrap_outer_expressions_when_nested=true
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/.settings/org.eclipse.jdt.ui.prefs b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/.settings/org.eclipse.jdt.ui.prefs
new file mode 100644
index 0000000..954281d
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/.settings/org.eclipse.jdt.ui.prefs
@@ -0,0 +1,68 @@
+cleanup.add_default_serial_version_id=true
+cleanup.add_generated_serial_version_id=false
+cleanup.add_missing_annotations=true
+cleanup.add_missing_deprecated_annotations=true
+cleanup.add_missing_methods=false
+cleanup.add_missing_nls_tags=false
+cleanup.add_missing_override_annotations=true
+cleanup.add_missing_override_annotations_interface_methods=true
+cleanup.add_serial_version_id=false
+cleanup.always_use_blocks=true
+cleanup.always_use_parentheses_in_expressions=false
+cleanup.always_use_this_for_non_static_field_access=false
+cleanup.always_use_this_for_non_static_method_access=false
+cleanup.convert_functional_interfaces=false
+cleanup.convert_to_enhanced_for_loop=false
+cleanup.correct_indentation=false
+cleanup.format_source_code=false
+cleanup.format_source_code_changes_only=false
+cleanup.insert_inferred_type_arguments=false
+cleanup.make_local_variable_final=true
+cleanup.make_parameters_final=false
+cleanup.make_private_fields_final=true
+cleanup.make_type_abstract_if_missing_method=false
+cleanup.make_variable_declarations_final=false
+cleanup.never_use_blocks=false
+cleanup.never_use_parentheses_in_expressions=true
+cleanup.organize_imports=false
+cleanup.qualify_static_field_accesses_with_declaring_class=false
+cleanup.qualify_static_member_accesses_through_instances_with_declaring_class=true
+cleanup.qualify_static_member_accesses_through_subtypes_with_declaring_class=true
+cleanup.qualify_static_member_accesses_with_declaring_class=true
+cleanup.qualify_static_method_accesses_with_declaring_class=false
+cleanup.remove_private_constructors=true
+cleanup.remove_redundant_type_arguments=true
+cleanup.remove_trailing_whitespaces=true
+cleanup.remove_trailing_whitespaces_all=true
+cleanup.remove_trailing_whitespaces_ignore_empty=false
+cleanup.remove_unnecessary_casts=true
+cleanup.remove_unnecessary_nls_tags=true
+cleanup.remove_unused_imports=true
+cleanup.remove_unused_local_variables=false
+cleanup.remove_unused_private_fields=true
+cleanup.remove_unused_private_members=false
+cleanup.remove_unused_private_methods=true
+cleanup.remove_unused_private_types=true
+cleanup.sort_members=false
+cleanup.sort_members_all=false
+cleanup.use_anonymous_class_creation=false
+cleanup.use_blocks=true
+cleanup.use_blocks_only_for_return_and_throw=false
+cleanup.use_lambda=true
+cleanup.use_parentheses_in_expressions=false
+cleanup.use_this_for_non_static_field_access=false
+cleanup.use_this_for_non_static_field_access_only_if_necessary=true
+cleanup.use_this_for_non_static_method_access=false
+cleanup.use_this_for_non_static_method_access_only_if_necessary=true
+cleanup.use_type_arguments=false
+cleanup_profile=_Papyrus
+cleanup_settings_version=2
+eclipse.preferences.version=1
+formatter_profile=_Papyrus
+formatter_settings_version=12
+org.eclipse.jdt.ui.ignorelowercasenames=true
+org.eclipse.jdt.ui.importorder=java;javax;org;com;
+org.eclipse.jdt.ui.javadoc=true
+org.eclipse.jdt.ui.ondemandthreshold=99
+org.eclipse.jdt.ui.staticondemandthreshold=99
+org.eclipse.jdt.ui.text.custom_code_templates=<?xml version\="1.0" encoding\="UTF-8" standalone\="no"?><templates><template autoinsert\="true" context\="gettercomment_context" deleted\="false" description\="Comment for getter method" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.gettercomment" name\="gettercomment">/**\n * @return the ${bare_field_name}\n */</template><template autoinsert\="true" context\="settercomment_context" deleted\="false" description\="Comment for setter method" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.settercomment" name\="settercomment">/**\n * @param ${param} the ${bare_field_name} to set\n */</template><template autoinsert\="false" context\="constructorcomment_context" deleted\="false" description\="Comment for created constructors" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.constructorcomment" name\="constructorcomment">/**\n * Constructor.\n *\n * ${tags}\n */</template><template autoinsert\="false" context\="filecomment_context" deleted\="false" description\="Comment for created Java files" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.filecomment" name\="filecomment">/*****************************************************************************\n * Copyright (c) ${year} CEA LIST and others.\n * \n * All rights reserved. This program and the accompanying materials\n * are made available under the terms of the Eclipse Public License v1.0\n * which accompanies this distribution, and is available at\n * http\://www.eclipse.org/legal/epl-v10.html\n *\n * Contributors\:\n *   CEA LIST - Initial API and implementation\n *   \n *****************************************************************************/\n</template><template autoinsert\="true" context\="typecomment_context" deleted\="false" description\="Comment for created types" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.typecomment" name\="typecomment">/**\n * @author ${user}\n *\n * ${tags}\n */</template><template autoinsert\="true" context\="fieldcomment_context" deleted\="false" description\="Comment for fields" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.fieldcomment" name\="fieldcomment">/**\n * \n */</template><template autoinsert\="true" context\="methodcomment_context" deleted\="false" description\="Comment for non-overriding methods" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.methodcomment" name\="methodcomment">/**\n * ${tags}\n */</template><template autoinsert\="false" context\="overridecomment_context" deleted\="false" description\="Comment for overriding methods" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.overridecomment" name\="overridecomment">/**\n * ${see_to_overridden}\n *\n * ${tags}\n */</template><template autoinsert\="false" context\="delegatecomment_context" deleted\="false" description\="Comment for delegate methods" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.delegatecomment" name\="delegatecomment">/**\n * ${see_to_target}\n *\n * ${tags}\n */</template><template autoinsert\="true" context\="newtype_context" deleted\="false" description\="Newly created files" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.newtype" name\="newtype">${filecomment}\n${package_declaration}\n\n${typecomment}\n${type_declaration}</template><template autoinsert\="true" context\="classbody_context" deleted\="false" description\="Code in new class type bodies" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.classbody" name\="classbody">\n</template><template autoinsert\="true" context\="interfacebody_context" deleted\="false" description\="Code in new interface type bodies" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.interfacebody" name\="interfacebody">\n</template><template autoinsert\="true" context\="enumbody_context" deleted\="false" description\="Code in new enum type bodies" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.enumbody" name\="enumbody">\n</template><template autoinsert\="true" context\="annotationbody_context" deleted\="false" description\="Code in new annotation type bodies" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.annotationbody" name\="annotationbody">\n</template><template autoinsert\="true" context\="catchblock_context" deleted\="false" description\="Code in new catch blocks" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.catchblock" name\="catchblock">// ${todo} Auto-generated catch block\n${exception_var}.printStackTrace();</template><template autoinsert\="true" context\="methodbody_context" deleted\="false" description\="Code in created method stubs" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.methodbody" name\="methodbody">// ${todo} Auto-generated method stub\n${body_statement}</template><template autoinsert\="true" context\="constructorbody_context" deleted\="false" description\="Code in created constructor stubs" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.constructorbody" name\="constructorbody">${body_statement}\n// ${todo} Auto-generated constructor stub</template><template autoinsert\="true" context\="getterbody_context" deleted\="false" description\="Code in created getters" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.getterbody" name\="getterbody">return ${field};</template><template autoinsert\="true" context\="setterbody_context" deleted\="false" description\="Code in created setters" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.setterbody" name\="setterbody">${field} \= ${param};</template></templates>
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/.settings/org.eclipse.pde.api.tools.prefs b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/.settings/org.eclipse.pde.api.tools.prefs
new file mode 100644
index 0000000..23fb95e
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/.settings/org.eclipse.pde.api.tools.prefs
@@ -0,0 +1,98 @@
+ANNOTATION_ELEMENT_TYPE_ADDED_METHOD_WITHOUT_DEFAULT_VALUE=Error
+ANNOTATION_ELEMENT_TYPE_CHANGED_TYPE_CONVERSION=Error
+ANNOTATION_ELEMENT_TYPE_REMOVED_FIELD=Error
+ANNOTATION_ELEMENT_TYPE_REMOVED_METHOD=Error
+ANNOTATION_ELEMENT_TYPE_REMOVED_TYPE_MEMBER=Error
+API_COMPONENT_ELEMENT_TYPE_REMOVED_API_TYPE=Error
+API_COMPONENT_ELEMENT_TYPE_REMOVED_REEXPORTED_API_TYPE=Error
+API_COMPONENT_ELEMENT_TYPE_REMOVED_REEXPORTED_TYPE=Error
+API_COMPONENT_ELEMENT_TYPE_REMOVED_TYPE=Error
+API_USE_SCAN_FIELD_SEVERITY=Error
+API_USE_SCAN_METHOD_SEVERITY=Error
+API_USE_SCAN_TYPE_SEVERITY=Error
+CLASS_ELEMENT_TYPE_ADDED_METHOD=Error
+CLASS_ELEMENT_TYPE_ADDED_RESTRICTIONS=Error
+CLASS_ELEMENT_TYPE_ADDED_TYPE_PARAMETER=Error
+CLASS_ELEMENT_TYPE_CHANGED_CONTRACTED_SUPERINTERFACES_SET=Error
+CLASS_ELEMENT_TYPE_CHANGED_DECREASE_ACCESS=Error
+CLASS_ELEMENT_TYPE_CHANGED_NON_ABSTRACT_TO_ABSTRACT=Error
+CLASS_ELEMENT_TYPE_CHANGED_NON_FINAL_TO_FINAL=Error
+CLASS_ELEMENT_TYPE_CHANGED_TYPE_CONVERSION=Error
+CLASS_ELEMENT_TYPE_REMOVED_CONSTRUCTOR=Error
+CLASS_ELEMENT_TYPE_REMOVED_FIELD=Error
+CLASS_ELEMENT_TYPE_REMOVED_METHOD=Error
+CLASS_ELEMENT_TYPE_REMOVED_SUPERCLASS=Error
+CLASS_ELEMENT_TYPE_REMOVED_TYPE_MEMBER=Error
+CLASS_ELEMENT_TYPE_REMOVED_TYPE_PARAMETER=Error
+CONSTRUCTOR_ELEMENT_TYPE_ADDED_TYPE_PARAMETER=Error
+CONSTRUCTOR_ELEMENT_TYPE_CHANGED_DECREASE_ACCESS=Error
+CONSTRUCTOR_ELEMENT_TYPE_CHANGED_VARARGS_TO_ARRAY=Error
+CONSTRUCTOR_ELEMENT_TYPE_REMOVED_TYPE_PARAMETER=Error
+ENUM_ELEMENT_TYPE_CHANGED_CONTRACTED_SUPERINTERFACES_SET=Error
+ENUM_ELEMENT_TYPE_CHANGED_TYPE_CONVERSION=Error
+ENUM_ELEMENT_TYPE_REMOVED_ENUM_CONSTANT=Error
+ENUM_ELEMENT_TYPE_REMOVED_FIELD=Error
+ENUM_ELEMENT_TYPE_REMOVED_METHOD=Error
+ENUM_ELEMENT_TYPE_REMOVED_TYPE_MEMBER=Error
+FIELD_ELEMENT_TYPE_ADDED_VALUE=Error
+FIELD_ELEMENT_TYPE_CHANGED_DECREASE_ACCESS=Error
+FIELD_ELEMENT_TYPE_CHANGED_FINAL_TO_NON_FINAL_STATIC_CONSTANT=Error
+FIELD_ELEMENT_TYPE_CHANGED_NON_FINAL_TO_FINAL=Error
+FIELD_ELEMENT_TYPE_CHANGED_NON_STATIC_TO_STATIC=Error
+FIELD_ELEMENT_TYPE_CHANGED_STATIC_TO_NON_STATIC=Error
+FIELD_ELEMENT_TYPE_CHANGED_TYPE=Error
+FIELD_ELEMENT_TYPE_CHANGED_VALUE=Error
+FIELD_ELEMENT_TYPE_REMOVED_TYPE_ARGUMENT=Error
+FIELD_ELEMENT_TYPE_REMOVED_VALUE=Error
+ILLEGAL_EXTEND=Warning
+ILLEGAL_IMPLEMENT=Warning
+ILLEGAL_INSTANTIATE=Warning
+ILLEGAL_OVERRIDE=Warning
+ILLEGAL_REFERENCE=Warning
+INTERFACE_ELEMENT_TYPE_ADDED_FIELD=Ignore
+INTERFACE_ELEMENT_TYPE_ADDED_METHOD=Error
+INTERFACE_ELEMENT_TYPE_ADDED_RESTRICTIONS=Error
+INTERFACE_ELEMENT_TYPE_ADDED_SUPER_INTERFACE_WITH_METHODS=Error
+INTERFACE_ELEMENT_TYPE_ADDED_TYPE_PARAMETER=Error
+INTERFACE_ELEMENT_TYPE_CHANGED_CONTRACTED_SUPERINTERFACES_SET=Error
+INTERFACE_ELEMENT_TYPE_CHANGED_TYPE_CONVERSION=Error
+INTERFACE_ELEMENT_TYPE_REMOVED_FIELD=Error
+INTERFACE_ELEMENT_TYPE_REMOVED_METHOD=Error
+INTERFACE_ELEMENT_TYPE_REMOVED_TYPE_MEMBER=Error
+INTERFACE_ELEMENT_TYPE_REMOVED_TYPE_PARAMETER=Error
+INVALID_ANNOTATION=Ignore
+INVALID_JAVADOC_TAG=Ignore
+INVALID_REFERENCE_IN_SYSTEM_LIBRARIES=Ignore
+LEAK_EXTEND=Warning
+LEAK_FIELD_DECL=Warning
+LEAK_IMPLEMENT=Warning
+LEAK_METHOD_PARAM=Warning
+LEAK_METHOD_RETURN_TYPE=Warning
+METHOD_ELEMENT_TYPE_ADDED_RESTRICTIONS=Error
+METHOD_ELEMENT_TYPE_ADDED_TYPE_PARAMETER=Error
+METHOD_ELEMENT_TYPE_CHANGED_DECREASE_ACCESS=Error
+METHOD_ELEMENT_TYPE_CHANGED_NON_ABSTRACT_TO_ABSTRACT=Error
+METHOD_ELEMENT_TYPE_CHANGED_NON_FINAL_TO_FINAL=Error
+METHOD_ELEMENT_TYPE_CHANGED_NON_STATIC_TO_STATIC=Error
+METHOD_ELEMENT_TYPE_CHANGED_STATIC_TO_NON_STATIC=Error
+METHOD_ELEMENT_TYPE_CHANGED_VARARGS_TO_ARRAY=Error
+METHOD_ELEMENT_TYPE_REMOVED_ANNOTATION_DEFAULT_VALUE=Error
+METHOD_ELEMENT_TYPE_REMOVED_TYPE_PARAMETER=Error
+MISSING_EE_DESCRIPTIONS=Error
+TYPE_PARAMETER_ELEMENT_TYPE_ADDED_CLASS_BOUND=Error
+TYPE_PARAMETER_ELEMENT_TYPE_ADDED_INTERFACE_BOUND=Error
+TYPE_PARAMETER_ELEMENT_TYPE_CHANGED_CLASS_BOUND=Error
+TYPE_PARAMETER_ELEMENT_TYPE_CHANGED_INTERFACE_BOUND=Error
+TYPE_PARAMETER_ELEMENT_TYPE_REMOVED_CLASS_BOUND=Error
+TYPE_PARAMETER_ELEMENT_TYPE_REMOVED_INTERFACE_BOUND=Error
+UNUSED_PROBLEM_FILTERS=Warning
+automatically_removed_unused_problem_filters=Enabled
+eclipse.preferences.version=1
+incompatible_api_component_version=Error
+incompatible_api_component_version_include_major_without_breaking_change=Disabled
+incompatible_api_component_version_include_minor_without_api_change=Disabled
+invalid_since_tag_version=Error
+malformed_since_tag=Error
+missing_since_tag=Warning
+report_api_breakage_when_major_version_incremented=Disabled
+report_resolution_errors_api_component=Warning
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/META-INF/MANIFEST.MF b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/META-INF/MANIFEST.MF
new file mode 100644
index 0000000..a9ae323
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/META-INF/MANIFEST.MF
@@ -0,0 +1,18 @@
+Manifest-Version: 1.0
+Bundle-ManifestVersion: 2
+Bundle-Name: %pluginName
+Bundle-SymbolicName: org.eclipse.papyrus.interoperability.rpy.metamodel.edit;singleton:=true
+Bundle-Version: 0.7.0.qualifier
+Bundle-ClassPath: .
+Bundle-Activator: org.eclipse.papyrus.interoperability.rpy.rpymetamodel.provider.rpymetamodelEditPlugin$Implementation$Activator
+Bundle-Vendor: %providerName
+Bundle-Localization: plugin
+Bundle-RequiredExecutionEnvironment: JavaSE-1.6
+Export-Package: org.eclipse.papyrus.interoperability.rpy.rpymetamodel.provider
+Require-Bundle: org.eclipse.core.runtime;resolution:=optional;x-installation:=greedy,
+ org.eclipse.papyrus.interoperability.rpy.metamodel;visibility:=reexport,
+ org.eclipse.emf.edit;visibility:=reexport,
+ org.eclipse.emf.ecore;visibility:=reexport,
+ org.eclipse.emf.ecore.edit;visibility:=reexport
+Import-Package: org.osgi.framework
+Bundle-ActivationPolicy: lazy
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/about.html b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/about.html
new file mode 100644
index 0000000..dd3c089
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/about.html
@@ -0,0 +1,28 @@
+<!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>About</title>
+</head>
+<body lang="EN-US">
+<h2>About This Content</h2>
+ 
+<p>November 14, 2008</p>	
+<h3>License</h3>
+
+<p>The Eclipse Foundation makes available all content in this plug-in (&quot;Content&quot;).  Unless otherwise 
+indicated below, the Content is provided to you under the terms and conditions of the
+Eclipse Public License Version 1.0 (&quot;EPL&quot;).  A copy of the EPL is 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, &quot;Program&quot; will mean the Content.</p>
+
+<p>If you did not receive this Content directly from the Eclipse Foundation, the Content is 
+being redistributed by another party (&quot;Redistributor&quot;) and different terms and conditions may
+apply to your use of any object code in the Content.  Check the Redistributor's license that was 
+provided with the Content.  If no such license exists, contact the Redistributor.  Unless otherwise
+indicated below, the terms and conditions of the EPL still apply to any source code in the Content
+and such source code may be obtained at <a href="http://www.eclipse.org">http://www.eclipse.org</a>.</p>
+
+</body>
+</html>
\ No newline at end of file
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/build.properties b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/build.properties
new file mode 100644
index 0000000..74fbda7
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/build.properties
@@ -0,0 +1,12 @@
+#
+
+bin.includes = .,\
+               icons/,\
+               META-INF/,\
+               plugin.xml,\
+               about.html,\
+               plugin.properties
+jars.compile.order = .
+source.. = src-gen/
+output.. = bin/
+src.includes = about.html
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIActionState_m_AdditionalLabel_CGIText.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIActionState_m_AdditionalLabel_CGIText.gif
new file mode 100755
index 0000000..d59b3c9
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIActionState_m_AdditionalLabel_CGIText.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIActionState_properties_IPropertyContainer.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIActionState_properties_IPropertyContainer.gif
new file mode 100755
index 0000000..30b27aa
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIActionState_properties_IPropertyContainer.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIActiveX_m_PartsArray_IAcceptEventAction.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIActiveX_m_PartsArray_IAcceptEventAction.gif
new file mode 100755
index 0000000..0dccd27
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIActiveX_m_PartsArray_IAcceptEventAction.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIActiveX_m_PartsArray_IAcceptTimeEvent.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIActiveX_m_PartsArray_IAcceptTimeEvent.gif
new file mode 100755
index 0000000..3826602
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIActiveX_m_PartsArray_IAcceptTimeEvent.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIActiveX_m_PartsArray_IActivityDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIActiveX_m_PartsArray_IActivityDiagram.gif
new file mode 100755
index 0000000..d37f295
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIActiveX_m_PartsArray_IActivityDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIActiveX_m_PartsArray_IActivityGraph.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIActiveX_m_PartsArray_IActivityGraph.gif
new file mode 100755
index 0000000..6a6170e
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIActiveX_m_PartsArray_IActivityGraph.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIActiveX_m_PartsArray_IActor.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIActiveX_m_PartsArray_IActor.gif
new file mode 100755
index 0000000..03366e3
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIActiveX_m_PartsArray_IActor.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIActiveX_m_PartsArray_IAssociationClass.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIActiveX_m_PartsArray_IAssociationClass.gif
new file mode 100755
index 0000000..481390b
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIActiveX_m_PartsArray_IAssociationClass.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIActiveX_m_PartsArray_IAttribute.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIActiveX_m_PartsArray_IAttribute.gif
new file mode 100755
index 0000000..0e92151
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIActiveX_m_PartsArray_IAttribute.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIActiveX_m_PartsArray_ICallOperation.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIActiveX_m_PartsArray_ICallOperation.gif
new file mode 100755
index 0000000..086cf80
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIActiveX_m_PartsArray_ICallOperation.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIActiveX_m_PartsArray_IClass.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIActiveX_m_PartsArray_IClass.gif
new file mode 100755
index 0000000..33193f9
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIActiveX_m_PartsArray_IClass.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIActiveX_m_PartsArray_ICodeGenConfigInfo.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIActiveX_m_PartsArray_ICodeGenConfigInfo.gif
new file mode 100755
index 0000000..325b0b9
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIActiveX_m_PartsArray_ICodeGenConfigInfo.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIActiveX_m_PartsArray_ICollaborationDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIActiveX_m_PartsArray_ICollaborationDiagram.gif
new file mode 100755
index 0000000..a7efbef
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIActiveX_m_PartsArray_ICollaborationDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIActiveX_m_PartsArray_IComponent.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIActiveX_m_PartsArray_IComponent.gif
new file mode 100755
index 0000000..3826602
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIActiveX_m_PartsArray_IComponent.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIActiveX_m_PartsArray_IComponentDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIActiveX_m_PartsArray_IComponentDiagram.gif
new file mode 100755
index 0000000..4bbe527
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIActiveX_m_PartsArray_IComponentDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIActiveX_m_PartsArray_IDefaultDrvdTrans.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIActiveX_m_PartsArray_IDefaultDrvdTrans.gif
new file mode 100755
index 0000000..745594b
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIActiveX_m_PartsArray_IDefaultDrvdTrans.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIActiveX_m_PartsArray_IDependency.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIActiveX_m_PartsArray_IDependency.gif
new file mode 100755
index 0000000..6cb8e23
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIActiveX_m_PartsArray_IDependency.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIActiveX_m_PartsArray_IDeploymentDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIActiveX_m_PartsArray_IDeploymentDiagram.gif
new file mode 100755
index 0000000..5d1e5fc
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIActiveX_m_PartsArray_IDeploymentDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIActiveX_m_PartsArray_IDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIActiveX_m_PartsArray_IDiagram.gif
new file mode 100755
index 0000000..5095ded
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIActiveX_m_PartsArray_IDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIActiveX_m_PartsArray_IHyperLink.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIActiveX_m_PartsArray_IHyperLink.gif
new file mode 100755
index 0000000..a35176a
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIActiveX_m_PartsArray_IHyperLink.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIActiveX_m_PartsArray_IInformationFlow.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIActiveX_m_PartsArray_IInformationFlow.gif
new file mode 100755
index 0000000..3826602
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIActiveX_m_PartsArray_IInformationFlow.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIActiveX_m_PartsArray_IInformationItem.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIActiveX_m_PartsArray_IInformationItem.gif
new file mode 100755
index 0000000..03366e3
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIActiveX_m_PartsArray_IInformationItem.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIActiveX_m_PartsArray_IMSC.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIActiveX_m_PartsArray_IMSC.gif
new file mode 100755
index 0000000..0dccd27
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIActiveX_m_PartsArray_IMSC.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIActiveX_m_PartsArray_IMatrixInstance.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIActiveX_m_PartsArray_IMatrixInstance.gif
new file mode 100755
index 0000000..b24124a
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIActiveX_m_PartsArray_IMatrixInstance.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIActiveX_m_PartsArray_IMessage.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIActiveX_m_PartsArray_IMessage.gif
new file mode 100755
index 0000000..3d537d9
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIActiveX_m_PartsArray_IMessage.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIActiveX_m_PartsArray_IModule.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIActiveX_m_PartsArray_IModule.gif
new file mode 100755
index 0000000..65c0cbe
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIActiveX_m_PartsArray_IModule.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIActiveX_m_PartsArray_IObjectLink.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIActiveX_m_PartsArray_IObjectLink.gif
new file mode 100755
index 0000000..5204d4b
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIActiveX_m_PartsArray_IObjectLink.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIActiveX_m_PartsArray_IObjectModelDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIActiveX_m_PartsArray_IObjectModelDiagram.gif
new file mode 100755
index 0000000..f76ecf0
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIActiveX_m_PartsArray_IObjectModelDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIActiveX_m_PartsArray_IObjectNode.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIActiveX_m_PartsArray_IObjectNode.gif
new file mode 100755
index 0000000..27a899d
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIActiveX_m_PartsArray_IObjectNode.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIActiveX_m_PartsArray_IPanelDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIActiveX_m_PartsArray_IPanelDiagram.gif
new file mode 100755
index 0000000..6a6170e
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIActiveX_m_PartsArray_IPanelDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIActiveX_m_PartsArray_IPart.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIActiveX_m_PartsArray_IPart.gif
new file mode 100755
index 0000000..0d4f530
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIActiveX_m_PartsArray_IPart.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIActiveX_m_PartsArray_IPrimitiveOperation.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIActiveX_m_PartsArray_IPrimitiveOperation.gif
new file mode 100755
index 0000000..481390b
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIActiveX_m_PartsArray_IPrimitiveOperation.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIActiveX_m_PartsArray_IProfile.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIActiveX_m_PartsArray_IProfile.gif
new file mode 100755
index 0000000..0dccd27
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIActiveX_m_PartsArray_IProfile.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIActiveX_m_PartsArray_IReception.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIActiveX_m_PartsArray_IReception.gif
new file mode 100755
index 0000000..803d12d
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIActiveX_m_PartsArray_IReception.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIActiveX_m_PartsArray_IReferenceActivity.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIActiveX_m_PartsArray_IReferenceActivity.gif
new file mode 100755
index 0000000..887857a
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIActiveX_m_PartsArray_IReferenceActivity.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIActiveX_m_PartsArray_IRequirement.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIActiveX_m_PartsArray_IRequirement.gif
new file mode 100755
index 0000000..01293d8
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIActiveX_m_PartsArray_IRequirement.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIActiveX_m_PartsArray_ISequenceDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIActiveX_m_PartsArray_ISequenceDiagram.gif
new file mode 100755
index 0000000..ef7a76e
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIActiveX_m_PartsArray_ISequenceDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIActiveX_m_PartsArray_IState.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIActiveX_m_PartsArray_IState.gif
new file mode 100755
index 0000000..de3ad17
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIActiveX_m_PartsArray_IState.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIActiveX_m_PartsArray_IStateChart.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIActiveX_m_PartsArray_IStateChart.gif
new file mode 100755
index 0000000..a35176a
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIActiveX_m_PartsArray_IStateChart.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIActiveX_m_PartsArray_IStateChartDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIActiveX_m_PartsArray_IStateChartDiagram.gif
new file mode 100755
index 0000000..ef7a76e
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIActiveX_m_PartsArray_IStateChartDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIActiveX_m_PartsArray_IStereotype.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIActiveX_m_PartsArray_IStereotype.gif
new file mode 100755
index 0000000..01293d8
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIActiveX_m_PartsArray_IStereotype.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIActiveX_m_PartsArray_IStructureDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIActiveX_m_PartsArray_IStructureDiagram.gif
new file mode 100755
index 0000000..5c5a999
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIActiveX_m_PartsArray_IStructureDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIActiveX_m_PartsArray_ISubsystem.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIActiveX_m_PartsArray_ISubsystem.gif
new file mode 100755
index 0000000..4154e57
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIActiveX_m_PartsArray_ISubsystem.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIActiveX_m_PartsArray_ISysMLPort.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIActiveX_m_PartsArray_ISysMLPort.gif
new file mode 100755
index 0000000..65c0cbe
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIActiveX_m_PartsArray_ISysMLPort.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIActiveX_m_PartsArray_ITableInstance.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIActiveX_m_PartsArray_ITableInstance.gif
new file mode 100755
index 0000000..803d12d
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIActiveX_m_PartsArray_ITableInstance.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIActiveX_m_PartsArray_ITransition.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIActiveX_m_PartsArray_ITransition.gif
new file mode 100755
index 0000000..4712543
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIActiveX_m_PartsArray_ITransition.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIActiveX_m_PartsArray_IType.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIActiveX_m_PartsArray_IType.gif
new file mode 100755
index 0000000..9532027
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIActiveX_m_PartsArray_IType.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIActiveX_m_PartsArray_IUCDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIActiveX_m_PartsArray_IUCDiagram.gif
new file mode 100755
index 0000000..3a05916
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIActiveX_m_PartsArray_IUCDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIActiveX_m_PartsArray_IUseCase.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIActiveX_m_PartsArray_IUseCase.gif
new file mode 100755
index 0000000..4bbe527
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIActiveX_m_PartsArray_IUseCase.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIActiveX_m_PartsArray_IUseCaseDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIActiveX_m_PartsArray_IUseCaseDiagram.gif
new file mode 100755
index 0000000..a66756a
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIActiveX_m_PartsArray_IUseCaseDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIActiveX_properties_IPropertyContainer.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIActiveX_properties_IPropertyContainer.gif
new file mode 100755
index 0000000..d441dad
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIActiveX_properties_IPropertyContainer.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIAnchor_m_color_IColor.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIAnchor_m_color_IColor.gif
new file mode 100755
index 0000000..67f1b2b
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIAnchor_m_color_IColor.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIAnchor_m_rpn_CGIText.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIAnchor_m_rpn_CGIText.gif
new file mode 100755
index 0000000..20ca1b8
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIAnchor_m_rpn_CGIText.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIAnchor_properties_IPropertyContainer.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIAnchor_properties_IPropertyContainer.gif
new file mode 100755
index 0000000..a072b20
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIAnchor_properties_IPropertyContainer.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIAnnotation_Compartments_CGICompartment.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIAnnotation_Compartments_CGICompartment.gif
new file mode 100755
index 0000000..888587b
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIAnnotation_Compartments_CGICompartment.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIAnnotation_m_AdditionalLabel_CGIText.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIAnnotation_m_AdditionalLabel_CGIText.gif
new file mode 100755
index 0000000..99ae775
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIAnnotation_m_AdditionalLabel_CGIText.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIAnnotation_m_color_IColor.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIAnnotation_m_color_IColor.gif
new file mode 100755
index 0000000..2d14ab0
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIAnnotation_m_color_IColor.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIAnnotation_properties_IPropertyContainer.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIAnnotation_properties_IPropertyContainer.gif
new file mode 100755
index 0000000..48f6be5
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIAnnotation_properties_IPropertyContainer.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIArrow_m_rpn_CGIText.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIArrow_m_rpn_CGIText.gif
new file mode 100755
index 0000000..86ec735
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIArrow_m_rpn_CGIText.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIAssociationEnd_m_pInstance_IObjectLinkHandle.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIAssociationEnd_m_pInstance_IObjectLinkHandle.gif
new file mode 100755
index 0000000..d553a7a
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIAssociationEnd_m_pInstance_IObjectLinkHandle.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIAssociationEnd_m_pInverseInstance_IObjectLinkHandle.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIAssociationEnd_m_pInverseInstance_IObjectLinkHandle.gif
new file mode 100755
index 0000000..d553a7a
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIAssociationEnd_m_pInverseInstance_IObjectLinkHandle.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIAssociationEnd_m_pInverseModelObject_IAssociationEndHandle.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIAssociationEnd_m_pInverseModelObject_IAssociationEndHandle.gif
new file mode 100755
index 0000000..4b0d2e1
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIAssociationEnd_m_pInverseModelObject_IAssociationEndHandle.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIAssociationEnd_m_rpn_CGIText.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIAssociationEnd_m_rpn_CGIText.gif
new file mode 100755
index 0000000..f426888
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIAssociationEnd_m_rpn_CGIText.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIAssociationEnd_m_sourceMultiplicity_CGIText.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIAssociationEnd_m_sourceMultiplicity_CGIText.gif
new file mode 100755
index 0000000..f426888
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIAssociationEnd_m_sourceMultiplicity_CGIText.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIAssociationEnd_m_sourceQualifier_CGIText.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIAssociationEnd_m_sourceQualifier_CGIText.gif
new file mode 100755
index 0000000..f426888
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIAssociationEnd_m_sourceQualifier_CGIText.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIAssociationEnd_m_sourceRole_CGIText.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIAssociationEnd_m_sourceRole_CGIText.gif
new file mode 100755
index 0000000..f426888
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIAssociationEnd_m_sourceRole_CGIText.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIAssociationEnd_m_targetMultiplicity_CGIText.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIAssociationEnd_m_targetMultiplicity_CGIText.gif
new file mode 100755
index 0000000..f426888
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIAssociationEnd_m_targetMultiplicity_CGIText.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIAssociationEnd_m_targetQualifier_CGIText.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIAssociationEnd_m_targetQualifier_CGIText.gif
new file mode 100755
index 0000000..f426888
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIAssociationEnd_m_targetQualifier_CGIText.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIAssociationEnd_m_targetRole_CGIText.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIAssociationEnd_m_targetRole_CGIText.gif
new file mode 100755
index 0000000..f426888
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIAssociationEnd_m_targetRole_CGIText.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIAssociationEnd_properties_IPropertyContainer.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIAssociationEnd_properties_IPropertyContainer.gif
new file mode 100755
index 0000000..d553a7a
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIAssociationEnd_properties_IPropertyContainer.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIAssociationRole_m_rpn_CGIText.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIAssociationRole_m_rpn_CGIText.gif
new file mode 100755
index 0000000..776368e
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIAssociationRole_m_rpn_CGIText.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIAssociationRole_properties_IPropertyContainer.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIAssociationRole_properties_IPropertyContainer.gif
new file mode 100755
index 0000000..d9ba399
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIAssociationRole_properties_IPropertyContainer.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIBasicClass_m_AdditionalLabel_CGIText.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIBasicClass_m_AdditionalLabel_CGIText.gif
new file mode 100755
index 0000000..7afe9dc
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIBasicClass_m_AdditionalLabel_CGIText.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIBasicClass_properties_IPropertyContainer.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIBasicClass_properties_IPropertyContainer.gif
new file mode 100755
index 0000000..1a5c3bd
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIBasicClass_properties_IPropertyContainer.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIBlockState_Compartments_CGICompartment.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIBlockState_Compartments_CGICompartment.gif
new file mode 100755
index 0000000..4308f7a
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIBlockState_Compartments_CGICompartment.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIBlockState_m_AdditionalLabel_CGIText.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIBlockState_m_AdditionalLabel_CGIText.gif
new file mode 100755
index 0000000..bb83437
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIBlockState_m_AdditionalLabel_CGIText.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIBlockState_properties_IPropertyContainer.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIBlockState_properties_IPropertyContainer.gif
new file mode 100755
index 0000000..2626349
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIBlockState_properties_IPropertyContainer.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIBox_properties_IPropertyContainer.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIBox_properties_IPropertyContainer.gif
new file mode 100755
index 0000000..37a86d1
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIBox_properties_IPropertyContainer.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIButtonArray_Compartments_CGICompartment.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIButtonArray_Compartments_CGICompartment.gif
new file mode 100755
index 0000000..33e8a61
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIButtonArray_Compartments_CGICompartment.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIButtonArray_m_PartsArray_IAcceptEventAction.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIButtonArray_m_PartsArray_IAcceptEventAction.gif
new file mode 100755
index 0000000..93e8b6b
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIButtonArray_m_PartsArray_IAcceptEventAction.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIButtonArray_m_PartsArray_IAcceptTimeEvent.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIButtonArray_m_PartsArray_IAcceptTimeEvent.gif
new file mode 100755
index 0000000..3cfac31
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIButtonArray_m_PartsArray_IAcceptTimeEvent.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIButtonArray_m_PartsArray_IActivityDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIButtonArray_m_PartsArray_IActivityDiagram.gif
new file mode 100755
index 0000000..9f3b2e7
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIButtonArray_m_PartsArray_IActivityDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIButtonArray_m_PartsArray_IActivityGraph.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIButtonArray_m_PartsArray_IActivityGraph.gif
new file mode 100755
index 0000000..f3d7cb9
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIButtonArray_m_PartsArray_IActivityGraph.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIButtonArray_m_PartsArray_IActor.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIButtonArray_m_PartsArray_IActor.gif
new file mode 100755
index 0000000..8a87700
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIButtonArray_m_PartsArray_IActor.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIButtonArray_m_PartsArray_IAssociationClass.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIButtonArray_m_PartsArray_IAssociationClass.gif
new file mode 100755
index 0000000..ed645c3
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIButtonArray_m_PartsArray_IAssociationClass.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIButtonArray_m_PartsArray_IAttribute.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIButtonArray_m_PartsArray_IAttribute.gif
new file mode 100755
index 0000000..922e8ab
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIButtonArray_m_PartsArray_IAttribute.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIButtonArray_m_PartsArray_ICallOperation.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIButtonArray_m_PartsArray_ICallOperation.gif
new file mode 100755
index 0000000..380314b
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIButtonArray_m_PartsArray_ICallOperation.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIButtonArray_m_PartsArray_IClass.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIButtonArray_m_PartsArray_IClass.gif
new file mode 100755
index 0000000..1543d3c
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIButtonArray_m_PartsArray_IClass.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIButtonArray_m_PartsArray_ICodeGenConfigInfo.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIButtonArray_m_PartsArray_ICodeGenConfigInfo.gif
new file mode 100755
index 0000000..3d00c57
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIButtonArray_m_PartsArray_ICodeGenConfigInfo.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIButtonArray_m_PartsArray_ICollaborationDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIButtonArray_m_PartsArray_ICollaborationDiagram.gif
new file mode 100755
index 0000000..ec56659
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIButtonArray_m_PartsArray_ICollaborationDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIButtonArray_m_PartsArray_IComponent.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIButtonArray_m_PartsArray_IComponent.gif
new file mode 100755
index 0000000..3cfac31
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIButtonArray_m_PartsArray_IComponent.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIButtonArray_m_PartsArray_IComponentDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIButtonArray_m_PartsArray_IComponentDiagram.gif
new file mode 100755
index 0000000..33e8a61
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIButtonArray_m_PartsArray_IComponentDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIButtonArray_m_PartsArray_IDefaultDrvdTrans.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIButtonArray_m_PartsArray_IDefaultDrvdTrans.gif
new file mode 100755
index 0000000..61e87ec
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIButtonArray_m_PartsArray_IDefaultDrvdTrans.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIButtonArray_m_PartsArray_IDependency.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIButtonArray_m_PartsArray_IDependency.gif
new file mode 100755
index 0000000..902141b
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIButtonArray_m_PartsArray_IDependency.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIButtonArray_m_PartsArray_IDeploymentDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIButtonArray_m_PartsArray_IDeploymentDiagram.gif
new file mode 100755
index 0000000..e91f6dd
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIButtonArray_m_PartsArray_IDeploymentDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIButtonArray_m_PartsArray_IDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIButtonArray_m_PartsArray_IDiagram.gif
new file mode 100755
index 0000000..fc67848
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIButtonArray_m_PartsArray_IDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIButtonArray_m_PartsArray_IHyperLink.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIButtonArray_m_PartsArray_IHyperLink.gif
new file mode 100755
index 0000000..6910560
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIButtonArray_m_PartsArray_IHyperLink.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIButtonArray_m_PartsArray_IInformationFlow.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIButtonArray_m_PartsArray_IInformationFlow.gif
new file mode 100755
index 0000000..3cfac31
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIButtonArray_m_PartsArray_IInformationFlow.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIButtonArray_m_PartsArray_IInformationItem.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIButtonArray_m_PartsArray_IInformationItem.gif
new file mode 100755
index 0000000..8a87700
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIButtonArray_m_PartsArray_IInformationItem.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIButtonArray_m_PartsArray_IMSC.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIButtonArray_m_PartsArray_IMSC.gif
new file mode 100755
index 0000000..93e8b6b
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIButtonArray_m_PartsArray_IMSC.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIButtonArray_m_PartsArray_IMatrixInstance.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIButtonArray_m_PartsArray_IMatrixInstance.gif
new file mode 100755
index 0000000..281b5cf
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIButtonArray_m_PartsArray_IMatrixInstance.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIButtonArray_m_PartsArray_IMessage.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIButtonArray_m_PartsArray_IMessage.gif
new file mode 100755
index 0000000..7ffd04a
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIButtonArray_m_PartsArray_IMessage.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIButtonArray_m_PartsArray_IModule.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIButtonArray_m_PartsArray_IModule.gif
new file mode 100755
index 0000000..f3d9958
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIButtonArray_m_PartsArray_IModule.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIButtonArray_m_PartsArray_IObjectLink.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIButtonArray_m_PartsArray_IObjectLink.gif
new file mode 100755
index 0000000..179a7e8
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIButtonArray_m_PartsArray_IObjectLink.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIButtonArray_m_PartsArray_IObjectModelDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIButtonArray_m_PartsArray_IObjectModelDiagram.gif
new file mode 100755
index 0000000..0e50474
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIButtonArray_m_PartsArray_IObjectModelDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIButtonArray_m_PartsArray_IObjectNode.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIButtonArray_m_PartsArray_IObjectNode.gif
new file mode 100755
index 0000000..1bf6bbe
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIButtonArray_m_PartsArray_IObjectNode.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIButtonArray_m_PartsArray_IPanelDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIButtonArray_m_PartsArray_IPanelDiagram.gif
new file mode 100755
index 0000000..f3d7cb9
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIButtonArray_m_PartsArray_IPanelDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIButtonArray_m_PartsArray_IPart.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIButtonArray_m_PartsArray_IPart.gif
new file mode 100755
index 0000000..f2db288
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIButtonArray_m_PartsArray_IPart.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIButtonArray_m_PartsArray_IPrimitiveOperation.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIButtonArray_m_PartsArray_IPrimitiveOperation.gif
new file mode 100755
index 0000000..ed645c3
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIButtonArray_m_PartsArray_IPrimitiveOperation.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIButtonArray_m_PartsArray_IProfile.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIButtonArray_m_PartsArray_IProfile.gif
new file mode 100755
index 0000000..93e8b6b
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIButtonArray_m_PartsArray_IProfile.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIButtonArray_m_PartsArray_IReception.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIButtonArray_m_PartsArray_IReception.gif
new file mode 100755
index 0000000..4bddb0b
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIButtonArray_m_PartsArray_IReception.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIButtonArray_m_PartsArray_IReferenceActivity.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIButtonArray_m_PartsArray_IReferenceActivity.gif
new file mode 100755
index 0000000..a49d181
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIButtonArray_m_PartsArray_IReferenceActivity.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIButtonArray_m_PartsArray_IRequirement.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIButtonArray_m_PartsArray_IRequirement.gif
new file mode 100755
index 0000000..49d948b
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIButtonArray_m_PartsArray_IRequirement.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIButtonArray_m_PartsArray_ISequenceDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIButtonArray_m_PartsArray_ISequenceDiagram.gif
new file mode 100755
index 0000000..a6d8558
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIButtonArray_m_PartsArray_ISequenceDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIButtonArray_m_PartsArray_IState.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIButtonArray_m_PartsArray_IState.gif
new file mode 100755
index 0000000..4d9762f
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIButtonArray_m_PartsArray_IState.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIButtonArray_m_PartsArray_IStateChart.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIButtonArray_m_PartsArray_IStateChart.gif
new file mode 100755
index 0000000..6910560
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIButtonArray_m_PartsArray_IStateChart.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIButtonArray_m_PartsArray_IStateChartDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIButtonArray_m_PartsArray_IStateChartDiagram.gif
new file mode 100755
index 0000000..a6d8558
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIButtonArray_m_PartsArray_IStateChartDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIButtonArray_m_PartsArray_IStereotype.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIButtonArray_m_PartsArray_IStereotype.gif
new file mode 100755
index 0000000..49d948b
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIButtonArray_m_PartsArray_IStereotype.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIButtonArray_m_PartsArray_IStructureDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIButtonArray_m_PartsArray_IStructureDiagram.gif
new file mode 100755
index 0000000..1667bbe
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIButtonArray_m_PartsArray_IStructureDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIButtonArray_m_PartsArray_ISubsystem.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIButtonArray_m_PartsArray_ISubsystem.gif
new file mode 100755
index 0000000..3b598db
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIButtonArray_m_PartsArray_ISubsystem.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIButtonArray_m_PartsArray_ISysMLPort.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIButtonArray_m_PartsArray_ISysMLPort.gif
new file mode 100755
index 0000000..f3d9958
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIButtonArray_m_PartsArray_ISysMLPort.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIButtonArray_m_PartsArray_ITableInstance.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIButtonArray_m_PartsArray_ITableInstance.gif
new file mode 100755
index 0000000..4bddb0b
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIButtonArray_m_PartsArray_ITableInstance.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIButtonArray_m_PartsArray_ITransition.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIButtonArray_m_PartsArray_ITransition.gif
new file mode 100755
index 0000000..df3eebc
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIButtonArray_m_PartsArray_ITransition.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIButtonArray_m_PartsArray_IType.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIButtonArray_m_PartsArray_IType.gif
new file mode 100755
index 0000000..d89ab7a
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIButtonArray_m_PartsArray_IType.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIButtonArray_m_PartsArray_IUCDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIButtonArray_m_PartsArray_IUCDiagram.gif
new file mode 100755
index 0000000..3d1deee
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIButtonArray_m_PartsArray_IUCDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIButtonArray_m_PartsArray_IUseCase.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIButtonArray_m_PartsArray_IUseCase.gif
new file mode 100755
index 0000000..33e8a61
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIButtonArray_m_PartsArray_IUseCase.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIButtonArray_m_PartsArray_IUseCaseDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIButtonArray_m_PartsArray_IUseCaseDiagram.gif
new file mode 100755
index 0000000..2de4789
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIButtonArray_m_PartsArray_IUseCaseDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIButtonArray_properties_IPropertyContainer.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIButtonArray_properties_IPropertyContainer.gif
new file mode 100755
index 0000000..24686d6
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIButtonArray_properties_IPropertyContainer.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIClass_Attrs_IActor.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIClass_Attrs_IActor.gif
new file mode 100755
index 0000000..12de541
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIClass_Attrs_IActor.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIClass_Attrs_IAnnotation.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIClass_Attrs_IAnnotation.gif
new file mode 100755
index 0000000..278cd8a
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIClass_Attrs_IAnnotation.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIClass_Attrs_IArgument.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIClass_Attrs_IArgument.gif
new file mode 100755
index 0000000..a258504
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIClass_Attrs_IArgument.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIClass_Attrs_IAssociationClass.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIClass_Attrs_IAssociationClass.gif
new file mode 100755
index 0000000..3bc5937
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIClass_Attrs_IAssociationClass.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIClass_Attrs_IAttribute.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIClass_Attrs_IAttribute.gif
new file mode 100755
index 0000000..f809a28
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIClass_Attrs_IAttribute.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIClass_Attrs_IClass.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIClass_Attrs_IClass.gif
new file mode 100755
index 0000000..561bc08
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIClass_Attrs_IClass.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIClass_Attrs_IClassifier.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIClass_Attrs_IClassifier.gif
new file mode 100755
index 0000000..c44b7cf
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIClass_Attrs_IClassifier.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIClass_Attrs_ICollaborationDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIClass_Attrs_ICollaborationDiagram.gif
new file mode 100755
index 0000000..619a36c
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIClass_Attrs_ICollaborationDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIClass_Attrs_IComment.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIClass_Attrs_IComment.gif
new file mode 100755
index 0000000..3cdecb1
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIClass_Attrs_IComment.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIClass_Attrs_IComponent.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIClass_Attrs_IComponent.gif
new file mode 100755
index 0000000..efc256e
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIClass_Attrs_IComponent.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIClass_Attrs_IComponentDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIClass_Attrs_IComponentDiagram.gif
new file mode 100755
index 0000000..a258504
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIClass_Attrs_IComponentDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIClass_Attrs_IConstraint.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIClass_Attrs_IConstraint.gif
new file mode 100755
index 0000000..68ad5bd
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIClass_Attrs_IConstraint.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIClass_Attrs_IControlledFile.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIClass_Attrs_IControlledFile.gif
new file mode 100755
index 0000000..ed2e04b
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIClass_Attrs_IControlledFile.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIClass_Attrs_IDeploymentDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIClass_Attrs_IDeploymentDiagram.gif
new file mode 100755
index 0000000..52c578c
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIClass_Attrs_IDeploymentDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIClass_Attrs_IDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIClass_Attrs_IDiagram.gif
new file mode 100755
index 0000000..de48ec6
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIClass_Attrs_IDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIClass_Attrs_IEvent.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIClass_Attrs_IEvent.gif
new file mode 100755
index 0000000..efc256e
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIClass_Attrs_IEvent.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIClass_Attrs_IEventReception.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIClass_Attrs_IEventReception.gif
new file mode 100755
index 0000000..981b787
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIClass_Attrs_IEventReception.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIClass_Attrs_IFile.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIClass_Attrs_IFile.gif
new file mode 100755
index 0000000..881c6d7
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIClass_Attrs_IFile.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIClass_Attrs_IFlowItem.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIClass_Attrs_IFlowItem.gif
new file mode 100755
index 0000000..4f26f1b
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIClass_Attrs_IFlowItem.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIClass_Attrs_IInstance.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIClass_Attrs_IInstance.gif
new file mode 100755
index 0000000..c3dd920
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIClass_Attrs_IInstance.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIClass_Attrs_IInterfaceItem.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIClass_Attrs_IInterfaceItem.gif
new file mode 100755
index 0000000..de48ec6
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIClass_Attrs_IInterfaceItem.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIClass_Attrs_ILink.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIClass_Attrs_ILink.gif
new file mode 100755
index 0000000..55d7be5
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIClass_Attrs_ILink.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIClass_Attrs_IMatrixLayout.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIClass_Attrs_IMatrixLayout.gif
new file mode 100755
index 0000000..96c4ffd
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIClass_Attrs_IMatrixLayout.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIClass_Attrs_IMatrixView.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIClass_Attrs_IMatrixView.gif
new file mode 100755
index 0000000..efc256e
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIClass_Attrs_IMatrixView.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIClass_Attrs_IModule.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIClass_Attrs_IModule.gif
new file mode 100755
index 0000000..c6407cd
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIClass_Attrs_IModule.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIClass_Attrs_INode.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIClass_Attrs_INode.gif
new file mode 100755
index 0000000..7fd40f1
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIClass_Attrs_INode.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIClass_Attrs_IObjectModelDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIClass_Attrs_IObjectModelDiagram.gif
new file mode 100755
index 0000000..c19972e
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIClass_Attrs_IObjectModelDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIClass_Attrs_IOperation.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIClass_Attrs_IOperation.gif
new file mode 100755
index 0000000..52c578c
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIClass_Attrs_IOperation.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIClass_Attrs_IPackage.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIClass_Attrs_IPackage.gif
new file mode 100755
index 0000000..5206c2e
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIClass_Attrs_IPackage.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIClass_Attrs_IPanelDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIClass_Attrs_IPanelDiagram.gif
new file mode 100755
index 0000000..881c6d7
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIClass_Attrs_IPanelDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIClass_Attrs_IPort.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIClass_Attrs_IPort.gif
new file mode 100755
index 0000000..efc256e
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIClass_Attrs_IPort.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIClass_Attrs_IProfile.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIClass_Attrs_IProfile.gif
new file mode 100755
index 0000000..68ad5bd
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIClass_Attrs_IProfile.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIClass_Attrs_IProject.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIClass_Attrs_IProject.gif
new file mode 100755
index 0000000..96cdc6d
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIClass_Attrs_IProject.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIClass_Attrs_IRelation.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIClass_Attrs_IRelation.gif
new file mode 100755
index 0000000..2e9fe7e
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIClass_Attrs_IRelation.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIClass_Attrs_IRequirement.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIClass_Attrs_IRequirement.gif
new file mode 100755
index 0000000..73b29f9
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIClass_Attrs_IRequirement.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIClass_Attrs_ISequenceDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIClass_Attrs_ISequenceDiagram.gif
new file mode 100755
index 0000000..5e6c9c1
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIClass_Attrs_ISequenceDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIClass_Attrs_IStateChart.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIClass_Attrs_IStateChart.gif
new file mode 100755
index 0000000..8e6a767
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIClass_Attrs_IStateChart.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIClass_Attrs_IStateChartDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIClass_Attrs_IStateChartDiagram.gif
new file mode 100755
index 0000000..5e6c9c1
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIClass_Attrs_IStateChartDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIClass_Attrs_IStereotype.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIClass_Attrs_IStereotype.gif
new file mode 100755
index 0000000..73b29f9
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIClass_Attrs_IStereotype.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIClass_Attrs_IStructureDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIClass_Attrs_IStructureDiagram.gif
new file mode 100755
index 0000000..278cd8a
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIClass_Attrs_IStructureDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIClass_Attrs_ISysMLPort.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIClass_Attrs_ISysMLPort.gif
new file mode 100755
index 0000000..c6407cd
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIClass_Attrs_ISysMLPort.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIClass_Attrs_ITableLayout.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIClass_Attrs_ITableLayout.gif
new file mode 100755
index 0000000..de48ec6
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIClass_Attrs_ITableLayout.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIClass_Attrs_ITableView.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIClass_Attrs_ITableView.gif
new file mode 100755
index 0000000..5e6c9c1
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIClass_Attrs_ITableView.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIClass_Attrs_ITag.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIClass_Attrs_ITag.gif
new file mode 100755
index 0000000..27a63b5
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIClass_Attrs_ITag.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIClass_Attrs_ITemplateParameter.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIClass_Attrs_ITemplateParameter.gif
new file mode 100755
index 0000000..c19972e
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIClass_Attrs_ITemplateParameter.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIClass_Attrs_IType.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIClass_Attrs_IType.gif
new file mode 100755
index 0000000..22660ab
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIClass_Attrs_IType.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIClass_Attrs_IUnit.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIClass_Attrs_IUnit.gif
new file mode 100755
index 0000000..3461b0a
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIClass_Attrs_IUnit.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIClass_Attrs_IUseCase.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIClass_Attrs_IUseCase.gif
new file mode 100755
index 0000000..a258504
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIClass_Attrs_IUseCase.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIClass_Attrs_IUseCaseDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIClass_Attrs_IUseCaseDiagram.gif
new file mode 100755
index 0000000..3cdecb1
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIClass_Attrs_IUseCaseDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIClass_Attrs_IVariable.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIClass_Attrs_IVariable.gif
new file mode 100755
index 0000000..5e6c9c1
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIClass_Attrs_IVariable.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIClass_Compartments_CGICompartment.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIClass_Compartments_CGICompartment.gif
new file mode 100755
index 0000000..a258504
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIClass_Compartments_CGICompartment.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIClass_Operations_IConstructor.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIClass_Operations_IConstructor.gif
new file mode 100755
index 0000000..cbc9f8d
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIClass_Operations_IConstructor.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIClass_Operations_IDestructor.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIClass_Operations_IDestructor.gif
new file mode 100755
index 0000000..2b447c2
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIClass_Operations_IDestructor.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIClass_Operations_IPrimitiveOperation.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIClass_Operations_IPrimitiveOperation.gif
new file mode 100755
index 0000000..3bc5937
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIClass_Operations_IPrimitiveOperation.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIClass_Operations_IReception.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIClass_Operations_IReception.gif
new file mode 100755
index 0000000..b55cd92
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIClass_Operations_IReception.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIClass_Operations_ITriggered.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIClass_Operations_ITriggered.gif
new file mode 100755
index 0000000..981b787
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIClass_Operations_ITriggered.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIClass_m_AdditionalLabel_CGIText.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIClass_m_AdditionalLabel_CGIText.gif
new file mode 100755
index 0000000..5e6c9c1
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIClass_m_AdditionalLabel_CGIText.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIClass_m_color_IColor.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIClass_m_color_IColor.gif
new file mode 100755
index 0000000..22660ab
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIClass_m_color_IColor.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIClass_properties_IPropertyContainer.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIClass_properties_IPropertyContainer.gif
new file mode 100755
index 0000000..a3d7b11
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIClass_properties_IPropertyContainer.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIClassifierRole_properties_IPropertyContainer.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIClassifierRole_properties_IPropertyContainer.gif
new file mode 100755
index 0000000..b8e6287
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIClassifierRole_properties_IPropertyContainer.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGICompartment_Items_IAttribute.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGICompartment_Items_IAttribute.gif
new file mode 100755
index 0000000..55ee60b
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGICompartment_Items_IAttribute.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGICompartment_Items_IConstructor.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGICompartment_Items_IConstructor.gif
new file mode 100755
index 0000000..519be70
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGICompartment_Items_IConstructor.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGICompartment_Items_IEnumerationLiteral.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGICompartment_Items_IEnumerationLiteral.gif
new file mode 100755
index 0000000..4b9f986
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGICompartment_Items_IEnumerationLiteral.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGICompartment_Items_IPrimitiveOperation.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGICompartment_Items_IPrimitiveOperation.gif
new file mode 100755
index 0000000..930f743
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGICompartment_Items_IPrimitiveOperation.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGICompartment_Items_IReception.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGICompartment_Items_IReception.gif
new file mode 100755
index 0000000..9fff14a
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGICompartment_Items_IReception.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGICompartment_Items_ITriggered.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGICompartment_Items_ITriggered.gif
new file mode 100755
index 0000000..9d2db8f
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGICompartment_Items_ITriggered.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIComponent_m_AdditionalLabel_CGIText.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIComponent_m_AdditionalLabel_CGIText.gif
new file mode 100755
index 0000000..d8b262a
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIComponent_m_AdditionalLabel_CGIText.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIComponent_properties_IPropertyContainer.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIComponent_properties_IPropertyContainer.gif
new file mode 100755
index 0000000..d8233b0
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIComponent_properties_IPropertyContainer.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGICompositeClass_m_AdditionalLabel_CGIText.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGICompositeClass_m_AdditionalLabel_CGIText.gif
new file mode 100755
index 0000000..a573a9e
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGICompositeClass_m_AdditionalLabel_CGIText.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGICompositeClass_m_color_IColor.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGICompositeClass_m_color_IColor.gif
new file mode 100755
index 0000000..e06d610
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGICompositeClass_m_color_IColor.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGICompositeClass_properties_IPropertyContainer.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGICompositeClass_properties_IPropertyContainer.gif
new file mode 100755
index 0000000..28fb948
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGICompositeClass_properties_IPropertyContainer.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIConnector_m_AdditionalLabel_CGIText.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIConnector_m_AdditionalLabel_CGIText.gif
new file mode 100755
index 0000000..ef7a76e
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIConnector_m_AdditionalLabel_CGIText.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIConnector_properties_IPropertyContainer.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIConnector_properties_IPropertyContainer.gif
new file mode 100755
index 0000000..d441dad
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIConnector_properties_IPropertyContainer.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIContainArrow_m_rpn_CGIText.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIContainArrow_m_rpn_CGIText.gif
new file mode 100755
index 0000000..d9318b1
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIContainArrow_m_rpn_CGIText.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIDiagramFrame_Compartments_CGICompartment.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIDiagramFrame_Compartments_CGICompartment.gif
new file mode 100755
index 0000000..f08baac
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIDiagramFrame_Compartments_CGICompartment.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIDiagramFrame_m_AdditionalLabel_CGIText.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIDiagramFrame_m_AdditionalLabel_CGIText.gif
new file mode 100755
index 0000000..7d7c59b
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIDiagramFrame_m_AdditionalLabel_CGIText.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIFreeShape_properties_IPropertyContainer.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIFreeShape_properties_IPropertyContainer.gif
new file mode 100755
index 0000000..47209ba
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIFreeShape_properties_IPropertyContainer.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIFreeText_properties_IPropertyContainer.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIFreeText_properties_IPropertyContainer.gif
new file mode 100755
index 0000000..24686d6
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIFreeText_properties_IPropertyContainer.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIGenericElement_Compartments_CGICompartment.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIGenericElement_Compartments_CGICompartment.gif
new file mode 100755
index 0000000..961f371
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIGenericElement_Compartments_CGICompartment.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIGenericElement_m_AdditionalLabel_CGIText.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIGenericElement_m_AdditionalLabel_CGIText.gif
new file mode 100755
index 0000000..b3520a5
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIGenericElement_m_AdditionalLabel_CGIText.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIGenericElement_properties_IPropertyContainer.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIGenericElement_properties_IPropertyContainer.gif
new file mode 100755
index 0000000..3ecfb1a
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIGenericElement_properties_IPropertyContainer.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIInformationFlow_m_conveyed_CGIText.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIInformationFlow_m_conveyed_CGIText.gif
new file mode 100755
index 0000000..d8b262a
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIInformationFlow_m_conveyed_CGIText.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIInformationFlow_m_keyword_CGIText.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIInformationFlow_m_keyword_CGIText.gif
new file mode 100755
index 0000000..d8b262a
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIInformationFlow_m_keyword_CGIText.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIInformationFlow_m_rpn_CGIText.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIInformationFlow_m_rpn_CGIText.gif
new file mode 100755
index 0000000..d8b262a
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIInformationFlow_m_rpn_CGIText.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIInformationFlow_properties_IPropertyContainer.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIInformationFlow_properties_IPropertyContainer.gif
new file mode 100755
index 0000000..d8233b0
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIInformationFlow_properties_IPropertyContainer.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIInheritance_m_color_IColor.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIInheritance_m_color_IColor.gif
new file mode 100755
index 0000000..803ad17
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIInheritance_m_color_IColor.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIInheritance_m_rpn_CGIText.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIInheritance_m_rpn_CGIText.gif
new file mode 100755
index 0000000..938b383
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIInheritance_m_rpn_CGIText.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIInheritance_properties_IPropertyContainer.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIInheritance_properties_IPropertyContainer.gif
new file mode 100755
index 0000000..47209ba
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIInheritance_properties_IPropertyContainer.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIMFCCtrl_m_PartsArray_IAcceptEventAction.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIMFCCtrl_m_PartsArray_IAcceptEventAction.gif
new file mode 100755
index 0000000..46106a3
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIMFCCtrl_m_PartsArray_IAcceptEventAction.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIMFCCtrl_m_PartsArray_IAcceptTimeEvent.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIMFCCtrl_m_PartsArray_IAcceptTimeEvent.gif
new file mode 100755
index 0000000..cd26443
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIMFCCtrl_m_PartsArray_IAcceptTimeEvent.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIMFCCtrl_m_PartsArray_IActivityDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIMFCCtrl_m_PartsArray_IActivityDiagram.gif
new file mode 100755
index 0000000..1b954c5
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIMFCCtrl_m_PartsArray_IActivityDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIMFCCtrl_m_PartsArray_IActivityGraph.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIMFCCtrl_m_PartsArray_IActivityGraph.gif
new file mode 100755
index 0000000..7e829ad
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIMFCCtrl_m_PartsArray_IActivityGraph.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIMFCCtrl_m_PartsArray_IActor.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIMFCCtrl_m_PartsArray_IActor.gif
new file mode 100755
index 0000000..e863d31
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIMFCCtrl_m_PartsArray_IActor.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIMFCCtrl_m_PartsArray_IAssociationClass.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIMFCCtrl_m_PartsArray_IAssociationClass.gif
new file mode 100755
index 0000000..1826517
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIMFCCtrl_m_PartsArray_IAssociationClass.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIMFCCtrl_m_PartsArray_IAttribute.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIMFCCtrl_m_PartsArray_IAttribute.gif
new file mode 100755
index 0000000..9ad2ce6
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIMFCCtrl_m_PartsArray_IAttribute.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIMFCCtrl_m_PartsArray_ICallOperation.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIMFCCtrl_m_PartsArray_ICallOperation.gif
new file mode 100755
index 0000000..961391b
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIMFCCtrl_m_PartsArray_ICallOperation.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIMFCCtrl_m_PartsArray_IClass.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIMFCCtrl_m_PartsArray_IClass.gif
new file mode 100755
index 0000000..7fb29f4
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIMFCCtrl_m_PartsArray_IClass.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIMFCCtrl_m_PartsArray_ICodeGenConfigInfo.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIMFCCtrl_m_PartsArray_ICodeGenConfigInfo.gif
new file mode 100755
index 0000000..7253e5b
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIMFCCtrl_m_PartsArray_ICodeGenConfigInfo.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIMFCCtrl_m_PartsArray_ICollaborationDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIMFCCtrl_m_PartsArray_ICollaborationDiagram.gif
new file mode 100755
index 0000000..5bfbb66
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIMFCCtrl_m_PartsArray_ICollaborationDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIMFCCtrl_m_PartsArray_IComponent.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIMFCCtrl_m_PartsArray_IComponent.gif
new file mode 100755
index 0000000..cd26443
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIMFCCtrl_m_PartsArray_IComponent.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIMFCCtrl_m_PartsArray_IComponentDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIMFCCtrl_m_PartsArray_IComponentDiagram.gif
new file mode 100755
index 0000000..db04142
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIMFCCtrl_m_PartsArray_IComponentDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIMFCCtrl_m_PartsArray_IDefaultDrvdTrans.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIMFCCtrl_m_PartsArray_IDefaultDrvdTrans.gif
new file mode 100755
index 0000000..7d4d39f
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIMFCCtrl_m_PartsArray_IDefaultDrvdTrans.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIMFCCtrl_m_PartsArray_IDependency.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIMFCCtrl_m_PartsArray_IDependency.gif
new file mode 100755
index 0000000..c2b071b
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIMFCCtrl_m_PartsArray_IDependency.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIMFCCtrl_m_PartsArray_IDeploymentDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIMFCCtrl_m_PartsArray_IDeploymentDiagram.gif
new file mode 100755
index 0000000..e1c32cf
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIMFCCtrl_m_PartsArray_IDeploymentDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIMFCCtrl_m_PartsArray_IDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIMFCCtrl_m_PartsArray_IDiagram.gif
new file mode 100755
index 0000000..ced536d
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIMFCCtrl_m_PartsArray_IDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIMFCCtrl_m_PartsArray_IHyperLink.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIMFCCtrl_m_PartsArray_IHyperLink.gif
new file mode 100755
index 0000000..90bc42c
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIMFCCtrl_m_PartsArray_IHyperLink.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIMFCCtrl_m_PartsArray_IInformationFlow.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIMFCCtrl_m_PartsArray_IInformationFlow.gif
new file mode 100755
index 0000000..cd26443
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIMFCCtrl_m_PartsArray_IInformationFlow.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIMFCCtrl_m_PartsArray_IInformationItem.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIMFCCtrl_m_PartsArray_IInformationItem.gif
new file mode 100755
index 0000000..e863d31
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIMFCCtrl_m_PartsArray_IInformationItem.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIMFCCtrl_m_PartsArray_IMSC.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIMFCCtrl_m_PartsArray_IMSC.gif
new file mode 100755
index 0000000..46106a3
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIMFCCtrl_m_PartsArray_IMSC.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIMFCCtrl_m_PartsArray_IMatrixInstance.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIMFCCtrl_m_PartsArray_IMatrixInstance.gif
new file mode 100755
index 0000000..60aa17e
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIMFCCtrl_m_PartsArray_IMatrixInstance.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIMFCCtrl_m_PartsArray_IMessage.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIMFCCtrl_m_PartsArray_IMessage.gif
new file mode 100755
index 0000000..d44bc94
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIMFCCtrl_m_PartsArray_IMessage.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIMFCCtrl_m_PartsArray_IModule.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIMFCCtrl_m_PartsArray_IModule.gif
new file mode 100755
index 0000000..82bf8d2
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIMFCCtrl_m_PartsArray_IModule.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIMFCCtrl_m_PartsArray_IObjectLink.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIMFCCtrl_m_PartsArray_IObjectLink.gif
new file mode 100755
index 0000000..5ea562b
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIMFCCtrl_m_PartsArray_IObjectLink.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIMFCCtrl_m_PartsArray_IObjectModelDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIMFCCtrl_m_PartsArray_IObjectModelDiagram.gif
new file mode 100755
index 0000000..9bb3e39
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIMFCCtrl_m_PartsArray_IObjectModelDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIMFCCtrl_m_PartsArray_IObjectNode.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIMFCCtrl_m_PartsArray_IObjectNode.gif
new file mode 100755
index 0000000..61e16c0
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIMFCCtrl_m_PartsArray_IObjectNode.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIMFCCtrl_m_PartsArray_IPanelDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIMFCCtrl_m_PartsArray_IPanelDiagram.gif
new file mode 100755
index 0000000..7e829ad
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIMFCCtrl_m_PartsArray_IPanelDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIMFCCtrl_m_PartsArray_IPart.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIMFCCtrl_m_PartsArray_IPart.gif
new file mode 100755
index 0000000..1c8ac08
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIMFCCtrl_m_PartsArray_IPart.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIMFCCtrl_m_PartsArray_IPrimitiveOperation.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIMFCCtrl_m_PartsArray_IPrimitiveOperation.gif
new file mode 100755
index 0000000..1826517
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIMFCCtrl_m_PartsArray_IPrimitiveOperation.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIMFCCtrl_m_PartsArray_IProfile.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIMFCCtrl_m_PartsArray_IProfile.gif
new file mode 100755
index 0000000..46106a3
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIMFCCtrl_m_PartsArray_IProfile.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIMFCCtrl_m_PartsArray_IReception.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIMFCCtrl_m_PartsArray_IReception.gif
new file mode 100755
index 0000000..d04c431
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIMFCCtrl_m_PartsArray_IReception.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIMFCCtrl_m_PartsArray_IReferenceActivity.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIMFCCtrl_m_PartsArray_IReferenceActivity.gif
new file mode 100755
index 0000000..83969f9
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIMFCCtrl_m_PartsArray_IReferenceActivity.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIMFCCtrl_m_PartsArray_IRequirement.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIMFCCtrl_m_PartsArray_IRequirement.gif
new file mode 100755
index 0000000..7bef7ae
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIMFCCtrl_m_PartsArray_IRequirement.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIMFCCtrl_m_PartsArray_ISequenceDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIMFCCtrl_m_PartsArray_ISequenceDiagram.gif
new file mode 100755
index 0000000..25e4762
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIMFCCtrl_m_PartsArray_ISequenceDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIMFCCtrl_m_PartsArray_IState.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIMFCCtrl_m_PartsArray_IState.gif
new file mode 100755
index 0000000..c39f978
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIMFCCtrl_m_PartsArray_IState.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIMFCCtrl_m_PartsArray_IStateChart.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIMFCCtrl_m_PartsArray_IStateChart.gif
new file mode 100755
index 0000000..90bc42c
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIMFCCtrl_m_PartsArray_IStateChart.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIMFCCtrl_m_PartsArray_IStateChartDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIMFCCtrl_m_PartsArray_IStateChartDiagram.gif
new file mode 100755
index 0000000..25e4762
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIMFCCtrl_m_PartsArray_IStateChartDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIMFCCtrl_m_PartsArray_IStereotype.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIMFCCtrl_m_PartsArray_IStereotype.gif
new file mode 100755
index 0000000..7bef7ae
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIMFCCtrl_m_PartsArray_IStereotype.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIMFCCtrl_m_PartsArray_IStructureDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIMFCCtrl_m_PartsArray_IStructureDiagram.gif
new file mode 100755
index 0000000..9130fd6
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIMFCCtrl_m_PartsArray_IStructureDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIMFCCtrl_m_PartsArray_ISubsystem.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIMFCCtrl_m_PartsArray_ISubsystem.gif
new file mode 100755
index 0000000..e66386f
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIMFCCtrl_m_PartsArray_ISubsystem.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIMFCCtrl_m_PartsArray_ISysMLPort.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIMFCCtrl_m_PartsArray_ISysMLPort.gif
new file mode 100755
index 0000000..82bf8d2
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIMFCCtrl_m_PartsArray_ISysMLPort.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIMFCCtrl_m_PartsArray_ITableInstance.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIMFCCtrl_m_PartsArray_ITableInstance.gif
new file mode 100755
index 0000000..d04c431
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIMFCCtrl_m_PartsArray_ITableInstance.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIMFCCtrl_m_PartsArray_ITransition.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIMFCCtrl_m_PartsArray_ITransition.gif
new file mode 100755
index 0000000..c345ca5
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIMFCCtrl_m_PartsArray_ITransition.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIMFCCtrl_m_PartsArray_IType.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIMFCCtrl_m_PartsArray_IType.gif
new file mode 100755
index 0000000..d1da83e
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIMFCCtrl_m_PartsArray_IType.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIMFCCtrl_m_PartsArray_IUCDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIMFCCtrl_m_PartsArray_IUCDiagram.gif
new file mode 100755
index 0000000..ebeaeeb
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIMFCCtrl_m_PartsArray_IUCDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIMFCCtrl_m_PartsArray_IUseCase.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIMFCCtrl_m_PartsArray_IUseCase.gif
new file mode 100755
index 0000000..db04142
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIMFCCtrl_m_PartsArray_IUseCase.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIMFCCtrl_m_PartsArray_IUseCaseDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIMFCCtrl_m_PartsArray_IUseCaseDiagram.gif
new file mode 100755
index 0000000..d01836d
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIMFCCtrl_m_PartsArray_IUseCaseDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIMFCCtrl_properties_IPropertyContainer.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIMFCCtrl_properties_IPropertyContainer.gif
new file mode 100755
index 0000000..18e4f1a
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIMFCCtrl_properties_IPropertyContainer.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIMscChart_graphElements_CGIActionState.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIMscChart_graphElements_CGIActionState.gif
new file mode 100755
index 0000000..1ca5318
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIMscChart_graphElements_CGIActionState.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIMscChart_graphElements_CGIActiveX.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIMscChart_graphElements_CGIActiveX.gif
new file mode 100755
index 0000000..7a7ecc7
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIMscChart_graphElements_CGIActiveX.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIMscChart_graphElements_CGIAnchor.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIMscChart_graphElements_CGIAnchor.gif
new file mode 100755
index 0000000..f9b01aa
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIMscChart_graphElements_CGIAnchor.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIMscChart_graphElements_CGIAnnotation.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIMscChart_graphElements_CGIAnnotation.gif
new file mode 100755
index 0000000..8877ab4
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIMscChart_graphElements_CGIAnnotation.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIMscChart_graphElements_CGIArrow.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIMscChart_graphElements_CGIArrow.gif
new file mode 100755
index 0000000..1cb8c19
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIMscChart_graphElements_CGIArrow.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIMscChart_graphElements_CGIAssociationEnd.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIMscChart_graphElements_CGIAssociationEnd.gif
new file mode 100755
index 0000000..2af4cd3
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIMscChart_graphElements_CGIAssociationEnd.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIMscChart_graphElements_CGIAssociationRole.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIMscChart_graphElements_CGIAssociationRole.gif
new file mode 100755
index 0000000..2f7d4aa
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIMscChart_graphElements_CGIAssociationRole.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIMscChart_graphElements_CGIBasicClass.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIMscChart_graphElements_CGIBasicClass.gif
new file mode 100755
index 0000000..261e1fa
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIMscChart_graphElements_CGIBasicClass.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIMscChart_graphElements_CGIBlockState.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIMscChart_graphElements_CGIBlockState.gif
new file mode 100755
index 0000000..8b0bcba
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIMscChart_graphElements_CGIBlockState.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIMscChart_graphElements_CGIBox.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIMscChart_graphElements_CGIBox.gif
new file mode 100755
index 0000000..afa6baf
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIMscChart_graphElements_CGIBox.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIMscChart_graphElements_CGIButtonArray.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIMscChart_graphElements_CGIButtonArray.gif
new file mode 100755
index 0000000..046b1b0
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIMscChart_graphElements_CGIButtonArray.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIMscChart_graphElements_CGIClass.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIMscChart_graphElements_CGIClass.gif
new file mode 100755
index 0000000..1f3ebd6
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIMscChart_graphElements_CGIClass.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIMscChart_graphElements_CGIClassifierRole.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIMscChart_graphElements_CGIClassifierRole.gif
new file mode 100755
index 0000000..0b5901d
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIMscChart_graphElements_CGIClassifierRole.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIMscChart_graphElements_CGIComponent.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIMscChart_graphElements_CGIComponent.gif
new file mode 100755
index 0000000..20ca1b8
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIMscChart_graphElements_CGIComponent.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIMscChart_graphElements_CGICompositeClass.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIMscChart_graphElements_CGICompositeClass.gif
new file mode 100755
index 0000000..430fdaa
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIMscChart_graphElements_CGICompositeClass.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIMscChart_graphElements_CGIConnector.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIMscChart_graphElements_CGIConnector.gif
new file mode 100755
index 0000000..7a7ecc7
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIMscChart_graphElements_CGIConnector.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIMscChart_graphElements_CGIContainArrow.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIMscChart_graphElements_CGIContainArrow.gif
new file mode 100755
index 0000000..69d083e
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIMscChart_graphElements_CGIContainArrow.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIMscChart_graphElements_CGIDiagramFrame.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIMscChart_graphElements_CGIDiagramFrame.gif
new file mode 100755
index 0000000..0b5901d
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIMscChart_graphElements_CGIDiagramFrame.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIMscChart_graphElements_CGIFreeShape.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIMscChart_graphElements_CGIFreeShape.gif
new file mode 100755
index 0000000..fd2e2cc
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIMscChart_graphElements_CGIFreeShape.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIMscChart_graphElements_CGIFreeText.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIMscChart_graphElements_CGIFreeText.gif
new file mode 100755
index 0000000..046b1b0
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIMscChart_graphElements_CGIFreeText.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIMscChart_graphElements_CGIGenericElement.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIMscChart_graphElements_CGIGenericElement.gif
new file mode 100755
index 0000000..672e981
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIMscChart_graphElements_CGIGenericElement.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIMscChart_graphElements_CGIImage.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIMscChart_graphElements_CGIImage.gif
new file mode 100755
index 0000000..afa6baf
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIMscChart_graphElements_CGIImage.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIMscChart_graphElements_CGIImageData.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIMscChart_graphElements_CGIImageData.gif
new file mode 100755
index 0000000..8a80c2d
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIMscChart_graphElements_CGIImageData.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIMscChart_graphElements_CGIInformationFlow.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIMscChart_graphElements_CGIInformationFlow.gif
new file mode 100755
index 0000000..20ca1b8
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIMscChart_graphElements_CGIInformationFlow.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIMscChart_graphElements_CGIInheritance.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIMscChart_graphElements_CGIInheritance.gif
new file mode 100755
index 0000000..fd2e2cc
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIMscChart_graphElements_CGIInheritance.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIMscChart_graphElements_CGIMFCCtrl.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIMscChart_graphElements_CGIMFCCtrl.gif
new file mode 100755
index 0000000..0ce91c4
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIMscChart_graphElements_CGIMFCCtrl.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIMscChart_graphElements_CGIMessageLabel.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIMscChart_graphElements_CGIMessageLabel.gif
new file mode 100755
index 0000000..3ffbd19
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIMscChart_graphElements_CGIMessageLabel.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIMscChart_graphElements_CGIMscColumnCR.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIMscChart_graphElements_CGIMscColumnCR.gif
new file mode 100755
index 0000000..ebb7793
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIMscChart_graphElements_CGIMscColumnCR.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIMscChart_graphElements_CGIMscConditionMark.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIMscChart_graphElements_CGIMscConditionMark.gif
new file mode 100755
index 0000000..662e1ad
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIMscChart_graphElements_CGIMscConditionMark.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIMscChart_graphElements_CGIMscExecutionOccurrence.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIMscChart_graphElements_CGIMscExecutionOccurrence.gif
new file mode 100755
index 0000000..0140163
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIMscChart_graphElements_CGIMscExecutionOccurrence.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIMscChart_graphElements_CGIMscInteractionOccurrence.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIMscChart_graphElements_CGIMscInteractionOccurrence.gif
new file mode 100755
index 0000000..96aaeb4
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIMscChart_graphElements_CGIMscInteractionOccurrence.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIMscChart_graphElements_CGIMscInteractionOperand.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIMscChart_graphElements_CGIMscInteractionOperand.gif
new file mode 100755
index 0000000..29d9678
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIMscChart_graphElements_CGIMscInteractionOperand.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIMscChart_graphElements_CGIMscInteractionOperator.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIMscChart_graphElements_CGIMscInteractionOperator.gif
new file mode 100755
index 0000000..1cb8c19
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIMscChart_graphElements_CGIMscInteractionOperator.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIMscChart_graphElements_CGIMscMessage.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIMscChart_graphElements_CGIMscMessage.gif
new file mode 100755
index 0000000..79e1b2d
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIMscChart_graphElements_CGIMscMessage.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIMscChart_graphElements_CGIObjectInstance.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIMscChart_graphElements_CGIObjectInstance.gif
new file mode 100755
index 0000000..9e43492
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIMscChart_graphElements_CGIObjectInstance.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIMscChart_graphElements_CGIObjectLink.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIMscChart_graphElements_CGIObjectLink.gif
new file mode 100755
index 0000000..1254d2c
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIMscChart_graphElements_CGIObjectLink.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIMscChart_graphElements_CGIPackage.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIMscChart_graphElements_CGIPackage.gif
new file mode 100755
index 0000000..67f1b2b
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIMscChart_graphElements_CGIPackage.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIMscChart_graphElements_CGIPartition.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIMscChart_graphElements_CGIPartition.gif
new file mode 100755
index 0000000..4eb6a08
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIMscChart_graphElements_CGIPartition.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIMscChart_graphElements_CGIPortConnector.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIMscChart_graphElements_CGIPortConnector.gif
new file mode 100755
index 0000000..0ce91c4
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIMscChart_graphElements_CGIPortConnector.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIMscChart_graphElements_CGIState.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIMscChart_graphElements_CGIState.gif
new file mode 100755
index 0000000..42bfbe3
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIMscChart_graphElements_CGIState.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIMscChart_graphElements_CGISwimlaneFrame.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIMscChart_graphElements_CGISwimlaneFrame.gif
new file mode 100755
index 0000000..b7be165
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIMscChart_graphElements_CGISwimlaneFrame.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIMscChart_graphElements_CGITextBox.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIMscChart_graphElements_CGITextBox.gif
new file mode 100755
index 0000000..1254d2c
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIMscChart_graphElements_CGITextBox.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIMscChart_graphElements_CGITrans.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIMscChart_graphElements_CGITrans.gif
new file mode 100755
index 0000000..0c2d652
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIMscChart_graphElements_CGITrans.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIMscChart_m_name_CGIText.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIMscChart_m_name_CGIText.gif
new file mode 100755
index 0000000..20ca1b8
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIMscChart_m_name_CGIText.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIMscColumnCR_m_AdditionalLabel_CGIText.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIMscColumnCR_m_AdditionalLabel_CGIText.gif
new file mode 100755
index 0000000..ae2d86d
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIMscColumnCR_m_AdditionalLabel_CGIText.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIMscColumnCR_properties_IPropertyContainer.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIMscColumnCR_properties_IPropertyContainer.gif
new file mode 100755
index 0000000..301a4bc
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIMscColumnCR_properties_IPropertyContainer.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIMscConditionMark_properties_IPropertyContainer.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIMscConditionMark_properties_IPropertyContainer.gif
new file mode 100755
index 0000000..5b03160
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIMscConditionMark_properties_IPropertyContainer.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIMscInteractionOccurrence_properties_IPropertyContainer.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIMscInteractionOccurrence_properties_IPropertyContainer.gif
new file mode 100755
index 0000000..7db9338
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIMscInteractionOccurrence_properties_IPropertyContainer.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIMscInteractionOperand_m_AdditionalLabel_CGIText.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIMscInteractionOperand_m_AdditionalLabel_CGIText.gif
new file mode 100755
index 0000000..61b0302
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIMscInteractionOperand_m_AdditionalLabel_CGIText.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIMscInteractionOperand_properties_IPropertyContainer.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIMscInteractionOperand_properties_IPropertyContainer.gif
new file mode 100755
index 0000000..a1fa94e
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIMscInteractionOperand_properties_IPropertyContainer.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIMscInteractionOperator_properties_IPropertyContainer.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIMscInteractionOperator_properties_IPropertyContainer.gif
new file mode 100755
index 0000000..850b4a3
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIMscInteractionOperator_properties_IPropertyContainer.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIMscMessage_m_rpn_CGIText.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIMscMessage_m_rpn_CGIText.gif
new file mode 100755
index 0000000..16c3e21
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIMscMessage_m_rpn_CGIText.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIMscMessage_properties_IPropertyContainer.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIMscMessage_properties_IPropertyContainer.gif
new file mode 100755
index 0000000..ed66130
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIMscMessage_properties_IPropertyContainer.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIObjectInstance_Attrs_IActor.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIObjectInstance_Attrs_IActor.gif
new file mode 100755
index 0000000..3483523
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIObjectInstance_Attrs_IActor.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIObjectInstance_Attrs_IAnnotation.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIObjectInstance_Attrs_IAnnotation.gif
new file mode 100755
index 0000000..075352b
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIObjectInstance_Attrs_IAnnotation.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIObjectInstance_Attrs_IArgument.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIObjectInstance_Attrs_IArgument.gif
new file mode 100755
index 0000000..9ca6861
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIObjectInstance_Attrs_IArgument.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIObjectInstance_Attrs_IAssociationClass.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIObjectInstance_Attrs_IAssociationClass.gif
new file mode 100755
index 0000000..dd256cc
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIObjectInstance_Attrs_IAssociationClass.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIObjectInstance_Attrs_IAttribute.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIObjectInstance_Attrs_IAttribute.gif
new file mode 100755
index 0000000..1e01c87
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIObjectInstance_Attrs_IAttribute.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIObjectInstance_Attrs_IClass.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIObjectInstance_Attrs_IClass.gif
new file mode 100755
index 0000000..79263fb
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIObjectInstance_Attrs_IClass.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIObjectInstance_Attrs_IClassifier.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIObjectInstance_Attrs_IClassifier.gif
new file mode 100755
index 0000000..aa20a64
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIObjectInstance_Attrs_IClassifier.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIObjectInstance_Attrs_ICollaborationDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIObjectInstance_Attrs_ICollaborationDiagram.gif
new file mode 100755
index 0000000..ec9eed4
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIObjectInstance_Attrs_ICollaborationDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIObjectInstance_Attrs_IComment.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIObjectInstance_Attrs_IComment.gif
new file mode 100755
index 0000000..5937668
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIObjectInstance_Attrs_IComment.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIObjectInstance_Attrs_IComponent.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIObjectInstance_Attrs_IComponent.gif
new file mode 100755
index 0000000..8fd571a
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIObjectInstance_Attrs_IComponent.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIObjectInstance_Attrs_IComponentDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIObjectInstance_Attrs_IComponentDiagram.gif
new file mode 100755
index 0000000..9ca6861
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIObjectInstance_Attrs_IComponentDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIObjectInstance_Attrs_IConstraint.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIObjectInstance_Attrs_IConstraint.gif
new file mode 100755
index 0000000..90b42b5
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIObjectInstance_Attrs_IConstraint.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIObjectInstance_Attrs_IControlledFile.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIObjectInstance_Attrs_IControlledFile.gif
new file mode 100755
index 0000000..0d3869b
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIObjectInstance_Attrs_IControlledFile.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIObjectInstance_Attrs_IDeploymentDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIObjectInstance_Attrs_IDeploymentDiagram.gif
new file mode 100755
index 0000000..7d18f38
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIObjectInstance_Attrs_IDeploymentDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIObjectInstance_Attrs_IDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIObjectInstance_Attrs_IDiagram.gif
new file mode 100755
index 0000000..2072844
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIObjectInstance_Attrs_IDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIObjectInstance_Attrs_IEvent.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIObjectInstance_Attrs_IEvent.gif
new file mode 100755
index 0000000..8fd571a
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIObjectInstance_Attrs_IEvent.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIObjectInstance_Attrs_IEventReception.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIObjectInstance_Attrs_IEventReception.gif
new file mode 100755
index 0000000..c51ddff
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIObjectInstance_Attrs_IEventReception.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIObjectInstance_Attrs_IFile.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIObjectInstance_Attrs_IFile.gif
new file mode 100755
index 0000000..e792ad9
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIObjectInstance_Attrs_IFile.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIObjectInstance_Attrs_IFlowItem.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIObjectInstance_Attrs_IFlowItem.gif
new file mode 100755
index 0000000..50ac6da
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIObjectInstance_Attrs_IFlowItem.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIObjectInstance_Attrs_IInstance.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIObjectInstance_Attrs_IInstance.gif
new file mode 100755
index 0000000..097f1cb
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIObjectInstance_Attrs_IInstance.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIObjectInstance_Attrs_IInterfaceItem.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIObjectInstance_Attrs_IInterfaceItem.gif
new file mode 100755
index 0000000..2072844
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIObjectInstance_Attrs_IInterfaceItem.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIObjectInstance_Attrs_ILink.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIObjectInstance_Attrs_ILink.gif
new file mode 100755
index 0000000..5a66bf4
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIObjectInstance_Attrs_ILink.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIObjectInstance_Attrs_IMatrixLayout.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIObjectInstance_Attrs_IMatrixLayout.gif
new file mode 100755
index 0000000..2bf1e9a
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIObjectInstance_Attrs_IMatrixLayout.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIObjectInstance_Attrs_IMatrixView.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIObjectInstance_Attrs_IMatrixView.gif
new file mode 100755
index 0000000..8fd571a
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIObjectInstance_Attrs_IMatrixView.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIObjectInstance_Attrs_IModule.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIObjectInstance_Attrs_IModule.gif
new file mode 100755
index 0000000..4fdd589
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIObjectInstance_Attrs_IModule.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIObjectInstance_Attrs_INode.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIObjectInstance_Attrs_INode.gif
new file mode 100755
index 0000000..ca79a7f
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIObjectInstance_Attrs_INode.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIObjectInstance_Attrs_IObjectModelDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIObjectInstance_Attrs_IObjectModelDiagram.gif
new file mode 100755
index 0000000..bf19516
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIObjectInstance_Attrs_IObjectModelDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIObjectInstance_Attrs_IOperation.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIObjectInstance_Attrs_IOperation.gif
new file mode 100755
index 0000000..7d18f38
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIObjectInstance_Attrs_IOperation.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIObjectInstance_Attrs_IPackage.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIObjectInstance_Attrs_IPackage.gif
new file mode 100755
index 0000000..5c7bfbe
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIObjectInstance_Attrs_IPackage.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIObjectInstance_Attrs_IPanelDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIObjectInstance_Attrs_IPanelDiagram.gif
new file mode 100755
index 0000000..e792ad9
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIObjectInstance_Attrs_IPanelDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIObjectInstance_Attrs_IPort.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIObjectInstance_Attrs_IPort.gif
new file mode 100755
index 0000000..8fd571a
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIObjectInstance_Attrs_IPort.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIObjectInstance_Attrs_IProfile.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIObjectInstance_Attrs_IProfile.gif
new file mode 100755
index 0000000..90b42b5
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIObjectInstance_Attrs_IProfile.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIObjectInstance_Attrs_IProject.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIObjectInstance_Attrs_IProject.gif
new file mode 100755
index 0000000..e00417a
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIObjectInstance_Attrs_IProject.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIObjectInstance_Attrs_IRelation.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIObjectInstance_Attrs_IRelation.gif
new file mode 100755
index 0000000..4023703
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIObjectInstance_Attrs_IRelation.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIObjectInstance_Attrs_IRequirement.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIObjectInstance_Attrs_IRequirement.gif
new file mode 100755
index 0000000..a021a81
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIObjectInstance_Attrs_IRequirement.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIObjectInstance_Attrs_ISequenceDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIObjectInstance_Attrs_ISequenceDiagram.gif
new file mode 100755
index 0000000..bb27d46
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIObjectInstance_Attrs_ISequenceDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIObjectInstance_Attrs_IStateChart.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIObjectInstance_Attrs_IStateChart.gif
new file mode 100755
index 0000000..b8d07e0
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIObjectInstance_Attrs_IStateChart.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIObjectInstance_Attrs_IStateChartDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIObjectInstance_Attrs_IStateChartDiagram.gif
new file mode 100755
index 0000000..bb27d46
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIObjectInstance_Attrs_IStateChartDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIObjectInstance_Attrs_IStereotype.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIObjectInstance_Attrs_IStereotype.gif
new file mode 100755
index 0000000..a021a81
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIObjectInstance_Attrs_IStereotype.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIObjectInstance_Attrs_IStructureDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIObjectInstance_Attrs_IStructureDiagram.gif
new file mode 100755
index 0000000..075352b
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIObjectInstance_Attrs_IStructureDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIObjectInstance_Attrs_ISysMLPort.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIObjectInstance_Attrs_ISysMLPort.gif
new file mode 100755
index 0000000..4fdd589
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIObjectInstance_Attrs_ISysMLPort.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIObjectInstance_Attrs_ITableLayout.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIObjectInstance_Attrs_ITableLayout.gif
new file mode 100755
index 0000000..2072844
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIObjectInstance_Attrs_ITableLayout.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIObjectInstance_Attrs_ITableView.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIObjectInstance_Attrs_ITableView.gif
new file mode 100755
index 0000000..bb27d46
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIObjectInstance_Attrs_ITableView.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIObjectInstance_Attrs_ITag.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIObjectInstance_Attrs_ITag.gif
new file mode 100755
index 0000000..2327061
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIObjectInstance_Attrs_ITag.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIObjectInstance_Attrs_ITemplateParameter.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIObjectInstance_Attrs_ITemplateParameter.gif
new file mode 100755
index 0000000..bf19516
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIObjectInstance_Attrs_ITemplateParameter.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIObjectInstance_Attrs_IType.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIObjectInstance_Attrs_IType.gif
new file mode 100755
index 0000000..27dbe98
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIObjectInstance_Attrs_IType.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIObjectInstance_Attrs_IUnit.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIObjectInstance_Attrs_IUnit.gif
new file mode 100755
index 0000000..c3c4510
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIObjectInstance_Attrs_IUnit.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIObjectInstance_Attrs_IUseCase.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIObjectInstance_Attrs_IUseCase.gif
new file mode 100755
index 0000000..9ca6861
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIObjectInstance_Attrs_IUseCase.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIObjectInstance_Attrs_IUseCaseDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIObjectInstance_Attrs_IUseCaseDiagram.gif
new file mode 100755
index 0000000..5937668
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIObjectInstance_Attrs_IUseCaseDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIObjectInstance_Attrs_IVariable.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIObjectInstance_Attrs_IVariable.gif
new file mode 100755
index 0000000..bb27d46
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIObjectInstance_Attrs_IVariable.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIObjectInstance_Compartments_CGICompartment.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIObjectInstance_Compartments_CGICompartment.gif
new file mode 100755
index 0000000..9ca6861
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIObjectInstance_Compartments_CGICompartment.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIObjectInstance_Operations_IConstructor.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIObjectInstance_Operations_IConstructor.gif
new file mode 100755
index 0000000..f3e037f
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIObjectInstance_Operations_IConstructor.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIObjectInstance_Operations_IDestructor.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIObjectInstance_Operations_IDestructor.gif
new file mode 100755
index 0000000..02a6854
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIObjectInstance_Operations_IDestructor.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIObjectInstance_Operations_IPrimitiveOperation.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIObjectInstance_Operations_IPrimitiveOperation.gif
new file mode 100755
index 0000000..dd256cc
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIObjectInstance_Operations_IPrimitiveOperation.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIObjectInstance_Operations_IReception.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIObjectInstance_Operations_IReception.gif
new file mode 100755
index 0000000..8640819
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIObjectInstance_Operations_IReception.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIObjectInstance_Operations_ITriggered.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIObjectInstance_Operations_ITriggered.gif
new file mode 100755
index 0000000..c51ddff
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIObjectInstance_Operations_ITriggered.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIObjectInstance_m_AdditionalLabel_CGIText.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIObjectInstance_m_AdditionalLabel_CGIText.gif
new file mode 100755
index 0000000..bb27d46
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIObjectInstance_m_AdditionalLabel_CGIText.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIObjectInstance_m_multiplicity_CGIText.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIObjectInstance_m_multiplicity_CGIText.gif
new file mode 100755
index 0000000..bb27d46
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIObjectInstance_m_multiplicity_CGIText.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIObjectInstance_properties_IPropertyContainer.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIObjectInstance_properties_IPropertyContainer.gif
new file mode 100755
index 0000000..a88faa1
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIObjectInstance_properties_IPropertyContainer.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIObjectLink_m_rpn_CGIText.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIObjectLink_m_rpn_CGIText.gif
new file mode 100755
index 0000000..a4d42e0
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIObjectLink_m_rpn_CGIText.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIObjectLink_m_sourceMultiplicity_CGIText.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIObjectLink_m_sourceMultiplicity_CGIText.gif
new file mode 100755
index 0000000..a4d42e0
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIObjectLink_m_sourceMultiplicity_CGIText.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIObjectLink_m_sourceRole_CGIText.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIObjectLink_m_sourceRole_CGIText.gif
new file mode 100755
index 0000000..a4d42e0
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIObjectLink_m_sourceRole_CGIText.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIObjectLink_m_targetMultiplicity_CGIText.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIObjectLink_m_targetMultiplicity_CGIText.gif
new file mode 100755
index 0000000..a4d42e0
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIObjectLink_m_targetMultiplicity_CGIText.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIObjectLink_m_targetRole_CGIText.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIObjectLink_m_targetRole_CGIText.gif
new file mode 100755
index 0000000..a4d42e0
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIObjectLink_m_targetRole_CGIText.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIObjectLink_properties_IPropertyContainer.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIObjectLink_properties_IPropertyContainer.gif
new file mode 100755
index 0000000..dabd6f4
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIObjectLink_properties_IPropertyContainer.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIPackage_m_AdditionalLabel_CGIText.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIPackage_m_AdditionalLabel_CGIText.gif
new file mode 100755
index 0000000..7ca3215
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIPackage_m_AdditionalLabel_CGIText.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIPackage_m_color_IColor.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIPackage_m_color_IColor.gif
new file mode 100755
index 0000000..799d63b
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIPackage_m_color_IColor.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIPackage_properties_IPropertyContainer.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIPackage_properties_IPropertyContainer.gif
new file mode 100755
index 0000000..e564f3f
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIPackage_properties_IPropertyContainer.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIPartition_Compartments_CGICompartment.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIPartition_Compartments_CGICompartment.gif
new file mode 100755
index 0000000..6d6f6a6
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIPartition_Compartments_CGICompartment.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIPartition_m_AdditionalLabel_CGIText.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIPartition_m_AdditionalLabel_CGIText.gif
new file mode 100755
index 0000000..cc8cb04
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIPartition_m_AdditionalLabel_CGIText.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIPartition_properties_IPropertyContainer.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIPartition_properties_IPropertyContainer.gif
new file mode 100755
index 0000000..6252ba0
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIPartition_properties_IPropertyContainer.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIPortConnector_m_AdditionalLabel_CGIText.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIPortConnector_m_AdditionalLabel_CGIText.gif
new file mode 100755
index 0000000..25e4762
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIPortConnector_m_AdditionalLabel_CGIText.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIPortConnector_m_providedInterfaceLabel_CGIText.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIPortConnector_m_providedInterfaceLabel_CGIText.gif
new file mode 100755
index 0000000..25e4762
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIPortConnector_m_providedInterfaceLabel_CGIText.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIPortConnector_m_requiredInterfaceLabel_CGIText.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIPortConnector_m_requiredInterfaceLabel_CGIText.gif
new file mode 100755
index 0000000..25e4762
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIPortConnector_m_requiredInterfaceLabel_CGIText.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIPortConnector_properties_IPropertyContainer.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIPortConnector_properties_IPropertyContainer.gif
new file mode 100755
index 0000000..18e4f1a
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIPortConnector_properties_IPropertyContainer.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIStateChart_properties_IPropertyContainer.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIStateChart_properties_IPropertyContainer.gif
new file mode 100755
index 0000000..a1fa94e
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIStateChart_properties_IPropertyContainer.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIState_Compartments_CGICompartment.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIState_Compartments_CGICompartment.gif
new file mode 100755
index 0000000..6759be9
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIState_Compartments_CGICompartment.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIState_m_AdditionalLabel_CGIText.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIState_m_AdditionalLabel_CGIText.gif
new file mode 100755
index 0000000..3c33fd3
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIState_m_AdditionalLabel_CGIText.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIState_m_color_IColor.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIState_m_color_IColor.gif
new file mode 100755
index 0000000..65e5a9b
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIState_m_color_IColor.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIState_properties_IPropertyContainer.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIState_properties_IPropertyContainer.gif
new file mode 100755
index 0000000..accfd4b
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIState_properties_IPropertyContainer.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGISwimlaneFrame_Compartments_CGICompartment.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGISwimlaneFrame_Compartments_CGICompartment.gif
new file mode 100755
index 0000000..64ea174
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGISwimlaneFrame_Compartments_CGICompartment.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGITextBox_m_PartsArray_IAcceptEventAction.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGITextBox_m_PartsArray_IAcceptEventAction.gif
new file mode 100755
index 0000000..f11ad89
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGITextBox_m_PartsArray_IAcceptEventAction.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGITextBox_m_PartsArray_IAcceptTimeEvent.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGITextBox_m_PartsArray_IAcceptTimeEvent.gif
new file mode 100755
index 0000000..73aa62a
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGITextBox_m_PartsArray_IAcceptTimeEvent.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGITextBox_m_PartsArray_IActivityDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGITextBox_m_PartsArray_IActivityDiagram.gif
new file mode 100755
index 0000000..0d2e262
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGITextBox_m_PartsArray_IActivityDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGITextBox_m_PartsArray_IActivityGraph.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGITextBox_m_PartsArray_IActivityGraph.gif
new file mode 100755
index 0000000..e0f2847
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGITextBox_m_PartsArray_IActivityGraph.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGITextBox_m_PartsArray_IActor.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGITextBox_m_PartsArray_IActor.gif
new file mode 100755
index 0000000..ebd9b3e
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGITextBox_m_PartsArray_IActor.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGITextBox_m_PartsArray_IAssociationClass.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGITextBox_m_PartsArray_IAssociationClass.gif
new file mode 100755
index 0000000..72a560f
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGITextBox_m_PartsArray_IAssociationClass.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGITextBox_m_PartsArray_IAttribute.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGITextBox_m_PartsArray_IAttribute.gif
new file mode 100755
index 0000000..c8804a9
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGITextBox_m_PartsArray_IAttribute.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGITextBox_m_PartsArray_ICallOperation.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGITextBox_m_PartsArray_ICallOperation.gif
new file mode 100755
index 0000000..852e790
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGITextBox_m_PartsArray_ICallOperation.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGITextBox_m_PartsArray_IClass.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGITextBox_m_PartsArray_IClass.gif
new file mode 100755
index 0000000..b255669
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGITextBox_m_PartsArray_IClass.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGITextBox_m_PartsArray_ICodeGenConfigInfo.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGITextBox_m_PartsArray_ICodeGenConfigInfo.gif
new file mode 100755
index 0000000..bbdb41d
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGITextBox_m_PartsArray_ICodeGenConfigInfo.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGITextBox_m_PartsArray_ICollaborationDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGITextBox_m_PartsArray_ICollaborationDiagram.gif
new file mode 100755
index 0000000..84d3267
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGITextBox_m_PartsArray_ICollaborationDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGITextBox_m_PartsArray_IComponent.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGITextBox_m_PartsArray_IComponent.gif
new file mode 100755
index 0000000..73aa62a
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGITextBox_m_PartsArray_IComponent.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGITextBox_m_PartsArray_IComponentDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGITextBox_m_PartsArray_IComponentDiagram.gif
new file mode 100755
index 0000000..efa5ade
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGITextBox_m_PartsArray_IComponentDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGITextBox_m_PartsArray_IDefaultDrvdTrans.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGITextBox_m_PartsArray_IDefaultDrvdTrans.gif
new file mode 100755
index 0000000..3744cee
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGITextBox_m_PartsArray_IDefaultDrvdTrans.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGITextBox_m_PartsArray_IDependency.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGITextBox_m_PartsArray_IDependency.gif
new file mode 100755
index 0000000..506a19b
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGITextBox_m_PartsArray_IDependency.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGITextBox_m_PartsArray_IDeploymentDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGITextBox_m_PartsArray_IDeploymentDiagram.gif
new file mode 100755
index 0000000..a4aa4f8
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGITextBox_m_PartsArray_IDeploymentDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGITextBox_m_PartsArray_IDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGITextBox_m_PartsArray_IDiagram.gif
new file mode 100755
index 0000000..3e8f733
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGITextBox_m_PartsArray_IDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGITextBox_m_PartsArray_IHyperLink.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGITextBox_m_PartsArray_IHyperLink.gif
new file mode 100755
index 0000000..9c8833e
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGITextBox_m_PartsArray_IHyperLink.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGITextBox_m_PartsArray_IInformationFlow.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGITextBox_m_PartsArray_IInformationFlow.gif
new file mode 100755
index 0000000..73aa62a
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGITextBox_m_PartsArray_IInformationFlow.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGITextBox_m_PartsArray_IInformationItem.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGITextBox_m_PartsArray_IInformationItem.gif
new file mode 100755
index 0000000..ebd9b3e
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGITextBox_m_PartsArray_IInformationItem.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGITextBox_m_PartsArray_IMSC.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGITextBox_m_PartsArray_IMSC.gif
new file mode 100755
index 0000000..f11ad89
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGITextBox_m_PartsArray_IMSC.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGITextBox_m_PartsArray_IMatrixInstance.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGITextBox_m_PartsArray_IMatrixInstance.gif
new file mode 100755
index 0000000..8b41d35
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGITextBox_m_PartsArray_IMatrixInstance.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGITextBox_m_PartsArray_IMessage.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGITextBox_m_PartsArray_IMessage.gif
new file mode 100755
index 0000000..fd5f7bb
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGITextBox_m_PartsArray_IMessage.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGITextBox_m_PartsArray_IModule.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGITextBox_m_PartsArray_IModule.gif
new file mode 100755
index 0000000..a2ea8fe
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGITextBox_m_PartsArray_IModule.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGITextBox_m_PartsArray_IObjectLink.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGITextBox_m_PartsArray_IObjectLink.gif
new file mode 100755
index 0000000..c53d8e9
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGITextBox_m_PartsArray_IObjectLink.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGITextBox_m_PartsArray_IObjectModelDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGITextBox_m_PartsArray_IObjectModelDiagram.gif
new file mode 100755
index 0000000..73f1649
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGITextBox_m_PartsArray_IObjectModelDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGITextBox_m_PartsArray_IObjectNode.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGITextBox_m_PartsArray_IObjectNode.gif
new file mode 100755
index 0000000..691dd11
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGITextBox_m_PartsArray_IObjectNode.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGITextBox_m_PartsArray_IPanelDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGITextBox_m_PartsArray_IPanelDiagram.gif
new file mode 100755
index 0000000..e0f2847
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGITextBox_m_PartsArray_IPanelDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGITextBox_m_PartsArray_IPart.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGITextBox_m_PartsArray_IPart.gif
new file mode 100755
index 0000000..dde736f
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGITextBox_m_PartsArray_IPart.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGITextBox_m_PartsArray_IPrimitiveOperation.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGITextBox_m_PartsArray_IPrimitiveOperation.gif
new file mode 100755
index 0000000..72a560f
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGITextBox_m_PartsArray_IPrimitiveOperation.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGITextBox_m_PartsArray_IProfile.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGITextBox_m_PartsArray_IProfile.gif
new file mode 100755
index 0000000..f11ad89
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGITextBox_m_PartsArray_IProfile.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGITextBox_m_PartsArray_IReception.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGITextBox_m_PartsArray_IReception.gif
new file mode 100755
index 0000000..053b434
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGITextBox_m_PartsArray_IReception.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGITextBox_m_PartsArray_IReferenceActivity.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGITextBox_m_PartsArray_IReferenceActivity.gif
new file mode 100755
index 0000000..f4369fd
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGITextBox_m_PartsArray_IReferenceActivity.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGITextBox_m_PartsArray_IRequirement.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGITextBox_m_PartsArray_IRequirement.gif
new file mode 100755
index 0000000..7b61148
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGITextBox_m_PartsArray_IRequirement.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGITextBox_m_PartsArray_ISequenceDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGITextBox_m_PartsArray_ISequenceDiagram.gif
new file mode 100755
index 0000000..a4d42e0
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGITextBox_m_PartsArray_ISequenceDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGITextBox_m_PartsArray_IState.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGITextBox_m_PartsArray_IState.gif
new file mode 100755
index 0000000..ada3f02
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGITextBox_m_PartsArray_IState.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGITextBox_m_PartsArray_IStateChart.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGITextBox_m_PartsArray_IStateChart.gif
new file mode 100755
index 0000000..9c8833e
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGITextBox_m_PartsArray_IStateChart.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGITextBox_m_PartsArray_IStateChartDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGITextBox_m_PartsArray_IStateChartDiagram.gif
new file mode 100755
index 0000000..a4d42e0
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGITextBox_m_PartsArray_IStateChartDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGITextBox_m_PartsArray_IStereotype.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGITextBox_m_PartsArray_IStereotype.gif
new file mode 100755
index 0000000..7b61148
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGITextBox_m_PartsArray_IStereotype.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGITextBox_m_PartsArray_IStructureDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGITextBox_m_PartsArray_IStructureDiagram.gif
new file mode 100755
index 0000000..2d3a78e
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGITextBox_m_PartsArray_IStructureDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGITextBox_m_PartsArray_ISubsystem.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGITextBox_m_PartsArray_ISubsystem.gif
new file mode 100755
index 0000000..0674698
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGITextBox_m_PartsArray_ISubsystem.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGITextBox_m_PartsArray_ISysMLPort.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGITextBox_m_PartsArray_ISysMLPort.gif
new file mode 100755
index 0000000..a2ea8fe
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGITextBox_m_PartsArray_ISysMLPort.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGITextBox_m_PartsArray_ITableInstance.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGITextBox_m_PartsArray_ITableInstance.gif
new file mode 100755
index 0000000..053b434
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGITextBox_m_PartsArray_ITableInstance.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGITextBox_m_PartsArray_ITransition.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGITextBox_m_PartsArray_ITransition.gif
new file mode 100755
index 0000000..7acbca3
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGITextBox_m_PartsArray_ITransition.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGITextBox_m_PartsArray_IType.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGITextBox_m_PartsArray_IType.gif
new file mode 100755
index 0000000..13e215e
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGITextBox_m_PartsArray_IType.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGITextBox_m_PartsArray_IUCDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGITextBox_m_PartsArray_IUCDiagram.gif
new file mode 100755
index 0000000..ddf43a1
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGITextBox_m_PartsArray_IUCDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGITextBox_m_PartsArray_IUseCase.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGITextBox_m_PartsArray_IUseCase.gif
new file mode 100755
index 0000000..efa5ade
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGITextBox_m_PartsArray_IUseCase.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGITextBox_m_PartsArray_IUseCaseDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGITextBox_m_PartsArray_IUseCaseDiagram.gif
new file mode 100755
index 0000000..4d51bba
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGITextBox_m_PartsArray_IUseCaseDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGITextBox_properties_IPropertyContainer.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGITextBox_properties_IPropertyContainer.gif
new file mode 100755
index 0000000..dabd6f4
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGITextBox_properties_IPropertyContainer.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIText_m_color_IColor.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIText_m_color_IColor.gif
new file mode 100755
index 0000000..889f3af
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGIText_m_color_IColor.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGITrans_m_color_IColor.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGITrans_m_color_IColor.gif
new file mode 100755
index 0000000..0cd2b13
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGITrans_m_color_IColor.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGITrans_m_rpn_CGIText.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGITrans_m_rpn_CGIText.gif
new file mode 100755
index 0000000..b2f75a7
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGITrans_m_rpn_CGIText.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGITrans_properties_IPropertyContainer.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGITrans_properties_IPropertyContainer.gif
new file mode 100755
index 0000000..26eb6e3
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateCGITrans_properties_IPropertyContainer.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateGraphElementsType_m_name_CGIText.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateGraphElementsType_m_name_CGIText.gif
new file mode 100755
index 0000000..d8b262a
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateGraphElementsType_m_name_CGIText.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateGraphicChartType_graphElements_CGIActionState.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateGraphicChartType_graphElements_CGIActionState.gif
new file mode 100755
index 0000000..d0b4078
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateGraphicChartType_graphElements_CGIActionState.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateGraphicChartType_graphElements_CGIActiveX.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateGraphicChartType_graphElements_CGIActiveX.gif
new file mode 100755
index 0000000..bb564b1
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateGraphicChartType_graphElements_CGIActiveX.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateGraphicChartType_graphElements_CGIAnchor.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateGraphicChartType_graphElements_CGIAnchor.gif
new file mode 100755
index 0000000..c9a458c
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateGraphicChartType_graphElements_CGIAnchor.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateGraphicChartType_graphElements_CGIAnnotation.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateGraphicChartType_graphElements_CGIAnnotation.gif
new file mode 100755
index 0000000..ed9bacf
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateGraphicChartType_graphElements_CGIAnnotation.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateGraphicChartType_graphElements_CGIArrow.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateGraphicChartType_graphElements_CGIArrow.gif
new file mode 100755
index 0000000..8e0ea4d
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateGraphicChartType_graphElements_CGIArrow.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateGraphicChartType_graphElements_CGIAssociationEnd.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateGraphicChartType_graphElements_CGIAssociationEnd.gif
new file mode 100755
index 0000000..e44bf16
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateGraphicChartType_graphElements_CGIAssociationEnd.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateGraphicChartType_graphElements_CGIAssociationRole.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateGraphicChartType_graphElements_CGIAssociationRole.gif
new file mode 100755
index 0000000..3951fc1
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateGraphicChartType_graphElements_CGIAssociationRole.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateGraphicChartType_graphElements_CGIBasicClass.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateGraphicChartType_graphElements_CGIBasicClass.gif
new file mode 100755
index 0000000..c78943e
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateGraphicChartType_graphElements_CGIBasicClass.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateGraphicChartType_graphElements_CGIBlockState.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateGraphicChartType_graphElements_CGIBlockState.gif
new file mode 100755
index 0000000..0b72453
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateGraphicChartType_graphElements_CGIBlockState.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateGraphicChartType_graphElements_CGIBox.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateGraphicChartType_graphElements_CGIBox.gif
new file mode 100755
index 0000000..937120b
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateGraphicChartType_graphElements_CGIBox.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateGraphicChartType_graphElements_CGIButtonArray.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateGraphicChartType_graphElements_CGIButtonArray.gif
new file mode 100755
index 0000000..23bed02
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateGraphicChartType_graphElements_CGIButtonArray.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateGraphicChartType_graphElements_CGIClass.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateGraphicChartType_graphElements_CGIClass.gif
new file mode 100755
index 0000000..2a39ddc
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateGraphicChartType_graphElements_CGIClass.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateGraphicChartType_graphElements_CGIClassifierRole.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateGraphicChartType_graphElements_CGIClassifierRole.gif
new file mode 100755
index 0000000..e96c27f
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateGraphicChartType_graphElements_CGIClassifierRole.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateGraphicChartType_graphElements_CGIComponent.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateGraphicChartType_graphElements_CGIComponent.gif
new file mode 100755
index 0000000..c5374c2
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateGraphicChartType_graphElements_CGIComponent.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateGraphicChartType_graphElements_CGICompositeClass.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateGraphicChartType_graphElements_CGICompositeClass.gif
new file mode 100755
index 0000000..cc89bc9
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateGraphicChartType_graphElements_CGICompositeClass.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateGraphicChartType_graphElements_CGIConnector.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateGraphicChartType_graphElements_CGIConnector.gif
new file mode 100755
index 0000000..bb564b1
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateGraphicChartType_graphElements_CGIConnector.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateGraphicChartType_graphElements_CGIContainArrow.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateGraphicChartType_graphElements_CGIContainArrow.gif
new file mode 100755
index 0000000..8883ef6
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateGraphicChartType_graphElements_CGIContainArrow.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateGraphicChartType_graphElements_CGIDiagramFrame.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateGraphicChartType_graphElements_CGIDiagramFrame.gif
new file mode 100755
index 0000000..e96c27f
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateGraphicChartType_graphElements_CGIDiagramFrame.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateGraphicChartType_graphElements_CGIFreeShape.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateGraphicChartType_graphElements_CGIFreeShape.gif
new file mode 100755
index 0000000..c9af92d
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateGraphicChartType_graphElements_CGIFreeShape.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateGraphicChartType_graphElements_CGIFreeText.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateGraphicChartType_graphElements_CGIFreeText.gif
new file mode 100755
index 0000000..23bed02
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateGraphicChartType_graphElements_CGIFreeText.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateGraphicChartType_graphElements_CGIGenericElement.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateGraphicChartType_graphElements_CGIGenericElement.gif
new file mode 100755
index 0000000..826ffa9
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateGraphicChartType_graphElements_CGIGenericElement.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateGraphicChartType_graphElements_CGIImage.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateGraphicChartType_graphElements_CGIImage.gif
new file mode 100755
index 0000000..937120b
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateGraphicChartType_graphElements_CGIImage.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateGraphicChartType_graphElements_CGIImageData.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateGraphicChartType_graphElements_CGIImageData.gif
new file mode 100755
index 0000000..5cfd2a8
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateGraphicChartType_graphElements_CGIImageData.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateGraphicChartType_graphElements_CGIInformationFlow.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateGraphicChartType_graphElements_CGIInformationFlow.gif
new file mode 100755
index 0000000..c5374c2
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateGraphicChartType_graphElements_CGIInformationFlow.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateGraphicChartType_graphElements_CGIInheritance.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateGraphicChartType_graphElements_CGIInheritance.gif
new file mode 100755
index 0000000..c9af92d
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateGraphicChartType_graphElements_CGIInheritance.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateGraphicChartType_graphElements_CGIMFCCtrl.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateGraphicChartType_graphElements_CGIMFCCtrl.gif
new file mode 100755
index 0000000..fff28cf
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateGraphicChartType_graphElements_CGIMFCCtrl.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateGraphicChartType_graphElements_CGIMessageLabel.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateGraphicChartType_graphElements_CGIMessageLabel.gif
new file mode 100755
index 0000000..d8d5fa9
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateGraphicChartType_graphElements_CGIMessageLabel.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateGraphicChartType_graphElements_CGIMscColumnCR.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateGraphicChartType_graphElements_CGIMscColumnCR.gif
new file mode 100755
index 0000000..7bbad50
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateGraphicChartType_graphElements_CGIMscColumnCR.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateGraphicChartType_graphElements_CGIMscConditionMark.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateGraphicChartType_graphElements_CGIMscConditionMark.gif
new file mode 100755
index 0000000..98e70dd
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateGraphicChartType_graphElements_CGIMscConditionMark.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateGraphicChartType_graphElements_CGIMscExecutionOccurrence.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateGraphicChartType_graphElements_CGIMscExecutionOccurrence.gif
new file mode 100755
index 0000000..8d9cbe9
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateGraphicChartType_graphElements_CGIMscExecutionOccurrence.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateGraphicChartType_graphElements_CGIMscInteractionOccurrence.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateGraphicChartType_graphElements_CGIMscInteractionOccurrence.gif
new file mode 100755
index 0000000..00fdba3
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateGraphicChartType_graphElements_CGIMscInteractionOccurrence.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateGraphicChartType_graphElements_CGIMscInteractionOperand.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateGraphicChartType_graphElements_CGIMscInteractionOperand.gif
new file mode 100755
index 0000000..05a1474
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateGraphicChartType_graphElements_CGIMscInteractionOperand.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateGraphicChartType_graphElements_CGIMscInteractionOperator.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateGraphicChartType_graphElements_CGIMscInteractionOperator.gif
new file mode 100755
index 0000000..8e0ea4d
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateGraphicChartType_graphElements_CGIMscInteractionOperator.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateGraphicChartType_graphElements_CGIMscMessage.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateGraphicChartType_graphElements_CGIMscMessage.gif
new file mode 100755
index 0000000..6f4abde
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateGraphicChartType_graphElements_CGIMscMessage.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateGraphicChartType_graphElements_CGIObjectInstance.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateGraphicChartType_graphElements_CGIObjectInstance.gif
new file mode 100755
index 0000000..7243ac1
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateGraphicChartType_graphElements_CGIObjectInstance.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateGraphicChartType_graphElements_CGIObjectLink.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateGraphicChartType_graphElements_CGIObjectLink.gif
new file mode 100755
index 0000000..fd60bf2
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateGraphicChartType_graphElements_CGIObjectLink.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateGraphicChartType_graphElements_CGIPackage.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateGraphicChartType_graphElements_CGIPackage.gif
new file mode 100755
index 0000000..6a5dfd4
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateGraphicChartType_graphElements_CGIPackage.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateGraphicChartType_graphElements_CGIPartition.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateGraphicChartType_graphElements_CGIPartition.gif
new file mode 100755
index 0000000..fa85724
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateGraphicChartType_graphElements_CGIPartition.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateGraphicChartType_graphElements_CGIPortConnector.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateGraphicChartType_graphElements_CGIPortConnector.gif
new file mode 100755
index 0000000..fff28cf
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateGraphicChartType_graphElements_CGIPortConnector.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateGraphicChartType_graphElements_CGIState.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateGraphicChartType_graphElements_CGIState.gif
new file mode 100755
index 0000000..911eb80
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateGraphicChartType_graphElements_CGIState.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateGraphicChartType_graphElements_CGISwimlaneFrame.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateGraphicChartType_graphElements_CGISwimlaneFrame.gif
new file mode 100755
index 0000000..56f8f0b
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateGraphicChartType_graphElements_CGISwimlaneFrame.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateGraphicChartType_graphElements_CGITextBox.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateGraphicChartType_graphElements_CGITextBox.gif
new file mode 100755
index 0000000..fd60bf2
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateGraphicChartType_graphElements_CGITextBox.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateGraphicChartType_graphElements_CGITrans.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateGraphicChartType_graphElements_CGITrans.gif
new file mode 100755
index 0000000..4976002
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateGraphicChartType_graphElements_CGITrans.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateGraphicChartType_m_name_CGIText.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateGraphicChartType_m_name_CGIText.gif
new file mode 100755
index 0000000..c5374c2
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateGraphicChartType_m_name_CGIText.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIActivityDiagram_graphicChart_CGIStateChart.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIActivityDiagram_graphicChart_CGIStateChart.gif
new file mode 100755
index 0000000..935ff3b
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIActivityDiagram_graphicChart_CGIStateChart.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIActivityGraph_Annotations_IComment.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIActivityGraph_Annotations_IComment.gif
new file mode 100755
index 0000000..e30f5c2
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIActivityGraph_Annotations_IComment.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIActivityGraph_Associations_IAssociationEnd.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIActivityGraph_Associations_IAssociationEnd.gif
new file mode 100755
index 0000000..3d60257
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIActivityGraph_Associations_IAssociationEnd.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIActivityGraph_Dependencies_IDependency.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIActivityGraph_Dependencies_IDependency.gif
new file mode 100755
index 0000000..dd660df
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIActivityGraph_Dependencies_IDependency.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIActivityGraph_Dependencies_IHyperLink.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIActivityGraph_Dependencies_IHyperLink.gif
new file mode 100755
index 0000000..5016d02
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIActivityGraph_Dependencies_IHyperLink.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIActivityGraph_HyperLinks_IMHyperLink.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIActivityGraph_HyperLinks_IMHyperLink.gif
new file mode 100755
index 0000000..3d60257
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIActivityGraph_HyperLinks_IMHyperLink.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIActivityGraph_States_IAcceptEventAction.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIActivityGraph_States_IAcceptEventAction.gif
new file mode 100755
index 0000000..76bab9e
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIActivityGraph_States_IAcceptEventAction.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIActivityGraph_States_IAcceptTimeEvent.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIActivityGraph_States_IAcceptTimeEvent.gif
new file mode 100755
index 0000000..83c60f9
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIActivityGraph_States_IAcceptTimeEvent.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIActivityGraph_States_IBranch.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIActivityGraph_States_IBranch.gif
new file mode 100755
index 0000000..dd660df
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIActivityGraph_States_IBranch.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIActivityGraph_States_ICallOperation.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIActivityGraph_States_ICallOperation.gif
new file mode 100755
index 0000000..0632391
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIActivityGraph_States_ICallOperation.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIActivityGraph_States_IConnector.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIActivityGraph_States_IConnector.gif
new file mode 100755
index 0000000..532e1b6
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIActivityGraph_States_IConnector.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIActivityGraph_States_IFork.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIActivityGraph_States_IFork.gif
new file mode 100755
index 0000000..888587b
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIActivityGraph_States_IFork.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIActivityGraph_States_IHistoryConnector.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIActivityGraph_States_IHistoryConnector.gif
new file mode 100755
index 0000000..c721189
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIActivityGraph_States_IHistoryConnector.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIActivityGraph_States_IObjectNode.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIActivityGraph_States_IObjectNode.gif
new file mode 100755
index 0000000..c617702
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIActivityGraph_States_IObjectNode.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIActivityGraph_States_IPin.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIActivityGraph_States_IPin.gif
new file mode 100755
index 0000000..5ae8833
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIActivityGraph_States_IPin.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIActivityGraph_States_IReferenceActivity.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIActivityGraph_States_IReferenceActivity.gif
new file mode 100755
index 0000000..c38004e
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIActivityGraph_States_IReferenceActivity.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIActivityGraph_States_IState.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIActivityGraph_States_IState.gif
new file mode 100755
index 0000000..de9650f
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIActivityGraph_States_IState.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIActivityGraph_States_ITimeEvent.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIActivityGraph_States_ITimeEvent.gif
new file mode 100755
index 0000000..6b2c3eb
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIActivityGraph_States_ITimeEvent.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIActivityGraph_Stereotypes_IActor.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIActivityGraph_Stereotypes_IActor.gif
new file mode 100755
index 0000000..e4486f0
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIActivityGraph_Stereotypes_IActor.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIActivityGraph_Stereotypes_IAssociationClass.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIActivityGraph_Stereotypes_IAssociationClass.gif
new file mode 100755
index 0000000..532e1b6
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIActivityGraph_Stereotypes_IAssociationClass.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIActivityGraph_Stereotypes_IClass.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIActivityGraph_Stereotypes_IClass.gif
new file mode 100755
index 0000000..d6ef262
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIActivityGraph_Stereotypes_IClass.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIActivityGraph_Stereotypes_IClassifier.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIActivityGraph_Stereotypes_IClassifier.gif
new file mode 100755
index 0000000..286bf8d
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIActivityGraph_Stereotypes_IClassifier.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIActivityGraph_Stereotypes_IEvent.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIActivityGraph_Stereotypes_IEvent.gif
new file mode 100755
index 0000000..83c60f9
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIActivityGraph_Stereotypes_IEvent.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIActivityGraph_Stereotypes_IEventReception.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIActivityGraph_Stereotypes_IEventReception.gif
new file mode 100755
index 0000000..b5cf7e3
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIActivityGraph_Stereotypes_IEventReception.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIActivityGraph_Stereotypes_IFlowItem.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIActivityGraph_Stereotypes_IFlowItem.gif
new file mode 100755
index 0000000..48604a2
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIActivityGraph_Stereotypes_IFlowItem.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIActivityGraph_Stereotypes_IInterfaceItem.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIActivityGraph_Stereotypes_IInterfaceItem.gif
new file mode 100755
index 0000000..10bd931
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIActivityGraph_Stereotypes_IInterfaceItem.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIActivityGraph_Stereotypes_INode.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIActivityGraph_Stereotypes_INode.gif
new file mode 100755
index 0000000..a5eddfe
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIActivityGraph_Stereotypes_INode.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIActivityGraph_Stereotypes_IOperation.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIActivityGraph_Stereotypes_IOperation.gif
new file mode 100755
index 0000000..3ea4b78
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIActivityGraph_Stereotypes_IOperation.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIActivityGraph_Stereotypes_IStateChart.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIActivityGraph_Stereotypes_IStateChart.gif
new file mode 100755
index 0000000..5016d02
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIActivityGraph_Stereotypes_IStateChart.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIActivityGraph_Stereotypes_IStereotype.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIActivityGraph_Stereotypes_IStereotype.gif
new file mode 100755
index 0000000..d09eef9
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIActivityGraph_Stereotypes_IStereotype.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIActivityGraph_Stereotypes_IType.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIActivityGraph_Stereotypes_IType.gif
new file mode 100755
index 0000000..2d14ab0
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIActivityGraph_Stereotypes_IType.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIActivityGraph_Stereotypes_IUseCase.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIActivityGraph_Stereotypes_IUseCase.gif
new file mode 100755
index 0000000..888587b
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIActivityGraph_Stereotypes_IUseCase.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIActivityGraph_Swimlanes_ISwimlane.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIActivityGraph_Swimlanes_ISwimlane.gif
new file mode 100755
index 0000000..b5cf7e3
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIActivityGraph_Swimlanes_ISwimlane.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIActivityGraph_Tags_ITag.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIActivityGraph_Tags_ITag.gif
new file mode 100755
index 0000000..7938130
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIActivityGraph_Tags_ITag.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIActivityGraph_Views_IActivityDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIActivityGraph_Views_IActivityDiagram.gif
new file mode 100755
index 0000000..35f2a35
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIActivityGraph_Views_IActivityDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIActivityGraph_description_IDescription.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIActivityGraph_description_IDescription.gif
new file mode 100755
index 0000000..e30f5c2
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIActivityGraph_description_IDescription.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIActivityGraph_properties_IPropertyContainer.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIActivityGraph_properties_IPropertyContainer.gif
new file mode 100755
index 0000000..48f6be5
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIActivityGraph_properties_IPropertyContainer.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIActor_Annotations_IRequirement.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIActor_Annotations_IRequirement.gif
new file mode 100755
index 0000000..755e4ca
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIActor_Annotations_IRequirement.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIActor_Associations_IAssociationEnd.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIActor_Associations_IAssociationEnd.gif
new file mode 100755
index 0000000..08d0c49
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIActor_Associations_IAssociationEnd.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIActor_Attrs_IAttribute.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIActor_Attrs_IAttribute.gif
new file mode 100755
index 0000000..1621735
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIActor_Attrs_IAttribute.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIActor_ComponentFiles_IFile.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIActor_ComponentFiles_IFile.gif
new file mode 100755
index 0000000..618a818
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIActor_ComponentFiles_IFile.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIActor_Dependencies_IDependency.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIActor_Dependencies_IDependency.gif
new file mode 100755
index 0000000..d193bf3
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIActor_Dependencies_IDependency.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIActor_Dependencies_IHyperLink.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIActor_Dependencies_IHyperLink.gif
new file mode 100755
index 0000000..37dad61
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIActor_Dependencies_IHyperLink.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIActor_HyperLinks_IMHyperLink.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIActor_HyperLinks_IMHyperLink.gif
new file mode 100755
index 0000000..08d0c49
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIActor_HyperLinks_IMHyperLink.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIActor_Inheritances_IGeneralization.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIActor_Inheritances_IGeneralization.gif
new file mode 100755
index 0000000..abd4883
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIActor_Inheritances_IGeneralization.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIActor_Operations_IConstructor.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIActor_Operations_IConstructor.gif
new file mode 100755
index 0000000..7a99bf2
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIActor_Operations_IConstructor.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIActor_Operations_IDestructor.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIActor_Operations_IDestructor.gif
new file mode 100755
index 0000000..fe70894
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIActor_Operations_IDestructor.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIActor_Operations_IPrimitiveOperation.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIActor_Operations_IPrimitiveOperation.gif
new file mode 100755
index 0000000..bbf242d
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIActor_Operations_IPrimitiveOperation.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIActor_Operations_IReception.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIActor_Operations_IReception.gif
new file mode 100755
index 0000000..52d5d68
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIActor_Operations_IReception.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIActor_Operations_ITriggered.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIActor_Operations_ITriggered.gif
new file mode 100755
index 0000000..b5c74a1
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIActor_Operations_ITriggered.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIActor_Ports_IPort.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIActor_Ports_IPort.gif
new file mode 100755
index 0000000..0cc4a4a
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIActor_Ports_IPort.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIActor_StateCharts_IStateChart.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIActor_StateCharts_IStateChart.gif
new file mode 100755
index 0000000..37dad61
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIActor_StateCharts_IStateChart.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIActor_description_IDescription.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIActor_description_IDescription.gif
new file mode 100755
index 0000000..2249611
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIActor_description_IDescription.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIActor_properties_IPropertyContainer.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIActor_properties_IPropertyContainer.gif
new file mode 100755
index 0000000..5aeef18
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIActor_properties_IPropertyContainer.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIAnnotation_Tags_ITag.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIAnnotation_Tags_ITag.gif
new file mode 100755
index 0000000..23b4848
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIAnnotation_Tags_ITag.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIAnnotation_description_IDescription.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIAnnotation_description_IDescription.gif
new file mode 100755
index 0000000..c1f6bdf
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIAnnotation_description_IDescription.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIArgument_ValueSpecifications_ILiteralSpecification.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIArgument_ValueSpecifications_ILiteralSpecification.gif
new file mode 100755
index 0000000..4b9f986
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIArgument_ValueSpecifications_ILiteralSpecification.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIArgument_description_IDescription.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIArgument_description_IDescription.gif
new file mode 100755
index 0000000..d53ad79
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIArgument_description_IDescription.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIArgument_properties_IPropertyContainer.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIArgument_properties_IPropertyContainer.gif
new file mode 100755
index 0000000..d022471
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIArgument_properties_IPropertyContainer.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIAssociationEnd_Qualifiers_IAttribute.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIAssociationEnd_Qualifiers_IAttribute.gif
new file mode 100755
index 0000000..15cbbad
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIAssociationEnd_Qualifiers_IAttribute.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIAssociationEnd_Stereotypes_IStereotype.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIAssociationEnd_Stereotypes_IStereotype.gif
new file mode 100755
index 0000000..92e5c49
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIAssociationEnd_Stereotypes_IStereotype.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIAttribute_Annotations_IComment.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIAttribute_Annotations_IComment.gif
new file mode 100755
index 0000000..3cdecb1
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIAttribute_Annotations_IComment.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIAttribute_Dependencies_IDependency.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIAttribute_Dependencies_IDependency.gif
new file mode 100755
index 0000000..1b76a8a
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIAttribute_Dependencies_IDependency.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIAttribute_Dependencies_IHyperLink.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIAttribute_Dependencies_IHyperLink.gif
new file mode 100755
index 0000000..8e6a767
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIAttribute_Dependencies_IHyperLink.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIAttribute_Stereotypes_IActor.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIAttribute_Stereotypes_IActor.gif
new file mode 100755
index 0000000..12de541
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIAttribute_Stereotypes_IActor.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIAttribute_Stereotypes_IAnnotation.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIAttribute_Stereotypes_IAnnotation.gif
new file mode 100755
index 0000000..278cd8a
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIAttribute_Stereotypes_IAnnotation.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIAttribute_Stereotypes_IArgument.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIAttribute_Stereotypes_IArgument.gif
new file mode 100755
index 0000000..a258504
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIAttribute_Stereotypes_IArgument.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIAttribute_Stereotypes_IAssociationClass.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIAttribute_Stereotypes_IAssociationClass.gif
new file mode 100755
index 0000000..3bc5937
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIAttribute_Stereotypes_IAssociationClass.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIAttribute_Stereotypes_IAttribute.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIAttribute_Stereotypes_IAttribute.gif
new file mode 100755
index 0000000..f809a28
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIAttribute_Stereotypes_IAttribute.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIAttribute_Stereotypes_IClass.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIAttribute_Stereotypes_IClass.gif
new file mode 100755
index 0000000..561bc08
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIAttribute_Stereotypes_IClass.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIAttribute_Stereotypes_IClassifier.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIAttribute_Stereotypes_IClassifier.gif
new file mode 100755
index 0000000..c44b7cf
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIAttribute_Stereotypes_IClassifier.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIAttribute_Stereotypes_ICollaborationDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIAttribute_Stereotypes_ICollaborationDiagram.gif
new file mode 100755
index 0000000..619a36c
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIAttribute_Stereotypes_ICollaborationDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIAttribute_Stereotypes_IComment.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIAttribute_Stereotypes_IComment.gif
new file mode 100755
index 0000000..3cdecb1
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIAttribute_Stereotypes_IComment.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIAttribute_Stereotypes_IComponent.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIAttribute_Stereotypes_IComponent.gif
new file mode 100755
index 0000000..efc256e
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIAttribute_Stereotypes_IComponent.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIAttribute_Stereotypes_IComponentDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIAttribute_Stereotypes_IComponentDiagram.gif
new file mode 100755
index 0000000..a258504
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIAttribute_Stereotypes_IComponentDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIAttribute_Stereotypes_IConstraint.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIAttribute_Stereotypes_IConstraint.gif
new file mode 100755
index 0000000..68ad5bd
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIAttribute_Stereotypes_IConstraint.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIAttribute_Stereotypes_IControlledFile.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIAttribute_Stereotypes_IControlledFile.gif
new file mode 100755
index 0000000..ed2e04b
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIAttribute_Stereotypes_IControlledFile.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIAttribute_Stereotypes_IDeploymentDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIAttribute_Stereotypes_IDeploymentDiagram.gif
new file mode 100755
index 0000000..52c578c
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIAttribute_Stereotypes_IDeploymentDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIAttribute_Stereotypes_IDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIAttribute_Stereotypes_IDiagram.gif
new file mode 100755
index 0000000..de48ec6
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIAttribute_Stereotypes_IDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIAttribute_Stereotypes_IEvent.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIAttribute_Stereotypes_IEvent.gif
new file mode 100755
index 0000000..efc256e
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIAttribute_Stereotypes_IEvent.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIAttribute_Stereotypes_IEventReception.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIAttribute_Stereotypes_IEventReception.gif
new file mode 100755
index 0000000..981b787
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIAttribute_Stereotypes_IEventReception.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIAttribute_Stereotypes_IFile.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIAttribute_Stereotypes_IFile.gif
new file mode 100755
index 0000000..881c6d7
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIAttribute_Stereotypes_IFile.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIAttribute_Stereotypes_IFlowItem.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIAttribute_Stereotypes_IFlowItem.gif
new file mode 100755
index 0000000..4f26f1b
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIAttribute_Stereotypes_IFlowItem.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIAttribute_Stereotypes_IInstance.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIAttribute_Stereotypes_IInstance.gif
new file mode 100755
index 0000000..c3dd920
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIAttribute_Stereotypes_IInstance.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIAttribute_Stereotypes_IInterfaceItem.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIAttribute_Stereotypes_IInterfaceItem.gif
new file mode 100755
index 0000000..de48ec6
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIAttribute_Stereotypes_IInterfaceItem.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIAttribute_Stereotypes_ILink.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIAttribute_Stereotypes_ILink.gif
new file mode 100755
index 0000000..55d7be5
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIAttribute_Stereotypes_ILink.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIAttribute_Stereotypes_IMatrixLayout.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIAttribute_Stereotypes_IMatrixLayout.gif
new file mode 100755
index 0000000..96c4ffd
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIAttribute_Stereotypes_IMatrixLayout.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIAttribute_Stereotypes_IMatrixView.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIAttribute_Stereotypes_IMatrixView.gif
new file mode 100755
index 0000000..efc256e
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIAttribute_Stereotypes_IMatrixView.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIAttribute_Stereotypes_IModule.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIAttribute_Stereotypes_IModule.gif
new file mode 100755
index 0000000..c6407cd
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIAttribute_Stereotypes_IModule.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIAttribute_Stereotypes_INode.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIAttribute_Stereotypes_INode.gif
new file mode 100755
index 0000000..7fd40f1
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIAttribute_Stereotypes_INode.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIAttribute_Stereotypes_IObjectModelDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIAttribute_Stereotypes_IObjectModelDiagram.gif
new file mode 100755
index 0000000..c19972e
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIAttribute_Stereotypes_IObjectModelDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIAttribute_Stereotypes_IOperation.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIAttribute_Stereotypes_IOperation.gif
new file mode 100755
index 0000000..52c578c
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIAttribute_Stereotypes_IOperation.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIAttribute_Stereotypes_IPackage.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIAttribute_Stereotypes_IPackage.gif
new file mode 100755
index 0000000..5206c2e
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIAttribute_Stereotypes_IPackage.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIAttribute_Stereotypes_IPanelDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIAttribute_Stereotypes_IPanelDiagram.gif
new file mode 100755
index 0000000..881c6d7
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIAttribute_Stereotypes_IPanelDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIAttribute_Stereotypes_IPort.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIAttribute_Stereotypes_IPort.gif
new file mode 100755
index 0000000..efc256e
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIAttribute_Stereotypes_IPort.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIAttribute_Stereotypes_IProfile.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIAttribute_Stereotypes_IProfile.gif
new file mode 100755
index 0000000..68ad5bd
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIAttribute_Stereotypes_IProfile.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIAttribute_Stereotypes_IProject.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIAttribute_Stereotypes_IProject.gif
new file mode 100755
index 0000000..96cdc6d
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIAttribute_Stereotypes_IProject.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIAttribute_Stereotypes_IRelation.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIAttribute_Stereotypes_IRelation.gif
new file mode 100755
index 0000000..2e9fe7e
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIAttribute_Stereotypes_IRelation.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIAttribute_Stereotypes_IRequirement.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIAttribute_Stereotypes_IRequirement.gif
new file mode 100755
index 0000000..73b29f9
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIAttribute_Stereotypes_IRequirement.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIAttribute_Stereotypes_ISequenceDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIAttribute_Stereotypes_ISequenceDiagram.gif
new file mode 100755
index 0000000..5e6c9c1
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIAttribute_Stereotypes_ISequenceDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIAttribute_Stereotypes_IStateChart.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIAttribute_Stereotypes_IStateChart.gif
new file mode 100755
index 0000000..8e6a767
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIAttribute_Stereotypes_IStateChart.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIAttribute_Stereotypes_IStateChartDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIAttribute_Stereotypes_IStateChartDiagram.gif
new file mode 100755
index 0000000..5e6c9c1
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIAttribute_Stereotypes_IStateChartDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIAttribute_Stereotypes_IStereotype.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIAttribute_Stereotypes_IStereotype.gif
new file mode 100755
index 0000000..73b29f9
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIAttribute_Stereotypes_IStereotype.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIAttribute_Stereotypes_IStructureDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIAttribute_Stereotypes_IStructureDiagram.gif
new file mode 100755
index 0000000..278cd8a
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIAttribute_Stereotypes_IStructureDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIAttribute_Stereotypes_ISysMLPort.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIAttribute_Stereotypes_ISysMLPort.gif
new file mode 100755
index 0000000..c6407cd
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIAttribute_Stereotypes_ISysMLPort.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIAttribute_Stereotypes_ITableLayout.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIAttribute_Stereotypes_ITableLayout.gif
new file mode 100755
index 0000000..de48ec6
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIAttribute_Stereotypes_ITableLayout.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIAttribute_Stereotypes_ITableView.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIAttribute_Stereotypes_ITableView.gif
new file mode 100755
index 0000000..5e6c9c1
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIAttribute_Stereotypes_ITableView.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIAttribute_Stereotypes_ITag.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIAttribute_Stereotypes_ITag.gif
new file mode 100755
index 0000000..27a63b5
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIAttribute_Stereotypes_ITag.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIAttribute_Stereotypes_ITemplateParameter.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIAttribute_Stereotypes_ITemplateParameter.gif
new file mode 100755
index 0000000..c19972e
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIAttribute_Stereotypes_ITemplateParameter.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIAttribute_Stereotypes_IType.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIAttribute_Stereotypes_IType.gif
new file mode 100755
index 0000000..22660ab
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIAttribute_Stereotypes_IType.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIAttribute_Stereotypes_IUnit.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIAttribute_Stereotypes_IUnit.gif
new file mode 100755
index 0000000..3461b0a
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIAttribute_Stereotypes_IUnit.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIAttribute_Stereotypes_IUseCase.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIAttribute_Stereotypes_IUseCase.gif
new file mode 100755
index 0000000..a258504
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIAttribute_Stereotypes_IUseCase.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIAttribute_Stereotypes_IUseCaseDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIAttribute_Stereotypes_IUseCaseDiagram.gif
new file mode 100755
index 0000000..3cdecb1
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIAttribute_Stereotypes_IUseCaseDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIAttribute_Stereotypes_IVariable.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIAttribute_Stereotypes_IVariable.gif
new file mode 100755
index 0000000..5e6c9c1
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIAttribute_Stereotypes_IVariable.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIAttribute_Tags_ITag.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIAttribute_Tags_ITag.gif
new file mode 100755
index 0000000..27a63b5
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIAttribute_Tags_ITag.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIAttribute_ValueSpecifications_ILiteralSpecification.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIAttribute_ValueSpecifications_ILiteralSpecification.gif
new file mode 100755
index 0000000..2b447c2
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIAttribute_ValueSpecifications_ILiteralSpecification.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIAttribute_description_IDescription.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIAttribute_description_IDescription.gif
new file mode 100755
index 0000000..3cdecb1
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIAttribute_description_IDescription.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIAttribute_properties_IPropertyContainer.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIAttribute_properties_IPropertyContainer.gif
new file mode 100755
index 0000000..a3d7b11
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIAttribute_properties_IPropertyContainer.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIBranch_Stereotypes_IStereotype.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIBranch_Stereotypes_IStereotype.gif
new file mode 100755
index 0000000..ef6d3dd
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIBranch_Stereotypes_IStereotype.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Annotations_IActor.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Annotations_IActor.gif
new file mode 100755
index 0000000..ac6a8a2
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Annotations_IActor.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Annotations_IAnnotation.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Annotations_IAnnotation.gif
new file mode 100755
index 0000000..df7afd7
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Annotations_IAnnotation.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Annotations_IArgument.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Annotations_IArgument.gif
new file mode 100755
index 0000000..d21c463
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Annotations_IArgument.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Annotations_IAssociationClass.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Annotations_IAssociationClass.gif
new file mode 100755
index 0000000..3ca8bfa
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Annotations_IAssociationClass.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Annotations_IAttribute.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Annotations_IAttribute.gif
new file mode 100755
index 0000000..94b1be2
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Annotations_IAttribute.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Annotations_IClass.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Annotations_IClass.gif
new file mode 100755
index 0000000..a47b32b
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Annotations_IClass.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Annotations_IClassifier.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Annotations_IClassifier.gif
new file mode 100755
index 0000000..63e7a6f
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Annotations_IClassifier.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Annotations_ICollaborationDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Annotations_ICollaborationDiagram.gif
new file mode 100755
index 0000000..e6b48d9
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Annotations_ICollaborationDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Annotations_IComment.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Annotations_IComment.gif
new file mode 100755
index 0000000..b42028e
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Annotations_IComment.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Annotations_IComponent.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Annotations_IComponent.gif
new file mode 100755
index 0000000..a03a30e
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Annotations_IComponent.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Annotations_IComponentDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Annotations_IComponentDiagram.gif
new file mode 100755
index 0000000..d21c463
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Annotations_IComponentDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Annotations_IConstraint.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Annotations_IConstraint.gif
new file mode 100755
index 0000000..dadbe43
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Annotations_IConstraint.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Annotations_IControlledFile.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Annotations_IControlledFile.gif
new file mode 100755
index 0000000..cfb2d6e
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Annotations_IControlledFile.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Annotations_IDeploymentDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Annotations_IDeploymentDiagram.gif
new file mode 100755
index 0000000..ba67912
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Annotations_IDeploymentDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Annotations_IDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Annotations_IDiagram.gif
new file mode 100755
index 0000000..9ab92c1
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Annotations_IDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Annotations_IEvent.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Annotations_IEvent.gif
new file mode 100755
index 0000000..a03a30e
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Annotations_IEvent.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Annotations_IEventReception.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Annotations_IEventReception.gif
new file mode 100755
index 0000000..3473a1f
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Annotations_IEventReception.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Annotations_IFile.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Annotations_IFile.gif
new file mode 100755
index 0000000..7e2fd2e
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Annotations_IFile.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Annotations_IFlowItem.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Annotations_IFlowItem.gif
new file mode 100755
index 0000000..70597ff
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Annotations_IFlowItem.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Annotations_IInstance.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Annotations_IInstance.gif
new file mode 100755
index 0000000..12536cb
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Annotations_IInstance.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Annotations_IInterfaceItem.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Annotations_IInterfaceItem.gif
new file mode 100755
index 0000000..9ab92c1
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Annotations_IInterfaceItem.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Annotations_ILink.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Annotations_ILink.gif
new file mode 100755
index 0000000..0062ded
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Annotations_ILink.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Annotations_IMatrixLayout.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Annotations_IMatrixLayout.gif
new file mode 100755
index 0000000..bb229d1
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Annotations_IMatrixLayout.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Annotations_IMatrixView.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Annotations_IMatrixView.gif
new file mode 100755
index 0000000..a03a30e
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Annotations_IMatrixView.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Annotations_IModule.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Annotations_IModule.gif
new file mode 100755
index 0000000..e9b333d
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Annotations_IModule.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Annotations_INode.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Annotations_INode.gif
new file mode 100755
index 0000000..c3f3ffa
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Annotations_INode.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Annotations_IObjectModelDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Annotations_IObjectModelDiagram.gif
new file mode 100755
index 0000000..0b0adae
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Annotations_IObjectModelDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Annotations_IOperation.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Annotations_IOperation.gif
new file mode 100755
index 0000000..ba67912
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Annotations_IOperation.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Annotations_IPackage.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Annotations_IPackage.gif
new file mode 100755
index 0000000..5a20caa
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Annotations_IPackage.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Annotations_IPanelDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Annotations_IPanelDiagram.gif
new file mode 100755
index 0000000..7e2fd2e
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Annotations_IPanelDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Annotations_IPort.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Annotations_IPort.gif
new file mode 100755
index 0000000..a03a30e
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Annotations_IPort.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Annotations_IProfile.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Annotations_IProfile.gif
new file mode 100755
index 0000000..dadbe43
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Annotations_IProfile.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Annotations_IProject.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Annotations_IProject.gif
new file mode 100755
index 0000000..d19385d
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Annotations_IProject.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Annotations_IRelation.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Annotations_IRelation.gif
new file mode 100755
index 0000000..16dbb0e
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Annotations_IRelation.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Annotations_IRequirement.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Annotations_IRequirement.gif
new file mode 100755
index 0000000..f00d453
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Annotations_IRequirement.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Annotations_ISequenceDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Annotations_ISequenceDiagram.gif
new file mode 100755
index 0000000..a0ba127
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Annotations_ISequenceDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Annotations_IStateChart.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Annotations_IStateChart.gif
new file mode 100755
index 0000000..d66ff4a
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Annotations_IStateChart.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Annotations_IStateChartDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Annotations_IStateChartDiagram.gif
new file mode 100755
index 0000000..a0ba127
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Annotations_IStateChartDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Annotations_IStereotype.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Annotations_IStereotype.gif
new file mode 100755
index 0000000..f00d453
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Annotations_IStereotype.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Annotations_IStructureDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Annotations_IStructureDiagram.gif
new file mode 100755
index 0000000..df7afd7
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Annotations_IStructureDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Annotations_ISysMLPort.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Annotations_ISysMLPort.gif
new file mode 100755
index 0000000..e9b333d
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Annotations_ISysMLPort.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Annotations_ITableLayout.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Annotations_ITableLayout.gif
new file mode 100755
index 0000000..9ab92c1
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Annotations_ITableLayout.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Annotations_ITableView.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Annotations_ITableView.gif
new file mode 100755
index 0000000..a0ba127
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Annotations_ITableView.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Annotations_ITag.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Annotations_ITag.gif
new file mode 100755
index 0000000..5e751d1
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Annotations_ITag.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Annotations_ITemplateParameter.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Annotations_ITemplateParameter.gif
new file mode 100755
index 0000000..0b0adae
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Annotations_ITemplateParameter.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Annotations_IType.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Annotations_IType.gif
new file mode 100755
index 0000000..43a8eef
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Annotations_IType.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Annotations_IUnit.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Annotations_IUnit.gif
new file mode 100755
index 0000000..83d2501
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Annotations_IUnit.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Annotations_IUseCase.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Annotations_IUseCase.gif
new file mode 100755
index 0000000..d21c463
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Annotations_IUseCase.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Annotations_IUseCaseDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Annotations_IUseCaseDiagram.gif
new file mode 100755
index 0000000..b42028e
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Annotations_IUseCaseDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Annotations_IVariable.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Annotations_IVariable.gif
new file mode 100755
index 0000000..a0ba127
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Annotations_IVariable.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Associations_IAssociationEnd.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Associations_IAssociationEnd.gif
new file mode 100755
index 0000000..f69592c
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Associations_IAssociationEnd.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Associations_IBlock.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Associations_IBlock.gif
new file mode 100755
index 0000000..0062ded
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Associations_IBlock.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Associations_IModule.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Associations_IModule.gif
new file mode 100755
index 0000000..e9b333d
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Associations_IModule.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Associations_IPart.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Associations_IPart.gif
new file mode 100755
index 0000000..f7a9c9f
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Associations_IPart.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Attrs_IActor.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Attrs_IActor.gif
new file mode 100755
index 0000000..ac6a8a2
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Attrs_IActor.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Attrs_IAnnotation.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Attrs_IAnnotation.gif
new file mode 100755
index 0000000..df7afd7
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Attrs_IAnnotation.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Attrs_IArgument.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Attrs_IArgument.gif
new file mode 100755
index 0000000..d21c463
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Attrs_IArgument.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Attrs_IAssociationClass.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Attrs_IAssociationClass.gif
new file mode 100755
index 0000000..3ca8bfa
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Attrs_IAssociationClass.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Attrs_IAttribute.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Attrs_IAttribute.gif
new file mode 100755
index 0000000..94b1be2
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Attrs_IAttribute.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Attrs_IClass.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Attrs_IClass.gif
new file mode 100755
index 0000000..a47b32b
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Attrs_IClass.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Attrs_IClassifier.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Attrs_IClassifier.gif
new file mode 100755
index 0000000..63e7a6f
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Attrs_IClassifier.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Attrs_ICollaborationDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Attrs_ICollaborationDiagram.gif
new file mode 100755
index 0000000..e6b48d9
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Attrs_ICollaborationDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Attrs_IComment.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Attrs_IComment.gif
new file mode 100755
index 0000000..b42028e
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Attrs_IComment.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Attrs_IComponent.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Attrs_IComponent.gif
new file mode 100755
index 0000000..a03a30e
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Attrs_IComponent.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Attrs_IComponentDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Attrs_IComponentDiagram.gif
new file mode 100755
index 0000000..d21c463
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Attrs_IComponentDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Attrs_IConstraint.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Attrs_IConstraint.gif
new file mode 100755
index 0000000..dadbe43
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Attrs_IConstraint.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Attrs_IControlledFile.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Attrs_IControlledFile.gif
new file mode 100755
index 0000000..cfb2d6e
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Attrs_IControlledFile.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Attrs_IDeploymentDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Attrs_IDeploymentDiagram.gif
new file mode 100755
index 0000000..ba67912
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Attrs_IDeploymentDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Attrs_IDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Attrs_IDiagram.gif
new file mode 100755
index 0000000..9ab92c1
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Attrs_IDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Attrs_IEvent.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Attrs_IEvent.gif
new file mode 100755
index 0000000..a03a30e
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Attrs_IEvent.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Attrs_IEventReception.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Attrs_IEventReception.gif
new file mode 100755
index 0000000..3473a1f
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Attrs_IEventReception.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Attrs_IFile.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Attrs_IFile.gif
new file mode 100755
index 0000000..7e2fd2e
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Attrs_IFile.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Attrs_IFlowItem.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Attrs_IFlowItem.gif
new file mode 100755
index 0000000..70597ff
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Attrs_IFlowItem.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Attrs_IInstance.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Attrs_IInstance.gif
new file mode 100755
index 0000000..12536cb
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Attrs_IInstance.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Attrs_IInterfaceItem.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Attrs_IInterfaceItem.gif
new file mode 100755
index 0000000..9ab92c1
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Attrs_IInterfaceItem.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Attrs_ILink.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Attrs_ILink.gif
new file mode 100755
index 0000000..0062ded
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Attrs_ILink.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Attrs_IMatrixLayout.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Attrs_IMatrixLayout.gif
new file mode 100755
index 0000000..bb229d1
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Attrs_IMatrixLayout.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Attrs_IMatrixView.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Attrs_IMatrixView.gif
new file mode 100755
index 0000000..a03a30e
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Attrs_IMatrixView.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Attrs_IModule.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Attrs_IModule.gif
new file mode 100755
index 0000000..e9b333d
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Attrs_IModule.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Attrs_INode.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Attrs_INode.gif
new file mode 100755
index 0000000..c3f3ffa
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Attrs_INode.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Attrs_IObjectModelDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Attrs_IObjectModelDiagram.gif
new file mode 100755
index 0000000..0b0adae
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Attrs_IObjectModelDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Attrs_IOperation.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Attrs_IOperation.gif
new file mode 100755
index 0000000..ba67912
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Attrs_IOperation.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Attrs_IPackage.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Attrs_IPackage.gif
new file mode 100755
index 0000000..5a20caa
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Attrs_IPackage.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Attrs_IPanelDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Attrs_IPanelDiagram.gif
new file mode 100755
index 0000000..7e2fd2e
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Attrs_IPanelDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Attrs_IPort.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Attrs_IPort.gif
new file mode 100755
index 0000000..a03a30e
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Attrs_IPort.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Attrs_IProfile.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Attrs_IProfile.gif
new file mode 100755
index 0000000..dadbe43
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Attrs_IProfile.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Attrs_IProject.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Attrs_IProject.gif
new file mode 100755
index 0000000..d19385d
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Attrs_IProject.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Attrs_IRelation.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Attrs_IRelation.gif
new file mode 100755
index 0000000..16dbb0e
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Attrs_IRelation.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Attrs_IRequirement.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Attrs_IRequirement.gif
new file mode 100755
index 0000000..f00d453
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Attrs_IRequirement.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Attrs_ISequenceDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Attrs_ISequenceDiagram.gif
new file mode 100755
index 0000000..a0ba127
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Attrs_ISequenceDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Attrs_IStateChart.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Attrs_IStateChart.gif
new file mode 100755
index 0000000..d66ff4a
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Attrs_IStateChart.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Attrs_IStateChartDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Attrs_IStateChartDiagram.gif
new file mode 100755
index 0000000..a0ba127
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Attrs_IStateChartDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Attrs_IStereotype.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Attrs_IStereotype.gif
new file mode 100755
index 0000000..f00d453
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Attrs_IStereotype.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Attrs_IStructureDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Attrs_IStructureDiagram.gif
new file mode 100755
index 0000000..df7afd7
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Attrs_IStructureDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Attrs_ISysMLPort.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Attrs_ISysMLPort.gif
new file mode 100755
index 0000000..e9b333d
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Attrs_ISysMLPort.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Attrs_ITableLayout.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Attrs_ITableLayout.gif
new file mode 100755
index 0000000..9ab92c1
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Attrs_ITableLayout.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Attrs_ITableView.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Attrs_ITableView.gif
new file mode 100755
index 0000000..a0ba127
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Attrs_ITableView.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Attrs_ITag.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Attrs_ITag.gif
new file mode 100755
index 0000000..5e751d1
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Attrs_ITag.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Attrs_ITemplateParameter.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Attrs_ITemplateParameter.gif
new file mode 100755
index 0000000..0b0adae
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Attrs_ITemplateParameter.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Attrs_IType.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Attrs_IType.gif
new file mode 100755
index 0000000..43a8eef
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Attrs_IType.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Attrs_IUnit.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Attrs_IUnit.gif
new file mode 100755
index 0000000..83d2501
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Attrs_IUnit.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Attrs_IUseCase.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Attrs_IUseCase.gif
new file mode 100755
index 0000000..d21c463
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Attrs_IUseCase.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Attrs_IUseCaseDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Attrs_IUseCaseDiagram.gif
new file mode 100755
index 0000000..b42028e
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Attrs_IUseCaseDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Attrs_IVariable.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Attrs_IVariable.gif
new file mode 100755
index 0000000..a0ba127
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Attrs_IVariable.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_ComponentFiles_IFile.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_ComponentFiles_IFile.gif
new file mode 100755
index 0000000..7e2fd2e
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_ComponentFiles_IFile.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Components_ILinkInstance.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Components_ILinkInstance.gif
new file mode 100755
index 0000000..9ab92c1
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Components_ILinkInstance.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Declaratives_IAssociationClass.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Declaratives_IAssociationClass.gif
new file mode 100755
index 0000000..3ca8bfa
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Declaratives_IAssociationClass.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Declaratives_IClass.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Declaratives_IClass.gif
new file mode 100755
index 0000000..a47b32b
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Declaratives_IClass.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Declaratives_ICollaborationDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Declaratives_ICollaborationDiagram.gif
new file mode 100755
index 0000000..e6b48d9
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Declaratives_ICollaborationDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Declaratives_IComponent.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Declaratives_IComponent.gif
new file mode 100755
index 0000000..a03a30e
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Declaratives_IComponent.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Declaratives_IComponentDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Declaratives_IComponentDiagram.gif
new file mode 100755
index 0000000..d21c463
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Declaratives_IComponentDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Declaratives_IDeploymentDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Declaratives_IDeploymentDiagram.gif
new file mode 100755
index 0000000..ba67912
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Declaratives_IDeploymentDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Declaratives_IDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Declaratives_IDiagram.gif
new file mode 100755
index 0000000..9ab92c1
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Declaratives_IDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Declaratives_IInformationFlow.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Declaratives_IInformationFlow.gif
new file mode 100755
index 0000000..a03a30e
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Declaratives_IInformationFlow.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Declaratives_IInformationItem.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Declaratives_IInformationItem.gif
new file mode 100755
index 0000000..ac6a8a2
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Declaratives_IInformationItem.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Declaratives_IMSC.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Declaratives_IMSC.gif
new file mode 100755
index 0000000..dadbe43
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Declaratives_IMSC.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Declaratives_IObjectModelDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Declaratives_IObjectModelDiagram.gif
new file mode 100755
index 0000000..0b0adae
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Declaratives_IObjectModelDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Declaratives_IPanelDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Declaratives_IPanelDiagram.gif
new file mode 100755
index 0000000..7e2fd2e
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Declaratives_IPanelDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Declaratives_ISequenceDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Declaratives_ISequenceDiagram.gif
new file mode 100755
index 0000000..a0ba127
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Declaratives_ISequenceDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Declaratives_IStateChart.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Declaratives_IStateChart.gif
new file mode 100755
index 0000000..d66ff4a
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Declaratives_IStateChart.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Declaratives_IStateChartDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Declaratives_IStateChartDiagram.gif
new file mode 100755
index 0000000..a0ba127
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Declaratives_IStateChartDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Declaratives_IStereotype.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Declaratives_IStereotype.gif
new file mode 100755
index 0000000..f00d453
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Declaratives_IStereotype.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Declaratives_IStructureDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Declaratives_IStructureDiagram.gif
new file mode 100755
index 0000000..df7afd7
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Declaratives_IStructureDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Declaratives_ISubsystem.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Declaratives_ISubsystem.gif
new file mode 100755
index 0000000..12536cb
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Declaratives_ISubsystem.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Declaratives_IType.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Declaratives_IType.gif
new file mode 100755
index 0000000..43a8eef
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Declaratives_IType.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Declaratives_IUCDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Declaratives_IUCDiagram.gif
new file mode 100755
index 0000000..9a7f5b8
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Declaratives_IUCDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Declaratives_IUseCaseDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Declaratives_IUseCaseDiagram.gif
new file mode 100755
index 0000000..b42028e
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Declaratives_IUseCaseDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Dependencies_IDependency.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Dependencies_IDependency.gif
new file mode 100755
index 0000000..06d2414
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Dependencies_IDependency.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Dependencies_IHyperLink.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Dependencies_IHyperLink.gif
new file mode 100755
index 0000000..d66ff4a
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Dependencies_IHyperLink.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_EventHandles_IEvent.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_EventHandles_IEvent.gif
new file mode 100755
index 0000000..a03a30e
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_EventHandles_IEvent.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_EventHandles_IEventReception.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_EventHandles_IEventReception.gif
new file mode 100755
index 0000000..3473a1f
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_EventHandles_IEventReception.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_EventHandles_IInterfaceItem.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_EventHandles_IInterfaceItem.gif
new file mode 100755
index 0000000..9ab92c1
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_EventHandles_IInterfaceItem.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_EventHandles_IOperation.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_EventHandles_IOperation.gif
new file mode 100755
index 0000000..ba67912
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_EventHandles_IOperation.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_HyperLinks_IMHyperLink.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_HyperLinks_IMHyperLink.gif
new file mode 100755
index 0000000..f69592c
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_HyperLinks_IMHyperLink.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Inheritances_IAcceptEventAction.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Inheritances_IAcceptEventAction.gif
new file mode 100755
index 0000000..dadbe43
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Inheritances_IAcceptEventAction.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Inheritances_IAcceptTimeEvent.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Inheritances_IAcceptTimeEvent.gif
new file mode 100755
index 0000000..a03a30e
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Inheritances_IAcceptTimeEvent.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Inheritances_IAction.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Inheritances_IAction.gif
new file mode 100755
index 0000000..4bf40a9
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Inheritances_IAction.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Inheritances_IActivityGraph.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Inheritances_IActivityGraph.gif
new file mode 100755
index 0000000..7e2fd2e
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Inheritances_IActivityGraph.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Inheritances_IActor.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Inheritances_IActor.gif
new file mode 100755
index 0000000..ac6a8a2
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Inheritances_IActor.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Inheritances_IAnnotation.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Inheritances_IAnnotation.gif
new file mode 100755
index 0000000..df7afd7
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Inheritances_IAnnotation.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Inheritances_IArgument.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Inheritances_IArgument.gif
new file mode 100755
index 0000000..d21c463
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Inheritances_IArgument.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Inheritances_IAssociationClass.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Inheritances_IAssociationClass.gif
new file mode 100755
index 0000000..3ca8bfa
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Inheritances_IAssociationClass.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Inheritances_IAssociationEnd.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Inheritances_IAssociationEnd.gif
new file mode 100755
index 0000000..f69592c
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Inheritances_IAssociationEnd.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Inheritances_IAssociationRole.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Inheritances_IAssociationRole.gif
new file mode 100755
index 0000000..6010ac9
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Inheritances_IAssociationRole.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Inheritances_IAttribute.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Inheritances_IAttribute.gif
new file mode 100755
index 0000000..94b1be2
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Inheritances_IAttribute.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Inheritances_ICallOperation.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Inheritances_ICallOperation.gif
new file mode 100755
index 0000000..ad7adc9
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Inheritances_ICallOperation.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Inheritances_IClass.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Inheritances_IClass.gif
new file mode 100755
index 0000000..a47b32b
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Inheritances_IClass.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Inheritances_IClassifier.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Inheritances_IClassifier.gif
new file mode 100755
index 0000000..63e7a6f
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Inheritances_IClassifier.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Inheritances_IClassifierRole.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Inheritances_IClassifierRole.gif
new file mode 100755
index 0000000..2243f6a
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Inheritances_IClassifierRole.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Inheritances_ICollaboration.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Inheritances_ICollaboration.gif
new file mode 100755
index 0000000..573d6ee
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Inheritances_ICollaboration.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Inheritances_ICollaborationDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Inheritances_ICollaborationDiagram.gif
new file mode 100755
index 0000000..e6b48d9
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Inheritances_ICollaborationDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Inheritances_IComment.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Inheritances_IComment.gif
new file mode 100755
index 0000000..b42028e
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Inheritances_IComment.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Inheritances_IComponent.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Inheritances_IComponent.gif
new file mode 100755
index 0000000..a03a30e
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Inheritances_IComponent.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Inheritances_IComponentDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Inheritances_IComponentDiagram.gif
new file mode 100755
index 0000000..d21c463
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Inheritances_IComponentDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Inheritances_IComponentInstance.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Inheritances_IComponentInstance.gif
new file mode 100755
index 0000000..f69592c
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Inheritances_IComponentInstance.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Inheritances_IConfiguration.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Inheritances_IConfiguration.gif
new file mode 100755
index 0000000..a47b32b
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Inheritances_IConfiguration.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Inheritances_IConnector.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Inheritances_IConnector.gif
new file mode 100755
index 0000000..3ca8bfa
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Inheritances_IConnector.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Inheritances_IConstraint.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Inheritances_IConstraint.gif
new file mode 100755
index 0000000..dadbe43
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Inheritances_IConstraint.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Inheritances_IContextSpecification.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Inheritances_IContextSpecification.gif
new file mode 100755
index 0000000..e268a9e
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Inheritances_IContextSpecification.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Inheritances_IControlledFile.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Inheritances_IControlledFile.gif
new file mode 100755
index 0000000..cfb2d6e
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Inheritances_IControlledFile.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Inheritances_IDependency.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Inheritances_IDependency.gif
new file mode 100755
index 0000000..06d2414
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Inheritances_IDependency.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Inheritances_IDeploymentDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Inheritances_IDeploymentDiagram.gif
new file mode 100755
index 0000000..ba67912
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Inheritances_IDeploymentDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Inheritances_IDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Inheritances_IDiagram.gif
new file mode 100755
index 0000000..9ab92c1
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Inheritances_IDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Inheritances_IEnumerationLiteral.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Inheritances_IEnumerationLiteral.gif
new file mode 100755
index 0000000..ecce8cb
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Inheritances_IEnumerationLiteral.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Inheritances_IEvent.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Inheritances_IEvent.gif
new file mode 100755
index 0000000..a03a30e
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Inheritances_IEvent.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Inheritances_IEventReception.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Inheritances_IEventReception.gif
new file mode 100755
index 0000000..3473a1f
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Inheritances_IEventReception.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Inheritances_IExecutionOccurrence.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Inheritances_IExecutionOccurrence.gif
new file mode 100755
index 0000000..970be05
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Inheritances_IExecutionOccurrence.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Inheritances_IExternalHyperlink.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Inheritances_IExternalHyperlink.gif
new file mode 100755
index 0000000..39428c7
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Inheritances_IExternalHyperlink.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Inheritances_IFile.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Inheritances_IFile.gif
new file mode 100755
index 0000000..7e2fd2e
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Inheritances_IFile.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Inheritances_IFileFragment.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Inheritances_IFileFragment.gif
new file mode 100755
index 0000000..3473a1f
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Inheritances_IFileFragment.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Inheritances_IFlow.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Inheritances_IFlow.gif
new file mode 100755
index 0000000..6974180
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Inheritances_IFlow.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Inheritances_IFlowItem.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Inheritances_IFlowItem.gif
new file mode 100755
index 0000000..70597ff
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Inheritances_IFlowItem.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Inheritances_IGeneralization.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Inheritances_IGeneralization.gif
new file mode 100755
index 0000000..83d2501
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Inheritances_IGeneralization.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Inheritances_IGuard.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Inheritances_IGuard.gif
new file mode 100755
index 0000000..6010ac9
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Inheritances_IGuard.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Inheritances_IHyperLink.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Inheritances_IHyperLink.gif
new file mode 100755
index 0000000..d66ff4a
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Inheritances_IHyperLink.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Inheritances_IInformationFlow.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Inheritances_IInformationFlow.gif
new file mode 100755
index 0000000..a03a30e
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Inheritances_IInformationFlow.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Inheritances_IInstance.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Inheritances_IInstance.gif
new file mode 100755
index 0000000..12536cb
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Inheritances_IInstance.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Inheritances_IInstanceSlot.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Inheritances_IInstanceSlot.gif
new file mode 100755
index 0000000..a0ba127
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Inheritances_IInstanceSlot.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Inheritances_IInstanceSpecification.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Inheritances_IInstanceSpecification.gif
new file mode 100755
index 0000000..d21c463
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Inheritances_IInstanceSpecification.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Inheritances_IInstanceValue.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Inheritances_IInstanceValue.gif
new file mode 100755
index 0000000..df7afd7
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Inheritances_IInstanceValue.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Inheritances_IInteractionOccurrence.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Inheritances_IInteractionOccurrence.gif
new file mode 100755
index 0000000..a03a30e
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Inheritances_IInteractionOccurrence.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Inheritances_IInteractionOperand.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Inheritances_IInteractionOperand.gif
new file mode 100755
index 0000000..9a7f5b8
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Inheritances_IInteractionOperand.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Inheritances_IInteractionOperator.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Inheritances_IInteractionOperator.gif
new file mode 100755
index 0000000..43a8eef
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Inheritances_IInteractionOperator.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Inheritances_IInterfaceItem.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Inheritances_IInterfaceItem.gif
new file mode 100755
index 0000000..9ab92c1
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Inheritances_IInterfaceItem.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Inheritances_IInternalHyperlink.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Inheritances_IInternalHyperlink.gif
new file mode 100755
index 0000000..d19385d
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Inheritances_IInternalHyperlink.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Inheritances_ILink.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Inheritances_ILink.gif
new file mode 100755
index 0000000..0062ded
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Inheritances_ILink.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Inheritances_ILiteralSpecification.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Inheritances_ILiteralSpecification.gif
new file mode 100755
index 0000000..ecce8cb
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Inheritances_ILiteralSpecification.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Inheritances_IMHyperLink.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Inheritances_IMHyperLink.gif
new file mode 100755
index 0000000..f69592c
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Inheritances_IMHyperLink.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Inheritances_IMatrixLayout.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Inheritances_IMatrixLayout.gif
new file mode 100755
index 0000000..bb229d1
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Inheritances_IMatrixLayout.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Inheritances_IMatrixView.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Inheritances_IMatrixView.gif
new file mode 100755
index 0000000..a03a30e
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Inheritances_IMatrixView.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Inheritances_IMessage.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Inheritances_IMessage.gif
new file mode 100755
index 0000000..f01be4e
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Inheritances_IMessage.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Inheritances_IMessagePoint.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Inheritances_IMessagePoint.gif
new file mode 100755
index 0000000..0b0adae
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Inheritances_IMessagePoint.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Inheritances_IModelElement.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Inheritances_IModelElement.gif
new file mode 100755
index 0000000..6010ac9
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Inheritances_IModelElement.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Inheritances_IModule.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Inheritances_IModule.gif
new file mode 100755
index 0000000..e9b333d
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Inheritances_IModule.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Inheritances_INode.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Inheritances_INode.gif
new file mode 100755
index 0000000..c3f3ffa
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Inheritances_INode.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Inheritances_IObjectLink.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Inheritances_IObjectLink.gif
new file mode 100755
index 0000000..cfb2d6e
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Inheritances_IObjectLink.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Inheritances_IObjectModelDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Inheritances_IObjectModelDiagram.gif
new file mode 100755
index 0000000..0b0adae
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Inheritances_IObjectModelDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Inheritances_IObjectNode.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Inheritances_IObjectNode.gif
new file mode 100755
index 0000000..8d19645
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Inheritances_IObjectNode.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Inheritances_IOperation.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Inheritances_IOperation.gif
new file mode 100755
index 0000000..ba67912
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Inheritances_IOperation.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Inheritances_IPackage.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Inheritances_IPackage.gif
new file mode 100755
index 0000000..5a20caa
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Inheritances_IPackage.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Inheritances_IPanelDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Inheritances_IPanelDiagram.gif
new file mode 100755
index 0000000..7e2fd2e
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Inheritances_IPanelDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Inheritances_IPart.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Inheritances_IPart.gif
new file mode 100755
index 0000000..f7a9c9f
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Inheritances_IPart.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Inheritances_IPin.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Inheritances_IPin.gif
new file mode 100755
index 0000000..12536cb
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Inheritances_IPin.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Inheritances_IPort.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Inheritances_IPort.gif
new file mode 100755
index 0000000..a03a30e
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Inheritances_IPort.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Inheritances_IPrimitiveOperation.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Inheritances_IPrimitiveOperation.gif
new file mode 100755
index 0000000..3ca8bfa
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Inheritances_IPrimitiveOperation.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Inheritances_IProfile.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Inheritances_IProfile.gif
new file mode 100755
index 0000000..dadbe43
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Inheritances_IProfile.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Inheritances_IProject.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Inheritances_IProject.gif
new file mode 100755
index 0000000..d19385d
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Inheritances_IProject.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Inheritances_IRelation.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Inheritances_IRelation.gif
new file mode 100755
index 0000000..16dbb0e
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Inheritances_IRelation.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Inheritances_IRequirement.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Inheritances_IRequirement.gif
new file mode 100755
index 0000000..f00d453
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Inheritances_IRequirement.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Inheritances_ISendAction.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Inheritances_ISendAction.gif
new file mode 100755
index 0000000..dadbe43
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Inheritances_ISendAction.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Inheritances_ISequenceDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Inheritances_ISequenceDiagram.gif
new file mode 100755
index 0000000..a0ba127
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Inheritances_ISequenceDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Inheritances_IState.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Inheritances_IState.gif
new file mode 100755
index 0000000..4bf40a9
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Inheritances_IState.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Inheritances_IStateChart.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Inheritances_IStateChart.gif
new file mode 100755
index 0000000..d66ff4a
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Inheritances_IStateChart.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Inheritances_IStateChartDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Inheritances_IStateChartDiagram.gif
new file mode 100755
index 0000000..a0ba127
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Inheritances_IStateChartDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Inheritances_IStateVertex.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Inheritances_IStateVertex.gif
new file mode 100755
index 0000000..cfb2d6e
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Inheritances_IStateVertex.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Inheritances_IStereotype.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Inheritances_IStereotype.gif
new file mode 100755
index 0000000..f00d453
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Inheritances_IStereotype.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Inheritances_IStructureDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Inheritances_IStructureDiagram.gif
new file mode 100755
index 0000000..df7afd7
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Inheritances_IStructureDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Inheritances_ISubsystem.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Inheritances_ISubsystem.gif
new file mode 100755
index 0000000..12536cb
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Inheritances_ISubsystem.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Inheritances_ISwimlane.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Inheritances_ISwimlane.gif
new file mode 100755
index 0000000..3473a1f
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Inheritances_ISwimlane.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Inheritances_ISysMLPort.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Inheritances_ISysMLPort.gif
new file mode 100755
index 0000000..e9b333d
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Inheritances_ISysMLPort.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Inheritances_ITableLayout.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Inheritances_ITableLayout.gif
new file mode 100755
index 0000000..9ab92c1
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Inheritances_ITableLayout.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Inheritances_ITableView.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Inheritances_ITableView.gif
new file mode 100755
index 0000000..a0ba127
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Inheritances_ITableView.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Inheritances_ITag.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Inheritances_ITag.gif
new file mode 100755
index 0000000..5e751d1
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Inheritances_ITag.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Inheritances_ITemplateInstantiation.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Inheritances_ITemplateInstantiation.gif
new file mode 100755
index 0000000..7e2fd2e
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Inheritances_ITemplateInstantiation.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Inheritances_ITemplateInstantiationParameter.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Inheritances_ITemplateInstantiationParameter.gif
new file mode 100755
index 0000000..e268a9e
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Inheritances_ITemplateInstantiationParameter.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Inheritances_ITemplateParameter.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Inheritances_ITemplateParameter.gif
new file mode 100755
index 0000000..0b0adae
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Inheritances_ITemplateParameter.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Inheritances_ITransition.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Inheritances_ITransition.gif
new file mode 100755
index 0000000..d19385d
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Inheritances_ITransition.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Inheritances_ITrigger.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Inheritances_ITrigger.gif
new file mode 100755
index 0000000..7e2fd2e
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Inheritances_ITrigger.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Inheritances_ITriggered.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Inheritances_ITriggered.gif
new file mode 100755
index 0000000..3473a1f
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Inheritances_ITriggered.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Inheritances_IType.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Inheritances_IType.gif
new file mode 100755
index 0000000..43a8eef
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Inheritances_IType.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Inheritances_IUnit.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Inheritances_IUnit.gif
new file mode 100755
index 0000000..83d2501
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Inheritances_IUnit.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Inheritances_IUseCase.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Inheritances_IUseCase.gif
new file mode 100755
index 0000000..d21c463
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Inheritances_IUseCase.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Inheritances_IUseCaseDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Inheritances_IUseCaseDiagram.gif
new file mode 100755
index 0000000..b42028e
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Inheritances_IUseCaseDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Inheritances_IValueSpecification.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Inheritances_IValueSpecification.gif
new file mode 100755
index 0000000..f01be4e
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Inheritances_IValueSpecification.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Inheritances_IVariable.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Inheritances_IVariable.gif
new file mode 100755
index 0000000..a0ba127
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Inheritances_IVariable.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Links_IClassInstance.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Links_IClassInstance.gif
new file mode 100755
index 0000000..b415959
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Links_IClassInstance.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Links_ILink.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Links_ILink.gif
new file mode 100755
index 0000000..0062ded
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Links_ILink.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_ObjectLinks_IObjectLink.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_ObjectLinks_IObjectLink.gif
new file mode 100755
index 0000000..cfb2d6e
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_ObjectLinks_IObjectLink.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Operations_IConstructor.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Operations_IConstructor.gif
new file mode 100755
index 0000000..04a6748
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Operations_IConstructor.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Operations_IDestructor.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Operations_IDestructor.gif
new file mode 100755
index 0000000..ecce8cb
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Operations_IDestructor.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Operations_IPrimitiveOperation.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Operations_IPrimitiveOperation.gif
new file mode 100755
index 0000000..3ca8bfa
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Operations_IPrimitiveOperation.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Operations_IReception.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Operations_IReception.gif
new file mode 100755
index 0000000..4cc4140
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Operations_IReception.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Operations_ITriggered.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Operations_ITriggered.gif
new file mode 100755
index 0000000..3473a1f
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Operations_ITriggered.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Ports_IInstance.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Ports_IInstance.gif
new file mode 100755
index 0000000..12536cb
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Ports_IInstance.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Ports_IModule.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Ports_IModule.gif
new file mode 100755
index 0000000..e9b333d
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Ports_IModule.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Ports_IPort.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Ports_IPort.gif
new file mode 100755
index 0000000..a03a30e
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Ports_IPort.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Ports_IRelation.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Ports_IRelation.gif
new file mode 100755
index 0000000..16dbb0e
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Ports_IRelation.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Ports_ISysMLPort.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Ports_ISysMLPort.gif
new file mode 100755
index 0000000..e9b333d
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Ports_ISysMLPort.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_PrimitiveOperations_IConstructor.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_PrimitiveOperations_IConstructor.gif
new file mode 100755
index 0000000..04a6748
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_PrimitiveOperations_IConstructor.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_PrimitiveOperations_IDestructor.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_PrimitiveOperations_IDestructor.gif
new file mode 100755
index 0000000..ecce8cb
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_PrimitiveOperations_IDestructor.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_PrimitiveOperations_IPrimitiveOperation.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_PrimitiveOperations_IPrimitiveOperation.gif
new file mode 100755
index 0000000..3ca8bfa
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_PrimitiveOperations_IPrimitiveOperation.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_PrimitiveOperations_IReception.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_PrimitiveOperations_IReception.gif
new file mode 100755
index 0000000..4cc4140
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_PrimitiveOperations_IReception.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_PrimitiveOperations_ITriggered.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_PrimitiveOperations_ITriggered.gif
new file mode 100755
index 0000000..3473a1f
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_PrimitiveOperations_ITriggered.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_StateCharts_IActivityGraph.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_StateCharts_IActivityGraph.gif
new file mode 100755
index 0000000..7e2fd2e
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_StateCharts_IActivityGraph.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_StateCharts_IStateChart.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_StateCharts_IStateChart.gif
new file mode 100755
index 0000000..d66ff4a
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_StateCharts_IStateChart.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Stereotypes_IActor.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Stereotypes_IActor.gif
new file mode 100755
index 0000000..ac6a8a2
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Stereotypes_IActor.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Stereotypes_IAnnotation.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Stereotypes_IAnnotation.gif
new file mode 100755
index 0000000..df7afd7
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Stereotypes_IAnnotation.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Stereotypes_IArgument.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Stereotypes_IArgument.gif
new file mode 100755
index 0000000..d21c463
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Stereotypes_IArgument.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Stereotypes_IAssociationClass.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Stereotypes_IAssociationClass.gif
new file mode 100755
index 0000000..3ca8bfa
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Stereotypes_IAssociationClass.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Stereotypes_IAttribute.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Stereotypes_IAttribute.gif
new file mode 100755
index 0000000..94b1be2
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Stereotypes_IAttribute.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Stereotypes_IClass.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Stereotypes_IClass.gif
new file mode 100755
index 0000000..a47b32b
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Stereotypes_IClass.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Stereotypes_IClassifier.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Stereotypes_IClassifier.gif
new file mode 100755
index 0000000..63e7a6f
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Stereotypes_IClassifier.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Stereotypes_ICollaborationDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Stereotypes_ICollaborationDiagram.gif
new file mode 100755
index 0000000..e6b48d9
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Stereotypes_ICollaborationDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Stereotypes_IComment.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Stereotypes_IComment.gif
new file mode 100755
index 0000000..b42028e
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Stereotypes_IComment.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Stereotypes_IComponent.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Stereotypes_IComponent.gif
new file mode 100755
index 0000000..a03a30e
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Stereotypes_IComponent.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Stereotypes_IComponentDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Stereotypes_IComponentDiagram.gif
new file mode 100755
index 0000000..d21c463
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Stereotypes_IComponentDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Stereotypes_IConstraint.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Stereotypes_IConstraint.gif
new file mode 100755
index 0000000..dadbe43
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Stereotypes_IConstraint.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Stereotypes_IControlledFile.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Stereotypes_IControlledFile.gif
new file mode 100755
index 0000000..cfb2d6e
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Stereotypes_IControlledFile.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Stereotypes_IDeploymentDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Stereotypes_IDeploymentDiagram.gif
new file mode 100755
index 0000000..ba67912
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Stereotypes_IDeploymentDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Stereotypes_IDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Stereotypes_IDiagram.gif
new file mode 100755
index 0000000..9ab92c1
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Stereotypes_IDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Stereotypes_IEvent.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Stereotypes_IEvent.gif
new file mode 100755
index 0000000..a03a30e
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Stereotypes_IEvent.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Stereotypes_IEventReception.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Stereotypes_IEventReception.gif
new file mode 100755
index 0000000..3473a1f
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Stereotypes_IEventReception.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Stereotypes_IFile.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Stereotypes_IFile.gif
new file mode 100755
index 0000000..7e2fd2e
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Stereotypes_IFile.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Stereotypes_IFlowItem.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Stereotypes_IFlowItem.gif
new file mode 100755
index 0000000..70597ff
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Stereotypes_IFlowItem.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Stereotypes_IInstance.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Stereotypes_IInstance.gif
new file mode 100755
index 0000000..12536cb
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Stereotypes_IInstance.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Stereotypes_IInterfaceItem.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Stereotypes_IInterfaceItem.gif
new file mode 100755
index 0000000..9ab92c1
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Stereotypes_IInterfaceItem.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Stereotypes_ILink.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Stereotypes_ILink.gif
new file mode 100755
index 0000000..0062ded
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Stereotypes_ILink.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Stereotypes_IMatrixLayout.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Stereotypes_IMatrixLayout.gif
new file mode 100755
index 0000000..bb229d1
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Stereotypes_IMatrixLayout.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Stereotypes_IMatrixView.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Stereotypes_IMatrixView.gif
new file mode 100755
index 0000000..a03a30e
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Stereotypes_IMatrixView.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Stereotypes_IModule.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Stereotypes_IModule.gif
new file mode 100755
index 0000000..e9b333d
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Stereotypes_IModule.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Stereotypes_INode.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Stereotypes_INode.gif
new file mode 100755
index 0000000..c3f3ffa
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Stereotypes_INode.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Stereotypes_IObjectModelDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Stereotypes_IObjectModelDiagram.gif
new file mode 100755
index 0000000..0b0adae
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Stereotypes_IObjectModelDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Stereotypes_IOperation.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Stereotypes_IOperation.gif
new file mode 100755
index 0000000..ba67912
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Stereotypes_IOperation.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Stereotypes_IPackage.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Stereotypes_IPackage.gif
new file mode 100755
index 0000000..5a20caa
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Stereotypes_IPackage.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Stereotypes_IPanelDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Stereotypes_IPanelDiagram.gif
new file mode 100755
index 0000000..7e2fd2e
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Stereotypes_IPanelDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Stereotypes_IPort.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Stereotypes_IPort.gif
new file mode 100755
index 0000000..a03a30e
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Stereotypes_IPort.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Stereotypes_IProfile.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Stereotypes_IProfile.gif
new file mode 100755
index 0000000..dadbe43
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Stereotypes_IProfile.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Stereotypes_IProject.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Stereotypes_IProject.gif
new file mode 100755
index 0000000..d19385d
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Stereotypes_IProject.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Stereotypes_IRelation.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Stereotypes_IRelation.gif
new file mode 100755
index 0000000..16dbb0e
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Stereotypes_IRelation.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Stereotypes_IRequirement.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Stereotypes_IRequirement.gif
new file mode 100755
index 0000000..f00d453
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Stereotypes_IRequirement.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Stereotypes_ISequenceDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Stereotypes_ISequenceDiagram.gif
new file mode 100755
index 0000000..a0ba127
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Stereotypes_ISequenceDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Stereotypes_IStateChart.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Stereotypes_IStateChart.gif
new file mode 100755
index 0000000..d66ff4a
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Stereotypes_IStateChart.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Stereotypes_IStateChartDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Stereotypes_IStateChartDiagram.gif
new file mode 100755
index 0000000..a0ba127
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Stereotypes_IStateChartDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Stereotypes_IStereotype.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Stereotypes_IStereotype.gif
new file mode 100755
index 0000000..f00d453
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Stereotypes_IStereotype.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Stereotypes_IStructureDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Stereotypes_IStructureDiagram.gif
new file mode 100755
index 0000000..df7afd7
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Stereotypes_IStructureDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Stereotypes_ISysMLPort.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Stereotypes_ISysMLPort.gif
new file mode 100755
index 0000000..e9b333d
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Stereotypes_ISysMLPort.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Stereotypes_ITableLayout.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Stereotypes_ITableLayout.gif
new file mode 100755
index 0000000..9ab92c1
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Stereotypes_ITableLayout.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Stereotypes_ITableView.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Stereotypes_ITableView.gif
new file mode 100755
index 0000000..a0ba127
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Stereotypes_ITableView.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Stereotypes_ITag.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Stereotypes_ITag.gif
new file mode 100755
index 0000000..5e751d1
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Stereotypes_ITag.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Stereotypes_ITemplateParameter.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Stereotypes_ITemplateParameter.gif
new file mode 100755
index 0000000..0b0adae
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Stereotypes_ITemplateParameter.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Stereotypes_IType.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Stereotypes_IType.gif
new file mode 100755
index 0000000..43a8eef
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Stereotypes_IType.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Stereotypes_IUnit.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Stereotypes_IUnit.gif
new file mode 100755
index 0000000..83d2501
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Stereotypes_IUnit.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Stereotypes_IUseCase.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Stereotypes_IUseCase.gif
new file mode 100755
index 0000000..d21c463
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Stereotypes_IUseCase.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Stereotypes_IUseCaseDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Stereotypes_IUseCaseDiagram.gif
new file mode 100755
index 0000000..b42028e
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Stereotypes_IUseCaseDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Stereotypes_IVariable.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Stereotypes_IVariable.gif
new file mode 100755
index 0000000..a0ba127
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Stereotypes_IVariable.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Tags_ITag.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Tags_ITag.gif
new file mode 100755
index 0000000..5e751d1
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_Tags_ITag.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_TemplateParameters_ITemplateParameter.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_TemplateParameters_ITemplateParameter.gif
new file mode 100755
index 0000000..0b0adae
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_TemplateParameters_ITemplateParameter.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_description_IDescription.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_description_IDescription.gif
new file mode 100755
index 0000000..b42028e
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_description_IDescription.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_properties_IPropertyContainer.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_properties_IPropertyContainer.gif
new file mode 100755
index 0000000..6974180
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClass_properties_IPropertyContainer.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClassifierRole_Stereotypes_IStereotype.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClassifierRole_Stereotypes_IStereotype.gif
new file mode 100755
index 0000000..cba6836
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClassifierRole_Stereotypes_IStereotype.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClassifierRole_properties_IPropertyContainer.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClassifierRole_properties_IPropertyContainer.gif
new file mode 100755
index 0000000..26eb6e3
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIClassifierRole_properties_IPropertyContainer.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateICodeGenConfigInfo_AnimScopeElements_IAcceptEventAction.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateICodeGenConfigInfo_AnimScopeElements_IAcceptEventAction.gif
new file mode 100755
index 0000000..bc2d748
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateICodeGenConfigInfo_AnimScopeElements_IAcceptEventAction.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateICodeGenConfigInfo_AnimScopeElements_IAcceptTimeEvent.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateICodeGenConfigInfo_AnimScopeElements_IAcceptTimeEvent.gif
new file mode 100755
index 0000000..7738511
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateICodeGenConfigInfo_AnimScopeElements_IAcceptTimeEvent.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateICodeGenConfigInfo_AnimScopeElements_IActivityDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateICodeGenConfigInfo_AnimScopeElements_IActivityDiagram.gif
new file mode 100755
index 0000000..90d0d79
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateICodeGenConfigInfo_AnimScopeElements_IActivityDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateICodeGenConfigInfo_AnimScopeElements_IActivityGraph.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateICodeGenConfigInfo_AnimScopeElements_IActivityGraph.gif
new file mode 100755
index 0000000..4368e6a
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateICodeGenConfigInfo_AnimScopeElements_IActivityGraph.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateICodeGenConfigInfo_AnimScopeElements_IActor.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateICodeGenConfigInfo_AnimScopeElements_IActor.gif
new file mode 100755
index 0000000..b6c9d48
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateICodeGenConfigInfo_AnimScopeElements_IActor.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateICodeGenConfigInfo_AnimScopeElements_IAssociationClass.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateICodeGenConfigInfo_AnimScopeElements_IAssociationClass.gif
new file mode 100755
index 0000000..98d80e5
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateICodeGenConfigInfo_AnimScopeElements_IAssociationClass.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateICodeGenConfigInfo_AnimScopeElements_IAttribute.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateICodeGenConfigInfo_AnimScopeElements_IAttribute.gif
new file mode 100755
index 0000000..1d9a8e9
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateICodeGenConfigInfo_AnimScopeElements_IAttribute.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateICodeGenConfigInfo_AnimScopeElements_ICallOperation.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateICodeGenConfigInfo_AnimScopeElements_ICallOperation.gif
new file mode 100755
index 0000000..f49f947
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateICodeGenConfigInfo_AnimScopeElements_ICallOperation.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateICodeGenConfigInfo_AnimScopeElements_IClass.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateICodeGenConfigInfo_AnimScopeElements_IClass.gif
new file mode 100755
index 0000000..84d6297
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateICodeGenConfigInfo_AnimScopeElements_IClass.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateICodeGenConfigInfo_AnimScopeElements_ICodeGenConfigInfo.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateICodeGenConfigInfo_AnimScopeElements_ICodeGenConfigInfo.gif
new file mode 100755
index 0000000..11148cf
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateICodeGenConfigInfo_AnimScopeElements_ICodeGenConfigInfo.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateICodeGenConfigInfo_AnimScopeElements_ICollaborationDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateICodeGenConfigInfo_AnimScopeElements_ICollaborationDiagram.gif
new file mode 100755
index 0000000..29e556e
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateICodeGenConfigInfo_AnimScopeElements_ICollaborationDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateICodeGenConfigInfo_AnimScopeElements_IComponent.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateICodeGenConfigInfo_AnimScopeElements_IComponent.gif
new file mode 100755
index 0000000..7738511
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateICodeGenConfigInfo_AnimScopeElements_IComponent.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateICodeGenConfigInfo_AnimScopeElements_IComponentDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateICodeGenConfigInfo_AnimScopeElements_IComponentDiagram.gif
new file mode 100755
index 0000000..5550cf3
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateICodeGenConfigInfo_AnimScopeElements_IComponentDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateICodeGenConfigInfo_AnimScopeElements_IDefaultDrvdTrans.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateICodeGenConfigInfo_AnimScopeElements_IDefaultDrvdTrans.gif
new file mode 100755
index 0000000..6c65e3a
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateICodeGenConfigInfo_AnimScopeElements_IDefaultDrvdTrans.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateICodeGenConfigInfo_AnimScopeElements_IDependency.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateICodeGenConfigInfo_AnimScopeElements_IDependency.gif
new file mode 100755
index 0000000..c9c2343
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateICodeGenConfigInfo_AnimScopeElements_IDependency.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateICodeGenConfigInfo_AnimScopeElements_IDeploymentDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateICodeGenConfigInfo_AnimScopeElements_IDeploymentDiagram.gif
new file mode 100755
index 0000000..2c2ef1f
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateICodeGenConfigInfo_AnimScopeElements_IDeploymentDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateICodeGenConfigInfo_AnimScopeElements_IDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateICodeGenConfigInfo_AnimScopeElements_IDiagram.gif
new file mode 100755
index 0000000..3395195
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateICodeGenConfigInfo_AnimScopeElements_IDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateICodeGenConfigInfo_AnimScopeElements_IHyperLink.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateICodeGenConfigInfo_AnimScopeElements_IHyperLink.gif
new file mode 100755
index 0000000..f496e2f
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateICodeGenConfigInfo_AnimScopeElements_IHyperLink.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateICodeGenConfigInfo_AnimScopeElements_IInformationFlow.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateICodeGenConfigInfo_AnimScopeElements_IInformationFlow.gif
new file mode 100755
index 0000000..7738511
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateICodeGenConfigInfo_AnimScopeElements_IInformationFlow.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateICodeGenConfigInfo_AnimScopeElements_IInformationItem.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateICodeGenConfigInfo_AnimScopeElements_IInformationItem.gif
new file mode 100755
index 0000000..b6c9d48
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateICodeGenConfigInfo_AnimScopeElements_IInformationItem.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateICodeGenConfigInfo_AnimScopeElements_IMSC.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateICodeGenConfigInfo_AnimScopeElements_IMSC.gif
new file mode 100755
index 0000000..bc2d748
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateICodeGenConfigInfo_AnimScopeElements_IMSC.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateICodeGenConfigInfo_AnimScopeElements_IMatrixInstance.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateICodeGenConfigInfo_AnimScopeElements_IMatrixInstance.gif
new file mode 100755
index 0000000..e16ab2c
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateICodeGenConfigInfo_AnimScopeElements_IMatrixInstance.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateICodeGenConfigInfo_AnimScopeElements_IMessage.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateICodeGenConfigInfo_AnimScopeElements_IMessage.gif
new file mode 100755
index 0000000..52f7346
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateICodeGenConfigInfo_AnimScopeElements_IMessage.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateICodeGenConfigInfo_AnimScopeElements_IModule.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateICodeGenConfigInfo_AnimScopeElements_IModule.gif
new file mode 100755
index 0000000..af44325
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateICodeGenConfigInfo_AnimScopeElements_IModule.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateICodeGenConfigInfo_AnimScopeElements_IObjectLink.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateICodeGenConfigInfo_AnimScopeElements_IObjectLink.gif
new file mode 100755
index 0000000..58b063b
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateICodeGenConfigInfo_AnimScopeElements_IObjectLink.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateICodeGenConfigInfo_AnimScopeElements_IObjectModelDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateICodeGenConfigInfo_AnimScopeElements_IObjectModelDiagram.gif
new file mode 100755
index 0000000..8341fe3
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateICodeGenConfigInfo_AnimScopeElements_IObjectModelDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateICodeGenConfigInfo_AnimScopeElements_IObjectNode.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateICodeGenConfigInfo_AnimScopeElements_IObjectNode.gif
new file mode 100755
index 0000000..4699099
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateICodeGenConfigInfo_AnimScopeElements_IObjectNode.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateICodeGenConfigInfo_AnimScopeElements_IPanelDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateICodeGenConfigInfo_AnimScopeElements_IPanelDiagram.gif
new file mode 100755
index 0000000..4368e6a
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateICodeGenConfigInfo_AnimScopeElements_IPanelDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateICodeGenConfigInfo_AnimScopeElements_IPart.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateICodeGenConfigInfo_AnimScopeElements_IPart.gif
new file mode 100755
index 0000000..c431c59
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateICodeGenConfigInfo_AnimScopeElements_IPart.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateICodeGenConfigInfo_AnimScopeElements_IPrimitiveOperation.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateICodeGenConfigInfo_AnimScopeElements_IPrimitiveOperation.gif
new file mode 100755
index 0000000..98d80e5
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateICodeGenConfigInfo_AnimScopeElements_IPrimitiveOperation.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateICodeGenConfigInfo_AnimScopeElements_IProfile.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateICodeGenConfigInfo_AnimScopeElements_IProfile.gif
new file mode 100755
index 0000000..bc2d748
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateICodeGenConfigInfo_AnimScopeElements_IProfile.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateICodeGenConfigInfo_AnimScopeElements_IReception.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateICodeGenConfigInfo_AnimScopeElements_IReception.gif
new file mode 100755
index 0000000..bca376f
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateICodeGenConfigInfo_AnimScopeElements_IReception.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateICodeGenConfigInfo_AnimScopeElements_IReferenceActivity.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateICodeGenConfigInfo_AnimScopeElements_IReferenceActivity.gif
new file mode 100755
index 0000000..72ec732
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateICodeGenConfigInfo_AnimScopeElements_IReferenceActivity.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateICodeGenConfigInfo_AnimScopeElements_IRequirement.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateICodeGenConfigInfo_AnimScopeElements_IRequirement.gif
new file mode 100755
index 0000000..78f72fb
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateICodeGenConfigInfo_AnimScopeElements_IRequirement.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateICodeGenConfigInfo_AnimScopeElements_ISequenceDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateICodeGenConfigInfo_AnimScopeElements_ISequenceDiagram.gif
new file mode 100755
index 0000000..d51b362
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateICodeGenConfigInfo_AnimScopeElements_ISequenceDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateICodeGenConfigInfo_AnimScopeElements_IState.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateICodeGenConfigInfo_AnimScopeElements_IState.gif
new file mode 100755
index 0000000..5f313f2
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateICodeGenConfigInfo_AnimScopeElements_IState.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateICodeGenConfigInfo_AnimScopeElements_IStateChart.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateICodeGenConfigInfo_AnimScopeElements_IStateChart.gif
new file mode 100755
index 0000000..f496e2f
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateICodeGenConfigInfo_AnimScopeElements_IStateChart.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateICodeGenConfigInfo_AnimScopeElements_IStateChartDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateICodeGenConfigInfo_AnimScopeElements_IStateChartDiagram.gif
new file mode 100755
index 0000000..d51b362
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateICodeGenConfigInfo_AnimScopeElements_IStateChartDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateICodeGenConfigInfo_AnimScopeElements_IStereotype.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateICodeGenConfigInfo_AnimScopeElements_IStereotype.gif
new file mode 100755
index 0000000..78f72fb
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateICodeGenConfigInfo_AnimScopeElements_IStereotype.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateICodeGenConfigInfo_AnimScopeElements_IStructureDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateICodeGenConfigInfo_AnimScopeElements_IStructureDiagram.gif
new file mode 100755
index 0000000..a26e43a
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateICodeGenConfigInfo_AnimScopeElements_IStructureDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateICodeGenConfigInfo_AnimScopeElements_ISubsystem.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateICodeGenConfigInfo_AnimScopeElements_ISubsystem.gif
new file mode 100755
index 0000000..01d709d
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateICodeGenConfigInfo_AnimScopeElements_ISubsystem.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateICodeGenConfigInfo_AnimScopeElements_ISysMLPort.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateICodeGenConfigInfo_AnimScopeElements_ISysMLPort.gif
new file mode 100755
index 0000000..af44325
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateICodeGenConfigInfo_AnimScopeElements_ISysMLPort.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateICodeGenConfigInfo_AnimScopeElements_ITableInstance.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateICodeGenConfigInfo_AnimScopeElements_ITableInstance.gif
new file mode 100755
index 0000000..bca376f
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateICodeGenConfigInfo_AnimScopeElements_ITableInstance.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateICodeGenConfigInfo_AnimScopeElements_ITransition.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateICodeGenConfigInfo_AnimScopeElements_ITransition.gif
new file mode 100755
index 0000000..cd8caad
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateICodeGenConfigInfo_AnimScopeElements_ITransition.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateICodeGenConfigInfo_AnimScopeElements_IType.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateICodeGenConfigInfo_AnimScopeElements_IType.gif
new file mode 100755
index 0000000..c0e9a18
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateICodeGenConfigInfo_AnimScopeElements_IType.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateICodeGenConfigInfo_AnimScopeElements_IUCDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateICodeGenConfigInfo_AnimScopeElements_IUCDiagram.gif
new file mode 100755
index 0000000..90821e3
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateICodeGenConfigInfo_AnimScopeElements_IUCDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateICodeGenConfigInfo_AnimScopeElements_IUseCase.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateICodeGenConfigInfo_AnimScopeElements_IUseCase.gif
new file mode 100755
index 0000000..5550cf3
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateICodeGenConfigInfo_AnimScopeElements_IUseCase.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateICodeGenConfigInfo_AnimScopeElements_IUseCaseDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateICodeGenConfigInfo_AnimScopeElements_IUseCaseDiagram.gif
new file mode 100755
index 0000000..91bb42f
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateICodeGenConfigInfo_AnimScopeElements_IUseCaseDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateICodeGenConfigInfo_Annotations_IComment.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateICodeGenConfigInfo_Annotations_IComment.gif
new file mode 100755
index 0000000..91bb42f
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateICodeGenConfigInfo_Annotations_IComment.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateICodeGenConfigInfo_Dependencies_IDependency.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateICodeGenConfigInfo_Dependencies_IDependency.gif
new file mode 100755
index 0000000..c9c2343
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateICodeGenConfigInfo_Dependencies_IDependency.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateICodeGenConfigInfo_Dependencies_IHyperLink.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateICodeGenConfigInfo_Dependencies_IHyperLink.gif
new file mode 100755
index 0000000..f496e2f
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateICodeGenConfigInfo_Dependencies_IHyperLink.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateICodeGenConfigInfo_EmbededFiles_IEmbededFile.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateICodeGenConfigInfo_EmbededFiles_IEmbededFile.gif
new file mode 100755
index 0000000..bca376f
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateICodeGenConfigInfo_EmbededFiles_IEmbededFile.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateICodeGenConfigInfo_HyperLinks_IMHyperLink.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateICodeGenConfigInfo_HyperLinks_IMHyperLink.gif
new file mode 100755
index 0000000..e5f323d
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateICodeGenConfigInfo_HyperLinks_IMHyperLink.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateICodeGenConfigInfo_InitialInstances_IActor.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateICodeGenConfigInfo_InitialInstances_IActor.gif
new file mode 100755
index 0000000..b6c9d48
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateICodeGenConfigInfo_InitialInstances_IActor.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateICodeGenConfigInfo_InitialInstances_IAnnotation.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateICodeGenConfigInfo_InitialInstances_IAnnotation.gif
new file mode 100755
index 0000000..a26e43a
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateICodeGenConfigInfo_InitialInstances_IAnnotation.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateICodeGenConfigInfo_InitialInstances_IArgument.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateICodeGenConfigInfo_InitialInstances_IArgument.gif
new file mode 100755
index 0000000..5550cf3
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateICodeGenConfigInfo_InitialInstances_IArgument.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateICodeGenConfigInfo_InitialInstances_IAssociationClass.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateICodeGenConfigInfo_InitialInstances_IAssociationClass.gif
new file mode 100755
index 0000000..98d80e5
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateICodeGenConfigInfo_InitialInstances_IAssociationClass.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateICodeGenConfigInfo_InitialInstances_IAttribute.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateICodeGenConfigInfo_InitialInstances_IAttribute.gif
new file mode 100755
index 0000000..1d9a8e9
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateICodeGenConfigInfo_InitialInstances_IAttribute.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateICodeGenConfigInfo_InitialInstances_IClass.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateICodeGenConfigInfo_InitialInstances_IClass.gif
new file mode 100755
index 0000000..84d6297
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateICodeGenConfigInfo_InitialInstances_IClass.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateICodeGenConfigInfo_InitialInstances_IClassifier.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateICodeGenConfigInfo_InitialInstances_IClassifier.gif
new file mode 100755
index 0000000..8949b1a
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateICodeGenConfigInfo_InitialInstances_IClassifier.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateICodeGenConfigInfo_InitialInstances_ICollaborationDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateICodeGenConfigInfo_InitialInstances_ICollaborationDiagram.gif
new file mode 100755
index 0000000..29e556e
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateICodeGenConfigInfo_InitialInstances_ICollaborationDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateICodeGenConfigInfo_InitialInstances_IComment.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateICodeGenConfigInfo_InitialInstances_IComment.gif
new file mode 100755
index 0000000..91bb42f
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateICodeGenConfigInfo_InitialInstances_IComment.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateICodeGenConfigInfo_InitialInstances_IComponent.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateICodeGenConfigInfo_InitialInstances_IComponent.gif
new file mode 100755
index 0000000..7738511
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateICodeGenConfigInfo_InitialInstances_IComponent.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateICodeGenConfigInfo_InitialInstances_IComponentDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateICodeGenConfigInfo_InitialInstances_IComponentDiagram.gif
new file mode 100755
index 0000000..5550cf3
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateICodeGenConfigInfo_InitialInstances_IComponentDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateICodeGenConfigInfo_InitialInstances_IConstraint.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateICodeGenConfigInfo_InitialInstances_IConstraint.gif
new file mode 100755
index 0000000..bc2d748
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateICodeGenConfigInfo_InitialInstances_IConstraint.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateICodeGenConfigInfo_InitialInstances_IControlledFile.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateICodeGenConfigInfo_InitialInstances_IControlledFile.gif
new file mode 100755
index 0000000..58b063b
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateICodeGenConfigInfo_InitialInstances_IControlledFile.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateICodeGenConfigInfo_InitialInstances_IDeploymentDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateICodeGenConfigInfo_InitialInstances_IDeploymentDiagram.gif
new file mode 100755
index 0000000..2c2ef1f
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateICodeGenConfigInfo_InitialInstances_IDeploymentDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateICodeGenConfigInfo_InitialInstances_IDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateICodeGenConfigInfo_InitialInstances_IDiagram.gif
new file mode 100755
index 0000000..3395195
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateICodeGenConfigInfo_InitialInstances_IDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateICodeGenConfigInfo_InitialInstances_IEvent.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateICodeGenConfigInfo_InitialInstances_IEvent.gif
new file mode 100755
index 0000000..7738511
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateICodeGenConfigInfo_InitialInstances_IEvent.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateICodeGenConfigInfo_InitialInstances_IEventReception.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateICodeGenConfigInfo_InitialInstances_IEventReception.gif
new file mode 100755
index 0000000..ceee52a
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateICodeGenConfigInfo_InitialInstances_IEventReception.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateICodeGenConfigInfo_InitialInstances_IFile.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateICodeGenConfigInfo_InitialInstances_IFile.gif
new file mode 100755
index 0000000..4368e6a
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateICodeGenConfigInfo_InitialInstances_IFile.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateICodeGenConfigInfo_InitialInstances_IFlowItem.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateICodeGenConfigInfo_InitialInstances_IFlowItem.gif
new file mode 100755
index 0000000..caaed52
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateICodeGenConfigInfo_InitialInstances_IFlowItem.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateICodeGenConfigInfo_InitialInstances_IInstance.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateICodeGenConfigInfo_InitialInstances_IInstance.gif
new file mode 100755
index 0000000..01d709d
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateICodeGenConfigInfo_InitialInstances_IInstance.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateICodeGenConfigInfo_InitialInstances_IInterfaceItem.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateICodeGenConfigInfo_InitialInstances_IInterfaceItem.gif
new file mode 100755
index 0000000..3395195
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateICodeGenConfigInfo_InitialInstances_IInterfaceItem.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateICodeGenConfigInfo_InitialInstances_ILink.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateICodeGenConfigInfo_InitialInstances_ILink.gif
new file mode 100755
index 0000000..e16ab2c
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateICodeGenConfigInfo_InitialInstances_ILink.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateICodeGenConfigInfo_InitialInstances_IMatrixLayout.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateICodeGenConfigInfo_InitialInstances_IMatrixLayout.gif
new file mode 100755
index 0000000..449ab3b
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateICodeGenConfigInfo_InitialInstances_IMatrixLayout.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateICodeGenConfigInfo_InitialInstances_IMatrixView.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateICodeGenConfigInfo_InitialInstances_IMatrixView.gif
new file mode 100755
index 0000000..7738511
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateICodeGenConfigInfo_InitialInstances_IMatrixView.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateICodeGenConfigInfo_InitialInstances_IModule.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateICodeGenConfigInfo_InitialInstances_IModule.gif
new file mode 100755
index 0000000..af44325
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateICodeGenConfigInfo_InitialInstances_IModule.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateICodeGenConfigInfo_InitialInstances_INode.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateICodeGenConfigInfo_InitialInstances_INode.gif
new file mode 100755
index 0000000..a64a033
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateICodeGenConfigInfo_InitialInstances_INode.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateICodeGenConfigInfo_InitialInstances_IObjectModelDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateICodeGenConfigInfo_InitialInstances_IObjectModelDiagram.gif
new file mode 100755
index 0000000..8341fe3
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateICodeGenConfigInfo_InitialInstances_IObjectModelDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateICodeGenConfigInfo_InitialInstances_IOperation.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateICodeGenConfigInfo_InitialInstances_IOperation.gif
new file mode 100755
index 0000000..2c2ef1f
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateICodeGenConfigInfo_InitialInstances_IOperation.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateICodeGenConfigInfo_InitialInstances_IPackage.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateICodeGenConfigInfo_InitialInstances_IPackage.gif
new file mode 100755
index 0000000..9099082
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateICodeGenConfigInfo_InitialInstances_IPackage.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateICodeGenConfigInfo_InitialInstances_IPanelDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateICodeGenConfigInfo_InitialInstances_IPanelDiagram.gif
new file mode 100755
index 0000000..4368e6a
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateICodeGenConfigInfo_InitialInstances_IPanelDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateICodeGenConfigInfo_InitialInstances_IPort.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateICodeGenConfigInfo_InitialInstances_IPort.gif
new file mode 100755
index 0000000..7738511
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateICodeGenConfigInfo_InitialInstances_IPort.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateICodeGenConfigInfo_InitialInstances_IProfile.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateICodeGenConfigInfo_InitialInstances_IProfile.gif
new file mode 100755
index 0000000..bc2d748
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateICodeGenConfigInfo_InitialInstances_IProfile.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateICodeGenConfigInfo_InitialInstances_IProject.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateICodeGenConfigInfo_InitialInstances_IProject.gif
new file mode 100755
index 0000000..cd8caad
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateICodeGenConfigInfo_InitialInstances_IProject.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateICodeGenConfigInfo_InitialInstances_IRelation.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateICodeGenConfigInfo_InitialInstances_IRelation.gif
new file mode 100755
index 0000000..95a741c
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateICodeGenConfigInfo_InitialInstances_IRelation.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateICodeGenConfigInfo_InitialInstances_IRequirement.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateICodeGenConfigInfo_InitialInstances_IRequirement.gif
new file mode 100755
index 0000000..78f72fb
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateICodeGenConfigInfo_InitialInstances_IRequirement.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateICodeGenConfigInfo_InitialInstances_ISequenceDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateICodeGenConfigInfo_InitialInstances_ISequenceDiagram.gif
new file mode 100755
index 0000000..d51b362
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateICodeGenConfigInfo_InitialInstances_ISequenceDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateICodeGenConfigInfo_InitialInstances_IStateChart.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateICodeGenConfigInfo_InitialInstances_IStateChart.gif
new file mode 100755
index 0000000..f496e2f
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateICodeGenConfigInfo_InitialInstances_IStateChart.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateICodeGenConfigInfo_InitialInstances_IStateChartDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateICodeGenConfigInfo_InitialInstances_IStateChartDiagram.gif
new file mode 100755
index 0000000..d51b362
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateICodeGenConfigInfo_InitialInstances_IStateChartDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateICodeGenConfigInfo_InitialInstances_IStereotype.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateICodeGenConfigInfo_InitialInstances_IStereotype.gif
new file mode 100755
index 0000000..78f72fb
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateICodeGenConfigInfo_InitialInstances_IStereotype.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateICodeGenConfigInfo_InitialInstances_IStructureDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateICodeGenConfigInfo_InitialInstances_IStructureDiagram.gif
new file mode 100755
index 0000000..a26e43a
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateICodeGenConfigInfo_InitialInstances_IStructureDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateICodeGenConfigInfo_InitialInstances_ISysMLPort.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateICodeGenConfigInfo_InitialInstances_ISysMLPort.gif
new file mode 100755
index 0000000..af44325
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateICodeGenConfigInfo_InitialInstances_ISysMLPort.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateICodeGenConfigInfo_InitialInstances_ITableLayout.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateICodeGenConfigInfo_InitialInstances_ITableLayout.gif
new file mode 100755
index 0000000..3395195
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateICodeGenConfigInfo_InitialInstances_ITableLayout.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateICodeGenConfigInfo_InitialInstances_ITableView.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateICodeGenConfigInfo_InitialInstances_ITableView.gif
new file mode 100755
index 0000000..d51b362
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateICodeGenConfigInfo_InitialInstances_ITableView.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateICodeGenConfigInfo_InitialInstances_ITag.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateICodeGenConfigInfo_InitialInstances_ITag.gif
new file mode 100755
index 0000000..1dd69bb
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateICodeGenConfigInfo_InitialInstances_ITag.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateICodeGenConfigInfo_InitialInstances_ITemplateParameter.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateICodeGenConfigInfo_InitialInstances_ITemplateParameter.gif
new file mode 100755
index 0000000..8341fe3
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateICodeGenConfigInfo_InitialInstances_ITemplateParameter.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateICodeGenConfigInfo_InitialInstances_IType.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateICodeGenConfigInfo_InitialInstances_IType.gif
new file mode 100755
index 0000000..c0e9a18
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateICodeGenConfigInfo_InitialInstances_IType.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateICodeGenConfigInfo_InitialInstances_IUnit.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateICodeGenConfigInfo_InitialInstances_IUnit.gif
new file mode 100755
index 0000000..fbc81ee
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateICodeGenConfigInfo_InitialInstances_IUnit.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateICodeGenConfigInfo_InitialInstances_IUseCase.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateICodeGenConfigInfo_InitialInstances_IUseCase.gif
new file mode 100755
index 0000000..5550cf3
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateICodeGenConfigInfo_InitialInstances_IUseCase.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateICodeGenConfigInfo_InitialInstances_IUseCaseDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateICodeGenConfigInfo_InitialInstances_IUseCaseDiagram.gif
new file mode 100755
index 0000000..91bb42f
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateICodeGenConfigInfo_InitialInstances_IUseCaseDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateICodeGenConfigInfo_InitialInstances_IVariable.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateICodeGenConfigInfo_InitialInstances_IVariable.gif
new file mode 100755
index 0000000..d51b362
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateICodeGenConfigInfo_InitialInstances_IVariable.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateICodeGenConfigInfo_Stereotypes_IActor.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateICodeGenConfigInfo_Stereotypes_IActor.gif
new file mode 100755
index 0000000..b6c9d48
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateICodeGenConfigInfo_Stereotypes_IActor.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateICodeGenConfigInfo_Stereotypes_IAssociationClass.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateICodeGenConfigInfo_Stereotypes_IAssociationClass.gif
new file mode 100755
index 0000000..98d80e5
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateICodeGenConfigInfo_Stereotypes_IAssociationClass.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateICodeGenConfigInfo_Stereotypes_IClass.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateICodeGenConfigInfo_Stereotypes_IClass.gif
new file mode 100755
index 0000000..84d6297
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateICodeGenConfigInfo_Stereotypes_IClass.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateICodeGenConfigInfo_Stereotypes_IClassifier.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateICodeGenConfigInfo_Stereotypes_IClassifier.gif
new file mode 100755
index 0000000..8949b1a
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateICodeGenConfigInfo_Stereotypes_IClassifier.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateICodeGenConfigInfo_Stereotypes_IEvent.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateICodeGenConfigInfo_Stereotypes_IEvent.gif
new file mode 100755
index 0000000..7738511
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateICodeGenConfigInfo_Stereotypes_IEvent.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateICodeGenConfigInfo_Stereotypes_IEventReception.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateICodeGenConfigInfo_Stereotypes_IEventReception.gif
new file mode 100755
index 0000000..ceee52a
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateICodeGenConfigInfo_Stereotypes_IEventReception.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateICodeGenConfigInfo_Stereotypes_IFlowItem.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateICodeGenConfigInfo_Stereotypes_IFlowItem.gif
new file mode 100755
index 0000000..caaed52
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateICodeGenConfigInfo_Stereotypes_IFlowItem.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateICodeGenConfigInfo_Stereotypes_IInterfaceItem.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateICodeGenConfigInfo_Stereotypes_IInterfaceItem.gif
new file mode 100755
index 0000000..3395195
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateICodeGenConfigInfo_Stereotypes_IInterfaceItem.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateICodeGenConfigInfo_Stereotypes_INode.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateICodeGenConfigInfo_Stereotypes_INode.gif
new file mode 100755
index 0000000..a64a033
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateICodeGenConfigInfo_Stereotypes_INode.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateICodeGenConfigInfo_Stereotypes_IOperation.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateICodeGenConfigInfo_Stereotypes_IOperation.gif
new file mode 100755
index 0000000..2c2ef1f
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateICodeGenConfigInfo_Stereotypes_IOperation.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateICodeGenConfigInfo_Stereotypes_IStateChart.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateICodeGenConfigInfo_Stereotypes_IStateChart.gif
new file mode 100755
index 0000000..f496e2f
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateICodeGenConfigInfo_Stereotypes_IStateChart.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateICodeGenConfigInfo_Stereotypes_IStereotype.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateICodeGenConfigInfo_Stereotypes_IStereotype.gif
new file mode 100755
index 0000000..78f72fb
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateICodeGenConfigInfo_Stereotypes_IStereotype.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateICodeGenConfigInfo_Stereotypes_IType.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateICodeGenConfigInfo_Stereotypes_IType.gif
new file mode 100755
index 0000000..c0e9a18
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateICodeGenConfigInfo_Stereotypes_IType.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateICodeGenConfigInfo_Stereotypes_IUseCase.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateICodeGenConfigInfo_Stereotypes_IUseCase.gif
new file mode 100755
index 0000000..5550cf3
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateICodeGenConfigInfo_Stereotypes_IUseCase.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateICodeGenConfigInfo_Tags_ITag.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateICodeGenConfigInfo_Tags_ITag.gif
new file mode 100755
index 0000000..1dd69bb
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateICodeGenConfigInfo_Tags_ITag.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateICodeGenConfigInfo_description_IDescription.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateICodeGenConfigInfo_description_IDescription.gif
new file mode 100755
index 0000000..91bb42f
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateICodeGenConfigInfo_description_IDescription.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateICodeGenConfigInfo_properties_IPropertyContainer.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateICodeGenConfigInfo_properties_IPropertyContainer.gif
new file mode 100755
index 0000000..7db9338
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateICodeGenConfigInfo_properties_IPropertyContainer.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateICodeGenConfigInfo_root_IFolder.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateICodeGenConfigInfo_root_IFolder.gif
new file mode 100755
index 0000000..c0e9a18
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateICodeGenConfigInfo_root_IFolder.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateICollaborationDiagram_m_pICollaboration_ICollaboration.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateICollaborationDiagram_m_pICollaboration_ICollaboration.gif
new file mode 100755
index 0000000..6f2f9e7
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateICollaborationDiagram_m_pICollaboration_ICollaboration.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateICollaborationDiagram_m_pICollaboration_IInteractionOperand.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateICollaborationDiagram_m_pICollaboration_IInteractionOperand.gif
new file mode 100755
index 0000000..993d859
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateICollaborationDiagram_m_pICollaboration_IInteractionOperand.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateICollaboration_Annotations_IConstraint.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateICollaboration_Annotations_IConstraint.gif
new file mode 100755
index 0000000..01f032e
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateICollaboration_Annotations_IConstraint.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateICollaboration_AssociationRoles_IAssociationRole.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateICollaboration_AssociationRoles_IAssociationRole.gif
new file mode 100755
index 0000000..bd5468c
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateICollaboration_AssociationRoles_IAssociationRole.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateICollaboration_ClassifierRoles_IClassifierRole.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateICollaboration_ClassifierRoles_IClassifierRole.gif
new file mode 100755
index 0000000..6427008
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateICollaboration_ClassifierRoles_IClassifierRole.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateICollaboration_CombinedFragments_ICombinedFragment.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateICollaboration_CombinedFragments_ICombinedFragment.gif
new file mode 100755
index 0000000..27cf4fd
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateICollaboration_CombinedFragments_ICombinedFragment.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateICollaboration_ExecutionOccurrences_IExecutionOccurrence.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateICollaboration_ExecutionOccurrences_IExecutionOccurrence.gif
new file mode 100755
index 0000000..acadf38
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateICollaboration_ExecutionOccurrences_IExecutionOccurrence.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateICollaboration_InteractionOccurrences_IInteractionOccurrence.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateICollaboration_InteractionOccurrences_IInteractionOccurrence.gif
new file mode 100755
index 0000000..b9b5d9f
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateICollaboration_InteractionOccurrences_IInteractionOccurrence.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateICollaboration_Messages_IMessage.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateICollaboration_Messages_IMessage.gif
new file mode 100755
index 0000000..3b8968f
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateICollaboration_Messages_IMessage.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateICollaboration_p_MessageHandler_CollEvent.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateICollaboration_p_MessageHandler_CollEvent.gif
new file mode 100755
index 0000000..9a2800c
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateICollaboration_p_MessageHandler_CollEvent.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateICombinedFragment_InteractionOperands_IInteractionOperand.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateICombinedFragment_InteractionOperands_IInteractionOperand.gif
new file mode 100755
index 0000000..52da918
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateICombinedFragment_InteractionOperands_IInteractionOperand.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateICombinedFragment_Stereotypes_IStereotype.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateICombinedFragment_Stereotypes_IStereotype.gif
new file mode 100755
index 0000000..9c2caa0
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateICombinedFragment_Stereotypes_IStereotype.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateICombinedFragment_Tags_ITag.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateICombinedFragment_Tags_ITag.gif
new file mode 100755
index 0000000..8ab34c6
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateICombinedFragment_Tags_ITag.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComment_Anchors_IAnchor.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComment_Anchors_IAnchor.gif
new file mode 100755
index 0000000..758dafb
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComment_Anchors_IAnchor.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComment_Dependencies_IDependency.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComment_Dependencies_IDependency.gif
new file mode 100755
index 0000000..9f85940
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComment_Dependencies_IDependency.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComment_Dependencies_IHyperLink.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComment_Dependencies_IHyperLink.gif
new file mode 100755
index 0000000..1cda1f2
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComment_Dependencies_IHyperLink.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComment_HyperLinks_IMHyperLink.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComment_HyperLinks_IMHyperLink.gif
new file mode 100755
index 0000000..753b7fa
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComment_HyperLinks_IMHyperLink.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComment_Stereotypes_IActor.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComment_Stereotypes_IActor.gif
new file mode 100755
index 0000000..2d4c8b5
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComment_Stereotypes_IActor.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComment_Stereotypes_IAssociationClass.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComment_Stereotypes_IAssociationClass.gif
new file mode 100755
index 0000000..f418bb9
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComment_Stereotypes_IAssociationClass.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComment_Stereotypes_IClass.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComment_Stereotypes_IClass.gif
new file mode 100755
index 0000000..457a698
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComment_Stereotypes_IClass.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComment_Stereotypes_IClassifier.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComment_Stereotypes_IClassifier.gif
new file mode 100755
index 0000000..f4f7152
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComment_Stereotypes_IClassifier.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComment_Stereotypes_IEvent.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComment_Stereotypes_IEvent.gif
new file mode 100755
index 0000000..1413888
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComment_Stereotypes_IEvent.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComment_Stereotypes_IEventReception.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComment_Stereotypes_IEventReception.gif
new file mode 100755
index 0000000..7aaf033
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComment_Stereotypes_IEventReception.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComment_Stereotypes_IFlowItem.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComment_Stereotypes_IFlowItem.gif
new file mode 100755
index 0000000..d39e9f1
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComment_Stereotypes_IFlowItem.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComment_Stereotypes_IInterfaceItem.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComment_Stereotypes_IInterfaceItem.gif
new file mode 100755
index 0000000..43bee18
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComment_Stereotypes_IInterfaceItem.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComment_Stereotypes_INode.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComment_Stereotypes_INode.gif
new file mode 100755
index 0000000..f52d6a9
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComment_Stereotypes_INode.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComment_Stereotypes_IOperation.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComment_Stereotypes_IOperation.gif
new file mode 100755
index 0000000..6a3b903
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComment_Stereotypes_IOperation.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComment_Stereotypes_IStateChart.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComment_Stereotypes_IStateChart.gif
new file mode 100755
index 0000000..1cda1f2
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComment_Stereotypes_IStateChart.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComment_Stereotypes_IStereotype.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComment_Stereotypes_IStereotype.gif
new file mode 100755
index 0000000..9c2caa0
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComment_Stereotypes_IStereotype.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComment_Stereotypes_IType.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComment_Stereotypes_IType.gif
new file mode 100755
index 0000000..d4308a5
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComment_Stereotypes_IType.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComment_Stereotypes_IUseCase.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComment_Stereotypes_IUseCase.gif
new file mode 100755
index 0000000..bc1868f
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComment_Stereotypes_IUseCase.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComment_properties_IPropertyContainer.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComment_properties_IPropertyContainer.gif
new file mode 100755
index 0000000..20e5447
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComment_properties_IPropertyContainer.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_Configs_ICodeGenConfigInfo.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_Configs_ICodeGenConfigInfo.gif
new file mode 100755
index 0000000..b6ab7ef
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_Configs_ICodeGenConfigInfo.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_Declaratives_IActor.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_Declaratives_IActor.gif
new file mode 100755
index 0000000..9422192
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_Declaratives_IActor.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_Declaratives_IAnnotation.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_Declaratives_IAnnotation.gif
new file mode 100755
index 0000000..57d043b
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_Declaratives_IAnnotation.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_Declaratives_IArgument.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_Declaratives_IArgument.gif
new file mode 100755
index 0000000..1934e25
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_Declaratives_IArgument.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_Declaratives_IAssociationClass.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_Declaratives_IAssociationClass.gif
new file mode 100755
index 0000000..788abfe
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_Declaratives_IAssociationClass.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_Declaratives_IAttribute.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_Declaratives_IAttribute.gif
new file mode 100755
index 0000000..9a956d1
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_Declaratives_IAttribute.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_Declaratives_IClass.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_Declaratives_IClass.gif
new file mode 100755
index 0000000..9e7c2fb
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_Declaratives_IClass.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_Declaratives_IClassifier.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_Declaratives_IClassifier.gif
new file mode 100755
index 0000000..3f8b79e
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_Declaratives_IClassifier.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_Declaratives_ICollaborationDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_Declaratives_ICollaborationDiagram.gif
new file mode 100755
index 0000000..de4ddbb
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_Declaratives_ICollaborationDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_Declaratives_IComment.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_Declaratives_IComment.gif
new file mode 100755
index 0000000..479ecaf
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_Declaratives_IComment.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_Declaratives_IComponent.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_Declaratives_IComponent.gif
new file mode 100755
index 0000000..2de871f
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_Declaratives_IComponent.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_Declaratives_IComponentDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_Declaratives_IComponentDiagram.gif
new file mode 100755
index 0000000..1934e25
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_Declaratives_IComponentDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_Declaratives_IConstraint.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_Declaratives_IConstraint.gif
new file mode 100755
index 0000000..b9300d3
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_Declaratives_IConstraint.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_Declaratives_IControlledFile.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_Declaratives_IControlledFile.gif
new file mode 100755
index 0000000..2b85698
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_Declaratives_IControlledFile.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_Declaratives_IDeploymentDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_Declaratives_IDeploymentDiagram.gif
new file mode 100755
index 0000000..ee9dd19
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_Declaratives_IDeploymentDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_Declaratives_IDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_Declaratives_IDiagram.gif
new file mode 100755
index 0000000..7d37ab4
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_Declaratives_IDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_Declaratives_IEvent.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_Declaratives_IEvent.gif
new file mode 100755
index 0000000..2de871f
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_Declaratives_IEvent.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_Declaratives_IEventReception.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_Declaratives_IEventReception.gif
new file mode 100755
index 0000000..b597f08
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_Declaratives_IEventReception.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_Declaratives_IFile.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_Declaratives_IFile.gif
new file mode 100755
index 0000000..5a816ab
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_Declaratives_IFile.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_Declaratives_IFlowItem.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_Declaratives_IFlowItem.gif
new file mode 100755
index 0000000..f0e999e
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_Declaratives_IFlowItem.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_Declaratives_IInstance.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_Declaratives_IInstance.gif
new file mode 100755
index 0000000..5ab63a0
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_Declaratives_IInstance.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_Declaratives_IInterfaceItem.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_Declaratives_IInterfaceItem.gif
new file mode 100755
index 0000000..7d37ab4
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_Declaratives_IInterfaceItem.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_Declaratives_ILink.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_Declaratives_ILink.gif
new file mode 100755
index 0000000..e0a7f3a
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_Declaratives_ILink.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_Declaratives_IMatrixLayout.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_Declaratives_IMatrixLayout.gif
new file mode 100755
index 0000000..ff9c9a0
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_Declaratives_IMatrixLayout.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_Declaratives_IMatrixView.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_Declaratives_IMatrixView.gif
new file mode 100755
index 0000000..2de871f
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_Declaratives_IMatrixView.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_Declaratives_IModule.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_Declaratives_IModule.gif
new file mode 100755
index 0000000..e891a2b
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_Declaratives_IModule.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_Declaratives_INode.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_Declaratives_INode.gif
new file mode 100755
index 0000000..b2f886a
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_Declaratives_INode.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_Declaratives_IObjectModelDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_Declaratives_IObjectModelDiagram.gif
new file mode 100755
index 0000000..12131f2
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_Declaratives_IObjectModelDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_Declaratives_IOperation.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_Declaratives_IOperation.gif
new file mode 100755
index 0000000..ee9dd19
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_Declaratives_IOperation.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_Declaratives_IPackage.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_Declaratives_IPackage.gif
new file mode 100755
index 0000000..14ad125
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_Declaratives_IPackage.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_Declaratives_IPanelDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_Declaratives_IPanelDiagram.gif
new file mode 100755
index 0000000..5a816ab
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_Declaratives_IPanelDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_Declaratives_IPort.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_Declaratives_IPort.gif
new file mode 100755
index 0000000..2de871f
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_Declaratives_IPort.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_Declaratives_IProfile.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_Declaratives_IProfile.gif
new file mode 100755
index 0000000..b9300d3
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_Declaratives_IProfile.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_Declaratives_IProject.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_Declaratives_IProject.gif
new file mode 100755
index 0000000..bda736b
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_Declaratives_IProject.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_Declaratives_IRelation.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_Declaratives_IRelation.gif
new file mode 100755
index 0000000..78ca278
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_Declaratives_IRelation.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_Declaratives_IRequirement.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_Declaratives_IRequirement.gif
new file mode 100755
index 0000000..486225e
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_Declaratives_IRequirement.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_Declaratives_ISequenceDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_Declaratives_ISequenceDiagram.gif
new file mode 100755
index 0000000..3f2250f
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_Declaratives_ISequenceDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_Declaratives_IStateChart.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_Declaratives_IStateChart.gif
new file mode 100755
index 0000000..c14b909
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_Declaratives_IStateChart.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_Declaratives_IStateChartDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_Declaratives_IStateChartDiagram.gif
new file mode 100755
index 0000000..3f2250f
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_Declaratives_IStateChartDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_Declaratives_IStereotype.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_Declaratives_IStereotype.gif
new file mode 100755
index 0000000..486225e
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_Declaratives_IStereotype.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_Declaratives_IStructureDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_Declaratives_IStructureDiagram.gif
new file mode 100755
index 0000000..57d043b
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_Declaratives_IStructureDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_Declaratives_ISysMLPort.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_Declaratives_ISysMLPort.gif
new file mode 100755
index 0000000..e891a2b
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_Declaratives_ISysMLPort.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_Declaratives_ITableLayout.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_Declaratives_ITableLayout.gif
new file mode 100755
index 0000000..7d37ab4
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_Declaratives_ITableLayout.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_Declaratives_ITableView.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_Declaratives_ITableView.gif
new file mode 100755
index 0000000..3f2250f
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_Declaratives_ITableView.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_Declaratives_ITag.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_Declaratives_ITag.gif
new file mode 100755
index 0000000..c6c7731
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_Declaratives_ITag.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_Declaratives_ITemplateParameter.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_Declaratives_ITemplateParameter.gif
new file mode 100755
index 0000000..12131f2
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_Declaratives_ITemplateParameter.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_Declaratives_IType.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_Declaratives_IType.gif
new file mode 100755
index 0000000..82f3250
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_Declaratives_IType.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_Declaratives_IUnit.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_Declaratives_IUnit.gif
new file mode 100755
index 0000000..207c470
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_Declaratives_IUnit.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_Declaratives_IUseCase.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_Declaratives_IUseCase.gif
new file mode 100755
index 0000000..1934e25
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_Declaratives_IUseCase.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_Declaratives_IUseCaseDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_Declaratives_IUseCaseDiagram.gif
new file mode 100755
index 0000000..479ecaf
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_Declaratives_IUseCaseDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_Declaratives_IVariable.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_Declaratives_IVariable.gif
new file mode 100755
index 0000000..3f2250f
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_Declaratives_IVariable.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_Dependencies_IDependency.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_Dependencies_IDependency.gif
new file mode 100755
index 0000000..7118da1
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_Dependencies_IDependency.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_Dependencies_IHyperLink.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_Dependencies_IHyperLink.gif
new file mode 100755
index 0000000..c14b909
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_Dependencies_IHyperLink.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_HandlesInMe_IComponent.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_HandlesInMe_IComponent.gif
new file mode 100755
index 0000000..2de871f
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_HandlesInMe_IComponent.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_HandlesInMe_IProfile.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_HandlesInMe_IProfile.gif
new file mode 100755
index 0000000..b9300d3
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_HandlesInMe_IProfile.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_HandlesInMe_ISubsystem.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_HandlesInMe_ISubsystem.gif
new file mode 100755
index 0000000..5ab63a0
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_HandlesInMe_ISubsystem.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_HyperLinks_IMHyperLink.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_HyperLinks_IMHyperLink.gif
new file mode 100755
index 0000000..aea4252
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_HyperLinks_IMHyperLink.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_SelectedVariants_IActor.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_SelectedVariants_IActor.gif
new file mode 100755
index 0000000..9422192
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_SelectedVariants_IActor.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_SelectedVariants_IAnnotation.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_SelectedVariants_IAnnotation.gif
new file mode 100755
index 0000000..57d043b
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_SelectedVariants_IAnnotation.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_SelectedVariants_IArgument.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_SelectedVariants_IArgument.gif
new file mode 100755
index 0000000..1934e25
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_SelectedVariants_IArgument.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_SelectedVariants_IAssociationClass.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_SelectedVariants_IAssociationClass.gif
new file mode 100755
index 0000000..788abfe
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_SelectedVariants_IAssociationClass.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_SelectedVariants_IAttribute.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_SelectedVariants_IAttribute.gif
new file mode 100755
index 0000000..9a956d1
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_SelectedVariants_IAttribute.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_SelectedVariants_IClass.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_SelectedVariants_IClass.gif
new file mode 100755
index 0000000..9e7c2fb
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_SelectedVariants_IClass.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_SelectedVariants_IClassifier.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_SelectedVariants_IClassifier.gif
new file mode 100755
index 0000000..3f8b79e
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_SelectedVariants_IClassifier.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_SelectedVariants_ICollaborationDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_SelectedVariants_ICollaborationDiagram.gif
new file mode 100755
index 0000000..de4ddbb
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_SelectedVariants_ICollaborationDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_SelectedVariants_IComment.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_SelectedVariants_IComment.gif
new file mode 100755
index 0000000..479ecaf
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_SelectedVariants_IComment.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_SelectedVariants_IComponent.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_SelectedVariants_IComponent.gif
new file mode 100755
index 0000000..2de871f
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_SelectedVariants_IComponent.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_SelectedVariants_IComponentDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_SelectedVariants_IComponentDiagram.gif
new file mode 100755
index 0000000..1934e25
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_SelectedVariants_IComponentDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_SelectedVariants_IConstraint.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_SelectedVariants_IConstraint.gif
new file mode 100755
index 0000000..b9300d3
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_SelectedVariants_IConstraint.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_SelectedVariants_IControlledFile.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_SelectedVariants_IControlledFile.gif
new file mode 100755
index 0000000..2b85698
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_SelectedVariants_IControlledFile.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_SelectedVariants_IDeploymentDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_SelectedVariants_IDeploymentDiagram.gif
new file mode 100755
index 0000000..ee9dd19
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_SelectedVariants_IDeploymentDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_SelectedVariants_IDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_SelectedVariants_IDiagram.gif
new file mode 100755
index 0000000..7d37ab4
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_SelectedVariants_IDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_SelectedVariants_IEvent.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_SelectedVariants_IEvent.gif
new file mode 100755
index 0000000..2de871f
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_SelectedVariants_IEvent.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_SelectedVariants_IEventReception.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_SelectedVariants_IEventReception.gif
new file mode 100755
index 0000000..b597f08
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_SelectedVariants_IEventReception.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_SelectedVariants_IFile.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_SelectedVariants_IFile.gif
new file mode 100755
index 0000000..5a816ab
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_SelectedVariants_IFile.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_SelectedVariants_IFlowItem.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_SelectedVariants_IFlowItem.gif
new file mode 100755
index 0000000..f0e999e
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_SelectedVariants_IFlowItem.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_SelectedVariants_IInstance.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_SelectedVariants_IInstance.gif
new file mode 100755
index 0000000..5ab63a0
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_SelectedVariants_IInstance.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_SelectedVariants_IInterfaceItem.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_SelectedVariants_IInterfaceItem.gif
new file mode 100755
index 0000000..7d37ab4
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_SelectedVariants_IInterfaceItem.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_SelectedVariants_ILink.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_SelectedVariants_ILink.gif
new file mode 100755
index 0000000..e0a7f3a
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_SelectedVariants_ILink.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_SelectedVariants_IMatrixLayout.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_SelectedVariants_IMatrixLayout.gif
new file mode 100755
index 0000000..ff9c9a0
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_SelectedVariants_IMatrixLayout.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_SelectedVariants_IMatrixView.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_SelectedVariants_IMatrixView.gif
new file mode 100755
index 0000000..2de871f
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_SelectedVariants_IMatrixView.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_SelectedVariants_IModule.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_SelectedVariants_IModule.gif
new file mode 100755
index 0000000..e891a2b
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_SelectedVariants_IModule.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_SelectedVariants_INode.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_SelectedVariants_INode.gif
new file mode 100755
index 0000000..b2f886a
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_SelectedVariants_INode.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_SelectedVariants_IObjectModelDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_SelectedVariants_IObjectModelDiagram.gif
new file mode 100755
index 0000000..12131f2
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_SelectedVariants_IObjectModelDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_SelectedVariants_IOperation.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_SelectedVariants_IOperation.gif
new file mode 100755
index 0000000..ee9dd19
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_SelectedVariants_IOperation.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_SelectedVariants_IPackage.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_SelectedVariants_IPackage.gif
new file mode 100755
index 0000000..14ad125
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_SelectedVariants_IPackage.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_SelectedVariants_IPanelDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_SelectedVariants_IPanelDiagram.gif
new file mode 100755
index 0000000..5a816ab
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_SelectedVariants_IPanelDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_SelectedVariants_IPort.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_SelectedVariants_IPort.gif
new file mode 100755
index 0000000..2de871f
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_SelectedVariants_IPort.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_SelectedVariants_IProfile.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_SelectedVariants_IProfile.gif
new file mode 100755
index 0000000..b9300d3
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_SelectedVariants_IProfile.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_SelectedVariants_IProject.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_SelectedVariants_IProject.gif
new file mode 100755
index 0000000..bda736b
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_SelectedVariants_IProject.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_SelectedVariants_IRelation.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_SelectedVariants_IRelation.gif
new file mode 100755
index 0000000..78ca278
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_SelectedVariants_IRelation.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_SelectedVariants_IRequirement.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_SelectedVariants_IRequirement.gif
new file mode 100755
index 0000000..486225e
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_SelectedVariants_IRequirement.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_SelectedVariants_ISequenceDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_SelectedVariants_ISequenceDiagram.gif
new file mode 100755
index 0000000..3f2250f
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_SelectedVariants_ISequenceDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_SelectedVariants_IStateChart.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_SelectedVariants_IStateChart.gif
new file mode 100755
index 0000000..c14b909
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_SelectedVariants_IStateChart.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_SelectedVariants_IStateChartDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_SelectedVariants_IStateChartDiagram.gif
new file mode 100755
index 0000000..3f2250f
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_SelectedVariants_IStateChartDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_SelectedVariants_IStereotype.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_SelectedVariants_IStereotype.gif
new file mode 100755
index 0000000..486225e
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_SelectedVariants_IStereotype.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_SelectedVariants_IStructureDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_SelectedVariants_IStructureDiagram.gif
new file mode 100755
index 0000000..57d043b
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_SelectedVariants_IStructureDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_SelectedVariants_ISysMLPort.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_SelectedVariants_ISysMLPort.gif
new file mode 100755
index 0000000..e891a2b
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_SelectedVariants_ISysMLPort.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_SelectedVariants_ITableLayout.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_SelectedVariants_ITableLayout.gif
new file mode 100755
index 0000000..7d37ab4
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_SelectedVariants_ITableLayout.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_SelectedVariants_ITableView.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_SelectedVariants_ITableView.gif
new file mode 100755
index 0000000..3f2250f
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_SelectedVariants_ITableView.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_SelectedVariants_ITag.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_SelectedVariants_ITag.gif
new file mode 100755
index 0000000..c6c7731
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_SelectedVariants_ITag.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_SelectedVariants_ITemplateParameter.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_SelectedVariants_ITemplateParameter.gif
new file mode 100755
index 0000000..12131f2
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_SelectedVariants_ITemplateParameter.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_SelectedVariants_IType.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_SelectedVariants_IType.gif
new file mode 100755
index 0000000..82f3250
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_SelectedVariants_IType.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_SelectedVariants_IUnit.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_SelectedVariants_IUnit.gif
new file mode 100755
index 0000000..207c470
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_SelectedVariants_IUnit.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_SelectedVariants_IUseCase.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_SelectedVariants_IUseCase.gif
new file mode 100755
index 0000000..1934e25
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_SelectedVariants_IUseCase.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_SelectedVariants_IUseCaseDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_SelectedVariants_IUseCaseDiagram.gif
new file mode 100755
index 0000000..479ecaf
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_SelectedVariants_IUseCaseDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_SelectedVariants_IVariable.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_SelectedVariants_IVariable.gif
new file mode 100755
index 0000000..3f2250f
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_SelectedVariants_IVariable.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_Stereotypes_IActor.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_Stereotypes_IActor.gif
new file mode 100755
index 0000000..9422192
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_Stereotypes_IActor.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_Stereotypes_IAssociationClass.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_Stereotypes_IAssociationClass.gif
new file mode 100755
index 0000000..788abfe
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_Stereotypes_IAssociationClass.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_Stereotypes_IClass.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_Stereotypes_IClass.gif
new file mode 100755
index 0000000..9e7c2fb
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_Stereotypes_IClass.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_Stereotypes_IClassifier.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_Stereotypes_IClassifier.gif
new file mode 100755
index 0000000..3f8b79e
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_Stereotypes_IClassifier.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_Stereotypes_IEvent.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_Stereotypes_IEvent.gif
new file mode 100755
index 0000000..2de871f
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_Stereotypes_IEvent.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_Stereotypes_IEventReception.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_Stereotypes_IEventReception.gif
new file mode 100755
index 0000000..b597f08
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_Stereotypes_IEventReception.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_Stereotypes_IFlowItem.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_Stereotypes_IFlowItem.gif
new file mode 100755
index 0000000..f0e999e
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_Stereotypes_IFlowItem.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_Stereotypes_IInterfaceItem.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_Stereotypes_IInterfaceItem.gif
new file mode 100755
index 0000000..7d37ab4
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_Stereotypes_IInterfaceItem.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_Stereotypes_INode.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_Stereotypes_INode.gif
new file mode 100755
index 0000000..b2f886a
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_Stereotypes_INode.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_Stereotypes_IOperation.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_Stereotypes_IOperation.gif
new file mode 100755
index 0000000..ee9dd19
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_Stereotypes_IOperation.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_Stereotypes_IStateChart.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_Stereotypes_IStateChart.gif
new file mode 100755
index 0000000..c14b909
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_Stereotypes_IStateChart.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_Stereotypes_IStereotype.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_Stereotypes_IStereotype.gif
new file mode 100755
index 0000000..486225e
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_Stereotypes_IStereotype.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_Stereotypes_IType.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_Stereotypes_IType.gif
new file mode 100755
index 0000000..82f3250
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_Stereotypes_IType.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_Stereotypes_IUseCase.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_Stereotypes_IUseCase.gif
new file mode 100755
index 0000000..1934e25
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_Stereotypes_IUseCase.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_VariationPoints_IActor.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_VariationPoints_IActor.gif
new file mode 100755
index 0000000..9422192
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_VariationPoints_IActor.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_VariationPoints_IAnnotation.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_VariationPoints_IAnnotation.gif
new file mode 100755
index 0000000..57d043b
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_VariationPoints_IAnnotation.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_VariationPoints_IArgument.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_VariationPoints_IArgument.gif
new file mode 100755
index 0000000..1934e25
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_VariationPoints_IArgument.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_VariationPoints_IAssociationClass.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_VariationPoints_IAssociationClass.gif
new file mode 100755
index 0000000..788abfe
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_VariationPoints_IAssociationClass.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_VariationPoints_IAttribute.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_VariationPoints_IAttribute.gif
new file mode 100755
index 0000000..9a956d1
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_VariationPoints_IAttribute.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_VariationPoints_IClass.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_VariationPoints_IClass.gif
new file mode 100755
index 0000000..9e7c2fb
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_VariationPoints_IClass.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_VariationPoints_IClassifier.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_VariationPoints_IClassifier.gif
new file mode 100755
index 0000000..3f8b79e
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_VariationPoints_IClassifier.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_VariationPoints_ICollaborationDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_VariationPoints_ICollaborationDiagram.gif
new file mode 100755
index 0000000..de4ddbb
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_VariationPoints_ICollaborationDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_VariationPoints_IComment.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_VariationPoints_IComment.gif
new file mode 100755
index 0000000..479ecaf
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_VariationPoints_IComment.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_VariationPoints_IComponent.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_VariationPoints_IComponent.gif
new file mode 100755
index 0000000..2de871f
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_VariationPoints_IComponent.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_VariationPoints_IComponentDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_VariationPoints_IComponentDiagram.gif
new file mode 100755
index 0000000..1934e25
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_VariationPoints_IComponentDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_VariationPoints_IConstraint.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_VariationPoints_IConstraint.gif
new file mode 100755
index 0000000..b9300d3
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_VariationPoints_IConstraint.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_VariationPoints_IControlledFile.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_VariationPoints_IControlledFile.gif
new file mode 100755
index 0000000..2b85698
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_VariationPoints_IControlledFile.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_VariationPoints_IDeploymentDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_VariationPoints_IDeploymentDiagram.gif
new file mode 100755
index 0000000..ee9dd19
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_VariationPoints_IDeploymentDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_VariationPoints_IDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_VariationPoints_IDiagram.gif
new file mode 100755
index 0000000..7d37ab4
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_VariationPoints_IDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_VariationPoints_IEvent.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_VariationPoints_IEvent.gif
new file mode 100755
index 0000000..2de871f
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_VariationPoints_IEvent.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_VariationPoints_IEventReception.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_VariationPoints_IEventReception.gif
new file mode 100755
index 0000000..b597f08
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_VariationPoints_IEventReception.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_VariationPoints_IFile.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_VariationPoints_IFile.gif
new file mode 100755
index 0000000..5a816ab
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_VariationPoints_IFile.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_VariationPoints_IFlowItem.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_VariationPoints_IFlowItem.gif
new file mode 100755
index 0000000..f0e999e
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_VariationPoints_IFlowItem.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_VariationPoints_IInstance.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_VariationPoints_IInstance.gif
new file mode 100755
index 0000000..5ab63a0
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_VariationPoints_IInstance.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_VariationPoints_IInterfaceItem.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_VariationPoints_IInterfaceItem.gif
new file mode 100755
index 0000000..7d37ab4
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_VariationPoints_IInterfaceItem.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_VariationPoints_ILink.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_VariationPoints_ILink.gif
new file mode 100755
index 0000000..e0a7f3a
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_VariationPoints_ILink.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_VariationPoints_IMatrixLayout.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_VariationPoints_IMatrixLayout.gif
new file mode 100755
index 0000000..ff9c9a0
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_VariationPoints_IMatrixLayout.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_VariationPoints_IMatrixView.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_VariationPoints_IMatrixView.gif
new file mode 100755
index 0000000..2de871f
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_VariationPoints_IMatrixView.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_VariationPoints_IModule.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_VariationPoints_IModule.gif
new file mode 100755
index 0000000..e891a2b
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_VariationPoints_IModule.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_VariationPoints_INode.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_VariationPoints_INode.gif
new file mode 100755
index 0000000..b2f886a
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_VariationPoints_INode.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_VariationPoints_IObjectModelDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_VariationPoints_IObjectModelDiagram.gif
new file mode 100755
index 0000000..12131f2
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_VariationPoints_IObjectModelDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_VariationPoints_IOperation.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_VariationPoints_IOperation.gif
new file mode 100755
index 0000000..ee9dd19
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_VariationPoints_IOperation.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_VariationPoints_IPackage.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_VariationPoints_IPackage.gif
new file mode 100755
index 0000000..14ad125
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_VariationPoints_IPackage.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_VariationPoints_IPanelDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_VariationPoints_IPanelDiagram.gif
new file mode 100755
index 0000000..5a816ab
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_VariationPoints_IPanelDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_VariationPoints_IPort.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_VariationPoints_IPort.gif
new file mode 100755
index 0000000..2de871f
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_VariationPoints_IPort.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_VariationPoints_IProfile.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_VariationPoints_IProfile.gif
new file mode 100755
index 0000000..b9300d3
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_VariationPoints_IProfile.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_VariationPoints_IProject.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_VariationPoints_IProject.gif
new file mode 100755
index 0000000..bda736b
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_VariationPoints_IProject.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_VariationPoints_IRelation.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_VariationPoints_IRelation.gif
new file mode 100755
index 0000000..78ca278
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_VariationPoints_IRelation.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_VariationPoints_IRequirement.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_VariationPoints_IRequirement.gif
new file mode 100755
index 0000000..486225e
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_VariationPoints_IRequirement.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_VariationPoints_ISequenceDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_VariationPoints_ISequenceDiagram.gif
new file mode 100755
index 0000000..3f2250f
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_VariationPoints_ISequenceDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_VariationPoints_IStateChart.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_VariationPoints_IStateChart.gif
new file mode 100755
index 0000000..c14b909
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_VariationPoints_IStateChart.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_VariationPoints_IStateChartDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_VariationPoints_IStateChartDiagram.gif
new file mode 100755
index 0000000..3f2250f
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_VariationPoints_IStateChartDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_VariationPoints_IStereotype.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_VariationPoints_IStereotype.gif
new file mode 100755
index 0000000..486225e
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_VariationPoints_IStereotype.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_VariationPoints_IStructureDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_VariationPoints_IStructureDiagram.gif
new file mode 100755
index 0000000..57d043b
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_VariationPoints_IStructureDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_VariationPoints_ISysMLPort.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_VariationPoints_ISysMLPort.gif
new file mode 100755
index 0000000..e891a2b
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_VariationPoints_ISysMLPort.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_VariationPoints_ITableLayout.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_VariationPoints_ITableLayout.gif
new file mode 100755
index 0000000..7d37ab4
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_VariationPoints_ITableLayout.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_VariationPoints_ITableView.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_VariationPoints_ITableView.gif
new file mode 100755
index 0000000..3f2250f
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_VariationPoints_ITableView.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_VariationPoints_ITag.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_VariationPoints_ITag.gif
new file mode 100755
index 0000000..c6c7731
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_VariationPoints_ITag.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_VariationPoints_ITemplateParameter.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_VariationPoints_ITemplateParameter.gif
new file mode 100755
index 0000000..12131f2
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_VariationPoints_ITemplateParameter.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_VariationPoints_IType.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_VariationPoints_IType.gif
new file mode 100755
index 0000000..82f3250
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_VariationPoints_IType.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_VariationPoints_IUnit.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_VariationPoints_IUnit.gif
new file mode 100755
index 0000000..207c470
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_VariationPoints_IUnit.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_VariationPoints_IUseCase.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_VariationPoints_IUseCase.gif
new file mode 100755
index 0000000..1934e25
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_VariationPoints_IUseCase.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_VariationPoints_IUseCaseDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_VariationPoints_IUseCaseDiagram.gif
new file mode 100755
index 0000000..479ecaf
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_VariationPoints_IUseCaseDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_VariationPoints_IVariable.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_VariationPoints_IVariable.gif
new file mode 100755
index 0000000..3f2250f
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_VariationPoints_IVariable.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_description_IDescription.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_description_IDescription.gif
new file mode 100755
index 0000000..479ecaf
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_description_IDescription.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_m_configActive_ICodeGenConfigInfoHandle.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_m_configActive_ICodeGenConfigInfoHandle.gif
new file mode 100755
index 0000000..5acbfcc
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_m_configActive_ICodeGenConfigInfoHandle.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_m_folder_IFolder.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_m_folder_IFolder.gif
new file mode 100755
index 0000000..82f3250
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_m_folder_IFolder.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_properties_IPropertyContainer.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_properties_IPropertyContainer.gif
new file mode 100755
index 0000000..7e51359
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIComponent_properties_IPropertyContainer.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIConstraint_Anchors_IAnchor.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIConstraint_Anchors_IAnchor.gif
new file mode 100755
index 0000000..f3e037f
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIConstraint_Anchors_IAnchor.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIConstraint_Stereotypes_IActor.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIConstraint_Stereotypes_IActor.gif
new file mode 100755
index 0000000..3483523
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIConstraint_Stereotypes_IActor.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIConstraint_Stereotypes_IAssociationClass.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIConstraint_Stereotypes_IAssociationClass.gif
new file mode 100755
index 0000000..dd256cc
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIConstraint_Stereotypes_IAssociationClass.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIConstraint_Stereotypes_IClass.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIConstraint_Stereotypes_IClass.gif
new file mode 100755
index 0000000..79263fb
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIConstraint_Stereotypes_IClass.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIConstraint_Stereotypes_IClassifier.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIConstraint_Stereotypes_IClassifier.gif
new file mode 100755
index 0000000..aa20a64
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIConstraint_Stereotypes_IClassifier.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIConstraint_Stereotypes_IEvent.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIConstraint_Stereotypes_IEvent.gif
new file mode 100755
index 0000000..8fd571a
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIConstraint_Stereotypes_IEvent.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIConstraint_Stereotypes_IEventReception.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIConstraint_Stereotypes_IEventReception.gif
new file mode 100755
index 0000000..c51ddff
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIConstraint_Stereotypes_IEventReception.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIConstraint_Stereotypes_IFlowItem.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIConstraint_Stereotypes_IFlowItem.gif
new file mode 100755
index 0000000..50ac6da
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIConstraint_Stereotypes_IFlowItem.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIConstraint_Stereotypes_IInterfaceItem.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIConstraint_Stereotypes_IInterfaceItem.gif
new file mode 100755
index 0000000..2072844
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIConstraint_Stereotypes_IInterfaceItem.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIConstraint_Stereotypes_INode.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIConstraint_Stereotypes_INode.gif
new file mode 100755
index 0000000..ca79a7f
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIConstraint_Stereotypes_INode.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIConstraint_Stereotypes_IOperation.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIConstraint_Stereotypes_IOperation.gif
new file mode 100755
index 0000000..7d18f38
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIConstraint_Stereotypes_IOperation.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIConstraint_Stereotypes_IStateChart.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIConstraint_Stereotypes_IStateChart.gif
new file mode 100755
index 0000000..b8d07e0
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIConstraint_Stereotypes_IStateChart.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIConstraint_Stereotypes_IStereotype.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIConstraint_Stereotypes_IStereotype.gif
new file mode 100755
index 0000000..a021a81
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIConstraint_Stereotypes_IStereotype.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIConstraint_Stereotypes_IType.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIConstraint_Stereotypes_IType.gif
new file mode 100755
index 0000000..27dbe98
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIConstraint_Stereotypes_IType.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIConstraint_Stereotypes_IUseCase.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIConstraint_Stereotypes_IUseCase.gif
new file mode 100755
index 0000000..9ca6861
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIConstraint_Stereotypes_IUseCase.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIConstraint_properties_IPropertyContainer.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIConstraint_properties_IPropertyContainer.gif
new file mode 100755
index 0000000..a88faa1
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIConstraint_properties_IPropertyContainer.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIConstructor_Args_IArgument.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIConstructor_Args_IArgument.gif
new file mode 100755
index 0000000..d064fcb
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIConstructor_Args_IArgument.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIConstructor_Args_IAttribute.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIConstructor_Args_IAttribute.gif
new file mode 100755
index 0000000..794791a
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIConstructor_Args_IAttribute.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIConstructor_Args_ITag.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIConstructor_Args_ITag.gif
new file mode 100755
index 0000000..67fc534
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIConstructor_Args_ITag.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIConstructor_Args_ITemplateParameter.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIConstructor_Args_ITemplateParameter.gif
new file mode 100755
index 0000000..c561177
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIConstructor_Args_ITemplateParameter.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIConstructor_Args_IVariable.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIConstructor_Args_IVariable.gif
new file mode 100755
index 0000000..ce9d337
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIConstructor_Args_IVariable.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIConstructor_Tags_ITag.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIConstructor_Tags_ITag.gif
new file mode 100755
index 0000000..67fc534
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIConstructor_Tags_ITag.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIConstructor_description_IDescription.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIConstructor_description_IDescription.gif
new file mode 100755
index 0000000..7c9ec36
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIConstructor_description_IDescription.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIConstructor_itsBody_IBody.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIConstructor_itsBody_IBody.gif
new file mode 100755
index 0000000..0f9364b
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIConstructor_itsBody_IBody.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDefaultDrvdTrans_Annotations_IRequirement.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDefaultDrvdTrans_Annotations_IRequirement.gif
new file mode 100755
index 0000000..7b61148
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDefaultDrvdTrans_Annotations_IRequirement.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDefaultDrvdTrans_Stereotypes_IStereotype.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDefaultDrvdTrans_Stereotypes_IStereotype.gif
new file mode 100755
index 0000000..7b61148
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDefaultDrvdTrans_Stereotypes_IStereotype.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDependency_Annotations_IComment.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDependency_Annotations_IComment.gif
new file mode 100755
index 0000000..77ff676
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDependency_Annotations_IComment.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDependency_Dependencies_IDependency.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDependency_Dependencies_IDependency.gif
new file mode 100755
index 0000000..ca17b1c
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDependency_Dependencies_IDependency.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDependency_Dependencies_IHyperLink.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDependency_Dependencies_IHyperLink.gif
new file mode 100755
index 0000000..2f87e1e
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDependency_Dependencies_IHyperLink.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDependency_Stereotypes_IActor.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDependency_Stereotypes_IActor.gif
new file mode 100755
index 0000000..4344d57
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDependency_Stereotypes_IActor.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDependency_Stereotypes_IAnnotation.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDependency_Stereotypes_IAnnotation.gif
new file mode 100755
index 0000000..8ed4554
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDependency_Stereotypes_IAnnotation.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDependency_Stereotypes_IArgument.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDependency_Stereotypes_IArgument.gif
new file mode 100755
index 0000000..fefcd93
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDependency_Stereotypes_IArgument.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDependency_Stereotypes_IAssociationClass.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDependency_Stereotypes_IAssociationClass.gif
new file mode 100755
index 0000000..bb5307e
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDependency_Stereotypes_IAssociationClass.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDependency_Stereotypes_IAttribute.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDependency_Stereotypes_IAttribute.gif
new file mode 100755
index 0000000..ca303a4
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDependency_Stereotypes_IAttribute.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDependency_Stereotypes_IClass.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDependency_Stereotypes_IClass.gif
new file mode 100755
index 0000000..649a078
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDependency_Stereotypes_IClass.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDependency_Stereotypes_IClassifier.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDependency_Stereotypes_IClassifier.gif
new file mode 100755
index 0000000..4447ddc
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDependency_Stereotypes_IClassifier.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDependency_Stereotypes_ICollaborationDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDependency_Stereotypes_ICollaborationDiagram.gif
new file mode 100755
index 0000000..3a9b7cd
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDependency_Stereotypes_ICollaborationDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDependency_Stereotypes_IComment.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDependency_Stereotypes_IComment.gif
new file mode 100755
index 0000000..77ff676
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDependency_Stereotypes_IComment.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDependency_Stereotypes_IComponent.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDependency_Stereotypes_IComponent.gif
new file mode 100755
index 0000000..96534e6
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDependency_Stereotypes_IComponent.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDependency_Stereotypes_IComponentDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDependency_Stereotypes_IComponentDiagram.gif
new file mode 100755
index 0000000..fefcd93
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDependency_Stereotypes_IComponentDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDependency_Stereotypes_IConstraint.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDependency_Stereotypes_IConstraint.gif
new file mode 100755
index 0000000..cb3c1ca
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDependency_Stereotypes_IConstraint.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDependency_Stereotypes_IControlledFile.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDependency_Stereotypes_IControlledFile.gif
new file mode 100755
index 0000000..7affd57
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDependency_Stereotypes_IControlledFile.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDependency_Stereotypes_IDeploymentDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDependency_Stereotypes_IDeploymentDiagram.gif
new file mode 100755
index 0000000..80e1a0d
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDependency_Stereotypes_IDeploymentDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDependency_Stereotypes_IDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDependency_Stereotypes_IDiagram.gif
new file mode 100755
index 0000000..5b8f31e
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDependency_Stereotypes_IDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDependency_Stereotypes_IEvent.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDependency_Stereotypes_IEvent.gif
new file mode 100755
index 0000000..96534e6
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDependency_Stereotypes_IEvent.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDependency_Stereotypes_IEventReception.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDependency_Stereotypes_IEventReception.gif
new file mode 100755
index 0000000..971790b
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDependency_Stereotypes_IEventReception.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDependency_Stereotypes_IFile.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDependency_Stereotypes_IFile.gif
new file mode 100755
index 0000000..c605d18
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDependency_Stereotypes_IFile.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDependency_Stereotypes_IFlowItem.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDependency_Stereotypes_IFlowItem.gif
new file mode 100755
index 0000000..5323f34
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDependency_Stereotypes_IFlowItem.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDependency_Stereotypes_IInstance.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDependency_Stereotypes_IInstance.gif
new file mode 100755
index 0000000..eac789c
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDependency_Stereotypes_IInstance.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDependency_Stereotypes_IInterfaceItem.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDependency_Stereotypes_IInterfaceItem.gif
new file mode 100755
index 0000000..5b8f31e
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDependency_Stereotypes_IInterfaceItem.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDependency_Stereotypes_ILink.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDependency_Stereotypes_ILink.gif
new file mode 100755
index 0000000..375321e
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDependency_Stereotypes_ILink.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDependency_Stereotypes_IMatrixLayout.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDependency_Stereotypes_IMatrixLayout.gif
new file mode 100755
index 0000000..7932e95
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDependency_Stereotypes_IMatrixLayout.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDependency_Stereotypes_IMatrixView.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDependency_Stereotypes_IMatrixView.gif
new file mode 100755
index 0000000..96534e6
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDependency_Stereotypes_IMatrixView.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDependency_Stereotypes_IModule.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDependency_Stereotypes_IModule.gif
new file mode 100755
index 0000000..cbde2ba
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDependency_Stereotypes_IModule.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDependency_Stereotypes_INode.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDependency_Stereotypes_INode.gif
new file mode 100755
index 0000000..b3f5f18
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDependency_Stereotypes_INode.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDependency_Stereotypes_IObjectModelDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDependency_Stereotypes_IObjectModelDiagram.gif
new file mode 100755
index 0000000..6987711
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDependency_Stereotypes_IObjectModelDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDependency_Stereotypes_IOperation.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDependency_Stereotypes_IOperation.gif
new file mode 100755
index 0000000..80e1a0d
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDependency_Stereotypes_IOperation.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDependency_Stereotypes_IPackage.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDependency_Stereotypes_IPackage.gif
new file mode 100755
index 0000000..40c00f7
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDependency_Stereotypes_IPackage.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDependency_Stereotypes_IPanelDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDependency_Stereotypes_IPanelDiagram.gif
new file mode 100755
index 0000000..c605d18
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDependency_Stereotypes_IPanelDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDependency_Stereotypes_IPort.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDependency_Stereotypes_IPort.gif
new file mode 100755
index 0000000..96534e6
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDependency_Stereotypes_IPort.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDependency_Stereotypes_IProfile.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDependency_Stereotypes_IProfile.gif
new file mode 100755
index 0000000..cb3c1ca
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDependency_Stereotypes_IProfile.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDependency_Stereotypes_IProject.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDependency_Stereotypes_IProject.gif
new file mode 100755
index 0000000..91795e6
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDependency_Stereotypes_IProject.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDependency_Stereotypes_IRelation.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDependency_Stereotypes_IRelation.gif
new file mode 100755
index 0000000..288ee3a
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDependency_Stereotypes_IRelation.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDependency_Stereotypes_IRequirement.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDependency_Stereotypes_IRequirement.gif
new file mode 100755
index 0000000..ef6d3dd
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDependency_Stereotypes_IRequirement.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDependency_Stereotypes_ISequenceDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDependency_Stereotypes_ISequenceDiagram.gif
new file mode 100755
index 0000000..67cc320
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDependency_Stereotypes_ISequenceDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDependency_Stereotypes_IStateChart.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDependency_Stereotypes_IStateChart.gif
new file mode 100755
index 0000000..2f87e1e
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDependency_Stereotypes_IStateChart.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDependency_Stereotypes_IStateChartDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDependency_Stereotypes_IStateChartDiagram.gif
new file mode 100755
index 0000000..67cc320
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDependency_Stereotypes_IStateChartDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDependency_Stereotypes_IStereotype.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDependency_Stereotypes_IStereotype.gif
new file mode 100755
index 0000000..ef6d3dd
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDependency_Stereotypes_IStereotype.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDependency_Stereotypes_IStructureDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDependency_Stereotypes_IStructureDiagram.gif
new file mode 100755
index 0000000..8ed4554
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDependency_Stereotypes_IStructureDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDependency_Stereotypes_ISysMLPort.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDependency_Stereotypes_ISysMLPort.gif
new file mode 100755
index 0000000..cbde2ba
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDependency_Stereotypes_ISysMLPort.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDependency_Stereotypes_ITableLayout.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDependency_Stereotypes_ITableLayout.gif
new file mode 100755
index 0000000..5b8f31e
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDependency_Stereotypes_ITableLayout.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDependency_Stereotypes_ITableView.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDependency_Stereotypes_ITableView.gif
new file mode 100755
index 0000000..67cc320
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDependency_Stereotypes_ITableView.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDependency_Stereotypes_ITag.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDependency_Stereotypes_ITag.gif
new file mode 100755
index 0000000..c850aa1
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDependency_Stereotypes_ITag.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDependency_Stereotypes_ITemplateParameter.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDependency_Stereotypes_ITemplateParameter.gif
new file mode 100755
index 0000000..6987711
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDependency_Stereotypes_ITemplateParameter.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDependency_Stereotypes_IType.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDependency_Stereotypes_IType.gif
new file mode 100755
index 0000000..def961d
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDependency_Stereotypes_IType.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDependency_Stereotypes_IUnit.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDependency_Stereotypes_IUnit.gif
new file mode 100755
index 0000000..88a21e3
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDependency_Stereotypes_IUnit.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDependency_Stereotypes_IUseCase.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDependency_Stereotypes_IUseCase.gif
new file mode 100755
index 0000000..fefcd93
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDependency_Stereotypes_IUseCase.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDependency_Stereotypes_IUseCaseDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDependency_Stereotypes_IUseCaseDiagram.gif
new file mode 100755
index 0000000..77ff676
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDependency_Stereotypes_IUseCaseDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDependency_Stereotypes_IVariable.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDependency_Stereotypes_IVariable.gif
new file mode 100755
index 0000000..67cc320
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDependency_Stereotypes_IVariable.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDependency_Tags_ITag.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDependency_Tags_ITag.gif
new file mode 100755
index 0000000..c850aa1
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDependency_Tags_ITag.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDependency_description_IDescription.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDependency_description_IDescription.gif
new file mode 100755
index 0000000..77ff676
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDependency_description_IDescription.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDependency_properties_IPropertyContainer.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDependency_properties_IPropertyContainer.gif
new file mode 100755
index 0000000..84f1465
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDependency_properties_IPropertyContainer.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDescription_Hyperlinks_IExternalHyperlink.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDescription_Hyperlinks_IExternalHyperlink.gif
new file mode 100755
index 0000000..bc633fd
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDescription_Hyperlinks_IExternalHyperlink.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDescription_Hyperlinks_IInternalHyperlink.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDescription_Hyperlinks_IInternalHyperlink.gif
new file mode 100755
index 0000000..83824fb
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDescription_Hyperlinks_IInternalHyperlink.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDescription_Hyperlinks_IMHyperLink.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDescription_Hyperlinks_IMHyperLink.gif
new file mode 100755
index 0000000..753b7fa
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDescription_Hyperlinks_IMHyperLink.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDestructor_description_IDescription.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDestructor_description_IDescription.gif
new file mode 100755
index 0000000..4d51bba
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDestructor_description_IDescription.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDestructor_itsBody_IBody.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDestructor_itsBody_IBody.gif
new file mode 100755
index 0000000..8b41d35
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDestructor_itsBody_IBody.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDestructor_properties_IPropertyContainer.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDestructor_properties_IPropertyContainer.gif
new file mode 100755
index 0000000..dabd6f4
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDestructor_properties_IPropertyContainer.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDiagram_Annotations_IAnnotation.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDiagram_Annotations_IAnnotation.gif
new file mode 100755
index 0000000..9130fd6
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDiagram_Annotations_IAnnotation.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDiagram_Annotations_IComment.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDiagram_Annotations_IComment.gif
new file mode 100755
index 0000000..d01836d
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDiagram_Annotations_IComment.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDiagram_Annotations_IConstraint.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDiagram_Annotations_IConstraint.gif
new file mode 100755
index 0000000..46106a3
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDiagram_Annotations_IConstraint.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDiagram_Annotations_IRequirement.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDiagram_Annotations_IRequirement.gif
new file mode 100755
index 0000000..7bef7ae
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDiagram_Annotations_IRequirement.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDiagram_HyperLinks_IMHyperLink.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDiagram_HyperLinks_IMHyperLink.gif
new file mode 100755
index 0000000..014b83a
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDiagram_HyperLinks_IMHyperLink.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDiagram_Stereotypes_IAcceptEventAction.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDiagram_Stereotypes_IAcceptEventAction.gif
new file mode 100755
index 0000000..46106a3
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDiagram_Stereotypes_IAcceptEventAction.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDiagram_Stereotypes_IAcceptTimeEvent.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDiagram_Stereotypes_IAcceptTimeEvent.gif
new file mode 100755
index 0000000..cd26443
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDiagram_Stereotypes_IAcceptTimeEvent.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDiagram_Stereotypes_IAction.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDiagram_Stereotypes_IAction.gif
new file mode 100755
index 0000000..c39f978
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDiagram_Stereotypes_IAction.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDiagram_Stereotypes_IActivityGraph.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDiagram_Stereotypes_IActivityGraph.gif
new file mode 100755
index 0000000..7e829ad
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDiagram_Stereotypes_IActivityGraph.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDiagram_Stereotypes_IActor.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDiagram_Stereotypes_IActor.gif
new file mode 100755
index 0000000..e863d31
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDiagram_Stereotypes_IActor.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDiagram_Stereotypes_IAnnotation.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDiagram_Stereotypes_IAnnotation.gif
new file mode 100755
index 0000000..9130fd6
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDiagram_Stereotypes_IAnnotation.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDiagram_Stereotypes_IArgument.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDiagram_Stereotypes_IArgument.gif
new file mode 100755
index 0000000..db04142
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDiagram_Stereotypes_IArgument.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDiagram_Stereotypes_IAssociationClass.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDiagram_Stereotypes_IAssociationClass.gif
new file mode 100755
index 0000000..1826517
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDiagram_Stereotypes_IAssociationClass.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDiagram_Stereotypes_IAssociationEnd.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDiagram_Stereotypes_IAssociationEnd.gif
new file mode 100755
index 0000000..014b83a
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDiagram_Stereotypes_IAssociationEnd.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDiagram_Stereotypes_IAssociationRole.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDiagram_Stereotypes_IAssociationRole.gif
new file mode 100755
index 0000000..5187242
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDiagram_Stereotypes_IAssociationRole.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDiagram_Stereotypes_IAttribute.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDiagram_Stereotypes_IAttribute.gif
new file mode 100755
index 0000000..9ad2ce6
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDiagram_Stereotypes_IAttribute.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDiagram_Stereotypes_ICallOperation.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDiagram_Stereotypes_ICallOperation.gif
new file mode 100755
index 0000000..961391b
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDiagram_Stereotypes_ICallOperation.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDiagram_Stereotypes_IClass.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDiagram_Stereotypes_IClass.gif
new file mode 100755
index 0000000..7fb29f4
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDiagram_Stereotypes_IClass.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDiagram_Stereotypes_IClassifier.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDiagram_Stereotypes_IClassifier.gif
new file mode 100755
index 0000000..cc38dd7
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDiagram_Stereotypes_IClassifier.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDiagram_Stereotypes_IClassifierRole.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDiagram_Stereotypes_IClassifierRole.gif
new file mode 100755
index 0000000..2cafabf
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDiagram_Stereotypes_IClassifierRole.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDiagram_Stereotypes_ICollaboration.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDiagram_Stereotypes_ICollaboration.gif
new file mode 100755
index 0000000..1d6c3b9
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDiagram_Stereotypes_ICollaboration.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDiagram_Stereotypes_ICollaborationDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDiagram_Stereotypes_ICollaborationDiagram.gif
new file mode 100755
index 0000000..5bfbb66
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDiagram_Stereotypes_ICollaborationDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDiagram_Stereotypes_IComment.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDiagram_Stereotypes_IComment.gif
new file mode 100755
index 0000000..d01836d
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDiagram_Stereotypes_IComment.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDiagram_Stereotypes_IComponent.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDiagram_Stereotypes_IComponent.gif
new file mode 100755
index 0000000..cd26443
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDiagram_Stereotypes_IComponent.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDiagram_Stereotypes_IComponentDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDiagram_Stereotypes_IComponentDiagram.gif
new file mode 100755
index 0000000..db04142
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDiagram_Stereotypes_IComponentDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDiagram_Stereotypes_IComponentInstance.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDiagram_Stereotypes_IComponentInstance.gif
new file mode 100755
index 0000000..014b83a
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDiagram_Stereotypes_IComponentInstance.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDiagram_Stereotypes_IConfiguration.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDiagram_Stereotypes_IConfiguration.gif
new file mode 100755
index 0000000..7fb29f4
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDiagram_Stereotypes_IConfiguration.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDiagram_Stereotypes_IConnector.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDiagram_Stereotypes_IConnector.gif
new file mode 100755
index 0000000..1826517
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDiagram_Stereotypes_IConnector.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDiagram_Stereotypes_IConstraint.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDiagram_Stereotypes_IConstraint.gif
new file mode 100755
index 0000000..46106a3
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDiagram_Stereotypes_IConstraint.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDiagram_Stereotypes_IContextSpecification.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDiagram_Stereotypes_IContextSpecification.gif
new file mode 100755
index 0000000..9696206
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDiagram_Stereotypes_IContextSpecification.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDiagram_Stereotypes_IControlledFile.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDiagram_Stereotypes_IControlledFile.gif
new file mode 100755
index 0000000..5ea562b
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDiagram_Stereotypes_IControlledFile.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDiagram_Stereotypes_IDependency.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDiagram_Stereotypes_IDependency.gif
new file mode 100755
index 0000000..c2b071b
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDiagram_Stereotypes_IDependency.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDiagram_Stereotypes_IDeploymentDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDiagram_Stereotypes_IDeploymentDiagram.gif
new file mode 100755
index 0000000..e1c32cf
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDiagram_Stereotypes_IDeploymentDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDiagram_Stereotypes_IDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDiagram_Stereotypes_IDiagram.gif
new file mode 100755
index 0000000..ced536d
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDiagram_Stereotypes_IDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDiagram_Stereotypes_IEnumerationLiteral.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDiagram_Stereotypes_IEnumerationLiteral.gif
new file mode 100755
index 0000000..7d4d39f
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDiagram_Stereotypes_IEnumerationLiteral.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDiagram_Stereotypes_IEvent.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDiagram_Stereotypes_IEvent.gif
new file mode 100755
index 0000000..cd26443
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDiagram_Stereotypes_IEvent.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDiagram_Stereotypes_IEventReception.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDiagram_Stereotypes_IEventReception.gif
new file mode 100755
index 0000000..16048d0
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDiagram_Stereotypes_IEventReception.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDiagram_Stereotypes_IExecutionOccurrence.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDiagram_Stereotypes_IExecutionOccurrence.gif
new file mode 100755
index 0000000..3dcea4e
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDiagram_Stereotypes_IExecutionOccurrence.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDiagram_Stereotypes_IExternalHyperlink.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDiagram_Stereotypes_IExternalHyperlink.gif
new file mode 100755
index 0000000..1b954c5
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDiagram_Stereotypes_IExternalHyperlink.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDiagram_Stereotypes_IFile.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDiagram_Stereotypes_IFile.gif
new file mode 100755
index 0000000..7e829ad
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDiagram_Stereotypes_IFile.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDiagram_Stereotypes_IFileFragment.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDiagram_Stereotypes_IFileFragment.gif
new file mode 100755
index 0000000..16048d0
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDiagram_Stereotypes_IFileFragment.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDiagram_Stereotypes_IFlow.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDiagram_Stereotypes_IFlow.gif
new file mode 100755
index 0000000..18e4f1a
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDiagram_Stereotypes_IFlow.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDiagram_Stereotypes_IFlowItem.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDiagram_Stereotypes_IFlowItem.gif
new file mode 100755
index 0000000..223e215
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDiagram_Stereotypes_IFlowItem.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDiagram_Stereotypes_IGeneralization.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDiagram_Stereotypes_IGeneralization.gif
new file mode 100755
index 0000000..998cc10
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDiagram_Stereotypes_IGeneralization.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDiagram_Stereotypes_IGuard.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDiagram_Stereotypes_IGuard.gif
new file mode 100755
index 0000000..5187242
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDiagram_Stereotypes_IGuard.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDiagram_Stereotypes_IHyperLink.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDiagram_Stereotypes_IHyperLink.gif
new file mode 100755
index 0000000..90bc42c
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDiagram_Stereotypes_IHyperLink.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDiagram_Stereotypes_IInformationFlow.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDiagram_Stereotypes_IInformationFlow.gif
new file mode 100755
index 0000000..cd26443
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDiagram_Stereotypes_IInformationFlow.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDiagram_Stereotypes_IInstance.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDiagram_Stereotypes_IInstance.gif
new file mode 100755
index 0000000..e66386f
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDiagram_Stereotypes_IInstance.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDiagram_Stereotypes_IInstanceSlot.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDiagram_Stereotypes_IInstanceSlot.gif
new file mode 100755
index 0000000..25e4762
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDiagram_Stereotypes_IInstanceSlot.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDiagram_Stereotypes_IInstanceSpecification.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDiagram_Stereotypes_IInstanceSpecification.gif
new file mode 100755
index 0000000..db04142
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDiagram_Stereotypes_IInstanceSpecification.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDiagram_Stereotypes_IInstanceValue.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDiagram_Stereotypes_IInstanceValue.gif
new file mode 100755
index 0000000..9130fd6
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDiagram_Stereotypes_IInstanceValue.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDiagram_Stereotypes_IInteractionOccurrence.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDiagram_Stereotypes_IInteractionOccurrence.gif
new file mode 100755
index 0000000..cd26443
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDiagram_Stereotypes_IInteractionOccurrence.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDiagram_Stereotypes_IInteractionOperand.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDiagram_Stereotypes_IInteractionOperand.gif
new file mode 100755
index 0000000..ebeaeeb
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDiagram_Stereotypes_IInteractionOperand.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDiagram_Stereotypes_IInteractionOperator.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDiagram_Stereotypes_IInteractionOperator.gif
new file mode 100755
index 0000000..d1da83e
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDiagram_Stereotypes_IInteractionOperator.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDiagram_Stereotypes_IInterfaceItem.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDiagram_Stereotypes_IInterfaceItem.gif
new file mode 100755
index 0000000..ced536d
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDiagram_Stereotypes_IInterfaceItem.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDiagram_Stereotypes_IInternalHyperlink.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDiagram_Stereotypes_IInternalHyperlink.gif
new file mode 100755
index 0000000..c345ca5
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDiagram_Stereotypes_IInternalHyperlink.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDiagram_Stereotypes_ILink.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDiagram_Stereotypes_ILink.gif
new file mode 100755
index 0000000..60aa17e
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDiagram_Stereotypes_ILink.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDiagram_Stereotypes_ILiteralSpecification.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDiagram_Stereotypes_ILiteralSpecification.gif
new file mode 100755
index 0000000..7d4d39f
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDiagram_Stereotypes_ILiteralSpecification.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDiagram_Stereotypes_IMHyperLink.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDiagram_Stereotypes_IMHyperLink.gif
new file mode 100755
index 0000000..014b83a
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDiagram_Stereotypes_IMHyperLink.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDiagram_Stereotypes_IMatrixLayout.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDiagram_Stereotypes_IMatrixLayout.gif
new file mode 100755
index 0000000..e75f794
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDiagram_Stereotypes_IMatrixLayout.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDiagram_Stereotypes_IMatrixView.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDiagram_Stereotypes_IMatrixView.gif
new file mode 100755
index 0000000..cd26443
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDiagram_Stereotypes_IMatrixView.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDiagram_Stereotypes_IMessage.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDiagram_Stereotypes_IMessage.gif
new file mode 100755
index 0000000..d44bc94
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDiagram_Stereotypes_IMessage.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDiagram_Stereotypes_IMessagePoint.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDiagram_Stereotypes_IMessagePoint.gif
new file mode 100755
index 0000000..9bb3e39
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDiagram_Stereotypes_IMessagePoint.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDiagram_Stereotypes_IModelElement.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDiagram_Stereotypes_IModelElement.gif
new file mode 100755
index 0000000..5187242
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDiagram_Stereotypes_IModelElement.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDiagram_Stereotypes_IModule.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDiagram_Stereotypes_IModule.gif
new file mode 100755
index 0000000..82bf8d2
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDiagram_Stereotypes_IModule.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDiagram_Stereotypes_INode.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDiagram_Stereotypes_INode.gif
new file mode 100755
index 0000000..a2eae98
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDiagram_Stereotypes_INode.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDiagram_Stereotypes_IObjectLink.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDiagram_Stereotypes_IObjectLink.gif
new file mode 100755
index 0000000..5ea562b
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDiagram_Stereotypes_IObjectLink.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDiagram_Stereotypes_IObjectModelDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDiagram_Stereotypes_IObjectModelDiagram.gif
new file mode 100755
index 0000000..9bb3e39
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDiagram_Stereotypes_IObjectModelDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDiagram_Stereotypes_IObjectNode.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDiagram_Stereotypes_IObjectNode.gif
new file mode 100755
index 0000000..61e16c0
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDiagram_Stereotypes_IObjectNode.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDiagram_Stereotypes_IOperation.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDiagram_Stereotypes_IOperation.gif
new file mode 100755
index 0000000..e1c32cf
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDiagram_Stereotypes_IOperation.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDiagram_Stereotypes_IPackage.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDiagram_Stereotypes_IPackage.gif
new file mode 100755
index 0000000..d799c18
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDiagram_Stereotypes_IPackage.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDiagram_Stereotypes_IPanelDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDiagram_Stereotypes_IPanelDiagram.gif
new file mode 100755
index 0000000..7e829ad
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDiagram_Stereotypes_IPanelDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDiagram_Stereotypes_IPart.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDiagram_Stereotypes_IPart.gif
new file mode 100755
index 0000000..1c8ac08
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDiagram_Stereotypes_IPart.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDiagram_Stereotypes_IPin.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDiagram_Stereotypes_IPin.gif
new file mode 100755
index 0000000..e66386f
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDiagram_Stereotypes_IPin.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDiagram_Stereotypes_IPort.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDiagram_Stereotypes_IPort.gif
new file mode 100755
index 0000000..cd26443
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDiagram_Stereotypes_IPort.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDiagram_Stereotypes_IPrimitiveOperation.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDiagram_Stereotypes_IPrimitiveOperation.gif
new file mode 100755
index 0000000..1826517
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDiagram_Stereotypes_IPrimitiveOperation.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDiagram_Stereotypes_IProfile.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDiagram_Stereotypes_IProfile.gif
new file mode 100755
index 0000000..46106a3
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDiagram_Stereotypes_IProfile.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDiagram_Stereotypes_IProject.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDiagram_Stereotypes_IProject.gif
new file mode 100755
index 0000000..c345ca5
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDiagram_Stereotypes_IProject.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDiagram_Stereotypes_IRelation.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDiagram_Stereotypes_IRelation.gif
new file mode 100755
index 0000000..f1e2d49
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDiagram_Stereotypes_IRelation.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDiagram_Stereotypes_IRequirement.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDiagram_Stereotypes_IRequirement.gif
new file mode 100755
index 0000000..7bef7ae
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDiagram_Stereotypes_IRequirement.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDiagram_Stereotypes_ISendAction.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDiagram_Stereotypes_ISendAction.gif
new file mode 100755
index 0000000..46106a3
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDiagram_Stereotypes_ISendAction.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDiagram_Stereotypes_ISequenceDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDiagram_Stereotypes_ISequenceDiagram.gif
new file mode 100755
index 0000000..25e4762
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDiagram_Stereotypes_ISequenceDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDiagram_Stereotypes_IState.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDiagram_Stereotypes_IState.gif
new file mode 100755
index 0000000..c39f978
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDiagram_Stereotypes_IState.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDiagram_Stereotypes_IStateChart.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDiagram_Stereotypes_IStateChart.gif
new file mode 100755
index 0000000..90bc42c
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDiagram_Stereotypes_IStateChart.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDiagram_Stereotypes_IStateChartDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDiagram_Stereotypes_IStateChartDiagram.gif
new file mode 100755
index 0000000..25e4762
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDiagram_Stereotypes_IStateChartDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDiagram_Stereotypes_IStateVertex.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDiagram_Stereotypes_IStateVertex.gif
new file mode 100755
index 0000000..5ea562b
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDiagram_Stereotypes_IStateVertex.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDiagram_Stereotypes_IStereotype.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDiagram_Stereotypes_IStereotype.gif
new file mode 100755
index 0000000..7bef7ae
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDiagram_Stereotypes_IStereotype.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDiagram_Stereotypes_IStructureDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDiagram_Stereotypes_IStructureDiagram.gif
new file mode 100755
index 0000000..9130fd6
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDiagram_Stereotypes_IStructureDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDiagram_Stereotypes_ISubsystem.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDiagram_Stereotypes_ISubsystem.gif
new file mode 100755
index 0000000..e66386f
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDiagram_Stereotypes_ISubsystem.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDiagram_Stereotypes_ISwimlane.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDiagram_Stereotypes_ISwimlane.gif
new file mode 100755
index 0000000..16048d0
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDiagram_Stereotypes_ISwimlane.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDiagram_Stereotypes_ISysMLPort.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDiagram_Stereotypes_ISysMLPort.gif
new file mode 100755
index 0000000..82bf8d2
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDiagram_Stereotypes_ISysMLPort.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDiagram_Stereotypes_ITableLayout.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDiagram_Stereotypes_ITableLayout.gif
new file mode 100755
index 0000000..ced536d
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDiagram_Stereotypes_ITableLayout.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDiagram_Stereotypes_ITableView.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDiagram_Stereotypes_ITableView.gif
new file mode 100755
index 0000000..25e4762
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDiagram_Stereotypes_ITableView.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDiagram_Stereotypes_ITag.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDiagram_Stereotypes_ITag.gif
new file mode 100755
index 0000000..b1d6682
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDiagram_Stereotypes_ITag.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDiagram_Stereotypes_ITemplateInstantiation.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDiagram_Stereotypes_ITemplateInstantiation.gif
new file mode 100755
index 0000000..7e829ad
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDiagram_Stereotypes_ITemplateInstantiation.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDiagram_Stereotypes_ITemplateInstantiationParameter.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDiagram_Stereotypes_ITemplateInstantiationParameter.gif
new file mode 100755
index 0000000..9696206
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDiagram_Stereotypes_ITemplateInstantiationParameter.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDiagram_Stereotypes_ITemplateParameter.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDiagram_Stereotypes_ITemplateParameter.gif
new file mode 100755
index 0000000..9bb3e39
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDiagram_Stereotypes_ITemplateParameter.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDiagram_Stereotypes_ITransition.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDiagram_Stereotypes_ITransition.gif
new file mode 100755
index 0000000..c345ca5
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDiagram_Stereotypes_ITransition.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDiagram_Stereotypes_ITrigger.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDiagram_Stereotypes_ITrigger.gif
new file mode 100755
index 0000000..7e829ad
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDiagram_Stereotypes_ITrigger.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDiagram_Stereotypes_ITriggered.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDiagram_Stereotypes_ITriggered.gif
new file mode 100755
index 0000000..16048d0
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDiagram_Stereotypes_ITriggered.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDiagram_Stereotypes_IType.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDiagram_Stereotypes_IType.gif
new file mode 100755
index 0000000..d1da83e
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDiagram_Stereotypes_IType.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDiagram_Stereotypes_IUnit.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDiagram_Stereotypes_IUnit.gif
new file mode 100755
index 0000000..998cc10
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDiagram_Stereotypes_IUnit.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDiagram_Stereotypes_IUseCase.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDiagram_Stereotypes_IUseCase.gif
new file mode 100755
index 0000000..db04142
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDiagram_Stereotypes_IUseCase.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDiagram_Stereotypes_IUseCaseDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDiagram_Stereotypes_IUseCaseDiagram.gif
new file mode 100755
index 0000000..d01836d
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDiagram_Stereotypes_IUseCaseDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDiagram_Stereotypes_IValueSpecification.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDiagram_Stereotypes_IValueSpecification.gif
new file mode 100755
index 0000000..d44bc94
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDiagram_Stereotypes_IValueSpecification.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDiagram_Stereotypes_IVariable.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDiagram_Stereotypes_IVariable.gif
new file mode 100755
index 0000000..25e4762
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDiagram_Stereotypes_IVariable.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDiagram_graphicChart_CCollaborationChart.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDiagram_graphicChart_CCollaborationChart.gif
new file mode 100755
index 0000000..cd26443
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDiagram_graphicChart_CCollaborationChart.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDiagram_graphicChart_CGIClassChart.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDiagram_graphicChart_CGIClassChart.gif
new file mode 100755
index 0000000..1d6c3b9
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDiagram_graphicChart_CGIClassChart.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDiagram_graphicChart_CGIStateChart.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDiagram_graphicChart_CGIStateChart.gif
new file mode 100755
index 0000000..d799c18
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDiagram_graphicChart_CGIStateChart.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDiagram_properties_IPropertyContainer.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDiagram_properties_IPropertyContainer.gif
new file mode 100755
index 0000000..18e4f1a
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIDiagram_properties_IPropertyContainer.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIEmbededFile_Tags_ITag.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIEmbededFile_Tags_ITag.gif
new file mode 100755
index 0000000..1aa8543
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIEmbededFile_Tags_ITag.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIEnumerationLiteral_Tags_ITag.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIEnumerationLiteral_Tags_ITag.gif
new file mode 100755
index 0000000..8d1ccfa
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIEnumerationLiteral_Tags_ITag.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIEnumerationLiteral_description_IDescription.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIEnumerationLiteral_description_IDescription.gif
new file mode 100755
index 0000000..4d51bba
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIEnumerationLiteral_description_IDescription.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIEnumerationLiteral_properties_IPropertyContainer.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIEnumerationLiteral_properties_IPropertyContainer.gif
new file mode 100755
index 0000000..dabd6f4
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIEnumerationLiteral_properties_IPropertyContainer.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIEvent_Annotations_IConstraint.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIEvent_Annotations_IConstraint.gif
new file mode 100755
index 0000000..b9300d3
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIEvent_Annotations_IConstraint.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIEvent_Args_IArgument.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIEvent_Args_IArgument.gif
new file mode 100755
index 0000000..1934e25
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIEvent_Args_IArgument.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIEvent_Args_IAttribute.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIEvent_Args_IAttribute.gif
new file mode 100755
index 0000000..9a956d1
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIEvent_Args_IAttribute.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIEvent_Args_ITag.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIEvent_Args_ITag.gif
new file mode 100755
index 0000000..c6c7731
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIEvent_Args_ITag.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIEvent_Args_ITemplateParameter.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIEvent_Args_ITemplateParameter.gif
new file mode 100755
index 0000000..12131f2
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIEvent_Args_ITemplateParameter.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIEvent_Args_IVariable.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIEvent_Args_IVariable.gif
new file mode 100755
index 0000000..3f2250f
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIEvent_Args_IVariable.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIEvent_Dependencies_IDependency.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIEvent_Dependencies_IDependency.gif
new file mode 100755
index 0000000..7118da1
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIEvent_Dependencies_IDependency.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIEvent_Dependencies_IHyperLink.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIEvent_Dependencies_IHyperLink.gif
new file mode 100755
index 0000000..c14b909
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIEvent_Dependencies_IHyperLink.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIEvent_Stereotypes_IActor.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIEvent_Stereotypes_IActor.gif
new file mode 100755
index 0000000..9422192
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIEvent_Stereotypes_IActor.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIEvent_Stereotypes_IAssociationClass.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIEvent_Stereotypes_IAssociationClass.gif
new file mode 100755
index 0000000..788abfe
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIEvent_Stereotypes_IAssociationClass.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIEvent_Stereotypes_IClass.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIEvent_Stereotypes_IClass.gif
new file mode 100755
index 0000000..9e7c2fb
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIEvent_Stereotypes_IClass.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIEvent_Stereotypes_IClassifier.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIEvent_Stereotypes_IClassifier.gif
new file mode 100755
index 0000000..3f8b79e
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIEvent_Stereotypes_IClassifier.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIEvent_Stereotypes_IEvent.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIEvent_Stereotypes_IEvent.gif
new file mode 100755
index 0000000..2de871f
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIEvent_Stereotypes_IEvent.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIEvent_Stereotypes_IEventReception.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIEvent_Stereotypes_IEventReception.gif
new file mode 100755
index 0000000..b597f08
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIEvent_Stereotypes_IEventReception.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIEvent_Stereotypes_IFlowItem.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIEvent_Stereotypes_IFlowItem.gif
new file mode 100755
index 0000000..f0e999e
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIEvent_Stereotypes_IFlowItem.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIEvent_Stereotypes_IInterfaceItem.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIEvent_Stereotypes_IInterfaceItem.gif
new file mode 100755
index 0000000..7d37ab4
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIEvent_Stereotypes_IInterfaceItem.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIEvent_Stereotypes_INode.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIEvent_Stereotypes_INode.gif
new file mode 100755
index 0000000..b2f886a
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIEvent_Stereotypes_INode.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIEvent_Stereotypes_IOperation.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIEvent_Stereotypes_IOperation.gif
new file mode 100755
index 0000000..ee9dd19
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIEvent_Stereotypes_IOperation.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIEvent_Stereotypes_IStateChart.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIEvent_Stereotypes_IStateChart.gif
new file mode 100755
index 0000000..c14b909
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIEvent_Stereotypes_IStateChart.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIEvent_Stereotypes_IStereotype.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIEvent_Stereotypes_IStereotype.gif
new file mode 100755
index 0000000..486225e
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIEvent_Stereotypes_IStereotype.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIEvent_Stereotypes_IType.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIEvent_Stereotypes_IType.gif
new file mode 100755
index 0000000..82f3250
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIEvent_Stereotypes_IType.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIEvent_Stereotypes_IUseCase.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIEvent_Stereotypes_IUseCase.gif
new file mode 100755
index 0000000..1934e25
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIEvent_Stereotypes_IUseCase.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIEvent_Tags_ITag.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIEvent_Tags_ITag.gif
new file mode 100755
index 0000000..c6c7731
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIEvent_Tags_ITag.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIEvent_description_IDescription.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIEvent_description_IDescription.gif
new file mode 100755
index 0000000..479ecaf
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIEvent_description_IDescription.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIEvent_properties_IPropertyContainer.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIEvent_properties_IPropertyContainer.gif
new file mode 100755
index 0000000..7e51359
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIEvent_properties_IPropertyContainer.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFileFragment_Fragments_IFileFragment.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFileFragment_Fragments_IFileFragment.gif
new file mode 100755
index 0000000..4e7f8d9
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFileFragment_Fragments_IFileFragment.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFileFragment_Tags_ITag.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFileFragment_Tags_ITag.gif
new file mode 100755
index 0000000..1f06e1f
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFileFragment_Tags_ITag.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFileFragment_description_IDescription.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFileFragment_description_IDescription.gif
new file mode 100755
index 0000000..28e491c
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFileFragment_description_IDescription.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFile_Dependencies_IDependency.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFile_Dependencies_IDependency.gif
new file mode 100755
index 0000000..dd660df
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFile_Dependencies_IDependency.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFile_Dependencies_IHyperLink.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFile_Dependencies_IHyperLink.gif
new file mode 100755
index 0000000..5016d02
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFile_Dependencies_IHyperLink.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFile_Fragments_IAcceptEventAction.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFile_Fragments_IAcceptEventAction.gif
new file mode 100755
index 0000000..76bab9e
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFile_Fragments_IAcceptEventAction.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFile_Fragments_IAcceptTimeEvent.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFile_Fragments_IAcceptTimeEvent.gif
new file mode 100755
index 0000000..83c60f9
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFile_Fragments_IAcceptTimeEvent.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFile_Fragments_IAction.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFile_Fragments_IAction.gif
new file mode 100755
index 0000000..de9650f
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFile_Fragments_IAction.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFile_Fragments_IActivityGraph.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFile_Fragments_IActivityGraph.gif
new file mode 100755
index 0000000..ebfad0f
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFile_Fragments_IActivityGraph.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFile_Fragments_IActor.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFile_Fragments_IActor.gif
new file mode 100755
index 0000000..e4486f0
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFile_Fragments_IActor.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFile_Fragments_IAnnotation.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFile_Fragments_IAnnotation.gif
new file mode 100755
index 0000000..9c80a48
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFile_Fragments_IAnnotation.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFile_Fragments_IArgument.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFile_Fragments_IArgument.gif
new file mode 100755
index 0000000..888587b
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFile_Fragments_IArgument.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFile_Fragments_IAssociationClass.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFile_Fragments_IAssociationClass.gif
new file mode 100755
index 0000000..532e1b6
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFile_Fragments_IAssociationClass.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFile_Fragments_IAssociationEnd.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFile_Fragments_IAssociationEnd.gif
new file mode 100755
index 0000000..3d60257
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFile_Fragments_IAssociationEnd.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFile_Fragments_IAssociationRole.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFile_Fragments_IAssociationRole.gif
new file mode 100755
index 0000000..f5bc335
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFile_Fragments_IAssociationRole.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFile_Fragments_IAttribute.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFile_Fragments_IAttribute.gif
new file mode 100755
index 0000000..1365cd0
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFile_Fragments_IAttribute.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFile_Fragments_ICallOperation.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFile_Fragments_ICallOperation.gif
new file mode 100755
index 0000000..0632391
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFile_Fragments_ICallOperation.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFile_Fragments_IClass.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFile_Fragments_IClass.gif
new file mode 100755
index 0000000..d6ef262
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFile_Fragments_IClass.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFile_Fragments_IClassifier.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFile_Fragments_IClassifier.gif
new file mode 100755
index 0000000..286bf8d
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFile_Fragments_IClassifier.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFile_Fragments_IClassifierRole.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFile_Fragments_IClassifierRole.gif
new file mode 100755
index 0000000..788a4f2
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFile_Fragments_IClassifierRole.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFile_Fragments_ICollaboration.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFile_Fragments_ICollaboration.gif
new file mode 100755
index 0000000..c721189
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFile_Fragments_ICollaboration.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFile_Fragments_ICollaborationDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFile_Fragments_ICollaborationDiagram.gif
new file mode 100755
index 0000000..c60711d
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFile_Fragments_ICollaborationDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFile_Fragments_IComment.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFile_Fragments_IComment.gif
new file mode 100755
index 0000000..e30f5c2
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFile_Fragments_IComment.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFile_Fragments_IComponent.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFile_Fragments_IComponent.gif
new file mode 100755
index 0000000..83c60f9
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFile_Fragments_IComponent.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFile_Fragments_IComponentDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFile_Fragments_IComponentDiagram.gif
new file mode 100755
index 0000000..888587b
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFile_Fragments_IComponentDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFile_Fragments_IComponentInstance.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFile_Fragments_IComponentInstance.gif
new file mode 100755
index 0000000..3d60257
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFile_Fragments_IComponentInstance.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFile_Fragments_IConfiguration.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFile_Fragments_IConfiguration.gif
new file mode 100755
index 0000000..d6ef262
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFile_Fragments_IConfiguration.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFile_Fragments_IConnector.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFile_Fragments_IConnector.gif
new file mode 100755
index 0000000..532e1b6
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFile_Fragments_IConnector.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFile_Fragments_IConstraint.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFile_Fragments_IConstraint.gif
new file mode 100755
index 0000000..76bab9e
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFile_Fragments_IConstraint.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFile_Fragments_IContextSpecification.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFile_Fragments_IContextSpecification.gif
new file mode 100755
index 0000000..b8f0160
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFile_Fragments_IContextSpecification.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFile_Fragments_IControlledFile.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFile_Fragments_IControlledFile.gif
new file mode 100755
index 0000000..c0de2c7
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFile_Fragments_IControlledFile.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFile_Fragments_IDependency.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFile_Fragments_IDependency.gif
new file mode 100755
index 0000000..dd660df
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFile_Fragments_IDependency.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFile_Fragments_IDeploymentDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFile_Fragments_IDeploymentDiagram.gif
new file mode 100755
index 0000000..3ea4b78
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFile_Fragments_IDeploymentDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFile_Fragments_IDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFile_Fragments_IDiagram.gif
new file mode 100755
index 0000000..10bd931
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFile_Fragments_IDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFile_Fragments_IEnumerationLiteral.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFile_Fragments_IEnumerationLiteral.gif
new file mode 100755
index 0000000..2d270f5
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFile_Fragments_IEnumerationLiteral.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFile_Fragments_IEvent.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFile_Fragments_IEvent.gif
new file mode 100755
index 0000000..83c60f9
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFile_Fragments_IEvent.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFile_Fragments_IEventReception.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFile_Fragments_IEventReception.gif
new file mode 100755
index 0000000..b5cf7e3
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFile_Fragments_IEventReception.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFile_Fragments_IExecutionOccurrence.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFile_Fragments_IExecutionOccurrence.gif
new file mode 100755
index 0000000..75f4427
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFile_Fragments_IExecutionOccurrence.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFile_Fragments_IExternalHyperlink.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFile_Fragments_IExternalHyperlink.gif
new file mode 100755
index 0000000..35f2a35
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFile_Fragments_IExternalHyperlink.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFile_Fragments_IFile.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFile_Fragments_IFile.gif
new file mode 100755
index 0000000..ebfad0f
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFile_Fragments_IFile.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFile_Fragments_IFileFragment.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFile_Fragments_IFileFragment.gif
new file mode 100755
index 0000000..b5cf7e3
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFile_Fragments_IFileFragment.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFile_Fragments_IFlow.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFile_Fragments_IFlow.gif
new file mode 100755
index 0000000..48f6be5
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFile_Fragments_IFlow.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFile_Fragments_IFlowItem.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFile_Fragments_IFlowItem.gif
new file mode 100755
index 0000000..48604a2
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFile_Fragments_IFlowItem.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFile_Fragments_IGeneralization.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFile_Fragments_IGeneralization.gif
new file mode 100755
index 0000000..828b9b1
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFile_Fragments_IGeneralization.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFile_Fragments_IGuard.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFile_Fragments_IGuard.gif
new file mode 100755
index 0000000..f5bc335
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFile_Fragments_IGuard.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFile_Fragments_IHyperLink.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFile_Fragments_IHyperLink.gif
new file mode 100755
index 0000000..5016d02
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFile_Fragments_IHyperLink.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFile_Fragments_IInformationFlow.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFile_Fragments_IInformationFlow.gif
new file mode 100755
index 0000000..83c60f9
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFile_Fragments_IInformationFlow.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFile_Fragments_IInstance.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFile_Fragments_IInstance.gif
new file mode 100755
index 0000000..5ae8833
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFile_Fragments_IInstance.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFile_Fragments_IInstanceSlot.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFile_Fragments_IInstanceSlot.gif
new file mode 100755
index 0000000..99ae775
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFile_Fragments_IInstanceSlot.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFile_Fragments_IInstanceSpecification.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFile_Fragments_IInstanceSpecification.gif
new file mode 100755
index 0000000..888587b
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFile_Fragments_IInstanceSpecification.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFile_Fragments_IInstanceValue.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFile_Fragments_IInstanceValue.gif
new file mode 100755
index 0000000..9c80a48
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFile_Fragments_IInstanceValue.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFile_Fragments_IInteractionOccurrence.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFile_Fragments_IInteractionOccurrence.gif
new file mode 100755
index 0000000..83c60f9
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFile_Fragments_IInteractionOccurrence.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFile_Fragments_IInteractionOperand.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFile_Fragments_IInteractionOperand.gif
new file mode 100755
index 0000000..85350ad
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFile_Fragments_IInteractionOperand.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFile_Fragments_IInteractionOperator.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFile_Fragments_IInteractionOperator.gif
new file mode 100755
index 0000000..2d14ab0
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFile_Fragments_IInteractionOperator.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFile_Fragments_IInterfaceItem.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFile_Fragments_IInterfaceItem.gif
new file mode 100755
index 0000000..10bd931
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFile_Fragments_IInterfaceItem.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFile_Fragments_IInternalHyperlink.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFile_Fragments_IInternalHyperlink.gif
new file mode 100755
index 0000000..6b2c3eb
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFile_Fragments_IInternalHyperlink.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFile_Fragments_ILink.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFile_Fragments_ILink.gif
new file mode 100755
index 0000000..02f1a9b
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFile_Fragments_ILink.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFile_Fragments_ILiteralSpecification.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFile_Fragments_ILiteralSpecification.gif
new file mode 100755
index 0000000..2d270f5
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFile_Fragments_ILiteralSpecification.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFile_Fragments_IMHyperLink.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFile_Fragments_IMHyperLink.gif
new file mode 100755
index 0000000..3d60257
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFile_Fragments_IMHyperLink.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFile_Fragments_IMatrixLayout.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFile_Fragments_IMatrixLayout.gif
new file mode 100755
index 0000000..bcd32f7
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFile_Fragments_IMatrixLayout.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFile_Fragments_IMatrixView.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFile_Fragments_IMatrixView.gif
new file mode 100755
index 0000000..83c60f9
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFile_Fragments_IMatrixView.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFile_Fragments_IMessage.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFile_Fragments_IMessage.gif
new file mode 100755
index 0000000..4a48673
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFile_Fragments_IMessage.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFile_Fragments_IMessagePoint.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFile_Fragments_IMessagePoint.gif
new file mode 100755
index 0000000..c958497
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFile_Fragments_IMessagePoint.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFile_Fragments_IModelElement.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFile_Fragments_IModelElement.gif
new file mode 100755
index 0000000..f5bc335
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFile_Fragments_IModelElement.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFile_Fragments_IModule.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFile_Fragments_IModule.gif
new file mode 100755
index 0000000..25b27d1
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFile_Fragments_IModule.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFile_Fragments_INode.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFile_Fragments_INode.gif
new file mode 100755
index 0000000..a5eddfe
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFile_Fragments_INode.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFile_Fragments_IObjectLink.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFile_Fragments_IObjectLink.gif
new file mode 100755
index 0000000..c0de2c7
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFile_Fragments_IObjectLink.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFile_Fragments_IObjectModelDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFile_Fragments_IObjectModelDiagram.gif
new file mode 100755
index 0000000..c958497
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFile_Fragments_IObjectModelDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFile_Fragments_IObjectNode.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFile_Fragments_IObjectNode.gif
new file mode 100755
index 0000000..c617702
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFile_Fragments_IObjectNode.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFile_Fragments_IOperation.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFile_Fragments_IOperation.gif
new file mode 100755
index 0000000..3ea4b78
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFile_Fragments_IOperation.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFile_Fragments_IPackage.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFile_Fragments_IPackage.gif
new file mode 100755
index 0000000..ec68229
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFile_Fragments_IPackage.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFile_Fragments_IPanelDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFile_Fragments_IPanelDiagram.gif
new file mode 100755
index 0000000..ebfad0f
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFile_Fragments_IPanelDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFile_Fragments_IPart.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFile_Fragments_IPart.gif
new file mode 100755
index 0000000..72187d3
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFile_Fragments_IPart.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFile_Fragments_IPin.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFile_Fragments_IPin.gif
new file mode 100755
index 0000000..5ae8833
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFile_Fragments_IPin.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFile_Fragments_IPort.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFile_Fragments_IPort.gif
new file mode 100755
index 0000000..83c60f9
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFile_Fragments_IPort.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFile_Fragments_IPrimitiveOperation.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFile_Fragments_IPrimitiveOperation.gif
new file mode 100755
index 0000000..532e1b6
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFile_Fragments_IPrimitiveOperation.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFile_Fragments_IProfile.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFile_Fragments_IProfile.gif
new file mode 100755
index 0000000..76bab9e
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFile_Fragments_IProfile.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFile_Fragments_IProject.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFile_Fragments_IProject.gif
new file mode 100755
index 0000000..6b2c3eb
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFile_Fragments_IProject.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFile_Fragments_IRelation.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFile_Fragments_IRelation.gif
new file mode 100755
index 0000000..56b3f19
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFile_Fragments_IRelation.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFile_Fragments_IRequirement.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFile_Fragments_IRequirement.gif
new file mode 100755
index 0000000..d09eef9
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFile_Fragments_IRequirement.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFile_Fragments_ISendAction.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFile_Fragments_ISendAction.gif
new file mode 100755
index 0000000..76bab9e
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFile_Fragments_ISendAction.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFile_Fragments_ISequenceDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFile_Fragments_ISequenceDiagram.gif
new file mode 100755
index 0000000..99ae775
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFile_Fragments_ISequenceDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFile_Fragments_IState.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFile_Fragments_IState.gif
new file mode 100755
index 0000000..de9650f
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFile_Fragments_IState.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFile_Fragments_IStateChart.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFile_Fragments_IStateChart.gif
new file mode 100755
index 0000000..5016d02
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFile_Fragments_IStateChart.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFile_Fragments_IStateChartDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFile_Fragments_IStateChartDiagram.gif
new file mode 100755
index 0000000..99ae775
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFile_Fragments_IStateChartDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFile_Fragments_IStateVertex.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFile_Fragments_IStateVertex.gif
new file mode 100755
index 0000000..c0de2c7
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFile_Fragments_IStateVertex.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFile_Fragments_IStereotype.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFile_Fragments_IStereotype.gif
new file mode 100755
index 0000000..d09eef9
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFile_Fragments_IStereotype.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFile_Fragments_IStructureDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFile_Fragments_IStructureDiagram.gif
new file mode 100755
index 0000000..9c80a48
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFile_Fragments_IStructureDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFile_Fragments_ISubsystem.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFile_Fragments_ISubsystem.gif
new file mode 100755
index 0000000..5ae8833
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFile_Fragments_ISubsystem.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFile_Fragments_ISwimlane.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFile_Fragments_ISwimlane.gif
new file mode 100755
index 0000000..b5cf7e3
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFile_Fragments_ISwimlane.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFile_Fragments_ISysMLPort.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFile_Fragments_ISysMLPort.gif
new file mode 100755
index 0000000..25b27d1
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFile_Fragments_ISysMLPort.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFile_Fragments_ITableLayout.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFile_Fragments_ITableLayout.gif
new file mode 100755
index 0000000..10bd931
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFile_Fragments_ITableLayout.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFile_Fragments_ITableView.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFile_Fragments_ITableView.gif
new file mode 100755
index 0000000..99ae775
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFile_Fragments_ITableView.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFile_Fragments_ITag.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFile_Fragments_ITag.gif
new file mode 100755
index 0000000..7938130
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFile_Fragments_ITag.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFile_Fragments_ITemplateInstantiation.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFile_Fragments_ITemplateInstantiation.gif
new file mode 100755
index 0000000..ebfad0f
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFile_Fragments_ITemplateInstantiation.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFile_Fragments_ITemplateInstantiationParameter.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFile_Fragments_ITemplateInstantiationParameter.gif
new file mode 100755
index 0000000..b8f0160
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFile_Fragments_ITemplateInstantiationParameter.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFile_Fragments_ITemplateParameter.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFile_Fragments_ITemplateParameter.gif
new file mode 100755
index 0000000..c958497
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFile_Fragments_ITemplateParameter.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFile_Fragments_ITransition.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFile_Fragments_ITransition.gif
new file mode 100755
index 0000000..6b2c3eb
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFile_Fragments_ITransition.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFile_Fragments_ITrigger.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFile_Fragments_ITrigger.gif
new file mode 100755
index 0000000..ebfad0f
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFile_Fragments_ITrigger.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFile_Fragments_ITriggered.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFile_Fragments_ITriggered.gif
new file mode 100755
index 0000000..b5cf7e3
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFile_Fragments_ITriggered.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFile_Fragments_IType.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFile_Fragments_IType.gif
new file mode 100755
index 0000000..2d14ab0
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFile_Fragments_IType.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFile_Fragments_IUnit.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFile_Fragments_IUnit.gif
new file mode 100755
index 0000000..828b9b1
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFile_Fragments_IUnit.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFile_Fragments_IUseCase.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFile_Fragments_IUseCase.gif
new file mode 100755
index 0000000..888587b
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFile_Fragments_IUseCase.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFile_Fragments_IUseCaseDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFile_Fragments_IUseCaseDiagram.gif
new file mode 100755
index 0000000..e30f5c2
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFile_Fragments_IUseCaseDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFile_Fragments_IValueSpecification.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFile_Fragments_IValueSpecification.gif
new file mode 100755
index 0000000..4a48673
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFile_Fragments_IValueSpecification.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFile_Fragments_IVariable.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFile_Fragments_IVariable.gif
new file mode 100755
index 0000000..99ae775
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFile_Fragments_IVariable.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFile_description_IDescription.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFile_description_IDescription.gif
new file mode 100755
index 0000000..e30f5c2
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFile_description_IDescription.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFile_properties_IPropertyContainer.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFile_properties_IPropertyContainer.gif
new file mode 100755
index 0000000..48f6be5
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFile_properties_IPropertyContainer.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFolder_Elements_IAcceptEventAction.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFolder_Elements_IAcceptEventAction.gif
new file mode 100755
index 0000000..c73000c
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFolder_Elements_IAcceptEventAction.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFolder_Elements_IAcceptTimeEvent.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFolder_Elements_IAcceptTimeEvent.gif
new file mode 100755
index 0000000..eb470e4
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFolder_Elements_IAcceptTimeEvent.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFolder_Elements_IActivityDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFolder_Elements_IActivityDiagram.gif
new file mode 100755
index 0000000..1611c0c
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFolder_Elements_IActivityDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFolder_Elements_IActivityGraph.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFolder_Elements_IActivityGraph.gif
new file mode 100755
index 0000000..903b681
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFolder_Elements_IActivityGraph.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFolder_Elements_IActor.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFolder_Elements_IActor.gif
new file mode 100755
index 0000000..6f31e09
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFolder_Elements_IActor.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFolder_Elements_IAssociationClass.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFolder_Elements_IAssociationClass.gif
new file mode 100755
index 0000000..671932c
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFolder_Elements_IAssociationClass.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFolder_Elements_IAttribute.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFolder_Elements_IAttribute.gif
new file mode 100755
index 0000000..7926c34
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFolder_Elements_IAttribute.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFolder_Elements_ICallOperation.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFolder_Elements_ICallOperation.gif
new file mode 100755
index 0000000..53f75a5
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFolder_Elements_ICallOperation.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFolder_Elements_IClass.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFolder_Elements_IClass.gif
new file mode 100755
index 0000000..5236dce
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFolder_Elements_IClass.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFolder_Elements_ICodeGenConfigInfo.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFolder_Elements_ICodeGenConfigInfo.gif
new file mode 100755
index 0000000..0f63e96
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFolder_Elements_ICodeGenConfigInfo.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFolder_Elements_ICollaborationDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFolder_Elements_ICollaborationDiagram.gif
new file mode 100755
index 0000000..c5afe8f
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFolder_Elements_ICollaborationDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFolder_Elements_IComponent.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFolder_Elements_IComponent.gif
new file mode 100755
index 0000000..eb470e4
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFolder_Elements_IComponent.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFolder_Elements_IComponentDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFolder_Elements_IComponentDiagram.gif
new file mode 100755
index 0000000..e25ba66
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFolder_Elements_IComponentDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFolder_Elements_IDefaultDrvdTrans.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFolder_Elements_IDefaultDrvdTrans.gif
new file mode 100755
index 0000000..98c2fa2
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFolder_Elements_IDefaultDrvdTrans.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFolder_Elements_IDependency.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFolder_Elements_IDependency.gif
new file mode 100755
index 0000000..12ba555
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFolder_Elements_IDependency.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFolder_Elements_IDeploymentDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFolder_Elements_IDeploymentDiagram.gif
new file mode 100755
index 0000000..e87d147
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFolder_Elements_IDeploymentDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFolder_Elements_IDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFolder_Elements_IDiagram.gif
new file mode 100755
index 0000000..ea090fc
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFolder_Elements_IDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFolder_Elements_IHyperLink.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFolder_Elements_IHyperLink.gif
new file mode 100755
index 0000000..62e47f6
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFolder_Elements_IHyperLink.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFolder_Elements_IInformationFlow.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFolder_Elements_IInformationFlow.gif
new file mode 100755
index 0000000..eb470e4
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFolder_Elements_IInformationFlow.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFolder_Elements_IInformationItem.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFolder_Elements_IInformationItem.gif
new file mode 100755
index 0000000..6f31e09
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFolder_Elements_IInformationItem.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFolder_Elements_IMSC.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFolder_Elements_IMSC.gif
new file mode 100755
index 0000000..c73000c
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFolder_Elements_IMSC.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFolder_Elements_IMatrixInstance.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFolder_Elements_IMatrixInstance.gif
new file mode 100755
index 0000000..d056aaf
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFolder_Elements_IMatrixInstance.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFolder_Elements_IMessage.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFolder_Elements_IMessage.gif
new file mode 100755
index 0000000..0456ccd
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFolder_Elements_IMessage.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFolder_Elements_IModule.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFolder_Elements_IModule.gif
new file mode 100755
index 0000000..7732968
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFolder_Elements_IModule.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFolder_Elements_IObjectLink.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFolder_Elements_IObjectLink.gif
new file mode 100755
index 0000000..88f87ee
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFolder_Elements_IObjectLink.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFolder_Elements_IObjectModelDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFolder_Elements_IObjectModelDiagram.gif
new file mode 100755
index 0000000..7754e2a
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFolder_Elements_IObjectModelDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFolder_Elements_IObjectNode.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFolder_Elements_IObjectNode.gif
new file mode 100755
index 0000000..a028a56
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFolder_Elements_IObjectNode.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFolder_Elements_IPanelDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFolder_Elements_IPanelDiagram.gif
new file mode 100755
index 0000000..903b681
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFolder_Elements_IPanelDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFolder_Elements_IPart.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFolder_Elements_IPart.gif
new file mode 100755
index 0000000..a57e119
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFolder_Elements_IPart.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFolder_Elements_IPrimitiveOperation.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFolder_Elements_IPrimitiveOperation.gif
new file mode 100755
index 0000000..671932c
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFolder_Elements_IPrimitiveOperation.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFolder_Elements_IProfile.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFolder_Elements_IProfile.gif
new file mode 100755
index 0000000..c73000c
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFolder_Elements_IProfile.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFolder_Elements_IReception.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFolder_Elements_IReception.gif
new file mode 100755
index 0000000..85753e9
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFolder_Elements_IReception.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFolder_Elements_IReferenceActivity.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFolder_Elements_IReferenceActivity.gif
new file mode 100755
index 0000000..f350f57
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFolder_Elements_IReferenceActivity.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFolder_Elements_IRequirement.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFolder_Elements_IRequirement.gif
new file mode 100755
index 0000000..89970fb
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFolder_Elements_IRequirement.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFolder_Elements_ISequenceDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFolder_Elements_ISequenceDiagram.gif
new file mode 100755
index 0000000..7ca3215
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFolder_Elements_ISequenceDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFolder_Elements_IState.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFolder_Elements_IState.gif
new file mode 100755
index 0000000..aa6e67d
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFolder_Elements_IState.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFolder_Elements_IStateChart.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFolder_Elements_IStateChart.gif
new file mode 100755
index 0000000..62e47f6
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFolder_Elements_IStateChart.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFolder_Elements_IStateChartDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFolder_Elements_IStateChartDiagram.gif
new file mode 100755
index 0000000..7ca3215
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFolder_Elements_IStateChartDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFolder_Elements_IStereotype.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFolder_Elements_IStereotype.gif
new file mode 100755
index 0000000..89970fb
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFolder_Elements_IStereotype.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFolder_Elements_IStructureDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFolder_Elements_IStructureDiagram.gif
new file mode 100755
index 0000000..e853fb3
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFolder_Elements_IStructureDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFolder_Elements_ISubsystem.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFolder_Elements_ISubsystem.gif
new file mode 100755
index 0000000..e83e884
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFolder_Elements_ISubsystem.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFolder_Elements_ISysMLPort.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFolder_Elements_ISysMLPort.gif
new file mode 100755
index 0000000..7732968
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFolder_Elements_ISysMLPort.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFolder_Elements_ITableInstance.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFolder_Elements_ITableInstance.gif
new file mode 100755
index 0000000..85753e9
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFolder_Elements_ITableInstance.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFolder_Elements_ITransition.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFolder_Elements_ITransition.gif
new file mode 100755
index 0000000..4805430
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFolder_Elements_ITransition.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFolder_Elements_IType.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFolder_Elements_IType.gif
new file mode 100755
index 0000000..799d63b
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFolder_Elements_IType.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFolder_Elements_IUCDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFolder_Elements_IUCDiagram.gif
new file mode 100755
index 0000000..8df8ee2
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFolder_Elements_IUCDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFolder_Elements_IUseCase.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFolder_Elements_IUseCase.gif
new file mode 100755
index 0000000..e25ba66
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFolder_Elements_IUseCase.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFolder_Elements_IUseCaseDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFolder_Elements_IUseCaseDiagram.gif
new file mode 100755
index 0000000..22e102f
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFolder_Elements_IUseCaseDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFolder_Files_IFile.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFolder_Files_IFile.gif
new file mode 100755
index 0000000..903b681
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFolder_Files_IFile.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFolder_Files_IFolder.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFolder_Files_IFolder.gif
new file mode 100755
index 0000000..799d63b
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFolder_Files_IFolder.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFork_description_IDescription.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFork_description_IDescription.gif
new file mode 100755
index 0000000..d53ad79
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIFork_description_IDescription.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIGeneralization_Annotations_IConstraint.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIGeneralization_Annotations_IConstraint.gif
new file mode 100755
index 0000000..bdcca7e
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIGeneralization_Annotations_IConstraint.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIGeneralization_Stereotypes_IStereotype.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIGeneralization_Stereotypes_IStereotype.gif
new file mode 100755
index 0000000..b591a5f
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIGeneralization_Stereotypes_IStereotype.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIGeneralization_description_IDescription.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIGeneralization_description_IDescription.gif
new file mode 100755
index 0000000..6366634
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIGeneralization_description_IDescription.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIGeneralization_ti_ITemplateInst.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIGeneralization_ti_ITemplateInst.gif
new file mode 100755
index 0000000..50b6472
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIGeneralization_ti_ITemplateInst.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIInformationFlow_Annotations_IRequirement.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIInformationFlow_Annotations_IRequirement.gif
new file mode 100755
index 0000000..486225e
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIInformationFlow_Annotations_IRequirement.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIInformationFlow_Conveyed_IAssociationClass.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIInformationFlow_Conveyed_IAssociationClass.gif
new file mode 100755
index 0000000..788abfe
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIInformationFlow_Conveyed_IAssociationClass.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIInformationFlow_Conveyed_IClass.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIInformationFlow_Conveyed_IClass.gif
new file mode 100755
index 0000000..9e7c2fb
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIInformationFlow_Conveyed_IClass.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIInformationFlow_Conveyed_IEvent.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIInformationFlow_Conveyed_IEvent.gif
new file mode 100755
index 0000000..2de871f
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIInformationFlow_Conveyed_IEvent.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIInformationFlow_Conveyed_IInformationItem.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIInformationFlow_Conveyed_IInformationItem.gif
new file mode 100755
index 0000000..9422192
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIInformationFlow_Conveyed_IInformationItem.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIInformationFlow_Conveyed_IPart.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIInformationFlow_Conveyed_IPart.gif
new file mode 100755
index 0000000..eb8a29f
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIInformationFlow_Conveyed_IPart.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIInformationFlow_Conveyed_IStateChart.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIInformationFlow_Conveyed_IStateChart.gif
new file mode 100755
index 0000000..c14b909
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIInformationFlow_Conveyed_IStateChart.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIInformationFlow_Dependencies_IDependency.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIInformationFlow_Dependencies_IDependency.gif
new file mode 100755
index 0000000..7118da1
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIInformationFlow_Dependencies_IDependency.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIInformationFlow_Dependencies_IHyperLink.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIInformationFlow_Dependencies_IHyperLink.gif
new file mode 100755
index 0000000..c14b909
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIInformationFlow_Dependencies_IHyperLink.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIInformationFlow_HyperLinks_IMHyperLink.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIInformationFlow_HyperLinks_IMHyperLink.gif
new file mode 100755
index 0000000..aea4252
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIInformationFlow_HyperLinks_IMHyperLink.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIInformationFlow_Stereotypes_IActor.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIInformationFlow_Stereotypes_IActor.gif
new file mode 100755
index 0000000..9422192
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIInformationFlow_Stereotypes_IActor.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIInformationFlow_Stereotypes_IAnnotation.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIInformationFlow_Stereotypes_IAnnotation.gif
new file mode 100755
index 0000000..57d043b
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIInformationFlow_Stereotypes_IAnnotation.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIInformationFlow_Stereotypes_IArgument.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIInformationFlow_Stereotypes_IArgument.gif
new file mode 100755
index 0000000..1934e25
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIInformationFlow_Stereotypes_IArgument.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIInformationFlow_Stereotypes_IAssociationClass.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIInformationFlow_Stereotypes_IAssociationClass.gif
new file mode 100755
index 0000000..788abfe
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIInformationFlow_Stereotypes_IAssociationClass.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIInformationFlow_Stereotypes_IAttribute.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIInformationFlow_Stereotypes_IAttribute.gif
new file mode 100755
index 0000000..9a956d1
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIInformationFlow_Stereotypes_IAttribute.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIInformationFlow_Stereotypes_IClass.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIInformationFlow_Stereotypes_IClass.gif
new file mode 100755
index 0000000..9e7c2fb
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIInformationFlow_Stereotypes_IClass.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIInformationFlow_Stereotypes_IClassifier.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIInformationFlow_Stereotypes_IClassifier.gif
new file mode 100755
index 0000000..3f8b79e
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIInformationFlow_Stereotypes_IClassifier.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIInformationFlow_Stereotypes_ICollaborationDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIInformationFlow_Stereotypes_ICollaborationDiagram.gif
new file mode 100755
index 0000000..de4ddbb
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIInformationFlow_Stereotypes_ICollaborationDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIInformationFlow_Stereotypes_IComment.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIInformationFlow_Stereotypes_IComment.gif
new file mode 100755
index 0000000..479ecaf
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIInformationFlow_Stereotypes_IComment.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIInformationFlow_Stereotypes_IComponent.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIInformationFlow_Stereotypes_IComponent.gif
new file mode 100755
index 0000000..2de871f
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIInformationFlow_Stereotypes_IComponent.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIInformationFlow_Stereotypes_IComponentDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIInformationFlow_Stereotypes_IComponentDiagram.gif
new file mode 100755
index 0000000..1934e25
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIInformationFlow_Stereotypes_IComponentDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIInformationFlow_Stereotypes_IConstraint.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIInformationFlow_Stereotypes_IConstraint.gif
new file mode 100755
index 0000000..b9300d3
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIInformationFlow_Stereotypes_IConstraint.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIInformationFlow_Stereotypes_IControlledFile.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIInformationFlow_Stereotypes_IControlledFile.gif
new file mode 100755
index 0000000..2b85698
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIInformationFlow_Stereotypes_IControlledFile.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIInformationFlow_Stereotypes_IDeploymentDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIInformationFlow_Stereotypes_IDeploymentDiagram.gif
new file mode 100755
index 0000000..ee9dd19
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIInformationFlow_Stereotypes_IDeploymentDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIInformationFlow_Stereotypes_IDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIInformationFlow_Stereotypes_IDiagram.gif
new file mode 100755
index 0000000..7d37ab4
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIInformationFlow_Stereotypes_IDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIInformationFlow_Stereotypes_IEvent.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIInformationFlow_Stereotypes_IEvent.gif
new file mode 100755
index 0000000..2de871f
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIInformationFlow_Stereotypes_IEvent.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIInformationFlow_Stereotypes_IEventReception.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIInformationFlow_Stereotypes_IEventReception.gif
new file mode 100755
index 0000000..b597f08
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIInformationFlow_Stereotypes_IEventReception.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIInformationFlow_Stereotypes_IFile.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIInformationFlow_Stereotypes_IFile.gif
new file mode 100755
index 0000000..5a816ab
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIInformationFlow_Stereotypes_IFile.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIInformationFlow_Stereotypes_IFlowItem.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIInformationFlow_Stereotypes_IFlowItem.gif
new file mode 100755
index 0000000..f0e999e
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIInformationFlow_Stereotypes_IFlowItem.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIInformationFlow_Stereotypes_IInstance.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIInformationFlow_Stereotypes_IInstance.gif
new file mode 100755
index 0000000..5ab63a0
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIInformationFlow_Stereotypes_IInstance.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIInformationFlow_Stereotypes_IInterfaceItem.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIInformationFlow_Stereotypes_IInterfaceItem.gif
new file mode 100755
index 0000000..7d37ab4
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIInformationFlow_Stereotypes_IInterfaceItem.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIInformationFlow_Stereotypes_ILink.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIInformationFlow_Stereotypes_ILink.gif
new file mode 100755
index 0000000..e0a7f3a
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIInformationFlow_Stereotypes_ILink.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIInformationFlow_Stereotypes_IMatrixLayout.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIInformationFlow_Stereotypes_IMatrixLayout.gif
new file mode 100755
index 0000000..ff9c9a0
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIInformationFlow_Stereotypes_IMatrixLayout.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIInformationFlow_Stereotypes_IMatrixView.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIInformationFlow_Stereotypes_IMatrixView.gif
new file mode 100755
index 0000000..2de871f
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIInformationFlow_Stereotypes_IMatrixView.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIInformationFlow_Stereotypes_IModule.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIInformationFlow_Stereotypes_IModule.gif
new file mode 100755
index 0000000..e891a2b
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIInformationFlow_Stereotypes_IModule.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIInformationFlow_Stereotypes_INode.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIInformationFlow_Stereotypes_INode.gif
new file mode 100755
index 0000000..b2f886a
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIInformationFlow_Stereotypes_INode.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIInformationFlow_Stereotypes_IObjectModelDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIInformationFlow_Stereotypes_IObjectModelDiagram.gif
new file mode 100755
index 0000000..12131f2
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIInformationFlow_Stereotypes_IObjectModelDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIInformationFlow_Stereotypes_IOperation.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIInformationFlow_Stereotypes_IOperation.gif
new file mode 100755
index 0000000..ee9dd19
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIInformationFlow_Stereotypes_IOperation.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIInformationFlow_Stereotypes_IPackage.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIInformationFlow_Stereotypes_IPackage.gif
new file mode 100755
index 0000000..14ad125
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIInformationFlow_Stereotypes_IPackage.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIInformationFlow_Stereotypes_IPanelDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIInformationFlow_Stereotypes_IPanelDiagram.gif
new file mode 100755
index 0000000..5a816ab
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIInformationFlow_Stereotypes_IPanelDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIInformationFlow_Stereotypes_IPort.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIInformationFlow_Stereotypes_IPort.gif
new file mode 100755
index 0000000..2de871f
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIInformationFlow_Stereotypes_IPort.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIInformationFlow_Stereotypes_IProfile.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIInformationFlow_Stereotypes_IProfile.gif
new file mode 100755
index 0000000..b9300d3
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIInformationFlow_Stereotypes_IProfile.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIInformationFlow_Stereotypes_IProject.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIInformationFlow_Stereotypes_IProject.gif
new file mode 100755
index 0000000..bda736b
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIInformationFlow_Stereotypes_IProject.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIInformationFlow_Stereotypes_IRelation.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIInformationFlow_Stereotypes_IRelation.gif
new file mode 100755
index 0000000..78ca278
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIInformationFlow_Stereotypes_IRelation.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIInformationFlow_Stereotypes_IRequirement.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIInformationFlow_Stereotypes_IRequirement.gif
new file mode 100755
index 0000000..486225e
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIInformationFlow_Stereotypes_IRequirement.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIInformationFlow_Stereotypes_ISequenceDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIInformationFlow_Stereotypes_ISequenceDiagram.gif
new file mode 100755
index 0000000..3f2250f
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIInformationFlow_Stereotypes_ISequenceDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIInformationFlow_Stereotypes_IStateChart.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIInformationFlow_Stereotypes_IStateChart.gif
new file mode 100755
index 0000000..c14b909
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIInformationFlow_Stereotypes_IStateChart.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIInformationFlow_Stereotypes_IStateChartDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIInformationFlow_Stereotypes_IStateChartDiagram.gif
new file mode 100755
index 0000000..3f2250f
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIInformationFlow_Stereotypes_IStateChartDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIInformationFlow_Stereotypes_IStereotype.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIInformationFlow_Stereotypes_IStereotype.gif
new file mode 100755
index 0000000..486225e
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIInformationFlow_Stereotypes_IStereotype.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIInformationFlow_Stereotypes_IStructureDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIInformationFlow_Stereotypes_IStructureDiagram.gif
new file mode 100755
index 0000000..57d043b
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIInformationFlow_Stereotypes_IStructureDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIInformationFlow_Stereotypes_ISysMLPort.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIInformationFlow_Stereotypes_ISysMLPort.gif
new file mode 100755
index 0000000..e891a2b
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIInformationFlow_Stereotypes_ISysMLPort.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIInformationFlow_Stereotypes_ITableLayout.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIInformationFlow_Stereotypes_ITableLayout.gif
new file mode 100755
index 0000000..7d37ab4
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIInformationFlow_Stereotypes_ITableLayout.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIInformationFlow_Stereotypes_ITableView.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIInformationFlow_Stereotypes_ITableView.gif
new file mode 100755
index 0000000..3f2250f
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIInformationFlow_Stereotypes_ITableView.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIInformationFlow_Stereotypes_ITag.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIInformationFlow_Stereotypes_ITag.gif
new file mode 100755
index 0000000..c6c7731
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIInformationFlow_Stereotypes_ITag.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIInformationFlow_Stereotypes_ITemplateParameter.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIInformationFlow_Stereotypes_ITemplateParameter.gif
new file mode 100755
index 0000000..12131f2
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIInformationFlow_Stereotypes_ITemplateParameter.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIInformationFlow_Stereotypes_IType.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIInformationFlow_Stereotypes_IType.gif
new file mode 100755
index 0000000..82f3250
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIInformationFlow_Stereotypes_IType.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIInformationFlow_Stereotypes_IUnit.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIInformationFlow_Stereotypes_IUnit.gif
new file mode 100755
index 0000000..207c470
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIInformationFlow_Stereotypes_IUnit.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIInformationFlow_Stereotypes_IUseCase.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIInformationFlow_Stereotypes_IUseCase.gif
new file mode 100755
index 0000000..1934e25
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIInformationFlow_Stereotypes_IUseCase.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIInformationFlow_Stereotypes_IUseCaseDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIInformationFlow_Stereotypes_IUseCaseDiagram.gif
new file mode 100755
index 0000000..479ecaf
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIInformationFlow_Stereotypes_IUseCaseDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIInformationFlow_Stereotypes_IVariable.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIInformationFlow_Stereotypes_IVariable.gif
new file mode 100755
index 0000000..3f2250f
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIInformationFlow_Stereotypes_IVariable.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIInformationFlow_Tags_ITag.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIInformationFlow_Tags_ITag.gif
new file mode 100755
index 0000000..c6c7731
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIInformationFlow_Tags_ITag.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIInformationFlow_description_IDescription.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIInformationFlow_description_IDescription.gif
new file mode 100755
index 0000000..479ecaf
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIInformationFlow_description_IDescription.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIInformationItem_Annotations_IRequirement.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIInformationItem_Annotations_IRequirement.gif
new file mode 100755
index 0000000..755e4ca
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIInformationItem_Annotations_IRequirement.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIInformationItem_Represented_IEvent.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIInformationItem_Represented_IEvent.gif
new file mode 100755
index 0000000..0cc4a4a
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIInformationItem_Represented_IEvent.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIInformationItem_description_IDescription.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIInformationItem_description_IDescription.gif
new file mode 100755
index 0000000..2249611
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIInformationItem_description_IDescription.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIInteractionOccurrence_Stereotypes_IStereotype.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIInteractionOccurrence_Stereotypes_IStereotype.gif
new file mode 100755
index 0000000..486225e
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIInteractionOccurrence_Stereotypes_IStereotype.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIInteractionOccurrence_Tags_ITag.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIInteractionOccurrence_Tags_ITag.gif
new file mode 100755
index 0000000..c6c7731
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIInteractionOccurrence_Tags_ITag.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateILinkInstance_instantiates_IMetaLinkHandle.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateILinkInstance_instantiates_IMetaLinkHandle.gif
new file mode 100755
index 0000000..4aa68ea
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateILinkInstance_instantiates_IMetaLinkHandle.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMHyperLink_description_IDescription.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMHyperLink_description_IDescription.gif
new file mode 100755
index 0000000..3dcb65c
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMHyperLink_description_IDescription.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMHyperLink_properties_IPropertyContainer.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMHyperLink_properties_IPropertyContainer.gif
new file mode 100755
index 0000000..3ecfb1a
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMHyperLink_properties_IPropertyContainer.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMSC_Annotations_IAnnotation.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMSC_Annotations_IAnnotation.gif
new file mode 100755
index 0000000..075352b
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMSC_Annotations_IAnnotation.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMSC_Annotations_IComment.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMSC_Annotations_IComment.gif
new file mode 100755
index 0000000..5937668
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMSC_Annotations_IComment.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMSC_Annotations_IConstraint.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMSC_Annotations_IConstraint.gif
new file mode 100755
index 0000000..90b42b5
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMSC_Annotations_IConstraint.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMSC_Annotations_IRequirement.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMSC_Annotations_IRequirement.gif
new file mode 100755
index 0000000..a021a81
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMSC_Annotations_IRequirement.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMSC_Stereotypes_IActor.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMSC_Stereotypes_IActor.gif
new file mode 100755
index 0000000..3483523
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMSC_Stereotypes_IActor.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMSC_Stereotypes_IAssociationClass.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMSC_Stereotypes_IAssociationClass.gif
new file mode 100755
index 0000000..dd256cc
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMSC_Stereotypes_IAssociationClass.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMSC_Stereotypes_IClass.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMSC_Stereotypes_IClass.gif
new file mode 100755
index 0000000..79263fb
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMSC_Stereotypes_IClass.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMSC_Stereotypes_IClassifier.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMSC_Stereotypes_IClassifier.gif
new file mode 100755
index 0000000..aa20a64
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMSC_Stereotypes_IClassifier.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMSC_Stereotypes_IEvent.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMSC_Stereotypes_IEvent.gif
new file mode 100755
index 0000000..8fd571a
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMSC_Stereotypes_IEvent.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMSC_Stereotypes_IEventReception.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMSC_Stereotypes_IEventReception.gif
new file mode 100755
index 0000000..c51ddff
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMSC_Stereotypes_IEventReception.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMSC_Stereotypes_IFlowItem.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMSC_Stereotypes_IFlowItem.gif
new file mode 100755
index 0000000..50ac6da
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMSC_Stereotypes_IFlowItem.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMSC_Stereotypes_IInterfaceItem.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMSC_Stereotypes_IInterfaceItem.gif
new file mode 100755
index 0000000..2072844
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMSC_Stereotypes_IInterfaceItem.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMSC_Stereotypes_INode.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMSC_Stereotypes_INode.gif
new file mode 100755
index 0000000..ca79a7f
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMSC_Stereotypes_INode.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMSC_Stereotypes_IOperation.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMSC_Stereotypes_IOperation.gif
new file mode 100755
index 0000000..7d18f38
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMSC_Stereotypes_IOperation.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMSC_Stereotypes_IStateChart.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMSC_Stereotypes_IStateChart.gif
new file mode 100755
index 0000000..b8d07e0
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMSC_Stereotypes_IStateChart.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMSC_Stereotypes_IStereotype.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMSC_Stereotypes_IStereotype.gif
new file mode 100755
index 0000000..a021a81
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMSC_Stereotypes_IStereotype.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMSC_Stereotypes_IType.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMSC_Stereotypes_IType.gif
new file mode 100755
index 0000000..27dbe98
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMSC_Stereotypes_IType.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMSC_Stereotypes_IUseCase.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMSC_Stereotypes_IUseCase.gif
new file mode 100755
index 0000000..9ca6861
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMSC_Stereotypes_IUseCase.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMSC_Tags_ITag.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMSC_Tags_ITag.gif
new file mode 100755
index 0000000..2327061
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMSC_Tags_ITag.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMSC_description_IDescription.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMSC_description_IDescription.gif
new file mode 100755
index 0000000..5937668
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMSC_description_IDescription.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMSC_graphicChart_CGIMscChart.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMSC_graphicChart_CGIMscChart.gif
new file mode 100755
index 0000000..00d05b7
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMSC_graphicChart_CGIMscChart.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMSC_m_pICollaboration_ICollaboration.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMSC_m_pICollaboration_ICollaboration.gif
new file mode 100755
index 0000000..f9aefc5
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMSC_m_pICollaboration_ICollaboration.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMSC_m_pICollaboration_IInteractionOperand.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMSC_m_pICollaboration_IInteractionOperand.gif
new file mode 100755
index 0000000..17776a1
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMSC_m_pICollaboration_IInteractionOperand.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMSC_properties_IPropertyContainer.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMSC_properties_IPropertyContainer.gif
new file mode 100755
index 0000000..a88faa1
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMSC_properties_IPropertyContainer.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMatrixInstance_FromScopeHandles_IAcceptEventAction.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMatrixInstance_FromScopeHandles_IAcceptEventAction.gif
new file mode 100755
index 0000000..7e48702
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMatrixInstance_FromScopeHandles_IAcceptEventAction.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMatrixInstance_FromScopeHandles_IAcceptTimeEvent.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMatrixInstance_FromScopeHandles_IAcceptTimeEvent.gif
new file mode 100755
index 0000000..7f95c32
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMatrixInstance_FromScopeHandles_IAcceptTimeEvent.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMatrixInstance_FromScopeHandles_IActivityGraph.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMatrixInstance_FromScopeHandles_IActivityGraph.gif
new file mode 100755
index 0000000..a29500a
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMatrixInstance_FromScopeHandles_IActivityGraph.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMatrixInstance_FromScopeHandles_IActor.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMatrixInstance_FromScopeHandles_IActor.gif
new file mode 100755
index 0000000..b12797a
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMatrixInstance_FromScopeHandles_IActor.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMatrixInstance_FromScopeHandles_IAnchor.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMatrixInstance_FromScopeHandles_IAnchor.gif
new file mode 100755
index 0000000..5392826
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMatrixInstance_FromScopeHandles_IAnchor.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMatrixInstance_FromScopeHandles_IAssociationClass.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMatrixInstance_FromScopeHandles_IAssociationClass.gif
new file mode 100755
index 0000000..c0ac967
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMatrixInstance_FromScopeHandles_IAssociationClass.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMatrixInstance_FromScopeHandles_IAssociationEnd.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMatrixInstance_FromScopeHandles_IAssociationEnd.gif
new file mode 100755
index 0000000..6f2bb5e
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMatrixInstance_FromScopeHandles_IAssociationEnd.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMatrixInstance_FromScopeHandles_IAttribute.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMatrixInstance_FromScopeHandles_IAttribute.gif
new file mode 100755
index 0000000..98a66f1
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMatrixInstance_FromScopeHandles_IAttribute.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMatrixInstance_FromScopeHandles_IBlock.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMatrixInstance_FromScopeHandles_IBlock.gif
new file mode 100755
index 0000000..6153c8d
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMatrixInstance_FromScopeHandles_IBlock.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMatrixInstance_FromScopeHandles_ICallOperation.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMatrixInstance_FromScopeHandles_ICallOperation.gif
new file mode 100755
index 0000000..38bb022
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMatrixInstance_FromScopeHandles_ICallOperation.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMatrixInstance_FromScopeHandles_IClass.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMatrixInstance_FromScopeHandles_IClass.gif
new file mode 100755
index 0000000..8ef5b7d
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMatrixInstance_FromScopeHandles_IClass.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMatrixInstance_FromScopeHandles_IClassHandle.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMatrixInstance_FromScopeHandles_IClassHandle.gif
new file mode 100755
index 0000000..a4b32ea
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMatrixInstance_FromScopeHandles_IClassHandle.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMatrixInstance_FromScopeHandles_IClassInstance.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMatrixInstance_FromScopeHandles_IClassInstance.gif
new file mode 100755
index 0000000..fe0e4b2
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMatrixInstance_FromScopeHandles_IClassInstance.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMatrixInstance_FromScopeHandles_ICollaboration.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMatrixInstance_FromScopeHandles_ICollaboration.gif
new file mode 100755
index 0000000..7db2eca
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMatrixInstance_FromScopeHandles_ICollaboration.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMatrixInstance_FromScopeHandles_ICollaborationDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMatrixInstance_FromScopeHandles_ICollaborationDiagram.gif
new file mode 100755
index 0000000..70b94f3
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMatrixInstance_FromScopeHandles_ICollaborationDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMatrixInstance_FromScopeHandles_IComponent.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMatrixInstance_FromScopeHandles_IComponent.gif
new file mode 100755
index 0000000..7f95c32
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMatrixInstance_FromScopeHandles_IComponent.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMatrixInstance_FromScopeHandles_IComponentDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMatrixInstance_FromScopeHandles_IComponentDiagram.gif
new file mode 100755
index 0000000..4308f7a
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMatrixInstance_FromScopeHandles_IComponentDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMatrixInstance_FromScopeHandles_IDeploymentDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMatrixInstance_FromScopeHandles_IDeploymentDiagram.gif
new file mode 100755
index 0000000..f79fcad
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMatrixInstance_FromScopeHandles_IDeploymentDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMatrixInstance_FromScopeHandles_IDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMatrixInstance_FromScopeHandles_IDiagram.gif
new file mode 100755
index 0000000..e56e445
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMatrixInstance_FromScopeHandles_IDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMatrixInstance_FromScopeHandles_IEvent.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMatrixInstance_FromScopeHandles_IEvent.gif
new file mode 100755
index 0000000..7f95c32
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMatrixInstance_FromScopeHandles_IEvent.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMatrixInstance_FromScopeHandles_IInteractionOperand.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMatrixInstance_FromScopeHandles_IInteractionOperand.gif
new file mode 100755
index 0000000..88eda90
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMatrixInstance_FromScopeHandles_IInteractionOperand.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMatrixInstance_FromScopeHandles_ILink.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMatrixInstance_FromScopeHandles_ILink.gif
new file mode 100755
index 0000000..6153c8d
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMatrixInstance_FromScopeHandles_ILink.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMatrixInstance_FromScopeHandles_ILinkInstance.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMatrixInstance_FromScopeHandles_ILinkInstance.gif
new file mode 100755
index 0000000..e56e445
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMatrixInstance_FromScopeHandles_ILinkInstance.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMatrixInstance_FromScopeHandles_IMetaLinkHandle.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMatrixInstance_FromScopeHandles_IMetaLinkHandle.gif
new file mode 100755
index 0000000..05e906c
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMatrixInstance_FromScopeHandles_IMetaLinkHandle.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMatrixInstance_FromScopeHandles_IModule.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMatrixInstance_FromScopeHandles_IModule.gif
new file mode 100755
index 0000000..4d10d57
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMatrixInstance_FromScopeHandles_IModule.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMatrixInstance_FromScopeHandles_IObjectLink.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMatrixInstance_FromScopeHandles_IObjectLink.gif
new file mode 100755
index 0000000..a4b32ea
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMatrixInstance_FromScopeHandles_IObjectLink.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMatrixInstance_FromScopeHandles_IObjectModelDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMatrixInstance_FromScopeHandles_IObjectModelDiagram.gif
new file mode 100755
index 0000000..f8fc1d5
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMatrixInstance_FromScopeHandles_IObjectModelDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMatrixInstance_FromScopeHandles_IObjectNode.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMatrixInstance_FromScopeHandles_IObjectNode.gif
new file mode 100755
index 0000000..9564e3f
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMatrixInstance_FromScopeHandles_IObjectNode.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMatrixInstance_FromScopeHandles_IPanelDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMatrixInstance_FromScopeHandles_IPanelDiagram.gif
new file mode 100755
index 0000000..a29500a
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMatrixInstance_FromScopeHandles_IPanelDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMatrixInstance_FromScopeHandles_IPart.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMatrixInstance_FromScopeHandles_IPart.gif
new file mode 100755
index 0000000..05eb255
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMatrixInstance_FromScopeHandles_IPart.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMatrixInstance_FromScopeHandles_IPrimitiveOperation.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMatrixInstance_FromScopeHandles_IPrimitiveOperation.gif
new file mode 100755
index 0000000..c0ac967
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMatrixInstance_FromScopeHandles_IPrimitiveOperation.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMatrixInstance_FromScopeHandles_IProject.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMatrixInstance_FromScopeHandles_IProject.gif
new file mode 100755
index 0000000..c565965
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMatrixInstance_FromScopeHandles_IProject.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMatrixInstance_FromScopeHandles_ISequenceDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMatrixInstance_FromScopeHandles_ISequenceDiagram.gif
new file mode 100755
index 0000000..bb83437
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMatrixInstance_FromScopeHandles_ISequenceDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMatrixInstance_FromScopeHandles_IState.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMatrixInstance_FromScopeHandles_IState.gif
new file mode 100755
index 0000000..58b76d6
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMatrixInstance_FromScopeHandles_IState.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMatrixInstance_FromScopeHandles_IStateChart.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMatrixInstance_FromScopeHandles_IStateChart.gif
new file mode 100755
index 0000000..20c81cc
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMatrixInstance_FromScopeHandles_IStateChart.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMatrixInstance_FromScopeHandles_IStateChartDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMatrixInstance_FromScopeHandles_IStateChartDiagram.gif
new file mode 100755
index 0000000..bb83437
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMatrixInstance_FromScopeHandles_IStateChartDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMatrixInstance_FromScopeHandles_IStereotype.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMatrixInstance_FromScopeHandles_IStereotype.gif
new file mode 100755
index 0000000..eec2bf2
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMatrixInstance_FromScopeHandles_IStereotype.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMatrixInstance_FromScopeHandles_IStructureDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMatrixInstance_FromScopeHandles_IStructureDiagram.gif
new file mode 100755
index 0000000..1010ed8
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMatrixInstance_FromScopeHandles_IStructureDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMatrixInstance_FromScopeHandles_ISubsystem.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMatrixInstance_FromScopeHandles_ISubsystem.gif
new file mode 100755
index 0000000..3a4e9ad
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMatrixInstance_FromScopeHandles_ISubsystem.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMatrixInstance_FromScopeHandles_ITag.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMatrixInstance_FromScopeHandles_ITag.gif
new file mode 100755
index 0000000..3e10c2d
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMatrixInstance_FromScopeHandles_ITag.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMatrixInstance_FromScopeHandles_IType.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMatrixInstance_FromScopeHandles_IType.gif
new file mode 100755
index 0000000..589f779
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMatrixInstance_FromScopeHandles_IType.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMatrixInstance_FromScopeHandles_IUCDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMatrixInstance_FromScopeHandles_IUCDiagram.gif
new file mode 100755
index 0000000..88eda90
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMatrixInstance_FromScopeHandles_IUCDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMatrixInstance_FromScopeHandles_IUseCaseDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMatrixInstance_FromScopeHandles_IUseCaseDiagram.gif
new file mode 100755
index 0000000..e4e0bbd
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMatrixInstance_FromScopeHandles_IUseCaseDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMatrixInstance_Stereotypes_IActor.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMatrixInstance_Stereotypes_IActor.gif
new file mode 100755
index 0000000..b12797a
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMatrixInstance_Stereotypes_IActor.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMatrixInstance_Stereotypes_IAssociationClass.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMatrixInstance_Stereotypes_IAssociationClass.gif
new file mode 100755
index 0000000..c0ac967
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMatrixInstance_Stereotypes_IAssociationClass.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMatrixInstance_Stereotypes_IClass.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMatrixInstance_Stereotypes_IClass.gif
new file mode 100755
index 0000000..8ef5b7d
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMatrixInstance_Stereotypes_IClass.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMatrixInstance_Stereotypes_IClassifier.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMatrixInstance_Stereotypes_IClassifier.gif
new file mode 100755
index 0000000..e49e801
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMatrixInstance_Stereotypes_IClassifier.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMatrixInstance_Stereotypes_IEvent.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMatrixInstance_Stereotypes_IEvent.gif
new file mode 100755
index 0000000..7f95c32
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMatrixInstance_Stereotypes_IEvent.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMatrixInstance_Stereotypes_IEventReception.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMatrixInstance_Stereotypes_IEventReception.gif
new file mode 100755
index 0000000..8bacded
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMatrixInstance_Stereotypes_IEventReception.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMatrixInstance_Stereotypes_IFlowItem.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMatrixInstance_Stereotypes_IFlowItem.gif
new file mode 100755
index 0000000..b03b80a
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMatrixInstance_Stereotypes_IFlowItem.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMatrixInstance_Stereotypes_IInterfaceItem.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMatrixInstance_Stereotypes_IInterfaceItem.gif
new file mode 100755
index 0000000..e56e445
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMatrixInstance_Stereotypes_IInterfaceItem.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMatrixInstance_Stereotypes_INode.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMatrixInstance_Stereotypes_INode.gif
new file mode 100755
index 0000000..5c173f1
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMatrixInstance_Stereotypes_INode.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMatrixInstance_Stereotypes_IOperation.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMatrixInstance_Stereotypes_IOperation.gif
new file mode 100755
index 0000000..f79fcad
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMatrixInstance_Stereotypes_IOperation.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMatrixInstance_Stereotypes_IStateChart.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMatrixInstance_Stereotypes_IStateChart.gif
new file mode 100755
index 0000000..20c81cc
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMatrixInstance_Stereotypes_IStateChart.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMatrixInstance_Stereotypes_IStereotype.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMatrixInstance_Stereotypes_IStereotype.gif
new file mode 100755
index 0000000..eec2bf2
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMatrixInstance_Stereotypes_IStereotype.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMatrixInstance_Stereotypes_IType.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMatrixInstance_Stereotypes_IType.gif
new file mode 100755
index 0000000..589f779
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMatrixInstance_Stereotypes_IType.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMatrixInstance_Stereotypes_IUseCase.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMatrixInstance_Stereotypes_IUseCase.gif
new file mode 100755
index 0000000..4308f7a
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMatrixInstance_Stereotypes_IUseCase.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMatrixInstance_ToScopeHandles_IAcceptEventAction.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMatrixInstance_ToScopeHandles_IAcceptEventAction.gif
new file mode 100755
index 0000000..7e48702
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMatrixInstance_ToScopeHandles_IAcceptEventAction.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMatrixInstance_ToScopeHandles_IAcceptTimeEvent.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMatrixInstance_ToScopeHandles_IAcceptTimeEvent.gif
new file mode 100755
index 0000000..7f95c32
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMatrixInstance_ToScopeHandles_IAcceptTimeEvent.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMatrixInstance_ToScopeHandles_IActivityGraph.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMatrixInstance_ToScopeHandles_IActivityGraph.gif
new file mode 100755
index 0000000..a29500a
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMatrixInstance_ToScopeHandles_IActivityGraph.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMatrixInstance_ToScopeHandles_IActor.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMatrixInstance_ToScopeHandles_IActor.gif
new file mode 100755
index 0000000..b12797a
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMatrixInstance_ToScopeHandles_IActor.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMatrixInstance_ToScopeHandles_IAnchor.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMatrixInstance_ToScopeHandles_IAnchor.gif
new file mode 100755
index 0000000..5392826
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMatrixInstance_ToScopeHandles_IAnchor.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMatrixInstance_ToScopeHandles_IAssociationClass.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMatrixInstance_ToScopeHandles_IAssociationClass.gif
new file mode 100755
index 0000000..c0ac967
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMatrixInstance_ToScopeHandles_IAssociationClass.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMatrixInstance_ToScopeHandles_IAssociationEnd.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMatrixInstance_ToScopeHandles_IAssociationEnd.gif
new file mode 100755
index 0000000..6f2bb5e
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMatrixInstance_ToScopeHandles_IAssociationEnd.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMatrixInstance_ToScopeHandles_IAttribute.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMatrixInstance_ToScopeHandles_IAttribute.gif
new file mode 100755
index 0000000..98a66f1
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMatrixInstance_ToScopeHandles_IAttribute.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMatrixInstance_ToScopeHandles_IBlock.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMatrixInstance_ToScopeHandles_IBlock.gif
new file mode 100755
index 0000000..6153c8d
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMatrixInstance_ToScopeHandles_IBlock.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMatrixInstance_ToScopeHandles_ICallOperation.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMatrixInstance_ToScopeHandles_ICallOperation.gif
new file mode 100755
index 0000000..38bb022
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMatrixInstance_ToScopeHandles_ICallOperation.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMatrixInstance_ToScopeHandles_IClass.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMatrixInstance_ToScopeHandles_IClass.gif
new file mode 100755
index 0000000..8ef5b7d
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMatrixInstance_ToScopeHandles_IClass.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMatrixInstance_ToScopeHandles_IClassHandle.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMatrixInstance_ToScopeHandles_IClassHandle.gif
new file mode 100755
index 0000000..a4b32ea
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMatrixInstance_ToScopeHandles_IClassHandle.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMatrixInstance_ToScopeHandles_IClassInstance.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMatrixInstance_ToScopeHandles_IClassInstance.gif
new file mode 100755
index 0000000..fe0e4b2
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMatrixInstance_ToScopeHandles_IClassInstance.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMatrixInstance_ToScopeHandles_ICollaboration.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMatrixInstance_ToScopeHandles_ICollaboration.gif
new file mode 100755
index 0000000..7db2eca
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMatrixInstance_ToScopeHandles_ICollaboration.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMatrixInstance_ToScopeHandles_ICollaborationDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMatrixInstance_ToScopeHandles_ICollaborationDiagram.gif
new file mode 100755
index 0000000..70b94f3
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMatrixInstance_ToScopeHandles_ICollaborationDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMatrixInstance_ToScopeHandles_IComponent.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMatrixInstance_ToScopeHandles_IComponent.gif
new file mode 100755
index 0000000..7f95c32
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMatrixInstance_ToScopeHandles_IComponent.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMatrixInstance_ToScopeHandles_IComponentDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMatrixInstance_ToScopeHandles_IComponentDiagram.gif
new file mode 100755
index 0000000..4308f7a
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMatrixInstance_ToScopeHandles_IComponentDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMatrixInstance_ToScopeHandles_IDeploymentDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMatrixInstance_ToScopeHandles_IDeploymentDiagram.gif
new file mode 100755
index 0000000..f79fcad
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMatrixInstance_ToScopeHandles_IDeploymentDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMatrixInstance_ToScopeHandles_IDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMatrixInstance_ToScopeHandles_IDiagram.gif
new file mode 100755
index 0000000..e56e445
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMatrixInstance_ToScopeHandles_IDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMatrixInstance_ToScopeHandles_IEvent.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMatrixInstance_ToScopeHandles_IEvent.gif
new file mode 100755
index 0000000..7f95c32
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMatrixInstance_ToScopeHandles_IEvent.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMatrixInstance_ToScopeHandles_IInteractionOperand.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMatrixInstance_ToScopeHandles_IInteractionOperand.gif
new file mode 100755
index 0000000..88eda90
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMatrixInstance_ToScopeHandles_IInteractionOperand.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMatrixInstance_ToScopeHandles_ILink.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMatrixInstance_ToScopeHandles_ILink.gif
new file mode 100755
index 0000000..6153c8d
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMatrixInstance_ToScopeHandles_ILink.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMatrixInstance_ToScopeHandles_ILinkInstance.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMatrixInstance_ToScopeHandles_ILinkInstance.gif
new file mode 100755
index 0000000..e56e445
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMatrixInstance_ToScopeHandles_ILinkInstance.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMatrixInstance_ToScopeHandles_IMetaLinkHandle.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMatrixInstance_ToScopeHandles_IMetaLinkHandle.gif
new file mode 100755
index 0000000..05e906c
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMatrixInstance_ToScopeHandles_IMetaLinkHandle.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMatrixInstance_ToScopeHandles_IModule.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMatrixInstance_ToScopeHandles_IModule.gif
new file mode 100755
index 0000000..4d10d57
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMatrixInstance_ToScopeHandles_IModule.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMatrixInstance_ToScopeHandles_IObjectLink.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMatrixInstance_ToScopeHandles_IObjectLink.gif
new file mode 100755
index 0000000..a4b32ea
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMatrixInstance_ToScopeHandles_IObjectLink.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMatrixInstance_ToScopeHandles_IObjectModelDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMatrixInstance_ToScopeHandles_IObjectModelDiagram.gif
new file mode 100755
index 0000000..f8fc1d5
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMatrixInstance_ToScopeHandles_IObjectModelDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMatrixInstance_ToScopeHandles_IObjectNode.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMatrixInstance_ToScopeHandles_IObjectNode.gif
new file mode 100755
index 0000000..9564e3f
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMatrixInstance_ToScopeHandles_IObjectNode.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMatrixInstance_ToScopeHandles_IPanelDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMatrixInstance_ToScopeHandles_IPanelDiagram.gif
new file mode 100755
index 0000000..a29500a
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMatrixInstance_ToScopeHandles_IPanelDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMatrixInstance_ToScopeHandles_IPart.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMatrixInstance_ToScopeHandles_IPart.gif
new file mode 100755
index 0000000..05eb255
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMatrixInstance_ToScopeHandles_IPart.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMatrixInstance_ToScopeHandles_IPrimitiveOperation.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMatrixInstance_ToScopeHandles_IPrimitiveOperation.gif
new file mode 100755
index 0000000..c0ac967
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMatrixInstance_ToScopeHandles_IPrimitiveOperation.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMatrixInstance_ToScopeHandles_IProject.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMatrixInstance_ToScopeHandles_IProject.gif
new file mode 100755
index 0000000..c565965
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMatrixInstance_ToScopeHandles_IProject.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMatrixInstance_ToScopeHandles_ISequenceDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMatrixInstance_ToScopeHandles_ISequenceDiagram.gif
new file mode 100755
index 0000000..bb83437
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMatrixInstance_ToScopeHandles_ISequenceDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMatrixInstance_ToScopeHandles_IState.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMatrixInstance_ToScopeHandles_IState.gif
new file mode 100755
index 0000000..58b76d6
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMatrixInstance_ToScopeHandles_IState.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMatrixInstance_ToScopeHandles_IStateChart.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMatrixInstance_ToScopeHandles_IStateChart.gif
new file mode 100755
index 0000000..20c81cc
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMatrixInstance_ToScopeHandles_IStateChart.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMatrixInstance_ToScopeHandles_IStateChartDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMatrixInstance_ToScopeHandles_IStateChartDiagram.gif
new file mode 100755
index 0000000..bb83437
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMatrixInstance_ToScopeHandles_IStateChartDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMatrixInstance_ToScopeHandles_IStereotype.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMatrixInstance_ToScopeHandles_IStereotype.gif
new file mode 100755
index 0000000..eec2bf2
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMatrixInstance_ToScopeHandles_IStereotype.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMatrixInstance_ToScopeHandles_IStructureDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMatrixInstance_ToScopeHandles_IStructureDiagram.gif
new file mode 100755
index 0000000..1010ed8
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMatrixInstance_ToScopeHandles_IStructureDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMatrixInstance_ToScopeHandles_ISubsystem.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMatrixInstance_ToScopeHandles_ISubsystem.gif
new file mode 100755
index 0000000..3a4e9ad
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMatrixInstance_ToScopeHandles_ISubsystem.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMatrixInstance_ToScopeHandles_ITag.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMatrixInstance_ToScopeHandles_ITag.gif
new file mode 100755
index 0000000..3e10c2d
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMatrixInstance_ToScopeHandles_ITag.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMatrixInstance_ToScopeHandles_IType.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMatrixInstance_ToScopeHandles_IType.gif
new file mode 100755
index 0000000..589f779
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMatrixInstance_ToScopeHandles_IType.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMatrixInstance_ToScopeHandles_IUCDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMatrixInstance_ToScopeHandles_IUCDiagram.gif
new file mode 100755
index 0000000..88eda90
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMatrixInstance_ToScopeHandles_IUCDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMatrixInstance_ToScopeHandles_IUseCaseDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMatrixInstance_ToScopeHandles_IUseCaseDiagram.gif
new file mode 100755
index 0000000..e4e0bbd
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMatrixInstance_ToScopeHandles_IUseCaseDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMatrixInstance_properties_IPropertyContainer.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMatrixInstance_properties_IPropertyContainer.gif
new file mode 100755
index 0000000..2626349
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMatrixInstance_properties_IPropertyContainer.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMatrixLayout_CellElementTypes_TableDataDefinition.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMatrixLayout_CellElementTypes_TableDataDefinition.gif
new file mode 100755
index 0000000..ea9abe7
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMatrixLayout_CellElementTypes_TableDataDefinition.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMatrixLayout_FromElementTypes_TableDataDefinition.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMatrixLayout_FromElementTypes_TableDataDefinition.gif
new file mode 100755
index 0000000..ea9abe7
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMatrixLayout_FromElementTypes_TableDataDefinition.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMatrixLayout_ToElementTypes_TableDataDefinition.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMatrixLayout_ToElementTypes_TableDataDefinition.gif
new file mode 100755
index 0000000..ea9abe7
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMatrixLayout_ToElementTypes_TableDataDefinition.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMatrixLayout_description_IDescription.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMatrixLayout_description_IDescription.gif
new file mode 100755
index 0000000..f58e5a1
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMatrixLayout_description_IDescription.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMessage_Stereotypes_IActor.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMessage_Stereotypes_IActor.gif
new file mode 100755
index 0000000..42030b5
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMessage_Stereotypes_IActor.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMessage_Stereotypes_IAssociationClass.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMessage_Stereotypes_IAssociationClass.gif
new file mode 100755
index 0000000..d1d7856
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMessage_Stereotypes_IAssociationClass.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMessage_Stereotypes_IClass.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMessage_Stereotypes_IClass.gif
new file mode 100755
index 0000000..8a80c2d
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMessage_Stereotypes_IClass.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMessage_Stereotypes_IClassifier.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMessage_Stereotypes_IClassifier.gif
new file mode 100755
index 0000000..430fdaa
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMessage_Stereotypes_IClassifier.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMessage_Stereotypes_IEvent.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMessage_Stereotypes_IEvent.gif
new file mode 100755
index 0000000..ddf7fec
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMessage_Stereotypes_IEvent.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMessage_Stereotypes_IEventReception.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMessage_Stereotypes_IEventReception.gif
new file mode 100755
index 0000000..33440bf
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMessage_Stereotypes_IEventReception.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMessage_Stereotypes_IFlowItem.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMessage_Stereotypes_IFlowItem.gif
new file mode 100755
index 0000000..a571571
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMessage_Stereotypes_IFlowItem.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMessage_Stereotypes_IInterfaceItem.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMessage_Stereotypes_IInterfaceItem.gif
new file mode 100755
index 0000000..0ce91c4
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMessage_Stereotypes_IInterfaceItem.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMessage_Stereotypes_INode.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMessage_Stereotypes_INode.gif
new file mode 100755
index 0000000..a989445
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMessage_Stereotypes_INode.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMessage_Stereotypes_IOperation.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMessage_Stereotypes_IOperation.gif
new file mode 100755
index 0000000..2f7d4aa
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMessage_Stereotypes_IOperation.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMessage_Stereotypes_IStateChart.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMessage_Stereotypes_IStateChart.gif
new file mode 100755
index 0000000..0b5901d
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMessage_Stereotypes_IStateChart.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMessage_Stereotypes_IStereotype.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMessage_Stereotypes_IStereotype.gif
new file mode 100755
index 0000000..662e1ad
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMessage_Stereotypes_IStereotype.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMessage_Stereotypes_IType.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMessage_Stereotypes_IType.gif
new file mode 100755
index 0000000..67f1b2b
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMessage_Stereotypes_IType.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMessage_Stereotypes_IUseCase.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMessage_Stereotypes_IUseCase.gif
new file mode 100755
index 0000000..f933831
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMessage_Stereotypes_IUseCase.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMessage_Tags_ITag.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMessage_Tags_ITag.gif
new file mode 100755
index 0000000..b7be165
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMessage_Tags_ITag.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMessage_properties_IPropertyContainer.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMessage_properties_IPropertyContainer.gif
new file mode 100755
index 0000000..a072b20
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIMessage_properties_IPropertyContainer.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIModule_HyperLinks_IMHyperLink.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIModule_HyperLinks_IMHyperLink.gif
new file mode 100755
index 0000000..ec9a814
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIModule_HyperLinks_IMHyperLink.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIModule_Stereotypes_IStereotype.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIModule_Stereotypes_IStereotype.gif
new file mode 100755
index 0000000..d64a930
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIModule_Stereotypes_IStereotype.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIModule_description_IDescription.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIModule_description_IDescription.gif
new file mode 100755
index 0000000..affc324
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIModule_description_IDescription.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIModule_implicitClass_IAssociationClass.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIModule_implicitClass_IAssociationClass.gif
new file mode 100755
index 0000000..0d8e38f
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIModule_implicitClass_IAssociationClass.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIModule_implicitClass_IClass.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIModule_implicitClass_IClass.gif
new file mode 100755
index 0000000..86be5ba
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIModule_implicitClass_IClass.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIModule_implicitClass_IStateChart.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIModule_implicitClass_IStateChart.gif
new file mode 100755
index 0000000..e7da41e
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIModule_implicitClass_IStateChart.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIModule_properties_IPropertyContainer.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIModule_properties_IPropertyContainer.gif
new file mode 100755
index 0000000..381214b
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIModule_properties_IPropertyContainer.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIObjectLink_Stereotypes_IActor.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIObjectLink_Stereotypes_IActor.gif
new file mode 100755
index 0000000..e910934
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIObjectLink_Stereotypes_IActor.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIObjectLink_Stereotypes_IAnnotation.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIObjectLink_Stereotypes_IAnnotation.gif
new file mode 100755
index 0000000..f85cafc
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIObjectLink_Stereotypes_IAnnotation.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIObjectLink_Stereotypes_IArgument.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIObjectLink_Stereotypes_IArgument.gif
new file mode 100755
index 0000000..1831c4a
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIObjectLink_Stereotypes_IArgument.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIObjectLink_Stereotypes_IAssociationClass.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIObjectLink_Stereotypes_IAssociationClass.gif
new file mode 100755
index 0000000..8ae0d15
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIObjectLink_Stereotypes_IAssociationClass.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIObjectLink_Stereotypes_IAttribute.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIObjectLink_Stereotypes_IAttribute.gif
new file mode 100755
index 0000000..f87f97d
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIObjectLink_Stereotypes_IAttribute.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIObjectLink_Stereotypes_IClass.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIObjectLink_Stereotypes_IClass.gif
new file mode 100755
index 0000000..4d2f3b9
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIObjectLink_Stereotypes_IClass.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIObjectLink_Stereotypes_IClassifier.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIObjectLink_Stereotypes_IClassifier.gif
new file mode 100755
index 0000000..e560e1c
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIObjectLink_Stereotypes_IClassifier.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIObjectLink_Stereotypes_ICollaborationDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIObjectLink_Stereotypes_ICollaborationDiagram.gif
new file mode 100755
index 0000000..2e9e401
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIObjectLink_Stereotypes_ICollaborationDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIObjectLink_Stereotypes_IComment.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIObjectLink_Stereotypes_IComment.gif
new file mode 100755
index 0000000..e04b1b4
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIObjectLink_Stereotypes_IComment.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIObjectLink_Stereotypes_IComponent.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIObjectLink_Stereotypes_IComponent.gif
new file mode 100755
index 0000000..14febdf
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIObjectLink_Stereotypes_IComponent.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIObjectLink_Stereotypes_IComponentDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIObjectLink_Stereotypes_IComponentDiagram.gif
new file mode 100755
index 0000000..1831c4a
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIObjectLink_Stereotypes_IComponentDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIObjectLink_Stereotypes_IConstraint.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIObjectLink_Stereotypes_IConstraint.gif
new file mode 100755
index 0000000..d6a9b07
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIObjectLink_Stereotypes_IConstraint.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIObjectLink_Stereotypes_IControlledFile.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIObjectLink_Stereotypes_IControlledFile.gif
new file mode 100755
index 0000000..7ffd497
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIObjectLink_Stereotypes_IControlledFile.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIObjectLink_Stereotypes_IDeploymentDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIObjectLink_Stereotypes_IDeploymentDiagram.gif
new file mode 100755
index 0000000..06e47ff
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIObjectLink_Stereotypes_IDeploymentDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIObjectLink_Stereotypes_IDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIObjectLink_Stereotypes_IDiagram.gif
new file mode 100755
index 0000000..a891a7c
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIObjectLink_Stereotypes_IDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIObjectLink_Stereotypes_IEvent.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIObjectLink_Stereotypes_IEvent.gif
new file mode 100755
index 0000000..14febdf
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIObjectLink_Stereotypes_IEvent.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIObjectLink_Stereotypes_IEventReception.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIObjectLink_Stereotypes_IEventReception.gif
new file mode 100755
index 0000000..c715ea9
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIObjectLink_Stereotypes_IEventReception.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIObjectLink_Stereotypes_IFile.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIObjectLink_Stereotypes_IFile.gif
new file mode 100755
index 0000000..3034f0e
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIObjectLink_Stereotypes_IFile.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIObjectLink_Stereotypes_IFlowItem.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIObjectLink_Stereotypes_IFlowItem.gif
new file mode 100755
index 0000000..229e2e1
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIObjectLink_Stereotypes_IFlowItem.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIObjectLink_Stereotypes_IInstance.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIObjectLink_Stereotypes_IInstance.gif
new file mode 100755
index 0000000..1fd067e
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIObjectLink_Stereotypes_IInstance.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIObjectLink_Stereotypes_IInterfaceItem.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIObjectLink_Stereotypes_IInterfaceItem.gif
new file mode 100755
index 0000000..a891a7c
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIObjectLink_Stereotypes_IInterfaceItem.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIObjectLink_Stereotypes_ILink.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIObjectLink_Stereotypes_ILink.gif
new file mode 100755
index 0000000..761cb2b
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIObjectLink_Stereotypes_ILink.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIObjectLink_Stereotypes_IMatrixLayout.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIObjectLink_Stereotypes_IMatrixLayout.gif
new file mode 100755
index 0000000..55102a1
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIObjectLink_Stereotypes_IMatrixLayout.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIObjectLink_Stereotypes_IMatrixView.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIObjectLink_Stereotypes_IMatrixView.gif
new file mode 100755
index 0000000..14febdf
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIObjectLink_Stereotypes_IMatrixView.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIObjectLink_Stereotypes_IModule.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIObjectLink_Stereotypes_IModule.gif
new file mode 100755
index 0000000..0cb85ba
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIObjectLink_Stereotypes_IModule.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIObjectLink_Stereotypes_INode.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIObjectLink_Stereotypes_INode.gif
new file mode 100755
index 0000000..61c2b26
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIObjectLink_Stereotypes_INode.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIObjectLink_Stereotypes_IObjectModelDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIObjectLink_Stereotypes_IObjectModelDiagram.gif
new file mode 100755
index 0000000..7d5aad0
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIObjectLink_Stereotypes_IObjectModelDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIObjectLink_Stereotypes_IOperation.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIObjectLink_Stereotypes_IOperation.gif
new file mode 100755
index 0000000..06e47ff
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIObjectLink_Stereotypes_IOperation.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIObjectLink_Stereotypes_IPackage.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIObjectLink_Stereotypes_IPackage.gif
new file mode 100755
index 0000000..fa9b519
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIObjectLink_Stereotypes_IPackage.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIObjectLink_Stereotypes_IPanelDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIObjectLink_Stereotypes_IPanelDiagram.gif
new file mode 100755
index 0000000..3034f0e
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIObjectLink_Stereotypes_IPanelDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIObjectLink_Stereotypes_IPort.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIObjectLink_Stereotypes_IPort.gif
new file mode 100755
index 0000000..14febdf
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIObjectLink_Stereotypes_IPort.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIObjectLink_Stereotypes_IProfile.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIObjectLink_Stereotypes_IProfile.gif
new file mode 100755
index 0000000..d6a9b07
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIObjectLink_Stereotypes_IProfile.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIObjectLink_Stereotypes_IProject.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIObjectLink_Stereotypes_IProject.gif
new file mode 100755
index 0000000..b036b3f
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIObjectLink_Stereotypes_IProject.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIObjectLink_Stereotypes_IRelation.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIObjectLink_Stereotypes_IRelation.gif
new file mode 100755
index 0000000..33623fc
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIObjectLink_Stereotypes_IRelation.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIObjectLink_Stereotypes_IRequirement.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIObjectLink_Stereotypes_IRequirement.gif
new file mode 100755
index 0000000..a172db7
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIObjectLink_Stereotypes_IRequirement.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIObjectLink_Stereotypes_ISequenceDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIObjectLink_Stereotypes_ISequenceDiagram.gif
new file mode 100755
index 0000000..7afe9dc
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIObjectLink_Stereotypes_ISequenceDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIObjectLink_Stereotypes_IStateChart.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIObjectLink_Stereotypes_IStateChart.gif
new file mode 100755
index 0000000..ff42300
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIObjectLink_Stereotypes_IStateChart.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIObjectLink_Stereotypes_IStateChartDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIObjectLink_Stereotypes_IStateChartDiagram.gif
new file mode 100755
index 0000000..7afe9dc
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIObjectLink_Stereotypes_IStateChartDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIObjectLink_Stereotypes_IStereotype.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIObjectLink_Stereotypes_IStereotype.gif
new file mode 100755
index 0000000..a172db7
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIObjectLink_Stereotypes_IStereotype.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIObjectLink_Stereotypes_IStructureDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIObjectLink_Stereotypes_IStructureDiagram.gif
new file mode 100755
index 0000000..f85cafc
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIObjectLink_Stereotypes_IStructureDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIObjectLink_Stereotypes_ISysMLPort.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIObjectLink_Stereotypes_ISysMLPort.gif
new file mode 100755
index 0000000..0cb85ba
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIObjectLink_Stereotypes_ISysMLPort.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIObjectLink_Stereotypes_ITableLayout.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIObjectLink_Stereotypes_ITableLayout.gif
new file mode 100755
index 0000000..a891a7c
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIObjectLink_Stereotypes_ITableLayout.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIObjectLink_Stereotypes_ITableView.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIObjectLink_Stereotypes_ITableView.gif
new file mode 100755
index 0000000..7afe9dc
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIObjectLink_Stereotypes_ITableView.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIObjectLink_Stereotypes_ITag.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIObjectLink_Stereotypes_ITag.gif
new file mode 100755
index 0000000..e4b6f39
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIObjectLink_Stereotypes_ITag.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIObjectLink_Stereotypes_ITemplateParameter.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIObjectLink_Stereotypes_ITemplateParameter.gif
new file mode 100755
index 0000000..7d5aad0
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIObjectLink_Stereotypes_ITemplateParameter.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIObjectLink_Stereotypes_IType.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIObjectLink_Stereotypes_IType.gif
new file mode 100755
index 0000000..9b4e66a
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIObjectLink_Stereotypes_IType.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIObjectLink_Stereotypes_IUnit.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIObjectLink_Stereotypes_IUnit.gif
new file mode 100755
index 0000000..253bf55
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIObjectLink_Stereotypes_IUnit.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIObjectLink_Stereotypes_IUseCase.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIObjectLink_Stereotypes_IUseCase.gif
new file mode 100755
index 0000000..1831c4a
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIObjectLink_Stereotypes_IUseCase.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIObjectLink_Stereotypes_IUseCaseDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIObjectLink_Stereotypes_IUseCaseDiagram.gif
new file mode 100755
index 0000000..e04b1b4
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIObjectLink_Stereotypes_IUseCaseDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIObjectLink_Stereotypes_IVariable.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIObjectLink_Stereotypes_IVariable.gif
new file mode 100755
index 0000000..7afe9dc
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIObjectLink_Stereotypes_IVariable.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIObjectLink_Tags_ITag.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIObjectLink_Tags_ITag.gif
new file mode 100755
index 0000000..e4b6f39
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIObjectLink_Tags_ITag.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIObjectLink_description_IDescription.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIObjectLink_description_IDescription.gif
new file mode 100755
index 0000000..e04b1b4
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIObjectLink_description_IDescription.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIObjectLink_instantiates_IMetaLinkHandle.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIObjectLink_instantiates_IMetaLinkHandle.gif
new file mode 100755
index 0000000..15099c1
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIObjectLink_instantiates_IMetaLinkHandle.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIObjectNode_TheInState_IAcceptEventAction.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIObjectNode_TheInState_IAcceptEventAction.gif
new file mode 100755
index 0000000..b52554e
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIObjectNode_TheInState_IAcceptEventAction.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIObjectNode_TheInState_IAcceptTimeEvent.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIObjectNode_TheInState_IAcceptTimeEvent.gif
new file mode 100755
index 0000000..5751954
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIObjectNode_TheInState_IAcceptTimeEvent.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIObjectNode_TheInState_ICallOperation.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIObjectNode_TheInState_ICallOperation.gif
new file mode 100755
index 0000000..f4fa5b5
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIObjectNode_TheInState_ICallOperation.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIObjectNode_TheInState_IObjectNode.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIObjectNode_TheInState_IObjectNode.gif
new file mode 100755
index 0000000..fd7e5e1
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIObjectNode_TheInState_IObjectNode.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIObjectNode_TheInState_IState.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIObjectNode_TheInState_IState.gif
new file mode 100755
index 0000000..0aa23c2
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIObjectNode_TheInState_IState.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIPackage_Annotations_IComment.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIPackage_Annotations_IComment.gif
new file mode 100755
index 0000000..75a50e9
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIPackage_Annotations_IComment.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIPackage_description_IDescription.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIPackage_description_IDescription.gif
new file mode 100755
index 0000000..75a50e9
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIPackage_description_IDescription.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIPackage_properties_IPropertyContainer.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIPackage_properties_IPropertyContainer.gif
new file mode 100755
index 0000000..a1fa94e
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIPackage_properties_IPropertyContainer.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIPart_Dependencies_IDependency.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIPart_Dependencies_IDependency.gif
new file mode 100755
index 0000000..7c357e1
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIPart_Dependencies_IDependency.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIPart_Dependencies_IHyperLink.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIPart_Dependencies_IHyperLink.gif
new file mode 100755
index 0000000..3fa9c54
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIPart_Dependencies_IHyperLink.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIPart_HyperLinks_IMHyperLink.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIPart_HyperLinks_IMHyperLink.gif
new file mode 100755
index 0000000..b6cab91
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIPart_HyperLinks_IMHyperLink.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIPart_Slots_ISlot.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIPart_Slots_ISlot.gif
new file mode 100755
index 0000000..1061b8f
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIPart_Slots_ISlot.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIPart_Stereotypes_IActor.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIPart_Stereotypes_IActor.gif
new file mode 100755
index 0000000..440a154
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIPart_Stereotypes_IActor.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIPart_Stereotypes_IAnnotation.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIPart_Stereotypes_IAnnotation.gif
new file mode 100755
index 0000000..22caf47
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIPart_Stereotypes_IAnnotation.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIPart_Stereotypes_IArgument.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIPart_Stereotypes_IArgument.gif
new file mode 100755
index 0000000..0e34563
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIPart_Stereotypes_IArgument.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIPart_Stereotypes_IAssociationClass.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIPart_Stereotypes_IAssociationClass.gif
new file mode 100755
index 0000000..c213999
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIPart_Stereotypes_IAssociationClass.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIPart_Stereotypes_IAttribute.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIPart_Stereotypes_IAttribute.gif
new file mode 100755
index 0000000..41eefa2
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIPart_Stereotypes_IAttribute.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIPart_Stereotypes_IClass.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIPart_Stereotypes_IClass.gif
new file mode 100755
index 0000000..97d3985
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIPart_Stereotypes_IClass.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIPart_Stereotypes_IClassifier.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIPart_Stereotypes_IClassifier.gif
new file mode 100755
index 0000000..f6c9c1b
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIPart_Stereotypes_IClassifier.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIPart_Stereotypes_ICollaborationDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIPart_Stereotypes_ICollaborationDiagram.gif
new file mode 100755
index 0000000..ffbeece
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIPart_Stereotypes_ICollaborationDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIPart_Stereotypes_IComment.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIPart_Stereotypes_IComment.gif
new file mode 100755
index 0000000..3548c7d
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIPart_Stereotypes_IComment.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIPart_Stereotypes_IComponent.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIPart_Stereotypes_IComponent.gif
new file mode 100755
index 0000000..2e8ec2d
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIPart_Stereotypes_IComponent.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIPart_Stereotypes_IComponentDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIPart_Stereotypes_IComponentDiagram.gif
new file mode 100755
index 0000000..0e34563
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIPart_Stereotypes_IComponentDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIPart_Stereotypes_IConstraint.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIPart_Stereotypes_IConstraint.gif
new file mode 100755
index 0000000..6fa04d1
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIPart_Stereotypes_IConstraint.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIPart_Stereotypes_IControlledFile.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIPart_Stereotypes_IControlledFile.gif
new file mode 100755
index 0000000..660282d
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIPart_Stereotypes_IControlledFile.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIPart_Stereotypes_IDeploymentDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIPart_Stereotypes_IDeploymentDiagram.gif
new file mode 100755
index 0000000..355e3d0
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIPart_Stereotypes_IDeploymentDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIPart_Stereotypes_IDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIPart_Stereotypes_IDiagram.gif
new file mode 100755
index 0000000..2084fe8
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIPart_Stereotypes_IDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIPart_Stereotypes_IEvent.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIPart_Stereotypes_IEvent.gif
new file mode 100755
index 0000000..2e8ec2d
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIPart_Stereotypes_IEvent.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIPart_Stereotypes_IEventReception.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIPart_Stereotypes_IEventReception.gif
new file mode 100755
index 0000000..bdfb88b
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIPart_Stereotypes_IEventReception.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIPart_Stereotypes_IFile.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIPart_Stereotypes_IFile.gif
new file mode 100755
index 0000000..a53a021
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIPart_Stereotypes_IFile.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIPart_Stereotypes_IFlowItem.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIPart_Stereotypes_IFlowItem.gif
new file mode 100755
index 0000000..54b651d
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIPart_Stereotypes_IFlowItem.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIPart_Stereotypes_IInstance.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIPart_Stereotypes_IInstance.gif
new file mode 100755
index 0000000..9862390
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIPart_Stereotypes_IInstance.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIPart_Stereotypes_IInterfaceItem.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIPart_Stereotypes_IInterfaceItem.gif
new file mode 100755
index 0000000..2084fe8
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIPart_Stereotypes_IInterfaceItem.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIPart_Stereotypes_ILink.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIPart_Stereotypes_ILink.gif
new file mode 100755
index 0000000..02ca8c0
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIPart_Stereotypes_ILink.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIPart_Stereotypes_IMatrixLayout.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIPart_Stereotypes_IMatrixLayout.gif
new file mode 100755
index 0000000..4b44067
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIPart_Stereotypes_IMatrixLayout.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIPart_Stereotypes_IMatrixView.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIPart_Stereotypes_IMatrixView.gif
new file mode 100755
index 0000000..2e8ec2d
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIPart_Stereotypes_IMatrixView.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIPart_Stereotypes_IModule.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIPart_Stereotypes_IModule.gif
new file mode 100755
index 0000000..6e87a23
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIPart_Stereotypes_IModule.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIPart_Stereotypes_INode.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIPart_Stereotypes_INode.gif
new file mode 100755
index 0000000..7d4073e
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIPart_Stereotypes_INode.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIPart_Stereotypes_IObjectModelDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIPart_Stereotypes_IObjectModelDiagram.gif
new file mode 100755
index 0000000..42450a8
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIPart_Stereotypes_IObjectModelDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIPart_Stereotypes_IOperation.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIPart_Stereotypes_IOperation.gif
new file mode 100755
index 0000000..355e3d0
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIPart_Stereotypes_IOperation.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIPart_Stereotypes_IPackage.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIPart_Stereotypes_IPackage.gif
new file mode 100755
index 0000000..a8fcd74
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIPart_Stereotypes_IPackage.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIPart_Stereotypes_IPanelDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIPart_Stereotypes_IPanelDiagram.gif
new file mode 100755
index 0000000..a53a021
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIPart_Stereotypes_IPanelDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIPart_Stereotypes_IPort.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIPart_Stereotypes_IPort.gif
new file mode 100755
index 0000000..2e8ec2d
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIPart_Stereotypes_IPort.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIPart_Stereotypes_IProfile.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIPart_Stereotypes_IProfile.gif
new file mode 100755
index 0000000..6fa04d1
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIPart_Stereotypes_IProfile.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIPart_Stereotypes_IProject.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIPart_Stereotypes_IProject.gif
new file mode 100755
index 0000000..a2c8584
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIPart_Stereotypes_IProject.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIPart_Stereotypes_IRelation.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIPart_Stereotypes_IRelation.gif
new file mode 100755
index 0000000..fa6a5ee
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIPart_Stereotypes_IRelation.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIPart_Stereotypes_IRequirement.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIPart_Stereotypes_IRequirement.gif
new file mode 100755
index 0000000..cd91b67
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIPart_Stereotypes_IRequirement.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIPart_Stereotypes_ISequenceDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIPart_Stereotypes_ISequenceDiagram.gif
new file mode 100755
index 0000000..80dd10a
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIPart_Stereotypes_ISequenceDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIPart_Stereotypes_IStateChart.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIPart_Stereotypes_IStateChart.gif
new file mode 100755
index 0000000..3fa9c54
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIPart_Stereotypes_IStateChart.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIPart_Stereotypes_IStateChartDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIPart_Stereotypes_IStateChartDiagram.gif
new file mode 100755
index 0000000..80dd10a
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIPart_Stereotypes_IStateChartDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIPart_Stereotypes_IStereotype.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIPart_Stereotypes_IStereotype.gif
new file mode 100755
index 0000000..cd91b67
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIPart_Stereotypes_IStereotype.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIPart_Stereotypes_IStructureDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIPart_Stereotypes_IStructureDiagram.gif
new file mode 100755
index 0000000..22caf47
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIPart_Stereotypes_IStructureDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIPart_Stereotypes_ISysMLPort.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIPart_Stereotypes_ISysMLPort.gif
new file mode 100755
index 0000000..6e87a23
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIPart_Stereotypes_ISysMLPort.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIPart_Stereotypes_ITableLayout.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIPart_Stereotypes_ITableLayout.gif
new file mode 100755
index 0000000..2084fe8
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIPart_Stereotypes_ITableLayout.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIPart_Stereotypes_ITableView.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIPart_Stereotypes_ITableView.gif
new file mode 100755
index 0000000..80dd10a
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIPart_Stereotypes_ITableView.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIPart_Stereotypes_ITag.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIPart_Stereotypes_ITag.gif
new file mode 100755
index 0000000..a39b796
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIPart_Stereotypes_ITag.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIPart_Stereotypes_ITemplateParameter.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIPart_Stereotypes_ITemplateParameter.gif
new file mode 100755
index 0000000..42450a8
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIPart_Stereotypes_ITemplateParameter.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIPart_Stereotypes_IType.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIPart_Stereotypes_IType.gif
new file mode 100755
index 0000000..1061b8f
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIPart_Stereotypes_IType.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIPart_Stereotypes_IUnit.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIPart_Stereotypes_IUnit.gif
new file mode 100755
index 0000000..1ce6308
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIPart_Stereotypes_IUnit.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIPart_Stereotypes_IUseCase.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIPart_Stereotypes_IUseCase.gif
new file mode 100755
index 0000000..0e34563
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIPart_Stereotypes_IUseCase.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIPart_Stereotypes_IUseCaseDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIPart_Stereotypes_IUseCaseDiagram.gif
new file mode 100755
index 0000000..3548c7d
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIPart_Stereotypes_IUseCaseDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIPart_Stereotypes_IVariable.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIPart_Stereotypes_IVariable.gif
new file mode 100755
index 0000000..80dd10a
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIPart_Stereotypes_IVariable.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIPart_Tags_ITag.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIPart_Tags_ITag.gif
new file mode 100755
index 0000000..a39b796
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIPart_Tags_ITag.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIPart_initialCallAction_ICallAction.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIPart_initialCallAction_ICallAction.gif
new file mode 100755
index 0000000..6e87a23
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIPart_initialCallAction_ICallAction.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIPort_Annotations_IRequirement.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIPort_Annotations_IRequirement.gif
new file mode 100755
index 0000000..486225e
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIPort_Annotations_IRequirement.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIPort_Dependencies_IDependency.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIPort_Dependencies_IDependency.gif
new file mode 100755
index 0000000..7118da1
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIPort_Dependencies_IDependency.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIPort_Dependencies_IHyperLink.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIPort_Dependencies_IHyperLink.gif
new file mode 100755
index 0000000..c14b909
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIPort_Dependencies_IHyperLink.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIPort_Stereotypes_IActor.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIPort_Stereotypes_IActor.gif
new file mode 100755
index 0000000..9422192
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIPort_Stereotypes_IActor.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIPort_Stereotypes_IAssociationClass.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIPort_Stereotypes_IAssociationClass.gif
new file mode 100755
index 0000000..788abfe
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIPort_Stereotypes_IAssociationClass.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIPort_Stereotypes_IClass.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIPort_Stereotypes_IClass.gif
new file mode 100755
index 0000000..9e7c2fb
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIPort_Stereotypes_IClass.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIPort_Stereotypes_IClassifier.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIPort_Stereotypes_IClassifier.gif
new file mode 100755
index 0000000..3f8b79e
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIPort_Stereotypes_IClassifier.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIPort_Stereotypes_IEvent.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIPort_Stereotypes_IEvent.gif
new file mode 100755
index 0000000..2de871f
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIPort_Stereotypes_IEvent.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIPort_Stereotypes_IEventReception.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIPort_Stereotypes_IEventReception.gif
new file mode 100755
index 0000000..b597f08
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIPort_Stereotypes_IEventReception.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIPort_Stereotypes_IFlowItem.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIPort_Stereotypes_IFlowItem.gif
new file mode 100755
index 0000000..f0e999e
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIPort_Stereotypes_IFlowItem.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIPort_Stereotypes_IInterfaceItem.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIPort_Stereotypes_IInterfaceItem.gif
new file mode 100755
index 0000000..7d37ab4
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIPort_Stereotypes_IInterfaceItem.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIPort_Stereotypes_INode.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIPort_Stereotypes_INode.gif
new file mode 100755
index 0000000..b2f886a
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIPort_Stereotypes_INode.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIPort_Stereotypes_IOperation.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIPort_Stereotypes_IOperation.gif
new file mode 100755
index 0000000..ee9dd19
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIPort_Stereotypes_IOperation.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIPort_Stereotypes_IStateChart.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIPort_Stereotypes_IStateChart.gif
new file mode 100755
index 0000000..c14b909
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIPort_Stereotypes_IStateChart.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIPort_Stereotypes_IStereotype.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIPort_Stereotypes_IStereotype.gif
new file mode 100755
index 0000000..486225e
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIPort_Stereotypes_IStereotype.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIPort_Stereotypes_IType.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIPort_Stereotypes_IType.gif
new file mode 100755
index 0000000..82f3250
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIPort_Stereotypes_IType.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIPort_Stereotypes_IUseCase.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIPort_Stereotypes_IUseCase.gif
new file mode 100755
index 0000000..1934e25
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIPort_Stereotypes_IUseCase.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIPort_Tags_ITag.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIPort_Tags_ITag.gif
new file mode 100755
index 0000000..c6c7731
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIPort_Tags_ITag.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIPrimitiveOperation_Annotations_IComment.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIPrimitiveOperation_Annotations_IComment.gif
new file mode 100755
index 0000000..691760a
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIPrimitiveOperation_Annotations_IComment.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIPrimitiveOperation_Args_IArgument.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIPrimitiveOperation_Args_IArgument.gif
new file mode 100755
index 0000000..5e689e6
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIPrimitiveOperation_Args_IArgument.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIPrimitiveOperation_Args_IAttribute.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIPrimitiveOperation_Args_IAttribute.gif
new file mode 100755
index 0000000..a06b0ff
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIPrimitiveOperation_Args_IAttribute.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIPrimitiveOperation_Args_ITag.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIPrimitiveOperation_Args_ITag.gif
new file mode 100755
index 0000000..678e971
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIPrimitiveOperation_Args_ITag.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIPrimitiveOperation_Args_ITemplateParameter.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIPrimitiveOperation_Args_ITemplateParameter.gif
new file mode 100755
index 0000000..55e9bbb
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIPrimitiveOperation_Args_ITemplateParameter.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIPrimitiveOperation_Args_IVariable.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIPrimitiveOperation_Args_IVariable.gif
new file mode 100755
index 0000000..b7e2f30
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIPrimitiveOperation_Args_IVariable.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIPrimitiveOperation_Declaratives_IMSC.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIPrimitiveOperation_Declaratives_IMSC.gif
new file mode 100755
index 0000000..842360a
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIPrimitiveOperation_Declaratives_IMSC.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIPrimitiveOperation_Dependencies_IDependency.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIPrimitiveOperation_Dependencies_IDependency.gif
new file mode 100755
index 0000000..23c1e15
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIPrimitiveOperation_Dependencies_IDependency.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIPrimitiveOperation_Dependencies_IHyperLink.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIPrimitiveOperation_Dependencies_IHyperLink.gif
new file mode 100755
index 0000000..92313be
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIPrimitiveOperation_Dependencies_IHyperLink.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIPrimitiveOperation_EmbededFiles_IEmbededFile.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIPrimitiveOperation_EmbededFiles_IEmbededFile.gif
new file mode 100755
index 0000000..10a1ab5
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIPrimitiveOperation_EmbededFiles_IEmbededFile.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIPrimitiveOperation_Stereotypes_IActor.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIPrimitiveOperation_Stereotypes_IActor.gif
new file mode 100755
index 0000000..258ed0e
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIPrimitiveOperation_Stereotypes_IActor.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIPrimitiveOperation_Stereotypes_IAssociationClass.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIPrimitiveOperation_Stereotypes_IAssociationClass.gif
new file mode 100755
index 0000000..9cae865
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIPrimitiveOperation_Stereotypes_IAssociationClass.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIPrimitiveOperation_Stereotypes_IClass.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIPrimitiveOperation_Stereotypes_IClass.gif
new file mode 100755
index 0000000..81084b9
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIPrimitiveOperation_Stereotypes_IClass.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIPrimitiveOperation_Stereotypes_IClassifier.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIPrimitiveOperation_Stereotypes_IClassifier.gif
new file mode 100755
index 0000000..756dc2d
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIPrimitiveOperation_Stereotypes_IClassifier.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIPrimitiveOperation_Stereotypes_IEvent.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIPrimitiveOperation_Stereotypes_IEvent.gif
new file mode 100755
index 0000000..961acc5
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIPrimitiveOperation_Stereotypes_IEvent.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIPrimitiveOperation_Stereotypes_IEventReception.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIPrimitiveOperation_Stereotypes_IEventReception.gif
new file mode 100755
index 0000000..b325c75
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIPrimitiveOperation_Stereotypes_IEventReception.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIPrimitiveOperation_Stereotypes_IFlowItem.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIPrimitiveOperation_Stereotypes_IFlowItem.gif
new file mode 100755
index 0000000..3a9f24e
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIPrimitiveOperation_Stereotypes_IFlowItem.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIPrimitiveOperation_Stereotypes_IInterfaceItem.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIPrimitiveOperation_Stereotypes_IInterfaceItem.gif
new file mode 100755
index 0000000..f11830c
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIPrimitiveOperation_Stereotypes_IInterfaceItem.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIPrimitiveOperation_Stereotypes_INode.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIPrimitiveOperation_Stereotypes_INode.gif
new file mode 100755
index 0000000..c5cc361
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIPrimitiveOperation_Stereotypes_INode.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIPrimitiveOperation_Stereotypes_IOperation.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIPrimitiveOperation_Stereotypes_IOperation.gif
new file mode 100755
index 0000000..bccc676
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIPrimitiveOperation_Stereotypes_IOperation.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIPrimitiveOperation_Stereotypes_IStateChart.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIPrimitiveOperation_Stereotypes_IStateChart.gif
new file mode 100755
index 0000000..92313be
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIPrimitiveOperation_Stereotypes_IStateChart.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIPrimitiveOperation_Stereotypes_IStereotype.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIPrimitiveOperation_Stereotypes_IStereotype.gif
new file mode 100755
index 0000000..9d4ac00
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIPrimitiveOperation_Stereotypes_IStereotype.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIPrimitiveOperation_Stereotypes_IType.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIPrimitiveOperation_Stereotypes_IType.gif
new file mode 100755
index 0000000..e050d2d
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIPrimitiveOperation_Stereotypes_IType.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIPrimitiveOperation_Stereotypes_IUseCase.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIPrimitiveOperation_Stereotypes_IUseCase.gif
new file mode 100755
index 0000000..5e689e6
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIPrimitiveOperation_Stereotypes_IUseCase.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIPrimitiveOperation_Tags_ITag.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIPrimitiveOperation_Tags_ITag.gif
new file mode 100755
index 0000000..678e971
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIPrimitiveOperation_Tags_ITag.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIPrimitiveOperation_TemplateParameters_ITemplateParameter.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIPrimitiveOperation_TemplateParameters_ITemplateParameter.gif
new file mode 100755
index 0000000..55e9bbb
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIPrimitiveOperation_TemplateParameters_ITemplateParameter.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIPrimitiveOperation_description_IDescription.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIPrimitiveOperation_description_IDescription.gif
new file mode 100755
index 0000000..691760a
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIPrimitiveOperation_description_IDescription.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIPrimitiveOperation_itsActivityGraph_IActivityGraph.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIPrimitiveOperation_itsActivityGraph_IActivityGraph.gif
new file mode 100755
index 0000000..b13c3ac
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIPrimitiveOperation_itsActivityGraph_IActivityGraph.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIPrimitiveOperation_itsBody_IBody.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIPrimitiveOperation_itsBody_IBody.gif
new file mode 100755
index 0000000..46c6860
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIPrimitiveOperation_itsBody_IBody.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIPrimitiveOperation_myReturnType_IType.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIPrimitiveOperation_myReturnType_IType.gif
new file mode 100755
index 0000000..e050d2d
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIPrimitiveOperation_myReturnType_IType.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIPrimitiveOperation_properties_IPropertyContainer.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIPrimitiveOperation_properties_IPropertyContainer.gif
new file mode 100755
index 0000000..bc5648e
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIPrimitiveOperation_properties_IPropertyContainer.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProfile_Classes_IAssociationClass.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProfile_Classes_IAssociationClass.gif
new file mode 100755
index 0000000..dd256cc
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProfile_Classes_IAssociationClass.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProfile_Classes_IClass.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProfile_Classes_IClass.gif
new file mode 100755
index 0000000..79263fb
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProfile_Classes_IClass.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProfile_Classes_IStateChart.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProfile_Classes_IStateChart.gif
new file mode 100755
index 0000000..b8d07e0
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProfile_Classes_IStateChart.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProfile_Declaratives_IAssociationClass.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProfile_Declaratives_IAssociationClass.gif
new file mode 100755
index 0000000..dd256cc
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProfile_Declaratives_IAssociationClass.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProfile_Declaratives_IClass.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProfile_Declaratives_IClass.gif
new file mode 100755
index 0000000..79263fb
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProfile_Declaratives_IClass.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProfile_Declaratives_ICollaborationDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProfile_Declaratives_ICollaborationDiagram.gif
new file mode 100755
index 0000000..ec9eed4
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProfile_Declaratives_ICollaborationDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProfile_Declaratives_IComponent.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProfile_Declaratives_IComponent.gif
new file mode 100755
index 0000000..8fd571a
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProfile_Declaratives_IComponent.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProfile_Declaratives_IComponentDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProfile_Declaratives_IComponentDiagram.gif
new file mode 100755
index 0000000..9ca6861
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProfile_Declaratives_IComponentDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProfile_Declaratives_IDeploymentDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProfile_Declaratives_IDeploymentDiagram.gif
new file mode 100755
index 0000000..7d18f38
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProfile_Declaratives_IDeploymentDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProfile_Declaratives_IDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProfile_Declaratives_IDiagram.gif
new file mode 100755
index 0000000..2072844
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProfile_Declaratives_IDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProfile_Declaratives_IInformationFlow.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProfile_Declaratives_IInformationFlow.gif
new file mode 100755
index 0000000..8fd571a
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProfile_Declaratives_IInformationFlow.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProfile_Declaratives_IInformationItem.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProfile_Declaratives_IInformationItem.gif
new file mode 100755
index 0000000..3483523
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProfile_Declaratives_IInformationItem.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProfile_Declaratives_IMSC.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProfile_Declaratives_IMSC.gif
new file mode 100755
index 0000000..90b42b5
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProfile_Declaratives_IMSC.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProfile_Declaratives_IObjectModelDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProfile_Declaratives_IObjectModelDiagram.gif
new file mode 100755
index 0000000..bf19516
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProfile_Declaratives_IObjectModelDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProfile_Declaratives_IPanelDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProfile_Declaratives_IPanelDiagram.gif
new file mode 100755
index 0000000..e792ad9
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProfile_Declaratives_IPanelDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProfile_Declaratives_ISequenceDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProfile_Declaratives_ISequenceDiagram.gif
new file mode 100755
index 0000000..bb27d46
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProfile_Declaratives_ISequenceDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProfile_Declaratives_IStateChart.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProfile_Declaratives_IStateChart.gif
new file mode 100755
index 0000000..b8d07e0
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProfile_Declaratives_IStateChart.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProfile_Declaratives_IStateChartDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProfile_Declaratives_IStateChartDiagram.gif
new file mode 100755
index 0000000..bb27d46
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProfile_Declaratives_IStateChartDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProfile_Declaratives_IStereotype.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProfile_Declaratives_IStereotype.gif
new file mode 100755
index 0000000..a021a81
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProfile_Declaratives_IStereotype.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProfile_Declaratives_IStructureDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProfile_Declaratives_IStructureDiagram.gif
new file mode 100755
index 0000000..075352b
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProfile_Declaratives_IStructureDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProfile_Declaratives_ISubsystem.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProfile_Declaratives_ISubsystem.gif
new file mode 100755
index 0000000..097f1cb
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProfile_Declaratives_ISubsystem.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProfile_Declaratives_IType.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProfile_Declaratives_IType.gif
new file mode 100755
index 0000000..27dbe98
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProfile_Declaratives_IType.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProfile_Declaratives_IUCDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProfile_Declaratives_IUCDiagram.gif
new file mode 100755
index 0000000..17776a1
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProfile_Declaratives_IUCDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProfile_Declaratives_IUseCaseDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProfile_Declaratives_IUseCaseDiagram.gif
new file mode 100755
index 0000000..5937668
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProfile_Declaratives_IUseCaseDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProfile_MatrixLayouts_IMatrixLayout.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProfile_MatrixLayouts_IMatrixLayout.gif
new file mode 100755
index 0000000..2bf1e9a
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProfile_MatrixLayouts_IMatrixLayout.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProfile_Tags_ITag.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProfile_Tags_ITag.gif
new file mode 100755
index 0000000..2327061
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProfile_Tags_ITag.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProfile_Types_IType.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProfile_Types_IType.gif
new file mode 100755
index 0000000..27dbe98
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProfile_Types_IType.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_CollaborationDiagrams_ICollaborationDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_CollaborationDiagrams_ICollaborationDiagram.gif
new file mode 100755
index 0000000..ec56659
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_CollaborationDiagrams_ICollaborationDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_ComponentDiagrams_IComponentDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_ComponentDiagrams_IComponentDiagram.gif
new file mode 100755
index 0000000..33e8a61
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_ComponentDiagrams_IComponentDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Components_IAcceptEventAction.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Components_IAcceptEventAction.gif
new file mode 100755
index 0000000..93e8b6b
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Components_IAcceptEventAction.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Components_IAcceptTimeEvent.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Components_IAcceptTimeEvent.gif
new file mode 100755
index 0000000..3cfac31
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Components_IAcceptTimeEvent.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Components_IAction.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Components_IAction.gif
new file mode 100755
index 0000000..4d9762f
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Components_IAction.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Components_IActivityGraph.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Components_IActivityGraph.gif
new file mode 100755
index 0000000..f3d7cb9
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Components_IActivityGraph.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Components_IActor.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Components_IActor.gif
new file mode 100755
index 0000000..8a87700
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Components_IActor.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Components_IAnnotation.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Components_IAnnotation.gif
new file mode 100755
index 0000000..1667bbe
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Components_IAnnotation.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Components_IArgument.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Components_IArgument.gif
new file mode 100755
index 0000000..33e8a61
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Components_IArgument.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Components_IAssociationClass.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Components_IAssociationClass.gif
new file mode 100755
index 0000000..ed645c3
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Components_IAssociationClass.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Components_IAssociationEnd.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Components_IAssociationEnd.gif
new file mode 100755
index 0000000..55473b4
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Components_IAssociationEnd.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Components_IAssociationRole.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Components_IAssociationRole.gif
new file mode 100755
index 0000000..1577bb8
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Components_IAssociationRole.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Components_IAttribute.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Components_IAttribute.gif
new file mode 100755
index 0000000..922e8ab
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Components_IAttribute.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Components_ICallOperation.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Components_ICallOperation.gif
new file mode 100755
index 0000000..380314b
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Components_ICallOperation.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Components_IClass.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Components_IClass.gif
new file mode 100755
index 0000000..1543d3c
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Components_IClass.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Components_IClassifier.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Components_IClassifier.gif
new file mode 100755
index 0000000..0a2cc52
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Components_IClassifier.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Components_IClassifierRole.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Components_IClassifierRole.gif
new file mode 100755
index 0000000..0aed407
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Components_IClassifierRole.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Components_ICollaboration.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Components_ICollaboration.gif
new file mode 100755
index 0000000..ab6c90a
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Components_ICollaboration.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Components_ICollaborationDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Components_ICollaborationDiagram.gif
new file mode 100755
index 0000000..ec56659
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Components_ICollaborationDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Components_IComment.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Components_IComment.gif
new file mode 100755
index 0000000..2de4789
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Components_IComment.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Components_IComponent.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Components_IComponent.gif
new file mode 100755
index 0000000..3cfac31
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Components_IComponent.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Components_IComponentDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Components_IComponentDiagram.gif
new file mode 100755
index 0000000..33e8a61
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Components_IComponentDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Components_IComponentInstance.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Components_IComponentInstance.gif
new file mode 100755
index 0000000..55473b4
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Components_IComponentInstance.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Components_IConfiguration.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Components_IConfiguration.gif
new file mode 100755
index 0000000..1543d3c
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Components_IConfiguration.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Components_IConnector.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Components_IConnector.gif
new file mode 100755
index 0000000..ed645c3
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Components_IConnector.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Components_IConstraint.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Components_IConstraint.gif
new file mode 100755
index 0000000..93e8b6b
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Components_IConstraint.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Components_IContextSpecification.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Components_IContextSpecification.gif
new file mode 100755
index 0000000..0189a7e
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Components_IContextSpecification.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Components_IControlledFile.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Components_IControlledFile.gif
new file mode 100755
index 0000000..179a7e8
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Components_IControlledFile.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Components_IDependency.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Components_IDependency.gif
new file mode 100755
index 0000000..902141b
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Components_IDependency.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Components_IDeploymentDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Components_IDeploymentDiagram.gif
new file mode 100755
index 0000000..e91f6dd
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Components_IDeploymentDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Components_IDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Components_IDiagram.gif
new file mode 100755
index 0000000..fc67848
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Components_IDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Components_IEnumerationLiteral.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Components_IEnumerationLiteral.gif
new file mode 100755
index 0000000..61e87ec
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Components_IEnumerationLiteral.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Components_IEvent.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Components_IEvent.gif
new file mode 100755
index 0000000..3cfac31
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Components_IEvent.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Components_IEventReception.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Components_IEventReception.gif
new file mode 100755
index 0000000..3ede289
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Components_IEventReception.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Components_IExecutionOccurrence.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Components_IExecutionOccurrence.gif
new file mode 100755
index 0000000..5a3ab4a
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Components_IExecutionOccurrence.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Components_IExternalHyperlink.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Components_IExternalHyperlink.gif
new file mode 100755
index 0000000..9f3b2e7
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Components_IExternalHyperlink.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Components_IFile.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Components_IFile.gif
new file mode 100755
index 0000000..f3d7cb9
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Components_IFile.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Components_IFileFragment.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Components_IFileFragment.gif
new file mode 100755
index 0000000..3ede289
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Components_IFileFragment.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Components_IFlow.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Components_IFlow.gif
new file mode 100755
index 0000000..24686d6
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Components_IFlow.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Components_IFlowItem.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Components_IFlowItem.gif
new file mode 100755
index 0000000..44d87cb
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Components_IFlowItem.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Components_IGeneralization.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Components_IGeneralization.gif
new file mode 100755
index 0000000..33191e2
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Components_IGeneralization.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Components_IGuard.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Components_IGuard.gif
new file mode 100755
index 0000000..1577bb8
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Components_IGuard.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Components_IHyperLink.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Components_IHyperLink.gif
new file mode 100755
index 0000000..6910560
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Components_IHyperLink.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Components_IInformationFlow.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Components_IInformationFlow.gif
new file mode 100755
index 0000000..3cfac31
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Components_IInformationFlow.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Components_IInstance.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Components_IInstance.gif
new file mode 100755
index 0000000..3b598db
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Components_IInstance.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Components_IInstanceSlot.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Components_IInstanceSlot.gif
new file mode 100755
index 0000000..a6d8558
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Components_IInstanceSlot.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Components_IInstanceSpecification.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Components_IInstanceSpecification.gif
new file mode 100755
index 0000000..33e8a61
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Components_IInstanceSpecification.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Components_IInstanceValue.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Components_IInstanceValue.gif
new file mode 100755
index 0000000..1667bbe
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Components_IInstanceValue.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Components_IInteractionOccurrence.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Components_IInteractionOccurrence.gif
new file mode 100755
index 0000000..3cfac31
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Components_IInteractionOccurrence.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Components_IInteractionOperand.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Components_IInteractionOperand.gif
new file mode 100755
index 0000000..3d1deee
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Components_IInteractionOperand.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Components_IInteractionOperator.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Components_IInteractionOperator.gif
new file mode 100755
index 0000000..d89ab7a
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Components_IInteractionOperator.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Components_IInterfaceItem.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Components_IInterfaceItem.gif
new file mode 100755
index 0000000..fc67848
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Components_IInterfaceItem.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Components_IInternalHyperlink.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Components_IInternalHyperlink.gif
new file mode 100755
index 0000000..df3eebc
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Components_IInternalHyperlink.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Components_ILink.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Components_ILink.gif
new file mode 100755
index 0000000..281b5cf
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Components_ILink.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Components_ILiteralSpecification.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Components_ILiteralSpecification.gif
new file mode 100755
index 0000000..61e87ec
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Components_ILiteralSpecification.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Components_IMHyperLink.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Components_IMHyperLink.gif
new file mode 100755
index 0000000..55473b4
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Components_IMHyperLink.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Components_IMatrixLayout.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Components_IMatrixLayout.gif
new file mode 100755
index 0000000..3b0b444
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Components_IMatrixLayout.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Components_IMatrixView.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Components_IMatrixView.gif
new file mode 100755
index 0000000..3cfac31
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Components_IMatrixView.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Components_IMessage.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Components_IMessage.gif
new file mode 100755
index 0000000..7ffd04a
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Components_IMessage.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Components_IMessagePoint.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Components_IMessagePoint.gif
new file mode 100755
index 0000000..0e50474
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Components_IMessagePoint.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Components_IModelElement.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Components_IModelElement.gif
new file mode 100755
index 0000000..1577bb8
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Components_IModelElement.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Components_IModule.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Components_IModule.gif
new file mode 100755
index 0000000..f3d9958
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Components_IModule.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Components_INode.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Components_INode.gif
new file mode 100755
index 0000000..549553f
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Components_INode.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Components_IObjectLink.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Components_IObjectLink.gif
new file mode 100755
index 0000000..179a7e8
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Components_IObjectLink.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Components_IObjectModelDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Components_IObjectModelDiagram.gif
new file mode 100755
index 0000000..0e50474
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Components_IObjectModelDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Components_IObjectNode.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Components_IObjectNode.gif
new file mode 100755
index 0000000..1bf6bbe
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Components_IObjectNode.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Components_IOperation.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Components_IOperation.gif
new file mode 100755
index 0000000..e91f6dd
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Components_IOperation.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Components_IPackage.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Components_IPackage.gif
new file mode 100755
index 0000000..c89018c
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Components_IPackage.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Components_IPanelDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Components_IPanelDiagram.gif
new file mode 100755
index 0000000..f3d7cb9
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Components_IPanelDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Components_IPart.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Components_IPart.gif
new file mode 100755
index 0000000..f2db288
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Components_IPart.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Components_IPin.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Components_IPin.gif
new file mode 100755
index 0000000..3b598db
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Components_IPin.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Components_IPort.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Components_IPort.gif
new file mode 100755
index 0000000..3cfac31
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Components_IPort.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Components_IPrimitiveOperation.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Components_IPrimitiveOperation.gif
new file mode 100755
index 0000000..ed645c3
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Components_IPrimitiveOperation.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Components_IProfile.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Components_IProfile.gif
new file mode 100755
index 0000000..93e8b6b
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Components_IProfile.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Components_IProject.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Components_IProject.gif
new file mode 100755
index 0000000..df3eebc
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Components_IProject.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Components_IRelation.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Components_IRelation.gif
new file mode 100755
index 0000000..5ae660d
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Components_IRelation.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Components_IRequirement.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Components_IRequirement.gif
new file mode 100755
index 0000000..49d948b
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Components_IRequirement.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Components_ISendAction.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Components_ISendAction.gif
new file mode 100755
index 0000000..93e8b6b
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Components_ISendAction.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Components_ISequenceDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Components_ISequenceDiagram.gif
new file mode 100755
index 0000000..a6d8558
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Components_ISequenceDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Components_IState.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Components_IState.gif
new file mode 100755
index 0000000..4d9762f
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Components_IState.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Components_IStateChart.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Components_IStateChart.gif
new file mode 100755
index 0000000..6910560
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Components_IStateChart.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Components_IStateChartDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Components_IStateChartDiagram.gif
new file mode 100755
index 0000000..a6d8558
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Components_IStateChartDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Components_IStateVertex.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Components_IStateVertex.gif
new file mode 100755
index 0000000..179a7e8
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Components_IStateVertex.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Components_IStereotype.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Components_IStereotype.gif
new file mode 100755
index 0000000..49d948b
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Components_IStereotype.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Components_IStructureDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Components_IStructureDiagram.gif
new file mode 100755
index 0000000..1667bbe
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Components_IStructureDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Components_ISubsystem.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Components_ISubsystem.gif
new file mode 100755
index 0000000..3b598db
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Components_ISubsystem.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Components_ISwimlane.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Components_ISwimlane.gif
new file mode 100755
index 0000000..3ede289
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Components_ISwimlane.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Components_ISysMLPort.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Components_ISysMLPort.gif
new file mode 100755
index 0000000..f3d9958
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Components_ISysMLPort.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Components_ITableLayout.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Components_ITableLayout.gif
new file mode 100755
index 0000000..fc67848
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Components_ITableLayout.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Components_ITableView.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Components_ITableView.gif
new file mode 100755
index 0000000..a6d8558
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Components_ITableView.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Components_ITag.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Components_ITag.gif
new file mode 100755
index 0000000..afda55d
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Components_ITag.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Components_ITemplateInstantiation.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Components_ITemplateInstantiation.gif
new file mode 100755
index 0000000..f3d7cb9
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Components_ITemplateInstantiation.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Components_ITemplateInstantiationParameter.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Components_ITemplateInstantiationParameter.gif
new file mode 100755
index 0000000..0189a7e
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Components_ITemplateInstantiationParameter.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Components_ITemplateParameter.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Components_ITemplateParameter.gif
new file mode 100755
index 0000000..0e50474
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Components_ITemplateParameter.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Components_ITransition.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Components_ITransition.gif
new file mode 100755
index 0000000..df3eebc
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Components_ITransition.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Components_ITrigger.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Components_ITrigger.gif
new file mode 100755
index 0000000..f3d7cb9
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Components_ITrigger.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Components_ITriggered.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Components_ITriggered.gif
new file mode 100755
index 0000000..3ede289
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Components_ITriggered.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Components_IType.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Components_IType.gif
new file mode 100755
index 0000000..d89ab7a
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Components_IType.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Components_IUnit.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Components_IUnit.gif
new file mode 100755
index 0000000..33191e2
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Components_IUnit.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Components_IUseCase.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Components_IUseCase.gif
new file mode 100755
index 0000000..33e8a61
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Components_IUseCase.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Components_IUseCaseDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Components_IUseCaseDiagram.gif
new file mode 100755
index 0000000..2de4789
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Components_IUseCaseDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Components_IValueSpecification.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Components_IValueSpecification.gif
new file mode 100755
index 0000000..7ffd04a
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Components_IValueSpecification.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Components_IVariable.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Components_IVariable.gif
new file mode 100755
index 0000000..a6d8558
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Components_IVariable.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Declaratives_IStereotype.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Declaratives_IStereotype.gif
new file mode 100755
index 0000000..49d948b
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Declaratives_IStereotype.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Dependencies_IDependency.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Dependencies_IDependency.gif
new file mode 100755
index 0000000..902141b
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Dependencies_IDependency.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Dependencies_IHyperLink.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Dependencies_IHyperLink.gif
new file mode 100755
index 0000000..6910560
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Dependencies_IHyperLink.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Diagrams_IAcceptEventAction.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Diagrams_IAcceptEventAction.gif
new file mode 100755
index 0000000..93e8b6b
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Diagrams_IAcceptEventAction.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Diagrams_IAcceptTimeEvent.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Diagrams_IAcceptTimeEvent.gif
new file mode 100755
index 0000000..3cfac31
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Diagrams_IAcceptTimeEvent.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Diagrams_IAction.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Diagrams_IAction.gif
new file mode 100755
index 0000000..4d9762f
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Diagrams_IAction.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Diagrams_IActivityGraph.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Diagrams_IActivityGraph.gif
new file mode 100755
index 0000000..f3d7cb9
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Diagrams_IActivityGraph.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Diagrams_IActor.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Diagrams_IActor.gif
new file mode 100755
index 0000000..8a87700
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Diagrams_IActor.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Diagrams_IAnnotation.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Diagrams_IAnnotation.gif
new file mode 100755
index 0000000..1667bbe
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Diagrams_IAnnotation.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Diagrams_IArgument.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Diagrams_IArgument.gif
new file mode 100755
index 0000000..33e8a61
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Diagrams_IArgument.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Diagrams_IAssociationClass.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Diagrams_IAssociationClass.gif
new file mode 100755
index 0000000..ed645c3
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Diagrams_IAssociationClass.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Diagrams_IAssociationEnd.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Diagrams_IAssociationEnd.gif
new file mode 100755
index 0000000..55473b4
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Diagrams_IAssociationEnd.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Diagrams_IAssociationRole.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Diagrams_IAssociationRole.gif
new file mode 100755
index 0000000..1577bb8
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Diagrams_IAssociationRole.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Diagrams_IAttribute.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Diagrams_IAttribute.gif
new file mode 100755
index 0000000..922e8ab
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Diagrams_IAttribute.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Diagrams_ICallOperation.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Diagrams_ICallOperation.gif
new file mode 100755
index 0000000..380314b
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Diagrams_ICallOperation.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Diagrams_IClass.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Diagrams_IClass.gif
new file mode 100755
index 0000000..1543d3c
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Diagrams_IClass.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Diagrams_IClassifier.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Diagrams_IClassifier.gif
new file mode 100755
index 0000000..0a2cc52
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Diagrams_IClassifier.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Diagrams_IClassifierRole.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Diagrams_IClassifierRole.gif
new file mode 100755
index 0000000..0aed407
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Diagrams_IClassifierRole.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Diagrams_ICollaboration.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Diagrams_ICollaboration.gif
new file mode 100755
index 0000000..ab6c90a
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Diagrams_ICollaboration.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Diagrams_ICollaborationDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Diagrams_ICollaborationDiagram.gif
new file mode 100755
index 0000000..ec56659
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Diagrams_ICollaborationDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Diagrams_IComment.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Diagrams_IComment.gif
new file mode 100755
index 0000000..2de4789
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Diagrams_IComment.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Diagrams_IComponent.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Diagrams_IComponent.gif
new file mode 100755
index 0000000..3cfac31
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Diagrams_IComponent.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Diagrams_IComponentDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Diagrams_IComponentDiagram.gif
new file mode 100755
index 0000000..33e8a61
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Diagrams_IComponentDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Diagrams_IComponentInstance.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Diagrams_IComponentInstance.gif
new file mode 100755
index 0000000..55473b4
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Diagrams_IComponentInstance.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Diagrams_IConfiguration.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Diagrams_IConfiguration.gif
new file mode 100755
index 0000000..1543d3c
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Diagrams_IConfiguration.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Diagrams_IConnector.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Diagrams_IConnector.gif
new file mode 100755
index 0000000..ed645c3
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Diagrams_IConnector.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Diagrams_IConstraint.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Diagrams_IConstraint.gif
new file mode 100755
index 0000000..93e8b6b
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Diagrams_IConstraint.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Diagrams_IContextSpecification.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Diagrams_IContextSpecification.gif
new file mode 100755
index 0000000..0189a7e
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Diagrams_IContextSpecification.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Diagrams_IControlledFile.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Diagrams_IControlledFile.gif
new file mode 100755
index 0000000..179a7e8
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Diagrams_IControlledFile.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Diagrams_IDependency.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Diagrams_IDependency.gif
new file mode 100755
index 0000000..902141b
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Diagrams_IDependency.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Diagrams_IDeploymentDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Diagrams_IDeploymentDiagram.gif
new file mode 100755
index 0000000..e91f6dd
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Diagrams_IDeploymentDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Diagrams_IDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Diagrams_IDiagram.gif
new file mode 100755
index 0000000..fc67848
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Diagrams_IDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Diagrams_IEnumerationLiteral.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Diagrams_IEnumerationLiteral.gif
new file mode 100755
index 0000000..61e87ec
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Diagrams_IEnumerationLiteral.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Diagrams_IEvent.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Diagrams_IEvent.gif
new file mode 100755
index 0000000..3cfac31
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Diagrams_IEvent.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Diagrams_IEventReception.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Diagrams_IEventReception.gif
new file mode 100755
index 0000000..3ede289
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Diagrams_IEventReception.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Diagrams_IExecutionOccurrence.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Diagrams_IExecutionOccurrence.gif
new file mode 100755
index 0000000..5a3ab4a
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Diagrams_IExecutionOccurrence.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Diagrams_IExternalHyperlink.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Diagrams_IExternalHyperlink.gif
new file mode 100755
index 0000000..9f3b2e7
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Diagrams_IExternalHyperlink.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Diagrams_IFile.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Diagrams_IFile.gif
new file mode 100755
index 0000000..f3d7cb9
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Diagrams_IFile.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Diagrams_IFileFragment.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Diagrams_IFileFragment.gif
new file mode 100755
index 0000000..3ede289
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Diagrams_IFileFragment.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Diagrams_IFlow.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Diagrams_IFlow.gif
new file mode 100755
index 0000000..24686d6
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Diagrams_IFlow.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Diagrams_IFlowItem.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Diagrams_IFlowItem.gif
new file mode 100755
index 0000000..44d87cb
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Diagrams_IFlowItem.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Diagrams_IGeneralization.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Diagrams_IGeneralization.gif
new file mode 100755
index 0000000..33191e2
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Diagrams_IGeneralization.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Diagrams_IGuard.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Diagrams_IGuard.gif
new file mode 100755
index 0000000..1577bb8
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Diagrams_IGuard.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Diagrams_IHyperLink.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Diagrams_IHyperLink.gif
new file mode 100755
index 0000000..6910560
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Diagrams_IHyperLink.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Diagrams_IInformationFlow.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Diagrams_IInformationFlow.gif
new file mode 100755
index 0000000..3cfac31
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Diagrams_IInformationFlow.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Diagrams_IInstance.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Diagrams_IInstance.gif
new file mode 100755
index 0000000..3b598db
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Diagrams_IInstance.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Diagrams_IInstanceSlot.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Diagrams_IInstanceSlot.gif
new file mode 100755
index 0000000..a6d8558
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Diagrams_IInstanceSlot.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Diagrams_IInstanceSpecification.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Diagrams_IInstanceSpecification.gif
new file mode 100755
index 0000000..33e8a61
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Diagrams_IInstanceSpecification.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Diagrams_IInstanceValue.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Diagrams_IInstanceValue.gif
new file mode 100755
index 0000000..1667bbe
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Diagrams_IInstanceValue.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Diagrams_IInteractionOccurrence.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Diagrams_IInteractionOccurrence.gif
new file mode 100755
index 0000000..3cfac31
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Diagrams_IInteractionOccurrence.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Diagrams_IInteractionOperand.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Diagrams_IInteractionOperand.gif
new file mode 100755
index 0000000..3d1deee
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Diagrams_IInteractionOperand.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Diagrams_IInteractionOperator.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Diagrams_IInteractionOperator.gif
new file mode 100755
index 0000000..d89ab7a
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Diagrams_IInteractionOperator.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Diagrams_IInterfaceItem.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Diagrams_IInterfaceItem.gif
new file mode 100755
index 0000000..fc67848
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Diagrams_IInterfaceItem.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Diagrams_IInternalHyperlink.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Diagrams_IInternalHyperlink.gif
new file mode 100755
index 0000000..df3eebc
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Diagrams_IInternalHyperlink.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Diagrams_ILink.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Diagrams_ILink.gif
new file mode 100755
index 0000000..281b5cf
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Diagrams_ILink.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Diagrams_ILiteralSpecification.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Diagrams_ILiteralSpecification.gif
new file mode 100755
index 0000000..61e87ec
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Diagrams_ILiteralSpecification.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Diagrams_IMHyperLink.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Diagrams_IMHyperLink.gif
new file mode 100755
index 0000000..55473b4
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Diagrams_IMHyperLink.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Diagrams_IMatrixLayout.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Diagrams_IMatrixLayout.gif
new file mode 100755
index 0000000..3b0b444
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Diagrams_IMatrixLayout.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Diagrams_IMatrixView.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Diagrams_IMatrixView.gif
new file mode 100755
index 0000000..3cfac31
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Diagrams_IMatrixView.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Diagrams_IMessage.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Diagrams_IMessage.gif
new file mode 100755
index 0000000..7ffd04a
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Diagrams_IMessage.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Diagrams_IMessagePoint.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Diagrams_IMessagePoint.gif
new file mode 100755
index 0000000..0e50474
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Diagrams_IMessagePoint.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Diagrams_IModelElement.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Diagrams_IModelElement.gif
new file mode 100755
index 0000000..1577bb8
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Diagrams_IModelElement.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Diagrams_IModule.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Diagrams_IModule.gif
new file mode 100755
index 0000000..f3d9958
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Diagrams_IModule.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Diagrams_INode.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Diagrams_INode.gif
new file mode 100755
index 0000000..549553f
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Diagrams_INode.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Diagrams_IObjectLink.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Diagrams_IObjectLink.gif
new file mode 100755
index 0000000..179a7e8
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Diagrams_IObjectLink.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Diagrams_IObjectModelDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Diagrams_IObjectModelDiagram.gif
new file mode 100755
index 0000000..0e50474
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Diagrams_IObjectModelDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Diagrams_IObjectNode.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Diagrams_IObjectNode.gif
new file mode 100755
index 0000000..1bf6bbe
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Diagrams_IObjectNode.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Diagrams_IOperation.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Diagrams_IOperation.gif
new file mode 100755
index 0000000..e91f6dd
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Diagrams_IOperation.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Diagrams_IPackage.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Diagrams_IPackage.gif
new file mode 100755
index 0000000..c89018c
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Diagrams_IPackage.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Diagrams_IPanelDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Diagrams_IPanelDiagram.gif
new file mode 100755
index 0000000..f3d7cb9
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Diagrams_IPanelDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Diagrams_IPart.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Diagrams_IPart.gif
new file mode 100755
index 0000000..f2db288
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Diagrams_IPart.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Diagrams_IPin.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Diagrams_IPin.gif
new file mode 100755
index 0000000..3b598db
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Diagrams_IPin.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Diagrams_IPort.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Diagrams_IPort.gif
new file mode 100755
index 0000000..3cfac31
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Diagrams_IPort.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Diagrams_IPrimitiveOperation.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Diagrams_IPrimitiveOperation.gif
new file mode 100755
index 0000000..ed645c3
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Diagrams_IPrimitiveOperation.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Diagrams_IProfile.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Diagrams_IProfile.gif
new file mode 100755
index 0000000..93e8b6b
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Diagrams_IProfile.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Diagrams_IProject.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Diagrams_IProject.gif
new file mode 100755
index 0000000..df3eebc
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Diagrams_IProject.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Diagrams_IRelation.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Diagrams_IRelation.gif
new file mode 100755
index 0000000..5ae660d
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Diagrams_IRelation.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Diagrams_IRequirement.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Diagrams_IRequirement.gif
new file mode 100755
index 0000000..49d948b
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Diagrams_IRequirement.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Diagrams_ISendAction.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Diagrams_ISendAction.gif
new file mode 100755
index 0000000..93e8b6b
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Diagrams_ISendAction.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Diagrams_ISequenceDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Diagrams_ISequenceDiagram.gif
new file mode 100755
index 0000000..a6d8558
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Diagrams_ISequenceDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Diagrams_IState.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Diagrams_IState.gif
new file mode 100755
index 0000000..4d9762f
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Diagrams_IState.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Diagrams_IStateChart.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Diagrams_IStateChart.gif
new file mode 100755
index 0000000..6910560
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Diagrams_IStateChart.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Diagrams_IStateChartDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Diagrams_IStateChartDiagram.gif
new file mode 100755
index 0000000..a6d8558
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Diagrams_IStateChartDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Diagrams_IStateVertex.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Diagrams_IStateVertex.gif
new file mode 100755
index 0000000..179a7e8
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Diagrams_IStateVertex.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Diagrams_IStereotype.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Diagrams_IStereotype.gif
new file mode 100755
index 0000000..49d948b
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Diagrams_IStereotype.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Diagrams_IStructureDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Diagrams_IStructureDiagram.gif
new file mode 100755
index 0000000..1667bbe
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Diagrams_IStructureDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Diagrams_ISubsystem.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Diagrams_ISubsystem.gif
new file mode 100755
index 0000000..3b598db
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Diagrams_ISubsystem.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Diagrams_ISwimlane.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Diagrams_ISwimlane.gif
new file mode 100755
index 0000000..3ede289
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Diagrams_ISwimlane.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Diagrams_ISysMLPort.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Diagrams_ISysMLPort.gif
new file mode 100755
index 0000000..f3d9958
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Diagrams_ISysMLPort.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Diagrams_ITableLayout.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Diagrams_ITableLayout.gif
new file mode 100755
index 0000000..fc67848
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Diagrams_ITableLayout.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Diagrams_ITableView.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Diagrams_ITableView.gif
new file mode 100755
index 0000000..a6d8558
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Diagrams_ITableView.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Diagrams_ITag.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Diagrams_ITag.gif
new file mode 100755
index 0000000..afda55d
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Diagrams_ITag.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Diagrams_ITemplateInstantiation.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Diagrams_ITemplateInstantiation.gif
new file mode 100755
index 0000000..f3d7cb9
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Diagrams_ITemplateInstantiation.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Diagrams_ITemplateInstantiationParameter.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Diagrams_ITemplateInstantiationParameter.gif
new file mode 100755
index 0000000..0189a7e
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Diagrams_ITemplateInstantiationParameter.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Diagrams_ITemplateParameter.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Diagrams_ITemplateParameter.gif
new file mode 100755
index 0000000..0e50474
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Diagrams_ITemplateParameter.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Diagrams_ITransition.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Diagrams_ITransition.gif
new file mode 100755
index 0000000..df3eebc
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Diagrams_ITransition.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Diagrams_ITrigger.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Diagrams_ITrigger.gif
new file mode 100755
index 0000000..f3d7cb9
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Diagrams_ITrigger.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Diagrams_ITriggered.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Diagrams_ITriggered.gif
new file mode 100755
index 0000000..3ede289
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Diagrams_ITriggered.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Diagrams_IType.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Diagrams_IType.gif
new file mode 100755
index 0000000..d89ab7a
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Diagrams_IType.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Diagrams_IUnit.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Diagrams_IUnit.gif
new file mode 100755
index 0000000..33191e2
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Diagrams_IUnit.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Diagrams_IUseCase.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Diagrams_IUseCase.gif
new file mode 100755
index 0000000..33e8a61
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Diagrams_IUseCase.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Diagrams_IUseCaseDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Diagrams_IUseCaseDiagram.gif
new file mode 100755
index 0000000..2de4789
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Diagrams_IUseCaseDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Diagrams_IValueSpecification.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Diagrams_IValueSpecification.gif
new file mode 100755
index 0000000..7ffd04a
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Diagrams_IValueSpecification.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Diagrams_IVariable.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Diagrams_IVariable.gif
new file mode 100755
index 0000000..a6d8558
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Diagrams_IVariable.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_HyperLinks_IMHyperLink.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_HyperLinks_IMHyperLink.gif
new file mode 100755
index 0000000..55473b4
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_HyperLinks_IMHyperLink.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_MSCS_IAssociationClass.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_MSCS_IAssociationClass.gif
new file mode 100755
index 0000000..ed645c3
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_MSCS_IAssociationClass.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_MSCS_IClass.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_MSCS_IClass.gif
new file mode 100755
index 0000000..1543d3c
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_MSCS_IClass.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_MSCS_ICollaborationDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_MSCS_ICollaborationDiagram.gif
new file mode 100755
index 0000000..ec56659
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_MSCS_ICollaborationDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_MSCS_IComponent.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_MSCS_IComponent.gif
new file mode 100755
index 0000000..3cfac31
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_MSCS_IComponent.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_MSCS_IComponentDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_MSCS_IComponentDiagram.gif
new file mode 100755
index 0000000..33e8a61
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_MSCS_IComponentDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_MSCS_IDeploymentDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_MSCS_IDeploymentDiagram.gif
new file mode 100755
index 0000000..e91f6dd
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_MSCS_IDeploymentDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_MSCS_IDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_MSCS_IDiagram.gif
new file mode 100755
index 0000000..fc67848
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_MSCS_IDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_MSCS_IInformationFlow.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_MSCS_IInformationFlow.gif
new file mode 100755
index 0000000..3cfac31
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_MSCS_IInformationFlow.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_MSCS_IInformationItem.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_MSCS_IInformationItem.gif
new file mode 100755
index 0000000..8a87700
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_MSCS_IInformationItem.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_MSCS_IMSC.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_MSCS_IMSC.gif
new file mode 100755
index 0000000..93e8b6b
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_MSCS_IMSC.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_MSCS_IObjectModelDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_MSCS_IObjectModelDiagram.gif
new file mode 100755
index 0000000..0e50474
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_MSCS_IObjectModelDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_MSCS_IPanelDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_MSCS_IPanelDiagram.gif
new file mode 100755
index 0000000..f3d7cb9
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_MSCS_IPanelDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_MSCS_ISequenceDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_MSCS_ISequenceDiagram.gif
new file mode 100755
index 0000000..a6d8558
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_MSCS_ISequenceDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_MSCS_IStateChart.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_MSCS_IStateChart.gif
new file mode 100755
index 0000000..6910560
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_MSCS_IStateChart.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_MSCS_IStateChartDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_MSCS_IStateChartDiagram.gif
new file mode 100755
index 0000000..a6d8558
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_MSCS_IStateChartDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_MSCS_IStereotype.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_MSCS_IStereotype.gif
new file mode 100755
index 0000000..49d948b
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_MSCS_IStereotype.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_MSCS_IStructureDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_MSCS_IStructureDiagram.gif
new file mode 100755
index 0000000..1667bbe
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_MSCS_IStructureDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_MSCS_ISubsystem.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_MSCS_ISubsystem.gif
new file mode 100755
index 0000000..3b598db
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_MSCS_ISubsystem.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_MSCS_IType.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_MSCS_IType.gif
new file mode 100755
index 0000000..d89ab7a
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_MSCS_IType.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_MSCS_IUCDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_MSCS_IUCDiagram.gif
new file mode 100755
index 0000000..3d1deee
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_MSCS_IUCDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_MSCS_IUseCaseDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_MSCS_IUseCaseDiagram.gif
new file mode 100755
index 0000000..2de4789
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_MSCS_IUseCaseDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Multiplicities_IMultiplicityItem.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Multiplicities_IMultiplicityItem.gif
new file mode 100755
index 0000000..9531433
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Multiplicities_IMultiplicityItem.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_PanelDiagrams_IPanelDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_PanelDiagrams_IPanelDiagram.gif
new file mode 100755
index 0000000..f3d7cb9
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_PanelDiagrams_IPanelDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Subsystems_IComponent.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Subsystems_IComponent.gif
new file mode 100755
index 0000000..3cfac31
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Subsystems_IComponent.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Subsystems_IProfile.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Subsystems_IProfile.gif
new file mode 100755
index 0000000..93e8b6b
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Subsystems_IProfile.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Subsystems_ISubsystem.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Subsystems_ISubsystem.gif
new file mode 100755
index 0000000..3b598db
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_Subsystems_ISubsystem.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_UCDiagrams_IUCDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_UCDiagrams_IUCDiagram.gif
new file mode 100755
index 0000000..3d1deee
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIProject_UCDiagrams_IUCDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIPropertyContainer_Subjects_IPropertySubject.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIPropertyContainer_Subjects_IPropertySubject.gif
new file mode 100755
index 0000000..bee89db
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIPropertyContainer_Subjects_IPropertySubject.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIPropertyMetaclass_Properties_IProperty.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIPropertyMetaclass_Properties_IProperty.gif
new file mode 100755
index 0000000..3ddab58
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIPropertyMetaclass_Properties_IProperty.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIPropertySubject_Metaclasses_IPropertyMetaclass.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIPropertySubject_Metaclasses_IPropertyMetaclass.gif
new file mode 100755
index 0000000..bc1868f
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIPropertySubject_Metaclasses_IPropertyMetaclass.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIReception_Dependencies_IDependency.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIReception_Dependencies_IDependency.gif
new file mode 100755
index 0000000..a548cc2
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIReception_Dependencies_IDependency.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIReception_Dependencies_IHyperLink.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIReception_Dependencies_IHyperLink.gif
new file mode 100755
index 0000000..11943a3
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIReception_Dependencies_IHyperLink.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIReception_description_IDescription.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIReception_description_IDescription.gif
new file mode 100755
index 0000000..4c5b0e3
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIReception_description_IDescription.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIReferenceActivity_Stereotypes_IActor.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIReferenceActivity_Stereotypes_IActor.gif
new file mode 100755
index 0000000..834778f
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIReferenceActivity_Stereotypes_IActor.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIReferenceActivity_Stereotypes_IAssociationClass.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIReferenceActivity_Stereotypes_IAssociationClass.gif
new file mode 100755
index 0000000..5d2a198
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIReferenceActivity_Stereotypes_IAssociationClass.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIReferenceActivity_Stereotypes_IClass.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIReferenceActivity_Stereotypes_IClass.gif
new file mode 100755
index 0000000..ab5d6ae
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIReferenceActivity_Stereotypes_IClass.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIReferenceActivity_Stereotypes_IClassifier.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIReferenceActivity_Stereotypes_IClassifier.gif
new file mode 100755
index 0000000..388fb52
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIReferenceActivity_Stereotypes_IClassifier.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIReferenceActivity_Stereotypes_IEvent.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIReferenceActivity_Stereotypes_IEvent.gif
new file mode 100755
index 0000000..e9186c4
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIReferenceActivity_Stereotypes_IEvent.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIReferenceActivity_Stereotypes_IEventReception.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIReferenceActivity_Stereotypes_IEventReception.gif
new file mode 100755
index 0000000..0289a2a
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIReferenceActivity_Stereotypes_IEventReception.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIReferenceActivity_Stereotypes_IFlowItem.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIReferenceActivity_Stereotypes_IFlowItem.gif
new file mode 100755
index 0000000..adc7111
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIReferenceActivity_Stereotypes_IFlowItem.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIReferenceActivity_Stereotypes_IInterfaceItem.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIReferenceActivity_Stereotypes_IInterfaceItem.gif
new file mode 100755
index 0000000..d4e6ceb
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIReferenceActivity_Stereotypes_IInterfaceItem.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIReferenceActivity_Stereotypes_INode.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIReferenceActivity_Stereotypes_INode.gif
new file mode 100755
index 0000000..148227b
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIReferenceActivity_Stereotypes_INode.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIReferenceActivity_Stereotypes_IOperation.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIReferenceActivity_Stereotypes_IOperation.gif
new file mode 100755
index 0000000..3f3051f
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIReferenceActivity_Stereotypes_IOperation.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIReferenceActivity_Stereotypes_IStateChart.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIReferenceActivity_Stereotypes_IStateChart.gif
new file mode 100755
index 0000000..a982f41
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIReferenceActivity_Stereotypes_IStateChart.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIReferenceActivity_Stereotypes_IStereotype.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIReferenceActivity_Stereotypes_IStereotype.gif
new file mode 100755
index 0000000..e93d4ee
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIReferenceActivity_Stereotypes_IStereotype.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIReferenceActivity_Stereotypes_IType.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIReferenceActivity_Stereotypes_IType.gif
new file mode 100755
index 0000000..3ca690b
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIReferenceActivity_Stereotypes_IType.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIReferenceActivity_Stereotypes_IUseCase.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIReferenceActivity_Stereotypes_IUseCase.gif
new file mode 100755
index 0000000..c7d5a0c
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIReferenceActivity_Stereotypes_IUseCase.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIRequirement_Anchors_IAnchor.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIRequirement_Anchors_IAnchor.gif
new file mode 100755
index 0000000..08d7d52
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIRequirement_Anchors_IAnchor.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIRequirement_Annotations_IRequirement.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIRequirement_Annotations_IRequirement.gif
new file mode 100755
index 0000000..fad8ece
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIRequirement_Annotations_IRequirement.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIRequirement_Dependencies_IDependency.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIRequirement_Dependencies_IDependency.gif
new file mode 100755
index 0000000..5d35ecb
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIRequirement_Dependencies_IDependency.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIRequirement_Dependencies_IHyperLink.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIRequirement_Dependencies_IHyperLink.gif
new file mode 100755
index 0000000..a0468c1
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIRequirement_Dependencies_IHyperLink.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIRequirement_HyperLinks_IMHyperLink.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIRequirement_HyperLinks_IMHyperLink.gif
new file mode 100755
index 0000000..bcf1f27
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIRequirement_HyperLinks_IMHyperLink.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIRequirement_Stereotypes_IStereotype.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIRequirement_Stereotypes_IStereotype.gif
new file mode 100755
index 0000000..fad8ece
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIRequirement_Stereotypes_IStereotype.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISendAction_graphElements_IHandleWithData.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISendAction_graphElements_IHandleWithData.gif
new file mode 100755
index 0000000..e00417a
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISendAction_graphElements_IHandleWithData.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISendAction_m_hEvent_IEventHandle.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISendAction_m_hEvent_IEventHandle.gif
new file mode 100755
index 0000000..ca79a7f
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISendAction_m_hEvent_IEventHandle.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIStateChart_States_IAcceptEventAction.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIStateChart_States_IAcceptEventAction.gif
new file mode 100755
index 0000000..17f115f
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIStateChart_States_IAcceptEventAction.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIStateChart_States_IAcceptTimeEvent.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIStateChart_States_IAcceptTimeEvent.gif
new file mode 100755
index 0000000..61b29ab
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIStateChart_States_IAcceptTimeEvent.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIStateChart_States_ICallOperation.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIStateChart_States_ICallOperation.gif
new file mode 100755
index 0000000..a66430a
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIStateChart_States_ICallOperation.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIStateChart_States_IObjectNode.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIStateChart_States_IObjectNode.gif
new file mode 100755
index 0000000..3cafe5d
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIStateChart_States_IObjectNode.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIStateChart_States_IState.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIStateChart_States_IState.gif
new file mode 100755
index 0000000..4a6adcc
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIStateChart_States_IState.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIStateChart_Views_IStateChartDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIStateChart_Views_IStateChartDiagram.gif
new file mode 100755
index 0000000..7d7c59b
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIStateChart_Views_IStateChartDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIStateChart_diagram_IStateChartDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIStateChart_diagram_IStateChartDiagram.gif
new file mode 100755
index 0000000..7d7c59b
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIStateChart_diagram_IStateChartDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIStateVertex_description_IDescription.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIStateVertex_description_IDescription.gif
new file mode 100755
index 0000000..e04b1b4
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIStateVertex_description_IDescription.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIState_Annotations_IAnnotation.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIState_Annotations_IAnnotation.gif
new file mode 100755
index 0000000..c0805c4
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIState_Annotations_IAnnotation.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIState_Annotations_IComment.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIState_Annotations_IComment.gif
new file mode 100755
index 0000000..ba97841
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIState_Annotations_IComment.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIState_Annotations_IConstraint.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIState_Annotations_IConstraint.gif
new file mode 100755
index 0000000..aefaad1
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIState_Annotations_IConstraint.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIState_Annotations_IRequirement.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIState_Annotations_IRequirement.gif
new file mode 100755
index 0000000..ae50bcb
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIState_Annotations_IRequirement.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIState_Dependencies_IDependency.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIState_Dependencies_IDependency.gif
new file mode 100755
index 0000000..431e68e
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIState_Dependencies_IDependency.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIState_Dependencies_IHyperLink.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIState_Dependencies_IHyperLink.gif
new file mode 100755
index 0000000..eacefe8
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIState_Dependencies_IHyperLink.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIState_entryAction_IAcceptEventAction.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIState_entryAction_IAcceptEventAction.gif
new file mode 100755
index 0000000..aefaad1
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIState_entryAction_IAcceptEventAction.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIState_entryAction_IAcceptTimeEvent.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIState_entryAction_IAcceptTimeEvent.gif
new file mode 100755
index 0000000..49d5160
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIState_entryAction_IAcceptTimeEvent.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIState_entryAction_IAction.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIState_entryAction_IAction.gif
new file mode 100755
index 0000000..fff09ec
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIState_entryAction_IAction.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIState_entryAction_IActivityGraph.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIState_entryAction_IActivityGraph.gif
new file mode 100755
index 0000000..e3a33e1
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIState_entryAction_IActivityGraph.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIState_entryAction_IActor.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIState_entryAction_IActor.gif
new file mode 100755
index 0000000..625be45
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIState_entryAction_IActor.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIState_entryAction_IAnnotation.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIState_entryAction_IAnnotation.gif
new file mode 100755
index 0000000..c0805c4
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIState_entryAction_IAnnotation.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIState_entryAction_IArgument.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIState_entryAction_IArgument.gif
new file mode 100755
index 0000000..039d611
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIState_entryAction_IArgument.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIState_entryAction_IAssociationClass.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIState_entryAction_IAssociationClass.gif
new file mode 100755
index 0000000..31a5cbb
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIState_entryAction_IAssociationClass.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIState_entryAction_IAssociationEnd.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIState_entryAction_IAssociationEnd.gif
new file mode 100755
index 0000000..b5d9dfa
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIState_entryAction_IAssociationEnd.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIState_entryAction_IAssociationRole.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIState_entryAction_IAssociationRole.gif
new file mode 100755
index 0000000..27dc0ef
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIState_entryAction_IAssociationRole.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIState_entryAction_IAttribute.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIState_entryAction_IAttribute.gif
new file mode 100755
index 0000000..f4ffabb
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIState_entryAction_IAttribute.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIState_entryAction_ICallOperation.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIState_entryAction_ICallOperation.gif
new file mode 100755
index 0000000..f13bfed
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIState_entryAction_ICallOperation.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIState_entryAction_IClass.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIState_entryAction_IClass.gif
new file mode 100755
index 0000000..764013a
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIState_entryAction_IClass.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIState_entryAction_IClassifier.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIState_entryAction_IClassifier.gif
new file mode 100755
index 0000000..c239521
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIState_entryAction_IClassifier.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIState_entryAction_IClassifierRole.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIState_entryAction_IClassifierRole.gif
new file mode 100755
index 0000000..8a81cf6
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIState_entryAction_IClassifierRole.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIState_entryAction_ICollaboration.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIState_entryAction_ICollaboration.gif
new file mode 100755
index 0000000..7a3fca1
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIState_entryAction_ICollaboration.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIState_entryAction_ICollaborationDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIState_entryAction_ICollaborationDiagram.gif
new file mode 100755
index 0000000..ff1bc46
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIState_entryAction_ICollaborationDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIState_entryAction_IComment.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIState_entryAction_IComment.gif
new file mode 100755
index 0000000..ba97841
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIState_entryAction_IComment.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIState_entryAction_IComponent.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIState_entryAction_IComponent.gif
new file mode 100755
index 0000000..49d5160
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIState_entryAction_IComponent.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIState_entryAction_IComponentDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIState_entryAction_IComponentDiagram.gif
new file mode 100755
index 0000000..039d611
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIState_entryAction_IComponentDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIState_entryAction_IComponentInstance.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIState_entryAction_IComponentInstance.gif
new file mode 100755
index 0000000..b5d9dfa
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIState_entryAction_IComponentInstance.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIState_entryAction_IConfiguration.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIState_entryAction_IConfiguration.gif
new file mode 100755
index 0000000..764013a
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIState_entryAction_IConfiguration.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIState_entryAction_IConnector.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIState_entryAction_IConnector.gif
new file mode 100755
index 0000000..31a5cbb
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIState_entryAction_IConnector.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIState_entryAction_IConstraint.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIState_entryAction_IConstraint.gif
new file mode 100755
index 0000000..aefaad1
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIState_entryAction_IConstraint.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIState_entryAction_IContextSpecification.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIState_entryAction_IContextSpecification.gif
new file mode 100755
index 0000000..2576aa3
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIState_entryAction_IContextSpecification.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIState_entryAction_IControlledFile.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIState_entryAction_IControlledFile.gif
new file mode 100755
index 0000000..be01e39
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIState_entryAction_IControlledFile.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIState_entryAction_IDependency.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIState_entryAction_IDependency.gif
new file mode 100755
index 0000000..431e68e
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIState_entryAction_IDependency.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIState_entryAction_IDeploymentDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIState_entryAction_IDeploymentDiagram.gif
new file mode 100755
index 0000000..d9ee5d0
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIState_entryAction_IDeploymentDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIState_entryAction_IDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIState_entryAction_IDiagram.gif
new file mode 100755
index 0000000..4dde3f5
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIState_entryAction_IDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIState_entryAction_IEnumerationLiteral.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIState_entryAction_IEnumerationLiteral.gif
new file mode 100755
index 0000000..46fcd0c
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIState_entryAction_IEnumerationLiteral.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIState_entryAction_IEvent.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIState_entryAction_IEvent.gif
new file mode 100755
index 0000000..49d5160
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIState_entryAction_IEvent.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIState_entryAction_IEventReception.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIState_entryAction_IEventReception.gif
new file mode 100755
index 0000000..17408b8
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIState_entryAction_IEventReception.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIState_entryAction_IExecutionOccurrence.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIState_entryAction_IExecutionOccurrence.gif
new file mode 100755
index 0000000..56549ea
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIState_entryAction_IExecutionOccurrence.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIState_entryAction_IExternalHyperlink.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIState_entryAction_IExternalHyperlink.gif
new file mode 100755
index 0000000..f2cd14d
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIState_entryAction_IExternalHyperlink.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIState_entryAction_IFile.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIState_entryAction_IFile.gif
new file mode 100755
index 0000000..e3a33e1
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIState_entryAction_IFile.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIState_entryAction_IFileFragment.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIState_entryAction_IFileFragment.gif
new file mode 100755
index 0000000..17408b8
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIState_entryAction_IFileFragment.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIState_entryAction_IFlow.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIState_entryAction_IFlow.gif
new file mode 100755
index 0000000..30b27aa
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIState_entryAction_IFlow.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIState_entryAction_IFlowItem.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIState_entryAction_IFlowItem.gif
new file mode 100755
index 0000000..9b4804d
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIState_entryAction_IFlowItem.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIState_entryAction_IGeneralization.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIState_entryAction_IGeneralization.gif
new file mode 100755
index 0000000..c0cb609
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIState_entryAction_IGeneralization.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIState_entryAction_IGuard.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIState_entryAction_IGuard.gif
new file mode 100755
index 0000000..27dc0ef
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIState_entryAction_IGuard.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIState_entryAction_IHyperLink.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIState_entryAction_IHyperLink.gif
new file mode 100755
index 0000000..eacefe8
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIState_entryAction_IHyperLink.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIState_entryAction_IInformationFlow.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIState_entryAction_IInformationFlow.gif
new file mode 100755
index 0000000..49d5160
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIState_entryAction_IInformationFlow.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIState_entryAction_IInstance.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIState_entryAction_IInstance.gif
new file mode 100755
index 0000000..dd1ad84
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIState_entryAction_IInstance.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIState_entryAction_IInstanceSlot.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIState_entryAction_IInstanceSlot.gif
new file mode 100755
index 0000000..d59b3c9
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIState_entryAction_IInstanceSlot.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIState_entryAction_IInstanceSpecification.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIState_entryAction_IInstanceSpecification.gif
new file mode 100755
index 0000000..039d611
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIState_entryAction_IInstanceSpecification.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIState_entryAction_IInstanceValue.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIState_entryAction_IInstanceValue.gif
new file mode 100755
index 0000000..c0805c4
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIState_entryAction_IInstanceValue.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIState_entryAction_IInteractionOccurrence.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIState_entryAction_IInteractionOccurrence.gif
new file mode 100755
index 0000000..49d5160
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIState_entryAction_IInteractionOccurrence.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIState_entryAction_IInteractionOperand.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIState_entryAction_IInteractionOperand.gif
new file mode 100755
index 0000000..678bf2f
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIState_entryAction_IInteractionOperand.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIState_entryAction_IInteractionOperator.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIState_entryAction_IInteractionOperator.gif
new file mode 100755
index 0000000..e1a974d
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIState_entryAction_IInteractionOperator.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIState_entryAction_IInterfaceItem.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIState_entryAction_IInterfaceItem.gif
new file mode 100755
index 0000000..4dde3f5
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIState_entryAction_IInterfaceItem.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIState_entryAction_IInternalHyperlink.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIState_entryAction_IInternalHyperlink.gif
new file mode 100755
index 0000000..f4e0f08
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIState_entryAction_IInternalHyperlink.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIState_entryAction_ILink.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIState_entryAction_ILink.gif
new file mode 100755
index 0000000..c32abef
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIState_entryAction_ILink.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIState_entryAction_ILiteralSpecification.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIState_entryAction_ILiteralSpecification.gif
new file mode 100755
index 0000000..46fcd0c
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIState_entryAction_ILiteralSpecification.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIState_entryAction_IMHyperLink.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIState_entryAction_IMHyperLink.gif
new file mode 100755
index 0000000..b5d9dfa
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIState_entryAction_IMHyperLink.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIState_entryAction_IMatrixLayout.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIState_entryAction_IMatrixLayout.gif
new file mode 100755
index 0000000..dcf6e96
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIState_entryAction_IMatrixLayout.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIState_entryAction_IMatrixView.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIState_entryAction_IMatrixView.gif
new file mode 100755
index 0000000..49d5160
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIState_entryAction_IMatrixView.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIState_entryAction_IMessage.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIState_entryAction_IMessage.gif
new file mode 100755
index 0000000..7e55e97
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIState_entryAction_IMessage.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIState_entryAction_IMessagePoint.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIState_entryAction_IMessagePoint.gif
new file mode 100755
index 0000000..94b7986
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIState_entryAction_IMessagePoint.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIState_entryAction_IModelElement.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIState_entryAction_IModelElement.gif
new file mode 100755
index 0000000..27dc0ef
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIState_entryAction_IModelElement.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIState_entryAction_IModule.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIState_entryAction_IModule.gif
new file mode 100755
index 0000000..859181c
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIState_entryAction_IModule.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIState_entryAction_INode.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIState_entryAction_INode.gif
new file mode 100755
index 0000000..8f1bd13
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIState_entryAction_INode.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIState_entryAction_IObjectLink.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIState_entryAction_IObjectLink.gif
new file mode 100755
index 0000000..be01e39
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIState_entryAction_IObjectLink.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIState_entryAction_IObjectModelDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIState_entryAction_IObjectModelDiagram.gif
new file mode 100755
index 0000000..94b7986
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIState_entryAction_IObjectModelDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIState_entryAction_IObjectNode.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIState_entryAction_IObjectNode.gif
new file mode 100755
index 0000000..b0e0b10
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIState_entryAction_IObjectNode.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIState_entryAction_IOperation.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIState_entryAction_IOperation.gif
new file mode 100755
index 0000000..d9ee5d0
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIState_entryAction_IOperation.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIState_entryAction_IPackage.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIState_entryAction_IPackage.gif
new file mode 100755
index 0000000..22168e6
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIState_entryAction_IPackage.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIState_entryAction_IPanelDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIState_entryAction_IPanelDiagram.gif
new file mode 100755
index 0000000..e3a33e1
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIState_entryAction_IPanelDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIState_entryAction_IPart.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIState_entryAction_IPart.gif
new file mode 100755
index 0000000..4047eaa
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIState_entryAction_IPart.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIState_entryAction_IPin.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIState_entryAction_IPin.gif
new file mode 100755
index 0000000..dd1ad84
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIState_entryAction_IPin.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIState_entryAction_IPort.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIState_entryAction_IPort.gif
new file mode 100755
index 0000000..49d5160
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIState_entryAction_IPort.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIState_entryAction_IPrimitiveOperation.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIState_entryAction_IPrimitiveOperation.gif
new file mode 100755
index 0000000..31a5cbb
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIState_entryAction_IPrimitiveOperation.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIState_entryAction_IProfile.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIState_entryAction_IProfile.gif
new file mode 100755
index 0000000..aefaad1
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIState_entryAction_IProfile.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIState_entryAction_IProject.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIState_entryAction_IProject.gif
new file mode 100755
index 0000000..f4e0f08
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIState_entryAction_IProject.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIState_entryAction_IRelation.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIState_entryAction_IRelation.gif
new file mode 100755
index 0000000..f9c132c
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIState_entryAction_IRelation.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIState_entryAction_IRequirement.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIState_entryAction_IRequirement.gif
new file mode 100755
index 0000000..ae50bcb
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIState_entryAction_IRequirement.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIState_entryAction_ISendAction.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIState_entryAction_ISendAction.gif
new file mode 100755
index 0000000..aefaad1
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIState_entryAction_ISendAction.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIState_entryAction_ISequenceDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIState_entryAction_ISequenceDiagram.gif
new file mode 100755
index 0000000..d59b3c9
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIState_entryAction_ISequenceDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIState_entryAction_IState.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIState_entryAction_IState.gif
new file mode 100755
index 0000000..fff09ec
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIState_entryAction_IState.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIState_entryAction_IStateChart.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIState_entryAction_IStateChart.gif
new file mode 100755
index 0000000..eacefe8
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIState_entryAction_IStateChart.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIState_entryAction_IStateChartDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIState_entryAction_IStateChartDiagram.gif
new file mode 100755
index 0000000..d59b3c9
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIState_entryAction_IStateChartDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIState_entryAction_IStateVertex.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIState_entryAction_IStateVertex.gif
new file mode 100755
index 0000000..be01e39
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIState_entryAction_IStateVertex.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIState_entryAction_IStereotype.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIState_entryAction_IStereotype.gif
new file mode 100755
index 0000000..ae50bcb
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIState_entryAction_IStereotype.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIState_entryAction_IStructureDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIState_entryAction_IStructureDiagram.gif
new file mode 100755
index 0000000..c0805c4
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIState_entryAction_IStructureDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIState_entryAction_ISubsystem.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIState_entryAction_ISubsystem.gif
new file mode 100755
index 0000000..dd1ad84
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIState_entryAction_ISubsystem.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIState_entryAction_ISwimlane.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIState_entryAction_ISwimlane.gif
new file mode 100755
index 0000000..17408b8
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIState_entryAction_ISwimlane.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIState_entryAction_ISysMLPort.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIState_entryAction_ISysMLPort.gif
new file mode 100755
index 0000000..859181c
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIState_entryAction_ISysMLPort.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIState_entryAction_ITableLayout.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIState_entryAction_ITableLayout.gif
new file mode 100755
index 0000000..4dde3f5
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIState_entryAction_ITableLayout.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIState_entryAction_ITableView.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIState_entryAction_ITableView.gif
new file mode 100755
index 0000000..d59b3c9
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIState_entryAction_ITableView.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIState_entryAction_ITag.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIState_entryAction_ITag.gif
new file mode 100755
index 0000000..5b170f7
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIState_entryAction_ITag.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIState_entryAction_ITemplateInstantiation.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIState_entryAction_ITemplateInstantiation.gif
new file mode 100755
index 0000000..e3a33e1
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIState_entryAction_ITemplateInstantiation.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIState_entryAction_ITemplateInstantiationParameter.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIState_entryAction_ITemplateInstantiationParameter.gif
new file mode 100755
index 0000000..2576aa3
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIState_entryAction_ITemplateInstantiationParameter.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIState_entryAction_ITemplateParameter.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIState_entryAction_ITemplateParameter.gif
new file mode 100755
index 0000000..94b7986
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIState_entryAction_ITemplateParameter.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIState_entryAction_ITransition.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIState_entryAction_ITransition.gif
new file mode 100755
index 0000000..f4e0f08
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIState_entryAction_ITransition.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIState_entryAction_ITrigger.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIState_entryAction_ITrigger.gif
new file mode 100755
index 0000000..e3a33e1
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIState_entryAction_ITrigger.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIState_entryAction_ITriggered.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIState_entryAction_ITriggered.gif
new file mode 100755
index 0000000..17408b8
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIState_entryAction_ITriggered.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIState_entryAction_IType.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIState_entryAction_IType.gif
new file mode 100755
index 0000000..e1a974d
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIState_entryAction_IType.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIState_entryAction_IUnit.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIState_entryAction_IUnit.gif
new file mode 100755
index 0000000..c0cb609
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIState_entryAction_IUnit.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIState_entryAction_IUseCase.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIState_entryAction_IUseCase.gif
new file mode 100755
index 0000000..039d611
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIState_entryAction_IUseCase.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIState_entryAction_IUseCaseDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIState_entryAction_IUseCaseDiagram.gif
new file mode 100755
index 0000000..ba97841
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIState_entryAction_IUseCaseDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIState_entryAction_IValueSpecification.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIState_entryAction_IValueSpecification.gif
new file mode 100755
index 0000000..7e55e97
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIState_entryAction_IValueSpecification.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIState_entryAction_IVariable.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIState_entryAction_IVariable.gif
new file mode 100755
index 0000000..d59b3c9
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIState_entryAction_IVariable.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIState_exitAction_IAction.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIState_exitAction_IAction.gif
new file mode 100755
index 0000000..fff09ec
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIState_exitAction_IAction.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIState_exitAction_ISendAction.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIState_exitAction_ISendAction.gif
new file mode 100755
index 0000000..aefaad1
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIState_exitAction_ISendAction.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIState_nestedStateChart_IActivityGraph.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIState_nestedStateChart_IActivityGraph.gif
new file mode 100755
index 0000000..e3a33e1
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIState_nestedStateChart_IActivityGraph.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIState_nestedStateChart_IStateChart.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIState_nestedStateChart_IStateChart.gif
new file mode 100755
index 0000000..eacefe8
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIState_nestedStateChart_IStateChart.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIStereotype_Annotations_IComment.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIStereotype_Annotations_IComment.gif
new file mode 100755
index 0000000..0f352d7
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIStereotype_Annotations_IComment.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIStereotype_Dependencies_IDependency.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIStereotype_Dependencies_IDependency.gif
new file mode 100755
index 0000000..5d35ecb
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIStereotype_Dependencies_IDependency.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIStereotype_Dependencies_IHyperLink.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIStereotype_Dependencies_IHyperLink.gif
new file mode 100755
index 0000000..a0468c1
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIStereotype_Dependencies_IHyperLink.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIStereotype_Inheritances_IGeneralization.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIStereotype_Inheritances_IGeneralization.gif
new file mode 100755
index 0000000..2b0cac7
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIStereotype_Inheritances_IGeneralization.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIStereotype_Tags_ITag.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIStereotype_Tags_ITag.gif
new file mode 100755
index 0000000..b6cc9ca
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIStereotype_Tags_ITag.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIStereotype_description_IDescription.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIStereotype_description_IDescription.gif
new file mode 100755
index 0000000..0f352d7
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIStereotype_description_IDescription.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIStereotype_properties_IPropertyContainer.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIStereotype_properties_IPropertyContainer.gif
new file mode 100755
index 0000000..5b03160
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIStereotype_properties_IPropertyContainer.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Actors_IActor.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Actors_IActor.gif
new file mode 100755
index 0000000..c825541
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Actors_IActor.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Actors_IAssociationClass.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Actors_IAssociationClass.gif
new file mode 100755
index 0000000..62f7a1e
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Actors_IAssociationClass.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Actors_IClass.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Actors_IClass.gif
new file mode 100755
index 0000000..e2efc63
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Actors_IClass.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Actors_IClassifier.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Actors_IClassifier.gif
new file mode 100755
index 0000000..671249c
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Actors_IClassifier.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Actors_IEvent.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Actors_IEvent.gif
new file mode 100755
index 0000000..f6ec10a
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Actors_IEvent.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Actors_IEventReception.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Actors_IEventReception.gif
new file mode 100755
index 0000000..43d93ae
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Actors_IEventReception.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Actors_IFlowItem.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Actors_IFlowItem.gif
new file mode 100755
index 0000000..e8626bf
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Actors_IFlowItem.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Actors_IInterfaceItem.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Actors_IInterfaceItem.gif
new file mode 100755
index 0000000..912568a
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Actors_IInterfaceItem.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Actors_INode.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Actors_INode.gif
new file mode 100755
index 0000000..1e65bec
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Actors_INode.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Actors_IOperation.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Actors_IOperation.gif
new file mode 100755
index 0000000..83d72c4
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Actors_IOperation.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Actors_IStateChart.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Actors_IStateChart.gif
new file mode 100755
index 0000000..8f218cb
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Actors_IStateChart.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Actors_IStereotype.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Actors_IStereotype.gif
new file mode 100755
index 0000000..9c71118
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Actors_IStereotype.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Actors_IType.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Actors_IType.gif
new file mode 100755
index 0000000..436a9c5
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Actors_IType.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Actors_IUseCase.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Actors_IUseCase.gif
new file mode 100755
index 0000000..513f25d
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Actors_IUseCase.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Annotations_IActor.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Annotations_IActor.gif
new file mode 100755
index 0000000..c825541
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Annotations_IActor.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Annotations_IAnnotation.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Annotations_IAnnotation.gif
new file mode 100755
index 0000000..8a52761
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Annotations_IAnnotation.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Annotations_IArgument.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Annotations_IArgument.gif
new file mode 100755
index 0000000..513f25d
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Annotations_IArgument.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Annotations_IAssociationClass.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Annotations_IAssociationClass.gif
new file mode 100755
index 0000000..62f7a1e
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Annotations_IAssociationClass.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Annotations_IAttribute.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Annotations_IAttribute.gif
new file mode 100755
index 0000000..94a6851
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Annotations_IAttribute.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Annotations_IClass.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Annotations_IClass.gif
new file mode 100755
index 0000000..e2efc63
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Annotations_IClass.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Annotations_IClassifier.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Annotations_IClassifier.gif
new file mode 100755
index 0000000..671249c
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Annotations_IClassifier.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Annotations_ICollaborationDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Annotations_ICollaborationDiagram.gif
new file mode 100755
index 0000000..55c6166
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Annotations_ICollaborationDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Annotations_IComment.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Annotations_IComment.gif
new file mode 100755
index 0000000..8524da4
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Annotations_IComment.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Annotations_IComponent.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Annotations_IComponent.gif
new file mode 100755
index 0000000..f6ec10a
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Annotations_IComponent.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Annotations_IComponentDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Annotations_IComponentDiagram.gif
new file mode 100755
index 0000000..513f25d
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Annotations_IComponentDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Annotations_IConstraint.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Annotations_IConstraint.gif
new file mode 100755
index 0000000..f37ce87
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Annotations_IConstraint.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Annotations_IControlledFile.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Annotations_IControlledFile.gif
new file mode 100755
index 0000000..5aacb3f
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Annotations_IControlledFile.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Annotations_IDeploymentDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Annotations_IDeploymentDiagram.gif
new file mode 100755
index 0000000..83d72c4
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Annotations_IDeploymentDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Annotations_IDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Annotations_IDiagram.gif
new file mode 100755
index 0000000..912568a
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Annotations_IDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Annotations_IEvent.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Annotations_IEvent.gif
new file mode 100755
index 0000000..f6ec10a
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Annotations_IEvent.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Annotations_IEventReception.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Annotations_IEventReception.gif
new file mode 100755
index 0000000..43d93ae
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Annotations_IEventReception.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Annotations_IFile.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Annotations_IFile.gif
new file mode 100755
index 0000000..b52b0e4
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Annotations_IFile.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Annotations_IFlowItem.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Annotations_IFlowItem.gif
new file mode 100755
index 0000000..e8626bf
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Annotations_IFlowItem.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Annotations_IInstance.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Annotations_IInstance.gif
new file mode 100755
index 0000000..67b924c
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Annotations_IInstance.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Annotations_IInterfaceItem.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Annotations_IInterfaceItem.gif
new file mode 100755
index 0000000..912568a
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Annotations_IInterfaceItem.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Annotations_ILink.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Annotations_ILink.gif
new file mode 100755
index 0000000..e0e45bd
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Annotations_ILink.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Annotations_IMatrixLayout.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Annotations_IMatrixLayout.gif
new file mode 100755
index 0000000..b1cadb3
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Annotations_IMatrixLayout.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Annotations_IMatrixView.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Annotations_IMatrixView.gif
new file mode 100755
index 0000000..f6ec10a
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Annotations_IMatrixView.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Annotations_IModule.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Annotations_IModule.gif
new file mode 100755
index 0000000..02153a7
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Annotations_IModule.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Annotations_INode.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Annotations_INode.gif
new file mode 100755
index 0000000..1e65bec
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Annotations_INode.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Annotations_IObjectModelDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Annotations_IObjectModelDiagram.gif
new file mode 100755
index 0000000..30dc35a
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Annotations_IObjectModelDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Annotations_IOperation.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Annotations_IOperation.gif
new file mode 100755
index 0000000..83d72c4
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Annotations_IOperation.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Annotations_IPackage.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Annotations_IPackage.gif
new file mode 100755
index 0000000..cc34a0f
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Annotations_IPackage.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Annotations_IPanelDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Annotations_IPanelDiagram.gif
new file mode 100755
index 0000000..b52b0e4
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Annotations_IPanelDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Annotations_IPort.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Annotations_IPort.gif
new file mode 100755
index 0000000..f6ec10a
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Annotations_IPort.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Annotations_IProfile.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Annotations_IProfile.gif
new file mode 100755
index 0000000..f37ce87
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Annotations_IProfile.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Annotations_IProject.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Annotations_IProject.gif
new file mode 100755
index 0000000..2ef0042
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Annotations_IProject.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Annotations_IRelation.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Annotations_IRelation.gif
new file mode 100755
index 0000000..03c1266
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Annotations_IRelation.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Annotations_IRequirement.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Annotations_IRequirement.gif
new file mode 100755
index 0000000..9c71118
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Annotations_IRequirement.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Annotations_ISequenceDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Annotations_ISequenceDiagram.gif
new file mode 100755
index 0000000..1b80aea
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Annotations_ISequenceDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Annotations_IStateChart.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Annotations_IStateChart.gif
new file mode 100755
index 0000000..8f218cb
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Annotations_IStateChart.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Annotations_IStateChartDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Annotations_IStateChartDiagram.gif
new file mode 100755
index 0000000..1b80aea
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Annotations_IStateChartDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Annotations_IStereotype.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Annotations_IStereotype.gif
new file mode 100755
index 0000000..9c71118
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Annotations_IStereotype.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Annotations_IStructureDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Annotations_IStructureDiagram.gif
new file mode 100755
index 0000000..8a52761
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Annotations_IStructureDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Annotations_ISysMLPort.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Annotations_ISysMLPort.gif
new file mode 100755
index 0000000..02153a7
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Annotations_ISysMLPort.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Annotations_ITableLayout.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Annotations_ITableLayout.gif
new file mode 100755
index 0000000..912568a
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Annotations_ITableLayout.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Annotations_ITableView.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Annotations_ITableView.gif
new file mode 100755
index 0000000..1b80aea
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Annotations_ITableView.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Annotations_ITag.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Annotations_ITag.gif
new file mode 100755
index 0000000..1298a7e
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Annotations_ITag.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Annotations_ITemplateParameter.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Annotations_ITemplateParameter.gif
new file mode 100755
index 0000000..30dc35a
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Annotations_ITemplateParameter.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Annotations_IType.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Annotations_IType.gif
new file mode 100755
index 0000000..436a9c5
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Annotations_IType.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Annotations_IUnit.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Annotations_IUnit.gif
new file mode 100755
index 0000000..b6fd7a0
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Annotations_IUnit.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Annotations_IUseCase.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Annotations_IUseCase.gif
new file mode 100755
index 0000000..513f25d
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Annotations_IUseCase.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Annotations_IUseCaseDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Annotations_IUseCaseDiagram.gif
new file mode 100755
index 0000000..8524da4
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Annotations_IUseCaseDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Annotations_IVariable.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Annotations_IVariable.gif
new file mode 100755
index 0000000..1b80aea
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Annotations_IVariable.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_AssociationElements_IAssociationClass.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_AssociationElements_IAssociationClass.gif
new file mode 100755
index 0000000..62f7a1e
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_AssociationElements_IAssociationClass.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Classes_IAssociationClass.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Classes_IAssociationClass.gif
new file mode 100755
index 0000000..62f7a1e
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Classes_IAssociationClass.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Classes_IClass.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Classes_IClass.gif
new file mode 100755
index 0000000..e2efc63
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Classes_IClass.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Classes_IStateChart.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Classes_IStateChart.gif
new file mode 100755
index 0000000..8f218cb
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Classes_IStateChart.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_ComponentFiles_IFile.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_ComponentFiles_IFile.gif
new file mode 100755
index 0000000..b52b0e4
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_ComponentFiles_IFile.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Declaratives_IAssociationClass.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Declaratives_IAssociationClass.gif
new file mode 100755
index 0000000..62f7a1e
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Declaratives_IAssociationClass.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Declaratives_IClass.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Declaratives_IClass.gif
new file mode 100755
index 0000000..e2efc63
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Declaratives_IClass.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Declaratives_ICollaborationDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Declaratives_ICollaborationDiagram.gif
new file mode 100755
index 0000000..55c6166
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Declaratives_ICollaborationDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Declaratives_IComponent.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Declaratives_IComponent.gif
new file mode 100755
index 0000000..f6ec10a
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Declaratives_IComponent.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Declaratives_IComponentDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Declaratives_IComponentDiagram.gif
new file mode 100755
index 0000000..513f25d
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Declaratives_IComponentDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Declaratives_IDeploymentDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Declaratives_IDeploymentDiagram.gif
new file mode 100755
index 0000000..83d72c4
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Declaratives_IDeploymentDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Declaratives_IDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Declaratives_IDiagram.gif
new file mode 100755
index 0000000..912568a
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Declaratives_IDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Declaratives_IInformationFlow.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Declaratives_IInformationFlow.gif
new file mode 100755
index 0000000..f6ec10a
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Declaratives_IInformationFlow.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Declaratives_IInformationItem.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Declaratives_IInformationItem.gif
new file mode 100755
index 0000000..c825541
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Declaratives_IInformationItem.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Declaratives_IMSC.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Declaratives_IMSC.gif
new file mode 100755
index 0000000..f37ce87
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Declaratives_IMSC.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Declaratives_IObjectModelDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Declaratives_IObjectModelDiagram.gif
new file mode 100755
index 0000000..30dc35a
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Declaratives_IObjectModelDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Declaratives_IPanelDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Declaratives_IPanelDiagram.gif
new file mode 100755
index 0000000..b52b0e4
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Declaratives_IPanelDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Declaratives_ISequenceDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Declaratives_ISequenceDiagram.gif
new file mode 100755
index 0000000..1b80aea
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Declaratives_ISequenceDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Declaratives_IStateChart.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Declaratives_IStateChart.gif
new file mode 100755
index 0000000..8f218cb
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Declaratives_IStateChart.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Declaratives_IStateChartDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Declaratives_IStateChartDiagram.gif
new file mode 100755
index 0000000..1b80aea
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Declaratives_IStateChartDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Declaratives_IStereotype.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Declaratives_IStereotype.gif
new file mode 100755
index 0000000..9c71118
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Declaratives_IStereotype.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Declaratives_IStructureDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Declaratives_IStructureDiagram.gif
new file mode 100755
index 0000000..8a52761
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Declaratives_IStructureDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Declaratives_ISubsystem.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Declaratives_ISubsystem.gif
new file mode 100755
index 0000000..67b924c
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Declaratives_ISubsystem.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Declaratives_IType.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Declaratives_IType.gif
new file mode 100755
index 0000000..436a9c5
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Declaratives_IType.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Declaratives_IUCDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Declaratives_IUCDiagram.gif
new file mode 100755
index 0000000..b60215a
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Declaratives_IUCDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Declaratives_IUseCaseDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Declaratives_IUseCaseDiagram.gif
new file mode 100755
index 0000000..8524da4
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Declaratives_IUseCaseDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Dependencies_IDependency.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Dependencies_IDependency.gif
new file mode 100755
index 0000000..2f084ae
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Dependencies_IDependency.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Dependencies_IHyperLink.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Dependencies_IHyperLink.gif
new file mode 100755
index 0000000..8f218cb
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Dependencies_IHyperLink.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_EmbededFiles_IEmbededFile.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_EmbededFiles_IEmbededFile.gif
new file mode 100755
index 0000000..0e886ec
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_EmbededFiles_IEmbededFile.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Events_IEvent.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Events_IEvent.gif
new file mode 100755
index 0000000..f6ec10a
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Events_IEvent.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Events_IEventReception.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Events_IEventReception.gif
new file mode 100755
index 0000000..43d93ae
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Events_IEventReception.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Events_IInterfaceItem.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Events_IInterfaceItem.gif
new file mode 100755
index 0000000..912568a
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Events_IInterfaceItem.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Events_IOperation.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Events_IOperation.gif
new file mode 100755
index 0000000..83d72c4
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Events_IOperation.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_HyperLinks_IExternalHyperlink.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_HyperLinks_IExternalHyperlink.gif
new file mode 100755
index 0000000..497cf86
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_HyperLinks_IExternalHyperlink.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_HyperLinks_IInternalHyperlink.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_HyperLinks_IInternalHyperlink.gif
new file mode 100755
index 0000000..2ef0042
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_HyperLinks_IInternalHyperlink.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_HyperLinks_IMHyperLink.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_HyperLinks_IMHyperLink.gif
new file mode 100755
index 0000000..0217157
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_HyperLinks_IMHyperLink.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_MatrixInstances_IMatrixInstance.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_MatrixInstances_IMatrixInstance.gif
new file mode 100755
index 0000000..e0e45bd
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_MatrixInstances_IMatrixInstance.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_MatrixLayouts_IMatrixLayout.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_MatrixLayouts_IMatrixLayout.gif
new file mode 100755
index 0000000..b1cadb3
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_MatrixLayouts_IMatrixLayout.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Stereotypes_IActor.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Stereotypes_IActor.gif
new file mode 100755
index 0000000..c825541
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Stereotypes_IActor.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Stereotypes_IAnnotation.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Stereotypes_IAnnotation.gif
new file mode 100755
index 0000000..8a52761
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Stereotypes_IAnnotation.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Stereotypes_IArgument.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Stereotypes_IArgument.gif
new file mode 100755
index 0000000..513f25d
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Stereotypes_IArgument.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Stereotypes_IAssociationClass.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Stereotypes_IAssociationClass.gif
new file mode 100755
index 0000000..62f7a1e
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Stereotypes_IAssociationClass.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Stereotypes_IAttribute.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Stereotypes_IAttribute.gif
new file mode 100755
index 0000000..94a6851
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Stereotypes_IAttribute.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Stereotypes_IClass.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Stereotypes_IClass.gif
new file mode 100755
index 0000000..e2efc63
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Stereotypes_IClass.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Stereotypes_IClassifier.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Stereotypes_IClassifier.gif
new file mode 100755
index 0000000..671249c
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Stereotypes_IClassifier.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Stereotypes_ICollaborationDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Stereotypes_ICollaborationDiagram.gif
new file mode 100755
index 0000000..55c6166
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Stereotypes_ICollaborationDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Stereotypes_IComment.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Stereotypes_IComment.gif
new file mode 100755
index 0000000..8524da4
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Stereotypes_IComment.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Stereotypes_IComponent.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Stereotypes_IComponent.gif
new file mode 100755
index 0000000..f6ec10a
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Stereotypes_IComponent.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Stereotypes_IComponentDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Stereotypes_IComponentDiagram.gif
new file mode 100755
index 0000000..513f25d
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Stereotypes_IComponentDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Stereotypes_IConstraint.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Stereotypes_IConstraint.gif
new file mode 100755
index 0000000..f37ce87
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Stereotypes_IConstraint.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Stereotypes_IControlledFile.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Stereotypes_IControlledFile.gif
new file mode 100755
index 0000000..5aacb3f
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Stereotypes_IControlledFile.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Stereotypes_IDeploymentDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Stereotypes_IDeploymentDiagram.gif
new file mode 100755
index 0000000..83d72c4
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Stereotypes_IDeploymentDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Stereotypes_IDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Stereotypes_IDiagram.gif
new file mode 100755
index 0000000..912568a
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Stereotypes_IDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Stereotypes_IEvent.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Stereotypes_IEvent.gif
new file mode 100755
index 0000000..f6ec10a
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Stereotypes_IEvent.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Stereotypes_IEventReception.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Stereotypes_IEventReception.gif
new file mode 100755
index 0000000..43d93ae
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Stereotypes_IEventReception.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Stereotypes_IFile.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Stereotypes_IFile.gif
new file mode 100755
index 0000000..b52b0e4
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Stereotypes_IFile.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Stereotypes_IFlowItem.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Stereotypes_IFlowItem.gif
new file mode 100755
index 0000000..e8626bf
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Stereotypes_IFlowItem.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Stereotypes_IInstance.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Stereotypes_IInstance.gif
new file mode 100755
index 0000000..67b924c
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Stereotypes_IInstance.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Stereotypes_IInterfaceItem.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Stereotypes_IInterfaceItem.gif
new file mode 100755
index 0000000..912568a
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Stereotypes_IInterfaceItem.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Stereotypes_ILink.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Stereotypes_ILink.gif
new file mode 100755
index 0000000..e0e45bd
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Stereotypes_ILink.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Stereotypes_IMatrixLayout.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Stereotypes_IMatrixLayout.gif
new file mode 100755
index 0000000..b1cadb3
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Stereotypes_IMatrixLayout.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Stereotypes_IMatrixView.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Stereotypes_IMatrixView.gif
new file mode 100755
index 0000000..f6ec10a
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Stereotypes_IMatrixView.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Stereotypes_IModule.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Stereotypes_IModule.gif
new file mode 100755
index 0000000..02153a7
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Stereotypes_IModule.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Stereotypes_INode.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Stereotypes_INode.gif
new file mode 100755
index 0000000..1e65bec
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Stereotypes_INode.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Stereotypes_IObjectModelDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Stereotypes_IObjectModelDiagram.gif
new file mode 100755
index 0000000..30dc35a
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Stereotypes_IObjectModelDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Stereotypes_IOperation.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Stereotypes_IOperation.gif
new file mode 100755
index 0000000..83d72c4
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Stereotypes_IOperation.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Stereotypes_IPackage.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Stereotypes_IPackage.gif
new file mode 100755
index 0000000..cc34a0f
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Stereotypes_IPackage.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Stereotypes_IPanelDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Stereotypes_IPanelDiagram.gif
new file mode 100755
index 0000000..b52b0e4
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Stereotypes_IPanelDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Stereotypes_IPort.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Stereotypes_IPort.gif
new file mode 100755
index 0000000..f6ec10a
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Stereotypes_IPort.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Stereotypes_IProfile.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Stereotypes_IProfile.gif
new file mode 100755
index 0000000..f37ce87
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Stereotypes_IProfile.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Stereotypes_IProject.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Stereotypes_IProject.gif
new file mode 100755
index 0000000..2ef0042
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Stereotypes_IProject.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Stereotypes_IRelation.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Stereotypes_IRelation.gif
new file mode 100755
index 0000000..03c1266
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Stereotypes_IRelation.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Stereotypes_IRequirement.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Stereotypes_IRequirement.gif
new file mode 100755
index 0000000..9c71118
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Stereotypes_IRequirement.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Stereotypes_ISequenceDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Stereotypes_ISequenceDiagram.gif
new file mode 100755
index 0000000..1b80aea
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Stereotypes_ISequenceDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Stereotypes_IStateChart.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Stereotypes_IStateChart.gif
new file mode 100755
index 0000000..8f218cb
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Stereotypes_IStateChart.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Stereotypes_IStateChartDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Stereotypes_IStateChartDiagram.gif
new file mode 100755
index 0000000..1b80aea
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Stereotypes_IStateChartDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Stereotypes_IStereotype.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Stereotypes_IStereotype.gif
new file mode 100755
index 0000000..9c71118
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Stereotypes_IStereotype.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Stereotypes_IStructureDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Stereotypes_IStructureDiagram.gif
new file mode 100755
index 0000000..8a52761
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Stereotypes_IStructureDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Stereotypes_ISysMLPort.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Stereotypes_ISysMLPort.gif
new file mode 100755
index 0000000..02153a7
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Stereotypes_ISysMLPort.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Stereotypes_ITableLayout.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Stereotypes_ITableLayout.gif
new file mode 100755
index 0000000..912568a
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Stereotypes_ITableLayout.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Stereotypes_ITableView.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Stereotypes_ITableView.gif
new file mode 100755
index 0000000..1b80aea
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Stereotypes_ITableView.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Stereotypes_ITag.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Stereotypes_ITag.gif
new file mode 100755
index 0000000..1298a7e
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Stereotypes_ITag.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Stereotypes_ITemplateParameter.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Stereotypes_ITemplateParameter.gif
new file mode 100755
index 0000000..30dc35a
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Stereotypes_ITemplateParameter.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Stereotypes_IType.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Stereotypes_IType.gif
new file mode 100755
index 0000000..436a9c5
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Stereotypes_IType.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Stereotypes_IUnit.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Stereotypes_IUnit.gif
new file mode 100755
index 0000000..b6fd7a0
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Stereotypes_IUnit.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Stereotypes_IUseCase.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Stereotypes_IUseCase.gif
new file mode 100755
index 0000000..513f25d
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Stereotypes_IUseCase.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Stereotypes_IUseCaseDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Stereotypes_IUseCaseDiagram.gif
new file mode 100755
index 0000000..8524da4
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Stereotypes_IUseCaseDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Stereotypes_IVariable.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Stereotypes_IVariable.gif
new file mode 100755
index 0000000..1b80aea
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Stereotypes_IVariable.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_TableInstances_ITableInstance.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_TableInstances_ITableInstance.gif
new file mode 100755
index 0000000..0e886ec
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_TableInstances_ITableInstance.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_TableLayouts_IAcceptEventAction.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_TableLayouts_IAcceptEventAction.gif
new file mode 100755
index 0000000..f37ce87
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_TableLayouts_IAcceptEventAction.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_TableLayouts_IAcceptTimeEvent.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_TableLayouts_IAcceptTimeEvent.gif
new file mode 100755
index 0000000..f6ec10a
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_TableLayouts_IAcceptTimeEvent.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_TableLayouts_IAction.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_TableLayouts_IAction.gif
new file mode 100755
index 0000000..80bbc8a
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_TableLayouts_IAction.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_TableLayouts_IActivityGraph.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_TableLayouts_IActivityGraph.gif
new file mode 100755
index 0000000..b52b0e4
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_TableLayouts_IActivityGraph.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_TableLayouts_IActor.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_TableLayouts_IActor.gif
new file mode 100755
index 0000000..c825541
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_TableLayouts_IActor.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_TableLayouts_IAnnotation.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_TableLayouts_IAnnotation.gif
new file mode 100755
index 0000000..8a52761
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_TableLayouts_IAnnotation.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_TableLayouts_IArgument.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_TableLayouts_IArgument.gif
new file mode 100755
index 0000000..513f25d
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_TableLayouts_IArgument.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_TableLayouts_IAssociationClass.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_TableLayouts_IAssociationClass.gif
new file mode 100755
index 0000000..62f7a1e
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_TableLayouts_IAssociationClass.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_TableLayouts_IAssociationEnd.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_TableLayouts_IAssociationEnd.gif
new file mode 100755
index 0000000..0217157
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_TableLayouts_IAssociationEnd.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_TableLayouts_IAssociationRole.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_TableLayouts_IAssociationRole.gif
new file mode 100755
index 0000000..9c6b7fc
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_TableLayouts_IAssociationRole.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_TableLayouts_IAttribute.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_TableLayouts_IAttribute.gif
new file mode 100755
index 0000000..94a6851
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_TableLayouts_IAttribute.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_TableLayouts_ICallOperation.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_TableLayouts_ICallOperation.gif
new file mode 100755
index 0000000..3ed52d7
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_TableLayouts_ICallOperation.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_TableLayouts_IClass.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_TableLayouts_IClass.gif
new file mode 100755
index 0000000..e2efc63
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_TableLayouts_IClass.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_TableLayouts_IClassifier.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_TableLayouts_IClassifier.gif
new file mode 100755
index 0000000..671249c
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_TableLayouts_IClassifier.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_TableLayouts_IClassifierRole.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_TableLayouts_IClassifierRole.gif
new file mode 100755
index 0000000..b729998
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_TableLayouts_IClassifierRole.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_TableLayouts_ICollaboration.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_TableLayouts_ICollaboration.gif
new file mode 100755
index 0000000..bc2f6d5
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_TableLayouts_ICollaboration.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_TableLayouts_ICollaborationDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_TableLayouts_ICollaborationDiagram.gif
new file mode 100755
index 0000000..55c6166
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_TableLayouts_ICollaborationDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_TableLayouts_IComment.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_TableLayouts_IComment.gif
new file mode 100755
index 0000000..8524da4
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_TableLayouts_IComment.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_TableLayouts_IComponent.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_TableLayouts_IComponent.gif
new file mode 100755
index 0000000..f6ec10a
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_TableLayouts_IComponent.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_TableLayouts_IComponentDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_TableLayouts_IComponentDiagram.gif
new file mode 100755
index 0000000..513f25d
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_TableLayouts_IComponentDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_TableLayouts_IComponentInstance.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_TableLayouts_IComponentInstance.gif
new file mode 100755
index 0000000..0217157
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_TableLayouts_IComponentInstance.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_TableLayouts_IConfiguration.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_TableLayouts_IConfiguration.gif
new file mode 100755
index 0000000..e2efc63
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_TableLayouts_IConfiguration.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_TableLayouts_IConnector.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_TableLayouts_IConnector.gif
new file mode 100755
index 0000000..62f7a1e
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_TableLayouts_IConnector.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_TableLayouts_IConstraint.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_TableLayouts_IConstraint.gif
new file mode 100755
index 0000000..f37ce87
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_TableLayouts_IConstraint.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_TableLayouts_IContextSpecification.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_TableLayouts_IContextSpecification.gif
new file mode 100755
index 0000000..0ca48f1
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_TableLayouts_IContextSpecification.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_TableLayouts_IControlledFile.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_TableLayouts_IControlledFile.gif
new file mode 100755
index 0000000..5aacb3f
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_TableLayouts_IControlledFile.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_TableLayouts_IDependency.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_TableLayouts_IDependency.gif
new file mode 100755
index 0000000..2f084ae
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_TableLayouts_IDependency.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_TableLayouts_IDeploymentDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_TableLayouts_IDeploymentDiagram.gif
new file mode 100755
index 0000000..83d72c4
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_TableLayouts_IDeploymentDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_TableLayouts_IDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_TableLayouts_IDiagram.gif
new file mode 100755
index 0000000..912568a
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_TableLayouts_IDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_TableLayouts_IEnumerationLiteral.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_TableLayouts_IEnumerationLiteral.gif
new file mode 100755
index 0000000..67dbac2
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_TableLayouts_IEnumerationLiteral.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_TableLayouts_IEvent.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_TableLayouts_IEvent.gif
new file mode 100755
index 0000000..f6ec10a
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_TableLayouts_IEvent.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_TableLayouts_IEventReception.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_TableLayouts_IEventReception.gif
new file mode 100755
index 0000000..43d93ae
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_TableLayouts_IEventReception.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_TableLayouts_IExecutionOccurrence.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_TableLayouts_IExecutionOccurrence.gif
new file mode 100755
index 0000000..b89aadc
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_TableLayouts_IExecutionOccurrence.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_TableLayouts_IExternalHyperlink.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_TableLayouts_IExternalHyperlink.gif
new file mode 100755
index 0000000..497cf86
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_TableLayouts_IExternalHyperlink.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_TableLayouts_IFile.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_TableLayouts_IFile.gif
new file mode 100755
index 0000000..b52b0e4
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_TableLayouts_IFile.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_TableLayouts_IFileFragment.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_TableLayouts_IFileFragment.gif
new file mode 100755
index 0000000..43d93ae
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_TableLayouts_IFileFragment.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_TableLayouts_IFlow.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_TableLayouts_IFlow.gif
new file mode 100755
index 0000000..9cb21a6
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_TableLayouts_IFlow.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_TableLayouts_IFlowItem.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_TableLayouts_IFlowItem.gif
new file mode 100755
index 0000000..e8626bf
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_TableLayouts_IFlowItem.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_TableLayouts_IGeneralization.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_TableLayouts_IGeneralization.gif
new file mode 100755
index 0000000..b6fd7a0
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_TableLayouts_IGeneralization.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_TableLayouts_IGuard.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_TableLayouts_IGuard.gif
new file mode 100755
index 0000000..9c6b7fc
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_TableLayouts_IGuard.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_TableLayouts_IHyperLink.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_TableLayouts_IHyperLink.gif
new file mode 100755
index 0000000..8f218cb
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_TableLayouts_IHyperLink.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_TableLayouts_IInformationFlow.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_TableLayouts_IInformationFlow.gif
new file mode 100755
index 0000000..f6ec10a
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_TableLayouts_IInformationFlow.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_TableLayouts_IInstance.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_TableLayouts_IInstance.gif
new file mode 100755
index 0000000..67b924c
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_TableLayouts_IInstance.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_TableLayouts_IInstanceSlot.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_TableLayouts_IInstanceSlot.gif
new file mode 100755
index 0000000..1b80aea
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_TableLayouts_IInstanceSlot.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_TableLayouts_IInstanceSpecification.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_TableLayouts_IInstanceSpecification.gif
new file mode 100755
index 0000000..513f25d
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_TableLayouts_IInstanceSpecification.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_TableLayouts_IInstanceValue.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_TableLayouts_IInstanceValue.gif
new file mode 100755
index 0000000..8a52761
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_TableLayouts_IInstanceValue.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_TableLayouts_IInteractionOccurrence.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_TableLayouts_IInteractionOccurrence.gif
new file mode 100755
index 0000000..f6ec10a
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_TableLayouts_IInteractionOccurrence.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_TableLayouts_IInteractionOperand.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_TableLayouts_IInteractionOperand.gif
new file mode 100755
index 0000000..b60215a
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_TableLayouts_IInteractionOperand.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_TableLayouts_IInteractionOperator.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_TableLayouts_IInteractionOperator.gif
new file mode 100755
index 0000000..436a9c5
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_TableLayouts_IInteractionOperator.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_TableLayouts_IInterfaceItem.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_TableLayouts_IInterfaceItem.gif
new file mode 100755
index 0000000..912568a
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_TableLayouts_IInterfaceItem.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_TableLayouts_IInternalHyperlink.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_TableLayouts_IInternalHyperlink.gif
new file mode 100755
index 0000000..2ef0042
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_TableLayouts_IInternalHyperlink.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_TableLayouts_ILink.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_TableLayouts_ILink.gif
new file mode 100755
index 0000000..e0e45bd
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_TableLayouts_ILink.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_TableLayouts_ILiteralSpecification.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_TableLayouts_ILiteralSpecification.gif
new file mode 100755
index 0000000..67dbac2
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_TableLayouts_ILiteralSpecification.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_TableLayouts_IMHyperLink.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_TableLayouts_IMHyperLink.gif
new file mode 100755
index 0000000..0217157
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_TableLayouts_IMHyperLink.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_TableLayouts_IMatrixLayout.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_TableLayouts_IMatrixLayout.gif
new file mode 100755
index 0000000..b1cadb3
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_TableLayouts_IMatrixLayout.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_TableLayouts_IMatrixView.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_TableLayouts_IMatrixView.gif
new file mode 100755
index 0000000..f6ec10a
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_TableLayouts_IMatrixView.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_TableLayouts_IMessage.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_TableLayouts_IMessage.gif
new file mode 100755
index 0000000..d69b5c7
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_TableLayouts_IMessage.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_TableLayouts_IMessagePoint.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_TableLayouts_IMessagePoint.gif
new file mode 100755
index 0000000..30dc35a
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_TableLayouts_IMessagePoint.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_TableLayouts_IModelElement.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_TableLayouts_IModelElement.gif
new file mode 100755
index 0000000..9c6b7fc
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_TableLayouts_IModelElement.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_TableLayouts_IModule.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_TableLayouts_IModule.gif
new file mode 100755
index 0000000..02153a7
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_TableLayouts_IModule.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_TableLayouts_INode.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_TableLayouts_INode.gif
new file mode 100755
index 0000000..1e65bec
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_TableLayouts_INode.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_TableLayouts_IObjectLink.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_TableLayouts_IObjectLink.gif
new file mode 100755
index 0000000..5aacb3f
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_TableLayouts_IObjectLink.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_TableLayouts_IObjectModelDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_TableLayouts_IObjectModelDiagram.gif
new file mode 100755
index 0000000..30dc35a
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_TableLayouts_IObjectModelDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_TableLayouts_IObjectNode.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_TableLayouts_IObjectNode.gif
new file mode 100755
index 0000000..430fd75
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_TableLayouts_IObjectNode.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_TableLayouts_IOperation.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_TableLayouts_IOperation.gif
new file mode 100755
index 0000000..83d72c4
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_TableLayouts_IOperation.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_TableLayouts_IPackage.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_TableLayouts_IPackage.gif
new file mode 100755
index 0000000..cc34a0f
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_TableLayouts_IPackage.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_TableLayouts_IPanelDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_TableLayouts_IPanelDiagram.gif
new file mode 100755
index 0000000..b52b0e4
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_TableLayouts_IPanelDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_TableLayouts_IPart.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_TableLayouts_IPart.gif
new file mode 100755
index 0000000..8e2a326
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_TableLayouts_IPart.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_TableLayouts_IPin.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_TableLayouts_IPin.gif
new file mode 100755
index 0000000..67b924c
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_TableLayouts_IPin.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_TableLayouts_IPort.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_TableLayouts_IPort.gif
new file mode 100755
index 0000000..f6ec10a
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_TableLayouts_IPort.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_TableLayouts_IPrimitiveOperation.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_TableLayouts_IPrimitiveOperation.gif
new file mode 100755
index 0000000..62f7a1e
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_TableLayouts_IPrimitiveOperation.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_TableLayouts_IProfile.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_TableLayouts_IProfile.gif
new file mode 100755
index 0000000..f37ce87
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_TableLayouts_IProfile.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_TableLayouts_IProject.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_TableLayouts_IProject.gif
new file mode 100755
index 0000000..2ef0042
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_TableLayouts_IProject.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_TableLayouts_IRelation.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_TableLayouts_IRelation.gif
new file mode 100755
index 0000000..03c1266
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_TableLayouts_IRelation.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_TableLayouts_IRequirement.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_TableLayouts_IRequirement.gif
new file mode 100755
index 0000000..9c71118
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_TableLayouts_IRequirement.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_TableLayouts_ISendAction.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_TableLayouts_ISendAction.gif
new file mode 100755
index 0000000..f37ce87
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_TableLayouts_ISendAction.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_TableLayouts_ISequenceDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_TableLayouts_ISequenceDiagram.gif
new file mode 100755
index 0000000..1b80aea
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_TableLayouts_ISequenceDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_TableLayouts_IState.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_TableLayouts_IState.gif
new file mode 100755
index 0000000..80bbc8a
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_TableLayouts_IState.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_TableLayouts_IStateChart.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_TableLayouts_IStateChart.gif
new file mode 100755
index 0000000..8f218cb
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_TableLayouts_IStateChart.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_TableLayouts_IStateChartDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_TableLayouts_IStateChartDiagram.gif
new file mode 100755
index 0000000..1b80aea
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_TableLayouts_IStateChartDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_TableLayouts_IStateVertex.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_TableLayouts_IStateVertex.gif
new file mode 100755
index 0000000..5aacb3f
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_TableLayouts_IStateVertex.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_TableLayouts_IStereotype.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_TableLayouts_IStereotype.gif
new file mode 100755
index 0000000..9c71118
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_TableLayouts_IStereotype.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_TableLayouts_IStructureDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_TableLayouts_IStructureDiagram.gif
new file mode 100755
index 0000000..8a52761
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_TableLayouts_IStructureDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_TableLayouts_ISubsystem.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_TableLayouts_ISubsystem.gif
new file mode 100755
index 0000000..67b924c
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_TableLayouts_ISubsystem.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_TableLayouts_ISwimlane.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_TableLayouts_ISwimlane.gif
new file mode 100755
index 0000000..43d93ae
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_TableLayouts_ISwimlane.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_TableLayouts_ISysMLPort.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_TableLayouts_ISysMLPort.gif
new file mode 100755
index 0000000..02153a7
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_TableLayouts_ISysMLPort.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_TableLayouts_ITableLayout.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_TableLayouts_ITableLayout.gif
new file mode 100755
index 0000000..912568a
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_TableLayouts_ITableLayout.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_TableLayouts_ITableView.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_TableLayouts_ITableView.gif
new file mode 100755
index 0000000..1b80aea
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_TableLayouts_ITableView.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_TableLayouts_ITag.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_TableLayouts_ITag.gif
new file mode 100755
index 0000000..1298a7e
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_TableLayouts_ITag.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_TableLayouts_ITemplateInstantiation.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_TableLayouts_ITemplateInstantiation.gif
new file mode 100755
index 0000000..b52b0e4
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_TableLayouts_ITemplateInstantiation.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_TableLayouts_ITemplateInstantiationParameter.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_TableLayouts_ITemplateInstantiationParameter.gif
new file mode 100755
index 0000000..0ca48f1
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_TableLayouts_ITemplateInstantiationParameter.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_TableLayouts_ITemplateParameter.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_TableLayouts_ITemplateParameter.gif
new file mode 100755
index 0000000..30dc35a
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_TableLayouts_ITemplateParameter.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_TableLayouts_ITransition.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_TableLayouts_ITransition.gif
new file mode 100755
index 0000000..2ef0042
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_TableLayouts_ITransition.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_TableLayouts_ITrigger.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_TableLayouts_ITrigger.gif
new file mode 100755
index 0000000..b52b0e4
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_TableLayouts_ITrigger.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_TableLayouts_ITriggered.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_TableLayouts_ITriggered.gif
new file mode 100755
index 0000000..43d93ae
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_TableLayouts_ITriggered.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_TableLayouts_IType.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_TableLayouts_IType.gif
new file mode 100755
index 0000000..436a9c5
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_TableLayouts_IType.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_TableLayouts_IUnit.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_TableLayouts_IUnit.gif
new file mode 100755
index 0000000..b6fd7a0
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_TableLayouts_IUnit.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_TableLayouts_IUseCase.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_TableLayouts_IUseCase.gif
new file mode 100755
index 0000000..513f25d
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_TableLayouts_IUseCase.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_TableLayouts_IUseCaseDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_TableLayouts_IUseCaseDiagram.gif
new file mode 100755
index 0000000..8524da4
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_TableLayouts_IUseCaseDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_TableLayouts_IValueSpecification.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_TableLayouts_IValueSpecification.gif
new file mode 100755
index 0000000..d69b5c7
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_TableLayouts_IValueSpecification.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_TableLayouts_IVariable.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_TableLayouts_IVariable.gif
new file mode 100755
index 0000000..1b80aea
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_TableLayouts_IVariable.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Tags_ITag.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Tags_ITag.gif
new file mode 100755
index 0000000..1298a7e
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Tags_ITag.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Types_IActor.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Types_IActor.gif
new file mode 100755
index 0000000..c825541
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Types_IActor.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Types_IAnnotation.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Types_IAnnotation.gif
new file mode 100755
index 0000000..8a52761
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Types_IAnnotation.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Types_IArgument.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Types_IArgument.gif
new file mode 100755
index 0000000..513f25d
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Types_IArgument.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Types_IAssociationClass.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Types_IAssociationClass.gif
new file mode 100755
index 0000000..62f7a1e
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Types_IAssociationClass.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Types_IAttribute.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Types_IAttribute.gif
new file mode 100755
index 0000000..94a6851
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Types_IAttribute.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Types_IClass.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Types_IClass.gif
new file mode 100755
index 0000000..e2efc63
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Types_IClass.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Types_IClassifier.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Types_IClassifier.gif
new file mode 100755
index 0000000..671249c
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Types_IClassifier.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Types_ICollaborationDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Types_ICollaborationDiagram.gif
new file mode 100755
index 0000000..55c6166
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Types_ICollaborationDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Types_IComment.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Types_IComment.gif
new file mode 100755
index 0000000..8524da4
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Types_IComment.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Types_IComponent.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Types_IComponent.gif
new file mode 100755
index 0000000..f6ec10a
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Types_IComponent.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Types_IComponentDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Types_IComponentDiagram.gif
new file mode 100755
index 0000000..513f25d
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Types_IComponentDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Types_IConstraint.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Types_IConstraint.gif
new file mode 100755
index 0000000..f37ce87
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Types_IConstraint.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Types_IControlledFile.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Types_IControlledFile.gif
new file mode 100755
index 0000000..5aacb3f
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Types_IControlledFile.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Types_IDeploymentDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Types_IDeploymentDiagram.gif
new file mode 100755
index 0000000..83d72c4
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Types_IDeploymentDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Types_IDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Types_IDiagram.gif
new file mode 100755
index 0000000..912568a
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Types_IDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Types_IEvent.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Types_IEvent.gif
new file mode 100755
index 0000000..f6ec10a
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Types_IEvent.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Types_IEventReception.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Types_IEventReception.gif
new file mode 100755
index 0000000..43d93ae
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Types_IEventReception.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Types_IFile.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Types_IFile.gif
new file mode 100755
index 0000000..b52b0e4
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Types_IFile.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Types_IFlowItem.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Types_IFlowItem.gif
new file mode 100755
index 0000000..e8626bf
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Types_IFlowItem.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Types_IInstance.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Types_IInstance.gif
new file mode 100755
index 0000000..67b924c
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Types_IInstance.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Types_IInterfaceItem.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Types_IInterfaceItem.gif
new file mode 100755
index 0000000..912568a
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Types_IInterfaceItem.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Types_ILink.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Types_ILink.gif
new file mode 100755
index 0000000..e0e45bd
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Types_ILink.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Types_IMatrixLayout.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Types_IMatrixLayout.gif
new file mode 100755
index 0000000..b1cadb3
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Types_IMatrixLayout.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Types_IMatrixView.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Types_IMatrixView.gif
new file mode 100755
index 0000000..f6ec10a
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Types_IMatrixView.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Types_IModule.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Types_IModule.gif
new file mode 100755
index 0000000..02153a7
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Types_IModule.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Types_INode.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Types_INode.gif
new file mode 100755
index 0000000..1e65bec
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Types_INode.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Types_IObjectModelDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Types_IObjectModelDiagram.gif
new file mode 100755
index 0000000..30dc35a
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Types_IObjectModelDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Types_IOperation.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Types_IOperation.gif
new file mode 100755
index 0000000..83d72c4
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Types_IOperation.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Types_IPackage.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Types_IPackage.gif
new file mode 100755
index 0000000..cc34a0f
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Types_IPackage.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Types_IPanelDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Types_IPanelDiagram.gif
new file mode 100755
index 0000000..b52b0e4
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Types_IPanelDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Types_IPort.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Types_IPort.gif
new file mode 100755
index 0000000..f6ec10a
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Types_IPort.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Types_IProfile.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Types_IProfile.gif
new file mode 100755
index 0000000..f37ce87
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Types_IProfile.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Types_IProject.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Types_IProject.gif
new file mode 100755
index 0000000..2ef0042
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Types_IProject.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Types_IRelation.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Types_IRelation.gif
new file mode 100755
index 0000000..03c1266
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Types_IRelation.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Types_IRequirement.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Types_IRequirement.gif
new file mode 100755
index 0000000..9c71118
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Types_IRequirement.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Types_ISequenceDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Types_ISequenceDiagram.gif
new file mode 100755
index 0000000..1b80aea
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Types_ISequenceDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Types_IStateChart.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Types_IStateChart.gif
new file mode 100755
index 0000000..8f218cb
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Types_IStateChart.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Types_IStateChartDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Types_IStateChartDiagram.gif
new file mode 100755
index 0000000..1b80aea
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Types_IStateChartDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Types_IStereotype.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Types_IStereotype.gif
new file mode 100755
index 0000000..9c71118
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Types_IStereotype.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Types_IStructureDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Types_IStructureDiagram.gif
new file mode 100755
index 0000000..8a52761
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Types_IStructureDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Types_ISysMLPort.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Types_ISysMLPort.gif
new file mode 100755
index 0000000..02153a7
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Types_ISysMLPort.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Types_ITableLayout.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Types_ITableLayout.gif
new file mode 100755
index 0000000..912568a
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Types_ITableLayout.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Types_ITableView.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Types_ITableView.gif
new file mode 100755
index 0000000..1b80aea
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Types_ITableView.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Types_ITag.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Types_ITag.gif
new file mode 100755
index 0000000..1298a7e
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Types_ITag.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Types_ITemplateParameter.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Types_ITemplateParameter.gif
new file mode 100755
index 0000000..30dc35a
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Types_ITemplateParameter.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Types_IType.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Types_IType.gif
new file mode 100755
index 0000000..436a9c5
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Types_IType.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Types_IUnit.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Types_IUnit.gif
new file mode 100755
index 0000000..b6fd7a0
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Types_IUnit.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Types_IUseCase.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Types_IUseCase.gif
new file mode 100755
index 0000000..513f25d
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Types_IUseCase.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Types_IUseCaseDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Types_IUseCaseDiagram.gif
new file mode 100755
index 0000000..8524da4
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Types_IUseCaseDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Types_IVariable.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Types_IVariable.gif
new file mode 100755
index 0000000..1b80aea
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_Types_IVariable.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_UseCases_IActor.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_UseCases_IActor.gif
new file mode 100755
index 0000000..c825541
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_UseCases_IActor.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_UseCases_IAssociationClass.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_UseCases_IAssociationClass.gif
new file mode 100755
index 0000000..62f7a1e
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_UseCases_IAssociationClass.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_UseCases_IClass.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_UseCases_IClass.gif
new file mode 100755
index 0000000..e2efc63
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_UseCases_IClass.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_UseCases_IClassifier.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_UseCases_IClassifier.gif
new file mode 100755
index 0000000..671249c
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_UseCases_IClassifier.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_UseCases_IEvent.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_UseCases_IEvent.gif
new file mode 100755
index 0000000..f6ec10a
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_UseCases_IEvent.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_UseCases_IEventReception.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_UseCases_IEventReception.gif
new file mode 100755
index 0000000..43d93ae
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_UseCases_IEventReception.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_UseCases_IFlowItem.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_UseCases_IFlowItem.gif
new file mode 100755
index 0000000..e8626bf
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_UseCases_IFlowItem.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_UseCases_IInterfaceItem.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_UseCases_IInterfaceItem.gif
new file mode 100755
index 0000000..912568a
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_UseCases_IInterfaceItem.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_UseCases_INode.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_UseCases_INode.gif
new file mode 100755
index 0000000..1e65bec
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_UseCases_INode.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_UseCases_IOperation.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_UseCases_IOperation.gif
new file mode 100755
index 0000000..83d72c4
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_UseCases_IOperation.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_UseCases_IStateChart.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_UseCases_IStateChart.gif
new file mode 100755
index 0000000..8f218cb
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_UseCases_IStateChart.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_UseCases_IStereotype.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_UseCases_IStereotype.gif
new file mode 100755
index 0000000..9c71118
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_UseCases_IStereotype.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_UseCases_IType.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_UseCases_IType.gif
new file mode 100755
index 0000000..436a9c5
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_UseCases_IType.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_UseCases_IUseCase.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_UseCases_IUseCase.gif
new file mode 100755
index 0000000..513f25d
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_UseCases_IUseCase.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_description_IDescription.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_description_IDescription.gif
new file mode 100755
index 0000000..8524da4
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_description_IDescription.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_properties_IPropertyContainer.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_properties_IPropertyContainer.gif
new file mode 100755
index 0000000..9cb21a6
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISubsystem_properties_IPropertyContainer.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISwimlane_Stereotypes_IStereotype.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISwimlane_Stereotypes_IStereotype.gif
new file mode 100755
index 0000000..9cd6c78
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISwimlane_Stereotypes_IStereotype.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISwimlane_Swimlanes_ISwimlane.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISwimlane_Swimlanes_ISwimlane.gif
new file mode 100755
index 0000000..4e7f8d9
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISwimlane_Swimlanes_ISwimlane.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISwimlane_description_IDescription.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISwimlane_description_IDescription.gif
new file mode 100755
index 0000000..28e491c
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISwimlane_description_IDescription.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISysMLPort_Dependencies_IDependency.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISysMLPort_Dependencies_IDependency.gif
new file mode 100755
index 0000000..942aab3
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISysMLPort_Dependencies_IDependency.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISysMLPort_Dependencies_IHyperLink.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISysMLPort_Dependencies_IHyperLink.gif
new file mode 100755
index 0000000..e7da41e
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISysMLPort_Dependencies_IHyperLink.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISysMLPort_Stereotypes_IActor.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISysMLPort_Stereotypes_IActor.gif
new file mode 100755
index 0000000..1e4e4b3
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISysMLPort_Stereotypes_IActor.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISysMLPort_Stereotypes_IAnnotation.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISysMLPort_Stereotypes_IAnnotation.gif
new file mode 100755
index 0000000..d415ad7
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISysMLPort_Stereotypes_IAnnotation.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISysMLPort_Stereotypes_IArgument.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISysMLPort_Stereotypes_IArgument.gif
new file mode 100755
index 0000000..e3e95e6
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISysMLPort_Stereotypes_IArgument.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISysMLPort_Stereotypes_IAssociationClass.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISysMLPort_Stereotypes_IAssociationClass.gif
new file mode 100755
index 0000000..0d8e38f
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISysMLPort_Stereotypes_IAssociationClass.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISysMLPort_Stereotypes_IAttribute.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISysMLPort_Stereotypes_IAttribute.gif
new file mode 100755
index 0000000..6875c5d
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISysMLPort_Stereotypes_IAttribute.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISysMLPort_Stereotypes_IClass.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISysMLPort_Stereotypes_IClass.gif
new file mode 100755
index 0000000..86be5ba
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISysMLPort_Stereotypes_IClass.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISysMLPort_Stereotypes_IClassifier.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISysMLPort_Stereotypes_IClassifier.gif
new file mode 100755
index 0000000..af6664b
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISysMLPort_Stereotypes_IClassifier.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISysMLPort_Stereotypes_ICollaborationDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISysMLPort_Stereotypes_ICollaborationDiagram.gif
new file mode 100755
index 0000000..51319fc
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISysMLPort_Stereotypes_ICollaborationDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISysMLPort_Stereotypes_IComment.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISysMLPort_Stereotypes_IComment.gif
new file mode 100755
index 0000000..affc324
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISysMLPort_Stereotypes_IComment.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISysMLPort_Stereotypes_IComponent.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISysMLPort_Stereotypes_IComponent.gif
new file mode 100755
index 0000000..25e38e9
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISysMLPort_Stereotypes_IComponent.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISysMLPort_Stereotypes_IComponentDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISysMLPort_Stereotypes_IComponentDiagram.gif
new file mode 100755
index 0000000..e3e95e6
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISysMLPort_Stereotypes_IComponentDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISysMLPort_Stereotypes_IConstraint.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISysMLPort_Stereotypes_IConstraint.gif
new file mode 100755
index 0000000..12ec17b
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISysMLPort_Stereotypes_IConstraint.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISysMLPort_Stereotypes_IControlledFile.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISysMLPort_Stereotypes_IControlledFile.gif
new file mode 100755
index 0000000..b6a1ace
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISysMLPort_Stereotypes_IControlledFile.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISysMLPort_Stereotypes_IDeploymentDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISysMLPort_Stereotypes_IDeploymentDiagram.gif
new file mode 100755
index 0000000..be40747
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISysMLPort_Stereotypes_IDeploymentDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISysMLPort_Stereotypes_IDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISysMLPort_Stereotypes_IDiagram.gif
new file mode 100755
index 0000000..58bd8cf
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISysMLPort_Stereotypes_IDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISysMLPort_Stereotypes_IEvent.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISysMLPort_Stereotypes_IEvent.gif
new file mode 100755
index 0000000..25e38e9
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISysMLPort_Stereotypes_IEvent.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISysMLPort_Stereotypes_IEventReception.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISysMLPort_Stereotypes_IEventReception.gif
new file mode 100755
index 0000000..8128b07
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISysMLPort_Stereotypes_IEventReception.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISysMLPort_Stereotypes_IFile.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISysMLPort_Stereotypes_IFile.gif
new file mode 100755
index 0000000..1d1578b
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISysMLPort_Stereotypes_IFile.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISysMLPort_Stereotypes_IFlowItem.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISysMLPort_Stereotypes_IFlowItem.gif
new file mode 100755
index 0000000..af57160
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISysMLPort_Stereotypes_IFlowItem.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISysMLPort_Stereotypes_IInstance.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISysMLPort_Stereotypes_IInstance.gif
new file mode 100755
index 0000000..ed16f99
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISysMLPort_Stereotypes_IInstance.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISysMLPort_Stereotypes_IInterfaceItem.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISysMLPort_Stereotypes_IInterfaceItem.gif
new file mode 100755
index 0000000..58bd8cf
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISysMLPort_Stereotypes_IInterfaceItem.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISysMLPort_Stereotypes_ILink.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISysMLPort_Stereotypes_ILink.gif
new file mode 100755
index 0000000..04aab92
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISysMLPort_Stereotypes_ILink.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISysMLPort_Stereotypes_IMatrixLayout.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISysMLPort_Stereotypes_IMatrixLayout.gif
new file mode 100755
index 0000000..9715040
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISysMLPort_Stereotypes_IMatrixLayout.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISysMLPort_Stereotypes_IMatrixView.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISysMLPort_Stereotypes_IMatrixView.gif
new file mode 100755
index 0000000..25e38e9
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISysMLPort_Stereotypes_IMatrixView.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISysMLPort_Stereotypes_IModule.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISysMLPort_Stereotypes_IModule.gif
new file mode 100755
index 0000000..a1607f9
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISysMLPort_Stereotypes_IModule.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISysMLPort_Stereotypes_INode.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISysMLPort_Stereotypes_INode.gif
new file mode 100755
index 0000000..f655cb5
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISysMLPort_Stereotypes_INode.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISysMLPort_Stereotypes_IObjectModelDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISysMLPort_Stereotypes_IObjectModelDiagram.gif
new file mode 100755
index 0000000..9d0e539
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISysMLPort_Stereotypes_IObjectModelDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISysMLPort_Stereotypes_IOperation.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISysMLPort_Stereotypes_IOperation.gif
new file mode 100755
index 0000000..be40747
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISysMLPort_Stereotypes_IOperation.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISysMLPort_Stereotypes_IPackage.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISysMLPort_Stereotypes_IPackage.gif
new file mode 100755
index 0000000..74f7ceb
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISysMLPort_Stereotypes_IPackage.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISysMLPort_Stereotypes_IPanelDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISysMLPort_Stereotypes_IPanelDiagram.gif
new file mode 100755
index 0000000..1d1578b
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISysMLPort_Stereotypes_IPanelDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISysMLPort_Stereotypes_IPort.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISysMLPort_Stereotypes_IPort.gif
new file mode 100755
index 0000000..25e38e9
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISysMLPort_Stereotypes_IPort.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISysMLPort_Stereotypes_IProfile.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISysMLPort_Stereotypes_IProfile.gif
new file mode 100755
index 0000000..12ec17b
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISysMLPort_Stereotypes_IProfile.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISysMLPort_Stereotypes_IProject.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISysMLPort_Stereotypes_IProject.gif
new file mode 100755
index 0000000..8b42bd7
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISysMLPort_Stereotypes_IProject.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISysMLPort_Stereotypes_IRelation.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISysMLPort_Stereotypes_IRelation.gif
new file mode 100755
index 0000000..89d8767
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISysMLPort_Stereotypes_IRelation.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISysMLPort_Stereotypes_IRequirement.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISysMLPort_Stereotypes_IRequirement.gif
new file mode 100755
index 0000000..d64a930
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISysMLPort_Stereotypes_IRequirement.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISysMLPort_Stereotypes_ISequenceDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISysMLPort_Stereotypes_ISequenceDiagram.gif
new file mode 100755
index 0000000..1571ae8
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISysMLPort_Stereotypes_ISequenceDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISysMLPort_Stereotypes_IStateChart.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISysMLPort_Stereotypes_IStateChart.gif
new file mode 100755
index 0000000..e7da41e
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISysMLPort_Stereotypes_IStateChart.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISysMLPort_Stereotypes_IStateChartDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISysMLPort_Stereotypes_IStateChartDiagram.gif
new file mode 100755
index 0000000..1571ae8
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISysMLPort_Stereotypes_IStateChartDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISysMLPort_Stereotypes_IStereotype.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISysMLPort_Stereotypes_IStereotype.gif
new file mode 100755
index 0000000..d64a930
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISysMLPort_Stereotypes_IStereotype.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISysMLPort_Stereotypes_IStructureDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISysMLPort_Stereotypes_IStructureDiagram.gif
new file mode 100755
index 0000000..d415ad7
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISysMLPort_Stereotypes_IStructureDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISysMLPort_Stereotypes_ISysMLPort.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISysMLPort_Stereotypes_ISysMLPort.gif
new file mode 100755
index 0000000..a1607f9
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISysMLPort_Stereotypes_ISysMLPort.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISysMLPort_Stereotypes_ITableLayout.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISysMLPort_Stereotypes_ITableLayout.gif
new file mode 100755
index 0000000..58bd8cf
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISysMLPort_Stereotypes_ITableLayout.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISysMLPort_Stereotypes_ITableView.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISysMLPort_Stereotypes_ITableView.gif
new file mode 100755
index 0000000..1571ae8
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISysMLPort_Stereotypes_ITableView.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISysMLPort_Stereotypes_ITag.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISysMLPort_Stereotypes_ITag.gif
new file mode 100755
index 0000000..064dd75
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISysMLPort_Stereotypes_ITag.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISysMLPort_Stereotypes_ITemplateParameter.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISysMLPort_Stereotypes_ITemplateParameter.gif
new file mode 100755
index 0000000..9d0e539
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISysMLPort_Stereotypes_ITemplateParameter.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISysMLPort_Stereotypes_IType.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISysMLPort_Stereotypes_IType.gif
new file mode 100755
index 0000000..d677d34
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISysMLPort_Stereotypes_IType.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISysMLPort_Stereotypes_IUnit.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISysMLPort_Stereotypes_IUnit.gif
new file mode 100755
index 0000000..e17a9f8
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISysMLPort_Stereotypes_IUnit.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISysMLPort_Stereotypes_IUseCase.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISysMLPort_Stereotypes_IUseCase.gif
new file mode 100755
index 0000000..e3e95e6
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISysMLPort_Stereotypes_IUseCase.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISysMLPort_Stereotypes_IUseCaseDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISysMLPort_Stereotypes_IUseCaseDiagram.gif
new file mode 100755
index 0000000..affc324
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISysMLPort_Stereotypes_IUseCaseDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISysMLPort_Stereotypes_IVariable.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISysMLPort_Stereotypes_IVariable.gif
new file mode 100755
index 0000000..1571ae8
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISysMLPort_Stereotypes_IVariable.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISysMLPort_Tags_ITag.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISysMLPort_Tags_ITag.gif
new file mode 100755
index 0000000..064dd75
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISysMLPort_Tags_ITag.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISysMLPort_description_IDescription.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISysMLPort_description_IDescription.gif
new file mode 100755
index 0000000..affc324
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateISysMLPort_description_IDescription.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITableInstance_ScopeHandles_IAcceptEventAction.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITableInstance_ScopeHandles_IAcceptEventAction.gif
new file mode 100755
index 0000000..e9c7cf5
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITableInstance_ScopeHandles_IAcceptEventAction.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITableInstance_ScopeHandles_IAcceptTimeEvent.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITableInstance_ScopeHandles_IAcceptTimeEvent.gif
new file mode 100755
index 0000000..fc9baba
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITableInstance_ScopeHandles_IAcceptTimeEvent.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITableInstance_ScopeHandles_IActivityGraph.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITableInstance_ScopeHandles_IActivityGraph.gif
new file mode 100755
index 0000000..0b911cc
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITableInstance_ScopeHandles_IActivityGraph.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITableInstance_ScopeHandles_IActor.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITableInstance_ScopeHandles_IActor.gif
new file mode 100755
index 0000000..68f2c19
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITableInstance_ScopeHandles_IActor.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITableInstance_ScopeHandles_IAnchor.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITableInstance_ScopeHandles_IAnchor.gif
new file mode 100755
index 0000000..833ad7c
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITableInstance_ScopeHandles_IAnchor.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITableInstance_ScopeHandles_IAssociationClass.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITableInstance_ScopeHandles_IAssociationClass.gif
new file mode 100755
index 0000000..c6587b1
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITableInstance_ScopeHandles_IAssociationClass.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITableInstance_ScopeHandles_IAssociationEnd.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITableInstance_ScopeHandles_IAssociationEnd.gif
new file mode 100755
index 0000000..d9a2153
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITableInstance_ScopeHandles_IAssociationEnd.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITableInstance_ScopeHandles_IAttribute.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITableInstance_ScopeHandles_IAttribute.gif
new file mode 100755
index 0000000..34f0bc1
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITableInstance_ScopeHandles_IAttribute.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITableInstance_ScopeHandles_IBlock.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITableInstance_ScopeHandles_IBlock.gif
new file mode 100755
index 0000000..15a02fb
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITableInstance_ScopeHandles_IBlock.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITableInstance_ScopeHandles_ICallOperation.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITableInstance_ScopeHandles_ICallOperation.gif
new file mode 100755
index 0000000..3256d56
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITableInstance_ScopeHandles_ICallOperation.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITableInstance_ScopeHandles_IClass.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITableInstance_ScopeHandles_IClass.gif
new file mode 100755
index 0000000..0a4d20c
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITableInstance_ScopeHandles_IClass.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITableInstance_ScopeHandles_IClassHandle.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITableInstance_ScopeHandles_IClassHandle.gif
new file mode 100755
index 0000000..e4fcc2d
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITableInstance_ScopeHandles_IClassHandle.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITableInstance_ScopeHandles_IClassInstance.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITableInstance_ScopeHandles_IClassInstance.gif
new file mode 100755
index 0000000..bdba705
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITableInstance_ScopeHandles_IClassInstance.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITableInstance_ScopeHandles_ICollaboration.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITableInstance_ScopeHandles_ICollaboration.gif
new file mode 100755
index 0000000..cdf1a8a
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITableInstance_ScopeHandles_ICollaboration.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITableInstance_ScopeHandles_ICollaborationDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITableInstance_ScopeHandles_ICollaborationDiagram.gif
new file mode 100755
index 0000000..5e122f6
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITableInstance_ScopeHandles_ICollaborationDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITableInstance_ScopeHandles_IComponent.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITableInstance_ScopeHandles_IComponent.gif
new file mode 100755
index 0000000..fc9baba
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITableInstance_ScopeHandles_IComponent.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITableInstance_ScopeHandles_IComponentDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITableInstance_ScopeHandles_IComponentDiagram.gif
new file mode 100755
index 0000000..ce29156
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITableInstance_ScopeHandles_IComponentDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITableInstance_ScopeHandles_IDeploymentDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITableInstance_ScopeHandles_IDeploymentDiagram.gif
new file mode 100755
index 0000000..f6b0168
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITableInstance_ScopeHandles_IDeploymentDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITableInstance_ScopeHandles_IDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITableInstance_ScopeHandles_IDiagram.gif
new file mode 100755
index 0000000..8707122
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITableInstance_ScopeHandles_IDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITableInstance_ScopeHandles_IEvent.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITableInstance_ScopeHandles_IEvent.gif
new file mode 100755
index 0000000..fc9baba
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITableInstance_ScopeHandles_IEvent.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITableInstance_ScopeHandles_IInteractionOperand.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITableInstance_ScopeHandles_IInteractionOperand.gif
new file mode 100755
index 0000000..cbcbf59
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITableInstance_ScopeHandles_IInteractionOperand.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITableInstance_ScopeHandles_ILink.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITableInstance_ScopeHandles_ILink.gif
new file mode 100755
index 0000000..15a02fb
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITableInstance_ScopeHandles_ILink.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITableInstance_ScopeHandles_ILinkInstance.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITableInstance_ScopeHandles_ILinkInstance.gif
new file mode 100755
index 0000000..8707122
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITableInstance_ScopeHandles_ILinkInstance.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITableInstance_ScopeHandles_IMetaLinkHandle.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITableInstance_ScopeHandles_IMetaLinkHandle.gif
new file mode 100755
index 0000000..a164d14
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITableInstance_ScopeHandles_IMetaLinkHandle.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITableInstance_ScopeHandles_IModule.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITableInstance_ScopeHandles_IModule.gif
new file mode 100755
index 0000000..56fb604
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITableInstance_ScopeHandles_IModule.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITableInstance_ScopeHandles_IObjectLink.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITableInstance_ScopeHandles_IObjectLink.gif
new file mode 100755
index 0000000..e4fcc2d
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITableInstance_ScopeHandles_IObjectLink.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITableInstance_ScopeHandles_IObjectModelDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITableInstance_ScopeHandles_IObjectModelDiagram.gif
new file mode 100755
index 0000000..148ece2
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITableInstance_ScopeHandles_IObjectModelDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITableInstance_ScopeHandles_IObjectNode.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITableInstance_ScopeHandles_IObjectNode.gif
new file mode 100755
index 0000000..58c4df7
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITableInstance_ScopeHandles_IObjectNode.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITableInstance_ScopeHandles_IPanelDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITableInstance_ScopeHandles_IPanelDiagram.gif
new file mode 100755
index 0000000..0b911cc
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITableInstance_ScopeHandles_IPanelDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITableInstance_ScopeHandles_IPart.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITableInstance_ScopeHandles_IPart.gif
new file mode 100755
index 0000000..b29986e
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITableInstance_ScopeHandles_IPart.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITableInstance_ScopeHandles_IPrimitiveOperation.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITableInstance_ScopeHandles_IPrimitiveOperation.gif
new file mode 100755
index 0000000..c6587b1
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITableInstance_ScopeHandles_IPrimitiveOperation.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITableInstance_ScopeHandles_IProject.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITableInstance_ScopeHandles_IProject.gif
new file mode 100755
index 0000000..0a43661
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITableInstance_ScopeHandles_IProject.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITableInstance_ScopeHandles_ISequenceDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITableInstance_ScopeHandles_ISequenceDiagram.gif
new file mode 100755
index 0000000..f7cfbc9
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITableInstance_ScopeHandles_ISequenceDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITableInstance_ScopeHandles_IState.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITableInstance_ScopeHandles_IState.gif
new file mode 100755
index 0000000..2777a6e
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITableInstance_ScopeHandles_IState.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITableInstance_ScopeHandles_IStateChart.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITableInstance_ScopeHandles_IStateChart.gif
new file mode 100755
index 0000000..11943a3
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITableInstance_ScopeHandles_IStateChart.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITableInstance_ScopeHandles_IStateChartDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITableInstance_ScopeHandles_IStateChartDiagram.gif
new file mode 100755
index 0000000..f7cfbc9
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITableInstance_ScopeHandles_IStateChartDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITableInstance_ScopeHandles_IStereotype.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITableInstance_ScopeHandles_IStereotype.gif
new file mode 100755
index 0000000..86d00fa
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITableInstance_ScopeHandles_IStereotype.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITableInstance_ScopeHandles_IStructureDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITableInstance_ScopeHandles_IStructureDiagram.gif
new file mode 100755
index 0000000..60989d0
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITableInstance_ScopeHandles_IStructureDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITableInstance_ScopeHandles_ISubsystem.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITableInstance_ScopeHandles_ISubsystem.gif
new file mode 100755
index 0000000..b8ec400
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITableInstance_ScopeHandles_ISubsystem.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITableInstance_ScopeHandles_ITag.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITableInstance_ScopeHandles_ITag.gif
new file mode 100755
index 0000000..1aa8543
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITableInstance_ScopeHandles_ITag.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITableInstance_ScopeHandles_IType.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITableInstance_ScopeHandles_IType.gif
new file mode 100755
index 0000000..5389eac
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITableInstance_ScopeHandles_IType.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITableInstance_ScopeHandles_IUCDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITableInstance_ScopeHandles_IUCDiagram.gif
new file mode 100755
index 0000000..cbcbf59
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITableInstance_ScopeHandles_IUCDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITableInstance_ScopeHandles_IUseCaseDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITableInstance_ScopeHandles_IUseCaseDiagram.gif
new file mode 100755
index 0000000..4c5b0e3
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITableInstance_ScopeHandles_IUseCaseDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITableInstance_Stereotypes_IActor.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITableInstance_Stereotypes_IActor.gif
new file mode 100755
index 0000000..68f2c19
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITableInstance_Stereotypes_IActor.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITableInstance_Stereotypes_IAssociationClass.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITableInstance_Stereotypes_IAssociationClass.gif
new file mode 100755
index 0000000..c6587b1
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITableInstance_Stereotypes_IAssociationClass.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITableInstance_Stereotypes_IClass.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITableInstance_Stereotypes_IClass.gif
new file mode 100755
index 0000000..0a4d20c
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITableInstance_Stereotypes_IClass.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITableInstance_Stereotypes_IClassifier.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITableInstance_Stereotypes_IClassifier.gif
new file mode 100755
index 0000000..3de4a50
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITableInstance_Stereotypes_IClassifier.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITableInstance_Stereotypes_IEvent.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITableInstance_Stereotypes_IEvent.gif
new file mode 100755
index 0000000..fc9baba
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITableInstance_Stereotypes_IEvent.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITableInstance_Stereotypes_IEventReception.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITableInstance_Stereotypes_IEventReception.gif
new file mode 100755
index 0000000..f641dcd
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITableInstance_Stereotypes_IEventReception.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITableInstance_Stereotypes_IFlowItem.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITableInstance_Stereotypes_IFlowItem.gif
new file mode 100755
index 0000000..2215c82
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITableInstance_Stereotypes_IFlowItem.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITableInstance_Stereotypes_IInterfaceItem.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITableInstance_Stereotypes_IInterfaceItem.gif
new file mode 100755
index 0000000..8707122
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITableInstance_Stereotypes_IInterfaceItem.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITableInstance_Stereotypes_INode.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITableInstance_Stereotypes_INode.gif
new file mode 100755
index 0000000..f34bd0d
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITableInstance_Stereotypes_INode.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITableInstance_Stereotypes_IOperation.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITableInstance_Stereotypes_IOperation.gif
new file mode 100755
index 0000000..f6b0168
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITableInstance_Stereotypes_IOperation.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITableInstance_Stereotypes_IStateChart.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITableInstance_Stereotypes_IStateChart.gif
new file mode 100755
index 0000000..11943a3
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITableInstance_Stereotypes_IStateChart.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITableInstance_Stereotypes_IStereotype.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITableInstance_Stereotypes_IStereotype.gif
new file mode 100755
index 0000000..86d00fa
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITableInstance_Stereotypes_IStereotype.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITableInstance_Stereotypes_IType.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITableInstance_Stereotypes_IType.gif
new file mode 100755
index 0000000..5389eac
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITableInstance_Stereotypes_IType.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITableInstance_Stereotypes_IUseCase.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITableInstance_Stereotypes_IUseCase.gif
new file mode 100755
index 0000000..ce29156
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITableInstance_Stereotypes_IUseCase.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITableInstance_properties_IPropertyContainer.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITableInstance_properties_IPropertyContainer.gif
new file mode 100755
index 0000000..b53237c
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITableInstance_properties_IPropertyContainer.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITableLayout_DataColumns_TableDataDefinition.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITableLayout_DataColumns_TableDataDefinition.gif
new file mode 100755
index 0000000..db04142
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITableLayout_DataColumns_TableDataDefinition.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITableLayout_Stereotypes_IStereotype.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITableLayout_Stereotypes_IStereotype.gif
new file mode 100755
index 0000000..7bef7ae
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITableLayout_Stereotypes_IStereotype.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITableLayout_TableElementTypes_TableDataDefinition.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITableLayout_TableElementTypes_TableDataDefinition.gif
new file mode 100755
index 0000000..db04142
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITableLayout_TableElementTypes_TableDataDefinition.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITableLayout_Tags_ITag.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITableLayout_Tags_ITag.gif
new file mode 100755
index 0000000..b1d6682
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITableLayout_Tags_ITag.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITableLayout_description_IDescription.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITableLayout_description_IDescription.gif
new file mode 100755
index 0000000..d01836d
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITableLayout_description_IDescription.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITableLayout_properties_IPropertyContainer.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITableLayout_properties_IPropertyContainer.gif
new file mode 100755
index 0000000..18e4f1a
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITableLayout_properties_IPropertyContainer.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITag_HyperLinks_IMHyperLink.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITag_HyperLinks_IMHyperLink.gif
new file mode 100755
index 0000000..4937a9c
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITag_HyperLinks_IMHyperLink.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITag_ValueSpecifications_IAcceptEventAction.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITag_ValueSpecifications_IAcceptEventAction.gif
new file mode 100755
index 0000000..3f235b3
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITag_ValueSpecifications_IAcceptEventAction.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITag_ValueSpecifications_IAcceptTimeEvent.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITag_ValueSpecifications_IAcceptTimeEvent.gif
new file mode 100755
index 0000000..ecde335
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITag_ValueSpecifications_IAcceptTimeEvent.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITag_ValueSpecifications_IAction.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITag_ValueSpecifications_IAction.gif
new file mode 100755
index 0000000..1ed2762
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITag_ValueSpecifications_IAction.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITag_ValueSpecifications_IActivityGraph.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITag_ValueSpecifications_IActivityGraph.gif
new file mode 100755
index 0000000..53a350e
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITag_ValueSpecifications_IActivityGraph.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITag_ValueSpecifications_IActor.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITag_ValueSpecifications_IActor.gif
new file mode 100755
index 0000000..5a308e5
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITag_ValueSpecifications_IActor.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITag_ValueSpecifications_IAnnotation.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITag_ValueSpecifications_IAnnotation.gif
new file mode 100755
index 0000000..dc9ca0a
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITag_ValueSpecifications_IAnnotation.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITag_ValueSpecifications_IArgument.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITag_ValueSpecifications_IArgument.gif
new file mode 100755
index 0000000..64ea174
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITag_ValueSpecifications_IArgument.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITag_ValueSpecifications_IAssociationClass.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITag_ValueSpecifications_IAssociationClass.gif
new file mode 100755
index 0000000..5f4cee6
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITag_ValueSpecifications_IAssociationClass.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITag_ValueSpecifications_IAssociationEnd.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITag_ValueSpecifications_IAssociationEnd.gif
new file mode 100755
index 0000000..4937a9c
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITag_ValueSpecifications_IAssociationEnd.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITag_ValueSpecifications_IAssociationRole.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITag_ValueSpecifications_IAssociationRole.gif
new file mode 100755
index 0000000..73b08f7
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITag_ValueSpecifications_IAssociationRole.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITag_ValueSpecifications_IAttribute.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITag_ValueSpecifications_IAttribute.gif
new file mode 100755
index 0000000..8897aa8
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITag_ValueSpecifications_IAttribute.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITag_ValueSpecifications_ICallOperation.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITag_ValueSpecifications_ICallOperation.gif
new file mode 100755
index 0000000..daf990a
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITag_ValueSpecifications_ICallOperation.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITag_ValueSpecifications_IClass.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITag_ValueSpecifications_IClass.gif
new file mode 100755
index 0000000..860276f
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITag_ValueSpecifications_IClass.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITag_ValueSpecifications_IClassifier.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITag_ValueSpecifications_IClassifier.gif
new file mode 100755
index 0000000..8a4acfb
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITag_ValueSpecifications_IClassifier.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITag_ValueSpecifications_IClassifierRole.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITag_ValueSpecifications_IClassifierRole.gif
new file mode 100755
index 0000000..aced3dd
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITag_ValueSpecifications_IClassifierRole.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITag_ValueSpecifications_ICollaboration.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITag_ValueSpecifications_ICollaboration.gif
new file mode 100755
index 0000000..4455fd0
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITag_ValueSpecifications_ICollaboration.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITag_ValueSpecifications_ICollaborationDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITag_ValueSpecifications_ICollaborationDiagram.gif
new file mode 100755
index 0000000..3274511
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITag_ValueSpecifications_ICollaborationDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITag_ValueSpecifications_IComment.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITag_ValueSpecifications_IComment.gif
new file mode 100755
index 0000000..c200e69
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITag_ValueSpecifications_IComment.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITag_ValueSpecifications_IComponent.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITag_ValueSpecifications_IComponent.gif
new file mode 100755
index 0000000..ecde335
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITag_ValueSpecifications_IComponent.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITag_ValueSpecifications_IComponentDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITag_ValueSpecifications_IComponentDiagram.gif
new file mode 100755
index 0000000..64ea174
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITag_ValueSpecifications_IComponentDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITag_ValueSpecifications_IComponentInstance.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITag_ValueSpecifications_IComponentInstance.gif
new file mode 100755
index 0000000..4937a9c
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITag_ValueSpecifications_IComponentInstance.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITag_ValueSpecifications_IConfiguration.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITag_ValueSpecifications_IConfiguration.gif
new file mode 100755
index 0000000..860276f
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITag_ValueSpecifications_IConfiguration.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITag_ValueSpecifications_IConnector.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITag_ValueSpecifications_IConnector.gif
new file mode 100755
index 0000000..5f4cee6
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITag_ValueSpecifications_IConnector.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITag_ValueSpecifications_IConstraint.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITag_ValueSpecifications_IConstraint.gif
new file mode 100755
index 0000000..3f235b3
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITag_ValueSpecifications_IConstraint.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITag_ValueSpecifications_IContextSpecification.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITag_ValueSpecifications_IContextSpecification.gif
new file mode 100755
index 0000000..1afc3ce
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITag_ValueSpecifications_IContextSpecification.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITag_ValueSpecifications_IControlledFile.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITag_ValueSpecifications_IControlledFile.gif
new file mode 100755
index 0000000..05fd372
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITag_ValueSpecifications_IControlledFile.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITag_ValueSpecifications_IDependency.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITag_ValueSpecifications_IDependency.gif
new file mode 100755
index 0000000..8eb4561
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITag_ValueSpecifications_IDependency.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITag_ValueSpecifications_IDeploymentDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITag_ValueSpecifications_IDeploymentDiagram.gif
new file mode 100755
index 0000000..ce5530e
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITag_ValueSpecifications_IDeploymentDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITag_ValueSpecifications_IDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITag_ValueSpecifications_IDiagram.gif
new file mode 100755
index 0000000..3408e14
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITag_ValueSpecifications_IDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITag_ValueSpecifications_IEnumerationLiteral.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITag_ValueSpecifications_IEnumerationLiteral.gif
new file mode 100755
index 0000000..eabf210
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITag_ValueSpecifications_IEnumerationLiteral.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITag_ValueSpecifications_IEvent.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITag_ValueSpecifications_IEvent.gif
new file mode 100755
index 0000000..ecde335
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITag_ValueSpecifications_IEvent.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITag_ValueSpecifications_IEventReception.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITag_ValueSpecifications_IEventReception.gif
new file mode 100755
index 0000000..a785c69
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITag_ValueSpecifications_IEventReception.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITag_ValueSpecifications_IExecutionOccurrence.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITag_ValueSpecifications_IExecutionOccurrence.gif
new file mode 100755
index 0000000..18a3c3f
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITag_ValueSpecifications_IExecutionOccurrence.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITag_ValueSpecifications_IExternalHyperlink.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITag_ValueSpecifications_IExternalHyperlink.gif
new file mode 100755
index 0000000..d56a04b
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITag_ValueSpecifications_IExternalHyperlink.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITag_ValueSpecifications_IFile.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITag_ValueSpecifications_IFile.gif
new file mode 100755
index 0000000..53a350e
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITag_ValueSpecifications_IFile.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITag_ValueSpecifications_IFileFragment.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITag_ValueSpecifications_IFileFragment.gif
new file mode 100755
index 0000000..a785c69
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITag_ValueSpecifications_IFileFragment.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITag_ValueSpecifications_IFlow.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITag_ValueSpecifications_IFlow.gif
new file mode 100755
index 0000000..ed60866
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITag_ValueSpecifications_IFlow.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITag_ValueSpecifications_IFlowItem.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITag_ValueSpecifications_IFlowItem.gif
new file mode 100755
index 0000000..57fa1bb
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITag_ValueSpecifications_IFlowItem.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITag_ValueSpecifications_IGeneralization.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITag_ValueSpecifications_IGeneralization.gif
new file mode 100755
index 0000000..c4c4177
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITag_ValueSpecifications_IGeneralization.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITag_ValueSpecifications_IGuard.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITag_ValueSpecifications_IGuard.gif
new file mode 100755
index 0000000..73b08f7
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITag_ValueSpecifications_IGuard.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITag_ValueSpecifications_IHyperLink.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITag_ValueSpecifications_IHyperLink.gif
new file mode 100755
index 0000000..b68de5e
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITag_ValueSpecifications_IHyperLink.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITag_ValueSpecifications_IInformationFlow.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITag_ValueSpecifications_IInformationFlow.gif
new file mode 100755
index 0000000..ecde335
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITag_ValueSpecifications_IInformationFlow.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITag_ValueSpecifications_IInstance.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITag_ValueSpecifications_IInstance.gif
new file mode 100755
index 0000000..9a73c8d
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITag_ValueSpecifications_IInstance.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITag_ValueSpecifications_IInstanceSlot.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITag_ValueSpecifications_IInstanceSlot.gif
new file mode 100755
index 0000000..b8a285a
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITag_ValueSpecifications_IInstanceSlot.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITag_ValueSpecifications_IInstanceSpecification.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITag_ValueSpecifications_IInstanceSpecification.gif
new file mode 100755
index 0000000..64ea174
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITag_ValueSpecifications_IInstanceSpecification.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITag_ValueSpecifications_IInstanceValue.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITag_ValueSpecifications_IInstanceValue.gif
new file mode 100755
index 0000000..dc9ca0a
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITag_ValueSpecifications_IInstanceValue.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITag_ValueSpecifications_IInteractionOccurrence.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITag_ValueSpecifications_IInteractionOccurrence.gif
new file mode 100755
index 0000000..ecde335
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITag_ValueSpecifications_IInteractionOccurrence.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITag_ValueSpecifications_IInteractionOperand.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITag_ValueSpecifications_IInteractionOperand.gif
new file mode 100755
index 0000000..5f8c201
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITag_ValueSpecifications_IInteractionOperand.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITag_ValueSpecifications_IInteractionOperator.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITag_ValueSpecifications_IInteractionOperator.gif
new file mode 100755
index 0000000..7a76354
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITag_ValueSpecifications_IInteractionOperator.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITag_ValueSpecifications_IInterfaceItem.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITag_ValueSpecifications_IInterfaceItem.gif
new file mode 100755
index 0000000..3408e14
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITag_ValueSpecifications_IInterfaceItem.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITag_ValueSpecifications_IInternalHyperlink.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITag_ValueSpecifications_IInternalHyperlink.gif
new file mode 100755
index 0000000..8f0a0b2
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITag_ValueSpecifications_IInternalHyperlink.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITag_ValueSpecifications_ILink.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITag_ValueSpecifications_ILink.gif
new file mode 100755
index 0000000..a4565df
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITag_ValueSpecifications_ILink.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITag_ValueSpecifications_ILiteralSpecification.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITag_ValueSpecifications_ILiteralSpecification.gif
new file mode 100755
index 0000000..eabf210
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITag_ValueSpecifications_ILiteralSpecification.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITag_ValueSpecifications_IMHyperLink.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITag_ValueSpecifications_IMHyperLink.gif
new file mode 100755
index 0000000..4937a9c
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITag_ValueSpecifications_IMHyperLink.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITag_ValueSpecifications_IMatrixLayout.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITag_ValueSpecifications_IMatrixLayout.gif
new file mode 100755
index 0000000..2e55f80
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITag_ValueSpecifications_IMatrixLayout.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITag_ValueSpecifications_IMatrixView.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITag_ValueSpecifications_IMatrixView.gif
new file mode 100755
index 0000000..ecde335
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITag_ValueSpecifications_IMatrixView.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITag_ValueSpecifications_IMessage.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITag_ValueSpecifications_IMessage.gif
new file mode 100755
index 0000000..517abc7
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITag_ValueSpecifications_IMessage.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITag_ValueSpecifications_IMessagePoint.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITag_ValueSpecifications_IMessagePoint.gif
new file mode 100755
index 0000000..8e326a9
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITag_ValueSpecifications_IMessagePoint.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITag_ValueSpecifications_IModelElement.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITag_ValueSpecifications_IModelElement.gif
new file mode 100755
index 0000000..73b08f7
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITag_ValueSpecifications_IModelElement.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITag_ValueSpecifications_IModule.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITag_ValueSpecifications_IModule.gif
new file mode 100755
index 0000000..1a6d6b3
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITag_ValueSpecifications_IModule.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITag_ValueSpecifications_INode.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITag_ValueSpecifications_INode.gif
new file mode 100755
index 0000000..3daea53
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITag_ValueSpecifications_INode.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITag_ValueSpecifications_IObjectLink.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITag_ValueSpecifications_IObjectLink.gif
new file mode 100755
index 0000000..05fd372
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITag_ValueSpecifications_IObjectLink.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITag_ValueSpecifications_IObjectModelDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITag_ValueSpecifications_IObjectModelDiagram.gif
new file mode 100755
index 0000000..8e326a9
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITag_ValueSpecifications_IObjectModelDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITag_ValueSpecifications_IObjectNode.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITag_ValueSpecifications_IObjectNode.gif
new file mode 100755
index 0000000..26942d5
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITag_ValueSpecifications_IObjectNode.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITag_ValueSpecifications_IOperation.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITag_ValueSpecifications_IOperation.gif
new file mode 100755
index 0000000..ce5530e
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITag_ValueSpecifications_IOperation.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITag_ValueSpecifications_IPackage.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITag_ValueSpecifications_IPackage.gif
new file mode 100755
index 0000000..954afa1
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITag_ValueSpecifications_IPackage.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITag_ValueSpecifications_IPanelDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITag_ValueSpecifications_IPanelDiagram.gif
new file mode 100755
index 0000000..53a350e
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITag_ValueSpecifications_IPanelDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITag_ValueSpecifications_IPart.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITag_ValueSpecifications_IPart.gif
new file mode 100755
index 0000000..3b60193
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITag_ValueSpecifications_IPart.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITag_ValueSpecifications_IPin.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITag_ValueSpecifications_IPin.gif
new file mode 100755
index 0000000..9a73c8d
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITag_ValueSpecifications_IPin.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITag_ValueSpecifications_IPort.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITag_ValueSpecifications_IPort.gif
new file mode 100755
index 0000000..ecde335
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITag_ValueSpecifications_IPort.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITag_ValueSpecifications_IPrimitiveOperation.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITag_ValueSpecifications_IPrimitiveOperation.gif
new file mode 100755
index 0000000..5f4cee6
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITag_ValueSpecifications_IPrimitiveOperation.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITag_ValueSpecifications_IProfile.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITag_ValueSpecifications_IProfile.gif
new file mode 100755
index 0000000..3f235b3
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITag_ValueSpecifications_IProfile.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITag_ValueSpecifications_IProject.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITag_ValueSpecifications_IProject.gif
new file mode 100755
index 0000000..8f0a0b2
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITag_ValueSpecifications_IProject.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITag_ValueSpecifications_IRelation.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITag_ValueSpecifications_IRelation.gif
new file mode 100755
index 0000000..ad157ff
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITag_ValueSpecifications_IRelation.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITag_ValueSpecifications_IRequirement.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITag_ValueSpecifications_IRequirement.gif
new file mode 100755
index 0000000..5588921
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITag_ValueSpecifications_IRequirement.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITag_ValueSpecifications_ISendAction.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITag_ValueSpecifications_ISendAction.gif
new file mode 100755
index 0000000..3f235b3
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITag_ValueSpecifications_ISendAction.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITag_ValueSpecifications_ISequenceDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITag_ValueSpecifications_ISequenceDiagram.gif
new file mode 100755
index 0000000..b8a285a
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITag_ValueSpecifications_ISequenceDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITag_ValueSpecifications_IState.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITag_ValueSpecifications_IState.gif
new file mode 100755
index 0000000..1ed2762
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITag_ValueSpecifications_IState.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITag_ValueSpecifications_IStateChart.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITag_ValueSpecifications_IStateChart.gif
new file mode 100755
index 0000000..b68de5e
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITag_ValueSpecifications_IStateChart.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITag_ValueSpecifications_IStateChartDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITag_ValueSpecifications_IStateChartDiagram.gif
new file mode 100755
index 0000000..b8a285a
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITag_ValueSpecifications_IStateChartDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITag_ValueSpecifications_IStateVertex.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITag_ValueSpecifications_IStateVertex.gif
new file mode 100755
index 0000000..05fd372
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITag_ValueSpecifications_IStateVertex.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITag_ValueSpecifications_IStereotype.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITag_ValueSpecifications_IStereotype.gif
new file mode 100755
index 0000000..5588921
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITag_ValueSpecifications_IStereotype.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITag_ValueSpecifications_IStructureDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITag_ValueSpecifications_IStructureDiagram.gif
new file mode 100755
index 0000000..dc9ca0a
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITag_ValueSpecifications_IStructureDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITag_ValueSpecifications_ISubsystem.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITag_ValueSpecifications_ISubsystem.gif
new file mode 100755
index 0000000..9a73c8d
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITag_ValueSpecifications_ISubsystem.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITag_ValueSpecifications_ISwimlane.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITag_ValueSpecifications_ISwimlane.gif
new file mode 100755
index 0000000..a785c69
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITag_ValueSpecifications_ISwimlane.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITag_ValueSpecifications_ISysMLPort.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITag_ValueSpecifications_ISysMLPort.gif
new file mode 100755
index 0000000..1a6d6b3
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITag_ValueSpecifications_ISysMLPort.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITag_ValueSpecifications_ITableLayout.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITag_ValueSpecifications_ITableLayout.gif
new file mode 100755
index 0000000..3408e14
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITag_ValueSpecifications_ITableLayout.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITag_ValueSpecifications_ITableView.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITag_ValueSpecifications_ITableView.gif
new file mode 100755
index 0000000..b8a285a
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITag_ValueSpecifications_ITableView.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITag_ValueSpecifications_ITag.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITag_ValueSpecifications_ITag.gif
new file mode 100755
index 0000000..40ef685
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITag_ValueSpecifications_ITag.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITag_ValueSpecifications_ITemplateInstantiation.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITag_ValueSpecifications_ITemplateInstantiation.gif
new file mode 100755
index 0000000..53a350e
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITag_ValueSpecifications_ITemplateInstantiation.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITag_ValueSpecifications_ITemplateInstantiationParameter.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITag_ValueSpecifications_ITemplateInstantiationParameter.gif
new file mode 100755
index 0000000..1afc3ce
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITag_ValueSpecifications_ITemplateInstantiationParameter.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITag_ValueSpecifications_ITemplateParameter.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITag_ValueSpecifications_ITemplateParameter.gif
new file mode 100755
index 0000000..8e326a9
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITag_ValueSpecifications_ITemplateParameter.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITag_ValueSpecifications_ITransition.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITag_ValueSpecifications_ITransition.gif
new file mode 100755
index 0000000..8f0a0b2
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITag_ValueSpecifications_ITransition.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITag_ValueSpecifications_ITrigger.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITag_ValueSpecifications_ITrigger.gif
new file mode 100755
index 0000000..53a350e
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITag_ValueSpecifications_ITrigger.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITag_ValueSpecifications_ITriggered.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITag_ValueSpecifications_ITriggered.gif
new file mode 100755
index 0000000..a785c69
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITag_ValueSpecifications_ITriggered.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITag_ValueSpecifications_IType.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITag_ValueSpecifications_IType.gif
new file mode 100755
index 0000000..7a76354
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITag_ValueSpecifications_IType.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITag_ValueSpecifications_IUnit.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITag_ValueSpecifications_IUnit.gif
new file mode 100755
index 0000000..c4c4177
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITag_ValueSpecifications_IUnit.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITag_ValueSpecifications_IUseCase.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITag_ValueSpecifications_IUseCase.gif
new file mode 100755
index 0000000..64ea174
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITag_ValueSpecifications_IUseCase.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITag_ValueSpecifications_IUseCaseDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITag_ValueSpecifications_IUseCaseDiagram.gif
new file mode 100755
index 0000000..c200e69
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITag_ValueSpecifications_IUseCaseDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITag_ValueSpecifications_IValueSpecification.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITag_ValueSpecifications_IValueSpecification.gif
new file mode 100755
index 0000000..517abc7
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITag_ValueSpecifications_IValueSpecification.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITag_ValueSpecifications_IVariable.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITag_ValueSpecifications_IVariable.gif
new file mode 100755
index 0000000..b8a285a
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITag_ValueSpecifications_IVariable.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITag_description_IDescription.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITag_description_IDescription.gif
new file mode 100755
index 0000000..c200e69
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITag_description_IDescription.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITag_properties_IPropertyContainer.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITag_properties_IPropertyContainer.gif
new file mode 100755
index 0000000..ed60866
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITag_properties_IPropertyContainer.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITemplateInst_TemplateInstParams_ITemplateInstParam.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITemplateInst_TemplateInstParams_ITemplateInstParam.gif
new file mode 100755
index 0000000..3ecfb1a
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITemplateInst_TemplateInstParams_ITemplateInstParam.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITransition_Dependencies_IDependency.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITransition_Dependencies_IDependency.gif
new file mode 100755
index 0000000..902141b
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITransition_Dependencies_IDependency.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITransition_Dependencies_IHyperLink.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITransition_Dependencies_IHyperLink.gif
new file mode 100755
index 0000000..6910560
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITransition_Dependencies_IHyperLink.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITransition_Stereotypes_IActor.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITransition_Stereotypes_IActor.gif
new file mode 100755
index 0000000..8a87700
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITransition_Stereotypes_IActor.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITransition_Stereotypes_IAssociationClass.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITransition_Stereotypes_IAssociationClass.gif
new file mode 100755
index 0000000..ed645c3
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITransition_Stereotypes_IAssociationClass.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITransition_Stereotypes_IClass.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITransition_Stereotypes_IClass.gif
new file mode 100755
index 0000000..1543d3c
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITransition_Stereotypes_IClass.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITransition_Stereotypes_IClassifier.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITransition_Stereotypes_IClassifier.gif
new file mode 100755
index 0000000..0a2cc52
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITransition_Stereotypes_IClassifier.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITransition_Stereotypes_IEvent.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITransition_Stereotypes_IEvent.gif
new file mode 100755
index 0000000..3cfac31
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITransition_Stereotypes_IEvent.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITransition_Stereotypes_IEventReception.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITransition_Stereotypes_IEventReception.gif
new file mode 100755
index 0000000..3ede289
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITransition_Stereotypes_IEventReception.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITransition_Stereotypes_IFlowItem.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITransition_Stereotypes_IFlowItem.gif
new file mode 100755
index 0000000..44d87cb
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITransition_Stereotypes_IFlowItem.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITransition_Stereotypes_IInterfaceItem.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITransition_Stereotypes_IInterfaceItem.gif
new file mode 100755
index 0000000..fc67848
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITransition_Stereotypes_IInterfaceItem.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITransition_Stereotypes_INode.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITransition_Stereotypes_INode.gif
new file mode 100755
index 0000000..549553f
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITransition_Stereotypes_INode.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITransition_Stereotypes_IOperation.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITransition_Stereotypes_IOperation.gif
new file mode 100755
index 0000000..e91f6dd
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITransition_Stereotypes_IOperation.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITransition_Stereotypes_IStateChart.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITransition_Stereotypes_IStateChart.gif
new file mode 100755
index 0000000..6910560
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITransition_Stereotypes_IStateChart.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITransition_Stereotypes_IStereotype.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITransition_Stereotypes_IStereotype.gif
new file mode 100755
index 0000000..49d948b
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITransition_Stereotypes_IStereotype.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITransition_Stereotypes_IType.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITransition_Stereotypes_IType.gif
new file mode 100755
index 0000000..d89ab7a
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITransition_Stereotypes_IType.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITransition_Stereotypes_IUseCase.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITransition_Stereotypes_IUseCase.gif
new file mode 100755
index 0000000..33e8a61
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITransition_Stereotypes_IUseCase.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITriggered_Args_IArgument.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITriggered_Args_IArgument.gif
new file mode 100755
index 0000000..2782e6e
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITriggered_Args_IArgument.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITriggered_Args_IAttribute.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITriggered_Args_IAttribute.gif
new file mode 100755
index 0000000..7198763
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITriggered_Args_IAttribute.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITriggered_Args_ITag.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITriggered_Args_ITag.gif
new file mode 100755
index 0000000..1f06e1f
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITriggered_Args_ITag.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITriggered_Args_ITemplateParameter.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITriggered_Args_ITemplateParameter.gif
new file mode 100755
index 0000000..d252f2b
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITriggered_Args_ITemplateParameter.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITriggered_Args_IVariable.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITriggered_Args_IVariable.gif
new file mode 100755
index 0000000..5f1770b
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateITriggered_Args_IVariable.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIType_Attrs_IAttribute.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIType_Attrs_IAttribute.gif
new file mode 100755
index 0000000..7926c34
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIType_Attrs_IAttribute.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIType_Literals_IEnumerationLiteral.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIType_Literals_IEnumerationLiteral.gif
new file mode 100755
index 0000000..98c2fa2
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIType_Literals_IEnumerationLiteral.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIType_Stereotypes_IActor.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIType_Stereotypes_IActor.gif
new file mode 100755
index 0000000..6f31e09
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIType_Stereotypes_IActor.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIType_Stereotypes_IAnnotation.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIType_Stereotypes_IAnnotation.gif
new file mode 100755
index 0000000..e853fb3
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIType_Stereotypes_IAnnotation.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIType_Stereotypes_IArgument.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIType_Stereotypes_IArgument.gif
new file mode 100755
index 0000000..e25ba66
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIType_Stereotypes_IArgument.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIType_Stereotypes_IAssociationClass.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIType_Stereotypes_IAssociationClass.gif
new file mode 100755
index 0000000..671932c
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIType_Stereotypes_IAssociationClass.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIType_Stereotypes_IAttribute.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIType_Stereotypes_IAttribute.gif
new file mode 100755
index 0000000..7926c34
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIType_Stereotypes_IAttribute.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIType_Stereotypes_IClass.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIType_Stereotypes_IClass.gif
new file mode 100755
index 0000000..5236dce
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIType_Stereotypes_IClass.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIType_Stereotypes_IClassifier.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIType_Stereotypes_IClassifier.gif
new file mode 100755
index 0000000..60ba3f3
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIType_Stereotypes_IClassifier.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIType_Stereotypes_ICollaborationDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIType_Stereotypes_ICollaborationDiagram.gif
new file mode 100755
index 0000000..c5afe8f
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIType_Stereotypes_ICollaborationDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIType_Stereotypes_IComment.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIType_Stereotypes_IComment.gif
new file mode 100755
index 0000000..22e102f
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIType_Stereotypes_IComment.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIType_Stereotypes_IComponent.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIType_Stereotypes_IComponent.gif
new file mode 100755
index 0000000..eb470e4
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIType_Stereotypes_IComponent.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIType_Stereotypes_IComponentDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIType_Stereotypes_IComponentDiagram.gif
new file mode 100755
index 0000000..e25ba66
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIType_Stereotypes_IComponentDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIType_Stereotypes_IConstraint.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIType_Stereotypes_IConstraint.gif
new file mode 100755
index 0000000..c73000c
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIType_Stereotypes_IConstraint.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIType_Stereotypes_IControlledFile.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIType_Stereotypes_IControlledFile.gif
new file mode 100755
index 0000000..88f87ee
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIType_Stereotypes_IControlledFile.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIType_Stereotypes_IDeploymentDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIType_Stereotypes_IDeploymentDiagram.gif
new file mode 100755
index 0000000..e87d147
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIType_Stereotypes_IDeploymentDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIType_Stereotypes_IDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIType_Stereotypes_IDiagram.gif
new file mode 100755
index 0000000..ea090fc
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIType_Stereotypes_IDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIType_Stereotypes_IEvent.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIType_Stereotypes_IEvent.gif
new file mode 100755
index 0000000..eb470e4
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIType_Stereotypes_IEvent.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIType_Stereotypes_IEventReception.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIType_Stereotypes_IEventReception.gif
new file mode 100755
index 0000000..4fc15c1
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIType_Stereotypes_IEventReception.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIType_Stereotypes_IFile.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIType_Stereotypes_IFile.gif
new file mode 100755
index 0000000..903b681
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIType_Stereotypes_IFile.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIType_Stereotypes_IFlowItem.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIType_Stereotypes_IFlowItem.gif
new file mode 100755
index 0000000..0915e40
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIType_Stereotypes_IFlowItem.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIType_Stereotypes_IInstance.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIType_Stereotypes_IInstance.gif
new file mode 100755
index 0000000..e83e884
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIType_Stereotypes_IInstance.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIType_Stereotypes_IInterfaceItem.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIType_Stereotypes_IInterfaceItem.gif
new file mode 100755
index 0000000..ea090fc
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIType_Stereotypes_IInterfaceItem.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIType_Stereotypes_ILink.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIType_Stereotypes_ILink.gif
new file mode 100755
index 0000000..d056aaf
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIType_Stereotypes_ILink.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIType_Stereotypes_IMatrixLayout.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIType_Stereotypes_IMatrixLayout.gif
new file mode 100755
index 0000000..e8ecad3
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIType_Stereotypes_IMatrixLayout.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIType_Stereotypes_IMatrixView.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIType_Stereotypes_IMatrixView.gif
new file mode 100755
index 0000000..eb470e4
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIType_Stereotypes_IMatrixView.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIType_Stereotypes_IModule.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIType_Stereotypes_IModule.gif
new file mode 100755
index 0000000..7732968
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIType_Stereotypes_IModule.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIType_Stereotypes_INode.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIType_Stereotypes_INode.gif
new file mode 100755
index 0000000..e30d6c5
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIType_Stereotypes_INode.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIType_Stereotypes_IObjectModelDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIType_Stereotypes_IObjectModelDiagram.gif
new file mode 100755
index 0000000..7754e2a
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIType_Stereotypes_IObjectModelDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIType_Stereotypes_IOperation.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIType_Stereotypes_IOperation.gif
new file mode 100755
index 0000000..e87d147
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIType_Stereotypes_IOperation.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIType_Stereotypes_IPackage.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIType_Stereotypes_IPackage.gif
new file mode 100755
index 0000000..e7f1996
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIType_Stereotypes_IPackage.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIType_Stereotypes_IPanelDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIType_Stereotypes_IPanelDiagram.gif
new file mode 100755
index 0000000..903b681
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIType_Stereotypes_IPanelDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIType_Stereotypes_IPort.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIType_Stereotypes_IPort.gif
new file mode 100755
index 0000000..eb470e4
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIType_Stereotypes_IPort.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIType_Stereotypes_IProfile.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIType_Stereotypes_IProfile.gif
new file mode 100755
index 0000000..c73000c
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIType_Stereotypes_IProfile.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIType_Stereotypes_IProject.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIType_Stereotypes_IProject.gif
new file mode 100755
index 0000000..4805430
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIType_Stereotypes_IProject.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIType_Stereotypes_IRelation.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIType_Stereotypes_IRelation.gif
new file mode 100755
index 0000000..c6a162d
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIType_Stereotypes_IRelation.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIType_Stereotypes_IRequirement.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIType_Stereotypes_IRequirement.gif
new file mode 100755
index 0000000..89970fb
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIType_Stereotypes_IRequirement.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIType_Stereotypes_ISequenceDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIType_Stereotypes_ISequenceDiagram.gif
new file mode 100755
index 0000000..7ca3215
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIType_Stereotypes_ISequenceDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIType_Stereotypes_IStateChart.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIType_Stereotypes_IStateChart.gif
new file mode 100755
index 0000000..62e47f6
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIType_Stereotypes_IStateChart.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIType_Stereotypes_IStateChartDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIType_Stereotypes_IStateChartDiagram.gif
new file mode 100755
index 0000000..7ca3215
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIType_Stereotypes_IStateChartDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIType_Stereotypes_IStereotype.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIType_Stereotypes_IStereotype.gif
new file mode 100755
index 0000000..89970fb
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIType_Stereotypes_IStereotype.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIType_Stereotypes_IStructureDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIType_Stereotypes_IStructureDiagram.gif
new file mode 100755
index 0000000..e853fb3
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIType_Stereotypes_IStructureDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIType_Stereotypes_ISysMLPort.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIType_Stereotypes_ISysMLPort.gif
new file mode 100755
index 0000000..7732968
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIType_Stereotypes_ISysMLPort.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIType_Stereotypes_ITableLayout.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIType_Stereotypes_ITableLayout.gif
new file mode 100755
index 0000000..ea090fc
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIType_Stereotypes_ITableLayout.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIType_Stereotypes_ITableView.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIType_Stereotypes_ITableView.gif
new file mode 100755
index 0000000..7ca3215
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIType_Stereotypes_ITableView.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIType_Stereotypes_ITag.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIType_Stereotypes_ITag.gif
new file mode 100755
index 0000000..4f7f353
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIType_Stereotypes_ITag.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIType_Stereotypes_ITemplateParameter.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIType_Stereotypes_ITemplateParameter.gif
new file mode 100755
index 0000000..7754e2a
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIType_Stereotypes_ITemplateParameter.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIType_Stereotypes_IType.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIType_Stereotypes_IType.gif
new file mode 100755
index 0000000..799d63b
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIType_Stereotypes_IType.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIType_Stereotypes_IUnit.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIType_Stereotypes_IUnit.gif
new file mode 100755
index 0000000..7f8ea13
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIType_Stereotypes_IUnit.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIType_Stereotypes_IUseCase.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIType_Stereotypes_IUseCase.gif
new file mode 100755
index 0000000..e25ba66
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIType_Stereotypes_IUseCase.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIType_Stereotypes_IUseCaseDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIType_Stereotypes_IUseCaseDiagram.gif
new file mode 100755
index 0000000..22e102f
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIType_Stereotypes_IUseCaseDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIType_Stereotypes_IVariable.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIType_Stereotypes_IVariable.gif
new file mode 100755
index 0000000..7ca3215
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIType_Stereotypes_IVariable.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIType_Tags_ITag.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIType_Tags_ITag.gif
new file mode 100755
index 0000000..4f7f353
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIType_Tags_ITag.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIType_description_IDescription.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIType_description_IDescription.gif
new file mode 100755
index 0000000..22e102f
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIType_description_IDescription.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIType_properties_IPropertyContainer.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIType_properties_IPropertyContainer.gif
new file mode 100755
index 0000000..e564f3f
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIType_properties_IPropertyContainer.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIUCDiagram_graphicChart_CGIClassChart.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIUCDiagram_graphicChart_CGIClassChart.gif
new file mode 100755
index 0000000..108f036
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIUCDiagram_graphicChart_CGIClassChart.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIUCDiagram_properties_IPropertyContainer.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIUCDiagram_properties_IPropertyContainer.gif
new file mode 100755
index 0000000..6252ba0
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIUCDiagram_properties_IPropertyContainer.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIUseCase_Annotations_IAnnotation.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIUseCase_Annotations_IAnnotation.gif
new file mode 100755
index 0000000..90ccce9
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIUseCase_Annotations_IAnnotation.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIUseCase_Annotations_IComment.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIUseCase_Annotations_IComment.gif
new file mode 100755
index 0000000..d53ad79
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIUseCase_Annotations_IComment.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIUseCase_Annotations_IConstraint.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIUseCase_Annotations_IConstraint.gif
new file mode 100755
index 0000000..5da9e2d
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIUseCase_Annotations_IConstraint.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIUseCase_Annotations_IRequirement.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIUseCase_Annotations_IRequirement.gif
new file mode 100755
index 0000000..41e42ed
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIUseCase_Annotations_IRequirement.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIUseCase_Associations_IAssociationEnd.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIUseCase_Associations_IAssociationEnd.gif
new file mode 100755
index 0000000..a3e4ead
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIUseCase_Associations_IAssociationEnd.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIUseCase_Associations_IBlock.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIUseCase_Associations_IBlock.gif
new file mode 100755
index 0000000..261e05c
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIUseCase_Associations_IBlock.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIUseCase_Associations_IModule.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIUseCase_Associations_IModule.gif
new file mode 100755
index 0000000..392d0d1
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIUseCase_Associations_IModule.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIUseCase_Associations_IPart.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIUseCase_Associations_IPart.gif
new file mode 100755
index 0000000..fb87467
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIUseCase_Associations_IPart.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIUseCase_Attrs_IAttribute.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIUseCase_Attrs_IAttribute.gif
new file mode 100755
index 0000000..55ee60b
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIUseCase_Attrs_IAttribute.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIUseCase_Declaratives_IAcceptEventAction.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIUseCase_Declaratives_IAcceptEventAction.gif
new file mode 100755
index 0000000..5da9e2d
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIUseCase_Declaratives_IAcceptEventAction.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIUseCase_Declaratives_IAcceptTimeEvent.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIUseCase_Declaratives_IAcceptTimeEvent.gif
new file mode 100755
index 0000000..de1bf6d
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIUseCase_Declaratives_IAcceptTimeEvent.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIUseCase_Declaratives_IActivityDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIUseCase_Declaratives_IActivityDiagram.gif
new file mode 100755
index 0000000..a8d71d8
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIUseCase_Declaratives_IActivityDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIUseCase_Declaratives_IActivityGraph.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIUseCase_Declaratives_IActivityGraph.gif
new file mode 100755
index 0000000..b19f90c
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIUseCase_Declaratives_IActivityGraph.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIUseCase_Declaratives_IActor.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIUseCase_Declaratives_IActor.gif
new file mode 100755
index 0000000..5a78e87
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIUseCase_Declaratives_IActor.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIUseCase_Declaratives_IAssociationClass.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIUseCase_Declaratives_IAssociationClass.gif
new file mode 100755
index 0000000..930f743
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIUseCase_Declaratives_IAssociationClass.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIUseCase_Declaratives_IAttribute.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIUseCase_Declaratives_IAttribute.gif
new file mode 100755
index 0000000..55ee60b
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIUseCase_Declaratives_IAttribute.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIUseCase_Declaratives_ICallOperation.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIUseCase_Declaratives_ICallOperation.gif
new file mode 100755
index 0000000..fc1a2e8
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIUseCase_Declaratives_ICallOperation.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIUseCase_Declaratives_IClass.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIUseCase_Declaratives_IClass.gif
new file mode 100755
index 0000000..c4524ef
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIUseCase_Declaratives_IClass.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIUseCase_Declaratives_ICodeGenConfigInfo.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIUseCase_Declaratives_ICodeGenConfigInfo.gif
new file mode 100755
index 0000000..e1982d4
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIUseCase_Declaratives_ICodeGenConfigInfo.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIUseCase_Declaratives_ICollaborationDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIUseCase_Declaratives_ICollaborationDiagram.gif
new file mode 100755
index 0000000..3ddab58
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIUseCase_Declaratives_ICollaborationDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIUseCase_Declaratives_IComponent.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIUseCase_Declaratives_IComponent.gif
new file mode 100755
index 0000000..de1bf6d
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIUseCase_Declaratives_IComponent.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIUseCase_Declaratives_IComponentDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIUseCase_Declaratives_IComponentDiagram.gif
new file mode 100755
index 0000000..e07c4ed
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIUseCase_Declaratives_IComponentDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIUseCase_Declaratives_IDefaultDrvdTrans.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIUseCase_Declaratives_IDefaultDrvdTrans.gif
new file mode 100755
index 0000000..4b9f986
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIUseCase_Declaratives_IDefaultDrvdTrans.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIUseCase_Declaratives_IDependency.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIUseCase_Declaratives_IDependency.gif
new file mode 100755
index 0000000..4c179d8
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIUseCase_Declaratives_IDependency.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIUseCase_Declaratives_IDeploymentDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIUseCase_Declaratives_IDeploymentDiagram.gif
new file mode 100755
index 0000000..780caea
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIUseCase_Declaratives_IDeploymentDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIUseCase_Declaratives_IDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIUseCase_Declaratives_IDiagram.gif
new file mode 100755
index 0000000..3b5e749
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIUseCase_Declaratives_IDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIUseCase_Declaratives_IHyperLink.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIUseCase_Declaratives_IHyperLink.gif
new file mode 100755
index 0000000..8fc2166
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIUseCase_Declaratives_IHyperLink.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIUseCase_Declaratives_IInformationFlow.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIUseCase_Declaratives_IInformationFlow.gif
new file mode 100755
index 0000000..de1bf6d
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIUseCase_Declaratives_IInformationFlow.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIUseCase_Declaratives_IInformationItem.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIUseCase_Declaratives_IInformationItem.gif
new file mode 100755
index 0000000..5a78e87
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIUseCase_Declaratives_IInformationItem.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIUseCase_Declaratives_IMSC.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIUseCase_Declaratives_IMSC.gif
new file mode 100755
index 0000000..5da9e2d
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIUseCase_Declaratives_IMSC.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIUseCase_Declaratives_IMatrixInstance.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIUseCase_Declaratives_IMatrixInstance.gif
new file mode 100755
index 0000000..261e05c
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIUseCase_Declaratives_IMatrixInstance.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIUseCase_Declaratives_IMessage.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIUseCase_Declaratives_IMessage.gif
new file mode 100755
index 0000000..993d090
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIUseCase_Declaratives_IMessage.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIUseCase_Declaratives_IModule.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIUseCase_Declaratives_IModule.gif
new file mode 100755
index 0000000..392d0d1
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIUseCase_Declaratives_IModule.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIUseCase_Declaratives_IObjectLink.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIUseCase_Declaratives_IObjectLink.gif
new file mode 100755
index 0000000..968ffa6
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIUseCase_Declaratives_IObjectLink.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIUseCase_Declaratives_IObjectModelDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIUseCase_Declaratives_IObjectModelDiagram.gif
new file mode 100755
index 0000000..64b04a5
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIUseCase_Declaratives_IObjectModelDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIUseCase_Declaratives_IObjectNode.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIUseCase_Declaratives_IObjectNode.gif
new file mode 100755
index 0000000..879a7fb
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIUseCase_Declaratives_IObjectNode.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIUseCase_Declaratives_IPanelDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIUseCase_Declaratives_IPanelDiagram.gif
new file mode 100755
index 0000000..b19f90c
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIUseCase_Declaratives_IPanelDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIUseCase_Declaratives_IPart.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIUseCase_Declaratives_IPart.gif
new file mode 100755
index 0000000..fb87467
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIUseCase_Declaratives_IPart.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIUseCase_Declaratives_IPrimitiveOperation.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIUseCase_Declaratives_IPrimitiveOperation.gif
new file mode 100755
index 0000000..930f743
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIUseCase_Declaratives_IPrimitiveOperation.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIUseCase_Declaratives_IProfile.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIUseCase_Declaratives_IProfile.gif
new file mode 100755
index 0000000..5da9e2d
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIUseCase_Declaratives_IProfile.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIUseCase_Declaratives_IReception.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIUseCase_Declaratives_IReception.gif
new file mode 100755
index 0000000..9fff14a
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIUseCase_Declaratives_IReception.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIUseCase_Declaratives_IReferenceActivity.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIUseCase_Declaratives_IReferenceActivity.gif
new file mode 100755
index 0000000..be37fbc
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIUseCase_Declaratives_IReferenceActivity.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIUseCase_Declaratives_IRequirement.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIUseCase_Declaratives_IRequirement.gif
new file mode 100755
index 0000000..41e42ed
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIUseCase_Declaratives_IRequirement.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIUseCase_Declaratives_ISequenceDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIUseCase_Declaratives_ISequenceDiagram.gif
new file mode 100755
index 0000000..85e7906
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIUseCase_Declaratives_ISequenceDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIUseCase_Declaratives_IState.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIUseCase_Declaratives_IState.gif
new file mode 100755
index 0000000..cecc757
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIUseCase_Declaratives_IState.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIUseCase_Declaratives_IStateChart.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIUseCase_Declaratives_IStateChart.gif
new file mode 100755
index 0000000..8fc2166
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIUseCase_Declaratives_IStateChart.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIUseCase_Declaratives_IStateChartDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIUseCase_Declaratives_IStateChartDiagram.gif
new file mode 100755
index 0000000..85e7906
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIUseCase_Declaratives_IStateChartDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIUseCase_Declaratives_IStereotype.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIUseCase_Declaratives_IStereotype.gif
new file mode 100755
index 0000000..41e42ed
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIUseCase_Declaratives_IStereotype.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIUseCase_Declaratives_IStructureDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIUseCase_Declaratives_IStructureDiagram.gif
new file mode 100755
index 0000000..90ccce9
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIUseCase_Declaratives_IStructureDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIUseCase_Declaratives_ISubsystem.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIUseCase_Declaratives_ISubsystem.gif
new file mode 100755
index 0000000..2a3bcb3
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIUseCase_Declaratives_ISubsystem.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIUseCase_Declaratives_ISysMLPort.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIUseCase_Declaratives_ISysMLPort.gif
new file mode 100755
index 0000000..392d0d1
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIUseCase_Declaratives_ISysMLPort.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIUseCase_Declaratives_ITableInstance.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIUseCase_Declaratives_ITableInstance.gif
new file mode 100755
index 0000000..9fff14a
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIUseCase_Declaratives_ITableInstance.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIUseCase_Declaratives_ITransition.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIUseCase_Declaratives_ITransition.gif
new file mode 100755
index 0000000..af9f818
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIUseCase_Declaratives_ITransition.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIUseCase_Declaratives_IType.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIUseCase_Declaratives_IType.gif
new file mode 100755
index 0000000..0fb82fc
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIUseCase_Declaratives_IType.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIUseCase_Declaratives_IUCDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIUseCase_Declaratives_IUCDiagram.gif
new file mode 100755
index 0000000..974a35b
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIUseCase_Declaratives_IUCDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIUseCase_Declaratives_IUseCase.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIUseCase_Declaratives_IUseCase.gif
new file mode 100755
index 0000000..e07c4ed
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIUseCase_Declaratives_IUseCase.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIUseCase_Declaratives_IUseCaseDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIUseCase_Declaratives_IUseCaseDiagram.gif
new file mode 100755
index 0000000..d53ad79
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIUseCase_Declaratives_IUseCaseDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIUseCase_Dependencies_IDependency.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIUseCase_Dependencies_IDependency.gif
new file mode 100755
index 0000000..4c179d8
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIUseCase_Dependencies_IDependency.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIUseCase_Dependencies_IHyperLink.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIUseCase_Dependencies_IHyperLink.gif
new file mode 100755
index 0000000..8fc2166
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIUseCase_Dependencies_IHyperLink.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIUseCase_Diagrams_IAssociationClass.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIUseCase_Diagrams_IAssociationClass.gif
new file mode 100755
index 0000000..930f743
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIUseCase_Diagrams_IAssociationClass.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIUseCase_Diagrams_IClass.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIUseCase_Diagrams_IClass.gif
new file mode 100755
index 0000000..c4524ef
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIUseCase_Diagrams_IClass.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIUseCase_Diagrams_ICollaborationDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIUseCase_Diagrams_ICollaborationDiagram.gif
new file mode 100755
index 0000000..3ddab58
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIUseCase_Diagrams_ICollaborationDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIUseCase_Diagrams_IComponent.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIUseCase_Diagrams_IComponent.gif
new file mode 100755
index 0000000..de1bf6d
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIUseCase_Diagrams_IComponent.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIUseCase_Diagrams_IComponentDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIUseCase_Diagrams_IComponentDiagram.gif
new file mode 100755
index 0000000..e07c4ed
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIUseCase_Diagrams_IComponentDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIUseCase_Diagrams_IDeploymentDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIUseCase_Diagrams_IDeploymentDiagram.gif
new file mode 100755
index 0000000..780caea
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIUseCase_Diagrams_IDeploymentDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIUseCase_Diagrams_IDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIUseCase_Diagrams_IDiagram.gif
new file mode 100755
index 0000000..3b5e749
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIUseCase_Diagrams_IDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIUseCase_Diagrams_IInformationFlow.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIUseCase_Diagrams_IInformationFlow.gif
new file mode 100755
index 0000000..de1bf6d
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIUseCase_Diagrams_IInformationFlow.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIUseCase_Diagrams_IInformationItem.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIUseCase_Diagrams_IInformationItem.gif
new file mode 100755
index 0000000..5a78e87
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIUseCase_Diagrams_IInformationItem.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIUseCase_Diagrams_IMSC.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIUseCase_Diagrams_IMSC.gif
new file mode 100755
index 0000000..5da9e2d
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIUseCase_Diagrams_IMSC.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIUseCase_Diagrams_IObjectModelDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIUseCase_Diagrams_IObjectModelDiagram.gif
new file mode 100755
index 0000000..64b04a5
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIUseCase_Diagrams_IObjectModelDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIUseCase_Diagrams_IPanelDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIUseCase_Diagrams_IPanelDiagram.gif
new file mode 100755
index 0000000..b19f90c
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIUseCase_Diagrams_IPanelDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIUseCase_Diagrams_ISequenceDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIUseCase_Diagrams_ISequenceDiagram.gif
new file mode 100755
index 0000000..85e7906
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIUseCase_Diagrams_ISequenceDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIUseCase_Diagrams_IStateChart.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIUseCase_Diagrams_IStateChart.gif
new file mode 100755
index 0000000..8fc2166
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIUseCase_Diagrams_IStateChart.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIUseCase_Diagrams_IStateChartDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIUseCase_Diagrams_IStateChartDiagram.gif
new file mode 100755
index 0000000..85e7906
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIUseCase_Diagrams_IStateChartDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIUseCase_Diagrams_IStereotype.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIUseCase_Diagrams_IStereotype.gif
new file mode 100755
index 0000000..41e42ed
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIUseCase_Diagrams_IStereotype.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIUseCase_Diagrams_IStructureDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIUseCase_Diagrams_IStructureDiagram.gif
new file mode 100755
index 0000000..90ccce9
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIUseCase_Diagrams_IStructureDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIUseCase_Diagrams_ISubsystem.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIUseCase_Diagrams_ISubsystem.gif
new file mode 100755
index 0000000..2a3bcb3
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIUseCase_Diagrams_ISubsystem.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIUseCase_Diagrams_IType.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIUseCase_Diagrams_IType.gif
new file mode 100755
index 0000000..0fb82fc
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIUseCase_Diagrams_IType.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIUseCase_Diagrams_IUCDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIUseCase_Diagrams_IUCDiagram.gif
new file mode 100755
index 0000000..974a35b
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIUseCase_Diagrams_IUCDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIUseCase_Diagrams_IUseCaseDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIUseCase_Diagrams_IUseCaseDiagram.gif
new file mode 100755
index 0000000..d53ad79
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIUseCase_Diagrams_IUseCaseDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIUseCase_EmbededFiles_IEmbededFile.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIUseCase_EmbededFiles_IEmbededFile.gif
new file mode 100755
index 0000000..9fff14a
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIUseCase_EmbededFiles_IEmbededFile.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIUseCase_HyperLinks_IMHyperLink.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIUseCase_HyperLinks_IMHyperLink.gif
new file mode 100755
index 0000000..a3e4ead
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIUseCase_HyperLinks_IMHyperLink.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIUseCase_Inheritances_IGeneralization.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIUseCase_Inheritances_IGeneralization.gif
new file mode 100755
index 0000000..3ee6d16
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIUseCase_Inheritances_IGeneralization.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIUseCase_ObjectLinks_IObjectLink.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIUseCase_ObjectLinks_IObjectLink.gif
new file mode 100755
index 0000000..968ffa6
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIUseCase_ObjectLinks_IObjectLink.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIUseCase_Operations_IConstructor.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIUseCase_Operations_IConstructor.gif
new file mode 100755
index 0000000..519be70
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIUseCase_Operations_IConstructor.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIUseCase_Operations_IDestructor.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIUseCase_Operations_IDestructor.gif
new file mode 100755
index 0000000..4b9f986
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIUseCase_Operations_IDestructor.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIUseCase_Operations_IPrimitiveOperation.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIUseCase_Operations_IPrimitiveOperation.gif
new file mode 100755
index 0000000..930f743
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIUseCase_Operations_IPrimitiveOperation.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIUseCase_Operations_IReception.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIUseCase_Operations_IReception.gif
new file mode 100755
index 0000000..9fff14a
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIUseCase_Operations_IReception.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIUseCase_Operations_ITriggered.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIUseCase_Operations_ITriggered.gif
new file mode 100755
index 0000000..9d2db8f
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIUseCase_Operations_ITriggered.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIUseCase_StateCharts_IActivityGraph.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIUseCase_StateCharts_IActivityGraph.gif
new file mode 100755
index 0000000..b19f90c
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIUseCase_StateCharts_IActivityGraph.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIUseCase_UseCaseStereoTypes_IUseCaseStereoType.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIUseCase_UseCaseStereoTypes_IUseCaseStereoType.gif
new file mode 100755
index 0000000..eb658f3
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIUseCase_UseCaseStereoTypes_IUseCaseStereoType.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIUseCase_description_IDescription.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIUseCase_description_IDescription.gif
new file mode 100755
index 0000000..d53ad79
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIUseCase_description_IDescription.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIUseCase_properties_IPropertyContainer.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIUseCase_properties_IPropertyContainer.gif
new file mode 100755
index 0000000..d022471
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIUseCase_properties_IPropertyContainer.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIVariable_myTypeOf_IType.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIVariable_myTypeOf_IType.gif
new file mode 100755
index 0000000..889f3af
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateIVariable_myTypeOf_IType.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateLinksType_otherClass_IClassHandle.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateLinksType_otherClass_IClassHandle.gif
new file mode 100755
index 0000000..f73697b
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateLinksType_otherClass_IClassHandle.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateM_hTargetType_description_IDescription.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateM_hTargetType_description_IDescription.gif
new file mode 100755
index 0000000..a31e514
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateM_hTargetType_description_IDescription.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateM_hTargetType_properties_IPropertyContainer.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateM_hTargetType_properties_IPropertyContainer.gif
new file mode 100755
index 0000000..47209ba
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateM_hTargetType_properties_IPropertyContainer.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateNestedStateChartType_Connectors_IAcceptEventAction.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateNestedStateChartType_Connectors_IAcceptEventAction.gif
new file mode 100755
index 0000000..0a27561
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateNestedStateChartType_Connectors_IAcceptEventAction.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateNestedStateChartType_Connectors_IAcceptTimeEvent.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateNestedStateChartType_Connectors_IAcceptTimeEvent.gif
new file mode 100755
index 0000000..4ffa17e
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateNestedStateChartType_Connectors_IAcceptTimeEvent.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateNestedStateChartType_Connectors_IBranch.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateNestedStateChartType_Connectors_IBranch.gif
new file mode 100755
index 0000000..3f8d415
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateNestedStateChartType_Connectors_IBranch.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateNestedStateChartType_Connectors_ICallOperation.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateNestedStateChartType_Connectors_ICallOperation.gif
new file mode 100755
index 0000000..a86f915
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateNestedStateChartType_Connectors_ICallOperation.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateNestedStateChartType_Connectors_IConnector.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateNestedStateChartType_Connectors_IConnector.gif
new file mode 100755
index 0000000..ab7abfd
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateNestedStateChartType_Connectors_IConnector.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateNestedStateChartType_Connectors_IFork.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateNestedStateChartType_Connectors_IFork.gif
new file mode 100755
index 0000000..62e1e1a
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateNestedStateChartType_Connectors_IFork.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateNestedStateChartType_Connectors_IHistoryConnector.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateNestedStateChartType_Connectors_IHistoryConnector.gif
new file mode 100755
index 0000000..452784a
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateNestedStateChartType_Connectors_IHistoryConnector.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateNestedStateChartType_Connectors_IObjectNode.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateNestedStateChartType_Connectors_IObjectNode.gif
new file mode 100755
index 0000000..8b750f7
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateNestedStateChartType_Connectors_IObjectNode.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateNestedStateChartType_Connectors_IPin.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateNestedStateChartType_Connectors_IPin.gif
new file mode 100755
index 0000000..929686b
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateNestedStateChartType_Connectors_IPin.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateNestedStateChartType_Connectors_IReferenceActivity.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateNestedStateChartType_Connectors_IReferenceActivity.gif
new file mode 100755
index 0000000..1ded75d
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateNestedStateChartType_Connectors_IReferenceActivity.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateNestedStateChartType_Connectors_IState.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateNestedStateChartType_Connectors_IState.gif
new file mode 100755
index 0000000..d55104d
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateNestedStateChartType_Connectors_IState.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateNestedStateChartType_Connectors_ITimeEvent.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateNestedStateChartType_Connectors_ITimeEvent.gif
new file mode 100755
index 0000000..aa18636
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateNestedStateChartType_Connectors_ITimeEvent.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateNestedStateChartType_Transitions_IDefaultDrvdTrans.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateNestedStateChartType_Transitions_IDefaultDrvdTrans.gif
new file mode 100755
index 0000000..52a37ba
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateNestedStateChartType_Transitions_IDefaultDrvdTrans.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateNestedStateChartType_Transitions_ITransition.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateNestedStateChartType_Transitions_ITransition.gif
new file mode 100755
index 0000000..aa18636
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateNestedStateChartType_Transitions_ITransition.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateNestedStateChartType_graphicChart_CGIStateChart.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateNestedStateChartType_graphicChart_CGIStateChart.gif
new file mode 100755
index 0000000..013290d
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateNestedStateChartType_graphicChart_CGIStateChart.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateTheMainDiagramType_description_IDescription.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateTheMainDiagramType_description_IDescription.gif
new file mode 100755
index 0000000..91bb42f
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateTheMainDiagramType_description_IDescription.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateToLinkType_implicitClass_IAssociationClass.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateToLinkType_implicitClass_IAssociationClass.gif
new file mode 100755
index 0000000..bbf242d
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateToLinkType_implicitClass_IAssociationClass.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateToLinkType_implicitClass_IClass.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateToLinkType_implicitClass_IClass.gif
new file mode 100755
index 0000000..f08356e
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateToLinkType_implicitClass_IClass.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateToLinkType_implicitClass_IStateChart.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateToLinkType_implicitClass_IStateChart.gif
new file mode 100755
index 0000000..37dad61
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateToLinkType_implicitClass_IStateChart.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateTransitionsType_description_IDescription.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateTransitionsType_description_IDescription.gif
new file mode 100755
index 0000000..d01836d
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateTransitionsType_description_IDescription.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateTransitionsType_itsLabel_ILabel.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateTransitionsType_itsLabel_ILabel.gif
new file mode 100755
index 0000000..c345ca5
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/ctool16/CreateTransitionsType_itsLabel_ILabel.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/CCollaborationChart.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/CCollaborationChart.gif
new file mode 100755
index 0000000..badaab0
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/CCollaborationChart.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/CGIActionState.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/CGIActionState.gif
new file mode 100755
index 0000000..2124f3e
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/CGIActionState.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/CGIActiveX.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/CGIActiveX.gif
new file mode 100755
index 0000000..5a9bc75
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/CGIActiveX.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/CGIAnchor.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/CGIAnchor.gif
new file mode 100755
index 0000000..a17dc7d
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/CGIAnchor.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/CGIAnnotation.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/CGIAnnotation.gif
new file mode 100755
index 0000000..c4fb30e
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/CGIAnnotation.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/CGIArrow.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/CGIArrow.gif
new file mode 100755
index 0000000..134551b
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/CGIArrow.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/CGIAssociationEnd.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/CGIAssociationEnd.gif
new file mode 100755
index 0000000..05dc74a
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/CGIAssociationEnd.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/CGIAssociationRole.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/CGIAssociationRole.gif
new file mode 100755
index 0000000..1e5345f
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/CGIAssociationRole.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/CGIBasicClass.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/CGIBasicClass.gif
new file mode 100755
index 0000000..420eee1
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/CGIBasicClass.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/CGIBlockState.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/CGIBlockState.gif
new file mode 100755
index 0000000..106881e
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/CGIBlockState.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/CGIBox.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/CGIBox.gif
new file mode 100755
index 0000000..498364f
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/CGIBox.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/CGIButtonArray.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/CGIButtonArray.gif
new file mode 100755
index 0000000..c414fe9
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/CGIButtonArray.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/CGIClass.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/CGIClass.gif
new file mode 100755
index 0000000..be22463
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/CGIClass.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/CGIClassChart.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/CGIClassChart.gif
new file mode 100755
index 0000000..f8041d2
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/CGIClassChart.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/CGIClassifierRole.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/CGIClassifierRole.gif
new file mode 100755
index 0000000..9250fec
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/CGIClassifierRole.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/CGICompartment.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/CGICompartment.gif
new file mode 100755
index 0000000..afb82ea
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/CGICompartment.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/CGIComponent.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/CGIComponent.gif
new file mode 100755
index 0000000..c4a8af4
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/CGIComponent.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/CGICompositeClass.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/CGICompositeClass.gif
new file mode 100755
index 0000000..ef56c14
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/CGICompositeClass.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/CGIConnector.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/CGIConnector.gif
new file mode 100755
index 0000000..5a9bc75
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/CGIConnector.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/CGIContainArrow.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/CGIContainArrow.gif
new file mode 100755
index 0000000..c8d381f
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/CGIContainArrow.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/CGIDiagramFrame.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/CGIDiagramFrame.gif
new file mode 100755
index 0000000..9250fec
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/CGIDiagramFrame.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/CGIFreeShape.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/CGIFreeShape.gif
new file mode 100755
index 0000000..7c2aaac
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/CGIFreeShape.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/CGIFreeText.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/CGIFreeText.gif
new file mode 100755
index 0000000..c414fe9
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/CGIFreeText.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/CGIGenericElement.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/CGIGenericElement.gif
new file mode 100755
index 0000000..10d2229
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/CGIGenericElement.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/CGIImage.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/CGIImage.gif
new file mode 100755
index 0000000..498364f
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/CGIImage.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/CGIImageData.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/CGIImageData.gif
new file mode 100755
index 0000000..33854e9
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/CGIImageData.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/CGIInformationFlow.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/CGIInformationFlow.gif
new file mode 100755
index 0000000..c4a8af4
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/CGIInformationFlow.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/CGIInheritance.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/CGIInheritance.gif
new file mode 100755
index 0000000..7c2aaac
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/CGIInheritance.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/CGIMFCCtrl.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/CGIMFCCtrl.gif
new file mode 100755
index 0000000..14af8aa
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/CGIMFCCtrl.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/CGIMessageLabel.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/CGIMessageLabel.gif
new file mode 100755
index 0000000..d3dc5a9
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/CGIMessageLabel.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/CGIMscChart.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/CGIMscChart.gif
new file mode 100755
index 0000000..a17dc7d
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/CGIMscChart.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/CGIMscColumnCR.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/CGIMscColumnCR.gif
new file mode 100755
index 0000000..33a997a
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/CGIMscColumnCR.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/CGIMscConditionMark.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/CGIMscConditionMark.gif
new file mode 100755
index 0000000..b3643da
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/CGIMscConditionMark.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/CGIMscExecutionOccurrence.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/CGIMscExecutionOccurrence.gif
new file mode 100755
index 0000000..cdd3b76
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/CGIMscExecutionOccurrence.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/CGIMscInteractionOccurrence.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/CGIMscInteractionOccurrence.gif
new file mode 100755
index 0000000..4365960
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/CGIMscInteractionOccurrence.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/CGIMscInteractionOperand.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/CGIMscInteractionOperand.gif
new file mode 100755
index 0000000..739ebbf
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/CGIMscInteractionOperand.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/CGIMscInteractionOperator.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/CGIMscInteractionOperator.gif
new file mode 100755
index 0000000..134551b
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/CGIMscInteractionOperator.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/CGIMscMessage.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/CGIMscMessage.gif
new file mode 100755
index 0000000..f8041d2
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/CGIMscMessage.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/CGIObjectInstance.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/CGIObjectInstance.gif
new file mode 100755
index 0000000..7b7c428
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/CGIObjectInstance.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/CGIObjectLink.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/CGIObjectLink.gif
new file mode 100755
index 0000000..90d10f9
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/CGIObjectLink.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/CGIPackage.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/CGIPackage.gif
new file mode 100755
index 0000000..89ad5da
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/CGIPackage.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/CGIPartition.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/CGIPartition.gif
new file mode 100755
index 0000000..e4b530e
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/CGIPartition.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/CGIPortConnector.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/CGIPortConnector.gif
new file mode 100755
index 0000000..14af8aa
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/CGIPortConnector.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/CGIState.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/CGIState.gif
new file mode 100755
index 0000000..ed87474
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/CGIState.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/CGIStateChart.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/CGIStateChart.gif
new file mode 100755
index 0000000..739ebbf
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/CGIStateChart.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/CGISwimlaneFrame.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/CGISwimlaneFrame.gif
new file mode 100755
index 0000000..b1f8afa
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/CGISwimlaneFrame.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/CGIText.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/CGIText.gif
new file mode 100755
index 0000000..c4a8af4
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/CGIText.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/CGITextBox.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/CGITextBox.gif
new file mode 100755
index 0000000..90d10f9
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/CGITextBox.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/CGITrans.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/CGITrans.gif
new file mode 100755
index 0000000..cb1755a
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/CGITrans.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/CollEvent.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/CollEvent.gif
new file mode 100755
index 0000000..afb82ea
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/CollEvent.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/IAcceptEventAction.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/IAcceptEventAction.gif
new file mode 100755
index 0000000..7b7c428
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/IAcceptEventAction.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/IAcceptTimeEvent.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/IAcceptTimeEvent.gif
new file mode 100755
index 0000000..badaab0
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/IAcceptTimeEvent.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/IAction.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/IAction.gif
new file mode 100755
index 0000000..2124f3e
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/IAction.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/IActivityDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/IActivityDiagram.gif
new file mode 100755
index 0000000..83afb9b
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/IActivityDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/IActivityGraph.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/IActivityGraph.gif
new file mode 100755
index 0000000..c4fb30e
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/IActivityGraph.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/IActor.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/IActor.gif
new file mode 100755
index 0000000..e4bc22d
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/IActor.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/IAnchor.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/IAnchor.gif
new file mode 100755
index 0000000..caf2804
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/IAnchor.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/IAnnotation.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/IAnnotation.gif
new file mode 100755
index 0000000..35ef84e
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/IAnnotation.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/IArgument.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/IArgument.gif
new file mode 100755
index 0000000..afb82ea
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/IArgument.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/IAssociationClass.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/IAssociationClass.gif
new file mode 100755
index 0000000..5915591
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/IAssociationClass.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/IAssociationEnd.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/IAssociationEnd.gif
new file mode 100755
index 0000000..10d2229
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/IAssociationEnd.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/IAssociationEndHandle.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/IAssociationEndHandle.gif
new file mode 100755
index 0000000..2b69256
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/IAssociationEndHandle.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/IAssociationRole.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/IAssociationRole.gif
new file mode 100755
index 0000000..2b69256
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/IAssociationRole.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/IAttribute.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/IAttribute.gif
new file mode 100755
index 0000000..be22463
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/IAttribute.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/IBlock.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/IBlock.gif
new file mode 100755
index 0000000..106881e
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/IBlock.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/IBody.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/IBody.gif
new file mode 100755
index 0000000..106881e
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/IBody.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/IBranch.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/IBranch.gif
new file mode 100755
index 0000000..ea58a65
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/IBranch.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/ICallAction.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/ICallAction.gif
new file mode 100755
index 0000000..cdd3b76
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/ICallAction.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/ICallOperation.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/ICallOperation.gif
new file mode 100755
index 0000000..338fb8d
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/ICallOperation.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/IClass.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/IClass.gif
new file mode 100755
index 0000000..33854e9
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/IClass.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/IClassHandle.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/IClassHandle.gif
new file mode 100755
index 0000000..420eee1
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/IClassHandle.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/IClassInstance.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/IClassInstance.gif
new file mode 100755
index 0000000..c00aedf
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/IClassInstance.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/IClassifier.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/IClassifier.gif
new file mode 100755
index 0000000..ef56c14
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/IClassifier.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/IClassifierRole.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/IClassifierRole.gif
new file mode 100755
index 0000000..cb1755a
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/IClassifierRole.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/ICodeGenConfigInfo.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/ICodeGenConfigInfo.gif
new file mode 100755
index 0000000..4365960
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/ICodeGenConfigInfo.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/ICodeGenConfigInfoHandle.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/ICodeGenConfigInfoHandle.gif
new file mode 100755
index 0000000..c3370c7
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/ICodeGenConfigInfoHandle.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/ICollaboration.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/ICollaboration.gif
new file mode 100755
index 0000000..f8041d2
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/ICollaboration.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/ICollaborationDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/ICollaborationDiagram.gif
new file mode 100755
index 0000000..45731fe
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/ICollaborationDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/IColor.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/IColor.gif
new file mode 100755
index 0000000..89ad5da
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/IColor.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/ICombinedFragment.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/ICombinedFragment.gif
new file mode 100755
index 0000000..9041598
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/ICombinedFragment.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/IComment.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/IComment.gif
new file mode 100755
index 0000000..9041598
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/IComment.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/IComponent.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/IComponent.gif
new file mode 100755
index 0000000..badaab0
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/IComponent.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/IComponentDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/IComponentDiagram.gif
new file mode 100755
index 0000000..afb82ea
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/IComponentDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/IComponentInstance.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/IComponentInstance.gif
new file mode 100755
index 0000000..10d2229
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/IComponentInstance.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/IConfiguration.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/IConfiguration.gif
new file mode 100755
index 0000000..33854e9
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/IConfiguration.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/IConnector.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/IConnector.gif
new file mode 100755
index 0000000..5915591
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/IConnector.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/IConstraint.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/IConstraint.gif
new file mode 100755
index 0000000..7b7c428
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/IConstraint.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/IConstructor.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/IConstructor.gif
new file mode 100755
index 0000000..caf2804
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/IConstructor.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/IContextSpecification.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/IContextSpecification.gif
new file mode 100755
index 0000000..c3370c7
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/IContextSpecification.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/IControlledFile.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/IControlledFile.gif
new file mode 100755
index 0000000..420eee1
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/IControlledFile.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/IDefaultDrvdTrans.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/IDefaultDrvdTrans.gif
new file mode 100755
index 0000000..90d10f9
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/IDefaultDrvdTrans.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/IDependency.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/IDependency.gif
new file mode 100755
index 0000000..ea58a65
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/IDependency.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/IDeploymentDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/IDeploymentDiagram.gif
new file mode 100755
index 0000000..1e5345f
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/IDeploymentDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/IDescription.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/IDescription.gif
new file mode 100755
index 0000000..9041598
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/IDescription.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/IDestructor.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/IDestructor.gif
new file mode 100755
index 0000000..90d10f9
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/IDestructor.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/IDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/IDiagram.gif
new file mode 100755
index 0000000..14af8aa
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/IDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/IEmbededFile.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/IEmbededFile.gif
new file mode 100755
index 0000000..8a5c70c
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/IEmbededFile.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/IEnumerationLiteral.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/IEnumerationLiteral.gif
new file mode 100755
index 0000000..90d10f9
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/IEnumerationLiteral.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/IEvent.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/IEvent.gif
new file mode 100755
index 0000000..badaab0
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/IEvent.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/IEventHandle.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/IEventHandle.gif
new file mode 100755
index 0000000..30f0c48
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/IEventHandle.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/IEventReception.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/IEventReception.gif
new file mode 100755
index 0000000..c673a52
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/IEventReception.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/IExecutionOccurrence.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/IExecutionOccurrence.gif
new file mode 100755
index 0000000..498364f
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/IExecutionOccurrence.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/IExternalHyperlink.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/IExternalHyperlink.gif
new file mode 100755
index 0000000..83afb9b
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/IExternalHyperlink.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/IFile.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/IFile.gif
new file mode 100755
index 0000000..c4fb30e
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/IFile.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/IFileFragment.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/IFileFragment.gif
new file mode 100755
index 0000000..c673a52
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/IFileFragment.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/IFlow.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/IFlow.gif
new file mode 100755
index 0000000..98b351f
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/IFlow.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/IFlowItem.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/IFlowItem.gif
new file mode 100755
index 0000000..48e3cf2
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/IFlowItem.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/IFlowchart.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/IFlowchart.gif
new file mode 100755
index 0000000..e4bc22d
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/IFlowchart.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/IFolder.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/IFolder.gif
new file mode 100755
index 0000000..89ad5da
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/IFolder.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/IFork.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/IFork.gif
new file mode 100755
index 0000000..afb82ea
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/IFork.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/IGeneralization.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/IGeneralization.gif
new file mode 100755
index 0000000..94c953e
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/IGeneralization.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/IGuard.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/IGuard.gif
new file mode 100755
index 0000000..2b69256
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/IGuard.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/IHandleWithData.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/IHandleWithData.gif
new file mode 100755
index 0000000..c414fe9
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/IHandleWithData.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/IHistoryConnector.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/IHistoryConnector.gif
new file mode 100755
index 0000000..f8041d2
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/IHistoryConnector.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/IHyperLink.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/IHyperLink.gif
new file mode 100755
index 0000000..9250fec
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/IHyperLink.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/IInformationFlow.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/IInformationFlow.gif
new file mode 100755
index 0000000..badaab0
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/IInformationFlow.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/IInformationItem.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/IInformationItem.gif
new file mode 100755
index 0000000..e4bc22d
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/IInformationItem.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/IInstance.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/IInstance.gif
new file mode 100755
index 0000000..53500da
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/IInstance.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/IInstanceSlot.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/IInstanceSlot.gif
new file mode 100755
index 0000000..c4a8af4
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/IInstanceSlot.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/IInstanceSpecification.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/IInstanceSpecification.gif
new file mode 100755
index 0000000..afb82ea
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/IInstanceSpecification.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/IInstanceValue.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/IInstanceValue.gif
new file mode 100755
index 0000000..35ef84e
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/IInstanceValue.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/IInteractionOccurrence.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/IInteractionOccurrence.gif
new file mode 100755
index 0000000..badaab0
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/IInteractionOccurrence.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/IInteractionOperand.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/IInteractionOperand.gif
new file mode 100755
index 0000000..e4b530e
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/IInteractionOperand.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/IInteractionOperator.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/IInteractionOperator.gif
new file mode 100755
index 0000000..89ad5da
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/IInteractionOperator.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/IInterfaceItem.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/IInterfaceItem.gif
new file mode 100755
index 0000000..14af8aa
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/IInterfaceItem.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/IInterfaceItemTrigger.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/IInterfaceItemTrigger.gif
new file mode 100755
index 0000000..5a9bc75
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/IInterfaceItemTrigger.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/IInternalHyperlink.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/IInternalHyperlink.gif
new file mode 100755
index 0000000..c414fe9
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/IInternalHyperlink.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/ILabel.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/ILabel.gif
new file mode 100755
index 0000000..c414fe9
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/ILabel.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/ILink.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/ILink.gif
new file mode 100755
index 0000000..106881e
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/ILink.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/ILinkInstance.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/ILinkInstance.gif
new file mode 100755
index 0000000..14af8aa
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/ILinkInstance.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/ILiteralSpecification.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/ILiteralSpecification.gif
new file mode 100755
index 0000000..90d10f9
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/ILiteralSpecification.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/IMHyperLink.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/IMHyperLink.gif
new file mode 100755
index 0000000..10d2229
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/IMHyperLink.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/IMSC.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/IMSC.gif
new file mode 100755
index 0000000..7b7c428
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/IMSC.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/IMatrixInstance.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/IMatrixInstance.gif
new file mode 100755
index 0000000..106881e
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/IMatrixInstance.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/IMatrixLayout.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/IMatrixLayout.gif
new file mode 100755
index 0000000..db7414e
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/IMatrixLayout.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/IMatrixView.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/IMatrixView.gif
new file mode 100755
index 0000000..badaab0
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/IMatrixView.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/IMessage.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/IMessage.gif
new file mode 100755
index 0000000..a17dc7d
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/IMessage.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/IMessagePoint.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/IMessagePoint.gif
new file mode 100755
index 0000000..5a9bc75
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/IMessagePoint.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/IMetaLinkHandle.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/IMetaLinkHandle.gif
new file mode 100755
index 0000000..c8d381f
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/IMetaLinkHandle.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/IModelElement.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/IModelElement.gif
new file mode 100755
index 0000000..2b69256
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/IModelElement.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/IModule.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/IModule.gif
new file mode 100755
index 0000000..cdd3b76
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/IModule.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/IMultiplicityItem.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/IMultiplicityItem.gif
new file mode 100755
index 0000000..05dc74a
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/IMultiplicityItem.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/INode.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/INode.gif
new file mode 100755
index 0000000..30f0c48
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/INode.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/IObjectLink.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/IObjectLink.gif
new file mode 100755
index 0000000..420eee1
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/IObjectLink.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/IObjectLinkHandle.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/IObjectLinkHandle.gif
new file mode 100755
index 0000000..98b351f
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/IObjectLinkHandle.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/IObjectModelDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/IObjectModelDiagram.gif
new file mode 100755
index 0000000..5a9bc75
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/IObjectModelDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/IObjectNode.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/IObjectNode.gif
new file mode 100755
index 0000000..7c2aaac
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/IObjectNode.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/IOperation.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/IOperation.gif
new file mode 100755
index 0000000..1e5345f
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/IOperation.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/IPackage.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/IPackage.gif
new file mode 100755
index 0000000..739ebbf
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/IPackage.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/IPanelDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/IPanelDiagram.gif
new file mode 100755
index 0000000..c4fb30e
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/IPanelDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/IPart.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/IPart.gif
new file mode 100755
index 0000000..7bac4fd
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/IPart.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/IPin.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/IPin.gif
new file mode 100755
index 0000000..53500da
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/IPin.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/IPort.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/IPort.gif
new file mode 100755
index 0000000..badaab0
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/IPort.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/IPrimitiveOperation.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/IPrimitiveOperation.gif
new file mode 100755
index 0000000..5915591
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/IPrimitiveOperation.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/IProfile.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/IProfile.gif
new file mode 100755
index 0000000..7b7c428
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/IProfile.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/IProject.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/IProject.gif
new file mode 100755
index 0000000..c414fe9
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/IProject.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/IProperty.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/IProperty.gif
new file mode 100755
index 0000000..45731fe
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/IProperty.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/IPropertyContainer.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/IPropertyContainer.gif
new file mode 100755
index 0000000..98b351f
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/IPropertyContainer.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/IPropertyMetaclass.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/IPropertyMetaclass.gif
new file mode 100755
index 0000000..afb82ea
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/IPropertyMetaclass.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/IPropertySubject.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/IPropertySubject.gif
new file mode 100755
index 0000000..9041598
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/IPropertySubject.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/IReception.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/IReception.gif
new file mode 100755
index 0000000..8a5c70c
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/IReception.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/IReferenceActivity.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/IReferenceActivity.gif
new file mode 100755
index 0000000..c00aedf
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/IReferenceActivity.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/IRelation.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/IRelation.gif
new file mode 100755
index 0000000..d3dc5a9
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/IRelation.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/IRequirement.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/IRequirement.gif
new file mode 100755
index 0000000..b3643da
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/IRequirement.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/ISendAction.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/ISendAction.gif
new file mode 100755
index 0000000..7b7c428
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/ISendAction.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/ISequenceDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/ISequenceDiagram.gif
new file mode 100755
index 0000000..c4a8af4
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/ISequenceDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/ISlot.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/ISlot.gif
new file mode 100755
index 0000000..89ad5da
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/ISlot.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/IState.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/IState.gif
new file mode 100755
index 0000000..2124f3e
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/IState.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/IStateChart.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/IStateChart.gif
new file mode 100755
index 0000000..9250fec
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/IStateChart.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/IStateChartDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/IStateChartDiagram.gif
new file mode 100755
index 0000000..c4a8af4
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/IStateChartDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/IStateVertex.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/IStateVertex.gif
new file mode 100755
index 0000000..420eee1
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/IStateVertex.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/IStereotype.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/IStereotype.gif
new file mode 100755
index 0000000..b3643da
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/IStereotype.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/IStructureDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/IStructureDiagram.gif
new file mode 100755
index 0000000..35ef84e
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/IStructureDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/ISubsystem.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/ISubsystem.gif
new file mode 100755
index 0000000..53500da
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/ISubsystem.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/ISwimlane.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/ISwimlane.gif
new file mode 100755
index 0000000..c673a52
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/ISwimlane.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/ISysMLPort.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/ISysMLPort.gif
new file mode 100755
index 0000000..cdd3b76
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/ISysMLPort.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/ITableInstance.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/ITableInstance.gif
new file mode 100755
index 0000000..8a5c70c
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/ITableInstance.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/ITableLayout.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/ITableLayout.gif
new file mode 100755
index 0000000..14af8aa
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/ITableLayout.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/ITableView.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/ITableView.gif
new file mode 100755
index 0000000..c4a8af4
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/ITableView.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/ITag.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/ITag.gif
new file mode 100755
index 0000000..b1f8afa
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/ITag.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/ITemplateInst.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/ITemplateInst.gif
new file mode 100755
index 0000000..10d2229
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/ITemplateInst.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/ITemplateInstParam.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/ITemplateInstParam.gif
new file mode 100755
index 0000000..98b351f
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/ITemplateInstParam.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/ITemplateInstantiation.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/ITemplateInstantiation.gif
new file mode 100755
index 0000000..c4fb30e
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/ITemplateInstantiation.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/ITemplateInstantiationParameter.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/ITemplateInstantiationParameter.gif
new file mode 100755
index 0000000..c3370c7
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/ITemplateInstantiationParameter.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/ITemplateParameter.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/ITemplateParameter.gif
new file mode 100755
index 0000000..5a9bc75
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/ITemplateParameter.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/ITimeEvent.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/ITimeEvent.gif
new file mode 100755
index 0000000..c414fe9
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/ITimeEvent.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/ITimeout.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/ITimeout.gif
new file mode 100755
index 0000000..498364f
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/ITimeout.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/ITransition.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/ITransition.gif
new file mode 100755
index 0000000..c414fe9
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/ITransition.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/ITrigger.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/ITrigger.gif
new file mode 100755
index 0000000..c4fb30e
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/ITrigger.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/ITriggered.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/ITriggered.gif
new file mode 100755
index 0000000..c673a52
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/ITriggered.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/IType.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/IType.gif
new file mode 100755
index 0000000..89ad5da
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/IType.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/IUCDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/IUCDiagram.gif
new file mode 100755
index 0000000..e4b530e
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/IUCDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/IUnit.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/IUnit.gif
new file mode 100755
index 0000000..94c953e
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/IUnit.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/IUseCase.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/IUseCase.gif
new file mode 100755
index 0000000..afb82ea
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/IUseCase.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/IUseCaseDiagram.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/IUseCaseDiagram.gif
new file mode 100755
index 0000000..9041598
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/IUseCaseDiagram.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/IUseCaseStereoType.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/IUseCaseStereoType.gif
new file mode 100755
index 0000000..f8041d2
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/IUseCaseStereoType.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/IValueSpecification.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/IValueSpecification.gif
new file mode 100755
index 0000000..a17dc7d
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/IValueSpecification.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/IVariable.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/IVariable.gif
new file mode 100755
index 0000000..c4a8af4
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/IVariable.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/TableDataDefinition.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/TableDataDefinition.gif
new file mode 100755
index 0000000..afb82ea
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/TableDataDefinition.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/UnknownType.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/UnknownType.gif
new file mode 100755
index 0000000..caf2804
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/icons/full/obj16/UnknownType.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/plugin.properties b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/plugin.properties
new file mode 100644
index 0000000..b47c18e
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/plugin.properties
@@ -0,0 +1,2022 @@
+# /*****************************************************************************
+#  * Copyright (c) 2016 CEA LIST and others.
+#  * 
+#  * 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:
+#  *   CEA LIST - Initial API and implementation
+#  *   
+#  *****************************************************************************/
+
+pluginName = Papyrus Interoperability Rpy Metamodel Edit Support (Incubation)
+providerName = Eclipse Modeling Project
+
+_UI_CreateChild_text = {0}
+_UI_CreateChild_text2 = {1} {0}
+_UI_CreateChild_text3 = {1}
+_UI_CreateChild_tooltip = Create New {0} Under {1} Feature
+_UI_CreateChild_description = Create a new child of type {0} for the {1} feature of the selected {2}.
+_UI_CreateSibling_description = Create a new sibling of type {0} for the selected {2}, under the {1} feature of their parent.
+
+_UI_PropertyDescriptor_description = The {0} of the {1}
+
+_UI_IAcceptEventAction_type = IAccept Event Action
+_UI_IAcceptTimeEvent_type = IAccept Time Event
+_UI_IAction_type = IAction
+_UI_IActivityDiagram_type = IActivity Diagram
+_UI_IActor_type = IActor
+_UI_IAnnotation_type = IAnnotation
+_UI_IArgument_type = IArgument
+_UI_IAssociationClass_type = IAssociation Class
+_UI_IAssociationRole_type = IAssociation Role
+_UI_IAttribute_type = IAttribute
+_UI_ICallOperation_type = ICall Operation
+_UI_IClass_type = IClass
+_UI_IClassifier_type = IClassifier
+_UI_IClassifierRole_type = IClassifier Role
+_UI_ICollaboration_type = ICollaboration
+_UI_ICollaborationDiagram_type = ICollaboration Diagram
+_UI_IComment_type = IComment
+_UI_IComponent_type = IComponent
+_UI_IComponentDiagram_type = IComponent Diagram
+_UI_IComponentInstance_type = IComponent Instance
+_UI_IConfiguration_type = IConfiguration
+_UI_IConnector_type = IConnector
+_UI_IConstraint_type = IConstraint
+_UI_IContextSpecification_type = IContext Specification
+_UI_IControlledFile_type = IControlled File
+_UI_IDependency_type = IDependency
+_UI_IDeploymentDiagram_type = IDeployment Diagram
+_UI_IDiagram_type = IDiagram
+_UI_IEnumerationLiteral_type = IEnumeration Literal
+_UI_IEvent_type = IEvent
+_UI_IEventReception_type = IEvent Reception
+_UI_IExecutionOccurrence_type = IExecution Occurrence
+_UI_IFile_type = IFile
+_UI_IFileFragment_type = IFile Fragment
+_UI_IFlow_type = IFlow
+_UI_IFlowchart_type = IFlowchart
+_UI_IFlowItem_type = IFlow Item
+_UI_IGeneralization_type = IGeneralization
+_UI_IGuard_type = IGuard
+_UI_IHyperLink_type = IHyper Link
+_UI_IInstance_type = IInstance
+_UI_IInstanceSlot_type = IInstance Slot
+_UI_IInstanceSpecification_type = IInstance Specification
+_UI_IInstanceValue_type = IInstance Value
+_UI_IInteractionOccurrence_type = IInteraction Occurrence
+_UI_IInteractionOperand_type = IInteraction Operand
+_UI_IInteractionOperator_type = IInteraction Operator
+_UI_IInterfaceItem_type = IInterface Item
+_UI_ILink_type = ILink
+_UI_ILiteralSpecification_type = ILiteral Specification
+_UI_IMatrixLayout_type = IMatrix Layout
+_UI_IMatrixView_type = IMatrix View
+_UI_IMessage_type = IMessage
+_UI_IMessagePoint_type = IMessage Point
+_UI_IModelElement_type = IModel Element
+_UI_IModule_type = IModule
+_UI_INode_type = INode
+_UI_IObjectModelDiagram_type = IObject Model Diagram
+_UI_IObjectNode_type = IObject Node
+_UI_IOperation_type = IOperation
+_UI_IPackage_type = IPackage
+_UI_IPanelDiagram_type = IPanel Diagram
+_UI_IPin_type = IPin
+_UI_IPort_type = IPort
+_UI_IProfile_type = IProfile
+_UI_IProject_type = IProject
+_UI_IRelation_type = IRelation
+_UI_IRequirement_type = IRequirement
+_UI_ISendAction_type = ISend Action
+_UI_ISequenceDiagram_type = ISequence Diagram
+_UI_IState_type = IState
+_UI_IStateVertex_type = IState Vertex
+_UI_IStereotype_type = IStereotype
+_UI_IStructureDiagram_type = IStructure Diagram
+_UI_ISwimlane_type = ISwimlane
+_UI_ISysMLPort_type = ISys ML Port
+_UI_ITableLayout_type = ITable Layout
+_UI_ITableView_type = ITable View
+_UI_ITag_type = ITag
+_UI_ITemplateInstantiation_type = ITemplate Instantiation
+_UI_ITemplateInstantiationParameter_type = ITemplate Instantiation Parameter
+_UI_ITemplateParameter_type = ITemplate Parameter
+_UI_ITransition_type = ITransition
+_UI_ITrigger_type = ITrigger
+_UI_IType_type = IType
+_UI_IUnit_type = IUnit
+_UI_IUseCase_type = IUse Case
+_UI_IUseCaseDiagram_type = IUse Case Diagram
+_UI_IValueSpecification_type = IValue Specification
+_UI_IVariable_type = IVariable
+_UI_ISubsystem_type = ISubsystem
+_UI_UnknownType_type = Unknown Type
+_UI_IPropertyContainer_type = IProperty Container
+_UI_IPropertySubject_type = IProperty Subject
+_UI_IPropertyMetaclass_type = IProperty Metaclass
+_UI_IProperty_type = IProperty
+_UI_IDescription_type = IDescription
+_UI_IMHyperLink_type = IM Hyper Link
+_UI_IPrimitiveOperation_type = IPrimitive Operation
+_UI_IBody_type = IBody
+_UI_CGIClassChart_type = CGI Class Chart
+_UI_CGIText_type = CGI Text
+_UI_IColor_type = IColor
+_UI_CGIClass_type = CGI Class
+_UI_IPart_type = IPart
+_UI_CGICompartment_type = CGI Compartment
+_UI_CGIObjectInstance_type = CGI Object Instance
+_UI_IFolder_type = IFolder
+_UI_ICodeGenConfigInfoHandle_type = ICode Gen Config Info Handle
+_UI_ICodeGenConfigInfo_type = ICode Gen Config Info
+_UI_IConstructor_type = IConstructor
+_UI_CGIPortConnector_type = CGI Port Connector
+_UI_IObjectLink_type = IObject Link
+_UI_IMetaLinkHandle_type = IMeta Link Handle
+_UI_CGIObjectLink_type = CGI Object Link
+_UI_IMultiplicityItem_type = IMultiplicity Item
+_UI_IAssociationEnd_type = IAssociation End
+_UI_IReception_type = IReception
+_UI_IStateChart_type = IState Chart
+_UI_IDefaultDrvdTrans_type = IDefault Drvd Trans
+_UI_ILabel_type = ILabel
+_UI_IInterfaceItemTrigger_type = IInterface Item Trigger
+_UI_IHistoryConnector_type = IHistory Connector
+_UI_ITimeout_type = ITimeout
+_UI_IStateChartDiagram_type = IState Chart Diagram
+_UI_CGIStateChart_type = CGI State Chart
+_UI_CGIState_type = CGI State
+_UI_CGIConnector_type = CGI Connector
+_UI_CGITrans_type = CGI Trans
+_UI_CGIAssociationEnd_type = CGI Association End
+_UI_IAssociationEndHandle_type = IAssociation End Handle
+_UI_IObjectLinkHandle_type = IObject Link Handle
+_UI_IMSC_type = IMSC
+_UI_CGIMscChart_type = CGI Msc Chart
+_UI_CGIBox_type = CGI Box
+_UI_CGIMscColumnCR_type = CGI Msc Column CR
+_UI_CGIMFCCtrl_type = CGIMFC Ctrl
+_UI_CGIActiveX_type = CGI Active X
+_UI_CGIFreeShape_type = CGI Free Shape
+_UI_CGIFreeText_type = CGI Free Text
+_UI_CGITextBox_type = CGI Text Box
+_UI_CGIAnnotation_type = CGI Annotation
+_UI_IBranch_type = IBranch
+_UI_IUCDiagram_type = IUC Diagram
+_UI_CGICompositeClass_type = CGI Composite Class
+_UI_CGIInformationFlow_type = CGI Information Flow
+_UI_IInformationFlow_type = IInformation Flow
+_UI_IInformationItem_type = IInformation Item
+_UI_CGIInheritance_type = CGI Inheritance
+_UI_CGIPackage_type = CGI Package
+_UI_ITriggered_type = ITriggered
+_UI_CGIBasicClass_type = CGI Basic Class
+_UI_IAnchor_type = IAnchor
+_UI_CGIAnchor_type = CGI Anchor
+_UI_CGIMscMessage_type = CGI Msc Message
+_UI_IInternalHyperlink_type = IInternal Hyperlink
+_UI_IDestructor_type = IDestructor
+_UI_IUseCaseStereoType_type = IUse Case Stereo Type
+_UI_CCollaborationChart_type = CCollaboration Chart
+_UI_CGIClassifierRole_type = CGI Classifier Role
+_UI_CGIAssociationRole_type = CGI Association Role
+_UI_CGIMessageLabel_type = CGI Message Label
+_UI_CGIArrow_type = CGI Arrow
+_UI_CGIComponent_type = CGI Component
+_UI_TableDataDefinition_type = Table Data Definition
+_UI_CGIDiagramFrame_type = CGI Diagram Frame
+_UI_CGIGenericElement_type = CGI Generic Element
+_UI_CGIImageData_type = CGI Image Data
+_UI_IEventHandle_type = IEvent Handle
+_UI_ITableInstance_type = ITable Instance
+_UI_IMatrixInstance_type = IMatrix Instance
+_UI_IHandleWithData_type = IHandle With Data
+_UI_CGIMscConditionMark_type = CGI Msc Condition Mark
+_UI_ICombinedFragment_type = ICombined Fragment
+_UI_CGIMscInteractionOperator_type = CGI Msc Interaction Operator
+_UI_CGIMscInteractionOperand_type = CGI Msc Interaction Operand
+_UI_IEmbededFile_type = IEmbeded File
+_UI_IActivityGraph_type = IActivity Graph
+_UI_CGIImage_type = CGI Image
+_UI_ITimeEvent_type = ITime Event
+_UI_CGIActionState_type = CGI Action State
+_UI_IClassHandle_type = IClass Handle
+_UI_IClassInstance_type = IClass Instance
+_UI_ILinkInstance_type = ILink Instance
+_UI_CollEvent_type = Coll Event
+_UI_CGIButtonArray_type = CGI Button Array
+_UI_IExternalHyperlink_type = IExternal Hyperlink
+_UI_IFork_type = IFork
+_UI_CGIBlockState_type = CGI Block State
+_UI_CGIPartition_type = CGI Partition
+_UI_CGISwimlaneFrame_type = CGI Swimlane Frame
+_UI_CGIMscInteractionOccurrence_type = CGI Msc Interaction Occurrence
+_UI_ICallAction_type = ICall Action
+_UI_CGIMscExecutionOccurrence_type = CGI Msc Execution Occurrence
+_UI_IBlock_type = IBlock
+_UI_ITemplateInst_type = ITemplate Inst
+_UI_ITemplateInstParam_type = ITemplate Inst Param
+_UI_IReferenceActivity_type = IReference Activity
+_UI_CGIContainArrow_type = CGI Contain Arrow
+_UI_ISlot_type = ISlot
+_UI_DefaultTransType_type = Default Trans Type
+_UI_NestedStateChartType_type = Nested State Chart Type
+_UI_OperationsType_type = Operations Type
+_UI_TheMainDiagramType_type = The Main Diagram Type
+_UI_ComponentsType_type = Components Type
+_UI_ObjectLinksType_type = Object Links Type
+_UI_DeclarativesType_type = Declaratives Type
+_UI_AssociationsType_type = Associations Type
+_UI_LinksType_type = Links Type
+_UI_M_pBaseType_type = MpBase Type
+_UI_P_MessageHandlerType_type = PMessage Handler Type
+_UI_OwnerHandleType_type = Owner Handle Type
+_UI_GraphicChartType_type = Graphic Chart Type
+_UI_DependsOnType_type = Depends On Type
+_UI_M_subjectType_type = Msubject Type
+_UI_ValueType_type = Value Type
+_UI_M_pFormalMessageType_type = MpFormal Message Type
+_UI_ParentType_type = Parent Type
+_UI_M_hTargetType_type = MhTarget Type
+_UI_ItsLabelType_type = Its Label Type
+_UI_ItsTargetType_type = Its Target Type
+_UI_HyperLinksType_type = Hyper Links Type
+_UI_TableInstancesType_type = Table Instances Type
+_UI_EmbededFilesType_type = Embeded Files Type
+_UI_MatrixInstancesType_type = Matrix Instances Type
+_UI_GraphElementsType_type = Graph Elements Type
+_UI_CompartmentsType_type = Compartments Type
+_UI_ItemsType_type = Items Type
+_UI_M_pModelObjectType_type = MpModel Object Type
+_UI_FilesType_type = Files Type
+_UI_ToLinkType_type = To Link Type
+_UI_InverseType_type = Inverse Type
+_UI_TransitionsType_type = Transitions Type
+_UI_ItsStateChartType_type = Its State Chart Type
+_UI_DescriptionType_type = Description Type
+_UI_PropertiesType_type = Properties Type
+_UI_ItsTriggerType_type = Its Trigger Type
+_UI_ConveyedType_type = Conveyed Type
+_UI_End2_Type_type = End2 Type
+_UI_TargetType_type = Target Type
+_UI_Unknown_type = Object
+
+_UI_Unknown_datatype= Value
+
+_UI_IAcceptEventAction_event_feature = Event
+_UI_IAction_id_feature = Id
+_UI_IAction_myState_feature = My State
+_UI_IAction_body_feature = Body
+_UI_IAction_modifiedTimeWeak_feature = Modified Time Weak
+_UI_IAction_objectCreation_feature = Object Creation
+_UI_IAction_umlDependencyID_feature = Uml Dependency ID
+_UI_IActivityDiagram_graphicChart_feature = Graphic Chart
+_UI_IActivityDiagram_codeUpdateCGTime_feature = Code Update CG Time
+_UI_IActor_id_feature = Id
+_UI_IActor_myState_feature = My State
+_UI_IActor_name_feature = Name
+_UI_IActor_theMainDiagram_feature = The Main Diagram
+_UI_IActor_Dependencies_feature = Dependencies
+_UI_IActor_lastID_feature = Last ID
+_UI_IActor_weakCGTime_feature = Weak CG Time
+_UI_IActor_strongCGTime_feature = Strong CG Time
+_UI_IActor_Operations_feature = Operations
+_UI_IActor_StateCharts_feature = State Charts
+_UI_IActor_itsStateChart_feature = Its State Chart
+_UI_IActor_Associations_feature = Associations
+_UI_IActor_classModifier_feature = Class Modifier
+_UI_IActor_HyperLinks_feature = Hyper Links
+_UI_IActor_modifiedTimeWeak_feature = Modified Time Weak
+_UI_IActor_Ports_feature = Ports
+_UI_IActor_Inheritances_feature = Inheritances
+_UI_IActor_Attrs_feature = Attrs
+_UI_IActor_requiremenTracabilityHandle_feature = Requiremen Tracability Handle
+_UI_IActor_description_feature = Description
+_UI_IActor_Annotations_feature = Annotations
+_UI_IActor_ComponentFiles_feature = Component Files
+_UI_IActor_properties_feature = Properties
+_UI_IAnnotation_requiremenTracabilityHandle_feature = Requiremen Tracability Handle
+_UI_IAnnotation_description_feature = Description
+_UI_IAnnotation_umlDependencyID_feature = Uml Dependency ID
+_UI_IAnnotation_objectCreation_feature = Object Creation
+_UI_IAnnotation_Tags_feature = Tags
+_UI_IAnnotation_body_feature = Body
+_UI_IArgument_id_feature = Id
+_UI_IArgument_myState_feature = My State
+_UI_IArgument_properties_feature = Properties
+_UI_IArgument_name_feature = Name
+_UI_IArgument_modifiedTimeWeak_feature = Modified Time Weak
+_UI_IArgument_typeOf_feature = Type Of
+_UI_IArgument_argumentDirection_feature = Argument Direction
+_UI_IArgument_defaultValue_feature = Default Value
+_UI_IArgument_ValueSpecifications_feature = Value Specifications
+_UI_IArgument_description_feature = Description
+_UI_IArgument_codeUpdateCGTime_feature = Code Update CG Time
+_UI_IArgument_objectCreation_feature = Object Creation
+_UI_IArgument_umlDependencyID_feature = Uml Dependency ID
+_UI_IAssociationRole_id_feature = Id
+_UI_IAssociationRole_myState_feature = My State
+_UI_IAssociationRole_m_fAssocType1_feature = MfAssoc Type1
+_UI_IAssociationRole_m_fAssocType2_feature = MfAssoc Type2
+_UI_IAssociationRole_m_pSource_feature = MpSource
+_UI_IAssociationRole_m_pTarget_feature = MpTarget
+_UI_IAssociationRole_m_pFormalAssoc1_feature = MpFormal Assoc1
+_UI_IAssociationRole_m_pFormalAssoc2_feature = MpFormal Assoc2
+_UI_IAssociationRole_name_feature = Name
+_UI_IAssociationRole_modifiedTimeWeak_feature = Modified Time Weak
+_UI_IAssociationRole_objectCreation_feature = Object Creation
+_UI_IAssociationRole_umlDependencyID_feature = Uml Dependency ID
+_UI_IAttribute_typeOf_feature = Type Of
+_UI_IAttribute_protection_feature = Protection
+_UI_IAttribute_static_feature = Static
+_UI_IAttribute_isReference_feature = Is Reference
+_UI_IAttribute_isConstant_feature = Is Constant
+_UI_IAttribute_Stereotypes_feature = Stereotypes
+_UI_IAttribute_ValueSpecifications_feature = Value Specifications
+_UI_IAttribute_properties_feature = Properties
+_UI_IAttribute_description_feature = Description
+_UI_IAttribute_Tags_feature = Tags
+_UI_IAttribute_defaultValue_feature = Default Value
+_UI_IAttribute_Dependencies_feature = Dependencies
+_UI_IAttribute_lastID_feature = Last ID
+_UI_IAttribute_Annotations_feature = Annotations
+_UI_IAttribute_requiremenTracabilityHandle_feature = Requiremen Tracability Handle
+_UI_IAttribute_codeUpdateCGTime_feature = Code Update CG Time
+_UI_IAttribute_theMainDiagram_feature = The Main Diagram
+_UI_ICallOperation_operation_feature = Operation
+_UI_ICallOperation_target_feature = Target
+_UI_IClass_weakCGTime_feature = Weak CG Time
+_UI_IClass_strongCGTime_feature = Strong CG Time
+_UI_IClass_multiplicity_feature = Multiplicity
+_UI_IClass_classModifier_feature = Class Modifier
+_UI_IClass_properties_feature = Properties
+_UI_IClass_Stereotypes_feature = Stereotypes
+_UI_IClass_Operations_feature = Operations
+_UI_IClass_Inheritances_feature = Inheritances
+_UI_IClass_theMainDiagram_feature = The Main Diagram
+_UI_IClass_Attrs_feature = Attrs
+_UI_IClass_Tags_feature = Tags
+_UI_IClass_Associations_feature = Associations
+_UI_IClass_Dependencies_feature = Dependencies
+_UI_IClass_Ports_feature = Ports
+_UI_IClass_ObjectLinks_feature = Object Links
+_UI_IClass_StateCharts_feature = State Charts
+_UI_IClass_itsStateChart_feature = Its State Chart
+_UI_IClass_TriggeredOperations_feature = Triggered Operations
+_UI_IClass_Receptions_feature = Receptions
+_UI_IClass_PrimitiveOperations_feature = Primitive Operations
+_UI_IClass_Annotations_feature = Annotations
+_UI_IClass_description_feature = Description
+_UI_IClass_Declaratives_feature = Declaratives
+_UI_IClass_AssociationElements_feature = Association Elements
+_UI_IClass_ownerHandle_feature = Owner Handle
+_UI_IClass_HyperLinks_feature = Hyper Links
+_UI_IClass_requiremenTracabilityHandle_feature = Requiremen Tracability Handle
+_UI_IClass_ComponentFiles_feature = Component Files
+_UI_IClass_Links_feature = Links
+_UI_IClass_Components_feature = Components
+_UI_IClass_EventHandles_feature = Event Handles
+_UI_IClass_TemplateParameters_feature = Template Parameters
+_UI_IClass_codeUpdateCGTime_feature = Code Update CG Time
+_UI_IClass_cmheader_feature = Cmheader
+_UI_IClass_displayName_feature = Display Name
+_UI_IClassifierRole_id_feature = Id
+_UI_IClassifierRole_name_feature = Name
+_UI_IClassifierRole_m_eRoleType_feature = MeRole Type
+_UI_IClassifierRole_myState_feature = My State
+_UI_IClassifierRole_m_pBase_feature = MpBase
+_UI_IClassifierRole_m_instance_feature = Minstance
+_UI_IClassifierRole_properties_feature = Properties
+_UI_IClassifierRole_modifiedTimeWeak_feature = Modified Time Weak
+_UI_IClassifierRole_m_pRefSD_feature = MpRef SD
+_UI_IClassifierRole_codeUpdateCGTime_feature = Code Update CG Time
+_UI_IClassifierRole_Stereotypes_feature = Stereotypes
+_UI_IClassifierRole_objectCreation_feature = Object Creation
+_UI_IClassifierRole_umlDependencyID_feature = Uml Dependency ID
+_UI_IClassifierRole_displayName_feature = Display Name
+_UI_ICollaboration_id_feature = Id
+_UI_ICollaboration_ClassifierRoles_feature = Classifier Roles
+_UI_ICollaboration_Messages_feature = Messages
+_UI_ICollaboration_Annotations_feature = Annotations
+_UI_ICollaboration_AssociationRoles_feature = Association Roles
+_UI_ICollaboration_modifiedTimeWeak_feature = Modified Time Weak
+_UI_ICollaboration_CombinedFragments_feature = Combined Fragments
+_UI_ICollaboration_p_MessageHandler_feature = PMessage Handler
+_UI_ICollaboration_InteractionOccurrences_feature = Interaction Occurrences
+_UI_ICollaboration_ExecutionOccurrences_feature = Execution Occurrences
+_UI_ICollaboration_objectCreation_feature = Object Creation
+_UI_ICollaboration_umlDependencyID_feature = Uml Dependency ID
+_UI_ICollaborationDiagram_m_pICollaboration_feature = MpI Collaboration
+_UI_IComment_HyperLinks_feature = Hyper Links
+_UI_IComment_Anchors_feature = Anchors
+_UI_IComment_Dependencies_feature = Dependencies
+_UI_IComment_Stereotypes_feature = Stereotypes
+_UI_IComment_lastID_feature = Last ID
+_UI_IComment_codeUpdateCGTime_feature = Code Update CG Time
+_UI_IComment_theMainDiagram_feature = The Main Diagram
+_UI_IComment_properties_feature = Properties
+_UI_IComponent_ownerHandle_feature = Owner Handle
+_UI_IComponent_id_feature = Id
+_UI_IComponent_myState_feature = My State
+_UI_IComponent_name_feature = Name
+_UI_IComponent_Stereotypes_feature = Stereotypes
+_UI_IComponent_modifiedTimeWeak_feature = Modified Time Weak
+_UI_IComponent_m_buildType_feature = Mbuild Type
+_UI_IComponent_m_libraries_feature = Mlibraries
+_UI_IComponent_m_additionalSources_feature = Madditional Sources
+_UI_IComponent_m_standardHeaders_feature = Mstandard Headers
+_UI_IComponent_m_includePath_feature = Minclude Path
+_UI_IComponent_m_initializationCode_feature = Minitialization Code
+_UI_IComponent_m_folder_feature = Mfolder
+_UI_IComponent_m_configActive_feature = Mconfig Active
+_UI_IComponent_Configs_feature = Configs
+_UI_IComponent_Dependencies_feature = Dependencies
+_UI_IComponent_HandlesInMe_feature = Handles In Me
+_UI_IComponent_properties_feature = Properties
+_UI_IComponent_lastID_feature = Last ID
+_UI_IComponent_description_feature = Description
+_UI_IComponent_requiremenTracabilityHandle_feature = Requiremen Tracability Handle
+_UI_IComponent_HyperLinks_feature = Hyper Links
+_UI_IComponent_codeUpdateCGTime_feature = Code Update CG Time
+_UI_IComponent_Declaratives_feature = Declaratives
+_UI_IComponent_VariationPoints_feature = Variation Points
+_UI_IComponent_SelectedVariants_feature = Selected Variants
+_UI_IComponent_objectCreation_feature = Object Creation
+_UI_IComponent_umlDependencyID_feature = Uml Dependency ID
+_UI_IComponent_cmheader_feature = Cmheader
+_UI_IConnector_parent_feature = Parent
+_UI_IConnector_connectorType_feature = Connector Type
+_UI_IConstraint_id_feature = Id
+_UI_IConstraint_myState_feature = My State
+_UI_IConstraint_name_feature = Name
+_UI_IConstraint_modifiedTimeWeak_feature = Modified Time Weak
+_UI_IConstraint_Stereotypes_feature = Stereotypes
+_UI_IConstraint_properties_feature = Properties
+_UI_IConstraint_Anchors_feature = Anchors
+_UI_IDependency_id_feature = Id
+_UI_IDependency_myState_feature = My State
+_UI_IDependency_properties_feature = Properties
+_UI_IDependency_name_feature = Name
+_UI_IDependency_Stereotypes_feature = Stereotypes
+_UI_IDependency_modifiedTimeWeak_feature = Modified Time Weak
+_UI_IDependency_dependsOn_feature = Depends On
+_UI_IDependency_Tags_feature = Tags
+_UI_IDependency_Annotations_feature = Annotations
+_UI_IDependency_displayName_feature = Display Name
+_UI_IDependency_Dependencies_feature = Dependencies
+_UI_IDependency_description_feature = Description
+_UI_IDependency_requiremenTracabilityHandle_feature = Requiremen Tracability Handle
+_UI_IDependency_codeUpdateCGTime_feature = Code Update CG Time
+_UI_IDiagram_properties_feature = Properties
+_UI_IDiagram_Stereotypes_feature = Stereotypes
+_UI_IDiagram_modifiedTimeWeak_feature = Modified Time Weak
+_UI_IDiagram_graphicChart_feature = Graphic Chart
+_UI_IDiagram_Annotations_feature = Annotations
+_UI_IDiagram_displayName_feature = Display Name
+_UI_IDiagram_codeUpdateCGTime_feature = Code Update CG Time
+_UI_IDiagram_HyperLinks_feature = Hyper Links
+_UI_IEnumerationLiteral_id_feature = Id
+_UI_IEnumerationLiteral_name_feature = Name
+_UI_IEnumerationLiteral_modifiedTimeWeak_feature = Modified Time Weak
+_UI_IEnumerationLiteral_value_feature = Value
+_UI_IEnumerationLiteral_properties_feature = Properties
+_UI_IEnumerationLiteral_Tags_feature = Tags
+_UI_IEnumerationLiteral_codeUpdateCGTime_feature = Code Update CG Time
+_UI_IEnumerationLiteral_description_feature = Description
+_UI_IEvent_id_feature = Id
+_UI_IEvent_myState_feature = My State
+_UI_IEvent_name_feature = Name
+_UI_IEvent_virtual_feature = Virtual
+_UI_IEvent_modifiedTimeWeak_feature = Modified Time Weak
+_UI_IEvent_Args_feature = Args
+_UI_IEvent_Stereotypes_feature = Stereotypes
+_UI_IEvent_description_feature = Description
+_UI_IEvent_properties_feature = Properties
+_UI_IEvent_Dependencies_feature = Dependencies
+_UI_IEvent_Tags_feature = Tags
+_UI_IEvent_superEvent_feature = Super Event
+_UI_IEvent_requiremenTracabilityHandle_feature = Requiremen Tracability Handle
+_UI_IEvent_Annotations_feature = Annotations
+_UI_IEvent_displayName_feature = Display Name
+_UI_IExecutionOccurrence_id_feature = Id
+_UI_IExecutionOccurrence_m_startMessage_feature = Mstart Message
+_UI_IExecutionOccurrence_m_endMessage_feature = Mend Message
+_UI_IExecutionOccurrence_m_length_feature = Mlength
+_UI_IFile_properties_feature = Properties
+_UI_IFile_m_type_feature = Mtype
+_UI_IFile_Fragments_feature = Fragments
+_UI_IFile_description_feature = Description
+_UI_IFile_Dependencies_feature = Dependencies
+_UI_IFileFragment_id_feature = Id
+_UI_IFileFragment_name_feature = Name
+_UI_IFileFragment_m_type_feature = Mtype
+_UI_IFileFragment_m_text_feature = Mtext
+_UI_IFileFragment_m_startRow_feature = Mstart Row
+_UI_IFileFragment_m_startCol_feature = Mstart Col
+_UI_IFileFragment_description_feature = Description
+_UI_IFileFragment_m_startCol_Short_feature = Mstart Col Short
+_UI_IFileFragment_m_endRow_feature = Mend Row
+_UI_IFileFragment_m_endCol_Short_feature = Mend Col Short
+_UI_IFileFragment_m_subject_feature = Msubject
+_UI_IFileFragment_Tags_feature = Tags
+_UI_IFileFragment_Fragments_feature = Fragments
+_UI_IFileFragment_modifiedTimeWeak_feature = Modified Time Weak
+_UI_IFileFragment_objectCreation_feature = Object Creation
+_UI_IFileFragment_umlDependencyID_feature = Uml Dependency ID
+_UI_IGeneralization_id_feature = Id
+_UI_IGeneralization_modifiedTimeWeak_feature = Modified Time Weak
+_UI_IGeneralization_dependsOn_feature = Depends On
+_UI_IGeneralization_inheritanceType_feature = Inheritance Type
+_UI_IGeneralization_isVirtual_feature = Is Virtual
+_UI_IGeneralization_Stereotypes_feature = Stereotypes
+_UI_IGeneralization_description_feature = Description
+_UI_IGeneralization_objectCreation_feature = Object Creation
+_UI_IGeneralization_umlDependencyID_feature = Uml Dependency ID
+_UI_IGeneralization_ti_feature = Ti
+_UI_IGeneralization_Annotations_feature = Annotations
+_UI_IGuard_id_feature = Id
+_UI_IGuard_body_feature = Body
+_UI_IGuard_modifiedTimeWeak_feature = Modified Time Weak
+_UI_IGuard_objectCreation_feature = Object Creation
+_UI_IGuard_umlDependencyID_feature = Uml Dependency ID
+_UI_IInstance_modifiedTimeWeak_feature = Modified Time Weak
+_UI_IInstance_id_feature = Id
+_UI_IInstance_inverse_feature = Inverse
+_UI_IInstance_myState_feature = My State
+_UI_IInstance_name_feature = Name
+_UI_IInstanceValue_id_feature = Id
+_UI_IInstanceValue_modifiedTimeWeak_feature = Modified Time Weak
+_UI_IInstanceValue_value_feature = Value
+_UI_IInteractionOccurrence_id_feature = Id
+_UI_IInteractionOccurrence_name_feature = Name
+_UI_IInteractionOccurrence_modifiedTimeWeak_feature = Modified Time Weak
+_UI_IInteractionOccurrence_m_pRefSD_feature = MpRef SD
+_UI_IInteractionOccurrence_Stereotypes_feature = Stereotypes
+_UI_IInteractionOccurrence_Tags_feature = Tags
+_UI_IInteractionOccurrence_objectCreation_feature = Object Creation
+_UI_IInteractionOccurrence_umlDependencyID_feature = Uml Dependency ID
+_UI_IInteractionOperand_myState_feature = My State
+_UI_IInteractionOperand_name_feature = Name
+_UI_IInteractionOperand_interactionConstraint_feature = Interaction Constraint
+_UI_ILink_inverse_feature = Inverse
+_UI_ILink_linkName_feature = Link Name
+_UI_ILink_linkType_feature = Link Type
+_UI_ILink_myState_feature = My State
+_UI_ILiteralSpecification_id_feature = Id
+_UI_ILiteralSpecification_modifiedTimeWeak_feature = Modified Time Weak
+_UI_ILiteralSpecification_value_feature = Value
+_UI_ILiteralSpecification_myState_feature = My State
+_UI_ILiteralSpecification_name_feature = Name
+_UI_ILiteralSpecification_codeUpdateCGTime_feature = Code Update CG Time
+_UI_IMatrixLayout_id_feature = Id
+_UI_IMatrixLayout_myState_feature = My State
+_UI_IMatrixLayout_name_feature = Name
+_UI_IMatrixLayout_modifiedTimeWeak_feature = Modified Time Weak
+_UI_IMatrixLayout_FromElementTypes_feature = From Element Types
+_UI_IMatrixLayout_ToElementTypes_feature = To Element Types
+_UI_IMatrixLayout_CellElementTypes_feature = Cell Element Types
+_UI_IMatrixLayout_description_feature = Description
+_UI_IMessage_id_feature = Id
+_UI_IMessage_myState_feature = My State
+_UI_IMessage_name_feature = Name
+_UI_IMessage_displayName_feature = Display Name
+_UI_IMessage_m_szSequence_feature = Msz Sequence
+_UI_IMessage_m_szActualArgs_feature = Msz Actual Args
+_UI_IMessage_m_szReturnVal_feature = Msz Return Val
+_UI_IMessage_m_pReceiver_feature = MpReceiver
+_UI_IMessage_m_pSender_feature = MpSender
+_UI_IMessage_m_pFormalMessage_feature = MpFormal Message
+_UI_IMessage_m_eType_feature = MeType
+_UI_IMessage_m_pCommunicationConnection_feature = MpCommunication Connection
+_UI_IMessage_m_freeText_feature = Mfree Text
+_UI_IMessage_modifiedTimeWeak_feature = Modified Time Weak
+_UI_IMessage_Stereotypes_feature = Stereotypes
+_UI_IMessage_Tags_feature = Tags
+_UI_IMessage_properties_feature = Properties
+_UI_IMessage_m_targetExec_feature = Mtarget Exec
+_UI_IMessage_m_srcExec_feature = Msrc Exec
+_UI_IMessage_objectCreation_feature = Object Creation
+_UI_IMessage_umlDependencyID_feature = Uml Dependency ID
+_UI_IModule_Stereotypes_feature = Stereotypes
+_UI_IModule_description_feature = Description
+_UI_IModule_HyperLinks_feature = Hyper Links
+_UI_IModule_otherClass_feature = Other Class
+_UI_IModule_implicitClass_feature = Implicit Class
+_UI_IModule_properties_feature = Properties
+_UI_IModule_requiremenTracabilityHandle_feature = Requiremen Tracability Handle
+_UI_IModule_partKind_feature = Part Kind
+_UI_IObjectNode_represents_feature = Represents
+_UI_IObjectNode_TheInState_feature = The In State
+_UI_IObjectNode_inState_feature = In State
+_UI_IPackage_modifiedTimeWeak_feature = Modified Time Weak
+_UI_IPackage_id_feature = Id
+_UI_IPackage_description_feature = Description
+_UI_IPackage_umlDependencyID_feature = Uml Dependency ID
+_UI_IPackage_lastID_feature = Last ID
+_UI_IPackage_myState_feature = My State
+_UI_IPackage_Annotations_feature = Annotations
+_UI_IPackage_objectCreation_feature = Object Creation
+_UI_IPackage_Stereotypes_feature = Stereotypes
+_UI_IPackage_name_feature = Name
+_UI_IPackage_properties_feature = Properties
+_UI_IPackage_cmheader_feature = Cmheader
+_UI_IPin_m_type_feature = Mtype
+_UI_IPin_m_isParameterPin_feature = Mis Parameter Pin
+_UI_IPin_m_corePin_feature = Mcore Pin
+_UI_IPort_otherClass_feature = Other Class
+_UI_IPort_behavioral_feature = Behavioral
+_UI_IPort_reversed_feature = Reversed
+_UI_IPort_Stereotypes_feature = Stereotypes
+_UI_IPort_Tags_feature = Tags
+_UI_IPort_objectCreation_feature = Object Creation
+_UI_IPort_umlDependencyID_feature = Uml Dependency ID
+_UI_IPort_lastID_feature = Last ID
+_UI_IPort_Dependencies_feature = Dependencies
+_UI_IPort_Annotations_feature = Annotations
+_UI_IProfile_Declaratives_feature = Declaratives
+_UI_IProfile_defaultComposite_feature = Default Composite
+_UI_IProfile_eventsBaseID_feature = Events Base ID
+_UI_IProfile_Classes_feature = Classes
+_UI_IProfile_configurationRelatedTime_feature = Configuration Related Time
+_UI_IProfile_Tags_feature = Tags
+_UI_IProfile_Types_feature = Types
+_UI_IProfile_MatrixLayouts_feature = Matrix Layouts
+_UI_IProfile_license_feature = License
+_UI_IProfile_displayName_feature = Display Name
+_UI_IProject_UserColors_feature = User Colors
+_UI_IProject_defaultSubsystem_feature = Default Subsystem
+_UI_IProject_component_feature = Component
+_UI_IProject_Multiplicities_feature = Multiplicities
+_UI_IProject_Subsystems_feature = Subsystems
+_UI_IProject_Diagrams_feature = Diagrams
+_UI_IProject_Components_feature = Components
+_UI_IProject_PanelDiagrams_feature = Panel Diagrams
+_UI_IProject_HyperLinks_feature = Hyper Links
+_UI_IProject_MSCS_feature = MSCS
+_UI_IProject_UCDiagrams_feature = UC Diagrams
+_UI_IProject_CollaborationDiagrams_feature = Collaboration Diagrams
+_UI_IProject_Declaratives_feature = Declaratives
+_UI_IProject_ComponentDiagrams_feature = Component Diagrams
+_UI_IProject_unitSccProjName_feature = Unit Scc Proj Name
+_UI_IProject_unitSccProjPath_feature = Unit Scc Proj Path
+_UI_IProject_Dependencies_feature = Dependencies
+_UI_IProject_codeUpdateCGTime_feature = Code Update CG Time
+_UI_IRequirement_id_feature = Id
+_UI_IRequirement_name_feature = Name
+_UI_IRequirement_Annotations_feature = Annotations
+_UI_IRequirement_myState_feature = My State
+_UI_IRequirement_lastID_feature = Last ID
+_UI_IRequirement_Stereotypes_feature = Stereotypes
+_UI_IRequirement_modifiedTimeWeak_feature = Modified Time Weak
+_UI_IRequirement_reqID_feature = Req ID
+_UI_IRequirement_displayName_feature = Display Name
+_UI_IRequirement_Dependencies_feature = Dependencies
+_UI_IRequirement_Anchors_feature = Anchors
+_UI_IRequirement_HyperLinks_feature = Hyper Links
+_UI_IRequirement_theMainDiagram_feature = The Main Diagram
+_UI_ISendAction_m_hTarget_feature = MhTarget
+_UI_ISendAction_m_hEvent_feature = MhEvent
+_UI_ISendAction_ArgValCount_feature = Arg Val Count
+_UI_ISendAction_graphElements_feature = Graph Elements
+_UI_IState_parent_feature = Parent
+_UI_IState_stateType_feature = State Type
+_UI_IState_defaultTrans_feature = Default Trans
+_UI_IState_entryAction_feature = Entry Action
+_UI_IState_inheritsFromHandle_feature = Inherits From Handle
+_UI_IState_exitAction_feature = Exit Action
+_UI_IState_nestedStateChart_feature = Nested State Chart
+_UI_IState_requiremenTracabilityHandle_feature = Requiremen Tracability Handle
+_UI_IState_displayName_feature = Display Name
+_UI_IState_Annotations_feature = Annotations
+_UI_IState_Dependencies_feature = Dependencies
+_UI_IState_theMainDiagram_feature = The Main Diagram
+_UI_IState_swimlane_feature = Swimlane
+_UI_IState_codeUpdateCGTime_feature = Code Update CG Time
+_UI_IStateVertex_modifiedTimeWeak_feature = Modified Time Weak
+_UI_IStateVertex_id_feature = Id
+_UI_IStateVertex_description_feature = Description
+_UI_IStateVertex_umlDependencyID_feature = Uml Dependency ID
+_UI_IStateVertex_myState_feature = My State
+_UI_IStateVertex_Stereotypes_feature = Stereotypes
+_UI_IStateVertex_objectCreation_feature = Object Creation
+_UI_IStateVertex_name_feature = Name
+_UI_IStereotype_properties_feature = Properties
+_UI_IStereotype_m2Classes_feature = M2 Classes
+_UI_IStereotype_newTerm_feature = New Term
+_UI_IStereotype_description_feature = Description
+_UI_IStereotype_Tags_feature = Tags
+_UI_IStereotype_lastID_feature = Last ID
+_UI_IStereotype_Inheritances_feature = Inheritances
+_UI_IStereotype_Dependencies_feature = Dependencies
+_UI_IStereotype_requiremenTracabilityHandle_feature = Requiremen Tracability Handle
+_UI_IStereotype_displayName_feature = Display Name
+_UI_IStereotype_objectCreation_feature = Object Creation
+_UI_IStereotype_umlDependencyID_feature = Uml Dependency ID
+_UI_IStereotype_theMainDiagram_feature = The Main Diagram
+_UI_IStereotype_Annotations_feature = Annotations
+_UI_ISwimlane_id_feature = Id
+_UI_ISwimlane_name_feature = Name
+_UI_ISwimlane_modifiedTimeWeak_feature = Modified Time Weak
+_UI_ISwimlane_description_feature = Description
+_UI_ISwimlane_represents_feature = Represents
+_UI_ISwimlane_myState_feature = My State
+_UI_ISwimlane_objectCreation_feature = Object Creation
+_UI_ISwimlane_umlDependencyID_feature = Uml Dependency ID
+_UI_ISwimlane_Swimlanes_feature = Swimlanes
+_UI_ISwimlane_displayName_feature = Display Name
+_UI_ISwimlane_Stereotypes_feature = Stereotypes
+_UI_ISysMLPort_Dependencies_feature = Dependencies
+_UI_ISysMLPort_Stereotypes_feature = Stereotypes
+_UI_ISysMLPort_Tags_feature = Tags
+_UI_ISysMLPort_otherClass_feature = Other Class
+_UI_ISysMLPort_direction_feature = Direction
+_UI_ISysMLPort_description_feature = Description
+_UI_ISysMLPort_lastID_feature = Last ID
+_UI_ISysMLPort_reversed_feature = Reversed
+_UI_ITableLayout_properties_feature = Properties
+_UI_ITableLayout_Stereotypes_feature = Stereotypes
+_UI_ITableLayout_Tags_feature = Tags
+_UI_ITableLayout_TableElementTypes_feature = Table Element Types
+_UI_ITableLayout_DataColumns_feature = Data Columns
+_UI_ITableLayout_description_feature = Description
+_UI_ITag_id_feature = Id
+_UI_ITag_name_feature = Name
+_UI_ITag_modifiedTimeWeak_feature = Modified Time Weak
+_UI_ITag_ValueSpecifications_feature = Value Specifications
+_UI_ITag_typeOf_feature = Type Of
+_UI_ITag_myState_feature = My State
+_UI_ITag_multiplicity_feature = Multiplicity
+_UI_ITag_properties_feature = Properties
+_UI_ITag_description_feature = Description
+_UI_ITag_HyperLinks_feature = Hyper Links
+_UI_ITag_base_feature = Base
+_UI_ITag_metaClass_feature = Meta Class
+_UI_ITag_defaultValue_feature = Default Value
+_UI_ITag_codeUpdateCGTime_feature = Code Update CG Time
+_UI_ITag_displayName_feature = Display Name
+_UI_ITemplateParameter_id_feature = Id
+_UI_ITemplateParameter_name_feature = Name
+_UI_ITemplateParameter_myState_feature = My State
+_UI_ITemplateParameter_modifiedTimeWeak_feature = Modified Time Weak
+_UI_ITemplateParameter_representative_feature = Representative
+_UI_ITransition_itsSource_feature = Its Source
+_UI_ITransition_inheritsFromHandle_feature = Inherits From Handle
+_UI_ITransition_Dependencies_feature = Dependencies
+_UI_ITransition_Stereotypes_feature = Stereotypes
+_UI_ITransition_displayName_feature = Display Name
+_UI_IType_lastID_feature = Last ID
+_UI_IType_Literals_feature = Literals
+_UI_IType_kind_feature = Kind
+_UI_IType_properties_feature = Properties
+_UI_IType_description_feature = Description
+_UI_IType_declaration_feature = Declaration
+_UI_IType_Stereotypes_feature = Stereotypes
+_UI_IType_Attrs_feature = Attrs
+_UI_IType_AssociationElements_feature = Association Elements
+_UI_IType_Tags_feature = Tags
+_UI_IType_typedefBaseType_feature = Typedef Base Type
+_UI_IType_typedefMultiplicity_feature = Typedef Multiplicity
+_UI_IType_typedefIsOrdered_feature = Typedef Is Ordered
+_UI_IType_typedefIsReference_feature = Typedef Is Reference
+_UI_IType_typedefIsConstant_feature = Typedef Is Constant
+_UI_IType_requiremenTracabilityHandle_feature = Requiremen Tracability Handle
+_UI_IType_codeUpdateCGTime_feature = Code Update CG Time
+_UI_IType_theMainDiagram_feature = The Main Diagram
+_UI_IUseCase_id_feature = Id
+_UI_IUseCase_myState_feature = My State
+_UI_IUseCase_name_feature = Name
+_UI_IUseCase_theMainDiagram_feature = The Main Diagram
+_UI_IUseCase_HyperLinks_feature = Hyper Links
+_UI_IUseCase_weakCGTime_feature = Weak CG Time
+_UI_IUseCase_strongCGTime_feature = Strong CG Time
+_UI_IUseCase_classModifier_feature = Class Modifier
+_UI_IUseCase_description_feature = Description
+_UI_IUseCase_Inheritances_feature = Inheritances
+_UI_IUseCase_Associations_feature = Associations
+_UI_IUseCase_UseCaseStereoTypes_feature = Use Case Stereo Types
+_UI_IUseCase_EntryPoints_feature = Entry Points
+_UI_IUseCase_Dependencies_feature = Dependencies
+_UI_IUseCase_lastID_feature = Last ID
+_UI_IUseCase_Diagrams_feature = Diagrams
+_UI_IUseCase_modifiedTimeWeak_feature = Modified Time Weak
+_UI_IUseCase_requiremenTracabilityHandle_feature = Requiremen Tracability Handle
+_UI_IUseCase_cmheader_feature = Cmheader
+_UI_IUseCase_ownerHandle_feature = Owner Handle
+_UI_IUseCase_Declaratives_feature = Declaratives
+_UI_IUseCase_Operations_feature = Operations
+_UI_IUseCase_StateCharts_feature = State Charts
+_UI_IUseCase_itsStateChart_feature = Its State Chart
+_UI_IUseCase_Attrs_feature = Attrs
+_UI_IUseCase_Annotations_feature = Annotations
+_UI_IUseCase_EmbededFiles_feature = Embeded Files
+_UI_IUseCase_objectCreation_feature = Object Creation
+_UI_IUseCase_umlDependencyID_feature = Uml Dependency ID
+_UI_IUseCase_ObjectLinks_feature = Object Links
+_UI_IUseCase_properties_feature = Properties
+_UI_IVariable_isOrdered_feature = Is Ordered
+_UI_IVariable_myTypeOf_feature = My Type Of
+_UI_ISubsystem_id_feature = Id
+_UI_ISubsystem_myState_feature = My State
+_UI_ISubsystem_name_feature = Name
+_UI_ISubsystem_modifiedTimeWeak_feature = Modified Time Weak
+_UI_ISubsystem_defaultComposite_feature = Default Composite
+_UI_ISubsystem_eventsBaseID_feature = Events Base ID
+_UI_ISubsystem_Classes_feature = Classes
+_UI_ISubsystem_configurationRelatedTime_feature = Configuration Related Time
+_UI_ISubsystem_properties_feature = Properties
+_UI_ISubsystem_lastID_feature = Last ID
+_UI_ISubsystem_cmheader_feature = Cmheader
+_UI_ISubsystem_Declaratives_feature = Declaratives
+_UI_ISubsystem_Types_feature = Types
+_UI_ISubsystem_Stereotypes_feature = Stereotypes
+_UI_ISubsystem_PredefinedTypes_feature = Predefined Types
+_UI_ISubsystem_Events_feature = Events
+_UI_ISubsystem_Annotations_feature = Annotations
+_UI_ISubsystem_UseCases_feature = Use Cases
+_UI_ISubsystem_Actors_feature = Actors
+_UI_ISubsystem_description_feature = Description
+_UI_ISubsystem_Tags_feature = Tags
+_UI_ISubsystem_AssociationElements_feature = Association Elements
+_UI_ISubsystem_Dependencies_feature = Dependencies
+_UI_ISubsystem_ownerHandle_feature = Owner Handle
+_UI_ISubsystem_theMainDiagram_feature = The Main Diagram
+_UI_ISubsystem_HyperLinks_feature = Hyper Links
+_UI_ISubsystem_TableLayouts_feature = Table Layouts
+_UI_ISubsystem_MatrixLayouts_feature = Matrix Layouts
+_UI_ISubsystem_TableInstances_feature = Table Instances
+_UI_ISubsystem_MatrixInstances_feature = Matrix Instances
+_UI_ISubsystem_EmbededFiles_feature = Embeded Files
+_UI_ISubsystem_ComponentFiles_feature = Component Files
+_UI_ISubsystem_requiremenTracabilityHandle_feature = Requiremen Tracability Handle
+_UI_ISubsystem_codeUpdateCGTime_feature = Code Update CG Time
+_UI_ISubsystem_objectCreation_feature = Object Creation
+_UI_ISubsystem_umlDependencyID_feature = Uml Dependency ID
+_UI_ISubsystem_displayName_feature = Display Name
+_UI_IPropertyContainer_Subjects_feature = Subjects
+_UI_IPropertySubject_Name_feature = Name
+_UI_IPropertySubject_Metaclasses_feature = Metaclasses
+_UI_IPropertyMetaclass_Name_feature = Name
+_UI_IPropertyMetaclass_Properties_feature = Properties
+_UI_IProperty_Name_feature = Name
+_UI_IProperty_Value_feature = Value
+_UI_IProperty_Type_feature = Type
+_UI_IProperty_ExtraTypeInfo_feature = Extra Type Info
+_UI_IDescription_textRTF_feature = Text RTF
+_UI_IDescription_text_feature = Text
+_UI_IDescription_Hyperlinks_feature = Hyperlinks
+_UI_IMHyperLink_id_feature = Id
+_UI_IMHyperLink_properties_feature = Properties
+_UI_IMHyperLink_modifiedTimeWeak_feature = Modified Time Weak
+_UI_IMHyperLink_dependsOn_feature = Depends On
+_UI_IMHyperLink_linkDispName_feature = Link Disp Name
+_UI_IMHyperLink_linkType_feature = Link Type
+_UI_IMHyperLink_isConfigurationFileHyperLink_feature = Is Configuration File Hyper Link
+_UI_IMHyperLink_linkTarget_feature = Link Target
+_UI_IMHyperLink_displayName_feature = Display Name
+_UI_IMHyperLink_description_feature = Description
+_UI_IMHyperLink_requiremenTracabilityHandle_feature = Requiremen Tracability Handle
+_UI_IMHyperLink_objectCreation_feature = Object Creation
+_UI_IMHyperLink_umlDependencyID_feature = Uml Dependency ID
+_UI_IPrimitiveOperation_properties_feature = Properties
+_UI_IPrimitiveOperation_lastID_feature = Last ID
+_UI_IPrimitiveOperation_Args_feature = Args
+_UI_IPrimitiveOperation_returnType_feature = Return Type
+_UI_IPrimitiveOperation_abstract_feature = Abstract
+_UI_IPrimitiveOperation_final_feature = Final
+_UI_IPrimitiveOperation_concurrency_feature = Concurrency
+_UI_IPrimitiveOperation_protection_feature = Protection
+_UI_IPrimitiveOperation_static_feature = Static
+_UI_IPrimitiveOperation_constant_feature = Constant
+_UI_IPrimitiveOperation_itsBody_feature = Its Body
+_UI_IPrimitiveOperation_Tags_feature = Tags
+_UI_IPrimitiveOperation_Annotations_feature = Annotations
+_UI_IPrimitiveOperation_Dependencies_feature = Dependencies
+_UI_IPrimitiveOperation_Stereotypes_feature = Stereotypes
+_UI_IPrimitiveOperation_myReturnType_feature = My Return Type
+_UI_IPrimitiveOperation_description_feature = Description
+_UI_IPrimitiveOperation_displayName_feature = Display Name
+_UI_IPrimitiveOperation_requiremenTracabilityHandle_feature = Requiremen Tracability Handle
+_UI_IPrimitiveOperation_Declaratives_feature = Declaratives
+_UI_IPrimitiveOperation_itsActivityGraph_feature = Its Activity Graph
+_UI_IPrimitiveOperation_EmbededFiles_feature = Embeded Files
+_UI_IPrimitiveOperation_codeUpdateCGTime_feature = Code Update CG Time
+_UI_IPrimitiveOperation_TemplateParameters_feature = Template Parameters
+_UI_IBody_bodyData_feature = Body Data
+_UI_CGIClassChart_m_pModelObject_feature = MpModel Object
+_UI_CGIClassChart_m_pRoot_feature = MpRoot
+_UI_CGIText_m_str_feature = Mstr
+_UI_CGIText_m_style_feature = Mstyle
+_UI_CGIText_m_color_feature = Mcolor
+_UI_CGIText_m_position_feature = Mposition
+_UI_CGIText_m_nIdent_feature = MnIdent
+_UI_CGIText_m_bImplicitSetRectPoints_feature = MbImplicit Set Rect Points
+_UI_CGIText_m_nOrientationCtrlPt_feature = MnOrientation Ctrl Pt
+_UI_CGIText_m_nVerticalSpacing_feature = MnVertical Spacing
+_UI_CGIText_m_nHorizontalSpacing_feature = MnHorizontal Spacing
+_UI_CGIText_m_transform_feature = Mtransform
+_UI_IColor_m_fgColor_feature = Mfg Color
+_UI_IColor_m_bgColor_feature = Mbg Color
+_UI_IColor_m_bgFlag_feature = Mbg Flag
+_UI_CGIClass_m_pModelObject_feature = MpModel Object
+_UI_CGIClass_m_AdditionalLabel_feature = MAdditional Label
+_UI_CGIClass_m_polygon_feature = Mpolygon
+_UI_CGIClass_m_nNameFormat_feature = MnName Format
+_UI_CGIClass_m_nIsNameFormat_feature = MnIs Name Format
+_UI_CGIClass_Compartments_feature = Compartments
+_UI_CGIClass_m_pParent_feature = MpParent
+_UI_CGIClass_m_transform_feature = Mtransform
+_UI_CGIClass_frameset_feature = Frameset
+_UI_CGIClass_properties_feature = Properties
+_UI_CGIClass_Attrs_feature = Attrs
+_UI_CGIClass_Operations_feature = Operations
+_UI_CGIClass_m_color_feature = Mcolor
+_UI_CGIClass_m_lineWidth_feature = Mline Width
+_UI_CGIClass_m_dSeparatorPosition_feature = MdSeparator Position
+_UI_CGIClass_m_bIsMisplaced_feature = MbIs Misplaced
+_UI_CGIClass_m_pImageViewData_feature = MpImage View Data
+_UI_CGIClass_m_bFramesetModified_feature = MbFrameset Modified
+_UI_IPart_Stereotypes_feature = Stereotypes
+_UI_IPart_otherClass_feature = Other Class
+_UI_IPart_inverse_feature = Inverse
+_UI_IPart_Dependencies_feature = Dependencies
+_UI_IPart_Tags_feature = Tags
+_UI_IPart_initialCallAction_feature = Initial Call Action
+_UI_IPart_displayName_feature = Display Name
+_UI_IPart_codeUpdateCGTime_feature = Code Update CG Time
+_UI_IPart_theMainDiagram_feature = The Main Diagram
+_UI_IPart_Slots_feature = Slots
+_UI_IPart_HyperLinks_feature = Hyper Links
+_UI_CGICompartment_id_feature = Id
+_UI_CGICompartment_m_name_feature = Mname
+_UI_CGICompartment_m_displayOption_feature = Mdisplay Option
+_UI_CGICompartment_m_bShowInherited_feature = MbShow Inherited
+_UI_CGICompartment_m_bOrdered_feature = MbOrdered
+_UI_CGICompartment_Items_feature = Items
+_UI_CGIObjectInstance_m_pModelObject_feature = MpModel Object
+_UI_CGIObjectInstance_m_pParent_feature = MpParent
+_UI_CGIObjectInstance_m_transform_feature = Mtransform
+_UI_CGIObjectInstance_m_AdditionalLabel_feature = MAdditional Label
+_UI_CGIObjectInstance_m_polygon_feature = Mpolygon
+_UI_CGIObjectInstance_m_nNameFormat_feature = MnName Format
+_UI_CGIObjectInstance_m_nIsNameFormat_feature = MnIs Name Format
+_UI_CGIObjectInstance_frameset_feature = Frameset
+_UI_CGIObjectInstance_Compartments_feature = Compartments
+_UI_CGIObjectInstance_m_multiplicity_feature = Mmultiplicity
+_UI_CGIObjectInstance_properties_feature = Properties
+_UI_CGIObjectInstance_Operations_feature = Operations
+_UI_CGIObjectInstance_Attrs_feature = Attrs
+_UI_CGIObjectInstance_m_bFramesetModified_feature = MbFrameset Modified
+_UI_CGIObjectInstance_m_pImageViewData_feature = MpImage View Data
+_UI_IFolder_Elements_feature = Elements
+_UI_IFolder_Files_feature = Files
+_UI_IFolder_requiremenTracabilityHandle_feature = Requiremen Tracability Handle
+_UI_IFolder_codeUpdateCGTime_feature = Code Update CG Time
+_UI_ICodeGenConfigInfoHandle_m2Class_feature = M2 Class
+_UI_ICodeGenConfigInfoHandle_id_feature = Id
+_UI_ICodeGenConfigInfo_id_feature = Id
+_UI_ICodeGenConfigInfo_myState_feature = My State
+_UI_ICodeGenConfigInfo_name_feature = Name
+_UI_ICodeGenConfigInfo_modifiedTimeWeak_feature = Modified Time Weak
+_UI_ICodeGenConfigInfo_HyperLinks_feature = Hyper Links
+_UI_ICodeGenConfigInfo_scopeType_feature = Scope Type
+_UI_ICodeGenConfigInfo_libraries_feature = Libraries
+_UI_ICodeGenConfigInfo_additionalSources_feature = Additional Sources
+_UI_ICodeGenConfigInfo_standardHeaders_feature = Standard Headers
+_UI_ICodeGenConfigInfo_includePath_feature = Include Path
+_UI_ICodeGenConfigInfo_targetMain_feature = Target Main
+_UI_ICodeGenConfigInfo_instrumentation_feature = Instrumentation
+_UI_ICodeGenConfigInfo_timeModel_feature = Time Model
+_UI_ICodeGenConfigInfo_m_generateActors_feature = Mgenerate Actors
+_UI_ICodeGenConfigInfo_statechartImplementation_feature = Statechart Implementation
+_UI_ICodeGenConfigInfo_initializationCode_feature = Initialization Code
+_UI_ICodeGenConfigInfo_checksList_feature = Checks List
+_UI_ICodeGenConfigInfo_ScopeElements_feature = Scope Elements
+_UI_ICodeGenConfigInfo_root_feature = Root
+_UI_ICodeGenConfigInfo_weakCGTime_feature = Weak CG Time
+_UI_ICodeGenConfigInfo_strongCGTime_feature = Strong CG Time
+_UI_ICodeGenConfigInfo_m_allInAnimScope_feature = Mall In Anim Scope
+_UI_ICodeGenConfigInfo_m_generateUsecases_feature = Mgenerate Usecases
+_UI_ICodeGenConfigInfo_Dependencies_feature = Dependencies
+_UI_ICodeGenConfigInfo_InitialInstances_feature = Initial Instances
+_UI_ICodeGenConfigInfo_properties_feature = Properties
+_UI_ICodeGenConfigInfo_Annotations_feature = Annotations
+_UI_ICodeGenConfigInfo_lastID_feature = Last ID
+_UI_ICodeGenConfigInfo_description_feature = Description
+_UI_ICodeGenConfigInfo_Tags_feature = Tags
+_UI_ICodeGenConfigInfo_cmheader_feature = Cmheader
+_UI_ICodeGenConfigInfo_requiremenTracabilityHandle_feature = Requiremen Tracability Handle
+_UI_ICodeGenConfigInfo_Stereotypes_feature = Stereotypes
+_UI_ICodeGenConfigInfo_codeUpdateCGTime_feature = Code Update CG Time
+_UI_ICodeGenConfigInfo_AnimScopeElements_feature = Anim Scope Elements
+_UI_ICodeGenConfigInfo_EmbededFiles_feature = Embeded Files
+_UI_ICodeGenConfigInfo_objectCreation_feature = Object Creation
+_UI_ICodeGenConfigInfo_umlDependencyID_feature = Uml Dependency ID
+_UI_IConstructor_id_feature = Id
+_UI_IConstructor_myState_feature = My State
+_UI_IConstructor_modifiedTimeWeak_feature = Modified Time Weak
+_UI_IConstructor_returnType_feature = Return Type
+_UI_IConstructor_abstract_feature = Abstract
+_UI_IConstructor_final_feature = Final
+_UI_IConstructor_concurrency_feature = Concurrency
+_UI_IConstructor_protection_feature = Protection
+_UI_IConstructor_static_feature = Static
+_UI_IConstructor_constant_feature = Constant
+_UI_IConstructor_itsBody_feature = Its Body
+_UI_IConstructor_initializer_feature = Initializer
+_UI_IConstructor_Args_feature = Args
+_UI_IConstructor_name_feature = Name
+_UI_IConstructor_description_feature = Description
+_UI_IConstructor_requiremenTracabilityHandle_feature = Requiremen Tracability Handle
+_UI_IConstructor_codeUpdateCGTime_feature = Code Update CG Time
+_UI_IConstructor_Tags_feature = Tags
+_UI_IConstructor_lastID_feature = Last ID
+_UI_CGIPortConnector_m_pModelObject_feature = MpModel Object
+_UI_CGIPortConnector_m_pParent_feature = MpParent
+_UI_CGIPortConnector_m_transform_feature = Mtransform
+_UI_CGIPortConnector_m_AdditionalLabel_feature = MAdditional Label
+_UI_CGIPortConnector_m_position_feature = Mposition
+_UI_CGIPortConnector_m_pInheritsFrom_feature = MpInherits From
+_UI_CGIPortConnector_m_nInheritanceMask_feature = MnInheritance Mask
+_UI_CGIPortConnector_m_SubType_feature = MSub Type
+_UI_CGIPortConnector_m_providedInterfaceLabel_feature = Mprovided Interface Label
+_UI_CGIPortConnector_m_requiredInterfaceLabel_feature = Mrequired Interface Label
+_UI_CGIPortConnector_properties_feature = Properties
+_UI_CGIPortConnector_m_bVisible_feature = MbVisible
+_UI_IObjectLink_Stereotypes_feature = Stereotypes
+_UI_IObjectLink_Tags_feature = Tags
+_UI_IObjectLink_toLink_feature = To Link
+_UI_IObjectLink_fromLink_feature = From Link
+_UI_IObjectLink_instantiates_feature = Instantiates
+_UI_IObjectLink_end1Multiplicity_feature = End1 Multiplicity
+_UI_IObjectLink_end2Multiplicity_feature = End2 Multiplicity
+_UI_IObjectLink_toPort_feature = To Port
+_UI_IObjectLink_fromPort_feature = From Port
+_UI_IObjectLink_description_feature = Description
+_UI_IObjectLink_requiremenTracabilityHandle_feature = Requiremen Tracability Handle
+_UI_IObjectLink_codeUpdateCGTime_feature = Code Update CG Time
+_UI_IObjectLink_objectCreation_feature = Object Creation
+_UI_IObjectLink_umlDependencyID_feature = Uml Dependency ID
+_UI_IMetaLinkHandle_m2Class_feature = M2 Class
+_UI_IMetaLinkHandle_filename_feature = Filename
+_UI_IMetaLinkHandle_subsystem_feature = Subsystem
+_UI_IMetaLinkHandle_class_feature = Class
+_UI_IMetaLinkHandle_name_feature = Name
+_UI_IMetaLinkHandle_id_feature = Id
+_UI_CGIObjectLink_properties_feature = Properties
+_UI_CGIObjectLink_m_pModelObject_feature = MpModel Object
+_UI_CGIObjectLink_m_pParent_feature = MpParent
+_UI_CGIObjectLink_m_pSource_feature = MpSource
+_UI_CGIObjectLink_m_sourceType_feature = Msource Type
+_UI_CGIObjectLink_m_pTarget_feature = MpTarget
+_UI_CGIObjectLink_m_targetType_feature = Mtarget Type
+_UI_CGIObjectLink_m_direction_feature = Mdirection
+_UI_CGIObjectLink_m_rpn_feature = Mrpn
+_UI_CGIObjectLink_m_arrow_feature = Marrow
+_UI_CGIObjectLink_m_anglePoint1_feature = Mangle Point1
+_UI_CGIObjectLink_m_anglePoint2_feature = Mangle Point2
+_UI_CGIObjectLink_m_line_style_feature = Mline style
+_UI_CGIObjectLink_m_SourcePort_feature = MSource Port
+_UI_CGIObjectLink_m_TargetPort_feature = MTarget Port
+_UI_CGIObjectLink_m_bShowSourceMultiplicity_feature = MbShow Source Multiplicity
+_UI_CGIObjectLink_m_bShowSourceRole_feature = MbShow Source Role
+_UI_CGIObjectLink_m_bShowTargetMultiplicity_feature = MbShow Target Multiplicity
+_UI_CGIObjectLink_m_bShowTargetRole_feature = MbShow Target Role
+_UI_CGIObjectLink_m_bShowLinkName_feature = MbShow Link Name
+_UI_CGIObjectLink_m_sourceRole_feature = Msource Role
+_UI_CGIObjectLink_m_targetRole_feature = Mtarget Role
+_UI_CGIObjectLink_m_sourceMultiplicity_feature = Msource Multiplicity
+_UI_CGIObjectLink_m_targetMultiplicity_feature = Mtarget Multiplicity
+_UI_IMultiplicityItem_name_feature = Name
+_UI_IMultiplicityItem_count_feature = Count
+_UI_IAssociationEnd_id_feature = Id
+_UI_IAssociationEnd_myState_feature = My State
+_UI_IAssociationEnd_name_feature = Name
+_UI_IAssociationEnd_multiplicity_feature = Multiplicity
+_UI_IAssociationEnd_otherClass_feature = Other Class
+_UI_IAssociationEnd_linkName_feature = Link Name
+_UI_IAssociationEnd_linkType_feature = Link Type
+_UI_IAssociationEnd_navigability_feature = Navigability
+_UI_IAssociationEnd_inverse_feature = Inverse
+_UI_IAssociationEnd_modifiedTimeWeak_feature = Modified Time Weak
+_UI_IAssociationEnd_Qualifiers_feature = Qualifiers
+_UI_IAssociationEnd_Stereotypes_feature = Stereotypes
+_UI_IAssociationEnd_codeUpdateCGTime_feature = Code Update CG Time
+_UI_IAssociationEnd_qualifierType_feature = Qualifier Type
+_UI_IReception_id_feature = Id
+_UI_IReception_myState_feature = My State
+_UI_IReception_Args_feature = Args
+_UI_IReception_event_feature = Event
+_UI_IReception_modifiedTimeWeak_feature = Modified Time Weak
+_UI_IReception_Dependencies_feature = Dependencies
+_UI_IReception_lastID_feature = Last ID
+_UI_IReception_requiremenTracabilityHandle_feature = Requiremen Tracability Handle
+_UI_IReception_description_feature = Description
+_UI_IReception_objectCreation_feature = Object Creation
+_UI_IReception_umlDependencyID_feature = Uml Dependency ID
+_UI_IStateChart_States_feature = States
+_UI_IStateChart_baseVersion_feature = Base Version
+_UI_IStateChart_diagram_feature = Diagram
+_UI_IStateChart_Views_feature = Views
+_UI_IStateChart_inheritsFromHandle_feature = Inherits From Handle
+_UI_IDefaultDrvdTrans_itsSource_feature = Its Source
+_UI_IDefaultDrvdTrans_ofState_feature = Of State
+_UI_IDefaultDrvdTrans_errorStatus_feature = Error Status
+_UI_IDefaultDrvdTrans_inheritsFromHandle_feature = Inherits From Handle
+_UI_IDefaultDrvdTrans_Annotations_feature = Annotations
+_UI_IDefaultDrvdTrans_Stereotypes_feature = Stereotypes
+_UI_ILabel_id_feature = Id
+_UI_ILabel_itsTrigger_feature = Its Trigger
+_UI_ILabel_itsAction_feature = Its Action
+_UI_ILabel_itsGuard_feature = Its Guard
+_UI_ILabel_modifiedTimeWeak_feature = Modified Time Weak
+_UI_ILabel_myState_feature = My State
+_UI_ILabel_inheritsFromHandle_feature = Inherits From Handle
+_UI_ILabel_codeUpdateCGTime_feature = Code Update CG Time
+_UI_ILabel_objectCreation_feature = Object Creation
+_UI_ILabel_umlDependencyID_feature = Uml Dependency ID
+_UI_IInterfaceItemTrigger_itsInterfaceItem_feature = Its Interface Item
+_UI_IInterfaceItemTrigger_inheritsFromHandle_feature = Inherits From Handle
+_UI_IHistoryConnector_id_feature = Id
+_UI_IHistoryConnector_name_feature = Name
+_UI_IHistoryConnector_parent_feature = Parent
+_UI_IHistoryConnector_connectorType_feature = Connector Type
+_UI_IHistoryConnector_myState_feature = My State
+_UI_IHistoryConnector_modifiedTimeWeak_feature = Modified Time Weak
+_UI_IHistoryConnector_objectCreation_feature = Object Creation
+_UI_IHistoryConnector_umlDependencyID_feature = Uml Dependency ID
+_UI_ITimeout_time_feature = Time
+_UI_ITimeout_inheritsFromHandle_feature = Inherits From Handle
+_UI_CGIStateChart_m_pModelObject_feature = MpModel Object
+_UI_CGIStateChart_m_pRoot_feature = MpRoot
+_UI_CGIStateChart_myState_feature = My State
+_UI_CGIStateChart_m_pInheritsFrom_feature = MpInherits From
+_UI_CGIStateChart_DiagramList_feature = Diagram List
+_UI_CGIStateChart_properties_feature = Properties
+_UI_CGIState_m_pModelObject_feature = MpModel Object
+_UI_CGIState_m_AdditionalLabel_feature = MAdditional Label
+_UI_CGIState_m_polygon_feature = Mpolygon
+_UI_CGIState_m_nNameFormat_feature = MnName Format
+_UI_CGIState_m_nIsNameFormat_feature = MnIs Name Format
+_UI_CGIState_nAndLineCount_feature = NAnd Line Count
+_UI_CGIState_m_nInheritanceMask_feature = MnInheritance Mask
+_UI_CGIState_m_pDefaultComponentRelation_feature = MpDefault Component Relation
+_UI_CGIState_properties_feature = Properties
+_UI_CGIState_m_pParent_feature = MpParent
+_UI_CGIState_m_transform_feature = Mtransform
+_UI_CGIState_andLinePoly_feature = And Line Poly
+_UI_CGIState_m_pVirtualParent_feature = MpVirtual Parent
+_UI_CGIState_m_moveAndLineTimeStamp_feature = Mmove And Line Time Stamp
+_UI_CGIState_myState_feature = My State
+_UI_CGIState_m_pInheritsFrom_feature = MpInherits From
+_UI_CGIState_frameset_feature = Frameset
+_UI_CGIState_m_bFramesetModified_feature = MbFrameset Modified
+_UI_CGIState_m_bIsMisplaced_feature = MbIs Misplaced
+_UI_CGIState_m_color_feature = Mcolor
+_UI_CGIState_m_lineWidth_feature = Mline Width
+_UI_CGIState_Compartments_feature = Compartments
+_UI_CGIConnector_m_pModelObject_feature = MpModel Object
+_UI_CGIConnector_m_pParent_feature = MpParent
+_UI_CGIConnector_m_transform_feature = Mtransform
+_UI_CGIConnector_m_position_feature = Mposition
+_UI_CGIConnector_m_nInheritanceMask_feature = MnInheritance Mask
+_UI_CGIConnector_m_SubType_feature = MSub Type
+_UI_CGIConnector_properties_feature = Properties
+_UI_CGIConnector_m_AdditionalLabel_feature = MAdditional Label
+_UI_CGIConnector_myState_feature = My State
+_UI_CGIConnector_m_pInheritsFrom_feature = MpInherits From
+_UI_CGITrans_properties_feature = Properties
+_UI_CGITrans_m_pModelObject_feature = MpModel Object
+_UI_CGITrans_m_pParent_feature = MpParent
+_UI_CGITrans_m_pSource_feature = MpSource
+_UI_CGITrans_m_sourceType_feature = Msource Type
+_UI_CGITrans_m_pTarget_feature = MpTarget
+_UI_CGITrans_m_targetType_feature = Mtarget Type
+_UI_CGITrans_m_direction_feature = Mdirection
+_UI_CGITrans_m_rpn_feature = Mrpn
+_UI_CGITrans_m_anglePoint1_feature = Mangle Point1
+_UI_CGITrans_m_anglePoint2_feature = Mangle Point2
+_UI_CGITrans_m_line_style_feature = Mline style
+_UI_CGITrans_m_SourcePort_feature = MSource Port
+_UI_CGITrans_m_TargetPort_feature = MTarget Port
+_UI_CGITrans_m_nInheritanceMask_feature = MnInheritance Mask
+_UI_CGITrans_m_bShowName_feature = MbShow Name
+_UI_CGITrans_m_arrow_feature = Marrow
+_UI_CGITrans_myState_feature = My State
+_UI_CGITrans_m_pInheritsFrom_feature = MpInherits From
+_UI_CGITrans_m_color_feature = Mcolor
+_UI_CGITrans_m_lineWidth_feature = Mline Width
+_UI_CGIAssociationEnd_properties_feature = Properties
+_UI_CGIAssociationEnd_m_pModelObject_feature = MpModel Object
+_UI_CGIAssociationEnd_m_pParent_feature = MpParent
+_UI_CGIAssociationEnd_m_pSource_feature = MpSource
+_UI_CGIAssociationEnd_m_sourceType_feature = Msource Type
+_UI_CGIAssociationEnd_m_pTarget_feature = MpTarget
+_UI_CGIAssociationEnd_m_targetType_feature = Mtarget Type
+_UI_CGIAssociationEnd_m_direction_feature = Mdirection
+_UI_CGIAssociationEnd_m_rpn_feature = Mrpn
+_UI_CGIAssociationEnd_m_anglePoint1_feature = Mangle Point1
+_UI_CGIAssociationEnd_m_anglePoint2_feature = Mangle Point2
+_UI_CGIAssociationEnd_m_line_style_feature = Mline style
+_UI_CGIAssociationEnd_m_SourcePort_feature = MSource Port
+_UI_CGIAssociationEnd_m_TargetPort_feature = MTarget Port
+_UI_CGIAssociationEnd_m_pInverseModelObject_feature = MpInverse Model Object
+_UI_CGIAssociationEnd_m_pInstance_feature = MpInstance
+_UI_CGIAssociationEnd_m_pInverseInstance_feature = MpInverse Instance
+_UI_CGIAssociationEnd_m_bShowSourceMultiplicity_feature = MbShow Source Multiplicity
+_UI_CGIAssociationEnd_m_bShowSourceRole_feature = MbShow Source Role
+_UI_CGIAssociationEnd_m_bShowTargetMultiplicity_feature = MbShow Target Multiplicity
+_UI_CGIAssociationEnd_m_bShowTargetRole_feature = MbShow Target Role
+_UI_CGIAssociationEnd_m_bShowLinkName_feature = MbShow Link Name
+_UI_CGIAssociationEnd_m_bShowSpecificType_feature = MbShow Specific Type
+_UI_CGIAssociationEnd_m_bInstance_feature = MbInstance
+_UI_CGIAssociationEnd_m_bShowQualifier1_feature = MbShow Qualifier1
+_UI_CGIAssociationEnd_m_bShowQualifier2_feature = MbShow Qualifier2
+_UI_CGIAssociationEnd_m_sourceRole_feature = Msource Role
+_UI_CGIAssociationEnd_m_targetRole_feature = Mtarget Role
+_UI_CGIAssociationEnd_m_sourceMultiplicity_feature = Msource Multiplicity
+_UI_CGIAssociationEnd_m_targetMultiplicity_feature = Mtarget Multiplicity
+_UI_CGIAssociationEnd_m_sourceQualifier_feature = Msource Qualifier
+_UI_CGIAssociationEnd_m_targetQualifier_feature = Mtarget Qualifier
+_UI_CGIAssociationEnd_m_specificType_feature = Mspecific Type
+_UI_CGIAssociationEnd_m_arrow_feature = Marrow
+_UI_IAssociationEndHandle_m2Class_feature = M2 Class
+_UI_IAssociationEndHandle_filename_feature = Filename
+_UI_IAssociationEndHandle_subsystem_feature = Subsystem
+_UI_IAssociationEndHandle_class_feature = Class
+_UI_IAssociationEndHandle_name_feature = Name
+_UI_IAssociationEndHandle_id_feature = Id
+_UI_IObjectLinkHandle_m2Class_feature = M2 Class
+_UI_IObjectLinkHandle_filename_feature = Filename
+_UI_IObjectLinkHandle_subsystem_feature = Subsystem
+_UI_IObjectLinkHandle_class_feature = Class
+_UI_IObjectLinkHandle_name_feature = Name
+_UI_IObjectLinkHandle_id_feature = Id
+_UI_IMSC_id_feature = Id
+_UI_IMSC_myState_feature = My State
+_UI_IMSC_properties_feature = Properties
+_UI_IMSC_name_feature = Name
+_UI_IMSC_lastModifiedTime_feature = Last Modified Time
+_UI_IMSC_graphicChart_feature = Graphic Chart
+_UI_IMSC_defaultSubsystem_feature = Default Subsystem
+_UI_IMSC_m_pICollaboration_feature = MpI Collaboration
+_UI_IMSC_cmheader_feature = Cmheader
+_UI_IMSC_lastID_feature = Last ID
+_UI_IMSC_ownerHandle_feature = Owner Handle
+_UI_IMSC_description_feature = Description
+_UI_IMSC_modifiedTimeWeak_feature = Modified Time Weak
+_UI_IMSC_Stereotypes_feature = Stereotypes
+_UI_IMSC_Tags_feature = Tags
+_UI_IMSC_requiremenTracabilityHandle_feature = Requiremen Tracability Handle
+_UI_IMSC_Annotations_feature = Annotations
+_UI_IMSC_objectCreation_feature = Object Creation
+_UI_IMSC_umlDependencyID_feature = Uml Dependency ID
+_UI_CGIMscChart_vLadderMargin_feature = VLadder Margin
+_UI_CGIMscChart_m_usingActivationBar_feature = Musing Activation Bar
+_UI_CGIMscChart_id_feature = Id
+_UI_CGIMscChart_m_type_feature = Mtype
+_UI_CGIMscChart_m_pModelObject_feature = MpModel Object
+_UI_CGIMscChart_m_pParent_feature = MpParent
+_UI_CGIMscChart_m_name_feature = Mname
+_UI_CGIMscChart_m_drawBehavior_feature = Mdraw Behavior
+_UI_CGIMscChart_m_bIsPreferencesInitialized_feature = MbIs Preferences Initialized
+_UI_CGIMscChart_elementList_feature = Element List
+_UI_CGIMscChart_graphElements_feature = Graph Elements
+_UI_CGIMscChart_m_access_feature = Maccess
+_UI_CGIMscChart_m_modified_feature = Mmodified
+_UI_CGIMscChart_m_fileVersion_feature = Mfile Version
+_UI_CGIMscChart_m_nModifyDate_feature = MnModify Date
+_UI_CGIMscChart_m_nCreateDate_feature = MnCreate Date
+_UI_CGIMscChart_m_creator_feature = Mcreator
+_UI_CGIMscChart_m_bScaleWithZoom_feature = MbScale With Zoom
+_UI_CGIMscChart_m_arrowStyle_feature = Marrow Style
+_UI_CGIMscChart_m_pRoot_feature = MpRoot
+_UI_CGIMscChart_m_currentLeftTop_feature = Mcurrent Left Top
+_UI_CGIMscChart_m_currentRightBottom_feature = Mcurrent Right Bottom
+_UI_CGIBox_m_pModelObject_feature = MpModel Object
+_UI_CGIBox_m_polygon_feature = Mpolygon
+_UI_CGIBox_m_nNameFormat_feature = MnName Format
+_UI_CGIBox_m_nIsNameFormat_feature = MnIs Name Format
+_UI_CGIBox_Compartments_feature = Compartments
+_UI_CGIBox_m_pParent_feature = MpParent
+_UI_CGIBox_m_transform_feature = Mtransform
+_UI_CGIBox_properties_feature = Properties
+_UI_CGIMscColumnCR_m_pModelObject_feature = MpModel Object
+_UI_CGIMscColumnCR_m_pParent_feature = MpParent
+_UI_CGIMscColumnCR_m_transform_feature = Mtransform
+_UI_CGIMscColumnCR_m_AdditionalLabel_feature = MAdditional Label
+_UI_CGIMscColumnCR_m_position_feature = Mposition
+_UI_CGIMscColumnCR_m_pInheritsFrom_feature = MpInherits From
+_UI_CGIMscColumnCR_m_nInheritanceMask_feature = MnInheritance Mask
+_UI_CGIMscColumnCR_m_SubType_feature = MSub Type
+_UI_CGIMscColumnCR_properties_feature = Properties
+_UI_CGIMFCCtrl_properties_feature = Properties
+_UI_CGIMFCCtrl_m_pModelObject_feature = MpModel Object
+_UI_CGIMFCCtrl_m_pParent_feature = MpParent
+_UI_CGIMFCCtrl_m_transform_feature = Mtransform
+_UI_CGIMFCCtrl_m_polygon_feature = Mpolygon
+_UI_CGIMFCCtrl_m_nNameFormat_feature = MnName Format
+_UI_CGIMFCCtrl_m_nIsNameFormat_feature = MnIs Name Format
+_UI_CGIMFCCtrl_Compartments_feature = Compartments
+_UI_CGIMFCCtrl_m_csModelObjPath_feature = Mcs Model Obj Path
+_UI_CGIMFCCtrl_m_csName_feature = Mcs Name
+_UI_CGIMFCCtrl_m_PartsArray_feature = MParts Array
+_UI_CGIMFCCtrl_m_csButtonCaption_feature = Mcs Button Caption
+_UI_CGIActiveX_properties_feature = Properties
+_UI_CGIActiveX_m_pModelObject_feature = MpModel Object
+_UI_CGIActiveX_m_pParent_feature = MpParent
+_UI_CGIActiveX_m_transform_feature = Mtransform
+_UI_CGIActiveX_m_polygon_feature = Mpolygon
+_UI_CGIActiveX_m_nNameFormat_feature = MnName Format
+_UI_CGIActiveX_m_nIsNameFormat_feature = MnIs Name Format
+_UI_CGIActiveX_Compartments_feature = Compartments
+_UI_CGIActiveX_m_csModelObjPath_feature = Mcs Model Obj Path
+_UI_CGIActiveX_m_csName_feature = Mcs Name
+_UI_CGIActiveX_m_PartsArray_feature = MParts Array
+_UI_CGIFreeShape_properties_feature = Properties
+_UI_CGIFreeShape_m_pModelObject_feature = MpModel Object
+_UI_CGIFreeShape_m_pParent_feature = MpParent
+_UI_CGIFreeShape_m_transform_feature = Mtransform
+_UI_CGIFreeShape_m_points_feature = Mpoints
+_UI_CGIFreeText_m_pModelObject_feature = MpModel Object
+_UI_CGIFreeText_m_pParent_feature = MpParent
+_UI_CGIFreeText_m_transform_feature = Mtransform
+_UI_CGIFreeText_m_points_feature = Mpoints
+_UI_CGIFreeText_m_text_feature = Mtext
+_UI_CGIFreeText_properties_feature = Properties
+_UI_CGITextBox_properties_feature = Properties
+_UI_CGITextBox_m_pModelObject_feature = MpModel Object
+_UI_CGITextBox_m_pParent_feature = MpParent
+_UI_CGITextBox_m_transform_feature = Mtransform
+_UI_CGITextBox_m_polygon_feature = Mpolygon
+_UI_CGITextBox_m_nNameFormat_feature = MnName Format
+_UI_CGITextBox_m_nIsNameFormat_feature = MnIs Name Format
+_UI_CGITextBox_Compartments_feature = Compartments
+_UI_CGITextBox_m_csModelObjPath_feature = Mcs Model Obj Path
+_UI_CGITextBox_m_csName_feature = Mcs Name
+_UI_CGITextBox_m_PartsArray_feature = MParts Array
+_UI_CGIAnnotation_properties_feature = Properties
+_UI_CGIAnnotation_m_pParent_feature = MpParent
+_UI_CGIAnnotation_m_transform_feature = Mtransform
+_UI_CGIAnnotation_m_AdditionalLabel_feature = MAdditional Label
+_UI_CGIAnnotation_m_polygon_feature = Mpolygon
+_UI_CGIAnnotation_m_nNameFormat_feature = MnName Format
+_UI_CGIAnnotation_m_nIsNameFormat_feature = MnIs Name Format
+_UI_CGIAnnotation_iTempdisplayTextFlag_feature = ITempdisplay Text Flag
+_UI_CGIAnnotation_m_bIsBoxStyle_feature = MbIs Box Style
+_UI_CGIAnnotation_m_pModelObject_feature = MpModel Object
+_UI_CGIAnnotation_m_color_feature = Mcolor
+_UI_CGIAnnotation_m_lineWidth_feature = Mline Width
+_UI_CGIAnnotation_frameset_feature = Frameset
+_UI_CGIAnnotation_Compartments_feature = Compartments
+_UI_CGIAnnotation_m_bIsStructured_feature = MbIs Structured
+_UI_CGIAnnotation_m_bFramesetModified_feature = MbFrameset Modified
+_UI_IBranch_id_feature = Id
+_UI_IBranch_name_feature = Name
+_UI_IBranch_modifiedTimeWeak_feature = Modified Time Weak
+_UI_IBranch_parent_feature = Parent
+_UI_IBranch_connectorType_feature = Connector Type
+_UI_IBranch_myState_feature = My State
+_UI_IBranch_Stereotypes_feature = Stereotypes
+_UI_IBranch_codeUpdateCGTime_feature = Code Update CG Time
+_UI_IBranch_objectCreation_feature = Object Creation
+_UI_IBranch_umlDependencyID_feature = Uml Dependency ID
+_UI_IUCDiagram_properties_feature = Properties
+_UI_IUCDiagram_graphicChart_feature = Graphic Chart
+_UI_IUCDiagram_modifiedTimeWeak_feature = Modified Time Weak
+_UI_CGICompositeClass_m_pModelObject_feature = MpModel Object
+_UI_CGICompositeClass_m_pParent_feature = MpParent
+_UI_CGICompositeClass_m_AdditionalLabel_feature = MAdditional Label
+_UI_CGICompositeClass_m_polygon_feature = Mpolygon
+_UI_CGICompositeClass_m_nNameFormat_feature = MnName Format
+_UI_CGICompositeClass_m_nIsNameFormat_feature = MnIs Name Format
+_UI_CGICompositeClass_Compartments_feature = Compartments
+_UI_CGICompositeClass_properties_feature = Properties
+_UI_CGICompositeClass_m_color_feature = Mcolor
+_UI_CGICompositeClass_m_lineWidth_feature = Mline Width
+_UI_CGIInformationFlow_m_pModelObject_feature = MpModel Object
+_UI_CGIInformationFlow_m_pParent_feature = MpParent
+_UI_CGIInformationFlow_m_pSource_feature = MpSource
+_UI_CGIInformationFlow_m_sourceType_feature = Msource Type
+_UI_CGIInformationFlow_m_pTarget_feature = MpTarget
+_UI_CGIInformationFlow_m_targetType_feature = Mtarget Type
+_UI_CGIInformationFlow_m_direction_feature = Mdirection
+_UI_CGIInformationFlow_m_rpn_feature = Mrpn
+_UI_CGIInformationFlow_m_anglePoint1_feature = Mangle Point1
+_UI_CGIInformationFlow_m_anglePoint2_feature = Mangle Point2
+_UI_CGIInformationFlow_m_line_style_feature = Mline style
+_UI_CGIInformationFlow_m_SourcePort_feature = MSource Port
+_UI_CGIInformationFlow_m_TargetPort_feature = MTarget Port
+_UI_CGIInformationFlow_m_bShowKeyword_feature = MbShow Keyword
+_UI_CGIInformationFlow_m_showConveyed_feature = Mshow Conveyed
+_UI_CGIInformationFlow_m_keyword_feature = Mkeyword
+_UI_CGIInformationFlow_m_conveyed_feature = Mconveyed
+_UI_CGIInformationFlow_m_arrow_feature = Marrow
+_UI_CGIInformationFlow_properties_feature = Properties
+_UI_IInformationFlow_id_feature = Id
+_UI_IInformationFlow_myState_feature = My State
+_UI_IInformationFlow_name_feature = Name
+_UI_IInformationFlow_Conveyed_feature = Conveyed
+_UI_IInformationFlow_end1__feature = End1 
+_UI_IInformationFlow_end2__feature = End2 
+_UI_IInformationFlow_direction__feature = Direction 
+_UI_IInformationFlow_modifiedTimeWeak_feature = Modified Time Weak
+_UI_IInformationFlow_description_feature = Description
+_UI_IInformationFlow_end1ObjectPort__feature = End1 Object Port 
+_UI_IInformationFlow_end2ObjectPort__feature = End2 Object Port 
+_UI_IInformationFlow_requiremenTracabilityHandle_feature = Requiremen Tracability Handle
+_UI_IInformationFlow_HyperLinks_feature = Hyper Links
+_UI_IInformationFlow_Dependencies_feature = Dependencies
+_UI_IInformationFlow_Annotations_feature = Annotations
+_UI_IInformationFlow_objectCreation_feature = Object Creation
+_UI_IInformationFlow_umlDependencyID_feature = Uml Dependency ID
+_UI_IInformationFlow_Stereotypes_feature = Stereotypes
+_UI_IInformationFlow_Tags_feature = Tags
+_UI_IInformationItem_id_feature = Id
+_UI_IInformationItem_myState_feature = My State
+_UI_IInformationItem_name_feature = Name
+_UI_IInformationItem_requiremenTracabilityHandle_feature = Requiremen Tracability Handle
+_UI_IInformationItem_modifiedTimeWeak_feature = Modified Time Weak
+_UI_IInformationItem_description_feature = Description
+_UI_IInformationItem_Represented_feature = Represented
+_UI_IInformationItem_Annotations_feature = Annotations
+_UI_IInformationItem_objectCreation_feature = Object Creation
+_UI_IInformationItem_umlDependencyID_feature = Uml Dependency ID
+_UI_CGIInheritance_m_pModelObject_feature = MpModel Object
+_UI_CGIInheritance_m_pParent_feature = MpParent
+_UI_CGIInheritance_m_pSource_feature = MpSource
+_UI_CGIInheritance_m_sourceType_feature = Msource Type
+_UI_CGIInheritance_m_pTarget_feature = MpTarget
+_UI_CGIInheritance_m_targetType_feature = Mtarget Type
+_UI_CGIInheritance_m_direction_feature = Mdirection
+_UI_CGIInheritance_m_rpn_feature = Mrpn
+_UI_CGIInheritance_m_anglePoint1_feature = Mangle Point1
+_UI_CGIInheritance_m_anglePoint2_feature = Mangle Point2
+_UI_CGIInheritance_m_line_style_feature = Mline style
+_UI_CGIInheritance_m_SourcePort_feature = MSource Port
+_UI_CGIInheritance_m_TargetPort_feature = MTarget Port
+_UI_CGIInheritance_m_ShowName_feature = MShow Name
+_UI_CGIInheritance_m_ShowStereotype_feature = MShow Stereotype
+_UI_CGIInheritance_properties_feature = Properties
+_UI_CGIInheritance_m_color_feature = Mcolor
+_UI_CGIInheritance_m_lineWidth_feature = Mline Width
+_UI_CGIInheritance_m_arrow_feature = Marrow
+_UI_CGIPackage_m_pModelObject_feature = MpModel Object
+_UI_CGIPackage_m_pParent_feature = MpParent
+_UI_CGIPackage_m_transform_feature = Mtransform
+_UI_CGIPackage_m_polygon_feature = Mpolygon
+_UI_CGIPackage_m_nNameFormat_feature = MnName Format
+_UI_CGIPackage_m_nIsNameFormat_feature = MnIs Name Format
+_UI_CGIPackage_Compartments_feature = Compartments
+_UI_CGIPackage_properties_feature = Properties
+_UI_CGIPackage_m_color_feature = Mcolor
+_UI_CGIPackage_m_lineWidth_feature = Mline Width
+_UI_CGIPackage_m_AdditionalLabel_feature = MAdditional Label
+_UI_CGIPackage_frameset_feature = Frameset
+_UI_CGIPackage_m_bIsStructured_feature = MbIs Structured
+_UI_ITriggered_id_feature = Id
+_UI_ITriggered_name_feature = Name
+_UI_ITriggered_displayName_feature = Display Name
+_UI_ITriggered_Args_feature = Args
+_UI_ITriggered_returnType_feature = Return Type
+_UI_ITriggered_abstract_feature = Abstract
+_UI_ITriggered_final_feature = Final
+_UI_ITriggered_concurrency_feature = Concurrency
+_UI_ITriggered_protection_feature = Protection
+_UI_ITriggered_modifiedTimeWeak_feature = Modified Time Weak
+_UI_ITriggered_myState_feature = My State
+_UI_CGIBasicClass_m_pModelObject_feature = MpModel Object
+_UI_CGIBasicClass_m_pParent_feature = MpParent
+_UI_CGIBasicClass_m_transform_feature = Mtransform
+_UI_CGIBasicClass_m_AdditionalLabel_feature = MAdditional Label
+_UI_CGIBasicClass_m_polygon_feature = Mpolygon
+_UI_CGIBasicClass_m_nNameFormat_feature = MnName Format
+_UI_CGIBasicClass_m_nIsNameFormat_feature = MnIs Name Format
+_UI_CGIBasicClass_Compartments_feature = Compartments
+_UI_CGIBasicClass_properties_feature = Properties
+_UI_CGIBasicClass_m_pImageViewData_feature = MpImage View Data
+_UI_IAnchor_id_feature = Id
+_UI_IAnchor_myState_feature = My State
+_UI_IAnchor_name_feature = Name
+_UI_IAnchor_dependsOn_feature = Depends On
+_UI_IAnchor_modifiedTimeWeak_feature = Modified Time Weak
+_UI_CGIAnchor_m_pModelObject_feature = MpModel Object
+_UI_CGIAnchor_m_pParent_feature = MpParent
+_UI_CGIAnchor_m_pSource_feature = MpSource
+_UI_CGIAnchor_m_sourceType_feature = Msource Type
+_UI_CGIAnchor_m_pTarget_feature = MpTarget
+_UI_CGIAnchor_m_targetType_feature = Mtarget Type
+_UI_CGIAnchor_m_direction_feature = Mdirection
+_UI_CGIAnchor_m_rpn_feature = Mrpn
+_UI_CGIAnchor_m_anglePoint1_feature = Mangle Point1
+_UI_CGIAnchor_m_anglePoint2_feature = Mangle Point2
+_UI_CGIAnchor_m_line_style_feature = Mline style
+_UI_CGIAnchor_m_SourcePort_feature = MSource Port
+_UI_CGIAnchor_m_TargetPort_feature = MTarget Port
+_UI_CGIAnchor_properties_feature = Properties
+_UI_CGIAnchor_m_color_feature = Mcolor
+_UI_CGIAnchor_m_lineWidth_feature = Mline Width
+_UI_CGIAnchor_m_arrow_feature = Marrow
+_UI_CGIMscMessage_m_pModelObject_feature = MpModel Object
+_UI_CGIMscMessage_m_pParent_feature = MpParent
+_UI_CGIMscMessage_m_pSource_feature = MpSource
+_UI_CGIMscMessage_m_sourceType_feature = Msource Type
+_UI_CGIMscMessage_m_pTarget_feature = MpTarget
+_UI_CGIMscMessage_m_targetType_feature = Mtarget Type
+_UI_CGIMscMessage_m_direction_feature = Mdirection
+_UI_CGIMscMessage_m_rpn_feature = Mrpn
+_UI_CGIMscMessage_m_anglePoint1_feature = Mangle Point1
+_UI_CGIMscMessage_m_anglePoint2_feature = Mangle Point2
+_UI_CGIMscMessage_m_line_style_feature = Mline style
+_UI_CGIMscMessage_m_SourcePort_feature = MSource Port
+_UI_CGIMscMessage_m_TargetPort_feature = MTarget Port
+_UI_CGIMscMessage_m_bLeft_feature = MbLeft
+_UI_CGIMscMessage_m_arrow_feature = Marrow
+_UI_CGIMscMessage_properties_feature = Properties
+_UI_CGIMscMessage_myState_feature = My State
+_UI_CGIMscMessage_m_pSourceExec_feature = MpSource Exec
+_UI_CGIMscMessage_m_pTargetExec_feature = MpTarget Exec
+_UI_IInternalHyperlink_target_feature = Target
+_UI_IDestructor_id_feature = Id
+_UI_IDestructor_name_feature = Name
+_UI_IDestructor_Args_feature = Args
+_UI_IDestructor_abstract_feature = Abstract
+_UI_IDestructor_final_feature = Final
+_UI_IDestructor_concurrency_feature = Concurrency
+_UI_IDestructor_protection_feature = Protection
+_UI_IDestructor_static_feature = Static
+_UI_IDestructor_constant_feature = Constant
+_UI_IDestructor_itsBody_feature = Its Body
+_UI_IDestructor_modifiedTimeWeak_feature = Modified Time Weak
+_UI_IDestructor_description_feature = Description
+_UI_IDestructor_properties_feature = Properties
+_UI_IDestructor_myState_feature = My State
+_UI_IDestructor_returnType_feature = Return Type
+_UI_IUseCaseStereoType_useCase_feature = Use Case
+_UI_IUseCaseStereoType_stereoType_feature = Stereo Type
+_UI_IUseCaseStereoType_entryPoint_feature = Entry Point
+_UI_CCollaborationChart_m_pModelObject_feature = MpModel Object
+_UI_CCollaborationChart_m_pRoot_feature = MpRoot
+_UI_CGIClassifierRole_m_pModelObject_feature = MpModel Object
+_UI_CGIClassifierRole_m_pParent_feature = MpParent
+_UI_CGIClassifierRole_m_transform_feature = Mtransform
+_UI_CGIClassifierRole_m_polygon_feature = Mpolygon
+_UI_CGIClassifierRole_m_nNameFormat_feature = MnName Format
+_UI_CGIClassifierRole_m_nIsNameFormat_feature = MnIs Name Format
+_UI_CGIClassifierRole_Compartments_feature = Compartments
+_UI_CGIClassifierRole_properties_feature = Properties
+_UI_CGIAssociationRole_m_pModelObject_feature = MpModel Object
+_UI_CGIAssociationRole_m_pParent_feature = MpParent
+_UI_CGIAssociationRole_m_pSource_feature = MpSource
+_UI_CGIAssociationRole_m_sourceType_feature = Msource Type
+_UI_CGIAssociationRole_m_pTarget_feature = MpTarget
+_UI_CGIAssociationRole_m_targetType_feature = Mtarget Type
+_UI_CGIAssociationRole_m_direction_feature = Mdirection
+_UI_CGIAssociationRole_m_rpn_feature = Mrpn
+_UI_CGIAssociationRole_m_anglePoint1_feature = Mangle Point1
+_UI_CGIAssociationRole_m_anglePoint2_feature = Mangle Point2
+_UI_CGIAssociationRole_m_line_style_feature = Mline style
+_UI_CGIAssociationRole_m_SourcePort_feature = MSource Port
+_UI_CGIAssociationRole_m_TargetPort_feature = MTarget Port
+_UI_CGIAssociationRole_m_arrow_feature = Marrow
+_UI_CGIAssociationRole_properties_feature = Properties
+_UI_CGIMessageLabel_m_pModelObject_feature = MpModel Object
+_UI_CGIMessageLabel_m_pParent_feature = MpParent
+_UI_CGIMessageLabel_m_pCommunicationConnection_feature = MpCommunication Connection
+_UI_CGIMessageLabel_percent_feature = Percent
+_UI_CGIArrow_m_pModelObject_feature = MpModel Object
+_UI_CGIArrow_m_pParent_feature = MpParent
+_UI_CGIArrow_m_pSource_feature = MpSource
+_UI_CGIArrow_m_sourceType_feature = Msource Type
+_UI_CGIArrow_m_pTarget_feature = MpTarget
+_UI_CGIArrow_m_targetType_feature = Mtarget Type
+_UI_CGIArrow_m_direction_feature = Mdirection
+_UI_CGIArrow_m_rpn_feature = Mrpn
+_UI_CGIArrow_m_anglePoint1_feature = Mangle Point1
+_UI_CGIArrow_m_anglePoint2_feature = Mangle Point2
+_UI_CGIArrow_m_line_style_feature = Mline style
+_UI_CGIArrow_m_SourcePort_feature = MSource Port
+_UI_CGIArrow_m_TargetPort_feature = MTarget Port
+_UI_CGIComponent_m_pModelObject_feature = MpModel Object
+_UI_CGIComponent_m_pParent_feature = MpParent
+_UI_CGIComponent_m_transform_feature = Mtransform
+_UI_CGIComponent_m_polygon_feature = Mpolygon
+_UI_CGIComponent_m_nNameFormat_feature = MnName Format
+_UI_CGIComponent_m_nIsNameFormat_feature = MnIs Name Format
+_UI_CGIComponent_Compartments_feature = Compartments
+_UI_CGIComponent_properties_feature = Properties
+_UI_CGIComponent_m_AdditionalLabel_feature = MAdditional Label
+_UI_TableDataDefinition_myTable_feature = My Table
+_UI_TableDataDefinition_name_feature = Name
+_UI_TableDataDefinition_DataType_feature = Data Type
+_UI_TableDataDefinition_columnName_feature = Column Name
+_UI_TableDataDefinition_modelElement_feature = Model Element
+_UI_CGIDiagramFrame_m_pModelObject_feature = MpModel Object
+_UI_CGIDiagramFrame_m_pParent_feature = MpParent
+_UI_CGIDiagramFrame_m_transform_feature = Mtransform
+_UI_CGIDiagramFrame_m_AdditionalLabel_feature = MAdditional Label
+_UI_CGIDiagramFrame_m_polygon_feature = Mpolygon
+_UI_CGIDiagramFrame_m_nNameFormat_feature = MnName Format
+_UI_CGIDiagramFrame_m_nIsNameFormat_feature = MnIs Name Format
+_UI_CGIDiagramFrame_m_bVisible_feature = MbVisible
+_UI_CGIDiagramFrame_frameset_feature = Frameset
+_UI_CGIDiagramFrame_Compartments_feature = Compartments
+_UI_CGIGenericElement_m_pModelObject_feature = MpModel Object
+_UI_CGIGenericElement_m_pParent_feature = MpParent
+_UI_CGIGenericElement_m_transform_feature = Mtransform
+_UI_CGIGenericElement_m_AdditionalLabel_feature = MAdditional Label
+_UI_CGIGenericElement_m_polygon_feature = Mpolygon
+_UI_CGIGenericElement_m_nNameFormat_feature = MnName Format
+_UI_CGIGenericElement_m_nIsNameFormat_feature = MnIs Name Format
+_UI_CGIGenericElement_frameset_feature = Frameset
+_UI_CGIGenericElement_Compartments_feature = Compartments
+_UI_CGIGenericElement_properties_feature = Properties
+_UI_CGIGenericElement_m_pImageViewData_feature = MpImage View Data
+_UI_CGIGenericElement_m_csContext_feature = Mcs Context
+_UI_CGIGenericElement_m_csPartsArray_feature = Mcs Parts Array
+_UI_CGIGenericElement_m_bIsStructured_feature = MbIs Structured
+_UI_CGIImageData_m_pModelObject_feature = MpModel Object
+_UI_CGIImageData_m_pParent_feature = MpParent
+_UI_CGIImageData_m_dataSize_feature = Mdata Size
+_UI_CGIImageData_m_data_feature = Mdata
+_UI_CGIImageData_m_srcFile_feature = Msrc File
+_UI_CGIImageData_m_fileModifiedTime_feature = Mfile Modified Time
+_UI_IEventHandle_m2Class_feature = M2 Class
+_UI_IEventHandle_filename_feature = Filename
+_UI_IEventHandle_subsystem_feature = Subsystem
+_UI_IEventHandle_class_feature = Class
+_UI_IEventHandle_name_feature = Name
+_UI_IEventHandle_id_feature = Id
+_UI_ITableInstance_id_feature = Id
+_UI_ITableInstance_myState_feature = My State
+_UI_ITableInstance_properties_feature = Properties
+_UI_ITableInstance_name_feature = Name
+_UI_ITableInstance_modifiedTimeWeak_feature = Modified Time Weak
+_UI_ITableInstance_LayoutHandle_feature = Layout Handle
+_UI_ITableInstance_ScopeHandles_feature = Scope Handles
+_UI_ITableInstance_Stereotypes_feature = Stereotypes
+_UI_IMatrixInstance_id_feature = Id
+_UI_IMatrixInstance_myState_feature = My State
+_UI_IMatrixInstance_name_feature = Name
+_UI_IMatrixInstance_modifiedTimeWeak_feature = Modified Time Weak
+_UI_IMatrixInstance_LayoutHandle_feature = Layout Handle
+_UI_IMatrixInstance_FromScopeHandles_feature = From Scope Handles
+_UI_IMatrixInstance_ToScopeHandles_feature = To Scope Handles
+_UI_IMatrixInstance_Stereotypes_feature = Stereotypes
+_UI_IMatrixInstance_m_IncludeDescendants_to_feature = MInclude Descendants to
+_UI_IMatrixInstance_properties_feature = Properties
+_UI_IHandleWithData_m2Class_feature = M2 Class
+_UI_IHandleWithData_filename_feature = Filename
+_UI_IHandleWithData_subsystem_feature = Subsystem
+_UI_IHandleWithData_class_feature = Class
+_UI_IHandleWithData_name_feature = Name
+_UI_IHandleWithData_id_feature = Id
+_UI_IHandleWithData_data_feature = Data
+_UI_CGIMscConditionMark_properties_feature = Properties
+_UI_CGIMscConditionMark_m_pModelObject_feature = MpModel Object
+_UI_CGIMscConditionMark_m_pParent_feature = MpParent
+_UI_CGIMscConditionMark_m_transform_feature = Mtransform
+_UI_CGIMscConditionMark_m_polygon_feature = Mpolygon
+_UI_CGIMscConditionMark_m_nNameFormat_feature = MnName Format
+_UI_CGIMscConditionMark_m_nIsNameFormat_feature = MnIs Name Format
+_UI_CGIMscConditionMark_Compartments_feature = Compartments
+_UI_ICombinedFragment_id_feature = Id
+_UI_ICombinedFragment_myState_feature = My State
+_UI_ICombinedFragment_name_feature = Name
+_UI_ICombinedFragment_modifiedTimeWeak_feature = Modified Time Weak
+_UI_ICombinedFragment_interactionOperator_feature = Interaction Operator
+_UI_ICombinedFragment_InteractionOperands_feature = Interaction Operands
+_UI_ICombinedFragment_Stereotypes_feature = Stereotypes
+_UI_ICombinedFragment_Tags_feature = Tags
+_UI_CGIMscInteractionOperator_m_operatorType_feature = Moperator Type
+_UI_CGIMscInteractionOperator_properties_feature = Properties
+_UI_CGIMscInteractionOperator_m_pModelObject_feature = MpModel Object
+_UI_CGIMscInteractionOperator_m_pParent_feature = MpParent
+_UI_CGIMscInteractionOperator_m_transform_feature = Mtransform
+_UI_CGIMscInteractionOperator_m_polygon_feature = Mpolygon
+_UI_CGIMscInteractionOperator_m_nNameFormat_feature = MnName Format
+_UI_CGIMscInteractionOperator_m_nIsNameFormat_feature = MnIs Name Format
+_UI_CGIMscInteractionOperator_frameset_feature = Frameset
+_UI_CGIMscInteractionOperator_Compartments_feature = Compartments
+_UI_CGIMscInteractionOperator_m_bFramesetModified_feature = MbFrameset Modified
+_UI_CGIMscInteractionOperand_properties_feature = Properties
+_UI_CGIMscInteractionOperand_m_pModelObject_feature = MpModel Object
+_UI_CGIMscInteractionOperand_m_pParent_feature = MpParent
+_UI_CGIMscInteractionOperand_m_AdditionalLabel_feature = MAdditional Label
+_UI_CGIMscInteractionOperand_m_polygon_feature = Mpolygon
+_UI_CGIMscInteractionOperand_m_nNameFormat_feature = MnName Format
+_UI_CGIMscInteractionOperand_m_nIsNameFormat_feature = MnIs Name Format
+_UI_CGIMscInteractionOperand_Compartments_feature = Compartments
+_UI_CGIMscInteractionOperand_m_transform_feature = Mtransform
+_UI_IEmbededFile_id_feature = Id
+_UI_IEmbededFile_name_feature = Name
+_UI_IEmbededFile_modifiedTimeWeak_feature = Modified Time Weak
+_UI_IEmbededFile_MayNeedToRelocate_feature = May Need To Relocate
+_UI_IEmbededFile_LastKnownFullPath_feature = Last Known Full Path
+_UI_IEmbededFile_Stereotypes_feature = Stereotypes
+_UI_IEmbededFile_Tags_feature = Tags
+_UI_IActivityGraph_lastID_feature = Last ID
+_UI_IActivityGraph_weakCGTime_feature = Weak CG Time
+_UI_IActivityGraph_strongCGTime_feature = Strong CG Time
+_UI_IActivityGraph_multiplicity_feature = Multiplicity
+_UI_IActivityGraph_itsStateChart_feature = Its State Chart
+_UI_IActivityGraph_classModifier_feature = Class Modifier
+_UI_IActivityGraph_States_feature = States
+_UI_IActivityGraph_baseVersion_feature = Base Version
+_UI_IActivityGraph_diagram_feature = Diagram
+_UI_IActivityGraph_Views_feature = Views
+_UI_IActivityGraph_properties_feature = Properties
+_UI_IActivityGraph_requiremenTracabilityHandle_feature = Requiremen Tracability Handle
+_UI_IActivityGraph_description_feature = Description
+_UI_IActivityGraph_Swimlanes_feature = Swimlanes
+_UI_IActivityGraph_Stereotypes_feature = Stereotypes
+_UI_IActivityGraph_AnalysisMode_feature = Analysis Mode
+_UI_IActivityGraph_Annotations_feature = Annotations
+_UI_IActivityGraph_codeUpdateCGTime_feature = Code Update CG Time
+_UI_IActivityGraph_objectCreation_feature = Object Creation
+_UI_IActivityGraph_umlDependencyID_feature = Uml Dependency ID
+_UI_IActivityGraph_displayName_feature = Display Name
+_UI_IActivityGraph_HyperLinks_feature = Hyper Links
+_UI_IActivityGraph_Dependencies_feature = Dependencies
+_UI_IActivityGraph_theMainDiagram_feature = The Main Diagram
+_UI_IActivityGraph_Associations_feature = Associations
+_UI_IActivityGraph_Tags_feature = Tags
+_UI_CGIImage_m_pModelObject_feature = MpModel Object
+_UI_CGIImage_m_pParent_feature = MpParent
+_UI_CGIImage_m_transform_feature = Mtransform
+_UI_CGIImage_m_pImageViewData_feature = MpImage View Data
+_UI_CGIImage_m_points_feature = Mpoints
+_UI_ITimeEvent_id_feature = Id
+_UI_ITimeEvent_myState_feature = My State
+_UI_ITimeEvent_name_feature = Name
+_UI_ITimeEvent_modifiedTimeWeak_feature = Modified Time Weak
+_UI_ITimeEvent_parent_feature = Parent
+_UI_ITimeEvent_stateType_feature = State Type
+_UI_ITimeEvent_defaultTrans_feature = Default Trans
+_UI_ITimeEvent_durationTime_feature = Duration Time
+_UI_ITimeEvent_swimlane_feature = Swimlane
+_UI_CGIActionState_properties_feature = Properties
+_UI_CGIActionState_m_pModelObject_feature = MpModel Object
+_UI_CGIActionState_m_pParent_feature = MpParent
+_UI_CGIActionState_m_transform_feature = Mtransform
+_UI_CGIActionState_m_AdditionalLabel_feature = MAdditional Label
+_UI_CGIActionState_m_polygon_feature = Mpolygon
+_UI_CGIActionState_m_nNameFormat_feature = MnName Format
+_UI_CGIActionState_m_nIsNameFormat_feature = MnIs Name Format
+_UI_CGIActionState_Compartments_feature = Compartments
+_UI_CGIActionState_nAndLineCount_feature = NAnd Line Count
+_UI_CGIActionState_m_pInheritsFrom_feature = MpInherits From
+_UI_CGIActionState_m_nInheritanceMask_feature = MnInheritance Mask
+_UI_CGIActionState_m_pDefaultComponentRelation_feature = MpDefault Component Relation
+_UI_CGIActionState_m_NameDisplayMode_feature = MName Display Mode
+_UI_CGIActionState_m_ActDescLablDiaplayMode_feature = MAct Desc Labl Diaplay Mode
+_UI_CGIActionState_m_moveAndLineTimeStamp_feature = Mmove And Line Time Stamp
+_UI_IClassHandle_m2Class_feature = M2 Class
+_UI_IClassHandle_id_feature = Id
+_UI_IClassHandle_filename_feature = Filename
+_UI_IClassHandle_subsystem_feature = Subsystem
+_UI_IClassHandle_class_feature = Class
+_UI_IClassHandle_name_feature = Name
+_UI_IClassInstance_inverse_feature = Inverse
+_UI_ILinkInstance_id_feature = Id
+_UI_ILinkInstance_name_feature = Name
+_UI_ILinkInstance_toLink_feature = To Link
+_UI_ILinkInstance_fromLink_feature = From Link
+_UI_ILinkInstance_instantiates_feature = Instantiates
+_UI_CollEvent_id_feature = Id
+_UI_CollEvent_first_feature = First
+_UI_CollEvent_second_feature = Second
+_UI_CollEvent_objectCreation_feature = Object Creation
+_UI_CollEvent_umlDependencyID_feature = Uml Dependency ID
+_UI_CGIButtonArray_properties_feature = Properties
+_UI_CGIButtonArray_m_pModelObject_feature = MpModel Object
+_UI_CGIButtonArray_m_pParent_feature = MpParent
+_UI_CGIButtonArray_m_transform_feature = Mtransform
+_UI_CGIButtonArray_m_polygon_feature = Mpolygon
+_UI_CGIButtonArray_m_nNameFormat_feature = MnName Format
+_UI_CGIButtonArray_m_nIsNameFormat_feature = MnIs Name Format
+_UI_CGIButtonArray_frameset_feature = Frameset
+_UI_CGIButtonArray_Compartments_feature = Compartments
+_UI_CGIButtonArray_m_csModelObjPath_feature = Mcs Model Obj Path
+_UI_CGIButtonArray_m_csName_feature = Mcs Name
+_UI_CGIButtonArray_m_PartsArray_feature = MParts Array
+_UI_CGIButtonArray_m_liButtonNames_feature = Mli Button Names
+_UI_CGIButtonArray_m_liButtonValues_feature = Mli Button Values
+_UI_IExternalHyperlink_target_feature = Target
+_UI_IFork_id_feature = Id
+_UI_IFork_myState_feature = My State
+_UI_IFork_name_feature = Name
+_UI_IFork_modifiedTimeWeak_feature = Modified Time Weak
+_UI_IFork_description_feature = Description
+_UI_IFork_parent_feature = Parent
+_UI_IFork_connectorType_feature = Connector Type
+_UI_IFork_objectCreation_feature = Object Creation
+_UI_IFork_umlDependencyID_feature = Uml Dependency ID
+_UI_CGIBlockState_m_pModelObject_feature = MpModel Object
+_UI_CGIBlockState_m_pParent_feature = MpParent
+_UI_CGIBlockState_m_transform_feature = Mtransform
+_UI_CGIBlockState_m_polygon_feature = Mpolygon
+_UI_CGIBlockState_m_nNameFormat_feature = MnName Format
+_UI_CGIBlockState_m_nIsNameFormat_feature = MnIs Name Format
+_UI_CGIBlockState_nAndLineCount_feature = NAnd Line Count
+_UI_CGIBlockState_m_pInheritsFrom_feature = MpInherits From
+_UI_CGIBlockState_m_nInheritanceMask_feature = MnInheritance Mask
+_UI_CGIBlockState_m_pDefaultComponentRelation_feature = MpDefault Component Relation
+_UI_CGIBlockState_m_NameDisplayMode_feature = MName Display Mode
+_UI_CGIBlockState_m_ActDescLablDiaplayMode_feature = MAct Desc Labl Diaplay Mode
+_UI_CGIBlockState_properties_feature = Properties
+_UI_CGIBlockState_m_AdditionalLabel_feature = MAdditional Label
+_UI_CGIBlockState_m_moveAndLineTimeStamp_feature = Mmove And Line Time Stamp
+_UI_CGIBlockState_Compartments_feature = Compartments
+_UI_CGIBlockState_frameset_feature = Frameset
+_UI_CGIPartition_m_pModelObject_feature = MpModel Object
+_UI_CGIPartition_m_pParent_feature = MpParent
+_UI_CGIPartition_m_polygon_feature = Mpolygon
+_UI_CGIPartition_m_nNameFormat_feature = MnName Format
+_UI_CGIPartition_m_nIsNameFormat_feature = MnIs Name Format
+_UI_CGIPartition_frameset_feature = Frameset
+_UI_CGIPartition_m_AdditionalLabel_feature = MAdditional Label
+_UI_CGIPartition_properties_feature = Properties
+_UI_CGIPartition_Compartments_feature = Compartments
+_UI_CGISwimlaneFrame_m_pModelObject_feature = MpModel Object
+_UI_CGISwimlaneFrame_m_pParent_feature = MpParent
+_UI_CGISwimlaneFrame_m_polygon_feature = Mpolygon
+_UI_CGISwimlaneFrame_m_nNameFormat_feature = MnName Format
+_UI_CGISwimlaneFrame_m_nIsNameFormat_feature = MnIs Name Format
+_UI_CGISwimlaneFrame_frameset_feature = Frameset
+_UI_CGISwimlaneFrame_m_transform_feature = Mtransform
+_UI_CGISwimlaneFrame_m_bFramesetModified_feature = MbFrameset Modified
+_UI_CGISwimlaneFrame_Compartments_feature = Compartments
+_UI_CGIMscInteractionOccurrence_m_pModelObject_feature = MpModel Object
+_UI_CGIMscInteractionOccurrence_m_pParent_feature = MpParent
+_UI_CGIMscInteractionOccurrence_m_transform_feature = Mtransform
+_UI_CGIMscInteractionOccurrence_m_polygon_feature = Mpolygon
+_UI_CGIMscInteractionOccurrence_m_nNameFormat_feature = MnName Format
+_UI_CGIMscInteractionOccurrence_m_nIsNameFormat_feature = MnIs Name Format
+_UI_CGIMscInteractionOccurrence_Compartments_feature = Compartments
+_UI_CGIMscInteractionOccurrence_properties_feature = Properties
+_UI_ICallAction_id_feature = Id
+_UI_ICallAction_modifiedTimeWeak_feature = Modified Time Weak
+_UI_ICallAction_interfaceItem_feature = Interface Item
+_UI_ICallAction_argumentNames_feature = Argument Names
+_UI_ICallAction_argumentValues_feature = Argument Values
+_UI_CGIMscExecutionOccurrence_m_pModelObject_feature = MpModel Object
+_UI_CGIMscExecutionOccurrence_m_pParent_feature = MpParent
+_UI_CGIMscExecutionOccurrence_m_transform_feature = Mtransform
+_UI_CGIMscExecutionOccurrence_m_position_feature = Mposition
+_UI_CGIMscExecutionOccurrence_m_pInheritsFrom_feature = MpInherits From
+_UI_CGIMscExecutionOccurrence_m_nInheritanceMask_feature = MnInheritance Mask
+_UI_CGIMscExecutionOccurrence_m_SubType_feature = MSub Type
+_UI_CGIMscExecutionOccurrence_m_pStartMessage_feature = MpStart Message
+_UI_IBlock_id_feature = Id
+_UI_IBlock_myState_feature = My State
+_UI_IBlock_name_feature = Name
+_UI_IBlock_objectCreation_feature = Object Creation
+_UI_IBlock_umlDependencyID_feature = Uml Dependency ID
+_UI_IBlock_otherClass_feature = Other Class
+_UI_IBlock_inverse_feature = Inverse
+_UI_IBlock_partKind_feature = Part Kind
+_UI_ITemplateInst_id_feature = Id
+_UI_ITemplateInst_modifiedTimeWeak_feature = Modified Time Weak
+_UI_ITemplateInst_TemplateInstParams_feature = Template Inst Params
+_UI_ITemplateInst_ofTemplate_feature = Of Template
+_UI_ITemplateInstParam_id_feature = Id
+_UI_ITemplateInstParam_name_feature = Name
+_UI_ITemplateInstParam_modifiedTimeWeak_feature = Modified Time Weak
+_UI_ITemplateInstParam_value_feature = Value
+_UI_ITemplateInstParam_argValue_feature = Arg Value
+_UI_ITemplateInstParam_onTheFlyValue_feature = On The Fly Value
+_UI_IReferenceActivity_id_feature = Id
+_UI_IReferenceActivity_name_feature = Name
+_UI_IReferenceActivity_Stereotypes_feature = Stereotypes
+_UI_IReferenceActivity_modifiedTimeWeak_feature = Modified Time Weak
+_UI_IReferenceActivity_parent_feature = Parent
+_UI_IReferenceActivity_stateType_feature = State Type
+_UI_IReferenceActivity_defaultTrans_feature = Default Trans
+_UI_IReferenceActivity_swimlane_feature = Swimlane
+_UI_IReferenceActivity_referencedActivity_feature = Referenced Activity
+_UI_IReferenceActivity_myState_feature = My State
+_UI_CGIContainArrow_m_pModelObject_feature = MpModel Object
+_UI_CGIContainArrow_m_pParent_feature = MpParent
+_UI_CGIContainArrow_m_pSource_feature = MpSource
+_UI_CGIContainArrow_m_sourceType_feature = Msource Type
+_UI_CGIContainArrow_m_pTarget_feature = MpTarget
+_UI_CGIContainArrow_m_targetType_feature = Mtarget Type
+_UI_CGIContainArrow_m_direction_feature = Mdirection
+_UI_CGIContainArrow_m_rpn_feature = Mrpn
+_UI_CGIContainArrow_m_arrow_feature = Marrow
+_UI_CGIContainArrow_m_anglePoint1_feature = Mangle Point1
+_UI_CGIContainArrow_m_anglePoint2_feature = Mangle Point2
+_UI_CGIContainArrow_m_line_style_feature = Mline style
+_UI_CGIContainArrow_m_SourcePort_feature = MSource Port
+_UI_CGIContainArrow_m_TargetPort_feature = MTarget Port
+_UI_ISlot_id_feature = Id
+_UI_ISlot_name_feature = Name
+_UI_ISlot_value_feature = Value
+_UI_ISlot_definingVar_feature = Defining Var
+_UI_NestedStateChartType_defNumber_feature = Def Number
+_UI_NestedStateChartType_graphicChart_feature = Graphic Chart
+_UI_NestedStateChartType_lastModifiedTime_feature = Last Modified Time
+_UI_NestedStateChartType_Transitions_feature = Transitions
+_UI_NestedStateChartType_Connectors_feature = Connectors
+_UI_NestedStateChartType_version_feature = Version
+_UI_OperationsType_virtual_feature = Virtual
+_UI_TheMainDiagramType_id_feature = Id
+_UI_TheMainDiagramType_lastModifiedTime_feature = Last Modified Time
+_UI_TheMainDiagramType_requiremenTracabilityHandle_feature = Requiremen Tracability Handle
+_UI_TheMainDiagramType_defaultSubsystem_feature = Default Subsystem
+_UI_TheMainDiagramType_description_feature = Description
+_UI_TheMainDiagramType_umlDependencyID_feature = Uml Dependency ID
+_UI_TheMainDiagramType_lastID_feature = Last ID
+_UI_TheMainDiagramType_myState_feature = My State
+_UI_TheMainDiagramType_ownerHandle_feature = Owner Handle
+_UI_TheMainDiagramType_objectCreation_feature = Object Creation
+_UI_TheMainDiagramType_name_feature = Name
+_UI_TheMainDiagramType_cmheader_feature = Cmheader
+_UI_LinksType_id_feature = Id
+_UI_LinksType_multiplicity_feature = Multiplicity
+_UI_LinksType_name_feature = Name
+_UI_LinksType_otherClass_feature = Other Class
+_UI_OwnerHandleType_weakCGTime_feature = Weak CG Time
+_UI_OwnerHandleType_strongCGTime_feature = Strong CG Time
+_UI_GraphicChartType_id_feature = Id
+_UI_GraphicChartType_m_access_feature = Maccess
+_UI_GraphicChartType_elementList_feature = Element List
+_UI_GraphicChartType_m_nModifyDate_feature = MnModify Date
+_UI_GraphicChartType_m_currentLeftTop_feature = Mcurrent Left Top
+_UI_GraphicChartType_m_modified_feature = Mmodified
+_UI_GraphicChartType_m_nCreateDate_feature = MnCreate Date
+_UI_GraphicChartType_m_pParent_feature = MpParent
+_UI_GraphicChartType_m_arrowStyle_feature = Marrow Style
+_UI_GraphicChartType_m_drawBehavior_feature = Mdraw Behavior
+_UI_GraphicChartType_m_currentRightBottom_feature = Mcurrent Right Bottom
+_UI_GraphicChartType_m_creator_feature = Mcreator
+_UI_GraphicChartType_m_bScaleWithZoom_feature = MbScale With Zoom
+_UI_GraphicChartType_m_type_feature = Mtype
+_UI_GraphicChartType_graphElements_feature = Graph Elements
+_UI_GraphicChartType_m_name_feature = Mname
+_UI_GraphicChartType_m_fileVersion_feature = Mfile Version
+_UI_GraphicChartType_m_bIsPreferencesInitialized_feature = MbIs Preferences Initialized
+_UI_M_subjectType_umlDependencyID_feature = Uml Dependency ID
+_UI_M_subjectType_objectCreation_feature = Object Creation
+_UI_ValueType_modifiedTimeWeak_feature = Modified Time Weak
+_UI_ValueType_id_feature = Id
+_UI_ValueType_myState_feature = My State
+_UI_ValueType_name_feature = Name
+_UI_M_hTargetType_requiremenTracabilityHandle_feature = Requiremen Tracability Handle
+_UI_M_hTargetType_description_feature = Description
+_UI_M_hTargetType_properties_feature = Properties
+_UI_GraphElementsType_id_feature = Id
+_UI_GraphElementsType_m_drawBehavior_feature = Mdraw Behavior
+_UI_GraphElementsType_m_type_feature = Mtype
+_UI_GraphElementsType_m_name_feature = Mname
+_UI_GraphElementsType_m_bIsPreferencesInitialized_feature = MbIs Preferences Initialized
+_UI_FilesType_modifiedTimeWeak_feature = Modified Time Weak
+_UI_FilesType_id_feature = Id
+_UI_FilesType_umlDependencyID_feature = Uml Dependency ID
+_UI_FilesType_lastID_feature = Last ID
+_UI_FilesType_myState_feature = My State
+_UI_FilesType_m_path_feature = Mpath
+_UI_FilesType_objectCreation_feature = Object Creation
+_UI_FilesType_name_feature = Name
+_UI_ToLinkType_implicitClass_feature = Implicit Class
+_UI_TransitionsType_modifiedTimeWeak_feature = Modified Time Weak
+_UI_TransitionsType_staticReaction_feature = Static Reaction
+_UI_TransitionsType_itsTarget_feature = Its Target
+_UI_TransitionsType_id_feature = Id
+_UI_TransitionsType_codeUpdateCGTime_feature = Code Update CG Time
+_UI_TransitionsType_requiremenTracabilityHandle_feature = Requiremen Tracability Handle
+_UI_TransitionsType_description_feature = Description
+_UI_TransitionsType_itsLabel_feature = Its Label
+_UI_TransitionsType_umlDependencyID_feature = Uml Dependency ID
+_UI_TransitionsType_myState_feature = My State
+_UI_TransitionsType_objectCreation_feature = Object Creation
+_UI_TransitionsType_name_feature = Name
+_UI_ItsTriggerType_modifiedTimeWeak_feature = Modified Time Weak
+_UI_ItsTriggerType_id_feature = Id
+_UI_ItsTriggerType_info_feature = Info
+_UI_ItsTriggerType_umlDependencyID_feature = Uml Dependency ID
+_UI_ItsTriggerType_myState_feature = My State
+_UI_ItsTriggerType_objectCreation_feature = Object Creation
+_UI_ItsTriggerType_body_feature = Body
+_UI_ConveyedType_lastID_feature = Last ID
+_UI_End2_Type_multiplicity_feature = Multiplicity
+_UI_Unknown_feature = Unspecified
+
+_UI_DefaultSubsystemType_type = Default Subsystem Type
+_UI_ElementsType_type = Elements Type
+_UI_End1_Type_type = End1 Type
+_UI_FromLinkType_type = From Link Type
+_UI_M_pRootType_type = MpRoot Type
+_UI_CGIPortConnector_m_nAngle_feature = MnAngle
+_UI_IProject_version_feature = Version
+_UI_IModelElement_displayName_feature = Display Name
+_UI_CGIObjectInstance_m_bIsMisplaced_feature = MbIs Misplaced
+_UI_IAssociationClass_isClass_feature = Is Class
+_UI_IAssociationClass_m_end1_feature = Mend1
+_UI_IAssociationClass_m_end2_feature = Mend2
+_UI_IAssociationEnd_displayName_feature = Display Name
+_UI_IAssociationEnd_m_associationClass_feature = Massociation Class
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/plugin.xml b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/plugin.xml
new file mode 100644
index 0000000..4fdbcee
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/plugin.xml
@@ -0,0 +1,22 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?eclipse version="3.0"?>
+
+<!--
+-->
+
+<plugin>
+
+   <extension point="org.eclipse.emf.edit.itemProviderAdapterFactories">
+      <!-- @generated Rpy -->
+      <factory
+            uri="http://www.eclipse.org/Papyrus/UMLRpy/1.0.0"
+            class="org.eclipse.papyrus.interoperability.rpy.rpymetamodel.provider.UMLRpyItemProviderAdapterFactory"
+            supportedTypes=
+              "org.eclipse.emf.edit.provider.IEditingDomainItemProvider
+               org.eclipse.emf.edit.provider.IStructuredItemContentProvider
+               org.eclipse.emf.edit.provider.ITreeItemContentProvider
+               org.eclipse.emf.edit.provider.IItemLabelProvider
+               org.eclipse.emf.edit.provider.IItemPropertySource"/>
+   </extension>
+
+</plugin>
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/AssociationsTypeItemProvider.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/AssociationsTypeItemProvider.java
new file mode 100755
index 0000000..25cffe1
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/AssociationsTypeItemProvider.java
@@ -0,0 +1,93 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.provider;
+
+
+import java.util.Collection;
+import java.util.List;
+
+import org.eclipse.emf.common.notify.AdapterFactory;
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.edit.provider.IItemPropertyDescriptor;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.AssociationsType} object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class AssociationsTypeItemProvider extends InverseTypeItemProvider {
+	/**
+	 * This constructs an instance from a factory and a notifier.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public AssociationsTypeItemProvider(AdapterFactory adapterFactory) {
+		super(adapterFactory);
+	}
+
+	/**
+	 * This returns the property descriptors for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) {
+		if (itemPropertyDescriptors == null) {
+			super.getPropertyDescriptors(object);
+
+		}
+		return itemPropertyDescriptors;
+	}
+
+	/**
+	 * This returns the label text for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String getText(Object object) {
+		return getString("_UI_AssociationsType_type"); //$NON-NLS-1$
+	}
+	
+
+	/**
+	 * This handles model notifications by calling {@link #updateChildren} to update any cached
+	 * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void notifyChanged(Notification notification) {
+		updateChildren(notification);
+		super.notifyChanged(notification);
+	}
+
+	/**
+	 * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children
+	 * that can be created under this object.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) {
+		super.collectNewChildDescriptors(newChildDescriptors, object);
+	}
+
+}
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/CCollaborationChartItemProvider.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/CCollaborationChartItemProvider.java
new file mode 100755
index 0000000..3524ada
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/CCollaborationChartItemProvider.java
@@ -0,0 +1,157 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.provider;
+
+
+import java.util.Collection;
+import java.util.List;
+
+import org.eclipse.emf.common.notify.AdapterFactory;
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.edit.provider.ComposeableAdapterFactory;
+import org.eclipse.emf.edit.provider.IItemPropertyDescriptor;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CCollaborationChart;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CCollaborationChart} object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class CCollaborationChartItemProvider extends GraphicChartTypeItemProvider {
+	/**
+	 * This constructs an instance from a factory and a notifier.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public CCollaborationChartItemProvider(AdapterFactory adapterFactory) {
+		super(adapterFactory);
+	}
+
+	/**
+	 * This returns the property descriptors for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) {
+		if (itemPropertyDescriptors == null) {
+			super.getPropertyDescriptors(object);
+
+			addM_pModelObjectPropertyDescriptor(object);
+			addM_pRootPropertyDescriptor(object);
+		}
+		return itemPropertyDescriptors;
+	}
+
+	/**
+	 * This adds a property descriptor for the MpModel Object feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_pModelObjectPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CCollaborationChart_m_pModelObject_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CCollaborationChart_m_pModelObject_feature", "_UI_CCollaborationChart_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCCollaborationChart_M_pModelObject(),
+				 true,
+				 false,
+				 true,
+				 null,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the MpRoot feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_pRootPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CCollaborationChart_m_pRoot_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CCollaborationChart_m_pRoot_feature", "_UI_CCollaborationChart_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCCollaborationChart_M_pRoot(),
+				 true,
+				 false,
+				 true,
+				 null,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This returns CCollaborationChart.gif.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object getImage(Object object) {
+		return overlayImage(object, getResourceLocator().getImage("full/obj16/CCollaborationChart")); //$NON-NLS-1$
+	}
+
+	/**
+	 * This returns the label text for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String getText(Object object) {
+		String label = ((CCollaborationChart)object).getId();
+		return label == null || label.length() == 0 ?
+			getString("_UI_CCollaborationChart_type") : //$NON-NLS-1$
+			getString("_UI_CCollaborationChart_type") + " " + label; //$NON-NLS-1$ //$NON-NLS-2$
+	}
+	
+
+	/**
+	 * This handles model notifications by calling {@link #updateChildren} to update any cached
+	 * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void notifyChanged(Notification notification) {
+		updateChildren(notification);
+		super.notifyChanged(notification);
+	}
+
+	/**
+	 * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children
+	 * that can be created under this object.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) {
+		super.collectNewChildDescriptors(newChildDescriptors, object);
+	}
+
+}
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/CGIActionStateItemProvider.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/CGIActionStateItemProvider.java
new file mode 100755
index 0000000..a864153
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/CGIActionStateItemProvider.java
@@ -0,0 +1,521 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.provider;
+
+
+import java.util.Collection;
+import java.util.List;
+
+import org.eclipse.emf.common.notify.AdapterFactory;
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.ecore.EStructuralFeature;
+
+import org.eclipse.emf.edit.provider.ComposeableAdapterFactory;
+import org.eclipse.emf.edit.provider.IItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.ItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.ViewerNotification;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIActionState;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyFactory;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIActionState} object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class CGIActionStateItemProvider extends GraphElementsTypeItemProvider {
+	/**
+	 * This constructs an instance from a factory and a notifier.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public CGIActionStateItemProvider(AdapterFactory adapterFactory) {
+		super(adapterFactory);
+	}
+
+	/**
+	 * This returns the property descriptors for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) {
+		if (itemPropertyDescriptors == null) {
+			super.getPropertyDescriptors(object);
+
+			addM_pModelObjectPropertyDescriptor(object);
+			addM_pParentPropertyDescriptor(object);
+			addM_transformPropertyDescriptor(object);
+			addM_polygonPropertyDescriptor(object);
+			addM_nNameFormatPropertyDescriptor(object);
+			addM_nIsNameFormatPropertyDescriptor(object);
+			addCompartmentsPropertyDescriptor(object);
+			addNAndLineCountPropertyDescriptor(object);
+			addM_pInheritsFromPropertyDescriptor(object);
+			addM_nInheritanceMaskPropertyDescriptor(object);
+			addM_pDefaultComponentRelationPropertyDescriptor(object);
+			addM_NameDisplayModePropertyDescriptor(object);
+			addM_ActDescLablDiaplayModePropertyDescriptor(object);
+			addM_moveAndLineTimeStampPropertyDescriptor(object);
+		}
+		return itemPropertyDescriptors;
+	}
+
+	/**
+	 * This adds a property descriptor for the MpModel Object feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_pModelObjectPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIActionState_m_pModelObject_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIActionState_m_pModelObject_feature", "_UI_CGIActionState_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIActionState_M_pModelObject(),
+				 true,
+				 false,
+				 true,
+				 null,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the MpParent feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_pParentPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIActionState_m_pParent_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIActionState_m_pParent_feature", "_UI_CGIActionState_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIActionState_M_pParent(),
+				 true,
+				 false,
+				 true,
+				 null,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Mtransform feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_transformPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIActionState_m_transform_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIActionState_m_transform_feature", "_UI_CGIActionState_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIActionState_M_transform(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Mpolygon feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_polygonPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIActionState_m_polygon_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIActionState_m_polygon_feature", "_UI_CGIActionState_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIActionState_M_polygon(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the MnName Format feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_nNameFormatPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIActionState_m_nNameFormat_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIActionState_m_nNameFormat_feature", "_UI_CGIActionState_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIActionState_M_nNameFormat(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the MnIs Name Format feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_nIsNameFormatPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIActionState_m_nIsNameFormat_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIActionState_m_nIsNameFormat_feature", "_UI_CGIActionState_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIActionState_M_nIsNameFormat(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Compartments feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addCompartmentsPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIActionState_Compartments_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIActionState_Compartments_feature", "_UI_CGIActionState_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIActionState_Compartments(),
+				 true,
+				 false,
+				 true,
+				 null,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the NAnd Line Count feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addNAndLineCountPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIActionState_nAndLineCount_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIActionState_nAndLineCount_feature", "_UI_CGIActionState_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIActionState_NAndLineCount(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the MpInherits From feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_pInheritsFromPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIActionState_m_pInheritsFrom_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIActionState_m_pInheritsFrom_feature", "_UI_CGIActionState_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIActionState_M_pInheritsFrom(),
+				 true,
+				 false,
+				 true,
+				 null,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the MnInheritance Mask feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_nInheritanceMaskPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIActionState_m_nInheritanceMask_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIActionState_m_nInheritanceMask_feature", "_UI_CGIActionState_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIActionState_M_nInheritanceMask(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the MpDefault Component Relation feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_pDefaultComponentRelationPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIActionState_m_pDefaultComponentRelation_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIActionState_m_pDefaultComponentRelation_feature", "_UI_CGIActionState_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIActionState_M_pDefaultComponentRelation(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the MName Display Mode feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_NameDisplayModePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIActionState_m_NameDisplayMode_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIActionState_m_NameDisplayMode_feature", "_UI_CGIActionState_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIActionState_M_NameDisplayMode(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the MAct Desc Labl Diaplay Mode feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_ActDescLablDiaplayModePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIActionState_m_ActDescLablDiaplayMode_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIActionState_m_ActDescLablDiaplayMode_feature", "_UI_CGIActionState_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIActionState_M_ActDescLablDiaplayMode(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Mmove And Line Time Stamp feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_moveAndLineTimeStampPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIActionState_m_moveAndLineTimeStamp_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIActionState_m_moveAndLineTimeStamp_feature", "_UI_CGIActionState_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIActionState_M_moveAndLineTimeStamp(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This specifies how to implement {@link #getChildren} and is used to deduce an appropriate feature for an
+	 * {@link org.eclipse.emf.edit.command.AddCommand}, {@link org.eclipse.emf.edit.command.RemoveCommand} or
+	 * {@link org.eclipse.emf.edit.command.MoveCommand} in {@link #createCommand}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Collection<? extends EStructuralFeature> getChildrenFeatures(Object object) {
+		if (childrenFeatures == null) {
+			super.getChildrenFeatures(object);
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getCGIActionState_Properties());
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getCGIActionState_M_AdditionalLabel());
+		}
+		return childrenFeatures;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EStructuralFeature getChildFeature(Object object, Object child) {
+		// Check the type of the specified child object and return the proper feature to use for
+		// adding (see {@link AddCommand}) it as a child.
+
+		return super.getChildFeature(object, child);
+	}
+
+	/**
+	 * This returns CGIActionState.gif.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object getImage(Object object) {
+		return overlayImage(object, getResourceLocator().getImage("full/obj16/CGIActionState")); //$NON-NLS-1$
+	}
+
+	/**
+	 * This returns the label text for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String getText(Object object) {
+		String label = ((CGIActionState)object).getId();
+		return label == null || label.length() == 0 ?
+			getString("_UI_CGIActionState_type") : //$NON-NLS-1$
+			getString("_UI_CGIActionState_type") + " " + label; //$NON-NLS-1$ //$NON-NLS-2$
+	}
+	
+
+	/**
+	 * This handles model notifications by calling {@link #updateChildren} to update any cached
+	 * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void notifyChanged(Notification notification) {
+		updateChildren(notification);
+
+		switch (notification.getFeatureID(CGIActionState.class)) {
+			case UMLRpyPackage.CGI_ACTION_STATE__MTRANSFORM:
+			case UMLRpyPackage.CGI_ACTION_STATE__MPOLYGON:
+			case UMLRpyPackage.CGI_ACTION_STATE__MNNAME_FORMAT:
+			case UMLRpyPackage.CGI_ACTION_STATE__MNIS_NAME_FORMAT:
+			case UMLRpyPackage.CGI_ACTION_STATE__NAND_LINE_COUNT:
+			case UMLRpyPackage.CGI_ACTION_STATE__MNINHERITANCE_MASK:
+			case UMLRpyPackage.CGI_ACTION_STATE__MPDEFAULT_COMPONENT_RELATION:
+			case UMLRpyPackage.CGI_ACTION_STATE__MNAME_DISPLAY_MODE:
+			case UMLRpyPackage.CGI_ACTION_STATE__MACT_DESC_LABL_DIAPLAY_MODE:
+			case UMLRpyPackage.CGI_ACTION_STATE__MMOVE_AND_LINE_TIME_STAMP:
+				fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), false, true));
+				return;
+			case UMLRpyPackage.CGI_ACTION_STATE__PROPERTIES:
+			case UMLRpyPackage.CGI_ACTION_STATE__MADDITIONAL_LABEL:
+				fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), true, false));
+				return;
+		}
+		super.notifyChanged(notification);
+	}
+
+	/**
+	 * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children
+	 * that can be created under this object.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) {
+		super.collectNewChildDescriptors(newChildDescriptors, object);
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGIActionState_Properties(),
+				 UMLRpyFactory.eINSTANCE.createIPropertyContainer()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGIActionState_M_AdditionalLabel(),
+				 UMLRpyFactory.eINSTANCE.createCGIText()));
+	}
+
+	/**
+	 * This returns the label text for {@link org.eclipse.emf.edit.command.CreateChildCommand}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String getCreateChildText(Object owner, Object feature, Object child, Collection<?> selection) {
+		Object childFeature = feature;
+		Object childObject = child;
+
+		boolean qualify =
+			childFeature == UMLRpyPackage.eINSTANCE.getGraphElementsType_M_name() ||
+			childFeature == UMLRpyPackage.eINSTANCE.getCGIActionState_M_AdditionalLabel();
+
+		if (qualify) {
+			return getString
+				("_UI_CreateChild_text2", //$NON-NLS-1$
+				 new Object[] { getTypeText(childObject), getFeatureText(childFeature), getTypeText(owner) });
+		}
+		return super.getCreateChildText(owner, feature, child, selection);
+	}
+
+}
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/CGIActiveXItemProvider.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/CGIActiveXItemProvider.java
new file mode 100755
index 0000000..512a9d8
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/CGIActiveXItemProvider.java
@@ -0,0 +1,614 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.provider;
+
+
+import java.util.Collection;
+import java.util.List;
+
+import org.eclipse.emf.common.notify.AdapterFactory;
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.ecore.EStructuralFeature;
+
+import org.eclipse.emf.edit.provider.ComposeableAdapterFactory;
+import org.eclipse.emf.edit.provider.IItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.ItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.ViewerNotification;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIActiveX;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyFactory;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIActiveX} object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class CGIActiveXItemProvider extends GraphElementsTypeItemProvider {
+	/**
+	 * This constructs an instance from a factory and a notifier.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public CGIActiveXItemProvider(AdapterFactory adapterFactory) {
+		super(adapterFactory);
+	}
+
+	/**
+	 * This returns the property descriptors for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) {
+		if (itemPropertyDescriptors == null) {
+			super.getPropertyDescriptors(object);
+
+			addM_pModelObjectPropertyDescriptor(object);
+			addM_pParentPropertyDescriptor(object);
+			addM_transformPropertyDescriptor(object);
+			addM_polygonPropertyDescriptor(object);
+			addM_nNameFormatPropertyDescriptor(object);
+			addM_nIsNameFormatPropertyDescriptor(object);
+			addCompartmentsPropertyDescriptor(object);
+			addM_csModelObjPathPropertyDescriptor(object);
+			addM_csNamePropertyDescriptor(object);
+		}
+		return itemPropertyDescriptors;
+	}
+
+	/**
+	 * This adds a property descriptor for the MpModel Object feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_pModelObjectPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIActiveX_m_pModelObject_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIActiveX_m_pModelObject_feature", "_UI_CGIActiveX_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIActiveX_M_pModelObject(),
+				 true,
+				 false,
+				 true,
+				 null,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the MpParent feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_pParentPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIActiveX_m_pParent_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIActiveX_m_pParent_feature", "_UI_CGIActiveX_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIActiveX_M_pParent(),
+				 true,
+				 false,
+				 true,
+				 null,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Mtransform feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_transformPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIActiveX_m_transform_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIActiveX_m_transform_feature", "_UI_CGIActiveX_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIActiveX_M_transform(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Mpolygon feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_polygonPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIActiveX_m_polygon_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIActiveX_m_polygon_feature", "_UI_CGIActiveX_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIActiveX_M_polygon(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the MnName Format feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_nNameFormatPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIActiveX_m_nNameFormat_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIActiveX_m_nNameFormat_feature", "_UI_CGIActiveX_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIActiveX_M_nNameFormat(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the MnIs Name Format feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_nIsNameFormatPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIActiveX_m_nIsNameFormat_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIActiveX_m_nIsNameFormat_feature", "_UI_CGIActiveX_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIActiveX_M_nIsNameFormat(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Compartments feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addCompartmentsPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIActiveX_Compartments_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIActiveX_Compartments_feature", "_UI_CGIActiveX_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIActiveX_Compartments(),
+				 true,
+				 false,
+				 true,
+				 null,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Mcs Model Obj Path feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_csModelObjPathPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIActiveX_m_csModelObjPath_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIActiveX_m_csModelObjPath_feature", "_UI_CGIActiveX_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIActiveX_M_csModelObjPath(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Mcs Name feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_csNamePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIActiveX_m_csName_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIActiveX_m_csName_feature", "_UI_CGIActiveX_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIActiveX_M_csName(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This specifies how to implement {@link #getChildren} and is used to deduce an appropriate feature for an
+	 * {@link org.eclipse.emf.edit.command.AddCommand}, {@link org.eclipse.emf.edit.command.RemoveCommand} or
+	 * {@link org.eclipse.emf.edit.command.MoveCommand} in {@link #createCommand}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Collection<? extends EStructuralFeature> getChildrenFeatures(Object object) {
+		if (childrenFeatures == null) {
+			super.getChildrenFeatures(object);
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getCGIActiveX_Properties());
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getCGIActiveX_M_PartsArray());
+		}
+		return childrenFeatures;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EStructuralFeature getChildFeature(Object object, Object child) {
+		// Check the type of the specified child object and return the proper feature to use for
+		// adding (see {@link AddCommand}) it as a child.
+
+		return super.getChildFeature(object, child);
+	}
+
+	/**
+	 * This returns CGIActiveX.gif.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object getImage(Object object) {
+		return overlayImage(object, getResourceLocator().getImage("full/obj16/CGIActiveX")); //$NON-NLS-1$
+	}
+
+	/**
+	 * This returns the label text for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String getText(Object object) {
+		String label = ((CGIActiveX)object).getId();
+		return label == null || label.length() == 0 ?
+			getString("_UI_CGIActiveX_type") : //$NON-NLS-1$
+			getString("_UI_CGIActiveX_type") + " " + label; //$NON-NLS-1$ //$NON-NLS-2$
+	}
+	
+
+	/**
+	 * This handles model notifications by calling {@link #updateChildren} to update any cached
+	 * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void notifyChanged(Notification notification) {
+		updateChildren(notification);
+
+		switch (notification.getFeatureID(CGIActiveX.class)) {
+			case UMLRpyPackage.CGI_ACTIVE_X__MTRANSFORM:
+			case UMLRpyPackage.CGI_ACTIVE_X__MPOLYGON:
+			case UMLRpyPackage.CGI_ACTIVE_X__MNNAME_FORMAT:
+			case UMLRpyPackage.CGI_ACTIVE_X__MNIS_NAME_FORMAT:
+			case UMLRpyPackage.CGI_ACTIVE_X__MCS_MODEL_OBJ_PATH:
+			case UMLRpyPackage.CGI_ACTIVE_X__MCS_NAME:
+				fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), false, true));
+				return;
+			case UMLRpyPackage.CGI_ACTIVE_X__PROPERTIES:
+			case UMLRpyPackage.CGI_ACTIVE_X__MPARTS_ARRAY:
+				fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), true, false));
+				return;
+		}
+		super.notifyChanged(notification);
+	}
+
+	/**
+	 * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children
+	 * that can be created under this object.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) {
+		super.collectNewChildDescriptors(newChildDescriptors, object);
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGIActiveX_Properties(),
+				 UMLRpyFactory.eINSTANCE.createIPropertyContainer()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGIActiveX_M_PartsArray(),
+				 UMLRpyFactory.eINSTANCE.createIState()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGIActiveX_M_PartsArray(),
+				 UMLRpyFactory.eINSTANCE.createIAcceptEventAction()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGIActiveX_M_PartsArray(),
+				 UMLRpyFactory.eINSTANCE.createIAcceptTimeEvent()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGIActiveX_M_PartsArray(),
+				 UMLRpyFactory.eINSTANCE.createIActivityDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGIActiveX_M_PartsArray(),
+				 UMLRpyFactory.eINSTANCE.createIActivityGraph()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGIActiveX_M_PartsArray(),
+				 UMLRpyFactory.eINSTANCE.createIActor()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGIActiveX_M_PartsArray(),
+				 UMLRpyFactory.eINSTANCE.createIClass()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGIActiveX_M_PartsArray(),
+				 UMLRpyFactory.eINSTANCE.createIAssociationClass()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGIActiveX_M_PartsArray(),
+				 UMLRpyFactory.eINSTANCE.createIAttribute()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGIActiveX_M_PartsArray(),
+				 UMLRpyFactory.eINSTANCE.createICallOperation()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGIActiveX_M_PartsArray(),
+				 UMLRpyFactory.eINSTANCE.createICodeGenConfigInfo()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGIActiveX_M_PartsArray(),
+				 UMLRpyFactory.eINSTANCE.createIDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGIActiveX_M_PartsArray(),
+				 UMLRpyFactory.eINSTANCE.createICollaborationDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGIActiveX_M_PartsArray(),
+				 UMLRpyFactory.eINSTANCE.createIComponent()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGIActiveX_M_PartsArray(),
+				 UMLRpyFactory.eINSTANCE.createIComponentDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGIActiveX_M_PartsArray(),
+				 UMLRpyFactory.eINSTANCE.createIDefaultDrvdTrans()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGIActiveX_M_PartsArray(),
+				 UMLRpyFactory.eINSTANCE.createIDependency()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGIActiveX_M_PartsArray(),
+				 UMLRpyFactory.eINSTANCE.createIDeploymentDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGIActiveX_M_PartsArray(),
+				 UMLRpyFactory.eINSTANCE.createIHyperLink()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGIActiveX_M_PartsArray(),
+				 UMLRpyFactory.eINSTANCE.createIInformationFlow()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGIActiveX_M_PartsArray(),
+				 UMLRpyFactory.eINSTANCE.createIInformationItem()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGIActiveX_M_PartsArray(),
+				 UMLRpyFactory.eINSTANCE.createIMSC()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGIActiveX_M_PartsArray(),
+				 UMLRpyFactory.eINSTANCE.createIMatrixInstance()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGIActiveX_M_PartsArray(),
+				 UMLRpyFactory.eINSTANCE.createIMessage()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGIActiveX_M_PartsArray(),
+				 UMLRpyFactory.eINSTANCE.createIModule()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGIActiveX_M_PartsArray(),
+				 UMLRpyFactory.eINSTANCE.createIObjectLink()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGIActiveX_M_PartsArray(),
+				 UMLRpyFactory.eINSTANCE.createIObjectModelDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGIActiveX_M_PartsArray(),
+				 UMLRpyFactory.eINSTANCE.createIObjectNode()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGIActiveX_M_PartsArray(),
+				 UMLRpyFactory.eINSTANCE.createIPanelDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGIActiveX_M_PartsArray(),
+				 UMLRpyFactory.eINSTANCE.createIPart()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGIActiveX_M_PartsArray(),
+				 UMLRpyFactory.eINSTANCE.createIPrimitiveOperation()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGIActiveX_M_PartsArray(),
+				 UMLRpyFactory.eINSTANCE.createIProfile()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGIActiveX_M_PartsArray(),
+				 UMLRpyFactory.eINSTANCE.createIReception()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGIActiveX_M_PartsArray(),
+				 UMLRpyFactory.eINSTANCE.createIReferenceActivity()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGIActiveX_M_PartsArray(),
+				 UMLRpyFactory.eINSTANCE.createIRequirement()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGIActiveX_M_PartsArray(),
+				 UMLRpyFactory.eINSTANCE.createISequenceDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGIActiveX_M_PartsArray(),
+				 UMLRpyFactory.eINSTANCE.createIStateChart()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGIActiveX_M_PartsArray(),
+				 UMLRpyFactory.eINSTANCE.createIStateChartDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGIActiveX_M_PartsArray(),
+				 UMLRpyFactory.eINSTANCE.createIStereotype()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGIActiveX_M_PartsArray(),
+				 UMLRpyFactory.eINSTANCE.createIStructureDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGIActiveX_M_PartsArray(),
+				 UMLRpyFactory.eINSTANCE.createISubsystem()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGIActiveX_M_PartsArray(),
+				 UMLRpyFactory.eINSTANCE.createISysMLPort()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGIActiveX_M_PartsArray(),
+				 UMLRpyFactory.eINSTANCE.createITableInstance()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGIActiveX_M_PartsArray(),
+				 UMLRpyFactory.eINSTANCE.createITransition()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGIActiveX_M_PartsArray(),
+				 UMLRpyFactory.eINSTANCE.createIType()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGIActiveX_M_PartsArray(),
+				 UMLRpyFactory.eINSTANCE.createIUCDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGIActiveX_M_PartsArray(),
+				 UMLRpyFactory.eINSTANCE.createIUseCase()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGIActiveX_M_PartsArray(),
+				 UMLRpyFactory.eINSTANCE.createIUseCaseDiagram()));
+	}
+
+}
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/CGIAnchorItemProvider.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/CGIAnchorItemProvider.java
new file mode 100755
index 0000000..16f71ca
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/CGIAnchorItemProvider.java
@@ -0,0 +1,529 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.provider;
+
+
+import java.util.Collection;
+import java.util.List;
+
+import org.eclipse.emf.common.notify.AdapterFactory;
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.ecore.EStructuralFeature;
+
+import org.eclipse.emf.edit.provider.ComposeableAdapterFactory;
+import org.eclipse.emf.edit.provider.IItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.ItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.ViewerNotification;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIAnchor;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyFactory;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIAnchor} object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class CGIAnchorItemProvider extends GraphElementsTypeItemProvider {
+	/**
+	 * This constructs an instance from a factory and a notifier.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public CGIAnchorItemProvider(AdapterFactory adapterFactory) {
+		super(adapterFactory);
+	}
+
+	/**
+	 * This returns the property descriptors for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) {
+		if (itemPropertyDescriptors == null) {
+			super.getPropertyDescriptors(object);
+
+			addM_pModelObjectPropertyDescriptor(object);
+			addM_pParentPropertyDescriptor(object);
+			addM_pSourcePropertyDescriptor(object);
+			addM_sourceTypePropertyDescriptor(object);
+			addM_pTargetPropertyDescriptor(object);
+			addM_targetTypePropertyDescriptor(object);
+			addM_directionPropertyDescriptor(object);
+			addM_anglePoint1PropertyDescriptor(object);
+			addM_anglePoint2PropertyDescriptor(object);
+			addM_line_stylePropertyDescriptor(object);
+			addM_SourcePortPropertyDescriptor(object);
+			addM_TargetPortPropertyDescriptor(object);
+			addM_lineWidthPropertyDescriptor(object);
+			addM_arrowPropertyDescriptor(object);
+		}
+		return itemPropertyDescriptors;
+	}
+
+	/**
+	 * This adds a property descriptor for the MpModel Object feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_pModelObjectPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIAnchor_m_pModelObject_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIAnchor_m_pModelObject_feature", "_UI_CGIAnchor_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIAnchor_M_pModelObject(),
+				 true,
+				 false,
+				 true,
+				 null,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the MpParent feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_pParentPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIAnchor_m_pParent_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIAnchor_m_pParent_feature", "_UI_CGIAnchor_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIAnchor_M_pParent(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the MpSource feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_pSourcePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIAnchor_m_pSource_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIAnchor_m_pSource_feature", "_UI_CGIAnchor_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIAnchor_M_pSource(),
+				 true,
+				 false,
+				 true,
+				 null,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Msource Type feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_sourceTypePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIAnchor_m_sourceType_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIAnchor_m_sourceType_feature", "_UI_CGIAnchor_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIAnchor_M_sourceType(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the MpTarget feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_pTargetPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIAnchor_m_pTarget_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIAnchor_m_pTarget_feature", "_UI_CGIAnchor_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIAnchor_M_pTarget(),
+				 true,
+				 false,
+				 true,
+				 null,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Mtarget Type feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_targetTypePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIAnchor_m_targetType_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIAnchor_m_targetType_feature", "_UI_CGIAnchor_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIAnchor_M_targetType(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Mdirection feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_directionPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIAnchor_m_direction_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIAnchor_m_direction_feature", "_UI_CGIAnchor_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIAnchor_M_direction(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Mangle Point1 feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_anglePoint1PropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIAnchor_m_anglePoint1_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIAnchor_m_anglePoint1_feature", "_UI_CGIAnchor_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIAnchor_M_anglePoint1(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Mangle Point2 feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_anglePoint2PropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIAnchor_m_anglePoint2_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIAnchor_m_anglePoint2_feature", "_UI_CGIAnchor_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIAnchor_M_anglePoint2(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Mline style feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_line_stylePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIAnchor_m_line_style_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIAnchor_m_line_style_feature", "_UI_CGIAnchor_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIAnchor_M_line_style(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the MSource Port feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_SourcePortPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIAnchor_m_SourcePort_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIAnchor_m_SourcePort_feature", "_UI_CGIAnchor_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIAnchor_M_SourcePort(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the MTarget Port feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_TargetPortPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIAnchor_m_TargetPort_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIAnchor_m_TargetPort_feature", "_UI_CGIAnchor_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIAnchor_M_TargetPort(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Mline Width feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_lineWidthPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIAnchor_m_lineWidth_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIAnchor_m_lineWidth_feature", "_UI_CGIAnchor_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIAnchor_M_lineWidth(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Marrow feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_arrowPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIAnchor_m_arrow_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIAnchor_m_arrow_feature", "_UI_CGIAnchor_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIAnchor_M_arrow(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This specifies how to implement {@link #getChildren} and is used to deduce an appropriate feature for an
+	 * {@link org.eclipse.emf.edit.command.AddCommand}, {@link org.eclipse.emf.edit.command.RemoveCommand} or
+	 * {@link org.eclipse.emf.edit.command.MoveCommand} in {@link #createCommand}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Collection<? extends EStructuralFeature> getChildrenFeatures(Object object) {
+		if (childrenFeatures == null) {
+			super.getChildrenFeatures(object);
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getCGIAnchor_M_rpn());
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getCGIAnchor_Properties());
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getCGIAnchor_M_color());
+		}
+		return childrenFeatures;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EStructuralFeature getChildFeature(Object object, Object child) {
+		// Check the type of the specified child object and return the proper feature to use for
+		// adding (see {@link AddCommand}) it as a child.
+
+		return super.getChildFeature(object, child);
+	}
+
+	/**
+	 * This returns CGIAnchor.gif.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object getImage(Object object) {
+		return overlayImage(object, getResourceLocator().getImage("full/obj16/CGIAnchor")); //$NON-NLS-1$
+	}
+
+	/**
+	 * This returns the label text for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String getText(Object object) {
+		String label = ((CGIAnchor)object).getId();
+		return label == null || label.length() == 0 ?
+			getString("_UI_CGIAnchor_type") : //$NON-NLS-1$
+			getString("_UI_CGIAnchor_type") + " " + label; //$NON-NLS-1$ //$NON-NLS-2$
+	}
+	
+
+	/**
+	 * This handles model notifications by calling {@link #updateChildren} to update any cached
+	 * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void notifyChanged(Notification notification) {
+		updateChildren(notification);
+
+		switch (notification.getFeatureID(CGIAnchor.class)) {
+			case UMLRpyPackage.CGI_ANCHOR__MPPARENT:
+			case UMLRpyPackage.CGI_ANCHOR__MSOURCE_TYPE:
+			case UMLRpyPackage.CGI_ANCHOR__MTARGET_TYPE:
+			case UMLRpyPackage.CGI_ANCHOR__MDIRECTION:
+			case UMLRpyPackage.CGI_ANCHOR__MANGLE_POINT1:
+			case UMLRpyPackage.CGI_ANCHOR__MANGLE_POINT2:
+			case UMLRpyPackage.CGI_ANCHOR__MLINE_STYLE:
+			case UMLRpyPackage.CGI_ANCHOR__MSOURCE_PORT:
+			case UMLRpyPackage.CGI_ANCHOR__MTARGET_PORT:
+			case UMLRpyPackage.CGI_ANCHOR__MLINE_WIDTH:
+			case UMLRpyPackage.CGI_ANCHOR__MARROW:
+				fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), false, true));
+				return;
+			case UMLRpyPackage.CGI_ANCHOR__MRPN:
+			case UMLRpyPackage.CGI_ANCHOR__PROPERTIES:
+			case UMLRpyPackage.CGI_ANCHOR__MCOLOR:
+				fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), true, false));
+				return;
+		}
+		super.notifyChanged(notification);
+	}
+
+	/**
+	 * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children
+	 * that can be created under this object.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) {
+		super.collectNewChildDescriptors(newChildDescriptors, object);
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGIAnchor_M_rpn(),
+				 UMLRpyFactory.eINSTANCE.createCGIText()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGIAnchor_Properties(),
+				 UMLRpyFactory.eINSTANCE.createIPropertyContainer()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGIAnchor_M_color(),
+				 UMLRpyFactory.eINSTANCE.createIColor()));
+	}
+
+	/**
+	 * This returns the label text for {@link org.eclipse.emf.edit.command.CreateChildCommand}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String getCreateChildText(Object owner, Object feature, Object child, Collection<?> selection) {
+		Object childFeature = feature;
+		Object childObject = child;
+
+		boolean qualify =
+			childFeature == UMLRpyPackage.eINSTANCE.getGraphElementsType_M_name() ||
+			childFeature == UMLRpyPackage.eINSTANCE.getCGIAnchor_M_rpn();
+
+		if (qualify) {
+			return getString
+				("_UI_CreateChild_text2", //$NON-NLS-1$
+				 new Object[] { getTypeText(childObject), getFeatureText(childFeature), getTypeText(owner) });
+		}
+		return super.getCreateChildText(owner, feature, child, selection);
+	}
+
+}
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/CGIAnnotationItemProvider.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/CGIAnnotationItemProvider.java
new file mode 100755
index 0000000..947197e
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/CGIAnnotationItemProvider.java
@@ -0,0 +1,489 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.provider;
+
+
+import java.util.Collection;
+import java.util.List;
+
+import org.eclipse.emf.common.notify.AdapterFactory;
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.ecore.EStructuralFeature;
+
+import org.eclipse.emf.edit.provider.ComposeableAdapterFactory;
+import org.eclipse.emf.edit.provider.IItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.ItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.ViewerNotification;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIAnnotation;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyFactory;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIAnnotation} object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class CGIAnnotationItemProvider extends GraphElementsTypeItemProvider {
+	/**
+	 * This constructs an instance from a factory and a notifier.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public CGIAnnotationItemProvider(AdapterFactory adapterFactory) {
+		super(adapterFactory);
+	}
+
+	/**
+	 * This returns the property descriptors for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) {
+		if (itemPropertyDescriptors == null) {
+			super.getPropertyDescriptors(object);
+
+			addM_pParentPropertyDescriptor(object);
+			addM_transformPropertyDescriptor(object);
+			addM_polygonPropertyDescriptor(object);
+			addM_nNameFormatPropertyDescriptor(object);
+			addM_nIsNameFormatPropertyDescriptor(object);
+			addITempdisplayTextFlagPropertyDescriptor(object);
+			addM_bIsBoxStylePropertyDescriptor(object);
+			addM_pModelObjectPropertyDescriptor(object);
+			addM_lineWidthPropertyDescriptor(object);
+			addFramesetPropertyDescriptor(object);
+			addM_bIsStructuredPropertyDescriptor(object);
+			addM_bFramesetModifiedPropertyDescriptor(object);
+		}
+		return itemPropertyDescriptors;
+	}
+
+	/**
+	 * This adds a property descriptor for the MpParent feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_pParentPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIAnnotation_m_pParent_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIAnnotation_m_pParent_feature", "_UI_CGIAnnotation_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIAnnotation_M_pParent(),
+				 true,
+				 false,
+				 true,
+				 null,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Mtransform feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_transformPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIAnnotation_m_transform_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIAnnotation_m_transform_feature", "_UI_CGIAnnotation_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIAnnotation_M_transform(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Mpolygon feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_polygonPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIAnnotation_m_polygon_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIAnnotation_m_polygon_feature", "_UI_CGIAnnotation_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIAnnotation_M_polygon(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the MnName Format feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_nNameFormatPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIAnnotation_m_nNameFormat_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIAnnotation_m_nNameFormat_feature", "_UI_CGIAnnotation_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIAnnotation_M_nNameFormat(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the MnIs Name Format feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_nIsNameFormatPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIAnnotation_m_nIsNameFormat_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIAnnotation_m_nIsNameFormat_feature", "_UI_CGIAnnotation_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIAnnotation_M_nIsNameFormat(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the ITempdisplay Text Flag feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addITempdisplayTextFlagPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIAnnotation_iTempdisplayTextFlag_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIAnnotation_iTempdisplayTextFlag_feature", "_UI_CGIAnnotation_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIAnnotation_ITempdisplayTextFlag(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the MbIs Box Style feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_bIsBoxStylePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIAnnotation_m_bIsBoxStyle_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIAnnotation_m_bIsBoxStyle_feature", "_UI_CGIAnnotation_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIAnnotation_M_bIsBoxStyle(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the MpModel Object feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_pModelObjectPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIAnnotation_m_pModelObject_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIAnnotation_m_pModelObject_feature", "_UI_CGIAnnotation_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIAnnotation_M_pModelObject(),
+				 true,
+				 false,
+				 true,
+				 null,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Mline Width feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_lineWidthPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIAnnotation_m_lineWidth_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIAnnotation_m_lineWidth_feature", "_UI_CGIAnnotation_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIAnnotation_M_lineWidth(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Frameset feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addFramesetPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIAnnotation_frameset_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIAnnotation_frameset_feature", "_UI_CGIAnnotation_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIAnnotation_Frameset(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the MbIs Structured feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_bIsStructuredPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIAnnotation_m_bIsStructured_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIAnnotation_m_bIsStructured_feature", "_UI_CGIAnnotation_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIAnnotation_M_bIsStructured(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the MbFrameset Modified feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_bFramesetModifiedPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIAnnotation_m_bFramesetModified_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIAnnotation_m_bFramesetModified_feature", "_UI_CGIAnnotation_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIAnnotation_M_bFramesetModified(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This specifies how to implement {@link #getChildren} and is used to deduce an appropriate feature for an
+	 * {@link org.eclipse.emf.edit.command.AddCommand}, {@link org.eclipse.emf.edit.command.RemoveCommand} or
+	 * {@link org.eclipse.emf.edit.command.MoveCommand} in {@link #createCommand}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Collection<? extends EStructuralFeature> getChildrenFeatures(Object object) {
+		if (childrenFeatures == null) {
+			super.getChildrenFeatures(object);
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getCGIAnnotation_Properties());
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getCGIAnnotation_M_AdditionalLabel());
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getCGIAnnotation_M_color());
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getCGIAnnotation_Compartments());
+		}
+		return childrenFeatures;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EStructuralFeature getChildFeature(Object object, Object child) {
+		// Check the type of the specified child object and return the proper feature to use for
+		// adding (see {@link AddCommand}) it as a child.
+
+		return super.getChildFeature(object, child);
+	}
+
+	/**
+	 * This returns CGIAnnotation.gif.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object getImage(Object object) {
+		return overlayImage(object, getResourceLocator().getImage("full/obj16/CGIAnnotation")); //$NON-NLS-1$
+	}
+
+	/**
+	 * This returns the label text for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String getText(Object object) {
+		String label = ((CGIAnnotation)object).getId();
+		return label == null || label.length() == 0 ?
+			getString("_UI_CGIAnnotation_type") : //$NON-NLS-1$
+			getString("_UI_CGIAnnotation_type") + " " + label; //$NON-NLS-1$ //$NON-NLS-2$
+	}
+	
+
+	/**
+	 * This handles model notifications by calling {@link #updateChildren} to update any cached
+	 * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void notifyChanged(Notification notification) {
+		updateChildren(notification);
+
+		switch (notification.getFeatureID(CGIAnnotation.class)) {
+			case UMLRpyPackage.CGI_ANNOTATION__MTRANSFORM:
+			case UMLRpyPackage.CGI_ANNOTATION__MPOLYGON:
+			case UMLRpyPackage.CGI_ANNOTATION__MNNAME_FORMAT:
+			case UMLRpyPackage.CGI_ANNOTATION__MNIS_NAME_FORMAT:
+			case UMLRpyPackage.CGI_ANNOTATION__ITEMPDISPLAY_TEXT_FLAG:
+			case UMLRpyPackage.CGI_ANNOTATION__MBIS_BOX_STYLE:
+			case UMLRpyPackage.CGI_ANNOTATION__MLINE_WIDTH:
+			case UMLRpyPackage.CGI_ANNOTATION__FRAMESET:
+			case UMLRpyPackage.CGI_ANNOTATION__MBIS_STRUCTURED:
+			case UMLRpyPackage.CGI_ANNOTATION__MBFRAMESET_MODIFIED:
+				fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), false, true));
+				return;
+			case UMLRpyPackage.CGI_ANNOTATION__PROPERTIES:
+			case UMLRpyPackage.CGI_ANNOTATION__MADDITIONAL_LABEL:
+			case UMLRpyPackage.CGI_ANNOTATION__MCOLOR:
+			case UMLRpyPackage.CGI_ANNOTATION__COMPARTMENTS:
+				fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), true, false));
+				return;
+		}
+		super.notifyChanged(notification);
+	}
+
+	/**
+	 * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children
+	 * that can be created under this object.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) {
+		super.collectNewChildDescriptors(newChildDescriptors, object);
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGIAnnotation_Properties(),
+				 UMLRpyFactory.eINSTANCE.createIPropertyContainer()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGIAnnotation_M_AdditionalLabel(),
+				 UMLRpyFactory.eINSTANCE.createCGIText()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGIAnnotation_M_color(),
+				 UMLRpyFactory.eINSTANCE.createIColor()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGIAnnotation_Compartments(),
+				 UMLRpyFactory.eINSTANCE.createCGICompartment()));
+	}
+
+	/**
+	 * This returns the label text for {@link org.eclipse.emf.edit.command.CreateChildCommand}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String getCreateChildText(Object owner, Object feature, Object child, Collection<?> selection) {
+		Object childFeature = feature;
+		Object childObject = child;
+
+		boolean qualify =
+			childFeature == UMLRpyPackage.eINSTANCE.getGraphElementsType_M_name() ||
+			childFeature == UMLRpyPackage.eINSTANCE.getCGIAnnotation_M_AdditionalLabel();
+
+		if (qualify) {
+			return getString
+				("_UI_CreateChild_text2", //$NON-NLS-1$
+				 new Object[] { getTypeText(childObject), getFeatureText(childFeature), getTypeText(owner) });
+		}
+		return super.getCreateChildText(owner, feature, child, selection);
+	}
+
+}
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/CGIArrowItemProvider.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/CGIArrowItemProvider.java
new file mode 100755
index 0000000..6ae4bc7
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/CGIArrowItemProvider.java
@@ -0,0 +1,467 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.provider;
+
+
+import java.util.Collection;
+import java.util.List;
+
+import org.eclipse.emf.common.notify.AdapterFactory;
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.ecore.EStructuralFeature;
+
+import org.eclipse.emf.edit.provider.ComposeableAdapterFactory;
+import org.eclipse.emf.edit.provider.IItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.ItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.ViewerNotification;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIArrow;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyFactory;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIArrow} object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class CGIArrowItemProvider extends GraphElementsTypeItemProvider {
+	/**
+	 * This constructs an instance from a factory and a notifier.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public CGIArrowItemProvider(AdapterFactory adapterFactory) {
+		super(adapterFactory);
+	}
+
+	/**
+	 * This returns the property descriptors for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) {
+		if (itemPropertyDescriptors == null) {
+			super.getPropertyDescriptors(object);
+
+			addM_pModelObjectPropertyDescriptor(object);
+			addM_pParentPropertyDescriptor(object);
+			addM_pSourcePropertyDescriptor(object);
+			addM_sourceTypePropertyDescriptor(object);
+			addM_pTargetPropertyDescriptor(object);
+			addM_targetTypePropertyDescriptor(object);
+			addM_directionPropertyDescriptor(object);
+			addM_anglePoint1PropertyDescriptor(object);
+			addM_anglePoint2PropertyDescriptor(object);
+			addM_line_stylePropertyDescriptor(object);
+			addM_SourcePortPropertyDescriptor(object);
+			addM_TargetPortPropertyDescriptor(object);
+		}
+		return itemPropertyDescriptors;
+	}
+
+	/**
+	 * This adds a property descriptor for the MpModel Object feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_pModelObjectPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIArrow_m_pModelObject_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIArrow_m_pModelObject_feature", "_UI_CGIArrow_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIArrow_M_pModelObject(),
+				 true,
+				 false,
+				 true,
+				 null,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the MpParent feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_pParentPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIArrow_m_pParent_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIArrow_m_pParent_feature", "_UI_CGIArrow_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIArrow_M_pParent(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the MpSource feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_pSourcePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIArrow_m_pSource_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIArrow_m_pSource_feature", "_UI_CGIArrow_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIArrow_M_pSource(),
+				 true,
+				 false,
+				 true,
+				 null,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Msource Type feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_sourceTypePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIArrow_m_sourceType_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIArrow_m_sourceType_feature", "_UI_CGIArrow_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIArrow_M_sourceType(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the MpTarget feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_pTargetPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIArrow_m_pTarget_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIArrow_m_pTarget_feature", "_UI_CGIArrow_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIArrow_M_pTarget(),
+				 true,
+				 false,
+				 true,
+				 null,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Mtarget Type feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_targetTypePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIArrow_m_targetType_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIArrow_m_targetType_feature", "_UI_CGIArrow_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIArrow_M_targetType(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Mdirection feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_directionPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIArrow_m_direction_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIArrow_m_direction_feature", "_UI_CGIArrow_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIArrow_M_direction(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Mangle Point1 feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_anglePoint1PropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIArrow_m_anglePoint1_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIArrow_m_anglePoint1_feature", "_UI_CGIArrow_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIArrow_M_anglePoint1(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Mangle Point2 feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_anglePoint2PropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIArrow_m_anglePoint2_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIArrow_m_anglePoint2_feature", "_UI_CGIArrow_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIArrow_M_anglePoint2(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Mline style feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_line_stylePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIArrow_m_line_style_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIArrow_m_line_style_feature", "_UI_CGIArrow_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIArrow_M_line_style(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the MSource Port feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_SourcePortPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIArrow_m_SourcePort_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIArrow_m_SourcePort_feature", "_UI_CGIArrow_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIArrow_M_SourcePort(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the MTarget Port feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_TargetPortPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIArrow_m_TargetPort_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIArrow_m_TargetPort_feature", "_UI_CGIArrow_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIArrow_M_TargetPort(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This specifies how to implement {@link #getChildren} and is used to deduce an appropriate feature for an
+	 * {@link org.eclipse.emf.edit.command.AddCommand}, {@link org.eclipse.emf.edit.command.RemoveCommand} or
+	 * {@link org.eclipse.emf.edit.command.MoveCommand} in {@link #createCommand}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Collection<? extends EStructuralFeature> getChildrenFeatures(Object object) {
+		if (childrenFeatures == null) {
+			super.getChildrenFeatures(object);
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getCGIArrow_M_rpn());
+		}
+		return childrenFeatures;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EStructuralFeature getChildFeature(Object object, Object child) {
+		// Check the type of the specified child object and return the proper feature to use for
+		// adding (see {@link AddCommand}) it as a child.
+
+		return super.getChildFeature(object, child);
+	}
+
+	/**
+	 * This returns CGIArrow.gif.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object getImage(Object object) {
+		return overlayImage(object, getResourceLocator().getImage("full/obj16/CGIArrow")); //$NON-NLS-1$
+	}
+
+	/**
+	 * This returns the label text for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String getText(Object object) {
+		String label = ((CGIArrow)object).getId();
+		return label == null || label.length() == 0 ?
+			getString("_UI_CGIArrow_type") : //$NON-NLS-1$
+			getString("_UI_CGIArrow_type") + " " + label; //$NON-NLS-1$ //$NON-NLS-2$
+	}
+	
+
+	/**
+	 * This handles model notifications by calling {@link #updateChildren} to update any cached
+	 * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void notifyChanged(Notification notification) {
+		updateChildren(notification);
+
+		switch (notification.getFeatureID(CGIArrow.class)) {
+			case UMLRpyPackage.CGI_ARROW__MPPARENT:
+			case UMLRpyPackage.CGI_ARROW__MSOURCE_TYPE:
+			case UMLRpyPackage.CGI_ARROW__MTARGET_TYPE:
+			case UMLRpyPackage.CGI_ARROW__MDIRECTION:
+			case UMLRpyPackage.CGI_ARROW__MANGLE_POINT1:
+			case UMLRpyPackage.CGI_ARROW__MANGLE_POINT2:
+			case UMLRpyPackage.CGI_ARROW__MLINE_STYLE:
+			case UMLRpyPackage.CGI_ARROW__MSOURCE_PORT:
+			case UMLRpyPackage.CGI_ARROW__MTARGET_PORT:
+				fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), false, true));
+				return;
+			case UMLRpyPackage.CGI_ARROW__MRPN:
+				fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), true, false));
+				return;
+		}
+		super.notifyChanged(notification);
+	}
+
+	/**
+	 * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children
+	 * that can be created under this object.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) {
+		super.collectNewChildDescriptors(newChildDescriptors, object);
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGIArrow_M_rpn(),
+				 UMLRpyFactory.eINSTANCE.createCGIText()));
+	}
+
+	/**
+	 * This returns the label text for {@link org.eclipse.emf.edit.command.CreateChildCommand}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String getCreateChildText(Object owner, Object feature, Object child, Collection<?> selection) {
+		Object childFeature = feature;
+		Object childObject = child;
+
+		boolean qualify =
+			childFeature == UMLRpyPackage.eINSTANCE.getGraphElementsType_M_name() ||
+			childFeature == UMLRpyPackage.eINSTANCE.getCGIArrow_M_rpn();
+
+		if (qualify) {
+			return getString
+				("_UI_CreateChild_text2", //$NON-NLS-1$
+				 new Object[] { getTypeText(childObject), getFeatureText(childFeature), getTypeText(owner) });
+		}
+		return super.getCreateChildText(owner, feature, child, selection);
+	}
+
+}
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/CGIAssociationEndItemProvider.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/CGIAssociationEndItemProvider.java
new file mode 100755
index 0000000..35e3471
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/CGIAssociationEndItemProvider.java
@@ -0,0 +1,809 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.provider;
+
+
+import java.util.Collection;
+import java.util.List;
+
+import org.eclipse.emf.common.notify.AdapterFactory;
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.ecore.EStructuralFeature;
+
+import org.eclipse.emf.edit.provider.ComposeableAdapterFactory;
+import org.eclipse.emf.edit.provider.IItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.ItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.ViewerNotification;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIAssociationEnd;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyFactory;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIAssociationEnd} object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class CGIAssociationEndItemProvider extends GraphElementsTypeItemProvider {
+	/**
+	 * This constructs an instance from a factory and a notifier.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public CGIAssociationEndItemProvider(AdapterFactory adapterFactory) {
+		super(adapterFactory);
+	}
+
+	/**
+	 * This returns the property descriptors for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) {
+		if (itemPropertyDescriptors == null) {
+			super.getPropertyDescriptors(object);
+
+			addM_pModelObjectPropertyDescriptor(object);
+			addM_pParentPropertyDescriptor(object);
+			addM_pSourcePropertyDescriptor(object);
+			addM_sourceTypePropertyDescriptor(object);
+			addM_pTargetPropertyDescriptor(object);
+			addM_targetTypePropertyDescriptor(object);
+			addM_directionPropertyDescriptor(object);
+			addM_anglePoint1PropertyDescriptor(object);
+			addM_anglePoint2PropertyDescriptor(object);
+			addM_line_stylePropertyDescriptor(object);
+			addM_SourcePortPropertyDescriptor(object);
+			addM_TargetPortPropertyDescriptor(object);
+			addM_bShowSourceMultiplicityPropertyDescriptor(object);
+			addM_bShowSourceRolePropertyDescriptor(object);
+			addM_bShowTargetMultiplicityPropertyDescriptor(object);
+			addM_bShowTargetRolePropertyDescriptor(object);
+			addM_bShowLinkNamePropertyDescriptor(object);
+			addM_bShowSpecificTypePropertyDescriptor(object);
+			addM_bInstancePropertyDescriptor(object);
+			addM_bShowQualifier1PropertyDescriptor(object);
+			addM_bShowQualifier2PropertyDescriptor(object);
+			addM_specificTypePropertyDescriptor(object);
+			addM_arrowPropertyDescriptor(object);
+		}
+		return itemPropertyDescriptors;
+	}
+
+	/**
+	 * This adds a property descriptor for the MpModel Object feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_pModelObjectPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIAssociationEnd_m_pModelObject_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIAssociationEnd_m_pModelObject_feature", "_UI_CGIAssociationEnd_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIAssociationEnd_M_pModelObject(),
+				 true,
+				 false,
+				 true,
+				 null,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the MpParent feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_pParentPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIAssociationEnd_m_pParent_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIAssociationEnd_m_pParent_feature", "_UI_CGIAssociationEnd_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIAssociationEnd_M_pParent(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the MpSource feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_pSourcePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIAssociationEnd_m_pSource_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIAssociationEnd_m_pSource_feature", "_UI_CGIAssociationEnd_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIAssociationEnd_M_pSource(),
+				 true,
+				 false,
+				 true,
+				 null,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Msource Type feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_sourceTypePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIAssociationEnd_m_sourceType_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIAssociationEnd_m_sourceType_feature", "_UI_CGIAssociationEnd_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIAssociationEnd_M_sourceType(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the MpTarget feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_pTargetPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIAssociationEnd_m_pTarget_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIAssociationEnd_m_pTarget_feature", "_UI_CGIAssociationEnd_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIAssociationEnd_M_pTarget(),
+				 true,
+				 false,
+				 true,
+				 null,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Mtarget Type feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_targetTypePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIAssociationEnd_m_targetType_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIAssociationEnd_m_targetType_feature", "_UI_CGIAssociationEnd_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIAssociationEnd_M_targetType(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Mdirection feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_directionPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIAssociationEnd_m_direction_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIAssociationEnd_m_direction_feature", "_UI_CGIAssociationEnd_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIAssociationEnd_M_direction(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Mangle Point1 feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_anglePoint1PropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIAssociationEnd_m_anglePoint1_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIAssociationEnd_m_anglePoint1_feature", "_UI_CGIAssociationEnd_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIAssociationEnd_M_anglePoint1(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Mangle Point2 feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_anglePoint2PropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIAssociationEnd_m_anglePoint2_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIAssociationEnd_m_anglePoint2_feature", "_UI_CGIAssociationEnd_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIAssociationEnd_M_anglePoint2(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Mline style feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_line_stylePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIAssociationEnd_m_line_style_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIAssociationEnd_m_line_style_feature", "_UI_CGIAssociationEnd_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIAssociationEnd_M_line_style(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the MSource Port feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_SourcePortPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIAssociationEnd_m_SourcePort_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIAssociationEnd_m_SourcePort_feature", "_UI_CGIAssociationEnd_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIAssociationEnd_M_SourcePort(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the MTarget Port feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_TargetPortPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIAssociationEnd_m_TargetPort_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIAssociationEnd_m_TargetPort_feature", "_UI_CGIAssociationEnd_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIAssociationEnd_M_TargetPort(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the MbShow Source Multiplicity feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_bShowSourceMultiplicityPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIAssociationEnd_m_bShowSourceMultiplicity_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIAssociationEnd_m_bShowSourceMultiplicity_feature", "_UI_CGIAssociationEnd_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIAssociationEnd_M_bShowSourceMultiplicity(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the MbShow Source Role feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_bShowSourceRolePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIAssociationEnd_m_bShowSourceRole_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIAssociationEnd_m_bShowSourceRole_feature", "_UI_CGIAssociationEnd_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIAssociationEnd_M_bShowSourceRole(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the MbShow Target Multiplicity feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_bShowTargetMultiplicityPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIAssociationEnd_m_bShowTargetMultiplicity_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIAssociationEnd_m_bShowTargetMultiplicity_feature", "_UI_CGIAssociationEnd_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIAssociationEnd_M_bShowTargetMultiplicity(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the MbShow Target Role feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_bShowTargetRolePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIAssociationEnd_m_bShowTargetRole_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIAssociationEnd_m_bShowTargetRole_feature", "_UI_CGIAssociationEnd_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIAssociationEnd_M_bShowTargetRole(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the MbShow Link Name feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_bShowLinkNamePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIAssociationEnd_m_bShowLinkName_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIAssociationEnd_m_bShowLinkName_feature", "_UI_CGIAssociationEnd_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIAssociationEnd_M_bShowLinkName(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the MbShow Specific Type feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_bShowSpecificTypePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIAssociationEnd_m_bShowSpecificType_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIAssociationEnd_m_bShowSpecificType_feature", "_UI_CGIAssociationEnd_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIAssociationEnd_M_bShowSpecificType(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the MbInstance feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_bInstancePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIAssociationEnd_m_bInstance_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIAssociationEnd_m_bInstance_feature", "_UI_CGIAssociationEnd_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIAssociationEnd_M_bInstance(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the MbShow Qualifier1 feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_bShowQualifier1PropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIAssociationEnd_m_bShowQualifier1_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIAssociationEnd_m_bShowQualifier1_feature", "_UI_CGIAssociationEnd_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIAssociationEnd_M_bShowQualifier1(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the MbShow Qualifier2 feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_bShowQualifier2PropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIAssociationEnd_m_bShowQualifier2_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIAssociationEnd_m_bShowQualifier2_feature", "_UI_CGIAssociationEnd_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIAssociationEnd_M_bShowQualifier2(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Mspecific Type feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_specificTypePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIAssociationEnd_m_specificType_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIAssociationEnd_m_specificType_feature", "_UI_CGIAssociationEnd_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIAssociationEnd_M_specificType(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Marrow feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_arrowPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIAssociationEnd_m_arrow_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIAssociationEnd_m_arrow_feature", "_UI_CGIAssociationEnd_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIAssociationEnd_M_arrow(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This specifies how to implement {@link #getChildren} and is used to deduce an appropriate feature for an
+	 * {@link org.eclipse.emf.edit.command.AddCommand}, {@link org.eclipse.emf.edit.command.RemoveCommand} or
+	 * {@link org.eclipse.emf.edit.command.MoveCommand} in {@link #createCommand}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Collection<? extends EStructuralFeature> getChildrenFeatures(Object object) {
+		if (childrenFeatures == null) {
+			super.getChildrenFeatures(object);
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getCGIAssociationEnd_Properties());
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getCGIAssociationEnd_M_rpn());
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getCGIAssociationEnd_M_pInverseModelObject());
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getCGIAssociationEnd_M_pInstance());
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getCGIAssociationEnd_M_pInverseInstance());
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getCGIAssociationEnd_M_sourceRole());
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getCGIAssociationEnd_M_targetRole());
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getCGIAssociationEnd_M_sourceMultiplicity());
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getCGIAssociationEnd_M_targetMultiplicity());
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getCGIAssociationEnd_M_sourceQualifier());
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getCGIAssociationEnd_M_targetQualifier());
+		}
+		return childrenFeatures;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EStructuralFeature getChildFeature(Object object, Object child) {
+		// Check the type of the specified child object and return the proper feature to use for
+		// adding (see {@link AddCommand}) it as a child.
+
+		return super.getChildFeature(object, child);
+	}
+
+	/**
+	 * This returns CGIAssociationEnd.gif.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object getImage(Object object) {
+		return overlayImage(object, getResourceLocator().getImage("full/obj16/CGIAssociationEnd")); //$NON-NLS-1$
+	}
+
+	/**
+	 * This returns the label text for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String getText(Object object) {
+		String label = ((CGIAssociationEnd)object).getId();
+		return label == null || label.length() == 0 ?
+			getString("_UI_CGIAssociationEnd_type") : //$NON-NLS-1$
+			getString("_UI_CGIAssociationEnd_type") + " " + label; //$NON-NLS-1$ //$NON-NLS-2$
+	}
+	
+
+	/**
+	 * This handles model notifications by calling {@link #updateChildren} to update any cached
+	 * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void notifyChanged(Notification notification) {
+		updateChildren(notification);
+
+		switch (notification.getFeatureID(CGIAssociationEnd.class)) {
+			case UMLRpyPackage.CGI_ASSOCIATION_END__MPPARENT:
+			case UMLRpyPackage.CGI_ASSOCIATION_END__MSOURCE_TYPE:
+			case UMLRpyPackage.CGI_ASSOCIATION_END__MTARGET_TYPE:
+			case UMLRpyPackage.CGI_ASSOCIATION_END__MDIRECTION:
+			case UMLRpyPackage.CGI_ASSOCIATION_END__MANGLE_POINT1:
+			case UMLRpyPackage.CGI_ASSOCIATION_END__MANGLE_POINT2:
+			case UMLRpyPackage.CGI_ASSOCIATION_END__MLINE_STYLE:
+			case UMLRpyPackage.CGI_ASSOCIATION_END__MSOURCE_PORT:
+			case UMLRpyPackage.CGI_ASSOCIATION_END__MTARGET_PORT:
+			case UMLRpyPackage.CGI_ASSOCIATION_END__MBSHOW_SOURCE_MULTIPLICITY:
+			case UMLRpyPackage.CGI_ASSOCIATION_END__MBSHOW_SOURCE_ROLE:
+			case UMLRpyPackage.CGI_ASSOCIATION_END__MBSHOW_TARGET_MULTIPLICITY:
+			case UMLRpyPackage.CGI_ASSOCIATION_END__MBSHOW_TARGET_ROLE:
+			case UMLRpyPackage.CGI_ASSOCIATION_END__MBSHOW_LINK_NAME:
+			case UMLRpyPackage.CGI_ASSOCIATION_END__MBSHOW_SPECIFIC_TYPE:
+			case UMLRpyPackage.CGI_ASSOCIATION_END__MBINSTANCE:
+			case UMLRpyPackage.CGI_ASSOCIATION_END__MBSHOW_QUALIFIER1:
+			case UMLRpyPackage.CGI_ASSOCIATION_END__MBSHOW_QUALIFIER2:
+			case UMLRpyPackage.CGI_ASSOCIATION_END__MSPECIFIC_TYPE:
+			case UMLRpyPackage.CGI_ASSOCIATION_END__MARROW:
+				fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), false, true));
+				return;
+			case UMLRpyPackage.CGI_ASSOCIATION_END__PROPERTIES:
+			case UMLRpyPackage.CGI_ASSOCIATION_END__MRPN:
+			case UMLRpyPackage.CGI_ASSOCIATION_END__MPINVERSE_MODEL_OBJECT:
+			case UMLRpyPackage.CGI_ASSOCIATION_END__MPINSTANCE:
+			case UMLRpyPackage.CGI_ASSOCIATION_END__MPINVERSE_INSTANCE:
+			case UMLRpyPackage.CGI_ASSOCIATION_END__MSOURCE_ROLE:
+			case UMLRpyPackage.CGI_ASSOCIATION_END__MTARGET_ROLE:
+			case UMLRpyPackage.CGI_ASSOCIATION_END__MSOURCE_MULTIPLICITY:
+			case UMLRpyPackage.CGI_ASSOCIATION_END__MTARGET_MULTIPLICITY:
+			case UMLRpyPackage.CGI_ASSOCIATION_END__MSOURCE_QUALIFIER:
+			case UMLRpyPackage.CGI_ASSOCIATION_END__MTARGET_QUALIFIER:
+				fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), true, false));
+				return;
+		}
+		super.notifyChanged(notification);
+	}
+
+	/**
+	 * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children
+	 * that can be created under this object.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) {
+		super.collectNewChildDescriptors(newChildDescriptors, object);
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGIAssociationEnd_Properties(),
+				 UMLRpyFactory.eINSTANCE.createIPropertyContainer()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGIAssociationEnd_M_rpn(),
+				 UMLRpyFactory.eINSTANCE.createCGIText()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGIAssociationEnd_M_pInverseModelObject(),
+				 UMLRpyFactory.eINSTANCE.createIAssociationEndHandle()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGIAssociationEnd_M_pInstance(),
+				 UMLRpyFactory.eINSTANCE.createIObjectLinkHandle()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGIAssociationEnd_M_pInverseInstance(),
+				 UMLRpyFactory.eINSTANCE.createIObjectLinkHandle()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGIAssociationEnd_M_sourceRole(),
+				 UMLRpyFactory.eINSTANCE.createCGIText()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGIAssociationEnd_M_targetRole(),
+				 UMLRpyFactory.eINSTANCE.createCGIText()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGIAssociationEnd_M_sourceMultiplicity(),
+				 UMLRpyFactory.eINSTANCE.createCGIText()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGIAssociationEnd_M_targetMultiplicity(),
+				 UMLRpyFactory.eINSTANCE.createCGIText()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGIAssociationEnd_M_sourceQualifier(),
+				 UMLRpyFactory.eINSTANCE.createCGIText()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGIAssociationEnd_M_targetQualifier(),
+				 UMLRpyFactory.eINSTANCE.createCGIText()));
+	}
+
+	/**
+	 * This returns the label text for {@link org.eclipse.emf.edit.command.CreateChildCommand}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String getCreateChildText(Object owner, Object feature, Object child, Collection<?> selection) {
+		Object childFeature = feature;
+		Object childObject = child;
+
+		boolean qualify =
+			childFeature == UMLRpyPackage.eINSTANCE.getGraphElementsType_M_name() ||
+			childFeature == UMLRpyPackage.eINSTANCE.getCGIAssociationEnd_M_rpn() ||
+			childFeature == UMLRpyPackage.eINSTANCE.getCGIAssociationEnd_M_sourceRole() ||
+			childFeature == UMLRpyPackage.eINSTANCE.getCGIAssociationEnd_M_targetRole() ||
+			childFeature == UMLRpyPackage.eINSTANCE.getCGIAssociationEnd_M_sourceMultiplicity() ||
+			childFeature == UMLRpyPackage.eINSTANCE.getCGIAssociationEnd_M_targetMultiplicity() ||
+			childFeature == UMLRpyPackage.eINSTANCE.getCGIAssociationEnd_M_sourceQualifier() ||
+			childFeature == UMLRpyPackage.eINSTANCE.getCGIAssociationEnd_M_targetQualifier() ||
+			childFeature == UMLRpyPackage.eINSTANCE.getCGIAssociationEnd_M_pInstance() ||
+			childFeature == UMLRpyPackage.eINSTANCE.getCGIAssociationEnd_M_pInverseInstance();
+
+		if (qualify) {
+			return getString
+				("_UI_CreateChild_text2", //$NON-NLS-1$
+				 new Object[] { getTypeText(childObject), getFeatureText(childFeature), getTypeText(owner) });
+		}
+		return super.getCreateChildText(owner, feature, child, selection);
+	}
+
+}
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/CGIAssociationRoleItemProvider.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/CGIAssociationRoleItemProvider.java
new file mode 100755
index 0000000..2f39de3
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/CGIAssociationRoleItemProvider.java
@@ -0,0 +1,498 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.provider;
+
+
+import java.util.Collection;
+import java.util.List;
+
+import org.eclipse.emf.common.notify.AdapterFactory;
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.ecore.EStructuralFeature;
+
+import org.eclipse.emf.edit.provider.ComposeableAdapterFactory;
+import org.eclipse.emf.edit.provider.IItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.ItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.ViewerNotification;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIAssociationRole;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyFactory;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIAssociationRole} object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class CGIAssociationRoleItemProvider extends GraphElementsTypeItemProvider {
+	/**
+	 * This constructs an instance from a factory and a notifier.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public CGIAssociationRoleItemProvider(AdapterFactory adapterFactory) {
+		super(adapterFactory);
+	}
+
+	/**
+	 * This returns the property descriptors for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) {
+		if (itemPropertyDescriptors == null) {
+			super.getPropertyDescriptors(object);
+
+			addM_pModelObjectPropertyDescriptor(object);
+			addM_pParentPropertyDescriptor(object);
+			addM_pSourcePropertyDescriptor(object);
+			addM_sourceTypePropertyDescriptor(object);
+			addM_pTargetPropertyDescriptor(object);
+			addM_targetTypePropertyDescriptor(object);
+			addM_directionPropertyDescriptor(object);
+			addM_anglePoint1PropertyDescriptor(object);
+			addM_anglePoint2PropertyDescriptor(object);
+			addM_line_stylePropertyDescriptor(object);
+			addM_SourcePortPropertyDescriptor(object);
+			addM_TargetPortPropertyDescriptor(object);
+			addM_arrowPropertyDescriptor(object);
+		}
+		return itemPropertyDescriptors;
+	}
+
+	/**
+	 * This adds a property descriptor for the MpModel Object feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_pModelObjectPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIAssociationRole_m_pModelObject_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIAssociationRole_m_pModelObject_feature", "_UI_CGIAssociationRole_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIAssociationRole_M_pModelObject(),
+				 true,
+				 false,
+				 true,
+				 null,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the MpParent feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_pParentPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIAssociationRole_m_pParent_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIAssociationRole_m_pParent_feature", "_UI_CGIAssociationRole_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIAssociationRole_M_pParent(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the MpSource feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_pSourcePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIAssociationRole_m_pSource_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIAssociationRole_m_pSource_feature", "_UI_CGIAssociationRole_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIAssociationRole_M_pSource(),
+				 true,
+				 false,
+				 true,
+				 null,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Msource Type feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_sourceTypePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIAssociationRole_m_sourceType_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIAssociationRole_m_sourceType_feature", "_UI_CGIAssociationRole_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIAssociationRole_M_sourceType(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the MpTarget feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_pTargetPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIAssociationRole_m_pTarget_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIAssociationRole_m_pTarget_feature", "_UI_CGIAssociationRole_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIAssociationRole_M_pTarget(),
+				 true,
+				 false,
+				 true,
+				 null,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Mtarget Type feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_targetTypePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIAssociationRole_m_targetType_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIAssociationRole_m_targetType_feature", "_UI_CGIAssociationRole_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIAssociationRole_M_targetType(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Mdirection feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_directionPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIAssociationRole_m_direction_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIAssociationRole_m_direction_feature", "_UI_CGIAssociationRole_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIAssociationRole_M_direction(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Mangle Point1 feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_anglePoint1PropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIAssociationRole_m_anglePoint1_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIAssociationRole_m_anglePoint1_feature", "_UI_CGIAssociationRole_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIAssociationRole_M_anglePoint1(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Mangle Point2 feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_anglePoint2PropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIAssociationRole_m_anglePoint2_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIAssociationRole_m_anglePoint2_feature", "_UI_CGIAssociationRole_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIAssociationRole_M_anglePoint2(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Mline style feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_line_stylePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIAssociationRole_m_line_style_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIAssociationRole_m_line_style_feature", "_UI_CGIAssociationRole_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIAssociationRole_M_line_style(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the MSource Port feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_SourcePortPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIAssociationRole_m_SourcePort_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIAssociationRole_m_SourcePort_feature", "_UI_CGIAssociationRole_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIAssociationRole_M_SourcePort(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the MTarget Port feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_TargetPortPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIAssociationRole_m_TargetPort_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIAssociationRole_m_TargetPort_feature", "_UI_CGIAssociationRole_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIAssociationRole_M_TargetPort(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Marrow feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_arrowPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIAssociationRole_m_arrow_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIAssociationRole_m_arrow_feature", "_UI_CGIAssociationRole_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIAssociationRole_M_arrow(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This specifies how to implement {@link #getChildren} and is used to deduce an appropriate feature for an
+	 * {@link org.eclipse.emf.edit.command.AddCommand}, {@link org.eclipse.emf.edit.command.RemoveCommand} or
+	 * {@link org.eclipse.emf.edit.command.MoveCommand} in {@link #createCommand}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Collection<? extends EStructuralFeature> getChildrenFeatures(Object object) {
+		if (childrenFeatures == null) {
+			super.getChildrenFeatures(object);
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getCGIAssociationRole_M_rpn());
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getCGIAssociationRole_Properties());
+		}
+		return childrenFeatures;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EStructuralFeature getChildFeature(Object object, Object child) {
+		// Check the type of the specified child object and return the proper feature to use for
+		// adding (see {@link AddCommand}) it as a child.
+
+		return super.getChildFeature(object, child);
+	}
+
+	/**
+	 * This returns CGIAssociationRole.gif.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object getImage(Object object) {
+		return overlayImage(object, getResourceLocator().getImage("full/obj16/CGIAssociationRole")); //$NON-NLS-1$
+	}
+
+	/**
+	 * This returns the label text for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String getText(Object object) {
+		String label = ((CGIAssociationRole)object).getId();
+		return label == null || label.length() == 0 ?
+			getString("_UI_CGIAssociationRole_type") : //$NON-NLS-1$
+			getString("_UI_CGIAssociationRole_type") + " " + label; //$NON-NLS-1$ //$NON-NLS-2$
+	}
+	
+
+	/**
+	 * This handles model notifications by calling {@link #updateChildren} to update any cached
+	 * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void notifyChanged(Notification notification) {
+		updateChildren(notification);
+
+		switch (notification.getFeatureID(CGIAssociationRole.class)) {
+			case UMLRpyPackage.CGI_ASSOCIATION_ROLE__MPPARENT:
+			case UMLRpyPackage.CGI_ASSOCIATION_ROLE__MSOURCE_TYPE:
+			case UMLRpyPackage.CGI_ASSOCIATION_ROLE__MTARGET_TYPE:
+			case UMLRpyPackage.CGI_ASSOCIATION_ROLE__MDIRECTION:
+			case UMLRpyPackage.CGI_ASSOCIATION_ROLE__MANGLE_POINT1:
+			case UMLRpyPackage.CGI_ASSOCIATION_ROLE__MANGLE_POINT2:
+			case UMLRpyPackage.CGI_ASSOCIATION_ROLE__MLINE_STYLE:
+			case UMLRpyPackage.CGI_ASSOCIATION_ROLE__MSOURCE_PORT:
+			case UMLRpyPackage.CGI_ASSOCIATION_ROLE__MTARGET_PORT:
+			case UMLRpyPackage.CGI_ASSOCIATION_ROLE__MARROW:
+				fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), false, true));
+				return;
+			case UMLRpyPackage.CGI_ASSOCIATION_ROLE__MRPN:
+			case UMLRpyPackage.CGI_ASSOCIATION_ROLE__PROPERTIES:
+				fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), true, false));
+				return;
+		}
+		super.notifyChanged(notification);
+	}
+
+	/**
+	 * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children
+	 * that can be created under this object.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) {
+		super.collectNewChildDescriptors(newChildDescriptors, object);
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGIAssociationRole_M_rpn(),
+				 UMLRpyFactory.eINSTANCE.createCGIText()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGIAssociationRole_Properties(),
+				 UMLRpyFactory.eINSTANCE.createIPropertyContainer()));
+	}
+
+	/**
+	 * This returns the label text for {@link org.eclipse.emf.edit.command.CreateChildCommand}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String getCreateChildText(Object owner, Object feature, Object child, Collection<?> selection) {
+		Object childFeature = feature;
+		Object childObject = child;
+
+		boolean qualify =
+			childFeature == UMLRpyPackage.eINSTANCE.getGraphElementsType_M_name() ||
+			childFeature == UMLRpyPackage.eINSTANCE.getCGIAssociationRole_M_rpn();
+
+		if (qualify) {
+			return getString
+				("_UI_CreateChild_text2", //$NON-NLS-1$
+				 new Object[] { getTypeText(childObject), getFeatureText(childFeature), getTypeText(owner) });
+		}
+		return super.getCreateChildText(owner, feature, child, selection);
+	}
+
+}
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/CGIBasicClassItemProvider.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/CGIBasicClassItemProvider.java
new file mode 100755
index 0000000..5c67b76
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/CGIBasicClassItemProvider.java
@@ -0,0 +1,377 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.provider;
+
+
+import java.util.Collection;
+import java.util.List;
+
+import org.eclipse.emf.common.notify.AdapterFactory;
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.ecore.EStructuralFeature;
+
+import org.eclipse.emf.edit.provider.ComposeableAdapterFactory;
+import org.eclipse.emf.edit.provider.IItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.ItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.ViewerNotification;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIBasicClass;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyFactory;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIBasicClass} object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class CGIBasicClassItemProvider extends GraphElementsTypeItemProvider {
+	/**
+	 * This constructs an instance from a factory and a notifier.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public CGIBasicClassItemProvider(AdapterFactory adapterFactory) {
+		super(adapterFactory);
+	}
+
+	/**
+	 * This returns the property descriptors for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) {
+		if (itemPropertyDescriptors == null) {
+			super.getPropertyDescriptors(object);
+
+			addM_pModelObjectPropertyDescriptor(object);
+			addM_pParentPropertyDescriptor(object);
+			addM_transformPropertyDescriptor(object);
+			addM_polygonPropertyDescriptor(object);
+			addM_nNameFormatPropertyDescriptor(object);
+			addM_nIsNameFormatPropertyDescriptor(object);
+			addCompartmentsPropertyDescriptor(object);
+			addM_pImageViewDataPropertyDescriptor(object);
+		}
+		return itemPropertyDescriptors;
+	}
+
+	/**
+	 * This adds a property descriptor for the MpModel Object feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_pModelObjectPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIBasicClass_m_pModelObject_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIBasicClass_m_pModelObject_feature", "_UI_CGIBasicClass_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIBasicClass_M_pModelObject(),
+				 true,
+				 false,
+				 true,
+				 null,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the MpParent feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_pParentPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIBasicClass_m_pParent_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIBasicClass_m_pParent_feature", "_UI_CGIBasicClass_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIBasicClass_M_pParent(),
+				 true,
+				 false,
+				 true,
+				 null,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Mtransform feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_transformPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIBasicClass_m_transform_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIBasicClass_m_transform_feature", "_UI_CGIBasicClass_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIBasicClass_M_transform(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Mpolygon feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_polygonPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIBasicClass_m_polygon_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIBasicClass_m_polygon_feature", "_UI_CGIBasicClass_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIBasicClass_M_polygon(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the MnName Format feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_nNameFormatPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIBasicClass_m_nNameFormat_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIBasicClass_m_nNameFormat_feature", "_UI_CGIBasicClass_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIBasicClass_M_nNameFormat(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the MnIs Name Format feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_nIsNameFormatPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIBasicClass_m_nIsNameFormat_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIBasicClass_m_nIsNameFormat_feature", "_UI_CGIBasicClass_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIBasicClass_M_nIsNameFormat(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Compartments feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addCompartmentsPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIBasicClass_Compartments_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIBasicClass_Compartments_feature", "_UI_CGIBasicClass_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIBasicClass_Compartments(),
+				 true,
+				 false,
+				 true,
+				 null,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the MpImage View Data feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_pImageViewDataPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIBasicClass_m_pImageViewData_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIBasicClass_m_pImageViewData_feature", "_UI_CGIBasicClass_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIBasicClass_M_pImageViewData(),
+				 true,
+				 false,
+				 true,
+				 null,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This specifies how to implement {@link #getChildren} and is used to deduce an appropriate feature for an
+	 * {@link org.eclipse.emf.edit.command.AddCommand}, {@link org.eclipse.emf.edit.command.RemoveCommand} or
+	 * {@link org.eclipse.emf.edit.command.MoveCommand} in {@link #createCommand}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Collection<? extends EStructuralFeature> getChildrenFeatures(Object object) {
+		if (childrenFeatures == null) {
+			super.getChildrenFeatures(object);
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getCGIBasicClass_M_AdditionalLabel());
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getCGIBasicClass_Properties());
+		}
+		return childrenFeatures;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EStructuralFeature getChildFeature(Object object, Object child) {
+		// Check the type of the specified child object and return the proper feature to use for
+		// adding (see {@link AddCommand}) it as a child.
+
+		return super.getChildFeature(object, child);
+	}
+
+	/**
+	 * This returns CGIBasicClass.gif.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object getImage(Object object) {
+		return overlayImage(object, getResourceLocator().getImage("full/obj16/CGIBasicClass")); //$NON-NLS-1$
+	}
+
+	/**
+	 * This returns the label text for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String getText(Object object) {
+		String label = ((CGIBasicClass)object).getId();
+		return label == null || label.length() == 0 ?
+			getString("_UI_CGIBasicClass_type") : //$NON-NLS-1$
+			getString("_UI_CGIBasicClass_type") + " " + label; //$NON-NLS-1$ //$NON-NLS-2$
+	}
+	
+
+	/**
+	 * This handles model notifications by calling {@link #updateChildren} to update any cached
+	 * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void notifyChanged(Notification notification) {
+		updateChildren(notification);
+
+		switch (notification.getFeatureID(CGIBasicClass.class)) {
+			case UMLRpyPackage.CGI_BASIC_CLASS__MTRANSFORM:
+			case UMLRpyPackage.CGI_BASIC_CLASS__MPOLYGON:
+			case UMLRpyPackage.CGI_BASIC_CLASS__MNNAME_FORMAT:
+			case UMLRpyPackage.CGI_BASIC_CLASS__MNIS_NAME_FORMAT:
+				fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), false, true));
+				return;
+			case UMLRpyPackage.CGI_BASIC_CLASS__MADDITIONAL_LABEL:
+			case UMLRpyPackage.CGI_BASIC_CLASS__PROPERTIES:
+				fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), true, false));
+				return;
+		}
+		super.notifyChanged(notification);
+	}
+
+	/**
+	 * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children
+	 * that can be created under this object.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) {
+		super.collectNewChildDescriptors(newChildDescriptors, object);
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGIBasicClass_M_AdditionalLabel(),
+				 UMLRpyFactory.eINSTANCE.createCGIText()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGIBasicClass_Properties(),
+				 UMLRpyFactory.eINSTANCE.createIPropertyContainer()));
+	}
+
+	/**
+	 * This returns the label text for {@link org.eclipse.emf.edit.command.CreateChildCommand}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String getCreateChildText(Object owner, Object feature, Object child, Collection<?> selection) {
+		Object childFeature = feature;
+		Object childObject = child;
+
+		boolean qualify =
+			childFeature == UMLRpyPackage.eINSTANCE.getGraphElementsType_M_name() ||
+			childFeature == UMLRpyPackage.eINSTANCE.getCGIBasicClass_M_AdditionalLabel();
+
+		if (qualify) {
+			return getString
+				("_UI_CreateChild_text2", //$NON-NLS-1$
+				 new Object[] { getTypeText(childObject), getFeatureText(childFeature), getTypeText(owner) });
+		}
+		return super.getCreateChildText(owner, feature, child, selection);
+	}
+
+}
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/CGIBlockStateItemProvider.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/CGIBlockStateItemProvider.java
new file mode 100755
index 0000000..11762c8
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/CGIBlockStateItemProvider.java
@@ -0,0 +1,529 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.provider;
+
+
+import java.util.Collection;
+import java.util.List;
+
+import org.eclipse.emf.common.notify.AdapterFactory;
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.ecore.EStructuralFeature;
+
+import org.eclipse.emf.edit.provider.ComposeableAdapterFactory;
+import org.eclipse.emf.edit.provider.IItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.ItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.ViewerNotification;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIBlockState;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyFactory;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIBlockState} object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class CGIBlockStateItemProvider extends GraphElementsTypeItemProvider {
+	/**
+	 * This constructs an instance from a factory and a notifier.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public CGIBlockStateItemProvider(AdapterFactory adapterFactory) {
+		super(adapterFactory);
+	}
+
+	/**
+	 * This returns the property descriptors for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) {
+		if (itemPropertyDescriptors == null) {
+			super.getPropertyDescriptors(object);
+
+			addM_pModelObjectPropertyDescriptor(object);
+			addM_pParentPropertyDescriptor(object);
+			addM_transformPropertyDescriptor(object);
+			addM_polygonPropertyDescriptor(object);
+			addM_nNameFormatPropertyDescriptor(object);
+			addM_nIsNameFormatPropertyDescriptor(object);
+			addNAndLineCountPropertyDescriptor(object);
+			addM_pInheritsFromPropertyDescriptor(object);
+			addM_nInheritanceMaskPropertyDescriptor(object);
+			addM_pDefaultComponentRelationPropertyDescriptor(object);
+			addM_NameDisplayModePropertyDescriptor(object);
+			addM_ActDescLablDiaplayModePropertyDescriptor(object);
+			addM_moveAndLineTimeStampPropertyDescriptor(object);
+			addFramesetPropertyDescriptor(object);
+		}
+		return itemPropertyDescriptors;
+	}
+
+	/**
+	 * This adds a property descriptor for the MpModel Object feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_pModelObjectPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIBlockState_m_pModelObject_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIBlockState_m_pModelObject_feature", "_UI_CGIBlockState_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIBlockState_M_pModelObject(),
+				 true,
+				 false,
+				 true,
+				 null,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the MpParent feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_pParentPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIBlockState_m_pParent_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIBlockState_m_pParent_feature", "_UI_CGIBlockState_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIBlockState_M_pParent(),
+				 true,
+				 false,
+				 true,
+				 null,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Mtransform feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_transformPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIBlockState_m_transform_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIBlockState_m_transform_feature", "_UI_CGIBlockState_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIBlockState_M_transform(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Mpolygon feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_polygonPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIBlockState_m_polygon_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIBlockState_m_polygon_feature", "_UI_CGIBlockState_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIBlockState_M_polygon(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the MnName Format feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_nNameFormatPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIBlockState_m_nNameFormat_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIBlockState_m_nNameFormat_feature", "_UI_CGIBlockState_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIBlockState_M_nNameFormat(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the MnIs Name Format feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_nIsNameFormatPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIBlockState_m_nIsNameFormat_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIBlockState_m_nIsNameFormat_feature", "_UI_CGIBlockState_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIBlockState_M_nIsNameFormat(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the NAnd Line Count feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addNAndLineCountPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIBlockState_nAndLineCount_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIBlockState_nAndLineCount_feature", "_UI_CGIBlockState_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIBlockState_NAndLineCount(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the MpInherits From feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_pInheritsFromPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIBlockState_m_pInheritsFrom_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIBlockState_m_pInheritsFrom_feature", "_UI_CGIBlockState_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIBlockState_M_pInheritsFrom(),
+				 true,
+				 false,
+				 true,
+				 null,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the MnInheritance Mask feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_nInheritanceMaskPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIBlockState_m_nInheritanceMask_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIBlockState_m_nInheritanceMask_feature", "_UI_CGIBlockState_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIBlockState_M_nInheritanceMask(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the MpDefault Component Relation feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_pDefaultComponentRelationPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIBlockState_m_pDefaultComponentRelation_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIBlockState_m_pDefaultComponentRelation_feature", "_UI_CGIBlockState_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIBlockState_M_pDefaultComponentRelation(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the MName Display Mode feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_NameDisplayModePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIBlockState_m_NameDisplayMode_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIBlockState_m_NameDisplayMode_feature", "_UI_CGIBlockState_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIBlockState_M_NameDisplayMode(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the MAct Desc Labl Diaplay Mode feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_ActDescLablDiaplayModePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIBlockState_m_ActDescLablDiaplayMode_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIBlockState_m_ActDescLablDiaplayMode_feature", "_UI_CGIBlockState_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIBlockState_M_ActDescLablDiaplayMode(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Mmove And Line Time Stamp feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_moveAndLineTimeStampPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIBlockState_m_moveAndLineTimeStamp_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIBlockState_m_moveAndLineTimeStamp_feature", "_UI_CGIBlockState_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIBlockState_M_moveAndLineTimeStamp(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Frameset feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addFramesetPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIBlockState_frameset_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIBlockState_frameset_feature", "_UI_CGIBlockState_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIBlockState_Frameset(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This specifies how to implement {@link #getChildren} and is used to deduce an appropriate feature for an
+	 * {@link org.eclipse.emf.edit.command.AddCommand}, {@link org.eclipse.emf.edit.command.RemoveCommand} or
+	 * {@link org.eclipse.emf.edit.command.MoveCommand} in {@link #createCommand}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Collection<? extends EStructuralFeature> getChildrenFeatures(Object object) {
+		if (childrenFeatures == null) {
+			super.getChildrenFeatures(object);
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getCGIBlockState_Properties());
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getCGIBlockState_M_AdditionalLabel());
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getCGIBlockState_Compartments());
+		}
+		return childrenFeatures;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EStructuralFeature getChildFeature(Object object, Object child) {
+		// Check the type of the specified child object and return the proper feature to use for
+		// adding (see {@link AddCommand}) it as a child.
+
+		return super.getChildFeature(object, child);
+	}
+
+	/**
+	 * This returns CGIBlockState.gif.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object getImage(Object object) {
+		return overlayImage(object, getResourceLocator().getImage("full/obj16/CGIBlockState")); //$NON-NLS-1$
+	}
+
+	/**
+	 * This returns the label text for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String getText(Object object) {
+		String label = ((CGIBlockState)object).getId();
+		return label == null || label.length() == 0 ?
+			getString("_UI_CGIBlockState_type") : //$NON-NLS-1$
+			getString("_UI_CGIBlockState_type") + " " + label; //$NON-NLS-1$ //$NON-NLS-2$
+	}
+	
+
+	/**
+	 * This handles model notifications by calling {@link #updateChildren} to update any cached
+	 * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void notifyChanged(Notification notification) {
+		updateChildren(notification);
+
+		switch (notification.getFeatureID(CGIBlockState.class)) {
+			case UMLRpyPackage.CGI_BLOCK_STATE__MTRANSFORM:
+			case UMLRpyPackage.CGI_BLOCK_STATE__MPOLYGON:
+			case UMLRpyPackage.CGI_BLOCK_STATE__MNNAME_FORMAT:
+			case UMLRpyPackage.CGI_BLOCK_STATE__MNIS_NAME_FORMAT:
+			case UMLRpyPackage.CGI_BLOCK_STATE__NAND_LINE_COUNT:
+			case UMLRpyPackage.CGI_BLOCK_STATE__MNINHERITANCE_MASK:
+			case UMLRpyPackage.CGI_BLOCK_STATE__MPDEFAULT_COMPONENT_RELATION:
+			case UMLRpyPackage.CGI_BLOCK_STATE__MNAME_DISPLAY_MODE:
+			case UMLRpyPackage.CGI_BLOCK_STATE__MACT_DESC_LABL_DIAPLAY_MODE:
+			case UMLRpyPackage.CGI_BLOCK_STATE__MMOVE_AND_LINE_TIME_STAMP:
+			case UMLRpyPackage.CGI_BLOCK_STATE__FRAMESET:
+				fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), false, true));
+				return;
+			case UMLRpyPackage.CGI_BLOCK_STATE__PROPERTIES:
+			case UMLRpyPackage.CGI_BLOCK_STATE__MADDITIONAL_LABEL:
+			case UMLRpyPackage.CGI_BLOCK_STATE__COMPARTMENTS:
+				fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), true, false));
+				return;
+		}
+		super.notifyChanged(notification);
+	}
+
+	/**
+	 * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children
+	 * that can be created under this object.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) {
+		super.collectNewChildDescriptors(newChildDescriptors, object);
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGIBlockState_Properties(),
+				 UMLRpyFactory.eINSTANCE.createIPropertyContainer()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGIBlockState_M_AdditionalLabel(),
+				 UMLRpyFactory.eINSTANCE.createCGIText()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGIBlockState_Compartments(),
+				 UMLRpyFactory.eINSTANCE.createCGICompartment()));
+	}
+
+	/**
+	 * This returns the label text for {@link org.eclipse.emf.edit.command.CreateChildCommand}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String getCreateChildText(Object owner, Object feature, Object child, Collection<?> selection) {
+		Object childFeature = feature;
+		Object childObject = child;
+
+		boolean qualify =
+			childFeature == UMLRpyPackage.eINSTANCE.getGraphElementsType_M_name() ||
+			childFeature == UMLRpyPackage.eINSTANCE.getCGIBlockState_M_AdditionalLabel();
+
+		if (qualify) {
+			return getString
+				("_UI_CreateChild_text2", //$NON-NLS-1$
+				 new Object[] { getTypeText(childObject), getFeatureText(childFeature), getTypeText(owner) });
+		}
+		return super.getCreateChildText(owner, feature, child, selection);
+	}
+
+}
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/CGIBoxItemProvider.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/CGIBoxItemProvider.java
new file mode 100755
index 0000000..7240d63
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/CGIBoxItemProvider.java
@@ -0,0 +1,325 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.provider;
+
+
+import java.util.Collection;
+import java.util.List;
+
+import org.eclipse.emf.common.notify.AdapterFactory;
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.ecore.EStructuralFeature;
+
+import org.eclipse.emf.edit.provider.ComposeableAdapterFactory;
+import org.eclipse.emf.edit.provider.IItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.ItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.ViewerNotification;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIBox;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyFactory;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIBox} object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class CGIBoxItemProvider extends GraphElementsTypeItemProvider {
+	/**
+	 * This constructs an instance from a factory and a notifier.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public CGIBoxItemProvider(AdapterFactory adapterFactory) {
+		super(adapterFactory);
+	}
+
+	/**
+	 * This returns the property descriptors for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) {
+		if (itemPropertyDescriptors == null) {
+			super.getPropertyDescriptors(object);
+
+			addM_pModelObjectPropertyDescriptor(object);
+			addM_polygonPropertyDescriptor(object);
+			addM_nNameFormatPropertyDescriptor(object);
+			addM_nIsNameFormatPropertyDescriptor(object);
+			addCompartmentsPropertyDescriptor(object);
+			addM_pParentPropertyDescriptor(object);
+			addM_transformPropertyDescriptor(object);
+		}
+		return itemPropertyDescriptors;
+	}
+
+	/**
+	 * This adds a property descriptor for the MpModel Object feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_pModelObjectPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIBox_m_pModelObject_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIBox_m_pModelObject_feature", "_UI_CGIBox_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIBox_M_pModelObject(),
+				 true,
+				 false,
+				 true,
+				 null,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Mpolygon feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_polygonPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIBox_m_polygon_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIBox_m_polygon_feature", "_UI_CGIBox_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIBox_M_polygon(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the MnName Format feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_nNameFormatPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIBox_m_nNameFormat_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIBox_m_nNameFormat_feature", "_UI_CGIBox_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIBox_M_nNameFormat(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the MnIs Name Format feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_nIsNameFormatPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIBox_m_nIsNameFormat_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIBox_m_nIsNameFormat_feature", "_UI_CGIBox_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIBox_M_nIsNameFormat(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Compartments feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addCompartmentsPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIBox_Compartments_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIBox_Compartments_feature", "_UI_CGIBox_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIBox_Compartments(),
+				 true,
+				 false,
+				 true,
+				 null,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the MpParent feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_pParentPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIBox_m_pParent_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIBox_m_pParent_feature", "_UI_CGIBox_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIBox_M_pParent(),
+				 true,
+				 false,
+				 false,
+				 null,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Mtransform feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_transformPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIBox_m_transform_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIBox_m_transform_feature", "_UI_CGIBox_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIBox_M_transform(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This specifies how to implement {@link #getChildren} and is used to deduce an appropriate feature for an
+	 * {@link org.eclipse.emf.edit.command.AddCommand}, {@link org.eclipse.emf.edit.command.RemoveCommand} or
+	 * {@link org.eclipse.emf.edit.command.MoveCommand} in {@link #createCommand}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Collection<? extends EStructuralFeature> getChildrenFeatures(Object object) {
+		if (childrenFeatures == null) {
+			super.getChildrenFeatures(object);
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getCGIBox_Properties());
+		}
+		return childrenFeatures;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EStructuralFeature getChildFeature(Object object, Object child) {
+		// Check the type of the specified child object and return the proper feature to use for
+		// adding (see {@link AddCommand}) it as a child.
+
+		return super.getChildFeature(object, child);
+	}
+
+	/**
+	 * This returns CGIBox.gif.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object getImage(Object object) {
+		return overlayImage(object, getResourceLocator().getImage("full/obj16/CGIBox")); //$NON-NLS-1$
+	}
+
+	/**
+	 * This returns the label text for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String getText(Object object) {
+		String label = ((CGIBox)object).getId();
+		return label == null || label.length() == 0 ?
+			getString("_UI_CGIBox_type") : //$NON-NLS-1$
+			getString("_UI_CGIBox_type") + " " + label; //$NON-NLS-1$ //$NON-NLS-2$
+	}
+	
+
+	/**
+	 * This handles model notifications by calling {@link #updateChildren} to update any cached
+	 * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void notifyChanged(Notification notification) {
+		updateChildren(notification);
+
+		switch (notification.getFeatureID(CGIBox.class)) {
+			case UMLRpyPackage.CGI_BOX__MPOLYGON:
+			case UMLRpyPackage.CGI_BOX__MNNAME_FORMAT:
+			case UMLRpyPackage.CGI_BOX__MNIS_NAME_FORMAT:
+			case UMLRpyPackage.CGI_BOX__MPPARENT:
+			case UMLRpyPackage.CGI_BOX__MTRANSFORM:
+				fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), false, true));
+				return;
+			case UMLRpyPackage.CGI_BOX__PROPERTIES:
+				fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), true, false));
+				return;
+		}
+		super.notifyChanged(notification);
+	}
+
+	/**
+	 * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children
+	 * that can be created under this object.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) {
+		super.collectNewChildDescriptors(newChildDescriptors, object);
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGIBox_Properties(),
+				 UMLRpyFactory.eINSTANCE.createIPropertyContainer()));
+	}
+
+}
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/CGIButtonArrayItemProvider.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/CGIButtonArrayItemProvider.java
new file mode 100755
index 0000000..3d0c3c6
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/CGIButtonArrayItemProvider.java
@@ -0,0 +1,670 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.provider;
+
+
+import java.util.Collection;
+import java.util.List;
+
+import org.eclipse.emf.common.notify.AdapterFactory;
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.ecore.EStructuralFeature;
+
+import org.eclipse.emf.edit.provider.ComposeableAdapterFactory;
+import org.eclipse.emf.edit.provider.IItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.ItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.ViewerNotification;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIButtonArray;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyFactory;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIButtonArray} object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class CGIButtonArrayItemProvider extends GraphElementsTypeItemProvider {
+	/**
+	 * This constructs an instance from a factory and a notifier.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public CGIButtonArrayItemProvider(AdapterFactory adapterFactory) {
+		super(adapterFactory);
+	}
+
+	/**
+	 * This returns the property descriptors for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) {
+		if (itemPropertyDescriptors == null) {
+			super.getPropertyDescriptors(object);
+
+			addM_pModelObjectPropertyDescriptor(object);
+			addM_pParentPropertyDescriptor(object);
+			addM_transformPropertyDescriptor(object);
+			addM_polygonPropertyDescriptor(object);
+			addM_nNameFormatPropertyDescriptor(object);
+			addM_nIsNameFormatPropertyDescriptor(object);
+			addFramesetPropertyDescriptor(object);
+			addM_csModelObjPathPropertyDescriptor(object);
+			addM_csNamePropertyDescriptor(object);
+			addM_liButtonNamesPropertyDescriptor(object);
+			addM_liButtonValuesPropertyDescriptor(object);
+		}
+		return itemPropertyDescriptors;
+	}
+
+	/**
+	 * This adds a property descriptor for the MpModel Object feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_pModelObjectPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIButtonArray_m_pModelObject_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIButtonArray_m_pModelObject_feature", "_UI_CGIButtonArray_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIButtonArray_M_pModelObject(),
+				 true,
+				 false,
+				 true,
+				 null,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the MpParent feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_pParentPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIButtonArray_m_pParent_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIButtonArray_m_pParent_feature", "_UI_CGIButtonArray_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIButtonArray_M_pParent(),
+				 true,
+				 false,
+				 true,
+				 null,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Mtransform feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_transformPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIButtonArray_m_transform_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIButtonArray_m_transform_feature", "_UI_CGIButtonArray_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIButtonArray_M_transform(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Mpolygon feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_polygonPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIButtonArray_m_polygon_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIButtonArray_m_polygon_feature", "_UI_CGIButtonArray_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIButtonArray_M_polygon(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the MnName Format feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_nNameFormatPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIButtonArray_m_nNameFormat_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIButtonArray_m_nNameFormat_feature", "_UI_CGIButtonArray_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIButtonArray_M_nNameFormat(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the MnIs Name Format feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_nIsNameFormatPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIButtonArray_m_nIsNameFormat_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIButtonArray_m_nIsNameFormat_feature", "_UI_CGIButtonArray_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIButtonArray_M_nIsNameFormat(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Frameset feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addFramesetPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIButtonArray_frameset_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIButtonArray_frameset_feature", "_UI_CGIButtonArray_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIButtonArray_Frameset(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Mcs Model Obj Path feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_csModelObjPathPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIButtonArray_m_csModelObjPath_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIButtonArray_m_csModelObjPath_feature", "_UI_CGIButtonArray_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIButtonArray_M_csModelObjPath(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Mcs Name feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_csNamePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIButtonArray_m_csName_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIButtonArray_m_csName_feature", "_UI_CGIButtonArray_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIButtonArray_M_csName(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Mli Button Names feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_liButtonNamesPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIButtonArray_m_liButtonNames_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIButtonArray_m_liButtonNames_feature", "_UI_CGIButtonArray_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIButtonArray_M_liButtonNames(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Mli Button Values feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_liButtonValuesPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIButtonArray_m_liButtonValues_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIButtonArray_m_liButtonValues_feature", "_UI_CGIButtonArray_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIButtonArray_M_liButtonValues(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This specifies how to implement {@link #getChildren} and is used to deduce an appropriate feature for an
+	 * {@link org.eclipse.emf.edit.command.AddCommand}, {@link org.eclipse.emf.edit.command.RemoveCommand} or
+	 * {@link org.eclipse.emf.edit.command.MoveCommand} in {@link #createCommand}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Collection<? extends EStructuralFeature> getChildrenFeatures(Object object) {
+		if (childrenFeatures == null) {
+			super.getChildrenFeatures(object);
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getCGIButtonArray_Properties());
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getCGIButtonArray_Compartments());
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getCGIButtonArray_M_PartsArray());
+		}
+		return childrenFeatures;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EStructuralFeature getChildFeature(Object object, Object child) {
+		// Check the type of the specified child object and return the proper feature to use for
+		// adding (see {@link AddCommand}) it as a child.
+
+		return super.getChildFeature(object, child);
+	}
+
+	/**
+	 * This returns CGIButtonArray.gif.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object getImage(Object object) {
+		return overlayImage(object, getResourceLocator().getImage("full/obj16/CGIButtonArray")); //$NON-NLS-1$
+	}
+
+	/**
+	 * This returns the label text for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String getText(Object object) {
+		String label = ((CGIButtonArray)object).getId();
+		return label == null || label.length() == 0 ?
+			getString("_UI_CGIButtonArray_type") : //$NON-NLS-1$
+			getString("_UI_CGIButtonArray_type") + " " + label; //$NON-NLS-1$ //$NON-NLS-2$
+	}
+	
+
+	/**
+	 * This handles model notifications by calling {@link #updateChildren} to update any cached
+	 * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void notifyChanged(Notification notification) {
+		updateChildren(notification);
+
+		switch (notification.getFeatureID(CGIButtonArray.class)) {
+			case UMLRpyPackage.CGI_BUTTON_ARRAY__MTRANSFORM:
+			case UMLRpyPackage.CGI_BUTTON_ARRAY__MPOLYGON:
+			case UMLRpyPackage.CGI_BUTTON_ARRAY__MNNAME_FORMAT:
+			case UMLRpyPackage.CGI_BUTTON_ARRAY__MNIS_NAME_FORMAT:
+			case UMLRpyPackage.CGI_BUTTON_ARRAY__FRAMESET:
+			case UMLRpyPackage.CGI_BUTTON_ARRAY__MCS_MODEL_OBJ_PATH:
+			case UMLRpyPackage.CGI_BUTTON_ARRAY__MCS_NAME:
+			case UMLRpyPackage.CGI_BUTTON_ARRAY__MLI_BUTTON_NAMES:
+			case UMLRpyPackage.CGI_BUTTON_ARRAY__MLI_BUTTON_VALUES:
+				fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), false, true));
+				return;
+			case UMLRpyPackage.CGI_BUTTON_ARRAY__PROPERTIES:
+			case UMLRpyPackage.CGI_BUTTON_ARRAY__COMPARTMENTS:
+			case UMLRpyPackage.CGI_BUTTON_ARRAY__MPARTS_ARRAY:
+				fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), true, false));
+				return;
+		}
+		super.notifyChanged(notification);
+	}
+
+	/**
+	 * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children
+	 * that can be created under this object.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) {
+		super.collectNewChildDescriptors(newChildDescriptors, object);
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGIButtonArray_Properties(),
+				 UMLRpyFactory.eINSTANCE.createIPropertyContainer()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGIButtonArray_Compartments(),
+				 UMLRpyFactory.eINSTANCE.createCGICompartment()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGIButtonArray_M_PartsArray(),
+				 UMLRpyFactory.eINSTANCE.createIState()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGIButtonArray_M_PartsArray(),
+				 UMLRpyFactory.eINSTANCE.createIAcceptEventAction()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGIButtonArray_M_PartsArray(),
+				 UMLRpyFactory.eINSTANCE.createIAcceptTimeEvent()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGIButtonArray_M_PartsArray(),
+				 UMLRpyFactory.eINSTANCE.createIActivityDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGIButtonArray_M_PartsArray(),
+				 UMLRpyFactory.eINSTANCE.createIActivityGraph()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGIButtonArray_M_PartsArray(),
+				 UMLRpyFactory.eINSTANCE.createIActor()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGIButtonArray_M_PartsArray(),
+				 UMLRpyFactory.eINSTANCE.createIClass()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGIButtonArray_M_PartsArray(),
+				 UMLRpyFactory.eINSTANCE.createIAssociationClass()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGIButtonArray_M_PartsArray(),
+				 UMLRpyFactory.eINSTANCE.createIAttribute()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGIButtonArray_M_PartsArray(),
+				 UMLRpyFactory.eINSTANCE.createICallOperation()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGIButtonArray_M_PartsArray(),
+				 UMLRpyFactory.eINSTANCE.createICodeGenConfigInfo()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGIButtonArray_M_PartsArray(),
+				 UMLRpyFactory.eINSTANCE.createIDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGIButtonArray_M_PartsArray(),
+				 UMLRpyFactory.eINSTANCE.createICollaborationDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGIButtonArray_M_PartsArray(),
+				 UMLRpyFactory.eINSTANCE.createIComponent()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGIButtonArray_M_PartsArray(),
+				 UMLRpyFactory.eINSTANCE.createIComponentDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGIButtonArray_M_PartsArray(),
+				 UMLRpyFactory.eINSTANCE.createIDefaultDrvdTrans()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGIButtonArray_M_PartsArray(),
+				 UMLRpyFactory.eINSTANCE.createIDependency()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGIButtonArray_M_PartsArray(),
+				 UMLRpyFactory.eINSTANCE.createIDeploymentDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGIButtonArray_M_PartsArray(),
+				 UMLRpyFactory.eINSTANCE.createIHyperLink()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGIButtonArray_M_PartsArray(),
+				 UMLRpyFactory.eINSTANCE.createIInformationFlow()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGIButtonArray_M_PartsArray(),
+				 UMLRpyFactory.eINSTANCE.createIInformationItem()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGIButtonArray_M_PartsArray(),
+				 UMLRpyFactory.eINSTANCE.createIMSC()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGIButtonArray_M_PartsArray(),
+				 UMLRpyFactory.eINSTANCE.createIMatrixInstance()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGIButtonArray_M_PartsArray(),
+				 UMLRpyFactory.eINSTANCE.createIMessage()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGIButtonArray_M_PartsArray(),
+				 UMLRpyFactory.eINSTANCE.createIModule()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGIButtonArray_M_PartsArray(),
+				 UMLRpyFactory.eINSTANCE.createIObjectLink()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGIButtonArray_M_PartsArray(),
+				 UMLRpyFactory.eINSTANCE.createIObjectModelDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGIButtonArray_M_PartsArray(),
+				 UMLRpyFactory.eINSTANCE.createIObjectNode()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGIButtonArray_M_PartsArray(),
+				 UMLRpyFactory.eINSTANCE.createIPanelDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGIButtonArray_M_PartsArray(),
+				 UMLRpyFactory.eINSTANCE.createIPart()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGIButtonArray_M_PartsArray(),
+				 UMLRpyFactory.eINSTANCE.createIPrimitiveOperation()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGIButtonArray_M_PartsArray(),
+				 UMLRpyFactory.eINSTANCE.createIProfile()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGIButtonArray_M_PartsArray(),
+				 UMLRpyFactory.eINSTANCE.createIReception()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGIButtonArray_M_PartsArray(),
+				 UMLRpyFactory.eINSTANCE.createIReferenceActivity()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGIButtonArray_M_PartsArray(),
+				 UMLRpyFactory.eINSTANCE.createIRequirement()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGIButtonArray_M_PartsArray(),
+				 UMLRpyFactory.eINSTANCE.createISequenceDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGIButtonArray_M_PartsArray(),
+				 UMLRpyFactory.eINSTANCE.createIStateChart()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGIButtonArray_M_PartsArray(),
+				 UMLRpyFactory.eINSTANCE.createIStateChartDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGIButtonArray_M_PartsArray(),
+				 UMLRpyFactory.eINSTANCE.createIStereotype()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGIButtonArray_M_PartsArray(),
+				 UMLRpyFactory.eINSTANCE.createIStructureDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGIButtonArray_M_PartsArray(),
+				 UMLRpyFactory.eINSTANCE.createISubsystem()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGIButtonArray_M_PartsArray(),
+				 UMLRpyFactory.eINSTANCE.createISysMLPort()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGIButtonArray_M_PartsArray(),
+				 UMLRpyFactory.eINSTANCE.createITableInstance()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGIButtonArray_M_PartsArray(),
+				 UMLRpyFactory.eINSTANCE.createITransition()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGIButtonArray_M_PartsArray(),
+				 UMLRpyFactory.eINSTANCE.createIType()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGIButtonArray_M_PartsArray(),
+				 UMLRpyFactory.eINSTANCE.createIUCDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGIButtonArray_M_PartsArray(),
+				 UMLRpyFactory.eINSTANCE.createIUseCase()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGIButtonArray_M_PartsArray(),
+				 UMLRpyFactory.eINSTANCE.createIUseCaseDiagram()));
+	}
+
+}
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/CGIClassChartItemProvider.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/CGIClassChartItemProvider.java
new file mode 100755
index 0000000..7abbd68
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/CGIClassChartItemProvider.java
@@ -0,0 +1,157 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.provider;
+
+
+import java.util.Collection;
+import java.util.List;
+
+import org.eclipse.emf.common.notify.AdapterFactory;
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.edit.provider.ComposeableAdapterFactory;
+import org.eclipse.emf.edit.provider.IItemPropertyDescriptor;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIClassChart;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIClassChart} object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class CGIClassChartItemProvider extends GraphicChartTypeItemProvider {
+	/**
+	 * This constructs an instance from a factory and a notifier.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public CGIClassChartItemProvider(AdapterFactory adapterFactory) {
+		super(adapterFactory);
+	}
+
+	/**
+	 * This returns the property descriptors for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) {
+		if (itemPropertyDescriptors == null) {
+			super.getPropertyDescriptors(object);
+
+			addM_pModelObjectPropertyDescriptor(object);
+			addM_pRootPropertyDescriptor(object);
+		}
+		return itemPropertyDescriptors;
+	}
+
+	/**
+	 * This adds a property descriptor for the MpModel Object feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_pModelObjectPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIClassChart_m_pModelObject_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIClassChart_m_pModelObject_feature", "_UI_CGIClassChart_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIClassChart_M_pModelObject(),
+				 true,
+				 false,
+				 true,
+				 null,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the MpRoot feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_pRootPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIClassChart_m_pRoot_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIClassChart_m_pRoot_feature", "_UI_CGIClassChart_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIClassChart_M_pRoot(),
+				 true,
+				 false,
+				 true,
+				 null,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This returns CGIClassChart.gif.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object getImage(Object object) {
+		return overlayImage(object, getResourceLocator().getImage("full/obj16/CGIClassChart")); //$NON-NLS-1$
+	}
+
+	/**
+	 * This returns the label text for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String getText(Object object) {
+		String label = ((CGIClassChart)object).getId();
+		return label == null || label.length() == 0 ?
+			getString("_UI_CGIClassChart_type") : //$NON-NLS-1$
+			getString("_UI_CGIClassChart_type") + " " + label; //$NON-NLS-1$ //$NON-NLS-2$
+	}
+	
+
+	/**
+	 * This handles model notifications by calling {@link #updateChildren} to update any cached
+	 * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void notifyChanged(Notification notification) {
+		updateChildren(notification);
+		super.notifyChanged(notification);
+	}
+
+	/**
+	 * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children
+	 * that can be created under this object.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) {
+		super.collectNewChildDescriptors(newChildDescriptors, object);
+	}
+
+}
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/CGIClassItemProvider.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/CGIClassItemProvider.java
new file mode 100755
index 0000000..253a8fa
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/CGIClassItemProvider.java
@@ -0,0 +1,768 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.provider;
+
+
+import java.util.Collection;
+import java.util.List;
+
+import org.eclipse.emf.common.notify.AdapterFactory;
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.ecore.EStructuralFeature;
+
+import org.eclipse.emf.edit.provider.ComposeableAdapterFactory;
+import org.eclipse.emf.edit.provider.IItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.ItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.ViewerNotification;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIClass;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyFactory;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIClass} object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class CGIClassItemProvider extends GraphElementsTypeItemProvider {
+	/**
+	 * This constructs an instance from a factory and a notifier.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public CGIClassItemProvider(AdapterFactory adapterFactory) {
+		super(adapterFactory);
+	}
+
+	/**
+	 * This returns the property descriptors for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) {
+		if (itemPropertyDescriptors == null) {
+			super.getPropertyDescriptors(object);
+
+			addM_pModelObjectPropertyDescriptor(object);
+			addM_polygonPropertyDescriptor(object);
+			addM_nNameFormatPropertyDescriptor(object);
+			addM_nIsNameFormatPropertyDescriptor(object);
+			addM_pParentPropertyDescriptor(object);
+			addM_transformPropertyDescriptor(object);
+			addFramesetPropertyDescriptor(object);
+			addM_lineWidthPropertyDescriptor(object);
+			addM_dSeparatorPositionPropertyDescriptor(object);
+			addM_bIsMisplacedPropertyDescriptor(object);
+			addM_pImageViewDataPropertyDescriptor(object);
+			addM_bFramesetModifiedPropertyDescriptor(object);
+		}
+		return itemPropertyDescriptors;
+	}
+
+	/**
+	 * This adds a property descriptor for the MpModel Object feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_pModelObjectPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIClass_m_pModelObject_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIClass_m_pModelObject_feature", "_UI_CGIClass_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIClass_M_pModelObject(),
+				 true,
+				 false,
+				 true,
+				 null,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Mpolygon feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_polygonPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIClass_m_polygon_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIClass_m_polygon_feature", "_UI_CGIClass_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIClass_M_polygon(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the MnName Format feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_nNameFormatPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIClass_m_nNameFormat_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIClass_m_nNameFormat_feature", "_UI_CGIClass_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIClass_M_nNameFormat(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the MnIs Name Format feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_nIsNameFormatPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIClass_m_nIsNameFormat_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIClass_m_nIsNameFormat_feature", "_UI_CGIClass_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIClass_M_nIsNameFormat(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the MpParent feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_pParentPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIClass_m_pParent_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIClass_m_pParent_feature", "_UI_CGIClass_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIClass_M_pParent(),
+				 true,
+				 false,
+				 false,
+				 null,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Mtransform feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_transformPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIClass_m_transform_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIClass_m_transform_feature", "_UI_CGIClass_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIClass_M_transform(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Frameset feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addFramesetPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIClass_frameset_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIClass_frameset_feature", "_UI_CGIClass_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIClass_Frameset(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Mline Width feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_lineWidthPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIClass_m_lineWidth_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIClass_m_lineWidth_feature", "_UI_CGIClass_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIClass_M_lineWidth(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the MdSeparator Position feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_dSeparatorPositionPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIClass_m_dSeparatorPosition_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIClass_m_dSeparatorPosition_feature", "_UI_CGIClass_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIClass_M_dSeparatorPosition(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the MbIs Misplaced feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_bIsMisplacedPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIClass_m_bIsMisplaced_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIClass_m_bIsMisplaced_feature", "_UI_CGIClass_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIClass_M_bIsMisplaced(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the MpImage View Data feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_pImageViewDataPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIClass_m_pImageViewData_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIClass_m_pImageViewData_feature", "_UI_CGIClass_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIClass_M_pImageViewData(),
+				 true,
+				 false,
+				 true,
+				 null,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the MbFrameset Modified feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_bFramesetModifiedPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIClass_m_bFramesetModified_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIClass_m_bFramesetModified_feature", "_UI_CGIClass_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIClass_M_bFramesetModified(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This specifies how to implement {@link #getChildren} and is used to deduce an appropriate feature for an
+	 * {@link org.eclipse.emf.edit.command.AddCommand}, {@link org.eclipse.emf.edit.command.RemoveCommand} or
+	 * {@link org.eclipse.emf.edit.command.MoveCommand} in {@link #createCommand}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Collection<? extends EStructuralFeature> getChildrenFeatures(Object object) {
+		if (childrenFeatures == null) {
+			super.getChildrenFeatures(object);
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getCGIClass_M_AdditionalLabel());
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getCGIClass_Compartments());
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getCGIClass_Properties());
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getCGIClass_Attrs());
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getCGIClass_Operations());
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getCGIClass_M_color());
+		}
+		return childrenFeatures;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EStructuralFeature getChildFeature(Object object, Object child) {
+		// Check the type of the specified child object and return the proper feature to use for
+		// adding (see {@link AddCommand}) it as a child.
+
+		return super.getChildFeature(object, child);
+	}
+
+	/**
+	 * This returns CGIClass.gif.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object getImage(Object object) {
+		return overlayImage(object, getResourceLocator().getImage("full/obj16/CGIClass")); //$NON-NLS-1$
+	}
+
+	/**
+	 * This returns the label text for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String getText(Object object) {
+		String label = ((CGIClass)object).getId();
+		return label == null || label.length() == 0 ?
+			getString("_UI_CGIClass_type") : //$NON-NLS-1$
+			getString("_UI_CGIClass_type") + " " + label; //$NON-NLS-1$ //$NON-NLS-2$
+	}
+	
+
+	/**
+	 * This handles model notifications by calling {@link #updateChildren} to update any cached
+	 * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void notifyChanged(Notification notification) {
+		updateChildren(notification);
+
+		switch (notification.getFeatureID(CGIClass.class)) {
+			case UMLRpyPackage.CGI_CLASS__MPOLYGON:
+			case UMLRpyPackage.CGI_CLASS__MNNAME_FORMAT:
+			case UMLRpyPackage.CGI_CLASS__MNIS_NAME_FORMAT:
+			case UMLRpyPackage.CGI_CLASS__MPPARENT:
+			case UMLRpyPackage.CGI_CLASS__MTRANSFORM:
+			case UMLRpyPackage.CGI_CLASS__FRAMESET:
+			case UMLRpyPackage.CGI_CLASS__MLINE_WIDTH:
+			case UMLRpyPackage.CGI_CLASS__MDSEPARATOR_POSITION:
+			case UMLRpyPackage.CGI_CLASS__MBIS_MISPLACED:
+			case UMLRpyPackage.CGI_CLASS__MBFRAMESET_MODIFIED:
+				fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), false, true));
+				return;
+			case UMLRpyPackage.CGI_CLASS__MADDITIONAL_LABEL:
+			case UMLRpyPackage.CGI_CLASS__COMPARTMENTS:
+			case UMLRpyPackage.CGI_CLASS__PROPERTIES:
+			case UMLRpyPackage.CGI_CLASS__ATTRS:
+			case UMLRpyPackage.CGI_CLASS__OPERATIONS:
+			case UMLRpyPackage.CGI_CLASS__MCOLOR:
+				fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), true, false));
+				return;
+		}
+		super.notifyChanged(notification);
+	}
+
+	/**
+	 * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children
+	 * that can be created under this object.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) {
+		super.collectNewChildDescriptors(newChildDescriptors, object);
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGIClass_M_AdditionalLabel(),
+				 UMLRpyFactory.eINSTANCE.createCGIText()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGIClass_Compartments(),
+				 UMLRpyFactory.eINSTANCE.createCGICompartment()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGIClass_Properties(),
+				 UMLRpyFactory.eINSTANCE.createIPropertyContainer()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGIClass_Attrs(),
+				 UMLRpyFactory.eINSTANCE.createIUnit()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGIClass_Attrs(),
+				 UMLRpyFactory.eINSTANCE.createIClassifier()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGIClass_Attrs(),
+				 UMLRpyFactory.eINSTANCE.createIActor()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGIClass_Attrs(),
+				 UMLRpyFactory.eINSTANCE.createIAnnotation()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGIClass_Attrs(),
+				 UMLRpyFactory.eINSTANCE.createIVariable()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGIClass_Attrs(),
+				 UMLRpyFactory.eINSTANCE.createIArgument()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGIClass_Attrs(),
+				 UMLRpyFactory.eINSTANCE.createIClass()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGIClass_Attrs(),
+				 UMLRpyFactory.eINSTANCE.createIAssociationClass()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGIClass_Attrs(),
+				 UMLRpyFactory.eINSTANCE.createIAttribute()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGIClass_Attrs(),
+				 UMLRpyFactory.eINSTANCE.createIDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGIClass_Attrs(),
+				 UMLRpyFactory.eINSTANCE.createICollaborationDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGIClass_Attrs(),
+				 UMLRpyFactory.eINSTANCE.createIComment()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGIClass_Attrs(),
+				 UMLRpyFactory.eINSTANCE.createIComponent()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGIClass_Attrs(),
+				 UMLRpyFactory.eINSTANCE.createIComponentDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGIClass_Attrs(),
+				 UMLRpyFactory.eINSTANCE.createIConstraint()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGIClass_Attrs(),
+				 UMLRpyFactory.eINSTANCE.createIControlledFile()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGIClass_Attrs(),
+				 UMLRpyFactory.eINSTANCE.createIDeploymentDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGIClass_Attrs(),
+				 UMLRpyFactory.eINSTANCE.createIInterfaceItem()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGIClass_Attrs(),
+				 UMLRpyFactory.eINSTANCE.createIEvent()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGIClass_Attrs(),
+				 UMLRpyFactory.eINSTANCE.createIEventReception()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGIClass_Attrs(),
+				 UMLRpyFactory.eINSTANCE.createIFile()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGIClass_Attrs(),
+				 UMLRpyFactory.eINSTANCE.createIFlowItem()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGIClass_Attrs(),
+				 UMLRpyFactory.eINSTANCE.createIRelation()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGIClass_Attrs(),
+				 UMLRpyFactory.eINSTANCE.createIInstance()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGIClass_Attrs(),
+				 UMLRpyFactory.eINSTANCE.createILink()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGIClass_Attrs(),
+				 UMLRpyFactory.eINSTANCE.createIMatrixLayout()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGIClass_Attrs(),
+				 UMLRpyFactory.eINSTANCE.createIMatrixView()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGIClass_Attrs(),
+				 UMLRpyFactory.eINSTANCE.createIModule()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGIClass_Attrs(),
+				 UMLRpyFactory.eINSTANCE.createINode()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGIClass_Attrs(),
+				 UMLRpyFactory.eINSTANCE.createIObjectModelDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGIClass_Attrs(),
+				 UMLRpyFactory.eINSTANCE.createIOperation()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGIClass_Attrs(),
+				 UMLRpyFactory.eINSTANCE.createIPackage()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGIClass_Attrs(),
+				 UMLRpyFactory.eINSTANCE.createIPanelDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGIClass_Attrs(),
+				 UMLRpyFactory.eINSTANCE.createIPort()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGIClass_Attrs(),
+				 UMLRpyFactory.eINSTANCE.createIProfile()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGIClass_Attrs(),
+				 UMLRpyFactory.eINSTANCE.createIProject()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGIClass_Attrs(),
+				 UMLRpyFactory.eINSTANCE.createIRequirement()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGIClass_Attrs(),
+				 UMLRpyFactory.eINSTANCE.createISequenceDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGIClass_Attrs(),
+				 UMLRpyFactory.eINSTANCE.createIStateChart()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGIClass_Attrs(),
+				 UMLRpyFactory.eINSTANCE.createIStateChartDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGIClass_Attrs(),
+				 UMLRpyFactory.eINSTANCE.createIStereotype()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGIClass_Attrs(),
+				 UMLRpyFactory.eINSTANCE.createIStructureDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGIClass_Attrs(),
+				 UMLRpyFactory.eINSTANCE.createISysMLPort()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGIClass_Attrs(),
+				 UMLRpyFactory.eINSTANCE.createITableLayout()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGIClass_Attrs(),
+				 UMLRpyFactory.eINSTANCE.createITableView()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGIClass_Attrs(),
+				 UMLRpyFactory.eINSTANCE.createITag()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGIClass_Attrs(),
+				 UMLRpyFactory.eINSTANCE.createITemplateParameter()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGIClass_Attrs(),
+				 UMLRpyFactory.eINSTANCE.createIType()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGIClass_Attrs(),
+				 UMLRpyFactory.eINSTANCE.createIUseCase()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGIClass_Attrs(),
+				 UMLRpyFactory.eINSTANCE.createIUseCaseDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGIClass_Operations(),
+				 UMLRpyFactory.eINSTANCE.createIConstructor()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGIClass_Operations(),
+				 UMLRpyFactory.eINSTANCE.createIDestructor()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGIClass_Operations(),
+				 UMLRpyFactory.eINSTANCE.createIPrimitiveOperation()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGIClass_Operations(),
+				 UMLRpyFactory.eINSTANCE.createIReception()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGIClass_Operations(),
+				 UMLRpyFactory.eINSTANCE.createITriggered()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGIClass_M_color(),
+				 UMLRpyFactory.eINSTANCE.createIColor()));
+	}
+
+	/**
+	 * This returns the label text for {@link org.eclipse.emf.edit.command.CreateChildCommand}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String getCreateChildText(Object owner, Object feature, Object child, Collection<?> selection) {
+		Object childFeature = feature;
+		Object childObject = child;
+
+		boolean qualify =
+			childFeature == UMLRpyPackage.eINSTANCE.getGraphElementsType_M_name() ||
+			childFeature == UMLRpyPackage.eINSTANCE.getCGIClass_M_AdditionalLabel();
+
+		if (qualify) {
+			return getString
+				("_UI_CreateChild_text2", //$NON-NLS-1$
+				 new Object[] { getTypeText(childObject), getFeatureText(childFeature), getTypeText(owner) });
+		}
+		return super.getCreateChildText(owner, feature, child, selection);
+	}
+
+}
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/CGIClassifierRoleItemProvider.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/CGIClassifierRoleItemProvider.java
new file mode 100755
index 0000000..468bfa6
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/CGIClassifierRoleItemProvider.java
@@ -0,0 +1,324 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.provider;
+
+
+import java.util.Collection;
+import java.util.List;
+
+import org.eclipse.emf.common.notify.AdapterFactory;
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.ecore.EStructuralFeature;
+
+import org.eclipse.emf.edit.provider.ComposeableAdapterFactory;
+import org.eclipse.emf.edit.provider.IItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.ItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.ViewerNotification;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIClassifierRole;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyFactory;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIClassifierRole} object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class CGIClassifierRoleItemProvider extends GraphElementsTypeItemProvider {
+	/**
+	 * This constructs an instance from a factory and a notifier.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public CGIClassifierRoleItemProvider(AdapterFactory adapterFactory) {
+		super(adapterFactory);
+	}
+
+	/**
+	 * This returns the property descriptors for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) {
+		if (itemPropertyDescriptors == null) {
+			super.getPropertyDescriptors(object);
+
+			addM_pModelObjectPropertyDescriptor(object);
+			addM_pParentPropertyDescriptor(object);
+			addM_transformPropertyDescriptor(object);
+			addM_polygonPropertyDescriptor(object);
+			addM_nNameFormatPropertyDescriptor(object);
+			addM_nIsNameFormatPropertyDescriptor(object);
+			addCompartmentsPropertyDescriptor(object);
+		}
+		return itemPropertyDescriptors;
+	}
+
+	/**
+	 * This adds a property descriptor for the MpModel Object feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_pModelObjectPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIClassifierRole_m_pModelObject_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIClassifierRole_m_pModelObject_feature", "_UI_CGIClassifierRole_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIClassifierRole_M_pModelObject(),
+				 true,
+				 false,
+				 true,
+				 null,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the MpParent feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_pParentPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIClassifierRole_m_pParent_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIClassifierRole_m_pParent_feature", "_UI_CGIClassifierRole_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIClassifierRole_M_pParent(),
+				 true,
+				 false,
+				 true,
+				 null,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Mtransform feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_transformPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIClassifierRole_m_transform_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIClassifierRole_m_transform_feature", "_UI_CGIClassifierRole_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIClassifierRole_M_transform(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Mpolygon feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_polygonPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIClassifierRole_m_polygon_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIClassifierRole_m_polygon_feature", "_UI_CGIClassifierRole_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIClassifierRole_M_polygon(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the MnName Format feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_nNameFormatPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIClassifierRole_m_nNameFormat_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIClassifierRole_m_nNameFormat_feature", "_UI_CGIClassifierRole_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIClassifierRole_M_nNameFormat(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the MnIs Name Format feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_nIsNameFormatPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIClassifierRole_m_nIsNameFormat_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIClassifierRole_m_nIsNameFormat_feature", "_UI_CGIClassifierRole_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIClassifierRole_M_nIsNameFormat(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Compartments feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addCompartmentsPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIClassifierRole_Compartments_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIClassifierRole_Compartments_feature", "_UI_CGIClassifierRole_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIClassifierRole_Compartments(),
+				 true,
+				 false,
+				 true,
+				 null,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This specifies how to implement {@link #getChildren} and is used to deduce an appropriate feature for an
+	 * {@link org.eclipse.emf.edit.command.AddCommand}, {@link org.eclipse.emf.edit.command.RemoveCommand} or
+	 * {@link org.eclipse.emf.edit.command.MoveCommand} in {@link #createCommand}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Collection<? extends EStructuralFeature> getChildrenFeatures(Object object) {
+		if (childrenFeatures == null) {
+			super.getChildrenFeatures(object);
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getCGIClassifierRole_Properties());
+		}
+		return childrenFeatures;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EStructuralFeature getChildFeature(Object object, Object child) {
+		// Check the type of the specified child object and return the proper feature to use for
+		// adding (see {@link AddCommand}) it as a child.
+
+		return super.getChildFeature(object, child);
+	}
+
+	/**
+	 * This returns CGIClassifierRole.gif.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object getImage(Object object) {
+		return overlayImage(object, getResourceLocator().getImage("full/obj16/CGIClassifierRole")); //$NON-NLS-1$
+	}
+
+	/**
+	 * This returns the label text for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String getText(Object object) {
+		String label = ((CGIClassifierRole)object).getId();
+		return label == null || label.length() == 0 ?
+			getString("_UI_CGIClassifierRole_type") : //$NON-NLS-1$
+			getString("_UI_CGIClassifierRole_type") + " " + label; //$NON-NLS-1$ //$NON-NLS-2$
+	}
+	
+
+	/**
+	 * This handles model notifications by calling {@link #updateChildren} to update any cached
+	 * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void notifyChanged(Notification notification) {
+		updateChildren(notification);
+
+		switch (notification.getFeatureID(CGIClassifierRole.class)) {
+			case UMLRpyPackage.CGI_CLASSIFIER_ROLE__MTRANSFORM:
+			case UMLRpyPackage.CGI_CLASSIFIER_ROLE__MPOLYGON:
+			case UMLRpyPackage.CGI_CLASSIFIER_ROLE__MNNAME_FORMAT:
+			case UMLRpyPackage.CGI_CLASSIFIER_ROLE__MNIS_NAME_FORMAT:
+				fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), false, true));
+				return;
+			case UMLRpyPackage.CGI_CLASSIFIER_ROLE__PROPERTIES:
+				fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), true, false));
+				return;
+		}
+		super.notifyChanged(notification);
+	}
+
+	/**
+	 * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children
+	 * that can be created under this object.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) {
+		super.collectNewChildDescriptors(newChildDescriptors, object);
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGIClassifierRole_Properties(),
+				 UMLRpyFactory.eINSTANCE.createIPropertyContainer()));
+	}
+
+}
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/CGICompartmentItemProvider.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/CGICompartmentItemProvider.java
new file mode 100755
index 0000000..ebaa0bb
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/CGICompartmentItemProvider.java
@@ -0,0 +1,304 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.provider;
+
+
+import java.util.Collection;
+import java.util.List;
+
+import org.eclipse.emf.common.notify.AdapterFactory;
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.ecore.EStructuralFeature;
+
+import org.eclipse.emf.edit.provider.ComposeableAdapterFactory;
+import org.eclipse.emf.edit.provider.IItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.ItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.ViewerNotification;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGICompartment;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyFactory;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGICompartment} object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class CGICompartmentItemProvider extends CompartmentsTypeItemProvider {
+	/**
+	 * This constructs an instance from a factory and a notifier.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public CGICompartmentItemProvider(AdapterFactory adapterFactory) {
+		super(adapterFactory);
+	}
+
+	/**
+	 * This returns the property descriptors for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) {
+		if (itemPropertyDescriptors == null) {
+			super.getPropertyDescriptors(object);
+
+			addIdPropertyDescriptor(object);
+			addM_namePropertyDescriptor(object);
+			addM_displayOptionPropertyDescriptor(object);
+			addM_bShowInheritedPropertyDescriptor(object);
+			addM_bOrderedPropertyDescriptor(object);
+		}
+		return itemPropertyDescriptors;
+	}
+
+	/**
+	 * This adds a property descriptor for the Id feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addIdPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGICompartment_id_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGICompartment_id_feature", "_UI_CGICompartment_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGICompartment_Id(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Mname feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_namePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGICompartment_m_name_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGICompartment_m_name_feature", "_UI_CGICompartment_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGICompartment_M_name(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Mdisplay Option feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_displayOptionPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGICompartment_m_displayOption_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGICompartment_m_displayOption_feature", "_UI_CGICompartment_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGICompartment_M_displayOption(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the MbShow Inherited feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_bShowInheritedPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGICompartment_m_bShowInherited_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGICompartment_m_bShowInherited_feature", "_UI_CGICompartment_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGICompartment_M_bShowInherited(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the MbOrdered feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_bOrderedPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGICompartment_m_bOrdered_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGICompartment_m_bOrdered_feature", "_UI_CGICompartment_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGICompartment_M_bOrdered(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This specifies how to implement {@link #getChildren} and is used to deduce an appropriate feature for an
+	 * {@link org.eclipse.emf.edit.command.AddCommand}, {@link org.eclipse.emf.edit.command.RemoveCommand} or
+	 * {@link org.eclipse.emf.edit.command.MoveCommand} in {@link #createCommand}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Collection<? extends EStructuralFeature> getChildrenFeatures(Object object) {
+		if (childrenFeatures == null) {
+			super.getChildrenFeatures(object);
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getCGICompartment_Items());
+		}
+		return childrenFeatures;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EStructuralFeature getChildFeature(Object object, Object child) {
+		// Check the type of the specified child object and return the proper feature to use for
+		// adding (see {@link AddCommand}) it as a child.
+
+		return super.getChildFeature(object, child);
+	}
+
+	/**
+	 * This returns CGICompartment.gif.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object getImage(Object object) {
+		return overlayImage(object, getResourceLocator().getImage("full/obj16/CGICompartment")); //$NON-NLS-1$
+	}
+
+	/**
+	 * This returns the label text for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String getText(Object object) {
+		String label = ((CGICompartment)object).getId();
+		return label == null || label.length() == 0 ?
+			getString("_UI_CGICompartment_type") : //$NON-NLS-1$
+			getString("_UI_CGICompartment_type") + " " + label; //$NON-NLS-1$ //$NON-NLS-2$
+	}
+	
+
+	/**
+	 * This handles model notifications by calling {@link #updateChildren} to update any cached
+	 * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void notifyChanged(Notification notification) {
+		updateChildren(notification);
+
+		switch (notification.getFeatureID(CGICompartment.class)) {
+			case UMLRpyPackage.CGI_COMPARTMENT__ID:
+			case UMLRpyPackage.CGI_COMPARTMENT__MNAME:
+			case UMLRpyPackage.CGI_COMPARTMENT__MDISPLAY_OPTION:
+			case UMLRpyPackage.CGI_COMPARTMENT__MBSHOW_INHERITED:
+			case UMLRpyPackage.CGI_COMPARTMENT__MBORDERED:
+				fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), false, true));
+				return;
+			case UMLRpyPackage.CGI_COMPARTMENT__ITEMS:
+				fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), true, false));
+				return;
+		}
+		super.notifyChanged(notification);
+	}
+
+	/**
+	 * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children
+	 * that can be created under this object.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) {
+		super.collectNewChildDescriptors(newChildDescriptors, object);
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGICompartment_Items(),
+				 UMLRpyFactory.eINSTANCE.createIAttribute()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGICompartment_Items(),
+				 UMLRpyFactory.eINSTANCE.createIConstructor()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGICompartment_Items(),
+				 UMLRpyFactory.eINSTANCE.createIEnumerationLiteral()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGICompartment_Items(),
+				 UMLRpyFactory.eINSTANCE.createIPrimitiveOperation()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGICompartment_Items(),
+				 UMLRpyFactory.eINSTANCE.createIReception()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGICompartment_Items(),
+				 UMLRpyFactory.eINSTANCE.createITriggered()));
+	}
+
+}
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/CGIComponentItemProvider.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/CGIComponentItemProvider.java
new file mode 100755
index 0000000..b987fa6
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/CGIComponentItemProvider.java
@@ -0,0 +1,354 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.provider;
+
+
+import java.util.Collection;
+import java.util.List;
+
+import org.eclipse.emf.common.notify.AdapterFactory;
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.ecore.EStructuralFeature;
+
+import org.eclipse.emf.edit.provider.ComposeableAdapterFactory;
+import org.eclipse.emf.edit.provider.IItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.ItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.ViewerNotification;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIComponent;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyFactory;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIComponent} object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class CGIComponentItemProvider extends GraphElementsTypeItemProvider {
+	/**
+	 * This constructs an instance from a factory and a notifier.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public CGIComponentItemProvider(AdapterFactory adapterFactory) {
+		super(adapterFactory);
+	}
+
+	/**
+	 * This returns the property descriptors for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) {
+		if (itemPropertyDescriptors == null) {
+			super.getPropertyDescriptors(object);
+
+			addM_pModelObjectPropertyDescriptor(object);
+			addM_pParentPropertyDescriptor(object);
+			addM_transformPropertyDescriptor(object);
+			addM_polygonPropertyDescriptor(object);
+			addM_nNameFormatPropertyDescriptor(object);
+			addM_nIsNameFormatPropertyDescriptor(object);
+			addCompartmentsPropertyDescriptor(object);
+		}
+		return itemPropertyDescriptors;
+	}
+
+	/**
+	 * This adds a property descriptor for the MpModel Object feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_pModelObjectPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIComponent_m_pModelObject_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIComponent_m_pModelObject_feature", "_UI_CGIComponent_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIComponent_M_pModelObject(),
+				 true,
+				 false,
+				 true,
+				 null,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the MpParent feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_pParentPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIComponent_m_pParent_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIComponent_m_pParent_feature", "_UI_CGIComponent_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIComponent_M_pParent(),
+				 true,
+				 false,
+				 true,
+				 null,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Mtransform feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_transformPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIComponent_m_transform_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIComponent_m_transform_feature", "_UI_CGIComponent_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIComponent_M_transform(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Mpolygon feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_polygonPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIComponent_m_polygon_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIComponent_m_polygon_feature", "_UI_CGIComponent_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIComponent_M_polygon(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the MnName Format feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_nNameFormatPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIComponent_m_nNameFormat_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIComponent_m_nNameFormat_feature", "_UI_CGIComponent_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIComponent_M_nNameFormat(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the MnIs Name Format feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_nIsNameFormatPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIComponent_m_nIsNameFormat_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIComponent_m_nIsNameFormat_feature", "_UI_CGIComponent_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIComponent_M_nIsNameFormat(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Compartments feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addCompartmentsPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIComponent_Compartments_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIComponent_Compartments_feature", "_UI_CGIComponent_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIComponent_Compartments(),
+				 true,
+				 false,
+				 true,
+				 null,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This specifies how to implement {@link #getChildren} and is used to deduce an appropriate feature for an
+	 * {@link org.eclipse.emf.edit.command.AddCommand}, {@link org.eclipse.emf.edit.command.RemoveCommand} or
+	 * {@link org.eclipse.emf.edit.command.MoveCommand} in {@link #createCommand}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Collection<? extends EStructuralFeature> getChildrenFeatures(Object object) {
+		if (childrenFeatures == null) {
+			super.getChildrenFeatures(object);
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getCGIComponent_Properties());
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getCGIComponent_M_AdditionalLabel());
+		}
+		return childrenFeatures;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EStructuralFeature getChildFeature(Object object, Object child) {
+		// Check the type of the specified child object and return the proper feature to use for
+		// adding (see {@link AddCommand}) it as a child.
+
+		return super.getChildFeature(object, child);
+	}
+
+	/**
+	 * This returns CGIComponent.gif.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object getImage(Object object) {
+		return overlayImage(object, getResourceLocator().getImage("full/obj16/CGIComponent")); //$NON-NLS-1$
+	}
+
+	/**
+	 * This returns the label text for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String getText(Object object) {
+		String label = ((CGIComponent)object).getId();
+		return label == null || label.length() == 0 ?
+			getString("_UI_CGIComponent_type") : //$NON-NLS-1$
+			getString("_UI_CGIComponent_type") + " " + label; //$NON-NLS-1$ //$NON-NLS-2$
+	}
+	
+
+	/**
+	 * This handles model notifications by calling {@link #updateChildren} to update any cached
+	 * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void notifyChanged(Notification notification) {
+		updateChildren(notification);
+
+		switch (notification.getFeatureID(CGIComponent.class)) {
+			case UMLRpyPackage.CGI_COMPONENT__MTRANSFORM:
+			case UMLRpyPackage.CGI_COMPONENT__MPOLYGON:
+			case UMLRpyPackage.CGI_COMPONENT__MNNAME_FORMAT:
+			case UMLRpyPackage.CGI_COMPONENT__MNIS_NAME_FORMAT:
+				fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), false, true));
+				return;
+			case UMLRpyPackage.CGI_COMPONENT__PROPERTIES:
+			case UMLRpyPackage.CGI_COMPONENT__MADDITIONAL_LABEL:
+				fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), true, false));
+				return;
+		}
+		super.notifyChanged(notification);
+	}
+
+	/**
+	 * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children
+	 * that can be created under this object.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) {
+		super.collectNewChildDescriptors(newChildDescriptors, object);
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGIComponent_Properties(),
+				 UMLRpyFactory.eINSTANCE.createIPropertyContainer()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGIComponent_M_AdditionalLabel(),
+				 UMLRpyFactory.eINSTANCE.createCGIText()));
+	}
+
+	/**
+	 * This returns the label text for {@link org.eclipse.emf.edit.command.CreateChildCommand}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String getCreateChildText(Object owner, Object feature, Object child, Collection<?> selection) {
+		Object childFeature = feature;
+		Object childObject = child;
+
+		boolean qualify =
+			childFeature == UMLRpyPackage.eINSTANCE.getGraphElementsType_M_name() ||
+			childFeature == UMLRpyPackage.eINSTANCE.getCGIComponent_M_AdditionalLabel();
+
+		if (qualify) {
+			return getString
+				("_UI_CreateChild_text2", //$NON-NLS-1$
+				 new Object[] { getTypeText(childObject), getFeatureText(childFeature), getTypeText(owner) });
+		}
+		return super.getCreateChildText(owner, feature, child, selection);
+	}
+
+}
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/CGICompositeClassItemProvider.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/CGICompositeClassItemProvider.java
new file mode 100755
index 0000000..632bebe
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/CGICompositeClassItemProvider.java
@@ -0,0 +1,362 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.provider;
+
+
+import java.util.Collection;
+import java.util.List;
+
+import org.eclipse.emf.common.notify.AdapterFactory;
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.ecore.EStructuralFeature;
+
+import org.eclipse.emf.edit.provider.ComposeableAdapterFactory;
+import org.eclipse.emf.edit.provider.IItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.ItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.ViewerNotification;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGICompositeClass;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyFactory;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGICompositeClass} object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class CGICompositeClassItemProvider extends GraphElementsTypeItemProvider {
+	/**
+	 * This constructs an instance from a factory and a notifier.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public CGICompositeClassItemProvider(AdapterFactory adapterFactory) {
+		super(adapterFactory);
+	}
+
+	/**
+	 * This returns the property descriptors for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) {
+		if (itemPropertyDescriptors == null) {
+			super.getPropertyDescriptors(object);
+
+			addM_pModelObjectPropertyDescriptor(object);
+			addM_pParentPropertyDescriptor(object);
+			addM_polygonPropertyDescriptor(object);
+			addM_nNameFormatPropertyDescriptor(object);
+			addM_nIsNameFormatPropertyDescriptor(object);
+			addCompartmentsPropertyDescriptor(object);
+			addM_lineWidthPropertyDescriptor(object);
+		}
+		return itemPropertyDescriptors;
+	}
+
+	/**
+	 * This adds a property descriptor for the MpModel Object feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_pModelObjectPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGICompositeClass_m_pModelObject_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGICompositeClass_m_pModelObject_feature", "_UI_CGICompositeClass_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGICompositeClass_M_pModelObject(),
+				 true,
+				 false,
+				 true,
+				 null,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the MpParent feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_pParentPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGICompositeClass_m_pParent_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGICompositeClass_m_pParent_feature", "_UI_CGICompositeClass_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGICompositeClass_M_pParent(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Mpolygon feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_polygonPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGICompositeClass_m_polygon_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGICompositeClass_m_polygon_feature", "_UI_CGICompositeClass_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGICompositeClass_M_polygon(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the MnName Format feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_nNameFormatPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGICompositeClass_m_nNameFormat_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGICompositeClass_m_nNameFormat_feature", "_UI_CGICompositeClass_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGICompositeClass_M_nNameFormat(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the MnIs Name Format feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_nIsNameFormatPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGICompositeClass_m_nIsNameFormat_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGICompositeClass_m_nIsNameFormat_feature", "_UI_CGICompositeClass_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGICompositeClass_M_nIsNameFormat(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Compartments feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addCompartmentsPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGICompositeClass_Compartments_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGICompositeClass_Compartments_feature", "_UI_CGICompositeClass_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGICompositeClass_Compartments(),
+				 true,
+				 false,
+				 true,
+				 null,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Mline Width feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_lineWidthPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGICompositeClass_m_lineWidth_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGICompositeClass_m_lineWidth_feature", "_UI_CGICompositeClass_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGICompositeClass_M_lineWidth(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This specifies how to implement {@link #getChildren} and is used to deduce an appropriate feature for an
+	 * {@link org.eclipse.emf.edit.command.AddCommand}, {@link org.eclipse.emf.edit.command.RemoveCommand} or
+	 * {@link org.eclipse.emf.edit.command.MoveCommand} in {@link #createCommand}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Collection<? extends EStructuralFeature> getChildrenFeatures(Object object) {
+		if (childrenFeatures == null) {
+			super.getChildrenFeatures(object);
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getCGICompositeClass_M_AdditionalLabel());
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getCGICompositeClass_Properties());
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getCGICompositeClass_M_color());
+		}
+		return childrenFeatures;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EStructuralFeature getChildFeature(Object object, Object child) {
+		// Check the type of the specified child object and return the proper feature to use for
+		// adding (see {@link AddCommand}) it as a child.
+
+		return super.getChildFeature(object, child);
+	}
+
+	/**
+	 * This returns CGICompositeClass.gif.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object getImage(Object object) {
+		return overlayImage(object, getResourceLocator().getImage("full/obj16/CGICompositeClass")); //$NON-NLS-1$
+	}
+
+	/**
+	 * This returns the label text for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String getText(Object object) {
+		String label = ((CGICompositeClass)object).getId();
+		return label == null || label.length() == 0 ?
+			getString("_UI_CGICompositeClass_type") : //$NON-NLS-1$
+			getString("_UI_CGICompositeClass_type") + " " + label; //$NON-NLS-1$ //$NON-NLS-2$
+	}
+	
+
+	/**
+	 * This handles model notifications by calling {@link #updateChildren} to update any cached
+	 * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void notifyChanged(Notification notification) {
+		updateChildren(notification);
+
+		switch (notification.getFeatureID(CGICompositeClass.class)) {
+			case UMLRpyPackage.CGI_COMPOSITE_CLASS__MPPARENT:
+			case UMLRpyPackage.CGI_COMPOSITE_CLASS__MPOLYGON:
+			case UMLRpyPackage.CGI_COMPOSITE_CLASS__MNNAME_FORMAT:
+			case UMLRpyPackage.CGI_COMPOSITE_CLASS__MNIS_NAME_FORMAT:
+			case UMLRpyPackage.CGI_COMPOSITE_CLASS__MLINE_WIDTH:
+				fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), false, true));
+				return;
+			case UMLRpyPackage.CGI_COMPOSITE_CLASS__MADDITIONAL_LABEL:
+			case UMLRpyPackage.CGI_COMPOSITE_CLASS__PROPERTIES:
+			case UMLRpyPackage.CGI_COMPOSITE_CLASS__MCOLOR:
+				fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), true, false));
+				return;
+		}
+		super.notifyChanged(notification);
+	}
+
+	/**
+	 * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children
+	 * that can be created under this object.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) {
+		super.collectNewChildDescriptors(newChildDescriptors, object);
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGICompositeClass_M_AdditionalLabel(),
+				 UMLRpyFactory.eINSTANCE.createCGIText()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGICompositeClass_Properties(),
+				 UMLRpyFactory.eINSTANCE.createIPropertyContainer()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGICompositeClass_M_color(),
+				 UMLRpyFactory.eINSTANCE.createIColor()));
+	}
+
+	/**
+	 * This returns the label text for {@link org.eclipse.emf.edit.command.CreateChildCommand}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String getCreateChildText(Object owner, Object feature, Object child, Collection<?> selection) {
+		Object childFeature = feature;
+		Object childObject = child;
+
+		boolean qualify =
+			childFeature == UMLRpyPackage.eINSTANCE.getGraphElementsType_M_name() ||
+			childFeature == UMLRpyPackage.eINSTANCE.getCGICompositeClass_M_AdditionalLabel();
+
+		if (qualify) {
+			return getString
+				("_UI_CreateChild_text2", //$NON-NLS-1$
+				 new Object[] { getTypeText(childObject), getFeatureText(childFeature), getTypeText(owner) });
+		}
+		return super.getCreateChildText(owner, feature, child, selection);
+	}
+
+}
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/CGIConnectorItemProvider.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/CGIConnectorItemProvider.java
new file mode 100755
index 0000000..1cfb885
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/CGIConnectorItemProvider.java
@@ -0,0 +1,378 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.provider;
+
+
+import java.util.Collection;
+import java.util.List;
+
+import org.eclipse.emf.common.notify.AdapterFactory;
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.ecore.EStructuralFeature;
+
+import org.eclipse.emf.edit.provider.ComposeableAdapterFactory;
+import org.eclipse.emf.edit.provider.IItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.ItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.ViewerNotification;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIConnector;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyFactory;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIConnector} object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class CGIConnectorItemProvider extends GraphElementsTypeItemProvider {
+	/**
+	 * This constructs an instance from a factory and a notifier.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public CGIConnectorItemProvider(AdapterFactory adapterFactory) {
+		super(adapterFactory);
+	}
+
+	/**
+	 * This returns the property descriptors for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) {
+		if (itemPropertyDescriptors == null) {
+			super.getPropertyDescriptors(object);
+
+			addM_pModelObjectPropertyDescriptor(object);
+			addM_pParentPropertyDescriptor(object);
+			addM_transformPropertyDescriptor(object);
+			addM_positionPropertyDescriptor(object);
+			addM_nInheritanceMaskPropertyDescriptor(object);
+			addM_SubTypePropertyDescriptor(object);
+			addMyStatePropertyDescriptor(object);
+			addM_pInheritsFromPropertyDescriptor(object);
+		}
+		return itemPropertyDescriptors;
+	}
+
+	/**
+	 * This adds a property descriptor for the MpModel Object feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_pModelObjectPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIConnector_m_pModelObject_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIConnector_m_pModelObject_feature", "_UI_CGIConnector_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIConnector_M_pModelObject(),
+				 true,
+				 false,
+				 true,
+				 null,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the MpParent feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_pParentPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIConnector_m_pParent_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIConnector_m_pParent_feature", "_UI_CGIConnector_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIConnector_M_pParent(),
+				 true,
+				 false,
+				 true,
+				 null,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Mtransform feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_transformPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIConnector_m_transform_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIConnector_m_transform_feature", "_UI_CGIConnector_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIConnector_M_transform(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Mposition feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_positionPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIConnector_m_position_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIConnector_m_position_feature", "_UI_CGIConnector_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIConnector_M_position(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the MnInheritance Mask feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_nInheritanceMaskPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIConnector_m_nInheritanceMask_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIConnector_m_nInheritanceMask_feature", "_UI_CGIConnector_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIConnector_M_nInheritanceMask(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the MSub Type feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_SubTypePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIConnector_m_SubType_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIConnector_m_SubType_feature", "_UI_CGIConnector_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIConnector_M_SubType(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the My State feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addMyStatePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIConnector_myState_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIConnector_myState_feature", "_UI_CGIConnector_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIConnector_MyState(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the MpInherits From feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_pInheritsFromPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIConnector_m_pInheritsFrom_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIConnector_m_pInheritsFrom_feature", "_UI_CGIConnector_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIConnector_M_pInheritsFrom(),
+				 true,
+				 false,
+				 true,
+				 null,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This specifies how to implement {@link #getChildren} and is used to deduce an appropriate feature for an
+	 * {@link org.eclipse.emf.edit.command.AddCommand}, {@link org.eclipse.emf.edit.command.RemoveCommand} or
+	 * {@link org.eclipse.emf.edit.command.MoveCommand} in {@link #createCommand}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Collection<? extends EStructuralFeature> getChildrenFeatures(Object object) {
+		if (childrenFeatures == null) {
+			super.getChildrenFeatures(object);
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getCGIConnector_Properties());
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getCGIConnector_M_AdditionalLabel());
+		}
+		return childrenFeatures;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EStructuralFeature getChildFeature(Object object, Object child) {
+		// Check the type of the specified child object and return the proper feature to use for
+		// adding (see {@link AddCommand}) it as a child.
+
+		return super.getChildFeature(object, child);
+	}
+
+	/**
+	 * This returns CGIConnector.gif.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object getImage(Object object) {
+		return overlayImage(object, getResourceLocator().getImage("full/obj16/CGIConnector")); //$NON-NLS-1$
+	}
+
+	/**
+	 * This returns the label text for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String getText(Object object) {
+		String label = ((CGIConnector)object).getId();
+		return label == null || label.length() == 0 ?
+			getString("_UI_CGIConnector_type") : //$NON-NLS-1$
+			getString("_UI_CGIConnector_type") + " " + label; //$NON-NLS-1$ //$NON-NLS-2$
+	}
+	
+
+	/**
+	 * This handles model notifications by calling {@link #updateChildren} to update any cached
+	 * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void notifyChanged(Notification notification) {
+		updateChildren(notification);
+
+		switch (notification.getFeatureID(CGIConnector.class)) {
+			case UMLRpyPackage.CGI_CONNECTOR__MTRANSFORM:
+			case UMLRpyPackage.CGI_CONNECTOR__MPOSITION:
+			case UMLRpyPackage.CGI_CONNECTOR__MNINHERITANCE_MASK:
+			case UMLRpyPackage.CGI_CONNECTOR__MSUB_TYPE:
+			case UMLRpyPackage.CGI_CONNECTOR__MY_STATE:
+				fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), false, true));
+				return;
+			case UMLRpyPackage.CGI_CONNECTOR__PROPERTIES:
+			case UMLRpyPackage.CGI_CONNECTOR__MADDITIONAL_LABEL:
+				fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), true, false));
+				return;
+		}
+		super.notifyChanged(notification);
+	}
+
+	/**
+	 * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children
+	 * that can be created under this object.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) {
+		super.collectNewChildDescriptors(newChildDescriptors, object);
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGIConnector_Properties(),
+				 UMLRpyFactory.eINSTANCE.createIPropertyContainer()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGIConnector_M_AdditionalLabel(),
+				 UMLRpyFactory.eINSTANCE.createCGIText()));
+	}
+
+	/**
+	 * This returns the label text for {@link org.eclipse.emf.edit.command.CreateChildCommand}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String getCreateChildText(Object owner, Object feature, Object child, Collection<?> selection) {
+		Object childFeature = feature;
+		Object childObject = child;
+
+		boolean qualify =
+			childFeature == UMLRpyPackage.eINSTANCE.getGraphElementsType_M_name() ||
+			childFeature == UMLRpyPackage.eINSTANCE.getCGIConnector_M_AdditionalLabel();
+
+		if (qualify) {
+			return getString
+				("_UI_CreateChild_text2", //$NON-NLS-1$
+				 new Object[] { getTypeText(childObject), getFeatureText(childFeature), getTypeText(owner) });
+		}
+		return super.getCreateChildText(owner, feature, child, selection);
+	}
+
+}
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/CGIContainArrowItemProvider.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/CGIContainArrowItemProvider.java
new file mode 100755
index 0000000..e073663
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/CGIContainArrowItemProvider.java
@@ -0,0 +1,491 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.provider;
+
+
+import java.util.Collection;
+import java.util.List;
+
+import org.eclipse.emf.common.notify.AdapterFactory;
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.ecore.EStructuralFeature;
+
+import org.eclipse.emf.edit.provider.ComposeableAdapterFactory;
+import org.eclipse.emf.edit.provider.IItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.ItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.ViewerNotification;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIContainArrow;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyFactory;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIContainArrow} object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class CGIContainArrowItemProvider extends GraphElementsTypeItemProvider {
+	/**
+	 * This constructs an instance from a factory and a notifier.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public CGIContainArrowItemProvider(AdapterFactory adapterFactory) {
+		super(adapterFactory);
+	}
+
+	/**
+	 * This returns the property descriptors for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) {
+		if (itemPropertyDescriptors == null) {
+			super.getPropertyDescriptors(object);
+
+			addM_pModelObjectPropertyDescriptor(object);
+			addM_pParentPropertyDescriptor(object);
+			addM_pSourcePropertyDescriptor(object);
+			addM_sourceTypePropertyDescriptor(object);
+			addM_pTargetPropertyDescriptor(object);
+			addM_targetTypePropertyDescriptor(object);
+			addM_directionPropertyDescriptor(object);
+			addM_arrowPropertyDescriptor(object);
+			addM_anglePoint1PropertyDescriptor(object);
+			addM_anglePoint2PropertyDescriptor(object);
+			addM_line_stylePropertyDescriptor(object);
+			addM_SourcePortPropertyDescriptor(object);
+			addM_TargetPortPropertyDescriptor(object);
+		}
+		return itemPropertyDescriptors;
+	}
+
+	/**
+	 * This adds a property descriptor for the MpModel Object feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_pModelObjectPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIContainArrow_m_pModelObject_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIContainArrow_m_pModelObject_feature", "_UI_CGIContainArrow_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIContainArrow_M_pModelObject(),
+				 true,
+				 false,
+				 true,
+				 null,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the MpParent feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_pParentPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIContainArrow_m_pParent_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIContainArrow_m_pParent_feature", "_UI_CGIContainArrow_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIContainArrow_M_pParent(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the MpSource feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_pSourcePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIContainArrow_m_pSource_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIContainArrow_m_pSource_feature", "_UI_CGIContainArrow_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIContainArrow_M_pSource(),
+				 true,
+				 false,
+				 true,
+				 null,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Msource Type feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_sourceTypePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIContainArrow_m_sourceType_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIContainArrow_m_sourceType_feature", "_UI_CGIContainArrow_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIContainArrow_M_sourceType(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the MpTarget feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_pTargetPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIContainArrow_m_pTarget_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIContainArrow_m_pTarget_feature", "_UI_CGIContainArrow_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIContainArrow_M_pTarget(),
+				 true,
+				 false,
+				 true,
+				 null,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Mtarget Type feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_targetTypePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIContainArrow_m_targetType_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIContainArrow_m_targetType_feature", "_UI_CGIContainArrow_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIContainArrow_M_targetType(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Mdirection feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_directionPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIContainArrow_m_direction_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIContainArrow_m_direction_feature", "_UI_CGIContainArrow_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIContainArrow_M_direction(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Marrow feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_arrowPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIContainArrow_m_arrow_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIContainArrow_m_arrow_feature", "_UI_CGIContainArrow_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIContainArrow_M_arrow(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Mangle Point1 feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_anglePoint1PropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIContainArrow_m_anglePoint1_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIContainArrow_m_anglePoint1_feature", "_UI_CGIContainArrow_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIContainArrow_M_anglePoint1(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Mangle Point2 feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_anglePoint2PropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIContainArrow_m_anglePoint2_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIContainArrow_m_anglePoint2_feature", "_UI_CGIContainArrow_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIContainArrow_M_anglePoint2(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Mline style feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_line_stylePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIContainArrow_m_line_style_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIContainArrow_m_line_style_feature", "_UI_CGIContainArrow_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIContainArrow_M_line_style(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the MSource Port feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_SourcePortPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIContainArrow_m_SourcePort_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIContainArrow_m_SourcePort_feature", "_UI_CGIContainArrow_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIContainArrow_M_SourcePort(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the MTarget Port feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_TargetPortPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIContainArrow_m_TargetPort_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIContainArrow_m_TargetPort_feature", "_UI_CGIContainArrow_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIContainArrow_M_TargetPort(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This specifies how to implement {@link #getChildren} and is used to deduce an appropriate feature for an
+	 * {@link org.eclipse.emf.edit.command.AddCommand}, {@link org.eclipse.emf.edit.command.RemoveCommand} or
+	 * {@link org.eclipse.emf.edit.command.MoveCommand} in {@link #createCommand}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Collection<? extends EStructuralFeature> getChildrenFeatures(Object object) {
+		if (childrenFeatures == null) {
+			super.getChildrenFeatures(object);
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getCGIContainArrow_M_rpn());
+		}
+		return childrenFeatures;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EStructuralFeature getChildFeature(Object object, Object child) {
+		// Check the type of the specified child object and return the proper feature to use for
+		// adding (see {@link AddCommand}) it as a child.
+
+		return super.getChildFeature(object, child);
+	}
+
+	/**
+	 * This returns CGIContainArrow.gif.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object getImage(Object object) {
+		return overlayImage(object, getResourceLocator().getImage("full/obj16/CGIContainArrow")); //$NON-NLS-1$
+	}
+
+	/**
+	 * This returns the label text for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String getText(Object object) {
+		String label = ((CGIContainArrow)object).getId();
+		return label == null || label.length() == 0 ?
+			getString("_UI_CGIContainArrow_type") : //$NON-NLS-1$
+			getString("_UI_CGIContainArrow_type") + " " + label; //$NON-NLS-1$ //$NON-NLS-2$
+	}
+	
+
+	/**
+	 * This handles model notifications by calling {@link #updateChildren} to update any cached
+	 * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void notifyChanged(Notification notification) {
+		updateChildren(notification);
+
+		switch (notification.getFeatureID(CGIContainArrow.class)) {
+			case UMLRpyPackage.CGI_CONTAIN_ARROW__MPPARENT:
+			case UMLRpyPackage.CGI_CONTAIN_ARROW__MSOURCE_TYPE:
+			case UMLRpyPackage.CGI_CONTAIN_ARROW__MTARGET_TYPE:
+			case UMLRpyPackage.CGI_CONTAIN_ARROW__MDIRECTION:
+			case UMLRpyPackage.CGI_CONTAIN_ARROW__MARROW:
+			case UMLRpyPackage.CGI_CONTAIN_ARROW__MANGLE_POINT1:
+			case UMLRpyPackage.CGI_CONTAIN_ARROW__MANGLE_POINT2:
+			case UMLRpyPackage.CGI_CONTAIN_ARROW__MLINE_STYLE:
+			case UMLRpyPackage.CGI_CONTAIN_ARROW__MSOURCE_PORT:
+			case UMLRpyPackage.CGI_CONTAIN_ARROW__MTARGET_PORT:
+				fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), false, true));
+				return;
+			case UMLRpyPackage.CGI_CONTAIN_ARROW__MRPN:
+				fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), true, false));
+				return;
+		}
+		super.notifyChanged(notification);
+	}
+
+	/**
+	 * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children
+	 * that can be created under this object.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) {
+		super.collectNewChildDescriptors(newChildDescriptors, object);
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGIContainArrow_M_rpn(),
+				 UMLRpyFactory.eINSTANCE.createCGIText()));
+	}
+
+	/**
+	 * This returns the label text for {@link org.eclipse.emf.edit.command.CreateChildCommand}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String getCreateChildText(Object owner, Object feature, Object child, Collection<?> selection) {
+		Object childFeature = feature;
+		Object childObject = child;
+
+		boolean qualify =
+			childFeature == UMLRpyPackage.eINSTANCE.getGraphElementsType_M_name() ||
+			childFeature == UMLRpyPackage.eINSTANCE.getCGIContainArrow_M_rpn();
+
+		if (qualify) {
+			return getString
+				("_UI_CreateChild_text2", //$NON-NLS-1$
+				 new Object[] { getTypeText(childObject), getFeatureText(childFeature), getTypeText(owner) });
+		}
+		return super.getCreateChildText(owner, feature, child, selection);
+	}
+
+}
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/CGIDiagramFrameItemProvider.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/CGIDiagramFrameItemProvider.java
new file mode 100755
index 0000000..7431a67
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/CGIDiagramFrameItemProvider.java
@@ -0,0 +1,379 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.provider;
+
+
+import java.util.Collection;
+import java.util.List;
+
+import org.eclipse.emf.common.notify.AdapterFactory;
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.ecore.EStructuralFeature;
+
+import org.eclipse.emf.edit.provider.ComposeableAdapterFactory;
+import org.eclipse.emf.edit.provider.IItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.ItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.ViewerNotification;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIDiagramFrame;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyFactory;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIDiagramFrame} object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class CGIDiagramFrameItemProvider extends GraphElementsTypeItemProvider {
+	/**
+	 * This constructs an instance from a factory and a notifier.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public CGIDiagramFrameItemProvider(AdapterFactory adapterFactory) {
+		super(adapterFactory);
+	}
+
+	/**
+	 * This returns the property descriptors for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) {
+		if (itemPropertyDescriptors == null) {
+			super.getPropertyDescriptors(object);
+
+			addM_pModelObjectPropertyDescriptor(object);
+			addM_pParentPropertyDescriptor(object);
+			addM_transformPropertyDescriptor(object);
+			addM_polygonPropertyDescriptor(object);
+			addM_nNameFormatPropertyDescriptor(object);
+			addM_nIsNameFormatPropertyDescriptor(object);
+			addM_bVisiblePropertyDescriptor(object);
+			addFramesetPropertyDescriptor(object);
+		}
+		return itemPropertyDescriptors;
+	}
+
+	/**
+	 * This adds a property descriptor for the MpModel Object feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_pModelObjectPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIDiagramFrame_m_pModelObject_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIDiagramFrame_m_pModelObject_feature", "_UI_CGIDiagramFrame_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIDiagramFrame_M_pModelObject(),
+				 true,
+				 false,
+				 true,
+				 null,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the MpParent feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_pParentPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIDiagramFrame_m_pParent_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIDiagramFrame_m_pParent_feature", "_UI_CGIDiagramFrame_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIDiagramFrame_M_pParent(),
+				 true,
+				 false,
+				 true,
+				 null,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Mtransform feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_transformPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIDiagramFrame_m_transform_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIDiagramFrame_m_transform_feature", "_UI_CGIDiagramFrame_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIDiagramFrame_M_transform(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Mpolygon feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_polygonPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIDiagramFrame_m_polygon_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIDiagramFrame_m_polygon_feature", "_UI_CGIDiagramFrame_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIDiagramFrame_M_polygon(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the MnName Format feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_nNameFormatPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIDiagramFrame_m_nNameFormat_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIDiagramFrame_m_nNameFormat_feature", "_UI_CGIDiagramFrame_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIDiagramFrame_M_nNameFormat(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the MnIs Name Format feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_nIsNameFormatPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIDiagramFrame_m_nIsNameFormat_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIDiagramFrame_m_nIsNameFormat_feature", "_UI_CGIDiagramFrame_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIDiagramFrame_M_nIsNameFormat(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the MbVisible feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_bVisiblePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIDiagramFrame_m_bVisible_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIDiagramFrame_m_bVisible_feature", "_UI_CGIDiagramFrame_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIDiagramFrame_M_bVisible(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Frameset feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addFramesetPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIDiagramFrame_frameset_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIDiagramFrame_frameset_feature", "_UI_CGIDiagramFrame_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIDiagramFrame_Frameset(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This specifies how to implement {@link #getChildren} and is used to deduce an appropriate feature for an
+	 * {@link org.eclipse.emf.edit.command.AddCommand}, {@link org.eclipse.emf.edit.command.RemoveCommand} or
+	 * {@link org.eclipse.emf.edit.command.MoveCommand} in {@link #createCommand}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Collection<? extends EStructuralFeature> getChildrenFeatures(Object object) {
+		if (childrenFeatures == null) {
+			super.getChildrenFeatures(object);
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getCGIDiagramFrame_M_AdditionalLabel());
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getCGIDiagramFrame_Compartments());
+		}
+		return childrenFeatures;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EStructuralFeature getChildFeature(Object object, Object child) {
+		// Check the type of the specified child object and return the proper feature to use for
+		// adding (see {@link AddCommand}) it as a child.
+
+		return super.getChildFeature(object, child);
+	}
+
+	/**
+	 * This returns CGIDiagramFrame.gif.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object getImage(Object object) {
+		return overlayImage(object, getResourceLocator().getImage("full/obj16/CGIDiagramFrame")); //$NON-NLS-1$
+	}
+
+	/**
+	 * This returns the label text for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String getText(Object object) {
+		String label = ((CGIDiagramFrame)object).getId();
+		return label == null || label.length() == 0 ?
+			getString("_UI_CGIDiagramFrame_type") : //$NON-NLS-1$
+			getString("_UI_CGIDiagramFrame_type") + " " + label; //$NON-NLS-1$ //$NON-NLS-2$
+	}
+	
+
+	/**
+	 * This handles model notifications by calling {@link #updateChildren} to update any cached
+	 * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void notifyChanged(Notification notification) {
+		updateChildren(notification);
+
+		switch (notification.getFeatureID(CGIDiagramFrame.class)) {
+			case UMLRpyPackage.CGI_DIAGRAM_FRAME__MTRANSFORM:
+			case UMLRpyPackage.CGI_DIAGRAM_FRAME__MPOLYGON:
+			case UMLRpyPackage.CGI_DIAGRAM_FRAME__MNNAME_FORMAT:
+			case UMLRpyPackage.CGI_DIAGRAM_FRAME__MNIS_NAME_FORMAT:
+			case UMLRpyPackage.CGI_DIAGRAM_FRAME__MBVISIBLE:
+			case UMLRpyPackage.CGI_DIAGRAM_FRAME__FRAMESET:
+				fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), false, true));
+				return;
+			case UMLRpyPackage.CGI_DIAGRAM_FRAME__MADDITIONAL_LABEL:
+			case UMLRpyPackage.CGI_DIAGRAM_FRAME__COMPARTMENTS:
+				fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), true, false));
+				return;
+		}
+		super.notifyChanged(notification);
+	}
+
+	/**
+	 * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children
+	 * that can be created under this object.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) {
+		super.collectNewChildDescriptors(newChildDescriptors, object);
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGIDiagramFrame_M_AdditionalLabel(),
+				 UMLRpyFactory.eINSTANCE.createCGIText()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGIDiagramFrame_Compartments(),
+				 UMLRpyFactory.eINSTANCE.createCGICompartment()));
+	}
+
+	/**
+	 * This returns the label text for {@link org.eclipse.emf.edit.command.CreateChildCommand}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String getCreateChildText(Object owner, Object feature, Object child, Collection<?> selection) {
+		Object childFeature = feature;
+		Object childObject = child;
+
+		boolean qualify =
+			childFeature == UMLRpyPackage.eINSTANCE.getGraphElementsType_M_name() ||
+			childFeature == UMLRpyPackage.eINSTANCE.getCGIDiagramFrame_M_AdditionalLabel();
+
+		if (qualify) {
+			return getString
+				("_UI_CreateChild_text2", //$NON-NLS-1$
+				 new Object[] { getTypeText(childObject), getFeatureText(childFeature), getTypeText(owner) });
+		}
+		return super.getCreateChildText(owner, feature, child, selection);
+	}
+
+}
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/CGIFreeShapeItemProvider.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/CGIFreeShapeItemProvider.java
new file mode 100755
index 0000000..96d1a7a
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/CGIFreeShapeItemProvider.java
@@ -0,0 +1,253 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.provider;
+
+
+import java.util.Collection;
+import java.util.List;
+
+import org.eclipse.emf.common.notify.AdapterFactory;
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.ecore.EStructuralFeature;
+
+import org.eclipse.emf.edit.provider.ComposeableAdapterFactory;
+import org.eclipse.emf.edit.provider.IItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.ItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.ViewerNotification;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIFreeShape;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyFactory;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIFreeShape} object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class CGIFreeShapeItemProvider extends GraphElementsTypeItemProvider {
+	/**
+	 * This constructs an instance from a factory and a notifier.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public CGIFreeShapeItemProvider(AdapterFactory adapterFactory) {
+		super(adapterFactory);
+	}
+
+	/**
+	 * This returns the property descriptors for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) {
+		if (itemPropertyDescriptors == null) {
+			super.getPropertyDescriptors(object);
+
+			addM_pModelObjectPropertyDescriptor(object);
+			addM_pParentPropertyDescriptor(object);
+			addM_transformPropertyDescriptor(object);
+			addM_pointsPropertyDescriptor(object);
+		}
+		return itemPropertyDescriptors;
+	}
+
+	/**
+	 * This adds a property descriptor for the MpModel Object feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_pModelObjectPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIFreeShape_m_pModelObject_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIFreeShape_m_pModelObject_feature", "_UI_CGIFreeShape_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIFreeShape_M_pModelObject(),
+				 true,
+				 false,
+				 true,
+				 null,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the MpParent feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_pParentPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIFreeShape_m_pParent_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIFreeShape_m_pParent_feature", "_UI_CGIFreeShape_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIFreeShape_M_pParent(),
+				 true,
+				 false,
+				 true,
+				 null,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Mtransform feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_transformPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIFreeShape_m_transform_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIFreeShape_m_transform_feature", "_UI_CGIFreeShape_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIFreeShape_M_transform(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Mpoints feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_pointsPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIFreeShape_m_points_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIFreeShape_m_points_feature", "_UI_CGIFreeShape_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIFreeShape_M_points(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This specifies how to implement {@link #getChildren} and is used to deduce an appropriate feature for an
+	 * {@link org.eclipse.emf.edit.command.AddCommand}, {@link org.eclipse.emf.edit.command.RemoveCommand} or
+	 * {@link org.eclipse.emf.edit.command.MoveCommand} in {@link #createCommand}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Collection<? extends EStructuralFeature> getChildrenFeatures(Object object) {
+		if (childrenFeatures == null) {
+			super.getChildrenFeatures(object);
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getCGIFreeShape_Properties());
+		}
+		return childrenFeatures;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EStructuralFeature getChildFeature(Object object, Object child) {
+		// Check the type of the specified child object and return the proper feature to use for
+		// adding (see {@link AddCommand}) it as a child.
+
+		return super.getChildFeature(object, child);
+	}
+
+	/**
+	 * This returns CGIFreeShape.gif.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object getImage(Object object) {
+		return overlayImage(object, getResourceLocator().getImage("full/obj16/CGIFreeShape")); //$NON-NLS-1$
+	}
+
+	/**
+	 * This returns the label text for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String getText(Object object) {
+		String label = ((CGIFreeShape)object).getId();
+		return label == null || label.length() == 0 ?
+			getString("_UI_CGIFreeShape_type") : //$NON-NLS-1$
+			getString("_UI_CGIFreeShape_type") + " " + label; //$NON-NLS-1$ //$NON-NLS-2$
+	}
+	
+
+	/**
+	 * This handles model notifications by calling {@link #updateChildren} to update any cached
+	 * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void notifyChanged(Notification notification) {
+		updateChildren(notification);
+
+		switch (notification.getFeatureID(CGIFreeShape.class)) {
+			case UMLRpyPackage.CGI_FREE_SHAPE__MTRANSFORM:
+			case UMLRpyPackage.CGI_FREE_SHAPE__MPOINTS:
+				fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), false, true));
+				return;
+			case UMLRpyPackage.CGI_FREE_SHAPE__PROPERTIES:
+				fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), true, false));
+				return;
+		}
+		super.notifyChanged(notification);
+	}
+
+	/**
+	 * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children
+	 * that can be created under this object.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) {
+		super.collectNewChildDescriptors(newChildDescriptors, object);
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGIFreeShape_Properties(),
+				 UMLRpyFactory.eINSTANCE.createIPropertyContainer()));
+	}
+
+}
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/CGIFreeTextItemProvider.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/CGIFreeTextItemProvider.java
new file mode 100755
index 0000000..9c75831
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/CGIFreeTextItemProvider.java
@@ -0,0 +1,277 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.provider;
+
+
+import java.util.Collection;
+import java.util.List;
+
+import org.eclipse.emf.common.notify.AdapterFactory;
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.ecore.EStructuralFeature;
+
+import org.eclipse.emf.edit.provider.ComposeableAdapterFactory;
+import org.eclipse.emf.edit.provider.IItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.ItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.ViewerNotification;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIFreeText;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyFactory;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIFreeText} object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class CGIFreeTextItemProvider extends GraphElementsTypeItemProvider {
+	/**
+	 * This constructs an instance from a factory and a notifier.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public CGIFreeTextItemProvider(AdapterFactory adapterFactory) {
+		super(adapterFactory);
+	}
+
+	/**
+	 * This returns the property descriptors for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) {
+		if (itemPropertyDescriptors == null) {
+			super.getPropertyDescriptors(object);
+
+			addM_pModelObjectPropertyDescriptor(object);
+			addM_pParentPropertyDescriptor(object);
+			addM_transformPropertyDescriptor(object);
+			addM_pointsPropertyDescriptor(object);
+			addM_textPropertyDescriptor(object);
+		}
+		return itemPropertyDescriptors;
+	}
+
+	/**
+	 * This adds a property descriptor for the MpModel Object feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_pModelObjectPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIFreeText_m_pModelObject_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIFreeText_m_pModelObject_feature", "_UI_CGIFreeText_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIFreeText_M_pModelObject(),
+				 true,
+				 false,
+				 true,
+				 null,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the MpParent feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_pParentPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIFreeText_m_pParent_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIFreeText_m_pParent_feature", "_UI_CGIFreeText_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIFreeText_M_pParent(),
+				 true,
+				 false,
+				 true,
+				 null,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Mtransform feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_transformPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIFreeText_m_transform_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIFreeText_m_transform_feature", "_UI_CGIFreeText_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIFreeText_M_transform(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Mpoints feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_pointsPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIFreeText_m_points_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIFreeText_m_points_feature", "_UI_CGIFreeText_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIFreeText_M_points(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Mtext feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_textPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIFreeText_m_text_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIFreeText_m_text_feature", "_UI_CGIFreeText_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIFreeText_M_text(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This specifies how to implement {@link #getChildren} and is used to deduce an appropriate feature for an
+	 * {@link org.eclipse.emf.edit.command.AddCommand}, {@link org.eclipse.emf.edit.command.RemoveCommand} or
+	 * {@link org.eclipse.emf.edit.command.MoveCommand} in {@link #createCommand}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Collection<? extends EStructuralFeature> getChildrenFeatures(Object object) {
+		if (childrenFeatures == null) {
+			super.getChildrenFeatures(object);
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getCGIFreeText_Properties());
+		}
+		return childrenFeatures;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EStructuralFeature getChildFeature(Object object, Object child) {
+		// Check the type of the specified child object and return the proper feature to use for
+		// adding (see {@link AddCommand}) it as a child.
+
+		return super.getChildFeature(object, child);
+	}
+
+	/**
+	 * This returns CGIFreeText.gif.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object getImage(Object object) {
+		return overlayImage(object, getResourceLocator().getImage("full/obj16/CGIFreeText")); //$NON-NLS-1$
+	}
+
+	/**
+	 * This returns the label text for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String getText(Object object) {
+		String label = ((CGIFreeText)object).getId();
+		return label == null || label.length() == 0 ?
+			getString("_UI_CGIFreeText_type") : //$NON-NLS-1$
+			getString("_UI_CGIFreeText_type") + " " + label; //$NON-NLS-1$ //$NON-NLS-2$
+	}
+	
+
+	/**
+	 * This handles model notifications by calling {@link #updateChildren} to update any cached
+	 * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void notifyChanged(Notification notification) {
+		updateChildren(notification);
+
+		switch (notification.getFeatureID(CGIFreeText.class)) {
+			case UMLRpyPackage.CGI_FREE_TEXT__MTRANSFORM:
+			case UMLRpyPackage.CGI_FREE_TEXT__MPOINTS:
+			case UMLRpyPackage.CGI_FREE_TEXT__MTEXT:
+				fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), false, true));
+				return;
+			case UMLRpyPackage.CGI_FREE_TEXT__PROPERTIES:
+				fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), true, false));
+				return;
+		}
+		super.notifyChanged(notification);
+	}
+
+	/**
+	 * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children
+	 * that can be created under this object.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) {
+		super.collectNewChildDescriptors(newChildDescriptors, object);
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGIFreeText_Properties(),
+				 UMLRpyFactory.eINSTANCE.createIPropertyContainer()));
+	}
+
+}
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/CGIGenericElementItemProvider.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/CGIGenericElementItemProvider.java
new file mode 100755
index 0000000..008e0bf
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/CGIGenericElementItemProvider.java
@@ -0,0 +1,457 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.provider;
+
+
+import java.util.Collection;
+import java.util.List;
+
+import org.eclipse.emf.common.notify.AdapterFactory;
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.ecore.EStructuralFeature;
+
+import org.eclipse.emf.edit.provider.ComposeableAdapterFactory;
+import org.eclipse.emf.edit.provider.IItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.ItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.ViewerNotification;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIGenericElement;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyFactory;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIGenericElement} object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class CGIGenericElementItemProvider extends GraphElementsTypeItemProvider {
+	/**
+	 * This constructs an instance from a factory and a notifier.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public CGIGenericElementItemProvider(AdapterFactory adapterFactory) {
+		super(adapterFactory);
+	}
+
+	/**
+	 * This returns the property descriptors for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) {
+		if (itemPropertyDescriptors == null) {
+			super.getPropertyDescriptors(object);
+
+			addM_pModelObjectPropertyDescriptor(object);
+			addM_pParentPropertyDescriptor(object);
+			addM_transformPropertyDescriptor(object);
+			addM_polygonPropertyDescriptor(object);
+			addM_nNameFormatPropertyDescriptor(object);
+			addM_nIsNameFormatPropertyDescriptor(object);
+			addFramesetPropertyDescriptor(object);
+			addM_pImageViewDataPropertyDescriptor(object);
+			addM_csContextPropertyDescriptor(object);
+			addM_csPartsArrayPropertyDescriptor(object);
+			addM_bIsStructuredPropertyDescriptor(object);
+		}
+		return itemPropertyDescriptors;
+	}
+
+	/**
+	 * This adds a property descriptor for the MpModel Object feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_pModelObjectPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIGenericElement_m_pModelObject_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIGenericElement_m_pModelObject_feature", "_UI_CGIGenericElement_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIGenericElement_M_pModelObject(),
+				 true,
+				 false,
+				 true,
+				 null,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the MpParent feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_pParentPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIGenericElement_m_pParent_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIGenericElement_m_pParent_feature", "_UI_CGIGenericElement_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIGenericElement_M_pParent(),
+				 true,
+				 false,
+				 true,
+				 null,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Mtransform feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_transformPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIGenericElement_m_transform_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIGenericElement_m_transform_feature", "_UI_CGIGenericElement_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIGenericElement_M_transform(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Mpolygon feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_polygonPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIGenericElement_m_polygon_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIGenericElement_m_polygon_feature", "_UI_CGIGenericElement_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIGenericElement_M_polygon(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the MnName Format feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_nNameFormatPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIGenericElement_m_nNameFormat_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIGenericElement_m_nNameFormat_feature", "_UI_CGIGenericElement_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIGenericElement_M_nNameFormat(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the MnIs Name Format feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_nIsNameFormatPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIGenericElement_m_nIsNameFormat_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIGenericElement_m_nIsNameFormat_feature", "_UI_CGIGenericElement_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIGenericElement_M_nIsNameFormat(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Frameset feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addFramesetPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIGenericElement_frameset_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIGenericElement_frameset_feature", "_UI_CGIGenericElement_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIGenericElement_Frameset(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the MpImage View Data feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_pImageViewDataPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIGenericElement_m_pImageViewData_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIGenericElement_m_pImageViewData_feature", "_UI_CGIGenericElement_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIGenericElement_M_pImageViewData(),
+				 true,
+				 false,
+				 true,
+				 null,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Mcs Context feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_csContextPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIGenericElement_m_csContext_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIGenericElement_m_csContext_feature", "_UI_CGIGenericElement_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIGenericElement_M_csContext(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Mcs Parts Array feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_csPartsArrayPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIGenericElement_m_csPartsArray_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIGenericElement_m_csPartsArray_feature", "_UI_CGIGenericElement_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIGenericElement_M_csPartsArray(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the MbIs Structured feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_bIsStructuredPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIGenericElement_m_bIsStructured_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIGenericElement_m_bIsStructured_feature", "_UI_CGIGenericElement_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIGenericElement_M_bIsStructured(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This specifies how to implement {@link #getChildren} and is used to deduce an appropriate feature for an
+	 * {@link org.eclipse.emf.edit.command.AddCommand}, {@link org.eclipse.emf.edit.command.RemoveCommand} or
+	 * {@link org.eclipse.emf.edit.command.MoveCommand} in {@link #createCommand}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Collection<? extends EStructuralFeature> getChildrenFeatures(Object object) {
+		if (childrenFeatures == null) {
+			super.getChildrenFeatures(object);
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getCGIGenericElement_M_AdditionalLabel());
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getCGIGenericElement_Compartments());
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getCGIGenericElement_Properties());
+		}
+		return childrenFeatures;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EStructuralFeature getChildFeature(Object object, Object child) {
+		// Check the type of the specified child object and return the proper feature to use for
+		// adding (see {@link AddCommand}) it as a child.
+
+		return super.getChildFeature(object, child);
+	}
+
+	/**
+	 * This returns CGIGenericElement.gif.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object getImage(Object object) {
+		return overlayImage(object, getResourceLocator().getImage("full/obj16/CGIGenericElement")); //$NON-NLS-1$
+	}
+
+	/**
+	 * This returns the label text for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String getText(Object object) {
+		String label = ((CGIGenericElement)object).getId();
+		return label == null || label.length() == 0 ?
+			getString("_UI_CGIGenericElement_type") : //$NON-NLS-1$
+			getString("_UI_CGIGenericElement_type") + " " + label; //$NON-NLS-1$ //$NON-NLS-2$
+	}
+	
+
+	/**
+	 * This handles model notifications by calling {@link #updateChildren} to update any cached
+	 * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void notifyChanged(Notification notification) {
+		updateChildren(notification);
+
+		switch (notification.getFeatureID(CGIGenericElement.class)) {
+			case UMLRpyPackage.CGI_GENERIC_ELEMENT__MTRANSFORM:
+			case UMLRpyPackage.CGI_GENERIC_ELEMENT__MPOLYGON:
+			case UMLRpyPackage.CGI_GENERIC_ELEMENT__MNNAME_FORMAT:
+			case UMLRpyPackage.CGI_GENERIC_ELEMENT__MNIS_NAME_FORMAT:
+			case UMLRpyPackage.CGI_GENERIC_ELEMENT__FRAMESET:
+			case UMLRpyPackage.CGI_GENERIC_ELEMENT__MCS_CONTEXT:
+			case UMLRpyPackage.CGI_GENERIC_ELEMENT__MCS_PARTS_ARRAY:
+			case UMLRpyPackage.CGI_GENERIC_ELEMENT__MBIS_STRUCTURED:
+				fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), false, true));
+				return;
+			case UMLRpyPackage.CGI_GENERIC_ELEMENT__MADDITIONAL_LABEL:
+			case UMLRpyPackage.CGI_GENERIC_ELEMENT__COMPARTMENTS:
+			case UMLRpyPackage.CGI_GENERIC_ELEMENT__PROPERTIES:
+				fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), true, false));
+				return;
+		}
+		super.notifyChanged(notification);
+	}
+
+	/**
+	 * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children
+	 * that can be created under this object.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) {
+		super.collectNewChildDescriptors(newChildDescriptors, object);
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGIGenericElement_M_AdditionalLabel(),
+				 UMLRpyFactory.eINSTANCE.createCGIText()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGIGenericElement_Compartments(),
+				 UMLRpyFactory.eINSTANCE.createCGICompartment()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGIGenericElement_Properties(),
+				 UMLRpyFactory.eINSTANCE.createIPropertyContainer()));
+	}
+
+	/**
+	 * This returns the label text for {@link org.eclipse.emf.edit.command.CreateChildCommand}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String getCreateChildText(Object owner, Object feature, Object child, Collection<?> selection) {
+		Object childFeature = feature;
+		Object childObject = child;
+
+		boolean qualify =
+			childFeature == UMLRpyPackage.eINSTANCE.getGraphElementsType_M_name() ||
+			childFeature == UMLRpyPackage.eINSTANCE.getCGIGenericElement_M_AdditionalLabel();
+
+		if (qualify) {
+			return getString
+				("_UI_CreateChild_text2", //$NON-NLS-1$
+				 new Object[] { getTypeText(childObject), getFeatureText(childFeature), getTypeText(owner) });
+		}
+		return super.getCreateChildText(owner, feature, child, selection);
+	}
+
+}
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/CGIImageDataItemProvider.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/CGIImageDataItemProvider.java
new file mode 100755
index 0000000..6fbfa44
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/CGIImageDataItemProvider.java
@@ -0,0 +1,260 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.provider;
+
+
+import java.util.Collection;
+import java.util.List;
+
+import org.eclipse.emf.common.notify.AdapterFactory;
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.edit.provider.ComposeableAdapterFactory;
+import org.eclipse.emf.edit.provider.IItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.ItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.ViewerNotification;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIImageData;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIImageData} object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class CGIImageDataItemProvider extends GraphElementsTypeItemProvider {
+	/**
+	 * This constructs an instance from a factory and a notifier.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public CGIImageDataItemProvider(AdapterFactory adapterFactory) {
+		super(adapterFactory);
+	}
+
+	/**
+	 * This returns the property descriptors for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) {
+		if (itemPropertyDescriptors == null) {
+			super.getPropertyDescriptors(object);
+
+			addM_pModelObjectPropertyDescriptor(object);
+			addM_pParentPropertyDescriptor(object);
+			addM_dataSizePropertyDescriptor(object);
+			addM_dataPropertyDescriptor(object);
+			addM_srcFilePropertyDescriptor(object);
+			addM_fileModifiedTimePropertyDescriptor(object);
+		}
+		return itemPropertyDescriptors;
+	}
+
+	/**
+	 * This adds a property descriptor for the MpModel Object feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_pModelObjectPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIImageData_m_pModelObject_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIImageData_m_pModelObject_feature", "_UI_CGIImageData_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIImageData_M_pModelObject(),
+				 true,
+				 false,
+				 true,
+				 null,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the MpParent feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_pParentPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIImageData_m_pParent_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIImageData_m_pParent_feature", "_UI_CGIImageData_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIImageData_M_pParent(),
+				 true,
+				 false,
+				 true,
+				 null,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Mdata Size feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_dataSizePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIImageData_m_dataSize_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIImageData_m_dataSize_feature", "_UI_CGIImageData_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIImageData_M_dataSize(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Mdata feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_dataPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIImageData_m_data_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIImageData_m_data_feature", "_UI_CGIImageData_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIImageData_M_data(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Msrc File feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_srcFilePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIImageData_m_srcFile_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIImageData_m_srcFile_feature", "_UI_CGIImageData_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIImageData_M_srcFile(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Mfile Modified Time feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_fileModifiedTimePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIImageData_m_fileModifiedTime_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIImageData_m_fileModifiedTime_feature", "_UI_CGIImageData_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIImageData_M_fileModifiedTime(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This returns CGIImageData.gif.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object getImage(Object object) {
+		return overlayImage(object, getResourceLocator().getImage("full/obj16/CGIImageData")); //$NON-NLS-1$
+	}
+
+	/**
+	 * This returns the label text for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String getText(Object object) {
+		String label = ((CGIImageData)object).getId();
+		return label == null || label.length() == 0 ?
+			getString("_UI_CGIImageData_type") : //$NON-NLS-1$
+			getString("_UI_CGIImageData_type") + " " + label; //$NON-NLS-1$ //$NON-NLS-2$
+	}
+	
+
+	/**
+	 * This handles model notifications by calling {@link #updateChildren} to update any cached
+	 * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void notifyChanged(Notification notification) {
+		updateChildren(notification);
+
+		switch (notification.getFeatureID(CGIImageData.class)) {
+			case UMLRpyPackage.CGI_IMAGE_DATA__MDATA_SIZE:
+			case UMLRpyPackage.CGI_IMAGE_DATA__MDATA:
+			case UMLRpyPackage.CGI_IMAGE_DATA__MSRC_FILE:
+			case UMLRpyPackage.CGI_IMAGE_DATA__MFILE_MODIFIED_TIME:
+				fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), false, true));
+				return;
+		}
+		super.notifyChanged(notification);
+	}
+
+	/**
+	 * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children
+	 * that can be created under this object.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) {
+		super.collectNewChildDescriptors(newChildDescriptors, object);
+	}
+
+}
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/CGIImageItemProvider.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/CGIImageItemProvider.java
new file mode 100755
index 0000000..72c9670
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/CGIImageItemProvider.java
@@ -0,0 +1,235 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.provider;
+
+
+import java.util.Collection;
+import java.util.List;
+
+import org.eclipse.emf.common.notify.AdapterFactory;
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.edit.provider.ComposeableAdapterFactory;
+import org.eclipse.emf.edit.provider.IItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.ItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.ViewerNotification;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIImage;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIImage} object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class CGIImageItemProvider extends GraphElementsTypeItemProvider {
+	/**
+	 * This constructs an instance from a factory and a notifier.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public CGIImageItemProvider(AdapterFactory adapterFactory) {
+		super(adapterFactory);
+	}
+
+	/**
+	 * This returns the property descriptors for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) {
+		if (itemPropertyDescriptors == null) {
+			super.getPropertyDescriptors(object);
+
+			addM_pModelObjectPropertyDescriptor(object);
+			addM_pParentPropertyDescriptor(object);
+			addM_transformPropertyDescriptor(object);
+			addM_pImageViewDataPropertyDescriptor(object);
+			addM_pointsPropertyDescriptor(object);
+		}
+		return itemPropertyDescriptors;
+	}
+
+	/**
+	 * This adds a property descriptor for the MpModel Object feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_pModelObjectPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIImage_m_pModelObject_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIImage_m_pModelObject_feature", "_UI_CGIImage_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIImage_M_pModelObject(),
+				 true,
+				 false,
+				 true,
+				 null,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the MpParent feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_pParentPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIImage_m_pParent_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIImage_m_pParent_feature", "_UI_CGIImage_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIImage_M_pParent(),
+				 true,
+				 false,
+				 true,
+				 null,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Mtransform feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_transformPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIImage_m_transform_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIImage_m_transform_feature", "_UI_CGIImage_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIImage_M_transform(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the MpImage View Data feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_pImageViewDataPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIImage_m_pImageViewData_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIImage_m_pImageViewData_feature", "_UI_CGIImage_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIImage_M_pImageViewData(),
+				 true,
+				 false,
+				 true,
+				 null,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Mpoints feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_pointsPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIImage_m_points_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIImage_m_points_feature", "_UI_CGIImage_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIImage_M_points(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This returns CGIImage.gif.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object getImage(Object object) {
+		return overlayImage(object, getResourceLocator().getImage("full/obj16/CGIImage")); //$NON-NLS-1$
+	}
+
+	/**
+	 * This returns the label text for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String getText(Object object) {
+		String label = ((CGIImage)object).getId();
+		return label == null || label.length() == 0 ?
+			getString("_UI_CGIImage_type") : //$NON-NLS-1$
+			getString("_UI_CGIImage_type") + " " + label; //$NON-NLS-1$ //$NON-NLS-2$
+	}
+	
+
+	/**
+	 * This handles model notifications by calling {@link #updateChildren} to update any cached
+	 * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void notifyChanged(Notification notification) {
+		updateChildren(notification);
+
+		switch (notification.getFeatureID(CGIImage.class)) {
+			case UMLRpyPackage.CGI_IMAGE__MTRANSFORM:
+			case UMLRpyPackage.CGI_IMAGE__MPOINTS:
+				fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), false, true));
+				return;
+		}
+		super.notifyChanged(notification);
+	}
+
+	/**
+	 * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children
+	 * that can be created under this object.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) {
+		super.collectNewChildDescriptors(newChildDescriptors, object);
+	}
+
+}
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/CGIInformationFlowItemProvider.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/CGIInformationFlowItemProvider.java
new file mode 100755
index 0000000..9480a42
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/CGIInformationFlowItemProvider.java
@@ -0,0 +1,562 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.provider;
+
+
+import java.util.Collection;
+import java.util.List;
+
+import org.eclipse.emf.common.notify.AdapterFactory;
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.ecore.EStructuralFeature;
+
+import org.eclipse.emf.edit.provider.ComposeableAdapterFactory;
+import org.eclipse.emf.edit.provider.IItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.ItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.ViewerNotification;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIInformationFlow;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyFactory;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIInformationFlow} object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class CGIInformationFlowItemProvider extends GraphElementsTypeItemProvider {
+	/**
+	 * This constructs an instance from a factory and a notifier.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public CGIInformationFlowItemProvider(AdapterFactory adapterFactory) {
+		super(adapterFactory);
+	}
+
+	/**
+	 * This returns the property descriptors for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) {
+		if (itemPropertyDescriptors == null) {
+			super.getPropertyDescriptors(object);
+
+			addM_pModelObjectPropertyDescriptor(object);
+			addM_pParentPropertyDescriptor(object);
+			addM_pSourcePropertyDescriptor(object);
+			addM_sourceTypePropertyDescriptor(object);
+			addM_pTargetPropertyDescriptor(object);
+			addM_targetTypePropertyDescriptor(object);
+			addM_directionPropertyDescriptor(object);
+			addM_anglePoint1PropertyDescriptor(object);
+			addM_anglePoint2PropertyDescriptor(object);
+			addM_line_stylePropertyDescriptor(object);
+			addM_SourcePortPropertyDescriptor(object);
+			addM_TargetPortPropertyDescriptor(object);
+			addM_bShowKeywordPropertyDescriptor(object);
+			addM_showConveyedPropertyDescriptor(object);
+			addM_arrowPropertyDescriptor(object);
+		}
+		return itemPropertyDescriptors;
+	}
+
+	/**
+	 * This adds a property descriptor for the MpModel Object feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_pModelObjectPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIInformationFlow_m_pModelObject_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIInformationFlow_m_pModelObject_feature", "_UI_CGIInformationFlow_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIInformationFlow_M_pModelObject(),
+				 true,
+				 false,
+				 true,
+				 null,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the MpParent feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_pParentPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIInformationFlow_m_pParent_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIInformationFlow_m_pParent_feature", "_UI_CGIInformationFlow_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIInformationFlow_M_pParent(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the MpSource feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_pSourcePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIInformationFlow_m_pSource_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIInformationFlow_m_pSource_feature", "_UI_CGIInformationFlow_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIInformationFlow_M_pSource(),
+				 true,
+				 false,
+				 true,
+				 null,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Msource Type feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_sourceTypePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIInformationFlow_m_sourceType_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIInformationFlow_m_sourceType_feature", "_UI_CGIInformationFlow_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIInformationFlow_M_sourceType(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the MpTarget feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_pTargetPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIInformationFlow_m_pTarget_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIInformationFlow_m_pTarget_feature", "_UI_CGIInformationFlow_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIInformationFlow_M_pTarget(),
+				 true,
+				 false,
+				 true,
+				 null,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Mtarget Type feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_targetTypePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIInformationFlow_m_targetType_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIInformationFlow_m_targetType_feature", "_UI_CGIInformationFlow_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIInformationFlow_M_targetType(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Mdirection feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_directionPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIInformationFlow_m_direction_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIInformationFlow_m_direction_feature", "_UI_CGIInformationFlow_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIInformationFlow_M_direction(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Mangle Point1 feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_anglePoint1PropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIInformationFlow_m_anglePoint1_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIInformationFlow_m_anglePoint1_feature", "_UI_CGIInformationFlow_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIInformationFlow_M_anglePoint1(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Mangle Point2 feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_anglePoint2PropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIInformationFlow_m_anglePoint2_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIInformationFlow_m_anglePoint2_feature", "_UI_CGIInformationFlow_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIInformationFlow_M_anglePoint2(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Mline style feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_line_stylePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIInformationFlow_m_line_style_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIInformationFlow_m_line_style_feature", "_UI_CGIInformationFlow_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIInformationFlow_M_line_style(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the MSource Port feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_SourcePortPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIInformationFlow_m_SourcePort_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIInformationFlow_m_SourcePort_feature", "_UI_CGIInformationFlow_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIInformationFlow_M_SourcePort(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the MTarget Port feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_TargetPortPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIInformationFlow_m_TargetPort_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIInformationFlow_m_TargetPort_feature", "_UI_CGIInformationFlow_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIInformationFlow_M_TargetPort(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the MbShow Keyword feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_bShowKeywordPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIInformationFlow_m_bShowKeyword_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIInformationFlow_m_bShowKeyword_feature", "_UI_CGIInformationFlow_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIInformationFlow_M_bShowKeyword(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Mshow Conveyed feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_showConveyedPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIInformationFlow_m_showConveyed_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIInformationFlow_m_showConveyed_feature", "_UI_CGIInformationFlow_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIInformationFlow_M_showConveyed(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Marrow feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_arrowPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIInformationFlow_m_arrow_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIInformationFlow_m_arrow_feature", "_UI_CGIInformationFlow_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIInformationFlow_M_arrow(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This specifies how to implement {@link #getChildren} and is used to deduce an appropriate feature for an
+	 * {@link org.eclipse.emf.edit.command.AddCommand}, {@link org.eclipse.emf.edit.command.RemoveCommand} or
+	 * {@link org.eclipse.emf.edit.command.MoveCommand} in {@link #createCommand}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Collection<? extends EStructuralFeature> getChildrenFeatures(Object object) {
+		if (childrenFeatures == null) {
+			super.getChildrenFeatures(object);
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getCGIInformationFlow_M_rpn());
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getCGIInformationFlow_M_keyword());
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getCGIInformationFlow_M_conveyed());
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getCGIInformationFlow_Properties());
+		}
+		return childrenFeatures;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EStructuralFeature getChildFeature(Object object, Object child) {
+		// Check the type of the specified child object and return the proper feature to use for
+		// adding (see {@link AddCommand}) it as a child.
+
+		return super.getChildFeature(object, child);
+	}
+
+	/**
+	 * This returns CGIInformationFlow.gif.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object getImage(Object object) {
+		return overlayImage(object, getResourceLocator().getImage("full/obj16/CGIInformationFlow")); //$NON-NLS-1$
+	}
+
+	/**
+	 * This returns the label text for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String getText(Object object) {
+		String label = ((CGIInformationFlow)object).getId();
+		return label == null || label.length() == 0 ?
+			getString("_UI_CGIInformationFlow_type") : //$NON-NLS-1$
+			getString("_UI_CGIInformationFlow_type") + " " + label; //$NON-NLS-1$ //$NON-NLS-2$
+	}
+	
+
+	/**
+	 * This handles model notifications by calling {@link #updateChildren} to update any cached
+	 * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void notifyChanged(Notification notification) {
+		updateChildren(notification);
+
+		switch (notification.getFeatureID(CGIInformationFlow.class)) {
+			case UMLRpyPackage.CGI_INFORMATION_FLOW__MPPARENT:
+			case UMLRpyPackage.CGI_INFORMATION_FLOW__MSOURCE_TYPE:
+			case UMLRpyPackage.CGI_INFORMATION_FLOW__MTARGET_TYPE:
+			case UMLRpyPackage.CGI_INFORMATION_FLOW__MDIRECTION:
+			case UMLRpyPackage.CGI_INFORMATION_FLOW__MANGLE_POINT1:
+			case UMLRpyPackage.CGI_INFORMATION_FLOW__MANGLE_POINT2:
+			case UMLRpyPackage.CGI_INFORMATION_FLOW__MLINE_STYLE:
+			case UMLRpyPackage.CGI_INFORMATION_FLOW__MSOURCE_PORT:
+			case UMLRpyPackage.CGI_INFORMATION_FLOW__MTARGET_PORT:
+			case UMLRpyPackage.CGI_INFORMATION_FLOW__MBSHOW_KEYWORD:
+			case UMLRpyPackage.CGI_INFORMATION_FLOW__MSHOW_CONVEYED:
+			case UMLRpyPackage.CGI_INFORMATION_FLOW__MARROW:
+				fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), false, true));
+				return;
+			case UMLRpyPackage.CGI_INFORMATION_FLOW__MRPN:
+			case UMLRpyPackage.CGI_INFORMATION_FLOW__MKEYWORD:
+			case UMLRpyPackage.CGI_INFORMATION_FLOW__MCONVEYED:
+			case UMLRpyPackage.CGI_INFORMATION_FLOW__PROPERTIES:
+				fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), true, false));
+				return;
+		}
+		super.notifyChanged(notification);
+	}
+
+	/**
+	 * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children
+	 * that can be created under this object.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) {
+		super.collectNewChildDescriptors(newChildDescriptors, object);
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGIInformationFlow_M_rpn(),
+				 UMLRpyFactory.eINSTANCE.createCGIText()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGIInformationFlow_M_keyword(),
+				 UMLRpyFactory.eINSTANCE.createCGIText()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGIInformationFlow_M_conveyed(),
+				 UMLRpyFactory.eINSTANCE.createCGIText()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGIInformationFlow_Properties(),
+				 UMLRpyFactory.eINSTANCE.createIPropertyContainer()));
+	}
+
+	/**
+	 * This returns the label text for {@link org.eclipse.emf.edit.command.CreateChildCommand}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String getCreateChildText(Object owner, Object feature, Object child, Collection<?> selection) {
+		Object childFeature = feature;
+		Object childObject = child;
+
+		boolean qualify =
+			childFeature == UMLRpyPackage.eINSTANCE.getGraphElementsType_M_name() ||
+			childFeature == UMLRpyPackage.eINSTANCE.getCGIInformationFlow_M_rpn() ||
+			childFeature == UMLRpyPackage.eINSTANCE.getCGIInformationFlow_M_keyword() ||
+			childFeature == UMLRpyPackage.eINSTANCE.getCGIInformationFlow_M_conveyed();
+
+		if (qualify) {
+			return getString
+				("_UI_CreateChild_text2", //$NON-NLS-1$
+				 new Object[] { getTypeText(childObject), getFeatureText(childFeature), getTypeText(owner) });
+		}
+		return super.getCreateChildText(owner, feature, child, selection);
+	}
+
+}
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/CGIInheritanceItemProvider.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/CGIInheritanceItemProvider.java
new file mode 100755
index 0000000..21e0976
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/CGIInheritanceItemProvider.java
@@ -0,0 +1,577 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.provider;
+
+
+import java.util.Collection;
+import java.util.List;
+
+import org.eclipse.emf.common.notify.AdapterFactory;
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.ecore.EStructuralFeature;
+
+import org.eclipse.emf.edit.provider.ComposeableAdapterFactory;
+import org.eclipse.emf.edit.provider.IItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.ItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.ViewerNotification;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIInheritance;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyFactory;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIInheritance} object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class CGIInheritanceItemProvider extends GraphElementsTypeItemProvider {
+	/**
+	 * This constructs an instance from a factory and a notifier.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public CGIInheritanceItemProvider(AdapterFactory adapterFactory) {
+		super(adapterFactory);
+	}
+
+	/**
+	 * This returns the property descriptors for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) {
+		if (itemPropertyDescriptors == null) {
+			super.getPropertyDescriptors(object);
+
+			addM_pModelObjectPropertyDescriptor(object);
+			addM_pParentPropertyDescriptor(object);
+			addM_pSourcePropertyDescriptor(object);
+			addM_sourceTypePropertyDescriptor(object);
+			addM_pTargetPropertyDescriptor(object);
+			addM_targetTypePropertyDescriptor(object);
+			addM_directionPropertyDescriptor(object);
+			addM_anglePoint1PropertyDescriptor(object);
+			addM_anglePoint2PropertyDescriptor(object);
+			addM_line_stylePropertyDescriptor(object);
+			addM_SourcePortPropertyDescriptor(object);
+			addM_TargetPortPropertyDescriptor(object);
+			addM_ShowNamePropertyDescriptor(object);
+			addM_ShowStereotypePropertyDescriptor(object);
+			addM_lineWidthPropertyDescriptor(object);
+			addM_arrowPropertyDescriptor(object);
+		}
+		return itemPropertyDescriptors;
+	}
+
+	/**
+	 * This adds a property descriptor for the MpModel Object feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_pModelObjectPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIInheritance_m_pModelObject_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIInheritance_m_pModelObject_feature", "_UI_CGIInheritance_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIInheritance_M_pModelObject(),
+				 true,
+				 false,
+				 true,
+				 null,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the MpParent feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_pParentPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIInheritance_m_pParent_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIInheritance_m_pParent_feature", "_UI_CGIInheritance_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIInheritance_M_pParent(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the MpSource feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_pSourcePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIInheritance_m_pSource_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIInheritance_m_pSource_feature", "_UI_CGIInheritance_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIInheritance_M_pSource(),
+				 true,
+				 false,
+				 true,
+				 null,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Msource Type feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_sourceTypePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIInheritance_m_sourceType_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIInheritance_m_sourceType_feature", "_UI_CGIInheritance_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIInheritance_M_sourceType(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the MpTarget feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_pTargetPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIInheritance_m_pTarget_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIInheritance_m_pTarget_feature", "_UI_CGIInheritance_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIInheritance_M_pTarget(),
+				 true,
+				 false,
+				 true,
+				 null,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Mtarget Type feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_targetTypePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIInheritance_m_targetType_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIInheritance_m_targetType_feature", "_UI_CGIInheritance_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIInheritance_M_targetType(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Mdirection feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_directionPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIInheritance_m_direction_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIInheritance_m_direction_feature", "_UI_CGIInheritance_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIInheritance_M_direction(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Mangle Point1 feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_anglePoint1PropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIInheritance_m_anglePoint1_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIInheritance_m_anglePoint1_feature", "_UI_CGIInheritance_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIInheritance_M_anglePoint1(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Mangle Point2 feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_anglePoint2PropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIInheritance_m_anglePoint2_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIInheritance_m_anglePoint2_feature", "_UI_CGIInheritance_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIInheritance_M_anglePoint2(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Mline style feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_line_stylePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIInheritance_m_line_style_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIInheritance_m_line_style_feature", "_UI_CGIInheritance_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIInheritance_M_line_style(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the MSource Port feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_SourcePortPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIInheritance_m_SourcePort_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIInheritance_m_SourcePort_feature", "_UI_CGIInheritance_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIInheritance_M_SourcePort(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the MTarget Port feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_TargetPortPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIInheritance_m_TargetPort_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIInheritance_m_TargetPort_feature", "_UI_CGIInheritance_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIInheritance_M_TargetPort(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the MShow Name feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_ShowNamePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIInheritance_m_ShowName_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIInheritance_m_ShowName_feature", "_UI_CGIInheritance_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIInheritance_M_ShowName(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the MShow Stereotype feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_ShowStereotypePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIInheritance_m_ShowStereotype_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIInheritance_m_ShowStereotype_feature", "_UI_CGIInheritance_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIInheritance_M_ShowStereotype(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Mline Width feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_lineWidthPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIInheritance_m_lineWidth_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIInheritance_m_lineWidth_feature", "_UI_CGIInheritance_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIInheritance_M_lineWidth(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Marrow feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_arrowPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIInheritance_m_arrow_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIInheritance_m_arrow_feature", "_UI_CGIInheritance_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIInheritance_M_arrow(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This specifies how to implement {@link #getChildren} and is used to deduce an appropriate feature for an
+	 * {@link org.eclipse.emf.edit.command.AddCommand}, {@link org.eclipse.emf.edit.command.RemoveCommand} or
+	 * {@link org.eclipse.emf.edit.command.MoveCommand} in {@link #createCommand}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Collection<? extends EStructuralFeature> getChildrenFeatures(Object object) {
+		if (childrenFeatures == null) {
+			super.getChildrenFeatures(object);
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getCGIInheritance_M_rpn());
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getCGIInheritance_Properties());
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getCGIInheritance_M_color());
+		}
+		return childrenFeatures;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EStructuralFeature getChildFeature(Object object, Object child) {
+		// Check the type of the specified child object and return the proper feature to use for
+		// adding (see {@link AddCommand}) it as a child.
+
+		return super.getChildFeature(object, child);
+	}
+
+	/**
+	 * This returns CGIInheritance.gif.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object getImage(Object object) {
+		return overlayImage(object, getResourceLocator().getImage("full/obj16/CGIInheritance")); //$NON-NLS-1$
+	}
+
+	/**
+	 * This returns the label text for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String getText(Object object) {
+		String label = ((CGIInheritance)object).getId();
+		return label == null || label.length() == 0 ?
+			getString("_UI_CGIInheritance_type") : //$NON-NLS-1$
+			getString("_UI_CGIInheritance_type") + " " + label; //$NON-NLS-1$ //$NON-NLS-2$
+	}
+	
+
+	/**
+	 * This handles model notifications by calling {@link #updateChildren} to update any cached
+	 * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void notifyChanged(Notification notification) {
+		updateChildren(notification);
+
+		switch (notification.getFeatureID(CGIInheritance.class)) {
+			case UMLRpyPackage.CGI_INHERITANCE__MPPARENT:
+			case UMLRpyPackage.CGI_INHERITANCE__MSOURCE_TYPE:
+			case UMLRpyPackage.CGI_INHERITANCE__MTARGET_TYPE:
+			case UMLRpyPackage.CGI_INHERITANCE__MDIRECTION:
+			case UMLRpyPackage.CGI_INHERITANCE__MANGLE_POINT1:
+			case UMLRpyPackage.CGI_INHERITANCE__MANGLE_POINT2:
+			case UMLRpyPackage.CGI_INHERITANCE__MLINE_STYLE:
+			case UMLRpyPackage.CGI_INHERITANCE__MSOURCE_PORT:
+			case UMLRpyPackage.CGI_INHERITANCE__MTARGET_PORT:
+			case UMLRpyPackage.CGI_INHERITANCE__MSHOW_NAME:
+			case UMLRpyPackage.CGI_INHERITANCE__MSHOW_STEREOTYPE:
+			case UMLRpyPackage.CGI_INHERITANCE__MLINE_WIDTH:
+			case UMLRpyPackage.CGI_INHERITANCE__MARROW:
+				fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), false, true));
+				return;
+			case UMLRpyPackage.CGI_INHERITANCE__MRPN:
+			case UMLRpyPackage.CGI_INHERITANCE__PROPERTIES:
+			case UMLRpyPackage.CGI_INHERITANCE__MCOLOR:
+				fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), true, false));
+				return;
+		}
+		super.notifyChanged(notification);
+	}
+
+	/**
+	 * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children
+	 * that can be created under this object.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) {
+		super.collectNewChildDescriptors(newChildDescriptors, object);
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGIInheritance_M_rpn(),
+				 UMLRpyFactory.eINSTANCE.createCGIText()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGIInheritance_Properties(),
+				 UMLRpyFactory.eINSTANCE.createIPropertyContainer()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGIInheritance_M_color(),
+				 UMLRpyFactory.eINSTANCE.createIColor()));
+	}
+
+	/**
+	 * This returns the label text for {@link org.eclipse.emf.edit.command.CreateChildCommand}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String getCreateChildText(Object owner, Object feature, Object child, Collection<?> selection) {
+		Object childFeature = feature;
+		Object childObject = child;
+
+		boolean qualify =
+			childFeature == UMLRpyPackage.eINSTANCE.getGraphElementsType_M_name() ||
+			childFeature == UMLRpyPackage.eINSTANCE.getCGIInheritance_M_rpn();
+
+		if (qualify) {
+			return getString
+				("_UI_CreateChild_text2", //$NON-NLS-1$
+				 new Object[] { getTypeText(childObject), getFeatureText(childFeature), getTypeText(owner) });
+		}
+		return super.getCreateChildText(owner, feature, child, selection);
+	}
+
+}
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/CGIMFCCtrlItemProvider.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/CGIMFCCtrlItemProvider.java
new file mode 100755
index 0000000..d01a4fb
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/CGIMFCCtrlItemProvider.java
@@ -0,0 +1,638 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.provider;
+
+
+import java.util.Collection;
+import java.util.List;
+
+import org.eclipse.emf.common.notify.AdapterFactory;
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.ecore.EStructuralFeature;
+
+import org.eclipse.emf.edit.provider.ComposeableAdapterFactory;
+import org.eclipse.emf.edit.provider.IItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.ItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.ViewerNotification;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMFCCtrl;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyFactory;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMFCCtrl} object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class CGIMFCCtrlItemProvider extends GraphElementsTypeItemProvider {
+	/**
+	 * This constructs an instance from a factory and a notifier.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public CGIMFCCtrlItemProvider(AdapterFactory adapterFactory) {
+		super(adapterFactory);
+	}
+
+	/**
+	 * This returns the property descriptors for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) {
+		if (itemPropertyDescriptors == null) {
+			super.getPropertyDescriptors(object);
+
+			addM_pModelObjectPropertyDescriptor(object);
+			addM_pParentPropertyDescriptor(object);
+			addM_transformPropertyDescriptor(object);
+			addM_polygonPropertyDescriptor(object);
+			addM_nNameFormatPropertyDescriptor(object);
+			addM_nIsNameFormatPropertyDescriptor(object);
+			addCompartmentsPropertyDescriptor(object);
+			addM_csModelObjPathPropertyDescriptor(object);
+			addM_csNamePropertyDescriptor(object);
+			addM_csButtonCaptionPropertyDescriptor(object);
+		}
+		return itemPropertyDescriptors;
+	}
+
+	/**
+	 * This adds a property descriptor for the MpModel Object feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_pModelObjectPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIMFCCtrl_m_pModelObject_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIMFCCtrl_m_pModelObject_feature", "_UI_CGIMFCCtrl_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIMFCCtrl_M_pModelObject(),
+				 true,
+				 false,
+				 true,
+				 null,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the MpParent feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_pParentPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIMFCCtrl_m_pParent_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIMFCCtrl_m_pParent_feature", "_UI_CGIMFCCtrl_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIMFCCtrl_M_pParent(),
+				 true,
+				 false,
+				 true,
+				 null,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Mtransform feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_transformPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIMFCCtrl_m_transform_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIMFCCtrl_m_transform_feature", "_UI_CGIMFCCtrl_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIMFCCtrl_M_transform(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Mpolygon feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_polygonPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIMFCCtrl_m_polygon_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIMFCCtrl_m_polygon_feature", "_UI_CGIMFCCtrl_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIMFCCtrl_M_polygon(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the MnName Format feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_nNameFormatPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIMFCCtrl_m_nNameFormat_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIMFCCtrl_m_nNameFormat_feature", "_UI_CGIMFCCtrl_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIMFCCtrl_M_nNameFormat(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the MnIs Name Format feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_nIsNameFormatPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIMFCCtrl_m_nIsNameFormat_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIMFCCtrl_m_nIsNameFormat_feature", "_UI_CGIMFCCtrl_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIMFCCtrl_M_nIsNameFormat(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Compartments feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addCompartmentsPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIMFCCtrl_Compartments_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIMFCCtrl_Compartments_feature", "_UI_CGIMFCCtrl_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIMFCCtrl_Compartments(),
+				 true,
+				 false,
+				 true,
+				 null,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Mcs Model Obj Path feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_csModelObjPathPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIMFCCtrl_m_csModelObjPath_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIMFCCtrl_m_csModelObjPath_feature", "_UI_CGIMFCCtrl_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIMFCCtrl_M_csModelObjPath(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Mcs Name feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_csNamePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIMFCCtrl_m_csName_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIMFCCtrl_m_csName_feature", "_UI_CGIMFCCtrl_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIMFCCtrl_M_csName(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Mcs Button Caption feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_csButtonCaptionPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIMFCCtrl_m_csButtonCaption_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIMFCCtrl_m_csButtonCaption_feature", "_UI_CGIMFCCtrl_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIMFCCtrl_M_csButtonCaption(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This specifies how to implement {@link #getChildren} and is used to deduce an appropriate feature for an
+	 * {@link org.eclipse.emf.edit.command.AddCommand}, {@link org.eclipse.emf.edit.command.RemoveCommand} or
+	 * {@link org.eclipse.emf.edit.command.MoveCommand} in {@link #createCommand}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Collection<? extends EStructuralFeature> getChildrenFeatures(Object object) {
+		if (childrenFeatures == null) {
+			super.getChildrenFeatures(object);
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getCGIMFCCtrl_Properties());
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getCGIMFCCtrl_M_PartsArray());
+		}
+		return childrenFeatures;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EStructuralFeature getChildFeature(Object object, Object child) {
+		// Check the type of the specified child object and return the proper feature to use for
+		// adding (see {@link AddCommand}) it as a child.
+
+		return super.getChildFeature(object, child);
+	}
+
+	/**
+	 * This returns CGIMFCCtrl.gif.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object getImage(Object object) {
+		return overlayImage(object, getResourceLocator().getImage("full/obj16/CGIMFCCtrl")); //$NON-NLS-1$
+	}
+
+	/**
+	 * This returns the label text for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String getText(Object object) {
+		String label = ((CGIMFCCtrl)object).getId();
+		return label == null || label.length() == 0 ?
+			getString("_UI_CGIMFCCtrl_type") : //$NON-NLS-1$
+			getString("_UI_CGIMFCCtrl_type") + " " + label; //$NON-NLS-1$ //$NON-NLS-2$
+	}
+	
+
+	/**
+	 * This handles model notifications by calling {@link #updateChildren} to update any cached
+	 * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void notifyChanged(Notification notification) {
+		updateChildren(notification);
+
+		switch (notification.getFeatureID(CGIMFCCtrl.class)) {
+			case UMLRpyPackage.CGIMFC_CTRL__MTRANSFORM:
+			case UMLRpyPackage.CGIMFC_CTRL__MPOLYGON:
+			case UMLRpyPackage.CGIMFC_CTRL__MNNAME_FORMAT:
+			case UMLRpyPackage.CGIMFC_CTRL__MNIS_NAME_FORMAT:
+			case UMLRpyPackage.CGIMFC_CTRL__MCS_MODEL_OBJ_PATH:
+			case UMLRpyPackage.CGIMFC_CTRL__MCS_NAME:
+			case UMLRpyPackage.CGIMFC_CTRL__MCS_BUTTON_CAPTION:
+				fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), false, true));
+				return;
+			case UMLRpyPackage.CGIMFC_CTRL__PROPERTIES:
+			case UMLRpyPackage.CGIMFC_CTRL__MPARTS_ARRAY:
+				fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), true, false));
+				return;
+		}
+		super.notifyChanged(notification);
+	}
+
+	/**
+	 * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children
+	 * that can be created under this object.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) {
+		super.collectNewChildDescriptors(newChildDescriptors, object);
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGIMFCCtrl_Properties(),
+				 UMLRpyFactory.eINSTANCE.createIPropertyContainer()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGIMFCCtrl_M_PartsArray(),
+				 UMLRpyFactory.eINSTANCE.createIState()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGIMFCCtrl_M_PartsArray(),
+				 UMLRpyFactory.eINSTANCE.createIAcceptEventAction()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGIMFCCtrl_M_PartsArray(),
+				 UMLRpyFactory.eINSTANCE.createIAcceptTimeEvent()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGIMFCCtrl_M_PartsArray(),
+				 UMLRpyFactory.eINSTANCE.createIActivityDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGIMFCCtrl_M_PartsArray(),
+				 UMLRpyFactory.eINSTANCE.createIActivityGraph()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGIMFCCtrl_M_PartsArray(),
+				 UMLRpyFactory.eINSTANCE.createIActor()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGIMFCCtrl_M_PartsArray(),
+				 UMLRpyFactory.eINSTANCE.createIClass()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGIMFCCtrl_M_PartsArray(),
+				 UMLRpyFactory.eINSTANCE.createIAssociationClass()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGIMFCCtrl_M_PartsArray(),
+				 UMLRpyFactory.eINSTANCE.createIAttribute()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGIMFCCtrl_M_PartsArray(),
+				 UMLRpyFactory.eINSTANCE.createICallOperation()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGIMFCCtrl_M_PartsArray(),
+				 UMLRpyFactory.eINSTANCE.createICodeGenConfigInfo()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGIMFCCtrl_M_PartsArray(),
+				 UMLRpyFactory.eINSTANCE.createIDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGIMFCCtrl_M_PartsArray(),
+				 UMLRpyFactory.eINSTANCE.createICollaborationDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGIMFCCtrl_M_PartsArray(),
+				 UMLRpyFactory.eINSTANCE.createIComponent()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGIMFCCtrl_M_PartsArray(),
+				 UMLRpyFactory.eINSTANCE.createIComponentDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGIMFCCtrl_M_PartsArray(),
+				 UMLRpyFactory.eINSTANCE.createIDefaultDrvdTrans()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGIMFCCtrl_M_PartsArray(),
+				 UMLRpyFactory.eINSTANCE.createIDependency()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGIMFCCtrl_M_PartsArray(),
+				 UMLRpyFactory.eINSTANCE.createIDeploymentDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGIMFCCtrl_M_PartsArray(),
+				 UMLRpyFactory.eINSTANCE.createIHyperLink()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGIMFCCtrl_M_PartsArray(),
+				 UMLRpyFactory.eINSTANCE.createIInformationFlow()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGIMFCCtrl_M_PartsArray(),
+				 UMLRpyFactory.eINSTANCE.createIInformationItem()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGIMFCCtrl_M_PartsArray(),
+				 UMLRpyFactory.eINSTANCE.createIMSC()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGIMFCCtrl_M_PartsArray(),
+				 UMLRpyFactory.eINSTANCE.createIMatrixInstance()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGIMFCCtrl_M_PartsArray(),
+				 UMLRpyFactory.eINSTANCE.createIMessage()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGIMFCCtrl_M_PartsArray(),
+				 UMLRpyFactory.eINSTANCE.createIModule()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGIMFCCtrl_M_PartsArray(),
+				 UMLRpyFactory.eINSTANCE.createIObjectLink()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGIMFCCtrl_M_PartsArray(),
+				 UMLRpyFactory.eINSTANCE.createIObjectModelDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGIMFCCtrl_M_PartsArray(),
+				 UMLRpyFactory.eINSTANCE.createIObjectNode()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGIMFCCtrl_M_PartsArray(),
+				 UMLRpyFactory.eINSTANCE.createIPanelDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGIMFCCtrl_M_PartsArray(),
+				 UMLRpyFactory.eINSTANCE.createIPart()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGIMFCCtrl_M_PartsArray(),
+				 UMLRpyFactory.eINSTANCE.createIPrimitiveOperation()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGIMFCCtrl_M_PartsArray(),
+				 UMLRpyFactory.eINSTANCE.createIProfile()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGIMFCCtrl_M_PartsArray(),
+				 UMLRpyFactory.eINSTANCE.createIReception()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGIMFCCtrl_M_PartsArray(),
+				 UMLRpyFactory.eINSTANCE.createIReferenceActivity()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGIMFCCtrl_M_PartsArray(),
+				 UMLRpyFactory.eINSTANCE.createIRequirement()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGIMFCCtrl_M_PartsArray(),
+				 UMLRpyFactory.eINSTANCE.createISequenceDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGIMFCCtrl_M_PartsArray(),
+				 UMLRpyFactory.eINSTANCE.createIStateChart()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGIMFCCtrl_M_PartsArray(),
+				 UMLRpyFactory.eINSTANCE.createIStateChartDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGIMFCCtrl_M_PartsArray(),
+				 UMLRpyFactory.eINSTANCE.createIStereotype()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGIMFCCtrl_M_PartsArray(),
+				 UMLRpyFactory.eINSTANCE.createIStructureDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGIMFCCtrl_M_PartsArray(),
+				 UMLRpyFactory.eINSTANCE.createISubsystem()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGIMFCCtrl_M_PartsArray(),
+				 UMLRpyFactory.eINSTANCE.createISysMLPort()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGIMFCCtrl_M_PartsArray(),
+				 UMLRpyFactory.eINSTANCE.createITableInstance()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGIMFCCtrl_M_PartsArray(),
+				 UMLRpyFactory.eINSTANCE.createITransition()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGIMFCCtrl_M_PartsArray(),
+				 UMLRpyFactory.eINSTANCE.createIType()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGIMFCCtrl_M_PartsArray(),
+				 UMLRpyFactory.eINSTANCE.createIUCDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGIMFCCtrl_M_PartsArray(),
+				 UMLRpyFactory.eINSTANCE.createIUseCase()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGIMFCCtrl_M_PartsArray(),
+				 UMLRpyFactory.eINSTANCE.createIUseCaseDiagram()));
+	}
+
+}
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/CGIMessageLabelItemProvider.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/CGIMessageLabelItemProvider.java
new file mode 100755
index 0000000..a5b146e
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/CGIMessageLabelItemProvider.java
@@ -0,0 +1,212 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.provider;
+
+
+import java.util.Collection;
+import java.util.List;
+
+import org.eclipse.emf.common.notify.AdapterFactory;
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.edit.provider.ComposeableAdapterFactory;
+import org.eclipse.emf.edit.provider.IItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.ItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.ViewerNotification;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMessageLabel;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMessageLabel} object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class CGIMessageLabelItemProvider extends GraphElementsTypeItemProvider {
+	/**
+	 * This constructs an instance from a factory and a notifier.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public CGIMessageLabelItemProvider(AdapterFactory adapterFactory) {
+		super(adapterFactory);
+	}
+
+	/**
+	 * This returns the property descriptors for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) {
+		if (itemPropertyDescriptors == null) {
+			super.getPropertyDescriptors(object);
+
+			addM_pModelObjectPropertyDescriptor(object);
+			addM_pParentPropertyDescriptor(object);
+			addM_pCommunicationConnectionPropertyDescriptor(object);
+			addPercentPropertyDescriptor(object);
+		}
+		return itemPropertyDescriptors;
+	}
+
+	/**
+	 * This adds a property descriptor for the MpModel Object feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_pModelObjectPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIMessageLabel_m_pModelObject_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIMessageLabel_m_pModelObject_feature", "_UI_CGIMessageLabel_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIMessageLabel_M_pModelObject(),
+				 true,
+				 false,
+				 true,
+				 null,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the MpParent feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_pParentPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIMessageLabel_m_pParent_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIMessageLabel_m_pParent_feature", "_UI_CGIMessageLabel_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIMessageLabel_M_pParent(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the MpCommunication Connection feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_pCommunicationConnectionPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIMessageLabel_m_pCommunicationConnection_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIMessageLabel_m_pCommunicationConnection_feature", "_UI_CGIMessageLabel_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIMessageLabel_M_pCommunicationConnection(),
+				 true,
+				 false,
+				 true,
+				 null,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Percent feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addPercentPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIMessageLabel_percent_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIMessageLabel_percent_feature", "_UI_CGIMessageLabel_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIMessageLabel_Percent(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This returns CGIMessageLabel.gif.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object getImage(Object object) {
+		return overlayImage(object, getResourceLocator().getImage("full/obj16/CGIMessageLabel")); //$NON-NLS-1$
+	}
+
+	/**
+	 * This returns the label text for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String getText(Object object) {
+		String label = ((CGIMessageLabel)object).getId();
+		return label == null || label.length() == 0 ?
+			getString("_UI_CGIMessageLabel_type") : //$NON-NLS-1$
+			getString("_UI_CGIMessageLabel_type") + " " + label; //$NON-NLS-1$ //$NON-NLS-2$
+	}
+	
+
+	/**
+	 * This handles model notifications by calling {@link #updateChildren} to update any cached
+	 * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void notifyChanged(Notification notification) {
+		updateChildren(notification);
+
+		switch (notification.getFeatureID(CGIMessageLabel.class)) {
+			case UMLRpyPackage.CGI_MESSAGE_LABEL__MPPARENT:
+			case UMLRpyPackage.CGI_MESSAGE_LABEL__PERCENT:
+				fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), false, true));
+				return;
+		}
+		super.notifyChanged(notification);
+	}
+
+	/**
+	 * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children
+	 * that can be created under this object.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) {
+		super.collectNewChildDescriptors(newChildDescriptors, object);
+	}
+
+}
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/CGIMscChartItemProvider.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/CGIMscChartItemProvider.java
new file mode 100755
index 0000000..29b84b2
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/CGIMscChartItemProvider.java
@@ -0,0 +1,880 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.provider;
+
+
+import java.util.Collection;
+import java.util.List;
+
+import org.eclipse.emf.common.notify.AdapterFactory;
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.common.util.ResourceLocator;
+
+import org.eclipse.emf.ecore.EStructuralFeature;
+
+import org.eclipse.emf.edit.provider.ComposeableAdapterFactory;
+import org.eclipse.emf.edit.provider.IEditingDomainItemProvider;
+import org.eclipse.emf.edit.provider.IItemLabelProvider;
+import org.eclipse.emf.edit.provider.IItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.IItemPropertySource;
+import org.eclipse.emf.edit.provider.IStructuredItemContentProvider;
+import org.eclipse.emf.edit.provider.ITreeItemContentProvider;
+import org.eclipse.emf.edit.provider.ItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.ItemProviderAdapter;
+import org.eclipse.emf.edit.provider.ViewerNotification;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscChart;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyFactory;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscChart} object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class CGIMscChartItemProvider 
+	extends ItemProviderAdapter
+	implements
+		IEditingDomainItemProvider,
+		IStructuredItemContentProvider,
+		ITreeItemContentProvider,
+		IItemLabelProvider,
+		IItemPropertySource {
+	/**
+	 * This constructs an instance from a factory and a notifier.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public CGIMscChartItemProvider(AdapterFactory adapterFactory) {
+		super(adapterFactory);
+	}
+
+	/**
+	 * This returns the property descriptors for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) {
+		if (itemPropertyDescriptors == null) {
+			super.getPropertyDescriptors(object);
+
+			addVLadderMarginPropertyDescriptor(object);
+			addM_usingActivationBarPropertyDescriptor(object);
+			addIdPropertyDescriptor(object);
+			addM_typePropertyDescriptor(object);
+			addM_pModelObjectPropertyDescriptor(object);
+			addM_pParentPropertyDescriptor(object);
+			addM_drawBehaviorPropertyDescriptor(object);
+			addM_bIsPreferencesInitializedPropertyDescriptor(object);
+			addElementListPropertyDescriptor(object);
+			addM_accessPropertyDescriptor(object);
+			addM_modifiedPropertyDescriptor(object);
+			addM_fileVersionPropertyDescriptor(object);
+			addM_nModifyDatePropertyDescriptor(object);
+			addM_nCreateDatePropertyDescriptor(object);
+			addM_creatorPropertyDescriptor(object);
+			addM_bScaleWithZoomPropertyDescriptor(object);
+			addM_arrowStylePropertyDescriptor(object);
+			addM_pRootPropertyDescriptor(object);
+			addM_currentLeftTopPropertyDescriptor(object);
+			addM_currentRightBottomPropertyDescriptor(object);
+		}
+		return itemPropertyDescriptors;
+	}
+
+	/**
+	 * This adds a property descriptor for the VLadder Margin feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addVLadderMarginPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIMscChart_vLadderMargin_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIMscChart_vLadderMargin_feature", "_UI_CGIMscChart_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIMscChart_VLadderMargin(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Musing Activation Bar feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_usingActivationBarPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIMscChart_m_usingActivationBar_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIMscChart_m_usingActivationBar_feature", "_UI_CGIMscChart_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIMscChart_M_usingActivationBar(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Id feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addIdPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIMscChart_id_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIMscChart_id_feature", "_UI_CGIMscChart_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIMscChart_Id(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Mtype feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_typePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIMscChart_m_type_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIMscChart_m_type_feature", "_UI_CGIMscChart_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIMscChart_M_type(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the MpModel Object feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_pModelObjectPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIMscChart_m_pModelObject_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIMscChart_m_pModelObject_feature", "_UI_CGIMscChart_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIMscChart_M_pModelObject(),
+				 true,
+				 false,
+				 true,
+				 null,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the MpParent feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_pParentPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIMscChart_m_pParent_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIMscChart_m_pParent_feature", "_UI_CGIMscChart_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIMscChart_M_pParent(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Mdraw Behavior feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_drawBehaviorPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIMscChart_m_drawBehavior_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIMscChart_m_drawBehavior_feature", "_UI_CGIMscChart_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIMscChart_M_drawBehavior(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the MbIs Preferences Initialized feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_bIsPreferencesInitializedPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIMscChart_m_bIsPreferencesInitialized_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIMscChart_m_bIsPreferencesInitialized_feature", "_UI_CGIMscChart_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIMscChart_M_bIsPreferencesInitialized(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Element List feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addElementListPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIMscChart_elementList_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIMscChart_elementList_feature", "_UI_CGIMscChart_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIMscChart_ElementList(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Maccess feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_accessPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIMscChart_m_access_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIMscChart_m_access_feature", "_UI_CGIMscChart_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIMscChart_M_access(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Mmodified feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_modifiedPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIMscChart_m_modified_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIMscChart_m_modified_feature", "_UI_CGIMscChart_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIMscChart_M_modified(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Mfile Version feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_fileVersionPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIMscChart_m_fileVersion_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIMscChart_m_fileVersion_feature", "_UI_CGIMscChart_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIMscChart_M_fileVersion(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the MnModify Date feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_nModifyDatePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIMscChart_m_nModifyDate_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIMscChart_m_nModifyDate_feature", "_UI_CGIMscChart_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIMscChart_M_nModifyDate(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the MnCreate Date feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_nCreateDatePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIMscChart_m_nCreateDate_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIMscChart_m_nCreateDate_feature", "_UI_CGIMscChart_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIMscChart_M_nCreateDate(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Mcreator feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_creatorPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIMscChart_m_creator_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIMscChart_m_creator_feature", "_UI_CGIMscChart_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIMscChart_M_creator(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the MbScale With Zoom feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_bScaleWithZoomPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIMscChart_m_bScaleWithZoom_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIMscChart_m_bScaleWithZoom_feature", "_UI_CGIMscChart_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIMscChart_M_bScaleWithZoom(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Marrow Style feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_arrowStylePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIMscChart_m_arrowStyle_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIMscChart_m_arrowStyle_feature", "_UI_CGIMscChart_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIMscChart_M_arrowStyle(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the MpRoot feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_pRootPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIMscChart_m_pRoot_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIMscChart_m_pRoot_feature", "_UI_CGIMscChart_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIMscChart_M_pRoot(),
+				 true,
+				 false,
+				 true,
+				 null,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Mcurrent Left Top feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_currentLeftTopPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIMscChart_m_currentLeftTop_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIMscChart_m_currentLeftTop_feature", "_UI_CGIMscChart_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIMscChart_M_currentLeftTop(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Mcurrent Right Bottom feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_currentRightBottomPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIMscChart_m_currentRightBottom_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIMscChart_m_currentRightBottom_feature", "_UI_CGIMscChart_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIMscChart_M_currentRightBottom(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This specifies how to implement {@link #getChildren} and is used to deduce an appropriate feature for an
+	 * {@link org.eclipse.emf.edit.command.AddCommand}, {@link org.eclipse.emf.edit.command.RemoveCommand} or
+	 * {@link org.eclipse.emf.edit.command.MoveCommand} in {@link #createCommand}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Collection<? extends EStructuralFeature> getChildrenFeatures(Object object) {
+		if (childrenFeatures == null) {
+			super.getChildrenFeatures(object);
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getCGIMscChart_M_name());
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getCGIMscChart_GraphElements());
+		}
+		return childrenFeatures;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EStructuralFeature getChildFeature(Object object, Object child) {
+		// Check the type of the specified child object and return the proper feature to use for
+		// adding (see {@link AddCommand}) it as a child.
+
+		return super.getChildFeature(object, child);
+	}
+
+	/**
+	 * This returns CGIMscChart.gif.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object getImage(Object object) {
+		return overlayImage(object, getResourceLocator().getImage("full/obj16/CGIMscChart")); //$NON-NLS-1$
+	}
+
+	/**
+	 * This returns the label text for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String getText(Object object) {
+		String label = ((CGIMscChart)object).getId();
+		return label == null || label.length() == 0 ?
+			getString("_UI_CGIMscChart_type") : //$NON-NLS-1$
+			getString("_UI_CGIMscChart_type") + " " + label; //$NON-NLS-1$ //$NON-NLS-2$
+	}
+	
+
+	/**
+	 * This handles model notifications by calling {@link #updateChildren} to update any cached
+	 * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void notifyChanged(Notification notification) {
+		updateChildren(notification);
+
+		switch (notification.getFeatureID(CGIMscChart.class)) {
+			case UMLRpyPackage.CGI_MSC_CHART__VLADDER_MARGIN:
+			case UMLRpyPackage.CGI_MSC_CHART__MUSING_ACTIVATION_BAR:
+			case UMLRpyPackage.CGI_MSC_CHART__ID:
+			case UMLRpyPackage.CGI_MSC_CHART__MTYPE:
+			case UMLRpyPackage.CGI_MSC_CHART__MPPARENT:
+			case UMLRpyPackage.CGI_MSC_CHART__MDRAW_BEHAVIOR:
+			case UMLRpyPackage.CGI_MSC_CHART__MBIS_PREFERENCES_INITIALIZED:
+			case UMLRpyPackage.CGI_MSC_CHART__ELEMENT_LIST:
+			case UMLRpyPackage.CGI_MSC_CHART__MACCESS:
+			case UMLRpyPackage.CGI_MSC_CHART__MMODIFIED:
+			case UMLRpyPackage.CGI_MSC_CHART__MFILE_VERSION:
+			case UMLRpyPackage.CGI_MSC_CHART__MNMODIFY_DATE:
+			case UMLRpyPackage.CGI_MSC_CHART__MNCREATE_DATE:
+			case UMLRpyPackage.CGI_MSC_CHART__MCREATOR:
+			case UMLRpyPackage.CGI_MSC_CHART__MBSCALE_WITH_ZOOM:
+			case UMLRpyPackage.CGI_MSC_CHART__MARROW_STYLE:
+			case UMLRpyPackage.CGI_MSC_CHART__MCURRENT_LEFT_TOP:
+			case UMLRpyPackage.CGI_MSC_CHART__MCURRENT_RIGHT_BOTTOM:
+				fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), false, true));
+				return;
+			case UMLRpyPackage.CGI_MSC_CHART__MNAME:
+			case UMLRpyPackage.CGI_MSC_CHART__GRAPH_ELEMENTS:
+				fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), true, false));
+				return;
+		}
+		super.notifyChanged(notification);
+	}
+
+	/**
+	 * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children
+	 * that can be created under this object.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) {
+		super.collectNewChildDescriptors(newChildDescriptors, object);
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGIMscChart_M_name(),
+				 UMLRpyFactory.eINSTANCE.createCGIText()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGIMscChart_GraphElements(),
+				 UMLRpyFactory.eINSTANCE.createCGIActionState()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGIMscChart_GraphElements(),
+				 UMLRpyFactory.eINSTANCE.createCGIActiveX()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGIMscChart_GraphElements(),
+				 UMLRpyFactory.eINSTANCE.createCGIAnchor()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGIMscChart_GraphElements(),
+				 UMLRpyFactory.eINSTANCE.createCGIAnnotation()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGIMscChart_GraphElements(),
+				 UMLRpyFactory.eINSTANCE.createCGIArrow()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGIMscChart_GraphElements(),
+				 UMLRpyFactory.eINSTANCE.createCGIAssociationEnd()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGIMscChart_GraphElements(),
+				 UMLRpyFactory.eINSTANCE.createCGIAssociationRole()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGIMscChart_GraphElements(),
+				 UMLRpyFactory.eINSTANCE.createCGIBasicClass()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGIMscChart_GraphElements(),
+				 UMLRpyFactory.eINSTANCE.createCGIBlockState()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGIMscChart_GraphElements(),
+				 UMLRpyFactory.eINSTANCE.createCGIBox()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGIMscChart_GraphElements(),
+				 UMLRpyFactory.eINSTANCE.createCGIButtonArray()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGIMscChart_GraphElements(),
+				 UMLRpyFactory.eINSTANCE.createCGIClass()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGIMscChart_GraphElements(),
+				 UMLRpyFactory.eINSTANCE.createCGIClassifierRole()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGIMscChart_GraphElements(),
+				 UMLRpyFactory.eINSTANCE.createCGIComponent()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGIMscChart_GraphElements(),
+				 UMLRpyFactory.eINSTANCE.createCGICompositeClass()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGIMscChart_GraphElements(),
+				 UMLRpyFactory.eINSTANCE.createCGIConnector()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGIMscChart_GraphElements(),
+				 UMLRpyFactory.eINSTANCE.createCGIContainArrow()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGIMscChart_GraphElements(),
+				 UMLRpyFactory.eINSTANCE.createCGIDiagramFrame()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGIMscChart_GraphElements(),
+				 UMLRpyFactory.eINSTANCE.createCGIFreeShape()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGIMscChart_GraphElements(),
+				 UMLRpyFactory.eINSTANCE.createCGIFreeText()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGIMscChart_GraphElements(),
+				 UMLRpyFactory.eINSTANCE.createCGIGenericElement()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGIMscChart_GraphElements(),
+				 UMLRpyFactory.eINSTANCE.createCGIImage()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGIMscChart_GraphElements(),
+				 UMLRpyFactory.eINSTANCE.createCGIImageData()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGIMscChart_GraphElements(),
+				 UMLRpyFactory.eINSTANCE.createCGIInformationFlow()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGIMscChart_GraphElements(),
+				 UMLRpyFactory.eINSTANCE.createCGIInheritance()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGIMscChart_GraphElements(),
+				 UMLRpyFactory.eINSTANCE.createCGIMFCCtrl()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGIMscChart_GraphElements(),
+				 UMLRpyFactory.eINSTANCE.createCGIMessageLabel()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGIMscChart_GraphElements(),
+				 UMLRpyFactory.eINSTANCE.createCGIMscColumnCR()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGIMscChart_GraphElements(),
+				 UMLRpyFactory.eINSTANCE.createCGIMscConditionMark()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGIMscChart_GraphElements(),
+				 UMLRpyFactory.eINSTANCE.createCGIMscExecutionOccurrence()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGIMscChart_GraphElements(),
+				 UMLRpyFactory.eINSTANCE.createCGIMscInteractionOccurrence()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGIMscChart_GraphElements(),
+				 UMLRpyFactory.eINSTANCE.createCGIMscInteractionOperand()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGIMscChart_GraphElements(),
+				 UMLRpyFactory.eINSTANCE.createCGIMscInteractionOperator()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGIMscChart_GraphElements(),
+				 UMLRpyFactory.eINSTANCE.createCGIMscMessage()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGIMscChart_GraphElements(),
+				 UMLRpyFactory.eINSTANCE.createCGIObjectInstance()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGIMscChart_GraphElements(),
+				 UMLRpyFactory.eINSTANCE.createCGIObjectLink()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGIMscChart_GraphElements(),
+				 UMLRpyFactory.eINSTANCE.createCGIPackage()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGIMscChart_GraphElements(),
+				 UMLRpyFactory.eINSTANCE.createCGIPartition()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGIMscChart_GraphElements(),
+				 UMLRpyFactory.eINSTANCE.createCGIPortConnector()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGIMscChart_GraphElements(),
+				 UMLRpyFactory.eINSTANCE.createCGIState()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGIMscChart_GraphElements(),
+				 UMLRpyFactory.eINSTANCE.createCGISwimlaneFrame()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGIMscChart_GraphElements(),
+				 UMLRpyFactory.eINSTANCE.createCGITextBox()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGIMscChart_GraphElements(),
+				 UMLRpyFactory.eINSTANCE.createCGITrans()));
+	}
+
+	/**
+	 * Return the resource locator for this item provider's resources.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public ResourceLocator getResourceLocator() {
+		return rpymetamodelEditPlugin.INSTANCE;
+	}
+
+}
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/CGIMscColumnCRItemProvider.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/CGIMscColumnCRItemProvider.java
new file mode 100755
index 0000000..350f630
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/CGIMscColumnCRItemProvider.java
@@ -0,0 +1,354 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.provider;
+
+
+import java.util.Collection;
+import java.util.List;
+
+import org.eclipse.emf.common.notify.AdapterFactory;
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.ecore.EStructuralFeature;
+
+import org.eclipse.emf.edit.provider.ComposeableAdapterFactory;
+import org.eclipse.emf.edit.provider.IItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.ItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.ViewerNotification;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscColumnCR;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyFactory;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscColumnCR} object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class CGIMscColumnCRItemProvider extends GraphElementsTypeItemProvider {
+	/**
+	 * This constructs an instance from a factory and a notifier.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public CGIMscColumnCRItemProvider(AdapterFactory adapterFactory) {
+		super(adapterFactory);
+	}
+
+	/**
+	 * This returns the property descriptors for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) {
+		if (itemPropertyDescriptors == null) {
+			super.getPropertyDescriptors(object);
+
+			addM_pModelObjectPropertyDescriptor(object);
+			addM_pParentPropertyDescriptor(object);
+			addM_transformPropertyDescriptor(object);
+			addM_positionPropertyDescriptor(object);
+			addM_pInheritsFromPropertyDescriptor(object);
+			addM_nInheritanceMaskPropertyDescriptor(object);
+			addM_SubTypePropertyDescriptor(object);
+		}
+		return itemPropertyDescriptors;
+	}
+
+	/**
+	 * This adds a property descriptor for the MpModel Object feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_pModelObjectPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIMscColumnCR_m_pModelObject_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIMscColumnCR_m_pModelObject_feature", "_UI_CGIMscColumnCR_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIMscColumnCR_M_pModelObject(),
+				 true,
+				 false,
+				 true,
+				 null,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the MpParent feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_pParentPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIMscColumnCR_m_pParent_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIMscColumnCR_m_pParent_feature", "_UI_CGIMscColumnCR_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIMscColumnCR_M_pParent(),
+				 true,
+				 false,
+				 true,
+				 null,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Mtransform feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_transformPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIMscColumnCR_m_transform_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIMscColumnCR_m_transform_feature", "_UI_CGIMscColumnCR_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIMscColumnCR_M_transform(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Mposition feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_positionPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIMscColumnCR_m_position_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIMscColumnCR_m_position_feature", "_UI_CGIMscColumnCR_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIMscColumnCR_M_position(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the MpInherits From feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_pInheritsFromPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIMscColumnCR_m_pInheritsFrom_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIMscColumnCR_m_pInheritsFrom_feature", "_UI_CGIMscColumnCR_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIMscColumnCR_M_pInheritsFrom(),
+				 true,
+				 false,
+				 true,
+				 null,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the MnInheritance Mask feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_nInheritanceMaskPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIMscColumnCR_m_nInheritanceMask_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIMscColumnCR_m_nInheritanceMask_feature", "_UI_CGIMscColumnCR_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIMscColumnCR_M_nInheritanceMask(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the MSub Type feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_SubTypePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIMscColumnCR_m_SubType_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIMscColumnCR_m_SubType_feature", "_UI_CGIMscColumnCR_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIMscColumnCR_M_SubType(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This specifies how to implement {@link #getChildren} and is used to deduce an appropriate feature for an
+	 * {@link org.eclipse.emf.edit.command.AddCommand}, {@link org.eclipse.emf.edit.command.RemoveCommand} or
+	 * {@link org.eclipse.emf.edit.command.MoveCommand} in {@link #createCommand}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Collection<? extends EStructuralFeature> getChildrenFeatures(Object object) {
+		if (childrenFeatures == null) {
+			super.getChildrenFeatures(object);
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getCGIMscColumnCR_M_AdditionalLabel());
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getCGIMscColumnCR_Properties());
+		}
+		return childrenFeatures;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EStructuralFeature getChildFeature(Object object, Object child) {
+		// Check the type of the specified child object and return the proper feature to use for
+		// adding (see {@link AddCommand}) it as a child.
+
+		return super.getChildFeature(object, child);
+	}
+
+	/**
+	 * This returns CGIMscColumnCR.gif.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object getImage(Object object) {
+		return overlayImage(object, getResourceLocator().getImage("full/obj16/CGIMscColumnCR")); //$NON-NLS-1$
+	}
+
+	/**
+	 * This returns the label text for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String getText(Object object) {
+		String label = ((CGIMscColumnCR)object).getId();
+		return label == null || label.length() == 0 ?
+			getString("_UI_CGIMscColumnCR_type") : //$NON-NLS-1$
+			getString("_UI_CGIMscColumnCR_type") + " " + label; //$NON-NLS-1$ //$NON-NLS-2$
+	}
+	
+
+	/**
+	 * This handles model notifications by calling {@link #updateChildren} to update any cached
+	 * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void notifyChanged(Notification notification) {
+		updateChildren(notification);
+
+		switch (notification.getFeatureID(CGIMscColumnCR.class)) {
+			case UMLRpyPackage.CGI_MSC_COLUMN_CR__MTRANSFORM:
+			case UMLRpyPackage.CGI_MSC_COLUMN_CR__MPOSITION:
+			case UMLRpyPackage.CGI_MSC_COLUMN_CR__MNINHERITANCE_MASK:
+			case UMLRpyPackage.CGI_MSC_COLUMN_CR__MSUB_TYPE:
+				fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), false, true));
+				return;
+			case UMLRpyPackage.CGI_MSC_COLUMN_CR__MADDITIONAL_LABEL:
+			case UMLRpyPackage.CGI_MSC_COLUMN_CR__PROPERTIES:
+				fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), true, false));
+				return;
+		}
+		super.notifyChanged(notification);
+	}
+
+	/**
+	 * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children
+	 * that can be created under this object.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) {
+		super.collectNewChildDescriptors(newChildDescriptors, object);
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGIMscColumnCR_M_AdditionalLabel(),
+				 UMLRpyFactory.eINSTANCE.createCGIText()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGIMscColumnCR_Properties(),
+				 UMLRpyFactory.eINSTANCE.createIPropertyContainer()));
+	}
+
+	/**
+	 * This returns the label text for {@link org.eclipse.emf.edit.command.CreateChildCommand}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String getCreateChildText(Object owner, Object feature, Object child, Collection<?> selection) {
+		Object childFeature = feature;
+		Object childObject = child;
+
+		boolean qualify =
+			childFeature == UMLRpyPackage.eINSTANCE.getGraphElementsType_M_name() ||
+			childFeature == UMLRpyPackage.eINSTANCE.getCGIMscColumnCR_M_AdditionalLabel();
+
+		if (qualify) {
+			return getString
+				("_UI_CreateChild_text2", //$NON-NLS-1$
+				 new Object[] { getTypeText(childObject), getFeatureText(childFeature), getTypeText(owner) });
+		}
+		return super.getCreateChildText(owner, feature, child, selection);
+	}
+
+}
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/CGIMscConditionMarkItemProvider.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/CGIMscConditionMarkItemProvider.java
new file mode 100755
index 0000000..415c3dd
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/CGIMscConditionMarkItemProvider.java
@@ -0,0 +1,324 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.provider;
+
+
+import java.util.Collection;
+import java.util.List;
+
+import org.eclipse.emf.common.notify.AdapterFactory;
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.ecore.EStructuralFeature;
+
+import org.eclipse.emf.edit.provider.ComposeableAdapterFactory;
+import org.eclipse.emf.edit.provider.IItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.ItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.ViewerNotification;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscConditionMark;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyFactory;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscConditionMark} object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class CGIMscConditionMarkItemProvider extends GraphElementsTypeItemProvider {
+	/**
+	 * This constructs an instance from a factory and a notifier.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public CGIMscConditionMarkItemProvider(AdapterFactory adapterFactory) {
+		super(adapterFactory);
+	}
+
+	/**
+	 * This returns the property descriptors for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) {
+		if (itemPropertyDescriptors == null) {
+			super.getPropertyDescriptors(object);
+
+			addM_pModelObjectPropertyDescriptor(object);
+			addM_pParentPropertyDescriptor(object);
+			addM_transformPropertyDescriptor(object);
+			addM_polygonPropertyDescriptor(object);
+			addM_nNameFormatPropertyDescriptor(object);
+			addM_nIsNameFormatPropertyDescriptor(object);
+			addCompartmentsPropertyDescriptor(object);
+		}
+		return itemPropertyDescriptors;
+	}
+
+	/**
+	 * This adds a property descriptor for the MpModel Object feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_pModelObjectPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIMscConditionMark_m_pModelObject_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIMscConditionMark_m_pModelObject_feature", "_UI_CGIMscConditionMark_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIMscConditionMark_M_pModelObject(),
+				 true,
+				 false,
+				 true,
+				 null,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the MpParent feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_pParentPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIMscConditionMark_m_pParent_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIMscConditionMark_m_pParent_feature", "_UI_CGIMscConditionMark_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIMscConditionMark_M_pParent(),
+				 true,
+				 false,
+				 true,
+				 null,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Mtransform feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_transformPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIMscConditionMark_m_transform_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIMscConditionMark_m_transform_feature", "_UI_CGIMscConditionMark_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIMscConditionMark_M_transform(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Mpolygon feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_polygonPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIMscConditionMark_m_polygon_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIMscConditionMark_m_polygon_feature", "_UI_CGIMscConditionMark_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIMscConditionMark_M_polygon(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the MnName Format feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_nNameFormatPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIMscConditionMark_m_nNameFormat_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIMscConditionMark_m_nNameFormat_feature", "_UI_CGIMscConditionMark_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIMscConditionMark_M_nNameFormat(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the MnIs Name Format feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_nIsNameFormatPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIMscConditionMark_m_nIsNameFormat_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIMscConditionMark_m_nIsNameFormat_feature", "_UI_CGIMscConditionMark_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIMscConditionMark_M_nIsNameFormat(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Compartments feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addCompartmentsPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIMscConditionMark_Compartments_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIMscConditionMark_Compartments_feature", "_UI_CGIMscConditionMark_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIMscConditionMark_Compartments(),
+				 true,
+				 false,
+				 true,
+				 null,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This specifies how to implement {@link #getChildren} and is used to deduce an appropriate feature for an
+	 * {@link org.eclipse.emf.edit.command.AddCommand}, {@link org.eclipse.emf.edit.command.RemoveCommand} or
+	 * {@link org.eclipse.emf.edit.command.MoveCommand} in {@link #createCommand}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Collection<? extends EStructuralFeature> getChildrenFeatures(Object object) {
+		if (childrenFeatures == null) {
+			super.getChildrenFeatures(object);
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getCGIMscConditionMark_Properties());
+		}
+		return childrenFeatures;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EStructuralFeature getChildFeature(Object object, Object child) {
+		// Check the type of the specified child object and return the proper feature to use for
+		// adding (see {@link AddCommand}) it as a child.
+
+		return super.getChildFeature(object, child);
+	}
+
+	/**
+	 * This returns CGIMscConditionMark.gif.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object getImage(Object object) {
+		return overlayImage(object, getResourceLocator().getImage("full/obj16/CGIMscConditionMark")); //$NON-NLS-1$
+	}
+
+	/**
+	 * This returns the label text for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String getText(Object object) {
+		String label = ((CGIMscConditionMark)object).getId();
+		return label == null || label.length() == 0 ?
+			getString("_UI_CGIMscConditionMark_type") : //$NON-NLS-1$
+			getString("_UI_CGIMscConditionMark_type") + " " + label; //$NON-NLS-1$ //$NON-NLS-2$
+	}
+	
+
+	/**
+	 * This handles model notifications by calling {@link #updateChildren} to update any cached
+	 * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void notifyChanged(Notification notification) {
+		updateChildren(notification);
+
+		switch (notification.getFeatureID(CGIMscConditionMark.class)) {
+			case UMLRpyPackage.CGI_MSC_CONDITION_MARK__MTRANSFORM:
+			case UMLRpyPackage.CGI_MSC_CONDITION_MARK__MPOLYGON:
+			case UMLRpyPackage.CGI_MSC_CONDITION_MARK__MNNAME_FORMAT:
+			case UMLRpyPackage.CGI_MSC_CONDITION_MARK__MNIS_NAME_FORMAT:
+				fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), false, true));
+				return;
+			case UMLRpyPackage.CGI_MSC_CONDITION_MARK__PROPERTIES:
+				fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), true, false));
+				return;
+		}
+		super.notifyChanged(notification);
+	}
+
+	/**
+	 * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children
+	 * that can be created under this object.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) {
+		super.collectNewChildDescriptors(newChildDescriptors, object);
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGIMscConditionMark_Properties(),
+				 UMLRpyFactory.eINSTANCE.createIPropertyContainer()));
+	}
+
+}
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/CGIMscExecutionOccurrenceItemProvider.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/CGIMscExecutionOccurrenceItemProvider.java
new file mode 100755
index 0000000..eb6a3bb
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/CGIMscExecutionOccurrenceItemProvider.java
@@ -0,0 +1,306 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.provider;
+
+
+import java.util.Collection;
+import java.util.List;
+
+import org.eclipse.emf.common.notify.AdapterFactory;
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.edit.provider.ComposeableAdapterFactory;
+import org.eclipse.emf.edit.provider.IItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.ItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.ViewerNotification;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscExecutionOccurrence;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscExecutionOccurrence} object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class CGIMscExecutionOccurrenceItemProvider extends GraphElementsTypeItemProvider {
+	/**
+	 * This constructs an instance from a factory and a notifier.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public CGIMscExecutionOccurrenceItemProvider(AdapterFactory adapterFactory) {
+		super(adapterFactory);
+	}
+
+	/**
+	 * This returns the property descriptors for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) {
+		if (itemPropertyDescriptors == null) {
+			super.getPropertyDescriptors(object);
+
+			addM_pModelObjectPropertyDescriptor(object);
+			addM_pParentPropertyDescriptor(object);
+			addM_transformPropertyDescriptor(object);
+			addM_positionPropertyDescriptor(object);
+			addM_pInheritsFromPropertyDescriptor(object);
+			addM_nInheritanceMaskPropertyDescriptor(object);
+			addM_SubTypePropertyDescriptor(object);
+			addM_pStartMessagePropertyDescriptor(object);
+		}
+		return itemPropertyDescriptors;
+	}
+
+	/**
+	 * This adds a property descriptor for the MpModel Object feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_pModelObjectPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIMscExecutionOccurrence_m_pModelObject_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIMscExecutionOccurrence_m_pModelObject_feature", "_UI_CGIMscExecutionOccurrence_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIMscExecutionOccurrence_M_pModelObject(),
+				 true,
+				 false,
+				 true,
+				 null,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the MpParent feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_pParentPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIMscExecutionOccurrence_m_pParent_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIMscExecutionOccurrence_m_pParent_feature", "_UI_CGIMscExecutionOccurrence_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIMscExecutionOccurrence_M_pParent(),
+				 true,
+				 false,
+				 true,
+				 null,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Mtransform feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_transformPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIMscExecutionOccurrence_m_transform_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIMscExecutionOccurrence_m_transform_feature", "_UI_CGIMscExecutionOccurrence_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIMscExecutionOccurrence_M_transform(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Mposition feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_positionPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIMscExecutionOccurrence_m_position_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIMscExecutionOccurrence_m_position_feature", "_UI_CGIMscExecutionOccurrence_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIMscExecutionOccurrence_M_position(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the MpInherits From feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_pInheritsFromPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIMscExecutionOccurrence_m_pInheritsFrom_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIMscExecutionOccurrence_m_pInheritsFrom_feature", "_UI_CGIMscExecutionOccurrence_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIMscExecutionOccurrence_M_pInheritsFrom(),
+				 true,
+				 false,
+				 true,
+				 null,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the MnInheritance Mask feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_nInheritanceMaskPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIMscExecutionOccurrence_m_nInheritanceMask_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIMscExecutionOccurrence_m_nInheritanceMask_feature", "_UI_CGIMscExecutionOccurrence_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIMscExecutionOccurrence_M_nInheritanceMask(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the MSub Type feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_SubTypePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIMscExecutionOccurrence_m_SubType_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIMscExecutionOccurrence_m_SubType_feature", "_UI_CGIMscExecutionOccurrence_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIMscExecutionOccurrence_M_SubType(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the MpStart Message feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_pStartMessagePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIMscExecutionOccurrence_m_pStartMessage_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIMscExecutionOccurrence_m_pStartMessage_feature", "_UI_CGIMscExecutionOccurrence_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIMscExecutionOccurrence_M_pStartMessage(),
+				 true,
+				 false,
+				 true,
+				 null,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This returns CGIMscExecutionOccurrence.gif.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object getImage(Object object) {
+		return overlayImage(object, getResourceLocator().getImage("full/obj16/CGIMscExecutionOccurrence")); //$NON-NLS-1$
+	}
+
+	/**
+	 * This returns the label text for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String getText(Object object) {
+		String label = ((CGIMscExecutionOccurrence)object).getId();
+		return label == null || label.length() == 0 ?
+			getString("_UI_CGIMscExecutionOccurrence_type") : //$NON-NLS-1$
+			getString("_UI_CGIMscExecutionOccurrence_type") + " " + label; //$NON-NLS-1$ //$NON-NLS-2$
+	}
+	
+
+	/**
+	 * This handles model notifications by calling {@link #updateChildren} to update any cached
+	 * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void notifyChanged(Notification notification) {
+		updateChildren(notification);
+
+		switch (notification.getFeatureID(CGIMscExecutionOccurrence.class)) {
+			case UMLRpyPackage.CGI_MSC_EXECUTION_OCCURRENCE__MTRANSFORM:
+			case UMLRpyPackage.CGI_MSC_EXECUTION_OCCURRENCE__MPOSITION:
+			case UMLRpyPackage.CGI_MSC_EXECUTION_OCCURRENCE__MNINHERITANCE_MASK:
+			case UMLRpyPackage.CGI_MSC_EXECUTION_OCCURRENCE__MSUB_TYPE:
+				fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), false, true));
+				return;
+		}
+		super.notifyChanged(notification);
+	}
+
+	/**
+	 * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children
+	 * that can be created under this object.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) {
+		super.collectNewChildDescriptors(newChildDescriptors, object);
+	}
+
+}
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/CGIMscInteractionOccurrenceItemProvider.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/CGIMscInteractionOccurrenceItemProvider.java
new file mode 100755
index 0000000..86e3ecf
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/CGIMscInteractionOccurrenceItemProvider.java
@@ -0,0 +1,324 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.provider;
+
+
+import java.util.Collection;
+import java.util.List;
+
+import org.eclipse.emf.common.notify.AdapterFactory;
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.ecore.EStructuralFeature;
+
+import org.eclipse.emf.edit.provider.ComposeableAdapterFactory;
+import org.eclipse.emf.edit.provider.IItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.ItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.ViewerNotification;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscInteractionOccurrence;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyFactory;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscInteractionOccurrence} object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class CGIMscInteractionOccurrenceItemProvider extends GraphElementsTypeItemProvider {
+	/**
+	 * This constructs an instance from a factory and a notifier.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public CGIMscInteractionOccurrenceItemProvider(AdapterFactory adapterFactory) {
+		super(adapterFactory);
+	}
+
+	/**
+	 * This returns the property descriptors for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) {
+		if (itemPropertyDescriptors == null) {
+			super.getPropertyDescriptors(object);
+
+			addM_pModelObjectPropertyDescriptor(object);
+			addM_pParentPropertyDescriptor(object);
+			addM_transformPropertyDescriptor(object);
+			addM_polygonPropertyDescriptor(object);
+			addM_nNameFormatPropertyDescriptor(object);
+			addM_nIsNameFormatPropertyDescriptor(object);
+			addCompartmentsPropertyDescriptor(object);
+		}
+		return itemPropertyDescriptors;
+	}
+
+	/**
+	 * This adds a property descriptor for the MpModel Object feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_pModelObjectPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIMscInteractionOccurrence_m_pModelObject_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIMscInteractionOccurrence_m_pModelObject_feature", "_UI_CGIMscInteractionOccurrence_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIMscInteractionOccurrence_M_pModelObject(),
+				 true,
+				 false,
+				 true,
+				 null,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the MpParent feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_pParentPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIMscInteractionOccurrence_m_pParent_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIMscInteractionOccurrence_m_pParent_feature", "_UI_CGIMscInteractionOccurrence_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIMscInteractionOccurrence_M_pParent(),
+				 true,
+				 false,
+				 true,
+				 null,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Mtransform feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_transformPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIMscInteractionOccurrence_m_transform_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIMscInteractionOccurrence_m_transform_feature", "_UI_CGIMscInteractionOccurrence_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIMscInteractionOccurrence_M_transform(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Mpolygon feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_polygonPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIMscInteractionOccurrence_m_polygon_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIMscInteractionOccurrence_m_polygon_feature", "_UI_CGIMscInteractionOccurrence_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIMscInteractionOccurrence_M_polygon(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the MnName Format feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_nNameFormatPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIMscInteractionOccurrence_m_nNameFormat_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIMscInteractionOccurrence_m_nNameFormat_feature", "_UI_CGIMscInteractionOccurrence_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIMscInteractionOccurrence_M_nNameFormat(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the MnIs Name Format feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_nIsNameFormatPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIMscInteractionOccurrence_m_nIsNameFormat_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIMscInteractionOccurrence_m_nIsNameFormat_feature", "_UI_CGIMscInteractionOccurrence_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIMscInteractionOccurrence_M_nIsNameFormat(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Compartments feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addCompartmentsPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIMscInteractionOccurrence_Compartments_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIMscInteractionOccurrence_Compartments_feature", "_UI_CGIMscInteractionOccurrence_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIMscInteractionOccurrence_Compartments(),
+				 true,
+				 false,
+				 true,
+				 null,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This specifies how to implement {@link #getChildren} and is used to deduce an appropriate feature for an
+	 * {@link org.eclipse.emf.edit.command.AddCommand}, {@link org.eclipse.emf.edit.command.RemoveCommand} or
+	 * {@link org.eclipse.emf.edit.command.MoveCommand} in {@link #createCommand}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Collection<? extends EStructuralFeature> getChildrenFeatures(Object object) {
+		if (childrenFeatures == null) {
+			super.getChildrenFeatures(object);
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getCGIMscInteractionOccurrence_Properties());
+		}
+		return childrenFeatures;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EStructuralFeature getChildFeature(Object object, Object child) {
+		// Check the type of the specified child object and return the proper feature to use for
+		// adding (see {@link AddCommand}) it as a child.
+
+		return super.getChildFeature(object, child);
+	}
+
+	/**
+	 * This returns CGIMscInteractionOccurrence.gif.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object getImage(Object object) {
+		return overlayImage(object, getResourceLocator().getImage("full/obj16/CGIMscInteractionOccurrence")); //$NON-NLS-1$
+	}
+
+	/**
+	 * This returns the label text for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String getText(Object object) {
+		String label = ((CGIMscInteractionOccurrence)object).getId();
+		return label == null || label.length() == 0 ?
+			getString("_UI_CGIMscInteractionOccurrence_type") : //$NON-NLS-1$
+			getString("_UI_CGIMscInteractionOccurrence_type") + " " + label; //$NON-NLS-1$ //$NON-NLS-2$
+	}
+	
+
+	/**
+	 * This handles model notifications by calling {@link #updateChildren} to update any cached
+	 * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void notifyChanged(Notification notification) {
+		updateChildren(notification);
+
+		switch (notification.getFeatureID(CGIMscInteractionOccurrence.class)) {
+			case UMLRpyPackage.CGI_MSC_INTERACTION_OCCURRENCE__MTRANSFORM:
+			case UMLRpyPackage.CGI_MSC_INTERACTION_OCCURRENCE__MPOLYGON:
+			case UMLRpyPackage.CGI_MSC_INTERACTION_OCCURRENCE__MNNAME_FORMAT:
+			case UMLRpyPackage.CGI_MSC_INTERACTION_OCCURRENCE__MNIS_NAME_FORMAT:
+				fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), false, true));
+				return;
+			case UMLRpyPackage.CGI_MSC_INTERACTION_OCCURRENCE__PROPERTIES:
+				fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), true, false));
+				return;
+		}
+		super.notifyChanged(notification);
+	}
+
+	/**
+	 * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children
+	 * that can be created under this object.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) {
+		super.collectNewChildDescriptors(newChildDescriptors, object);
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGIMscInteractionOccurrence_Properties(),
+				 UMLRpyFactory.eINSTANCE.createIPropertyContainer()));
+	}
+
+}
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/CGIMscInteractionOperandItemProvider.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/CGIMscInteractionOperandItemProvider.java
new file mode 100755
index 0000000..411527f
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/CGIMscInteractionOperandItemProvider.java
@@ -0,0 +1,354 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.provider;
+
+
+import java.util.Collection;
+import java.util.List;
+
+import org.eclipse.emf.common.notify.AdapterFactory;
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.ecore.EStructuralFeature;
+
+import org.eclipse.emf.edit.provider.ComposeableAdapterFactory;
+import org.eclipse.emf.edit.provider.IItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.ItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.ViewerNotification;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscInteractionOperand;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyFactory;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscInteractionOperand} object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class CGIMscInteractionOperandItemProvider extends GraphElementsTypeItemProvider {
+	/**
+	 * This constructs an instance from a factory and a notifier.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public CGIMscInteractionOperandItemProvider(AdapterFactory adapterFactory) {
+		super(adapterFactory);
+	}
+
+	/**
+	 * This returns the property descriptors for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) {
+		if (itemPropertyDescriptors == null) {
+			super.getPropertyDescriptors(object);
+
+			addM_pModelObjectPropertyDescriptor(object);
+			addM_pParentPropertyDescriptor(object);
+			addM_polygonPropertyDescriptor(object);
+			addM_nNameFormatPropertyDescriptor(object);
+			addM_nIsNameFormatPropertyDescriptor(object);
+			addCompartmentsPropertyDescriptor(object);
+			addM_transformPropertyDescriptor(object);
+		}
+		return itemPropertyDescriptors;
+	}
+
+	/**
+	 * This adds a property descriptor for the MpModel Object feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_pModelObjectPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIMscInteractionOperand_m_pModelObject_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIMscInteractionOperand_m_pModelObject_feature", "_UI_CGIMscInteractionOperand_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIMscInteractionOperand_M_pModelObject(),
+				 true,
+				 false,
+				 true,
+				 null,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the MpParent feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_pParentPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIMscInteractionOperand_m_pParent_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIMscInteractionOperand_m_pParent_feature", "_UI_CGIMscInteractionOperand_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIMscInteractionOperand_M_pParent(),
+				 true,
+				 false,
+				 true,
+				 null,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Mpolygon feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_polygonPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIMscInteractionOperand_m_polygon_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIMscInteractionOperand_m_polygon_feature", "_UI_CGIMscInteractionOperand_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIMscInteractionOperand_M_polygon(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the MnName Format feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_nNameFormatPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIMscInteractionOperand_m_nNameFormat_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIMscInteractionOperand_m_nNameFormat_feature", "_UI_CGIMscInteractionOperand_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIMscInteractionOperand_M_nNameFormat(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the MnIs Name Format feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_nIsNameFormatPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIMscInteractionOperand_m_nIsNameFormat_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIMscInteractionOperand_m_nIsNameFormat_feature", "_UI_CGIMscInteractionOperand_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIMscInteractionOperand_M_nIsNameFormat(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Compartments feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addCompartmentsPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIMscInteractionOperand_Compartments_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIMscInteractionOperand_Compartments_feature", "_UI_CGIMscInteractionOperand_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIMscInteractionOperand_Compartments(),
+				 true,
+				 false,
+				 true,
+				 null,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Mtransform feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_transformPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIMscInteractionOperand_m_transform_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIMscInteractionOperand_m_transform_feature", "_UI_CGIMscInteractionOperand_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIMscInteractionOperand_M_transform(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This specifies how to implement {@link #getChildren} and is used to deduce an appropriate feature for an
+	 * {@link org.eclipse.emf.edit.command.AddCommand}, {@link org.eclipse.emf.edit.command.RemoveCommand} or
+	 * {@link org.eclipse.emf.edit.command.MoveCommand} in {@link #createCommand}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Collection<? extends EStructuralFeature> getChildrenFeatures(Object object) {
+		if (childrenFeatures == null) {
+			super.getChildrenFeatures(object);
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getCGIMscInteractionOperand_Properties());
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getCGIMscInteractionOperand_M_AdditionalLabel());
+		}
+		return childrenFeatures;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EStructuralFeature getChildFeature(Object object, Object child) {
+		// Check the type of the specified child object and return the proper feature to use for
+		// adding (see {@link AddCommand}) it as a child.
+
+		return super.getChildFeature(object, child);
+	}
+
+	/**
+	 * This returns CGIMscInteractionOperand.gif.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object getImage(Object object) {
+		return overlayImage(object, getResourceLocator().getImage("full/obj16/CGIMscInteractionOperand")); //$NON-NLS-1$
+	}
+
+	/**
+	 * This returns the label text for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String getText(Object object) {
+		String label = ((CGIMscInteractionOperand)object).getId();
+		return label == null || label.length() == 0 ?
+			getString("_UI_CGIMscInteractionOperand_type") : //$NON-NLS-1$
+			getString("_UI_CGIMscInteractionOperand_type") + " " + label; //$NON-NLS-1$ //$NON-NLS-2$
+	}
+	
+
+	/**
+	 * This handles model notifications by calling {@link #updateChildren} to update any cached
+	 * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void notifyChanged(Notification notification) {
+		updateChildren(notification);
+
+		switch (notification.getFeatureID(CGIMscInteractionOperand.class)) {
+			case UMLRpyPackage.CGI_MSC_INTERACTION_OPERAND__MPOLYGON:
+			case UMLRpyPackage.CGI_MSC_INTERACTION_OPERAND__MNNAME_FORMAT:
+			case UMLRpyPackage.CGI_MSC_INTERACTION_OPERAND__MNIS_NAME_FORMAT:
+			case UMLRpyPackage.CGI_MSC_INTERACTION_OPERAND__MTRANSFORM:
+				fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), false, true));
+				return;
+			case UMLRpyPackage.CGI_MSC_INTERACTION_OPERAND__PROPERTIES:
+			case UMLRpyPackage.CGI_MSC_INTERACTION_OPERAND__MADDITIONAL_LABEL:
+				fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), true, false));
+				return;
+		}
+		super.notifyChanged(notification);
+	}
+
+	/**
+	 * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children
+	 * that can be created under this object.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) {
+		super.collectNewChildDescriptors(newChildDescriptors, object);
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGIMscInteractionOperand_Properties(),
+				 UMLRpyFactory.eINSTANCE.createIPropertyContainer()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGIMscInteractionOperand_M_AdditionalLabel(),
+				 UMLRpyFactory.eINSTANCE.createCGIText()));
+	}
+
+	/**
+	 * This returns the label text for {@link org.eclipse.emf.edit.command.CreateChildCommand}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String getCreateChildText(Object owner, Object feature, Object child, Collection<?> selection) {
+		Object childFeature = feature;
+		Object childObject = child;
+
+		boolean qualify =
+			childFeature == UMLRpyPackage.eINSTANCE.getGraphElementsType_M_name() ||
+			childFeature == UMLRpyPackage.eINSTANCE.getCGIMscInteractionOperand_M_AdditionalLabel();
+
+		if (qualify) {
+			return getString
+				("_UI_CreateChild_text2", //$NON-NLS-1$
+				 new Object[] { getTypeText(childObject), getFeatureText(childFeature), getTypeText(owner) });
+		}
+		return super.getCreateChildText(owner, feature, child, selection);
+	}
+
+}
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/CGIMscInteractionOperatorItemProvider.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/CGIMscInteractionOperatorItemProvider.java
new file mode 100755
index 0000000..baaf6e7
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/CGIMscInteractionOperatorItemProvider.java
@@ -0,0 +1,396 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.provider;
+
+
+import java.util.Collection;
+import java.util.List;
+
+import org.eclipse.emf.common.notify.AdapterFactory;
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.ecore.EStructuralFeature;
+
+import org.eclipse.emf.edit.provider.ComposeableAdapterFactory;
+import org.eclipse.emf.edit.provider.IItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.ItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.ViewerNotification;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscInteractionOperator;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyFactory;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscInteractionOperator} object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class CGIMscInteractionOperatorItemProvider extends GraphElementsTypeItemProvider {
+	/**
+	 * This constructs an instance from a factory and a notifier.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public CGIMscInteractionOperatorItemProvider(AdapterFactory adapterFactory) {
+		super(adapterFactory);
+	}
+
+	/**
+	 * This returns the property descriptors for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) {
+		if (itemPropertyDescriptors == null) {
+			super.getPropertyDescriptors(object);
+
+			addM_operatorTypePropertyDescriptor(object);
+			addM_pModelObjectPropertyDescriptor(object);
+			addM_pParentPropertyDescriptor(object);
+			addM_transformPropertyDescriptor(object);
+			addM_polygonPropertyDescriptor(object);
+			addM_nNameFormatPropertyDescriptor(object);
+			addM_nIsNameFormatPropertyDescriptor(object);
+			addFramesetPropertyDescriptor(object);
+			addCompartmentsPropertyDescriptor(object);
+			addM_bFramesetModifiedPropertyDescriptor(object);
+		}
+		return itemPropertyDescriptors;
+	}
+
+	/**
+	 * This adds a property descriptor for the Moperator Type feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_operatorTypePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIMscInteractionOperator_m_operatorType_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIMscInteractionOperator_m_operatorType_feature", "_UI_CGIMscInteractionOperator_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIMscInteractionOperator_M_operatorType(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the MpModel Object feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_pModelObjectPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIMscInteractionOperator_m_pModelObject_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIMscInteractionOperator_m_pModelObject_feature", "_UI_CGIMscInteractionOperator_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIMscInteractionOperator_M_pModelObject(),
+				 true,
+				 false,
+				 true,
+				 null,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the MpParent feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_pParentPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIMscInteractionOperator_m_pParent_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIMscInteractionOperator_m_pParent_feature", "_UI_CGIMscInteractionOperator_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIMscInteractionOperator_M_pParent(),
+				 true,
+				 false,
+				 true,
+				 null,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Mtransform feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_transformPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIMscInteractionOperator_m_transform_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIMscInteractionOperator_m_transform_feature", "_UI_CGIMscInteractionOperator_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIMscInteractionOperator_M_transform(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Mpolygon feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_polygonPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIMscInteractionOperator_m_polygon_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIMscInteractionOperator_m_polygon_feature", "_UI_CGIMscInteractionOperator_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIMscInteractionOperator_M_polygon(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the MnName Format feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_nNameFormatPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIMscInteractionOperator_m_nNameFormat_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIMscInteractionOperator_m_nNameFormat_feature", "_UI_CGIMscInteractionOperator_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIMscInteractionOperator_M_nNameFormat(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the MnIs Name Format feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_nIsNameFormatPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIMscInteractionOperator_m_nIsNameFormat_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIMscInteractionOperator_m_nIsNameFormat_feature", "_UI_CGIMscInteractionOperator_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIMscInteractionOperator_M_nIsNameFormat(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Frameset feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addFramesetPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIMscInteractionOperator_frameset_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIMscInteractionOperator_frameset_feature", "_UI_CGIMscInteractionOperator_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIMscInteractionOperator_Frameset(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Compartments feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addCompartmentsPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIMscInteractionOperator_Compartments_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIMscInteractionOperator_Compartments_feature", "_UI_CGIMscInteractionOperator_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIMscInteractionOperator_Compartments(),
+				 true,
+				 false,
+				 true,
+				 null,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the MbFrameset Modified feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_bFramesetModifiedPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIMscInteractionOperator_m_bFramesetModified_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIMscInteractionOperator_m_bFramesetModified_feature", "_UI_CGIMscInteractionOperator_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIMscInteractionOperator_M_bFramesetModified(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This specifies how to implement {@link #getChildren} and is used to deduce an appropriate feature for an
+	 * {@link org.eclipse.emf.edit.command.AddCommand}, {@link org.eclipse.emf.edit.command.RemoveCommand} or
+	 * {@link org.eclipse.emf.edit.command.MoveCommand} in {@link #createCommand}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Collection<? extends EStructuralFeature> getChildrenFeatures(Object object) {
+		if (childrenFeatures == null) {
+			super.getChildrenFeatures(object);
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getCGIMscInteractionOperator_Properties());
+		}
+		return childrenFeatures;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EStructuralFeature getChildFeature(Object object, Object child) {
+		// Check the type of the specified child object and return the proper feature to use for
+		// adding (see {@link AddCommand}) it as a child.
+
+		return super.getChildFeature(object, child);
+	}
+
+	/**
+	 * This returns CGIMscInteractionOperator.gif.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object getImage(Object object) {
+		return overlayImage(object, getResourceLocator().getImage("full/obj16/CGIMscInteractionOperator")); //$NON-NLS-1$
+	}
+
+	/**
+	 * This returns the label text for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String getText(Object object) {
+		String label = ((CGIMscInteractionOperator)object).getId();
+		return label == null || label.length() == 0 ?
+			getString("_UI_CGIMscInteractionOperator_type") : //$NON-NLS-1$
+			getString("_UI_CGIMscInteractionOperator_type") + " " + label; //$NON-NLS-1$ //$NON-NLS-2$
+	}
+	
+
+	/**
+	 * This handles model notifications by calling {@link #updateChildren} to update any cached
+	 * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void notifyChanged(Notification notification) {
+		updateChildren(notification);
+
+		switch (notification.getFeatureID(CGIMscInteractionOperator.class)) {
+			case UMLRpyPackage.CGI_MSC_INTERACTION_OPERATOR__MOPERATOR_TYPE:
+			case UMLRpyPackage.CGI_MSC_INTERACTION_OPERATOR__MTRANSFORM:
+			case UMLRpyPackage.CGI_MSC_INTERACTION_OPERATOR__MPOLYGON:
+			case UMLRpyPackage.CGI_MSC_INTERACTION_OPERATOR__MNNAME_FORMAT:
+			case UMLRpyPackage.CGI_MSC_INTERACTION_OPERATOR__MNIS_NAME_FORMAT:
+			case UMLRpyPackage.CGI_MSC_INTERACTION_OPERATOR__FRAMESET:
+			case UMLRpyPackage.CGI_MSC_INTERACTION_OPERATOR__MBFRAMESET_MODIFIED:
+				fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), false, true));
+				return;
+			case UMLRpyPackage.CGI_MSC_INTERACTION_OPERATOR__PROPERTIES:
+				fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), true, false));
+				return;
+		}
+		super.notifyChanged(notification);
+	}
+
+	/**
+	 * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children
+	 * that can be created under this object.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) {
+		super.collectNewChildDescriptors(newChildDescriptors, object);
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGIMscInteractionOperator_Properties(),
+				 UMLRpyFactory.eINSTANCE.createIPropertyContainer()));
+	}
+
+}
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/CGIMscMessageItemProvider.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/CGIMscMessageItemProvider.java
new file mode 100755
index 0000000..f5adeab
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/CGIMscMessageItemProvider.java
@@ -0,0 +1,592 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.provider;
+
+
+import java.util.Collection;
+import java.util.List;
+
+import org.eclipse.emf.common.notify.AdapterFactory;
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.ecore.EStructuralFeature;
+
+import org.eclipse.emf.edit.provider.ComposeableAdapterFactory;
+import org.eclipse.emf.edit.provider.IItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.ItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.ViewerNotification;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscMessage;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyFactory;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscMessage} object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class CGIMscMessageItemProvider extends GraphElementsTypeItemProvider {
+	/**
+	 * This constructs an instance from a factory and a notifier.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public CGIMscMessageItemProvider(AdapterFactory adapterFactory) {
+		super(adapterFactory);
+	}
+
+	/**
+	 * This returns the property descriptors for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) {
+		if (itemPropertyDescriptors == null) {
+			super.getPropertyDescriptors(object);
+
+			addM_pModelObjectPropertyDescriptor(object);
+			addM_pParentPropertyDescriptor(object);
+			addM_pSourcePropertyDescriptor(object);
+			addM_sourceTypePropertyDescriptor(object);
+			addM_pTargetPropertyDescriptor(object);
+			addM_targetTypePropertyDescriptor(object);
+			addM_directionPropertyDescriptor(object);
+			addM_anglePoint1PropertyDescriptor(object);
+			addM_anglePoint2PropertyDescriptor(object);
+			addM_line_stylePropertyDescriptor(object);
+			addM_SourcePortPropertyDescriptor(object);
+			addM_TargetPortPropertyDescriptor(object);
+			addM_bLeftPropertyDescriptor(object);
+			addM_arrowPropertyDescriptor(object);
+			addMyStatePropertyDescriptor(object);
+			addM_pSourceExecPropertyDescriptor(object);
+			addM_pTargetExecPropertyDescriptor(object);
+		}
+		return itemPropertyDescriptors;
+	}
+
+	/**
+	 * This adds a property descriptor for the MpModel Object feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_pModelObjectPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIMscMessage_m_pModelObject_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIMscMessage_m_pModelObject_feature", "_UI_CGIMscMessage_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIMscMessage_M_pModelObject(),
+				 true,
+				 false,
+				 true,
+				 null,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the MpParent feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_pParentPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIMscMessage_m_pParent_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIMscMessage_m_pParent_feature", "_UI_CGIMscMessage_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIMscMessage_M_pParent(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the MpSource feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_pSourcePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIMscMessage_m_pSource_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIMscMessage_m_pSource_feature", "_UI_CGIMscMessage_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIMscMessage_M_pSource(),
+				 true,
+				 false,
+				 true,
+				 null,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Msource Type feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_sourceTypePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIMscMessage_m_sourceType_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIMscMessage_m_sourceType_feature", "_UI_CGIMscMessage_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIMscMessage_M_sourceType(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the MpTarget feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_pTargetPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIMscMessage_m_pTarget_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIMscMessage_m_pTarget_feature", "_UI_CGIMscMessage_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIMscMessage_M_pTarget(),
+				 true,
+				 false,
+				 true,
+				 null,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Mtarget Type feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_targetTypePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIMscMessage_m_targetType_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIMscMessage_m_targetType_feature", "_UI_CGIMscMessage_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIMscMessage_M_targetType(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Mdirection feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_directionPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIMscMessage_m_direction_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIMscMessage_m_direction_feature", "_UI_CGIMscMessage_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIMscMessage_M_direction(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Mangle Point1 feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_anglePoint1PropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIMscMessage_m_anglePoint1_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIMscMessage_m_anglePoint1_feature", "_UI_CGIMscMessage_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIMscMessage_M_anglePoint1(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Mangle Point2 feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_anglePoint2PropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIMscMessage_m_anglePoint2_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIMscMessage_m_anglePoint2_feature", "_UI_CGIMscMessage_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIMscMessage_M_anglePoint2(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Mline style feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_line_stylePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIMscMessage_m_line_style_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIMscMessage_m_line_style_feature", "_UI_CGIMscMessage_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIMscMessage_M_line_style(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the MSource Port feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_SourcePortPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIMscMessage_m_SourcePort_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIMscMessage_m_SourcePort_feature", "_UI_CGIMscMessage_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIMscMessage_M_SourcePort(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the MTarget Port feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_TargetPortPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIMscMessage_m_TargetPort_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIMscMessage_m_TargetPort_feature", "_UI_CGIMscMessage_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIMscMessage_M_TargetPort(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the MbLeft feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_bLeftPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIMscMessage_m_bLeft_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIMscMessage_m_bLeft_feature", "_UI_CGIMscMessage_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIMscMessage_M_bLeft(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Marrow feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_arrowPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIMscMessage_m_arrow_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIMscMessage_m_arrow_feature", "_UI_CGIMscMessage_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIMscMessage_M_arrow(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the My State feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addMyStatePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIMscMessage_myState_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIMscMessage_myState_feature", "_UI_CGIMscMessage_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIMscMessage_MyState(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the MpSource Exec feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_pSourceExecPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIMscMessage_m_pSourceExec_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIMscMessage_m_pSourceExec_feature", "_UI_CGIMscMessage_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIMscMessage_M_pSourceExec(),
+				 true,
+				 false,
+				 true,
+				 null,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the MpTarget Exec feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_pTargetExecPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIMscMessage_m_pTargetExec_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIMscMessage_m_pTargetExec_feature", "_UI_CGIMscMessage_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIMscMessage_M_pTargetExec(),
+				 true,
+				 false,
+				 true,
+				 null,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This specifies how to implement {@link #getChildren} and is used to deduce an appropriate feature for an
+	 * {@link org.eclipse.emf.edit.command.AddCommand}, {@link org.eclipse.emf.edit.command.RemoveCommand} or
+	 * {@link org.eclipse.emf.edit.command.MoveCommand} in {@link #createCommand}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Collection<? extends EStructuralFeature> getChildrenFeatures(Object object) {
+		if (childrenFeatures == null) {
+			super.getChildrenFeatures(object);
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getCGIMscMessage_M_rpn());
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getCGIMscMessage_Properties());
+		}
+		return childrenFeatures;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EStructuralFeature getChildFeature(Object object, Object child) {
+		// Check the type of the specified child object and return the proper feature to use for
+		// adding (see {@link AddCommand}) it as a child.
+
+		return super.getChildFeature(object, child);
+	}
+
+	/**
+	 * This returns CGIMscMessage.gif.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object getImage(Object object) {
+		return overlayImage(object, getResourceLocator().getImage("full/obj16/CGIMscMessage")); //$NON-NLS-1$
+	}
+
+	/**
+	 * This returns the label text for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String getText(Object object) {
+		String label = ((CGIMscMessage)object).getId();
+		return label == null || label.length() == 0 ?
+			getString("_UI_CGIMscMessage_type") : //$NON-NLS-1$
+			getString("_UI_CGIMscMessage_type") + " " + label; //$NON-NLS-1$ //$NON-NLS-2$
+	}
+	
+
+	/**
+	 * This handles model notifications by calling {@link #updateChildren} to update any cached
+	 * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void notifyChanged(Notification notification) {
+		updateChildren(notification);
+
+		switch (notification.getFeatureID(CGIMscMessage.class)) {
+			case UMLRpyPackage.CGI_MSC_MESSAGE__MPPARENT:
+			case UMLRpyPackage.CGI_MSC_MESSAGE__MSOURCE_TYPE:
+			case UMLRpyPackage.CGI_MSC_MESSAGE__MTARGET_TYPE:
+			case UMLRpyPackage.CGI_MSC_MESSAGE__MDIRECTION:
+			case UMLRpyPackage.CGI_MSC_MESSAGE__MANGLE_POINT1:
+			case UMLRpyPackage.CGI_MSC_MESSAGE__MANGLE_POINT2:
+			case UMLRpyPackage.CGI_MSC_MESSAGE__MLINE_STYLE:
+			case UMLRpyPackage.CGI_MSC_MESSAGE__MSOURCE_PORT:
+			case UMLRpyPackage.CGI_MSC_MESSAGE__MTARGET_PORT:
+			case UMLRpyPackage.CGI_MSC_MESSAGE__MBLEFT:
+			case UMLRpyPackage.CGI_MSC_MESSAGE__MARROW:
+			case UMLRpyPackage.CGI_MSC_MESSAGE__MY_STATE:
+				fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), false, true));
+				return;
+			case UMLRpyPackage.CGI_MSC_MESSAGE__MRPN:
+			case UMLRpyPackage.CGI_MSC_MESSAGE__PROPERTIES:
+				fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), true, false));
+				return;
+		}
+		super.notifyChanged(notification);
+	}
+
+	/**
+	 * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children
+	 * that can be created under this object.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) {
+		super.collectNewChildDescriptors(newChildDescriptors, object);
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGIMscMessage_M_rpn(),
+				 UMLRpyFactory.eINSTANCE.createCGIText()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGIMscMessage_Properties(),
+				 UMLRpyFactory.eINSTANCE.createIPropertyContainer()));
+	}
+
+	/**
+	 * This returns the label text for {@link org.eclipse.emf.edit.command.CreateChildCommand}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String getCreateChildText(Object owner, Object feature, Object child, Collection<?> selection) {
+		Object childFeature = feature;
+		Object childObject = child;
+
+		boolean qualify =
+			childFeature == UMLRpyPackage.eINSTANCE.getGraphElementsType_M_name() ||
+			childFeature == UMLRpyPackage.eINSTANCE.getCGIMscMessage_M_rpn();
+
+		if (qualify) {
+			return getString
+				("_UI_CreateChild_text2", //$NON-NLS-1$
+				 new Object[] { getTypeText(childObject), getFeatureText(childFeature), getTypeText(owner) });
+		}
+		return super.getCreateChildText(owner, feature, child, selection);
+	}
+
+}
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/CGIObjectInstanceItemProvider.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/CGIObjectInstanceItemProvider.java
new file mode 100755
index 0000000..3b6afcc
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/CGIObjectInstanceItemProvider.java
@@ -0,0 +1,720 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.provider;
+
+
+import java.util.Collection;
+import java.util.List;
+
+import org.eclipse.emf.common.notify.AdapterFactory;
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.ecore.EStructuralFeature;
+
+import org.eclipse.emf.edit.provider.ComposeableAdapterFactory;
+import org.eclipse.emf.edit.provider.IItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.ItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.ViewerNotification;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIObjectInstance;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyFactory;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIObjectInstance} object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class CGIObjectInstanceItemProvider extends GraphElementsTypeItemProvider {
+	/**
+	 * This constructs an instance from a factory and a notifier.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public CGIObjectInstanceItemProvider(AdapterFactory adapterFactory) {
+		super(adapterFactory);
+	}
+
+	/**
+	 * This returns the property descriptors for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) {
+		if (itemPropertyDescriptors == null) {
+			super.getPropertyDescriptors(object);
+
+			addM_pModelObjectPropertyDescriptor(object);
+			addM_pParentPropertyDescriptor(object);
+			addM_transformPropertyDescriptor(object);
+			addM_polygonPropertyDescriptor(object);
+			addM_nNameFormatPropertyDescriptor(object);
+			addM_nIsNameFormatPropertyDescriptor(object);
+			addFramesetPropertyDescriptor(object);
+			addM_bFramesetModifiedPropertyDescriptor(object);
+			addM_pImageViewDataPropertyDescriptor(object);
+			addM_bIsMisplacedPropertyDescriptor(object);
+		}
+		return itemPropertyDescriptors;
+	}
+
+	/**
+	 * This adds a property descriptor for the MpModel Object feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_pModelObjectPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIObjectInstance_m_pModelObject_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIObjectInstance_m_pModelObject_feature", "_UI_CGIObjectInstance_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIObjectInstance_M_pModelObject(),
+				 true,
+				 false,
+				 true,
+				 null,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the MpParent feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_pParentPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIObjectInstance_m_pParent_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIObjectInstance_m_pParent_feature", "_UI_CGIObjectInstance_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIObjectInstance_M_pParent(),
+				 true,
+				 false,
+				 true,
+				 null,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Mtransform feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_transformPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIObjectInstance_m_transform_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIObjectInstance_m_transform_feature", "_UI_CGIObjectInstance_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIObjectInstance_M_transform(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Mpolygon feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_polygonPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIObjectInstance_m_polygon_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIObjectInstance_m_polygon_feature", "_UI_CGIObjectInstance_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIObjectInstance_M_polygon(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the MnName Format feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_nNameFormatPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIObjectInstance_m_nNameFormat_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIObjectInstance_m_nNameFormat_feature", "_UI_CGIObjectInstance_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIObjectInstance_M_nNameFormat(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the MnIs Name Format feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_nIsNameFormatPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIObjectInstance_m_nIsNameFormat_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIObjectInstance_m_nIsNameFormat_feature", "_UI_CGIObjectInstance_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIObjectInstance_M_nIsNameFormat(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Frameset feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addFramesetPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIObjectInstance_frameset_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIObjectInstance_frameset_feature", "_UI_CGIObjectInstance_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIObjectInstance_Frameset(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the MbFrameset Modified feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_bFramesetModifiedPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIObjectInstance_m_bFramesetModified_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIObjectInstance_m_bFramesetModified_feature", "_UI_CGIObjectInstance_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIObjectInstance_M_bFramesetModified(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the MpImage View Data feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_pImageViewDataPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIObjectInstance_m_pImageViewData_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIObjectInstance_m_pImageViewData_feature", "_UI_CGIObjectInstance_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIObjectInstance_M_pImageViewData(),
+				 true,
+				 false,
+				 true,
+				 null,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the MbIs Misplaced feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_bIsMisplacedPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIObjectInstance_m_bIsMisplaced_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIObjectInstance_m_bIsMisplaced_feature", "_UI_CGIObjectInstance_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIObjectInstance_M_bIsMisplaced(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This specifies how to implement {@link #getChildren} and is used to deduce an appropriate feature for an
+	 * {@link org.eclipse.emf.edit.command.AddCommand}, {@link org.eclipse.emf.edit.command.RemoveCommand} or
+	 * {@link org.eclipse.emf.edit.command.MoveCommand} in {@link #createCommand}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Collection<? extends EStructuralFeature> getChildrenFeatures(Object object) {
+		if (childrenFeatures == null) {
+			super.getChildrenFeatures(object);
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getCGIObjectInstance_M_AdditionalLabel());
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getCGIObjectInstance_Compartments());
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getCGIObjectInstance_M_multiplicity());
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getCGIObjectInstance_Properties());
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getCGIObjectInstance_Operations());
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getCGIObjectInstance_Attrs());
+		}
+		return childrenFeatures;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EStructuralFeature getChildFeature(Object object, Object child) {
+		// Check the type of the specified child object and return the proper feature to use for
+		// adding (see {@link AddCommand}) it as a child.
+
+		return super.getChildFeature(object, child);
+	}
+
+	/**
+	 * This returns CGIObjectInstance.gif.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object getImage(Object object) {
+		return overlayImage(object, getResourceLocator().getImage("full/obj16/CGIObjectInstance")); //$NON-NLS-1$
+	}
+
+	/**
+	 * This returns the label text for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String getText(Object object) {
+		String label = ((CGIObjectInstance)object).getId();
+		return label == null || label.length() == 0 ?
+			getString("_UI_CGIObjectInstance_type") : //$NON-NLS-1$
+			getString("_UI_CGIObjectInstance_type") + " " + label; //$NON-NLS-1$ //$NON-NLS-2$
+	}
+	
+
+	/**
+	 * This handles model notifications by calling {@link #updateChildren} to update any cached
+	 * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void notifyChanged(Notification notification) {
+		updateChildren(notification);
+
+		switch (notification.getFeatureID(CGIObjectInstance.class)) {
+			case UMLRpyPackage.CGI_OBJECT_INSTANCE__MTRANSFORM:
+			case UMLRpyPackage.CGI_OBJECT_INSTANCE__MPOLYGON:
+			case UMLRpyPackage.CGI_OBJECT_INSTANCE__MNNAME_FORMAT:
+			case UMLRpyPackage.CGI_OBJECT_INSTANCE__MNIS_NAME_FORMAT:
+			case UMLRpyPackage.CGI_OBJECT_INSTANCE__FRAMESET:
+			case UMLRpyPackage.CGI_OBJECT_INSTANCE__MBFRAMESET_MODIFIED:
+			case UMLRpyPackage.CGI_OBJECT_INSTANCE__MBIS_MISPLACED:
+				fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), false, true));
+				return;
+			case UMLRpyPackage.CGI_OBJECT_INSTANCE__MADDITIONAL_LABEL:
+			case UMLRpyPackage.CGI_OBJECT_INSTANCE__COMPARTMENTS:
+			case UMLRpyPackage.CGI_OBJECT_INSTANCE__MMULTIPLICITY:
+			case UMLRpyPackage.CGI_OBJECT_INSTANCE__PROPERTIES:
+			case UMLRpyPackage.CGI_OBJECT_INSTANCE__OPERATIONS:
+			case UMLRpyPackage.CGI_OBJECT_INSTANCE__ATTRS:
+				fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), true, false));
+				return;
+		}
+		super.notifyChanged(notification);
+	}
+
+	/**
+	 * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children
+	 * that can be created under this object.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) {
+		super.collectNewChildDescriptors(newChildDescriptors, object);
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGIObjectInstance_M_AdditionalLabel(),
+				 UMLRpyFactory.eINSTANCE.createCGIText()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGIObjectInstance_Compartments(),
+				 UMLRpyFactory.eINSTANCE.createCGICompartment()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGIObjectInstance_M_multiplicity(),
+				 UMLRpyFactory.eINSTANCE.createCGIText()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGIObjectInstance_Properties(),
+				 UMLRpyFactory.eINSTANCE.createIPropertyContainer()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGIObjectInstance_Operations(),
+				 UMLRpyFactory.eINSTANCE.createIConstructor()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGIObjectInstance_Operations(),
+				 UMLRpyFactory.eINSTANCE.createIDestructor()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGIObjectInstance_Operations(),
+				 UMLRpyFactory.eINSTANCE.createIPrimitiveOperation()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGIObjectInstance_Operations(),
+				 UMLRpyFactory.eINSTANCE.createIReception()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGIObjectInstance_Operations(),
+				 UMLRpyFactory.eINSTANCE.createITriggered()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGIObjectInstance_Attrs(),
+				 UMLRpyFactory.eINSTANCE.createIUnit()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGIObjectInstance_Attrs(),
+				 UMLRpyFactory.eINSTANCE.createIClassifier()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGIObjectInstance_Attrs(),
+				 UMLRpyFactory.eINSTANCE.createIActor()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGIObjectInstance_Attrs(),
+				 UMLRpyFactory.eINSTANCE.createIAnnotation()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGIObjectInstance_Attrs(),
+				 UMLRpyFactory.eINSTANCE.createIVariable()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGIObjectInstance_Attrs(),
+				 UMLRpyFactory.eINSTANCE.createIArgument()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGIObjectInstance_Attrs(),
+				 UMLRpyFactory.eINSTANCE.createIClass()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGIObjectInstance_Attrs(),
+				 UMLRpyFactory.eINSTANCE.createIAssociationClass()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGIObjectInstance_Attrs(),
+				 UMLRpyFactory.eINSTANCE.createIAttribute()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGIObjectInstance_Attrs(),
+				 UMLRpyFactory.eINSTANCE.createIDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGIObjectInstance_Attrs(),
+				 UMLRpyFactory.eINSTANCE.createICollaborationDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGIObjectInstance_Attrs(),
+				 UMLRpyFactory.eINSTANCE.createIComment()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGIObjectInstance_Attrs(),
+				 UMLRpyFactory.eINSTANCE.createIComponent()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGIObjectInstance_Attrs(),
+				 UMLRpyFactory.eINSTANCE.createIComponentDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGIObjectInstance_Attrs(),
+				 UMLRpyFactory.eINSTANCE.createIConstraint()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGIObjectInstance_Attrs(),
+				 UMLRpyFactory.eINSTANCE.createIControlledFile()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGIObjectInstance_Attrs(),
+				 UMLRpyFactory.eINSTANCE.createIDeploymentDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGIObjectInstance_Attrs(),
+				 UMLRpyFactory.eINSTANCE.createIInterfaceItem()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGIObjectInstance_Attrs(),
+				 UMLRpyFactory.eINSTANCE.createIEvent()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGIObjectInstance_Attrs(),
+				 UMLRpyFactory.eINSTANCE.createIEventReception()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGIObjectInstance_Attrs(),
+				 UMLRpyFactory.eINSTANCE.createIFile()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGIObjectInstance_Attrs(),
+				 UMLRpyFactory.eINSTANCE.createIFlowItem()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGIObjectInstance_Attrs(),
+				 UMLRpyFactory.eINSTANCE.createIRelation()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGIObjectInstance_Attrs(),
+				 UMLRpyFactory.eINSTANCE.createIInstance()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGIObjectInstance_Attrs(),
+				 UMLRpyFactory.eINSTANCE.createILink()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGIObjectInstance_Attrs(),
+				 UMLRpyFactory.eINSTANCE.createIMatrixLayout()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGIObjectInstance_Attrs(),
+				 UMLRpyFactory.eINSTANCE.createIMatrixView()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGIObjectInstance_Attrs(),
+				 UMLRpyFactory.eINSTANCE.createIModule()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGIObjectInstance_Attrs(),
+				 UMLRpyFactory.eINSTANCE.createINode()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGIObjectInstance_Attrs(),
+				 UMLRpyFactory.eINSTANCE.createIObjectModelDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGIObjectInstance_Attrs(),
+				 UMLRpyFactory.eINSTANCE.createIOperation()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGIObjectInstance_Attrs(),
+				 UMLRpyFactory.eINSTANCE.createIPackage()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGIObjectInstance_Attrs(),
+				 UMLRpyFactory.eINSTANCE.createIPanelDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGIObjectInstance_Attrs(),
+				 UMLRpyFactory.eINSTANCE.createIPort()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGIObjectInstance_Attrs(),
+				 UMLRpyFactory.eINSTANCE.createIProfile()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGIObjectInstance_Attrs(),
+				 UMLRpyFactory.eINSTANCE.createIProject()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGIObjectInstance_Attrs(),
+				 UMLRpyFactory.eINSTANCE.createIRequirement()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGIObjectInstance_Attrs(),
+				 UMLRpyFactory.eINSTANCE.createISequenceDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGIObjectInstance_Attrs(),
+				 UMLRpyFactory.eINSTANCE.createIStateChart()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGIObjectInstance_Attrs(),
+				 UMLRpyFactory.eINSTANCE.createIStateChartDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGIObjectInstance_Attrs(),
+				 UMLRpyFactory.eINSTANCE.createIStereotype()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGIObjectInstance_Attrs(),
+				 UMLRpyFactory.eINSTANCE.createIStructureDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGIObjectInstance_Attrs(),
+				 UMLRpyFactory.eINSTANCE.createISysMLPort()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGIObjectInstance_Attrs(),
+				 UMLRpyFactory.eINSTANCE.createITableLayout()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGIObjectInstance_Attrs(),
+				 UMLRpyFactory.eINSTANCE.createITableView()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGIObjectInstance_Attrs(),
+				 UMLRpyFactory.eINSTANCE.createITag()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGIObjectInstance_Attrs(),
+				 UMLRpyFactory.eINSTANCE.createITemplateParameter()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGIObjectInstance_Attrs(),
+				 UMLRpyFactory.eINSTANCE.createIType()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGIObjectInstance_Attrs(),
+				 UMLRpyFactory.eINSTANCE.createIUseCase()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGIObjectInstance_Attrs(),
+				 UMLRpyFactory.eINSTANCE.createIUseCaseDiagram()));
+	}
+
+	/**
+	 * This returns the label text for {@link org.eclipse.emf.edit.command.CreateChildCommand}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String getCreateChildText(Object owner, Object feature, Object child, Collection<?> selection) {
+		Object childFeature = feature;
+		Object childObject = child;
+
+		boolean qualify =
+			childFeature == UMLRpyPackage.eINSTANCE.getGraphElementsType_M_name() ||
+			childFeature == UMLRpyPackage.eINSTANCE.getCGIObjectInstance_M_AdditionalLabel() ||
+			childFeature == UMLRpyPackage.eINSTANCE.getCGIObjectInstance_M_multiplicity();
+
+		if (qualify) {
+			return getString
+				("_UI_CreateChild_text2", //$NON-NLS-1$
+				 new Object[] { getTypeText(childObject), getFeatureText(childFeature), getTypeText(owner) });
+		}
+		return super.getCreateChildText(owner, feature, child, selection);
+	}
+
+}
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/CGIObjectLinkItemProvider.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/CGIObjectLinkItemProvider.java
new file mode 100755
index 0000000..0a4958b
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/CGIObjectLinkItemProvider.java
@@ -0,0 +1,650 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.provider;
+
+
+import java.util.Collection;
+import java.util.List;
+
+import org.eclipse.emf.common.notify.AdapterFactory;
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.ecore.EStructuralFeature;
+
+import org.eclipse.emf.edit.provider.ComposeableAdapterFactory;
+import org.eclipse.emf.edit.provider.IItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.ItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.ViewerNotification;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIObjectLink;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyFactory;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIObjectLink} object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class CGIObjectLinkItemProvider extends GraphElementsTypeItemProvider {
+	/**
+	 * This constructs an instance from a factory and a notifier.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public CGIObjectLinkItemProvider(AdapterFactory adapterFactory) {
+		super(adapterFactory);
+	}
+
+	/**
+	 * This returns the property descriptors for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) {
+		if (itemPropertyDescriptors == null) {
+			super.getPropertyDescriptors(object);
+
+			addM_pModelObjectPropertyDescriptor(object);
+			addM_pParentPropertyDescriptor(object);
+			addM_pSourcePropertyDescriptor(object);
+			addM_sourceTypePropertyDescriptor(object);
+			addM_pTargetPropertyDescriptor(object);
+			addM_targetTypePropertyDescriptor(object);
+			addM_directionPropertyDescriptor(object);
+			addM_arrowPropertyDescriptor(object);
+			addM_anglePoint1PropertyDescriptor(object);
+			addM_anglePoint2PropertyDescriptor(object);
+			addM_line_stylePropertyDescriptor(object);
+			addM_SourcePortPropertyDescriptor(object);
+			addM_TargetPortPropertyDescriptor(object);
+			addM_bShowSourceMultiplicityPropertyDescriptor(object);
+			addM_bShowSourceRolePropertyDescriptor(object);
+			addM_bShowTargetMultiplicityPropertyDescriptor(object);
+			addM_bShowTargetRolePropertyDescriptor(object);
+			addM_bShowLinkNamePropertyDescriptor(object);
+		}
+		return itemPropertyDescriptors;
+	}
+
+	/**
+	 * This adds a property descriptor for the MpModel Object feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_pModelObjectPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIObjectLink_m_pModelObject_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIObjectLink_m_pModelObject_feature", "_UI_CGIObjectLink_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIObjectLink_M_pModelObject(),
+				 true,
+				 false,
+				 true,
+				 null,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the MpParent feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_pParentPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIObjectLink_m_pParent_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIObjectLink_m_pParent_feature", "_UI_CGIObjectLink_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIObjectLink_M_pParent(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the MpSource feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_pSourcePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIObjectLink_m_pSource_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIObjectLink_m_pSource_feature", "_UI_CGIObjectLink_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIObjectLink_M_pSource(),
+				 true,
+				 false,
+				 true,
+				 null,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Msource Type feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_sourceTypePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIObjectLink_m_sourceType_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIObjectLink_m_sourceType_feature", "_UI_CGIObjectLink_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIObjectLink_M_sourceType(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the MpTarget feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_pTargetPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIObjectLink_m_pTarget_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIObjectLink_m_pTarget_feature", "_UI_CGIObjectLink_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIObjectLink_M_pTarget(),
+				 true,
+				 false,
+				 true,
+				 null,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Mtarget Type feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_targetTypePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIObjectLink_m_targetType_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIObjectLink_m_targetType_feature", "_UI_CGIObjectLink_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIObjectLink_M_targetType(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Mdirection feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_directionPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIObjectLink_m_direction_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIObjectLink_m_direction_feature", "_UI_CGIObjectLink_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIObjectLink_M_direction(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Marrow feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_arrowPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIObjectLink_m_arrow_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIObjectLink_m_arrow_feature", "_UI_CGIObjectLink_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIObjectLink_M_arrow(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Mangle Point1 feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_anglePoint1PropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIObjectLink_m_anglePoint1_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIObjectLink_m_anglePoint1_feature", "_UI_CGIObjectLink_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIObjectLink_M_anglePoint1(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Mangle Point2 feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_anglePoint2PropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIObjectLink_m_anglePoint2_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIObjectLink_m_anglePoint2_feature", "_UI_CGIObjectLink_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIObjectLink_M_anglePoint2(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Mline style feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_line_stylePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIObjectLink_m_line_style_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIObjectLink_m_line_style_feature", "_UI_CGIObjectLink_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIObjectLink_M_line_style(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the MSource Port feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_SourcePortPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIObjectLink_m_SourcePort_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIObjectLink_m_SourcePort_feature", "_UI_CGIObjectLink_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIObjectLink_M_SourcePort(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the MTarget Port feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_TargetPortPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIObjectLink_m_TargetPort_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIObjectLink_m_TargetPort_feature", "_UI_CGIObjectLink_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIObjectLink_M_TargetPort(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the MbShow Source Multiplicity feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_bShowSourceMultiplicityPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIObjectLink_m_bShowSourceMultiplicity_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIObjectLink_m_bShowSourceMultiplicity_feature", "_UI_CGIObjectLink_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIObjectLink_M_bShowSourceMultiplicity(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the MbShow Source Role feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_bShowSourceRolePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIObjectLink_m_bShowSourceRole_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIObjectLink_m_bShowSourceRole_feature", "_UI_CGIObjectLink_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIObjectLink_M_bShowSourceRole(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the MbShow Target Multiplicity feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_bShowTargetMultiplicityPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIObjectLink_m_bShowTargetMultiplicity_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIObjectLink_m_bShowTargetMultiplicity_feature", "_UI_CGIObjectLink_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIObjectLink_M_bShowTargetMultiplicity(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the MbShow Target Role feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_bShowTargetRolePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIObjectLink_m_bShowTargetRole_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIObjectLink_m_bShowTargetRole_feature", "_UI_CGIObjectLink_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIObjectLink_M_bShowTargetRole(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the MbShow Link Name feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_bShowLinkNamePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIObjectLink_m_bShowLinkName_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIObjectLink_m_bShowLinkName_feature", "_UI_CGIObjectLink_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIObjectLink_M_bShowLinkName(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This specifies how to implement {@link #getChildren} and is used to deduce an appropriate feature for an
+	 * {@link org.eclipse.emf.edit.command.AddCommand}, {@link org.eclipse.emf.edit.command.RemoveCommand} or
+	 * {@link org.eclipse.emf.edit.command.MoveCommand} in {@link #createCommand}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Collection<? extends EStructuralFeature> getChildrenFeatures(Object object) {
+		if (childrenFeatures == null) {
+			super.getChildrenFeatures(object);
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getCGIObjectLink_Properties());
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getCGIObjectLink_M_rpn());
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getCGIObjectLink_M_sourceRole());
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getCGIObjectLink_M_targetRole());
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getCGIObjectLink_M_sourceMultiplicity());
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getCGIObjectLink_M_targetMultiplicity());
+		}
+		return childrenFeatures;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EStructuralFeature getChildFeature(Object object, Object child) {
+		// Check the type of the specified child object and return the proper feature to use for
+		// adding (see {@link AddCommand}) it as a child.
+
+		return super.getChildFeature(object, child);
+	}
+
+	/**
+	 * This returns CGIObjectLink.gif.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object getImage(Object object) {
+		return overlayImage(object, getResourceLocator().getImage("full/obj16/CGIObjectLink")); //$NON-NLS-1$
+	}
+
+	/**
+	 * This returns the label text for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String getText(Object object) {
+		String label = ((CGIObjectLink)object).getId();
+		return label == null || label.length() == 0 ?
+			getString("_UI_CGIObjectLink_type") : //$NON-NLS-1$
+			getString("_UI_CGIObjectLink_type") + " " + label; //$NON-NLS-1$ //$NON-NLS-2$
+	}
+	
+
+	/**
+	 * This handles model notifications by calling {@link #updateChildren} to update any cached
+	 * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void notifyChanged(Notification notification) {
+		updateChildren(notification);
+
+		switch (notification.getFeatureID(CGIObjectLink.class)) {
+			case UMLRpyPackage.CGI_OBJECT_LINK__MPPARENT:
+			case UMLRpyPackage.CGI_OBJECT_LINK__MSOURCE_TYPE:
+			case UMLRpyPackage.CGI_OBJECT_LINK__MTARGET_TYPE:
+			case UMLRpyPackage.CGI_OBJECT_LINK__MDIRECTION:
+			case UMLRpyPackage.CGI_OBJECT_LINK__MARROW:
+			case UMLRpyPackage.CGI_OBJECT_LINK__MANGLE_POINT1:
+			case UMLRpyPackage.CGI_OBJECT_LINK__MANGLE_POINT2:
+			case UMLRpyPackage.CGI_OBJECT_LINK__MLINE_STYLE:
+			case UMLRpyPackage.CGI_OBJECT_LINK__MSOURCE_PORT:
+			case UMLRpyPackage.CGI_OBJECT_LINK__MTARGET_PORT:
+			case UMLRpyPackage.CGI_OBJECT_LINK__MBSHOW_SOURCE_MULTIPLICITY:
+			case UMLRpyPackage.CGI_OBJECT_LINK__MBSHOW_SOURCE_ROLE:
+			case UMLRpyPackage.CGI_OBJECT_LINK__MBSHOW_TARGET_MULTIPLICITY:
+			case UMLRpyPackage.CGI_OBJECT_LINK__MBSHOW_TARGET_ROLE:
+			case UMLRpyPackage.CGI_OBJECT_LINK__MBSHOW_LINK_NAME:
+				fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), false, true));
+				return;
+			case UMLRpyPackage.CGI_OBJECT_LINK__PROPERTIES:
+			case UMLRpyPackage.CGI_OBJECT_LINK__MRPN:
+			case UMLRpyPackage.CGI_OBJECT_LINK__MSOURCE_ROLE:
+			case UMLRpyPackage.CGI_OBJECT_LINK__MTARGET_ROLE:
+			case UMLRpyPackage.CGI_OBJECT_LINK__MSOURCE_MULTIPLICITY:
+			case UMLRpyPackage.CGI_OBJECT_LINK__MTARGET_MULTIPLICITY:
+				fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), true, false));
+				return;
+		}
+		super.notifyChanged(notification);
+	}
+
+	/**
+	 * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children
+	 * that can be created under this object.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) {
+		super.collectNewChildDescriptors(newChildDescriptors, object);
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGIObjectLink_Properties(),
+				 UMLRpyFactory.eINSTANCE.createIPropertyContainer()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGIObjectLink_M_rpn(),
+				 UMLRpyFactory.eINSTANCE.createCGIText()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGIObjectLink_M_sourceRole(),
+				 UMLRpyFactory.eINSTANCE.createCGIText()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGIObjectLink_M_targetRole(),
+				 UMLRpyFactory.eINSTANCE.createCGIText()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGIObjectLink_M_sourceMultiplicity(),
+				 UMLRpyFactory.eINSTANCE.createCGIText()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGIObjectLink_M_targetMultiplicity(),
+				 UMLRpyFactory.eINSTANCE.createCGIText()));
+	}
+
+	/**
+	 * This returns the label text for {@link org.eclipse.emf.edit.command.CreateChildCommand}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String getCreateChildText(Object owner, Object feature, Object child, Collection<?> selection) {
+		Object childFeature = feature;
+		Object childObject = child;
+
+		boolean qualify =
+			childFeature == UMLRpyPackage.eINSTANCE.getGraphElementsType_M_name() ||
+			childFeature == UMLRpyPackage.eINSTANCE.getCGIObjectLink_M_rpn() ||
+			childFeature == UMLRpyPackage.eINSTANCE.getCGIObjectLink_M_sourceRole() ||
+			childFeature == UMLRpyPackage.eINSTANCE.getCGIObjectLink_M_targetRole() ||
+			childFeature == UMLRpyPackage.eINSTANCE.getCGIObjectLink_M_sourceMultiplicity() ||
+			childFeature == UMLRpyPackage.eINSTANCE.getCGIObjectLink_M_targetMultiplicity();
+
+		if (qualify) {
+			return getString
+				("_UI_CreateChild_text2", //$NON-NLS-1$
+				 new Object[] { getTypeText(childObject), getFeatureText(childFeature), getTypeText(owner) });
+		}
+		return super.getCreateChildText(owner, feature, child, selection);
+	}
+
+}
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/CGIPackageItemProvider.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/CGIPackageItemProvider.java
new file mode 100755
index 0000000..6af1041
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/CGIPackageItemProvider.java
@@ -0,0 +1,433 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.provider;
+
+
+import java.util.Collection;
+import java.util.List;
+
+import org.eclipse.emf.common.notify.AdapterFactory;
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.ecore.EStructuralFeature;
+
+import org.eclipse.emf.edit.provider.ComposeableAdapterFactory;
+import org.eclipse.emf.edit.provider.IItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.ItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.ViewerNotification;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIPackage;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyFactory;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIPackage} object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class CGIPackageItemProvider extends GraphElementsTypeItemProvider {
+	/**
+	 * This constructs an instance from a factory and a notifier.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public CGIPackageItemProvider(AdapterFactory adapterFactory) {
+		super(adapterFactory);
+	}
+
+	/**
+	 * This returns the property descriptors for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) {
+		if (itemPropertyDescriptors == null) {
+			super.getPropertyDescriptors(object);
+
+			addM_pModelObjectPropertyDescriptor(object);
+			addM_pParentPropertyDescriptor(object);
+			addM_transformPropertyDescriptor(object);
+			addM_polygonPropertyDescriptor(object);
+			addM_nNameFormatPropertyDescriptor(object);
+			addM_nIsNameFormatPropertyDescriptor(object);
+			addCompartmentsPropertyDescriptor(object);
+			addM_lineWidthPropertyDescriptor(object);
+			addFramesetPropertyDescriptor(object);
+			addM_bIsStructuredPropertyDescriptor(object);
+		}
+		return itemPropertyDescriptors;
+	}
+
+	/**
+	 * This adds a property descriptor for the MpModel Object feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_pModelObjectPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIPackage_m_pModelObject_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIPackage_m_pModelObject_feature", "_UI_CGIPackage_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIPackage_M_pModelObject(),
+				 true,
+				 false,
+				 true,
+				 null,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the MpParent feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_pParentPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIPackage_m_pParent_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIPackage_m_pParent_feature", "_UI_CGIPackage_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIPackage_M_pParent(),
+				 true,
+				 false,
+				 true,
+				 null,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Mtransform feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_transformPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIPackage_m_transform_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIPackage_m_transform_feature", "_UI_CGIPackage_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIPackage_M_transform(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Mpolygon feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_polygonPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIPackage_m_polygon_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIPackage_m_polygon_feature", "_UI_CGIPackage_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIPackage_M_polygon(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the MnName Format feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_nNameFormatPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIPackage_m_nNameFormat_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIPackage_m_nNameFormat_feature", "_UI_CGIPackage_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIPackage_M_nNameFormat(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the MnIs Name Format feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_nIsNameFormatPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIPackage_m_nIsNameFormat_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIPackage_m_nIsNameFormat_feature", "_UI_CGIPackage_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIPackage_M_nIsNameFormat(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Compartments feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addCompartmentsPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIPackage_Compartments_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIPackage_Compartments_feature", "_UI_CGIPackage_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIPackage_Compartments(),
+				 true,
+				 false,
+				 true,
+				 null,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Mline Width feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_lineWidthPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIPackage_m_lineWidth_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIPackage_m_lineWidth_feature", "_UI_CGIPackage_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIPackage_M_lineWidth(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Frameset feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addFramesetPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIPackage_frameset_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIPackage_frameset_feature", "_UI_CGIPackage_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIPackage_Frameset(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the MbIs Structured feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_bIsStructuredPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIPackage_m_bIsStructured_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIPackage_m_bIsStructured_feature", "_UI_CGIPackage_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIPackage_M_bIsStructured(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This specifies how to implement {@link #getChildren} and is used to deduce an appropriate feature for an
+	 * {@link org.eclipse.emf.edit.command.AddCommand}, {@link org.eclipse.emf.edit.command.RemoveCommand} or
+	 * {@link org.eclipse.emf.edit.command.MoveCommand} in {@link #createCommand}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Collection<? extends EStructuralFeature> getChildrenFeatures(Object object) {
+		if (childrenFeatures == null) {
+			super.getChildrenFeatures(object);
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getCGIPackage_Properties());
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getCGIPackage_M_color());
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getCGIPackage_M_AdditionalLabel());
+		}
+		return childrenFeatures;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EStructuralFeature getChildFeature(Object object, Object child) {
+		// Check the type of the specified child object and return the proper feature to use for
+		// adding (see {@link AddCommand}) it as a child.
+
+		return super.getChildFeature(object, child);
+	}
+
+	/**
+	 * This returns CGIPackage.gif.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object getImage(Object object) {
+		return overlayImage(object, getResourceLocator().getImage("full/obj16/CGIPackage")); //$NON-NLS-1$
+	}
+
+	/**
+	 * This returns the label text for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String getText(Object object) {
+		String label = ((CGIPackage)object).getId();
+		return label == null || label.length() == 0 ?
+			getString("_UI_CGIPackage_type") : //$NON-NLS-1$
+			getString("_UI_CGIPackage_type") + " " + label; //$NON-NLS-1$ //$NON-NLS-2$
+	}
+	
+
+	/**
+	 * This handles model notifications by calling {@link #updateChildren} to update any cached
+	 * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void notifyChanged(Notification notification) {
+		updateChildren(notification);
+
+		switch (notification.getFeatureID(CGIPackage.class)) {
+			case UMLRpyPackage.CGI_PACKAGE__MTRANSFORM:
+			case UMLRpyPackage.CGI_PACKAGE__MPOLYGON:
+			case UMLRpyPackage.CGI_PACKAGE__MNNAME_FORMAT:
+			case UMLRpyPackage.CGI_PACKAGE__MNIS_NAME_FORMAT:
+			case UMLRpyPackage.CGI_PACKAGE__MLINE_WIDTH:
+			case UMLRpyPackage.CGI_PACKAGE__FRAMESET:
+			case UMLRpyPackage.CGI_PACKAGE__MBIS_STRUCTURED:
+				fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), false, true));
+				return;
+			case UMLRpyPackage.CGI_PACKAGE__PROPERTIES:
+			case UMLRpyPackage.CGI_PACKAGE__MCOLOR:
+			case UMLRpyPackage.CGI_PACKAGE__MADDITIONAL_LABEL:
+				fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), true, false));
+				return;
+		}
+		super.notifyChanged(notification);
+	}
+
+	/**
+	 * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children
+	 * that can be created under this object.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) {
+		super.collectNewChildDescriptors(newChildDescriptors, object);
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGIPackage_Properties(),
+				 UMLRpyFactory.eINSTANCE.createIPropertyContainer()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGIPackage_M_color(),
+				 UMLRpyFactory.eINSTANCE.createIColor()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGIPackage_M_AdditionalLabel(),
+				 UMLRpyFactory.eINSTANCE.createCGIText()));
+	}
+
+	/**
+	 * This returns the label text for {@link org.eclipse.emf.edit.command.CreateChildCommand}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String getCreateChildText(Object owner, Object feature, Object child, Collection<?> selection) {
+		Object childFeature = feature;
+		Object childObject = child;
+
+		boolean qualify =
+			childFeature == UMLRpyPackage.eINSTANCE.getGraphElementsType_M_name() ||
+			childFeature == UMLRpyPackage.eINSTANCE.getCGIPackage_M_AdditionalLabel();
+
+		if (qualify) {
+			return getString
+				("_UI_CreateChild_text2", //$NON-NLS-1$
+				 new Object[] { getTypeText(childObject), getFeatureText(childFeature), getTypeText(owner) });
+		}
+		return super.getCreateChildText(owner, feature, child, selection);
+	}
+
+}
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/CGIPartitionItemProvider.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/CGIPartitionItemProvider.java
new file mode 100755
index 0000000..f4823f8
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/CGIPartitionItemProvider.java
@@ -0,0 +1,338 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.provider;
+
+
+import java.util.Collection;
+import java.util.List;
+
+import org.eclipse.emf.common.notify.AdapterFactory;
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.ecore.EStructuralFeature;
+
+import org.eclipse.emf.edit.provider.ComposeableAdapterFactory;
+import org.eclipse.emf.edit.provider.IItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.ItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.ViewerNotification;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIPartition;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyFactory;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIPartition} object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class CGIPartitionItemProvider extends GraphElementsTypeItemProvider {
+	/**
+	 * This constructs an instance from a factory and a notifier.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public CGIPartitionItemProvider(AdapterFactory adapterFactory) {
+		super(adapterFactory);
+	}
+
+	/**
+	 * This returns the property descriptors for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) {
+		if (itemPropertyDescriptors == null) {
+			super.getPropertyDescriptors(object);
+
+			addM_pModelObjectPropertyDescriptor(object);
+			addM_pParentPropertyDescriptor(object);
+			addM_polygonPropertyDescriptor(object);
+			addM_nNameFormatPropertyDescriptor(object);
+			addM_nIsNameFormatPropertyDescriptor(object);
+			addFramesetPropertyDescriptor(object);
+		}
+		return itemPropertyDescriptors;
+	}
+
+	/**
+	 * This adds a property descriptor for the MpModel Object feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_pModelObjectPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIPartition_m_pModelObject_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIPartition_m_pModelObject_feature", "_UI_CGIPartition_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIPartition_M_pModelObject(),
+				 true,
+				 false,
+				 true,
+				 null,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the MpParent feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_pParentPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIPartition_m_pParent_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIPartition_m_pParent_feature", "_UI_CGIPartition_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIPartition_M_pParent(),
+				 true,
+				 false,
+				 true,
+				 null,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Mpolygon feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_polygonPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIPartition_m_polygon_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIPartition_m_polygon_feature", "_UI_CGIPartition_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIPartition_M_polygon(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the MnName Format feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_nNameFormatPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIPartition_m_nNameFormat_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIPartition_m_nNameFormat_feature", "_UI_CGIPartition_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIPartition_M_nNameFormat(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the MnIs Name Format feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_nIsNameFormatPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIPartition_m_nIsNameFormat_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIPartition_m_nIsNameFormat_feature", "_UI_CGIPartition_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIPartition_M_nIsNameFormat(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Frameset feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addFramesetPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIPartition_frameset_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIPartition_frameset_feature", "_UI_CGIPartition_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIPartition_Frameset(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This specifies how to implement {@link #getChildren} and is used to deduce an appropriate feature for an
+	 * {@link org.eclipse.emf.edit.command.AddCommand}, {@link org.eclipse.emf.edit.command.RemoveCommand} or
+	 * {@link org.eclipse.emf.edit.command.MoveCommand} in {@link #createCommand}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Collection<? extends EStructuralFeature> getChildrenFeatures(Object object) {
+		if (childrenFeatures == null) {
+			super.getChildrenFeatures(object);
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getCGIPartition_M_AdditionalLabel());
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getCGIPartition_Properties());
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getCGIPartition_Compartments());
+		}
+		return childrenFeatures;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EStructuralFeature getChildFeature(Object object, Object child) {
+		// Check the type of the specified child object and return the proper feature to use for
+		// adding (see {@link AddCommand}) it as a child.
+
+		return super.getChildFeature(object, child);
+	}
+
+	/**
+	 * This returns CGIPartition.gif.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object getImage(Object object) {
+		return overlayImage(object, getResourceLocator().getImage("full/obj16/CGIPartition")); //$NON-NLS-1$
+	}
+
+	/**
+	 * This returns the label text for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String getText(Object object) {
+		String label = ((CGIPartition)object).getId();
+		return label == null || label.length() == 0 ?
+			getString("_UI_CGIPartition_type") : //$NON-NLS-1$
+			getString("_UI_CGIPartition_type") + " " + label; //$NON-NLS-1$ //$NON-NLS-2$
+	}
+	
+
+	/**
+	 * This handles model notifications by calling {@link #updateChildren} to update any cached
+	 * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void notifyChanged(Notification notification) {
+		updateChildren(notification);
+
+		switch (notification.getFeatureID(CGIPartition.class)) {
+			case UMLRpyPackage.CGI_PARTITION__MPOLYGON:
+			case UMLRpyPackage.CGI_PARTITION__MNNAME_FORMAT:
+			case UMLRpyPackage.CGI_PARTITION__MNIS_NAME_FORMAT:
+			case UMLRpyPackage.CGI_PARTITION__FRAMESET:
+				fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), false, true));
+				return;
+			case UMLRpyPackage.CGI_PARTITION__MADDITIONAL_LABEL:
+			case UMLRpyPackage.CGI_PARTITION__PROPERTIES:
+			case UMLRpyPackage.CGI_PARTITION__COMPARTMENTS:
+				fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), true, false));
+				return;
+		}
+		super.notifyChanged(notification);
+	}
+
+	/**
+	 * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children
+	 * that can be created under this object.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) {
+		super.collectNewChildDescriptors(newChildDescriptors, object);
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGIPartition_M_AdditionalLabel(),
+				 UMLRpyFactory.eINSTANCE.createCGIText()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGIPartition_Properties(),
+				 UMLRpyFactory.eINSTANCE.createIPropertyContainer()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGIPartition_Compartments(),
+				 UMLRpyFactory.eINSTANCE.createCGICompartment()));
+	}
+
+	/**
+	 * This returns the label text for {@link org.eclipse.emf.edit.command.CreateChildCommand}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String getCreateChildText(Object owner, Object feature, Object child, Collection<?> selection) {
+		Object childFeature = feature;
+		Object childObject = child;
+
+		boolean qualify =
+			childFeature == UMLRpyPackage.eINSTANCE.getGraphElementsType_M_name() ||
+			childFeature == UMLRpyPackage.eINSTANCE.getCGIPartition_M_AdditionalLabel();
+
+		if (qualify) {
+			return getString
+				("_UI_CreateChild_text2", //$NON-NLS-1$
+				 new Object[] { getTypeText(childObject), getFeatureText(childFeature), getTypeText(owner) });
+		}
+		return super.getCreateChildText(owner, feature, child, selection);
+	}
+
+}
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/CGIPortConnectorItemProvider.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/CGIPortConnectorItemProvider.java
new file mode 100755
index 0000000..b45cf9a
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/CGIPortConnectorItemProvider.java
@@ -0,0 +1,418 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.provider;
+
+
+import java.util.Collection;
+import java.util.List;
+
+import org.eclipse.emf.common.notify.AdapterFactory;
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.ecore.EStructuralFeature;
+
+import org.eclipse.emf.edit.provider.ComposeableAdapterFactory;
+import org.eclipse.emf.edit.provider.IItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.ItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.ViewerNotification;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIPortConnector;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyFactory;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIPortConnector} object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class CGIPortConnectorItemProvider extends GraphElementsTypeItemProvider {
+	/**
+	 * This constructs an instance from a factory and a notifier.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public CGIPortConnectorItemProvider(AdapterFactory adapterFactory) {
+		super(adapterFactory);
+	}
+
+	/**
+	 * This returns the property descriptors for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) {
+		if (itemPropertyDescriptors == null) {
+			super.getPropertyDescriptors(object);
+
+			addM_pModelObjectPropertyDescriptor(object);
+			addM_pParentPropertyDescriptor(object);
+			addM_transformPropertyDescriptor(object);
+			addM_positionPropertyDescriptor(object);
+			addM_pInheritsFromPropertyDescriptor(object);
+			addM_nInheritanceMaskPropertyDescriptor(object);
+			addM_SubTypePropertyDescriptor(object);
+			addM_bVisiblePropertyDescriptor(object);
+			addM_nAnglePropertyDescriptor(object);
+		}
+		return itemPropertyDescriptors;
+	}
+
+	/**
+	 * This adds a property descriptor for the MpModel Object feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_pModelObjectPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIPortConnector_m_pModelObject_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIPortConnector_m_pModelObject_feature", "_UI_CGIPortConnector_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIPortConnector_M_pModelObject(),
+				 true,
+				 false,
+				 true,
+				 null,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the MpParent feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_pParentPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIPortConnector_m_pParent_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIPortConnector_m_pParent_feature", "_UI_CGIPortConnector_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIPortConnector_M_pParent(),
+				 true,
+				 false,
+				 true,
+				 null,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Mtransform feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_transformPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIPortConnector_m_transform_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIPortConnector_m_transform_feature", "_UI_CGIPortConnector_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIPortConnector_M_transform(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Mposition feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_positionPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIPortConnector_m_position_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIPortConnector_m_position_feature", "_UI_CGIPortConnector_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIPortConnector_M_position(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the MpInherits From feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_pInheritsFromPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIPortConnector_m_pInheritsFrom_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIPortConnector_m_pInheritsFrom_feature", "_UI_CGIPortConnector_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIPortConnector_M_pInheritsFrom(),
+				 true,
+				 false,
+				 true,
+				 null,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the MnInheritance Mask feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_nInheritanceMaskPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIPortConnector_m_nInheritanceMask_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIPortConnector_m_nInheritanceMask_feature", "_UI_CGIPortConnector_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIPortConnector_M_nInheritanceMask(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the MSub Type feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_SubTypePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIPortConnector_m_SubType_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIPortConnector_m_SubType_feature", "_UI_CGIPortConnector_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIPortConnector_M_SubType(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the MbVisible feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_bVisiblePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIPortConnector_m_bVisible_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIPortConnector_m_bVisible_feature", "_UI_CGIPortConnector_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIPortConnector_M_bVisible(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the MnAngle feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_nAnglePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIPortConnector_m_nAngle_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIPortConnector_m_nAngle_feature", "_UI_CGIPortConnector_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIPortConnector_M_nAngle(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This specifies how to implement {@link #getChildren} and is used to deduce an appropriate feature for an
+	 * {@link org.eclipse.emf.edit.command.AddCommand}, {@link org.eclipse.emf.edit.command.RemoveCommand} or
+	 * {@link org.eclipse.emf.edit.command.MoveCommand} in {@link #createCommand}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Collection<? extends EStructuralFeature> getChildrenFeatures(Object object) {
+		if (childrenFeatures == null) {
+			super.getChildrenFeatures(object);
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getCGIPortConnector_M_AdditionalLabel());
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getCGIPortConnector_M_providedInterfaceLabel());
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getCGIPortConnector_M_requiredInterfaceLabel());
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getCGIPortConnector_Properties());
+		}
+		return childrenFeatures;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EStructuralFeature getChildFeature(Object object, Object child) {
+		// Check the type of the specified child object and return the proper feature to use for
+		// adding (see {@link AddCommand}) it as a child.
+
+		return super.getChildFeature(object, child);
+	}
+
+	/**
+	 * This returns CGIPortConnector.gif.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object getImage(Object object) {
+		return overlayImage(object, getResourceLocator().getImage("full/obj16/CGIPortConnector")); //$NON-NLS-1$
+	}
+
+	/**
+	 * This returns the label text for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String getText(Object object) {
+		String label = ((CGIPortConnector)object).getId();
+		return label == null || label.length() == 0 ?
+			getString("_UI_CGIPortConnector_type") : //$NON-NLS-1$
+			getString("_UI_CGIPortConnector_type") + " " + label; //$NON-NLS-1$ //$NON-NLS-2$
+	}
+	
+
+	/**
+	 * This handles model notifications by calling {@link #updateChildren} to update any cached
+	 * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void notifyChanged(Notification notification) {
+		updateChildren(notification);
+
+		switch (notification.getFeatureID(CGIPortConnector.class)) {
+			case UMLRpyPackage.CGI_PORT_CONNECTOR__MTRANSFORM:
+			case UMLRpyPackage.CGI_PORT_CONNECTOR__MPOSITION:
+			case UMLRpyPackage.CGI_PORT_CONNECTOR__MNINHERITANCE_MASK:
+			case UMLRpyPackage.CGI_PORT_CONNECTOR__MSUB_TYPE:
+			case UMLRpyPackage.CGI_PORT_CONNECTOR__MBVISIBLE:
+			case UMLRpyPackage.CGI_PORT_CONNECTOR__MNANGLE:
+				fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), false, true));
+				return;
+			case UMLRpyPackage.CGI_PORT_CONNECTOR__MADDITIONAL_LABEL:
+			case UMLRpyPackage.CGI_PORT_CONNECTOR__MPROVIDED_INTERFACE_LABEL:
+			case UMLRpyPackage.CGI_PORT_CONNECTOR__MREQUIRED_INTERFACE_LABEL:
+			case UMLRpyPackage.CGI_PORT_CONNECTOR__PROPERTIES:
+				fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), true, false));
+				return;
+		}
+		super.notifyChanged(notification);
+	}
+
+	/**
+	 * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children
+	 * that can be created under this object.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) {
+		super.collectNewChildDescriptors(newChildDescriptors, object);
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGIPortConnector_M_AdditionalLabel(),
+				 UMLRpyFactory.eINSTANCE.createCGIText()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGIPortConnector_M_providedInterfaceLabel(),
+				 UMLRpyFactory.eINSTANCE.createCGIText()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGIPortConnector_M_requiredInterfaceLabel(),
+				 UMLRpyFactory.eINSTANCE.createCGIText()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGIPortConnector_Properties(),
+				 UMLRpyFactory.eINSTANCE.createIPropertyContainer()));
+	}
+
+	/**
+	 * This returns the label text for {@link org.eclipse.emf.edit.command.CreateChildCommand}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String getCreateChildText(Object owner, Object feature, Object child, Collection<?> selection) {
+		Object childFeature = feature;
+		Object childObject = child;
+
+		boolean qualify =
+			childFeature == UMLRpyPackage.eINSTANCE.getGraphElementsType_M_name() ||
+			childFeature == UMLRpyPackage.eINSTANCE.getCGIPortConnector_M_AdditionalLabel() ||
+			childFeature == UMLRpyPackage.eINSTANCE.getCGIPortConnector_M_providedInterfaceLabel() ||
+			childFeature == UMLRpyPackage.eINSTANCE.getCGIPortConnector_M_requiredInterfaceLabel();
+
+		if (qualify) {
+			return getString
+				("_UI_CreateChild_text2", //$NON-NLS-1$
+				 new Object[] { getTypeText(childObject), getFeatureText(childFeature), getTypeText(owner) });
+		}
+		return super.getCreateChildText(owner, feature, child, selection);
+	}
+
+}
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/CGIStateChartItemProvider.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/CGIStateChartItemProvider.java
new file mode 100755
index 0000000..b9aeef7
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/CGIStateChartItemProvider.java
@@ -0,0 +1,275 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.provider;
+
+
+import java.util.Collection;
+import java.util.List;
+
+import org.eclipse.emf.common.notify.AdapterFactory;
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.ecore.EStructuralFeature;
+
+import org.eclipse.emf.edit.provider.ComposeableAdapterFactory;
+import org.eclipse.emf.edit.provider.IItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.ItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.ViewerNotification;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIStateChart;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyFactory;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIStateChart} object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class CGIStateChartItemProvider extends GraphicChartTypeItemProvider {
+	/**
+	 * This constructs an instance from a factory and a notifier.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public CGIStateChartItemProvider(AdapterFactory adapterFactory) {
+		super(adapterFactory);
+	}
+
+	/**
+	 * This returns the property descriptors for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) {
+		if (itemPropertyDescriptors == null) {
+			super.getPropertyDescriptors(object);
+
+			addM_pModelObjectPropertyDescriptor(object);
+			addM_pRootPropertyDescriptor(object);
+			addMyStatePropertyDescriptor(object);
+			addM_pInheritsFromPropertyDescriptor(object);
+			addDiagramListPropertyDescriptor(object);
+		}
+		return itemPropertyDescriptors;
+	}
+
+	/**
+	 * This adds a property descriptor for the MpModel Object feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_pModelObjectPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIStateChart_m_pModelObject_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIStateChart_m_pModelObject_feature", "_UI_CGIStateChart_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIStateChart_M_pModelObject(),
+				 true,
+				 false,
+				 true,
+				 null,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the MpRoot feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_pRootPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIStateChart_m_pRoot_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIStateChart_m_pRoot_feature", "_UI_CGIStateChart_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIStateChart_M_pRoot(),
+				 true,
+				 false,
+				 true,
+				 null,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the My State feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addMyStatePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIStateChart_myState_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIStateChart_myState_feature", "_UI_CGIStateChart_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIStateChart_MyState(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the MpInherits From feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_pInheritsFromPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIStateChart_m_pInheritsFrom_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIStateChart_m_pInheritsFrom_feature", "_UI_CGIStateChart_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIStateChart_M_pInheritsFrom(),
+				 true,
+				 false,
+				 true,
+				 null,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Diagram List feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addDiagramListPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIStateChart_DiagramList_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIStateChart_DiagramList_feature", "_UI_CGIStateChart_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIStateChart_DiagramList(),
+				 true,
+				 false,
+				 true,
+				 null,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This specifies how to implement {@link #getChildren} and is used to deduce an appropriate feature for an
+	 * {@link org.eclipse.emf.edit.command.AddCommand}, {@link org.eclipse.emf.edit.command.RemoveCommand} or
+	 * {@link org.eclipse.emf.edit.command.MoveCommand} in {@link #createCommand}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Collection<? extends EStructuralFeature> getChildrenFeatures(Object object) {
+		if (childrenFeatures == null) {
+			super.getChildrenFeatures(object);
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getCGIStateChart_Properties());
+		}
+		return childrenFeatures;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EStructuralFeature getChildFeature(Object object, Object child) {
+		// Check the type of the specified child object and return the proper feature to use for
+		// adding (see {@link AddCommand}) it as a child.
+
+		return super.getChildFeature(object, child);
+	}
+
+	/**
+	 * This returns CGIStateChart.gif.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object getImage(Object object) {
+		return overlayImage(object, getResourceLocator().getImage("full/obj16/CGIStateChart")); //$NON-NLS-1$
+	}
+
+	/**
+	 * This returns the label text for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String getText(Object object) {
+		String label = ((CGIStateChart)object).getId();
+		return label == null || label.length() == 0 ?
+			getString("_UI_CGIStateChart_type") : //$NON-NLS-1$
+			getString("_UI_CGIStateChart_type") + " " + label; //$NON-NLS-1$ //$NON-NLS-2$
+	}
+	
+
+	/**
+	 * This handles model notifications by calling {@link #updateChildren} to update any cached
+	 * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void notifyChanged(Notification notification) {
+		updateChildren(notification);
+
+		switch (notification.getFeatureID(CGIStateChart.class)) {
+			case UMLRpyPackage.CGI_STATE_CHART__MY_STATE:
+				fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), false, true));
+				return;
+			case UMLRpyPackage.CGI_STATE_CHART__PROPERTIES:
+				fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), true, false));
+				return;
+		}
+		super.notifyChanged(notification);
+	}
+
+	/**
+	 * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children
+	 * that can be created under this object.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) {
+		super.collectNewChildDescriptors(newChildDescriptors, object);
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGIStateChart_Properties(),
+				 UMLRpyFactory.eINSTANCE.createIPropertyContainer()));
+	}
+
+}
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/CGIStateItemProvider.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/CGIStateItemProvider.java
new file mode 100755
index 0000000..f04420c
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/CGIStateItemProvider.java
@@ -0,0 +1,632 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.provider;
+
+
+import java.util.Collection;
+import java.util.List;
+
+import org.eclipse.emf.common.notify.AdapterFactory;
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.ecore.EStructuralFeature;
+
+import org.eclipse.emf.edit.provider.ComposeableAdapterFactory;
+import org.eclipse.emf.edit.provider.IItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.ItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.ViewerNotification;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIState;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyFactory;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIState} object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class CGIStateItemProvider extends GraphElementsTypeItemProvider {
+	/**
+	 * This constructs an instance from a factory and a notifier.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public CGIStateItemProvider(AdapterFactory adapterFactory) {
+		super(adapterFactory);
+	}
+
+	/**
+	 * This returns the property descriptors for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) {
+		if (itemPropertyDescriptors == null) {
+			super.getPropertyDescriptors(object);
+
+			addM_pModelObjectPropertyDescriptor(object);
+			addM_polygonPropertyDescriptor(object);
+			addM_nNameFormatPropertyDescriptor(object);
+			addM_nIsNameFormatPropertyDescriptor(object);
+			addNAndLineCountPropertyDescriptor(object);
+			addM_nInheritanceMaskPropertyDescriptor(object);
+			addM_pDefaultComponentRelationPropertyDescriptor(object);
+			addM_pParentPropertyDescriptor(object);
+			addM_transformPropertyDescriptor(object);
+			addAndLinePolyPropertyDescriptor(object);
+			addM_pVirtualParentPropertyDescriptor(object);
+			addM_moveAndLineTimeStampPropertyDescriptor(object);
+			addMyStatePropertyDescriptor(object);
+			addM_pInheritsFromPropertyDescriptor(object);
+			addFramesetPropertyDescriptor(object);
+			addM_bFramesetModifiedPropertyDescriptor(object);
+			addM_bIsMisplacedPropertyDescriptor(object);
+			addM_lineWidthPropertyDescriptor(object);
+		}
+		return itemPropertyDescriptors;
+	}
+
+	/**
+	 * This adds a property descriptor for the MpModel Object feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_pModelObjectPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIState_m_pModelObject_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIState_m_pModelObject_feature", "_UI_CGIState_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIState_M_pModelObject(),
+				 true,
+				 false,
+				 true,
+				 null,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Mpolygon feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_polygonPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIState_m_polygon_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIState_m_polygon_feature", "_UI_CGIState_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIState_M_polygon(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the MnName Format feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_nNameFormatPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIState_m_nNameFormat_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIState_m_nNameFormat_feature", "_UI_CGIState_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIState_M_nNameFormat(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the MnIs Name Format feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_nIsNameFormatPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIState_m_nIsNameFormat_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIState_m_nIsNameFormat_feature", "_UI_CGIState_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIState_M_nIsNameFormat(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the NAnd Line Count feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addNAndLineCountPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIState_nAndLineCount_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIState_nAndLineCount_feature", "_UI_CGIState_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIState_NAndLineCount(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the MnInheritance Mask feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_nInheritanceMaskPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIState_m_nInheritanceMask_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIState_m_nInheritanceMask_feature", "_UI_CGIState_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIState_M_nInheritanceMask(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the MpDefault Component Relation feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_pDefaultComponentRelationPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIState_m_pDefaultComponentRelation_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIState_m_pDefaultComponentRelation_feature", "_UI_CGIState_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIState_M_pDefaultComponentRelation(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the MpParent feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_pParentPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIState_m_pParent_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIState_m_pParent_feature", "_UI_CGIState_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIState_M_pParent(),
+				 true,
+				 false,
+				 false,
+				 null,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Mtransform feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_transformPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIState_m_transform_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIState_m_transform_feature", "_UI_CGIState_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIState_M_transform(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the And Line Poly feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addAndLinePolyPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIState_andLinePoly_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIState_andLinePoly_feature", "_UI_CGIState_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIState_AndLinePoly(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the MpVirtual Parent feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_pVirtualParentPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIState_m_pVirtualParent_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIState_m_pVirtualParent_feature", "_UI_CGIState_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIState_M_pVirtualParent(),
+				 true,
+				 false,
+				 true,
+				 null,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Mmove And Line Time Stamp feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_moveAndLineTimeStampPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIState_m_moveAndLineTimeStamp_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIState_m_moveAndLineTimeStamp_feature", "_UI_CGIState_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIState_M_moveAndLineTimeStamp(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the My State feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addMyStatePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIState_myState_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIState_myState_feature", "_UI_CGIState_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIState_MyState(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the MpInherits From feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_pInheritsFromPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIState_m_pInheritsFrom_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIState_m_pInheritsFrom_feature", "_UI_CGIState_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIState_M_pInheritsFrom(),
+				 true,
+				 false,
+				 true,
+				 null,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Frameset feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addFramesetPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIState_frameset_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIState_frameset_feature", "_UI_CGIState_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIState_Frameset(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the MbFrameset Modified feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_bFramesetModifiedPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIState_m_bFramesetModified_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIState_m_bFramesetModified_feature", "_UI_CGIState_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIState_M_bFramesetModified(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the MbIs Misplaced feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_bIsMisplacedPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIState_m_bIsMisplaced_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIState_m_bIsMisplaced_feature", "_UI_CGIState_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIState_M_bIsMisplaced(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Mline Width feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_lineWidthPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIState_m_lineWidth_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIState_m_lineWidth_feature", "_UI_CGIState_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIState_M_lineWidth(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This specifies how to implement {@link #getChildren} and is used to deduce an appropriate feature for an
+	 * {@link org.eclipse.emf.edit.command.AddCommand}, {@link org.eclipse.emf.edit.command.RemoveCommand} or
+	 * {@link org.eclipse.emf.edit.command.MoveCommand} in {@link #createCommand}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Collection<? extends EStructuralFeature> getChildrenFeatures(Object object) {
+		if (childrenFeatures == null) {
+			super.getChildrenFeatures(object);
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getCGIState_M_AdditionalLabel());
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getCGIState_Properties());
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getCGIState_M_color());
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getCGIState_Compartments());
+		}
+		return childrenFeatures;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EStructuralFeature getChildFeature(Object object, Object child) {
+		// Check the type of the specified child object and return the proper feature to use for
+		// adding (see {@link AddCommand}) it as a child.
+
+		return super.getChildFeature(object, child);
+	}
+
+	/**
+	 * This returns CGIState.gif.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object getImage(Object object) {
+		return overlayImage(object, getResourceLocator().getImage("full/obj16/CGIState")); //$NON-NLS-1$
+	}
+
+	/**
+	 * This returns the label text for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String getText(Object object) {
+		String label = ((CGIState)object).getId();
+		return label == null || label.length() == 0 ?
+			getString("_UI_CGIState_type") : //$NON-NLS-1$
+			getString("_UI_CGIState_type") + " " + label; //$NON-NLS-1$ //$NON-NLS-2$
+	}
+	
+
+	/**
+	 * This handles model notifications by calling {@link #updateChildren} to update any cached
+	 * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void notifyChanged(Notification notification) {
+		updateChildren(notification);
+
+		switch (notification.getFeatureID(CGIState.class)) {
+			case UMLRpyPackage.CGI_STATE__MPOLYGON:
+			case UMLRpyPackage.CGI_STATE__MNNAME_FORMAT:
+			case UMLRpyPackage.CGI_STATE__MNIS_NAME_FORMAT:
+			case UMLRpyPackage.CGI_STATE__NAND_LINE_COUNT:
+			case UMLRpyPackage.CGI_STATE__MNINHERITANCE_MASK:
+			case UMLRpyPackage.CGI_STATE__MPDEFAULT_COMPONENT_RELATION:
+			case UMLRpyPackage.CGI_STATE__MPPARENT:
+			case UMLRpyPackage.CGI_STATE__MTRANSFORM:
+			case UMLRpyPackage.CGI_STATE__AND_LINE_POLY:
+			case UMLRpyPackage.CGI_STATE__MMOVE_AND_LINE_TIME_STAMP:
+			case UMLRpyPackage.CGI_STATE__MY_STATE:
+			case UMLRpyPackage.CGI_STATE__FRAMESET:
+			case UMLRpyPackage.CGI_STATE__MBFRAMESET_MODIFIED:
+			case UMLRpyPackage.CGI_STATE__MBIS_MISPLACED:
+			case UMLRpyPackage.CGI_STATE__MLINE_WIDTH:
+				fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), false, true));
+				return;
+			case UMLRpyPackage.CGI_STATE__MADDITIONAL_LABEL:
+			case UMLRpyPackage.CGI_STATE__PROPERTIES:
+			case UMLRpyPackage.CGI_STATE__MCOLOR:
+			case UMLRpyPackage.CGI_STATE__COMPARTMENTS:
+				fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), true, false));
+				return;
+		}
+		super.notifyChanged(notification);
+	}
+
+	/**
+	 * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children
+	 * that can be created under this object.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) {
+		super.collectNewChildDescriptors(newChildDescriptors, object);
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGIState_M_AdditionalLabel(),
+				 UMLRpyFactory.eINSTANCE.createCGIText()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGIState_Properties(),
+				 UMLRpyFactory.eINSTANCE.createIPropertyContainer()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGIState_M_color(),
+				 UMLRpyFactory.eINSTANCE.createIColor()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGIState_Compartments(),
+				 UMLRpyFactory.eINSTANCE.createCGICompartment()));
+	}
+
+	/**
+	 * This returns the label text for {@link org.eclipse.emf.edit.command.CreateChildCommand}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String getCreateChildText(Object owner, Object feature, Object child, Collection<?> selection) {
+		Object childFeature = feature;
+		Object childObject = child;
+
+		boolean qualify =
+			childFeature == UMLRpyPackage.eINSTANCE.getGraphElementsType_M_name() ||
+			childFeature == UMLRpyPackage.eINSTANCE.getCGIState_M_AdditionalLabel();
+
+		if (qualify) {
+			return getString
+				("_UI_CreateChild_text2", //$NON-NLS-1$
+				 new Object[] { getTypeText(childObject), getFeatureText(childFeature), getTypeText(owner) });
+		}
+		return super.getCreateChildText(owner, feature, child, selection);
+	}
+
+}
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/CGISwimlaneFrameItemProvider.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/CGISwimlaneFrameItemProvider.java
new file mode 100755
index 0000000..0f66d16
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/CGISwimlaneFrameItemProvider.java
@@ -0,0 +1,349 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.provider;
+
+
+import java.util.Collection;
+import java.util.List;
+
+import org.eclipse.emf.common.notify.AdapterFactory;
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.ecore.EStructuralFeature;
+
+import org.eclipse.emf.edit.provider.ComposeableAdapterFactory;
+import org.eclipse.emf.edit.provider.IItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.ItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.ViewerNotification;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGISwimlaneFrame;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyFactory;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGISwimlaneFrame} object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class CGISwimlaneFrameItemProvider extends GraphElementsTypeItemProvider {
+	/**
+	 * This constructs an instance from a factory and a notifier.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public CGISwimlaneFrameItemProvider(AdapterFactory adapterFactory) {
+		super(adapterFactory);
+	}
+
+	/**
+	 * This returns the property descriptors for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) {
+		if (itemPropertyDescriptors == null) {
+			super.getPropertyDescriptors(object);
+
+			addM_pModelObjectPropertyDescriptor(object);
+			addM_pParentPropertyDescriptor(object);
+			addM_polygonPropertyDescriptor(object);
+			addM_nNameFormatPropertyDescriptor(object);
+			addM_nIsNameFormatPropertyDescriptor(object);
+			addFramesetPropertyDescriptor(object);
+			addM_transformPropertyDescriptor(object);
+			addM_bFramesetModifiedPropertyDescriptor(object);
+		}
+		return itemPropertyDescriptors;
+	}
+
+	/**
+	 * This adds a property descriptor for the MpModel Object feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_pModelObjectPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGISwimlaneFrame_m_pModelObject_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGISwimlaneFrame_m_pModelObject_feature", "_UI_CGISwimlaneFrame_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGISwimlaneFrame_M_pModelObject(),
+				 true,
+				 false,
+				 true,
+				 null,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the MpParent feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_pParentPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGISwimlaneFrame_m_pParent_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGISwimlaneFrame_m_pParent_feature", "_UI_CGISwimlaneFrame_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGISwimlaneFrame_M_pParent(),
+				 true,
+				 false,
+				 true,
+				 null,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Mpolygon feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_polygonPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGISwimlaneFrame_m_polygon_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGISwimlaneFrame_m_polygon_feature", "_UI_CGISwimlaneFrame_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGISwimlaneFrame_M_polygon(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the MnName Format feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_nNameFormatPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGISwimlaneFrame_m_nNameFormat_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGISwimlaneFrame_m_nNameFormat_feature", "_UI_CGISwimlaneFrame_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGISwimlaneFrame_M_nNameFormat(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the MnIs Name Format feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_nIsNameFormatPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGISwimlaneFrame_m_nIsNameFormat_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGISwimlaneFrame_m_nIsNameFormat_feature", "_UI_CGISwimlaneFrame_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGISwimlaneFrame_M_nIsNameFormat(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Frameset feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addFramesetPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGISwimlaneFrame_frameset_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGISwimlaneFrame_frameset_feature", "_UI_CGISwimlaneFrame_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGISwimlaneFrame_Frameset(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Mtransform feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_transformPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGISwimlaneFrame_m_transform_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGISwimlaneFrame_m_transform_feature", "_UI_CGISwimlaneFrame_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGISwimlaneFrame_M_transform(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the MbFrameset Modified feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_bFramesetModifiedPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGISwimlaneFrame_m_bFramesetModified_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGISwimlaneFrame_m_bFramesetModified_feature", "_UI_CGISwimlaneFrame_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGISwimlaneFrame_M_bFramesetModified(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This specifies how to implement {@link #getChildren} and is used to deduce an appropriate feature for an
+	 * {@link org.eclipse.emf.edit.command.AddCommand}, {@link org.eclipse.emf.edit.command.RemoveCommand} or
+	 * {@link org.eclipse.emf.edit.command.MoveCommand} in {@link #createCommand}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Collection<? extends EStructuralFeature> getChildrenFeatures(Object object) {
+		if (childrenFeatures == null) {
+			super.getChildrenFeatures(object);
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getCGISwimlaneFrame_Compartments());
+		}
+		return childrenFeatures;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EStructuralFeature getChildFeature(Object object, Object child) {
+		// Check the type of the specified child object and return the proper feature to use for
+		// adding (see {@link AddCommand}) it as a child.
+
+		return super.getChildFeature(object, child);
+	}
+
+	/**
+	 * This returns CGISwimlaneFrame.gif.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object getImage(Object object) {
+		return overlayImage(object, getResourceLocator().getImage("full/obj16/CGISwimlaneFrame")); //$NON-NLS-1$
+	}
+
+	/**
+	 * This returns the label text for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String getText(Object object) {
+		String label = ((CGISwimlaneFrame)object).getId();
+		return label == null || label.length() == 0 ?
+			getString("_UI_CGISwimlaneFrame_type") : //$NON-NLS-1$
+			getString("_UI_CGISwimlaneFrame_type") + " " + label; //$NON-NLS-1$ //$NON-NLS-2$
+	}
+	
+
+	/**
+	 * This handles model notifications by calling {@link #updateChildren} to update any cached
+	 * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void notifyChanged(Notification notification) {
+		updateChildren(notification);
+
+		switch (notification.getFeatureID(CGISwimlaneFrame.class)) {
+			case UMLRpyPackage.CGI_SWIMLANE_FRAME__MPOLYGON:
+			case UMLRpyPackage.CGI_SWIMLANE_FRAME__MNNAME_FORMAT:
+			case UMLRpyPackage.CGI_SWIMLANE_FRAME__MNIS_NAME_FORMAT:
+			case UMLRpyPackage.CGI_SWIMLANE_FRAME__FRAMESET:
+			case UMLRpyPackage.CGI_SWIMLANE_FRAME__MTRANSFORM:
+			case UMLRpyPackage.CGI_SWIMLANE_FRAME__MBFRAMESET_MODIFIED:
+				fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), false, true));
+				return;
+			case UMLRpyPackage.CGI_SWIMLANE_FRAME__COMPARTMENTS:
+				fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), true, false));
+				return;
+		}
+		super.notifyChanged(notification);
+	}
+
+	/**
+	 * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children
+	 * that can be created under this object.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) {
+		super.collectNewChildDescriptors(newChildDescriptors, object);
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGISwimlaneFrame_Compartments(),
+				 UMLRpyFactory.eINSTANCE.createCGICompartment()));
+	}
+
+}
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/CGITextBoxItemProvider.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/CGITextBoxItemProvider.java
new file mode 100755
index 0000000..e662832
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/CGITextBoxItemProvider.java
@@ -0,0 +1,614 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.provider;
+
+
+import java.util.Collection;
+import java.util.List;
+
+import org.eclipse.emf.common.notify.AdapterFactory;
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.ecore.EStructuralFeature;
+
+import org.eclipse.emf.edit.provider.ComposeableAdapterFactory;
+import org.eclipse.emf.edit.provider.IItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.ItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.ViewerNotification;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGITextBox;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyFactory;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGITextBox} object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class CGITextBoxItemProvider extends GraphElementsTypeItemProvider {
+	/**
+	 * This constructs an instance from a factory and a notifier.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public CGITextBoxItemProvider(AdapterFactory adapterFactory) {
+		super(adapterFactory);
+	}
+
+	/**
+	 * This returns the property descriptors for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) {
+		if (itemPropertyDescriptors == null) {
+			super.getPropertyDescriptors(object);
+
+			addM_pModelObjectPropertyDescriptor(object);
+			addM_pParentPropertyDescriptor(object);
+			addM_transformPropertyDescriptor(object);
+			addM_polygonPropertyDescriptor(object);
+			addM_nNameFormatPropertyDescriptor(object);
+			addM_nIsNameFormatPropertyDescriptor(object);
+			addCompartmentsPropertyDescriptor(object);
+			addM_csModelObjPathPropertyDescriptor(object);
+			addM_csNamePropertyDescriptor(object);
+		}
+		return itemPropertyDescriptors;
+	}
+
+	/**
+	 * This adds a property descriptor for the MpModel Object feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_pModelObjectPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGITextBox_m_pModelObject_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGITextBox_m_pModelObject_feature", "_UI_CGITextBox_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGITextBox_M_pModelObject(),
+				 true,
+				 false,
+				 true,
+				 null,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the MpParent feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_pParentPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGITextBox_m_pParent_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGITextBox_m_pParent_feature", "_UI_CGITextBox_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGITextBox_M_pParent(),
+				 true,
+				 false,
+				 true,
+				 null,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Mtransform feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_transformPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGITextBox_m_transform_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGITextBox_m_transform_feature", "_UI_CGITextBox_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGITextBox_M_transform(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Mpolygon feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_polygonPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGITextBox_m_polygon_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGITextBox_m_polygon_feature", "_UI_CGITextBox_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGITextBox_M_polygon(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the MnName Format feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_nNameFormatPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGITextBox_m_nNameFormat_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGITextBox_m_nNameFormat_feature", "_UI_CGITextBox_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGITextBox_M_nNameFormat(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the MnIs Name Format feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_nIsNameFormatPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGITextBox_m_nIsNameFormat_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGITextBox_m_nIsNameFormat_feature", "_UI_CGITextBox_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGITextBox_M_nIsNameFormat(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Compartments feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addCompartmentsPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGITextBox_Compartments_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGITextBox_Compartments_feature", "_UI_CGITextBox_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGITextBox_Compartments(),
+				 true,
+				 false,
+				 true,
+				 null,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Mcs Model Obj Path feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_csModelObjPathPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGITextBox_m_csModelObjPath_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGITextBox_m_csModelObjPath_feature", "_UI_CGITextBox_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGITextBox_M_csModelObjPath(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Mcs Name feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_csNamePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGITextBox_m_csName_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGITextBox_m_csName_feature", "_UI_CGITextBox_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGITextBox_M_csName(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This specifies how to implement {@link #getChildren} and is used to deduce an appropriate feature for an
+	 * {@link org.eclipse.emf.edit.command.AddCommand}, {@link org.eclipse.emf.edit.command.RemoveCommand} or
+	 * {@link org.eclipse.emf.edit.command.MoveCommand} in {@link #createCommand}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Collection<? extends EStructuralFeature> getChildrenFeatures(Object object) {
+		if (childrenFeatures == null) {
+			super.getChildrenFeatures(object);
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getCGITextBox_Properties());
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getCGITextBox_M_PartsArray());
+		}
+		return childrenFeatures;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EStructuralFeature getChildFeature(Object object, Object child) {
+		// Check the type of the specified child object and return the proper feature to use for
+		// adding (see {@link AddCommand}) it as a child.
+
+		return super.getChildFeature(object, child);
+	}
+
+	/**
+	 * This returns CGITextBox.gif.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object getImage(Object object) {
+		return overlayImage(object, getResourceLocator().getImage("full/obj16/CGITextBox")); //$NON-NLS-1$
+	}
+
+	/**
+	 * This returns the label text for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String getText(Object object) {
+		String label = ((CGITextBox)object).getId();
+		return label == null || label.length() == 0 ?
+			getString("_UI_CGITextBox_type") : //$NON-NLS-1$
+			getString("_UI_CGITextBox_type") + " " + label; //$NON-NLS-1$ //$NON-NLS-2$
+	}
+	
+
+	/**
+	 * This handles model notifications by calling {@link #updateChildren} to update any cached
+	 * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void notifyChanged(Notification notification) {
+		updateChildren(notification);
+
+		switch (notification.getFeatureID(CGITextBox.class)) {
+			case UMLRpyPackage.CGI_TEXT_BOX__MTRANSFORM:
+			case UMLRpyPackage.CGI_TEXT_BOX__MPOLYGON:
+			case UMLRpyPackage.CGI_TEXT_BOX__MNNAME_FORMAT:
+			case UMLRpyPackage.CGI_TEXT_BOX__MNIS_NAME_FORMAT:
+			case UMLRpyPackage.CGI_TEXT_BOX__MCS_MODEL_OBJ_PATH:
+			case UMLRpyPackage.CGI_TEXT_BOX__MCS_NAME:
+				fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), false, true));
+				return;
+			case UMLRpyPackage.CGI_TEXT_BOX__PROPERTIES:
+			case UMLRpyPackage.CGI_TEXT_BOX__MPARTS_ARRAY:
+				fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), true, false));
+				return;
+		}
+		super.notifyChanged(notification);
+	}
+
+	/**
+	 * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children
+	 * that can be created under this object.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) {
+		super.collectNewChildDescriptors(newChildDescriptors, object);
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGITextBox_Properties(),
+				 UMLRpyFactory.eINSTANCE.createIPropertyContainer()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGITextBox_M_PartsArray(),
+				 UMLRpyFactory.eINSTANCE.createIState()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGITextBox_M_PartsArray(),
+				 UMLRpyFactory.eINSTANCE.createIAcceptEventAction()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGITextBox_M_PartsArray(),
+				 UMLRpyFactory.eINSTANCE.createIAcceptTimeEvent()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGITextBox_M_PartsArray(),
+				 UMLRpyFactory.eINSTANCE.createIActivityDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGITextBox_M_PartsArray(),
+				 UMLRpyFactory.eINSTANCE.createIActivityGraph()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGITextBox_M_PartsArray(),
+				 UMLRpyFactory.eINSTANCE.createIActor()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGITextBox_M_PartsArray(),
+				 UMLRpyFactory.eINSTANCE.createIClass()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGITextBox_M_PartsArray(),
+				 UMLRpyFactory.eINSTANCE.createIAssociationClass()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGITextBox_M_PartsArray(),
+				 UMLRpyFactory.eINSTANCE.createIAttribute()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGITextBox_M_PartsArray(),
+				 UMLRpyFactory.eINSTANCE.createICallOperation()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGITextBox_M_PartsArray(),
+				 UMLRpyFactory.eINSTANCE.createICodeGenConfigInfo()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGITextBox_M_PartsArray(),
+				 UMLRpyFactory.eINSTANCE.createIDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGITextBox_M_PartsArray(),
+				 UMLRpyFactory.eINSTANCE.createICollaborationDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGITextBox_M_PartsArray(),
+				 UMLRpyFactory.eINSTANCE.createIComponent()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGITextBox_M_PartsArray(),
+				 UMLRpyFactory.eINSTANCE.createIComponentDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGITextBox_M_PartsArray(),
+				 UMLRpyFactory.eINSTANCE.createIDefaultDrvdTrans()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGITextBox_M_PartsArray(),
+				 UMLRpyFactory.eINSTANCE.createIDependency()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGITextBox_M_PartsArray(),
+				 UMLRpyFactory.eINSTANCE.createIDeploymentDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGITextBox_M_PartsArray(),
+				 UMLRpyFactory.eINSTANCE.createIHyperLink()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGITextBox_M_PartsArray(),
+				 UMLRpyFactory.eINSTANCE.createIInformationFlow()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGITextBox_M_PartsArray(),
+				 UMLRpyFactory.eINSTANCE.createIInformationItem()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGITextBox_M_PartsArray(),
+				 UMLRpyFactory.eINSTANCE.createIMSC()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGITextBox_M_PartsArray(),
+				 UMLRpyFactory.eINSTANCE.createIMatrixInstance()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGITextBox_M_PartsArray(),
+				 UMLRpyFactory.eINSTANCE.createIMessage()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGITextBox_M_PartsArray(),
+				 UMLRpyFactory.eINSTANCE.createIModule()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGITextBox_M_PartsArray(),
+				 UMLRpyFactory.eINSTANCE.createIObjectLink()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGITextBox_M_PartsArray(),
+				 UMLRpyFactory.eINSTANCE.createIObjectModelDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGITextBox_M_PartsArray(),
+				 UMLRpyFactory.eINSTANCE.createIObjectNode()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGITextBox_M_PartsArray(),
+				 UMLRpyFactory.eINSTANCE.createIPanelDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGITextBox_M_PartsArray(),
+				 UMLRpyFactory.eINSTANCE.createIPart()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGITextBox_M_PartsArray(),
+				 UMLRpyFactory.eINSTANCE.createIPrimitiveOperation()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGITextBox_M_PartsArray(),
+				 UMLRpyFactory.eINSTANCE.createIProfile()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGITextBox_M_PartsArray(),
+				 UMLRpyFactory.eINSTANCE.createIReception()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGITextBox_M_PartsArray(),
+				 UMLRpyFactory.eINSTANCE.createIReferenceActivity()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGITextBox_M_PartsArray(),
+				 UMLRpyFactory.eINSTANCE.createIRequirement()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGITextBox_M_PartsArray(),
+				 UMLRpyFactory.eINSTANCE.createISequenceDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGITextBox_M_PartsArray(),
+				 UMLRpyFactory.eINSTANCE.createIStateChart()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGITextBox_M_PartsArray(),
+				 UMLRpyFactory.eINSTANCE.createIStateChartDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGITextBox_M_PartsArray(),
+				 UMLRpyFactory.eINSTANCE.createIStereotype()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGITextBox_M_PartsArray(),
+				 UMLRpyFactory.eINSTANCE.createIStructureDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGITextBox_M_PartsArray(),
+				 UMLRpyFactory.eINSTANCE.createISubsystem()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGITextBox_M_PartsArray(),
+				 UMLRpyFactory.eINSTANCE.createISysMLPort()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGITextBox_M_PartsArray(),
+				 UMLRpyFactory.eINSTANCE.createITableInstance()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGITextBox_M_PartsArray(),
+				 UMLRpyFactory.eINSTANCE.createITransition()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGITextBox_M_PartsArray(),
+				 UMLRpyFactory.eINSTANCE.createIType()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGITextBox_M_PartsArray(),
+				 UMLRpyFactory.eINSTANCE.createIUCDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGITextBox_M_PartsArray(),
+				 UMLRpyFactory.eINSTANCE.createIUseCase()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGITextBox_M_PartsArray(),
+				 UMLRpyFactory.eINSTANCE.createIUseCaseDiagram()));
+	}
+
+}
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/CGITextItemProvider.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/CGITextItemProvider.java
new file mode 100755
index 0000000..b06586d
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/CGITextItemProvider.java
@@ -0,0 +1,401 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.provider;
+
+
+import java.util.Collection;
+import java.util.List;
+
+import org.eclipse.emf.common.notify.AdapterFactory;
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.common.util.ResourceLocator;
+
+import org.eclipse.emf.ecore.EStructuralFeature;
+
+import org.eclipse.emf.edit.provider.ComposeableAdapterFactory;
+import org.eclipse.emf.edit.provider.IEditingDomainItemProvider;
+import org.eclipse.emf.edit.provider.IItemLabelProvider;
+import org.eclipse.emf.edit.provider.IItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.IItemPropertySource;
+import org.eclipse.emf.edit.provider.IStructuredItemContentProvider;
+import org.eclipse.emf.edit.provider.ITreeItemContentProvider;
+import org.eclipse.emf.edit.provider.ItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.ItemProviderAdapter;
+import org.eclipse.emf.edit.provider.ViewerNotification;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIText;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyFactory;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIText} object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class CGITextItemProvider 
+	extends ItemProviderAdapter
+	implements
+		IEditingDomainItemProvider,
+		IStructuredItemContentProvider,
+		ITreeItemContentProvider,
+		IItemLabelProvider,
+		IItemPropertySource {
+	/**
+	 * This constructs an instance from a factory and a notifier.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public CGITextItemProvider(AdapterFactory adapterFactory) {
+		super(adapterFactory);
+	}
+
+	/**
+	 * This returns the property descriptors for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) {
+		if (itemPropertyDescriptors == null) {
+			super.getPropertyDescriptors(object);
+
+			addM_strPropertyDescriptor(object);
+			addM_stylePropertyDescriptor(object);
+			addM_positionPropertyDescriptor(object);
+			addM_nIdentPropertyDescriptor(object);
+			addM_bImplicitSetRectPointsPropertyDescriptor(object);
+			addM_nOrientationCtrlPtPropertyDescriptor(object);
+			addM_nVerticalSpacingPropertyDescriptor(object);
+			addM_nHorizontalSpacingPropertyDescriptor(object);
+			addM_transformPropertyDescriptor(object);
+		}
+		return itemPropertyDescriptors;
+	}
+
+	/**
+	 * This adds a property descriptor for the Mstr feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_strPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIText_m_str_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIText_m_str_feature", "_UI_CGIText_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIText_M_str(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Mstyle feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_stylePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIText_m_style_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIText_m_style_feature", "_UI_CGIText_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIText_M_style(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Mposition feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_positionPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIText_m_position_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIText_m_position_feature", "_UI_CGIText_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIText_M_position(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the MnIdent feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_nIdentPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIText_m_nIdent_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIText_m_nIdent_feature", "_UI_CGIText_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIText_M_nIdent(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the MbImplicit Set Rect Points feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_bImplicitSetRectPointsPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIText_m_bImplicitSetRectPoints_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIText_m_bImplicitSetRectPoints_feature", "_UI_CGIText_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIText_M_bImplicitSetRectPoints(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the MnOrientation Ctrl Pt feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_nOrientationCtrlPtPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIText_m_nOrientationCtrlPt_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIText_m_nOrientationCtrlPt_feature", "_UI_CGIText_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIText_M_nOrientationCtrlPt(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the MnVertical Spacing feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_nVerticalSpacingPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIText_m_nVerticalSpacing_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIText_m_nVerticalSpacing_feature", "_UI_CGIText_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIText_M_nVerticalSpacing(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the MnHorizontal Spacing feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_nHorizontalSpacingPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIText_m_nHorizontalSpacing_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIText_m_nHorizontalSpacing_feature", "_UI_CGIText_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIText_M_nHorizontalSpacing(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Mtransform feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_transformPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGIText_m_transform_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGIText_m_transform_feature", "_UI_CGIText_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGIText_M_transform(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This specifies how to implement {@link #getChildren} and is used to deduce an appropriate feature for an
+	 * {@link org.eclipse.emf.edit.command.AddCommand}, {@link org.eclipse.emf.edit.command.RemoveCommand} or
+	 * {@link org.eclipse.emf.edit.command.MoveCommand} in {@link #createCommand}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Collection<? extends EStructuralFeature> getChildrenFeatures(Object object) {
+		if (childrenFeatures == null) {
+			super.getChildrenFeatures(object);
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getCGIText_M_color());
+		}
+		return childrenFeatures;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EStructuralFeature getChildFeature(Object object, Object child) {
+		// Check the type of the specified child object and return the proper feature to use for
+		// adding (see {@link AddCommand}) it as a child.
+
+		return super.getChildFeature(object, child);
+	}
+
+	/**
+	 * This returns CGIText.gif.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object getImage(Object object) {
+		return overlayImage(object, getResourceLocator().getImage("full/obj16/CGIText")); //$NON-NLS-1$
+	}
+
+	/**
+	 * This returns the label text for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String getText(Object object) {
+		String label = ((CGIText)object).getM_str();
+		return label == null || label.length() == 0 ?
+			getString("_UI_CGIText_type") : //$NON-NLS-1$
+			getString("_UI_CGIText_type") + " " + label; //$NON-NLS-1$ //$NON-NLS-2$
+	}
+	
+
+	/**
+	 * This handles model notifications by calling {@link #updateChildren} to update any cached
+	 * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void notifyChanged(Notification notification) {
+		updateChildren(notification);
+
+		switch (notification.getFeatureID(CGIText.class)) {
+			case UMLRpyPackage.CGI_TEXT__MSTR:
+			case UMLRpyPackage.CGI_TEXT__MSTYLE:
+			case UMLRpyPackage.CGI_TEXT__MPOSITION:
+			case UMLRpyPackage.CGI_TEXT__MNIDENT:
+			case UMLRpyPackage.CGI_TEXT__MBIMPLICIT_SET_RECT_POINTS:
+			case UMLRpyPackage.CGI_TEXT__MNORIENTATION_CTRL_PT:
+			case UMLRpyPackage.CGI_TEXT__MNVERTICAL_SPACING:
+			case UMLRpyPackage.CGI_TEXT__MNHORIZONTAL_SPACING:
+			case UMLRpyPackage.CGI_TEXT__MTRANSFORM:
+				fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), false, true));
+				return;
+			case UMLRpyPackage.CGI_TEXT__MCOLOR:
+				fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), true, false));
+				return;
+		}
+		super.notifyChanged(notification);
+	}
+
+	/**
+	 * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children
+	 * that can be created under this object.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) {
+		super.collectNewChildDescriptors(newChildDescriptors, object);
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGIText_M_color(),
+				 UMLRpyFactory.eINSTANCE.createIColor()));
+	}
+
+	/**
+	 * Return the resource locator for this item provider's resources.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public ResourceLocator getResourceLocator() {
+		return rpymetamodelEditPlugin.INSTANCE;
+	}
+
+}
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/CGITransItemProvider.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/CGITransItemProvider.java
new file mode 100755
index 0000000..c609548
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/CGITransItemProvider.java
@@ -0,0 +1,624 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.provider;
+
+
+import java.util.Collection;
+import java.util.List;
+
+import org.eclipse.emf.common.notify.AdapterFactory;
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.ecore.EStructuralFeature;
+
+import org.eclipse.emf.edit.provider.ComposeableAdapterFactory;
+import org.eclipse.emf.edit.provider.IItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.ItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.ViewerNotification;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGITrans;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyFactory;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGITrans} object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class CGITransItemProvider extends GraphElementsTypeItemProvider {
+	/**
+	 * This constructs an instance from a factory and a notifier.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public CGITransItemProvider(AdapterFactory adapterFactory) {
+		super(adapterFactory);
+	}
+
+	/**
+	 * This returns the property descriptors for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) {
+		if (itemPropertyDescriptors == null) {
+			super.getPropertyDescriptors(object);
+
+			addM_pModelObjectPropertyDescriptor(object);
+			addM_pParentPropertyDescriptor(object);
+			addM_pSourcePropertyDescriptor(object);
+			addM_sourceTypePropertyDescriptor(object);
+			addM_pTargetPropertyDescriptor(object);
+			addM_targetTypePropertyDescriptor(object);
+			addM_directionPropertyDescriptor(object);
+			addM_anglePoint1PropertyDescriptor(object);
+			addM_anglePoint2PropertyDescriptor(object);
+			addM_line_stylePropertyDescriptor(object);
+			addM_SourcePortPropertyDescriptor(object);
+			addM_TargetPortPropertyDescriptor(object);
+			addM_nInheritanceMaskPropertyDescriptor(object);
+			addM_bShowNamePropertyDescriptor(object);
+			addM_arrowPropertyDescriptor(object);
+			addMyStatePropertyDescriptor(object);
+			addM_pInheritsFromPropertyDescriptor(object);
+			addM_lineWidthPropertyDescriptor(object);
+		}
+		return itemPropertyDescriptors;
+	}
+
+	/**
+	 * This adds a property descriptor for the MpModel Object feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_pModelObjectPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGITrans_m_pModelObject_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGITrans_m_pModelObject_feature", "_UI_CGITrans_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGITrans_M_pModelObject(),
+				 true,
+				 false,
+				 true,
+				 null,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the MpParent feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_pParentPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGITrans_m_pParent_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGITrans_m_pParent_feature", "_UI_CGITrans_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGITrans_M_pParent(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the MpSource feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_pSourcePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGITrans_m_pSource_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGITrans_m_pSource_feature", "_UI_CGITrans_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGITrans_M_pSource(),
+				 true,
+				 false,
+				 true,
+				 null,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Msource Type feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_sourceTypePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGITrans_m_sourceType_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGITrans_m_sourceType_feature", "_UI_CGITrans_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGITrans_M_sourceType(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the MpTarget feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_pTargetPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGITrans_m_pTarget_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGITrans_m_pTarget_feature", "_UI_CGITrans_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGITrans_M_pTarget(),
+				 true,
+				 false,
+				 true,
+				 null,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Mtarget Type feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_targetTypePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGITrans_m_targetType_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGITrans_m_targetType_feature", "_UI_CGITrans_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGITrans_M_targetType(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Mdirection feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_directionPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGITrans_m_direction_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGITrans_m_direction_feature", "_UI_CGITrans_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGITrans_M_direction(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Mangle Point1 feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_anglePoint1PropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGITrans_m_anglePoint1_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGITrans_m_anglePoint1_feature", "_UI_CGITrans_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGITrans_M_anglePoint1(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Mangle Point2 feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_anglePoint2PropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGITrans_m_anglePoint2_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGITrans_m_anglePoint2_feature", "_UI_CGITrans_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGITrans_M_anglePoint2(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Mline style feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_line_stylePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGITrans_m_line_style_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGITrans_m_line_style_feature", "_UI_CGITrans_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGITrans_M_line_style(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the MSource Port feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_SourcePortPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGITrans_m_SourcePort_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGITrans_m_SourcePort_feature", "_UI_CGITrans_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGITrans_M_SourcePort(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the MTarget Port feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_TargetPortPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGITrans_m_TargetPort_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGITrans_m_TargetPort_feature", "_UI_CGITrans_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGITrans_M_TargetPort(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the MnInheritance Mask feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_nInheritanceMaskPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGITrans_m_nInheritanceMask_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGITrans_m_nInheritanceMask_feature", "_UI_CGITrans_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGITrans_M_nInheritanceMask(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the MbShow Name feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_bShowNamePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGITrans_m_bShowName_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGITrans_m_bShowName_feature", "_UI_CGITrans_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGITrans_M_bShowName(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Marrow feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_arrowPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGITrans_m_arrow_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGITrans_m_arrow_feature", "_UI_CGITrans_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGITrans_M_arrow(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the My State feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addMyStatePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGITrans_myState_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGITrans_myState_feature", "_UI_CGITrans_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGITrans_MyState(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the MpInherits From feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_pInheritsFromPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGITrans_m_pInheritsFrom_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGITrans_m_pInheritsFrom_feature", "_UI_CGITrans_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGITrans_M_pInheritsFrom(),
+				 true,
+				 false,
+				 true,
+				 null,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Mline Width feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_lineWidthPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CGITrans_m_lineWidth_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CGITrans_m_lineWidth_feature", "_UI_CGITrans_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCGITrans_M_lineWidth(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This specifies how to implement {@link #getChildren} and is used to deduce an appropriate feature for an
+	 * {@link org.eclipse.emf.edit.command.AddCommand}, {@link org.eclipse.emf.edit.command.RemoveCommand} or
+	 * {@link org.eclipse.emf.edit.command.MoveCommand} in {@link #createCommand}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Collection<? extends EStructuralFeature> getChildrenFeatures(Object object) {
+		if (childrenFeatures == null) {
+			super.getChildrenFeatures(object);
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getCGITrans_Properties());
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getCGITrans_M_rpn());
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getCGITrans_M_color());
+		}
+		return childrenFeatures;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EStructuralFeature getChildFeature(Object object, Object child) {
+		// Check the type of the specified child object and return the proper feature to use for
+		// adding (see {@link AddCommand}) it as a child.
+
+		return super.getChildFeature(object, child);
+	}
+
+	/**
+	 * This returns CGITrans.gif.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object getImage(Object object) {
+		return overlayImage(object, getResourceLocator().getImage("full/obj16/CGITrans")); //$NON-NLS-1$
+	}
+
+	/**
+	 * This returns the label text for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String getText(Object object) {
+		String label = ((CGITrans)object).getId();
+		return label == null || label.length() == 0 ?
+			getString("_UI_CGITrans_type") : //$NON-NLS-1$
+			getString("_UI_CGITrans_type") + " " + label; //$NON-NLS-1$ //$NON-NLS-2$
+	}
+	
+
+	/**
+	 * This handles model notifications by calling {@link #updateChildren} to update any cached
+	 * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void notifyChanged(Notification notification) {
+		updateChildren(notification);
+
+		switch (notification.getFeatureID(CGITrans.class)) {
+			case UMLRpyPackage.CGI_TRANS__MPPARENT:
+			case UMLRpyPackage.CGI_TRANS__MSOURCE_TYPE:
+			case UMLRpyPackage.CGI_TRANS__MTARGET_TYPE:
+			case UMLRpyPackage.CGI_TRANS__MDIRECTION:
+			case UMLRpyPackage.CGI_TRANS__MANGLE_POINT1:
+			case UMLRpyPackage.CGI_TRANS__MANGLE_POINT2:
+			case UMLRpyPackage.CGI_TRANS__MLINE_STYLE:
+			case UMLRpyPackage.CGI_TRANS__MSOURCE_PORT:
+			case UMLRpyPackage.CGI_TRANS__MTARGET_PORT:
+			case UMLRpyPackage.CGI_TRANS__MNINHERITANCE_MASK:
+			case UMLRpyPackage.CGI_TRANS__MBSHOW_NAME:
+			case UMLRpyPackage.CGI_TRANS__MARROW:
+			case UMLRpyPackage.CGI_TRANS__MY_STATE:
+			case UMLRpyPackage.CGI_TRANS__MLINE_WIDTH:
+				fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), false, true));
+				return;
+			case UMLRpyPackage.CGI_TRANS__PROPERTIES:
+			case UMLRpyPackage.CGI_TRANS__MRPN:
+			case UMLRpyPackage.CGI_TRANS__MCOLOR:
+				fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), true, false));
+				return;
+		}
+		super.notifyChanged(notification);
+	}
+
+	/**
+	 * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children
+	 * that can be created under this object.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) {
+		super.collectNewChildDescriptors(newChildDescriptors, object);
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGITrans_Properties(),
+				 UMLRpyFactory.eINSTANCE.createIPropertyContainer()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGITrans_M_rpn(),
+				 UMLRpyFactory.eINSTANCE.createCGIText()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getCGITrans_M_color(),
+				 UMLRpyFactory.eINSTANCE.createIColor()));
+	}
+
+	/**
+	 * This returns the label text for {@link org.eclipse.emf.edit.command.CreateChildCommand}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String getCreateChildText(Object owner, Object feature, Object child, Collection<?> selection) {
+		Object childFeature = feature;
+		Object childObject = child;
+
+		boolean qualify =
+			childFeature == UMLRpyPackage.eINSTANCE.getGraphElementsType_M_name() ||
+			childFeature == UMLRpyPackage.eINSTANCE.getCGITrans_M_rpn();
+
+		if (qualify) {
+			return getString
+				("_UI_CreateChild_text2", //$NON-NLS-1$
+				 new Object[] { getTypeText(childObject), getFeatureText(childFeature), getTypeText(owner) });
+		}
+		return super.getCreateChildText(owner, feature, child, selection);
+	}
+
+}
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/CollEventItemProvider.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/CollEventItemProvider.java
new file mode 100755
index 0000000..aa30961
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/CollEventItemProvider.java
@@ -0,0 +1,237 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.provider;
+
+
+import java.util.Collection;
+import java.util.List;
+
+import org.eclipse.emf.common.notify.AdapterFactory;
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.edit.provider.ComposeableAdapterFactory;
+import org.eclipse.emf.edit.provider.IItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.ItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.ViewerNotification;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CollEvent;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CollEvent} object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class CollEventItemProvider extends P_MessageHandlerTypeItemProvider {
+	/**
+	 * This constructs an instance from a factory and a notifier.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public CollEventItemProvider(AdapterFactory adapterFactory) {
+		super(adapterFactory);
+	}
+
+	/**
+	 * This returns the property descriptors for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) {
+		if (itemPropertyDescriptors == null) {
+			super.getPropertyDescriptors(object);
+
+			addIdPropertyDescriptor(object);
+			addFirstPropertyDescriptor(object);
+			addSecondPropertyDescriptor(object);
+			addObjectCreationPropertyDescriptor(object);
+			addUmlDependencyIDPropertyDescriptor(object);
+		}
+		return itemPropertyDescriptors;
+	}
+
+	/**
+	 * This adds a property descriptor for the Id feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addIdPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CollEvent_id_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CollEvent_id_feature", "_UI_CollEvent_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCollEvent_Id(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the First feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addFirstPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CollEvent_first_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CollEvent_first_feature", "_UI_CollEvent_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCollEvent_First(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Second feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addSecondPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CollEvent_second_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CollEvent_second_feature", "_UI_CollEvent_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCollEvent_Second(),
+				 true,
+				 false,
+				 true,
+				 null,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Object Creation feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addObjectCreationPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CollEvent_objectCreation_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CollEvent_objectCreation_feature", "_UI_CollEvent_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCollEvent_ObjectCreation(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Uml Dependency ID feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addUmlDependencyIDPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_CollEvent_umlDependencyID_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_CollEvent_umlDependencyID_feature", "_UI_CollEvent_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getCollEvent_UmlDependencyID(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This returns CollEvent.gif.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object getImage(Object object) {
+		return overlayImage(object, getResourceLocator().getImage("full/obj16/CollEvent")); //$NON-NLS-1$
+	}
+
+	/**
+	 * This returns the label text for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String getText(Object object) {
+		String label = ((CollEvent)object).getId();
+		return label == null || label.length() == 0 ?
+			getString("_UI_CollEvent_type") : //$NON-NLS-1$
+			getString("_UI_CollEvent_type") + " " + label; //$NON-NLS-1$ //$NON-NLS-2$
+	}
+	
+
+	/**
+	 * This handles model notifications by calling {@link #updateChildren} to update any cached
+	 * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void notifyChanged(Notification notification) {
+		updateChildren(notification);
+
+		switch (notification.getFeatureID(CollEvent.class)) {
+			case UMLRpyPackage.COLL_EVENT__ID:
+			case UMLRpyPackage.COLL_EVENT__FIRST:
+			case UMLRpyPackage.COLL_EVENT__OBJECT_CREATION:
+			case UMLRpyPackage.COLL_EVENT__UML_DEPENDENCY_ID:
+				fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), false, true));
+				return;
+		}
+		super.notifyChanged(notification);
+	}
+
+	/**
+	 * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children
+	 * that can be created under this object.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) {
+		super.collectNewChildDescriptors(newChildDescriptors, object);
+	}
+
+}
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/CompartmentsTypeItemProvider.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/CompartmentsTypeItemProvider.java
new file mode 100755
index 0000000..134902b
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/CompartmentsTypeItemProvider.java
@@ -0,0 +1,119 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.provider;
+
+
+import java.util.Collection;
+import java.util.List;
+
+import org.eclipse.emf.common.notify.AdapterFactory;
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.common.util.ResourceLocator;
+
+import org.eclipse.emf.edit.provider.IEditingDomainItemProvider;
+import org.eclipse.emf.edit.provider.IItemLabelProvider;
+import org.eclipse.emf.edit.provider.IItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.IItemPropertySource;
+import org.eclipse.emf.edit.provider.IStructuredItemContentProvider;
+import org.eclipse.emf.edit.provider.ITreeItemContentProvider;
+import org.eclipse.emf.edit.provider.ItemProviderAdapter;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CompartmentsType} object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class CompartmentsTypeItemProvider 
+	extends ItemProviderAdapter
+	implements
+		IEditingDomainItemProvider,
+		IStructuredItemContentProvider,
+		ITreeItemContentProvider,
+		IItemLabelProvider,
+		IItemPropertySource {
+	/**
+	 * This constructs an instance from a factory and a notifier.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public CompartmentsTypeItemProvider(AdapterFactory adapterFactory) {
+		super(adapterFactory);
+	}
+
+	/**
+	 * This returns the property descriptors for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) {
+		if (itemPropertyDescriptors == null) {
+			super.getPropertyDescriptors(object);
+
+		}
+		return itemPropertyDescriptors;
+	}
+
+	/**
+	 * This returns the label text for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String getText(Object object) {
+		return getString("_UI_CompartmentsType_type"); //$NON-NLS-1$
+	}
+	
+
+	/**
+	 * This handles model notifications by calling {@link #updateChildren} to update any cached
+	 * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void notifyChanged(Notification notification) {
+		updateChildren(notification);
+		super.notifyChanged(notification);
+	}
+
+	/**
+	 * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children
+	 * that can be created under this object.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) {
+		super.collectNewChildDescriptors(newChildDescriptors, object);
+	}
+
+	/**
+	 * Return the resource locator for this item provider's resources.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public ResourceLocator getResourceLocator() {
+		return rpymetamodelEditPlugin.INSTANCE;
+	}
+
+}
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/ComponentsTypeItemProvider.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/ComponentsTypeItemProvider.java
new file mode 100755
index 0000000..c2359a7
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/ComponentsTypeItemProvider.java
@@ -0,0 +1,119 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.provider;
+
+
+import java.util.Collection;
+import java.util.List;
+
+import org.eclipse.emf.common.notify.AdapterFactory;
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.common.util.ResourceLocator;
+
+import org.eclipse.emf.edit.provider.IEditingDomainItemProvider;
+import org.eclipse.emf.edit.provider.IItemLabelProvider;
+import org.eclipse.emf.edit.provider.IItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.IItemPropertySource;
+import org.eclipse.emf.edit.provider.IStructuredItemContentProvider;
+import org.eclipse.emf.edit.provider.ITreeItemContentProvider;
+import org.eclipse.emf.edit.provider.ItemProviderAdapter;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ComponentsType} object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class ComponentsTypeItemProvider 
+	extends ItemProviderAdapter
+	implements
+		IEditingDomainItemProvider,
+		IStructuredItemContentProvider,
+		ITreeItemContentProvider,
+		IItemLabelProvider,
+		IItemPropertySource {
+	/**
+	 * This constructs an instance from a factory and a notifier.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public ComponentsTypeItemProvider(AdapterFactory adapterFactory) {
+		super(adapterFactory);
+	}
+
+	/**
+	 * This returns the property descriptors for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) {
+		if (itemPropertyDescriptors == null) {
+			super.getPropertyDescriptors(object);
+
+		}
+		return itemPropertyDescriptors;
+	}
+
+	/**
+	 * This returns the label text for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String getText(Object object) {
+		return getString("_UI_ComponentsType_type"); //$NON-NLS-1$
+	}
+	
+
+	/**
+	 * This handles model notifications by calling {@link #updateChildren} to update any cached
+	 * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void notifyChanged(Notification notification) {
+		updateChildren(notification);
+		super.notifyChanged(notification);
+	}
+
+	/**
+	 * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children
+	 * that can be created under this object.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) {
+		super.collectNewChildDescriptors(newChildDescriptors, object);
+	}
+
+	/**
+	 * Return the resource locator for this item provider's resources.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public ResourceLocator getResourceLocator() {
+		return rpymetamodelEditPlugin.INSTANCE;
+	}
+
+}
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/ConveyedTypeItemProvider.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/ConveyedTypeItemProvider.java
new file mode 100755
index 0000000..c3a190a
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/ConveyedTypeItemProvider.java
@@ -0,0 +1,157 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.provider;
+
+
+import java.util.Collection;
+import java.util.List;
+
+import org.eclipse.emf.common.notify.AdapterFactory;
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.common.util.ResourceLocator;
+
+import org.eclipse.emf.edit.provider.ComposeableAdapterFactory;
+import org.eclipse.emf.edit.provider.IEditingDomainItemProvider;
+import org.eclipse.emf.edit.provider.IItemLabelProvider;
+import org.eclipse.emf.edit.provider.IItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.IItemPropertySource;
+import org.eclipse.emf.edit.provider.IStructuredItemContentProvider;
+import org.eclipse.emf.edit.provider.ITreeItemContentProvider;
+import org.eclipse.emf.edit.provider.ItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.ItemProviderAdapter;
+import org.eclipse.emf.edit.provider.ViewerNotification;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ConveyedType;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ConveyedType} object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class ConveyedTypeItemProvider 
+	extends ItemProviderAdapter
+	implements
+		IEditingDomainItemProvider,
+		IStructuredItemContentProvider,
+		ITreeItemContentProvider,
+		IItemLabelProvider,
+		IItemPropertySource {
+	/**
+	 * This constructs an instance from a factory and a notifier.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public ConveyedTypeItemProvider(AdapterFactory adapterFactory) {
+		super(adapterFactory);
+	}
+
+	/**
+	 * This returns the property descriptors for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) {
+		if (itemPropertyDescriptors == null) {
+			super.getPropertyDescriptors(object);
+
+			addLastIDPropertyDescriptor(object);
+		}
+		return itemPropertyDescriptors;
+	}
+
+	/**
+	 * This adds a property descriptor for the Last ID feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addLastIDPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_ConveyedType_lastID_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_ConveyedType_lastID_feature", "_UI_ConveyedType_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getConveyedType_LastID(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This returns the label text for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String getText(Object object) {
+		String label = ((ConveyedType)object).getLastID();
+		return label == null || label.length() == 0 ?
+			getString("_UI_ConveyedType_type") : //$NON-NLS-1$
+			getString("_UI_ConveyedType_type") + " " + label; //$NON-NLS-1$ //$NON-NLS-2$
+	}
+	
+
+	/**
+	 * This handles model notifications by calling {@link #updateChildren} to update any cached
+	 * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void notifyChanged(Notification notification) {
+		updateChildren(notification);
+
+		switch (notification.getFeatureID(ConveyedType.class)) {
+			case UMLRpyPackage.CONVEYED_TYPE__LAST_ID:
+				fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), false, true));
+				return;
+		}
+		super.notifyChanged(notification);
+	}
+
+	/**
+	 * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children
+	 * that can be created under this object.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) {
+		super.collectNewChildDescriptors(newChildDescriptors, object);
+	}
+
+	/**
+	 * Return the resource locator for this item provider's resources.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public ResourceLocator getResourceLocator() {
+		return rpymetamodelEditPlugin.INSTANCE;
+	}
+
+}
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/DeclarativesTypeItemProvider.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/DeclarativesTypeItemProvider.java
new file mode 100755
index 0000000..bf5642d
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/DeclarativesTypeItemProvider.java
@@ -0,0 +1,119 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.provider;
+
+
+import java.util.Collection;
+import java.util.List;
+
+import org.eclipse.emf.common.notify.AdapterFactory;
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.common.util.ResourceLocator;
+
+import org.eclipse.emf.edit.provider.IEditingDomainItemProvider;
+import org.eclipse.emf.edit.provider.IItemLabelProvider;
+import org.eclipse.emf.edit.provider.IItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.IItemPropertySource;
+import org.eclipse.emf.edit.provider.IStructuredItemContentProvider;
+import org.eclipse.emf.edit.provider.ITreeItemContentProvider;
+import org.eclipse.emf.edit.provider.ItemProviderAdapter;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.DeclarativesType} object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class DeclarativesTypeItemProvider 
+	extends ItemProviderAdapter
+	implements
+		IEditingDomainItemProvider,
+		IStructuredItemContentProvider,
+		ITreeItemContentProvider,
+		IItemLabelProvider,
+		IItemPropertySource {
+	/**
+	 * This constructs an instance from a factory and a notifier.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public DeclarativesTypeItemProvider(AdapterFactory adapterFactory) {
+		super(adapterFactory);
+	}
+
+	/**
+	 * This returns the property descriptors for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) {
+		if (itemPropertyDescriptors == null) {
+			super.getPropertyDescriptors(object);
+
+		}
+		return itemPropertyDescriptors;
+	}
+
+	/**
+	 * This returns the label text for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String getText(Object object) {
+		return getString("_UI_DeclarativesType_type"); //$NON-NLS-1$
+	}
+	
+
+	/**
+	 * This handles model notifications by calling {@link #updateChildren} to update any cached
+	 * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void notifyChanged(Notification notification) {
+		updateChildren(notification);
+		super.notifyChanged(notification);
+	}
+
+	/**
+	 * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children
+	 * that can be created under this object.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) {
+		super.collectNewChildDescriptors(newChildDescriptors, object);
+	}
+
+	/**
+	 * Return the resource locator for this item provider's resources.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public ResourceLocator getResourceLocator() {
+		return rpymetamodelEditPlugin.INSTANCE;
+	}
+
+}
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/DefaultSubsystemTypeItemProvider.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/DefaultSubsystemTypeItemProvider.java
new file mode 100755
index 0000000..3783d37
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/DefaultSubsystemTypeItemProvider.java
@@ -0,0 +1,98 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.provider;
+
+
+import java.util.Collection;
+import java.util.List;
+
+import org.eclipse.emf.common.notify.AdapterFactory;
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.edit.provider.IItemPropertyDescriptor;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.DefaultSubsystemType;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.DefaultSubsystemType} object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class DefaultSubsystemTypeItemProvider extends IModelElementItemProvider {
+	/**
+	 * This constructs an instance from a factory and a notifier.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public DefaultSubsystemTypeItemProvider(AdapterFactory adapterFactory) {
+		super(adapterFactory);
+	}
+
+	/**
+	 * This returns the property descriptors for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) {
+		if (itemPropertyDescriptors == null) {
+			super.getPropertyDescriptors(object);
+
+		}
+		return itemPropertyDescriptors;
+	}
+
+	/**
+	 * This returns the label text for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String getText(Object object) {
+		String label = ((DefaultSubsystemType)object).getDisplayName();
+		return label == null || label.length() == 0 ?
+			getString("_UI_DefaultSubsystemType_type") : //$NON-NLS-1$
+			getString("_UI_DefaultSubsystemType_type") + " " + label; //$NON-NLS-1$ //$NON-NLS-2$
+	}
+	
+
+	/**
+	 * This handles model notifications by calling {@link #updateChildren} to update any cached
+	 * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void notifyChanged(Notification notification) {
+		updateChildren(notification);
+		super.notifyChanged(notification);
+	}
+
+	/**
+	 * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children
+	 * that can be created under this object.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) {
+		super.collectNewChildDescriptors(newChildDescriptors, object);
+	}
+
+}
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/DefaultTransTypeItemProvider.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/DefaultTransTypeItemProvider.java
new file mode 100755
index 0000000..ae928f8
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/DefaultTransTypeItemProvider.java
@@ -0,0 +1,119 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.provider;
+
+
+import java.util.Collection;
+import java.util.List;
+
+import org.eclipse.emf.common.notify.AdapterFactory;
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.common.util.ResourceLocator;
+
+import org.eclipse.emf.edit.provider.IEditingDomainItemProvider;
+import org.eclipse.emf.edit.provider.IItemLabelProvider;
+import org.eclipse.emf.edit.provider.IItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.IItemPropertySource;
+import org.eclipse.emf.edit.provider.IStructuredItemContentProvider;
+import org.eclipse.emf.edit.provider.ITreeItemContentProvider;
+import org.eclipse.emf.edit.provider.ItemProviderAdapter;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.DefaultTransType} object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class DefaultTransTypeItemProvider 
+	extends ItemProviderAdapter
+	implements
+		IEditingDomainItemProvider,
+		IStructuredItemContentProvider,
+		ITreeItemContentProvider,
+		IItemLabelProvider,
+		IItemPropertySource {
+	/**
+	 * This constructs an instance from a factory and a notifier.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public DefaultTransTypeItemProvider(AdapterFactory adapterFactory) {
+		super(adapterFactory);
+	}
+
+	/**
+	 * This returns the property descriptors for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) {
+		if (itemPropertyDescriptors == null) {
+			super.getPropertyDescriptors(object);
+
+		}
+		return itemPropertyDescriptors;
+	}
+
+	/**
+	 * This returns the label text for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String getText(Object object) {
+		return getString("_UI_DefaultTransType_type"); //$NON-NLS-1$
+	}
+	
+
+	/**
+	 * This handles model notifications by calling {@link #updateChildren} to update any cached
+	 * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void notifyChanged(Notification notification) {
+		updateChildren(notification);
+		super.notifyChanged(notification);
+	}
+
+	/**
+	 * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children
+	 * that can be created under this object.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) {
+		super.collectNewChildDescriptors(newChildDescriptors, object);
+	}
+
+	/**
+	 * Return the resource locator for this item provider's resources.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public ResourceLocator getResourceLocator() {
+		return rpymetamodelEditPlugin.INSTANCE;
+	}
+
+}
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/DependsOnTypeItemProvider.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/DependsOnTypeItemProvider.java
new file mode 100755
index 0000000..f6563b3
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/DependsOnTypeItemProvider.java
@@ -0,0 +1,93 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.provider;
+
+
+import java.util.Collection;
+import java.util.List;
+
+import org.eclipse.emf.common.notify.AdapterFactory;
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.edit.provider.IItemPropertyDescriptor;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.DependsOnType} object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class DependsOnTypeItemProvider extends ElementsTypeItemProvider {
+	/**
+	 * This constructs an instance from a factory and a notifier.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public DependsOnTypeItemProvider(AdapterFactory adapterFactory) {
+		super(adapterFactory);
+	}
+
+	/**
+	 * This returns the property descriptors for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) {
+		if (itemPropertyDescriptors == null) {
+			super.getPropertyDescriptors(object);
+
+		}
+		return itemPropertyDescriptors;
+	}
+
+	/**
+	 * This returns the label text for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String getText(Object object) {
+		return getString("_UI_DependsOnType_type"); //$NON-NLS-1$
+	}
+	
+
+	/**
+	 * This handles model notifications by calling {@link #updateChildren} to update any cached
+	 * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void notifyChanged(Notification notification) {
+		updateChildren(notification);
+		super.notifyChanged(notification);
+	}
+
+	/**
+	 * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children
+	 * that can be created under this object.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) {
+		super.collectNewChildDescriptors(newChildDescriptors, object);
+	}
+
+}
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/DescriptionTypeItemProvider.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/DescriptionTypeItemProvider.java
new file mode 100755
index 0000000..e57ae21
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/DescriptionTypeItemProvider.java
@@ -0,0 +1,119 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.provider;
+
+
+import java.util.Collection;
+import java.util.List;
+
+import org.eclipse.emf.common.notify.AdapterFactory;
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.common.util.ResourceLocator;
+
+import org.eclipse.emf.edit.provider.IEditingDomainItemProvider;
+import org.eclipse.emf.edit.provider.IItemLabelProvider;
+import org.eclipse.emf.edit.provider.IItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.IItemPropertySource;
+import org.eclipse.emf.edit.provider.IStructuredItemContentProvider;
+import org.eclipse.emf.edit.provider.ITreeItemContentProvider;
+import org.eclipse.emf.edit.provider.ItemProviderAdapter;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.DescriptionType} object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class DescriptionTypeItemProvider 
+	extends ItemProviderAdapter
+	implements
+		IEditingDomainItemProvider,
+		IStructuredItemContentProvider,
+		ITreeItemContentProvider,
+		IItemLabelProvider,
+		IItemPropertySource {
+	/**
+	 * This constructs an instance from a factory and a notifier.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public DescriptionTypeItemProvider(AdapterFactory adapterFactory) {
+		super(adapterFactory);
+	}
+
+	/**
+	 * This returns the property descriptors for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) {
+		if (itemPropertyDescriptors == null) {
+			super.getPropertyDescriptors(object);
+
+		}
+		return itemPropertyDescriptors;
+	}
+
+	/**
+	 * This returns the label text for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String getText(Object object) {
+		return getString("_UI_DescriptionType_type"); //$NON-NLS-1$
+	}
+	
+
+	/**
+	 * This handles model notifications by calling {@link #updateChildren} to update any cached
+	 * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void notifyChanged(Notification notification) {
+		updateChildren(notification);
+		super.notifyChanged(notification);
+	}
+
+	/**
+	 * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children
+	 * that can be created under this object.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) {
+		super.collectNewChildDescriptors(newChildDescriptors, object);
+	}
+
+	/**
+	 * Return the resource locator for this item provider's resources.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public ResourceLocator getResourceLocator() {
+		return rpymetamodelEditPlugin.INSTANCE;
+	}
+
+}
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/ElementsTypeItemProvider.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/ElementsTypeItemProvider.java
new file mode 100755
index 0000000..16bae74
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/ElementsTypeItemProvider.java
@@ -0,0 +1,119 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.provider;
+
+
+import java.util.Collection;
+import java.util.List;
+
+import org.eclipse.emf.common.notify.AdapterFactory;
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.common.util.ResourceLocator;
+
+import org.eclipse.emf.edit.provider.IEditingDomainItemProvider;
+import org.eclipse.emf.edit.provider.IItemLabelProvider;
+import org.eclipse.emf.edit.provider.IItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.IItemPropertySource;
+import org.eclipse.emf.edit.provider.IStructuredItemContentProvider;
+import org.eclipse.emf.edit.provider.ITreeItemContentProvider;
+import org.eclipse.emf.edit.provider.ItemProviderAdapter;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ElementsType} object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class ElementsTypeItemProvider 
+	extends ItemProviderAdapter
+	implements
+		IEditingDomainItemProvider,
+		IStructuredItemContentProvider,
+		ITreeItemContentProvider,
+		IItemLabelProvider,
+		IItemPropertySource {
+	/**
+	 * This constructs an instance from a factory and a notifier.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public ElementsTypeItemProvider(AdapterFactory adapterFactory) {
+		super(adapterFactory);
+	}
+
+	/**
+	 * This returns the property descriptors for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) {
+		if (itemPropertyDescriptors == null) {
+			super.getPropertyDescriptors(object);
+
+		}
+		return itemPropertyDescriptors;
+	}
+
+	/**
+	 * This returns the label text for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String getText(Object object) {
+		return getString("_UI_ElementsType_type"); //$NON-NLS-1$
+	}
+	
+
+	/**
+	 * This handles model notifications by calling {@link #updateChildren} to update any cached
+	 * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void notifyChanged(Notification notification) {
+		updateChildren(notification);
+		super.notifyChanged(notification);
+	}
+
+	/**
+	 * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children
+	 * that can be created under this object.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) {
+		super.collectNewChildDescriptors(newChildDescriptors, object);
+	}
+
+	/**
+	 * Return the resource locator for this item provider's resources.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public ResourceLocator getResourceLocator() {
+		return rpymetamodelEditPlugin.INSTANCE;
+	}
+
+}
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/EmbededFilesTypeItemProvider.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/EmbededFilesTypeItemProvider.java
new file mode 100755
index 0000000..a222fa4
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/EmbededFilesTypeItemProvider.java
@@ -0,0 +1,119 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.provider;
+
+
+import java.util.Collection;
+import java.util.List;
+
+import org.eclipse.emf.common.notify.AdapterFactory;
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.common.util.ResourceLocator;
+
+import org.eclipse.emf.edit.provider.IEditingDomainItemProvider;
+import org.eclipse.emf.edit.provider.IItemLabelProvider;
+import org.eclipse.emf.edit.provider.IItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.IItemPropertySource;
+import org.eclipse.emf.edit.provider.IStructuredItemContentProvider;
+import org.eclipse.emf.edit.provider.ITreeItemContentProvider;
+import org.eclipse.emf.edit.provider.ItemProviderAdapter;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.EmbededFilesType} object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class EmbededFilesTypeItemProvider 
+	extends ItemProviderAdapter
+	implements
+		IEditingDomainItemProvider,
+		IStructuredItemContentProvider,
+		ITreeItemContentProvider,
+		IItemLabelProvider,
+		IItemPropertySource {
+	/**
+	 * This constructs an instance from a factory and a notifier.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EmbededFilesTypeItemProvider(AdapterFactory adapterFactory) {
+		super(adapterFactory);
+	}
+
+	/**
+	 * This returns the property descriptors for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) {
+		if (itemPropertyDescriptors == null) {
+			super.getPropertyDescriptors(object);
+
+		}
+		return itemPropertyDescriptors;
+	}
+
+	/**
+	 * This returns the label text for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String getText(Object object) {
+		return getString("_UI_EmbededFilesType_type"); //$NON-NLS-1$
+	}
+	
+
+	/**
+	 * This handles model notifications by calling {@link #updateChildren} to update any cached
+	 * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void notifyChanged(Notification notification) {
+		updateChildren(notification);
+		super.notifyChanged(notification);
+	}
+
+	/**
+	 * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children
+	 * that can be created under this object.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) {
+		super.collectNewChildDescriptors(newChildDescriptors, object);
+	}
+
+	/**
+	 * Return the resource locator for this item provider's resources.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public ResourceLocator getResourceLocator() {
+		return rpymetamodelEditPlugin.INSTANCE;
+	}
+
+}
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/End1_TypeItemProvider.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/End1_TypeItemProvider.java
new file mode 100755
index 0000000..ab2b786
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/End1_TypeItemProvider.java
@@ -0,0 +1,119 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.provider;
+
+
+import java.util.Collection;
+import java.util.List;
+
+import org.eclipse.emf.common.notify.AdapterFactory;
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.common.util.ResourceLocator;
+
+import org.eclipse.emf.edit.provider.IEditingDomainItemProvider;
+import org.eclipse.emf.edit.provider.IItemLabelProvider;
+import org.eclipse.emf.edit.provider.IItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.IItemPropertySource;
+import org.eclipse.emf.edit.provider.IStructuredItemContentProvider;
+import org.eclipse.emf.edit.provider.ITreeItemContentProvider;
+import org.eclipse.emf.edit.provider.ItemProviderAdapter;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.End1_Type} object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class End1_TypeItemProvider 
+	extends ItemProviderAdapter
+	implements
+		IEditingDomainItemProvider,
+		IStructuredItemContentProvider,
+		ITreeItemContentProvider,
+		IItemLabelProvider,
+		IItemPropertySource {
+	/**
+	 * This constructs an instance from a factory and a notifier.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public End1_TypeItemProvider(AdapterFactory adapterFactory) {
+		super(adapterFactory);
+	}
+
+	/**
+	 * This returns the property descriptors for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) {
+		if (itemPropertyDescriptors == null) {
+			super.getPropertyDescriptors(object);
+
+		}
+		return itemPropertyDescriptors;
+	}
+
+	/**
+	 * This returns the label text for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String getText(Object object) {
+		return getString("_UI_End1_Type_type"); //$NON-NLS-1$
+	}
+	
+
+	/**
+	 * This handles model notifications by calling {@link #updateChildren} to update any cached
+	 * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void notifyChanged(Notification notification) {
+		updateChildren(notification);
+		super.notifyChanged(notification);
+	}
+
+	/**
+	 * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children
+	 * that can be created under this object.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) {
+		super.collectNewChildDescriptors(newChildDescriptors, object);
+	}
+
+	/**
+	 * Return the resource locator for this item provider's resources.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public ResourceLocator getResourceLocator() {
+		return rpymetamodelEditPlugin.INSTANCE;
+	}
+
+}
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/End2_TypeItemProvider.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/End2_TypeItemProvider.java
new file mode 100755
index 0000000..5fc2c12
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/End2_TypeItemProvider.java
@@ -0,0 +1,131 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.provider;
+
+
+import java.util.Collection;
+import java.util.List;
+
+import org.eclipse.emf.common.notify.AdapterFactory;
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.edit.provider.ComposeableAdapterFactory;
+import org.eclipse.emf.edit.provider.IItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.ItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.ViewerNotification;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.End2_Type;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.End2_Type} object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class End2_TypeItemProvider extends End1_TypeItemProvider {
+	/**
+	 * This constructs an instance from a factory and a notifier.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public End2_TypeItemProvider(AdapterFactory adapterFactory) {
+		super(adapterFactory);
+	}
+
+	/**
+	 * This returns the property descriptors for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) {
+		if (itemPropertyDescriptors == null) {
+			super.getPropertyDescriptors(object);
+
+			addMultiplicityPropertyDescriptor(object);
+		}
+		return itemPropertyDescriptors;
+	}
+
+	/**
+	 * This adds a property descriptor for the Multiplicity feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addMultiplicityPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_End2_Type_multiplicity_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_End2_Type_multiplicity_feature", "_UI_End2_Type_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getEnd2_Type_Multiplicity(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This returns the label text for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String getText(Object object) {
+		String label = ((End2_Type)object).getMultiplicity();
+		return label == null || label.length() == 0 ?
+			getString("_UI_End2_Type_type") : //$NON-NLS-1$
+			getString("_UI_End2_Type_type") + " " + label; //$NON-NLS-1$ //$NON-NLS-2$
+	}
+	
+
+	/**
+	 * This handles model notifications by calling {@link #updateChildren} to update any cached
+	 * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void notifyChanged(Notification notification) {
+		updateChildren(notification);
+
+		switch (notification.getFeatureID(End2_Type.class)) {
+			case UMLRpyPackage.END2_TYPE__MULTIPLICITY:
+				fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), false, true));
+				return;
+		}
+		super.notifyChanged(notification);
+	}
+
+	/**
+	 * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children
+	 * that can be created under this object.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) {
+		super.collectNewChildDescriptors(newChildDescriptors, object);
+	}
+
+}
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/FilesTypeItemProvider.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/FilesTypeItemProvider.java
new file mode 100755
index 0000000..a30768b
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/FilesTypeItemProvider.java
@@ -0,0 +1,325 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.provider;
+
+
+import java.util.Collection;
+import java.util.List;
+
+import org.eclipse.emf.common.notify.AdapterFactory;
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.common.util.ResourceLocator;
+
+import org.eclipse.emf.edit.provider.ComposeableAdapterFactory;
+import org.eclipse.emf.edit.provider.IEditingDomainItemProvider;
+import org.eclipse.emf.edit.provider.IItemLabelProvider;
+import org.eclipse.emf.edit.provider.IItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.IItemPropertySource;
+import org.eclipse.emf.edit.provider.IStructuredItemContentProvider;
+import org.eclipse.emf.edit.provider.ITreeItemContentProvider;
+import org.eclipse.emf.edit.provider.ItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.ItemProviderAdapter;
+import org.eclipse.emf.edit.provider.ViewerNotification;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.FilesType;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.FilesType} object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class FilesTypeItemProvider 
+	extends ItemProviderAdapter
+	implements
+		IEditingDomainItemProvider,
+		IStructuredItemContentProvider,
+		ITreeItemContentProvider,
+		IItemLabelProvider,
+		IItemPropertySource {
+	/**
+	 * This constructs an instance from a factory and a notifier.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public FilesTypeItemProvider(AdapterFactory adapterFactory) {
+		super(adapterFactory);
+	}
+
+	/**
+	 * This returns the property descriptors for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) {
+		if (itemPropertyDescriptors == null) {
+			super.getPropertyDescriptors(object);
+
+			addModifiedTimeWeakPropertyDescriptor(object);
+			addIdPropertyDescriptor(object);
+			addUmlDependencyIDPropertyDescriptor(object);
+			addLastIDPropertyDescriptor(object);
+			addMyStatePropertyDescriptor(object);
+			addM_pathPropertyDescriptor(object);
+			addObjectCreationPropertyDescriptor(object);
+			addNamePropertyDescriptor(object);
+		}
+		return itemPropertyDescriptors;
+	}
+
+	/**
+	 * This adds a property descriptor for the Modified Time Weak feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addModifiedTimeWeakPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_FilesType_modifiedTimeWeak_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_FilesType_modifiedTimeWeak_feature", "_UI_FilesType_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getFilesType_ModifiedTimeWeak(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Id feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addIdPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_FilesType_id_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_FilesType_id_feature", "_UI_FilesType_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getFilesType_Id(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Uml Dependency ID feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addUmlDependencyIDPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_FilesType_umlDependencyID_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_FilesType_umlDependencyID_feature", "_UI_FilesType_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getFilesType_UmlDependencyID(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Last ID feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addLastIDPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_FilesType_lastID_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_FilesType_lastID_feature", "_UI_FilesType_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getFilesType_LastID(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the My State feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addMyStatePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_FilesType_myState_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_FilesType_myState_feature", "_UI_FilesType_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getFilesType_MyState(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Mpath feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_pathPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_FilesType_m_path_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_FilesType_m_path_feature", "_UI_FilesType_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getFilesType_M_path(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Object Creation feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addObjectCreationPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_FilesType_objectCreation_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_FilesType_objectCreation_feature", "_UI_FilesType_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getFilesType_ObjectCreation(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Name feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addNamePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_FilesType_name_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_FilesType_name_feature", "_UI_FilesType_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getFilesType_Name(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This returns the label text for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String getText(Object object) {
+		String label = ((FilesType)object).getName();
+		return label == null || label.length() == 0 ?
+			getString("_UI_FilesType_type") : //$NON-NLS-1$
+			getString("_UI_FilesType_type") + " " + label; //$NON-NLS-1$ //$NON-NLS-2$
+	}
+	
+
+	/**
+	 * This handles model notifications by calling {@link #updateChildren} to update any cached
+	 * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void notifyChanged(Notification notification) {
+		updateChildren(notification);
+
+		switch (notification.getFeatureID(FilesType.class)) {
+			case UMLRpyPackage.FILES_TYPE__MODIFIED_TIME_WEAK:
+			case UMLRpyPackage.FILES_TYPE__ID:
+			case UMLRpyPackage.FILES_TYPE__UML_DEPENDENCY_ID:
+			case UMLRpyPackage.FILES_TYPE__LAST_ID:
+			case UMLRpyPackage.FILES_TYPE__MY_STATE:
+			case UMLRpyPackage.FILES_TYPE__MPATH:
+			case UMLRpyPackage.FILES_TYPE__OBJECT_CREATION:
+			case UMLRpyPackage.FILES_TYPE__NAME:
+				fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), false, true));
+				return;
+		}
+		super.notifyChanged(notification);
+	}
+
+	/**
+	 * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children
+	 * that can be created under this object.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) {
+		super.collectNewChildDescriptors(newChildDescriptors, object);
+	}
+
+	/**
+	 * Return the resource locator for this item provider's resources.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public ResourceLocator getResourceLocator() {
+		return rpymetamodelEditPlugin.INSTANCE;
+	}
+
+}
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/FromLinkTypeItemProvider.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/FromLinkTypeItemProvider.java
new file mode 100755
index 0000000..0529389
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/FromLinkTypeItemProvider.java
@@ -0,0 +1,119 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.provider;
+
+
+import java.util.Collection;
+import java.util.List;
+
+import org.eclipse.emf.common.notify.AdapterFactory;
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.common.util.ResourceLocator;
+
+import org.eclipse.emf.edit.provider.IEditingDomainItemProvider;
+import org.eclipse.emf.edit.provider.IItemLabelProvider;
+import org.eclipse.emf.edit.provider.IItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.IItemPropertySource;
+import org.eclipse.emf.edit.provider.IStructuredItemContentProvider;
+import org.eclipse.emf.edit.provider.ITreeItemContentProvider;
+import org.eclipse.emf.edit.provider.ItemProviderAdapter;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.FromLinkType} object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class FromLinkTypeItemProvider 
+	extends ItemProviderAdapter
+	implements
+		IEditingDomainItemProvider,
+		IStructuredItemContentProvider,
+		ITreeItemContentProvider,
+		IItemLabelProvider,
+		IItemPropertySource {
+	/**
+	 * This constructs an instance from a factory and a notifier.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public FromLinkTypeItemProvider(AdapterFactory adapterFactory) {
+		super(adapterFactory);
+	}
+
+	/**
+	 * This returns the property descriptors for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) {
+		if (itemPropertyDescriptors == null) {
+			super.getPropertyDescriptors(object);
+
+		}
+		return itemPropertyDescriptors;
+	}
+
+	/**
+	 * This returns the label text for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String getText(Object object) {
+		return getString("_UI_FromLinkType_type"); //$NON-NLS-1$
+	}
+	
+
+	/**
+	 * This handles model notifications by calling {@link #updateChildren} to update any cached
+	 * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void notifyChanged(Notification notification) {
+		updateChildren(notification);
+		super.notifyChanged(notification);
+	}
+
+	/**
+	 * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children
+	 * that can be created under this object.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) {
+		super.collectNewChildDescriptors(newChildDescriptors, object);
+	}
+
+	/**
+	 * Return the resource locator for this item provider's resources.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public ResourceLocator getResourceLocator() {
+		return rpymetamodelEditPlugin.INSTANCE;
+	}
+
+}
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/GraphElementsTypeItemProvider.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/GraphElementsTypeItemProvider.java
new file mode 100755
index 0000000..d97f5ab
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/GraphElementsTypeItemProvider.java
@@ -0,0 +1,244 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.provider;
+
+
+import java.util.Collection;
+import java.util.List;
+
+import org.eclipse.emf.common.notify.AdapterFactory;
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.ecore.EStructuralFeature;
+
+import org.eclipse.emf.edit.provider.ComposeableAdapterFactory;
+import org.eclipse.emf.edit.provider.IItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.ItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.ViewerNotification;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.GraphElementsType;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyFactory;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.GraphElementsType} object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class GraphElementsTypeItemProvider extends M_pRootTypeItemProvider {
+	/**
+	 * This constructs an instance from a factory and a notifier.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public GraphElementsTypeItemProvider(AdapterFactory adapterFactory) {
+		super(adapterFactory);
+	}
+
+	/**
+	 * This returns the property descriptors for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) {
+		if (itemPropertyDescriptors == null) {
+			super.getPropertyDescriptors(object);
+
+			addIdPropertyDescriptor(object);
+			addM_drawBehaviorPropertyDescriptor(object);
+			addM_typePropertyDescriptor(object);
+			addM_bIsPreferencesInitializedPropertyDescriptor(object);
+		}
+		return itemPropertyDescriptors;
+	}
+
+	/**
+	 * This adds a property descriptor for the Id feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addIdPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_GraphElementsType_id_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_GraphElementsType_id_feature", "_UI_GraphElementsType_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getGraphElementsType_Id(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Mdraw Behavior feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_drawBehaviorPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_GraphElementsType_m_drawBehavior_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_GraphElementsType_m_drawBehavior_feature", "_UI_GraphElementsType_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getGraphElementsType_M_drawBehavior(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Mtype feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_typePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_GraphElementsType_m_type_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_GraphElementsType_m_type_feature", "_UI_GraphElementsType_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getGraphElementsType_M_type(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the MbIs Preferences Initialized feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_bIsPreferencesInitializedPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_GraphElementsType_m_bIsPreferencesInitialized_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_GraphElementsType_m_bIsPreferencesInitialized_feature", "_UI_GraphElementsType_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getGraphElementsType_M_bIsPreferencesInitialized(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This specifies how to implement {@link #getChildren} and is used to deduce an appropriate feature for an
+	 * {@link org.eclipse.emf.edit.command.AddCommand}, {@link org.eclipse.emf.edit.command.RemoveCommand} or
+	 * {@link org.eclipse.emf.edit.command.MoveCommand} in {@link #createCommand}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Collection<? extends EStructuralFeature> getChildrenFeatures(Object object) {
+		if (childrenFeatures == null) {
+			super.getChildrenFeatures(object);
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getGraphElementsType_M_name());
+		}
+		return childrenFeatures;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EStructuralFeature getChildFeature(Object object, Object child) {
+		// Check the type of the specified child object and return the proper feature to use for
+		// adding (see {@link AddCommand}) it as a child.
+
+		return super.getChildFeature(object, child);
+	}
+
+	/**
+	 * This returns the label text for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String getText(Object object) {
+		String label = ((GraphElementsType)object).getId();
+		return label == null || label.length() == 0 ?
+			getString("_UI_GraphElementsType_type") : //$NON-NLS-1$
+			getString("_UI_GraphElementsType_type") + " " + label; //$NON-NLS-1$ //$NON-NLS-2$
+	}
+	
+
+	/**
+	 * This handles model notifications by calling {@link #updateChildren} to update any cached
+	 * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void notifyChanged(Notification notification) {
+		updateChildren(notification);
+
+		switch (notification.getFeatureID(GraphElementsType.class)) {
+			case UMLRpyPackage.GRAPH_ELEMENTS_TYPE__ID:
+			case UMLRpyPackage.GRAPH_ELEMENTS_TYPE__MDRAW_BEHAVIOR:
+			case UMLRpyPackage.GRAPH_ELEMENTS_TYPE__MTYPE:
+			case UMLRpyPackage.GRAPH_ELEMENTS_TYPE__MBIS_PREFERENCES_INITIALIZED:
+				fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), false, true));
+				return;
+			case UMLRpyPackage.GRAPH_ELEMENTS_TYPE__MNAME:
+				fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), true, false));
+				return;
+		}
+		super.notifyChanged(notification);
+	}
+
+	/**
+	 * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children
+	 * that can be created under this object.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) {
+		super.collectNewChildDescriptors(newChildDescriptors, object);
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getGraphElementsType_M_name(),
+				 UMLRpyFactory.eINSTANCE.createCGIText()));
+	}
+
+}
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/GraphicChartTypeItemProvider.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/GraphicChartTypeItemProvider.java
new file mode 100755
index 0000000..2edfa52
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/GraphicChartTypeItemProvider.java
@@ -0,0 +1,775 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.provider;
+
+
+import java.util.Collection;
+import java.util.List;
+
+import org.eclipse.emf.common.notify.AdapterFactory;
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.common.util.ResourceLocator;
+
+import org.eclipse.emf.ecore.EStructuralFeature;
+
+import org.eclipse.emf.edit.provider.ComposeableAdapterFactory;
+import org.eclipse.emf.edit.provider.IEditingDomainItemProvider;
+import org.eclipse.emf.edit.provider.IItemLabelProvider;
+import org.eclipse.emf.edit.provider.IItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.IItemPropertySource;
+import org.eclipse.emf.edit.provider.IStructuredItemContentProvider;
+import org.eclipse.emf.edit.provider.ITreeItemContentProvider;
+import org.eclipse.emf.edit.provider.ItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.ItemProviderAdapter;
+import org.eclipse.emf.edit.provider.ViewerNotification;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.GraphicChartType;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyFactory;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.GraphicChartType} object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class GraphicChartTypeItemProvider 
+	extends ItemProviderAdapter
+	implements
+		IEditingDomainItemProvider,
+		IStructuredItemContentProvider,
+		ITreeItemContentProvider,
+		IItemLabelProvider,
+		IItemPropertySource {
+	/**
+	 * This constructs an instance from a factory and a notifier.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public GraphicChartTypeItemProvider(AdapterFactory adapterFactory) {
+		super(adapterFactory);
+	}
+
+	/**
+	 * This returns the property descriptors for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) {
+		if (itemPropertyDescriptors == null) {
+			super.getPropertyDescriptors(object);
+
+			addIdPropertyDescriptor(object);
+			addM_accessPropertyDescriptor(object);
+			addElementListPropertyDescriptor(object);
+			addM_nModifyDatePropertyDescriptor(object);
+			addM_currentLeftTopPropertyDescriptor(object);
+			addM_modifiedPropertyDescriptor(object);
+			addM_nCreateDatePropertyDescriptor(object);
+			addM_pParentPropertyDescriptor(object);
+			addM_arrowStylePropertyDescriptor(object);
+			addM_drawBehaviorPropertyDescriptor(object);
+			addM_currentRightBottomPropertyDescriptor(object);
+			addM_creatorPropertyDescriptor(object);
+			addM_bScaleWithZoomPropertyDescriptor(object);
+			addM_typePropertyDescriptor(object);
+			addM_fileVersionPropertyDescriptor(object);
+			addM_bIsPreferencesInitializedPropertyDescriptor(object);
+		}
+		return itemPropertyDescriptors;
+	}
+
+	/**
+	 * This adds a property descriptor for the Id feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addIdPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_GraphicChartType_id_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_GraphicChartType_id_feature", "_UI_GraphicChartType_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getGraphicChartType_Id(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Maccess feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_accessPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_GraphicChartType_m_access_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_GraphicChartType_m_access_feature", "_UI_GraphicChartType_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getGraphicChartType_M_access(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Element List feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addElementListPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_GraphicChartType_elementList_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_GraphicChartType_elementList_feature", "_UI_GraphicChartType_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getGraphicChartType_ElementList(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the MnModify Date feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_nModifyDatePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_GraphicChartType_m_nModifyDate_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_GraphicChartType_m_nModifyDate_feature", "_UI_GraphicChartType_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getGraphicChartType_M_nModifyDate(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Mcurrent Left Top feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_currentLeftTopPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_GraphicChartType_m_currentLeftTop_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_GraphicChartType_m_currentLeftTop_feature", "_UI_GraphicChartType_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getGraphicChartType_M_currentLeftTop(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Mmodified feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_modifiedPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_GraphicChartType_m_modified_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_GraphicChartType_m_modified_feature", "_UI_GraphicChartType_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getGraphicChartType_M_modified(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the MnCreate Date feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_nCreateDatePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_GraphicChartType_m_nCreateDate_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_GraphicChartType_m_nCreateDate_feature", "_UI_GraphicChartType_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getGraphicChartType_M_nCreateDate(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the MpParent feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_pParentPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_GraphicChartType_m_pParent_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_GraphicChartType_m_pParent_feature", "_UI_GraphicChartType_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getGraphicChartType_M_pParent(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Marrow Style feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_arrowStylePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_GraphicChartType_m_arrowStyle_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_GraphicChartType_m_arrowStyle_feature", "_UI_GraphicChartType_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getGraphicChartType_M_arrowStyle(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Mdraw Behavior feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_drawBehaviorPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_GraphicChartType_m_drawBehavior_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_GraphicChartType_m_drawBehavior_feature", "_UI_GraphicChartType_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getGraphicChartType_M_drawBehavior(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Mcurrent Right Bottom feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_currentRightBottomPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_GraphicChartType_m_currentRightBottom_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_GraphicChartType_m_currentRightBottom_feature", "_UI_GraphicChartType_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getGraphicChartType_M_currentRightBottom(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Mcreator feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_creatorPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_GraphicChartType_m_creator_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_GraphicChartType_m_creator_feature", "_UI_GraphicChartType_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getGraphicChartType_M_creator(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the MbScale With Zoom feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_bScaleWithZoomPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_GraphicChartType_m_bScaleWithZoom_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_GraphicChartType_m_bScaleWithZoom_feature", "_UI_GraphicChartType_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getGraphicChartType_M_bScaleWithZoom(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Mtype feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_typePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_GraphicChartType_m_type_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_GraphicChartType_m_type_feature", "_UI_GraphicChartType_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getGraphicChartType_M_type(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Mfile Version feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_fileVersionPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_GraphicChartType_m_fileVersion_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_GraphicChartType_m_fileVersion_feature", "_UI_GraphicChartType_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getGraphicChartType_M_fileVersion(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the MbIs Preferences Initialized feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_bIsPreferencesInitializedPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_GraphicChartType_m_bIsPreferencesInitialized_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_GraphicChartType_m_bIsPreferencesInitialized_feature", "_UI_GraphicChartType_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getGraphicChartType_M_bIsPreferencesInitialized(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This specifies how to implement {@link #getChildren} and is used to deduce an appropriate feature for an
+	 * {@link org.eclipse.emf.edit.command.AddCommand}, {@link org.eclipse.emf.edit.command.RemoveCommand} or
+	 * {@link org.eclipse.emf.edit.command.MoveCommand} in {@link #createCommand}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Collection<? extends EStructuralFeature> getChildrenFeatures(Object object) {
+		if (childrenFeatures == null) {
+			super.getChildrenFeatures(object);
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getGraphicChartType_GraphElements());
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getGraphicChartType_M_name());
+		}
+		return childrenFeatures;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EStructuralFeature getChildFeature(Object object, Object child) {
+		// Check the type of the specified child object and return the proper feature to use for
+		// adding (see {@link AddCommand}) it as a child.
+
+		return super.getChildFeature(object, child);
+	}
+
+	/**
+	 * This returns the label text for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String getText(Object object) {
+		String label = ((GraphicChartType)object).getId();
+		return label == null || label.length() == 0 ?
+			getString("_UI_GraphicChartType_type") : //$NON-NLS-1$
+			getString("_UI_GraphicChartType_type") + " " + label; //$NON-NLS-1$ //$NON-NLS-2$
+	}
+	
+
+	/**
+	 * This handles model notifications by calling {@link #updateChildren} to update any cached
+	 * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void notifyChanged(Notification notification) {
+		updateChildren(notification);
+
+		switch (notification.getFeatureID(GraphicChartType.class)) {
+			case UMLRpyPackage.GRAPHIC_CHART_TYPE__ID:
+			case UMLRpyPackage.GRAPHIC_CHART_TYPE__MACCESS:
+			case UMLRpyPackage.GRAPHIC_CHART_TYPE__ELEMENT_LIST:
+			case UMLRpyPackage.GRAPHIC_CHART_TYPE__MNMODIFY_DATE:
+			case UMLRpyPackage.GRAPHIC_CHART_TYPE__MCURRENT_LEFT_TOP:
+			case UMLRpyPackage.GRAPHIC_CHART_TYPE__MMODIFIED:
+			case UMLRpyPackage.GRAPHIC_CHART_TYPE__MNCREATE_DATE:
+			case UMLRpyPackage.GRAPHIC_CHART_TYPE__MPPARENT:
+			case UMLRpyPackage.GRAPHIC_CHART_TYPE__MARROW_STYLE:
+			case UMLRpyPackage.GRAPHIC_CHART_TYPE__MDRAW_BEHAVIOR:
+			case UMLRpyPackage.GRAPHIC_CHART_TYPE__MCURRENT_RIGHT_BOTTOM:
+			case UMLRpyPackage.GRAPHIC_CHART_TYPE__MCREATOR:
+			case UMLRpyPackage.GRAPHIC_CHART_TYPE__MBSCALE_WITH_ZOOM:
+			case UMLRpyPackage.GRAPHIC_CHART_TYPE__MTYPE:
+			case UMLRpyPackage.GRAPHIC_CHART_TYPE__MFILE_VERSION:
+			case UMLRpyPackage.GRAPHIC_CHART_TYPE__MBIS_PREFERENCES_INITIALIZED:
+				fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), false, true));
+				return;
+			case UMLRpyPackage.GRAPHIC_CHART_TYPE__GRAPH_ELEMENTS:
+			case UMLRpyPackage.GRAPHIC_CHART_TYPE__MNAME:
+				fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), true, false));
+				return;
+		}
+		super.notifyChanged(notification);
+	}
+
+	/**
+	 * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children
+	 * that can be created under this object.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) {
+		super.collectNewChildDescriptors(newChildDescriptors, object);
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getGraphicChartType_GraphElements(),
+				 UMLRpyFactory.eINSTANCE.createCGIActionState()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getGraphicChartType_GraphElements(),
+				 UMLRpyFactory.eINSTANCE.createCGIActiveX()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getGraphicChartType_GraphElements(),
+				 UMLRpyFactory.eINSTANCE.createCGIAnchor()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getGraphicChartType_GraphElements(),
+				 UMLRpyFactory.eINSTANCE.createCGIAnnotation()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getGraphicChartType_GraphElements(),
+				 UMLRpyFactory.eINSTANCE.createCGIArrow()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getGraphicChartType_GraphElements(),
+				 UMLRpyFactory.eINSTANCE.createCGIAssociationEnd()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getGraphicChartType_GraphElements(),
+				 UMLRpyFactory.eINSTANCE.createCGIAssociationRole()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getGraphicChartType_GraphElements(),
+				 UMLRpyFactory.eINSTANCE.createCGIBasicClass()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getGraphicChartType_GraphElements(),
+				 UMLRpyFactory.eINSTANCE.createCGIBlockState()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getGraphicChartType_GraphElements(),
+				 UMLRpyFactory.eINSTANCE.createCGIBox()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getGraphicChartType_GraphElements(),
+				 UMLRpyFactory.eINSTANCE.createCGIButtonArray()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getGraphicChartType_GraphElements(),
+				 UMLRpyFactory.eINSTANCE.createCGIClass()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getGraphicChartType_GraphElements(),
+				 UMLRpyFactory.eINSTANCE.createCGIClassifierRole()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getGraphicChartType_GraphElements(),
+				 UMLRpyFactory.eINSTANCE.createCGIComponent()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getGraphicChartType_GraphElements(),
+				 UMLRpyFactory.eINSTANCE.createCGICompositeClass()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getGraphicChartType_GraphElements(),
+				 UMLRpyFactory.eINSTANCE.createCGIConnector()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getGraphicChartType_GraphElements(),
+				 UMLRpyFactory.eINSTANCE.createCGIContainArrow()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getGraphicChartType_GraphElements(),
+				 UMLRpyFactory.eINSTANCE.createCGIDiagramFrame()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getGraphicChartType_GraphElements(),
+				 UMLRpyFactory.eINSTANCE.createCGIFreeShape()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getGraphicChartType_GraphElements(),
+				 UMLRpyFactory.eINSTANCE.createCGIFreeText()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getGraphicChartType_GraphElements(),
+				 UMLRpyFactory.eINSTANCE.createCGIGenericElement()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getGraphicChartType_GraphElements(),
+				 UMLRpyFactory.eINSTANCE.createCGIImage()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getGraphicChartType_GraphElements(),
+				 UMLRpyFactory.eINSTANCE.createCGIImageData()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getGraphicChartType_GraphElements(),
+				 UMLRpyFactory.eINSTANCE.createCGIInformationFlow()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getGraphicChartType_GraphElements(),
+				 UMLRpyFactory.eINSTANCE.createCGIInheritance()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getGraphicChartType_GraphElements(),
+				 UMLRpyFactory.eINSTANCE.createCGIMFCCtrl()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getGraphicChartType_GraphElements(),
+				 UMLRpyFactory.eINSTANCE.createCGIMessageLabel()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getGraphicChartType_GraphElements(),
+				 UMLRpyFactory.eINSTANCE.createCGIMscColumnCR()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getGraphicChartType_GraphElements(),
+				 UMLRpyFactory.eINSTANCE.createCGIMscConditionMark()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getGraphicChartType_GraphElements(),
+				 UMLRpyFactory.eINSTANCE.createCGIMscExecutionOccurrence()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getGraphicChartType_GraphElements(),
+				 UMLRpyFactory.eINSTANCE.createCGIMscInteractionOccurrence()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getGraphicChartType_GraphElements(),
+				 UMLRpyFactory.eINSTANCE.createCGIMscInteractionOperand()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getGraphicChartType_GraphElements(),
+				 UMLRpyFactory.eINSTANCE.createCGIMscInteractionOperator()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getGraphicChartType_GraphElements(),
+				 UMLRpyFactory.eINSTANCE.createCGIMscMessage()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getGraphicChartType_GraphElements(),
+				 UMLRpyFactory.eINSTANCE.createCGIObjectInstance()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getGraphicChartType_GraphElements(),
+				 UMLRpyFactory.eINSTANCE.createCGIObjectLink()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getGraphicChartType_GraphElements(),
+				 UMLRpyFactory.eINSTANCE.createCGIPackage()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getGraphicChartType_GraphElements(),
+				 UMLRpyFactory.eINSTANCE.createCGIPartition()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getGraphicChartType_GraphElements(),
+				 UMLRpyFactory.eINSTANCE.createCGIPortConnector()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getGraphicChartType_GraphElements(),
+				 UMLRpyFactory.eINSTANCE.createCGIState()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getGraphicChartType_GraphElements(),
+				 UMLRpyFactory.eINSTANCE.createCGISwimlaneFrame()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getGraphicChartType_GraphElements(),
+				 UMLRpyFactory.eINSTANCE.createCGITextBox()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getGraphicChartType_GraphElements(),
+				 UMLRpyFactory.eINSTANCE.createCGITrans()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getGraphicChartType_M_name(),
+				 UMLRpyFactory.eINSTANCE.createCGIText()));
+	}
+
+	/**
+	 * Return the resource locator for this item provider's resources.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public ResourceLocator getResourceLocator() {
+		return rpymetamodelEditPlugin.INSTANCE;
+	}
+
+}
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/HyperLinksTypeItemProvider.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/HyperLinksTypeItemProvider.java
new file mode 100755
index 0000000..5a788c0
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/HyperLinksTypeItemProvider.java
@@ -0,0 +1,98 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.provider;
+
+
+import java.util.Collection;
+import java.util.List;
+
+import org.eclipse.emf.common.notify.AdapterFactory;
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.edit.provider.IItemPropertyDescriptor;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.HyperLinksType;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.HyperLinksType} object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class HyperLinksTypeItemProvider extends IModelElementItemProvider {
+	/**
+	 * This constructs an instance from a factory and a notifier.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public HyperLinksTypeItemProvider(AdapterFactory adapterFactory) {
+		super(adapterFactory);
+	}
+
+	/**
+	 * This returns the property descriptors for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) {
+		if (itemPropertyDescriptors == null) {
+			super.getPropertyDescriptors(object);
+
+		}
+		return itemPropertyDescriptors;
+	}
+
+	/**
+	 * This returns the label text for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String getText(Object object) {
+		String label = ((HyperLinksType)object).getDisplayName();
+		return label == null || label.length() == 0 ?
+			getString("_UI_HyperLinksType_type") : //$NON-NLS-1$
+			getString("_UI_HyperLinksType_type") + " " + label; //$NON-NLS-1$ //$NON-NLS-2$
+	}
+	
+
+	/**
+	 * This handles model notifications by calling {@link #updateChildren} to update any cached
+	 * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void notifyChanged(Notification notification) {
+		updateChildren(notification);
+		super.notifyChanged(notification);
+	}
+
+	/**
+	 * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children
+	 * that can be created under this object.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) {
+		super.collectNewChildDescriptors(newChildDescriptors, object);
+	}
+
+}
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/IAcceptEventActionItemProvider.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/IAcceptEventActionItemProvider.java
new file mode 100755
index 0000000..84e5f7f
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/IAcceptEventActionItemProvider.java
@@ -0,0 +1,160 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.provider;
+
+
+import java.util.Collection;
+import java.util.List;
+
+import org.eclipse.emf.common.notify.AdapterFactory;
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.edit.provider.ComposeableAdapterFactory;
+import org.eclipse.emf.edit.provider.IItemPropertyDescriptor;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IAcceptEventAction;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IAcceptEventAction} object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class IAcceptEventActionItemProvider extends IStateItemProvider {
+	/**
+	 * This constructs an instance from a factory and a notifier.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IAcceptEventActionItemProvider(AdapterFactory adapterFactory) {
+		super(adapterFactory);
+	}
+
+	/**
+	 * This returns the property descriptors for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) {
+		if (itemPropertyDescriptors == null) {
+			super.getPropertyDescriptors(object);
+
+			addEventPropertyDescriptor(object);
+		}
+		return itemPropertyDescriptors;
+	}
+
+	/**
+	 * This adds a property descriptor for the Event feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addEventPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IAcceptEventAction_event_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IAcceptEventAction_event_feature", "_UI_IAcceptEventAction_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIAcceptEventAction_Event(),
+				 true,
+				 false,
+				 true,
+				 null,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This returns IAcceptEventAction.gif.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object getImage(Object object) {
+		return overlayImage(object, getResourceLocator().getImage("full/obj16/IAcceptEventAction")); //$NON-NLS-1$
+	}
+
+	/**
+	 * This returns the label text for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String getText(Object object) {
+		String label = ((IAcceptEventAction)object).getName();
+		return label == null || label.length() == 0 ?
+			getString("_UI_IAcceptEventAction_type") : //$NON-NLS-1$
+			getString("_UI_IAcceptEventAction_type") + " " + label; //$NON-NLS-1$ //$NON-NLS-2$
+	}
+	
+
+	/**
+	 * This handles model notifications by calling {@link #updateChildren} to update any cached
+	 * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void notifyChanged(Notification notification) {
+		updateChildren(notification);
+		super.notifyChanged(notification);
+	}
+
+	/**
+	 * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children
+	 * that can be created under this object.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) {
+		super.collectNewChildDescriptors(newChildDescriptors, object);
+	}
+
+	/**
+	 * This returns the label text for {@link org.eclipse.emf.edit.command.CreateChildCommand}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String getCreateChildText(Object owner, Object feature, Object child, Collection<?> selection) {
+		Object childFeature = feature;
+		Object childObject = child;
+
+		boolean qualify =
+			childFeature == UMLRpyPackage.eINSTANCE.getIState_EntryAction() ||
+			childFeature == UMLRpyPackage.eINSTANCE.getIState_ExitAction() ||
+			childFeature == UMLRpyPackage.eINSTANCE.getIState_NestedStateChart() ||
+			childFeature == UMLRpyPackage.eINSTANCE.getIState_Annotations() ||
+			childFeature == UMLRpyPackage.eINSTANCE.getIState_Dependencies();
+
+		if (qualify) {
+			return getString
+				("_UI_CreateChild_text2", //$NON-NLS-1$
+				 new Object[] { getTypeText(childObject), getFeatureText(childFeature), getTypeText(owner) });
+		}
+		return super.getCreateChildText(owner, feature, child, selection);
+	}
+
+}
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/IAcceptTimeEventItemProvider.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/IAcceptTimeEventItemProvider.java
new file mode 100755
index 0000000..bc00815
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/IAcceptTimeEventItemProvider.java
@@ -0,0 +1,136 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.provider;
+
+
+import java.util.Collection;
+import java.util.List;
+
+import org.eclipse.emf.common.notify.AdapterFactory;
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.edit.provider.IItemPropertyDescriptor;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IAcceptTimeEvent;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IAcceptTimeEvent} object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class IAcceptTimeEventItemProvider extends IStateItemProvider {
+	/**
+	 * This constructs an instance from a factory and a notifier.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IAcceptTimeEventItemProvider(AdapterFactory adapterFactory) {
+		super(adapterFactory);
+	}
+
+	/**
+	 * This returns the property descriptors for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) {
+		if (itemPropertyDescriptors == null) {
+			super.getPropertyDescriptors(object);
+
+		}
+		return itemPropertyDescriptors;
+	}
+
+	/**
+	 * This returns IAcceptTimeEvent.gif.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object getImage(Object object) {
+		return overlayImage(object, getResourceLocator().getImage("full/obj16/IAcceptTimeEvent")); //$NON-NLS-1$
+	}
+
+	/**
+	 * This returns the label text for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String getText(Object object) {
+		String label = ((IAcceptTimeEvent)object).getName();
+		return label == null || label.length() == 0 ?
+			getString("_UI_IAcceptTimeEvent_type") : //$NON-NLS-1$
+			getString("_UI_IAcceptTimeEvent_type") + " " + label; //$NON-NLS-1$ //$NON-NLS-2$
+	}
+	
+
+	/**
+	 * This handles model notifications by calling {@link #updateChildren} to update any cached
+	 * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void notifyChanged(Notification notification) {
+		updateChildren(notification);
+		super.notifyChanged(notification);
+	}
+
+	/**
+	 * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children
+	 * that can be created under this object.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) {
+		super.collectNewChildDescriptors(newChildDescriptors, object);
+	}
+
+	/**
+	 * This returns the label text for {@link org.eclipse.emf.edit.command.CreateChildCommand}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String getCreateChildText(Object owner, Object feature, Object child, Collection<?> selection) {
+		Object childFeature = feature;
+		Object childObject = child;
+
+		boolean qualify =
+			childFeature == UMLRpyPackage.eINSTANCE.getIState_EntryAction() ||
+			childFeature == UMLRpyPackage.eINSTANCE.getIState_ExitAction() ||
+			childFeature == UMLRpyPackage.eINSTANCE.getIState_NestedStateChart() ||
+			childFeature == UMLRpyPackage.eINSTANCE.getIState_Annotations() ||
+			childFeature == UMLRpyPackage.eINSTANCE.getIState_Dependencies();
+
+		if (qualify) {
+			return getString
+				("_UI_CreateChild_text2", //$NON-NLS-1$
+				 new Object[] { getTypeText(childObject), getFeatureText(childFeature), getTypeText(owner) });
+		}
+		return super.getCreateChildText(owner, feature, child, selection);
+	}
+
+}
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/IActionItemProvider.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/IActionItemProvider.java
new file mode 100755
index 0000000..e4a67ca
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/IActionItemProvider.java
@@ -0,0 +1,262 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.provider;
+
+
+import java.util.Collection;
+import java.util.List;
+
+import org.eclipse.emf.common.notify.AdapterFactory;
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.edit.provider.ComposeableAdapterFactory;
+import org.eclipse.emf.edit.provider.IItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.ItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.ViewerNotification;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IAction;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IAction} object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class IActionItemProvider extends IModelElementItemProvider {
+	/**
+	 * This constructs an instance from a factory and a notifier.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IActionItemProvider(AdapterFactory adapterFactory) {
+		super(adapterFactory);
+	}
+
+	/**
+	 * This returns the property descriptors for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) {
+		if (itemPropertyDescriptors == null) {
+			super.getPropertyDescriptors(object);
+
+			addIdPropertyDescriptor(object);
+			addMyStatePropertyDescriptor(object);
+			addBodyPropertyDescriptor(object);
+			addModifiedTimeWeakPropertyDescriptor(object);
+			addObjectCreationPropertyDescriptor(object);
+			addUmlDependencyIDPropertyDescriptor(object);
+		}
+		return itemPropertyDescriptors;
+	}
+
+	/**
+	 * This adds a property descriptor for the Id feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addIdPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IAction_id_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IAction_id_feature", "_UI_IAction_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIAction_Id(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the My State feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addMyStatePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IAction_myState_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IAction_myState_feature", "_UI_IAction_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIAction_MyState(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Body feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addBodyPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IAction_body_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IAction_body_feature", "_UI_IAction_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIAction_Body(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Modified Time Weak feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addModifiedTimeWeakPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IAction_modifiedTimeWeak_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IAction_modifiedTimeWeak_feature", "_UI_IAction_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIAction_ModifiedTimeWeak(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Object Creation feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addObjectCreationPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IAction_objectCreation_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IAction_objectCreation_feature", "_UI_IAction_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIAction_ObjectCreation(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Uml Dependency ID feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addUmlDependencyIDPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IAction_umlDependencyID_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IAction_umlDependencyID_feature", "_UI_IAction_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIAction_UmlDependencyID(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This returns IAction.gif.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object getImage(Object object) {
+		return overlayImage(object, getResourceLocator().getImage("full/obj16/IAction")); //$NON-NLS-1$
+	}
+
+	/**
+	 * This returns the label text for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String getText(Object object) {
+		String label = ((IAction)object).getDisplayName();
+		return label == null || label.length() == 0 ?
+			getString("_UI_IAction_type") : //$NON-NLS-1$
+			getString("_UI_IAction_type") + " " + label; //$NON-NLS-1$ //$NON-NLS-2$
+	}
+	
+
+	/**
+	 * This handles model notifications by calling {@link #updateChildren} to update any cached
+	 * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void notifyChanged(Notification notification) {
+		updateChildren(notification);
+
+		switch (notification.getFeatureID(IAction.class)) {
+			case UMLRpyPackage.IACTION__ID:
+			case UMLRpyPackage.IACTION__MY_STATE:
+			case UMLRpyPackage.IACTION__BODY:
+			case UMLRpyPackage.IACTION__MODIFIED_TIME_WEAK:
+			case UMLRpyPackage.IACTION__OBJECT_CREATION:
+			case UMLRpyPackage.IACTION__UML_DEPENDENCY_ID:
+				fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), false, true));
+				return;
+		}
+		super.notifyChanged(notification);
+	}
+
+	/**
+	 * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children
+	 * that can be created under this object.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) {
+		super.collectNewChildDescriptors(newChildDescriptors, object);
+	}
+
+}
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/IActivityDiagramItemProvider.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/IActivityDiagramItemProvider.java
new file mode 100755
index 0000000..6bc0416
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/IActivityDiagramItemProvider.java
@@ -0,0 +1,180 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.provider;
+
+
+import java.util.Collection;
+import java.util.List;
+
+import org.eclipse.emf.common.notify.AdapterFactory;
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.ecore.EStructuralFeature;
+
+import org.eclipse.emf.edit.provider.ComposeableAdapterFactory;
+import org.eclipse.emf.edit.provider.IItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.ItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.ViewerNotification;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IActivityDiagram;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyFactory;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IActivityDiagram} object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class IActivityDiagramItemProvider extends DependsOnTypeItemProvider {
+	/**
+	 * This constructs an instance from a factory and a notifier.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IActivityDiagramItemProvider(AdapterFactory adapterFactory) {
+		super(adapterFactory);
+	}
+
+	/**
+	 * This returns the property descriptors for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) {
+		if (itemPropertyDescriptors == null) {
+			super.getPropertyDescriptors(object);
+
+			addCodeUpdateCGTimePropertyDescriptor(object);
+		}
+		return itemPropertyDescriptors;
+	}
+
+	/**
+	 * This adds a property descriptor for the Code Update CG Time feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addCodeUpdateCGTimePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IActivityDiagram_codeUpdateCGTime_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IActivityDiagram_codeUpdateCGTime_feature", "_UI_IActivityDiagram_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIActivityDiagram_CodeUpdateCGTime(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This specifies how to implement {@link #getChildren} and is used to deduce an appropriate feature for an
+	 * {@link org.eclipse.emf.edit.command.AddCommand}, {@link org.eclipse.emf.edit.command.RemoveCommand} or
+	 * {@link org.eclipse.emf.edit.command.MoveCommand} in {@link #createCommand}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Collection<? extends EStructuralFeature> getChildrenFeatures(Object object) {
+		if (childrenFeatures == null) {
+			super.getChildrenFeatures(object);
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getIActivityDiagram_GraphicChart());
+		}
+		return childrenFeatures;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EStructuralFeature getChildFeature(Object object, Object child) {
+		// Check the type of the specified child object and return the proper feature to use for
+		// adding (see {@link AddCommand}) it as a child.
+
+		return super.getChildFeature(object, child);
+	}
+
+	/**
+	 * This returns IActivityDiagram.gif.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object getImage(Object object) {
+		return overlayImage(object, getResourceLocator().getImage("full/obj16/IActivityDiagram")); //$NON-NLS-1$
+	}
+
+	/**
+	 * This returns the label text for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String getText(Object object) {
+		return getString("_UI_IActivityDiagram_type"); //$NON-NLS-1$
+	}
+	
+
+	/**
+	 * This handles model notifications by calling {@link #updateChildren} to update any cached
+	 * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void notifyChanged(Notification notification) {
+		updateChildren(notification);
+
+		switch (notification.getFeatureID(IActivityDiagram.class)) {
+			case UMLRpyPackage.IACTIVITY_DIAGRAM__CODE_UPDATE_CG_TIME:
+				fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), false, true));
+				return;
+			case UMLRpyPackage.IACTIVITY_DIAGRAM__GRAPHIC_CHART:
+				fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), true, false));
+				return;
+		}
+		super.notifyChanged(notification);
+	}
+
+	/**
+	 * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children
+	 * that can be created under this object.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) {
+		super.collectNewChildDescriptors(newChildDescriptors, object);
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIActivityDiagram_GraphicChart(),
+				 UMLRpyFactory.eINSTANCE.createCGIStateChart()));
+	}
+
+}
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/IActivityGraphItemProvider.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/IActivityGraphItemProvider.java
new file mode 100755
index 0000000..d7088df
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/IActivityGraphItemProvider.java
@@ -0,0 +1,838 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.provider;
+
+
+import java.util.Collection;
+import java.util.List;
+
+import org.eclipse.emf.common.notify.AdapterFactory;
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.ecore.EStructuralFeature;
+import org.eclipse.emf.ecore.EcoreFactory;
+import org.eclipse.emf.ecore.EcorePackage;
+import org.eclipse.emf.edit.provider.ComposeableAdapterFactory;
+import org.eclipse.emf.edit.provider.IItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.ItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.ViewerNotification;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IActivityGraph;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyFactory;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IActivityGraph} object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class IActivityGraphItemProvider extends NestedStateChartTypeItemProvider {
+	/**
+	 * This constructs an instance from a factory and a notifier.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IActivityGraphItemProvider(AdapterFactory adapterFactory) {
+		super(adapterFactory);
+	}
+
+	/**
+	 * This returns the property descriptors for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) {
+		if (itemPropertyDescriptors == null) {
+			super.getPropertyDescriptors(object);
+
+			addModifiedTimeWeakPropertyDescriptor(object);
+			addIdPropertyDescriptor(object);
+			addMyStatePropertyDescriptor(object);
+			addNamePropertyDescriptor(object);
+			addDisplayNamePropertyDescriptor(object);
+			addLastIDPropertyDescriptor(object);
+			addWeakCGTimePropertyDescriptor(object);
+			addStrongCGTimePropertyDescriptor(object);
+			addMultiplicityPropertyDescriptor(object);
+			addItsStateChartPropertyDescriptor(object);
+			addClassModifierPropertyDescriptor(object);
+			addBaseVersionPropertyDescriptor(object);
+			addDiagramPropertyDescriptor(object);
+			addRequiremenTracabilityHandlePropertyDescriptor(object);
+			addAnalysisModePropertyDescriptor(object);
+			addCodeUpdateCGTimePropertyDescriptor(object);
+			addObjectCreationPropertyDescriptor(object);
+			addUmlDependencyIDPropertyDescriptor(object);
+			addTheMainDiagramPropertyDescriptor(object);
+		}
+		return itemPropertyDescriptors;
+	}
+
+	/**
+	 * This adds a property descriptor for the Modified Time Weak feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addModifiedTimeWeakPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_ValueType_modifiedTimeWeak_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_ValueType_modifiedTimeWeak_feature", "_UI_ValueType_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getValueType_ModifiedTimeWeak(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Id feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addIdPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_ValueType_id_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_ValueType_id_feature", "_UI_ValueType_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getValueType_Id(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the My State feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addMyStatePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_ValueType_myState_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_ValueType_myState_feature", "_UI_ValueType_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getValueType_MyState(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Name feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addNamePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_ValueType_name_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_ValueType_name_feature", "_UI_ValueType_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getValueType_Name(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Display Name feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addDisplayNamePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IModelElement_displayName_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IModelElement_displayName_feature", "_UI_IModelElement_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIModelElement_DisplayName(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Last ID feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addLastIDPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IActivityGraph_lastID_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IActivityGraph_lastID_feature", "_UI_IActivityGraph_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIActivityGraph_LastID(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Weak CG Time feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addWeakCGTimePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IActivityGraph_weakCGTime_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IActivityGraph_weakCGTime_feature", "_UI_IActivityGraph_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIActivityGraph_WeakCGTime(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Strong CG Time feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addStrongCGTimePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IActivityGraph_strongCGTime_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IActivityGraph_strongCGTime_feature", "_UI_IActivityGraph_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIActivityGraph_StrongCGTime(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Multiplicity feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addMultiplicityPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IActivityGraph_multiplicity_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IActivityGraph_multiplicity_feature", "_UI_IActivityGraph_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIActivityGraph_Multiplicity(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Its State Chart feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addItsStateChartPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IActivityGraph_itsStateChart_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IActivityGraph_itsStateChart_feature", "_UI_IActivityGraph_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIActivityGraph_ItsStateChart(),
+				 true,
+				 false,
+				 true,
+				 null,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Class Modifier feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addClassModifierPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IActivityGraph_classModifier_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IActivityGraph_classModifier_feature", "_UI_IActivityGraph_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIActivityGraph_ClassModifier(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Base Version feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addBaseVersionPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IActivityGraph_baseVersion_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IActivityGraph_baseVersion_feature", "_UI_IActivityGraph_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIActivityGraph_BaseVersion(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Diagram feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addDiagramPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IActivityGraph_diagram_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IActivityGraph_diagram_feature", "_UI_IActivityGraph_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIActivityGraph_Diagram(),
+				 true,
+				 false,
+				 true,
+				 null,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Requiremen Tracability Handle feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addRequiremenTracabilityHandlePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IActivityGraph_requiremenTracabilityHandle_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IActivityGraph_requiremenTracabilityHandle_feature", "_UI_IActivityGraph_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIActivityGraph_RequiremenTracabilityHandle(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Analysis Mode feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addAnalysisModePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IActivityGraph_AnalysisMode_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IActivityGraph_AnalysisMode_feature", "_UI_IActivityGraph_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIActivityGraph_AnalysisMode(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Code Update CG Time feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addCodeUpdateCGTimePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IActivityGraph_codeUpdateCGTime_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IActivityGraph_codeUpdateCGTime_feature", "_UI_IActivityGraph_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIActivityGraph_CodeUpdateCGTime(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Object Creation feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addObjectCreationPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IActivityGraph_objectCreation_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IActivityGraph_objectCreation_feature", "_UI_IActivityGraph_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIActivityGraph_ObjectCreation(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Uml Dependency ID feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addUmlDependencyIDPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IActivityGraph_umlDependencyID_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IActivityGraph_umlDependencyID_feature", "_UI_IActivityGraph_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIActivityGraph_UmlDependencyID(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the The Main Diagram feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addTheMainDiagramPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IActivityGraph_theMainDiagram_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IActivityGraph_theMainDiagram_feature", "_UI_IActivityGraph_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIActivityGraph_TheMainDiagram(),
+				 true,
+				 false,
+				 true,
+				 null,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This specifies how to implement {@link #getChildren} and is used to deduce an appropriate feature for an
+	 * {@link org.eclipse.emf.edit.command.AddCommand}, {@link org.eclipse.emf.edit.command.RemoveCommand} or
+	 * {@link org.eclipse.emf.edit.command.MoveCommand} in {@link #createCommand}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Collection<? extends EStructuralFeature> getChildrenFeatures(Object object) {
+		if (childrenFeatures == null) {
+			super.getChildrenFeatures(object);
+			childrenFeatures.add(EcorePackage.Literals.EMODEL_ELEMENT__EANNOTATIONS);
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getIActivityGraph_States());
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getIActivityGraph_Views());
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getIActivityGraph_Properties());
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getIActivityGraph_Description());
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getIActivityGraph_Swimlanes());
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getIActivityGraph_Stereotypes());
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getIActivityGraph_Annotations());
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getIActivityGraph_HyperLinks());
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getIActivityGraph_Dependencies());
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getIActivityGraph_Associations());
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getIActivityGraph_Tags());
+		}
+		return childrenFeatures;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EStructuralFeature getChildFeature(Object object, Object child) {
+		// Check the type of the specified child object and return the proper feature to use for
+		// adding (see {@link AddCommand}) it as a child.
+
+		return super.getChildFeature(object, child);
+	}
+
+	/**
+	 * This returns IActivityGraph.gif.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object getImage(Object object) {
+		return overlayImage(object, getResourceLocator().getImage("full/obj16/IActivityGraph")); //$NON-NLS-1$
+	}
+
+	/**
+	 * This returns the label text for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String getText(Object object) {
+		String label = ((IActivityGraph)object).getName();
+		return label == null || label.length() == 0 ?
+			getString("_UI_IActivityGraph_type") : //$NON-NLS-1$
+			getString("_UI_IActivityGraph_type") + " " + label; //$NON-NLS-1$ //$NON-NLS-2$
+	}
+	
+
+	/**
+	 * This handles model notifications by calling {@link #updateChildren} to update any cached
+	 * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void notifyChanged(Notification notification) {
+		updateChildren(notification);
+
+		switch (notification.getFeatureID(IActivityGraph.class)) {
+			case UMLRpyPackage.IACTIVITY_GRAPH__MODIFIED_TIME_WEAK:
+			case UMLRpyPackage.IACTIVITY_GRAPH__ID:
+			case UMLRpyPackage.IACTIVITY_GRAPH__MY_STATE:
+			case UMLRpyPackage.IACTIVITY_GRAPH__NAME:
+			case UMLRpyPackage.IACTIVITY_GRAPH__DISPLAY_NAME:
+			case UMLRpyPackage.IACTIVITY_GRAPH__LAST_ID:
+			case UMLRpyPackage.IACTIVITY_GRAPH__WEAK_CG_TIME:
+			case UMLRpyPackage.IACTIVITY_GRAPH__STRONG_CG_TIME:
+			case UMLRpyPackage.IACTIVITY_GRAPH__MULTIPLICITY:
+			case UMLRpyPackage.IACTIVITY_GRAPH__CLASS_MODIFIER:
+			case UMLRpyPackage.IACTIVITY_GRAPH__BASE_VERSION:
+			case UMLRpyPackage.IACTIVITY_GRAPH__REQUIREMEN_TRACABILITY_HANDLE:
+			case UMLRpyPackage.IACTIVITY_GRAPH__ANALYSIS_MODE:
+			case UMLRpyPackage.IACTIVITY_GRAPH__CODE_UPDATE_CG_TIME:
+			case UMLRpyPackage.IACTIVITY_GRAPH__OBJECT_CREATION:
+			case UMLRpyPackage.IACTIVITY_GRAPH__UML_DEPENDENCY_ID:
+				fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), false, true));
+				return;
+			case UMLRpyPackage.IACTIVITY_GRAPH__EANNOTATIONS:
+			case UMLRpyPackage.IACTIVITY_GRAPH__STATES:
+			case UMLRpyPackage.IACTIVITY_GRAPH__VIEWS:
+			case UMLRpyPackage.IACTIVITY_GRAPH__PROPERTIES:
+			case UMLRpyPackage.IACTIVITY_GRAPH__DESCRIPTION:
+			case UMLRpyPackage.IACTIVITY_GRAPH__SWIMLANES:
+			case UMLRpyPackage.IACTIVITY_GRAPH__STEREOTYPES:
+			case UMLRpyPackage.IACTIVITY_GRAPH__ANNOTATIONS:
+			case UMLRpyPackage.IACTIVITY_GRAPH__HYPER_LINKS:
+			case UMLRpyPackage.IACTIVITY_GRAPH__DEPENDENCIES:
+			case UMLRpyPackage.IACTIVITY_GRAPH__ASSOCIATIONS:
+			case UMLRpyPackage.IACTIVITY_GRAPH__TAGS:
+				fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), true, false));
+				return;
+		}
+		super.notifyChanged(notification);
+	}
+
+	/**
+	 * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children
+	 * that can be created under this object.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) {
+		super.collectNewChildDescriptors(newChildDescriptors, object);
+
+		newChildDescriptors.add
+			(createChildParameter
+				(EcorePackage.Literals.EMODEL_ELEMENT__EANNOTATIONS,
+				 EcoreFactory.eINSTANCE.createEAnnotation()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIActivityGraph_States(),
+				 UMLRpyFactory.eINSTANCE.createIState()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIActivityGraph_States(),
+				 UMLRpyFactory.eINSTANCE.createIAcceptEventAction()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIActivityGraph_States(),
+				 UMLRpyFactory.eINSTANCE.createIAcceptTimeEvent()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIActivityGraph_States(),
+				 UMLRpyFactory.eINSTANCE.createIBranch()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIActivityGraph_States(),
+				 UMLRpyFactory.eINSTANCE.createICallOperation()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIActivityGraph_States(),
+				 UMLRpyFactory.eINSTANCE.createIConnector()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIActivityGraph_States(),
+				 UMLRpyFactory.eINSTANCE.createIFork()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIActivityGraph_States(),
+				 UMLRpyFactory.eINSTANCE.createIHistoryConnector()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIActivityGraph_States(),
+				 UMLRpyFactory.eINSTANCE.createIObjectNode()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIActivityGraph_States(),
+				 UMLRpyFactory.eINSTANCE.createIPin()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIActivityGraph_States(),
+				 UMLRpyFactory.eINSTANCE.createIReferenceActivity()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIActivityGraph_States(),
+				 UMLRpyFactory.eINSTANCE.createITimeEvent()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIActivityGraph_Views(),
+				 UMLRpyFactory.eINSTANCE.createIActivityDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIActivityGraph_Properties(),
+				 UMLRpyFactory.eINSTANCE.createIPropertyContainer()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIActivityGraph_Description(),
+				 UMLRpyFactory.eINSTANCE.createIDescription()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIActivityGraph_Swimlanes(),
+				 UMLRpyFactory.eINSTANCE.createISwimlane()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIActivityGraph_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIClassifier()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIActivityGraph_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIActor()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIActivityGraph_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIClass()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIActivityGraph_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIAssociationClass()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIActivityGraph_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIInterfaceItem()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIActivityGraph_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIEvent()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIActivityGraph_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIEventReception()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIActivityGraph_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIFlowItem()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIActivityGraph_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createINode()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIActivityGraph_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIOperation()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIActivityGraph_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIStateChart()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIActivityGraph_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIStereotype()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIActivityGraph_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIType()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIActivityGraph_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIUseCase()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIActivityGraph_Annotations(),
+				 UMLRpyFactory.eINSTANCE.createIComment()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIActivityGraph_HyperLinks(),
+				 UMLRpyFactory.eINSTANCE.createIMHyperLink()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIActivityGraph_Dependencies(),
+				 UMLRpyFactory.eINSTANCE.createIDependency()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIActivityGraph_Dependencies(),
+				 UMLRpyFactory.eINSTANCE.createIHyperLink()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIActivityGraph_Associations(),
+				 UMLRpyFactory.eINSTANCE.createIAssociationEnd()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIActivityGraph_Tags(),
+				 UMLRpyFactory.eINSTANCE.createITag()));
+	}
+
+	/**
+	 * This returns the label text for {@link org.eclipse.emf.edit.command.CreateChildCommand}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String getCreateChildText(Object owner, Object feature, Object child, Collection<?> selection) {
+		Object childFeature = feature;
+		Object childObject = child;
+
+		boolean qualify =
+			childFeature == UMLRpyPackage.eINSTANCE.getNestedStateChartType_Connectors() ||
+			childFeature == UMLRpyPackage.eINSTANCE.getIActivityGraph_States();
+
+		if (qualify) {
+			return getString
+				("_UI_CreateChild_text2", //$NON-NLS-1$
+				 new Object[] { getTypeText(childObject), getFeatureText(childFeature), getTypeText(owner) });
+		}
+		return super.getCreateChildText(owner, feature, child, selection);
+	}
+
+}
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/IActorItemProvider.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/IActorItemProvider.java
new file mode 100755
index 0000000..4fca47c
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/IActorItemProvider.java
@@ -0,0 +1,595 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.provider;
+
+
+import java.util.Collection;
+import java.util.List;
+
+import org.eclipse.emf.common.notify.AdapterFactory;
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.ecore.EStructuralFeature;
+
+import org.eclipse.emf.edit.provider.ComposeableAdapterFactory;
+import org.eclipse.emf.edit.provider.IItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.ItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.ViewerNotification;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IActor;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyFactory;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IActor} object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class IActorItemProvider extends IClassifierItemProvider {
+	/**
+	 * This constructs an instance from a factory and a notifier.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IActorItemProvider(AdapterFactory adapterFactory) {
+		super(adapterFactory);
+	}
+
+	/**
+	 * This returns the property descriptors for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) {
+		if (itemPropertyDescriptors == null) {
+			super.getPropertyDescriptors(object);
+
+			addUmlDependencyIDPropertyDescriptor(object);
+			addObjectCreationPropertyDescriptor(object);
+			addMultiplicityPropertyDescriptor(object);
+			addIdPropertyDescriptor(object);
+			addMyStatePropertyDescriptor(object);
+			addNamePropertyDescriptor(object);
+			addTheMainDiagramPropertyDescriptor(object);
+			addLastIDPropertyDescriptor(object);
+			addWeakCGTimePropertyDescriptor(object);
+			addStrongCGTimePropertyDescriptor(object);
+			addItsStateChartPropertyDescriptor(object);
+			addClassModifierPropertyDescriptor(object);
+			addModifiedTimeWeakPropertyDescriptor(object);
+			addRequiremenTracabilityHandlePropertyDescriptor(object);
+		}
+		return itemPropertyDescriptors;
+	}
+
+	/**
+	 * This adds a property descriptor for the Uml Dependency ID feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addUmlDependencyIDPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_M_subjectType_umlDependencyID_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_M_subjectType_umlDependencyID_feature", "_UI_M_subjectType_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getM_subjectType_UmlDependencyID(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Object Creation feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addObjectCreationPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_M_subjectType_objectCreation_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_M_subjectType_objectCreation_feature", "_UI_M_subjectType_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getM_subjectType_ObjectCreation(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Multiplicity feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addMultiplicityPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_End2_Type_multiplicity_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_End2_Type_multiplicity_feature", "_UI_End2_Type_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getEnd2_Type_Multiplicity(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Id feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addIdPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IActor_id_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IActor_id_feature", "_UI_IActor_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIActor_Id(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the My State feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addMyStatePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IActor_myState_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IActor_myState_feature", "_UI_IActor_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIActor_MyState(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Name feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addNamePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IActor_name_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IActor_name_feature", "_UI_IActor_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIActor_Name(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the The Main Diagram feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addTheMainDiagramPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IActor_theMainDiagram_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IActor_theMainDiagram_feature", "_UI_IActor_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIActor_TheMainDiagram(),
+				 true,
+				 false,
+				 true,
+				 null,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Last ID feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addLastIDPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IActor_lastID_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IActor_lastID_feature", "_UI_IActor_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIActor_LastID(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Weak CG Time feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addWeakCGTimePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IActor_weakCGTime_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IActor_weakCGTime_feature", "_UI_IActor_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIActor_WeakCGTime(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Strong CG Time feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addStrongCGTimePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IActor_strongCGTime_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IActor_strongCGTime_feature", "_UI_IActor_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIActor_StrongCGTime(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Its State Chart feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addItsStateChartPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IActor_itsStateChart_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IActor_itsStateChart_feature", "_UI_IActor_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIActor_ItsStateChart(),
+				 true,
+				 false,
+				 true,
+				 null,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Class Modifier feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addClassModifierPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IActor_classModifier_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IActor_classModifier_feature", "_UI_IActor_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIActor_ClassModifier(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Modified Time Weak feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addModifiedTimeWeakPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IActor_modifiedTimeWeak_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IActor_modifiedTimeWeak_feature", "_UI_IActor_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIActor_ModifiedTimeWeak(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Requiremen Tracability Handle feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addRequiremenTracabilityHandlePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IActor_requiremenTracabilityHandle_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IActor_requiremenTracabilityHandle_feature", "_UI_IActor_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIActor_RequiremenTracabilityHandle(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This specifies how to implement {@link #getChildren} and is used to deduce an appropriate feature for an
+	 * {@link org.eclipse.emf.edit.command.AddCommand}, {@link org.eclipse.emf.edit.command.RemoveCommand} or
+	 * {@link org.eclipse.emf.edit.command.MoveCommand} in {@link #createCommand}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Collection<? extends EStructuralFeature> getChildrenFeatures(Object object) {
+		if (childrenFeatures == null) {
+			super.getChildrenFeatures(object);
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getIActor_Dependencies());
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getIActor_Operations());
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getIActor_StateCharts());
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getIActor_Associations());
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getIActor_HyperLinks());
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getIActor_Ports());
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getIActor_Inheritances());
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getIActor_Attrs());
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getIActor_Description());
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getIActor_Annotations());
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getIActor_ComponentFiles());
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getIActor_Properties());
+		}
+		return childrenFeatures;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EStructuralFeature getChildFeature(Object object, Object child) {
+		// Check the type of the specified child object and return the proper feature to use for
+		// adding (see {@link AddCommand}) it as a child.
+
+		return super.getChildFeature(object, child);
+	}
+
+	/**
+	 * This returns IActor.gif.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object getImage(Object object) {
+		return overlayImage(object, getResourceLocator().getImage("full/obj16/IActor")); //$NON-NLS-1$
+	}
+
+	/**
+	 * This returns the label text for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String getText(Object object) {
+		String label = ((IActor)object).getName();
+		return label == null || label.length() == 0 ?
+			getString("_UI_IActor_type") : //$NON-NLS-1$
+			getString("_UI_IActor_type") + " " + label; //$NON-NLS-1$ //$NON-NLS-2$
+	}
+	
+
+	/**
+	 * This handles model notifications by calling {@link #updateChildren} to update any cached
+	 * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void notifyChanged(Notification notification) {
+		updateChildren(notification);
+
+		switch (notification.getFeatureID(IActor.class)) {
+			case UMLRpyPackage.IACTOR__UML_DEPENDENCY_ID:
+			case UMLRpyPackage.IACTOR__OBJECT_CREATION:
+			case UMLRpyPackage.IACTOR__MULTIPLICITY:
+			case UMLRpyPackage.IACTOR__ID:
+			case UMLRpyPackage.IACTOR__MY_STATE:
+			case UMLRpyPackage.IACTOR__NAME:
+			case UMLRpyPackage.IACTOR__LAST_ID:
+			case UMLRpyPackage.IACTOR__WEAK_CG_TIME:
+			case UMLRpyPackage.IACTOR__STRONG_CG_TIME:
+			case UMLRpyPackage.IACTOR__CLASS_MODIFIER:
+			case UMLRpyPackage.IACTOR__MODIFIED_TIME_WEAK:
+			case UMLRpyPackage.IACTOR__REQUIREMEN_TRACABILITY_HANDLE:
+				fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), false, true));
+				return;
+			case UMLRpyPackage.IACTOR__DEPENDENCIES:
+			case UMLRpyPackage.IACTOR__OPERATIONS:
+			case UMLRpyPackage.IACTOR__STATE_CHARTS:
+			case UMLRpyPackage.IACTOR__ASSOCIATIONS:
+			case UMLRpyPackage.IACTOR__HYPER_LINKS:
+			case UMLRpyPackage.IACTOR__PORTS:
+			case UMLRpyPackage.IACTOR__INHERITANCES:
+			case UMLRpyPackage.IACTOR__ATTRS:
+			case UMLRpyPackage.IACTOR__DESCRIPTION:
+			case UMLRpyPackage.IACTOR__ANNOTATIONS:
+			case UMLRpyPackage.IACTOR__COMPONENT_FILES:
+			case UMLRpyPackage.IACTOR__PROPERTIES:
+				fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), true, false));
+				return;
+		}
+		super.notifyChanged(notification);
+	}
+
+	/**
+	 * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children
+	 * that can be created under this object.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) {
+		super.collectNewChildDescriptors(newChildDescriptors, object);
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIActor_Dependencies(),
+				 UMLRpyFactory.eINSTANCE.createIDependency()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIActor_Dependencies(),
+				 UMLRpyFactory.eINSTANCE.createIHyperLink()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIActor_Operations(),
+				 UMLRpyFactory.eINSTANCE.createIConstructor()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIActor_Operations(),
+				 UMLRpyFactory.eINSTANCE.createIDestructor()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIActor_Operations(),
+				 UMLRpyFactory.eINSTANCE.createIPrimitiveOperation()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIActor_Operations(),
+				 UMLRpyFactory.eINSTANCE.createIReception()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIActor_Operations(),
+				 UMLRpyFactory.eINSTANCE.createITriggered()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIActor_StateCharts(),
+				 UMLRpyFactory.eINSTANCE.createIStateChart()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIActor_Associations(),
+				 UMLRpyFactory.eINSTANCE.createIAssociationEnd()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIActor_HyperLinks(),
+				 UMLRpyFactory.eINSTANCE.createIMHyperLink()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIActor_Ports(),
+				 UMLRpyFactory.eINSTANCE.createIPort()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIActor_Inheritances(),
+				 UMLRpyFactory.eINSTANCE.createIGeneralization()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIActor_Attrs(),
+				 UMLRpyFactory.eINSTANCE.createIAttribute()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIActor_Description(),
+				 UMLRpyFactory.eINSTANCE.createIDescription()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIActor_Annotations(),
+				 UMLRpyFactory.eINSTANCE.createIRequirement()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIActor_ComponentFiles(),
+				 UMLRpyFactory.eINSTANCE.createIFile()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIActor_Properties(),
+				 UMLRpyFactory.eINSTANCE.createIPropertyContainer()));
+	}
+
+}
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/IAnchorItemProvider.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/IAnchorItemProvider.java
new file mode 100755
index 0000000..0778603
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/IAnchorItemProvider.java
@@ -0,0 +1,237 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.provider;
+
+
+import java.util.Collection;
+import java.util.List;
+
+import org.eclipse.emf.common.notify.AdapterFactory;
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.edit.provider.ComposeableAdapterFactory;
+import org.eclipse.emf.edit.provider.IItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.ItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.ViewerNotification;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IAnchor;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IAnchor} object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class IAnchorItemProvider extends M_pModelObjectTypeItemProvider {
+	/**
+	 * This constructs an instance from a factory and a notifier.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IAnchorItemProvider(AdapterFactory adapterFactory) {
+		super(adapterFactory);
+	}
+
+	/**
+	 * This returns the property descriptors for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) {
+		if (itemPropertyDescriptors == null) {
+			super.getPropertyDescriptors(object);
+
+			addIdPropertyDescriptor(object);
+			addMyStatePropertyDescriptor(object);
+			addNamePropertyDescriptor(object);
+			addDependsOnPropertyDescriptor(object);
+			addModifiedTimeWeakPropertyDescriptor(object);
+		}
+		return itemPropertyDescriptors;
+	}
+
+	/**
+	 * This adds a property descriptor for the Id feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addIdPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IAnchor_id_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IAnchor_id_feature", "_UI_IAnchor_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIAnchor_Id(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the My State feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addMyStatePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IAnchor_myState_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IAnchor_myState_feature", "_UI_IAnchor_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIAnchor_MyState(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Name feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addNamePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IAnchor_name_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IAnchor_name_feature", "_UI_IAnchor_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIAnchor_Name(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Depends On feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addDependsOnPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IAnchor_dependsOn_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IAnchor_dependsOn_feature", "_UI_IAnchor_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIAnchor_DependsOn(),
+				 true,
+				 false,
+				 true,
+				 null,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Modified Time Weak feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addModifiedTimeWeakPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IAnchor_modifiedTimeWeak_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IAnchor_modifiedTimeWeak_feature", "_UI_IAnchor_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIAnchor_ModifiedTimeWeak(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This returns IAnchor.gif.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object getImage(Object object) {
+		return overlayImage(object, getResourceLocator().getImage("full/obj16/IAnchor")); //$NON-NLS-1$
+	}
+
+	/**
+	 * This returns the label text for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String getText(Object object) {
+		String label = ((IAnchor)object).getName();
+		return label == null || label.length() == 0 ?
+			getString("_UI_IAnchor_type") : //$NON-NLS-1$
+			getString("_UI_IAnchor_type") + " " + label; //$NON-NLS-1$ //$NON-NLS-2$
+	}
+	
+
+	/**
+	 * This handles model notifications by calling {@link #updateChildren} to update any cached
+	 * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void notifyChanged(Notification notification) {
+		updateChildren(notification);
+
+		switch (notification.getFeatureID(IAnchor.class)) {
+			case UMLRpyPackage.IANCHOR__ID:
+			case UMLRpyPackage.IANCHOR__MY_STATE:
+			case UMLRpyPackage.IANCHOR__NAME:
+			case UMLRpyPackage.IANCHOR__MODIFIED_TIME_WEAK:
+				fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), false, true));
+				return;
+		}
+		super.notifyChanged(notification);
+	}
+
+	/**
+	 * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children
+	 * that can be created under this object.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) {
+		super.collectNewChildDescriptors(newChildDescriptors, object);
+	}
+
+}
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/IAnnotationItemProvider.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/IAnnotationItemProvider.java
new file mode 100755
index 0000000..1ce284c
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/IAnnotationItemProvider.java
@@ -0,0 +1,262 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.provider;
+
+
+import java.util.Collection;
+import java.util.List;
+
+import org.eclipse.emf.common.notify.AdapterFactory;
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.ecore.EStructuralFeature;
+
+import org.eclipse.emf.edit.provider.ComposeableAdapterFactory;
+import org.eclipse.emf.edit.provider.IItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.ItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.ViewerNotification;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IAnnotation;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyFactory;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IAnnotation} object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class IAnnotationItemProvider extends IUnitItemProvider {
+	/**
+	 * This constructs an instance from a factory and a notifier.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IAnnotationItemProvider(AdapterFactory adapterFactory) {
+		super(adapterFactory);
+	}
+
+	/**
+	 * This returns the property descriptors for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) {
+		if (itemPropertyDescriptors == null) {
+			super.getPropertyDescriptors(object);
+
+			addRequiremenTracabilityHandlePropertyDescriptor(object);
+			addUmlDependencyIDPropertyDescriptor(object);
+			addObjectCreationPropertyDescriptor(object);
+			addBodyPropertyDescriptor(object);
+		}
+		return itemPropertyDescriptors;
+	}
+
+	/**
+	 * This adds a property descriptor for the Requiremen Tracability Handle feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addRequiremenTracabilityHandlePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IAnnotation_requiremenTracabilityHandle_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IAnnotation_requiremenTracabilityHandle_feature", "_UI_IAnnotation_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIAnnotation_RequiremenTracabilityHandle(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Uml Dependency ID feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addUmlDependencyIDPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IAnnotation_umlDependencyID_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IAnnotation_umlDependencyID_feature", "_UI_IAnnotation_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIAnnotation_UmlDependencyID(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Object Creation feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addObjectCreationPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IAnnotation_objectCreation_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IAnnotation_objectCreation_feature", "_UI_IAnnotation_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIAnnotation_ObjectCreation(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Body feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addBodyPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IAnnotation_body_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IAnnotation_body_feature", "_UI_IAnnotation_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIAnnotation_Body(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This specifies how to implement {@link #getChildren} and is used to deduce an appropriate feature for an
+	 * {@link org.eclipse.emf.edit.command.AddCommand}, {@link org.eclipse.emf.edit.command.RemoveCommand} or
+	 * {@link org.eclipse.emf.edit.command.MoveCommand} in {@link #createCommand}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Collection<? extends EStructuralFeature> getChildrenFeatures(Object object) {
+		if (childrenFeatures == null) {
+			super.getChildrenFeatures(object);
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getIAnnotation_Description());
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getIAnnotation_Tags());
+		}
+		return childrenFeatures;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EStructuralFeature getChildFeature(Object object, Object child) {
+		// Check the type of the specified child object and return the proper feature to use for
+		// adding (see {@link AddCommand}) it as a child.
+
+		return super.getChildFeature(object, child);
+	}
+
+	/**
+	 * This returns IAnnotation.gif.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object getImage(Object object) {
+		return overlayImage(object, getResourceLocator().getImage("full/obj16/IAnnotation")); //$NON-NLS-1$
+	}
+
+	/**
+	 * This returns the label text for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String getText(Object object) {
+		String label = ((IAnnotation)object).getDisplayName();
+		return label == null || label.length() == 0 ?
+			getString("_UI_IAnnotation_type") : //$NON-NLS-1$
+			getString("_UI_IAnnotation_type") + " " + label; //$NON-NLS-1$ //$NON-NLS-2$
+	}
+	
+
+	/**
+	 * This handles model notifications by calling {@link #updateChildren} to update any cached
+	 * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void notifyChanged(Notification notification) {
+		updateChildren(notification);
+
+		switch (notification.getFeatureID(IAnnotation.class)) {
+			case UMLRpyPackage.IANNOTATION__REQUIREMEN_TRACABILITY_HANDLE:
+			case UMLRpyPackage.IANNOTATION__UML_DEPENDENCY_ID:
+			case UMLRpyPackage.IANNOTATION__OBJECT_CREATION:
+			case UMLRpyPackage.IANNOTATION__BODY:
+				fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), false, true));
+				return;
+			case UMLRpyPackage.IANNOTATION__DESCRIPTION:
+			case UMLRpyPackage.IANNOTATION__TAGS:
+				fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), true, false));
+				return;
+		}
+		super.notifyChanged(notification);
+	}
+
+	/**
+	 * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children
+	 * that can be created under this object.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) {
+		super.collectNewChildDescriptors(newChildDescriptors, object);
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIAnnotation_Description(),
+				 UMLRpyFactory.eINSTANCE.createIDescription()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIAnnotation_Tags(),
+				 UMLRpyFactory.eINSTANCE.createITag()));
+	}
+
+}
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/IArgumentItemProvider.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/IArgumentItemProvider.java
new file mode 100755
index 0000000..0e3757d
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/IArgumentItemProvider.java
@@ -0,0 +1,412 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.provider;
+
+
+import java.util.Collection;
+import java.util.List;
+
+import org.eclipse.emf.common.notify.AdapterFactory;
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.ecore.EStructuralFeature;
+
+import org.eclipse.emf.edit.provider.ComposeableAdapterFactory;
+import org.eclipse.emf.edit.provider.IItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.ItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.ViewerNotification;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IArgument;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyFactory;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IArgument} object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class IArgumentItemProvider extends IVariableItemProvider {
+	/**
+	 * This constructs an instance from a factory and a notifier.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IArgumentItemProvider(AdapterFactory adapterFactory) {
+		super(adapterFactory);
+	}
+
+	/**
+	 * This returns the property descriptors for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) {
+		if (itemPropertyDescriptors == null) {
+			super.getPropertyDescriptors(object);
+
+			addIdPropertyDescriptor(object);
+			addMyStatePropertyDescriptor(object);
+			addNamePropertyDescriptor(object);
+			addModifiedTimeWeakPropertyDescriptor(object);
+			addTypeOfPropertyDescriptor(object);
+			addArgumentDirectionPropertyDescriptor(object);
+			addDefaultValuePropertyDescriptor(object);
+			addCodeUpdateCGTimePropertyDescriptor(object);
+			addObjectCreationPropertyDescriptor(object);
+			addUmlDependencyIDPropertyDescriptor(object);
+		}
+		return itemPropertyDescriptors;
+	}
+
+	/**
+	 * This adds a property descriptor for the Id feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addIdPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IArgument_id_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IArgument_id_feature", "_UI_IArgument_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIArgument_Id(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the My State feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addMyStatePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IArgument_myState_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IArgument_myState_feature", "_UI_IArgument_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIArgument_MyState(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Name feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addNamePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IArgument_name_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IArgument_name_feature", "_UI_IArgument_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIArgument_Name(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Modified Time Weak feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addModifiedTimeWeakPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IArgument_modifiedTimeWeak_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IArgument_modifiedTimeWeak_feature", "_UI_IArgument_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIArgument_ModifiedTimeWeak(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Type Of feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addTypeOfPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IArgument_typeOf_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IArgument_typeOf_feature", "_UI_IArgument_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIArgument_TypeOf(),
+				 true,
+				 false,
+				 true,
+				 null,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Argument Direction feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addArgumentDirectionPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IArgument_argumentDirection_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IArgument_argumentDirection_feature", "_UI_IArgument_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIArgument_ArgumentDirection(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Default Value feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addDefaultValuePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IArgument_defaultValue_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IArgument_defaultValue_feature", "_UI_IArgument_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIArgument_DefaultValue(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Code Update CG Time feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addCodeUpdateCGTimePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IArgument_codeUpdateCGTime_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IArgument_codeUpdateCGTime_feature", "_UI_IArgument_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIArgument_CodeUpdateCGTime(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Object Creation feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addObjectCreationPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IArgument_objectCreation_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IArgument_objectCreation_feature", "_UI_IArgument_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIArgument_ObjectCreation(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Uml Dependency ID feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addUmlDependencyIDPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IArgument_umlDependencyID_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IArgument_umlDependencyID_feature", "_UI_IArgument_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIArgument_UmlDependencyID(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This specifies how to implement {@link #getChildren} and is used to deduce an appropriate feature for an
+	 * {@link org.eclipse.emf.edit.command.AddCommand}, {@link org.eclipse.emf.edit.command.RemoveCommand} or
+	 * {@link org.eclipse.emf.edit.command.MoveCommand} in {@link #createCommand}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Collection<? extends EStructuralFeature> getChildrenFeatures(Object object) {
+		if (childrenFeatures == null) {
+			super.getChildrenFeatures(object);
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getIArgument_Properties());
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getIArgument_ValueSpecifications());
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getIArgument_Description());
+		}
+		return childrenFeatures;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EStructuralFeature getChildFeature(Object object, Object child) {
+		// Check the type of the specified child object and return the proper feature to use for
+		// adding (see {@link AddCommand}) it as a child.
+
+		return super.getChildFeature(object, child);
+	}
+
+	/**
+	 * This returns IArgument.gif.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object getImage(Object object) {
+		return overlayImage(object, getResourceLocator().getImage("full/obj16/IArgument")); //$NON-NLS-1$
+	}
+
+	/**
+	 * This returns the label text for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String getText(Object object) {
+		String label = ((IArgument)object).getName();
+		return label == null || label.length() == 0 ?
+			getString("_UI_IArgument_type") : //$NON-NLS-1$
+			getString("_UI_IArgument_type") + " " + label; //$NON-NLS-1$ //$NON-NLS-2$
+	}
+	
+
+	/**
+	 * This handles model notifications by calling {@link #updateChildren} to update any cached
+	 * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void notifyChanged(Notification notification) {
+		updateChildren(notification);
+
+		switch (notification.getFeatureID(IArgument.class)) {
+			case UMLRpyPackage.IARGUMENT__ID:
+			case UMLRpyPackage.IARGUMENT__MY_STATE:
+			case UMLRpyPackage.IARGUMENT__NAME:
+			case UMLRpyPackage.IARGUMENT__MODIFIED_TIME_WEAK:
+			case UMLRpyPackage.IARGUMENT__ARGUMENT_DIRECTION:
+			case UMLRpyPackage.IARGUMENT__DEFAULT_VALUE:
+			case UMLRpyPackage.IARGUMENT__CODE_UPDATE_CG_TIME:
+			case UMLRpyPackage.IARGUMENT__OBJECT_CREATION:
+			case UMLRpyPackage.IARGUMENT__UML_DEPENDENCY_ID:
+				fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), false, true));
+				return;
+			case UMLRpyPackage.IARGUMENT__PROPERTIES:
+			case UMLRpyPackage.IARGUMENT__VALUE_SPECIFICATIONS:
+			case UMLRpyPackage.IARGUMENT__DESCRIPTION:
+				fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), true, false));
+				return;
+		}
+		super.notifyChanged(notification);
+	}
+
+	/**
+	 * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children
+	 * that can be created under this object.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) {
+		super.collectNewChildDescriptors(newChildDescriptors, object);
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIArgument_Properties(),
+				 UMLRpyFactory.eINSTANCE.createIPropertyContainer()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIArgument_ValueSpecifications(),
+				 UMLRpyFactory.eINSTANCE.createILiteralSpecification()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIArgument_Description(),
+				 UMLRpyFactory.eINSTANCE.createIDescription()));
+	}
+
+}
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/IAssociationClassItemProvider.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/IAssociationClassItemProvider.java
new file mode 100755
index 0000000..573a3d3
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/IAssociationClassItemProvider.java
@@ -0,0 +1,227 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.provider;
+
+
+import java.util.Collection;
+import java.util.List;
+
+import org.eclipse.emf.common.notify.AdapterFactory;
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.edit.provider.ComposeableAdapterFactory;
+import org.eclipse.emf.edit.provider.IItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.ItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.ViewerNotification;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IAssociationClass;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IAssociationClass} object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class IAssociationClassItemProvider extends IClassItemProvider {
+	/**
+	 * This constructs an instance from a factory and a notifier.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IAssociationClassItemProvider(AdapterFactory adapterFactory) {
+		super(adapterFactory);
+	}
+
+	/**
+	 * This returns the property descriptors for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) {
+		if (itemPropertyDescriptors == null) {
+			super.getPropertyDescriptors(object);
+
+			addIsClassPropertyDescriptor(object);
+			addM_end1PropertyDescriptor(object);
+			addM_end2PropertyDescriptor(object);
+		}
+		return itemPropertyDescriptors;
+	}
+
+	/**
+	 * This adds a property descriptor for the Is Class feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addIsClassPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IAssociationClass_isClass_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IAssociationClass_isClass_feature", "_UI_IAssociationClass_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIAssociationClass_IsClass(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Mend1 feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_end1PropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IAssociationClass_m_end1_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IAssociationClass_m_end1_feature", "_UI_IAssociationClass_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIAssociationClass_M_end1(),
+				 true,
+				 false,
+				 true,
+				 null,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Mend2 feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_end2PropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IAssociationClass_m_end2_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IAssociationClass_m_end2_feature", "_UI_IAssociationClass_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIAssociationClass_M_end2(),
+				 true,
+				 false,
+				 true,
+				 null,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This returns IAssociationClass.gif.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object getImage(Object object) {
+		return overlayImage(object, getResourceLocator().getImage("full/obj16/IAssociationClass")); //$NON-NLS-1$
+	}
+
+	/**
+	 * This returns the label text for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String getText(Object object) {
+		String label = ((IAssociationClass)object).getName();
+		return label == null || label.length() == 0 ?
+			getString("_UI_IAssociationClass_type") : //$NON-NLS-1$
+			getString("_UI_IAssociationClass_type") + " " + label; //$NON-NLS-1$ //$NON-NLS-2$
+	}
+	
+
+	/**
+	 * This handles model notifications by calling {@link #updateChildren} to update any cached
+	 * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void notifyChanged(Notification notification) {
+		updateChildren(notification);
+
+		switch (notification.getFeatureID(IAssociationClass.class)) {
+			case UMLRpyPackage.IASSOCIATION_CLASS__IS_CLASS:
+				fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), false, true));
+				return;
+		}
+		super.notifyChanged(notification);
+	}
+
+	/**
+	 * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children
+	 * that can be created under this object.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) {
+		super.collectNewChildDescriptors(newChildDescriptors, object);
+	}
+
+	/**
+	 * This returns the label text for {@link org.eclipse.emf.edit.command.CreateChildCommand}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String getCreateChildText(Object owner, Object feature, Object child, Collection<?> selection) {
+		Object childFeature = feature;
+		Object childObject = child;
+
+		boolean qualify =
+			childFeature == UMLRpyPackage.eINSTANCE.getIClass_Stereotypes() ||
+			childFeature == UMLRpyPackage.eINSTANCE.getIClass_Inheritances() ||
+			childFeature == UMLRpyPackage.eINSTANCE.getIClass_Attrs() ||
+			childFeature == UMLRpyPackage.eINSTANCE.getIClass_Annotations() ||
+			childFeature == UMLRpyPackage.eINSTANCE.getIClass_Declaratives() ||
+			childFeature == UMLRpyPackage.eINSTANCE.getIClass_EventHandles() ||
+			childFeature == UMLRpyPackage.eINSTANCE.getIClass_ComponentFiles() ||
+			childFeature == UMLRpyPackage.eINSTANCE.getIClass_Ports() ||
+			childFeature == UMLRpyPackage.eINSTANCE.getIClass_Links() ||
+			childFeature == UMLRpyPackage.eINSTANCE.getIClass_Associations() ||
+			childFeature == UMLRpyPackage.eINSTANCE.getIClass_StateCharts() ||
+			childFeature == UMLRpyPackage.eINSTANCE.getIClass_Tags() ||
+			childFeature == UMLRpyPackage.eINSTANCE.getIClass_TemplateParameters() ||
+			childFeature == UMLRpyPackage.eINSTANCE.getIClass_Operations() ||
+			childFeature == UMLRpyPackage.eINSTANCE.getIClass_PrimitiveOperations() ||
+			childFeature == UMLRpyPackage.eINSTANCE.getIClass_Dependencies() ||
+			childFeature == UMLRpyPackage.eINSTANCE.getIClass_HyperLinks() ||
+			childFeature == UMLRpyPackage.eINSTANCE.getIClass_ObjectLinks();
+
+		if (qualify) {
+			return getString
+				("_UI_CreateChild_text2", //$NON-NLS-1$
+				 new Object[] { getTypeText(childObject), getFeatureText(childFeature), getTypeText(owner) });
+		}
+		return super.getCreateChildText(owner, feature, child, selection);
+	}
+
+}
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/IAssociationEndHandleItemProvider.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/IAssociationEndHandleItemProvider.java
new file mode 100755
index 0000000..6023be8
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/IAssociationEndHandleItemProvider.java
@@ -0,0 +1,288 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.provider;
+
+
+import java.util.Collection;
+import java.util.List;
+
+import org.eclipse.emf.common.notify.AdapterFactory;
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.common.util.ResourceLocator;
+
+import org.eclipse.emf.edit.provider.ComposeableAdapterFactory;
+import org.eclipse.emf.edit.provider.IEditingDomainItemProvider;
+import org.eclipse.emf.edit.provider.IItemLabelProvider;
+import org.eclipse.emf.edit.provider.IItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.IItemPropertySource;
+import org.eclipse.emf.edit.provider.IStructuredItemContentProvider;
+import org.eclipse.emf.edit.provider.ITreeItemContentProvider;
+import org.eclipse.emf.edit.provider.ItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.ItemProviderAdapter;
+import org.eclipse.emf.edit.provider.ViewerNotification;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IAssociationEndHandle;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IAssociationEndHandle} object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class IAssociationEndHandleItemProvider 
+	extends ItemProviderAdapter
+	implements
+		IEditingDomainItemProvider,
+		IStructuredItemContentProvider,
+		ITreeItemContentProvider,
+		IItemLabelProvider,
+		IItemPropertySource {
+	/**
+	 * This constructs an instance from a factory and a notifier.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IAssociationEndHandleItemProvider(AdapterFactory adapterFactory) {
+		super(adapterFactory);
+	}
+
+	/**
+	 * This returns the property descriptors for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) {
+		if (itemPropertyDescriptors == null) {
+			super.getPropertyDescriptors(object);
+
+			addM2ClassPropertyDescriptor(object);
+			addFilenamePropertyDescriptor(object);
+			addSubsystemPropertyDescriptor(object);
+			addClassPropertyDescriptor(object);
+			addNamePropertyDescriptor(object);
+			addIdPropertyDescriptor(object);
+		}
+		return itemPropertyDescriptors;
+	}
+
+	/**
+	 * This adds a property descriptor for the M2 Class feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM2ClassPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IAssociationEndHandle_m2Class_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IAssociationEndHandle_m2Class_feature", "_UI_IAssociationEndHandle_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIAssociationEndHandle_M2Class(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Filename feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addFilenamePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IAssociationEndHandle_filename_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IAssociationEndHandle_filename_feature", "_UI_IAssociationEndHandle_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIAssociationEndHandle_Filename(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Subsystem feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addSubsystemPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IAssociationEndHandle_subsystem_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IAssociationEndHandle_subsystem_feature", "_UI_IAssociationEndHandle_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIAssociationEndHandle_Subsystem(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Class feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addClassPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IAssociationEndHandle_class_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IAssociationEndHandle_class_feature", "_UI_IAssociationEndHandle_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIAssociationEndHandle_Class(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Name feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addNamePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IAssociationEndHandle_name_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IAssociationEndHandle_name_feature", "_UI_IAssociationEndHandle_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIAssociationEndHandle_Name(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Id feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addIdPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IAssociationEndHandle_id_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IAssociationEndHandle_id_feature", "_UI_IAssociationEndHandle_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIAssociationEndHandle_Id(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This returns IAssociationEndHandle.gif.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object getImage(Object object) {
+		return overlayImage(object, getResourceLocator().getImage("full/obj16/IAssociationEndHandle")); //$NON-NLS-1$
+	}
+
+	/**
+	 * This returns the label text for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String getText(Object object) {
+		String label = ((IAssociationEndHandle)object).getName();
+		return label == null || label.length() == 0 ?
+			getString("_UI_IAssociationEndHandle_type") : //$NON-NLS-1$
+			getString("_UI_IAssociationEndHandle_type") + " " + label; //$NON-NLS-1$ //$NON-NLS-2$
+	}
+	
+
+	/**
+	 * This handles model notifications by calling {@link #updateChildren} to update any cached
+	 * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void notifyChanged(Notification notification) {
+		updateChildren(notification);
+
+		switch (notification.getFeatureID(IAssociationEndHandle.class)) {
+			case UMLRpyPackage.IASSOCIATION_END_HANDLE__M2_CLASS:
+			case UMLRpyPackage.IASSOCIATION_END_HANDLE__FILENAME:
+			case UMLRpyPackage.IASSOCIATION_END_HANDLE__SUBSYSTEM:
+			case UMLRpyPackage.IASSOCIATION_END_HANDLE__CLASS:
+			case UMLRpyPackage.IASSOCIATION_END_HANDLE__NAME:
+			case UMLRpyPackage.IASSOCIATION_END_HANDLE__ID:
+				fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), false, true));
+				return;
+		}
+		super.notifyChanged(notification);
+	}
+
+	/**
+	 * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children
+	 * that can be created under this object.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) {
+		super.collectNewChildDescriptors(newChildDescriptors, object);
+	}
+
+	/**
+	 * Return the resource locator for this item provider's resources.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public ResourceLocator getResourceLocator() {
+		return rpymetamodelEditPlugin.INSTANCE;
+	}
+
+}
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/IAssociationEndItemProvider.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/IAssociationEndItemProvider.java
new file mode 100755
index 0000000..4f7149f
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/IAssociationEndItemProvider.java
@@ -0,0 +1,609 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.provider;
+
+
+import java.util.Collection;
+import java.util.List;
+
+import org.eclipse.emf.common.notify.AdapterFactory;
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.ecore.EStructuralFeature;
+import org.eclipse.emf.ecore.EcoreFactory;
+import org.eclipse.emf.ecore.EcorePackage;
+import org.eclipse.emf.edit.provider.ComposeableAdapterFactory;
+import org.eclipse.emf.edit.provider.IItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.ItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.ViewerNotification;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IAssociationEnd;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyFactory;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IAssociationEnd} object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class IAssociationEndItemProvider extends AssociationsTypeItemProvider {
+	/**
+	 * This constructs an instance from a factory and a notifier.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IAssociationEndItemProvider(AdapterFactory adapterFactory) {
+		super(adapterFactory);
+	}
+
+	/**
+	 * This returns the property descriptors for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) {
+		if (itemPropertyDescriptors == null) {
+			super.getPropertyDescriptors(object);
+
+			addUmlDependencyIDPropertyDescriptor(object);
+			addObjectCreationPropertyDescriptor(object);
+			addRequiremenTracabilityHandlePropertyDescriptor(object);
+			addDisplayNamePropertyDescriptor(object);
+			addIdPropertyDescriptor(object);
+			addMyStatePropertyDescriptor(object);
+			addNamePropertyDescriptor(object);
+			addMultiplicityPropertyDescriptor(object);
+			addOtherClassPropertyDescriptor(object);
+			addLinkNamePropertyDescriptor(object);
+			addLinkTypePropertyDescriptor(object);
+			addNavigabilityPropertyDescriptor(object);
+			addInversePropertyDescriptor(object);
+			addModifiedTimeWeakPropertyDescriptor(object);
+			addCodeUpdateCGTimePropertyDescriptor(object);
+			addQualifierTypePropertyDescriptor(object);
+			addM_associationClassPropertyDescriptor(object);
+		}
+		return itemPropertyDescriptors;
+	}
+
+	/**
+	 * This adds a property descriptor for the Uml Dependency ID feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addUmlDependencyIDPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_M_subjectType_umlDependencyID_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_M_subjectType_umlDependencyID_feature", "_UI_M_subjectType_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getM_subjectType_UmlDependencyID(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Object Creation feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addObjectCreationPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_M_subjectType_objectCreation_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_M_subjectType_objectCreation_feature", "_UI_M_subjectType_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getM_subjectType_ObjectCreation(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Requiremen Tracability Handle feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addRequiremenTracabilityHandlePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_M_hTargetType_requiremenTracabilityHandle_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_M_hTargetType_requiremenTracabilityHandle_feature", "_UI_M_hTargetType_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getM_hTargetType_RequiremenTracabilityHandle(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Display Name feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addDisplayNamePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IModelElement_displayName_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IModelElement_displayName_feature", "_UI_IModelElement_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIModelElement_DisplayName(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Id feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addIdPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IAssociationEnd_id_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IAssociationEnd_id_feature", "_UI_IAssociationEnd_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIAssociationEnd_Id(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the My State feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addMyStatePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IAssociationEnd_myState_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IAssociationEnd_myState_feature", "_UI_IAssociationEnd_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIAssociationEnd_MyState(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Name feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addNamePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IAssociationEnd_name_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IAssociationEnd_name_feature", "_UI_IAssociationEnd_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIAssociationEnd_Name(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Multiplicity feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addMultiplicityPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IAssociationEnd_multiplicity_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IAssociationEnd_multiplicity_feature", "_UI_IAssociationEnd_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIAssociationEnd_Multiplicity(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Other Class feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addOtherClassPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IAssociationEnd_otherClass_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IAssociationEnd_otherClass_feature", "_UI_IAssociationEnd_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIAssociationEnd_OtherClass(),
+				 true,
+				 false,
+				 true,
+				 null,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Link Name feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addLinkNamePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IAssociationEnd_linkName_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IAssociationEnd_linkName_feature", "_UI_IAssociationEnd_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIAssociationEnd_LinkName(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Link Type feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addLinkTypePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IAssociationEnd_linkType_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IAssociationEnd_linkType_feature", "_UI_IAssociationEnd_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIAssociationEnd_LinkType(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Navigability feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addNavigabilityPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IAssociationEnd_navigability_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IAssociationEnd_navigability_feature", "_UI_IAssociationEnd_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIAssociationEnd_Navigability(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Inverse feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addInversePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IAssociationEnd_inverse_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IAssociationEnd_inverse_feature", "_UI_IAssociationEnd_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIAssociationEnd_Inverse(),
+				 true,
+				 false,
+				 true,
+				 null,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Modified Time Weak feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addModifiedTimeWeakPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IAssociationEnd_modifiedTimeWeak_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IAssociationEnd_modifiedTimeWeak_feature", "_UI_IAssociationEnd_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIAssociationEnd_ModifiedTimeWeak(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Code Update CG Time feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addCodeUpdateCGTimePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IAssociationEnd_codeUpdateCGTime_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IAssociationEnd_codeUpdateCGTime_feature", "_UI_IAssociationEnd_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIAssociationEnd_CodeUpdateCGTime(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Qualifier Type feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addQualifierTypePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IAssociationEnd_qualifierType_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IAssociationEnd_qualifierType_feature", "_UI_IAssociationEnd_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIAssociationEnd_QualifierType(),
+				 true,
+				 false,
+				 true,
+				 null,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Massociation Class feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_associationClassPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IAssociationEnd_m_associationClass_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IAssociationEnd_m_associationClass_feature", "_UI_IAssociationEnd_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIAssociationEnd_M_associationClass(),
+				 true,
+				 false,
+				 true,
+				 null,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This specifies how to implement {@link #getChildren} and is used to deduce an appropriate feature for an
+	 * {@link org.eclipse.emf.edit.command.AddCommand}, {@link org.eclipse.emf.edit.command.RemoveCommand} or
+	 * {@link org.eclipse.emf.edit.command.MoveCommand} in {@link #createCommand}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Collection<? extends EStructuralFeature> getChildrenFeatures(Object object) {
+		if (childrenFeatures == null) {
+			super.getChildrenFeatures(object);
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getM_hTargetType_Description());
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getM_hTargetType_Properties());
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getToLinkType_ImplicitClass());
+			childrenFeatures.add(EcorePackage.Literals.EMODEL_ELEMENT__EANNOTATIONS);
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getIAssociationEnd_Qualifiers());
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getIAssociationEnd_Stereotypes());
+		}
+		return childrenFeatures;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EStructuralFeature getChildFeature(Object object, Object child) {
+		// Check the type of the specified child object and return the proper feature to use for
+		// adding (see {@link AddCommand}) it as a child.
+
+		return super.getChildFeature(object, child);
+	}
+
+	/**
+	 * This returns IAssociationEnd.gif.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object getImage(Object object) {
+		return overlayImage(object, getResourceLocator().getImage("full/obj16/IAssociationEnd")); //$NON-NLS-1$
+	}
+
+	/**
+	 * This returns the label text for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String getText(Object object) {
+		String label = ((IAssociationEnd)object).getName();
+		return label == null || label.length() == 0 ?
+			getString("_UI_IAssociationEnd_type") : //$NON-NLS-1$
+			getString("_UI_IAssociationEnd_type") + " " + label; //$NON-NLS-1$ //$NON-NLS-2$
+	}
+	
+
+	/**
+	 * This handles model notifications by calling {@link #updateChildren} to update any cached
+	 * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void notifyChanged(Notification notification) {
+		updateChildren(notification);
+
+		switch (notification.getFeatureID(IAssociationEnd.class)) {
+			case UMLRpyPackage.IASSOCIATION_END__UML_DEPENDENCY_ID:
+			case UMLRpyPackage.IASSOCIATION_END__OBJECT_CREATION:
+			case UMLRpyPackage.IASSOCIATION_END__REQUIREMEN_TRACABILITY_HANDLE:
+			case UMLRpyPackage.IASSOCIATION_END__DISPLAY_NAME:
+			case UMLRpyPackage.IASSOCIATION_END__ID:
+			case UMLRpyPackage.IASSOCIATION_END__MY_STATE:
+			case UMLRpyPackage.IASSOCIATION_END__NAME:
+			case UMLRpyPackage.IASSOCIATION_END__MULTIPLICITY:
+			case UMLRpyPackage.IASSOCIATION_END__LINK_NAME:
+			case UMLRpyPackage.IASSOCIATION_END__LINK_TYPE:
+			case UMLRpyPackage.IASSOCIATION_END__NAVIGABILITY:
+			case UMLRpyPackage.IASSOCIATION_END__MODIFIED_TIME_WEAK:
+			case UMLRpyPackage.IASSOCIATION_END__CODE_UPDATE_CG_TIME:
+				fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), false, true));
+				return;
+			case UMLRpyPackage.IASSOCIATION_END__DESCRIPTION:
+			case UMLRpyPackage.IASSOCIATION_END__PROPERTIES:
+			case UMLRpyPackage.IASSOCIATION_END__IMPLICIT_CLASS:
+			case UMLRpyPackage.IASSOCIATION_END__EANNOTATIONS:
+			case UMLRpyPackage.IASSOCIATION_END__QUALIFIERS:
+			case UMLRpyPackage.IASSOCIATION_END__STEREOTYPES:
+				fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), true, false));
+				return;
+		}
+		super.notifyChanged(notification);
+	}
+
+	/**
+	 * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children
+	 * that can be created under this object.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) {
+		super.collectNewChildDescriptors(newChildDescriptors, object);
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getM_hTargetType_Description(),
+				 UMLRpyFactory.eINSTANCE.createIDescription()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getM_hTargetType_Properties(),
+				 UMLRpyFactory.eINSTANCE.createIPropertyContainer()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getToLinkType_ImplicitClass(),
+				 UMLRpyFactory.eINSTANCE.createIClass()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getToLinkType_ImplicitClass(),
+				 UMLRpyFactory.eINSTANCE.createIAssociationClass()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getToLinkType_ImplicitClass(),
+				 UMLRpyFactory.eINSTANCE.createIStateChart()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(EcorePackage.Literals.EMODEL_ELEMENT__EANNOTATIONS,
+				 EcoreFactory.eINSTANCE.createEAnnotation()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIAssociationEnd_Qualifiers(),
+				 UMLRpyFactory.eINSTANCE.createIAttribute()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIAssociationEnd_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIStereotype()));
+	}
+
+}
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/IAssociationRoleItemProvider.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/IAssociationRoleItemProvider.java
new file mode 100755
index 0000000..f9cf2dd
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/IAssociationRoleItemProvider.java
@@ -0,0 +1,402 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.provider;
+
+
+import java.util.Collection;
+import java.util.List;
+
+import org.eclipse.emf.common.notify.AdapterFactory;
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.edit.provider.ComposeableAdapterFactory;
+import org.eclipse.emf.edit.provider.IItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.ItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.ViewerNotification;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IAssociationRole;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IAssociationRole} object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class IAssociationRoleItemProvider extends IModelElementItemProvider {
+	/**
+	 * This constructs an instance from a factory and a notifier.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IAssociationRoleItemProvider(AdapterFactory adapterFactory) {
+		super(adapterFactory);
+	}
+
+	/**
+	 * This returns the property descriptors for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) {
+		if (itemPropertyDescriptors == null) {
+			super.getPropertyDescriptors(object);
+
+			addIdPropertyDescriptor(object);
+			addMyStatePropertyDescriptor(object);
+			addM_fAssocType1PropertyDescriptor(object);
+			addM_fAssocType2PropertyDescriptor(object);
+			addM_pSourcePropertyDescriptor(object);
+			addM_pTargetPropertyDescriptor(object);
+			addM_pFormalAssoc1PropertyDescriptor(object);
+			addM_pFormalAssoc2PropertyDescriptor(object);
+			addNamePropertyDescriptor(object);
+			addModifiedTimeWeakPropertyDescriptor(object);
+			addObjectCreationPropertyDescriptor(object);
+			addUmlDependencyIDPropertyDescriptor(object);
+		}
+		return itemPropertyDescriptors;
+	}
+
+	/**
+	 * This adds a property descriptor for the Id feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addIdPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IAssociationRole_id_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IAssociationRole_id_feature", "_UI_IAssociationRole_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIAssociationRole_Id(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the My State feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addMyStatePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IAssociationRole_myState_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IAssociationRole_myState_feature", "_UI_IAssociationRole_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIAssociationRole_MyState(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the MfAssoc Type1 feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_fAssocType1PropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IAssociationRole_m_fAssocType1_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IAssociationRole_m_fAssocType1_feature", "_UI_IAssociationRole_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIAssociationRole_M_fAssocType1(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the MfAssoc Type2 feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_fAssocType2PropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IAssociationRole_m_fAssocType2_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IAssociationRole_m_fAssocType2_feature", "_UI_IAssociationRole_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIAssociationRole_M_fAssocType2(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the MpSource feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_pSourcePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IAssociationRole_m_pSource_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IAssociationRole_m_pSource_feature", "_UI_IAssociationRole_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIAssociationRole_M_pSource(),
+				 true,
+				 false,
+				 true,
+				 null,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the MpTarget feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_pTargetPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IAssociationRole_m_pTarget_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IAssociationRole_m_pTarget_feature", "_UI_IAssociationRole_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIAssociationRole_M_pTarget(),
+				 true,
+				 false,
+				 true,
+				 null,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the MpFormal Assoc1 feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_pFormalAssoc1PropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IAssociationRole_m_pFormalAssoc1_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IAssociationRole_m_pFormalAssoc1_feature", "_UI_IAssociationRole_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIAssociationRole_M_pFormalAssoc1(),
+				 true,
+				 false,
+				 true,
+				 null,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the MpFormal Assoc2 feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_pFormalAssoc2PropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IAssociationRole_m_pFormalAssoc2_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IAssociationRole_m_pFormalAssoc2_feature", "_UI_IAssociationRole_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIAssociationRole_M_pFormalAssoc2(),
+				 true,
+				 false,
+				 true,
+				 null,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Name feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addNamePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IAssociationRole_name_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IAssociationRole_name_feature", "_UI_IAssociationRole_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIAssociationRole_Name(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Modified Time Weak feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addModifiedTimeWeakPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IAssociationRole_modifiedTimeWeak_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IAssociationRole_modifiedTimeWeak_feature", "_UI_IAssociationRole_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIAssociationRole_ModifiedTimeWeak(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Object Creation feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addObjectCreationPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IAssociationRole_objectCreation_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IAssociationRole_objectCreation_feature", "_UI_IAssociationRole_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIAssociationRole_ObjectCreation(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Uml Dependency ID feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addUmlDependencyIDPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IAssociationRole_umlDependencyID_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IAssociationRole_umlDependencyID_feature", "_UI_IAssociationRole_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIAssociationRole_UmlDependencyID(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This returns IAssociationRole.gif.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object getImage(Object object) {
+		return overlayImage(object, getResourceLocator().getImage("full/obj16/IAssociationRole")); //$NON-NLS-1$
+	}
+
+	/**
+	 * This returns the label text for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String getText(Object object) {
+		String label = ((IAssociationRole)object).getName();
+		return label == null || label.length() == 0 ?
+			getString("_UI_IAssociationRole_type") : //$NON-NLS-1$
+			getString("_UI_IAssociationRole_type") + " " + label; //$NON-NLS-1$ //$NON-NLS-2$
+	}
+	
+
+	/**
+	 * This handles model notifications by calling {@link #updateChildren} to update any cached
+	 * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void notifyChanged(Notification notification) {
+		updateChildren(notification);
+
+		switch (notification.getFeatureID(IAssociationRole.class)) {
+			case UMLRpyPackage.IASSOCIATION_ROLE__ID:
+			case UMLRpyPackage.IASSOCIATION_ROLE__MY_STATE:
+			case UMLRpyPackage.IASSOCIATION_ROLE__MFASSOC_TYPE1:
+			case UMLRpyPackage.IASSOCIATION_ROLE__MFASSOC_TYPE2:
+			case UMLRpyPackage.IASSOCIATION_ROLE__NAME:
+			case UMLRpyPackage.IASSOCIATION_ROLE__MODIFIED_TIME_WEAK:
+			case UMLRpyPackage.IASSOCIATION_ROLE__OBJECT_CREATION:
+			case UMLRpyPackage.IASSOCIATION_ROLE__UML_DEPENDENCY_ID:
+				fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), false, true));
+				return;
+		}
+		super.notifyChanged(notification);
+	}
+
+	/**
+	 * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children
+	 * that can be created under this object.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) {
+		super.collectNewChildDescriptors(newChildDescriptors, object);
+	}
+
+}
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/IAttributeItemProvider.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/IAttributeItemProvider.java
new file mode 100755
index 0000000..e296b6f
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/IAttributeItemProvider.java
@@ -0,0 +1,882 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.provider;
+
+
+import java.util.Collection;
+import java.util.List;
+
+import org.eclipse.emf.common.notify.AdapterFactory;
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.ecore.EStructuralFeature;
+
+import org.eclipse.emf.edit.provider.ComposeableAdapterFactory;
+import org.eclipse.emf.edit.provider.IItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.ItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.ViewerNotification;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IAttribute;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyFactory;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IAttribute} object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class IAttributeItemProvider extends IVariableItemProvider {
+	/**
+	 * This constructs an instance from a factory and a notifier.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IAttributeItemProvider(AdapterFactory adapterFactory) {
+		super(adapterFactory);
+	}
+
+	/**
+	 * This returns the property descriptors for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) {
+		if (itemPropertyDescriptors == null) {
+			super.getPropertyDescriptors(object);
+
+			addUmlDependencyIDPropertyDescriptor(object);
+			addObjectCreationPropertyDescriptor(object);
+			addModifiedTimeWeakPropertyDescriptor(object);
+			addIdPropertyDescriptor(object);
+			addMyStatePropertyDescriptor(object);
+			addNamePropertyDescriptor(object);
+			addMultiplicityPropertyDescriptor(object);
+			addTypeOfPropertyDescriptor(object);
+			addProtectionPropertyDescriptor(object);
+			addStaticPropertyDescriptor(object);
+			addIsReferencePropertyDescriptor(object);
+			addIsConstantPropertyDescriptor(object);
+			addDefaultValuePropertyDescriptor(object);
+			addLastIDPropertyDescriptor(object);
+			addRequiremenTracabilityHandlePropertyDescriptor(object);
+			addCodeUpdateCGTimePropertyDescriptor(object);
+			addTheMainDiagramPropertyDescriptor(object);
+		}
+		return itemPropertyDescriptors;
+	}
+
+	/**
+	 * This adds a property descriptor for the Uml Dependency ID feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addUmlDependencyIDPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_M_subjectType_umlDependencyID_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_M_subjectType_umlDependencyID_feature", "_UI_M_subjectType_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getM_subjectType_UmlDependencyID(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Object Creation feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addObjectCreationPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_M_subjectType_objectCreation_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_M_subjectType_objectCreation_feature", "_UI_M_subjectType_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getM_subjectType_ObjectCreation(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Modified Time Weak feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addModifiedTimeWeakPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_ValueType_modifiedTimeWeak_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_ValueType_modifiedTimeWeak_feature", "_UI_ValueType_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getValueType_ModifiedTimeWeak(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Id feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addIdPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_ValueType_id_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_ValueType_id_feature", "_UI_ValueType_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getValueType_Id(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the My State feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addMyStatePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_ValueType_myState_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_ValueType_myState_feature", "_UI_ValueType_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getValueType_MyState(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Name feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addNamePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_ValueType_name_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_ValueType_name_feature", "_UI_ValueType_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getValueType_Name(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Multiplicity feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addMultiplicityPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_End2_Type_multiplicity_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_End2_Type_multiplicity_feature", "_UI_End2_Type_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getEnd2_Type_Multiplicity(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Type Of feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addTypeOfPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IAttribute_typeOf_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IAttribute_typeOf_feature", "_UI_IAttribute_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIAttribute_TypeOf(),
+				 true,
+				 false,
+				 true,
+				 null,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Protection feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addProtectionPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IAttribute_protection_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IAttribute_protection_feature", "_UI_IAttribute_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIAttribute_Protection(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Static feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addStaticPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IAttribute_static_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IAttribute_static_feature", "_UI_IAttribute_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIAttribute_Static(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Is Reference feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addIsReferencePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IAttribute_isReference_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IAttribute_isReference_feature", "_UI_IAttribute_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIAttribute_IsReference(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Is Constant feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addIsConstantPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IAttribute_isConstant_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IAttribute_isConstant_feature", "_UI_IAttribute_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIAttribute_IsConstant(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Default Value feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addDefaultValuePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IAttribute_defaultValue_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IAttribute_defaultValue_feature", "_UI_IAttribute_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIAttribute_DefaultValue(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Last ID feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addLastIDPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IAttribute_lastID_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IAttribute_lastID_feature", "_UI_IAttribute_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIAttribute_LastID(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Requiremen Tracability Handle feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addRequiremenTracabilityHandlePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IAttribute_requiremenTracabilityHandle_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IAttribute_requiremenTracabilityHandle_feature", "_UI_IAttribute_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIAttribute_RequiremenTracabilityHandle(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Code Update CG Time feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addCodeUpdateCGTimePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IAttribute_codeUpdateCGTime_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IAttribute_codeUpdateCGTime_feature", "_UI_IAttribute_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIAttribute_CodeUpdateCGTime(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the The Main Diagram feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addTheMainDiagramPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IAttribute_theMainDiagram_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IAttribute_theMainDiagram_feature", "_UI_IAttribute_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIAttribute_TheMainDiagram(),
+				 true,
+				 false,
+				 true,
+				 null,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This specifies how to implement {@link #getChildren} and is used to deduce an appropriate feature for an
+	 * {@link org.eclipse.emf.edit.command.AddCommand}, {@link org.eclipse.emf.edit.command.RemoveCommand} or
+	 * {@link org.eclipse.emf.edit.command.MoveCommand} in {@link #createCommand}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Collection<? extends EStructuralFeature> getChildrenFeatures(Object object) {
+		if (childrenFeatures == null) {
+			super.getChildrenFeatures(object);
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getIAttribute_Stereotypes());
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getIAttribute_ValueSpecifications());
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getIAttribute_Properties());
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getIAttribute_Description());
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getIAttribute_Tags());
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getIAttribute_Dependencies());
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getIAttribute_Annotations());
+		}
+		return childrenFeatures;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EStructuralFeature getChildFeature(Object object, Object child) {
+		// Check the type of the specified child object and return the proper feature to use for
+		// adding (see {@link AddCommand}) it as a child.
+
+		return super.getChildFeature(object, child);
+	}
+
+	/**
+	 * This returns IAttribute.gif.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object getImage(Object object) {
+		return overlayImage(object, getResourceLocator().getImage("full/obj16/IAttribute")); //$NON-NLS-1$
+	}
+
+	/**
+	 * This returns the label text for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String getText(Object object) {
+		String label = ((IAttribute)object).getName();
+		return label == null || label.length() == 0 ?
+			getString("_UI_IAttribute_type") : //$NON-NLS-1$
+			getString("_UI_IAttribute_type") + " " + label; //$NON-NLS-1$ //$NON-NLS-2$
+	}
+	
+
+	/**
+	 * This handles model notifications by calling {@link #updateChildren} to update any cached
+	 * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void notifyChanged(Notification notification) {
+		updateChildren(notification);
+
+		switch (notification.getFeatureID(IAttribute.class)) {
+			case UMLRpyPackage.IATTRIBUTE__UML_DEPENDENCY_ID:
+			case UMLRpyPackage.IATTRIBUTE__OBJECT_CREATION:
+			case UMLRpyPackage.IATTRIBUTE__MODIFIED_TIME_WEAK:
+			case UMLRpyPackage.IATTRIBUTE__ID:
+			case UMLRpyPackage.IATTRIBUTE__MY_STATE:
+			case UMLRpyPackage.IATTRIBUTE__NAME:
+			case UMLRpyPackage.IATTRIBUTE__MULTIPLICITY:
+			case UMLRpyPackage.IATTRIBUTE__PROTECTION:
+			case UMLRpyPackage.IATTRIBUTE__STATIC:
+			case UMLRpyPackage.IATTRIBUTE__IS_REFERENCE:
+			case UMLRpyPackage.IATTRIBUTE__IS_CONSTANT:
+			case UMLRpyPackage.IATTRIBUTE__DEFAULT_VALUE:
+			case UMLRpyPackage.IATTRIBUTE__LAST_ID:
+			case UMLRpyPackage.IATTRIBUTE__REQUIREMEN_TRACABILITY_HANDLE:
+			case UMLRpyPackage.IATTRIBUTE__CODE_UPDATE_CG_TIME:
+				fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), false, true));
+				return;
+			case UMLRpyPackage.IATTRIBUTE__STEREOTYPES:
+			case UMLRpyPackage.IATTRIBUTE__VALUE_SPECIFICATIONS:
+			case UMLRpyPackage.IATTRIBUTE__PROPERTIES:
+			case UMLRpyPackage.IATTRIBUTE__DESCRIPTION:
+			case UMLRpyPackage.IATTRIBUTE__TAGS:
+			case UMLRpyPackage.IATTRIBUTE__DEPENDENCIES:
+			case UMLRpyPackage.IATTRIBUTE__ANNOTATIONS:
+				fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), true, false));
+				return;
+		}
+		super.notifyChanged(notification);
+	}
+
+	/**
+	 * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children
+	 * that can be created under this object.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) {
+		super.collectNewChildDescriptors(newChildDescriptors, object);
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIAttribute_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIUnit()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIAttribute_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIClassifier()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIAttribute_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIActor()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIAttribute_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIAnnotation()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIAttribute_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIVariable()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIAttribute_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIArgument()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIAttribute_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIClass()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIAttribute_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIAssociationClass()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIAttribute_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIAttribute()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIAttribute_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIAttribute_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createICollaborationDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIAttribute_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIComment()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIAttribute_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIComponent()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIAttribute_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIComponentDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIAttribute_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIConstraint()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIAttribute_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIControlledFile()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIAttribute_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIDeploymentDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIAttribute_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIInterfaceItem()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIAttribute_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIEvent()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIAttribute_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIEventReception()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIAttribute_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIFile()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIAttribute_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIFlowItem()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIAttribute_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIRelation()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIAttribute_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIInstance()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIAttribute_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createILink()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIAttribute_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIMatrixLayout()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIAttribute_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIMatrixView()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIAttribute_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIModule()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIAttribute_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createINode()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIAttribute_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIObjectModelDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIAttribute_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIOperation()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIAttribute_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIPackage()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIAttribute_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIPanelDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIAttribute_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIPort()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIAttribute_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIProfile()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIAttribute_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIProject()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIAttribute_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIRequirement()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIAttribute_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createISequenceDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIAttribute_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIStateChart()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIAttribute_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIStateChartDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIAttribute_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIStereotype()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIAttribute_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIStructureDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIAttribute_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createISysMLPort()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIAttribute_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createITableLayout()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIAttribute_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createITableView()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIAttribute_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createITag()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIAttribute_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createITemplateParameter()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIAttribute_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIType()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIAttribute_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIUseCase()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIAttribute_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIUseCaseDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIAttribute_ValueSpecifications(),
+				 UMLRpyFactory.eINSTANCE.createILiteralSpecification()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIAttribute_Properties(),
+				 UMLRpyFactory.eINSTANCE.createIPropertyContainer()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIAttribute_Description(),
+				 UMLRpyFactory.eINSTANCE.createIDescription()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIAttribute_Tags(),
+				 UMLRpyFactory.eINSTANCE.createITag()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIAttribute_Dependencies(),
+				 UMLRpyFactory.eINSTANCE.createIDependency()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIAttribute_Dependencies(),
+				 UMLRpyFactory.eINSTANCE.createIHyperLink()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIAttribute_Annotations(),
+				 UMLRpyFactory.eINSTANCE.createIComment()));
+	}
+
+	/**
+	 * This returns the label text for {@link org.eclipse.emf.edit.command.CreateChildCommand}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String getCreateChildText(Object owner, Object feature, Object child, Collection<?> selection) {
+		Object childFeature = feature;
+		Object childObject = child;
+
+		boolean qualify =
+			childFeature == UMLRpyPackage.eINSTANCE.getIVariable_MyTypeOf() ||
+			childFeature == UMLRpyPackage.eINSTANCE.getIAttribute_Stereotypes() ||
+			childFeature == UMLRpyPackage.eINSTANCE.getIAttribute_Annotations() ||
+			childFeature == UMLRpyPackage.eINSTANCE.getIAttribute_Tags();
+
+		if (qualify) {
+			return getString
+				("_UI_CreateChild_text2", //$NON-NLS-1$
+				 new Object[] { getTypeText(childObject), getFeatureText(childFeature), getTypeText(owner) });
+		}
+		return super.getCreateChildText(owner, feature, child, selection);
+	}
+
+}
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/IBlockItemProvider.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/IBlockItemProvider.java
new file mode 100755
index 0000000..380168f
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/IBlockItemProvider.java
@@ -0,0 +1,383 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.provider;
+
+
+import java.util.Collection;
+import java.util.List;
+
+import org.eclipse.emf.common.notify.AdapterFactory;
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.ecore.EStructuralFeature;
+
+import org.eclipse.emf.edit.provider.ComposeableAdapterFactory;
+import org.eclipse.emf.edit.provider.IItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.ItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.ViewerNotification;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IBlock;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyFactory;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IBlock} object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class IBlockItemProvider extends AssociationsTypeItemProvider {
+	/**
+	 * This constructs an instance from a factory and a notifier.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IBlockItemProvider(AdapterFactory adapterFactory) {
+		super(adapterFactory);
+	}
+
+	/**
+	 * This returns the property descriptors for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) {
+		if (itemPropertyDescriptors == null) {
+			super.getPropertyDescriptors(object);
+
+			addMultiplicityPropertyDescriptor(object);
+			addIdPropertyDescriptor(object);
+			addMyStatePropertyDescriptor(object);
+			addNamePropertyDescriptor(object);
+			addObjectCreationPropertyDescriptor(object);
+			addUmlDependencyIDPropertyDescriptor(object);
+			addOtherClassPropertyDescriptor(object);
+			addInversePropertyDescriptor(object);
+			addPartKindPropertyDescriptor(object);
+		}
+		return itemPropertyDescriptors;
+	}
+
+	/**
+	 * This adds a property descriptor for the Multiplicity feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addMultiplicityPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_End2_Type_multiplicity_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_End2_Type_multiplicity_feature", "_UI_End2_Type_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getEnd2_Type_Multiplicity(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Id feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addIdPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IBlock_id_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IBlock_id_feature", "_UI_IBlock_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIBlock_Id(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the My State feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addMyStatePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IBlock_myState_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IBlock_myState_feature", "_UI_IBlock_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIBlock_MyState(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Name feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addNamePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IBlock_name_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IBlock_name_feature", "_UI_IBlock_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIBlock_Name(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Object Creation feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addObjectCreationPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IBlock_objectCreation_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IBlock_objectCreation_feature", "_UI_IBlock_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIBlock_ObjectCreation(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Uml Dependency ID feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addUmlDependencyIDPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IBlock_umlDependencyID_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IBlock_umlDependencyID_feature", "_UI_IBlock_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIBlock_UmlDependencyID(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Other Class feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addOtherClassPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IBlock_otherClass_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IBlock_otherClass_feature", "_UI_IBlock_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIBlock_OtherClass(),
+				 true,
+				 false,
+				 true,
+				 null,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Inverse feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addInversePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IBlock_inverse_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IBlock_inverse_feature", "_UI_IBlock_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIBlock_Inverse(),
+				 true,
+				 false,
+				 true,
+				 null,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Part Kind feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addPartKindPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IBlock_partKind_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IBlock_partKind_feature", "_UI_IBlock_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIBlock_PartKind(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This specifies how to implement {@link #getChildren} and is used to deduce an appropriate feature for an
+	 * {@link org.eclipse.emf.edit.command.AddCommand}, {@link org.eclipse.emf.edit.command.RemoveCommand} or
+	 * {@link org.eclipse.emf.edit.command.MoveCommand} in {@link #createCommand}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Collection<? extends EStructuralFeature> getChildrenFeatures(Object object) {
+		if (childrenFeatures == null) {
+			super.getChildrenFeatures(object);
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getToLinkType_ImplicitClass());
+		}
+		return childrenFeatures;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EStructuralFeature getChildFeature(Object object, Object child) {
+		// Check the type of the specified child object and return the proper feature to use for
+		// adding (see {@link AddCommand}) it as a child.
+
+		return super.getChildFeature(object, child);
+	}
+
+	/**
+	 * This returns IBlock.gif.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object getImage(Object object) {
+		return overlayImage(object, getResourceLocator().getImage("full/obj16/IBlock")); //$NON-NLS-1$
+	}
+
+	/**
+	 * This returns the label text for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String getText(Object object) {
+		String label = ((IBlock)object).getName();
+		return label == null || label.length() == 0 ?
+			getString("_UI_IBlock_type") : //$NON-NLS-1$
+			getString("_UI_IBlock_type") + " " + label; //$NON-NLS-1$ //$NON-NLS-2$
+	}
+	
+
+	/**
+	 * This handles model notifications by calling {@link #updateChildren} to update any cached
+	 * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void notifyChanged(Notification notification) {
+		updateChildren(notification);
+
+		switch (notification.getFeatureID(IBlock.class)) {
+			case UMLRpyPackage.IBLOCK__MULTIPLICITY:
+			case UMLRpyPackage.IBLOCK__ID:
+			case UMLRpyPackage.IBLOCK__MY_STATE:
+			case UMLRpyPackage.IBLOCK__NAME:
+			case UMLRpyPackage.IBLOCK__OBJECT_CREATION:
+			case UMLRpyPackage.IBLOCK__UML_DEPENDENCY_ID:
+			case UMLRpyPackage.IBLOCK__PART_KIND:
+				fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), false, true));
+				return;
+			case UMLRpyPackage.IBLOCK__IMPLICIT_CLASS:
+				fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), true, false));
+				return;
+		}
+		super.notifyChanged(notification);
+	}
+
+	/**
+	 * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children
+	 * that can be created under this object.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) {
+		super.collectNewChildDescriptors(newChildDescriptors, object);
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getToLinkType_ImplicitClass(),
+				 UMLRpyFactory.eINSTANCE.createIClass()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getToLinkType_ImplicitClass(),
+				 UMLRpyFactory.eINSTANCE.createIAssociationClass()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getToLinkType_ImplicitClass(),
+				 UMLRpyFactory.eINSTANCE.createIStateChart()));
+	}
+
+}
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/IBodyItemProvider.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/IBodyItemProvider.java
new file mode 100755
index 0000000..2c63152
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/IBodyItemProvider.java
@@ -0,0 +1,168 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.provider;
+
+
+import java.util.Collection;
+import java.util.List;
+
+import org.eclipse.emf.common.notify.AdapterFactory;
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.common.util.ResourceLocator;
+
+import org.eclipse.emf.edit.provider.ComposeableAdapterFactory;
+import org.eclipse.emf.edit.provider.IEditingDomainItemProvider;
+import org.eclipse.emf.edit.provider.IItemLabelProvider;
+import org.eclipse.emf.edit.provider.IItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.IItemPropertySource;
+import org.eclipse.emf.edit.provider.IStructuredItemContentProvider;
+import org.eclipse.emf.edit.provider.ITreeItemContentProvider;
+import org.eclipse.emf.edit.provider.ItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.ItemProviderAdapter;
+import org.eclipse.emf.edit.provider.ViewerNotification;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IBody;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IBody} object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class IBodyItemProvider 
+	extends ItemProviderAdapter
+	implements
+		IEditingDomainItemProvider,
+		IStructuredItemContentProvider,
+		ITreeItemContentProvider,
+		IItemLabelProvider,
+		IItemPropertySource {
+	/**
+	 * This constructs an instance from a factory and a notifier.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IBodyItemProvider(AdapterFactory adapterFactory) {
+		super(adapterFactory);
+	}
+
+	/**
+	 * This returns the property descriptors for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) {
+		if (itemPropertyDescriptors == null) {
+			super.getPropertyDescriptors(object);
+
+			addBodyDataPropertyDescriptor(object);
+		}
+		return itemPropertyDescriptors;
+	}
+
+	/**
+	 * This adds a property descriptor for the Body Data feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addBodyDataPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IBody_bodyData_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IBody_bodyData_feature", "_UI_IBody_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIBody_BodyData(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This returns IBody.gif.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object getImage(Object object) {
+		return overlayImage(object, getResourceLocator().getImage("full/obj16/IBody")); //$NON-NLS-1$
+	}
+
+	/**
+	 * This returns the label text for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String getText(Object object) {
+		String label = ((IBody)object).getBodyData();
+		return label == null || label.length() == 0 ?
+			getString("_UI_IBody_type") : //$NON-NLS-1$
+			getString("_UI_IBody_type") + " " + label; //$NON-NLS-1$ //$NON-NLS-2$
+	}
+	
+
+	/**
+	 * This handles model notifications by calling {@link #updateChildren} to update any cached
+	 * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void notifyChanged(Notification notification) {
+		updateChildren(notification);
+
+		switch (notification.getFeatureID(IBody.class)) {
+			case UMLRpyPackage.IBODY__BODY_DATA:
+				fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), false, true));
+				return;
+		}
+		super.notifyChanged(notification);
+	}
+
+	/**
+	 * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children
+	 * that can be created under this object.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) {
+		super.collectNewChildDescriptors(newChildDescriptors, object);
+	}
+
+	/**
+	 * Return the resource locator for this item provider's resources.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public ResourceLocator getResourceLocator() {
+		return rpymetamodelEditPlugin.INSTANCE;
+	}
+
+}
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/IBranchItemProvider.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/IBranchItemProvider.java
new file mode 100755
index 0000000..6e6e75a
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/IBranchItemProvider.java
@@ -0,0 +1,374 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.provider;
+
+
+import java.util.Collection;
+import java.util.List;
+
+import org.eclipse.emf.common.notify.AdapterFactory;
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.ecore.EStructuralFeature;
+
+import org.eclipse.emf.edit.provider.ComposeableAdapterFactory;
+import org.eclipse.emf.edit.provider.IItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.ItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.ViewerNotification;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IBranch;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyFactory;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IBranch} object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class IBranchItemProvider extends ItsTargetTypeItemProvider {
+	/**
+	 * This constructs an instance from a factory and a notifier.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IBranchItemProvider(AdapterFactory adapterFactory) {
+		super(adapterFactory);
+	}
+
+	/**
+	 * This returns the property descriptors for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) {
+		if (itemPropertyDescriptors == null) {
+			super.getPropertyDescriptors(object);
+
+			addIdPropertyDescriptor(object);
+			addNamePropertyDescriptor(object);
+			addModifiedTimeWeakPropertyDescriptor(object);
+			addParentPropertyDescriptor(object);
+			addConnectorTypePropertyDescriptor(object);
+			addMyStatePropertyDescriptor(object);
+			addCodeUpdateCGTimePropertyDescriptor(object);
+			addObjectCreationPropertyDescriptor(object);
+			addUmlDependencyIDPropertyDescriptor(object);
+		}
+		return itemPropertyDescriptors;
+	}
+
+	/**
+	 * This adds a property descriptor for the Id feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addIdPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IBranch_id_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IBranch_id_feature", "_UI_IBranch_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIBranch_Id(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Name feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addNamePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IBranch_name_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IBranch_name_feature", "_UI_IBranch_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIBranch_Name(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Modified Time Weak feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addModifiedTimeWeakPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IBranch_modifiedTimeWeak_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IBranch_modifiedTimeWeak_feature", "_UI_IBranch_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIBranch_ModifiedTimeWeak(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Parent feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addParentPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IBranch_parent_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IBranch_parent_feature", "_UI_IBranch_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIBranch_Parent(),
+				 true,
+				 false,
+				 true,
+				 null,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Connector Type feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addConnectorTypePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IBranch_connectorType_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IBranch_connectorType_feature", "_UI_IBranch_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIBranch_ConnectorType(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the My State feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addMyStatePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IBranch_myState_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IBranch_myState_feature", "_UI_IBranch_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIBranch_MyState(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Code Update CG Time feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addCodeUpdateCGTimePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IBranch_codeUpdateCGTime_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IBranch_codeUpdateCGTime_feature", "_UI_IBranch_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIBranch_CodeUpdateCGTime(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Object Creation feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addObjectCreationPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IBranch_objectCreation_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IBranch_objectCreation_feature", "_UI_IBranch_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIBranch_ObjectCreation(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Uml Dependency ID feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addUmlDependencyIDPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IBranch_umlDependencyID_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IBranch_umlDependencyID_feature", "_UI_IBranch_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIBranch_UmlDependencyID(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This specifies how to implement {@link #getChildren} and is used to deduce an appropriate feature for an
+	 * {@link org.eclipse.emf.edit.command.AddCommand}, {@link org.eclipse.emf.edit.command.RemoveCommand} or
+	 * {@link org.eclipse.emf.edit.command.MoveCommand} in {@link #createCommand}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Collection<? extends EStructuralFeature> getChildrenFeatures(Object object) {
+		if (childrenFeatures == null) {
+			super.getChildrenFeatures(object);
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getIBranch_Stereotypes());
+		}
+		return childrenFeatures;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EStructuralFeature getChildFeature(Object object, Object child) {
+		// Check the type of the specified child object and return the proper feature to use for
+		// adding (see {@link AddCommand}) it as a child.
+
+		return super.getChildFeature(object, child);
+	}
+
+	/**
+	 * This returns IBranch.gif.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object getImage(Object object) {
+		return overlayImage(object, getResourceLocator().getImage("full/obj16/IBranch")); //$NON-NLS-1$
+	}
+
+	/**
+	 * This returns the label text for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String getText(Object object) {
+		String label = ((IBranch)object).getName();
+		return label == null || label.length() == 0 ?
+			getString("_UI_IBranch_type") : //$NON-NLS-1$
+			getString("_UI_IBranch_type") + " " + label; //$NON-NLS-1$ //$NON-NLS-2$
+	}
+	
+
+	/**
+	 * This handles model notifications by calling {@link #updateChildren} to update any cached
+	 * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void notifyChanged(Notification notification) {
+		updateChildren(notification);
+
+		switch (notification.getFeatureID(IBranch.class)) {
+			case UMLRpyPackage.IBRANCH__ID:
+			case UMLRpyPackage.IBRANCH__NAME:
+			case UMLRpyPackage.IBRANCH__MODIFIED_TIME_WEAK:
+			case UMLRpyPackage.IBRANCH__CONNECTOR_TYPE:
+			case UMLRpyPackage.IBRANCH__MY_STATE:
+			case UMLRpyPackage.IBRANCH__CODE_UPDATE_CG_TIME:
+			case UMLRpyPackage.IBRANCH__OBJECT_CREATION:
+			case UMLRpyPackage.IBRANCH__UML_DEPENDENCY_ID:
+				fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), false, true));
+				return;
+			case UMLRpyPackage.IBRANCH__STEREOTYPES:
+				fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), true, false));
+				return;
+		}
+		super.notifyChanged(notification);
+	}
+
+	/**
+	 * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children
+	 * that can be created under this object.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) {
+		super.collectNewChildDescriptors(newChildDescriptors, object);
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIBranch_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIStereotype()));
+	}
+
+}
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/ICallActionItemProvider.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/ICallActionItemProvider.java
new file mode 100755
index 0000000..67d7fc6
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/ICallActionItemProvider.java
@@ -0,0 +1,263 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.provider;
+
+
+import java.util.Collection;
+import java.util.List;
+
+import org.eclipse.emf.common.notify.AdapterFactory;
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.common.util.ResourceLocator;
+
+import org.eclipse.emf.edit.provider.ComposeableAdapterFactory;
+import org.eclipse.emf.edit.provider.IEditingDomainItemProvider;
+import org.eclipse.emf.edit.provider.IItemLabelProvider;
+import org.eclipse.emf.edit.provider.IItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.IItemPropertySource;
+import org.eclipse.emf.edit.provider.IStructuredItemContentProvider;
+import org.eclipse.emf.edit.provider.ITreeItemContentProvider;
+import org.eclipse.emf.edit.provider.ItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.ItemProviderAdapter;
+import org.eclipse.emf.edit.provider.ViewerNotification;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ICallAction;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ICallAction} object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class ICallActionItemProvider 
+	extends ItemProviderAdapter
+	implements
+		IEditingDomainItemProvider,
+		IStructuredItemContentProvider,
+		ITreeItemContentProvider,
+		IItemLabelProvider,
+		IItemPropertySource {
+	/**
+	 * This constructs an instance from a factory and a notifier.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public ICallActionItemProvider(AdapterFactory adapterFactory) {
+		super(adapterFactory);
+	}
+
+	/**
+	 * This returns the property descriptors for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) {
+		if (itemPropertyDescriptors == null) {
+			super.getPropertyDescriptors(object);
+
+			addIdPropertyDescriptor(object);
+			addModifiedTimeWeakPropertyDescriptor(object);
+			addInterfaceItemPropertyDescriptor(object);
+			addArgumentNamesPropertyDescriptor(object);
+			addArgumentValuesPropertyDescriptor(object);
+		}
+		return itemPropertyDescriptors;
+	}
+
+	/**
+	 * This adds a property descriptor for the Id feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addIdPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_ICallAction_id_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_ICallAction_id_feature", "_UI_ICallAction_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getICallAction_Id(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Modified Time Weak feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addModifiedTimeWeakPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_ICallAction_modifiedTimeWeak_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_ICallAction_modifiedTimeWeak_feature", "_UI_ICallAction_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getICallAction_ModifiedTimeWeak(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Interface Item feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addInterfaceItemPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_ICallAction_interfaceItem_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_ICallAction_interfaceItem_feature", "_UI_ICallAction_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getICallAction_InterfaceItem(),
+				 true,
+				 false,
+				 true,
+				 null,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Argument Names feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addArgumentNamesPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_ICallAction_argumentNames_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_ICallAction_argumentNames_feature", "_UI_ICallAction_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getICallAction_ArgumentNames(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Argument Values feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addArgumentValuesPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_ICallAction_argumentValues_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_ICallAction_argumentValues_feature", "_UI_ICallAction_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getICallAction_ArgumentValues(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This returns ICallAction.gif.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object getImage(Object object) {
+		return overlayImage(object, getResourceLocator().getImage("full/obj16/ICallAction")); //$NON-NLS-1$
+	}
+
+	/**
+	 * This returns the label text for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String getText(Object object) {
+		String label = ((ICallAction)object).getId();
+		return label == null || label.length() == 0 ?
+			getString("_UI_ICallAction_type") : //$NON-NLS-1$
+			getString("_UI_ICallAction_type") + " " + label; //$NON-NLS-1$ //$NON-NLS-2$
+	}
+	
+
+	/**
+	 * This handles model notifications by calling {@link #updateChildren} to update any cached
+	 * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void notifyChanged(Notification notification) {
+		updateChildren(notification);
+
+		switch (notification.getFeatureID(ICallAction.class)) {
+			case UMLRpyPackage.ICALL_ACTION__ID:
+			case UMLRpyPackage.ICALL_ACTION__MODIFIED_TIME_WEAK:
+			case UMLRpyPackage.ICALL_ACTION__ARGUMENT_NAMES:
+			case UMLRpyPackage.ICALL_ACTION__ARGUMENT_VALUES:
+				fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), false, true));
+				return;
+		}
+		super.notifyChanged(notification);
+	}
+
+	/**
+	 * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children
+	 * that can be created under this object.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) {
+		super.collectNewChildDescriptors(newChildDescriptors, object);
+	}
+
+	/**
+	 * Return the resource locator for this item provider's resources.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public ResourceLocator getResourceLocator() {
+		return rpymetamodelEditPlugin.INSTANCE;
+	}
+
+}
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/ICallOperationItemProvider.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/ICallOperationItemProvider.java
new file mode 100755
index 0000000..7e58154
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/ICallOperationItemProvider.java
@@ -0,0 +1,183 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.provider;
+
+
+import java.util.Collection;
+import java.util.List;
+
+import org.eclipse.emf.common.notify.AdapterFactory;
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.edit.provider.ComposeableAdapterFactory;
+import org.eclipse.emf.edit.provider.IItemPropertyDescriptor;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ICallOperation;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ICallOperation} object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class ICallOperationItemProvider extends IStateItemProvider {
+	/**
+	 * This constructs an instance from a factory and a notifier.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public ICallOperationItemProvider(AdapterFactory adapterFactory) {
+		super(adapterFactory);
+	}
+
+	/**
+	 * This returns the property descriptors for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) {
+		if (itemPropertyDescriptors == null) {
+			super.getPropertyDescriptors(object);
+
+			addOperationPropertyDescriptor(object);
+			addTargetPropertyDescriptor(object);
+		}
+		return itemPropertyDescriptors;
+	}
+
+	/**
+	 * This adds a property descriptor for the Operation feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addOperationPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_ICallOperation_operation_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_ICallOperation_operation_feature", "_UI_ICallOperation_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getICallOperation_Operation(),
+				 true,
+				 false,
+				 true,
+				 null,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Target feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addTargetPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_ICallOperation_target_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_ICallOperation_target_feature", "_UI_ICallOperation_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getICallOperation_Target(),
+				 true,
+				 false,
+				 true,
+				 null,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This returns ICallOperation.gif.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object getImage(Object object) {
+		return overlayImage(object, getResourceLocator().getImage("full/obj16/ICallOperation")); //$NON-NLS-1$
+	}
+
+	/**
+	 * This returns the label text for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String getText(Object object) {
+		String label = ((ICallOperation)object).getName();
+		return label == null || label.length() == 0 ?
+			getString("_UI_ICallOperation_type") : //$NON-NLS-1$
+			getString("_UI_ICallOperation_type") + " " + label; //$NON-NLS-1$ //$NON-NLS-2$
+	}
+	
+
+	/**
+	 * This handles model notifications by calling {@link #updateChildren} to update any cached
+	 * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void notifyChanged(Notification notification) {
+		updateChildren(notification);
+		super.notifyChanged(notification);
+	}
+
+	/**
+	 * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children
+	 * that can be created under this object.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) {
+		super.collectNewChildDescriptors(newChildDescriptors, object);
+	}
+
+	/**
+	 * This returns the label text for {@link org.eclipse.emf.edit.command.CreateChildCommand}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String getCreateChildText(Object owner, Object feature, Object child, Collection<?> selection) {
+		Object childFeature = feature;
+		Object childObject = child;
+
+		boolean qualify =
+			childFeature == UMLRpyPackage.eINSTANCE.getIState_EntryAction() ||
+			childFeature == UMLRpyPackage.eINSTANCE.getIState_ExitAction() ||
+			childFeature == UMLRpyPackage.eINSTANCE.getIState_NestedStateChart() ||
+			childFeature == UMLRpyPackage.eINSTANCE.getIState_Annotations() ||
+			childFeature == UMLRpyPackage.eINSTANCE.getIState_Dependencies();
+
+		if (qualify) {
+			return getString
+				("_UI_CreateChild_text2", //$NON-NLS-1$
+				 new Object[] { getTypeText(childObject), getFeatureText(childFeature), getTypeText(owner) });
+		}
+		return super.getCreateChildText(owner, feature, child, selection);
+	}
+
+}
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/IClassHandleItemProvider.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/IClassHandleItemProvider.java
new file mode 100755
index 0000000..49b4ba7
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/IClassHandleItemProvider.java
@@ -0,0 +1,262 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.provider;
+
+
+import java.util.Collection;
+import java.util.List;
+
+import org.eclipse.emf.common.notify.AdapterFactory;
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.edit.provider.ComposeableAdapterFactory;
+import org.eclipse.emf.edit.provider.IItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.ItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.ViewerNotification;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IClassHandle;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IClassHandle} object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class IClassHandleItemProvider extends M_pBaseTypeItemProvider {
+	/**
+	 * This constructs an instance from a factory and a notifier.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IClassHandleItemProvider(AdapterFactory adapterFactory) {
+		super(adapterFactory);
+	}
+
+	/**
+	 * This returns the property descriptors for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) {
+		if (itemPropertyDescriptors == null) {
+			super.getPropertyDescriptors(object);
+
+			addM2ClassPropertyDescriptor(object);
+			addIdPropertyDescriptor(object);
+			addFilenamePropertyDescriptor(object);
+			addSubsystemPropertyDescriptor(object);
+			addClassPropertyDescriptor(object);
+			addNamePropertyDescriptor(object);
+		}
+		return itemPropertyDescriptors;
+	}
+
+	/**
+	 * This adds a property descriptor for the M2 Class feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM2ClassPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IClassHandle_m2Class_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IClassHandle_m2Class_feature", "_UI_IClassHandle_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIClassHandle_M2Class(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Id feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addIdPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IClassHandle_id_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IClassHandle_id_feature", "_UI_IClassHandle_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIClassHandle_Id(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Filename feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addFilenamePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IClassHandle_filename_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IClassHandle_filename_feature", "_UI_IClassHandle_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIClassHandle_Filename(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Subsystem feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addSubsystemPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IClassHandle_subsystem_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IClassHandle_subsystem_feature", "_UI_IClassHandle_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIClassHandle_Subsystem(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Class feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addClassPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IClassHandle_class_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IClassHandle_class_feature", "_UI_IClassHandle_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIClassHandle_Class(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Name feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addNamePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IClassHandle_name_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IClassHandle_name_feature", "_UI_IClassHandle_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIClassHandle_Name(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This returns IClassHandle.gif.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object getImage(Object object) {
+		return overlayImage(object, getResourceLocator().getImage("full/obj16/IClassHandle")); //$NON-NLS-1$
+	}
+
+	/**
+	 * This returns the label text for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String getText(Object object) {
+		String label = ((IClassHandle)object).getName();
+		return label == null || label.length() == 0 ?
+			getString("_UI_IClassHandle_type") : //$NON-NLS-1$
+			getString("_UI_IClassHandle_type") + " " + label; //$NON-NLS-1$ //$NON-NLS-2$
+	}
+	
+
+	/**
+	 * This handles model notifications by calling {@link #updateChildren} to update any cached
+	 * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void notifyChanged(Notification notification) {
+		updateChildren(notification);
+
+		switch (notification.getFeatureID(IClassHandle.class)) {
+			case UMLRpyPackage.ICLASS_HANDLE__M2_CLASS:
+			case UMLRpyPackage.ICLASS_HANDLE__ID:
+			case UMLRpyPackage.ICLASS_HANDLE__FILENAME:
+			case UMLRpyPackage.ICLASS_HANDLE__SUBSYSTEM:
+			case UMLRpyPackage.ICLASS_HANDLE__CLASS:
+			case UMLRpyPackage.ICLASS_HANDLE__NAME:
+				fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), false, true));
+				return;
+		}
+		super.notifyChanged(notification);
+	}
+
+	/**
+	 * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children
+	 * that can be created under this object.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) {
+		super.collectNewChildDescriptors(newChildDescriptors, object);
+	}
+
+}
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/IClassInstanceItemProvider.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/IClassInstanceItemProvider.java
new file mode 100755
index 0000000..daefa3c
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/IClassInstanceItemProvider.java
@@ -0,0 +1,134 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.provider;
+
+
+import java.util.Collection;
+import java.util.List;
+
+import org.eclipse.emf.common.notify.AdapterFactory;
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.edit.provider.ComposeableAdapterFactory;
+import org.eclipse.emf.edit.provider.IItemPropertyDescriptor;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IClassInstance;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IClassInstance} object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class IClassInstanceItemProvider extends LinksTypeItemProvider {
+	/**
+	 * This constructs an instance from a factory and a notifier.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IClassInstanceItemProvider(AdapterFactory adapterFactory) {
+		super(adapterFactory);
+	}
+
+	/**
+	 * This returns the property descriptors for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) {
+		if (itemPropertyDescriptors == null) {
+			super.getPropertyDescriptors(object);
+
+			addInversePropertyDescriptor(object);
+		}
+		return itemPropertyDescriptors;
+	}
+
+	/**
+	 * This adds a property descriptor for the Inverse feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addInversePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IClassInstance_inverse_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IClassInstance_inverse_feature", "_UI_IClassInstance_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIClassInstance_Inverse(),
+				 true,
+				 false,
+				 true,
+				 null,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This returns IClassInstance.gif.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object getImage(Object object) {
+		return overlayImage(object, getResourceLocator().getImage("full/obj16/IClassInstance")); //$NON-NLS-1$
+	}
+
+	/**
+	 * This returns the label text for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String getText(Object object) {
+		String label = ((IClassInstance)object).getName();
+		return label == null || label.length() == 0 ?
+			getString("_UI_IClassInstance_type") : //$NON-NLS-1$
+			getString("_UI_IClassInstance_type") + " " + label; //$NON-NLS-1$ //$NON-NLS-2$
+	}
+	
+
+	/**
+	 * This handles model notifications by calling {@link #updateChildren} to update any cached
+	 * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void notifyChanged(Notification notification) {
+		updateChildren(notification);
+		super.notifyChanged(notification);
+	}
+
+	/**
+	 * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children
+	 * that can be created under this object.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) {
+		super.collectNewChildDescriptors(newChildDescriptors, object);
+	}
+
+}
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/IClassItemProvider.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/IClassItemProvider.java
new file mode 100755
index 0000000..e77b12b
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/IClassItemProvider.java
@@ -0,0 +1,2252 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.provider;
+
+
+import java.util.Collection;
+import java.util.List;
+
+import org.eclipse.emf.common.notify.AdapterFactory;
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.ecore.EStructuralFeature;
+
+import org.eclipse.emf.edit.provider.ComposeableAdapterFactory;
+import org.eclipse.emf.edit.provider.IItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.ItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.ViewerNotification;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IClass;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyFactory;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IClass} object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class IClassItemProvider extends IClassifierItemProvider {
+	/**
+	 * This constructs an instance from a factory and a notifier.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IClassItemProvider(AdapterFactory adapterFactory) {
+		super(adapterFactory);
+	}
+
+	/**
+	 * This returns the property descriptors for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) {
+		if (itemPropertyDescriptors == null) {
+			super.getPropertyDescriptors(object);
+
+			addUmlDependencyIDPropertyDescriptor(object);
+			addObjectCreationPropertyDescriptor(object);
+			addModifiedTimeWeakPropertyDescriptor(object);
+			addIdPropertyDescriptor(object);
+			addMyStatePropertyDescriptor(object);
+			addNamePropertyDescriptor(object);
+			addLastIDPropertyDescriptor(object);
+			addWeakCGTimePropertyDescriptor(object);
+			addStrongCGTimePropertyDescriptor(object);
+			addMultiplicityPropertyDescriptor(object);
+			addClassModifierPropertyDescriptor(object);
+			addTheMainDiagramPropertyDescriptor(object);
+			addItsStateChartPropertyDescriptor(object);
+			addTriggeredOperationsPropertyDescriptor(object);
+			addReceptionsPropertyDescriptor(object);
+			addAssociationElementsPropertyDescriptor(object);
+			addOwnerHandlePropertyDescriptor(object);
+			addRequiremenTracabilityHandlePropertyDescriptor(object);
+			addCodeUpdateCGTimePropertyDescriptor(object);
+			addCmheaderPropertyDescriptor(object);
+		}
+		return itemPropertyDescriptors;
+	}
+
+	/**
+	 * This adds a property descriptor for the Uml Dependency ID feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addUmlDependencyIDPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_M_subjectType_umlDependencyID_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_M_subjectType_umlDependencyID_feature", "_UI_M_subjectType_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getM_subjectType_UmlDependencyID(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Object Creation feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addObjectCreationPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_M_subjectType_objectCreation_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_M_subjectType_objectCreation_feature", "_UI_M_subjectType_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getM_subjectType_ObjectCreation(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Modified Time Weak feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addModifiedTimeWeakPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_ValueType_modifiedTimeWeak_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_ValueType_modifiedTimeWeak_feature", "_UI_ValueType_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getValueType_ModifiedTimeWeak(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Id feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addIdPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_ValueType_id_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_ValueType_id_feature", "_UI_ValueType_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getValueType_Id(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the My State feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addMyStatePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_ValueType_myState_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_ValueType_myState_feature", "_UI_ValueType_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getValueType_MyState(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Name feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addNamePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_ValueType_name_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_ValueType_name_feature", "_UI_ValueType_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getValueType_Name(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Last ID feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addLastIDPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_ConveyedType_lastID_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_ConveyedType_lastID_feature", "_UI_ConveyedType_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getConveyedType_LastID(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Weak CG Time feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addWeakCGTimePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IClass_weakCGTime_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IClass_weakCGTime_feature", "_UI_IClass_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIClass_WeakCGTime(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Strong CG Time feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addStrongCGTimePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IClass_strongCGTime_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IClass_strongCGTime_feature", "_UI_IClass_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIClass_StrongCGTime(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Multiplicity feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addMultiplicityPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IClass_multiplicity_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IClass_multiplicity_feature", "_UI_IClass_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIClass_Multiplicity(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Class Modifier feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addClassModifierPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IClass_classModifier_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IClass_classModifier_feature", "_UI_IClass_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIClass_ClassModifier(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the The Main Diagram feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addTheMainDiagramPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IClass_theMainDiagram_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IClass_theMainDiagram_feature", "_UI_IClass_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIClass_TheMainDiagram(),
+				 true,
+				 false,
+				 true,
+				 null,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Its State Chart feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addItsStateChartPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IClass_itsStateChart_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IClass_itsStateChart_feature", "_UI_IClass_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIClass_ItsStateChart(),
+				 true,
+				 false,
+				 true,
+				 null,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Triggered Operations feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addTriggeredOperationsPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IClass_TriggeredOperations_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IClass_TriggeredOperations_feature", "_UI_IClass_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIClass_TriggeredOperations(),
+				 true,
+				 false,
+				 true,
+				 null,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Receptions feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addReceptionsPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IClass_Receptions_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IClass_Receptions_feature", "_UI_IClass_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIClass_Receptions(),
+				 true,
+				 false,
+				 true,
+				 null,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Association Elements feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addAssociationElementsPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IClass_AssociationElements_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IClass_AssociationElements_feature", "_UI_IClass_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIClass_AssociationElements(),
+				 true,
+				 false,
+				 true,
+				 null,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Owner Handle feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addOwnerHandlePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IClass_ownerHandle_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IClass_ownerHandle_feature", "_UI_IClass_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIClass_OwnerHandle(),
+				 true,
+				 false,
+				 true,
+				 null,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Requiremen Tracability Handle feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addRequiremenTracabilityHandlePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IClass_requiremenTracabilityHandle_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IClass_requiremenTracabilityHandle_feature", "_UI_IClass_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIClass_RequiremenTracabilityHandle(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Code Update CG Time feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addCodeUpdateCGTimePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IClass_codeUpdateCGTime_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IClass_codeUpdateCGTime_feature", "_UI_IClass_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIClass_CodeUpdateCGTime(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Cmheader feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addCmheaderPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IClass_cmheader_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IClass_cmheader_feature", "_UI_IClass_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIClass_Cmheader(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This specifies how to implement {@link #getChildren} and is used to deduce an appropriate feature for an
+	 * {@link org.eclipse.emf.edit.command.AddCommand}, {@link org.eclipse.emf.edit.command.RemoveCommand} or
+	 * {@link org.eclipse.emf.edit.command.MoveCommand} in {@link #createCommand}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Collection<? extends EStructuralFeature> getChildrenFeatures(Object object) {
+		if (childrenFeatures == null) {
+			super.getChildrenFeatures(object);
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getIClass_Properties());
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getIClass_Stereotypes());
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getIClass_Operations());
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getIClass_Inheritances());
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getIClass_Attrs());
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getIClass_Tags());
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getIClass_Associations());
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getIClass_Dependencies());
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getIClass_Ports());
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getIClass_ObjectLinks());
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getIClass_StateCharts());
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getIClass_PrimitiveOperations());
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getIClass_Annotations());
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getIClass_Description());
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getIClass_Declaratives());
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getIClass_HyperLinks());
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getIClass_ComponentFiles());
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getIClass_Links());
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getIClass_Components());
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getIClass_EventHandles());
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getIClass_TemplateParameters());
+		}
+		return childrenFeatures;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EStructuralFeature getChildFeature(Object object, Object child) {
+		// Check the type of the specified child object and return the proper feature to use for
+		// adding (see {@link AddCommand}) it as a child.
+
+		return super.getChildFeature(object, child);
+	}
+
+	/**
+	 * This returns IClass.gif.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object getImage(Object object) {
+		return overlayImage(object, getResourceLocator().getImage("full/obj16/IClass")); //$NON-NLS-1$
+	}
+
+	/**
+	 * This returns the label text for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String getText(Object object) {
+		String label = ((IClass)object).getName();
+		return label == null || label.length() == 0 ?
+			getString("_UI_IClass_type") : //$NON-NLS-1$
+			getString("_UI_IClass_type") + " " + label; //$NON-NLS-1$ //$NON-NLS-2$
+	}
+	
+
+	/**
+	 * This handles model notifications by calling {@link #updateChildren} to update any cached
+	 * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void notifyChanged(Notification notification) {
+		updateChildren(notification);
+
+		switch (notification.getFeatureID(IClass.class)) {
+			case UMLRpyPackage.ICLASS__UML_DEPENDENCY_ID:
+			case UMLRpyPackage.ICLASS__OBJECT_CREATION:
+			case UMLRpyPackage.ICLASS__MODIFIED_TIME_WEAK:
+			case UMLRpyPackage.ICLASS__ID:
+			case UMLRpyPackage.ICLASS__MY_STATE:
+			case UMLRpyPackage.ICLASS__NAME:
+			case UMLRpyPackage.ICLASS__LAST_ID:
+			case UMLRpyPackage.ICLASS__WEAK_CG_TIME:
+			case UMLRpyPackage.ICLASS__STRONG_CG_TIME:
+			case UMLRpyPackage.ICLASS__MULTIPLICITY:
+			case UMLRpyPackage.ICLASS__CLASS_MODIFIER:
+			case UMLRpyPackage.ICLASS__REQUIREMEN_TRACABILITY_HANDLE:
+			case UMLRpyPackage.ICLASS__CODE_UPDATE_CG_TIME:
+			case UMLRpyPackage.ICLASS__CMHEADER:
+				fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), false, true));
+				return;
+			case UMLRpyPackage.ICLASS__PROPERTIES:
+			case UMLRpyPackage.ICLASS__STEREOTYPES:
+			case UMLRpyPackage.ICLASS__OPERATIONS:
+			case UMLRpyPackage.ICLASS__INHERITANCES:
+			case UMLRpyPackage.ICLASS__ATTRS:
+			case UMLRpyPackage.ICLASS__TAGS:
+			case UMLRpyPackage.ICLASS__ASSOCIATIONS:
+			case UMLRpyPackage.ICLASS__DEPENDENCIES:
+			case UMLRpyPackage.ICLASS__PORTS:
+			case UMLRpyPackage.ICLASS__OBJECT_LINKS:
+			case UMLRpyPackage.ICLASS__STATE_CHARTS:
+			case UMLRpyPackage.ICLASS__PRIMITIVE_OPERATIONS:
+			case UMLRpyPackage.ICLASS__ANNOTATIONS:
+			case UMLRpyPackage.ICLASS__DESCRIPTION:
+			case UMLRpyPackage.ICLASS__DECLARATIVES:
+			case UMLRpyPackage.ICLASS__HYPER_LINKS:
+			case UMLRpyPackage.ICLASS__COMPONENT_FILES:
+			case UMLRpyPackage.ICLASS__LINKS:
+			case UMLRpyPackage.ICLASS__COMPONENTS:
+			case UMLRpyPackage.ICLASS__EVENT_HANDLES:
+			case UMLRpyPackage.ICLASS__TEMPLATE_PARAMETERS:
+				fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), true, false));
+				return;
+		}
+		super.notifyChanged(notification);
+	}
+
+	/**
+	 * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children
+	 * that can be created under this object.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) {
+		super.collectNewChildDescriptors(newChildDescriptors, object);
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIClass_Properties(),
+				 UMLRpyFactory.eINSTANCE.createIPropertyContainer()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIClass_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIUnit()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIClass_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIClassifier()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIClass_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIActor()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIClass_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIAnnotation()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIClass_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIVariable()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIClass_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIArgument()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIClass_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIClass()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIClass_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIAssociationClass()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIClass_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIAttribute()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIClass_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIClass_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createICollaborationDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIClass_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIComment()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIClass_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIComponent()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIClass_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIComponentDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIClass_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIConstraint()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIClass_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIControlledFile()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIClass_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIDeploymentDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIClass_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIInterfaceItem()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIClass_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIEvent()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIClass_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIEventReception()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIClass_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIFile()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIClass_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIFlowItem()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIClass_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIRelation()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIClass_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIInstance()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIClass_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createILink()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIClass_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIMatrixLayout()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIClass_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIMatrixView()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIClass_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIModule()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIClass_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createINode()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIClass_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIObjectModelDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIClass_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIOperation()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIClass_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIPackage()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIClass_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIPanelDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIClass_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIPort()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIClass_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIProfile()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIClass_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIProject()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIClass_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIRequirement()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIClass_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createISequenceDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIClass_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIStateChart()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIClass_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIStateChartDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIClass_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIStereotype()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIClass_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIStructureDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIClass_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createISysMLPort()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIClass_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createITableLayout()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIClass_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createITableView()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIClass_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createITag()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIClass_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createITemplateParameter()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIClass_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIType()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIClass_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIUseCase()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIClass_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIUseCaseDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIClass_Operations(),
+				 UMLRpyFactory.eINSTANCE.createIConstructor()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIClass_Operations(),
+				 UMLRpyFactory.eINSTANCE.createIDestructor()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIClass_Operations(),
+				 UMLRpyFactory.eINSTANCE.createIPrimitiveOperation()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIClass_Operations(),
+				 UMLRpyFactory.eINSTANCE.createIReception()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIClass_Operations(),
+				 UMLRpyFactory.eINSTANCE.createITriggered()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIClass_Inheritances(),
+				 UMLRpyFactory.eINSTANCE.createIModelElement()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIClass_Inheritances(),
+				 UMLRpyFactory.eINSTANCE.createIStateVertex()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIClass_Inheritances(),
+				 UMLRpyFactory.eINSTANCE.createIState()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIClass_Inheritances(),
+				 UMLRpyFactory.eINSTANCE.createIAcceptEventAction()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIClass_Inheritances(),
+				 UMLRpyFactory.eINSTANCE.createIAcceptTimeEvent()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIClass_Inheritances(),
+				 UMLRpyFactory.eINSTANCE.createIAction()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIClass_Inheritances(),
+				 UMLRpyFactory.eINSTANCE.createIActivityGraph()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIClass_Inheritances(),
+				 UMLRpyFactory.eINSTANCE.createIUnit()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIClass_Inheritances(),
+				 UMLRpyFactory.eINSTANCE.createIClassifier()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIClass_Inheritances(),
+				 UMLRpyFactory.eINSTANCE.createIActor()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIClass_Inheritances(),
+				 UMLRpyFactory.eINSTANCE.createIAnnotation()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIClass_Inheritances(),
+				 UMLRpyFactory.eINSTANCE.createIVariable()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIClass_Inheritances(),
+				 UMLRpyFactory.eINSTANCE.createIArgument()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIClass_Inheritances(),
+				 UMLRpyFactory.eINSTANCE.createIClass()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIClass_Inheritances(),
+				 UMLRpyFactory.eINSTANCE.createIAssociationClass()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIClass_Inheritances(),
+				 UMLRpyFactory.eINSTANCE.createIAssociationEnd()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIClass_Inheritances(),
+				 UMLRpyFactory.eINSTANCE.createIAssociationRole()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIClass_Inheritances(),
+				 UMLRpyFactory.eINSTANCE.createIAttribute()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIClass_Inheritances(),
+				 UMLRpyFactory.eINSTANCE.createICallOperation()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIClass_Inheritances(),
+				 UMLRpyFactory.eINSTANCE.createIClassifierRole()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIClass_Inheritances(),
+				 UMLRpyFactory.eINSTANCE.createICollaboration()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIClass_Inheritances(),
+				 UMLRpyFactory.eINSTANCE.createIDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIClass_Inheritances(),
+				 UMLRpyFactory.eINSTANCE.createICollaborationDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIClass_Inheritances(),
+				 UMLRpyFactory.eINSTANCE.createIComment()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIClass_Inheritances(),
+				 UMLRpyFactory.eINSTANCE.createIComponent()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIClass_Inheritances(),
+				 UMLRpyFactory.eINSTANCE.createIComponentDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIClass_Inheritances(),
+				 UMLRpyFactory.eINSTANCE.createIComponentInstance()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIClass_Inheritances(),
+				 UMLRpyFactory.eINSTANCE.createIConfiguration()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIClass_Inheritances(),
+				 UMLRpyFactory.eINSTANCE.createIConnector()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIClass_Inheritances(),
+				 UMLRpyFactory.eINSTANCE.createIConstraint()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIClass_Inheritances(),
+				 UMLRpyFactory.eINSTANCE.createIValueSpecification()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIClass_Inheritances(),
+				 UMLRpyFactory.eINSTANCE.createIContextSpecification()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIClass_Inheritances(),
+				 UMLRpyFactory.eINSTANCE.createIControlledFile()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIClass_Inheritances(),
+				 UMLRpyFactory.eINSTANCE.createIDependency()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIClass_Inheritances(),
+				 UMLRpyFactory.eINSTANCE.createIDeploymentDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIClass_Inheritances(),
+				 UMLRpyFactory.eINSTANCE.createIEnumerationLiteral()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIClass_Inheritances(),
+				 UMLRpyFactory.eINSTANCE.createIInterfaceItem()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIClass_Inheritances(),
+				 UMLRpyFactory.eINSTANCE.createIEvent()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIClass_Inheritances(),
+				 UMLRpyFactory.eINSTANCE.createIEventReception()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIClass_Inheritances(),
+				 UMLRpyFactory.eINSTANCE.createIExecutionOccurrence()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIClass_Inheritances(),
+				 UMLRpyFactory.eINSTANCE.createIExternalHyperlink()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIClass_Inheritances(),
+				 UMLRpyFactory.eINSTANCE.createIFile()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIClass_Inheritances(),
+				 UMLRpyFactory.eINSTANCE.createIFileFragment()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIClass_Inheritances(),
+				 UMLRpyFactory.eINSTANCE.createIFlow()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIClass_Inheritances(),
+				 UMLRpyFactory.eINSTANCE.createIFlowItem()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIClass_Inheritances(),
+				 UMLRpyFactory.eINSTANCE.createIGeneralization()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIClass_Inheritances(),
+				 UMLRpyFactory.eINSTANCE.createIGuard()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIClass_Inheritances(),
+				 UMLRpyFactory.eINSTANCE.createIHyperLink()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIClass_Inheritances(),
+				 UMLRpyFactory.eINSTANCE.createIInformationFlow()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIClass_Inheritances(),
+				 UMLRpyFactory.eINSTANCE.createIRelation()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIClass_Inheritances(),
+				 UMLRpyFactory.eINSTANCE.createIInstance()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIClass_Inheritances(),
+				 UMLRpyFactory.eINSTANCE.createIInstanceSlot()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIClass_Inheritances(),
+				 UMLRpyFactory.eINSTANCE.createIInstanceSpecification()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIClass_Inheritances(),
+				 UMLRpyFactory.eINSTANCE.createIInstanceValue()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIClass_Inheritances(),
+				 UMLRpyFactory.eINSTANCE.createIInteractionOccurrence()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIClass_Inheritances(),
+				 UMLRpyFactory.eINSTANCE.createIInteractionOperand()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIClass_Inheritances(),
+				 UMLRpyFactory.eINSTANCE.createIInteractionOperator()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIClass_Inheritances(),
+				 UMLRpyFactory.eINSTANCE.createIInternalHyperlink()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIClass_Inheritances(),
+				 UMLRpyFactory.eINSTANCE.createILink()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIClass_Inheritances(),
+				 UMLRpyFactory.eINSTANCE.createILiteralSpecification()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIClass_Inheritances(),
+				 UMLRpyFactory.eINSTANCE.createIMHyperLink()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIClass_Inheritances(),
+				 UMLRpyFactory.eINSTANCE.createIMatrixLayout()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIClass_Inheritances(),
+				 UMLRpyFactory.eINSTANCE.createIMatrixView()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIClass_Inheritances(),
+				 UMLRpyFactory.eINSTANCE.createIMessage()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIClass_Inheritances(),
+				 UMLRpyFactory.eINSTANCE.createIMessagePoint()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIClass_Inheritances(),
+				 UMLRpyFactory.eINSTANCE.createIModule()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIClass_Inheritances(),
+				 UMLRpyFactory.eINSTANCE.createINode()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIClass_Inheritances(),
+				 UMLRpyFactory.eINSTANCE.createIObjectLink()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIClass_Inheritances(),
+				 UMLRpyFactory.eINSTANCE.createIObjectModelDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIClass_Inheritances(),
+				 UMLRpyFactory.eINSTANCE.createIObjectNode()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIClass_Inheritances(),
+				 UMLRpyFactory.eINSTANCE.createIOperation()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIClass_Inheritances(),
+				 UMLRpyFactory.eINSTANCE.createIPackage()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIClass_Inheritances(),
+				 UMLRpyFactory.eINSTANCE.createIPanelDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIClass_Inheritances(),
+				 UMLRpyFactory.eINSTANCE.createIPart()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIClass_Inheritances(),
+				 UMLRpyFactory.eINSTANCE.createIPin()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIClass_Inheritances(),
+				 UMLRpyFactory.eINSTANCE.createIPort()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIClass_Inheritances(),
+				 UMLRpyFactory.eINSTANCE.createIPrimitiveOperation()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIClass_Inheritances(),
+				 UMLRpyFactory.eINSTANCE.createIProfile()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIClass_Inheritances(),
+				 UMLRpyFactory.eINSTANCE.createIProject()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIClass_Inheritances(),
+				 UMLRpyFactory.eINSTANCE.createIRequirement()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIClass_Inheritances(),
+				 UMLRpyFactory.eINSTANCE.createISendAction()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIClass_Inheritances(),
+				 UMLRpyFactory.eINSTANCE.createISequenceDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIClass_Inheritances(),
+				 UMLRpyFactory.eINSTANCE.createIStateChart()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIClass_Inheritances(),
+				 UMLRpyFactory.eINSTANCE.createIStateChartDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIClass_Inheritances(),
+				 UMLRpyFactory.eINSTANCE.createIStereotype()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIClass_Inheritances(),
+				 UMLRpyFactory.eINSTANCE.createIStructureDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIClass_Inheritances(),
+				 UMLRpyFactory.eINSTANCE.createISubsystem()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIClass_Inheritances(),
+				 UMLRpyFactory.eINSTANCE.createISwimlane()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIClass_Inheritances(),
+				 UMLRpyFactory.eINSTANCE.createISysMLPort()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIClass_Inheritances(),
+				 UMLRpyFactory.eINSTANCE.createITableLayout()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIClass_Inheritances(),
+				 UMLRpyFactory.eINSTANCE.createITableView()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIClass_Inheritances(),
+				 UMLRpyFactory.eINSTANCE.createITag()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIClass_Inheritances(),
+				 UMLRpyFactory.eINSTANCE.createITemplateInstantiation()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIClass_Inheritances(),
+				 UMLRpyFactory.eINSTANCE.createITemplateInstantiationParameter()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIClass_Inheritances(),
+				 UMLRpyFactory.eINSTANCE.createITemplateParameter()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIClass_Inheritances(),
+				 UMLRpyFactory.eINSTANCE.createITransition()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIClass_Inheritances(),
+				 UMLRpyFactory.eINSTANCE.createITrigger()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIClass_Inheritances(),
+				 UMLRpyFactory.eINSTANCE.createITriggered()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIClass_Inheritances(),
+				 UMLRpyFactory.eINSTANCE.createIType()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIClass_Inheritances(),
+				 UMLRpyFactory.eINSTANCE.createIUseCase()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIClass_Inheritances(),
+				 UMLRpyFactory.eINSTANCE.createIUseCaseDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIClass_Attrs(),
+				 UMLRpyFactory.eINSTANCE.createIUnit()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIClass_Attrs(),
+				 UMLRpyFactory.eINSTANCE.createIClassifier()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIClass_Attrs(),
+				 UMLRpyFactory.eINSTANCE.createIActor()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIClass_Attrs(),
+				 UMLRpyFactory.eINSTANCE.createIAnnotation()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIClass_Attrs(),
+				 UMLRpyFactory.eINSTANCE.createIVariable()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIClass_Attrs(),
+				 UMLRpyFactory.eINSTANCE.createIArgument()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIClass_Attrs(),
+				 UMLRpyFactory.eINSTANCE.createIClass()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIClass_Attrs(),
+				 UMLRpyFactory.eINSTANCE.createIAssociationClass()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIClass_Attrs(),
+				 UMLRpyFactory.eINSTANCE.createIAttribute()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIClass_Attrs(),
+				 UMLRpyFactory.eINSTANCE.createIDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIClass_Attrs(),
+				 UMLRpyFactory.eINSTANCE.createICollaborationDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIClass_Attrs(),
+				 UMLRpyFactory.eINSTANCE.createIComment()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIClass_Attrs(),
+				 UMLRpyFactory.eINSTANCE.createIComponent()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIClass_Attrs(),
+				 UMLRpyFactory.eINSTANCE.createIComponentDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIClass_Attrs(),
+				 UMLRpyFactory.eINSTANCE.createIConstraint()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIClass_Attrs(),
+				 UMLRpyFactory.eINSTANCE.createIControlledFile()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIClass_Attrs(),
+				 UMLRpyFactory.eINSTANCE.createIDeploymentDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIClass_Attrs(),
+				 UMLRpyFactory.eINSTANCE.createIInterfaceItem()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIClass_Attrs(),
+				 UMLRpyFactory.eINSTANCE.createIEvent()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIClass_Attrs(),
+				 UMLRpyFactory.eINSTANCE.createIEventReception()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIClass_Attrs(),
+				 UMLRpyFactory.eINSTANCE.createIFile()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIClass_Attrs(),
+				 UMLRpyFactory.eINSTANCE.createIFlowItem()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIClass_Attrs(),
+				 UMLRpyFactory.eINSTANCE.createIRelation()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIClass_Attrs(),
+				 UMLRpyFactory.eINSTANCE.createIInstance()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIClass_Attrs(),
+				 UMLRpyFactory.eINSTANCE.createILink()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIClass_Attrs(),
+				 UMLRpyFactory.eINSTANCE.createIMatrixLayout()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIClass_Attrs(),
+				 UMLRpyFactory.eINSTANCE.createIMatrixView()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIClass_Attrs(),
+				 UMLRpyFactory.eINSTANCE.createIModule()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIClass_Attrs(),
+				 UMLRpyFactory.eINSTANCE.createINode()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIClass_Attrs(),
+				 UMLRpyFactory.eINSTANCE.createIObjectModelDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIClass_Attrs(),
+				 UMLRpyFactory.eINSTANCE.createIOperation()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIClass_Attrs(),
+				 UMLRpyFactory.eINSTANCE.createIPackage()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIClass_Attrs(),
+				 UMLRpyFactory.eINSTANCE.createIPanelDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIClass_Attrs(),
+				 UMLRpyFactory.eINSTANCE.createIPort()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIClass_Attrs(),
+				 UMLRpyFactory.eINSTANCE.createIProfile()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIClass_Attrs(),
+				 UMLRpyFactory.eINSTANCE.createIProject()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIClass_Attrs(),
+				 UMLRpyFactory.eINSTANCE.createIRequirement()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIClass_Attrs(),
+				 UMLRpyFactory.eINSTANCE.createISequenceDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIClass_Attrs(),
+				 UMLRpyFactory.eINSTANCE.createIStateChart()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIClass_Attrs(),
+				 UMLRpyFactory.eINSTANCE.createIStateChartDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIClass_Attrs(),
+				 UMLRpyFactory.eINSTANCE.createIStereotype()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIClass_Attrs(),
+				 UMLRpyFactory.eINSTANCE.createIStructureDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIClass_Attrs(),
+				 UMLRpyFactory.eINSTANCE.createISysMLPort()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIClass_Attrs(),
+				 UMLRpyFactory.eINSTANCE.createITableLayout()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIClass_Attrs(),
+				 UMLRpyFactory.eINSTANCE.createITableView()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIClass_Attrs(),
+				 UMLRpyFactory.eINSTANCE.createITag()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIClass_Attrs(),
+				 UMLRpyFactory.eINSTANCE.createITemplateParameter()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIClass_Attrs(),
+				 UMLRpyFactory.eINSTANCE.createIType()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIClass_Attrs(),
+				 UMLRpyFactory.eINSTANCE.createIUseCase()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIClass_Attrs(),
+				 UMLRpyFactory.eINSTANCE.createIUseCaseDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIClass_Tags(),
+				 UMLRpyFactory.eINSTANCE.createITag()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIClass_Associations(),
+				 UMLRpyFactory.eINSTANCE.createIAssociationEnd()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIClass_Associations(),
+				 UMLRpyFactory.eINSTANCE.createIBlock()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIClass_Associations(),
+				 UMLRpyFactory.eINSTANCE.createIModule()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIClass_Associations(),
+				 UMLRpyFactory.eINSTANCE.createIPart()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIClass_Dependencies(),
+				 UMLRpyFactory.eINSTANCE.createIDependency()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIClass_Dependencies(),
+				 UMLRpyFactory.eINSTANCE.createIHyperLink()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIClass_Ports(),
+				 UMLRpyFactory.eINSTANCE.createIRelation()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIClass_Ports(),
+				 UMLRpyFactory.eINSTANCE.createIInstance()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIClass_Ports(),
+				 UMLRpyFactory.eINSTANCE.createIModule()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIClass_Ports(),
+				 UMLRpyFactory.eINSTANCE.createIPort()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIClass_Ports(),
+				 UMLRpyFactory.eINSTANCE.createISysMLPort()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIClass_ObjectLinks(),
+				 UMLRpyFactory.eINSTANCE.createIObjectLink()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIClass_StateCharts(),
+				 UMLRpyFactory.eINSTANCE.createIActivityGraph()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIClass_StateCharts(),
+				 UMLRpyFactory.eINSTANCE.createIStateChart()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIClass_PrimitiveOperations(),
+				 UMLRpyFactory.eINSTANCE.createIConstructor()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIClass_PrimitiveOperations(),
+				 UMLRpyFactory.eINSTANCE.createIDestructor()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIClass_PrimitiveOperations(),
+				 UMLRpyFactory.eINSTANCE.createIPrimitiveOperation()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIClass_PrimitiveOperations(),
+				 UMLRpyFactory.eINSTANCE.createIReception()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIClass_PrimitiveOperations(),
+				 UMLRpyFactory.eINSTANCE.createITriggered()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIClass_Annotations(),
+				 UMLRpyFactory.eINSTANCE.createIUnit()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIClass_Annotations(),
+				 UMLRpyFactory.eINSTANCE.createIClassifier()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIClass_Annotations(),
+				 UMLRpyFactory.eINSTANCE.createIActor()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIClass_Annotations(),
+				 UMLRpyFactory.eINSTANCE.createIAnnotation()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIClass_Annotations(),
+				 UMLRpyFactory.eINSTANCE.createIVariable()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIClass_Annotations(),
+				 UMLRpyFactory.eINSTANCE.createIArgument()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIClass_Annotations(),
+				 UMLRpyFactory.eINSTANCE.createIClass()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIClass_Annotations(),
+				 UMLRpyFactory.eINSTANCE.createIAssociationClass()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIClass_Annotations(),
+				 UMLRpyFactory.eINSTANCE.createIAttribute()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIClass_Annotations(),
+				 UMLRpyFactory.eINSTANCE.createIDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIClass_Annotations(),
+				 UMLRpyFactory.eINSTANCE.createICollaborationDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIClass_Annotations(),
+				 UMLRpyFactory.eINSTANCE.createIComment()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIClass_Annotations(),
+				 UMLRpyFactory.eINSTANCE.createIComponent()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIClass_Annotations(),
+				 UMLRpyFactory.eINSTANCE.createIComponentDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIClass_Annotations(),
+				 UMLRpyFactory.eINSTANCE.createIConstraint()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIClass_Annotations(),
+				 UMLRpyFactory.eINSTANCE.createIControlledFile()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIClass_Annotations(),
+				 UMLRpyFactory.eINSTANCE.createIDeploymentDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIClass_Annotations(),
+				 UMLRpyFactory.eINSTANCE.createIInterfaceItem()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIClass_Annotations(),
+				 UMLRpyFactory.eINSTANCE.createIEvent()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIClass_Annotations(),
+				 UMLRpyFactory.eINSTANCE.createIEventReception()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIClass_Annotations(),
+				 UMLRpyFactory.eINSTANCE.createIFile()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIClass_Annotations(),
+				 UMLRpyFactory.eINSTANCE.createIFlowItem()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIClass_Annotations(),
+				 UMLRpyFactory.eINSTANCE.createIRelation()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIClass_Annotations(),
+				 UMLRpyFactory.eINSTANCE.createIInstance()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIClass_Annotations(),
+				 UMLRpyFactory.eINSTANCE.createILink()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIClass_Annotations(),
+				 UMLRpyFactory.eINSTANCE.createIMatrixLayout()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIClass_Annotations(),
+				 UMLRpyFactory.eINSTANCE.createIMatrixView()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIClass_Annotations(),
+				 UMLRpyFactory.eINSTANCE.createIModule()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIClass_Annotations(),
+				 UMLRpyFactory.eINSTANCE.createINode()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIClass_Annotations(),
+				 UMLRpyFactory.eINSTANCE.createIObjectModelDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIClass_Annotations(),
+				 UMLRpyFactory.eINSTANCE.createIOperation()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIClass_Annotations(),
+				 UMLRpyFactory.eINSTANCE.createIPackage()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIClass_Annotations(),
+				 UMLRpyFactory.eINSTANCE.createIPanelDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIClass_Annotations(),
+				 UMLRpyFactory.eINSTANCE.createIPort()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIClass_Annotations(),
+				 UMLRpyFactory.eINSTANCE.createIProfile()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIClass_Annotations(),
+				 UMLRpyFactory.eINSTANCE.createIProject()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIClass_Annotations(),
+				 UMLRpyFactory.eINSTANCE.createIRequirement()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIClass_Annotations(),
+				 UMLRpyFactory.eINSTANCE.createISequenceDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIClass_Annotations(),
+				 UMLRpyFactory.eINSTANCE.createIStateChart()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIClass_Annotations(),
+				 UMLRpyFactory.eINSTANCE.createIStateChartDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIClass_Annotations(),
+				 UMLRpyFactory.eINSTANCE.createIStereotype()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIClass_Annotations(),
+				 UMLRpyFactory.eINSTANCE.createIStructureDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIClass_Annotations(),
+				 UMLRpyFactory.eINSTANCE.createISysMLPort()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIClass_Annotations(),
+				 UMLRpyFactory.eINSTANCE.createITableLayout()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIClass_Annotations(),
+				 UMLRpyFactory.eINSTANCE.createITableView()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIClass_Annotations(),
+				 UMLRpyFactory.eINSTANCE.createITag()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIClass_Annotations(),
+				 UMLRpyFactory.eINSTANCE.createITemplateParameter()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIClass_Annotations(),
+				 UMLRpyFactory.eINSTANCE.createIType()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIClass_Annotations(),
+				 UMLRpyFactory.eINSTANCE.createIUseCase()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIClass_Annotations(),
+				 UMLRpyFactory.eINSTANCE.createIUseCaseDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIClass_Description(),
+				 UMLRpyFactory.eINSTANCE.createIDescription()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIClass_Declaratives(),
+				 UMLRpyFactory.eINSTANCE.createIClass()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIClass_Declaratives(),
+				 UMLRpyFactory.eINSTANCE.createIAssociationClass()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIClass_Declaratives(),
+				 UMLRpyFactory.eINSTANCE.createIDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIClass_Declaratives(),
+				 UMLRpyFactory.eINSTANCE.createICollaborationDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIClass_Declaratives(),
+				 UMLRpyFactory.eINSTANCE.createIComponent()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIClass_Declaratives(),
+				 UMLRpyFactory.eINSTANCE.createIComponentDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIClass_Declaratives(),
+				 UMLRpyFactory.eINSTANCE.createIDeploymentDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIClass_Declaratives(),
+				 UMLRpyFactory.eINSTANCE.createIInformationFlow()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIClass_Declaratives(),
+				 UMLRpyFactory.eINSTANCE.createIInformationItem()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIClass_Declaratives(),
+				 UMLRpyFactory.eINSTANCE.createIMSC()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIClass_Declaratives(),
+				 UMLRpyFactory.eINSTANCE.createIObjectModelDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIClass_Declaratives(),
+				 UMLRpyFactory.eINSTANCE.createIPanelDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIClass_Declaratives(),
+				 UMLRpyFactory.eINSTANCE.createISequenceDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIClass_Declaratives(),
+				 UMLRpyFactory.eINSTANCE.createIStateChart()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIClass_Declaratives(),
+				 UMLRpyFactory.eINSTANCE.createIStateChartDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIClass_Declaratives(),
+				 UMLRpyFactory.eINSTANCE.createIStereotype()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIClass_Declaratives(),
+				 UMLRpyFactory.eINSTANCE.createIStructureDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIClass_Declaratives(),
+				 UMLRpyFactory.eINSTANCE.createISubsystem()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIClass_Declaratives(),
+				 UMLRpyFactory.eINSTANCE.createIType()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIClass_Declaratives(),
+				 UMLRpyFactory.eINSTANCE.createIUCDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIClass_Declaratives(),
+				 UMLRpyFactory.eINSTANCE.createIUseCaseDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIClass_HyperLinks(),
+				 UMLRpyFactory.eINSTANCE.createIMHyperLink()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIClass_ComponentFiles(),
+				 UMLRpyFactory.eINSTANCE.createIFile()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIClass_Links(),
+				 UMLRpyFactory.eINSTANCE.createIClassInstance()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIClass_Links(),
+				 UMLRpyFactory.eINSTANCE.createILink()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIClass_Components(),
+				 UMLRpyFactory.eINSTANCE.createILinkInstance()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIClass_EventHandles(),
+				 UMLRpyFactory.eINSTANCE.createIInterfaceItem()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIClass_EventHandles(),
+				 UMLRpyFactory.eINSTANCE.createIEvent()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIClass_EventHandles(),
+				 UMLRpyFactory.eINSTANCE.createIEventReception()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIClass_EventHandles(),
+				 UMLRpyFactory.eINSTANCE.createIOperation()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIClass_TemplateParameters(),
+				 UMLRpyFactory.eINSTANCE.createITemplateParameter()));
+	}
+
+	/**
+	 * This returns the label text for {@link org.eclipse.emf.edit.command.CreateChildCommand}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String getCreateChildText(Object owner, Object feature, Object child, Collection<?> selection) {
+		Object childFeature = feature;
+		Object childObject = child;
+
+		boolean qualify =
+			childFeature == UMLRpyPackage.eINSTANCE.getIClass_Stereotypes() ||
+			childFeature == UMLRpyPackage.eINSTANCE.getIClass_Inheritances() ||
+			childFeature == UMLRpyPackage.eINSTANCE.getIClass_Attrs() ||
+			childFeature == UMLRpyPackage.eINSTANCE.getIClass_Annotations() ||
+			childFeature == UMLRpyPackage.eINSTANCE.getIClass_Declaratives() ||
+			childFeature == UMLRpyPackage.eINSTANCE.getIClass_EventHandles() ||
+			childFeature == UMLRpyPackage.eINSTANCE.getIClass_ComponentFiles() ||
+			childFeature == UMLRpyPackage.eINSTANCE.getIClass_Ports() ||
+			childFeature == UMLRpyPackage.eINSTANCE.getIClass_Links() ||
+			childFeature == UMLRpyPackage.eINSTANCE.getIClass_Associations() ||
+			childFeature == UMLRpyPackage.eINSTANCE.getIClass_StateCharts() ||
+			childFeature == UMLRpyPackage.eINSTANCE.getIClass_Tags() ||
+			childFeature == UMLRpyPackage.eINSTANCE.getIClass_TemplateParameters() ||
+			childFeature == UMLRpyPackage.eINSTANCE.getIClass_Operations() ||
+			childFeature == UMLRpyPackage.eINSTANCE.getIClass_PrimitiveOperations() ||
+			childFeature == UMLRpyPackage.eINSTANCE.getIClass_Dependencies() ||
+			childFeature == UMLRpyPackage.eINSTANCE.getIClass_HyperLinks() ||
+			childFeature == UMLRpyPackage.eINSTANCE.getIClass_ObjectLinks();
+
+		if (qualify) {
+			return getString
+				("_UI_CreateChild_text2", //$NON-NLS-1$
+				 new Object[] { getTypeText(childObject), getFeatureText(childFeature), getTypeText(owner) });
+		}
+		return super.getCreateChildText(owner, feature, child, selection);
+	}
+
+}
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/IClassifierItemProvider.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/IClassifierItemProvider.java
new file mode 100755
index 0000000..0cef1ff
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/IClassifierItemProvider.java
@@ -0,0 +1,109 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.provider;
+
+
+import java.util.Collection;
+import java.util.List;
+
+import org.eclipse.emf.common.notify.AdapterFactory;
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.edit.provider.IItemPropertyDescriptor;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IClassifier;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IClassifier} object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class IClassifierItemProvider extends IUnitItemProvider {
+	/**
+	 * This constructs an instance from a factory and a notifier.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IClassifierItemProvider(AdapterFactory adapterFactory) {
+		super(adapterFactory);
+	}
+
+	/**
+	 * This returns the property descriptors for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) {
+		if (itemPropertyDescriptors == null) {
+			super.getPropertyDescriptors(object);
+
+		}
+		return itemPropertyDescriptors;
+	}
+
+	/**
+	 * This returns IClassifier.gif.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object getImage(Object object) {
+		return overlayImage(object, getResourceLocator().getImage("full/obj16/IClassifier")); //$NON-NLS-1$
+	}
+
+	/**
+	 * This returns the label text for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String getText(Object object) {
+		String label = ((IClassifier)object).getDisplayName();
+		return label == null || label.length() == 0 ?
+			getString("_UI_IClassifier_type") : //$NON-NLS-1$
+			getString("_UI_IClassifier_type") + " " + label; //$NON-NLS-1$ //$NON-NLS-2$
+	}
+	
+
+	/**
+	 * This handles model notifications by calling {@link #updateChildren} to update any cached
+	 * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void notifyChanged(Notification notification) {
+		updateChildren(notification);
+		super.notifyChanged(notification);
+	}
+
+	/**
+	 * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children
+	 * that can be created under this object.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) {
+		super.collectNewChildDescriptors(newChildDescriptors, object);
+	}
+
+}
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/IClassifierRoleItemProvider.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/IClassifierRoleItemProvider.java
new file mode 100755
index 0000000..929ba0f
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/IClassifierRoleItemProvider.java
@@ -0,0 +1,427 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.provider;
+
+
+import java.util.Collection;
+import java.util.List;
+
+import org.eclipse.emf.common.notify.AdapterFactory;
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.ecore.EStructuralFeature;
+
+import org.eclipse.emf.edit.provider.ComposeableAdapterFactory;
+import org.eclipse.emf.edit.provider.IItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.ItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.ViewerNotification;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IClassifierRole;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyFactory;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IClassifierRole} object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class IClassifierRoleItemProvider extends IModelElementItemProvider {
+	/**
+	 * This constructs an instance from a factory and a notifier.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IClassifierRoleItemProvider(AdapterFactory adapterFactory) {
+		super(adapterFactory);
+	}
+
+	/**
+	 * This returns the property descriptors for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) {
+		if (itemPropertyDescriptors == null) {
+			super.getPropertyDescriptors(object);
+
+			addIdPropertyDescriptor(object);
+			addNamePropertyDescriptor(object);
+			addM_eRoleTypePropertyDescriptor(object);
+			addMyStatePropertyDescriptor(object);
+			addM_pBasePropertyDescriptor(object);
+			addM_instancePropertyDescriptor(object);
+			addModifiedTimeWeakPropertyDescriptor(object);
+			addM_pRefSDPropertyDescriptor(object);
+			addCodeUpdateCGTimePropertyDescriptor(object);
+			addObjectCreationPropertyDescriptor(object);
+			addUmlDependencyIDPropertyDescriptor(object);
+		}
+		return itemPropertyDescriptors;
+	}
+
+	/**
+	 * This adds a property descriptor for the Id feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addIdPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IClassifierRole_id_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IClassifierRole_id_feature", "_UI_IClassifierRole_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIClassifierRole_Id(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Name feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addNamePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IClassifierRole_name_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IClassifierRole_name_feature", "_UI_IClassifierRole_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIClassifierRole_Name(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the MeRole Type feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_eRoleTypePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IClassifierRole_m_eRoleType_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IClassifierRole_m_eRoleType_feature", "_UI_IClassifierRole_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIClassifierRole_M_eRoleType(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the My State feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addMyStatePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IClassifierRole_myState_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IClassifierRole_myState_feature", "_UI_IClassifierRole_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIClassifierRole_MyState(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the MpBase feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_pBasePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IClassifierRole_m_pBase_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IClassifierRole_m_pBase_feature", "_UI_IClassifierRole_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIClassifierRole_M_pBase(),
+				 true,
+				 false,
+				 true,
+				 null,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Minstance feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_instancePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IClassifierRole_m_instance_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IClassifierRole_m_instance_feature", "_UI_IClassifierRole_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIClassifierRole_M_instance(),
+				 true,
+				 false,
+				 true,
+				 null,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Modified Time Weak feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addModifiedTimeWeakPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IClassifierRole_modifiedTimeWeak_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IClassifierRole_modifiedTimeWeak_feature", "_UI_IClassifierRole_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIClassifierRole_ModifiedTimeWeak(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the MpRef SD feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_pRefSDPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IClassifierRole_m_pRefSD_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IClassifierRole_m_pRefSD_feature", "_UI_IClassifierRole_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIClassifierRole_M_pRefSD(),
+				 true,
+				 false,
+				 true,
+				 null,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Code Update CG Time feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addCodeUpdateCGTimePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IClassifierRole_codeUpdateCGTime_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IClassifierRole_codeUpdateCGTime_feature", "_UI_IClassifierRole_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIClassifierRole_CodeUpdateCGTime(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Object Creation feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addObjectCreationPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IClassifierRole_objectCreation_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IClassifierRole_objectCreation_feature", "_UI_IClassifierRole_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIClassifierRole_ObjectCreation(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Uml Dependency ID feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addUmlDependencyIDPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IClassifierRole_umlDependencyID_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IClassifierRole_umlDependencyID_feature", "_UI_IClassifierRole_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIClassifierRole_UmlDependencyID(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This specifies how to implement {@link #getChildren} and is used to deduce an appropriate feature for an
+	 * {@link org.eclipse.emf.edit.command.AddCommand}, {@link org.eclipse.emf.edit.command.RemoveCommand} or
+	 * {@link org.eclipse.emf.edit.command.MoveCommand} in {@link #createCommand}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Collection<? extends EStructuralFeature> getChildrenFeatures(Object object) {
+		if (childrenFeatures == null) {
+			super.getChildrenFeatures(object);
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getIClassifierRole_Properties());
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getIClassifierRole_Stereotypes());
+		}
+		return childrenFeatures;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EStructuralFeature getChildFeature(Object object, Object child) {
+		// Check the type of the specified child object and return the proper feature to use for
+		// adding (see {@link AddCommand}) it as a child.
+
+		return super.getChildFeature(object, child);
+	}
+
+	/**
+	 * This returns IClassifierRole.gif.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object getImage(Object object) {
+		return overlayImage(object, getResourceLocator().getImage("full/obj16/IClassifierRole")); //$NON-NLS-1$
+	}
+
+	/**
+	 * This returns the label text for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String getText(Object object) {
+		String label = ((IClassifierRole)object).getName();
+		return label == null || label.length() == 0 ?
+			getString("_UI_IClassifierRole_type") : //$NON-NLS-1$
+			getString("_UI_IClassifierRole_type") + " " + label; //$NON-NLS-1$ //$NON-NLS-2$
+	}
+	
+
+	/**
+	 * This handles model notifications by calling {@link #updateChildren} to update any cached
+	 * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void notifyChanged(Notification notification) {
+		updateChildren(notification);
+
+		switch (notification.getFeatureID(IClassifierRole.class)) {
+			case UMLRpyPackage.ICLASSIFIER_ROLE__ID:
+			case UMLRpyPackage.ICLASSIFIER_ROLE__NAME:
+			case UMLRpyPackage.ICLASSIFIER_ROLE__MEROLE_TYPE:
+			case UMLRpyPackage.ICLASSIFIER_ROLE__MY_STATE:
+			case UMLRpyPackage.ICLASSIFIER_ROLE__MODIFIED_TIME_WEAK:
+			case UMLRpyPackage.ICLASSIFIER_ROLE__CODE_UPDATE_CG_TIME:
+			case UMLRpyPackage.ICLASSIFIER_ROLE__OBJECT_CREATION:
+			case UMLRpyPackage.ICLASSIFIER_ROLE__UML_DEPENDENCY_ID:
+				fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), false, true));
+				return;
+			case UMLRpyPackage.ICLASSIFIER_ROLE__PROPERTIES:
+			case UMLRpyPackage.ICLASSIFIER_ROLE__STEREOTYPES:
+				fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), true, false));
+				return;
+		}
+		super.notifyChanged(notification);
+	}
+
+	/**
+	 * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children
+	 * that can be created under this object.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) {
+		super.collectNewChildDescriptors(newChildDescriptors, object);
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIClassifierRole_Properties(),
+				 UMLRpyFactory.eINSTANCE.createIPropertyContainer()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIClassifierRole_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIStereotype()));
+	}
+
+}
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/ICodeGenConfigInfoHandleItemProvider.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/ICodeGenConfigInfoHandleItemProvider.java
new file mode 100755
index 0000000..3a12475
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/ICodeGenConfigInfoHandleItemProvider.java
@@ -0,0 +1,192 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.provider;
+
+
+import java.util.Collection;
+import java.util.List;
+
+import org.eclipse.emf.common.notify.AdapterFactory;
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.common.util.ResourceLocator;
+
+import org.eclipse.emf.edit.provider.ComposeableAdapterFactory;
+import org.eclipse.emf.edit.provider.IEditingDomainItemProvider;
+import org.eclipse.emf.edit.provider.IItemLabelProvider;
+import org.eclipse.emf.edit.provider.IItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.IItemPropertySource;
+import org.eclipse.emf.edit.provider.IStructuredItemContentProvider;
+import org.eclipse.emf.edit.provider.ITreeItemContentProvider;
+import org.eclipse.emf.edit.provider.ItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.ItemProviderAdapter;
+import org.eclipse.emf.edit.provider.ViewerNotification;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ICodeGenConfigInfoHandle;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ICodeGenConfigInfoHandle} object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class ICodeGenConfigInfoHandleItemProvider 
+	extends ItemProviderAdapter
+	implements
+		IEditingDomainItemProvider,
+		IStructuredItemContentProvider,
+		ITreeItemContentProvider,
+		IItemLabelProvider,
+		IItemPropertySource {
+	/**
+	 * This constructs an instance from a factory and a notifier.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public ICodeGenConfigInfoHandleItemProvider(AdapterFactory adapterFactory) {
+		super(adapterFactory);
+	}
+
+	/**
+	 * This returns the property descriptors for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) {
+		if (itemPropertyDescriptors == null) {
+			super.getPropertyDescriptors(object);
+
+			addM2ClassPropertyDescriptor(object);
+			addIdPropertyDescriptor(object);
+		}
+		return itemPropertyDescriptors;
+	}
+
+	/**
+	 * This adds a property descriptor for the M2 Class feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM2ClassPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_ICodeGenConfigInfoHandle_m2Class_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_ICodeGenConfigInfoHandle_m2Class_feature", "_UI_ICodeGenConfigInfoHandle_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getICodeGenConfigInfoHandle_M2Class(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Id feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addIdPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_ICodeGenConfigInfoHandle_id_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_ICodeGenConfigInfoHandle_id_feature", "_UI_ICodeGenConfigInfoHandle_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getICodeGenConfigInfoHandle_Id(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This returns ICodeGenConfigInfoHandle.gif.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object getImage(Object object) {
+		return overlayImage(object, getResourceLocator().getImage("full/obj16/ICodeGenConfigInfoHandle")); //$NON-NLS-1$
+	}
+
+	/**
+	 * This returns the label text for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String getText(Object object) {
+		String label = ((ICodeGenConfigInfoHandle)object).getId();
+		return label == null || label.length() == 0 ?
+			getString("_UI_ICodeGenConfigInfoHandle_type") : //$NON-NLS-1$
+			getString("_UI_ICodeGenConfigInfoHandle_type") + " " + label; //$NON-NLS-1$ //$NON-NLS-2$
+	}
+	
+
+	/**
+	 * This handles model notifications by calling {@link #updateChildren} to update any cached
+	 * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void notifyChanged(Notification notification) {
+		updateChildren(notification);
+
+		switch (notification.getFeatureID(ICodeGenConfigInfoHandle.class)) {
+			case UMLRpyPackage.ICODE_GEN_CONFIG_INFO_HANDLE__M2_CLASS:
+			case UMLRpyPackage.ICODE_GEN_CONFIG_INFO_HANDLE__ID:
+				fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), false, true));
+				return;
+		}
+		super.notifyChanged(notification);
+	}
+
+	/**
+	 * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children
+	 * that can be created under this object.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) {
+		super.collectNewChildDescriptors(newChildDescriptors, object);
+	}
+
+	/**
+	 * Return the resource locator for this item provider's resources.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public ResourceLocator getResourceLocator() {
+		return rpymetamodelEditPlugin.INSTANCE;
+	}
+
+}
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/ICodeGenConfigInfoItemProvider.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/ICodeGenConfigInfoItemProvider.java
new file mode 100755
index 0000000..689c7c8
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/ICodeGenConfigInfoItemProvider.java
@@ -0,0 +1,1453 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.provider;
+
+
+import java.util.Collection;
+import java.util.List;
+
+import org.eclipse.emf.common.notify.AdapterFactory;
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.ecore.EStructuralFeature;
+
+import org.eclipse.emf.edit.provider.ComposeableAdapterFactory;
+import org.eclipse.emf.edit.provider.IItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.ItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.ViewerNotification;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ICodeGenConfigInfo;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyFactory;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ICodeGenConfigInfo} object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class ICodeGenConfigInfoItemProvider extends DependsOnTypeItemProvider {
+	/**
+	 * This constructs an instance from a factory and a notifier.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public ICodeGenConfigInfoItemProvider(AdapterFactory adapterFactory) {
+		super(adapterFactory);
+	}
+
+	/**
+	 * This returns the property descriptors for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) {
+		if (itemPropertyDescriptors == null) {
+			super.getPropertyDescriptors(object);
+
+			addIdPropertyDescriptor(object);
+			addMyStatePropertyDescriptor(object);
+			addNamePropertyDescriptor(object);
+			addModifiedTimeWeakPropertyDescriptor(object);
+			addScopeTypePropertyDescriptor(object);
+			addLibrariesPropertyDescriptor(object);
+			addAdditionalSourcesPropertyDescriptor(object);
+			addStandardHeadersPropertyDescriptor(object);
+			addIncludePathPropertyDescriptor(object);
+			addTargetMainPropertyDescriptor(object);
+			addInstrumentationPropertyDescriptor(object);
+			addTimeModelPropertyDescriptor(object);
+			addM_generateActorsPropertyDescriptor(object);
+			addStatechartImplementationPropertyDescriptor(object);
+			addInitializationCodePropertyDescriptor(object);
+			addChecksListPropertyDescriptor(object);
+			addScopeElementsPropertyDescriptor(object);
+			addWeakCGTimePropertyDescriptor(object);
+			addStrongCGTimePropertyDescriptor(object);
+			addM_allInAnimScopePropertyDescriptor(object);
+			addM_generateUsecasesPropertyDescriptor(object);
+			addLastIDPropertyDescriptor(object);
+			addCmheaderPropertyDescriptor(object);
+			addRequiremenTracabilityHandlePropertyDescriptor(object);
+			addCodeUpdateCGTimePropertyDescriptor(object);
+			addObjectCreationPropertyDescriptor(object);
+			addUmlDependencyIDPropertyDescriptor(object);
+		}
+		return itemPropertyDescriptors;
+	}
+
+	/**
+	 * This adds a property descriptor for the Id feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addIdPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_ICodeGenConfigInfo_id_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_ICodeGenConfigInfo_id_feature", "_UI_ICodeGenConfigInfo_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getICodeGenConfigInfo_Id(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the My State feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addMyStatePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_ICodeGenConfigInfo_myState_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_ICodeGenConfigInfo_myState_feature", "_UI_ICodeGenConfigInfo_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getICodeGenConfigInfo_MyState(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Name feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addNamePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_ICodeGenConfigInfo_name_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_ICodeGenConfigInfo_name_feature", "_UI_ICodeGenConfigInfo_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getICodeGenConfigInfo_Name(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Modified Time Weak feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addModifiedTimeWeakPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_ICodeGenConfigInfo_modifiedTimeWeak_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_ICodeGenConfigInfo_modifiedTimeWeak_feature", "_UI_ICodeGenConfigInfo_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getICodeGenConfigInfo_ModifiedTimeWeak(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Scope Type feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addScopeTypePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_ICodeGenConfigInfo_scopeType_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_ICodeGenConfigInfo_scopeType_feature", "_UI_ICodeGenConfigInfo_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getICodeGenConfigInfo_ScopeType(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Libraries feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addLibrariesPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_ICodeGenConfigInfo_libraries_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_ICodeGenConfigInfo_libraries_feature", "_UI_ICodeGenConfigInfo_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getICodeGenConfigInfo_Libraries(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Additional Sources feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addAdditionalSourcesPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_ICodeGenConfigInfo_additionalSources_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_ICodeGenConfigInfo_additionalSources_feature", "_UI_ICodeGenConfigInfo_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getICodeGenConfigInfo_AdditionalSources(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Standard Headers feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addStandardHeadersPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_ICodeGenConfigInfo_standardHeaders_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_ICodeGenConfigInfo_standardHeaders_feature", "_UI_ICodeGenConfigInfo_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getICodeGenConfigInfo_StandardHeaders(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Include Path feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addIncludePathPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_ICodeGenConfigInfo_includePath_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_ICodeGenConfigInfo_includePath_feature", "_UI_ICodeGenConfigInfo_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getICodeGenConfigInfo_IncludePath(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Target Main feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addTargetMainPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_ICodeGenConfigInfo_targetMain_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_ICodeGenConfigInfo_targetMain_feature", "_UI_ICodeGenConfigInfo_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getICodeGenConfigInfo_TargetMain(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Instrumentation feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addInstrumentationPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_ICodeGenConfigInfo_instrumentation_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_ICodeGenConfigInfo_instrumentation_feature", "_UI_ICodeGenConfigInfo_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getICodeGenConfigInfo_Instrumentation(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Time Model feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addTimeModelPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_ICodeGenConfigInfo_timeModel_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_ICodeGenConfigInfo_timeModel_feature", "_UI_ICodeGenConfigInfo_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getICodeGenConfigInfo_TimeModel(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Mgenerate Actors feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_generateActorsPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_ICodeGenConfigInfo_m_generateActors_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_ICodeGenConfigInfo_m_generateActors_feature", "_UI_ICodeGenConfigInfo_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getICodeGenConfigInfo_M_generateActors(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Statechart Implementation feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addStatechartImplementationPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_ICodeGenConfigInfo_statechartImplementation_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_ICodeGenConfigInfo_statechartImplementation_feature", "_UI_ICodeGenConfigInfo_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getICodeGenConfigInfo_StatechartImplementation(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Initialization Code feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addInitializationCodePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_ICodeGenConfigInfo_initializationCode_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_ICodeGenConfigInfo_initializationCode_feature", "_UI_ICodeGenConfigInfo_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getICodeGenConfigInfo_InitializationCode(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Checks List feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addChecksListPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_ICodeGenConfigInfo_checksList_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_ICodeGenConfigInfo_checksList_feature", "_UI_ICodeGenConfigInfo_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getICodeGenConfigInfo_ChecksList(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Scope Elements feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addScopeElementsPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_ICodeGenConfigInfo_ScopeElements_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_ICodeGenConfigInfo_ScopeElements_feature", "_UI_ICodeGenConfigInfo_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getICodeGenConfigInfo_ScopeElements(),
+				 true,
+				 false,
+				 true,
+				 null,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Weak CG Time feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addWeakCGTimePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_ICodeGenConfigInfo_weakCGTime_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_ICodeGenConfigInfo_weakCGTime_feature", "_UI_ICodeGenConfigInfo_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getICodeGenConfigInfo_WeakCGTime(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Strong CG Time feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addStrongCGTimePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_ICodeGenConfigInfo_strongCGTime_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_ICodeGenConfigInfo_strongCGTime_feature", "_UI_ICodeGenConfigInfo_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getICodeGenConfigInfo_StrongCGTime(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Mall In Anim Scope feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_allInAnimScopePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_ICodeGenConfigInfo_m_allInAnimScope_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_ICodeGenConfigInfo_m_allInAnimScope_feature", "_UI_ICodeGenConfigInfo_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getICodeGenConfigInfo_M_allInAnimScope(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Mgenerate Usecases feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_generateUsecasesPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_ICodeGenConfigInfo_m_generateUsecases_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_ICodeGenConfigInfo_m_generateUsecases_feature", "_UI_ICodeGenConfigInfo_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getICodeGenConfigInfo_M_generateUsecases(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Last ID feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addLastIDPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_ICodeGenConfigInfo_lastID_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_ICodeGenConfigInfo_lastID_feature", "_UI_ICodeGenConfigInfo_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getICodeGenConfigInfo_LastID(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Cmheader feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addCmheaderPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_ICodeGenConfigInfo_cmheader_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_ICodeGenConfigInfo_cmheader_feature", "_UI_ICodeGenConfigInfo_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getICodeGenConfigInfo_Cmheader(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Requiremen Tracability Handle feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addRequiremenTracabilityHandlePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_ICodeGenConfigInfo_requiremenTracabilityHandle_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_ICodeGenConfigInfo_requiremenTracabilityHandle_feature", "_UI_ICodeGenConfigInfo_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getICodeGenConfigInfo_RequiremenTracabilityHandle(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Code Update CG Time feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addCodeUpdateCGTimePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_ICodeGenConfigInfo_codeUpdateCGTime_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_ICodeGenConfigInfo_codeUpdateCGTime_feature", "_UI_ICodeGenConfigInfo_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getICodeGenConfigInfo_CodeUpdateCGTime(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Object Creation feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addObjectCreationPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_ICodeGenConfigInfo_objectCreation_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_ICodeGenConfigInfo_objectCreation_feature", "_UI_ICodeGenConfigInfo_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getICodeGenConfigInfo_ObjectCreation(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Uml Dependency ID feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addUmlDependencyIDPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_ICodeGenConfigInfo_umlDependencyID_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_ICodeGenConfigInfo_umlDependencyID_feature", "_UI_ICodeGenConfigInfo_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getICodeGenConfigInfo_UmlDependencyID(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This specifies how to implement {@link #getChildren} and is used to deduce an appropriate feature for an
+	 * {@link org.eclipse.emf.edit.command.AddCommand}, {@link org.eclipse.emf.edit.command.RemoveCommand} or
+	 * {@link org.eclipse.emf.edit.command.MoveCommand} in {@link #createCommand}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Collection<? extends EStructuralFeature> getChildrenFeatures(Object object) {
+		if (childrenFeatures == null) {
+			super.getChildrenFeatures(object);
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getICodeGenConfigInfo_HyperLinks());
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getICodeGenConfigInfo_Root());
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getICodeGenConfigInfo_Dependencies());
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getICodeGenConfigInfo_InitialInstances());
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getICodeGenConfigInfo_Properties());
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getICodeGenConfigInfo_Annotations());
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getICodeGenConfigInfo_Description());
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getICodeGenConfigInfo_Tags());
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getICodeGenConfigInfo_Stereotypes());
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getICodeGenConfigInfo_AnimScopeElements());
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getICodeGenConfigInfo_EmbededFiles());
+		}
+		return childrenFeatures;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EStructuralFeature getChildFeature(Object object, Object child) {
+		// Check the type of the specified child object and return the proper feature to use for
+		// adding (see {@link AddCommand}) it as a child.
+
+		return super.getChildFeature(object, child);
+	}
+
+	/**
+	 * This returns ICodeGenConfigInfo.gif.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object getImage(Object object) {
+		return overlayImage(object, getResourceLocator().getImage("full/obj16/ICodeGenConfigInfo")); //$NON-NLS-1$
+	}
+
+	/**
+	 * This returns the label text for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String getText(Object object) {
+		String label = ((ICodeGenConfigInfo)object).getName();
+		return label == null || label.length() == 0 ?
+			getString("_UI_ICodeGenConfigInfo_type") : //$NON-NLS-1$
+			getString("_UI_ICodeGenConfigInfo_type") + " " + label; //$NON-NLS-1$ //$NON-NLS-2$
+	}
+	
+
+	/**
+	 * This handles model notifications by calling {@link #updateChildren} to update any cached
+	 * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void notifyChanged(Notification notification) {
+		updateChildren(notification);
+
+		switch (notification.getFeatureID(ICodeGenConfigInfo.class)) {
+			case UMLRpyPackage.ICODE_GEN_CONFIG_INFO__ID:
+			case UMLRpyPackage.ICODE_GEN_CONFIG_INFO__MY_STATE:
+			case UMLRpyPackage.ICODE_GEN_CONFIG_INFO__NAME:
+			case UMLRpyPackage.ICODE_GEN_CONFIG_INFO__MODIFIED_TIME_WEAK:
+			case UMLRpyPackage.ICODE_GEN_CONFIG_INFO__SCOPE_TYPE:
+			case UMLRpyPackage.ICODE_GEN_CONFIG_INFO__LIBRARIES:
+			case UMLRpyPackage.ICODE_GEN_CONFIG_INFO__ADDITIONAL_SOURCES:
+			case UMLRpyPackage.ICODE_GEN_CONFIG_INFO__STANDARD_HEADERS:
+			case UMLRpyPackage.ICODE_GEN_CONFIG_INFO__INCLUDE_PATH:
+			case UMLRpyPackage.ICODE_GEN_CONFIG_INFO__TARGET_MAIN:
+			case UMLRpyPackage.ICODE_GEN_CONFIG_INFO__INSTRUMENTATION:
+			case UMLRpyPackage.ICODE_GEN_CONFIG_INFO__TIME_MODEL:
+			case UMLRpyPackage.ICODE_GEN_CONFIG_INFO__MGENERATE_ACTORS:
+			case UMLRpyPackage.ICODE_GEN_CONFIG_INFO__STATECHART_IMPLEMENTATION:
+			case UMLRpyPackage.ICODE_GEN_CONFIG_INFO__INITIALIZATION_CODE:
+			case UMLRpyPackage.ICODE_GEN_CONFIG_INFO__CHECKS_LIST:
+			case UMLRpyPackage.ICODE_GEN_CONFIG_INFO__WEAK_CG_TIME:
+			case UMLRpyPackage.ICODE_GEN_CONFIG_INFO__STRONG_CG_TIME:
+			case UMLRpyPackage.ICODE_GEN_CONFIG_INFO__MALL_IN_ANIM_SCOPE:
+			case UMLRpyPackage.ICODE_GEN_CONFIG_INFO__MGENERATE_USECASES:
+			case UMLRpyPackage.ICODE_GEN_CONFIG_INFO__LAST_ID:
+			case UMLRpyPackage.ICODE_GEN_CONFIG_INFO__CMHEADER:
+			case UMLRpyPackage.ICODE_GEN_CONFIG_INFO__REQUIREMEN_TRACABILITY_HANDLE:
+			case UMLRpyPackage.ICODE_GEN_CONFIG_INFO__CODE_UPDATE_CG_TIME:
+			case UMLRpyPackage.ICODE_GEN_CONFIG_INFO__OBJECT_CREATION:
+			case UMLRpyPackage.ICODE_GEN_CONFIG_INFO__UML_DEPENDENCY_ID:
+				fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), false, true));
+				return;
+			case UMLRpyPackage.ICODE_GEN_CONFIG_INFO__HYPER_LINKS:
+			case UMLRpyPackage.ICODE_GEN_CONFIG_INFO__ROOT:
+			case UMLRpyPackage.ICODE_GEN_CONFIG_INFO__DEPENDENCIES:
+			case UMLRpyPackage.ICODE_GEN_CONFIG_INFO__INITIAL_INSTANCES:
+			case UMLRpyPackage.ICODE_GEN_CONFIG_INFO__PROPERTIES:
+			case UMLRpyPackage.ICODE_GEN_CONFIG_INFO__ANNOTATIONS:
+			case UMLRpyPackage.ICODE_GEN_CONFIG_INFO__DESCRIPTION:
+			case UMLRpyPackage.ICODE_GEN_CONFIG_INFO__TAGS:
+			case UMLRpyPackage.ICODE_GEN_CONFIG_INFO__STEREOTYPES:
+			case UMLRpyPackage.ICODE_GEN_CONFIG_INFO__ANIM_SCOPE_ELEMENTS:
+			case UMLRpyPackage.ICODE_GEN_CONFIG_INFO__EMBEDED_FILES:
+				fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), true, false));
+				return;
+		}
+		super.notifyChanged(notification);
+	}
+
+	/**
+	 * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children
+	 * that can be created under this object.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) {
+		super.collectNewChildDescriptors(newChildDescriptors, object);
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getICodeGenConfigInfo_HyperLinks(),
+				 UMLRpyFactory.eINSTANCE.createIMHyperLink()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getICodeGenConfigInfo_Root(),
+				 UMLRpyFactory.eINSTANCE.createIFolder()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getICodeGenConfigInfo_Dependencies(),
+				 UMLRpyFactory.eINSTANCE.createIDependency()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getICodeGenConfigInfo_Dependencies(),
+				 UMLRpyFactory.eINSTANCE.createIHyperLink()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getICodeGenConfigInfo_InitialInstances(),
+				 UMLRpyFactory.eINSTANCE.createIUnit()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getICodeGenConfigInfo_InitialInstances(),
+				 UMLRpyFactory.eINSTANCE.createIClassifier()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getICodeGenConfigInfo_InitialInstances(),
+				 UMLRpyFactory.eINSTANCE.createIActor()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getICodeGenConfigInfo_InitialInstances(),
+				 UMLRpyFactory.eINSTANCE.createIAnnotation()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getICodeGenConfigInfo_InitialInstances(),
+				 UMLRpyFactory.eINSTANCE.createIVariable()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getICodeGenConfigInfo_InitialInstances(),
+				 UMLRpyFactory.eINSTANCE.createIArgument()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getICodeGenConfigInfo_InitialInstances(),
+				 UMLRpyFactory.eINSTANCE.createIClass()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getICodeGenConfigInfo_InitialInstances(),
+				 UMLRpyFactory.eINSTANCE.createIAssociationClass()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getICodeGenConfigInfo_InitialInstances(),
+				 UMLRpyFactory.eINSTANCE.createIAttribute()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getICodeGenConfigInfo_InitialInstances(),
+				 UMLRpyFactory.eINSTANCE.createIDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getICodeGenConfigInfo_InitialInstances(),
+				 UMLRpyFactory.eINSTANCE.createICollaborationDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getICodeGenConfigInfo_InitialInstances(),
+				 UMLRpyFactory.eINSTANCE.createIComment()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getICodeGenConfigInfo_InitialInstances(),
+				 UMLRpyFactory.eINSTANCE.createIComponent()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getICodeGenConfigInfo_InitialInstances(),
+				 UMLRpyFactory.eINSTANCE.createIComponentDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getICodeGenConfigInfo_InitialInstances(),
+				 UMLRpyFactory.eINSTANCE.createIConstraint()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getICodeGenConfigInfo_InitialInstances(),
+				 UMLRpyFactory.eINSTANCE.createIControlledFile()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getICodeGenConfigInfo_InitialInstances(),
+				 UMLRpyFactory.eINSTANCE.createIDeploymentDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getICodeGenConfigInfo_InitialInstances(),
+				 UMLRpyFactory.eINSTANCE.createIInterfaceItem()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getICodeGenConfigInfo_InitialInstances(),
+				 UMLRpyFactory.eINSTANCE.createIEvent()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getICodeGenConfigInfo_InitialInstances(),
+				 UMLRpyFactory.eINSTANCE.createIEventReception()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getICodeGenConfigInfo_InitialInstances(),
+				 UMLRpyFactory.eINSTANCE.createIFile()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getICodeGenConfigInfo_InitialInstances(),
+				 UMLRpyFactory.eINSTANCE.createIFlowItem()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getICodeGenConfigInfo_InitialInstances(),
+				 UMLRpyFactory.eINSTANCE.createIRelation()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getICodeGenConfigInfo_InitialInstances(),
+				 UMLRpyFactory.eINSTANCE.createIInstance()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getICodeGenConfigInfo_InitialInstances(),
+				 UMLRpyFactory.eINSTANCE.createILink()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getICodeGenConfigInfo_InitialInstances(),
+				 UMLRpyFactory.eINSTANCE.createIMatrixLayout()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getICodeGenConfigInfo_InitialInstances(),
+				 UMLRpyFactory.eINSTANCE.createIMatrixView()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getICodeGenConfigInfo_InitialInstances(),
+				 UMLRpyFactory.eINSTANCE.createIModule()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getICodeGenConfigInfo_InitialInstances(),
+				 UMLRpyFactory.eINSTANCE.createINode()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getICodeGenConfigInfo_InitialInstances(),
+				 UMLRpyFactory.eINSTANCE.createIObjectModelDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getICodeGenConfigInfo_InitialInstances(),
+				 UMLRpyFactory.eINSTANCE.createIOperation()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getICodeGenConfigInfo_InitialInstances(),
+				 UMLRpyFactory.eINSTANCE.createIPackage()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getICodeGenConfigInfo_InitialInstances(),
+				 UMLRpyFactory.eINSTANCE.createIPanelDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getICodeGenConfigInfo_InitialInstances(),
+				 UMLRpyFactory.eINSTANCE.createIPort()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getICodeGenConfigInfo_InitialInstances(),
+				 UMLRpyFactory.eINSTANCE.createIProfile()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getICodeGenConfigInfo_InitialInstances(),
+				 UMLRpyFactory.eINSTANCE.createIProject()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getICodeGenConfigInfo_InitialInstances(),
+				 UMLRpyFactory.eINSTANCE.createIRequirement()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getICodeGenConfigInfo_InitialInstances(),
+				 UMLRpyFactory.eINSTANCE.createISequenceDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getICodeGenConfigInfo_InitialInstances(),
+				 UMLRpyFactory.eINSTANCE.createIStateChart()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getICodeGenConfigInfo_InitialInstances(),
+				 UMLRpyFactory.eINSTANCE.createIStateChartDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getICodeGenConfigInfo_InitialInstances(),
+				 UMLRpyFactory.eINSTANCE.createIStereotype()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getICodeGenConfigInfo_InitialInstances(),
+				 UMLRpyFactory.eINSTANCE.createIStructureDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getICodeGenConfigInfo_InitialInstances(),
+				 UMLRpyFactory.eINSTANCE.createISysMLPort()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getICodeGenConfigInfo_InitialInstances(),
+				 UMLRpyFactory.eINSTANCE.createITableLayout()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getICodeGenConfigInfo_InitialInstances(),
+				 UMLRpyFactory.eINSTANCE.createITableView()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getICodeGenConfigInfo_InitialInstances(),
+				 UMLRpyFactory.eINSTANCE.createITag()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getICodeGenConfigInfo_InitialInstances(),
+				 UMLRpyFactory.eINSTANCE.createITemplateParameter()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getICodeGenConfigInfo_InitialInstances(),
+				 UMLRpyFactory.eINSTANCE.createIType()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getICodeGenConfigInfo_InitialInstances(),
+				 UMLRpyFactory.eINSTANCE.createIUseCase()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getICodeGenConfigInfo_InitialInstances(),
+				 UMLRpyFactory.eINSTANCE.createIUseCaseDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getICodeGenConfigInfo_Properties(),
+				 UMLRpyFactory.eINSTANCE.createIPropertyContainer()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getICodeGenConfigInfo_Annotations(),
+				 UMLRpyFactory.eINSTANCE.createIComment()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getICodeGenConfigInfo_Description(),
+				 UMLRpyFactory.eINSTANCE.createIDescription()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getICodeGenConfigInfo_Tags(),
+				 UMLRpyFactory.eINSTANCE.createITag()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getICodeGenConfigInfo_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIClassifier()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getICodeGenConfigInfo_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIActor()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getICodeGenConfigInfo_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIClass()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getICodeGenConfigInfo_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIAssociationClass()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getICodeGenConfigInfo_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIInterfaceItem()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getICodeGenConfigInfo_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIEvent()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getICodeGenConfigInfo_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIEventReception()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getICodeGenConfigInfo_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIFlowItem()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getICodeGenConfigInfo_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createINode()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getICodeGenConfigInfo_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIOperation()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getICodeGenConfigInfo_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIStateChart()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getICodeGenConfigInfo_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIStereotype()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getICodeGenConfigInfo_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIType()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getICodeGenConfigInfo_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIUseCase()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getICodeGenConfigInfo_AnimScopeElements(),
+				 UMLRpyFactory.eINSTANCE.createIState()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getICodeGenConfigInfo_AnimScopeElements(),
+				 UMLRpyFactory.eINSTANCE.createIAcceptEventAction()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getICodeGenConfigInfo_AnimScopeElements(),
+				 UMLRpyFactory.eINSTANCE.createIAcceptTimeEvent()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getICodeGenConfigInfo_AnimScopeElements(),
+				 UMLRpyFactory.eINSTANCE.createIActivityDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getICodeGenConfigInfo_AnimScopeElements(),
+				 UMLRpyFactory.eINSTANCE.createIActivityGraph()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getICodeGenConfigInfo_AnimScopeElements(),
+				 UMLRpyFactory.eINSTANCE.createIActor()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getICodeGenConfigInfo_AnimScopeElements(),
+				 UMLRpyFactory.eINSTANCE.createIClass()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getICodeGenConfigInfo_AnimScopeElements(),
+				 UMLRpyFactory.eINSTANCE.createIAssociationClass()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getICodeGenConfigInfo_AnimScopeElements(),
+				 UMLRpyFactory.eINSTANCE.createIAttribute()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getICodeGenConfigInfo_AnimScopeElements(),
+				 UMLRpyFactory.eINSTANCE.createICallOperation()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getICodeGenConfigInfo_AnimScopeElements(),
+				 UMLRpyFactory.eINSTANCE.createICodeGenConfigInfo()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getICodeGenConfigInfo_AnimScopeElements(),
+				 UMLRpyFactory.eINSTANCE.createIDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getICodeGenConfigInfo_AnimScopeElements(),
+				 UMLRpyFactory.eINSTANCE.createICollaborationDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getICodeGenConfigInfo_AnimScopeElements(),
+				 UMLRpyFactory.eINSTANCE.createIComponent()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getICodeGenConfigInfo_AnimScopeElements(),
+				 UMLRpyFactory.eINSTANCE.createIComponentDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getICodeGenConfigInfo_AnimScopeElements(),
+				 UMLRpyFactory.eINSTANCE.createIDefaultDrvdTrans()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getICodeGenConfigInfo_AnimScopeElements(),
+				 UMLRpyFactory.eINSTANCE.createIDependency()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getICodeGenConfigInfo_AnimScopeElements(),
+				 UMLRpyFactory.eINSTANCE.createIDeploymentDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getICodeGenConfigInfo_AnimScopeElements(),
+				 UMLRpyFactory.eINSTANCE.createIHyperLink()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getICodeGenConfigInfo_AnimScopeElements(),
+				 UMLRpyFactory.eINSTANCE.createIInformationFlow()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getICodeGenConfigInfo_AnimScopeElements(),
+				 UMLRpyFactory.eINSTANCE.createIInformationItem()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getICodeGenConfigInfo_AnimScopeElements(),
+				 UMLRpyFactory.eINSTANCE.createIMSC()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getICodeGenConfigInfo_AnimScopeElements(),
+				 UMLRpyFactory.eINSTANCE.createIMatrixInstance()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getICodeGenConfigInfo_AnimScopeElements(),
+				 UMLRpyFactory.eINSTANCE.createIMessage()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getICodeGenConfigInfo_AnimScopeElements(),
+				 UMLRpyFactory.eINSTANCE.createIModule()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getICodeGenConfigInfo_AnimScopeElements(),
+				 UMLRpyFactory.eINSTANCE.createIObjectLink()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getICodeGenConfigInfo_AnimScopeElements(),
+				 UMLRpyFactory.eINSTANCE.createIObjectModelDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getICodeGenConfigInfo_AnimScopeElements(),
+				 UMLRpyFactory.eINSTANCE.createIObjectNode()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getICodeGenConfigInfo_AnimScopeElements(),
+				 UMLRpyFactory.eINSTANCE.createIPanelDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getICodeGenConfigInfo_AnimScopeElements(),
+				 UMLRpyFactory.eINSTANCE.createIPart()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getICodeGenConfigInfo_AnimScopeElements(),
+				 UMLRpyFactory.eINSTANCE.createIPrimitiveOperation()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getICodeGenConfigInfo_AnimScopeElements(),
+				 UMLRpyFactory.eINSTANCE.createIProfile()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getICodeGenConfigInfo_AnimScopeElements(),
+				 UMLRpyFactory.eINSTANCE.createIReception()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getICodeGenConfigInfo_AnimScopeElements(),
+				 UMLRpyFactory.eINSTANCE.createIReferenceActivity()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getICodeGenConfigInfo_AnimScopeElements(),
+				 UMLRpyFactory.eINSTANCE.createIRequirement()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getICodeGenConfigInfo_AnimScopeElements(),
+				 UMLRpyFactory.eINSTANCE.createISequenceDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getICodeGenConfigInfo_AnimScopeElements(),
+				 UMLRpyFactory.eINSTANCE.createIStateChart()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getICodeGenConfigInfo_AnimScopeElements(),
+				 UMLRpyFactory.eINSTANCE.createIStateChartDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getICodeGenConfigInfo_AnimScopeElements(),
+				 UMLRpyFactory.eINSTANCE.createIStereotype()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getICodeGenConfigInfo_AnimScopeElements(),
+				 UMLRpyFactory.eINSTANCE.createIStructureDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getICodeGenConfigInfo_AnimScopeElements(),
+				 UMLRpyFactory.eINSTANCE.createISubsystem()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getICodeGenConfigInfo_AnimScopeElements(),
+				 UMLRpyFactory.eINSTANCE.createISysMLPort()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getICodeGenConfigInfo_AnimScopeElements(),
+				 UMLRpyFactory.eINSTANCE.createITableInstance()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getICodeGenConfigInfo_AnimScopeElements(),
+				 UMLRpyFactory.eINSTANCE.createITransition()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getICodeGenConfigInfo_AnimScopeElements(),
+				 UMLRpyFactory.eINSTANCE.createIType()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getICodeGenConfigInfo_AnimScopeElements(),
+				 UMLRpyFactory.eINSTANCE.createIUCDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getICodeGenConfigInfo_AnimScopeElements(),
+				 UMLRpyFactory.eINSTANCE.createIUseCase()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getICodeGenConfigInfo_AnimScopeElements(),
+				 UMLRpyFactory.eINSTANCE.createIUseCaseDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getICodeGenConfigInfo_EmbededFiles(),
+				 UMLRpyFactory.eINSTANCE.createIEmbededFile()));
+	}
+
+	/**
+	 * This returns the label text for {@link org.eclipse.emf.edit.command.CreateChildCommand}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String getCreateChildText(Object owner, Object feature, Object child, Collection<?> selection) {
+		Object childFeature = feature;
+		Object childObject = child;
+
+		boolean qualify =
+			childFeature == UMLRpyPackage.eINSTANCE.getICodeGenConfigInfo_Dependencies() ||
+			childFeature == UMLRpyPackage.eINSTANCE.getICodeGenConfigInfo_AnimScopeElements() ||
+			childFeature == UMLRpyPackage.eINSTANCE.getICodeGenConfigInfo_InitialInstances() ||
+			childFeature == UMLRpyPackage.eINSTANCE.getICodeGenConfigInfo_Stereotypes() ||
+			childFeature == UMLRpyPackage.eINSTANCE.getICodeGenConfigInfo_Annotations() ||
+			childFeature == UMLRpyPackage.eINSTANCE.getICodeGenConfigInfo_Tags();
+
+		if (qualify) {
+			return getString
+				("_UI_CreateChild_text2", //$NON-NLS-1$
+				 new Object[] { getTypeText(childObject), getFeatureText(childFeature), getTypeText(owner) });
+		}
+		return super.getCreateChildText(owner, feature, child, selection);
+	}
+
+}
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/ICollaborationDiagramItemProvider.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/ICollaborationDiagramItemProvider.java
new file mode 100755
index 0000000..71d1192
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/ICollaborationDiagramItemProvider.java
@@ -0,0 +1,185 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.provider;
+
+
+import java.util.Collection;
+import java.util.List;
+
+import org.eclipse.emf.common.notify.AdapterFactory;
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.ecore.EStructuralFeature;
+
+import org.eclipse.emf.edit.provider.IItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.ViewerNotification;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ICollaborationDiagram;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyFactory;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ICollaborationDiagram} object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class ICollaborationDiagramItemProvider extends IDiagramItemProvider {
+	/**
+	 * This constructs an instance from a factory and a notifier.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public ICollaborationDiagramItemProvider(AdapterFactory adapterFactory) {
+		super(adapterFactory);
+	}
+
+	/**
+	 * This returns the property descriptors for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) {
+		if (itemPropertyDescriptors == null) {
+			super.getPropertyDescriptors(object);
+
+		}
+		return itemPropertyDescriptors;
+	}
+
+	/**
+	 * This specifies how to implement {@link #getChildren} and is used to deduce an appropriate feature for an
+	 * {@link org.eclipse.emf.edit.command.AddCommand}, {@link org.eclipse.emf.edit.command.RemoveCommand} or
+	 * {@link org.eclipse.emf.edit.command.MoveCommand} in {@link #createCommand}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Collection<? extends EStructuralFeature> getChildrenFeatures(Object object) {
+		if (childrenFeatures == null) {
+			super.getChildrenFeatures(object);
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getICollaborationDiagram_M_pICollaboration());
+		}
+		return childrenFeatures;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EStructuralFeature getChildFeature(Object object, Object child) {
+		// Check the type of the specified child object and return the proper feature to use for
+		// adding (see {@link AddCommand}) it as a child.
+
+		return super.getChildFeature(object, child);
+	}
+
+	/**
+	 * This returns ICollaborationDiagram.gif.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object getImage(Object object) {
+		return overlayImage(object, getResourceLocator().getImage("full/obj16/ICollaborationDiagram")); //$NON-NLS-1$
+	}
+
+	/**
+	 * This returns the label text for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String getText(Object object) {
+		String label = ((ICollaborationDiagram)object).getName();
+		return label == null || label.length() == 0 ?
+			getString("_UI_ICollaborationDiagram_type") : //$NON-NLS-1$
+			getString("_UI_ICollaborationDiagram_type") + " " + label; //$NON-NLS-1$ //$NON-NLS-2$
+	}
+	
+
+	/**
+	 * This handles model notifications by calling {@link #updateChildren} to update any cached
+	 * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void notifyChanged(Notification notification) {
+		updateChildren(notification);
+
+		switch (notification.getFeatureID(ICollaborationDiagram.class)) {
+			case UMLRpyPackage.ICOLLABORATION_DIAGRAM__MPI_COLLABORATION:
+				fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), true, false));
+				return;
+		}
+		super.notifyChanged(notification);
+	}
+
+	/**
+	 * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children
+	 * that can be created under this object.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) {
+		super.collectNewChildDescriptors(newChildDescriptors, object);
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getICollaborationDiagram_M_pICollaboration(),
+				 UMLRpyFactory.eINSTANCE.createICollaboration()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getICollaborationDiagram_M_pICollaboration(),
+				 UMLRpyFactory.eINSTANCE.createIInteractionOperand()));
+	}
+
+	/**
+	 * This returns the label text for {@link org.eclipse.emf.edit.command.CreateChildCommand}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String getCreateChildText(Object owner, Object feature, Object child, Collection<?> selection) {
+		Object childFeature = feature;
+		Object childObject = child;
+
+		boolean qualify =
+			childFeature == UMLRpyPackage.eINSTANCE.getIDiagram_Stereotypes() ||
+			childFeature == UMLRpyPackage.eINSTANCE.getIDiagram_Annotations() ||
+			childFeature == UMLRpyPackage.eINSTANCE.getICollaborationDiagram_M_pICollaboration() ||
+			childFeature == UMLRpyPackage.eINSTANCE.getIDiagram_HyperLinks();
+
+		if (qualify) {
+			return getString
+				("_UI_CreateChild_text2", //$NON-NLS-1$
+				 new Object[] { getTypeText(childObject), getFeatureText(childFeature), getTypeText(owner) });
+		}
+		return super.getCreateChildText(owner, feature, child, selection);
+	}
+
+}
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/ICollaborationItemProvider.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/ICollaborationItemProvider.java
new file mode 100755
index 0000000..801b669
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/ICollaborationItemProvider.java
@@ -0,0 +1,304 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.provider;
+
+
+import java.util.Collection;
+import java.util.List;
+
+import org.eclipse.emf.common.notify.AdapterFactory;
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.ecore.EStructuralFeature;
+
+import org.eclipse.emf.edit.provider.ComposeableAdapterFactory;
+import org.eclipse.emf.edit.provider.IItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.ItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.ViewerNotification;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ICollaboration;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyFactory;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ICollaboration} object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class ICollaborationItemProvider extends IModelElementItemProvider {
+	/**
+	 * This constructs an instance from a factory and a notifier.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public ICollaborationItemProvider(AdapterFactory adapterFactory) {
+		super(adapterFactory);
+	}
+
+	/**
+	 * This returns the property descriptors for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) {
+		if (itemPropertyDescriptors == null) {
+			super.getPropertyDescriptors(object);
+
+			addIdPropertyDescriptor(object);
+			addModifiedTimeWeakPropertyDescriptor(object);
+			addObjectCreationPropertyDescriptor(object);
+			addUmlDependencyIDPropertyDescriptor(object);
+		}
+		return itemPropertyDescriptors;
+	}
+
+	/**
+	 * This adds a property descriptor for the Id feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addIdPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_ICollaboration_id_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_ICollaboration_id_feature", "_UI_ICollaboration_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getICollaboration_Id(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Modified Time Weak feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addModifiedTimeWeakPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_ICollaboration_modifiedTimeWeak_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_ICollaboration_modifiedTimeWeak_feature", "_UI_ICollaboration_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getICollaboration_ModifiedTimeWeak(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Object Creation feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addObjectCreationPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_ICollaboration_objectCreation_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_ICollaboration_objectCreation_feature", "_UI_ICollaboration_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getICollaboration_ObjectCreation(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Uml Dependency ID feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addUmlDependencyIDPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_ICollaboration_umlDependencyID_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_ICollaboration_umlDependencyID_feature", "_UI_ICollaboration_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getICollaboration_UmlDependencyID(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This specifies how to implement {@link #getChildren} and is used to deduce an appropriate feature for an
+	 * {@link org.eclipse.emf.edit.command.AddCommand}, {@link org.eclipse.emf.edit.command.RemoveCommand} or
+	 * {@link org.eclipse.emf.edit.command.MoveCommand} in {@link #createCommand}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Collection<? extends EStructuralFeature> getChildrenFeatures(Object object) {
+		if (childrenFeatures == null) {
+			super.getChildrenFeatures(object);
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getICollaboration_ClassifierRoles());
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getICollaboration_Messages());
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getICollaboration_Annotations());
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getICollaboration_AssociationRoles());
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getICollaboration_CombinedFragments());
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getICollaboration_P_MessageHandler());
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getICollaboration_InteractionOccurrences());
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getICollaboration_ExecutionOccurrences());
+		}
+		return childrenFeatures;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EStructuralFeature getChildFeature(Object object, Object child) {
+		// Check the type of the specified child object and return the proper feature to use for
+		// adding (see {@link AddCommand}) it as a child.
+
+		return super.getChildFeature(object, child);
+	}
+
+	/**
+	 * This returns ICollaboration.gif.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object getImage(Object object) {
+		return overlayImage(object, getResourceLocator().getImage("full/obj16/ICollaboration")); //$NON-NLS-1$
+	}
+
+	/**
+	 * This returns the label text for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String getText(Object object) {
+		String label = ((ICollaboration)object).getDisplayName();
+		return label == null || label.length() == 0 ?
+			getString("_UI_ICollaboration_type") : //$NON-NLS-1$
+			getString("_UI_ICollaboration_type") + " " + label; //$NON-NLS-1$ //$NON-NLS-2$
+	}
+	
+
+	/**
+	 * This handles model notifications by calling {@link #updateChildren} to update any cached
+	 * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void notifyChanged(Notification notification) {
+		updateChildren(notification);
+
+		switch (notification.getFeatureID(ICollaboration.class)) {
+			case UMLRpyPackage.ICOLLABORATION__ID:
+			case UMLRpyPackage.ICOLLABORATION__MODIFIED_TIME_WEAK:
+			case UMLRpyPackage.ICOLLABORATION__OBJECT_CREATION:
+			case UMLRpyPackage.ICOLLABORATION__UML_DEPENDENCY_ID:
+				fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), false, true));
+				return;
+			case UMLRpyPackage.ICOLLABORATION__CLASSIFIER_ROLES:
+			case UMLRpyPackage.ICOLLABORATION__MESSAGES:
+			case UMLRpyPackage.ICOLLABORATION__ANNOTATIONS:
+			case UMLRpyPackage.ICOLLABORATION__ASSOCIATION_ROLES:
+			case UMLRpyPackage.ICOLLABORATION__COMBINED_FRAGMENTS:
+			case UMLRpyPackage.ICOLLABORATION__PMESSAGE_HANDLER:
+			case UMLRpyPackage.ICOLLABORATION__INTERACTION_OCCURRENCES:
+			case UMLRpyPackage.ICOLLABORATION__EXECUTION_OCCURRENCES:
+				fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), true, false));
+				return;
+		}
+		super.notifyChanged(notification);
+	}
+
+	/**
+	 * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children
+	 * that can be created under this object.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) {
+		super.collectNewChildDescriptors(newChildDescriptors, object);
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getICollaboration_ClassifierRoles(),
+				 UMLRpyFactory.eINSTANCE.createIClassifierRole()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getICollaboration_Messages(),
+				 UMLRpyFactory.eINSTANCE.createIMessage()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getICollaboration_Annotations(),
+				 UMLRpyFactory.eINSTANCE.createIConstraint()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getICollaboration_AssociationRoles(),
+				 UMLRpyFactory.eINSTANCE.createIAssociationRole()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getICollaboration_CombinedFragments(),
+				 UMLRpyFactory.eINSTANCE.createICombinedFragment()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getICollaboration_P_MessageHandler(),
+				 UMLRpyFactory.eINSTANCE.createCollEvent()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getICollaboration_InteractionOccurrences(),
+				 UMLRpyFactory.eINSTANCE.createIInteractionOccurrence()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getICollaboration_ExecutionOccurrences(),
+				 UMLRpyFactory.eINSTANCE.createIExecutionOccurrence()));
+	}
+
+}
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/IColorItemProvider.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/IColorItemProvider.java
new file mode 100755
index 0000000..fb79e16
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/IColorItemProvider.java
@@ -0,0 +1,216 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.provider;
+
+
+import java.util.Collection;
+import java.util.List;
+
+import org.eclipse.emf.common.notify.AdapterFactory;
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.common.util.ResourceLocator;
+
+import org.eclipse.emf.edit.provider.ComposeableAdapterFactory;
+import org.eclipse.emf.edit.provider.IEditingDomainItemProvider;
+import org.eclipse.emf.edit.provider.IItemLabelProvider;
+import org.eclipse.emf.edit.provider.IItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.IItemPropertySource;
+import org.eclipse.emf.edit.provider.IStructuredItemContentProvider;
+import org.eclipse.emf.edit.provider.ITreeItemContentProvider;
+import org.eclipse.emf.edit.provider.ItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.ItemProviderAdapter;
+import org.eclipse.emf.edit.provider.ViewerNotification;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IColor;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IColor} object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class IColorItemProvider 
+	extends ItemProviderAdapter
+	implements
+		IEditingDomainItemProvider,
+		IStructuredItemContentProvider,
+		ITreeItemContentProvider,
+		IItemLabelProvider,
+		IItemPropertySource {
+	/**
+	 * This constructs an instance from a factory and a notifier.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IColorItemProvider(AdapterFactory adapterFactory) {
+		super(adapterFactory);
+	}
+
+	/**
+	 * This returns the property descriptors for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) {
+		if (itemPropertyDescriptors == null) {
+			super.getPropertyDescriptors(object);
+
+			addM_fgColorPropertyDescriptor(object);
+			addM_bgColorPropertyDescriptor(object);
+			addM_bgFlagPropertyDescriptor(object);
+		}
+		return itemPropertyDescriptors;
+	}
+
+	/**
+	 * This adds a property descriptor for the Mfg Color feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_fgColorPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IColor_m_fgColor_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IColor_m_fgColor_feature", "_UI_IColor_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIColor_M_fgColor(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Mbg Color feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_bgColorPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IColor_m_bgColor_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IColor_m_bgColor_feature", "_UI_IColor_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIColor_M_bgColor(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Mbg Flag feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_bgFlagPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IColor_m_bgFlag_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IColor_m_bgFlag_feature", "_UI_IColor_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIColor_M_bgFlag(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This returns IColor.gif.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object getImage(Object object) {
+		return overlayImage(object, getResourceLocator().getImage("full/obj16/IColor")); //$NON-NLS-1$
+	}
+
+	/**
+	 * This returns the label text for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String getText(Object object) {
+		String label = ((IColor)object).getM_fgColor();
+		return label == null || label.length() == 0 ?
+			getString("_UI_IColor_type") : //$NON-NLS-1$
+			getString("_UI_IColor_type") + " " + label; //$NON-NLS-1$ //$NON-NLS-2$
+	}
+	
+
+	/**
+	 * This handles model notifications by calling {@link #updateChildren} to update any cached
+	 * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void notifyChanged(Notification notification) {
+		updateChildren(notification);
+
+		switch (notification.getFeatureID(IColor.class)) {
+			case UMLRpyPackage.ICOLOR__MFG_COLOR:
+			case UMLRpyPackage.ICOLOR__MBG_COLOR:
+			case UMLRpyPackage.ICOLOR__MBG_FLAG:
+				fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), false, true));
+				return;
+		}
+		super.notifyChanged(notification);
+	}
+
+	/**
+	 * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children
+	 * that can be created under this object.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) {
+		super.collectNewChildDescriptors(newChildDescriptors, object);
+	}
+
+	/**
+	 * Return the resource locator for this item provider's resources.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public ResourceLocator getResourceLocator() {
+		return rpymetamodelEditPlugin.INSTANCE;
+	}
+
+}
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/ICombinedFragmentItemProvider.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/ICombinedFragmentItemProvider.java
new file mode 100755
index 0000000..af4fdd8
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/ICombinedFragmentItemProvider.java
@@ -0,0 +1,319 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.provider;
+
+
+import java.util.Collection;
+import java.util.List;
+
+import org.eclipse.emf.common.notify.AdapterFactory;
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.common.util.ResourceLocator;
+
+import org.eclipse.emf.ecore.EStructuralFeature;
+
+import org.eclipse.emf.edit.provider.ComposeableAdapterFactory;
+import org.eclipse.emf.edit.provider.IEditingDomainItemProvider;
+import org.eclipse.emf.edit.provider.IItemLabelProvider;
+import org.eclipse.emf.edit.provider.IItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.IItemPropertySource;
+import org.eclipse.emf.edit.provider.IStructuredItemContentProvider;
+import org.eclipse.emf.edit.provider.ITreeItemContentProvider;
+import org.eclipse.emf.edit.provider.ItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.ItemProviderAdapter;
+import org.eclipse.emf.edit.provider.ViewerNotification;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ICombinedFragment;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyFactory;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ICombinedFragment} object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class ICombinedFragmentItemProvider 
+	extends ItemProviderAdapter
+	implements
+		IEditingDomainItemProvider,
+		IStructuredItemContentProvider,
+		ITreeItemContentProvider,
+		IItemLabelProvider,
+		IItemPropertySource {
+	/**
+	 * This constructs an instance from a factory and a notifier.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public ICombinedFragmentItemProvider(AdapterFactory adapterFactory) {
+		super(adapterFactory);
+	}
+
+	/**
+	 * This returns the property descriptors for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) {
+		if (itemPropertyDescriptors == null) {
+			super.getPropertyDescriptors(object);
+
+			addIdPropertyDescriptor(object);
+			addMyStatePropertyDescriptor(object);
+			addNamePropertyDescriptor(object);
+			addModifiedTimeWeakPropertyDescriptor(object);
+			addInteractionOperatorPropertyDescriptor(object);
+		}
+		return itemPropertyDescriptors;
+	}
+
+	/**
+	 * This adds a property descriptor for the Id feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addIdPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_ICombinedFragment_id_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_ICombinedFragment_id_feature", "_UI_ICombinedFragment_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getICombinedFragment_Id(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the My State feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addMyStatePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_ICombinedFragment_myState_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_ICombinedFragment_myState_feature", "_UI_ICombinedFragment_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getICombinedFragment_MyState(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Name feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addNamePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_ICombinedFragment_name_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_ICombinedFragment_name_feature", "_UI_ICombinedFragment_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getICombinedFragment_Name(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Modified Time Weak feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addModifiedTimeWeakPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_ICombinedFragment_modifiedTimeWeak_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_ICombinedFragment_modifiedTimeWeak_feature", "_UI_ICombinedFragment_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getICombinedFragment_ModifiedTimeWeak(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Interaction Operator feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addInteractionOperatorPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_ICombinedFragment_interactionOperator_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_ICombinedFragment_interactionOperator_feature", "_UI_ICombinedFragment_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getICombinedFragment_InteractionOperator(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This specifies how to implement {@link #getChildren} and is used to deduce an appropriate feature for an
+	 * {@link org.eclipse.emf.edit.command.AddCommand}, {@link org.eclipse.emf.edit.command.RemoveCommand} or
+	 * {@link org.eclipse.emf.edit.command.MoveCommand} in {@link #createCommand}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Collection<? extends EStructuralFeature> getChildrenFeatures(Object object) {
+		if (childrenFeatures == null) {
+			super.getChildrenFeatures(object);
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getICombinedFragment_InteractionOperands());
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getICombinedFragment_Stereotypes());
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getICombinedFragment_Tags());
+		}
+		return childrenFeatures;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EStructuralFeature getChildFeature(Object object, Object child) {
+		// Check the type of the specified child object and return the proper feature to use for
+		// adding (see {@link AddCommand}) it as a child.
+
+		return super.getChildFeature(object, child);
+	}
+
+	/**
+	 * This returns ICombinedFragment.gif.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object getImage(Object object) {
+		return overlayImage(object, getResourceLocator().getImage("full/obj16/ICombinedFragment")); //$NON-NLS-1$
+	}
+
+	/**
+	 * This returns the label text for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String getText(Object object) {
+		String label = ((ICombinedFragment)object).getName();
+		return label == null || label.length() == 0 ?
+			getString("_UI_ICombinedFragment_type") : //$NON-NLS-1$
+			getString("_UI_ICombinedFragment_type") + " " + label; //$NON-NLS-1$ //$NON-NLS-2$
+	}
+	
+
+	/**
+	 * This handles model notifications by calling {@link #updateChildren} to update any cached
+	 * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void notifyChanged(Notification notification) {
+		updateChildren(notification);
+
+		switch (notification.getFeatureID(ICombinedFragment.class)) {
+			case UMLRpyPackage.ICOMBINED_FRAGMENT__ID:
+			case UMLRpyPackage.ICOMBINED_FRAGMENT__MY_STATE:
+			case UMLRpyPackage.ICOMBINED_FRAGMENT__NAME:
+			case UMLRpyPackage.ICOMBINED_FRAGMENT__MODIFIED_TIME_WEAK:
+			case UMLRpyPackage.ICOMBINED_FRAGMENT__INTERACTION_OPERATOR:
+				fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), false, true));
+				return;
+			case UMLRpyPackage.ICOMBINED_FRAGMENT__INTERACTION_OPERANDS:
+			case UMLRpyPackage.ICOMBINED_FRAGMENT__STEREOTYPES:
+			case UMLRpyPackage.ICOMBINED_FRAGMENT__TAGS:
+				fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), true, false));
+				return;
+		}
+		super.notifyChanged(notification);
+	}
+
+	/**
+	 * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children
+	 * that can be created under this object.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) {
+		super.collectNewChildDescriptors(newChildDescriptors, object);
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getICombinedFragment_InteractionOperands(),
+				 UMLRpyFactory.eINSTANCE.createIInteractionOperand()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getICombinedFragment_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIStereotype()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getICombinedFragment_Tags(),
+				 UMLRpyFactory.eINSTANCE.createITag()));
+	}
+
+	/**
+	 * Return the resource locator for this item provider's resources.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public ResourceLocator getResourceLocator() {
+		return rpymetamodelEditPlugin.INSTANCE;
+	}
+
+}
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/ICommentItemProvider.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/ICommentItemProvider.java
new file mode 100755
index 0000000..175fc7e
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/ICommentItemProvider.java
@@ -0,0 +1,424 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.provider;
+
+
+import java.util.Collection;
+import java.util.List;
+
+import org.eclipse.emf.common.notify.AdapterFactory;
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.ecore.EStructuralFeature;
+
+import org.eclipse.emf.edit.provider.ComposeableAdapterFactory;
+import org.eclipse.emf.edit.provider.IItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.ItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.ViewerNotification;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IComment;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyFactory;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IComment} object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class ICommentItemProvider extends IAnnotationItemProvider {
+	/**
+	 * This constructs an instance from a factory and a notifier.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public ICommentItemProvider(AdapterFactory adapterFactory) {
+		super(adapterFactory);
+	}
+
+	/**
+	 * This returns the property descriptors for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) {
+		if (itemPropertyDescriptors == null) {
+			super.getPropertyDescriptors(object);
+
+			addModifiedTimeWeakPropertyDescriptor(object);
+			addIdPropertyDescriptor(object);
+			addMyStatePropertyDescriptor(object);
+			addNamePropertyDescriptor(object);
+			addLastIDPropertyDescriptor(object);
+			addCodeUpdateCGTimePropertyDescriptor(object);
+			addTheMainDiagramPropertyDescriptor(object);
+		}
+		return itemPropertyDescriptors;
+	}
+
+	/**
+	 * This adds a property descriptor for the Modified Time Weak feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addModifiedTimeWeakPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_ValueType_modifiedTimeWeak_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_ValueType_modifiedTimeWeak_feature", "_UI_ValueType_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getValueType_ModifiedTimeWeak(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Id feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addIdPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_ValueType_id_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_ValueType_id_feature", "_UI_ValueType_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getValueType_Id(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the My State feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addMyStatePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_ValueType_myState_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_ValueType_myState_feature", "_UI_ValueType_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getValueType_MyState(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Name feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addNamePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_ValueType_name_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_ValueType_name_feature", "_UI_ValueType_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getValueType_Name(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Last ID feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addLastIDPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IComment_lastID_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IComment_lastID_feature", "_UI_IComment_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIComment_LastID(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Code Update CG Time feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addCodeUpdateCGTimePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IComment_codeUpdateCGTime_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IComment_codeUpdateCGTime_feature", "_UI_IComment_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIComment_CodeUpdateCGTime(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the The Main Diagram feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addTheMainDiagramPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IComment_theMainDiagram_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IComment_theMainDiagram_feature", "_UI_IComment_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIComment_TheMainDiagram(),
+				 true,
+				 false,
+				 true,
+				 null,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This specifies how to implement {@link #getChildren} and is used to deduce an appropriate feature for an
+	 * {@link org.eclipse.emf.edit.command.AddCommand}, {@link org.eclipse.emf.edit.command.RemoveCommand} or
+	 * {@link org.eclipse.emf.edit.command.MoveCommand} in {@link #createCommand}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Collection<? extends EStructuralFeature> getChildrenFeatures(Object object) {
+		if (childrenFeatures == null) {
+			super.getChildrenFeatures(object);
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getIComment_HyperLinks());
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getIComment_Anchors());
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getIComment_Dependencies());
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getIComment_Stereotypes());
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getIComment_Properties());
+		}
+		return childrenFeatures;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EStructuralFeature getChildFeature(Object object, Object child) {
+		// Check the type of the specified child object and return the proper feature to use for
+		// adding (see {@link AddCommand}) it as a child.
+
+		return super.getChildFeature(object, child);
+	}
+
+	/**
+	 * This returns IComment.gif.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object getImage(Object object) {
+		return overlayImage(object, getResourceLocator().getImage("full/obj16/IComment")); //$NON-NLS-1$
+	}
+
+	/**
+	 * This returns the label text for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String getText(Object object) {
+		String label = ((IComment)object).getName();
+		return label == null || label.length() == 0 ?
+			getString("_UI_IComment_type") : //$NON-NLS-1$
+			getString("_UI_IComment_type") + " " + label; //$NON-NLS-1$ //$NON-NLS-2$
+	}
+	
+
+	/**
+	 * This handles model notifications by calling {@link #updateChildren} to update any cached
+	 * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void notifyChanged(Notification notification) {
+		updateChildren(notification);
+
+		switch (notification.getFeatureID(IComment.class)) {
+			case UMLRpyPackage.ICOMMENT__MODIFIED_TIME_WEAK:
+			case UMLRpyPackage.ICOMMENT__ID:
+			case UMLRpyPackage.ICOMMENT__MY_STATE:
+			case UMLRpyPackage.ICOMMENT__NAME:
+			case UMLRpyPackage.ICOMMENT__LAST_ID:
+			case UMLRpyPackage.ICOMMENT__CODE_UPDATE_CG_TIME:
+				fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), false, true));
+				return;
+			case UMLRpyPackage.ICOMMENT__HYPER_LINKS:
+			case UMLRpyPackage.ICOMMENT__ANCHORS:
+			case UMLRpyPackage.ICOMMENT__DEPENDENCIES:
+			case UMLRpyPackage.ICOMMENT__STEREOTYPES:
+			case UMLRpyPackage.ICOMMENT__PROPERTIES:
+				fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), true, false));
+				return;
+		}
+		super.notifyChanged(notification);
+	}
+
+	/**
+	 * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children
+	 * that can be created under this object.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) {
+		super.collectNewChildDescriptors(newChildDescriptors, object);
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIComment_HyperLinks(),
+				 UMLRpyFactory.eINSTANCE.createIMHyperLink()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIComment_Anchors(),
+				 UMLRpyFactory.eINSTANCE.createIAnchor()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIComment_Dependencies(),
+				 UMLRpyFactory.eINSTANCE.createIDependency()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIComment_Dependencies(),
+				 UMLRpyFactory.eINSTANCE.createIHyperLink()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIComment_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIClassifier()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIComment_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIActor()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIComment_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIClass()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIComment_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIAssociationClass()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIComment_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIInterfaceItem()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIComment_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIEvent()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIComment_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIEventReception()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIComment_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIFlowItem()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIComment_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createINode()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIComment_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIOperation()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIComment_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIStateChart()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIComment_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIStereotype()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIComment_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIType()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIComment_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIUseCase()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIComment_Properties(),
+				 UMLRpyFactory.eINSTANCE.createIPropertyContainer()));
+	}
+
+}
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/IComponentDiagramItemProvider.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/IComponentDiagramItemProvider.java
new file mode 100755
index 0000000..b72cd19
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/IComponentDiagramItemProvider.java
@@ -0,0 +1,134 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.provider;
+
+
+import java.util.Collection;
+import java.util.List;
+
+import org.eclipse.emf.common.notify.AdapterFactory;
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.edit.provider.IItemPropertyDescriptor;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IComponentDiagram;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IComponentDiagram} object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class IComponentDiagramItemProvider extends IDiagramItemProvider {
+	/**
+	 * This constructs an instance from a factory and a notifier.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IComponentDiagramItemProvider(AdapterFactory adapterFactory) {
+		super(adapterFactory);
+	}
+
+	/**
+	 * This returns the property descriptors for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) {
+		if (itemPropertyDescriptors == null) {
+			super.getPropertyDescriptors(object);
+
+		}
+		return itemPropertyDescriptors;
+	}
+
+	/**
+	 * This returns IComponentDiagram.gif.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object getImage(Object object) {
+		return overlayImage(object, getResourceLocator().getImage("full/obj16/IComponentDiagram")); //$NON-NLS-1$
+	}
+
+	/**
+	 * This returns the label text for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String getText(Object object) {
+		String label = ((IComponentDiagram)object).getName();
+		return label == null || label.length() == 0 ?
+			getString("_UI_IComponentDiagram_type") : //$NON-NLS-1$
+			getString("_UI_IComponentDiagram_type") + " " + label; //$NON-NLS-1$ //$NON-NLS-2$
+	}
+	
+
+	/**
+	 * This handles model notifications by calling {@link #updateChildren} to update any cached
+	 * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void notifyChanged(Notification notification) {
+		updateChildren(notification);
+		super.notifyChanged(notification);
+	}
+
+	/**
+	 * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children
+	 * that can be created under this object.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) {
+		super.collectNewChildDescriptors(newChildDescriptors, object);
+	}
+
+	/**
+	 * This returns the label text for {@link org.eclipse.emf.edit.command.CreateChildCommand}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String getCreateChildText(Object owner, Object feature, Object child, Collection<?> selection) {
+		Object childFeature = feature;
+		Object childObject = child;
+
+		boolean qualify =
+			childFeature == UMLRpyPackage.eINSTANCE.getIDiagram_Stereotypes() ||
+			childFeature == UMLRpyPackage.eINSTANCE.getIDiagram_Annotations() ||
+			childFeature == UMLRpyPackage.eINSTANCE.getIDiagram_HyperLinks();
+
+		if (qualify) {
+			return getString
+				("_UI_CreateChild_text2", //$NON-NLS-1$
+				 new Object[] { getTypeText(childObject), getFeatureText(childFeature), getTypeText(owner) });
+		}
+		return super.getCreateChildText(owner, feature, child, selection);
+	}
+
+}
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/IComponentInstanceItemProvider.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/IComponentInstanceItemProvider.java
new file mode 100755
index 0000000..9abd0d7
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/IComponentInstanceItemProvider.java
@@ -0,0 +1,109 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.provider;
+
+
+import java.util.Collection;
+import java.util.List;
+
+import org.eclipse.emf.common.notify.AdapterFactory;
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.edit.provider.IItemPropertyDescriptor;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IComponentInstance;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IComponentInstance} object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class IComponentInstanceItemProvider extends IModelElementItemProvider {
+	/**
+	 * This constructs an instance from a factory and a notifier.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IComponentInstanceItemProvider(AdapterFactory adapterFactory) {
+		super(adapterFactory);
+	}
+
+	/**
+	 * This returns the property descriptors for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) {
+		if (itemPropertyDescriptors == null) {
+			super.getPropertyDescriptors(object);
+
+		}
+		return itemPropertyDescriptors;
+	}
+
+	/**
+	 * This returns IComponentInstance.gif.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object getImage(Object object) {
+		return overlayImage(object, getResourceLocator().getImage("full/obj16/IComponentInstance")); //$NON-NLS-1$
+	}
+
+	/**
+	 * This returns the label text for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String getText(Object object) {
+		String label = ((IComponentInstance)object).getDisplayName();
+		return label == null || label.length() == 0 ?
+			getString("_UI_IComponentInstance_type") : //$NON-NLS-1$
+			getString("_UI_IComponentInstance_type") + " " + label; //$NON-NLS-1$ //$NON-NLS-2$
+	}
+	
+
+	/**
+	 * This handles model notifications by calling {@link #updateChildren} to update any cached
+	 * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void notifyChanged(Notification notification) {
+		updateChildren(notification);
+		super.notifyChanged(notification);
+	}
+
+	/**
+	 * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children
+	 * that can be created under this object.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) {
+		super.collectNewChildDescriptors(newChildDescriptors, object);
+	}
+
+}
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/IComponentItemProvider.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/IComponentItemProvider.java
new file mode 100755
index 0000000..16ba6ad
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/IComponentItemProvider.java
@@ -0,0 +1,1532 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.provider;
+
+
+import java.util.Collection;
+import java.util.List;
+
+import org.eclipse.emf.common.notify.AdapterFactory;
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.ecore.EStructuralFeature;
+
+import org.eclipse.emf.edit.provider.ComposeableAdapterFactory;
+import org.eclipse.emf.edit.provider.IItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.ItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.ViewerNotification;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IComponent;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyFactory;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IComponent} object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class IComponentItemProvider extends IUnitItemProvider {
+	/**
+	 * This constructs an instance from a factory and a notifier.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IComponentItemProvider(AdapterFactory adapterFactory) {
+		super(adapterFactory);
+	}
+
+	/**
+	 * This returns the property descriptors for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) {
+		if (itemPropertyDescriptors == null) {
+			super.getPropertyDescriptors(object);
+
+			addWeakCGTimePropertyDescriptor(object);
+			addStrongCGTimePropertyDescriptor(object);
+			addOwnerHandlePropertyDescriptor(object);
+			addIdPropertyDescriptor(object);
+			addMyStatePropertyDescriptor(object);
+			addNamePropertyDescriptor(object);
+			addModifiedTimeWeakPropertyDescriptor(object);
+			addM_buildTypePropertyDescriptor(object);
+			addM_librariesPropertyDescriptor(object);
+			addM_additionalSourcesPropertyDescriptor(object);
+			addM_standardHeadersPropertyDescriptor(object);
+			addM_includePathPropertyDescriptor(object);
+			addM_initializationCodePropertyDescriptor(object);
+			addLastIDPropertyDescriptor(object);
+			addRequiremenTracabilityHandlePropertyDescriptor(object);
+			addCodeUpdateCGTimePropertyDescriptor(object);
+			addObjectCreationPropertyDescriptor(object);
+			addUmlDependencyIDPropertyDescriptor(object);
+			addCmheaderPropertyDescriptor(object);
+		}
+		return itemPropertyDescriptors;
+	}
+
+	/**
+	 * This adds a property descriptor for the Weak CG Time feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addWeakCGTimePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_OwnerHandleType_weakCGTime_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_OwnerHandleType_weakCGTime_feature", "_UI_OwnerHandleType_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getOwnerHandleType_WeakCGTime(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Strong CG Time feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addStrongCGTimePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_OwnerHandleType_strongCGTime_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_OwnerHandleType_strongCGTime_feature", "_UI_OwnerHandleType_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getOwnerHandleType_StrongCGTime(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Owner Handle feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addOwnerHandlePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IComponent_ownerHandle_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IComponent_ownerHandle_feature", "_UI_IComponent_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIComponent_OwnerHandle(),
+				 true,
+				 false,
+				 true,
+				 null,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Id feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addIdPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IComponent_id_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IComponent_id_feature", "_UI_IComponent_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIComponent_Id(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the My State feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addMyStatePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IComponent_myState_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IComponent_myState_feature", "_UI_IComponent_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIComponent_MyState(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Name feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addNamePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IComponent_name_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IComponent_name_feature", "_UI_IComponent_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIComponent_Name(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Modified Time Weak feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addModifiedTimeWeakPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IComponent_modifiedTimeWeak_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IComponent_modifiedTimeWeak_feature", "_UI_IComponent_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIComponent_ModifiedTimeWeak(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Mbuild Type feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_buildTypePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IComponent_m_buildType_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IComponent_m_buildType_feature", "_UI_IComponent_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIComponent_M_buildType(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Mlibraries feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_librariesPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IComponent_m_libraries_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IComponent_m_libraries_feature", "_UI_IComponent_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIComponent_M_libraries(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Madditional Sources feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_additionalSourcesPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IComponent_m_additionalSources_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IComponent_m_additionalSources_feature", "_UI_IComponent_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIComponent_M_additionalSources(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Mstandard Headers feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_standardHeadersPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IComponent_m_standardHeaders_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IComponent_m_standardHeaders_feature", "_UI_IComponent_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIComponent_M_standardHeaders(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Minclude Path feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_includePathPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IComponent_m_includePath_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IComponent_m_includePath_feature", "_UI_IComponent_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIComponent_M_includePath(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Minitialization Code feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_initializationCodePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IComponent_m_initializationCode_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IComponent_m_initializationCode_feature", "_UI_IComponent_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIComponent_M_initializationCode(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Last ID feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addLastIDPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IComponent_lastID_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IComponent_lastID_feature", "_UI_IComponent_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIComponent_LastID(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Requiremen Tracability Handle feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addRequiremenTracabilityHandlePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IComponent_requiremenTracabilityHandle_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IComponent_requiremenTracabilityHandle_feature", "_UI_IComponent_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIComponent_RequiremenTracabilityHandle(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Code Update CG Time feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addCodeUpdateCGTimePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IComponent_codeUpdateCGTime_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IComponent_codeUpdateCGTime_feature", "_UI_IComponent_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIComponent_CodeUpdateCGTime(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Object Creation feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addObjectCreationPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IComponent_objectCreation_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IComponent_objectCreation_feature", "_UI_IComponent_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIComponent_ObjectCreation(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Uml Dependency ID feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addUmlDependencyIDPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IComponent_umlDependencyID_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IComponent_umlDependencyID_feature", "_UI_IComponent_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIComponent_UmlDependencyID(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Cmheader feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addCmheaderPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IComponent_cmheader_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IComponent_cmheader_feature", "_UI_IComponent_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIComponent_Cmheader(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This specifies how to implement {@link #getChildren} and is used to deduce an appropriate feature for an
+	 * {@link org.eclipse.emf.edit.command.AddCommand}, {@link org.eclipse.emf.edit.command.RemoveCommand} or
+	 * {@link org.eclipse.emf.edit.command.MoveCommand} in {@link #createCommand}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Collection<? extends EStructuralFeature> getChildrenFeatures(Object object) {
+		if (childrenFeatures == null) {
+			super.getChildrenFeatures(object);
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getIComponent_Stereotypes());
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getIComponent_M_folder());
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getIComponent_M_configActive());
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getIComponent_Configs());
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getIComponent_Dependencies());
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getIComponent_HandlesInMe());
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getIComponent_Properties());
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getIComponent_Description());
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getIComponent_HyperLinks());
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getIComponent_Declaratives());
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getIComponent_VariationPoints());
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getIComponent_SelectedVariants());
+		}
+		return childrenFeatures;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EStructuralFeature getChildFeature(Object object, Object child) {
+		// Check the type of the specified child object and return the proper feature to use for
+		// adding (see {@link AddCommand}) it as a child.
+
+		return super.getChildFeature(object, child);
+	}
+
+	/**
+	 * This returns IComponent.gif.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object getImage(Object object) {
+		return overlayImage(object, getResourceLocator().getImage("full/obj16/IComponent")); //$NON-NLS-1$
+	}
+
+	/**
+	 * This returns the label text for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String getText(Object object) {
+		String label = ((IComponent)object).getName();
+		return label == null || label.length() == 0 ?
+			getString("_UI_IComponent_type") : //$NON-NLS-1$
+			getString("_UI_IComponent_type") + " " + label; //$NON-NLS-1$ //$NON-NLS-2$
+	}
+	
+
+	/**
+	 * This handles model notifications by calling {@link #updateChildren} to update any cached
+	 * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void notifyChanged(Notification notification) {
+		updateChildren(notification);
+
+		switch (notification.getFeatureID(IComponent.class)) {
+			case UMLRpyPackage.ICOMPONENT__WEAK_CG_TIME:
+			case UMLRpyPackage.ICOMPONENT__STRONG_CG_TIME:
+			case UMLRpyPackage.ICOMPONENT__ID:
+			case UMLRpyPackage.ICOMPONENT__MY_STATE:
+			case UMLRpyPackage.ICOMPONENT__NAME:
+			case UMLRpyPackage.ICOMPONENT__MODIFIED_TIME_WEAK:
+			case UMLRpyPackage.ICOMPONENT__MBUILD_TYPE:
+			case UMLRpyPackage.ICOMPONENT__MLIBRARIES:
+			case UMLRpyPackage.ICOMPONENT__MADDITIONAL_SOURCES:
+			case UMLRpyPackage.ICOMPONENT__MSTANDARD_HEADERS:
+			case UMLRpyPackage.ICOMPONENT__MINCLUDE_PATH:
+			case UMLRpyPackage.ICOMPONENT__MINITIALIZATION_CODE:
+			case UMLRpyPackage.ICOMPONENT__LAST_ID:
+			case UMLRpyPackage.ICOMPONENT__REQUIREMEN_TRACABILITY_HANDLE:
+			case UMLRpyPackage.ICOMPONENT__CODE_UPDATE_CG_TIME:
+			case UMLRpyPackage.ICOMPONENT__OBJECT_CREATION:
+			case UMLRpyPackage.ICOMPONENT__UML_DEPENDENCY_ID:
+			case UMLRpyPackage.ICOMPONENT__CMHEADER:
+				fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), false, true));
+				return;
+			case UMLRpyPackage.ICOMPONENT__STEREOTYPES:
+			case UMLRpyPackage.ICOMPONENT__MFOLDER:
+			case UMLRpyPackage.ICOMPONENT__MCONFIG_ACTIVE:
+			case UMLRpyPackage.ICOMPONENT__CONFIGS:
+			case UMLRpyPackage.ICOMPONENT__DEPENDENCIES:
+			case UMLRpyPackage.ICOMPONENT__HANDLES_IN_ME:
+			case UMLRpyPackage.ICOMPONENT__PROPERTIES:
+			case UMLRpyPackage.ICOMPONENT__DESCRIPTION:
+			case UMLRpyPackage.ICOMPONENT__HYPER_LINKS:
+			case UMLRpyPackage.ICOMPONENT__DECLARATIVES:
+			case UMLRpyPackage.ICOMPONENT__VARIATION_POINTS:
+			case UMLRpyPackage.ICOMPONENT__SELECTED_VARIANTS:
+				fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), true, false));
+				return;
+		}
+		super.notifyChanged(notification);
+	}
+
+	/**
+	 * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children
+	 * that can be created under this object.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) {
+		super.collectNewChildDescriptors(newChildDescriptors, object);
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIComponent_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIClassifier()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIComponent_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIActor()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIComponent_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIClass()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIComponent_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIAssociationClass()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIComponent_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIInterfaceItem()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIComponent_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIEvent()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIComponent_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIEventReception()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIComponent_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIFlowItem()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIComponent_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createINode()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIComponent_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIOperation()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIComponent_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIStateChart()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIComponent_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIStereotype()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIComponent_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIType()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIComponent_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIUseCase()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIComponent_M_folder(),
+				 UMLRpyFactory.eINSTANCE.createIFolder()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIComponent_M_configActive(),
+				 UMLRpyFactory.eINSTANCE.createICodeGenConfigInfoHandle()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIComponent_Configs(),
+				 UMLRpyFactory.eINSTANCE.createICodeGenConfigInfo()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIComponent_Dependencies(),
+				 UMLRpyFactory.eINSTANCE.createIDependency()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIComponent_Dependencies(),
+				 UMLRpyFactory.eINSTANCE.createIHyperLink()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIComponent_HandlesInMe(),
+				 UMLRpyFactory.eINSTANCE.createIComponent()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIComponent_HandlesInMe(),
+				 UMLRpyFactory.eINSTANCE.createIProfile()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIComponent_HandlesInMe(),
+				 UMLRpyFactory.eINSTANCE.createISubsystem()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIComponent_Properties(),
+				 UMLRpyFactory.eINSTANCE.createIPropertyContainer()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIComponent_Description(),
+				 UMLRpyFactory.eINSTANCE.createIDescription()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIComponent_HyperLinks(),
+				 UMLRpyFactory.eINSTANCE.createIMHyperLink()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIComponent_Declaratives(),
+				 UMLRpyFactory.eINSTANCE.createIUnit()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIComponent_Declaratives(),
+				 UMLRpyFactory.eINSTANCE.createIClassifier()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIComponent_Declaratives(),
+				 UMLRpyFactory.eINSTANCE.createIActor()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIComponent_Declaratives(),
+				 UMLRpyFactory.eINSTANCE.createIAnnotation()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIComponent_Declaratives(),
+				 UMLRpyFactory.eINSTANCE.createIVariable()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIComponent_Declaratives(),
+				 UMLRpyFactory.eINSTANCE.createIArgument()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIComponent_Declaratives(),
+				 UMLRpyFactory.eINSTANCE.createIClass()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIComponent_Declaratives(),
+				 UMLRpyFactory.eINSTANCE.createIAssociationClass()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIComponent_Declaratives(),
+				 UMLRpyFactory.eINSTANCE.createIAttribute()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIComponent_Declaratives(),
+				 UMLRpyFactory.eINSTANCE.createIDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIComponent_Declaratives(),
+				 UMLRpyFactory.eINSTANCE.createICollaborationDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIComponent_Declaratives(),
+				 UMLRpyFactory.eINSTANCE.createIComment()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIComponent_Declaratives(),
+				 UMLRpyFactory.eINSTANCE.createIComponent()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIComponent_Declaratives(),
+				 UMLRpyFactory.eINSTANCE.createIComponentDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIComponent_Declaratives(),
+				 UMLRpyFactory.eINSTANCE.createIConstraint()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIComponent_Declaratives(),
+				 UMLRpyFactory.eINSTANCE.createIControlledFile()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIComponent_Declaratives(),
+				 UMLRpyFactory.eINSTANCE.createIDeploymentDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIComponent_Declaratives(),
+				 UMLRpyFactory.eINSTANCE.createIInterfaceItem()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIComponent_Declaratives(),
+				 UMLRpyFactory.eINSTANCE.createIEvent()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIComponent_Declaratives(),
+				 UMLRpyFactory.eINSTANCE.createIEventReception()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIComponent_Declaratives(),
+				 UMLRpyFactory.eINSTANCE.createIFile()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIComponent_Declaratives(),
+				 UMLRpyFactory.eINSTANCE.createIFlowItem()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIComponent_Declaratives(),
+				 UMLRpyFactory.eINSTANCE.createIRelation()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIComponent_Declaratives(),
+				 UMLRpyFactory.eINSTANCE.createIInstance()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIComponent_Declaratives(),
+				 UMLRpyFactory.eINSTANCE.createILink()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIComponent_Declaratives(),
+				 UMLRpyFactory.eINSTANCE.createIMatrixLayout()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIComponent_Declaratives(),
+				 UMLRpyFactory.eINSTANCE.createIMatrixView()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIComponent_Declaratives(),
+				 UMLRpyFactory.eINSTANCE.createIModule()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIComponent_Declaratives(),
+				 UMLRpyFactory.eINSTANCE.createINode()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIComponent_Declaratives(),
+				 UMLRpyFactory.eINSTANCE.createIObjectModelDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIComponent_Declaratives(),
+				 UMLRpyFactory.eINSTANCE.createIOperation()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIComponent_Declaratives(),
+				 UMLRpyFactory.eINSTANCE.createIPackage()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIComponent_Declaratives(),
+				 UMLRpyFactory.eINSTANCE.createIPanelDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIComponent_Declaratives(),
+				 UMLRpyFactory.eINSTANCE.createIPort()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIComponent_Declaratives(),
+				 UMLRpyFactory.eINSTANCE.createIProfile()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIComponent_Declaratives(),
+				 UMLRpyFactory.eINSTANCE.createIProject()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIComponent_Declaratives(),
+				 UMLRpyFactory.eINSTANCE.createIRequirement()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIComponent_Declaratives(),
+				 UMLRpyFactory.eINSTANCE.createISequenceDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIComponent_Declaratives(),
+				 UMLRpyFactory.eINSTANCE.createIStateChart()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIComponent_Declaratives(),
+				 UMLRpyFactory.eINSTANCE.createIStateChartDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIComponent_Declaratives(),
+				 UMLRpyFactory.eINSTANCE.createIStereotype()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIComponent_Declaratives(),
+				 UMLRpyFactory.eINSTANCE.createIStructureDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIComponent_Declaratives(),
+				 UMLRpyFactory.eINSTANCE.createISysMLPort()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIComponent_Declaratives(),
+				 UMLRpyFactory.eINSTANCE.createITableLayout()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIComponent_Declaratives(),
+				 UMLRpyFactory.eINSTANCE.createITableView()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIComponent_Declaratives(),
+				 UMLRpyFactory.eINSTANCE.createITag()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIComponent_Declaratives(),
+				 UMLRpyFactory.eINSTANCE.createITemplateParameter()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIComponent_Declaratives(),
+				 UMLRpyFactory.eINSTANCE.createIType()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIComponent_Declaratives(),
+				 UMLRpyFactory.eINSTANCE.createIUseCase()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIComponent_Declaratives(),
+				 UMLRpyFactory.eINSTANCE.createIUseCaseDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIComponent_VariationPoints(),
+				 UMLRpyFactory.eINSTANCE.createIUnit()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIComponent_VariationPoints(),
+				 UMLRpyFactory.eINSTANCE.createIClassifier()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIComponent_VariationPoints(),
+				 UMLRpyFactory.eINSTANCE.createIActor()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIComponent_VariationPoints(),
+				 UMLRpyFactory.eINSTANCE.createIAnnotation()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIComponent_VariationPoints(),
+				 UMLRpyFactory.eINSTANCE.createIVariable()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIComponent_VariationPoints(),
+				 UMLRpyFactory.eINSTANCE.createIArgument()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIComponent_VariationPoints(),
+				 UMLRpyFactory.eINSTANCE.createIClass()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIComponent_VariationPoints(),
+				 UMLRpyFactory.eINSTANCE.createIAssociationClass()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIComponent_VariationPoints(),
+				 UMLRpyFactory.eINSTANCE.createIAttribute()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIComponent_VariationPoints(),
+				 UMLRpyFactory.eINSTANCE.createIDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIComponent_VariationPoints(),
+				 UMLRpyFactory.eINSTANCE.createICollaborationDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIComponent_VariationPoints(),
+				 UMLRpyFactory.eINSTANCE.createIComment()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIComponent_VariationPoints(),
+				 UMLRpyFactory.eINSTANCE.createIComponent()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIComponent_VariationPoints(),
+				 UMLRpyFactory.eINSTANCE.createIComponentDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIComponent_VariationPoints(),
+				 UMLRpyFactory.eINSTANCE.createIConstraint()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIComponent_VariationPoints(),
+				 UMLRpyFactory.eINSTANCE.createIControlledFile()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIComponent_VariationPoints(),
+				 UMLRpyFactory.eINSTANCE.createIDeploymentDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIComponent_VariationPoints(),
+				 UMLRpyFactory.eINSTANCE.createIInterfaceItem()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIComponent_VariationPoints(),
+				 UMLRpyFactory.eINSTANCE.createIEvent()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIComponent_VariationPoints(),
+				 UMLRpyFactory.eINSTANCE.createIEventReception()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIComponent_VariationPoints(),
+				 UMLRpyFactory.eINSTANCE.createIFile()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIComponent_VariationPoints(),
+				 UMLRpyFactory.eINSTANCE.createIFlowItem()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIComponent_VariationPoints(),
+				 UMLRpyFactory.eINSTANCE.createIRelation()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIComponent_VariationPoints(),
+				 UMLRpyFactory.eINSTANCE.createIInstance()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIComponent_VariationPoints(),
+				 UMLRpyFactory.eINSTANCE.createILink()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIComponent_VariationPoints(),
+				 UMLRpyFactory.eINSTANCE.createIMatrixLayout()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIComponent_VariationPoints(),
+				 UMLRpyFactory.eINSTANCE.createIMatrixView()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIComponent_VariationPoints(),
+				 UMLRpyFactory.eINSTANCE.createIModule()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIComponent_VariationPoints(),
+				 UMLRpyFactory.eINSTANCE.createINode()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIComponent_VariationPoints(),
+				 UMLRpyFactory.eINSTANCE.createIObjectModelDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIComponent_VariationPoints(),
+				 UMLRpyFactory.eINSTANCE.createIOperation()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIComponent_VariationPoints(),
+				 UMLRpyFactory.eINSTANCE.createIPackage()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIComponent_VariationPoints(),
+				 UMLRpyFactory.eINSTANCE.createIPanelDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIComponent_VariationPoints(),
+				 UMLRpyFactory.eINSTANCE.createIPort()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIComponent_VariationPoints(),
+				 UMLRpyFactory.eINSTANCE.createIProfile()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIComponent_VariationPoints(),
+				 UMLRpyFactory.eINSTANCE.createIProject()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIComponent_VariationPoints(),
+				 UMLRpyFactory.eINSTANCE.createIRequirement()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIComponent_VariationPoints(),
+				 UMLRpyFactory.eINSTANCE.createISequenceDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIComponent_VariationPoints(),
+				 UMLRpyFactory.eINSTANCE.createIStateChart()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIComponent_VariationPoints(),
+				 UMLRpyFactory.eINSTANCE.createIStateChartDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIComponent_VariationPoints(),
+				 UMLRpyFactory.eINSTANCE.createIStereotype()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIComponent_VariationPoints(),
+				 UMLRpyFactory.eINSTANCE.createIStructureDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIComponent_VariationPoints(),
+				 UMLRpyFactory.eINSTANCE.createISysMLPort()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIComponent_VariationPoints(),
+				 UMLRpyFactory.eINSTANCE.createITableLayout()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIComponent_VariationPoints(),
+				 UMLRpyFactory.eINSTANCE.createITableView()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIComponent_VariationPoints(),
+				 UMLRpyFactory.eINSTANCE.createITag()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIComponent_VariationPoints(),
+				 UMLRpyFactory.eINSTANCE.createITemplateParameter()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIComponent_VariationPoints(),
+				 UMLRpyFactory.eINSTANCE.createIType()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIComponent_VariationPoints(),
+				 UMLRpyFactory.eINSTANCE.createIUseCase()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIComponent_VariationPoints(),
+				 UMLRpyFactory.eINSTANCE.createIUseCaseDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIComponent_SelectedVariants(),
+				 UMLRpyFactory.eINSTANCE.createIUnit()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIComponent_SelectedVariants(),
+				 UMLRpyFactory.eINSTANCE.createIClassifier()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIComponent_SelectedVariants(),
+				 UMLRpyFactory.eINSTANCE.createIActor()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIComponent_SelectedVariants(),
+				 UMLRpyFactory.eINSTANCE.createIAnnotation()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIComponent_SelectedVariants(),
+				 UMLRpyFactory.eINSTANCE.createIVariable()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIComponent_SelectedVariants(),
+				 UMLRpyFactory.eINSTANCE.createIArgument()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIComponent_SelectedVariants(),
+				 UMLRpyFactory.eINSTANCE.createIClass()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIComponent_SelectedVariants(),
+				 UMLRpyFactory.eINSTANCE.createIAssociationClass()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIComponent_SelectedVariants(),
+				 UMLRpyFactory.eINSTANCE.createIAttribute()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIComponent_SelectedVariants(),
+				 UMLRpyFactory.eINSTANCE.createIDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIComponent_SelectedVariants(),
+				 UMLRpyFactory.eINSTANCE.createICollaborationDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIComponent_SelectedVariants(),
+				 UMLRpyFactory.eINSTANCE.createIComment()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIComponent_SelectedVariants(),
+				 UMLRpyFactory.eINSTANCE.createIComponent()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIComponent_SelectedVariants(),
+				 UMLRpyFactory.eINSTANCE.createIComponentDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIComponent_SelectedVariants(),
+				 UMLRpyFactory.eINSTANCE.createIConstraint()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIComponent_SelectedVariants(),
+				 UMLRpyFactory.eINSTANCE.createIControlledFile()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIComponent_SelectedVariants(),
+				 UMLRpyFactory.eINSTANCE.createIDeploymentDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIComponent_SelectedVariants(),
+				 UMLRpyFactory.eINSTANCE.createIInterfaceItem()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIComponent_SelectedVariants(),
+				 UMLRpyFactory.eINSTANCE.createIEvent()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIComponent_SelectedVariants(),
+				 UMLRpyFactory.eINSTANCE.createIEventReception()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIComponent_SelectedVariants(),
+				 UMLRpyFactory.eINSTANCE.createIFile()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIComponent_SelectedVariants(),
+				 UMLRpyFactory.eINSTANCE.createIFlowItem()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIComponent_SelectedVariants(),
+				 UMLRpyFactory.eINSTANCE.createIRelation()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIComponent_SelectedVariants(),
+				 UMLRpyFactory.eINSTANCE.createIInstance()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIComponent_SelectedVariants(),
+				 UMLRpyFactory.eINSTANCE.createILink()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIComponent_SelectedVariants(),
+				 UMLRpyFactory.eINSTANCE.createIMatrixLayout()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIComponent_SelectedVariants(),
+				 UMLRpyFactory.eINSTANCE.createIMatrixView()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIComponent_SelectedVariants(),
+				 UMLRpyFactory.eINSTANCE.createIModule()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIComponent_SelectedVariants(),
+				 UMLRpyFactory.eINSTANCE.createINode()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIComponent_SelectedVariants(),
+				 UMLRpyFactory.eINSTANCE.createIObjectModelDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIComponent_SelectedVariants(),
+				 UMLRpyFactory.eINSTANCE.createIOperation()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIComponent_SelectedVariants(),
+				 UMLRpyFactory.eINSTANCE.createIPackage()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIComponent_SelectedVariants(),
+				 UMLRpyFactory.eINSTANCE.createIPanelDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIComponent_SelectedVariants(),
+				 UMLRpyFactory.eINSTANCE.createIPort()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIComponent_SelectedVariants(),
+				 UMLRpyFactory.eINSTANCE.createIProfile()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIComponent_SelectedVariants(),
+				 UMLRpyFactory.eINSTANCE.createIProject()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIComponent_SelectedVariants(),
+				 UMLRpyFactory.eINSTANCE.createIRequirement()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIComponent_SelectedVariants(),
+				 UMLRpyFactory.eINSTANCE.createISequenceDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIComponent_SelectedVariants(),
+				 UMLRpyFactory.eINSTANCE.createIStateChart()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIComponent_SelectedVariants(),
+				 UMLRpyFactory.eINSTANCE.createIStateChartDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIComponent_SelectedVariants(),
+				 UMLRpyFactory.eINSTANCE.createIStereotype()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIComponent_SelectedVariants(),
+				 UMLRpyFactory.eINSTANCE.createIStructureDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIComponent_SelectedVariants(),
+				 UMLRpyFactory.eINSTANCE.createISysMLPort()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIComponent_SelectedVariants(),
+				 UMLRpyFactory.eINSTANCE.createITableLayout()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIComponent_SelectedVariants(),
+				 UMLRpyFactory.eINSTANCE.createITableView()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIComponent_SelectedVariants(),
+				 UMLRpyFactory.eINSTANCE.createITag()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIComponent_SelectedVariants(),
+				 UMLRpyFactory.eINSTANCE.createITemplateParameter()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIComponent_SelectedVariants(),
+				 UMLRpyFactory.eINSTANCE.createIType()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIComponent_SelectedVariants(),
+				 UMLRpyFactory.eINSTANCE.createIUseCase()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIComponent_SelectedVariants(),
+				 UMLRpyFactory.eINSTANCE.createIUseCaseDiagram()));
+	}
+
+	/**
+	 * This returns the label text for {@link org.eclipse.emf.edit.command.CreateChildCommand}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String getCreateChildText(Object owner, Object feature, Object child, Collection<?> selection) {
+		Object childFeature = feature;
+		Object childObject = child;
+
+		boolean qualify =
+			childFeature == UMLRpyPackage.eINSTANCE.getIComponent_Stereotypes() ||
+			childFeature == UMLRpyPackage.eINSTANCE.getIComponent_Declaratives() ||
+			childFeature == UMLRpyPackage.eINSTANCE.getIComponent_VariationPoints() ||
+			childFeature == UMLRpyPackage.eINSTANCE.getIComponent_SelectedVariants() ||
+			childFeature == UMLRpyPackage.eINSTANCE.getIComponent_HandlesInMe();
+
+		if (qualify) {
+			return getString
+				("_UI_CreateChild_text2", //$NON-NLS-1$
+				 new Object[] { getTypeText(childObject), getFeatureText(childFeature), getTypeText(owner) });
+		}
+		return super.getCreateChildText(owner, feature, child, selection);
+	}
+
+}
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/IConfigurationItemProvider.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/IConfigurationItemProvider.java
new file mode 100755
index 0000000..4f2fa41
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/IConfigurationItemProvider.java
@@ -0,0 +1,109 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.provider;
+
+
+import java.util.Collection;
+import java.util.List;
+
+import org.eclipse.emf.common.notify.AdapterFactory;
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.edit.provider.IItemPropertyDescriptor;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IConfiguration;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IConfiguration} object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class IConfigurationItemProvider extends IModelElementItemProvider {
+	/**
+	 * This constructs an instance from a factory and a notifier.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IConfigurationItemProvider(AdapterFactory adapterFactory) {
+		super(adapterFactory);
+	}
+
+	/**
+	 * This returns the property descriptors for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) {
+		if (itemPropertyDescriptors == null) {
+			super.getPropertyDescriptors(object);
+
+		}
+		return itemPropertyDescriptors;
+	}
+
+	/**
+	 * This returns IConfiguration.gif.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object getImage(Object object) {
+		return overlayImage(object, getResourceLocator().getImage("full/obj16/IConfiguration")); //$NON-NLS-1$
+	}
+
+	/**
+	 * This returns the label text for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String getText(Object object) {
+		String label = ((IConfiguration)object).getDisplayName();
+		return label == null || label.length() == 0 ?
+			getString("_UI_IConfiguration_type") : //$NON-NLS-1$
+			getString("_UI_IConfiguration_type") + " " + label; //$NON-NLS-1$ //$NON-NLS-2$
+	}
+	
+
+	/**
+	 * This handles model notifications by calling {@link #updateChildren} to update any cached
+	 * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void notifyChanged(Notification notification) {
+		updateChildren(notification);
+		super.notifyChanged(notification);
+	}
+
+	/**
+	 * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children
+	 * that can be created under this object.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) {
+		super.collectNewChildDescriptors(newChildDescriptors, object);
+	}
+
+}
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/IConnectorItemProvider.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/IConnectorItemProvider.java
new file mode 100755
index 0000000..cbf272a
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/IConnectorItemProvider.java
@@ -0,0 +1,165 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.provider;
+
+
+import java.util.Collection;
+import java.util.List;
+
+import org.eclipse.emf.common.notify.AdapterFactory;
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.edit.provider.ComposeableAdapterFactory;
+import org.eclipse.emf.edit.provider.IItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.ItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.ViewerNotification;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IConnector;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IConnector} object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class IConnectorItemProvider extends IStateVertexItemProvider {
+	/**
+	 * This constructs an instance from a factory and a notifier.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IConnectorItemProvider(AdapterFactory adapterFactory) {
+		super(adapterFactory);
+	}
+
+	/**
+	 * This returns the property descriptors for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) {
+		if (itemPropertyDescriptors == null) {
+			super.getPropertyDescriptors(object);
+
+			addParentPropertyDescriptor(object);
+			addConnectorTypePropertyDescriptor(object);
+		}
+		return itemPropertyDescriptors;
+	}
+
+	/**
+	 * This adds a property descriptor for the Parent feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addParentPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IConnector_parent_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IConnector_parent_feature", "_UI_IConnector_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIConnector_Parent(),
+				 true,
+				 false,
+				 true,
+				 null,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Connector Type feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addConnectorTypePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IConnector_connectorType_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IConnector_connectorType_feature", "_UI_IConnector_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIConnector_ConnectorType(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This returns IConnector.gif.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object getImage(Object object) {
+		return overlayImage(object, getResourceLocator().getImage("full/obj16/IConnector")); //$NON-NLS-1$
+	}
+
+	/**
+	 * This returns the label text for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String getText(Object object) {
+		String label = ((IConnector)object).getName();
+		return label == null || label.length() == 0 ?
+			getString("_UI_IConnector_type") : //$NON-NLS-1$
+			getString("_UI_IConnector_type") + " " + label; //$NON-NLS-1$ //$NON-NLS-2$
+	}
+	
+
+	/**
+	 * This handles model notifications by calling {@link #updateChildren} to update any cached
+	 * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void notifyChanged(Notification notification) {
+		updateChildren(notification);
+
+		switch (notification.getFeatureID(IConnector.class)) {
+			case UMLRpyPackage.ICONNECTOR__CONNECTOR_TYPE:
+				fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), false, true));
+				return;
+		}
+		super.notifyChanged(notification);
+	}
+
+	/**
+	 * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children
+	 * that can be created under this object.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) {
+		super.collectNewChildDescriptors(newChildDescriptors, object);
+	}
+
+}
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/IConstraintItemProvider.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/IConstraintItemProvider.java
new file mode 100755
index 0000000..b417572
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/IConstraintItemProvider.java
@@ -0,0 +1,334 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.provider;
+
+
+import java.util.Collection;
+import java.util.List;
+
+import org.eclipse.emf.common.notify.AdapterFactory;
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.ecore.EStructuralFeature;
+
+import org.eclipse.emf.edit.provider.ComposeableAdapterFactory;
+import org.eclipse.emf.edit.provider.IItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.ItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.ViewerNotification;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IConstraint;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyFactory;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IConstraint} object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class IConstraintItemProvider extends IAnnotationItemProvider {
+	/**
+	 * This constructs an instance from a factory and a notifier.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IConstraintItemProvider(AdapterFactory adapterFactory) {
+		super(adapterFactory);
+	}
+
+	/**
+	 * This returns the property descriptors for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) {
+		if (itemPropertyDescriptors == null) {
+			super.getPropertyDescriptors(object);
+
+			addIdPropertyDescriptor(object);
+			addMyStatePropertyDescriptor(object);
+			addNamePropertyDescriptor(object);
+			addModifiedTimeWeakPropertyDescriptor(object);
+		}
+		return itemPropertyDescriptors;
+	}
+
+	/**
+	 * This adds a property descriptor for the Id feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addIdPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IConstraint_id_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IConstraint_id_feature", "_UI_IConstraint_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIConstraint_Id(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the My State feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addMyStatePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IConstraint_myState_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IConstraint_myState_feature", "_UI_IConstraint_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIConstraint_MyState(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Name feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addNamePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IConstraint_name_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IConstraint_name_feature", "_UI_IConstraint_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIConstraint_Name(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Modified Time Weak feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addModifiedTimeWeakPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IConstraint_modifiedTimeWeak_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IConstraint_modifiedTimeWeak_feature", "_UI_IConstraint_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIConstraint_ModifiedTimeWeak(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This specifies how to implement {@link #getChildren} and is used to deduce an appropriate feature for an
+	 * {@link org.eclipse.emf.edit.command.AddCommand}, {@link org.eclipse.emf.edit.command.RemoveCommand} or
+	 * {@link org.eclipse.emf.edit.command.MoveCommand} in {@link #createCommand}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Collection<? extends EStructuralFeature> getChildrenFeatures(Object object) {
+		if (childrenFeatures == null) {
+			super.getChildrenFeatures(object);
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getIConstraint_Stereotypes());
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getIConstraint_Properties());
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getIConstraint_Anchors());
+		}
+		return childrenFeatures;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EStructuralFeature getChildFeature(Object object, Object child) {
+		// Check the type of the specified child object and return the proper feature to use for
+		// adding (see {@link AddCommand}) it as a child.
+
+		return super.getChildFeature(object, child);
+	}
+
+	/**
+	 * This returns IConstraint.gif.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object getImage(Object object) {
+		return overlayImage(object, getResourceLocator().getImage("full/obj16/IConstraint")); //$NON-NLS-1$
+	}
+
+	/**
+	 * This returns the label text for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String getText(Object object) {
+		String label = ((IConstraint)object).getName();
+		return label == null || label.length() == 0 ?
+			getString("_UI_IConstraint_type") : //$NON-NLS-1$
+			getString("_UI_IConstraint_type") + " " + label; //$NON-NLS-1$ //$NON-NLS-2$
+	}
+	
+
+	/**
+	 * This handles model notifications by calling {@link #updateChildren} to update any cached
+	 * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void notifyChanged(Notification notification) {
+		updateChildren(notification);
+
+		switch (notification.getFeatureID(IConstraint.class)) {
+			case UMLRpyPackage.ICONSTRAINT__ID:
+			case UMLRpyPackage.ICONSTRAINT__MY_STATE:
+			case UMLRpyPackage.ICONSTRAINT__NAME:
+			case UMLRpyPackage.ICONSTRAINT__MODIFIED_TIME_WEAK:
+				fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), false, true));
+				return;
+			case UMLRpyPackage.ICONSTRAINT__STEREOTYPES:
+			case UMLRpyPackage.ICONSTRAINT__PROPERTIES:
+			case UMLRpyPackage.ICONSTRAINT__ANCHORS:
+				fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), true, false));
+				return;
+		}
+		super.notifyChanged(notification);
+	}
+
+	/**
+	 * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children
+	 * that can be created under this object.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) {
+		super.collectNewChildDescriptors(newChildDescriptors, object);
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIConstraint_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIClassifier()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIConstraint_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIActor()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIConstraint_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIClass()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIConstraint_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIAssociationClass()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIConstraint_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIInterfaceItem()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIConstraint_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIEvent()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIConstraint_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIEventReception()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIConstraint_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIFlowItem()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIConstraint_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createINode()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIConstraint_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIOperation()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIConstraint_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIStateChart()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIConstraint_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIStereotype()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIConstraint_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIType()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIConstraint_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIUseCase()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIConstraint_Properties(),
+				 UMLRpyFactory.eINSTANCE.createIPropertyContainer()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIConstraint_Anchors(),
+				 UMLRpyFactory.eINSTANCE.createIAnchor()));
+	}
+
+}
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/IConstructorItemProvider.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/IConstructorItemProvider.java
new file mode 100755
index 0000000..0021e39
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/IConstructorItemProvider.java
@@ -0,0 +1,630 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.provider;
+
+
+import java.util.Collection;
+import java.util.List;
+
+import org.eclipse.emf.common.notify.AdapterFactory;
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.ecore.EStructuralFeature;
+
+import org.eclipse.emf.edit.provider.ComposeableAdapterFactory;
+import org.eclipse.emf.edit.provider.IItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.ItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.ViewerNotification;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IConstructor;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyFactory;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IConstructor} object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class IConstructorItemProvider extends OperationsTypeItemProvider {
+	/**
+	 * This constructs an instance from a factory and a notifier.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IConstructorItemProvider(AdapterFactory adapterFactory) {
+		super(adapterFactory);
+	}
+
+	/**
+	 * This returns the property descriptors for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) {
+		if (itemPropertyDescriptors == null) {
+			super.getPropertyDescriptors(object);
+
+			addUmlDependencyIDPropertyDescriptor(object);
+			addObjectCreationPropertyDescriptor(object);
+			addIdPropertyDescriptor(object);
+			addMyStatePropertyDescriptor(object);
+			addModifiedTimeWeakPropertyDescriptor(object);
+			addReturnTypePropertyDescriptor(object);
+			addAbstractPropertyDescriptor(object);
+			addFinalPropertyDescriptor(object);
+			addConcurrencyPropertyDescriptor(object);
+			addProtectionPropertyDescriptor(object);
+			addStaticPropertyDescriptor(object);
+			addConstantPropertyDescriptor(object);
+			addInitializerPropertyDescriptor(object);
+			addNamePropertyDescriptor(object);
+			addRequiremenTracabilityHandlePropertyDescriptor(object);
+			addCodeUpdateCGTimePropertyDescriptor(object);
+			addLastIDPropertyDescriptor(object);
+		}
+		return itemPropertyDescriptors;
+	}
+
+	/**
+	 * This adds a property descriptor for the Uml Dependency ID feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addUmlDependencyIDPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_M_subjectType_umlDependencyID_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_M_subjectType_umlDependencyID_feature", "_UI_M_subjectType_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getM_subjectType_UmlDependencyID(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Object Creation feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addObjectCreationPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_M_subjectType_objectCreation_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_M_subjectType_objectCreation_feature", "_UI_M_subjectType_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getM_subjectType_ObjectCreation(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Id feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addIdPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IConstructor_id_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IConstructor_id_feature", "_UI_IConstructor_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIConstructor_Id(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the My State feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addMyStatePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IConstructor_myState_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IConstructor_myState_feature", "_UI_IConstructor_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIConstructor_MyState(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Modified Time Weak feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addModifiedTimeWeakPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IConstructor_modifiedTimeWeak_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IConstructor_modifiedTimeWeak_feature", "_UI_IConstructor_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIConstructor_ModifiedTimeWeak(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Return Type feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addReturnTypePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IConstructor_returnType_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IConstructor_returnType_feature", "_UI_IConstructor_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIConstructor_ReturnType(),
+				 true,
+				 false,
+				 true,
+				 null,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Abstract feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addAbstractPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IConstructor_abstract_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IConstructor_abstract_feature", "_UI_IConstructor_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIConstructor_Abstract(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Final feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addFinalPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IConstructor_final_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IConstructor_final_feature", "_UI_IConstructor_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIConstructor_Final(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Concurrency feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addConcurrencyPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IConstructor_concurrency_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IConstructor_concurrency_feature", "_UI_IConstructor_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIConstructor_Concurrency(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Protection feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addProtectionPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IConstructor_protection_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IConstructor_protection_feature", "_UI_IConstructor_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIConstructor_Protection(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Static feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addStaticPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IConstructor_static_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IConstructor_static_feature", "_UI_IConstructor_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIConstructor_Static(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Constant feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addConstantPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IConstructor_constant_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IConstructor_constant_feature", "_UI_IConstructor_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIConstructor_Constant(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Initializer feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addInitializerPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IConstructor_initializer_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IConstructor_initializer_feature", "_UI_IConstructor_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIConstructor_Initializer(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Name feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addNamePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IConstructor_name_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IConstructor_name_feature", "_UI_IConstructor_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIConstructor_Name(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Requiremen Tracability Handle feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addRequiremenTracabilityHandlePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IConstructor_requiremenTracabilityHandle_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IConstructor_requiremenTracabilityHandle_feature", "_UI_IConstructor_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIConstructor_RequiremenTracabilityHandle(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Code Update CG Time feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addCodeUpdateCGTimePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IConstructor_codeUpdateCGTime_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IConstructor_codeUpdateCGTime_feature", "_UI_IConstructor_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIConstructor_CodeUpdateCGTime(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Last ID feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addLastIDPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IConstructor_lastID_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IConstructor_lastID_feature", "_UI_IConstructor_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIConstructor_LastID(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This specifies how to implement {@link #getChildren} and is used to deduce an appropriate feature for an
+	 * {@link org.eclipse.emf.edit.command.AddCommand}, {@link org.eclipse.emf.edit.command.RemoveCommand} or
+	 * {@link org.eclipse.emf.edit.command.MoveCommand} in {@link #createCommand}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Collection<? extends EStructuralFeature> getChildrenFeatures(Object object) {
+		if (childrenFeatures == null) {
+			super.getChildrenFeatures(object);
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getIConstructor_ItsBody());
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getIConstructor_Args());
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getIConstructor_Description());
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getIConstructor_Tags());
+		}
+		return childrenFeatures;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EStructuralFeature getChildFeature(Object object, Object child) {
+		// Check the type of the specified child object and return the proper feature to use for
+		// adding (see {@link AddCommand}) it as a child.
+
+		return super.getChildFeature(object, child);
+	}
+
+	/**
+	 * This returns IConstructor.gif.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object getImage(Object object) {
+		return overlayImage(object, getResourceLocator().getImage("full/obj16/IConstructor")); //$NON-NLS-1$
+	}
+
+	/**
+	 * This returns the label text for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String getText(Object object) {
+		String label = ((IConstructor)object).getName();
+		return label == null || label.length() == 0 ?
+			getString("_UI_IConstructor_type") : //$NON-NLS-1$
+			getString("_UI_IConstructor_type") + " " + label; //$NON-NLS-1$ //$NON-NLS-2$
+	}
+	
+
+	/**
+	 * This handles model notifications by calling {@link #updateChildren} to update any cached
+	 * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void notifyChanged(Notification notification) {
+		updateChildren(notification);
+
+		switch (notification.getFeatureID(IConstructor.class)) {
+			case UMLRpyPackage.ICONSTRUCTOR__UML_DEPENDENCY_ID:
+			case UMLRpyPackage.ICONSTRUCTOR__OBJECT_CREATION:
+			case UMLRpyPackage.ICONSTRUCTOR__ID:
+			case UMLRpyPackage.ICONSTRUCTOR__MY_STATE:
+			case UMLRpyPackage.ICONSTRUCTOR__MODIFIED_TIME_WEAK:
+			case UMLRpyPackage.ICONSTRUCTOR__ABSTRACT:
+			case UMLRpyPackage.ICONSTRUCTOR__FINAL:
+			case UMLRpyPackage.ICONSTRUCTOR__CONCURRENCY:
+			case UMLRpyPackage.ICONSTRUCTOR__PROTECTION:
+			case UMLRpyPackage.ICONSTRUCTOR__STATIC:
+			case UMLRpyPackage.ICONSTRUCTOR__CONSTANT:
+			case UMLRpyPackage.ICONSTRUCTOR__INITIALIZER:
+			case UMLRpyPackage.ICONSTRUCTOR__NAME:
+			case UMLRpyPackage.ICONSTRUCTOR__REQUIREMEN_TRACABILITY_HANDLE:
+			case UMLRpyPackage.ICONSTRUCTOR__CODE_UPDATE_CG_TIME:
+			case UMLRpyPackage.ICONSTRUCTOR__LAST_ID:
+				fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), false, true));
+				return;
+			case UMLRpyPackage.ICONSTRUCTOR__ITS_BODY:
+			case UMLRpyPackage.ICONSTRUCTOR__ARGS:
+			case UMLRpyPackage.ICONSTRUCTOR__DESCRIPTION:
+			case UMLRpyPackage.ICONSTRUCTOR__TAGS:
+				fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), true, false));
+				return;
+		}
+		super.notifyChanged(notification);
+	}
+
+	/**
+	 * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children
+	 * that can be created under this object.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) {
+		super.collectNewChildDescriptors(newChildDescriptors, object);
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIConstructor_ItsBody(),
+				 UMLRpyFactory.eINSTANCE.createIBody()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIConstructor_Args(),
+				 UMLRpyFactory.eINSTANCE.createIVariable()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIConstructor_Args(),
+				 UMLRpyFactory.eINSTANCE.createIArgument()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIConstructor_Args(),
+				 UMLRpyFactory.eINSTANCE.createIAttribute()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIConstructor_Args(),
+				 UMLRpyFactory.eINSTANCE.createITag()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIConstructor_Args(),
+				 UMLRpyFactory.eINSTANCE.createITemplateParameter()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIConstructor_Description(),
+				 UMLRpyFactory.eINSTANCE.createIDescription()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIConstructor_Tags(),
+				 UMLRpyFactory.eINSTANCE.createITag()));
+	}
+
+	/**
+	 * This returns the label text for {@link org.eclipse.emf.edit.command.CreateChildCommand}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String getCreateChildText(Object owner, Object feature, Object child, Collection<?> selection) {
+		Object childFeature = feature;
+		Object childObject = child;
+
+		boolean qualify =
+			childFeature == UMLRpyPackage.eINSTANCE.getIConstructor_Args() ||
+			childFeature == UMLRpyPackage.eINSTANCE.getIConstructor_Tags();
+
+		if (qualify) {
+			return getString
+				("_UI_CreateChild_text2", //$NON-NLS-1$
+				 new Object[] { getTypeText(childObject), getFeatureText(childFeature), getTypeText(owner) });
+		}
+		return super.getCreateChildText(owner, feature, child, selection);
+	}
+
+}
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/IContextSpecificationItemProvider.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/IContextSpecificationItemProvider.java
new file mode 100755
index 0000000..b0dc0c4
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/IContextSpecificationItemProvider.java
@@ -0,0 +1,109 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.provider;
+
+
+import java.util.Collection;
+import java.util.List;
+
+import org.eclipse.emf.common.notify.AdapterFactory;
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.edit.provider.IItemPropertyDescriptor;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IContextSpecification;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IContextSpecification} object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class IContextSpecificationItemProvider extends IValueSpecificationItemProvider {
+	/**
+	 * This constructs an instance from a factory and a notifier.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IContextSpecificationItemProvider(AdapterFactory adapterFactory) {
+		super(adapterFactory);
+	}
+
+	/**
+	 * This returns the property descriptors for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) {
+		if (itemPropertyDescriptors == null) {
+			super.getPropertyDescriptors(object);
+
+		}
+		return itemPropertyDescriptors;
+	}
+
+	/**
+	 * This returns IContextSpecification.gif.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object getImage(Object object) {
+		return overlayImage(object, getResourceLocator().getImage("full/obj16/IContextSpecification")); //$NON-NLS-1$
+	}
+
+	/**
+	 * This returns the label text for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String getText(Object object) {
+		String label = ((IContextSpecification)object).getDisplayName();
+		return label == null || label.length() == 0 ?
+			getString("_UI_IContextSpecification_type") : //$NON-NLS-1$
+			getString("_UI_IContextSpecification_type") + " " + label; //$NON-NLS-1$ //$NON-NLS-2$
+	}
+	
+
+	/**
+	 * This handles model notifications by calling {@link #updateChildren} to update any cached
+	 * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void notifyChanged(Notification notification) {
+		updateChildren(notification);
+		super.notifyChanged(notification);
+	}
+
+	/**
+	 * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children
+	 * that can be created under this object.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) {
+		super.collectNewChildDescriptors(newChildDescriptors, object);
+	}
+
+}
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/IControlledFileItemProvider.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/IControlledFileItemProvider.java
new file mode 100755
index 0000000..3236aef
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/IControlledFileItemProvider.java
@@ -0,0 +1,109 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.provider;
+
+
+import java.util.Collection;
+import java.util.List;
+
+import org.eclipse.emf.common.notify.AdapterFactory;
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.edit.provider.IItemPropertyDescriptor;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IControlledFile;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IControlledFile} object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class IControlledFileItemProvider extends IUnitItemProvider {
+	/**
+	 * This constructs an instance from a factory and a notifier.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IControlledFileItemProvider(AdapterFactory adapterFactory) {
+		super(adapterFactory);
+	}
+
+	/**
+	 * This returns the property descriptors for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) {
+		if (itemPropertyDescriptors == null) {
+			super.getPropertyDescriptors(object);
+
+		}
+		return itemPropertyDescriptors;
+	}
+
+	/**
+	 * This returns IControlledFile.gif.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object getImage(Object object) {
+		return overlayImage(object, getResourceLocator().getImage("full/obj16/IControlledFile")); //$NON-NLS-1$
+	}
+
+	/**
+	 * This returns the label text for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String getText(Object object) {
+		String label = ((IControlledFile)object).getDisplayName();
+		return label == null || label.length() == 0 ?
+			getString("_UI_IControlledFile_type") : //$NON-NLS-1$
+			getString("_UI_IControlledFile_type") + " " + label; //$NON-NLS-1$ //$NON-NLS-2$
+	}
+	
+
+	/**
+	 * This handles model notifications by calling {@link #updateChildren} to update any cached
+	 * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void notifyChanged(Notification notification) {
+		updateChildren(notification);
+		super.notifyChanged(notification);
+	}
+
+	/**
+	 * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children
+	 * that can be created under this object.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) {
+		super.collectNewChildDescriptors(newChildDescriptors, object);
+	}
+
+}
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/IDefaultDrvdTransItemProvider.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/IDefaultDrvdTransItemProvider.java
new file mode 100755
index 0000000..7a3d026
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/IDefaultDrvdTransItemProvider.java
@@ -0,0 +1,513 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.provider;
+
+
+import java.util.Collection;
+import java.util.List;
+
+import org.eclipse.emf.common.notify.AdapterFactory;
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.ecore.EStructuralFeature;
+
+import org.eclipse.emf.edit.provider.ComposeableAdapterFactory;
+import org.eclipse.emf.edit.provider.IItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.ItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.ViewerNotification;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IDefaultDrvdTrans;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyFactory;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IDefaultDrvdTrans} object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class IDefaultDrvdTransItemProvider extends DefaultTransTypeItemProvider {
+	/**
+	 * This constructs an instance from a factory and a notifier.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IDefaultDrvdTransItemProvider(AdapterFactory adapterFactory) {
+		super(adapterFactory);
+	}
+
+	/**
+	 * This returns the property descriptors for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) {
+		if (itemPropertyDescriptors == null) {
+			super.getPropertyDescriptors(object);
+
+			addModifiedTimeWeakPropertyDescriptor(object);
+			addStaticReactionPropertyDescriptor(object);
+			addItsTargetPropertyDescriptor(object);
+			addIdPropertyDescriptor(object);
+			addCodeUpdateCGTimePropertyDescriptor(object);
+			addRequiremenTracabilityHandlePropertyDescriptor(object);
+			addUmlDependencyIDPropertyDescriptor(object);
+			addMyStatePropertyDescriptor(object);
+			addObjectCreationPropertyDescriptor(object);
+			addNamePropertyDescriptor(object);
+			addItsSourcePropertyDescriptor(object);
+			addOfStatePropertyDescriptor(object);
+			addErrorStatusPropertyDescriptor(object);
+			addInheritsFromHandlePropertyDescriptor(object);
+		}
+		return itemPropertyDescriptors;
+	}
+
+	/**
+	 * This adds a property descriptor for the Modified Time Weak feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addModifiedTimeWeakPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_TransitionsType_modifiedTimeWeak_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_TransitionsType_modifiedTimeWeak_feature", "_UI_TransitionsType_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getTransitionsType_ModifiedTimeWeak(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Static Reaction feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addStaticReactionPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_TransitionsType_staticReaction_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_TransitionsType_staticReaction_feature", "_UI_TransitionsType_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getTransitionsType_StaticReaction(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Its Target feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addItsTargetPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_TransitionsType_itsTarget_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_TransitionsType_itsTarget_feature", "_UI_TransitionsType_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getTransitionsType_ItsTarget(),
+				 true,
+				 false,
+				 true,
+				 null,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Id feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addIdPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_TransitionsType_id_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_TransitionsType_id_feature", "_UI_TransitionsType_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getTransitionsType_Id(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Code Update CG Time feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addCodeUpdateCGTimePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_TransitionsType_codeUpdateCGTime_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_TransitionsType_codeUpdateCGTime_feature", "_UI_TransitionsType_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getTransitionsType_CodeUpdateCGTime(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Requiremen Tracability Handle feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addRequiremenTracabilityHandlePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_TransitionsType_requiremenTracabilityHandle_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_TransitionsType_requiremenTracabilityHandle_feature", "_UI_TransitionsType_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getTransitionsType_RequiremenTracabilityHandle(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Uml Dependency ID feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addUmlDependencyIDPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_TransitionsType_umlDependencyID_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_TransitionsType_umlDependencyID_feature", "_UI_TransitionsType_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getTransitionsType_UmlDependencyID(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the My State feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addMyStatePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_TransitionsType_myState_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_TransitionsType_myState_feature", "_UI_TransitionsType_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getTransitionsType_MyState(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Object Creation feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addObjectCreationPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_TransitionsType_objectCreation_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_TransitionsType_objectCreation_feature", "_UI_TransitionsType_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getTransitionsType_ObjectCreation(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Name feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addNamePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_TransitionsType_name_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_TransitionsType_name_feature", "_UI_TransitionsType_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getTransitionsType_Name(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Its Source feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addItsSourcePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IDefaultDrvdTrans_itsSource_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IDefaultDrvdTrans_itsSource_feature", "_UI_IDefaultDrvdTrans_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIDefaultDrvdTrans_ItsSource(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Of State feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addOfStatePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IDefaultDrvdTrans_ofState_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IDefaultDrvdTrans_ofState_feature", "_UI_IDefaultDrvdTrans_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIDefaultDrvdTrans_OfState(),
+				 true,
+				 false,
+				 true,
+				 null,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Error Status feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addErrorStatusPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IDefaultDrvdTrans_errorStatus_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IDefaultDrvdTrans_errorStatus_feature", "_UI_IDefaultDrvdTrans_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIDefaultDrvdTrans_ErrorStatus(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Inherits From Handle feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addInheritsFromHandlePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IDefaultDrvdTrans_inheritsFromHandle_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IDefaultDrvdTrans_inheritsFromHandle_feature", "_UI_IDefaultDrvdTrans_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIDefaultDrvdTrans_InheritsFromHandle(),
+				 true,
+				 false,
+				 true,
+				 null,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This specifies how to implement {@link #getChildren} and is used to deduce an appropriate feature for an
+	 * {@link org.eclipse.emf.edit.command.AddCommand}, {@link org.eclipse.emf.edit.command.RemoveCommand} or
+	 * {@link org.eclipse.emf.edit.command.MoveCommand} in {@link #createCommand}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Collection<? extends EStructuralFeature> getChildrenFeatures(Object object) {
+		if (childrenFeatures == null) {
+			super.getChildrenFeatures(object);
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getTransitionsType_Description());
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getTransitionsType_ItsLabel());
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getIDefaultDrvdTrans_Annotations());
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getIDefaultDrvdTrans_Stereotypes());
+		}
+		return childrenFeatures;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EStructuralFeature getChildFeature(Object object, Object child) {
+		// Check the type of the specified child object and return the proper feature to use for
+		// adding (see {@link AddCommand}) it as a child.
+
+		return super.getChildFeature(object, child);
+	}
+
+	/**
+	 * This returns IDefaultDrvdTrans.gif.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object getImage(Object object) {
+		return overlayImage(object, getResourceLocator().getImage("full/obj16/IDefaultDrvdTrans")); //$NON-NLS-1$
+	}
+
+	/**
+	 * This returns the label text for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String getText(Object object) {
+		String label = ((IDefaultDrvdTrans)object).getName();
+		return label == null || label.length() == 0 ?
+			getString("_UI_IDefaultDrvdTrans_type") : //$NON-NLS-1$
+			getString("_UI_IDefaultDrvdTrans_type") + " " + label; //$NON-NLS-1$ //$NON-NLS-2$
+	}
+	
+
+	/**
+	 * This handles model notifications by calling {@link #updateChildren} to update any cached
+	 * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void notifyChanged(Notification notification) {
+		updateChildren(notification);
+
+		switch (notification.getFeatureID(IDefaultDrvdTrans.class)) {
+			case UMLRpyPackage.IDEFAULT_DRVD_TRANS__MODIFIED_TIME_WEAK:
+			case UMLRpyPackage.IDEFAULT_DRVD_TRANS__STATIC_REACTION:
+			case UMLRpyPackage.IDEFAULT_DRVD_TRANS__ID:
+			case UMLRpyPackage.IDEFAULT_DRVD_TRANS__CODE_UPDATE_CG_TIME:
+			case UMLRpyPackage.IDEFAULT_DRVD_TRANS__REQUIREMEN_TRACABILITY_HANDLE:
+			case UMLRpyPackage.IDEFAULT_DRVD_TRANS__UML_DEPENDENCY_ID:
+			case UMLRpyPackage.IDEFAULT_DRVD_TRANS__MY_STATE:
+			case UMLRpyPackage.IDEFAULT_DRVD_TRANS__OBJECT_CREATION:
+			case UMLRpyPackage.IDEFAULT_DRVD_TRANS__NAME:
+			case UMLRpyPackage.IDEFAULT_DRVD_TRANS__ITS_SOURCE:
+			case UMLRpyPackage.IDEFAULT_DRVD_TRANS__ERROR_STATUS:
+				fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), false, true));
+				return;
+			case UMLRpyPackage.IDEFAULT_DRVD_TRANS__DESCRIPTION:
+			case UMLRpyPackage.IDEFAULT_DRVD_TRANS__ITS_LABEL:
+			case UMLRpyPackage.IDEFAULT_DRVD_TRANS__ANNOTATIONS:
+			case UMLRpyPackage.IDEFAULT_DRVD_TRANS__STEREOTYPES:
+				fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), true, false));
+				return;
+		}
+		super.notifyChanged(notification);
+	}
+
+	/**
+	 * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children
+	 * that can be created under this object.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) {
+		super.collectNewChildDescriptors(newChildDescriptors, object);
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getTransitionsType_Description(),
+				 UMLRpyFactory.eINSTANCE.createIDescription()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getTransitionsType_ItsLabel(),
+				 UMLRpyFactory.eINSTANCE.createILabel()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIDefaultDrvdTrans_Annotations(),
+				 UMLRpyFactory.eINSTANCE.createIRequirement()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIDefaultDrvdTrans_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIStereotype()));
+	}
+
+}
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/IDependencyItemProvider.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/IDependencyItemProvider.java
new file mode 100755
index 0000000..9a8207a
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/IDependencyItemProvider.java
@@ -0,0 +1,683 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.provider;
+
+
+import java.util.Collection;
+import java.util.List;
+
+import org.eclipse.emf.common.notify.AdapterFactory;
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.ecore.EStructuralFeature;
+
+import org.eclipse.emf.edit.provider.ComposeableAdapterFactory;
+import org.eclipse.emf.edit.provider.IItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.ItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.ViewerNotification;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IDependency;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyFactory;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IDependency} object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class IDependencyItemProvider extends IModelElementItemProvider {
+	/**
+	 * This constructs an instance from a factory and a notifier.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IDependencyItemProvider(AdapterFactory adapterFactory) {
+		super(adapterFactory);
+	}
+
+	/**
+	 * This returns the property descriptors for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) {
+		if (itemPropertyDescriptors == null) {
+			super.getPropertyDescriptors(object);
+
+			addUmlDependencyIDPropertyDescriptor(object);
+			addObjectCreationPropertyDescriptor(object);
+			addIdPropertyDescriptor(object);
+			addMyStatePropertyDescriptor(object);
+			addNamePropertyDescriptor(object);
+			addModifiedTimeWeakPropertyDescriptor(object);
+			addDependsOnPropertyDescriptor(object);
+			addRequiremenTracabilityHandlePropertyDescriptor(object);
+			addCodeUpdateCGTimePropertyDescriptor(object);
+		}
+		return itemPropertyDescriptors;
+	}
+
+	/**
+	 * This adds a property descriptor for the Uml Dependency ID feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addUmlDependencyIDPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_M_subjectType_umlDependencyID_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_M_subjectType_umlDependencyID_feature", "_UI_M_subjectType_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getM_subjectType_UmlDependencyID(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Object Creation feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addObjectCreationPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_M_subjectType_objectCreation_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_M_subjectType_objectCreation_feature", "_UI_M_subjectType_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getM_subjectType_ObjectCreation(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Id feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addIdPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IDependency_id_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IDependency_id_feature", "_UI_IDependency_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIDependency_Id(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the My State feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addMyStatePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IDependency_myState_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IDependency_myState_feature", "_UI_IDependency_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIDependency_MyState(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Name feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addNamePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IDependency_name_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IDependency_name_feature", "_UI_IDependency_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIDependency_Name(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Modified Time Weak feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addModifiedTimeWeakPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IDependency_modifiedTimeWeak_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IDependency_modifiedTimeWeak_feature", "_UI_IDependency_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIDependency_ModifiedTimeWeak(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Depends On feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addDependsOnPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IDependency_dependsOn_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IDependency_dependsOn_feature", "_UI_IDependency_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIDependency_DependsOn(),
+				 true,
+				 false,
+				 true,
+				 null,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Requiremen Tracability Handle feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addRequiremenTracabilityHandlePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IDependency_requiremenTracabilityHandle_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IDependency_requiremenTracabilityHandle_feature", "_UI_IDependency_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIDependency_RequiremenTracabilityHandle(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Code Update CG Time feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addCodeUpdateCGTimePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IDependency_codeUpdateCGTime_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IDependency_codeUpdateCGTime_feature", "_UI_IDependency_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIDependency_CodeUpdateCGTime(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This specifies how to implement {@link #getChildren} and is used to deduce an appropriate feature for an
+	 * {@link org.eclipse.emf.edit.command.AddCommand}, {@link org.eclipse.emf.edit.command.RemoveCommand} or
+	 * {@link org.eclipse.emf.edit.command.MoveCommand} in {@link #createCommand}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Collection<? extends EStructuralFeature> getChildrenFeatures(Object object) {
+		if (childrenFeatures == null) {
+			super.getChildrenFeatures(object);
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getIDependency_Properties());
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getIDependency_Stereotypes());
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getIDependency_Tags());
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getIDependency_Annotations());
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getIDependency_Dependencies());
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getIDependency_Description());
+		}
+		return childrenFeatures;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EStructuralFeature getChildFeature(Object object, Object child) {
+		// Check the type of the specified child object and return the proper feature to use for
+		// adding (see {@link AddCommand}) it as a child.
+
+		return super.getChildFeature(object, child);
+	}
+
+	/**
+	 * This returns IDependency.gif.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object getImage(Object object) {
+		return overlayImage(object, getResourceLocator().getImage("full/obj16/IDependency")); //$NON-NLS-1$
+	}
+
+	/**
+	 * This returns the label text for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String getText(Object object) {
+		String label = ((IDependency)object).getName();
+		return label == null || label.length() == 0 ?
+			getString("_UI_IDependency_type") : //$NON-NLS-1$
+			getString("_UI_IDependency_type") + " " + label; //$NON-NLS-1$ //$NON-NLS-2$
+	}
+	
+
+	/**
+	 * This handles model notifications by calling {@link #updateChildren} to update any cached
+	 * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void notifyChanged(Notification notification) {
+		updateChildren(notification);
+
+		switch (notification.getFeatureID(IDependency.class)) {
+			case UMLRpyPackage.IDEPENDENCY__UML_DEPENDENCY_ID:
+			case UMLRpyPackage.IDEPENDENCY__OBJECT_CREATION:
+			case UMLRpyPackage.IDEPENDENCY__ID:
+			case UMLRpyPackage.IDEPENDENCY__MY_STATE:
+			case UMLRpyPackage.IDEPENDENCY__NAME:
+			case UMLRpyPackage.IDEPENDENCY__MODIFIED_TIME_WEAK:
+			case UMLRpyPackage.IDEPENDENCY__REQUIREMEN_TRACABILITY_HANDLE:
+			case UMLRpyPackage.IDEPENDENCY__CODE_UPDATE_CG_TIME:
+				fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), false, true));
+				return;
+			case UMLRpyPackage.IDEPENDENCY__PROPERTIES:
+			case UMLRpyPackage.IDEPENDENCY__STEREOTYPES:
+			case UMLRpyPackage.IDEPENDENCY__TAGS:
+			case UMLRpyPackage.IDEPENDENCY__ANNOTATIONS:
+			case UMLRpyPackage.IDEPENDENCY__DEPENDENCIES:
+			case UMLRpyPackage.IDEPENDENCY__DESCRIPTION:
+				fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), true, false));
+				return;
+		}
+		super.notifyChanged(notification);
+	}
+
+	/**
+	 * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children
+	 * that can be created under this object.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) {
+		super.collectNewChildDescriptors(newChildDescriptors, object);
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIDependency_Properties(),
+				 UMLRpyFactory.eINSTANCE.createIPropertyContainer()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIDependency_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIUnit()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIDependency_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIClassifier()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIDependency_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIActor()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIDependency_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIAnnotation()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIDependency_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIVariable()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIDependency_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIArgument()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIDependency_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIClass()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIDependency_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIAssociationClass()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIDependency_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIAttribute()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIDependency_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIDependency_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createICollaborationDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIDependency_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIComment()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIDependency_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIComponent()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIDependency_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIComponentDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIDependency_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIConstraint()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIDependency_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIControlledFile()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIDependency_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIDeploymentDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIDependency_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIInterfaceItem()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIDependency_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIEvent()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIDependency_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIEventReception()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIDependency_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIFile()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIDependency_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIFlowItem()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIDependency_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIRelation()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIDependency_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIInstance()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIDependency_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createILink()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIDependency_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIMatrixLayout()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIDependency_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIMatrixView()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIDependency_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIModule()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIDependency_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createINode()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIDependency_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIObjectModelDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIDependency_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIOperation()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIDependency_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIPackage()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIDependency_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIPanelDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIDependency_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIPort()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIDependency_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIProfile()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIDependency_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIProject()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIDependency_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIRequirement()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIDependency_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createISequenceDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIDependency_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIStateChart()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIDependency_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIStateChartDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIDependency_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIStereotype()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIDependency_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIStructureDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIDependency_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createISysMLPort()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIDependency_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createITableLayout()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIDependency_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createITableView()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIDependency_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createITag()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIDependency_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createITemplateParameter()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIDependency_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIType()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIDependency_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIUseCase()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIDependency_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIUseCaseDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIDependency_Tags(),
+				 UMLRpyFactory.eINSTANCE.createITag()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIDependency_Annotations(),
+				 UMLRpyFactory.eINSTANCE.createIComment()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIDependency_Dependencies(),
+				 UMLRpyFactory.eINSTANCE.createIDependency()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIDependency_Dependencies(),
+				 UMLRpyFactory.eINSTANCE.createIHyperLink()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIDependency_Description(),
+				 UMLRpyFactory.eINSTANCE.createIDescription()));
+	}
+
+	/**
+	 * This returns the label text for {@link org.eclipse.emf.edit.command.CreateChildCommand}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String getCreateChildText(Object owner, Object feature, Object child, Collection<?> selection) {
+		Object childFeature = feature;
+		Object childObject = child;
+
+		boolean qualify =
+			childFeature == UMLRpyPackage.eINSTANCE.getIDependency_Stereotypes() ||
+			childFeature == UMLRpyPackage.eINSTANCE.getIDependency_Annotations() ||
+			childFeature == UMLRpyPackage.eINSTANCE.getIDependency_Tags();
+
+		if (qualify) {
+			return getString
+				("_UI_CreateChild_text2", //$NON-NLS-1$
+				 new Object[] { getTypeText(childObject), getFeatureText(childFeature), getTypeText(owner) });
+		}
+		return super.getCreateChildText(owner, feature, child, selection);
+	}
+
+}
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/IDeploymentDiagramItemProvider.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/IDeploymentDiagramItemProvider.java
new file mode 100755
index 0000000..d84d84f
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/IDeploymentDiagramItemProvider.java
@@ -0,0 +1,134 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.provider;
+
+
+import java.util.Collection;
+import java.util.List;
+
+import org.eclipse.emf.common.notify.AdapterFactory;
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.edit.provider.IItemPropertyDescriptor;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IDeploymentDiagram;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IDeploymentDiagram} object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class IDeploymentDiagramItemProvider extends IDiagramItemProvider {
+	/**
+	 * This constructs an instance from a factory and a notifier.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IDeploymentDiagramItemProvider(AdapterFactory adapterFactory) {
+		super(adapterFactory);
+	}
+
+	/**
+	 * This returns the property descriptors for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) {
+		if (itemPropertyDescriptors == null) {
+			super.getPropertyDescriptors(object);
+
+		}
+		return itemPropertyDescriptors;
+	}
+
+	/**
+	 * This returns IDeploymentDiagram.gif.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object getImage(Object object) {
+		return overlayImage(object, getResourceLocator().getImage("full/obj16/IDeploymentDiagram")); //$NON-NLS-1$
+	}
+
+	/**
+	 * This returns the label text for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String getText(Object object) {
+		String label = ((IDeploymentDiagram)object).getName();
+		return label == null || label.length() == 0 ?
+			getString("_UI_IDeploymentDiagram_type") : //$NON-NLS-1$
+			getString("_UI_IDeploymentDiagram_type") + " " + label; //$NON-NLS-1$ //$NON-NLS-2$
+	}
+	
+
+	/**
+	 * This handles model notifications by calling {@link #updateChildren} to update any cached
+	 * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void notifyChanged(Notification notification) {
+		updateChildren(notification);
+		super.notifyChanged(notification);
+	}
+
+	/**
+	 * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children
+	 * that can be created under this object.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) {
+		super.collectNewChildDescriptors(newChildDescriptors, object);
+	}
+
+	/**
+	 * This returns the label text for {@link org.eclipse.emf.edit.command.CreateChildCommand}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String getCreateChildText(Object owner, Object feature, Object child, Collection<?> selection) {
+		Object childFeature = feature;
+		Object childObject = child;
+
+		boolean qualify =
+			childFeature == UMLRpyPackage.eINSTANCE.getIDiagram_Stereotypes() ||
+			childFeature == UMLRpyPackage.eINSTANCE.getIDiagram_Annotations() ||
+			childFeature == UMLRpyPackage.eINSTANCE.getIDiagram_HyperLinks();
+
+		if (qualify) {
+			return getString
+				("_UI_CreateChild_text2", //$NON-NLS-1$
+				 new Object[] { getTypeText(childObject), getFeatureText(childFeature), getTypeText(owner) });
+		}
+		return super.getCreateChildText(owner, feature, child, selection);
+	}
+
+}
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/IDescriptionItemProvider.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/IDescriptionItemProvider.java
new file mode 100755
index 0000000..9d4a700
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/IDescriptionItemProvider.java
@@ -0,0 +1,217 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.provider;
+
+
+import java.util.Collection;
+import java.util.List;
+
+import org.eclipse.emf.common.notify.AdapterFactory;
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.ecore.EStructuralFeature;
+
+import org.eclipse.emf.edit.provider.ComposeableAdapterFactory;
+import org.eclipse.emf.edit.provider.IItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.ItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.ViewerNotification;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IDescription;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyFactory;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IDescription} object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class IDescriptionItemProvider extends DescriptionTypeItemProvider {
+	/**
+	 * This constructs an instance from a factory and a notifier.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IDescriptionItemProvider(AdapterFactory adapterFactory) {
+		super(adapterFactory);
+	}
+
+	/**
+	 * This returns the property descriptors for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) {
+		if (itemPropertyDescriptors == null) {
+			super.getPropertyDescriptors(object);
+
+			addTextRTFPropertyDescriptor(object);
+			addTextPropertyDescriptor(object);
+		}
+		return itemPropertyDescriptors;
+	}
+
+	/**
+	 * This adds a property descriptor for the Text RTF feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addTextRTFPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IDescription_textRTF_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IDescription_textRTF_feature", "_UI_IDescription_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIDescription_TextRTF(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Text feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addTextPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IDescription_text_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IDescription_text_feature", "_UI_IDescription_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIDescription_Text(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This specifies how to implement {@link #getChildren} and is used to deduce an appropriate feature for an
+	 * {@link org.eclipse.emf.edit.command.AddCommand}, {@link org.eclipse.emf.edit.command.RemoveCommand} or
+	 * {@link org.eclipse.emf.edit.command.MoveCommand} in {@link #createCommand}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Collection<? extends EStructuralFeature> getChildrenFeatures(Object object) {
+		if (childrenFeatures == null) {
+			super.getChildrenFeatures(object);
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getIDescription_Hyperlinks());
+		}
+		return childrenFeatures;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EStructuralFeature getChildFeature(Object object, Object child) {
+		// Check the type of the specified child object and return the proper feature to use for
+		// adding (see {@link AddCommand}) it as a child.
+
+		return super.getChildFeature(object, child);
+	}
+
+	/**
+	 * This returns IDescription.gif.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object getImage(Object object) {
+		return overlayImage(object, getResourceLocator().getImage("full/obj16/IDescription")); //$NON-NLS-1$
+	}
+
+	/**
+	 * This returns the label text for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String getText(Object object) {
+		String label = ((IDescription)object).getTextRTF();
+		return label == null || label.length() == 0 ?
+			getString("_UI_IDescription_type") : //$NON-NLS-1$
+			getString("_UI_IDescription_type") + " " + label; //$NON-NLS-1$ //$NON-NLS-2$
+	}
+	
+
+	/**
+	 * This handles model notifications by calling {@link #updateChildren} to update any cached
+	 * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void notifyChanged(Notification notification) {
+		updateChildren(notification);
+
+		switch (notification.getFeatureID(IDescription.class)) {
+			case UMLRpyPackage.IDESCRIPTION__TEXT_RTF:
+			case UMLRpyPackage.IDESCRIPTION__TEXT:
+				fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), false, true));
+				return;
+			case UMLRpyPackage.IDESCRIPTION__HYPERLINKS:
+				fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), true, false));
+				return;
+		}
+		super.notifyChanged(notification);
+	}
+
+	/**
+	 * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children
+	 * that can be created under this object.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) {
+		super.collectNewChildDescriptors(newChildDescriptors, object);
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIDescription_Hyperlinks(),
+				 UMLRpyFactory.eINSTANCE.createIExternalHyperlink()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIDescription_Hyperlinks(),
+				 UMLRpyFactory.eINSTANCE.createIInternalHyperlink()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIDescription_Hyperlinks(),
+				 UMLRpyFactory.eINSTANCE.createIMHyperLink()));
+	}
+
+}
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/IDestructorItemProvider.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/IDestructorItemProvider.java
new file mode 100755
index 0000000..65b3d14
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/IDestructorItemProvider.java
@@ -0,0 +1,507 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.provider;
+
+
+import java.util.Collection;
+import java.util.List;
+
+import org.eclipse.emf.common.notify.AdapterFactory;
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.ecore.EStructuralFeature;
+
+import org.eclipse.emf.edit.provider.ComposeableAdapterFactory;
+import org.eclipse.emf.edit.provider.IItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.ItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.ViewerNotification;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IDestructor;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyFactory;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IDestructor} object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class IDestructorItemProvider extends OperationsTypeItemProvider {
+	/**
+	 * This constructs an instance from a factory and a notifier.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IDestructorItemProvider(AdapterFactory adapterFactory) {
+		super(adapterFactory);
+	}
+
+	/**
+	 * This returns the property descriptors for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) {
+		if (itemPropertyDescriptors == null) {
+			super.getPropertyDescriptors(object);
+
+			addUmlDependencyIDPropertyDescriptor(object);
+			addObjectCreationPropertyDescriptor(object);
+			addIdPropertyDescriptor(object);
+			addNamePropertyDescriptor(object);
+			addArgsPropertyDescriptor(object);
+			addAbstractPropertyDescriptor(object);
+			addFinalPropertyDescriptor(object);
+			addConcurrencyPropertyDescriptor(object);
+			addProtectionPropertyDescriptor(object);
+			addStaticPropertyDescriptor(object);
+			addConstantPropertyDescriptor(object);
+			addModifiedTimeWeakPropertyDescriptor(object);
+			addMyStatePropertyDescriptor(object);
+			addReturnTypePropertyDescriptor(object);
+		}
+		return itemPropertyDescriptors;
+	}
+
+	/**
+	 * This adds a property descriptor for the Uml Dependency ID feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addUmlDependencyIDPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_M_subjectType_umlDependencyID_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_M_subjectType_umlDependencyID_feature", "_UI_M_subjectType_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getM_subjectType_UmlDependencyID(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Object Creation feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addObjectCreationPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_M_subjectType_objectCreation_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_M_subjectType_objectCreation_feature", "_UI_M_subjectType_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getM_subjectType_ObjectCreation(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Id feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addIdPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IDestructor_id_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IDestructor_id_feature", "_UI_IDestructor_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIDestructor_Id(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Name feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addNamePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IDestructor_name_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IDestructor_name_feature", "_UI_IDestructor_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIDestructor_Name(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Args feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addArgsPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IDestructor_Args_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IDestructor_Args_feature", "_UI_IDestructor_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIDestructor_Args(),
+				 true,
+				 false,
+				 true,
+				 null,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Abstract feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addAbstractPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IDestructor_abstract_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IDestructor_abstract_feature", "_UI_IDestructor_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIDestructor_Abstract(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Final feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addFinalPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IDestructor_final_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IDestructor_final_feature", "_UI_IDestructor_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIDestructor_Final(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Concurrency feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addConcurrencyPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IDestructor_concurrency_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IDestructor_concurrency_feature", "_UI_IDestructor_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIDestructor_Concurrency(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Protection feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addProtectionPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IDestructor_protection_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IDestructor_protection_feature", "_UI_IDestructor_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIDestructor_Protection(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Static feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addStaticPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IDestructor_static_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IDestructor_static_feature", "_UI_IDestructor_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIDestructor_Static(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Constant feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addConstantPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IDestructor_constant_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IDestructor_constant_feature", "_UI_IDestructor_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIDestructor_Constant(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Modified Time Weak feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addModifiedTimeWeakPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IDestructor_modifiedTimeWeak_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IDestructor_modifiedTimeWeak_feature", "_UI_IDestructor_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIDestructor_ModifiedTimeWeak(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the My State feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addMyStatePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IDestructor_myState_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IDestructor_myState_feature", "_UI_IDestructor_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIDestructor_MyState(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Return Type feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addReturnTypePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IDestructor_returnType_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IDestructor_returnType_feature", "_UI_IDestructor_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIDestructor_ReturnType(),
+				 true,
+				 false,
+				 true,
+				 null,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This specifies how to implement {@link #getChildren} and is used to deduce an appropriate feature for an
+	 * {@link org.eclipse.emf.edit.command.AddCommand}, {@link org.eclipse.emf.edit.command.RemoveCommand} or
+	 * {@link org.eclipse.emf.edit.command.MoveCommand} in {@link #createCommand}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Collection<? extends EStructuralFeature> getChildrenFeatures(Object object) {
+		if (childrenFeatures == null) {
+			super.getChildrenFeatures(object);
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getIDestructor_ItsBody());
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getIDestructor_Description());
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getIDestructor_Properties());
+		}
+		return childrenFeatures;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EStructuralFeature getChildFeature(Object object, Object child) {
+		// Check the type of the specified child object and return the proper feature to use for
+		// adding (see {@link AddCommand}) it as a child.
+
+		return super.getChildFeature(object, child);
+	}
+
+	/**
+	 * This returns IDestructor.gif.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object getImage(Object object) {
+		return overlayImage(object, getResourceLocator().getImage("full/obj16/IDestructor")); //$NON-NLS-1$
+	}
+
+	/**
+	 * This returns the label text for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String getText(Object object) {
+		String label = ((IDestructor)object).getName();
+		return label == null || label.length() == 0 ?
+			getString("_UI_IDestructor_type") : //$NON-NLS-1$
+			getString("_UI_IDestructor_type") + " " + label; //$NON-NLS-1$ //$NON-NLS-2$
+	}
+	
+
+	/**
+	 * This handles model notifications by calling {@link #updateChildren} to update any cached
+	 * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void notifyChanged(Notification notification) {
+		updateChildren(notification);
+
+		switch (notification.getFeatureID(IDestructor.class)) {
+			case UMLRpyPackage.IDESTRUCTOR__UML_DEPENDENCY_ID:
+			case UMLRpyPackage.IDESTRUCTOR__OBJECT_CREATION:
+			case UMLRpyPackage.IDESTRUCTOR__ID:
+			case UMLRpyPackage.IDESTRUCTOR__NAME:
+			case UMLRpyPackage.IDESTRUCTOR__ABSTRACT:
+			case UMLRpyPackage.IDESTRUCTOR__FINAL:
+			case UMLRpyPackage.IDESTRUCTOR__CONCURRENCY:
+			case UMLRpyPackage.IDESTRUCTOR__PROTECTION:
+			case UMLRpyPackage.IDESTRUCTOR__STATIC:
+			case UMLRpyPackage.IDESTRUCTOR__CONSTANT:
+			case UMLRpyPackage.IDESTRUCTOR__MODIFIED_TIME_WEAK:
+			case UMLRpyPackage.IDESTRUCTOR__MY_STATE:
+				fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), false, true));
+				return;
+			case UMLRpyPackage.IDESTRUCTOR__ITS_BODY:
+			case UMLRpyPackage.IDESTRUCTOR__DESCRIPTION:
+			case UMLRpyPackage.IDESTRUCTOR__PROPERTIES:
+				fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), true, false));
+				return;
+		}
+		super.notifyChanged(notification);
+	}
+
+	/**
+	 * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children
+	 * that can be created under this object.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) {
+		super.collectNewChildDescriptors(newChildDescriptors, object);
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIDestructor_ItsBody(),
+				 UMLRpyFactory.eINSTANCE.createIBody()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIDestructor_Description(),
+				 UMLRpyFactory.eINSTANCE.createIDescription()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIDestructor_Properties(),
+				 UMLRpyFactory.eINSTANCE.createIPropertyContainer()));
+	}
+
+}
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/IDiagramItemProvider.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/IDiagramItemProvider.java
new file mode 100755
index 0000000..6a7a78b
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/IDiagramItemProvider.java
@@ -0,0 +1,1053 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.provider;
+
+
+import java.util.Collection;
+import java.util.List;
+
+import org.eclipse.emf.common.notify.AdapterFactory;
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.ecore.EStructuralFeature;
+
+import org.eclipse.emf.edit.provider.ComposeableAdapterFactory;
+import org.eclipse.emf.edit.provider.IItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.ItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.ViewerNotification;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IDiagram;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyFactory;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IDiagram} object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class IDiagramItemProvider extends IUnitItemProvider {
+	/**
+	 * This constructs an instance from a factory and a notifier.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IDiagramItemProvider(AdapterFactory adapterFactory) {
+		super(adapterFactory);
+	}
+
+	/**
+	 * This returns the property descriptors for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) {
+		if (itemPropertyDescriptors == null) {
+			super.getPropertyDescriptors(object);
+
+			addIdPropertyDescriptor(object);
+			addLastModifiedTimePropertyDescriptor(object);
+			addRequiremenTracabilityHandlePropertyDescriptor(object);
+			addDefaultSubsystemPropertyDescriptor(object);
+			addUmlDependencyIDPropertyDescriptor(object);
+			addLastIDPropertyDescriptor(object);
+			addMyStatePropertyDescriptor(object);
+			addOwnerHandlePropertyDescriptor(object);
+			addObjectCreationPropertyDescriptor(object);
+			addNamePropertyDescriptor(object);
+			addCmheaderPropertyDescriptor(object);
+			addModifiedTimeWeakPropertyDescriptor(object);
+			addCodeUpdateCGTimePropertyDescriptor(object);
+		}
+		return itemPropertyDescriptors;
+	}
+
+	/**
+	 * This adds a property descriptor for the Id feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addIdPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_TheMainDiagramType_id_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_TheMainDiagramType_id_feature", "_UI_TheMainDiagramType_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getTheMainDiagramType_Id(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Last Modified Time feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addLastModifiedTimePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_TheMainDiagramType_lastModifiedTime_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_TheMainDiagramType_lastModifiedTime_feature", "_UI_TheMainDiagramType_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getTheMainDiagramType_LastModifiedTime(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Requiremen Tracability Handle feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addRequiremenTracabilityHandlePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_TheMainDiagramType_requiremenTracabilityHandle_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_TheMainDiagramType_requiremenTracabilityHandle_feature", "_UI_TheMainDiagramType_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getTheMainDiagramType_RequiremenTracabilityHandle(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Default Subsystem feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addDefaultSubsystemPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_TheMainDiagramType_defaultSubsystem_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_TheMainDiagramType_defaultSubsystem_feature", "_UI_TheMainDiagramType_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getTheMainDiagramType_DefaultSubsystem(),
+				 true,
+				 false,
+				 true,
+				 null,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Uml Dependency ID feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addUmlDependencyIDPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_TheMainDiagramType_umlDependencyID_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_TheMainDiagramType_umlDependencyID_feature", "_UI_TheMainDiagramType_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getTheMainDiagramType_UmlDependencyID(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Last ID feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addLastIDPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_TheMainDiagramType_lastID_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_TheMainDiagramType_lastID_feature", "_UI_TheMainDiagramType_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getTheMainDiagramType_LastID(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the My State feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addMyStatePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_TheMainDiagramType_myState_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_TheMainDiagramType_myState_feature", "_UI_TheMainDiagramType_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getTheMainDiagramType_MyState(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Owner Handle feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addOwnerHandlePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_TheMainDiagramType_ownerHandle_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_TheMainDiagramType_ownerHandle_feature", "_UI_TheMainDiagramType_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getTheMainDiagramType_OwnerHandle(),
+				 true,
+				 false,
+				 true,
+				 null,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Object Creation feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addObjectCreationPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_TheMainDiagramType_objectCreation_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_TheMainDiagramType_objectCreation_feature", "_UI_TheMainDiagramType_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getTheMainDiagramType_ObjectCreation(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Name feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addNamePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_TheMainDiagramType_name_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_TheMainDiagramType_name_feature", "_UI_TheMainDiagramType_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getTheMainDiagramType_Name(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Cmheader feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addCmheaderPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_TheMainDiagramType_cmheader_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_TheMainDiagramType_cmheader_feature", "_UI_TheMainDiagramType_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getTheMainDiagramType_Cmheader(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Modified Time Weak feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addModifiedTimeWeakPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IDiagram_modifiedTimeWeak_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IDiagram_modifiedTimeWeak_feature", "_UI_IDiagram_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIDiagram_ModifiedTimeWeak(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Code Update CG Time feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addCodeUpdateCGTimePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IDiagram_codeUpdateCGTime_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IDiagram_codeUpdateCGTime_feature", "_UI_IDiagram_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIDiagram_CodeUpdateCGTime(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This specifies how to implement {@link #getChildren} and is used to deduce an appropriate feature for an
+	 * {@link org.eclipse.emf.edit.command.AddCommand}, {@link org.eclipse.emf.edit.command.RemoveCommand} or
+	 * {@link org.eclipse.emf.edit.command.MoveCommand} in {@link #createCommand}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Collection<? extends EStructuralFeature> getChildrenFeatures(Object object) {
+		if (childrenFeatures == null) {
+			super.getChildrenFeatures(object);
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getTheMainDiagramType_Description());
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getIDiagram_Properties());
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getIDiagram_Stereotypes());
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getIDiagram_GraphicChart());
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getIDiagram_Annotations());
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getIDiagram_HyperLinks());
+		}
+		return childrenFeatures;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EStructuralFeature getChildFeature(Object object, Object child) {
+		// Check the type of the specified child object and return the proper feature to use for
+		// adding (see {@link AddCommand}) it as a child.
+
+		return super.getChildFeature(object, child);
+	}
+
+	/**
+	 * This returns IDiagram.gif.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object getImage(Object object) {
+		return overlayImage(object, getResourceLocator().getImage("full/obj16/IDiagram")); //$NON-NLS-1$
+	}
+
+	/**
+	 * This returns the label text for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String getText(Object object) {
+		String label = ((IDiagram)object).getName();
+		return label == null || label.length() == 0 ?
+			getString("_UI_IDiagram_type") : //$NON-NLS-1$
+			getString("_UI_IDiagram_type") + " " + label; //$NON-NLS-1$ //$NON-NLS-2$
+	}
+	
+
+	/**
+	 * This handles model notifications by calling {@link #updateChildren} to update any cached
+	 * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void notifyChanged(Notification notification) {
+		updateChildren(notification);
+
+		switch (notification.getFeatureID(IDiagram.class)) {
+			case UMLRpyPackage.IDIAGRAM__ID:
+			case UMLRpyPackage.IDIAGRAM__LAST_MODIFIED_TIME:
+			case UMLRpyPackage.IDIAGRAM__REQUIREMEN_TRACABILITY_HANDLE:
+			case UMLRpyPackage.IDIAGRAM__UML_DEPENDENCY_ID:
+			case UMLRpyPackage.IDIAGRAM__LAST_ID:
+			case UMLRpyPackage.IDIAGRAM__MY_STATE:
+			case UMLRpyPackage.IDIAGRAM__OBJECT_CREATION:
+			case UMLRpyPackage.IDIAGRAM__NAME:
+			case UMLRpyPackage.IDIAGRAM__CMHEADER:
+			case UMLRpyPackage.IDIAGRAM__MODIFIED_TIME_WEAK:
+			case UMLRpyPackage.IDIAGRAM__CODE_UPDATE_CG_TIME:
+				fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), false, true));
+				return;
+			case UMLRpyPackage.IDIAGRAM__DESCRIPTION:
+			case UMLRpyPackage.IDIAGRAM__PROPERTIES:
+			case UMLRpyPackage.IDIAGRAM__STEREOTYPES:
+			case UMLRpyPackage.IDIAGRAM__GRAPHIC_CHART:
+			case UMLRpyPackage.IDIAGRAM__ANNOTATIONS:
+			case UMLRpyPackage.IDIAGRAM__HYPER_LINKS:
+				fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), true, false));
+				return;
+		}
+		super.notifyChanged(notification);
+	}
+
+	/**
+	 * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children
+	 * that can be created under this object.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) {
+		super.collectNewChildDescriptors(newChildDescriptors, object);
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getTheMainDiagramType_Description(),
+				 UMLRpyFactory.eINSTANCE.createIDescription()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIDiagram_Properties(),
+				 UMLRpyFactory.eINSTANCE.createIPropertyContainer()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIDiagram_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIModelElement()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIDiagram_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIStateVertex()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIDiagram_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIState()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIDiagram_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIAcceptEventAction()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIDiagram_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIAcceptTimeEvent()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIDiagram_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIAction()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIDiagram_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIActivityGraph()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIDiagram_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIUnit()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIDiagram_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIClassifier()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIDiagram_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIActor()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIDiagram_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIAnnotation()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIDiagram_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIVariable()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIDiagram_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIArgument()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIDiagram_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIClass()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIDiagram_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIAssociationClass()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIDiagram_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIAssociationEnd()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIDiagram_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIAssociationRole()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIDiagram_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIAttribute()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIDiagram_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createICallOperation()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIDiagram_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIClassifierRole()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIDiagram_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createICollaboration()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIDiagram_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIDiagram_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createICollaborationDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIDiagram_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIComment()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIDiagram_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIComponent()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIDiagram_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIComponentDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIDiagram_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIComponentInstance()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIDiagram_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIConfiguration()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIDiagram_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIConnector()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIDiagram_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIConstraint()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIDiagram_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIValueSpecification()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIDiagram_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIContextSpecification()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIDiagram_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIControlledFile()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIDiagram_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIDependency()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIDiagram_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIDeploymentDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIDiagram_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIEnumerationLiteral()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIDiagram_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIInterfaceItem()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIDiagram_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIEvent()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIDiagram_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIEventReception()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIDiagram_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIExecutionOccurrence()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIDiagram_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIExternalHyperlink()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIDiagram_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIFile()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIDiagram_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIFileFragment()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIDiagram_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIFlow()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIDiagram_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIFlowItem()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIDiagram_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIGeneralization()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIDiagram_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIGuard()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIDiagram_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIHyperLink()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIDiagram_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIInformationFlow()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIDiagram_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIRelation()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIDiagram_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIInstance()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIDiagram_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIInstanceSlot()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIDiagram_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIInstanceSpecification()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIDiagram_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIInstanceValue()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIDiagram_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIInteractionOccurrence()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIDiagram_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIInteractionOperand()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIDiagram_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIInteractionOperator()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIDiagram_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIInternalHyperlink()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIDiagram_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createILink()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIDiagram_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createILiteralSpecification()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIDiagram_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIMHyperLink()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIDiagram_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIMatrixLayout()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIDiagram_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIMatrixView()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIDiagram_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIMessage()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIDiagram_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIMessagePoint()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIDiagram_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIModule()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIDiagram_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createINode()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIDiagram_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIObjectLink()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIDiagram_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIObjectModelDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIDiagram_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIObjectNode()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIDiagram_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIOperation()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIDiagram_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIPackage()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIDiagram_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIPanelDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIDiagram_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIPart()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIDiagram_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIPin()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIDiagram_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIPort()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIDiagram_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIPrimitiveOperation()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIDiagram_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIProfile()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIDiagram_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIProject()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIDiagram_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIRequirement()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIDiagram_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createISendAction()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIDiagram_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createISequenceDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIDiagram_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIStateChart()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIDiagram_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIStateChartDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIDiagram_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIStereotype()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIDiagram_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIStructureDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIDiagram_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createISubsystem()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIDiagram_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createISwimlane()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIDiagram_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createISysMLPort()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIDiagram_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createITableLayout()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIDiagram_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createITableView()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIDiagram_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createITag()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIDiagram_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createITemplateInstantiation()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIDiagram_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createITemplateInstantiationParameter()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIDiagram_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createITemplateParameter()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIDiagram_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createITransition()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIDiagram_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createITrigger()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIDiagram_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createITriggered()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIDiagram_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIType()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIDiagram_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIUseCase()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIDiagram_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIUseCaseDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIDiagram_GraphicChart(),
+				 UMLRpyFactory.eINSTANCE.createCCollaborationChart()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIDiagram_GraphicChart(),
+				 UMLRpyFactory.eINSTANCE.createCGIClassChart()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIDiagram_GraphicChart(),
+				 UMLRpyFactory.eINSTANCE.createCGIStateChart()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIDiagram_Annotations(),
+				 UMLRpyFactory.eINSTANCE.createIAnnotation()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIDiagram_Annotations(),
+				 UMLRpyFactory.eINSTANCE.createIComment()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIDiagram_Annotations(),
+				 UMLRpyFactory.eINSTANCE.createIConstraint()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIDiagram_Annotations(),
+				 UMLRpyFactory.eINSTANCE.createIRequirement()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIDiagram_HyperLinks(),
+				 UMLRpyFactory.eINSTANCE.createIMHyperLink()));
+	}
+
+	/**
+	 * This returns the label text for {@link org.eclipse.emf.edit.command.CreateChildCommand}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String getCreateChildText(Object owner, Object feature, Object child, Collection<?> selection) {
+		Object childFeature = feature;
+		Object childObject = child;
+
+		boolean qualify =
+			childFeature == UMLRpyPackage.eINSTANCE.getIDiagram_Stereotypes() ||
+			childFeature == UMLRpyPackage.eINSTANCE.getIDiagram_Annotations() ||
+			childFeature == UMLRpyPackage.eINSTANCE.getIDiagram_HyperLinks();
+
+		if (qualify) {
+			return getString
+				("_UI_CreateChild_text2", //$NON-NLS-1$
+				 new Object[] { getTypeText(childObject), getFeatureText(childFeature), getTypeText(owner) });
+		}
+		return super.getCreateChildText(owner, feature, child, selection);
+	}
+
+}
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/IEmbededFileItemProvider.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/IEmbededFileItemProvider.java
new file mode 100755
index 0000000..782564f
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/IEmbededFileItemProvider.java
@@ -0,0 +1,302 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.provider;
+
+
+import java.util.Collection;
+import java.util.List;
+
+import org.eclipse.emf.common.notify.AdapterFactory;
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.ecore.EStructuralFeature;
+
+import org.eclipse.emf.edit.provider.ComposeableAdapterFactory;
+import org.eclipse.emf.edit.provider.IItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.ItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.ViewerNotification;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IEmbededFile;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyFactory;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IEmbededFile} object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class IEmbededFileItemProvider extends EmbededFilesTypeItemProvider {
+	/**
+	 * This constructs an instance from a factory and a notifier.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IEmbededFileItemProvider(AdapterFactory adapterFactory) {
+		super(adapterFactory);
+	}
+
+	/**
+	 * This returns the property descriptors for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) {
+		if (itemPropertyDescriptors == null) {
+			super.getPropertyDescriptors(object);
+
+			addIdPropertyDescriptor(object);
+			addNamePropertyDescriptor(object);
+			addModifiedTimeWeakPropertyDescriptor(object);
+			addMayNeedToRelocatePropertyDescriptor(object);
+			addLastKnownFullPathPropertyDescriptor(object);
+			addStereotypesPropertyDescriptor(object);
+		}
+		return itemPropertyDescriptors;
+	}
+
+	/**
+	 * This adds a property descriptor for the Id feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addIdPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IEmbededFile_id_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IEmbededFile_id_feature", "_UI_IEmbededFile_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIEmbededFile_Id(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Name feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addNamePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IEmbededFile_name_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IEmbededFile_name_feature", "_UI_IEmbededFile_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIEmbededFile_Name(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Modified Time Weak feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addModifiedTimeWeakPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IEmbededFile_modifiedTimeWeak_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IEmbededFile_modifiedTimeWeak_feature", "_UI_IEmbededFile_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIEmbededFile_ModifiedTimeWeak(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the May Need To Relocate feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addMayNeedToRelocatePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IEmbededFile_MayNeedToRelocate_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IEmbededFile_MayNeedToRelocate_feature", "_UI_IEmbededFile_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIEmbededFile_MayNeedToRelocate(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Last Known Full Path feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addLastKnownFullPathPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IEmbededFile_LastKnownFullPath_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IEmbededFile_LastKnownFullPath_feature", "_UI_IEmbededFile_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIEmbededFile_LastKnownFullPath(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Stereotypes feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addStereotypesPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IEmbededFile_Stereotypes_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IEmbededFile_Stereotypes_feature", "_UI_IEmbededFile_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIEmbededFile_Stereotypes(),
+				 true,
+				 false,
+				 true,
+				 null,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This specifies how to implement {@link #getChildren} and is used to deduce an appropriate feature for an
+	 * {@link org.eclipse.emf.edit.command.AddCommand}, {@link org.eclipse.emf.edit.command.RemoveCommand} or
+	 * {@link org.eclipse.emf.edit.command.MoveCommand} in {@link #createCommand}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Collection<? extends EStructuralFeature> getChildrenFeatures(Object object) {
+		if (childrenFeatures == null) {
+			super.getChildrenFeatures(object);
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getIEmbededFile_Tags());
+		}
+		return childrenFeatures;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EStructuralFeature getChildFeature(Object object, Object child) {
+		// Check the type of the specified child object and return the proper feature to use for
+		// adding (see {@link AddCommand}) it as a child.
+
+		return super.getChildFeature(object, child);
+	}
+
+	/**
+	 * This returns IEmbededFile.gif.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object getImage(Object object) {
+		return overlayImage(object, getResourceLocator().getImage("full/obj16/IEmbededFile")); //$NON-NLS-1$
+	}
+
+	/**
+	 * This returns the label text for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String getText(Object object) {
+		String label = ((IEmbededFile)object).getName();
+		return label == null || label.length() == 0 ?
+			getString("_UI_IEmbededFile_type") : //$NON-NLS-1$
+			getString("_UI_IEmbededFile_type") + " " + label; //$NON-NLS-1$ //$NON-NLS-2$
+	}
+	
+
+	/**
+	 * This handles model notifications by calling {@link #updateChildren} to update any cached
+	 * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void notifyChanged(Notification notification) {
+		updateChildren(notification);
+
+		switch (notification.getFeatureID(IEmbededFile.class)) {
+			case UMLRpyPackage.IEMBEDED_FILE__ID:
+			case UMLRpyPackage.IEMBEDED_FILE__NAME:
+			case UMLRpyPackage.IEMBEDED_FILE__MODIFIED_TIME_WEAK:
+			case UMLRpyPackage.IEMBEDED_FILE__MAY_NEED_TO_RELOCATE:
+			case UMLRpyPackage.IEMBEDED_FILE__LAST_KNOWN_FULL_PATH:
+				fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), false, true));
+				return;
+			case UMLRpyPackage.IEMBEDED_FILE__TAGS:
+				fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), true, false));
+				return;
+		}
+		super.notifyChanged(notification);
+	}
+
+	/**
+	 * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children
+	 * that can be created under this object.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) {
+		super.collectNewChildDescriptors(newChildDescriptors, object);
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIEmbededFile_Tags(),
+				 UMLRpyFactory.eINSTANCE.createITag()));
+	}
+
+}
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/IEnumerationLiteralItemProvider.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/IEnumerationLiteralItemProvider.java
new file mode 100755
index 0000000..5e81118
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/IEnumerationLiteralItemProvider.java
@@ -0,0 +1,293 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.provider;
+
+
+import java.util.Collection;
+import java.util.List;
+
+import org.eclipse.emf.common.notify.AdapterFactory;
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.ecore.EStructuralFeature;
+
+import org.eclipse.emf.edit.provider.ComposeableAdapterFactory;
+import org.eclipse.emf.edit.provider.IItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.ItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.ViewerNotification;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IEnumerationLiteral;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyFactory;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IEnumerationLiteral} object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class IEnumerationLiteralItemProvider extends IModelElementItemProvider {
+	/**
+	 * This constructs an instance from a factory and a notifier.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IEnumerationLiteralItemProvider(AdapterFactory adapterFactory) {
+		super(adapterFactory);
+	}
+
+	/**
+	 * This returns the property descriptors for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) {
+		if (itemPropertyDescriptors == null) {
+			super.getPropertyDescriptors(object);
+
+			addIdPropertyDescriptor(object);
+			addNamePropertyDescriptor(object);
+			addModifiedTimeWeakPropertyDescriptor(object);
+			addValuePropertyDescriptor(object);
+			addCodeUpdateCGTimePropertyDescriptor(object);
+		}
+		return itemPropertyDescriptors;
+	}
+
+	/**
+	 * This adds a property descriptor for the Id feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addIdPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IEnumerationLiteral_id_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IEnumerationLiteral_id_feature", "_UI_IEnumerationLiteral_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIEnumerationLiteral_Id(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Name feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addNamePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IEnumerationLiteral_name_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IEnumerationLiteral_name_feature", "_UI_IEnumerationLiteral_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIEnumerationLiteral_Name(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Modified Time Weak feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addModifiedTimeWeakPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IEnumerationLiteral_modifiedTimeWeak_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IEnumerationLiteral_modifiedTimeWeak_feature", "_UI_IEnumerationLiteral_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIEnumerationLiteral_ModifiedTimeWeak(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Value feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addValuePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IEnumerationLiteral_value_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IEnumerationLiteral_value_feature", "_UI_IEnumerationLiteral_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIEnumerationLiteral_Value(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Code Update CG Time feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addCodeUpdateCGTimePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IEnumerationLiteral_codeUpdateCGTime_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IEnumerationLiteral_codeUpdateCGTime_feature", "_UI_IEnumerationLiteral_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIEnumerationLiteral_CodeUpdateCGTime(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This specifies how to implement {@link #getChildren} and is used to deduce an appropriate feature for an
+	 * {@link org.eclipse.emf.edit.command.AddCommand}, {@link org.eclipse.emf.edit.command.RemoveCommand} or
+	 * {@link org.eclipse.emf.edit.command.MoveCommand} in {@link #createCommand}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Collection<? extends EStructuralFeature> getChildrenFeatures(Object object) {
+		if (childrenFeatures == null) {
+			super.getChildrenFeatures(object);
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getIEnumerationLiteral_Properties());
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getIEnumerationLiteral_Tags());
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getIEnumerationLiteral_Description());
+		}
+		return childrenFeatures;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EStructuralFeature getChildFeature(Object object, Object child) {
+		// Check the type of the specified child object and return the proper feature to use for
+		// adding (see {@link AddCommand}) it as a child.
+
+		return super.getChildFeature(object, child);
+	}
+
+	/**
+	 * This returns IEnumerationLiteral.gif.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object getImage(Object object) {
+		return overlayImage(object, getResourceLocator().getImage("full/obj16/IEnumerationLiteral")); //$NON-NLS-1$
+	}
+
+	/**
+	 * This returns the label text for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String getText(Object object) {
+		String label = ((IEnumerationLiteral)object).getName();
+		return label == null || label.length() == 0 ?
+			getString("_UI_IEnumerationLiteral_type") : //$NON-NLS-1$
+			getString("_UI_IEnumerationLiteral_type") + " " + label; //$NON-NLS-1$ //$NON-NLS-2$
+	}
+	
+
+	/**
+	 * This handles model notifications by calling {@link #updateChildren} to update any cached
+	 * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void notifyChanged(Notification notification) {
+		updateChildren(notification);
+
+		switch (notification.getFeatureID(IEnumerationLiteral.class)) {
+			case UMLRpyPackage.IENUMERATION_LITERAL__ID:
+			case UMLRpyPackage.IENUMERATION_LITERAL__NAME:
+			case UMLRpyPackage.IENUMERATION_LITERAL__MODIFIED_TIME_WEAK:
+			case UMLRpyPackage.IENUMERATION_LITERAL__VALUE:
+			case UMLRpyPackage.IENUMERATION_LITERAL__CODE_UPDATE_CG_TIME:
+				fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), false, true));
+				return;
+			case UMLRpyPackage.IENUMERATION_LITERAL__PROPERTIES:
+			case UMLRpyPackage.IENUMERATION_LITERAL__TAGS:
+			case UMLRpyPackage.IENUMERATION_LITERAL__DESCRIPTION:
+				fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), true, false));
+				return;
+		}
+		super.notifyChanged(notification);
+	}
+
+	/**
+	 * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children
+	 * that can be created under this object.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) {
+		super.collectNewChildDescriptors(newChildDescriptors, object);
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIEnumerationLiteral_Properties(),
+				 UMLRpyFactory.eINSTANCE.createIPropertyContainer()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIEnumerationLiteral_Tags(),
+				 UMLRpyFactory.eINSTANCE.createITag()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIEnumerationLiteral_Description(),
+				 UMLRpyFactory.eINSTANCE.createIDescription()));
+	}
+
+}
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/IEventHandleItemProvider.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/IEventHandleItemProvider.java
new file mode 100755
index 0000000..47d5bf2
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/IEventHandleItemProvider.java
@@ -0,0 +1,288 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.provider;
+
+
+import java.util.Collection;
+import java.util.List;
+
+import org.eclipse.emf.common.notify.AdapterFactory;
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.common.util.ResourceLocator;
+
+import org.eclipse.emf.edit.provider.ComposeableAdapterFactory;
+import org.eclipse.emf.edit.provider.IEditingDomainItemProvider;
+import org.eclipse.emf.edit.provider.IItemLabelProvider;
+import org.eclipse.emf.edit.provider.IItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.IItemPropertySource;
+import org.eclipse.emf.edit.provider.IStructuredItemContentProvider;
+import org.eclipse.emf.edit.provider.ITreeItemContentProvider;
+import org.eclipse.emf.edit.provider.ItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.ItemProviderAdapter;
+import org.eclipse.emf.edit.provider.ViewerNotification;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IEventHandle;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IEventHandle} object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class IEventHandleItemProvider 
+	extends ItemProviderAdapter
+	implements
+		IEditingDomainItemProvider,
+		IStructuredItemContentProvider,
+		ITreeItemContentProvider,
+		IItemLabelProvider,
+		IItemPropertySource {
+	/**
+	 * This constructs an instance from a factory and a notifier.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IEventHandleItemProvider(AdapterFactory adapterFactory) {
+		super(adapterFactory);
+	}
+
+	/**
+	 * This returns the property descriptors for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) {
+		if (itemPropertyDescriptors == null) {
+			super.getPropertyDescriptors(object);
+
+			addM2ClassPropertyDescriptor(object);
+			addFilenamePropertyDescriptor(object);
+			addSubsystemPropertyDescriptor(object);
+			addClassPropertyDescriptor(object);
+			addNamePropertyDescriptor(object);
+			addIdPropertyDescriptor(object);
+		}
+		return itemPropertyDescriptors;
+	}
+
+	/**
+	 * This adds a property descriptor for the M2 Class feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM2ClassPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IEventHandle_m2Class_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IEventHandle_m2Class_feature", "_UI_IEventHandle_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIEventHandle_M2Class(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Filename feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addFilenamePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IEventHandle_filename_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IEventHandle_filename_feature", "_UI_IEventHandle_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIEventHandle_Filename(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Subsystem feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addSubsystemPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IEventHandle_subsystem_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IEventHandle_subsystem_feature", "_UI_IEventHandle_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIEventHandle_Subsystem(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Class feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addClassPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IEventHandle_class_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IEventHandle_class_feature", "_UI_IEventHandle_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIEventHandle_Class(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Name feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addNamePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IEventHandle_name_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IEventHandle_name_feature", "_UI_IEventHandle_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIEventHandle_Name(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Id feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addIdPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IEventHandle_id_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IEventHandle_id_feature", "_UI_IEventHandle_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIEventHandle_Id(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This returns IEventHandle.gif.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object getImage(Object object) {
+		return overlayImage(object, getResourceLocator().getImage("full/obj16/IEventHandle")); //$NON-NLS-1$
+	}
+
+	/**
+	 * This returns the label text for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String getText(Object object) {
+		String label = ((IEventHandle)object).getName();
+		return label == null || label.length() == 0 ?
+			getString("_UI_IEventHandle_type") : //$NON-NLS-1$
+			getString("_UI_IEventHandle_type") + " " + label; //$NON-NLS-1$ //$NON-NLS-2$
+	}
+	
+
+	/**
+	 * This handles model notifications by calling {@link #updateChildren} to update any cached
+	 * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void notifyChanged(Notification notification) {
+		updateChildren(notification);
+
+		switch (notification.getFeatureID(IEventHandle.class)) {
+			case UMLRpyPackage.IEVENT_HANDLE__M2_CLASS:
+			case UMLRpyPackage.IEVENT_HANDLE__FILENAME:
+			case UMLRpyPackage.IEVENT_HANDLE__SUBSYSTEM:
+			case UMLRpyPackage.IEVENT_HANDLE__CLASS:
+			case UMLRpyPackage.IEVENT_HANDLE__NAME:
+			case UMLRpyPackage.IEVENT_HANDLE__ID:
+				fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), false, true));
+				return;
+		}
+		super.notifyChanged(notification);
+	}
+
+	/**
+	 * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children
+	 * that can be created under this object.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) {
+		super.collectNewChildDescriptors(newChildDescriptors, object);
+	}
+
+	/**
+	 * Return the resource locator for this item provider's resources.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public ResourceLocator getResourceLocator() {
+		return rpymetamodelEditPlugin.INSTANCE;
+	}
+
+}
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/IEventItemProvider.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/IEventItemProvider.java
new file mode 100755
index 0000000..63f59d3
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/IEventItemProvider.java
@@ -0,0 +1,553 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.provider;
+
+
+import java.util.Collection;
+import java.util.List;
+
+import org.eclipse.emf.common.notify.AdapterFactory;
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.ecore.EStructuralFeature;
+
+import org.eclipse.emf.edit.provider.ComposeableAdapterFactory;
+import org.eclipse.emf.edit.provider.IItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.ItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.ViewerNotification;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IEvent;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyFactory;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IEvent} object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class IEventItemProvider extends IInterfaceItemItemProvider {
+	/**
+	 * This constructs an instance from a factory and a notifier.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IEventItemProvider(AdapterFactory adapterFactory) {
+		super(adapterFactory);
+	}
+
+	/**
+	 * This returns the property descriptors for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) {
+		if (itemPropertyDescriptors == null) {
+			super.getPropertyDescriptors(object);
+
+			addUmlDependencyIDPropertyDescriptor(object);
+			addObjectCreationPropertyDescriptor(object);
+			addLastIDPropertyDescriptor(object);
+			addIdPropertyDescriptor(object);
+			addMyStatePropertyDescriptor(object);
+			addNamePropertyDescriptor(object);
+			addVirtualPropertyDescriptor(object);
+			addModifiedTimeWeakPropertyDescriptor(object);
+			addSuperEventPropertyDescriptor(object);
+			addRequiremenTracabilityHandlePropertyDescriptor(object);
+		}
+		return itemPropertyDescriptors;
+	}
+
+	/**
+	 * This adds a property descriptor for the Uml Dependency ID feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addUmlDependencyIDPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_M_subjectType_umlDependencyID_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_M_subjectType_umlDependencyID_feature", "_UI_M_subjectType_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getM_subjectType_UmlDependencyID(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Object Creation feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addObjectCreationPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_M_subjectType_objectCreation_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_M_subjectType_objectCreation_feature", "_UI_M_subjectType_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getM_subjectType_ObjectCreation(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Last ID feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addLastIDPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_ConveyedType_lastID_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_ConveyedType_lastID_feature", "_UI_ConveyedType_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getConveyedType_LastID(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Id feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addIdPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IEvent_id_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IEvent_id_feature", "_UI_IEvent_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIEvent_Id(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the My State feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addMyStatePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IEvent_myState_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IEvent_myState_feature", "_UI_IEvent_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIEvent_MyState(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Name feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addNamePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IEvent_name_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IEvent_name_feature", "_UI_IEvent_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIEvent_Name(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Virtual feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addVirtualPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IEvent_virtual_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IEvent_virtual_feature", "_UI_IEvent_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIEvent_Virtual(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Modified Time Weak feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addModifiedTimeWeakPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IEvent_modifiedTimeWeak_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IEvent_modifiedTimeWeak_feature", "_UI_IEvent_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIEvent_ModifiedTimeWeak(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Super Event feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addSuperEventPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IEvent_superEvent_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IEvent_superEvent_feature", "_UI_IEvent_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIEvent_SuperEvent(),
+				 true,
+				 false,
+				 true,
+				 null,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Requiremen Tracability Handle feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addRequiremenTracabilityHandlePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IEvent_requiremenTracabilityHandle_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IEvent_requiremenTracabilityHandle_feature", "_UI_IEvent_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIEvent_RequiremenTracabilityHandle(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This specifies how to implement {@link #getChildren} and is used to deduce an appropriate feature for an
+	 * {@link org.eclipse.emf.edit.command.AddCommand}, {@link org.eclipse.emf.edit.command.RemoveCommand} or
+	 * {@link org.eclipse.emf.edit.command.MoveCommand} in {@link #createCommand}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Collection<? extends EStructuralFeature> getChildrenFeatures(Object object) {
+		if (childrenFeatures == null) {
+			super.getChildrenFeatures(object);
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getIEvent_Args());
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getIEvent_Stereotypes());
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getIEvent_Description());
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getIEvent_Properties());
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getIEvent_Dependencies());
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getIEvent_Tags());
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getIEvent_Annotations());
+		}
+		return childrenFeatures;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EStructuralFeature getChildFeature(Object object, Object child) {
+		// Check the type of the specified child object and return the proper feature to use for
+		// adding (see {@link AddCommand}) it as a child.
+
+		return super.getChildFeature(object, child);
+	}
+
+	/**
+	 * This returns IEvent.gif.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object getImage(Object object) {
+		return overlayImage(object, getResourceLocator().getImage("full/obj16/IEvent")); //$NON-NLS-1$
+	}
+
+	/**
+	 * This returns the label text for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String getText(Object object) {
+		String label = ((IEvent)object).getName();
+		return label == null || label.length() == 0 ?
+			getString("_UI_IEvent_type") : //$NON-NLS-1$
+			getString("_UI_IEvent_type") + " " + label; //$NON-NLS-1$ //$NON-NLS-2$
+	}
+	
+
+	/**
+	 * This handles model notifications by calling {@link #updateChildren} to update any cached
+	 * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void notifyChanged(Notification notification) {
+		updateChildren(notification);
+
+		switch (notification.getFeatureID(IEvent.class)) {
+			case UMLRpyPackage.IEVENT__UML_DEPENDENCY_ID:
+			case UMLRpyPackage.IEVENT__OBJECT_CREATION:
+			case UMLRpyPackage.IEVENT__LAST_ID:
+			case UMLRpyPackage.IEVENT__ID:
+			case UMLRpyPackage.IEVENT__MY_STATE:
+			case UMLRpyPackage.IEVENT__NAME:
+			case UMLRpyPackage.IEVENT__VIRTUAL:
+			case UMLRpyPackage.IEVENT__MODIFIED_TIME_WEAK:
+			case UMLRpyPackage.IEVENT__REQUIREMEN_TRACABILITY_HANDLE:
+				fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), false, true));
+				return;
+			case UMLRpyPackage.IEVENT__ARGS:
+			case UMLRpyPackage.IEVENT__STEREOTYPES:
+			case UMLRpyPackage.IEVENT__DESCRIPTION:
+			case UMLRpyPackage.IEVENT__PROPERTIES:
+			case UMLRpyPackage.IEVENT__DEPENDENCIES:
+			case UMLRpyPackage.IEVENT__TAGS:
+			case UMLRpyPackage.IEVENT__ANNOTATIONS:
+				fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), true, false));
+				return;
+		}
+		super.notifyChanged(notification);
+	}
+
+	/**
+	 * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children
+	 * that can be created under this object.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) {
+		super.collectNewChildDescriptors(newChildDescriptors, object);
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIEvent_Args(),
+				 UMLRpyFactory.eINSTANCE.createIVariable()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIEvent_Args(),
+				 UMLRpyFactory.eINSTANCE.createIArgument()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIEvent_Args(),
+				 UMLRpyFactory.eINSTANCE.createIAttribute()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIEvent_Args(),
+				 UMLRpyFactory.eINSTANCE.createITag()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIEvent_Args(),
+				 UMLRpyFactory.eINSTANCE.createITemplateParameter()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIEvent_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIClassifier()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIEvent_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIActor()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIEvent_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIClass()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIEvent_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIAssociationClass()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIEvent_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIInterfaceItem()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIEvent_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIEvent()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIEvent_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIEventReception()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIEvent_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIFlowItem()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIEvent_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createINode()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIEvent_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIOperation()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIEvent_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIStateChart()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIEvent_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIStereotype()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIEvent_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIType()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIEvent_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIUseCase()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIEvent_Description(),
+				 UMLRpyFactory.eINSTANCE.createIDescription()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIEvent_Properties(),
+				 UMLRpyFactory.eINSTANCE.createIPropertyContainer()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIEvent_Dependencies(),
+				 UMLRpyFactory.eINSTANCE.createIDependency()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIEvent_Dependencies(),
+				 UMLRpyFactory.eINSTANCE.createIHyperLink()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIEvent_Tags(),
+				 UMLRpyFactory.eINSTANCE.createITag()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIEvent_Annotations(),
+				 UMLRpyFactory.eINSTANCE.createIConstraint()));
+	}
+
+	/**
+	 * This returns the label text for {@link org.eclipse.emf.edit.command.CreateChildCommand}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String getCreateChildText(Object owner, Object feature, Object child, Collection<?> selection) {
+		Object childFeature = feature;
+		Object childObject = child;
+
+		boolean qualify =
+			childFeature == UMLRpyPackage.eINSTANCE.getIEvent_Args() ||
+			childFeature == UMLRpyPackage.eINSTANCE.getIEvent_Tags();
+
+		if (qualify) {
+			return getString
+				("_UI_CreateChild_text2", //$NON-NLS-1$
+				 new Object[] { getTypeText(childObject), getFeatureText(childFeature), getTypeText(owner) });
+		}
+		return super.getCreateChildText(owner, feature, child, selection);
+	}
+
+}
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/IEventReceptionItemProvider.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/IEventReceptionItemProvider.java
new file mode 100755
index 0000000..802da80
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/IEventReceptionItemProvider.java
@@ -0,0 +1,109 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.provider;
+
+
+import java.util.Collection;
+import java.util.List;
+
+import org.eclipse.emf.common.notify.AdapterFactory;
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.edit.provider.IItemPropertyDescriptor;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IEventReception;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IEventReception} object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class IEventReceptionItemProvider extends IInterfaceItemItemProvider {
+	/**
+	 * This constructs an instance from a factory and a notifier.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IEventReceptionItemProvider(AdapterFactory adapterFactory) {
+		super(adapterFactory);
+	}
+
+	/**
+	 * This returns the property descriptors for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) {
+		if (itemPropertyDescriptors == null) {
+			super.getPropertyDescriptors(object);
+
+		}
+		return itemPropertyDescriptors;
+	}
+
+	/**
+	 * This returns IEventReception.gif.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object getImage(Object object) {
+		return overlayImage(object, getResourceLocator().getImage("full/obj16/IEventReception")); //$NON-NLS-1$
+	}
+
+	/**
+	 * This returns the label text for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String getText(Object object) {
+		String label = ((IEventReception)object).getDisplayName();
+		return label == null || label.length() == 0 ?
+			getString("_UI_IEventReception_type") : //$NON-NLS-1$
+			getString("_UI_IEventReception_type") + " " + label; //$NON-NLS-1$ //$NON-NLS-2$
+	}
+	
+
+	/**
+	 * This handles model notifications by calling {@link #updateChildren} to update any cached
+	 * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void notifyChanged(Notification notification) {
+		updateChildren(notification);
+		super.notifyChanged(notification);
+	}
+
+	/**
+	 * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children
+	 * that can be created under this object.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) {
+		super.collectNewChildDescriptors(newChildDescriptors, object);
+	}
+
+}
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/IExecutionOccurrenceItemProvider.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/IExecutionOccurrenceItemProvider.java
new file mode 100755
index 0000000..18c16ce
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/IExecutionOccurrenceItemProvider.java
@@ -0,0 +1,212 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.provider;
+
+
+import java.util.Collection;
+import java.util.List;
+
+import org.eclipse.emf.common.notify.AdapterFactory;
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.edit.provider.ComposeableAdapterFactory;
+import org.eclipse.emf.edit.provider.IItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.ItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.ViewerNotification;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IExecutionOccurrence;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IExecutionOccurrence} object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class IExecutionOccurrenceItemProvider extends IModelElementItemProvider {
+	/**
+	 * This constructs an instance from a factory and a notifier.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IExecutionOccurrenceItemProvider(AdapterFactory adapterFactory) {
+		super(adapterFactory);
+	}
+
+	/**
+	 * This returns the property descriptors for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) {
+		if (itemPropertyDescriptors == null) {
+			super.getPropertyDescriptors(object);
+
+			addIdPropertyDescriptor(object);
+			addM_startMessagePropertyDescriptor(object);
+			addM_endMessagePropertyDescriptor(object);
+			addM_lengthPropertyDescriptor(object);
+		}
+		return itemPropertyDescriptors;
+	}
+
+	/**
+	 * This adds a property descriptor for the Id feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addIdPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IExecutionOccurrence_id_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IExecutionOccurrence_id_feature", "_UI_IExecutionOccurrence_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIExecutionOccurrence_Id(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Mstart Message feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_startMessagePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IExecutionOccurrence_m_startMessage_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IExecutionOccurrence_m_startMessage_feature", "_UI_IExecutionOccurrence_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIExecutionOccurrence_M_startMessage(),
+				 true,
+				 false,
+				 true,
+				 null,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Mend Message feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_endMessagePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IExecutionOccurrence_m_endMessage_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IExecutionOccurrence_m_endMessage_feature", "_UI_IExecutionOccurrence_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIExecutionOccurrence_M_endMessage(),
+				 true,
+				 false,
+				 true,
+				 null,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Mlength feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_lengthPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IExecutionOccurrence_m_length_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IExecutionOccurrence_m_length_feature", "_UI_IExecutionOccurrence_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIExecutionOccurrence_M_length(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This returns IExecutionOccurrence.gif.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object getImage(Object object) {
+		return overlayImage(object, getResourceLocator().getImage("full/obj16/IExecutionOccurrence")); //$NON-NLS-1$
+	}
+
+	/**
+	 * This returns the label text for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String getText(Object object) {
+		String label = ((IExecutionOccurrence)object).getDisplayName();
+		return label == null || label.length() == 0 ?
+			getString("_UI_IExecutionOccurrence_type") : //$NON-NLS-1$
+			getString("_UI_IExecutionOccurrence_type") + " " + label; //$NON-NLS-1$ //$NON-NLS-2$
+	}
+	
+
+	/**
+	 * This handles model notifications by calling {@link #updateChildren} to update any cached
+	 * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void notifyChanged(Notification notification) {
+		updateChildren(notification);
+
+		switch (notification.getFeatureID(IExecutionOccurrence.class)) {
+			case UMLRpyPackage.IEXECUTION_OCCURRENCE__ID:
+			case UMLRpyPackage.IEXECUTION_OCCURRENCE__MLENGTH:
+				fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), false, true));
+				return;
+		}
+		super.notifyChanged(notification);
+	}
+
+	/**
+	 * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children
+	 * that can be created under this object.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) {
+		super.collectNewChildDescriptors(newChildDescriptors, object);
+	}
+
+}
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/IExternalHyperlinkItemProvider.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/IExternalHyperlinkItemProvider.java
new file mode 100755
index 0000000..65bf7fd
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/IExternalHyperlinkItemProvider.java
@@ -0,0 +1,142 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.provider;
+
+
+import java.util.Collection;
+import java.util.List;
+
+import org.eclipse.emf.common.notify.AdapterFactory;
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.edit.provider.ComposeableAdapterFactory;
+import org.eclipse.emf.edit.provider.IItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.ItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.ViewerNotification;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IExternalHyperlink;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IExternalHyperlink} object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class IExternalHyperlinkItemProvider extends HyperLinksTypeItemProvider {
+	/**
+	 * This constructs an instance from a factory and a notifier.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IExternalHyperlinkItemProvider(AdapterFactory adapterFactory) {
+		super(adapterFactory);
+	}
+
+	/**
+	 * This returns the property descriptors for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) {
+		if (itemPropertyDescriptors == null) {
+			super.getPropertyDescriptors(object);
+
+			addTargetPropertyDescriptor(object);
+		}
+		return itemPropertyDescriptors;
+	}
+
+	/**
+	 * This adds a property descriptor for the Target feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addTargetPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IExternalHyperlink_target_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IExternalHyperlink_target_feature", "_UI_IExternalHyperlink_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIExternalHyperlink_Target(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This returns IExternalHyperlink.gif.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object getImage(Object object) {
+		return overlayImage(object, getResourceLocator().getImage("full/obj16/IExternalHyperlink")); //$NON-NLS-1$
+	}
+
+	/**
+	 * This returns the label text for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String getText(Object object) {
+		String label = ((IExternalHyperlink)object).getDisplayName();
+		return label == null || label.length() == 0 ?
+			getString("_UI_IExternalHyperlink_type") : //$NON-NLS-1$
+			getString("_UI_IExternalHyperlink_type") + " " + label; //$NON-NLS-1$ //$NON-NLS-2$
+	}
+	
+
+	/**
+	 * This handles model notifications by calling {@link #updateChildren} to update any cached
+	 * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void notifyChanged(Notification notification) {
+		updateChildren(notification);
+
+		switch (notification.getFeatureID(IExternalHyperlink.class)) {
+			case UMLRpyPackage.IEXTERNAL_HYPERLINK__TARGET:
+				fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), false, true));
+				return;
+		}
+		super.notifyChanged(notification);
+	}
+
+	/**
+	 * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children
+	 * that can be created under this object.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) {
+		super.collectNewChildDescriptors(newChildDescriptors, object);
+	}
+
+}
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/IFileFragmentItemProvider.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/IFileFragmentItemProvider.java
new file mode 100755
index 0000000..3ad3638
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/IFileFragmentItemProvider.java
@@ -0,0 +1,484 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.provider;
+
+
+import java.util.Collection;
+import java.util.List;
+
+import org.eclipse.emf.common.notify.AdapterFactory;
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.ecore.EStructuralFeature;
+
+import org.eclipse.emf.edit.provider.ComposeableAdapterFactory;
+import org.eclipse.emf.edit.provider.IItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.ItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.ViewerNotification;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IFileFragment;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyFactory;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IFileFragment} object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class IFileFragmentItemProvider extends IModelElementItemProvider {
+	/**
+	 * This constructs an instance from a factory and a notifier.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IFileFragmentItemProvider(AdapterFactory adapterFactory) {
+		super(adapterFactory);
+	}
+
+	/**
+	 * This returns the property descriptors for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) {
+		if (itemPropertyDescriptors == null) {
+			super.getPropertyDescriptors(object);
+
+			addIdPropertyDescriptor(object);
+			addNamePropertyDescriptor(object);
+			addM_typePropertyDescriptor(object);
+			addM_textPropertyDescriptor(object);
+			addM_startRowPropertyDescriptor(object);
+			addM_startColPropertyDescriptor(object);
+			addM_startCol_ShortPropertyDescriptor(object);
+			addM_endRowPropertyDescriptor(object);
+			addM_endCol_ShortPropertyDescriptor(object);
+			addM_subjectPropertyDescriptor(object);
+			addModifiedTimeWeakPropertyDescriptor(object);
+			addObjectCreationPropertyDescriptor(object);
+			addUmlDependencyIDPropertyDescriptor(object);
+		}
+		return itemPropertyDescriptors;
+	}
+
+	/**
+	 * This adds a property descriptor for the Id feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addIdPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IFileFragment_id_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IFileFragment_id_feature", "_UI_IFileFragment_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIFileFragment_Id(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Name feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addNamePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IFileFragment_name_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IFileFragment_name_feature", "_UI_IFileFragment_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIFileFragment_Name(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Mtype feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_typePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IFileFragment_m_type_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IFileFragment_m_type_feature", "_UI_IFileFragment_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIFileFragment_M_type(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Mtext feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_textPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IFileFragment_m_text_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IFileFragment_m_text_feature", "_UI_IFileFragment_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIFileFragment_M_text(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Mstart Row feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_startRowPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IFileFragment_m_startRow_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IFileFragment_m_startRow_feature", "_UI_IFileFragment_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIFileFragment_M_startRow(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Mstart Col feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_startColPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IFileFragment_m_startCol_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IFileFragment_m_startCol_feature", "_UI_IFileFragment_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIFileFragment_M_startCol(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Mstart Col Short feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_startCol_ShortPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IFileFragment_m_startCol_Short_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IFileFragment_m_startCol_Short_feature", "_UI_IFileFragment_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIFileFragment_M_startCol_Short(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Mend Row feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_endRowPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IFileFragment_m_endRow_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IFileFragment_m_endRow_feature", "_UI_IFileFragment_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIFileFragment_M_endRow(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Mend Col Short feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_endCol_ShortPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IFileFragment_m_endCol_Short_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IFileFragment_m_endCol_Short_feature", "_UI_IFileFragment_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIFileFragment_M_endCol_Short(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Msubject feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_subjectPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IFileFragment_m_subject_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IFileFragment_m_subject_feature", "_UI_IFileFragment_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIFileFragment_M_subject(),
+				 true,
+				 false,
+				 true,
+				 null,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Modified Time Weak feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addModifiedTimeWeakPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IFileFragment_modifiedTimeWeak_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IFileFragment_modifiedTimeWeak_feature", "_UI_IFileFragment_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIFileFragment_ModifiedTimeWeak(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Object Creation feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addObjectCreationPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IFileFragment_objectCreation_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IFileFragment_objectCreation_feature", "_UI_IFileFragment_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIFileFragment_ObjectCreation(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Uml Dependency ID feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addUmlDependencyIDPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IFileFragment_umlDependencyID_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IFileFragment_umlDependencyID_feature", "_UI_IFileFragment_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIFileFragment_UmlDependencyID(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This specifies how to implement {@link #getChildren} and is used to deduce an appropriate feature for an
+	 * {@link org.eclipse.emf.edit.command.AddCommand}, {@link org.eclipse.emf.edit.command.RemoveCommand} or
+	 * {@link org.eclipse.emf.edit.command.MoveCommand} in {@link #createCommand}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Collection<? extends EStructuralFeature> getChildrenFeatures(Object object) {
+		if (childrenFeatures == null) {
+			super.getChildrenFeatures(object);
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getIFileFragment_Description());
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getIFileFragment_Tags());
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getIFileFragment_Fragments());
+		}
+		return childrenFeatures;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EStructuralFeature getChildFeature(Object object, Object child) {
+		// Check the type of the specified child object and return the proper feature to use for
+		// adding (see {@link AddCommand}) it as a child.
+
+		return super.getChildFeature(object, child);
+	}
+
+	/**
+	 * This returns IFileFragment.gif.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object getImage(Object object) {
+		return overlayImage(object, getResourceLocator().getImage("full/obj16/IFileFragment")); //$NON-NLS-1$
+	}
+
+	/**
+	 * This returns the label text for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String getText(Object object) {
+		String label = ((IFileFragment)object).getName();
+		return label == null || label.length() == 0 ?
+			getString("_UI_IFileFragment_type") : //$NON-NLS-1$
+			getString("_UI_IFileFragment_type") + " " + label; //$NON-NLS-1$ //$NON-NLS-2$
+	}
+	
+
+	/**
+	 * This handles model notifications by calling {@link #updateChildren} to update any cached
+	 * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void notifyChanged(Notification notification) {
+		updateChildren(notification);
+
+		switch (notification.getFeatureID(IFileFragment.class)) {
+			case UMLRpyPackage.IFILE_FRAGMENT__ID:
+			case UMLRpyPackage.IFILE_FRAGMENT__NAME:
+			case UMLRpyPackage.IFILE_FRAGMENT__MTYPE:
+			case UMLRpyPackage.IFILE_FRAGMENT__MTEXT:
+			case UMLRpyPackage.IFILE_FRAGMENT__MSTART_ROW:
+			case UMLRpyPackage.IFILE_FRAGMENT__MSTART_COL:
+			case UMLRpyPackage.IFILE_FRAGMENT__MSTART_COL_SHORT:
+			case UMLRpyPackage.IFILE_FRAGMENT__MEND_ROW:
+			case UMLRpyPackage.IFILE_FRAGMENT__MEND_COL_SHORT:
+			case UMLRpyPackage.IFILE_FRAGMENT__MODIFIED_TIME_WEAK:
+			case UMLRpyPackage.IFILE_FRAGMENT__OBJECT_CREATION:
+			case UMLRpyPackage.IFILE_FRAGMENT__UML_DEPENDENCY_ID:
+				fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), false, true));
+				return;
+			case UMLRpyPackage.IFILE_FRAGMENT__DESCRIPTION:
+			case UMLRpyPackage.IFILE_FRAGMENT__TAGS:
+			case UMLRpyPackage.IFILE_FRAGMENT__FRAGMENTS:
+				fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), true, false));
+				return;
+		}
+		super.notifyChanged(notification);
+	}
+
+	/**
+	 * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children
+	 * that can be created under this object.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) {
+		super.collectNewChildDescriptors(newChildDescriptors, object);
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIFileFragment_Description(),
+				 UMLRpyFactory.eINSTANCE.createIDescription()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIFileFragment_Tags(),
+				 UMLRpyFactory.eINSTANCE.createITag()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIFileFragment_Fragments(),
+				 UMLRpyFactory.eINSTANCE.createIFileFragment()));
+	}
+
+}
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/IFileItemProvider.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/IFileItemProvider.java
new file mode 100755
index 0000000..284461a
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/IFileItemProvider.java
@@ -0,0 +1,924 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.provider;
+
+
+import java.util.Collection;
+import java.util.List;
+
+import org.eclipse.emf.common.notify.AdapterFactory;
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.ecore.EStructuralFeature;
+
+import org.eclipse.emf.edit.provider.ComposeableAdapterFactory;
+import org.eclipse.emf.edit.provider.IItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.ItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.ViewerNotification;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IFile;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyFactory;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IFile} object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class IFileItemProvider extends IUnitItemProvider {
+	/**
+	 * This constructs an instance from a factory and a notifier.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IFileItemProvider(AdapterFactory adapterFactory) {
+		super(adapterFactory);
+	}
+
+	/**
+	 * This returns the property descriptors for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) {
+		if (itemPropertyDescriptors == null) {
+			super.getPropertyDescriptors(object);
+
+			addModifiedTimeWeakPropertyDescriptor(object);
+			addIdPropertyDescriptor(object);
+			addUmlDependencyIDPropertyDescriptor(object);
+			addLastIDPropertyDescriptor(object);
+			addMyStatePropertyDescriptor(object);
+			addM_pathPropertyDescriptor(object);
+			addObjectCreationPropertyDescriptor(object);
+			addNamePropertyDescriptor(object);
+			addM_typePropertyDescriptor(object);
+		}
+		return itemPropertyDescriptors;
+	}
+
+	/**
+	 * This adds a property descriptor for the Modified Time Weak feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addModifiedTimeWeakPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_FilesType_modifiedTimeWeak_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_FilesType_modifiedTimeWeak_feature", "_UI_FilesType_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getFilesType_ModifiedTimeWeak(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Id feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addIdPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_FilesType_id_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_FilesType_id_feature", "_UI_FilesType_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getFilesType_Id(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Uml Dependency ID feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addUmlDependencyIDPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_FilesType_umlDependencyID_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_FilesType_umlDependencyID_feature", "_UI_FilesType_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getFilesType_UmlDependencyID(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Last ID feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addLastIDPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_FilesType_lastID_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_FilesType_lastID_feature", "_UI_FilesType_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getFilesType_LastID(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the My State feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addMyStatePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_FilesType_myState_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_FilesType_myState_feature", "_UI_FilesType_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getFilesType_MyState(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Mpath feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_pathPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_FilesType_m_path_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_FilesType_m_path_feature", "_UI_FilesType_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getFilesType_M_path(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Object Creation feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addObjectCreationPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_FilesType_objectCreation_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_FilesType_objectCreation_feature", "_UI_FilesType_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getFilesType_ObjectCreation(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Name feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addNamePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_FilesType_name_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_FilesType_name_feature", "_UI_FilesType_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getFilesType_Name(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Mtype feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_typePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IFile_m_type_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IFile_m_type_feature", "_UI_IFile_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIFile_M_type(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This specifies how to implement {@link #getChildren} and is used to deduce an appropriate feature for an
+	 * {@link org.eclipse.emf.edit.command.AddCommand}, {@link org.eclipse.emf.edit.command.RemoveCommand} or
+	 * {@link org.eclipse.emf.edit.command.MoveCommand} in {@link #createCommand}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Collection<? extends EStructuralFeature> getChildrenFeatures(Object object) {
+		if (childrenFeatures == null) {
+			super.getChildrenFeatures(object);
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getIFile_Properties());
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getIFile_Fragments());
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getIFile_Description());
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getIFile_Dependencies());
+		}
+		return childrenFeatures;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EStructuralFeature getChildFeature(Object object, Object child) {
+		// Check the type of the specified child object and return the proper feature to use for
+		// adding (see {@link AddCommand}) it as a child.
+
+		return super.getChildFeature(object, child);
+	}
+
+	/**
+	 * This returns IFile.gif.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object getImage(Object object) {
+		return overlayImage(object, getResourceLocator().getImage("full/obj16/IFile")); //$NON-NLS-1$
+	}
+
+	/**
+	 * This returns the label text for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String getText(Object object) {
+		String label = ((IFile)object).getName();
+		return label == null || label.length() == 0 ?
+			getString("_UI_IFile_type") : //$NON-NLS-1$
+			getString("_UI_IFile_type") + " " + label; //$NON-NLS-1$ //$NON-NLS-2$
+	}
+	
+
+	/**
+	 * This handles model notifications by calling {@link #updateChildren} to update any cached
+	 * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void notifyChanged(Notification notification) {
+		updateChildren(notification);
+
+		switch (notification.getFeatureID(IFile.class)) {
+			case UMLRpyPackage.IFILE__MODIFIED_TIME_WEAK:
+			case UMLRpyPackage.IFILE__ID:
+			case UMLRpyPackage.IFILE__UML_DEPENDENCY_ID:
+			case UMLRpyPackage.IFILE__LAST_ID:
+			case UMLRpyPackage.IFILE__MY_STATE:
+			case UMLRpyPackage.IFILE__MPATH:
+			case UMLRpyPackage.IFILE__OBJECT_CREATION:
+			case UMLRpyPackage.IFILE__NAME:
+			case UMLRpyPackage.IFILE__MTYPE:
+				fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), false, true));
+				return;
+			case UMLRpyPackage.IFILE__PROPERTIES:
+			case UMLRpyPackage.IFILE__FRAGMENTS:
+			case UMLRpyPackage.IFILE__DESCRIPTION:
+			case UMLRpyPackage.IFILE__DEPENDENCIES:
+				fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), true, false));
+				return;
+		}
+		super.notifyChanged(notification);
+	}
+
+	/**
+	 * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children
+	 * that can be created under this object.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) {
+		super.collectNewChildDescriptors(newChildDescriptors, object);
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIFile_Properties(),
+				 UMLRpyFactory.eINSTANCE.createIPropertyContainer()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIFile_Fragments(),
+				 UMLRpyFactory.eINSTANCE.createIModelElement()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIFile_Fragments(),
+				 UMLRpyFactory.eINSTANCE.createIStateVertex()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIFile_Fragments(),
+				 UMLRpyFactory.eINSTANCE.createIState()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIFile_Fragments(),
+				 UMLRpyFactory.eINSTANCE.createIAcceptEventAction()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIFile_Fragments(),
+				 UMLRpyFactory.eINSTANCE.createIAcceptTimeEvent()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIFile_Fragments(),
+				 UMLRpyFactory.eINSTANCE.createIAction()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIFile_Fragments(),
+				 UMLRpyFactory.eINSTANCE.createIActivityGraph()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIFile_Fragments(),
+				 UMLRpyFactory.eINSTANCE.createIUnit()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIFile_Fragments(),
+				 UMLRpyFactory.eINSTANCE.createIClassifier()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIFile_Fragments(),
+				 UMLRpyFactory.eINSTANCE.createIActor()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIFile_Fragments(),
+				 UMLRpyFactory.eINSTANCE.createIAnnotation()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIFile_Fragments(),
+				 UMLRpyFactory.eINSTANCE.createIVariable()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIFile_Fragments(),
+				 UMLRpyFactory.eINSTANCE.createIArgument()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIFile_Fragments(),
+				 UMLRpyFactory.eINSTANCE.createIClass()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIFile_Fragments(),
+				 UMLRpyFactory.eINSTANCE.createIAssociationClass()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIFile_Fragments(),
+				 UMLRpyFactory.eINSTANCE.createIAssociationEnd()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIFile_Fragments(),
+				 UMLRpyFactory.eINSTANCE.createIAssociationRole()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIFile_Fragments(),
+				 UMLRpyFactory.eINSTANCE.createIAttribute()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIFile_Fragments(),
+				 UMLRpyFactory.eINSTANCE.createICallOperation()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIFile_Fragments(),
+				 UMLRpyFactory.eINSTANCE.createIClassifierRole()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIFile_Fragments(),
+				 UMLRpyFactory.eINSTANCE.createICollaboration()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIFile_Fragments(),
+				 UMLRpyFactory.eINSTANCE.createIDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIFile_Fragments(),
+				 UMLRpyFactory.eINSTANCE.createICollaborationDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIFile_Fragments(),
+				 UMLRpyFactory.eINSTANCE.createIComment()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIFile_Fragments(),
+				 UMLRpyFactory.eINSTANCE.createIComponent()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIFile_Fragments(),
+				 UMLRpyFactory.eINSTANCE.createIComponentDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIFile_Fragments(),
+				 UMLRpyFactory.eINSTANCE.createIComponentInstance()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIFile_Fragments(),
+				 UMLRpyFactory.eINSTANCE.createIConfiguration()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIFile_Fragments(),
+				 UMLRpyFactory.eINSTANCE.createIConnector()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIFile_Fragments(),
+				 UMLRpyFactory.eINSTANCE.createIConstraint()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIFile_Fragments(),
+				 UMLRpyFactory.eINSTANCE.createIValueSpecification()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIFile_Fragments(),
+				 UMLRpyFactory.eINSTANCE.createIContextSpecification()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIFile_Fragments(),
+				 UMLRpyFactory.eINSTANCE.createIControlledFile()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIFile_Fragments(),
+				 UMLRpyFactory.eINSTANCE.createIDependency()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIFile_Fragments(),
+				 UMLRpyFactory.eINSTANCE.createIDeploymentDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIFile_Fragments(),
+				 UMLRpyFactory.eINSTANCE.createIEnumerationLiteral()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIFile_Fragments(),
+				 UMLRpyFactory.eINSTANCE.createIInterfaceItem()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIFile_Fragments(),
+				 UMLRpyFactory.eINSTANCE.createIEvent()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIFile_Fragments(),
+				 UMLRpyFactory.eINSTANCE.createIEventReception()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIFile_Fragments(),
+				 UMLRpyFactory.eINSTANCE.createIExecutionOccurrence()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIFile_Fragments(),
+				 UMLRpyFactory.eINSTANCE.createIExternalHyperlink()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIFile_Fragments(),
+				 UMLRpyFactory.eINSTANCE.createIFile()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIFile_Fragments(),
+				 UMLRpyFactory.eINSTANCE.createIFileFragment()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIFile_Fragments(),
+				 UMLRpyFactory.eINSTANCE.createIFlow()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIFile_Fragments(),
+				 UMLRpyFactory.eINSTANCE.createIFlowItem()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIFile_Fragments(),
+				 UMLRpyFactory.eINSTANCE.createIGeneralization()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIFile_Fragments(),
+				 UMLRpyFactory.eINSTANCE.createIGuard()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIFile_Fragments(),
+				 UMLRpyFactory.eINSTANCE.createIHyperLink()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIFile_Fragments(),
+				 UMLRpyFactory.eINSTANCE.createIInformationFlow()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIFile_Fragments(),
+				 UMLRpyFactory.eINSTANCE.createIRelation()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIFile_Fragments(),
+				 UMLRpyFactory.eINSTANCE.createIInstance()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIFile_Fragments(),
+				 UMLRpyFactory.eINSTANCE.createIInstanceSlot()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIFile_Fragments(),
+				 UMLRpyFactory.eINSTANCE.createIInstanceSpecification()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIFile_Fragments(),
+				 UMLRpyFactory.eINSTANCE.createIInstanceValue()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIFile_Fragments(),
+				 UMLRpyFactory.eINSTANCE.createIInteractionOccurrence()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIFile_Fragments(),
+				 UMLRpyFactory.eINSTANCE.createIInteractionOperand()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIFile_Fragments(),
+				 UMLRpyFactory.eINSTANCE.createIInteractionOperator()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIFile_Fragments(),
+				 UMLRpyFactory.eINSTANCE.createIInternalHyperlink()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIFile_Fragments(),
+				 UMLRpyFactory.eINSTANCE.createILink()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIFile_Fragments(),
+				 UMLRpyFactory.eINSTANCE.createILiteralSpecification()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIFile_Fragments(),
+				 UMLRpyFactory.eINSTANCE.createIMHyperLink()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIFile_Fragments(),
+				 UMLRpyFactory.eINSTANCE.createIMatrixLayout()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIFile_Fragments(),
+				 UMLRpyFactory.eINSTANCE.createIMatrixView()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIFile_Fragments(),
+				 UMLRpyFactory.eINSTANCE.createIMessage()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIFile_Fragments(),
+				 UMLRpyFactory.eINSTANCE.createIMessagePoint()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIFile_Fragments(),
+				 UMLRpyFactory.eINSTANCE.createIModule()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIFile_Fragments(),
+				 UMLRpyFactory.eINSTANCE.createINode()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIFile_Fragments(),
+				 UMLRpyFactory.eINSTANCE.createIObjectLink()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIFile_Fragments(),
+				 UMLRpyFactory.eINSTANCE.createIObjectModelDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIFile_Fragments(),
+				 UMLRpyFactory.eINSTANCE.createIObjectNode()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIFile_Fragments(),
+				 UMLRpyFactory.eINSTANCE.createIOperation()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIFile_Fragments(),
+				 UMLRpyFactory.eINSTANCE.createIPackage()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIFile_Fragments(),
+				 UMLRpyFactory.eINSTANCE.createIPanelDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIFile_Fragments(),
+				 UMLRpyFactory.eINSTANCE.createIPart()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIFile_Fragments(),
+				 UMLRpyFactory.eINSTANCE.createIPin()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIFile_Fragments(),
+				 UMLRpyFactory.eINSTANCE.createIPort()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIFile_Fragments(),
+				 UMLRpyFactory.eINSTANCE.createIPrimitiveOperation()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIFile_Fragments(),
+				 UMLRpyFactory.eINSTANCE.createIProfile()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIFile_Fragments(),
+				 UMLRpyFactory.eINSTANCE.createIProject()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIFile_Fragments(),
+				 UMLRpyFactory.eINSTANCE.createIRequirement()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIFile_Fragments(),
+				 UMLRpyFactory.eINSTANCE.createISendAction()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIFile_Fragments(),
+				 UMLRpyFactory.eINSTANCE.createISequenceDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIFile_Fragments(),
+				 UMLRpyFactory.eINSTANCE.createIStateChart()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIFile_Fragments(),
+				 UMLRpyFactory.eINSTANCE.createIStateChartDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIFile_Fragments(),
+				 UMLRpyFactory.eINSTANCE.createIStereotype()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIFile_Fragments(),
+				 UMLRpyFactory.eINSTANCE.createIStructureDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIFile_Fragments(),
+				 UMLRpyFactory.eINSTANCE.createISubsystem()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIFile_Fragments(),
+				 UMLRpyFactory.eINSTANCE.createISwimlane()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIFile_Fragments(),
+				 UMLRpyFactory.eINSTANCE.createISysMLPort()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIFile_Fragments(),
+				 UMLRpyFactory.eINSTANCE.createITableLayout()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIFile_Fragments(),
+				 UMLRpyFactory.eINSTANCE.createITableView()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIFile_Fragments(),
+				 UMLRpyFactory.eINSTANCE.createITag()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIFile_Fragments(),
+				 UMLRpyFactory.eINSTANCE.createITemplateInstantiation()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIFile_Fragments(),
+				 UMLRpyFactory.eINSTANCE.createITemplateInstantiationParameter()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIFile_Fragments(),
+				 UMLRpyFactory.eINSTANCE.createITemplateParameter()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIFile_Fragments(),
+				 UMLRpyFactory.eINSTANCE.createITransition()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIFile_Fragments(),
+				 UMLRpyFactory.eINSTANCE.createITrigger()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIFile_Fragments(),
+				 UMLRpyFactory.eINSTANCE.createITriggered()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIFile_Fragments(),
+				 UMLRpyFactory.eINSTANCE.createIType()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIFile_Fragments(),
+				 UMLRpyFactory.eINSTANCE.createIUseCase()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIFile_Fragments(),
+				 UMLRpyFactory.eINSTANCE.createIUseCaseDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIFile_Description(),
+				 UMLRpyFactory.eINSTANCE.createIDescription()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIFile_Dependencies(),
+				 UMLRpyFactory.eINSTANCE.createIDependency()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIFile_Dependencies(),
+				 UMLRpyFactory.eINSTANCE.createIHyperLink()));
+	}
+
+	/**
+	 * This returns the label text for {@link org.eclipse.emf.edit.command.CreateChildCommand}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String getCreateChildText(Object owner, Object feature, Object child, Collection<?> selection) {
+		Object childFeature = feature;
+		Object childObject = child;
+
+		boolean qualify =
+			childFeature == UMLRpyPackage.eINSTANCE.getIFile_Fragments() ||
+			childFeature == UMLRpyPackage.eINSTANCE.getIFile_Dependencies();
+
+		if (qualify) {
+			return getString
+				("_UI_CreateChild_text2", //$NON-NLS-1$
+				 new Object[] { getTypeText(childObject), getFeatureText(childFeature), getTypeText(owner) });
+		}
+		return super.getCreateChildText(owner, feature, child, selection);
+	}
+
+}
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/IFlowItemItemProvider.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/IFlowItemItemProvider.java
new file mode 100755
index 0000000..8a29652
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/IFlowItemItemProvider.java
@@ -0,0 +1,109 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.provider;
+
+
+import java.util.Collection;
+import java.util.List;
+
+import org.eclipse.emf.common.notify.AdapterFactory;
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.edit.provider.IItemPropertyDescriptor;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IFlowItem;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IFlowItem} object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class IFlowItemItemProvider extends IClassifierItemProvider {
+	/**
+	 * This constructs an instance from a factory and a notifier.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IFlowItemItemProvider(AdapterFactory adapterFactory) {
+		super(adapterFactory);
+	}
+
+	/**
+	 * This returns the property descriptors for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) {
+		if (itemPropertyDescriptors == null) {
+			super.getPropertyDescriptors(object);
+
+		}
+		return itemPropertyDescriptors;
+	}
+
+	/**
+	 * This returns IFlowItem.gif.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object getImage(Object object) {
+		return overlayImage(object, getResourceLocator().getImage("full/obj16/IFlowItem")); //$NON-NLS-1$
+	}
+
+	/**
+	 * This returns the label text for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String getText(Object object) {
+		String label = ((IFlowItem)object).getDisplayName();
+		return label == null || label.length() == 0 ?
+			getString("_UI_IFlowItem_type") : //$NON-NLS-1$
+			getString("_UI_IFlowItem_type") + " " + label; //$NON-NLS-1$ //$NON-NLS-2$
+	}
+	
+
+	/**
+	 * This handles model notifications by calling {@link #updateChildren} to update any cached
+	 * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void notifyChanged(Notification notification) {
+		updateChildren(notification);
+		super.notifyChanged(notification);
+	}
+
+	/**
+	 * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children
+	 * that can be created under this object.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) {
+		super.collectNewChildDescriptors(newChildDescriptors, object);
+	}
+
+}
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/IFlowItemProvider.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/IFlowItemProvider.java
new file mode 100755
index 0000000..ce61cbb
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/IFlowItemProvider.java
@@ -0,0 +1,109 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.provider;
+
+
+import java.util.Collection;
+import java.util.List;
+
+import org.eclipse.emf.common.notify.AdapterFactory;
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.edit.provider.IItemPropertyDescriptor;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IFlow;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IFlow} object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class IFlowItemProvider extends IModelElementItemProvider {
+	/**
+	 * This constructs an instance from a factory and a notifier.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IFlowItemProvider(AdapterFactory adapterFactory) {
+		super(adapterFactory);
+	}
+
+	/**
+	 * This returns the property descriptors for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) {
+		if (itemPropertyDescriptors == null) {
+			super.getPropertyDescriptors(object);
+
+		}
+		return itemPropertyDescriptors;
+	}
+
+	/**
+	 * This returns IFlow.gif.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object getImage(Object object) {
+		return overlayImage(object, getResourceLocator().getImage("full/obj16/IFlow")); //$NON-NLS-1$
+	}
+
+	/**
+	 * This returns the label text for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String getText(Object object) {
+		String label = ((IFlow)object).getDisplayName();
+		return label == null || label.length() == 0 ?
+			getString("_UI_IFlow_type") : //$NON-NLS-1$
+			getString("_UI_IFlow_type") + " " + label; //$NON-NLS-1$ //$NON-NLS-2$
+	}
+	
+
+	/**
+	 * This handles model notifications by calling {@link #updateChildren} to update any cached
+	 * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void notifyChanged(Notification notification) {
+		updateChildren(notification);
+		super.notifyChanged(notification);
+	}
+
+	/**
+	 * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children
+	 * that can be created under this object.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) {
+		super.collectNewChildDescriptors(newChildDescriptors, object);
+	}
+
+}
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/IFlowchartItemProvider.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/IFlowchartItemProvider.java
new file mode 100755
index 0000000..a72fd25
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/IFlowchartItemProvider.java
@@ -0,0 +1,130 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.provider;
+
+
+import java.util.Collection;
+import java.util.List;
+
+import org.eclipse.emf.common.notify.AdapterFactory;
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.common.util.ResourceLocator;
+
+import org.eclipse.emf.edit.provider.IEditingDomainItemProvider;
+import org.eclipse.emf.edit.provider.IItemLabelProvider;
+import org.eclipse.emf.edit.provider.IItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.IItemPropertySource;
+import org.eclipse.emf.edit.provider.IStructuredItemContentProvider;
+import org.eclipse.emf.edit.provider.ITreeItemContentProvider;
+import org.eclipse.emf.edit.provider.ItemProviderAdapter;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IFlowchart} object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class IFlowchartItemProvider 
+	extends ItemProviderAdapter
+	implements
+		IEditingDomainItemProvider,
+		IStructuredItemContentProvider,
+		ITreeItemContentProvider,
+		IItemLabelProvider,
+		IItemPropertySource {
+	/**
+	 * This constructs an instance from a factory and a notifier.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IFlowchartItemProvider(AdapterFactory adapterFactory) {
+		super(adapterFactory);
+	}
+
+	/**
+	 * This returns the property descriptors for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) {
+		if (itemPropertyDescriptors == null) {
+			super.getPropertyDescriptors(object);
+
+		}
+		return itemPropertyDescriptors;
+	}
+
+	/**
+	 * This returns IFlowchart.gif.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object getImage(Object object) {
+		return overlayImage(object, getResourceLocator().getImage("full/obj16/IFlowchart")); //$NON-NLS-1$
+	}
+
+	/**
+	 * This returns the label text for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String getText(Object object) {
+		return getString("_UI_IFlowchart_type"); //$NON-NLS-1$
+	}
+	
+
+	/**
+	 * This handles model notifications by calling {@link #updateChildren} to update any cached
+	 * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void notifyChanged(Notification notification) {
+		updateChildren(notification);
+		super.notifyChanged(notification);
+	}
+
+	/**
+	 * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children
+	 * that can be created under this object.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) {
+		super.collectNewChildDescriptors(newChildDescriptors, object);
+	}
+
+	/**
+	 * Return the resource locator for this item provider's resources.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public ResourceLocator getResourceLocator() {
+		return rpymetamodelEditPlugin.INSTANCE;
+	}
+
+}
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/IFolderItemProvider.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/IFolderItemProvider.java
new file mode 100755
index 0000000..20df9ef
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/IFolderItemProvider.java
@@ -0,0 +1,454 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.provider;
+
+
+import java.util.Collection;
+import java.util.List;
+
+import org.eclipse.emf.common.notify.AdapterFactory;
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.ecore.EStructuralFeature;
+
+import org.eclipse.emf.edit.provider.ComposeableAdapterFactory;
+import org.eclipse.emf.edit.provider.IItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.ItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.ViewerNotification;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IFolder;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyFactory;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IFolder} object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class IFolderItemProvider extends FilesTypeItemProvider {
+	/**
+	 * This constructs an instance from a factory and a notifier.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IFolderItemProvider(AdapterFactory adapterFactory) {
+		super(adapterFactory);
+	}
+
+	/**
+	 * This returns the property descriptors for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) {
+		if (itemPropertyDescriptors == null) {
+			super.getPropertyDescriptors(object);
+
+			addRequiremenTracabilityHandlePropertyDescriptor(object);
+			addCodeUpdateCGTimePropertyDescriptor(object);
+		}
+		return itemPropertyDescriptors;
+	}
+
+	/**
+	 * This adds a property descriptor for the Requiremen Tracability Handle feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addRequiremenTracabilityHandlePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IFolder_requiremenTracabilityHandle_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IFolder_requiremenTracabilityHandle_feature", "_UI_IFolder_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIFolder_RequiremenTracabilityHandle(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Code Update CG Time feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addCodeUpdateCGTimePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IFolder_codeUpdateCGTime_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IFolder_codeUpdateCGTime_feature", "_UI_IFolder_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIFolder_CodeUpdateCGTime(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This specifies how to implement {@link #getChildren} and is used to deduce an appropriate feature for an
+	 * {@link org.eclipse.emf.edit.command.AddCommand}, {@link org.eclipse.emf.edit.command.RemoveCommand} or
+	 * {@link org.eclipse.emf.edit.command.MoveCommand} in {@link #createCommand}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Collection<? extends EStructuralFeature> getChildrenFeatures(Object object) {
+		if (childrenFeatures == null) {
+			super.getChildrenFeatures(object);
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getIFolder_Elements());
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getIFolder_Files());
+		}
+		return childrenFeatures;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EStructuralFeature getChildFeature(Object object, Object child) {
+		// Check the type of the specified child object and return the proper feature to use for
+		// adding (see {@link AddCommand}) it as a child.
+
+		return super.getChildFeature(object, child);
+	}
+
+	/**
+	 * This returns IFolder.gif.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object getImage(Object object) {
+		return overlayImage(object, getResourceLocator().getImage("full/obj16/IFolder")); //$NON-NLS-1$
+	}
+
+	/**
+	 * This returns the label text for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String getText(Object object) {
+		String label = ((IFolder)object).getName();
+		return label == null || label.length() == 0 ?
+			getString("_UI_IFolder_type") : //$NON-NLS-1$
+			getString("_UI_IFolder_type") + " " + label; //$NON-NLS-1$ //$NON-NLS-2$
+	}
+	
+
+	/**
+	 * This handles model notifications by calling {@link #updateChildren} to update any cached
+	 * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void notifyChanged(Notification notification) {
+		updateChildren(notification);
+
+		switch (notification.getFeatureID(IFolder.class)) {
+			case UMLRpyPackage.IFOLDER__REQUIREMEN_TRACABILITY_HANDLE:
+			case UMLRpyPackage.IFOLDER__CODE_UPDATE_CG_TIME:
+				fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), false, true));
+				return;
+			case UMLRpyPackage.IFOLDER__ELEMENTS:
+			case UMLRpyPackage.IFOLDER__FILES:
+				fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), true, false));
+				return;
+		}
+		super.notifyChanged(notification);
+	}
+
+	/**
+	 * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children
+	 * that can be created under this object.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) {
+		super.collectNewChildDescriptors(newChildDescriptors, object);
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIFolder_Elements(),
+				 UMLRpyFactory.eINSTANCE.createIState()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIFolder_Elements(),
+				 UMLRpyFactory.eINSTANCE.createIAcceptEventAction()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIFolder_Elements(),
+				 UMLRpyFactory.eINSTANCE.createIAcceptTimeEvent()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIFolder_Elements(),
+				 UMLRpyFactory.eINSTANCE.createIActivityDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIFolder_Elements(),
+				 UMLRpyFactory.eINSTANCE.createIActivityGraph()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIFolder_Elements(),
+				 UMLRpyFactory.eINSTANCE.createIActor()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIFolder_Elements(),
+				 UMLRpyFactory.eINSTANCE.createIClass()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIFolder_Elements(),
+				 UMLRpyFactory.eINSTANCE.createIAssociationClass()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIFolder_Elements(),
+				 UMLRpyFactory.eINSTANCE.createIAttribute()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIFolder_Elements(),
+				 UMLRpyFactory.eINSTANCE.createICallOperation()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIFolder_Elements(),
+				 UMLRpyFactory.eINSTANCE.createICodeGenConfigInfo()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIFolder_Elements(),
+				 UMLRpyFactory.eINSTANCE.createIDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIFolder_Elements(),
+				 UMLRpyFactory.eINSTANCE.createICollaborationDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIFolder_Elements(),
+				 UMLRpyFactory.eINSTANCE.createIComponent()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIFolder_Elements(),
+				 UMLRpyFactory.eINSTANCE.createIComponentDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIFolder_Elements(),
+				 UMLRpyFactory.eINSTANCE.createIDefaultDrvdTrans()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIFolder_Elements(),
+				 UMLRpyFactory.eINSTANCE.createIDependency()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIFolder_Elements(),
+				 UMLRpyFactory.eINSTANCE.createIDeploymentDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIFolder_Elements(),
+				 UMLRpyFactory.eINSTANCE.createIHyperLink()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIFolder_Elements(),
+				 UMLRpyFactory.eINSTANCE.createIInformationFlow()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIFolder_Elements(),
+				 UMLRpyFactory.eINSTANCE.createIInformationItem()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIFolder_Elements(),
+				 UMLRpyFactory.eINSTANCE.createIMSC()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIFolder_Elements(),
+				 UMLRpyFactory.eINSTANCE.createIMatrixInstance()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIFolder_Elements(),
+				 UMLRpyFactory.eINSTANCE.createIMessage()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIFolder_Elements(),
+				 UMLRpyFactory.eINSTANCE.createIModule()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIFolder_Elements(),
+				 UMLRpyFactory.eINSTANCE.createIObjectLink()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIFolder_Elements(),
+				 UMLRpyFactory.eINSTANCE.createIObjectModelDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIFolder_Elements(),
+				 UMLRpyFactory.eINSTANCE.createIObjectNode()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIFolder_Elements(),
+				 UMLRpyFactory.eINSTANCE.createIPanelDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIFolder_Elements(),
+				 UMLRpyFactory.eINSTANCE.createIPart()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIFolder_Elements(),
+				 UMLRpyFactory.eINSTANCE.createIPrimitiveOperation()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIFolder_Elements(),
+				 UMLRpyFactory.eINSTANCE.createIProfile()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIFolder_Elements(),
+				 UMLRpyFactory.eINSTANCE.createIReception()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIFolder_Elements(),
+				 UMLRpyFactory.eINSTANCE.createIReferenceActivity()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIFolder_Elements(),
+				 UMLRpyFactory.eINSTANCE.createIRequirement()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIFolder_Elements(),
+				 UMLRpyFactory.eINSTANCE.createISequenceDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIFolder_Elements(),
+				 UMLRpyFactory.eINSTANCE.createIStateChart()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIFolder_Elements(),
+				 UMLRpyFactory.eINSTANCE.createIStateChartDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIFolder_Elements(),
+				 UMLRpyFactory.eINSTANCE.createIStereotype()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIFolder_Elements(),
+				 UMLRpyFactory.eINSTANCE.createIStructureDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIFolder_Elements(),
+				 UMLRpyFactory.eINSTANCE.createISubsystem()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIFolder_Elements(),
+				 UMLRpyFactory.eINSTANCE.createISysMLPort()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIFolder_Elements(),
+				 UMLRpyFactory.eINSTANCE.createITableInstance()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIFolder_Elements(),
+				 UMLRpyFactory.eINSTANCE.createITransition()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIFolder_Elements(),
+				 UMLRpyFactory.eINSTANCE.createIType()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIFolder_Elements(),
+				 UMLRpyFactory.eINSTANCE.createIUCDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIFolder_Elements(),
+				 UMLRpyFactory.eINSTANCE.createIUseCase()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIFolder_Elements(),
+				 UMLRpyFactory.eINSTANCE.createIUseCaseDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIFolder_Files(),
+				 UMLRpyFactory.eINSTANCE.createIFile()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIFolder_Files(),
+				 UMLRpyFactory.eINSTANCE.createIFolder()));
+	}
+
+}
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/IForkItemProvider.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/IForkItemProvider.java
new file mode 100755
index 0000000..5c47041
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/IForkItemProvider.java
@@ -0,0 +1,350 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.provider;
+
+
+import java.util.Collection;
+import java.util.List;
+
+import org.eclipse.emf.common.notify.AdapterFactory;
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.ecore.EStructuralFeature;
+
+import org.eclipse.emf.edit.provider.ComposeableAdapterFactory;
+import org.eclipse.emf.edit.provider.IItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.ItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.ViewerNotification;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IFork;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyFactory;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IFork} object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class IForkItemProvider extends ItsTargetTypeItemProvider {
+	/**
+	 * This constructs an instance from a factory and a notifier.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IForkItemProvider(AdapterFactory adapterFactory) {
+		super(adapterFactory);
+	}
+
+	/**
+	 * This returns the property descriptors for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) {
+		if (itemPropertyDescriptors == null) {
+			super.getPropertyDescriptors(object);
+
+			addIdPropertyDescriptor(object);
+			addMyStatePropertyDescriptor(object);
+			addNamePropertyDescriptor(object);
+			addModifiedTimeWeakPropertyDescriptor(object);
+			addParentPropertyDescriptor(object);
+			addConnectorTypePropertyDescriptor(object);
+			addObjectCreationPropertyDescriptor(object);
+			addUmlDependencyIDPropertyDescriptor(object);
+		}
+		return itemPropertyDescriptors;
+	}
+
+	/**
+	 * This adds a property descriptor for the Id feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addIdPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IFork_id_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IFork_id_feature", "_UI_IFork_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIFork_Id(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the My State feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addMyStatePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IFork_myState_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IFork_myState_feature", "_UI_IFork_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIFork_MyState(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Name feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addNamePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IFork_name_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IFork_name_feature", "_UI_IFork_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIFork_Name(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Modified Time Weak feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addModifiedTimeWeakPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IFork_modifiedTimeWeak_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IFork_modifiedTimeWeak_feature", "_UI_IFork_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIFork_ModifiedTimeWeak(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Parent feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addParentPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IFork_parent_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IFork_parent_feature", "_UI_IFork_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIFork_Parent(),
+				 true,
+				 false,
+				 true,
+				 null,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Connector Type feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addConnectorTypePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IFork_connectorType_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IFork_connectorType_feature", "_UI_IFork_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIFork_ConnectorType(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Object Creation feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addObjectCreationPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IFork_objectCreation_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IFork_objectCreation_feature", "_UI_IFork_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIFork_ObjectCreation(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Uml Dependency ID feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addUmlDependencyIDPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IFork_umlDependencyID_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IFork_umlDependencyID_feature", "_UI_IFork_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIFork_UmlDependencyID(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This specifies how to implement {@link #getChildren} and is used to deduce an appropriate feature for an
+	 * {@link org.eclipse.emf.edit.command.AddCommand}, {@link org.eclipse.emf.edit.command.RemoveCommand} or
+	 * {@link org.eclipse.emf.edit.command.MoveCommand} in {@link #createCommand}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Collection<? extends EStructuralFeature> getChildrenFeatures(Object object) {
+		if (childrenFeatures == null) {
+			super.getChildrenFeatures(object);
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getIFork_Description());
+		}
+		return childrenFeatures;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EStructuralFeature getChildFeature(Object object, Object child) {
+		// Check the type of the specified child object and return the proper feature to use for
+		// adding (see {@link AddCommand}) it as a child.
+
+		return super.getChildFeature(object, child);
+	}
+
+	/**
+	 * This returns IFork.gif.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object getImage(Object object) {
+		return overlayImage(object, getResourceLocator().getImage("full/obj16/IFork")); //$NON-NLS-1$
+	}
+
+	/**
+	 * This returns the label text for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String getText(Object object) {
+		String label = ((IFork)object).getName();
+		return label == null || label.length() == 0 ?
+			getString("_UI_IFork_type") : //$NON-NLS-1$
+			getString("_UI_IFork_type") + " " + label; //$NON-NLS-1$ //$NON-NLS-2$
+	}
+	
+
+	/**
+	 * This handles model notifications by calling {@link #updateChildren} to update any cached
+	 * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void notifyChanged(Notification notification) {
+		updateChildren(notification);
+
+		switch (notification.getFeatureID(IFork.class)) {
+			case UMLRpyPackage.IFORK__ID:
+			case UMLRpyPackage.IFORK__MY_STATE:
+			case UMLRpyPackage.IFORK__NAME:
+			case UMLRpyPackage.IFORK__MODIFIED_TIME_WEAK:
+			case UMLRpyPackage.IFORK__CONNECTOR_TYPE:
+			case UMLRpyPackage.IFORK__OBJECT_CREATION:
+			case UMLRpyPackage.IFORK__UML_DEPENDENCY_ID:
+				fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), false, true));
+				return;
+			case UMLRpyPackage.IFORK__DESCRIPTION:
+				fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), true, false));
+				return;
+		}
+		super.notifyChanged(notification);
+	}
+
+	/**
+	 * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children
+	 * that can be created under this object.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) {
+		super.collectNewChildDescriptors(newChildDescriptors, object);
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIFork_Description(),
+				 UMLRpyFactory.eINSTANCE.createIDescription()));
+	}
+
+}
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/IGeneralizationItemProvider.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/IGeneralizationItemProvider.java
new file mode 100755
index 0000000..dd32af5
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/IGeneralizationItemProvider.java
@@ -0,0 +1,347 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.provider;
+
+
+import java.util.Collection;
+import java.util.List;
+
+import org.eclipse.emf.common.notify.AdapterFactory;
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.ecore.EStructuralFeature;
+
+import org.eclipse.emf.edit.provider.ComposeableAdapterFactory;
+import org.eclipse.emf.edit.provider.IItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.ItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.ViewerNotification;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IGeneralization;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyFactory;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IGeneralization} object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class IGeneralizationItemProvider extends IModelElementItemProvider {
+	/**
+	 * This constructs an instance from a factory and a notifier.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IGeneralizationItemProvider(AdapterFactory adapterFactory) {
+		super(adapterFactory);
+	}
+
+	/**
+	 * This returns the property descriptors for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) {
+		if (itemPropertyDescriptors == null) {
+			super.getPropertyDescriptors(object);
+
+			addIdPropertyDescriptor(object);
+			addModifiedTimeWeakPropertyDescriptor(object);
+			addDependsOnPropertyDescriptor(object);
+			addInheritanceTypePropertyDescriptor(object);
+			addIsVirtualPropertyDescriptor(object);
+			addObjectCreationPropertyDescriptor(object);
+			addUmlDependencyIDPropertyDescriptor(object);
+		}
+		return itemPropertyDescriptors;
+	}
+
+	/**
+	 * This adds a property descriptor for the Id feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addIdPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IGeneralization_id_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IGeneralization_id_feature", "_UI_IGeneralization_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIGeneralization_Id(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Modified Time Weak feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addModifiedTimeWeakPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IGeneralization_modifiedTimeWeak_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IGeneralization_modifiedTimeWeak_feature", "_UI_IGeneralization_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIGeneralization_ModifiedTimeWeak(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Depends On feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addDependsOnPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IGeneralization_dependsOn_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IGeneralization_dependsOn_feature", "_UI_IGeneralization_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIGeneralization_DependsOn(),
+				 true,
+				 false,
+				 true,
+				 null,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Inheritance Type feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addInheritanceTypePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IGeneralization_inheritanceType_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IGeneralization_inheritanceType_feature", "_UI_IGeneralization_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIGeneralization_InheritanceType(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Is Virtual feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addIsVirtualPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IGeneralization_isVirtual_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IGeneralization_isVirtual_feature", "_UI_IGeneralization_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIGeneralization_IsVirtual(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Object Creation feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addObjectCreationPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IGeneralization_objectCreation_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IGeneralization_objectCreation_feature", "_UI_IGeneralization_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIGeneralization_ObjectCreation(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Uml Dependency ID feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addUmlDependencyIDPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IGeneralization_umlDependencyID_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IGeneralization_umlDependencyID_feature", "_UI_IGeneralization_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIGeneralization_UmlDependencyID(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This specifies how to implement {@link #getChildren} and is used to deduce an appropriate feature for an
+	 * {@link org.eclipse.emf.edit.command.AddCommand}, {@link org.eclipse.emf.edit.command.RemoveCommand} or
+	 * {@link org.eclipse.emf.edit.command.MoveCommand} in {@link #createCommand}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Collection<? extends EStructuralFeature> getChildrenFeatures(Object object) {
+		if (childrenFeatures == null) {
+			super.getChildrenFeatures(object);
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getIGeneralization_Stereotypes());
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getIGeneralization_Description());
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getIGeneralization_Ti());
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getIGeneralization_Annotations());
+		}
+		return childrenFeatures;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EStructuralFeature getChildFeature(Object object, Object child) {
+		// Check the type of the specified child object and return the proper feature to use for
+		// adding (see {@link AddCommand}) it as a child.
+
+		return super.getChildFeature(object, child);
+	}
+
+	/**
+	 * This returns IGeneralization.gif.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object getImage(Object object) {
+		return overlayImage(object, getResourceLocator().getImage("full/obj16/IGeneralization")); //$NON-NLS-1$
+	}
+
+	/**
+	 * This returns the label text for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String getText(Object object) {
+		String label = ((IGeneralization)object).getDisplayName();
+		return label == null || label.length() == 0 ?
+			getString("_UI_IGeneralization_type") : //$NON-NLS-1$
+			getString("_UI_IGeneralization_type") + " " + label; //$NON-NLS-1$ //$NON-NLS-2$
+	}
+	
+
+	/**
+	 * This handles model notifications by calling {@link #updateChildren} to update any cached
+	 * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void notifyChanged(Notification notification) {
+		updateChildren(notification);
+
+		switch (notification.getFeatureID(IGeneralization.class)) {
+			case UMLRpyPackage.IGENERALIZATION__ID:
+			case UMLRpyPackage.IGENERALIZATION__MODIFIED_TIME_WEAK:
+			case UMLRpyPackage.IGENERALIZATION__INHERITANCE_TYPE:
+			case UMLRpyPackage.IGENERALIZATION__IS_VIRTUAL:
+			case UMLRpyPackage.IGENERALIZATION__OBJECT_CREATION:
+			case UMLRpyPackage.IGENERALIZATION__UML_DEPENDENCY_ID:
+				fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), false, true));
+				return;
+			case UMLRpyPackage.IGENERALIZATION__STEREOTYPES:
+			case UMLRpyPackage.IGENERALIZATION__DESCRIPTION:
+			case UMLRpyPackage.IGENERALIZATION__TI:
+			case UMLRpyPackage.IGENERALIZATION__ANNOTATIONS:
+				fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), true, false));
+				return;
+		}
+		super.notifyChanged(notification);
+	}
+
+	/**
+	 * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children
+	 * that can be created under this object.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) {
+		super.collectNewChildDescriptors(newChildDescriptors, object);
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIGeneralization_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIStereotype()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIGeneralization_Description(),
+				 UMLRpyFactory.eINSTANCE.createIDescription()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIGeneralization_Ti(),
+				 UMLRpyFactory.eINSTANCE.createITemplateInst()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIGeneralization_Annotations(),
+				 UMLRpyFactory.eINSTANCE.createIConstraint()));
+	}
+
+}
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/IGuardItemProvider.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/IGuardItemProvider.java
new file mode 100755
index 0000000..4c0e087
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/IGuardItemProvider.java
@@ -0,0 +1,238 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.provider;
+
+
+import java.util.Collection;
+import java.util.List;
+
+import org.eclipse.emf.common.notify.AdapterFactory;
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.edit.provider.ComposeableAdapterFactory;
+import org.eclipse.emf.edit.provider.IItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.ItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.ViewerNotification;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IGuard;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IGuard} object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class IGuardItemProvider extends IModelElementItemProvider {
+	/**
+	 * This constructs an instance from a factory and a notifier.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IGuardItemProvider(AdapterFactory adapterFactory) {
+		super(adapterFactory);
+	}
+
+	/**
+	 * This returns the property descriptors for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) {
+		if (itemPropertyDescriptors == null) {
+			super.getPropertyDescriptors(object);
+
+			addIdPropertyDescriptor(object);
+			addBodyPropertyDescriptor(object);
+			addModifiedTimeWeakPropertyDescriptor(object);
+			addObjectCreationPropertyDescriptor(object);
+			addUmlDependencyIDPropertyDescriptor(object);
+		}
+		return itemPropertyDescriptors;
+	}
+
+	/**
+	 * This adds a property descriptor for the Id feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addIdPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IGuard_id_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IGuard_id_feature", "_UI_IGuard_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIGuard_Id(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Body feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addBodyPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IGuard_body_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IGuard_body_feature", "_UI_IGuard_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIGuard_Body(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Modified Time Weak feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addModifiedTimeWeakPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IGuard_modifiedTimeWeak_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IGuard_modifiedTimeWeak_feature", "_UI_IGuard_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIGuard_ModifiedTimeWeak(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Object Creation feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addObjectCreationPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IGuard_objectCreation_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IGuard_objectCreation_feature", "_UI_IGuard_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIGuard_ObjectCreation(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Uml Dependency ID feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addUmlDependencyIDPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IGuard_umlDependencyID_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IGuard_umlDependencyID_feature", "_UI_IGuard_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIGuard_UmlDependencyID(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This returns IGuard.gif.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object getImage(Object object) {
+		return overlayImage(object, getResourceLocator().getImage("full/obj16/IGuard")); //$NON-NLS-1$
+	}
+
+	/**
+	 * This returns the label text for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String getText(Object object) {
+		String label = ((IGuard)object).getDisplayName();
+		return label == null || label.length() == 0 ?
+			getString("_UI_IGuard_type") : //$NON-NLS-1$
+			getString("_UI_IGuard_type") + " " + label; //$NON-NLS-1$ //$NON-NLS-2$
+	}
+	
+
+	/**
+	 * This handles model notifications by calling {@link #updateChildren} to update any cached
+	 * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void notifyChanged(Notification notification) {
+		updateChildren(notification);
+
+		switch (notification.getFeatureID(IGuard.class)) {
+			case UMLRpyPackage.IGUARD__ID:
+			case UMLRpyPackage.IGUARD__BODY:
+			case UMLRpyPackage.IGUARD__MODIFIED_TIME_WEAK:
+			case UMLRpyPackage.IGUARD__OBJECT_CREATION:
+			case UMLRpyPackage.IGUARD__UML_DEPENDENCY_ID:
+				fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), false, true));
+				return;
+		}
+		super.notifyChanged(notification);
+	}
+
+	/**
+	 * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children
+	 * that can be created under this object.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) {
+		super.collectNewChildDescriptors(newChildDescriptors, object);
+	}
+
+}
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/IHandleWithDataItemProvider.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/IHandleWithDataItemProvider.java
new file mode 100755
index 0000000..e2ac23f
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/IHandleWithDataItemProvider.java
@@ -0,0 +1,312 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.provider;
+
+
+import java.util.Collection;
+import java.util.List;
+
+import org.eclipse.emf.common.notify.AdapterFactory;
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.common.util.ResourceLocator;
+
+import org.eclipse.emf.edit.provider.ComposeableAdapterFactory;
+import org.eclipse.emf.edit.provider.IEditingDomainItemProvider;
+import org.eclipse.emf.edit.provider.IItemLabelProvider;
+import org.eclipse.emf.edit.provider.IItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.IItemPropertySource;
+import org.eclipse.emf.edit.provider.IStructuredItemContentProvider;
+import org.eclipse.emf.edit.provider.ITreeItemContentProvider;
+import org.eclipse.emf.edit.provider.ItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.ItemProviderAdapter;
+import org.eclipse.emf.edit.provider.ViewerNotification;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IHandleWithData;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IHandleWithData} object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class IHandleWithDataItemProvider 
+	extends ItemProviderAdapter
+	implements
+		IEditingDomainItemProvider,
+		IStructuredItemContentProvider,
+		ITreeItemContentProvider,
+		IItemLabelProvider,
+		IItemPropertySource {
+	/**
+	 * This constructs an instance from a factory and a notifier.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IHandleWithDataItemProvider(AdapterFactory adapterFactory) {
+		super(adapterFactory);
+	}
+
+	/**
+	 * This returns the property descriptors for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) {
+		if (itemPropertyDescriptors == null) {
+			super.getPropertyDescriptors(object);
+
+			addM2ClassPropertyDescriptor(object);
+			addFilenamePropertyDescriptor(object);
+			addSubsystemPropertyDescriptor(object);
+			addClassPropertyDescriptor(object);
+			addNamePropertyDescriptor(object);
+			addIdPropertyDescriptor(object);
+			addDataPropertyDescriptor(object);
+		}
+		return itemPropertyDescriptors;
+	}
+
+	/**
+	 * This adds a property descriptor for the M2 Class feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM2ClassPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IHandleWithData_m2Class_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IHandleWithData_m2Class_feature", "_UI_IHandleWithData_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIHandleWithData_M2Class(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Filename feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addFilenamePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IHandleWithData_filename_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IHandleWithData_filename_feature", "_UI_IHandleWithData_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIHandleWithData_Filename(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Subsystem feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addSubsystemPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IHandleWithData_subsystem_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IHandleWithData_subsystem_feature", "_UI_IHandleWithData_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIHandleWithData_Subsystem(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Class feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addClassPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IHandleWithData_class_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IHandleWithData_class_feature", "_UI_IHandleWithData_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIHandleWithData_Class(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Name feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addNamePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IHandleWithData_name_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IHandleWithData_name_feature", "_UI_IHandleWithData_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIHandleWithData_Name(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Id feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addIdPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IHandleWithData_id_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IHandleWithData_id_feature", "_UI_IHandleWithData_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIHandleWithData_Id(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Data feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addDataPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IHandleWithData_data_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IHandleWithData_data_feature", "_UI_IHandleWithData_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIHandleWithData_Data(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This returns IHandleWithData.gif.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object getImage(Object object) {
+		return overlayImage(object, getResourceLocator().getImage("full/obj16/IHandleWithData")); //$NON-NLS-1$
+	}
+
+	/**
+	 * This returns the label text for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String getText(Object object) {
+		String label = ((IHandleWithData)object).getName();
+		return label == null || label.length() == 0 ?
+			getString("_UI_IHandleWithData_type") : //$NON-NLS-1$
+			getString("_UI_IHandleWithData_type") + " " + label; //$NON-NLS-1$ //$NON-NLS-2$
+	}
+	
+
+	/**
+	 * This handles model notifications by calling {@link #updateChildren} to update any cached
+	 * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void notifyChanged(Notification notification) {
+		updateChildren(notification);
+
+		switch (notification.getFeatureID(IHandleWithData.class)) {
+			case UMLRpyPackage.IHANDLE_WITH_DATA__M2_CLASS:
+			case UMLRpyPackage.IHANDLE_WITH_DATA__FILENAME:
+			case UMLRpyPackage.IHANDLE_WITH_DATA__SUBSYSTEM:
+			case UMLRpyPackage.IHANDLE_WITH_DATA__CLASS:
+			case UMLRpyPackage.IHANDLE_WITH_DATA__NAME:
+			case UMLRpyPackage.IHANDLE_WITH_DATA__ID:
+			case UMLRpyPackage.IHANDLE_WITH_DATA__DATA:
+				fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), false, true));
+				return;
+		}
+		super.notifyChanged(notification);
+	}
+
+	/**
+	 * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children
+	 * that can be created under this object.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) {
+		super.collectNewChildDescriptors(newChildDescriptors, object);
+	}
+
+	/**
+	 * Return the resource locator for this item provider's resources.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public ResourceLocator getResourceLocator() {
+		return rpymetamodelEditPlugin.INSTANCE;
+	}
+
+}
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/IHistoryConnectorItemProvider.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/IHistoryConnectorItemProvider.java
new file mode 100755
index 0000000..cc1c306
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/IHistoryConnectorItemProvider.java
@@ -0,0 +1,309 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.provider;
+
+
+import java.util.Collection;
+import java.util.List;
+
+import org.eclipse.emf.common.notify.AdapterFactory;
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.edit.provider.ComposeableAdapterFactory;
+import org.eclipse.emf.edit.provider.IItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.ItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.ViewerNotification;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IHistoryConnector;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IHistoryConnector} object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class IHistoryConnectorItemProvider extends ItsTargetTypeItemProvider {
+	/**
+	 * This constructs an instance from a factory and a notifier.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IHistoryConnectorItemProvider(AdapterFactory adapterFactory) {
+		super(adapterFactory);
+	}
+
+	/**
+	 * This returns the property descriptors for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) {
+		if (itemPropertyDescriptors == null) {
+			super.getPropertyDescriptors(object);
+
+			addIdPropertyDescriptor(object);
+			addNamePropertyDescriptor(object);
+			addParentPropertyDescriptor(object);
+			addConnectorTypePropertyDescriptor(object);
+			addMyStatePropertyDescriptor(object);
+			addModifiedTimeWeakPropertyDescriptor(object);
+			addObjectCreationPropertyDescriptor(object);
+			addUmlDependencyIDPropertyDescriptor(object);
+		}
+		return itemPropertyDescriptors;
+	}
+
+	/**
+	 * This adds a property descriptor for the Id feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addIdPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IHistoryConnector_id_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IHistoryConnector_id_feature", "_UI_IHistoryConnector_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIHistoryConnector_Id(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Name feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addNamePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IHistoryConnector_name_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IHistoryConnector_name_feature", "_UI_IHistoryConnector_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIHistoryConnector_Name(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Parent feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addParentPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IHistoryConnector_parent_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IHistoryConnector_parent_feature", "_UI_IHistoryConnector_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIHistoryConnector_Parent(),
+				 true,
+				 false,
+				 true,
+				 null,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Connector Type feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addConnectorTypePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IHistoryConnector_connectorType_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IHistoryConnector_connectorType_feature", "_UI_IHistoryConnector_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIHistoryConnector_ConnectorType(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the My State feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addMyStatePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IHistoryConnector_myState_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IHistoryConnector_myState_feature", "_UI_IHistoryConnector_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIHistoryConnector_MyState(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Modified Time Weak feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addModifiedTimeWeakPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IHistoryConnector_modifiedTimeWeak_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IHistoryConnector_modifiedTimeWeak_feature", "_UI_IHistoryConnector_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIHistoryConnector_ModifiedTimeWeak(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Object Creation feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addObjectCreationPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IHistoryConnector_objectCreation_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IHistoryConnector_objectCreation_feature", "_UI_IHistoryConnector_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIHistoryConnector_ObjectCreation(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Uml Dependency ID feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addUmlDependencyIDPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IHistoryConnector_umlDependencyID_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IHistoryConnector_umlDependencyID_feature", "_UI_IHistoryConnector_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIHistoryConnector_UmlDependencyID(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This returns IHistoryConnector.gif.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object getImage(Object object) {
+		return overlayImage(object, getResourceLocator().getImage("full/obj16/IHistoryConnector")); //$NON-NLS-1$
+	}
+
+	/**
+	 * This returns the label text for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String getText(Object object) {
+		String label = ((IHistoryConnector)object).getName();
+		return label == null || label.length() == 0 ?
+			getString("_UI_IHistoryConnector_type") : //$NON-NLS-1$
+			getString("_UI_IHistoryConnector_type") + " " + label; //$NON-NLS-1$ //$NON-NLS-2$
+	}
+	
+
+	/**
+	 * This handles model notifications by calling {@link #updateChildren} to update any cached
+	 * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void notifyChanged(Notification notification) {
+		updateChildren(notification);
+
+		switch (notification.getFeatureID(IHistoryConnector.class)) {
+			case UMLRpyPackage.IHISTORY_CONNECTOR__ID:
+			case UMLRpyPackage.IHISTORY_CONNECTOR__NAME:
+			case UMLRpyPackage.IHISTORY_CONNECTOR__CONNECTOR_TYPE:
+			case UMLRpyPackage.IHISTORY_CONNECTOR__MY_STATE:
+			case UMLRpyPackage.IHISTORY_CONNECTOR__MODIFIED_TIME_WEAK:
+			case UMLRpyPackage.IHISTORY_CONNECTOR__OBJECT_CREATION:
+			case UMLRpyPackage.IHISTORY_CONNECTOR__UML_DEPENDENCY_ID:
+				fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), false, true));
+				return;
+		}
+		super.notifyChanged(notification);
+	}
+
+	/**
+	 * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children
+	 * that can be created under this object.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) {
+		super.collectNewChildDescriptors(newChildDescriptors, object);
+	}
+
+}
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/IHyperLinkItemProvider.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/IHyperLinkItemProvider.java
new file mode 100755
index 0000000..0f09702
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/IHyperLinkItemProvider.java
@@ -0,0 +1,134 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.provider;
+
+
+import java.util.Collection;
+import java.util.List;
+
+import org.eclipse.emf.common.notify.AdapterFactory;
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.edit.provider.IItemPropertyDescriptor;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IHyperLink;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IHyperLink} object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class IHyperLinkItemProvider extends IDependencyItemProvider {
+	/**
+	 * This constructs an instance from a factory and a notifier.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IHyperLinkItemProvider(AdapterFactory adapterFactory) {
+		super(adapterFactory);
+	}
+
+	/**
+	 * This returns the property descriptors for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) {
+		if (itemPropertyDescriptors == null) {
+			super.getPropertyDescriptors(object);
+
+		}
+		return itemPropertyDescriptors;
+	}
+
+	/**
+	 * This returns IHyperLink.gif.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object getImage(Object object) {
+		return overlayImage(object, getResourceLocator().getImage("full/obj16/IHyperLink")); //$NON-NLS-1$
+	}
+
+	/**
+	 * This returns the label text for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String getText(Object object) {
+		String label = ((IHyperLink)object).getName();
+		return label == null || label.length() == 0 ?
+			getString("_UI_IHyperLink_type") : //$NON-NLS-1$
+			getString("_UI_IHyperLink_type") + " " + label; //$NON-NLS-1$ //$NON-NLS-2$
+	}
+	
+
+	/**
+	 * This handles model notifications by calling {@link #updateChildren} to update any cached
+	 * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void notifyChanged(Notification notification) {
+		updateChildren(notification);
+		super.notifyChanged(notification);
+	}
+
+	/**
+	 * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children
+	 * that can be created under this object.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) {
+		super.collectNewChildDescriptors(newChildDescriptors, object);
+	}
+
+	/**
+	 * This returns the label text for {@link org.eclipse.emf.edit.command.CreateChildCommand}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String getCreateChildText(Object owner, Object feature, Object child, Collection<?> selection) {
+		Object childFeature = feature;
+		Object childObject = child;
+
+		boolean qualify =
+			childFeature == UMLRpyPackage.eINSTANCE.getIDependency_Stereotypes() ||
+			childFeature == UMLRpyPackage.eINSTANCE.getIDependency_Annotations() ||
+			childFeature == UMLRpyPackage.eINSTANCE.getIDependency_Tags();
+
+		if (qualify) {
+			return getString
+				("_UI_CreateChild_text2", //$NON-NLS-1$
+				 new Object[] { getTypeText(childObject), getFeatureText(childFeature), getTypeText(owner) });
+		}
+		return super.getCreateChildText(owner, feature, child, selection);
+	}
+
+}
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/IInformationFlowItemProvider.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/IInformationFlowItemProvider.java
new file mode 100755
index 0000000..c2d01a7
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/IInformationFlowItemProvider.java
@@ -0,0 +1,817 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.provider;
+
+
+import java.util.Collection;
+import java.util.List;
+
+import org.eclipse.emf.common.notify.AdapterFactory;
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.ecore.EStructuralFeature;
+import org.eclipse.emf.ecore.EcoreFactory;
+import org.eclipse.emf.ecore.EcorePackage;
+import org.eclipse.emf.edit.provider.ComposeableAdapterFactory;
+import org.eclipse.emf.edit.provider.IItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.ItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.ViewerNotification;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IInformationFlow;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyFactory;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IInformationFlow} object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class IInformationFlowItemProvider extends DeclarativesTypeItemProvider {
+	/**
+	 * This constructs an instance from a factory and a notifier.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IInformationFlowItemProvider(AdapterFactory adapterFactory) {
+		super(adapterFactory);
+	}
+
+	/**
+	 * This returns the property descriptors for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) {
+		if (itemPropertyDescriptors == null) {
+			super.getPropertyDescriptors(object);
+
+			addDisplayNamePropertyDescriptor(object);
+			addIdPropertyDescriptor(object);
+			addMyStatePropertyDescriptor(object);
+			addNamePropertyDescriptor(object);
+			addEnd1_PropertyDescriptor(object);
+			addEnd2_PropertyDescriptor(object);
+			addDirection_PropertyDescriptor(object);
+			addModifiedTimeWeakPropertyDescriptor(object);
+			addEnd1ObjectPort_PropertyDescriptor(object);
+			addEnd2ObjectPort_PropertyDescriptor(object);
+			addRequiremenTracabilityHandlePropertyDescriptor(object);
+			addObjectCreationPropertyDescriptor(object);
+			addUmlDependencyIDPropertyDescriptor(object);
+		}
+		return itemPropertyDescriptors;
+	}
+
+	/**
+	 * This adds a property descriptor for the Display Name feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addDisplayNamePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IModelElement_displayName_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IModelElement_displayName_feature", "_UI_IModelElement_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIModelElement_DisplayName(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Id feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addIdPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IInformationFlow_id_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IInformationFlow_id_feature", "_UI_IInformationFlow_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIInformationFlow_Id(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the My State feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addMyStatePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IInformationFlow_myState_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IInformationFlow_myState_feature", "_UI_IInformationFlow_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIInformationFlow_MyState(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Name feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addNamePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IInformationFlow_name_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IInformationFlow_name_feature", "_UI_IInformationFlow_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIInformationFlow_Name(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the End1  feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addEnd1_PropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IInformationFlow_end1__feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IInformationFlow_end1__feature", "_UI_IInformationFlow_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIInformationFlow_End1_(),
+				 true,
+				 false,
+				 true,
+				 null,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the End2  feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addEnd2_PropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IInformationFlow_end2__feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IInformationFlow_end2__feature", "_UI_IInformationFlow_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIInformationFlow_End2_(),
+				 true,
+				 false,
+				 true,
+				 null,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Direction  feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addDirection_PropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IInformationFlow_direction__feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IInformationFlow_direction__feature", "_UI_IInformationFlow_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIInformationFlow_Direction_(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Modified Time Weak feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addModifiedTimeWeakPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IInformationFlow_modifiedTimeWeak_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IInformationFlow_modifiedTimeWeak_feature", "_UI_IInformationFlow_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIInformationFlow_ModifiedTimeWeak(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the End1 Object Port  feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addEnd1ObjectPort_PropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IInformationFlow_end1ObjectPort__feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IInformationFlow_end1ObjectPort__feature", "_UI_IInformationFlow_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIInformationFlow_End1ObjectPort_(),
+				 true,
+				 false,
+				 true,
+				 null,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the End2 Object Port  feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addEnd2ObjectPort_PropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IInformationFlow_end2ObjectPort__feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IInformationFlow_end2ObjectPort__feature", "_UI_IInformationFlow_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIInformationFlow_End2ObjectPort_(),
+				 true,
+				 false,
+				 true,
+				 null,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Requiremen Tracability Handle feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addRequiremenTracabilityHandlePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IInformationFlow_requiremenTracabilityHandle_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IInformationFlow_requiremenTracabilityHandle_feature", "_UI_IInformationFlow_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIInformationFlow_RequiremenTracabilityHandle(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Object Creation feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addObjectCreationPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IInformationFlow_objectCreation_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IInformationFlow_objectCreation_feature", "_UI_IInformationFlow_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIInformationFlow_ObjectCreation(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Uml Dependency ID feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addUmlDependencyIDPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IInformationFlow_umlDependencyID_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IInformationFlow_umlDependencyID_feature", "_UI_IInformationFlow_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIInformationFlow_UmlDependencyID(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This specifies how to implement {@link #getChildren} and is used to deduce an appropriate feature for an
+	 * {@link org.eclipse.emf.edit.command.AddCommand}, {@link org.eclipse.emf.edit.command.RemoveCommand} or
+	 * {@link org.eclipse.emf.edit.command.MoveCommand} in {@link #createCommand}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Collection<? extends EStructuralFeature> getChildrenFeatures(Object object) {
+		if (childrenFeatures == null) {
+			super.getChildrenFeatures(object);
+			childrenFeatures.add(EcorePackage.Literals.EMODEL_ELEMENT__EANNOTATIONS);
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getIInformationFlow_Conveyed());
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getIInformationFlow_Description());
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getIInformationFlow_HyperLinks());
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getIInformationFlow_Dependencies());
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getIInformationFlow_Annotations());
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getIInformationFlow_Stereotypes());
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getIInformationFlow_Tags());
+		}
+		return childrenFeatures;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EStructuralFeature getChildFeature(Object object, Object child) {
+		// Check the type of the specified child object and return the proper feature to use for
+		// adding (see {@link AddCommand}) it as a child.
+
+		return super.getChildFeature(object, child);
+	}
+
+	/**
+	 * This returns IInformationFlow.gif.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object getImage(Object object) {
+		return overlayImage(object, getResourceLocator().getImage("full/obj16/IInformationFlow")); //$NON-NLS-1$
+	}
+
+	/**
+	 * This returns the label text for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String getText(Object object) {
+		String label = ((IInformationFlow)object).getName();
+		return label == null || label.length() == 0 ?
+			getString("_UI_IInformationFlow_type") : //$NON-NLS-1$
+			getString("_UI_IInformationFlow_type") + " " + label; //$NON-NLS-1$ //$NON-NLS-2$
+	}
+	
+
+	/**
+	 * This handles model notifications by calling {@link #updateChildren} to update any cached
+	 * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void notifyChanged(Notification notification) {
+		updateChildren(notification);
+
+		switch (notification.getFeatureID(IInformationFlow.class)) {
+			case UMLRpyPackage.IINFORMATION_FLOW__DISPLAY_NAME:
+			case UMLRpyPackage.IINFORMATION_FLOW__ID:
+			case UMLRpyPackage.IINFORMATION_FLOW__MY_STATE:
+			case UMLRpyPackage.IINFORMATION_FLOW__NAME:
+			case UMLRpyPackage.IINFORMATION_FLOW__DIRECTION_:
+			case UMLRpyPackage.IINFORMATION_FLOW__MODIFIED_TIME_WEAK:
+			case UMLRpyPackage.IINFORMATION_FLOW__REQUIREMEN_TRACABILITY_HANDLE:
+			case UMLRpyPackage.IINFORMATION_FLOW__OBJECT_CREATION:
+			case UMLRpyPackage.IINFORMATION_FLOW__UML_DEPENDENCY_ID:
+				fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), false, true));
+				return;
+			case UMLRpyPackage.IINFORMATION_FLOW__EANNOTATIONS:
+			case UMLRpyPackage.IINFORMATION_FLOW__CONVEYED:
+			case UMLRpyPackage.IINFORMATION_FLOW__DESCRIPTION:
+			case UMLRpyPackage.IINFORMATION_FLOW__HYPER_LINKS:
+			case UMLRpyPackage.IINFORMATION_FLOW__DEPENDENCIES:
+			case UMLRpyPackage.IINFORMATION_FLOW__ANNOTATIONS:
+			case UMLRpyPackage.IINFORMATION_FLOW__STEREOTYPES:
+			case UMLRpyPackage.IINFORMATION_FLOW__TAGS:
+				fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), true, false));
+				return;
+		}
+		super.notifyChanged(notification);
+	}
+
+	/**
+	 * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children
+	 * that can be created under this object.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) {
+		super.collectNewChildDescriptors(newChildDescriptors, object);
+
+		newChildDescriptors.add
+			(createChildParameter
+				(EcorePackage.Literals.EMODEL_ELEMENT__EANNOTATIONS,
+				 EcoreFactory.eINSTANCE.createEAnnotation()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIInformationFlow_Conveyed(),
+				 UMLRpyFactory.eINSTANCE.createIClass()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIInformationFlow_Conveyed(),
+				 UMLRpyFactory.eINSTANCE.createIAssociationClass()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIInformationFlow_Conveyed(),
+				 UMLRpyFactory.eINSTANCE.createIEvent()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIInformationFlow_Conveyed(),
+				 UMLRpyFactory.eINSTANCE.createIInformationItem()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIInformationFlow_Conveyed(),
+				 UMLRpyFactory.eINSTANCE.createIPart()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIInformationFlow_Conveyed(),
+				 UMLRpyFactory.eINSTANCE.createIStateChart()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIInformationFlow_Description(),
+				 UMLRpyFactory.eINSTANCE.createIDescription()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIInformationFlow_HyperLinks(),
+				 UMLRpyFactory.eINSTANCE.createIMHyperLink()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIInformationFlow_Dependencies(),
+				 UMLRpyFactory.eINSTANCE.createIDependency()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIInformationFlow_Dependencies(),
+				 UMLRpyFactory.eINSTANCE.createIHyperLink()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIInformationFlow_Annotations(),
+				 UMLRpyFactory.eINSTANCE.createIRequirement()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIInformationFlow_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIUnit()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIInformationFlow_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIClassifier()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIInformationFlow_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIActor()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIInformationFlow_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIAnnotation()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIInformationFlow_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIVariable()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIInformationFlow_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIArgument()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIInformationFlow_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIClass()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIInformationFlow_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIAssociationClass()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIInformationFlow_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIAttribute()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIInformationFlow_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIInformationFlow_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createICollaborationDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIInformationFlow_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIComment()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIInformationFlow_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIComponent()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIInformationFlow_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIComponentDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIInformationFlow_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIConstraint()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIInformationFlow_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIControlledFile()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIInformationFlow_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIDeploymentDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIInformationFlow_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIInterfaceItem()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIInformationFlow_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIEvent()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIInformationFlow_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIEventReception()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIInformationFlow_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIFile()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIInformationFlow_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIFlowItem()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIInformationFlow_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIRelation()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIInformationFlow_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIInstance()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIInformationFlow_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createILink()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIInformationFlow_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIMatrixLayout()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIInformationFlow_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIMatrixView()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIInformationFlow_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIModule()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIInformationFlow_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createINode()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIInformationFlow_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIObjectModelDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIInformationFlow_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIOperation()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIInformationFlow_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIPackage()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIInformationFlow_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIPanelDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIInformationFlow_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIPort()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIInformationFlow_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIProfile()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIInformationFlow_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIProject()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIInformationFlow_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIRequirement()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIInformationFlow_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createISequenceDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIInformationFlow_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIStateChart()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIInformationFlow_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIStateChartDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIInformationFlow_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIStereotype()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIInformationFlow_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIStructureDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIInformationFlow_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createISysMLPort()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIInformationFlow_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createITableLayout()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIInformationFlow_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createITableView()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIInformationFlow_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createITag()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIInformationFlow_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createITemplateParameter()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIInformationFlow_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIType()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIInformationFlow_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIUseCase()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIInformationFlow_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIUseCaseDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIInformationFlow_Tags(),
+				 UMLRpyFactory.eINSTANCE.createITag()));
+	}
+
+	/**
+	 * This returns the label text for {@link org.eclipse.emf.edit.command.CreateChildCommand}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String getCreateChildText(Object owner, Object feature, Object child, Collection<?> selection) {
+		Object childFeature = feature;
+		Object childObject = child;
+
+		boolean qualify =
+			childFeature == UMLRpyPackage.eINSTANCE.getIInformationFlow_Conveyed() ||
+			childFeature == UMLRpyPackage.eINSTANCE.getIInformationFlow_Stereotypes() ||
+			childFeature == UMLRpyPackage.eINSTANCE.getIInformationFlow_Annotations() ||
+			childFeature == UMLRpyPackage.eINSTANCE.getIInformationFlow_Tags();
+
+		if (qualify) {
+			return getString
+				("_UI_CreateChild_text2", //$NON-NLS-1$
+				 new Object[] { getTypeText(childObject), getFeatureText(childFeature), getTypeText(owner) });
+		}
+		return super.getCreateChildText(owner, feature, child, selection);
+	}
+
+}
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/IInformationItemItemProvider.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/IInformationItemItemProvider.java
new file mode 100755
index 0000000..701ab7c
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/IInformationItemItemProvider.java
@@ -0,0 +1,365 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.provider;
+
+
+import java.util.Collection;
+import java.util.List;
+
+import org.eclipse.emf.common.notify.AdapterFactory;
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.ecore.EStructuralFeature;
+
+import org.eclipse.emf.edit.provider.ComposeableAdapterFactory;
+import org.eclipse.emf.edit.provider.IItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.ItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.ViewerNotification;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IInformationItem;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyFactory;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IInformationItem} object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class IInformationItemItemProvider extends DeclarativesTypeItemProvider {
+	/**
+	 * This constructs an instance from a factory and a notifier.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IInformationItemItemProvider(AdapterFactory adapterFactory) {
+		super(adapterFactory);
+	}
+
+	/**
+	 * This returns the property descriptors for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) {
+		if (itemPropertyDescriptors == null) {
+			super.getPropertyDescriptors(object);
+
+			addLastIDPropertyDescriptor(object);
+			addIdPropertyDescriptor(object);
+			addMyStatePropertyDescriptor(object);
+			addNamePropertyDescriptor(object);
+			addRequiremenTracabilityHandlePropertyDescriptor(object);
+			addModifiedTimeWeakPropertyDescriptor(object);
+			addObjectCreationPropertyDescriptor(object);
+			addUmlDependencyIDPropertyDescriptor(object);
+		}
+		return itemPropertyDescriptors;
+	}
+
+	/**
+	 * This adds a property descriptor for the Last ID feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addLastIDPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_ConveyedType_lastID_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_ConveyedType_lastID_feature", "_UI_ConveyedType_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getConveyedType_LastID(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Id feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addIdPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IInformationItem_id_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IInformationItem_id_feature", "_UI_IInformationItem_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIInformationItem_Id(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the My State feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addMyStatePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IInformationItem_myState_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IInformationItem_myState_feature", "_UI_IInformationItem_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIInformationItem_MyState(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Name feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addNamePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IInformationItem_name_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IInformationItem_name_feature", "_UI_IInformationItem_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIInformationItem_Name(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Requiremen Tracability Handle feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addRequiremenTracabilityHandlePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IInformationItem_requiremenTracabilityHandle_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IInformationItem_requiremenTracabilityHandle_feature", "_UI_IInformationItem_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIInformationItem_RequiremenTracabilityHandle(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Modified Time Weak feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addModifiedTimeWeakPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IInformationItem_modifiedTimeWeak_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IInformationItem_modifiedTimeWeak_feature", "_UI_IInformationItem_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIInformationItem_ModifiedTimeWeak(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Object Creation feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addObjectCreationPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IInformationItem_objectCreation_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IInformationItem_objectCreation_feature", "_UI_IInformationItem_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIInformationItem_ObjectCreation(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Uml Dependency ID feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addUmlDependencyIDPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IInformationItem_umlDependencyID_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IInformationItem_umlDependencyID_feature", "_UI_IInformationItem_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIInformationItem_UmlDependencyID(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This specifies how to implement {@link #getChildren} and is used to deduce an appropriate feature for an
+	 * {@link org.eclipse.emf.edit.command.AddCommand}, {@link org.eclipse.emf.edit.command.RemoveCommand} or
+	 * {@link org.eclipse.emf.edit.command.MoveCommand} in {@link #createCommand}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Collection<? extends EStructuralFeature> getChildrenFeatures(Object object) {
+		if (childrenFeatures == null) {
+			super.getChildrenFeatures(object);
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getIInformationItem_Description());
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getIInformationItem_Represented());
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getIInformationItem_Annotations());
+		}
+		return childrenFeatures;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EStructuralFeature getChildFeature(Object object, Object child) {
+		// Check the type of the specified child object and return the proper feature to use for
+		// adding (see {@link AddCommand}) it as a child.
+
+		return super.getChildFeature(object, child);
+	}
+
+	/**
+	 * This returns IInformationItem.gif.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object getImage(Object object) {
+		return overlayImage(object, getResourceLocator().getImage("full/obj16/IInformationItem")); //$NON-NLS-1$
+	}
+
+	/**
+	 * This returns the label text for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String getText(Object object) {
+		String label = ((IInformationItem)object).getName();
+		return label == null || label.length() == 0 ?
+			getString("_UI_IInformationItem_type") : //$NON-NLS-1$
+			getString("_UI_IInformationItem_type") + " " + label; //$NON-NLS-1$ //$NON-NLS-2$
+	}
+	
+
+	/**
+	 * This handles model notifications by calling {@link #updateChildren} to update any cached
+	 * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void notifyChanged(Notification notification) {
+		updateChildren(notification);
+
+		switch (notification.getFeatureID(IInformationItem.class)) {
+			case UMLRpyPackage.IINFORMATION_ITEM__LAST_ID:
+			case UMLRpyPackage.IINFORMATION_ITEM__ID:
+			case UMLRpyPackage.IINFORMATION_ITEM__MY_STATE:
+			case UMLRpyPackage.IINFORMATION_ITEM__NAME:
+			case UMLRpyPackage.IINFORMATION_ITEM__REQUIREMEN_TRACABILITY_HANDLE:
+			case UMLRpyPackage.IINFORMATION_ITEM__MODIFIED_TIME_WEAK:
+			case UMLRpyPackage.IINFORMATION_ITEM__OBJECT_CREATION:
+			case UMLRpyPackage.IINFORMATION_ITEM__UML_DEPENDENCY_ID:
+				fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), false, true));
+				return;
+			case UMLRpyPackage.IINFORMATION_ITEM__DESCRIPTION:
+			case UMLRpyPackage.IINFORMATION_ITEM__REPRESENTED:
+			case UMLRpyPackage.IINFORMATION_ITEM__ANNOTATIONS:
+				fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), true, false));
+				return;
+		}
+		super.notifyChanged(notification);
+	}
+
+	/**
+	 * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children
+	 * that can be created under this object.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) {
+		super.collectNewChildDescriptors(newChildDescriptors, object);
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIInformationItem_Description(),
+				 UMLRpyFactory.eINSTANCE.createIDescription()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIInformationItem_Represented(),
+				 UMLRpyFactory.eINSTANCE.createIEvent()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIInformationItem_Annotations(),
+				 UMLRpyFactory.eINSTANCE.createIRequirement()));
+	}
+
+}
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/IInstanceItemProvider.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/IInstanceItemProvider.java
new file mode 100755
index 0000000..a61b8fe
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/IInstanceItemProvider.java
@@ -0,0 +1,237 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.provider;
+
+
+import java.util.Collection;
+import java.util.List;
+
+import org.eclipse.emf.common.notify.AdapterFactory;
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.edit.provider.ComposeableAdapterFactory;
+import org.eclipse.emf.edit.provider.IItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.ItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.ViewerNotification;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IInstance;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IInstance} object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class IInstanceItemProvider extends IRelationItemProvider {
+	/**
+	 * This constructs an instance from a factory and a notifier.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IInstanceItemProvider(AdapterFactory adapterFactory) {
+		super(adapterFactory);
+	}
+
+	/**
+	 * This returns the property descriptors for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) {
+		if (itemPropertyDescriptors == null) {
+			super.getPropertyDescriptors(object);
+
+			addModifiedTimeWeakPropertyDescriptor(object);
+			addIdPropertyDescriptor(object);
+			addInversePropertyDescriptor(object);
+			addMyStatePropertyDescriptor(object);
+			addNamePropertyDescriptor(object);
+		}
+		return itemPropertyDescriptors;
+	}
+
+	/**
+	 * This adds a property descriptor for the Modified Time Weak feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addModifiedTimeWeakPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IInstance_modifiedTimeWeak_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IInstance_modifiedTimeWeak_feature", "_UI_IInstance_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIInstance_ModifiedTimeWeak(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Id feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addIdPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IInstance_id_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IInstance_id_feature", "_UI_IInstance_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIInstance_Id(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Inverse feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addInversePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IInstance_inverse_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IInstance_inverse_feature", "_UI_IInstance_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIInstance_Inverse(),
+				 true,
+				 false,
+				 true,
+				 null,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the My State feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addMyStatePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IInstance_myState_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IInstance_myState_feature", "_UI_IInstance_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIInstance_MyState(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Name feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addNamePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IInstance_name_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IInstance_name_feature", "_UI_IInstance_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIInstance_Name(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This returns IInstance.gif.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object getImage(Object object) {
+		return overlayImage(object, getResourceLocator().getImage("full/obj16/IInstance")); //$NON-NLS-1$
+	}
+
+	/**
+	 * This returns the label text for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String getText(Object object) {
+		String label = ((IInstance)object).getName();
+		return label == null || label.length() == 0 ?
+			getString("_UI_IInstance_type") : //$NON-NLS-1$
+			getString("_UI_IInstance_type") + " " + label; //$NON-NLS-1$ //$NON-NLS-2$
+	}
+	
+
+	/**
+	 * This handles model notifications by calling {@link #updateChildren} to update any cached
+	 * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void notifyChanged(Notification notification) {
+		updateChildren(notification);
+
+		switch (notification.getFeatureID(IInstance.class)) {
+			case UMLRpyPackage.IINSTANCE__MODIFIED_TIME_WEAK:
+			case UMLRpyPackage.IINSTANCE__ID:
+			case UMLRpyPackage.IINSTANCE__MY_STATE:
+			case UMLRpyPackage.IINSTANCE__NAME:
+				fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), false, true));
+				return;
+		}
+		super.notifyChanged(notification);
+	}
+
+	/**
+	 * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children
+	 * that can be created under this object.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) {
+		super.collectNewChildDescriptors(newChildDescriptors, object);
+	}
+
+}
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/IInstanceSlotItemProvider.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/IInstanceSlotItemProvider.java
new file mode 100755
index 0000000..cea36cb
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/IInstanceSlotItemProvider.java
@@ -0,0 +1,109 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.provider;
+
+
+import java.util.Collection;
+import java.util.List;
+
+import org.eclipse.emf.common.notify.AdapterFactory;
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.edit.provider.IItemPropertyDescriptor;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IInstanceSlot;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IInstanceSlot} object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class IInstanceSlotItemProvider extends IModelElementItemProvider {
+	/**
+	 * This constructs an instance from a factory and a notifier.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IInstanceSlotItemProvider(AdapterFactory adapterFactory) {
+		super(adapterFactory);
+	}
+
+	/**
+	 * This returns the property descriptors for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) {
+		if (itemPropertyDescriptors == null) {
+			super.getPropertyDescriptors(object);
+
+		}
+		return itemPropertyDescriptors;
+	}
+
+	/**
+	 * This returns IInstanceSlot.gif.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object getImage(Object object) {
+		return overlayImage(object, getResourceLocator().getImage("full/obj16/IInstanceSlot")); //$NON-NLS-1$
+	}
+
+	/**
+	 * This returns the label text for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String getText(Object object) {
+		String label = ((IInstanceSlot)object).getDisplayName();
+		return label == null || label.length() == 0 ?
+			getString("_UI_IInstanceSlot_type") : //$NON-NLS-1$
+			getString("_UI_IInstanceSlot_type") + " " + label; //$NON-NLS-1$ //$NON-NLS-2$
+	}
+	
+
+	/**
+	 * This handles model notifications by calling {@link #updateChildren} to update any cached
+	 * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void notifyChanged(Notification notification) {
+		updateChildren(notification);
+		super.notifyChanged(notification);
+	}
+
+	/**
+	 * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children
+	 * that can be created under this object.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) {
+		super.collectNewChildDescriptors(newChildDescriptors, object);
+	}
+
+}
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/IInstanceSpecificationItemProvider.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/IInstanceSpecificationItemProvider.java
new file mode 100755
index 0000000..fc79a45
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/IInstanceSpecificationItemProvider.java
@@ -0,0 +1,109 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.provider;
+
+
+import java.util.Collection;
+import java.util.List;
+
+import org.eclipse.emf.common.notify.AdapterFactory;
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.edit.provider.IItemPropertyDescriptor;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IInstanceSpecification;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IInstanceSpecification} object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class IInstanceSpecificationItemProvider extends IModelElementItemProvider {
+	/**
+	 * This constructs an instance from a factory and a notifier.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IInstanceSpecificationItemProvider(AdapterFactory adapterFactory) {
+		super(adapterFactory);
+	}
+
+	/**
+	 * This returns the property descriptors for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) {
+		if (itemPropertyDescriptors == null) {
+			super.getPropertyDescriptors(object);
+
+		}
+		return itemPropertyDescriptors;
+	}
+
+	/**
+	 * This returns IInstanceSpecification.gif.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object getImage(Object object) {
+		return overlayImage(object, getResourceLocator().getImage("full/obj16/IInstanceSpecification")); //$NON-NLS-1$
+	}
+
+	/**
+	 * This returns the label text for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String getText(Object object) {
+		String label = ((IInstanceSpecification)object).getDisplayName();
+		return label == null || label.length() == 0 ?
+			getString("_UI_IInstanceSpecification_type") : //$NON-NLS-1$
+			getString("_UI_IInstanceSpecification_type") + " " + label; //$NON-NLS-1$ //$NON-NLS-2$
+	}
+	
+
+	/**
+	 * This handles model notifications by calling {@link #updateChildren} to update any cached
+	 * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void notifyChanged(Notification notification) {
+		updateChildren(notification);
+		super.notifyChanged(notification);
+	}
+
+	/**
+	 * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children
+	 * that can be created under this object.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) {
+		super.collectNewChildDescriptors(newChildDescriptors, object);
+	}
+
+}
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/IInstanceValueItemProvider.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/IInstanceValueItemProvider.java
new file mode 100755
index 0000000..d40255c
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/IInstanceValueItemProvider.java
@@ -0,0 +1,189 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.provider;
+
+
+import java.util.Collection;
+import java.util.List;
+
+import org.eclipse.emf.common.notify.AdapterFactory;
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.edit.provider.ComposeableAdapterFactory;
+import org.eclipse.emf.edit.provider.IItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.ItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.ViewerNotification;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IInstanceValue;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IInstanceValue} object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class IInstanceValueItemProvider extends IValueSpecificationItemProvider {
+	/**
+	 * This constructs an instance from a factory and a notifier.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IInstanceValueItemProvider(AdapterFactory adapterFactory) {
+		super(adapterFactory);
+	}
+
+	/**
+	 * This returns the property descriptors for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) {
+		if (itemPropertyDescriptors == null) {
+			super.getPropertyDescriptors(object);
+
+			addIdPropertyDescriptor(object);
+			addModifiedTimeWeakPropertyDescriptor(object);
+			addValuePropertyDescriptor(object);
+		}
+		return itemPropertyDescriptors;
+	}
+
+	/**
+	 * This adds a property descriptor for the Id feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addIdPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IInstanceValue_id_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IInstanceValue_id_feature", "_UI_IInstanceValue_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIInstanceValue_Id(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Modified Time Weak feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addModifiedTimeWeakPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IInstanceValue_modifiedTimeWeak_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IInstanceValue_modifiedTimeWeak_feature", "_UI_IInstanceValue_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIInstanceValue_ModifiedTimeWeak(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Value feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addValuePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IInstanceValue_value_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IInstanceValue_value_feature", "_UI_IInstanceValue_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIInstanceValue_Value(),
+				 true,
+				 false,
+				 true,
+				 null,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This returns IInstanceValue.gif.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object getImage(Object object) {
+		return overlayImage(object, getResourceLocator().getImage("full/obj16/IInstanceValue")); //$NON-NLS-1$
+	}
+
+	/**
+	 * This returns the label text for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String getText(Object object) {
+		String label = ((IInstanceValue)object).getDisplayName();
+		return label == null || label.length() == 0 ?
+			getString("_UI_IInstanceValue_type") : //$NON-NLS-1$
+			getString("_UI_IInstanceValue_type") + " " + label; //$NON-NLS-1$ //$NON-NLS-2$
+	}
+	
+
+	/**
+	 * This handles model notifications by calling {@link #updateChildren} to update any cached
+	 * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void notifyChanged(Notification notification) {
+		updateChildren(notification);
+
+		switch (notification.getFeatureID(IInstanceValue.class)) {
+			case UMLRpyPackage.IINSTANCE_VALUE__ID:
+			case UMLRpyPackage.IINSTANCE_VALUE__MODIFIED_TIME_WEAK:
+				fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), false, true));
+				return;
+		}
+		super.notifyChanged(notification);
+	}
+
+	/**
+	 * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children
+	 * that can be created under this object.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) {
+		super.collectNewChildDescriptors(newChildDescriptors, object);
+	}
+
+}
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/IInteractionOccurrenceItemProvider.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/IInteractionOccurrenceItemProvider.java
new file mode 100755
index 0000000..61fe88b
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/IInteractionOccurrenceItemProvider.java
@@ -0,0 +1,309 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.provider;
+
+
+import java.util.Collection;
+import java.util.List;
+
+import org.eclipse.emf.common.notify.AdapterFactory;
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.ecore.EStructuralFeature;
+
+import org.eclipse.emf.edit.provider.ComposeableAdapterFactory;
+import org.eclipse.emf.edit.provider.IItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.ItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.ViewerNotification;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IInteractionOccurrence;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyFactory;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IInteractionOccurrence} object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class IInteractionOccurrenceItemProvider extends IModelElementItemProvider {
+	/**
+	 * This constructs an instance from a factory and a notifier.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IInteractionOccurrenceItemProvider(AdapterFactory adapterFactory) {
+		super(adapterFactory);
+	}
+
+	/**
+	 * This returns the property descriptors for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) {
+		if (itemPropertyDescriptors == null) {
+			super.getPropertyDescriptors(object);
+
+			addIdPropertyDescriptor(object);
+			addNamePropertyDescriptor(object);
+			addModifiedTimeWeakPropertyDescriptor(object);
+			addM_pRefSDPropertyDescriptor(object);
+			addObjectCreationPropertyDescriptor(object);
+			addUmlDependencyIDPropertyDescriptor(object);
+		}
+		return itemPropertyDescriptors;
+	}
+
+	/**
+	 * This adds a property descriptor for the Id feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addIdPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IInteractionOccurrence_id_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IInteractionOccurrence_id_feature", "_UI_IInteractionOccurrence_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIInteractionOccurrence_Id(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Name feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addNamePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IInteractionOccurrence_name_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IInteractionOccurrence_name_feature", "_UI_IInteractionOccurrence_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIInteractionOccurrence_Name(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Modified Time Weak feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addModifiedTimeWeakPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IInteractionOccurrence_modifiedTimeWeak_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IInteractionOccurrence_modifiedTimeWeak_feature", "_UI_IInteractionOccurrence_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIInteractionOccurrence_ModifiedTimeWeak(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the MpRef SD feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_pRefSDPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IInteractionOccurrence_m_pRefSD_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IInteractionOccurrence_m_pRefSD_feature", "_UI_IInteractionOccurrence_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIInteractionOccurrence_M_pRefSD(),
+				 true,
+				 false,
+				 true,
+				 null,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Object Creation feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addObjectCreationPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IInteractionOccurrence_objectCreation_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IInteractionOccurrence_objectCreation_feature", "_UI_IInteractionOccurrence_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIInteractionOccurrence_ObjectCreation(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Uml Dependency ID feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addUmlDependencyIDPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IInteractionOccurrence_umlDependencyID_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IInteractionOccurrence_umlDependencyID_feature", "_UI_IInteractionOccurrence_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIInteractionOccurrence_UmlDependencyID(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This specifies how to implement {@link #getChildren} and is used to deduce an appropriate feature for an
+	 * {@link org.eclipse.emf.edit.command.AddCommand}, {@link org.eclipse.emf.edit.command.RemoveCommand} or
+	 * {@link org.eclipse.emf.edit.command.MoveCommand} in {@link #createCommand}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Collection<? extends EStructuralFeature> getChildrenFeatures(Object object) {
+		if (childrenFeatures == null) {
+			super.getChildrenFeatures(object);
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getIInteractionOccurrence_Stereotypes());
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getIInteractionOccurrence_Tags());
+		}
+		return childrenFeatures;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EStructuralFeature getChildFeature(Object object, Object child) {
+		// Check the type of the specified child object and return the proper feature to use for
+		// adding (see {@link AddCommand}) it as a child.
+
+		return super.getChildFeature(object, child);
+	}
+
+	/**
+	 * This returns IInteractionOccurrence.gif.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object getImage(Object object) {
+		return overlayImage(object, getResourceLocator().getImage("full/obj16/IInteractionOccurrence")); //$NON-NLS-1$
+	}
+
+	/**
+	 * This returns the label text for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String getText(Object object) {
+		String label = ((IInteractionOccurrence)object).getName();
+		return label == null || label.length() == 0 ?
+			getString("_UI_IInteractionOccurrence_type") : //$NON-NLS-1$
+			getString("_UI_IInteractionOccurrence_type") + " " + label; //$NON-NLS-1$ //$NON-NLS-2$
+	}
+	
+
+	/**
+	 * This handles model notifications by calling {@link #updateChildren} to update any cached
+	 * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void notifyChanged(Notification notification) {
+		updateChildren(notification);
+
+		switch (notification.getFeatureID(IInteractionOccurrence.class)) {
+			case UMLRpyPackage.IINTERACTION_OCCURRENCE__ID:
+			case UMLRpyPackage.IINTERACTION_OCCURRENCE__NAME:
+			case UMLRpyPackage.IINTERACTION_OCCURRENCE__MODIFIED_TIME_WEAK:
+			case UMLRpyPackage.IINTERACTION_OCCURRENCE__OBJECT_CREATION:
+			case UMLRpyPackage.IINTERACTION_OCCURRENCE__UML_DEPENDENCY_ID:
+				fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), false, true));
+				return;
+			case UMLRpyPackage.IINTERACTION_OCCURRENCE__STEREOTYPES:
+			case UMLRpyPackage.IINTERACTION_OCCURRENCE__TAGS:
+				fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), true, false));
+				return;
+		}
+		super.notifyChanged(notification);
+	}
+
+	/**
+	 * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children
+	 * that can be created under this object.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) {
+		super.collectNewChildDescriptors(newChildDescriptors, object);
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIInteractionOccurrence_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIStereotype()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIInteractionOccurrence_Tags(),
+				 UMLRpyFactory.eINSTANCE.createITag()));
+	}
+
+}
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/IInteractionOperandItemProvider.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/IInteractionOperandItemProvider.java
new file mode 100755
index 0000000..18483cc
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/IInteractionOperandItemProvider.java
@@ -0,0 +1,190 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.provider;
+
+
+import java.util.Collection;
+import java.util.List;
+
+import org.eclipse.emf.common.notify.AdapterFactory;
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.edit.provider.ComposeableAdapterFactory;
+import org.eclipse.emf.edit.provider.IItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.ItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.ViewerNotification;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IInteractionOperand;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IInteractionOperand} object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class IInteractionOperandItemProvider extends ICollaborationItemProvider {
+	/**
+	 * This constructs an instance from a factory and a notifier.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IInteractionOperandItemProvider(AdapterFactory adapterFactory) {
+		super(adapterFactory);
+	}
+
+	/**
+	 * This returns the property descriptors for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) {
+		if (itemPropertyDescriptors == null) {
+			super.getPropertyDescriptors(object);
+
+			addMyStatePropertyDescriptor(object);
+			addNamePropertyDescriptor(object);
+			addInteractionConstraintPropertyDescriptor(object);
+		}
+		return itemPropertyDescriptors;
+	}
+
+	/**
+	 * This adds a property descriptor for the My State feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addMyStatePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IInteractionOperand_myState_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IInteractionOperand_myState_feature", "_UI_IInteractionOperand_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIInteractionOperand_MyState(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Name feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addNamePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IInteractionOperand_name_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IInteractionOperand_name_feature", "_UI_IInteractionOperand_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIInteractionOperand_Name(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Interaction Constraint feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addInteractionConstraintPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IInteractionOperand_interactionConstraint_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IInteractionOperand_interactionConstraint_feature", "_UI_IInteractionOperand_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIInteractionOperand_InteractionConstraint(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This returns IInteractionOperand.gif.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object getImage(Object object) {
+		return overlayImage(object, getResourceLocator().getImage("full/obj16/IInteractionOperand")); //$NON-NLS-1$
+	}
+
+	/**
+	 * This returns the label text for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String getText(Object object) {
+		String label = ((IInteractionOperand)object).getName();
+		return label == null || label.length() == 0 ?
+			getString("_UI_IInteractionOperand_type") : //$NON-NLS-1$
+			getString("_UI_IInteractionOperand_type") + " " + label; //$NON-NLS-1$ //$NON-NLS-2$
+	}
+	
+
+	/**
+	 * This handles model notifications by calling {@link #updateChildren} to update any cached
+	 * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void notifyChanged(Notification notification) {
+		updateChildren(notification);
+
+		switch (notification.getFeatureID(IInteractionOperand.class)) {
+			case UMLRpyPackage.IINTERACTION_OPERAND__MY_STATE:
+			case UMLRpyPackage.IINTERACTION_OPERAND__NAME:
+			case UMLRpyPackage.IINTERACTION_OPERAND__INTERACTION_CONSTRAINT:
+				fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), false, true));
+				return;
+		}
+		super.notifyChanged(notification);
+	}
+
+	/**
+	 * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children
+	 * that can be created under this object.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) {
+		super.collectNewChildDescriptors(newChildDescriptors, object);
+	}
+
+}
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/IInteractionOperatorItemProvider.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/IInteractionOperatorItemProvider.java
new file mode 100755
index 0000000..7d11890
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/IInteractionOperatorItemProvider.java
@@ -0,0 +1,109 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.provider;
+
+
+import java.util.Collection;
+import java.util.List;
+
+import org.eclipse.emf.common.notify.AdapterFactory;
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.edit.provider.IItemPropertyDescriptor;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IInteractionOperator;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IInteractionOperator} object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class IInteractionOperatorItemProvider extends IModelElementItemProvider {
+	/**
+	 * This constructs an instance from a factory and a notifier.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IInteractionOperatorItemProvider(AdapterFactory adapterFactory) {
+		super(adapterFactory);
+	}
+
+	/**
+	 * This returns the property descriptors for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) {
+		if (itemPropertyDescriptors == null) {
+			super.getPropertyDescriptors(object);
+
+		}
+		return itemPropertyDescriptors;
+	}
+
+	/**
+	 * This returns IInteractionOperator.gif.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object getImage(Object object) {
+		return overlayImage(object, getResourceLocator().getImage("full/obj16/IInteractionOperator")); //$NON-NLS-1$
+	}
+
+	/**
+	 * This returns the label text for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String getText(Object object) {
+		String label = ((IInteractionOperator)object).getDisplayName();
+		return label == null || label.length() == 0 ?
+			getString("_UI_IInteractionOperator_type") : //$NON-NLS-1$
+			getString("_UI_IInteractionOperator_type") + " " + label; //$NON-NLS-1$ //$NON-NLS-2$
+	}
+	
+
+	/**
+	 * This handles model notifications by calling {@link #updateChildren} to update any cached
+	 * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void notifyChanged(Notification notification) {
+		updateChildren(notification);
+		super.notifyChanged(notification);
+	}
+
+	/**
+	 * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children
+	 * that can be created under this object.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) {
+		super.collectNewChildDescriptors(newChildDescriptors, object);
+	}
+
+}
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/IInterfaceItemItemProvider.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/IInterfaceItemItemProvider.java
new file mode 100755
index 0000000..4b5c094
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/IInterfaceItemItemProvider.java
@@ -0,0 +1,109 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.provider;
+
+
+import java.util.Collection;
+import java.util.List;
+
+import org.eclipse.emf.common.notify.AdapterFactory;
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.edit.provider.IItemPropertyDescriptor;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IInterfaceItem;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IInterfaceItem} object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class IInterfaceItemItemProvider extends IClassifierItemProvider {
+	/**
+	 * This constructs an instance from a factory and a notifier.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IInterfaceItemItemProvider(AdapterFactory adapterFactory) {
+		super(adapterFactory);
+	}
+
+	/**
+	 * This returns the property descriptors for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) {
+		if (itemPropertyDescriptors == null) {
+			super.getPropertyDescriptors(object);
+
+		}
+		return itemPropertyDescriptors;
+	}
+
+	/**
+	 * This returns IInterfaceItem.gif.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object getImage(Object object) {
+		return overlayImage(object, getResourceLocator().getImage("full/obj16/IInterfaceItem")); //$NON-NLS-1$
+	}
+
+	/**
+	 * This returns the label text for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String getText(Object object) {
+		String label = ((IInterfaceItem)object).getDisplayName();
+		return label == null || label.length() == 0 ?
+			getString("_UI_IInterfaceItem_type") : //$NON-NLS-1$
+			getString("_UI_IInterfaceItem_type") + " " + label; //$NON-NLS-1$ //$NON-NLS-2$
+	}
+	
+
+	/**
+	 * This handles model notifications by calling {@link #updateChildren} to update any cached
+	 * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void notifyChanged(Notification notification) {
+		updateChildren(notification);
+		super.notifyChanged(notification);
+	}
+
+	/**
+	 * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children
+	 * that can be created under this object.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) {
+		super.collectNewChildDescriptors(newChildDescriptors, object);
+	}
+
+}
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/IInterfaceItemTriggerItemProvider.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/IInterfaceItemTriggerItemProvider.java
new file mode 100755
index 0000000..5e97569
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/IInterfaceItemTriggerItemProvider.java
@@ -0,0 +1,157 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.provider;
+
+
+import java.util.Collection;
+import java.util.List;
+
+import org.eclipse.emf.common.notify.AdapterFactory;
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.edit.provider.ComposeableAdapterFactory;
+import org.eclipse.emf.edit.provider.IItemPropertyDescriptor;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IInterfaceItemTrigger;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IInterfaceItemTrigger} object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class IInterfaceItemTriggerItemProvider extends ItsTriggerTypeItemProvider {
+	/**
+	 * This constructs an instance from a factory and a notifier.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IInterfaceItemTriggerItemProvider(AdapterFactory adapterFactory) {
+		super(adapterFactory);
+	}
+
+	/**
+	 * This returns the property descriptors for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) {
+		if (itemPropertyDescriptors == null) {
+			super.getPropertyDescriptors(object);
+
+			addItsInterfaceItemPropertyDescriptor(object);
+			addInheritsFromHandlePropertyDescriptor(object);
+		}
+		return itemPropertyDescriptors;
+	}
+
+	/**
+	 * This adds a property descriptor for the Its Interface Item feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addItsInterfaceItemPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IInterfaceItemTrigger_itsInterfaceItem_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IInterfaceItemTrigger_itsInterfaceItem_feature", "_UI_IInterfaceItemTrigger_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIInterfaceItemTrigger_ItsInterfaceItem(),
+				 true,
+				 false,
+				 true,
+				 null,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Inherits From Handle feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addInheritsFromHandlePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IInterfaceItemTrigger_inheritsFromHandle_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IInterfaceItemTrigger_inheritsFromHandle_feature", "_UI_IInterfaceItemTrigger_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIInterfaceItemTrigger_InheritsFromHandle(),
+				 true,
+				 false,
+				 true,
+				 null,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This returns IInterfaceItemTrigger.gif.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object getImage(Object object) {
+		return overlayImage(object, getResourceLocator().getImage("full/obj16/IInterfaceItemTrigger")); //$NON-NLS-1$
+	}
+
+	/**
+	 * This returns the label text for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String getText(Object object) {
+		String label = ((IInterfaceItemTrigger)object).getId();
+		return label == null || label.length() == 0 ?
+			getString("_UI_IInterfaceItemTrigger_type") : //$NON-NLS-1$
+			getString("_UI_IInterfaceItemTrigger_type") + " " + label; //$NON-NLS-1$ //$NON-NLS-2$
+	}
+	
+
+	/**
+	 * This handles model notifications by calling {@link #updateChildren} to update any cached
+	 * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void notifyChanged(Notification notification) {
+		updateChildren(notification);
+		super.notifyChanged(notification);
+	}
+
+	/**
+	 * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children
+	 * that can be created under this object.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) {
+		super.collectNewChildDescriptors(newChildDescriptors, object);
+	}
+
+}
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/IInternalHyperlinkItemProvider.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/IInternalHyperlinkItemProvider.java
new file mode 100755
index 0000000..ea4782c
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/IInternalHyperlinkItemProvider.java
@@ -0,0 +1,134 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.provider;
+
+
+import java.util.Collection;
+import java.util.List;
+
+import org.eclipse.emf.common.notify.AdapterFactory;
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.edit.provider.ComposeableAdapterFactory;
+import org.eclipse.emf.edit.provider.IItemPropertyDescriptor;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IInternalHyperlink;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IInternalHyperlink} object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class IInternalHyperlinkItemProvider extends HyperLinksTypeItemProvider {
+	/**
+	 * This constructs an instance from a factory and a notifier.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IInternalHyperlinkItemProvider(AdapterFactory adapterFactory) {
+		super(adapterFactory);
+	}
+
+	/**
+	 * This returns the property descriptors for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) {
+		if (itemPropertyDescriptors == null) {
+			super.getPropertyDescriptors(object);
+
+			addTargetPropertyDescriptor(object);
+		}
+		return itemPropertyDescriptors;
+	}
+
+	/**
+	 * This adds a property descriptor for the Target feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addTargetPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IInternalHyperlink_target_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IInternalHyperlink_target_feature", "_UI_IInternalHyperlink_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIInternalHyperlink_Target(),
+				 true,
+				 false,
+				 true,
+				 null,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This returns IInternalHyperlink.gif.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object getImage(Object object) {
+		return overlayImage(object, getResourceLocator().getImage("full/obj16/IInternalHyperlink")); //$NON-NLS-1$
+	}
+
+	/**
+	 * This returns the label text for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String getText(Object object) {
+		String label = ((IInternalHyperlink)object).getDisplayName();
+		return label == null || label.length() == 0 ?
+			getString("_UI_IInternalHyperlink_type") : //$NON-NLS-1$
+			getString("_UI_IInternalHyperlink_type") + " " + label; //$NON-NLS-1$ //$NON-NLS-2$
+	}
+	
+
+	/**
+	 * This handles model notifications by calling {@link #updateChildren} to update any cached
+	 * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void notifyChanged(Notification notification) {
+		updateChildren(notification);
+		super.notifyChanged(notification);
+	}
+
+	/**
+	 * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children
+	 * that can be created under this object.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) {
+		super.collectNewChildDescriptors(newChildDescriptors, object);
+	}
+
+}
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/ILabelItemProvider.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/ILabelItemProvider.java
new file mode 100755
index 0000000..3ae3ef1
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/ILabelItemProvider.java
@@ -0,0 +1,357 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.provider;
+
+
+import java.util.Collection;
+import java.util.List;
+
+import org.eclipse.emf.common.notify.AdapterFactory;
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.edit.provider.ComposeableAdapterFactory;
+import org.eclipse.emf.edit.provider.IItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.ItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.ViewerNotification;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ILabel;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ILabel} object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class ILabelItemProvider extends ItsLabelTypeItemProvider {
+	/**
+	 * This constructs an instance from a factory and a notifier.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public ILabelItemProvider(AdapterFactory adapterFactory) {
+		super(adapterFactory);
+	}
+
+	/**
+	 * This returns the property descriptors for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) {
+		if (itemPropertyDescriptors == null) {
+			super.getPropertyDescriptors(object);
+
+			addIdPropertyDescriptor(object);
+			addItsTriggerPropertyDescriptor(object);
+			addItsActionPropertyDescriptor(object);
+			addItsGuardPropertyDescriptor(object);
+			addModifiedTimeWeakPropertyDescriptor(object);
+			addMyStatePropertyDescriptor(object);
+			addInheritsFromHandlePropertyDescriptor(object);
+			addCodeUpdateCGTimePropertyDescriptor(object);
+			addObjectCreationPropertyDescriptor(object);
+			addUmlDependencyIDPropertyDescriptor(object);
+		}
+		return itemPropertyDescriptors;
+	}
+
+	/**
+	 * This adds a property descriptor for the Id feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addIdPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_ILabel_id_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_ILabel_id_feature", "_UI_ILabel_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getILabel_Id(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Its Trigger feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addItsTriggerPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_ILabel_itsTrigger_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_ILabel_itsTrigger_feature", "_UI_ILabel_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getILabel_ItsTrigger(),
+				 true,
+				 false,
+				 false,
+				 null,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Its Action feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addItsActionPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_ILabel_itsAction_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_ILabel_itsAction_feature", "_UI_ILabel_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getILabel_ItsAction(),
+				 true,
+				 false,
+				 false,
+				 null,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Its Guard feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addItsGuardPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_ILabel_itsGuard_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_ILabel_itsGuard_feature", "_UI_ILabel_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getILabel_ItsGuard(),
+				 true,
+				 false,
+				 false,
+				 null,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Modified Time Weak feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addModifiedTimeWeakPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_ILabel_modifiedTimeWeak_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_ILabel_modifiedTimeWeak_feature", "_UI_ILabel_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getILabel_ModifiedTimeWeak(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the My State feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addMyStatePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_ILabel_myState_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_ILabel_myState_feature", "_UI_ILabel_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getILabel_MyState(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Inherits From Handle feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addInheritsFromHandlePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_ILabel_inheritsFromHandle_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_ILabel_inheritsFromHandle_feature", "_UI_ILabel_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getILabel_InheritsFromHandle(),
+				 true,
+				 false,
+				 true,
+				 null,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Code Update CG Time feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addCodeUpdateCGTimePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_ILabel_codeUpdateCGTime_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_ILabel_codeUpdateCGTime_feature", "_UI_ILabel_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getILabel_CodeUpdateCGTime(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Object Creation feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addObjectCreationPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_ILabel_objectCreation_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_ILabel_objectCreation_feature", "_UI_ILabel_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getILabel_ObjectCreation(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Uml Dependency ID feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addUmlDependencyIDPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_ILabel_umlDependencyID_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_ILabel_umlDependencyID_feature", "_UI_ILabel_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getILabel_UmlDependencyID(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This returns ILabel.gif.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object getImage(Object object) {
+		return overlayImage(object, getResourceLocator().getImage("full/obj16/ILabel")); //$NON-NLS-1$
+	}
+
+	/**
+	 * This returns the label text for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String getText(Object object) {
+		String label = ((ILabel)object).getId();
+		return label == null || label.length() == 0 ?
+			getString("_UI_ILabel_type") : //$NON-NLS-1$
+			getString("_UI_ILabel_type") + " " + label; //$NON-NLS-1$ //$NON-NLS-2$
+	}
+	
+
+	/**
+	 * This handles model notifications by calling {@link #updateChildren} to update any cached
+	 * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void notifyChanged(Notification notification) {
+		updateChildren(notification);
+
+		switch (notification.getFeatureID(ILabel.class)) {
+			case UMLRpyPackage.ILABEL__ID:
+			case UMLRpyPackage.ILABEL__ITS_TRIGGER:
+			case UMLRpyPackage.ILABEL__ITS_ACTION:
+			case UMLRpyPackage.ILABEL__ITS_GUARD:
+			case UMLRpyPackage.ILABEL__MODIFIED_TIME_WEAK:
+			case UMLRpyPackage.ILABEL__MY_STATE:
+			case UMLRpyPackage.ILABEL__CODE_UPDATE_CG_TIME:
+			case UMLRpyPackage.ILABEL__OBJECT_CREATION:
+			case UMLRpyPackage.ILABEL__UML_DEPENDENCY_ID:
+				fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), false, true));
+				return;
+		}
+		super.notifyChanged(notification);
+	}
+
+	/**
+	 * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children
+	 * that can be created under this object.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) {
+		super.collectNewChildDescriptors(newChildDescriptors, object);
+	}
+
+}
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/ILinkInstanceItemProvider.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/ILinkInstanceItemProvider.java
new file mode 100755
index 0000000..370543a
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/ILinkInstanceItemProvider.java
@@ -0,0 +1,253 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.provider;
+
+
+import java.util.Collection;
+import java.util.List;
+
+import org.eclipse.emf.common.notify.AdapterFactory;
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.ecore.EStructuralFeature;
+
+import org.eclipse.emf.edit.provider.ComposeableAdapterFactory;
+import org.eclipse.emf.edit.provider.IItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.ItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.ViewerNotification;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ILinkInstance;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyFactory;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ILinkInstance} object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class ILinkInstanceItemProvider extends ComponentsTypeItemProvider {
+	/**
+	 * This constructs an instance from a factory and a notifier.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public ILinkInstanceItemProvider(AdapterFactory adapterFactory) {
+		super(adapterFactory);
+	}
+
+	/**
+	 * This returns the property descriptors for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) {
+		if (itemPropertyDescriptors == null) {
+			super.getPropertyDescriptors(object);
+
+			addIdPropertyDescriptor(object);
+			addNamePropertyDescriptor(object);
+			addToLinkPropertyDescriptor(object);
+			addFromLinkPropertyDescriptor(object);
+		}
+		return itemPropertyDescriptors;
+	}
+
+	/**
+	 * This adds a property descriptor for the Id feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addIdPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_ILinkInstance_id_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_ILinkInstance_id_feature", "_UI_ILinkInstance_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getILinkInstance_Id(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Name feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addNamePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_ILinkInstance_name_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_ILinkInstance_name_feature", "_UI_ILinkInstance_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getILinkInstance_Name(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the To Link feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addToLinkPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_ILinkInstance_toLink_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_ILinkInstance_toLink_feature", "_UI_ILinkInstance_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getILinkInstance_ToLink(),
+				 true,
+				 false,
+				 true,
+				 null,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the From Link feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addFromLinkPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_ILinkInstance_fromLink_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_ILinkInstance_fromLink_feature", "_UI_ILinkInstance_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getILinkInstance_FromLink(),
+				 true,
+				 false,
+				 true,
+				 null,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This specifies how to implement {@link #getChildren} and is used to deduce an appropriate feature for an
+	 * {@link org.eclipse.emf.edit.command.AddCommand}, {@link org.eclipse.emf.edit.command.RemoveCommand} or
+	 * {@link org.eclipse.emf.edit.command.MoveCommand} in {@link #createCommand}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Collection<? extends EStructuralFeature> getChildrenFeatures(Object object) {
+		if (childrenFeatures == null) {
+			super.getChildrenFeatures(object);
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getILinkInstance_Instantiates());
+		}
+		return childrenFeatures;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EStructuralFeature getChildFeature(Object object, Object child) {
+		// Check the type of the specified child object and return the proper feature to use for
+		// adding (see {@link AddCommand}) it as a child.
+
+		return super.getChildFeature(object, child);
+	}
+
+	/**
+	 * This returns ILinkInstance.gif.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object getImage(Object object) {
+		return overlayImage(object, getResourceLocator().getImage("full/obj16/ILinkInstance")); //$NON-NLS-1$
+	}
+
+	/**
+	 * This returns the label text for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String getText(Object object) {
+		String label = ((ILinkInstance)object).getName();
+		return label == null || label.length() == 0 ?
+			getString("_UI_ILinkInstance_type") : //$NON-NLS-1$
+			getString("_UI_ILinkInstance_type") + " " + label; //$NON-NLS-1$ //$NON-NLS-2$
+	}
+	
+
+	/**
+	 * This handles model notifications by calling {@link #updateChildren} to update any cached
+	 * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void notifyChanged(Notification notification) {
+		updateChildren(notification);
+
+		switch (notification.getFeatureID(ILinkInstance.class)) {
+			case UMLRpyPackage.ILINK_INSTANCE__ID:
+			case UMLRpyPackage.ILINK_INSTANCE__NAME:
+				fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), false, true));
+				return;
+			case UMLRpyPackage.ILINK_INSTANCE__INSTANTIATES:
+				fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), true, false));
+				return;
+		}
+		super.notifyChanged(notification);
+	}
+
+	/**
+	 * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children
+	 * that can be created under this object.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) {
+		super.collectNewChildDescriptors(newChildDescriptors, object);
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getILinkInstance_Instantiates(),
+				 UMLRpyFactory.eINSTANCE.createIMetaLinkHandle()));
+	}
+
+}
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/ILinkItemProvider.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/ILinkItemProvider.java
new file mode 100755
index 0000000..5dd3cf7
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/ILinkItemProvider.java
@@ -0,0 +1,326 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.provider;
+
+
+import java.util.Collection;
+import java.util.List;
+
+import org.eclipse.emf.common.notify.AdapterFactory;
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.ecore.EStructuralFeature;
+
+import org.eclipse.emf.edit.provider.ComposeableAdapterFactory;
+import org.eclipse.emf.edit.provider.IItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.ItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.ViewerNotification;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ILink;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyFactory;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ILink} object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class ILinkItemProvider extends IUnitItemProvider {
+	/**
+	 * This constructs an instance from a factory and a notifier.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public ILinkItemProvider(AdapterFactory adapterFactory) {
+		super(adapterFactory);
+	}
+
+	/**
+	 * This returns the property descriptors for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) {
+		if (itemPropertyDescriptors == null) {
+			super.getPropertyDescriptors(object);
+
+			addIdPropertyDescriptor(object);
+			addMultiplicityPropertyDescriptor(object);
+			addNamePropertyDescriptor(object);
+			addInversePropertyDescriptor(object);
+			addLinkNamePropertyDescriptor(object);
+			addLinkTypePropertyDescriptor(object);
+			addMyStatePropertyDescriptor(object);
+		}
+		return itemPropertyDescriptors;
+	}
+
+	/**
+	 * This adds a property descriptor for the Id feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addIdPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_LinksType_id_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_LinksType_id_feature", "_UI_LinksType_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getLinksType_Id(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Multiplicity feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addMultiplicityPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_LinksType_multiplicity_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_LinksType_multiplicity_feature", "_UI_LinksType_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getLinksType_Multiplicity(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Name feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addNamePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_LinksType_name_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_LinksType_name_feature", "_UI_LinksType_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getLinksType_Name(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Inverse feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addInversePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_ILink_inverse_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_ILink_inverse_feature", "_UI_ILink_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getILink_Inverse(),
+				 true,
+				 false,
+				 true,
+				 null,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Link Name feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addLinkNamePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_ILink_linkName_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_ILink_linkName_feature", "_UI_ILink_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getILink_LinkName(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Link Type feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addLinkTypePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_ILink_linkType_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_ILink_linkType_feature", "_UI_ILink_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getILink_LinkType(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the My State feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addMyStatePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_ILink_myState_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_ILink_myState_feature", "_UI_ILink_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getILink_MyState(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This specifies how to implement {@link #getChildren} and is used to deduce an appropriate feature for an
+	 * {@link org.eclipse.emf.edit.command.AddCommand}, {@link org.eclipse.emf.edit.command.RemoveCommand} or
+	 * {@link org.eclipse.emf.edit.command.MoveCommand} in {@link #createCommand}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Collection<? extends EStructuralFeature> getChildrenFeatures(Object object) {
+		if (childrenFeatures == null) {
+			super.getChildrenFeatures(object);
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getLinksType_OtherClass());
+		}
+		return childrenFeatures;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EStructuralFeature getChildFeature(Object object, Object child) {
+		// Check the type of the specified child object and return the proper feature to use for
+		// adding (see {@link AddCommand}) it as a child.
+
+		return super.getChildFeature(object, child);
+	}
+
+	/**
+	 * This returns ILink.gif.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object getImage(Object object) {
+		return overlayImage(object, getResourceLocator().getImage("full/obj16/ILink")); //$NON-NLS-1$
+	}
+
+	/**
+	 * This returns the label text for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String getText(Object object) {
+		String label = ((ILink)object).getName();
+		return label == null || label.length() == 0 ?
+			getString("_UI_ILink_type") : //$NON-NLS-1$
+			getString("_UI_ILink_type") + " " + label; //$NON-NLS-1$ //$NON-NLS-2$
+	}
+	
+
+	/**
+	 * This handles model notifications by calling {@link #updateChildren} to update any cached
+	 * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void notifyChanged(Notification notification) {
+		updateChildren(notification);
+
+		switch (notification.getFeatureID(ILink.class)) {
+			case UMLRpyPackage.ILINK__ID:
+			case UMLRpyPackage.ILINK__MULTIPLICITY:
+			case UMLRpyPackage.ILINK__NAME:
+			case UMLRpyPackage.ILINK__LINK_NAME:
+			case UMLRpyPackage.ILINK__LINK_TYPE:
+			case UMLRpyPackage.ILINK__MY_STATE:
+				fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), false, true));
+				return;
+			case UMLRpyPackage.ILINK__OTHER_CLASS:
+				fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), true, false));
+				return;
+		}
+		super.notifyChanged(notification);
+	}
+
+	/**
+	 * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children
+	 * that can be created under this object.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) {
+		super.collectNewChildDescriptors(newChildDescriptors, object);
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getLinksType_OtherClass(),
+				 UMLRpyFactory.eINSTANCE.createIClassHandle()));
+	}
+
+}
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/ILiteralSpecificationItemProvider.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/ILiteralSpecificationItemProvider.java
new file mode 100755
index 0000000..2c6dab8
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/ILiteralSpecificationItemProvider.java
@@ -0,0 +1,262 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.provider;
+
+
+import java.util.Collection;
+import java.util.List;
+
+import org.eclipse.emf.common.notify.AdapterFactory;
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.edit.provider.ComposeableAdapterFactory;
+import org.eclipse.emf.edit.provider.IItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.ItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.ViewerNotification;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ILiteralSpecification;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ILiteralSpecification} object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class ILiteralSpecificationItemProvider extends IValueSpecificationItemProvider {
+	/**
+	 * This constructs an instance from a factory and a notifier.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public ILiteralSpecificationItemProvider(AdapterFactory adapterFactory) {
+		super(adapterFactory);
+	}
+
+	/**
+	 * This returns the property descriptors for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) {
+		if (itemPropertyDescriptors == null) {
+			super.getPropertyDescriptors(object);
+
+			addIdPropertyDescriptor(object);
+			addModifiedTimeWeakPropertyDescriptor(object);
+			addValuePropertyDescriptor(object);
+			addMyStatePropertyDescriptor(object);
+			addNamePropertyDescriptor(object);
+			addCodeUpdateCGTimePropertyDescriptor(object);
+		}
+		return itemPropertyDescriptors;
+	}
+
+	/**
+	 * This adds a property descriptor for the Id feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addIdPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_ILiteralSpecification_id_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_ILiteralSpecification_id_feature", "_UI_ILiteralSpecification_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getILiteralSpecification_Id(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Modified Time Weak feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addModifiedTimeWeakPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_ILiteralSpecification_modifiedTimeWeak_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_ILiteralSpecification_modifiedTimeWeak_feature", "_UI_ILiteralSpecification_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getILiteralSpecification_ModifiedTimeWeak(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Value feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addValuePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_ILiteralSpecification_value_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_ILiteralSpecification_value_feature", "_UI_ILiteralSpecification_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getILiteralSpecification_Value(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the My State feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addMyStatePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_ILiteralSpecification_myState_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_ILiteralSpecification_myState_feature", "_UI_ILiteralSpecification_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getILiteralSpecification_MyState(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Name feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addNamePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_ILiteralSpecification_name_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_ILiteralSpecification_name_feature", "_UI_ILiteralSpecification_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getILiteralSpecification_Name(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Code Update CG Time feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addCodeUpdateCGTimePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_ILiteralSpecification_codeUpdateCGTime_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_ILiteralSpecification_codeUpdateCGTime_feature", "_UI_ILiteralSpecification_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getILiteralSpecification_CodeUpdateCGTime(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This returns ILiteralSpecification.gif.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object getImage(Object object) {
+		return overlayImage(object, getResourceLocator().getImage("full/obj16/ILiteralSpecification")); //$NON-NLS-1$
+	}
+
+	/**
+	 * This returns the label text for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String getText(Object object) {
+		String label = ((ILiteralSpecification)object).getName();
+		return label == null || label.length() == 0 ?
+			getString("_UI_ILiteralSpecification_type") : //$NON-NLS-1$
+			getString("_UI_ILiteralSpecification_type") + " " + label; //$NON-NLS-1$ //$NON-NLS-2$
+	}
+	
+
+	/**
+	 * This handles model notifications by calling {@link #updateChildren} to update any cached
+	 * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void notifyChanged(Notification notification) {
+		updateChildren(notification);
+
+		switch (notification.getFeatureID(ILiteralSpecification.class)) {
+			case UMLRpyPackage.ILITERAL_SPECIFICATION__ID:
+			case UMLRpyPackage.ILITERAL_SPECIFICATION__MODIFIED_TIME_WEAK:
+			case UMLRpyPackage.ILITERAL_SPECIFICATION__VALUE:
+			case UMLRpyPackage.ILITERAL_SPECIFICATION__MY_STATE:
+			case UMLRpyPackage.ILITERAL_SPECIFICATION__NAME:
+			case UMLRpyPackage.ILITERAL_SPECIFICATION__CODE_UPDATE_CG_TIME:
+				fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), false, true));
+				return;
+		}
+		super.notifyChanged(notification);
+	}
+
+	/**
+	 * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children
+	 * that can be created under this object.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) {
+		super.collectNewChildDescriptors(newChildDescriptors, object);
+	}
+
+}
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/IMHyperLinkItemProvider.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/IMHyperLinkItemProvider.java
new file mode 100755
index 0000000..793abea
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/IMHyperLinkItemProvider.java
@@ -0,0 +1,405 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.provider;
+
+
+import java.util.Collection;
+import java.util.List;
+
+import org.eclipse.emf.common.notify.AdapterFactory;
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.ecore.EStructuralFeature;
+
+import org.eclipse.emf.edit.provider.ComposeableAdapterFactory;
+import org.eclipse.emf.edit.provider.IItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.ItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.ViewerNotification;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMHyperLink;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyFactory;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMHyperLink} object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class IMHyperLinkItemProvider extends HyperLinksTypeItemProvider {
+	/**
+	 * This constructs an instance from a factory and a notifier.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IMHyperLinkItemProvider(AdapterFactory adapterFactory) {
+		super(adapterFactory);
+	}
+
+	/**
+	 * This returns the property descriptors for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) {
+		if (itemPropertyDescriptors == null) {
+			super.getPropertyDescriptors(object);
+
+			addIdPropertyDescriptor(object);
+			addModifiedTimeWeakPropertyDescriptor(object);
+			addDependsOnPropertyDescriptor(object);
+			addLinkDispNamePropertyDescriptor(object);
+			addLinkTypePropertyDescriptor(object);
+			addIsConfigurationFileHyperLinkPropertyDescriptor(object);
+			addLinkTargetPropertyDescriptor(object);
+			addRequiremenTracabilityHandlePropertyDescriptor(object);
+			addObjectCreationPropertyDescriptor(object);
+			addUmlDependencyIDPropertyDescriptor(object);
+		}
+		return itemPropertyDescriptors;
+	}
+
+	/**
+	 * This adds a property descriptor for the Id feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addIdPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IMHyperLink_id_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IMHyperLink_id_feature", "_UI_IMHyperLink_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIMHyperLink_Id(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Modified Time Weak feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addModifiedTimeWeakPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IMHyperLink_modifiedTimeWeak_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IMHyperLink_modifiedTimeWeak_feature", "_UI_IMHyperLink_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIMHyperLink_ModifiedTimeWeak(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Depends On feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addDependsOnPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IMHyperLink_dependsOn_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IMHyperLink_dependsOn_feature", "_UI_IMHyperLink_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIMHyperLink_DependsOn(),
+				 true,
+				 false,
+				 true,
+				 null,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Link Disp Name feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addLinkDispNamePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IMHyperLink_linkDispName_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IMHyperLink_linkDispName_feature", "_UI_IMHyperLink_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIMHyperLink_LinkDispName(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Link Type feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addLinkTypePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IMHyperLink_linkType_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IMHyperLink_linkType_feature", "_UI_IMHyperLink_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIMHyperLink_LinkType(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Is Configuration File Hyper Link feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addIsConfigurationFileHyperLinkPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IMHyperLink_isConfigurationFileHyperLink_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IMHyperLink_isConfigurationFileHyperLink_feature", "_UI_IMHyperLink_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIMHyperLink_IsConfigurationFileHyperLink(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Link Target feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addLinkTargetPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IMHyperLink_linkTarget_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IMHyperLink_linkTarget_feature", "_UI_IMHyperLink_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIMHyperLink_LinkTarget(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Requiremen Tracability Handle feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addRequiremenTracabilityHandlePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IMHyperLink_requiremenTracabilityHandle_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IMHyperLink_requiremenTracabilityHandle_feature", "_UI_IMHyperLink_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIMHyperLink_RequiremenTracabilityHandle(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Object Creation feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addObjectCreationPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IMHyperLink_objectCreation_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IMHyperLink_objectCreation_feature", "_UI_IMHyperLink_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIMHyperLink_ObjectCreation(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Uml Dependency ID feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addUmlDependencyIDPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IMHyperLink_umlDependencyID_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IMHyperLink_umlDependencyID_feature", "_UI_IMHyperLink_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIMHyperLink_UmlDependencyID(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This specifies how to implement {@link #getChildren} and is used to deduce an appropriate feature for an
+	 * {@link org.eclipse.emf.edit.command.AddCommand}, {@link org.eclipse.emf.edit.command.RemoveCommand} or
+	 * {@link org.eclipse.emf.edit.command.MoveCommand} in {@link #createCommand}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Collection<? extends EStructuralFeature> getChildrenFeatures(Object object) {
+		if (childrenFeatures == null) {
+			super.getChildrenFeatures(object);
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getIMHyperLink_Properties());
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getIMHyperLink_Description());
+		}
+		return childrenFeatures;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EStructuralFeature getChildFeature(Object object, Object child) {
+		// Check the type of the specified child object and return the proper feature to use for
+		// adding (see {@link AddCommand}) it as a child.
+
+		return super.getChildFeature(object, child);
+	}
+
+	/**
+	 * This returns IMHyperLink.gif.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object getImage(Object object) {
+		return overlayImage(object, getResourceLocator().getImage("full/obj16/IMHyperLink")); //$NON-NLS-1$
+	}
+
+	/**
+	 * This returns the label text for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String getText(Object object) {
+		String label = ((IMHyperLink)object).getDisplayName();
+		return label == null || label.length() == 0 ?
+			getString("_UI_IMHyperLink_type") : //$NON-NLS-1$
+			getString("_UI_IMHyperLink_type") + " " + label; //$NON-NLS-1$ //$NON-NLS-2$
+	}
+	
+
+	/**
+	 * This handles model notifications by calling {@link #updateChildren} to update any cached
+	 * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void notifyChanged(Notification notification) {
+		updateChildren(notification);
+
+		switch (notification.getFeatureID(IMHyperLink.class)) {
+			case UMLRpyPackage.IM_HYPER_LINK__ID:
+			case UMLRpyPackage.IM_HYPER_LINK__MODIFIED_TIME_WEAK:
+			case UMLRpyPackage.IM_HYPER_LINK__LINK_DISP_NAME:
+			case UMLRpyPackage.IM_HYPER_LINK__LINK_TYPE:
+			case UMLRpyPackage.IM_HYPER_LINK__IS_CONFIGURATION_FILE_HYPER_LINK:
+			case UMLRpyPackage.IM_HYPER_LINK__LINK_TARGET:
+			case UMLRpyPackage.IM_HYPER_LINK__REQUIREMEN_TRACABILITY_HANDLE:
+			case UMLRpyPackage.IM_HYPER_LINK__OBJECT_CREATION:
+			case UMLRpyPackage.IM_HYPER_LINK__UML_DEPENDENCY_ID:
+				fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), false, true));
+				return;
+			case UMLRpyPackage.IM_HYPER_LINK__PROPERTIES:
+			case UMLRpyPackage.IM_HYPER_LINK__DESCRIPTION:
+				fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), true, false));
+				return;
+		}
+		super.notifyChanged(notification);
+	}
+
+	/**
+	 * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children
+	 * that can be created under this object.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) {
+		super.collectNewChildDescriptors(newChildDescriptors, object);
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIMHyperLink_Properties(),
+				 UMLRpyFactory.eINSTANCE.createIPropertyContainer()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIMHyperLink_Description(),
+				 UMLRpyFactory.eINSTANCE.createIDescription()));
+	}
+
+}
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/IMSCItemProvider.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/IMSCItemProvider.java
new file mode 100755
index 0000000..40df4d5
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/IMSCItemProvider.java
@@ -0,0 +1,572 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.provider;
+
+
+import java.util.Collection;
+import java.util.List;
+
+import org.eclipse.emf.common.notify.AdapterFactory;
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.ecore.EStructuralFeature;
+
+import org.eclipse.emf.edit.provider.ComposeableAdapterFactory;
+import org.eclipse.emf.edit.provider.IItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.ItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.ViewerNotification;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMSC;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyFactory;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMSC} object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class IMSCItemProvider extends DeclarativesTypeItemProvider {
+	/**
+	 * This constructs an instance from a factory and a notifier.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IMSCItemProvider(AdapterFactory adapterFactory) {
+		super(adapterFactory);
+	}
+
+	/**
+	 * This returns the property descriptors for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) {
+		if (itemPropertyDescriptors == null) {
+			super.getPropertyDescriptors(object);
+
+			addIdPropertyDescriptor(object);
+			addMyStatePropertyDescriptor(object);
+			addNamePropertyDescriptor(object);
+			addLastModifiedTimePropertyDescriptor(object);
+			addDefaultSubsystemPropertyDescriptor(object);
+			addCmheaderPropertyDescriptor(object);
+			addLastIDPropertyDescriptor(object);
+			addOwnerHandlePropertyDescriptor(object);
+			addModifiedTimeWeakPropertyDescriptor(object);
+			addRequiremenTracabilityHandlePropertyDescriptor(object);
+			addObjectCreationPropertyDescriptor(object);
+			addUmlDependencyIDPropertyDescriptor(object);
+		}
+		return itemPropertyDescriptors;
+	}
+
+	/**
+	 * This adds a property descriptor for the Id feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addIdPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IMSC_id_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IMSC_id_feature", "_UI_IMSC_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIMSC_Id(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the My State feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addMyStatePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IMSC_myState_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IMSC_myState_feature", "_UI_IMSC_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIMSC_MyState(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Name feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addNamePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IMSC_name_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IMSC_name_feature", "_UI_IMSC_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIMSC_Name(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Last Modified Time feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addLastModifiedTimePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IMSC_lastModifiedTime_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IMSC_lastModifiedTime_feature", "_UI_IMSC_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIMSC_LastModifiedTime(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Default Subsystem feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addDefaultSubsystemPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IMSC_defaultSubsystem_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IMSC_defaultSubsystem_feature", "_UI_IMSC_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIMSC_DefaultSubsystem(),
+				 true,
+				 false,
+				 true,
+				 null,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Cmheader feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addCmheaderPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IMSC_cmheader_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IMSC_cmheader_feature", "_UI_IMSC_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIMSC_Cmheader(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Last ID feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addLastIDPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IMSC_lastID_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IMSC_lastID_feature", "_UI_IMSC_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIMSC_LastID(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Owner Handle feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addOwnerHandlePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IMSC_ownerHandle_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IMSC_ownerHandle_feature", "_UI_IMSC_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIMSC_OwnerHandle(),
+				 true,
+				 false,
+				 true,
+				 null,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Modified Time Weak feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addModifiedTimeWeakPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IMSC_modifiedTimeWeak_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IMSC_modifiedTimeWeak_feature", "_UI_IMSC_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIMSC_ModifiedTimeWeak(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Requiremen Tracability Handle feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addRequiremenTracabilityHandlePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IMSC_requiremenTracabilityHandle_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IMSC_requiremenTracabilityHandle_feature", "_UI_IMSC_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIMSC_RequiremenTracabilityHandle(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Object Creation feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addObjectCreationPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IMSC_objectCreation_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IMSC_objectCreation_feature", "_UI_IMSC_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIMSC_ObjectCreation(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Uml Dependency ID feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addUmlDependencyIDPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IMSC_umlDependencyID_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IMSC_umlDependencyID_feature", "_UI_IMSC_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIMSC_UmlDependencyID(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This specifies how to implement {@link #getChildren} and is used to deduce an appropriate feature for an
+	 * {@link org.eclipse.emf.edit.command.AddCommand}, {@link org.eclipse.emf.edit.command.RemoveCommand} or
+	 * {@link org.eclipse.emf.edit.command.MoveCommand} in {@link #createCommand}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Collection<? extends EStructuralFeature> getChildrenFeatures(Object object) {
+		if (childrenFeatures == null) {
+			super.getChildrenFeatures(object);
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getIMSC_Properties());
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getIMSC_GraphicChart());
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getIMSC_M_pICollaboration());
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getIMSC_Description());
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getIMSC_Stereotypes());
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getIMSC_Tags());
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getIMSC_Annotations());
+		}
+		return childrenFeatures;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EStructuralFeature getChildFeature(Object object, Object child) {
+		// Check the type of the specified child object and return the proper feature to use for
+		// adding (see {@link AddCommand}) it as a child.
+
+		return super.getChildFeature(object, child);
+	}
+
+	/**
+	 * This returns IMSC.gif.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object getImage(Object object) {
+		return overlayImage(object, getResourceLocator().getImage("full/obj16/IMSC")); //$NON-NLS-1$
+	}
+
+	/**
+	 * This returns the label text for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String getText(Object object) {
+		String label = ((IMSC)object).getName();
+		return label == null || label.length() == 0 ?
+			getString("_UI_IMSC_type") : //$NON-NLS-1$
+			getString("_UI_IMSC_type") + " " + label; //$NON-NLS-1$ //$NON-NLS-2$
+	}
+	
+
+	/**
+	 * This handles model notifications by calling {@link #updateChildren} to update any cached
+	 * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void notifyChanged(Notification notification) {
+		updateChildren(notification);
+
+		switch (notification.getFeatureID(IMSC.class)) {
+			case UMLRpyPackage.IMSC__ID:
+			case UMLRpyPackage.IMSC__MY_STATE:
+			case UMLRpyPackage.IMSC__NAME:
+			case UMLRpyPackage.IMSC__LAST_MODIFIED_TIME:
+			case UMLRpyPackage.IMSC__CMHEADER:
+			case UMLRpyPackage.IMSC__LAST_ID:
+			case UMLRpyPackage.IMSC__MODIFIED_TIME_WEAK:
+			case UMLRpyPackage.IMSC__REQUIREMEN_TRACABILITY_HANDLE:
+			case UMLRpyPackage.IMSC__OBJECT_CREATION:
+			case UMLRpyPackage.IMSC__UML_DEPENDENCY_ID:
+				fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), false, true));
+				return;
+			case UMLRpyPackage.IMSC__PROPERTIES:
+			case UMLRpyPackage.IMSC__GRAPHIC_CHART:
+			case UMLRpyPackage.IMSC__MPI_COLLABORATION:
+			case UMLRpyPackage.IMSC__DESCRIPTION:
+			case UMLRpyPackage.IMSC__STEREOTYPES:
+			case UMLRpyPackage.IMSC__TAGS:
+			case UMLRpyPackage.IMSC__ANNOTATIONS:
+				fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), true, false));
+				return;
+		}
+		super.notifyChanged(notification);
+	}
+
+	/**
+	 * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children
+	 * that can be created under this object.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) {
+		super.collectNewChildDescriptors(newChildDescriptors, object);
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIMSC_Properties(),
+				 UMLRpyFactory.eINSTANCE.createIPropertyContainer()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIMSC_GraphicChart(),
+				 UMLRpyFactory.eINSTANCE.createCGIMscChart()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIMSC_M_pICollaboration(),
+				 UMLRpyFactory.eINSTANCE.createICollaboration()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIMSC_M_pICollaboration(),
+				 UMLRpyFactory.eINSTANCE.createIInteractionOperand()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIMSC_Description(),
+				 UMLRpyFactory.eINSTANCE.createIDescription()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIMSC_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIClassifier()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIMSC_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIActor()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIMSC_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIClass()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIMSC_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIAssociationClass()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIMSC_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIInterfaceItem()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIMSC_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIEvent()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIMSC_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIEventReception()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIMSC_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIFlowItem()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIMSC_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createINode()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIMSC_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIOperation()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIMSC_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIStateChart()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIMSC_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIStereotype()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIMSC_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIType()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIMSC_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIUseCase()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIMSC_Tags(),
+				 UMLRpyFactory.eINSTANCE.createITag()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIMSC_Annotations(),
+				 UMLRpyFactory.eINSTANCE.createIAnnotation()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIMSC_Annotations(),
+				 UMLRpyFactory.eINSTANCE.createIComment()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIMSC_Annotations(),
+				 UMLRpyFactory.eINSTANCE.createIConstraint()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIMSC_Annotations(),
+				 UMLRpyFactory.eINSTANCE.createIRequirement()));
+	}
+
+}
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/IMatrixInstanceItemProvider.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/IMatrixInstanceItemProvider.java
new file mode 100755
index 0000000..746043e
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/IMatrixInstanceItemProvider.java
@@ -0,0 +1,832 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.provider;
+
+
+import java.util.Collection;
+import java.util.List;
+
+import org.eclipse.emf.common.notify.AdapterFactory;
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.ecore.EStructuralFeature;
+
+import org.eclipse.emf.edit.provider.ComposeableAdapterFactory;
+import org.eclipse.emf.edit.provider.IItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.ItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.ViewerNotification;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMatrixInstance;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyFactory;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMatrixInstance} object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class IMatrixInstanceItemProvider extends MatrixInstancesTypeItemProvider {
+	/**
+	 * This constructs an instance from a factory and a notifier.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IMatrixInstanceItemProvider(AdapterFactory adapterFactory) {
+		super(adapterFactory);
+	}
+
+	/**
+	 * This returns the property descriptors for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) {
+		if (itemPropertyDescriptors == null) {
+			super.getPropertyDescriptors(object);
+
+			addIdPropertyDescriptor(object);
+			addMyStatePropertyDescriptor(object);
+			addNamePropertyDescriptor(object);
+			addModifiedTimeWeakPropertyDescriptor(object);
+			addLayoutHandlePropertyDescriptor(object);
+			addM_IncludeDescendants_toPropertyDescriptor(object);
+		}
+		return itemPropertyDescriptors;
+	}
+
+	/**
+	 * This adds a property descriptor for the Id feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addIdPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IMatrixInstance_id_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IMatrixInstance_id_feature", "_UI_IMatrixInstance_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIMatrixInstance_Id(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the My State feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addMyStatePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IMatrixInstance_myState_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IMatrixInstance_myState_feature", "_UI_IMatrixInstance_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIMatrixInstance_MyState(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Name feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addNamePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IMatrixInstance_name_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IMatrixInstance_name_feature", "_UI_IMatrixInstance_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIMatrixInstance_Name(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Modified Time Weak feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addModifiedTimeWeakPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IMatrixInstance_modifiedTimeWeak_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IMatrixInstance_modifiedTimeWeak_feature", "_UI_IMatrixInstance_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIMatrixInstance_ModifiedTimeWeak(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Layout Handle feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addLayoutHandlePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IMatrixInstance_LayoutHandle_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IMatrixInstance_LayoutHandle_feature", "_UI_IMatrixInstance_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIMatrixInstance_LayoutHandle(),
+				 true,
+				 false,
+				 true,
+				 null,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the MInclude Descendants to feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_IncludeDescendants_toPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IMatrixInstance_m_IncludeDescendants_to_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IMatrixInstance_m_IncludeDescendants_to_feature", "_UI_IMatrixInstance_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIMatrixInstance_M_IncludeDescendants_to(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This specifies how to implement {@link #getChildren} and is used to deduce an appropriate feature for an
+	 * {@link org.eclipse.emf.edit.command.AddCommand}, {@link org.eclipse.emf.edit.command.RemoveCommand} or
+	 * {@link org.eclipse.emf.edit.command.MoveCommand} in {@link #createCommand}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Collection<? extends EStructuralFeature> getChildrenFeatures(Object object) {
+		if (childrenFeatures == null) {
+			super.getChildrenFeatures(object);
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getIMatrixInstance_FromScopeHandles());
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getIMatrixInstance_ToScopeHandles());
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getIMatrixInstance_Stereotypes());
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getIMatrixInstance_Properties());
+		}
+		return childrenFeatures;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EStructuralFeature getChildFeature(Object object, Object child) {
+		// Check the type of the specified child object and return the proper feature to use for
+		// adding (see {@link AddCommand}) it as a child.
+
+		return super.getChildFeature(object, child);
+	}
+
+	/**
+	 * This returns IMatrixInstance.gif.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object getImage(Object object) {
+		return overlayImage(object, getResourceLocator().getImage("full/obj16/IMatrixInstance")); //$NON-NLS-1$
+	}
+
+	/**
+	 * This returns the label text for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String getText(Object object) {
+		String label = ((IMatrixInstance)object).getName();
+		return label == null || label.length() == 0 ?
+			getString("_UI_IMatrixInstance_type") : //$NON-NLS-1$
+			getString("_UI_IMatrixInstance_type") + " " + label; //$NON-NLS-1$ //$NON-NLS-2$
+	}
+	
+
+	/**
+	 * This handles model notifications by calling {@link #updateChildren} to update any cached
+	 * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void notifyChanged(Notification notification) {
+		updateChildren(notification);
+
+		switch (notification.getFeatureID(IMatrixInstance.class)) {
+			case UMLRpyPackage.IMATRIX_INSTANCE__ID:
+			case UMLRpyPackage.IMATRIX_INSTANCE__MY_STATE:
+			case UMLRpyPackage.IMATRIX_INSTANCE__NAME:
+			case UMLRpyPackage.IMATRIX_INSTANCE__MODIFIED_TIME_WEAK:
+			case UMLRpyPackage.IMATRIX_INSTANCE__MINCLUDE_DESCENDANTS_TO:
+				fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), false, true));
+				return;
+			case UMLRpyPackage.IMATRIX_INSTANCE__FROM_SCOPE_HANDLES:
+			case UMLRpyPackage.IMATRIX_INSTANCE__TO_SCOPE_HANDLES:
+			case UMLRpyPackage.IMATRIX_INSTANCE__STEREOTYPES:
+			case UMLRpyPackage.IMATRIX_INSTANCE__PROPERTIES:
+				fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), true, false));
+				return;
+		}
+		super.notifyChanged(notification);
+	}
+
+	/**
+	 * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children
+	 * that can be created under this object.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) {
+		super.collectNewChildDescriptors(newChildDescriptors, object);
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIMatrixInstance_FromScopeHandles(),
+				 UMLRpyFactory.eINSTANCE.createIState()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIMatrixInstance_FromScopeHandles(),
+				 UMLRpyFactory.eINSTANCE.createIAcceptEventAction()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIMatrixInstance_FromScopeHandles(),
+				 UMLRpyFactory.eINSTANCE.createIAcceptTimeEvent()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIMatrixInstance_FromScopeHandles(),
+				 UMLRpyFactory.eINSTANCE.createIActivityGraph()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIMatrixInstance_FromScopeHandles(),
+				 UMLRpyFactory.eINSTANCE.createIActor()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIMatrixInstance_FromScopeHandles(),
+				 UMLRpyFactory.eINSTANCE.createIAnchor()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIMatrixInstance_FromScopeHandles(),
+				 UMLRpyFactory.eINSTANCE.createIClass()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIMatrixInstance_FromScopeHandles(),
+				 UMLRpyFactory.eINSTANCE.createIAssociationClass()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIMatrixInstance_FromScopeHandles(),
+				 UMLRpyFactory.eINSTANCE.createIAssociationEnd()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIMatrixInstance_FromScopeHandles(),
+				 UMLRpyFactory.eINSTANCE.createIAttribute()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIMatrixInstance_FromScopeHandles(),
+				 UMLRpyFactory.eINSTANCE.createIBlock()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIMatrixInstance_FromScopeHandles(),
+				 UMLRpyFactory.eINSTANCE.createICallOperation()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIMatrixInstance_FromScopeHandles(),
+				 UMLRpyFactory.eINSTANCE.createIClassHandle()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIMatrixInstance_FromScopeHandles(),
+				 UMLRpyFactory.eINSTANCE.createIClassInstance()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIMatrixInstance_FromScopeHandles(),
+				 UMLRpyFactory.eINSTANCE.createICollaboration()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIMatrixInstance_FromScopeHandles(),
+				 UMLRpyFactory.eINSTANCE.createIDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIMatrixInstance_FromScopeHandles(),
+				 UMLRpyFactory.eINSTANCE.createICollaborationDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIMatrixInstance_FromScopeHandles(),
+				 UMLRpyFactory.eINSTANCE.createIComponent()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIMatrixInstance_FromScopeHandles(),
+				 UMLRpyFactory.eINSTANCE.createIComponentDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIMatrixInstance_FromScopeHandles(),
+				 UMLRpyFactory.eINSTANCE.createIDeploymentDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIMatrixInstance_FromScopeHandles(),
+				 UMLRpyFactory.eINSTANCE.createIEvent()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIMatrixInstance_FromScopeHandles(),
+				 UMLRpyFactory.eINSTANCE.createIInteractionOperand()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIMatrixInstance_FromScopeHandles(),
+				 UMLRpyFactory.eINSTANCE.createILink()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIMatrixInstance_FromScopeHandles(),
+				 UMLRpyFactory.eINSTANCE.createILinkInstance()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIMatrixInstance_FromScopeHandles(),
+				 UMLRpyFactory.eINSTANCE.createIMetaLinkHandle()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIMatrixInstance_FromScopeHandles(),
+				 UMLRpyFactory.eINSTANCE.createIModule()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIMatrixInstance_FromScopeHandles(),
+				 UMLRpyFactory.eINSTANCE.createIObjectLink()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIMatrixInstance_FromScopeHandles(),
+				 UMLRpyFactory.eINSTANCE.createIObjectModelDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIMatrixInstance_FromScopeHandles(),
+				 UMLRpyFactory.eINSTANCE.createIObjectNode()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIMatrixInstance_FromScopeHandles(),
+				 UMLRpyFactory.eINSTANCE.createIPanelDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIMatrixInstance_FromScopeHandles(),
+				 UMLRpyFactory.eINSTANCE.createIPart()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIMatrixInstance_FromScopeHandles(),
+				 UMLRpyFactory.eINSTANCE.createIPrimitiveOperation()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIMatrixInstance_FromScopeHandles(),
+				 UMLRpyFactory.eINSTANCE.createIProject()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIMatrixInstance_FromScopeHandles(),
+				 UMLRpyFactory.eINSTANCE.createISequenceDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIMatrixInstance_FromScopeHandles(),
+				 UMLRpyFactory.eINSTANCE.createIStateChart()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIMatrixInstance_FromScopeHandles(),
+				 UMLRpyFactory.eINSTANCE.createIStateChartDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIMatrixInstance_FromScopeHandles(),
+				 UMLRpyFactory.eINSTANCE.createIStereotype()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIMatrixInstance_FromScopeHandles(),
+				 UMLRpyFactory.eINSTANCE.createIStructureDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIMatrixInstance_FromScopeHandles(),
+				 UMLRpyFactory.eINSTANCE.createISubsystem()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIMatrixInstance_FromScopeHandles(),
+				 UMLRpyFactory.eINSTANCE.createITag()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIMatrixInstance_FromScopeHandles(),
+				 UMLRpyFactory.eINSTANCE.createIType()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIMatrixInstance_FromScopeHandles(),
+				 UMLRpyFactory.eINSTANCE.createIUCDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIMatrixInstance_FromScopeHandles(),
+				 UMLRpyFactory.eINSTANCE.createIUseCaseDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIMatrixInstance_ToScopeHandles(),
+				 UMLRpyFactory.eINSTANCE.createIState()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIMatrixInstance_ToScopeHandles(),
+				 UMLRpyFactory.eINSTANCE.createIAcceptEventAction()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIMatrixInstance_ToScopeHandles(),
+				 UMLRpyFactory.eINSTANCE.createIAcceptTimeEvent()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIMatrixInstance_ToScopeHandles(),
+				 UMLRpyFactory.eINSTANCE.createIActivityGraph()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIMatrixInstance_ToScopeHandles(),
+				 UMLRpyFactory.eINSTANCE.createIActor()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIMatrixInstance_ToScopeHandles(),
+				 UMLRpyFactory.eINSTANCE.createIAnchor()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIMatrixInstance_ToScopeHandles(),
+				 UMLRpyFactory.eINSTANCE.createIClass()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIMatrixInstance_ToScopeHandles(),
+				 UMLRpyFactory.eINSTANCE.createIAssociationClass()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIMatrixInstance_ToScopeHandles(),
+				 UMLRpyFactory.eINSTANCE.createIAssociationEnd()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIMatrixInstance_ToScopeHandles(),
+				 UMLRpyFactory.eINSTANCE.createIAttribute()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIMatrixInstance_ToScopeHandles(),
+				 UMLRpyFactory.eINSTANCE.createIBlock()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIMatrixInstance_ToScopeHandles(),
+				 UMLRpyFactory.eINSTANCE.createICallOperation()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIMatrixInstance_ToScopeHandles(),
+				 UMLRpyFactory.eINSTANCE.createIClassHandle()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIMatrixInstance_ToScopeHandles(),
+				 UMLRpyFactory.eINSTANCE.createIClassInstance()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIMatrixInstance_ToScopeHandles(),
+				 UMLRpyFactory.eINSTANCE.createICollaboration()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIMatrixInstance_ToScopeHandles(),
+				 UMLRpyFactory.eINSTANCE.createIDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIMatrixInstance_ToScopeHandles(),
+				 UMLRpyFactory.eINSTANCE.createICollaborationDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIMatrixInstance_ToScopeHandles(),
+				 UMLRpyFactory.eINSTANCE.createIComponent()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIMatrixInstance_ToScopeHandles(),
+				 UMLRpyFactory.eINSTANCE.createIComponentDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIMatrixInstance_ToScopeHandles(),
+				 UMLRpyFactory.eINSTANCE.createIDeploymentDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIMatrixInstance_ToScopeHandles(),
+				 UMLRpyFactory.eINSTANCE.createIEvent()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIMatrixInstance_ToScopeHandles(),
+				 UMLRpyFactory.eINSTANCE.createIInteractionOperand()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIMatrixInstance_ToScopeHandles(),
+				 UMLRpyFactory.eINSTANCE.createILink()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIMatrixInstance_ToScopeHandles(),
+				 UMLRpyFactory.eINSTANCE.createILinkInstance()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIMatrixInstance_ToScopeHandles(),
+				 UMLRpyFactory.eINSTANCE.createIMetaLinkHandle()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIMatrixInstance_ToScopeHandles(),
+				 UMLRpyFactory.eINSTANCE.createIModule()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIMatrixInstance_ToScopeHandles(),
+				 UMLRpyFactory.eINSTANCE.createIObjectLink()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIMatrixInstance_ToScopeHandles(),
+				 UMLRpyFactory.eINSTANCE.createIObjectModelDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIMatrixInstance_ToScopeHandles(),
+				 UMLRpyFactory.eINSTANCE.createIObjectNode()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIMatrixInstance_ToScopeHandles(),
+				 UMLRpyFactory.eINSTANCE.createIPanelDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIMatrixInstance_ToScopeHandles(),
+				 UMLRpyFactory.eINSTANCE.createIPart()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIMatrixInstance_ToScopeHandles(),
+				 UMLRpyFactory.eINSTANCE.createIPrimitiveOperation()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIMatrixInstance_ToScopeHandles(),
+				 UMLRpyFactory.eINSTANCE.createIProject()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIMatrixInstance_ToScopeHandles(),
+				 UMLRpyFactory.eINSTANCE.createISequenceDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIMatrixInstance_ToScopeHandles(),
+				 UMLRpyFactory.eINSTANCE.createIStateChart()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIMatrixInstance_ToScopeHandles(),
+				 UMLRpyFactory.eINSTANCE.createIStateChartDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIMatrixInstance_ToScopeHandles(),
+				 UMLRpyFactory.eINSTANCE.createIStereotype()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIMatrixInstance_ToScopeHandles(),
+				 UMLRpyFactory.eINSTANCE.createIStructureDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIMatrixInstance_ToScopeHandles(),
+				 UMLRpyFactory.eINSTANCE.createISubsystem()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIMatrixInstance_ToScopeHandles(),
+				 UMLRpyFactory.eINSTANCE.createITag()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIMatrixInstance_ToScopeHandles(),
+				 UMLRpyFactory.eINSTANCE.createIType()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIMatrixInstance_ToScopeHandles(),
+				 UMLRpyFactory.eINSTANCE.createIUCDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIMatrixInstance_ToScopeHandles(),
+				 UMLRpyFactory.eINSTANCE.createIUseCaseDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIMatrixInstance_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIClassifier()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIMatrixInstance_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIActor()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIMatrixInstance_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIClass()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIMatrixInstance_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIAssociationClass()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIMatrixInstance_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIInterfaceItem()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIMatrixInstance_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIEvent()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIMatrixInstance_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIEventReception()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIMatrixInstance_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIFlowItem()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIMatrixInstance_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createINode()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIMatrixInstance_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIOperation()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIMatrixInstance_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIStateChart()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIMatrixInstance_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIStereotype()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIMatrixInstance_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIType()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIMatrixInstance_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIUseCase()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIMatrixInstance_Properties(),
+				 UMLRpyFactory.eINSTANCE.createIPropertyContainer()));
+	}
+
+	/**
+	 * This returns the label text for {@link org.eclipse.emf.edit.command.CreateChildCommand}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String getCreateChildText(Object owner, Object feature, Object child, Collection<?> selection) {
+		Object childFeature = feature;
+		Object childObject = child;
+
+		boolean qualify =
+			childFeature == UMLRpyPackage.eINSTANCE.getIMatrixInstance_FromScopeHandles() ||
+			childFeature == UMLRpyPackage.eINSTANCE.getIMatrixInstance_ToScopeHandles() ||
+			childFeature == UMLRpyPackage.eINSTANCE.getIMatrixInstance_Stereotypes();
+
+		if (qualify) {
+			return getString
+				("_UI_CreateChild_text2", //$NON-NLS-1$
+				 new Object[] { getTypeText(childObject), getFeatureText(childFeature), getTypeText(owner) });
+		}
+		return super.getCreateChildText(owner, feature, child, selection);
+	}
+
+}
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/IMatrixLayoutItemProvider.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/IMatrixLayoutItemProvider.java
new file mode 100755
index 0000000..7274fc5
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/IMatrixLayoutItemProvider.java
@@ -0,0 +1,300 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.provider;
+
+
+import java.util.Collection;
+import java.util.List;
+
+import org.eclipse.emf.common.notify.AdapterFactory;
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.ecore.EStructuralFeature;
+
+import org.eclipse.emf.edit.provider.ComposeableAdapterFactory;
+import org.eclipse.emf.edit.provider.IItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.ItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.ViewerNotification;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMatrixLayout;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyFactory;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMatrixLayout} object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class IMatrixLayoutItemProvider extends IUnitItemProvider {
+	/**
+	 * This constructs an instance from a factory and a notifier.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IMatrixLayoutItemProvider(AdapterFactory adapterFactory) {
+		super(adapterFactory);
+	}
+
+	/**
+	 * This returns the property descriptors for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) {
+		if (itemPropertyDescriptors == null) {
+			super.getPropertyDescriptors(object);
+
+			addIdPropertyDescriptor(object);
+			addMyStatePropertyDescriptor(object);
+			addNamePropertyDescriptor(object);
+			addModifiedTimeWeakPropertyDescriptor(object);
+		}
+		return itemPropertyDescriptors;
+	}
+
+	/**
+	 * This adds a property descriptor for the Id feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addIdPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IMatrixLayout_id_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IMatrixLayout_id_feature", "_UI_IMatrixLayout_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIMatrixLayout_Id(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the My State feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addMyStatePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IMatrixLayout_myState_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IMatrixLayout_myState_feature", "_UI_IMatrixLayout_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIMatrixLayout_MyState(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Name feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addNamePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IMatrixLayout_name_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IMatrixLayout_name_feature", "_UI_IMatrixLayout_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIMatrixLayout_Name(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Modified Time Weak feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addModifiedTimeWeakPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IMatrixLayout_modifiedTimeWeak_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IMatrixLayout_modifiedTimeWeak_feature", "_UI_IMatrixLayout_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIMatrixLayout_ModifiedTimeWeak(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This specifies how to implement {@link #getChildren} and is used to deduce an appropriate feature for an
+	 * {@link org.eclipse.emf.edit.command.AddCommand}, {@link org.eclipse.emf.edit.command.RemoveCommand} or
+	 * {@link org.eclipse.emf.edit.command.MoveCommand} in {@link #createCommand}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Collection<? extends EStructuralFeature> getChildrenFeatures(Object object) {
+		if (childrenFeatures == null) {
+			super.getChildrenFeatures(object);
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getIMatrixLayout_FromElementTypes());
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getIMatrixLayout_ToElementTypes());
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getIMatrixLayout_CellElementTypes());
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getIMatrixLayout_Description());
+		}
+		return childrenFeatures;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EStructuralFeature getChildFeature(Object object, Object child) {
+		// Check the type of the specified child object and return the proper feature to use for
+		// adding (see {@link AddCommand}) it as a child.
+
+		return super.getChildFeature(object, child);
+	}
+
+	/**
+	 * This returns IMatrixLayout.gif.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object getImage(Object object) {
+		return overlayImage(object, getResourceLocator().getImage("full/obj16/IMatrixLayout")); //$NON-NLS-1$
+	}
+
+	/**
+	 * This returns the label text for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String getText(Object object) {
+		String label = ((IMatrixLayout)object).getName();
+		return label == null || label.length() == 0 ?
+			getString("_UI_IMatrixLayout_type") : //$NON-NLS-1$
+			getString("_UI_IMatrixLayout_type") + " " + label; //$NON-NLS-1$ //$NON-NLS-2$
+	}
+	
+
+	/**
+	 * This handles model notifications by calling {@link #updateChildren} to update any cached
+	 * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void notifyChanged(Notification notification) {
+		updateChildren(notification);
+
+		switch (notification.getFeatureID(IMatrixLayout.class)) {
+			case UMLRpyPackage.IMATRIX_LAYOUT__ID:
+			case UMLRpyPackage.IMATRIX_LAYOUT__MY_STATE:
+			case UMLRpyPackage.IMATRIX_LAYOUT__NAME:
+			case UMLRpyPackage.IMATRIX_LAYOUT__MODIFIED_TIME_WEAK:
+				fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), false, true));
+				return;
+			case UMLRpyPackage.IMATRIX_LAYOUT__FROM_ELEMENT_TYPES:
+			case UMLRpyPackage.IMATRIX_LAYOUT__TO_ELEMENT_TYPES:
+			case UMLRpyPackage.IMATRIX_LAYOUT__CELL_ELEMENT_TYPES:
+			case UMLRpyPackage.IMATRIX_LAYOUT__DESCRIPTION:
+				fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), true, false));
+				return;
+		}
+		super.notifyChanged(notification);
+	}
+
+	/**
+	 * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children
+	 * that can be created under this object.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) {
+		super.collectNewChildDescriptors(newChildDescriptors, object);
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIMatrixLayout_FromElementTypes(),
+				 UMLRpyFactory.eINSTANCE.createTableDataDefinition()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIMatrixLayout_ToElementTypes(),
+				 UMLRpyFactory.eINSTANCE.createTableDataDefinition()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIMatrixLayout_CellElementTypes(),
+				 UMLRpyFactory.eINSTANCE.createTableDataDefinition()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIMatrixLayout_Description(),
+				 UMLRpyFactory.eINSTANCE.createIDescription()));
+	}
+
+	/**
+	 * This returns the label text for {@link org.eclipse.emf.edit.command.CreateChildCommand}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String getCreateChildText(Object owner, Object feature, Object child, Collection<?> selection) {
+		Object childFeature = feature;
+		Object childObject = child;
+
+		boolean qualify =
+			childFeature == UMLRpyPackage.eINSTANCE.getIMatrixLayout_FromElementTypes() ||
+			childFeature == UMLRpyPackage.eINSTANCE.getIMatrixLayout_ToElementTypes() ||
+			childFeature == UMLRpyPackage.eINSTANCE.getIMatrixLayout_CellElementTypes();
+
+		if (qualify) {
+			return getString
+				("_UI_CreateChild_text2", //$NON-NLS-1$
+				 new Object[] { getTypeText(childObject), getFeatureText(childFeature), getTypeText(owner) });
+		}
+		return super.getCreateChildText(owner, feature, child, selection);
+	}
+
+}
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/IMatrixViewItemProvider.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/IMatrixViewItemProvider.java
new file mode 100755
index 0000000..5518c2f
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/IMatrixViewItemProvider.java
@@ -0,0 +1,109 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.provider;
+
+
+import java.util.Collection;
+import java.util.List;
+
+import org.eclipse.emf.common.notify.AdapterFactory;
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.edit.provider.IItemPropertyDescriptor;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMatrixView;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMatrixView} object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class IMatrixViewItemProvider extends IUnitItemProvider {
+	/**
+	 * This constructs an instance from a factory and a notifier.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IMatrixViewItemProvider(AdapterFactory adapterFactory) {
+		super(adapterFactory);
+	}
+
+	/**
+	 * This returns the property descriptors for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) {
+		if (itemPropertyDescriptors == null) {
+			super.getPropertyDescriptors(object);
+
+		}
+		return itemPropertyDescriptors;
+	}
+
+	/**
+	 * This returns IMatrixView.gif.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object getImage(Object object) {
+		return overlayImage(object, getResourceLocator().getImage("full/obj16/IMatrixView")); //$NON-NLS-1$
+	}
+
+	/**
+	 * This returns the label text for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String getText(Object object) {
+		String label = ((IMatrixView)object).getDisplayName();
+		return label == null || label.length() == 0 ?
+			getString("_UI_IMatrixView_type") : //$NON-NLS-1$
+			getString("_UI_IMatrixView_type") + " " + label; //$NON-NLS-1$ //$NON-NLS-2$
+	}
+	
+
+	/**
+	 * This handles model notifications by calling {@link #updateChildren} to update any cached
+	 * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void notifyChanged(Notification notification) {
+		updateChildren(notification);
+		super.notifyChanged(notification);
+	}
+
+	/**
+	 * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children
+	 * that can be created under this object.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) {
+		super.collectNewChildDescriptors(newChildDescriptors, object);
+	}
+
+}
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/IMessageItemProvider.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/IMessageItemProvider.java
new file mode 100755
index 0000000..662fe26
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/IMessageItemProvider.java
@@ -0,0 +1,640 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.provider;
+
+
+import java.util.Collection;
+import java.util.List;
+
+import org.eclipse.emf.common.notify.AdapterFactory;
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.ecore.EStructuralFeature;
+
+import org.eclipse.emf.edit.provider.ComposeableAdapterFactory;
+import org.eclipse.emf.edit.provider.IItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.ItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.ViewerNotification;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMessage;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyFactory;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMessage} object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class IMessageItemProvider extends IModelElementItemProvider {
+	/**
+	 * This constructs an instance from a factory and a notifier.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IMessageItemProvider(AdapterFactory adapterFactory) {
+		super(adapterFactory);
+	}
+
+	/**
+	 * This returns the property descriptors for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) {
+		if (itemPropertyDescriptors == null) {
+			super.getPropertyDescriptors(object);
+
+			addIdPropertyDescriptor(object);
+			addMyStatePropertyDescriptor(object);
+			addNamePropertyDescriptor(object);
+			addM_szSequencePropertyDescriptor(object);
+			addM_szActualArgsPropertyDescriptor(object);
+			addM_szReturnValPropertyDescriptor(object);
+			addM_pReceiverPropertyDescriptor(object);
+			addM_pSenderPropertyDescriptor(object);
+			addM_pFormalMessagePropertyDescriptor(object);
+			addM_eTypePropertyDescriptor(object);
+			addM_pCommunicationConnectionPropertyDescriptor(object);
+			addM_freeTextPropertyDescriptor(object);
+			addModifiedTimeWeakPropertyDescriptor(object);
+			addM_targetExecPropertyDescriptor(object);
+			addM_srcExecPropertyDescriptor(object);
+			addObjectCreationPropertyDescriptor(object);
+			addUmlDependencyIDPropertyDescriptor(object);
+		}
+		return itemPropertyDescriptors;
+	}
+
+	/**
+	 * This adds a property descriptor for the Id feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addIdPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IMessage_id_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IMessage_id_feature", "_UI_IMessage_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIMessage_Id(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the My State feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addMyStatePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IMessage_myState_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IMessage_myState_feature", "_UI_IMessage_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIMessage_MyState(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Name feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addNamePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IMessage_name_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IMessage_name_feature", "_UI_IMessage_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIMessage_Name(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Msz Sequence feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_szSequencePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IMessage_m_szSequence_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IMessage_m_szSequence_feature", "_UI_IMessage_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIMessage_M_szSequence(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Msz Actual Args feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_szActualArgsPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IMessage_m_szActualArgs_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IMessage_m_szActualArgs_feature", "_UI_IMessage_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIMessage_M_szActualArgs(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Msz Return Val feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_szReturnValPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IMessage_m_szReturnVal_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IMessage_m_szReturnVal_feature", "_UI_IMessage_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIMessage_M_szReturnVal(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the MpReceiver feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_pReceiverPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IMessage_m_pReceiver_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IMessage_m_pReceiver_feature", "_UI_IMessage_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIMessage_M_pReceiver(),
+				 true,
+				 false,
+				 true,
+				 null,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the MpSender feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_pSenderPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IMessage_m_pSender_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IMessage_m_pSender_feature", "_UI_IMessage_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIMessage_M_pSender(),
+				 true,
+				 false,
+				 true,
+				 null,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the MpFormal Message feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_pFormalMessagePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IMessage_m_pFormalMessage_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IMessage_m_pFormalMessage_feature", "_UI_IMessage_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIMessage_M_pFormalMessage(),
+				 true,
+				 false,
+				 true,
+				 null,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the MeType feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_eTypePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IMessage_m_eType_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IMessage_m_eType_feature", "_UI_IMessage_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIMessage_M_eType(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the MpCommunication Connection feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_pCommunicationConnectionPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IMessage_m_pCommunicationConnection_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IMessage_m_pCommunicationConnection_feature", "_UI_IMessage_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIMessage_M_pCommunicationConnection(),
+				 true,
+				 false,
+				 true,
+				 null,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Mfree Text feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_freeTextPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IMessage_m_freeText_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IMessage_m_freeText_feature", "_UI_IMessage_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIMessage_M_freeText(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Modified Time Weak feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addModifiedTimeWeakPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IMessage_modifiedTimeWeak_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IMessage_modifiedTimeWeak_feature", "_UI_IMessage_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIMessage_ModifiedTimeWeak(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Mtarget Exec feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_targetExecPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IMessage_m_targetExec_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IMessage_m_targetExec_feature", "_UI_IMessage_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIMessage_M_targetExec(),
+				 true,
+				 false,
+				 true,
+				 null,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Msrc Exec feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_srcExecPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IMessage_m_srcExec_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IMessage_m_srcExec_feature", "_UI_IMessage_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIMessage_M_srcExec(),
+				 true,
+				 false,
+				 true,
+				 null,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Object Creation feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addObjectCreationPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IMessage_objectCreation_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IMessage_objectCreation_feature", "_UI_IMessage_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIMessage_ObjectCreation(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Uml Dependency ID feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addUmlDependencyIDPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IMessage_umlDependencyID_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IMessage_umlDependencyID_feature", "_UI_IMessage_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIMessage_UmlDependencyID(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This specifies how to implement {@link #getChildren} and is used to deduce an appropriate feature for an
+	 * {@link org.eclipse.emf.edit.command.AddCommand}, {@link org.eclipse.emf.edit.command.RemoveCommand} or
+	 * {@link org.eclipse.emf.edit.command.MoveCommand} in {@link #createCommand}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Collection<? extends EStructuralFeature> getChildrenFeatures(Object object) {
+		if (childrenFeatures == null) {
+			super.getChildrenFeatures(object);
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getIMessage_Stereotypes());
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getIMessage_Tags());
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getIMessage_Properties());
+		}
+		return childrenFeatures;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EStructuralFeature getChildFeature(Object object, Object child) {
+		// Check the type of the specified child object and return the proper feature to use for
+		// adding (see {@link AddCommand}) it as a child.
+
+		return super.getChildFeature(object, child);
+	}
+
+	/**
+	 * This returns IMessage.gif.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object getImage(Object object) {
+		return overlayImage(object, getResourceLocator().getImage("full/obj16/IMessage")); //$NON-NLS-1$
+	}
+
+	/**
+	 * This returns the label text for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String getText(Object object) {
+		String label = ((IMessage)object).getName();
+		return label == null || label.length() == 0 ?
+			getString("_UI_IMessage_type") : //$NON-NLS-1$
+			getString("_UI_IMessage_type") + " " + label; //$NON-NLS-1$ //$NON-NLS-2$
+	}
+	
+
+	/**
+	 * This handles model notifications by calling {@link #updateChildren} to update any cached
+	 * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void notifyChanged(Notification notification) {
+		updateChildren(notification);
+
+		switch (notification.getFeatureID(IMessage.class)) {
+			case UMLRpyPackage.IMESSAGE__ID:
+			case UMLRpyPackage.IMESSAGE__MY_STATE:
+			case UMLRpyPackage.IMESSAGE__NAME:
+			case UMLRpyPackage.IMESSAGE__MSZ_SEQUENCE:
+			case UMLRpyPackage.IMESSAGE__MSZ_ACTUAL_ARGS:
+			case UMLRpyPackage.IMESSAGE__MSZ_RETURN_VAL:
+			case UMLRpyPackage.IMESSAGE__METYPE:
+			case UMLRpyPackage.IMESSAGE__MFREE_TEXT:
+			case UMLRpyPackage.IMESSAGE__MODIFIED_TIME_WEAK:
+			case UMLRpyPackage.IMESSAGE__OBJECT_CREATION:
+			case UMLRpyPackage.IMESSAGE__UML_DEPENDENCY_ID:
+				fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), false, true));
+				return;
+			case UMLRpyPackage.IMESSAGE__STEREOTYPES:
+			case UMLRpyPackage.IMESSAGE__TAGS:
+			case UMLRpyPackage.IMESSAGE__PROPERTIES:
+				fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), true, false));
+				return;
+		}
+		super.notifyChanged(notification);
+	}
+
+	/**
+	 * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children
+	 * that can be created under this object.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) {
+		super.collectNewChildDescriptors(newChildDescriptors, object);
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIMessage_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIClassifier()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIMessage_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIActor()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIMessage_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIClass()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIMessage_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIAssociationClass()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIMessage_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIInterfaceItem()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIMessage_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIEvent()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIMessage_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIEventReception()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIMessage_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIFlowItem()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIMessage_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createINode()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIMessage_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIOperation()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIMessage_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIStateChart()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIMessage_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIStereotype()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIMessage_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIType()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIMessage_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIUseCase()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIMessage_Tags(),
+				 UMLRpyFactory.eINSTANCE.createITag()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIMessage_Properties(),
+				 UMLRpyFactory.eINSTANCE.createIPropertyContainer()));
+	}
+
+}
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/IMessagePointItemProvider.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/IMessagePointItemProvider.java
new file mode 100755
index 0000000..fce7de4
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/IMessagePointItemProvider.java
@@ -0,0 +1,109 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.provider;
+
+
+import java.util.Collection;
+import java.util.List;
+
+import org.eclipse.emf.common.notify.AdapterFactory;
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.edit.provider.IItemPropertyDescriptor;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMessagePoint;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMessagePoint} object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class IMessagePointItemProvider extends IModelElementItemProvider {
+	/**
+	 * This constructs an instance from a factory and a notifier.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IMessagePointItemProvider(AdapterFactory adapterFactory) {
+		super(adapterFactory);
+	}
+
+	/**
+	 * This returns the property descriptors for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) {
+		if (itemPropertyDescriptors == null) {
+			super.getPropertyDescriptors(object);
+
+		}
+		return itemPropertyDescriptors;
+	}
+
+	/**
+	 * This returns IMessagePoint.gif.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object getImage(Object object) {
+		return overlayImage(object, getResourceLocator().getImage("full/obj16/IMessagePoint")); //$NON-NLS-1$
+	}
+
+	/**
+	 * This returns the label text for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String getText(Object object) {
+		String label = ((IMessagePoint)object).getDisplayName();
+		return label == null || label.length() == 0 ?
+			getString("_UI_IMessagePoint_type") : //$NON-NLS-1$
+			getString("_UI_IMessagePoint_type") + " " + label; //$NON-NLS-1$ //$NON-NLS-2$
+	}
+	
+
+	/**
+	 * This handles model notifications by calling {@link #updateChildren} to update any cached
+	 * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void notifyChanged(Notification notification) {
+		updateChildren(notification);
+		super.notifyChanged(notification);
+	}
+
+	/**
+	 * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children
+	 * that can be created under this object.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) {
+		super.collectNewChildDescriptors(newChildDescriptors, object);
+	}
+
+}
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/IMetaLinkHandleItemProvider.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/IMetaLinkHandleItemProvider.java
new file mode 100755
index 0000000..b6c4f36
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/IMetaLinkHandleItemProvider.java
@@ -0,0 +1,262 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.provider;
+
+
+import java.util.Collection;
+import java.util.List;
+
+import org.eclipse.emf.common.notify.AdapterFactory;
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.edit.provider.ComposeableAdapterFactory;
+import org.eclipse.emf.edit.provider.IItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.ItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.ViewerNotification;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMetaLinkHandle;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMetaLinkHandle} object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class IMetaLinkHandleItemProvider extends InverseTypeItemProvider {
+	/**
+	 * This constructs an instance from a factory and a notifier.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IMetaLinkHandleItemProvider(AdapterFactory adapterFactory) {
+		super(adapterFactory);
+	}
+
+	/**
+	 * This returns the property descriptors for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) {
+		if (itemPropertyDescriptors == null) {
+			super.getPropertyDescriptors(object);
+
+			addM2ClassPropertyDescriptor(object);
+			addFilenamePropertyDescriptor(object);
+			addSubsystemPropertyDescriptor(object);
+			addClassPropertyDescriptor(object);
+			addNamePropertyDescriptor(object);
+			addIdPropertyDescriptor(object);
+		}
+		return itemPropertyDescriptors;
+	}
+
+	/**
+	 * This adds a property descriptor for the M2 Class feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM2ClassPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IMetaLinkHandle_m2Class_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IMetaLinkHandle_m2Class_feature", "_UI_IMetaLinkHandle_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIMetaLinkHandle_M2Class(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Filename feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addFilenamePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IMetaLinkHandle_filename_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IMetaLinkHandle_filename_feature", "_UI_IMetaLinkHandle_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIMetaLinkHandle_Filename(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Subsystem feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addSubsystemPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IMetaLinkHandle_subsystem_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IMetaLinkHandle_subsystem_feature", "_UI_IMetaLinkHandle_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIMetaLinkHandle_Subsystem(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Class feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addClassPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IMetaLinkHandle_class_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IMetaLinkHandle_class_feature", "_UI_IMetaLinkHandle_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIMetaLinkHandle_Class(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Name feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addNamePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IMetaLinkHandle_name_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IMetaLinkHandle_name_feature", "_UI_IMetaLinkHandle_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIMetaLinkHandle_Name(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Id feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addIdPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IMetaLinkHandle_id_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IMetaLinkHandle_id_feature", "_UI_IMetaLinkHandle_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIMetaLinkHandle_Id(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This returns IMetaLinkHandle.gif.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object getImage(Object object) {
+		return overlayImage(object, getResourceLocator().getImage("full/obj16/IMetaLinkHandle")); //$NON-NLS-1$
+	}
+
+	/**
+	 * This returns the label text for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String getText(Object object) {
+		String label = ((IMetaLinkHandle)object).getName();
+		return label == null || label.length() == 0 ?
+			getString("_UI_IMetaLinkHandle_type") : //$NON-NLS-1$
+			getString("_UI_IMetaLinkHandle_type") + " " + label; //$NON-NLS-1$ //$NON-NLS-2$
+	}
+	
+
+	/**
+	 * This handles model notifications by calling {@link #updateChildren} to update any cached
+	 * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void notifyChanged(Notification notification) {
+		updateChildren(notification);
+
+		switch (notification.getFeatureID(IMetaLinkHandle.class)) {
+			case UMLRpyPackage.IMETA_LINK_HANDLE__M2_CLASS:
+			case UMLRpyPackage.IMETA_LINK_HANDLE__FILENAME:
+			case UMLRpyPackage.IMETA_LINK_HANDLE__SUBSYSTEM:
+			case UMLRpyPackage.IMETA_LINK_HANDLE__CLASS:
+			case UMLRpyPackage.IMETA_LINK_HANDLE__NAME:
+			case UMLRpyPackage.IMETA_LINK_HANDLE__ID:
+				fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), false, true));
+				return;
+		}
+		super.notifyChanged(notification);
+	}
+
+	/**
+	 * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children
+	 * that can be created under this object.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) {
+		super.collectNewChildDescriptors(newChildDescriptors, object);
+	}
+
+}
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/IModelElementItemProvider.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/IModelElementItemProvider.java
new file mode 100755
index 0000000..fa172f5
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/IModelElementItemProvider.java
@@ -0,0 +1,156 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.provider;
+
+
+import java.util.Collection;
+import java.util.List;
+
+import org.eclipse.emf.common.notify.AdapterFactory;
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.common.util.ResourceLocator;
+import org.eclipse.emf.ecore.provider.EModelElementItemProvider;
+import org.eclipse.emf.edit.provider.ComposeableAdapterFactory;
+import org.eclipse.emf.edit.provider.IItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.ItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.ViewerNotification;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IModelElement;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IModelElement} object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class IModelElementItemProvider 
+	extends EModelElementItemProvider {
+	/**
+	 * This constructs an instance from a factory and a notifier.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IModelElementItemProvider(AdapterFactory adapterFactory) {
+		super(adapterFactory);
+	}
+
+	/**
+	 * This returns the property descriptors for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) {
+		if (itemPropertyDescriptors == null) {
+			super.getPropertyDescriptors(object);
+
+			addDisplayNamePropertyDescriptor(object);
+		}
+		return itemPropertyDescriptors;
+	}
+
+	/**
+	 * This adds a property descriptor for the Display Name feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addDisplayNamePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IModelElement_displayName_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IModelElement_displayName_feature", "_UI_IModelElement_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIModelElement_DisplayName(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This returns IModelElement.gif.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object getImage(Object object) {
+		return overlayImage(object, getResourceLocator().getImage("full/obj16/IModelElement")); //$NON-NLS-1$
+	}
+
+	/**
+	 * This returns the label text for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String getText(Object object) {
+		String label = ((IModelElement)object).getDisplayName();
+		return label == null || label.length() == 0 ?
+			getString("_UI_IModelElement_type") : //$NON-NLS-1$
+			getString("_UI_IModelElement_type") + " " + label; //$NON-NLS-1$ //$NON-NLS-2$
+	}
+	
+
+	/**
+	 * This handles model notifications by calling {@link #updateChildren} to update any cached
+	 * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void notifyChanged(Notification notification) {
+		updateChildren(notification);
+
+		switch (notification.getFeatureID(IModelElement.class)) {
+			case UMLRpyPackage.IMODEL_ELEMENT__DISPLAY_NAME:
+				fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), false, true));
+				return;
+		}
+		super.notifyChanged(notification);
+	}
+
+	/**
+	 * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children
+	 * that can be created under this object.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) {
+		super.collectNewChildDescriptors(newChildDescriptors, object);
+	}
+
+	/**
+	 * Return the resource locator for this item provider's resources.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public ResourceLocator getResourceLocator() {
+		return rpymetamodelEditPlugin.INSTANCE;
+	}
+
+}
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/IModuleItemProvider.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/IModuleItemProvider.java
new file mode 100755
index 0000000..849e956
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/IModuleItemProvider.java
@@ -0,0 +1,292 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.provider;
+
+
+import java.util.Collection;
+import java.util.List;
+
+import org.eclipse.emf.common.notify.AdapterFactory;
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.ecore.EStructuralFeature;
+
+import org.eclipse.emf.edit.provider.ComposeableAdapterFactory;
+import org.eclipse.emf.edit.provider.IItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.ItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.ViewerNotification;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IModule;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyFactory;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IModule} object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class IModuleItemProvider extends IInstanceItemProvider {
+	/**
+	 * This constructs an instance from a factory and a notifier.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IModuleItemProvider(AdapterFactory adapterFactory) {
+		super(adapterFactory);
+	}
+
+	/**
+	 * This returns the property descriptors for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) {
+		if (itemPropertyDescriptors == null) {
+			super.getPropertyDescriptors(object);
+
+			addMultiplicityPropertyDescriptor(object);
+			addOtherClassPropertyDescriptor(object);
+			addRequiremenTracabilityHandlePropertyDescriptor(object);
+			addPartKindPropertyDescriptor(object);
+		}
+		return itemPropertyDescriptors;
+	}
+
+	/**
+	 * This adds a property descriptor for the Multiplicity feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addMultiplicityPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_End2_Type_multiplicity_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_End2_Type_multiplicity_feature", "_UI_End2_Type_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getEnd2_Type_Multiplicity(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Other Class feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addOtherClassPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IModule_otherClass_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IModule_otherClass_feature", "_UI_IModule_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIModule_OtherClass(),
+				 true,
+				 false,
+				 true,
+				 null,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Requiremen Tracability Handle feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addRequiremenTracabilityHandlePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IModule_requiremenTracabilityHandle_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IModule_requiremenTracabilityHandle_feature", "_UI_IModule_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIModule_RequiremenTracabilityHandle(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Part Kind feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addPartKindPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IModule_partKind_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IModule_partKind_feature", "_UI_IModule_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIModule_PartKind(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This specifies how to implement {@link #getChildren} and is used to deduce an appropriate feature for an
+	 * {@link org.eclipse.emf.edit.command.AddCommand}, {@link org.eclipse.emf.edit.command.RemoveCommand} or
+	 * {@link org.eclipse.emf.edit.command.MoveCommand} in {@link #createCommand}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Collection<? extends EStructuralFeature> getChildrenFeatures(Object object) {
+		if (childrenFeatures == null) {
+			super.getChildrenFeatures(object);
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getIModule_Stereotypes());
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getIModule_Description());
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getIModule_HyperLinks());
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getIModule_ImplicitClass());
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getIModule_Properties());
+		}
+		return childrenFeatures;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EStructuralFeature getChildFeature(Object object, Object child) {
+		// Check the type of the specified child object and return the proper feature to use for
+		// adding (see {@link AddCommand}) it as a child.
+
+		return super.getChildFeature(object, child);
+	}
+
+	/**
+	 * This returns IModule.gif.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object getImage(Object object) {
+		return overlayImage(object, getResourceLocator().getImage("full/obj16/IModule")); //$NON-NLS-1$
+	}
+
+	/**
+	 * This returns the label text for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String getText(Object object) {
+		String label = ((IModule)object).getName();
+		return label == null || label.length() == 0 ?
+			getString("_UI_IModule_type") : //$NON-NLS-1$
+			getString("_UI_IModule_type") + " " + label; //$NON-NLS-1$ //$NON-NLS-2$
+	}
+	
+
+	/**
+	 * This handles model notifications by calling {@link #updateChildren} to update any cached
+	 * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void notifyChanged(Notification notification) {
+		updateChildren(notification);
+
+		switch (notification.getFeatureID(IModule.class)) {
+			case UMLRpyPackage.IMODULE__MULTIPLICITY:
+			case UMLRpyPackage.IMODULE__REQUIREMEN_TRACABILITY_HANDLE:
+			case UMLRpyPackage.IMODULE__PART_KIND:
+				fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), false, true));
+				return;
+			case UMLRpyPackage.IMODULE__STEREOTYPES:
+			case UMLRpyPackage.IMODULE__DESCRIPTION:
+			case UMLRpyPackage.IMODULE__HYPER_LINKS:
+			case UMLRpyPackage.IMODULE__IMPLICIT_CLASS:
+			case UMLRpyPackage.IMODULE__PROPERTIES:
+				fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), true, false));
+				return;
+		}
+		super.notifyChanged(notification);
+	}
+
+	/**
+	 * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children
+	 * that can be created under this object.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) {
+		super.collectNewChildDescriptors(newChildDescriptors, object);
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIModule_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIStereotype()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIModule_Description(),
+				 UMLRpyFactory.eINSTANCE.createIDescription()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIModule_HyperLinks(),
+				 UMLRpyFactory.eINSTANCE.createIMHyperLink()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIModule_ImplicitClass(),
+				 UMLRpyFactory.eINSTANCE.createIClass()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIModule_ImplicitClass(),
+				 UMLRpyFactory.eINSTANCE.createIAssociationClass()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIModule_ImplicitClass(),
+				 UMLRpyFactory.eINSTANCE.createIStateChart()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIModule_Properties(),
+				 UMLRpyFactory.eINSTANCE.createIPropertyContainer()));
+	}
+
+}
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/IMultiplicityItemItemProvider.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/IMultiplicityItemItemProvider.java
new file mode 100755
index 0000000..026ab92
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/IMultiplicityItemItemProvider.java
@@ -0,0 +1,192 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.provider;
+
+
+import java.util.Collection;
+import java.util.List;
+
+import org.eclipse.emf.common.notify.AdapterFactory;
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.common.util.ResourceLocator;
+
+import org.eclipse.emf.edit.provider.ComposeableAdapterFactory;
+import org.eclipse.emf.edit.provider.IEditingDomainItemProvider;
+import org.eclipse.emf.edit.provider.IItemLabelProvider;
+import org.eclipse.emf.edit.provider.IItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.IItemPropertySource;
+import org.eclipse.emf.edit.provider.IStructuredItemContentProvider;
+import org.eclipse.emf.edit.provider.ITreeItemContentProvider;
+import org.eclipse.emf.edit.provider.ItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.ItemProviderAdapter;
+import org.eclipse.emf.edit.provider.ViewerNotification;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMultiplicityItem;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMultiplicityItem} object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class IMultiplicityItemItemProvider 
+	extends ItemProviderAdapter
+	implements
+		IEditingDomainItemProvider,
+		IStructuredItemContentProvider,
+		ITreeItemContentProvider,
+		IItemLabelProvider,
+		IItemPropertySource {
+	/**
+	 * This constructs an instance from a factory and a notifier.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IMultiplicityItemItemProvider(AdapterFactory adapterFactory) {
+		super(adapterFactory);
+	}
+
+	/**
+	 * This returns the property descriptors for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) {
+		if (itemPropertyDescriptors == null) {
+			super.getPropertyDescriptors(object);
+
+			addNamePropertyDescriptor(object);
+			addCountPropertyDescriptor(object);
+		}
+		return itemPropertyDescriptors;
+	}
+
+	/**
+	 * This adds a property descriptor for the Name feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addNamePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IMultiplicityItem_name_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IMultiplicityItem_name_feature", "_UI_IMultiplicityItem_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIMultiplicityItem_Name(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Count feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addCountPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IMultiplicityItem_count_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IMultiplicityItem_count_feature", "_UI_IMultiplicityItem_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIMultiplicityItem_Count(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This returns IMultiplicityItem.gif.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object getImage(Object object) {
+		return overlayImage(object, getResourceLocator().getImage("full/obj16/IMultiplicityItem")); //$NON-NLS-1$
+	}
+
+	/**
+	 * This returns the label text for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String getText(Object object) {
+		String label = ((IMultiplicityItem)object).getName();
+		return label == null || label.length() == 0 ?
+			getString("_UI_IMultiplicityItem_type") : //$NON-NLS-1$
+			getString("_UI_IMultiplicityItem_type") + " " + label; //$NON-NLS-1$ //$NON-NLS-2$
+	}
+	
+
+	/**
+	 * This handles model notifications by calling {@link #updateChildren} to update any cached
+	 * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void notifyChanged(Notification notification) {
+		updateChildren(notification);
+
+		switch (notification.getFeatureID(IMultiplicityItem.class)) {
+			case UMLRpyPackage.IMULTIPLICITY_ITEM__NAME:
+			case UMLRpyPackage.IMULTIPLICITY_ITEM__COUNT:
+				fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), false, true));
+				return;
+		}
+		super.notifyChanged(notification);
+	}
+
+	/**
+	 * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children
+	 * that can be created under this object.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) {
+		super.collectNewChildDescriptors(newChildDescriptors, object);
+	}
+
+	/**
+	 * Return the resource locator for this item provider's resources.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public ResourceLocator getResourceLocator() {
+		return rpymetamodelEditPlugin.INSTANCE;
+	}
+
+}
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/INodeItemProvider.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/INodeItemProvider.java
new file mode 100755
index 0000000..d9a79b5
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/INodeItemProvider.java
@@ -0,0 +1,109 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.provider;
+
+
+import java.util.Collection;
+import java.util.List;
+
+import org.eclipse.emf.common.notify.AdapterFactory;
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.edit.provider.IItemPropertyDescriptor;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.INode;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.INode} object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class INodeItemProvider extends IClassifierItemProvider {
+	/**
+	 * This constructs an instance from a factory and a notifier.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public INodeItemProvider(AdapterFactory adapterFactory) {
+		super(adapterFactory);
+	}
+
+	/**
+	 * This returns the property descriptors for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) {
+		if (itemPropertyDescriptors == null) {
+			super.getPropertyDescriptors(object);
+
+		}
+		return itemPropertyDescriptors;
+	}
+
+	/**
+	 * This returns INode.gif.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object getImage(Object object) {
+		return overlayImage(object, getResourceLocator().getImage("full/obj16/INode")); //$NON-NLS-1$
+	}
+
+	/**
+	 * This returns the label text for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String getText(Object object) {
+		String label = ((INode)object).getDisplayName();
+		return label == null || label.length() == 0 ?
+			getString("_UI_INode_type") : //$NON-NLS-1$
+			getString("_UI_INode_type") + " " + label; //$NON-NLS-1$ //$NON-NLS-2$
+	}
+	
+
+	/**
+	 * This handles model notifications by calling {@link #updateChildren} to update any cached
+	 * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void notifyChanged(Notification notification) {
+		updateChildren(notification);
+		super.notifyChanged(notification);
+	}
+
+	/**
+	 * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children
+	 * that can be created under this object.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) {
+		super.collectNewChildDescriptors(newChildDescriptors, object);
+	}
+
+}
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/IObjectLinkHandleItemProvider.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/IObjectLinkHandleItemProvider.java
new file mode 100755
index 0000000..703c0e6
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/IObjectLinkHandleItemProvider.java
@@ -0,0 +1,288 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.provider;
+
+
+import java.util.Collection;
+import java.util.List;
+
+import org.eclipse.emf.common.notify.AdapterFactory;
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.common.util.ResourceLocator;
+
+import org.eclipse.emf.edit.provider.ComposeableAdapterFactory;
+import org.eclipse.emf.edit.provider.IEditingDomainItemProvider;
+import org.eclipse.emf.edit.provider.IItemLabelProvider;
+import org.eclipse.emf.edit.provider.IItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.IItemPropertySource;
+import org.eclipse.emf.edit.provider.IStructuredItemContentProvider;
+import org.eclipse.emf.edit.provider.ITreeItemContentProvider;
+import org.eclipse.emf.edit.provider.ItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.ItemProviderAdapter;
+import org.eclipse.emf.edit.provider.ViewerNotification;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IObjectLinkHandle;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IObjectLinkHandle} object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class IObjectLinkHandleItemProvider 
+	extends ItemProviderAdapter
+	implements
+		IEditingDomainItemProvider,
+		IStructuredItemContentProvider,
+		ITreeItemContentProvider,
+		IItemLabelProvider,
+		IItemPropertySource {
+	/**
+	 * This constructs an instance from a factory and a notifier.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IObjectLinkHandleItemProvider(AdapterFactory adapterFactory) {
+		super(adapterFactory);
+	}
+
+	/**
+	 * This returns the property descriptors for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) {
+		if (itemPropertyDescriptors == null) {
+			super.getPropertyDescriptors(object);
+
+			addM2ClassPropertyDescriptor(object);
+			addFilenamePropertyDescriptor(object);
+			addSubsystemPropertyDescriptor(object);
+			addClassPropertyDescriptor(object);
+			addNamePropertyDescriptor(object);
+			addIdPropertyDescriptor(object);
+		}
+		return itemPropertyDescriptors;
+	}
+
+	/**
+	 * This adds a property descriptor for the M2 Class feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM2ClassPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IObjectLinkHandle_m2Class_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IObjectLinkHandle_m2Class_feature", "_UI_IObjectLinkHandle_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIObjectLinkHandle_M2Class(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Filename feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addFilenamePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IObjectLinkHandle_filename_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IObjectLinkHandle_filename_feature", "_UI_IObjectLinkHandle_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIObjectLinkHandle_Filename(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Subsystem feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addSubsystemPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IObjectLinkHandle_subsystem_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IObjectLinkHandle_subsystem_feature", "_UI_IObjectLinkHandle_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIObjectLinkHandle_Subsystem(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Class feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addClassPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IObjectLinkHandle_class_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IObjectLinkHandle_class_feature", "_UI_IObjectLinkHandle_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIObjectLinkHandle_Class(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Name feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addNamePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IObjectLinkHandle_name_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IObjectLinkHandle_name_feature", "_UI_IObjectLinkHandle_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIObjectLinkHandle_Name(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Id feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addIdPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IObjectLinkHandle_id_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IObjectLinkHandle_id_feature", "_UI_IObjectLinkHandle_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIObjectLinkHandle_Id(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This returns IObjectLinkHandle.gif.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object getImage(Object object) {
+		return overlayImage(object, getResourceLocator().getImage("full/obj16/IObjectLinkHandle")); //$NON-NLS-1$
+	}
+
+	/**
+	 * This returns the label text for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String getText(Object object) {
+		String label = ((IObjectLinkHandle)object).getName();
+		return label == null || label.length() == 0 ?
+			getString("_UI_IObjectLinkHandle_type") : //$NON-NLS-1$
+			getString("_UI_IObjectLinkHandle_type") + " " + label; //$NON-NLS-1$ //$NON-NLS-2$
+	}
+	
+
+	/**
+	 * This handles model notifications by calling {@link #updateChildren} to update any cached
+	 * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void notifyChanged(Notification notification) {
+		updateChildren(notification);
+
+		switch (notification.getFeatureID(IObjectLinkHandle.class)) {
+			case UMLRpyPackage.IOBJECT_LINK_HANDLE__M2_CLASS:
+			case UMLRpyPackage.IOBJECT_LINK_HANDLE__FILENAME:
+			case UMLRpyPackage.IOBJECT_LINK_HANDLE__SUBSYSTEM:
+			case UMLRpyPackage.IOBJECT_LINK_HANDLE__CLASS:
+			case UMLRpyPackage.IOBJECT_LINK_HANDLE__NAME:
+			case UMLRpyPackage.IOBJECT_LINK_HANDLE__ID:
+				fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), false, true));
+				return;
+		}
+		super.notifyChanged(notification);
+	}
+
+	/**
+	 * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children
+	 * that can be created under this object.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) {
+		super.collectNewChildDescriptors(newChildDescriptors, object);
+	}
+
+	/**
+	 * Return the resource locator for this item provider's resources.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public ResourceLocator getResourceLocator() {
+		return rpymetamodelEditPlugin.INSTANCE;
+	}
+
+}
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/IObjectLinkItemProvider.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/IObjectLinkItemProvider.java
new file mode 100755
index 0000000..41f24c1
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/IObjectLinkItemProvider.java
@@ -0,0 +1,812 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.provider;
+
+
+import java.util.Collection;
+import java.util.List;
+
+import org.eclipse.emf.common.notify.AdapterFactory;
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.ecore.EStructuralFeature;
+import org.eclipse.emf.ecore.EcoreFactory;
+import org.eclipse.emf.ecore.EcorePackage;
+import org.eclipse.emf.edit.provider.ComposeableAdapterFactory;
+import org.eclipse.emf.edit.provider.IItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.ItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.ViewerNotification;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IObjectLink;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyFactory;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IObjectLink} object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class IObjectLinkItemProvider extends ObjectLinksTypeItemProvider {
+	/**
+	 * This constructs an instance from a factory and a notifier.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IObjectLinkItemProvider(AdapterFactory adapterFactory) {
+		super(adapterFactory);
+	}
+
+	/**
+	 * This returns the property descriptors for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) {
+		if (itemPropertyDescriptors == null) {
+			super.getPropertyDescriptors(object);
+
+			addModifiedTimeWeakPropertyDescriptor(object);
+			addIdPropertyDescriptor(object);
+			addMyStatePropertyDescriptor(object);
+			addNamePropertyDescriptor(object);
+			addDisplayNamePropertyDescriptor(object);
+			addToLinkPropertyDescriptor(object);
+			addFromLinkPropertyDescriptor(object);
+			addEnd1MultiplicityPropertyDescriptor(object);
+			addEnd2MultiplicityPropertyDescriptor(object);
+			addToPortPropertyDescriptor(object);
+			addFromPortPropertyDescriptor(object);
+			addRequiremenTracabilityHandlePropertyDescriptor(object);
+			addCodeUpdateCGTimePropertyDescriptor(object);
+			addObjectCreationPropertyDescriptor(object);
+			addUmlDependencyIDPropertyDescriptor(object);
+		}
+		return itemPropertyDescriptors;
+	}
+
+	/**
+	 * This adds a property descriptor for the Modified Time Weak feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addModifiedTimeWeakPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_ValueType_modifiedTimeWeak_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_ValueType_modifiedTimeWeak_feature", "_UI_ValueType_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getValueType_ModifiedTimeWeak(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Id feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addIdPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_ValueType_id_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_ValueType_id_feature", "_UI_ValueType_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getValueType_Id(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the My State feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addMyStatePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_ValueType_myState_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_ValueType_myState_feature", "_UI_ValueType_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getValueType_MyState(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Name feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addNamePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_ValueType_name_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_ValueType_name_feature", "_UI_ValueType_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getValueType_Name(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Display Name feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addDisplayNamePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IModelElement_displayName_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IModelElement_displayName_feature", "_UI_IModelElement_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIModelElement_DisplayName(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the To Link feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addToLinkPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IObjectLink_toLink_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IObjectLink_toLink_feature", "_UI_IObjectLink_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIObjectLink_ToLink(),
+				 true,
+				 false,
+				 true,
+				 null,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the From Link feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addFromLinkPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IObjectLink_fromLink_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IObjectLink_fromLink_feature", "_UI_IObjectLink_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIObjectLink_FromLink(),
+				 true,
+				 false,
+				 true,
+				 null,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the End1 Multiplicity feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addEnd1MultiplicityPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IObjectLink_end1Multiplicity_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IObjectLink_end1Multiplicity_feature", "_UI_IObjectLink_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIObjectLink_End1Multiplicity(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the End2 Multiplicity feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addEnd2MultiplicityPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IObjectLink_end2Multiplicity_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IObjectLink_end2Multiplicity_feature", "_UI_IObjectLink_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIObjectLink_End2Multiplicity(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the To Port feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addToPortPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IObjectLink_toPort_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IObjectLink_toPort_feature", "_UI_IObjectLink_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIObjectLink_ToPort(),
+				 true,
+				 false,
+				 true,
+				 null,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the From Port feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addFromPortPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IObjectLink_fromPort_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IObjectLink_fromPort_feature", "_UI_IObjectLink_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIObjectLink_FromPort(),
+				 true,
+				 false,
+				 true,
+				 null,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Requiremen Tracability Handle feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addRequiremenTracabilityHandlePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IObjectLink_requiremenTracabilityHandle_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IObjectLink_requiremenTracabilityHandle_feature", "_UI_IObjectLink_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIObjectLink_RequiremenTracabilityHandle(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Code Update CG Time feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addCodeUpdateCGTimePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IObjectLink_codeUpdateCGTime_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IObjectLink_codeUpdateCGTime_feature", "_UI_IObjectLink_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIObjectLink_CodeUpdateCGTime(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Object Creation feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addObjectCreationPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IObjectLink_objectCreation_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IObjectLink_objectCreation_feature", "_UI_IObjectLink_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIObjectLink_ObjectCreation(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Uml Dependency ID feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addUmlDependencyIDPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IObjectLink_umlDependencyID_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IObjectLink_umlDependencyID_feature", "_UI_IObjectLink_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIObjectLink_UmlDependencyID(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This specifies how to implement {@link #getChildren} and is used to deduce an appropriate feature for an
+	 * {@link org.eclipse.emf.edit.command.AddCommand}, {@link org.eclipse.emf.edit.command.RemoveCommand} or
+	 * {@link org.eclipse.emf.edit.command.MoveCommand} in {@link #createCommand}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Collection<? extends EStructuralFeature> getChildrenFeatures(Object object) {
+		if (childrenFeatures == null) {
+			super.getChildrenFeatures(object);
+			childrenFeatures.add(EcorePackage.Literals.EMODEL_ELEMENT__EANNOTATIONS);
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getIObjectLink_Stereotypes());
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getIObjectLink_Tags());
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getIObjectLink_Instantiates());
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getIObjectLink_Description());
+		}
+		return childrenFeatures;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EStructuralFeature getChildFeature(Object object, Object child) {
+		// Check the type of the specified child object and return the proper feature to use for
+		// adding (see {@link AddCommand}) it as a child.
+
+		return super.getChildFeature(object, child);
+	}
+
+	/**
+	 * This returns IObjectLink.gif.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object getImage(Object object) {
+		return overlayImage(object, getResourceLocator().getImage("full/obj16/IObjectLink")); //$NON-NLS-1$
+	}
+
+	/**
+	 * This returns the label text for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String getText(Object object) {
+		String label = ((IObjectLink)object).getName();
+		return label == null || label.length() == 0 ?
+			getString("_UI_IObjectLink_type") : //$NON-NLS-1$
+			getString("_UI_IObjectLink_type") + " " + label; //$NON-NLS-1$ //$NON-NLS-2$
+	}
+	
+
+	/**
+	 * This handles model notifications by calling {@link #updateChildren} to update any cached
+	 * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void notifyChanged(Notification notification) {
+		updateChildren(notification);
+
+		switch (notification.getFeatureID(IObjectLink.class)) {
+			case UMLRpyPackage.IOBJECT_LINK__MODIFIED_TIME_WEAK:
+			case UMLRpyPackage.IOBJECT_LINK__ID:
+			case UMLRpyPackage.IOBJECT_LINK__MY_STATE:
+			case UMLRpyPackage.IOBJECT_LINK__NAME:
+			case UMLRpyPackage.IOBJECT_LINK__DISPLAY_NAME:
+			case UMLRpyPackage.IOBJECT_LINK__END1_MULTIPLICITY:
+			case UMLRpyPackage.IOBJECT_LINK__END2_MULTIPLICITY:
+			case UMLRpyPackage.IOBJECT_LINK__REQUIREMEN_TRACABILITY_HANDLE:
+			case UMLRpyPackage.IOBJECT_LINK__CODE_UPDATE_CG_TIME:
+			case UMLRpyPackage.IOBJECT_LINK__OBJECT_CREATION:
+			case UMLRpyPackage.IOBJECT_LINK__UML_DEPENDENCY_ID:
+				fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), false, true));
+				return;
+			case UMLRpyPackage.IOBJECT_LINK__EANNOTATIONS:
+			case UMLRpyPackage.IOBJECT_LINK__STEREOTYPES:
+			case UMLRpyPackage.IOBJECT_LINK__TAGS:
+			case UMLRpyPackage.IOBJECT_LINK__INSTANTIATES:
+			case UMLRpyPackage.IOBJECT_LINK__DESCRIPTION:
+				fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), true, false));
+				return;
+		}
+		super.notifyChanged(notification);
+	}
+
+	/**
+	 * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children
+	 * that can be created under this object.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) {
+		super.collectNewChildDescriptors(newChildDescriptors, object);
+
+		newChildDescriptors.add
+			(createChildParameter
+				(EcorePackage.Literals.EMODEL_ELEMENT__EANNOTATIONS,
+				 EcoreFactory.eINSTANCE.createEAnnotation()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIObjectLink_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIUnit()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIObjectLink_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIClassifier()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIObjectLink_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIActor()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIObjectLink_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIAnnotation()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIObjectLink_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIVariable()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIObjectLink_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIArgument()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIObjectLink_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIClass()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIObjectLink_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIAssociationClass()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIObjectLink_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIAttribute()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIObjectLink_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIObjectLink_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createICollaborationDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIObjectLink_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIComment()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIObjectLink_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIComponent()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIObjectLink_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIComponentDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIObjectLink_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIConstraint()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIObjectLink_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIControlledFile()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIObjectLink_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIDeploymentDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIObjectLink_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIInterfaceItem()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIObjectLink_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIEvent()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIObjectLink_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIEventReception()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIObjectLink_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIFile()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIObjectLink_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIFlowItem()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIObjectLink_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIRelation()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIObjectLink_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIInstance()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIObjectLink_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createILink()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIObjectLink_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIMatrixLayout()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIObjectLink_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIMatrixView()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIObjectLink_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIModule()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIObjectLink_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createINode()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIObjectLink_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIObjectModelDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIObjectLink_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIOperation()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIObjectLink_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIPackage()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIObjectLink_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIPanelDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIObjectLink_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIPort()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIObjectLink_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIProfile()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIObjectLink_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIProject()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIObjectLink_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIRequirement()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIObjectLink_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createISequenceDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIObjectLink_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIStateChart()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIObjectLink_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIStateChartDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIObjectLink_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIStereotype()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIObjectLink_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIStructureDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIObjectLink_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createISysMLPort()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIObjectLink_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createITableLayout()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIObjectLink_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createITableView()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIObjectLink_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createITag()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIObjectLink_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createITemplateParameter()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIObjectLink_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIType()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIObjectLink_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIUseCase()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIObjectLink_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIUseCaseDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIObjectLink_Tags(),
+				 UMLRpyFactory.eINSTANCE.createITag()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIObjectLink_Instantiates(),
+				 UMLRpyFactory.eINSTANCE.createIMetaLinkHandle()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIObjectLink_Description(),
+				 UMLRpyFactory.eINSTANCE.createIDescription()));
+	}
+
+	/**
+	 * This returns the label text for {@link org.eclipse.emf.edit.command.CreateChildCommand}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String getCreateChildText(Object owner, Object feature, Object child, Collection<?> selection) {
+		Object childFeature = feature;
+		Object childObject = child;
+
+		boolean qualify =
+			childFeature == UMLRpyPackage.eINSTANCE.getIObjectLink_Stereotypes() ||
+			childFeature == UMLRpyPackage.eINSTANCE.getIObjectLink_Tags();
+
+		if (qualify) {
+			return getString
+				("_UI_CreateChild_text2", //$NON-NLS-1$
+				 new Object[] { getTypeText(childObject), getFeatureText(childFeature), getTypeText(owner) });
+		}
+		return super.getCreateChildText(owner, feature, child, selection);
+	}
+
+}
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/IObjectModelDiagramItemProvider.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/IObjectModelDiagramItemProvider.java
new file mode 100755
index 0000000..32f3d33
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/IObjectModelDiagramItemProvider.java
@@ -0,0 +1,134 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.provider;
+
+
+import java.util.Collection;
+import java.util.List;
+
+import org.eclipse.emf.common.notify.AdapterFactory;
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.edit.provider.IItemPropertyDescriptor;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IObjectModelDiagram;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IObjectModelDiagram} object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class IObjectModelDiagramItemProvider extends IDiagramItemProvider {
+	/**
+	 * This constructs an instance from a factory and a notifier.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IObjectModelDiagramItemProvider(AdapterFactory adapterFactory) {
+		super(adapterFactory);
+	}
+
+	/**
+	 * This returns the property descriptors for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) {
+		if (itemPropertyDescriptors == null) {
+			super.getPropertyDescriptors(object);
+
+		}
+		return itemPropertyDescriptors;
+	}
+
+	/**
+	 * This returns IObjectModelDiagram.gif.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object getImage(Object object) {
+		return overlayImage(object, getResourceLocator().getImage("full/obj16/IObjectModelDiagram")); //$NON-NLS-1$
+	}
+
+	/**
+	 * This returns the label text for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String getText(Object object) {
+		String label = ((IObjectModelDiagram)object).getName();
+		return label == null || label.length() == 0 ?
+			getString("_UI_IObjectModelDiagram_type") : //$NON-NLS-1$
+			getString("_UI_IObjectModelDiagram_type") + " " + label; //$NON-NLS-1$ //$NON-NLS-2$
+	}
+	
+
+	/**
+	 * This handles model notifications by calling {@link #updateChildren} to update any cached
+	 * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void notifyChanged(Notification notification) {
+		updateChildren(notification);
+		super.notifyChanged(notification);
+	}
+
+	/**
+	 * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children
+	 * that can be created under this object.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) {
+		super.collectNewChildDescriptors(newChildDescriptors, object);
+	}
+
+	/**
+	 * This returns the label text for {@link org.eclipse.emf.edit.command.CreateChildCommand}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String getCreateChildText(Object owner, Object feature, Object child, Collection<?> selection) {
+		Object childFeature = feature;
+		Object childObject = child;
+
+		boolean qualify =
+			childFeature == UMLRpyPackage.eINSTANCE.getIDiagram_Stereotypes() ||
+			childFeature == UMLRpyPackage.eINSTANCE.getIDiagram_Annotations() ||
+			childFeature == UMLRpyPackage.eINSTANCE.getIDiagram_HyperLinks();
+
+		if (qualify) {
+			return getString
+				("_UI_CreateChild_text2", //$NON-NLS-1$
+				 new Object[] { getTypeText(childObject), getFeatureText(childFeature), getTypeText(owner) });
+		}
+		return super.getCreateChildText(owner, feature, child, selection);
+	}
+
+}
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/IObjectNodeItemProvider.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/IObjectNodeItemProvider.java
new file mode 100755
index 0000000..e1f71c2
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/IObjectNodeItemProvider.java
@@ -0,0 +1,253 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.provider;
+
+
+import java.util.Collection;
+import java.util.List;
+
+import org.eclipse.emf.common.notify.AdapterFactory;
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.ecore.EStructuralFeature;
+
+import org.eclipse.emf.edit.provider.ComposeableAdapterFactory;
+import org.eclipse.emf.edit.provider.IItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.ItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.ViewerNotification;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IObjectNode;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyFactory;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IObjectNode} object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class IObjectNodeItemProvider extends IStateItemProvider {
+	/**
+	 * This constructs an instance from a factory and a notifier.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IObjectNodeItemProvider(AdapterFactory adapterFactory) {
+		super(adapterFactory);
+	}
+
+	/**
+	 * This returns the property descriptors for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) {
+		if (itemPropertyDescriptors == null) {
+			super.getPropertyDescriptors(object);
+
+			addRepresentsPropertyDescriptor(object);
+			addInStatePropertyDescriptor(object);
+		}
+		return itemPropertyDescriptors;
+	}
+
+	/**
+	 * This adds a property descriptor for the Represents feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addRepresentsPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IObjectNode_represents_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IObjectNode_represents_feature", "_UI_IObjectNode_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIObjectNode_Represents(),
+				 true,
+				 false,
+				 true,
+				 null,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the In State feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addInStatePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IObjectNode_inState_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IObjectNode_inState_feature", "_UI_IObjectNode_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIObjectNode_InState(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This specifies how to implement {@link #getChildren} and is used to deduce an appropriate feature for an
+	 * {@link org.eclipse.emf.edit.command.AddCommand}, {@link org.eclipse.emf.edit.command.RemoveCommand} or
+	 * {@link org.eclipse.emf.edit.command.MoveCommand} in {@link #createCommand}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Collection<? extends EStructuralFeature> getChildrenFeatures(Object object) {
+		if (childrenFeatures == null) {
+			super.getChildrenFeatures(object);
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getIObjectNode_TheInState());
+		}
+		return childrenFeatures;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EStructuralFeature getChildFeature(Object object, Object child) {
+		// Check the type of the specified child object and return the proper feature to use for
+		// adding (see {@link AddCommand}) it as a child.
+
+		return super.getChildFeature(object, child);
+	}
+
+	/**
+	 * This returns IObjectNode.gif.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object getImage(Object object) {
+		return overlayImage(object, getResourceLocator().getImage("full/obj16/IObjectNode")); //$NON-NLS-1$
+	}
+
+	/**
+	 * This returns the label text for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String getText(Object object) {
+		String label = ((IObjectNode)object).getName();
+		return label == null || label.length() == 0 ?
+			getString("_UI_IObjectNode_type") : //$NON-NLS-1$
+			getString("_UI_IObjectNode_type") + " " + label; //$NON-NLS-1$ //$NON-NLS-2$
+	}
+	
+
+	/**
+	 * This handles model notifications by calling {@link #updateChildren} to update any cached
+	 * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void notifyChanged(Notification notification) {
+		updateChildren(notification);
+
+		switch (notification.getFeatureID(IObjectNode.class)) {
+			case UMLRpyPackage.IOBJECT_NODE__IN_STATE:
+				fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), false, true));
+				return;
+			case UMLRpyPackage.IOBJECT_NODE__THE_IN_STATE:
+				fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), true, false));
+				return;
+		}
+		super.notifyChanged(notification);
+	}
+
+	/**
+	 * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children
+	 * that can be created under this object.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) {
+		super.collectNewChildDescriptors(newChildDescriptors, object);
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIObjectNode_TheInState(),
+				 UMLRpyFactory.eINSTANCE.createIState()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIObjectNode_TheInState(),
+				 UMLRpyFactory.eINSTANCE.createIAcceptEventAction()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIObjectNode_TheInState(),
+				 UMLRpyFactory.eINSTANCE.createIAcceptTimeEvent()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIObjectNode_TheInState(),
+				 UMLRpyFactory.eINSTANCE.createICallOperation()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIObjectNode_TheInState(),
+				 UMLRpyFactory.eINSTANCE.createIObjectNode()));
+	}
+
+	/**
+	 * This returns the label text for {@link org.eclipse.emf.edit.command.CreateChildCommand}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String getCreateChildText(Object owner, Object feature, Object child, Collection<?> selection) {
+		Object childFeature = feature;
+		Object childObject = child;
+
+		boolean qualify =
+			childFeature == UMLRpyPackage.eINSTANCE.getIState_EntryAction() ||
+			childFeature == UMLRpyPackage.eINSTANCE.getIObjectNode_TheInState() ||
+			childFeature == UMLRpyPackage.eINSTANCE.getIState_ExitAction() ||
+			childFeature == UMLRpyPackage.eINSTANCE.getIState_NestedStateChart() ||
+			childFeature == UMLRpyPackage.eINSTANCE.getIState_Annotations() ||
+			childFeature == UMLRpyPackage.eINSTANCE.getIState_Dependencies();
+
+		if (qualify) {
+			return getString
+				("_UI_CreateChild_text2", //$NON-NLS-1$
+				 new Object[] { getTypeText(childObject), getFeatureText(childFeature), getTypeText(owner) });
+		}
+		return super.getCreateChildText(owner, feature, child, selection);
+	}
+
+}
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/IOperationItemProvider.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/IOperationItemProvider.java
new file mode 100755
index 0000000..df3581a
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/IOperationItemProvider.java
@@ -0,0 +1,109 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.provider;
+
+
+import java.util.Collection;
+import java.util.List;
+
+import org.eclipse.emf.common.notify.AdapterFactory;
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.edit.provider.IItemPropertyDescriptor;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IOperation;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IOperation} object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class IOperationItemProvider extends IInterfaceItemItemProvider {
+	/**
+	 * This constructs an instance from a factory and a notifier.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IOperationItemProvider(AdapterFactory adapterFactory) {
+		super(adapterFactory);
+	}
+
+	/**
+	 * This returns the property descriptors for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) {
+		if (itemPropertyDescriptors == null) {
+			super.getPropertyDescriptors(object);
+
+		}
+		return itemPropertyDescriptors;
+	}
+
+	/**
+	 * This returns IOperation.gif.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object getImage(Object object) {
+		return overlayImage(object, getResourceLocator().getImage("full/obj16/IOperation")); //$NON-NLS-1$
+	}
+
+	/**
+	 * This returns the label text for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String getText(Object object) {
+		String label = ((IOperation)object).getDisplayName();
+		return label == null || label.length() == 0 ?
+			getString("_UI_IOperation_type") : //$NON-NLS-1$
+			getString("_UI_IOperation_type") + " " + label; //$NON-NLS-1$ //$NON-NLS-2$
+	}
+	
+
+	/**
+	 * This handles model notifications by calling {@link #updateChildren} to update any cached
+	 * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void notifyChanged(Notification notification) {
+		updateChildren(notification);
+		super.notifyChanged(notification);
+	}
+
+	/**
+	 * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children
+	 * that can be created under this object.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) {
+		super.collectNewChildDescriptors(newChildDescriptors, object);
+	}
+
+}
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/IPackageItemProvider.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/IPackageItemProvider.java
new file mode 100755
index 0000000..f96b95e
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/IPackageItemProvider.java
@@ -0,0 +1,388 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.provider;
+
+
+import java.util.Collection;
+import java.util.List;
+
+import org.eclipse.emf.common.notify.AdapterFactory;
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.ecore.EStructuralFeature;
+
+import org.eclipse.emf.edit.provider.ComposeableAdapterFactory;
+import org.eclipse.emf.edit.provider.IItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.ItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.ViewerNotification;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IPackage;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyFactory;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IPackage} object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class IPackageItemProvider extends IUnitItemProvider {
+	/**
+	 * This constructs an instance from a factory and a notifier.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IPackageItemProvider(AdapterFactory adapterFactory) {
+		super(adapterFactory);
+	}
+
+	/**
+	 * This returns the property descriptors for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) {
+		if (itemPropertyDescriptors == null) {
+			super.getPropertyDescriptors(object);
+
+			addModifiedTimeWeakPropertyDescriptor(object);
+			addIdPropertyDescriptor(object);
+			addUmlDependencyIDPropertyDescriptor(object);
+			addLastIDPropertyDescriptor(object);
+			addMyStatePropertyDescriptor(object);
+			addObjectCreationPropertyDescriptor(object);
+			addStereotypesPropertyDescriptor(object);
+			addNamePropertyDescriptor(object);
+			addCmheaderPropertyDescriptor(object);
+		}
+		return itemPropertyDescriptors;
+	}
+
+	/**
+	 * This adds a property descriptor for the Modified Time Weak feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addModifiedTimeWeakPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IPackage_modifiedTimeWeak_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IPackage_modifiedTimeWeak_feature", "_UI_IPackage_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIPackage_ModifiedTimeWeak(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Id feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addIdPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IPackage_id_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IPackage_id_feature", "_UI_IPackage_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIPackage_Id(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Uml Dependency ID feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addUmlDependencyIDPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IPackage_umlDependencyID_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IPackage_umlDependencyID_feature", "_UI_IPackage_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIPackage_UmlDependencyID(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Last ID feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addLastIDPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IPackage_lastID_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IPackage_lastID_feature", "_UI_IPackage_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIPackage_LastID(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the My State feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addMyStatePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IPackage_myState_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IPackage_myState_feature", "_UI_IPackage_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIPackage_MyState(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Object Creation feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addObjectCreationPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IPackage_objectCreation_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IPackage_objectCreation_feature", "_UI_IPackage_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIPackage_ObjectCreation(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Stereotypes feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addStereotypesPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IPackage_Stereotypes_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IPackage_Stereotypes_feature", "_UI_IPackage_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIPackage_Stereotypes(),
+				 true,
+				 false,
+				 true,
+				 null,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Name feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addNamePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IPackage_name_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IPackage_name_feature", "_UI_IPackage_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIPackage_Name(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Cmheader feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addCmheaderPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IPackage_cmheader_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IPackage_cmheader_feature", "_UI_IPackage_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIPackage_Cmheader(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This specifies how to implement {@link #getChildren} and is used to deduce an appropriate feature for an
+	 * {@link org.eclipse.emf.edit.command.AddCommand}, {@link org.eclipse.emf.edit.command.RemoveCommand} or
+	 * {@link org.eclipse.emf.edit.command.MoveCommand} in {@link #createCommand}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Collection<? extends EStructuralFeature> getChildrenFeatures(Object object) {
+		if (childrenFeatures == null) {
+			super.getChildrenFeatures(object);
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getIPackage_Description());
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getIPackage_Annotations());
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getIPackage_Properties());
+		}
+		return childrenFeatures;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EStructuralFeature getChildFeature(Object object, Object child) {
+		// Check the type of the specified child object and return the proper feature to use for
+		// adding (see {@link AddCommand}) it as a child.
+
+		return super.getChildFeature(object, child);
+	}
+
+	/**
+	 * This returns IPackage.gif.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object getImage(Object object) {
+		return overlayImage(object, getResourceLocator().getImage("full/obj16/IPackage")); //$NON-NLS-1$
+	}
+
+	/**
+	 * This returns the label text for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String getText(Object object) {
+		String label = ((IPackage)object).getName();
+		return label == null || label.length() == 0 ?
+			getString("_UI_IPackage_type") : //$NON-NLS-1$
+			getString("_UI_IPackage_type") + " " + label; //$NON-NLS-1$ //$NON-NLS-2$
+	}
+	
+
+	/**
+	 * This handles model notifications by calling {@link #updateChildren} to update any cached
+	 * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void notifyChanged(Notification notification) {
+		updateChildren(notification);
+
+		switch (notification.getFeatureID(IPackage.class)) {
+			case UMLRpyPackage.IPACKAGE__MODIFIED_TIME_WEAK:
+			case UMLRpyPackage.IPACKAGE__ID:
+			case UMLRpyPackage.IPACKAGE__UML_DEPENDENCY_ID:
+			case UMLRpyPackage.IPACKAGE__LAST_ID:
+			case UMLRpyPackage.IPACKAGE__MY_STATE:
+			case UMLRpyPackage.IPACKAGE__OBJECT_CREATION:
+			case UMLRpyPackage.IPACKAGE__NAME:
+			case UMLRpyPackage.IPACKAGE__CMHEADER:
+				fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), false, true));
+				return;
+			case UMLRpyPackage.IPACKAGE__DESCRIPTION:
+			case UMLRpyPackage.IPACKAGE__ANNOTATIONS:
+			case UMLRpyPackage.IPACKAGE__PROPERTIES:
+				fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), true, false));
+				return;
+		}
+		super.notifyChanged(notification);
+	}
+
+	/**
+	 * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children
+	 * that can be created under this object.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) {
+		super.collectNewChildDescriptors(newChildDescriptors, object);
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIPackage_Description(),
+				 UMLRpyFactory.eINSTANCE.createIDescription()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIPackage_Annotations(),
+				 UMLRpyFactory.eINSTANCE.createIComment()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIPackage_Properties(),
+				 UMLRpyFactory.eINSTANCE.createIPropertyContainer()));
+	}
+
+}
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/IPanelDiagramItemProvider.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/IPanelDiagramItemProvider.java
new file mode 100755
index 0000000..903155b
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/IPanelDiagramItemProvider.java
@@ -0,0 +1,134 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.provider;
+
+
+import java.util.Collection;
+import java.util.List;
+
+import org.eclipse.emf.common.notify.AdapterFactory;
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.edit.provider.IItemPropertyDescriptor;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IPanelDiagram;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IPanelDiagram} object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class IPanelDiagramItemProvider extends IDiagramItemProvider {
+	/**
+	 * This constructs an instance from a factory and a notifier.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IPanelDiagramItemProvider(AdapterFactory adapterFactory) {
+		super(adapterFactory);
+	}
+
+	/**
+	 * This returns the property descriptors for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) {
+		if (itemPropertyDescriptors == null) {
+			super.getPropertyDescriptors(object);
+
+		}
+		return itemPropertyDescriptors;
+	}
+
+	/**
+	 * This returns IPanelDiagram.gif.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object getImage(Object object) {
+		return overlayImage(object, getResourceLocator().getImage("full/obj16/IPanelDiagram")); //$NON-NLS-1$
+	}
+
+	/**
+	 * This returns the label text for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String getText(Object object) {
+		String label = ((IPanelDiagram)object).getName();
+		return label == null || label.length() == 0 ?
+			getString("_UI_IPanelDiagram_type") : //$NON-NLS-1$
+			getString("_UI_IPanelDiagram_type") + " " + label; //$NON-NLS-1$ //$NON-NLS-2$
+	}
+	
+
+	/**
+	 * This handles model notifications by calling {@link #updateChildren} to update any cached
+	 * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void notifyChanged(Notification notification) {
+		updateChildren(notification);
+		super.notifyChanged(notification);
+	}
+
+	/**
+	 * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children
+	 * that can be created under this object.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) {
+		super.collectNewChildDescriptors(newChildDescriptors, object);
+	}
+
+	/**
+	 * This returns the label text for {@link org.eclipse.emf.edit.command.CreateChildCommand}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String getCreateChildText(Object owner, Object feature, Object child, Collection<?> selection) {
+		Object childFeature = feature;
+		Object childObject = child;
+
+		boolean qualify =
+			childFeature == UMLRpyPackage.eINSTANCE.getIDiagram_Stereotypes() ||
+			childFeature == UMLRpyPackage.eINSTANCE.getIDiagram_Annotations() ||
+			childFeature == UMLRpyPackage.eINSTANCE.getIDiagram_HyperLinks();
+
+		if (qualify) {
+			return getString
+				("_UI_CreateChild_text2", //$NON-NLS-1$
+				 new Object[] { getTypeText(childObject), getFeatureText(childFeature), getTypeText(owner) });
+		}
+		return super.getCreateChildText(owner, feature, child, selection);
+	}
+
+}
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/IPartItemProvider.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/IPartItemProvider.java
new file mode 100755
index 0000000..2c4dbe8
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/IPartItemProvider.java
@@ -0,0 +1,840 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.provider;
+
+
+import java.util.Collection;
+import java.util.List;
+
+import org.eclipse.emf.common.notify.AdapterFactory;
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.ecore.EStructuralFeature;
+import org.eclipse.emf.ecore.EcoreFactory;
+import org.eclipse.emf.ecore.EcorePackage;
+import org.eclipse.emf.edit.provider.ComposeableAdapterFactory;
+import org.eclipse.emf.edit.provider.IItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.ItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.ViewerNotification;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IPart;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyFactory;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IPart} object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class IPartItemProvider extends AssociationsTypeItemProvider {
+	/**
+	 * This constructs an instance from a factory and a notifier.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IPartItemProvider(AdapterFactory adapterFactory) {
+		super(adapterFactory);
+	}
+
+	/**
+	 * This returns the property descriptors for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) {
+		if (itemPropertyDescriptors == null) {
+			super.getPropertyDescriptors(object);
+
+			addUmlDependencyIDPropertyDescriptor(object);
+			addObjectCreationPropertyDescriptor(object);
+			addModifiedTimeWeakPropertyDescriptor(object);
+			addIdPropertyDescriptor(object);
+			addMyStatePropertyDescriptor(object);
+			addNamePropertyDescriptor(object);
+			addRequiremenTracabilityHandlePropertyDescriptor(object);
+			addLastIDPropertyDescriptor(object);
+			addMultiplicityPropertyDescriptor(object);
+			addDisplayNamePropertyDescriptor(object);
+			addOtherClassPropertyDescriptor(object);
+			addInversePropertyDescriptor(object);
+			addCodeUpdateCGTimePropertyDescriptor(object);
+			addTheMainDiagramPropertyDescriptor(object);
+		}
+		return itemPropertyDescriptors;
+	}
+
+	/**
+	 * This adds a property descriptor for the Uml Dependency ID feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addUmlDependencyIDPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_M_subjectType_umlDependencyID_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_M_subjectType_umlDependencyID_feature", "_UI_M_subjectType_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getM_subjectType_UmlDependencyID(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Object Creation feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addObjectCreationPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_M_subjectType_objectCreation_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_M_subjectType_objectCreation_feature", "_UI_M_subjectType_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getM_subjectType_ObjectCreation(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Modified Time Weak feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addModifiedTimeWeakPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_ValueType_modifiedTimeWeak_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_ValueType_modifiedTimeWeak_feature", "_UI_ValueType_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getValueType_ModifiedTimeWeak(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Id feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addIdPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_ValueType_id_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_ValueType_id_feature", "_UI_ValueType_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getValueType_Id(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the My State feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addMyStatePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_ValueType_myState_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_ValueType_myState_feature", "_UI_ValueType_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getValueType_MyState(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Name feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addNamePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_ValueType_name_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_ValueType_name_feature", "_UI_ValueType_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getValueType_Name(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Requiremen Tracability Handle feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addRequiremenTracabilityHandlePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_M_hTargetType_requiremenTracabilityHandle_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_M_hTargetType_requiremenTracabilityHandle_feature", "_UI_M_hTargetType_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getM_hTargetType_RequiremenTracabilityHandle(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Last ID feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addLastIDPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_ConveyedType_lastID_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_ConveyedType_lastID_feature", "_UI_ConveyedType_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getConveyedType_LastID(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Multiplicity feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addMultiplicityPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_End2_Type_multiplicity_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_End2_Type_multiplicity_feature", "_UI_End2_Type_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getEnd2_Type_Multiplicity(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Display Name feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addDisplayNamePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IModelElement_displayName_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IModelElement_displayName_feature", "_UI_IModelElement_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIModelElement_DisplayName(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Other Class feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addOtherClassPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IPart_otherClass_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IPart_otherClass_feature", "_UI_IPart_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIPart_OtherClass(),
+				 true,
+				 false,
+				 true,
+				 null,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Inverse feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addInversePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IPart_inverse_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IPart_inverse_feature", "_UI_IPart_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIPart_Inverse(),
+				 true,
+				 false,
+				 true,
+				 null,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Code Update CG Time feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addCodeUpdateCGTimePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IPart_codeUpdateCGTime_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IPart_codeUpdateCGTime_feature", "_UI_IPart_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIPart_CodeUpdateCGTime(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the The Main Diagram feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addTheMainDiagramPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IPart_theMainDiagram_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IPart_theMainDiagram_feature", "_UI_IPart_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIPart_TheMainDiagram(),
+				 true,
+				 false,
+				 true,
+				 null,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This specifies how to implement {@link #getChildren} and is used to deduce an appropriate feature for an
+	 * {@link org.eclipse.emf.edit.command.AddCommand}, {@link org.eclipse.emf.edit.command.RemoveCommand} or
+	 * {@link org.eclipse.emf.edit.command.MoveCommand} in {@link #createCommand}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Collection<? extends EStructuralFeature> getChildrenFeatures(Object object) {
+		if (childrenFeatures == null) {
+			super.getChildrenFeatures(object);
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getM_hTargetType_Description());
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getM_hTargetType_Properties());
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getToLinkType_ImplicitClass());
+			childrenFeatures.add(EcorePackage.Literals.EMODEL_ELEMENT__EANNOTATIONS);
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getIPart_Stereotypes());
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getIPart_Dependencies());
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getIPart_Tags());
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getIPart_InitialCallAction());
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getIPart_Slots());
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getIPart_HyperLinks());
+		}
+		return childrenFeatures;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EStructuralFeature getChildFeature(Object object, Object child) {
+		// Check the type of the specified child object and return the proper feature to use for
+		// adding (see {@link AddCommand}) it as a child.
+
+		return super.getChildFeature(object, child);
+	}
+
+	/**
+	 * This returns IPart.gif.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object getImage(Object object) {
+		return overlayImage(object, getResourceLocator().getImage("full/obj16/IPart")); //$NON-NLS-1$
+	}
+
+	/**
+	 * This returns the label text for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String getText(Object object) {
+		String label = ((IPart)object).getName();
+		return label == null || label.length() == 0 ?
+			getString("_UI_IPart_type") : //$NON-NLS-1$
+			getString("_UI_IPart_type") + " " + label; //$NON-NLS-1$ //$NON-NLS-2$
+	}
+	
+
+	/**
+	 * This handles model notifications by calling {@link #updateChildren} to update any cached
+	 * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void notifyChanged(Notification notification) {
+		updateChildren(notification);
+
+		switch (notification.getFeatureID(IPart.class)) {
+			case UMLRpyPackage.IPART__UML_DEPENDENCY_ID:
+			case UMLRpyPackage.IPART__OBJECT_CREATION:
+			case UMLRpyPackage.IPART__MODIFIED_TIME_WEAK:
+			case UMLRpyPackage.IPART__ID:
+			case UMLRpyPackage.IPART__MY_STATE:
+			case UMLRpyPackage.IPART__NAME:
+			case UMLRpyPackage.IPART__REQUIREMEN_TRACABILITY_HANDLE:
+			case UMLRpyPackage.IPART__LAST_ID:
+			case UMLRpyPackage.IPART__MULTIPLICITY:
+			case UMLRpyPackage.IPART__DISPLAY_NAME:
+			case UMLRpyPackage.IPART__CODE_UPDATE_CG_TIME:
+				fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), false, true));
+				return;
+			case UMLRpyPackage.IPART__DESCRIPTION:
+			case UMLRpyPackage.IPART__PROPERTIES:
+			case UMLRpyPackage.IPART__IMPLICIT_CLASS:
+			case UMLRpyPackage.IPART__EANNOTATIONS:
+			case UMLRpyPackage.IPART__STEREOTYPES:
+			case UMLRpyPackage.IPART__DEPENDENCIES:
+			case UMLRpyPackage.IPART__TAGS:
+			case UMLRpyPackage.IPART__INITIAL_CALL_ACTION:
+			case UMLRpyPackage.IPART__SLOTS:
+			case UMLRpyPackage.IPART__HYPER_LINKS:
+				fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), true, false));
+				return;
+		}
+		super.notifyChanged(notification);
+	}
+
+	/**
+	 * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children
+	 * that can be created under this object.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) {
+		super.collectNewChildDescriptors(newChildDescriptors, object);
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getM_hTargetType_Description(),
+				 UMLRpyFactory.eINSTANCE.createIDescription()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getM_hTargetType_Properties(),
+				 UMLRpyFactory.eINSTANCE.createIPropertyContainer()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getToLinkType_ImplicitClass(),
+				 UMLRpyFactory.eINSTANCE.createIClass()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getToLinkType_ImplicitClass(),
+				 UMLRpyFactory.eINSTANCE.createIAssociationClass()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getToLinkType_ImplicitClass(),
+				 UMLRpyFactory.eINSTANCE.createIStateChart()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(EcorePackage.Literals.EMODEL_ELEMENT__EANNOTATIONS,
+				 EcoreFactory.eINSTANCE.createEAnnotation()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIPart_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIUnit()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIPart_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIClassifier()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIPart_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIActor()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIPart_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIAnnotation()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIPart_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIVariable()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIPart_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIArgument()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIPart_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIClass()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIPart_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIAssociationClass()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIPart_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIAttribute()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIPart_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIPart_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createICollaborationDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIPart_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIComment()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIPart_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIComponent()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIPart_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIComponentDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIPart_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIConstraint()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIPart_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIControlledFile()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIPart_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIDeploymentDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIPart_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIInterfaceItem()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIPart_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIEvent()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIPart_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIEventReception()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIPart_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIFile()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIPart_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIFlowItem()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIPart_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIRelation()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIPart_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIInstance()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIPart_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createILink()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIPart_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIMatrixLayout()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIPart_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIMatrixView()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIPart_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIModule()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIPart_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createINode()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIPart_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIObjectModelDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIPart_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIOperation()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIPart_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIPackage()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIPart_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIPanelDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIPart_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIPort()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIPart_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIProfile()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIPart_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIProject()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIPart_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIRequirement()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIPart_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createISequenceDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIPart_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIStateChart()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIPart_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIStateChartDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIPart_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIStereotype()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIPart_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIStructureDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIPart_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createISysMLPort()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIPart_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createITableLayout()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIPart_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createITableView()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIPart_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createITag()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIPart_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createITemplateParameter()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIPart_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIType()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIPart_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIUseCase()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIPart_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIUseCaseDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIPart_Dependencies(),
+				 UMLRpyFactory.eINSTANCE.createIDependency()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIPart_Dependencies(),
+				 UMLRpyFactory.eINSTANCE.createIHyperLink()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIPart_Tags(),
+				 UMLRpyFactory.eINSTANCE.createITag()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIPart_InitialCallAction(),
+				 UMLRpyFactory.eINSTANCE.createICallAction()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIPart_Slots(),
+				 UMLRpyFactory.eINSTANCE.createISlot()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIPart_HyperLinks(),
+				 UMLRpyFactory.eINSTANCE.createIMHyperLink()));
+	}
+
+	/**
+	 * This returns the label text for {@link org.eclipse.emf.edit.command.CreateChildCommand}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String getCreateChildText(Object owner, Object feature, Object child, Collection<?> selection) {
+		Object childFeature = feature;
+		Object childObject = child;
+
+		boolean qualify =
+			childFeature == UMLRpyPackage.eINSTANCE.getToLinkType_ImplicitClass() ||
+			childFeature == UMLRpyPackage.eINSTANCE.getIPart_Stereotypes() ||
+			childFeature == UMLRpyPackage.eINSTANCE.getIPart_Tags();
+
+		if (qualify) {
+			return getString
+				("_UI_CreateChild_text2", //$NON-NLS-1$
+				 new Object[] { getTypeText(childObject), getFeatureText(childFeature), getTypeText(owner) });
+		}
+		return super.getCreateChildText(owner, feature, child, selection);
+	}
+
+}
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/IPinItemProvider.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/IPinItemProvider.java
new file mode 100755
index 0000000..0193a7f
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/IPinItemProvider.java
@@ -0,0 +1,188 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.provider;
+
+
+import java.util.Collection;
+import java.util.List;
+
+import org.eclipse.emf.common.notify.AdapterFactory;
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.edit.provider.ComposeableAdapterFactory;
+import org.eclipse.emf.edit.provider.IItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.ItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.ViewerNotification;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IPin;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IPin} object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class IPinItemProvider extends IConnectorItemProvider {
+	/**
+	 * This constructs an instance from a factory and a notifier.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IPinItemProvider(AdapterFactory adapterFactory) {
+		super(adapterFactory);
+	}
+
+	/**
+	 * This returns the property descriptors for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) {
+		if (itemPropertyDescriptors == null) {
+			super.getPropertyDescriptors(object);
+
+			addM_typePropertyDescriptor(object);
+			addM_isParameterPinPropertyDescriptor(object);
+			addM_corePinPropertyDescriptor(object);
+		}
+		return itemPropertyDescriptors;
+	}
+
+	/**
+	 * This adds a property descriptor for the Mtype feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_typePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IPin_m_type_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IPin_m_type_feature", "_UI_IPin_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIPin_M_type(),
+				 true,
+				 false,
+				 true,
+				 null,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Mis Parameter Pin feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_isParameterPinPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IPin_m_isParameterPin_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IPin_m_isParameterPin_feature", "_UI_IPin_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIPin_M_isParameterPin(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Mcore Pin feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_corePinPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IPin_m_corePin_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IPin_m_corePin_feature", "_UI_IPin_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIPin_M_corePin(),
+				 true,
+				 false,
+				 true,
+				 null,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This returns IPin.gif.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object getImage(Object object) {
+		return overlayImage(object, getResourceLocator().getImage("full/obj16/IPin")); //$NON-NLS-1$
+	}
+
+	/**
+	 * This returns the label text for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String getText(Object object) {
+		String label = ((IPin)object).getName();
+		return label == null || label.length() == 0 ?
+			getString("_UI_IPin_type") : //$NON-NLS-1$
+			getString("_UI_IPin_type") + " " + label; //$NON-NLS-1$ //$NON-NLS-2$
+	}
+	
+
+	/**
+	 * This handles model notifications by calling {@link #updateChildren} to update any cached
+	 * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void notifyChanged(Notification notification) {
+		updateChildren(notification);
+
+		switch (notification.getFeatureID(IPin.class)) {
+			case UMLRpyPackage.IPIN__MIS_PARAMETER_PIN:
+				fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), false, true));
+				return;
+		}
+		super.notifyChanged(notification);
+	}
+
+	/**
+	 * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children
+	 * that can be created under this object.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) {
+		super.collectNewChildDescriptors(newChildDescriptors, object);
+	}
+
+}
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/IPortItemProvider.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/IPortItemProvider.java
new file mode 100755
index 0000000..c23f698
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/IPortItemProvider.java
@@ -0,0 +1,495 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.provider;
+
+
+import java.util.Collection;
+import java.util.List;
+
+import org.eclipse.emf.common.notify.AdapterFactory;
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.ecore.EStructuralFeature;
+
+import org.eclipse.emf.edit.provider.ComposeableAdapterFactory;
+import org.eclipse.emf.edit.provider.IItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.ItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.ViewerNotification;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IPort;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyFactory;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IPort} object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class IPortItemProvider extends IInstanceItemProvider {
+	/**
+	 * This constructs an instance from a factory and a notifier.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IPortItemProvider(AdapterFactory adapterFactory) {
+		super(adapterFactory);
+	}
+
+	/**
+	 * This returns the property descriptors for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) {
+		if (itemPropertyDescriptors == null) {
+			super.getPropertyDescriptors(object);
+
+			addRequiremenTracabilityHandlePropertyDescriptor(object);
+			addMultiplicityPropertyDescriptor(object);
+			addOtherClassPropertyDescriptor(object);
+			addBehavioralPropertyDescriptor(object);
+			addReversedPropertyDescriptor(object);
+			addObjectCreationPropertyDescriptor(object);
+			addUmlDependencyIDPropertyDescriptor(object);
+			addLastIDPropertyDescriptor(object);
+		}
+		return itemPropertyDescriptors;
+	}
+
+	/**
+	 * This adds a property descriptor for the Requiremen Tracability Handle feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addRequiremenTracabilityHandlePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_M_hTargetType_requiremenTracabilityHandle_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_M_hTargetType_requiremenTracabilityHandle_feature", "_UI_M_hTargetType_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getM_hTargetType_RequiremenTracabilityHandle(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Multiplicity feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addMultiplicityPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_End2_Type_multiplicity_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_End2_Type_multiplicity_feature", "_UI_End2_Type_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getEnd2_Type_Multiplicity(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Other Class feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addOtherClassPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IPort_otherClass_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IPort_otherClass_feature", "_UI_IPort_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIPort_OtherClass(),
+				 true,
+				 false,
+				 true,
+				 null,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Behavioral feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addBehavioralPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IPort_behavioral_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IPort_behavioral_feature", "_UI_IPort_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIPort_Behavioral(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Reversed feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addReversedPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IPort_reversed_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IPort_reversed_feature", "_UI_IPort_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIPort_Reversed(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Object Creation feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addObjectCreationPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IPort_objectCreation_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IPort_objectCreation_feature", "_UI_IPort_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIPort_ObjectCreation(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Uml Dependency ID feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addUmlDependencyIDPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IPort_umlDependencyID_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IPort_umlDependencyID_feature", "_UI_IPort_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIPort_UmlDependencyID(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Last ID feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addLastIDPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IPort_lastID_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IPort_lastID_feature", "_UI_IPort_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIPort_LastID(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This specifies how to implement {@link #getChildren} and is used to deduce an appropriate feature for an
+	 * {@link org.eclipse.emf.edit.command.AddCommand}, {@link org.eclipse.emf.edit.command.RemoveCommand} or
+	 * {@link org.eclipse.emf.edit.command.MoveCommand} in {@link #createCommand}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Collection<? extends EStructuralFeature> getChildrenFeatures(Object object) {
+		if (childrenFeatures == null) {
+			super.getChildrenFeatures(object);
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getM_hTargetType_Description());
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getM_hTargetType_Properties());
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getToLinkType_ImplicitClass());
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getIPort_Stereotypes());
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getIPort_Tags());
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getIPort_Dependencies());
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getIPort_Annotations());
+		}
+		return childrenFeatures;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EStructuralFeature getChildFeature(Object object, Object child) {
+		// Check the type of the specified child object and return the proper feature to use for
+		// adding (see {@link AddCommand}) it as a child.
+
+		return super.getChildFeature(object, child);
+	}
+
+	/**
+	 * This returns IPort.gif.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object getImage(Object object) {
+		return overlayImage(object, getResourceLocator().getImage("full/obj16/IPort")); //$NON-NLS-1$
+	}
+
+	/**
+	 * This returns the label text for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String getText(Object object) {
+		String label = ((IPort)object).getName();
+		return label == null || label.length() == 0 ?
+			getString("_UI_IPort_type") : //$NON-NLS-1$
+			getString("_UI_IPort_type") + " " + label; //$NON-NLS-1$ //$NON-NLS-2$
+	}
+	
+
+	/**
+	 * This handles model notifications by calling {@link #updateChildren} to update any cached
+	 * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void notifyChanged(Notification notification) {
+		updateChildren(notification);
+
+		switch (notification.getFeatureID(IPort.class)) {
+			case UMLRpyPackage.IPORT__REQUIREMEN_TRACABILITY_HANDLE:
+			case UMLRpyPackage.IPORT__MULTIPLICITY:
+			case UMLRpyPackage.IPORT__BEHAVIORAL:
+			case UMLRpyPackage.IPORT__REVERSED:
+			case UMLRpyPackage.IPORT__OBJECT_CREATION:
+			case UMLRpyPackage.IPORT__UML_DEPENDENCY_ID:
+			case UMLRpyPackage.IPORT__LAST_ID:
+				fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), false, true));
+				return;
+			case UMLRpyPackage.IPORT__DESCRIPTION:
+			case UMLRpyPackage.IPORT__PROPERTIES:
+			case UMLRpyPackage.IPORT__IMPLICIT_CLASS:
+			case UMLRpyPackage.IPORT__STEREOTYPES:
+			case UMLRpyPackage.IPORT__TAGS:
+			case UMLRpyPackage.IPORT__DEPENDENCIES:
+			case UMLRpyPackage.IPORT__ANNOTATIONS:
+				fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), true, false));
+				return;
+		}
+		super.notifyChanged(notification);
+	}
+
+	/**
+	 * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children
+	 * that can be created under this object.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) {
+		super.collectNewChildDescriptors(newChildDescriptors, object);
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getM_hTargetType_Description(),
+				 UMLRpyFactory.eINSTANCE.createIDescription()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getM_hTargetType_Properties(),
+				 UMLRpyFactory.eINSTANCE.createIPropertyContainer()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getToLinkType_ImplicitClass(),
+				 UMLRpyFactory.eINSTANCE.createIClass()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getToLinkType_ImplicitClass(),
+				 UMLRpyFactory.eINSTANCE.createIAssociationClass()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getToLinkType_ImplicitClass(),
+				 UMLRpyFactory.eINSTANCE.createIStateChart()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIPort_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIClassifier()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIPort_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIActor()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIPort_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIClass()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIPort_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIAssociationClass()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIPort_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIInterfaceItem()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIPort_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIEvent()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIPort_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIEventReception()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIPort_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIFlowItem()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIPort_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createINode()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIPort_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIOperation()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIPort_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIStateChart()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIPort_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIStereotype()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIPort_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIType()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIPort_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIUseCase()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIPort_Tags(),
+				 UMLRpyFactory.eINSTANCE.createITag()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIPort_Dependencies(),
+				 UMLRpyFactory.eINSTANCE.createIDependency()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIPort_Dependencies(),
+				 UMLRpyFactory.eINSTANCE.createIHyperLink()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIPort_Annotations(),
+				 UMLRpyFactory.eINSTANCE.createIRequirement()));
+	}
+
+	/**
+	 * This returns the label text for {@link org.eclipse.emf.edit.command.CreateChildCommand}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String getCreateChildText(Object owner, Object feature, Object child, Collection<?> selection) {
+		Object childFeature = feature;
+		Object childObject = child;
+
+		boolean qualify =
+			childFeature == UMLRpyPackage.eINSTANCE.getToLinkType_ImplicitClass() ||
+			childFeature == UMLRpyPackage.eINSTANCE.getIPort_Stereotypes();
+
+		if (qualify) {
+			return getString
+				("_UI_CreateChild_text2", //$NON-NLS-1$
+				 new Object[] { getTypeText(childObject), getFeatureText(childFeature), getTypeText(owner) });
+		}
+		return super.getCreateChildText(owner, feature, child, selection);
+	}
+
+}
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/IPrimitiveOperationItemProvider.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/IPrimitiveOperationItemProvider.java
new file mode 100755
index 0000000..0625500
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/IPrimitiveOperationItemProvider.java
@@ -0,0 +1,774 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.provider;
+
+
+import java.util.Collection;
+import java.util.List;
+
+import org.eclipse.emf.common.notify.AdapterFactory;
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.ecore.EStructuralFeature;
+import org.eclipse.emf.ecore.EcoreFactory;
+import org.eclipse.emf.ecore.EcorePackage;
+import org.eclipse.emf.edit.provider.ComposeableAdapterFactory;
+import org.eclipse.emf.edit.provider.IItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.ItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.ViewerNotification;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IPrimitiveOperation;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyFactory;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IPrimitiveOperation} object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class IPrimitiveOperationItemProvider extends OperationsTypeItemProvider {
+	/**
+	 * This constructs an instance from a factory and a notifier.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IPrimitiveOperationItemProvider(AdapterFactory adapterFactory) {
+		super(adapterFactory);
+	}
+
+	/**
+	 * This returns the property descriptors for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) {
+		if (itemPropertyDescriptors == null) {
+			super.getPropertyDescriptors(object);
+
+			addUmlDependencyIDPropertyDescriptor(object);
+			addObjectCreationPropertyDescriptor(object);
+			addModifiedTimeWeakPropertyDescriptor(object);
+			addIdPropertyDescriptor(object);
+			addMyStatePropertyDescriptor(object);
+			addNamePropertyDescriptor(object);
+			addDisplayNamePropertyDescriptor(object);
+			addLastIDPropertyDescriptor(object);
+			addReturnTypePropertyDescriptor(object);
+			addAbstractPropertyDescriptor(object);
+			addFinalPropertyDescriptor(object);
+			addConcurrencyPropertyDescriptor(object);
+			addProtectionPropertyDescriptor(object);
+			addStaticPropertyDescriptor(object);
+			addConstantPropertyDescriptor(object);
+			addRequiremenTracabilityHandlePropertyDescriptor(object);
+			addCodeUpdateCGTimePropertyDescriptor(object);
+		}
+		return itemPropertyDescriptors;
+	}
+
+	/**
+	 * This adds a property descriptor for the Uml Dependency ID feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addUmlDependencyIDPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_M_subjectType_umlDependencyID_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_M_subjectType_umlDependencyID_feature", "_UI_M_subjectType_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getM_subjectType_UmlDependencyID(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Object Creation feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addObjectCreationPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_M_subjectType_objectCreation_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_M_subjectType_objectCreation_feature", "_UI_M_subjectType_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getM_subjectType_ObjectCreation(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Modified Time Weak feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addModifiedTimeWeakPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_ValueType_modifiedTimeWeak_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_ValueType_modifiedTimeWeak_feature", "_UI_ValueType_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getValueType_ModifiedTimeWeak(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Id feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addIdPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_ValueType_id_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_ValueType_id_feature", "_UI_ValueType_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getValueType_Id(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the My State feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addMyStatePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_ValueType_myState_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_ValueType_myState_feature", "_UI_ValueType_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getValueType_MyState(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Name feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addNamePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_ValueType_name_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_ValueType_name_feature", "_UI_ValueType_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getValueType_Name(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Display Name feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addDisplayNamePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IModelElement_displayName_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IModelElement_displayName_feature", "_UI_IModelElement_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIModelElement_DisplayName(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Last ID feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addLastIDPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IPrimitiveOperation_lastID_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IPrimitiveOperation_lastID_feature", "_UI_IPrimitiveOperation_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIPrimitiveOperation_LastID(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Return Type feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addReturnTypePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IPrimitiveOperation_returnType_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IPrimitiveOperation_returnType_feature", "_UI_IPrimitiveOperation_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIPrimitiveOperation_ReturnType(),
+				 true,
+				 false,
+				 true,
+				 null,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Abstract feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addAbstractPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IPrimitiveOperation_abstract_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IPrimitiveOperation_abstract_feature", "_UI_IPrimitiveOperation_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIPrimitiveOperation_Abstract(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Final feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addFinalPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IPrimitiveOperation_final_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IPrimitiveOperation_final_feature", "_UI_IPrimitiveOperation_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIPrimitiveOperation_Final(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Concurrency feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addConcurrencyPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IPrimitiveOperation_concurrency_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IPrimitiveOperation_concurrency_feature", "_UI_IPrimitiveOperation_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIPrimitiveOperation_Concurrency(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Protection feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addProtectionPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IPrimitiveOperation_protection_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IPrimitiveOperation_protection_feature", "_UI_IPrimitiveOperation_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIPrimitiveOperation_Protection(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Static feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addStaticPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IPrimitiveOperation_static_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IPrimitiveOperation_static_feature", "_UI_IPrimitiveOperation_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIPrimitiveOperation_Static(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Constant feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addConstantPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IPrimitiveOperation_constant_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IPrimitiveOperation_constant_feature", "_UI_IPrimitiveOperation_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIPrimitiveOperation_Constant(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Requiremen Tracability Handle feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addRequiremenTracabilityHandlePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IPrimitiveOperation_requiremenTracabilityHandle_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IPrimitiveOperation_requiremenTracabilityHandle_feature", "_UI_IPrimitiveOperation_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIPrimitiveOperation_RequiremenTracabilityHandle(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Code Update CG Time feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addCodeUpdateCGTimePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IPrimitiveOperation_codeUpdateCGTime_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IPrimitiveOperation_codeUpdateCGTime_feature", "_UI_IPrimitiveOperation_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIPrimitiveOperation_CodeUpdateCGTime(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This specifies how to implement {@link #getChildren} and is used to deduce an appropriate feature for an
+	 * {@link org.eclipse.emf.edit.command.AddCommand}, {@link org.eclipse.emf.edit.command.RemoveCommand} or
+	 * {@link org.eclipse.emf.edit.command.MoveCommand} in {@link #createCommand}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Collection<? extends EStructuralFeature> getChildrenFeatures(Object object) {
+		if (childrenFeatures == null) {
+			super.getChildrenFeatures(object);
+			childrenFeatures.add(EcorePackage.Literals.EMODEL_ELEMENT__EANNOTATIONS);
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getIPrimitiveOperation_Properties());
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getIPrimitiveOperation_Args());
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getIPrimitiveOperation_ItsBody());
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getIPrimitiveOperation_Tags());
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getIPrimitiveOperation_Annotations());
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getIPrimitiveOperation_Dependencies());
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getIPrimitiveOperation_Stereotypes());
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getIPrimitiveOperation_MyReturnType());
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getIPrimitiveOperation_Description());
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getIPrimitiveOperation_Declaratives());
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getIPrimitiveOperation_ItsActivityGraph());
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getIPrimitiveOperation_EmbededFiles());
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getIPrimitiveOperation_TemplateParameters());
+		}
+		return childrenFeatures;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EStructuralFeature getChildFeature(Object object, Object child) {
+		// Check the type of the specified child object and return the proper feature to use for
+		// adding (see {@link AddCommand}) it as a child.
+
+		return super.getChildFeature(object, child);
+	}
+
+	/**
+	 * This returns IPrimitiveOperation.gif.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object getImage(Object object) {
+		return overlayImage(object, getResourceLocator().getImage("full/obj16/IPrimitiveOperation")); //$NON-NLS-1$
+	}
+
+	/**
+	 * This returns the label text for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String getText(Object object) {
+		String label = ((IPrimitiveOperation)object).getName();
+		return label == null || label.length() == 0 ?
+			getString("_UI_IPrimitiveOperation_type") : //$NON-NLS-1$
+			getString("_UI_IPrimitiveOperation_type") + " " + label; //$NON-NLS-1$ //$NON-NLS-2$
+	}
+	
+
+	/**
+	 * This handles model notifications by calling {@link #updateChildren} to update any cached
+	 * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void notifyChanged(Notification notification) {
+		updateChildren(notification);
+
+		switch (notification.getFeatureID(IPrimitiveOperation.class)) {
+			case UMLRpyPackage.IPRIMITIVE_OPERATION__UML_DEPENDENCY_ID:
+			case UMLRpyPackage.IPRIMITIVE_OPERATION__OBJECT_CREATION:
+			case UMLRpyPackage.IPRIMITIVE_OPERATION__MODIFIED_TIME_WEAK:
+			case UMLRpyPackage.IPRIMITIVE_OPERATION__ID:
+			case UMLRpyPackage.IPRIMITIVE_OPERATION__MY_STATE:
+			case UMLRpyPackage.IPRIMITIVE_OPERATION__NAME:
+			case UMLRpyPackage.IPRIMITIVE_OPERATION__DISPLAY_NAME:
+			case UMLRpyPackage.IPRIMITIVE_OPERATION__LAST_ID:
+			case UMLRpyPackage.IPRIMITIVE_OPERATION__ABSTRACT:
+			case UMLRpyPackage.IPRIMITIVE_OPERATION__FINAL:
+			case UMLRpyPackage.IPRIMITIVE_OPERATION__CONCURRENCY:
+			case UMLRpyPackage.IPRIMITIVE_OPERATION__PROTECTION:
+			case UMLRpyPackage.IPRIMITIVE_OPERATION__STATIC:
+			case UMLRpyPackage.IPRIMITIVE_OPERATION__CONSTANT:
+			case UMLRpyPackage.IPRIMITIVE_OPERATION__REQUIREMEN_TRACABILITY_HANDLE:
+			case UMLRpyPackage.IPRIMITIVE_OPERATION__CODE_UPDATE_CG_TIME:
+				fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), false, true));
+				return;
+			case UMLRpyPackage.IPRIMITIVE_OPERATION__EANNOTATIONS:
+			case UMLRpyPackage.IPRIMITIVE_OPERATION__PROPERTIES:
+			case UMLRpyPackage.IPRIMITIVE_OPERATION__ARGS:
+			case UMLRpyPackage.IPRIMITIVE_OPERATION__ITS_BODY:
+			case UMLRpyPackage.IPRIMITIVE_OPERATION__TAGS:
+			case UMLRpyPackage.IPRIMITIVE_OPERATION__ANNOTATIONS:
+			case UMLRpyPackage.IPRIMITIVE_OPERATION__DEPENDENCIES:
+			case UMLRpyPackage.IPRIMITIVE_OPERATION__STEREOTYPES:
+			case UMLRpyPackage.IPRIMITIVE_OPERATION__MY_RETURN_TYPE:
+			case UMLRpyPackage.IPRIMITIVE_OPERATION__DESCRIPTION:
+			case UMLRpyPackage.IPRIMITIVE_OPERATION__DECLARATIVES:
+			case UMLRpyPackage.IPRIMITIVE_OPERATION__ITS_ACTIVITY_GRAPH:
+			case UMLRpyPackage.IPRIMITIVE_OPERATION__EMBEDED_FILES:
+			case UMLRpyPackage.IPRIMITIVE_OPERATION__TEMPLATE_PARAMETERS:
+				fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), true, false));
+				return;
+		}
+		super.notifyChanged(notification);
+	}
+
+	/**
+	 * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children
+	 * that can be created under this object.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) {
+		super.collectNewChildDescriptors(newChildDescriptors, object);
+
+		newChildDescriptors.add
+			(createChildParameter
+				(EcorePackage.Literals.EMODEL_ELEMENT__EANNOTATIONS,
+				 EcoreFactory.eINSTANCE.createEAnnotation()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIPrimitiveOperation_Properties(),
+				 UMLRpyFactory.eINSTANCE.createIPropertyContainer()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIPrimitiveOperation_Args(),
+				 UMLRpyFactory.eINSTANCE.createIVariable()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIPrimitiveOperation_Args(),
+				 UMLRpyFactory.eINSTANCE.createIArgument()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIPrimitiveOperation_Args(),
+				 UMLRpyFactory.eINSTANCE.createIAttribute()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIPrimitiveOperation_Args(),
+				 UMLRpyFactory.eINSTANCE.createITag()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIPrimitiveOperation_Args(),
+				 UMLRpyFactory.eINSTANCE.createITemplateParameter()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIPrimitiveOperation_ItsBody(),
+				 UMLRpyFactory.eINSTANCE.createIBody()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIPrimitiveOperation_Tags(),
+				 UMLRpyFactory.eINSTANCE.createITag()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIPrimitiveOperation_Annotations(),
+				 UMLRpyFactory.eINSTANCE.createIComment()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIPrimitiveOperation_Dependencies(),
+				 UMLRpyFactory.eINSTANCE.createIDependency()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIPrimitiveOperation_Dependencies(),
+				 UMLRpyFactory.eINSTANCE.createIHyperLink()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIPrimitiveOperation_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIClassifier()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIPrimitiveOperation_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIActor()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIPrimitiveOperation_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIClass()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIPrimitiveOperation_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIAssociationClass()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIPrimitiveOperation_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIInterfaceItem()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIPrimitiveOperation_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIEvent()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIPrimitiveOperation_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIEventReception()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIPrimitiveOperation_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIFlowItem()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIPrimitiveOperation_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createINode()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIPrimitiveOperation_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIOperation()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIPrimitiveOperation_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIStateChart()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIPrimitiveOperation_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIStereotype()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIPrimitiveOperation_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIType()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIPrimitiveOperation_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIUseCase()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIPrimitiveOperation_MyReturnType(),
+				 UMLRpyFactory.eINSTANCE.createIType()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIPrimitiveOperation_Description(),
+				 UMLRpyFactory.eINSTANCE.createIDescription()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIPrimitiveOperation_Declaratives(),
+				 UMLRpyFactory.eINSTANCE.createIMSC()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIPrimitiveOperation_ItsActivityGraph(),
+				 UMLRpyFactory.eINSTANCE.createIActivityGraph()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIPrimitiveOperation_EmbededFiles(),
+				 UMLRpyFactory.eINSTANCE.createIEmbededFile()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIPrimitiveOperation_TemplateParameters(),
+				 UMLRpyFactory.eINSTANCE.createITemplateParameter()));
+	}
+
+	/**
+	 * This returns the label text for {@link org.eclipse.emf.edit.command.CreateChildCommand}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String getCreateChildText(Object owner, Object feature, Object child, Collection<?> selection) {
+		Object childFeature = feature;
+		Object childObject = child;
+
+		boolean qualify =
+			childFeature == UMLRpyPackage.eINSTANCE.getIPrimitiveOperation_Args() ||
+			childFeature == UMLRpyPackage.eINSTANCE.getIPrimitiveOperation_Tags() ||
+			childFeature == UMLRpyPackage.eINSTANCE.getIPrimitiveOperation_TemplateParameters() ||
+			childFeature == UMLRpyPackage.eINSTANCE.getIPrimitiveOperation_Stereotypes() ||
+			childFeature == UMLRpyPackage.eINSTANCE.getIPrimitiveOperation_MyReturnType();
+
+		if (qualify) {
+			return getString
+				("_UI_CreateChild_text2", //$NON-NLS-1$
+				 new Object[] { getTypeText(childObject), getFeatureText(childFeature), getTypeText(owner) });
+		}
+		return super.getCreateChildText(owner, feature, child, selection);
+	}
+
+}
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/IProfileItemProvider.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/IProfileItemProvider.java
new file mode 100755
index 0000000..f99df4f
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/IProfileItemProvider.java
@@ -0,0 +1,464 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.provider;
+
+
+import java.util.Collection;
+import java.util.List;
+
+import org.eclipse.emf.common.notify.AdapterFactory;
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.ecore.EStructuralFeature;
+
+import org.eclipse.emf.edit.provider.ComposeableAdapterFactory;
+import org.eclipse.emf.edit.provider.IItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.ItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.ViewerNotification;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IProfile;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyFactory;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IProfile} object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class IProfileItemProvider extends IPackageItemProvider {
+	/**
+	 * This constructs an instance from a factory and a notifier.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IProfileItemProvider(AdapterFactory adapterFactory) {
+		super(adapterFactory);
+	}
+
+	/**
+	 * This returns the property descriptors for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) {
+		if (itemPropertyDescriptors == null) {
+			super.getPropertyDescriptors(object);
+
+			addWeakCGTimePropertyDescriptor(object);
+			addStrongCGTimePropertyDescriptor(object);
+			addDefaultCompositePropertyDescriptor(object);
+			addEventsBaseIDPropertyDescriptor(object);
+			addConfigurationRelatedTimePropertyDescriptor(object);
+			addLicensePropertyDescriptor(object);
+		}
+		return itemPropertyDescriptors;
+	}
+
+	/**
+	 * This adds a property descriptor for the Weak CG Time feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addWeakCGTimePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_OwnerHandleType_weakCGTime_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_OwnerHandleType_weakCGTime_feature", "_UI_OwnerHandleType_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getOwnerHandleType_WeakCGTime(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Strong CG Time feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addStrongCGTimePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_OwnerHandleType_strongCGTime_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_OwnerHandleType_strongCGTime_feature", "_UI_OwnerHandleType_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getOwnerHandleType_StrongCGTime(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Default Composite feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addDefaultCompositePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IProfile_defaultComposite_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IProfile_defaultComposite_feature", "_UI_IProfile_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIProfile_DefaultComposite(),
+				 true,
+				 false,
+				 true,
+				 null,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Events Base ID feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addEventsBaseIDPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IProfile_eventsBaseID_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IProfile_eventsBaseID_feature", "_UI_IProfile_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIProfile_EventsBaseID(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Configuration Related Time feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addConfigurationRelatedTimePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IProfile_configurationRelatedTime_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IProfile_configurationRelatedTime_feature", "_UI_IProfile_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIProfile_ConfigurationRelatedTime(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the License feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addLicensePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IProfile_license_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IProfile_license_feature", "_UI_IProfile_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIProfile_License(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This specifies how to implement {@link #getChildren} and is used to deduce an appropriate feature for an
+	 * {@link org.eclipse.emf.edit.command.AddCommand}, {@link org.eclipse.emf.edit.command.RemoveCommand} or
+	 * {@link org.eclipse.emf.edit.command.MoveCommand} in {@link #createCommand}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Collection<? extends EStructuralFeature> getChildrenFeatures(Object object) {
+		if (childrenFeatures == null) {
+			super.getChildrenFeatures(object);
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getIProfile_Declaratives());
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getIProfile_Classes());
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getIProfile_Tags());
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getIProfile_Types());
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getIProfile_MatrixLayouts());
+		}
+		return childrenFeatures;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EStructuralFeature getChildFeature(Object object, Object child) {
+		// Check the type of the specified child object and return the proper feature to use for
+		// adding (see {@link AddCommand}) it as a child.
+
+		return super.getChildFeature(object, child);
+	}
+
+	/**
+	 * This returns IProfile.gif.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object getImage(Object object) {
+		return overlayImage(object, getResourceLocator().getImage("full/obj16/IProfile")); //$NON-NLS-1$
+	}
+
+	/**
+	 * This returns the label text for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String getText(Object object) {
+		String label = ((IProfile)object).getName();
+		return label == null || label.length() == 0 ?
+			getString("_UI_IProfile_type") : //$NON-NLS-1$
+			getString("_UI_IProfile_type") + " " + label; //$NON-NLS-1$ //$NON-NLS-2$
+	}
+	
+
+	/**
+	 * This handles model notifications by calling {@link #updateChildren} to update any cached
+	 * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void notifyChanged(Notification notification) {
+		updateChildren(notification);
+
+		switch (notification.getFeatureID(IProfile.class)) {
+			case UMLRpyPackage.IPROFILE__WEAK_CG_TIME:
+			case UMLRpyPackage.IPROFILE__STRONG_CG_TIME:
+			case UMLRpyPackage.IPROFILE__EVENTS_BASE_ID:
+			case UMLRpyPackage.IPROFILE__CONFIGURATION_RELATED_TIME:
+			case UMLRpyPackage.IPROFILE__LICENSE:
+				fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), false, true));
+				return;
+			case UMLRpyPackage.IPROFILE__DECLARATIVES:
+			case UMLRpyPackage.IPROFILE__CLASSES:
+			case UMLRpyPackage.IPROFILE__TAGS:
+			case UMLRpyPackage.IPROFILE__TYPES:
+			case UMLRpyPackage.IPROFILE__MATRIX_LAYOUTS:
+				fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), true, false));
+				return;
+		}
+		super.notifyChanged(notification);
+	}
+
+	/**
+	 * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children
+	 * that can be created under this object.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) {
+		super.collectNewChildDescriptors(newChildDescriptors, object);
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIProfile_Declaratives(),
+				 UMLRpyFactory.eINSTANCE.createIClass()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIProfile_Declaratives(),
+				 UMLRpyFactory.eINSTANCE.createIAssociationClass()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIProfile_Declaratives(),
+				 UMLRpyFactory.eINSTANCE.createIDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIProfile_Declaratives(),
+				 UMLRpyFactory.eINSTANCE.createICollaborationDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIProfile_Declaratives(),
+				 UMLRpyFactory.eINSTANCE.createIComponent()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIProfile_Declaratives(),
+				 UMLRpyFactory.eINSTANCE.createIComponentDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIProfile_Declaratives(),
+				 UMLRpyFactory.eINSTANCE.createIDeploymentDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIProfile_Declaratives(),
+				 UMLRpyFactory.eINSTANCE.createIInformationFlow()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIProfile_Declaratives(),
+				 UMLRpyFactory.eINSTANCE.createIInformationItem()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIProfile_Declaratives(),
+				 UMLRpyFactory.eINSTANCE.createIMSC()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIProfile_Declaratives(),
+				 UMLRpyFactory.eINSTANCE.createIObjectModelDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIProfile_Declaratives(),
+				 UMLRpyFactory.eINSTANCE.createIPanelDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIProfile_Declaratives(),
+				 UMLRpyFactory.eINSTANCE.createISequenceDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIProfile_Declaratives(),
+				 UMLRpyFactory.eINSTANCE.createIStateChart()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIProfile_Declaratives(),
+				 UMLRpyFactory.eINSTANCE.createIStateChartDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIProfile_Declaratives(),
+				 UMLRpyFactory.eINSTANCE.createIStereotype()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIProfile_Declaratives(),
+				 UMLRpyFactory.eINSTANCE.createIStructureDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIProfile_Declaratives(),
+				 UMLRpyFactory.eINSTANCE.createISubsystem()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIProfile_Declaratives(),
+				 UMLRpyFactory.eINSTANCE.createIType()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIProfile_Declaratives(),
+				 UMLRpyFactory.eINSTANCE.createIUCDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIProfile_Declaratives(),
+				 UMLRpyFactory.eINSTANCE.createIUseCaseDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIProfile_Classes(),
+				 UMLRpyFactory.eINSTANCE.createIClass()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIProfile_Classes(),
+				 UMLRpyFactory.eINSTANCE.createIAssociationClass()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIProfile_Classes(),
+				 UMLRpyFactory.eINSTANCE.createIStateChart()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIProfile_Tags(),
+				 UMLRpyFactory.eINSTANCE.createITag()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIProfile_Types(),
+				 UMLRpyFactory.eINSTANCE.createIType()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIProfile_MatrixLayouts(),
+				 UMLRpyFactory.eINSTANCE.createIMatrixLayout()));
+	}
+
+	/**
+	 * This returns the label text for {@link org.eclipse.emf.edit.command.CreateChildCommand}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String getCreateChildText(Object owner, Object feature, Object child, Collection<?> selection) {
+		Object childFeature = feature;
+		Object childObject = child;
+
+		boolean qualify =
+			childFeature == UMLRpyPackage.eINSTANCE.getIProfile_Declaratives() ||
+			childFeature == UMLRpyPackage.eINSTANCE.getIProfile_Classes() ||
+			childFeature == UMLRpyPackage.eINSTANCE.getIProfile_Types();
+
+		if (qualify) {
+			return getString
+				("_UI_CreateChild_text2", //$NON-NLS-1$
+				 new Object[] { getTypeText(childObject), getFeatureText(childFeature), getTypeText(owner) });
+		}
+		return super.getCreateChildText(owner, feature, child, selection);
+	}
+
+}
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/IProjectItemProvider.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/IProjectItemProvider.java
new file mode 100755
index 0000000..2750e61
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/IProjectItemProvider.java
@@ -0,0 +1,1550 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.provider;
+
+
+import java.util.Collection;
+import java.util.List;
+
+import org.eclipse.emf.common.notify.AdapterFactory;
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.ecore.EStructuralFeature;
+
+import org.eclipse.emf.edit.provider.ComposeableAdapterFactory;
+import org.eclipse.emf.edit.provider.IItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.ItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.ViewerNotification;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IProject;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyFactory;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IProject} object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class IProjectItemProvider extends IPackageItemProvider {
+	/**
+	 * This constructs an instance from a factory and a notifier.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IProjectItemProvider(AdapterFactory adapterFactory) {
+		super(adapterFactory);
+	}
+
+	/**
+	 * This returns the property descriptors for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) {
+		if (itemPropertyDescriptors == null) {
+			super.getPropertyDescriptors(object);
+
+			addUserColorsPropertyDescriptor(object);
+			addDefaultSubsystemPropertyDescriptor(object);
+			addComponentPropertyDescriptor(object);
+			addUnitSccProjNamePropertyDescriptor(object);
+			addUnitSccProjPathPropertyDescriptor(object);
+			addCodeUpdateCGTimePropertyDescriptor(object);
+			addVersionPropertyDescriptor(object);
+		}
+		return itemPropertyDescriptors;
+	}
+
+	/**
+	 * This adds a property descriptor for the User Colors feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addUserColorsPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IProject_UserColors_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IProject_UserColors_feature", "_UI_IProject_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIProject_UserColors(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Default Subsystem feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addDefaultSubsystemPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IProject_defaultSubsystem_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IProject_defaultSubsystem_feature", "_UI_IProject_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIProject_DefaultSubsystem(),
+				 true,
+				 false,
+				 true,
+				 null,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Component feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addComponentPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IProject_component_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IProject_component_feature", "_UI_IProject_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIProject_Component(),
+				 true,
+				 false,
+				 true,
+				 null,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Unit Scc Proj Name feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addUnitSccProjNamePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IProject_unitSccProjName_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IProject_unitSccProjName_feature", "_UI_IProject_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIProject_UnitSccProjName(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Unit Scc Proj Path feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addUnitSccProjPathPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IProject_unitSccProjPath_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IProject_unitSccProjPath_feature", "_UI_IProject_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIProject_UnitSccProjPath(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Code Update CG Time feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addCodeUpdateCGTimePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IProject_codeUpdateCGTime_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IProject_codeUpdateCGTime_feature", "_UI_IProject_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIProject_CodeUpdateCGTime(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Version feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addVersionPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IProject_version_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IProject_version_feature", "_UI_IProject_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIProject_Version(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This specifies how to implement {@link #getChildren} and is used to deduce an appropriate feature for an
+	 * {@link org.eclipse.emf.edit.command.AddCommand}, {@link org.eclipse.emf.edit.command.RemoveCommand} or
+	 * {@link org.eclipse.emf.edit.command.MoveCommand} in {@link #createCommand}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Collection<? extends EStructuralFeature> getChildrenFeatures(Object object) {
+		if (childrenFeatures == null) {
+			super.getChildrenFeatures(object);
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getIProject_Multiplicities());
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getIProject_Subsystems());
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getIProject_Diagrams());
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getIProject_Components());
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getIProject_PanelDiagrams());
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getIProject_HyperLinks());
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getIProject_MSCS());
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getIProject_UCDiagrams());
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getIProject_CollaborationDiagrams());
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getIProject_Declaratives());
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getIProject_ComponentDiagrams());
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getIProject_Dependencies());
+		}
+		return childrenFeatures;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EStructuralFeature getChildFeature(Object object, Object child) {
+		// Check the type of the specified child object and return the proper feature to use for
+		// adding (see {@link AddCommand}) it as a child.
+
+		return super.getChildFeature(object, child);
+	}
+
+	/**
+	 * This returns IProject.gif.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object getImage(Object object) {
+		return overlayImage(object, getResourceLocator().getImage("full/obj16/IProject")); //$NON-NLS-1$
+	}
+
+	/**
+	 * This returns the label text for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String getText(Object object) {
+		String label = ((IProject)object).getName();
+		return label == null || label.length() == 0 ?
+			getString("_UI_IProject_type") : //$NON-NLS-1$
+			getString("_UI_IProject_type") + " " + label; //$NON-NLS-1$ //$NON-NLS-2$
+	}
+	
+
+	/**
+	 * This handles model notifications by calling {@link #updateChildren} to update any cached
+	 * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void notifyChanged(Notification notification) {
+		updateChildren(notification);
+
+		switch (notification.getFeatureID(IProject.class)) {
+			case UMLRpyPackage.IPROJECT__USER_COLORS:
+			case UMLRpyPackage.IPROJECT__UNIT_SCC_PROJ_NAME:
+			case UMLRpyPackage.IPROJECT__UNIT_SCC_PROJ_PATH:
+			case UMLRpyPackage.IPROJECT__CODE_UPDATE_CG_TIME:
+			case UMLRpyPackage.IPROJECT__VERSION:
+				fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), false, true));
+				return;
+			case UMLRpyPackage.IPROJECT__MULTIPLICITIES:
+			case UMLRpyPackage.IPROJECT__SUBSYSTEMS:
+			case UMLRpyPackage.IPROJECT__DIAGRAMS:
+			case UMLRpyPackage.IPROJECT__COMPONENTS:
+			case UMLRpyPackage.IPROJECT__PANEL_DIAGRAMS:
+			case UMLRpyPackage.IPROJECT__HYPER_LINKS:
+			case UMLRpyPackage.IPROJECT__MSCS:
+			case UMLRpyPackage.IPROJECT__UC_DIAGRAMS:
+			case UMLRpyPackage.IPROJECT__COLLABORATION_DIAGRAMS:
+			case UMLRpyPackage.IPROJECT__DECLARATIVES:
+			case UMLRpyPackage.IPROJECT__COMPONENT_DIAGRAMS:
+			case UMLRpyPackage.IPROJECT__DEPENDENCIES:
+				fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), true, false));
+				return;
+		}
+		super.notifyChanged(notification);
+	}
+
+	/**
+	 * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children
+	 * that can be created under this object.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) {
+		super.collectNewChildDescriptors(newChildDescriptors, object);
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIProject_Multiplicities(),
+				 UMLRpyFactory.eINSTANCE.createIMultiplicityItem()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIProject_Subsystems(),
+				 UMLRpyFactory.eINSTANCE.createIComponent()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIProject_Subsystems(),
+				 UMLRpyFactory.eINSTANCE.createIProfile()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIProject_Subsystems(),
+				 UMLRpyFactory.eINSTANCE.createISubsystem()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIProject_Diagrams(),
+				 UMLRpyFactory.eINSTANCE.createIModelElement()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIProject_Diagrams(),
+				 UMLRpyFactory.eINSTANCE.createIStateVertex()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIProject_Diagrams(),
+				 UMLRpyFactory.eINSTANCE.createIState()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIProject_Diagrams(),
+				 UMLRpyFactory.eINSTANCE.createIAcceptEventAction()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIProject_Diagrams(),
+				 UMLRpyFactory.eINSTANCE.createIAcceptTimeEvent()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIProject_Diagrams(),
+				 UMLRpyFactory.eINSTANCE.createIAction()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIProject_Diagrams(),
+				 UMLRpyFactory.eINSTANCE.createIActivityGraph()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIProject_Diagrams(),
+				 UMLRpyFactory.eINSTANCE.createIUnit()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIProject_Diagrams(),
+				 UMLRpyFactory.eINSTANCE.createIClassifier()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIProject_Diagrams(),
+				 UMLRpyFactory.eINSTANCE.createIActor()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIProject_Diagrams(),
+				 UMLRpyFactory.eINSTANCE.createIAnnotation()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIProject_Diagrams(),
+				 UMLRpyFactory.eINSTANCE.createIVariable()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIProject_Diagrams(),
+				 UMLRpyFactory.eINSTANCE.createIArgument()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIProject_Diagrams(),
+				 UMLRpyFactory.eINSTANCE.createIClass()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIProject_Diagrams(),
+				 UMLRpyFactory.eINSTANCE.createIAssociationClass()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIProject_Diagrams(),
+				 UMLRpyFactory.eINSTANCE.createIAssociationEnd()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIProject_Diagrams(),
+				 UMLRpyFactory.eINSTANCE.createIAssociationRole()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIProject_Diagrams(),
+				 UMLRpyFactory.eINSTANCE.createIAttribute()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIProject_Diagrams(),
+				 UMLRpyFactory.eINSTANCE.createICallOperation()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIProject_Diagrams(),
+				 UMLRpyFactory.eINSTANCE.createIClassifierRole()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIProject_Diagrams(),
+				 UMLRpyFactory.eINSTANCE.createICollaboration()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIProject_Diagrams(),
+				 UMLRpyFactory.eINSTANCE.createIDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIProject_Diagrams(),
+				 UMLRpyFactory.eINSTANCE.createICollaborationDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIProject_Diagrams(),
+				 UMLRpyFactory.eINSTANCE.createIComment()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIProject_Diagrams(),
+				 UMLRpyFactory.eINSTANCE.createIComponent()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIProject_Diagrams(),
+				 UMLRpyFactory.eINSTANCE.createIComponentDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIProject_Diagrams(),
+				 UMLRpyFactory.eINSTANCE.createIComponentInstance()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIProject_Diagrams(),
+				 UMLRpyFactory.eINSTANCE.createIConfiguration()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIProject_Diagrams(),
+				 UMLRpyFactory.eINSTANCE.createIConnector()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIProject_Diagrams(),
+				 UMLRpyFactory.eINSTANCE.createIConstraint()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIProject_Diagrams(),
+				 UMLRpyFactory.eINSTANCE.createIValueSpecification()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIProject_Diagrams(),
+				 UMLRpyFactory.eINSTANCE.createIContextSpecification()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIProject_Diagrams(),
+				 UMLRpyFactory.eINSTANCE.createIControlledFile()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIProject_Diagrams(),
+				 UMLRpyFactory.eINSTANCE.createIDependency()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIProject_Diagrams(),
+				 UMLRpyFactory.eINSTANCE.createIDeploymentDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIProject_Diagrams(),
+				 UMLRpyFactory.eINSTANCE.createIEnumerationLiteral()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIProject_Diagrams(),
+				 UMLRpyFactory.eINSTANCE.createIInterfaceItem()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIProject_Diagrams(),
+				 UMLRpyFactory.eINSTANCE.createIEvent()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIProject_Diagrams(),
+				 UMLRpyFactory.eINSTANCE.createIEventReception()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIProject_Diagrams(),
+				 UMLRpyFactory.eINSTANCE.createIExecutionOccurrence()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIProject_Diagrams(),
+				 UMLRpyFactory.eINSTANCE.createIExternalHyperlink()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIProject_Diagrams(),
+				 UMLRpyFactory.eINSTANCE.createIFile()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIProject_Diagrams(),
+				 UMLRpyFactory.eINSTANCE.createIFileFragment()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIProject_Diagrams(),
+				 UMLRpyFactory.eINSTANCE.createIFlow()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIProject_Diagrams(),
+				 UMLRpyFactory.eINSTANCE.createIFlowItem()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIProject_Diagrams(),
+				 UMLRpyFactory.eINSTANCE.createIGeneralization()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIProject_Diagrams(),
+				 UMLRpyFactory.eINSTANCE.createIGuard()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIProject_Diagrams(),
+				 UMLRpyFactory.eINSTANCE.createIHyperLink()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIProject_Diagrams(),
+				 UMLRpyFactory.eINSTANCE.createIInformationFlow()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIProject_Diagrams(),
+				 UMLRpyFactory.eINSTANCE.createIRelation()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIProject_Diagrams(),
+				 UMLRpyFactory.eINSTANCE.createIInstance()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIProject_Diagrams(),
+				 UMLRpyFactory.eINSTANCE.createIInstanceSlot()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIProject_Diagrams(),
+				 UMLRpyFactory.eINSTANCE.createIInstanceSpecification()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIProject_Diagrams(),
+				 UMLRpyFactory.eINSTANCE.createIInstanceValue()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIProject_Diagrams(),
+				 UMLRpyFactory.eINSTANCE.createIInteractionOccurrence()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIProject_Diagrams(),
+				 UMLRpyFactory.eINSTANCE.createIInteractionOperand()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIProject_Diagrams(),
+				 UMLRpyFactory.eINSTANCE.createIInteractionOperator()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIProject_Diagrams(),
+				 UMLRpyFactory.eINSTANCE.createIInternalHyperlink()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIProject_Diagrams(),
+				 UMLRpyFactory.eINSTANCE.createILink()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIProject_Diagrams(),
+				 UMLRpyFactory.eINSTANCE.createILiteralSpecification()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIProject_Diagrams(),
+				 UMLRpyFactory.eINSTANCE.createIMHyperLink()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIProject_Diagrams(),
+				 UMLRpyFactory.eINSTANCE.createIMatrixLayout()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIProject_Diagrams(),
+				 UMLRpyFactory.eINSTANCE.createIMatrixView()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIProject_Diagrams(),
+				 UMLRpyFactory.eINSTANCE.createIMessage()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIProject_Diagrams(),
+				 UMLRpyFactory.eINSTANCE.createIMessagePoint()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIProject_Diagrams(),
+				 UMLRpyFactory.eINSTANCE.createIModule()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIProject_Diagrams(),
+				 UMLRpyFactory.eINSTANCE.createINode()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIProject_Diagrams(),
+				 UMLRpyFactory.eINSTANCE.createIObjectLink()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIProject_Diagrams(),
+				 UMLRpyFactory.eINSTANCE.createIObjectModelDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIProject_Diagrams(),
+				 UMLRpyFactory.eINSTANCE.createIObjectNode()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIProject_Diagrams(),
+				 UMLRpyFactory.eINSTANCE.createIOperation()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIProject_Diagrams(),
+				 UMLRpyFactory.eINSTANCE.createIPackage()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIProject_Diagrams(),
+				 UMLRpyFactory.eINSTANCE.createIPanelDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIProject_Diagrams(),
+				 UMLRpyFactory.eINSTANCE.createIPart()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIProject_Diagrams(),
+				 UMLRpyFactory.eINSTANCE.createIPin()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIProject_Diagrams(),
+				 UMLRpyFactory.eINSTANCE.createIPort()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIProject_Diagrams(),
+				 UMLRpyFactory.eINSTANCE.createIPrimitiveOperation()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIProject_Diagrams(),
+				 UMLRpyFactory.eINSTANCE.createIProfile()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIProject_Diagrams(),
+				 UMLRpyFactory.eINSTANCE.createIProject()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIProject_Diagrams(),
+				 UMLRpyFactory.eINSTANCE.createIRequirement()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIProject_Diagrams(),
+				 UMLRpyFactory.eINSTANCE.createISendAction()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIProject_Diagrams(),
+				 UMLRpyFactory.eINSTANCE.createISequenceDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIProject_Diagrams(),
+				 UMLRpyFactory.eINSTANCE.createIStateChart()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIProject_Diagrams(),
+				 UMLRpyFactory.eINSTANCE.createIStateChartDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIProject_Diagrams(),
+				 UMLRpyFactory.eINSTANCE.createIStereotype()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIProject_Diagrams(),
+				 UMLRpyFactory.eINSTANCE.createIStructureDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIProject_Diagrams(),
+				 UMLRpyFactory.eINSTANCE.createISubsystem()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIProject_Diagrams(),
+				 UMLRpyFactory.eINSTANCE.createISwimlane()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIProject_Diagrams(),
+				 UMLRpyFactory.eINSTANCE.createISysMLPort()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIProject_Diagrams(),
+				 UMLRpyFactory.eINSTANCE.createITableLayout()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIProject_Diagrams(),
+				 UMLRpyFactory.eINSTANCE.createITableView()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIProject_Diagrams(),
+				 UMLRpyFactory.eINSTANCE.createITag()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIProject_Diagrams(),
+				 UMLRpyFactory.eINSTANCE.createITemplateInstantiation()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIProject_Diagrams(),
+				 UMLRpyFactory.eINSTANCE.createITemplateInstantiationParameter()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIProject_Diagrams(),
+				 UMLRpyFactory.eINSTANCE.createITemplateParameter()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIProject_Diagrams(),
+				 UMLRpyFactory.eINSTANCE.createITransition()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIProject_Diagrams(),
+				 UMLRpyFactory.eINSTANCE.createITrigger()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIProject_Diagrams(),
+				 UMLRpyFactory.eINSTANCE.createITriggered()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIProject_Diagrams(),
+				 UMLRpyFactory.eINSTANCE.createIType()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIProject_Diagrams(),
+				 UMLRpyFactory.eINSTANCE.createIUseCase()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIProject_Diagrams(),
+				 UMLRpyFactory.eINSTANCE.createIUseCaseDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIProject_Components(),
+				 UMLRpyFactory.eINSTANCE.createIModelElement()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIProject_Components(),
+				 UMLRpyFactory.eINSTANCE.createIStateVertex()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIProject_Components(),
+				 UMLRpyFactory.eINSTANCE.createIState()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIProject_Components(),
+				 UMLRpyFactory.eINSTANCE.createIAcceptEventAction()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIProject_Components(),
+				 UMLRpyFactory.eINSTANCE.createIAcceptTimeEvent()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIProject_Components(),
+				 UMLRpyFactory.eINSTANCE.createIAction()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIProject_Components(),
+				 UMLRpyFactory.eINSTANCE.createIActivityGraph()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIProject_Components(),
+				 UMLRpyFactory.eINSTANCE.createIUnit()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIProject_Components(),
+				 UMLRpyFactory.eINSTANCE.createIClassifier()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIProject_Components(),
+				 UMLRpyFactory.eINSTANCE.createIActor()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIProject_Components(),
+				 UMLRpyFactory.eINSTANCE.createIAnnotation()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIProject_Components(),
+				 UMLRpyFactory.eINSTANCE.createIVariable()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIProject_Components(),
+				 UMLRpyFactory.eINSTANCE.createIArgument()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIProject_Components(),
+				 UMLRpyFactory.eINSTANCE.createIClass()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIProject_Components(),
+				 UMLRpyFactory.eINSTANCE.createIAssociationClass()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIProject_Components(),
+				 UMLRpyFactory.eINSTANCE.createIAssociationEnd()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIProject_Components(),
+				 UMLRpyFactory.eINSTANCE.createIAssociationRole()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIProject_Components(),
+				 UMLRpyFactory.eINSTANCE.createIAttribute()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIProject_Components(),
+				 UMLRpyFactory.eINSTANCE.createICallOperation()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIProject_Components(),
+				 UMLRpyFactory.eINSTANCE.createIClassifierRole()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIProject_Components(),
+				 UMLRpyFactory.eINSTANCE.createICollaboration()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIProject_Components(),
+				 UMLRpyFactory.eINSTANCE.createIDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIProject_Components(),
+				 UMLRpyFactory.eINSTANCE.createICollaborationDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIProject_Components(),
+				 UMLRpyFactory.eINSTANCE.createIComment()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIProject_Components(),
+				 UMLRpyFactory.eINSTANCE.createIComponent()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIProject_Components(),
+				 UMLRpyFactory.eINSTANCE.createIComponentDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIProject_Components(),
+				 UMLRpyFactory.eINSTANCE.createIComponentInstance()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIProject_Components(),
+				 UMLRpyFactory.eINSTANCE.createIConfiguration()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIProject_Components(),
+				 UMLRpyFactory.eINSTANCE.createIConnector()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIProject_Components(),
+				 UMLRpyFactory.eINSTANCE.createIConstraint()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIProject_Components(),
+				 UMLRpyFactory.eINSTANCE.createIValueSpecification()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIProject_Components(),
+				 UMLRpyFactory.eINSTANCE.createIContextSpecification()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIProject_Components(),
+				 UMLRpyFactory.eINSTANCE.createIControlledFile()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIProject_Components(),
+				 UMLRpyFactory.eINSTANCE.createIDependency()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIProject_Components(),
+				 UMLRpyFactory.eINSTANCE.createIDeploymentDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIProject_Components(),
+				 UMLRpyFactory.eINSTANCE.createIEnumerationLiteral()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIProject_Components(),
+				 UMLRpyFactory.eINSTANCE.createIInterfaceItem()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIProject_Components(),
+				 UMLRpyFactory.eINSTANCE.createIEvent()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIProject_Components(),
+				 UMLRpyFactory.eINSTANCE.createIEventReception()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIProject_Components(),
+				 UMLRpyFactory.eINSTANCE.createIExecutionOccurrence()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIProject_Components(),
+				 UMLRpyFactory.eINSTANCE.createIExternalHyperlink()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIProject_Components(),
+				 UMLRpyFactory.eINSTANCE.createIFile()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIProject_Components(),
+				 UMLRpyFactory.eINSTANCE.createIFileFragment()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIProject_Components(),
+				 UMLRpyFactory.eINSTANCE.createIFlow()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIProject_Components(),
+				 UMLRpyFactory.eINSTANCE.createIFlowItem()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIProject_Components(),
+				 UMLRpyFactory.eINSTANCE.createIGeneralization()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIProject_Components(),
+				 UMLRpyFactory.eINSTANCE.createIGuard()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIProject_Components(),
+				 UMLRpyFactory.eINSTANCE.createIHyperLink()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIProject_Components(),
+				 UMLRpyFactory.eINSTANCE.createIInformationFlow()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIProject_Components(),
+				 UMLRpyFactory.eINSTANCE.createIRelation()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIProject_Components(),
+				 UMLRpyFactory.eINSTANCE.createIInstance()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIProject_Components(),
+				 UMLRpyFactory.eINSTANCE.createIInstanceSlot()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIProject_Components(),
+				 UMLRpyFactory.eINSTANCE.createIInstanceSpecification()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIProject_Components(),
+				 UMLRpyFactory.eINSTANCE.createIInstanceValue()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIProject_Components(),
+				 UMLRpyFactory.eINSTANCE.createIInteractionOccurrence()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIProject_Components(),
+				 UMLRpyFactory.eINSTANCE.createIInteractionOperand()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIProject_Components(),
+				 UMLRpyFactory.eINSTANCE.createIInteractionOperator()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIProject_Components(),
+				 UMLRpyFactory.eINSTANCE.createIInternalHyperlink()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIProject_Components(),
+				 UMLRpyFactory.eINSTANCE.createILink()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIProject_Components(),
+				 UMLRpyFactory.eINSTANCE.createILiteralSpecification()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIProject_Components(),
+				 UMLRpyFactory.eINSTANCE.createIMHyperLink()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIProject_Components(),
+				 UMLRpyFactory.eINSTANCE.createIMatrixLayout()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIProject_Components(),
+				 UMLRpyFactory.eINSTANCE.createIMatrixView()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIProject_Components(),
+				 UMLRpyFactory.eINSTANCE.createIMessage()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIProject_Components(),
+				 UMLRpyFactory.eINSTANCE.createIMessagePoint()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIProject_Components(),
+				 UMLRpyFactory.eINSTANCE.createIModule()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIProject_Components(),
+				 UMLRpyFactory.eINSTANCE.createINode()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIProject_Components(),
+				 UMLRpyFactory.eINSTANCE.createIObjectLink()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIProject_Components(),
+				 UMLRpyFactory.eINSTANCE.createIObjectModelDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIProject_Components(),
+				 UMLRpyFactory.eINSTANCE.createIObjectNode()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIProject_Components(),
+				 UMLRpyFactory.eINSTANCE.createIOperation()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIProject_Components(),
+				 UMLRpyFactory.eINSTANCE.createIPackage()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIProject_Components(),
+				 UMLRpyFactory.eINSTANCE.createIPanelDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIProject_Components(),
+				 UMLRpyFactory.eINSTANCE.createIPart()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIProject_Components(),
+				 UMLRpyFactory.eINSTANCE.createIPin()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIProject_Components(),
+				 UMLRpyFactory.eINSTANCE.createIPort()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIProject_Components(),
+				 UMLRpyFactory.eINSTANCE.createIPrimitiveOperation()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIProject_Components(),
+				 UMLRpyFactory.eINSTANCE.createIProfile()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIProject_Components(),
+				 UMLRpyFactory.eINSTANCE.createIProject()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIProject_Components(),
+				 UMLRpyFactory.eINSTANCE.createIRequirement()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIProject_Components(),
+				 UMLRpyFactory.eINSTANCE.createISendAction()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIProject_Components(),
+				 UMLRpyFactory.eINSTANCE.createISequenceDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIProject_Components(),
+				 UMLRpyFactory.eINSTANCE.createIStateChart()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIProject_Components(),
+				 UMLRpyFactory.eINSTANCE.createIStateChartDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIProject_Components(),
+				 UMLRpyFactory.eINSTANCE.createIStereotype()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIProject_Components(),
+				 UMLRpyFactory.eINSTANCE.createIStructureDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIProject_Components(),
+				 UMLRpyFactory.eINSTANCE.createISubsystem()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIProject_Components(),
+				 UMLRpyFactory.eINSTANCE.createISwimlane()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIProject_Components(),
+				 UMLRpyFactory.eINSTANCE.createISysMLPort()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIProject_Components(),
+				 UMLRpyFactory.eINSTANCE.createITableLayout()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIProject_Components(),
+				 UMLRpyFactory.eINSTANCE.createITableView()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIProject_Components(),
+				 UMLRpyFactory.eINSTANCE.createITag()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIProject_Components(),
+				 UMLRpyFactory.eINSTANCE.createITemplateInstantiation()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIProject_Components(),
+				 UMLRpyFactory.eINSTANCE.createITemplateInstantiationParameter()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIProject_Components(),
+				 UMLRpyFactory.eINSTANCE.createITemplateParameter()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIProject_Components(),
+				 UMLRpyFactory.eINSTANCE.createITransition()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIProject_Components(),
+				 UMLRpyFactory.eINSTANCE.createITrigger()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIProject_Components(),
+				 UMLRpyFactory.eINSTANCE.createITriggered()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIProject_Components(),
+				 UMLRpyFactory.eINSTANCE.createIType()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIProject_Components(),
+				 UMLRpyFactory.eINSTANCE.createIUseCase()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIProject_Components(),
+				 UMLRpyFactory.eINSTANCE.createIUseCaseDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIProject_PanelDiagrams(),
+				 UMLRpyFactory.eINSTANCE.createIPanelDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIProject_HyperLinks(),
+				 UMLRpyFactory.eINSTANCE.createIMHyperLink()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIProject_MSCS(),
+				 UMLRpyFactory.eINSTANCE.createIClass()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIProject_MSCS(),
+				 UMLRpyFactory.eINSTANCE.createIAssociationClass()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIProject_MSCS(),
+				 UMLRpyFactory.eINSTANCE.createIDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIProject_MSCS(),
+				 UMLRpyFactory.eINSTANCE.createICollaborationDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIProject_MSCS(),
+				 UMLRpyFactory.eINSTANCE.createIComponent()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIProject_MSCS(),
+				 UMLRpyFactory.eINSTANCE.createIComponentDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIProject_MSCS(),
+				 UMLRpyFactory.eINSTANCE.createIDeploymentDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIProject_MSCS(),
+				 UMLRpyFactory.eINSTANCE.createIInformationFlow()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIProject_MSCS(),
+				 UMLRpyFactory.eINSTANCE.createIInformationItem()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIProject_MSCS(),
+				 UMLRpyFactory.eINSTANCE.createIMSC()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIProject_MSCS(),
+				 UMLRpyFactory.eINSTANCE.createIObjectModelDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIProject_MSCS(),
+				 UMLRpyFactory.eINSTANCE.createIPanelDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIProject_MSCS(),
+				 UMLRpyFactory.eINSTANCE.createISequenceDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIProject_MSCS(),
+				 UMLRpyFactory.eINSTANCE.createIStateChart()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIProject_MSCS(),
+				 UMLRpyFactory.eINSTANCE.createIStateChartDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIProject_MSCS(),
+				 UMLRpyFactory.eINSTANCE.createIStereotype()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIProject_MSCS(),
+				 UMLRpyFactory.eINSTANCE.createIStructureDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIProject_MSCS(),
+				 UMLRpyFactory.eINSTANCE.createISubsystem()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIProject_MSCS(),
+				 UMLRpyFactory.eINSTANCE.createIType()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIProject_MSCS(),
+				 UMLRpyFactory.eINSTANCE.createIUCDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIProject_MSCS(),
+				 UMLRpyFactory.eINSTANCE.createIUseCaseDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIProject_UCDiagrams(),
+				 UMLRpyFactory.eINSTANCE.createIUCDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIProject_CollaborationDiagrams(),
+				 UMLRpyFactory.eINSTANCE.createICollaborationDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIProject_Declaratives(),
+				 UMLRpyFactory.eINSTANCE.createIStereotype()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIProject_ComponentDiagrams(),
+				 UMLRpyFactory.eINSTANCE.createIComponentDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIProject_Dependencies(),
+				 UMLRpyFactory.eINSTANCE.createIDependency()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIProject_Dependencies(),
+				 UMLRpyFactory.eINSTANCE.createIHyperLink()));
+	}
+
+	/**
+	 * This returns the label text for {@link org.eclipse.emf.edit.command.CreateChildCommand}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String getCreateChildText(Object owner, Object feature, Object child, Collection<?> selection) {
+		Object childFeature = feature;
+		Object childObject = child;
+
+		boolean qualify =
+			childFeature == UMLRpyPackage.eINSTANCE.getIPackage_Annotations() ||
+			childFeature == UMLRpyPackage.eINSTANCE.getIProject_Diagrams() ||
+			childFeature == UMLRpyPackage.eINSTANCE.getIProject_Components() ||
+			childFeature == UMLRpyPackage.eINSTANCE.getIProject_Subsystems() ||
+			childFeature == UMLRpyPackage.eINSTANCE.getIProject_MSCS() ||
+			childFeature == UMLRpyPackage.eINSTANCE.getIProject_CollaborationDiagrams() ||
+			childFeature == UMLRpyPackage.eINSTANCE.getIProject_ComponentDiagrams() ||
+			childFeature == UMLRpyPackage.eINSTANCE.getIProject_Dependencies() ||
+			childFeature == UMLRpyPackage.eINSTANCE.getIProject_HyperLinks() ||
+			childFeature == UMLRpyPackage.eINSTANCE.getIProject_PanelDiagrams() ||
+			childFeature == UMLRpyPackage.eINSTANCE.getIProject_Declaratives() ||
+			childFeature == UMLRpyPackage.eINSTANCE.getIProject_UCDiagrams();
+
+		if (qualify) {
+			return getString
+				("_UI_CreateChild_text2", //$NON-NLS-1$
+				 new Object[] { getTypeText(childObject), getFeatureText(childFeature), getTypeText(owner) });
+		}
+		return super.getCreateChildText(owner, feature, child, selection);
+	}
+
+}
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/IPropertyContainerItemProvider.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/IPropertyContainerItemProvider.java
new file mode 100755
index 0000000..85c3ebb
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/IPropertyContainerItemProvider.java
@@ -0,0 +1,152 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.provider;
+
+
+import java.util.Collection;
+import java.util.List;
+
+import org.eclipse.emf.common.notify.AdapterFactory;
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.ecore.EStructuralFeature;
+
+import org.eclipse.emf.edit.provider.IItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.ViewerNotification;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IPropertyContainer;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyFactory;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IPropertyContainer} object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class IPropertyContainerItemProvider extends PropertiesTypeItemProvider {
+	/**
+	 * This constructs an instance from a factory and a notifier.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IPropertyContainerItemProvider(AdapterFactory adapterFactory) {
+		super(adapterFactory);
+	}
+
+	/**
+	 * This returns the property descriptors for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) {
+		if (itemPropertyDescriptors == null) {
+			super.getPropertyDescriptors(object);
+
+		}
+		return itemPropertyDescriptors;
+	}
+
+	/**
+	 * This specifies how to implement {@link #getChildren} and is used to deduce an appropriate feature for an
+	 * {@link org.eclipse.emf.edit.command.AddCommand}, {@link org.eclipse.emf.edit.command.RemoveCommand} or
+	 * {@link org.eclipse.emf.edit.command.MoveCommand} in {@link #createCommand}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Collection<? extends EStructuralFeature> getChildrenFeatures(Object object) {
+		if (childrenFeatures == null) {
+			super.getChildrenFeatures(object);
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getIPropertyContainer_Subjects());
+		}
+		return childrenFeatures;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EStructuralFeature getChildFeature(Object object, Object child) {
+		// Check the type of the specified child object and return the proper feature to use for
+		// adding (see {@link AddCommand}) it as a child.
+
+		return super.getChildFeature(object, child);
+	}
+
+	/**
+	 * This returns IPropertyContainer.gif.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object getImage(Object object) {
+		return overlayImage(object, getResourceLocator().getImage("full/obj16/IPropertyContainer")); //$NON-NLS-1$
+	}
+
+	/**
+	 * This returns the label text for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String getText(Object object) {
+		return getString("_UI_IPropertyContainer_type"); //$NON-NLS-1$
+	}
+	
+
+	/**
+	 * This handles model notifications by calling {@link #updateChildren} to update any cached
+	 * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void notifyChanged(Notification notification) {
+		updateChildren(notification);
+
+		switch (notification.getFeatureID(IPropertyContainer.class)) {
+			case UMLRpyPackage.IPROPERTY_CONTAINER__SUBJECTS:
+				fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), true, false));
+				return;
+		}
+		super.notifyChanged(notification);
+	}
+
+	/**
+	 * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children
+	 * that can be created under this object.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) {
+		super.collectNewChildDescriptors(newChildDescriptors, object);
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIPropertyContainer_Subjects(),
+				 UMLRpyFactory.eINSTANCE.createIPropertySubject()));
+	}
+
+}
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/IPropertyItemProvider.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/IPropertyItemProvider.java
new file mode 100755
index 0000000..1728a6c
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/IPropertyItemProvider.java
@@ -0,0 +1,240 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.provider;
+
+
+import java.util.Collection;
+import java.util.List;
+
+import org.eclipse.emf.common.notify.AdapterFactory;
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.common.util.ResourceLocator;
+
+import org.eclipse.emf.edit.provider.ComposeableAdapterFactory;
+import org.eclipse.emf.edit.provider.IEditingDomainItemProvider;
+import org.eclipse.emf.edit.provider.IItemLabelProvider;
+import org.eclipse.emf.edit.provider.IItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.IItemPropertySource;
+import org.eclipse.emf.edit.provider.IStructuredItemContentProvider;
+import org.eclipse.emf.edit.provider.ITreeItemContentProvider;
+import org.eclipse.emf.edit.provider.ItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.ItemProviderAdapter;
+import org.eclipse.emf.edit.provider.ViewerNotification;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IProperty;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IProperty} object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class IPropertyItemProvider 
+	extends ItemProviderAdapter
+	implements
+		IEditingDomainItemProvider,
+		IStructuredItemContentProvider,
+		ITreeItemContentProvider,
+		IItemLabelProvider,
+		IItemPropertySource {
+	/**
+	 * This constructs an instance from a factory and a notifier.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IPropertyItemProvider(AdapterFactory adapterFactory) {
+		super(adapterFactory);
+	}
+
+	/**
+	 * This returns the property descriptors for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) {
+		if (itemPropertyDescriptors == null) {
+			super.getPropertyDescriptors(object);
+
+			addNamePropertyDescriptor(object);
+			addValuePropertyDescriptor(object);
+			addTypePropertyDescriptor(object);
+			addExtraTypeInfoPropertyDescriptor(object);
+		}
+		return itemPropertyDescriptors;
+	}
+
+	/**
+	 * This adds a property descriptor for the Name feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addNamePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IProperty_Name_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IProperty_Name_feature", "_UI_IProperty_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIProperty_Name(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Value feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addValuePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IProperty_Value_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IProperty_Value_feature", "_UI_IProperty_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIProperty_Value(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Type feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addTypePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IProperty_Type_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IProperty_Type_feature", "_UI_IProperty_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIProperty_Type(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Extra Type Info feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addExtraTypeInfoPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IProperty_ExtraTypeInfo_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IProperty_ExtraTypeInfo_feature", "_UI_IProperty_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIProperty_ExtraTypeInfo(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This returns IProperty.gif.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object getImage(Object object) {
+		return overlayImage(object, getResourceLocator().getImage("full/obj16/IProperty")); //$NON-NLS-1$
+	}
+
+	/**
+	 * This returns the label text for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String getText(Object object) {
+		String label = ((IProperty)object).getName();
+		return label == null || label.length() == 0 ?
+			getString("_UI_IProperty_type") : //$NON-NLS-1$
+			getString("_UI_IProperty_type") + " " + label; //$NON-NLS-1$ //$NON-NLS-2$
+	}
+	
+
+	/**
+	 * This handles model notifications by calling {@link #updateChildren} to update any cached
+	 * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void notifyChanged(Notification notification) {
+		updateChildren(notification);
+
+		switch (notification.getFeatureID(IProperty.class)) {
+			case UMLRpyPackage.IPROPERTY__NAME:
+			case UMLRpyPackage.IPROPERTY__VALUE:
+			case UMLRpyPackage.IPROPERTY__TYPE:
+			case UMLRpyPackage.IPROPERTY__EXTRA_TYPE_INFO:
+				fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), false, true));
+				return;
+		}
+		super.notifyChanged(notification);
+	}
+
+	/**
+	 * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children
+	 * that can be created under this object.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) {
+		super.collectNewChildDescriptors(newChildDescriptors, object);
+	}
+
+	/**
+	 * Return the resource locator for this item provider's resources.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public ResourceLocator getResourceLocator() {
+		return rpymetamodelEditPlugin.INSTANCE;
+	}
+
+}
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/IPropertyMetaclassItemProvider.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/IPropertyMetaclassItemProvider.java
new file mode 100755
index 0000000..0504b75
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/IPropertyMetaclassItemProvider.java
@@ -0,0 +1,209 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.provider;
+
+
+import java.util.Collection;
+import java.util.List;
+
+import org.eclipse.emf.common.notify.AdapterFactory;
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.common.util.ResourceLocator;
+
+import org.eclipse.emf.ecore.EStructuralFeature;
+
+import org.eclipse.emf.edit.provider.ComposeableAdapterFactory;
+import org.eclipse.emf.edit.provider.IEditingDomainItemProvider;
+import org.eclipse.emf.edit.provider.IItemLabelProvider;
+import org.eclipse.emf.edit.provider.IItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.IItemPropertySource;
+import org.eclipse.emf.edit.provider.IStructuredItemContentProvider;
+import org.eclipse.emf.edit.provider.ITreeItemContentProvider;
+import org.eclipse.emf.edit.provider.ItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.ItemProviderAdapter;
+import org.eclipse.emf.edit.provider.ViewerNotification;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IPropertyMetaclass;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyFactory;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IPropertyMetaclass} object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class IPropertyMetaclassItemProvider 
+	extends ItemProviderAdapter
+	implements
+		IEditingDomainItemProvider,
+		IStructuredItemContentProvider,
+		ITreeItemContentProvider,
+		IItemLabelProvider,
+		IItemPropertySource {
+	/**
+	 * This constructs an instance from a factory and a notifier.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IPropertyMetaclassItemProvider(AdapterFactory adapterFactory) {
+		super(adapterFactory);
+	}
+
+	/**
+	 * This returns the property descriptors for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) {
+		if (itemPropertyDescriptors == null) {
+			super.getPropertyDescriptors(object);
+
+			addNamePropertyDescriptor(object);
+		}
+		return itemPropertyDescriptors;
+	}
+
+	/**
+	 * This adds a property descriptor for the Name feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addNamePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IPropertyMetaclass_Name_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IPropertyMetaclass_Name_feature", "_UI_IPropertyMetaclass_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIPropertyMetaclass_Name(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This specifies how to implement {@link #getChildren} and is used to deduce an appropriate feature for an
+	 * {@link org.eclipse.emf.edit.command.AddCommand}, {@link org.eclipse.emf.edit.command.RemoveCommand} or
+	 * {@link org.eclipse.emf.edit.command.MoveCommand} in {@link #createCommand}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Collection<? extends EStructuralFeature> getChildrenFeatures(Object object) {
+		if (childrenFeatures == null) {
+			super.getChildrenFeatures(object);
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getIPropertyMetaclass_Properties());
+		}
+		return childrenFeatures;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EStructuralFeature getChildFeature(Object object, Object child) {
+		// Check the type of the specified child object and return the proper feature to use for
+		// adding (see {@link AddCommand}) it as a child.
+
+		return super.getChildFeature(object, child);
+	}
+
+	/**
+	 * This returns IPropertyMetaclass.gif.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object getImage(Object object) {
+		return overlayImage(object, getResourceLocator().getImage("full/obj16/IPropertyMetaclass")); //$NON-NLS-1$
+	}
+
+	/**
+	 * This returns the label text for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String getText(Object object) {
+		String label = ((IPropertyMetaclass)object).getName();
+		return label == null || label.length() == 0 ?
+			getString("_UI_IPropertyMetaclass_type") : //$NON-NLS-1$
+			getString("_UI_IPropertyMetaclass_type") + " " + label; //$NON-NLS-1$ //$NON-NLS-2$
+	}
+	
+
+	/**
+	 * This handles model notifications by calling {@link #updateChildren} to update any cached
+	 * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void notifyChanged(Notification notification) {
+		updateChildren(notification);
+
+		switch (notification.getFeatureID(IPropertyMetaclass.class)) {
+			case UMLRpyPackage.IPROPERTY_METACLASS__NAME:
+				fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), false, true));
+				return;
+			case UMLRpyPackage.IPROPERTY_METACLASS__PROPERTIES:
+				fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), true, false));
+				return;
+		}
+		super.notifyChanged(notification);
+	}
+
+	/**
+	 * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children
+	 * that can be created under this object.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) {
+		super.collectNewChildDescriptors(newChildDescriptors, object);
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIPropertyMetaclass_Properties(),
+				 UMLRpyFactory.eINSTANCE.createIProperty()));
+	}
+
+	/**
+	 * Return the resource locator for this item provider's resources.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public ResourceLocator getResourceLocator() {
+		return rpymetamodelEditPlugin.INSTANCE;
+	}
+
+}
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/IPropertySubjectItemProvider.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/IPropertySubjectItemProvider.java
new file mode 100755
index 0000000..8f536db
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/IPropertySubjectItemProvider.java
@@ -0,0 +1,209 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.provider;
+
+
+import java.util.Collection;
+import java.util.List;
+
+import org.eclipse.emf.common.notify.AdapterFactory;
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.common.util.ResourceLocator;
+
+import org.eclipse.emf.ecore.EStructuralFeature;
+
+import org.eclipse.emf.edit.provider.ComposeableAdapterFactory;
+import org.eclipse.emf.edit.provider.IEditingDomainItemProvider;
+import org.eclipse.emf.edit.provider.IItemLabelProvider;
+import org.eclipse.emf.edit.provider.IItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.IItemPropertySource;
+import org.eclipse.emf.edit.provider.IStructuredItemContentProvider;
+import org.eclipse.emf.edit.provider.ITreeItemContentProvider;
+import org.eclipse.emf.edit.provider.ItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.ItemProviderAdapter;
+import org.eclipse.emf.edit.provider.ViewerNotification;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IPropertySubject;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyFactory;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IPropertySubject} object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class IPropertySubjectItemProvider 
+	extends ItemProviderAdapter
+	implements
+		IEditingDomainItemProvider,
+		IStructuredItemContentProvider,
+		ITreeItemContentProvider,
+		IItemLabelProvider,
+		IItemPropertySource {
+	/**
+	 * This constructs an instance from a factory and a notifier.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IPropertySubjectItemProvider(AdapterFactory adapterFactory) {
+		super(adapterFactory);
+	}
+
+	/**
+	 * This returns the property descriptors for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) {
+		if (itemPropertyDescriptors == null) {
+			super.getPropertyDescriptors(object);
+
+			addNamePropertyDescriptor(object);
+		}
+		return itemPropertyDescriptors;
+	}
+
+	/**
+	 * This adds a property descriptor for the Name feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addNamePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IPropertySubject_Name_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IPropertySubject_Name_feature", "_UI_IPropertySubject_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIPropertySubject_Name(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This specifies how to implement {@link #getChildren} and is used to deduce an appropriate feature for an
+	 * {@link org.eclipse.emf.edit.command.AddCommand}, {@link org.eclipse.emf.edit.command.RemoveCommand} or
+	 * {@link org.eclipse.emf.edit.command.MoveCommand} in {@link #createCommand}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Collection<? extends EStructuralFeature> getChildrenFeatures(Object object) {
+		if (childrenFeatures == null) {
+			super.getChildrenFeatures(object);
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getIPropertySubject_Metaclasses());
+		}
+		return childrenFeatures;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EStructuralFeature getChildFeature(Object object, Object child) {
+		// Check the type of the specified child object and return the proper feature to use for
+		// adding (see {@link AddCommand}) it as a child.
+
+		return super.getChildFeature(object, child);
+	}
+
+	/**
+	 * This returns IPropertySubject.gif.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object getImage(Object object) {
+		return overlayImage(object, getResourceLocator().getImage("full/obj16/IPropertySubject")); //$NON-NLS-1$
+	}
+
+	/**
+	 * This returns the label text for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String getText(Object object) {
+		String label = ((IPropertySubject)object).getName();
+		return label == null || label.length() == 0 ?
+			getString("_UI_IPropertySubject_type") : //$NON-NLS-1$
+			getString("_UI_IPropertySubject_type") + " " + label; //$NON-NLS-1$ //$NON-NLS-2$
+	}
+	
+
+	/**
+	 * This handles model notifications by calling {@link #updateChildren} to update any cached
+	 * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void notifyChanged(Notification notification) {
+		updateChildren(notification);
+
+		switch (notification.getFeatureID(IPropertySubject.class)) {
+			case UMLRpyPackage.IPROPERTY_SUBJECT__NAME:
+				fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), false, true));
+				return;
+			case UMLRpyPackage.IPROPERTY_SUBJECT__METACLASSES:
+				fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), true, false));
+				return;
+		}
+		super.notifyChanged(notification);
+	}
+
+	/**
+	 * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children
+	 * that can be created under this object.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) {
+		super.collectNewChildDescriptors(newChildDescriptors, object);
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIPropertySubject_Metaclasses(),
+				 UMLRpyFactory.eINSTANCE.createIPropertyMetaclass()));
+	}
+
+	/**
+	 * Return the resource locator for this item provider's resources.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public ResourceLocator getResourceLocator() {
+		return rpymetamodelEditPlugin.INSTANCE;
+	}
+
+}
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/IReceptionItemProvider.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/IReceptionItemProvider.java
new file mode 100755
index 0000000..c1b8bc0
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/IReceptionItemProvider.java
@@ -0,0 +1,385 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.provider;
+
+
+import java.util.Collection;
+import java.util.List;
+
+import org.eclipse.emf.common.notify.AdapterFactory;
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.ecore.EStructuralFeature;
+
+import org.eclipse.emf.edit.provider.ComposeableAdapterFactory;
+import org.eclipse.emf.edit.provider.IItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.ItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.ViewerNotification;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IReception;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyFactory;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IReception} object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class IReceptionItemProvider extends OperationsTypeItemProvider {
+	/**
+	 * This constructs an instance from a factory and a notifier.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IReceptionItemProvider(AdapterFactory adapterFactory) {
+		super(adapterFactory);
+	}
+
+	/**
+	 * This returns the property descriptors for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) {
+		if (itemPropertyDescriptors == null) {
+			super.getPropertyDescriptors(object);
+
+			addIdPropertyDescriptor(object);
+			addMyStatePropertyDescriptor(object);
+			addArgsPropertyDescriptor(object);
+			addEventPropertyDescriptor(object);
+			addModifiedTimeWeakPropertyDescriptor(object);
+			addLastIDPropertyDescriptor(object);
+			addRequiremenTracabilityHandlePropertyDescriptor(object);
+			addObjectCreationPropertyDescriptor(object);
+			addUmlDependencyIDPropertyDescriptor(object);
+		}
+		return itemPropertyDescriptors;
+	}
+
+	/**
+	 * This adds a property descriptor for the Id feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addIdPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IReception_id_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IReception_id_feature", "_UI_IReception_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIReception_Id(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the My State feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addMyStatePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IReception_myState_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IReception_myState_feature", "_UI_IReception_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIReception_MyState(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Args feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addArgsPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IReception_Args_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IReception_Args_feature", "_UI_IReception_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIReception_Args(),
+				 true,
+				 false,
+				 true,
+				 null,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Event feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addEventPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IReception_event_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IReception_event_feature", "_UI_IReception_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIReception_Event(),
+				 true,
+				 false,
+				 true,
+				 null,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Modified Time Weak feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addModifiedTimeWeakPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IReception_modifiedTimeWeak_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IReception_modifiedTimeWeak_feature", "_UI_IReception_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIReception_ModifiedTimeWeak(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Last ID feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addLastIDPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IReception_lastID_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IReception_lastID_feature", "_UI_IReception_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIReception_LastID(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Requiremen Tracability Handle feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addRequiremenTracabilityHandlePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IReception_requiremenTracabilityHandle_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IReception_requiremenTracabilityHandle_feature", "_UI_IReception_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIReception_RequiremenTracabilityHandle(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Object Creation feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addObjectCreationPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IReception_objectCreation_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IReception_objectCreation_feature", "_UI_IReception_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIReception_ObjectCreation(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Uml Dependency ID feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addUmlDependencyIDPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IReception_umlDependencyID_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IReception_umlDependencyID_feature", "_UI_IReception_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIReception_UmlDependencyID(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This specifies how to implement {@link #getChildren} and is used to deduce an appropriate feature for an
+	 * {@link org.eclipse.emf.edit.command.AddCommand}, {@link org.eclipse.emf.edit.command.RemoveCommand} or
+	 * {@link org.eclipse.emf.edit.command.MoveCommand} in {@link #createCommand}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Collection<? extends EStructuralFeature> getChildrenFeatures(Object object) {
+		if (childrenFeatures == null) {
+			super.getChildrenFeatures(object);
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getIReception_Dependencies());
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getIReception_Description());
+		}
+		return childrenFeatures;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EStructuralFeature getChildFeature(Object object, Object child) {
+		// Check the type of the specified child object and return the proper feature to use for
+		// adding (see {@link AddCommand}) it as a child.
+
+		return super.getChildFeature(object, child);
+	}
+
+	/**
+	 * This returns IReception.gif.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object getImage(Object object) {
+		return overlayImage(object, getResourceLocator().getImage("full/obj16/IReception")); //$NON-NLS-1$
+	}
+
+	/**
+	 * This returns the label text for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String getText(Object object) {
+		String label = ((IReception)object).getId();
+		return label == null || label.length() == 0 ?
+			getString("_UI_IReception_type") : //$NON-NLS-1$
+			getString("_UI_IReception_type") + " " + label; //$NON-NLS-1$ //$NON-NLS-2$
+	}
+	
+
+	/**
+	 * This handles model notifications by calling {@link #updateChildren} to update any cached
+	 * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void notifyChanged(Notification notification) {
+		updateChildren(notification);
+
+		switch (notification.getFeatureID(IReception.class)) {
+			case UMLRpyPackage.IRECEPTION__ID:
+			case UMLRpyPackage.IRECEPTION__MY_STATE:
+			case UMLRpyPackage.IRECEPTION__MODIFIED_TIME_WEAK:
+			case UMLRpyPackage.IRECEPTION__LAST_ID:
+			case UMLRpyPackage.IRECEPTION__REQUIREMEN_TRACABILITY_HANDLE:
+			case UMLRpyPackage.IRECEPTION__OBJECT_CREATION:
+			case UMLRpyPackage.IRECEPTION__UML_DEPENDENCY_ID:
+				fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), false, true));
+				return;
+			case UMLRpyPackage.IRECEPTION__DEPENDENCIES:
+			case UMLRpyPackage.IRECEPTION__DESCRIPTION:
+				fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), true, false));
+				return;
+		}
+		super.notifyChanged(notification);
+	}
+
+	/**
+	 * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children
+	 * that can be created under this object.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) {
+		super.collectNewChildDescriptors(newChildDescriptors, object);
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIReception_Dependencies(),
+				 UMLRpyFactory.eINSTANCE.createIDependency()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIReception_Dependencies(),
+				 UMLRpyFactory.eINSTANCE.createIHyperLink()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIReception_Description(),
+				 UMLRpyFactory.eINSTANCE.createIDescription()));
+	}
+
+}
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/IReferenceActivityItemProvider.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/IReferenceActivityItemProvider.java
new file mode 100755
index 0000000..70f77bb
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/IReferenceActivityItemProvider.java
@@ -0,0 +1,437 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.provider;
+
+
+import java.util.Collection;
+import java.util.List;
+
+import org.eclipse.emf.common.notify.AdapterFactory;
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.ecore.EStructuralFeature;
+
+import org.eclipse.emf.edit.provider.ComposeableAdapterFactory;
+import org.eclipse.emf.edit.provider.IItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.ItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.ViewerNotification;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IReferenceActivity;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyFactory;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IReferenceActivity} object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class IReferenceActivityItemProvider extends DependsOnTypeItemProvider {
+	/**
+	 * This constructs an instance from a factory and a notifier.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IReferenceActivityItemProvider(AdapterFactory adapterFactory) {
+		super(adapterFactory);
+	}
+
+	/**
+	 * This returns the property descriptors for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) {
+		if (itemPropertyDescriptors == null) {
+			super.getPropertyDescriptors(object);
+
+			addIdPropertyDescriptor(object);
+			addNamePropertyDescriptor(object);
+			addModifiedTimeWeakPropertyDescriptor(object);
+			addParentPropertyDescriptor(object);
+			addStateTypePropertyDescriptor(object);
+			addDefaultTransPropertyDescriptor(object);
+			addSwimlanePropertyDescriptor(object);
+			addReferencedActivityPropertyDescriptor(object);
+			addMyStatePropertyDescriptor(object);
+		}
+		return itemPropertyDescriptors;
+	}
+
+	/**
+	 * This adds a property descriptor for the Id feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addIdPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IReferenceActivity_id_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IReferenceActivity_id_feature", "_UI_IReferenceActivity_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIReferenceActivity_Id(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Name feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addNamePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IReferenceActivity_name_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IReferenceActivity_name_feature", "_UI_IReferenceActivity_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIReferenceActivity_Name(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Modified Time Weak feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addModifiedTimeWeakPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IReferenceActivity_modifiedTimeWeak_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IReferenceActivity_modifiedTimeWeak_feature", "_UI_IReferenceActivity_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIReferenceActivity_ModifiedTimeWeak(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Parent feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addParentPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IReferenceActivity_parent_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IReferenceActivity_parent_feature", "_UI_IReferenceActivity_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIReferenceActivity_Parent(),
+				 true,
+				 false,
+				 true,
+				 null,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the State Type feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addStateTypePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IReferenceActivity_stateType_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IReferenceActivity_stateType_feature", "_UI_IReferenceActivity_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIReferenceActivity_StateType(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Default Trans feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addDefaultTransPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IReferenceActivity_defaultTrans_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IReferenceActivity_defaultTrans_feature", "_UI_IReferenceActivity_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIReferenceActivity_DefaultTrans(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Swimlane feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addSwimlanePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IReferenceActivity_swimlane_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IReferenceActivity_swimlane_feature", "_UI_IReferenceActivity_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIReferenceActivity_Swimlane(),
+				 true,
+				 false,
+				 true,
+				 null,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Referenced Activity feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addReferencedActivityPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IReferenceActivity_referencedActivity_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IReferenceActivity_referencedActivity_feature", "_UI_IReferenceActivity_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIReferenceActivity_ReferencedActivity(),
+				 true,
+				 false,
+				 true,
+				 null,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the My State feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addMyStatePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IReferenceActivity_myState_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IReferenceActivity_myState_feature", "_UI_IReferenceActivity_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIReferenceActivity_MyState(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This specifies how to implement {@link #getChildren} and is used to deduce an appropriate feature for an
+	 * {@link org.eclipse.emf.edit.command.AddCommand}, {@link org.eclipse.emf.edit.command.RemoveCommand} or
+	 * {@link org.eclipse.emf.edit.command.MoveCommand} in {@link #createCommand}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Collection<? extends EStructuralFeature> getChildrenFeatures(Object object) {
+		if (childrenFeatures == null) {
+			super.getChildrenFeatures(object);
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getIReferenceActivity_Stereotypes());
+		}
+		return childrenFeatures;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EStructuralFeature getChildFeature(Object object, Object child) {
+		// Check the type of the specified child object and return the proper feature to use for
+		// adding (see {@link AddCommand}) it as a child.
+
+		return super.getChildFeature(object, child);
+	}
+
+	/**
+	 * This returns IReferenceActivity.gif.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object getImage(Object object) {
+		return overlayImage(object, getResourceLocator().getImage("full/obj16/IReferenceActivity")); //$NON-NLS-1$
+	}
+
+	/**
+	 * This returns the label text for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String getText(Object object) {
+		String label = ((IReferenceActivity)object).getName();
+		return label == null || label.length() == 0 ?
+			getString("_UI_IReferenceActivity_type") : //$NON-NLS-1$
+			getString("_UI_IReferenceActivity_type") + " " + label; //$NON-NLS-1$ //$NON-NLS-2$
+	}
+	
+
+	/**
+	 * This handles model notifications by calling {@link #updateChildren} to update any cached
+	 * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void notifyChanged(Notification notification) {
+		updateChildren(notification);
+
+		switch (notification.getFeatureID(IReferenceActivity.class)) {
+			case UMLRpyPackage.IREFERENCE_ACTIVITY__ID:
+			case UMLRpyPackage.IREFERENCE_ACTIVITY__NAME:
+			case UMLRpyPackage.IREFERENCE_ACTIVITY__MODIFIED_TIME_WEAK:
+			case UMLRpyPackage.IREFERENCE_ACTIVITY__STATE_TYPE:
+			case UMLRpyPackage.IREFERENCE_ACTIVITY__DEFAULT_TRANS:
+			case UMLRpyPackage.IREFERENCE_ACTIVITY__MY_STATE:
+				fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), false, true));
+				return;
+			case UMLRpyPackage.IREFERENCE_ACTIVITY__STEREOTYPES:
+				fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), true, false));
+				return;
+		}
+		super.notifyChanged(notification);
+	}
+
+	/**
+	 * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children
+	 * that can be created under this object.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) {
+		super.collectNewChildDescriptors(newChildDescriptors, object);
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIReferenceActivity_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIClassifier()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIReferenceActivity_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIActor()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIReferenceActivity_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIClass()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIReferenceActivity_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIAssociationClass()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIReferenceActivity_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIInterfaceItem()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIReferenceActivity_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIEvent()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIReferenceActivity_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIEventReception()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIReferenceActivity_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIFlowItem()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIReferenceActivity_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createINode()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIReferenceActivity_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIOperation()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIReferenceActivity_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIStateChart()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIReferenceActivity_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIStereotype()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIReferenceActivity_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIType()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIReferenceActivity_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIUseCase()));
+	}
+
+}
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/IRelationItemProvider.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/IRelationItemProvider.java
new file mode 100755
index 0000000..3a41a96
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/IRelationItemProvider.java
@@ -0,0 +1,109 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.provider;
+
+
+import java.util.Collection;
+import java.util.List;
+
+import org.eclipse.emf.common.notify.AdapterFactory;
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.edit.provider.IItemPropertyDescriptor;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IRelation;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IRelation} object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class IRelationItemProvider extends IUnitItemProvider {
+	/**
+	 * This constructs an instance from a factory and a notifier.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IRelationItemProvider(AdapterFactory adapterFactory) {
+		super(adapterFactory);
+	}
+
+	/**
+	 * This returns the property descriptors for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) {
+		if (itemPropertyDescriptors == null) {
+			super.getPropertyDescriptors(object);
+
+		}
+		return itemPropertyDescriptors;
+	}
+
+	/**
+	 * This returns IRelation.gif.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object getImage(Object object) {
+		return overlayImage(object, getResourceLocator().getImage("full/obj16/IRelation")); //$NON-NLS-1$
+	}
+
+	/**
+	 * This returns the label text for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String getText(Object object) {
+		String label = ((IRelation)object).getDisplayName();
+		return label == null || label.length() == 0 ?
+			getString("_UI_IRelation_type") : //$NON-NLS-1$
+			getString("_UI_IRelation_type") + " " + label; //$NON-NLS-1$ //$NON-NLS-2$
+	}
+	
+
+	/**
+	 * This handles model notifications by calling {@link #updateChildren} to update any cached
+	 * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void notifyChanged(Notification notification) {
+		updateChildren(notification);
+		super.notifyChanged(notification);
+	}
+
+	/**
+	 * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children
+	 * that can be created under this object.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) {
+		super.collectNewChildDescriptors(newChildDescriptors, object);
+	}
+
+}
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/IRequirementItemProvider.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/IRequirementItemProvider.java
new file mode 100755
index 0000000..7748c40
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/IRequirementItemProvider.java
@@ -0,0 +1,359 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.provider;
+
+
+import java.util.Collection;
+import java.util.List;
+
+import org.eclipse.emf.common.notify.AdapterFactory;
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.ecore.EStructuralFeature;
+
+import org.eclipse.emf.edit.provider.ComposeableAdapterFactory;
+import org.eclipse.emf.edit.provider.IItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.ItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.ViewerNotification;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IRequirement;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyFactory;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IRequirement} object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class IRequirementItemProvider extends IAnnotationItemProvider {
+	/**
+	 * This constructs an instance from a factory and a notifier.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IRequirementItemProvider(AdapterFactory adapterFactory) {
+		super(adapterFactory);
+	}
+
+	/**
+	 * This returns the property descriptors for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) {
+		if (itemPropertyDescriptors == null) {
+			super.getPropertyDescriptors(object);
+
+			addIdPropertyDescriptor(object);
+			addNamePropertyDescriptor(object);
+			addMyStatePropertyDescriptor(object);
+			addLastIDPropertyDescriptor(object);
+			addModifiedTimeWeakPropertyDescriptor(object);
+			addReqIDPropertyDescriptor(object);
+			addTheMainDiagramPropertyDescriptor(object);
+		}
+		return itemPropertyDescriptors;
+	}
+
+	/**
+	 * This adds a property descriptor for the Id feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addIdPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IRequirement_id_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IRequirement_id_feature", "_UI_IRequirement_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIRequirement_Id(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Name feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addNamePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IRequirement_name_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IRequirement_name_feature", "_UI_IRequirement_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIRequirement_Name(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the My State feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addMyStatePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IRequirement_myState_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IRequirement_myState_feature", "_UI_IRequirement_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIRequirement_MyState(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Last ID feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addLastIDPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IRequirement_lastID_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IRequirement_lastID_feature", "_UI_IRequirement_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIRequirement_LastID(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Modified Time Weak feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addModifiedTimeWeakPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IRequirement_modifiedTimeWeak_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IRequirement_modifiedTimeWeak_feature", "_UI_IRequirement_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIRequirement_ModifiedTimeWeak(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Req ID feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addReqIDPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IRequirement_reqID_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IRequirement_reqID_feature", "_UI_IRequirement_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIRequirement_ReqID(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the The Main Diagram feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addTheMainDiagramPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IRequirement_theMainDiagram_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IRequirement_theMainDiagram_feature", "_UI_IRequirement_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIRequirement_TheMainDiagram(),
+				 true,
+				 false,
+				 true,
+				 null,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This specifies how to implement {@link #getChildren} and is used to deduce an appropriate feature for an
+	 * {@link org.eclipse.emf.edit.command.AddCommand}, {@link org.eclipse.emf.edit.command.RemoveCommand} or
+	 * {@link org.eclipse.emf.edit.command.MoveCommand} in {@link #createCommand}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Collection<? extends EStructuralFeature> getChildrenFeatures(Object object) {
+		if (childrenFeatures == null) {
+			super.getChildrenFeatures(object);
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getIRequirement_Annotations());
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getIRequirement_Stereotypes());
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getIRequirement_Dependencies());
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getIRequirement_Anchors());
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getIRequirement_HyperLinks());
+		}
+		return childrenFeatures;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EStructuralFeature getChildFeature(Object object, Object child) {
+		// Check the type of the specified child object and return the proper feature to use for
+		// adding (see {@link AddCommand}) it as a child.
+
+		return super.getChildFeature(object, child);
+	}
+
+	/**
+	 * This returns IRequirement.gif.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object getImage(Object object) {
+		return overlayImage(object, getResourceLocator().getImage("full/obj16/IRequirement")); //$NON-NLS-1$
+	}
+
+	/**
+	 * This returns the label text for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String getText(Object object) {
+		String label = ((IRequirement)object).getName();
+		return label == null || label.length() == 0 ?
+			getString("_UI_IRequirement_type") : //$NON-NLS-1$
+			getString("_UI_IRequirement_type") + " " + label; //$NON-NLS-1$ //$NON-NLS-2$
+	}
+	
+
+	/**
+	 * This handles model notifications by calling {@link #updateChildren} to update any cached
+	 * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void notifyChanged(Notification notification) {
+		updateChildren(notification);
+
+		switch (notification.getFeatureID(IRequirement.class)) {
+			case UMLRpyPackage.IREQUIREMENT__ID:
+			case UMLRpyPackage.IREQUIREMENT__NAME:
+			case UMLRpyPackage.IREQUIREMENT__MY_STATE:
+			case UMLRpyPackage.IREQUIREMENT__LAST_ID:
+			case UMLRpyPackage.IREQUIREMENT__MODIFIED_TIME_WEAK:
+			case UMLRpyPackage.IREQUIREMENT__REQ_ID:
+				fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), false, true));
+				return;
+			case UMLRpyPackage.IREQUIREMENT__ANNOTATIONS:
+			case UMLRpyPackage.IREQUIREMENT__STEREOTYPES:
+			case UMLRpyPackage.IREQUIREMENT__DEPENDENCIES:
+			case UMLRpyPackage.IREQUIREMENT__ANCHORS:
+			case UMLRpyPackage.IREQUIREMENT__HYPER_LINKS:
+				fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), true, false));
+				return;
+		}
+		super.notifyChanged(notification);
+	}
+
+	/**
+	 * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children
+	 * that can be created under this object.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) {
+		super.collectNewChildDescriptors(newChildDescriptors, object);
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIRequirement_Annotations(),
+				 UMLRpyFactory.eINSTANCE.createIRequirement()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIRequirement_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIStereotype()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIRequirement_Dependencies(),
+				 UMLRpyFactory.eINSTANCE.createIDependency()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIRequirement_Dependencies(),
+				 UMLRpyFactory.eINSTANCE.createIHyperLink()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIRequirement_Anchors(),
+				 UMLRpyFactory.eINSTANCE.createIAnchor()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIRequirement_HyperLinks(),
+				 UMLRpyFactory.eINSTANCE.createIMHyperLink()));
+	}
+
+}
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/ISendActionItemProvider.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/ISendActionItemProvider.java
new file mode 100755
index 0000000..0980324
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/ISendActionItemProvider.java
@@ -0,0 +1,213 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.provider;
+
+
+import java.util.Collection;
+import java.util.List;
+
+import org.eclipse.emf.common.notify.AdapterFactory;
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.ecore.EStructuralFeature;
+
+import org.eclipse.emf.edit.provider.ComposeableAdapterFactory;
+import org.eclipse.emf.edit.provider.IItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.ItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.ViewerNotification;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ISendAction;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyFactory;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ISendAction} object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class ISendActionItemProvider extends IActionItemProvider {
+	/**
+	 * This constructs an instance from a factory and a notifier.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public ISendActionItemProvider(AdapterFactory adapterFactory) {
+		super(adapterFactory);
+	}
+
+	/**
+	 * This returns the property descriptors for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) {
+		if (itemPropertyDescriptors == null) {
+			super.getPropertyDescriptors(object);
+
+			addM_hTargetPropertyDescriptor(object);
+			addArgValCountPropertyDescriptor(object);
+		}
+		return itemPropertyDescriptors;
+	}
+
+	/**
+	 * This adds a property descriptor for the MhTarget feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM_hTargetPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_ISendAction_m_hTarget_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_ISendAction_m_hTarget_feature", "_UI_ISendAction_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getISendAction_M_hTarget(),
+				 true,
+				 false,
+				 true,
+				 null,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Arg Val Count feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addArgValCountPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_ISendAction_ArgValCount_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_ISendAction_ArgValCount_feature", "_UI_ISendAction_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getISendAction_ArgValCount(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This specifies how to implement {@link #getChildren} and is used to deduce an appropriate feature for an
+	 * {@link org.eclipse.emf.edit.command.AddCommand}, {@link org.eclipse.emf.edit.command.RemoveCommand} or
+	 * {@link org.eclipse.emf.edit.command.MoveCommand} in {@link #createCommand}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Collection<? extends EStructuralFeature> getChildrenFeatures(Object object) {
+		if (childrenFeatures == null) {
+			super.getChildrenFeatures(object);
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getISendAction_M_hEvent());
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getISendAction_GraphElements());
+		}
+		return childrenFeatures;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EStructuralFeature getChildFeature(Object object, Object child) {
+		// Check the type of the specified child object and return the proper feature to use for
+		// adding (see {@link AddCommand}) it as a child.
+
+		return super.getChildFeature(object, child);
+	}
+
+	/**
+	 * This returns ISendAction.gif.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object getImage(Object object) {
+		return overlayImage(object, getResourceLocator().getImage("full/obj16/ISendAction")); //$NON-NLS-1$
+	}
+
+	/**
+	 * This returns the label text for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String getText(Object object) {
+		String label = ((ISendAction)object).getDisplayName();
+		return label == null || label.length() == 0 ?
+			getString("_UI_ISendAction_type") : //$NON-NLS-1$
+			getString("_UI_ISendAction_type") + " " + label; //$NON-NLS-1$ //$NON-NLS-2$
+	}
+	
+
+	/**
+	 * This handles model notifications by calling {@link #updateChildren} to update any cached
+	 * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void notifyChanged(Notification notification) {
+		updateChildren(notification);
+
+		switch (notification.getFeatureID(ISendAction.class)) {
+			case UMLRpyPackage.ISEND_ACTION__ARG_VAL_COUNT:
+				fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), false, true));
+				return;
+			case UMLRpyPackage.ISEND_ACTION__MHEVENT:
+			case UMLRpyPackage.ISEND_ACTION__GRAPH_ELEMENTS:
+				fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), true, false));
+				return;
+		}
+		super.notifyChanged(notification);
+	}
+
+	/**
+	 * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children
+	 * that can be created under this object.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) {
+		super.collectNewChildDescriptors(newChildDescriptors, object);
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getISendAction_M_hEvent(),
+				 UMLRpyFactory.eINSTANCE.createIEventHandle()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getISendAction_GraphElements(),
+				 UMLRpyFactory.eINSTANCE.createIHandleWithData()));
+	}
+
+}
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/ISequenceDiagramItemProvider.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/ISequenceDiagramItemProvider.java
new file mode 100755
index 0000000..d744430
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/ISequenceDiagramItemProvider.java
@@ -0,0 +1,134 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.provider;
+
+
+import java.util.Collection;
+import java.util.List;
+
+import org.eclipse.emf.common.notify.AdapterFactory;
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.edit.provider.IItemPropertyDescriptor;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ISequenceDiagram;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ISequenceDiagram} object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class ISequenceDiagramItemProvider extends IDiagramItemProvider {
+	/**
+	 * This constructs an instance from a factory and a notifier.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public ISequenceDiagramItemProvider(AdapterFactory adapterFactory) {
+		super(adapterFactory);
+	}
+
+	/**
+	 * This returns the property descriptors for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) {
+		if (itemPropertyDescriptors == null) {
+			super.getPropertyDescriptors(object);
+
+		}
+		return itemPropertyDescriptors;
+	}
+
+	/**
+	 * This returns ISequenceDiagram.gif.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object getImage(Object object) {
+		return overlayImage(object, getResourceLocator().getImage("full/obj16/ISequenceDiagram")); //$NON-NLS-1$
+	}
+
+	/**
+	 * This returns the label text for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String getText(Object object) {
+		String label = ((ISequenceDiagram)object).getName();
+		return label == null || label.length() == 0 ?
+			getString("_UI_ISequenceDiagram_type") : //$NON-NLS-1$
+			getString("_UI_ISequenceDiagram_type") + " " + label; //$NON-NLS-1$ //$NON-NLS-2$
+	}
+	
+
+	/**
+	 * This handles model notifications by calling {@link #updateChildren} to update any cached
+	 * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void notifyChanged(Notification notification) {
+		updateChildren(notification);
+		super.notifyChanged(notification);
+	}
+
+	/**
+	 * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children
+	 * that can be created under this object.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) {
+		super.collectNewChildDescriptors(newChildDescriptors, object);
+	}
+
+	/**
+	 * This returns the label text for {@link org.eclipse.emf.edit.command.CreateChildCommand}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String getCreateChildText(Object owner, Object feature, Object child, Collection<?> selection) {
+		Object childFeature = feature;
+		Object childObject = child;
+
+		boolean qualify =
+			childFeature == UMLRpyPackage.eINSTANCE.getIDiagram_Stereotypes() ||
+			childFeature == UMLRpyPackage.eINSTANCE.getIDiagram_Annotations() ||
+			childFeature == UMLRpyPackage.eINSTANCE.getIDiagram_HyperLinks();
+
+		if (qualify) {
+			return getString
+				("_UI_CreateChild_text2", //$NON-NLS-1$
+				 new Object[] { getTypeText(childObject), getFeatureText(childFeature), getTypeText(owner) });
+		}
+		return super.getCreateChildText(owner, feature, child, selection);
+	}
+
+}
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/ISlotItemProvider.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/ISlotItemProvider.java
new file mode 100755
index 0000000..0738351
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/ISlotItemProvider.java
@@ -0,0 +1,239 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.provider;
+
+
+import java.util.Collection;
+import java.util.List;
+
+import org.eclipse.emf.common.notify.AdapterFactory;
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.common.util.ResourceLocator;
+
+import org.eclipse.emf.edit.provider.ComposeableAdapterFactory;
+import org.eclipse.emf.edit.provider.IEditingDomainItemProvider;
+import org.eclipse.emf.edit.provider.IItemLabelProvider;
+import org.eclipse.emf.edit.provider.IItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.IItemPropertySource;
+import org.eclipse.emf.edit.provider.IStructuredItemContentProvider;
+import org.eclipse.emf.edit.provider.ITreeItemContentProvider;
+import org.eclipse.emf.edit.provider.ItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.ItemProviderAdapter;
+import org.eclipse.emf.edit.provider.ViewerNotification;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ISlot;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ISlot} object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class ISlotItemProvider 
+	extends ItemProviderAdapter
+	implements
+		IEditingDomainItemProvider,
+		IStructuredItemContentProvider,
+		ITreeItemContentProvider,
+		IItemLabelProvider,
+		IItemPropertySource {
+	/**
+	 * This constructs an instance from a factory and a notifier.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public ISlotItemProvider(AdapterFactory adapterFactory) {
+		super(adapterFactory);
+	}
+
+	/**
+	 * This returns the property descriptors for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) {
+		if (itemPropertyDescriptors == null) {
+			super.getPropertyDescriptors(object);
+
+			addIdPropertyDescriptor(object);
+			addNamePropertyDescriptor(object);
+			addValuePropertyDescriptor(object);
+			addDefiningVarPropertyDescriptor(object);
+		}
+		return itemPropertyDescriptors;
+	}
+
+	/**
+	 * This adds a property descriptor for the Id feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addIdPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_ISlot_id_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_ISlot_id_feature", "_UI_ISlot_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getISlot_Id(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Name feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addNamePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_ISlot_name_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_ISlot_name_feature", "_UI_ISlot_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getISlot_Name(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Value feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addValuePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_ISlot_value_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_ISlot_value_feature", "_UI_ISlot_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getISlot_Value(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Defining Var feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addDefiningVarPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_ISlot_definingVar_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_ISlot_definingVar_feature", "_UI_ISlot_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getISlot_DefiningVar(),
+				 true,
+				 false,
+				 true,
+				 null,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This returns ISlot.gif.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object getImage(Object object) {
+		return overlayImage(object, getResourceLocator().getImage("full/obj16/ISlot")); //$NON-NLS-1$
+	}
+
+	/**
+	 * This returns the label text for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String getText(Object object) {
+		String label = ((ISlot)object).getName();
+		return label == null || label.length() == 0 ?
+			getString("_UI_ISlot_type") : //$NON-NLS-1$
+			getString("_UI_ISlot_type") + " " + label; //$NON-NLS-1$ //$NON-NLS-2$
+	}
+	
+
+	/**
+	 * This handles model notifications by calling {@link #updateChildren} to update any cached
+	 * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void notifyChanged(Notification notification) {
+		updateChildren(notification);
+
+		switch (notification.getFeatureID(ISlot.class)) {
+			case UMLRpyPackage.ISLOT__ID:
+			case UMLRpyPackage.ISLOT__NAME:
+			case UMLRpyPackage.ISLOT__VALUE:
+				fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), false, true));
+				return;
+		}
+		super.notifyChanged(notification);
+	}
+
+	/**
+	 * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children
+	 * that can be created under this object.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) {
+		super.collectNewChildDescriptors(newChildDescriptors, object);
+	}
+
+	/**
+	 * Return the resource locator for this item provider's resources.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public ResourceLocator getResourceLocator() {
+		return rpymetamodelEditPlugin.INSTANCE;
+	}
+
+}
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/IStateChartDiagramItemProvider.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/IStateChartDiagramItemProvider.java
new file mode 100755
index 0000000..8d1d847
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/IStateChartDiagramItemProvider.java
@@ -0,0 +1,134 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.provider;
+
+
+import java.util.Collection;
+import java.util.List;
+
+import org.eclipse.emf.common.notify.AdapterFactory;
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.edit.provider.IItemPropertyDescriptor;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IStateChartDiagram;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IStateChartDiagram} object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class IStateChartDiagramItemProvider extends IDiagramItemProvider {
+	/**
+	 * This constructs an instance from a factory and a notifier.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IStateChartDiagramItemProvider(AdapterFactory adapterFactory) {
+		super(adapterFactory);
+	}
+
+	/**
+	 * This returns the property descriptors for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) {
+		if (itemPropertyDescriptors == null) {
+			super.getPropertyDescriptors(object);
+
+		}
+		return itemPropertyDescriptors;
+	}
+
+	/**
+	 * This returns IStateChartDiagram.gif.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object getImage(Object object) {
+		return overlayImage(object, getResourceLocator().getImage("full/obj16/IStateChartDiagram")); //$NON-NLS-1$
+	}
+
+	/**
+	 * This returns the label text for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String getText(Object object) {
+		String label = ((IStateChartDiagram)object).getName();
+		return label == null || label.length() == 0 ?
+			getString("_UI_IStateChartDiagram_type") : //$NON-NLS-1$
+			getString("_UI_IStateChartDiagram_type") + " " + label; //$NON-NLS-1$ //$NON-NLS-2$
+	}
+	
+
+	/**
+	 * This handles model notifications by calling {@link #updateChildren} to update any cached
+	 * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void notifyChanged(Notification notification) {
+		updateChildren(notification);
+		super.notifyChanged(notification);
+	}
+
+	/**
+	 * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children
+	 * that can be created under this object.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) {
+		super.collectNewChildDescriptors(newChildDescriptors, object);
+	}
+
+	/**
+	 * This returns the label text for {@link org.eclipse.emf.edit.command.CreateChildCommand}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String getCreateChildText(Object owner, Object feature, Object child, Collection<?> selection) {
+		Object childFeature = feature;
+		Object childObject = child;
+
+		boolean qualify =
+			childFeature == UMLRpyPackage.eINSTANCE.getIDiagram_Stereotypes() ||
+			childFeature == UMLRpyPackage.eINSTANCE.getIDiagram_Annotations() ||
+			childFeature == UMLRpyPackage.eINSTANCE.getIDiagram_HyperLinks();
+
+		if (qualify) {
+			return getString
+				("_UI_CreateChild_text2", //$NON-NLS-1$
+				 new Object[] { getTypeText(childObject), getFeatureText(childFeature), getTypeText(owner) });
+		}
+		return super.getCreateChildText(owner, feature, child, selection);
+	}
+
+}
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/IStateChartItemProvider.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/IStateChartItemProvider.java
new file mode 100755
index 0000000..cb6d266
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/IStateChartItemProvider.java
@@ -0,0 +1,437 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.provider;
+
+
+import java.util.Collection;
+import java.util.List;
+
+import org.eclipse.emf.common.notify.AdapterFactory;
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.ecore.EStructuralFeature;
+
+import org.eclipse.emf.edit.provider.ComposeableAdapterFactory;
+import org.eclipse.emf.edit.provider.IItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.ItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.ViewerNotification;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IStateChart;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyFactory;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IStateChart} object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class IStateChartItemProvider extends IClassItemProvider {
+	/**
+	 * This constructs an instance from a factory and a notifier.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IStateChartItemProvider(AdapterFactory adapterFactory) {
+		super(adapterFactory);
+	}
+
+	/**
+	 * This returns the property descriptors for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) {
+		if (itemPropertyDescriptors == null) {
+			super.getPropertyDescriptors(object);
+
+			addDefNumberPropertyDescriptor(object);
+			addLastModifiedTimePropertyDescriptor(object);
+			addVersionPropertyDescriptor(object);
+			addBaseVersionPropertyDescriptor(object);
+			addInheritsFromHandlePropertyDescriptor(object);
+		}
+		return itemPropertyDescriptors;
+	}
+
+	/**
+	 * This adds a property descriptor for the Def Number feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addDefNumberPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_NestedStateChartType_defNumber_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_NestedStateChartType_defNumber_feature", "_UI_NestedStateChartType_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getNestedStateChartType_DefNumber(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Last Modified Time feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addLastModifiedTimePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_NestedStateChartType_lastModifiedTime_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_NestedStateChartType_lastModifiedTime_feature", "_UI_NestedStateChartType_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getNestedStateChartType_LastModifiedTime(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Version feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addVersionPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_NestedStateChartType_version_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_NestedStateChartType_version_feature", "_UI_NestedStateChartType_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getNestedStateChartType_Version(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Base Version feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addBaseVersionPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IStateChart_baseVersion_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IStateChart_baseVersion_feature", "_UI_IStateChart_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIStateChart_BaseVersion(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Inherits From Handle feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addInheritsFromHandlePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IStateChart_inheritsFromHandle_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IStateChart_inheritsFromHandle_feature", "_UI_IStateChart_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIStateChart_InheritsFromHandle(),
+				 true,
+				 false,
+				 true,
+				 null,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This specifies how to implement {@link #getChildren} and is used to deduce an appropriate feature for an
+	 * {@link org.eclipse.emf.edit.command.AddCommand}, {@link org.eclipse.emf.edit.command.RemoveCommand} or
+	 * {@link org.eclipse.emf.edit.command.MoveCommand} in {@link #createCommand}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Collection<? extends EStructuralFeature> getChildrenFeatures(Object object) {
+		if (childrenFeatures == null) {
+			super.getChildrenFeatures(object);
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getNestedStateChartType_GraphicChart());
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getNestedStateChartType_Transitions());
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getNestedStateChartType_Connectors());
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getIStateChart_States());
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getIStateChart_Diagram());
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getIStateChart_Views());
+		}
+		return childrenFeatures;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EStructuralFeature getChildFeature(Object object, Object child) {
+		// Check the type of the specified child object and return the proper feature to use for
+		// adding (see {@link AddCommand}) it as a child.
+
+		return super.getChildFeature(object, child);
+	}
+
+	/**
+	 * This returns IStateChart.gif.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object getImage(Object object) {
+		return overlayImage(object, getResourceLocator().getImage("full/obj16/IStateChart")); //$NON-NLS-1$
+	}
+
+	/**
+	 * This returns the label text for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String getText(Object object) {
+		String label = ((IStateChart)object).getName();
+		return label == null || label.length() == 0 ?
+			getString("_UI_IStateChart_type") : //$NON-NLS-1$
+			getString("_UI_IStateChart_type") + " " + label; //$NON-NLS-1$ //$NON-NLS-2$
+	}
+	
+
+	/**
+	 * This handles model notifications by calling {@link #updateChildren} to update any cached
+	 * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void notifyChanged(Notification notification) {
+		updateChildren(notification);
+
+		switch (notification.getFeatureID(IStateChart.class)) {
+			case UMLRpyPackage.ISTATE_CHART__DEF_NUMBER:
+			case UMLRpyPackage.ISTATE_CHART__LAST_MODIFIED_TIME:
+			case UMLRpyPackage.ISTATE_CHART__VERSION:
+			case UMLRpyPackage.ISTATE_CHART__BASE_VERSION:
+				fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), false, true));
+				return;
+			case UMLRpyPackage.ISTATE_CHART__GRAPHIC_CHART:
+			case UMLRpyPackage.ISTATE_CHART__TRANSITIONS:
+			case UMLRpyPackage.ISTATE_CHART__CONNECTORS:
+			case UMLRpyPackage.ISTATE_CHART__STATES:
+			case UMLRpyPackage.ISTATE_CHART__DIAGRAM:
+			case UMLRpyPackage.ISTATE_CHART__VIEWS:
+				fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), true, false));
+				return;
+		}
+		super.notifyChanged(notification);
+	}
+
+	/**
+	 * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children
+	 * that can be created under this object.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) {
+		super.collectNewChildDescriptors(newChildDescriptors, object);
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getNestedStateChartType_GraphicChart(),
+				 UMLRpyFactory.eINSTANCE.createCGIStateChart()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getNestedStateChartType_Transitions(),
+				 UMLRpyFactory.eINSTANCE.createIDefaultDrvdTrans()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getNestedStateChartType_Transitions(),
+				 UMLRpyFactory.eINSTANCE.createITransition()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getNestedStateChartType_Connectors(),
+				 UMLRpyFactory.eINSTANCE.createIState()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getNestedStateChartType_Connectors(),
+				 UMLRpyFactory.eINSTANCE.createIAcceptEventAction()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getNestedStateChartType_Connectors(),
+				 UMLRpyFactory.eINSTANCE.createIAcceptTimeEvent()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getNestedStateChartType_Connectors(),
+				 UMLRpyFactory.eINSTANCE.createIBranch()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getNestedStateChartType_Connectors(),
+				 UMLRpyFactory.eINSTANCE.createICallOperation()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getNestedStateChartType_Connectors(),
+				 UMLRpyFactory.eINSTANCE.createIConnector()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getNestedStateChartType_Connectors(),
+				 UMLRpyFactory.eINSTANCE.createIFork()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getNestedStateChartType_Connectors(),
+				 UMLRpyFactory.eINSTANCE.createIHistoryConnector()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getNestedStateChartType_Connectors(),
+				 UMLRpyFactory.eINSTANCE.createIObjectNode()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getNestedStateChartType_Connectors(),
+				 UMLRpyFactory.eINSTANCE.createIPin()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getNestedStateChartType_Connectors(),
+				 UMLRpyFactory.eINSTANCE.createIReferenceActivity()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getNestedStateChartType_Connectors(),
+				 UMLRpyFactory.eINSTANCE.createITimeEvent()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIStateChart_States(),
+				 UMLRpyFactory.eINSTANCE.createIState()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIStateChart_States(),
+				 UMLRpyFactory.eINSTANCE.createIAcceptEventAction()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIStateChart_States(),
+				 UMLRpyFactory.eINSTANCE.createIAcceptTimeEvent()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIStateChart_States(),
+				 UMLRpyFactory.eINSTANCE.createICallOperation()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIStateChart_States(),
+				 UMLRpyFactory.eINSTANCE.createIObjectNode()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIStateChart_Diagram(),
+				 UMLRpyFactory.eINSTANCE.createIStateChartDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIStateChart_Views(),
+				 UMLRpyFactory.eINSTANCE.createIStateChartDiagram()));
+	}
+
+	/**
+	 * This returns the label text for {@link org.eclipse.emf.edit.command.CreateChildCommand}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String getCreateChildText(Object owner, Object feature, Object child, Collection<?> selection) {
+		Object childFeature = feature;
+		Object childObject = child;
+
+		boolean qualify =
+			childFeature == UMLRpyPackage.eINSTANCE.getIClass_Stereotypes() ||
+			childFeature == UMLRpyPackage.eINSTANCE.getIClass_Inheritances() ||
+			childFeature == UMLRpyPackage.eINSTANCE.getIClass_Attrs() ||
+			childFeature == UMLRpyPackage.eINSTANCE.getIClass_Annotations() ||
+			childFeature == UMLRpyPackage.eINSTANCE.getIClass_Declaratives() ||
+			childFeature == UMLRpyPackage.eINSTANCE.getIClass_EventHandles() ||
+			childFeature == UMLRpyPackage.eINSTANCE.getIClass_ComponentFiles() ||
+			childFeature == UMLRpyPackage.eINSTANCE.getIClass_Ports() ||
+			childFeature == UMLRpyPackage.eINSTANCE.getIClass_Links() ||
+			childFeature == UMLRpyPackage.eINSTANCE.getIClass_Associations() ||
+			childFeature == UMLRpyPackage.eINSTANCE.getIClass_StateCharts() ||
+			childFeature == UMLRpyPackage.eINSTANCE.getIStateChart_Diagram() ||
+			childFeature == UMLRpyPackage.eINSTANCE.getIStateChart_Views() ||
+			childFeature == UMLRpyPackage.eINSTANCE.getIClass_Tags() ||
+			childFeature == UMLRpyPackage.eINSTANCE.getIClass_TemplateParameters() ||
+			childFeature == UMLRpyPackage.eINSTANCE.getIClass_Operations() ||
+			childFeature == UMLRpyPackage.eINSTANCE.getIClass_PrimitiveOperations() ||
+			childFeature == UMLRpyPackage.eINSTANCE.getNestedStateChartType_Connectors() ||
+			childFeature == UMLRpyPackage.eINSTANCE.getIStateChart_States() ||
+			childFeature == UMLRpyPackage.eINSTANCE.getIClass_Dependencies() ||
+			childFeature == UMLRpyPackage.eINSTANCE.getIClass_HyperLinks() ||
+			childFeature == UMLRpyPackage.eINSTANCE.getIClass_ObjectLinks() ||
+			childFeature == UMLRpyPackage.eINSTANCE.getNestedStateChartType_Transitions();
+
+		if (qualify) {
+			return getString
+				("_UI_CreateChild_text2", //$NON-NLS-1$
+				 new Object[] { getTypeText(childObject), getFeatureText(childFeature), getTypeText(owner) });
+		}
+		return super.getCreateChildText(owner, feature, child, selection);
+	}
+
+}
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/IStateItemProvider.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/IStateItemProvider.java
new file mode 100755
index 0000000..926bfe1
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/IStateItemProvider.java
@@ -0,0 +1,932 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.provider;
+
+
+import java.util.Collection;
+import java.util.List;
+
+import org.eclipse.emf.common.notify.AdapterFactory;
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.ecore.EStructuralFeature;
+
+import org.eclipse.emf.edit.provider.ComposeableAdapterFactory;
+import org.eclipse.emf.edit.provider.IItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.ItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.ViewerNotification;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IState;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyFactory;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IState} object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class IStateItemProvider extends IStateVertexItemProvider {
+	/**
+	 * This constructs an instance from a factory and a notifier.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IStateItemProvider(AdapterFactory adapterFactory) {
+		super(adapterFactory);
+	}
+
+	/**
+	 * This returns the property descriptors for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) {
+		if (itemPropertyDescriptors == null) {
+			super.getPropertyDescriptors(object);
+
+			addParentPropertyDescriptor(object);
+			addStateTypePropertyDescriptor(object);
+			addDefaultTransPropertyDescriptor(object);
+			addInheritsFromHandlePropertyDescriptor(object);
+			addRequiremenTracabilityHandlePropertyDescriptor(object);
+			addTheMainDiagramPropertyDescriptor(object);
+			addSwimlanePropertyDescriptor(object);
+			addCodeUpdateCGTimePropertyDescriptor(object);
+		}
+		return itemPropertyDescriptors;
+	}
+
+	/**
+	 * This adds a property descriptor for the Parent feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addParentPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IState_parent_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IState_parent_feature", "_UI_IState_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIState_Parent(),
+				 true,
+				 false,
+				 false,
+				 null,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the State Type feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addStateTypePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IState_stateType_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IState_stateType_feature", "_UI_IState_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIState_StateType(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Default Trans feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addDefaultTransPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IState_defaultTrans_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IState_defaultTrans_feature", "_UI_IState_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIState_DefaultTrans(),
+				 true,
+				 false,
+				 false,
+				 null,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Inherits From Handle feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addInheritsFromHandlePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IState_inheritsFromHandle_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IState_inheritsFromHandle_feature", "_UI_IState_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIState_InheritsFromHandle(),
+				 true,
+				 false,
+				 true,
+				 null,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Requiremen Tracability Handle feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addRequiremenTracabilityHandlePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IState_requiremenTracabilityHandle_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IState_requiremenTracabilityHandle_feature", "_UI_IState_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIState_RequiremenTracabilityHandle(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the The Main Diagram feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addTheMainDiagramPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IState_theMainDiagram_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IState_theMainDiagram_feature", "_UI_IState_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIState_TheMainDiagram(),
+				 true,
+				 false,
+				 true,
+				 null,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Swimlane feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addSwimlanePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IState_swimlane_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IState_swimlane_feature", "_UI_IState_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIState_Swimlane(),
+				 true,
+				 false,
+				 true,
+				 null,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Code Update CG Time feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addCodeUpdateCGTimePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IState_codeUpdateCGTime_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IState_codeUpdateCGTime_feature", "_UI_IState_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIState_CodeUpdateCGTime(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This specifies how to implement {@link #getChildren} and is used to deduce an appropriate feature for an
+	 * {@link org.eclipse.emf.edit.command.AddCommand}, {@link org.eclipse.emf.edit.command.RemoveCommand} or
+	 * {@link org.eclipse.emf.edit.command.MoveCommand} in {@link #createCommand}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Collection<? extends EStructuralFeature> getChildrenFeatures(Object object) {
+		if (childrenFeatures == null) {
+			super.getChildrenFeatures(object);
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getIState_EntryAction());
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getIState_ExitAction());
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getIState_NestedStateChart());
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getIState_Annotations());
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getIState_Dependencies());
+		}
+		return childrenFeatures;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EStructuralFeature getChildFeature(Object object, Object child) {
+		// Check the type of the specified child object and return the proper feature to use for
+		// adding (see {@link AddCommand}) it as a child.
+
+		return super.getChildFeature(object, child);
+	}
+
+	/**
+	 * This returns IState.gif.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object getImage(Object object) {
+		return overlayImage(object, getResourceLocator().getImage("full/obj16/IState")); //$NON-NLS-1$
+	}
+
+	/**
+	 * This returns the label text for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String getText(Object object) {
+		String label = ((IState)object).getName();
+		return label == null || label.length() == 0 ?
+			getString("_UI_IState_type") : //$NON-NLS-1$
+			getString("_UI_IState_type") + " " + label; //$NON-NLS-1$ //$NON-NLS-2$
+	}
+	
+
+	/**
+	 * This handles model notifications by calling {@link #updateChildren} to update any cached
+	 * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void notifyChanged(Notification notification) {
+		updateChildren(notification);
+
+		switch (notification.getFeatureID(IState.class)) {
+			case UMLRpyPackage.ISTATE__PARENT:
+			case UMLRpyPackage.ISTATE__STATE_TYPE:
+			case UMLRpyPackage.ISTATE__DEFAULT_TRANS:
+			case UMLRpyPackage.ISTATE__REQUIREMEN_TRACABILITY_HANDLE:
+			case UMLRpyPackage.ISTATE__CODE_UPDATE_CG_TIME:
+				fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), false, true));
+				return;
+			case UMLRpyPackage.ISTATE__ENTRY_ACTION:
+			case UMLRpyPackage.ISTATE__EXIT_ACTION:
+			case UMLRpyPackage.ISTATE__NESTED_STATE_CHART:
+			case UMLRpyPackage.ISTATE__ANNOTATIONS:
+			case UMLRpyPackage.ISTATE__DEPENDENCIES:
+				fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), true, false));
+				return;
+		}
+		super.notifyChanged(notification);
+	}
+
+	/**
+	 * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children
+	 * that can be created under this object.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) {
+		super.collectNewChildDescriptors(newChildDescriptors, object);
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIState_EntryAction(),
+				 UMLRpyFactory.eINSTANCE.createIModelElement()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIState_EntryAction(),
+				 UMLRpyFactory.eINSTANCE.createIStateVertex()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIState_EntryAction(),
+				 UMLRpyFactory.eINSTANCE.createIState()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIState_EntryAction(),
+				 UMLRpyFactory.eINSTANCE.createIAcceptEventAction()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIState_EntryAction(),
+				 UMLRpyFactory.eINSTANCE.createIAcceptTimeEvent()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIState_EntryAction(),
+				 UMLRpyFactory.eINSTANCE.createIAction()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIState_EntryAction(),
+				 UMLRpyFactory.eINSTANCE.createIActivityGraph()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIState_EntryAction(),
+				 UMLRpyFactory.eINSTANCE.createIUnit()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIState_EntryAction(),
+				 UMLRpyFactory.eINSTANCE.createIClassifier()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIState_EntryAction(),
+				 UMLRpyFactory.eINSTANCE.createIActor()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIState_EntryAction(),
+				 UMLRpyFactory.eINSTANCE.createIAnnotation()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIState_EntryAction(),
+				 UMLRpyFactory.eINSTANCE.createIVariable()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIState_EntryAction(),
+				 UMLRpyFactory.eINSTANCE.createIArgument()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIState_EntryAction(),
+				 UMLRpyFactory.eINSTANCE.createIClass()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIState_EntryAction(),
+				 UMLRpyFactory.eINSTANCE.createIAssociationClass()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIState_EntryAction(),
+				 UMLRpyFactory.eINSTANCE.createIAssociationEnd()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIState_EntryAction(),
+				 UMLRpyFactory.eINSTANCE.createIAssociationRole()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIState_EntryAction(),
+				 UMLRpyFactory.eINSTANCE.createIAttribute()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIState_EntryAction(),
+				 UMLRpyFactory.eINSTANCE.createICallOperation()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIState_EntryAction(),
+				 UMLRpyFactory.eINSTANCE.createIClassifierRole()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIState_EntryAction(),
+				 UMLRpyFactory.eINSTANCE.createICollaboration()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIState_EntryAction(),
+				 UMLRpyFactory.eINSTANCE.createIDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIState_EntryAction(),
+				 UMLRpyFactory.eINSTANCE.createICollaborationDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIState_EntryAction(),
+				 UMLRpyFactory.eINSTANCE.createIComment()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIState_EntryAction(),
+				 UMLRpyFactory.eINSTANCE.createIComponent()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIState_EntryAction(),
+				 UMLRpyFactory.eINSTANCE.createIComponentDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIState_EntryAction(),
+				 UMLRpyFactory.eINSTANCE.createIComponentInstance()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIState_EntryAction(),
+				 UMLRpyFactory.eINSTANCE.createIConfiguration()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIState_EntryAction(),
+				 UMLRpyFactory.eINSTANCE.createIConnector()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIState_EntryAction(),
+				 UMLRpyFactory.eINSTANCE.createIConstraint()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIState_EntryAction(),
+				 UMLRpyFactory.eINSTANCE.createIValueSpecification()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIState_EntryAction(),
+				 UMLRpyFactory.eINSTANCE.createIContextSpecification()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIState_EntryAction(),
+				 UMLRpyFactory.eINSTANCE.createIControlledFile()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIState_EntryAction(),
+				 UMLRpyFactory.eINSTANCE.createIDependency()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIState_EntryAction(),
+				 UMLRpyFactory.eINSTANCE.createIDeploymentDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIState_EntryAction(),
+				 UMLRpyFactory.eINSTANCE.createIEnumerationLiteral()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIState_EntryAction(),
+				 UMLRpyFactory.eINSTANCE.createIInterfaceItem()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIState_EntryAction(),
+				 UMLRpyFactory.eINSTANCE.createIEvent()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIState_EntryAction(),
+				 UMLRpyFactory.eINSTANCE.createIEventReception()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIState_EntryAction(),
+				 UMLRpyFactory.eINSTANCE.createIExecutionOccurrence()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIState_EntryAction(),
+				 UMLRpyFactory.eINSTANCE.createIExternalHyperlink()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIState_EntryAction(),
+				 UMLRpyFactory.eINSTANCE.createIFile()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIState_EntryAction(),
+				 UMLRpyFactory.eINSTANCE.createIFileFragment()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIState_EntryAction(),
+				 UMLRpyFactory.eINSTANCE.createIFlow()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIState_EntryAction(),
+				 UMLRpyFactory.eINSTANCE.createIFlowItem()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIState_EntryAction(),
+				 UMLRpyFactory.eINSTANCE.createIGeneralization()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIState_EntryAction(),
+				 UMLRpyFactory.eINSTANCE.createIGuard()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIState_EntryAction(),
+				 UMLRpyFactory.eINSTANCE.createIHyperLink()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIState_EntryAction(),
+				 UMLRpyFactory.eINSTANCE.createIInformationFlow()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIState_EntryAction(),
+				 UMLRpyFactory.eINSTANCE.createIRelation()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIState_EntryAction(),
+				 UMLRpyFactory.eINSTANCE.createIInstance()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIState_EntryAction(),
+				 UMLRpyFactory.eINSTANCE.createIInstanceSlot()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIState_EntryAction(),
+				 UMLRpyFactory.eINSTANCE.createIInstanceSpecification()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIState_EntryAction(),
+				 UMLRpyFactory.eINSTANCE.createIInstanceValue()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIState_EntryAction(),
+				 UMLRpyFactory.eINSTANCE.createIInteractionOccurrence()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIState_EntryAction(),
+				 UMLRpyFactory.eINSTANCE.createIInteractionOperand()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIState_EntryAction(),
+				 UMLRpyFactory.eINSTANCE.createIInteractionOperator()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIState_EntryAction(),
+				 UMLRpyFactory.eINSTANCE.createIInternalHyperlink()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIState_EntryAction(),
+				 UMLRpyFactory.eINSTANCE.createILink()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIState_EntryAction(),
+				 UMLRpyFactory.eINSTANCE.createILiteralSpecification()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIState_EntryAction(),
+				 UMLRpyFactory.eINSTANCE.createIMHyperLink()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIState_EntryAction(),
+				 UMLRpyFactory.eINSTANCE.createIMatrixLayout()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIState_EntryAction(),
+				 UMLRpyFactory.eINSTANCE.createIMatrixView()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIState_EntryAction(),
+				 UMLRpyFactory.eINSTANCE.createIMessage()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIState_EntryAction(),
+				 UMLRpyFactory.eINSTANCE.createIMessagePoint()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIState_EntryAction(),
+				 UMLRpyFactory.eINSTANCE.createIModule()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIState_EntryAction(),
+				 UMLRpyFactory.eINSTANCE.createINode()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIState_EntryAction(),
+				 UMLRpyFactory.eINSTANCE.createIObjectLink()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIState_EntryAction(),
+				 UMLRpyFactory.eINSTANCE.createIObjectModelDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIState_EntryAction(),
+				 UMLRpyFactory.eINSTANCE.createIObjectNode()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIState_EntryAction(),
+				 UMLRpyFactory.eINSTANCE.createIOperation()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIState_EntryAction(),
+				 UMLRpyFactory.eINSTANCE.createIPackage()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIState_EntryAction(),
+				 UMLRpyFactory.eINSTANCE.createIPanelDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIState_EntryAction(),
+				 UMLRpyFactory.eINSTANCE.createIPart()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIState_EntryAction(),
+				 UMLRpyFactory.eINSTANCE.createIPin()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIState_EntryAction(),
+				 UMLRpyFactory.eINSTANCE.createIPort()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIState_EntryAction(),
+				 UMLRpyFactory.eINSTANCE.createIPrimitiveOperation()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIState_EntryAction(),
+				 UMLRpyFactory.eINSTANCE.createIProfile()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIState_EntryAction(),
+				 UMLRpyFactory.eINSTANCE.createIProject()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIState_EntryAction(),
+				 UMLRpyFactory.eINSTANCE.createIRequirement()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIState_EntryAction(),
+				 UMLRpyFactory.eINSTANCE.createISendAction()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIState_EntryAction(),
+				 UMLRpyFactory.eINSTANCE.createISequenceDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIState_EntryAction(),
+				 UMLRpyFactory.eINSTANCE.createIStateChart()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIState_EntryAction(),
+				 UMLRpyFactory.eINSTANCE.createIStateChartDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIState_EntryAction(),
+				 UMLRpyFactory.eINSTANCE.createIStereotype()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIState_EntryAction(),
+				 UMLRpyFactory.eINSTANCE.createIStructureDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIState_EntryAction(),
+				 UMLRpyFactory.eINSTANCE.createISubsystem()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIState_EntryAction(),
+				 UMLRpyFactory.eINSTANCE.createISwimlane()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIState_EntryAction(),
+				 UMLRpyFactory.eINSTANCE.createISysMLPort()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIState_EntryAction(),
+				 UMLRpyFactory.eINSTANCE.createITableLayout()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIState_EntryAction(),
+				 UMLRpyFactory.eINSTANCE.createITableView()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIState_EntryAction(),
+				 UMLRpyFactory.eINSTANCE.createITag()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIState_EntryAction(),
+				 UMLRpyFactory.eINSTANCE.createITemplateInstantiation()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIState_EntryAction(),
+				 UMLRpyFactory.eINSTANCE.createITemplateInstantiationParameter()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIState_EntryAction(),
+				 UMLRpyFactory.eINSTANCE.createITemplateParameter()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIState_EntryAction(),
+				 UMLRpyFactory.eINSTANCE.createITransition()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIState_EntryAction(),
+				 UMLRpyFactory.eINSTANCE.createITrigger()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIState_EntryAction(),
+				 UMLRpyFactory.eINSTANCE.createITriggered()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIState_EntryAction(),
+				 UMLRpyFactory.eINSTANCE.createIType()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIState_EntryAction(),
+				 UMLRpyFactory.eINSTANCE.createIUseCase()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIState_EntryAction(),
+				 UMLRpyFactory.eINSTANCE.createIUseCaseDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIState_ExitAction(),
+				 UMLRpyFactory.eINSTANCE.createIAction()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIState_ExitAction(),
+				 UMLRpyFactory.eINSTANCE.createISendAction()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIState_NestedStateChart(),
+				 UMLRpyFactory.eINSTANCE.createIActivityGraph()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIState_NestedStateChart(),
+				 UMLRpyFactory.eINSTANCE.createIStateChart()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIState_Annotations(),
+				 UMLRpyFactory.eINSTANCE.createIAnnotation()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIState_Annotations(),
+				 UMLRpyFactory.eINSTANCE.createIComment()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIState_Annotations(),
+				 UMLRpyFactory.eINSTANCE.createIConstraint()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIState_Annotations(),
+				 UMLRpyFactory.eINSTANCE.createIRequirement()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIState_Dependencies(),
+				 UMLRpyFactory.eINSTANCE.createIDependency()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIState_Dependencies(),
+				 UMLRpyFactory.eINSTANCE.createIHyperLink()));
+	}
+
+	/**
+	 * This returns the label text for {@link org.eclipse.emf.edit.command.CreateChildCommand}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String getCreateChildText(Object owner, Object feature, Object child, Collection<?> selection) {
+		Object childFeature = feature;
+		Object childObject = child;
+
+		boolean qualify =
+			childFeature == UMLRpyPackage.eINSTANCE.getIState_EntryAction() ||
+			childFeature == UMLRpyPackage.eINSTANCE.getIState_ExitAction() ||
+			childFeature == UMLRpyPackage.eINSTANCE.getIState_NestedStateChart() ||
+			childFeature == UMLRpyPackage.eINSTANCE.getIState_Annotations() ||
+			childFeature == UMLRpyPackage.eINSTANCE.getIState_Dependencies();
+
+		if (qualify) {
+			return getString
+				("_UI_CreateChild_text2", //$NON-NLS-1$
+				 new Object[] { getTypeText(childObject), getFeatureText(childFeature), getTypeText(owner) });
+		}
+		return super.getCreateChildText(owner, feature, child, selection);
+	}
+
+}
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/IStateVertexItemProvider.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/IStateVertexItemProvider.java
new file mode 100755
index 0000000..fd30887
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/IStateVertexItemProvider.java
@@ -0,0 +1,326 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.provider;
+
+
+import java.util.Collection;
+import java.util.List;
+
+import org.eclipse.emf.common.notify.AdapterFactory;
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.ecore.EStructuralFeature;
+
+import org.eclipse.emf.edit.provider.ComposeableAdapterFactory;
+import org.eclipse.emf.edit.provider.IItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.ItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.ViewerNotification;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IStateVertex;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyFactory;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IStateVertex} object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class IStateVertexItemProvider extends IModelElementItemProvider {
+	/**
+	 * This constructs an instance from a factory and a notifier.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IStateVertexItemProvider(AdapterFactory adapterFactory) {
+		super(adapterFactory);
+	}
+
+	/**
+	 * This returns the property descriptors for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) {
+		if (itemPropertyDescriptors == null) {
+			super.getPropertyDescriptors(object);
+
+			addModifiedTimeWeakPropertyDescriptor(object);
+			addIdPropertyDescriptor(object);
+			addUmlDependencyIDPropertyDescriptor(object);
+			addMyStatePropertyDescriptor(object);
+			addStereotypesPropertyDescriptor(object);
+			addObjectCreationPropertyDescriptor(object);
+			addNamePropertyDescriptor(object);
+		}
+		return itemPropertyDescriptors;
+	}
+
+	/**
+	 * This adds a property descriptor for the Modified Time Weak feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addModifiedTimeWeakPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IStateVertex_modifiedTimeWeak_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IStateVertex_modifiedTimeWeak_feature", "_UI_IStateVertex_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIStateVertex_ModifiedTimeWeak(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Id feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addIdPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IStateVertex_id_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IStateVertex_id_feature", "_UI_IStateVertex_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIStateVertex_Id(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Uml Dependency ID feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addUmlDependencyIDPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IStateVertex_umlDependencyID_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IStateVertex_umlDependencyID_feature", "_UI_IStateVertex_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIStateVertex_UmlDependencyID(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the My State feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addMyStatePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IStateVertex_myState_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IStateVertex_myState_feature", "_UI_IStateVertex_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIStateVertex_MyState(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Stereotypes feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addStereotypesPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IStateVertex_Stereotypes_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IStateVertex_Stereotypes_feature", "_UI_IStateVertex_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIStateVertex_Stereotypes(),
+				 true,
+				 false,
+				 true,
+				 null,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Object Creation feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addObjectCreationPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IStateVertex_objectCreation_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IStateVertex_objectCreation_feature", "_UI_IStateVertex_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIStateVertex_ObjectCreation(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Name feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addNamePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IStateVertex_name_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IStateVertex_name_feature", "_UI_IStateVertex_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIStateVertex_Name(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This specifies how to implement {@link #getChildren} and is used to deduce an appropriate feature for an
+	 * {@link org.eclipse.emf.edit.command.AddCommand}, {@link org.eclipse.emf.edit.command.RemoveCommand} or
+	 * {@link org.eclipse.emf.edit.command.MoveCommand} in {@link #createCommand}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Collection<? extends EStructuralFeature> getChildrenFeatures(Object object) {
+		if (childrenFeatures == null) {
+			super.getChildrenFeatures(object);
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getIStateVertex_Description());
+		}
+		return childrenFeatures;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EStructuralFeature getChildFeature(Object object, Object child) {
+		// Check the type of the specified child object and return the proper feature to use for
+		// adding (see {@link AddCommand}) it as a child.
+
+		return super.getChildFeature(object, child);
+	}
+
+	/**
+	 * This returns IStateVertex.gif.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object getImage(Object object) {
+		return overlayImage(object, getResourceLocator().getImage("full/obj16/IStateVertex")); //$NON-NLS-1$
+	}
+
+	/**
+	 * This returns the label text for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String getText(Object object) {
+		String label = ((IStateVertex)object).getName();
+		return label == null || label.length() == 0 ?
+			getString("_UI_IStateVertex_type") : //$NON-NLS-1$
+			getString("_UI_IStateVertex_type") + " " + label; //$NON-NLS-1$ //$NON-NLS-2$
+	}
+	
+
+	/**
+	 * This handles model notifications by calling {@link #updateChildren} to update any cached
+	 * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void notifyChanged(Notification notification) {
+		updateChildren(notification);
+
+		switch (notification.getFeatureID(IStateVertex.class)) {
+			case UMLRpyPackage.ISTATE_VERTEX__MODIFIED_TIME_WEAK:
+			case UMLRpyPackage.ISTATE_VERTEX__ID:
+			case UMLRpyPackage.ISTATE_VERTEX__UML_DEPENDENCY_ID:
+			case UMLRpyPackage.ISTATE_VERTEX__MY_STATE:
+			case UMLRpyPackage.ISTATE_VERTEX__OBJECT_CREATION:
+			case UMLRpyPackage.ISTATE_VERTEX__NAME:
+				fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), false, true));
+				return;
+			case UMLRpyPackage.ISTATE_VERTEX__DESCRIPTION:
+				fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), true, false));
+				return;
+		}
+		super.notifyChanged(notification);
+	}
+
+	/**
+	 * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children
+	 * that can be created under this object.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) {
+		super.collectNewChildDescriptors(newChildDescriptors, object);
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIStateVertex_Description(),
+				 UMLRpyFactory.eINSTANCE.createIDescription()));
+	}
+
+}
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/IStereotypeItemProvider.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/IStereotypeItemProvider.java
new file mode 100755
index 0000000..b5c662f
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/IStereotypeItemProvider.java
@@ -0,0 +1,462 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.provider;
+
+
+import java.util.Collection;
+import java.util.List;
+
+import org.eclipse.emf.common.notify.AdapterFactory;
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.ecore.EStructuralFeature;
+
+import org.eclipse.emf.edit.provider.ComposeableAdapterFactory;
+import org.eclipse.emf.edit.provider.IItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.ItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.ViewerNotification;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IStereotype;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyFactory;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IStereotype} object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class IStereotypeItemProvider extends IClassifierItemProvider {
+	/**
+	 * This constructs an instance from a factory and a notifier.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IStereotypeItemProvider(AdapterFactory adapterFactory) {
+		super(adapterFactory);
+	}
+
+	/**
+	 * This returns the property descriptors for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) {
+		if (itemPropertyDescriptors == null) {
+			super.getPropertyDescriptors(object);
+
+			addModifiedTimeWeakPropertyDescriptor(object);
+			addIdPropertyDescriptor(object);
+			addMyStatePropertyDescriptor(object);
+			addNamePropertyDescriptor(object);
+			addM2ClassesPropertyDescriptor(object);
+			addNewTermPropertyDescriptor(object);
+			addLastIDPropertyDescriptor(object);
+			addRequiremenTracabilityHandlePropertyDescriptor(object);
+			addObjectCreationPropertyDescriptor(object);
+			addUmlDependencyIDPropertyDescriptor(object);
+			addTheMainDiagramPropertyDescriptor(object);
+		}
+		return itemPropertyDescriptors;
+	}
+
+	/**
+	 * This adds a property descriptor for the Modified Time Weak feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addModifiedTimeWeakPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_ValueType_modifiedTimeWeak_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_ValueType_modifiedTimeWeak_feature", "_UI_ValueType_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getValueType_ModifiedTimeWeak(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Id feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addIdPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_ValueType_id_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_ValueType_id_feature", "_UI_ValueType_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getValueType_Id(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the My State feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addMyStatePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_ValueType_myState_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_ValueType_myState_feature", "_UI_ValueType_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getValueType_MyState(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Name feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addNamePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_ValueType_name_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_ValueType_name_feature", "_UI_ValueType_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getValueType_Name(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the M2 Classes feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addM2ClassesPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IStereotype_m2Classes_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IStereotype_m2Classes_feature", "_UI_IStereotype_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIStereotype_M2Classes(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the New Term feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addNewTermPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IStereotype_newTerm_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IStereotype_newTerm_feature", "_UI_IStereotype_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIStereotype_NewTerm(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Last ID feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addLastIDPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IStereotype_lastID_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IStereotype_lastID_feature", "_UI_IStereotype_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIStereotype_LastID(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Requiremen Tracability Handle feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addRequiremenTracabilityHandlePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IStereotype_requiremenTracabilityHandle_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IStereotype_requiremenTracabilityHandle_feature", "_UI_IStereotype_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIStereotype_RequiremenTracabilityHandle(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Object Creation feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addObjectCreationPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IStereotype_objectCreation_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IStereotype_objectCreation_feature", "_UI_IStereotype_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIStereotype_ObjectCreation(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Uml Dependency ID feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addUmlDependencyIDPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IStereotype_umlDependencyID_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IStereotype_umlDependencyID_feature", "_UI_IStereotype_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIStereotype_UmlDependencyID(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the The Main Diagram feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addTheMainDiagramPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IStereotype_theMainDiagram_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IStereotype_theMainDiagram_feature", "_UI_IStereotype_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIStereotype_TheMainDiagram(),
+				 true,
+				 false,
+				 true,
+				 null,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This specifies how to implement {@link #getChildren} and is used to deduce an appropriate feature for an
+	 * {@link org.eclipse.emf.edit.command.AddCommand}, {@link org.eclipse.emf.edit.command.RemoveCommand} or
+	 * {@link org.eclipse.emf.edit.command.MoveCommand} in {@link #createCommand}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Collection<? extends EStructuralFeature> getChildrenFeatures(Object object) {
+		if (childrenFeatures == null) {
+			super.getChildrenFeatures(object);
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getIStereotype_Properties());
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getIStereotype_Description());
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getIStereotype_Tags());
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getIStereotype_Inheritances());
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getIStereotype_Dependencies());
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getIStereotype_Annotations());
+		}
+		return childrenFeatures;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EStructuralFeature getChildFeature(Object object, Object child) {
+		// Check the type of the specified child object and return the proper feature to use for
+		// adding (see {@link AddCommand}) it as a child.
+
+		return super.getChildFeature(object, child);
+	}
+
+	/**
+	 * This returns IStereotype.gif.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object getImage(Object object) {
+		return overlayImage(object, getResourceLocator().getImage("full/obj16/IStereotype")); //$NON-NLS-1$
+	}
+
+	/**
+	 * This returns the label text for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String getText(Object object) {
+		String label = ((IStereotype)object).getName();
+		return label == null || label.length() == 0 ?
+			getString("_UI_IStereotype_type") : //$NON-NLS-1$
+			getString("_UI_IStereotype_type") + " " + label; //$NON-NLS-1$ //$NON-NLS-2$
+	}
+	
+
+	/**
+	 * This handles model notifications by calling {@link #updateChildren} to update any cached
+	 * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void notifyChanged(Notification notification) {
+		updateChildren(notification);
+
+		switch (notification.getFeatureID(IStereotype.class)) {
+			case UMLRpyPackage.ISTEREOTYPE__MODIFIED_TIME_WEAK:
+			case UMLRpyPackage.ISTEREOTYPE__ID:
+			case UMLRpyPackage.ISTEREOTYPE__MY_STATE:
+			case UMLRpyPackage.ISTEREOTYPE__NAME:
+			case UMLRpyPackage.ISTEREOTYPE__M2_CLASSES:
+			case UMLRpyPackage.ISTEREOTYPE__NEW_TERM:
+			case UMLRpyPackage.ISTEREOTYPE__LAST_ID:
+			case UMLRpyPackage.ISTEREOTYPE__REQUIREMEN_TRACABILITY_HANDLE:
+			case UMLRpyPackage.ISTEREOTYPE__OBJECT_CREATION:
+			case UMLRpyPackage.ISTEREOTYPE__UML_DEPENDENCY_ID:
+				fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), false, true));
+				return;
+			case UMLRpyPackage.ISTEREOTYPE__PROPERTIES:
+			case UMLRpyPackage.ISTEREOTYPE__DESCRIPTION:
+			case UMLRpyPackage.ISTEREOTYPE__TAGS:
+			case UMLRpyPackage.ISTEREOTYPE__INHERITANCES:
+			case UMLRpyPackage.ISTEREOTYPE__DEPENDENCIES:
+			case UMLRpyPackage.ISTEREOTYPE__ANNOTATIONS:
+				fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), true, false));
+				return;
+		}
+		super.notifyChanged(notification);
+	}
+
+	/**
+	 * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children
+	 * that can be created under this object.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) {
+		super.collectNewChildDescriptors(newChildDescriptors, object);
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIStereotype_Properties(),
+				 UMLRpyFactory.eINSTANCE.createIPropertyContainer()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIStereotype_Description(),
+				 UMLRpyFactory.eINSTANCE.createIDescription()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIStereotype_Tags(),
+				 UMLRpyFactory.eINSTANCE.createITag()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIStereotype_Inheritances(),
+				 UMLRpyFactory.eINSTANCE.createIGeneralization()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIStereotype_Dependencies(),
+				 UMLRpyFactory.eINSTANCE.createIDependency()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIStereotype_Dependencies(),
+				 UMLRpyFactory.eINSTANCE.createIHyperLink()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIStereotype_Annotations(),
+				 UMLRpyFactory.eINSTANCE.createIComment()));
+	}
+
+}
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/IStructureDiagramItemProvider.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/IStructureDiagramItemProvider.java
new file mode 100755
index 0000000..f0d9d36
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/IStructureDiagramItemProvider.java
@@ -0,0 +1,134 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.provider;
+
+
+import java.util.Collection;
+import java.util.List;
+
+import org.eclipse.emf.common.notify.AdapterFactory;
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.edit.provider.IItemPropertyDescriptor;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IStructureDiagram;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IStructureDiagram} object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class IStructureDiagramItemProvider extends IDiagramItemProvider {
+	/**
+	 * This constructs an instance from a factory and a notifier.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IStructureDiagramItemProvider(AdapterFactory adapterFactory) {
+		super(adapterFactory);
+	}
+
+	/**
+	 * This returns the property descriptors for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) {
+		if (itemPropertyDescriptors == null) {
+			super.getPropertyDescriptors(object);
+
+		}
+		return itemPropertyDescriptors;
+	}
+
+	/**
+	 * This returns IStructureDiagram.gif.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object getImage(Object object) {
+		return overlayImage(object, getResourceLocator().getImage("full/obj16/IStructureDiagram")); //$NON-NLS-1$
+	}
+
+	/**
+	 * This returns the label text for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String getText(Object object) {
+		String label = ((IStructureDiagram)object).getName();
+		return label == null || label.length() == 0 ?
+			getString("_UI_IStructureDiagram_type") : //$NON-NLS-1$
+			getString("_UI_IStructureDiagram_type") + " " + label; //$NON-NLS-1$ //$NON-NLS-2$
+	}
+	
+
+	/**
+	 * This handles model notifications by calling {@link #updateChildren} to update any cached
+	 * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void notifyChanged(Notification notification) {
+		updateChildren(notification);
+		super.notifyChanged(notification);
+	}
+
+	/**
+	 * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children
+	 * that can be created under this object.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) {
+		super.collectNewChildDescriptors(newChildDescriptors, object);
+	}
+
+	/**
+	 * This returns the label text for {@link org.eclipse.emf.edit.command.CreateChildCommand}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String getCreateChildText(Object owner, Object feature, Object child, Collection<?> selection) {
+		Object childFeature = feature;
+		Object childObject = child;
+
+		boolean qualify =
+			childFeature == UMLRpyPackage.eINSTANCE.getIDiagram_Stereotypes() ||
+			childFeature == UMLRpyPackage.eINSTANCE.getIDiagram_Annotations() ||
+			childFeature == UMLRpyPackage.eINSTANCE.getIDiagram_HyperLinks();
+
+		if (qualify) {
+			return getString
+				("_UI_CreateChild_text2", //$NON-NLS-1$
+				 new Object[] { getTypeText(childObject), getFeatureText(childFeature), getTypeText(owner) });
+		}
+		return super.getCreateChildText(owner, feature, child, selection);
+	}
+
+}
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/ISubsystemItemProvider.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/ISubsystemItemProvider.java
new file mode 100755
index 0000000..82cdc9f
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/ISubsystemItemProvider.java
@@ -0,0 +1,2237 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.provider;
+
+
+import java.util.Collection;
+import java.util.List;
+
+import org.eclipse.emf.common.notify.AdapterFactory;
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.ecore.EStructuralFeature;
+
+import org.eclipse.emf.edit.provider.ComposeableAdapterFactory;
+import org.eclipse.emf.edit.provider.IItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.ItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.ViewerNotification;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ISubsystem;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyFactory;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ISubsystem} object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class ISubsystemItemProvider extends OwnerHandleTypeItemProvider {
+	/**
+	 * This constructs an instance from a factory and a notifier.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public ISubsystemItemProvider(AdapterFactory adapterFactory) {
+		super(adapterFactory);
+	}
+
+	/**
+	 * This returns the property descriptors for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) {
+		if (itemPropertyDescriptors == null) {
+			super.getPropertyDescriptors(object);
+
+			addIdPropertyDescriptor(object);
+			addMyStatePropertyDescriptor(object);
+			addNamePropertyDescriptor(object);
+			addModifiedTimeWeakPropertyDescriptor(object);
+			addDefaultCompositePropertyDescriptor(object);
+			addEventsBaseIDPropertyDescriptor(object);
+			addConfigurationRelatedTimePropertyDescriptor(object);
+			addLastIDPropertyDescriptor(object);
+			addCmheaderPropertyDescriptor(object);
+			addPredefinedTypesPropertyDescriptor(object);
+			addOwnerHandlePropertyDescriptor(object);
+			addTheMainDiagramPropertyDescriptor(object);
+			addRequiremenTracabilityHandlePropertyDescriptor(object);
+			addCodeUpdateCGTimePropertyDescriptor(object);
+			addObjectCreationPropertyDescriptor(object);
+			addUmlDependencyIDPropertyDescriptor(object);
+			addAssociationElementsPropertyDescriptor(object);
+		}
+		return itemPropertyDescriptors;
+	}
+
+	/**
+	 * This adds a property descriptor for the Id feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addIdPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_ISubsystem_id_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_ISubsystem_id_feature", "_UI_ISubsystem_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getISubsystem_Id(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the My State feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addMyStatePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_ISubsystem_myState_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_ISubsystem_myState_feature", "_UI_ISubsystem_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getISubsystem_MyState(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Name feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addNamePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_ISubsystem_name_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_ISubsystem_name_feature", "_UI_ISubsystem_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getISubsystem_Name(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Modified Time Weak feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addModifiedTimeWeakPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_ISubsystem_modifiedTimeWeak_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_ISubsystem_modifiedTimeWeak_feature", "_UI_ISubsystem_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getISubsystem_ModifiedTimeWeak(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Default Composite feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addDefaultCompositePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_ISubsystem_defaultComposite_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_ISubsystem_defaultComposite_feature", "_UI_ISubsystem_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getISubsystem_DefaultComposite(),
+				 true,
+				 false,
+				 true,
+				 null,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Events Base ID feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addEventsBaseIDPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_ISubsystem_eventsBaseID_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_ISubsystem_eventsBaseID_feature", "_UI_ISubsystem_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getISubsystem_EventsBaseID(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Configuration Related Time feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addConfigurationRelatedTimePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_ISubsystem_configurationRelatedTime_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_ISubsystem_configurationRelatedTime_feature", "_UI_ISubsystem_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getISubsystem_ConfigurationRelatedTime(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Last ID feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addLastIDPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_ISubsystem_lastID_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_ISubsystem_lastID_feature", "_UI_ISubsystem_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getISubsystem_LastID(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Cmheader feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addCmheaderPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_ISubsystem_cmheader_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_ISubsystem_cmheader_feature", "_UI_ISubsystem_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getISubsystem_Cmheader(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Predefined Types feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addPredefinedTypesPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_ISubsystem_PredefinedTypes_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_ISubsystem_PredefinedTypes_feature", "_UI_ISubsystem_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getISubsystem_PredefinedTypes(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Owner Handle feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addOwnerHandlePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_ISubsystem_ownerHandle_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_ISubsystem_ownerHandle_feature", "_UI_ISubsystem_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getISubsystem_OwnerHandle(),
+				 true,
+				 false,
+				 true,
+				 null,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the The Main Diagram feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addTheMainDiagramPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_ISubsystem_theMainDiagram_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_ISubsystem_theMainDiagram_feature", "_UI_ISubsystem_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getISubsystem_TheMainDiagram(),
+				 true,
+				 false,
+				 true,
+				 null,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Requiremen Tracability Handle feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addRequiremenTracabilityHandlePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_ISubsystem_requiremenTracabilityHandle_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_ISubsystem_requiremenTracabilityHandle_feature", "_UI_ISubsystem_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getISubsystem_RequiremenTracabilityHandle(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Code Update CG Time feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addCodeUpdateCGTimePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_ISubsystem_codeUpdateCGTime_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_ISubsystem_codeUpdateCGTime_feature", "_UI_ISubsystem_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getISubsystem_CodeUpdateCGTime(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Object Creation feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addObjectCreationPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_ISubsystem_objectCreation_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_ISubsystem_objectCreation_feature", "_UI_ISubsystem_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getISubsystem_ObjectCreation(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Uml Dependency ID feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addUmlDependencyIDPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_ISubsystem_umlDependencyID_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_ISubsystem_umlDependencyID_feature", "_UI_ISubsystem_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getISubsystem_UmlDependencyID(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Association Elements feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addAssociationElementsPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_ISubsystem_AssociationElements_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_ISubsystem_AssociationElements_feature", "_UI_ISubsystem_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getISubsystem_AssociationElements(),
+				 true,
+				 false,
+				 true,
+				 null,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This specifies how to implement {@link #getChildren} and is used to deduce an appropriate feature for an
+	 * {@link org.eclipse.emf.edit.command.AddCommand}, {@link org.eclipse.emf.edit.command.RemoveCommand} or
+	 * {@link org.eclipse.emf.edit.command.MoveCommand} in {@link #createCommand}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Collection<? extends EStructuralFeature> getChildrenFeatures(Object object) {
+		if (childrenFeatures == null) {
+			super.getChildrenFeatures(object);
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getISubsystem_Classes());
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getISubsystem_Properties());
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getISubsystem_Declaratives());
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getISubsystem_Types());
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getISubsystem_Stereotypes());
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getISubsystem_Events());
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getISubsystem_Annotations());
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getISubsystem_UseCases());
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getISubsystem_Actors());
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getISubsystem_Description());
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getISubsystem_Tags());
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getISubsystem_Dependencies());
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getISubsystem_HyperLinks());
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getISubsystem_TableLayouts());
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getISubsystem_MatrixLayouts());
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getISubsystem_TableInstances());
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getISubsystem_MatrixInstances());
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getISubsystem_EmbededFiles());
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getISubsystem_ComponentFiles());
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getISubsystem_AssociationElements());
+		}
+		return childrenFeatures;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EStructuralFeature getChildFeature(Object object, Object child) {
+		// Check the type of the specified child object and return the proper feature to use for
+		// adding (see {@link AddCommand}) it as a child.
+
+		return super.getChildFeature(object, child);
+	}
+
+	/**
+	 * This returns ISubsystem.gif.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object getImage(Object object) {
+		return overlayImage(object, getResourceLocator().getImage("full/obj16/ISubsystem")); //$NON-NLS-1$
+	}
+
+	/**
+	 * This returns the label text for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String getText(Object object) {
+		String label = ((ISubsystem)object).getName();
+		return label == null || label.length() == 0 ?
+			getString("_UI_ISubsystem_type") : //$NON-NLS-1$
+			getString("_UI_ISubsystem_type") + " " + label; //$NON-NLS-1$ //$NON-NLS-2$
+	}
+	
+
+	/**
+	 * This handles model notifications by calling {@link #updateChildren} to update any cached
+	 * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void notifyChanged(Notification notification) {
+		updateChildren(notification);
+
+		switch (notification.getFeatureID(ISubsystem.class)) {
+			case UMLRpyPackage.ISUBSYSTEM__ID:
+			case UMLRpyPackage.ISUBSYSTEM__MY_STATE:
+			case UMLRpyPackage.ISUBSYSTEM__NAME:
+			case UMLRpyPackage.ISUBSYSTEM__MODIFIED_TIME_WEAK:
+			case UMLRpyPackage.ISUBSYSTEM__EVENTS_BASE_ID:
+			case UMLRpyPackage.ISUBSYSTEM__CONFIGURATION_RELATED_TIME:
+			case UMLRpyPackage.ISUBSYSTEM__LAST_ID:
+			case UMLRpyPackage.ISUBSYSTEM__CMHEADER:
+			case UMLRpyPackage.ISUBSYSTEM__PREDEFINED_TYPES:
+			case UMLRpyPackage.ISUBSYSTEM__REQUIREMEN_TRACABILITY_HANDLE:
+			case UMLRpyPackage.ISUBSYSTEM__CODE_UPDATE_CG_TIME:
+			case UMLRpyPackage.ISUBSYSTEM__OBJECT_CREATION:
+			case UMLRpyPackage.ISUBSYSTEM__UML_DEPENDENCY_ID:
+				fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), false, true));
+				return;
+			case UMLRpyPackage.ISUBSYSTEM__CLASSES:
+			case UMLRpyPackage.ISUBSYSTEM__PROPERTIES:
+			case UMLRpyPackage.ISUBSYSTEM__DECLARATIVES:
+			case UMLRpyPackage.ISUBSYSTEM__TYPES:
+			case UMLRpyPackage.ISUBSYSTEM__STEREOTYPES:
+			case UMLRpyPackage.ISUBSYSTEM__EVENTS:
+			case UMLRpyPackage.ISUBSYSTEM__ANNOTATIONS:
+			case UMLRpyPackage.ISUBSYSTEM__USE_CASES:
+			case UMLRpyPackage.ISUBSYSTEM__ACTORS:
+			case UMLRpyPackage.ISUBSYSTEM__DESCRIPTION:
+			case UMLRpyPackage.ISUBSYSTEM__TAGS:
+			case UMLRpyPackage.ISUBSYSTEM__DEPENDENCIES:
+			case UMLRpyPackage.ISUBSYSTEM__HYPER_LINKS:
+			case UMLRpyPackage.ISUBSYSTEM__TABLE_LAYOUTS:
+			case UMLRpyPackage.ISUBSYSTEM__MATRIX_LAYOUTS:
+			case UMLRpyPackage.ISUBSYSTEM__TABLE_INSTANCES:
+			case UMLRpyPackage.ISUBSYSTEM__MATRIX_INSTANCES:
+			case UMLRpyPackage.ISUBSYSTEM__EMBEDED_FILES:
+			case UMLRpyPackage.ISUBSYSTEM__COMPONENT_FILES:
+			case UMLRpyPackage.ISUBSYSTEM__ASSOCIATION_ELEMENTS:
+				fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), true, false));
+				return;
+		}
+		super.notifyChanged(notification);
+	}
+
+	/**
+	 * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children
+	 * that can be created under this object.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) {
+		super.collectNewChildDescriptors(newChildDescriptors, object);
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getISubsystem_Classes(),
+				 UMLRpyFactory.eINSTANCE.createIClass()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getISubsystem_Classes(),
+				 UMLRpyFactory.eINSTANCE.createIAssociationClass()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getISubsystem_Classes(),
+				 UMLRpyFactory.eINSTANCE.createIStateChart()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getISubsystem_Properties(),
+				 UMLRpyFactory.eINSTANCE.createIPropertyContainer()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getISubsystem_Declaratives(),
+				 UMLRpyFactory.eINSTANCE.createIClass()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getISubsystem_Declaratives(),
+				 UMLRpyFactory.eINSTANCE.createIAssociationClass()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getISubsystem_Declaratives(),
+				 UMLRpyFactory.eINSTANCE.createIDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getISubsystem_Declaratives(),
+				 UMLRpyFactory.eINSTANCE.createICollaborationDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getISubsystem_Declaratives(),
+				 UMLRpyFactory.eINSTANCE.createIComponent()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getISubsystem_Declaratives(),
+				 UMLRpyFactory.eINSTANCE.createIComponentDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getISubsystem_Declaratives(),
+				 UMLRpyFactory.eINSTANCE.createIDeploymentDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getISubsystem_Declaratives(),
+				 UMLRpyFactory.eINSTANCE.createIInformationFlow()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getISubsystem_Declaratives(),
+				 UMLRpyFactory.eINSTANCE.createIInformationItem()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getISubsystem_Declaratives(),
+				 UMLRpyFactory.eINSTANCE.createIMSC()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getISubsystem_Declaratives(),
+				 UMLRpyFactory.eINSTANCE.createIObjectModelDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getISubsystem_Declaratives(),
+				 UMLRpyFactory.eINSTANCE.createIPanelDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getISubsystem_Declaratives(),
+				 UMLRpyFactory.eINSTANCE.createISequenceDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getISubsystem_Declaratives(),
+				 UMLRpyFactory.eINSTANCE.createIStateChart()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getISubsystem_Declaratives(),
+				 UMLRpyFactory.eINSTANCE.createIStateChartDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getISubsystem_Declaratives(),
+				 UMLRpyFactory.eINSTANCE.createIStereotype()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getISubsystem_Declaratives(),
+				 UMLRpyFactory.eINSTANCE.createIStructureDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getISubsystem_Declaratives(),
+				 UMLRpyFactory.eINSTANCE.createISubsystem()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getISubsystem_Declaratives(),
+				 UMLRpyFactory.eINSTANCE.createIType()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getISubsystem_Declaratives(),
+				 UMLRpyFactory.eINSTANCE.createIUCDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getISubsystem_Declaratives(),
+				 UMLRpyFactory.eINSTANCE.createIUseCaseDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getISubsystem_Types(),
+				 UMLRpyFactory.eINSTANCE.createIUnit()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getISubsystem_Types(),
+				 UMLRpyFactory.eINSTANCE.createIClassifier()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getISubsystem_Types(),
+				 UMLRpyFactory.eINSTANCE.createIActor()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getISubsystem_Types(),
+				 UMLRpyFactory.eINSTANCE.createIAnnotation()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getISubsystem_Types(),
+				 UMLRpyFactory.eINSTANCE.createIVariable()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getISubsystem_Types(),
+				 UMLRpyFactory.eINSTANCE.createIArgument()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getISubsystem_Types(),
+				 UMLRpyFactory.eINSTANCE.createIClass()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getISubsystem_Types(),
+				 UMLRpyFactory.eINSTANCE.createIAssociationClass()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getISubsystem_Types(),
+				 UMLRpyFactory.eINSTANCE.createIAttribute()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getISubsystem_Types(),
+				 UMLRpyFactory.eINSTANCE.createIDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getISubsystem_Types(),
+				 UMLRpyFactory.eINSTANCE.createICollaborationDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getISubsystem_Types(),
+				 UMLRpyFactory.eINSTANCE.createIComment()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getISubsystem_Types(),
+				 UMLRpyFactory.eINSTANCE.createIComponent()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getISubsystem_Types(),
+				 UMLRpyFactory.eINSTANCE.createIComponentDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getISubsystem_Types(),
+				 UMLRpyFactory.eINSTANCE.createIConstraint()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getISubsystem_Types(),
+				 UMLRpyFactory.eINSTANCE.createIControlledFile()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getISubsystem_Types(),
+				 UMLRpyFactory.eINSTANCE.createIDeploymentDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getISubsystem_Types(),
+				 UMLRpyFactory.eINSTANCE.createIInterfaceItem()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getISubsystem_Types(),
+				 UMLRpyFactory.eINSTANCE.createIEvent()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getISubsystem_Types(),
+				 UMLRpyFactory.eINSTANCE.createIEventReception()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getISubsystem_Types(),
+				 UMLRpyFactory.eINSTANCE.createIFile()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getISubsystem_Types(),
+				 UMLRpyFactory.eINSTANCE.createIFlowItem()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getISubsystem_Types(),
+				 UMLRpyFactory.eINSTANCE.createIRelation()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getISubsystem_Types(),
+				 UMLRpyFactory.eINSTANCE.createIInstance()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getISubsystem_Types(),
+				 UMLRpyFactory.eINSTANCE.createILink()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getISubsystem_Types(),
+				 UMLRpyFactory.eINSTANCE.createIMatrixLayout()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getISubsystem_Types(),
+				 UMLRpyFactory.eINSTANCE.createIMatrixView()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getISubsystem_Types(),
+				 UMLRpyFactory.eINSTANCE.createIModule()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getISubsystem_Types(),
+				 UMLRpyFactory.eINSTANCE.createINode()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getISubsystem_Types(),
+				 UMLRpyFactory.eINSTANCE.createIObjectModelDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getISubsystem_Types(),
+				 UMLRpyFactory.eINSTANCE.createIOperation()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getISubsystem_Types(),
+				 UMLRpyFactory.eINSTANCE.createIPackage()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getISubsystem_Types(),
+				 UMLRpyFactory.eINSTANCE.createIPanelDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getISubsystem_Types(),
+				 UMLRpyFactory.eINSTANCE.createIPort()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getISubsystem_Types(),
+				 UMLRpyFactory.eINSTANCE.createIProfile()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getISubsystem_Types(),
+				 UMLRpyFactory.eINSTANCE.createIProject()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getISubsystem_Types(),
+				 UMLRpyFactory.eINSTANCE.createIRequirement()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getISubsystem_Types(),
+				 UMLRpyFactory.eINSTANCE.createISequenceDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getISubsystem_Types(),
+				 UMLRpyFactory.eINSTANCE.createIStateChart()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getISubsystem_Types(),
+				 UMLRpyFactory.eINSTANCE.createIStateChartDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getISubsystem_Types(),
+				 UMLRpyFactory.eINSTANCE.createIStereotype()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getISubsystem_Types(),
+				 UMLRpyFactory.eINSTANCE.createIStructureDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getISubsystem_Types(),
+				 UMLRpyFactory.eINSTANCE.createISysMLPort()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getISubsystem_Types(),
+				 UMLRpyFactory.eINSTANCE.createITableLayout()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getISubsystem_Types(),
+				 UMLRpyFactory.eINSTANCE.createITableView()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getISubsystem_Types(),
+				 UMLRpyFactory.eINSTANCE.createITag()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getISubsystem_Types(),
+				 UMLRpyFactory.eINSTANCE.createITemplateParameter()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getISubsystem_Types(),
+				 UMLRpyFactory.eINSTANCE.createIType()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getISubsystem_Types(),
+				 UMLRpyFactory.eINSTANCE.createIUseCase()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getISubsystem_Types(),
+				 UMLRpyFactory.eINSTANCE.createIUseCaseDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getISubsystem_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIUnit()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getISubsystem_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIClassifier()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getISubsystem_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIActor()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getISubsystem_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIAnnotation()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getISubsystem_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIVariable()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getISubsystem_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIArgument()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getISubsystem_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIClass()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getISubsystem_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIAssociationClass()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getISubsystem_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIAttribute()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getISubsystem_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getISubsystem_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createICollaborationDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getISubsystem_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIComment()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getISubsystem_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIComponent()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getISubsystem_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIComponentDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getISubsystem_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIConstraint()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getISubsystem_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIControlledFile()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getISubsystem_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIDeploymentDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getISubsystem_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIInterfaceItem()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getISubsystem_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIEvent()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getISubsystem_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIEventReception()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getISubsystem_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIFile()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getISubsystem_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIFlowItem()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getISubsystem_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIRelation()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getISubsystem_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIInstance()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getISubsystem_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createILink()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getISubsystem_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIMatrixLayout()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getISubsystem_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIMatrixView()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getISubsystem_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIModule()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getISubsystem_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createINode()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getISubsystem_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIObjectModelDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getISubsystem_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIOperation()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getISubsystem_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIPackage()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getISubsystem_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIPanelDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getISubsystem_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIPort()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getISubsystem_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIProfile()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getISubsystem_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIProject()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getISubsystem_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIRequirement()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getISubsystem_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createISequenceDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getISubsystem_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIStateChart()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getISubsystem_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIStateChartDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getISubsystem_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIStereotype()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getISubsystem_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIStructureDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getISubsystem_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createISysMLPort()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getISubsystem_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createITableLayout()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getISubsystem_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createITableView()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getISubsystem_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createITag()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getISubsystem_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createITemplateParameter()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getISubsystem_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIType()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getISubsystem_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIUseCase()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getISubsystem_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIUseCaseDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getISubsystem_Events(),
+				 UMLRpyFactory.eINSTANCE.createIInterfaceItem()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getISubsystem_Events(),
+				 UMLRpyFactory.eINSTANCE.createIEvent()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getISubsystem_Events(),
+				 UMLRpyFactory.eINSTANCE.createIEventReception()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getISubsystem_Events(),
+				 UMLRpyFactory.eINSTANCE.createIOperation()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getISubsystem_Annotations(),
+				 UMLRpyFactory.eINSTANCE.createIUnit()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getISubsystem_Annotations(),
+				 UMLRpyFactory.eINSTANCE.createIClassifier()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getISubsystem_Annotations(),
+				 UMLRpyFactory.eINSTANCE.createIActor()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getISubsystem_Annotations(),
+				 UMLRpyFactory.eINSTANCE.createIAnnotation()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getISubsystem_Annotations(),
+				 UMLRpyFactory.eINSTANCE.createIVariable()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getISubsystem_Annotations(),
+				 UMLRpyFactory.eINSTANCE.createIArgument()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getISubsystem_Annotations(),
+				 UMLRpyFactory.eINSTANCE.createIClass()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getISubsystem_Annotations(),
+				 UMLRpyFactory.eINSTANCE.createIAssociationClass()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getISubsystem_Annotations(),
+				 UMLRpyFactory.eINSTANCE.createIAttribute()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getISubsystem_Annotations(),
+				 UMLRpyFactory.eINSTANCE.createIDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getISubsystem_Annotations(),
+				 UMLRpyFactory.eINSTANCE.createICollaborationDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getISubsystem_Annotations(),
+				 UMLRpyFactory.eINSTANCE.createIComment()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getISubsystem_Annotations(),
+				 UMLRpyFactory.eINSTANCE.createIComponent()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getISubsystem_Annotations(),
+				 UMLRpyFactory.eINSTANCE.createIComponentDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getISubsystem_Annotations(),
+				 UMLRpyFactory.eINSTANCE.createIConstraint()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getISubsystem_Annotations(),
+				 UMLRpyFactory.eINSTANCE.createIControlledFile()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getISubsystem_Annotations(),
+				 UMLRpyFactory.eINSTANCE.createIDeploymentDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getISubsystem_Annotations(),
+				 UMLRpyFactory.eINSTANCE.createIInterfaceItem()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getISubsystem_Annotations(),
+				 UMLRpyFactory.eINSTANCE.createIEvent()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getISubsystem_Annotations(),
+				 UMLRpyFactory.eINSTANCE.createIEventReception()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getISubsystem_Annotations(),
+				 UMLRpyFactory.eINSTANCE.createIFile()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getISubsystem_Annotations(),
+				 UMLRpyFactory.eINSTANCE.createIFlowItem()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getISubsystem_Annotations(),
+				 UMLRpyFactory.eINSTANCE.createIRelation()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getISubsystem_Annotations(),
+				 UMLRpyFactory.eINSTANCE.createIInstance()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getISubsystem_Annotations(),
+				 UMLRpyFactory.eINSTANCE.createILink()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getISubsystem_Annotations(),
+				 UMLRpyFactory.eINSTANCE.createIMatrixLayout()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getISubsystem_Annotations(),
+				 UMLRpyFactory.eINSTANCE.createIMatrixView()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getISubsystem_Annotations(),
+				 UMLRpyFactory.eINSTANCE.createIModule()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getISubsystem_Annotations(),
+				 UMLRpyFactory.eINSTANCE.createINode()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getISubsystem_Annotations(),
+				 UMLRpyFactory.eINSTANCE.createIObjectModelDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getISubsystem_Annotations(),
+				 UMLRpyFactory.eINSTANCE.createIOperation()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getISubsystem_Annotations(),
+				 UMLRpyFactory.eINSTANCE.createIPackage()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getISubsystem_Annotations(),
+				 UMLRpyFactory.eINSTANCE.createIPanelDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getISubsystem_Annotations(),
+				 UMLRpyFactory.eINSTANCE.createIPort()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getISubsystem_Annotations(),
+				 UMLRpyFactory.eINSTANCE.createIProfile()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getISubsystem_Annotations(),
+				 UMLRpyFactory.eINSTANCE.createIProject()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getISubsystem_Annotations(),
+				 UMLRpyFactory.eINSTANCE.createIRequirement()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getISubsystem_Annotations(),
+				 UMLRpyFactory.eINSTANCE.createISequenceDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getISubsystem_Annotations(),
+				 UMLRpyFactory.eINSTANCE.createIStateChart()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getISubsystem_Annotations(),
+				 UMLRpyFactory.eINSTANCE.createIStateChartDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getISubsystem_Annotations(),
+				 UMLRpyFactory.eINSTANCE.createIStereotype()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getISubsystem_Annotations(),
+				 UMLRpyFactory.eINSTANCE.createIStructureDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getISubsystem_Annotations(),
+				 UMLRpyFactory.eINSTANCE.createISysMLPort()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getISubsystem_Annotations(),
+				 UMLRpyFactory.eINSTANCE.createITableLayout()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getISubsystem_Annotations(),
+				 UMLRpyFactory.eINSTANCE.createITableView()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getISubsystem_Annotations(),
+				 UMLRpyFactory.eINSTANCE.createITag()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getISubsystem_Annotations(),
+				 UMLRpyFactory.eINSTANCE.createITemplateParameter()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getISubsystem_Annotations(),
+				 UMLRpyFactory.eINSTANCE.createIType()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getISubsystem_Annotations(),
+				 UMLRpyFactory.eINSTANCE.createIUseCase()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getISubsystem_Annotations(),
+				 UMLRpyFactory.eINSTANCE.createIUseCaseDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getISubsystem_UseCases(),
+				 UMLRpyFactory.eINSTANCE.createIClassifier()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getISubsystem_UseCases(),
+				 UMLRpyFactory.eINSTANCE.createIActor()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getISubsystem_UseCases(),
+				 UMLRpyFactory.eINSTANCE.createIClass()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getISubsystem_UseCases(),
+				 UMLRpyFactory.eINSTANCE.createIAssociationClass()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getISubsystem_UseCases(),
+				 UMLRpyFactory.eINSTANCE.createIInterfaceItem()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getISubsystem_UseCases(),
+				 UMLRpyFactory.eINSTANCE.createIEvent()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getISubsystem_UseCases(),
+				 UMLRpyFactory.eINSTANCE.createIEventReception()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getISubsystem_UseCases(),
+				 UMLRpyFactory.eINSTANCE.createIFlowItem()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getISubsystem_UseCases(),
+				 UMLRpyFactory.eINSTANCE.createINode()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getISubsystem_UseCases(),
+				 UMLRpyFactory.eINSTANCE.createIOperation()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getISubsystem_UseCases(),
+				 UMLRpyFactory.eINSTANCE.createIStateChart()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getISubsystem_UseCases(),
+				 UMLRpyFactory.eINSTANCE.createIStereotype()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getISubsystem_UseCases(),
+				 UMLRpyFactory.eINSTANCE.createIType()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getISubsystem_UseCases(),
+				 UMLRpyFactory.eINSTANCE.createIUseCase()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getISubsystem_Actors(),
+				 UMLRpyFactory.eINSTANCE.createIClassifier()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getISubsystem_Actors(),
+				 UMLRpyFactory.eINSTANCE.createIActor()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getISubsystem_Actors(),
+				 UMLRpyFactory.eINSTANCE.createIClass()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getISubsystem_Actors(),
+				 UMLRpyFactory.eINSTANCE.createIAssociationClass()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getISubsystem_Actors(),
+				 UMLRpyFactory.eINSTANCE.createIInterfaceItem()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getISubsystem_Actors(),
+				 UMLRpyFactory.eINSTANCE.createIEvent()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getISubsystem_Actors(),
+				 UMLRpyFactory.eINSTANCE.createIEventReception()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getISubsystem_Actors(),
+				 UMLRpyFactory.eINSTANCE.createIFlowItem()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getISubsystem_Actors(),
+				 UMLRpyFactory.eINSTANCE.createINode()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getISubsystem_Actors(),
+				 UMLRpyFactory.eINSTANCE.createIOperation()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getISubsystem_Actors(),
+				 UMLRpyFactory.eINSTANCE.createIStateChart()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getISubsystem_Actors(),
+				 UMLRpyFactory.eINSTANCE.createIStereotype()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getISubsystem_Actors(),
+				 UMLRpyFactory.eINSTANCE.createIType()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getISubsystem_Actors(),
+				 UMLRpyFactory.eINSTANCE.createIUseCase()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getISubsystem_Description(),
+				 UMLRpyFactory.eINSTANCE.createIDescription()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getISubsystem_Tags(),
+				 UMLRpyFactory.eINSTANCE.createITag()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getISubsystem_Dependencies(),
+				 UMLRpyFactory.eINSTANCE.createIDependency()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getISubsystem_Dependencies(),
+				 UMLRpyFactory.eINSTANCE.createIHyperLink()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getISubsystem_HyperLinks(),
+				 UMLRpyFactory.eINSTANCE.createIExternalHyperlink()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getISubsystem_HyperLinks(),
+				 UMLRpyFactory.eINSTANCE.createIInternalHyperlink()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getISubsystem_HyperLinks(),
+				 UMLRpyFactory.eINSTANCE.createIMHyperLink()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getISubsystem_TableLayouts(),
+				 UMLRpyFactory.eINSTANCE.createIModelElement()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getISubsystem_TableLayouts(),
+				 UMLRpyFactory.eINSTANCE.createIStateVertex()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getISubsystem_TableLayouts(),
+				 UMLRpyFactory.eINSTANCE.createIState()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getISubsystem_TableLayouts(),
+				 UMLRpyFactory.eINSTANCE.createIAcceptEventAction()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getISubsystem_TableLayouts(),
+				 UMLRpyFactory.eINSTANCE.createIAcceptTimeEvent()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getISubsystem_TableLayouts(),
+				 UMLRpyFactory.eINSTANCE.createIAction()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getISubsystem_TableLayouts(),
+				 UMLRpyFactory.eINSTANCE.createIActivityGraph()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getISubsystem_TableLayouts(),
+				 UMLRpyFactory.eINSTANCE.createIUnit()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getISubsystem_TableLayouts(),
+				 UMLRpyFactory.eINSTANCE.createIClassifier()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getISubsystem_TableLayouts(),
+				 UMLRpyFactory.eINSTANCE.createIActor()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getISubsystem_TableLayouts(),
+				 UMLRpyFactory.eINSTANCE.createIAnnotation()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getISubsystem_TableLayouts(),
+				 UMLRpyFactory.eINSTANCE.createIVariable()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getISubsystem_TableLayouts(),
+				 UMLRpyFactory.eINSTANCE.createIArgument()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getISubsystem_TableLayouts(),
+				 UMLRpyFactory.eINSTANCE.createIClass()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getISubsystem_TableLayouts(),
+				 UMLRpyFactory.eINSTANCE.createIAssociationClass()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getISubsystem_TableLayouts(),
+				 UMLRpyFactory.eINSTANCE.createIAssociationEnd()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getISubsystem_TableLayouts(),
+				 UMLRpyFactory.eINSTANCE.createIAssociationRole()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getISubsystem_TableLayouts(),
+				 UMLRpyFactory.eINSTANCE.createIAttribute()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getISubsystem_TableLayouts(),
+				 UMLRpyFactory.eINSTANCE.createICallOperation()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getISubsystem_TableLayouts(),
+				 UMLRpyFactory.eINSTANCE.createIClassifierRole()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getISubsystem_TableLayouts(),
+				 UMLRpyFactory.eINSTANCE.createICollaboration()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getISubsystem_TableLayouts(),
+				 UMLRpyFactory.eINSTANCE.createIDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getISubsystem_TableLayouts(),
+				 UMLRpyFactory.eINSTANCE.createICollaborationDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getISubsystem_TableLayouts(),
+				 UMLRpyFactory.eINSTANCE.createIComment()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getISubsystem_TableLayouts(),
+				 UMLRpyFactory.eINSTANCE.createIComponent()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getISubsystem_TableLayouts(),
+				 UMLRpyFactory.eINSTANCE.createIComponentDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getISubsystem_TableLayouts(),
+				 UMLRpyFactory.eINSTANCE.createIComponentInstance()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getISubsystem_TableLayouts(),
+				 UMLRpyFactory.eINSTANCE.createIConfiguration()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getISubsystem_TableLayouts(),
+				 UMLRpyFactory.eINSTANCE.createIConnector()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getISubsystem_TableLayouts(),
+				 UMLRpyFactory.eINSTANCE.createIConstraint()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getISubsystem_TableLayouts(),
+				 UMLRpyFactory.eINSTANCE.createIValueSpecification()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getISubsystem_TableLayouts(),
+				 UMLRpyFactory.eINSTANCE.createIContextSpecification()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getISubsystem_TableLayouts(),
+				 UMLRpyFactory.eINSTANCE.createIControlledFile()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getISubsystem_TableLayouts(),
+				 UMLRpyFactory.eINSTANCE.createIDependency()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getISubsystem_TableLayouts(),
+				 UMLRpyFactory.eINSTANCE.createIDeploymentDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getISubsystem_TableLayouts(),
+				 UMLRpyFactory.eINSTANCE.createIEnumerationLiteral()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getISubsystem_TableLayouts(),
+				 UMLRpyFactory.eINSTANCE.createIInterfaceItem()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getISubsystem_TableLayouts(),
+				 UMLRpyFactory.eINSTANCE.createIEvent()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getISubsystem_TableLayouts(),
+				 UMLRpyFactory.eINSTANCE.createIEventReception()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getISubsystem_TableLayouts(),
+				 UMLRpyFactory.eINSTANCE.createIExecutionOccurrence()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getISubsystem_TableLayouts(),
+				 UMLRpyFactory.eINSTANCE.createIExternalHyperlink()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getISubsystem_TableLayouts(),
+				 UMLRpyFactory.eINSTANCE.createIFile()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getISubsystem_TableLayouts(),
+				 UMLRpyFactory.eINSTANCE.createIFileFragment()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getISubsystem_TableLayouts(),
+				 UMLRpyFactory.eINSTANCE.createIFlow()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getISubsystem_TableLayouts(),
+				 UMLRpyFactory.eINSTANCE.createIFlowItem()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getISubsystem_TableLayouts(),
+				 UMLRpyFactory.eINSTANCE.createIGeneralization()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getISubsystem_TableLayouts(),
+				 UMLRpyFactory.eINSTANCE.createIGuard()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getISubsystem_TableLayouts(),
+				 UMLRpyFactory.eINSTANCE.createIHyperLink()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getISubsystem_TableLayouts(),
+				 UMLRpyFactory.eINSTANCE.createIInformationFlow()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getISubsystem_TableLayouts(),
+				 UMLRpyFactory.eINSTANCE.createIRelation()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getISubsystem_TableLayouts(),
+				 UMLRpyFactory.eINSTANCE.createIInstance()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getISubsystem_TableLayouts(),
+				 UMLRpyFactory.eINSTANCE.createIInstanceSlot()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getISubsystem_TableLayouts(),
+				 UMLRpyFactory.eINSTANCE.createIInstanceSpecification()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getISubsystem_TableLayouts(),
+				 UMLRpyFactory.eINSTANCE.createIInstanceValue()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getISubsystem_TableLayouts(),
+				 UMLRpyFactory.eINSTANCE.createIInteractionOccurrence()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getISubsystem_TableLayouts(),
+				 UMLRpyFactory.eINSTANCE.createIInteractionOperand()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getISubsystem_TableLayouts(),
+				 UMLRpyFactory.eINSTANCE.createIInteractionOperator()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getISubsystem_TableLayouts(),
+				 UMLRpyFactory.eINSTANCE.createIInternalHyperlink()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getISubsystem_TableLayouts(),
+				 UMLRpyFactory.eINSTANCE.createILink()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getISubsystem_TableLayouts(),
+				 UMLRpyFactory.eINSTANCE.createILiteralSpecification()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getISubsystem_TableLayouts(),
+				 UMLRpyFactory.eINSTANCE.createIMHyperLink()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getISubsystem_TableLayouts(),
+				 UMLRpyFactory.eINSTANCE.createIMatrixLayout()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getISubsystem_TableLayouts(),
+				 UMLRpyFactory.eINSTANCE.createIMatrixView()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getISubsystem_TableLayouts(),
+				 UMLRpyFactory.eINSTANCE.createIMessage()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getISubsystem_TableLayouts(),
+				 UMLRpyFactory.eINSTANCE.createIMessagePoint()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getISubsystem_TableLayouts(),
+				 UMLRpyFactory.eINSTANCE.createIModule()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getISubsystem_TableLayouts(),
+				 UMLRpyFactory.eINSTANCE.createINode()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getISubsystem_TableLayouts(),
+				 UMLRpyFactory.eINSTANCE.createIObjectLink()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getISubsystem_TableLayouts(),
+				 UMLRpyFactory.eINSTANCE.createIObjectModelDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getISubsystem_TableLayouts(),
+				 UMLRpyFactory.eINSTANCE.createIObjectNode()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getISubsystem_TableLayouts(),
+				 UMLRpyFactory.eINSTANCE.createIOperation()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getISubsystem_TableLayouts(),
+				 UMLRpyFactory.eINSTANCE.createIPackage()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getISubsystem_TableLayouts(),
+				 UMLRpyFactory.eINSTANCE.createIPanelDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getISubsystem_TableLayouts(),
+				 UMLRpyFactory.eINSTANCE.createIPart()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getISubsystem_TableLayouts(),
+				 UMLRpyFactory.eINSTANCE.createIPin()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getISubsystem_TableLayouts(),
+				 UMLRpyFactory.eINSTANCE.createIPort()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getISubsystem_TableLayouts(),
+				 UMLRpyFactory.eINSTANCE.createIPrimitiveOperation()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getISubsystem_TableLayouts(),
+				 UMLRpyFactory.eINSTANCE.createIProfile()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getISubsystem_TableLayouts(),
+				 UMLRpyFactory.eINSTANCE.createIProject()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getISubsystem_TableLayouts(),
+				 UMLRpyFactory.eINSTANCE.createIRequirement()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getISubsystem_TableLayouts(),
+				 UMLRpyFactory.eINSTANCE.createISendAction()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getISubsystem_TableLayouts(),
+				 UMLRpyFactory.eINSTANCE.createISequenceDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getISubsystem_TableLayouts(),
+				 UMLRpyFactory.eINSTANCE.createIStateChart()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getISubsystem_TableLayouts(),
+				 UMLRpyFactory.eINSTANCE.createIStateChartDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getISubsystem_TableLayouts(),
+				 UMLRpyFactory.eINSTANCE.createIStereotype()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getISubsystem_TableLayouts(),
+				 UMLRpyFactory.eINSTANCE.createIStructureDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getISubsystem_TableLayouts(),
+				 UMLRpyFactory.eINSTANCE.createISubsystem()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getISubsystem_TableLayouts(),
+				 UMLRpyFactory.eINSTANCE.createISwimlane()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getISubsystem_TableLayouts(),
+				 UMLRpyFactory.eINSTANCE.createISysMLPort()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getISubsystem_TableLayouts(),
+				 UMLRpyFactory.eINSTANCE.createITableLayout()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getISubsystem_TableLayouts(),
+				 UMLRpyFactory.eINSTANCE.createITableView()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getISubsystem_TableLayouts(),
+				 UMLRpyFactory.eINSTANCE.createITag()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getISubsystem_TableLayouts(),
+				 UMLRpyFactory.eINSTANCE.createITemplateInstantiation()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getISubsystem_TableLayouts(),
+				 UMLRpyFactory.eINSTANCE.createITemplateInstantiationParameter()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getISubsystem_TableLayouts(),
+				 UMLRpyFactory.eINSTANCE.createITemplateParameter()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getISubsystem_TableLayouts(),
+				 UMLRpyFactory.eINSTANCE.createITransition()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getISubsystem_TableLayouts(),
+				 UMLRpyFactory.eINSTANCE.createITrigger()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getISubsystem_TableLayouts(),
+				 UMLRpyFactory.eINSTANCE.createITriggered()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getISubsystem_TableLayouts(),
+				 UMLRpyFactory.eINSTANCE.createIType()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getISubsystem_TableLayouts(),
+				 UMLRpyFactory.eINSTANCE.createIUseCase()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getISubsystem_TableLayouts(),
+				 UMLRpyFactory.eINSTANCE.createIUseCaseDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getISubsystem_MatrixLayouts(),
+				 UMLRpyFactory.eINSTANCE.createIMatrixLayout()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getISubsystem_TableInstances(),
+				 UMLRpyFactory.eINSTANCE.createITableInstance()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getISubsystem_MatrixInstances(),
+				 UMLRpyFactory.eINSTANCE.createIMatrixInstance()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getISubsystem_EmbededFiles(),
+				 UMLRpyFactory.eINSTANCE.createIEmbededFile()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getISubsystem_ComponentFiles(),
+				 UMLRpyFactory.eINSTANCE.createIFile()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getISubsystem_AssociationElements(),
+				 UMLRpyFactory.eINSTANCE.createIAssociationClass()));
+	}
+
+	/**
+	 * This returns the label text for {@link org.eclipse.emf.edit.command.CreateChildCommand}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String getCreateChildText(Object owner, Object feature, Object child, Collection<?> selection) {
+		Object childFeature = feature;
+		Object childObject = child;
+
+		boolean qualify =
+			childFeature == UMLRpyPackage.eINSTANCE.getISubsystem_Classes() ||
+			childFeature == UMLRpyPackage.eINSTANCE.getISubsystem_Declaratives() ||
+			childFeature == UMLRpyPackage.eINSTANCE.getISubsystem_Types() ||
+			childFeature == UMLRpyPackage.eINSTANCE.getISubsystem_Stereotypes() ||
+			childFeature == UMLRpyPackage.eINSTANCE.getISubsystem_Annotations() ||
+			childFeature == UMLRpyPackage.eINSTANCE.getISubsystem_UseCases() ||
+			childFeature == UMLRpyPackage.eINSTANCE.getISubsystem_Actors() ||
+			childFeature == UMLRpyPackage.eINSTANCE.getISubsystem_TableLayouts() ||
+			childFeature == UMLRpyPackage.eINSTANCE.getISubsystem_AssociationElements() ||
+			childFeature == UMLRpyPackage.eINSTANCE.getISubsystem_Events() ||
+			childFeature == UMLRpyPackage.eINSTANCE.getISubsystem_ComponentFiles() ||
+			childFeature == UMLRpyPackage.eINSTANCE.getISubsystem_MatrixLayouts() ||
+			childFeature == UMLRpyPackage.eINSTANCE.getISubsystem_Tags() ||
+			childFeature == UMLRpyPackage.eINSTANCE.getISubsystem_Dependencies() ||
+			childFeature == UMLRpyPackage.eINSTANCE.getISubsystem_HyperLinks();
+
+		if (qualify) {
+			return getString
+				("_UI_CreateChild_text2", //$NON-NLS-1$
+				 new Object[] { getTypeText(childObject), getFeatureText(childFeature), getTypeText(owner) });
+		}
+		return super.getCreateChildText(owner, feature, child, selection);
+	}
+
+}
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/ISwimlaneItemProvider.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/ISwimlaneItemProvider.java
new file mode 100755
index 0000000..93de8f5
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/ISwimlaneItemProvider.java
@@ -0,0 +1,340 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.provider;
+
+
+import java.util.Collection;
+import java.util.List;
+
+import org.eclipse.emf.common.notify.AdapterFactory;
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.ecore.EStructuralFeature;
+
+import org.eclipse.emf.edit.provider.ComposeableAdapterFactory;
+import org.eclipse.emf.edit.provider.IItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.ItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.ViewerNotification;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ISwimlane;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyFactory;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ISwimlane} object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class ISwimlaneItemProvider extends IModelElementItemProvider {
+	/**
+	 * This constructs an instance from a factory and a notifier.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public ISwimlaneItemProvider(AdapterFactory adapterFactory) {
+		super(adapterFactory);
+	}
+
+	/**
+	 * This returns the property descriptors for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) {
+		if (itemPropertyDescriptors == null) {
+			super.getPropertyDescriptors(object);
+
+			addIdPropertyDescriptor(object);
+			addNamePropertyDescriptor(object);
+			addModifiedTimeWeakPropertyDescriptor(object);
+			addRepresentsPropertyDescriptor(object);
+			addMyStatePropertyDescriptor(object);
+			addObjectCreationPropertyDescriptor(object);
+			addUmlDependencyIDPropertyDescriptor(object);
+		}
+		return itemPropertyDescriptors;
+	}
+
+	/**
+	 * This adds a property descriptor for the Id feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addIdPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_ISwimlane_id_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_ISwimlane_id_feature", "_UI_ISwimlane_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getISwimlane_Id(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Name feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addNamePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_ISwimlane_name_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_ISwimlane_name_feature", "_UI_ISwimlane_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getISwimlane_Name(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Modified Time Weak feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addModifiedTimeWeakPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_ISwimlane_modifiedTimeWeak_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_ISwimlane_modifiedTimeWeak_feature", "_UI_ISwimlane_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getISwimlane_ModifiedTimeWeak(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Represents feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addRepresentsPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_ISwimlane_represents_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_ISwimlane_represents_feature", "_UI_ISwimlane_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getISwimlane_Represents(),
+				 true,
+				 false,
+				 true,
+				 null,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the My State feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addMyStatePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_ISwimlane_myState_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_ISwimlane_myState_feature", "_UI_ISwimlane_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getISwimlane_MyState(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Object Creation feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addObjectCreationPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_ISwimlane_objectCreation_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_ISwimlane_objectCreation_feature", "_UI_ISwimlane_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getISwimlane_ObjectCreation(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Uml Dependency ID feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addUmlDependencyIDPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_ISwimlane_umlDependencyID_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_ISwimlane_umlDependencyID_feature", "_UI_ISwimlane_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getISwimlane_UmlDependencyID(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This specifies how to implement {@link #getChildren} and is used to deduce an appropriate feature for an
+	 * {@link org.eclipse.emf.edit.command.AddCommand}, {@link org.eclipse.emf.edit.command.RemoveCommand} or
+	 * {@link org.eclipse.emf.edit.command.MoveCommand} in {@link #createCommand}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Collection<? extends EStructuralFeature> getChildrenFeatures(Object object) {
+		if (childrenFeatures == null) {
+			super.getChildrenFeatures(object);
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getISwimlane_Description());
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getISwimlane_Swimlanes());
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getISwimlane_Stereotypes());
+		}
+		return childrenFeatures;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EStructuralFeature getChildFeature(Object object, Object child) {
+		// Check the type of the specified child object and return the proper feature to use for
+		// adding (see {@link AddCommand}) it as a child.
+
+		return super.getChildFeature(object, child);
+	}
+
+	/**
+	 * This returns ISwimlane.gif.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object getImage(Object object) {
+		return overlayImage(object, getResourceLocator().getImage("full/obj16/ISwimlane")); //$NON-NLS-1$
+	}
+
+	/**
+	 * This returns the label text for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String getText(Object object) {
+		String label = ((ISwimlane)object).getName();
+		return label == null || label.length() == 0 ?
+			getString("_UI_ISwimlane_type") : //$NON-NLS-1$
+			getString("_UI_ISwimlane_type") + " " + label; //$NON-NLS-1$ //$NON-NLS-2$
+	}
+	
+
+	/**
+	 * This handles model notifications by calling {@link #updateChildren} to update any cached
+	 * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void notifyChanged(Notification notification) {
+		updateChildren(notification);
+
+		switch (notification.getFeatureID(ISwimlane.class)) {
+			case UMLRpyPackage.ISWIMLANE__ID:
+			case UMLRpyPackage.ISWIMLANE__NAME:
+			case UMLRpyPackage.ISWIMLANE__MODIFIED_TIME_WEAK:
+			case UMLRpyPackage.ISWIMLANE__MY_STATE:
+			case UMLRpyPackage.ISWIMLANE__OBJECT_CREATION:
+			case UMLRpyPackage.ISWIMLANE__UML_DEPENDENCY_ID:
+				fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), false, true));
+				return;
+			case UMLRpyPackage.ISWIMLANE__DESCRIPTION:
+			case UMLRpyPackage.ISWIMLANE__SWIMLANES:
+			case UMLRpyPackage.ISWIMLANE__STEREOTYPES:
+				fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), true, false));
+				return;
+		}
+		super.notifyChanged(notification);
+	}
+
+	/**
+	 * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children
+	 * that can be created under this object.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) {
+		super.collectNewChildDescriptors(newChildDescriptors, object);
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getISwimlane_Description(),
+				 UMLRpyFactory.eINSTANCE.createIDescription()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getISwimlane_Swimlanes(),
+				 UMLRpyFactory.eINSTANCE.createISwimlane()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getISwimlane_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIStereotype()));
+	}
+
+}
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/ISysMLPortItemProvider.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/ISysMLPortItemProvider.java
new file mode 100755
index 0000000..09649a6
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/ISysMLPortItemProvider.java
@@ -0,0 +1,590 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.provider;
+
+
+import java.util.Collection;
+import java.util.List;
+
+import org.eclipse.emf.common.notify.AdapterFactory;
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.ecore.EStructuralFeature;
+
+import org.eclipse.emf.edit.provider.ComposeableAdapterFactory;
+import org.eclipse.emf.edit.provider.IItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.ItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.ViewerNotification;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ISysMLPort;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyFactory;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ISysMLPort} object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class ISysMLPortItemProvider extends IInstanceItemProvider {
+	/**
+	 * This constructs an instance from a factory and a notifier.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public ISysMLPortItemProvider(AdapterFactory adapterFactory) {
+		super(adapterFactory);
+	}
+
+	/**
+	 * This returns the property descriptors for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) {
+		if (itemPropertyDescriptors == null) {
+			super.getPropertyDescriptors(object);
+
+			addMultiplicityPropertyDescriptor(object);
+			addOtherClassPropertyDescriptor(object);
+			addDirectionPropertyDescriptor(object);
+			addLastIDPropertyDescriptor(object);
+			addReversedPropertyDescriptor(object);
+		}
+		return itemPropertyDescriptors;
+	}
+
+	/**
+	 * This adds a property descriptor for the Multiplicity feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addMultiplicityPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_End2_Type_multiplicity_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_End2_Type_multiplicity_feature", "_UI_End2_Type_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getEnd2_Type_Multiplicity(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Other Class feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addOtherClassPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_ISysMLPort_otherClass_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_ISysMLPort_otherClass_feature", "_UI_ISysMLPort_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getISysMLPort_OtherClass(),
+				 true,
+				 false,
+				 true,
+				 null,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Direction feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addDirectionPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_ISysMLPort_direction_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_ISysMLPort_direction_feature", "_UI_ISysMLPort_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getISysMLPort_Direction(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Last ID feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addLastIDPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_ISysMLPort_lastID_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_ISysMLPort_lastID_feature", "_UI_ISysMLPort_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getISysMLPort_LastID(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Reversed feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addReversedPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_ISysMLPort_reversed_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_ISysMLPort_reversed_feature", "_UI_ISysMLPort_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getISysMLPort_Reversed(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This specifies how to implement {@link #getChildren} and is used to deduce an appropriate feature for an
+	 * {@link org.eclipse.emf.edit.command.AddCommand}, {@link org.eclipse.emf.edit.command.RemoveCommand} or
+	 * {@link org.eclipse.emf.edit.command.MoveCommand} in {@link #createCommand}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Collection<? extends EStructuralFeature> getChildrenFeatures(Object object) {
+		if (childrenFeatures == null) {
+			super.getChildrenFeatures(object);
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getToLinkType_ImplicitClass());
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getISysMLPort_Dependencies());
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getISysMLPort_Stereotypes());
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getISysMLPort_Tags());
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getISysMLPort_Description());
+		}
+		return childrenFeatures;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EStructuralFeature getChildFeature(Object object, Object child) {
+		// Check the type of the specified child object and return the proper feature to use for
+		// adding (see {@link AddCommand}) it as a child.
+
+		return super.getChildFeature(object, child);
+	}
+
+	/**
+	 * This returns ISysMLPort.gif.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object getImage(Object object) {
+		return overlayImage(object, getResourceLocator().getImage("full/obj16/ISysMLPort")); //$NON-NLS-1$
+	}
+
+	/**
+	 * This returns the label text for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String getText(Object object) {
+		String label = ((ISysMLPort)object).getName();
+		return label == null || label.length() == 0 ?
+			getString("_UI_ISysMLPort_type") : //$NON-NLS-1$
+			getString("_UI_ISysMLPort_type") + " " + label; //$NON-NLS-1$ //$NON-NLS-2$
+	}
+	
+
+	/**
+	 * This handles model notifications by calling {@link #updateChildren} to update any cached
+	 * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void notifyChanged(Notification notification) {
+		updateChildren(notification);
+
+		switch (notification.getFeatureID(ISysMLPort.class)) {
+			case UMLRpyPackage.ISYS_ML_PORT__MULTIPLICITY:
+			case UMLRpyPackage.ISYS_ML_PORT__DIRECTION:
+			case UMLRpyPackage.ISYS_ML_PORT__LAST_ID:
+			case UMLRpyPackage.ISYS_ML_PORT__REVERSED:
+				fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), false, true));
+				return;
+			case UMLRpyPackage.ISYS_ML_PORT__IMPLICIT_CLASS:
+			case UMLRpyPackage.ISYS_ML_PORT__DEPENDENCIES:
+			case UMLRpyPackage.ISYS_ML_PORT__STEREOTYPES:
+			case UMLRpyPackage.ISYS_ML_PORT__TAGS:
+			case UMLRpyPackage.ISYS_ML_PORT__DESCRIPTION:
+				fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), true, false));
+				return;
+		}
+		super.notifyChanged(notification);
+	}
+
+	/**
+	 * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children
+	 * that can be created under this object.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) {
+		super.collectNewChildDescriptors(newChildDescriptors, object);
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getToLinkType_ImplicitClass(),
+				 UMLRpyFactory.eINSTANCE.createIClass()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getToLinkType_ImplicitClass(),
+				 UMLRpyFactory.eINSTANCE.createIAssociationClass()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getToLinkType_ImplicitClass(),
+				 UMLRpyFactory.eINSTANCE.createIStateChart()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getISysMLPort_Dependencies(),
+				 UMLRpyFactory.eINSTANCE.createIDependency()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getISysMLPort_Dependencies(),
+				 UMLRpyFactory.eINSTANCE.createIHyperLink()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getISysMLPort_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIUnit()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getISysMLPort_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIClassifier()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getISysMLPort_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIActor()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getISysMLPort_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIAnnotation()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getISysMLPort_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIVariable()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getISysMLPort_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIArgument()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getISysMLPort_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIClass()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getISysMLPort_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIAssociationClass()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getISysMLPort_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIAttribute()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getISysMLPort_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getISysMLPort_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createICollaborationDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getISysMLPort_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIComment()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getISysMLPort_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIComponent()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getISysMLPort_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIComponentDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getISysMLPort_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIConstraint()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getISysMLPort_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIControlledFile()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getISysMLPort_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIDeploymentDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getISysMLPort_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIInterfaceItem()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getISysMLPort_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIEvent()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getISysMLPort_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIEventReception()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getISysMLPort_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIFile()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getISysMLPort_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIFlowItem()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getISysMLPort_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIRelation()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getISysMLPort_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIInstance()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getISysMLPort_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createILink()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getISysMLPort_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIMatrixLayout()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getISysMLPort_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIMatrixView()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getISysMLPort_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIModule()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getISysMLPort_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createINode()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getISysMLPort_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIObjectModelDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getISysMLPort_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIOperation()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getISysMLPort_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIPackage()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getISysMLPort_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIPanelDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getISysMLPort_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIPort()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getISysMLPort_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIProfile()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getISysMLPort_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIProject()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getISysMLPort_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIRequirement()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getISysMLPort_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createISequenceDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getISysMLPort_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIStateChart()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getISysMLPort_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIStateChartDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getISysMLPort_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIStereotype()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getISysMLPort_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIStructureDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getISysMLPort_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createISysMLPort()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getISysMLPort_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createITableLayout()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getISysMLPort_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createITableView()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getISysMLPort_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createITag()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getISysMLPort_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createITemplateParameter()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getISysMLPort_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIType()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getISysMLPort_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIUseCase()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getISysMLPort_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIUseCaseDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getISysMLPort_Tags(),
+				 UMLRpyFactory.eINSTANCE.createITag()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getISysMLPort_Description(),
+				 UMLRpyFactory.eINSTANCE.createIDescription()));
+	}
+
+	/**
+	 * This returns the label text for {@link org.eclipse.emf.edit.command.CreateChildCommand}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String getCreateChildText(Object owner, Object feature, Object child, Collection<?> selection) {
+		Object childFeature = feature;
+		Object childObject = child;
+
+		boolean qualify =
+			childFeature == UMLRpyPackage.eINSTANCE.getToLinkType_ImplicitClass() ||
+			childFeature == UMLRpyPackage.eINSTANCE.getISysMLPort_Stereotypes() ||
+			childFeature == UMLRpyPackage.eINSTANCE.getISysMLPort_Tags();
+
+		if (qualify) {
+			return getString
+				("_UI_CreateChild_text2", //$NON-NLS-1$
+				 new Object[] { getTypeText(childObject), getFeatureText(childFeature), getTypeText(owner) });
+		}
+		return super.getCreateChildText(owner, feature, child, selection);
+	}
+
+}
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/ITableInstanceItemProvider.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/ITableInstanceItemProvider.java
new file mode 100755
index 0000000..a8428f4
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/ITableInstanceItemProvider.java
@@ -0,0 +1,590 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.provider;
+
+
+import java.util.Collection;
+import java.util.List;
+
+import org.eclipse.emf.common.notify.AdapterFactory;
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.ecore.EStructuralFeature;
+
+import org.eclipse.emf.edit.provider.ComposeableAdapterFactory;
+import org.eclipse.emf.edit.provider.IItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.ItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.ViewerNotification;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITableInstance;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyFactory;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITableInstance} object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class ITableInstanceItemProvider extends TableInstancesTypeItemProvider {
+	/**
+	 * This constructs an instance from a factory and a notifier.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public ITableInstanceItemProvider(AdapterFactory adapterFactory) {
+		super(adapterFactory);
+	}
+
+	/**
+	 * This returns the property descriptors for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) {
+		if (itemPropertyDescriptors == null) {
+			super.getPropertyDescriptors(object);
+
+			addIdPropertyDescriptor(object);
+			addMyStatePropertyDescriptor(object);
+			addNamePropertyDescriptor(object);
+			addModifiedTimeWeakPropertyDescriptor(object);
+			addLayoutHandlePropertyDescriptor(object);
+		}
+		return itemPropertyDescriptors;
+	}
+
+	/**
+	 * This adds a property descriptor for the Id feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addIdPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_ITableInstance_id_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_ITableInstance_id_feature", "_UI_ITableInstance_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getITableInstance_Id(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the My State feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addMyStatePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_ITableInstance_myState_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_ITableInstance_myState_feature", "_UI_ITableInstance_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getITableInstance_MyState(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Name feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addNamePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_ITableInstance_name_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_ITableInstance_name_feature", "_UI_ITableInstance_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getITableInstance_Name(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Modified Time Weak feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addModifiedTimeWeakPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_ITableInstance_modifiedTimeWeak_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_ITableInstance_modifiedTimeWeak_feature", "_UI_ITableInstance_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getITableInstance_ModifiedTimeWeak(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Layout Handle feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addLayoutHandlePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_ITableInstance_LayoutHandle_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_ITableInstance_LayoutHandle_feature", "_UI_ITableInstance_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getITableInstance_LayoutHandle(),
+				 true,
+				 false,
+				 true,
+				 null,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This specifies how to implement {@link #getChildren} and is used to deduce an appropriate feature for an
+	 * {@link org.eclipse.emf.edit.command.AddCommand}, {@link org.eclipse.emf.edit.command.RemoveCommand} or
+	 * {@link org.eclipse.emf.edit.command.MoveCommand} in {@link #createCommand}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Collection<? extends EStructuralFeature> getChildrenFeatures(Object object) {
+		if (childrenFeatures == null) {
+			super.getChildrenFeatures(object);
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getITableInstance_Properties());
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getITableInstance_ScopeHandles());
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getITableInstance_Stereotypes());
+		}
+		return childrenFeatures;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EStructuralFeature getChildFeature(Object object, Object child) {
+		// Check the type of the specified child object and return the proper feature to use for
+		// adding (see {@link AddCommand}) it as a child.
+
+		return super.getChildFeature(object, child);
+	}
+
+	/**
+	 * This returns ITableInstance.gif.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object getImage(Object object) {
+		return overlayImage(object, getResourceLocator().getImage("full/obj16/ITableInstance")); //$NON-NLS-1$
+	}
+
+	/**
+	 * This returns the label text for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String getText(Object object) {
+		String label = ((ITableInstance)object).getName();
+		return label == null || label.length() == 0 ?
+			getString("_UI_ITableInstance_type") : //$NON-NLS-1$
+			getString("_UI_ITableInstance_type") + " " + label; //$NON-NLS-1$ //$NON-NLS-2$
+	}
+	
+
+	/**
+	 * This handles model notifications by calling {@link #updateChildren} to update any cached
+	 * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void notifyChanged(Notification notification) {
+		updateChildren(notification);
+
+		switch (notification.getFeatureID(ITableInstance.class)) {
+			case UMLRpyPackage.ITABLE_INSTANCE__ID:
+			case UMLRpyPackage.ITABLE_INSTANCE__MY_STATE:
+			case UMLRpyPackage.ITABLE_INSTANCE__NAME:
+			case UMLRpyPackage.ITABLE_INSTANCE__MODIFIED_TIME_WEAK:
+				fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), false, true));
+				return;
+			case UMLRpyPackage.ITABLE_INSTANCE__PROPERTIES:
+			case UMLRpyPackage.ITABLE_INSTANCE__SCOPE_HANDLES:
+			case UMLRpyPackage.ITABLE_INSTANCE__STEREOTYPES:
+				fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), true, false));
+				return;
+		}
+		super.notifyChanged(notification);
+	}
+
+	/**
+	 * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children
+	 * that can be created under this object.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) {
+		super.collectNewChildDescriptors(newChildDescriptors, object);
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getITableInstance_Properties(),
+				 UMLRpyFactory.eINSTANCE.createIPropertyContainer()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getITableInstance_ScopeHandles(),
+				 UMLRpyFactory.eINSTANCE.createIState()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getITableInstance_ScopeHandles(),
+				 UMLRpyFactory.eINSTANCE.createIAcceptEventAction()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getITableInstance_ScopeHandles(),
+				 UMLRpyFactory.eINSTANCE.createIAcceptTimeEvent()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getITableInstance_ScopeHandles(),
+				 UMLRpyFactory.eINSTANCE.createIActivityGraph()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getITableInstance_ScopeHandles(),
+				 UMLRpyFactory.eINSTANCE.createIActor()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getITableInstance_ScopeHandles(),
+				 UMLRpyFactory.eINSTANCE.createIAnchor()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getITableInstance_ScopeHandles(),
+				 UMLRpyFactory.eINSTANCE.createIClass()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getITableInstance_ScopeHandles(),
+				 UMLRpyFactory.eINSTANCE.createIAssociationClass()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getITableInstance_ScopeHandles(),
+				 UMLRpyFactory.eINSTANCE.createIAssociationEnd()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getITableInstance_ScopeHandles(),
+				 UMLRpyFactory.eINSTANCE.createIAttribute()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getITableInstance_ScopeHandles(),
+				 UMLRpyFactory.eINSTANCE.createIBlock()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getITableInstance_ScopeHandles(),
+				 UMLRpyFactory.eINSTANCE.createICallOperation()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getITableInstance_ScopeHandles(),
+				 UMLRpyFactory.eINSTANCE.createIClassHandle()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getITableInstance_ScopeHandles(),
+				 UMLRpyFactory.eINSTANCE.createIClassInstance()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getITableInstance_ScopeHandles(),
+				 UMLRpyFactory.eINSTANCE.createICollaboration()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getITableInstance_ScopeHandles(),
+				 UMLRpyFactory.eINSTANCE.createIDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getITableInstance_ScopeHandles(),
+				 UMLRpyFactory.eINSTANCE.createICollaborationDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getITableInstance_ScopeHandles(),
+				 UMLRpyFactory.eINSTANCE.createIComponent()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getITableInstance_ScopeHandles(),
+				 UMLRpyFactory.eINSTANCE.createIComponentDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getITableInstance_ScopeHandles(),
+				 UMLRpyFactory.eINSTANCE.createIDeploymentDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getITableInstance_ScopeHandles(),
+				 UMLRpyFactory.eINSTANCE.createIEvent()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getITableInstance_ScopeHandles(),
+				 UMLRpyFactory.eINSTANCE.createIInteractionOperand()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getITableInstance_ScopeHandles(),
+				 UMLRpyFactory.eINSTANCE.createILink()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getITableInstance_ScopeHandles(),
+				 UMLRpyFactory.eINSTANCE.createILinkInstance()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getITableInstance_ScopeHandles(),
+				 UMLRpyFactory.eINSTANCE.createIMetaLinkHandle()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getITableInstance_ScopeHandles(),
+				 UMLRpyFactory.eINSTANCE.createIModule()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getITableInstance_ScopeHandles(),
+				 UMLRpyFactory.eINSTANCE.createIObjectLink()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getITableInstance_ScopeHandles(),
+				 UMLRpyFactory.eINSTANCE.createIObjectModelDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getITableInstance_ScopeHandles(),
+				 UMLRpyFactory.eINSTANCE.createIObjectNode()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getITableInstance_ScopeHandles(),
+				 UMLRpyFactory.eINSTANCE.createIPanelDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getITableInstance_ScopeHandles(),
+				 UMLRpyFactory.eINSTANCE.createIPart()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getITableInstance_ScopeHandles(),
+				 UMLRpyFactory.eINSTANCE.createIPrimitiveOperation()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getITableInstance_ScopeHandles(),
+				 UMLRpyFactory.eINSTANCE.createIProject()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getITableInstance_ScopeHandles(),
+				 UMLRpyFactory.eINSTANCE.createISequenceDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getITableInstance_ScopeHandles(),
+				 UMLRpyFactory.eINSTANCE.createIStateChart()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getITableInstance_ScopeHandles(),
+				 UMLRpyFactory.eINSTANCE.createIStateChartDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getITableInstance_ScopeHandles(),
+				 UMLRpyFactory.eINSTANCE.createIStereotype()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getITableInstance_ScopeHandles(),
+				 UMLRpyFactory.eINSTANCE.createIStructureDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getITableInstance_ScopeHandles(),
+				 UMLRpyFactory.eINSTANCE.createISubsystem()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getITableInstance_ScopeHandles(),
+				 UMLRpyFactory.eINSTANCE.createITag()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getITableInstance_ScopeHandles(),
+				 UMLRpyFactory.eINSTANCE.createIType()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getITableInstance_ScopeHandles(),
+				 UMLRpyFactory.eINSTANCE.createIUCDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getITableInstance_ScopeHandles(),
+				 UMLRpyFactory.eINSTANCE.createIUseCaseDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getITableInstance_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIClassifier()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getITableInstance_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIActor()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getITableInstance_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIClass()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getITableInstance_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIAssociationClass()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getITableInstance_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIInterfaceItem()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getITableInstance_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIEvent()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getITableInstance_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIEventReception()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getITableInstance_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIFlowItem()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getITableInstance_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createINode()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getITableInstance_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIOperation()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getITableInstance_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIStateChart()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getITableInstance_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIStereotype()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getITableInstance_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIType()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getITableInstance_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIUseCase()));
+	}
+
+	/**
+	 * This returns the label text for {@link org.eclipse.emf.edit.command.CreateChildCommand}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String getCreateChildText(Object owner, Object feature, Object child, Collection<?> selection) {
+		Object childFeature = feature;
+		Object childObject = child;
+
+		boolean qualify =
+			childFeature == UMLRpyPackage.eINSTANCE.getITableInstance_ScopeHandles() ||
+			childFeature == UMLRpyPackage.eINSTANCE.getITableInstance_Stereotypes();
+
+		if (qualify) {
+			return getString
+				("_UI_CreateChild_text2", //$NON-NLS-1$
+				 new Object[] { getTypeText(childObject), getFeatureText(childFeature), getTypeText(owner) });
+		}
+		return super.getCreateChildText(owner, feature, child, selection);
+	}
+
+}
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/ITableLayoutItemProvider.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/ITableLayoutItemProvider.java
new file mode 100755
index 0000000..c3affd0
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/ITableLayoutItemProvider.java
@@ -0,0 +1,313 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.provider;
+
+
+import java.util.Collection;
+import java.util.List;
+
+import org.eclipse.emf.common.notify.AdapterFactory;
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.ecore.EStructuralFeature;
+
+import org.eclipse.emf.edit.provider.ComposeableAdapterFactory;
+import org.eclipse.emf.edit.provider.IItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.ItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.ViewerNotification;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITableLayout;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyFactory;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITableLayout} object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class ITableLayoutItemProvider extends IUnitItemProvider {
+	/**
+	 * This constructs an instance from a factory and a notifier.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public ITableLayoutItemProvider(AdapterFactory adapterFactory) {
+		super(adapterFactory);
+	}
+
+	/**
+	 * This returns the property descriptors for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) {
+		if (itemPropertyDescriptors == null) {
+			super.getPropertyDescriptors(object);
+
+			addModifiedTimeWeakPropertyDescriptor(object);
+			addIdPropertyDescriptor(object);
+			addMyStatePropertyDescriptor(object);
+			addNamePropertyDescriptor(object);
+		}
+		return itemPropertyDescriptors;
+	}
+
+	/**
+	 * This adds a property descriptor for the Modified Time Weak feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addModifiedTimeWeakPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_ValueType_modifiedTimeWeak_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_ValueType_modifiedTimeWeak_feature", "_UI_ValueType_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getValueType_ModifiedTimeWeak(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Id feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addIdPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_ValueType_id_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_ValueType_id_feature", "_UI_ValueType_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getValueType_Id(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the My State feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addMyStatePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_ValueType_myState_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_ValueType_myState_feature", "_UI_ValueType_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getValueType_MyState(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Name feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addNamePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_ValueType_name_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_ValueType_name_feature", "_UI_ValueType_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getValueType_Name(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This specifies how to implement {@link #getChildren} and is used to deduce an appropriate feature for an
+	 * {@link org.eclipse.emf.edit.command.AddCommand}, {@link org.eclipse.emf.edit.command.RemoveCommand} or
+	 * {@link org.eclipse.emf.edit.command.MoveCommand} in {@link #createCommand}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Collection<? extends EStructuralFeature> getChildrenFeatures(Object object) {
+		if (childrenFeatures == null) {
+			super.getChildrenFeatures(object);
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getITableLayout_Properties());
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getITableLayout_Stereotypes());
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getITableLayout_Tags());
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getITableLayout_TableElementTypes());
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getITableLayout_DataColumns());
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getITableLayout_Description());
+		}
+		return childrenFeatures;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EStructuralFeature getChildFeature(Object object, Object child) {
+		// Check the type of the specified child object and return the proper feature to use for
+		// adding (see {@link AddCommand}) it as a child.
+
+		return super.getChildFeature(object, child);
+	}
+
+	/**
+	 * This returns ITableLayout.gif.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object getImage(Object object) {
+		return overlayImage(object, getResourceLocator().getImage("full/obj16/ITableLayout")); //$NON-NLS-1$
+	}
+
+	/**
+	 * This returns the label text for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String getText(Object object) {
+		String label = ((ITableLayout)object).getName();
+		return label == null || label.length() == 0 ?
+			getString("_UI_ITableLayout_type") : //$NON-NLS-1$
+			getString("_UI_ITableLayout_type") + " " + label; //$NON-NLS-1$ //$NON-NLS-2$
+	}
+	
+
+	/**
+	 * This handles model notifications by calling {@link #updateChildren} to update any cached
+	 * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void notifyChanged(Notification notification) {
+		updateChildren(notification);
+
+		switch (notification.getFeatureID(ITableLayout.class)) {
+			case UMLRpyPackage.ITABLE_LAYOUT__MODIFIED_TIME_WEAK:
+			case UMLRpyPackage.ITABLE_LAYOUT__ID:
+			case UMLRpyPackage.ITABLE_LAYOUT__MY_STATE:
+			case UMLRpyPackage.ITABLE_LAYOUT__NAME:
+				fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), false, true));
+				return;
+			case UMLRpyPackage.ITABLE_LAYOUT__PROPERTIES:
+			case UMLRpyPackage.ITABLE_LAYOUT__STEREOTYPES:
+			case UMLRpyPackage.ITABLE_LAYOUT__TAGS:
+			case UMLRpyPackage.ITABLE_LAYOUT__TABLE_ELEMENT_TYPES:
+			case UMLRpyPackage.ITABLE_LAYOUT__DATA_COLUMNS:
+			case UMLRpyPackage.ITABLE_LAYOUT__DESCRIPTION:
+				fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), true, false));
+				return;
+		}
+		super.notifyChanged(notification);
+	}
+
+	/**
+	 * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children
+	 * that can be created under this object.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) {
+		super.collectNewChildDescriptors(newChildDescriptors, object);
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getITableLayout_Properties(),
+				 UMLRpyFactory.eINSTANCE.createIPropertyContainer()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getITableLayout_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIStereotype()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getITableLayout_Tags(),
+				 UMLRpyFactory.eINSTANCE.createITag()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getITableLayout_TableElementTypes(),
+				 UMLRpyFactory.eINSTANCE.createTableDataDefinition()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getITableLayout_DataColumns(),
+				 UMLRpyFactory.eINSTANCE.createTableDataDefinition()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getITableLayout_Description(),
+				 UMLRpyFactory.eINSTANCE.createIDescription()));
+	}
+
+	/**
+	 * This returns the label text for {@link org.eclipse.emf.edit.command.CreateChildCommand}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String getCreateChildText(Object owner, Object feature, Object child, Collection<?> selection) {
+		Object childFeature = feature;
+		Object childObject = child;
+
+		boolean qualify =
+			childFeature == UMLRpyPackage.eINSTANCE.getITableLayout_TableElementTypes() ||
+			childFeature == UMLRpyPackage.eINSTANCE.getITableLayout_DataColumns();
+
+		if (qualify) {
+			return getString
+				("_UI_CreateChild_text2", //$NON-NLS-1$
+				 new Object[] { getTypeText(childObject), getFeatureText(childFeature), getTypeText(owner) });
+		}
+		return super.getCreateChildText(owner, feature, child, selection);
+	}
+
+}
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/ITableViewItemProvider.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/ITableViewItemProvider.java
new file mode 100755
index 0000000..c7a6cde
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/ITableViewItemProvider.java
@@ -0,0 +1,109 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.provider;
+
+
+import java.util.Collection;
+import java.util.List;
+
+import org.eclipse.emf.common.notify.AdapterFactory;
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.edit.provider.IItemPropertyDescriptor;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITableView;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITableView} object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class ITableViewItemProvider extends IUnitItemProvider {
+	/**
+	 * This constructs an instance from a factory and a notifier.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public ITableViewItemProvider(AdapterFactory adapterFactory) {
+		super(adapterFactory);
+	}
+
+	/**
+	 * This returns the property descriptors for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) {
+		if (itemPropertyDescriptors == null) {
+			super.getPropertyDescriptors(object);
+
+		}
+		return itemPropertyDescriptors;
+	}
+
+	/**
+	 * This returns ITableView.gif.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object getImage(Object object) {
+		return overlayImage(object, getResourceLocator().getImage("full/obj16/ITableView")); //$NON-NLS-1$
+	}
+
+	/**
+	 * This returns the label text for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String getText(Object object) {
+		String label = ((ITableView)object).getDisplayName();
+		return label == null || label.length() == 0 ?
+			getString("_UI_ITableView_type") : //$NON-NLS-1$
+			getString("_UI_ITableView_type") + " " + label; //$NON-NLS-1$ //$NON-NLS-2$
+	}
+	
+
+	/**
+	 * This handles model notifications by calling {@link #updateChildren} to update any cached
+	 * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void notifyChanged(Notification notification) {
+		updateChildren(notification);
+		super.notifyChanged(notification);
+	}
+
+	/**
+	 * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children
+	 * that can be created under this object.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) {
+		super.collectNewChildDescriptors(newChildDescriptors, object);
+	}
+
+}
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/ITagItemProvider.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/ITagItemProvider.java
new file mode 100755
index 0000000..be75c04
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/ITagItemProvider.java
@@ -0,0 +1,942 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.provider;
+
+
+import java.util.Collection;
+import java.util.List;
+
+import org.eclipse.emf.common.notify.AdapterFactory;
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.ecore.EStructuralFeature;
+
+import org.eclipse.emf.edit.provider.ComposeableAdapterFactory;
+import org.eclipse.emf.edit.provider.IItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.ItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.ViewerNotification;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITag;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyFactory;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITag} object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class ITagItemProvider extends IVariableItemProvider {
+	/**
+	 * This constructs an instance from a factory and a notifier.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public ITagItemProvider(AdapterFactory adapterFactory) {
+		super(adapterFactory);
+	}
+
+	/**
+	 * This returns the property descriptors for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) {
+		if (itemPropertyDescriptors == null) {
+			super.getPropertyDescriptors(object);
+
+			addIdPropertyDescriptor(object);
+			addNamePropertyDescriptor(object);
+			addModifiedTimeWeakPropertyDescriptor(object);
+			addTypeOfPropertyDescriptor(object);
+			addMyStatePropertyDescriptor(object);
+			addMultiplicityPropertyDescriptor(object);
+			addBasePropertyDescriptor(object);
+			addMetaClassPropertyDescriptor(object);
+			addDefaultValuePropertyDescriptor(object);
+			addCodeUpdateCGTimePropertyDescriptor(object);
+		}
+		return itemPropertyDescriptors;
+	}
+
+	/**
+	 * This adds a property descriptor for the Id feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addIdPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_ITag_id_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_ITag_id_feature", "_UI_ITag_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getITag_Id(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Name feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addNamePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_ITag_name_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_ITag_name_feature", "_UI_ITag_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getITag_Name(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Modified Time Weak feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addModifiedTimeWeakPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_ITag_modifiedTimeWeak_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_ITag_modifiedTimeWeak_feature", "_UI_ITag_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getITag_ModifiedTimeWeak(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Type Of feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addTypeOfPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_ITag_typeOf_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_ITag_typeOf_feature", "_UI_ITag_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getITag_TypeOf(),
+				 true,
+				 false,
+				 true,
+				 null,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the My State feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addMyStatePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_ITag_myState_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_ITag_myState_feature", "_UI_ITag_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getITag_MyState(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Multiplicity feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addMultiplicityPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_ITag_multiplicity_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_ITag_multiplicity_feature", "_UI_ITag_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getITag_Multiplicity(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Base feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addBasePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_ITag_base_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_ITag_base_feature", "_UI_ITag_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getITag_Base(),
+				 true,
+				 false,
+				 true,
+				 null,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Meta Class feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addMetaClassPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_ITag_metaClass_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_ITag_metaClass_feature", "_UI_ITag_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getITag_MetaClass(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Default Value feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addDefaultValuePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_ITag_defaultValue_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_ITag_defaultValue_feature", "_UI_ITag_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getITag_DefaultValue(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Code Update CG Time feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addCodeUpdateCGTimePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_ITag_codeUpdateCGTime_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_ITag_codeUpdateCGTime_feature", "_UI_ITag_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getITag_CodeUpdateCGTime(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This specifies how to implement {@link #getChildren} and is used to deduce an appropriate feature for an
+	 * {@link org.eclipse.emf.edit.command.AddCommand}, {@link org.eclipse.emf.edit.command.RemoveCommand} or
+	 * {@link org.eclipse.emf.edit.command.MoveCommand} in {@link #createCommand}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Collection<? extends EStructuralFeature> getChildrenFeatures(Object object) {
+		if (childrenFeatures == null) {
+			super.getChildrenFeatures(object);
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getITag_ValueSpecifications());
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getITag_Properties());
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getITag_Description());
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getITag_HyperLinks());
+		}
+		return childrenFeatures;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EStructuralFeature getChildFeature(Object object, Object child) {
+		// Check the type of the specified child object and return the proper feature to use for
+		// adding (see {@link AddCommand}) it as a child.
+
+		return super.getChildFeature(object, child);
+	}
+
+	/**
+	 * This returns ITag.gif.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object getImage(Object object) {
+		return overlayImage(object, getResourceLocator().getImage("full/obj16/ITag")); //$NON-NLS-1$
+	}
+
+	/**
+	 * This returns the label text for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String getText(Object object) {
+		String label = ((ITag)object).getName();
+		return label == null || label.length() == 0 ?
+			getString("_UI_ITag_type") : //$NON-NLS-1$
+			getString("_UI_ITag_type") + " " + label; //$NON-NLS-1$ //$NON-NLS-2$
+	}
+	
+
+	/**
+	 * This handles model notifications by calling {@link #updateChildren} to update any cached
+	 * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void notifyChanged(Notification notification) {
+		updateChildren(notification);
+
+		switch (notification.getFeatureID(ITag.class)) {
+			case UMLRpyPackage.ITAG__ID:
+			case UMLRpyPackage.ITAG__NAME:
+			case UMLRpyPackage.ITAG__MODIFIED_TIME_WEAK:
+			case UMLRpyPackage.ITAG__MY_STATE:
+			case UMLRpyPackage.ITAG__MULTIPLICITY:
+			case UMLRpyPackage.ITAG__META_CLASS:
+			case UMLRpyPackage.ITAG__DEFAULT_VALUE:
+			case UMLRpyPackage.ITAG__CODE_UPDATE_CG_TIME:
+				fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), false, true));
+				return;
+			case UMLRpyPackage.ITAG__VALUE_SPECIFICATIONS:
+			case UMLRpyPackage.ITAG__PROPERTIES:
+			case UMLRpyPackage.ITAG__DESCRIPTION:
+			case UMLRpyPackage.ITAG__HYPER_LINKS:
+				fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), true, false));
+				return;
+		}
+		super.notifyChanged(notification);
+	}
+
+	/**
+	 * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children
+	 * that can be created under this object.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) {
+		super.collectNewChildDescriptors(newChildDescriptors, object);
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getITag_ValueSpecifications(),
+				 UMLRpyFactory.eINSTANCE.createIModelElement()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getITag_ValueSpecifications(),
+				 UMLRpyFactory.eINSTANCE.createIStateVertex()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getITag_ValueSpecifications(),
+				 UMLRpyFactory.eINSTANCE.createIState()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getITag_ValueSpecifications(),
+				 UMLRpyFactory.eINSTANCE.createIAcceptEventAction()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getITag_ValueSpecifications(),
+				 UMLRpyFactory.eINSTANCE.createIAcceptTimeEvent()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getITag_ValueSpecifications(),
+				 UMLRpyFactory.eINSTANCE.createIAction()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getITag_ValueSpecifications(),
+				 UMLRpyFactory.eINSTANCE.createIActivityGraph()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getITag_ValueSpecifications(),
+				 UMLRpyFactory.eINSTANCE.createIUnit()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getITag_ValueSpecifications(),
+				 UMLRpyFactory.eINSTANCE.createIClassifier()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getITag_ValueSpecifications(),
+				 UMLRpyFactory.eINSTANCE.createIActor()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getITag_ValueSpecifications(),
+				 UMLRpyFactory.eINSTANCE.createIAnnotation()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getITag_ValueSpecifications(),
+				 UMLRpyFactory.eINSTANCE.createIVariable()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getITag_ValueSpecifications(),
+				 UMLRpyFactory.eINSTANCE.createIArgument()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getITag_ValueSpecifications(),
+				 UMLRpyFactory.eINSTANCE.createIClass()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getITag_ValueSpecifications(),
+				 UMLRpyFactory.eINSTANCE.createIAssociationClass()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getITag_ValueSpecifications(),
+				 UMLRpyFactory.eINSTANCE.createIAssociationEnd()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getITag_ValueSpecifications(),
+				 UMLRpyFactory.eINSTANCE.createIAssociationRole()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getITag_ValueSpecifications(),
+				 UMLRpyFactory.eINSTANCE.createIAttribute()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getITag_ValueSpecifications(),
+				 UMLRpyFactory.eINSTANCE.createICallOperation()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getITag_ValueSpecifications(),
+				 UMLRpyFactory.eINSTANCE.createIClassifierRole()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getITag_ValueSpecifications(),
+				 UMLRpyFactory.eINSTANCE.createICollaboration()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getITag_ValueSpecifications(),
+				 UMLRpyFactory.eINSTANCE.createIDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getITag_ValueSpecifications(),
+				 UMLRpyFactory.eINSTANCE.createICollaborationDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getITag_ValueSpecifications(),
+				 UMLRpyFactory.eINSTANCE.createIComment()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getITag_ValueSpecifications(),
+				 UMLRpyFactory.eINSTANCE.createIComponent()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getITag_ValueSpecifications(),
+				 UMLRpyFactory.eINSTANCE.createIComponentDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getITag_ValueSpecifications(),
+				 UMLRpyFactory.eINSTANCE.createIComponentInstance()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getITag_ValueSpecifications(),
+				 UMLRpyFactory.eINSTANCE.createIConfiguration()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getITag_ValueSpecifications(),
+				 UMLRpyFactory.eINSTANCE.createIConnector()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getITag_ValueSpecifications(),
+				 UMLRpyFactory.eINSTANCE.createIConstraint()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getITag_ValueSpecifications(),
+				 UMLRpyFactory.eINSTANCE.createIValueSpecification()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getITag_ValueSpecifications(),
+				 UMLRpyFactory.eINSTANCE.createIContextSpecification()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getITag_ValueSpecifications(),
+				 UMLRpyFactory.eINSTANCE.createIControlledFile()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getITag_ValueSpecifications(),
+				 UMLRpyFactory.eINSTANCE.createIDependency()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getITag_ValueSpecifications(),
+				 UMLRpyFactory.eINSTANCE.createIDeploymentDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getITag_ValueSpecifications(),
+				 UMLRpyFactory.eINSTANCE.createIEnumerationLiteral()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getITag_ValueSpecifications(),
+				 UMLRpyFactory.eINSTANCE.createIInterfaceItem()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getITag_ValueSpecifications(),
+				 UMLRpyFactory.eINSTANCE.createIEvent()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getITag_ValueSpecifications(),
+				 UMLRpyFactory.eINSTANCE.createIEventReception()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getITag_ValueSpecifications(),
+				 UMLRpyFactory.eINSTANCE.createIExecutionOccurrence()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getITag_ValueSpecifications(),
+				 UMLRpyFactory.eINSTANCE.createIExternalHyperlink()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getITag_ValueSpecifications(),
+				 UMLRpyFactory.eINSTANCE.createIFile()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getITag_ValueSpecifications(),
+				 UMLRpyFactory.eINSTANCE.createIFileFragment()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getITag_ValueSpecifications(),
+				 UMLRpyFactory.eINSTANCE.createIFlow()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getITag_ValueSpecifications(),
+				 UMLRpyFactory.eINSTANCE.createIFlowItem()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getITag_ValueSpecifications(),
+				 UMLRpyFactory.eINSTANCE.createIGeneralization()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getITag_ValueSpecifications(),
+				 UMLRpyFactory.eINSTANCE.createIGuard()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getITag_ValueSpecifications(),
+				 UMLRpyFactory.eINSTANCE.createIHyperLink()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getITag_ValueSpecifications(),
+				 UMLRpyFactory.eINSTANCE.createIInformationFlow()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getITag_ValueSpecifications(),
+				 UMLRpyFactory.eINSTANCE.createIRelation()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getITag_ValueSpecifications(),
+				 UMLRpyFactory.eINSTANCE.createIInstance()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getITag_ValueSpecifications(),
+				 UMLRpyFactory.eINSTANCE.createIInstanceSlot()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getITag_ValueSpecifications(),
+				 UMLRpyFactory.eINSTANCE.createIInstanceSpecification()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getITag_ValueSpecifications(),
+				 UMLRpyFactory.eINSTANCE.createIInstanceValue()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getITag_ValueSpecifications(),
+				 UMLRpyFactory.eINSTANCE.createIInteractionOccurrence()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getITag_ValueSpecifications(),
+				 UMLRpyFactory.eINSTANCE.createIInteractionOperand()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getITag_ValueSpecifications(),
+				 UMLRpyFactory.eINSTANCE.createIInteractionOperator()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getITag_ValueSpecifications(),
+				 UMLRpyFactory.eINSTANCE.createIInternalHyperlink()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getITag_ValueSpecifications(),
+				 UMLRpyFactory.eINSTANCE.createILink()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getITag_ValueSpecifications(),
+				 UMLRpyFactory.eINSTANCE.createILiteralSpecification()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getITag_ValueSpecifications(),
+				 UMLRpyFactory.eINSTANCE.createIMHyperLink()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getITag_ValueSpecifications(),
+				 UMLRpyFactory.eINSTANCE.createIMatrixLayout()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getITag_ValueSpecifications(),
+				 UMLRpyFactory.eINSTANCE.createIMatrixView()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getITag_ValueSpecifications(),
+				 UMLRpyFactory.eINSTANCE.createIMessage()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getITag_ValueSpecifications(),
+				 UMLRpyFactory.eINSTANCE.createIMessagePoint()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getITag_ValueSpecifications(),
+				 UMLRpyFactory.eINSTANCE.createIModule()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getITag_ValueSpecifications(),
+				 UMLRpyFactory.eINSTANCE.createINode()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getITag_ValueSpecifications(),
+				 UMLRpyFactory.eINSTANCE.createIObjectLink()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getITag_ValueSpecifications(),
+				 UMLRpyFactory.eINSTANCE.createIObjectModelDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getITag_ValueSpecifications(),
+				 UMLRpyFactory.eINSTANCE.createIObjectNode()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getITag_ValueSpecifications(),
+				 UMLRpyFactory.eINSTANCE.createIOperation()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getITag_ValueSpecifications(),
+				 UMLRpyFactory.eINSTANCE.createIPackage()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getITag_ValueSpecifications(),
+				 UMLRpyFactory.eINSTANCE.createIPanelDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getITag_ValueSpecifications(),
+				 UMLRpyFactory.eINSTANCE.createIPart()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getITag_ValueSpecifications(),
+				 UMLRpyFactory.eINSTANCE.createIPin()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getITag_ValueSpecifications(),
+				 UMLRpyFactory.eINSTANCE.createIPort()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getITag_ValueSpecifications(),
+				 UMLRpyFactory.eINSTANCE.createIPrimitiveOperation()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getITag_ValueSpecifications(),
+				 UMLRpyFactory.eINSTANCE.createIProfile()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getITag_ValueSpecifications(),
+				 UMLRpyFactory.eINSTANCE.createIProject()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getITag_ValueSpecifications(),
+				 UMLRpyFactory.eINSTANCE.createIRequirement()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getITag_ValueSpecifications(),
+				 UMLRpyFactory.eINSTANCE.createISendAction()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getITag_ValueSpecifications(),
+				 UMLRpyFactory.eINSTANCE.createISequenceDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getITag_ValueSpecifications(),
+				 UMLRpyFactory.eINSTANCE.createIStateChart()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getITag_ValueSpecifications(),
+				 UMLRpyFactory.eINSTANCE.createIStateChartDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getITag_ValueSpecifications(),
+				 UMLRpyFactory.eINSTANCE.createIStereotype()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getITag_ValueSpecifications(),
+				 UMLRpyFactory.eINSTANCE.createIStructureDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getITag_ValueSpecifications(),
+				 UMLRpyFactory.eINSTANCE.createISubsystem()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getITag_ValueSpecifications(),
+				 UMLRpyFactory.eINSTANCE.createISwimlane()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getITag_ValueSpecifications(),
+				 UMLRpyFactory.eINSTANCE.createISysMLPort()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getITag_ValueSpecifications(),
+				 UMLRpyFactory.eINSTANCE.createITableLayout()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getITag_ValueSpecifications(),
+				 UMLRpyFactory.eINSTANCE.createITableView()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getITag_ValueSpecifications(),
+				 UMLRpyFactory.eINSTANCE.createITag()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getITag_ValueSpecifications(),
+				 UMLRpyFactory.eINSTANCE.createITemplateInstantiation()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getITag_ValueSpecifications(),
+				 UMLRpyFactory.eINSTANCE.createITemplateInstantiationParameter()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getITag_ValueSpecifications(),
+				 UMLRpyFactory.eINSTANCE.createITemplateParameter()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getITag_ValueSpecifications(),
+				 UMLRpyFactory.eINSTANCE.createITransition()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getITag_ValueSpecifications(),
+				 UMLRpyFactory.eINSTANCE.createITrigger()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getITag_ValueSpecifications(),
+				 UMLRpyFactory.eINSTANCE.createITriggered()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getITag_ValueSpecifications(),
+				 UMLRpyFactory.eINSTANCE.createIType()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getITag_ValueSpecifications(),
+				 UMLRpyFactory.eINSTANCE.createIUseCase()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getITag_ValueSpecifications(),
+				 UMLRpyFactory.eINSTANCE.createIUseCaseDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getITag_Properties(),
+				 UMLRpyFactory.eINSTANCE.createIPropertyContainer()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getITag_Description(),
+				 UMLRpyFactory.eINSTANCE.createIDescription()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getITag_HyperLinks(),
+				 UMLRpyFactory.eINSTANCE.createIMHyperLink()));
+	}
+
+	/**
+	 * This returns the label text for {@link org.eclipse.emf.edit.command.CreateChildCommand}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String getCreateChildText(Object owner, Object feature, Object child, Collection<?> selection) {
+		Object childFeature = feature;
+		Object childObject = child;
+
+		boolean qualify =
+			childFeature == UMLRpyPackage.eINSTANCE.getIVariable_MyTypeOf() ||
+			childFeature == UMLRpyPackage.eINSTANCE.getITag_ValueSpecifications() ||
+			childFeature == UMLRpyPackage.eINSTANCE.getITag_HyperLinks();
+
+		if (qualify) {
+			return getString
+				("_UI_CreateChild_text2", //$NON-NLS-1$
+				 new Object[] { getTypeText(childObject), getFeatureText(childFeature), getTypeText(owner) });
+		}
+		return super.getCreateChildText(owner, feature, child, selection);
+	}
+
+}
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/ITemplateInstItemProvider.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/ITemplateInstItemProvider.java
new file mode 100755
index 0000000..d6db66b
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/ITemplateInstItemProvider.java
@@ -0,0 +1,256 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.provider;
+
+
+import java.util.Collection;
+import java.util.List;
+
+import org.eclipse.emf.common.notify.AdapterFactory;
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.common.util.ResourceLocator;
+
+import org.eclipse.emf.ecore.EStructuralFeature;
+
+import org.eclipse.emf.edit.provider.ComposeableAdapterFactory;
+import org.eclipse.emf.edit.provider.IEditingDomainItemProvider;
+import org.eclipse.emf.edit.provider.IItemLabelProvider;
+import org.eclipse.emf.edit.provider.IItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.IItemPropertySource;
+import org.eclipse.emf.edit.provider.IStructuredItemContentProvider;
+import org.eclipse.emf.edit.provider.ITreeItemContentProvider;
+import org.eclipse.emf.edit.provider.ItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.ItemProviderAdapter;
+import org.eclipse.emf.edit.provider.ViewerNotification;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITemplateInst;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyFactory;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITemplateInst} object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class ITemplateInstItemProvider 
+	extends ItemProviderAdapter
+	implements
+		IEditingDomainItemProvider,
+		IStructuredItemContentProvider,
+		ITreeItemContentProvider,
+		IItemLabelProvider,
+		IItemPropertySource {
+	/**
+	 * This constructs an instance from a factory and a notifier.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public ITemplateInstItemProvider(AdapterFactory adapterFactory) {
+		super(adapterFactory);
+	}
+
+	/**
+	 * This returns the property descriptors for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) {
+		if (itemPropertyDescriptors == null) {
+			super.getPropertyDescriptors(object);
+
+			addIdPropertyDescriptor(object);
+			addModifiedTimeWeakPropertyDescriptor(object);
+			addOfTemplatePropertyDescriptor(object);
+		}
+		return itemPropertyDescriptors;
+	}
+
+	/**
+	 * This adds a property descriptor for the Id feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addIdPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_ITemplateInst_id_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_ITemplateInst_id_feature", "_UI_ITemplateInst_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getITemplateInst_Id(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Modified Time Weak feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addModifiedTimeWeakPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_ITemplateInst_modifiedTimeWeak_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_ITemplateInst_modifiedTimeWeak_feature", "_UI_ITemplateInst_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getITemplateInst_ModifiedTimeWeak(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Of Template feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addOfTemplatePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_ITemplateInst_ofTemplate_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_ITemplateInst_ofTemplate_feature", "_UI_ITemplateInst_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getITemplateInst_OfTemplate(),
+				 true,
+				 false,
+				 true,
+				 null,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This specifies how to implement {@link #getChildren} and is used to deduce an appropriate feature for an
+	 * {@link org.eclipse.emf.edit.command.AddCommand}, {@link org.eclipse.emf.edit.command.RemoveCommand} or
+	 * {@link org.eclipse.emf.edit.command.MoveCommand} in {@link #createCommand}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Collection<? extends EStructuralFeature> getChildrenFeatures(Object object) {
+		if (childrenFeatures == null) {
+			super.getChildrenFeatures(object);
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getITemplateInst_TemplateInstParams());
+		}
+		return childrenFeatures;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EStructuralFeature getChildFeature(Object object, Object child) {
+		// Check the type of the specified child object and return the proper feature to use for
+		// adding (see {@link AddCommand}) it as a child.
+
+		return super.getChildFeature(object, child);
+	}
+
+	/**
+	 * This returns ITemplateInst.gif.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object getImage(Object object) {
+		return overlayImage(object, getResourceLocator().getImage("full/obj16/ITemplateInst")); //$NON-NLS-1$
+	}
+
+	/**
+	 * This returns the label text for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String getText(Object object) {
+		String label = ((ITemplateInst)object).getId();
+		return label == null || label.length() == 0 ?
+			getString("_UI_ITemplateInst_type") : //$NON-NLS-1$
+			getString("_UI_ITemplateInst_type") + " " + label; //$NON-NLS-1$ //$NON-NLS-2$
+	}
+	
+
+	/**
+	 * This handles model notifications by calling {@link #updateChildren} to update any cached
+	 * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void notifyChanged(Notification notification) {
+		updateChildren(notification);
+
+		switch (notification.getFeatureID(ITemplateInst.class)) {
+			case UMLRpyPackage.ITEMPLATE_INST__ID:
+			case UMLRpyPackage.ITEMPLATE_INST__MODIFIED_TIME_WEAK:
+				fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), false, true));
+				return;
+			case UMLRpyPackage.ITEMPLATE_INST__TEMPLATE_INST_PARAMS:
+				fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), true, false));
+				return;
+		}
+		super.notifyChanged(notification);
+	}
+
+	/**
+	 * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children
+	 * that can be created under this object.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) {
+		super.collectNewChildDescriptors(newChildDescriptors, object);
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getITemplateInst_TemplateInstParams(),
+				 UMLRpyFactory.eINSTANCE.createITemplateInstParam()));
+	}
+
+	/**
+	 * Return the resource locator for this item provider's resources.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public ResourceLocator getResourceLocator() {
+		return rpymetamodelEditPlugin.INSTANCE;
+	}
+
+}
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/ITemplateInstParamItemProvider.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/ITemplateInstParamItemProvider.java
new file mode 100755
index 0000000..15881d6
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/ITemplateInstParamItemProvider.java
@@ -0,0 +1,287 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.provider;
+
+
+import java.util.Collection;
+import java.util.List;
+
+import org.eclipse.emf.common.notify.AdapterFactory;
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.common.util.ResourceLocator;
+
+import org.eclipse.emf.edit.provider.ComposeableAdapterFactory;
+import org.eclipse.emf.edit.provider.IEditingDomainItemProvider;
+import org.eclipse.emf.edit.provider.IItemLabelProvider;
+import org.eclipse.emf.edit.provider.IItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.IItemPropertySource;
+import org.eclipse.emf.edit.provider.IStructuredItemContentProvider;
+import org.eclipse.emf.edit.provider.ITreeItemContentProvider;
+import org.eclipse.emf.edit.provider.ItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.ItemProviderAdapter;
+import org.eclipse.emf.edit.provider.ViewerNotification;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITemplateInstParam;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITemplateInstParam} object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class ITemplateInstParamItemProvider 
+	extends ItemProviderAdapter
+	implements
+		IEditingDomainItemProvider,
+		IStructuredItemContentProvider,
+		ITreeItemContentProvider,
+		IItemLabelProvider,
+		IItemPropertySource {
+	/**
+	 * This constructs an instance from a factory and a notifier.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public ITemplateInstParamItemProvider(AdapterFactory adapterFactory) {
+		super(adapterFactory);
+	}
+
+	/**
+	 * This returns the property descriptors for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) {
+		if (itemPropertyDescriptors == null) {
+			super.getPropertyDescriptors(object);
+
+			addIdPropertyDescriptor(object);
+			addNamePropertyDescriptor(object);
+			addModifiedTimeWeakPropertyDescriptor(object);
+			addValuePropertyDescriptor(object);
+			addArgValuePropertyDescriptor(object);
+			addOnTheFlyValuePropertyDescriptor(object);
+		}
+		return itemPropertyDescriptors;
+	}
+
+	/**
+	 * This adds a property descriptor for the Id feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addIdPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_ITemplateInstParam_id_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_ITemplateInstParam_id_feature", "_UI_ITemplateInstParam_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getITemplateInstParam_Id(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Name feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addNamePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_ITemplateInstParam_name_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_ITemplateInstParam_name_feature", "_UI_ITemplateInstParam_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getITemplateInstParam_Name(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Modified Time Weak feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addModifiedTimeWeakPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_ITemplateInstParam_modifiedTimeWeak_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_ITemplateInstParam_modifiedTimeWeak_feature", "_UI_ITemplateInstParam_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getITemplateInstParam_ModifiedTimeWeak(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Value feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addValuePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_ITemplateInstParam_value_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_ITemplateInstParam_value_feature", "_UI_ITemplateInstParam_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getITemplateInstParam_Value(),
+				 true,
+				 false,
+				 true,
+				 null,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Arg Value feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addArgValuePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_ITemplateInstParam_argValue_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_ITemplateInstParam_argValue_feature", "_UI_ITemplateInstParam_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getITemplateInstParam_ArgValue(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the On The Fly Value feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addOnTheFlyValuePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_ITemplateInstParam_onTheFlyValue_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_ITemplateInstParam_onTheFlyValue_feature", "_UI_ITemplateInstParam_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getITemplateInstParam_OnTheFlyValue(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This returns ITemplateInstParam.gif.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object getImage(Object object) {
+		return overlayImage(object, getResourceLocator().getImage("full/obj16/ITemplateInstParam")); //$NON-NLS-1$
+	}
+
+	/**
+	 * This returns the label text for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String getText(Object object) {
+		String label = ((ITemplateInstParam)object).getName();
+		return label == null || label.length() == 0 ?
+			getString("_UI_ITemplateInstParam_type") : //$NON-NLS-1$
+			getString("_UI_ITemplateInstParam_type") + " " + label; //$NON-NLS-1$ //$NON-NLS-2$
+	}
+	
+
+	/**
+	 * This handles model notifications by calling {@link #updateChildren} to update any cached
+	 * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void notifyChanged(Notification notification) {
+		updateChildren(notification);
+
+		switch (notification.getFeatureID(ITemplateInstParam.class)) {
+			case UMLRpyPackage.ITEMPLATE_INST_PARAM__ID:
+			case UMLRpyPackage.ITEMPLATE_INST_PARAM__NAME:
+			case UMLRpyPackage.ITEMPLATE_INST_PARAM__MODIFIED_TIME_WEAK:
+			case UMLRpyPackage.ITEMPLATE_INST_PARAM__ARG_VALUE:
+			case UMLRpyPackage.ITEMPLATE_INST_PARAM__ON_THE_FLY_VALUE:
+				fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), false, true));
+				return;
+		}
+		super.notifyChanged(notification);
+	}
+
+	/**
+	 * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children
+	 * that can be created under this object.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) {
+		super.collectNewChildDescriptors(newChildDescriptors, object);
+	}
+
+	/**
+	 * Return the resource locator for this item provider's resources.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public ResourceLocator getResourceLocator() {
+		return rpymetamodelEditPlugin.INSTANCE;
+	}
+
+}
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/ITemplateInstantiationItemProvider.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/ITemplateInstantiationItemProvider.java
new file mode 100755
index 0000000..8666fcc
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/ITemplateInstantiationItemProvider.java
@@ -0,0 +1,109 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.provider;
+
+
+import java.util.Collection;
+import java.util.List;
+
+import org.eclipse.emf.common.notify.AdapterFactory;
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.edit.provider.IItemPropertyDescriptor;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITemplateInstantiation;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITemplateInstantiation} object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class ITemplateInstantiationItemProvider extends IModelElementItemProvider {
+	/**
+	 * This constructs an instance from a factory and a notifier.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public ITemplateInstantiationItemProvider(AdapterFactory adapterFactory) {
+		super(adapterFactory);
+	}
+
+	/**
+	 * This returns the property descriptors for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) {
+		if (itemPropertyDescriptors == null) {
+			super.getPropertyDescriptors(object);
+
+		}
+		return itemPropertyDescriptors;
+	}
+
+	/**
+	 * This returns ITemplateInstantiation.gif.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object getImage(Object object) {
+		return overlayImage(object, getResourceLocator().getImage("full/obj16/ITemplateInstantiation")); //$NON-NLS-1$
+	}
+
+	/**
+	 * This returns the label text for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String getText(Object object) {
+		String label = ((ITemplateInstantiation)object).getDisplayName();
+		return label == null || label.length() == 0 ?
+			getString("_UI_ITemplateInstantiation_type") : //$NON-NLS-1$
+			getString("_UI_ITemplateInstantiation_type") + " " + label; //$NON-NLS-1$ //$NON-NLS-2$
+	}
+	
+
+	/**
+	 * This handles model notifications by calling {@link #updateChildren} to update any cached
+	 * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void notifyChanged(Notification notification) {
+		updateChildren(notification);
+		super.notifyChanged(notification);
+	}
+
+	/**
+	 * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children
+	 * that can be created under this object.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) {
+		super.collectNewChildDescriptors(newChildDescriptors, object);
+	}
+
+}
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/ITemplateInstantiationParameterItemProvider.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/ITemplateInstantiationParameterItemProvider.java
new file mode 100755
index 0000000..24b1490
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/ITemplateInstantiationParameterItemProvider.java
@@ -0,0 +1,109 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.provider;
+
+
+import java.util.Collection;
+import java.util.List;
+
+import org.eclipse.emf.common.notify.AdapterFactory;
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.edit.provider.IItemPropertyDescriptor;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITemplateInstantiationParameter;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITemplateInstantiationParameter} object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class ITemplateInstantiationParameterItemProvider extends IModelElementItemProvider {
+	/**
+	 * This constructs an instance from a factory and a notifier.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public ITemplateInstantiationParameterItemProvider(AdapterFactory adapterFactory) {
+		super(adapterFactory);
+	}
+
+	/**
+	 * This returns the property descriptors for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) {
+		if (itemPropertyDescriptors == null) {
+			super.getPropertyDescriptors(object);
+
+		}
+		return itemPropertyDescriptors;
+	}
+
+	/**
+	 * This returns ITemplateInstantiationParameter.gif.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object getImage(Object object) {
+		return overlayImage(object, getResourceLocator().getImage("full/obj16/ITemplateInstantiationParameter")); //$NON-NLS-1$
+	}
+
+	/**
+	 * This returns the label text for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String getText(Object object) {
+		String label = ((ITemplateInstantiationParameter)object).getDisplayName();
+		return label == null || label.length() == 0 ?
+			getString("_UI_ITemplateInstantiationParameter_type") : //$NON-NLS-1$
+			getString("_UI_ITemplateInstantiationParameter_type") + " " + label; //$NON-NLS-1$ //$NON-NLS-2$
+	}
+	
+
+	/**
+	 * This handles model notifications by calling {@link #updateChildren} to update any cached
+	 * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void notifyChanged(Notification notification) {
+		updateChildren(notification);
+		super.notifyChanged(notification);
+	}
+
+	/**
+	 * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children
+	 * that can be created under this object.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) {
+		super.collectNewChildDescriptors(newChildDescriptors, object);
+	}
+
+}
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/ITemplateParameterItemProvider.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/ITemplateParameterItemProvider.java
new file mode 100755
index 0000000..3fe6328
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/ITemplateParameterItemProvider.java
@@ -0,0 +1,237 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.provider;
+
+
+import java.util.Collection;
+import java.util.List;
+
+import org.eclipse.emf.common.notify.AdapterFactory;
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.edit.provider.ComposeableAdapterFactory;
+import org.eclipse.emf.edit.provider.IItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.ItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.ViewerNotification;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITemplateParameter;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITemplateParameter} object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class ITemplateParameterItemProvider extends IVariableItemProvider {
+	/**
+	 * This constructs an instance from a factory and a notifier.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public ITemplateParameterItemProvider(AdapterFactory adapterFactory) {
+		super(adapterFactory);
+	}
+
+	/**
+	 * This returns the property descriptors for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) {
+		if (itemPropertyDescriptors == null) {
+			super.getPropertyDescriptors(object);
+
+			addIdPropertyDescriptor(object);
+			addNamePropertyDescriptor(object);
+			addMyStatePropertyDescriptor(object);
+			addModifiedTimeWeakPropertyDescriptor(object);
+			addRepresentativePropertyDescriptor(object);
+		}
+		return itemPropertyDescriptors;
+	}
+
+	/**
+	 * This adds a property descriptor for the Id feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addIdPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_ITemplateParameter_id_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_ITemplateParameter_id_feature", "_UI_ITemplateParameter_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getITemplateParameter_Id(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Name feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addNamePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_ITemplateParameter_name_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_ITemplateParameter_name_feature", "_UI_ITemplateParameter_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getITemplateParameter_Name(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the My State feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addMyStatePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_ITemplateParameter_myState_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_ITemplateParameter_myState_feature", "_UI_ITemplateParameter_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getITemplateParameter_MyState(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Modified Time Weak feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addModifiedTimeWeakPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_ITemplateParameter_modifiedTimeWeak_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_ITemplateParameter_modifiedTimeWeak_feature", "_UI_ITemplateParameter_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getITemplateParameter_ModifiedTimeWeak(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Representative feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addRepresentativePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_ITemplateParameter_representative_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_ITemplateParameter_representative_feature", "_UI_ITemplateParameter_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getITemplateParameter_Representative(),
+				 true,
+				 false,
+				 true,
+				 null,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This returns ITemplateParameter.gif.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object getImage(Object object) {
+		return overlayImage(object, getResourceLocator().getImage("full/obj16/ITemplateParameter")); //$NON-NLS-1$
+	}
+
+	/**
+	 * This returns the label text for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String getText(Object object) {
+		String label = ((ITemplateParameter)object).getName();
+		return label == null || label.length() == 0 ?
+			getString("_UI_ITemplateParameter_type") : //$NON-NLS-1$
+			getString("_UI_ITemplateParameter_type") + " " + label; //$NON-NLS-1$ //$NON-NLS-2$
+	}
+	
+
+	/**
+	 * This handles model notifications by calling {@link #updateChildren} to update any cached
+	 * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void notifyChanged(Notification notification) {
+		updateChildren(notification);
+
+		switch (notification.getFeatureID(ITemplateParameter.class)) {
+			case UMLRpyPackage.ITEMPLATE_PARAMETER__ID:
+			case UMLRpyPackage.ITEMPLATE_PARAMETER__NAME:
+			case UMLRpyPackage.ITEMPLATE_PARAMETER__MY_STATE:
+			case UMLRpyPackage.ITEMPLATE_PARAMETER__MODIFIED_TIME_WEAK:
+				fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), false, true));
+				return;
+		}
+		super.notifyChanged(notification);
+	}
+
+	/**
+	 * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children
+	 * that can be created under this object.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) {
+		super.collectNewChildDescriptors(newChildDescriptors, object);
+	}
+
+}
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/ITimeEventItemProvider.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/ITimeEventItemProvider.java
new file mode 100755
index 0000000..81c3ab0
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/ITimeEventItemProvider.java
@@ -0,0 +1,332 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.provider;
+
+
+import java.util.Collection;
+import java.util.List;
+
+import org.eclipse.emf.common.notify.AdapterFactory;
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.edit.provider.ComposeableAdapterFactory;
+import org.eclipse.emf.edit.provider.IItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.ItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.ViewerNotification;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITimeEvent;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITimeEvent} object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class ITimeEventItemProvider extends ItsTargetTypeItemProvider {
+	/**
+	 * This constructs an instance from a factory and a notifier.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public ITimeEventItemProvider(AdapterFactory adapterFactory) {
+		super(adapterFactory);
+	}
+
+	/**
+	 * This returns the property descriptors for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) {
+		if (itemPropertyDescriptors == null) {
+			super.getPropertyDescriptors(object);
+
+			addIdPropertyDescriptor(object);
+			addMyStatePropertyDescriptor(object);
+			addNamePropertyDescriptor(object);
+			addModifiedTimeWeakPropertyDescriptor(object);
+			addParentPropertyDescriptor(object);
+			addStateTypePropertyDescriptor(object);
+			addDefaultTransPropertyDescriptor(object);
+			addDurationTimePropertyDescriptor(object);
+			addSwimlanePropertyDescriptor(object);
+		}
+		return itemPropertyDescriptors;
+	}
+
+	/**
+	 * This adds a property descriptor for the Id feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addIdPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_ITimeEvent_id_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_ITimeEvent_id_feature", "_UI_ITimeEvent_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getITimeEvent_Id(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the My State feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addMyStatePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_ITimeEvent_myState_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_ITimeEvent_myState_feature", "_UI_ITimeEvent_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getITimeEvent_MyState(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Name feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addNamePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_ITimeEvent_name_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_ITimeEvent_name_feature", "_UI_ITimeEvent_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getITimeEvent_Name(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Modified Time Weak feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addModifiedTimeWeakPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_ITimeEvent_modifiedTimeWeak_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_ITimeEvent_modifiedTimeWeak_feature", "_UI_ITimeEvent_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getITimeEvent_ModifiedTimeWeak(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Parent feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addParentPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_ITimeEvent_parent_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_ITimeEvent_parent_feature", "_UI_ITimeEvent_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getITimeEvent_Parent(),
+				 true,
+				 false,
+				 true,
+				 null,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the State Type feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addStateTypePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_ITimeEvent_stateType_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_ITimeEvent_stateType_feature", "_UI_ITimeEvent_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getITimeEvent_StateType(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Default Trans feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addDefaultTransPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_ITimeEvent_defaultTrans_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_ITimeEvent_defaultTrans_feature", "_UI_ITimeEvent_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getITimeEvent_DefaultTrans(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Duration Time feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addDurationTimePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_ITimeEvent_durationTime_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_ITimeEvent_durationTime_feature", "_UI_ITimeEvent_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getITimeEvent_DurationTime(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Swimlane feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addSwimlanePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_ITimeEvent_swimlane_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_ITimeEvent_swimlane_feature", "_UI_ITimeEvent_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getITimeEvent_Swimlane(),
+				 true,
+				 false,
+				 true,
+				 null,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This returns ITimeEvent.gif.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object getImage(Object object) {
+		return overlayImage(object, getResourceLocator().getImage("full/obj16/ITimeEvent")); //$NON-NLS-1$
+	}
+
+	/**
+	 * This returns the label text for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String getText(Object object) {
+		String label = ((ITimeEvent)object).getName();
+		return label == null || label.length() == 0 ?
+			getString("_UI_ITimeEvent_type") : //$NON-NLS-1$
+			getString("_UI_ITimeEvent_type") + " " + label; //$NON-NLS-1$ //$NON-NLS-2$
+	}
+	
+
+	/**
+	 * This handles model notifications by calling {@link #updateChildren} to update any cached
+	 * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void notifyChanged(Notification notification) {
+		updateChildren(notification);
+
+		switch (notification.getFeatureID(ITimeEvent.class)) {
+			case UMLRpyPackage.ITIME_EVENT__ID:
+			case UMLRpyPackage.ITIME_EVENT__MY_STATE:
+			case UMLRpyPackage.ITIME_EVENT__NAME:
+			case UMLRpyPackage.ITIME_EVENT__MODIFIED_TIME_WEAK:
+			case UMLRpyPackage.ITIME_EVENT__STATE_TYPE:
+			case UMLRpyPackage.ITIME_EVENT__DEFAULT_TRANS:
+			case UMLRpyPackage.ITIME_EVENT__DURATION_TIME:
+				fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), false, true));
+				return;
+		}
+		super.notifyChanged(notification);
+	}
+
+	/**
+	 * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children
+	 * that can be created under this object.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) {
+		super.collectNewChildDescriptors(newChildDescriptors, object);
+	}
+
+}
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/ITimeoutItemProvider.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/ITimeoutItemProvider.java
new file mode 100755
index 0000000..3d73789
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/ITimeoutItemProvider.java
@@ -0,0 +1,165 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.provider;
+
+
+import java.util.Collection;
+import java.util.List;
+
+import org.eclipse.emf.common.notify.AdapterFactory;
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.edit.provider.ComposeableAdapterFactory;
+import org.eclipse.emf.edit.provider.IItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.ItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.ViewerNotification;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITimeout;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITimeout} object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class ITimeoutItemProvider extends ItsTriggerTypeItemProvider {
+	/**
+	 * This constructs an instance from a factory and a notifier.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public ITimeoutItemProvider(AdapterFactory adapterFactory) {
+		super(adapterFactory);
+	}
+
+	/**
+	 * This returns the property descriptors for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) {
+		if (itemPropertyDescriptors == null) {
+			super.getPropertyDescriptors(object);
+
+			addTimePropertyDescriptor(object);
+			addInheritsFromHandlePropertyDescriptor(object);
+		}
+		return itemPropertyDescriptors;
+	}
+
+	/**
+	 * This adds a property descriptor for the Time feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addTimePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_ITimeout_time_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_ITimeout_time_feature", "_UI_ITimeout_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getITimeout_Time(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Inherits From Handle feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addInheritsFromHandlePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_ITimeout_inheritsFromHandle_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_ITimeout_inheritsFromHandle_feature", "_UI_ITimeout_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getITimeout_InheritsFromHandle(),
+				 true,
+				 false,
+				 true,
+				 null,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This returns ITimeout.gif.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object getImage(Object object) {
+		return overlayImage(object, getResourceLocator().getImage("full/obj16/ITimeout")); //$NON-NLS-1$
+	}
+
+	/**
+	 * This returns the label text for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String getText(Object object) {
+		String label = ((ITimeout)object).getId();
+		return label == null || label.length() == 0 ?
+			getString("_UI_ITimeout_type") : //$NON-NLS-1$
+			getString("_UI_ITimeout_type") + " " + label; //$NON-NLS-1$ //$NON-NLS-2$
+	}
+	
+
+	/**
+	 * This handles model notifications by calling {@link #updateChildren} to update any cached
+	 * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void notifyChanged(Notification notification) {
+		updateChildren(notification);
+
+		switch (notification.getFeatureID(ITimeout.class)) {
+			case UMLRpyPackage.ITIMEOUT__TIME:
+				fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), false, true));
+				return;
+		}
+		super.notifyChanged(notification);
+	}
+
+	/**
+	 * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children
+	 * that can be created under this object.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) {
+		super.collectNewChildDescriptors(newChildDescriptors, object);
+	}
+
+}
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/ITransitionItemProvider.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/ITransitionItemProvider.java
new file mode 100755
index 0000000..4f69b5d
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/ITransitionItemProvider.java
@@ -0,0 +1,535 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.provider;
+
+
+import java.util.Collection;
+import java.util.List;
+
+import org.eclipse.emf.common.notify.AdapterFactory;
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.ecore.EStructuralFeature;
+
+import org.eclipse.emf.edit.provider.ComposeableAdapterFactory;
+import org.eclipse.emf.edit.provider.IItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.ItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.ViewerNotification;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITransition;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyFactory;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITransition} object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class ITransitionItemProvider extends IModelElementItemProvider {
+	/**
+	 * This constructs an instance from a factory and a notifier.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public ITransitionItemProvider(AdapterFactory adapterFactory) {
+		super(adapterFactory);
+	}
+
+	/**
+	 * This returns the property descriptors for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) {
+		if (itemPropertyDescriptors == null) {
+			super.getPropertyDescriptors(object);
+
+			addModifiedTimeWeakPropertyDescriptor(object);
+			addStaticReactionPropertyDescriptor(object);
+			addItsTargetPropertyDescriptor(object);
+			addIdPropertyDescriptor(object);
+			addCodeUpdateCGTimePropertyDescriptor(object);
+			addRequiremenTracabilityHandlePropertyDescriptor(object);
+			addUmlDependencyIDPropertyDescriptor(object);
+			addMyStatePropertyDescriptor(object);
+			addObjectCreationPropertyDescriptor(object);
+			addNamePropertyDescriptor(object);
+			addItsSourcePropertyDescriptor(object);
+			addInheritsFromHandlePropertyDescriptor(object);
+		}
+		return itemPropertyDescriptors;
+	}
+
+	/**
+	 * This adds a property descriptor for the Modified Time Weak feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addModifiedTimeWeakPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_TransitionsType_modifiedTimeWeak_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_TransitionsType_modifiedTimeWeak_feature", "_UI_TransitionsType_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getTransitionsType_ModifiedTimeWeak(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Static Reaction feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addStaticReactionPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_TransitionsType_staticReaction_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_TransitionsType_staticReaction_feature", "_UI_TransitionsType_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getTransitionsType_StaticReaction(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Its Target feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addItsTargetPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_TransitionsType_itsTarget_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_TransitionsType_itsTarget_feature", "_UI_TransitionsType_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getTransitionsType_ItsTarget(),
+				 true,
+				 false,
+				 true,
+				 null,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Id feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addIdPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_TransitionsType_id_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_TransitionsType_id_feature", "_UI_TransitionsType_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getTransitionsType_Id(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Code Update CG Time feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addCodeUpdateCGTimePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_TransitionsType_codeUpdateCGTime_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_TransitionsType_codeUpdateCGTime_feature", "_UI_TransitionsType_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getTransitionsType_CodeUpdateCGTime(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Requiremen Tracability Handle feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addRequiremenTracabilityHandlePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_TransitionsType_requiremenTracabilityHandle_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_TransitionsType_requiremenTracabilityHandle_feature", "_UI_TransitionsType_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getTransitionsType_RequiremenTracabilityHandle(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Uml Dependency ID feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addUmlDependencyIDPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_TransitionsType_umlDependencyID_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_TransitionsType_umlDependencyID_feature", "_UI_TransitionsType_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getTransitionsType_UmlDependencyID(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the My State feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addMyStatePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_TransitionsType_myState_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_TransitionsType_myState_feature", "_UI_TransitionsType_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getTransitionsType_MyState(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Object Creation feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addObjectCreationPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_TransitionsType_objectCreation_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_TransitionsType_objectCreation_feature", "_UI_TransitionsType_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getTransitionsType_ObjectCreation(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Name feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addNamePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_TransitionsType_name_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_TransitionsType_name_feature", "_UI_TransitionsType_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getTransitionsType_Name(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Its Source feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addItsSourcePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_ITransition_itsSource_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_ITransition_itsSource_feature", "_UI_ITransition_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getITransition_ItsSource(),
+				 true,
+				 false,
+				 true,
+				 null,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Inherits From Handle feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addInheritsFromHandlePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_ITransition_inheritsFromHandle_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_ITransition_inheritsFromHandle_feature", "_UI_ITransition_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getITransition_InheritsFromHandle(),
+				 true,
+				 false,
+				 true,
+				 null,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This specifies how to implement {@link #getChildren} and is used to deduce an appropriate feature for an
+	 * {@link org.eclipse.emf.edit.command.AddCommand}, {@link org.eclipse.emf.edit.command.RemoveCommand} or
+	 * {@link org.eclipse.emf.edit.command.MoveCommand} in {@link #createCommand}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Collection<? extends EStructuralFeature> getChildrenFeatures(Object object) {
+		if (childrenFeatures == null) {
+			super.getChildrenFeatures(object);
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getTransitionsType_Description());
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getTransitionsType_ItsLabel());
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getITransition_Dependencies());
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getITransition_Stereotypes());
+		}
+		return childrenFeatures;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EStructuralFeature getChildFeature(Object object, Object child) {
+		// Check the type of the specified child object and return the proper feature to use for
+		// adding (see {@link AddCommand}) it as a child.
+
+		return super.getChildFeature(object, child);
+	}
+
+	/**
+	 * This returns ITransition.gif.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object getImage(Object object) {
+		return overlayImage(object, getResourceLocator().getImage("full/obj16/ITransition")); //$NON-NLS-1$
+	}
+
+	/**
+	 * This returns the label text for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String getText(Object object) {
+		String label = ((ITransition)object).getName();
+		return label == null || label.length() == 0 ?
+			getString("_UI_ITransition_type") : //$NON-NLS-1$
+			getString("_UI_ITransition_type") + " " + label; //$NON-NLS-1$ //$NON-NLS-2$
+	}
+	
+
+	/**
+	 * This handles model notifications by calling {@link #updateChildren} to update any cached
+	 * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void notifyChanged(Notification notification) {
+		updateChildren(notification);
+
+		switch (notification.getFeatureID(ITransition.class)) {
+			case UMLRpyPackage.ITRANSITION__MODIFIED_TIME_WEAK:
+			case UMLRpyPackage.ITRANSITION__STATIC_REACTION:
+			case UMLRpyPackage.ITRANSITION__ID:
+			case UMLRpyPackage.ITRANSITION__CODE_UPDATE_CG_TIME:
+			case UMLRpyPackage.ITRANSITION__REQUIREMEN_TRACABILITY_HANDLE:
+			case UMLRpyPackage.ITRANSITION__UML_DEPENDENCY_ID:
+			case UMLRpyPackage.ITRANSITION__MY_STATE:
+			case UMLRpyPackage.ITRANSITION__OBJECT_CREATION:
+			case UMLRpyPackage.ITRANSITION__NAME:
+				fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), false, true));
+				return;
+			case UMLRpyPackage.ITRANSITION__DESCRIPTION:
+			case UMLRpyPackage.ITRANSITION__ITS_LABEL:
+			case UMLRpyPackage.ITRANSITION__DEPENDENCIES:
+			case UMLRpyPackage.ITRANSITION__STEREOTYPES:
+				fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), true, false));
+				return;
+		}
+		super.notifyChanged(notification);
+	}
+
+	/**
+	 * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children
+	 * that can be created under this object.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) {
+		super.collectNewChildDescriptors(newChildDescriptors, object);
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getTransitionsType_Description(),
+				 UMLRpyFactory.eINSTANCE.createIDescription()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getTransitionsType_ItsLabel(),
+				 UMLRpyFactory.eINSTANCE.createILabel()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getITransition_Dependencies(),
+				 UMLRpyFactory.eINSTANCE.createIDependency()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getITransition_Dependencies(),
+				 UMLRpyFactory.eINSTANCE.createIHyperLink()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getITransition_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIClassifier()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getITransition_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIActor()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getITransition_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIClass()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getITransition_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIAssociationClass()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getITransition_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIInterfaceItem()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getITransition_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIEvent()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getITransition_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIEventReception()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getITransition_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIFlowItem()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getITransition_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createINode()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getITransition_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIOperation()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getITransition_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIStateChart()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getITransition_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIStereotype()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getITransition_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIType()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getITransition_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIUseCase()));
+	}
+
+}
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/ITriggerItemProvider.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/ITriggerItemProvider.java
new file mode 100755
index 0000000..564196a
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/ITriggerItemProvider.java
@@ -0,0 +1,109 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.provider;
+
+
+import java.util.Collection;
+import java.util.List;
+
+import org.eclipse.emf.common.notify.AdapterFactory;
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.edit.provider.IItemPropertyDescriptor;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITrigger;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITrigger} object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class ITriggerItemProvider extends IModelElementItemProvider {
+	/**
+	 * This constructs an instance from a factory and a notifier.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public ITriggerItemProvider(AdapterFactory adapterFactory) {
+		super(adapterFactory);
+	}
+
+	/**
+	 * This returns the property descriptors for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) {
+		if (itemPropertyDescriptors == null) {
+			super.getPropertyDescriptors(object);
+
+		}
+		return itemPropertyDescriptors;
+	}
+
+	/**
+	 * This returns ITrigger.gif.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object getImage(Object object) {
+		return overlayImage(object, getResourceLocator().getImage("full/obj16/ITrigger")); //$NON-NLS-1$
+	}
+
+	/**
+	 * This returns the label text for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String getText(Object object) {
+		String label = ((ITrigger)object).getDisplayName();
+		return label == null || label.length() == 0 ?
+			getString("_UI_ITrigger_type") : //$NON-NLS-1$
+			getString("_UI_ITrigger_type") + " " + label; //$NON-NLS-1$ //$NON-NLS-2$
+	}
+	
+
+	/**
+	 * This handles model notifications by calling {@link #updateChildren} to update any cached
+	 * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void notifyChanged(Notification notification) {
+		updateChildren(notification);
+		super.notifyChanged(notification);
+	}
+
+	/**
+	 * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children
+	 * that can be created under this object.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) {
+		super.collectNewChildDescriptors(newChildDescriptors, object);
+	}
+
+}
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/ITriggeredItemProvider.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/ITriggeredItemProvider.java
new file mode 100755
index 0000000..2ebb1e7
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/ITriggeredItemProvider.java
@@ -0,0 +1,426 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.provider;
+
+
+import java.util.Collection;
+import java.util.List;
+
+import org.eclipse.emf.common.notify.AdapterFactory;
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.ecore.EStructuralFeature;
+import org.eclipse.emf.ecore.EcoreFactory;
+import org.eclipse.emf.ecore.EcorePackage;
+import org.eclipse.emf.edit.provider.ComposeableAdapterFactory;
+import org.eclipse.emf.edit.provider.IItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.ItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.ViewerNotification;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITriggered;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyFactory;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITriggered} object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class ITriggeredItemProvider extends OperationsTypeItemProvider {
+	/**
+	 * This constructs an instance from a factory and a notifier.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public ITriggeredItemProvider(AdapterFactory adapterFactory) {
+		super(adapterFactory);
+	}
+
+	/**
+	 * This returns the property descriptors for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) {
+		if (itemPropertyDescriptors == null) {
+			super.getPropertyDescriptors(object);
+
+			addDisplayNamePropertyDescriptor(object);
+			addIdPropertyDescriptor(object);
+			addNamePropertyDescriptor(object);
+			addReturnTypePropertyDescriptor(object);
+			addAbstractPropertyDescriptor(object);
+			addFinalPropertyDescriptor(object);
+			addConcurrencyPropertyDescriptor(object);
+			addProtectionPropertyDescriptor(object);
+			addModifiedTimeWeakPropertyDescriptor(object);
+			addMyStatePropertyDescriptor(object);
+		}
+		return itemPropertyDescriptors;
+	}
+
+	/**
+	 * This adds a property descriptor for the Display Name feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addDisplayNamePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IModelElement_displayName_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IModelElement_displayName_feature", "_UI_IModelElement_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIModelElement_DisplayName(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Id feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addIdPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_ITriggered_id_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_ITriggered_id_feature", "_UI_ITriggered_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getITriggered_Id(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Name feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addNamePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_ITriggered_name_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_ITriggered_name_feature", "_UI_ITriggered_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getITriggered_Name(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Return Type feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addReturnTypePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_ITriggered_returnType_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_ITriggered_returnType_feature", "_UI_ITriggered_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getITriggered_ReturnType(),
+				 true,
+				 false,
+				 true,
+				 null,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Abstract feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addAbstractPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_ITriggered_abstract_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_ITriggered_abstract_feature", "_UI_ITriggered_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getITriggered_Abstract(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Final feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addFinalPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_ITriggered_final_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_ITriggered_final_feature", "_UI_ITriggered_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getITriggered_Final(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Concurrency feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addConcurrencyPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_ITriggered_concurrency_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_ITriggered_concurrency_feature", "_UI_ITriggered_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getITriggered_Concurrency(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Protection feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addProtectionPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_ITriggered_protection_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_ITriggered_protection_feature", "_UI_ITriggered_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getITriggered_Protection(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Modified Time Weak feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addModifiedTimeWeakPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_ITriggered_modifiedTimeWeak_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_ITriggered_modifiedTimeWeak_feature", "_UI_ITriggered_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getITriggered_ModifiedTimeWeak(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the My State feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addMyStatePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_ITriggered_myState_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_ITriggered_myState_feature", "_UI_ITriggered_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getITriggered_MyState(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This specifies how to implement {@link #getChildren} and is used to deduce an appropriate feature for an
+	 * {@link org.eclipse.emf.edit.command.AddCommand}, {@link org.eclipse.emf.edit.command.RemoveCommand} or
+	 * {@link org.eclipse.emf.edit.command.MoveCommand} in {@link #createCommand}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Collection<? extends EStructuralFeature> getChildrenFeatures(Object object) {
+		if (childrenFeatures == null) {
+			super.getChildrenFeatures(object);
+			childrenFeatures.add(EcorePackage.Literals.EMODEL_ELEMENT__EANNOTATIONS);
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getITriggered_Args());
+		}
+		return childrenFeatures;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EStructuralFeature getChildFeature(Object object, Object child) {
+		// Check the type of the specified child object and return the proper feature to use for
+		// adding (see {@link AddCommand}) it as a child.
+
+		return super.getChildFeature(object, child);
+	}
+
+	/**
+	 * This returns ITriggered.gif.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object getImage(Object object) {
+		return overlayImage(object, getResourceLocator().getImage("full/obj16/ITriggered")); //$NON-NLS-1$
+	}
+
+	/**
+	 * This returns the label text for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String getText(Object object) {
+		String label = ((ITriggered)object).getName();
+		return label == null || label.length() == 0 ?
+			getString("_UI_ITriggered_type") : //$NON-NLS-1$
+			getString("_UI_ITriggered_type") + " " + label; //$NON-NLS-1$ //$NON-NLS-2$
+	}
+	
+
+	/**
+	 * This handles model notifications by calling {@link #updateChildren} to update any cached
+	 * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void notifyChanged(Notification notification) {
+		updateChildren(notification);
+
+		switch (notification.getFeatureID(ITriggered.class)) {
+			case UMLRpyPackage.ITRIGGERED__DISPLAY_NAME:
+			case UMLRpyPackage.ITRIGGERED__ID:
+			case UMLRpyPackage.ITRIGGERED__NAME:
+			case UMLRpyPackage.ITRIGGERED__ABSTRACT:
+			case UMLRpyPackage.ITRIGGERED__FINAL:
+			case UMLRpyPackage.ITRIGGERED__CONCURRENCY:
+			case UMLRpyPackage.ITRIGGERED__PROTECTION:
+			case UMLRpyPackage.ITRIGGERED__MODIFIED_TIME_WEAK:
+			case UMLRpyPackage.ITRIGGERED__MY_STATE:
+				fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), false, true));
+				return;
+			case UMLRpyPackage.ITRIGGERED__EANNOTATIONS:
+			case UMLRpyPackage.ITRIGGERED__ARGS:
+				fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), true, false));
+				return;
+		}
+		super.notifyChanged(notification);
+	}
+
+	/**
+	 * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children
+	 * that can be created under this object.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) {
+		super.collectNewChildDescriptors(newChildDescriptors, object);
+
+		newChildDescriptors.add
+			(createChildParameter
+				(EcorePackage.Literals.EMODEL_ELEMENT__EANNOTATIONS,
+				 EcoreFactory.eINSTANCE.createEAnnotation()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getITriggered_Args(),
+				 UMLRpyFactory.eINSTANCE.createIVariable()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getITriggered_Args(),
+				 UMLRpyFactory.eINSTANCE.createIArgument()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getITriggered_Args(),
+				 UMLRpyFactory.eINSTANCE.createIAttribute()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getITriggered_Args(),
+				 UMLRpyFactory.eINSTANCE.createITag()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getITriggered_Args(),
+				 UMLRpyFactory.eINSTANCE.createITemplateParameter()));
+	}
+
+}
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/ITypeItemProvider.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/ITypeItemProvider.java
new file mode 100755
index 0000000..cc7c250
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/ITypeItemProvider.java
@@ -0,0 +1,892 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.provider;
+
+
+import java.util.Collection;
+import java.util.List;
+
+import org.eclipse.emf.common.notify.AdapterFactory;
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.ecore.EStructuralFeature;
+
+import org.eclipse.emf.edit.provider.ComposeableAdapterFactory;
+import org.eclipse.emf.edit.provider.IItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.ItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.ViewerNotification;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IType;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyFactory;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IType} object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class ITypeItemProvider extends IClassifierItemProvider {
+	/**
+	 * This constructs an instance from a factory and a notifier.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public ITypeItemProvider(AdapterFactory adapterFactory) {
+		super(adapterFactory);
+	}
+
+	/**
+	 * This returns the property descriptors for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) {
+		if (itemPropertyDescriptors == null) {
+			super.getPropertyDescriptors(object);
+
+			addUmlDependencyIDPropertyDescriptor(object);
+			addObjectCreationPropertyDescriptor(object);
+			addModifiedTimeWeakPropertyDescriptor(object);
+			addIdPropertyDescriptor(object);
+			addMyStatePropertyDescriptor(object);
+			addNamePropertyDescriptor(object);
+			addLastIDPropertyDescriptor(object);
+			addKindPropertyDescriptor(object);
+			addDeclarationPropertyDescriptor(object);
+			addAssociationElementsPropertyDescriptor(object);
+			addTypedefBaseTypePropertyDescriptor(object);
+			addTypedefMultiplicityPropertyDescriptor(object);
+			addTypedefIsOrderedPropertyDescriptor(object);
+			addTypedefIsReferencePropertyDescriptor(object);
+			addTypedefIsConstantPropertyDescriptor(object);
+			addRequiremenTracabilityHandlePropertyDescriptor(object);
+			addCodeUpdateCGTimePropertyDescriptor(object);
+			addTheMainDiagramPropertyDescriptor(object);
+		}
+		return itemPropertyDescriptors;
+	}
+
+	/**
+	 * This adds a property descriptor for the Uml Dependency ID feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addUmlDependencyIDPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_M_subjectType_umlDependencyID_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_M_subjectType_umlDependencyID_feature", "_UI_M_subjectType_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getM_subjectType_UmlDependencyID(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Object Creation feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addObjectCreationPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_M_subjectType_objectCreation_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_M_subjectType_objectCreation_feature", "_UI_M_subjectType_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getM_subjectType_ObjectCreation(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Modified Time Weak feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addModifiedTimeWeakPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_ValueType_modifiedTimeWeak_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_ValueType_modifiedTimeWeak_feature", "_UI_ValueType_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getValueType_ModifiedTimeWeak(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Id feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addIdPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_ValueType_id_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_ValueType_id_feature", "_UI_ValueType_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getValueType_Id(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the My State feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addMyStatePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_ValueType_myState_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_ValueType_myState_feature", "_UI_ValueType_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getValueType_MyState(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Name feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addNamePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_ValueType_name_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_ValueType_name_feature", "_UI_ValueType_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getValueType_Name(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Last ID feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addLastIDPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IType_lastID_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IType_lastID_feature", "_UI_IType_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIType_LastID(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Kind feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addKindPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IType_kind_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IType_kind_feature", "_UI_IType_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIType_Kind(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Declaration feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addDeclarationPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IType_declaration_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IType_declaration_feature", "_UI_IType_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIType_Declaration(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Association Elements feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addAssociationElementsPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IType_AssociationElements_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IType_AssociationElements_feature", "_UI_IType_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIType_AssociationElements(),
+				 true,
+				 false,
+				 true,
+				 null,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Typedef Base Type feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addTypedefBaseTypePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IType_typedefBaseType_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IType_typedefBaseType_feature", "_UI_IType_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIType_TypedefBaseType(),
+				 true,
+				 false,
+				 true,
+				 null,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Typedef Multiplicity feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addTypedefMultiplicityPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IType_typedefMultiplicity_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IType_typedefMultiplicity_feature", "_UI_IType_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIType_TypedefMultiplicity(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Typedef Is Ordered feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addTypedefIsOrderedPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IType_typedefIsOrdered_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IType_typedefIsOrdered_feature", "_UI_IType_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIType_TypedefIsOrdered(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Typedef Is Reference feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addTypedefIsReferencePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IType_typedefIsReference_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IType_typedefIsReference_feature", "_UI_IType_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIType_TypedefIsReference(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Typedef Is Constant feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addTypedefIsConstantPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IType_typedefIsConstant_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IType_typedefIsConstant_feature", "_UI_IType_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIType_TypedefIsConstant(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Requiremen Tracability Handle feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addRequiremenTracabilityHandlePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IType_requiremenTracabilityHandle_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IType_requiremenTracabilityHandle_feature", "_UI_IType_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIType_RequiremenTracabilityHandle(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Code Update CG Time feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addCodeUpdateCGTimePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IType_codeUpdateCGTime_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IType_codeUpdateCGTime_feature", "_UI_IType_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIType_CodeUpdateCGTime(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the The Main Diagram feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addTheMainDiagramPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IType_theMainDiagram_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IType_theMainDiagram_feature", "_UI_IType_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIType_TheMainDiagram(),
+				 true,
+				 false,
+				 true,
+				 null,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This specifies how to implement {@link #getChildren} and is used to deduce an appropriate feature for an
+	 * {@link org.eclipse.emf.edit.command.AddCommand}, {@link org.eclipse.emf.edit.command.RemoveCommand} or
+	 * {@link org.eclipse.emf.edit.command.MoveCommand} in {@link #createCommand}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Collection<? extends EStructuralFeature> getChildrenFeatures(Object object) {
+		if (childrenFeatures == null) {
+			super.getChildrenFeatures(object);
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getIType_Literals());
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getIType_Properties());
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getIType_Description());
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getIType_Stereotypes());
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getIType_Attrs());
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getIType_Tags());
+		}
+		return childrenFeatures;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EStructuralFeature getChildFeature(Object object, Object child) {
+		// Check the type of the specified child object and return the proper feature to use for
+		// adding (see {@link AddCommand}) it as a child.
+
+		return super.getChildFeature(object, child);
+	}
+
+	/**
+	 * This returns IType.gif.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object getImage(Object object) {
+		return overlayImage(object, getResourceLocator().getImage("full/obj16/IType")); //$NON-NLS-1$
+	}
+
+	/**
+	 * This returns the label text for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String getText(Object object) {
+		String label = ((IType)object).getName();
+		return label == null || label.length() == 0 ?
+			getString("_UI_IType_type") : //$NON-NLS-1$
+			getString("_UI_IType_type") + " " + label; //$NON-NLS-1$ //$NON-NLS-2$
+	}
+	
+
+	/**
+	 * This handles model notifications by calling {@link #updateChildren} to update any cached
+	 * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void notifyChanged(Notification notification) {
+		updateChildren(notification);
+
+		switch (notification.getFeatureID(IType.class)) {
+			case UMLRpyPackage.ITYPE__UML_DEPENDENCY_ID:
+			case UMLRpyPackage.ITYPE__OBJECT_CREATION:
+			case UMLRpyPackage.ITYPE__MODIFIED_TIME_WEAK:
+			case UMLRpyPackage.ITYPE__ID:
+			case UMLRpyPackage.ITYPE__MY_STATE:
+			case UMLRpyPackage.ITYPE__NAME:
+			case UMLRpyPackage.ITYPE__LAST_ID:
+			case UMLRpyPackage.ITYPE__KIND:
+			case UMLRpyPackage.ITYPE__DECLARATION:
+			case UMLRpyPackage.ITYPE__TYPEDEF_MULTIPLICITY:
+			case UMLRpyPackage.ITYPE__TYPEDEF_IS_ORDERED:
+			case UMLRpyPackage.ITYPE__TYPEDEF_IS_REFERENCE:
+			case UMLRpyPackage.ITYPE__TYPEDEF_IS_CONSTANT:
+			case UMLRpyPackage.ITYPE__REQUIREMEN_TRACABILITY_HANDLE:
+			case UMLRpyPackage.ITYPE__CODE_UPDATE_CG_TIME:
+				fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), false, true));
+				return;
+			case UMLRpyPackage.ITYPE__LITERALS:
+			case UMLRpyPackage.ITYPE__PROPERTIES:
+			case UMLRpyPackage.ITYPE__DESCRIPTION:
+			case UMLRpyPackage.ITYPE__STEREOTYPES:
+			case UMLRpyPackage.ITYPE__ATTRS:
+			case UMLRpyPackage.ITYPE__TAGS:
+				fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), true, false));
+				return;
+		}
+		super.notifyChanged(notification);
+	}
+
+	/**
+	 * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children
+	 * that can be created under this object.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) {
+		super.collectNewChildDescriptors(newChildDescriptors, object);
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIType_Literals(),
+				 UMLRpyFactory.eINSTANCE.createIEnumerationLiteral()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIType_Properties(),
+				 UMLRpyFactory.eINSTANCE.createIPropertyContainer()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIType_Description(),
+				 UMLRpyFactory.eINSTANCE.createIDescription()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIType_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIUnit()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIType_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIClassifier()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIType_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIActor()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIType_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIAnnotation()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIType_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIVariable()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIType_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIArgument()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIType_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIClass()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIType_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIAssociationClass()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIType_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIAttribute()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIType_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIType_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createICollaborationDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIType_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIComment()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIType_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIComponent()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIType_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIComponentDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIType_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIConstraint()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIType_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIControlledFile()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIType_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIDeploymentDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIType_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIInterfaceItem()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIType_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIEvent()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIType_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIEventReception()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIType_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIFile()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIType_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIFlowItem()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIType_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIRelation()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIType_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIInstance()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIType_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createILink()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIType_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIMatrixLayout()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIType_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIMatrixView()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIType_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIModule()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIType_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createINode()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIType_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIObjectModelDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIType_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIOperation()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIType_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIPackage()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIType_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIPanelDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIType_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIPort()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIType_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIProfile()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIType_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIProject()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIType_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIRequirement()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIType_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createISequenceDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIType_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIStateChart()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIType_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIStateChartDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIType_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIStereotype()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIType_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIStructureDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIType_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createISysMLPort()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIType_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createITableLayout()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIType_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createITableView()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIType_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createITag()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIType_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createITemplateParameter()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIType_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIType()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIType_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIUseCase()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIType_Stereotypes(),
+				 UMLRpyFactory.eINSTANCE.createIUseCaseDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIType_Attrs(),
+				 UMLRpyFactory.eINSTANCE.createIAttribute()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIType_Tags(),
+				 UMLRpyFactory.eINSTANCE.createITag()));
+	}
+
+	/**
+	 * This returns the label text for {@link org.eclipse.emf.edit.command.CreateChildCommand}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String getCreateChildText(Object owner, Object feature, Object child, Collection<?> selection) {
+		Object childFeature = feature;
+		Object childObject = child;
+
+		boolean qualify =
+			childFeature == UMLRpyPackage.eINSTANCE.getIType_Stereotypes() ||
+			childFeature == UMLRpyPackage.eINSTANCE.getIType_Attrs() ||
+			childFeature == UMLRpyPackage.eINSTANCE.getIType_Tags();
+
+		if (qualify) {
+			return getString
+				("_UI_CreateChild_text2", //$NON-NLS-1$
+				 new Object[] { getTypeText(childObject), getFeatureText(childFeature), getTypeText(owner) });
+		}
+		return super.getCreateChildText(owner, feature, child, selection);
+	}
+
+}
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/IUCDiagramItemProvider.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/IUCDiagramItemProvider.java
new file mode 100755
index 0000000..1797fc6
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/IUCDiagramItemProvider.java
@@ -0,0 +1,190 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.provider;
+
+
+import java.util.Collection;
+import java.util.List;
+
+import org.eclipse.emf.common.notify.AdapterFactory;
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.ecore.EStructuralFeature;
+
+import org.eclipse.emf.edit.provider.ComposeableAdapterFactory;
+import org.eclipse.emf.edit.provider.IItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.ItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.ViewerNotification;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IUCDiagram;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyFactory;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IUCDiagram} object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class IUCDiagramItemProvider extends TheMainDiagramTypeItemProvider {
+	/**
+	 * This constructs an instance from a factory and a notifier.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IUCDiagramItemProvider(AdapterFactory adapterFactory) {
+		super(adapterFactory);
+	}
+
+	/**
+	 * This returns the property descriptors for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) {
+		if (itemPropertyDescriptors == null) {
+			super.getPropertyDescriptors(object);
+
+			addModifiedTimeWeakPropertyDescriptor(object);
+		}
+		return itemPropertyDescriptors;
+	}
+
+	/**
+	 * This adds a property descriptor for the Modified Time Weak feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addModifiedTimeWeakPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IUCDiagram_modifiedTimeWeak_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IUCDiagram_modifiedTimeWeak_feature", "_UI_IUCDiagram_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIUCDiagram_ModifiedTimeWeak(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This specifies how to implement {@link #getChildren} and is used to deduce an appropriate feature for an
+	 * {@link org.eclipse.emf.edit.command.AddCommand}, {@link org.eclipse.emf.edit.command.RemoveCommand} or
+	 * {@link org.eclipse.emf.edit.command.MoveCommand} in {@link #createCommand}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Collection<? extends EStructuralFeature> getChildrenFeatures(Object object) {
+		if (childrenFeatures == null) {
+			super.getChildrenFeatures(object);
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getIUCDiagram_Properties());
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getIUCDiagram_GraphicChart());
+		}
+		return childrenFeatures;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EStructuralFeature getChildFeature(Object object, Object child) {
+		// Check the type of the specified child object and return the proper feature to use for
+		// adding (see {@link AddCommand}) it as a child.
+
+		return super.getChildFeature(object, child);
+	}
+
+	/**
+	 * This returns IUCDiagram.gif.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object getImage(Object object) {
+		return overlayImage(object, getResourceLocator().getImage("full/obj16/IUCDiagram")); //$NON-NLS-1$
+	}
+
+	/**
+	 * This returns the label text for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String getText(Object object) {
+		String label = ((IUCDiagram)object).getName();
+		return label == null || label.length() == 0 ?
+			getString("_UI_IUCDiagram_type") : //$NON-NLS-1$
+			getString("_UI_IUCDiagram_type") + " " + label; //$NON-NLS-1$ //$NON-NLS-2$
+	}
+	
+
+	/**
+	 * This handles model notifications by calling {@link #updateChildren} to update any cached
+	 * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void notifyChanged(Notification notification) {
+		updateChildren(notification);
+
+		switch (notification.getFeatureID(IUCDiagram.class)) {
+			case UMLRpyPackage.IUC_DIAGRAM__MODIFIED_TIME_WEAK:
+				fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), false, true));
+				return;
+			case UMLRpyPackage.IUC_DIAGRAM__PROPERTIES:
+			case UMLRpyPackage.IUC_DIAGRAM__GRAPHIC_CHART:
+				fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), true, false));
+				return;
+		}
+		super.notifyChanged(notification);
+	}
+
+	/**
+	 * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children
+	 * that can be created under this object.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) {
+		super.collectNewChildDescriptors(newChildDescriptors, object);
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIUCDiagram_Properties(),
+				 UMLRpyFactory.eINSTANCE.createIPropertyContainer()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIUCDiagram_GraphicChart(),
+				 UMLRpyFactory.eINSTANCE.createCGIClassChart()));
+	}
+
+}
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/IUnitItemProvider.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/IUnitItemProvider.java
new file mode 100755
index 0000000..9a35e5d
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/IUnitItemProvider.java
@@ -0,0 +1,109 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.provider;
+
+
+import java.util.Collection;
+import java.util.List;
+
+import org.eclipse.emf.common.notify.AdapterFactory;
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.edit.provider.IItemPropertyDescriptor;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IUnit;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IUnit} object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class IUnitItemProvider extends IModelElementItemProvider {
+	/**
+	 * This constructs an instance from a factory and a notifier.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IUnitItemProvider(AdapterFactory adapterFactory) {
+		super(adapterFactory);
+	}
+
+	/**
+	 * This returns the property descriptors for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) {
+		if (itemPropertyDescriptors == null) {
+			super.getPropertyDescriptors(object);
+
+		}
+		return itemPropertyDescriptors;
+	}
+
+	/**
+	 * This returns IUnit.gif.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object getImage(Object object) {
+		return overlayImage(object, getResourceLocator().getImage("full/obj16/IUnit")); //$NON-NLS-1$
+	}
+
+	/**
+	 * This returns the label text for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String getText(Object object) {
+		String label = ((IUnit)object).getDisplayName();
+		return label == null || label.length() == 0 ?
+			getString("_UI_IUnit_type") : //$NON-NLS-1$
+			getString("_UI_IUnit_type") + " " + label; //$NON-NLS-1$ //$NON-NLS-2$
+	}
+	
+
+	/**
+	 * This handles model notifications by calling {@link #updateChildren} to update any cached
+	 * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void notifyChanged(Notification notification) {
+		updateChildren(notification);
+		super.notifyChanged(notification);
+	}
+
+	/**
+	 * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children
+	 * that can be created under this object.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) {
+		super.collectNewChildDescriptors(newChildDescriptors, object);
+	}
+
+}
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/IUseCaseDiagramItemProvider.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/IUseCaseDiagramItemProvider.java
new file mode 100755
index 0000000..adc6585
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/IUseCaseDiagramItemProvider.java
@@ -0,0 +1,134 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.provider;
+
+
+import java.util.Collection;
+import java.util.List;
+
+import org.eclipse.emf.common.notify.AdapterFactory;
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.edit.provider.IItemPropertyDescriptor;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IUseCaseDiagram;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IUseCaseDiagram} object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class IUseCaseDiagramItemProvider extends IDiagramItemProvider {
+	/**
+	 * This constructs an instance from a factory and a notifier.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IUseCaseDiagramItemProvider(AdapterFactory adapterFactory) {
+		super(adapterFactory);
+	}
+
+	/**
+	 * This returns the property descriptors for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) {
+		if (itemPropertyDescriptors == null) {
+			super.getPropertyDescriptors(object);
+
+		}
+		return itemPropertyDescriptors;
+	}
+
+	/**
+	 * This returns IUseCaseDiagram.gif.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object getImage(Object object) {
+		return overlayImage(object, getResourceLocator().getImage("full/obj16/IUseCaseDiagram")); //$NON-NLS-1$
+	}
+
+	/**
+	 * This returns the label text for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String getText(Object object) {
+		String label = ((IUseCaseDiagram)object).getName();
+		return label == null || label.length() == 0 ?
+			getString("_UI_IUseCaseDiagram_type") : //$NON-NLS-1$
+			getString("_UI_IUseCaseDiagram_type") + " " + label; //$NON-NLS-1$ //$NON-NLS-2$
+	}
+	
+
+	/**
+	 * This handles model notifications by calling {@link #updateChildren} to update any cached
+	 * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void notifyChanged(Notification notification) {
+		updateChildren(notification);
+		super.notifyChanged(notification);
+	}
+
+	/**
+	 * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children
+	 * that can be created under this object.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) {
+		super.collectNewChildDescriptors(newChildDescriptors, object);
+	}
+
+	/**
+	 * This returns the label text for {@link org.eclipse.emf.edit.command.CreateChildCommand}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String getCreateChildText(Object owner, Object feature, Object child, Collection<?> selection) {
+		Object childFeature = feature;
+		Object childObject = child;
+
+		boolean qualify =
+			childFeature == UMLRpyPackage.eINSTANCE.getIDiagram_Stereotypes() ||
+			childFeature == UMLRpyPackage.eINSTANCE.getIDiagram_Annotations() ||
+			childFeature == UMLRpyPackage.eINSTANCE.getIDiagram_HyperLinks();
+
+		if (qualify) {
+			return getString
+				("_UI_CreateChild_text2", //$NON-NLS-1$
+				 new Object[] { getTypeText(childObject), getFeatureText(childFeature), getTypeText(owner) });
+		}
+		return super.getCreateChildText(owner, feature, child, selection);
+	}
+
+}
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/IUseCaseItemProvider.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/IUseCaseItemProvider.java
new file mode 100755
index 0000000..cac6cf7
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/IUseCaseItemProvider.java
@@ -0,0 +1,1083 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.provider;
+
+
+import java.util.Collection;
+import java.util.List;
+
+import org.eclipse.emf.common.notify.AdapterFactory;
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.ecore.EStructuralFeature;
+
+import org.eclipse.emf.edit.provider.ComposeableAdapterFactory;
+import org.eclipse.emf.edit.provider.IItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.ItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.ViewerNotification;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IUseCase;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyFactory;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IUseCase} object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class IUseCaseItemProvider extends IClassifierItemProvider {
+	/**
+	 * This constructs an instance from a factory and a notifier.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IUseCaseItemProvider(AdapterFactory adapterFactory) {
+		super(adapterFactory);
+	}
+
+	/**
+	 * This returns the property descriptors for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) {
+		if (itemPropertyDescriptors == null) {
+			super.getPropertyDescriptors(object);
+
+			addMultiplicityPropertyDescriptor(object);
+			addIdPropertyDescriptor(object);
+			addMyStatePropertyDescriptor(object);
+			addNamePropertyDescriptor(object);
+			addTheMainDiagramPropertyDescriptor(object);
+			addWeakCGTimePropertyDescriptor(object);
+			addStrongCGTimePropertyDescriptor(object);
+			addClassModifierPropertyDescriptor(object);
+			addEntryPointsPropertyDescriptor(object);
+			addLastIDPropertyDescriptor(object);
+			addModifiedTimeWeakPropertyDescriptor(object);
+			addRequiremenTracabilityHandlePropertyDescriptor(object);
+			addCmheaderPropertyDescriptor(object);
+			addOwnerHandlePropertyDescriptor(object);
+			addItsStateChartPropertyDescriptor(object);
+			addObjectCreationPropertyDescriptor(object);
+			addUmlDependencyIDPropertyDescriptor(object);
+		}
+		return itemPropertyDescriptors;
+	}
+
+	/**
+	 * This adds a property descriptor for the Multiplicity feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addMultiplicityPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_End2_Type_multiplicity_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_End2_Type_multiplicity_feature", "_UI_End2_Type_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getEnd2_Type_Multiplicity(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Id feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addIdPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IUseCase_id_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IUseCase_id_feature", "_UI_IUseCase_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIUseCase_Id(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the My State feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addMyStatePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IUseCase_myState_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IUseCase_myState_feature", "_UI_IUseCase_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIUseCase_MyState(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Name feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addNamePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IUseCase_name_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IUseCase_name_feature", "_UI_IUseCase_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIUseCase_Name(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the The Main Diagram feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addTheMainDiagramPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IUseCase_theMainDiagram_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IUseCase_theMainDiagram_feature", "_UI_IUseCase_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIUseCase_TheMainDiagram(),
+				 true,
+				 false,
+				 true,
+				 null,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Weak CG Time feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addWeakCGTimePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IUseCase_weakCGTime_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IUseCase_weakCGTime_feature", "_UI_IUseCase_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIUseCase_WeakCGTime(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Strong CG Time feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addStrongCGTimePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IUseCase_strongCGTime_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IUseCase_strongCGTime_feature", "_UI_IUseCase_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIUseCase_StrongCGTime(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Class Modifier feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addClassModifierPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IUseCase_classModifier_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IUseCase_classModifier_feature", "_UI_IUseCase_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIUseCase_ClassModifier(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Entry Points feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addEntryPointsPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IUseCase_EntryPoints_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IUseCase_EntryPoints_feature", "_UI_IUseCase_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIUseCase_EntryPoints(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Last ID feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addLastIDPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IUseCase_lastID_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IUseCase_lastID_feature", "_UI_IUseCase_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIUseCase_LastID(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Modified Time Weak feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addModifiedTimeWeakPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IUseCase_modifiedTimeWeak_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IUseCase_modifiedTimeWeak_feature", "_UI_IUseCase_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIUseCase_ModifiedTimeWeak(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Requiremen Tracability Handle feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addRequiremenTracabilityHandlePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IUseCase_requiremenTracabilityHandle_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IUseCase_requiremenTracabilityHandle_feature", "_UI_IUseCase_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIUseCase_RequiremenTracabilityHandle(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Cmheader feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addCmheaderPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IUseCase_cmheader_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IUseCase_cmheader_feature", "_UI_IUseCase_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIUseCase_Cmheader(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Owner Handle feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addOwnerHandlePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IUseCase_ownerHandle_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IUseCase_ownerHandle_feature", "_UI_IUseCase_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIUseCase_OwnerHandle(),
+				 true,
+				 false,
+				 true,
+				 null,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Its State Chart feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addItsStateChartPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IUseCase_itsStateChart_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IUseCase_itsStateChart_feature", "_UI_IUseCase_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIUseCase_ItsStateChart(),
+				 true,
+				 false,
+				 false,
+				 null,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Object Creation feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addObjectCreationPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IUseCase_objectCreation_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IUseCase_objectCreation_feature", "_UI_IUseCase_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIUseCase_ObjectCreation(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Uml Dependency ID feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addUmlDependencyIDPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IUseCase_umlDependencyID_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IUseCase_umlDependencyID_feature", "_UI_IUseCase_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIUseCase_UmlDependencyID(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This specifies how to implement {@link #getChildren} and is used to deduce an appropriate feature for an
+	 * {@link org.eclipse.emf.edit.command.AddCommand}, {@link org.eclipse.emf.edit.command.RemoveCommand} or
+	 * {@link org.eclipse.emf.edit.command.MoveCommand} in {@link #createCommand}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Collection<? extends EStructuralFeature> getChildrenFeatures(Object object) {
+		if (childrenFeatures == null) {
+			super.getChildrenFeatures(object);
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getIUseCase_HyperLinks());
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getIUseCase_Description());
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getIUseCase_Inheritances());
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getIUseCase_Associations());
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getIUseCase_UseCaseStereoTypes());
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getIUseCase_Dependencies());
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getIUseCase_Diagrams());
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getIUseCase_Declaratives());
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getIUseCase_Operations());
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getIUseCase_StateCharts());
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getIUseCase_Attrs());
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getIUseCase_Annotations());
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getIUseCase_EmbededFiles());
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getIUseCase_ObjectLinks());
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getIUseCase_Properties());
+		}
+		return childrenFeatures;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EStructuralFeature getChildFeature(Object object, Object child) {
+		// Check the type of the specified child object and return the proper feature to use for
+		// adding (see {@link AddCommand}) it as a child.
+
+		return super.getChildFeature(object, child);
+	}
+
+	/**
+	 * This returns IUseCase.gif.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object getImage(Object object) {
+		return overlayImage(object, getResourceLocator().getImage("full/obj16/IUseCase")); //$NON-NLS-1$
+	}
+
+	/**
+	 * This returns the label text for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String getText(Object object) {
+		String label = ((IUseCase)object).getName();
+		return label == null || label.length() == 0 ?
+			getString("_UI_IUseCase_type") : //$NON-NLS-1$
+			getString("_UI_IUseCase_type") + " " + label; //$NON-NLS-1$ //$NON-NLS-2$
+	}
+	
+
+	/**
+	 * This handles model notifications by calling {@link #updateChildren} to update any cached
+	 * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void notifyChanged(Notification notification) {
+		updateChildren(notification);
+
+		switch (notification.getFeatureID(IUseCase.class)) {
+			case UMLRpyPackage.IUSE_CASE__MULTIPLICITY:
+			case UMLRpyPackage.IUSE_CASE__ID:
+			case UMLRpyPackage.IUSE_CASE__MY_STATE:
+			case UMLRpyPackage.IUSE_CASE__NAME:
+			case UMLRpyPackage.IUSE_CASE__WEAK_CG_TIME:
+			case UMLRpyPackage.IUSE_CASE__STRONG_CG_TIME:
+			case UMLRpyPackage.IUSE_CASE__CLASS_MODIFIER:
+			case UMLRpyPackage.IUSE_CASE__ENTRY_POINTS:
+			case UMLRpyPackage.IUSE_CASE__LAST_ID:
+			case UMLRpyPackage.IUSE_CASE__MODIFIED_TIME_WEAK:
+			case UMLRpyPackage.IUSE_CASE__REQUIREMEN_TRACABILITY_HANDLE:
+			case UMLRpyPackage.IUSE_CASE__CMHEADER:
+			case UMLRpyPackage.IUSE_CASE__ITS_STATE_CHART:
+			case UMLRpyPackage.IUSE_CASE__OBJECT_CREATION:
+			case UMLRpyPackage.IUSE_CASE__UML_DEPENDENCY_ID:
+				fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), false, true));
+				return;
+			case UMLRpyPackage.IUSE_CASE__HYPER_LINKS:
+			case UMLRpyPackage.IUSE_CASE__DESCRIPTION:
+			case UMLRpyPackage.IUSE_CASE__INHERITANCES:
+			case UMLRpyPackage.IUSE_CASE__ASSOCIATIONS:
+			case UMLRpyPackage.IUSE_CASE__USE_CASE_STEREO_TYPES:
+			case UMLRpyPackage.IUSE_CASE__DEPENDENCIES:
+			case UMLRpyPackage.IUSE_CASE__DIAGRAMS:
+			case UMLRpyPackage.IUSE_CASE__DECLARATIVES:
+			case UMLRpyPackage.IUSE_CASE__OPERATIONS:
+			case UMLRpyPackage.IUSE_CASE__STATE_CHARTS:
+			case UMLRpyPackage.IUSE_CASE__ATTRS:
+			case UMLRpyPackage.IUSE_CASE__ANNOTATIONS:
+			case UMLRpyPackage.IUSE_CASE__EMBEDED_FILES:
+			case UMLRpyPackage.IUSE_CASE__OBJECT_LINKS:
+			case UMLRpyPackage.IUSE_CASE__PROPERTIES:
+				fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), true, false));
+				return;
+		}
+		super.notifyChanged(notification);
+	}
+
+	/**
+	 * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children
+	 * that can be created under this object.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) {
+		super.collectNewChildDescriptors(newChildDescriptors, object);
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIUseCase_HyperLinks(),
+				 UMLRpyFactory.eINSTANCE.createIMHyperLink()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIUseCase_Description(),
+				 UMLRpyFactory.eINSTANCE.createIDescription()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIUseCase_Inheritances(),
+				 UMLRpyFactory.eINSTANCE.createIGeneralization()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIUseCase_Associations(),
+				 UMLRpyFactory.eINSTANCE.createIAssociationEnd()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIUseCase_Associations(),
+				 UMLRpyFactory.eINSTANCE.createIBlock()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIUseCase_Associations(),
+				 UMLRpyFactory.eINSTANCE.createIModule()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIUseCase_Associations(),
+				 UMLRpyFactory.eINSTANCE.createIPart()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIUseCase_UseCaseStereoTypes(),
+				 UMLRpyFactory.eINSTANCE.createIUseCaseStereoType()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIUseCase_Dependencies(),
+				 UMLRpyFactory.eINSTANCE.createIDependency()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIUseCase_Dependencies(),
+				 UMLRpyFactory.eINSTANCE.createIHyperLink()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIUseCase_Diagrams(),
+				 UMLRpyFactory.eINSTANCE.createIClass()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIUseCase_Diagrams(),
+				 UMLRpyFactory.eINSTANCE.createIAssociationClass()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIUseCase_Diagrams(),
+				 UMLRpyFactory.eINSTANCE.createIDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIUseCase_Diagrams(),
+				 UMLRpyFactory.eINSTANCE.createICollaborationDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIUseCase_Diagrams(),
+				 UMLRpyFactory.eINSTANCE.createIComponent()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIUseCase_Diagrams(),
+				 UMLRpyFactory.eINSTANCE.createIComponentDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIUseCase_Diagrams(),
+				 UMLRpyFactory.eINSTANCE.createIDeploymentDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIUseCase_Diagrams(),
+				 UMLRpyFactory.eINSTANCE.createIInformationFlow()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIUseCase_Diagrams(),
+				 UMLRpyFactory.eINSTANCE.createIInformationItem()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIUseCase_Diagrams(),
+				 UMLRpyFactory.eINSTANCE.createIMSC()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIUseCase_Diagrams(),
+				 UMLRpyFactory.eINSTANCE.createIObjectModelDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIUseCase_Diagrams(),
+				 UMLRpyFactory.eINSTANCE.createIPanelDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIUseCase_Diagrams(),
+				 UMLRpyFactory.eINSTANCE.createISequenceDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIUseCase_Diagrams(),
+				 UMLRpyFactory.eINSTANCE.createIStateChart()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIUseCase_Diagrams(),
+				 UMLRpyFactory.eINSTANCE.createIStateChartDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIUseCase_Diagrams(),
+				 UMLRpyFactory.eINSTANCE.createIStereotype()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIUseCase_Diagrams(),
+				 UMLRpyFactory.eINSTANCE.createIStructureDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIUseCase_Diagrams(),
+				 UMLRpyFactory.eINSTANCE.createISubsystem()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIUseCase_Diagrams(),
+				 UMLRpyFactory.eINSTANCE.createIType()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIUseCase_Diagrams(),
+				 UMLRpyFactory.eINSTANCE.createIUCDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIUseCase_Diagrams(),
+				 UMLRpyFactory.eINSTANCE.createIUseCaseDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIUseCase_Declaratives(),
+				 UMLRpyFactory.eINSTANCE.createIState()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIUseCase_Declaratives(),
+				 UMLRpyFactory.eINSTANCE.createIAcceptEventAction()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIUseCase_Declaratives(),
+				 UMLRpyFactory.eINSTANCE.createIAcceptTimeEvent()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIUseCase_Declaratives(),
+				 UMLRpyFactory.eINSTANCE.createIActivityDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIUseCase_Declaratives(),
+				 UMLRpyFactory.eINSTANCE.createIActivityGraph()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIUseCase_Declaratives(),
+				 UMLRpyFactory.eINSTANCE.createIActor()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIUseCase_Declaratives(),
+				 UMLRpyFactory.eINSTANCE.createIClass()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIUseCase_Declaratives(),
+				 UMLRpyFactory.eINSTANCE.createIAssociationClass()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIUseCase_Declaratives(),
+				 UMLRpyFactory.eINSTANCE.createIAttribute()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIUseCase_Declaratives(),
+				 UMLRpyFactory.eINSTANCE.createICallOperation()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIUseCase_Declaratives(),
+				 UMLRpyFactory.eINSTANCE.createICodeGenConfigInfo()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIUseCase_Declaratives(),
+				 UMLRpyFactory.eINSTANCE.createIDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIUseCase_Declaratives(),
+				 UMLRpyFactory.eINSTANCE.createICollaborationDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIUseCase_Declaratives(),
+				 UMLRpyFactory.eINSTANCE.createIComponent()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIUseCase_Declaratives(),
+				 UMLRpyFactory.eINSTANCE.createIComponentDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIUseCase_Declaratives(),
+				 UMLRpyFactory.eINSTANCE.createIDefaultDrvdTrans()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIUseCase_Declaratives(),
+				 UMLRpyFactory.eINSTANCE.createIDependency()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIUseCase_Declaratives(),
+				 UMLRpyFactory.eINSTANCE.createIDeploymentDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIUseCase_Declaratives(),
+				 UMLRpyFactory.eINSTANCE.createIHyperLink()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIUseCase_Declaratives(),
+				 UMLRpyFactory.eINSTANCE.createIInformationFlow()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIUseCase_Declaratives(),
+				 UMLRpyFactory.eINSTANCE.createIInformationItem()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIUseCase_Declaratives(),
+				 UMLRpyFactory.eINSTANCE.createIMSC()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIUseCase_Declaratives(),
+				 UMLRpyFactory.eINSTANCE.createIMatrixInstance()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIUseCase_Declaratives(),
+				 UMLRpyFactory.eINSTANCE.createIMessage()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIUseCase_Declaratives(),
+				 UMLRpyFactory.eINSTANCE.createIModule()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIUseCase_Declaratives(),
+				 UMLRpyFactory.eINSTANCE.createIObjectLink()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIUseCase_Declaratives(),
+				 UMLRpyFactory.eINSTANCE.createIObjectModelDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIUseCase_Declaratives(),
+				 UMLRpyFactory.eINSTANCE.createIObjectNode()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIUseCase_Declaratives(),
+				 UMLRpyFactory.eINSTANCE.createIPanelDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIUseCase_Declaratives(),
+				 UMLRpyFactory.eINSTANCE.createIPart()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIUseCase_Declaratives(),
+				 UMLRpyFactory.eINSTANCE.createIPrimitiveOperation()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIUseCase_Declaratives(),
+				 UMLRpyFactory.eINSTANCE.createIProfile()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIUseCase_Declaratives(),
+				 UMLRpyFactory.eINSTANCE.createIReception()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIUseCase_Declaratives(),
+				 UMLRpyFactory.eINSTANCE.createIReferenceActivity()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIUseCase_Declaratives(),
+				 UMLRpyFactory.eINSTANCE.createIRequirement()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIUseCase_Declaratives(),
+				 UMLRpyFactory.eINSTANCE.createISequenceDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIUseCase_Declaratives(),
+				 UMLRpyFactory.eINSTANCE.createIStateChart()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIUseCase_Declaratives(),
+				 UMLRpyFactory.eINSTANCE.createIStateChartDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIUseCase_Declaratives(),
+				 UMLRpyFactory.eINSTANCE.createIStereotype()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIUseCase_Declaratives(),
+				 UMLRpyFactory.eINSTANCE.createIStructureDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIUseCase_Declaratives(),
+				 UMLRpyFactory.eINSTANCE.createISubsystem()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIUseCase_Declaratives(),
+				 UMLRpyFactory.eINSTANCE.createISysMLPort()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIUseCase_Declaratives(),
+				 UMLRpyFactory.eINSTANCE.createITableInstance()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIUseCase_Declaratives(),
+				 UMLRpyFactory.eINSTANCE.createITransition()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIUseCase_Declaratives(),
+				 UMLRpyFactory.eINSTANCE.createIType()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIUseCase_Declaratives(),
+				 UMLRpyFactory.eINSTANCE.createIUCDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIUseCase_Declaratives(),
+				 UMLRpyFactory.eINSTANCE.createIUseCase()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIUseCase_Declaratives(),
+				 UMLRpyFactory.eINSTANCE.createIUseCaseDiagram()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIUseCase_Operations(),
+				 UMLRpyFactory.eINSTANCE.createIConstructor()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIUseCase_Operations(),
+				 UMLRpyFactory.eINSTANCE.createIDestructor()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIUseCase_Operations(),
+				 UMLRpyFactory.eINSTANCE.createIPrimitiveOperation()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIUseCase_Operations(),
+				 UMLRpyFactory.eINSTANCE.createIReception()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIUseCase_Operations(),
+				 UMLRpyFactory.eINSTANCE.createITriggered()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIUseCase_StateCharts(),
+				 UMLRpyFactory.eINSTANCE.createIActivityGraph()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIUseCase_Attrs(),
+				 UMLRpyFactory.eINSTANCE.createIAttribute()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIUseCase_Annotations(),
+				 UMLRpyFactory.eINSTANCE.createIAnnotation()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIUseCase_Annotations(),
+				 UMLRpyFactory.eINSTANCE.createIComment()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIUseCase_Annotations(),
+				 UMLRpyFactory.eINSTANCE.createIConstraint()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIUseCase_Annotations(),
+				 UMLRpyFactory.eINSTANCE.createIRequirement()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIUseCase_EmbededFiles(),
+				 UMLRpyFactory.eINSTANCE.createIEmbededFile()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIUseCase_ObjectLinks(),
+				 UMLRpyFactory.eINSTANCE.createIObjectLink()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIUseCase_Properties(),
+				 UMLRpyFactory.eINSTANCE.createIPropertyContainer()));
+	}
+
+	/**
+	 * This returns the label text for {@link org.eclipse.emf.edit.command.CreateChildCommand}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String getCreateChildText(Object owner, Object feature, Object child, Collection<?> selection) {
+		Object childFeature = feature;
+		Object childObject = child;
+
+		boolean qualify =
+			childFeature == UMLRpyPackage.eINSTANCE.getIUseCase_Associations() ||
+			childFeature == UMLRpyPackage.eINSTANCE.getIUseCase_Declaratives() ||
+			childFeature == UMLRpyPackage.eINSTANCE.getIUseCase_Dependencies() ||
+			childFeature == UMLRpyPackage.eINSTANCE.getIUseCase_Diagrams() ||
+			childFeature == UMLRpyPackage.eINSTANCE.getIUseCase_StateCharts() ||
+			childFeature == UMLRpyPackage.eINSTANCE.getIUseCase_Attrs() ||
+			childFeature == UMLRpyPackage.eINSTANCE.getIUseCase_ObjectLinks() ||
+			childFeature == UMLRpyPackage.eINSTANCE.getIUseCase_Operations() ||
+			childFeature == UMLRpyPackage.eINSTANCE.getIUseCase_Annotations();
+
+		if (qualify) {
+			return getString
+				("_UI_CreateChild_text2", //$NON-NLS-1$
+				 new Object[] { getTypeText(childObject), getFeatureText(childFeature), getTypeText(owner) });
+		}
+		return super.getCreateChildText(owner, feature, child, selection);
+	}
+
+}
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/IUseCaseStereoTypeItemProvider.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/IUseCaseStereoTypeItemProvider.java
new file mode 100755
index 0000000..661c4ab
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/IUseCaseStereoTypeItemProvider.java
@@ -0,0 +1,215 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.provider;
+
+
+import java.util.Collection;
+import java.util.List;
+
+import org.eclipse.emf.common.notify.AdapterFactory;
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.common.util.ResourceLocator;
+
+import org.eclipse.emf.edit.provider.ComposeableAdapterFactory;
+import org.eclipse.emf.edit.provider.IEditingDomainItemProvider;
+import org.eclipse.emf.edit.provider.IItemLabelProvider;
+import org.eclipse.emf.edit.provider.IItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.IItemPropertySource;
+import org.eclipse.emf.edit.provider.IStructuredItemContentProvider;
+import org.eclipse.emf.edit.provider.ITreeItemContentProvider;
+import org.eclipse.emf.edit.provider.ItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.ItemProviderAdapter;
+import org.eclipse.emf.edit.provider.ViewerNotification;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IUseCaseStereoType;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IUseCaseStereoType} object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class IUseCaseStereoTypeItemProvider 
+	extends ItemProviderAdapter
+	implements
+		IEditingDomainItemProvider,
+		IStructuredItemContentProvider,
+		ITreeItemContentProvider,
+		IItemLabelProvider,
+		IItemPropertySource {
+	/**
+	 * This constructs an instance from a factory and a notifier.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IUseCaseStereoTypeItemProvider(AdapterFactory adapterFactory) {
+		super(adapterFactory);
+	}
+
+	/**
+	 * This returns the property descriptors for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) {
+		if (itemPropertyDescriptors == null) {
+			super.getPropertyDescriptors(object);
+
+			addUseCasePropertyDescriptor(object);
+			addStereoTypePropertyDescriptor(object);
+			addEntryPointPropertyDescriptor(object);
+		}
+		return itemPropertyDescriptors;
+	}
+
+	/**
+	 * This adds a property descriptor for the Use Case feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addUseCasePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IUseCaseStereoType_useCase_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IUseCaseStereoType_useCase_feature", "_UI_IUseCaseStereoType_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIUseCaseStereoType_UseCase(),
+				 true,
+				 false,
+				 true,
+				 null,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Stereo Type feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addStereoTypePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IUseCaseStereoType_stereoType_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IUseCaseStereoType_stereoType_feature", "_UI_IUseCaseStereoType_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIUseCaseStereoType_StereoType(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Entry Point feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addEntryPointPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IUseCaseStereoType_entryPoint_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IUseCaseStereoType_entryPoint_feature", "_UI_IUseCaseStereoType_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIUseCaseStereoType_EntryPoint(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This returns IUseCaseStereoType.gif.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object getImage(Object object) {
+		return overlayImage(object, getResourceLocator().getImage("full/obj16/IUseCaseStereoType")); //$NON-NLS-1$
+	}
+
+	/**
+	 * This returns the label text for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String getText(Object object) {
+		String label = ((IUseCaseStereoType)object).getStereoType();
+		return label == null || label.length() == 0 ?
+			getString("_UI_IUseCaseStereoType_type") : //$NON-NLS-1$
+			getString("_UI_IUseCaseStereoType_type") + " " + label; //$NON-NLS-1$ //$NON-NLS-2$
+	}
+	
+
+	/**
+	 * This handles model notifications by calling {@link #updateChildren} to update any cached
+	 * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void notifyChanged(Notification notification) {
+		updateChildren(notification);
+
+		switch (notification.getFeatureID(IUseCaseStereoType.class)) {
+			case UMLRpyPackage.IUSE_CASE_STEREO_TYPE__STEREO_TYPE:
+			case UMLRpyPackage.IUSE_CASE_STEREO_TYPE__ENTRY_POINT:
+				fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), false, true));
+				return;
+		}
+		super.notifyChanged(notification);
+	}
+
+	/**
+	 * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children
+	 * that can be created under this object.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) {
+		super.collectNewChildDescriptors(newChildDescriptors, object);
+	}
+
+	/**
+	 * Return the resource locator for this item provider's resources.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public ResourceLocator getResourceLocator() {
+		return rpymetamodelEditPlugin.INSTANCE;
+	}
+
+}
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/IValueSpecificationItemProvider.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/IValueSpecificationItemProvider.java
new file mode 100755
index 0000000..91045bf
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/IValueSpecificationItemProvider.java
@@ -0,0 +1,109 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.provider;
+
+
+import java.util.Collection;
+import java.util.List;
+
+import org.eclipse.emf.common.notify.AdapterFactory;
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.edit.provider.IItemPropertyDescriptor;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IValueSpecification;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IValueSpecification} object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class IValueSpecificationItemProvider extends IModelElementItemProvider {
+	/**
+	 * This constructs an instance from a factory and a notifier.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IValueSpecificationItemProvider(AdapterFactory adapterFactory) {
+		super(adapterFactory);
+	}
+
+	/**
+	 * This returns the property descriptors for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) {
+		if (itemPropertyDescriptors == null) {
+			super.getPropertyDescriptors(object);
+
+		}
+		return itemPropertyDescriptors;
+	}
+
+	/**
+	 * This returns IValueSpecification.gif.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object getImage(Object object) {
+		return overlayImage(object, getResourceLocator().getImage("full/obj16/IValueSpecification")); //$NON-NLS-1$
+	}
+
+	/**
+	 * This returns the label text for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String getText(Object object) {
+		String label = ((IValueSpecification)object).getDisplayName();
+		return label == null || label.length() == 0 ?
+			getString("_UI_IValueSpecification_type") : //$NON-NLS-1$
+			getString("_UI_IValueSpecification_type") + " " + label; //$NON-NLS-1$ //$NON-NLS-2$
+	}
+	
+
+	/**
+	 * This handles model notifications by calling {@link #updateChildren} to update any cached
+	 * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void notifyChanged(Notification notification) {
+		updateChildren(notification);
+		super.notifyChanged(notification);
+	}
+
+	/**
+	 * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children
+	 * that can be created under this object.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) {
+		super.collectNewChildDescriptors(newChildDescriptors, object);
+	}
+
+}
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/IVariableItemProvider.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/IVariableItemProvider.java
new file mode 100755
index 0000000..d1100df
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/IVariableItemProvider.java
@@ -0,0 +1,183 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.provider;
+
+
+import java.util.Collection;
+import java.util.List;
+
+import org.eclipse.emf.common.notify.AdapterFactory;
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.ecore.EStructuralFeature;
+
+import org.eclipse.emf.edit.provider.ComposeableAdapterFactory;
+import org.eclipse.emf.edit.provider.IItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.ItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.ViewerNotification;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IVariable;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyFactory;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IVariable} object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class IVariableItemProvider extends IUnitItemProvider {
+	/**
+	 * This constructs an instance from a factory and a notifier.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IVariableItemProvider(AdapterFactory adapterFactory) {
+		super(adapterFactory);
+	}
+
+	/**
+	 * This returns the property descriptors for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) {
+		if (itemPropertyDescriptors == null) {
+			super.getPropertyDescriptors(object);
+
+			addIsOrderedPropertyDescriptor(object);
+		}
+		return itemPropertyDescriptors;
+	}
+
+	/**
+	 * This adds a property descriptor for the Is Ordered feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addIsOrderedPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_IVariable_isOrdered_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_IVariable_isOrdered_feature", "_UI_IVariable_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getIVariable_IsOrdered(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This specifies how to implement {@link #getChildren} and is used to deduce an appropriate feature for an
+	 * {@link org.eclipse.emf.edit.command.AddCommand}, {@link org.eclipse.emf.edit.command.RemoveCommand} or
+	 * {@link org.eclipse.emf.edit.command.MoveCommand} in {@link #createCommand}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Collection<? extends EStructuralFeature> getChildrenFeatures(Object object) {
+		if (childrenFeatures == null) {
+			super.getChildrenFeatures(object);
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getIVariable_MyTypeOf());
+		}
+		return childrenFeatures;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EStructuralFeature getChildFeature(Object object, Object child) {
+		// Check the type of the specified child object and return the proper feature to use for
+		// adding (see {@link AddCommand}) it as a child.
+
+		return super.getChildFeature(object, child);
+	}
+
+	/**
+	 * This returns IVariable.gif.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object getImage(Object object) {
+		return overlayImage(object, getResourceLocator().getImage("full/obj16/IVariable")); //$NON-NLS-1$
+	}
+
+	/**
+	 * This returns the label text for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String getText(Object object) {
+		String label = ((IVariable)object).getDisplayName();
+		return label == null || label.length() == 0 ?
+			getString("_UI_IVariable_type") : //$NON-NLS-1$
+			getString("_UI_IVariable_type") + " " + label; //$NON-NLS-1$ //$NON-NLS-2$
+	}
+	
+
+	/**
+	 * This handles model notifications by calling {@link #updateChildren} to update any cached
+	 * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void notifyChanged(Notification notification) {
+		updateChildren(notification);
+
+		switch (notification.getFeatureID(IVariable.class)) {
+			case UMLRpyPackage.IVARIABLE__IS_ORDERED:
+				fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), false, true));
+				return;
+			case UMLRpyPackage.IVARIABLE__MY_TYPE_OF:
+				fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), true, false));
+				return;
+		}
+		super.notifyChanged(notification);
+	}
+
+	/**
+	 * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children
+	 * that can be created under this object.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) {
+		super.collectNewChildDescriptors(newChildDescriptors, object);
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getIVariable_MyTypeOf(),
+				 UMLRpyFactory.eINSTANCE.createIType()));
+	}
+
+}
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/InverseTypeItemProvider.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/InverseTypeItemProvider.java
new file mode 100755
index 0000000..8b9e7a0
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/InverseTypeItemProvider.java
@@ -0,0 +1,119 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.provider;
+
+
+import java.util.Collection;
+import java.util.List;
+
+import org.eclipse.emf.common.notify.AdapterFactory;
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.common.util.ResourceLocator;
+
+import org.eclipse.emf.edit.provider.IEditingDomainItemProvider;
+import org.eclipse.emf.edit.provider.IItemLabelProvider;
+import org.eclipse.emf.edit.provider.IItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.IItemPropertySource;
+import org.eclipse.emf.edit.provider.IStructuredItemContentProvider;
+import org.eclipse.emf.edit.provider.ITreeItemContentProvider;
+import org.eclipse.emf.edit.provider.ItemProviderAdapter;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.InverseType} object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class InverseTypeItemProvider 
+	extends ItemProviderAdapter
+	implements
+		IEditingDomainItemProvider,
+		IStructuredItemContentProvider,
+		ITreeItemContentProvider,
+		IItemLabelProvider,
+		IItemPropertySource {
+	/**
+	 * This constructs an instance from a factory and a notifier.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public InverseTypeItemProvider(AdapterFactory adapterFactory) {
+		super(adapterFactory);
+	}
+
+	/**
+	 * This returns the property descriptors for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) {
+		if (itemPropertyDescriptors == null) {
+			super.getPropertyDescriptors(object);
+
+		}
+		return itemPropertyDescriptors;
+	}
+
+	/**
+	 * This returns the label text for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String getText(Object object) {
+		return getString("_UI_InverseType_type"); //$NON-NLS-1$
+	}
+	
+
+	/**
+	 * This handles model notifications by calling {@link #updateChildren} to update any cached
+	 * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void notifyChanged(Notification notification) {
+		updateChildren(notification);
+		super.notifyChanged(notification);
+	}
+
+	/**
+	 * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children
+	 * that can be created under this object.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) {
+		super.collectNewChildDescriptors(newChildDescriptors, object);
+	}
+
+	/**
+	 * Return the resource locator for this item provider's resources.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public ResourceLocator getResourceLocator() {
+		return rpymetamodelEditPlugin.INSTANCE;
+	}
+
+}
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/ItemsTypeItemProvider.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/ItemsTypeItemProvider.java
new file mode 100755
index 0000000..eeb069f
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/ItemsTypeItemProvider.java
@@ -0,0 +1,119 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.provider;
+
+
+import java.util.Collection;
+import java.util.List;
+
+import org.eclipse.emf.common.notify.AdapterFactory;
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.common.util.ResourceLocator;
+
+import org.eclipse.emf.edit.provider.IEditingDomainItemProvider;
+import org.eclipse.emf.edit.provider.IItemLabelProvider;
+import org.eclipse.emf.edit.provider.IItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.IItemPropertySource;
+import org.eclipse.emf.edit.provider.IStructuredItemContentProvider;
+import org.eclipse.emf.edit.provider.ITreeItemContentProvider;
+import org.eclipse.emf.edit.provider.ItemProviderAdapter;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ItemsType} object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class ItemsTypeItemProvider 
+	extends ItemProviderAdapter
+	implements
+		IEditingDomainItemProvider,
+		IStructuredItemContentProvider,
+		ITreeItemContentProvider,
+		IItemLabelProvider,
+		IItemPropertySource {
+	/**
+	 * This constructs an instance from a factory and a notifier.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public ItemsTypeItemProvider(AdapterFactory adapterFactory) {
+		super(adapterFactory);
+	}
+
+	/**
+	 * This returns the property descriptors for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) {
+		if (itemPropertyDescriptors == null) {
+			super.getPropertyDescriptors(object);
+
+		}
+		return itemPropertyDescriptors;
+	}
+
+	/**
+	 * This returns the label text for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String getText(Object object) {
+		return getString("_UI_ItemsType_type"); //$NON-NLS-1$
+	}
+	
+
+	/**
+	 * This handles model notifications by calling {@link #updateChildren} to update any cached
+	 * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void notifyChanged(Notification notification) {
+		updateChildren(notification);
+		super.notifyChanged(notification);
+	}
+
+	/**
+	 * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children
+	 * that can be created under this object.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) {
+		super.collectNewChildDescriptors(newChildDescriptors, object);
+	}
+
+	/**
+	 * Return the resource locator for this item provider's resources.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public ResourceLocator getResourceLocator() {
+		return rpymetamodelEditPlugin.INSTANCE;
+	}
+
+}
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/ItsLabelTypeItemProvider.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/ItsLabelTypeItemProvider.java
new file mode 100755
index 0000000..91a2dbb
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/ItsLabelTypeItemProvider.java
@@ -0,0 +1,119 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.provider;
+
+
+import java.util.Collection;
+import java.util.List;
+
+import org.eclipse.emf.common.notify.AdapterFactory;
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.common.util.ResourceLocator;
+
+import org.eclipse.emf.edit.provider.IEditingDomainItemProvider;
+import org.eclipse.emf.edit.provider.IItemLabelProvider;
+import org.eclipse.emf.edit.provider.IItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.IItemPropertySource;
+import org.eclipse.emf.edit.provider.IStructuredItemContentProvider;
+import org.eclipse.emf.edit.provider.ITreeItemContentProvider;
+import org.eclipse.emf.edit.provider.ItemProviderAdapter;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ItsLabelType} object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class ItsLabelTypeItemProvider 
+	extends ItemProviderAdapter
+	implements
+		IEditingDomainItemProvider,
+		IStructuredItemContentProvider,
+		ITreeItemContentProvider,
+		IItemLabelProvider,
+		IItemPropertySource {
+	/**
+	 * This constructs an instance from a factory and a notifier.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public ItsLabelTypeItemProvider(AdapterFactory adapterFactory) {
+		super(adapterFactory);
+	}
+
+	/**
+	 * This returns the property descriptors for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) {
+		if (itemPropertyDescriptors == null) {
+			super.getPropertyDescriptors(object);
+
+		}
+		return itemPropertyDescriptors;
+	}
+
+	/**
+	 * This returns the label text for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String getText(Object object) {
+		return getString("_UI_ItsLabelType_type"); //$NON-NLS-1$
+	}
+	
+
+	/**
+	 * This handles model notifications by calling {@link #updateChildren} to update any cached
+	 * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void notifyChanged(Notification notification) {
+		updateChildren(notification);
+		super.notifyChanged(notification);
+	}
+
+	/**
+	 * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children
+	 * that can be created under this object.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) {
+		super.collectNewChildDescriptors(newChildDescriptors, object);
+	}
+
+	/**
+	 * Return the resource locator for this item provider's resources.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public ResourceLocator getResourceLocator() {
+		return rpymetamodelEditPlugin.INSTANCE;
+	}
+
+}
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/ItsStateChartTypeItemProvider.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/ItsStateChartTypeItemProvider.java
new file mode 100755
index 0000000..c58e492
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/ItsStateChartTypeItemProvider.java
@@ -0,0 +1,119 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.provider;
+
+
+import java.util.Collection;
+import java.util.List;
+
+import org.eclipse.emf.common.notify.AdapterFactory;
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.common.util.ResourceLocator;
+
+import org.eclipse.emf.edit.provider.IEditingDomainItemProvider;
+import org.eclipse.emf.edit.provider.IItemLabelProvider;
+import org.eclipse.emf.edit.provider.IItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.IItemPropertySource;
+import org.eclipse.emf.edit.provider.IStructuredItemContentProvider;
+import org.eclipse.emf.edit.provider.ITreeItemContentProvider;
+import org.eclipse.emf.edit.provider.ItemProviderAdapter;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ItsStateChartType} object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class ItsStateChartTypeItemProvider 
+	extends ItemProviderAdapter
+	implements
+		IEditingDomainItemProvider,
+		IStructuredItemContentProvider,
+		ITreeItemContentProvider,
+		IItemLabelProvider,
+		IItemPropertySource {
+	/**
+	 * This constructs an instance from a factory and a notifier.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public ItsStateChartTypeItemProvider(AdapterFactory adapterFactory) {
+		super(adapterFactory);
+	}
+
+	/**
+	 * This returns the property descriptors for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) {
+		if (itemPropertyDescriptors == null) {
+			super.getPropertyDescriptors(object);
+
+		}
+		return itemPropertyDescriptors;
+	}
+
+	/**
+	 * This returns the label text for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String getText(Object object) {
+		return getString("_UI_ItsStateChartType_type"); //$NON-NLS-1$
+	}
+	
+
+	/**
+	 * This handles model notifications by calling {@link #updateChildren} to update any cached
+	 * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void notifyChanged(Notification notification) {
+		updateChildren(notification);
+		super.notifyChanged(notification);
+	}
+
+	/**
+	 * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children
+	 * that can be created under this object.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) {
+		super.collectNewChildDescriptors(newChildDescriptors, object);
+	}
+
+	/**
+	 * Return the resource locator for this item provider's resources.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public ResourceLocator getResourceLocator() {
+		return rpymetamodelEditPlugin.INSTANCE;
+	}
+
+}
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/ItsTargetTypeItemProvider.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/ItsTargetTypeItemProvider.java
new file mode 100755
index 0000000..3ff9c34
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/ItsTargetTypeItemProvider.java
@@ -0,0 +1,119 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.provider;
+
+
+import java.util.Collection;
+import java.util.List;
+
+import org.eclipse.emf.common.notify.AdapterFactory;
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.common.util.ResourceLocator;
+
+import org.eclipse.emf.edit.provider.IEditingDomainItemProvider;
+import org.eclipse.emf.edit.provider.IItemLabelProvider;
+import org.eclipse.emf.edit.provider.IItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.IItemPropertySource;
+import org.eclipse.emf.edit.provider.IStructuredItemContentProvider;
+import org.eclipse.emf.edit.provider.ITreeItemContentProvider;
+import org.eclipse.emf.edit.provider.ItemProviderAdapter;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ItsTargetType} object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class ItsTargetTypeItemProvider 
+	extends ItemProviderAdapter
+	implements
+		IEditingDomainItemProvider,
+		IStructuredItemContentProvider,
+		ITreeItemContentProvider,
+		IItemLabelProvider,
+		IItemPropertySource {
+	/**
+	 * This constructs an instance from a factory and a notifier.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public ItsTargetTypeItemProvider(AdapterFactory adapterFactory) {
+		super(adapterFactory);
+	}
+
+	/**
+	 * This returns the property descriptors for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) {
+		if (itemPropertyDescriptors == null) {
+			super.getPropertyDescriptors(object);
+
+		}
+		return itemPropertyDescriptors;
+	}
+
+	/**
+	 * This returns the label text for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String getText(Object object) {
+		return getString("_UI_ItsTargetType_type"); //$NON-NLS-1$
+	}
+	
+
+	/**
+	 * This handles model notifications by calling {@link #updateChildren} to update any cached
+	 * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void notifyChanged(Notification notification) {
+		updateChildren(notification);
+		super.notifyChanged(notification);
+	}
+
+	/**
+	 * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children
+	 * that can be created under this object.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) {
+		super.collectNewChildDescriptors(newChildDescriptors, object);
+	}
+
+	/**
+	 * Return the resource locator for this item provider's resources.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public ResourceLocator getResourceLocator() {
+		return rpymetamodelEditPlugin.INSTANCE;
+	}
+
+}
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/ItsTriggerTypeItemProvider.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/ItsTriggerTypeItemProvider.java
new file mode 100755
index 0000000..d01d8c6
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/ItsTriggerTypeItemProvider.java
@@ -0,0 +1,301 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.provider;
+
+
+import java.util.Collection;
+import java.util.List;
+
+import org.eclipse.emf.common.notify.AdapterFactory;
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.common.util.ResourceLocator;
+
+import org.eclipse.emf.edit.provider.ComposeableAdapterFactory;
+import org.eclipse.emf.edit.provider.IEditingDomainItemProvider;
+import org.eclipse.emf.edit.provider.IItemLabelProvider;
+import org.eclipse.emf.edit.provider.IItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.IItemPropertySource;
+import org.eclipse.emf.edit.provider.IStructuredItemContentProvider;
+import org.eclipse.emf.edit.provider.ITreeItemContentProvider;
+import org.eclipse.emf.edit.provider.ItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.ItemProviderAdapter;
+import org.eclipse.emf.edit.provider.ViewerNotification;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ItsTriggerType;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ItsTriggerType} object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class ItsTriggerTypeItemProvider 
+	extends ItemProviderAdapter
+	implements
+		IEditingDomainItemProvider,
+		IStructuredItemContentProvider,
+		ITreeItemContentProvider,
+		IItemLabelProvider,
+		IItemPropertySource {
+	/**
+	 * This constructs an instance from a factory and a notifier.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public ItsTriggerTypeItemProvider(AdapterFactory adapterFactory) {
+		super(adapterFactory);
+	}
+
+	/**
+	 * This returns the property descriptors for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) {
+		if (itemPropertyDescriptors == null) {
+			super.getPropertyDescriptors(object);
+
+			addModifiedTimeWeakPropertyDescriptor(object);
+			addIdPropertyDescriptor(object);
+			addInfoPropertyDescriptor(object);
+			addUmlDependencyIDPropertyDescriptor(object);
+			addMyStatePropertyDescriptor(object);
+			addObjectCreationPropertyDescriptor(object);
+			addBodyPropertyDescriptor(object);
+		}
+		return itemPropertyDescriptors;
+	}
+
+	/**
+	 * This adds a property descriptor for the Modified Time Weak feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addModifiedTimeWeakPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_ItsTriggerType_modifiedTimeWeak_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_ItsTriggerType_modifiedTimeWeak_feature", "_UI_ItsTriggerType_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getItsTriggerType_ModifiedTimeWeak(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Id feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addIdPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_ItsTriggerType_id_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_ItsTriggerType_id_feature", "_UI_ItsTriggerType_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getItsTriggerType_Id(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Info feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addInfoPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_ItsTriggerType_info_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_ItsTriggerType_info_feature", "_UI_ItsTriggerType_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getItsTriggerType_Info(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Uml Dependency ID feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addUmlDependencyIDPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_ItsTriggerType_umlDependencyID_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_ItsTriggerType_umlDependencyID_feature", "_UI_ItsTriggerType_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getItsTriggerType_UmlDependencyID(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the My State feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addMyStatePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_ItsTriggerType_myState_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_ItsTriggerType_myState_feature", "_UI_ItsTriggerType_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getItsTriggerType_MyState(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Object Creation feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addObjectCreationPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_ItsTriggerType_objectCreation_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_ItsTriggerType_objectCreation_feature", "_UI_ItsTriggerType_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getItsTriggerType_ObjectCreation(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Body feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addBodyPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_ItsTriggerType_body_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_ItsTriggerType_body_feature", "_UI_ItsTriggerType_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getItsTriggerType_Body(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This returns the label text for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String getText(Object object) {
+		String label = ((ItsTriggerType)object).getId();
+		return label == null || label.length() == 0 ?
+			getString("_UI_ItsTriggerType_type") : //$NON-NLS-1$
+			getString("_UI_ItsTriggerType_type") + " " + label; //$NON-NLS-1$ //$NON-NLS-2$
+	}
+	
+
+	/**
+	 * This handles model notifications by calling {@link #updateChildren} to update any cached
+	 * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void notifyChanged(Notification notification) {
+		updateChildren(notification);
+
+		switch (notification.getFeatureID(ItsTriggerType.class)) {
+			case UMLRpyPackage.ITS_TRIGGER_TYPE__MODIFIED_TIME_WEAK:
+			case UMLRpyPackage.ITS_TRIGGER_TYPE__ID:
+			case UMLRpyPackage.ITS_TRIGGER_TYPE__INFO:
+			case UMLRpyPackage.ITS_TRIGGER_TYPE__UML_DEPENDENCY_ID:
+			case UMLRpyPackage.ITS_TRIGGER_TYPE__MY_STATE:
+			case UMLRpyPackage.ITS_TRIGGER_TYPE__OBJECT_CREATION:
+			case UMLRpyPackage.ITS_TRIGGER_TYPE__BODY:
+				fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), false, true));
+				return;
+		}
+		super.notifyChanged(notification);
+	}
+
+	/**
+	 * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children
+	 * that can be created under this object.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) {
+		super.collectNewChildDescriptors(newChildDescriptors, object);
+	}
+
+	/**
+	 * Return the resource locator for this item provider's resources.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public ResourceLocator getResourceLocator() {
+		return rpymetamodelEditPlugin.INSTANCE;
+	}
+
+}
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/LinksTypeItemProvider.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/LinksTypeItemProvider.java
new file mode 100755
index 0000000..8752955
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/LinksTypeItemProvider.java
@@ -0,0 +1,246 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.provider;
+
+
+import java.util.Collection;
+import java.util.List;
+
+import org.eclipse.emf.common.notify.AdapterFactory;
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.common.util.ResourceLocator;
+
+import org.eclipse.emf.ecore.EStructuralFeature;
+
+import org.eclipse.emf.edit.provider.ComposeableAdapterFactory;
+import org.eclipse.emf.edit.provider.IEditingDomainItemProvider;
+import org.eclipse.emf.edit.provider.IItemLabelProvider;
+import org.eclipse.emf.edit.provider.IItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.IItemPropertySource;
+import org.eclipse.emf.edit.provider.IStructuredItemContentProvider;
+import org.eclipse.emf.edit.provider.ITreeItemContentProvider;
+import org.eclipse.emf.edit.provider.ItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.ItemProviderAdapter;
+import org.eclipse.emf.edit.provider.ViewerNotification;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.LinksType;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyFactory;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.LinksType} object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class LinksTypeItemProvider 
+	extends ItemProviderAdapter
+	implements
+		IEditingDomainItemProvider,
+		IStructuredItemContentProvider,
+		ITreeItemContentProvider,
+		IItemLabelProvider,
+		IItemPropertySource {
+	/**
+	 * This constructs an instance from a factory and a notifier.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public LinksTypeItemProvider(AdapterFactory adapterFactory) {
+		super(adapterFactory);
+	}
+
+	/**
+	 * This returns the property descriptors for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) {
+		if (itemPropertyDescriptors == null) {
+			super.getPropertyDescriptors(object);
+
+			addIdPropertyDescriptor(object);
+			addMultiplicityPropertyDescriptor(object);
+			addNamePropertyDescriptor(object);
+		}
+		return itemPropertyDescriptors;
+	}
+
+	/**
+	 * This adds a property descriptor for the Id feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addIdPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_LinksType_id_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_LinksType_id_feature", "_UI_LinksType_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getLinksType_Id(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Multiplicity feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addMultiplicityPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_LinksType_multiplicity_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_LinksType_multiplicity_feature", "_UI_LinksType_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getLinksType_Multiplicity(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Name feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addNamePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_LinksType_name_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_LinksType_name_feature", "_UI_LinksType_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getLinksType_Name(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This specifies how to implement {@link #getChildren} and is used to deduce an appropriate feature for an
+	 * {@link org.eclipse.emf.edit.command.AddCommand}, {@link org.eclipse.emf.edit.command.RemoveCommand} or
+	 * {@link org.eclipse.emf.edit.command.MoveCommand} in {@link #createCommand}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Collection<? extends EStructuralFeature> getChildrenFeatures(Object object) {
+		if (childrenFeatures == null) {
+			super.getChildrenFeatures(object);
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getLinksType_OtherClass());
+		}
+		return childrenFeatures;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EStructuralFeature getChildFeature(Object object, Object child) {
+		// Check the type of the specified child object and return the proper feature to use for
+		// adding (see {@link AddCommand}) it as a child.
+
+		return super.getChildFeature(object, child);
+	}
+
+	/**
+	 * This returns the label text for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String getText(Object object) {
+		String label = ((LinksType)object).getName();
+		return label == null || label.length() == 0 ?
+			getString("_UI_LinksType_type") : //$NON-NLS-1$
+			getString("_UI_LinksType_type") + " " + label; //$NON-NLS-1$ //$NON-NLS-2$
+	}
+	
+
+	/**
+	 * This handles model notifications by calling {@link #updateChildren} to update any cached
+	 * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void notifyChanged(Notification notification) {
+		updateChildren(notification);
+
+		switch (notification.getFeatureID(LinksType.class)) {
+			case UMLRpyPackage.LINKS_TYPE__ID:
+			case UMLRpyPackage.LINKS_TYPE__MULTIPLICITY:
+			case UMLRpyPackage.LINKS_TYPE__NAME:
+				fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), false, true));
+				return;
+			case UMLRpyPackage.LINKS_TYPE__OTHER_CLASS:
+				fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), true, false));
+				return;
+		}
+		super.notifyChanged(notification);
+	}
+
+	/**
+	 * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children
+	 * that can be created under this object.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) {
+		super.collectNewChildDescriptors(newChildDescriptors, object);
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getLinksType_OtherClass(),
+				 UMLRpyFactory.eINSTANCE.createIClassHandle()));
+	}
+
+	/**
+	 * Return the resource locator for this item provider's resources.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public ResourceLocator getResourceLocator() {
+		return rpymetamodelEditPlugin.INSTANCE;
+	}
+
+}
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/M_hTargetTypeItemProvider.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/M_hTargetTypeItemProvider.java
new file mode 100755
index 0000000..1500202
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/M_hTargetTypeItemProvider.java
@@ -0,0 +1,205 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.provider;
+
+
+import java.util.Collection;
+import java.util.List;
+
+import org.eclipse.emf.common.notify.AdapterFactory;
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.common.util.ResourceLocator;
+
+import org.eclipse.emf.ecore.EStructuralFeature;
+
+import org.eclipse.emf.edit.provider.ComposeableAdapterFactory;
+import org.eclipse.emf.edit.provider.IEditingDomainItemProvider;
+import org.eclipse.emf.edit.provider.IItemLabelProvider;
+import org.eclipse.emf.edit.provider.IItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.IItemPropertySource;
+import org.eclipse.emf.edit.provider.IStructuredItemContentProvider;
+import org.eclipse.emf.edit.provider.ITreeItemContentProvider;
+import org.eclipse.emf.edit.provider.ItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.ItemProviderAdapter;
+import org.eclipse.emf.edit.provider.ViewerNotification;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.M_hTargetType;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyFactory;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.M_hTargetType} object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class M_hTargetTypeItemProvider 
+	extends ItemProviderAdapter
+	implements
+		IEditingDomainItemProvider,
+		IStructuredItemContentProvider,
+		ITreeItemContentProvider,
+		IItemLabelProvider,
+		IItemPropertySource {
+	/**
+	 * This constructs an instance from a factory and a notifier.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public M_hTargetTypeItemProvider(AdapterFactory adapterFactory) {
+		super(adapterFactory);
+	}
+
+	/**
+	 * This returns the property descriptors for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) {
+		if (itemPropertyDescriptors == null) {
+			super.getPropertyDescriptors(object);
+
+			addRequiremenTracabilityHandlePropertyDescriptor(object);
+		}
+		return itemPropertyDescriptors;
+	}
+
+	/**
+	 * This adds a property descriptor for the Requiremen Tracability Handle feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addRequiremenTracabilityHandlePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_M_hTargetType_requiremenTracabilityHandle_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_M_hTargetType_requiremenTracabilityHandle_feature", "_UI_M_hTargetType_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getM_hTargetType_RequiremenTracabilityHandle(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This specifies how to implement {@link #getChildren} and is used to deduce an appropriate feature for an
+	 * {@link org.eclipse.emf.edit.command.AddCommand}, {@link org.eclipse.emf.edit.command.RemoveCommand} or
+	 * {@link org.eclipse.emf.edit.command.MoveCommand} in {@link #createCommand}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Collection<? extends EStructuralFeature> getChildrenFeatures(Object object) {
+		if (childrenFeatures == null) {
+			super.getChildrenFeatures(object);
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getM_hTargetType_Description());
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getM_hTargetType_Properties());
+		}
+		return childrenFeatures;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EStructuralFeature getChildFeature(Object object, Object child) {
+		// Check the type of the specified child object and return the proper feature to use for
+		// adding (see {@link AddCommand}) it as a child.
+
+		return super.getChildFeature(object, child);
+	}
+
+	/**
+	 * This returns the label text for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String getText(Object object) {
+		String label = ((M_hTargetType)object).getRequiremenTracabilityHandle();
+		return label == null || label.length() == 0 ?
+			getString("_UI_M_hTargetType_type") : //$NON-NLS-1$
+			getString("_UI_M_hTargetType_type") + " " + label; //$NON-NLS-1$ //$NON-NLS-2$
+	}
+	
+
+	/**
+	 * This handles model notifications by calling {@link #updateChildren} to update any cached
+	 * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void notifyChanged(Notification notification) {
+		updateChildren(notification);
+
+		switch (notification.getFeatureID(M_hTargetType.class)) {
+			case UMLRpyPackage.MHTARGET_TYPE__REQUIREMEN_TRACABILITY_HANDLE:
+				fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), false, true));
+				return;
+			case UMLRpyPackage.MHTARGET_TYPE__DESCRIPTION:
+			case UMLRpyPackage.MHTARGET_TYPE__PROPERTIES:
+				fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), true, false));
+				return;
+		}
+		super.notifyChanged(notification);
+	}
+
+	/**
+	 * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children
+	 * that can be created under this object.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) {
+		super.collectNewChildDescriptors(newChildDescriptors, object);
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getM_hTargetType_Description(),
+				 UMLRpyFactory.eINSTANCE.createIDescription()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getM_hTargetType_Properties(),
+				 UMLRpyFactory.eINSTANCE.createIPropertyContainer()));
+	}
+
+	/**
+	 * Return the resource locator for this item provider's resources.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public ResourceLocator getResourceLocator() {
+		return rpymetamodelEditPlugin.INSTANCE;
+	}
+
+}
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/M_pBaseTypeItemProvider.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/M_pBaseTypeItemProvider.java
new file mode 100755
index 0000000..c34f770
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/M_pBaseTypeItemProvider.java
@@ -0,0 +1,93 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.provider;
+
+
+import java.util.Collection;
+import java.util.List;
+
+import org.eclipse.emf.common.notify.AdapterFactory;
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.edit.provider.IItemPropertyDescriptor;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.M_pBaseType} object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class M_pBaseTypeItemProvider extends M_pModelObjectTypeItemProvider {
+	/**
+	 * This constructs an instance from a factory and a notifier.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public M_pBaseTypeItemProvider(AdapterFactory adapterFactory) {
+		super(adapterFactory);
+	}
+
+	/**
+	 * This returns the property descriptors for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) {
+		if (itemPropertyDescriptors == null) {
+			super.getPropertyDescriptors(object);
+
+		}
+		return itemPropertyDescriptors;
+	}
+
+	/**
+	 * This returns the label text for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String getText(Object object) {
+		return getString("_UI_M_pBaseType_type"); //$NON-NLS-1$
+	}
+	
+
+	/**
+	 * This handles model notifications by calling {@link #updateChildren} to update any cached
+	 * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void notifyChanged(Notification notification) {
+		updateChildren(notification);
+		super.notifyChanged(notification);
+	}
+
+	/**
+	 * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children
+	 * that can be created under this object.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) {
+		super.collectNewChildDescriptors(newChildDescriptors, object);
+	}
+
+}
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/M_pFormalMessageTypeItemProvider.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/M_pFormalMessageTypeItemProvider.java
new file mode 100755
index 0000000..a029f93
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/M_pFormalMessageTypeItemProvider.java
@@ -0,0 +1,119 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.provider;
+
+
+import java.util.Collection;
+import java.util.List;
+
+import org.eclipse.emf.common.notify.AdapterFactory;
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.common.util.ResourceLocator;
+
+import org.eclipse.emf.edit.provider.IEditingDomainItemProvider;
+import org.eclipse.emf.edit.provider.IItemLabelProvider;
+import org.eclipse.emf.edit.provider.IItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.IItemPropertySource;
+import org.eclipse.emf.edit.provider.IStructuredItemContentProvider;
+import org.eclipse.emf.edit.provider.ITreeItemContentProvider;
+import org.eclipse.emf.edit.provider.ItemProviderAdapter;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.M_pFormalMessageType} object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class M_pFormalMessageTypeItemProvider 
+	extends ItemProviderAdapter
+	implements
+		IEditingDomainItemProvider,
+		IStructuredItemContentProvider,
+		ITreeItemContentProvider,
+		IItemLabelProvider,
+		IItemPropertySource {
+	/**
+	 * This constructs an instance from a factory and a notifier.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public M_pFormalMessageTypeItemProvider(AdapterFactory adapterFactory) {
+		super(adapterFactory);
+	}
+
+	/**
+	 * This returns the property descriptors for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) {
+		if (itemPropertyDescriptors == null) {
+			super.getPropertyDescriptors(object);
+
+		}
+		return itemPropertyDescriptors;
+	}
+
+	/**
+	 * This returns the label text for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String getText(Object object) {
+		return getString("_UI_M_pFormalMessageType_type"); //$NON-NLS-1$
+	}
+	
+
+	/**
+	 * This handles model notifications by calling {@link #updateChildren} to update any cached
+	 * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void notifyChanged(Notification notification) {
+		updateChildren(notification);
+		super.notifyChanged(notification);
+	}
+
+	/**
+	 * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children
+	 * that can be created under this object.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) {
+		super.collectNewChildDescriptors(newChildDescriptors, object);
+	}
+
+	/**
+	 * Return the resource locator for this item provider's resources.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public ResourceLocator getResourceLocator() {
+		return rpymetamodelEditPlugin.INSTANCE;
+	}
+
+}
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/M_pModelObjectTypeItemProvider.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/M_pModelObjectTypeItemProvider.java
new file mode 100755
index 0000000..c5a0695
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/M_pModelObjectTypeItemProvider.java
@@ -0,0 +1,119 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.provider;
+
+
+import java.util.Collection;
+import java.util.List;
+
+import org.eclipse.emf.common.notify.AdapterFactory;
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.common.util.ResourceLocator;
+
+import org.eclipse.emf.edit.provider.IEditingDomainItemProvider;
+import org.eclipse.emf.edit.provider.IItemLabelProvider;
+import org.eclipse.emf.edit.provider.IItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.IItemPropertySource;
+import org.eclipse.emf.edit.provider.IStructuredItemContentProvider;
+import org.eclipse.emf.edit.provider.ITreeItemContentProvider;
+import org.eclipse.emf.edit.provider.ItemProviderAdapter;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.M_pModelObjectType} object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class M_pModelObjectTypeItemProvider 
+	extends ItemProviderAdapter
+	implements
+		IEditingDomainItemProvider,
+		IStructuredItemContentProvider,
+		ITreeItemContentProvider,
+		IItemLabelProvider,
+		IItemPropertySource {
+	/**
+	 * This constructs an instance from a factory and a notifier.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public M_pModelObjectTypeItemProvider(AdapterFactory adapterFactory) {
+		super(adapterFactory);
+	}
+
+	/**
+	 * This returns the property descriptors for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) {
+		if (itemPropertyDescriptors == null) {
+			super.getPropertyDescriptors(object);
+
+		}
+		return itemPropertyDescriptors;
+	}
+
+	/**
+	 * This returns the label text for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String getText(Object object) {
+		return getString("_UI_M_pModelObjectType_type"); //$NON-NLS-1$
+	}
+	
+
+	/**
+	 * This handles model notifications by calling {@link #updateChildren} to update any cached
+	 * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void notifyChanged(Notification notification) {
+		updateChildren(notification);
+		super.notifyChanged(notification);
+	}
+
+	/**
+	 * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children
+	 * that can be created under this object.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) {
+		super.collectNewChildDescriptors(newChildDescriptors, object);
+	}
+
+	/**
+	 * Return the resource locator for this item provider's resources.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public ResourceLocator getResourceLocator() {
+		return rpymetamodelEditPlugin.INSTANCE;
+	}
+
+}
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/M_pRootTypeItemProvider.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/M_pRootTypeItemProvider.java
new file mode 100755
index 0000000..b2a132c
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/M_pRootTypeItemProvider.java
@@ -0,0 +1,119 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.provider;
+
+
+import java.util.Collection;
+import java.util.List;
+
+import org.eclipse.emf.common.notify.AdapterFactory;
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.common.util.ResourceLocator;
+
+import org.eclipse.emf.edit.provider.IEditingDomainItemProvider;
+import org.eclipse.emf.edit.provider.IItemLabelProvider;
+import org.eclipse.emf.edit.provider.IItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.IItemPropertySource;
+import org.eclipse.emf.edit.provider.IStructuredItemContentProvider;
+import org.eclipse.emf.edit.provider.ITreeItemContentProvider;
+import org.eclipse.emf.edit.provider.ItemProviderAdapter;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.M_pRootType} object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class M_pRootTypeItemProvider 
+	extends ItemProviderAdapter
+	implements
+		IEditingDomainItemProvider,
+		IStructuredItemContentProvider,
+		ITreeItemContentProvider,
+		IItemLabelProvider,
+		IItemPropertySource {
+	/**
+	 * This constructs an instance from a factory and a notifier.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public M_pRootTypeItemProvider(AdapterFactory adapterFactory) {
+		super(adapterFactory);
+	}
+
+	/**
+	 * This returns the property descriptors for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) {
+		if (itemPropertyDescriptors == null) {
+			super.getPropertyDescriptors(object);
+
+		}
+		return itemPropertyDescriptors;
+	}
+
+	/**
+	 * This returns the label text for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String getText(Object object) {
+		return getString("_UI_M_pRootType_type"); //$NON-NLS-1$
+	}
+	
+
+	/**
+	 * This handles model notifications by calling {@link #updateChildren} to update any cached
+	 * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void notifyChanged(Notification notification) {
+		updateChildren(notification);
+		super.notifyChanged(notification);
+	}
+
+	/**
+	 * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children
+	 * that can be created under this object.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) {
+		super.collectNewChildDescriptors(newChildDescriptors, object);
+	}
+
+	/**
+	 * Return the resource locator for this item provider's resources.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public ResourceLocator getResourceLocator() {
+		return rpymetamodelEditPlugin.INSTANCE;
+	}
+
+}
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/M_subjectTypeItemProvider.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/M_subjectTypeItemProvider.java
new file mode 100755
index 0000000..22ead48
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/M_subjectTypeItemProvider.java
@@ -0,0 +1,181 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.provider;
+
+
+import java.util.Collection;
+import java.util.List;
+
+import org.eclipse.emf.common.notify.AdapterFactory;
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.common.util.ResourceLocator;
+
+import org.eclipse.emf.edit.provider.ComposeableAdapterFactory;
+import org.eclipse.emf.edit.provider.IEditingDomainItemProvider;
+import org.eclipse.emf.edit.provider.IItemLabelProvider;
+import org.eclipse.emf.edit.provider.IItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.IItemPropertySource;
+import org.eclipse.emf.edit.provider.IStructuredItemContentProvider;
+import org.eclipse.emf.edit.provider.ITreeItemContentProvider;
+import org.eclipse.emf.edit.provider.ItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.ItemProviderAdapter;
+import org.eclipse.emf.edit.provider.ViewerNotification;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.M_subjectType;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.M_subjectType} object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class M_subjectTypeItemProvider 
+	extends ItemProviderAdapter
+	implements
+		IEditingDomainItemProvider,
+		IStructuredItemContentProvider,
+		ITreeItemContentProvider,
+		IItemLabelProvider,
+		IItemPropertySource {
+	/**
+	 * This constructs an instance from a factory and a notifier.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public M_subjectTypeItemProvider(AdapterFactory adapterFactory) {
+		super(adapterFactory);
+	}
+
+	/**
+	 * This returns the property descriptors for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) {
+		if (itemPropertyDescriptors == null) {
+			super.getPropertyDescriptors(object);
+
+			addUmlDependencyIDPropertyDescriptor(object);
+			addObjectCreationPropertyDescriptor(object);
+		}
+		return itemPropertyDescriptors;
+	}
+
+	/**
+	 * This adds a property descriptor for the Uml Dependency ID feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addUmlDependencyIDPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_M_subjectType_umlDependencyID_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_M_subjectType_umlDependencyID_feature", "_UI_M_subjectType_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getM_subjectType_UmlDependencyID(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Object Creation feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addObjectCreationPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_M_subjectType_objectCreation_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_M_subjectType_objectCreation_feature", "_UI_M_subjectType_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getM_subjectType_ObjectCreation(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This returns the label text for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String getText(Object object) {
+		String label = ((M_subjectType)object).getUmlDependencyID();
+		return label == null || label.length() == 0 ?
+			getString("_UI_M_subjectType_type") : //$NON-NLS-1$
+			getString("_UI_M_subjectType_type") + " " + label; //$NON-NLS-1$ //$NON-NLS-2$
+	}
+	
+
+	/**
+	 * This handles model notifications by calling {@link #updateChildren} to update any cached
+	 * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void notifyChanged(Notification notification) {
+		updateChildren(notification);
+
+		switch (notification.getFeatureID(M_subjectType.class)) {
+			case UMLRpyPackage.MSUBJECT_TYPE__UML_DEPENDENCY_ID:
+			case UMLRpyPackage.MSUBJECT_TYPE__OBJECT_CREATION:
+				fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), false, true));
+				return;
+		}
+		super.notifyChanged(notification);
+	}
+
+	/**
+	 * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children
+	 * that can be created under this object.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) {
+		super.collectNewChildDescriptors(newChildDescriptors, object);
+	}
+
+	/**
+	 * Return the resource locator for this item provider's resources.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public ResourceLocator getResourceLocator() {
+		return rpymetamodelEditPlugin.INSTANCE;
+	}
+
+}
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/MatrixInstancesTypeItemProvider.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/MatrixInstancesTypeItemProvider.java
new file mode 100755
index 0000000..4036846
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/MatrixInstancesTypeItemProvider.java
@@ -0,0 +1,119 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.provider;
+
+
+import java.util.Collection;
+import java.util.List;
+
+import org.eclipse.emf.common.notify.AdapterFactory;
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.common.util.ResourceLocator;
+
+import org.eclipse.emf.edit.provider.IEditingDomainItemProvider;
+import org.eclipse.emf.edit.provider.IItemLabelProvider;
+import org.eclipse.emf.edit.provider.IItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.IItemPropertySource;
+import org.eclipse.emf.edit.provider.IStructuredItemContentProvider;
+import org.eclipse.emf.edit.provider.ITreeItemContentProvider;
+import org.eclipse.emf.edit.provider.ItemProviderAdapter;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.MatrixInstancesType} object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class MatrixInstancesTypeItemProvider 
+	extends ItemProviderAdapter
+	implements
+		IEditingDomainItemProvider,
+		IStructuredItemContentProvider,
+		ITreeItemContentProvider,
+		IItemLabelProvider,
+		IItemPropertySource {
+	/**
+	 * This constructs an instance from a factory and a notifier.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public MatrixInstancesTypeItemProvider(AdapterFactory adapterFactory) {
+		super(adapterFactory);
+	}
+
+	/**
+	 * This returns the property descriptors for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) {
+		if (itemPropertyDescriptors == null) {
+			super.getPropertyDescriptors(object);
+
+		}
+		return itemPropertyDescriptors;
+	}
+
+	/**
+	 * This returns the label text for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String getText(Object object) {
+		return getString("_UI_MatrixInstancesType_type"); //$NON-NLS-1$
+	}
+	
+
+	/**
+	 * This handles model notifications by calling {@link #updateChildren} to update any cached
+	 * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void notifyChanged(Notification notification) {
+		updateChildren(notification);
+		super.notifyChanged(notification);
+	}
+
+	/**
+	 * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children
+	 * that can be created under this object.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) {
+		super.collectNewChildDescriptors(newChildDescriptors, object);
+	}
+
+	/**
+	 * Return the resource locator for this item provider's resources.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public ResourceLocator getResourceLocator() {
+		return rpymetamodelEditPlugin.INSTANCE;
+	}
+
+}
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/NestedStateChartTypeItemProvider.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/NestedStateChartTypeItemProvider.java
new file mode 100755
index 0000000..169193f
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/NestedStateChartTypeItemProvider.java
@@ -0,0 +1,294 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.provider;
+
+
+import java.util.Collection;
+import java.util.List;
+
+import org.eclipse.emf.common.notify.AdapterFactory;
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.ecore.EStructuralFeature;
+
+import org.eclipse.emf.edit.provider.ComposeableAdapterFactory;
+import org.eclipse.emf.edit.provider.IItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.ItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.ViewerNotification;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.NestedStateChartType;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyFactory;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.NestedStateChartType} object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class NestedStateChartTypeItemProvider extends ItsStateChartTypeItemProvider {
+	/**
+	 * This constructs an instance from a factory and a notifier.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public NestedStateChartTypeItemProvider(AdapterFactory adapterFactory) {
+		super(adapterFactory);
+	}
+
+	/**
+	 * This returns the property descriptors for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) {
+		if (itemPropertyDescriptors == null) {
+			super.getPropertyDescriptors(object);
+
+			addDefNumberPropertyDescriptor(object);
+			addLastModifiedTimePropertyDescriptor(object);
+			addVersionPropertyDescriptor(object);
+		}
+		return itemPropertyDescriptors;
+	}
+
+	/**
+	 * This adds a property descriptor for the Def Number feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addDefNumberPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_NestedStateChartType_defNumber_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_NestedStateChartType_defNumber_feature", "_UI_NestedStateChartType_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getNestedStateChartType_DefNumber(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Last Modified Time feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addLastModifiedTimePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_NestedStateChartType_lastModifiedTime_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_NestedStateChartType_lastModifiedTime_feature", "_UI_NestedStateChartType_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getNestedStateChartType_LastModifiedTime(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Version feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addVersionPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_NestedStateChartType_version_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_NestedStateChartType_version_feature", "_UI_NestedStateChartType_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getNestedStateChartType_Version(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This specifies how to implement {@link #getChildren} and is used to deduce an appropriate feature for an
+	 * {@link org.eclipse.emf.edit.command.AddCommand}, {@link org.eclipse.emf.edit.command.RemoveCommand} or
+	 * {@link org.eclipse.emf.edit.command.MoveCommand} in {@link #createCommand}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Collection<? extends EStructuralFeature> getChildrenFeatures(Object object) {
+		if (childrenFeatures == null) {
+			super.getChildrenFeatures(object);
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getNestedStateChartType_GraphicChart());
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getNestedStateChartType_Transitions());
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getNestedStateChartType_Connectors());
+		}
+		return childrenFeatures;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EStructuralFeature getChildFeature(Object object, Object child) {
+		// Check the type of the specified child object and return the proper feature to use for
+		// adding (see {@link AddCommand}) it as a child.
+
+		return super.getChildFeature(object, child);
+	}
+
+	/**
+	 * This returns the label text for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String getText(Object object) {
+		String label = ((NestedStateChartType)object).getDefNumber();
+		return label == null || label.length() == 0 ?
+			getString("_UI_NestedStateChartType_type") : //$NON-NLS-1$
+			getString("_UI_NestedStateChartType_type") + " " + label; //$NON-NLS-1$ //$NON-NLS-2$
+	}
+	
+
+	/**
+	 * This handles model notifications by calling {@link #updateChildren} to update any cached
+	 * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void notifyChanged(Notification notification) {
+		updateChildren(notification);
+
+		switch (notification.getFeatureID(NestedStateChartType.class)) {
+			case UMLRpyPackage.NESTED_STATE_CHART_TYPE__DEF_NUMBER:
+			case UMLRpyPackage.NESTED_STATE_CHART_TYPE__LAST_MODIFIED_TIME:
+			case UMLRpyPackage.NESTED_STATE_CHART_TYPE__VERSION:
+				fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), false, true));
+				return;
+			case UMLRpyPackage.NESTED_STATE_CHART_TYPE__GRAPHIC_CHART:
+			case UMLRpyPackage.NESTED_STATE_CHART_TYPE__TRANSITIONS:
+			case UMLRpyPackage.NESTED_STATE_CHART_TYPE__CONNECTORS:
+				fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), true, false));
+				return;
+		}
+		super.notifyChanged(notification);
+	}
+
+	/**
+	 * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children
+	 * that can be created under this object.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) {
+		super.collectNewChildDescriptors(newChildDescriptors, object);
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getNestedStateChartType_GraphicChart(),
+				 UMLRpyFactory.eINSTANCE.createCGIStateChart()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getNestedStateChartType_Transitions(),
+				 UMLRpyFactory.eINSTANCE.createIDefaultDrvdTrans()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getNestedStateChartType_Transitions(),
+				 UMLRpyFactory.eINSTANCE.createITransition()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getNestedStateChartType_Connectors(),
+				 UMLRpyFactory.eINSTANCE.createIState()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getNestedStateChartType_Connectors(),
+				 UMLRpyFactory.eINSTANCE.createIAcceptEventAction()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getNestedStateChartType_Connectors(),
+				 UMLRpyFactory.eINSTANCE.createIAcceptTimeEvent()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getNestedStateChartType_Connectors(),
+				 UMLRpyFactory.eINSTANCE.createIBranch()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getNestedStateChartType_Connectors(),
+				 UMLRpyFactory.eINSTANCE.createICallOperation()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getNestedStateChartType_Connectors(),
+				 UMLRpyFactory.eINSTANCE.createIConnector()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getNestedStateChartType_Connectors(),
+				 UMLRpyFactory.eINSTANCE.createIFork()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getNestedStateChartType_Connectors(),
+				 UMLRpyFactory.eINSTANCE.createIHistoryConnector()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getNestedStateChartType_Connectors(),
+				 UMLRpyFactory.eINSTANCE.createIObjectNode()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getNestedStateChartType_Connectors(),
+				 UMLRpyFactory.eINSTANCE.createIPin()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getNestedStateChartType_Connectors(),
+				 UMLRpyFactory.eINSTANCE.createIReferenceActivity()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getNestedStateChartType_Connectors(),
+				 UMLRpyFactory.eINSTANCE.createITimeEvent()));
+	}
+
+}
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/ObjectLinksTypeItemProvider.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/ObjectLinksTypeItemProvider.java
new file mode 100755
index 0000000..cb18033
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/ObjectLinksTypeItemProvider.java
@@ -0,0 +1,119 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.provider;
+
+
+import java.util.Collection;
+import java.util.List;
+
+import org.eclipse.emf.common.notify.AdapterFactory;
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.common.util.ResourceLocator;
+
+import org.eclipse.emf.edit.provider.IEditingDomainItemProvider;
+import org.eclipse.emf.edit.provider.IItemLabelProvider;
+import org.eclipse.emf.edit.provider.IItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.IItemPropertySource;
+import org.eclipse.emf.edit.provider.IStructuredItemContentProvider;
+import org.eclipse.emf.edit.provider.ITreeItemContentProvider;
+import org.eclipse.emf.edit.provider.ItemProviderAdapter;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ObjectLinksType} object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class ObjectLinksTypeItemProvider 
+	extends ItemProviderAdapter
+	implements
+		IEditingDomainItemProvider,
+		IStructuredItemContentProvider,
+		ITreeItemContentProvider,
+		IItemLabelProvider,
+		IItemPropertySource {
+	/**
+	 * This constructs an instance from a factory and a notifier.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public ObjectLinksTypeItemProvider(AdapterFactory adapterFactory) {
+		super(adapterFactory);
+	}
+
+	/**
+	 * This returns the property descriptors for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) {
+		if (itemPropertyDescriptors == null) {
+			super.getPropertyDescriptors(object);
+
+		}
+		return itemPropertyDescriptors;
+	}
+
+	/**
+	 * This returns the label text for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String getText(Object object) {
+		return getString("_UI_ObjectLinksType_type"); //$NON-NLS-1$
+	}
+	
+
+	/**
+	 * This handles model notifications by calling {@link #updateChildren} to update any cached
+	 * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void notifyChanged(Notification notification) {
+		updateChildren(notification);
+		super.notifyChanged(notification);
+	}
+
+	/**
+	 * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children
+	 * that can be created under this object.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) {
+		super.collectNewChildDescriptors(newChildDescriptors, object);
+	}
+
+	/**
+	 * Return the resource locator for this item provider's resources.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public ResourceLocator getResourceLocator() {
+		return rpymetamodelEditPlugin.INSTANCE;
+	}
+
+}
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/OperationsTypeItemProvider.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/OperationsTypeItemProvider.java
new file mode 100755
index 0000000..e9860ae
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/OperationsTypeItemProvider.java
@@ -0,0 +1,157 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.provider;
+
+
+import java.util.Collection;
+import java.util.List;
+
+import org.eclipse.emf.common.notify.AdapterFactory;
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.common.util.ResourceLocator;
+
+import org.eclipse.emf.edit.provider.ComposeableAdapterFactory;
+import org.eclipse.emf.edit.provider.IEditingDomainItemProvider;
+import org.eclipse.emf.edit.provider.IItemLabelProvider;
+import org.eclipse.emf.edit.provider.IItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.IItemPropertySource;
+import org.eclipse.emf.edit.provider.IStructuredItemContentProvider;
+import org.eclipse.emf.edit.provider.ITreeItemContentProvider;
+import org.eclipse.emf.edit.provider.ItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.ItemProviderAdapter;
+import org.eclipse.emf.edit.provider.ViewerNotification;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.OperationsType;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.OperationsType} object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class OperationsTypeItemProvider 
+	extends ItemProviderAdapter
+	implements
+		IEditingDomainItemProvider,
+		IStructuredItemContentProvider,
+		ITreeItemContentProvider,
+		IItemLabelProvider,
+		IItemPropertySource {
+	/**
+	 * This constructs an instance from a factory and a notifier.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public OperationsTypeItemProvider(AdapterFactory adapterFactory) {
+		super(adapterFactory);
+	}
+
+	/**
+	 * This returns the property descriptors for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) {
+		if (itemPropertyDescriptors == null) {
+			super.getPropertyDescriptors(object);
+
+			addVirtualPropertyDescriptor(object);
+		}
+		return itemPropertyDescriptors;
+	}
+
+	/**
+	 * This adds a property descriptor for the Virtual feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addVirtualPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_OperationsType_virtual_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_OperationsType_virtual_feature", "_UI_OperationsType_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getOperationsType_Virtual(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This returns the label text for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String getText(Object object) {
+		String label = ((OperationsType)object).getVirtual();
+		return label == null || label.length() == 0 ?
+			getString("_UI_OperationsType_type") : //$NON-NLS-1$
+			getString("_UI_OperationsType_type") + " " + label; //$NON-NLS-1$ //$NON-NLS-2$
+	}
+	
+
+	/**
+	 * This handles model notifications by calling {@link #updateChildren} to update any cached
+	 * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void notifyChanged(Notification notification) {
+		updateChildren(notification);
+
+		switch (notification.getFeatureID(OperationsType.class)) {
+			case UMLRpyPackage.OPERATIONS_TYPE__VIRTUAL:
+				fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), false, true));
+				return;
+		}
+		super.notifyChanged(notification);
+	}
+
+	/**
+	 * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children
+	 * that can be created under this object.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) {
+		super.collectNewChildDescriptors(newChildDescriptors, object);
+	}
+
+	/**
+	 * Return the resource locator for this item provider's resources.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public ResourceLocator getResourceLocator() {
+		return rpymetamodelEditPlugin.INSTANCE;
+	}
+
+}
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/OwnerHandleTypeItemProvider.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/OwnerHandleTypeItemProvider.java
new file mode 100755
index 0000000..f7bbc89
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/OwnerHandleTypeItemProvider.java
@@ -0,0 +1,155 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.provider;
+
+
+import java.util.Collection;
+import java.util.List;
+
+import org.eclipse.emf.common.notify.AdapterFactory;
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.edit.provider.ComposeableAdapterFactory;
+import org.eclipse.emf.edit.provider.IItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.ItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.ViewerNotification;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.OwnerHandleType;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.OwnerHandleType} object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class OwnerHandleTypeItemProvider extends DefaultSubsystemTypeItemProvider {
+	/**
+	 * This constructs an instance from a factory and a notifier.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public OwnerHandleTypeItemProvider(AdapterFactory adapterFactory) {
+		super(adapterFactory);
+	}
+
+	/**
+	 * This returns the property descriptors for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) {
+		if (itemPropertyDescriptors == null) {
+			super.getPropertyDescriptors(object);
+
+			addWeakCGTimePropertyDescriptor(object);
+			addStrongCGTimePropertyDescriptor(object);
+		}
+		return itemPropertyDescriptors;
+	}
+
+	/**
+	 * This adds a property descriptor for the Weak CG Time feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addWeakCGTimePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_OwnerHandleType_weakCGTime_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_OwnerHandleType_weakCGTime_feature", "_UI_OwnerHandleType_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getOwnerHandleType_WeakCGTime(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Strong CG Time feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addStrongCGTimePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_OwnerHandleType_strongCGTime_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_OwnerHandleType_strongCGTime_feature", "_UI_OwnerHandleType_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getOwnerHandleType_StrongCGTime(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This returns the label text for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String getText(Object object) {
+		String label = ((OwnerHandleType)object).getDisplayName();
+		return label == null || label.length() == 0 ?
+			getString("_UI_OwnerHandleType_type") : //$NON-NLS-1$
+			getString("_UI_OwnerHandleType_type") + " " + label; //$NON-NLS-1$ //$NON-NLS-2$
+	}
+	
+
+	/**
+	 * This handles model notifications by calling {@link #updateChildren} to update any cached
+	 * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void notifyChanged(Notification notification) {
+		updateChildren(notification);
+
+		switch (notification.getFeatureID(OwnerHandleType.class)) {
+			case UMLRpyPackage.OWNER_HANDLE_TYPE__WEAK_CG_TIME:
+			case UMLRpyPackage.OWNER_HANDLE_TYPE__STRONG_CG_TIME:
+				fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), false, true));
+				return;
+		}
+		super.notifyChanged(notification);
+	}
+
+	/**
+	 * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children
+	 * that can be created under this object.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) {
+		super.collectNewChildDescriptors(newChildDescriptors, object);
+	}
+
+}
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/P_MessageHandlerTypeItemProvider.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/P_MessageHandlerTypeItemProvider.java
new file mode 100755
index 0000000..6a87c66
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/P_MessageHandlerTypeItemProvider.java
@@ -0,0 +1,119 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.provider;
+
+
+import java.util.Collection;
+import java.util.List;
+
+import org.eclipse.emf.common.notify.AdapterFactory;
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.common.util.ResourceLocator;
+
+import org.eclipse.emf.edit.provider.IEditingDomainItemProvider;
+import org.eclipse.emf.edit.provider.IItemLabelProvider;
+import org.eclipse.emf.edit.provider.IItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.IItemPropertySource;
+import org.eclipse.emf.edit.provider.IStructuredItemContentProvider;
+import org.eclipse.emf.edit.provider.ITreeItemContentProvider;
+import org.eclipse.emf.edit.provider.ItemProviderAdapter;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.P_MessageHandlerType} object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class P_MessageHandlerTypeItemProvider 
+	extends ItemProviderAdapter
+	implements
+		IEditingDomainItemProvider,
+		IStructuredItemContentProvider,
+		ITreeItemContentProvider,
+		IItemLabelProvider,
+		IItemPropertySource {
+	/**
+	 * This constructs an instance from a factory and a notifier.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public P_MessageHandlerTypeItemProvider(AdapterFactory adapterFactory) {
+		super(adapterFactory);
+	}
+
+	/**
+	 * This returns the property descriptors for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) {
+		if (itemPropertyDescriptors == null) {
+			super.getPropertyDescriptors(object);
+
+		}
+		return itemPropertyDescriptors;
+	}
+
+	/**
+	 * This returns the label text for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String getText(Object object) {
+		return getString("_UI_P_MessageHandlerType_type"); //$NON-NLS-1$
+	}
+	
+
+	/**
+	 * This handles model notifications by calling {@link #updateChildren} to update any cached
+	 * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void notifyChanged(Notification notification) {
+		updateChildren(notification);
+		super.notifyChanged(notification);
+	}
+
+	/**
+	 * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children
+	 * that can be created under this object.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) {
+		super.collectNewChildDescriptors(newChildDescriptors, object);
+	}
+
+	/**
+	 * Return the resource locator for this item provider's resources.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public ResourceLocator getResourceLocator() {
+		return rpymetamodelEditPlugin.INSTANCE;
+	}
+
+}
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/ParentTypeItemProvider.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/ParentTypeItemProvider.java
new file mode 100755
index 0000000..115fefd
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/ParentTypeItemProvider.java
@@ -0,0 +1,119 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.provider;
+
+
+import java.util.Collection;
+import java.util.List;
+
+import org.eclipse.emf.common.notify.AdapterFactory;
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.common.util.ResourceLocator;
+
+import org.eclipse.emf.edit.provider.IEditingDomainItemProvider;
+import org.eclipse.emf.edit.provider.IItemLabelProvider;
+import org.eclipse.emf.edit.provider.IItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.IItemPropertySource;
+import org.eclipse.emf.edit.provider.IStructuredItemContentProvider;
+import org.eclipse.emf.edit.provider.ITreeItemContentProvider;
+import org.eclipse.emf.edit.provider.ItemProviderAdapter;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ParentType} object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class ParentTypeItemProvider 
+	extends ItemProviderAdapter
+	implements
+		IEditingDomainItemProvider,
+		IStructuredItemContentProvider,
+		ITreeItemContentProvider,
+		IItemLabelProvider,
+		IItemPropertySource {
+	/**
+	 * This constructs an instance from a factory and a notifier.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public ParentTypeItemProvider(AdapterFactory adapterFactory) {
+		super(adapterFactory);
+	}
+
+	/**
+	 * This returns the property descriptors for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) {
+		if (itemPropertyDescriptors == null) {
+			super.getPropertyDescriptors(object);
+
+		}
+		return itemPropertyDescriptors;
+	}
+
+	/**
+	 * This returns the label text for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String getText(Object object) {
+		return getString("_UI_ParentType_type"); //$NON-NLS-1$
+	}
+	
+
+	/**
+	 * This handles model notifications by calling {@link #updateChildren} to update any cached
+	 * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void notifyChanged(Notification notification) {
+		updateChildren(notification);
+		super.notifyChanged(notification);
+	}
+
+	/**
+	 * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children
+	 * that can be created under this object.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) {
+		super.collectNewChildDescriptors(newChildDescriptors, object);
+	}
+
+	/**
+	 * Return the resource locator for this item provider's resources.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public ResourceLocator getResourceLocator() {
+		return rpymetamodelEditPlugin.INSTANCE;
+	}
+
+}
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/PropertiesTypeItemProvider.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/PropertiesTypeItemProvider.java
new file mode 100755
index 0000000..0b1223d
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/PropertiesTypeItemProvider.java
@@ -0,0 +1,119 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.provider;
+
+
+import java.util.Collection;
+import java.util.List;
+
+import org.eclipse.emf.common.notify.AdapterFactory;
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.common.util.ResourceLocator;
+
+import org.eclipse.emf.edit.provider.IEditingDomainItemProvider;
+import org.eclipse.emf.edit.provider.IItemLabelProvider;
+import org.eclipse.emf.edit.provider.IItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.IItemPropertySource;
+import org.eclipse.emf.edit.provider.IStructuredItemContentProvider;
+import org.eclipse.emf.edit.provider.ITreeItemContentProvider;
+import org.eclipse.emf.edit.provider.ItemProviderAdapter;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.PropertiesType} object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class PropertiesTypeItemProvider 
+	extends ItemProviderAdapter
+	implements
+		IEditingDomainItemProvider,
+		IStructuredItemContentProvider,
+		ITreeItemContentProvider,
+		IItemLabelProvider,
+		IItemPropertySource {
+	/**
+	 * This constructs an instance from a factory and a notifier.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public PropertiesTypeItemProvider(AdapterFactory adapterFactory) {
+		super(adapterFactory);
+	}
+
+	/**
+	 * This returns the property descriptors for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) {
+		if (itemPropertyDescriptors == null) {
+			super.getPropertyDescriptors(object);
+
+		}
+		return itemPropertyDescriptors;
+	}
+
+	/**
+	 * This returns the label text for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String getText(Object object) {
+		return getString("_UI_PropertiesType_type"); //$NON-NLS-1$
+	}
+	
+
+	/**
+	 * This handles model notifications by calling {@link #updateChildren} to update any cached
+	 * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void notifyChanged(Notification notification) {
+		updateChildren(notification);
+		super.notifyChanged(notification);
+	}
+
+	/**
+	 * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children
+	 * that can be created under this object.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) {
+		super.collectNewChildDescriptors(newChildDescriptors, object);
+	}
+
+	/**
+	 * Return the resource locator for this item provider's resources.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public ResourceLocator getResourceLocator() {
+		return rpymetamodelEditPlugin.INSTANCE;
+	}
+
+}
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/TableDataDefinitionItemProvider.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/TableDataDefinitionItemProvider.java
new file mode 100755
index 0000000..8477f6d
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/TableDataDefinitionItemProvider.java
@@ -0,0 +1,262 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.provider;
+
+
+import java.util.Collection;
+import java.util.List;
+
+import org.eclipse.emf.common.notify.AdapterFactory;
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.common.util.ResourceLocator;
+
+import org.eclipse.emf.edit.provider.ComposeableAdapterFactory;
+import org.eclipse.emf.edit.provider.IEditingDomainItemProvider;
+import org.eclipse.emf.edit.provider.IItemLabelProvider;
+import org.eclipse.emf.edit.provider.IItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.IItemPropertySource;
+import org.eclipse.emf.edit.provider.IStructuredItemContentProvider;
+import org.eclipse.emf.edit.provider.ITreeItemContentProvider;
+import org.eclipse.emf.edit.provider.ItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.ItemProviderAdapter;
+import org.eclipse.emf.edit.provider.ViewerNotification;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.TableDataDefinition;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.TableDataDefinition} object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class TableDataDefinitionItemProvider 
+	extends ItemProviderAdapter
+	implements
+		IEditingDomainItemProvider,
+		IStructuredItemContentProvider,
+		ITreeItemContentProvider,
+		IItemLabelProvider,
+		IItemPropertySource {
+	/**
+	 * This constructs an instance from a factory and a notifier.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public TableDataDefinitionItemProvider(AdapterFactory adapterFactory) {
+		super(adapterFactory);
+	}
+
+	/**
+	 * This returns the property descriptors for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) {
+		if (itemPropertyDescriptors == null) {
+			super.getPropertyDescriptors(object);
+
+			addMyTablePropertyDescriptor(object);
+			addNamePropertyDescriptor(object);
+			addDataTypePropertyDescriptor(object);
+			addColumnNamePropertyDescriptor(object);
+			addModelElementPropertyDescriptor(object);
+		}
+		return itemPropertyDescriptors;
+	}
+
+	/**
+	 * This adds a property descriptor for the My Table feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addMyTablePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_TableDataDefinition_myTable_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_TableDataDefinition_myTable_feature", "_UI_TableDataDefinition_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getTableDataDefinition_MyTable(),
+				 true,
+				 false,
+				 true,
+				 null,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Name feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addNamePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_TableDataDefinition_name_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_TableDataDefinition_name_feature", "_UI_TableDataDefinition_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getTableDataDefinition_Name(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Data Type feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addDataTypePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_TableDataDefinition_DataType_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_TableDataDefinition_DataType_feature", "_UI_TableDataDefinition_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getTableDataDefinition_DataType(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Column Name feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addColumnNamePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_TableDataDefinition_columnName_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_TableDataDefinition_columnName_feature", "_UI_TableDataDefinition_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getTableDataDefinition_ColumnName(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Model Element feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addModelElementPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_TableDataDefinition_modelElement_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_TableDataDefinition_modelElement_feature", "_UI_TableDataDefinition_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getTableDataDefinition_ModelElement(),
+				 true,
+				 false,
+				 true,
+				 null,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This returns TableDataDefinition.gif.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object getImage(Object object) {
+		return overlayImage(object, getResourceLocator().getImage("full/obj16/TableDataDefinition")); //$NON-NLS-1$
+	}
+
+	/**
+	 * This returns the label text for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String getText(Object object) {
+		String label = ((TableDataDefinition)object).getName();
+		return label == null || label.length() == 0 ?
+			getString("_UI_TableDataDefinition_type") : //$NON-NLS-1$
+			getString("_UI_TableDataDefinition_type") + " " + label; //$NON-NLS-1$ //$NON-NLS-2$
+	}
+	
+
+	/**
+	 * This handles model notifications by calling {@link #updateChildren} to update any cached
+	 * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void notifyChanged(Notification notification) {
+		updateChildren(notification);
+
+		switch (notification.getFeatureID(TableDataDefinition.class)) {
+			case UMLRpyPackage.TABLE_DATA_DEFINITION__NAME:
+			case UMLRpyPackage.TABLE_DATA_DEFINITION__DATA_TYPE:
+			case UMLRpyPackage.TABLE_DATA_DEFINITION__COLUMN_NAME:
+				fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), false, true));
+				return;
+		}
+		super.notifyChanged(notification);
+	}
+
+	/**
+	 * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children
+	 * that can be created under this object.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) {
+		super.collectNewChildDescriptors(newChildDescriptors, object);
+	}
+
+	/**
+	 * Return the resource locator for this item provider's resources.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public ResourceLocator getResourceLocator() {
+		return rpymetamodelEditPlugin.INSTANCE;
+	}
+
+}
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/TableInstancesTypeItemProvider.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/TableInstancesTypeItemProvider.java
new file mode 100755
index 0000000..b1d0b3d
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/TableInstancesTypeItemProvider.java
@@ -0,0 +1,119 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.provider;
+
+
+import java.util.Collection;
+import java.util.List;
+
+import org.eclipse.emf.common.notify.AdapterFactory;
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.common.util.ResourceLocator;
+
+import org.eclipse.emf.edit.provider.IEditingDomainItemProvider;
+import org.eclipse.emf.edit.provider.IItemLabelProvider;
+import org.eclipse.emf.edit.provider.IItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.IItemPropertySource;
+import org.eclipse.emf.edit.provider.IStructuredItemContentProvider;
+import org.eclipse.emf.edit.provider.ITreeItemContentProvider;
+import org.eclipse.emf.edit.provider.ItemProviderAdapter;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.TableInstancesType} object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class TableInstancesTypeItemProvider 
+	extends ItemProviderAdapter
+	implements
+		IEditingDomainItemProvider,
+		IStructuredItemContentProvider,
+		ITreeItemContentProvider,
+		IItemLabelProvider,
+		IItemPropertySource {
+	/**
+	 * This constructs an instance from a factory and a notifier.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public TableInstancesTypeItemProvider(AdapterFactory adapterFactory) {
+		super(adapterFactory);
+	}
+
+	/**
+	 * This returns the property descriptors for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) {
+		if (itemPropertyDescriptors == null) {
+			super.getPropertyDescriptors(object);
+
+		}
+		return itemPropertyDescriptors;
+	}
+
+	/**
+	 * This returns the label text for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String getText(Object object) {
+		return getString("_UI_TableInstancesType_type"); //$NON-NLS-1$
+	}
+	
+
+	/**
+	 * This handles model notifications by calling {@link #updateChildren} to update any cached
+	 * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void notifyChanged(Notification notification) {
+		updateChildren(notification);
+		super.notifyChanged(notification);
+	}
+
+	/**
+	 * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children
+	 * that can be created under this object.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) {
+		super.collectNewChildDescriptors(newChildDescriptors, object);
+	}
+
+	/**
+	 * Return the resource locator for this item provider's resources.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public ResourceLocator getResourceLocator() {
+		return rpymetamodelEditPlugin.INSTANCE;
+	}
+
+}
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/TargetTypeItemProvider.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/TargetTypeItemProvider.java
new file mode 100755
index 0000000..e4a1b29
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/TargetTypeItemProvider.java
@@ -0,0 +1,119 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.provider;
+
+
+import java.util.Collection;
+import java.util.List;
+
+import org.eclipse.emf.common.notify.AdapterFactory;
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.common.util.ResourceLocator;
+
+import org.eclipse.emf.edit.provider.IEditingDomainItemProvider;
+import org.eclipse.emf.edit.provider.IItemLabelProvider;
+import org.eclipse.emf.edit.provider.IItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.IItemPropertySource;
+import org.eclipse.emf.edit.provider.IStructuredItemContentProvider;
+import org.eclipse.emf.edit.provider.ITreeItemContentProvider;
+import org.eclipse.emf.edit.provider.ItemProviderAdapter;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.TargetType} object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class TargetTypeItemProvider 
+	extends ItemProviderAdapter
+	implements
+		IEditingDomainItemProvider,
+		IStructuredItemContentProvider,
+		ITreeItemContentProvider,
+		IItemLabelProvider,
+		IItemPropertySource {
+	/**
+	 * This constructs an instance from a factory and a notifier.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public TargetTypeItemProvider(AdapterFactory adapterFactory) {
+		super(adapterFactory);
+	}
+
+	/**
+	 * This returns the property descriptors for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) {
+		if (itemPropertyDescriptors == null) {
+			super.getPropertyDescriptors(object);
+
+		}
+		return itemPropertyDescriptors;
+	}
+
+	/**
+	 * This returns the label text for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String getText(Object object) {
+		return getString("_UI_TargetType_type"); //$NON-NLS-1$
+	}
+	
+
+	/**
+	 * This handles model notifications by calling {@link #updateChildren} to update any cached
+	 * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void notifyChanged(Notification notification) {
+		updateChildren(notification);
+		super.notifyChanged(notification);
+	}
+
+	/**
+	 * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children
+	 * that can be created under this object.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) {
+		super.collectNewChildDescriptors(newChildDescriptors, object);
+	}
+
+	/**
+	 * Return the resource locator for this item provider's resources.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public ResourceLocator getResourceLocator() {
+		return rpymetamodelEditPlugin.INSTANCE;
+	}
+
+}
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/TheMainDiagramTypeItemProvider.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/TheMainDiagramTypeItemProvider.java
new file mode 100755
index 0000000..cdd7708
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/TheMainDiagramTypeItemProvider.java
@@ -0,0 +1,410 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.provider;
+
+
+import java.util.Collection;
+import java.util.List;
+
+import org.eclipse.emf.common.notify.AdapterFactory;
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.ecore.EStructuralFeature;
+
+import org.eclipse.emf.edit.provider.ComposeableAdapterFactory;
+import org.eclipse.emf.edit.provider.IItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.ItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.ViewerNotification;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.TheMainDiagramType;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyFactory;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.TheMainDiagramType} object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class TheMainDiagramTypeItemProvider extends M_pModelObjectTypeItemProvider {
+	/**
+	 * This constructs an instance from a factory and a notifier.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public TheMainDiagramTypeItemProvider(AdapterFactory adapterFactory) {
+		super(adapterFactory);
+	}
+
+	/**
+	 * This returns the property descriptors for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) {
+		if (itemPropertyDescriptors == null) {
+			super.getPropertyDescriptors(object);
+
+			addIdPropertyDescriptor(object);
+			addLastModifiedTimePropertyDescriptor(object);
+			addRequiremenTracabilityHandlePropertyDescriptor(object);
+			addDefaultSubsystemPropertyDescriptor(object);
+			addUmlDependencyIDPropertyDescriptor(object);
+			addLastIDPropertyDescriptor(object);
+			addMyStatePropertyDescriptor(object);
+			addOwnerHandlePropertyDescriptor(object);
+			addObjectCreationPropertyDescriptor(object);
+			addNamePropertyDescriptor(object);
+			addCmheaderPropertyDescriptor(object);
+		}
+		return itemPropertyDescriptors;
+	}
+
+	/**
+	 * This adds a property descriptor for the Id feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addIdPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_TheMainDiagramType_id_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_TheMainDiagramType_id_feature", "_UI_TheMainDiagramType_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getTheMainDiagramType_Id(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Last Modified Time feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addLastModifiedTimePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_TheMainDiagramType_lastModifiedTime_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_TheMainDiagramType_lastModifiedTime_feature", "_UI_TheMainDiagramType_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getTheMainDiagramType_LastModifiedTime(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Requiremen Tracability Handle feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addRequiremenTracabilityHandlePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_TheMainDiagramType_requiremenTracabilityHandle_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_TheMainDiagramType_requiremenTracabilityHandle_feature", "_UI_TheMainDiagramType_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getTheMainDiagramType_RequiremenTracabilityHandle(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Default Subsystem feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addDefaultSubsystemPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_TheMainDiagramType_defaultSubsystem_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_TheMainDiagramType_defaultSubsystem_feature", "_UI_TheMainDiagramType_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getTheMainDiagramType_DefaultSubsystem(),
+				 true,
+				 false,
+				 true,
+				 null,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Uml Dependency ID feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addUmlDependencyIDPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_TheMainDiagramType_umlDependencyID_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_TheMainDiagramType_umlDependencyID_feature", "_UI_TheMainDiagramType_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getTheMainDiagramType_UmlDependencyID(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Last ID feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addLastIDPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_TheMainDiagramType_lastID_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_TheMainDiagramType_lastID_feature", "_UI_TheMainDiagramType_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getTheMainDiagramType_LastID(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the My State feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addMyStatePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_TheMainDiagramType_myState_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_TheMainDiagramType_myState_feature", "_UI_TheMainDiagramType_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getTheMainDiagramType_MyState(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Owner Handle feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addOwnerHandlePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_TheMainDiagramType_ownerHandle_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_TheMainDiagramType_ownerHandle_feature", "_UI_TheMainDiagramType_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getTheMainDiagramType_OwnerHandle(),
+				 true,
+				 false,
+				 true,
+				 null,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Object Creation feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addObjectCreationPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_TheMainDiagramType_objectCreation_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_TheMainDiagramType_objectCreation_feature", "_UI_TheMainDiagramType_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getTheMainDiagramType_ObjectCreation(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Name feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addNamePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_TheMainDiagramType_name_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_TheMainDiagramType_name_feature", "_UI_TheMainDiagramType_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getTheMainDiagramType_Name(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Cmheader feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addCmheaderPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_TheMainDiagramType_cmheader_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_TheMainDiagramType_cmheader_feature", "_UI_TheMainDiagramType_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getTheMainDiagramType_Cmheader(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This specifies how to implement {@link #getChildren} and is used to deduce an appropriate feature for an
+	 * {@link org.eclipse.emf.edit.command.AddCommand}, {@link org.eclipse.emf.edit.command.RemoveCommand} or
+	 * {@link org.eclipse.emf.edit.command.MoveCommand} in {@link #createCommand}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Collection<? extends EStructuralFeature> getChildrenFeatures(Object object) {
+		if (childrenFeatures == null) {
+			super.getChildrenFeatures(object);
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getTheMainDiagramType_Description());
+		}
+		return childrenFeatures;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EStructuralFeature getChildFeature(Object object, Object child) {
+		// Check the type of the specified child object and return the proper feature to use for
+		// adding (see {@link AddCommand}) it as a child.
+
+		return super.getChildFeature(object, child);
+	}
+
+	/**
+	 * This returns the label text for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String getText(Object object) {
+		String label = ((TheMainDiagramType)object).getName();
+		return label == null || label.length() == 0 ?
+			getString("_UI_TheMainDiagramType_type") : //$NON-NLS-1$
+			getString("_UI_TheMainDiagramType_type") + " " + label; //$NON-NLS-1$ //$NON-NLS-2$
+	}
+	
+
+	/**
+	 * This handles model notifications by calling {@link #updateChildren} to update any cached
+	 * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void notifyChanged(Notification notification) {
+		updateChildren(notification);
+
+		switch (notification.getFeatureID(TheMainDiagramType.class)) {
+			case UMLRpyPackage.THE_MAIN_DIAGRAM_TYPE__ID:
+			case UMLRpyPackage.THE_MAIN_DIAGRAM_TYPE__LAST_MODIFIED_TIME:
+			case UMLRpyPackage.THE_MAIN_DIAGRAM_TYPE__REQUIREMEN_TRACABILITY_HANDLE:
+			case UMLRpyPackage.THE_MAIN_DIAGRAM_TYPE__UML_DEPENDENCY_ID:
+			case UMLRpyPackage.THE_MAIN_DIAGRAM_TYPE__LAST_ID:
+			case UMLRpyPackage.THE_MAIN_DIAGRAM_TYPE__MY_STATE:
+			case UMLRpyPackage.THE_MAIN_DIAGRAM_TYPE__OBJECT_CREATION:
+			case UMLRpyPackage.THE_MAIN_DIAGRAM_TYPE__NAME:
+			case UMLRpyPackage.THE_MAIN_DIAGRAM_TYPE__CMHEADER:
+				fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), false, true));
+				return;
+			case UMLRpyPackage.THE_MAIN_DIAGRAM_TYPE__DESCRIPTION:
+				fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), true, false));
+				return;
+		}
+		super.notifyChanged(notification);
+	}
+
+	/**
+	 * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children
+	 * that can be created under this object.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) {
+		super.collectNewChildDescriptors(newChildDescriptors, object);
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getTheMainDiagramType_Description(),
+				 UMLRpyFactory.eINSTANCE.createIDescription()));
+	}
+
+}
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/ToLinkTypeItemProvider.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/ToLinkTypeItemProvider.java
new file mode 100755
index 0000000..e0f9bbf
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/ToLinkTypeItemProvider.java
@@ -0,0 +1,151 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.provider;
+
+
+import java.util.Collection;
+import java.util.List;
+
+import org.eclipse.emf.common.notify.AdapterFactory;
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.ecore.EStructuralFeature;
+
+import org.eclipse.emf.edit.provider.IItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.ViewerNotification;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ToLinkType;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyFactory;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ToLinkType} object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class ToLinkTypeItemProvider extends FromLinkTypeItemProvider {
+	/**
+	 * This constructs an instance from a factory and a notifier.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public ToLinkTypeItemProvider(AdapterFactory adapterFactory) {
+		super(adapterFactory);
+	}
+
+	/**
+	 * This returns the property descriptors for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) {
+		if (itemPropertyDescriptors == null) {
+			super.getPropertyDescriptors(object);
+
+		}
+		return itemPropertyDescriptors;
+	}
+
+	/**
+	 * This specifies how to implement {@link #getChildren} and is used to deduce an appropriate feature for an
+	 * {@link org.eclipse.emf.edit.command.AddCommand}, {@link org.eclipse.emf.edit.command.RemoveCommand} or
+	 * {@link org.eclipse.emf.edit.command.MoveCommand} in {@link #createCommand}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Collection<? extends EStructuralFeature> getChildrenFeatures(Object object) {
+		if (childrenFeatures == null) {
+			super.getChildrenFeatures(object);
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getToLinkType_ImplicitClass());
+		}
+		return childrenFeatures;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EStructuralFeature getChildFeature(Object object, Object child) {
+		// Check the type of the specified child object and return the proper feature to use for
+		// adding (see {@link AddCommand}) it as a child.
+
+		return super.getChildFeature(object, child);
+	}
+
+	/**
+	 * This returns the label text for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String getText(Object object) {
+		return getString("_UI_ToLinkType_type"); //$NON-NLS-1$
+	}
+	
+
+	/**
+	 * This handles model notifications by calling {@link #updateChildren} to update any cached
+	 * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void notifyChanged(Notification notification) {
+		updateChildren(notification);
+
+		switch (notification.getFeatureID(ToLinkType.class)) {
+			case UMLRpyPackage.TO_LINK_TYPE__IMPLICIT_CLASS:
+				fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), true, false));
+				return;
+		}
+		super.notifyChanged(notification);
+	}
+
+	/**
+	 * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children
+	 * that can be created under this object.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) {
+		super.collectNewChildDescriptors(newChildDescriptors, object);
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getToLinkType_ImplicitClass(),
+				 UMLRpyFactory.eINSTANCE.createIClass()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getToLinkType_ImplicitClass(),
+				 UMLRpyFactory.eINSTANCE.createIAssociationClass()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getToLinkType_ImplicitClass(),
+				 UMLRpyFactory.eINSTANCE.createIStateChart()));
+	}
+
+}
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/TransitionsTypeItemProvider.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/TransitionsTypeItemProvider.java
new file mode 100755
index 0000000..9605fc0
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/TransitionsTypeItemProvider.java
@@ -0,0 +1,420 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.provider;
+
+
+import java.util.Collection;
+import java.util.List;
+
+import org.eclipse.emf.common.notify.AdapterFactory;
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.common.util.ResourceLocator;
+
+import org.eclipse.emf.ecore.EStructuralFeature;
+
+import org.eclipse.emf.edit.provider.ComposeableAdapterFactory;
+import org.eclipse.emf.edit.provider.IEditingDomainItemProvider;
+import org.eclipse.emf.edit.provider.IItemLabelProvider;
+import org.eclipse.emf.edit.provider.IItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.IItemPropertySource;
+import org.eclipse.emf.edit.provider.IStructuredItemContentProvider;
+import org.eclipse.emf.edit.provider.ITreeItemContentProvider;
+import org.eclipse.emf.edit.provider.ItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.ItemProviderAdapter;
+import org.eclipse.emf.edit.provider.ViewerNotification;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.TransitionsType;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyFactory;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.TransitionsType} object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class TransitionsTypeItemProvider 
+	extends ItemProviderAdapter
+	implements
+		IEditingDomainItemProvider,
+		IStructuredItemContentProvider,
+		ITreeItemContentProvider,
+		IItemLabelProvider,
+		IItemPropertySource {
+	/**
+	 * This constructs an instance from a factory and a notifier.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public TransitionsTypeItemProvider(AdapterFactory adapterFactory) {
+		super(adapterFactory);
+	}
+
+	/**
+	 * This returns the property descriptors for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) {
+		if (itemPropertyDescriptors == null) {
+			super.getPropertyDescriptors(object);
+
+			addModifiedTimeWeakPropertyDescriptor(object);
+			addStaticReactionPropertyDescriptor(object);
+			addItsTargetPropertyDescriptor(object);
+			addIdPropertyDescriptor(object);
+			addCodeUpdateCGTimePropertyDescriptor(object);
+			addRequiremenTracabilityHandlePropertyDescriptor(object);
+			addUmlDependencyIDPropertyDescriptor(object);
+			addMyStatePropertyDescriptor(object);
+			addObjectCreationPropertyDescriptor(object);
+			addNamePropertyDescriptor(object);
+		}
+		return itemPropertyDescriptors;
+	}
+
+	/**
+	 * This adds a property descriptor for the Modified Time Weak feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addModifiedTimeWeakPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_TransitionsType_modifiedTimeWeak_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_TransitionsType_modifiedTimeWeak_feature", "_UI_TransitionsType_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getTransitionsType_ModifiedTimeWeak(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Static Reaction feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addStaticReactionPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_TransitionsType_staticReaction_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_TransitionsType_staticReaction_feature", "_UI_TransitionsType_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getTransitionsType_StaticReaction(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Its Target feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addItsTargetPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_TransitionsType_itsTarget_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_TransitionsType_itsTarget_feature", "_UI_TransitionsType_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getTransitionsType_ItsTarget(),
+				 true,
+				 false,
+				 true,
+				 null,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Id feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addIdPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_TransitionsType_id_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_TransitionsType_id_feature", "_UI_TransitionsType_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getTransitionsType_Id(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Code Update CG Time feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addCodeUpdateCGTimePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_TransitionsType_codeUpdateCGTime_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_TransitionsType_codeUpdateCGTime_feature", "_UI_TransitionsType_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getTransitionsType_CodeUpdateCGTime(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Requiremen Tracability Handle feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addRequiremenTracabilityHandlePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_TransitionsType_requiremenTracabilityHandle_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_TransitionsType_requiremenTracabilityHandle_feature", "_UI_TransitionsType_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getTransitionsType_RequiremenTracabilityHandle(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Uml Dependency ID feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addUmlDependencyIDPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_TransitionsType_umlDependencyID_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_TransitionsType_umlDependencyID_feature", "_UI_TransitionsType_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getTransitionsType_UmlDependencyID(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the My State feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addMyStatePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_TransitionsType_myState_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_TransitionsType_myState_feature", "_UI_TransitionsType_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getTransitionsType_MyState(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Object Creation feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addObjectCreationPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_TransitionsType_objectCreation_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_TransitionsType_objectCreation_feature", "_UI_TransitionsType_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getTransitionsType_ObjectCreation(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Name feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addNamePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_TransitionsType_name_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_TransitionsType_name_feature", "_UI_TransitionsType_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getTransitionsType_Name(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This specifies how to implement {@link #getChildren} and is used to deduce an appropriate feature for an
+	 * {@link org.eclipse.emf.edit.command.AddCommand}, {@link org.eclipse.emf.edit.command.RemoveCommand} or
+	 * {@link org.eclipse.emf.edit.command.MoveCommand} in {@link #createCommand}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Collection<? extends EStructuralFeature> getChildrenFeatures(Object object) {
+		if (childrenFeatures == null) {
+			super.getChildrenFeatures(object);
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getTransitionsType_Description());
+			childrenFeatures.add(UMLRpyPackage.eINSTANCE.getTransitionsType_ItsLabel());
+		}
+		return childrenFeatures;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EStructuralFeature getChildFeature(Object object, Object child) {
+		// Check the type of the specified child object and return the proper feature to use for
+		// adding (see {@link AddCommand}) it as a child.
+
+		return super.getChildFeature(object, child);
+	}
+
+	/**
+	 * This returns the label text for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String getText(Object object) {
+		String label = ((TransitionsType)object).getName();
+		return label == null || label.length() == 0 ?
+			getString("_UI_TransitionsType_type") : //$NON-NLS-1$
+			getString("_UI_TransitionsType_type") + " " + label; //$NON-NLS-1$ //$NON-NLS-2$
+	}
+	
+
+	/**
+	 * This handles model notifications by calling {@link #updateChildren} to update any cached
+	 * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void notifyChanged(Notification notification) {
+		updateChildren(notification);
+
+		switch (notification.getFeatureID(TransitionsType.class)) {
+			case UMLRpyPackage.TRANSITIONS_TYPE__MODIFIED_TIME_WEAK:
+			case UMLRpyPackage.TRANSITIONS_TYPE__STATIC_REACTION:
+			case UMLRpyPackage.TRANSITIONS_TYPE__ID:
+			case UMLRpyPackage.TRANSITIONS_TYPE__CODE_UPDATE_CG_TIME:
+			case UMLRpyPackage.TRANSITIONS_TYPE__REQUIREMEN_TRACABILITY_HANDLE:
+			case UMLRpyPackage.TRANSITIONS_TYPE__UML_DEPENDENCY_ID:
+			case UMLRpyPackage.TRANSITIONS_TYPE__MY_STATE:
+			case UMLRpyPackage.TRANSITIONS_TYPE__OBJECT_CREATION:
+			case UMLRpyPackage.TRANSITIONS_TYPE__NAME:
+				fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), false, true));
+				return;
+			case UMLRpyPackage.TRANSITIONS_TYPE__DESCRIPTION:
+			case UMLRpyPackage.TRANSITIONS_TYPE__ITS_LABEL:
+				fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), true, false));
+				return;
+		}
+		super.notifyChanged(notification);
+	}
+
+	/**
+	 * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children
+	 * that can be created under this object.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) {
+		super.collectNewChildDescriptors(newChildDescriptors, object);
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getTransitionsType_Description(),
+				 UMLRpyFactory.eINSTANCE.createIDescription()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(UMLRpyPackage.eINSTANCE.getTransitionsType_ItsLabel(),
+				 UMLRpyFactory.eINSTANCE.createILabel()));
+	}
+
+	/**
+	 * Return the resource locator for this item provider's resources.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public ResourceLocator getResourceLocator() {
+		return rpymetamodelEditPlugin.INSTANCE;
+	}
+
+}
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/UMLRpyItemProviderAdapterFactory.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/UMLRpyItemProviderAdapterFactory.java
new file mode 100755
index 0000000..f0836ec
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/UMLRpyItemProviderAdapterFactory.java
@@ -0,0 +1,4985 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.provider;
+
+import java.util.ArrayList;
+import java.util.Collection;
+
+import org.eclipse.emf.common.notify.Adapter;
+import org.eclipse.emf.common.notify.Notification;
+import org.eclipse.emf.common.notify.Notifier;
+
+import org.eclipse.emf.edit.provider.ChangeNotifier;
+import org.eclipse.emf.edit.provider.ComposeableAdapterFactory;
+import org.eclipse.emf.edit.provider.ComposedAdapterFactory;
+import org.eclipse.emf.edit.provider.IChangeNotifier;
+import org.eclipse.emf.edit.provider.IDisposable;
+import org.eclipse.emf.edit.provider.IEditingDomainItemProvider;
+import org.eclipse.emf.edit.provider.IItemLabelProvider;
+import org.eclipse.emf.edit.provider.IItemPropertySource;
+import org.eclipse.emf.edit.provider.INotifyChangedListener;
+import org.eclipse.emf.edit.provider.IStructuredItemContentProvider;
+import org.eclipse.emf.edit.provider.ITreeItemContentProvider;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.util.UMLRpyAdapterFactory;
+
+/**
+ * This is the factory that is used to provide the interfaces needed to support Viewers.
+ * The adapters generated by this factory convert EMF adapter notifications into calls to {@link #fireNotifyChanged fireNotifyChanged}.
+ * The adapters also support Eclipse property sheets.
+ * Note that most of the adapters are shared among multiple instances.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class UMLRpyItemProviderAdapterFactory extends UMLRpyAdapterFactory implements ComposeableAdapterFactory, IChangeNotifier, IDisposable {
+	/**
+	 * This keeps track of the root adapter factory that delegates to this adapter factory.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected ComposedAdapterFactory parentAdapterFactory;
+
+	/**
+	 * This is used to implement {@link org.eclipse.emf.edit.provider.IChangeNotifier}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected IChangeNotifier changeNotifier = new ChangeNotifier();
+
+	/**
+	 * This keeps track of all the supported types checked by {@link #isFactoryForType isFactoryForType}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected Collection<Object> supportedTypes = new ArrayList<Object>();
+
+	/**
+	 * This constructs an instance.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public UMLRpyItemProviderAdapterFactory() {
+		supportedTypes.add(IEditingDomainItemProvider.class);
+		supportedTypes.add(IStructuredItemContentProvider.class);
+		supportedTypes.add(ITreeItemContentProvider.class);
+		supportedTypes.add(IItemLabelProvider.class);
+		supportedTypes.add(IItemPropertySource.class);
+	}
+
+	/**
+	 * This keeps track of the one adapter used for all {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CCollaborationChart} instances.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected CCollaborationChartItemProvider cCollaborationChartItemProvider;
+
+	/**
+	 * This creates an adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CCollaborationChart}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Adapter createCCollaborationChartAdapter() {
+		if (cCollaborationChartItemProvider == null) {
+			cCollaborationChartItemProvider = new CCollaborationChartItemProvider(this);
+		}
+
+		return cCollaborationChartItemProvider;
+	}
+
+	/**
+	 * This keeps track of the one adapter used for all {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIActionState} instances.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected CGIActionStateItemProvider cgiActionStateItemProvider;
+
+	/**
+	 * This creates an adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIActionState}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Adapter createCGIActionStateAdapter() {
+		if (cgiActionStateItemProvider == null) {
+			cgiActionStateItemProvider = new CGIActionStateItemProvider(this);
+		}
+
+		return cgiActionStateItemProvider;
+	}
+
+	/**
+	 * This keeps track of the one adapter used for all {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIActiveX} instances.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected CGIActiveXItemProvider cgiActiveXItemProvider;
+
+	/**
+	 * This creates an adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIActiveX}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Adapter createCGIActiveXAdapter() {
+		if (cgiActiveXItemProvider == null) {
+			cgiActiveXItemProvider = new CGIActiveXItemProvider(this);
+		}
+
+		return cgiActiveXItemProvider;
+	}
+
+	/**
+	 * This keeps track of the one adapter used for all {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIAnchor} instances.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected CGIAnchorItemProvider cgiAnchorItemProvider;
+
+	/**
+	 * This creates an adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIAnchor}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Adapter createCGIAnchorAdapter() {
+		if (cgiAnchorItemProvider == null) {
+			cgiAnchorItemProvider = new CGIAnchorItemProvider(this);
+		}
+
+		return cgiAnchorItemProvider;
+	}
+
+	/**
+	 * This keeps track of the one adapter used for all {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIAnnotation} instances.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected CGIAnnotationItemProvider cgiAnnotationItemProvider;
+
+	/**
+	 * This creates an adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIAnnotation}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Adapter createCGIAnnotationAdapter() {
+		if (cgiAnnotationItemProvider == null) {
+			cgiAnnotationItemProvider = new CGIAnnotationItemProvider(this);
+		}
+
+		return cgiAnnotationItemProvider;
+	}
+
+	/**
+	 * This keeps track of the one adapter used for all {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIArrow} instances.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected CGIArrowItemProvider cgiArrowItemProvider;
+
+	/**
+	 * This creates an adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIArrow}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Adapter createCGIArrowAdapter() {
+		if (cgiArrowItemProvider == null) {
+			cgiArrowItemProvider = new CGIArrowItemProvider(this);
+		}
+
+		return cgiArrowItemProvider;
+	}
+
+	/**
+	 * This keeps track of the one adapter used for all {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIAssociationEnd} instances.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected CGIAssociationEndItemProvider cgiAssociationEndItemProvider;
+
+	/**
+	 * This creates an adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIAssociationEnd}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Adapter createCGIAssociationEndAdapter() {
+		if (cgiAssociationEndItemProvider == null) {
+			cgiAssociationEndItemProvider = new CGIAssociationEndItemProvider(this);
+		}
+
+		return cgiAssociationEndItemProvider;
+	}
+
+	/**
+	 * This keeps track of the one adapter used for all {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIAssociationRole} instances.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected CGIAssociationRoleItemProvider cgiAssociationRoleItemProvider;
+
+	/**
+	 * This creates an adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIAssociationRole}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Adapter createCGIAssociationRoleAdapter() {
+		if (cgiAssociationRoleItemProvider == null) {
+			cgiAssociationRoleItemProvider = new CGIAssociationRoleItemProvider(this);
+		}
+
+		return cgiAssociationRoleItemProvider;
+	}
+
+	/**
+	 * This keeps track of the one adapter used for all {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIBasicClass} instances.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected CGIBasicClassItemProvider cgiBasicClassItemProvider;
+
+	/**
+	 * This creates an adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIBasicClass}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Adapter createCGIBasicClassAdapter() {
+		if (cgiBasicClassItemProvider == null) {
+			cgiBasicClassItemProvider = new CGIBasicClassItemProvider(this);
+		}
+
+		return cgiBasicClassItemProvider;
+	}
+
+	/**
+	 * This keeps track of the one adapter used for all {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIBlockState} instances.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected CGIBlockStateItemProvider cgiBlockStateItemProvider;
+
+	/**
+	 * This creates an adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIBlockState}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Adapter createCGIBlockStateAdapter() {
+		if (cgiBlockStateItemProvider == null) {
+			cgiBlockStateItemProvider = new CGIBlockStateItemProvider(this);
+		}
+
+		return cgiBlockStateItemProvider;
+	}
+
+	/**
+	 * This keeps track of the one adapter used for all {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIBox} instances.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected CGIBoxItemProvider cgiBoxItemProvider;
+
+	/**
+	 * This creates an adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIBox}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Adapter createCGIBoxAdapter() {
+		if (cgiBoxItemProvider == null) {
+			cgiBoxItemProvider = new CGIBoxItemProvider(this);
+		}
+
+		return cgiBoxItemProvider;
+	}
+
+	/**
+	 * This keeps track of the one adapter used for all {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIButtonArray} instances.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected CGIButtonArrayItemProvider cgiButtonArrayItemProvider;
+
+	/**
+	 * This creates an adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIButtonArray}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Adapter createCGIButtonArrayAdapter() {
+		if (cgiButtonArrayItemProvider == null) {
+			cgiButtonArrayItemProvider = new CGIButtonArrayItemProvider(this);
+		}
+
+		return cgiButtonArrayItemProvider;
+	}
+
+	/**
+	 * This keeps track of the one adapter used for all {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIClass} instances.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected CGIClassItemProvider cgiClassItemProvider;
+
+	/**
+	 * This creates an adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIClass}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Adapter createCGIClassAdapter() {
+		if (cgiClassItemProvider == null) {
+			cgiClassItemProvider = new CGIClassItemProvider(this);
+		}
+
+		return cgiClassItemProvider;
+	}
+
+	/**
+	 * This keeps track of the one adapter used for all {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIClassChart} instances.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected CGIClassChartItemProvider cgiClassChartItemProvider;
+
+	/**
+	 * This creates an adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIClassChart}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Adapter createCGIClassChartAdapter() {
+		if (cgiClassChartItemProvider == null) {
+			cgiClassChartItemProvider = new CGIClassChartItemProvider(this);
+		}
+
+		return cgiClassChartItemProvider;
+	}
+
+	/**
+	 * This keeps track of the one adapter used for all {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIClassifierRole} instances.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected CGIClassifierRoleItemProvider cgiClassifierRoleItemProvider;
+
+	/**
+	 * This creates an adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIClassifierRole}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Adapter createCGIClassifierRoleAdapter() {
+		if (cgiClassifierRoleItemProvider == null) {
+			cgiClassifierRoleItemProvider = new CGIClassifierRoleItemProvider(this);
+		}
+
+		return cgiClassifierRoleItemProvider;
+	}
+
+	/**
+	 * This keeps track of the one adapter used for all {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGICompartment} instances.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected CGICompartmentItemProvider cgiCompartmentItemProvider;
+
+	/**
+	 * This creates an adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGICompartment}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Adapter createCGICompartmentAdapter() {
+		if (cgiCompartmentItemProvider == null) {
+			cgiCompartmentItemProvider = new CGICompartmentItemProvider(this);
+		}
+
+		return cgiCompartmentItemProvider;
+	}
+
+	/**
+	 * This keeps track of the one adapter used for all {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIComponent} instances.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected CGIComponentItemProvider cgiComponentItemProvider;
+
+	/**
+	 * This creates an adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIComponent}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Adapter createCGIComponentAdapter() {
+		if (cgiComponentItemProvider == null) {
+			cgiComponentItemProvider = new CGIComponentItemProvider(this);
+		}
+
+		return cgiComponentItemProvider;
+	}
+
+	/**
+	 * This keeps track of the one adapter used for all {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGICompositeClass} instances.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected CGICompositeClassItemProvider cgiCompositeClassItemProvider;
+
+	/**
+	 * This creates an adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGICompositeClass}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Adapter createCGICompositeClassAdapter() {
+		if (cgiCompositeClassItemProvider == null) {
+			cgiCompositeClassItemProvider = new CGICompositeClassItemProvider(this);
+		}
+
+		return cgiCompositeClassItemProvider;
+	}
+
+	/**
+	 * This keeps track of the one adapter used for all {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIConnector} instances.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected CGIConnectorItemProvider cgiConnectorItemProvider;
+
+	/**
+	 * This creates an adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIConnector}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Adapter createCGIConnectorAdapter() {
+		if (cgiConnectorItemProvider == null) {
+			cgiConnectorItemProvider = new CGIConnectorItemProvider(this);
+		}
+
+		return cgiConnectorItemProvider;
+	}
+
+	/**
+	 * This keeps track of the one adapter used for all {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIContainArrow} instances.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected CGIContainArrowItemProvider cgiContainArrowItemProvider;
+
+	/**
+	 * This creates an adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIContainArrow}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Adapter createCGIContainArrowAdapter() {
+		if (cgiContainArrowItemProvider == null) {
+			cgiContainArrowItemProvider = new CGIContainArrowItemProvider(this);
+		}
+
+		return cgiContainArrowItemProvider;
+	}
+
+	/**
+	 * This keeps track of the one adapter used for all {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIDiagramFrame} instances.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected CGIDiagramFrameItemProvider cgiDiagramFrameItemProvider;
+
+	/**
+	 * This creates an adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIDiagramFrame}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Adapter createCGIDiagramFrameAdapter() {
+		if (cgiDiagramFrameItemProvider == null) {
+			cgiDiagramFrameItemProvider = new CGIDiagramFrameItemProvider(this);
+		}
+
+		return cgiDiagramFrameItemProvider;
+	}
+
+	/**
+	 * This keeps track of the one adapter used for all {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIFreeShape} instances.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected CGIFreeShapeItemProvider cgiFreeShapeItemProvider;
+
+	/**
+	 * This creates an adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIFreeShape}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Adapter createCGIFreeShapeAdapter() {
+		if (cgiFreeShapeItemProvider == null) {
+			cgiFreeShapeItemProvider = new CGIFreeShapeItemProvider(this);
+		}
+
+		return cgiFreeShapeItemProvider;
+	}
+
+	/**
+	 * This keeps track of the one adapter used for all {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIFreeText} instances.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected CGIFreeTextItemProvider cgiFreeTextItemProvider;
+
+	/**
+	 * This creates an adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIFreeText}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Adapter createCGIFreeTextAdapter() {
+		if (cgiFreeTextItemProvider == null) {
+			cgiFreeTextItemProvider = new CGIFreeTextItemProvider(this);
+		}
+
+		return cgiFreeTextItemProvider;
+	}
+
+	/**
+	 * This keeps track of the one adapter used for all {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIGenericElement} instances.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected CGIGenericElementItemProvider cgiGenericElementItemProvider;
+
+	/**
+	 * This creates an adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIGenericElement}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Adapter createCGIGenericElementAdapter() {
+		if (cgiGenericElementItemProvider == null) {
+			cgiGenericElementItemProvider = new CGIGenericElementItemProvider(this);
+		}
+
+		return cgiGenericElementItemProvider;
+	}
+
+	/**
+	 * This keeps track of the one adapter used for all {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIImage} instances.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected CGIImageItemProvider cgiImageItemProvider;
+
+	/**
+	 * This creates an adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIImage}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Adapter createCGIImageAdapter() {
+		if (cgiImageItemProvider == null) {
+			cgiImageItemProvider = new CGIImageItemProvider(this);
+		}
+
+		return cgiImageItemProvider;
+	}
+
+	/**
+	 * This keeps track of the one adapter used for all {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIImageData} instances.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected CGIImageDataItemProvider cgiImageDataItemProvider;
+
+	/**
+	 * This creates an adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIImageData}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Adapter createCGIImageDataAdapter() {
+		if (cgiImageDataItemProvider == null) {
+			cgiImageDataItemProvider = new CGIImageDataItemProvider(this);
+		}
+
+		return cgiImageDataItemProvider;
+	}
+
+	/**
+	 * This keeps track of the one adapter used for all {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIInformationFlow} instances.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected CGIInformationFlowItemProvider cgiInformationFlowItemProvider;
+
+	/**
+	 * This creates an adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIInformationFlow}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Adapter createCGIInformationFlowAdapter() {
+		if (cgiInformationFlowItemProvider == null) {
+			cgiInformationFlowItemProvider = new CGIInformationFlowItemProvider(this);
+		}
+
+		return cgiInformationFlowItemProvider;
+	}
+
+	/**
+	 * This keeps track of the one adapter used for all {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIInheritance} instances.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected CGIInheritanceItemProvider cgiInheritanceItemProvider;
+
+	/**
+	 * This creates an adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIInheritance}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Adapter createCGIInheritanceAdapter() {
+		if (cgiInheritanceItemProvider == null) {
+			cgiInheritanceItemProvider = new CGIInheritanceItemProvider(this);
+		}
+
+		return cgiInheritanceItemProvider;
+	}
+
+	/**
+	 * This keeps track of the one adapter used for all {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMFCCtrl} instances.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected CGIMFCCtrlItemProvider cgimfcCtrlItemProvider;
+
+	/**
+	 * This creates an adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMFCCtrl}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Adapter createCGIMFCCtrlAdapter() {
+		if (cgimfcCtrlItemProvider == null) {
+			cgimfcCtrlItemProvider = new CGIMFCCtrlItemProvider(this);
+		}
+
+		return cgimfcCtrlItemProvider;
+	}
+
+	/**
+	 * This keeps track of the one adapter used for all {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMessageLabel} instances.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected CGIMessageLabelItemProvider cgiMessageLabelItemProvider;
+
+	/**
+	 * This creates an adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMessageLabel}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Adapter createCGIMessageLabelAdapter() {
+		if (cgiMessageLabelItemProvider == null) {
+			cgiMessageLabelItemProvider = new CGIMessageLabelItemProvider(this);
+		}
+
+		return cgiMessageLabelItemProvider;
+	}
+
+	/**
+	 * This keeps track of the one adapter used for all {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscChart} instances.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected CGIMscChartItemProvider cgiMscChartItemProvider;
+
+	/**
+	 * This creates an adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscChart}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Adapter createCGIMscChartAdapter() {
+		if (cgiMscChartItemProvider == null) {
+			cgiMscChartItemProvider = new CGIMscChartItemProvider(this);
+		}
+
+		return cgiMscChartItemProvider;
+	}
+
+	/**
+	 * This keeps track of the one adapter used for all {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscColumnCR} instances.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected CGIMscColumnCRItemProvider cgiMscColumnCRItemProvider;
+
+	/**
+	 * This creates an adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscColumnCR}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Adapter createCGIMscColumnCRAdapter() {
+		if (cgiMscColumnCRItemProvider == null) {
+			cgiMscColumnCRItemProvider = new CGIMscColumnCRItemProvider(this);
+		}
+
+		return cgiMscColumnCRItemProvider;
+	}
+
+	/**
+	 * This keeps track of the one adapter used for all {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscConditionMark} instances.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected CGIMscConditionMarkItemProvider cgiMscConditionMarkItemProvider;
+
+	/**
+	 * This creates an adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscConditionMark}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Adapter createCGIMscConditionMarkAdapter() {
+		if (cgiMscConditionMarkItemProvider == null) {
+			cgiMscConditionMarkItemProvider = new CGIMscConditionMarkItemProvider(this);
+		}
+
+		return cgiMscConditionMarkItemProvider;
+	}
+
+	/**
+	 * This keeps track of the one adapter used for all {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscExecutionOccurrence} instances.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected CGIMscExecutionOccurrenceItemProvider cgiMscExecutionOccurrenceItemProvider;
+
+	/**
+	 * This creates an adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscExecutionOccurrence}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Adapter createCGIMscExecutionOccurrenceAdapter() {
+		if (cgiMscExecutionOccurrenceItemProvider == null) {
+			cgiMscExecutionOccurrenceItemProvider = new CGIMscExecutionOccurrenceItemProvider(this);
+		}
+
+		return cgiMscExecutionOccurrenceItemProvider;
+	}
+
+	/**
+	 * This keeps track of the one adapter used for all {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscInteractionOccurrence} instances.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected CGIMscInteractionOccurrenceItemProvider cgiMscInteractionOccurrenceItemProvider;
+
+	/**
+	 * This creates an adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscInteractionOccurrence}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Adapter createCGIMscInteractionOccurrenceAdapter() {
+		if (cgiMscInteractionOccurrenceItemProvider == null) {
+			cgiMscInteractionOccurrenceItemProvider = new CGIMscInteractionOccurrenceItemProvider(this);
+		}
+
+		return cgiMscInteractionOccurrenceItemProvider;
+	}
+
+	/**
+	 * This keeps track of the one adapter used for all {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscInteractionOperand} instances.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected CGIMscInteractionOperandItemProvider cgiMscInteractionOperandItemProvider;
+
+	/**
+	 * This creates an adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscInteractionOperand}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Adapter createCGIMscInteractionOperandAdapter() {
+		if (cgiMscInteractionOperandItemProvider == null) {
+			cgiMscInteractionOperandItemProvider = new CGIMscInteractionOperandItemProvider(this);
+		}
+
+		return cgiMscInteractionOperandItemProvider;
+	}
+
+	/**
+	 * This keeps track of the one adapter used for all {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscInteractionOperator} instances.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected CGIMscInteractionOperatorItemProvider cgiMscInteractionOperatorItemProvider;
+
+	/**
+	 * This creates an adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscInteractionOperator}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Adapter createCGIMscInteractionOperatorAdapter() {
+		if (cgiMscInteractionOperatorItemProvider == null) {
+			cgiMscInteractionOperatorItemProvider = new CGIMscInteractionOperatorItemProvider(this);
+		}
+
+		return cgiMscInteractionOperatorItemProvider;
+	}
+
+	/**
+	 * This keeps track of the one adapter used for all {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscMessage} instances.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected CGIMscMessageItemProvider cgiMscMessageItemProvider;
+
+	/**
+	 * This creates an adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscMessage}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Adapter createCGIMscMessageAdapter() {
+		if (cgiMscMessageItemProvider == null) {
+			cgiMscMessageItemProvider = new CGIMscMessageItemProvider(this);
+		}
+
+		return cgiMscMessageItemProvider;
+	}
+
+	/**
+	 * This keeps track of the one adapter used for all {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIObjectInstance} instances.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected CGIObjectInstanceItemProvider cgiObjectInstanceItemProvider;
+
+	/**
+	 * This creates an adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIObjectInstance}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Adapter createCGIObjectInstanceAdapter() {
+		if (cgiObjectInstanceItemProvider == null) {
+			cgiObjectInstanceItemProvider = new CGIObjectInstanceItemProvider(this);
+		}
+
+		return cgiObjectInstanceItemProvider;
+	}
+
+	/**
+	 * This keeps track of the one adapter used for all {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIObjectLink} instances.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected CGIObjectLinkItemProvider cgiObjectLinkItemProvider;
+
+	/**
+	 * This creates an adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIObjectLink}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Adapter createCGIObjectLinkAdapter() {
+		if (cgiObjectLinkItemProvider == null) {
+			cgiObjectLinkItemProvider = new CGIObjectLinkItemProvider(this);
+		}
+
+		return cgiObjectLinkItemProvider;
+	}
+
+	/**
+	 * This keeps track of the one adapter used for all {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIPackage} instances.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected CGIPackageItemProvider cgiPackageItemProvider;
+
+	/**
+	 * This creates an adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIPackage}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Adapter createCGIPackageAdapter() {
+		if (cgiPackageItemProvider == null) {
+			cgiPackageItemProvider = new CGIPackageItemProvider(this);
+		}
+
+		return cgiPackageItemProvider;
+	}
+
+	/**
+	 * This keeps track of the one adapter used for all {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIPartition} instances.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected CGIPartitionItemProvider cgiPartitionItemProvider;
+
+	/**
+	 * This creates an adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIPartition}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Adapter createCGIPartitionAdapter() {
+		if (cgiPartitionItemProvider == null) {
+			cgiPartitionItemProvider = new CGIPartitionItemProvider(this);
+		}
+
+		return cgiPartitionItemProvider;
+	}
+
+	/**
+	 * This keeps track of the one adapter used for all {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIPortConnector} instances.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected CGIPortConnectorItemProvider cgiPortConnectorItemProvider;
+
+	/**
+	 * This creates an adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIPortConnector}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Adapter createCGIPortConnectorAdapter() {
+		if (cgiPortConnectorItemProvider == null) {
+			cgiPortConnectorItemProvider = new CGIPortConnectorItemProvider(this);
+		}
+
+		return cgiPortConnectorItemProvider;
+	}
+
+	/**
+	 * This keeps track of the one adapter used for all {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIState} instances.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected CGIStateItemProvider cgiStateItemProvider;
+
+	/**
+	 * This creates an adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIState}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Adapter createCGIStateAdapter() {
+		if (cgiStateItemProvider == null) {
+			cgiStateItemProvider = new CGIStateItemProvider(this);
+		}
+
+		return cgiStateItemProvider;
+	}
+
+	/**
+	 * This keeps track of the one adapter used for all {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIStateChart} instances.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected CGIStateChartItemProvider cgiStateChartItemProvider;
+
+	/**
+	 * This creates an adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIStateChart}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Adapter createCGIStateChartAdapter() {
+		if (cgiStateChartItemProvider == null) {
+			cgiStateChartItemProvider = new CGIStateChartItemProvider(this);
+		}
+
+		return cgiStateChartItemProvider;
+	}
+
+	/**
+	 * This keeps track of the one adapter used for all {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGISwimlaneFrame} instances.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected CGISwimlaneFrameItemProvider cgiSwimlaneFrameItemProvider;
+
+	/**
+	 * This creates an adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGISwimlaneFrame}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Adapter createCGISwimlaneFrameAdapter() {
+		if (cgiSwimlaneFrameItemProvider == null) {
+			cgiSwimlaneFrameItemProvider = new CGISwimlaneFrameItemProvider(this);
+		}
+
+		return cgiSwimlaneFrameItemProvider;
+	}
+
+	/**
+	 * This keeps track of the one adapter used for all {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIText} instances.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected CGITextItemProvider cgiTextItemProvider;
+
+	/**
+	 * This creates an adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIText}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Adapter createCGITextAdapter() {
+		if (cgiTextItemProvider == null) {
+			cgiTextItemProvider = new CGITextItemProvider(this);
+		}
+
+		return cgiTextItemProvider;
+	}
+
+	/**
+	 * This keeps track of the one adapter used for all {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGITextBox} instances.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected CGITextBoxItemProvider cgiTextBoxItemProvider;
+
+	/**
+	 * This creates an adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGITextBox}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Adapter createCGITextBoxAdapter() {
+		if (cgiTextBoxItemProvider == null) {
+			cgiTextBoxItemProvider = new CGITextBoxItemProvider(this);
+		}
+
+		return cgiTextBoxItemProvider;
+	}
+
+	/**
+	 * This keeps track of the one adapter used for all {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGITrans} instances.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected CGITransItemProvider cgiTransItemProvider;
+
+	/**
+	 * This creates an adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGITrans}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Adapter createCGITransAdapter() {
+		if (cgiTransItemProvider == null) {
+			cgiTransItemProvider = new CGITransItemProvider(this);
+		}
+
+		return cgiTransItemProvider;
+	}
+
+	/**
+	 * This keeps track of the one adapter used for all {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CollEvent} instances.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected CollEventItemProvider collEventItemProvider;
+
+	/**
+	 * This creates an adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CollEvent}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Adapter createCollEventAdapter() {
+		if (collEventItemProvider == null) {
+			collEventItemProvider = new CollEventItemProvider(this);
+		}
+
+		return collEventItemProvider;
+	}
+
+	/**
+	 * This keeps track of the one adapter used for all {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IAcceptEventAction} instances.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected IAcceptEventActionItemProvider iAcceptEventActionItemProvider;
+
+	/**
+	 * This creates an adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IAcceptEventAction}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Adapter createIAcceptEventActionAdapter() {
+		if (iAcceptEventActionItemProvider == null) {
+			iAcceptEventActionItemProvider = new IAcceptEventActionItemProvider(this);
+		}
+
+		return iAcceptEventActionItemProvider;
+	}
+
+	/**
+	 * This keeps track of the one adapter used for all {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IAcceptTimeEvent} instances.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected IAcceptTimeEventItemProvider iAcceptTimeEventItemProvider;
+
+	/**
+	 * This creates an adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IAcceptTimeEvent}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Adapter createIAcceptTimeEventAdapter() {
+		if (iAcceptTimeEventItemProvider == null) {
+			iAcceptTimeEventItemProvider = new IAcceptTimeEventItemProvider(this);
+		}
+
+		return iAcceptTimeEventItemProvider;
+	}
+
+	/**
+	 * This keeps track of the one adapter used for all {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IAction} instances.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected IActionItemProvider iActionItemProvider;
+
+	/**
+	 * This creates an adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IAction}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Adapter createIActionAdapter() {
+		if (iActionItemProvider == null) {
+			iActionItemProvider = new IActionItemProvider(this);
+		}
+
+		return iActionItemProvider;
+	}
+
+	/**
+	 * This keeps track of the one adapter used for all {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IActivityDiagram} instances.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected IActivityDiagramItemProvider iActivityDiagramItemProvider;
+
+	/**
+	 * This creates an adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IActivityDiagram}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Adapter createIActivityDiagramAdapter() {
+		if (iActivityDiagramItemProvider == null) {
+			iActivityDiagramItemProvider = new IActivityDiagramItemProvider(this);
+		}
+
+		return iActivityDiagramItemProvider;
+	}
+
+	/**
+	 * This keeps track of the one adapter used for all {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IActivityGraph} instances.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected IActivityGraphItemProvider iActivityGraphItemProvider;
+
+	/**
+	 * This creates an adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IActivityGraph}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Adapter createIActivityGraphAdapter() {
+		if (iActivityGraphItemProvider == null) {
+			iActivityGraphItemProvider = new IActivityGraphItemProvider(this);
+		}
+
+		return iActivityGraphItemProvider;
+	}
+
+	/**
+	 * This keeps track of the one adapter used for all {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IActor} instances.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected IActorItemProvider iActorItemProvider;
+
+	/**
+	 * This creates an adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IActor}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Adapter createIActorAdapter() {
+		if (iActorItemProvider == null) {
+			iActorItemProvider = new IActorItemProvider(this);
+		}
+
+		return iActorItemProvider;
+	}
+
+	/**
+	 * This keeps track of the one adapter used for all {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IAnchor} instances.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected IAnchorItemProvider iAnchorItemProvider;
+
+	/**
+	 * This creates an adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IAnchor}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Adapter createIAnchorAdapter() {
+		if (iAnchorItemProvider == null) {
+			iAnchorItemProvider = new IAnchorItemProvider(this);
+		}
+
+		return iAnchorItemProvider;
+	}
+
+	/**
+	 * This keeps track of the one adapter used for all {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IAnnotation} instances.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected IAnnotationItemProvider iAnnotationItemProvider;
+
+	/**
+	 * This creates an adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IAnnotation}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Adapter createIAnnotationAdapter() {
+		if (iAnnotationItemProvider == null) {
+			iAnnotationItemProvider = new IAnnotationItemProvider(this);
+		}
+
+		return iAnnotationItemProvider;
+	}
+
+	/**
+	 * This keeps track of the one adapter used for all {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IArgument} instances.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected IArgumentItemProvider iArgumentItemProvider;
+
+	/**
+	 * This creates an adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IArgument}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Adapter createIArgumentAdapter() {
+		if (iArgumentItemProvider == null) {
+			iArgumentItemProvider = new IArgumentItemProvider(this);
+		}
+
+		return iArgumentItemProvider;
+	}
+
+	/**
+	 * This keeps track of the one adapter used for all {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IAssociationClass} instances.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected IAssociationClassItemProvider iAssociationClassItemProvider;
+
+	/**
+	 * This creates an adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IAssociationClass}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Adapter createIAssociationClassAdapter() {
+		if (iAssociationClassItemProvider == null) {
+			iAssociationClassItemProvider = new IAssociationClassItemProvider(this);
+		}
+
+		return iAssociationClassItemProvider;
+	}
+
+	/**
+	 * This keeps track of the one adapter used for all {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IAssociationEnd} instances.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected IAssociationEndItemProvider iAssociationEndItemProvider;
+
+	/**
+	 * This creates an adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IAssociationEnd}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Adapter createIAssociationEndAdapter() {
+		if (iAssociationEndItemProvider == null) {
+			iAssociationEndItemProvider = new IAssociationEndItemProvider(this);
+		}
+
+		return iAssociationEndItemProvider;
+	}
+
+	/**
+	 * This keeps track of the one adapter used for all {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IAssociationEndHandle} instances.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected IAssociationEndHandleItemProvider iAssociationEndHandleItemProvider;
+
+	/**
+	 * This creates an adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IAssociationEndHandle}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Adapter createIAssociationEndHandleAdapter() {
+		if (iAssociationEndHandleItemProvider == null) {
+			iAssociationEndHandleItemProvider = new IAssociationEndHandleItemProvider(this);
+		}
+
+		return iAssociationEndHandleItemProvider;
+	}
+
+	/**
+	 * This keeps track of the one adapter used for all {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IAssociationRole} instances.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected IAssociationRoleItemProvider iAssociationRoleItemProvider;
+
+	/**
+	 * This creates an adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IAssociationRole}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Adapter createIAssociationRoleAdapter() {
+		if (iAssociationRoleItemProvider == null) {
+			iAssociationRoleItemProvider = new IAssociationRoleItemProvider(this);
+		}
+
+		return iAssociationRoleItemProvider;
+	}
+
+	/**
+	 * This keeps track of the one adapter used for all {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IAttribute} instances.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected IAttributeItemProvider iAttributeItemProvider;
+
+	/**
+	 * This creates an adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IAttribute}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Adapter createIAttributeAdapter() {
+		if (iAttributeItemProvider == null) {
+			iAttributeItemProvider = new IAttributeItemProvider(this);
+		}
+
+		return iAttributeItemProvider;
+	}
+
+	/**
+	 * This keeps track of the one adapter used for all {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IBlock} instances.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected IBlockItemProvider iBlockItemProvider;
+
+	/**
+	 * This creates an adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IBlock}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Adapter createIBlockAdapter() {
+		if (iBlockItemProvider == null) {
+			iBlockItemProvider = new IBlockItemProvider(this);
+		}
+
+		return iBlockItemProvider;
+	}
+
+	/**
+	 * This keeps track of the one adapter used for all {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IBody} instances.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected IBodyItemProvider iBodyItemProvider;
+
+	/**
+	 * This creates an adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IBody}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Adapter createIBodyAdapter() {
+		if (iBodyItemProvider == null) {
+			iBodyItemProvider = new IBodyItemProvider(this);
+		}
+
+		return iBodyItemProvider;
+	}
+
+	/**
+	 * This keeps track of the one adapter used for all {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IBranch} instances.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected IBranchItemProvider iBranchItemProvider;
+
+	/**
+	 * This creates an adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IBranch}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Adapter createIBranchAdapter() {
+		if (iBranchItemProvider == null) {
+			iBranchItemProvider = new IBranchItemProvider(this);
+		}
+
+		return iBranchItemProvider;
+	}
+
+	/**
+	 * This keeps track of the one adapter used for all {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ICallAction} instances.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected ICallActionItemProvider iCallActionItemProvider;
+
+	/**
+	 * This creates an adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ICallAction}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Adapter createICallActionAdapter() {
+		if (iCallActionItemProvider == null) {
+			iCallActionItemProvider = new ICallActionItemProvider(this);
+		}
+
+		return iCallActionItemProvider;
+	}
+
+	/**
+	 * This keeps track of the one adapter used for all {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ICallOperation} instances.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected ICallOperationItemProvider iCallOperationItemProvider;
+
+	/**
+	 * This creates an adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ICallOperation}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Adapter createICallOperationAdapter() {
+		if (iCallOperationItemProvider == null) {
+			iCallOperationItemProvider = new ICallOperationItemProvider(this);
+		}
+
+		return iCallOperationItemProvider;
+	}
+
+	/**
+	 * This keeps track of the one adapter used for all {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IClass} instances.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected IClassItemProvider iClassItemProvider;
+
+	/**
+	 * This creates an adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IClass}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Adapter createIClassAdapter() {
+		if (iClassItemProvider == null) {
+			iClassItemProvider = new IClassItemProvider(this);
+		}
+
+		return iClassItemProvider;
+	}
+
+	/**
+	 * This keeps track of the one adapter used for all {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IClassHandle} instances.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected IClassHandleItemProvider iClassHandleItemProvider;
+
+	/**
+	 * This creates an adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IClassHandle}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Adapter createIClassHandleAdapter() {
+		if (iClassHandleItemProvider == null) {
+			iClassHandleItemProvider = new IClassHandleItemProvider(this);
+		}
+
+		return iClassHandleItemProvider;
+	}
+
+	/**
+	 * This keeps track of the one adapter used for all {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IClassInstance} instances.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected IClassInstanceItemProvider iClassInstanceItemProvider;
+
+	/**
+	 * This creates an adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IClassInstance}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Adapter createIClassInstanceAdapter() {
+		if (iClassInstanceItemProvider == null) {
+			iClassInstanceItemProvider = new IClassInstanceItemProvider(this);
+		}
+
+		return iClassInstanceItemProvider;
+	}
+
+	/**
+	 * This keeps track of the one adapter used for all {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IClassifier} instances.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected IClassifierItemProvider iClassifierItemProvider;
+
+	/**
+	 * This creates an adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IClassifier}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Adapter createIClassifierAdapter() {
+		if (iClassifierItemProvider == null) {
+			iClassifierItemProvider = new IClassifierItemProvider(this);
+		}
+
+		return iClassifierItemProvider;
+	}
+
+	/**
+	 * This keeps track of the one adapter used for all {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IClassifierRole} instances.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected IClassifierRoleItemProvider iClassifierRoleItemProvider;
+
+	/**
+	 * This creates an adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IClassifierRole}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Adapter createIClassifierRoleAdapter() {
+		if (iClassifierRoleItemProvider == null) {
+			iClassifierRoleItemProvider = new IClassifierRoleItemProvider(this);
+		}
+
+		return iClassifierRoleItemProvider;
+	}
+
+	/**
+	 * This keeps track of the one adapter used for all {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ICodeGenConfigInfo} instances.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected ICodeGenConfigInfoItemProvider iCodeGenConfigInfoItemProvider;
+
+	/**
+	 * This creates an adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ICodeGenConfigInfo}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Adapter createICodeGenConfigInfoAdapter() {
+		if (iCodeGenConfigInfoItemProvider == null) {
+			iCodeGenConfigInfoItemProvider = new ICodeGenConfigInfoItemProvider(this);
+		}
+
+		return iCodeGenConfigInfoItemProvider;
+	}
+
+	/**
+	 * This keeps track of the one adapter used for all {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ICodeGenConfigInfoHandle} instances.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected ICodeGenConfigInfoHandleItemProvider iCodeGenConfigInfoHandleItemProvider;
+
+	/**
+	 * This creates an adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ICodeGenConfigInfoHandle}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Adapter createICodeGenConfigInfoHandleAdapter() {
+		if (iCodeGenConfigInfoHandleItemProvider == null) {
+			iCodeGenConfigInfoHandleItemProvider = new ICodeGenConfigInfoHandleItemProvider(this);
+		}
+
+		return iCodeGenConfigInfoHandleItemProvider;
+	}
+
+	/**
+	 * This keeps track of the one adapter used for all {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ICollaboration} instances.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected ICollaborationItemProvider iCollaborationItemProvider;
+
+	/**
+	 * This creates an adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ICollaboration}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Adapter createICollaborationAdapter() {
+		if (iCollaborationItemProvider == null) {
+			iCollaborationItemProvider = new ICollaborationItemProvider(this);
+		}
+
+		return iCollaborationItemProvider;
+	}
+
+	/**
+	 * This keeps track of the one adapter used for all {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ICollaborationDiagram} instances.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected ICollaborationDiagramItemProvider iCollaborationDiagramItemProvider;
+
+	/**
+	 * This creates an adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ICollaborationDiagram}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Adapter createICollaborationDiagramAdapter() {
+		if (iCollaborationDiagramItemProvider == null) {
+			iCollaborationDiagramItemProvider = new ICollaborationDiagramItemProvider(this);
+		}
+
+		return iCollaborationDiagramItemProvider;
+	}
+
+	/**
+	 * This keeps track of the one adapter used for all {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IColor} instances.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected IColorItemProvider iColorItemProvider;
+
+	/**
+	 * This creates an adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IColor}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Adapter createIColorAdapter() {
+		if (iColorItemProvider == null) {
+			iColorItemProvider = new IColorItemProvider(this);
+		}
+
+		return iColorItemProvider;
+	}
+
+	/**
+	 * This keeps track of the one adapter used for all {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ICombinedFragment} instances.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected ICombinedFragmentItemProvider iCombinedFragmentItemProvider;
+
+	/**
+	 * This creates an adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ICombinedFragment}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Adapter createICombinedFragmentAdapter() {
+		if (iCombinedFragmentItemProvider == null) {
+			iCombinedFragmentItemProvider = new ICombinedFragmentItemProvider(this);
+		}
+
+		return iCombinedFragmentItemProvider;
+	}
+
+	/**
+	 * This keeps track of the one adapter used for all {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IComment} instances.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected ICommentItemProvider iCommentItemProvider;
+
+	/**
+	 * This creates an adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IComment}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Adapter createICommentAdapter() {
+		if (iCommentItemProvider == null) {
+			iCommentItemProvider = new ICommentItemProvider(this);
+		}
+
+		return iCommentItemProvider;
+	}
+
+	/**
+	 * This keeps track of the one adapter used for all {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IComponent} instances.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected IComponentItemProvider iComponentItemProvider;
+
+	/**
+	 * This creates an adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IComponent}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Adapter createIComponentAdapter() {
+		if (iComponentItemProvider == null) {
+			iComponentItemProvider = new IComponentItemProvider(this);
+		}
+
+		return iComponentItemProvider;
+	}
+
+	/**
+	 * This keeps track of the one adapter used for all {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IComponentDiagram} instances.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected IComponentDiagramItemProvider iComponentDiagramItemProvider;
+
+	/**
+	 * This creates an adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IComponentDiagram}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Adapter createIComponentDiagramAdapter() {
+		if (iComponentDiagramItemProvider == null) {
+			iComponentDiagramItemProvider = new IComponentDiagramItemProvider(this);
+		}
+
+		return iComponentDiagramItemProvider;
+	}
+
+	/**
+	 * This keeps track of the one adapter used for all {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IComponentInstance} instances.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected IComponentInstanceItemProvider iComponentInstanceItemProvider;
+
+	/**
+	 * This creates an adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IComponentInstance}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Adapter createIComponentInstanceAdapter() {
+		if (iComponentInstanceItemProvider == null) {
+			iComponentInstanceItemProvider = new IComponentInstanceItemProvider(this);
+		}
+
+		return iComponentInstanceItemProvider;
+	}
+
+	/**
+	 * This keeps track of the one adapter used for all {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IConfiguration} instances.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected IConfigurationItemProvider iConfigurationItemProvider;
+
+	/**
+	 * This creates an adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IConfiguration}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Adapter createIConfigurationAdapter() {
+		if (iConfigurationItemProvider == null) {
+			iConfigurationItemProvider = new IConfigurationItemProvider(this);
+		}
+
+		return iConfigurationItemProvider;
+	}
+
+	/**
+	 * This keeps track of the one adapter used for all {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IConnector} instances.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected IConnectorItemProvider iConnectorItemProvider;
+
+	/**
+	 * This creates an adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IConnector}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Adapter createIConnectorAdapter() {
+		if (iConnectorItemProvider == null) {
+			iConnectorItemProvider = new IConnectorItemProvider(this);
+		}
+
+		return iConnectorItemProvider;
+	}
+
+	/**
+	 * This keeps track of the one adapter used for all {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IConstraint} instances.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected IConstraintItemProvider iConstraintItemProvider;
+
+	/**
+	 * This creates an adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IConstraint}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Adapter createIConstraintAdapter() {
+		if (iConstraintItemProvider == null) {
+			iConstraintItemProvider = new IConstraintItemProvider(this);
+		}
+
+		return iConstraintItemProvider;
+	}
+
+	/**
+	 * This keeps track of the one adapter used for all {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IConstructor} instances.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected IConstructorItemProvider iConstructorItemProvider;
+
+	/**
+	 * This creates an adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IConstructor}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Adapter createIConstructorAdapter() {
+		if (iConstructorItemProvider == null) {
+			iConstructorItemProvider = new IConstructorItemProvider(this);
+		}
+
+		return iConstructorItemProvider;
+	}
+
+	/**
+	 * This keeps track of the one adapter used for all {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IContextSpecification} instances.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected IContextSpecificationItemProvider iContextSpecificationItemProvider;
+
+	/**
+	 * This creates an adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IContextSpecification}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Adapter createIContextSpecificationAdapter() {
+		if (iContextSpecificationItemProvider == null) {
+			iContextSpecificationItemProvider = new IContextSpecificationItemProvider(this);
+		}
+
+		return iContextSpecificationItemProvider;
+	}
+
+	/**
+	 * This keeps track of the one adapter used for all {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IControlledFile} instances.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected IControlledFileItemProvider iControlledFileItemProvider;
+
+	/**
+	 * This creates an adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IControlledFile}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Adapter createIControlledFileAdapter() {
+		if (iControlledFileItemProvider == null) {
+			iControlledFileItemProvider = new IControlledFileItemProvider(this);
+		}
+
+		return iControlledFileItemProvider;
+	}
+
+	/**
+	 * This keeps track of the one adapter used for all {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IDefaultDrvdTrans} instances.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected IDefaultDrvdTransItemProvider iDefaultDrvdTransItemProvider;
+
+	/**
+	 * This creates an adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IDefaultDrvdTrans}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Adapter createIDefaultDrvdTransAdapter() {
+		if (iDefaultDrvdTransItemProvider == null) {
+			iDefaultDrvdTransItemProvider = new IDefaultDrvdTransItemProvider(this);
+		}
+
+		return iDefaultDrvdTransItemProvider;
+	}
+
+	/**
+	 * This keeps track of the one adapter used for all {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IDependency} instances.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected IDependencyItemProvider iDependencyItemProvider;
+
+	/**
+	 * This creates an adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IDependency}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Adapter createIDependencyAdapter() {
+		if (iDependencyItemProvider == null) {
+			iDependencyItemProvider = new IDependencyItemProvider(this);
+		}
+
+		return iDependencyItemProvider;
+	}
+
+	/**
+	 * This keeps track of the one adapter used for all {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IDeploymentDiagram} instances.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected IDeploymentDiagramItemProvider iDeploymentDiagramItemProvider;
+
+	/**
+	 * This creates an adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IDeploymentDiagram}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Adapter createIDeploymentDiagramAdapter() {
+		if (iDeploymentDiagramItemProvider == null) {
+			iDeploymentDiagramItemProvider = new IDeploymentDiagramItemProvider(this);
+		}
+
+		return iDeploymentDiagramItemProvider;
+	}
+
+	/**
+	 * This keeps track of the one adapter used for all {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IDescription} instances.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected IDescriptionItemProvider iDescriptionItemProvider;
+
+	/**
+	 * This creates an adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IDescription}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Adapter createIDescriptionAdapter() {
+		if (iDescriptionItemProvider == null) {
+			iDescriptionItemProvider = new IDescriptionItemProvider(this);
+		}
+
+		return iDescriptionItemProvider;
+	}
+
+	/**
+	 * This keeps track of the one adapter used for all {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IDestructor} instances.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected IDestructorItemProvider iDestructorItemProvider;
+
+	/**
+	 * This creates an adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IDestructor}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Adapter createIDestructorAdapter() {
+		if (iDestructorItemProvider == null) {
+			iDestructorItemProvider = new IDestructorItemProvider(this);
+		}
+
+		return iDestructorItemProvider;
+	}
+
+	/**
+	 * This keeps track of the one adapter used for all {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IDiagram} instances.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected IDiagramItemProvider iDiagramItemProvider;
+
+	/**
+	 * This creates an adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IDiagram}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Adapter createIDiagramAdapter() {
+		if (iDiagramItemProvider == null) {
+			iDiagramItemProvider = new IDiagramItemProvider(this);
+		}
+
+		return iDiagramItemProvider;
+	}
+
+	/**
+	 * This keeps track of the one adapter used for all {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IEmbededFile} instances.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected IEmbededFileItemProvider iEmbededFileItemProvider;
+
+	/**
+	 * This creates an adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IEmbededFile}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Adapter createIEmbededFileAdapter() {
+		if (iEmbededFileItemProvider == null) {
+			iEmbededFileItemProvider = new IEmbededFileItemProvider(this);
+		}
+
+		return iEmbededFileItemProvider;
+	}
+
+	/**
+	 * This keeps track of the one adapter used for all {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IEnumerationLiteral} instances.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected IEnumerationLiteralItemProvider iEnumerationLiteralItemProvider;
+
+	/**
+	 * This creates an adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IEnumerationLiteral}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Adapter createIEnumerationLiteralAdapter() {
+		if (iEnumerationLiteralItemProvider == null) {
+			iEnumerationLiteralItemProvider = new IEnumerationLiteralItemProvider(this);
+		}
+
+		return iEnumerationLiteralItemProvider;
+	}
+
+	/**
+	 * This keeps track of the one adapter used for all {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IEvent} instances.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected IEventItemProvider iEventItemProvider;
+
+	/**
+	 * This creates an adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IEvent}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Adapter createIEventAdapter() {
+		if (iEventItemProvider == null) {
+			iEventItemProvider = new IEventItemProvider(this);
+		}
+
+		return iEventItemProvider;
+	}
+
+	/**
+	 * This keeps track of the one adapter used for all {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IEventHandle} instances.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected IEventHandleItemProvider iEventHandleItemProvider;
+
+	/**
+	 * This creates an adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IEventHandle}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Adapter createIEventHandleAdapter() {
+		if (iEventHandleItemProvider == null) {
+			iEventHandleItemProvider = new IEventHandleItemProvider(this);
+		}
+
+		return iEventHandleItemProvider;
+	}
+
+	/**
+	 * This keeps track of the one adapter used for all {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IEventReception} instances.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected IEventReceptionItemProvider iEventReceptionItemProvider;
+
+	/**
+	 * This creates an adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IEventReception}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Adapter createIEventReceptionAdapter() {
+		if (iEventReceptionItemProvider == null) {
+			iEventReceptionItemProvider = new IEventReceptionItemProvider(this);
+		}
+
+		return iEventReceptionItemProvider;
+	}
+
+	/**
+	 * This keeps track of the one adapter used for all {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IExecutionOccurrence} instances.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected IExecutionOccurrenceItemProvider iExecutionOccurrenceItemProvider;
+
+	/**
+	 * This creates an adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IExecutionOccurrence}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Adapter createIExecutionOccurrenceAdapter() {
+		if (iExecutionOccurrenceItemProvider == null) {
+			iExecutionOccurrenceItemProvider = new IExecutionOccurrenceItemProvider(this);
+		}
+
+		return iExecutionOccurrenceItemProvider;
+	}
+
+	/**
+	 * This keeps track of the one adapter used for all {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IExternalHyperlink} instances.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected IExternalHyperlinkItemProvider iExternalHyperlinkItemProvider;
+
+	/**
+	 * This creates an adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IExternalHyperlink}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Adapter createIExternalHyperlinkAdapter() {
+		if (iExternalHyperlinkItemProvider == null) {
+			iExternalHyperlinkItemProvider = new IExternalHyperlinkItemProvider(this);
+		}
+
+		return iExternalHyperlinkItemProvider;
+	}
+
+	/**
+	 * This keeps track of the one adapter used for all {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IFile} instances.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected IFileItemProvider iFileItemProvider;
+
+	/**
+	 * This creates an adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IFile}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Adapter createIFileAdapter() {
+		if (iFileItemProvider == null) {
+			iFileItemProvider = new IFileItemProvider(this);
+		}
+
+		return iFileItemProvider;
+	}
+
+	/**
+	 * This keeps track of the one adapter used for all {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IFileFragment} instances.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected IFileFragmentItemProvider iFileFragmentItemProvider;
+
+	/**
+	 * This creates an adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IFileFragment}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Adapter createIFileFragmentAdapter() {
+		if (iFileFragmentItemProvider == null) {
+			iFileFragmentItemProvider = new IFileFragmentItemProvider(this);
+		}
+
+		return iFileFragmentItemProvider;
+	}
+
+	/**
+	 * This keeps track of the one adapter used for all {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IFlow} instances.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected IFlowItemProvider iFlowItemProvider;
+
+	/**
+	 * This creates an adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IFlow}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Adapter createIFlowAdapter() {
+		if (iFlowItemProvider == null) {
+			iFlowItemProvider = new IFlowItemProvider(this);
+		}
+
+		return iFlowItemProvider;
+	}
+
+	/**
+	 * This keeps track of the one adapter used for all {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IFlowItem} instances.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected IFlowItemItemProvider iFlowItemItemProvider;
+
+	/**
+	 * This creates an adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IFlowItem}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Adapter createIFlowItemAdapter() {
+		if (iFlowItemItemProvider == null) {
+			iFlowItemItemProvider = new IFlowItemItemProvider(this);
+		}
+
+		return iFlowItemItemProvider;
+	}
+
+	/**
+	 * This keeps track of the one adapter used for all {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IFlowchart} instances.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected IFlowchartItemProvider iFlowchartItemProvider;
+
+	/**
+	 * This creates an adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IFlowchart}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Adapter createIFlowchartAdapter() {
+		if (iFlowchartItemProvider == null) {
+			iFlowchartItemProvider = new IFlowchartItemProvider(this);
+		}
+
+		return iFlowchartItemProvider;
+	}
+
+	/**
+	 * This keeps track of the one adapter used for all {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IFolder} instances.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected IFolderItemProvider iFolderItemProvider;
+
+	/**
+	 * This creates an adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IFolder}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Adapter createIFolderAdapter() {
+		if (iFolderItemProvider == null) {
+			iFolderItemProvider = new IFolderItemProvider(this);
+		}
+
+		return iFolderItemProvider;
+	}
+
+	/**
+	 * This keeps track of the one adapter used for all {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IFork} instances.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected IForkItemProvider iForkItemProvider;
+
+	/**
+	 * This creates an adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IFork}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Adapter createIForkAdapter() {
+		if (iForkItemProvider == null) {
+			iForkItemProvider = new IForkItemProvider(this);
+		}
+
+		return iForkItemProvider;
+	}
+
+	/**
+	 * This keeps track of the one adapter used for all {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IGeneralization} instances.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected IGeneralizationItemProvider iGeneralizationItemProvider;
+
+	/**
+	 * This creates an adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IGeneralization}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Adapter createIGeneralizationAdapter() {
+		if (iGeneralizationItemProvider == null) {
+			iGeneralizationItemProvider = new IGeneralizationItemProvider(this);
+		}
+
+		return iGeneralizationItemProvider;
+	}
+
+	/**
+	 * This keeps track of the one adapter used for all {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IGuard} instances.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected IGuardItemProvider iGuardItemProvider;
+
+	/**
+	 * This creates an adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IGuard}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Adapter createIGuardAdapter() {
+		if (iGuardItemProvider == null) {
+			iGuardItemProvider = new IGuardItemProvider(this);
+		}
+
+		return iGuardItemProvider;
+	}
+
+	/**
+	 * This keeps track of the one adapter used for all {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IHandleWithData} instances.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected IHandleWithDataItemProvider iHandleWithDataItemProvider;
+
+	/**
+	 * This creates an adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IHandleWithData}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Adapter createIHandleWithDataAdapter() {
+		if (iHandleWithDataItemProvider == null) {
+			iHandleWithDataItemProvider = new IHandleWithDataItemProvider(this);
+		}
+
+		return iHandleWithDataItemProvider;
+	}
+
+	/**
+	 * This keeps track of the one adapter used for all {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IHistoryConnector} instances.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected IHistoryConnectorItemProvider iHistoryConnectorItemProvider;
+
+	/**
+	 * This creates an adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IHistoryConnector}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Adapter createIHistoryConnectorAdapter() {
+		if (iHistoryConnectorItemProvider == null) {
+			iHistoryConnectorItemProvider = new IHistoryConnectorItemProvider(this);
+		}
+
+		return iHistoryConnectorItemProvider;
+	}
+
+	/**
+	 * This keeps track of the one adapter used for all {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IHyperLink} instances.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected IHyperLinkItemProvider iHyperLinkItemProvider;
+
+	/**
+	 * This creates an adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IHyperLink}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Adapter createIHyperLinkAdapter() {
+		if (iHyperLinkItemProvider == null) {
+			iHyperLinkItemProvider = new IHyperLinkItemProvider(this);
+		}
+
+		return iHyperLinkItemProvider;
+	}
+
+	/**
+	 * This keeps track of the one adapter used for all {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IInformationFlow} instances.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected IInformationFlowItemProvider iInformationFlowItemProvider;
+
+	/**
+	 * This creates an adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IInformationFlow}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Adapter createIInformationFlowAdapter() {
+		if (iInformationFlowItemProvider == null) {
+			iInformationFlowItemProvider = new IInformationFlowItemProvider(this);
+		}
+
+		return iInformationFlowItemProvider;
+	}
+
+	/**
+	 * This keeps track of the one adapter used for all {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IInformationItem} instances.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected IInformationItemItemProvider iInformationItemItemProvider;
+
+	/**
+	 * This creates an adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IInformationItem}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Adapter createIInformationItemAdapter() {
+		if (iInformationItemItemProvider == null) {
+			iInformationItemItemProvider = new IInformationItemItemProvider(this);
+		}
+
+		return iInformationItemItemProvider;
+	}
+
+	/**
+	 * This keeps track of the one adapter used for all {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IInstance} instances.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected IInstanceItemProvider iInstanceItemProvider;
+
+	/**
+	 * This creates an adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IInstance}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Adapter createIInstanceAdapter() {
+		if (iInstanceItemProvider == null) {
+			iInstanceItemProvider = new IInstanceItemProvider(this);
+		}
+
+		return iInstanceItemProvider;
+	}
+
+	/**
+	 * This keeps track of the one adapter used for all {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IInstanceSlot} instances.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected IInstanceSlotItemProvider iInstanceSlotItemProvider;
+
+	/**
+	 * This creates an adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IInstanceSlot}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Adapter createIInstanceSlotAdapter() {
+		if (iInstanceSlotItemProvider == null) {
+			iInstanceSlotItemProvider = new IInstanceSlotItemProvider(this);
+		}
+
+		return iInstanceSlotItemProvider;
+	}
+
+	/**
+	 * This keeps track of the one adapter used for all {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IInstanceSpecification} instances.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected IInstanceSpecificationItemProvider iInstanceSpecificationItemProvider;
+
+	/**
+	 * This creates an adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IInstanceSpecification}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Adapter createIInstanceSpecificationAdapter() {
+		if (iInstanceSpecificationItemProvider == null) {
+			iInstanceSpecificationItemProvider = new IInstanceSpecificationItemProvider(this);
+		}
+
+		return iInstanceSpecificationItemProvider;
+	}
+
+	/**
+	 * This keeps track of the one adapter used for all {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IInstanceValue} instances.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected IInstanceValueItemProvider iInstanceValueItemProvider;
+
+	/**
+	 * This creates an adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IInstanceValue}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Adapter createIInstanceValueAdapter() {
+		if (iInstanceValueItemProvider == null) {
+			iInstanceValueItemProvider = new IInstanceValueItemProvider(this);
+		}
+
+		return iInstanceValueItemProvider;
+	}
+
+	/**
+	 * This keeps track of the one adapter used for all {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IInteractionOccurrence} instances.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected IInteractionOccurrenceItemProvider iInteractionOccurrenceItemProvider;
+
+	/**
+	 * This creates an adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IInteractionOccurrence}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Adapter createIInteractionOccurrenceAdapter() {
+		if (iInteractionOccurrenceItemProvider == null) {
+			iInteractionOccurrenceItemProvider = new IInteractionOccurrenceItemProvider(this);
+		}
+
+		return iInteractionOccurrenceItemProvider;
+	}
+
+	/**
+	 * This keeps track of the one adapter used for all {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IInteractionOperand} instances.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected IInteractionOperandItemProvider iInteractionOperandItemProvider;
+
+	/**
+	 * This creates an adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IInteractionOperand}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Adapter createIInteractionOperandAdapter() {
+		if (iInteractionOperandItemProvider == null) {
+			iInteractionOperandItemProvider = new IInteractionOperandItemProvider(this);
+		}
+
+		return iInteractionOperandItemProvider;
+	}
+
+	/**
+	 * This keeps track of the one adapter used for all {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IInteractionOperator} instances.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected IInteractionOperatorItemProvider iInteractionOperatorItemProvider;
+
+	/**
+	 * This creates an adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IInteractionOperator}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Adapter createIInteractionOperatorAdapter() {
+		if (iInteractionOperatorItemProvider == null) {
+			iInteractionOperatorItemProvider = new IInteractionOperatorItemProvider(this);
+		}
+
+		return iInteractionOperatorItemProvider;
+	}
+
+	/**
+	 * This keeps track of the one adapter used for all {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IInterfaceItem} instances.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected IInterfaceItemItemProvider iInterfaceItemItemProvider;
+
+	/**
+	 * This creates an adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IInterfaceItem}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Adapter createIInterfaceItemAdapter() {
+		if (iInterfaceItemItemProvider == null) {
+			iInterfaceItemItemProvider = new IInterfaceItemItemProvider(this);
+		}
+
+		return iInterfaceItemItemProvider;
+	}
+
+	/**
+	 * This keeps track of the one adapter used for all {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IInterfaceItemTrigger} instances.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected IInterfaceItemTriggerItemProvider iInterfaceItemTriggerItemProvider;
+
+	/**
+	 * This creates an adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IInterfaceItemTrigger}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Adapter createIInterfaceItemTriggerAdapter() {
+		if (iInterfaceItemTriggerItemProvider == null) {
+			iInterfaceItemTriggerItemProvider = new IInterfaceItemTriggerItemProvider(this);
+		}
+
+		return iInterfaceItemTriggerItemProvider;
+	}
+
+	/**
+	 * This keeps track of the one adapter used for all {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IInternalHyperlink} instances.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected IInternalHyperlinkItemProvider iInternalHyperlinkItemProvider;
+
+	/**
+	 * This creates an adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IInternalHyperlink}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Adapter createIInternalHyperlinkAdapter() {
+		if (iInternalHyperlinkItemProvider == null) {
+			iInternalHyperlinkItemProvider = new IInternalHyperlinkItemProvider(this);
+		}
+
+		return iInternalHyperlinkItemProvider;
+	}
+
+	/**
+	 * This keeps track of the one adapter used for all {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ILabel} instances.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected ILabelItemProvider iLabelItemProvider;
+
+	/**
+	 * This creates an adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ILabel}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Adapter createILabelAdapter() {
+		if (iLabelItemProvider == null) {
+			iLabelItemProvider = new ILabelItemProvider(this);
+		}
+
+		return iLabelItemProvider;
+	}
+
+	/**
+	 * This keeps track of the one adapter used for all {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ILink} instances.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected ILinkItemProvider iLinkItemProvider;
+
+	/**
+	 * This creates an adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ILink}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Adapter createILinkAdapter() {
+		if (iLinkItemProvider == null) {
+			iLinkItemProvider = new ILinkItemProvider(this);
+		}
+
+		return iLinkItemProvider;
+	}
+
+	/**
+	 * This keeps track of the one adapter used for all {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ILinkInstance} instances.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected ILinkInstanceItemProvider iLinkInstanceItemProvider;
+
+	/**
+	 * This creates an adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ILinkInstance}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Adapter createILinkInstanceAdapter() {
+		if (iLinkInstanceItemProvider == null) {
+			iLinkInstanceItemProvider = new ILinkInstanceItemProvider(this);
+		}
+
+		return iLinkInstanceItemProvider;
+	}
+
+	/**
+	 * This keeps track of the one adapter used for all {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ILiteralSpecification} instances.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected ILiteralSpecificationItemProvider iLiteralSpecificationItemProvider;
+
+	/**
+	 * This creates an adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ILiteralSpecification}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Adapter createILiteralSpecificationAdapter() {
+		if (iLiteralSpecificationItemProvider == null) {
+			iLiteralSpecificationItemProvider = new ILiteralSpecificationItemProvider(this);
+		}
+
+		return iLiteralSpecificationItemProvider;
+	}
+
+	/**
+	 * This keeps track of the one adapter used for all {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMHyperLink} instances.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected IMHyperLinkItemProvider imHyperLinkItemProvider;
+
+	/**
+	 * This creates an adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMHyperLink}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Adapter createIMHyperLinkAdapter() {
+		if (imHyperLinkItemProvider == null) {
+			imHyperLinkItemProvider = new IMHyperLinkItemProvider(this);
+		}
+
+		return imHyperLinkItemProvider;
+	}
+
+	/**
+	 * This keeps track of the one adapter used for all {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMSC} instances.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected IMSCItemProvider imscItemProvider;
+
+	/**
+	 * This creates an adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMSC}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Adapter createIMSCAdapter() {
+		if (imscItemProvider == null) {
+			imscItemProvider = new IMSCItemProvider(this);
+		}
+
+		return imscItemProvider;
+	}
+
+	/**
+	 * This keeps track of the one adapter used for all {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMatrixInstance} instances.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected IMatrixInstanceItemProvider iMatrixInstanceItemProvider;
+
+	/**
+	 * This creates an adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMatrixInstance}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Adapter createIMatrixInstanceAdapter() {
+		if (iMatrixInstanceItemProvider == null) {
+			iMatrixInstanceItemProvider = new IMatrixInstanceItemProvider(this);
+		}
+
+		return iMatrixInstanceItemProvider;
+	}
+
+	/**
+	 * This keeps track of the one adapter used for all {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMatrixLayout} instances.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected IMatrixLayoutItemProvider iMatrixLayoutItemProvider;
+
+	/**
+	 * This creates an adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMatrixLayout}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Adapter createIMatrixLayoutAdapter() {
+		if (iMatrixLayoutItemProvider == null) {
+			iMatrixLayoutItemProvider = new IMatrixLayoutItemProvider(this);
+		}
+
+		return iMatrixLayoutItemProvider;
+	}
+
+	/**
+	 * This keeps track of the one adapter used for all {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMatrixView} instances.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected IMatrixViewItemProvider iMatrixViewItemProvider;
+
+	/**
+	 * This creates an adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMatrixView}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Adapter createIMatrixViewAdapter() {
+		if (iMatrixViewItemProvider == null) {
+			iMatrixViewItemProvider = new IMatrixViewItemProvider(this);
+		}
+
+		return iMatrixViewItemProvider;
+	}
+
+	/**
+	 * This keeps track of the one adapter used for all {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMessage} instances.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected IMessageItemProvider iMessageItemProvider;
+
+	/**
+	 * This creates an adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMessage}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Adapter createIMessageAdapter() {
+		if (iMessageItemProvider == null) {
+			iMessageItemProvider = new IMessageItemProvider(this);
+		}
+
+		return iMessageItemProvider;
+	}
+
+	/**
+	 * This keeps track of the one adapter used for all {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMessagePoint} instances.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected IMessagePointItemProvider iMessagePointItemProvider;
+
+	/**
+	 * This creates an adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMessagePoint}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Adapter createIMessagePointAdapter() {
+		if (iMessagePointItemProvider == null) {
+			iMessagePointItemProvider = new IMessagePointItemProvider(this);
+		}
+
+		return iMessagePointItemProvider;
+	}
+
+	/**
+	 * This keeps track of the one adapter used for all {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMetaLinkHandle} instances.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected IMetaLinkHandleItemProvider iMetaLinkHandleItemProvider;
+
+	/**
+	 * This creates an adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMetaLinkHandle}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Adapter createIMetaLinkHandleAdapter() {
+		if (iMetaLinkHandleItemProvider == null) {
+			iMetaLinkHandleItemProvider = new IMetaLinkHandleItemProvider(this);
+		}
+
+		return iMetaLinkHandleItemProvider;
+	}
+
+	/**
+	 * This keeps track of the one adapter used for all {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IModelElement} instances.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected IModelElementItemProvider iModelElementItemProvider;
+
+	/**
+	 * This creates an adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IModelElement}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Adapter createIModelElementAdapter() {
+		if (iModelElementItemProvider == null) {
+			iModelElementItemProvider = new IModelElementItemProvider(this);
+		}
+
+		return iModelElementItemProvider;
+	}
+
+	/**
+	 * This keeps track of the one adapter used for all {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IModule} instances.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected IModuleItemProvider iModuleItemProvider;
+
+	/**
+	 * This creates an adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IModule}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Adapter createIModuleAdapter() {
+		if (iModuleItemProvider == null) {
+			iModuleItemProvider = new IModuleItemProvider(this);
+		}
+
+		return iModuleItemProvider;
+	}
+
+	/**
+	 * This keeps track of the one adapter used for all {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMultiplicityItem} instances.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected IMultiplicityItemItemProvider iMultiplicityItemItemProvider;
+
+	/**
+	 * This creates an adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMultiplicityItem}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Adapter createIMultiplicityItemAdapter() {
+		if (iMultiplicityItemItemProvider == null) {
+			iMultiplicityItemItemProvider = new IMultiplicityItemItemProvider(this);
+		}
+
+		return iMultiplicityItemItemProvider;
+	}
+
+	/**
+	 * This keeps track of the one adapter used for all {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.INode} instances.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected INodeItemProvider iNodeItemProvider;
+
+	/**
+	 * This creates an adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.INode}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Adapter createINodeAdapter() {
+		if (iNodeItemProvider == null) {
+			iNodeItemProvider = new INodeItemProvider(this);
+		}
+
+		return iNodeItemProvider;
+	}
+
+	/**
+	 * This keeps track of the one adapter used for all {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IObjectLink} instances.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected IObjectLinkItemProvider iObjectLinkItemProvider;
+
+	/**
+	 * This creates an adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IObjectLink}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Adapter createIObjectLinkAdapter() {
+		if (iObjectLinkItemProvider == null) {
+			iObjectLinkItemProvider = new IObjectLinkItemProvider(this);
+		}
+
+		return iObjectLinkItemProvider;
+	}
+
+	/**
+	 * This keeps track of the one adapter used for all {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IObjectLinkHandle} instances.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected IObjectLinkHandleItemProvider iObjectLinkHandleItemProvider;
+
+	/**
+	 * This creates an adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IObjectLinkHandle}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Adapter createIObjectLinkHandleAdapter() {
+		if (iObjectLinkHandleItemProvider == null) {
+			iObjectLinkHandleItemProvider = new IObjectLinkHandleItemProvider(this);
+		}
+
+		return iObjectLinkHandleItemProvider;
+	}
+
+	/**
+	 * This keeps track of the one adapter used for all {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IObjectModelDiagram} instances.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected IObjectModelDiagramItemProvider iObjectModelDiagramItemProvider;
+
+	/**
+	 * This creates an adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IObjectModelDiagram}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Adapter createIObjectModelDiagramAdapter() {
+		if (iObjectModelDiagramItemProvider == null) {
+			iObjectModelDiagramItemProvider = new IObjectModelDiagramItemProvider(this);
+		}
+
+		return iObjectModelDiagramItemProvider;
+	}
+
+	/**
+	 * This keeps track of the one adapter used for all {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IObjectNode} instances.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected IObjectNodeItemProvider iObjectNodeItemProvider;
+
+	/**
+	 * This creates an adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IObjectNode}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Adapter createIObjectNodeAdapter() {
+		if (iObjectNodeItemProvider == null) {
+			iObjectNodeItemProvider = new IObjectNodeItemProvider(this);
+		}
+
+		return iObjectNodeItemProvider;
+	}
+
+	/**
+	 * This keeps track of the one adapter used for all {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IOperation} instances.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected IOperationItemProvider iOperationItemProvider;
+
+	/**
+	 * This creates an adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IOperation}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Adapter createIOperationAdapter() {
+		if (iOperationItemProvider == null) {
+			iOperationItemProvider = new IOperationItemProvider(this);
+		}
+
+		return iOperationItemProvider;
+	}
+
+	/**
+	 * This keeps track of the one adapter used for all {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IPackage} instances.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected IPackageItemProvider iPackageItemProvider;
+
+	/**
+	 * This creates an adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IPackage}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Adapter createIPackageAdapter() {
+		if (iPackageItemProvider == null) {
+			iPackageItemProvider = new IPackageItemProvider(this);
+		}
+
+		return iPackageItemProvider;
+	}
+
+	/**
+	 * This keeps track of the one adapter used for all {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IPanelDiagram} instances.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected IPanelDiagramItemProvider iPanelDiagramItemProvider;
+
+	/**
+	 * This creates an adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IPanelDiagram}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Adapter createIPanelDiagramAdapter() {
+		if (iPanelDiagramItemProvider == null) {
+			iPanelDiagramItemProvider = new IPanelDiagramItemProvider(this);
+		}
+
+		return iPanelDiagramItemProvider;
+	}
+
+	/**
+	 * This keeps track of the one adapter used for all {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IPart} instances.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected IPartItemProvider iPartItemProvider;
+
+	/**
+	 * This creates an adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IPart}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Adapter createIPartAdapter() {
+		if (iPartItemProvider == null) {
+			iPartItemProvider = new IPartItemProvider(this);
+		}
+
+		return iPartItemProvider;
+	}
+
+	/**
+	 * This keeps track of the one adapter used for all {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IPin} instances.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected IPinItemProvider iPinItemProvider;
+
+	/**
+	 * This creates an adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IPin}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Adapter createIPinAdapter() {
+		if (iPinItemProvider == null) {
+			iPinItemProvider = new IPinItemProvider(this);
+		}
+
+		return iPinItemProvider;
+	}
+
+	/**
+	 * This keeps track of the one adapter used for all {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IPort} instances.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected IPortItemProvider iPortItemProvider;
+
+	/**
+	 * This creates an adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IPort}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Adapter createIPortAdapter() {
+		if (iPortItemProvider == null) {
+			iPortItemProvider = new IPortItemProvider(this);
+		}
+
+		return iPortItemProvider;
+	}
+
+	/**
+	 * This keeps track of the one adapter used for all {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IPrimitiveOperation} instances.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected IPrimitiveOperationItemProvider iPrimitiveOperationItemProvider;
+
+	/**
+	 * This creates an adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IPrimitiveOperation}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Adapter createIPrimitiveOperationAdapter() {
+		if (iPrimitiveOperationItemProvider == null) {
+			iPrimitiveOperationItemProvider = new IPrimitiveOperationItemProvider(this);
+		}
+
+		return iPrimitiveOperationItemProvider;
+	}
+
+	/**
+	 * This keeps track of the one adapter used for all {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IProfile} instances.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected IProfileItemProvider iProfileItemProvider;
+
+	/**
+	 * This creates an adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IProfile}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Adapter createIProfileAdapter() {
+		if (iProfileItemProvider == null) {
+			iProfileItemProvider = new IProfileItemProvider(this);
+		}
+
+		return iProfileItemProvider;
+	}
+
+	/**
+	 * This keeps track of the one adapter used for all {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IProject} instances.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected IProjectItemProvider iProjectItemProvider;
+
+	/**
+	 * This creates an adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IProject}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Adapter createIProjectAdapter() {
+		if (iProjectItemProvider == null) {
+			iProjectItemProvider = new IProjectItemProvider(this);
+		}
+
+		return iProjectItemProvider;
+	}
+
+	/**
+	 * This keeps track of the one adapter used for all {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IProperty} instances.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected IPropertyItemProvider iPropertyItemProvider;
+
+	/**
+	 * This creates an adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IProperty}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Adapter createIPropertyAdapter() {
+		if (iPropertyItemProvider == null) {
+			iPropertyItemProvider = new IPropertyItemProvider(this);
+		}
+
+		return iPropertyItemProvider;
+	}
+
+	/**
+	 * This keeps track of the one adapter used for all {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IPropertyContainer} instances.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected IPropertyContainerItemProvider iPropertyContainerItemProvider;
+
+	/**
+	 * This creates an adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IPropertyContainer}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Adapter createIPropertyContainerAdapter() {
+		if (iPropertyContainerItemProvider == null) {
+			iPropertyContainerItemProvider = new IPropertyContainerItemProvider(this);
+		}
+
+		return iPropertyContainerItemProvider;
+	}
+
+	/**
+	 * This keeps track of the one adapter used for all {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IPropertyMetaclass} instances.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected IPropertyMetaclassItemProvider iPropertyMetaclassItemProvider;
+
+	/**
+	 * This creates an adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IPropertyMetaclass}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Adapter createIPropertyMetaclassAdapter() {
+		if (iPropertyMetaclassItemProvider == null) {
+			iPropertyMetaclassItemProvider = new IPropertyMetaclassItemProvider(this);
+		}
+
+		return iPropertyMetaclassItemProvider;
+	}
+
+	/**
+	 * This keeps track of the one adapter used for all {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IPropertySubject} instances.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected IPropertySubjectItemProvider iPropertySubjectItemProvider;
+
+	/**
+	 * This creates an adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IPropertySubject}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Adapter createIPropertySubjectAdapter() {
+		if (iPropertySubjectItemProvider == null) {
+			iPropertySubjectItemProvider = new IPropertySubjectItemProvider(this);
+		}
+
+		return iPropertySubjectItemProvider;
+	}
+
+	/**
+	 * This keeps track of the one adapter used for all {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IReception} instances.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected IReceptionItemProvider iReceptionItemProvider;
+
+	/**
+	 * This creates an adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IReception}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Adapter createIReceptionAdapter() {
+		if (iReceptionItemProvider == null) {
+			iReceptionItemProvider = new IReceptionItemProvider(this);
+		}
+
+		return iReceptionItemProvider;
+	}
+
+	/**
+	 * This keeps track of the one adapter used for all {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IReferenceActivity} instances.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected IReferenceActivityItemProvider iReferenceActivityItemProvider;
+
+	/**
+	 * This creates an adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IReferenceActivity}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Adapter createIReferenceActivityAdapter() {
+		if (iReferenceActivityItemProvider == null) {
+			iReferenceActivityItemProvider = new IReferenceActivityItemProvider(this);
+		}
+
+		return iReferenceActivityItemProvider;
+	}
+
+	/**
+	 * This keeps track of the one adapter used for all {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IRelation} instances.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected IRelationItemProvider iRelationItemProvider;
+
+	/**
+	 * This creates an adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IRelation}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Adapter createIRelationAdapter() {
+		if (iRelationItemProvider == null) {
+			iRelationItemProvider = new IRelationItemProvider(this);
+		}
+
+		return iRelationItemProvider;
+	}
+
+	/**
+	 * This keeps track of the one adapter used for all {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IRequirement} instances.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected IRequirementItemProvider iRequirementItemProvider;
+
+	/**
+	 * This creates an adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IRequirement}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Adapter createIRequirementAdapter() {
+		if (iRequirementItemProvider == null) {
+			iRequirementItemProvider = new IRequirementItemProvider(this);
+		}
+
+		return iRequirementItemProvider;
+	}
+
+	/**
+	 * This keeps track of the one adapter used for all {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ISendAction} instances.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected ISendActionItemProvider iSendActionItemProvider;
+
+	/**
+	 * This creates an adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ISendAction}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Adapter createISendActionAdapter() {
+		if (iSendActionItemProvider == null) {
+			iSendActionItemProvider = new ISendActionItemProvider(this);
+		}
+
+		return iSendActionItemProvider;
+	}
+
+	/**
+	 * This keeps track of the one adapter used for all {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ISequenceDiagram} instances.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected ISequenceDiagramItemProvider iSequenceDiagramItemProvider;
+
+	/**
+	 * This creates an adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ISequenceDiagram}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Adapter createISequenceDiagramAdapter() {
+		if (iSequenceDiagramItemProvider == null) {
+			iSequenceDiagramItemProvider = new ISequenceDiagramItemProvider(this);
+		}
+
+		return iSequenceDiagramItemProvider;
+	}
+
+	/**
+	 * This keeps track of the one adapter used for all {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ISlot} instances.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected ISlotItemProvider iSlotItemProvider;
+
+	/**
+	 * This creates an adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ISlot}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Adapter createISlotAdapter() {
+		if (iSlotItemProvider == null) {
+			iSlotItemProvider = new ISlotItemProvider(this);
+		}
+
+		return iSlotItemProvider;
+	}
+
+	/**
+	 * This keeps track of the one adapter used for all {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IState} instances.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected IStateItemProvider iStateItemProvider;
+
+	/**
+	 * This creates an adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IState}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Adapter createIStateAdapter() {
+		if (iStateItemProvider == null) {
+			iStateItemProvider = new IStateItemProvider(this);
+		}
+
+		return iStateItemProvider;
+	}
+
+	/**
+	 * This keeps track of the one adapter used for all {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IStateChart} instances.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected IStateChartItemProvider iStateChartItemProvider;
+
+	/**
+	 * This creates an adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IStateChart}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Adapter createIStateChartAdapter() {
+		if (iStateChartItemProvider == null) {
+			iStateChartItemProvider = new IStateChartItemProvider(this);
+		}
+
+		return iStateChartItemProvider;
+	}
+
+	/**
+	 * This keeps track of the one adapter used for all {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IStateChartDiagram} instances.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected IStateChartDiagramItemProvider iStateChartDiagramItemProvider;
+
+	/**
+	 * This creates an adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IStateChartDiagram}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Adapter createIStateChartDiagramAdapter() {
+		if (iStateChartDiagramItemProvider == null) {
+			iStateChartDiagramItemProvider = new IStateChartDiagramItemProvider(this);
+		}
+
+		return iStateChartDiagramItemProvider;
+	}
+
+	/**
+	 * This keeps track of the one adapter used for all {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IStateVertex} instances.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected IStateVertexItemProvider iStateVertexItemProvider;
+
+	/**
+	 * This creates an adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IStateVertex}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Adapter createIStateVertexAdapter() {
+		if (iStateVertexItemProvider == null) {
+			iStateVertexItemProvider = new IStateVertexItemProvider(this);
+		}
+
+		return iStateVertexItemProvider;
+	}
+
+	/**
+	 * This keeps track of the one adapter used for all {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IStereotype} instances.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected IStereotypeItemProvider iStereotypeItemProvider;
+
+	/**
+	 * This creates an adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IStereotype}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Adapter createIStereotypeAdapter() {
+		if (iStereotypeItemProvider == null) {
+			iStereotypeItemProvider = new IStereotypeItemProvider(this);
+		}
+
+		return iStereotypeItemProvider;
+	}
+
+	/**
+	 * This keeps track of the one adapter used for all {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IStructureDiagram} instances.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected IStructureDiagramItemProvider iStructureDiagramItemProvider;
+
+	/**
+	 * This creates an adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IStructureDiagram}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Adapter createIStructureDiagramAdapter() {
+		if (iStructureDiagramItemProvider == null) {
+			iStructureDiagramItemProvider = new IStructureDiagramItemProvider(this);
+		}
+
+		return iStructureDiagramItemProvider;
+	}
+
+	/**
+	 * This keeps track of the one adapter used for all {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ISubsystem} instances.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected ISubsystemItemProvider iSubsystemItemProvider;
+
+	/**
+	 * This creates an adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ISubsystem}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Adapter createISubsystemAdapter() {
+		if (iSubsystemItemProvider == null) {
+			iSubsystemItemProvider = new ISubsystemItemProvider(this);
+		}
+
+		return iSubsystemItemProvider;
+	}
+
+	/**
+	 * This keeps track of the one adapter used for all {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ISwimlane} instances.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected ISwimlaneItemProvider iSwimlaneItemProvider;
+
+	/**
+	 * This creates an adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ISwimlane}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Adapter createISwimlaneAdapter() {
+		if (iSwimlaneItemProvider == null) {
+			iSwimlaneItemProvider = new ISwimlaneItemProvider(this);
+		}
+
+		return iSwimlaneItemProvider;
+	}
+
+	/**
+	 * This keeps track of the one adapter used for all {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ISysMLPort} instances.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected ISysMLPortItemProvider iSysMLPortItemProvider;
+
+	/**
+	 * This creates an adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ISysMLPort}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Adapter createISysMLPortAdapter() {
+		if (iSysMLPortItemProvider == null) {
+			iSysMLPortItemProvider = new ISysMLPortItemProvider(this);
+		}
+
+		return iSysMLPortItemProvider;
+	}
+
+	/**
+	 * This keeps track of the one adapter used for all {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITableInstance} instances.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected ITableInstanceItemProvider iTableInstanceItemProvider;
+
+	/**
+	 * This creates an adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITableInstance}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Adapter createITableInstanceAdapter() {
+		if (iTableInstanceItemProvider == null) {
+			iTableInstanceItemProvider = new ITableInstanceItemProvider(this);
+		}
+
+		return iTableInstanceItemProvider;
+	}
+
+	/**
+	 * This keeps track of the one adapter used for all {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITableLayout} instances.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected ITableLayoutItemProvider iTableLayoutItemProvider;
+
+	/**
+	 * This creates an adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITableLayout}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Adapter createITableLayoutAdapter() {
+		if (iTableLayoutItemProvider == null) {
+			iTableLayoutItemProvider = new ITableLayoutItemProvider(this);
+		}
+
+		return iTableLayoutItemProvider;
+	}
+
+	/**
+	 * This keeps track of the one adapter used for all {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITableView} instances.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected ITableViewItemProvider iTableViewItemProvider;
+
+	/**
+	 * This creates an adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITableView}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Adapter createITableViewAdapter() {
+		if (iTableViewItemProvider == null) {
+			iTableViewItemProvider = new ITableViewItemProvider(this);
+		}
+
+		return iTableViewItemProvider;
+	}
+
+	/**
+	 * This keeps track of the one adapter used for all {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITag} instances.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected ITagItemProvider iTagItemProvider;
+
+	/**
+	 * This creates an adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITag}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Adapter createITagAdapter() {
+		if (iTagItemProvider == null) {
+			iTagItemProvider = new ITagItemProvider(this);
+		}
+
+		return iTagItemProvider;
+	}
+
+	/**
+	 * This keeps track of the one adapter used for all {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITemplateInst} instances.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected ITemplateInstItemProvider iTemplateInstItemProvider;
+
+	/**
+	 * This creates an adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITemplateInst}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Adapter createITemplateInstAdapter() {
+		if (iTemplateInstItemProvider == null) {
+			iTemplateInstItemProvider = new ITemplateInstItemProvider(this);
+		}
+
+		return iTemplateInstItemProvider;
+	}
+
+	/**
+	 * This keeps track of the one adapter used for all {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITemplateInstParam} instances.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected ITemplateInstParamItemProvider iTemplateInstParamItemProvider;
+
+	/**
+	 * This creates an adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITemplateInstParam}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Adapter createITemplateInstParamAdapter() {
+		if (iTemplateInstParamItemProvider == null) {
+			iTemplateInstParamItemProvider = new ITemplateInstParamItemProvider(this);
+		}
+
+		return iTemplateInstParamItemProvider;
+	}
+
+	/**
+	 * This keeps track of the one adapter used for all {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITemplateInstantiation} instances.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected ITemplateInstantiationItemProvider iTemplateInstantiationItemProvider;
+
+	/**
+	 * This creates an adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITemplateInstantiation}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Adapter createITemplateInstantiationAdapter() {
+		if (iTemplateInstantiationItemProvider == null) {
+			iTemplateInstantiationItemProvider = new ITemplateInstantiationItemProvider(this);
+		}
+
+		return iTemplateInstantiationItemProvider;
+	}
+
+	/**
+	 * This keeps track of the one adapter used for all {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITemplateInstantiationParameter} instances.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected ITemplateInstantiationParameterItemProvider iTemplateInstantiationParameterItemProvider;
+
+	/**
+	 * This creates an adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITemplateInstantiationParameter}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Adapter createITemplateInstantiationParameterAdapter() {
+		if (iTemplateInstantiationParameterItemProvider == null) {
+			iTemplateInstantiationParameterItemProvider = new ITemplateInstantiationParameterItemProvider(this);
+		}
+
+		return iTemplateInstantiationParameterItemProvider;
+	}
+
+	/**
+	 * This keeps track of the one adapter used for all {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITemplateParameter} instances.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected ITemplateParameterItemProvider iTemplateParameterItemProvider;
+
+	/**
+	 * This creates an adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITemplateParameter}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Adapter createITemplateParameterAdapter() {
+		if (iTemplateParameterItemProvider == null) {
+			iTemplateParameterItemProvider = new ITemplateParameterItemProvider(this);
+		}
+
+		return iTemplateParameterItemProvider;
+	}
+
+	/**
+	 * This keeps track of the one adapter used for all {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITimeEvent} instances.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected ITimeEventItemProvider iTimeEventItemProvider;
+
+	/**
+	 * This creates an adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITimeEvent}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Adapter createITimeEventAdapter() {
+		if (iTimeEventItemProvider == null) {
+			iTimeEventItemProvider = new ITimeEventItemProvider(this);
+		}
+
+		return iTimeEventItemProvider;
+	}
+
+	/**
+	 * This keeps track of the one adapter used for all {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITimeout} instances.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected ITimeoutItemProvider iTimeoutItemProvider;
+
+	/**
+	 * This creates an adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITimeout}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Adapter createITimeoutAdapter() {
+		if (iTimeoutItemProvider == null) {
+			iTimeoutItemProvider = new ITimeoutItemProvider(this);
+		}
+
+		return iTimeoutItemProvider;
+	}
+
+	/**
+	 * This keeps track of the one adapter used for all {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITransition} instances.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected ITransitionItemProvider iTransitionItemProvider;
+
+	/**
+	 * This creates an adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITransition}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Adapter createITransitionAdapter() {
+		if (iTransitionItemProvider == null) {
+			iTransitionItemProvider = new ITransitionItemProvider(this);
+		}
+
+		return iTransitionItemProvider;
+	}
+
+	/**
+	 * This keeps track of the one adapter used for all {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITrigger} instances.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected ITriggerItemProvider iTriggerItemProvider;
+
+	/**
+	 * This creates an adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITrigger}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Adapter createITriggerAdapter() {
+		if (iTriggerItemProvider == null) {
+			iTriggerItemProvider = new ITriggerItemProvider(this);
+		}
+
+		return iTriggerItemProvider;
+	}
+
+	/**
+	 * This keeps track of the one adapter used for all {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITriggered} instances.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected ITriggeredItemProvider iTriggeredItemProvider;
+
+	/**
+	 * This creates an adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITriggered}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Adapter createITriggeredAdapter() {
+		if (iTriggeredItemProvider == null) {
+			iTriggeredItemProvider = new ITriggeredItemProvider(this);
+		}
+
+		return iTriggeredItemProvider;
+	}
+
+	/**
+	 * This keeps track of the one adapter used for all {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IType} instances.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected ITypeItemProvider iTypeItemProvider;
+
+	/**
+	 * This creates an adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IType}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Adapter createITypeAdapter() {
+		if (iTypeItemProvider == null) {
+			iTypeItemProvider = new ITypeItemProvider(this);
+		}
+
+		return iTypeItemProvider;
+	}
+
+	/**
+	 * This keeps track of the one adapter used for all {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IUCDiagram} instances.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected IUCDiagramItemProvider iucDiagramItemProvider;
+
+	/**
+	 * This creates an adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IUCDiagram}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Adapter createIUCDiagramAdapter() {
+		if (iucDiagramItemProvider == null) {
+			iucDiagramItemProvider = new IUCDiagramItemProvider(this);
+		}
+
+		return iucDiagramItemProvider;
+	}
+
+	/**
+	 * This keeps track of the one adapter used for all {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IUnit} instances.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected IUnitItemProvider iUnitItemProvider;
+
+	/**
+	 * This creates an adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IUnit}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Adapter createIUnitAdapter() {
+		if (iUnitItemProvider == null) {
+			iUnitItemProvider = new IUnitItemProvider(this);
+		}
+
+		return iUnitItemProvider;
+	}
+
+	/**
+	 * This keeps track of the one adapter used for all {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IUseCase} instances.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected IUseCaseItemProvider iUseCaseItemProvider;
+
+	/**
+	 * This creates an adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IUseCase}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Adapter createIUseCaseAdapter() {
+		if (iUseCaseItemProvider == null) {
+			iUseCaseItemProvider = new IUseCaseItemProvider(this);
+		}
+
+		return iUseCaseItemProvider;
+	}
+
+	/**
+	 * This keeps track of the one adapter used for all {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IUseCaseDiagram} instances.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected IUseCaseDiagramItemProvider iUseCaseDiagramItemProvider;
+
+	/**
+	 * This creates an adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IUseCaseDiagram}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Adapter createIUseCaseDiagramAdapter() {
+		if (iUseCaseDiagramItemProvider == null) {
+			iUseCaseDiagramItemProvider = new IUseCaseDiagramItemProvider(this);
+		}
+
+		return iUseCaseDiagramItemProvider;
+	}
+
+	/**
+	 * This keeps track of the one adapter used for all {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IUseCaseStereoType} instances.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected IUseCaseStereoTypeItemProvider iUseCaseStereoTypeItemProvider;
+
+	/**
+	 * This creates an adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IUseCaseStereoType}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Adapter createIUseCaseStereoTypeAdapter() {
+		if (iUseCaseStereoTypeItemProvider == null) {
+			iUseCaseStereoTypeItemProvider = new IUseCaseStereoTypeItemProvider(this);
+		}
+
+		return iUseCaseStereoTypeItemProvider;
+	}
+
+	/**
+	 * This keeps track of the one adapter used for all {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IValueSpecification} instances.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected IValueSpecificationItemProvider iValueSpecificationItemProvider;
+
+	/**
+	 * This creates an adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IValueSpecification}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Adapter createIValueSpecificationAdapter() {
+		if (iValueSpecificationItemProvider == null) {
+			iValueSpecificationItemProvider = new IValueSpecificationItemProvider(this);
+		}
+
+		return iValueSpecificationItemProvider;
+	}
+
+	/**
+	 * This keeps track of the one adapter used for all {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IVariable} instances.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected IVariableItemProvider iVariableItemProvider;
+
+	/**
+	 * This creates an adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IVariable}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Adapter createIVariableAdapter() {
+		if (iVariableItemProvider == null) {
+			iVariableItemProvider = new IVariableItemProvider(this);
+		}
+
+		return iVariableItemProvider;
+	}
+
+	/**
+	 * This keeps track of the one adapter used for all {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.TableDataDefinition} instances.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected TableDataDefinitionItemProvider tableDataDefinitionItemProvider;
+
+	/**
+	 * This creates an adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.TableDataDefinition}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Adapter createTableDataDefinitionAdapter() {
+		if (tableDataDefinitionItemProvider == null) {
+			tableDataDefinitionItemProvider = new TableDataDefinitionItemProvider(this);
+		}
+
+		return tableDataDefinitionItemProvider;
+	}
+
+	/**
+	 * This keeps track of the one adapter used for all {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UnknownType} instances.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected UnknownTypeItemProvider unknownTypeItemProvider;
+
+	/**
+	 * This creates an adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UnknownType}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Adapter createUnknownTypeAdapter() {
+		if (unknownTypeItemProvider == null) {
+			unknownTypeItemProvider = new UnknownTypeItemProvider(this);
+		}
+
+		return unknownTypeItemProvider;
+	}
+
+	/**
+	 * This returns the root adapter factory that contains this factory.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public ComposeableAdapterFactory getRootAdapterFactory() {
+		return parentAdapterFactory == null ? this : parentAdapterFactory.getRootAdapterFactory();
+	}
+
+	/**
+	 * This sets the composed adapter factory that contains this factory.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setParentAdapterFactory(ComposedAdapterFactory parentAdapterFactory) {
+		this.parentAdapterFactory = parentAdapterFactory;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public boolean isFactoryForType(Object type) {
+		return supportedTypes.contains(type) || super.isFactoryForType(type);
+	}
+
+	/**
+	 * This implementation substitutes the factory itself as the key for the adapter.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Adapter adapt(Notifier notifier, Object type) {
+		return super.adapt(notifier, this);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object adapt(Object object, Object type) {
+		if (isFactoryForType(type)) {
+			Object adapter = super.adapt(object, type);
+			if (!(type instanceof Class<?>) || (((Class<?>)type).isInstance(adapter))) {
+				return adapter;
+			}
+		}
+
+		return null;
+	}
+
+	/**
+	 * This adds a listener.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void addListener(INotifyChangedListener notifyChangedListener) {
+		changeNotifier.addListener(notifyChangedListener);
+	}
+
+	/**
+	 * This removes a listener.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void removeListener(INotifyChangedListener notifyChangedListener) {
+		changeNotifier.removeListener(notifyChangedListener);
+	}
+
+	/**
+	 * This delegates to {@link #changeNotifier} and to {@link #parentAdapterFactory}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void fireNotifyChanged(Notification notification) {
+		changeNotifier.fireNotifyChanged(notification);
+
+		if (parentAdapterFactory != null) {
+			parentAdapterFactory.fireNotifyChanged(notification);
+		}
+	}
+
+	/**
+	 * This disposes all of the item providers created by this factory. 
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void dispose() {
+		if (cCollaborationChartItemProvider != null) cCollaborationChartItemProvider.dispose();
+		if (cgiActionStateItemProvider != null) cgiActionStateItemProvider.dispose();
+		if (cgiActiveXItemProvider != null) cgiActiveXItemProvider.dispose();
+		if (cgiAnchorItemProvider != null) cgiAnchorItemProvider.dispose();
+		if (cgiAnnotationItemProvider != null) cgiAnnotationItemProvider.dispose();
+		if (cgiArrowItemProvider != null) cgiArrowItemProvider.dispose();
+		if (cgiAssociationEndItemProvider != null) cgiAssociationEndItemProvider.dispose();
+		if (cgiAssociationRoleItemProvider != null) cgiAssociationRoleItemProvider.dispose();
+		if (cgiBasicClassItemProvider != null) cgiBasicClassItemProvider.dispose();
+		if (cgiBlockStateItemProvider != null) cgiBlockStateItemProvider.dispose();
+		if (cgiBoxItemProvider != null) cgiBoxItemProvider.dispose();
+		if (cgiButtonArrayItemProvider != null) cgiButtonArrayItemProvider.dispose();
+		if (cgiClassItemProvider != null) cgiClassItemProvider.dispose();
+		if (cgiClassChartItemProvider != null) cgiClassChartItemProvider.dispose();
+		if (cgiClassifierRoleItemProvider != null) cgiClassifierRoleItemProvider.dispose();
+		if (cgiCompartmentItemProvider != null) cgiCompartmentItemProvider.dispose();
+		if (cgiComponentItemProvider != null) cgiComponentItemProvider.dispose();
+		if (cgiCompositeClassItemProvider != null) cgiCompositeClassItemProvider.dispose();
+		if (cgiConnectorItemProvider != null) cgiConnectorItemProvider.dispose();
+		if (cgiContainArrowItemProvider != null) cgiContainArrowItemProvider.dispose();
+		if (cgiDiagramFrameItemProvider != null) cgiDiagramFrameItemProvider.dispose();
+		if (cgiFreeShapeItemProvider != null) cgiFreeShapeItemProvider.dispose();
+		if (cgiFreeTextItemProvider != null) cgiFreeTextItemProvider.dispose();
+		if (cgiGenericElementItemProvider != null) cgiGenericElementItemProvider.dispose();
+		if (cgiImageItemProvider != null) cgiImageItemProvider.dispose();
+		if (cgiImageDataItemProvider != null) cgiImageDataItemProvider.dispose();
+		if (cgiInformationFlowItemProvider != null) cgiInformationFlowItemProvider.dispose();
+		if (cgiInheritanceItemProvider != null) cgiInheritanceItemProvider.dispose();
+		if (cgimfcCtrlItemProvider != null) cgimfcCtrlItemProvider.dispose();
+		if (cgiMessageLabelItemProvider != null) cgiMessageLabelItemProvider.dispose();
+		if (cgiMscChartItemProvider != null) cgiMscChartItemProvider.dispose();
+		if (cgiMscColumnCRItemProvider != null) cgiMscColumnCRItemProvider.dispose();
+		if (cgiMscConditionMarkItemProvider != null) cgiMscConditionMarkItemProvider.dispose();
+		if (cgiMscExecutionOccurrenceItemProvider != null) cgiMscExecutionOccurrenceItemProvider.dispose();
+		if (cgiMscInteractionOccurrenceItemProvider != null) cgiMscInteractionOccurrenceItemProvider.dispose();
+		if (cgiMscInteractionOperandItemProvider != null) cgiMscInteractionOperandItemProvider.dispose();
+		if (cgiMscInteractionOperatorItemProvider != null) cgiMscInteractionOperatorItemProvider.dispose();
+		if (cgiMscMessageItemProvider != null) cgiMscMessageItemProvider.dispose();
+		if (cgiObjectInstanceItemProvider != null) cgiObjectInstanceItemProvider.dispose();
+		if (cgiObjectLinkItemProvider != null) cgiObjectLinkItemProvider.dispose();
+		if (cgiPackageItemProvider != null) cgiPackageItemProvider.dispose();
+		if (cgiPartitionItemProvider != null) cgiPartitionItemProvider.dispose();
+		if (cgiPortConnectorItemProvider != null) cgiPortConnectorItemProvider.dispose();
+		if (cgiStateItemProvider != null) cgiStateItemProvider.dispose();
+		if (cgiStateChartItemProvider != null) cgiStateChartItemProvider.dispose();
+		if (cgiSwimlaneFrameItemProvider != null) cgiSwimlaneFrameItemProvider.dispose();
+		if (cgiTextItemProvider != null) cgiTextItemProvider.dispose();
+		if (cgiTextBoxItemProvider != null) cgiTextBoxItemProvider.dispose();
+		if (cgiTransItemProvider != null) cgiTransItemProvider.dispose();
+		if (collEventItemProvider != null) collEventItemProvider.dispose();
+		if (iAcceptEventActionItemProvider != null) iAcceptEventActionItemProvider.dispose();
+		if (iAcceptTimeEventItemProvider != null) iAcceptTimeEventItemProvider.dispose();
+		if (iActionItemProvider != null) iActionItemProvider.dispose();
+		if (iActivityDiagramItemProvider != null) iActivityDiagramItemProvider.dispose();
+		if (iActivityGraphItemProvider != null) iActivityGraphItemProvider.dispose();
+		if (iActorItemProvider != null) iActorItemProvider.dispose();
+		if (iAnchorItemProvider != null) iAnchorItemProvider.dispose();
+		if (iAnnotationItemProvider != null) iAnnotationItemProvider.dispose();
+		if (iArgumentItemProvider != null) iArgumentItemProvider.dispose();
+		if (iAssociationClassItemProvider != null) iAssociationClassItemProvider.dispose();
+		if (iAssociationEndItemProvider != null) iAssociationEndItemProvider.dispose();
+		if (iAssociationEndHandleItemProvider != null) iAssociationEndHandleItemProvider.dispose();
+		if (iAssociationRoleItemProvider != null) iAssociationRoleItemProvider.dispose();
+		if (iAttributeItemProvider != null) iAttributeItemProvider.dispose();
+		if (iBlockItemProvider != null) iBlockItemProvider.dispose();
+		if (iBodyItemProvider != null) iBodyItemProvider.dispose();
+		if (iBranchItemProvider != null) iBranchItemProvider.dispose();
+		if (iCallActionItemProvider != null) iCallActionItemProvider.dispose();
+		if (iCallOperationItemProvider != null) iCallOperationItemProvider.dispose();
+		if (iClassItemProvider != null) iClassItemProvider.dispose();
+		if (iClassHandleItemProvider != null) iClassHandleItemProvider.dispose();
+		if (iClassInstanceItemProvider != null) iClassInstanceItemProvider.dispose();
+		if (iClassifierItemProvider != null) iClassifierItemProvider.dispose();
+		if (iClassifierRoleItemProvider != null) iClassifierRoleItemProvider.dispose();
+		if (iCodeGenConfigInfoItemProvider != null) iCodeGenConfigInfoItemProvider.dispose();
+		if (iCodeGenConfigInfoHandleItemProvider != null) iCodeGenConfigInfoHandleItemProvider.dispose();
+		if (iCollaborationItemProvider != null) iCollaborationItemProvider.dispose();
+		if (iCollaborationDiagramItemProvider != null) iCollaborationDiagramItemProvider.dispose();
+		if (iColorItemProvider != null) iColorItemProvider.dispose();
+		if (iCombinedFragmentItemProvider != null) iCombinedFragmentItemProvider.dispose();
+		if (iCommentItemProvider != null) iCommentItemProvider.dispose();
+		if (iComponentItemProvider != null) iComponentItemProvider.dispose();
+		if (iComponentDiagramItemProvider != null) iComponentDiagramItemProvider.dispose();
+		if (iComponentInstanceItemProvider != null) iComponentInstanceItemProvider.dispose();
+		if (iConfigurationItemProvider != null) iConfigurationItemProvider.dispose();
+		if (iConnectorItemProvider != null) iConnectorItemProvider.dispose();
+		if (iConstraintItemProvider != null) iConstraintItemProvider.dispose();
+		if (iConstructorItemProvider != null) iConstructorItemProvider.dispose();
+		if (iContextSpecificationItemProvider != null) iContextSpecificationItemProvider.dispose();
+		if (iControlledFileItemProvider != null) iControlledFileItemProvider.dispose();
+		if (iDefaultDrvdTransItemProvider != null) iDefaultDrvdTransItemProvider.dispose();
+		if (iDependencyItemProvider != null) iDependencyItemProvider.dispose();
+		if (iDeploymentDiagramItemProvider != null) iDeploymentDiagramItemProvider.dispose();
+		if (iDescriptionItemProvider != null) iDescriptionItemProvider.dispose();
+		if (iDestructorItemProvider != null) iDestructorItemProvider.dispose();
+		if (iDiagramItemProvider != null) iDiagramItemProvider.dispose();
+		if (iEmbededFileItemProvider != null) iEmbededFileItemProvider.dispose();
+		if (iEnumerationLiteralItemProvider != null) iEnumerationLiteralItemProvider.dispose();
+		if (iEventItemProvider != null) iEventItemProvider.dispose();
+		if (iEventHandleItemProvider != null) iEventHandleItemProvider.dispose();
+		if (iEventReceptionItemProvider != null) iEventReceptionItemProvider.dispose();
+		if (iExecutionOccurrenceItemProvider != null) iExecutionOccurrenceItemProvider.dispose();
+		if (iExternalHyperlinkItemProvider != null) iExternalHyperlinkItemProvider.dispose();
+		if (iFileItemProvider != null) iFileItemProvider.dispose();
+		if (iFileFragmentItemProvider != null) iFileFragmentItemProvider.dispose();
+		if (iFlowItemProvider != null) iFlowItemProvider.dispose();
+		if (iFlowItemItemProvider != null) iFlowItemItemProvider.dispose();
+		if (iFlowchartItemProvider != null) iFlowchartItemProvider.dispose();
+		if (iFolderItemProvider != null) iFolderItemProvider.dispose();
+		if (iForkItemProvider != null) iForkItemProvider.dispose();
+		if (iGeneralizationItemProvider != null) iGeneralizationItemProvider.dispose();
+		if (iGuardItemProvider != null) iGuardItemProvider.dispose();
+		if (iHandleWithDataItemProvider != null) iHandleWithDataItemProvider.dispose();
+		if (iHistoryConnectorItemProvider != null) iHistoryConnectorItemProvider.dispose();
+		if (iHyperLinkItemProvider != null) iHyperLinkItemProvider.dispose();
+		if (iInformationFlowItemProvider != null) iInformationFlowItemProvider.dispose();
+		if (iInformationItemItemProvider != null) iInformationItemItemProvider.dispose();
+		if (iInstanceItemProvider != null) iInstanceItemProvider.dispose();
+		if (iInstanceSlotItemProvider != null) iInstanceSlotItemProvider.dispose();
+		if (iInstanceSpecificationItemProvider != null) iInstanceSpecificationItemProvider.dispose();
+		if (iInstanceValueItemProvider != null) iInstanceValueItemProvider.dispose();
+		if (iInteractionOccurrenceItemProvider != null) iInteractionOccurrenceItemProvider.dispose();
+		if (iInteractionOperandItemProvider != null) iInteractionOperandItemProvider.dispose();
+		if (iInteractionOperatorItemProvider != null) iInteractionOperatorItemProvider.dispose();
+		if (iInterfaceItemItemProvider != null) iInterfaceItemItemProvider.dispose();
+		if (iInterfaceItemTriggerItemProvider != null) iInterfaceItemTriggerItemProvider.dispose();
+		if (iInternalHyperlinkItemProvider != null) iInternalHyperlinkItemProvider.dispose();
+		if (iLabelItemProvider != null) iLabelItemProvider.dispose();
+		if (iLinkItemProvider != null) iLinkItemProvider.dispose();
+		if (iLinkInstanceItemProvider != null) iLinkInstanceItemProvider.dispose();
+		if (iLiteralSpecificationItemProvider != null) iLiteralSpecificationItemProvider.dispose();
+		if (imHyperLinkItemProvider != null) imHyperLinkItemProvider.dispose();
+		if (imscItemProvider != null) imscItemProvider.dispose();
+		if (iMatrixInstanceItemProvider != null) iMatrixInstanceItemProvider.dispose();
+		if (iMatrixLayoutItemProvider != null) iMatrixLayoutItemProvider.dispose();
+		if (iMatrixViewItemProvider != null) iMatrixViewItemProvider.dispose();
+		if (iMessageItemProvider != null) iMessageItemProvider.dispose();
+		if (iMessagePointItemProvider != null) iMessagePointItemProvider.dispose();
+		if (iMetaLinkHandleItemProvider != null) iMetaLinkHandleItemProvider.dispose();
+		if (iModelElementItemProvider != null) iModelElementItemProvider.dispose();
+		if (iModuleItemProvider != null) iModuleItemProvider.dispose();
+		if (iMultiplicityItemItemProvider != null) iMultiplicityItemItemProvider.dispose();
+		if (iNodeItemProvider != null) iNodeItemProvider.dispose();
+		if (iObjectLinkItemProvider != null) iObjectLinkItemProvider.dispose();
+		if (iObjectLinkHandleItemProvider != null) iObjectLinkHandleItemProvider.dispose();
+		if (iObjectModelDiagramItemProvider != null) iObjectModelDiagramItemProvider.dispose();
+		if (iObjectNodeItemProvider != null) iObjectNodeItemProvider.dispose();
+		if (iOperationItemProvider != null) iOperationItemProvider.dispose();
+		if (iPackageItemProvider != null) iPackageItemProvider.dispose();
+		if (iPanelDiagramItemProvider != null) iPanelDiagramItemProvider.dispose();
+		if (iPartItemProvider != null) iPartItemProvider.dispose();
+		if (iPinItemProvider != null) iPinItemProvider.dispose();
+		if (iPortItemProvider != null) iPortItemProvider.dispose();
+		if (iPrimitiveOperationItemProvider != null) iPrimitiveOperationItemProvider.dispose();
+		if (iProfileItemProvider != null) iProfileItemProvider.dispose();
+		if (iProjectItemProvider != null) iProjectItemProvider.dispose();
+		if (iPropertyItemProvider != null) iPropertyItemProvider.dispose();
+		if (iPropertyContainerItemProvider != null) iPropertyContainerItemProvider.dispose();
+		if (iPropertyMetaclassItemProvider != null) iPropertyMetaclassItemProvider.dispose();
+		if (iPropertySubjectItemProvider != null) iPropertySubjectItemProvider.dispose();
+		if (iReceptionItemProvider != null) iReceptionItemProvider.dispose();
+		if (iReferenceActivityItemProvider != null) iReferenceActivityItemProvider.dispose();
+		if (iRelationItemProvider != null) iRelationItemProvider.dispose();
+		if (iRequirementItemProvider != null) iRequirementItemProvider.dispose();
+		if (iSendActionItemProvider != null) iSendActionItemProvider.dispose();
+		if (iSequenceDiagramItemProvider != null) iSequenceDiagramItemProvider.dispose();
+		if (iSlotItemProvider != null) iSlotItemProvider.dispose();
+		if (iStateItemProvider != null) iStateItemProvider.dispose();
+		if (iStateChartItemProvider != null) iStateChartItemProvider.dispose();
+		if (iStateChartDiagramItemProvider != null) iStateChartDiagramItemProvider.dispose();
+		if (iStateVertexItemProvider != null) iStateVertexItemProvider.dispose();
+		if (iStereotypeItemProvider != null) iStereotypeItemProvider.dispose();
+		if (iStructureDiagramItemProvider != null) iStructureDiagramItemProvider.dispose();
+		if (iSubsystemItemProvider != null) iSubsystemItemProvider.dispose();
+		if (iSwimlaneItemProvider != null) iSwimlaneItemProvider.dispose();
+		if (iSysMLPortItemProvider != null) iSysMLPortItemProvider.dispose();
+		if (iTableInstanceItemProvider != null) iTableInstanceItemProvider.dispose();
+		if (iTableLayoutItemProvider != null) iTableLayoutItemProvider.dispose();
+		if (iTableViewItemProvider != null) iTableViewItemProvider.dispose();
+		if (iTagItemProvider != null) iTagItemProvider.dispose();
+		if (iTemplateInstItemProvider != null) iTemplateInstItemProvider.dispose();
+		if (iTemplateInstParamItemProvider != null) iTemplateInstParamItemProvider.dispose();
+		if (iTemplateInstantiationItemProvider != null) iTemplateInstantiationItemProvider.dispose();
+		if (iTemplateInstantiationParameterItemProvider != null) iTemplateInstantiationParameterItemProvider.dispose();
+		if (iTemplateParameterItemProvider != null) iTemplateParameterItemProvider.dispose();
+		if (iTimeEventItemProvider != null) iTimeEventItemProvider.dispose();
+		if (iTimeoutItemProvider != null) iTimeoutItemProvider.dispose();
+		if (iTransitionItemProvider != null) iTransitionItemProvider.dispose();
+		if (iTriggerItemProvider != null) iTriggerItemProvider.dispose();
+		if (iTriggeredItemProvider != null) iTriggeredItemProvider.dispose();
+		if (iTypeItemProvider != null) iTypeItemProvider.dispose();
+		if (iucDiagramItemProvider != null) iucDiagramItemProvider.dispose();
+		if (iUnitItemProvider != null) iUnitItemProvider.dispose();
+		if (iUseCaseItemProvider != null) iUseCaseItemProvider.dispose();
+		if (iUseCaseDiagramItemProvider != null) iUseCaseDiagramItemProvider.dispose();
+		if (iUseCaseStereoTypeItemProvider != null) iUseCaseStereoTypeItemProvider.dispose();
+		if (iValueSpecificationItemProvider != null) iValueSpecificationItemProvider.dispose();
+		if (iVariableItemProvider != null) iVariableItemProvider.dispose();
+		if (tableDataDefinitionItemProvider != null) tableDataDefinitionItemProvider.dispose();
+		if (unknownTypeItemProvider != null) unknownTypeItemProvider.dispose();
+	}
+
+}
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/UnknownTypeItemProvider.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/UnknownTypeItemProvider.java
new file mode 100755
index 0000000..901c777
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/UnknownTypeItemProvider.java
@@ -0,0 +1,130 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.provider;
+
+
+import java.util.Collection;
+import java.util.List;
+
+import org.eclipse.emf.common.notify.AdapterFactory;
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.common.util.ResourceLocator;
+
+import org.eclipse.emf.edit.provider.IEditingDomainItemProvider;
+import org.eclipse.emf.edit.provider.IItemLabelProvider;
+import org.eclipse.emf.edit.provider.IItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.IItemPropertySource;
+import org.eclipse.emf.edit.provider.IStructuredItemContentProvider;
+import org.eclipse.emf.edit.provider.ITreeItemContentProvider;
+import org.eclipse.emf.edit.provider.ItemProviderAdapter;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UnknownType} object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class UnknownTypeItemProvider 
+	extends ItemProviderAdapter
+	implements
+		IEditingDomainItemProvider,
+		IStructuredItemContentProvider,
+		ITreeItemContentProvider,
+		IItemLabelProvider,
+		IItemPropertySource {
+	/**
+	 * This constructs an instance from a factory and a notifier.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public UnknownTypeItemProvider(AdapterFactory adapterFactory) {
+		super(adapterFactory);
+	}
+
+	/**
+	 * This returns the property descriptors for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) {
+		if (itemPropertyDescriptors == null) {
+			super.getPropertyDescriptors(object);
+
+		}
+		return itemPropertyDescriptors;
+	}
+
+	/**
+	 * This returns UnknownType.gif.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object getImage(Object object) {
+		return overlayImage(object, getResourceLocator().getImage("full/obj16/UnknownType")); //$NON-NLS-1$
+	}
+
+	/**
+	 * This returns the label text for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String getText(Object object) {
+		return getString("_UI_UnknownType_type"); //$NON-NLS-1$
+	}
+	
+
+	/**
+	 * This handles model notifications by calling {@link #updateChildren} to update any cached
+	 * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void notifyChanged(Notification notification) {
+		updateChildren(notification);
+		super.notifyChanged(notification);
+	}
+
+	/**
+	 * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children
+	 * that can be created under this object.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) {
+		super.collectNewChildDescriptors(newChildDescriptors, object);
+	}
+
+	/**
+	 * Return the resource locator for this item provider's resources.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public ResourceLocator getResourceLocator() {
+		return rpymetamodelEditPlugin.INSTANCE;
+	}
+
+}
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/ValueTypeItemProvider.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/ValueTypeItemProvider.java
new file mode 100755
index 0000000..ce35a04
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/ValueTypeItemProvider.java
@@ -0,0 +1,229 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.provider;
+
+
+import java.util.Collection;
+import java.util.List;
+
+import org.eclipse.emf.common.notify.AdapterFactory;
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.common.util.ResourceLocator;
+
+import org.eclipse.emf.edit.provider.ComposeableAdapterFactory;
+import org.eclipse.emf.edit.provider.IEditingDomainItemProvider;
+import org.eclipse.emf.edit.provider.IItemLabelProvider;
+import org.eclipse.emf.edit.provider.IItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.IItemPropertySource;
+import org.eclipse.emf.edit.provider.IStructuredItemContentProvider;
+import org.eclipse.emf.edit.provider.ITreeItemContentProvider;
+import org.eclipse.emf.edit.provider.ItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.ItemProviderAdapter;
+import org.eclipse.emf.edit.provider.ViewerNotification;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ValueType;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ValueType} object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class ValueTypeItemProvider 
+	extends ItemProviderAdapter
+	implements
+		IEditingDomainItemProvider,
+		IStructuredItemContentProvider,
+		ITreeItemContentProvider,
+		IItemLabelProvider,
+		IItemPropertySource {
+	/**
+	 * This constructs an instance from a factory and a notifier.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public ValueTypeItemProvider(AdapterFactory adapterFactory) {
+		super(adapterFactory);
+	}
+
+	/**
+	 * This returns the property descriptors for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) {
+		if (itemPropertyDescriptors == null) {
+			super.getPropertyDescriptors(object);
+
+			addModifiedTimeWeakPropertyDescriptor(object);
+			addIdPropertyDescriptor(object);
+			addMyStatePropertyDescriptor(object);
+			addNamePropertyDescriptor(object);
+		}
+		return itemPropertyDescriptors;
+	}
+
+	/**
+	 * This adds a property descriptor for the Modified Time Weak feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addModifiedTimeWeakPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_ValueType_modifiedTimeWeak_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_ValueType_modifiedTimeWeak_feature", "_UI_ValueType_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getValueType_ModifiedTimeWeak(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Id feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addIdPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_ValueType_id_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_ValueType_id_feature", "_UI_ValueType_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getValueType_Id(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the My State feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addMyStatePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_ValueType_myState_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_ValueType_myState_feature", "_UI_ValueType_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getValueType_MyState(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Name feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addNamePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_ValueType_name_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_ValueType_name_feature", "_UI_ValueType_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 UMLRpyPackage.eINSTANCE.getValueType_Name(),
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This returns the label text for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String getText(Object object) {
+		String label = ((ValueType)object).getName();
+		return label == null || label.length() == 0 ?
+			getString("_UI_ValueType_type") : //$NON-NLS-1$
+			getString("_UI_ValueType_type") + " " + label; //$NON-NLS-1$ //$NON-NLS-2$
+	}
+	
+
+	/**
+	 * This handles model notifications by calling {@link #updateChildren} to update any cached
+	 * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void notifyChanged(Notification notification) {
+		updateChildren(notification);
+
+		switch (notification.getFeatureID(ValueType.class)) {
+			case UMLRpyPackage.VALUE_TYPE__MODIFIED_TIME_WEAK:
+			case UMLRpyPackage.VALUE_TYPE__ID:
+			case UMLRpyPackage.VALUE_TYPE__MY_STATE:
+			case UMLRpyPackage.VALUE_TYPE__NAME:
+				fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), false, true));
+				return;
+		}
+		super.notifyChanged(notification);
+	}
+
+	/**
+	 * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children
+	 * that can be created under this object.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) {
+		super.collectNewChildDescriptors(newChildDescriptors, object);
+	}
+
+	/**
+	 * Return the resource locator for this item provider's resources.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public ResourceLocator getResourceLocator() {
+		return rpymetamodelEditPlugin.INSTANCE;
+	}
+
+}
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/rpymetamodelEditPlugin.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/rpymetamodelEditPlugin.java
new file mode 100755
index 0000000..c1e544e
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/provider/rpymetamodelEditPlugin.java
@@ -0,0 +1,116 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.provider;
+
+import org.eclipse.emf.common.EMFPlugin;
+
+import org.eclipse.emf.common.util.ResourceLocator;
+
+import org.eclipse.emf.ecore.provider.EcoreEditPlugin;
+import org.osgi.framework.BundleActivator;
+
+/**
+ * This is the central singleton for the rpymetamodel edit plugin.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public final class rpymetamodelEditPlugin extends EMFPlugin {
+	/**
+	 * Keep track of the singleton.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public static final rpymetamodelEditPlugin INSTANCE = new rpymetamodelEditPlugin();
+
+	/**
+	 * Keep track of the singleton.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	private static Implementation plugin;
+
+	/**
+	 * Create the instance.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public rpymetamodelEditPlugin() {
+		super
+		  (new ResourceLocator [] {
+		     EcoreEditPlugin.INSTANCE,
+		   });
+	}
+
+	/**
+	 * Returns the singleton instance of the Eclipse plugin.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the singleton instance.
+	 * @generated
+	 */
+	@Override
+	public ResourceLocator getPluginResourceLocator() {
+		return plugin;
+	}
+
+	/**
+	 * Returns the singleton instance of the Eclipse plugin.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the singleton instance.
+	 * @generated
+	 */
+	public static Implementation getPlugin() {
+		return plugin;
+	}
+
+	/**
+	 * The actual implementation of the Eclipse <b>Plugin</b>.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public static class Implementation extends EclipsePlugin {
+		/**
+		 * Creates an instance.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @generated
+		 */
+		public Implementation() {
+			super();
+
+			// Remember the static instance.
+			//
+			plugin = this;
+		}
+	
+		/**
+		 * The actual implementation of the purely OSGi-compatible <b>Bundle Activator</b>.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @generated
+		 */
+		public static final class Activator extends EMFPlugin.OSGiDelegatingBundleActivator {
+			@Override
+			protected BundleActivator createBundle() {
+				return new Implementation();
+			}
+		}
+	}
+
+}
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.editor/.classpath b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.editor/.classpath
new file mode 100644
index 0000000..e4dad7e
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.editor/.classpath
@@ -0,0 +1,7 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<classpath>
+	<classpathentry kind="src" path="src-gen"/>
+	<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-1.6"/>
+	<classpathentry kind="con" path="org.eclipse.pde.core.requiredPlugins"/>
+	<classpathentry kind="output" path="bin"/>
+</classpath>
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.editor/.gitignore b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.editor/.gitignore
new file mode 100755
index 0000000..ae3c172
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.editor/.gitignore
@@ -0,0 +1 @@
+/bin/
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.editor/.project b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.editor/.project
new file mode 100644
index 0000000..f33ca11
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.editor/.project
@@ -0,0 +1,28 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<projectDescription>
+	<name>org.eclipse.papyrus.interoperability.rpy.metamodel.editor</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.jdt.core.javanature</nature>
+		<nature>org.eclipse.pde.PluginNature</nature>
+	</natures>
+</projectDescription>
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.editor/.settings/org.eclipse.jdt.core.prefs b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.editor/.settings/org.eclipse.jdt.core.prefs
new file mode 100644
index 0000000..b3aa6d6
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.editor/.settings/org.eclipse.jdt.core.prefs
@@ -0,0 +1,291 @@
+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
+org.eclipse.jdt.core.formatter.align_type_members_on_columns=false
+org.eclipse.jdt.core.formatter.alignment_for_arguments_in_allocation_expression=16
+org.eclipse.jdt.core.formatter.alignment_for_arguments_in_annotation=0
+org.eclipse.jdt.core.formatter.alignment_for_arguments_in_enum_constant=16
+org.eclipse.jdt.core.formatter.alignment_for_arguments_in_explicit_constructor_call=16
+org.eclipse.jdt.core.formatter.alignment_for_arguments_in_method_invocation=16
+org.eclipse.jdt.core.formatter.alignment_for_arguments_in_qualified_allocation_expression=16
+org.eclipse.jdt.core.formatter.alignment_for_assignment=0
+org.eclipse.jdt.core.formatter.alignment_for_binary_expression=16
+org.eclipse.jdt.core.formatter.alignment_for_compact_if=16
+org.eclipse.jdt.core.formatter.alignment_for_conditional_expression=80
+org.eclipse.jdt.core.formatter.alignment_for_enum_constants=0
+org.eclipse.jdt.core.formatter.alignment_for_expressions_in_array_initializer=16
+org.eclipse.jdt.core.formatter.alignment_for_method_declaration=0
+org.eclipse.jdt.core.formatter.alignment_for_multiple_fields=16
+org.eclipse.jdt.core.formatter.alignment_for_parameters_in_constructor_declaration=16
+org.eclipse.jdt.core.formatter.alignment_for_parameters_in_method_declaration=16
+org.eclipse.jdt.core.formatter.alignment_for_resources_in_try=80
+org.eclipse.jdt.core.formatter.alignment_for_selector_in_method_invocation=16
+org.eclipse.jdt.core.formatter.alignment_for_superclass_in_type_declaration=16
+org.eclipse.jdt.core.formatter.alignment_for_superinterfaces_in_enum_declaration=16
+org.eclipse.jdt.core.formatter.alignment_for_superinterfaces_in_type_declaration=16
+org.eclipse.jdt.core.formatter.alignment_for_throws_clause_in_constructor_declaration=16
+org.eclipse.jdt.core.formatter.alignment_for_throws_clause_in_method_declaration=16
+org.eclipse.jdt.core.formatter.alignment_for_union_type_in_multicatch=16
+org.eclipse.jdt.core.formatter.blank_lines_after_imports=1
+org.eclipse.jdt.core.formatter.blank_lines_after_package=1
+org.eclipse.jdt.core.formatter.blank_lines_before_field=0
+org.eclipse.jdt.core.formatter.blank_lines_before_first_class_body_declaration=0
+org.eclipse.jdt.core.formatter.blank_lines_before_imports=1
+org.eclipse.jdt.core.formatter.blank_lines_before_member_type=1
+org.eclipse.jdt.core.formatter.blank_lines_before_method=1
+org.eclipse.jdt.core.formatter.blank_lines_before_new_chunk=1
+org.eclipse.jdt.core.formatter.blank_lines_before_package=0
+org.eclipse.jdt.core.formatter.blank_lines_between_import_groups=1
+org.eclipse.jdt.core.formatter.blank_lines_between_type_declarations=1
+org.eclipse.jdt.core.formatter.brace_position_for_annotation_type_declaration=end_of_line
+org.eclipse.jdt.core.formatter.brace_position_for_anonymous_type_declaration=end_of_line
+org.eclipse.jdt.core.formatter.brace_position_for_array_initializer=end_of_line
+org.eclipse.jdt.core.formatter.brace_position_for_block=end_of_line
+org.eclipse.jdt.core.formatter.brace_position_for_block_in_case=end_of_line
+org.eclipse.jdt.core.formatter.brace_position_for_constructor_declaration=end_of_line
+org.eclipse.jdt.core.formatter.brace_position_for_enum_constant=end_of_line
+org.eclipse.jdt.core.formatter.brace_position_for_enum_declaration=end_of_line
+org.eclipse.jdt.core.formatter.brace_position_for_lambda_body=end_of_line
+org.eclipse.jdt.core.formatter.brace_position_for_method_declaration=end_of_line
+org.eclipse.jdt.core.formatter.brace_position_for_switch=end_of_line
+org.eclipse.jdt.core.formatter.brace_position_for_type_declaration=end_of_line
+org.eclipse.jdt.core.formatter.comment.clear_blank_lines_in_block_comment=false
+org.eclipse.jdt.core.formatter.comment.clear_blank_lines_in_javadoc_comment=false
+org.eclipse.jdt.core.formatter.comment.format_block_comments=true
+org.eclipse.jdt.core.formatter.comment.format_header=false
+org.eclipse.jdt.core.formatter.comment.format_html=true
+org.eclipse.jdt.core.formatter.comment.format_javadoc_comments=true
+org.eclipse.jdt.core.formatter.comment.format_line_comments=true
+org.eclipse.jdt.core.formatter.comment.format_source_code=true
+org.eclipse.jdt.core.formatter.comment.indent_parameter_description=true
+org.eclipse.jdt.core.formatter.comment.indent_root_tags=true
+org.eclipse.jdt.core.formatter.comment.insert_new_line_before_root_tags=insert
+org.eclipse.jdt.core.formatter.comment.insert_new_line_for_parameter=insert
+org.eclipse.jdt.core.formatter.comment.line_length=260
+org.eclipse.jdt.core.formatter.comment.new_lines_at_block_boundaries=true
+org.eclipse.jdt.core.formatter.comment.new_lines_at_javadoc_boundaries=true
+org.eclipse.jdt.core.formatter.comment.preserve_white_space_between_code_and_line_comments=false
+org.eclipse.jdt.core.formatter.compact_else_if=true
+org.eclipse.jdt.core.formatter.continuation_indentation=2
+org.eclipse.jdt.core.formatter.continuation_indentation_for_array_initializer=2
+org.eclipse.jdt.core.formatter.disabling_tag=@formatter\:off
+org.eclipse.jdt.core.formatter.enabling_tag=@formatter\:on
+org.eclipse.jdt.core.formatter.format_guardian_clause_on_one_line=false
+org.eclipse.jdt.core.formatter.format_line_comment_starting_on_first_column=true
+org.eclipse.jdt.core.formatter.indent_body_declarations_compare_to_annotation_declaration_header=true
+org.eclipse.jdt.core.formatter.indent_body_declarations_compare_to_enum_constant_header=true
+org.eclipse.jdt.core.formatter.indent_body_declarations_compare_to_enum_declaration_header=true
+org.eclipse.jdt.core.formatter.indent_body_declarations_compare_to_type_header=true
+org.eclipse.jdt.core.formatter.indent_breaks_compare_to_cases=true
+org.eclipse.jdt.core.formatter.indent_empty_lines=false
+org.eclipse.jdt.core.formatter.indent_statements_compare_to_block=true
+org.eclipse.jdt.core.formatter.indent_statements_compare_to_body=true
+org.eclipse.jdt.core.formatter.indent_switchstatements_compare_to_cases=true
+org.eclipse.jdt.core.formatter.indent_switchstatements_compare_to_switch=false
+org.eclipse.jdt.core.formatter.indentation.size=4
+org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_field=insert
+org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_local_variable=insert
+org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_method=insert
+org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_package=insert
+org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_parameter=do not insert
+org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_type=insert
+org.eclipse.jdt.core.formatter.insert_new_line_after_label=do not insert
+org.eclipse.jdt.core.formatter.insert_new_line_after_opening_brace_in_array_initializer=do not insert
+org.eclipse.jdt.core.formatter.insert_new_line_after_type_annotation=do not insert
+org.eclipse.jdt.core.formatter.insert_new_line_at_end_of_file_if_missing=do not insert
+org.eclipse.jdt.core.formatter.insert_new_line_before_catch_in_try_statement=do not insert
+org.eclipse.jdt.core.formatter.insert_new_line_before_closing_brace_in_array_initializer=do not insert
+org.eclipse.jdt.core.formatter.insert_new_line_before_else_in_if_statement=do not insert
+org.eclipse.jdt.core.formatter.insert_new_line_before_finally_in_try_statement=do not insert
+org.eclipse.jdt.core.formatter.insert_new_line_before_while_in_do_statement=do not insert
+org.eclipse.jdt.core.formatter.insert_new_line_in_empty_annotation_declaration=insert
+org.eclipse.jdt.core.formatter.insert_new_line_in_empty_anonymous_type_declaration=insert
+org.eclipse.jdt.core.formatter.insert_new_line_in_empty_block=insert
+org.eclipse.jdt.core.formatter.insert_new_line_in_empty_enum_constant=insert
+org.eclipse.jdt.core.formatter.insert_new_line_in_empty_enum_declaration=insert
+org.eclipse.jdt.core.formatter.insert_new_line_in_empty_method_body=insert
+org.eclipse.jdt.core.formatter.insert_new_line_in_empty_type_declaration=insert
+org.eclipse.jdt.core.formatter.insert_space_after_and_in_type_parameter=insert
+org.eclipse.jdt.core.formatter.insert_space_after_assignment_operator=insert
+org.eclipse.jdt.core.formatter.insert_space_after_at_in_annotation=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_at_in_annotation_type_declaration=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_binary_operator=insert
+org.eclipse.jdt.core.formatter.insert_space_after_closing_angle_bracket_in_type_arguments=insert
+org.eclipse.jdt.core.formatter.insert_space_after_closing_angle_bracket_in_type_parameters=insert
+org.eclipse.jdt.core.formatter.insert_space_after_closing_brace_in_block=insert
+org.eclipse.jdt.core.formatter.insert_space_after_closing_paren_in_cast=insert
+org.eclipse.jdt.core.formatter.insert_space_after_colon_in_assert=insert
+org.eclipse.jdt.core.formatter.insert_space_after_colon_in_case=insert
+org.eclipse.jdt.core.formatter.insert_space_after_colon_in_conditional=insert
+org.eclipse.jdt.core.formatter.insert_space_after_colon_in_for=insert
+org.eclipse.jdt.core.formatter.insert_space_after_colon_in_labeled_statement=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_allocation_expression=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_annotation=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_array_initializer=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_constructor_declaration_parameters=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_constructor_declaration_throws=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_enum_constant_arguments=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_enum_declarations=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_explicitconstructorcall_arguments=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_for_increments=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_for_inits=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_method_declaration_parameters=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_method_declaration_throws=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_method_invocation_arguments=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_multiple_field_declarations=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_multiple_local_declarations=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_parameterized_type_reference=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_superinterfaces=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_type_arguments=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_type_parameters=insert
+org.eclipse.jdt.core.formatter.insert_space_after_ellipsis=insert
+org.eclipse.jdt.core.formatter.insert_space_after_lambda_arrow=insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_angle_bracket_in_parameterized_type_reference=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_angle_bracket_in_type_arguments=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_angle_bracket_in_type_parameters=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_brace_in_array_initializer=insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_bracket_in_array_allocation_expression=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_bracket_in_array_reference=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_annotation=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_cast=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_catch=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_constructor_declaration=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_enum_constant=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_for=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_if=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_method_declaration=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_method_invocation=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_parenthesized_expression=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_switch=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_synchronized=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_try=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_while=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_postfix_operator=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_prefix_operator=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_question_in_conditional=insert
+org.eclipse.jdt.core.formatter.insert_space_after_question_in_wildcard=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_semicolon_in_for=insert
+org.eclipse.jdt.core.formatter.insert_space_after_semicolon_in_try_resources=insert
+org.eclipse.jdt.core.formatter.insert_space_after_unary_operator=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_and_in_type_parameter=insert
+org.eclipse.jdt.core.formatter.insert_space_before_assignment_operator=insert
+org.eclipse.jdt.core.formatter.insert_space_before_at_in_annotation_type_declaration=insert
+org.eclipse.jdt.core.formatter.insert_space_before_binary_operator=insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_angle_bracket_in_parameterized_type_reference=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_angle_bracket_in_type_arguments=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_angle_bracket_in_type_parameters=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_brace_in_array_initializer=insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_bracket_in_array_allocation_expression=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_bracket_in_array_reference=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_annotation=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_cast=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_catch=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_constructor_declaration=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_enum_constant=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_for=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_if=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_method_declaration=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_method_invocation=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_parenthesized_expression=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_switch=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_synchronized=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_try=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_while=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_colon_in_assert=insert
+org.eclipse.jdt.core.formatter.insert_space_before_colon_in_case=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_colon_in_conditional=insert
+org.eclipse.jdt.core.formatter.insert_space_before_colon_in_default=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_colon_in_for=insert
+org.eclipse.jdt.core.formatter.insert_space_before_colon_in_labeled_statement=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_allocation_expression=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_annotation=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_array_initializer=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_constructor_declaration_parameters=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_constructor_declaration_throws=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_enum_constant_arguments=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_enum_declarations=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_explicitconstructorcall_arguments=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_for_increments=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_for_inits=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_method_declaration_parameters=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_method_declaration_throws=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_method_invocation_arguments=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_multiple_field_declarations=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_multiple_local_declarations=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_parameterized_type_reference=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_superinterfaces=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_type_arguments=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_type_parameters=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_ellipsis=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_lambda_arrow=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_angle_bracket_in_parameterized_type_reference=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_angle_bracket_in_type_arguments=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_angle_bracket_in_type_parameters=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_annotation_type_declaration=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_anonymous_type_declaration=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_array_initializer=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_block=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_constructor_declaration=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_enum_constant=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_enum_declaration=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_method_declaration=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_switch=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_type_declaration=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_bracket_in_array_allocation_expression=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_bracket_in_array_reference=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_bracket_in_array_type_reference=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_annotation=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_annotation_type_member_declaration=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_catch=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_constructor_declaration=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_enum_constant=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_for=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_if=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_method_declaration=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_method_invocation=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_parenthesized_expression=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_switch=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_synchronized=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_try=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_while=insert
+org.eclipse.jdt.core.formatter.insert_space_before_parenthesized_expression_in_return=insert
+org.eclipse.jdt.core.formatter.insert_space_before_parenthesized_expression_in_throw=insert
+org.eclipse.jdt.core.formatter.insert_space_before_postfix_operator=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_prefix_operator=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_question_in_conditional=insert
+org.eclipse.jdt.core.formatter.insert_space_before_question_in_wildcard=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_semicolon=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_semicolon_in_for=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_semicolon_in_try_resources=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_unary_operator=do not insert
+org.eclipse.jdt.core.formatter.insert_space_between_brackets_in_array_type_reference=do not insert
+org.eclipse.jdt.core.formatter.insert_space_between_empty_braces_in_array_initializer=do not insert
+org.eclipse.jdt.core.formatter.insert_space_between_empty_brackets_in_array_allocation_expression=do not insert
+org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_annotation_type_member_declaration=do not insert
+org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_constructor_declaration=do not insert
+org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_enum_constant=do not insert
+org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_method_declaration=do not insert
+org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_method_invocation=do not insert
+org.eclipse.jdt.core.formatter.join_lines_in_comments=false
+org.eclipse.jdt.core.formatter.join_wrapped_lines=false
+org.eclipse.jdt.core.formatter.keep_else_statement_on_same_line=false
+org.eclipse.jdt.core.formatter.keep_empty_array_initializer_on_one_line=false
+org.eclipse.jdt.core.formatter.keep_imple_if_on_one_line=false
+org.eclipse.jdt.core.formatter.keep_then_statement_on_same_line=false
+org.eclipse.jdt.core.formatter.lineSplit=260
+org.eclipse.jdt.core.formatter.never_indent_block_comments_on_first_column=false
+org.eclipse.jdt.core.formatter.never_indent_line_comments_on_first_column=false
+org.eclipse.jdt.core.formatter.number_of_blank_lines_at_beginning_of_method_body=0
+org.eclipse.jdt.core.formatter.number_of_empty_lines_to_preserve=5
+org.eclipse.jdt.core.formatter.put_empty_statement_on_new_line=true
+org.eclipse.jdt.core.formatter.tabulation.char=tab
+org.eclipse.jdt.core.formatter.tabulation.size=4
+org.eclipse.jdt.core.formatter.use_on_off_tags=false
+org.eclipse.jdt.core.formatter.use_tabs_only_for_leading_indentations=false
+org.eclipse.jdt.core.formatter.wrap_before_binary_operator=true
+org.eclipse.jdt.core.formatter.wrap_before_or_operator_multicatch=true
+org.eclipse.jdt.core.formatter.wrap_outer_expressions_when_nested=true
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.editor/.settings/org.eclipse.jdt.ui.prefs b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.editor/.settings/org.eclipse.jdt.ui.prefs
new file mode 100644
index 0000000..954281d
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.editor/.settings/org.eclipse.jdt.ui.prefs
@@ -0,0 +1,68 @@
+cleanup.add_default_serial_version_id=true
+cleanup.add_generated_serial_version_id=false
+cleanup.add_missing_annotations=true
+cleanup.add_missing_deprecated_annotations=true
+cleanup.add_missing_methods=false
+cleanup.add_missing_nls_tags=false
+cleanup.add_missing_override_annotations=true
+cleanup.add_missing_override_annotations_interface_methods=true
+cleanup.add_serial_version_id=false
+cleanup.always_use_blocks=true
+cleanup.always_use_parentheses_in_expressions=false
+cleanup.always_use_this_for_non_static_field_access=false
+cleanup.always_use_this_for_non_static_method_access=false
+cleanup.convert_functional_interfaces=false
+cleanup.convert_to_enhanced_for_loop=false
+cleanup.correct_indentation=false
+cleanup.format_source_code=false
+cleanup.format_source_code_changes_only=false
+cleanup.insert_inferred_type_arguments=false
+cleanup.make_local_variable_final=true
+cleanup.make_parameters_final=false
+cleanup.make_private_fields_final=true
+cleanup.make_type_abstract_if_missing_method=false
+cleanup.make_variable_declarations_final=false
+cleanup.never_use_blocks=false
+cleanup.never_use_parentheses_in_expressions=true
+cleanup.organize_imports=false
+cleanup.qualify_static_field_accesses_with_declaring_class=false
+cleanup.qualify_static_member_accesses_through_instances_with_declaring_class=true
+cleanup.qualify_static_member_accesses_through_subtypes_with_declaring_class=true
+cleanup.qualify_static_member_accesses_with_declaring_class=true
+cleanup.qualify_static_method_accesses_with_declaring_class=false
+cleanup.remove_private_constructors=true
+cleanup.remove_redundant_type_arguments=true
+cleanup.remove_trailing_whitespaces=true
+cleanup.remove_trailing_whitespaces_all=true
+cleanup.remove_trailing_whitespaces_ignore_empty=false
+cleanup.remove_unnecessary_casts=true
+cleanup.remove_unnecessary_nls_tags=true
+cleanup.remove_unused_imports=true
+cleanup.remove_unused_local_variables=false
+cleanup.remove_unused_private_fields=true
+cleanup.remove_unused_private_members=false
+cleanup.remove_unused_private_methods=true
+cleanup.remove_unused_private_types=true
+cleanup.sort_members=false
+cleanup.sort_members_all=false
+cleanup.use_anonymous_class_creation=false
+cleanup.use_blocks=true
+cleanup.use_blocks_only_for_return_and_throw=false
+cleanup.use_lambda=true
+cleanup.use_parentheses_in_expressions=false
+cleanup.use_this_for_non_static_field_access=false
+cleanup.use_this_for_non_static_field_access_only_if_necessary=true
+cleanup.use_this_for_non_static_method_access=false
+cleanup.use_this_for_non_static_method_access_only_if_necessary=true
+cleanup.use_type_arguments=false
+cleanup_profile=_Papyrus
+cleanup_settings_version=2
+eclipse.preferences.version=1
+formatter_profile=_Papyrus
+formatter_settings_version=12
+org.eclipse.jdt.ui.ignorelowercasenames=true
+org.eclipse.jdt.ui.importorder=java;javax;org;com;
+org.eclipse.jdt.ui.javadoc=true
+org.eclipse.jdt.ui.ondemandthreshold=99
+org.eclipse.jdt.ui.staticondemandthreshold=99
+org.eclipse.jdt.ui.text.custom_code_templates=<?xml version\="1.0" encoding\="UTF-8" standalone\="no"?><templates><template autoinsert\="true" context\="gettercomment_context" deleted\="false" description\="Comment for getter method" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.gettercomment" name\="gettercomment">/**\n * @return the ${bare_field_name}\n */</template><template autoinsert\="true" context\="settercomment_context" deleted\="false" description\="Comment for setter method" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.settercomment" name\="settercomment">/**\n * @param ${param} the ${bare_field_name} to set\n */</template><template autoinsert\="false" context\="constructorcomment_context" deleted\="false" description\="Comment for created constructors" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.constructorcomment" name\="constructorcomment">/**\n * Constructor.\n *\n * ${tags}\n */</template><template autoinsert\="false" context\="filecomment_context" deleted\="false" description\="Comment for created Java files" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.filecomment" name\="filecomment">/*****************************************************************************\n * Copyright (c) ${year} CEA LIST and others.\n * \n * All rights reserved. This program and the accompanying materials\n * are made available under the terms of the Eclipse Public License v1.0\n * which accompanies this distribution, and is available at\n * http\://www.eclipse.org/legal/epl-v10.html\n *\n * Contributors\:\n *   CEA LIST - Initial API and implementation\n *   \n *****************************************************************************/\n</template><template autoinsert\="true" context\="typecomment_context" deleted\="false" description\="Comment for created types" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.typecomment" name\="typecomment">/**\n * @author ${user}\n *\n * ${tags}\n */</template><template autoinsert\="true" context\="fieldcomment_context" deleted\="false" description\="Comment for fields" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.fieldcomment" name\="fieldcomment">/**\n * \n */</template><template autoinsert\="true" context\="methodcomment_context" deleted\="false" description\="Comment for non-overriding methods" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.methodcomment" name\="methodcomment">/**\n * ${tags}\n */</template><template autoinsert\="false" context\="overridecomment_context" deleted\="false" description\="Comment for overriding methods" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.overridecomment" name\="overridecomment">/**\n * ${see_to_overridden}\n *\n * ${tags}\n */</template><template autoinsert\="false" context\="delegatecomment_context" deleted\="false" description\="Comment for delegate methods" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.delegatecomment" name\="delegatecomment">/**\n * ${see_to_target}\n *\n * ${tags}\n */</template><template autoinsert\="true" context\="newtype_context" deleted\="false" description\="Newly created files" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.newtype" name\="newtype">${filecomment}\n${package_declaration}\n\n${typecomment}\n${type_declaration}</template><template autoinsert\="true" context\="classbody_context" deleted\="false" description\="Code in new class type bodies" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.classbody" name\="classbody">\n</template><template autoinsert\="true" context\="interfacebody_context" deleted\="false" description\="Code in new interface type bodies" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.interfacebody" name\="interfacebody">\n</template><template autoinsert\="true" context\="enumbody_context" deleted\="false" description\="Code in new enum type bodies" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.enumbody" name\="enumbody">\n</template><template autoinsert\="true" context\="annotationbody_context" deleted\="false" description\="Code in new annotation type bodies" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.annotationbody" name\="annotationbody">\n</template><template autoinsert\="true" context\="catchblock_context" deleted\="false" description\="Code in new catch blocks" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.catchblock" name\="catchblock">// ${todo} Auto-generated catch block\n${exception_var}.printStackTrace();</template><template autoinsert\="true" context\="methodbody_context" deleted\="false" description\="Code in created method stubs" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.methodbody" name\="methodbody">// ${todo} Auto-generated method stub\n${body_statement}</template><template autoinsert\="true" context\="constructorbody_context" deleted\="false" description\="Code in created constructor stubs" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.constructorbody" name\="constructorbody">${body_statement}\n// ${todo} Auto-generated constructor stub</template><template autoinsert\="true" context\="getterbody_context" deleted\="false" description\="Code in created getters" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.getterbody" name\="getterbody">return ${field};</template><template autoinsert\="true" context\="setterbody_context" deleted\="false" description\="Code in created setters" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.setterbody" name\="setterbody">${field} \= ${param};</template></templates>
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.editor/.settings/org.eclipse.pde.api.tools.prefs b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.editor/.settings/org.eclipse.pde.api.tools.prefs
new file mode 100644
index 0000000..23fb95e
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.editor/.settings/org.eclipse.pde.api.tools.prefs
@@ -0,0 +1,98 @@
+ANNOTATION_ELEMENT_TYPE_ADDED_METHOD_WITHOUT_DEFAULT_VALUE=Error
+ANNOTATION_ELEMENT_TYPE_CHANGED_TYPE_CONVERSION=Error
+ANNOTATION_ELEMENT_TYPE_REMOVED_FIELD=Error
+ANNOTATION_ELEMENT_TYPE_REMOVED_METHOD=Error
+ANNOTATION_ELEMENT_TYPE_REMOVED_TYPE_MEMBER=Error
+API_COMPONENT_ELEMENT_TYPE_REMOVED_API_TYPE=Error
+API_COMPONENT_ELEMENT_TYPE_REMOVED_REEXPORTED_API_TYPE=Error
+API_COMPONENT_ELEMENT_TYPE_REMOVED_REEXPORTED_TYPE=Error
+API_COMPONENT_ELEMENT_TYPE_REMOVED_TYPE=Error
+API_USE_SCAN_FIELD_SEVERITY=Error
+API_USE_SCAN_METHOD_SEVERITY=Error
+API_USE_SCAN_TYPE_SEVERITY=Error
+CLASS_ELEMENT_TYPE_ADDED_METHOD=Error
+CLASS_ELEMENT_TYPE_ADDED_RESTRICTIONS=Error
+CLASS_ELEMENT_TYPE_ADDED_TYPE_PARAMETER=Error
+CLASS_ELEMENT_TYPE_CHANGED_CONTRACTED_SUPERINTERFACES_SET=Error
+CLASS_ELEMENT_TYPE_CHANGED_DECREASE_ACCESS=Error
+CLASS_ELEMENT_TYPE_CHANGED_NON_ABSTRACT_TO_ABSTRACT=Error
+CLASS_ELEMENT_TYPE_CHANGED_NON_FINAL_TO_FINAL=Error
+CLASS_ELEMENT_TYPE_CHANGED_TYPE_CONVERSION=Error
+CLASS_ELEMENT_TYPE_REMOVED_CONSTRUCTOR=Error
+CLASS_ELEMENT_TYPE_REMOVED_FIELD=Error
+CLASS_ELEMENT_TYPE_REMOVED_METHOD=Error
+CLASS_ELEMENT_TYPE_REMOVED_SUPERCLASS=Error
+CLASS_ELEMENT_TYPE_REMOVED_TYPE_MEMBER=Error
+CLASS_ELEMENT_TYPE_REMOVED_TYPE_PARAMETER=Error
+CONSTRUCTOR_ELEMENT_TYPE_ADDED_TYPE_PARAMETER=Error
+CONSTRUCTOR_ELEMENT_TYPE_CHANGED_DECREASE_ACCESS=Error
+CONSTRUCTOR_ELEMENT_TYPE_CHANGED_VARARGS_TO_ARRAY=Error
+CONSTRUCTOR_ELEMENT_TYPE_REMOVED_TYPE_PARAMETER=Error
+ENUM_ELEMENT_TYPE_CHANGED_CONTRACTED_SUPERINTERFACES_SET=Error
+ENUM_ELEMENT_TYPE_CHANGED_TYPE_CONVERSION=Error
+ENUM_ELEMENT_TYPE_REMOVED_ENUM_CONSTANT=Error
+ENUM_ELEMENT_TYPE_REMOVED_FIELD=Error
+ENUM_ELEMENT_TYPE_REMOVED_METHOD=Error
+ENUM_ELEMENT_TYPE_REMOVED_TYPE_MEMBER=Error
+FIELD_ELEMENT_TYPE_ADDED_VALUE=Error
+FIELD_ELEMENT_TYPE_CHANGED_DECREASE_ACCESS=Error
+FIELD_ELEMENT_TYPE_CHANGED_FINAL_TO_NON_FINAL_STATIC_CONSTANT=Error
+FIELD_ELEMENT_TYPE_CHANGED_NON_FINAL_TO_FINAL=Error
+FIELD_ELEMENT_TYPE_CHANGED_NON_STATIC_TO_STATIC=Error
+FIELD_ELEMENT_TYPE_CHANGED_STATIC_TO_NON_STATIC=Error
+FIELD_ELEMENT_TYPE_CHANGED_TYPE=Error
+FIELD_ELEMENT_TYPE_CHANGED_VALUE=Error
+FIELD_ELEMENT_TYPE_REMOVED_TYPE_ARGUMENT=Error
+FIELD_ELEMENT_TYPE_REMOVED_VALUE=Error
+ILLEGAL_EXTEND=Warning
+ILLEGAL_IMPLEMENT=Warning
+ILLEGAL_INSTANTIATE=Warning
+ILLEGAL_OVERRIDE=Warning
+ILLEGAL_REFERENCE=Warning
+INTERFACE_ELEMENT_TYPE_ADDED_FIELD=Ignore
+INTERFACE_ELEMENT_TYPE_ADDED_METHOD=Error
+INTERFACE_ELEMENT_TYPE_ADDED_RESTRICTIONS=Error
+INTERFACE_ELEMENT_TYPE_ADDED_SUPER_INTERFACE_WITH_METHODS=Error
+INTERFACE_ELEMENT_TYPE_ADDED_TYPE_PARAMETER=Error
+INTERFACE_ELEMENT_TYPE_CHANGED_CONTRACTED_SUPERINTERFACES_SET=Error
+INTERFACE_ELEMENT_TYPE_CHANGED_TYPE_CONVERSION=Error
+INTERFACE_ELEMENT_TYPE_REMOVED_FIELD=Error
+INTERFACE_ELEMENT_TYPE_REMOVED_METHOD=Error
+INTERFACE_ELEMENT_TYPE_REMOVED_TYPE_MEMBER=Error
+INTERFACE_ELEMENT_TYPE_REMOVED_TYPE_PARAMETER=Error
+INVALID_ANNOTATION=Ignore
+INVALID_JAVADOC_TAG=Ignore
+INVALID_REFERENCE_IN_SYSTEM_LIBRARIES=Ignore
+LEAK_EXTEND=Warning
+LEAK_FIELD_DECL=Warning
+LEAK_IMPLEMENT=Warning
+LEAK_METHOD_PARAM=Warning
+LEAK_METHOD_RETURN_TYPE=Warning
+METHOD_ELEMENT_TYPE_ADDED_RESTRICTIONS=Error
+METHOD_ELEMENT_TYPE_ADDED_TYPE_PARAMETER=Error
+METHOD_ELEMENT_TYPE_CHANGED_DECREASE_ACCESS=Error
+METHOD_ELEMENT_TYPE_CHANGED_NON_ABSTRACT_TO_ABSTRACT=Error
+METHOD_ELEMENT_TYPE_CHANGED_NON_FINAL_TO_FINAL=Error
+METHOD_ELEMENT_TYPE_CHANGED_NON_STATIC_TO_STATIC=Error
+METHOD_ELEMENT_TYPE_CHANGED_STATIC_TO_NON_STATIC=Error
+METHOD_ELEMENT_TYPE_CHANGED_VARARGS_TO_ARRAY=Error
+METHOD_ELEMENT_TYPE_REMOVED_ANNOTATION_DEFAULT_VALUE=Error
+METHOD_ELEMENT_TYPE_REMOVED_TYPE_PARAMETER=Error
+MISSING_EE_DESCRIPTIONS=Error
+TYPE_PARAMETER_ELEMENT_TYPE_ADDED_CLASS_BOUND=Error
+TYPE_PARAMETER_ELEMENT_TYPE_ADDED_INTERFACE_BOUND=Error
+TYPE_PARAMETER_ELEMENT_TYPE_CHANGED_CLASS_BOUND=Error
+TYPE_PARAMETER_ELEMENT_TYPE_CHANGED_INTERFACE_BOUND=Error
+TYPE_PARAMETER_ELEMENT_TYPE_REMOVED_CLASS_BOUND=Error
+TYPE_PARAMETER_ELEMENT_TYPE_REMOVED_INTERFACE_BOUND=Error
+UNUSED_PROBLEM_FILTERS=Warning
+automatically_removed_unused_problem_filters=Enabled
+eclipse.preferences.version=1
+incompatible_api_component_version=Error
+incompatible_api_component_version_include_major_without_breaking_change=Disabled
+incompatible_api_component_version_include_minor_without_api_change=Disabled
+invalid_since_tag_version=Error
+malformed_since_tag=Error
+missing_since_tag=Warning
+report_api_breakage_when_major_version_incremented=Disabled
+report_resolution_errors_api_component=Warning
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.editor/META-INF/MANIFEST.MF b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.editor/META-INF/MANIFEST.MF
new file mode 100644
index 0000000..7af6f8d
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.editor/META-INF/MANIFEST.MF
@@ -0,0 +1,19 @@
+Manifest-Version: 1.0
+Bundle-ManifestVersion: 2
+Bundle-Name: %pluginName
+Bundle-SymbolicName: org.eclipse.papyrus.interoperability.rpy.metamodel.editor;singleton:=true
+Bundle-Version: 0.7.0.qualifier
+Bundle-ClassPath: .
+Bundle-Activator: org.eclipse.papyrus.interoperability.rpy.rpymetamodel.presentation.rpymetamodelEditorPlugin$Implementation
+Bundle-Vendor: %providerName
+Bundle-Localization: plugin
+Bundle-RequiredExecutionEnvironment: JavaSE-1.6
+Export-Package: org.eclipse.papyrus.interoperability.rpy.rpymetamodel.presentation
+Require-Bundle: org.eclipse.core.runtime,
+ org.eclipse.core.resources;visibility:=reexport,
+ org.eclipse.papyrus.interoperability.rpy.metamodel.edit;visibility:=reexport,
+ org.eclipse.emf.ecore.xmi;visibility:=reexport,
+ org.eclipse.emf.edit.ui;visibility:=reexport,
+ org.eclipse.ui.ide;visibility:=reexport,
+ org.eclipse.emf.ecore.edit;visibility:=reexport
+Bundle-ActivationPolicy: lazy
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.editor/about.html b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.editor/about.html
new file mode 100644
index 0000000..dd3c089
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.editor/about.html
@@ -0,0 +1,28 @@
+<!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>About</title>
+</head>
+<body lang="EN-US">
+<h2>About This Content</h2>
+ 
+<p>November 14, 2008</p>	
+<h3>License</h3>
+
+<p>The Eclipse Foundation makes available all content in this plug-in (&quot;Content&quot;).  Unless otherwise 
+indicated below, the Content is provided to you under the terms and conditions of the
+Eclipse Public License Version 1.0 (&quot;EPL&quot;).  A copy of the EPL is 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, &quot;Program&quot; will mean the Content.</p>
+
+<p>If you did not receive this Content directly from the Eclipse Foundation, the Content is 
+being redistributed by another party (&quot;Redistributor&quot;) and different terms and conditions may
+apply to your use of any object code in the Content.  Check the Redistributor's license that was 
+provided with the Content.  If no such license exists, contact the Redistributor.  Unless otherwise
+indicated below, the terms and conditions of the EPL still apply to any source code in the Content
+and such source code may be obtained at <a href="http://www.eclipse.org">http://www.eclipse.org</a>.</p>
+
+</body>
+</html>
\ No newline at end of file
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.editor/build.properties b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.editor/build.properties
new file mode 100644
index 0000000..e8af977
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.editor/build.properties
@@ -0,0 +1,12 @@
+#
+
+bin.includes = .,\
+               icons/,\
+               META-INF/,\
+               plugin.xml,\
+               about.html,\
+               plugin.properties
+jars.compile.order = .
+source.. = src-gen/
+output.. = bin
+src.includes = about.html
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.editor/icons/full/obj16/UMLRpyModelFile.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.editor/icons/full/obj16/UMLRpyModelFile.gif
new file mode 100755
index 0000000..c6b1acd
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.editor/icons/full/obj16/UMLRpyModelFile.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.editor/icons/full/wizban/NewUMLRpy.gif b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.editor/icons/full/wizban/NewUMLRpy.gif
new file mode 100755
index 0000000..73117b6
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.editor/icons/full/wizban/NewUMLRpy.gif
Binary files differ
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.editor/plugin.properties b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.editor/plugin.properties
new file mode 100644
index 0000000..efb32b3
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.editor/plugin.properties
@@ -0,0 +1,46 @@
+#   Copyright (c) 2016 CEA LIST and others.
+#   
+#   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:
+#     CEA LIST - Initial API and implementation
+# 
+
+pluginName = Papyrus Interoperability Rpy Metamodel Editor (Incubation)
+providerName = Eclipse Modeling Project
+_UI_UMLRpyEditor_menu = &UMLRpy Editor
+_UI_CreateChild_menu_item = &New Child
+_UI_CreateSibling_menu_item = N&ew Sibling
+_UI_ShowPropertiesView_menu_item = Show &Properties View
+_UI_RefreshViewer_menu_item = &Refresh
+_UI_SelectionPage_label = Selection
+_UI_ParentPage_label = Parent
+_UI_ListPage_label = List
+_UI_TreePage_label = Tree
+_UI_TablePage_label = Table
+_UI_TreeWithColumnsPage_label = Tree with Columns
+_UI_ObjectColumn_label = Object
+_UI_SelfColumn_label = Self
+_UI_NoObjectSelected = Selected Nothing
+_UI_SingleObjectSelected = Selected Object: {0}
+_UI_MultiObjectSelected = Selected {0} Objects
+_UI_OpenEditorError_label = Open Editor
+_UI_Wizard_category = Example EMF Model Creation Wizards
+_UI_CreateModelError_message = Problems encountered in file "{0}"
+_UI_UMLRpyModelWizard_label = UMLRpy Model
+_UI_UMLRpyModelWizard_description = Create a new UMLRpy model
+_UI_UMLRpyEditor_label = UMLRpy Model Editor
+_UI_UMLRpyEditorFilenameDefaultBase = My
+_UI_UMLRpyEditorFilenameExtensions = umlrpy
+_UI_Wizard_label = New
+_WARN_FilenameExtension = The file name must end in ''.{0}''
+_WARN_FilenameExtensions = The file name must have one of the following extensions: {0}
+_UI_ModelObject = &Model Object
+_UI_XMLEncoding = &XML Encoding
+_UI_XMLEncodingChoices = UTF-8 ASCII UTF-16 UTF-16BE UTF-16LE ISO-8859-1
+_UI_Wizard_initial_object_description = Select a model object to create
+_UI_FileConflict_label = File Conflict
+_WARN_FileConflict = There are unsaved changes that conflict with changes made outside the editor.  Do you wish to discard this editor's changes?
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.editor/plugin.xml b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.editor/plugin.xml
new file mode 100644
index 0000000..c22bba5
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.editor/plugin.xml
@@ -0,0 +1,36 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?eclipse version="3.0"?>
+
+<!--
+-->
+
+<plugin>
+
+   <extension point="org.eclipse.ui.newWizards">
+      <!-- @generated Rpy -->
+      <category
+            id="org.eclipse.emf.ecore.Wizard.category.ID"
+            name="%_UI_Wizard_category"/>
+      <wizard
+            id="org.eclipse.papyrus.interoperability.rpy.rpymetamodel.presentation.UMLRpyModelWizardID"
+            name="%_UI_UMLRpyModelWizard_label"
+            class="org.eclipse.papyrus.interoperability.rpy.rpymetamodel.presentation.UMLRpyModelWizard"
+            category="org.eclipse.emf.ecore.Wizard.category.ID"
+            icon="icons/full/obj16/UMLRpyModelFile.gif">
+         <description>%_UI_UMLRpyModelWizard_description</description>
+         <selection class="org.eclipse.core.resources.IResource"/>
+      </wizard>
+   </extension>
+
+   <extension point="org.eclipse.ui.editors">
+      <!-- @generated Rpy -->
+      <editor
+            id="org.eclipse.papyrus.interoperability.rpy.rpymetamodel.presentation.UMLRpyEditorID"
+            name="%_UI_UMLRpyEditor_label"
+            icon="icons/full/obj16/UMLRpyModelFile.gif"
+            extensions="umlrpy"
+            class="org.eclipse.papyrus.interoperability.rpy.rpymetamodel.presentation.UMLRpyEditor"
+            contributorClass="org.eclipse.papyrus.interoperability.rpy.rpymetamodel.presentation.UMLRpyActionBarContributor">
+      </editor>
+   </extension>
+</plugin>
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.editor/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/presentation/UMLRpyActionBarContributor.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.editor/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/presentation/UMLRpyActionBarContributor.java
new file mode 100755
index 0000000..e3499ce
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.editor/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/presentation/UMLRpyActionBarContributor.java
@@ -0,0 +1,435 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.presentation;
+
+import java.util.ArrayList;
+import java.util.Collection;
+
+import org.eclipse.emf.common.ui.viewer.IViewerProvider;
+
+import org.eclipse.emf.edit.domain.EditingDomain;
+import org.eclipse.emf.edit.domain.IEditingDomainProvider;
+
+import org.eclipse.emf.edit.ui.action.ControlAction;
+import org.eclipse.emf.edit.ui.action.CreateChildAction;
+import org.eclipse.emf.edit.ui.action.CreateSiblingAction;
+import org.eclipse.emf.edit.ui.action.EditingDomainActionBarContributor;
+import org.eclipse.emf.edit.ui.action.LoadResourceAction;
+import org.eclipse.emf.edit.ui.action.ValidateAction;
+
+import org.eclipse.jface.action.Action;
+import org.eclipse.jface.action.ActionContributionItem;
+import org.eclipse.jface.action.IAction;
+import org.eclipse.jface.action.IContributionItem;
+import org.eclipse.jface.action.IContributionManager;
+import org.eclipse.jface.action.IMenuListener;
+import org.eclipse.jface.action.IMenuManager;
+import org.eclipse.jface.action.IToolBarManager;
+import org.eclipse.jface.action.MenuManager;
+import org.eclipse.jface.action.Separator;
+import org.eclipse.jface.action.SubContributionItem;
+
+import org.eclipse.jface.viewers.ISelection;
+import org.eclipse.jface.viewers.ISelectionChangedListener;
+import org.eclipse.jface.viewers.ISelectionProvider;
+import org.eclipse.jface.viewers.IStructuredSelection;
+import org.eclipse.jface.viewers.SelectionChangedEvent;
+import org.eclipse.jface.viewers.Viewer;
+
+import org.eclipse.ui.IEditorPart;
+import org.eclipse.ui.PartInitException;
+
+/**
+ * This is the action bar contributor for the UMLRpy model editor.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class UMLRpyActionBarContributor
+	extends EditingDomainActionBarContributor
+	implements ISelectionChangedListener {
+	/**
+	 * This keeps track of the active editor.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected IEditorPart activeEditorPart;
+
+	/**
+	 * This keeps track of the current selection provider.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected ISelectionProvider selectionProvider;
+
+	/**
+	 * This action opens the Properties view.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected IAction showPropertiesViewAction =
+		new Action(rpymetamodelEditorPlugin.INSTANCE.getString("_UI_ShowPropertiesView_menu_item")) //$NON-NLS-1$
+		{
+			@Override
+			public void run() {
+				try {
+					getPage().showView("org.eclipse.ui.views.PropertySheet"); //$NON-NLS-1$
+				}
+				catch (PartInitException exception) {
+					rpymetamodelEditorPlugin.INSTANCE.log(exception);
+				}
+			}
+		};
+
+	/**
+	 * This action refreshes the viewer of the current editor if the editor
+	 * implements {@link org.eclipse.emf.common.ui.viewer.IViewerProvider}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected IAction refreshViewerAction =
+		new Action(rpymetamodelEditorPlugin.INSTANCE.getString("_UI_RefreshViewer_menu_item")) //$NON-NLS-1$
+		{
+			@Override
+			public boolean isEnabled() {
+				return activeEditorPart instanceof IViewerProvider;
+			}
+
+			@Override
+			public void run() {
+				if (activeEditorPart instanceof IViewerProvider) {
+					Viewer viewer = ((IViewerProvider)activeEditorPart).getViewer();
+					if (viewer != null) {
+						viewer.refresh();
+					}
+				}
+			}
+		};
+
+	/**
+	 * This will contain one {@link org.eclipse.emf.edit.ui.action.CreateChildAction} corresponding to each descriptor
+	 * generated for the current selection by the item provider.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected Collection<IAction> createChildActions;
+
+	/**
+	 * This is the menu manager into which menu contribution items should be added for CreateChild actions.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected IMenuManager createChildMenuManager;
+
+	/**
+	 * This will contain one {@link org.eclipse.emf.edit.ui.action.CreateSiblingAction} corresponding to each descriptor
+	 * generated for the current selection by the item provider.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected Collection<IAction> createSiblingActions;
+
+	/**
+	 * This is the menu manager into which menu contribution items should be added for CreateSibling actions.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected IMenuManager createSiblingMenuManager;
+
+	/**
+	 * This creates an instance of the contributor.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public UMLRpyActionBarContributor() {
+		super(ADDITIONS_LAST_STYLE);
+		loadResourceAction = new LoadResourceAction();
+		validateAction = new ValidateAction();
+		controlAction = new ControlAction();
+	}
+
+	/**
+	 * This adds Separators for editor additions to the tool bar.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void contributeToToolBar(IToolBarManager toolBarManager) {
+		toolBarManager.add(new Separator("umlrpy-settings")); //$NON-NLS-1$
+		toolBarManager.add(new Separator("umlrpy-additions")); //$NON-NLS-1$
+	}
+
+	/**
+	 * This adds to the menu bar a menu and some separators for editor additions,
+	 * as well as the sub-menus for object creation items.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void contributeToMenu(IMenuManager menuManager) {
+		super.contributeToMenu(menuManager);
+
+		IMenuManager submenuManager = new MenuManager(rpymetamodelEditorPlugin.INSTANCE.getString("_UI_UMLRpyEditor_menu"), "org.eclipse.papyrus.interoperability.rpy.rpymetamodelMenuID"); //$NON-NLS-1$ //$NON-NLS-2$
+		menuManager.insertAfter("additions", submenuManager); //$NON-NLS-1$
+		submenuManager.add(new Separator("settings")); //$NON-NLS-1$
+		submenuManager.add(new Separator("actions")); //$NON-NLS-1$
+		submenuManager.add(new Separator("additions")); //$NON-NLS-1$
+		submenuManager.add(new Separator("additions-end")); //$NON-NLS-1$
+
+		// Prepare for CreateChild item addition or removal.
+		//
+		createChildMenuManager = new MenuManager(rpymetamodelEditorPlugin.INSTANCE.getString("_UI_CreateChild_menu_item")); //$NON-NLS-1$
+		submenuManager.insertBefore("additions", createChildMenuManager); //$NON-NLS-1$
+
+		// Prepare for CreateSibling item addition or removal.
+		//
+		createSiblingMenuManager = new MenuManager(rpymetamodelEditorPlugin.INSTANCE.getString("_UI_CreateSibling_menu_item")); //$NON-NLS-1$
+		submenuManager.insertBefore("additions", createSiblingMenuManager); //$NON-NLS-1$
+
+		// Force an update because Eclipse hides empty menus now.
+		//
+		submenuManager.addMenuListener
+			(new IMenuListener() {
+				 public void menuAboutToShow(IMenuManager menuManager) {
+					 menuManager.updateAll(true);
+				 }
+			 });
+
+		addGlobalActions(submenuManager);
+	}
+
+	/**
+	 * When the active editor changes, this remembers the change and registers with it as a selection provider.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void setActiveEditor(IEditorPart part) {
+		super.setActiveEditor(part);
+		activeEditorPart = part;
+
+		// Switch to the new selection provider.
+		//
+		if (selectionProvider != null) {
+			selectionProvider.removeSelectionChangedListener(this);
+		}
+		if (part == null) {
+			selectionProvider = null;
+		}
+		else {
+			selectionProvider = part.getSite().getSelectionProvider();
+			selectionProvider.addSelectionChangedListener(this);
+
+			// Fake a selection changed event to update the menus.
+			//
+			if (selectionProvider.getSelection() != null) {
+				selectionChanged(new SelectionChangedEvent(selectionProvider, selectionProvider.getSelection()));
+			}
+		}
+	}
+
+	/**
+	 * This implements {@link org.eclipse.jface.viewers.ISelectionChangedListener},
+	 * handling {@link org.eclipse.jface.viewers.SelectionChangedEvent}s by querying for the children and siblings
+	 * that can be added to the selected object and updating the menus accordingly.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void selectionChanged(SelectionChangedEvent event) {
+		// Remove any menu items for old selection.
+		//
+		if (createChildMenuManager != null) {
+			depopulateManager(createChildMenuManager, createChildActions);
+		}
+		if (createSiblingMenuManager != null) {
+			depopulateManager(createSiblingMenuManager, createSiblingActions);
+		}
+
+		// Query the new selection for appropriate new child/sibling descriptors
+		//
+		Collection<?> newChildDescriptors = null;
+		Collection<?> newSiblingDescriptors = null;
+
+		ISelection selection = event.getSelection();
+		if (selection instanceof IStructuredSelection && ((IStructuredSelection)selection).size() == 1) {
+			Object object = ((IStructuredSelection)selection).getFirstElement();
+
+			EditingDomain domain = ((IEditingDomainProvider)activeEditorPart).getEditingDomain();
+
+			newChildDescriptors = domain.getNewChildDescriptors(object, null);
+			newSiblingDescriptors = domain.getNewChildDescriptors(null, object);
+		}
+
+		// Generate actions for selection; populate and redraw the menus.
+		//
+		createChildActions = generateCreateChildActions(newChildDescriptors, selection);
+		createSiblingActions = generateCreateSiblingActions(newSiblingDescriptors, selection);
+
+		if (createChildMenuManager != null) {
+			populateManager(createChildMenuManager, createChildActions, null);
+			createChildMenuManager.update(true);
+		}
+		if (createSiblingMenuManager != null) {
+			populateManager(createSiblingMenuManager, createSiblingActions, null);
+			createSiblingMenuManager.update(true);
+		}
+	}
+
+	/**
+	 * This generates a {@link org.eclipse.emf.edit.ui.action.CreateChildAction} for each object in <code>descriptors</code>,
+	 * and returns the collection of these actions.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected Collection<IAction> generateCreateChildActions(Collection<?> descriptors, ISelection selection) {
+		Collection<IAction> actions = new ArrayList<IAction>();
+		if (descriptors != null) {
+			for (Object descriptor : descriptors) {
+				actions.add(new CreateChildAction(activeEditorPart, selection, descriptor));
+			}
+		}
+		return actions;
+	}
+
+	/**
+	 * This generates a {@link org.eclipse.emf.edit.ui.action.CreateSiblingAction} for each object in <code>descriptors</code>,
+	 * and returns the collection of these actions.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected Collection<IAction> generateCreateSiblingActions(Collection<?> descriptors, ISelection selection) {
+		Collection<IAction> actions = new ArrayList<IAction>();
+		if (descriptors != null) {
+			for (Object descriptor : descriptors) {
+				actions.add(new CreateSiblingAction(activeEditorPart, selection, descriptor));
+			}
+		}
+		return actions;
+	}
+
+	/**
+	 * This populates the specified <code>manager</code> with {@link org.eclipse.jface.action.ActionContributionItem}s
+	 * based on the {@link org.eclipse.jface.action.IAction}s contained in the <code>actions</code> collection,
+	 * by inserting them before the specified contribution item <code>contributionID</code>.
+	 * If <code>contributionID</code> is <code>null</code>, they are simply added.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void populateManager(IContributionManager manager, Collection<? extends IAction> actions, String contributionID) {
+		if (actions != null) {
+			for (IAction action : actions) {
+				if (contributionID != null) {
+					manager.insertBefore(contributionID, action);
+				}
+				else {
+					manager.add(action);
+				}
+			}
+		}
+	}
+		
+	/**
+	 * This removes from the specified <code>manager</code> all {@link org.eclipse.jface.action.ActionContributionItem}s
+	 * based on the {@link org.eclipse.jface.action.IAction}s contained in the <code>actions</code> collection.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void depopulateManager(IContributionManager manager, Collection<? extends IAction> actions) {
+		if (actions != null) {
+			IContributionItem[] items = manager.getItems();
+			for (int i = 0; i < items.length; i++) {
+				// Look into SubContributionItems
+				//
+				IContributionItem contributionItem = items[i];
+				while (contributionItem instanceof SubContributionItem) {
+					contributionItem = ((SubContributionItem)contributionItem).getInnerItem();
+				}
+
+				// Delete the ActionContributionItems with matching action.
+				//
+				if (contributionItem instanceof ActionContributionItem) {
+					IAction action = ((ActionContributionItem)contributionItem).getAction();
+					if (actions.contains(action)) {
+						manager.remove(contributionItem);
+					}
+				}
+			}
+		}
+	}
+
+	/**
+	 * This populates the pop-up menu before it appears.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void menuAboutToShow(IMenuManager menuManager) {
+		super.menuAboutToShow(menuManager);
+		MenuManager submenuManager = null;
+
+		submenuManager = new MenuManager(rpymetamodelEditorPlugin.INSTANCE.getString("_UI_CreateChild_menu_item")); //$NON-NLS-1$
+		populateManager(submenuManager, createChildActions, null);
+		menuManager.insertBefore("edit", submenuManager); //$NON-NLS-1$
+
+		submenuManager = new MenuManager(rpymetamodelEditorPlugin.INSTANCE.getString("_UI_CreateSibling_menu_item")); //$NON-NLS-1$
+		populateManager(submenuManager, createSiblingActions, null);
+		menuManager.insertBefore("edit", submenuManager); //$NON-NLS-1$
+	}
+
+	/**
+	 * This inserts global actions before the "additions-end" separator.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected void addGlobalActions(IMenuManager menuManager) {
+		menuManager.insertAfter("additions-end", new Separator("ui-actions")); //$NON-NLS-1$ //$NON-NLS-2$
+		menuManager.insertAfter("ui-actions", showPropertiesViewAction); //$NON-NLS-1$
+
+		refreshViewerAction.setEnabled(refreshViewerAction.isEnabled());		
+		menuManager.insertAfter("ui-actions", refreshViewerAction); //$NON-NLS-1$
+
+		super.addGlobalActions(menuManager);
+	}
+
+	/**
+	 * This ensures that a delete action will clean up all references to deleted objects.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected boolean removeAllReferencesOnDelete() {
+		return true;
+	}
+
+}
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.editor/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/presentation/UMLRpyEditor.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.editor/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/presentation/UMLRpyEditor.java
new file mode 100755
index 0000000..2fec20f
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.editor/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/presentation/UMLRpyEditor.java
@@ -0,0 +1,1831 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.presentation;
+
+
+import java.io.IOException;
+import java.io.InputStream;
+
+import java.util.ArrayList;
+import java.util.Collection;
+import java.util.Collections;
+import java.util.EventObject;
+import java.util.HashMap;
+import java.util.Iterator;
+import java.util.LinkedHashMap;
+import java.util.List;
+import java.util.Map;
+
+import org.eclipse.core.resources.IFile;
+import org.eclipse.core.resources.IMarker;
+import org.eclipse.core.resources.IResource;
+import org.eclipse.core.resources.IResourceChangeEvent;
+import org.eclipse.core.resources.IResourceChangeListener;
+import org.eclipse.core.resources.IResourceDelta;
+import org.eclipse.core.resources.IResourceDeltaVisitor;
+import org.eclipse.core.resources.ResourcesPlugin;
+
+import org.eclipse.core.runtime.CoreException;
+import org.eclipse.core.runtime.IPath;
+import org.eclipse.core.runtime.IProgressMonitor;
+import org.eclipse.core.runtime.NullProgressMonitor;
+
+import org.eclipse.jface.action.IMenuListener;
+import org.eclipse.jface.action.IMenuManager;
+import org.eclipse.jface.action.IStatusLineManager;
+import org.eclipse.jface.action.IToolBarManager;
+import org.eclipse.jface.action.MenuManager;
+import org.eclipse.jface.action.Separator;
+
+import org.eclipse.jface.dialogs.MessageDialog;
+import org.eclipse.jface.dialogs.ProgressMonitorDialog;
+
+import org.eclipse.jface.util.LocalSelectionTransfer;
+
+import org.eclipse.jface.viewers.ColumnWeightData;
+import org.eclipse.jface.viewers.ISelection;
+import org.eclipse.jface.viewers.ISelectionChangedListener;
+import org.eclipse.jface.viewers.ISelectionProvider;
+import org.eclipse.jface.viewers.IStructuredSelection;
+import org.eclipse.jface.viewers.ListViewer;
+import org.eclipse.jface.viewers.SelectionChangedEvent;
+import org.eclipse.jface.viewers.StructuredSelection;
+import org.eclipse.jface.viewers.StructuredViewer;
+import org.eclipse.jface.viewers.TableLayout;
+import org.eclipse.jface.viewers.TableViewer;
+import org.eclipse.jface.viewers.TreeViewer;
+import org.eclipse.jface.viewers.Viewer;
+
+import org.eclipse.swt.SWT;
+
+import org.eclipse.swt.custom.CTabFolder;
+
+import org.eclipse.swt.dnd.DND;
+import org.eclipse.swt.dnd.FileTransfer;
+import org.eclipse.swt.dnd.Transfer;
+
+import org.eclipse.swt.events.ControlAdapter;
+import org.eclipse.swt.events.ControlEvent;
+
+import org.eclipse.swt.graphics.Point;
+
+import org.eclipse.swt.layout.FillLayout;
+
+import org.eclipse.swt.widgets.Composite;
+import org.eclipse.swt.widgets.Menu;
+import org.eclipse.swt.widgets.Table;
+import org.eclipse.swt.widgets.TableColumn;
+import org.eclipse.swt.widgets.Tree;
+import org.eclipse.swt.widgets.TreeColumn;
+
+import org.eclipse.ui.IActionBars;
+import org.eclipse.ui.IEditorInput;
+import org.eclipse.ui.IEditorPart;
+import org.eclipse.ui.IEditorSite;
+import org.eclipse.ui.IPartListener;
+import org.eclipse.ui.IWorkbenchPart;
+import org.eclipse.ui.PartInitException;
+
+import org.eclipse.ui.dialogs.SaveAsDialog;
+
+import org.eclipse.ui.ide.IGotoMarker;
+
+import org.eclipse.ui.part.FileEditorInput;
+import org.eclipse.ui.part.MultiPageEditorPart;
+
+import org.eclipse.ui.views.contentoutline.ContentOutline;
+import org.eclipse.ui.views.contentoutline.ContentOutlinePage;
+import org.eclipse.ui.views.contentoutline.IContentOutlinePage;
+
+import org.eclipse.ui.views.properties.IPropertySheetPage;
+import org.eclipse.ui.views.properties.PropertySheet;
+import org.eclipse.ui.views.properties.PropertySheetPage;
+
+import org.eclipse.emf.common.command.BasicCommandStack;
+import org.eclipse.emf.common.command.Command;
+import org.eclipse.emf.common.command.CommandStack;
+import org.eclipse.emf.common.command.CommandStackListener;
+
+import org.eclipse.emf.common.notify.AdapterFactory;
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.common.ui.MarkerHelper;
+import org.eclipse.emf.common.ui.ViewerPane;
+
+import org.eclipse.emf.common.ui.editor.ProblemEditorPart;
+
+import org.eclipse.emf.common.ui.viewer.IViewerProvider;
+
+import org.eclipse.emf.common.util.BasicDiagnostic;
+import org.eclipse.emf.common.util.Diagnostic;
+import org.eclipse.emf.common.util.URI;
+
+
+import org.eclipse.emf.ecore.resource.Resource;
+import org.eclipse.emf.ecore.resource.ResourceSet;
+
+import org.eclipse.emf.ecore.util.EContentAdapter;
+import org.eclipse.emf.ecore.util.EcoreUtil;
+
+import org.eclipse.emf.edit.domain.AdapterFactoryEditingDomain;
+import org.eclipse.emf.edit.domain.EditingDomain;
+import org.eclipse.emf.edit.domain.IEditingDomainProvider;
+
+import org.eclipse.emf.edit.provider.AdapterFactoryItemDelegator;
+import org.eclipse.emf.edit.provider.ComposedAdapterFactory;
+import org.eclipse.emf.edit.provider.ReflectiveItemProviderAdapterFactory;
+
+import org.eclipse.emf.edit.provider.resource.ResourceItemProviderAdapterFactory;
+
+import org.eclipse.emf.edit.ui.action.EditingDomainActionBarContributor;
+
+import org.eclipse.emf.edit.ui.celleditor.AdapterFactoryTreeEditor;
+
+import org.eclipse.emf.edit.ui.dnd.EditingDomainViewerDropAdapter;
+import org.eclipse.emf.edit.ui.dnd.LocalTransfer;
+import org.eclipse.emf.edit.ui.dnd.ViewerDragAdapter;
+
+import org.eclipse.emf.edit.ui.provider.AdapterFactoryContentProvider;
+import org.eclipse.emf.edit.ui.provider.AdapterFactoryLabelProvider;
+import org.eclipse.emf.edit.ui.provider.UnwrappingSelectionProvider;
+
+import org.eclipse.emf.edit.ui.util.EditUIMarkerHelper;
+import org.eclipse.emf.edit.ui.util.EditUIUtil;
+
+import org.eclipse.emf.edit.ui.view.ExtendedPropertySheetPage;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.provider.UMLRpyItemProviderAdapterFactory;
+
+import org.eclipse.emf.ecore.provider.EcoreItemProviderAdapterFactory;
+import org.eclipse.ui.actions.WorkspaceModifyOperation;
+
+
+/**
+ * This is an example of a UMLRpy model editor.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class UMLRpyEditor
+	extends MultiPageEditorPart
+	implements IEditingDomainProvider, ISelectionProvider, IMenuListener, IViewerProvider, IGotoMarker {
+	/**
+	 * This keeps track of the editing domain that is used to track all changes to the model.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected AdapterFactoryEditingDomain editingDomain;
+
+	/**
+	 * This is the one adapter factory used for providing views of the model.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected ComposedAdapterFactory adapterFactory;
+
+	/**
+	 * This is the content outline page.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected IContentOutlinePage contentOutlinePage;
+
+	/**
+	 * This is a kludge...
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected IStatusLineManager contentOutlineStatusLineManager;
+
+	/**
+	 * This is the content outline page's viewer.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected TreeViewer contentOutlineViewer;
+
+	/**
+	 * This is the property sheet page.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected List<PropertySheetPage> propertySheetPages = new ArrayList<PropertySheetPage>();
+
+	/**
+	 * This is the viewer that shadows the selection in the content outline.
+	 * The parent relation must be correctly defined for this to work.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected TreeViewer selectionViewer;
+
+	/**
+	 * This inverts the roll of parent and child in the content provider and show parents as a tree.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected TreeViewer parentViewer;
+
+	/**
+	 * This shows how a tree view works.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected TreeViewer treeViewer;
+
+	/**
+	 * This shows how a list view works.
+	 * A list viewer doesn't support icons.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected ListViewer listViewer;
+
+	/**
+	 * This shows how a table view works.
+	 * A table can be used as a list with icons.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected TableViewer tableViewer;
+
+	/**
+	 * This shows how a tree view with columns works.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected TreeViewer treeViewerWithColumns;
+
+	/**
+	 * This keeps track of the active viewer pane, in the book.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected ViewerPane currentViewerPane;
+
+	/**
+	 * This keeps track of the active content viewer, which may be either one of the viewers in the pages or the content outline viewer.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected Viewer currentViewer;
+
+	/**
+	 * This listens to which ever viewer is active.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected ISelectionChangedListener selectionChangedListener;
+
+	/**
+	 * This keeps track of all the {@link org.eclipse.jface.viewers.ISelectionChangedListener}s that are listening to this editor.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected Collection<ISelectionChangedListener> selectionChangedListeners = new ArrayList<ISelectionChangedListener>();
+
+	/**
+	 * This keeps track of the selection of the editor as a whole.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected ISelection editorSelection = StructuredSelection.EMPTY;
+
+	/**
+	 * The MarkerHelper is responsible for creating workspace resource markers presented
+	 * in Eclipse's Problems View.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected MarkerHelper markerHelper = new EditUIMarkerHelper();
+
+	/**
+	 * This listens for when the outline becomes active
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected IPartListener partListener =
+		new IPartListener() {
+			public void partActivated(IWorkbenchPart p) {
+				if (p instanceof ContentOutline) {
+					if (((ContentOutline)p).getCurrentPage() == contentOutlinePage) {
+						getActionBarContributor().setActiveEditor(UMLRpyEditor.this);
+
+						setCurrentViewer(contentOutlineViewer);
+					}
+				}
+				else if (p instanceof PropertySheet) {
+					if (propertySheetPages.contains(((PropertySheet)p).getCurrentPage())) {
+						getActionBarContributor().setActiveEditor(UMLRpyEditor.this);
+						handleActivate();
+					}
+				}
+				else if (p == UMLRpyEditor.this) {
+					handleActivate();
+				}
+			}
+			public void partBroughtToTop(IWorkbenchPart p) {
+				// Ignore.
+			}
+			public void partClosed(IWorkbenchPart p) {
+				// Ignore.
+			}
+			public void partDeactivated(IWorkbenchPart p) {
+				// Ignore.
+			}
+			public void partOpened(IWorkbenchPart p) {
+				// Ignore.
+			}
+		};
+
+	/**
+	 * Resources that have been removed since last activation.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected Collection<Resource> removedResources = new ArrayList<Resource>();
+
+	/**
+	 * Resources that have been changed since last activation.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected Collection<Resource> changedResources = new ArrayList<Resource>();
+
+	/**
+	 * Resources that have been saved.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected Collection<Resource> savedResources = new ArrayList<Resource>();
+
+	/**
+	 * Map to store the diagnostic associated with a resource.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected Map<Resource, Diagnostic> resourceToDiagnosticMap = new LinkedHashMap<Resource, Diagnostic>();
+
+	/**
+	 * Controls whether the problem indication should be updated.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected boolean updateProblemIndication = true;
+
+	/**
+	 * Adapter used to update the problem indication when resources are demanded loaded.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected EContentAdapter problemIndicationAdapter =
+		new EContentAdapter() {
+			@Override
+			public void notifyChanged(Notification notification) {
+				if (notification.getNotifier() instanceof Resource) {
+					switch (notification.getFeatureID(Resource.class)) {
+						case Resource.RESOURCE__IS_LOADED:
+						case Resource.RESOURCE__ERRORS:
+						case Resource.RESOURCE__WARNINGS: {
+							Resource resource = (Resource)notification.getNotifier();
+							Diagnostic diagnostic = analyzeResourceProblems(resource, null);
+							if (diagnostic.getSeverity() != Diagnostic.OK) {
+								resourceToDiagnosticMap.put(resource, diagnostic);
+							}
+							else {
+								resourceToDiagnosticMap.remove(resource);
+							}
+
+							if (updateProblemIndication) {
+								getSite().getShell().getDisplay().asyncExec
+									(new Runnable() {
+										 public void run() {
+											 updateProblemIndication();
+										 }
+									 });
+							}
+							break;
+						}
+					}
+				}
+				else {
+					super.notifyChanged(notification);
+				}
+			}
+
+			@Override
+			protected void setTarget(Resource target) {
+				basicSetTarget(target);
+			}
+
+			@Override
+			protected void unsetTarget(Resource target) {
+				basicUnsetTarget(target);
+				resourceToDiagnosticMap.remove(target);
+				if (updateProblemIndication) {
+					getSite().getShell().getDisplay().asyncExec
+						(new Runnable() {
+							 public void run() {
+								 updateProblemIndication();
+							 }
+						 });
+				}
+			}
+		};
+
+	/**
+	 * This listens for workspace changes.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected IResourceChangeListener resourceChangeListener =
+		new IResourceChangeListener() {
+			public void resourceChanged(IResourceChangeEvent event) {
+				IResourceDelta delta = event.getDelta();
+				try {
+					class ResourceDeltaVisitor implements IResourceDeltaVisitor {
+						protected ResourceSet resourceSet = editingDomain.getResourceSet();
+						protected Collection<Resource> changedResources = new ArrayList<Resource>();
+						protected Collection<Resource> removedResources = new ArrayList<Resource>();
+
+						public boolean visit(IResourceDelta delta) {
+							if (delta.getResource().getType() == IResource.FILE) {
+								if (delta.getKind() == IResourceDelta.REMOVED ||
+								    delta.getKind() == IResourceDelta.CHANGED && delta.getFlags() != IResourceDelta.MARKERS) {
+									Resource resource = resourceSet.getResource(URI.createPlatformResourceURI(delta.getFullPath().toString(), true), false);
+									if (resource != null) {
+										if (delta.getKind() == IResourceDelta.REMOVED) {
+											removedResources.add(resource);
+										}
+										else if (!savedResources.remove(resource)) {
+											changedResources.add(resource);
+										}
+									}
+								}
+								return false;
+							}
+
+							return true;
+						}
+
+						public Collection<Resource> getChangedResources() {
+							return changedResources;
+						}
+
+						public Collection<Resource> getRemovedResources() {
+							return removedResources;
+						}
+					}
+
+					final ResourceDeltaVisitor visitor = new ResourceDeltaVisitor();
+					delta.accept(visitor);
+
+					if (!visitor.getRemovedResources().isEmpty()) {
+						getSite().getShell().getDisplay().asyncExec
+							(new Runnable() {
+								 public void run() {
+									 removedResources.addAll(visitor.getRemovedResources());
+									 if (!isDirty()) {
+										 getSite().getPage().closeEditor(UMLRpyEditor.this, false);
+									 }
+								 }
+							 });
+					}
+
+					if (!visitor.getChangedResources().isEmpty()) {
+						getSite().getShell().getDisplay().asyncExec
+							(new Runnable() {
+								 public void run() {
+									 changedResources.addAll(visitor.getChangedResources());
+									 if (getSite().getPage().getActiveEditor() == UMLRpyEditor.this) {
+										 handleActivate();
+									 }
+								 }
+							 });
+					}
+				}
+				catch (CoreException exception) {
+					rpymetamodelEditorPlugin.INSTANCE.log(exception);
+				}
+			}
+		};
+
+	/**
+	 * Handles activation of the editor or it's associated views.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void handleActivate() {
+		// Recompute the read only state.
+		//
+		if (editingDomain.getResourceToReadOnlyMap() != null) {
+		  editingDomain.getResourceToReadOnlyMap().clear();
+
+		  // Refresh any actions that may become enabled or disabled.
+		  //
+		  setSelection(getSelection());
+		}
+
+		if (!removedResources.isEmpty()) {
+			if (handleDirtyConflict()) {
+				getSite().getPage().closeEditor(UMLRpyEditor.this, false);
+			}
+			else {
+				removedResources.clear();
+				changedResources.clear();
+				savedResources.clear();
+			}
+		}
+		else if (!changedResources.isEmpty()) {
+			changedResources.removeAll(savedResources);
+			handleChangedResources();
+			changedResources.clear();
+			savedResources.clear();
+		}
+	}
+
+	/**
+	 * Handles what to do with changed resources on activation.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void handleChangedResources() {
+		if (!changedResources.isEmpty() && (!isDirty() || handleDirtyConflict())) {
+			if (isDirty()) {
+				changedResources.addAll(editingDomain.getResourceSet().getResources());
+			}
+			editingDomain.getCommandStack().flush();
+
+			updateProblemIndication = false;
+			for (Resource resource : changedResources) {
+				if (resource.isLoaded()) {
+					resource.unload();
+					try {
+						resource.load(Collections.EMPTY_MAP);
+					}
+					catch (IOException exception) {
+						if (!resourceToDiagnosticMap.containsKey(resource)) {
+							resourceToDiagnosticMap.put(resource, analyzeResourceProblems(resource, exception));
+						}
+					}
+				}
+			}
+
+			if (AdapterFactoryEditingDomain.isStale(editorSelection)) {
+				setSelection(StructuredSelection.EMPTY);
+			}
+
+			updateProblemIndication = true;
+			updateProblemIndication();
+		}
+	}
+
+	/**
+	 * Updates the problems indication with the information described in the specified diagnostic.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void updateProblemIndication() {
+		if (updateProblemIndication) {
+			BasicDiagnostic diagnostic =
+				new BasicDiagnostic
+					(Diagnostic.OK,
+					 "org.eclipse.papyrus.interoperability.rpy.metamodel.editor", //$NON-NLS-1$
+					 0,
+					 null,
+					 new Object [] { editingDomain.getResourceSet() });
+			for (Diagnostic childDiagnostic : resourceToDiagnosticMap.values()) {
+				if (childDiagnostic.getSeverity() != Diagnostic.OK) {
+					diagnostic.add(childDiagnostic);
+				}
+			}
+
+			int lastEditorPage = getPageCount() - 1;
+			if (lastEditorPage >= 0 && getEditor(lastEditorPage) instanceof ProblemEditorPart) {
+				((ProblemEditorPart)getEditor(lastEditorPage)).setDiagnostic(diagnostic);
+				if (diagnostic.getSeverity() != Diagnostic.OK) {
+					setActivePage(lastEditorPage);
+				}
+			}
+			else if (diagnostic.getSeverity() != Diagnostic.OK) {
+				ProblemEditorPart problemEditorPart = new ProblemEditorPart();
+				problemEditorPart.setDiagnostic(diagnostic);
+				problemEditorPart.setMarkerHelper(markerHelper);
+				try {
+					addPage(++lastEditorPage, problemEditorPart, getEditorInput());
+					setPageText(lastEditorPage, problemEditorPart.getPartName());
+					setActivePage(lastEditorPage);
+					showTabs();
+				}
+				catch (PartInitException exception) {
+					rpymetamodelEditorPlugin.INSTANCE.log(exception);
+				}
+			}
+
+			if (markerHelper.hasMarkers(editingDomain.getResourceSet())) {
+				markerHelper.deleteMarkers(editingDomain.getResourceSet());
+				if (diagnostic.getSeverity() != Diagnostic.OK) {
+					try {
+						markerHelper.createMarkers(diagnostic);
+					}
+					catch (CoreException exception) {
+						rpymetamodelEditorPlugin.INSTANCE.log(exception);
+					}
+				}
+			}
+		}
+	}
+
+	/**
+	 * Shows a dialog that asks if conflicting changes should be discarded.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected boolean handleDirtyConflict() {
+		return
+			MessageDialog.openQuestion
+				(getSite().getShell(),
+				 getString("_UI_FileConflict_label"), //$NON-NLS-1$
+				 getString("_WARN_FileConflict")); //$NON-NLS-1$
+	}
+
+	/**
+	 * This creates a model editor.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public UMLRpyEditor() {
+		super();
+		initializeEditingDomain();
+	}
+
+	/**
+	 * This sets up the editing domain for the model editor.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void initializeEditingDomain() {
+		// Create an adapter factory that yields item providers.
+		//
+		adapterFactory = new ComposedAdapterFactory(ComposedAdapterFactory.Descriptor.Registry.INSTANCE);
+
+		adapterFactory.addAdapterFactory(new ResourceItemProviderAdapterFactory());
+		adapterFactory.addAdapterFactory(new UMLRpyItemProviderAdapterFactory());
+		adapterFactory.addAdapterFactory(new EcoreItemProviderAdapterFactory());
+		adapterFactory.addAdapterFactory(new ReflectiveItemProviderAdapterFactory());
+
+		// Create the command stack that will notify this editor as commands are executed.
+		//
+		BasicCommandStack commandStack = new BasicCommandStack();
+
+		// Add a listener to set the most recent command's affected objects to be the selection of the viewer with focus.
+		//
+		commandStack.addCommandStackListener
+			(new CommandStackListener() {
+				 public void commandStackChanged(final EventObject event) {
+					 getContainer().getDisplay().asyncExec
+						 (new Runnable() {
+							  public void run() {
+								  firePropertyChange(IEditorPart.PROP_DIRTY);
+
+								  // Try to select the affected objects.
+								  //
+								  Command mostRecentCommand = ((CommandStack)event.getSource()).getMostRecentCommand();
+								  if (mostRecentCommand != null) {
+									  setSelectionToViewer(mostRecentCommand.getAffectedObjects());
+								  }
+								  for (Iterator<PropertySheetPage> i = propertySheetPages.iterator(); i.hasNext(); ) {
+									  PropertySheetPage propertySheetPage = i.next();
+									  if (propertySheetPage.getControl().isDisposed()) {
+										  i.remove();
+									  }
+									  else {
+										  propertySheetPage.refresh();
+									  }
+								  }
+							  }
+						  });
+				 }
+			 });
+
+		// Create the editing domain with a special command stack.
+		//
+		editingDomain = new AdapterFactoryEditingDomain(adapterFactory, commandStack, new HashMap<Resource, Boolean>());
+	}
+
+	/**
+	 * This is here for the listener to be able to call it.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+			@Override
+	protected void firePropertyChange(int action) {
+		super.firePropertyChange(action);
+	}
+
+	/**
+	 * This sets the selection into whichever viewer is active.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setSelectionToViewer(Collection<?> collection) {
+		final Collection<?> theSelection = collection;
+		// Make sure it's okay.
+		//
+		if (theSelection != null && !theSelection.isEmpty()) {
+			Runnable runnable =
+				new Runnable() {
+					public void run() {
+						// Try to select the items in the current content viewer of the editor.
+						//
+						if (currentViewer != null) {
+							currentViewer.setSelection(new StructuredSelection(theSelection.toArray()), true);
+						}
+					}
+				};
+			getSite().getShell().getDisplay().asyncExec(runnable);
+		}
+	}
+
+	/**
+	 * This returns the editing domain as required by the {@link IEditingDomainProvider} interface.
+	 * This is important for implementing the static methods of {@link AdapterFactoryEditingDomain}
+	 * and for supporting {@link org.eclipse.emf.edit.ui.action.CommandAction}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EditingDomain getEditingDomain() {
+		return editingDomain;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public class ReverseAdapterFactoryContentProvider extends AdapterFactoryContentProvider {
+		/**
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @generated
+		 */
+		public ReverseAdapterFactoryContentProvider(AdapterFactory adapterFactory) {
+			super(adapterFactory);
+		}
+
+		/**
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @generated
+		 */
+		@Override
+		public Object [] getElements(Object object) {
+			Object parent = super.getParent(object);
+			return (parent == null ? Collections.EMPTY_SET : Collections.singleton(parent)).toArray();
+		}
+
+		/**
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @generated
+		 */
+		@Override
+		public Object [] getChildren(Object object) {
+			Object parent = super.getParent(object);
+			return (parent == null ? Collections.EMPTY_SET : Collections.singleton(parent)).toArray();
+		}
+
+		/**
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @generated
+		 */
+		@Override
+		public boolean hasChildren(Object object) {
+			Object parent = super.getParent(object);
+			return parent != null;
+		}
+
+		/**
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @generated
+		 */
+		@Override
+		public Object getParent(Object object) {
+			return null;
+		}
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setCurrentViewerPane(ViewerPane viewerPane) {
+		if (currentViewerPane != viewerPane) {
+			if (currentViewerPane != null) {
+				currentViewerPane.showFocus(false);
+			}
+			currentViewerPane = viewerPane;
+		}
+		setCurrentViewer(currentViewerPane.getViewer());
+	}
+
+	/**
+	 * This makes sure that one content viewer, either for the current page or the outline view, if it has focus,
+	 * is the current one.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setCurrentViewer(Viewer viewer) {
+		// If it is changing...
+		//
+		if (currentViewer != viewer) {
+			if (selectionChangedListener == null) {
+				// Create the listener on demand.
+				//
+				selectionChangedListener =
+					new ISelectionChangedListener() {
+						// This just notifies those things that are affected by the section.
+						//
+						public void selectionChanged(SelectionChangedEvent selectionChangedEvent) {
+							setSelection(selectionChangedEvent.getSelection());
+						}
+					};
+			}
+
+			// Stop listening to the old one.
+			//
+			if (currentViewer != null) {
+				currentViewer.removeSelectionChangedListener(selectionChangedListener);
+			}
+
+			// Start listening to the new one.
+			//
+			if (viewer != null) {
+				viewer.addSelectionChangedListener(selectionChangedListener);
+			}
+
+			// Remember it.
+			//
+			currentViewer = viewer;
+
+			// Set the editors selection based on the current viewer's selection.
+			//
+			setSelection(currentViewer == null ? StructuredSelection.EMPTY : currentViewer.getSelection());
+		}
+	}
+
+	/**
+	 * This returns the viewer as required by the {@link IViewerProvider} interface.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public Viewer getViewer() {
+		return currentViewer;
+	}
+
+	/**
+	 * This creates a context menu for the viewer and adds a listener as well registering the menu for extension.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void createContextMenuFor(StructuredViewer viewer) {
+		MenuManager contextMenu = new MenuManager("#PopUp"); //$NON-NLS-1$
+		contextMenu.add(new Separator("additions")); //$NON-NLS-1$
+		contextMenu.setRemoveAllWhenShown(true);
+		contextMenu.addMenuListener(this);
+		Menu menu= contextMenu.createContextMenu(viewer.getControl());
+		viewer.getControl().setMenu(menu);
+		getSite().registerContextMenu(contextMenu, new UnwrappingSelectionProvider(viewer));
+
+		int dndOperations = DND.DROP_COPY | DND.DROP_MOVE | DND.DROP_LINK;
+		Transfer[] transfers = new Transfer[] { LocalTransfer.getInstance(), LocalSelectionTransfer.getTransfer(), FileTransfer.getInstance() };
+		viewer.addDragSupport(dndOperations, transfers, new ViewerDragAdapter(viewer));
+		viewer.addDropSupport(dndOperations, transfers, new EditingDomainViewerDropAdapter(editingDomain, viewer));
+	}
+
+	/**
+	 * This is the method called to load a resource into the editing domain's resource set based on the editor's input.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void createModel() {
+		URI resourceURI = EditUIUtil.getURI(getEditorInput(), editingDomain.getResourceSet().getURIConverter());
+		Exception exception = null;
+		Resource resource = null;
+		try {
+			// Load the resource through the editing domain.
+			//
+			resource = editingDomain.getResourceSet().getResource(resourceURI, true);
+		}
+		catch (Exception e) {
+			exception = e;
+			resource = editingDomain.getResourceSet().getResource(resourceURI, false);
+		}
+
+		Diagnostic diagnostic = analyzeResourceProblems(resource, exception);
+		if (diagnostic.getSeverity() != Diagnostic.OK) {
+			resourceToDiagnosticMap.put(resource,  analyzeResourceProblems(resource, exception));
+		}
+		editingDomain.getResourceSet().eAdapters().add(problemIndicationAdapter);
+	}
+
+	/**
+	 * Returns a diagnostic describing the errors and warnings listed in the resource
+	 * and the specified exception (if any).
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public Diagnostic analyzeResourceProblems(Resource resource, Exception exception) {
+		boolean hasErrors = !resource.getErrors().isEmpty();
+		if (hasErrors || !resource.getWarnings().isEmpty()) {
+			BasicDiagnostic basicDiagnostic =
+				new BasicDiagnostic
+					(hasErrors ? Diagnostic.ERROR : Diagnostic.WARNING,
+					 "org.eclipse.papyrus.interoperability.rpy.metamodel.editor", //$NON-NLS-1$
+					 0,
+					 getString("_UI_CreateModelError_message", resource.getURI()), //$NON-NLS-1$
+					 new Object [] { exception == null ? (Object)resource : exception });
+			basicDiagnostic.merge(EcoreUtil.computeDiagnostic(resource, true));
+			return basicDiagnostic;
+		}
+		else if (exception != null) {
+			return
+				new BasicDiagnostic
+					(Diagnostic.ERROR,
+					 "org.eclipse.papyrus.interoperability.rpy.metamodel.editor", //$NON-NLS-1$
+					 0,
+					 getString("_UI_CreateModelError_message", resource.getURI()), //$NON-NLS-1$
+					 new Object[] { exception });
+		}
+		else {
+			return Diagnostic.OK_INSTANCE;
+		}
+	}
+
+	/**
+	 * This is the method used by the framework to install your own controls.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void createPages() {
+		// Creates the model from the editor input
+		//
+		createModel();
+
+		// Only creates the other pages if there is something that can be edited
+		//
+		if (!getEditingDomain().getResourceSet().getResources().isEmpty()) {
+			// Create a page for the selection tree view.
+			//
+			{
+				ViewerPane viewerPane =
+					new ViewerPane(getSite().getPage(), UMLRpyEditor.this) {
+						@Override
+						public Viewer createViewer(Composite composite) {
+							Tree tree = new Tree(composite, SWT.MULTI);
+							TreeViewer newTreeViewer = new TreeViewer(tree);
+							return newTreeViewer;
+						}
+						@Override
+						public void requestActivation() {
+							super.requestActivation();
+							setCurrentViewerPane(this);
+						}
+					};
+				viewerPane.createControl(getContainer());
+
+				selectionViewer = (TreeViewer)viewerPane.getViewer();
+				selectionViewer.setContentProvider(new AdapterFactoryContentProvider(adapterFactory));
+
+				selectionViewer.setLabelProvider(new AdapterFactoryLabelProvider(adapterFactory));
+				selectionViewer.setInput(editingDomain.getResourceSet());
+				selectionViewer.setSelection(new StructuredSelection(editingDomain.getResourceSet().getResources().get(0)), true);
+				viewerPane.setTitle(editingDomain.getResourceSet());
+
+				new AdapterFactoryTreeEditor(selectionViewer.getTree(), adapterFactory);
+
+				createContextMenuFor(selectionViewer);
+				int pageIndex = addPage(viewerPane.getControl());
+				setPageText(pageIndex, getString("_UI_SelectionPage_label")); //$NON-NLS-1$
+			}
+
+			// Create a page for the parent tree view.
+			//
+			{
+				ViewerPane viewerPane =
+					new ViewerPane(getSite().getPage(), UMLRpyEditor.this) {
+						@Override
+						public Viewer createViewer(Composite composite) {
+							Tree tree = new Tree(composite, SWT.MULTI);
+							TreeViewer newTreeViewer = new TreeViewer(tree);
+							return newTreeViewer;
+						}
+						@Override
+						public void requestActivation() {
+							super.requestActivation();
+							setCurrentViewerPane(this);
+						}
+					};
+				viewerPane.createControl(getContainer());
+
+				parentViewer = (TreeViewer)viewerPane.getViewer();
+				parentViewer.setAutoExpandLevel(30);
+				parentViewer.setContentProvider(new ReverseAdapterFactoryContentProvider(adapterFactory));
+				parentViewer.setLabelProvider(new AdapterFactoryLabelProvider(adapterFactory));
+
+				createContextMenuFor(parentViewer);
+				int pageIndex = addPage(viewerPane.getControl());
+				setPageText(pageIndex, getString("_UI_ParentPage_label")); //$NON-NLS-1$
+			}
+
+			// This is the page for the list viewer
+			//
+			{
+				ViewerPane viewerPane =
+					new ViewerPane(getSite().getPage(), UMLRpyEditor.this) {
+						@Override
+						public Viewer createViewer(Composite composite) {
+							return new ListViewer(composite);
+						}
+						@Override
+						public void requestActivation() {
+							super.requestActivation();
+							setCurrentViewerPane(this);
+						}
+					};
+				viewerPane.createControl(getContainer());
+				listViewer = (ListViewer)viewerPane.getViewer();
+				listViewer.setContentProvider(new AdapterFactoryContentProvider(adapterFactory));
+				listViewer.setLabelProvider(new AdapterFactoryLabelProvider(adapterFactory));
+
+				createContextMenuFor(listViewer);
+				int pageIndex = addPage(viewerPane.getControl());
+				setPageText(pageIndex, getString("_UI_ListPage_label")); //$NON-NLS-1$
+			}
+
+			// This is the page for the tree viewer
+			//
+			{
+				ViewerPane viewerPane =
+					new ViewerPane(getSite().getPage(), UMLRpyEditor.this) {
+						@Override
+						public Viewer createViewer(Composite composite) {
+							return new TreeViewer(composite);
+						}
+						@Override
+						public void requestActivation() {
+							super.requestActivation();
+							setCurrentViewerPane(this);
+						}
+					};
+				viewerPane.createControl(getContainer());
+				treeViewer = (TreeViewer)viewerPane.getViewer();
+				treeViewer.setContentProvider(new AdapterFactoryContentProvider(adapterFactory));
+				treeViewer.setLabelProvider(new AdapterFactoryLabelProvider(adapterFactory));
+
+				new AdapterFactoryTreeEditor(treeViewer.getTree(), adapterFactory);
+
+				createContextMenuFor(treeViewer);
+				int pageIndex = addPage(viewerPane.getControl());
+				setPageText(pageIndex, getString("_UI_TreePage_label")); //$NON-NLS-1$
+			}
+
+			// This is the page for the table viewer.
+			//
+			{
+				ViewerPane viewerPane =
+					new ViewerPane(getSite().getPage(), UMLRpyEditor.this) {
+						@Override
+						public Viewer createViewer(Composite composite) {
+							return new TableViewer(composite);
+						}
+						@Override
+						public void requestActivation() {
+							super.requestActivation();
+							setCurrentViewerPane(this);
+						}
+					};
+				viewerPane.createControl(getContainer());
+				tableViewer = (TableViewer)viewerPane.getViewer();
+
+				Table table = tableViewer.getTable();
+				TableLayout layout = new TableLayout();
+				table.setLayout(layout);
+				table.setHeaderVisible(true);
+				table.setLinesVisible(true);
+
+				TableColumn objectColumn = new TableColumn(table, SWT.NONE);
+				layout.addColumnData(new ColumnWeightData(3, 100, true));
+				objectColumn.setText(getString("_UI_ObjectColumn_label")); //$NON-NLS-1$
+				objectColumn.setResizable(true);
+
+				TableColumn selfColumn = new TableColumn(table, SWT.NONE);
+				layout.addColumnData(new ColumnWeightData(2, 100, true));
+				selfColumn.setText(getString("_UI_SelfColumn_label")); //$NON-NLS-1$
+				selfColumn.setResizable(true);
+
+				tableViewer.setColumnProperties(new String [] {"a", "b"}); //$NON-NLS-1$ //$NON-NLS-2$
+				tableViewer.setContentProvider(new AdapterFactoryContentProvider(adapterFactory));
+				tableViewer.setLabelProvider(new AdapterFactoryLabelProvider(adapterFactory));
+
+				createContextMenuFor(tableViewer);
+				int pageIndex = addPage(viewerPane.getControl());
+				setPageText(pageIndex, getString("_UI_TablePage_label")); //$NON-NLS-1$
+			}
+
+			// This is the page for the table tree viewer.
+			//
+			{
+				ViewerPane viewerPane =
+					new ViewerPane(getSite().getPage(), UMLRpyEditor.this) {
+						@Override
+						public Viewer createViewer(Composite composite) {
+							return new TreeViewer(composite);
+						}
+						@Override
+						public void requestActivation() {
+							super.requestActivation();
+							setCurrentViewerPane(this);
+						}
+					};
+				viewerPane.createControl(getContainer());
+
+				treeViewerWithColumns = (TreeViewer)viewerPane.getViewer();
+
+				Tree tree = treeViewerWithColumns.getTree();
+				tree.setLayoutData(new FillLayout());
+				tree.setHeaderVisible(true);
+				tree.setLinesVisible(true);
+
+				TreeColumn objectColumn = new TreeColumn(tree, SWT.NONE);
+				objectColumn.setText(getString("_UI_ObjectColumn_label")); //$NON-NLS-1$
+				objectColumn.setResizable(true);
+				objectColumn.setWidth(250);
+
+				TreeColumn selfColumn = new TreeColumn(tree, SWT.NONE);
+				selfColumn.setText(getString("_UI_SelfColumn_label")); //$NON-NLS-1$
+				selfColumn.setResizable(true);
+				selfColumn.setWidth(200);
+
+				treeViewerWithColumns.setColumnProperties(new String [] {"a", "b"}); //$NON-NLS-1$ //$NON-NLS-2$
+				treeViewerWithColumns.setContentProvider(new AdapterFactoryContentProvider(adapterFactory));
+				treeViewerWithColumns.setLabelProvider(new AdapterFactoryLabelProvider(adapterFactory));
+
+				createContextMenuFor(treeViewerWithColumns);
+				int pageIndex = addPage(viewerPane.getControl());
+				setPageText(pageIndex, getString("_UI_TreeWithColumnsPage_label")); //$NON-NLS-1$
+			}
+
+			getSite().getShell().getDisplay().asyncExec
+				(new Runnable() {
+					 public void run() {
+						 setActivePage(0);
+					 }
+				 });
+		}
+
+		// Ensures that this editor will only display the page's tab
+		// area if there are more than one page
+		//
+		getContainer().addControlListener
+			(new ControlAdapter() {
+				boolean guard = false;
+				@Override
+				public void controlResized(ControlEvent event) {
+					if (!guard) {
+						guard = true;
+						hideTabs();
+						guard = false;
+					}
+				}
+			 });
+
+		getSite().getShell().getDisplay().asyncExec
+			(new Runnable() {
+				 public void run() {
+					 updateProblemIndication();
+				 }
+			 });
+	}
+
+	/**
+	 * If there is just one page in the multi-page editor part,
+	 * this hides the single tab at the bottom.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void hideTabs() {
+		if (getPageCount() <= 1) {
+			setPageText(0, ""); //$NON-NLS-1$
+			if (getContainer() instanceof CTabFolder) {
+				((CTabFolder)getContainer()).setTabHeight(1);
+				Point point = getContainer().getSize();
+				getContainer().setSize(point.x, point.y + 6);
+			}
+		}
+	}
+
+	/**
+	 * If there is more than one page in the multi-page editor part,
+	 * this shows the tabs at the bottom.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void showTabs() {
+		if (getPageCount() > 1) {
+			setPageText(0, getString("_UI_SelectionPage_label")); //$NON-NLS-1$
+			if (getContainer() instanceof CTabFolder) {
+				((CTabFolder)getContainer()).setTabHeight(SWT.DEFAULT);
+				Point point = getContainer().getSize();
+				getContainer().setSize(point.x, point.y - 6);
+			}
+		}
+	}
+
+	/**
+	 * This is used to track the active viewer.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected void pageChange(int pageIndex) {
+		super.pageChange(pageIndex);
+
+		if (contentOutlinePage != null) {
+			handleContentOutlineSelection(contentOutlinePage.getSelection());
+		}
+	}
+
+	/**
+	 * This is how the framework determines which interfaces we implement.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@SuppressWarnings("rawtypes")
+	@Override
+	public Object getAdapter(Class key) {
+		if (key.equals(IContentOutlinePage.class)) {
+			return showOutlineView() ? getContentOutlinePage() : null;
+		}
+		else if (key.equals(IPropertySheetPage.class)) {
+			return getPropertySheetPage();
+		}
+		else if (key.equals(IGotoMarker.class)) {
+			return this;
+		}
+		else {
+			return super.getAdapter(key);
+		}
+	}
+
+	/**
+	 * This accesses a cached version of the content outliner.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IContentOutlinePage getContentOutlinePage() {
+		if (contentOutlinePage == null) {
+			// The content outline is just a tree.
+			//
+			class MyContentOutlinePage extends ContentOutlinePage {
+				@Override
+				public void createControl(Composite parent) {
+					super.createControl(parent);
+					contentOutlineViewer = getTreeViewer();
+					contentOutlineViewer.addSelectionChangedListener(this);
+
+					// Set up the tree viewer.
+					//
+					contentOutlineViewer.setContentProvider(new AdapterFactoryContentProvider(adapterFactory));
+					contentOutlineViewer.setLabelProvider(new AdapterFactoryLabelProvider(adapterFactory));
+					contentOutlineViewer.setInput(editingDomain.getResourceSet());
+
+					// Make sure our popups work.
+					//
+					createContextMenuFor(contentOutlineViewer);
+
+					if (!editingDomain.getResourceSet().getResources().isEmpty()) {
+					  // Select the root object in the view.
+					  //
+					  contentOutlineViewer.setSelection(new StructuredSelection(editingDomain.getResourceSet().getResources().get(0)), true);
+					}
+				}
+
+				@Override
+				public void makeContributions(IMenuManager menuManager, IToolBarManager toolBarManager, IStatusLineManager statusLineManager) {
+					super.makeContributions(menuManager, toolBarManager, statusLineManager);
+					contentOutlineStatusLineManager = statusLineManager;
+				}
+
+				@Override
+				public void setActionBars(IActionBars actionBars) {
+					super.setActionBars(actionBars);
+					getActionBarContributor().shareGlobalActions(this, actionBars);
+				}
+			}
+
+			contentOutlinePage = new MyContentOutlinePage();
+
+			// Listen to selection so that we can handle it is a special way.
+			//
+			contentOutlinePage.addSelectionChangedListener
+				(new ISelectionChangedListener() {
+					 // This ensures that we handle selections correctly.
+					 //
+					 public void selectionChanged(SelectionChangedEvent event) {
+						 handleContentOutlineSelection(event.getSelection());
+					 }
+				 });
+		}
+
+		return contentOutlinePage;
+	}
+
+	/**
+	 * This accesses a cached version of the property sheet.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IPropertySheetPage getPropertySheetPage() {
+		PropertySheetPage propertySheetPage =
+			new ExtendedPropertySheetPage(editingDomain) {
+				@Override
+				public void setSelectionToViewer(List<?> selection) {
+					UMLRpyEditor.this.setSelectionToViewer(selection);
+					UMLRpyEditor.this.setFocus();
+				}
+
+				@Override
+				public void setActionBars(IActionBars actionBars) {
+					super.setActionBars(actionBars);
+					getActionBarContributor().shareGlobalActions(this, actionBars);
+				}
+			};
+		propertySheetPage.setPropertySourceProvider(new AdapterFactoryContentProvider(adapterFactory));
+		propertySheetPages.add(propertySheetPage);
+
+		return propertySheetPage;
+	}
+
+	/**
+	 * This deals with how we want selection in the outliner to affect the other views.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void handleContentOutlineSelection(ISelection selection) {
+		if (currentViewerPane != null && !selection.isEmpty() && selection instanceof IStructuredSelection) {
+			Iterator<?> selectedElements = ((IStructuredSelection)selection).iterator();
+			if (selectedElements.hasNext()) {
+				// Get the first selected element.
+				//
+				Object selectedElement = selectedElements.next();
+
+				// If it's the selection viewer, then we want it to select the same selection as this selection.
+				//
+				if (currentViewerPane.getViewer() == selectionViewer) {
+					ArrayList<Object> selectionList = new ArrayList<Object>();
+					selectionList.add(selectedElement);
+					while (selectedElements.hasNext()) {
+						selectionList.add(selectedElements.next());
+					}
+
+					// Set the selection to the widget.
+					//
+					selectionViewer.setSelection(new StructuredSelection(selectionList));
+				}
+				else {
+					// Set the input to the widget.
+					//
+					if (currentViewerPane.getViewer().getInput() != selectedElement) {
+						currentViewerPane.getViewer().setInput(selectedElement);
+						currentViewerPane.setTitle(selectedElement);
+					}
+				}
+			}
+		}
+	}
+
+	/**
+	 * This is for implementing {@link IEditorPart} and simply tests the command stack.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public boolean isDirty() {
+		return ((BasicCommandStack)editingDomain.getCommandStack()).isSaveNeeded();
+	}
+
+	/**
+	 * This is for implementing {@link IEditorPart} and simply saves the model file.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void doSave(IProgressMonitor progressMonitor) {
+		// Save only resources that have actually changed.
+		//
+		final Map<Object, Object> saveOptions = new HashMap<Object, Object>();
+		saveOptions.put(Resource.OPTION_SAVE_ONLY_IF_CHANGED, Resource.OPTION_SAVE_ONLY_IF_CHANGED_MEMORY_BUFFER);
+		saveOptions.put(Resource.OPTION_LINE_DELIMITER, Resource.OPTION_LINE_DELIMITER_UNSPECIFIED);
+
+		// Do the work within an operation because this is a long running activity that modifies the workbench.
+		//
+		WorkspaceModifyOperation operation =
+			new WorkspaceModifyOperation() {
+				// This is the method that gets invoked when the operation runs.
+				//
+				@Override
+				public void execute(IProgressMonitor monitor) {
+					// Save the resources to the file system.
+					//
+					boolean first = true;
+					for (Resource resource : editingDomain.getResourceSet().getResources()) {
+						if ((first || !resource.getContents().isEmpty() || isPersisted(resource)) && !editingDomain.isReadOnly(resource)) {
+							try {
+								long timeStamp = resource.getTimeStamp();
+								resource.save(saveOptions);
+								if (resource.getTimeStamp() != timeStamp) {
+									savedResources.add(resource);
+								}
+							}
+							catch (Exception exception) {
+								resourceToDiagnosticMap.put(resource, analyzeResourceProblems(resource, exception));
+							}
+							first = false;
+						}
+					}
+				}
+			};
+
+		updateProblemIndication = false;
+		try {
+			// This runs the options, and shows progress.
+			//
+			new ProgressMonitorDialog(getSite().getShell()).run(true, false, operation);
+
+			// Refresh the necessary state.
+			//
+			((BasicCommandStack)editingDomain.getCommandStack()).saveIsDone();
+			firePropertyChange(IEditorPart.PROP_DIRTY);
+		}
+		catch (Exception exception) {
+			// Something went wrong that shouldn't.
+			//
+			rpymetamodelEditorPlugin.INSTANCE.log(exception);
+		}
+		updateProblemIndication = true;
+		updateProblemIndication();
+	}
+
+	/**
+	 * This returns whether something has been persisted to the URI of the specified resource.
+	 * The implementation uses the URI converter from the editor's resource set to try to open an input stream.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected boolean isPersisted(Resource resource) {
+		boolean result = false;
+		try {
+			InputStream stream = editingDomain.getResourceSet().getURIConverter().createInputStream(resource.getURI());
+			if (stream != null) {
+				result = true;
+				stream.close();
+			}
+		}
+		catch (IOException e) {
+			// Ignore
+		}
+		return result;
+	}
+
+	/**
+	 * This always returns true because it is not currently supported.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public boolean isSaveAsAllowed() {
+		return true;
+	}
+
+	/**
+	 * This also changes the editor's input.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void doSaveAs() {
+		SaveAsDialog saveAsDialog = new SaveAsDialog(getSite().getShell());
+		saveAsDialog.open();
+		IPath path = saveAsDialog.getResult();
+		if (path != null) {
+			IFile file = ResourcesPlugin.getWorkspace().getRoot().getFile(path);
+			if (file != null) {
+				doSaveAs(URI.createPlatformResourceURI(file.getFullPath().toString(), true), new FileEditorInput(file));
+			}
+		}
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void doSaveAs(URI uri, IEditorInput editorInput) {
+		(editingDomain.getResourceSet().getResources().get(0)).setURI(uri);
+		setInputWithNotify(editorInput);
+		setPartName(editorInput.getName());
+		IProgressMonitor progressMonitor =
+			getActionBars().getStatusLineManager() != null ?
+				getActionBars().getStatusLineManager().getProgressMonitor() :
+				new NullProgressMonitor();
+		doSave(progressMonitor);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void gotoMarker(IMarker marker) {
+		List<?> targetObjects = markerHelper.getTargetObjects(editingDomain, marker);
+		if (!targetObjects.isEmpty()) {
+			setSelectionToViewer(targetObjects);
+		}
+	}
+
+	/**
+	 * This is called during startup.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void init(IEditorSite site, IEditorInput editorInput) {
+		setSite(site);
+		setInputWithNotify(editorInput);
+		setPartName(editorInput.getName());
+		site.setSelectionProvider(this);
+		site.getPage().addPartListener(partListener);
+		ResourcesPlugin.getWorkspace().addResourceChangeListener(resourceChangeListener, IResourceChangeEvent.POST_CHANGE);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void setFocus() {
+		if (currentViewerPane != null) {
+			currentViewerPane.setFocus();
+		}
+		else {
+			getControl(getActivePage()).setFocus();
+		}
+	}
+
+	/**
+	 * This implements {@link org.eclipse.jface.viewers.ISelectionProvider}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void addSelectionChangedListener(ISelectionChangedListener listener) {
+		selectionChangedListeners.add(listener);
+	}
+
+	/**
+	 * This implements {@link org.eclipse.jface.viewers.ISelectionProvider}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void removeSelectionChangedListener(ISelectionChangedListener listener) {
+		selectionChangedListeners.remove(listener);
+	}
+
+	/**
+	 * This implements {@link org.eclipse.jface.viewers.ISelectionProvider} to return this editor's overall selection.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public ISelection getSelection() {
+		return editorSelection;
+	}
+
+	/**
+	 * This implements {@link org.eclipse.jface.viewers.ISelectionProvider} to set this editor's overall selection.
+	 * Calling this result will notify the listeners.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setSelection(ISelection selection) {
+		editorSelection = selection;
+
+		for (ISelectionChangedListener listener : selectionChangedListeners) {
+			listener.selectionChanged(new SelectionChangedEvent(this, selection));
+		}
+		setStatusLineManager(selection);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setStatusLineManager(ISelection selection) {
+		IStatusLineManager statusLineManager = currentViewer != null && currentViewer == contentOutlineViewer ?
+			contentOutlineStatusLineManager : getActionBars().getStatusLineManager();
+
+		if (statusLineManager != null) {
+			if (selection instanceof IStructuredSelection) {
+				Collection<?> collection = ((IStructuredSelection)selection).toList();
+				switch (collection.size()) {
+					case 0: {
+						statusLineManager.setMessage(getString("_UI_NoObjectSelected")); //$NON-NLS-1$
+						break;
+					}
+					case 1: {
+						String text = new AdapterFactoryItemDelegator(adapterFactory).getText(collection.iterator().next());
+						statusLineManager.setMessage(getString("_UI_SingleObjectSelected", text)); //$NON-NLS-1$
+						break;
+					}
+					default: {
+						statusLineManager.setMessage(getString("_UI_MultiObjectSelected", Integer.toString(collection.size()))); //$NON-NLS-1$
+						break;
+					}
+				}
+			}
+			else {
+				statusLineManager.setMessage(""); //$NON-NLS-1$
+			}
+		}
+	}
+
+	/**
+	 * This looks up a string in the plugin's plugin.properties file.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	private static String getString(String key) {
+		return rpymetamodelEditorPlugin.INSTANCE.getString(key);
+	}
+
+	/**
+	 * This looks up a string in plugin.properties, making a substitution.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	private static String getString(String key, Object s1) {
+		return rpymetamodelEditorPlugin.INSTANCE.getString(key, new Object [] { s1 });
+	}
+
+	/**
+	 * This implements {@link org.eclipse.jface.action.IMenuListener} to help fill the context menus with contributions from the Edit menu.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void menuAboutToShow(IMenuManager menuManager) {
+		((IMenuListener)getEditorSite().getActionBarContributor()).menuAboutToShow(menuManager);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EditingDomainActionBarContributor getActionBarContributor() {
+		return (EditingDomainActionBarContributor)getEditorSite().getActionBarContributor();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IActionBars getActionBars() {
+		return getActionBarContributor().getActionBars();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public AdapterFactory getAdapterFactory() {
+		return adapterFactory;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void dispose() {
+		updateProblemIndication = false;
+
+		ResourcesPlugin.getWorkspace().removeResourceChangeListener(resourceChangeListener);
+
+		getSite().getPage().removePartListener(partListener);
+
+		adapterFactory.dispose();
+
+		if (getActionBarContributor().getActiveEditor() == this) {
+			getActionBarContributor().setActiveEditor(null);
+		}
+
+		for (PropertySheetPage propertySheetPage : propertySheetPages) {
+			propertySheetPage.dispose();
+		}
+
+		if (contentOutlinePage != null) {
+			contentOutlinePage.dispose();
+		}
+
+		super.dispose();
+	}
+
+	/**
+	 * Returns whether the outline view should be presented to the user.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected boolean showOutlineView() {
+		return true;
+	}
+}
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.editor/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/presentation/UMLRpyModelWizard.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.editor/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/presentation/UMLRpyModelWizard.java
new file mode 100755
index 0000000..91b5036
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.editor/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/presentation/UMLRpyModelWizard.java
@@ -0,0 +1,638 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.presentation;
+
+
+import java.util.ArrayList;
+import java.util.Arrays;
+import java.util.Collection;
+import java.util.Collections;
+import java.util.HashMap;
+import java.util.List;
+import java.util.Map;
+import java.util.MissingResourceException;
+import java.util.StringTokenizer;
+
+import org.eclipse.emf.common.CommonPlugin;
+
+import org.eclipse.emf.common.util.URI;
+
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.EClassifier;
+
+import org.eclipse.emf.ecore.resource.Resource;
+import org.eclipse.emf.ecore.resource.ResourceSet;
+
+import org.eclipse.emf.ecore.resource.impl.ResourceSetImpl;
+
+import org.eclipse.emf.ecore.EObject;
+
+import org.eclipse.emf.ecore.xmi.XMLResource;
+
+import org.eclipse.emf.edit.ui.provider.ExtendedImageRegistry;
+
+import org.eclipse.core.resources.IContainer;
+import org.eclipse.core.resources.IFile;
+import org.eclipse.core.resources.IFolder;
+import org.eclipse.core.resources.IProject;
+import org.eclipse.core.resources.IResource;
+import org.eclipse.core.resources.ResourcesPlugin;
+
+import org.eclipse.core.runtime.IProgressMonitor;
+
+import org.eclipse.jface.dialogs.MessageDialog;
+
+import org.eclipse.jface.viewers.IStructuredSelection;
+
+import org.eclipse.jface.wizard.Wizard;
+import org.eclipse.jface.wizard.WizardPage;
+
+import org.eclipse.swt.SWT;
+
+import org.eclipse.swt.events.ModifyListener;
+import org.eclipse.swt.events.ModifyEvent;
+
+import org.eclipse.swt.layout.GridData;
+import org.eclipse.swt.layout.GridLayout;
+
+import org.eclipse.swt.widgets.Combo;
+import org.eclipse.swt.widgets.Composite;
+import org.eclipse.swt.widgets.Label;
+
+import org.eclipse.ui.INewWizard;
+import org.eclipse.ui.IWorkbench;
+
+import org.eclipse.ui.actions.WorkspaceModifyOperation;
+
+import org.eclipse.ui.dialogs.WizardNewFileCreationPage;
+
+import org.eclipse.ui.part.FileEditorInput;
+import org.eclipse.ui.part.ISetSelectionTarget;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyFactory;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.provider.rpymetamodelEditPlugin;
+
+
+import org.eclipse.core.runtime.Path;
+
+import org.eclipse.jface.viewers.ISelection;
+import org.eclipse.jface.viewers.StructuredSelection;
+
+import org.eclipse.ui.IWorkbenchPage;
+import org.eclipse.ui.IWorkbenchPart;
+import org.eclipse.ui.IWorkbenchWindow;
+import org.eclipse.ui.PartInitException;
+
+
+/**
+ * This is a simple wizard for creating a new model file.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class UMLRpyModelWizard extends Wizard implements INewWizard {
+	/**
+	 * The supported extensions for created files.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public static final List<String> FILE_EXTENSIONS =
+		Collections.unmodifiableList(Arrays.asList(rpymetamodelEditorPlugin.INSTANCE.getString("_UI_UMLRpyEditorFilenameExtensions").split("\\s*,\\s*"))); //$NON-NLS-1$ //$NON-NLS-2$
+
+	/**
+	 * A formatted list of supported file extensions, suitable for display.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public static final String FORMATTED_FILE_EXTENSIONS =
+		rpymetamodelEditorPlugin.INSTANCE.getString("_UI_UMLRpyEditorFilenameExtensions").replaceAll("\\s*,\\s*", ", "); //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+
+	/**
+	 * This caches an instance of the model package.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected UMLRpyPackage umlRpyPackage = UMLRpyPackage.eINSTANCE;
+
+	/**
+	 * This caches an instance of the model factory.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected UMLRpyFactory umlRpyFactory = umlRpyPackage.getUMLRpyFactory();
+
+	/**
+	 * This is the file creation page.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected UMLRpyModelWizardNewFileCreationPage newFileCreationPage;
+
+	/**
+	 * This is the initial object creation page.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected UMLRpyModelWizardInitialObjectCreationPage initialObjectCreationPage;
+
+	/**
+	 * Remember the selection during initialization for populating the default container.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected IStructuredSelection selection;
+
+	/**
+	 * Remember the workbench during initialization.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected IWorkbench workbench;
+
+	/**
+	 * Caches the names of the types that can be created as the root object.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected List<String> initialObjectNames;
+
+	/**
+	 * This just records the information.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void init(IWorkbench workbench, IStructuredSelection selection) {
+		this.workbench = workbench;
+		this.selection = selection;
+		setWindowTitle(rpymetamodelEditorPlugin.INSTANCE.getString("_UI_Wizard_label")); //$NON-NLS-1$
+		setDefaultPageImageDescriptor(ExtendedImageRegistry.INSTANCE.getImageDescriptor(rpymetamodelEditorPlugin.INSTANCE.getImage("full/wizban/NewUMLRpy"))); //$NON-NLS-1$
+	}
+
+	/**
+	 * Returns the names of the types that can be created as the root object.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected Collection<String> getInitialObjectNames() {
+		if (initialObjectNames == null) {
+			initialObjectNames = new ArrayList<String>();
+			for (EClassifier eClassifier : umlRpyPackage.getEClassifiers()) {
+				if (eClassifier instanceof EClass) {
+					EClass eClass = (EClass)eClassifier;
+					if (!eClass.isAbstract()) {
+						initialObjectNames.add(eClass.getName());
+					}
+				}
+			}
+			Collections.sort(initialObjectNames, CommonPlugin.INSTANCE.getComparator());
+		}
+		return initialObjectNames;
+	}
+
+	/**
+	 * Create a new model.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected EObject createInitialModel() {
+		EClass eClass = (EClass)umlRpyPackage.getEClassifier(initialObjectCreationPage.getInitialObjectName());
+		EObject rootObject = umlRpyFactory.create(eClass);
+		return rootObject;
+	}
+
+	/**
+	 * Do the work after everything is specified.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public boolean performFinish() {
+		try {
+			// Remember the file.
+			//
+			final IFile modelFile = getModelFile();
+
+			// Do the work within an operation.
+			//
+			WorkspaceModifyOperation operation =
+				new WorkspaceModifyOperation() {
+					@Override
+					protected void execute(IProgressMonitor progressMonitor) {
+						try {
+							// Create a resource set
+							//
+							ResourceSet resourceSet = new ResourceSetImpl();
+
+							// Get the URI of the model file.
+							//
+							URI fileURI = URI.createPlatformResourceURI(modelFile.getFullPath().toString(), true);
+
+							// Create a resource for this file.
+							//
+							Resource resource = resourceSet.createResource(fileURI);
+
+							// Add the initial model object to the contents.
+							//
+							EObject rootObject = createInitialModel();
+							if (rootObject != null) {
+								resource.getContents().add(rootObject);
+							}
+
+							// Save the contents of the resource to the file system.
+							//
+							Map<Object, Object> options = new HashMap<Object, Object>();
+							options.put(XMLResource.OPTION_ENCODING, initialObjectCreationPage.getEncoding());
+							resource.save(options);
+						}
+						catch (Exception exception) {
+							rpymetamodelEditorPlugin.INSTANCE.log(exception);
+						}
+						finally {
+							progressMonitor.done();
+						}
+					}
+				};
+
+			getContainer().run(false, false, operation);
+
+			// Select the new file resource in the current view.
+			//
+			IWorkbenchWindow workbenchWindow = workbench.getActiveWorkbenchWindow();
+			IWorkbenchPage page = workbenchWindow.getActivePage();
+			final IWorkbenchPart activePart = page.getActivePart();
+			if (activePart instanceof ISetSelectionTarget) {
+				final ISelection targetSelection = new StructuredSelection(modelFile);
+				getShell().getDisplay().asyncExec
+					(new Runnable() {
+						 public void run() {
+							 ((ISetSelectionTarget)activePart).selectReveal(targetSelection);
+						 }
+					 });
+			}
+
+			// Open an editor on the new file.
+			//
+			try {
+				page.openEditor
+					(new FileEditorInput(modelFile),
+					 workbench.getEditorRegistry().getDefaultEditor(modelFile.getFullPath().toString()).getId());					 	 
+			}
+			catch (PartInitException exception) {
+				MessageDialog.openError(workbenchWindow.getShell(), rpymetamodelEditorPlugin.INSTANCE.getString("_UI_OpenEditorError_label"), exception.getMessage()); //$NON-NLS-1$
+				return false;
+			}
+
+			return true;
+		}
+		catch (Exception exception) {
+			rpymetamodelEditorPlugin.INSTANCE.log(exception);
+			return false;
+		}
+	}
+
+	/**
+	 * This is the one page of the wizard.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public class UMLRpyModelWizardNewFileCreationPage extends WizardNewFileCreationPage {
+		/**
+		 * Pass in the selection.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @generated
+		 */
+		public UMLRpyModelWizardNewFileCreationPage(String pageId, IStructuredSelection selection) {
+			super(pageId, selection);
+		}
+
+		/**
+		 * The framework calls this to see if the file is correct.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @generated
+		 */
+		@Override
+		protected boolean validatePage() {
+			if (super.validatePage()) {
+				String extension = new Path(getFileName()).getFileExtension();
+				if (extension == null || !FILE_EXTENSIONS.contains(extension)) {
+					String key = FILE_EXTENSIONS.size() > 1 ? "_WARN_FilenameExtensions" : "_WARN_FilenameExtension"; //$NON-NLS-1$ //$NON-NLS-2$
+					setErrorMessage(rpymetamodelEditorPlugin.INSTANCE.getString(key, new Object [] { FORMATTED_FILE_EXTENSIONS }));
+					return false;
+				}
+				return true;
+			}
+			return false;
+		}
+
+		/**
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @generated
+		 */
+		public IFile getModelFile() {
+			return ResourcesPlugin.getWorkspace().getRoot().getFile(getContainerFullPath().append(getFileName()));
+		}
+	}
+
+	/**
+	 * This is the page where the type of object to create is selected.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public class UMLRpyModelWizardInitialObjectCreationPage extends WizardPage {
+		/**
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @generated
+		 */
+		protected Combo initialObjectField;
+
+		/**
+		 * @generated
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 */
+		protected List<String> encodings;
+
+		/**
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @generated
+		 */
+		protected Combo encodingField;
+
+		/**
+		 * Pass in the selection.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @generated
+		 */
+		public UMLRpyModelWizardInitialObjectCreationPage(String pageId) {
+			super(pageId);
+		}
+
+		/**
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @generated
+		 */
+		public void createControl(Composite parent) {
+			Composite composite = new Composite(parent, SWT.NONE); {
+				GridLayout layout = new GridLayout();
+				layout.numColumns = 1;
+				layout.verticalSpacing = 12;
+				composite.setLayout(layout);
+
+				GridData data = new GridData();
+				data.verticalAlignment = GridData.FILL;
+				data.grabExcessVerticalSpace = true;
+				data.horizontalAlignment = GridData.FILL;
+				composite.setLayoutData(data);
+			}
+
+			Label containerLabel = new Label(composite, SWT.LEFT);
+			{
+				containerLabel.setText(rpymetamodelEditorPlugin.INSTANCE.getString("_UI_ModelObject")); //$NON-NLS-1$
+
+				GridData data = new GridData();
+				data.horizontalAlignment = GridData.FILL;
+				containerLabel.setLayoutData(data);
+			}
+
+			initialObjectField = new Combo(composite, SWT.BORDER);
+			{
+				GridData data = new GridData();
+				data.horizontalAlignment = GridData.FILL;
+				data.grabExcessHorizontalSpace = true;
+				initialObjectField.setLayoutData(data);
+			}
+
+			for (String objectName : getInitialObjectNames()) {
+				initialObjectField.add(getLabel(objectName));
+			}
+
+			if (initialObjectField.getItemCount() == 1) {
+				initialObjectField.select(0);
+			}
+			initialObjectField.addModifyListener(validator);
+
+			Label encodingLabel = new Label(composite, SWT.LEFT);
+			{
+				encodingLabel.setText(rpymetamodelEditorPlugin.INSTANCE.getString("_UI_XMLEncoding")); //$NON-NLS-1$
+
+				GridData data = new GridData();
+				data.horizontalAlignment = GridData.FILL;
+				encodingLabel.setLayoutData(data);
+			}
+			encodingField = new Combo(composite, SWT.BORDER);
+			{
+				GridData data = new GridData();
+				data.horizontalAlignment = GridData.FILL;
+				data.grabExcessHorizontalSpace = true;
+				encodingField.setLayoutData(data);
+			}
+
+			for (String encoding : getEncodings()) {
+				encodingField.add(encoding);
+			}
+
+			encodingField.select(0);
+			encodingField.addModifyListener(validator);
+
+			setPageComplete(validatePage());
+			setControl(composite);
+		}
+
+		/**
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @generated
+		 */
+		protected ModifyListener validator =
+			new ModifyListener() {
+				public void modifyText(ModifyEvent e) {
+					setPageComplete(validatePage());
+				}
+			};
+
+		/**
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @generated
+		 */
+		protected boolean validatePage() {
+			return getInitialObjectName() != null && getEncodings().contains(encodingField.getText());
+		}
+
+		/**
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @generated
+		 */
+		@Override
+		public void setVisible(boolean visible) {
+			super.setVisible(visible);
+			if (visible) {
+				if (initialObjectField.getItemCount() == 1) {
+					initialObjectField.clearSelection();
+					encodingField.setFocus();
+				}
+				else {
+					encodingField.clearSelection();
+					initialObjectField.setFocus();
+				}
+			}
+		}
+
+		/**
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @generated
+		 */
+		public String getInitialObjectName() {
+			String label = initialObjectField.getText();
+
+			for (String name : getInitialObjectNames()) {
+				if (getLabel(name).equals(label)) {
+					return name;
+				}
+			}
+			return null;
+		}
+
+		/**
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @generated
+		 */
+		public String getEncoding() {
+			return encodingField.getText();
+		}
+
+		/**
+		 * Returns the label for the specified type name.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @generated
+		 */
+		protected String getLabel(String typeName) {
+			try {
+				return rpymetamodelEditPlugin.INSTANCE.getString("_UI_" + typeName + "_type"); //$NON-NLS-1$ //$NON-NLS-2$
+			}
+			catch(MissingResourceException mre) {
+				rpymetamodelEditorPlugin.INSTANCE.log(mre);
+			}
+			return typeName;
+		}
+
+		/**
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @generated
+		 */
+		protected Collection<String> getEncodings() {
+			if (encodings == null) {
+				encodings = new ArrayList<String>();
+				for (StringTokenizer stringTokenizer = new StringTokenizer(rpymetamodelEditorPlugin.INSTANCE.getString("_UI_XMLEncodingChoices")); stringTokenizer.hasMoreTokens(); ) //$NON-NLS-1$
+				{
+					encodings.add(stringTokenizer.nextToken());
+				}
+			}
+			return encodings;
+		}
+	}
+
+	/**
+	 * The framework calls this to create the contents of the wizard.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+		@Override
+	public void addPages() {
+		// Create a page, set the title, and the initial model file name.
+		//
+		newFileCreationPage = new UMLRpyModelWizardNewFileCreationPage("Whatever", selection); //$NON-NLS-1$
+		newFileCreationPage.setTitle(rpymetamodelEditorPlugin.INSTANCE.getString("_UI_UMLRpyModelWizard_label")); //$NON-NLS-1$
+		newFileCreationPage.setDescription(rpymetamodelEditorPlugin.INSTANCE.getString("_UI_UMLRpyModelWizard_description")); //$NON-NLS-1$
+		newFileCreationPage.setFileName(rpymetamodelEditorPlugin.INSTANCE.getString("_UI_UMLRpyEditorFilenameDefaultBase") + "." + FILE_EXTENSIONS.get(0)); //$NON-NLS-1$ //$NON-NLS-2$
+		addPage(newFileCreationPage);
+
+		// Try and get the resource selection to determine a current directory for the file dialog.
+		//
+		if (selection != null && !selection.isEmpty()) {
+			// Get the resource...
+			//
+			Object selectedElement = selection.iterator().next();
+			if (selectedElement instanceof IResource) {
+				// Get the resource parent, if its a file.
+				//
+				IResource selectedResource = (IResource)selectedElement;
+				if (selectedResource.getType() == IResource.FILE) {
+					selectedResource = selectedResource.getParent();
+				}
+
+				// This gives us a directory...
+				//
+				if (selectedResource instanceof IFolder || selectedResource instanceof IProject) {
+					// Set this for the container.
+					//
+					newFileCreationPage.setContainerFullPath(selectedResource.getFullPath());
+
+					// Make up a unique new name here.
+					//
+					String defaultModelBaseFilename = rpymetamodelEditorPlugin.INSTANCE.getString("_UI_UMLRpyEditorFilenameDefaultBase"); //$NON-NLS-1$
+					String defaultModelFilenameExtension = FILE_EXTENSIONS.get(0);
+					String modelFilename = defaultModelBaseFilename + "." + defaultModelFilenameExtension; //$NON-NLS-1$
+					for (int i = 1; ((IContainer)selectedResource).findMember(modelFilename) != null; ++i) {
+						modelFilename = defaultModelBaseFilename + i + "." + defaultModelFilenameExtension; //$NON-NLS-1$
+					}
+					newFileCreationPage.setFileName(modelFilename);
+				}
+			}
+		}
+		initialObjectCreationPage = new UMLRpyModelWizardInitialObjectCreationPage("Whatever2"); //$NON-NLS-1$
+		initialObjectCreationPage.setTitle(rpymetamodelEditorPlugin.INSTANCE.getString("_UI_UMLRpyModelWizard_label")); //$NON-NLS-1$
+		initialObjectCreationPage.setDescription(rpymetamodelEditorPlugin.INSTANCE.getString("_UI_Wizard_initial_object_description")); //$NON-NLS-1$
+		addPage(initialObjectCreationPage);
+	}
+
+	/**
+	 * Get the file from the page.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IFile getModelFile() {
+		return newFileCreationPage.getModelFile();
+	}
+
+}
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.editor/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/presentation/rpymetamodelEditorPlugin.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.editor/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/presentation/rpymetamodelEditorPlugin.java
new file mode 100755
index 0000000..1acfaab
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel.editor/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/presentation/rpymetamodelEditorPlugin.java
@@ -0,0 +1,103 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.presentation;
+
+import org.eclipse.emf.common.EMFPlugin;
+
+import org.eclipse.emf.common.ui.EclipseUIPlugin;
+
+import org.eclipse.emf.common.util.ResourceLocator;
+import org.eclipse.emf.ecore.provider.EcoreEditPlugin;
+
+/**
+ * This is the central singleton for the rpymetamodel editor plugin.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public final class rpymetamodelEditorPlugin extends EMFPlugin {
+	/**
+	 * Keep track of the singleton.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public static final rpymetamodelEditorPlugin INSTANCE = new rpymetamodelEditorPlugin();
+	
+	/**
+	 * Keep track of the singleton.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	private static Implementation plugin;
+
+	/**
+	 * Create the instance.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public rpymetamodelEditorPlugin() {
+		super
+			(new ResourceLocator [] {
+				EcoreEditPlugin.INSTANCE,
+			});
+	}
+
+	/**
+	 * Returns the singleton instance of the Eclipse plugin.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the singleton instance.
+	 * @generated
+	 */
+	@Override
+	public ResourceLocator getPluginResourceLocator() {
+		return plugin;
+	}
+	
+	/**
+	 * Returns the singleton instance of the Eclipse plugin.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the singleton instance.
+	 * @generated
+	 */
+	public static Implementation getPlugin() {
+		return plugin;
+	}
+	
+	/**
+	 * The actual implementation of the Eclipse <b>Plugin</b>.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public static class Implementation extends EclipseUIPlugin {
+		/**
+		 * Creates an instance.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @generated
+		 */
+		public Implementation() {
+			super();
+	
+			// Remember the static instance.
+			//
+			plugin = this;
+		}
+	}
+
+}
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/.classpath b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/.classpath
new file mode 100644
index 0000000..e4dad7e
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/.classpath
@@ -0,0 +1,7 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<classpath>
+	<classpathentry kind="src" path="src-gen"/>
+	<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-1.6"/>
+	<classpathentry kind="con" path="org.eclipse.pde.core.requiredPlugins"/>
+	<classpathentry kind="output" path="bin"/>
+</classpath>
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/.gitignore b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/.gitignore
new file mode 100755
index 0000000..ae3c172
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/.gitignore
@@ -0,0 +1 @@
+/bin/
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/.project b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/.project
new file mode 100644
index 0000000..0274759
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/.project
@@ -0,0 +1,28 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<projectDescription>
+	<name>org.eclipse.papyrus.interoperability.rpy.metamodel</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.jdt.core.javanature</nature>
+		<nature>org.eclipse.pde.PluginNature</nature>
+	</natures>
+</projectDescription>
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/.settings/org.eclipse.jdt.core.prefs b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/.settings/org.eclipse.jdt.core.prefs
new file mode 100644
index 0000000..b3aa6d6
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/.settings/org.eclipse.jdt.core.prefs
@@ -0,0 +1,291 @@
+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
+org.eclipse.jdt.core.formatter.align_type_members_on_columns=false
+org.eclipse.jdt.core.formatter.alignment_for_arguments_in_allocation_expression=16
+org.eclipse.jdt.core.formatter.alignment_for_arguments_in_annotation=0
+org.eclipse.jdt.core.formatter.alignment_for_arguments_in_enum_constant=16
+org.eclipse.jdt.core.formatter.alignment_for_arguments_in_explicit_constructor_call=16
+org.eclipse.jdt.core.formatter.alignment_for_arguments_in_method_invocation=16
+org.eclipse.jdt.core.formatter.alignment_for_arguments_in_qualified_allocation_expression=16
+org.eclipse.jdt.core.formatter.alignment_for_assignment=0
+org.eclipse.jdt.core.formatter.alignment_for_binary_expression=16
+org.eclipse.jdt.core.formatter.alignment_for_compact_if=16
+org.eclipse.jdt.core.formatter.alignment_for_conditional_expression=80
+org.eclipse.jdt.core.formatter.alignment_for_enum_constants=0
+org.eclipse.jdt.core.formatter.alignment_for_expressions_in_array_initializer=16
+org.eclipse.jdt.core.formatter.alignment_for_method_declaration=0
+org.eclipse.jdt.core.formatter.alignment_for_multiple_fields=16
+org.eclipse.jdt.core.formatter.alignment_for_parameters_in_constructor_declaration=16
+org.eclipse.jdt.core.formatter.alignment_for_parameters_in_method_declaration=16
+org.eclipse.jdt.core.formatter.alignment_for_resources_in_try=80
+org.eclipse.jdt.core.formatter.alignment_for_selector_in_method_invocation=16
+org.eclipse.jdt.core.formatter.alignment_for_superclass_in_type_declaration=16
+org.eclipse.jdt.core.formatter.alignment_for_superinterfaces_in_enum_declaration=16
+org.eclipse.jdt.core.formatter.alignment_for_superinterfaces_in_type_declaration=16
+org.eclipse.jdt.core.formatter.alignment_for_throws_clause_in_constructor_declaration=16
+org.eclipse.jdt.core.formatter.alignment_for_throws_clause_in_method_declaration=16
+org.eclipse.jdt.core.formatter.alignment_for_union_type_in_multicatch=16
+org.eclipse.jdt.core.formatter.blank_lines_after_imports=1
+org.eclipse.jdt.core.formatter.blank_lines_after_package=1
+org.eclipse.jdt.core.formatter.blank_lines_before_field=0
+org.eclipse.jdt.core.formatter.blank_lines_before_first_class_body_declaration=0
+org.eclipse.jdt.core.formatter.blank_lines_before_imports=1
+org.eclipse.jdt.core.formatter.blank_lines_before_member_type=1
+org.eclipse.jdt.core.formatter.blank_lines_before_method=1
+org.eclipse.jdt.core.formatter.blank_lines_before_new_chunk=1
+org.eclipse.jdt.core.formatter.blank_lines_before_package=0
+org.eclipse.jdt.core.formatter.blank_lines_between_import_groups=1
+org.eclipse.jdt.core.formatter.blank_lines_between_type_declarations=1
+org.eclipse.jdt.core.formatter.brace_position_for_annotation_type_declaration=end_of_line
+org.eclipse.jdt.core.formatter.brace_position_for_anonymous_type_declaration=end_of_line
+org.eclipse.jdt.core.formatter.brace_position_for_array_initializer=end_of_line
+org.eclipse.jdt.core.formatter.brace_position_for_block=end_of_line
+org.eclipse.jdt.core.formatter.brace_position_for_block_in_case=end_of_line
+org.eclipse.jdt.core.formatter.brace_position_for_constructor_declaration=end_of_line
+org.eclipse.jdt.core.formatter.brace_position_for_enum_constant=end_of_line
+org.eclipse.jdt.core.formatter.brace_position_for_enum_declaration=end_of_line
+org.eclipse.jdt.core.formatter.brace_position_for_lambda_body=end_of_line
+org.eclipse.jdt.core.formatter.brace_position_for_method_declaration=end_of_line
+org.eclipse.jdt.core.formatter.brace_position_for_switch=end_of_line
+org.eclipse.jdt.core.formatter.brace_position_for_type_declaration=end_of_line
+org.eclipse.jdt.core.formatter.comment.clear_blank_lines_in_block_comment=false
+org.eclipse.jdt.core.formatter.comment.clear_blank_lines_in_javadoc_comment=false
+org.eclipse.jdt.core.formatter.comment.format_block_comments=true
+org.eclipse.jdt.core.formatter.comment.format_header=false
+org.eclipse.jdt.core.formatter.comment.format_html=true
+org.eclipse.jdt.core.formatter.comment.format_javadoc_comments=true
+org.eclipse.jdt.core.formatter.comment.format_line_comments=true
+org.eclipse.jdt.core.formatter.comment.format_source_code=true
+org.eclipse.jdt.core.formatter.comment.indent_parameter_description=true
+org.eclipse.jdt.core.formatter.comment.indent_root_tags=true
+org.eclipse.jdt.core.formatter.comment.insert_new_line_before_root_tags=insert
+org.eclipse.jdt.core.formatter.comment.insert_new_line_for_parameter=insert
+org.eclipse.jdt.core.formatter.comment.line_length=260
+org.eclipse.jdt.core.formatter.comment.new_lines_at_block_boundaries=true
+org.eclipse.jdt.core.formatter.comment.new_lines_at_javadoc_boundaries=true
+org.eclipse.jdt.core.formatter.comment.preserve_white_space_between_code_and_line_comments=false
+org.eclipse.jdt.core.formatter.compact_else_if=true
+org.eclipse.jdt.core.formatter.continuation_indentation=2
+org.eclipse.jdt.core.formatter.continuation_indentation_for_array_initializer=2
+org.eclipse.jdt.core.formatter.disabling_tag=@formatter\:off
+org.eclipse.jdt.core.formatter.enabling_tag=@formatter\:on
+org.eclipse.jdt.core.formatter.format_guardian_clause_on_one_line=false
+org.eclipse.jdt.core.formatter.format_line_comment_starting_on_first_column=true
+org.eclipse.jdt.core.formatter.indent_body_declarations_compare_to_annotation_declaration_header=true
+org.eclipse.jdt.core.formatter.indent_body_declarations_compare_to_enum_constant_header=true
+org.eclipse.jdt.core.formatter.indent_body_declarations_compare_to_enum_declaration_header=true
+org.eclipse.jdt.core.formatter.indent_body_declarations_compare_to_type_header=true
+org.eclipse.jdt.core.formatter.indent_breaks_compare_to_cases=true
+org.eclipse.jdt.core.formatter.indent_empty_lines=false
+org.eclipse.jdt.core.formatter.indent_statements_compare_to_block=true
+org.eclipse.jdt.core.formatter.indent_statements_compare_to_body=true
+org.eclipse.jdt.core.formatter.indent_switchstatements_compare_to_cases=true
+org.eclipse.jdt.core.formatter.indent_switchstatements_compare_to_switch=false
+org.eclipse.jdt.core.formatter.indentation.size=4
+org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_field=insert
+org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_local_variable=insert
+org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_method=insert
+org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_package=insert
+org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_parameter=do not insert
+org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_type=insert
+org.eclipse.jdt.core.formatter.insert_new_line_after_label=do not insert
+org.eclipse.jdt.core.formatter.insert_new_line_after_opening_brace_in_array_initializer=do not insert
+org.eclipse.jdt.core.formatter.insert_new_line_after_type_annotation=do not insert
+org.eclipse.jdt.core.formatter.insert_new_line_at_end_of_file_if_missing=do not insert
+org.eclipse.jdt.core.formatter.insert_new_line_before_catch_in_try_statement=do not insert
+org.eclipse.jdt.core.formatter.insert_new_line_before_closing_brace_in_array_initializer=do not insert
+org.eclipse.jdt.core.formatter.insert_new_line_before_else_in_if_statement=do not insert
+org.eclipse.jdt.core.formatter.insert_new_line_before_finally_in_try_statement=do not insert
+org.eclipse.jdt.core.formatter.insert_new_line_before_while_in_do_statement=do not insert
+org.eclipse.jdt.core.formatter.insert_new_line_in_empty_annotation_declaration=insert
+org.eclipse.jdt.core.formatter.insert_new_line_in_empty_anonymous_type_declaration=insert
+org.eclipse.jdt.core.formatter.insert_new_line_in_empty_block=insert
+org.eclipse.jdt.core.formatter.insert_new_line_in_empty_enum_constant=insert
+org.eclipse.jdt.core.formatter.insert_new_line_in_empty_enum_declaration=insert
+org.eclipse.jdt.core.formatter.insert_new_line_in_empty_method_body=insert
+org.eclipse.jdt.core.formatter.insert_new_line_in_empty_type_declaration=insert
+org.eclipse.jdt.core.formatter.insert_space_after_and_in_type_parameter=insert
+org.eclipse.jdt.core.formatter.insert_space_after_assignment_operator=insert
+org.eclipse.jdt.core.formatter.insert_space_after_at_in_annotation=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_at_in_annotation_type_declaration=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_binary_operator=insert
+org.eclipse.jdt.core.formatter.insert_space_after_closing_angle_bracket_in_type_arguments=insert
+org.eclipse.jdt.core.formatter.insert_space_after_closing_angle_bracket_in_type_parameters=insert
+org.eclipse.jdt.core.formatter.insert_space_after_closing_brace_in_block=insert
+org.eclipse.jdt.core.formatter.insert_space_after_closing_paren_in_cast=insert
+org.eclipse.jdt.core.formatter.insert_space_after_colon_in_assert=insert
+org.eclipse.jdt.core.formatter.insert_space_after_colon_in_case=insert
+org.eclipse.jdt.core.formatter.insert_space_after_colon_in_conditional=insert
+org.eclipse.jdt.core.formatter.insert_space_after_colon_in_for=insert
+org.eclipse.jdt.core.formatter.insert_space_after_colon_in_labeled_statement=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_allocation_expression=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_annotation=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_array_initializer=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_constructor_declaration_parameters=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_constructor_declaration_throws=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_enum_constant_arguments=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_enum_declarations=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_explicitconstructorcall_arguments=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_for_increments=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_for_inits=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_method_declaration_parameters=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_method_declaration_throws=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_method_invocation_arguments=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_multiple_field_declarations=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_multiple_local_declarations=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_parameterized_type_reference=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_superinterfaces=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_type_arguments=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_type_parameters=insert
+org.eclipse.jdt.core.formatter.insert_space_after_ellipsis=insert
+org.eclipse.jdt.core.formatter.insert_space_after_lambda_arrow=insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_angle_bracket_in_parameterized_type_reference=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_angle_bracket_in_type_arguments=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_angle_bracket_in_type_parameters=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_brace_in_array_initializer=insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_bracket_in_array_allocation_expression=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_bracket_in_array_reference=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_annotation=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_cast=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_catch=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_constructor_declaration=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_enum_constant=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_for=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_if=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_method_declaration=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_method_invocation=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_parenthesized_expression=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_switch=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_synchronized=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_try=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_while=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_postfix_operator=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_prefix_operator=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_question_in_conditional=insert
+org.eclipse.jdt.core.formatter.insert_space_after_question_in_wildcard=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_semicolon_in_for=insert
+org.eclipse.jdt.core.formatter.insert_space_after_semicolon_in_try_resources=insert
+org.eclipse.jdt.core.formatter.insert_space_after_unary_operator=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_and_in_type_parameter=insert
+org.eclipse.jdt.core.formatter.insert_space_before_assignment_operator=insert
+org.eclipse.jdt.core.formatter.insert_space_before_at_in_annotation_type_declaration=insert
+org.eclipse.jdt.core.formatter.insert_space_before_binary_operator=insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_angle_bracket_in_parameterized_type_reference=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_angle_bracket_in_type_arguments=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_angle_bracket_in_type_parameters=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_brace_in_array_initializer=insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_bracket_in_array_allocation_expression=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_bracket_in_array_reference=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_annotation=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_cast=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_catch=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_constructor_declaration=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_enum_constant=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_for=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_if=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_method_declaration=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_method_invocation=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_parenthesized_expression=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_switch=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_synchronized=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_try=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_while=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_colon_in_assert=insert
+org.eclipse.jdt.core.formatter.insert_space_before_colon_in_case=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_colon_in_conditional=insert
+org.eclipse.jdt.core.formatter.insert_space_before_colon_in_default=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_colon_in_for=insert
+org.eclipse.jdt.core.formatter.insert_space_before_colon_in_labeled_statement=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_allocation_expression=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_annotation=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_array_initializer=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_constructor_declaration_parameters=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_constructor_declaration_throws=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_enum_constant_arguments=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_enum_declarations=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_explicitconstructorcall_arguments=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_for_increments=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_for_inits=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_method_declaration_parameters=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_method_declaration_throws=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_method_invocation_arguments=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_multiple_field_declarations=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_multiple_local_declarations=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_parameterized_type_reference=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_superinterfaces=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_type_arguments=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_type_parameters=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_ellipsis=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_lambda_arrow=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_angle_bracket_in_parameterized_type_reference=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_angle_bracket_in_type_arguments=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_angle_bracket_in_type_parameters=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_annotation_type_declaration=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_anonymous_type_declaration=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_array_initializer=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_block=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_constructor_declaration=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_enum_constant=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_enum_declaration=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_method_declaration=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_switch=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_type_declaration=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_bracket_in_array_allocation_expression=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_bracket_in_array_reference=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_bracket_in_array_type_reference=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_annotation=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_annotation_type_member_declaration=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_catch=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_constructor_declaration=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_enum_constant=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_for=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_if=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_method_declaration=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_method_invocation=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_parenthesized_expression=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_switch=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_synchronized=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_try=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_while=insert
+org.eclipse.jdt.core.formatter.insert_space_before_parenthesized_expression_in_return=insert
+org.eclipse.jdt.core.formatter.insert_space_before_parenthesized_expression_in_throw=insert
+org.eclipse.jdt.core.formatter.insert_space_before_postfix_operator=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_prefix_operator=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_question_in_conditional=insert
+org.eclipse.jdt.core.formatter.insert_space_before_question_in_wildcard=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_semicolon=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_semicolon_in_for=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_semicolon_in_try_resources=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_unary_operator=do not insert
+org.eclipse.jdt.core.formatter.insert_space_between_brackets_in_array_type_reference=do not insert
+org.eclipse.jdt.core.formatter.insert_space_between_empty_braces_in_array_initializer=do not insert
+org.eclipse.jdt.core.formatter.insert_space_between_empty_brackets_in_array_allocation_expression=do not insert
+org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_annotation_type_member_declaration=do not insert
+org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_constructor_declaration=do not insert
+org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_enum_constant=do not insert
+org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_method_declaration=do not insert
+org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_method_invocation=do not insert
+org.eclipse.jdt.core.formatter.join_lines_in_comments=false
+org.eclipse.jdt.core.formatter.join_wrapped_lines=false
+org.eclipse.jdt.core.formatter.keep_else_statement_on_same_line=false
+org.eclipse.jdt.core.formatter.keep_empty_array_initializer_on_one_line=false
+org.eclipse.jdt.core.formatter.keep_imple_if_on_one_line=false
+org.eclipse.jdt.core.formatter.keep_then_statement_on_same_line=false
+org.eclipse.jdt.core.formatter.lineSplit=260
+org.eclipse.jdt.core.formatter.never_indent_block_comments_on_first_column=false
+org.eclipse.jdt.core.formatter.never_indent_line_comments_on_first_column=false
+org.eclipse.jdt.core.formatter.number_of_blank_lines_at_beginning_of_method_body=0
+org.eclipse.jdt.core.formatter.number_of_empty_lines_to_preserve=5
+org.eclipse.jdt.core.formatter.put_empty_statement_on_new_line=true
+org.eclipse.jdt.core.formatter.tabulation.char=tab
+org.eclipse.jdt.core.formatter.tabulation.size=4
+org.eclipse.jdt.core.formatter.use_on_off_tags=false
+org.eclipse.jdt.core.formatter.use_tabs_only_for_leading_indentations=false
+org.eclipse.jdt.core.formatter.wrap_before_binary_operator=true
+org.eclipse.jdt.core.formatter.wrap_before_or_operator_multicatch=true
+org.eclipse.jdt.core.formatter.wrap_outer_expressions_when_nested=true
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/.settings/org.eclipse.jdt.ui.prefs b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/.settings/org.eclipse.jdt.ui.prefs
new file mode 100644
index 0000000..954281d
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/.settings/org.eclipse.jdt.ui.prefs
@@ -0,0 +1,68 @@
+cleanup.add_default_serial_version_id=true
+cleanup.add_generated_serial_version_id=false
+cleanup.add_missing_annotations=true
+cleanup.add_missing_deprecated_annotations=true
+cleanup.add_missing_methods=false
+cleanup.add_missing_nls_tags=false
+cleanup.add_missing_override_annotations=true
+cleanup.add_missing_override_annotations_interface_methods=true
+cleanup.add_serial_version_id=false
+cleanup.always_use_blocks=true
+cleanup.always_use_parentheses_in_expressions=false
+cleanup.always_use_this_for_non_static_field_access=false
+cleanup.always_use_this_for_non_static_method_access=false
+cleanup.convert_functional_interfaces=false
+cleanup.convert_to_enhanced_for_loop=false
+cleanup.correct_indentation=false
+cleanup.format_source_code=false
+cleanup.format_source_code_changes_only=false
+cleanup.insert_inferred_type_arguments=false
+cleanup.make_local_variable_final=true
+cleanup.make_parameters_final=false
+cleanup.make_private_fields_final=true
+cleanup.make_type_abstract_if_missing_method=false
+cleanup.make_variable_declarations_final=false
+cleanup.never_use_blocks=false
+cleanup.never_use_parentheses_in_expressions=true
+cleanup.organize_imports=false
+cleanup.qualify_static_field_accesses_with_declaring_class=false
+cleanup.qualify_static_member_accesses_through_instances_with_declaring_class=true
+cleanup.qualify_static_member_accesses_through_subtypes_with_declaring_class=true
+cleanup.qualify_static_member_accesses_with_declaring_class=true
+cleanup.qualify_static_method_accesses_with_declaring_class=false
+cleanup.remove_private_constructors=true
+cleanup.remove_redundant_type_arguments=true
+cleanup.remove_trailing_whitespaces=true
+cleanup.remove_trailing_whitespaces_all=true
+cleanup.remove_trailing_whitespaces_ignore_empty=false
+cleanup.remove_unnecessary_casts=true
+cleanup.remove_unnecessary_nls_tags=true
+cleanup.remove_unused_imports=true
+cleanup.remove_unused_local_variables=false
+cleanup.remove_unused_private_fields=true
+cleanup.remove_unused_private_members=false
+cleanup.remove_unused_private_methods=true
+cleanup.remove_unused_private_types=true
+cleanup.sort_members=false
+cleanup.sort_members_all=false
+cleanup.use_anonymous_class_creation=false
+cleanup.use_blocks=true
+cleanup.use_blocks_only_for_return_and_throw=false
+cleanup.use_lambda=true
+cleanup.use_parentheses_in_expressions=false
+cleanup.use_this_for_non_static_field_access=false
+cleanup.use_this_for_non_static_field_access_only_if_necessary=true
+cleanup.use_this_for_non_static_method_access=false
+cleanup.use_this_for_non_static_method_access_only_if_necessary=true
+cleanup.use_type_arguments=false
+cleanup_profile=_Papyrus
+cleanup_settings_version=2
+eclipse.preferences.version=1
+formatter_profile=_Papyrus
+formatter_settings_version=12
+org.eclipse.jdt.ui.ignorelowercasenames=true
+org.eclipse.jdt.ui.importorder=java;javax;org;com;
+org.eclipse.jdt.ui.javadoc=true
+org.eclipse.jdt.ui.ondemandthreshold=99
+org.eclipse.jdt.ui.staticondemandthreshold=99
+org.eclipse.jdt.ui.text.custom_code_templates=<?xml version\="1.0" encoding\="UTF-8" standalone\="no"?><templates><template autoinsert\="true" context\="gettercomment_context" deleted\="false" description\="Comment for getter method" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.gettercomment" name\="gettercomment">/**\n * @return the ${bare_field_name}\n */</template><template autoinsert\="true" context\="settercomment_context" deleted\="false" description\="Comment for setter method" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.settercomment" name\="settercomment">/**\n * @param ${param} the ${bare_field_name} to set\n */</template><template autoinsert\="false" context\="constructorcomment_context" deleted\="false" description\="Comment for created constructors" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.constructorcomment" name\="constructorcomment">/**\n * Constructor.\n *\n * ${tags}\n */</template><template autoinsert\="false" context\="filecomment_context" deleted\="false" description\="Comment for created Java files" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.filecomment" name\="filecomment">/*****************************************************************************\n * Copyright (c) ${year} CEA LIST and others.\n * \n * All rights reserved. This program and the accompanying materials\n * are made available under the terms of the Eclipse Public License v1.0\n * which accompanies this distribution, and is available at\n * http\://www.eclipse.org/legal/epl-v10.html\n *\n * Contributors\:\n *   CEA LIST - Initial API and implementation\n *   \n *****************************************************************************/\n</template><template autoinsert\="true" context\="typecomment_context" deleted\="false" description\="Comment for created types" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.typecomment" name\="typecomment">/**\n * @author ${user}\n *\n * ${tags}\n */</template><template autoinsert\="true" context\="fieldcomment_context" deleted\="false" description\="Comment for fields" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.fieldcomment" name\="fieldcomment">/**\n * \n */</template><template autoinsert\="true" context\="methodcomment_context" deleted\="false" description\="Comment for non-overriding methods" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.methodcomment" name\="methodcomment">/**\n * ${tags}\n */</template><template autoinsert\="false" context\="overridecomment_context" deleted\="false" description\="Comment for overriding methods" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.overridecomment" name\="overridecomment">/**\n * ${see_to_overridden}\n *\n * ${tags}\n */</template><template autoinsert\="false" context\="delegatecomment_context" deleted\="false" description\="Comment for delegate methods" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.delegatecomment" name\="delegatecomment">/**\n * ${see_to_target}\n *\n * ${tags}\n */</template><template autoinsert\="true" context\="newtype_context" deleted\="false" description\="Newly created files" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.newtype" name\="newtype">${filecomment}\n${package_declaration}\n\n${typecomment}\n${type_declaration}</template><template autoinsert\="true" context\="classbody_context" deleted\="false" description\="Code in new class type bodies" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.classbody" name\="classbody">\n</template><template autoinsert\="true" context\="interfacebody_context" deleted\="false" description\="Code in new interface type bodies" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.interfacebody" name\="interfacebody">\n</template><template autoinsert\="true" context\="enumbody_context" deleted\="false" description\="Code in new enum type bodies" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.enumbody" name\="enumbody">\n</template><template autoinsert\="true" context\="annotationbody_context" deleted\="false" description\="Code in new annotation type bodies" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.annotationbody" name\="annotationbody">\n</template><template autoinsert\="true" context\="catchblock_context" deleted\="false" description\="Code in new catch blocks" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.catchblock" name\="catchblock">// ${todo} Auto-generated catch block\n${exception_var}.printStackTrace();</template><template autoinsert\="true" context\="methodbody_context" deleted\="false" description\="Code in created method stubs" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.methodbody" name\="methodbody">// ${todo} Auto-generated method stub\n${body_statement}</template><template autoinsert\="true" context\="constructorbody_context" deleted\="false" description\="Code in created constructor stubs" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.constructorbody" name\="constructorbody">${body_statement}\n// ${todo} Auto-generated constructor stub</template><template autoinsert\="true" context\="getterbody_context" deleted\="false" description\="Code in created getters" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.getterbody" name\="getterbody">return ${field};</template><template autoinsert\="true" context\="setterbody_context" deleted\="false" description\="Code in created setters" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.setterbody" name\="setterbody">${field} \= ${param};</template></templates>
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/.settings/org.eclipse.pde.api.tools.prefs b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/.settings/org.eclipse.pde.api.tools.prefs
new file mode 100644
index 0000000..23fb95e
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/.settings/org.eclipse.pde.api.tools.prefs
@@ -0,0 +1,98 @@
+ANNOTATION_ELEMENT_TYPE_ADDED_METHOD_WITHOUT_DEFAULT_VALUE=Error
+ANNOTATION_ELEMENT_TYPE_CHANGED_TYPE_CONVERSION=Error
+ANNOTATION_ELEMENT_TYPE_REMOVED_FIELD=Error
+ANNOTATION_ELEMENT_TYPE_REMOVED_METHOD=Error
+ANNOTATION_ELEMENT_TYPE_REMOVED_TYPE_MEMBER=Error
+API_COMPONENT_ELEMENT_TYPE_REMOVED_API_TYPE=Error
+API_COMPONENT_ELEMENT_TYPE_REMOVED_REEXPORTED_API_TYPE=Error
+API_COMPONENT_ELEMENT_TYPE_REMOVED_REEXPORTED_TYPE=Error
+API_COMPONENT_ELEMENT_TYPE_REMOVED_TYPE=Error
+API_USE_SCAN_FIELD_SEVERITY=Error
+API_USE_SCAN_METHOD_SEVERITY=Error
+API_USE_SCAN_TYPE_SEVERITY=Error
+CLASS_ELEMENT_TYPE_ADDED_METHOD=Error
+CLASS_ELEMENT_TYPE_ADDED_RESTRICTIONS=Error
+CLASS_ELEMENT_TYPE_ADDED_TYPE_PARAMETER=Error
+CLASS_ELEMENT_TYPE_CHANGED_CONTRACTED_SUPERINTERFACES_SET=Error
+CLASS_ELEMENT_TYPE_CHANGED_DECREASE_ACCESS=Error
+CLASS_ELEMENT_TYPE_CHANGED_NON_ABSTRACT_TO_ABSTRACT=Error
+CLASS_ELEMENT_TYPE_CHANGED_NON_FINAL_TO_FINAL=Error
+CLASS_ELEMENT_TYPE_CHANGED_TYPE_CONVERSION=Error
+CLASS_ELEMENT_TYPE_REMOVED_CONSTRUCTOR=Error
+CLASS_ELEMENT_TYPE_REMOVED_FIELD=Error
+CLASS_ELEMENT_TYPE_REMOVED_METHOD=Error
+CLASS_ELEMENT_TYPE_REMOVED_SUPERCLASS=Error
+CLASS_ELEMENT_TYPE_REMOVED_TYPE_MEMBER=Error
+CLASS_ELEMENT_TYPE_REMOVED_TYPE_PARAMETER=Error
+CONSTRUCTOR_ELEMENT_TYPE_ADDED_TYPE_PARAMETER=Error
+CONSTRUCTOR_ELEMENT_TYPE_CHANGED_DECREASE_ACCESS=Error
+CONSTRUCTOR_ELEMENT_TYPE_CHANGED_VARARGS_TO_ARRAY=Error
+CONSTRUCTOR_ELEMENT_TYPE_REMOVED_TYPE_PARAMETER=Error
+ENUM_ELEMENT_TYPE_CHANGED_CONTRACTED_SUPERINTERFACES_SET=Error
+ENUM_ELEMENT_TYPE_CHANGED_TYPE_CONVERSION=Error
+ENUM_ELEMENT_TYPE_REMOVED_ENUM_CONSTANT=Error
+ENUM_ELEMENT_TYPE_REMOVED_FIELD=Error
+ENUM_ELEMENT_TYPE_REMOVED_METHOD=Error
+ENUM_ELEMENT_TYPE_REMOVED_TYPE_MEMBER=Error
+FIELD_ELEMENT_TYPE_ADDED_VALUE=Error
+FIELD_ELEMENT_TYPE_CHANGED_DECREASE_ACCESS=Error
+FIELD_ELEMENT_TYPE_CHANGED_FINAL_TO_NON_FINAL_STATIC_CONSTANT=Error
+FIELD_ELEMENT_TYPE_CHANGED_NON_FINAL_TO_FINAL=Error
+FIELD_ELEMENT_TYPE_CHANGED_NON_STATIC_TO_STATIC=Error
+FIELD_ELEMENT_TYPE_CHANGED_STATIC_TO_NON_STATIC=Error
+FIELD_ELEMENT_TYPE_CHANGED_TYPE=Error
+FIELD_ELEMENT_TYPE_CHANGED_VALUE=Error
+FIELD_ELEMENT_TYPE_REMOVED_TYPE_ARGUMENT=Error
+FIELD_ELEMENT_TYPE_REMOVED_VALUE=Error
+ILLEGAL_EXTEND=Warning
+ILLEGAL_IMPLEMENT=Warning
+ILLEGAL_INSTANTIATE=Warning
+ILLEGAL_OVERRIDE=Warning
+ILLEGAL_REFERENCE=Warning
+INTERFACE_ELEMENT_TYPE_ADDED_FIELD=Ignore
+INTERFACE_ELEMENT_TYPE_ADDED_METHOD=Error
+INTERFACE_ELEMENT_TYPE_ADDED_RESTRICTIONS=Error
+INTERFACE_ELEMENT_TYPE_ADDED_SUPER_INTERFACE_WITH_METHODS=Error
+INTERFACE_ELEMENT_TYPE_ADDED_TYPE_PARAMETER=Error
+INTERFACE_ELEMENT_TYPE_CHANGED_CONTRACTED_SUPERINTERFACES_SET=Error
+INTERFACE_ELEMENT_TYPE_CHANGED_TYPE_CONVERSION=Error
+INTERFACE_ELEMENT_TYPE_REMOVED_FIELD=Error
+INTERFACE_ELEMENT_TYPE_REMOVED_METHOD=Error
+INTERFACE_ELEMENT_TYPE_REMOVED_TYPE_MEMBER=Error
+INTERFACE_ELEMENT_TYPE_REMOVED_TYPE_PARAMETER=Error
+INVALID_ANNOTATION=Ignore
+INVALID_JAVADOC_TAG=Ignore
+INVALID_REFERENCE_IN_SYSTEM_LIBRARIES=Ignore
+LEAK_EXTEND=Warning
+LEAK_FIELD_DECL=Warning
+LEAK_IMPLEMENT=Warning
+LEAK_METHOD_PARAM=Warning
+LEAK_METHOD_RETURN_TYPE=Warning
+METHOD_ELEMENT_TYPE_ADDED_RESTRICTIONS=Error
+METHOD_ELEMENT_TYPE_ADDED_TYPE_PARAMETER=Error
+METHOD_ELEMENT_TYPE_CHANGED_DECREASE_ACCESS=Error
+METHOD_ELEMENT_TYPE_CHANGED_NON_ABSTRACT_TO_ABSTRACT=Error
+METHOD_ELEMENT_TYPE_CHANGED_NON_FINAL_TO_FINAL=Error
+METHOD_ELEMENT_TYPE_CHANGED_NON_STATIC_TO_STATIC=Error
+METHOD_ELEMENT_TYPE_CHANGED_STATIC_TO_NON_STATIC=Error
+METHOD_ELEMENT_TYPE_CHANGED_VARARGS_TO_ARRAY=Error
+METHOD_ELEMENT_TYPE_REMOVED_ANNOTATION_DEFAULT_VALUE=Error
+METHOD_ELEMENT_TYPE_REMOVED_TYPE_PARAMETER=Error
+MISSING_EE_DESCRIPTIONS=Error
+TYPE_PARAMETER_ELEMENT_TYPE_ADDED_CLASS_BOUND=Error
+TYPE_PARAMETER_ELEMENT_TYPE_ADDED_INTERFACE_BOUND=Error
+TYPE_PARAMETER_ELEMENT_TYPE_CHANGED_CLASS_BOUND=Error
+TYPE_PARAMETER_ELEMENT_TYPE_CHANGED_INTERFACE_BOUND=Error
+TYPE_PARAMETER_ELEMENT_TYPE_REMOVED_CLASS_BOUND=Error
+TYPE_PARAMETER_ELEMENT_TYPE_REMOVED_INTERFACE_BOUND=Error
+UNUSED_PROBLEM_FILTERS=Warning
+automatically_removed_unused_problem_filters=Enabled
+eclipse.preferences.version=1
+incompatible_api_component_version=Error
+incompatible_api_component_version_include_major_without_breaking_change=Disabled
+incompatible_api_component_version_include_minor_without_api_change=Disabled
+invalid_since_tag_version=Error
+malformed_since_tag=Error
+missing_since_tag=Warning
+report_api_breakage_when_major_version_incremented=Disabled
+report_resolution_errors_api_component=Warning
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/META-INF/MANIFEST.MF b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/META-INF/MANIFEST.MF
new file mode 100644
index 0000000..cc6d656
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/META-INF/MANIFEST.MF
@@ -0,0 +1,16 @@
+Manifest-Version: 1.0
+Bundle-ManifestVersion: 2
+Bundle-Name: %pluginName
+Bundle-SymbolicName: org.eclipse.papyrus.interoperability.rpy.metamodel;singleton:=true
+Bundle-Version: 0.7.0.qualifier
+Bundle-ClassPath: .
+Bundle-Vendor: %providerName
+Bundle-Localization: plugin
+Bundle-RequiredExecutionEnvironment: JavaSE-1.6
+Export-Package: org.eclipse.papyrus.interoperability.rpy.rpymetamodel,
+ org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl,
+ org.eclipse.papyrus.interoperability.rpy.rpymetamodel.util
+Require-Bundle: org.eclipse.core.runtime;resolution:=optional;x-installation:=greedy,
+ org.eclipse.emf.ecore;visibility:=reexport,
+ org.eclipse.emf.ecore.xmi;visibility:=reexport
+Bundle-ActivationPolicy: lazy
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/about.html b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/about.html
new file mode 100644
index 0000000..dd3c089
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/about.html
@@ -0,0 +1,28 @@
+<!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>About</title>
+</head>
+<body lang="EN-US">
+<h2>About This Content</h2>
+ 
+<p>November 14, 2008</p>	
+<h3>License</h3>
+
+<p>The Eclipse Foundation makes available all content in this plug-in (&quot;Content&quot;).  Unless otherwise 
+indicated below, the Content is provided to you under the terms and conditions of the
+Eclipse Public License Version 1.0 (&quot;EPL&quot;).  A copy of the EPL is 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, &quot;Program&quot; will mean the Content.</p>
+
+<p>If you did not receive this Content directly from the Eclipse Foundation, the Content is 
+being redistributed by another party (&quot;Redistributor&quot;) and different terms and conditions may
+apply to your use of any object code in the Content.  Check the Redistributor's license that was 
+provided with the Content.  If no such license exists, contact the Redistributor.  Unless otherwise
+indicated below, the terms and conditions of the EPL still apply to any source code in the Content
+and such source code may be obtained at <a href="http://www.eclipse.org">http://www.eclipse.org</a>.</p>
+
+</body>
+</html>
\ No newline at end of file
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/build.properties b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/build.properties
new file mode 100644
index 0000000..8e357df
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/build.properties
@@ -0,0 +1,12 @@
+#
+
+bin.includes = .,\
+               model/,\
+               META-INF/,\
+               plugin.xml,\
+               about.html,\
+               plugin.properties
+jars.compile.order = .
+source.. = src-gen/
+output.. = bin/
+src.includes = about.html
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/model/Rpy.ecore b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/model/Rpy.ecore
new file mode 100755
index 0000000..f34861f
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/model/Rpy.ecore
@@ -0,0 +1,2876 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<ecore:EPackage 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" name="rpymetamodel" nsURI="http://www.eclipse.org/Papyrus/UMLRpy/1.0.0"
+    nsPrefix="rhyuml">
+  <eClassifiers xsi:type="ecore:EClass" name="AssociationsType" abstract="true" eSuperTypes="#//InverseType"/>
+  <eClassifiers xsi:type="ecore:EClass" name="CCollaborationChart" eSuperTypes="#//GraphicChartType">
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_pModelObject" eType="#//ICollaboration"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_pRoot" eType="#//CGIBox"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="CGIActionState" eSuperTypes="#//GraphElementsType">
+    <eStructuralFeatures xsi:type="ecore:EReference" name="properties" eType="#//IPropertyContainer"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_pModelObject" eType="#//IStateVertex"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_pParent" eType="#//GraphElementsType"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_transform" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_AdditionalLabel" eType="#//CGIText"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_polygon" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_nNameFormat" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_nIsNameFormat" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="Compartments" upperBound="-1"
+        eType="#//UnknownType"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="nAndLineCount" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_pInheritsFrom" upperBound="-1"
+        eType="#//UnknownType"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_nInheritanceMask" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_pDefaultComponentRelation"
+        eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_NameDisplayMode" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_ActDescLablDiaplayMode"
+        eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_moveAndLineTimeStamp"
+        eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="CGIActiveX" eSuperTypes="#//GraphElementsType">
+    <eStructuralFeatures xsi:type="ecore:EReference" name="properties" eType="#//IPropertyContainer"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_pModelObject" eType="#//M_pModelObjectType"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_pParent" eType="#//GraphElementsType"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_transform" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_polygon" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_nNameFormat" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_nIsNameFormat" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="Compartments" upperBound="-1"
+        eType="#//UnknownType"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_csModelObjPath" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_csName" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_PartsArray" upperBound="-1"
+        eType="#//DependsOnType"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="CGIAnchor" eSuperTypes="#//GraphElementsType">
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_pModelObject" eType="#//M_pModelObjectType"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_pParent" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_pSource" eType="#//M_pRootType"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_sourceType" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_pTarget" eType="#//M_pRootType"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_targetType" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_direction" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_rpn" eType="#//CGIText"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_anglePoint1" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_anglePoint2" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_line_style" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_SourcePort" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_TargetPort" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="properties" eType="#//IPropertyContainer"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_color" eType="#//IColor"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_lineWidth" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_arrow" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="CGIAnnotation" eSuperTypes="#//GraphElementsType">
+    <eStructuralFeatures xsi:type="ecore:EReference" name="properties" eType="#//IPropertyContainer"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_pParent" eType="#//M_pRootType"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_transform" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_AdditionalLabel" eType="#//CGIText"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_polygon" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_nNameFormat" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_nIsNameFormat" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="iTempdisplayTextFlag" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_bIsBoxStyle" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_pModelObject" eType="#//IUnit"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_color" eType="#//IColor"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_lineWidth" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="frameset" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="Compartments" eType="#//CompartmentsType"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_bIsStructured" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_bFramesetModified" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="CGIArrow" eSuperTypes="#//GraphElementsType">
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_pModelObject" upperBound="-1"
+        eType="#//UnknownType"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_pParent" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_pSource" eType="#//CGIComponent"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_sourceType" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_pTarget" eType="#//CGIComponent"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_targetType" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_direction" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_rpn" eType="#//CGIText"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_anglePoint1" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_anglePoint2" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_line_style" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_SourcePort" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_TargetPort" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="CGIAssociationEnd" eSuperTypes="#//GraphElementsType">
+    <eStructuralFeatures xsi:type="ecore:EReference" name="properties" eType="#//IPropertyContainer"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_pModelObject" eType="#//M_pModelObjectType"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_pParent" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_pSource" eType="#//M_pRootType"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_sourceType" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_pTarget" eType="#//M_pRootType"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_targetType" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_direction" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_rpn" eType="#//CGIText"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_anglePoint1" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_anglePoint2" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_line_style" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_SourcePort" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_TargetPort" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_pInverseModelObject"
+        eType="#//IAssociationEndHandle" containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_pInstance" eType="#//IObjectLinkHandle"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_pInverseInstance" eType="#//IObjectLinkHandle"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_bShowSourceMultiplicity"
+        eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_bShowSourceRole" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_bShowTargetMultiplicity"
+        eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_bShowTargetRole" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_bShowLinkName" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_bShowSpecificType" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_bInstance" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_bShowQualifier1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_bShowQualifier2" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_sourceRole" eType="#//CGIText"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_targetRole" eType="#//CGIText"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_sourceMultiplicity" eType="#//CGIText"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_targetMultiplicity" eType="#//CGIText"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_sourceQualifier" eType="#//CGIText"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_targetQualifier" eType="#//CGIText"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_specificType" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_arrow" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="CGIAssociationRole" eSuperTypes="#//GraphElementsType">
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_pModelObject" eType="#//IAssociationRole"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_pParent" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_pSource" eType="#//CGIClassifierRole"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_sourceType" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_pTarget" eType="#//CGIClassifierRole"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_targetType" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_direction" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_rpn" eType="#//CGIText"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_anglePoint1" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_anglePoint2" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_line_style" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_SourcePort" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_TargetPort" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_arrow" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="properties" eType="#//IPropertyContainer"
+        containment="true"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="CGIBasicClass" eSuperTypes="#//GraphElementsType">
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_pModelObject" eType="#//IClassifier"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_pParent" eType="#//GraphElementsType"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_transform" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_AdditionalLabel" eType="#//CGIText"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_polygon" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_nNameFormat" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_nIsNameFormat" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="Compartments" upperBound="-1"
+        eType="#//UnknownType"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="properties" eType="#//IPropertyContainer"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_pImageViewData" eType="#//CGIImageData"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="CGIBlockState" eSuperTypes="#//GraphElementsType">
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_pModelObject" eType="#//ItsTargetType"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_pParent" eType="#//GraphElementsType"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_transform" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_polygon" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_nNameFormat" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_nIsNameFormat" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="nAndLineCount" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_pInheritsFrom" upperBound="-1"
+        eType="#//UnknownType"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_nInheritanceMask" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_pDefaultComponentRelation"
+        eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_NameDisplayMode" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_ActDescLablDiaplayMode"
+        eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="properties" eType="#//IPropertyContainer"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_AdditionalLabel" eType="#//CGIText"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_moveAndLineTimeStamp"
+        eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="Compartments" eType="#//CompartmentsType"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="frameset" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="CGIBox" eSuperTypes="#//GraphElementsType">
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_pModelObject" eType="#//M_pModelObjectType"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_polygon" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_nNameFormat" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_nIsNameFormat" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="Compartments" upperBound="-1"
+        eType="#//UnknownType"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_pParent" eType="#//GraphElementsType"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_transform" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="properties" eType="#//IPropertyContainer"
+        containment="true"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="CGIButtonArray" eSuperTypes="#//GraphElementsType">
+    <eStructuralFeatures xsi:type="ecore:EReference" name="properties" eType="#//IPropertyContainer"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_pModelObject" eType="#//IAttribute"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_pParent" eType="#//GraphElementsType"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_transform" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_polygon" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_nNameFormat" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_nIsNameFormat" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="frameset" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="Compartments" upperBound="-1"
+        eType="#//CGICompartment" containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_csModelObjPath" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_csName" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_PartsArray" upperBound="-1"
+        eType="#//DependsOnType"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_liButtonNames" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_liButtonValues" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="CGIClass" eSuperTypes="#//GraphElementsType #//M_pRootType">
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_pModelObject" eType="#//M_pModelObjectType"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_AdditionalLabel" eType="#//CGIText"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_polygon" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_nNameFormat" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_nIsNameFormat" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="Compartments" upperBound="-1"
+        eType="#//CompartmentsType" containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_pParent" eType="#//M_pRootType"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_transform" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="frameset" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="properties" eType="#//IPropertyContainer"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="Attrs" upperBound="-1"
+        eType="#//IUnit"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="Operations" upperBound="-1"
+        eType="#//OperationsType"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_color" eType="#//IColor"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_lineWidth" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_dSeparatorPosition" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_bIsMisplaced" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_pImageViewData" eType="#//CGIImageData"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_bFramesetModified" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="CGIClassChart" eSuperTypes="#//GraphicChartType">
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_pModelObject" eType="#//M_pModelObjectType"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_pRoot" eType="#//M_pRootType"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="CGIClassifierRole" eSuperTypes="#//GraphElementsType">
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_pModelObject" eType="#//IClassifierRole"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_pParent" eType="#//CGIBox"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_transform" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_polygon" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_nNameFormat" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_nIsNameFormat" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="Compartments" upperBound="-1"
+        eType="#//UnknownType"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="properties" eType="#//IPropertyContainer"
+        containment="true"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="CGICompartment" eSuperTypes="#//CompartmentsType">
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="id" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_name" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_displayOption" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_bShowInherited" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_bOrdered" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="Items" upperBound="-1"
+        eType="#//ItemsType"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="CGIComponent" eSuperTypes="#//GraphElementsType">
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_pModelObject" eType="#//IComponent"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_pParent" eType="#//GraphElementsType"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_transform" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_polygon" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_nNameFormat" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_nIsNameFormat" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="Compartments" upperBound="-1"
+        eType="#//UnknownType"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="properties" eType="#//IPropertyContainer"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_AdditionalLabel" eType="#//CGIText"
+        containment="true"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="CGICompositeClass" eSuperTypes="#//GraphElementsType">
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_pModelObject" eType="#//IClassifier"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_pParent" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_AdditionalLabel" eType="#//CGIText"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_polygon" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_nNameFormat" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_nIsNameFormat" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="Compartments" upperBound="-1"
+        eType="#//UnknownType"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="properties" eType="#//IPropertyContainer"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_color" eType="#//IColor"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_lineWidth" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="CGIConnector" eSuperTypes="#//GraphElementsType">
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_pModelObject" eType="#//ItsTargetType"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_pParent" eType="#//GraphElementsType"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_transform" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_position" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_nInheritanceMask" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_SubType" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="properties" eType="#//IPropertyContainer"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_AdditionalLabel" eType="#//CGIText"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="myState" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_pInheritsFrom" eType="#//GraphElementsType"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="CGIContainArrow" eSuperTypes="#//GraphElementsType">
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_pModelObject" upperBound="-1"
+        eType="#//UnknownType"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_pParent" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_pSource" eType="#//GraphElementsType"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_sourceType" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_pTarget" eType="#//GraphElementsType"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_targetType" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_direction" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_rpn" eType="#//CGIText"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_arrow" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_anglePoint1" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_anglePoint2" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_line_style" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_SourcePort" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_TargetPort" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="CGIDiagramFrame" eSuperTypes="#//GraphElementsType">
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_pModelObject" upperBound="-1"
+        eType="#//UnknownType"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_pParent" eType="#//M_pRootType"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_transform" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_AdditionalLabel" eType="#//CGIText"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_polygon" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_nNameFormat" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_nIsNameFormat" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_bVisible" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="frameset" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="Compartments" eType="#//CompartmentsType"
+        containment="true"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="CGIFreeShape" eSuperTypes="#//GraphElementsType">
+    <eStructuralFeatures xsi:type="ecore:EReference" name="properties" eType="#//IPropertyContainer"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_pModelObject" upperBound="-1"
+        eType="#//UnknownType"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_pParent" eType="#//GraphElementsType"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_transform" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_points" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="CGIFreeText" eSuperTypes="#//GraphElementsType">
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_pModelObject" upperBound="-1"
+        eType="#//UnknownType"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_pParent" eType="#//GraphElementsType"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_transform" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_points" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_text" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="properties" eType="#//IPropertyContainer"
+        containment="true"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="CGIGenericElement" eSuperTypes="#//GraphElementsType">
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_pModelObject" eType="#//M_pModelObjectType"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_pParent" eType="#//M_pRootType"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_transform" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_AdditionalLabel" eType="#//CGIText"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_polygon" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_nNameFormat" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_nIsNameFormat" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="frameset" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="Compartments" eType="#//CompartmentsType"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="properties" eType="#//IPropertyContainer"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_pImageViewData" eType="#//CGIImageData"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_csContext" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_csPartsArray" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_bIsStructured" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="CGIImage" eSuperTypes="#//GraphElementsType">
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_pModelObject" upperBound="-1"
+        eType="#//UnknownType"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_pParent" eType="#//GraphElementsType"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_transform" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_pImageViewData" eType="#//CGIImageData"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_points" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="CGIImageData" eSuperTypes="#//GraphElementsType">
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_pModelObject" upperBound="-1"
+        eType="#//UnknownType"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_pParent" eType="#//GraphElementsType"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_dataSize" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_data" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_srcFile" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_fileModifiedTime" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="CGIInformationFlow" eSuperTypes="#//GraphElementsType">
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_pModelObject" eType="#//IInformationFlow"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_pParent" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_pSource" eType="#//M_pRootType"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_sourceType" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_pTarget" eType="#//M_pRootType"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_targetType" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_direction" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_rpn" eType="#//CGIText"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_anglePoint1" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_anglePoint2" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_line_style" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_SourcePort" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_TargetPort" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_bShowKeyword" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_showConveyed" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_keyword" eType="#//CGIText"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_conveyed" eType="#//CGIText"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_arrow" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="properties" eType="#//IPropertyContainer"
+        containment="true"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="CGIInheritance" eSuperTypes="#//GraphElementsType">
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_pModelObject" eType="#//IModelElement"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_pParent" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_pSource" eType="#//GraphElementsType"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_sourceType" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_pTarget" eType="#//GraphElementsType"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_targetType" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_direction" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_rpn" eType="#//CGIText"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_anglePoint1" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_anglePoint2" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_line_style" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_SourcePort" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_TargetPort" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_ShowName" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_ShowStereotype" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="properties" eType="#//IPropertyContainer"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_color" eType="#//IColor"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_lineWidth" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_arrow" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="CGIMFCCtrl" eSuperTypes="#//GraphElementsType">
+    <eStructuralFeatures xsi:type="ecore:EReference" name="properties" eType="#//IPropertyContainer"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_pModelObject" eType="#//IReception"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_pParent" eType="#//GraphElementsType"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_transform" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_polygon" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_nNameFormat" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_nIsNameFormat" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="Compartments" upperBound="-1"
+        eType="#//UnknownType"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_csModelObjPath" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_csName" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_PartsArray" upperBound="-1"
+        eType="#//DependsOnType"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_csButtonCaption" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="CGIMessageLabel" eSuperTypes="#//GraphElementsType">
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_pModelObject" eType="#//IMessage"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_pParent" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_pCommunicationConnection"
+        eType="#//CGIAssociationRole"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="percent" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="CGIMscChart">
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="vLadderMargin" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_usingActivationBar" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="id" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_type" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_pModelObject" eType="#//IMSC"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_pParent" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_name" eType="#//CGIText"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_drawBehavior" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_bIsPreferencesInitialized"
+        eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="elementList" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="graphElements" upperBound="-1"
+        eType="#//GraphElementsType" containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_access" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_modified" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_fileVersion" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_nModifyDate" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_nCreateDate" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_creator" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_bScaleWithZoom" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_arrowStyle" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_pRoot" eType="#//CGIBox"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_currentLeftTop" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_currentRightBottom" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="CGIMscColumnCR" eSuperTypes="#//GraphElementsType">
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_pModelObject" eType="#//IModelElement"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_pParent" eType="#//CGIBox"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_transform" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_AdditionalLabel" eType="#//CGIText"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_position" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_pInheritsFrom" upperBound="-1"
+        eType="#//UnknownType"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_nInheritanceMask" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_SubType" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="properties" eType="#//IPropertyContainer"
+        containment="true"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="CGIMscConditionMark" eSuperTypes="#//GraphElementsType">
+    <eStructuralFeatures xsi:type="ecore:EReference" name="properties" eType="#//IPropertyContainer"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_pModelObject" eType="#//IMessage"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_pParent" eType="#//CGIMscColumnCR"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_transform" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_polygon" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_nNameFormat" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_nIsNameFormat" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="Compartments" upperBound="-1"
+        eType="#//UnknownType"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="CGIMscExecutionOccurrence" eSuperTypes="#//GraphElementsType">
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_pModelObject" eType="#//IExecutionOccurrence"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_pParent" eType="#//CGIMscColumnCR"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_transform" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_position" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_pInheritsFrom" upperBound="-1"
+        eType="#//UnknownType"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_nInheritanceMask" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_SubType" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_pStartMessage" eType="#//CGIMscMessage"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="CGIMscInteractionOccurrence" eSuperTypes="#//GraphElementsType">
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_pModelObject" eType="#//IInteractionOccurrence"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_pParent" eType="#//CGIBox"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_transform" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_polygon" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_nNameFormat" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_nIsNameFormat" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="Compartments" upperBound="-1"
+        eType="#//UnknownType"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="properties" eType="#//IPropertyContainer"
+        containment="true"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="CGIMscInteractionOperand" eSuperTypes="#//GraphElementsType">
+    <eStructuralFeatures xsi:type="ecore:EReference" name="properties" eType="#//IPropertyContainer"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_pModelObject" eType="#//IInteractionOperand"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_pParent" eType="#//CGIMscInteractionOperator"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_AdditionalLabel" eType="#//CGIText"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_polygon" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_nNameFormat" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_nIsNameFormat" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="Compartments" upperBound="-1"
+        eType="#//UnknownType"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_transform" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="CGIMscInteractionOperator" eSuperTypes="#//GraphElementsType">
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_operatorType" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="properties" eType="#//IPropertyContainer"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_pModelObject" eType="#//ICombinedFragment"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_pParent" eType="#//GraphElementsType"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_transform" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_polygon" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_nNameFormat" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_nIsNameFormat" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="frameset" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="Compartments" upperBound="-1"
+        eType="#//UnknownType"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_bFramesetModified" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="CGIMscMessage" eSuperTypes="#//GraphElementsType">
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_pModelObject" eType="#//IMessage"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_pParent" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_pSource" eType="#//CGIMscColumnCR"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_sourceType" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_pTarget" eType="#//CGIMscColumnCR"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_targetType" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_direction" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_rpn" eType="#//CGIText"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_anglePoint1" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_anglePoint2" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_line_style" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_SourcePort" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_TargetPort" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_bLeft" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_arrow" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="properties" eType="#//IPropertyContainer"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="myState" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_pSourceExec" eType="#//CGIMscExecutionOccurrence"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_pTargetExec" eType="#//CGIMscExecutionOccurrence"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="CGIObjectInstance" eSuperTypes="#//GraphElementsType">
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_pModelObject" eType="#//M_pModelObjectType"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_pParent" eType="#//M_pRootType"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_transform" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_AdditionalLabel" eType="#//CGIText"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_polygon" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_nNameFormat" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_nIsNameFormat" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="frameset" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="Compartments" upperBound="-1"
+        eType="#//CompartmentsType" containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_multiplicity" eType="#//CGIText"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="properties" eType="#//IPropertyContainer"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="Operations" upperBound="-1"
+        eType="#//OperationsType"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="Attrs" upperBound="-1"
+        eType="#//IUnit"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_bFramesetModified" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_pImageViewData" eType="#//CGIImageData"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_bIsMisplaced" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="CGIObjectLink" eSuperTypes="#//GraphElementsType">
+    <eStructuralFeatures xsi:type="ecore:EReference" name="properties" eType="#//IPropertyContainer"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_pModelObject" eType="#//M_pModelObjectType"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_pParent" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_pSource" eType="#//M_pRootType"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_sourceType" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_pTarget" eType="#//M_pRootType"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_targetType" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_direction" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_rpn" eType="#//CGIText"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_arrow" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_anglePoint1" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_anglePoint2" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_line_style" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_SourcePort" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_TargetPort" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_bShowSourceMultiplicity"
+        eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_bShowSourceRole" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_bShowTargetMultiplicity"
+        eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_bShowTargetRole" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_bShowLinkName" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_sourceRole" eType="#//CGIText"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_targetRole" eType="#//CGIText"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_sourceMultiplicity" eType="#//CGIText"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_targetMultiplicity" eType="#//CGIText"
+        containment="true"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="CGIPackage" eSuperTypes="#//GraphElementsType">
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_pModelObject" eType="#//DefaultSubsystemType"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_pParent" eType="#//M_pRootType"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_transform" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_polygon" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_nNameFormat" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_nIsNameFormat" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="Compartments" upperBound="-1"
+        eType="#//UnknownType"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="properties" eType="#//IPropertyContainer"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_color" eType="#//IColor"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_lineWidth" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_AdditionalLabel" eType="#//CGIText"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="frameset" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_bIsStructured" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="CGIPartition" eSuperTypes="#//GraphElementsType">
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_pModelObject" eType="#//ISwimlane"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_pParent" eType="#//CGISwimlaneFrame"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_polygon" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_nNameFormat" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_nIsNameFormat" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="frameset" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_AdditionalLabel" eType="#//CGIText"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="properties" eType="#//IPropertyContainer"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="Compartments" eType="#//CompartmentsType"
+        containment="true"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="CGIPortConnector" eSuperTypes="#//GraphElementsType">
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_pModelObject" eType="#//IRelation"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_pParent" eType="#//M_pRootType"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_transform" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_AdditionalLabel" eType="#//CGIText"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_position" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_pInheritsFrom" upperBound="-1"
+        eType="#//UnknownType"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_nInheritanceMask" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_SubType" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_providedInterfaceLabel"
+        eType="#//CGIText" containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_requiredInterfaceLabel"
+        eType="#//CGIText" containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="properties" eType="#//IPropertyContainer"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_bVisible" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_nAngle" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="CGIState" eSuperTypes="#//GraphElementsType">
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_pModelObject" eType="#//ItsTargetType"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_AdditionalLabel" eType="#//CGIText"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_polygon" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_nNameFormat" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_nIsNameFormat" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="nAndLineCount" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_nInheritanceMask" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_pDefaultComponentRelation"
+        eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="properties" eType="#//IPropertyContainer"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_pParent" eType="#//GraphElementsType"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_transform" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="andLinePoly" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_pVirtualParent" eType="#//GraphElementsType"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_moveAndLineTimeStamp"
+        unique="false" upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="myState" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_pInheritsFrom" eType="#//GraphElementsType"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="frameset" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_bFramesetModified" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_bIsMisplaced" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_color" eType="#//IColor"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_lineWidth" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="Compartments" eType="#//CompartmentsType"
+        containment="true"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="CGIStateChart" eSuperTypes="#//GraphicChartType">
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_pModelObject" eType="#//NestedStateChartType"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_pRoot" eType="#//CGIState"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="myState" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_pInheritsFrom" eType="#//GraphicChartType"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="DiagramList" upperBound="-1"
+        eType="#//UnknownType"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="properties" eType="#//IPropertyContainer"
+        containment="true"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="CGISwimlaneFrame" eSuperTypes="#//GraphElementsType">
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_pModelObject" upperBound="-1"
+        eType="#//UnknownType"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_pParent" eType="#//GraphElementsType"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_polygon" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_nNameFormat" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_nIsNameFormat" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="frameset" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_transform" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_bFramesetModified" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="Compartments" eType="#//CompartmentsType"
+        containment="true"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="CGIText">
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_str" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_style" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_color" eType="#//IColor"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_position" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_nIdent" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_bImplicitSetRectPoints"
+        eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_nOrientationCtrlPt" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_nVerticalSpacing" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_nHorizontalSpacing" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_transform" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="CGITextBox" eSuperTypes="#//GraphElementsType">
+    <eStructuralFeatures xsi:type="ecore:EReference" name="properties" eType="#//IPropertyContainer"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_pModelObject" eType="#//IAttribute"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_pParent" eType="#//GraphElementsType"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_transform" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_polygon" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_nNameFormat" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_nIsNameFormat" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="Compartments" upperBound="-1"
+        eType="#//UnknownType"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_csModelObjPath" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_csName" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_PartsArray" upperBound="-1"
+        eType="#//DependsOnType"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="CGITrans" eSuperTypes="#//GraphElementsType">
+    <eStructuralFeatures xsi:type="ecore:EReference" name="properties" eType="#//IPropertyContainer"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_pModelObject" eType="#//TransitionsType"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_pParent" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_pSource" eType="#//GraphElementsType"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_sourceType" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_pTarget" eType="#//GraphElementsType"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_targetType" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_direction" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_rpn" eType="#//CGIText"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_anglePoint1" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_anglePoint2" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_line_style" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_SourcePort" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_TargetPort" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_nInheritanceMask" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_bShowName" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_arrow" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="myState" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_pInheritsFrom" eType="#//GraphElementsType"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_color" eType="#//IColor"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_lineWidth" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="CollEvent" eSuperTypes="#//P_MessageHandlerType">
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="id" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="first" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="second" eType="#//IMessage"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="objectCreation" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="umlDependencyID" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="CompartmentsType" abstract="true"/>
+  <eClassifiers xsi:type="ecore:EClass" name="ComponentsType" abstract="true"/>
+  <eClassifiers xsi:type="ecore:EClass" name="ConveyedType" abstract="true">
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="lastID" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="DeclarativesType" abstract="true"/>
+  <eClassifiers xsi:type="ecore:EClass" name="DefaultSubsystemType" abstract="true"
+      eSuperTypes="#//IModelElement"/>
+  <eClassifiers xsi:type="ecore:EClass" name="DefaultTransType" abstract="true"/>
+  <eClassifiers xsi:type="ecore:EClass" name="DependsOnType" abstract="true" eSuperTypes="#//ElementsType"/>
+  <eClassifiers xsi:type="ecore:EClass" name="DescriptionType" abstract="true"/>
+  <eClassifiers xsi:type="ecore:EClass" name="ElementsType" abstract="true"/>
+  <eClassifiers xsi:type="ecore:EClass" name="EmbededFilesType" abstract="true"/>
+  <eClassifiers xsi:type="ecore:EClass" name="End1_Type" abstract="true"/>
+  <eClassifiers xsi:type="ecore:EClass" name="End2_Type" abstract="true" eSuperTypes="#//End1_Type">
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="multiplicity" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="FilesType" abstract="true">
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="modifiedTimeWeak" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="id" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="umlDependencyID" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="lastID" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="myState" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_path" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="objectCreation" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="name" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="FromLinkType" abstract="true"/>
+  <eClassifiers xsi:type="ecore:EClass" name="GraphElementsType" abstract="true" eSuperTypes="#//M_pRootType">
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="id" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_drawBehavior" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_type" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_name" eType="#//CGIText"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_bIsPreferencesInitialized"
+        eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="GraphicChartType" abstract="true">
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="id" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_access" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="elementList" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_nModifyDate" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_currentLeftTop" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_modified" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_nCreateDate" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_pParent" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_arrowStyle" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_drawBehavior" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_currentRightBottom" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_creator" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_bScaleWithZoom" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_type" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="graphElements" upperBound="-1"
+        eType="#//GraphElementsType" containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_name" eType="#//CGIText"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_fileVersion" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_bIsPreferencesInitialized"
+        eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="HyperLinksType" abstract="true" eSuperTypes="#//IModelElement"/>
+  <eClassifiers xsi:type="ecore:EClass" name="IAcceptEventAction" eSuperTypes="#//IState #//ParentType #//ItsTargetType">
+    <eStructuralFeatures xsi:type="ecore:EReference" name="event" eType="#//IEvent"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="IAcceptTimeEvent" eSuperTypes="#//IState"/>
+  <eClassifiers xsi:type="ecore:EClass" name="IAction" eSuperTypes="#//IModelElement">
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="id" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="myState" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="body" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="modifiedTimeWeak" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="objectCreation" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="umlDependencyID" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="IActivityDiagram" eSuperTypes="#//DependsOnType #//TargetType">
+    <eStructuralFeatures xsi:type="ecore:EReference" name="graphicChart" eType="#//CGIStateChart"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="codeUpdateCGTime" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="IActivityGraph" eSuperTypes="#//NestedStateChartType #//DependsOnType #//ValueType #//TargetType #//M_pModelObjectType #//IModelElement">
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="lastID" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="weakCGTime" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="strongCGTime" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="multiplicity" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="itsStateChart" upperBound="-1"
+        eType="#//UnknownType"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="classModifier" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="States" upperBound="-1"
+        eType="#//ItsTargetType" containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="baseVersion" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="diagram" eType="#//IActivityDiagram"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="Views" eType="#//IActivityDiagram"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="properties" eType="#//IPropertyContainer"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="requiremenTracabilityHandle"
+        eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="description" eType="#//IDescription"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="Swimlanes" upperBound="-1"
+        eType="#//ISwimlane" containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="Stereotypes" eType="#//IClassifier"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="AnalysisMode" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="Annotations" eType="#//IComment"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="codeUpdateCGTime" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="objectCreation" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="umlDependencyID" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="HyperLinks" eType="#//IMHyperLink"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="Dependencies" upperBound="-1"
+        eType="#//IDependency" containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="theMainDiagram" eType="#//IDiagram"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="Associations" upperBound="-1"
+        eType="#//IAssociationEnd" containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="Tags" eType="#//ITag" containment="true"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="IActor" eSuperTypes="#//IClassifier #//M_pBaseType #//DependsOnType #//M_subjectType #//End2_Type">
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="id" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="myState" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="name" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="theMainDiagram" eType="#//TheMainDiagramType"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="Dependencies" upperBound="-1"
+        eType="#//IDependency" containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="lastID" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="weakCGTime" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="strongCGTime" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="Operations" upperBound="-1"
+        eType="#//OperationsType" containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="StateCharts" eType="#//IStateChart"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="itsStateChart" eType="#//IClass"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="Associations" upperBound="-1"
+        eType="#//IAssociationEnd" containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="classModifier" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="HyperLinks" eType="#//IMHyperLink"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="modifiedTimeWeak" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="Ports" eType="#//IPort"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="Inheritances" eType="#//IGeneralization"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="Attrs" upperBound="-1"
+        eType="#//IAttribute" containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="requiremenTracabilityHandle"
+        eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="description" eType="#//IDescription"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="Annotations" upperBound="-1"
+        eType="#//IRequirement" containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="ComponentFiles" upperBound="-1"
+        eType="#//IFile" containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="properties" eType="#//IPropertyContainer"
+        containment="true"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="IAnchor" eSuperTypes="#//M_pModelObjectType">
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="id" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="myState" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="name" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="dependsOn" eType="#//DependsOnType"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="modifiedTimeWeak" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="IAnnotation" eSuperTypes="#//IUnit">
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="requiremenTracabilityHandle"
+        eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="description" eType="#//IDescription"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="umlDependencyID" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="objectCreation" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="Tags" upperBound="-1" eType="#//ITag"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="body" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="IArgument" eSuperTypes="#//IVariable">
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="id" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="myState" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="properties" eType="#//IPropertyContainer"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="name" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="modifiedTimeWeak" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="typeOf" eType="#//IClassifier"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="argumentDirection" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="defaultValue" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="ValueSpecifications" eType="#//ILiteralSpecification"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="description" eType="#//IDescription"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="codeUpdateCGTime" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="objectCreation" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="umlDependencyID" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="IAssociationClass" eSuperTypes="#//IClass">
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="isClass" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_end1" eType="#//IAssociationEnd"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_end2" eType="#//IAssociationEnd"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="IAssociationEnd" eSuperTypes="#//AssociationsType #//M_subjectType #//M_hTargetType #//InverseType #//M_pModelObjectType #//ToLinkType #//IModelElement">
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="id" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="myState" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="name" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="multiplicity" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="otherClass" eType="#//ElementsType"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="linkName" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="linkType" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="navigability" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="inverse" eType="#//InverseType"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="modifiedTimeWeak" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="Qualifiers" eType="#//IAttribute"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="Stereotypes" eType="#//IStereotype"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="codeUpdateCGTime" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="qualifierType" eType="#//IType"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_associationClass" eType="#//IAssociationClass"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="IAssociationEndHandle">
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m2Class" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="filename" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="subsystem" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="class" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="name" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="id" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="IAssociationRole" eSuperTypes="#//IModelElement">
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="id" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="myState" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_fAssocType1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_fAssocType2" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_pSource" eType="#//IClassifierRole"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_pTarget" eType="#//IClassifierRole"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_pFormalAssoc1" eType="#//AssociationsType"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_pFormalAssoc2" eType="#//AssociationsType"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="name" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="modifiedTimeWeak" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="objectCreation" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="umlDependencyID" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="IAttribute" eSuperTypes="#//IVariable #//DependsOnType #//M_subjectType #//ValueType #//ItemsType #//M_pModelObjectType #//End2_Type #//End1_Type">
+    <eStructuralFeatures xsi:type="ecore:EReference" name="typeOf" eType="#//IUnit"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="protection" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="static" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="isReference" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="isConstant" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="Stereotypes" eType="#//IUnit"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="ValueSpecifications" eType="#//ILiteralSpecification"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="properties" eType="#//IPropertyContainer"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="description" eType="#//IDescription"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="Tags" upperBound="-1" eType="#//ITag"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="defaultValue" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="Dependencies" upperBound="-1"
+        eType="#//IDependency" containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="lastID" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="Annotations" eType="#//IComment"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="requiremenTracabilityHandle"
+        eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="codeUpdateCGTime" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="theMainDiagram" eType="#//IDiagram"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="IBlock" eSuperTypes="#//AssociationsType #//M_pModelObjectType #//ToLinkType #//End2_Type">
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="id" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="myState" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="name" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="objectCreation" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="umlDependencyID" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="otherClass" eType="#//IClass"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="inverse" upperBound="-1"
+        eType="#//UnknownType"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="partKind" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="IBody">
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="bodyData" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="IBranch" eSuperTypes="#//ItsTargetType">
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="id" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="name" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="modifiedTimeWeak" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="parent" eType="#//IStateVertex"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="connectorType" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="myState" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="Stereotypes" eType="#//IStereotype"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="codeUpdateCGTime" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="objectCreation" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="umlDependencyID" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="ICallAction">
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="id" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="modifiedTimeWeak" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="interfaceItem" eType="#//IConstructor"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="argumentNames" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="argumentValues" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="ICallOperation" eSuperTypes="#//IState #//ParentType #//ItsTargetType #//DependsOnType">
+    <eStructuralFeatures xsi:type="ecore:EReference" name="operation" eType="#//OperationsType"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="target" eType="#//AssociationsType"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="IClass" eSuperTypes="#//IClassifier #//DeclarativesType #//M_pBaseType #//DependsOnType #//M_subjectType #//ValueType #//ConveyedType #//TargetType #//M_pModelObjectType">
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="weakCGTime" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="strongCGTime" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="multiplicity" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="classModifier" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="properties" eType="#//PropertiesType"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="Stereotypes" upperBound="-1"
+        eType="#//IUnit"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="Operations" upperBound="-1"
+        eType="#//OperationsType" containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="Inheritances" upperBound="-1"
+        eType="#//IModelElement" containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="theMainDiagram" eType="#//TheMainDiagramType"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="Attrs" upperBound="-1"
+        eType="#//IUnit" containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="Tags" upperBound="-1" eType="#//ITag"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="Associations" upperBound="-1"
+        eType="#//AssociationsType" containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="Dependencies" upperBound="-1"
+        eType="#//IDependency" containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="Ports" upperBound="-1"
+        eType="#//IRelation" containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="ObjectLinks" upperBound="-1"
+        eType="#//ObjectLinksType" containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="StateCharts" upperBound="-1"
+        eType="#//NestedStateChartType" containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="itsStateChart" eType="#//ItsStateChartType"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="TriggeredOperations" upperBound="-1"
+        eType="#//UnknownType"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="Receptions" upperBound="-1"
+        eType="#//UnknownType"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="PrimitiveOperations" upperBound="-1"
+        eType="#//OperationsType" containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="Annotations" upperBound="-1"
+        eType="#//IUnit" containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="description" eType="#//DescriptionType"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="Declaratives" upperBound="-1"
+        eType="#//DeclarativesType" containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="AssociationElements" upperBound="-1"
+        eType="#//UnknownType"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="ownerHandle" eType="#//ISubsystem"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="HyperLinks" upperBound="-1"
+        eType="#//IMHyperLink" containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="requiremenTracabilityHandle"
+        eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="ComponentFiles" upperBound="-1"
+        eType="#//IFile" containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="Links" upperBound="-1"
+        eType="#//LinksType" containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="Components" upperBound="-1"
+        eType="#//ComponentsType" containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="EventHandles" eType="#//IInterfaceItem"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="TemplateParameters" upperBound="-1"
+        eType="#//ITemplateParameter" containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="codeUpdateCGTime" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="cmheader" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="IClassHandle" eSuperTypes="#//M_pBaseType">
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m2Class" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="id" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="filename" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="subsystem" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="class" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="name" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="IClassInstance" eSuperTypes="#//LinksType #//M_pModelObjectType">
+    <eStructuralFeatures xsi:type="ecore:EReference" name="inverse" upperBound="-1"
+        eType="#//UnknownType"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="IClassifier" eSuperTypes="#//IUnit"/>
+  <eClassifiers xsi:type="ecore:EClass" name="IClassifierRole" eSuperTypes="#//IModelElement">
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="id" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="name" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_eRoleType" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="myState" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_pBase" eType="#//M_pBaseType"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_instance" eType="#//AssociationsType"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="properties" eType="#//IPropertyContainer"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="modifiedTimeWeak" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_pRefSD" eType="#//IMSC"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="codeUpdateCGTime" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="Stereotypes" eType="#//IStereotype"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="objectCreation" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="umlDependencyID" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="ICodeGenConfigInfo" eSuperTypes="#//DependsOnType">
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="id" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="myState" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="name" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="modifiedTimeWeak" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="HyperLinks" upperBound="-1"
+        eType="#//IMHyperLink" containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="scopeType" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="libraries" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="additionalSources" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="standardHeaders" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="includePath" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="targetMain" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="instrumentation" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="timeModel" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_generateActors" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="statechartImplementation"
+        eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="initializationCode" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="checksList" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="ScopeElements" upperBound="-1"
+        eType="#//UnknownType"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="root" eType="#//IFolder"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="weakCGTime" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="strongCGTime" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_allInAnimScope" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_generateUsecases" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="Dependencies" eType="#//IDependency"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="InitialInstances" upperBound="-1"
+        eType="#//IUnit"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="properties" eType="#//IPropertyContainer"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="Annotations" eType="#//IComment"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="lastID" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="description" eType="#//IDescription"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="Tags" upperBound="-1" eType="#//ITag"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="cmheader" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="requiremenTracabilityHandle"
+        eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="Stereotypes" upperBound="-1"
+        eType="#//IClassifier"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="codeUpdateCGTime" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="AnimScopeElements" upperBound="-1"
+        eType="#//ElementsType"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="EmbededFiles" eType="#//IEmbededFile"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="objectCreation" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="umlDependencyID" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="ICodeGenConfigInfoHandle">
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m2Class" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="id" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="ICollaboration" eSuperTypes="#//IModelElement #//M_pModelObjectType">
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="id" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="ClassifierRoles" upperBound="-1"
+        eType="#//IClassifierRole" containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="Messages" upperBound="-1"
+        eType="#//IMessage" containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="Annotations" eType="#//IConstraint"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="AssociationRoles" upperBound="-1"
+        eType="#//IAssociationRole" containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="modifiedTimeWeak" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="CombinedFragments" upperBound="-1"
+        eType="#//ICombinedFragment" containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="p_MessageHandler" upperBound="-1"
+        eType="#//P_MessageHandlerType" containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="InteractionOccurrences"
+        eType="#//IInteractionOccurrence" containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="ExecutionOccurrences" upperBound="-1"
+        eType="#//IExecutionOccurrence" containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="objectCreation" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="umlDependencyID" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="ICollaborationDiagram" eSuperTypes="#//IDiagram">
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_pICollaboration" eType="#//ICollaboration"
+        containment="true"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="IColor">
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_fgColor" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_bgColor" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_bgFlag" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="ICombinedFragment">
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="id" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="myState" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="name" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="modifiedTimeWeak" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="interactionOperator" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="InteractionOperands" upperBound="-1"
+        eType="#//IInteractionOperand" containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="Stereotypes" eType="#//IStereotype"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="Tags" eType="#//ITag" containment="true"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="IComment" eSuperTypes="#//IAnnotation #//ValueType">
+    <eStructuralFeatures xsi:type="ecore:EReference" name="HyperLinks" upperBound="-1"
+        eType="#//IMHyperLink" containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="Anchors" upperBound="-1"
+        eType="#//IAnchor" containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="Dependencies" upperBound="-1"
+        eType="#//IDependency" containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="Stereotypes" eType="#//IClassifier"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="lastID" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="codeUpdateCGTime" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="theMainDiagram" eType="#//IDiagram"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="properties" eType="#//IPropertyContainer"
+        containment="true"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="IComponent" eSuperTypes="#//IUnit #//OwnerHandleType #//DependsOnType #//DeclarativesType #//M_pModelObjectType">
+    <eStructuralFeatures xsi:type="ecore:EReference" name="ownerHandle" eType="#//OwnerHandleType"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="id" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="myState" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="name" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="Stereotypes" upperBound="-1"
+        eType="#//IClassifier"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="modifiedTimeWeak" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_buildType" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_libraries" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_additionalSources" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_standardHeaders" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_includePath" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_initializationCode" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_folder" eType="#//IFolder"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_configActive" eType="#//ICodeGenConfigInfoHandle"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="Configs" upperBound="-1"
+        eType="#//ICodeGenConfigInfo" containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="Dependencies" upperBound="-1"
+        eType="#//IDependency" containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="HandlesInMe" upperBound="-1"
+        eType="#//DefaultSubsystemType"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="properties" eType="#//IPropertyContainer"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="lastID" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="description" eType="#//IDescription"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="requiremenTracabilityHandle"
+        eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="HyperLinks" eType="#//IMHyperLink"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="codeUpdateCGTime" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="Declaratives" upperBound="-1"
+        eType="#//IUnit" containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="VariationPoints" eType="#//IUnit"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="SelectedVariants" eType="#//IUnit"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="objectCreation" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="umlDependencyID" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="cmheader" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="IComponentDiagram" eSuperTypes="#//IDiagram #//DeclarativesType #//DependsOnType"/>
+  <eClassifiers xsi:type="ecore:EClass" name="IComponentInstance" eSuperTypes="#//IModelElement"/>
+  <eClassifiers xsi:type="ecore:EClass" name="IConfiguration" eSuperTypes="#//IModelElement"/>
+  <eClassifiers xsi:type="ecore:EClass" name="IConnector" eSuperTypes="#//IStateVertex #//ItsTargetType">
+    <eStructuralFeatures xsi:type="ecore:EReference" name="parent" eType="#//ParentType"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="connectorType" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="IConstraint" eSuperTypes="#//IAnnotation">
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="id" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="myState" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="name" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="modifiedTimeWeak" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="Stereotypes" eType="#//IClassifier"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="properties" eType="#//IPropertyContainer"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="Anchors" eType="#//IAnchor"
+        containment="true"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="IConstructor" eSuperTypes="#//OperationsType #//M_subjectType #//ItemsType">
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="id" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="myState" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="modifiedTimeWeak" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="returnType" upperBound="-1"
+        eType="#//UnknownType"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="abstract" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="final" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="concurrency" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="protection" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="static" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="constant" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="itsBody" eType="#//IBody"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="initializer" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="Args" upperBound="-1" eType="#//IVariable"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="name" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="description" eType="#//IDescription"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="requiremenTracabilityHandle"
+        eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="codeUpdateCGTime" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="Tags" eType="#//ITag" containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="lastID" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="IContextSpecification" eSuperTypes="#//IValueSpecification"/>
+  <eClassifiers xsi:type="ecore:EClass" name="IControlledFile" eSuperTypes="#//IUnit"/>
+  <eClassifiers xsi:type="ecore:EClass" name="IDefaultDrvdTrans" eSuperTypes="#//DefaultTransType #//TransitionsType #//DependsOnType">
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="itsSource" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="ofState" eType="#//IState"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="errorStatus" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="inheritsFromHandle" eType="#//IDefaultDrvdTrans"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="Annotations" eType="#//IRequirement"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="Stereotypes" eType="#//IStereotype"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="IDependency" eSuperTypes="#//IModelElement #//DependsOnType #//M_subjectType">
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="id" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="myState" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="properties" eType="#//IPropertyContainer"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="name" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="Stereotypes" eType="#//IUnit"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="modifiedTimeWeak" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="dependsOn" eType="#//DependsOnType"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="Tags" eType="#//ITag" containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="Annotations" eType="#//IComment"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="Dependencies" eType="#//IDependency"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="description" eType="#//IDescription"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="requiremenTracabilityHandle"
+        eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="codeUpdateCGTime" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="IDeploymentDiagram" eSuperTypes="#//IDiagram"/>
+  <eClassifiers xsi:type="ecore:EClass" name="IDescription" eSuperTypes="#//DescriptionType">
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="textRTF" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="text" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="Hyperlinks" upperBound="-1"
+        eType="#//HyperLinksType" containment="true"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="IDestructor" eSuperTypes="#//OperationsType #//M_subjectType">
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="id" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="name" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="Args" upperBound="-1" eType="#//UnknownType"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="abstract" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="final" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="concurrency" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="protection" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="static" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="constant" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="itsBody" eType="#//IBody"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="modifiedTimeWeak" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="description" eType="#//IDescription"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="properties" eType="#//IPropertyContainer"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="myState" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="returnType" eType="#//IClassifier"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="IDiagram" eSuperTypes="#//IUnit #//TheMainDiagramType #//DeclarativesType #//DependsOnType #//TargetType #//M_pModelObjectType">
+    <eStructuralFeatures xsi:type="ecore:EReference" name="properties" eType="#//PropertiesType"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="Stereotypes" eType="#//IModelElement"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="modifiedTimeWeak" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="graphicChart" eType="#//GraphicChartType"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="Annotations" upperBound="-1"
+        eType="#//IAnnotation" containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="codeUpdateCGTime" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="HyperLinks" upperBound="-1"
+        eType="#//IMHyperLink" containment="true"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="IEmbededFile" eSuperTypes="#//EmbededFilesType">
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="id" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="name" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="modifiedTimeWeak" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="MayNeedToRelocate" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="LastKnownFullPath" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="Stereotypes" upperBound="-1"
+        eType="#//UnknownType"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="Tags" eType="#//ITag" containment="true"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="IEnumerationLiteral" eSuperTypes="#//IModelElement #//ItemsType">
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="id" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="name" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="modifiedTimeWeak" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="value" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="properties" eType="#//IPropertyContainer"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="Tags" eType="#//ITag" containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="codeUpdateCGTime" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="description" eType="#//IDescription"
+        containment="true"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="IEvent" eSuperTypes="#//IInterfaceItem #//M_subjectType #//M_pFormalMessageType #//ConveyedType #//TargetType #//M_pModelObjectType">
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="id" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="myState" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="name" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="virtual" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="modifiedTimeWeak" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="Args" upperBound="-1" eType="#//IVariable"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="Stereotypes" eType="#//IClassifier"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="description" eType="#//IDescription"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="properties" eType="#//IPropertyContainer"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="Dependencies" upperBound="-1"
+        eType="#//IDependency" containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="Tags" eType="#//ITag" containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="superEvent" upperBound="-1"
+        eType="#//UnknownType"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="requiremenTracabilityHandle"
+        eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="Annotations" eType="#//IConstraint"
+        containment="true"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="IEventHandle">
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m2Class" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="filename" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="subsystem" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="class" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="name" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="id" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="IEventReception" eSuperTypes="#//IInterfaceItem"/>
+  <eClassifiers xsi:type="ecore:EClass" name="IExecutionOccurrence" eSuperTypes="#//IModelElement">
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="id" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_startMessage" eType="#//IMessage"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_endMessage" upperBound="-1"
+        eType="#//UnknownType"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_length" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="IExternalHyperlink" eSuperTypes="#//HyperLinksType">
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="target" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="IFile" eSuperTypes="#//IUnit #//FilesType">
+    <eStructuralFeatures xsi:type="ecore:EReference" name="properties" eType="#//IPropertyContainer"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_type" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="Fragments" upperBound="-1"
+        eType="#//IModelElement" containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="description" eType="#//IDescription"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="Dependencies" upperBound="-1"
+        eType="#//IDependency" containment="true"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="IFileFragment" eSuperTypes="#//IModelElement">
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="id" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="name" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_type" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_text" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_startRow" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_startCol" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="description" eType="#//IDescription"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_startCol_Short" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_endRow" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_endCol_Short" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_subject" eType="#//M_subjectType"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="Tags" upperBound="-1" eType="#//ITag"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="Fragments" upperBound="-1"
+        eType="#//IFileFragment" containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="modifiedTimeWeak" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="objectCreation" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="umlDependencyID" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="IFlow" eSuperTypes="#//IModelElement"/>
+  <eClassifiers xsi:type="ecore:EClass" name="IFlowItem" eSuperTypes="#//IClassifier"/>
+  <eClassifiers xsi:type="ecore:EClass" name="IFlowchart"/>
+  <eClassifiers xsi:type="ecore:EClass" name="IFolder" eSuperTypes="#//FilesType">
+    <eStructuralFeatures xsi:type="ecore:EReference" name="Elements" upperBound="-1"
+        eType="#//ElementsType"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="Files" upperBound="-1"
+        eType="#//FilesType" containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="requiremenTracabilityHandle"
+        eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="codeUpdateCGTime" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="IFork" eSuperTypes="#//ItsTargetType">
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="id" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="myState" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="name" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="modifiedTimeWeak" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="description" eType="#//IDescription"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="parent" eType="#//IState"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="connectorType" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="objectCreation" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="umlDependencyID" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="IGeneralization" eSuperTypes="#//IModelElement">
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="id" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="modifiedTimeWeak" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="dependsOn" eType="#//IUnit"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="inheritanceType" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="isVirtual" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="Stereotypes" eType="#//IStereotype"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="description" eType="#//IDescription"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="objectCreation" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="umlDependencyID" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="ti" eType="#//ITemplateInst"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="Annotations" upperBound="-1"
+        eType="#//IConstraint" containment="true"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="IGuard" eSuperTypes="#//IModelElement">
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="id" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="body" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="modifiedTimeWeak" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="objectCreation" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="umlDependencyID" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="IHandleWithData">
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m2Class" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="filename" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="subsystem" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="class" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="name" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="id" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="data" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="IHistoryConnector" eSuperTypes="#//ItsTargetType">
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="id" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="name" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="parent" eType="#//IState"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="connectorType" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="myState" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="modifiedTimeWeak" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="objectCreation" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="umlDependencyID" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="IHyperLink" eSuperTypes="#//IDependency"/>
+  <eClassifiers xsi:type="ecore:EClass" name="IInformationFlow" eSuperTypes="#//DeclarativesType #//DependsOnType #//IModelElement">
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="id" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="myState" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="name" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="Conveyed" upperBound="-1"
+        eType="#//ConveyedType"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="end1_" eType="#//End1_Type"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="end2_" eType="#//End2_Type"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="direction_" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="modifiedTimeWeak" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="description" eType="#//IDescription"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="end1ObjectPort_" eType="#//IInstance"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="end2ObjectPort_" eType="#//IInstance"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="requiremenTracabilityHandle"
+        eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="HyperLinks" eType="#//IMHyperLink"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="Dependencies" eType="#//IDependency"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="Annotations" eType="#//IRequirement"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="objectCreation" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="umlDependencyID" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="Stereotypes" eType="#//IUnit"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="Tags" upperBound="-1" eType="#//ITag"
+        containment="true"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="IInformationItem" eSuperTypes="#//DeclarativesType #//DependsOnType #//ConveyedType">
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="id" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="myState" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="name" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="requiremenTracabilityHandle"
+        eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="modifiedTimeWeak" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="description" eType="#//IDescription"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="Represented" upperBound="-1"
+        eType="#//IEvent"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="Annotations" upperBound="-1"
+        eType="#//IRequirement" containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="objectCreation" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="umlDependencyID" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="IInstance" eSuperTypes="#//IRelation">
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="modifiedTimeWeak" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="id" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="inverse" upperBound="-1"
+        eType="#//UnknownType"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="myState" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="name" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="IInstanceSlot" eSuperTypes="#//IModelElement"/>
+  <eClassifiers xsi:type="ecore:EClass" name="IInstanceSpecification" eSuperTypes="#//IModelElement"/>
+  <eClassifiers xsi:type="ecore:EClass" name="IInstanceValue" eSuperTypes="#//IValueSpecification">
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="id" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="modifiedTimeWeak" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="value" eType="#//ValueType"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="IInteractionOccurrence" eSuperTypes="#//IModelElement">
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="id" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="name" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="modifiedTimeWeak" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_pRefSD" eType="#//IMSC"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="Stereotypes" eType="#//IStereotype"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="Tags" eType="#//ITag" containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="objectCreation" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="umlDependencyID" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="IInteractionOperand" eSuperTypes="#//ICollaboration">
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="myState" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="name" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="interactionConstraint"
+        eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="IInteractionOperator" eSuperTypes="#//IModelElement"/>
+  <eClassifiers xsi:type="ecore:EClass" name="IInterfaceItem" eSuperTypes="#//IClassifier"/>
+  <eClassifiers xsi:type="ecore:EClass" name="IInterfaceItemTrigger" eSuperTypes="#//ItsTriggerType">
+    <eStructuralFeatures xsi:type="ecore:EReference" name="itsInterfaceItem" eType="#//M_pFormalMessageType"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="inheritsFromHandle" eType="#//IInterfaceItemTrigger"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="IInternalHyperlink" eSuperTypes="#//HyperLinksType">
+    <eStructuralFeatures xsi:type="ecore:EReference" name="target" eType="#//TargetType"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="ILabel" eSuperTypes="#//ItsLabelType">
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="id" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="itsTrigger" eType="#//ItsTriggerType"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="itsAction" eType="#//IModelElement"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="itsGuard" eType="#//IModelElement"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="modifiedTimeWeak" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="myState" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="inheritsFromHandle" eType="#//ILabel"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="codeUpdateCGTime" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="objectCreation" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="umlDependencyID" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="ILink" eSuperTypes="#//IUnit #//LinksType #//M_pModelObjectType">
+    <eStructuralFeatures xsi:type="ecore:EReference" name="inverse" eType="#//IUnit"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="linkName" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="linkType" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="myState" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="ILinkInstance" eSuperTypes="#//ComponentsType #//M_pModelObjectType">
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="id" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="name" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="toLink" eType="#//IClassInstance"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="fromLink" eType="#//IClassInstance"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="instantiates" eType="#//IMetaLinkHandle"
+        containment="true"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="ILiteralSpecification" eSuperTypes="#//IValueSpecification">
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="id" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="modifiedTimeWeak" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="value" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="myState" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="name" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="codeUpdateCGTime" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="IMHyperLink" eSuperTypes="#//HyperLinksType">
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="id" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="properties" eType="#//IPropertyContainer"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="modifiedTimeWeak" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="dependsOn" eType="#//DependsOnType"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="linkDispName" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="linkType" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="isConfigurationFileHyperLink"
+        eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="linkTarget" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="description" eType="#//IDescription"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="requiremenTracabilityHandle"
+        eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="objectCreation" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="umlDependencyID" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="IMSC" eSuperTypes="#//DeclarativesType #//DependsOnType #//TargetType">
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="id" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="myState" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="properties" eType="#//IPropertyContainer"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="name" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="lastModifiedTime" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="graphicChart" eType="#//CGIMscChart"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="defaultSubsystem" eType="#//OwnerHandleType"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_pICollaboration" eType="#//ICollaboration"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="cmheader" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="lastID" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="ownerHandle" eType="#//ISubsystem"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="description" eType="#//IDescription"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="modifiedTimeWeak" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="Stereotypes" upperBound="-1"
+        eType="#//IClassifier"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="Tags" upperBound="-1" eType="#//ITag"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="requiremenTracabilityHandle"
+        eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="Annotations" eType="#//IAnnotation"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="objectCreation" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="umlDependencyID" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="IMatrixInstance" eSuperTypes="#//MatrixInstancesType #//DependsOnType">
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="id" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="myState" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="name" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="modifiedTimeWeak" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="LayoutHandle" eType="#//IUnit"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="FromScopeHandles" eType="#//M_pModelObjectType"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="ToScopeHandles" eType="#//M_pModelObjectType"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="Stereotypes" eType="#//IClassifier"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_IncludeDescendants_to"
+        eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="properties" eType="#//IPropertyContainer"
+        containment="true"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="IMatrixLayout" eSuperTypes="#//IUnit">
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="id" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="myState" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="name" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="modifiedTimeWeak" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="FromElementTypes" upperBound="-1"
+        eType="#//TableDataDefinition" containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="ToElementTypes" eType="#//TableDataDefinition"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="CellElementTypes" eType="#//TableDataDefinition"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="description" eType="#//IDescription"
+        containment="true"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="IMatrixView" eSuperTypes="#//IUnit"/>
+  <eClassifiers xsi:type="ecore:EClass" name="IMessage" eSuperTypes="#//IModelElement #//DependsOnType">
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="id" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="myState" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="name" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_szSequence" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_szActualArgs" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_szReturnVal" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_pReceiver" eType="#//IClassifierRole"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_pSender" eType="#//IClassifierRole"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_pFormalMessage" eType="#//M_pFormalMessageType"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_eType" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_pCommunicationConnection"
+        eType="#//IModelElement"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_freeText" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="modifiedTimeWeak" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="Stereotypes" eType="#//IClassifier"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="Tags" upperBound="-1" eType="#//ITag"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="properties" eType="#//IPropertyContainer"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_targetExec" eType="#//IModelElement"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_srcExec" eType="#//IModelElement"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="objectCreation" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="umlDependencyID" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="IMessagePoint" eSuperTypes="#//IModelElement"/>
+  <eClassifiers xsi:type="ecore:EClass" name="IMetaLinkHandle" eSuperTypes="#//InverseType #//M_pModelObjectType">
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m2Class" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="filename" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="subsystem" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="class" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="name" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="id" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="IModelElement" eSuperTypes="platform:/plugin/org.eclipse.emf.ecore/model/Ecore.ecore#//EModelElement">
+    <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
+      <details key="documentation" value="This object this be the common one for all Rpy Semantic Element&#xD;&#xA;Diagram seems considered as a semantic element in Rpy Legacy tooling"/>
+    </eAnnotations>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="displayName" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString">
+      <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
+        <details key="documentation" value="As the object IModelElement seems be the common Rpy semantic element, &#xD;&#xA;we remove the field &quot;displayName&quot; of all elements owning a such field, and we put it here.&#xD;&#xA;All semantic Rpy elements should extend this one now."/>
+      </eAnnotations>
+    </eStructuralFeatures>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="IModule" eSuperTypes="#//IInstance #//AssociationsType #//DependsOnType #//M_pModelObjectType #//End2_Type">
+    <eStructuralFeatures xsi:type="ecore:EReference" name="Stereotypes" eType="#//IStereotype"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="description" eType="#//IDescription"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="HyperLinks" upperBound="-1"
+        eType="#//IMHyperLink" containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="otherClass" eType="#//IClass"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="implicitClass" eType="#//IClass"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="properties" eType="#//IPropertyContainer"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="requiremenTracabilityHandle"
+        eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="partKind" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="IMultiplicityItem">
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="name" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="count" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="INode" eSuperTypes="#//IClassifier"/>
+  <eClassifiers xsi:type="ecore:EClass" name="IObjectLink" eSuperTypes="#//ObjectLinksType #//ValueType #//M_pModelObjectType #//DependsOnType #//IModelElement">
+    <eStructuralFeatures xsi:type="ecore:EReference" name="Stereotypes" eType="#//IUnit"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="Tags" eType="#//ITag" containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="toLink" eType="#//ToLinkType"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="fromLink" eType="#//FromLinkType"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="instantiates" eType="#//IMetaLinkHandle"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="end1Multiplicity" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="end2Multiplicity" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="toPort" eType="#//IRelation"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="fromPort" eType="#//IRelation"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="description" eType="#//IDescription"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="requiremenTracabilityHandle"
+        eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="codeUpdateCGTime" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="objectCreation" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="umlDependencyID" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="IObjectLinkHandle">
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m2Class" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="filename" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="subsystem" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="class" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="name" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="id" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="IObjectModelDiagram" eSuperTypes="#//IDiagram"/>
+  <eClassifiers xsi:type="ecore:EClass" name="IObjectNode" eSuperTypes="#//IState #//ItsTargetType">
+    <eStructuralFeatures xsi:type="ecore:EReference" name="represents" eType="#//IClass"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="TheInState" eType="#//IState"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="inState" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="IOperation" eSuperTypes="#//IInterfaceItem"/>
+  <eClassifiers xsi:type="ecore:EClass" name="IPackage" eSuperTypes="#//IUnit">
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="modifiedTimeWeak" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="id" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="description" eType="#//IDescription"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="umlDependencyID" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="lastID" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="myState" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="Annotations" eType="#//IComment"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="objectCreation" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="Stereotypes" eType="#//IModelElement"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="name" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="properties" eType="#//IPropertyContainer"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="cmheader" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="IPanelDiagram" eSuperTypes="#//IDiagram #//DeclarativesType #//TargetType"/>
+  <eClassifiers xsi:type="ecore:EClass" name="IPart" eSuperTypes="#//AssociationsType #//DependsOnType #//M_subjectType #//ValueType #//M_hTargetType #//M_pModelObjectType #//ToLinkType #//InverseType #//ConveyedType #//End2_Type #//TargetType #//FromLinkType #//End1_Type #//IModelElement">
+    <eStructuralFeatures xsi:type="ecore:EReference" name="Stereotypes" eType="#//IUnit"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="otherClass" eType="#//IUnit"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="inverse" eType="#//InverseType"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="Dependencies" upperBound="-1"
+        eType="#//IDependency" containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="Tags" eType="#//ITag" containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="initialCallAction" eType="#//ICallAction"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="codeUpdateCGTime" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="theMainDiagram" eType="#//DependsOnType"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="Slots" eType="#//ISlot"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="HyperLinks" upperBound="-1"
+        eType="#//IMHyperLink" containment="true"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="IPin" eSuperTypes="#//IConnector #//ItsTargetType">
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_type" eType="#//IClassifier"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_isParameterPin" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_corePin" eType="#//IConnector"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="IPort" eSuperTypes="#//IInstance #//M_hTargetType #//ToLinkType #//End2_Type">
+    <eStructuralFeatures xsi:type="ecore:EReference" name="otherClass" eType="#//IClass"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="behavioral" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="reversed" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="Stereotypes" upperBound="-1"
+        eType="#//IClassifier"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="Tags" eType="#//ITag" containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="objectCreation" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="umlDependencyID" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="lastID" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="Dependencies" eType="#//IDependency"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="Annotations" eType="#//IRequirement"
+        containment="true"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="IPrimitiveOperation" eSuperTypes="#//OperationsType #//DependsOnType #//M_subjectType #//ValueType #//M_pFormalMessageType #//ItemsType #//TargetType #//M_pModelObjectType #//IModelElement">
+    <eStructuralFeatures xsi:type="ecore:EReference" name="properties" eType="#//IPropertyContainer"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="lastID" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="Args" upperBound="-1" eType="#//IVariable"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="returnType" eType="#//IClassifier"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="abstract" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="final" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="concurrency" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="protection" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="static" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="constant" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="itsBody" eType="#//IBody"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="Tags" upperBound="-1" eType="#//ITag"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="Annotations" eType="#//IComment"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="Dependencies" upperBound="-1"
+        eType="#//IDependency" containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="Stereotypes" eType="#//IClassifier"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="myReturnType" eType="#//IType"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="description" eType="#//IDescription"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="requiremenTracabilityHandle"
+        eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="Declaratives" upperBound="-1"
+        eType="#//IMSC" containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="itsActivityGraph" eType="#//IActivityGraph"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="EmbededFiles" eType="#//EmbededFilesType"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="codeUpdateCGTime" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="TemplateParameters" eType="#//ITemplateParameter"
+        containment="true"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="IProfile" eSuperTypes="#//IPackage #//OwnerHandleType #//DependsOnType #//DefaultSubsystemType">
+    <eStructuralFeatures xsi:type="ecore:EReference" name="Declaratives" upperBound="-1"
+        eType="#//DeclarativesType" containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="defaultComposite" eType="#//IClass"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="eventsBaseID" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="Classes" upperBound="-1"
+        eType="#//IClass" containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="configurationRelatedTime"
+        unique="false" upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="Tags" upperBound="-1" eType="#//ITag"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="Types" upperBound="-1"
+        eType="#//IType" containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="MatrixLayouts" eType="#//IMatrixLayout"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="license" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="IProject" eSuperTypes="#//IPackage #//M_pModelObjectType">
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="UserColors" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="defaultSubsystem" eType="#//DefaultSubsystemType"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="component" eType="#//IComponent"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="Multiplicities" upperBound="-1"
+        eType="#//IMultiplicityItem" containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="Subsystems" upperBound="-1"
+        eType="#//DefaultSubsystemType" containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="Diagrams" upperBound="-1"
+        eType="#//IModelElement" containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="Components" upperBound="-1"
+        eType="#//IModelElement" containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="PanelDiagrams" eType="#//IPanelDiagram"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="HyperLinks" upperBound="-1"
+        eType="#//IMHyperLink" containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="MSCS" upperBound="-1" eType="#//DeclarativesType"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="UCDiagrams" upperBound="-1"
+        eType="#//IUCDiagram" containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="CollaborationDiagrams"
+        upperBound="-1" eType="#//ICollaborationDiagram" containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="Declaratives" eType="#//IStereotype"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="ComponentDiagrams" eType="#//IComponentDiagram"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="unitSccProjName" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="unitSccProjPath" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="Dependencies" eType="#//IDependency"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="codeUpdateCGTime" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="version" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="IProperty">
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="Name" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="Value" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="Type" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="ExtraTypeInfo" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="IPropertyContainer" eSuperTypes="#//PropertiesType">
+    <eStructuralFeatures xsi:type="ecore:EReference" name="Subjects" upperBound="-1"
+        eType="#//IPropertySubject" containment="true"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="IPropertyMetaclass">
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="Name" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="Properties" upperBound="-1"
+        eType="#//IProperty" containment="true"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="IPropertySubject">
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="Name" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="Metaclasses" upperBound="-1"
+        eType="#//IPropertyMetaclass" containment="true"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="IReception" eSuperTypes="#//OperationsType #//ItemsType #//DependsOnType">
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="id" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="myState" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="Args" upperBound="-1" eType="#//UnknownType"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="event" eType="#//IEvent"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="modifiedTimeWeak" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="Dependencies" upperBound="-1"
+        eType="#//IDependency" containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="lastID" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="requiremenTracabilityHandle"
+        eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="description" eType="#//IDescription"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="objectCreation" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="umlDependencyID" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="IReferenceActivity" eSuperTypes="#//DependsOnType #//ParentType #//ItsTargetType">
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="id" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="name" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="Stereotypes" eType="#//IClassifier"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="modifiedTimeWeak" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="parent" eType="#//IState"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="stateType" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="defaultTrans" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="swimlane" eType="#//ISwimlane"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="referencedActivity" eType="#//IActivityGraph"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="myState" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="IRelation" eSuperTypes="#//IUnit"/>
+  <eClassifiers xsi:type="ecore:EClass" name="IRequirement" eSuperTypes="#//IAnnotation #//DependsOnType">
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="id" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="name" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="Annotations" upperBound="-1"
+        eType="#//IRequirement" containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="myState" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="lastID" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="Stereotypes" eType="#//IStereotype"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="modifiedTimeWeak" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="reqID" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="Dependencies" upperBound="-1"
+        eType="#//IDependency" containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="Anchors" upperBound="-1"
+        eType="#//IAnchor" containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="HyperLinks" upperBound="-1"
+        eType="#//IMHyperLink" containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="theMainDiagram" eType="#//IDiagram"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="ISendAction" eSuperTypes="#//IAction">
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_hTarget" eType="#//M_hTargetType"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_hEvent" eType="#//IEventHandle"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="ArgValCount" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="graphElements" upperBound="-1"
+        eType="#//IHandleWithData" containment="true"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="ISequenceDiagram" eSuperTypes="#//IDiagram"/>
+  <eClassifiers xsi:type="ecore:EClass" name="ISlot">
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="id" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="name" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="value" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="definingVar" eType="#//IAttribute"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="IState" eSuperTypes="#//IStateVertex #//ItsTargetType #//M_pModelObjectType #//DependsOnType #//TargetType">
+    <eStructuralFeatures xsi:type="ecore:EReference" name="parent" eType="#//IStateVertex"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="stateType" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="defaultTrans" eType="#//DefaultTransType"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="entryAction" eType="#//IModelElement"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="inheritsFromHandle" eType="#//IState"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="exitAction" eType="#//IAction"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="nestedStateChart" eType="#//NestedStateChartType"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="requiremenTracabilityHandle"
+        eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="Annotations" upperBound="-1"
+        eType="#//IAnnotation" containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="Dependencies" eType="#//IDependency"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="theMainDiagram" eType="#//IDiagram"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="swimlane" eType="#//ISwimlane"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="codeUpdateCGTime" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="IStateChart" eSuperTypes="#//IClass #//NestedStateChartType #//TargetType">
+    <eStructuralFeatures xsi:type="ecore:EReference" name="States" upperBound="-1"
+        eType="#//IState" containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="baseVersion" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="diagram" eType="#//IStateChartDiagram"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="Views" eType="#//IStateChartDiagram"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="inheritsFromHandle" eType="#//IStateChart"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="IStateChartDiagram" eSuperTypes="#//IDiagram"/>
+  <eClassifiers xsi:type="ecore:EClass" name="IStateVertex" eSuperTypes="#//IModelElement #//ParentType">
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="modifiedTimeWeak" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="id" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="description" eType="#//IDescription"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="umlDependencyID" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="myState" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="Stereotypes" eType="#//IStereotype"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="objectCreation" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="name" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="IStereotype" eSuperTypes="#//IClassifier #//ValueType #//DeclarativesType #//DependsOnType #//M_pModelObjectType">
+    <eStructuralFeatures xsi:type="ecore:EReference" name="properties" eType="#//IPropertyContainer"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m2Classes" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="newTerm" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="description" eType="#//IDescription"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="Tags" upperBound="-1" eType="#//ITag"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="lastID" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="Inheritances" upperBound="-1"
+        eType="#//IGeneralization" containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="Dependencies" eType="#//IDependency"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="requiremenTracabilityHandle"
+        eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="objectCreation" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="umlDependencyID" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="theMainDiagram" eType="#//IUnit"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="Annotations" eType="#//IComment"
+        containment="true"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="IStructureDiagram" eSuperTypes="#//IDiagram #//DeclarativesType #//DependsOnType #//TargetType #//TheMainDiagramType #//M_pModelObjectType"/>
+  <eClassifiers xsi:type="ecore:EClass" name="ISubsystem" eSuperTypes="#//OwnerHandleType #//DependsOnType #//DeclarativesType #//M_pModelObjectType #//TargetType #//DefaultSubsystemType">
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="id" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="myState" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="name" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="modifiedTimeWeak" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="defaultComposite" eType="#//IClass"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="eventsBaseID" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="Classes" upperBound="-1"
+        eType="#//IClass" containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="configurationRelatedTime"
+        unique="false" upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="properties" eType="#//IPropertyContainer"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="lastID" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="cmheader" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="Declaratives" upperBound="-1"
+        eType="#//DeclarativesType" containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="Types" upperBound="-1"
+        eType="#//IUnit" containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="Stereotypes" eType="#//IUnit"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="PredefinedTypes" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="Events" upperBound="-1"
+        eType="#//IInterfaceItem" containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="Annotations" upperBound="-1"
+        eType="#//IUnit" containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="UseCases" upperBound="-1"
+        eType="#//IClassifier" containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="Actors" upperBound="-1"
+        eType="#//IClassifier" containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="description" eType="#//IDescription"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="Tags" upperBound="-1" eType="#//ITag"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="Dependencies" upperBound="-1"
+        eType="#//IDependency" containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="ownerHandle" eType="#//OwnerHandleType"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="theMainDiagram" eType="#//TheMainDiagramType"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="HyperLinks" eType="#//HyperLinksType"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="TableLayouts" upperBound="-1"
+        eType="#//IModelElement" containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="MatrixLayouts" upperBound="-1"
+        eType="#//IMatrixLayout" containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="TableInstances" upperBound="-1"
+        eType="#//TableInstancesType" containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="MatrixInstances" upperBound="-1"
+        eType="#//MatrixInstancesType" containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="EmbededFiles" upperBound="-1"
+        eType="#//EmbededFilesType" containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="ComponentFiles" upperBound="-1"
+        eType="#//IFile" containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="requiremenTracabilityHandle"
+        eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="codeUpdateCGTime" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="objectCreation" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="umlDependencyID" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="AssociationElements" upperBound="-1"
+        eType="#//IAssociationClass" containment="true"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="ISwimlane" eSuperTypes="#//IModelElement">
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="id" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="name" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="modifiedTimeWeak" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="description" eType="#//IDescription"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="represents" eType="#//M_subjectType"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="myState" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="objectCreation" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="umlDependencyID" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="Swimlanes" upperBound="-1"
+        eType="#//ISwimlane" containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="Stereotypes" eType="#//IStereotype"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="ISysMLPort" eSuperTypes="#//IInstance #//DependsOnType #//M_pFormalMessageType #//ToLinkType #//End2_Type #//FromLinkType #//End1_Type">
+    <eStructuralFeatures xsi:type="ecore:EReference" name="Dependencies" upperBound="-1"
+        eType="#//IDependency" containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="Stereotypes" eType="#//IUnit"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="Tags" eType="#//ITag" containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="otherClass" eType="#//IUnit"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="direction" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="description" eType="#//IDescription"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="lastID" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="reversed" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="ITableInstance" eSuperTypes="#//TableInstancesType #//DependsOnType">
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="id" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="myState" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="properties" eType="#//IPropertyContainer"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="name" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="modifiedTimeWeak" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="LayoutHandle" eType="#//IUnit"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="ScopeHandles" eType="#//M_pModelObjectType"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="Stereotypes" eType="#//IClassifier"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="ITableLayout" eSuperTypes="#//IUnit #//ValueType">
+    <eStructuralFeatures xsi:type="ecore:EReference" name="properties" eType="#//IPropertyContainer"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="Stereotypes" eType="#//IStereotype"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="Tags" upperBound="-1" eType="#//ITag"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="TableElementTypes" upperBound="-1"
+        eType="#//TableDataDefinition" containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="DataColumns" upperBound="-1"
+        eType="#//TableDataDefinition" containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="description" eType="#//IDescription"
+        containment="true"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="ITableView" eSuperTypes="#//IUnit"/>
+  <eClassifiers xsi:type="ecore:EClass" name="ITag" eSuperTypes="#//IVariable #//M_pModelObjectType">
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="id" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="name" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="modifiedTimeWeak" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="ValueSpecifications" upperBound="-1"
+        eType="#//IModelElement" containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="typeOf" eType="#//IUnit"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="myState" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="multiplicity" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="properties" eType="#//IPropertyContainer"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="description" eType="#//IDescription"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="HyperLinks" eType="#//IMHyperLink"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="base" eType="#//IUnit"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="metaClass" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="defaultValue" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="codeUpdateCGTime" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="ITemplateInst">
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="id" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="modifiedTimeWeak" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="TemplateInstParams" eType="#//ITemplateInstParam"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="ofTemplate" eType="#//IClass"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="ITemplateInstParam">
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="id" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="name" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="modifiedTimeWeak" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="value" eType="#//IClass"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="argValue" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="onTheFlyValue" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="ITemplateInstantiation" eSuperTypes="#//IModelElement"/>
+  <eClassifiers xsi:type="ecore:EClass" name="ITemplateInstantiationParameter" eSuperTypes="#//IModelElement"/>
+  <eClassifiers xsi:type="ecore:EClass" name="ITemplateParameter" eSuperTypes="#//IVariable">
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="id" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="name" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="myState" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="modifiedTimeWeak" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="representative" eType="#//IClass"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="ITimeEvent" eSuperTypes="#//ItsTargetType">
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="id" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="myState" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="name" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="modifiedTimeWeak" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="parent" eType="#//IState"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="stateType" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="defaultTrans" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="durationTime" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="swimlane" eType="#//ISwimlane"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="ITimeout" eSuperTypes="#//ItsTriggerType">
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="time" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="inheritsFromHandle" eType="#//ITimeout"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="ITransition" eSuperTypes="#//IModelElement #//TransitionsType #//DependsOnType #//TargetType">
+    <eStructuralFeatures xsi:type="ecore:EReference" name="itsSource" eType="#//ItsTargetType"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="inheritsFromHandle" eType="#//ITransition"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="Dependencies" upperBound="-1"
+        eType="#//IDependency" containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="Stereotypes" eType="#//IClassifier"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="ITrigger" eSuperTypes="#//IModelElement"/>
+  <eClassifiers xsi:type="ecore:EClass" name="ITriggered" eSuperTypes="#//OperationsType #//M_pFormalMessageType #//ItemsType #//IModelElement">
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="id" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="name" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="Args" upperBound="-1" eType="#//IVariable"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="returnType" eType="#//IType"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="abstract" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="final" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="concurrency" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="protection" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="modifiedTimeWeak" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="myState" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="IType" eSuperTypes="#//IClassifier #//DeclarativesType #//DependsOnType #//M_subjectType #//ValueType #//TargetType #//M_pModelObjectType">
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="lastID" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="Literals" upperBound="-1"
+        eType="#//IEnumerationLiteral" containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="kind" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="properties" eType="#//IPropertyContainer"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="description" eType="#//IDescription"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="declaration" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="Stereotypes" eType="#//IUnit"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="Attrs" upperBound="-1"
+        eType="#//IAttribute" containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="AssociationElements" upperBound="-1"
+        eType="#//UnknownType"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="Tags" upperBound="-1" eType="#//ITag"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="typedefBaseType" eType="#//IUnit"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="typedefMultiplicity" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="typedefIsOrdered" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="typedefIsReference" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="typedefIsConstant" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="requiremenTracabilityHandle"
+        eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="codeUpdateCGTime" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="theMainDiagram" eType="#//IDiagram"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="IUCDiagram" eSuperTypes="#//TheMainDiagramType #//DependsOnType #//DeclarativesType">
+    <eStructuralFeatures xsi:type="ecore:EReference" name="properties" eType="#//IPropertyContainer"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="graphicChart" eType="#//CGIClassChart"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="modifiedTimeWeak" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="IUnit" eSuperTypes="#//IModelElement"/>
+  <eClassifiers xsi:type="ecore:EClass" name="IUseCase" eSuperTypes="#//IClassifier #//DependsOnType #//End2_Type #//TargetType">
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="id" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="myState" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="name" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="theMainDiagram" eType="#//TheMainDiagramType"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="HyperLinks" upperBound="-1"
+        eType="#//IMHyperLink" containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="weakCGTime" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="strongCGTime" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="classModifier" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="description" eType="#//IDescription"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="Inheritances" upperBound="-1"
+        eType="#//IGeneralization" containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="Associations" upperBound="-1"
+        eType="#//AssociationsType" containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="UseCaseStereoTypes" upperBound="-1"
+        eType="#//IUseCaseStereoType" containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="EntryPoints" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="Dependencies" upperBound="-1"
+        eType="#//IDependency" containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="lastID" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="Diagrams" upperBound="-1"
+        eType="#//DeclarativesType"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="modifiedTimeWeak" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="requiremenTracabilityHandle"
+        eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="cmheader" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="ownerHandle" eType="#//ISubsystem"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="Declaratives" upperBound="-1"
+        eType="#//DependsOnType" containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="Operations" upperBound="-1"
+        eType="#//OperationsType" containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="StateCharts" upperBound="-1"
+        eType="#//IActivityGraph" containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="itsStateChart" eType="#//NestedStateChartType"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="Attrs" upperBound="-1"
+        eType="#//IAttribute" containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="Annotations" upperBound="-1"
+        eType="#//IAnnotation" containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="EmbededFiles" eType="#//IEmbededFile"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="objectCreation" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="umlDependencyID" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="ObjectLinks" upperBound="-1"
+        eType="#//IObjectLink" containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="properties" eType="#//IPropertyContainer"
+        containment="true"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="IUseCaseDiagram" eSuperTypes="#//IDiagram"/>
+  <eClassifiers xsi:type="ecore:EClass" name="IUseCaseStereoType">
+    <eStructuralFeatures xsi:type="ecore:EReference" name="useCase" eType="#//IUseCase"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="stereoType" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="entryPoint" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="IValueSpecification" eSuperTypes="#//IModelElement"/>
+  <eClassifiers xsi:type="ecore:EClass" name="IVariable" eSuperTypes="#//IUnit">
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="isOrdered" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="myTypeOf" eType="#//IType"
+        containment="true"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="InverseType" abstract="true"/>
+  <eClassifiers xsi:type="ecore:EClass" name="ItemsType" abstract="true"/>
+  <eClassifiers xsi:type="ecore:EClass" name="ItsLabelType" abstract="true"/>
+  <eClassifiers xsi:type="ecore:EClass" name="ItsStateChartType" abstract="true"/>
+  <eClassifiers xsi:type="ecore:EClass" name="ItsTargetType" abstract="true"/>
+  <eClassifiers xsi:type="ecore:EClass" name="ItsTriggerType" abstract="true">
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="modifiedTimeWeak" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="id" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="info" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="umlDependencyID" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="myState" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="objectCreation" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="body" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="LinksType" abstract="true">
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="id" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="multiplicity" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="name" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="otherClass" eType="#//IClassHandle"
+        containment="true"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="M_hTargetType" abstract="true">
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="requiremenTracabilityHandle"
+        eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="description" eType="#//IDescription"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="properties" eType="#//IPropertyContainer"
+        containment="true"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="M_pBaseType" abstract="true" eSuperTypes="#//M_pModelObjectType"/>
+  <eClassifiers xsi:type="ecore:EClass" name="M_pFormalMessageType" abstract="true"/>
+  <eClassifiers xsi:type="ecore:EClass" name="M_pModelObjectType" abstract="true"/>
+  <eClassifiers xsi:type="ecore:EClass" name="M_pRootType" abstract="true"/>
+  <eClassifiers xsi:type="ecore:EClass" name="M_subjectType" abstract="true">
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="umlDependencyID" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="objectCreation" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="MatrixInstancesType" abstract="true"/>
+  <eClassifiers xsi:type="ecore:EClass" name="NestedStateChartType" abstract="true"
+      eSuperTypes="#//ItsStateChartType">
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="defNumber" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="graphicChart" eType="#//CGIStateChart"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="lastModifiedTime" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="Transitions" upperBound="-1"
+        eType="#//TransitionsType" containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="Connectors" upperBound="-1"
+        eType="#//ItsTargetType" containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="version" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="ObjectLinksType" abstract="true"/>
+  <eClassifiers xsi:type="ecore:EClass" name="OperationsType" abstract="true">
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="virtual" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="OwnerHandleType" abstract="true" eSuperTypes="#//DefaultSubsystemType">
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="weakCGTime" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="strongCGTime" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="P_MessageHandlerType" abstract="true"/>
+  <eClassifiers xsi:type="ecore:EClass" name="ParentType" abstract="true"/>
+  <eClassifiers xsi:type="ecore:EClass" name="PropertiesType" abstract="true"/>
+  <eClassifiers xsi:type="ecore:EClass" name="TableDataDefinition">
+    <eStructuralFeatures xsi:type="ecore:EReference" name="myTable" eType="#//IModelElement"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="name" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="DataType" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="columnName" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="modelElement" eType="#//IUnit"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="TableInstancesType" abstract="true"/>
+  <eClassifiers xsi:type="ecore:EClass" name="TargetType" abstract="true"/>
+  <eClassifiers xsi:type="ecore:EClass" name="TheMainDiagramType" abstract="true"
+      eSuperTypes="#//M_pModelObjectType">
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="id" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="lastModifiedTime" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="requiremenTracabilityHandle"
+        eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="defaultSubsystem" eType="#//DefaultSubsystemType"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="description" eType="#//IDescription"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="umlDependencyID" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="lastID" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="myState" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="ownerHandle" eType="#//OwnerHandleType"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="objectCreation" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="name" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="cmheader" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="ToLinkType" abstract="true" eSuperTypes="#//FromLinkType">
+    <eStructuralFeatures xsi:type="ecore:EReference" name="implicitClass" eType="#//IClass"
+        containment="true"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="TransitionsType" abstract="true">
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="modifiedTimeWeak" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="staticReaction" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="itsTarget" eType="#//ItsTargetType"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="id" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="codeUpdateCGTime" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="requiremenTracabilityHandle"
+        eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="description" eType="#//IDescription"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="itsLabel" eType="#//ItsLabelType"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="umlDependencyID" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="myState" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="objectCreation" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="name" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="UnknownType"/>
+  <eClassifiers xsi:type="ecore:EClass" name="ValueType" abstract="true">
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="modifiedTimeWeak" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="id" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="myState" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="name" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+  </eClassifiers>
+</ecore:EPackage>
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/model/Rpy.genmodel b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/model/Rpy.genmodel
new file mode 100755
index 0000000..43a6946
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/model/Rpy.genmodel
@@ -0,0 +1,2173 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<genmodel:GenModel xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:ecore="http://www.eclipse.org/emf/2002/Ecore"
+    xmlns:genmodel="http://www.eclipse.org/emf/2002/GenModel" copyrightText="  Copyright (c) 2016 CEA LIST and others.&#xD;&#xA;  &#xD;&#xA;  All rights reserved. This program and the accompanying materials&#xD;&#xA;  are made available under the terms of the Eclipse Public License v1.0&#xD;&#xA;  which accompanies this distribution, and is available at&#xD;&#xA;  http://www.eclipse.org/legal/epl-v10.html&#xD;&#xA; &#xD;&#xA;  Contributors:&#xD;&#xA;    CEA LIST - Initial API and implementation&#xD;&#xA;"
+    modelDirectory="/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen" editDirectory="/org.eclipse.papyrus.interoperability.rpy.metamodel.edit/src-gen"
+    editorDirectory="/org.eclipse.papyrus.interoperability.rpy.metamodel.editor/src-gen"
+    modelPluginID="org.eclipse.papyrus.interoperability.rpy.metamodel" modelName="rpymetamodel"
+    editPluginClass="org.eclipse.papyrus.interoperability.rpy.rpymetamodel.provider.rpymetamodelEditPlugin"
+    editorPluginClass="org.eclipse.papyrus.interoperability.rpy.rpymetamodel.presentation.rpymetamodelEditorPlugin"
+    nonNLSMarkers="true" rootExtendsClass="org.eclipse.emf.ecore.impl.MinimalEObjectImpl$Container"
+    testsDirectory="/org.eclipse.papyrus.interoperability.rpy.metamodel.tests/src-gen"
+    importerID="org.eclipse.emf.importer.ecore" containmentProxies="true" complianceLevel="6.0"
+    copyrightFields="false" providerRootExtendsClass="" editPluginID="org.eclipse.papyrus.interoperability.rpy.metamodel.edit"
+    editorPluginID="org.eclipse.papyrus.interoperability.rpy.metamodel.editor" language=""
+    usedGenPackages="../../org.eclipse.emf.ecore/model/Ecore.genmodel#//ecore" operationReflection="true"
+    importOrganizing="true" oSGiCompatible="true">
+  <foreignModel>Rpy.ecore</foreignModel>
+  <genPackages prefix="UMLRpy" basePackage="org.eclipse.papyrus.interoperability.rpy"
+      disposableProviderFactory="true" loadInitialization="true" literalsInterface="false"
+      ecorePackage="Rpy.ecore#/">
+    <genClasses image="false" ecoreClass="Rpy.ecore#//AssociationsType"/>
+    <genClasses ecoreClass="Rpy.ecore#//CCollaborationChart">
+      <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference Rpy.ecore#//CCollaborationChart/m_pModelObject"/>
+      <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference Rpy.ecore#//CCollaborationChart/m_pRoot"/>
+    </genClasses>
+    <genClasses ecoreClass="Rpy.ecore#//CGIActionState">
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//CGIActionState/properties"/>
+      <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference Rpy.ecore#//CGIActionState/m_pModelObject"/>
+      <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference Rpy.ecore#//CGIActionState/m_pParent"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//CGIActionState/m_transform"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//CGIActionState/m_AdditionalLabel"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//CGIActionState/m_polygon"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//CGIActionState/m_nNameFormat"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//CGIActionState/m_nIsNameFormat"/>
+      <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference Rpy.ecore#//CGIActionState/Compartments"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//CGIActionState/nAndLineCount"/>
+      <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference Rpy.ecore#//CGIActionState/m_pInheritsFrom"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//CGIActionState/m_nInheritanceMask"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//CGIActionState/m_pDefaultComponentRelation"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//CGIActionState/m_NameDisplayMode"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//CGIActionState/m_ActDescLablDiaplayMode"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//CGIActionState/m_moveAndLineTimeStamp"/>
+    </genClasses>
+    <genClasses ecoreClass="Rpy.ecore#//CGIActiveX">
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//CGIActiveX/properties"/>
+      <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference Rpy.ecore#//CGIActiveX/m_pModelObject"/>
+      <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference Rpy.ecore#//CGIActiveX/m_pParent"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//CGIActiveX/m_transform"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//CGIActiveX/m_polygon"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//CGIActiveX/m_nNameFormat"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//CGIActiveX/m_nIsNameFormat"/>
+      <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference Rpy.ecore#//CGIActiveX/Compartments"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//CGIActiveX/m_csModelObjPath"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//CGIActiveX/m_csName"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//CGIActiveX/m_PartsArray"/>
+    </genClasses>
+    <genClasses ecoreClass="Rpy.ecore#//CGIAnchor">
+      <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference Rpy.ecore#//CGIAnchor/m_pModelObject"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//CGIAnchor/m_pParent"/>
+      <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference Rpy.ecore#//CGIAnchor/m_pSource"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//CGIAnchor/m_sourceType"/>
+      <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference Rpy.ecore#//CGIAnchor/m_pTarget"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//CGIAnchor/m_targetType"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//CGIAnchor/m_direction"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//CGIAnchor/m_rpn"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//CGIAnchor/m_anglePoint1"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//CGIAnchor/m_anglePoint2"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//CGIAnchor/m_line_style"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//CGIAnchor/m_SourcePort"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//CGIAnchor/m_TargetPort"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//CGIAnchor/properties"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//CGIAnchor/m_color"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//CGIAnchor/m_lineWidth"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//CGIAnchor/m_arrow"/>
+    </genClasses>
+    <genClasses ecoreClass="Rpy.ecore#//CGIAnnotation">
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//CGIAnnotation/properties"/>
+      <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference Rpy.ecore#//CGIAnnotation/m_pParent"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//CGIAnnotation/m_transform"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//CGIAnnotation/m_AdditionalLabel"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//CGIAnnotation/m_polygon"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//CGIAnnotation/m_nNameFormat"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//CGIAnnotation/m_nIsNameFormat"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//CGIAnnotation/iTempdisplayTextFlag"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//CGIAnnotation/m_bIsBoxStyle"/>
+      <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference Rpy.ecore#//CGIAnnotation/m_pModelObject"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//CGIAnnotation/m_color"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//CGIAnnotation/m_lineWidth"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//CGIAnnotation/frameset"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//CGIAnnotation/Compartments"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//CGIAnnotation/m_bIsStructured"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//CGIAnnotation/m_bFramesetModified"/>
+    </genClasses>
+    <genClasses ecoreClass="Rpy.ecore#//CGIArrow">
+      <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference Rpy.ecore#//CGIArrow/m_pModelObject"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//CGIArrow/m_pParent"/>
+      <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference Rpy.ecore#//CGIArrow/m_pSource"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//CGIArrow/m_sourceType"/>
+      <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference Rpy.ecore#//CGIArrow/m_pTarget"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//CGIArrow/m_targetType"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//CGIArrow/m_direction"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//CGIArrow/m_rpn"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//CGIArrow/m_anglePoint1"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//CGIArrow/m_anglePoint2"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//CGIArrow/m_line_style"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//CGIArrow/m_SourcePort"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//CGIArrow/m_TargetPort"/>
+    </genClasses>
+    <genClasses ecoreClass="Rpy.ecore#//CGIAssociationEnd">
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//CGIAssociationEnd/properties"/>
+      <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference Rpy.ecore#//CGIAssociationEnd/m_pModelObject"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//CGIAssociationEnd/m_pParent"/>
+      <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference Rpy.ecore#//CGIAssociationEnd/m_pSource"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//CGIAssociationEnd/m_sourceType"/>
+      <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference Rpy.ecore#//CGIAssociationEnd/m_pTarget"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//CGIAssociationEnd/m_targetType"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//CGIAssociationEnd/m_direction"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//CGIAssociationEnd/m_rpn"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//CGIAssociationEnd/m_anglePoint1"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//CGIAssociationEnd/m_anglePoint2"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//CGIAssociationEnd/m_line_style"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//CGIAssociationEnd/m_SourcePort"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//CGIAssociationEnd/m_TargetPort"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//CGIAssociationEnd/m_pInverseModelObject"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//CGIAssociationEnd/m_pInstance"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//CGIAssociationEnd/m_pInverseInstance"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//CGIAssociationEnd/m_bShowSourceMultiplicity"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//CGIAssociationEnd/m_bShowSourceRole"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//CGIAssociationEnd/m_bShowTargetMultiplicity"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//CGIAssociationEnd/m_bShowTargetRole"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//CGIAssociationEnd/m_bShowLinkName"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//CGIAssociationEnd/m_bShowSpecificType"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//CGIAssociationEnd/m_bInstance"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//CGIAssociationEnd/m_bShowQualifier1"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//CGIAssociationEnd/m_bShowQualifier2"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//CGIAssociationEnd/m_sourceRole"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//CGIAssociationEnd/m_targetRole"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//CGIAssociationEnd/m_sourceMultiplicity"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//CGIAssociationEnd/m_targetMultiplicity"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//CGIAssociationEnd/m_sourceQualifier"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//CGIAssociationEnd/m_targetQualifier"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//CGIAssociationEnd/m_specificType"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//CGIAssociationEnd/m_arrow"/>
+    </genClasses>
+    <genClasses ecoreClass="Rpy.ecore#//CGIAssociationRole">
+      <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference Rpy.ecore#//CGIAssociationRole/m_pModelObject"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//CGIAssociationRole/m_pParent"/>
+      <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference Rpy.ecore#//CGIAssociationRole/m_pSource"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//CGIAssociationRole/m_sourceType"/>
+      <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference Rpy.ecore#//CGIAssociationRole/m_pTarget"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//CGIAssociationRole/m_targetType"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//CGIAssociationRole/m_direction"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//CGIAssociationRole/m_rpn"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//CGIAssociationRole/m_anglePoint1"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//CGIAssociationRole/m_anglePoint2"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//CGIAssociationRole/m_line_style"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//CGIAssociationRole/m_SourcePort"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//CGIAssociationRole/m_TargetPort"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//CGIAssociationRole/m_arrow"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//CGIAssociationRole/properties"/>
+    </genClasses>
+    <genClasses ecoreClass="Rpy.ecore#//CGIBasicClass">
+      <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference Rpy.ecore#//CGIBasicClass/m_pModelObject"/>
+      <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference Rpy.ecore#//CGIBasicClass/m_pParent"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//CGIBasicClass/m_transform"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//CGIBasicClass/m_AdditionalLabel"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//CGIBasicClass/m_polygon"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//CGIBasicClass/m_nNameFormat"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//CGIBasicClass/m_nIsNameFormat"/>
+      <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference Rpy.ecore#//CGIBasicClass/Compartments"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//CGIBasicClass/properties"/>
+      <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference Rpy.ecore#//CGIBasicClass/m_pImageViewData"/>
+    </genClasses>
+    <genClasses ecoreClass="Rpy.ecore#//CGIBlockState">
+      <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference Rpy.ecore#//CGIBlockState/m_pModelObject"/>
+      <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference Rpy.ecore#//CGIBlockState/m_pParent"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//CGIBlockState/m_transform"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//CGIBlockState/m_polygon"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//CGIBlockState/m_nNameFormat"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//CGIBlockState/m_nIsNameFormat"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//CGIBlockState/nAndLineCount"/>
+      <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference Rpy.ecore#//CGIBlockState/m_pInheritsFrom"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//CGIBlockState/m_nInheritanceMask"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//CGIBlockState/m_pDefaultComponentRelation"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//CGIBlockState/m_NameDisplayMode"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//CGIBlockState/m_ActDescLablDiaplayMode"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//CGIBlockState/properties"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//CGIBlockState/m_AdditionalLabel"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//CGIBlockState/m_moveAndLineTimeStamp"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//CGIBlockState/Compartments"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//CGIBlockState/frameset"/>
+    </genClasses>
+    <genClasses ecoreClass="Rpy.ecore#//CGIBox">
+      <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference Rpy.ecore#//CGIBox/m_pModelObject"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//CGIBox/m_polygon"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//CGIBox/m_nNameFormat"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//CGIBox/m_nIsNameFormat"/>
+      <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference Rpy.ecore#//CGIBox/Compartments"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EReference Rpy.ecore#//CGIBox/m_pParent"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//CGIBox/m_transform"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//CGIBox/properties"/>
+    </genClasses>
+    <genClasses ecoreClass="Rpy.ecore#//CGIButtonArray">
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//CGIButtonArray/properties"/>
+      <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference Rpy.ecore#//CGIButtonArray/m_pModelObject"/>
+      <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference Rpy.ecore#//CGIButtonArray/m_pParent"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//CGIButtonArray/m_transform"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//CGIButtonArray/m_polygon"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//CGIButtonArray/m_nNameFormat"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//CGIButtonArray/m_nIsNameFormat"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//CGIButtonArray/frameset"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//CGIButtonArray/Compartments"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//CGIButtonArray/m_csModelObjPath"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//CGIButtonArray/m_csName"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//CGIButtonArray/m_PartsArray"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//CGIButtonArray/m_liButtonNames"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//CGIButtonArray/m_liButtonValues"/>
+    </genClasses>
+    <genClasses ecoreClass="Rpy.ecore#//CGIClass">
+      <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference Rpy.ecore#//CGIClass/m_pModelObject"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//CGIClass/m_AdditionalLabel"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//CGIClass/m_polygon"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//CGIClass/m_nNameFormat"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//CGIClass/m_nIsNameFormat"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//CGIClass/Compartments"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EReference Rpy.ecore#//CGIClass/m_pParent"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//CGIClass/m_transform"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//CGIClass/frameset"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//CGIClass/properties"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//CGIClass/Attrs"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//CGIClass/Operations"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//CGIClass/m_color"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//CGIClass/m_lineWidth"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//CGIClass/m_dSeparatorPosition"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//CGIClass/m_bIsMisplaced"/>
+      <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference Rpy.ecore#//CGIClass/m_pImageViewData"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//CGIClass/m_bFramesetModified"/>
+    </genClasses>
+    <genClasses ecoreClass="Rpy.ecore#//CGIClassChart">
+      <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference Rpy.ecore#//CGIClassChart/m_pModelObject"/>
+      <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference Rpy.ecore#//CGIClassChart/m_pRoot"/>
+    </genClasses>
+    <genClasses ecoreClass="Rpy.ecore#//CGIClassifierRole">
+      <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference Rpy.ecore#//CGIClassifierRole/m_pModelObject"/>
+      <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference Rpy.ecore#//CGIClassifierRole/m_pParent"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//CGIClassifierRole/m_transform"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//CGIClassifierRole/m_polygon"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//CGIClassifierRole/m_nNameFormat"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//CGIClassifierRole/m_nIsNameFormat"/>
+      <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference Rpy.ecore#//CGIClassifierRole/Compartments"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//CGIClassifierRole/properties"/>
+    </genClasses>
+    <genClasses ecoreClass="Rpy.ecore#//CGICompartment">
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//CGICompartment/id"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//CGICompartment/m_name"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//CGICompartment/m_displayOption"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//CGICompartment/m_bShowInherited"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//CGICompartment/m_bOrdered"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//CGICompartment/Items"/>
+    </genClasses>
+    <genClasses ecoreClass="Rpy.ecore#//CGIComponent">
+      <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference Rpy.ecore#//CGIComponent/m_pModelObject"/>
+      <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference Rpy.ecore#//CGIComponent/m_pParent"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//CGIComponent/m_transform"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//CGIComponent/m_polygon"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//CGIComponent/m_nNameFormat"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//CGIComponent/m_nIsNameFormat"/>
+      <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference Rpy.ecore#//CGIComponent/Compartments"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//CGIComponent/properties"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//CGIComponent/m_AdditionalLabel"/>
+    </genClasses>
+    <genClasses ecoreClass="Rpy.ecore#//CGICompositeClass">
+      <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference Rpy.ecore#//CGICompositeClass/m_pModelObject"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//CGICompositeClass/m_pParent"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//CGICompositeClass/m_AdditionalLabel"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//CGICompositeClass/m_polygon"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//CGICompositeClass/m_nNameFormat"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//CGICompositeClass/m_nIsNameFormat"/>
+      <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference Rpy.ecore#//CGICompositeClass/Compartments"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//CGICompositeClass/properties"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//CGICompositeClass/m_color"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//CGICompositeClass/m_lineWidth"/>
+    </genClasses>
+    <genClasses ecoreClass="Rpy.ecore#//CGIConnector">
+      <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference Rpy.ecore#//CGIConnector/m_pModelObject"/>
+      <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference Rpy.ecore#//CGIConnector/m_pParent"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//CGIConnector/m_transform"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//CGIConnector/m_position"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//CGIConnector/m_nInheritanceMask"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//CGIConnector/m_SubType"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//CGIConnector/properties"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//CGIConnector/m_AdditionalLabel"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//CGIConnector/myState"/>
+      <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference Rpy.ecore#//CGIConnector/m_pInheritsFrom"/>
+    </genClasses>
+    <genClasses ecoreClass="Rpy.ecore#//CGIContainArrow">
+      <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference Rpy.ecore#//CGIContainArrow/m_pModelObject"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//CGIContainArrow/m_pParent"/>
+      <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference Rpy.ecore#//CGIContainArrow/m_pSource"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//CGIContainArrow/m_sourceType"/>
+      <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference Rpy.ecore#//CGIContainArrow/m_pTarget"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//CGIContainArrow/m_targetType"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//CGIContainArrow/m_direction"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//CGIContainArrow/m_rpn"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//CGIContainArrow/m_arrow"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//CGIContainArrow/m_anglePoint1"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//CGIContainArrow/m_anglePoint2"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//CGIContainArrow/m_line_style"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//CGIContainArrow/m_SourcePort"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//CGIContainArrow/m_TargetPort"/>
+    </genClasses>
+    <genClasses ecoreClass="Rpy.ecore#//CGIDiagramFrame">
+      <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference Rpy.ecore#//CGIDiagramFrame/m_pModelObject"/>
+      <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference Rpy.ecore#//CGIDiagramFrame/m_pParent"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//CGIDiagramFrame/m_transform"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//CGIDiagramFrame/m_AdditionalLabel"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//CGIDiagramFrame/m_polygon"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//CGIDiagramFrame/m_nNameFormat"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//CGIDiagramFrame/m_nIsNameFormat"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//CGIDiagramFrame/m_bVisible"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//CGIDiagramFrame/frameset"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//CGIDiagramFrame/Compartments"/>
+    </genClasses>
+    <genClasses ecoreClass="Rpy.ecore#//CGIFreeShape">
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//CGIFreeShape/properties"/>
+      <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference Rpy.ecore#//CGIFreeShape/m_pModelObject"/>
+      <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference Rpy.ecore#//CGIFreeShape/m_pParent"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//CGIFreeShape/m_transform"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//CGIFreeShape/m_points"/>
+    </genClasses>
+    <genClasses ecoreClass="Rpy.ecore#//CGIFreeText">
+      <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference Rpy.ecore#//CGIFreeText/m_pModelObject"/>
+      <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference Rpy.ecore#//CGIFreeText/m_pParent"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//CGIFreeText/m_transform"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//CGIFreeText/m_points"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//CGIFreeText/m_text"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//CGIFreeText/properties"/>
+    </genClasses>
+    <genClasses ecoreClass="Rpy.ecore#//CGIGenericElement">
+      <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference Rpy.ecore#//CGIGenericElement/m_pModelObject"/>
+      <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference Rpy.ecore#//CGIGenericElement/m_pParent"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//CGIGenericElement/m_transform"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//CGIGenericElement/m_AdditionalLabel"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//CGIGenericElement/m_polygon"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//CGIGenericElement/m_nNameFormat"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//CGIGenericElement/m_nIsNameFormat"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//CGIGenericElement/frameset"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//CGIGenericElement/Compartments"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//CGIGenericElement/properties"/>
+      <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference Rpy.ecore#//CGIGenericElement/m_pImageViewData"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//CGIGenericElement/m_csContext"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//CGIGenericElement/m_csPartsArray"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//CGIGenericElement/m_bIsStructured"/>
+    </genClasses>
+    <genClasses ecoreClass="Rpy.ecore#//CGIImage">
+      <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference Rpy.ecore#//CGIImage/m_pModelObject"/>
+      <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference Rpy.ecore#//CGIImage/m_pParent"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//CGIImage/m_transform"/>
+      <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference Rpy.ecore#//CGIImage/m_pImageViewData"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//CGIImage/m_points"/>
+    </genClasses>
+    <genClasses ecoreClass="Rpy.ecore#//CGIImageData">
+      <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference Rpy.ecore#//CGIImageData/m_pModelObject"/>
+      <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference Rpy.ecore#//CGIImageData/m_pParent"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//CGIImageData/m_dataSize"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//CGIImageData/m_data"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//CGIImageData/m_srcFile"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//CGIImageData/m_fileModifiedTime"/>
+    </genClasses>
+    <genClasses ecoreClass="Rpy.ecore#//CGIInformationFlow">
+      <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference Rpy.ecore#//CGIInformationFlow/m_pModelObject"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//CGIInformationFlow/m_pParent"/>
+      <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference Rpy.ecore#//CGIInformationFlow/m_pSource"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//CGIInformationFlow/m_sourceType"/>
+      <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference Rpy.ecore#//CGIInformationFlow/m_pTarget"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//CGIInformationFlow/m_targetType"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//CGIInformationFlow/m_direction"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//CGIInformationFlow/m_rpn"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//CGIInformationFlow/m_anglePoint1"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//CGIInformationFlow/m_anglePoint2"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//CGIInformationFlow/m_line_style"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//CGIInformationFlow/m_SourcePort"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//CGIInformationFlow/m_TargetPort"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//CGIInformationFlow/m_bShowKeyword"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//CGIInformationFlow/m_showConveyed"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//CGIInformationFlow/m_keyword"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//CGIInformationFlow/m_conveyed"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//CGIInformationFlow/m_arrow"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//CGIInformationFlow/properties"/>
+    </genClasses>
+    <genClasses ecoreClass="Rpy.ecore#//CGIInheritance">
+      <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference Rpy.ecore#//CGIInheritance/m_pModelObject"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//CGIInheritance/m_pParent"/>
+      <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference Rpy.ecore#//CGIInheritance/m_pSource"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//CGIInheritance/m_sourceType"/>
+      <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference Rpy.ecore#//CGIInheritance/m_pTarget"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//CGIInheritance/m_targetType"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//CGIInheritance/m_direction"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//CGIInheritance/m_rpn"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//CGIInheritance/m_anglePoint1"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//CGIInheritance/m_anglePoint2"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//CGIInheritance/m_line_style"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//CGIInheritance/m_SourcePort"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//CGIInheritance/m_TargetPort"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//CGIInheritance/m_ShowName"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//CGIInheritance/m_ShowStereotype"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//CGIInheritance/properties"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//CGIInheritance/m_color"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//CGIInheritance/m_lineWidth"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//CGIInheritance/m_arrow"/>
+    </genClasses>
+    <genClasses ecoreClass="Rpy.ecore#//CGIMFCCtrl">
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//CGIMFCCtrl/properties"/>
+      <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference Rpy.ecore#//CGIMFCCtrl/m_pModelObject"/>
+      <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference Rpy.ecore#//CGIMFCCtrl/m_pParent"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//CGIMFCCtrl/m_transform"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//CGIMFCCtrl/m_polygon"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//CGIMFCCtrl/m_nNameFormat"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//CGIMFCCtrl/m_nIsNameFormat"/>
+      <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference Rpy.ecore#//CGIMFCCtrl/Compartments"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//CGIMFCCtrl/m_csModelObjPath"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//CGIMFCCtrl/m_csName"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//CGIMFCCtrl/m_PartsArray"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//CGIMFCCtrl/m_csButtonCaption"/>
+    </genClasses>
+    <genClasses ecoreClass="Rpy.ecore#//CGIMessageLabel">
+      <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference Rpy.ecore#//CGIMessageLabel/m_pModelObject"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//CGIMessageLabel/m_pParent"/>
+      <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference Rpy.ecore#//CGIMessageLabel/m_pCommunicationConnection"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//CGIMessageLabel/percent"/>
+    </genClasses>
+    <genClasses ecoreClass="Rpy.ecore#//CGIMscChart">
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//CGIMscChart/vLadderMargin"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//CGIMscChart/m_usingActivationBar"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//CGIMscChart/id"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//CGIMscChart/m_type"/>
+      <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference Rpy.ecore#//CGIMscChart/m_pModelObject"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//CGIMscChart/m_pParent"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//CGIMscChart/m_name"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//CGIMscChart/m_drawBehavior"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//CGIMscChart/m_bIsPreferencesInitialized"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//CGIMscChart/elementList"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//CGIMscChart/graphElements"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//CGIMscChart/m_access"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//CGIMscChart/m_modified"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//CGIMscChart/m_fileVersion"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//CGIMscChart/m_nModifyDate"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//CGIMscChart/m_nCreateDate"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//CGIMscChart/m_creator"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//CGIMscChart/m_bScaleWithZoom"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//CGIMscChart/m_arrowStyle"/>
+      <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference Rpy.ecore#//CGIMscChart/m_pRoot"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//CGIMscChart/m_currentLeftTop"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//CGIMscChart/m_currentRightBottom"/>
+    </genClasses>
+    <genClasses ecoreClass="Rpy.ecore#//CGIMscColumnCR">
+      <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference Rpy.ecore#//CGIMscColumnCR/m_pModelObject"/>
+      <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference Rpy.ecore#//CGIMscColumnCR/m_pParent"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//CGIMscColumnCR/m_transform"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//CGIMscColumnCR/m_AdditionalLabel"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//CGIMscColumnCR/m_position"/>
+      <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference Rpy.ecore#//CGIMscColumnCR/m_pInheritsFrom"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//CGIMscColumnCR/m_nInheritanceMask"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//CGIMscColumnCR/m_SubType"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//CGIMscColumnCR/properties"/>
+    </genClasses>
+    <genClasses ecoreClass="Rpy.ecore#//CGIMscConditionMark">
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//CGIMscConditionMark/properties"/>
+      <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference Rpy.ecore#//CGIMscConditionMark/m_pModelObject"/>
+      <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference Rpy.ecore#//CGIMscConditionMark/m_pParent"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//CGIMscConditionMark/m_transform"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//CGIMscConditionMark/m_polygon"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//CGIMscConditionMark/m_nNameFormat"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//CGIMscConditionMark/m_nIsNameFormat"/>
+      <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference Rpy.ecore#//CGIMscConditionMark/Compartments"/>
+    </genClasses>
+    <genClasses ecoreClass="Rpy.ecore#//CGIMscExecutionOccurrence">
+      <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference Rpy.ecore#//CGIMscExecutionOccurrence/m_pModelObject"/>
+      <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference Rpy.ecore#//CGIMscExecutionOccurrence/m_pParent"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//CGIMscExecutionOccurrence/m_transform"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//CGIMscExecutionOccurrence/m_position"/>
+      <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference Rpy.ecore#//CGIMscExecutionOccurrence/m_pInheritsFrom"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//CGIMscExecutionOccurrence/m_nInheritanceMask"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//CGIMscExecutionOccurrence/m_SubType"/>
+      <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference Rpy.ecore#//CGIMscExecutionOccurrence/m_pStartMessage"/>
+    </genClasses>
+    <genClasses ecoreClass="Rpy.ecore#//CGIMscInteractionOccurrence">
+      <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference Rpy.ecore#//CGIMscInteractionOccurrence/m_pModelObject"/>
+      <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference Rpy.ecore#//CGIMscInteractionOccurrence/m_pParent"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//CGIMscInteractionOccurrence/m_transform"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//CGIMscInteractionOccurrence/m_polygon"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//CGIMscInteractionOccurrence/m_nNameFormat"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//CGIMscInteractionOccurrence/m_nIsNameFormat"/>
+      <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference Rpy.ecore#//CGIMscInteractionOccurrence/Compartments"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//CGIMscInteractionOccurrence/properties"/>
+    </genClasses>
+    <genClasses ecoreClass="Rpy.ecore#//CGIMscInteractionOperand">
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//CGIMscInteractionOperand/properties"/>
+      <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference Rpy.ecore#//CGIMscInteractionOperand/m_pModelObject"/>
+      <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference Rpy.ecore#//CGIMscInteractionOperand/m_pParent"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//CGIMscInteractionOperand/m_AdditionalLabel"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//CGIMscInteractionOperand/m_polygon"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//CGIMscInteractionOperand/m_nNameFormat"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//CGIMscInteractionOperand/m_nIsNameFormat"/>
+      <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference Rpy.ecore#//CGIMscInteractionOperand/Compartments"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//CGIMscInteractionOperand/m_transform"/>
+    </genClasses>
+    <genClasses ecoreClass="Rpy.ecore#//CGIMscInteractionOperator">
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//CGIMscInteractionOperator/m_operatorType"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//CGIMscInteractionOperator/properties"/>
+      <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference Rpy.ecore#//CGIMscInteractionOperator/m_pModelObject"/>
+      <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference Rpy.ecore#//CGIMscInteractionOperator/m_pParent"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//CGIMscInteractionOperator/m_transform"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//CGIMscInteractionOperator/m_polygon"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//CGIMscInteractionOperator/m_nNameFormat"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//CGIMscInteractionOperator/m_nIsNameFormat"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//CGIMscInteractionOperator/frameset"/>
+      <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference Rpy.ecore#//CGIMscInteractionOperator/Compartments"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//CGIMscInteractionOperator/m_bFramesetModified"/>
+    </genClasses>
+    <genClasses ecoreClass="Rpy.ecore#//CGIMscMessage">
+      <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference Rpy.ecore#//CGIMscMessage/m_pModelObject"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//CGIMscMessage/m_pParent"/>
+      <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference Rpy.ecore#//CGIMscMessage/m_pSource"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//CGIMscMessage/m_sourceType"/>
+      <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference Rpy.ecore#//CGIMscMessage/m_pTarget"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//CGIMscMessage/m_targetType"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//CGIMscMessage/m_direction"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//CGIMscMessage/m_rpn"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//CGIMscMessage/m_anglePoint1"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//CGIMscMessage/m_anglePoint2"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//CGIMscMessage/m_line_style"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//CGIMscMessage/m_SourcePort"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//CGIMscMessage/m_TargetPort"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//CGIMscMessage/m_bLeft"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//CGIMscMessage/m_arrow"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//CGIMscMessage/properties"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//CGIMscMessage/myState"/>
+      <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference Rpy.ecore#//CGIMscMessage/m_pSourceExec"/>
+      <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference Rpy.ecore#//CGIMscMessage/m_pTargetExec"/>
+    </genClasses>
+    <genClasses ecoreClass="Rpy.ecore#//CGIObjectInstance">
+      <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference Rpy.ecore#//CGIObjectInstance/m_pModelObject"/>
+      <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference Rpy.ecore#//CGIObjectInstance/m_pParent"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//CGIObjectInstance/m_transform"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//CGIObjectInstance/m_AdditionalLabel"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//CGIObjectInstance/m_polygon"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//CGIObjectInstance/m_nNameFormat"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//CGIObjectInstance/m_nIsNameFormat"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//CGIObjectInstance/frameset"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//CGIObjectInstance/Compartments"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//CGIObjectInstance/m_multiplicity"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//CGIObjectInstance/properties"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//CGIObjectInstance/Operations"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//CGIObjectInstance/Attrs"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//CGIObjectInstance/m_bFramesetModified"/>
+      <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference Rpy.ecore#//CGIObjectInstance/m_pImageViewData"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//CGIObjectInstance/m_bIsMisplaced"/>
+    </genClasses>
+    <genClasses ecoreClass="Rpy.ecore#//CGIObjectLink">
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//CGIObjectLink/properties"/>
+      <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference Rpy.ecore#//CGIObjectLink/m_pModelObject"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//CGIObjectLink/m_pParent"/>
+      <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference Rpy.ecore#//CGIObjectLink/m_pSource"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//CGIObjectLink/m_sourceType"/>
+      <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference Rpy.ecore#//CGIObjectLink/m_pTarget"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//CGIObjectLink/m_targetType"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//CGIObjectLink/m_direction"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//CGIObjectLink/m_rpn"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//CGIObjectLink/m_arrow"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//CGIObjectLink/m_anglePoint1"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//CGIObjectLink/m_anglePoint2"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//CGIObjectLink/m_line_style"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//CGIObjectLink/m_SourcePort"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//CGIObjectLink/m_TargetPort"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//CGIObjectLink/m_bShowSourceMultiplicity"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//CGIObjectLink/m_bShowSourceRole"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//CGIObjectLink/m_bShowTargetMultiplicity"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//CGIObjectLink/m_bShowTargetRole"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//CGIObjectLink/m_bShowLinkName"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//CGIObjectLink/m_sourceRole"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//CGIObjectLink/m_targetRole"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//CGIObjectLink/m_sourceMultiplicity"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//CGIObjectLink/m_targetMultiplicity"/>
+    </genClasses>
+    <genClasses ecoreClass="Rpy.ecore#//CGIPackage">
+      <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference Rpy.ecore#//CGIPackage/m_pModelObject"/>
+      <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference Rpy.ecore#//CGIPackage/m_pParent"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//CGIPackage/m_transform"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//CGIPackage/m_polygon"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//CGIPackage/m_nNameFormat"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//CGIPackage/m_nIsNameFormat"/>
+      <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference Rpy.ecore#//CGIPackage/Compartments"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//CGIPackage/properties"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//CGIPackage/m_color"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//CGIPackage/m_lineWidth"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//CGIPackage/m_AdditionalLabel"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//CGIPackage/frameset"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//CGIPackage/m_bIsStructured"/>
+    </genClasses>
+    <genClasses ecoreClass="Rpy.ecore#//CGIPartition">
+      <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference Rpy.ecore#//CGIPartition/m_pModelObject"/>
+      <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference Rpy.ecore#//CGIPartition/m_pParent"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//CGIPartition/m_polygon"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//CGIPartition/m_nNameFormat"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//CGIPartition/m_nIsNameFormat"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//CGIPartition/frameset"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//CGIPartition/m_AdditionalLabel"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//CGIPartition/properties"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//CGIPartition/Compartments"/>
+    </genClasses>
+    <genClasses ecoreClass="Rpy.ecore#//CGIPortConnector">
+      <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference Rpy.ecore#//CGIPortConnector/m_pModelObject"/>
+      <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference Rpy.ecore#//CGIPortConnector/m_pParent"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//CGIPortConnector/m_transform"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//CGIPortConnector/m_AdditionalLabel"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//CGIPortConnector/m_position"/>
+      <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference Rpy.ecore#//CGIPortConnector/m_pInheritsFrom"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//CGIPortConnector/m_nInheritanceMask"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//CGIPortConnector/m_SubType"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//CGIPortConnector/m_providedInterfaceLabel"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//CGIPortConnector/m_requiredInterfaceLabel"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//CGIPortConnector/properties"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//CGIPortConnector/m_bVisible"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//CGIPortConnector/m_nAngle"/>
+    </genClasses>
+    <genClasses ecoreClass="Rpy.ecore#//CGIState">
+      <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference Rpy.ecore#//CGIState/m_pModelObject"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//CGIState/m_AdditionalLabel"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//CGIState/m_polygon"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//CGIState/m_nNameFormat"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//CGIState/m_nIsNameFormat"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//CGIState/nAndLineCount"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//CGIState/m_nInheritanceMask"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//CGIState/m_pDefaultComponentRelation"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//CGIState/properties"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EReference Rpy.ecore#//CGIState/m_pParent"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//CGIState/m_transform"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//CGIState/andLinePoly"/>
+      <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference Rpy.ecore#//CGIState/m_pVirtualParent"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//CGIState/m_moveAndLineTimeStamp"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//CGIState/myState"/>
+      <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference Rpy.ecore#//CGIState/m_pInheritsFrom"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//CGIState/frameset"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//CGIState/m_bFramesetModified"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//CGIState/m_bIsMisplaced"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//CGIState/m_color"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//CGIState/m_lineWidth"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//CGIState/Compartments"/>
+    </genClasses>
+    <genClasses ecoreClass="Rpy.ecore#//CGIStateChart">
+      <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference Rpy.ecore#//CGIStateChart/m_pModelObject"/>
+      <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference Rpy.ecore#//CGIStateChart/m_pRoot"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//CGIStateChart/myState"/>
+      <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference Rpy.ecore#//CGIStateChart/m_pInheritsFrom"/>
+      <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference Rpy.ecore#//CGIStateChart/DiagramList"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//CGIStateChart/properties"/>
+    </genClasses>
+    <genClasses ecoreClass="Rpy.ecore#//CGISwimlaneFrame">
+      <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference Rpy.ecore#//CGISwimlaneFrame/m_pModelObject"/>
+      <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference Rpy.ecore#//CGISwimlaneFrame/m_pParent"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//CGISwimlaneFrame/m_polygon"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//CGISwimlaneFrame/m_nNameFormat"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//CGISwimlaneFrame/m_nIsNameFormat"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//CGISwimlaneFrame/frameset"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//CGISwimlaneFrame/m_transform"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//CGISwimlaneFrame/m_bFramesetModified"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//CGISwimlaneFrame/Compartments"/>
+    </genClasses>
+    <genClasses ecoreClass="Rpy.ecore#//CGIText">
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//CGIText/m_str"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//CGIText/m_style"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//CGIText/m_color"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//CGIText/m_position"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//CGIText/m_nIdent"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//CGIText/m_bImplicitSetRectPoints"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//CGIText/m_nOrientationCtrlPt"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//CGIText/m_nVerticalSpacing"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//CGIText/m_nHorizontalSpacing"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//CGIText/m_transform"/>
+    </genClasses>
+    <genClasses ecoreClass="Rpy.ecore#//CGITextBox">
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//CGITextBox/properties"/>
+      <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference Rpy.ecore#//CGITextBox/m_pModelObject"/>
+      <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference Rpy.ecore#//CGITextBox/m_pParent"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//CGITextBox/m_transform"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//CGITextBox/m_polygon"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//CGITextBox/m_nNameFormat"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//CGITextBox/m_nIsNameFormat"/>
+      <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference Rpy.ecore#//CGITextBox/Compartments"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//CGITextBox/m_csModelObjPath"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//CGITextBox/m_csName"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//CGITextBox/m_PartsArray"/>
+    </genClasses>
+    <genClasses ecoreClass="Rpy.ecore#//CGITrans">
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//CGITrans/properties"/>
+      <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference Rpy.ecore#//CGITrans/m_pModelObject"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//CGITrans/m_pParent"/>
+      <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference Rpy.ecore#//CGITrans/m_pSource"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//CGITrans/m_sourceType"/>
+      <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference Rpy.ecore#//CGITrans/m_pTarget"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//CGITrans/m_targetType"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//CGITrans/m_direction"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//CGITrans/m_rpn"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//CGITrans/m_anglePoint1"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//CGITrans/m_anglePoint2"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//CGITrans/m_line_style"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//CGITrans/m_SourcePort"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//CGITrans/m_TargetPort"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//CGITrans/m_nInheritanceMask"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//CGITrans/m_bShowName"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//CGITrans/m_arrow"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//CGITrans/myState"/>
+      <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference Rpy.ecore#//CGITrans/m_pInheritsFrom"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//CGITrans/m_color"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//CGITrans/m_lineWidth"/>
+    </genClasses>
+    <genClasses ecoreClass="Rpy.ecore#//CollEvent">
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//CollEvent/id"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//CollEvent/first"/>
+      <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference Rpy.ecore#//CollEvent/second"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//CollEvent/objectCreation"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//CollEvent/umlDependencyID"/>
+    </genClasses>
+    <genClasses image="false" ecoreClass="Rpy.ecore#//CompartmentsType"/>
+    <genClasses image="false" ecoreClass="Rpy.ecore#//ComponentsType"/>
+    <genClasses image="false" ecoreClass="Rpy.ecore#//ConveyedType">
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//ConveyedType/lastID"/>
+    </genClasses>
+    <genClasses image="false" ecoreClass="Rpy.ecore#//DeclarativesType"/>
+    <genClasses image="false" ecoreClass="Rpy.ecore#//DefaultSubsystemType"/>
+    <genClasses image="false" ecoreClass="Rpy.ecore#//DefaultTransType"/>
+    <genClasses image="false" ecoreClass="Rpy.ecore#//DependsOnType"/>
+    <genClasses image="false" ecoreClass="Rpy.ecore#//DescriptionType"/>
+    <genClasses image="false" ecoreClass="Rpy.ecore#//ElementsType"/>
+    <genClasses image="false" ecoreClass="Rpy.ecore#//EmbededFilesType"/>
+    <genClasses image="false" ecoreClass="Rpy.ecore#//End1_Type"/>
+    <genClasses image="false" ecoreClass="Rpy.ecore#//End2_Type">
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//End2_Type/multiplicity"/>
+    </genClasses>
+    <genClasses image="false" ecoreClass="Rpy.ecore#//FilesType">
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//FilesType/modifiedTimeWeak"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//FilesType/id"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//FilesType/umlDependencyID"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//FilesType/lastID"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//FilesType/myState"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//FilesType/m_path"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//FilesType/objectCreation"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//FilesType/name"/>
+    </genClasses>
+    <genClasses image="false" ecoreClass="Rpy.ecore#//FromLinkType"/>
+    <genClasses image="false" ecoreClass="Rpy.ecore#//GraphElementsType">
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//GraphElementsType/id"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//GraphElementsType/m_drawBehavior"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//GraphElementsType/m_type"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//GraphElementsType/m_name"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//GraphElementsType/m_bIsPreferencesInitialized"/>
+    </genClasses>
+    <genClasses image="false" ecoreClass="Rpy.ecore#//GraphicChartType">
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//GraphicChartType/id"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//GraphicChartType/m_access"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//GraphicChartType/elementList"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//GraphicChartType/m_nModifyDate"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//GraphicChartType/m_currentLeftTop"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//GraphicChartType/m_modified"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//GraphicChartType/m_nCreateDate"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//GraphicChartType/m_pParent"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//GraphicChartType/m_arrowStyle"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//GraphicChartType/m_drawBehavior"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//GraphicChartType/m_currentRightBottom"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//GraphicChartType/m_creator"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//GraphicChartType/m_bScaleWithZoom"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//GraphicChartType/m_type"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//GraphicChartType/graphElements"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//GraphicChartType/m_name"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//GraphicChartType/m_fileVersion"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//GraphicChartType/m_bIsPreferencesInitialized"/>
+    </genClasses>
+    <genClasses image="false" ecoreClass="Rpy.ecore#//HyperLinksType"/>
+    <genClasses ecoreClass="Rpy.ecore#//IAcceptEventAction">
+      <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference Rpy.ecore#//IAcceptEventAction/event"/>
+    </genClasses>
+    <genClasses ecoreClass="Rpy.ecore#//IAcceptTimeEvent"/>
+    <genClasses ecoreClass="Rpy.ecore#//IAction">
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IAction/id"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IAction/myState"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IAction/body"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IAction/modifiedTimeWeak"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IAction/objectCreation"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IAction/umlDependencyID"/>
+    </genClasses>
+    <genClasses ecoreClass="Rpy.ecore#//IActivityDiagram">
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//IActivityDiagram/graphicChart"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IActivityDiagram/codeUpdateCGTime"/>
+    </genClasses>
+    <genClasses ecoreClass="Rpy.ecore#//IActivityGraph">
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IActivityGraph/lastID"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IActivityGraph/weakCGTime"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IActivityGraph/strongCGTime"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IActivityGraph/multiplicity"/>
+      <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference Rpy.ecore#//IActivityGraph/itsStateChart"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IActivityGraph/classModifier"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//IActivityGraph/States"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IActivityGraph/baseVersion"/>
+      <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference Rpy.ecore#//IActivityGraph/diagram"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//IActivityGraph/Views"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//IActivityGraph/properties"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IActivityGraph/requiremenTracabilityHandle"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//IActivityGraph/description"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//IActivityGraph/Swimlanes"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//IActivityGraph/Stereotypes"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IActivityGraph/AnalysisMode"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//IActivityGraph/Annotations"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IActivityGraph/codeUpdateCGTime"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IActivityGraph/objectCreation"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IActivityGraph/umlDependencyID"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//IActivityGraph/HyperLinks"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//IActivityGraph/Dependencies"/>
+      <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference Rpy.ecore#//IActivityGraph/theMainDiagram"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//IActivityGraph/Associations"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//IActivityGraph/Tags"/>
+    </genClasses>
+    <genClasses ecoreClass="Rpy.ecore#//IActor">
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IActor/id"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IActor/myState"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IActor/name"/>
+      <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference Rpy.ecore#//IActor/theMainDiagram"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//IActor/Dependencies"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IActor/lastID"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IActor/weakCGTime"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IActor/strongCGTime"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//IActor/Operations"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//IActor/StateCharts"/>
+      <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference Rpy.ecore#//IActor/itsStateChart"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//IActor/Associations"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IActor/classModifier"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//IActor/HyperLinks"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IActor/modifiedTimeWeak"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//IActor/Ports"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//IActor/Inheritances"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//IActor/Attrs"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IActor/requiremenTracabilityHandle"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//IActor/description"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//IActor/Annotations"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//IActor/ComponentFiles"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//IActor/properties"/>
+    </genClasses>
+    <genClasses ecoreClass="Rpy.ecore#//IAnchor">
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IAnchor/id"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IAnchor/myState"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IAnchor/name"/>
+      <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference Rpy.ecore#//IAnchor/dependsOn"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IAnchor/modifiedTimeWeak"/>
+    </genClasses>
+    <genClasses ecoreClass="Rpy.ecore#//IAnnotation">
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IAnnotation/requiremenTracabilityHandle"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//IAnnotation/description"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IAnnotation/umlDependencyID"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IAnnotation/objectCreation"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//IAnnotation/Tags"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IAnnotation/body"/>
+    </genClasses>
+    <genClasses ecoreClass="Rpy.ecore#//IArgument">
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IArgument/id"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IArgument/myState"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//IArgument/properties"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IArgument/name"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IArgument/modifiedTimeWeak"/>
+      <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference Rpy.ecore#//IArgument/typeOf"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IArgument/argumentDirection"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IArgument/defaultValue"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//IArgument/ValueSpecifications"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//IArgument/description"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IArgument/codeUpdateCGTime"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IArgument/objectCreation"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IArgument/umlDependencyID"/>
+    </genClasses>
+    <genClasses ecoreClass="Rpy.ecore#//IAssociationClass">
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IAssociationClass/isClass"/>
+      <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference Rpy.ecore#//IAssociationClass/m_end1"/>
+      <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference Rpy.ecore#//IAssociationClass/m_end2"/>
+    </genClasses>
+    <genClasses ecoreClass="Rpy.ecore#//IAssociationEnd">
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IAssociationEnd/id"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IAssociationEnd/myState"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IAssociationEnd/name"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IAssociationEnd/multiplicity"/>
+      <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference Rpy.ecore#//IAssociationEnd/otherClass"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IAssociationEnd/linkName"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IAssociationEnd/linkType"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IAssociationEnd/navigability"/>
+      <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference Rpy.ecore#//IAssociationEnd/inverse"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IAssociationEnd/modifiedTimeWeak"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//IAssociationEnd/Qualifiers"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//IAssociationEnd/Stereotypes"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IAssociationEnd/codeUpdateCGTime"/>
+      <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference Rpy.ecore#//IAssociationEnd/qualifierType"/>
+      <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference Rpy.ecore#//IAssociationEnd/m_associationClass"/>
+    </genClasses>
+    <genClasses ecoreClass="Rpy.ecore#//IAssociationEndHandle">
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IAssociationEndHandle/m2Class"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IAssociationEndHandle/filename"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IAssociationEndHandle/subsystem"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IAssociationEndHandle/class"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IAssociationEndHandle/name"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IAssociationEndHandle/id"/>
+    </genClasses>
+    <genClasses ecoreClass="Rpy.ecore#//IAssociationRole">
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IAssociationRole/id"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IAssociationRole/myState"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IAssociationRole/m_fAssocType1"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IAssociationRole/m_fAssocType2"/>
+      <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference Rpy.ecore#//IAssociationRole/m_pSource"/>
+      <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference Rpy.ecore#//IAssociationRole/m_pTarget"/>
+      <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference Rpy.ecore#//IAssociationRole/m_pFormalAssoc1"/>
+      <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference Rpy.ecore#//IAssociationRole/m_pFormalAssoc2"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IAssociationRole/name"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IAssociationRole/modifiedTimeWeak"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IAssociationRole/objectCreation"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IAssociationRole/umlDependencyID"/>
+    </genClasses>
+    <genClasses ecoreClass="Rpy.ecore#//IAttribute">
+      <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference Rpy.ecore#//IAttribute/typeOf"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IAttribute/protection"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IAttribute/static"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IAttribute/isReference"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IAttribute/isConstant"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//IAttribute/Stereotypes"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//IAttribute/ValueSpecifications"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//IAttribute/properties"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//IAttribute/description"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//IAttribute/Tags"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IAttribute/defaultValue"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//IAttribute/Dependencies"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IAttribute/lastID"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//IAttribute/Annotations"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IAttribute/requiremenTracabilityHandle"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IAttribute/codeUpdateCGTime"/>
+      <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference Rpy.ecore#//IAttribute/theMainDiagram"/>
+    </genClasses>
+    <genClasses ecoreClass="Rpy.ecore#//IBlock">
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IBlock/id"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IBlock/myState"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IBlock/name"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IBlock/objectCreation"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IBlock/umlDependencyID"/>
+      <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference Rpy.ecore#//IBlock/otherClass"/>
+      <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference Rpy.ecore#//IBlock/inverse"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IBlock/partKind"/>
+    </genClasses>
+    <genClasses ecoreClass="Rpy.ecore#//IBody">
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IBody/bodyData"/>
+    </genClasses>
+    <genClasses ecoreClass="Rpy.ecore#//IBranch">
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IBranch/id"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IBranch/name"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IBranch/modifiedTimeWeak"/>
+      <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference Rpy.ecore#//IBranch/parent"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IBranch/connectorType"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IBranch/myState"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//IBranch/Stereotypes"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IBranch/codeUpdateCGTime"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IBranch/objectCreation"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IBranch/umlDependencyID"/>
+    </genClasses>
+    <genClasses ecoreClass="Rpy.ecore#//ICallAction">
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//ICallAction/id"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//ICallAction/modifiedTimeWeak"/>
+      <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference Rpy.ecore#//ICallAction/interfaceItem"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//ICallAction/argumentNames"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//ICallAction/argumentValues"/>
+    </genClasses>
+    <genClasses ecoreClass="Rpy.ecore#//ICallOperation">
+      <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference Rpy.ecore#//ICallOperation/operation"/>
+      <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference Rpy.ecore#//ICallOperation/target"/>
+    </genClasses>
+    <genClasses ecoreClass="Rpy.ecore#//IClass">
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IClass/weakCGTime"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IClass/strongCGTime"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IClass/multiplicity"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IClass/classModifier"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//IClass/properties"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//IClass/Stereotypes"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//IClass/Operations"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//IClass/Inheritances"/>
+      <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference Rpy.ecore#//IClass/theMainDiagram"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//IClass/Attrs"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//IClass/Tags"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//IClass/Associations"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//IClass/Dependencies"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//IClass/Ports"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//IClass/ObjectLinks"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//IClass/StateCharts"/>
+      <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference Rpy.ecore#//IClass/itsStateChart"/>
+      <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference Rpy.ecore#//IClass/TriggeredOperations"/>
+      <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference Rpy.ecore#//IClass/Receptions"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//IClass/PrimitiveOperations"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//IClass/Annotations"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//IClass/description"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//IClass/Declaratives"/>
+      <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference Rpy.ecore#//IClass/AssociationElements"/>
+      <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference Rpy.ecore#//IClass/ownerHandle"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//IClass/HyperLinks"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IClass/requiremenTracabilityHandle"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//IClass/ComponentFiles"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//IClass/Links"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//IClass/Components"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//IClass/EventHandles"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//IClass/TemplateParameters"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IClass/codeUpdateCGTime"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IClass/cmheader"/>
+    </genClasses>
+    <genClasses ecoreClass="Rpy.ecore#//IClassHandle">
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IClassHandle/m2Class"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IClassHandle/id"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IClassHandle/filename"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IClassHandle/subsystem"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IClassHandle/class"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IClassHandle/name"/>
+    </genClasses>
+    <genClasses ecoreClass="Rpy.ecore#//IClassInstance">
+      <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference Rpy.ecore#//IClassInstance/inverse"/>
+    </genClasses>
+    <genClasses ecoreClass="Rpy.ecore#//IClassifier"/>
+    <genClasses ecoreClass="Rpy.ecore#//IClassifierRole">
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IClassifierRole/id"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IClassifierRole/name"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IClassifierRole/m_eRoleType"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IClassifierRole/myState"/>
+      <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference Rpy.ecore#//IClassifierRole/m_pBase"/>
+      <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference Rpy.ecore#//IClassifierRole/m_instance"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//IClassifierRole/properties"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IClassifierRole/modifiedTimeWeak"/>
+      <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference Rpy.ecore#//IClassifierRole/m_pRefSD"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IClassifierRole/codeUpdateCGTime"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//IClassifierRole/Stereotypes"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IClassifierRole/objectCreation"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IClassifierRole/umlDependencyID"/>
+    </genClasses>
+    <genClasses ecoreClass="Rpy.ecore#//ICodeGenConfigInfo">
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//ICodeGenConfigInfo/id"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//ICodeGenConfigInfo/myState"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//ICodeGenConfigInfo/name"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//ICodeGenConfigInfo/modifiedTimeWeak"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//ICodeGenConfigInfo/HyperLinks"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//ICodeGenConfigInfo/scopeType"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//ICodeGenConfigInfo/libraries"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//ICodeGenConfigInfo/additionalSources"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//ICodeGenConfigInfo/standardHeaders"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//ICodeGenConfigInfo/includePath"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//ICodeGenConfigInfo/targetMain"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//ICodeGenConfigInfo/instrumentation"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//ICodeGenConfigInfo/timeModel"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//ICodeGenConfigInfo/m_generateActors"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//ICodeGenConfigInfo/statechartImplementation"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//ICodeGenConfigInfo/initializationCode"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//ICodeGenConfigInfo/checksList"/>
+      <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference Rpy.ecore#//ICodeGenConfigInfo/ScopeElements"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//ICodeGenConfigInfo/root"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//ICodeGenConfigInfo/weakCGTime"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//ICodeGenConfigInfo/strongCGTime"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//ICodeGenConfigInfo/m_allInAnimScope"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//ICodeGenConfigInfo/m_generateUsecases"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//ICodeGenConfigInfo/Dependencies"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//ICodeGenConfigInfo/InitialInstances"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//ICodeGenConfigInfo/properties"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//ICodeGenConfigInfo/Annotations"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//ICodeGenConfigInfo/lastID"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//ICodeGenConfigInfo/description"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//ICodeGenConfigInfo/Tags"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//ICodeGenConfigInfo/cmheader"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//ICodeGenConfigInfo/requiremenTracabilityHandle"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//ICodeGenConfigInfo/Stereotypes"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//ICodeGenConfigInfo/codeUpdateCGTime"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//ICodeGenConfigInfo/AnimScopeElements"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//ICodeGenConfigInfo/EmbededFiles"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//ICodeGenConfigInfo/objectCreation"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//ICodeGenConfigInfo/umlDependencyID"/>
+    </genClasses>
+    <genClasses ecoreClass="Rpy.ecore#//ICodeGenConfigInfoHandle">
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//ICodeGenConfigInfoHandle/m2Class"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//ICodeGenConfigInfoHandle/id"/>
+    </genClasses>
+    <genClasses ecoreClass="Rpy.ecore#//ICollaboration">
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//ICollaboration/id"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//ICollaboration/ClassifierRoles"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//ICollaboration/Messages"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//ICollaboration/Annotations"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//ICollaboration/AssociationRoles"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//ICollaboration/modifiedTimeWeak"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//ICollaboration/CombinedFragments"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//ICollaboration/p_MessageHandler"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//ICollaboration/InteractionOccurrences"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//ICollaboration/ExecutionOccurrences"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//ICollaboration/objectCreation"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//ICollaboration/umlDependencyID"/>
+    </genClasses>
+    <genClasses ecoreClass="Rpy.ecore#//ICollaborationDiagram">
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//ICollaborationDiagram/m_pICollaboration"/>
+    </genClasses>
+    <genClasses ecoreClass="Rpy.ecore#//IColor">
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IColor/m_fgColor"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IColor/m_bgColor"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IColor/m_bgFlag"/>
+    </genClasses>
+    <genClasses ecoreClass="Rpy.ecore#//ICombinedFragment">
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//ICombinedFragment/id"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//ICombinedFragment/myState"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//ICombinedFragment/name"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//ICombinedFragment/modifiedTimeWeak"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//ICombinedFragment/interactionOperator"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//ICombinedFragment/InteractionOperands"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//ICombinedFragment/Stereotypes"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//ICombinedFragment/Tags"/>
+    </genClasses>
+    <genClasses ecoreClass="Rpy.ecore#//IComment">
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//IComment/HyperLinks"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//IComment/Anchors"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//IComment/Dependencies"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//IComment/Stereotypes"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IComment/lastID"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IComment/codeUpdateCGTime"/>
+      <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference Rpy.ecore#//IComment/theMainDiagram"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//IComment/properties"/>
+    </genClasses>
+    <genClasses ecoreClass="Rpy.ecore#//IComponent">
+      <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference Rpy.ecore#//IComponent/ownerHandle"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IComponent/id"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IComponent/myState"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IComponent/name"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//IComponent/Stereotypes"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IComponent/modifiedTimeWeak"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IComponent/m_buildType"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IComponent/m_libraries"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IComponent/m_additionalSources"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IComponent/m_standardHeaders"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IComponent/m_includePath"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IComponent/m_initializationCode"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//IComponent/m_folder"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//IComponent/m_configActive"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//IComponent/Configs"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//IComponent/Dependencies"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//IComponent/HandlesInMe"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//IComponent/properties"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IComponent/lastID"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//IComponent/description"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IComponent/requiremenTracabilityHandle"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//IComponent/HyperLinks"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IComponent/codeUpdateCGTime"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//IComponent/Declaratives"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//IComponent/VariationPoints"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//IComponent/SelectedVariants"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IComponent/objectCreation"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IComponent/umlDependencyID"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IComponent/cmheader"/>
+    </genClasses>
+    <genClasses ecoreClass="Rpy.ecore#//IComponentDiagram"/>
+    <genClasses ecoreClass="Rpy.ecore#//IComponentInstance"/>
+    <genClasses ecoreClass="Rpy.ecore#//IConfiguration"/>
+    <genClasses ecoreClass="Rpy.ecore#//IConnector">
+      <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference Rpy.ecore#//IConnector/parent"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IConnector/connectorType"/>
+    </genClasses>
+    <genClasses ecoreClass="Rpy.ecore#//IConstraint">
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IConstraint/id"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IConstraint/myState"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IConstraint/name"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IConstraint/modifiedTimeWeak"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//IConstraint/Stereotypes"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//IConstraint/properties"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//IConstraint/Anchors"/>
+    </genClasses>
+    <genClasses ecoreClass="Rpy.ecore#//IConstructor">
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IConstructor/id"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IConstructor/myState"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IConstructor/modifiedTimeWeak"/>
+      <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference Rpy.ecore#//IConstructor/returnType"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IConstructor/abstract"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IConstructor/final"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IConstructor/concurrency"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IConstructor/protection"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IConstructor/static"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IConstructor/constant"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//IConstructor/itsBody"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IConstructor/initializer"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//IConstructor/Args"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IConstructor/name"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//IConstructor/description"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IConstructor/requiremenTracabilityHandle"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IConstructor/codeUpdateCGTime"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//IConstructor/Tags"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IConstructor/lastID"/>
+    </genClasses>
+    <genClasses ecoreClass="Rpy.ecore#//IContextSpecification"/>
+    <genClasses ecoreClass="Rpy.ecore#//IControlledFile"/>
+    <genClasses ecoreClass="Rpy.ecore#//IDefaultDrvdTrans">
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IDefaultDrvdTrans/itsSource"/>
+      <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference Rpy.ecore#//IDefaultDrvdTrans/ofState"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IDefaultDrvdTrans/errorStatus"/>
+      <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference Rpy.ecore#//IDefaultDrvdTrans/inheritsFromHandle"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//IDefaultDrvdTrans/Annotations"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//IDefaultDrvdTrans/Stereotypes"/>
+    </genClasses>
+    <genClasses ecoreClass="Rpy.ecore#//IDependency">
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IDependency/id"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IDependency/myState"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//IDependency/properties"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IDependency/name"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//IDependency/Stereotypes"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IDependency/modifiedTimeWeak"/>
+      <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference Rpy.ecore#//IDependency/dependsOn"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//IDependency/Tags"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//IDependency/Annotations"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//IDependency/Dependencies"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//IDependency/description"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IDependency/requiremenTracabilityHandle"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IDependency/codeUpdateCGTime"/>
+    </genClasses>
+    <genClasses ecoreClass="Rpy.ecore#//IDeploymentDiagram"/>
+    <genClasses ecoreClass="Rpy.ecore#//IDescription">
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IDescription/textRTF"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IDescription/text"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//IDescription/Hyperlinks"/>
+    </genClasses>
+    <genClasses ecoreClass="Rpy.ecore#//IDestructor">
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IDestructor/id"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IDestructor/name"/>
+      <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference Rpy.ecore#//IDestructor/Args"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IDestructor/abstract"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IDestructor/final"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IDestructor/concurrency"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IDestructor/protection"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IDestructor/static"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IDestructor/constant"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//IDestructor/itsBody"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IDestructor/modifiedTimeWeak"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//IDestructor/description"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//IDestructor/properties"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IDestructor/myState"/>
+      <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference Rpy.ecore#//IDestructor/returnType"/>
+    </genClasses>
+    <genClasses ecoreClass="Rpy.ecore#//IDiagram">
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//IDiagram/properties"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//IDiagram/Stereotypes"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IDiagram/modifiedTimeWeak"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//IDiagram/graphicChart"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//IDiagram/Annotations"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IDiagram/codeUpdateCGTime"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//IDiagram/HyperLinks"/>
+    </genClasses>
+    <genClasses ecoreClass="Rpy.ecore#//IEmbededFile">
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IEmbededFile/id"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IEmbededFile/name"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IEmbededFile/modifiedTimeWeak"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IEmbededFile/MayNeedToRelocate"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IEmbededFile/LastKnownFullPath"/>
+      <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference Rpy.ecore#//IEmbededFile/Stereotypes"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//IEmbededFile/Tags"/>
+    </genClasses>
+    <genClasses ecoreClass="Rpy.ecore#//IEnumerationLiteral">
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IEnumerationLiteral/id"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IEnumerationLiteral/name"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IEnumerationLiteral/modifiedTimeWeak"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IEnumerationLiteral/value"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//IEnumerationLiteral/properties"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//IEnumerationLiteral/Tags"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IEnumerationLiteral/codeUpdateCGTime"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//IEnumerationLiteral/description"/>
+    </genClasses>
+    <genClasses ecoreClass="Rpy.ecore#//IEvent">
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IEvent/id"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IEvent/myState"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IEvent/name"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IEvent/virtual"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IEvent/modifiedTimeWeak"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//IEvent/Args"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//IEvent/Stereotypes"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//IEvent/description"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//IEvent/properties"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//IEvent/Dependencies"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//IEvent/Tags"/>
+      <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference Rpy.ecore#//IEvent/superEvent"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IEvent/requiremenTracabilityHandle"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//IEvent/Annotations"/>
+    </genClasses>
+    <genClasses ecoreClass="Rpy.ecore#//IEventHandle">
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IEventHandle/m2Class"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IEventHandle/filename"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IEventHandle/subsystem"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IEventHandle/class"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IEventHandle/name"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IEventHandle/id"/>
+    </genClasses>
+    <genClasses ecoreClass="Rpy.ecore#//IEventReception"/>
+    <genClasses ecoreClass="Rpy.ecore#//IExecutionOccurrence">
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IExecutionOccurrence/id"/>
+      <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference Rpy.ecore#//IExecutionOccurrence/m_startMessage"/>
+      <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference Rpy.ecore#//IExecutionOccurrence/m_endMessage"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IExecutionOccurrence/m_length"/>
+    </genClasses>
+    <genClasses ecoreClass="Rpy.ecore#//IExternalHyperlink">
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IExternalHyperlink/target"/>
+    </genClasses>
+    <genClasses ecoreClass="Rpy.ecore#//IFile">
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//IFile/properties"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IFile/m_type"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//IFile/Fragments"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//IFile/description"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//IFile/Dependencies"/>
+    </genClasses>
+    <genClasses ecoreClass="Rpy.ecore#//IFileFragment">
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IFileFragment/id"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IFileFragment/name"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IFileFragment/m_type"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IFileFragment/m_text"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IFileFragment/m_startRow"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IFileFragment/m_startCol"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//IFileFragment/description"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IFileFragment/m_startCol_Short"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IFileFragment/m_endRow"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IFileFragment/m_endCol_Short"/>
+      <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference Rpy.ecore#//IFileFragment/m_subject"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//IFileFragment/Tags"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//IFileFragment/Fragments"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IFileFragment/modifiedTimeWeak"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IFileFragment/objectCreation"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IFileFragment/umlDependencyID"/>
+    </genClasses>
+    <genClasses ecoreClass="Rpy.ecore#//IFlow"/>
+    <genClasses ecoreClass="Rpy.ecore#//IFlowItem"/>
+    <genClasses ecoreClass="Rpy.ecore#//IFlowchart"/>
+    <genClasses ecoreClass="Rpy.ecore#//IFolder">
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//IFolder/Elements"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//IFolder/Files"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IFolder/requiremenTracabilityHandle"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IFolder/codeUpdateCGTime"/>
+    </genClasses>
+    <genClasses ecoreClass="Rpy.ecore#//IFork">
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IFork/id"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IFork/myState"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IFork/name"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IFork/modifiedTimeWeak"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//IFork/description"/>
+      <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference Rpy.ecore#//IFork/parent"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IFork/connectorType"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IFork/objectCreation"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IFork/umlDependencyID"/>
+    </genClasses>
+    <genClasses ecoreClass="Rpy.ecore#//IGeneralization">
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IGeneralization/id"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IGeneralization/modifiedTimeWeak"/>
+      <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference Rpy.ecore#//IGeneralization/dependsOn"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IGeneralization/inheritanceType"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IGeneralization/isVirtual"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//IGeneralization/Stereotypes"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//IGeneralization/description"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IGeneralization/objectCreation"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IGeneralization/umlDependencyID"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//IGeneralization/ti"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//IGeneralization/Annotations"/>
+    </genClasses>
+    <genClasses ecoreClass="Rpy.ecore#//IGuard">
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IGuard/id"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IGuard/body"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IGuard/modifiedTimeWeak"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IGuard/objectCreation"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IGuard/umlDependencyID"/>
+    </genClasses>
+    <genClasses ecoreClass="Rpy.ecore#//IHandleWithData">
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IHandleWithData/m2Class"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IHandleWithData/filename"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IHandleWithData/subsystem"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IHandleWithData/class"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IHandleWithData/name"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IHandleWithData/id"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IHandleWithData/data"/>
+    </genClasses>
+    <genClasses ecoreClass="Rpy.ecore#//IHistoryConnector">
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IHistoryConnector/id"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IHistoryConnector/name"/>
+      <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference Rpy.ecore#//IHistoryConnector/parent"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IHistoryConnector/connectorType"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IHistoryConnector/myState"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IHistoryConnector/modifiedTimeWeak"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IHistoryConnector/objectCreation"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IHistoryConnector/umlDependencyID"/>
+    </genClasses>
+    <genClasses ecoreClass="Rpy.ecore#//IHyperLink"/>
+    <genClasses ecoreClass="Rpy.ecore#//IInformationFlow">
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IInformationFlow/id"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IInformationFlow/myState"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IInformationFlow/name"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//IInformationFlow/Conveyed"/>
+      <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference Rpy.ecore#//IInformationFlow/end1_"/>
+      <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference Rpy.ecore#//IInformationFlow/end2_"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IInformationFlow/direction_"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IInformationFlow/modifiedTimeWeak"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//IInformationFlow/description"/>
+      <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference Rpy.ecore#//IInformationFlow/end1ObjectPort_"/>
+      <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference Rpy.ecore#//IInformationFlow/end2ObjectPort_"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IInformationFlow/requiremenTracabilityHandle"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//IInformationFlow/HyperLinks"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//IInformationFlow/Dependencies"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//IInformationFlow/Annotations"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IInformationFlow/objectCreation"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IInformationFlow/umlDependencyID"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//IInformationFlow/Stereotypes"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//IInformationFlow/Tags"/>
+    </genClasses>
+    <genClasses ecoreClass="Rpy.ecore#//IInformationItem">
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IInformationItem/id"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IInformationItem/myState"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IInformationItem/name"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IInformationItem/requiremenTracabilityHandle"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IInformationItem/modifiedTimeWeak"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//IInformationItem/description"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//IInformationItem/Represented"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//IInformationItem/Annotations"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IInformationItem/objectCreation"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IInformationItem/umlDependencyID"/>
+    </genClasses>
+    <genClasses ecoreClass="Rpy.ecore#//IInstance">
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IInstance/modifiedTimeWeak"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IInstance/id"/>
+      <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference Rpy.ecore#//IInstance/inverse"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IInstance/myState"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IInstance/name"/>
+    </genClasses>
+    <genClasses ecoreClass="Rpy.ecore#//IInstanceSlot"/>
+    <genClasses ecoreClass="Rpy.ecore#//IInstanceSpecification"/>
+    <genClasses ecoreClass="Rpy.ecore#//IInstanceValue">
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IInstanceValue/id"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IInstanceValue/modifiedTimeWeak"/>
+      <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference Rpy.ecore#//IInstanceValue/value"/>
+    </genClasses>
+    <genClasses ecoreClass="Rpy.ecore#//IInteractionOccurrence">
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IInteractionOccurrence/id"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IInteractionOccurrence/name"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IInteractionOccurrence/modifiedTimeWeak"/>
+      <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference Rpy.ecore#//IInteractionOccurrence/m_pRefSD"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//IInteractionOccurrence/Stereotypes"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//IInteractionOccurrence/Tags"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IInteractionOccurrence/objectCreation"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IInteractionOccurrence/umlDependencyID"/>
+    </genClasses>
+    <genClasses ecoreClass="Rpy.ecore#//IInteractionOperand">
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IInteractionOperand/myState"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IInteractionOperand/name"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IInteractionOperand/interactionConstraint"/>
+    </genClasses>
+    <genClasses ecoreClass="Rpy.ecore#//IInteractionOperator"/>
+    <genClasses ecoreClass="Rpy.ecore#//IInterfaceItem"/>
+    <genClasses ecoreClass="Rpy.ecore#//IInterfaceItemTrigger">
+      <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference Rpy.ecore#//IInterfaceItemTrigger/itsInterfaceItem"/>
+      <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference Rpy.ecore#//IInterfaceItemTrigger/inheritsFromHandle"/>
+    </genClasses>
+    <genClasses ecoreClass="Rpy.ecore#//IInternalHyperlink">
+      <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference Rpy.ecore#//IInternalHyperlink/target"/>
+    </genClasses>
+    <genClasses ecoreClass="Rpy.ecore#//ILabel">
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//ILabel/id"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EReference Rpy.ecore#//ILabel/itsTrigger"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EReference Rpy.ecore#//ILabel/itsAction"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EReference Rpy.ecore#//ILabel/itsGuard"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//ILabel/modifiedTimeWeak"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//ILabel/myState"/>
+      <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference Rpy.ecore#//ILabel/inheritsFromHandle"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//ILabel/codeUpdateCGTime"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//ILabel/objectCreation"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//ILabel/umlDependencyID"/>
+    </genClasses>
+    <genClasses ecoreClass="Rpy.ecore#//ILink">
+      <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference Rpy.ecore#//ILink/inverse"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//ILink/linkName"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//ILink/linkType"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//ILink/myState"/>
+    </genClasses>
+    <genClasses ecoreClass="Rpy.ecore#//ILinkInstance">
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//ILinkInstance/id"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//ILinkInstance/name"/>
+      <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference Rpy.ecore#//ILinkInstance/toLink"/>
+      <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference Rpy.ecore#//ILinkInstance/fromLink"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//ILinkInstance/instantiates"/>
+    </genClasses>
+    <genClasses ecoreClass="Rpy.ecore#//ILiteralSpecification">
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//ILiteralSpecification/id"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//ILiteralSpecification/modifiedTimeWeak"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//ILiteralSpecification/value"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//ILiteralSpecification/myState"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//ILiteralSpecification/name"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//ILiteralSpecification/codeUpdateCGTime"/>
+    </genClasses>
+    <genClasses ecoreClass="Rpy.ecore#//IMHyperLink">
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IMHyperLink/id"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//IMHyperLink/properties"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IMHyperLink/modifiedTimeWeak"/>
+      <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference Rpy.ecore#//IMHyperLink/dependsOn"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IMHyperLink/linkDispName"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IMHyperLink/linkType"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IMHyperLink/isConfigurationFileHyperLink"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IMHyperLink/linkTarget"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//IMHyperLink/description"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IMHyperLink/requiremenTracabilityHandle"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IMHyperLink/objectCreation"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IMHyperLink/umlDependencyID"/>
+    </genClasses>
+    <genClasses ecoreClass="Rpy.ecore#//IMSC">
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IMSC/id"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IMSC/myState"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//IMSC/properties"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IMSC/name"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IMSC/lastModifiedTime"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//IMSC/graphicChart"/>
+      <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference Rpy.ecore#//IMSC/defaultSubsystem"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//IMSC/m_pICollaboration"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IMSC/cmheader"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IMSC/lastID"/>
+      <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference Rpy.ecore#//IMSC/ownerHandle"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//IMSC/description"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IMSC/modifiedTimeWeak"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//IMSC/Stereotypes"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//IMSC/Tags"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IMSC/requiremenTracabilityHandle"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//IMSC/Annotations"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IMSC/objectCreation"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IMSC/umlDependencyID"/>
+    </genClasses>
+    <genClasses ecoreClass="Rpy.ecore#//IMatrixInstance">
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IMatrixInstance/id"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IMatrixInstance/myState"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IMatrixInstance/name"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IMatrixInstance/modifiedTimeWeak"/>
+      <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference Rpy.ecore#//IMatrixInstance/LayoutHandle"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//IMatrixInstance/FromScopeHandles"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//IMatrixInstance/ToScopeHandles"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//IMatrixInstance/Stereotypes"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IMatrixInstance/m_IncludeDescendants_to"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//IMatrixInstance/properties"/>
+    </genClasses>
+    <genClasses ecoreClass="Rpy.ecore#//IMatrixLayout">
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IMatrixLayout/id"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IMatrixLayout/myState"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IMatrixLayout/name"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IMatrixLayout/modifiedTimeWeak"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//IMatrixLayout/FromElementTypes"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//IMatrixLayout/ToElementTypes"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//IMatrixLayout/CellElementTypes"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//IMatrixLayout/description"/>
+    </genClasses>
+    <genClasses ecoreClass="Rpy.ecore#//IMatrixView"/>
+    <genClasses ecoreClass="Rpy.ecore#//IMessage">
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IMessage/id"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IMessage/myState"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IMessage/name"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IMessage/m_szSequence"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IMessage/m_szActualArgs"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IMessage/m_szReturnVal"/>
+      <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference Rpy.ecore#//IMessage/m_pReceiver"/>
+      <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference Rpy.ecore#//IMessage/m_pSender"/>
+      <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference Rpy.ecore#//IMessage/m_pFormalMessage"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IMessage/m_eType"/>
+      <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference Rpy.ecore#//IMessage/m_pCommunicationConnection"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IMessage/m_freeText"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IMessage/modifiedTimeWeak"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//IMessage/Stereotypes"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//IMessage/Tags"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//IMessage/properties"/>
+      <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference Rpy.ecore#//IMessage/m_targetExec"/>
+      <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference Rpy.ecore#//IMessage/m_srcExec"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IMessage/objectCreation"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IMessage/umlDependencyID"/>
+    </genClasses>
+    <genClasses ecoreClass="Rpy.ecore#//IMessagePoint"/>
+    <genClasses ecoreClass="Rpy.ecore#//IMetaLinkHandle">
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IMetaLinkHandle/m2Class"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IMetaLinkHandle/filename"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IMetaLinkHandle/subsystem"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IMetaLinkHandle/class"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IMetaLinkHandle/name"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IMetaLinkHandle/id"/>
+    </genClasses>
+    <genClasses ecoreClass="Rpy.ecore#//IModelElement">
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IModelElement/displayName"/>
+    </genClasses>
+    <genClasses ecoreClass="Rpy.ecore#//IModule">
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//IModule/Stereotypes"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//IModule/description"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//IModule/HyperLinks"/>
+      <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference Rpy.ecore#//IModule/otherClass"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//IModule/implicitClass"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//IModule/properties"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IModule/requiremenTracabilityHandle"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IModule/partKind"/>
+    </genClasses>
+    <genClasses ecoreClass="Rpy.ecore#//IMultiplicityItem">
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IMultiplicityItem/name"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IMultiplicityItem/count"/>
+    </genClasses>
+    <genClasses ecoreClass="Rpy.ecore#//INode"/>
+    <genClasses ecoreClass="Rpy.ecore#//IObjectLink">
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//IObjectLink/Stereotypes"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//IObjectLink/Tags"/>
+      <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference Rpy.ecore#//IObjectLink/toLink"/>
+      <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference Rpy.ecore#//IObjectLink/fromLink"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//IObjectLink/instantiates"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IObjectLink/end1Multiplicity"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IObjectLink/end2Multiplicity"/>
+      <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference Rpy.ecore#//IObjectLink/toPort"/>
+      <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference Rpy.ecore#//IObjectLink/fromPort"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//IObjectLink/description"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IObjectLink/requiremenTracabilityHandle"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IObjectLink/codeUpdateCGTime"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IObjectLink/objectCreation"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IObjectLink/umlDependencyID"/>
+    </genClasses>
+    <genClasses ecoreClass="Rpy.ecore#//IObjectLinkHandle">
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IObjectLinkHandle/m2Class"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IObjectLinkHandle/filename"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IObjectLinkHandle/subsystem"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IObjectLinkHandle/class"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IObjectLinkHandle/name"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IObjectLinkHandle/id"/>
+    </genClasses>
+    <genClasses ecoreClass="Rpy.ecore#//IObjectModelDiagram"/>
+    <genClasses ecoreClass="Rpy.ecore#//IObjectNode">
+      <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference Rpy.ecore#//IObjectNode/represents"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//IObjectNode/TheInState"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IObjectNode/inState"/>
+    </genClasses>
+    <genClasses ecoreClass="Rpy.ecore#//IOperation"/>
+    <genClasses ecoreClass="Rpy.ecore#//IPackage">
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IPackage/modifiedTimeWeak"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IPackage/id"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//IPackage/description"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IPackage/umlDependencyID"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IPackage/lastID"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IPackage/myState"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//IPackage/Annotations"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IPackage/objectCreation"/>
+      <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference Rpy.ecore#//IPackage/Stereotypes"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IPackage/name"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//IPackage/properties"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IPackage/cmheader"/>
+    </genClasses>
+    <genClasses ecoreClass="Rpy.ecore#//IPanelDiagram"/>
+    <genClasses ecoreClass="Rpy.ecore#//IPart">
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//IPart/Stereotypes"/>
+      <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference Rpy.ecore#//IPart/otherClass"/>
+      <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference Rpy.ecore#//IPart/inverse"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//IPart/Dependencies"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//IPart/Tags"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//IPart/initialCallAction"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IPart/codeUpdateCGTime"/>
+      <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference Rpy.ecore#//IPart/theMainDiagram"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//IPart/Slots"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//IPart/HyperLinks"/>
+    </genClasses>
+    <genClasses ecoreClass="Rpy.ecore#//IPin">
+      <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference Rpy.ecore#//IPin/m_type"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IPin/m_isParameterPin"/>
+      <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference Rpy.ecore#//IPin/m_corePin"/>
+    </genClasses>
+    <genClasses ecoreClass="Rpy.ecore#//IPort">
+      <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference Rpy.ecore#//IPort/otherClass"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IPort/behavioral"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IPort/reversed"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//IPort/Stereotypes"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//IPort/Tags"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IPort/objectCreation"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IPort/umlDependencyID"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IPort/lastID"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//IPort/Dependencies"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//IPort/Annotations"/>
+    </genClasses>
+    <genClasses ecoreClass="Rpy.ecore#//IPrimitiveOperation">
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//IPrimitiveOperation/properties"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IPrimitiveOperation/lastID"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//IPrimitiveOperation/Args"/>
+      <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference Rpy.ecore#//IPrimitiveOperation/returnType"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IPrimitiveOperation/abstract"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IPrimitiveOperation/final"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IPrimitiveOperation/concurrency"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IPrimitiveOperation/protection"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IPrimitiveOperation/static"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IPrimitiveOperation/constant"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//IPrimitiveOperation/itsBody"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//IPrimitiveOperation/Tags"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//IPrimitiveOperation/Annotations"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//IPrimitiveOperation/Dependencies"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//IPrimitiveOperation/Stereotypes"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//IPrimitiveOperation/myReturnType"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//IPrimitiveOperation/description"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IPrimitiveOperation/requiremenTracabilityHandle"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//IPrimitiveOperation/Declaratives"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//IPrimitiveOperation/itsActivityGraph"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//IPrimitiveOperation/EmbededFiles"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IPrimitiveOperation/codeUpdateCGTime"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//IPrimitiveOperation/TemplateParameters"/>
+    </genClasses>
+    <genClasses ecoreClass="Rpy.ecore#//IProfile">
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//IProfile/Declaratives"/>
+      <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference Rpy.ecore#//IProfile/defaultComposite"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IProfile/eventsBaseID"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//IProfile/Classes"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IProfile/configurationRelatedTime"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//IProfile/Tags"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//IProfile/Types"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//IProfile/MatrixLayouts"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IProfile/license"/>
+    </genClasses>
+    <genClasses ecoreClass="Rpy.ecore#//IProject">
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IProject/UserColors"/>
+      <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference Rpy.ecore#//IProject/defaultSubsystem"/>
+      <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference Rpy.ecore#//IProject/component"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//IProject/Multiplicities"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//IProject/Subsystems"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//IProject/Diagrams"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//IProject/Components"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//IProject/PanelDiagrams"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//IProject/HyperLinks"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//IProject/MSCS"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//IProject/UCDiagrams"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//IProject/CollaborationDiagrams"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//IProject/Declaratives"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//IProject/ComponentDiagrams"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IProject/unitSccProjName"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IProject/unitSccProjPath"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//IProject/Dependencies"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IProject/codeUpdateCGTime"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IProject/version"/>
+    </genClasses>
+    <genClasses ecoreClass="Rpy.ecore#//IProperty">
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IProperty/Name"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IProperty/Value"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IProperty/Type"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IProperty/ExtraTypeInfo"/>
+    </genClasses>
+    <genClasses ecoreClass="Rpy.ecore#//IPropertyContainer">
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//IPropertyContainer/Subjects"/>
+    </genClasses>
+    <genClasses ecoreClass="Rpy.ecore#//IPropertyMetaclass">
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IPropertyMetaclass/Name"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//IPropertyMetaclass/Properties"/>
+    </genClasses>
+    <genClasses ecoreClass="Rpy.ecore#//IPropertySubject">
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IPropertySubject/Name"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//IPropertySubject/Metaclasses"/>
+    </genClasses>
+    <genClasses ecoreClass="Rpy.ecore#//IReception">
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IReception/id"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IReception/myState"/>
+      <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference Rpy.ecore#//IReception/Args"/>
+      <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference Rpy.ecore#//IReception/event"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IReception/modifiedTimeWeak"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//IReception/Dependencies"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IReception/lastID"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IReception/requiremenTracabilityHandle"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//IReception/description"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IReception/objectCreation"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IReception/umlDependencyID"/>
+    </genClasses>
+    <genClasses ecoreClass="Rpy.ecore#//IReferenceActivity">
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IReferenceActivity/id"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IReferenceActivity/name"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//IReferenceActivity/Stereotypes"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IReferenceActivity/modifiedTimeWeak"/>
+      <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference Rpy.ecore#//IReferenceActivity/parent"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IReferenceActivity/stateType"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IReferenceActivity/defaultTrans"/>
+      <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference Rpy.ecore#//IReferenceActivity/swimlane"/>
+      <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference Rpy.ecore#//IReferenceActivity/referencedActivity"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IReferenceActivity/myState"/>
+    </genClasses>
+    <genClasses ecoreClass="Rpy.ecore#//IRelation"/>
+    <genClasses ecoreClass="Rpy.ecore#//IRequirement">
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IRequirement/id"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IRequirement/name"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//IRequirement/Annotations"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IRequirement/myState"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IRequirement/lastID"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//IRequirement/Stereotypes"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IRequirement/modifiedTimeWeak"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IRequirement/reqID"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//IRequirement/Dependencies"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//IRequirement/Anchors"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//IRequirement/HyperLinks"/>
+      <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference Rpy.ecore#//IRequirement/theMainDiagram"/>
+    </genClasses>
+    <genClasses ecoreClass="Rpy.ecore#//ISendAction">
+      <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference Rpy.ecore#//ISendAction/m_hTarget"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//ISendAction/m_hEvent"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//ISendAction/ArgValCount"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//ISendAction/graphElements"/>
+    </genClasses>
+    <genClasses ecoreClass="Rpy.ecore#//ISequenceDiagram"/>
+    <genClasses ecoreClass="Rpy.ecore#//ISlot">
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//ISlot/id"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//ISlot/name"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//ISlot/value"/>
+      <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference Rpy.ecore#//ISlot/definingVar"/>
+    </genClasses>
+    <genClasses ecoreClass="Rpy.ecore#//IState">
+      <genFeatures createChild="false" ecoreFeature="ecore:EReference Rpy.ecore#//IState/parent"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IState/stateType"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EReference Rpy.ecore#//IState/defaultTrans"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//IState/entryAction"/>
+      <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference Rpy.ecore#//IState/inheritsFromHandle"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//IState/exitAction"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//IState/nestedStateChart"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IState/requiremenTracabilityHandle"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//IState/Annotations"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//IState/Dependencies"/>
+      <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference Rpy.ecore#//IState/theMainDiagram"/>
+      <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference Rpy.ecore#//IState/swimlane"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IState/codeUpdateCGTime"/>
+    </genClasses>
+    <genClasses ecoreClass="Rpy.ecore#//IStateChart">
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//IStateChart/States"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IStateChart/baseVersion"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//IStateChart/diagram"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//IStateChart/Views"/>
+      <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference Rpy.ecore#//IStateChart/inheritsFromHandle"/>
+    </genClasses>
+    <genClasses ecoreClass="Rpy.ecore#//IStateChartDiagram"/>
+    <genClasses ecoreClass="Rpy.ecore#//IStateVertex">
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IStateVertex/modifiedTimeWeak"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IStateVertex/id"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//IStateVertex/description"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IStateVertex/umlDependencyID"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IStateVertex/myState"/>
+      <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference Rpy.ecore#//IStateVertex/Stereotypes"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IStateVertex/objectCreation"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IStateVertex/name"/>
+    </genClasses>
+    <genClasses ecoreClass="Rpy.ecore#//IStereotype">
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//IStereotype/properties"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IStereotype/m2Classes"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IStereotype/newTerm"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//IStereotype/description"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//IStereotype/Tags"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IStereotype/lastID"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//IStereotype/Inheritances"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//IStereotype/Dependencies"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IStereotype/requiremenTracabilityHandle"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IStereotype/objectCreation"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IStereotype/umlDependencyID"/>
+      <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference Rpy.ecore#//IStereotype/theMainDiagram"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//IStereotype/Annotations"/>
+    </genClasses>
+    <genClasses ecoreClass="Rpy.ecore#//IStructureDiagram"/>
+    <genClasses ecoreClass="Rpy.ecore#//ISubsystem">
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//ISubsystem/id"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//ISubsystem/myState"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//ISubsystem/name"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//ISubsystem/modifiedTimeWeak"/>
+      <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference Rpy.ecore#//ISubsystem/defaultComposite"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//ISubsystem/eventsBaseID"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//ISubsystem/Classes"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//ISubsystem/configurationRelatedTime"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//ISubsystem/properties"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//ISubsystem/lastID"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//ISubsystem/cmheader"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//ISubsystem/Declaratives"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//ISubsystem/Types"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//ISubsystem/Stereotypes"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//ISubsystem/PredefinedTypes"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//ISubsystem/Events"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//ISubsystem/Annotations"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//ISubsystem/UseCases"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//ISubsystem/Actors"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//ISubsystem/description"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//ISubsystem/Tags"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//ISubsystem/Dependencies"/>
+      <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference Rpy.ecore#//ISubsystem/ownerHandle"/>
+      <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference Rpy.ecore#//ISubsystem/theMainDiagram"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//ISubsystem/HyperLinks"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//ISubsystem/TableLayouts"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//ISubsystem/MatrixLayouts"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//ISubsystem/TableInstances"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//ISubsystem/MatrixInstances"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//ISubsystem/EmbededFiles"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//ISubsystem/ComponentFiles"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//ISubsystem/requiremenTracabilityHandle"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//ISubsystem/codeUpdateCGTime"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//ISubsystem/objectCreation"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//ISubsystem/umlDependencyID"/>
+      <genFeatures children="true" createChild="true" propertySortChoices="true" ecoreFeature="ecore:EReference Rpy.ecore#//ISubsystem/AssociationElements"/>
+    </genClasses>
+    <genClasses ecoreClass="Rpy.ecore#//ISwimlane">
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//ISwimlane/id"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//ISwimlane/name"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//ISwimlane/modifiedTimeWeak"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//ISwimlane/description"/>
+      <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference Rpy.ecore#//ISwimlane/represents"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//ISwimlane/myState"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//ISwimlane/objectCreation"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//ISwimlane/umlDependencyID"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//ISwimlane/Swimlanes"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//ISwimlane/Stereotypes"/>
+    </genClasses>
+    <genClasses ecoreClass="Rpy.ecore#//ISysMLPort">
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//ISysMLPort/Dependencies"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//ISysMLPort/Stereotypes"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//ISysMLPort/Tags"/>
+      <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference Rpy.ecore#//ISysMLPort/otherClass"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//ISysMLPort/direction"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//ISysMLPort/description"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//ISysMLPort/lastID"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//ISysMLPort/reversed"/>
+    </genClasses>
+    <genClasses ecoreClass="Rpy.ecore#//ITableInstance">
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//ITableInstance/id"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//ITableInstance/myState"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//ITableInstance/properties"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//ITableInstance/name"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//ITableInstance/modifiedTimeWeak"/>
+      <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference Rpy.ecore#//ITableInstance/LayoutHandle"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//ITableInstance/ScopeHandles"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//ITableInstance/Stereotypes"/>
+    </genClasses>
+    <genClasses ecoreClass="Rpy.ecore#//ITableLayout">
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//ITableLayout/properties"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//ITableLayout/Stereotypes"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//ITableLayout/Tags"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//ITableLayout/TableElementTypes"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//ITableLayout/DataColumns"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//ITableLayout/description"/>
+    </genClasses>
+    <genClasses ecoreClass="Rpy.ecore#//ITableView"/>
+    <genClasses ecoreClass="Rpy.ecore#//ITag">
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//ITag/id"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//ITag/name"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//ITag/modifiedTimeWeak"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//ITag/ValueSpecifications"/>
+      <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference Rpy.ecore#//ITag/typeOf"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//ITag/myState"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//ITag/multiplicity"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//ITag/properties"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//ITag/description"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//ITag/HyperLinks"/>
+      <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference Rpy.ecore#//ITag/base"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//ITag/metaClass"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//ITag/defaultValue"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//ITag/codeUpdateCGTime"/>
+    </genClasses>
+    <genClasses ecoreClass="Rpy.ecore#//ITemplateInst">
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//ITemplateInst/id"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//ITemplateInst/modifiedTimeWeak"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//ITemplateInst/TemplateInstParams"/>
+      <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference Rpy.ecore#//ITemplateInst/ofTemplate"/>
+    </genClasses>
+    <genClasses ecoreClass="Rpy.ecore#//ITemplateInstParam">
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//ITemplateInstParam/id"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//ITemplateInstParam/name"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//ITemplateInstParam/modifiedTimeWeak"/>
+      <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference Rpy.ecore#//ITemplateInstParam/value"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//ITemplateInstParam/argValue"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//ITemplateInstParam/onTheFlyValue"/>
+    </genClasses>
+    <genClasses ecoreClass="Rpy.ecore#//ITemplateInstantiation"/>
+    <genClasses ecoreClass="Rpy.ecore#//ITemplateInstantiationParameter"/>
+    <genClasses ecoreClass="Rpy.ecore#//ITemplateParameter">
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//ITemplateParameter/id"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//ITemplateParameter/name"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//ITemplateParameter/myState"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//ITemplateParameter/modifiedTimeWeak"/>
+      <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference Rpy.ecore#//ITemplateParameter/representative"/>
+    </genClasses>
+    <genClasses ecoreClass="Rpy.ecore#//ITimeEvent">
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//ITimeEvent/id"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//ITimeEvent/myState"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//ITimeEvent/name"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//ITimeEvent/modifiedTimeWeak"/>
+      <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference Rpy.ecore#//ITimeEvent/parent"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//ITimeEvent/stateType"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//ITimeEvent/defaultTrans"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//ITimeEvent/durationTime"/>
+      <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference Rpy.ecore#//ITimeEvent/swimlane"/>
+    </genClasses>
+    <genClasses ecoreClass="Rpy.ecore#//ITimeout">
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//ITimeout/time"/>
+      <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference Rpy.ecore#//ITimeout/inheritsFromHandle"/>
+    </genClasses>
+    <genClasses ecoreClass="Rpy.ecore#//ITransition">
+      <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference Rpy.ecore#//ITransition/itsSource"/>
+      <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference Rpy.ecore#//ITransition/inheritsFromHandle"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//ITransition/Dependencies"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//ITransition/Stereotypes"/>
+    </genClasses>
+    <genClasses ecoreClass="Rpy.ecore#//ITrigger"/>
+    <genClasses ecoreClass="Rpy.ecore#//ITriggered">
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//ITriggered/id"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//ITriggered/name"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//ITriggered/Args"/>
+      <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference Rpy.ecore#//ITriggered/returnType"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//ITriggered/abstract"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//ITriggered/final"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//ITriggered/concurrency"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//ITriggered/protection"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//ITriggered/modifiedTimeWeak"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//ITriggered/myState"/>
+    </genClasses>
+    <genClasses ecoreClass="Rpy.ecore#//IType">
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IType/lastID"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//IType/Literals"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IType/kind"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//IType/properties"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//IType/description"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IType/declaration"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//IType/Stereotypes"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//IType/Attrs"/>
+      <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference Rpy.ecore#//IType/AssociationElements"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//IType/Tags"/>
+      <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference Rpy.ecore#//IType/typedefBaseType"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IType/typedefMultiplicity"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IType/typedefIsOrdered"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IType/typedefIsReference"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IType/typedefIsConstant"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IType/requiremenTracabilityHandle"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IType/codeUpdateCGTime"/>
+      <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference Rpy.ecore#//IType/theMainDiagram"/>
+    </genClasses>
+    <genClasses ecoreClass="Rpy.ecore#//IUCDiagram">
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//IUCDiagram/properties"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//IUCDiagram/graphicChart"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IUCDiagram/modifiedTimeWeak"/>
+    </genClasses>
+    <genClasses ecoreClass="Rpy.ecore#//IUnit"/>
+    <genClasses ecoreClass="Rpy.ecore#//IUseCase">
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IUseCase/id"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IUseCase/myState"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IUseCase/name"/>
+      <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference Rpy.ecore#//IUseCase/theMainDiagram"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//IUseCase/HyperLinks"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IUseCase/weakCGTime"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IUseCase/strongCGTime"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IUseCase/classModifier"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//IUseCase/description"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//IUseCase/Inheritances"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//IUseCase/Associations"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//IUseCase/UseCaseStereoTypes"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IUseCase/EntryPoints"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//IUseCase/Dependencies"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IUseCase/lastID"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//IUseCase/Diagrams"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IUseCase/modifiedTimeWeak"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IUseCase/requiremenTracabilityHandle"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IUseCase/cmheader"/>
+      <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference Rpy.ecore#//IUseCase/ownerHandle"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//IUseCase/Declaratives"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//IUseCase/Operations"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//IUseCase/StateCharts"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EReference Rpy.ecore#//IUseCase/itsStateChart"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//IUseCase/Attrs"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//IUseCase/Annotations"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//IUseCase/EmbededFiles"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IUseCase/objectCreation"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IUseCase/umlDependencyID"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//IUseCase/ObjectLinks"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//IUseCase/properties"/>
+    </genClasses>
+    <genClasses ecoreClass="Rpy.ecore#//IUseCaseDiagram"/>
+    <genClasses ecoreClass="Rpy.ecore#//IUseCaseStereoType">
+      <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference Rpy.ecore#//IUseCaseStereoType/useCase"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IUseCaseStereoType/stereoType"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IUseCaseStereoType/entryPoint"/>
+    </genClasses>
+    <genClasses ecoreClass="Rpy.ecore#//IValueSpecification"/>
+    <genClasses ecoreClass="Rpy.ecore#//IVariable">
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//IVariable/isOrdered"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//IVariable/myTypeOf"/>
+    </genClasses>
+    <genClasses image="false" ecoreClass="Rpy.ecore#//InverseType"/>
+    <genClasses image="false" ecoreClass="Rpy.ecore#//ItemsType"/>
+    <genClasses image="false" ecoreClass="Rpy.ecore#//ItsLabelType"/>
+    <genClasses image="false" ecoreClass="Rpy.ecore#//ItsStateChartType"/>
+    <genClasses image="false" ecoreClass="Rpy.ecore#//ItsTargetType"/>
+    <genClasses image="false" ecoreClass="Rpy.ecore#//ItsTriggerType">
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//ItsTriggerType/modifiedTimeWeak"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//ItsTriggerType/id"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//ItsTriggerType/info"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//ItsTriggerType/umlDependencyID"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//ItsTriggerType/myState"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//ItsTriggerType/objectCreation"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//ItsTriggerType/body"/>
+    </genClasses>
+    <genClasses image="false" ecoreClass="Rpy.ecore#//LinksType">
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//LinksType/id"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//LinksType/multiplicity"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//LinksType/name"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//LinksType/otherClass"/>
+    </genClasses>
+    <genClasses image="false" ecoreClass="Rpy.ecore#//M_hTargetType">
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//M_hTargetType/requiremenTracabilityHandle"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//M_hTargetType/description"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//M_hTargetType/properties"/>
+    </genClasses>
+    <genClasses image="false" ecoreClass="Rpy.ecore#//M_pBaseType"/>
+    <genClasses image="false" ecoreClass="Rpy.ecore#//M_pFormalMessageType"/>
+    <genClasses image="false" ecoreClass="Rpy.ecore#//M_pModelObjectType"/>
+    <genClasses image="false" ecoreClass="Rpy.ecore#//M_pRootType"/>
+    <genClasses image="false" ecoreClass="Rpy.ecore#//M_subjectType">
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//M_subjectType/umlDependencyID"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//M_subjectType/objectCreation"/>
+    </genClasses>
+    <genClasses image="false" ecoreClass="Rpy.ecore#//MatrixInstancesType"/>
+    <genClasses image="false" ecoreClass="Rpy.ecore#//NestedStateChartType">
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//NestedStateChartType/defNumber"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//NestedStateChartType/graphicChart"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//NestedStateChartType/lastModifiedTime"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//NestedStateChartType/Transitions"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//NestedStateChartType/Connectors"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//NestedStateChartType/version"/>
+    </genClasses>
+    <genClasses image="false" ecoreClass="Rpy.ecore#//ObjectLinksType"/>
+    <genClasses image="false" ecoreClass="Rpy.ecore#//OperationsType">
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//OperationsType/virtual"/>
+    </genClasses>
+    <genClasses image="false" ecoreClass="Rpy.ecore#//OwnerHandleType">
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//OwnerHandleType/weakCGTime"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//OwnerHandleType/strongCGTime"/>
+    </genClasses>
+    <genClasses image="false" ecoreClass="Rpy.ecore#//P_MessageHandlerType"/>
+    <genClasses image="false" ecoreClass="Rpy.ecore#//ParentType"/>
+    <genClasses image="false" ecoreClass="Rpy.ecore#//PropertiesType"/>
+    <genClasses ecoreClass="Rpy.ecore#//TableDataDefinition">
+      <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference Rpy.ecore#//TableDataDefinition/myTable"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//TableDataDefinition/name"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//TableDataDefinition/DataType"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//TableDataDefinition/columnName"/>
+      <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference Rpy.ecore#//TableDataDefinition/modelElement"/>
+    </genClasses>
+    <genClasses image="false" ecoreClass="Rpy.ecore#//TableInstancesType"/>
+    <genClasses image="false" ecoreClass="Rpy.ecore#//TargetType"/>
+    <genClasses image="false" ecoreClass="Rpy.ecore#//TheMainDiagramType">
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//TheMainDiagramType/id"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//TheMainDiagramType/lastModifiedTime"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//TheMainDiagramType/requiremenTracabilityHandle"/>
+      <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference Rpy.ecore#//TheMainDiagramType/defaultSubsystem"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//TheMainDiagramType/description"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//TheMainDiagramType/umlDependencyID"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//TheMainDiagramType/lastID"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//TheMainDiagramType/myState"/>
+      <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference Rpy.ecore#//TheMainDiagramType/ownerHandle"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//TheMainDiagramType/objectCreation"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//TheMainDiagramType/name"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//TheMainDiagramType/cmheader"/>
+    </genClasses>
+    <genClasses image="false" ecoreClass="Rpy.ecore#//ToLinkType">
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//ToLinkType/implicitClass"/>
+    </genClasses>
+    <genClasses image="false" ecoreClass="Rpy.ecore#//TransitionsType">
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//TransitionsType/modifiedTimeWeak"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//TransitionsType/staticReaction"/>
+      <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference Rpy.ecore#//TransitionsType/itsTarget"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//TransitionsType/id"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//TransitionsType/codeUpdateCGTime"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//TransitionsType/requiremenTracabilityHandle"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//TransitionsType/description"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Rpy.ecore#//TransitionsType/itsLabel"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//TransitionsType/umlDependencyID"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//TransitionsType/myState"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//TransitionsType/objectCreation"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//TransitionsType/name"/>
+    </genClasses>
+    <genClasses ecoreClass="Rpy.ecore#//UnknownType"/>
+    <genClasses image="false" ecoreClass="Rpy.ecore#//ValueType">
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//ValueType/modifiedTimeWeak"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//ValueType/id"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//ValueType/myState"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Rpy.ecore#//ValueType/name"/>
+    </genClasses>
+  </genPackages>
+</genmodel:GenModel>
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/plugin.properties b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/plugin.properties
new file mode 100644
index 0000000..3975e74
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/plugin.properties
@@ -0,0 +1,13 @@
+#   Copyright (c) 2016 CEA LIST and others.
+#   
+#   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:
+#     CEA LIST - Initial API and implementation
+# 
+
+pluginName = Papyrus Interoperability Rpy Metamodel (Incubation)
+providerName = Eclipse Modeling Project
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/plugin.xml b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/plugin.xml
new file mode 100644
index 0000000..966d325
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/plugin.xml
@@ -0,0 +1,19 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?eclipse version="3.0"?>
+
+<!--
+-->
+
+<plugin>
+
+ 
+
+   <extension point="org.eclipse.emf.ecore.generated_package">
+      <!-- @generated Rpy -->
+      <package
+            uri="http://www.eclipse.org/Papyrus/UMLRpy/1.0.0"
+            class="org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage"
+            genModel="model/Rpy.genmodel"/>
+   </extension>
+
+</plugin>
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/AssociationsType.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/AssociationsType.java
new file mode 100755
index 0000000..b9d8292
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/AssociationsType.java
@@ -0,0 +1,27 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel;
+
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Associations Type</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ *
+ * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getAssociationsType()
+ * @model abstract="true"
+ * @generated
+ */
+public interface AssociationsType extends InverseType {
+} // AssociationsType
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/CCollaborationChart.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/CCollaborationChart.java
new file mode 100755
index 0000000..a3b5c22
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/CCollaborationChart.java
@@ -0,0 +1,86 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel;
+
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>CCollaboration Chart</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * </p>
+ * <ul>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CCollaborationChart#getM_pModelObject <em>MpModel Object</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CCollaborationChart#getM_pRoot <em>MpRoot</em>}</li>
+ * </ul>
+ *
+ * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCCollaborationChart()
+ * @model
+ * @generated
+ */
+public interface CCollaborationChart extends GraphicChartType {
+	/**
+	 * Returns the value of the '<em><b>MpModel Object</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>MpModel Object</em>' reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>MpModel Object</em>' reference.
+	 * @see #setM_pModelObject(ICollaboration)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCCollaborationChart_M_pModelObject()
+	 * @model
+	 * @generated
+	 */
+	ICollaboration getM_pModelObject();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CCollaborationChart#getM_pModelObject <em>MpModel Object</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>MpModel Object</em>' reference.
+	 * @see #getM_pModelObject()
+	 * @generated
+	 */
+	void setM_pModelObject(ICollaboration value);
+
+	/**
+	 * Returns the value of the '<em><b>MpRoot</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>MpRoot</em>' reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>MpRoot</em>' reference.
+	 * @see #setM_pRoot(CGIBox)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCCollaborationChart_M_pRoot()
+	 * @model
+	 * @generated
+	 */
+	CGIBox getM_pRoot();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CCollaborationChart#getM_pRoot <em>MpRoot</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>MpRoot</em>' reference.
+	 * @see #getM_pRoot()
+	 * @generated
+	 */
+	void setM_pRoot(CGIBox value);
+
+} // CCollaborationChart
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/CGIActionState.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/CGIActionState.java
new file mode 100755
index 0000000..0dc7858
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/CGIActionState.java
@@ -0,0 +1,425 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel;
+
+import org.eclipse.emf.common.util.EList;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>CGI Action State</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * </p>
+ * <ul>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIActionState#getProperties <em>Properties</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIActionState#getM_pModelObject <em>MpModel Object</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIActionState#getM_pParent <em>MpParent</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIActionState#getM_transform <em>Mtransform</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIActionState#getM_AdditionalLabel <em>MAdditional Label</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIActionState#getM_polygon <em>Mpolygon</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIActionState#getM_nNameFormat <em>MnName Format</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIActionState#getM_nIsNameFormat <em>MnIs Name Format</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIActionState#getCompartments <em>Compartments</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIActionState#getNAndLineCount <em>NAnd Line Count</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIActionState#getM_pInheritsFrom <em>MpInherits From</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIActionState#getM_nInheritanceMask <em>MnInheritance Mask</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIActionState#getM_pDefaultComponentRelation <em>MpDefault Component Relation</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIActionState#getM_NameDisplayMode <em>MName Display Mode</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIActionState#getM_ActDescLablDiaplayMode <em>MAct Desc Labl Diaplay Mode</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIActionState#getM_moveAndLineTimeStamp <em>Mmove And Line Time Stamp</em>}</li>
+ * </ul>
+ *
+ * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIActionState()
+ * @model
+ * @generated
+ */
+public interface CGIActionState extends GraphElementsType {
+	/**
+	 * Returns the value of the '<em><b>Properties</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Properties</em>' containment reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Properties</em>' containment reference.
+	 * @see #setProperties(IPropertyContainer)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIActionState_Properties()
+	 * @model containment="true" resolveProxies="true"
+	 * @generated
+	 */
+	IPropertyContainer getProperties();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIActionState#getProperties <em>Properties</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Properties</em>' containment reference.
+	 * @see #getProperties()
+	 * @generated
+	 */
+	void setProperties(IPropertyContainer value);
+
+	/**
+	 * Returns the value of the '<em><b>MpModel Object</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>MpModel Object</em>' reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>MpModel Object</em>' reference.
+	 * @see #setM_pModelObject(IStateVertex)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIActionState_M_pModelObject()
+	 * @model
+	 * @generated
+	 */
+	IStateVertex getM_pModelObject();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIActionState#getM_pModelObject <em>MpModel Object</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>MpModel Object</em>' reference.
+	 * @see #getM_pModelObject()
+	 * @generated
+	 */
+	void setM_pModelObject(IStateVertex value);
+
+	/**
+	 * Returns the value of the '<em><b>MpParent</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>MpParent</em>' reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>MpParent</em>' reference.
+	 * @see #setM_pParent(GraphElementsType)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIActionState_M_pParent()
+	 * @model
+	 * @generated
+	 */
+	GraphElementsType getM_pParent();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIActionState#getM_pParent <em>MpParent</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>MpParent</em>' reference.
+	 * @see #getM_pParent()
+	 * @generated
+	 */
+	void setM_pParent(GraphElementsType value);
+
+	/**
+	 * Returns the value of the '<em><b>Mtransform</b></em>' attribute list.
+	 * The list contents are of type {@link java.lang.String}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Mtransform</em>' attribute list isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Mtransform</em>' attribute list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIActionState_M_transform()
+	 * @model unique="false"
+	 * @generated
+	 */
+	EList<String> getM_transform();
+
+	/**
+	 * Returns the value of the '<em><b>MAdditional Label</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>MAdditional Label</em>' containment reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>MAdditional Label</em>' containment reference.
+	 * @see #setM_AdditionalLabel(CGIText)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIActionState_M_AdditionalLabel()
+	 * @model containment="true" resolveProxies="true"
+	 * @generated
+	 */
+	CGIText getM_AdditionalLabel();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIActionState#getM_AdditionalLabel <em>MAdditional Label</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>MAdditional Label</em>' containment reference.
+	 * @see #getM_AdditionalLabel()
+	 * @generated
+	 */
+	void setM_AdditionalLabel(CGIText value);
+
+	/**
+	 * Returns the value of the '<em><b>Mpolygon</b></em>' attribute list.
+	 * The list contents are of type {@link java.lang.String}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Mpolygon</em>' attribute list isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Mpolygon</em>' attribute list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIActionState_M_polygon()
+	 * @model unique="false"
+	 * @generated
+	 */
+	EList<String> getM_polygon();
+
+	/**
+	 * Returns the value of the '<em><b>MnName Format</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>MnName Format</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>MnName Format</em>' attribute.
+	 * @see #setM_nNameFormat(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIActionState_M_nNameFormat()
+	 * @model
+	 * @generated
+	 */
+	String getM_nNameFormat();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIActionState#getM_nNameFormat <em>MnName Format</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>MnName Format</em>' attribute.
+	 * @see #getM_nNameFormat()
+	 * @generated
+	 */
+	void setM_nNameFormat(String value);
+
+	/**
+	 * Returns the value of the '<em><b>MnIs Name Format</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>MnIs Name Format</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>MnIs Name Format</em>' attribute.
+	 * @see #setM_nIsNameFormat(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIActionState_M_nIsNameFormat()
+	 * @model
+	 * @generated
+	 */
+	String getM_nIsNameFormat();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIActionState#getM_nIsNameFormat <em>MnIs Name Format</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>MnIs Name Format</em>' attribute.
+	 * @see #getM_nIsNameFormat()
+	 * @generated
+	 */
+	void setM_nIsNameFormat(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Compartments</b></em>' reference list.
+	 * The list contents are of type {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UnknownType}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Compartments</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>Compartments</em>' reference list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIActionState_Compartments()
+	 * @model
+	 * @generated
+	 */
+	EList<UnknownType> getCompartments();
+
+	/**
+	 * Returns the value of the '<em><b>NAnd Line Count</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>NAnd Line Count</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>NAnd Line Count</em>' attribute.
+	 * @see #setNAndLineCount(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIActionState_NAndLineCount()
+	 * @model
+	 * @generated
+	 */
+	String getNAndLineCount();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIActionState#getNAndLineCount <em>NAnd Line Count</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>NAnd Line Count</em>' attribute.
+	 * @see #getNAndLineCount()
+	 * @generated
+	 */
+	void setNAndLineCount(String value);
+
+	/**
+	 * Returns the value of the '<em><b>MpInherits From</b></em>' reference list.
+	 * The list contents are of type {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UnknownType}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>MpInherits From</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>MpInherits From</em>' reference list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIActionState_M_pInheritsFrom()
+	 * @model
+	 * @generated
+	 */
+	EList<UnknownType> getM_pInheritsFrom();
+
+	/**
+	 * Returns the value of the '<em><b>MnInheritance Mask</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>MnInheritance Mask</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>MnInheritance Mask</em>' attribute.
+	 * @see #setM_nInheritanceMask(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIActionState_M_nInheritanceMask()
+	 * @model
+	 * @generated
+	 */
+	String getM_nInheritanceMask();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIActionState#getM_nInheritanceMask <em>MnInheritance Mask</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>MnInheritance Mask</em>' attribute.
+	 * @see #getM_nInheritanceMask()
+	 * @generated
+	 */
+	void setM_nInheritanceMask(String value);
+
+	/**
+	 * Returns the value of the '<em><b>MpDefault Component Relation</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>MpDefault Component Relation</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>MpDefault Component Relation</em>' attribute.
+	 * @see #setM_pDefaultComponentRelation(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIActionState_M_pDefaultComponentRelation()
+	 * @model
+	 * @generated
+	 */
+	String getM_pDefaultComponentRelation();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIActionState#getM_pDefaultComponentRelation <em>MpDefault Component Relation</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>MpDefault Component Relation</em>' attribute.
+	 * @see #getM_pDefaultComponentRelation()
+	 * @generated
+	 */
+	void setM_pDefaultComponentRelation(String value);
+
+	/**
+	 * Returns the value of the '<em><b>MName Display Mode</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>MName Display Mode</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>MName Display Mode</em>' attribute.
+	 * @see #setM_NameDisplayMode(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIActionState_M_NameDisplayMode()
+	 * @model
+	 * @generated
+	 */
+	String getM_NameDisplayMode();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIActionState#getM_NameDisplayMode <em>MName Display Mode</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>MName Display Mode</em>' attribute.
+	 * @see #getM_NameDisplayMode()
+	 * @generated
+	 */
+	void setM_NameDisplayMode(String value);
+
+	/**
+	 * Returns the value of the '<em><b>MAct Desc Labl Diaplay Mode</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>MAct Desc Labl Diaplay Mode</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>MAct Desc Labl Diaplay Mode</em>' attribute.
+	 * @see #setM_ActDescLablDiaplayMode(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIActionState_M_ActDescLablDiaplayMode()
+	 * @model
+	 * @generated
+	 */
+	String getM_ActDescLablDiaplayMode();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIActionState#getM_ActDescLablDiaplayMode <em>MAct Desc Labl Diaplay Mode</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>MAct Desc Labl Diaplay Mode</em>' attribute.
+	 * @see #getM_ActDescLablDiaplayMode()
+	 * @generated
+	 */
+	void setM_ActDescLablDiaplayMode(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Mmove And Line Time Stamp</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Mmove And Line Time Stamp</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Mmove And Line Time Stamp</em>' attribute.
+	 * @see #setM_moveAndLineTimeStamp(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIActionState_M_moveAndLineTimeStamp()
+	 * @model
+	 * @generated
+	 */
+	String getM_moveAndLineTimeStamp();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIActionState#getM_moveAndLineTimeStamp <em>Mmove And Line Time Stamp</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Mmove And Line Time Stamp</em>' attribute.
+	 * @see #getM_moveAndLineTimeStamp()
+	 * @generated
+	 */
+	void setM_moveAndLineTimeStamp(String value);
+
+} // CGIActionState
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/CGIActiveX.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/CGIActiveX.java
new file mode 100755
index 0000000..4d239f5
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/CGIActiveX.java
@@ -0,0 +1,290 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel;
+
+import org.eclipse.emf.common.util.EList;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>CGI Active X</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * </p>
+ * <ul>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIActiveX#getProperties <em>Properties</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIActiveX#getM_pModelObject <em>MpModel Object</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIActiveX#getM_pParent <em>MpParent</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIActiveX#getM_transform <em>Mtransform</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIActiveX#getM_polygon <em>Mpolygon</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIActiveX#getM_nNameFormat <em>MnName Format</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIActiveX#getM_nIsNameFormat <em>MnIs Name Format</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIActiveX#getCompartments <em>Compartments</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIActiveX#getM_csModelObjPath <em>Mcs Model Obj Path</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIActiveX#getM_csName <em>Mcs Name</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIActiveX#getM_PartsArray <em>MParts Array</em>}</li>
+ * </ul>
+ *
+ * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIActiveX()
+ * @model
+ * @generated
+ */
+public interface CGIActiveX extends GraphElementsType {
+	/**
+	 * Returns the value of the '<em><b>Properties</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Properties</em>' containment reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Properties</em>' containment reference.
+	 * @see #setProperties(IPropertyContainer)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIActiveX_Properties()
+	 * @model containment="true" resolveProxies="true"
+	 * @generated
+	 */
+	IPropertyContainer getProperties();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIActiveX#getProperties <em>Properties</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Properties</em>' containment reference.
+	 * @see #getProperties()
+	 * @generated
+	 */
+	void setProperties(IPropertyContainer value);
+
+	/**
+	 * Returns the value of the '<em><b>MpModel Object</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>MpModel Object</em>' reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>MpModel Object</em>' reference.
+	 * @see #setM_pModelObject(M_pModelObjectType)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIActiveX_M_pModelObject()
+	 * @model
+	 * @generated
+	 */
+	M_pModelObjectType getM_pModelObject();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIActiveX#getM_pModelObject <em>MpModel Object</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>MpModel Object</em>' reference.
+	 * @see #getM_pModelObject()
+	 * @generated
+	 */
+	void setM_pModelObject(M_pModelObjectType value);
+
+	/**
+	 * Returns the value of the '<em><b>MpParent</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>MpParent</em>' reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>MpParent</em>' reference.
+	 * @see #setM_pParent(GraphElementsType)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIActiveX_M_pParent()
+	 * @model
+	 * @generated
+	 */
+	GraphElementsType getM_pParent();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIActiveX#getM_pParent <em>MpParent</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>MpParent</em>' reference.
+	 * @see #getM_pParent()
+	 * @generated
+	 */
+	void setM_pParent(GraphElementsType value);
+
+	/**
+	 * Returns the value of the '<em><b>Mtransform</b></em>' attribute list.
+	 * The list contents are of type {@link java.lang.String}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Mtransform</em>' attribute list isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Mtransform</em>' attribute list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIActiveX_M_transform()
+	 * @model unique="false"
+	 * @generated
+	 */
+	EList<String> getM_transform();
+
+	/**
+	 * Returns the value of the '<em><b>Mpolygon</b></em>' attribute list.
+	 * The list contents are of type {@link java.lang.String}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Mpolygon</em>' attribute list isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Mpolygon</em>' attribute list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIActiveX_M_polygon()
+	 * @model unique="false"
+	 * @generated
+	 */
+	EList<String> getM_polygon();
+
+	/**
+	 * Returns the value of the '<em><b>MnName Format</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>MnName Format</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>MnName Format</em>' attribute.
+	 * @see #setM_nNameFormat(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIActiveX_M_nNameFormat()
+	 * @model
+	 * @generated
+	 */
+	String getM_nNameFormat();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIActiveX#getM_nNameFormat <em>MnName Format</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>MnName Format</em>' attribute.
+	 * @see #getM_nNameFormat()
+	 * @generated
+	 */
+	void setM_nNameFormat(String value);
+
+	/**
+	 * Returns the value of the '<em><b>MnIs Name Format</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>MnIs Name Format</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>MnIs Name Format</em>' attribute.
+	 * @see #setM_nIsNameFormat(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIActiveX_M_nIsNameFormat()
+	 * @model
+	 * @generated
+	 */
+	String getM_nIsNameFormat();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIActiveX#getM_nIsNameFormat <em>MnIs Name Format</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>MnIs Name Format</em>' attribute.
+	 * @see #getM_nIsNameFormat()
+	 * @generated
+	 */
+	void setM_nIsNameFormat(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Compartments</b></em>' reference list.
+	 * The list contents are of type {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UnknownType}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Compartments</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>Compartments</em>' reference list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIActiveX_Compartments()
+	 * @model
+	 * @generated
+	 */
+	EList<UnknownType> getCompartments();
+
+	/**
+	 * Returns the value of the '<em><b>Mcs Model Obj Path</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Mcs Model Obj Path</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Mcs Model Obj Path</em>' attribute.
+	 * @see #setM_csModelObjPath(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIActiveX_M_csModelObjPath()
+	 * @model
+	 * @generated
+	 */
+	String getM_csModelObjPath();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIActiveX#getM_csModelObjPath <em>Mcs Model Obj Path</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Mcs Model Obj Path</em>' attribute.
+	 * @see #getM_csModelObjPath()
+	 * @generated
+	 */
+	void setM_csModelObjPath(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Mcs Name</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Mcs Name</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Mcs Name</em>' attribute.
+	 * @see #setM_csName(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIActiveX_M_csName()
+	 * @model
+	 * @generated
+	 */
+	String getM_csName();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIActiveX#getM_csName <em>Mcs Name</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Mcs Name</em>' attribute.
+	 * @see #getM_csName()
+	 * @generated
+	 */
+	void setM_csName(String value);
+
+	/**
+	 * Returns the value of the '<em><b>MParts Array</b></em>' reference list.
+	 * The list contents are of type {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.DependsOnType}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>MParts Array</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>MParts Array</em>' reference list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIActiveX_M_PartsArray()
+	 * @model
+	 * @generated
+	 */
+	EList<DependsOnType> getM_PartsArray();
+
+} // CGIActiveX
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/CGIAnchor.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/CGIAnchor.java
new file mode 100755
index 0000000..2139cae
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/CGIAnchor.java
@@ -0,0 +1,442 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel;
+
+import org.eclipse.emf.common.util.EList;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>CGI Anchor</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * </p>
+ * <ul>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIAnchor#getM_pModelObject <em>MpModel Object</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIAnchor#getM_pParent <em>MpParent</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIAnchor#getM_pSource <em>MpSource</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIAnchor#getM_sourceType <em>Msource Type</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIAnchor#getM_pTarget <em>MpTarget</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIAnchor#getM_targetType <em>Mtarget Type</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIAnchor#getM_direction <em>Mdirection</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIAnchor#getM_rpn <em>Mrpn</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIAnchor#getM_anglePoint1 <em>Mangle Point1</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIAnchor#getM_anglePoint2 <em>Mangle Point2</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIAnchor#getM_line_style <em>Mline style</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIAnchor#getM_SourcePort <em>MSource Port</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIAnchor#getM_TargetPort <em>MTarget Port</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIAnchor#getProperties <em>Properties</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIAnchor#getM_color <em>Mcolor</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIAnchor#getM_lineWidth <em>Mline Width</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIAnchor#getM_arrow <em>Marrow</em>}</li>
+ * </ul>
+ *
+ * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIAnchor()
+ * @model
+ * @generated
+ */
+public interface CGIAnchor extends GraphElementsType {
+	/**
+	 * Returns the value of the '<em><b>MpModel Object</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>MpModel Object</em>' reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>MpModel Object</em>' reference.
+	 * @see #setM_pModelObject(M_pModelObjectType)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIAnchor_M_pModelObject()
+	 * @model
+	 * @generated
+	 */
+	M_pModelObjectType getM_pModelObject();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIAnchor#getM_pModelObject <em>MpModel Object</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>MpModel Object</em>' reference.
+	 * @see #getM_pModelObject()
+	 * @generated
+	 */
+	void setM_pModelObject(M_pModelObjectType value);
+
+	/**
+	 * Returns the value of the '<em><b>MpParent</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>MpParent</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>MpParent</em>' attribute.
+	 * @see #setM_pParent(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIAnchor_M_pParent()
+	 * @model
+	 * @generated
+	 */
+	String getM_pParent();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIAnchor#getM_pParent <em>MpParent</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>MpParent</em>' attribute.
+	 * @see #getM_pParent()
+	 * @generated
+	 */
+	void setM_pParent(String value);
+
+	/**
+	 * Returns the value of the '<em><b>MpSource</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>MpSource</em>' reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>MpSource</em>' reference.
+	 * @see #setM_pSource(M_pRootType)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIAnchor_M_pSource()
+	 * @model
+	 * @generated
+	 */
+	M_pRootType getM_pSource();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIAnchor#getM_pSource <em>MpSource</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>MpSource</em>' reference.
+	 * @see #getM_pSource()
+	 * @generated
+	 */
+	void setM_pSource(M_pRootType value);
+
+	/**
+	 * Returns the value of the '<em><b>Msource Type</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Msource 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>Msource Type</em>' attribute.
+	 * @see #setM_sourceType(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIAnchor_M_sourceType()
+	 * @model
+	 * @generated
+	 */
+	String getM_sourceType();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIAnchor#getM_sourceType <em>Msource Type</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Msource Type</em>' attribute.
+	 * @see #getM_sourceType()
+	 * @generated
+	 */
+	void setM_sourceType(String value);
+
+	/**
+	 * Returns the value of the '<em><b>MpTarget</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>MpTarget</em>' reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>MpTarget</em>' reference.
+	 * @see #setM_pTarget(M_pRootType)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIAnchor_M_pTarget()
+	 * @model
+	 * @generated
+	 */
+	M_pRootType getM_pTarget();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIAnchor#getM_pTarget <em>MpTarget</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>MpTarget</em>' reference.
+	 * @see #getM_pTarget()
+	 * @generated
+	 */
+	void setM_pTarget(M_pRootType value);
+
+	/**
+	 * Returns the value of the '<em><b>Mtarget Type</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Mtarget 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>Mtarget Type</em>' attribute.
+	 * @see #setM_targetType(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIAnchor_M_targetType()
+	 * @model
+	 * @generated
+	 */
+	String getM_targetType();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIAnchor#getM_targetType <em>Mtarget Type</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Mtarget Type</em>' attribute.
+	 * @see #getM_targetType()
+	 * @generated
+	 */
+	void setM_targetType(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Mdirection</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Mdirection</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Mdirection</em>' attribute.
+	 * @see #setM_direction(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIAnchor_M_direction()
+	 * @model
+	 * @generated
+	 */
+	String getM_direction();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIAnchor#getM_direction <em>Mdirection</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Mdirection</em>' attribute.
+	 * @see #getM_direction()
+	 * @generated
+	 */
+	void setM_direction(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Mrpn</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Mrpn</em>' containment reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Mrpn</em>' containment reference.
+	 * @see #setM_rpn(CGIText)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIAnchor_M_rpn()
+	 * @model containment="true" resolveProxies="true"
+	 * @generated
+	 */
+	CGIText getM_rpn();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIAnchor#getM_rpn <em>Mrpn</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Mrpn</em>' containment reference.
+	 * @see #getM_rpn()
+	 * @generated
+	 */
+	void setM_rpn(CGIText value);
+
+	/**
+	 * Returns the value of the '<em><b>Mangle Point1</b></em>' attribute list.
+	 * The list contents are of type {@link java.lang.String}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Mangle Point1</em>' attribute list isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Mangle Point1</em>' attribute list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIAnchor_M_anglePoint1()
+	 * @model unique="false"
+	 * @generated
+	 */
+	EList<String> getM_anglePoint1();
+
+	/**
+	 * Returns the value of the '<em><b>Mangle Point2</b></em>' attribute list.
+	 * The list contents are of type {@link java.lang.String}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Mangle Point2</em>' attribute list isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Mangle Point2</em>' attribute list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIAnchor_M_anglePoint2()
+	 * @model unique="false"
+	 * @generated
+	 */
+	EList<String> getM_anglePoint2();
+
+	/**
+	 * Returns the value of the '<em><b>Mline style</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Mline style</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Mline style</em>' attribute.
+	 * @see #setM_line_style(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIAnchor_M_line_style()
+	 * @model
+	 * @generated
+	 */
+	String getM_line_style();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIAnchor#getM_line_style <em>Mline style</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Mline style</em>' attribute.
+	 * @see #getM_line_style()
+	 * @generated
+	 */
+	void setM_line_style(String value);
+
+	/**
+	 * Returns the value of the '<em><b>MSource Port</b></em>' attribute list.
+	 * The list contents are of type {@link java.lang.String}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>MSource Port</em>' attribute list isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>MSource Port</em>' attribute list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIAnchor_M_SourcePort()
+	 * @model unique="false"
+	 * @generated
+	 */
+	EList<String> getM_SourcePort();
+
+	/**
+	 * Returns the value of the '<em><b>MTarget Port</b></em>' attribute list.
+	 * The list contents are of type {@link java.lang.String}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>MTarget Port</em>' attribute list isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>MTarget Port</em>' attribute list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIAnchor_M_TargetPort()
+	 * @model unique="false"
+	 * @generated
+	 */
+	EList<String> getM_TargetPort();
+
+	/**
+	 * Returns the value of the '<em><b>Properties</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Properties</em>' containment reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Properties</em>' containment reference.
+	 * @see #setProperties(IPropertyContainer)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIAnchor_Properties()
+	 * @model containment="true" resolveProxies="true"
+	 * @generated
+	 */
+	IPropertyContainer getProperties();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIAnchor#getProperties <em>Properties</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Properties</em>' containment reference.
+	 * @see #getProperties()
+	 * @generated
+	 */
+	void setProperties(IPropertyContainer value);
+
+	/**
+	 * Returns the value of the '<em><b>Mcolor</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Mcolor</em>' containment reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Mcolor</em>' containment reference.
+	 * @see #setM_color(IColor)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIAnchor_M_color()
+	 * @model containment="true" resolveProxies="true"
+	 * @generated
+	 */
+	IColor getM_color();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIAnchor#getM_color <em>Mcolor</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Mcolor</em>' containment reference.
+	 * @see #getM_color()
+	 * @generated
+	 */
+	void setM_color(IColor value);
+
+	/**
+	 * Returns the value of the '<em><b>Mline Width</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Mline Width</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Mline Width</em>' attribute.
+	 * @see #setM_lineWidth(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIAnchor_M_lineWidth()
+	 * @model
+	 * @generated
+	 */
+	String getM_lineWidth();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIAnchor#getM_lineWidth <em>Mline Width</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Mline Width</em>' attribute.
+	 * @see #getM_lineWidth()
+	 * @generated
+	 */
+	void setM_lineWidth(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Marrow</b></em>' attribute list.
+	 * The list contents are of type {@link java.lang.String}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Marrow</em>' attribute list isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Marrow</em>' attribute list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIAnchor_M_arrow()
+	 * @model unique="false"
+	 * @generated
+	 */
+	EList<String> getM_arrow();
+
+} // CGIAnchor
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/CGIAnnotation.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/CGIAnnotation.java
new file mode 100755
index 0000000..0cc42f7
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/CGIAnnotation.java
@@ -0,0 +1,445 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel;
+
+import org.eclipse.emf.common.util.EList;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>CGI Annotation</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * </p>
+ * <ul>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIAnnotation#getProperties <em>Properties</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIAnnotation#getM_pParent <em>MpParent</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIAnnotation#getM_transform <em>Mtransform</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIAnnotation#getM_AdditionalLabel <em>MAdditional Label</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIAnnotation#getM_polygon <em>Mpolygon</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIAnnotation#getM_nNameFormat <em>MnName Format</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIAnnotation#getM_nIsNameFormat <em>MnIs Name Format</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIAnnotation#getITempdisplayTextFlag <em>ITempdisplay Text Flag</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIAnnotation#getM_bIsBoxStyle <em>MbIs Box Style</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIAnnotation#getM_pModelObject <em>MpModel Object</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIAnnotation#getM_color <em>Mcolor</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIAnnotation#getM_lineWidth <em>Mline Width</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIAnnotation#getFrameset <em>Frameset</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIAnnotation#getCompartments <em>Compartments</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIAnnotation#getM_bIsStructured <em>MbIs Structured</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIAnnotation#getM_bFramesetModified <em>MbFrameset Modified</em>}</li>
+ * </ul>
+ *
+ * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIAnnotation()
+ * @model
+ * @generated
+ */
+public interface CGIAnnotation extends GraphElementsType {
+	/**
+	 * Returns the value of the '<em><b>Properties</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Properties</em>' containment reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Properties</em>' containment reference.
+	 * @see #setProperties(IPropertyContainer)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIAnnotation_Properties()
+	 * @model containment="true" resolveProxies="true"
+	 * @generated
+	 */
+	IPropertyContainer getProperties();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIAnnotation#getProperties <em>Properties</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Properties</em>' containment reference.
+	 * @see #getProperties()
+	 * @generated
+	 */
+	void setProperties(IPropertyContainer value);
+
+	/**
+	 * Returns the value of the '<em><b>MpParent</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>MpParent</em>' reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>MpParent</em>' reference.
+	 * @see #setM_pParent(M_pRootType)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIAnnotation_M_pParent()
+	 * @model
+	 * @generated
+	 */
+	M_pRootType getM_pParent();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIAnnotation#getM_pParent <em>MpParent</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>MpParent</em>' reference.
+	 * @see #getM_pParent()
+	 * @generated
+	 */
+	void setM_pParent(M_pRootType value);
+
+	/**
+	 * Returns the value of the '<em><b>Mtransform</b></em>' attribute list.
+	 * The list contents are of type {@link java.lang.String}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Mtransform</em>' attribute list isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Mtransform</em>' attribute list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIAnnotation_M_transform()
+	 * @model unique="false"
+	 * @generated
+	 */
+	EList<String> getM_transform();
+
+	/**
+	 * Returns the value of the '<em><b>MAdditional Label</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>MAdditional Label</em>' containment reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>MAdditional Label</em>' containment reference.
+	 * @see #setM_AdditionalLabel(CGIText)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIAnnotation_M_AdditionalLabel()
+	 * @model containment="true" resolveProxies="true"
+	 * @generated
+	 */
+	CGIText getM_AdditionalLabel();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIAnnotation#getM_AdditionalLabel <em>MAdditional Label</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>MAdditional Label</em>' containment reference.
+	 * @see #getM_AdditionalLabel()
+	 * @generated
+	 */
+	void setM_AdditionalLabel(CGIText value);
+
+	/**
+	 * Returns the value of the '<em><b>Mpolygon</b></em>' attribute list.
+	 * The list contents are of type {@link java.lang.String}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Mpolygon</em>' attribute list isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Mpolygon</em>' attribute list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIAnnotation_M_polygon()
+	 * @model unique="false"
+	 * @generated
+	 */
+	EList<String> getM_polygon();
+
+	/**
+	 * Returns the value of the '<em><b>MnName Format</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>MnName Format</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>MnName Format</em>' attribute.
+	 * @see #setM_nNameFormat(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIAnnotation_M_nNameFormat()
+	 * @model
+	 * @generated
+	 */
+	String getM_nNameFormat();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIAnnotation#getM_nNameFormat <em>MnName Format</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>MnName Format</em>' attribute.
+	 * @see #getM_nNameFormat()
+	 * @generated
+	 */
+	void setM_nNameFormat(String value);
+
+	/**
+	 * Returns the value of the '<em><b>MnIs Name Format</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>MnIs Name Format</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>MnIs Name Format</em>' attribute.
+	 * @see #setM_nIsNameFormat(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIAnnotation_M_nIsNameFormat()
+	 * @model
+	 * @generated
+	 */
+	String getM_nIsNameFormat();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIAnnotation#getM_nIsNameFormat <em>MnIs Name Format</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>MnIs Name Format</em>' attribute.
+	 * @see #getM_nIsNameFormat()
+	 * @generated
+	 */
+	void setM_nIsNameFormat(String value);
+
+	/**
+	 * Returns the value of the '<em><b>ITempdisplay Text Flag</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>ITempdisplay Text Flag</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>ITempdisplay Text Flag</em>' attribute.
+	 * @see #setITempdisplayTextFlag(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIAnnotation_ITempdisplayTextFlag()
+	 * @model
+	 * @generated
+	 */
+	String getITempdisplayTextFlag();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIAnnotation#getITempdisplayTextFlag <em>ITempdisplay Text Flag</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>ITempdisplay Text Flag</em>' attribute.
+	 * @see #getITempdisplayTextFlag()
+	 * @generated
+	 */
+	void setITempdisplayTextFlag(String value);
+
+	/**
+	 * Returns the value of the '<em><b>MbIs Box Style</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>MbIs Box Style</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>MbIs Box Style</em>' attribute.
+	 * @see #setM_bIsBoxStyle(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIAnnotation_M_bIsBoxStyle()
+	 * @model
+	 * @generated
+	 */
+	String getM_bIsBoxStyle();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIAnnotation#getM_bIsBoxStyle <em>MbIs Box Style</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>MbIs Box Style</em>' attribute.
+	 * @see #getM_bIsBoxStyle()
+	 * @generated
+	 */
+	void setM_bIsBoxStyle(String value);
+
+	/**
+	 * Returns the value of the '<em><b>MpModel Object</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>MpModel Object</em>' reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>MpModel Object</em>' reference.
+	 * @see #setM_pModelObject(IUnit)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIAnnotation_M_pModelObject()
+	 * @model
+	 * @generated
+	 */
+	IUnit getM_pModelObject();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIAnnotation#getM_pModelObject <em>MpModel Object</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>MpModel Object</em>' reference.
+	 * @see #getM_pModelObject()
+	 * @generated
+	 */
+	void setM_pModelObject(IUnit value);
+
+	/**
+	 * Returns the value of the '<em><b>Mcolor</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Mcolor</em>' containment reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Mcolor</em>' containment reference.
+	 * @see #setM_color(IColor)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIAnnotation_M_color()
+	 * @model containment="true" resolveProxies="true"
+	 * @generated
+	 */
+	IColor getM_color();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIAnnotation#getM_color <em>Mcolor</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Mcolor</em>' containment reference.
+	 * @see #getM_color()
+	 * @generated
+	 */
+	void setM_color(IColor value);
+
+	/**
+	 * Returns the value of the '<em><b>Mline Width</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Mline Width</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Mline Width</em>' attribute.
+	 * @see #setM_lineWidth(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIAnnotation_M_lineWidth()
+	 * @model
+	 * @generated
+	 */
+	String getM_lineWidth();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIAnnotation#getM_lineWidth <em>Mline Width</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Mline Width</em>' attribute.
+	 * @see #getM_lineWidth()
+	 * @generated
+	 */
+	void setM_lineWidth(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Frameset</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Frameset</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Frameset</em>' attribute.
+	 * @see #setFrameset(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIAnnotation_Frameset()
+	 * @model
+	 * @generated
+	 */
+	String getFrameset();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIAnnotation#getFrameset <em>Frameset</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Frameset</em>' attribute.
+	 * @see #getFrameset()
+	 * @generated
+	 */
+	void setFrameset(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Compartments</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Compartments</em>' containment reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Compartments</em>' containment reference.
+	 * @see #setCompartments(CompartmentsType)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIAnnotation_Compartments()
+	 * @model containment="true" resolveProxies="true"
+	 * @generated
+	 */
+	CompartmentsType getCompartments();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIAnnotation#getCompartments <em>Compartments</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Compartments</em>' containment reference.
+	 * @see #getCompartments()
+	 * @generated
+	 */
+	void setCompartments(CompartmentsType value);
+
+	/**
+	 * Returns the value of the '<em><b>MbIs Structured</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>MbIs Structured</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>MbIs Structured</em>' attribute.
+	 * @see #setM_bIsStructured(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIAnnotation_M_bIsStructured()
+	 * @model
+	 * @generated
+	 */
+	String getM_bIsStructured();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIAnnotation#getM_bIsStructured <em>MbIs Structured</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>MbIs Structured</em>' attribute.
+	 * @see #getM_bIsStructured()
+	 * @generated
+	 */
+	void setM_bIsStructured(String value);
+
+	/**
+	 * Returns the value of the '<em><b>MbFrameset Modified</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>MbFrameset Modified</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>MbFrameset Modified</em>' attribute.
+	 * @see #setM_bFramesetModified(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIAnnotation_M_bFramesetModified()
+	 * @model
+	 * @generated
+	 */
+	String getM_bFramesetModified();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIAnnotation#getM_bFramesetModified <em>MbFrameset Modified</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>MbFrameset Modified</em>' attribute.
+	 * @see #getM_bFramesetModified()
+	 * @generated
+	 */
+	void setM_bFramesetModified(String value);
+
+} // CGIAnnotation
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/CGIArrow.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/CGIArrow.java
new file mode 100755
index 0000000..bdc1648
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/CGIArrow.java
@@ -0,0 +1,334 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel;
+
+import org.eclipse.emf.common.util.EList;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>CGI Arrow</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * </p>
+ * <ul>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIArrow#getM_pModelObject <em>MpModel Object</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIArrow#getM_pParent <em>MpParent</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIArrow#getM_pSource <em>MpSource</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIArrow#getM_sourceType <em>Msource Type</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIArrow#getM_pTarget <em>MpTarget</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIArrow#getM_targetType <em>Mtarget Type</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIArrow#getM_direction <em>Mdirection</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIArrow#getM_rpn <em>Mrpn</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIArrow#getM_anglePoint1 <em>Mangle Point1</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIArrow#getM_anglePoint2 <em>Mangle Point2</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIArrow#getM_line_style <em>Mline style</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIArrow#getM_SourcePort <em>MSource Port</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIArrow#getM_TargetPort <em>MTarget Port</em>}</li>
+ * </ul>
+ *
+ * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIArrow()
+ * @model
+ * @generated
+ */
+public interface CGIArrow extends GraphElementsType {
+	/**
+	 * Returns the value of the '<em><b>MpModel Object</b></em>' reference list.
+	 * The list contents are of type {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UnknownType}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>MpModel Object</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>MpModel Object</em>' reference list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIArrow_M_pModelObject()
+	 * @model
+	 * @generated
+	 */
+	EList<UnknownType> getM_pModelObject();
+
+	/**
+	 * Returns the value of the '<em><b>MpParent</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>MpParent</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>MpParent</em>' attribute.
+	 * @see #setM_pParent(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIArrow_M_pParent()
+	 * @model
+	 * @generated
+	 */
+	String getM_pParent();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIArrow#getM_pParent <em>MpParent</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>MpParent</em>' attribute.
+	 * @see #getM_pParent()
+	 * @generated
+	 */
+	void setM_pParent(String value);
+
+	/**
+	 * Returns the value of the '<em><b>MpSource</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>MpSource</em>' reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>MpSource</em>' reference.
+	 * @see #setM_pSource(CGIComponent)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIArrow_M_pSource()
+	 * @model
+	 * @generated
+	 */
+	CGIComponent getM_pSource();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIArrow#getM_pSource <em>MpSource</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>MpSource</em>' reference.
+	 * @see #getM_pSource()
+	 * @generated
+	 */
+	void setM_pSource(CGIComponent value);
+
+	/**
+	 * Returns the value of the '<em><b>Msource Type</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Msource 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>Msource Type</em>' attribute.
+	 * @see #setM_sourceType(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIArrow_M_sourceType()
+	 * @model
+	 * @generated
+	 */
+	String getM_sourceType();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIArrow#getM_sourceType <em>Msource Type</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Msource Type</em>' attribute.
+	 * @see #getM_sourceType()
+	 * @generated
+	 */
+	void setM_sourceType(String value);
+
+	/**
+	 * Returns the value of the '<em><b>MpTarget</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>MpTarget</em>' reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>MpTarget</em>' reference.
+	 * @see #setM_pTarget(CGIComponent)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIArrow_M_pTarget()
+	 * @model
+	 * @generated
+	 */
+	CGIComponent getM_pTarget();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIArrow#getM_pTarget <em>MpTarget</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>MpTarget</em>' reference.
+	 * @see #getM_pTarget()
+	 * @generated
+	 */
+	void setM_pTarget(CGIComponent value);
+
+	/**
+	 * Returns the value of the '<em><b>Mtarget Type</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Mtarget 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>Mtarget Type</em>' attribute.
+	 * @see #setM_targetType(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIArrow_M_targetType()
+	 * @model
+	 * @generated
+	 */
+	String getM_targetType();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIArrow#getM_targetType <em>Mtarget Type</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Mtarget Type</em>' attribute.
+	 * @see #getM_targetType()
+	 * @generated
+	 */
+	void setM_targetType(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Mdirection</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Mdirection</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Mdirection</em>' attribute.
+	 * @see #setM_direction(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIArrow_M_direction()
+	 * @model
+	 * @generated
+	 */
+	String getM_direction();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIArrow#getM_direction <em>Mdirection</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Mdirection</em>' attribute.
+	 * @see #getM_direction()
+	 * @generated
+	 */
+	void setM_direction(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Mrpn</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Mrpn</em>' containment reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Mrpn</em>' containment reference.
+	 * @see #setM_rpn(CGIText)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIArrow_M_rpn()
+	 * @model containment="true" resolveProxies="true"
+	 * @generated
+	 */
+	CGIText getM_rpn();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIArrow#getM_rpn <em>Mrpn</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Mrpn</em>' containment reference.
+	 * @see #getM_rpn()
+	 * @generated
+	 */
+	void setM_rpn(CGIText value);
+
+	/**
+	 * Returns the value of the '<em><b>Mangle Point1</b></em>' attribute list.
+	 * The list contents are of type {@link java.lang.String}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Mangle Point1</em>' attribute list isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Mangle Point1</em>' attribute list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIArrow_M_anglePoint1()
+	 * @model unique="false"
+	 * @generated
+	 */
+	EList<String> getM_anglePoint1();
+
+	/**
+	 * Returns the value of the '<em><b>Mangle Point2</b></em>' attribute list.
+	 * The list contents are of type {@link java.lang.String}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Mangle Point2</em>' attribute list isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Mangle Point2</em>' attribute list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIArrow_M_anglePoint2()
+	 * @model unique="false"
+	 * @generated
+	 */
+	EList<String> getM_anglePoint2();
+
+	/**
+	 * Returns the value of the '<em><b>Mline style</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Mline style</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Mline style</em>' attribute.
+	 * @see #setM_line_style(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIArrow_M_line_style()
+	 * @model
+	 * @generated
+	 */
+	String getM_line_style();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIArrow#getM_line_style <em>Mline style</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Mline style</em>' attribute.
+	 * @see #getM_line_style()
+	 * @generated
+	 */
+	void setM_line_style(String value);
+
+	/**
+	 * Returns the value of the '<em><b>MSource Port</b></em>' attribute list.
+	 * The list contents are of type {@link java.lang.String}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>MSource Port</em>' attribute list isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>MSource Port</em>' attribute list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIArrow_M_SourcePort()
+	 * @model unique="false"
+	 * @generated
+	 */
+	EList<String> getM_SourcePort();
+
+	/**
+	 * Returns the value of the '<em><b>MTarget Port</b></em>' attribute list.
+	 * The list contents are of type {@link java.lang.String}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>MTarget Port</em>' attribute list isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>MTarget Port</em>' attribute list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIArrow_M_TargetPort()
+	 * @model unique="false"
+	 * @generated
+	 */
+	EList<String> getM_TargetPort();
+
+} // CGIArrow
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/CGIAssociationEnd.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/CGIAssociationEnd.java
new file mode 100755
index 0000000..3fee713
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/CGIAssociationEnd.java
@@ -0,0 +1,901 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel;
+
+import org.eclipse.emf.common.util.EList;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>CGI Association End</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * </p>
+ * <ul>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIAssociationEnd#getProperties <em>Properties</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIAssociationEnd#getM_pModelObject <em>MpModel Object</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIAssociationEnd#getM_pParent <em>MpParent</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIAssociationEnd#getM_pSource <em>MpSource</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIAssociationEnd#getM_sourceType <em>Msource Type</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIAssociationEnd#getM_pTarget <em>MpTarget</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIAssociationEnd#getM_targetType <em>Mtarget Type</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIAssociationEnd#getM_direction <em>Mdirection</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIAssociationEnd#getM_rpn <em>Mrpn</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIAssociationEnd#getM_anglePoint1 <em>Mangle Point1</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIAssociationEnd#getM_anglePoint2 <em>Mangle Point2</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIAssociationEnd#getM_line_style <em>Mline style</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIAssociationEnd#getM_SourcePort <em>MSource Port</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIAssociationEnd#getM_TargetPort <em>MTarget Port</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIAssociationEnd#getM_pInverseModelObject <em>MpInverse Model Object</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIAssociationEnd#getM_pInstance <em>MpInstance</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIAssociationEnd#getM_pInverseInstance <em>MpInverse Instance</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIAssociationEnd#getM_bShowSourceMultiplicity <em>MbShow Source Multiplicity</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIAssociationEnd#getM_bShowSourceRole <em>MbShow Source Role</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIAssociationEnd#getM_bShowTargetMultiplicity <em>MbShow Target Multiplicity</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIAssociationEnd#getM_bShowTargetRole <em>MbShow Target Role</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIAssociationEnd#getM_bShowLinkName <em>MbShow Link Name</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIAssociationEnd#getM_bShowSpecificType <em>MbShow Specific Type</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIAssociationEnd#getM_bInstance <em>MbInstance</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIAssociationEnd#getM_bShowQualifier1 <em>MbShow Qualifier1</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIAssociationEnd#getM_bShowQualifier2 <em>MbShow Qualifier2</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIAssociationEnd#getM_sourceRole <em>Msource Role</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIAssociationEnd#getM_targetRole <em>Mtarget Role</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIAssociationEnd#getM_sourceMultiplicity <em>Msource Multiplicity</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIAssociationEnd#getM_targetMultiplicity <em>Mtarget Multiplicity</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIAssociationEnd#getM_sourceQualifier <em>Msource Qualifier</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIAssociationEnd#getM_targetQualifier <em>Mtarget Qualifier</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIAssociationEnd#getM_specificType <em>Mspecific Type</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIAssociationEnd#getM_arrow <em>Marrow</em>}</li>
+ * </ul>
+ *
+ * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIAssociationEnd()
+ * @model
+ * @generated
+ */
+public interface CGIAssociationEnd extends GraphElementsType {
+	/**
+	 * Returns the value of the '<em><b>Properties</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Properties</em>' containment reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Properties</em>' containment reference.
+	 * @see #setProperties(IPropertyContainer)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIAssociationEnd_Properties()
+	 * @model containment="true" resolveProxies="true"
+	 * @generated
+	 */
+	IPropertyContainer getProperties();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIAssociationEnd#getProperties <em>Properties</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Properties</em>' containment reference.
+	 * @see #getProperties()
+	 * @generated
+	 */
+	void setProperties(IPropertyContainer value);
+
+	/**
+	 * Returns the value of the '<em><b>MpModel Object</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>MpModel Object</em>' reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>MpModel Object</em>' reference.
+	 * @see #setM_pModelObject(M_pModelObjectType)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIAssociationEnd_M_pModelObject()
+	 * @model
+	 * @generated
+	 */
+	M_pModelObjectType getM_pModelObject();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIAssociationEnd#getM_pModelObject <em>MpModel Object</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>MpModel Object</em>' reference.
+	 * @see #getM_pModelObject()
+	 * @generated
+	 */
+	void setM_pModelObject(M_pModelObjectType value);
+
+	/**
+	 * Returns the value of the '<em><b>MpParent</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>MpParent</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>MpParent</em>' attribute.
+	 * @see #setM_pParent(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIAssociationEnd_M_pParent()
+	 * @model
+	 * @generated
+	 */
+	String getM_pParent();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIAssociationEnd#getM_pParent <em>MpParent</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>MpParent</em>' attribute.
+	 * @see #getM_pParent()
+	 * @generated
+	 */
+	void setM_pParent(String value);
+
+	/**
+	 * Returns the value of the '<em><b>MpSource</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>MpSource</em>' reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>MpSource</em>' reference.
+	 * @see #setM_pSource(M_pRootType)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIAssociationEnd_M_pSource()
+	 * @model
+	 * @generated
+	 */
+	M_pRootType getM_pSource();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIAssociationEnd#getM_pSource <em>MpSource</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>MpSource</em>' reference.
+	 * @see #getM_pSource()
+	 * @generated
+	 */
+	void setM_pSource(M_pRootType value);
+
+	/**
+	 * Returns the value of the '<em><b>Msource Type</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Msource 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>Msource Type</em>' attribute.
+	 * @see #setM_sourceType(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIAssociationEnd_M_sourceType()
+	 * @model
+	 * @generated
+	 */
+	String getM_sourceType();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIAssociationEnd#getM_sourceType <em>Msource Type</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Msource Type</em>' attribute.
+	 * @see #getM_sourceType()
+	 * @generated
+	 */
+	void setM_sourceType(String value);
+
+	/**
+	 * Returns the value of the '<em><b>MpTarget</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>MpTarget</em>' reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>MpTarget</em>' reference.
+	 * @see #setM_pTarget(M_pRootType)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIAssociationEnd_M_pTarget()
+	 * @model
+	 * @generated
+	 */
+	M_pRootType getM_pTarget();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIAssociationEnd#getM_pTarget <em>MpTarget</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>MpTarget</em>' reference.
+	 * @see #getM_pTarget()
+	 * @generated
+	 */
+	void setM_pTarget(M_pRootType value);
+
+	/**
+	 * Returns the value of the '<em><b>Mtarget Type</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Mtarget 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>Mtarget Type</em>' attribute.
+	 * @see #setM_targetType(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIAssociationEnd_M_targetType()
+	 * @model
+	 * @generated
+	 */
+	String getM_targetType();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIAssociationEnd#getM_targetType <em>Mtarget Type</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Mtarget Type</em>' attribute.
+	 * @see #getM_targetType()
+	 * @generated
+	 */
+	void setM_targetType(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Mdirection</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Mdirection</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Mdirection</em>' attribute.
+	 * @see #setM_direction(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIAssociationEnd_M_direction()
+	 * @model
+	 * @generated
+	 */
+	String getM_direction();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIAssociationEnd#getM_direction <em>Mdirection</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Mdirection</em>' attribute.
+	 * @see #getM_direction()
+	 * @generated
+	 */
+	void setM_direction(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Mrpn</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Mrpn</em>' containment reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Mrpn</em>' containment reference.
+	 * @see #setM_rpn(CGIText)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIAssociationEnd_M_rpn()
+	 * @model containment="true" resolveProxies="true"
+	 * @generated
+	 */
+	CGIText getM_rpn();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIAssociationEnd#getM_rpn <em>Mrpn</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Mrpn</em>' containment reference.
+	 * @see #getM_rpn()
+	 * @generated
+	 */
+	void setM_rpn(CGIText value);
+
+	/**
+	 * Returns the value of the '<em><b>Mangle Point1</b></em>' attribute list.
+	 * The list contents are of type {@link java.lang.String}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Mangle Point1</em>' attribute list isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Mangle Point1</em>' attribute list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIAssociationEnd_M_anglePoint1()
+	 * @model unique="false"
+	 * @generated
+	 */
+	EList<String> getM_anglePoint1();
+
+	/**
+	 * Returns the value of the '<em><b>Mangle Point2</b></em>' attribute list.
+	 * The list contents are of type {@link java.lang.String}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Mangle Point2</em>' attribute list isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Mangle Point2</em>' attribute list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIAssociationEnd_M_anglePoint2()
+	 * @model unique="false"
+	 * @generated
+	 */
+	EList<String> getM_anglePoint2();
+
+	/**
+	 * Returns the value of the '<em><b>Mline style</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Mline style</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Mline style</em>' attribute.
+	 * @see #setM_line_style(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIAssociationEnd_M_line_style()
+	 * @model
+	 * @generated
+	 */
+	String getM_line_style();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIAssociationEnd#getM_line_style <em>Mline style</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Mline style</em>' attribute.
+	 * @see #getM_line_style()
+	 * @generated
+	 */
+	void setM_line_style(String value);
+
+	/**
+	 * Returns the value of the '<em><b>MSource Port</b></em>' attribute list.
+	 * The list contents are of type {@link java.lang.String}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>MSource Port</em>' attribute list isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>MSource Port</em>' attribute list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIAssociationEnd_M_SourcePort()
+	 * @model unique="false"
+	 * @generated
+	 */
+	EList<String> getM_SourcePort();
+
+	/**
+	 * Returns the value of the '<em><b>MTarget Port</b></em>' attribute list.
+	 * The list contents are of type {@link java.lang.String}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>MTarget Port</em>' attribute list isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>MTarget Port</em>' attribute list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIAssociationEnd_M_TargetPort()
+	 * @model unique="false"
+	 * @generated
+	 */
+	EList<String> getM_TargetPort();
+
+	/**
+	 * Returns the value of the '<em><b>MpInverse Model Object</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>MpInverse Model Object</em>' containment reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>MpInverse Model Object</em>' containment reference.
+	 * @see #setM_pInverseModelObject(IAssociationEndHandle)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIAssociationEnd_M_pInverseModelObject()
+	 * @model containment="true" resolveProxies="true"
+	 * @generated
+	 */
+	IAssociationEndHandle getM_pInverseModelObject();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIAssociationEnd#getM_pInverseModelObject <em>MpInverse Model Object</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>MpInverse Model Object</em>' containment reference.
+	 * @see #getM_pInverseModelObject()
+	 * @generated
+	 */
+	void setM_pInverseModelObject(IAssociationEndHandle value);
+
+	/**
+	 * Returns the value of the '<em><b>MpInstance</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>MpInstance</em>' containment reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>MpInstance</em>' containment reference.
+	 * @see #setM_pInstance(IObjectLinkHandle)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIAssociationEnd_M_pInstance()
+	 * @model containment="true" resolveProxies="true"
+	 * @generated
+	 */
+	IObjectLinkHandle getM_pInstance();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIAssociationEnd#getM_pInstance <em>MpInstance</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>MpInstance</em>' containment reference.
+	 * @see #getM_pInstance()
+	 * @generated
+	 */
+	void setM_pInstance(IObjectLinkHandle value);
+
+	/**
+	 * Returns the value of the '<em><b>MpInverse Instance</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>MpInverse Instance</em>' containment reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>MpInverse Instance</em>' containment reference.
+	 * @see #setM_pInverseInstance(IObjectLinkHandle)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIAssociationEnd_M_pInverseInstance()
+	 * @model containment="true" resolveProxies="true"
+	 * @generated
+	 */
+	IObjectLinkHandle getM_pInverseInstance();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIAssociationEnd#getM_pInverseInstance <em>MpInverse Instance</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>MpInverse Instance</em>' containment reference.
+	 * @see #getM_pInverseInstance()
+	 * @generated
+	 */
+	void setM_pInverseInstance(IObjectLinkHandle value);
+
+	/**
+	 * Returns the value of the '<em><b>MbShow Source Multiplicity</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>MbShow Source Multiplicity</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>MbShow Source Multiplicity</em>' attribute.
+	 * @see #setM_bShowSourceMultiplicity(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIAssociationEnd_M_bShowSourceMultiplicity()
+	 * @model
+	 * @generated
+	 */
+	String getM_bShowSourceMultiplicity();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIAssociationEnd#getM_bShowSourceMultiplicity <em>MbShow Source Multiplicity</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>MbShow Source Multiplicity</em>' attribute.
+	 * @see #getM_bShowSourceMultiplicity()
+	 * @generated
+	 */
+	void setM_bShowSourceMultiplicity(String value);
+
+	/**
+	 * Returns the value of the '<em><b>MbShow Source Role</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>MbShow Source Role</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>MbShow Source Role</em>' attribute.
+	 * @see #setM_bShowSourceRole(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIAssociationEnd_M_bShowSourceRole()
+	 * @model
+	 * @generated
+	 */
+	String getM_bShowSourceRole();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIAssociationEnd#getM_bShowSourceRole <em>MbShow Source Role</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>MbShow Source Role</em>' attribute.
+	 * @see #getM_bShowSourceRole()
+	 * @generated
+	 */
+	void setM_bShowSourceRole(String value);
+
+	/**
+	 * Returns the value of the '<em><b>MbShow Target Multiplicity</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>MbShow Target Multiplicity</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>MbShow Target Multiplicity</em>' attribute.
+	 * @see #setM_bShowTargetMultiplicity(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIAssociationEnd_M_bShowTargetMultiplicity()
+	 * @model
+	 * @generated
+	 */
+	String getM_bShowTargetMultiplicity();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIAssociationEnd#getM_bShowTargetMultiplicity <em>MbShow Target Multiplicity</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>MbShow Target Multiplicity</em>' attribute.
+	 * @see #getM_bShowTargetMultiplicity()
+	 * @generated
+	 */
+	void setM_bShowTargetMultiplicity(String value);
+
+	/**
+	 * Returns the value of the '<em><b>MbShow Target Role</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>MbShow Target Role</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>MbShow Target Role</em>' attribute.
+	 * @see #setM_bShowTargetRole(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIAssociationEnd_M_bShowTargetRole()
+	 * @model
+	 * @generated
+	 */
+	String getM_bShowTargetRole();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIAssociationEnd#getM_bShowTargetRole <em>MbShow Target Role</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>MbShow Target Role</em>' attribute.
+	 * @see #getM_bShowTargetRole()
+	 * @generated
+	 */
+	void setM_bShowTargetRole(String value);
+
+	/**
+	 * Returns the value of the '<em><b>MbShow Link Name</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>MbShow Link Name</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>MbShow Link Name</em>' attribute.
+	 * @see #setM_bShowLinkName(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIAssociationEnd_M_bShowLinkName()
+	 * @model
+	 * @generated
+	 */
+	String getM_bShowLinkName();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIAssociationEnd#getM_bShowLinkName <em>MbShow Link Name</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>MbShow Link Name</em>' attribute.
+	 * @see #getM_bShowLinkName()
+	 * @generated
+	 */
+	void setM_bShowLinkName(String value);
+
+	/**
+	 * Returns the value of the '<em><b>MbShow Specific Type</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>MbShow Specific 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>MbShow Specific Type</em>' attribute.
+	 * @see #setM_bShowSpecificType(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIAssociationEnd_M_bShowSpecificType()
+	 * @model
+	 * @generated
+	 */
+	String getM_bShowSpecificType();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIAssociationEnd#getM_bShowSpecificType <em>MbShow Specific Type</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>MbShow Specific Type</em>' attribute.
+	 * @see #getM_bShowSpecificType()
+	 * @generated
+	 */
+	void setM_bShowSpecificType(String value);
+
+	/**
+	 * Returns the value of the '<em><b>MbInstance</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>MbInstance</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>MbInstance</em>' attribute.
+	 * @see #setM_bInstance(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIAssociationEnd_M_bInstance()
+	 * @model
+	 * @generated
+	 */
+	String getM_bInstance();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIAssociationEnd#getM_bInstance <em>MbInstance</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>MbInstance</em>' attribute.
+	 * @see #getM_bInstance()
+	 * @generated
+	 */
+	void setM_bInstance(String value);
+
+	/**
+	 * Returns the value of the '<em><b>MbShow Qualifier1</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>MbShow Qualifier1</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>MbShow Qualifier1</em>' attribute.
+	 * @see #setM_bShowQualifier1(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIAssociationEnd_M_bShowQualifier1()
+	 * @model
+	 * @generated
+	 */
+	String getM_bShowQualifier1();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIAssociationEnd#getM_bShowQualifier1 <em>MbShow Qualifier1</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>MbShow Qualifier1</em>' attribute.
+	 * @see #getM_bShowQualifier1()
+	 * @generated
+	 */
+	void setM_bShowQualifier1(String value);
+
+	/**
+	 * Returns the value of the '<em><b>MbShow Qualifier2</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>MbShow Qualifier2</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>MbShow Qualifier2</em>' attribute.
+	 * @see #setM_bShowQualifier2(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIAssociationEnd_M_bShowQualifier2()
+	 * @model
+	 * @generated
+	 */
+	String getM_bShowQualifier2();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIAssociationEnd#getM_bShowQualifier2 <em>MbShow Qualifier2</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>MbShow Qualifier2</em>' attribute.
+	 * @see #getM_bShowQualifier2()
+	 * @generated
+	 */
+	void setM_bShowQualifier2(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Msource Role</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Msource Role</em>' containment reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Msource Role</em>' containment reference.
+	 * @see #setM_sourceRole(CGIText)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIAssociationEnd_M_sourceRole()
+	 * @model containment="true" resolveProxies="true"
+	 * @generated
+	 */
+	CGIText getM_sourceRole();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIAssociationEnd#getM_sourceRole <em>Msource Role</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Msource Role</em>' containment reference.
+	 * @see #getM_sourceRole()
+	 * @generated
+	 */
+	void setM_sourceRole(CGIText value);
+
+	/**
+	 * Returns the value of the '<em><b>Mtarget Role</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Mtarget Role</em>' containment reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Mtarget Role</em>' containment reference.
+	 * @see #setM_targetRole(CGIText)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIAssociationEnd_M_targetRole()
+	 * @model containment="true" resolveProxies="true"
+	 * @generated
+	 */
+	CGIText getM_targetRole();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIAssociationEnd#getM_targetRole <em>Mtarget Role</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Mtarget Role</em>' containment reference.
+	 * @see #getM_targetRole()
+	 * @generated
+	 */
+	void setM_targetRole(CGIText value);
+
+	/**
+	 * Returns the value of the '<em><b>Msource Multiplicity</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Msource Multiplicity</em>' containment reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Msource Multiplicity</em>' containment reference.
+	 * @see #setM_sourceMultiplicity(CGIText)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIAssociationEnd_M_sourceMultiplicity()
+	 * @model containment="true" resolveProxies="true"
+	 * @generated
+	 */
+	CGIText getM_sourceMultiplicity();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIAssociationEnd#getM_sourceMultiplicity <em>Msource Multiplicity</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Msource Multiplicity</em>' containment reference.
+	 * @see #getM_sourceMultiplicity()
+	 * @generated
+	 */
+	void setM_sourceMultiplicity(CGIText value);
+
+	/**
+	 * Returns the value of the '<em><b>Mtarget Multiplicity</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Mtarget Multiplicity</em>' containment reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Mtarget Multiplicity</em>' containment reference.
+	 * @see #setM_targetMultiplicity(CGIText)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIAssociationEnd_M_targetMultiplicity()
+	 * @model containment="true" resolveProxies="true"
+	 * @generated
+	 */
+	CGIText getM_targetMultiplicity();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIAssociationEnd#getM_targetMultiplicity <em>Mtarget Multiplicity</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Mtarget Multiplicity</em>' containment reference.
+	 * @see #getM_targetMultiplicity()
+	 * @generated
+	 */
+	void setM_targetMultiplicity(CGIText value);
+
+	/**
+	 * Returns the value of the '<em><b>Msource Qualifier</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Msource Qualifier</em>' containment reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Msource Qualifier</em>' containment reference.
+	 * @see #setM_sourceQualifier(CGIText)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIAssociationEnd_M_sourceQualifier()
+	 * @model containment="true" resolveProxies="true"
+	 * @generated
+	 */
+	CGIText getM_sourceQualifier();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIAssociationEnd#getM_sourceQualifier <em>Msource Qualifier</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Msource Qualifier</em>' containment reference.
+	 * @see #getM_sourceQualifier()
+	 * @generated
+	 */
+	void setM_sourceQualifier(CGIText value);
+
+	/**
+	 * Returns the value of the '<em><b>Mtarget Qualifier</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Mtarget Qualifier</em>' containment reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Mtarget Qualifier</em>' containment reference.
+	 * @see #setM_targetQualifier(CGIText)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIAssociationEnd_M_targetQualifier()
+	 * @model containment="true" resolveProxies="true"
+	 * @generated
+	 */
+	CGIText getM_targetQualifier();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIAssociationEnd#getM_targetQualifier <em>Mtarget Qualifier</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Mtarget Qualifier</em>' containment reference.
+	 * @see #getM_targetQualifier()
+	 * @generated
+	 */
+	void setM_targetQualifier(CGIText value);
+
+	/**
+	 * Returns the value of the '<em><b>Mspecific Type</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Mspecific 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>Mspecific Type</em>' attribute.
+	 * @see #setM_specificType(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIAssociationEnd_M_specificType()
+	 * @model
+	 * @generated
+	 */
+	String getM_specificType();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIAssociationEnd#getM_specificType <em>Mspecific Type</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Mspecific Type</em>' attribute.
+	 * @see #getM_specificType()
+	 * @generated
+	 */
+	void setM_specificType(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Marrow</b></em>' attribute list.
+	 * The list contents are of type {@link java.lang.String}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Marrow</em>' attribute list isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Marrow</em>' attribute list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIAssociationEnd_M_arrow()
+	 * @model unique="false"
+	 * @generated
+	 */
+	EList<String> getM_arrow();
+
+} // CGIAssociationEnd
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/CGIAssociationRole.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/CGIAssociationRole.java
new file mode 100755
index 0000000..c5272b1
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/CGIAssociationRole.java
@@ -0,0 +1,388 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel;
+
+import org.eclipse.emf.common.util.EList;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>CGI Association Role</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * </p>
+ * <ul>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIAssociationRole#getM_pModelObject <em>MpModel Object</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIAssociationRole#getM_pParent <em>MpParent</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIAssociationRole#getM_pSource <em>MpSource</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIAssociationRole#getM_sourceType <em>Msource Type</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIAssociationRole#getM_pTarget <em>MpTarget</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIAssociationRole#getM_targetType <em>Mtarget Type</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIAssociationRole#getM_direction <em>Mdirection</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIAssociationRole#getM_rpn <em>Mrpn</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIAssociationRole#getM_anglePoint1 <em>Mangle Point1</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIAssociationRole#getM_anglePoint2 <em>Mangle Point2</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIAssociationRole#getM_line_style <em>Mline style</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIAssociationRole#getM_SourcePort <em>MSource Port</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIAssociationRole#getM_TargetPort <em>MTarget Port</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIAssociationRole#getM_arrow <em>Marrow</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIAssociationRole#getProperties <em>Properties</em>}</li>
+ * </ul>
+ *
+ * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIAssociationRole()
+ * @model
+ * @generated
+ */
+public interface CGIAssociationRole extends GraphElementsType {
+	/**
+	 * Returns the value of the '<em><b>MpModel Object</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>MpModel Object</em>' reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>MpModel Object</em>' reference.
+	 * @see #setM_pModelObject(IAssociationRole)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIAssociationRole_M_pModelObject()
+	 * @model
+	 * @generated
+	 */
+	IAssociationRole getM_pModelObject();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIAssociationRole#getM_pModelObject <em>MpModel Object</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>MpModel Object</em>' reference.
+	 * @see #getM_pModelObject()
+	 * @generated
+	 */
+	void setM_pModelObject(IAssociationRole value);
+
+	/**
+	 * Returns the value of the '<em><b>MpParent</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>MpParent</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>MpParent</em>' attribute.
+	 * @see #setM_pParent(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIAssociationRole_M_pParent()
+	 * @model
+	 * @generated
+	 */
+	String getM_pParent();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIAssociationRole#getM_pParent <em>MpParent</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>MpParent</em>' attribute.
+	 * @see #getM_pParent()
+	 * @generated
+	 */
+	void setM_pParent(String value);
+
+	/**
+	 * Returns the value of the '<em><b>MpSource</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>MpSource</em>' reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>MpSource</em>' reference.
+	 * @see #setM_pSource(CGIClassifierRole)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIAssociationRole_M_pSource()
+	 * @model
+	 * @generated
+	 */
+	CGIClassifierRole getM_pSource();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIAssociationRole#getM_pSource <em>MpSource</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>MpSource</em>' reference.
+	 * @see #getM_pSource()
+	 * @generated
+	 */
+	void setM_pSource(CGIClassifierRole value);
+
+	/**
+	 * Returns the value of the '<em><b>Msource Type</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Msource 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>Msource Type</em>' attribute.
+	 * @see #setM_sourceType(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIAssociationRole_M_sourceType()
+	 * @model
+	 * @generated
+	 */
+	String getM_sourceType();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIAssociationRole#getM_sourceType <em>Msource Type</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Msource Type</em>' attribute.
+	 * @see #getM_sourceType()
+	 * @generated
+	 */
+	void setM_sourceType(String value);
+
+	/**
+	 * Returns the value of the '<em><b>MpTarget</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>MpTarget</em>' reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>MpTarget</em>' reference.
+	 * @see #setM_pTarget(CGIClassifierRole)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIAssociationRole_M_pTarget()
+	 * @model
+	 * @generated
+	 */
+	CGIClassifierRole getM_pTarget();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIAssociationRole#getM_pTarget <em>MpTarget</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>MpTarget</em>' reference.
+	 * @see #getM_pTarget()
+	 * @generated
+	 */
+	void setM_pTarget(CGIClassifierRole value);
+
+	/**
+	 * Returns the value of the '<em><b>Mtarget Type</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Mtarget 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>Mtarget Type</em>' attribute.
+	 * @see #setM_targetType(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIAssociationRole_M_targetType()
+	 * @model
+	 * @generated
+	 */
+	String getM_targetType();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIAssociationRole#getM_targetType <em>Mtarget Type</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Mtarget Type</em>' attribute.
+	 * @see #getM_targetType()
+	 * @generated
+	 */
+	void setM_targetType(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Mdirection</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Mdirection</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Mdirection</em>' attribute.
+	 * @see #setM_direction(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIAssociationRole_M_direction()
+	 * @model
+	 * @generated
+	 */
+	String getM_direction();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIAssociationRole#getM_direction <em>Mdirection</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Mdirection</em>' attribute.
+	 * @see #getM_direction()
+	 * @generated
+	 */
+	void setM_direction(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Mrpn</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Mrpn</em>' containment reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Mrpn</em>' containment reference.
+	 * @see #setM_rpn(CGIText)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIAssociationRole_M_rpn()
+	 * @model containment="true" resolveProxies="true"
+	 * @generated
+	 */
+	CGIText getM_rpn();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIAssociationRole#getM_rpn <em>Mrpn</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Mrpn</em>' containment reference.
+	 * @see #getM_rpn()
+	 * @generated
+	 */
+	void setM_rpn(CGIText value);
+
+	/**
+	 * Returns the value of the '<em><b>Mangle Point1</b></em>' attribute list.
+	 * The list contents are of type {@link java.lang.String}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Mangle Point1</em>' attribute list isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Mangle Point1</em>' attribute list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIAssociationRole_M_anglePoint1()
+	 * @model unique="false"
+	 * @generated
+	 */
+	EList<String> getM_anglePoint1();
+
+	/**
+	 * Returns the value of the '<em><b>Mangle Point2</b></em>' attribute list.
+	 * The list contents are of type {@link java.lang.String}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Mangle Point2</em>' attribute list isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Mangle Point2</em>' attribute list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIAssociationRole_M_anglePoint2()
+	 * @model unique="false"
+	 * @generated
+	 */
+	EList<String> getM_anglePoint2();
+
+	/**
+	 * Returns the value of the '<em><b>Mline style</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Mline style</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Mline style</em>' attribute.
+	 * @see #setM_line_style(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIAssociationRole_M_line_style()
+	 * @model
+	 * @generated
+	 */
+	String getM_line_style();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIAssociationRole#getM_line_style <em>Mline style</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Mline style</em>' attribute.
+	 * @see #getM_line_style()
+	 * @generated
+	 */
+	void setM_line_style(String value);
+
+	/**
+	 * Returns the value of the '<em><b>MSource Port</b></em>' attribute list.
+	 * The list contents are of type {@link java.lang.String}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>MSource Port</em>' attribute list isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>MSource Port</em>' attribute list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIAssociationRole_M_SourcePort()
+	 * @model unique="false"
+	 * @generated
+	 */
+	EList<String> getM_SourcePort();
+
+	/**
+	 * Returns the value of the '<em><b>MTarget Port</b></em>' attribute list.
+	 * The list contents are of type {@link java.lang.String}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>MTarget Port</em>' attribute list isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>MTarget Port</em>' attribute list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIAssociationRole_M_TargetPort()
+	 * @model unique="false"
+	 * @generated
+	 */
+	EList<String> getM_TargetPort();
+
+	/**
+	 * Returns the value of the '<em><b>Marrow</b></em>' attribute list.
+	 * The list contents are of type {@link java.lang.String}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Marrow</em>' attribute list isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Marrow</em>' attribute list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIAssociationRole_M_arrow()
+	 * @model unique="false"
+	 * @generated
+	 */
+	EList<String> getM_arrow();
+
+	/**
+	 * Returns the value of the '<em><b>Properties</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Properties</em>' containment reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Properties</em>' containment reference.
+	 * @see #setProperties(IPropertyContainer)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIAssociationRole_Properties()
+	 * @model containment="true" resolveProxies="true"
+	 * @generated
+	 */
+	IPropertyContainer getProperties();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIAssociationRole#getProperties <em>Properties</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Properties</em>' containment reference.
+	 * @see #getProperties()
+	 * @generated
+	 */
+	void setProperties(IPropertyContainer value);
+
+} // CGIAssociationRole
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/CGIBasicClass.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/CGIBasicClass.java
new file mode 100755
index 0000000..013f73e
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/CGIBasicClass.java
@@ -0,0 +1,273 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel;
+
+import org.eclipse.emf.common.util.EList;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>CGI Basic Class</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * </p>
+ * <ul>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIBasicClass#getM_pModelObject <em>MpModel Object</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIBasicClass#getM_pParent <em>MpParent</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIBasicClass#getM_transform <em>Mtransform</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIBasicClass#getM_AdditionalLabel <em>MAdditional Label</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIBasicClass#getM_polygon <em>Mpolygon</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIBasicClass#getM_nNameFormat <em>MnName Format</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIBasicClass#getM_nIsNameFormat <em>MnIs Name Format</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIBasicClass#getCompartments <em>Compartments</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIBasicClass#getProperties <em>Properties</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIBasicClass#getM_pImageViewData <em>MpImage View Data</em>}</li>
+ * </ul>
+ *
+ * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIBasicClass()
+ * @model
+ * @generated
+ */
+public interface CGIBasicClass extends GraphElementsType {
+	/**
+	 * Returns the value of the '<em><b>MpModel Object</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>MpModel Object</em>' reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>MpModel Object</em>' reference.
+	 * @see #setM_pModelObject(IClassifier)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIBasicClass_M_pModelObject()
+	 * @model
+	 * @generated
+	 */
+	IClassifier getM_pModelObject();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIBasicClass#getM_pModelObject <em>MpModel Object</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>MpModel Object</em>' reference.
+	 * @see #getM_pModelObject()
+	 * @generated
+	 */
+	void setM_pModelObject(IClassifier value);
+
+	/**
+	 * Returns the value of the '<em><b>MpParent</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>MpParent</em>' reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>MpParent</em>' reference.
+	 * @see #setM_pParent(GraphElementsType)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIBasicClass_M_pParent()
+	 * @model
+	 * @generated
+	 */
+	GraphElementsType getM_pParent();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIBasicClass#getM_pParent <em>MpParent</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>MpParent</em>' reference.
+	 * @see #getM_pParent()
+	 * @generated
+	 */
+	void setM_pParent(GraphElementsType value);
+
+	/**
+	 * Returns the value of the '<em><b>Mtransform</b></em>' attribute list.
+	 * The list contents are of type {@link java.lang.String}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Mtransform</em>' attribute list isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Mtransform</em>' attribute list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIBasicClass_M_transform()
+	 * @model unique="false"
+	 * @generated
+	 */
+	EList<String> getM_transform();
+
+	/**
+	 * Returns the value of the '<em><b>MAdditional Label</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>MAdditional Label</em>' containment reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>MAdditional Label</em>' containment reference.
+	 * @see #setM_AdditionalLabel(CGIText)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIBasicClass_M_AdditionalLabel()
+	 * @model containment="true" resolveProxies="true"
+	 * @generated
+	 */
+	CGIText getM_AdditionalLabel();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIBasicClass#getM_AdditionalLabel <em>MAdditional Label</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>MAdditional Label</em>' containment reference.
+	 * @see #getM_AdditionalLabel()
+	 * @generated
+	 */
+	void setM_AdditionalLabel(CGIText value);
+
+	/**
+	 * Returns the value of the '<em><b>Mpolygon</b></em>' attribute list.
+	 * The list contents are of type {@link java.lang.String}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Mpolygon</em>' attribute list isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Mpolygon</em>' attribute list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIBasicClass_M_polygon()
+	 * @model unique="false"
+	 * @generated
+	 */
+	EList<String> getM_polygon();
+
+	/**
+	 * Returns the value of the '<em><b>MnName Format</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>MnName Format</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>MnName Format</em>' attribute.
+	 * @see #setM_nNameFormat(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIBasicClass_M_nNameFormat()
+	 * @model
+	 * @generated
+	 */
+	String getM_nNameFormat();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIBasicClass#getM_nNameFormat <em>MnName Format</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>MnName Format</em>' attribute.
+	 * @see #getM_nNameFormat()
+	 * @generated
+	 */
+	void setM_nNameFormat(String value);
+
+	/**
+	 * Returns the value of the '<em><b>MnIs Name Format</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>MnIs Name Format</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>MnIs Name Format</em>' attribute.
+	 * @see #setM_nIsNameFormat(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIBasicClass_M_nIsNameFormat()
+	 * @model
+	 * @generated
+	 */
+	String getM_nIsNameFormat();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIBasicClass#getM_nIsNameFormat <em>MnIs Name Format</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>MnIs Name Format</em>' attribute.
+	 * @see #getM_nIsNameFormat()
+	 * @generated
+	 */
+	void setM_nIsNameFormat(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Compartments</b></em>' reference list.
+	 * The list contents are of type {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UnknownType}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Compartments</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>Compartments</em>' reference list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIBasicClass_Compartments()
+	 * @model
+	 * @generated
+	 */
+	EList<UnknownType> getCompartments();
+
+	/**
+	 * Returns the value of the '<em><b>Properties</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Properties</em>' containment reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Properties</em>' containment reference.
+	 * @see #setProperties(IPropertyContainer)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIBasicClass_Properties()
+	 * @model containment="true" resolveProxies="true"
+	 * @generated
+	 */
+	IPropertyContainer getProperties();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIBasicClass#getProperties <em>Properties</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Properties</em>' containment reference.
+	 * @see #getProperties()
+	 * @generated
+	 */
+	void setProperties(IPropertyContainer value);
+
+	/**
+	 * Returns the value of the '<em><b>MpImage View Data</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>MpImage View Data</em>' reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>MpImage View Data</em>' reference.
+	 * @see #setM_pImageViewData(CGIImageData)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIBasicClass_M_pImageViewData()
+	 * @model
+	 * @generated
+	 */
+	CGIImageData getM_pImageViewData();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIBasicClass#getM_pImageViewData <em>MpImage View Data</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>MpImage View Data</em>' reference.
+	 * @see #getM_pImageViewData()
+	 * @generated
+	 */
+	void setM_pImageViewData(CGIImageData value);
+
+} // CGIBasicClass
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/CGIBlockState.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/CGIBlockState.java
new file mode 100755
index 0000000..9614d0f
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/CGIBlockState.java
@@ -0,0 +1,462 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel;
+
+import org.eclipse.emf.common.util.EList;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>CGI Block State</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * </p>
+ * <ul>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIBlockState#getM_pModelObject <em>MpModel Object</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIBlockState#getM_pParent <em>MpParent</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIBlockState#getM_transform <em>Mtransform</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIBlockState#getM_polygon <em>Mpolygon</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIBlockState#getM_nNameFormat <em>MnName Format</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIBlockState#getM_nIsNameFormat <em>MnIs Name Format</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIBlockState#getNAndLineCount <em>NAnd Line Count</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIBlockState#getM_pInheritsFrom <em>MpInherits From</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIBlockState#getM_nInheritanceMask <em>MnInheritance Mask</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIBlockState#getM_pDefaultComponentRelation <em>MpDefault Component Relation</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIBlockState#getM_NameDisplayMode <em>MName Display Mode</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIBlockState#getM_ActDescLablDiaplayMode <em>MAct Desc Labl Diaplay Mode</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIBlockState#getProperties <em>Properties</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIBlockState#getM_AdditionalLabel <em>MAdditional Label</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIBlockState#getM_moveAndLineTimeStamp <em>Mmove And Line Time Stamp</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIBlockState#getCompartments <em>Compartments</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIBlockState#getFrameset <em>Frameset</em>}</li>
+ * </ul>
+ *
+ * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIBlockState()
+ * @model
+ * @generated
+ */
+public interface CGIBlockState extends GraphElementsType {
+	/**
+	 * Returns the value of the '<em><b>MpModel Object</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>MpModel Object</em>' reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>MpModel Object</em>' reference.
+	 * @see #setM_pModelObject(ItsTargetType)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIBlockState_M_pModelObject()
+	 * @model
+	 * @generated
+	 */
+	ItsTargetType getM_pModelObject();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIBlockState#getM_pModelObject <em>MpModel Object</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>MpModel Object</em>' reference.
+	 * @see #getM_pModelObject()
+	 * @generated
+	 */
+	void setM_pModelObject(ItsTargetType value);
+
+	/**
+	 * Returns the value of the '<em><b>MpParent</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>MpParent</em>' reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>MpParent</em>' reference.
+	 * @see #setM_pParent(GraphElementsType)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIBlockState_M_pParent()
+	 * @model
+	 * @generated
+	 */
+	GraphElementsType getM_pParent();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIBlockState#getM_pParent <em>MpParent</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>MpParent</em>' reference.
+	 * @see #getM_pParent()
+	 * @generated
+	 */
+	void setM_pParent(GraphElementsType value);
+
+	/**
+	 * Returns the value of the '<em><b>Mtransform</b></em>' attribute list.
+	 * The list contents are of type {@link java.lang.String}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Mtransform</em>' attribute list isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Mtransform</em>' attribute list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIBlockState_M_transform()
+	 * @model unique="false"
+	 * @generated
+	 */
+	EList<String> getM_transform();
+
+	/**
+	 * Returns the value of the '<em><b>Mpolygon</b></em>' attribute list.
+	 * The list contents are of type {@link java.lang.String}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Mpolygon</em>' attribute list isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Mpolygon</em>' attribute list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIBlockState_M_polygon()
+	 * @model unique="false"
+	 * @generated
+	 */
+	EList<String> getM_polygon();
+
+	/**
+	 * Returns the value of the '<em><b>MnName Format</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>MnName Format</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>MnName Format</em>' attribute.
+	 * @see #setM_nNameFormat(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIBlockState_M_nNameFormat()
+	 * @model
+	 * @generated
+	 */
+	String getM_nNameFormat();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIBlockState#getM_nNameFormat <em>MnName Format</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>MnName Format</em>' attribute.
+	 * @see #getM_nNameFormat()
+	 * @generated
+	 */
+	void setM_nNameFormat(String value);
+
+	/**
+	 * Returns the value of the '<em><b>MnIs Name Format</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>MnIs Name Format</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>MnIs Name Format</em>' attribute.
+	 * @see #setM_nIsNameFormat(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIBlockState_M_nIsNameFormat()
+	 * @model
+	 * @generated
+	 */
+	String getM_nIsNameFormat();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIBlockState#getM_nIsNameFormat <em>MnIs Name Format</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>MnIs Name Format</em>' attribute.
+	 * @see #getM_nIsNameFormat()
+	 * @generated
+	 */
+	void setM_nIsNameFormat(String value);
+
+	/**
+	 * Returns the value of the '<em><b>NAnd Line Count</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>NAnd Line Count</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>NAnd Line Count</em>' attribute.
+	 * @see #setNAndLineCount(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIBlockState_NAndLineCount()
+	 * @model
+	 * @generated
+	 */
+	String getNAndLineCount();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIBlockState#getNAndLineCount <em>NAnd Line Count</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>NAnd Line Count</em>' attribute.
+	 * @see #getNAndLineCount()
+	 * @generated
+	 */
+	void setNAndLineCount(String value);
+
+	/**
+	 * Returns the value of the '<em><b>MpInherits From</b></em>' reference list.
+	 * The list contents are of type {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UnknownType}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>MpInherits From</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>MpInherits From</em>' reference list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIBlockState_M_pInheritsFrom()
+	 * @model
+	 * @generated
+	 */
+	EList<UnknownType> getM_pInheritsFrom();
+
+	/**
+	 * Returns the value of the '<em><b>MnInheritance Mask</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>MnInheritance Mask</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>MnInheritance Mask</em>' attribute.
+	 * @see #setM_nInheritanceMask(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIBlockState_M_nInheritanceMask()
+	 * @model
+	 * @generated
+	 */
+	String getM_nInheritanceMask();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIBlockState#getM_nInheritanceMask <em>MnInheritance Mask</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>MnInheritance Mask</em>' attribute.
+	 * @see #getM_nInheritanceMask()
+	 * @generated
+	 */
+	void setM_nInheritanceMask(String value);
+
+	/**
+	 * Returns the value of the '<em><b>MpDefault Component Relation</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>MpDefault Component Relation</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>MpDefault Component Relation</em>' attribute.
+	 * @see #setM_pDefaultComponentRelation(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIBlockState_M_pDefaultComponentRelation()
+	 * @model
+	 * @generated
+	 */
+	String getM_pDefaultComponentRelation();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIBlockState#getM_pDefaultComponentRelation <em>MpDefault Component Relation</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>MpDefault Component Relation</em>' attribute.
+	 * @see #getM_pDefaultComponentRelation()
+	 * @generated
+	 */
+	void setM_pDefaultComponentRelation(String value);
+
+	/**
+	 * Returns the value of the '<em><b>MName Display Mode</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>MName Display Mode</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>MName Display Mode</em>' attribute.
+	 * @see #setM_NameDisplayMode(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIBlockState_M_NameDisplayMode()
+	 * @model
+	 * @generated
+	 */
+	String getM_NameDisplayMode();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIBlockState#getM_NameDisplayMode <em>MName Display Mode</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>MName Display Mode</em>' attribute.
+	 * @see #getM_NameDisplayMode()
+	 * @generated
+	 */
+	void setM_NameDisplayMode(String value);
+
+	/**
+	 * Returns the value of the '<em><b>MAct Desc Labl Diaplay Mode</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>MAct Desc Labl Diaplay Mode</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>MAct Desc Labl Diaplay Mode</em>' attribute.
+	 * @see #setM_ActDescLablDiaplayMode(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIBlockState_M_ActDescLablDiaplayMode()
+	 * @model
+	 * @generated
+	 */
+	String getM_ActDescLablDiaplayMode();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIBlockState#getM_ActDescLablDiaplayMode <em>MAct Desc Labl Diaplay Mode</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>MAct Desc Labl Diaplay Mode</em>' attribute.
+	 * @see #getM_ActDescLablDiaplayMode()
+	 * @generated
+	 */
+	void setM_ActDescLablDiaplayMode(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Properties</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Properties</em>' containment reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Properties</em>' containment reference.
+	 * @see #setProperties(IPropertyContainer)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIBlockState_Properties()
+	 * @model containment="true" resolveProxies="true"
+	 * @generated
+	 */
+	IPropertyContainer getProperties();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIBlockState#getProperties <em>Properties</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Properties</em>' containment reference.
+	 * @see #getProperties()
+	 * @generated
+	 */
+	void setProperties(IPropertyContainer value);
+
+	/**
+	 * Returns the value of the '<em><b>MAdditional Label</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>MAdditional Label</em>' containment reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>MAdditional Label</em>' containment reference.
+	 * @see #setM_AdditionalLabel(CGIText)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIBlockState_M_AdditionalLabel()
+	 * @model containment="true" resolveProxies="true"
+	 * @generated
+	 */
+	CGIText getM_AdditionalLabel();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIBlockState#getM_AdditionalLabel <em>MAdditional Label</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>MAdditional Label</em>' containment reference.
+	 * @see #getM_AdditionalLabel()
+	 * @generated
+	 */
+	void setM_AdditionalLabel(CGIText value);
+
+	/**
+	 * Returns the value of the '<em><b>Mmove And Line Time Stamp</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Mmove And Line Time Stamp</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Mmove And Line Time Stamp</em>' attribute.
+	 * @see #setM_moveAndLineTimeStamp(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIBlockState_M_moveAndLineTimeStamp()
+	 * @model
+	 * @generated
+	 */
+	String getM_moveAndLineTimeStamp();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIBlockState#getM_moveAndLineTimeStamp <em>Mmove And Line Time Stamp</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Mmove And Line Time Stamp</em>' attribute.
+	 * @see #getM_moveAndLineTimeStamp()
+	 * @generated
+	 */
+	void setM_moveAndLineTimeStamp(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Compartments</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Compartments</em>' containment reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Compartments</em>' containment reference.
+	 * @see #setCompartments(CompartmentsType)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIBlockState_Compartments()
+	 * @model containment="true" resolveProxies="true"
+	 * @generated
+	 */
+	CompartmentsType getCompartments();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIBlockState#getCompartments <em>Compartments</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Compartments</em>' containment reference.
+	 * @see #getCompartments()
+	 * @generated
+	 */
+	void setCompartments(CompartmentsType value);
+
+	/**
+	 * Returns the value of the '<em><b>Frameset</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Frameset</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Frameset</em>' attribute.
+	 * @see #setFrameset(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIBlockState_Frameset()
+	 * @model
+	 * @generated
+	 */
+	String getFrameset();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIBlockState#getFrameset <em>Frameset</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Frameset</em>' attribute.
+	 * @see #getFrameset()
+	 * @generated
+	 */
+	void setFrameset(String value);
+
+} // CGIBlockState
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/CGIBox.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/CGIBox.java
new file mode 100755
index 0000000..44dd120
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/CGIBox.java
@@ -0,0 +1,219 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel;
+
+import org.eclipse.emf.common.util.EList;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>CGI Box</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * </p>
+ * <ul>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIBox#getM_pModelObject <em>MpModel Object</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIBox#getM_polygon <em>Mpolygon</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIBox#getM_nNameFormat <em>MnName Format</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIBox#getM_nIsNameFormat <em>MnIs Name Format</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIBox#getCompartments <em>Compartments</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIBox#getM_pParent <em>MpParent</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIBox#getM_transform <em>Mtransform</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIBox#getProperties <em>Properties</em>}</li>
+ * </ul>
+ *
+ * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIBox()
+ * @model
+ * @generated
+ */
+public interface CGIBox extends GraphElementsType {
+	/**
+	 * Returns the value of the '<em><b>MpModel Object</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>MpModel Object</em>' reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>MpModel Object</em>' reference.
+	 * @see #setM_pModelObject(M_pModelObjectType)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIBox_M_pModelObject()
+	 * @model
+	 * @generated
+	 */
+	M_pModelObjectType getM_pModelObject();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIBox#getM_pModelObject <em>MpModel Object</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>MpModel Object</em>' reference.
+	 * @see #getM_pModelObject()
+	 * @generated
+	 */
+	void setM_pModelObject(M_pModelObjectType value);
+
+	/**
+	 * Returns the value of the '<em><b>Mpolygon</b></em>' attribute list.
+	 * The list contents are of type {@link java.lang.String}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Mpolygon</em>' attribute list isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Mpolygon</em>' attribute list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIBox_M_polygon()
+	 * @model unique="false"
+	 * @generated
+	 */
+	EList<String> getM_polygon();
+
+	/**
+	 * Returns the value of the '<em><b>MnName Format</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>MnName Format</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>MnName Format</em>' attribute.
+	 * @see #setM_nNameFormat(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIBox_M_nNameFormat()
+	 * @model
+	 * @generated
+	 */
+	String getM_nNameFormat();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIBox#getM_nNameFormat <em>MnName Format</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>MnName Format</em>' attribute.
+	 * @see #getM_nNameFormat()
+	 * @generated
+	 */
+	void setM_nNameFormat(String value);
+
+	/**
+	 * Returns the value of the '<em><b>MnIs Name Format</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>MnIs Name Format</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>MnIs Name Format</em>' attribute.
+	 * @see #setM_nIsNameFormat(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIBox_M_nIsNameFormat()
+	 * @model
+	 * @generated
+	 */
+	String getM_nIsNameFormat();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIBox#getM_nIsNameFormat <em>MnIs Name Format</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>MnIs Name Format</em>' attribute.
+	 * @see #getM_nIsNameFormat()
+	 * @generated
+	 */
+	void setM_nIsNameFormat(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Compartments</b></em>' reference list.
+	 * The list contents are of type {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UnknownType}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Compartments</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>Compartments</em>' reference list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIBox_Compartments()
+	 * @model
+	 * @generated
+	 */
+	EList<UnknownType> getCompartments();
+
+	/**
+	 * Returns the value of the '<em><b>MpParent</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>MpParent</em>' reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>MpParent</em>' reference.
+	 * @see #setM_pParent(GraphElementsType)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIBox_M_pParent()
+	 * @model
+	 * @generated
+	 */
+	GraphElementsType getM_pParent();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIBox#getM_pParent <em>MpParent</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>MpParent</em>' reference.
+	 * @see #getM_pParent()
+	 * @generated
+	 */
+	void setM_pParent(GraphElementsType value);
+
+	/**
+	 * Returns the value of the '<em><b>Mtransform</b></em>' attribute list.
+	 * The list contents are of type {@link java.lang.String}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Mtransform</em>' attribute list isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Mtransform</em>' attribute list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIBox_M_transform()
+	 * @model unique="false"
+	 * @generated
+	 */
+	EList<String> getM_transform();
+
+	/**
+	 * Returns the value of the '<em><b>Properties</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Properties</em>' containment reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Properties</em>' containment reference.
+	 * @see #setProperties(IPropertyContainer)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIBox_Properties()
+	 * @model containment="true" resolveProxies="true"
+	 * @generated
+	 */
+	IPropertyContainer getProperties();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIBox#getProperties <em>Properties</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Properties</em>' containment reference.
+	 * @see #getProperties()
+	 * @generated
+	 */
+	void setProperties(IPropertyContainer value);
+
+} // CGIBox
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/CGIButtonArray.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/CGIButtonArray.java
new file mode 100755
index 0000000..fe76d84
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/CGIButtonArray.java
@@ -0,0 +1,351 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel;
+
+import org.eclipse.emf.common.util.EList;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>CGI Button Array</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * </p>
+ * <ul>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIButtonArray#getProperties <em>Properties</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIButtonArray#getM_pModelObject <em>MpModel Object</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIButtonArray#getM_pParent <em>MpParent</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIButtonArray#getM_transform <em>Mtransform</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIButtonArray#getM_polygon <em>Mpolygon</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIButtonArray#getM_nNameFormat <em>MnName Format</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIButtonArray#getM_nIsNameFormat <em>MnIs Name Format</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIButtonArray#getFrameset <em>Frameset</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIButtonArray#getCompartments <em>Compartments</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIButtonArray#getM_csModelObjPath <em>Mcs Model Obj Path</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIButtonArray#getM_csName <em>Mcs Name</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIButtonArray#getM_PartsArray <em>MParts Array</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIButtonArray#getM_liButtonNames <em>Mli Button Names</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIButtonArray#getM_liButtonValues <em>Mli Button Values</em>}</li>
+ * </ul>
+ *
+ * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIButtonArray()
+ * @model
+ * @generated
+ */
+public interface CGIButtonArray extends GraphElementsType {
+	/**
+	 * Returns the value of the '<em><b>Properties</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Properties</em>' containment reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Properties</em>' containment reference.
+	 * @see #setProperties(IPropertyContainer)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIButtonArray_Properties()
+	 * @model containment="true" resolveProxies="true"
+	 * @generated
+	 */
+	IPropertyContainer getProperties();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIButtonArray#getProperties <em>Properties</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Properties</em>' containment reference.
+	 * @see #getProperties()
+	 * @generated
+	 */
+	void setProperties(IPropertyContainer value);
+
+	/**
+	 * Returns the value of the '<em><b>MpModel Object</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>MpModel Object</em>' reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>MpModel Object</em>' reference.
+	 * @see #setM_pModelObject(IAttribute)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIButtonArray_M_pModelObject()
+	 * @model
+	 * @generated
+	 */
+	IAttribute getM_pModelObject();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIButtonArray#getM_pModelObject <em>MpModel Object</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>MpModel Object</em>' reference.
+	 * @see #getM_pModelObject()
+	 * @generated
+	 */
+	void setM_pModelObject(IAttribute value);
+
+	/**
+	 * Returns the value of the '<em><b>MpParent</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>MpParent</em>' reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>MpParent</em>' reference.
+	 * @see #setM_pParent(GraphElementsType)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIButtonArray_M_pParent()
+	 * @model
+	 * @generated
+	 */
+	GraphElementsType getM_pParent();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIButtonArray#getM_pParent <em>MpParent</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>MpParent</em>' reference.
+	 * @see #getM_pParent()
+	 * @generated
+	 */
+	void setM_pParent(GraphElementsType value);
+
+	/**
+	 * Returns the value of the '<em><b>Mtransform</b></em>' attribute list.
+	 * The list contents are of type {@link java.lang.String}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Mtransform</em>' attribute list isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Mtransform</em>' attribute list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIButtonArray_M_transform()
+	 * @model unique="false"
+	 * @generated
+	 */
+	EList<String> getM_transform();
+
+	/**
+	 * Returns the value of the '<em><b>Mpolygon</b></em>' attribute list.
+	 * The list contents are of type {@link java.lang.String}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Mpolygon</em>' attribute list isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Mpolygon</em>' attribute list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIButtonArray_M_polygon()
+	 * @model unique="false"
+	 * @generated
+	 */
+	EList<String> getM_polygon();
+
+	/**
+	 * Returns the value of the '<em><b>MnName Format</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>MnName Format</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>MnName Format</em>' attribute.
+	 * @see #setM_nNameFormat(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIButtonArray_M_nNameFormat()
+	 * @model
+	 * @generated
+	 */
+	String getM_nNameFormat();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIButtonArray#getM_nNameFormat <em>MnName Format</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>MnName Format</em>' attribute.
+	 * @see #getM_nNameFormat()
+	 * @generated
+	 */
+	void setM_nNameFormat(String value);
+
+	/**
+	 * Returns the value of the '<em><b>MnIs Name Format</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>MnIs Name Format</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>MnIs Name Format</em>' attribute.
+	 * @see #setM_nIsNameFormat(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIButtonArray_M_nIsNameFormat()
+	 * @model
+	 * @generated
+	 */
+	String getM_nIsNameFormat();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIButtonArray#getM_nIsNameFormat <em>MnIs Name Format</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>MnIs Name Format</em>' attribute.
+	 * @see #getM_nIsNameFormat()
+	 * @generated
+	 */
+	void setM_nIsNameFormat(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Frameset</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Frameset</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Frameset</em>' attribute.
+	 * @see #setFrameset(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIButtonArray_Frameset()
+	 * @model
+	 * @generated
+	 */
+	String getFrameset();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIButtonArray#getFrameset <em>Frameset</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Frameset</em>' attribute.
+	 * @see #getFrameset()
+	 * @generated
+	 */
+	void setFrameset(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Compartments</b></em>' containment reference list.
+	 * The list contents are of type {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGICompartment}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Compartments</em>' containment reference list isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Compartments</em>' containment reference list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIButtonArray_Compartments()
+	 * @model containment="true" resolveProxies="true"
+	 * @generated
+	 */
+	EList<CGICompartment> getCompartments();
+
+	/**
+	 * Returns the value of the '<em><b>Mcs Model Obj Path</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Mcs Model Obj Path</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Mcs Model Obj Path</em>' attribute.
+	 * @see #setM_csModelObjPath(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIButtonArray_M_csModelObjPath()
+	 * @model
+	 * @generated
+	 */
+	String getM_csModelObjPath();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIButtonArray#getM_csModelObjPath <em>Mcs Model Obj Path</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Mcs Model Obj Path</em>' attribute.
+	 * @see #getM_csModelObjPath()
+	 * @generated
+	 */
+	void setM_csModelObjPath(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Mcs Name</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Mcs Name</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Mcs Name</em>' attribute.
+	 * @see #setM_csName(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIButtonArray_M_csName()
+	 * @model
+	 * @generated
+	 */
+	String getM_csName();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIButtonArray#getM_csName <em>Mcs Name</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Mcs Name</em>' attribute.
+	 * @see #getM_csName()
+	 * @generated
+	 */
+	void setM_csName(String value);
+
+	/**
+	 * Returns the value of the '<em><b>MParts Array</b></em>' reference list.
+	 * The list contents are of type {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.DependsOnType}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>MParts Array</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>MParts Array</em>' reference list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIButtonArray_M_PartsArray()
+	 * @model
+	 * @generated
+	 */
+	EList<DependsOnType> getM_PartsArray();
+
+	/**
+	 * Returns the value of the '<em><b>Mli Button Names</b></em>' attribute list.
+	 * The list contents are of type {@link java.lang.String}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Mli Button Names</em>' attribute list isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Mli Button Names</em>' attribute list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIButtonArray_M_liButtonNames()
+	 * @model unique="false"
+	 * @generated
+	 */
+	EList<String> getM_liButtonNames();
+
+	/**
+	 * Returns the value of the '<em><b>Mli Button Values</b></em>' attribute list.
+	 * The list contents are of type {@link java.lang.String}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Mli Button Values</em>' attribute list isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Mli Button Values</em>' attribute list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIButtonArray_M_liButtonValues()
+	 * @model unique="false"
+	 * @generated
+	 */
+	EList<String> getM_liButtonValues();
+
+} // CGIButtonArray
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/CGIClass.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/CGIClass.java
new file mode 100755
index 0000000..099e382
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/CGIClass.java
@@ -0,0 +1,469 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel;
+
+import org.eclipse.emf.common.util.EList;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>CGI Class</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * </p>
+ * <ul>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIClass#getM_pModelObject <em>MpModel Object</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIClass#getM_AdditionalLabel <em>MAdditional Label</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIClass#getM_polygon <em>Mpolygon</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIClass#getM_nNameFormat <em>MnName Format</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIClass#getM_nIsNameFormat <em>MnIs Name Format</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIClass#getCompartments <em>Compartments</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIClass#getM_pParent <em>MpParent</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIClass#getM_transform <em>Mtransform</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIClass#getFrameset <em>Frameset</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIClass#getProperties <em>Properties</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIClass#getAttrs <em>Attrs</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIClass#getOperations <em>Operations</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIClass#getM_color <em>Mcolor</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIClass#getM_lineWidth <em>Mline Width</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIClass#getM_dSeparatorPosition <em>MdSeparator Position</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIClass#getM_bIsMisplaced <em>MbIs Misplaced</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIClass#getM_pImageViewData <em>MpImage View Data</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIClass#getM_bFramesetModified <em>MbFrameset Modified</em>}</li>
+ * </ul>
+ *
+ * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIClass()
+ * @model
+ * @generated
+ */
+public interface CGIClass extends GraphElementsType, M_pRootType {
+	/**
+	 * Returns the value of the '<em><b>MpModel Object</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>MpModel Object</em>' reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>MpModel Object</em>' reference.
+	 * @see #setM_pModelObject(M_pModelObjectType)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIClass_M_pModelObject()
+	 * @model
+	 * @generated
+	 */
+	M_pModelObjectType getM_pModelObject();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIClass#getM_pModelObject <em>MpModel Object</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>MpModel Object</em>' reference.
+	 * @see #getM_pModelObject()
+	 * @generated
+	 */
+	void setM_pModelObject(M_pModelObjectType value);
+
+	/**
+	 * Returns the value of the '<em><b>MAdditional Label</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>MAdditional Label</em>' containment reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>MAdditional Label</em>' containment reference.
+	 * @see #setM_AdditionalLabel(CGIText)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIClass_M_AdditionalLabel()
+	 * @model containment="true" resolveProxies="true"
+	 * @generated
+	 */
+	CGIText getM_AdditionalLabel();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIClass#getM_AdditionalLabel <em>MAdditional Label</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>MAdditional Label</em>' containment reference.
+	 * @see #getM_AdditionalLabel()
+	 * @generated
+	 */
+	void setM_AdditionalLabel(CGIText value);
+
+	/**
+	 * Returns the value of the '<em><b>Mpolygon</b></em>' attribute list.
+	 * The list contents are of type {@link java.lang.String}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Mpolygon</em>' attribute list isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Mpolygon</em>' attribute list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIClass_M_polygon()
+	 * @model unique="false"
+	 * @generated
+	 */
+	EList<String> getM_polygon();
+
+	/**
+	 * Returns the value of the '<em><b>MnName Format</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>MnName Format</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>MnName Format</em>' attribute.
+	 * @see #setM_nNameFormat(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIClass_M_nNameFormat()
+	 * @model
+	 * @generated
+	 */
+	String getM_nNameFormat();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIClass#getM_nNameFormat <em>MnName Format</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>MnName Format</em>' attribute.
+	 * @see #getM_nNameFormat()
+	 * @generated
+	 */
+	void setM_nNameFormat(String value);
+
+	/**
+	 * Returns the value of the '<em><b>MnIs Name Format</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>MnIs Name Format</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>MnIs Name Format</em>' attribute.
+	 * @see #setM_nIsNameFormat(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIClass_M_nIsNameFormat()
+	 * @model
+	 * @generated
+	 */
+	String getM_nIsNameFormat();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIClass#getM_nIsNameFormat <em>MnIs Name Format</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>MnIs Name Format</em>' attribute.
+	 * @see #getM_nIsNameFormat()
+	 * @generated
+	 */
+	void setM_nIsNameFormat(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Compartments</b></em>' containment reference list.
+	 * The list contents are of type {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CompartmentsType}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Compartments</em>' containment reference list isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Compartments</em>' containment reference list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIClass_Compartments()
+	 * @model containment="true" resolveProxies="true"
+	 * @generated
+	 */
+	EList<CompartmentsType> getCompartments();
+
+	/**
+	 * Returns the value of the '<em><b>MpParent</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>MpParent</em>' reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>MpParent</em>' reference.
+	 * @see #setM_pParent(M_pRootType)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIClass_M_pParent()
+	 * @model
+	 * @generated
+	 */
+	M_pRootType getM_pParent();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIClass#getM_pParent <em>MpParent</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>MpParent</em>' reference.
+	 * @see #getM_pParent()
+	 * @generated
+	 */
+	void setM_pParent(M_pRootType value);
+
+	/**
+	 * Returns the value of the '<em><b>Mtransform</b></em>' attribute list.
+	 * The list contents are of type {@link java.lang.String}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Mtransform</em>' attribute list isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Mtransform</em>' attribute list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIClass_M_transform()
+	 * @model unique="false"
+	 * @generated
+	 */
+	EList<String> getM_transform();
+
+	/**
+	 * Returns the value of the '<em><b>Frameset</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Frameset</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Frameset</em>' attribute.
+	 * @see #setFrameset(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIClass_Frameset()
+	 * @model
+	 * @generated
+	 */
+	String getFrameset();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIClass#getFrameset <em>Frameset</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Frameset</em>' attribute.
+	 * @see #getFrameset()
+	 * @generated
+	 */
+	void setFrameset(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Properties</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Properties</em>' containment reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Properties</em>' containment reference.
+	 * @see #setProperties(IPropertyContainer)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIClass_Properties()
+	 * @model containment="true" resolveProxies="true"
+	 * @generated
+	 */
+	IPropertyContainer getProperties();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIClass#getProperties <em>Properties</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Properties</em>' containment reference.
+	 * @see #getProperties()
+	 * @generated
+	 */
+	void setProperties(IPropertyContainer value);
+
+	/**
+	 * Returns the value of the '<em><b>Attrs</b></em>' reference list.
+	 * The list contents are of type {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IUnit}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Attrs</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>Attrs</em>' reference list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIClass_Attrs()
+	 * @model
+	 * @generated
+	 */
+	EList<IUnit> getAttrs();
+
+	/**
+	 * Returns the value of the '<em><b>Operations</b></em>' reference list.
+	 * The list contents are of type {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.OperationsType}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Operations</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>Operations</em>' reference list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIClass_Operations()
+	 * @model
+	 * @generated
+	 */
+	EList<OperationsType> getOperations();
+
+	/**
+	 * Returns the value of the '<em><b>Mcolor</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Mcolor</em>' containment reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Mcolor</em>' containment reference.
+	 * @see #setM_color(IColor)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIClass_M_color()
+	 * @model containment="true" resolveProxies="true"
+	 * @generated
+	 */
+	IColor getM_color();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIClass#getM_color <em>Mcolor</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Mcolor</em>' containment reference.
+	 * @see #getM_color()
+	 * @generated
+	 */
+	void setM_color(IColor value);
+
+	/**
+	 * Returns the value of the '<em><b>Mline Width</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Mline Width</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Mline Width</em>' attribute.
+	 * @see #setM_lineWidth(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIClass_M_lineWidth()
+	 * @model
+	 * @generated
+	 */
+	String getM_lineWidth();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIClass#getM_lineWidth <em>Mline Width</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Mline Width</em>' attribute.
+	 * @see #getM_lineWidth()
+	 * @generated
+	 */
+	void setM_lineWidth(String value);
+
+	/**
+	 * Returns the value of the '<em><b>MdSeparator Position</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>MdSeparator Position</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>MdSeparator Position</em>' attribute.
+	 * @see #setM_dSeparatorPosition(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIClass_M_dSeparatorPosition()
+	 * @model
+	 * @generated
+	 */
+	String getM_dSeparatorPosition();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIClass#getM_dSeparatorPosition <em>MdSeparator Position</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>MdSeparator Position</em>' attribute.
+	 * @see #getM_dSeparatorPosition()
+	 * @generated
+	 */
+	void setM_dSeparatorPosition(String value);
+
+	/**
+	 * Returns the value of the '<em><b>MbIs Misplaced</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>MbIs Misplaced</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>MbIs Misplaced</em>' attribute.
+	 * @see #setM_bIsMisplaced(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIClass_M_bIsMisplaced()
+	 * @model
+	 * @generated
+	 */
+	String getM_bIsMisplaced();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIClass#getM_bIsMisplaced <em>MbIs Misplaced</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>MbIs Misplaced</em>' attribute.
+	 * @see #getM_bIsMisplaced()
+	 * @generated
+	 */
+	void setM_bIsMisplaced(String value);
+
+	/**
+	 * Returns the value of the '<em><b>MpImage View Data</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>MpImage View Data</em>' reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>MpImage View Data</em>' reference.
+	 * @see #setM_pImageViewData(CGIImageData)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIClass_M_pImageViewData()
+	 * @model
+	 * @generated
+	 */
+	CGIImageData getM_pImageViewData();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIClass#getM_pImageViewData <em>MpImage View Data</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>MpImage View Data</em>' reference.
+	 * @see #getM_pImageViewData()
+	 * @generated
+	 */
+	void setM_pImageViewData(CGIImageData value);
+
+	/**
+	 * Returns the value of the '<em><b>MbFrameset Modified</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>MbFrameset Modified</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>MbFrameset Modified</em>' attribute.
+	 * @see #setM_bFramesetModified(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIClass_M_bFramesetModified()
+	 * @model
+	 * @generated
+	 */
+	String getM_bFramesetModified();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIClass#getM_bFramesetModified <em>MbFrameset Modified</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>MbFrameset Modified</em>' attribute.
+	 * @see #getM_bFramesetModified()
+	 * @generated
+	 */
+	void setM_bFramesetModified(String value);
+
+} // CGIClass
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/CGIClassChart.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/CGIClassChart.java
new file mode 100755
index 0000000..9cae33e
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/CGIClassChart.java
@@ -0,0 +1,86 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel;
+
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>CGI Class Chart</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * </p>
+ * <ul>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIClassChart#getM_pModelObject <em>MpModel Object</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIClassChart#getM_pRoot <em>MpRoot</em>}</li>
+ * </ul>
+ *
+ * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIClassChart()
+ * @model
+ * @generated
+ */
+public interface CGIClassChart extends GraphicChartType {
+	/**
+	 * Returns the value of the '<em><b>MpModel Object</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>MpModel Object</em>' reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>MpModel Object</em>' reference.
+	 * @see #setM_pModelObject(M_pModelObjectType)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIClassChart_M_pModelObject()
+	 * @model
+	 * @generated
+	 */
+	M_pModelObjectType getM_pModelObject();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIClassChart#getM_pModelObject <em>MpModel Object</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>MpModel Object</em>' reference.
+	 * @see #getM_pModelObject()
+	 * @generated
+	 */
+	void setM_pModelObject(M_pModelObjectType value);
+
+	/**
+	 * Returns the value of the '<em><b>MpRoot</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>MpRoot</em>' reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>MpRoot</em>' reference.
+	 * @see #setM_pRoot(M_pRootType)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIClassChart_M_pRoot()
+	 * @model
+	 * @generated
+	 */
+	M_pRootType getM_pRoot();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIClassChart#getM_pRoot <em>MpRoot</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>MpRoot</em>' reference.
+	 * @see #getM_pRoot()
+	 * @generated
+	 */
+	void setM_pRoot(M_pRootType value);
+
+} // CGIClassChart
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/CGIClassifierRole.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/CGIClassifierRole.java
new file mode 100755
index 0000000..08f24f8
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/CGIClassifierRole.java
@@ -0,0 +1,219 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel;
+
+import org.eclipse.emf.common.util.EList;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>CGI Classifier Role</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * </p>
+ * <ul>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIClassifierRole#getM_pModelObject <em>MpModel Object</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIClassifierRole#getM_pParent <em>MpParent</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIClassifierRole#getM_transform <em>Mtransform</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIClassifierRole#getM_polygon <em>Mpolygon</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIClassifierRole#getM_nNameFormat <em>MnName Format</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIClassifierRole#getM_nIsNameFormat <em>MnIs Name Format</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIClassifierRole#getCompartments <em>Compartments</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIClassifierRole#getProperties <em>Properties</em>}</li>
+ * </ul>
+ *
+ * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIClassifierRole()
+ * @model
+ * @generated
+ */
+public interface CGIClassifierRole extends GraphElementsType {
+	/**
+	 * Returns the value of the '<em><b>MpModel Object</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>MpModel Object</em>' reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>MpModel Object</em>' reference.
+	 * @see #setM_pModelObject(IClassifierRole)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIClassifierRole_M_pModelObject()
+	 * @model
+	 * @generated
+	 */
+	IClassifierRole getM_pModelObject();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIClassifierRole#getM_pModelObject <em>MpModel Object</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>MpModel Object</em>' reference.
+	 * @see #getM_pModelObject()
+	 * @generated
+	 */
+	void setM_pModelObject(IClassifierRole value);
+
+	/**
+	 * Returns the value of the '<em><b>MpParent</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>MpParent</em>' reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>MpParent</em>' reference.
+	 * @see #setM_pParent(CGIBox)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIClassifierRole_M_pParent()
+	 * @model
+	 * @generated
+	 */
+	CGIBox getM_pParent();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIClassifierRole#getM_pParent <em>MpParent</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>MpParent</em>' reference.
+	 * @see #getM_pParent()
+	 * @generated
+	 */
+	void setM_pParent(CGIBox value);
+
+	/**
+	 * Returns the value of the '<em><b>Mtransform</b></em>' attribute list.
+	 * The list contents are of type {@link java.lang.String}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Mtransform</em>' attribute list isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Mtransform</em>' attribute list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIClassifierRole_M_transform()
+	 * @model unique="false"
+	 * @generated
+	 */
+	EList<String> getM_transform();
+
+	/**
+	 * Returns the value of the '<em><b>Mpolygon</b></em>' attribute list.
+	 * The list contents are of type {@link java.lang.String}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Mpolygon</em>' attribute list isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Mpolygon</em>' attribute list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIClassifierRole_M_polygon()
+	 * @model unique="false"
+	 * @generated
+	 */
+	EList<String> getM_polygon();
+
+	/**
+	 * Returns the value of the '<em><b>MnName Format</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>MnName Format</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>MnName Format</em>' attribute.
+	 * @see #setM_nNameFormat(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIClassifierRole_M_nNameFormat()
+	 * @model
+	 * @generated
+	 */
+	String getM_nNameFormat();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIClassifierRole#getM_nNameFormat <em>MnName Format</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>MnName Format</em>' attribute.
+	 * @see #getM_nNameFormat()
+	 * @generated
+	 */
+	void setM_nNameFormat(String value);
+
+	/**
+	 * Returns the value of the '<em><b>MnIs Name Format</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>MnIs Name Format</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>MnIs Name Format</em>' attribute.
+	 * @see #setM_nIsNameFormat(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIClassifierRole_M_nIsNameFormat()
+	 * @model
+	 * @generated
+	 */
+	String getM_nIsNameFormat();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIClassifierRole#getM_nIsNameFormat <em>MnIs Name Format</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>MnIs Name Format</em>' attribute.
+	 * @see #getM_nIsNameFormat()
+	 * @generated
+	 */
+	void setM_nIsNameFormat(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Compartments</b></em>' reference list.
+	 * The list contents are of type {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UnknownType}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Compartments</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>Compartments</em>' reference list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIClassifierRole_Compartments()
+	 * @model
+	 * @generated
+	 */
+	EList<UnknownType> getCompartments();
+
+	/**
+	 * Returns the value of the '<em><b>Properties</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Properties</em>' containment reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Properties</em>' containment reference.
+	 * @see #setProperties(IPropertyContainer)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIClassifierRole_Properties()
+	 * @model containment="true" resolveProxies="true"
+	 * @generated
+	 */
+	IPropertyContainer getProperties();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIClassifierRole#getProperties <em>Properties</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Properties</em>' containment reference.
+	 * @see #getProperties()
+	 * @generated
+	 */
+	void setProperties(IPropertyContainer value);
+
+} // CGIClassifierRole
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/CGICompartment.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/CGICompartment.java
new file mode 100755
index 0000000..346319b
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/CGICompartment.java
@@ -0,0 +1,185 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel;
+
+import org.eclipse.emf.common.util.EList;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>CGI Compartment</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * </p>
+ * <ul>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGICompartment#getId <em>Id</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGICompartment#getM_name <em>Mname</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGICompartment#getM_displayOption <em>Mdisplay Option</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGICompartment#getM_bShowInherited <em>MbShow Inherited</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGICompartment#getM_bOrdered <em>MbOrdered</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGICompartment#getItems <em>Items</em>}</li>
+ * </ul>
+ *
+ * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGICompartment()
+ * @model
+ * @generated
+ */
+public interface CGICompartment extends CompartmentsType {
+	/**
+	 * Returns the value of the '<em><b>Id</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Id</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Id</em>' attribute.
+	 * @see #setId(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGICompartment_Id()
+	 * @model
+	 * @generated
+	 */
+	String getId();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGICompartment#getId <em>Id</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Id</em>' attribute.
+	 * @see #getId()
+	 * @generated
+	 */
+	void setId(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Mname</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Mname</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Mname</em>' attribute.
+	 * @see #setM_name(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGICompartment_M_name()
+	 * @model
+	 * @generated
+	 */
+	String getM_name();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGICompartment#getM_name <em>Mname</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Mname</em>' attribute.
+	 * @see #getM_name()
+	 * @generated
+	 */
+	void setM_name(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Mdisplay Option</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Mdisplay Option</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Mdisplay Option</em>' attribute.
+	 * @see #setM_displayOption(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGICompartment_M_displayOption()
+	 * @model
+	 * @generated
+	 */
+	String getM_displayOption();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGICompartment#getM_displayOption <em>Mdisplay Option</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Mdisplay Option</em>' attribute.
+	 * @see #getM_displayOption()
+	 * @generated
+	 */
+	void setM_displayOption(String value);
+
+	/**
+	 * Returns the value of the '<em><b>MbShow Inherited</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>MbShow Inherited</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>MbShow Inherited</em>' attribute.
+	 * @see #setM_bShowInherited(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGICompartment_M_bShowInherited()
+	 * @model
+	 * @generated
+	 */
+	String getM_bShowInherited();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGICompartment#getM_bShowInherited <em>MbShow Inherited</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>MbShow Inherited</em>' attribute.
+	 * @see #getM_bShowInherited()
+	 * @generated
+	 */
+	void setM_bShowInherited(String value);
+
+	/**
+	 * Returns the value of the '<em><b>MbOrdered</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>MbOrdered</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>MbOrdered</em>' attribute.
+	 * @see #setM_bOrdered(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGICompartment_M_bOrdered()
+	 * @model
+	 * @generated
+	 */
+	String getM_bOrdered();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGICompartment#getM_bOrdered <em>MbOrdered</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>MbOrdered</em>' attribute.
+	 * @see #getM_bOrdered()
+	 * @generated
+	 */
+	void setM_bOrdered(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Items</b></em>' reference list.
+	 * The list contents are of type {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ItemsType}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Items</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>Items</em>' reference list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGICompartment_Items()
+	 * @model
+	 * @generated
+	 */
+	EList<ItemsType> getItems();
+
+} // CGICompartment
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/CGIComponent.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/CGIComponent.java
new file mode 100755
index 0000000..fe9e4ae
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/CGIComponent.java
@@ -0,0 +1,246 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel;
+
+import org.eclipse.emf.common.util.EList;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>CGI Component</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * </p>
+ * <ul>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIComponent#getM_pModelObject <em>MpModel Object</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIComponent#getM_pParent <em>MpParent</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIComponent#getM_transform <em>Mtransform</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIComponent#getM_polygon <em>Mpolygon</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIComponent#getM_nNameFormat <em>MnName Format</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIComponent#getM_nIsNameFormat <em>MnIs Name Format</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIComponent#getCompartments <em>Compartments</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIComponent#getProperties <em>Properties</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIComponent#getM_AdditionalLabel <em>MAdditional Label</em>}</li>
+ * </ul>
+ *
+ * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIComponent()
+ * @model
+ * @generated
+ */
+public interface CGIComponent extends GraphElementsType {
+	/**
+	 * Returns the value of the '<em><b>MpModel Object</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>MpModel Object</em>' reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>MpModel Object</em>' reference.
+	 * @see #setM_pModelObject(IComponent)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIComponent_M_pModelObject()
+	 * @model
+	 * @generated
+	 */
+	IComponent getM_pModelObject();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIComponent#getM_pModelObject <em>MpModel Object</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>MpModel Object</em>' reference.
+	 * @see #getM_pModelObject()
+	 * @generated
+	 */
+	void setM_pModelObject(IComponent value);
+
+	/**
+	 * Returns the value of the '<em><b>MpParent</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>MpParent</em>' reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>MpParent</em>' reference.
+	 * @see #setM_pParent(GraphElementsType)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIComponent_M_pParent()
+	 * @model
+	 * @generated
+	 */
+	GraphElementsType getM_pParent();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIComponent#getM_pParent <em>MpParent</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>MpParent</em>' reference.
+	 * @see #getM_pParent()
+	 * @generated
+	 */
+	void setM_pParent(GraphElementsType value);
+
+	/**
+	 * Returns the value of the '<em><b>Mtransform</b></em>' attribute list.
+	 * The list contents are of type {@link java.lang.String}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Mtransform</em>' attribute list isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Mtransform</em>' attribute list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIComponent_M_transform()
+	 * @model unique="false"
+	 * @generated
+	 */
+	EList<String> getM_transform();
+
+	/**
+	 * Returns the value of the '<em><b>Mpolygon</b></em>' attribute list.
+	 * The list contents are of type {@link java.lang.String}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Mpolygon</em>' attribute list isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Mpolygon</em>' attribute list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIComponent_M_polygon()
+	 * @model unique="false"
+	 * @generated
+	 */
+	EList<String> getM_polygon();
+
+	/**
+	 * Returns the value of the '<em><b>MnName Format</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>MnName Format</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>MnName Format</em>' attribute.
+	 * @see #setM_nNameFormat(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIComponent_M_nNameFormat()
+	 * @model
+	 * @generated
+	 */
+	String getM_nNameFormat();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIComponent#getM_nNameFormat <em>MnName Format</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>MnName Format</em>' attribute.
+	 * @see #getM_nNameFormat()
+	 * @generated
+	 */
+	void setM_nNameFormat(String value);
+
+	/**
+	 * Returns the value of the '<em><b>MnIs Name Format</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>MnIs Name Format</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>MnIs Name Format</em>' attribute.
+	 * @see #setM_nIsNameFormat(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIComponent_M_nIsNameFormat()
+	 * @model
+	 * @generated
+	 */
+	String getM_nIsNameFormat();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIComponent#getM_nIsNameFormat <em>MnIs Name Format</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>MnIs Name Format</em>' attribute.
+	 * @see #getM_nIsNameFormat()
+	 * @generated
+	 */
+	void setM_nIsNameFormat(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Compartments</b></em>' reference list.
+	 * The list contents are of type {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UnknownType}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Compartments</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>Compartments</em>' reference list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIComponent_Compartments()
+	 * @model
+	 * @generated
+	 */
+	EList<UnknownType> getCompartments();
+
+	/**
+	 * Returns the value of the '<em><b>Properties</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Properties</em>' containment reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Properties</em>' containment reference.
+	 * @see #setProperties(IPropertyContainer)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIComponent_Properties()
+	 * @model containment="true" resolveProxies="true"
+	 * @generated
+	 */
+	IPropertyContainer getProperties();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIComponent#getProperties <em>Properties</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Properties</em>' containment reference.
+	 * @see #getProperties()
+	 * @generated
+	 */
+	void setProperties(IPropertyContainer value);
+
+	/**
+	 * Returns the value of the '<em><b>MAdditional Label</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>MAdditional Label</em>' containment reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>MAdditional Label</em>' containment reference.
+	 * @see #setM_AdditionalLabel(CGIText)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIComponent_M_AdditionalLabel()
+	 * @model containment="true" resolveProxies="true"
+	 * @generated
+	 */
+	CGIText getM_AdditionalLabel();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIComponent#getM_AdditionalLabel <em>MAdditional Label</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>MAdditional Label</em>' containment reference.
+	 * @see #getM_AdditionalLabel()
+	 * @generated
+	 */
+	void setM_AdditionalLabel(CGIText value);
+
+} // CGIComponent
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/CGICompositeClass.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/CGICompositeClass.java
new file mode 100755
index 0000000..74f7fee
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/CGICompositeClass.java
@@ -0,0 +1,283 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel;
+
+import org.eclipse.emf.common.util.EList;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>CGI Composite Class</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * </p>
+ * <ul>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGICompositeClass#getM_pModelObject <em>MpModel Object</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGICompositeClass#getM_pParent <em>MpParent</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGICompositeClass#getM_AdditionalLabel <em>MAdditional Label</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGICompositeClass#getM_polygon <em>Mpolygon</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGICompositeClass#getM_nNameFormat <em>MnName Format</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGICompositeClass#getM_nIsNameFormat <em>MnIs Name Format</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGICompositeClass#getCompartments <em>Compartments</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGICompositeClass#getProperties <em>Properties</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGICompositeClass#getM_color <em>Mcolor</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGICompositeClass#getM_lineWidth <em>Mline Width</em>}</li>
+ * </ul>
+ *
+ * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGICompositeClass()
+ * @model
+ * @generated
+ */
+public interface CGICompositeClass extends GraphElementsType {
+	/**
+	 * Returns the value of the '<em><b>MpModel Object</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>MpModel Object</em>' reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>MpModel Object</em>' reference.
+	 * @see #setM_pModelObject(IClassifier)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGICompositeClass_M_pModelObject()
+	 * @model
+	 * @generated
+	 */
+	IClassifier getM_pModelObject();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGICompositeClass#getM_pModelObject <em>MpModel Object</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>MpModel Object</em>' reference.
+	 * @see #getM_pModelObject()
+	 * @generated
+	 */
+	void setM_pModelObject(IClassifier value);
+
+	/**
+	 * Returns the value of the '<em><b>MpParent</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>MpParent</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>MpParent</em>' attribute.
+	 * @see #setM_pParent(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGICompositeClass_M_pParent()
+	 * @model
+	 * @generated
+	 */
+	String getM_pParent();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGICompositeClass#getM_pParent <em>MpParent</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>MpParent</em>' attribute.
+	 * @see #getM_pParent()
+	 * @generated
+	 */
+	void setM_pParent(String value);
+
+	/**
+	 * Returns the value of the '<em><b>MAdditional Label</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>MAdditional Label</em>' containment reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>MAdditional Label</em>' containment reference.
+	 * @see #setM_AdditionalLabel(CGIText)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGICompositeClass_M_AdditionalLabel()
+	 * @model containment="true" resolveProxies="true"
+	 * @generated
+	 */
+	CGIText getM_AdditionalLabel();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGICompositeClass#getM_AdditionalLabel <em>MAdditional Label</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>MAdditional Label</em>' containment reference.
+	 * @see #getM_AdditionalLabel()
+	 * @generated
+	 */
+	void setM_AdditionalLabel(CGIText value);
+
+	/**
+	 * Returns the value of the '<em><b>Mpolygon</b></em>' attribute list.
+	 * The list contents are of type {@link java.lang.String}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Mpolygon</em>' attribute list isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Mpolygon</em>' attribute list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGICompositeClass_M_polygon()
+	 * @model unique="false"
+	 * @generated
+	 */
+	EList<String> getM_polygon();
+
+	/**
+	 * Returns the value of the '<em><b>MnName Format</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>MnName Format</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>MnName Format</em>' attribute.
+	 * @see #setM_nNameFormat(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGICompositeClass_M_nNameFormat()
+	 * @model
+	 * @generated
+	 */
+	String getM_nNameFormat();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGICompositeClass#getM_nNameFormat <em>MnName Format</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>MnName Format</em>' attribute.
+	 * @see #getM_nNameFormat()
+	 * @generated
+	 */
+	void setM_nNameFormat(String value);
+
+	/**
+	 * Returns the value of the '<em><b>MnIs Name Format</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>MnIs Name Format</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>MnIs Name Format</em>' attribute.
+	 * @see #setM_nIsNameFormat(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGICompositeClass_M_nIsNameFormat()
+	 * @model
+	 * @generated
+	 */
+	String getM_nIsNameFormat();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGICompositeClass#getM_nIsNameFormat <em>MnIs Name Format</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>MnIs Name Format</em>' attribute.
+	 * @see #getM_nIsNameFormat()
+	 * @generated
+	 */
+	void setM_nIsNameFormat(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Compartments</b></em>' reference list.
+	 * The list contents are of type {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UnknownType}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Compartments</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>Compartments</em>' reference list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGICompositeClass_Compartments()
+	 * @model
+	 * @generated
+	 */
+	EList<UnknownType> getCompartments();
+
+	/**
+	 * Returns the value of the '<em><b>Properties</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Properties</em>' containment reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Properties</em>' containment reference.
+	 * @see #setProperties(IPropertyContainer)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGICompositeClass_Properties()
+	 * @model containment="true" resolveProxies="true"
+	 * @generated
+	 */
+	IPropertyContainer getProperties();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGICompositeClass#getProperties <em>Properties</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Properties</em>' containment reference.
+	 * @see #getProperties()
+	 * @generated
+	 */
+	void setProperties(IPropertyContainer value);
+
+	/**
+	 * Returns the value of the '<em><b>Mcolor</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Mcolor</em>' containment reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Mcolor</em>' containment reference.
+	 * @see #setM_color(IColor)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGICompositeClass_M_color()
+	 * @model containment="true" resolveProxies="true"
+	 * @generated
+	 */
+	IColor getM_color();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGICompositeClass#getM_color <em>Mcolor</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Mcolor</em>' containment reference.
+	 * @see #getM_color()
+	 * @generated
+	 */
+	void setM_color(IColor value);
+
+	/**
+	 * Returns the value of the '<em><b>Mline Width</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Mline Width</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Mline Width</em>' attribute.
+	 * @see #setM_lineWidth(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGICompositeClass_M_lineWidth()
+	 * @model
+	 * @generated
+	 */
+	String getM_lineWidth();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGICompositeClass#getM_lineWidth <em>Mline Width</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Mline Width</em>' attribute.
+	 * @see #getM_lineWidth()
+	 * @generated
+	 */
+	void setM_lineWidth(String value);
+
+} // CGICompositeClass
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/CGIConnector.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/CGIConnector.java
new file mode 100755
index 0000000..39744e9
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/CGIConnector.java
@@ -0,0 +1,283 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel;
+
+import org.eclipse.emf.common.util.EList;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>CGI Connector</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * </p>
+ * <ul>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIConnector#getM_pModelObject <em>MpModel Object</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIConnector#getM_pParent <em>MpParent</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIConnector#getM_transform <em>Mtransform</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIConnector#getM_position <em>Mposition</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIConnector#getM_nInheritanceMask <em>MnInheritance Mask</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIConnector#getM_SubType <em>MSub Type</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIConnector#getProperties <em>Properties</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIConnector#getM_AdditionalLabel <em>MAdditional Label</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIConnector#getMyState <em>My State</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIConnector#getM_pInheritsFrom <em>MpInherits From</em>}</li>
+ * </ul>
+ *
+ * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIConnector()
+ * @model
+ * @generated
+ */
+public interface CGIConnector extends GraphElementsType {
+	/**
+	 * Returns the value of the '<em><b>MpModel Object</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>MpModel Object</em>' reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>MpModel Object</em>' reference.
+	 * @see #setM_pModelObject(ItsTargetType)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIConnector_M_pModelObject()
+	 * @model
+	 * @generated
+	 */
+	ItsTargetType getM_pModelObject();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIConnector#getM_pModelObject <em>MpModel Object</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>MpModel Object</em>' reference.
+	 * @see #getM_pModelObject()
+	 * @generated
+	 */
+	void setM_pModelObject(ItsTargetType value);
+
+	/**
+	 * Returns the value of the '<em><b>MpParent</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>MpParent</em>' reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>MpParent</em>' reference.
+	 * @see #setM_pParent(GraphElementsType)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIConnector_M_pParent()
+	 * @model
+	 * @generated
+	 */
+	GraphElementsType getM_pParent();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIConnector#getM_pParent <em>MpParent</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>MpParent</em>' reference.
+	 * @see #getM_pParent()
+	 * @generated
+	 */
+	void setM_pParent(GraphElementsType value);
+
+	/**
+	 * Returns the value of the '<em><b>Mtransform</b></em>' attribute list.
+	 * The list contents are of type {@link java.lang.String}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Mtransform</em>' attribute list isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Mtransform</em>' attribute list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIConnector_M_transform()
+	 * @model unique="false"
+	 * @generated
+	 */
+	EList<String> getM_transform();
+
+	/**
+	 * Returns the value of the '<em><b>Mposition</b></em>' attribute list.
+	 * The list contents are of type {@link java.lang.String}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Mposition</em>' attribute list isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Mposition</em>' attribute list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIConnector_M_position()
+	 * @model unique="false"
+	 * @generated
+	 */
+	EList<String> getM_position();
+
+	/**
+	 * Returns the value of the '<em><b>MnInheritance Mask</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>MnInheritance Mask</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>MnInheritance Mask</em>' attribute.
+	 * @see #setM_nInheritanceMask(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIConnector_M_nInheritanceMask()
+	 * @model
+	 * @generated
+	 */
+	String getM_nInheritanceMask();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIConnector#getM_nInheritanceMask <em>MnInheritance Mask</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>MnInheritance Mask</em>' attribute.
+	 * @see #getM_nInheritanceMask()
+	 * @generated
+	 */
+	void setM_nInheritanceMask(String value);
+
+	/**
+	 * Returns the value of the '<em><b>MSub Type</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>MSub 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>MSub Type</em>' attribute.
+	 * @see #setM_SubType(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIConnector_M_SubType()
+	 * @model
+	 * @generated
+	 */
+	String getM_SubType();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIConnector#getM_SubType <em>MSub Type</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>MSub Type</em>' attribute.
+	 * @see #getM_SubType()
+	 * @generated
+	 */
+	void setM_SubType(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Properties</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Properties</em>' containment reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Properties</em>' containment reference.
+	 * @see #setProperties(IPropertyContainer)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIConnector_Properties()
+	 * @model containment="true" resolveProxies="true"
+	 * @generated
+	 */
+	IPropertyContainer getProperties();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIConnector#getProperties <em>Properties</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Properties</em>' containment reference.
+	 * @see #getProperties()
+	 * @generated
+	 */
+	void setProperties(IPropertyContainer value);
+
+	/**
+	 * Returns the value of the '<em><b>MAdditional Label</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>MAdditional Label</em>' containment reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>MAdditional Label</em>' containment reference.
+	 * @see #setM_AdditionalLabel(CGIText)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIConnector_M_AdditionalLabel()
+	 * @model containment="true" resolveProxies="true"
+	 * @generated
+	 */
+	CGIText getM_AdditionalLabel();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIConnector#getM_AdditionalLabel <em>MAdditional Label</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>MAdditional Label</em>' containment reference.
+	 * @see #getM_AdditionalLabel()
+	 * @generated
+	 */
+	void setM_AdditionalLabel(CGIText value);
+
+	/**
+	 * Returns the value of the '<em><b>My State</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>My State</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>My State</em>' attribute.
+	 * @see #setMyState(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIConnector_MyState()
+	 * @model
+	 * @generated
+	 */
+	String getMyState();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIConnector#getMyState <em>My State</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>My State</em>' attribute.
+	 * @see #getMyState()
+	 * @generated
+	 */
+	void setMyState(String value);
+
+	/**
+	 * Returns the value of the '<em><b>MpInherits From</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>MpInherits From</em>' reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>MpInherits From</em>' reference.
+	 * @see #setM_pInheritsFrom(GraphElementsType)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIConnector_M_pInheritsFrom()
+	 * @model
+	 * @generated
+	 */
+	GraphElementsType getM_pInheritsFrom();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIConnector#getM_pInheritsFrom <em>MpInherits From</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>MpInherits From</em>' reference.
+	 * @see #getM_pInheritsFrom()
+	 * @generated
+	 */
+	void setM_pInheritsFrom(GraphElementsType value);
+
+} // CGIConnector
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/CGIContainArrow.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/CGIContainArrow.java
new file mode 100755
index 0000000..3d726b2
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/CGIContainArrow.java
@@ -0,0 +1,351 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel;
+
+import org.eclipse.emf.common.util.EList;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>CGI Contain Arrow</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * </p>
+ * <ul>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIContainArrow#getM_pModelObject <em>MpModel Object</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIContainArrow#getM_pParent <em>MpParent</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIContainArrow#getM_pSource <em>MpSource</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIContainArrow#getM_sourceType <em>Msource Type</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIContainArrow#getM_pTarget <em>MpTarget</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIContainArrow#getM_targetType <em>Mtarget Type</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIContainArrow#getM_direction <em>Mdirection</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIContainArrow#getM_rpn <em>Mrpn</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIContainArrow#getM_arrow <em>Marrow</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIContainArrow#getM_anglePoint1 <em>Mangle Point1</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIContainArrow#getM_anglePoint2 <em>Mangle Point2</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIContainArrow#getM_line_style <em>Mline style</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIContainArrow#getM_SourcePort <em>MSource Port</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIContainArrow#getM_TargetPort <em>MTarget Port</em>}</li>
+ * </ul>
+ *
+ * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIContainArrow()
+ * @model
+ * @generated
+ */
+public interface CGIContainArrow extends GraphElementsType {
+	/**
+	 * Returns the value of the '<em><b>MpModel Object</b></em>' reference list.
+	 * The list contents are of type {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UnknownType}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>MpModel Object</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>MpModel Object</em>' reference list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIContainArrow_M_pModelObject()
+	 * @model
+	 * @generated
+	 */
+	EList<UnknownType> getM_pModelObject();
+
+	/**
+	 * Returns the value of the '<em><b>MpParent</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>MpParent</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>MpParent</em>' attribute.
+	 * @see #setM_pParent(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIContainArrow_M_pParent()
+	 * @model
+	 * @generated
+	 */
+	String getM_pParent();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIContainArrow#getM_pParent <em>MpParent</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>MpParent</em>' attribute.
+	 * @see #getM_pParent()
+	 * @generated
+	 */
+	void setM_pParent(String value);
+
+	/**
+	 * Returns the value of the '<em><b>MpSource</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>MpSource</em>' reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>MpSource</em>' reference.
+	 * @see #setM_pSource(GraphElementsType)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIContainArrow_M_pSource()
+	 * @model
+	 * @generated
+	 */
+	GraphElementsType getM_pSource();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIContainArrow#getM_pSource <em>MpSource</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>MpSource</em>' reference.
+	 * @see #getM_pSource()
+	 * @generated
+	 */
+	void setM_pSource(GraphElementsType value);
+
+	/**
+	 * Returns the value of the '<em><b>Msource Type</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Msource 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>Msource Type</em>' attribute.
+	 * @see #setM_sourceType(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIContainArrow_M_sourceType()
+	 * @model
+	 * @generated
+	 */
+	String getM_sourceType();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIContainArrow#getM_sourceType <em>Msource Type</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Msource Type</em>' attribute.
+	 * @see #getM_sourceType()
+	 * @generated
+	 */
+	void setM_sourceType(String value);
+
+	/**
+	 * Returns the value of the '<em><b>MpTarget</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>MpTarget</em>' reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>MpTarget</em>' reference.
+	 * @see #setM_pTarget(GraphElementsType)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIContainArrow_M_pTarget()
+	 * @model
+	 * @generated
+	 */
+	GraphElementsType getM_pTarget();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIContainArrow#getM_pTarget <em>MpTarget</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>MpTarget</em>' reference.
+	 * @see #getM_pTarget()
+	 * @generated
+	 */
+	void setM_pTarget(GraphElementsType value);
+
+	/**
+	 * Returns the value of the '<em><b>Mtarget Type</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Mtarget 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>Mtarget Type</em>' attribute.
+	 * @see #setM_targetType(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIContainArrow_M_targetType()
+	 * @model
+	 * @generated
+	 */
+	String getM_targetType();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIContainArrow#getM_targetType <em>Mtarget Type</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Mtarget Type</em>' attribute.
+	 * @see #getM_targetType()
+	 * @generated
+	 */
+	void setM_targetType(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Mdirection</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Mdirection</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Mdirection</em>' attribute.
+	 * @see #setM_direction(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIContainArrow_M_direction()
+	 * @model
+	 * @generated
+	 */
+	String getM_direction();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIContainArrow#getM_direction <em>Mdirection</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Mdirection</em>' attribute.
+	 * @see #getM_direction()
+	 * @generated
+	 */
+	void setM_direction(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Mrpn</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Mrpn</em>' containment reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Mrpn</em>' containment reference.
+	 * @see #setM_rpn(CGIText)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIContainArrow_M_rpn()
+	 * @model containment="true" resolveProxies="true"
+	 * @generated
+	 */
+	CGIText getM_rpn();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIContainArrow#getM_rpn <em>Mrpn</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Mrpn</em>' containment reference.
+	 * @see #getM_rpn()
+	 * @generated
+	 */
+	void setM_rpn(CGIText value);
+
+	/**
+	 * Returns the value of the '<em><b>Marrow</b></em>' attribute list.
+	 * The list contents are of type {@link java.lang.String}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Marrow</em>' attribute list isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Marrow</em>' attribute list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIContainArrow_M_arrow()
+	 * @model unique="false"
+	 * @generated
+	 */
+	EList<String> getM_arrow();
+
+	/**
+	 * Returns the value of the '<em><b>Mangle Point1</b></em>' attribute list.
+	 * The list contents are of type {@link java.lang.String}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Mangle Point1</em>' attribute list isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Mangle Point1</em>' attribute list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIContainArrow_M_anglePoint1()
+	 * @model unique="false"
+	 * @generated
+	 */
+	EList<String> getM_anglePoint1();
+
+	/**
+	 * Returns the value of the '<em><b>Mangle Point2</b></em>' attribute list.
+	 * The list contents are of type {@link java.lang.String}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Mangle Point2</em>' attribute list isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Mangle Point2</em>' attribute list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIContainArrow_M_anglePoint2()
+	 * @model unique="false"
+	 * @generated
+	 */
+	EList<String> getM_anglePoint2();
+
+	/**
+	 * Returns the value of the '<em><b>Mline style</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Mline style</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Mline style</em>' attribute.
+	 * @see #setM_line_style(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIContainArrow_M_line_style()
+	 * @model
+	 * @generated
+	 */
+	String getM_line_style();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIContainArrow#getM_line_style <em>Mline style</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Mline style</em>' attribute.
+	 * @see #getM_line_style()
+	 * @generated
+	 */
+	void setM_line_style(String value);
+
+	/**
+	 * Returns the value of the '<em><b>MSource Port</b></em>' attribute list.
+	 * The list contents are of type {@link java.lang.String}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>MSource Port</em>' attribute list isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>MSource Port</em>' attribute list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIContainArrow_M_SourcePort()
+	 * @model unique="false"
+	 * @generated
+	 */
+	EList<String> getM_SourcePort();
+
+	/**
+	 * Returns the value of the '<em><b>MTarget Port</b></em>' attribute list.
+	 * The list contents are of type {@link java.lang.String}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>MTarget Port</em>' attribute list isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>MTarget Port</em>' attribute list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIContainArrow_M_TargetPort()
+	 * @model unique="false"
+	 * @generated
+	 */
+	EList<String> getM_TargetPort();
+
+} // CGIContainArrow
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/CGIDiagramFrame.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/CGIDiagramFrame.java
new file mode 100755
index 0000000..3521fd8
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/CGIDiagramFrame.java
@@ -0,0 +1,273 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel;
+
+import org.eclipse.emf.common.util.EList;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>CGI Diagram Frame</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * </p>
+ * <ul>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIDiagramFrame#getM_pModelObject <em>MpModel Object</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIDiagramFrame#getM_pParent <em>MpParent</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIDiagramFrame#getM_transform <em>Mtransform</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIDiagramFrame#getM_AdditionalLabel <em>MAdditional Label</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIDiagramFrame#getM_polygon <em>Mpolygon</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIDiagramFrame#getM_nNameFormat <em>MnName Format</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIDiagramFrame#getM_nIsNameFormat <em>MnIs Name Format</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIDiagramFrame#getM_bVisible <em>MbVisible</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIDiagramFrame#getFrameset <em>Frameset</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIDiagramFrame#getCompartments <em>Compartments</em>}</li>
+ * </ul>
+ *
+ * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIDiagramFrame()
+ * @model
+ * @generated
+ */
+public interface CGIDiagramFrame extends GraphElementsType {
+	/**
+	 * Returns the value of the '<em><b>MpModel Object</b></em>' reference list.
+	 * The list contents are of type {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UnknownType}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>MpModel Object</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>MpModel Object</em>' reference list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIDiagramFrame_M_pModelObject()
+	 * @model
+	 * @generated
+	 */
+	EList<UnknownType> getM_pModelObject();
+
+	/**
+	 * Returns the value of the '<em><b>MpParent</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>MpParent</em>' reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>MpParent</em>' reference.
+	 * @see #setM_pParent(M_pRootType)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIDiagramFrame_M_pParent()
+	 * @model
+	 * @generated
+	 */
+	M_pRootType getM_pParent();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIDiagramFrame#getM_pParent <em>MpParent</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>MpParent</em>' reference.
+	 * @see #getM_pParent()
+	 * @generated
+	 */
+	void setM_pParent(M_pRootType value);
+
+	/**
+	 * Returns the value of the '<em><b>Mtransform</b></em>' attribute list.
+	 * The list contents are of type {@link java.lang.String}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Mtransform</em>' attribute list isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Mtransform</em>' attribute list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIDiagramFrame_M_transform()
+	 * @model unique="false"
+	 * @generated
+	 */
+	EList<String> getM_transform();
+
+	/**
+	 * Returns the value of the '<em><b>MAdditional Label</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>MAdditional Label</em>' containment reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>MAdditional Label</em>' containment reference.
+	 * @see #setM_AdditionalLabel(CGIText)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIDiagramFrame_M_AdditionalLabel()
+	 * @model containment="true" resolveProxies="true"
+	 * @generated
+	 */
+	CGIText getM_AdditionalLabel();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIDiagramFrame#getM_AdditionalLabel <em>MAdditional Label</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>MAdditional Label</em>' containment reference.
+	 * @see #getM_AdditionalLabel()
+	 * @generated
+	 */
+	void setM_AdditionalLabel(CGIText value);
+
+	/**
+	 * Returns the value of the '<em><b>Mpolygon</b></em>' attribute list.
+	 * The list contents are of type {@link java.lang.String}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Mpolygon</em>' attribute list isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Mpolygon</em>' attribute list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIDiagramFrame_M_polygon()
+	 * @model unique="false"
+	 * @generated
+	 */
+	EList<String> getM_polygon();
+
+	/**
+	 * Returns the value of the '<em><b>MnName Format</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>MnName Format</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>MnName Format</em>' attribute.
+	 * @see #setM_nNameFormat(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIDiagramFrame_M_nNameFormat()
+	 * @model
+	 * @generated
+	 */
+	String getM_nNameFormat();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIDiagramFrame#getM_nNameFormat <em>MnName Format</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>MnName Format</em>' attribute.
+	 * @see #getM_nNameFormat()
+	 * @generated
+	 */
+	void setM_nNameFormat(String value);
+
+	/**
+	 * Returns the value of the '<em><b>MnIs Name Format</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>MnIs Name Format</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>MnIs Name Format</em>' attribute.
+	 * @see #setM_nIsNameFormat(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIDiagramFrame_M_nIsNameFormat()
+	 * @model
+	 * @generated
+	 */
+	String getM_nIsNameFormat();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIDiagramFrame#getM_nIsNameFormat <em>MnIs Name Format</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>MnIs Name Format</em>' attribute.
+	 * @see #getM_nIsNameFormat()
+	 * @generated
+	 */
+	void setM_nIsNameFormat(String value);
+
+	/**
+	 * Returns the value of the '<em><b>MbVisible</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>MbVisible</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>MbVisible</em>' attribute.
+	 * @see #setM_bVisible(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIDiagramFrame_M_bVisible()
+	 * @model
+	 * @generated
+	 */
+	String getM_bVisible();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIDiagramFrame#getM_bVisible <em>MbVisible</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>MbVisible</em>' attribute.
+	 * @see #getM_bVisible()
+	 * @generated
+	 */
+	void setM_bVisible(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Frameset</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Frameset</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Frameset</em>' attribute.
+	 * @see #setFrameset(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIDiagramFrame_Frameset()
+	 * @model
+	 * @generated
+	 */
+	String getFrameset();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIDiagramFrame#getFrameset <em>Frameset</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Frameset</em>' attribute.
+	 * @see #getFrameset()
+	 * @generated
+	 */
+	void setFrameset(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Compartments</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Compartments</em>' containment reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Compartments</em>' containment reference.
+	 * @see #setCompartments(CompartmentsType)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIDiagramFrame_Compartments()
+	 * @model containment="true" resolveProxies="true"
+	 * @generated
+	 */
+	CompartmentsType getCompartments();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIDiagramFrame#getCompartments <em>Compartments</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Compartments</em>' containment reference.
+	 * @see #getCompartments()
+	 * @generated
+	 */
+	void setCompartments(CompartmentsType value);
+
+} // CGIDiagramFrame
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/CGIFreeShape.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/CGIFreeShape.java
new file mode 100755
index 0000000..e0498e8
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/CGIFreeShape.java
@@ -0,0 +1,138 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel;
+
+import org.eclipse.emf.common.util.EList;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>CGI Free Shape</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * </p>
+ * <ul>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIFreeShape#getProperties <em>Properties</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIFreeShape#getM_pModelObject <em>MpModel Object</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIFreeShape#getM_pParent <em>MpParent</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIFreeShape#getM_transform <em>Mtransform</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIFreeShape#getM_points <em>Mpoints</em>}</li>
+ * </ul>
+ *
+ * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIFreeShape()
+ * @model
+ * @generated
+ */
+public interface CGIFreeShape extends GraphElementsType {
+	/**
+	 * Returns the value of the '<em><b>Properties</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Properties</em>' containment reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Properties</em>' containment reference.
+	 * @see #setProperties(IPropertyContainer)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIFreeShape_Properties()
+	 * @model containment="true" resolveProxies="true"
+	 * @generated
+	 */
+	IPropertyContainer getProperties();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIFreeShape#getProperties <em>Properties</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Properties</em>' containment reference.
+	 * @see #getProperties()
+	 * @generated
+	 */
+	void setProperties(IPropertyContainer value);
+
+	/**
+	 * Returns the value of the '<em><b>MpModel Object</b></em>' reference list.
+	 * The list contents are of type {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UnknownType}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>MpModel Object</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>MpModel Object</em>' reference list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIFreeShape_M_pModelObject()
+	 * @model
+	 * @generated
+	 */
+	EList<UnknownType> getM_pModelObject();
+
+	/**
+	 * Returns the value of the '<em><b>MpParent</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>MpParent</em>' reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>MpParent</em>' reference.
+	 * @see #setM_pParent(GraphElementsType)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIFreeShape_M_pParent()
+	 * @model
+	 * @generated
+	 */
+	GraphElementsType getM_pParent();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIFreeShape#getM_pParent <em>MpParent</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>MpParent</em>' reference.
+	 * @see #getM_pParent()
+	 * @generated
+	 */
+	void setM_pParent(GraphElementsType value);
+
+	/**
+	 * Returns the value of the '<em><b>Mtransform</b></em>' attribute list.
+	 * The list contents are of type {@link java.lang.String}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Mtransform</em>' attribute list isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Mtransform</em>' attribute list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIFreeShape_M_transform()
+	 * @model unique="false"
+	 * @generated
+	 */
+	EList<String> getM_transform();
+
+	/**
+	 * Returns the value of the '<em><b>Mpoints</b></em>' attribute list.
+	 * The list contents are of type {@link java.lang.String}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Mpoints</em>' attribute list isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Mpoints</em>' attribute list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIFreeShape_M_points()
+	 * @model unique="false"
+	 * @generated
+	 */
+	EList<String> getM_points();
+
+} // CGIFreeShape
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/CGIFreeText.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/CGIFreeText.java
new file mode 100755
index 0000000..bda944d
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/CGIFreeText.java
@@ -0,0 +1,165 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel;
+
+import org.eclipse.emf.common.util.EList;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>CGI Free Text</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * </p>
+ * <ul>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIFreeText#getM_pModelObject <em>MpModel Object</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIFreeText#getM_pParent <em>MpParent</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIFreeText#getM_transform <em>Mtransform</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIFreeText#getM_points <em>Mpoints</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIFreeText#getM_text <em>Mtext</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIFreeText#getProperties <em>Properties</em>}</li>
+ * </ul>
+ *
+ * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIFreeText()
+ * @model
+ * @generated
+ */
+public interface CGIFreeText extends GraphElementsType {
+	/**
+	 * Returns the value of the '<em><b>MpModel Object</b></em>' reference list.
+	 * The list contents are of type {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UnknownType}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>MpModel Object</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>MpModel Object</em>' reference list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIFreeText_M_pModelObject()
+	 * @model
+	 * @generated
+	 */
+	EList<UnknownType> getM_pModelObject();
+
+	/**
+	 * Returns the value of the '<em><b>MpParent</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>MpParent</em>' reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>MpParent</em>' reference.
+	 * @see #setM_pParent(GraphElementsType)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIFreeText_M_pParent()
+	 * @model
+	 * @generated
+	 */
+	GraphElementsType getM_pParent();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIFreeText#getM_pParent <em>MpParent</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>MpParent</em>' reference.
+	 * @see #getM_pParent()
+	 * @generated
+	 */
+	void setM_pParent(GraphElementsType value);
+
+	/**
+	 * Returns the value of the '<em><b>Mtransform</b></em>' attribute list.
+	 * The list contents are of type {@link java.lang.String}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Mtransform</em>' attribute list isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Mtransform</em>' attribute list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIFreeText_M_transform()
+	 * @model unique="false"
+	 * @generated
+	 */
+	EList<String> getM_transform();
+
+	/**
+	 * Returns the value of the '<em><b>Mpoints</b></em>' attribute list.
+	 * The list contents are of type {@link java.lang.String}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Mpoints</em>' attribute list isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Mpoints</em>' attribute list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIFreeText_M_points()
+	 * @model unique="false"
+	 * @generated
+	 */
+	EList<String> getM_points();
+
+	/**
+	 * Returns the value of the '<em><b>Mtext</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Mtext</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Mtext</em>' attribute.
+	 * @see #setM_text(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIFreeText_M_text()
+	 * @model
+	 * @generated
+	 */
+	String getM_text();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIFreeText#getM_text <em>Mtext</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Mtext</em>' attribute.
+	 * @see #getM_text()
+	 * @generated
+	 */
+	void setM_text(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Properties</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Properties</em>' containment reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Properties</em>' containment reference.
+	 * @see #setProperties(IPropertyContainer)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIFreeText_Properties()
+	 * @model containment="true" resolveProxies="true"
+	 * @generated
+	 */
+	IPropertyContainer getProperties();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIFreeText#getProperties <em>Properties</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Properties</em>' containment reference.
+	 * @see #getProperties()
+	 * @generated
+	 */
+	void setProperties(IPropertyContainer value);
+
+} // CGIFreeText
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/CGIGenericElement.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/CGIGenericElement.java
new file mode 100755
index 0000000..e2bfd2d
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/CGIGenericElement.java
@@ -0,0 +1,391 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel;
+
+import org.eclipse.emf.common.util.EList;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>CGI Generic Element</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * </p>
+ * <ul>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIGenericElement#getM_pModelObject <em>MpModel Object</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIGenericElement#getM_pParent <em>MpParent</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIGenericElement#getM_transform <em>Mtransform</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIGenericElement#getM_AdditionalLabel <em>MAdditional Label</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIGenericElement#getM_polygon <em>Mpolygon</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIGenericElement#getM_nNameFormat <em>MnName Format</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIGenericElement#getM_nIsNameFormat <em>MnIs Name Format</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIGenericElement#getFrameset <em>Frameset</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIGenericElement#getCompartments <em>Compartments</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIGenericElement#getProperties <em>Properties</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIGenericElement#getM_pImageViewData <em>MpImage View Data</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIGenericElement#getM_csContext <em>Mcs Context</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIGenericElement#getM_csPartsArray <em>Mcs Parts Array</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIGenericElement#getM_bIsStructured <em>MbIs Structured</em>}</li>
+ * </ul>
+ *
+ * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIGenericElement()
+ * @model
+ * @generated
+ */
+public interface CGIGenericElement extends GraphElementsType {
+	/**
+	 * Returns the value of the '<em><b>MpModel Object</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>MpModel Object</em>' reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>MpModel Object</em>' reference.
+	 * @see #setM_pModelObject(M_pModelObjectType)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIGenericElement_M_pModelObject()
+	 * @model
+	 * @generated
+	 */
+	M_pModelObjectType getM_pModelObject();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIGenericElement#getM_pModelObject <em>MpModel Object</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>MpModel Object</em>' reference.
+	 * @see #getM_pModelObject()
+	 * @generated
+	 */
+	void setM_pModelObject(M_pModelObjectType value);
+
+	/**
+	 * Returns the value of the '<em><b>MpParent</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>MpParent</em>' reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>MpParent</em>' reference.
+	 * @see #setM_pParent(M_pRootType)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIGenericElement_M_pParent()
+	 * @model
+	 * @generated
+	 */
+	M_pRootType getM_pParent();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIGenericElement#getM_pParent <em>MpParent</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>MpParent</em>' reference.
+	 * @see #getM_pParent()
+	 * @generated
+	 */
+	void setM_pParent(M_pRootType value);
+
+	/**
+	 * Returns the value of the '<em><b>Mtransform</b></em>' attribute list.
+	 * The list contents are of type {@link java.lang.String}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Mtransform</em>' attribute list isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Mtransform</em>' attribute list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIGenericElement_M_transform()
+	 * @model unique="false"
+	 * @generated
+	 */
+	EList<String> getM_transform();
+
+	/**
+	 * Returns the value of the '<em><b>MAdditional Label</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>MAdditional Label</em>' containment reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>MAdditional Label</em>' containment reference.
+	 * @see #setM_AdditionalLabel(CGIText)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIGenericElement_M_AdditionalLabel()
+	 * @model containment="true" resolveProxies="true"
+	 * @generated
+	 */
+	CGIText getM_AdditionalLabel();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIGenericElement#getM_AdditionalLabel <em>MAdditional Label</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>MAdditional Label</em>' containment reference.
+	 * @see #getM_AdditionalLabel()
+	 * @generated
+	 */
+	void setM_AdditionalLabel(CGIText value);
+
+	/**
+	 * Returns the value of the '<em><b>Mpolygon</b></em>' attribute list.
+	 * The list contents are of type {@link java.lang.String}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Mpolygon</em>' attribute list isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Mpolygon</em>' attribute list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIGenericElement_M_polygon()
+	 * @model unique="false"
+	 * @generated
+	 */
+	EList<String> getM_polygon();
+
+	/**
+	 * Returns the value of the '<em><b>MnName Format</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>MnName Format</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>MnName Format</em>' attribute.
+	 * @see #setM_nNameFormat(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIGenericElement_M_nNameFormat()
+	 * @model
+	 * @generated
+	 */
+	String getM_nNameFormat();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIGenericElement#getM_nNameFormat <em>MnName Format</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>MnName Format</em>' attribute.
+	 * @see #getM_nNameFormat()
+	 * @generated
+	 */
+	void setM_nNameFormat(String value);
+
+	/**
+	 * Returns the value of the '<em><b>MnIs Name Format</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>MnIs Name Format</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>MnIs Name Format</em>' attribute.
+	 * @see #setM_nIsNameFormat(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIGenericElement_M_nIsNameFormat()
+	 * @model
+	 * @generated
+	 */
+	String getM_nIsNameFormat();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIGenericElement#getM_nIsNameFormat <em>MnIs Name Format</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>MnIs Name Format</em>' attribute.
+	 * @see #getM_nIsNameFormat()
+	 * @generated
+	 */
+	void setM_nIsNameFormat(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Frameset</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Frameset</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Frameset</em>' attribute.
+	 * @see #setFrameset(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIGenericElement_Frameset()
+	 * @model
+	 * @generated
+	 */
+	String getFrameset();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIGenericElement#getFrameset <em>Frameset</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Frameset</em>' attribute.
+	 * @see #getFrameset()
+	 * @generated
+	 */
+	void setFrameset(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Compartments</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Compartments</em>' containment reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Compartments</em>' containment reference.
+	 * @see #setCompartments(CompartmentsType)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIGenericElement_Compartments()
+	 * @model containment="true" resolveProxies="true"
+	 * @generated
+	 */
+	CompartmentsType getCompartments();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIGenericElement#getCompartments <em>Compartments</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Compartments</em>' containment reference.
+	 * @see #getCompartments()
+	 * @generated
+	 */
+	void setCompartments(CompartmentsType value);
+
+	/**
+	 * Returns the value of the '<em><b>Properties</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Properties</em>' containment reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Properties</em>' containment reference.
+	 * @see #setProperties(IPropertyContainer)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIGenericElement_Properties()
+	 * @model containment="true" resolveProxies="true"
+	 * @generated
+	 */
+	IPropertyContainer getProperties();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIGenericElement#getProperties <em>Properties</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Properties</em>' containment reference.
+	 * @see #getProperties()
+	 * @generated
+	 */
+	void setProperties(IPropertyContainer value);
+
+	/**
+	 * Returns the value of the '<em><b>MpImage View Data</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>MpImage View Data</em>' reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>MpImage View Data</em>' reference.
+	 * @see #setM_pImageViewData(CGIImageData)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIGenericElement_M_pImageViewData()
+	 * @model
+	 * @generated
+	 */
+	CGIImageData getM_pImageViewData();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIGenericElement#getM_pImageViewData <em>MpImage View Data</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>MpImage View Data</em>' reference.
+	 * @see #getM_pImageViewData()
+	 * @generated
+	 */
+	void setM_pImageViewData(CGIImageData value);
+
+	/**
+	 * Returns the value of the '<em><b>Mcs Context</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Mcs Context</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Mcs Context</em>' attribute.
+	 * @see #setM_csContext(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIGenericElement_M_csContext()
+	 * @model
+	 * @generated
+	 */
+	String getM_csContext();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIGenericElement#getM_csContext <em>Mcs Context</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Mcs Context</em>' attribute.
+	 * @see #getM_csContext()
+	 * @generated
+	 */
+	void setM_csContext(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Mcs Parts Array</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Mcs Parts Array</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Mcs Parts Array</em>' attribute.
+	 * @see #setM_csPartsArray(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIGenericElement_M_csPartsArray()
+	 * @model
+	 * @generated
+	 */
+	String getM_csPartsArray();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIGenericElement#getM_csPartsArray <em>Mcs Parts Array</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Mcs Parts Array</em>' attribute.
+	 * @see #getM_csPartsArray()
+	 * @generated
+	 */
+	void setM_csPartsArray(String value);
+
+	/**
+	 * Returns the value of the '<em><b>MbIs Structured</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>MbIs Structured</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>MbIs Structured</em>' attribute.
+	 * @see #setM_bIsStructured(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIGenericElement_M_bIsStructured()
+	 * @model
+	 * @generated
+	 */
+	String getM_bIsStructured();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIGenericElement#getM_bIsStructured <em>MbIs Structured</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>MbIs Structured</em>' attribute.
+	 * @see #getM_bIsStructured()
+	 * @generated
+	 */
+	void setM_bIsStructured(String value);
+
+} // CGIGenericElement
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/CGIImage.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/CGIImage.java
new file mode 100755
index 0000000..b99c5cf
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/CGIImage.java
@@ -0,0 +1,138 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel;
+
+import org.eclipse.emf.common.util.EList;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>CGI Image</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * </p>
+ * <ul>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIImage#getM_pModelObject <em>MpModel Object</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIImage#getM_pParent <em>MpParent</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIImage#getM_transform <em>Mtransform</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIImage#getM_pImageViewData <em>MpImage View Data</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIImage#getM_points <em>Mpoints</em>}</li>
+ * </ul>
+ *
+ * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIImage()
+ * @model
+ * @generated
+ */
+public interface CGIImage extends GraphElementsType {
+	/**
+	 * Returns the value of the '<em><b>MpModel Object</b></em>' reference list.
+	 * The list contents are of type {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UnknownType}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>MpModel Object</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>MpModel Object</em>' reference list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIImage_M_pModelObject()
+	 * @model
+	 * @generated
+	 */
+	EList<UnknownType> getM_pModelObject();
+
+	/**
+	 * Returns the value of the '<em><b>MpParent</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>MpParent</em>' reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>MpParent</em>' reference.
+	 * @see #setM_pParent(GraphElementsType)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIImage_M_pParent()
+	 * @model
+	 * @generated
+	 */
+	GraphElementsType getM_pParent();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIImage#getM_pParent <em>MpParent</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>MpParent</em>' reference.
+	 * @see #getM_pParent()
+	 * @generated
+	 */
+	void setM_pParent(GraphElementsType value);
+
+	/**
+	 * Returns the value of the '<em><b>Mtransform</b></em>' attribute list.
+	 * The list contents are of type {@link java.lang.String}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Mtransform</em>' attribute list isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Mtransform</em>' attribute list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIImage_M_transform()
+	 * @model unique="false"
+	 * @generated
+	 */
+	EList<String> getM_transform();
+
+	/**
+	 * Returns the value of the '<em><b>MpImage View Data</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>MpImage View Data</em>' reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>MpImage View Data</em>' reference.
+	 * @see #setM_pImageViewData(CGIImageData)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIImage_M_pImageViewData()
+	 * @model
+	 * @generated
+	 */
+	CGIImageData getM_pImageViewData();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIImage#getM_pImageViewData <em>MpImage View Data</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>MpImage View Data</em>' reference.
+	 * @see #getM_pImageViewData()
+	 * @generated
+	 */
+	void setM_pImageViewData(CGIImageData value);
+
+	/**
+	 * Returns the value of the '<em><b>Mpoints</b></em>' attribute list.
+	 * The list contents are of type {@link java.lang.String}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Mpoints</em>' attribute list isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Mpoints</em>' attribute list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIImage_M_points()
+	 * @model unique="false"
+	 * @generated
+	 */
+	EList<String> getM_points();
+
+} // CGIImage
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/CGIImageData.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/CGIImageData.java
new file mode 100755
index 0000000..e7475bb
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/CGIImageData.java
@@ -0,0 +1,175 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel;
+
+import org.eclipse.emf.common.util.EList;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>CGI Image Data</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * </p>
+ * <ul>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIImageData#getM_pModelObject <em>MpModel Object</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIImageData#getM_pParent <em>MpParent</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIImageData#getM_dataSize <em>Mdata Size</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIImageData#getM_data <em>Mdata</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIImageData#getM_srcFile <em>Msrc File</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIImageData#getM_fileModifiedTime <em>Mfile Modified Time</em>}</li>
+ * </ul>
+ *
+ * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIImageData()
+ * @model
+ * @generated
+ */
+public interface CGIImageData extends GraphElementsType {
+	/**
+	 * Returns the value of the '<em><b>MpModel Object</b></em>' reference list.
+	 * The list contents are of type {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UnknownType}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>MpModel Object</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>MpModel Object</em>' reference list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIImageData_M_pModelObject()
+	 * @model
+	 * @generated
+	 */
+	EList<UnknownType> getM_pModelObject();
+
+	/**
+	 * Returns the value of the '<em><b>MpParent</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>MpParent</em>' reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>MpParent</em>' reference.
+	 * @see #setM_pParent(GraphElementsType)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIImageData_M_pParent()
+	 * @model
+	 * @generated
+	 */
+	GraphElementsType getM_pParent();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIImageData#getM_pParent <em>MpParent</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>MpParent</em>' reference.
+	 * @see #getM_pParent()
+	 * @generated
+	 */
+	void setM_pParent(GraphElementsType value);
+
+	/**
+	 * Returns the value of the '<em><b>Mdata Size</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Mdata Size</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Mdata Size</em>' attribute.
+	 * @see #setM_dataSize(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIImageData_M_dataSize()
+	 * @model
+	 * @generated
+	 */
+	String getM_dataSize();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIImageData#getM_dataSize <em>Mdata Size</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Mdata Size</em>' attribute.
+	 * @see #getM_dataSize()
+	 * @generated
+	 */
+	void setM_dataSize(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Mdata</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Mdata</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Mdata</em>' attribute.
+	 * @see #setM_data(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIImageData_M_data()
+	 * @model
+	 * @generated
+	 */
+	String getM_data();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIImageData#getM_data <em>Mdata</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Mdata</em>' attribute.
+	 * @see #getM_data()
+	 * @generated
+	 */
+	void setM_data(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Msrc File</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Msrc File</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Msrc File</em>' attribute.
+	 * @see #setM_srcFile(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIImageData_M_srcFile()
+	 * @model
+	 * @generated
+	 */
+	String getM_srcFile();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIImageData#getM_srcFile <em>Msrc File</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Msrc File</em>' attribute.
+	 * @see #getM_srcFile()
+	 * @generated
+	 */
+	void setM_srcFile(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Mfile Modified Time</b></em>' attribute list.
+	 * The list contents are of type {@link java.lang.String}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Mfile Modified Time</em>' attribute list isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Mfile Modified Time</em>' attribute list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIImageData_M_fileModifiedTime()
+	 * @model unique="false"
+	 * @generated
+	 */
+	EList<String> getM_fileModifiedTime();
+
+} // CGIImageData
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/CGIInformationFlow.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/CGIInformationFlow.java
new file mode 100755
index 0000000..bc60ae8
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/CGIInformationFlow.java
@@ -0,0 +1,496 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel;
+
+import org.eclipse.emf.common.util.EList;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>CGI Information Flow</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * </p>
+ * <ul>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIInformationFlow#getM_pModelObject <em>MpModel Object</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIInformationFlow#getM_pParent <em>MpParent</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIInformationFlow#getM_pSource <em>MpSource</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIInformationFlow#getM_sourceType <em>Msource Type</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIInformationFlow#getM_pTarget <em>MpTarget</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIInformationFlow#getM_targetType <em>Mtarget Type</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIInformationFlow#getM_direction <em>Mdirection</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIInformationFlow#getM_rpn <em>Mrpn</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIInformationFlow#getM_anglePoint1 <em>Mangle Point1</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIInformationFlow#getM_anglePoint2 <em>Mangle Point2</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIInformationFlow#getM_line_style <em>Mline style</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIInformationFlow#getM_SourcePort <em>MSource Port</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIInformationFlow#getM_TargetPort <em>MTarget Port</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIInformationFlow#getM_bShowKeyword <em>MbShow Keyword</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIInformationFlow#getM_showConveyed <em>Mshow Conveyed</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIInformationFlow#getM_keyword <em>Mkeyword</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIInformationFlow#getM_conveyed <em>Mconveyed</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIInformationFlow#getM_arrow <em>Marrow</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIInformationFlow#getProperties <em>Properties</em>}</li>
+ * </ul>
+ *
+ * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIInformationFlow()
+ * @model
+ * @generated
+ */
+public interface CGIInformationFlow extends GraphElementsType {
+	/**
+	 * Returns the value of the '<em><b>MpModel Object</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>MpModel Object</em>' reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>MpModel Object</em>' reference.
+	 * @see #setM_pModelObject(IInformationFlow)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIInformationFlow_M_pModelObject()
+	 * @model
+	 * @generated
+	 */
+	IInformationFlow getM_pModelObject();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIInformationFlow#getM_pModelObject <em>MpModel Object</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>MpModel Object</em>' reference.
+	 * @see #getM_pModelObject()
+	 * @generated
+	 */
+	void setM_pModelObject(IInformationFlow value);
+
+	/**
+	 * Returns the value of the '<em><b>MpParent</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>MpParent</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>MpParent</em>' attribute.
+	 * @see #setM_pParent(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIInformationFlow_M_pParent()
+	 * @model
+	 * @generated
+	 */
+	String getM_pParent();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIInformationFlow#getM_pParent <em>MpParent</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>MpParent</em>' attribute.
+	 * @see #getM_pParent()
+	 * @generated
+	 */
+	void setM_pParent(String value);
+
+	/**
+	 * Returns the value of the '<em><b>MpSource</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>MpSource</em>' reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>MpSource</em>' reference.
+	 * @see #setM_pSource(M_pRootType)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIInformationFlow_M_pSource()
+	 * @model
+	 * @generated
+	 */
+	M_pRootType getM_pSource();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIInformationFlow#getM_pSource <em>MpSource</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>MpSource</em>' reference.
+	 * @see #getM_pSource()
+	 * @generated
+	 */
+	void setM_pSource(M_pRootType value);
+
+	/**
+	 * Returns the value of the '<em><b>Msource Type</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Msource 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>Msource Type</em>' attribute.
+	 * @see #setM_sourceType(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIInformationFlow_M_sourceType()
+	 * @model
+	 * @generated
+	 */
+	String getM_sourceType();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIInformationFlow#getM_sourceType <em>Msource Type</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Msource Type</em>' attribute.
+	 * @see #getM_sourceType()
+	 * @generated
+	 */
+	void setM_sourceType(String value);
+
+	/**
+	 * Returns the value of the '<em><b>MpTarget</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>MpTarget</em>' reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>MpTarget</em>' reference.
+	 * @see #setM_pTarget(M_pRootType)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIInformationFlow_M_pTarget()
+	 * @model
+	 * @generated
+	 */
+	M_pRootType getM_pTarget();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIInformationFlow#getM_pTarget <em>MpTarget</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>MpTarget</em>' reference.
+	 * @see #getM_pTarget()
+	 * @generated
+	 */
+	void setM_pTarget(M_pRootType value);
+
+	/**
+	 * Returns the value of the '<em><b>Mtarget Type</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Mtarget 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>Mtarget Type</em>' attribute.
+	 * @see #setM_targetType(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIInformationFlow_M_targetType()
+	 * @model
+	 * @generated
+	 */
+	String getM_targetType();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIInformationFlow#getM_targetType <em>Mtarget Type</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Mtarget Type</em>' attribute.
+	 * @see #getM_targetType()
+	 * @generated
+	 */
+	void setM_targetType(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Mdirection</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Mdirection</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Mdirection</em>' attribute.
+	 * @see #setM_direction(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIInformationFlow_M_direction()
+	 * @model
+	 * @generated
+	 */
+	String getM_direction();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIInformationFlow#getM_direction <em>Mdirection</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Mdirection</em>' attribute.
+	 * @see #getM_direction()
+	 * @generated
+	 */
+	void setM_direction(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Mrpn</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Mrpn</em>' containment reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Mrpn</em>' containment reference.
+	 * @see #setM_rpn(CGIText)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIInformationFlow_M_rpn()
+	 * @model containment="true" resolveProxies="true"
+	 * @generated
+	 */
+	CGIText getM_rpn();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIInformationFlow#getM_rpn <em>Mrpn</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Mrpn</em>' containment reference.
+	 * @see #getM_rpn()
+	 * @generated
+	 */
+	void setM_rpn(CGIText value);
+
+	/**
+	 * Returns the value of the '<em><b>Mangle Point1</b></em>' attribute list.
+	 * The list contents are of type {@link java.lang.String}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Mangle Point1</em>' attribute list isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Mangle Point1</em>' attribute list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIInformationFlow_M_anglePoint1()
+	 * @model unique="false"
+	 * @generated
+	 */
+	EList<String> getM_anglePoint1();
+
+	/**
+	 * Returns the value of the '<em><b>Mangle Point2</b></em>' attribute list.
+	 * The list contents are of type {@link java.lang.String}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Mangle Point2</em>' attribute list isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Mangle Point2</em>' attribute list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIInformationFlow_M_anglePoint2()
+	 * @model unique="false"
+	 * @generated
+	 */
+	EList<String> getM_anglePoint2();
+
+	/**
+	 * Returns the value of the '<em><b>Mline style</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Mline style</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Mline style</em>' attribute.
+	 * @see #setM_line_style(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIInformationFlow_M_line_style()
+	 * @model
+	 * @generated
+	 */
+	String getM_line_style();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIInformationFlow#getM_line_style <em>Mline style</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Mline style</em>' attribute.
+	 * @see #getM_line_style()
+	 * @generated
+	 */
+	void setM_line_style(String value);
+
+	/**
+	 * Returns the value of the '<em><b>MSource Port</b></em>' attribute list.
+	 * The list contents are of type {@link java.lang.String}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>MSource Port</em>' attribute list isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>MSource Port</em>' attribute list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIInformationFlow_M_SourcePort()
+	 * @model unique="false"
+	 * @generated
+	 */
+	EList<String> getM_SourcePort();
+
+	/**
+	 * Returns the value of the '<em><b>MTarget Port</b></em>' attribute list.
+	 * The list contents are of type {@link java.lang.String}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>MTarget Port</em>' attribute list isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>MTarget Port</em>' attribute list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIInformationFlow_M_TargetPort()
+	 * @model unique="false"
+	 * @generated
+	 */
+	EList<String> getM_TargetPort();
+
+	/**
+	 * Returns the value of the '<em><b>MbShow Keyword</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>MbShow Keyword</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>MbShow Keyword</em>' attribute.
+	 * @see #setM_bShowKeyword(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIInformationFlow_M_bShowKeyword()
+	 * @model
+	 * @generated
+	 */
+	String getM_bShowKeyword();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIInformationFlow#getM_bShowKeyword <em>MbShow Keyword</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>MbShow Keyword</em>' attribute.
+	 * @see #getM_bShowKeyword()
+	 * @generated
+	 */
+	void setM_bShowKeyword(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Mshow Conveyed</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Mshow Conveyed</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Mshow Conveyed</em>' attribute.
+	 * @see #setM_showConveyed(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIInformationFlow_M_showConveyed()
+	 * @model
+	 * @generated
+	 */
+	String getM_showConveyed();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIInformationFlow#getM_showConveyed <em>Mshow Conveyed</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Mshow Conveyed</em>' attribute.
+	 * @see #getM_showConveyed()
+	 * @generated
+	 */
+	void setM_showConveyed(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Mkeyword</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Mkeyword</em>' containment reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Mkeyword</em>' containment reference.
+	 * @see #setM_keyword(CGIText)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIInformationFlow_M_keyword()
+	 * @model containment="true" resolveProxies="true"
+	 * @generated
+	 */
+	CGIText getM_keyword();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIInformationFlow#getM_keyword <em>Mkeyword</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Mkeyword</em>' containment reference.
+	 * @see #getM_keyword()
+	 * @generated
+	 */
+	void setM_keyword(CGIText value);
+
+	/**
+	 * Returns the value of the '<em><b>Mconveyed</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Mconveyed</em>' containment reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Mconveyed</em>' containment reference.
+	 * @see #setM_conveyed(CGIText)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIInformationFlow_M_conveyed()
+	 * @model containment="true" resolveProxies="true"
+	 * @generated
+	 */
+	CGIText getM_conveyed();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIInformationFlow#getM_conveyed <em>Mconveyed</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Mconveyed</em>' containment reference.
+	 * @see #getM_conveyed()
+	 * @generated
+	 */
+	void setM_conveyed(CGIText value);
+
+	/**
+	 * Returns the value of the '<em><b>Marrow</b></em>' attribute list.
+	 * The list contents are of type {@link java.lang.String}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Marrow</em>' attribute list isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Marrow</em>' attribute list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIInformationFlow_M_arrow()
+	 * @model unique="false"
+	 * @generated
+	 */
+	EList<String> getM_arrow();
+
+	/**
+	 * Returns the value of the '<em><b>Properties</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Properties</em>' containment reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Properties</em>' containment reference.
+	 * @see #setProperties(IPropertyContainer)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIInformationFlow_Properties()
+	 * @model containment="true" resolveProxies="true"
+	 * @generated
+	 */
+	IPropertyContainer getProperties();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIInformationFlow#getProperties <em>Properties</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Properties</em>' containment reference.
+	 * @see #getProperties()
+	 * @generated
+	 */
+	void setProperties(IPropertyContainer value);
+
+} // CGIInformationFlow
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/CGIInheritance.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/CGIInheritance.java
new file mode 100755
index 0000000..f906911
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/CGIInheritance.java
@@ -0,0 +1,496 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel;
+
+import org.eclipse.emf.common.util.EList;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>CGI Inheritance</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * </p>
+ * <ul>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIInheritance#getM_pModelObject <em>MpModel Object</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIInheritance#getM_pParent <em>MpParent</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIInheritance#getM_pSource <em>MpSource</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIInheritance#getM_sourceType <em>Msource Type</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIInheritance#getM_pTarget <em>MpTarget</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIInheritance#getM_targetType <em>Mtarget Type</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIInheritance#getM_direction <em>Mdirection</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIInheritance#getM_rpn <em>Mrpn</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIInheritance#getM_anglePoint1 <em>Mangle Point1</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIInheritance#getM_anglePoint2 <em>Mangle Point2</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIInheritance#getM_line_style <em>Mline style</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIInheritance#getM_SourcePort <em>MSource Port</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIInheritance#getM_TargetPort <em>MTarget Port</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIInheritance#getM_ShowName <em>MShow Name</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIInheritance#getM_ShowStereotype <em>MShow Stereotype</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIInheritance#getProperties <em>Properties</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIInheritance#getM_color <em>Mcolor</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIInheritance#getM_lineWidth <em>Mline Width</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIInheritance#getM_arrow <em>Marrow</em>}</li>
+ * </ul>
+ *
+ * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIInheritance()
+ * @model
+ * @generated
+ */
+public interface CGIInheritance extends GraphElementsType {
+	/**
+	 * Returns the value of the '<em><b>MpModel Object</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>MpModel Object</em>' reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>MpModel Object</em>' reference.
+	 * @see #setM_pModelObject(IModelElement)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIInheritance_M_pModelObject()
+	 * @model
+	 * @generated
+	 */
+	IModelElement getM_pModelObject();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIInheritance#getM_pModelObject <em>MpModel Object</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>MpModel Object</em>' reference.
+	 * @see #getM_pModelObject()
+	 * @generated
+	 */
+	void setM_pModelObject(IModelElement value);
+
+	/**
+	 * Returns the value of the '<em><b>MpParent</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>MpParent</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>MpParent</em>' attribute.
+	 * @see #setM_pParent(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIInheritance_M_pParent()
+	 * @model
+	 * @generated
+	 */
+	String getM_pParent();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIInheritance#getM_pParent <em>MpParent</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>MpParent</em>' attribute.
+	 * @see #getM_pParent()
+	 * @generated
+	 */
+	void setM_pParent(String value);
+
+	/**
+	 * Returns the value of the '<em><b>MpSource</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>MpSource</em>' reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>MpSource</em>' reference.
+	 * @see #setM_pSource(GraphElementsType)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIInheritance_M_pSource()
+	 * @model
+	 * @generated
+	 */
+	GraphElementsType getM_pSource();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIInheritance#getM_pSource <em>MpSource</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>MpSource</em>' reference.
+	 * @see #getM_pSource()
+	 * @generated
+	 */
+	void setM_pSource(GraphElementsType value);
+
+	/**
+	 * Returns the value of the '<em><b>Msource Type</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Msource 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>Msource Type</em>' attribute.
+	 * @see #setM_sourceType(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIInheritance_M_sourceType()
+	 * @model
+	 * @generated
+	 */
+	String getM_sourceType();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIInheritance#getM_sourceType <em>Msource Type</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Msource Type</em>' attribute.
+	 * @see #getM_sourceType()
+	 * @generated
+	 */
+	void setM_sourceType(String value);
+
+	/**
+	 * Returns the value of the '<em><b>MpTarget</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>MpTarget</em>' reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>MpTarget</em>' reference.
+	 * @see #setM_pTarget(GraphElementsType)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIInheritance_M_pTarget()
+	 * @model
+	 * @generated
+	 */
+	GraphElementsType getM_pTarget();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIInheritance#getM_pTarget <em>MpTarget</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>MpTarget</em>' reference.
+	 * @see #getM_pTarget()
+	 * @generated
+	 */
+	void setM_pTarget(GraphElementsType value);
+
+	/**
+	 * Returns the value of the '<em><b>Mtarget Type</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Mtarget 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>Mtarget Type</em>' attribute.
+	 * @see #setM_targetType(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIInheritance_M_targetType()
+	 * @model
+	 * @generated
+	 */
+	String getM_targetType();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIInheritance#getM_targetType <em>Mtarget Type</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Mtarget Type</em>' attribute.
+	 * @see #getM_targetType()
+	 * @generated
+	 */
+	void setM_targetType(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Mdirection</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Mdirection</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Mdirection</em>' attribute.
+	 * @see #setM_direction(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIInheritance_M_direction()
+	 * @model
+	 * @generated
+	 */
+	String getM_direction();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIInheritance#getM_direction <em>Mdirection</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Mdirection</em>' attribute.
+	 * @see #getM_direction()
+	 * @generated
+	 */
+	void setM_direction(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Mrpn</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Mrpn</em>' containment reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Mrpn</em>' containment reference.
+	 * @see #setM_rpn(CGIText)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIInheritance_M_rpn()
+	 * @model containment="true" resolveProxies="true"
+	 * @generated
+	 */
+	CGIText getM_rpn();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIInheritance#getM_rpn <em>Mrpn</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Mrpn</em>' containment reference.
+	 * @see #getM_rpn()
+	 * @generated
+	 */
+	void setM_rpn(CGIText value);
+
+	/**
+	 * Returns the value of the '<em><b>Mangle Point1</b></em>' attribute list.
+	 * The list contents are of type {@link java.lang.String}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Mangle Point1</em>' attribute list isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Mangle Point1</em>' attribute list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIInheritance_M_anglePoint1()
+	 * @model unique="false"
+	 * @generated
+	 */
+	EList<String> getM_anglePoint1();
+
+	/**
+	 * Returns the value of the '<em><b>Mangle Point2</b></em>' attribute list.
+	 * The list contents are of type {@link java.lang.String}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Mangle Point2</em>' attribute list isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Mangle Point2</em>' attribute list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIInheritance_M_anglePoint2()
+	 * @model unique="false"
+	 * @generated
+	 */
+	EList<String> getM_anglePoint2();
+
+	/**
+	 * Returns the value of the '<em><b>Mline style</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Mline style</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Mline style</em>' attribute.
+	 * @see #setM_line_style(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIInheritance_M_line_style()
+	 * @model
+	 * @generated
+	 */
+	String getM_line_style();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIInheritance#getM_line_style <em>Mline style</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Mline style</em>' attribute.
+	 * @see #getM_line_style()
+	 * @generated
+	 */
+	void setM_line_style(String value);
+
+	/**
+	 * Returns the value of the '<em><b>MSource Port</b></em>' attribute list.
+	 * The list contents are of type {@link java.lang.String}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>MSource Port</em>' attribute list isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>MSource Port</em>' attribute list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIInheritance_M_SourcePort()
+	 * @model unique="false"
+	 * @generated
+	 */
+	EList<String> getM_SourcePort();
+
+	/**
+	 * Returns the value of the '<em><b>MTarget Port</b></em>' attribute list.
+	 * The list contents are of type {@link java.lang.String}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>MTarget Port</em>' attribute list isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>MTarget Port</em>' attribute list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIInheritance_M_TargetPort()
+	 * @model unique="false"
+	 * @generated
+	 */
+	EList<String> getM_TargetPort();
+
+	/**
+	 * Returns the value of the '<em><b>MShow Name</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>MShow Name</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>MShow Name</em>' attribute.
+	 * @see #setM_ShowName(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIInheritance_M_ShowName()
+	 * @model
+	 * @generated
+	 */
+	String getM_ShowName();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIInheritance#getM_ShowName <em>MShow Name</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>MShow Name</em>' attribute.
+	 * @see #getM_ShowName()
+	 * @generated
+	 */
+	void setM_ShowName(String value);
+
+	/**
+	 * Returns the value of the '<em><b>MShow Stereotype</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>MShow Stereotype</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>MShow Stereotype</em>' attribute.
+	 * @see #setM_ShowStereotype(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIInheritance_M_ShowStereotype()
+	 * @model
+	 * @generated
+	 */
+	String getM_ShowStereotype();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIInheritance#getM_ShowStereotype <em>MShow Stereotype</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>MShow Stereotype</em>' attribute.
+	 * @see #getM_ShowStereotype()
+	 * @generated
+	 */
+	void setM_ShowStereotype(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Properties</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Properties</em>' containment reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Properties</em>' containment reference.
+	 * @see #setProperties(IPropertyContainer)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIInheritance_Properties()
+	 * @model containment="true" resolveProxies="true"
+	 * @generated
+	 */
+	IPropertyContainer getProperties();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIInheritance#getProperties <em>Properties</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Properties</em>' containment reference.
+	 * @see #getProperties()
+	 * @generated
+	 */
+	void setProperties(IPropertyContainer value);
+
+	/**
+	 * Returns the value of the '<em><b>Mcolor</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Mcolor</em>' containment reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Mcolor</em>' containment reference.
+	 * @see #setM_color(IColor)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIInheritance_M_color()
+	 * @model containment="true" resolveProxies="true"
+	 * @generated
+	 */
+	IColor getM_color();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIInheritance#getM_color <em>Mcolor</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Mcolor</em>' containment reference.
+	 * @see #getM_color()
+	 * @generated
+	 */
+	void setM_color(IColor value);
+
+	/**
+	 * Returns the value of the '<em><b>Mline Width</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Mline Width</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Mline Width</em>' attribute.
+	 * @see #setM_lineWidth(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIInheritance_M_lineWidth()
+	 * @model
+	 * @generated
+	 */
+	String getM_lineWidth();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIInheritance#getM_lineWidth <em>Mline Width</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Mline Width</em>' attribute.
+	 * @see #getM_lineWidth()
+	 * @generated
+	 */
+	void setM_lineWidth(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Marrow</b></em>' attribute list.
+	 * The list contents are of type {@link java.lang.String}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Marrow</em>' attribute list isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Marrow</em>' attribute list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIInheritance_M_arrow()
+	 * @model unique="false"
+	 * @generated
+	 */
+	EList<String> getM_arrow();
+
+} // CGIInheritance
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/CGIMFCCtrl.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/CGIMFCCtrl.java
new file mode 100755
index 0000000..ec9432d
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/CGIMFCCtrl.java
@@ -0,0 +1,317 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel;
+
+import org.eclipse.emf.common.util.EList;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>CGIMFC Ctrl</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * </p>
+ * <ul>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMFCCtrl#getProperties <em>Properties</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMFCCtrl#getM_pModelObject <em>MpModel Object</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMFCCtrl#getM_pParent <em>MpParent</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMFCCtrl#getM_transform <em>Mtransform</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMFCCtrl#getM_polygon <em>Mpolygon</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMFCCtrl#getM_nNameFormat <em>MnName Format</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMFCCtrl#getM_nIsNameFormat <em>MnIs Name Format</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMFCCtrl#getCompartments <em>Compartments</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMFCCtrl#getM_csModelObjPath <em>Mcs Model Obj Path</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMFCCtrl#getM_csName <em>Mcs Name</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMFCCtrl#getM_PartsArray <em>MParts Array</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMFCCtrl#getM_csButtonCaption <em>Mcs Button Caption</em>}</li>
+ * </ul>
+ *
+ * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIMFCCtrl()
+ * @model
+ * @generated
+ */
+public interface CGIMFCCtrl extends GraphElementsType {
+	/**
+	 * Returns the value of the '<em><b>Properties</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Properties</em>' containment reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Properties</em>' containment reference.
+	 * @see #setProperties(IPropertyContainer)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIMFCCtrl_Properties()
+	 * @model containment="true" resolveProxies="true"
+	 * @generated
+	 */
+	IPropertyContainer getProperties();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMFCCtrl#getProperties <em>Properties</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Properties</em>' containment reference.
+	 * @see #getProperties()
+	 * @generated
+	 */
+	void setProperties(IPropertyContainer value);
+
+	/**
+	 * Returns the value of the '<em><b>MpModel Object</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>MpModel Object</em>' reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>MpModel Object</em>' reference.
+	 * @see #setM_pModelObject(IReception)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIMFCCtrl_M_pModelObject()
+	 * @model
+	 * @generated
+	 */
+	IReception getM_pModelObject();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMFCCtrl#getM_pModelObject <em>MpModel Object</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>MpModel Object</em>' reference.
+	 * @see #getM_pModelObject()
+	 * @generated
+	 */
+	void setM_pModelObject(IReception value);
+
+	/**
+	 * Returns the value of the '<em><b>MpParent</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>MpParent</em>' reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>MpParent</em>' reference.
+	 * @see #setM_pParent(GraphElementsType)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIMFCCtrl_M_pParent()
+	 * @model
+	 * @generated
+	 */
+	GraphElementsType getM_pParent();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMFCCtrl#getM_pParent <em>MpParent</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>MpParent</em>' reference.
+	 * @see #getM_pParent()
+	 * @generated
+	 */
+	void setM_pParent(GraphElementsType value);
+
+	/**
+	 * Returns the value of the '<em><b>Mtransform</b></em>' attribute list.
+	 * The list contents are of type {@link java.lang.String}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Mtransform</em>' attribute list isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Mtransform</em>' attribute list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIMFCCtrl_M_transform()
+	 * @model unique="false"
+	 * @generated
+	 */
+	EList<String> getM_transform();
+
+	/**
+	 * Returns the value of the '<em><b>Mpolygon</b></em>' attribute list.
+	 * The list contents are of type {@link java.lang.String}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Mpolygon</em>' attribute list isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Mpolygon</em>' attribute list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIMFCCtrl_M_polygon()
+	 * @model unique="false"
+	 * @generated
+	 */
+	EList<String> getM_polygon();
+
+	/**
+	 * Returns the value of the '<em><b>MnName Format</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>MnName Format</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>MnName Format</em>' attribute.
+	 * @see #setM_nNameFormat(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIMFCCtrl_M_nNameFormat()
+	 * @model
+	 * @generated
+	 */
+	String getM_nNameFormat();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMFCCtrl#getM_nNameFormat <em>MnName Format</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>MnName Format</em>' attribute.
+	 * @see #getM_nNameFormat()
+	 * @generated
+	 */
+	void setM_nNameFormat(String value);
+
+	/**
+	 * Returns the value of the '<em><b>MnIs Name Format</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>MnIs Name Format</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>MnIs Name Format</em>' attribute.
+	 * @see #setM_nIsNameFormat(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIMFCCtrl_M_nIsNameFormat()
+	 * @model
+	 * @generated
+	 */
+	String getM_nIsNameFormat();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMFCCtrl#getM_nIsNameFormat <em>MnIs Name Format</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>MnIs Name Format</em>' attribute.
+	 * @see #getM_nIsNameFormat()
+	 * @generated
+	 */
+	void setM_nIsNameFormat(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Compartments</b></em>' reference list.
+	 * The list contents are of type {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UnknownType}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Compartments</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>Compartments</em>' reference list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIMFCCtrl_Compartments()
+	 * @model
+	 * @generated
+	 */
+	EList<UnknownType> getCompartments();
+
+	/**
+	 * Returns the value of the '<em><b>Mcs Model Obj Path</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Mcs Model Obj Path</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Mcs Model Obj Path</em>' attribute.
+	 * @see #setM_csModelObjPath(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIMFCCtrl_M_csModelObjPath()
+	 * @model
+	 * @generated
+	 */
+	String getM_csModelObjPath();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMFCCtrl#getM_csModelObjPath <em>Mcs Model Obj Path</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Mcs Model Obj Path</em>' attribute.
+	 * @see #getM_csModelObjPath()
+	 * @generated
+	 */
+	void setM_csModelObjPath(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Mcs Name</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Mcs Name</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Mcs Name</em>' attribute.
+	 * @see #setM_csName(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIMFCCtrl_M_csName()
+	 * @model
+	 * @generated
+	 */
+	String getM_csName();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMFCCtrl#getM_csName <em>Mcs Name</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Mcs Name</em>' attribute.
+	 * @see #getM_csName()
+	 * @generated
+	 */
+	void setM_csName(String value);
+
+	/**
+	 * Returns the value of the '<em><b>MParts Array</b></em>' reference list.
+	 * The list contents are of type {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.DependsOnType}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>MParts Array</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>MParts Array</em>' reference list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIMFCCtrl_M_PartsArray()
+	 * @model
+	 * @generated
+	 */
+	EList<DependsOnType> getM_PartsArray();
+
+	/**
+	 * Returns the value of the '<em><b>Mcs Button Caption</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Mcs Button Caption</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Mcs Button Caption</em>' attribute.
+	 * @see #setM_csButtonCaption(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIMFCCtrl_M_csButtonCaption()
+	 * @model
+	 * @generated
+	 */
+	String getM_csButtonCaption();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMFCCtrl#getM_csButtonCaption <em>Mcs Button Caption</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Mcs Button Caption</em>' attribute.
+	 * @see #getM_csButtonCaption()
+	 * @generated
+	 */
+	void setM_csButtonCaption(String value);
+
+} // CGIMFCCtrl
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/CGIMessageLabel.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/CGIMessageLabel.java
new file mode 100755
index 0000000..47940af
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/CGIMessageLabel.java
@@ -0,0 +1,140 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel;
+
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>CGI Message Label</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * </p>
+ * <ul>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMessageLabel#getM_pModelObject <em>MpModel Object</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMessageLabel#getM_pParent <em>MpParent</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMessageLabel#getM_pCommunicationConnection <em>MpCommunication Connection</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMessageLabel#getPercent <em>Percent</em>}</li>
+ * </ul>
+ *
+ * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIMessageLabel()
+ * @model
+ * @generated
+ */
+public interface CGIMessageLabel extends GraphElementsType {
+	/**
+	 * Returns the value of the '<em><b>MpModel Object</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>MpModel Object</em>' reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>MpModel Object</em>' reference.
+	 * @see #setM_pModelObject(IMessage)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIMessageLabel_M_pModelObject()
+	 * @model
+	 * @generated
+	 */
+	IMessage getM_pModelObject();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMessageLabel#getM_pModelObject <em>MpModel Object</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>MpModel Object</em>' reference.
+	 * @see #getM_pModelObject()
+	 * @generated
+	 */
+	void setM_pModelObject(IMessage value);
+
+	/**
+	 * Returns the value of the '<em><b>MpParent</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>MpParent</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>MpParent</em>' attribute.
+	 * @see #setM_pParent(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIMessageLabel_M_pParent()
+	 * @model
+	 * @generated
+	 */
+	String getM_pParent();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMessageLabel#getM_pParent <em>MpParent</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>MpParent</em>' attribute.
+	 * @see #getM_pParent()
+	 * @generated
+	 */
+	void setM_pParent(String value);
+
+	/**
+	 * Returns the value of the '<em><b>MpCommunication Connection</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>MpCommunication Connection</em>' reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>MpCommunication Connection</em>' reference.
+	 * @see #setM_pCommunicationConnection(CGIAssociationRole)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIMessageLabel_M_pCommunicationConnection()
+	 * @model
+	 * @generated
+	 */
+	CGIAssociationRole getM_pCommunicationConnection();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMessageLabel#getM_pCommunicationConnection <em>MpCommunication Connection</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>MpCommunication Connection</em>' reference.
+	 * @see #getM_pCommunicationConnection()
+	 * @generated
+	 */
+	void setM_pCommunicationConnection(CGIAssociationRole value);
+
+	/**
+	 * Returns the value of the '<em><b>Percent</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Percent</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Percent</em>' attribute.
+	 * @see #setPercent(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIMessageLabel_Percent()
+	 * @model
+	 * @generated
+	 */
+	String getPercent();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMessageLabel#getPercent <em>Percent</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Percent</em>' attribute.
+	 * @see #getPercent()
+	 * @generated
+	 */
+	void setPercent(String value);
+
+} // CGIMessageLabel
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/CGIMscChart.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/CGIMscChart.java
new file mode 100755
index 0000000..60b15dd
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/CGIMscChart.java
@@ -0,0 +1,599 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel;
+
+import org.eclipse.emf.common.util.EList;
+
+import org.eclipse.emf.ecore.EObject;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>CGI Msc Chart</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * </p>
+ * <ul>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscChart#getVLadderMargin <em>VLadder Margin</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscChart#getM_usingActivationBar <em>Musing Activation Bar</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscChart#getId <em>Id</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscChart#getM_type <em>Mtype</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscChart#getM_pModelObject <em>MpModel Object</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscChart#getM_pParent <em>MpParent</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscChart#getM_name <em>Mname</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscChart#getM_drawBehavior <em>Mdraw Behavior</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscChart#getM_bIsPreferencesInitialized <em>MbIs Preferences Initialized</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscChart#getElementList <em>Element List</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscChart#getGraphElements <em>Graph Elements</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscChart#getM_access <em>Maccess</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscChart#getM_modified <em>Mmodified</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscChart#getM_fileVersion <em>Mfile Version</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscChart#getM_nModifyDate <em>MnModify Date</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscChart#getM_nCreateDate <em>MnCreate Date</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscChart#getM_creator <em>Mcreator</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscChart#getM_bScaleWithZoom <em>MbScale With Zoom</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscChart#getM_arrowStyle <em>Marrow Style</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscChart#getM_pRoot <em>MpRoot</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscChart#getM_currentLeftTop <em>Mcurrent Left Top</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscChart#getM_currentRightBottom <em>Mcurrent Right Bottom</em>}</li>
+ * </ul>
+ *
+ * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIMscChart()
+ * @model
+ * @generated
+ */
+public interface CGIMscChart extends EObject {
+	/**
+	 * Returns the value of the '<em><b>VLadder Margin</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>VLadder Margin</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>VLadder Margin</em>' attribute.
+	 * @see #setVLadderMargin(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIMscChart_VLadderMargin()
+	 * @model
+	 * @generated
+	 */
+	String getVLadderMargin();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscChart#getVLadderMargin <em>VLadder Margin</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>VLadder Margin</em>' attribute.
+	 * @see #getVLadderMargin()
+	 * @generated
+	 */
+	void setVLadderMargin(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Musing Activation Bar</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Musing Activation Bar</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Musing Activation Bar</em>' attribute.
+	 * @see #setM_usingActivationBar(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIMscChart_M_usingActivationBar()
+	 * @model
+	 * @generated
+	 */
+	String getM_usingActivationBar();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscChart#getM_usingActivationBar <em>Musing Activation Bar</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Musing Activation Bar</em>' attribute.
+	 * @see #getM_usingActivationBar()
+	 * @generated
+	 */
+	void setM_usingActivationBar(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Id</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Id</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Id</em>' attribute.
+	 * @see #setId(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIMscChart_Id()
+	 * @model
+	 * @generated
+	 */
+	String getId();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscChart#getId <em>Id</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Id</em>' attribute.
+	 * @see #getId()
+	 * @generated
+	 */
+	void setId(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Mtype</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Mtype</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Mtype</em>' attribute.
+	 * @see #setM_type(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIMscChart_M_type()
+	 * @model
+	 * @generated
+	 */
+	String getM_type();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscChart#getM_type <em>Mtype</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Mtype</em>' attribute.
+	 * @see #getM_type()
+	 * @generated
+	 */
+	void setM_type(String value);
+
+	/**
+	 * Returns the value of the '<em><b>MpModel Object</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>MpModel Object</em>' reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>MpModel Object</em>' reference.
+	 * @see #setM_pModelObject(IMSC)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIMscChart_M_pModelObject()
+	 * @model
+	 * @generated
+	 */
+	IMSC getM_pModelObject();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscChart#getM_pModelObject <em>MpModel Object</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>MpModel Object</em>' reference.
+	 * @see #getM_pModelObject()
+	 * @generated
+	 */
+	void setM_pModelObject(IMSC value);
+
+	/**
+	 * Returns the value of the '<em><b>MpParent</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>MpParent</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>MpParent</em>' attribute.
+	 * @see #setM_pParent(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIMscChart_M_pParent()
+	 * @model
+	 * @generated
+	 */
+	String getM_pParent();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscChart#getM_pParent <em>MpParent</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>MpParent</em>' attribute.
+	 * @see #getM_pParent()
+	 * @generated
+	 */
+	void setM_pParent(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Mname</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Mname</em>' containment reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Mname</em>' containment reference.
+	 * @see #setM_name(CGIText)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIMscChart_M_name()
+	 * @model containment="true" resolveProxies="true"
+	 * @generated
+	 */
+	CGIText getM_name();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscChart#getM_name <em>Mname</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Mname</em>' containment reference.
+	 * @see #getM_name()
+	 * @generated
+	 */
+	void setM_name(CGIText value);
+
+	/**
+	 * Returns the value of the '<em><b>Mdraw Behavior</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Mdraw Behavior</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Mdraw Behavior</em>' attribute.
+	 * @see #setM_drawBehavior(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIMscChart_M_drawBehavior()
+	 * @model
+	 * @generated
+	 */
+	String getM_drawBehavior();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscChart#getM_drawBehavior <em>Mdraw Behavior</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Mdraw Behavior</em>' attribute.
+	 * @see #getM_drawBehavior()
+	 * @generated
+	 */
+	void setM_drawBehavior(String value);
+
+	/**
+	 * Returns the value of the '<em><b>MbIs Preferences Initialized</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>MbIs Preferences Initialized</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>MbIs Preferences Initialized</em>' attribute.
+	 * @see #setM_bIsPreferencesInitialized(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIMscChart_M_bIsPreferencesInitialized()
+	 * @model
+	 * @generated
+	 */
+	String getM_bIsPreferencesInitialized();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscChart#getM_bIsPreferencesInitialized <em>MbIs Preferences Initialized</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>MbIs Preferences Initialized</em>' attribute.
+	 * @see #getM_bIsPreferencesInitialized()
+	 * @generated
+	 */
+	void setM_bIsPreferencesInitialized(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Element List</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Element List</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Element List</em>' attribute.
+	 * @see #setElementList(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIMscChart_ElementList()
+	 * @model
+	 * @generated
+	 */
+	String getElementList();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscChart#getElementList <em>Element List</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Element List</em>' attribute.
+	 * @see #getElementList()
+	 * @generated
+	 */
+	void setElementList(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Graph Elements</b></em>' containment reference list.
+	 * The list contents are of type {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.GraphElementsType}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Graph Elements</em>' containment reference list isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Graph Elements</em>' containment reference list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIMscChart_GraphElements()
+	 * @model containment="true" resolveProxies="true"
+	 * @generated
+	 */
+	EList<GraphElementsType> getGraphElements();
+
+	/**
+	 * Returns the value of the '<em><b>Maccess</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Maccess</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Maccess</em>' attribute.
+	 * @see #setM_access(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIMscChart_M_access()
+	 * @model
+	 * @generated
+	 */
+	String getM_access();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscChart#getM_access <em>Maccess</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Maccess</em>' attribute.
+	 * @see #getM_access()
+	 * @generated
+	 */
+	void setM_access(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Mmodified</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Mmodified</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Mmodified</em>' attribute.
+	 * @see #setM_modified(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIMscChart_M_modified()
+	 * @model
+	 * @generated
+	 */
+	String getM_modified();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscChart#getM_modified <em>Mmodified</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Mmodified</em>' attribute.
+	 * @see #getM_modified()
+	 * @generated
+	 */
+	void setM_modified(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Mfile Version</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Mfile Version</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Mfile Version</em>' attribute.
+	 * @see #setM_fileVersion(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIMscChart_M_fileVersion()
+	 * @model
+	 * @generated
+	 */
+	String getM_fileVersion();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscChart#getM_fileVersion <em>Mfile Version</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Mfile Version</em>' attribute.
+	 * @see #getM_fileVersion()
+	 * @generated
+	 */
+	void setM_fileVersion(String value);
+
+	/**
+	 * Returns the value of the '<em><b>MnModify Date</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>MnModify Date</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>MnModify Date</em>' attribute.
+	 * @see #setM_nModifyDate(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIMscChart_M_nModifyDate()
+	 * @model
+	 * @generated
+	 */
+	String getM_nModifyDate();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscChart#getM_nModifyDate <em>MnModify Date</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>MnModify Date</em>' attribute.
+	 * @see #getM_nModifyDate()
+	 * @generated
+	 */
+	void setM_nModifyDate(String value);
+
+	/**
+	 * Returns the value of the '<em><b>MnCreate Date</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>MnCreate Date</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>MnCreate Date</em>' attribute.
+	 * @see #setM_nCreateDate(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIMscChart_M_nCreateDate()
+	 * @model
+	 * @generated
+	 */
+	String getM_nCreateDate();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscChart#getM_nCreateDate <em>MnCreate Date</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>MnCreate Date</em>' attribute.
+	 * @see #getM_nCreateDate()
+	 * @generated
+	 */
+	void setM_nCreateDate(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Mcreator</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Mcreator</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Mcreator</em>' attribute.
+	 * @see #setM_creator(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIMscChart_M_creator()
+	 * @model
+	 * @generated
+	 */
+	String getM_creator();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscChart#getM_creator <em>Mcreator</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Mcreator</em>' attribute.
+	 * @see #getM_creator()
+	 * @generated
+	 */
+	void setM_creator(String value);
+
+	/**
+	 * Returns the value of the '<em><b>MbScale With Zoom</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>MbScale With Zoom</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>MbScale With Zoom</em>' attribute.
+	 * @see #setM_bScaleWithZoom(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIMscChart_M_bScaleWithZoom()
+	 * @model
+	 * @generated
+	 */
+	String getM_bScaleWithZoom();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscChart#getM_bScaleWithZoom <em>MbScale With Zoom</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>MbScale With Zoom</em>' attribute.
+	 * @see #getM_bScaleWithZoom()
+	 * @generated
+	 */
+	void setM_bScaleWithZoom(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Marrow Style</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Marrow Style</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Marrow Style</em>' attribute.
+	 * @see #setM_arrowStyle(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIMscChart_M_arrowStyle()
+	 * @model
+	 * @generated
+	 */
+	String getM_arrowStyle();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscChart#getM_arrowStyle <em>Marrow Style</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Marrow Style</em>' attribute.
+	 * @see #getM_arrowStyle()
+	 * @generated
+	 */
+	void setM_arrowStyle(String value);
+
+	/**
+	 * Returns the value of the '<em><b>MpRoot</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>MpRoot</em>' reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>MpRoot</em>' reference.
+	 * @see #setM_pRoot(CGIBox)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIMscChart_M_pRoot()
+	 * @model
+	 * @generated
+	 */
+	CGIBox getM_pRoot();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscChart#getM_pRoot <em>MpRoot</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>MpRoot</em>' reference.
+	 * @see #getM_pRoot()
+	 * @generated
+	 */
+	void setM_pRoot(CGIBox value);
+
+	/**
+	 * Returns the value of the '<em><b>Mcurrent Left Top</b></em>' attribute list.
+	 * The list contents are of type {@link java.lang.String}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Mcurrent Left Top</em>' attribute list isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Mcurrent Left Top</em>' attribute list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIMscChart_M_currentLeftTop()
+	 * @model unique="false"
+	 * @generated
+	 */
+	EList<String> getM_currentLeftTop();
+
+	/**
+	 * Returns the value of the '<em><b>Mcurrent Right Bottom</b></em>' attribute list.
+	 * The list contents are of type {@link java.lang.String}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Mcurrent Right Bottom</em>' attribute list isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Mcurrent Right Bottom</em>' attribute list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIMscChart_M_currentRightBottom()
+	 * @model unique="false"
+	 * @generated
+	 */
+	EList<String> getM_currentRightBottom();
+
+} // CGIMscChart
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/CGIMscColumnCR.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/CGIMscColumnCR.java
new file mode 100755
index 0000000..19f88f9
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/CGIMscColumnCR.java
@@ -0,0 +1,246 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel;
+
+import org.eclipse.emf.common.util.EList;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>CGI Msc Column CR</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * </p>
+ * <ul>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscColumnCR#getM_pModelObject <em>MpModel Object</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscColumnCR#getM_pParent <em>MpParent</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscColumnCR#getM_transform <em>Mtransform</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscColumnCR#getM_AdditionalLabel <em>MAdditional Label</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscColumnCR#getM_position <em>Mposition</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscColumnCR#getM_pInheritsFrom <em>MpInherits From</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscColumnCR#getM_nInheritanceMask <em>MnInheritance Mask</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscColumnCR#getM_SubType <em>MSub Type</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscColumnCR#getProperties <em>Properties</em>}</li>
+ * </ul>
+ *
+ * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIMscColumnCR()
+ * @model
+ * @generated
+ */
+public interface CGIMscColumnCR extends GraphElementsType {
+	/**
+	 * Returns the value of the '<em><b>MpModel Object</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>MpModel Object</em>' reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>MpModel Object</em>' reference.
+	 * @see #setM_pModelObject(IModelElement)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIMscColumnCR_M_pModelObject()
+	 * @model
+	 * @generated
+	 */
+	IModelElement getM_pModelObject();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscColumnCR#getM_pModelObject <em>MpModel Object</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>MpModel Object</em>' reference.
+	 * @see #getM_pModelObject()
+	 * @generated
+	 */
+	void setM_pModelObject(IModelElement value);
+
+	/**
+	 * Returns the value of the '<em><b>MpParent</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>MpParent</em>' reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>MpParent</em>' reference.
+	 * @see #setM_pParent(CGIBox)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIMscColumnCR_M_pParent()
+	 * @model
+	 * @generated
+	 */
+	CGIBox getM_pParent();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscColumnCR#getM_pParent <em>MpParent</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>MpParent</em>' reference.
+	 * @see #getM_pParent()
+	 * @generated
+	 */
+	void setM_pParent(CGIBox value);
+
+	/**
+	 * Returns the value of the '<em><b>Mtransform</b></em>' attribute list.
+	 * The list contents are of type {@link java.lang.String}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Mtransform</em>' attribute list isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Mtransform</em>' attribute list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIMscColumnCR_M_transform()
+	 * @model unique="false"
+	 * @generated
+	 */
+	EList<String> getM_transform();
+
+	/**
+	 * Returns the value of the '<em><b>MAdditional Label</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>MAdditional Label</em>' containment reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>MAdditional Label</em>' containment reference.
+	 * @see #setM_AdditionalLabel(CGIText)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIMscColumnCR_M_AdditionalLabel()
+	 * @model containment="true" resolveProxies="true"
+	 * @generated
+	 */
+	CGIText getM_AdditionalLabel();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscColumnCR#getM_AdditionalLabel <em>MAdditional Label</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>MAdditional Label</em>' containment reference.
+	 * @see #getM_AdditionalLabel()
+	 * @generated
+	 */
+	void setM_AdditionalLabel(CGIText value);
+
+	/**
+	 * Returns the value of the '<em><b>Mposition</b></em>' attribute list.
+	 * The list contents are of type {@link java.lang.String}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Mposition</em>' attribute list isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Mposition</em>' attribute list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIMscColumnCR_M_position()
+	 * @model unique="false"
+	 * @generated
+	 */
+	EList<String> getM_position();
+
+	/**
+	 * Returns the value of the '<em><b>MpInherits From</b></em>' reference list.
+	 * The list contents are of type {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UnknownType}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>MpInherits From</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>MpInherits From</em>' reference list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIMscColumnCR_M_pInheritsFrom()
+	 * @model
+	 * @generated
+	 */
+	EList<UnknownType> getM_pInheritsFrom();
+
+	/**
+	 * Returns the value of the '<em><b>MnInheritance Mask</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>MnInheritance Mask</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>MnInheritance Mask</em>' attribute.
+	 * @see #setM_nInheritanceMask(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIMscColumnCR_M_nInheritanceMask()
+	 * @model
+	 * @generated
+	 */
+	String getM_nInheritanceMask();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscColumnCR#getM_nInheritanceMask <em>MnInheritance Mask</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>MnInheritance Mask</em>' attribute.
+	 * @see #getM_nInheritanceMask()
+	 * @generated
+	 */
+	void setM_nInheritanceMask(String value);
+
+	/**
+	 * Returns the value of the '<em><b>MSub Type</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>MSub 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>MSub Type</em>' attribute.
+	 * @see #setM_SubType(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIMscColumnCR_M_SubType()
+	 * @model
+	 * @generated
+	 */
+	String getM_SubType();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscColumnCR#getM_SubType <em>MSub Type</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>MSub Type</em>' attribute.
+	 * @see #getM_SubType()
+	 * @generated
+	 */
+	void setM_SubType(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Properties</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Properties</em>' containment reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Properties</em>' containment reference.
+	 * @see #setProperties(IPropertyContainer)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIMscColumnCR_Properties()
+	 * @model containment="true" resolveProxies="true"
+	 * @generated
+	 */
+	IPropertyContainer getProperties();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscColumnCR#getProperties <em>Properties</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Properties</em>' containment reference.
+	 * @see #getProperties()
+	 * @generated
+	 */
+	void setProperties(IPropertyContainer value);
+
+} // CGIMscColumnCR
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/CGIMscConditionMark.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/CGIMscConditionMark.java
new file mode 100755
index 0000000..b8ac37a
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/CGIMscConditionMark.java
@@ -0,0 +1,219 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel;
+
+import org.eclipse.emf.common.util.EList;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>CGI Msc Condition Mark</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * </p>
+ * <ul>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscConditionMark#getProperties <em>Properties</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscConditionMark#getM_pModelObject <em>MpModel Object</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscConditionMark#getM_pParent <em>MpParent</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscConditionMark#getM_transform <em>Mtransform</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscConditionMark#getM_polygon <em>Mpolygon</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscConditionMark#getM_nNameFormat <em>MnName Format</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscConditionMark#getM_nIsNameFormat <em>MnIs Name Format</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscConditionMark#getCompartments <em>Compartments</em>}</li>
+ * </ul>
+ *
+ * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIMscConditionMark()
+ * @model
+ * @generated
+ */
+public interface CGIMscConditionMark extends GraphElementsType {
+	/**
+	 * Returns the value of the '<em><b>Properties</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Properties</em>' containment reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Properties</em>' containment reference.
+	 * @see #setProperties(IPropertyContainer)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIMscConditionMark_Properties()
+	 * @model containment="true" resolveProxies="true"
+	 * @generated
+	 */
+	IPropertyContainer getProperties();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscConditionMark#getProperties <em>Properties</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Properties</em>' containment reference.
+	 * @see #getProperties()
+	 * @generated
+	 */
+	void setProperties(IPropertyContainer value);
+
+	/**
+	 * Returns the value of the '<em><b>MpModel Object</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>MpModel Object</em>' reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>MpModel Object</em>' reference.
+	 * @see #setM_pModelObject(IMessage)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIMscConditionMark_M_pModelObject()
+	 * @model
+	 * @generated
+	 */
+	IMessage getM_pModelObject();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscConditionMark#getM_pModelObject <em>MpModel Object</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>MpModel Object</em>' reference.
+	 * @see #getM_pModelObject()
+	 * @generated
+	 */
+	void setM_pModelObject(IMessage value);
+
+	/**
+	 * Returns the value of the '<em><b>MpParent</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>MpParent</em>' reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>MpParent</em>' reference.
+	 * @see #setM_pParent(CGIMscColumnCR)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIMscConditionMark_M_pParent()
+	 * @model
+	 * @generated
+	 */
+	CGIMscColumnCR getM_pParent();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscConditionMark#getM_pParent <em>MpParent</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>MpParent</em>' reference.
+	 * @see #getM_pParent()
+	 * @generated
+	 */
+	void setM_pParent(CGIMscColumnCR value);
+
+	/**
+	 * Returns the value of the '<em><b>Mtransform</b></em>' attribute list.
+	 * The list contents are of type {@link java.lang.String}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Mtransform</em>' attribute list isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Mtransform</em>' attribute list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIMscConditionMark_M_transform()
+	 * @model unique="false"
+	 * @generated
+	 */
+	EList<String> getM_transform();
+
+	/**
+	 * Returns the value of the '<em><b>Mpolygon</b></em>' attribute list.
+	 * The list contents are of type {@link java.lang.String}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Mpolygon</em>' attribute list isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Mpolygon</em>' attribute list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIMscConditionMark_M_polygon()
+	 * @model unique="false"
+	 * @generated
+	 */
+	EList<String> getM_polygon();
+
+	/**
+	 * Returns the value of the '<em><b>MnName Format</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>MnName Format</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>MnName Format</em>' attribute.
+	 * @see #setM_nNameFormat(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIMscConditionMark_M_nNameFormat()
+	 * @model
+	 * @generated
+	 */
+	String getM_nNameFormat();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscConditionMark#getM_nNameFormat <em>MnName Format</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>MnName Format</em>' attribute.
+	 * @see #getM_nNameFormat()
+	 * @generated
+	 */
+	void setM_nNameFormat(String value);
+
+	/**
+	 * Returns the value of the '<em><b>MnIs Name Format</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>MnIs Name Format</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>MnIs Name Format</em>' attribute.
+	 * @see #setM_nIsNameFormat(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIMscConditionMark_M_nIsNameFormat()
+	 * @model
+	 * @generated
+	 */
+	String getM_nIsNameFormat();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscConditionMark#getM_nIsNameFormat <em>MnIs Name Format</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>MnIs Name Format</em>' attribute.
+	 * @see #getM_nIsNameFormat()
+	 * @generated
+	 */
+	void setM_nIsNameFormat(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Compartments</b></em>' reference list.
+	 * The list contents are of type {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UnknownType}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Compartments</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>Compartments</em>' reference list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIMscConditionMark_Compartments()
+	 * @model
+	 * @generated
+	 */
+	EList<UnknownType> getCompartments();
+
+} // CGIMscConditionMark
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/CGIMscExecutionOccurrence.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/CGIMscExecutionOccurrence.java
new file mode 100755
index 0000000..f1bec2a
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/CGIMscExecutionOccurrence.java
@@ -0,0 +1,219 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel;
+
+import org.eclipse.emf.common.util.EList;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>CGI Msc Execution Occurrence</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * </p>
+ * <ul>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscExecutionOccurrence#getM_pModelObject <em>MpModel Object</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscExecutionOccurrence#getM_pParent <em>MpParent</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscExecutionOccurrence#getM_transform <em>Mtransform</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscExecutionOccurrence#getM_position <em>Mposition</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscExecutionOccurrence#getM_pInheritsFrom <em>MpInherits From</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscExecutionOccurrence#getM_nInheritanceMask <em>MnInheritance Mask</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscExecutionOccurrence#getM_SubType <em>MSub Type</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscExecutionOccurrence#getM_pStartMessage <em>MpStart Message</em>}</li>
+ * </ul>
+ *
+ * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIMscExecutionOccurrence()
+ * @model
+ * @generated
+ */
+public interface CGIMscExecutionOccurrence extends GraphElementsType {
+	/**
+	 * Returns the value of the '<em><b>MpModel Object</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>MpModel Object</em>' reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>MpModel Object</em>' reference.
+	 * @see #setM_pModelObject(IExecutionOccurrence)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIMscExecutionOccurrence_M_pModelObject()
+	 * @model
+	 * @generated
+	 */
+	IExecutionOccurrence getM_pModelObject();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscExecutionOccurrence#getM_pModelObject <em>MpModel Object</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>MpModel Object</em>' reference.
+	 * @see #getM_pModelObject()
+	 * @generated
+	 */
+	void setM_pModelObject(IExecutionOccurrence value);
+
+	/**
+	 * Returns the value of the '<em><b>MpParent</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>MpParent</em>' reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>MpParent</em>' reference.
+	 * @see #setM_pParent(CGIMscColumnCR)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIMscExecutionOccurrence_M_pParent()
+	 * @model
+	 * @generated
+	 */
+	CGIMscColumnCR getM_pParent();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscExecutionOccurrence#getM_pParent <em>MpParent</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>MpParent</em>' reference.
+	 * @see #getM_pParent()
+	 * @generated
+	 */
+	void setM_pParent(CGIMscColumnCR value);
+
+	/**
+	 * Returns the value of the '<em><b>Mtransform</b></em>' attribute list.
+	 * The list contents are of type {@link java.lang.String}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Mtransform</em>' attribute list isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Mtransform</em>' attribute list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIMscExecutionOccurrence_M_transform()
+	 * @model unique="false"
+	 * @generated
+	 */
+	EList<String> getM_transform();
+
+	/**
+	 * Returns the value of the '<em><b>Mposition</b></em>' attribute list.
+	 * The list contents are of type {@link java.lang.String}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Mposition</em>' attribute list isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Mposition</em>' attribute list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIMscExecutionOccurrence_M_position()
+	 * @model unique="false"
+	 * @generated
+	 */
+	EList<String> getM_position();
+
+	/**
+	 * Returns the value of the '<em><b>MpInherits From</b></em>' reference list.
+	 * The list contents are of type {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UnknownType}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>MpInherits From</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>MpInherits From</em>' reference list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIMscExecutionOccurrence_M_pInheritsFrom()
+	 * @model
+	 * @generated
+	 */
+	EList<UnknownType> getM_pInheritsFrom();
+
+	/**
+	 * Returns the value of the '<em><b>MnInheritance Mask</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>MnInheritance Mask</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>MnInheritance Mask</em>' attribute.
+	 * @see #setM_nInheritanceMask(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIMscExecutionOccurrence_M_nInheritanceMask()
+	 * @model
+	 * @generated
+	 */
+	String getM_nInheritanceMask();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscExecutionOccurrence#getM_nInheritanceMask <em>MnInheritance Mask</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>MnInheritance Mask</em>' attribute.
+	 * @see #getM_nInheritanceMask()
+	 * @generated
+	 */
+	void setM_nInheritanceMask(String value);
+
+	/**
+	 * Returns the value of the '<em><b>MSub Type</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>MSub 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>MSub Type</em>' attribute.
+	 * @see #setM_SubType(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIMscExecutionOccurrence_M_SubType()
+	 * @model
+	 * @generated
+	 */
+	String getM_SubType();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscExecutionOccurrence#getM_SubType <em>MSub Type</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>MSub Type</em>' attribute.
+	 * @see #getM_SubType()
+	 * @generated
+	 */
+	void setM_SubType(String value);
+
+	/**
+	 * Returns the value of the '<em><b>MpStart Message</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>MpStart Message</em>' reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>MpStart Message</em>' reference.
+	 * @see #setM_pStartMessage(CGIMscMessage)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIMscExecutionOccurrence_M_pStartMessage()
+	 * @model
+	 * @generated
+	 */
+	CGIMscMessage getM_pStartMessage();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscExecutionOccurrence#getM_pStartMessage <em>MpStart Message</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>MpStart Message</em>' reference.
+	 * @see #getM_pStartMessage()
+	 * @generated
+	 */
+	void setM_pStartMessage(CGIMscMessage value);
+
+} // CGIMscExecutionOccurrence
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/CGIMscInteractionOccurrence.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/CGIMscInteractionOccurrence.java
new file mode 100755
index 0000000..fabed59
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/CGIMscInteractionOccurrence.java
@@ -0,0 +1,219 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel;
+
+import org.eclipse.emf.common.util.EList;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>CGI Msc Interaction Occurrence</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * </p>
+ * <ul>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscInteractionOccurrence#getM_pModelObject <em>MpModel Object</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscInteractionOccurrence#getM_pParent <em>MpParent</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscInteractionOccurrence#getM_transform <em>Mtransform</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscInteractionOccurrence#getM_polygon <em>Mpolygon</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscInteractionOccurrence#getM_nNameFormat <em>MnName Format</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscInteractionOccurrence#getM_nIsNameFormat <em>MnIs Name Format</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscInteractionOccurrence#getCompartments <em>Compartments</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscInteractionOccurrence#getProperties <em>Properties</em>}</li>
+ * </ul>
+ *
+ * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIMscInteractionOccurrence()
+ * @model
+ * @generated
+ */
+public interface CGIMscInteractionOccurrence extends GraphElementsType {
+	/**
+	 * Returns the value of the '<em><b>MpModel Object</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>MpModel Object</em>' reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>MpModel Object</em>' reference.
+	 * @see #setM_pModelObject(IInteractionOccurrence)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIMscInteractionOccurrence_M_pModelObject()
+	 * @model
+	 * @generated
+	 */
+	IInteractionOccurrence getM_pModelObject();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscInteractionOccurrence#getM_pModelObject <em>MpModel Object</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>MpModel Object</em>' reference.
+	 * @see #getM_pModelObject()
+	 * @generated
+	 */
+	void setM_pModelObject(IInteractionOccurrence value);
+
+	/**
+	 * Returns the value of the '<em><b>MpParent</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>MpParent</em>' reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>MpParent</em>' reference.
+	 * @see #setM_pParent(CGIBox)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIMscInteractionOccurrence_M_pParent()
+	 * @model
+	 * @generated
+	 */
+	CGIBox getM_pParent();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscInteractionOccurrence#getM_pParent <em>MpParent</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>MpParent</em>' reference.
+	 * @see #getM_pParent()
+	 * @generated
+	 */
+	void setM_pParent(CGIBox value);
+
+	/**
+	 * Returns the value of the '<em><b>Mtransform</b></em>' attribute list.
+	 * The list contents are of type {@link java.lang.String}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Mtransform</em>' attribute list isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Mtransform</em>' attribute list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIMscInteractionOccurrence_M_transform()
+	 * @model unique="false"
+	 * @generated
+	 */
+	EList<String> getM_transform();
+
+	/**
+	 * Returns the value of the '<em><b>Mpolygon</b></em>' attribute list.
+	 * The list contents are of type {@link java.lang.String}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Mpolygon</em>' attribute list isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Mpolygon</em>' attribute list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIMscInteractionOccurrence_M_polygon()
+	 * @model unique="false"
+	 * @generated
+	 */
+	EList<String> getM_polygon();
+
+	/**
+	 * Returns the value of the '<em><b>MnName Format</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>MnName Format</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>MnName Format</em>' attribute.
+	 * @see #setM_nNameFormat(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIMscInteractionOccurrence_M_nNameFormat()
+	 * @model
+	 * @generated
+	 */
+	String getM_nNameFormat();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscInteractionOccurrence#getM_nNameFormat <em>MnName Format</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>MnName Format</em>' attribute.
+	 * @see #getM_nNameFormat()
+	 * @generated
+	 */
+	void setM_nNameFormat(String value);
+
+	/**
+	 * Returns the value of the '<em><b>MnIs Name Format</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>MnIs Name Format</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>MnIs Name Format</em>' attribute.
+	 * @see #setM_nIsNameFormat(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIMscInteractionOccurrence_M_nIsNameFormat()
+	 * @model
+	 * @generated
+	 */
+	String getM_nIsNameFormat();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscInteractionOccurrence#getM_nIsNameFormat <em>MnIs Name Format</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>MnIs Name Format</em>' attribute.
+	 * @see #getM_nIsNameFormat()
+	 * @generated
+	 */
+	void setM_nIsNameFormat(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Compartments</b></em>' reference list.
+	 * The list contents are of type {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UnknownType}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Compartments</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>Compartments</em>' reference list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIMscInteractionOccurrence_Compartments()
+	 * @model
+	 * @generated
+	 */
+	EList<UnknownType> getCompartments();
+
+	/**
+	 * Returns the value of the '<em><b>Properties</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Properties</em>' containment reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Properties</em>' containment reference.
+	 * @see #setProperties(IPropertyContainer)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIMscInteractionOccurrence_Properties()
+	 * @model containment="true" resolveProxies="true"
+	 * @generated
+	 */
+	IPropertyContainer getProperties();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscInteractionOccurrence#getProperties <em>Properties</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Properties</em>' containment reference.
+	 * @see #getProperties()
+	 * @generated
+	 */
+	void setProperties(IPropertyContainer value);
+
+} // CGIMscInteractionOccurrence
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/CGIMscInteractionOperand.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/CGIMscInteractionOperand.java
new file mode 100755
index 0000000..114573d
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/CGIMscInteractionOperand.java
@@ -0,0 +1,246 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel;
+
+import org.eclipse.emf.common.util.EList;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>CGI Msc Interaction Operand</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * </p>
+ * <ul>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscInteractionOperand#getProperties <em>Properties</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscInteractionOperand#getM_pModelObject <em>MpModel Object</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscInteractionOperand#getM_pParent <em>MpParent</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscInteractionOperand#getM_AdditionalLabel <em>MAdditional Label</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscInteractionOperand#getM_polygon <em>Mpolygon</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscInteractionOperand#getM_nNameFormat <em>MnName Format</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscInteractionOperand#getM_nIsNameFormat <em>MnIs Name Format</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscInteractionOperand#getCompartments <em>Compartments</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscInteractionOperand#getM_transform <em>Mtransform</em>}</li>
+ * </ul>
+ *
+ * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIMscInteractionOperand()
+ * @model
+ * @generated
+ */
+public interface CGIMscInteractionOperand extends GraphElementsType {
+	/**
+	 * Returns the value of the '<em><b>Properties</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Properties</em>' containment reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Properties</em>' containment reference.
+	 * @see #setProperties(IPropertyContainer)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIMscInteractionOperand_Properties()
+	 * @model containment="true" resolveProxies="true"
+	 * @generated
+	 */
+	IPropertyContainer getProperties();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscInteractionOperand#getProperties <em>Properties</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Properties</em>' containment reference.
+	 * @see #getProperties()
+	 * @generated
+	 */
+	void setProperties(IPropertyContainer value);
+
+	/**
+	 * Returns the value of the '<em><b>MpModel Object</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>MpModel Object</em>' reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>MpModel Object</em>' reference.
+	 * @see #setM_pModelObject(IInteractionOperand)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIMscInteractionOperand_M_pModelObject()
+	 * @model
+	 * @generated
+	 */
+	IInteractionOperand getM_pModelObject();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscInteractionOperand#getM_pModelObject <em>MpModel Object</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>MpModel Object</em>' reference.
+	 * @see #getM_pModelObject()
+	 * @generated
+	 */
+	void setM_pModelObject(IInteractionOperand value);
+
+	/**
+	 * Returns the value of the '<em><b>MpParent</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>MpParent</em>' reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>MpParent</em>' reference.
+	 * @see #setM_pParent(CGIMscInteractionOperator)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIMscInteractionOperand_M_pParent()
+	 * @model
+	 * @generated
+	 */
+	CGIMscInteractionOperator getM_pParent();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscInteractionOperand#getM_pParent <em>MpParent</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>MpParent</em>' reference.
+	 * @see #getM_pParent()
+	 * @generated
+	 */
+	void setM_pParent(CGIMscInteractionOperator value);
+
+	/**
+	 * Returns the value of the '<em><b>MAdditional Label</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>MAdditional Label</em>' containment reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>MAdditional Label</em>' containment reference.
+	 * @see #setM_AdditionalLabel(CGIText)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIMscInteractionOperand_M_AdditionalLabel()
+	 * @model containment="true" resolveProxies="true"
+	 * @generated
+	 */
+	CGIText getM_AdditionalLabel();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscInteractionOperand#getM_AdditionalLabel <em>MAdditional Label</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>MAdditional Label</em>' containment reference.
+	 * @see #getM_AdditionalLabel()
+	 * @generated
+	 */
+	void setM_AdditionalLabel(CGIText value);
+
+	/**
+	 * Returns the value of the '<em><b>Mpolygon</b></em>' attribute list.
+	 * The list contents are of type {@link java.lang.String}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Mpolygon</em>' attribute list isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Mpolygon</em>' attribute list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIMscInteractionOperand_M_polygon()
+	 * @model unique="false"
+	 * @generated
+	 */
+	EList<String> getM_polygon();
+
+	/**
+	 * Returns the value of the '<em><b>MnName Format</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>MnName Format</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>MnName Format</em>' attribute.
+	 * @see #setM_nNameFormat(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIMscInteractionOperand_M_nNameFormat()
+	 * @model
+	 * @generated
+	 */
+	String getM_nNameFormat();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscInteractionOperand#getM_nNameFormat <em>MnName Format</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>MnName Format</em>' attribute.
+	 * @see #getM_nNameFormat()
+	 * @generated
+	 */
+	void setM_nNameFormat(String value);
+
+	/**
+	 * Returns the value of the '<em><b>MnIs Name Format</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>MnIs Name Format</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>MnIs Name Format</em>' attribute.
+	 * @see #setM_nIsNameFormat(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIMscInteractionOperand_M_nIsNameFormat()
+	 * @model
+	 * @generated
+	 */
+	String getM_nIsNameFormat();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscInteractionOperand#getM_nIsNameFormat <em>MnIs Name Format</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>MnIs Name Format</em>' attribute.
+	 * @see #getM_nIsNameFormat()
+	 * @generated
+	 */
+	void setM_nIsNameFormat(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Compartments</b></em>' reference list.
+	 * The list contents are of type {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UnknownType}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Compartments</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>Compartments</em>' reference list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIMscInteractionOperand_Compartments()
+	 * @model
+	 * @generated
+	 */
+	EList<UnknownType> getCompartments();
+
+	/**
+	 * Returns the value of the '<em><b>Mtransform</b></em>' attribute list.
+	 * The list contents are of type {@link java.lang.String}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Mtransform</em>' attribute list isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Mtransform</em>' attribute list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIMscInteractionOperand_M_transform()
+	 * @model unique="false"
+	 * @generated
+	 */
+	EList<String> getM_transform();
+
+} // CGIMscInteractionOperand
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/CGIMscInteractionOperator.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/CGIMscInteractionOperator.java
new file mode 100755
index 0000000..32be47c
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/CGIMscInteractionOperator.java
@@ -0,0 +1,300 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel;
+
+import org.eclipse.emf.common.util.EList;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>CGI Msc Interaction Operator</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * </p>
+ * <ul>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscInteractionOperator#getM_operatorType <em>Moperator Type</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscInteractionOperator#getProperties <em>Properties</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscInteractionOperator#getM_pModelObject <em>MpModel Object</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscInteractionOperator#getM_pParent <em>MpParent</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscInteractionOperator#getM_transform <em>Mtransform</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscInteractionOperator#getM_polygon <em>Mpolygon</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscInteractionOperator#getM_nNameFormat <em>MnName Format</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscInteractionOperator#getM_nIsNameFormat <em>MnIs Name Format</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscInteractionOperator#getFrameset <em>Frameset</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscInteractionOperator#getCompartments <em>Compartments</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscInteractionOperator#getM_bFramesetModified <em>MbFrameset Modified</em>}</li>
+ * </ul>
+ *
+ * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIMscInteractionOperator()
+ * @model
+ * @generated
+ */
+public interface CGIMscInteractionOperator extends GraphElementsType {
+	/**
+	 * Returns the value of the '<em><b>Moperator Type</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Moperator 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>Moperator Type</em>' attribute.
+	 * @see #setM_operatorType(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIMscInteractionOperator_M_operatorType()
+	 * @model
+	 * @generated
+	 */
+	String getM_operatorType();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscInteractionOperator#getM_operatorType <em>Moperator Type</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Moperator Type</em>' attribute.
+	 * @see #getM_operatorType()
+	 * @generated
+	 */
+	void setM_operatorType(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Properties</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Properties</em>' containment reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Properties</em>' containment reference.
+	 * @see #setProperties(IPropertyContainer)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIMscInteractionOperator_Properties()
+	 * @model containment="true" resolveProxies="true"
+	 * @generated
+	 */
+	IPropertyContainer getProperties();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscInteractionOperator#getProperties <em>Properties</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Properties</em>' containment reference.
+	 * @see #getProperties()
+	 * @generated
+	 */
+	void setProperties(IPropertyContainer value);
+
+	/**
+	 * Returns the value of the '<em><b>MpModel Object</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>MpModel Object</em>' reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>MpModel Object</em>' reference.
+	 * @see #setM_pModelObject(ICombinedFragment)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIMscInteractionOperator_M_pModelObject()
+	 * @model
+	 * @generated
+	 */
+	ICombinedFragment getM_pModelObject();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscInteractionOperator#getM_pModelObject <em>MpModel Object</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>MpModel Object</em>' reference.
+	 * @see #getM_pModelObject()
+	 * @generated
+	 */
+	void setM_pModelObject(ICombinedFragment value);
+
+	/**
+	 * Returns the value of the '<em><b>MpParent</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>MpParent</em>' reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>MpParent</em>' reference.
+	 * @see #setM_pParent(GraphElementsType)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIMscInteractionOperator_M_pParent()
+	 * @model
+	 * @generated
+	 */
+	GraphElementsType getM_pParent();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscInteractionOperator#getM_pParent <em>MpParent</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>MpParent</em>' reference.
+	 * @see #getM_pParent()
+	 * @generated
+	 */
+	void setM_pParent(GraphElementsType value);
+
+	/**
+	 * Returns the value of the '<em><b>Mtransform</b></em>' attribute list.
+	 * The list contents are of type {@link java.lang.String}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Mtransform</em>' attribute list isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Mtransform</em>' attribute list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIMscInteractionOperator_M_transform()
+	 * @model unique="false"
+	 * @generated
+	 */
+	EList<String> getM_transform();
+
+	/**
+	 * Returns the value of the '<em><b>Mpolygon</b></em>' attribute list.
+	 * The list contents are of type {@link java.lang.String}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Mpolygon</em>' attribute list isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Mpolygon</em>' attribute list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIMscInteractionOperator_M_polygon()
+	 * @model unique="false"
+	 * @generated
+	 */
+	EList<String> getM_polygon();
+
+	/**
+	 * Returns the value of the '<em><b>MnName Format</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>MnName Format</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>MnName Format</em>' attribute.
+	 * @see #setM_nNameFormat(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIMscInteractionOperator_M_nNameFormat()
+	 * @model
+	 * @generated
+	 */
+	String getM_nNameFormat();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscInteractionOperator#getM_nNameFormat <em>MnName Format</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>MnName Format</em>' attribute.
+	 * @see #getM_nNameFormat()
+	 * @generated
+	 */
+	void setM_nNameFormat(String value);
+
+	/**
+	 * Returns the value of the '<em><b>MnIs Name Format</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>MnIs Name Format</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>MnIs Name Format</em>' attribute.
+	 * @see #setM_nIsNameFormat(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIMscInteractionOperator_M_nIsNameFormat()
+	 * @model
+	 * @generated
+	 */
+	String getM_nIsNameFormat();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscInteractionOperator#getM_nIsNameFormat <em>MnIs Name Format</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>MnIs Name Format</em>' attribute.
+	 * @see #getM_nIsNameFormat()
+	 * @generated
+	 */
+	void setM_nIsNameFormat(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Frameset</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Frameset</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Frameset</em>' attribute.
+	 * @see #setFrameset(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIMscInteractionOperator_Frameset()
+	 * @model
+	 * @generated
+	 */
+	String getFrameset();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscInteractionOperator#getFrameset <em>Frameset</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Frameset</em>' attribute.
+	 * @see #getFrameset()
+	 * @generated
+	 */
+	void setFrameset(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Compartments</b></em>' reference list.
+	 * The list contents are of type {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UnknownType}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Compartments</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>Compartments</em>' reference list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIMscInteractionOperator_Compartments()
+	 * @model
+	 * @generated
+	 */
+	EList<UnknownType> getCompartments();
+
+	/**
+	 * Returns the value of the '<em><b>MbFrameset Modified</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>MbFrameset Modified</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>MbFrameset Modified</em>' attribute.
+	 * @see #setM_bFramesetModified(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIMscInteractionOperator_M_bFramesetModified()
+	 * @model
+	 * @generated
+	 */
+	String getM_bFramesetModified();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscInteractionOperator#getM_bFramesetModified <em>MbFrameset Modified</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>MbFrameset Modified</em>' attribute.
+	 * @see #getM_bFramesetModified()
+	 * @generated
+	 */
+	void setM_bFramesetModified(String value);
+
+} // CGIMscInteractionOperator
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/CGIMscMessage.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/CGIMscMessage.java
new file mode 100755
index 0000000..8a1ae3b
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/CGIMscMessage.java
@@ -0,0 +1,496 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel;
+
+import org.eclipse.emf.common.util.EList;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>CGI Msc Message</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * </p>
+ * <ul>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscMessage#getM_pModelObject <em>MpModel Object</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscMessage#getM_pParent <em>MpParent</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscMessage#getM_pSource <em>MpSource</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscMessage#getM_sourceType <em>Msource Type</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscMessage#getM_pTarget <em>MpTarget</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscMessage#getM_targetType <em>Mtarget Type</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscMessage#getM_direction <em>Mdirection</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscMessage#getM_rpn <em>Mrpn</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscMessage#getM_anglePoint1 <em>Mangle Point1</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscMessage#getM_anglePoint2 <em>Mangle Point2</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscMessage#getM_line_style <em>Mline style</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscMessage#getM_SourcePort <em>MSource Port</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscMessage#getM_TargetPort <em>MTarget Port</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscMessage#getM_bLeft <em>MbLeft</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscMessage#getM_arrow <em>Marrow</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscMessage#getProperties <em>Properties</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscMessage#getMyState <em>My State</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscMessage#getM_pSourceExec <em>MpSource Exec</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscMessage#getM_pTargetExec <em>MpTarget Exec</em>}</li>
+ * </ul>
+ *
+ * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIMscMessage()
+ * @model
+ * @generated
+ */
+public interface CGIMscMessage extends GraphElementsType {
+	/**
+	 * Returns the value of the '<em><b>MpModel Object</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>MpModel Object</em>' reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>MpModel Object</em>' reference.
+	 * @see #setM_pModelObject(IMessage)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIMscMessage_M_pModelObject()
+	 * @model
+	 * @generated
+	 */
+	IMessage getM_pModelObject();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscMessage#getM_pModelObject <em>MpModel Object</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>MpModel Object</em>' reference.
+	 * @see #getM_pModelObject()
+	 * @generated
+	 */
+	void setM_pModelObject(IMessage value);
+
+	/**
+	 * Returns the value of the '<em><b>MpParent</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>MpParent</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>MpParent</em>' attribute.
+	 * @see #setM_pParent(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIMscMessage_M_pParent()
+	 * @model
+	 * @generated
+	 */
+	String getM_pParent();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscMessage#getM_pParent <em>MpParent</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>MpParent</em>' attribute.
+	 * @see #getM_pParent()
+	 * @generated
+	 */
+	void setM_pParent(String value);
+
+	/**
+	 * Returns the value of the '<em><b>MpSource</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>MpSource</em>' reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>MpSource</em>' reference.
+	 * @see #setM_pSource(CGIMscColumnCR)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIMscMessage_M_pSource()
+	 * @model
+	 * @generated
+	 */
+	CGIMscColumnCR getM_pSource();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscMessage#getM_pSource <em>MpSource</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>MpSource</em>' reference.
+	 * @see #getM_pSource()
+	 * @generated
+	 */
+	void setM_pSource(CGIMscColumnCR value);
+
+	/**
+	 * Returns the value of the '<em><b>Msource Type</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Msource 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>Msource Type</em>' attribute.
+	 * @see #setM_sourceType(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIMscMessage_M_sourceType()
+	 * @model
+	 * @generated
+	 */
+	String getM_sourceType();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscMessage#getM_sourceType <em>Msource Type</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Msource Type</em>' attribute.
+	 * @see #getM_sourceType()
+	 * @generated
+	 */
+	void setM_sourceType(String value);
+
+	/**
+	 * Returns the value of the '<em><b>MpTarget</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>MpTarget</em>' reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>MpTarget</em>' reference.
+	 * @see #setM_pTarget(CGIMscColumnCR)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIMscMessage_M_pTarget()
+	 * @model
+	 * @generated
+	 */
+	CGIMscColumnCR getM_pTarget();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscMessage#getM_pTarget <em>MpTarget</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>MpTarget</em>' reference.
+	 * @see #getM_pTarget()
+	 * @generated
+	 */
+	void setM_pTarget(CGIMscColumnCR value);
+
+	/**
+	 * Returns the value of the '<em><b>Mtarget Type</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Mtarget 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>Mtarget Type</em>' attribute.
+	 * @see #setM_targetType(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIMscMessage_M_targetType()
+	 * @model
+	 * @generated
+	 */
+	String getM_targetType();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscMessage#getM_targetType <em>Mtarget Type</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Mtarget Type</em>' attribute.
+	 * @see #getM_targetType()
+	 * @generated
+	 */
+	void setM_targetType(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Mdirection</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Mdirection</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Mdirection</em>' attribute.
+	 * @see #setM_direction(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIMscMessage_M_direction()
+	 * @model
+	 * @generated
+	 */
+	String getM_direction();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscMessage#getM_direction <em>Mdirection</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Mdirection</em>' attribute.
+	 * @see #getM_direction()
+	 * @generated
+	 */
+	void setM_direction(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Mrpn</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Mrpn</em>' containment reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Mrpn</em>' containment reference.
+	 * @see #setM_rpn(CGIText)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIMscMessage_M_rpn()
+	 * @model containment="true" resolveProxies="true"
+	 * @generated
+	 */
+	CGIText getM_rpn();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscMessage#getM_rpn <em>Mrpn</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Mrpn</em>' containment reference.
+	 * @see #getM_rpn()
+	 * @generated
+	 */
+	void setM_rpn(CGIText value);
+
+	/**
+	 * Returns the value of the '<em><b>Mangle Point1</b></em>' attribute list.
+	 * The list contents are of type {@link java.lang.String}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Mangle Point1</em>' attribute list isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Mangle Point1</em>' attribute list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIMscMessage_M_anglePoint1()
+	 * @model unique="false"
+	 * @generated
+	 */
+	EList<String> getM_anglePoint1();
+
+	/**
+	 * Returns the value of the '<em><b>Mangle Point2</b></em>' attribute list.
+	 * The list contents are of type {@link java.lang.String}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Mangle Point2</em>' attribute list isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Mangle Point2</em>' attribute list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIMscMessage_M_anglePoint2()
+	 * @model unique="false"
+	 * @generated
+	 */
+	EList<String> getM_anglePoint2();
+
+	/**
+	 * Returns the value of the '<em><b>Mline style</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Mline style</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Mline style</em>' attribute.
+	 * @see #setM_line_style(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIMscMessage_M_line_style()
+	 * @model
+	 * @generated
+	 */
+	String getM_line_style();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscMessage#getM_line_style <em>Mline style</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Mline style</em>' attribute.
+	 * @see #getM_line_style()
+	 * @generated
+	 */
+	void setM_line_style(String value);
+
+	/**
+	 * Returns the value of the '<em><b>MSource Port</b></em>' attribute list.
+	 * The list contents are of type {@link java.lang.String}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>MSource Port</em>' attribute list isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>MSource Port</em>' attribute list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIMscMessage_M_SourcePort()
+	 * @model unique="false"
+	 * @generated
+	 */
+	EList<String> getM_SourcePort();
+
+	/**
+	 * Returns the value of the '<em><b>MTarget Port</b></em>' attribute list.
+	 * The list contents are of type {@link java.lang.String}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>MTarget Port</em>' attribute list isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>MTarget Port</em>' attribute list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIMscMessage_M_TargetPort()
+	 * @model unique="false"
+	 * @generated
+	 */
+	EList<String> getM_TargetPort();
+
+	/**
+	 * Returns the value of the '<em><b>MbLeft</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>MbLeft</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>MbLeft</em>' attribute.
+	 * @see #setM_bLeft(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIMscMessage_M_bLeft()
+	 * @model
+	 * @generated
+	 */
+	String getM_bLeft();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscMessage#getM_bLeft <em>MbLeft</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>MbLeft</em>' attribute.
+	 * @see #getM_bLeft()
+	 * @generated
+	 */
+	void setM_bLeft(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Marrow</b></em>' attribute list.
+	 * The list contents are of type {@link java.lang.String}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Marrow</em>' attribute list isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Marrow</em>' attribute list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIMscMessage_M_arrow()
+	 * @model unique="false"
+	 * @generated
+	 */
+	EList<String> getM_arrow();
+
+	/**
+	 * Returns the value of the '<em><b>Properties</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Properties</em>' containment reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Properties</em>' containment reference.
+	 * @see #setProperties(IPropertyContainer)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIMscMessage_Properties()
+	 * @model containment="true" resolveProxies="true"
+	 * @generated
+	 */
+	IPropertyContainer getProperties();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscMessage#getProperties <em>Properties</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Properties</em>' containment reference.
+	 * @see #getProperties()
+	 * @generated
+	 */
+	void setProperties(IPropertyContainer value);
+
+	/**
+	 * Returns the value of the '<em><b>My State</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>My State</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>My State</em>' attribute.
+	 * @see #setMyState(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIMscMessage_MyState()
+	 * @model
+	 * @generated
+	 */
+	String getMyState();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscMessage#getMyState <em>My State</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>My State</em>' attribute.
+	 * @see #getMyState()
+	 * @generated
+	 */
+	void setMyState(String value);
+
+	/**
+	 * Returns the value of the '<em><b>MpSource Exec</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>MpSource Exec</em>' reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>MpSource Exec</em>' reference.
+	 * @see #setM_pSourceExec(CGIMscExecutionOccurrence)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIMscMessage_M_pSourceExec()
+	 * @model
+	 * @generated
+	 */
+	CGIMscExecutionOccurrence getM_pSourceExec();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscMessage#getM_pSourceExec <em>MpSource Exec</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>MpSource Exec</em>' reference.
+	 * @see #getM_pSourceExec()
+	 * @generated
+	 */
+	void setM_pSourceExec(CGIMscExecutionOccurrence value);
+
+	/**
+	 * Returns the value of the '<em><b>MpTarget Exec</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>MpTarget Exec</em>' reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>MpTarget Exec</em>' reference.
+	 * @see #setM_pTargetExec(CGIMscExecutionOccurrence)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIMscMessage_M_pTargetExec()
+	 * @model
+	 * @generated
+	 */
+	CGIMscExecutionOccurrence getM_pTargetExec();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscMessage#getM_pTargetExec <em>MpTarget Exec</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>MpTarget Exec</em>' reference.
+	 * @see #getM_pTargetExec()
+	 * @generated
+	 */
+	void setM_pTargetExec(CGIMscExecutionOccurrence value);
+
+} // CGIMscMessage
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/CGIObjectInstance.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/CGIObjectInstance.java
new file mode 100755
index 0000000..feefb06
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/CGIObjectInstance.java
@@ -0,0 +1,415 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel;
+
+import org.eclipse.emf.common.util.EList;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>CGI Object Instance</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * </p>
+ * <ul>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIObjectInstance#getM_pModelObject <em>MpModel Object</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIObjectInstance#getM_pParent <em>MpParent</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIObjectInstance#getM_transform <em>Mtransform</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIObjectInstance#getM_AdditionalLabel <em>MAdditional Label</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIObjectInstance#getM_polygon <em>Mpolygon</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIObjectInstance#getM_nNameFormat <em>MnName Format</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIObjectInstance#getM_nIsNameFormat <em>MnIs Name Format</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIObjectInstance#getFrameset <em>Frameset</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIObjectInstance#getCompartments <em>Compartments</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIObjectInstance#getM_multiplicity <em>Mmultiplicity</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIObjectInstance#getProperties <em>Properties</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIObjectInstance#getOperations <em>Operations</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIObjectInstance#getAttrs <em>Attrs</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIObjectInstance#getM_bFramesetModified <em>MbFrameset Modified</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIObjectInstance#getM_pImageViewData <em>MpImage View Data</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIObjectInstance#getM_bIsMisplaced <em>MbIs Misplaced</em>}</li>
+ * </ul>
+ *
+ * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIObjectInstance()
+ * @model
+ * @generated
+ */
+public interface CGIObjectInstance extends GraphElementsType {
+	/**
+	 * Returns the value of the '<em><b>MpModel Object</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>MpModel Object</em>' reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>MpModel Object</em>' reference.
+	 * @see #setM_pModelObject(M_pModelObjectType)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIObjectInstance_M_pModelObject()
+	 * @model
+	 * @generated
+	 */
+	M_pModelObjectType getM_pModelObject();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIObjectInstance#getM_pModelObject <em>MpModel Object</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>MpModel Object</em>' reference.
+	 * @see #getM_pModelObject()
+	 * @generated
+	 */
+	void setM_pModelObject(M_pModelObjectType value);
+
+	/**
+	 * Returns the value of the '<em><b>MpParent</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>MpParent</em>' reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>MpParent</em>' reference.
+	 * @see #setM_pParent(M_pRootType)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIObjectInstance_M_pParent()
+	 * @model
+	 * @generated
+	 */
+	M_pRootType getM_pParent();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIObjectInstance#getM_pParent <em>MpParent</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>MpParent</em>' reference.
+	 * @see #getM_pParent()
+	 * @generated
+	 */
+	void setM_pParent(M_pRootType value);
+
+	/**
+	 * Returns the value of the '<em><b>Mtransform</b></em>' attribute list.
+	 * The list contents are of type {@link java.lang.String}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Mtransform</em>' attribute list isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Mtransform</em>' attribute list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIObjectInstance_M_transform()
+	 * @model unique="false"
+	 * @generated
+	 */
+	EList<String> getM_transform();
+
+	/**
+	 * Returns the value of the '<em><b>MAdditional Label</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>MAdditional Label</em>' containment reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>MAdditional Label</em>' containment reference.
+	 * @see #setM_AdditionalLabel(CGIText)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIObjectInstance_M_AdditionalLabel()
+	 * @model containment="true" resolveProxies="true"
+	 * @generated
+	 */
+	CGIText getM_AdditionalLabel();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIObjectInstance#getM_AdditionalLabel <em>MAdditional Label</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>MAdditional Label</em>' containment reference.
+	 * @see #getM_AdditionalLabel()
+	 * @generated
+	 */
+	void setM_AdditionalLabel(CGIText value);
+
+	/**
+	 * Returns the value of the '<em><b>Mpolygon</b></em>' attribute list.
+	 * The list contents are of type {@link java.lang.String}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Mpolygon</em>' attribute list isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Mpolygon</em>' attribute list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIObjectInstance_M_polygon()
+	 * @model unique="false"
+	 * @generated
+	 */
+	EList<String> getM_polygon();
+
+	/**
+	 * Returns the value of the '<em><b>MnName Format</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>MnName Format</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>MnName Format</em>' attribute.
+	 * @see #setM_nNameFormat(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIObjectInstance_M_nNameFormat()
+	 * @model
+	 * @generated
+	 */
+	String getM_nNameFormat();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIObjectInstance#getM_nNameFormat <em>MnName Format</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>MnName Format</em>' attribute.
+	 * @see #getM_nNameFormat()
+	 * @generated
+	 */
+	void setM_nNameFormat(String value);
+
+	/**
+	 * Returns the value of the '<em><b>MnIs Name Format</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>MnIs Name Format</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>MnIs Name Format</em>' attribute.
+	 * @see #setM_nIsNameFormat(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIObjectInstance_M_nIsNameFormat()
+	 * @model
+	 * @generated
+	 */
+	String getM_nIsNameFormat();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIObjectInstance#getM_nIsNameFormat <em>MnIs Name Format</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>MnIs Name Format</em>' attribute.
+	 * @see #getM_nIsNameFormat()
+	 * @generated
+	 */
+	void setM_nIsNameFormat(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Frameset</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Frameset</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Frameset</em>' attribute.
+	 * @see #setFrameset(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIObjectInstance_Frameset()
+	 * @model
+	 * @generated
+	 */
+	String getFrameset();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIObjectInstance#getFrameset <em>Frameset</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Frameset</em>' attribute.
+	 * @see #getFrameset()
+	 * @generated
+	 */
+	void setFrameset(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Compartments</b></em>' containment reference list.
+	 * The list contents are of type {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CompartmentsType}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Compartments</em>' containment reference list isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Compartments</em>' containment reference list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIObjectInstance_Compartments()
+	 * @model containment="true" resolveProxies="true"
+	 * @generated
+	 */
+	EList<CompartmentsType> getCompartments();
+
+	/**
+	 * Returns the value of the '<em><b>Mmultiplicity</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Mmultiplicity</em>' containment reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Mmultiplicity</em>' containment reference.
+	 * @see #setM_multiplicity(CGIText)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIObjectInstance_M_multiplicity()
+	 * @model containment="true" resolveProxies="true"
+	 * @generated
+	 */
+	CGIText getM_multiplicity();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIObjectInstance#getM_multiplicity <em>Mmultiplicity</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Mmultiplicity</em>' containment reference.
+	 * @see #getM_multiplicity()
+	 * @generated
+	 */
+	void setM_multiplicity(CGIText value);
+
+	/**
+	 * Returns the value of the '<em><b>Properties</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Properties</em>' containment reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Properties</em>' containment reference.
+	 * @see #setProperties(IPropertyContainer)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIObjectInstance_Properties()
+	 * @model containment="true" resolveProxies="true"
+	 * @generated
+	 */
+	IPropertyContainer getProperties();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIObjectInstance#getProperties <em>Properties</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Properties</em>' containment reference.
+	 * @see #getProperties()
+	 * @generated
+	 */
+	void setProperties(IPropertyContainer value);
+
+	/**
+	 * Returns the value of the '<em><b>Operations</b></em>' reference list.
+	 * The list contents are of type {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.OperationsType}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Operations</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>Operations</em>' reference list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIObjectInstance_Operations()
+	 * @model
+	 * @generated
+	 */
+	EList<OperationsType> getOperations();
+
+	/**
+	 * Returns the value of the '<em><b>Attrs</b></em>' reference list.
+	 * The list contents are of type {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IUnit}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Attrs</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>Attrs</em>' reference list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIObjectInstance_Attrs()
+	 * @model
+	 * @generated
+	 */
+	EList<IUnit> getAttrs();
+
+	/**
+	 * Returns the value of the '<em><b>MbFrameset Modified</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>MbFrameset Modified</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>MbFrameset Modified</em>' attribute.
+	 * @see #setM_bFramesetModified(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIObjectInstance_M_bFramesetModified()
+	 * @model
+	 * @generated
+	 */
+	String getM_bFramesetModified();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIObjectInstance#getM_bFramesetModified <em>MbFrameset Modified</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>MbFrameset Modified</em>' attribute.
+	 * @see #getM_bFramesetModified()
+	 * @generated
+	 */
+	void setM_bFramesetModified(String value);
+
+	/**
+	 * Returns the value of the '<em><b>MpImage View Data</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>MpImage View Data</em>' reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>MpImage View Data</em>' reference.
+	 * @see #setM_pImageViewData(CGIImageData)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIObjectInstance_M_pImageViewData()
+	 * @model
+	 * @generated
+	 */
+	CGIImageData getM_pImageViewData();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIObjectInstance#getM_pImageViewData <em>MpImage View Data</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>MpImage View Data</em>' reference.
+	 * @see #getM_pImageViewData()
+	 * @generated
+	 */
+	void setM_pImageViewData(CGIImageData value);
+
+	/**
+	 * Returns the value of the '<em><b>MbIs Misplaced</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>MbIs Misplaced</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>MbIs Misplaced</em>' attribute.
+	 * @see #setM_bIsMisplaced(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIObjectInstance_M_bIsMisplaced()
+	 * @model
+	 * @generated
+	 */
+	String getM_bIsMisplaced();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIObjectInstance#getM_bIsMisplaced <em>MbIs Misplaced</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>MbIs Misplaced</em>' attribute.
+	 * @see #getM_bIsMisplaced()
+	 * @generated
+	 */
+	void setM_bIsMisplaced(String value);
+
+} // CGIObjectInstance
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/CGIObjectLink.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/CGIObjectLink.java
new file mode 100755
index 0000000..4ebdcc6
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/CGIObjectLink.java
@@ -0,0 +1,631 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel;
+
+import org.eclipse.emf.common.util.EList;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>CGI Object Link</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * </p>
+ * <ul>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIObjectLink#getProperties <em>Properties</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIObjectLink#getM_pModelObject <em>MpModel Object</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIObjectLink#getM_pParent <em>MpParent</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIObjectLink#getM_pSource <em>MpSource</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIObjectLink#getM_sourceType <em>Msource Type</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIObjectLink#getM_pTarget <em>MpTarget</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIObjectLink#getM_targetType <em>Mtarget Type</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIObjectLink#getM_direction <em>Mdirection</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIObjectLink#getM_rpn <em>Mrpn</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIObjectLink#getM_arrow <em>Marrow</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIObjectLink#getM_anglePoint1 <em>Mangle Point1</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIObjectLink#getM_anglePoint2 <em>Mangle Point2</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIObjectLink#getM_line_style <em>Mline style</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIObjectLink#getM_SourcePort <em>MSource Port</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIObjectLink#getM_TargetPort <em>MTarget Port</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIObjectLink#getM_bShowSourceMultiplicity <em>MbShow Source Multiplicity</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIObjectLink#getM_bShowSourceRole <em>MbShow Source Role</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIObjectLink#getM_bShowTargetMultiplicity <em>MbShow Target Multiplicity</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIObjectLink#getM_bShowTargetRole <em>MbShow Target Role</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIObjectLink#getM_bShowLinkName <em>MbShow Link Name</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIObjectLink#getM_sourceRole <em>Msource Role</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIObjectLink#getM_targetRole <em>Mtarget Role</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIObjectLink#getM_sourceMultiplicity <em>Msource Multiplicity</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIObjectLink#getM_targetMultiplicity <em>Mtarget Multiplicity</em>}</li>
+ * </ul>
+ *
+ * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIObjectLink()
+ * @model
+ * @generated
+ */
+public interface CGIObjectLink extends GraphElementsType {
+	/**
+	 * Returns the value of the '<em><b>Properties</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Properties</em>' containment reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Properties</em>' containment reference.
+	 * @see #setProperties(IPropertyContainer)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIObjectLink_Properties()
+	 * @model containment="true" resolveProxies="true"
+	 * @generated
+	 */
+	IPropertyContainer getProperties();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIObjectLink#getProperties <em>Properties</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Properties</em>' containment reference.
+	 * @see #getProperties()
+	 * @generated
+	 */
+	void setProperties(IPropertyContainer value);
+
+	/**
+	 * Returns the value of the '<em><b>MpModel Object</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>MpModel Object</em>' reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>MpModel Object</em>' reference.
+	 * @see #setM_pModelObject(M_pModelObjectType)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIObjectLink_M_pModelObject()
+	 * @model
+	 * @generated
+	 */
+	M_pModelObjectType getM_pModelObject();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIObjectLink#getM_pModelObject <em>MpModel Object</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>MpModel Object</em>' reference.
+	 * @see #getM_pModelObject()
+	 * @generated
+	 */
+	void setM_pModelObject(M_pModelObjectType value);
+
+	/**
+	 * Returns the value of the '<em><b>MpParent</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>MpParent</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>MpParent</em>' attribute.
+	 * @see #setM_pParent(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIObjectLink_M_pParent()
+	 * @model
+	 * @generated
+	 */
+	String getM_pParent();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIObjectLink#getM_pParent <em>MpParent</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>MpParent</em>' attribute.
+	 * @see #getM_pParent()
+	 * @generated
+	 */
+	void setM_pParent(String value);
+
+	/**
+	 * Returns the value of the '<em><b>MpSource</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>MpSource</em>' reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>MpSource</em>' reference.
+	 * @see #setM_pSource(M_pRootType)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIObjectLink_M_pSource()
+	 * @model
+	 * @generated
+	 */
+	M_pRootType getM_pSource();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIObjectLink#getM_pSource <em>MpSource</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>MpSource</em>' reference.
+	 * @see #getM_pSource()
+	 * @generated
+	 */
+	void setM_pSource(M_pRootType value);
+
+	/**
+	 * Returns the value of the '<em><b>Msource Type</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Msource 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>Msource Type</em>' attribute.
+	 * @see #setM_sourceType(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIObjectLink_M_sourceType()
+	 * @model
+	 * @generated
+	 */
+	String getM_sourceType();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIObjectLink#getM_sourceType <em>Msource Type</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Msource Type</em>' attribute.
+	 * @see #getM_sourceType()
+	 * @generated
+	 */
+	void setM_sourceType(String value);
+
+	/**
+	 * Returns the value of the '<em><b>MpTarget</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>MpTarget</em>' reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>MpTarget</em>' reference.
+	 * @see #setM_pTarget(M_pRootType)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIObjectLink_M_pTarget()
+	 * @model
+	 * @generated
+	 */
+	M_pRootType getM_pTarget();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIObjectLink#getM_pTarget <em>MpTarget</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>MpTarget</em>' reference.
+	 * @see #getM_pTarget()
+	 * @generated
+	 */
+	void setM_pTarget(M_pRootType value);
+
+	/**
+	 * Returns the value of the '<em><b>Mtarget Type</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Mtarget 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>Mtarget Type</em>' attribute.
+	 * @see #setM_targetType(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIObjectLink_M_targetType()
+	 * @model
+	 * @generated
+	 */
+	String getM_targetType();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIObjectLink#getM_targetType <em>Mtarget Type</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Mtarget Type</em>' attribute.
+	 * @see #getM_targetType()
+	 * @generated
+	 */
+	void setM_targetType(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Mdirection</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Mdirection</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Mdirection</em>' attribute.
+	 * @see #setM_direction(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIObjectLink_M_direction()
+	 * @model
+	 * @generated
+	 */
+	String getM_direction();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIObjectLink#getM_direction <em>Mdirection</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Mdirection</em>' attribute.
+	 * @see #getM_direction()
+	 * @generated
+	 */
+	void setM_direction(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Mrpn</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Mrpn</em>' containment reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Mrpn</em>' containment reference.
+	 * @see #setM_rpn(CGIText)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIObjectLink_M_rpn()
+	 * @model containment="true" resolveProxies="true"
+	 * @generated
+	 */
+	CGIText getM_rpn();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIObjectLink#getM_rpn <em>Mrpn</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Mrpn</em>' containment reference.
+	 * @see #getM_rpn()
+	 * @generated
+	 */
+	void setM_rpn(CGIText value);
+
+	/**
+	 * Returns the value of the '<em><b>Marrow</b></em>' attribute list.
+	 * The list contents are of type {@link java.lang.String}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Marrow</em>' attribute list isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Marrow</em>' attribute list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIObjectLink_M_arrow()
+	 * @model unique="false"
+	 * @generated
+	 */
+	EList<String> getM_arrow();
+
+	/**
+	 * Returns the value of the '<em><b>Mangle Point1</b></em>' attribute list.
+	 * The list contents are of type {@link java.lang.String}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Mangle Point1</em>' attribute list isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Mangle Point1</em>' attribute list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIObjectLink_M_anglePoint1()
+	 * @model unique="false"
+	 * @generated
+	 */
+	EList<String> getM_anglePoint1();
+
+	/**
+	 * Returns the value of the '<em><b>Mangle Point2</b></em>' attribute list.
+	 * The list contents are of type {@link java.lang.String}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Mangle Point2</em>' attribute list isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Mangle Point2</em>' attribute list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIObjectLink_M_anglePoint2()
+	 * @model unique="false"
+	 * @generated
+	 */
+	EList<String> getM_anglePoint2();
+
+	/**
+	 * Returns the value of the '<em><b>Mline style</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Mline style</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Mline style</em>' attribute.
+	 * @see #setM_line_style(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIObjectLink_M_line_style()
+	 * @model
+	 * @generated
+	 */
+	String getM_line_style();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIObjectLink#getM_line_style <em>Mline style</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Mline style</em>' attribute.
+	 * @see #getM_line_style()
+	 * @generated
+	 */
+	void setM_line_style(String value);
+
+	/**
+	 * Returns the value of the '<em><b>MSource Port</b></em>' attribute list.
+	 * The list contents are of type {@link java.lang.String}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>MSource Port</em>' attribute list isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>MSource Port</em>' attribute list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIObjectLink_M_SourcePort()
+	 * @model unique="false"
+	 * @generated
+	 */
+	EList<String> getM_SourcePort();
+
+	/**
+	 * Returns the value of the '<em><b>MTarget Port</b></em>' attribute list.
+	 * The list contents are of type {@link java.lang.String}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>MTarget Port</em>' attribute list isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>MTarget Port</em>' attribute list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIObjectLink_M_TargetPort()
+	 * @model unique="false"
+	 * @generated
+	 */
+	EList<String> getM_TargetPort();
+
+	/**
+	 * Returns the value of the '<em><b>MbShow Source Multiplicity</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>MbShow Source Multiplicity</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>MbShow Source Multiplicity</em>' attribute.
+	 * @see #setM_bShowSourceMultiplicity(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIObjectLink_M_bShowSourceMultiplicity()
+	 * @model
+	 * @generated
+	 */
+	String getM_bShowSourceMultiplicity();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIObjectLink#getM_bShowSourceMultiplicity <em>MbShow Source Multiplicity</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>MbShow Source Multiplicity</em>' attribute.
+	 * @see #getM_bShowSourceMultiplicity()
+	 * @generated
+	 */
+	void setM_bShowSourceMultiplicity(String value);
+
+	/**
+	 * Returns the value of the '<em><b>MbShow Source Role</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>MbShow Source Role</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>MbShow Source Role</em>' attribute.
+	 * @see #setM_bShowSourceRole(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIObjectLink_M_bShowSourceRole()
+	 * @model
+	 * @generated
+	 */
+	String getM_bShowSourceRole();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIObjectLink#getM_bShowSourceRole <em>MbShow Source Role</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>MbShow Source Role</em>' attribute.
+	 * @see #getM_bShowSourceRole()
+	 * @generated
+	 */
+	void setM_bShowSourceRole(String value);
+
+	/**
+	 * Returns the value of the '<em><b>MbShow Target Multiplicity</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>MbShow Target Multiplicity</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>MbShow Target Multiplicity</em>' attribute.
+	 * @see #setM_bShowTargetMultiplicity(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIObjectLink_M_bShowTargetMultiplicity()
+	 * @model
+	 * @generated
+	 */
+	String getM_bShowTargetMultiplicity();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIObjectLink#getM_bShowTargetMultiplicity <em>MbShow Target Multiplicity</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>MbShow Target Multiplicity</em>' attribute.
+	 * @see #getM_bShowTargetMultiplicity()
+	 * @generated
+	 */
+	void setM_bShowTargetMultiplicity(String value);
+
+	/**
+	 * Returns the value of the '<em><b>MbShow Target Role</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>MbShow Target Role</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>MbShow Target Role</em>' attribute.
+	 * @see #setM_bShowTargetRole(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIObjectLink_M_bShowTargetRole()
+	 * @model
+	 * @generated
+	 */
+	String getM_bShowTargetRole();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIObjectLink#getM_bShowTargetRole <em>MbShow Target Role</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>MbShow Target Role</em>' attribute.
+	 * @see #getM_bShowTargetRole()
+	 * @generated
+	 */
+	void setM_bShowTargetRole(String value);
+
+	/**
+	 * Returns the value of the '<em><b>MbShow Link Name</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>MbShow Link Name</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>MbShow Link Name</em>' attribute.
+	 * @see #setM_bShowLinkName(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIObjectLink_M_bShowLinkName()
+	 * @model
+	 * @generated
+	 */
+	String getM_bShowLinkName();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIObjectLink#getM_bShowLinkName <em>MbShow Link Name</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>MbShow Link Name</em>' attribute.
+	 * @see #getM_bShowLinkName()
+	 * @generated
+	 */
+	void setM_bShowLinkName(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Msource Role</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Msource Role</em>' containment reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Msource Role</em>' containment reference.
+	 * @see #setM_sourceRole(CGIText)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIObjectLink_M_sourceRole()
+	 * @model containment="true" resolveProxies="true"
+	 * @generated
+	 */
+	CGIText getM_sourceRole();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIObjectLink#getM_sourceRole <em>Msource Role</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Msource Role</em>' containment reference.
+	 * @see #getM_sourceRole()
+	 * @generated
+	 */
+	void setM_sourceRole(CGIText value);
+
+	/**
+	 * Returns the value of the '<em><b>Mtarget Role</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Mtarget Role</em>' containment reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Mtarget Role</em>' containment reference.
+	 * @see #setM_targetRole(CGIText)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIObjectLink_M_targetRole()
+	 * @model containment="true" resolveProxies="true"
+	 * @generated
+	 */
+	CGIText getM_targetRole();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIObjectLink#getM_targetRole <em>Mtarget Role</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Mtarget Role</em>' containment reference.
+	 * @see #getM_targetRole()
+	 * @generated
+	 */
+	void setM_targetRole(CGIText value);
+
+	/**
+	 * Returns the value of the '<em><b>Msource Multiplicity</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Msource Multiplicity</em>' containment reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Msource Multiplicity</em>' containment reference.
+	 * @see #setM_sourceMultiplicity(CGIText)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIObjectLink_M_sourceMultiplicity()
+	 * @model containment="true" resolveProxies="true"
+	 * @generated
+	 */
+	CGIText getM_sourceMultiplicity();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIObjectLink#getM_sourceMultiplicity <em>Msource Multiplicity</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Msource Multiplicity</em>' containment reference.
+	 * @see #getM_sourceMultiplicity()
+	 * @generated
+	 */
+	void setM_sourceMultiplicity(CGIText value);
+
+	/**
+	 * Returns the value of the '<em><b>Mtarget Multiplicity</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Mtarget Multiplicity</em>' containment reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Mtarget Multiplicity</em>' containment reference.
+	 * @see #setM_targetMultiplicity(CGIText)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIObjectLink_M_targetMultiplicity()
+	 * @model containment="true" resolveProxies="true"
+	 * @generated
+	 */
+	CGIText getM_targetMultiplicity();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIObjectLink#getM_targetMultiplicity <em>Mtarget Multiplicity</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Mtarget Multiplicity</em>' containment reference.
+	 * @see #getM_targetMultiplicity()
+	 * @generated
+	 */
+	void setM_targetMultiplicity(CGIText value);
+
+} // CGIObjectLink
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/CGIPackage.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/CGIPackage.java
new file mode 100755
index 0000000..b7aace5
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/CGIPackage.java
@@ -0,0 +1,354 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel;
+
+import org.eclipse.emf.common.util.EList;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>CGI Package</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * </p>
+ * <ul>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIPackage#getM_pModelObject <em>MpModel Object</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIPackage#getM_pParent <em>MpParent</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIPackage#getM_transform <em>Mtransform</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIPackage#getM_polygon <em>Mpolygon</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIPackage#getM_nNameFormat <em>MnName Format</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIPackage#getM_nIsNameFormat <em>MnIs Name Format</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIPackage#getCompartments <em>Compartments</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIPackage#getProperties <em>Properties</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIPackage#getM_color <em>Mcolor</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIPackage#getM_lineWidth <em>Mline Width</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIPackage#getM_AdditionalLabel <em>MAdditional Label</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIPackage#getFrameset <em>Frameset</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIPackage#getM_bIsStructured <em>MbIs Structured</em>}</li>
+ * </ul>
+ *
+ * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIPackage()
+ * @model
+ * @generated
+ */
+public interface CGIPackage extends GraphElementsType {
+	/**
+	 * Returns the value of the '<em><b>MpModel Object</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>MpModel Object</em>' reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>MpModel Object</em>' reference.
+	 * @see #setM_pModelObject(DefaultSubsystemType)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIPackage_M_pModelObject()
+	 * @model
+	 * @generated
+	 */
+	DefaultSubsystemType getM_pModelObject();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIPackage#getM_pModelObject <em>MpModel Object</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>MpModel Object</em>' reference.
+	 * @see #getM_pModelObject()
+	 * @generated
+	 */
+	void setM_pModelObject(DefaultSubsystemType value);
+
+	/**
+	 * Returns the value of the '<em><b>MpParent</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>MpParent</em>' reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>MpParent</em>' reference.
+	 * @see #setM_pParent(M_pRootType)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIPackage_M_pParent()
+	 * @model
+	 * @generated
+	 */
+	M_pRootType getM_pParent();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIPackage#getM_pParent <em>MpParent</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>MpParent</em>' reference.
+	 * @see #getM_pParent()
+	 * @generated
+	 */
+	void setM_pParent(M_pRootType value);
+
+	/**
+	 * Returns the value of the '<em><b>Mtransform</b></em>' attribute list.
+	 * The list contents are of type {@link java.lang.String}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Mtransform</em>' attribute list isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Mtransform</em>' attribute list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIPackage_M_transform()
+	 * @model unique="false"
+	 * @generated
+	 */
+	EList<String> getM_transform();
+
+	/**
+	 * Returns the value of the '<em><b>Mpolygon</b></em>' attribute list.
+	 * The list contents are of type {@link java.lang.String}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Mpolygon</em>' attribute list isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Mpolygon</em>' attribute list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIPackage_M_polygon()
+	 * @model unique="false"
+	 * @generated
+	 */
+	EList<String> getM_polygon();
+
+	/**
+	 * Returns the value of the '<em><b>MnName Format</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>MnName Format</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>MnName Format</em>' attribute.
+	 * @see #setM_nNameFormat(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIPackage_M_nNameFormat()
+	 * @model
+	 * @generated
+	 */
+	String getM_nNameFormat();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIPackage#getM_nNameFormat <em>MnName Format</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>MnName Format</em>' attribute.
+	 * @see #getM_nNameFormat()
+	 * @generated
+	 */
+	void setM_nNameFormat(String value);
+
+	/**
+	 * Returns the value of the '<em><b>MnIs Name Format</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>MnIs Name Format</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>MnIs Name Format</em>' attribute.
+	 * @see #setM_nIsNameFormat(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIPackage_M_nIsNameFormat()
+	 * @model
+	 * @generated
+	 */
+	String getM_nIsNameFormat();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIPackage#getM_nIsNameFormat <em>MnIs Name Format</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>MnIs Name Format</em>' attribute.
+	 * @see #getM_nIsNameFormat()
+	 * @generated
+	 */
+	void setM_nIsNameFormat(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Compartments</b></em>' reference list.
+	 * The list contents are of type {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UnknownType}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Compartments</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>Compartments</em>' reference list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIPackage_Compartments()
+	 * @model
+	 * @generated
+	 */
+	EList<UnknownType> getCompartments();
+
+	/**
+	 * Returns the value of the '<em><b>Properties</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Properties</em>' containment reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Properties</em>' containment reference.
+	 * @see #setProperties(IPropertyContainer)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIPackage_Properties()
+	 * @model containment="true" resolveProxies="true"
+	 * @generated
+	 */
+	IPropertyContainer getProperties();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIPackage#getProperties <em>Properties</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Properties</em>' containment reference.
+	 * @see #getProperties()
+	 * @generated
+	 */
+	void setProperties(IPropertyContainer value);
+
+	/**
+	 * Returns the value of the '<em><b>Mcolor</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Mcolor</em>' containment reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Mcolor</em>' containment reference.
+	 * @see #setM_color(IColor)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIPackage_M_color()
+	 * @model containment="true" resolveProxies="true"
+	 * @generated
+	 */
+	IColor getM_color();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIPackage#getM_color <em>Mcolor</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Mcolor</em>' containment reference.
+	 * @see #getM_color()
+	 * @generated
+	 */
+	void setM_color(IColor value);
+
+	/**
+	 * Returns the value of the '<em><b>Mline Width</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Mline Width</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Mline Width</em>' attribute.
+	 * @see #setM_lineWidth(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIPackage_M_lineWidth()
+	 * @model
+	 * @generated
+	 */
+	String getM_lineWidth();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIPackage#getM_lineWidth <em>Mline Width</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Mline Width</em>' attribute.
+	 * @see #getM_lineWidth()
+	 * @generated
+	 */
+	void setM_lineWidth(String value);
+
+	/**
+	 * Returns the value of the '<em><b>MAdditional Label</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>MAdditional Label</em>' containment reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>MAdditional Label</em>' containment reference.
+	 * @see #setM_AdditionalLabel(CGIText)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIPackage_M_AdditionalLabel()
+	 * @model containment="true" resolveProxies="true"
+	 * @generated
+	 */
+	CGIText getM_AdditionalLabel();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIPackage#getM_AdditionalLabel <em>MAdditional Label</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>MAdditional Label</em>' containment reference.
+	 * @see #getM_AdditionalLabel()
+	 * @generated
+	 */
+	void setM_AdditionalLabel(CGIText value);
+
+	/**
+	 * Returns the value of the '<em><b>Frameset</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Frameset</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Frameset</em>' attribute.
+	 * @see #setFrameset(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIPackage_Frameset()
+	 * @model
+	 * @generated
+	 */
+	String getFrameset();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIPackage#getFrameset <em>Frameset</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Frameset</em>' attribute.
+	 * @see #getFrameset()
+	 * @generated
+	 */
+	void setFrameset(String value);
+
+	/**
+	 * Returns the value of the '<em><b>MbIs Structured</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>MbIs Structured</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>MbIs Structured</em>' attribute.
+	 * @see #setM_bIsStructured(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIPackage_M_bIsStructured()
+	 * @model
+	 * @generated
+	 */
+	String getM_bIsStructured();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIPackage#getM_bIsStructured <em>MbIs Structured</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>MbIs Structured</em>' attribute.
+	 * @see #getM_bIsStructured()
+	 * @generated
+	 */
+	void setM_bIsStructured(String value);
+
+} // CGIPackage
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/CGIPartition.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/CGIPartition.java
new file mode 100755
index 0000000..ba5d2a4
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/CGIPartition.java
@@ -0,0 +1,266 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel;
+
+import org.eclipse.emf.common.util.EList;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>CGI Partition</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * </p>
+ * <ul>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIPartition#getM_pModelObject <em>MpModel Object</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIPartition#getM_pParent <em>MpParent</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIPartition#getM_polygon <em>Mpolygon</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIPartition#getM_nNameFormat <em>MnName Format</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIPartition#getM_nIsNameFormat <em>MnIs Name Format</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIPartition#getFrameset <em>Frameset</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIPartition#getM_AdditionalLabel <em>MAdditional Label</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIPartition#getProperties <em>Properties</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIPartition#getCompartments <em>Compartments</em>}</li>
+ * </ul>
+ *
+ * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIPartition()
+ * @model
+ * @generated
+ */
+public interface CGIPartition extends GraphElementsType {
+	/**
+	 * Returns the value of the '<em><b>MpModel Object</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>MpModel Object</em>' reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>MpModel Object</em>' reference.
+	 * @see #setM_pModelObject(ISwimlane)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIPartition_M_pModelObject()
+	 * @model
+	 * @generated
+	 */
+	ISwimlane getM_pModelObject();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIPartition#getM_pModelObject <em>MpModel Object</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>MpModel Object</em>' reference.
+	 * @see #getM_pModelObject()
+	 * @generated
+	 */
+	void setM_pModelObject(ISwimlane value);
+
+	/**
+	 * Returns the value of the '<em><b>MpParent</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>MpParent</em>' reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>MpParent</em>' reference.
+	 * @see #setM_pParent(CGISwimlaneFrame)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIPartition_M_pParent()
+	 * @model
+	 * @generated
+	 */
+	CGISwimlaneFrame getM_pParent();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIPartition#getM_pParent <em>MpParent</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>MpParent</em>' reference.
+	 * @see #getM_pParent()
+	 * @generated
+	 */
+	void setM_pParent(CGISwimlaneFrame value);
+
+	/**
+	 * Returns the value of the '<em><b>Mpolygon</b></em>' attribute list.
+	 * The list contents are of type {@link java.lang.String}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Mpolygon</em>' attribute list isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Mpolygon</em>' attribute list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIPartition_M_polygon()
+	 * @model unique="false"
+	 * @generated
+	 */
+	EList<String> getM_polygon();
+
+	/**
+	 * Returns the value of the '<em><b>MnName Format</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>MnName Format</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>MnName Format</em>' attribute.
+	 * @see #setM_nNameFormat(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIPartition_M_nNameFormat()
+	 * @model
+	 * @generated
+	 */
+	String getM_nNameFormat();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIPartition#getM_nNameFormat <em>MnName Format</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>MnName Format</em>' attribute.
+	 * @see #getM_nNameFormat()
+	 * @generated
+	 */
+	void setM_nNameFormat(String value);
+
+	/**
+	 * Returns the value of the '<em><b>MnIs Name Format</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>MnIs Name Format</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>MnIs Name Format</em>' attribute.
+	 * @see #setM_nIsNameFormat(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIPartition_M_nIsNameFormat()
+	 * @model
+	 * @generated
+	 */
+	String getM_nIsNameFormat();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIPartition#getM_nIsNameFormat <em>MnIs Name Format</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>MnIs Name Format</em>' attribute.
+	 * @see #getM_nIsNameFormat()
+	 * @generated
+	 */
+	void setM_nIsNameFormat(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Frameset</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Frameset</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Frameset</em>' attribute.
+	 * @see #setFrameset(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIPartition_Frameset()
+	 * @model
+	 * @generated
+	 */
+	String getFrameset();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIPartition#getFrameset <em>Frameset</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Frameset</em>' attribute.
+	 * @see #getFrameset()
+	 * @generated
+	 */
+	void setFrameset(String value);
+
+	/**
+	 * Returns the value of the '<em><b>MAdditional Label</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>MAdditional Label</em>' containment reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>MAdditional Label</em>' containment reference.
+	 * @see #setM_AdditionalLabel(CGIText)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIPartition_M_AdditionalLabel()
+	 * @model containment="true" resolveProxies="true"
+	 * @generated
+	 */
+	CGIText getM_AdditionalLabel();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIPartition#getM_AdditionalLabel <em>MAdditional Label</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>MAdditional Label</em>' containment reference.
+	 * @see #getM_AdditionalLabel()
+	 * @generated
+	 */
+	void setM_AdditionalLabel(CGIText value);
+
+	/**
+	 * Returns the value of the '<em><b>Properties</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Properties</em>' containment reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Properties</em>' containment reference.
+	 * @see #setProperties(IPropertyContainer)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIPartition_Properties()
+	 * @model containment="true" resolveProxies="true"
+	 * @generated
+	 */
+	IPropertyContainer getProperties();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIPartition#getProperties <em>Properties</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Properties</em>' containment reference.
+	 * @see #getProperties()
+	 * @generated
+	 */
+	void setProperties(IPropertyContainer value);
+
+	/**
+	 * Returns the value of the '<em><b>Compartments</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Compartments</em>' containment reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Compartments</em>' containment reference.
+	 * @see #setCompartments(CompartmentsType)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIPartition_Compartments()
+	 * @model containment="true" resolveProxies="true"
+	 * @generated
+	 */
+	CompartmentsType getCompartments();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIPartition#getCompartments <em>Compartments</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Compartments</em>' containment reference.
+	 * @see #getCompartments()
+	 * @generated
+	 */
+	void setCompartments(CompartmentsType value);
+
+} // CGIPartition
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/CGIPortConnector.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/CGIPortConnector.java
new file mode 100755
index 0000000..0a21d92
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/CGIPortConnector.java
@@ -0,0 +1,354 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel;
+
+import org.eclipse.emf.common.util.EList;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>CGI Port Connector</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * </p>
+ * <ul>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIPortConnector#getM_pModelObject <em>MpModel Object</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIPortConnector#getM_pParent <em>MpParent</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIPortConnector#getM_transform <em>Mtransform</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIPortConnector#getM_AdditionalLabel <em>MAdditional Label</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIPortConnector#getM_position <em>Mposition</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIPortConnector#getM_pInheritsFrom <em>MpInherits From</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIPortConnector#getM_nInheritanceMask <em>MnInheritance Mask</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIPortConnector#getM_SubType <em>MSub Type</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIPortConnector#getM_providedInterfaceLabel <em>Mprovided Interface Label</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIPortConnector#getM_requiredInterfaceLabel <em>Mrequired Interface Label</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIPortConnector#getProperties <em>Properties</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIPortConnector#getM_bVisible <em>MbVisible</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIPortConnector#getM_nAngle <em>MnAngle</em>}</li>
+ * </ul>
+ *
+ * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIPortConnector()
+ * @model
+ * @generated
+ */
+public interface CGIPortConnector extends GraphElementsType {
+	/**
+	 * Returns the value of the '<em><b>MpModel Object</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>MpModel Object</em>' reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>MpModel Object</em>' reference.
+	 * @see #setM_pModelObject(IRelation)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIPortConnector_M_pModelObject()
+	 * @model
+	 * @generated
+	 */
+	IRelation getM_pModelObject();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIPortConnector#getM_pModelObject <em>MpModel Object</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>MpModel Object</em>' reference.
+	 * @see #getM_pModelObject()
+	 * @generated
+	 */
+	void setM_pModelObject(IRelation value);
+
+	/**
+	 * Returns the value of the '<em><b>MpParent</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>MpParent</em>' reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>MpParent</em>' reference.
+	 * @see #setM_pParent(M_pRootType)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIPortConnector_M_pParent()
+	 * @model
+	 * @generated
+	 */
+	M_pRootType getM_pParent();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIPortConnector#getM_pParent <em>MpParent</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>MpParent</em>' reference.
+	 * @see #getM_pParent()
+	 * @generated
+	 */
+	void setM_pParent(M_pRootType value);
+
+	/**
+	 * Returns the value of the '<em><b>Mtransform</b></em>' attribute list.
+	 * The list contents are of type {@link java.lang.String}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Mtransform</em>' attribute list isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Mtransform</em>' attribute list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIPortConnector_M_transform()
+	 * @model unique="false"
+	 * @generated
+	 */
+	EList<String> getM_transform();
+
+	/**
+	 * Returns the value of the '<em><b>MAdditional Label</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>MAdditional Label</em>' containment reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>MAdditional Label</em>' containment reference.
+	 * @see #setM_AdditionalLabel(CGIText)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIPortConnector_M_AdditionalLabel()
+	 * @model containment="true" resolveProxies="true"
+	 * @generated
+	 */
+	CGIText getM_AdditionalLabel();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIPortConnector#getM_AdditionalLabel <em>MAdditional Label</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>MAdditional Label</em>' containment reference.
+	 * @see #getM_AdditionalLabel()
+	 * @generated
+	 */
+	void setM_AdditionalLabel(CGIText value);
+
+	/**
+	 * Returns the value of the '<em><b>Mposition</b></em>' attribute list.
+	 * The list contents are of type {@link java.lang.String}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Mposition</em>' attribute list isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Mposition</em>' attribute list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIPortConnector_M_position()
+	 * @model unique="false"
+	 * @generated
+	 */
+	EList<String> getM_position();
+
+	/**
+	 * Returns the value of the '<em><b>MpInherits From</b></em>' reference list.
+	 * The list contents are of type {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UnknownType}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>MpInherits From</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>MpInherits From</em>' reference list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIPortConnector_M_pInheritsFrom()
+	 * @model
+	 * @generated
+	 */
+	EList<UnknownType> getM_pInheritsFrom();
+
+	/**
+	 * Returns the value of the '<em><b>MnInheritance Mask</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>MnInheritance Mask</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>MnInheritance Mask</em>' attribute.
+	 * @see #setM_nInheritanceMask(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIPortConnector_M_nInheritanceMask()
+	 * @model
+	 * @generated
+	 */
+	String getM_nInheritanceMask();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIPortConnector#getM_nInheritanceMask <em>MnInheritance Mask</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>MnInheritance Mask</em>' attribute.
+	 * @see #getM_nInheritanceMask()
+	 * @generated
+	 */
+	void setM_nInheritanceMask(String value);
+
+	/**
+	 * Returns the value of the '<em><b>MSub Type</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>MSub 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>MSub Type</em>' attribute.
+	 * @see #setM_SubType(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIPortConnector_M_SubType()
+	 * @model
+	 * @generated
+	 */
+	String getM_SubType();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIPortConnector#getM_SubType <em>MSub Type</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>MSub Type</em>' attribute.
+	 * @see #getM_SubType()
+	 * @generated
+	 */
+	void setM_SubType(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Mprovided Interface Label</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Mprovided Interface Label</em>' containment reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Mprovided Interface Label</em>' containment reference.
+	 * @see #setM_providedInterfaceLabel(CGIText)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIPortConnector_M_providedInterfaceLabel()
+	 * @model containment="true" resolveProxies="true"
+	 * @generated
+	 */
+	CGIText getM_providedInterfaceLabel();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIPortConnector#getM_providedInterfaceLabel <em>Mprovided Interface Label</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Mprovided Interface Label</em>' containment reference.
+	 * @see #getM_providedInterfaceLabel()
+	 * @generated
+	 */
+	void setM_providedInterfaceLabel(CGIText value);
+
+	/**
+	 * Returns the value of the '<em><b>Mrequired Interface Label</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Mrequired Interface Label</em>' containment reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Mrequired Interface Label</em>' containment reference.
+	 * @see #setM_requiredInterfaceLabel(CGIText)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIPortConnector_M_requiredInterfaceLabel()
+	 * @model containment="true" resolveProxies="true"
+	 * @generated
+	 */
+	CGIText getM_requiredInterfaceLabel();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIPortConnector#getM_requiredInterfaceLabel <em>Mrequired Interface Label</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Mrequired Interface Label</em>' containment reference.
+	 * @see #getM_requiredInterfaceLabel()
+	 * @generated
+	 */
+	void setM_requiredInterfaceLabel(CGIText value);
+
+	/**
+	 * Returns the value of the '<em><b>Properties</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Properties</em>' containment reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Properties</em>' containment reference.
+	 * @see #setProperties(IPropertyContainer)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIPortConnector_Properties()
+	 * @model containment="true" resolveProxies="true"
+	 * @generated
+	 */
+	IPropertyContainer getProperties();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIPortConnector#getProperties <em>Properties</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Properties</em>' containment reference.
+	 * @see #getProperties()
+	 * @generated
+	 */
+	void setProperties(IPropertyContainer value);
+
+	/**
+	 * Returns the value of the '<em><b>MbVisible</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>MbVisible</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>MbVisible</em>' attribute.
+	 * @see #setM_bVisible(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIPortConnector_M_bVisible()
+	 * @model
+	 * @generated
+	 */
+	String getM_bVisible();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIPortConnector#getM_bVisible <em>MbVisible</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>MbVisible</em>' attribute.
+	 * @see #getM_bVisible()
+	 * @generated
+	 */
+	void setM_bVisible(String value);
+
+	/**
+	 * Returns the value of the '<em><b>MnAngle</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>MnAngle</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>MnAngle</em>' attribute.
+	 * @see #setM_nAngle(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIPortConnector_M_nAngle()
+	 * @model
+	 * @generated
+	 */
+	String getM_nAngle();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIPortConnector#getM_nAngle <em>MnAngle</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>MnAngle</em>' attribute.
+	 * @see #getM_nAngle()
+	 * @generated
+	 */
+	void setM_nAngle(String value);
+
+} // CGIPortConnector
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/CGIState.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/CGIState.java
new file mode 100755
index 0000000..8381d04
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/CGIState.java
@@ -0,0 +1,587 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel;
+
+import org.eclipse.emf.common.util.EList;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>CGI State</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * </p>
+ * <ul>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIState#getM_pModelObject <em>MpModel Object</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIState#getM_AdditionalLabel <em>MAdditional Label</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIState#getM_polygon <em>Mpolygon</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIState#getM_nNameFormat <em>MnName Format</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIState#getM_nIsNameFormat <em>MnIs Name Format</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIState#getNAndLineCount <em>NAnd Line Count</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIState#getM_nInheritanceMask <em>MnInheritance Mask</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIState#getM_pDefaultComponentRelation <em>MpDefault Component Relation</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIState#getProperties <em>Properties</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIState#getM_pParent <em>MpParent</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIState#getM_transform <em>Mtransform</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIState#getAndLinePoly <em>And Line Poly</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIState#getM_pVirtualParent <em>MpVirtual Parent</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIState#getM_moveAndLineTimeStamp <em>Mmove And Line Time Stamp</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIState#getMyState <em>My State</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIState#getM_pInheritsFrom <em>MpInherits From</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIState#getFrameset <em>Frameset</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIState#getM_bFramesetModified <em>MbFrameset Modified</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIState#getM_bIsMisplaced <em>MbIs Misplaced</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIState#getM_color <em>Mcolor</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIState#getM_lineWidth <em>Mline Width</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIState#getCompartments <em>Compartments</em>}</li>
+ * </ul>
+ *
+ * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIState()
+ * @model
+ * @generated
+ */
+public interface CGIState extends GraphElementsType {
+	/**
+	 * Returns the value of the '<em><b>MpModel Object</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>MpModel Object</em>' reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>MpModel Object</em>' reference.
+	 * @see #setM_pModelObject(ItsTargetType)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIState_M_pModelObject()
+	 * @model
+	 * @generated
+	 */
+	ItsTargetType getM_pModelObject();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIState#getM_pModelObject <em>MpModel Object</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>MpModel Object</em>' reference.
+	 * @see #getM_pModelObject()
+	 * @generated
+	 */
+	void setM_pModelObject(ItsTargetType value);
+
+	/**
+	 * Returns the value of the '<em><b>MAdditional Label</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>MAdditional Label</em>' containment reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>MAdditional Label</em>' containment reference.
+	 * @see #setM_AdditionalLabel(CGIText)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIState_M_AdditionalLabel()
+	 * @model containment="true" resolveProxies="true"
+	 * @generated
+	 */
+	CGIText getM_AdditionalLabel();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIState#getM_AdditionalLabel <em>MAdditional Label</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>MAdditional Label</em>' containment reference.
+	 * @see #getM_AdditionalLabel()
+	 * @generated
+	 */
+	void setM_AdditionalLabel(CGIText value);
+
+	/**
+	 * Returns the value of the '<em><b>Mpolygon</b></em>' attribute list.
+	 * The list contents are of type {@link java.lang.String}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Mpolygon</em>' attribute list isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Mpolygon</em>' attribute list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIState_M_polygon()
+	 * @model unique="false"
+	 * @generated
+	 */
+	EList<String> getM_polygon();
+
+	/**
+	 * Returns the value of the '<em><b>MnName Format</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>MnName Format</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>MnName Format</em>' attribute.
+	 * @see #setM_nNameFormat(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIState_M_nNameFormat()
+	 * @model
+	 * @generated
+	 */
+	String getM_nNameFormat();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIState#getM_nNameFormat <em>MnName Format</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>MnName Format</em>' attribute.
+	 * @see #getM_nNameFormat()
+	 * @generated
+	 */
+	void setM_nNameFormat(String value);
+
+	/**
+	 * Returns the value of the '<em><b>MnIs Name Format</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>MnIs Name Format</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>MnIs Name Format</em>' attribute.
+	 * @see #setM_nIsNameFormat(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIState_M_nIsNameFormat()
+	 * @model
+	 * @generated
+	 */
+	String getM_nIsNameFormat();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIState#getM_nIsNameFormat <em>MnIs Name Format</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>MnIs Name Format</em>' attribute.
+	 * @see #getM_nIsNameFormat()
+	 * @generated
+	 */
+	void setM_nIsNameFormat(String value);
+
+	/**
+	 * Returns the value of the '<em><b>NAnd Line Count</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>NAnd Line Count</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>NAnd Line Count</em>' attribute.
+	 * @see #setNAndLineCount(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIState_NAndLineCount()
+	 * @model
+	 * @generated
+	 */
+	String getNAndLineCount();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIState#getNAndLineCount <em>NAnd Line Count</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>NAnd Line Count</em>' attribute.
+	 * @see #getNAndLineCount()
+	 * @generated
+	 */
+	void setNAndLineCount(String value);
+
+	/**
+	 * Returns the value of the '<em><b>MnInheritance Mask</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>MnInheritance Mask</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>MnInheritance Mask</em>' attribute.
+	 * @see #setM_nInheritanceMask(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIState_M_nInheritanceMask()
+	 * @model
+	 * @generated
+	 */
+	String getM_nInheritanceMask();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIState#getM_nInheritanceMask <em>MnInheritance Mask</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>MnInheritance Mask</em>' attribute.
+	 * @see #getM_nInheritanceMask()
+	 * @generated
+	 */
+	void setM_nInheritanceMask(String value);
+
+	/**
+	 * Returns the value of the '<em><b>MpDefault Component Relation</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>MpDefault Component Relation</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>MpDefault Component Relation</em>' attribute.
+	 * @see #setM_pDefaultComponentRelation(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIState_M_pDefaultComponentRelation()
+	 * @model
+	 * @generated
+	 */
+	String getM_pDefaultComponentRelation();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIState#getM_pDefaultComponentRelation <em>MpDefault Component Relation</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>MpDefault Component Relation</em>' attribute.
+	 * @see #getM_pDefaultComponentRelation()
+	 * @generated
+	 */
+	void setM_pDefaultComponentRelation(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Properties</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Properties</em>' containment reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Properties</em>' containment reference.
+	 * @see #setProperties(IPropertyContainer)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIState_Properties()
+	 * @model containment="true" resolveProxies="true"
+	 * @generated
+	 */
+	IPropertyContainer getProperties();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIState#getProperties <em>Properties</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Properties</em>' containment reference.
+	 * @see #getProperties()
+	 * @generated
+	 */
+	void setProperties(IPropertyContainer value);
+
+	/**
+	 * Returns the value of the '<em><b>MpParent</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>MpParent</em>' reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>MpParent</em>' reference.
+	 * @see #setM_pParent(GraphElementsType)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIState_M_pParent()
+	 * @model
+	 * @generated
+	 */
+	GraphElementsType getM_pParent();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIState#getM_pParent <em>MpParent</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>MpParent</em>' reference.
+	 * @see #getM_pParent()
+	 * @generated
+	 */
+	void setM_pParent(GraphElementsType value);
+
+	/**
+	 * Returns the value of the '<em><b>Mtransform</b></em>' attribute list.
+	 * The list contents are of type {@link java.lang.String}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Mtransform</em>' attribute list isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Mtransform</em>' attribute list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIState_M_transform()
+	 * @model unique="false"
+	 * @generated
+	 */
+	EList<String> getM_transform();
+
+	/**
+	 * Returns the value of the '<em><b>And Line Poly</b></em>' attribute list.
+	 * The list contents are of type {@link java.lang.String}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>And Line Poly</em>' attribute list isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>And Line Poly</em>' attribute list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIState_AndLinePoly()
+	 * @model unique="false"
+	 * @generated
+	 */
+	EList<String> getAndLinePoly();
+
+	/**
+	 * Returns the value of the '<em><b>MpVirtual Parent</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>MpVirtual Parent</em>' reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>MpVirtual Parent</em>' reference.
+	 * @see #setM_pVirtualParent(GraphElementsType)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIState_M_pVirtualParent()
+	 * @model
+	 * @generated
+	 */
+	GraphElementsType getM_pVirtualParent();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIState#getM_pVirtualParent <em>MpVirtual Parent</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>MpVirtual Parent</em>' reference.
+	 * @see #getM_pVirtualParent()
+	 * @generated
+	 */
+	void setM_pVirtualParent(GraphElementsType value);
+
+	/**
+	 * Returns the value of the '<em><b>Mmove And Line Time Stamp</b></em>' attribute list.
+	 * The list contents are of type {@link java.lang.String}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Mmove And Line Time Stamp</em>' attribute list isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Mmove And Line Time Stamp</em>' attribute list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIState_M_moveAndLineTimeStamp()
+	 * @model unique="false"
+	 * @generated
+	 */
+	EList<String> getM_moveAndLineTimeStamp();
+
+	/**
+	 * Returns the value of the '<em><b>My State</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>My State</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>My State</em>' attribute.
+	 * @see #setMyState(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIState_MyState()
+	 * @model
+	 * @generated
+	 */
+	String getMyState();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIState#getMyState <em>My State</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>My State</em>' attribute.
+	 * @see #getMyState()
+	 * @generated
+	 */
+	void setMyState(String value);
+
+	/**
+	 * Returns the value of the '<em><b>MpInherits From</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>MpInherits From</em>' reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>MpInherits From</em>' reference.
+	 * @see #setM_pInheritsFrom(GraphElementsType)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIState_M_pInheritsFrom()
+	 * @model
+	 * @generated
+	 */
+	GraphElementsType getM_pInheritsFrom();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIState#getM_pInheritsFrom <em>MpInherits From</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>MpInherits From</em>' reference.
+	 * @see #getM_pInheritsFrom()
+	 * @generated
+	 */
+	void setM_pInheritsFrom(GraphElementsType value);
+
+	/**
+	 * Returns the value of the '<em><b>Frameset</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Frameset</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Frameset</em>' attribute.
+	 * @see #setFrameset(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIState_Frameset()
+	 * @model
+	 * @generated
+	 */
+	String getFrameset();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIState#getFrameset <em>Frameset</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Frameset</em>' attribute.
+	 * @see #getFrameset()
+	 * @generated
+	 */
+	void setFrameset(String value);
+
+	/**
+	 * Returns the value of the '<em><b>MbFrameset Modified</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>MbFrameset Modified</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>MbFrameset Modified</em>' attribute.
+	 * @see #setM_bFramesetModified(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIState_M_bFramesetModified()
+	 * @model
+	 * @generated
+	 */
+	String getM_bFramesetModified();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIState#getM_bFramesetModified <em>MbFrameset Modified</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>MbFrameset Modified</em>' attribute.
+	 * @see #getM_bFramesetModified()
+	 * @generated
+	 */
+	void setM_bFramesetModified(String value);
+
+	/**
+	 * Returns the value of the '<em><b>MbIs Misplaced</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>MbIs Misplaced</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>MbIs Misplaced</em>' attribute.
+	 * @see #setM_bIsMisplaced(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIState_M_bIsMisplaced()
+	 * @model
+	 * @generated
+	 */
+	String getM_bIsMisplaced();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIState#getM_bIsMisplaced <em>MbIs Misplaced</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>MbIs Misplaced</em>' attribute.
+	 * @see #getM_bIsMisplaced()
+	 * @generated
+	 */
+	void setM_bIsMisplaced(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Mcolor</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Mcolor</em>' containment reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Mcolor</em>' containment reference.
+	 * @see #setM_color(IColor)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIState_M_color()
+	 * @model containment="true" resolveProxies="true"
+	 * @generated
+	 */
+	IColor getM_color();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIState#getM_color <em>Mcolor</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Mcolor</em>' containment reference.
+	 * @see #getM_color()
+	 * @generated
+	 */
+	void setM_color(IColor value);
+
+	/**
+	 * Returns the value of the '<em><b>Mline Width</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Mline Width</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Mline Width</em>' attribute.
+	 * @see #setM_lineWidth(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIState_M_lineWidth()
+	 * @model
+	 * @generated
+	 */
+	String getM_lineWidth();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIState#getM_lineWidth <em>Mline Width</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Mline Width</em>' attribute.
+	 * @see #getM_lineWidth()
+	 * @generated
+	 */
+	void setM_lineWidth(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Compartments</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Compartments</em>' containment reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Compartments</em>' containment reference.
+	 * @see #setCompartments(CompartmentsType)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIState_Compartments()
+	 * @model containment="true" resolveProxies="true"
+	 * @generated
+	 */
+	CompartmentsType getCompartments();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIState#getCompartments <em>Compartments</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Compartments</em>' containment reference.
+	 * @see #getCompartments()
+	 * @generated
+	 */
+	void setCompartments(CompartmentsType value);
+
+} // CGIState
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/CGIStateChart.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/CGIStateChart.java
new file mode 100755
index 0000000..d8a7e91
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/CGIStateChart.java
@@ -0,0 +1,185 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel;
+
+import org.eclipse.emf.common.util.EList;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>CGI State Chart</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * </p>
+ * <ul>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIStateChart#getM_pModelObject <em>MpModel Object</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIStateChart#getM_pRoot <em>MpRoot</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIStateChart#getMyState <em>My State</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIStateChart#getM_pInheritsFrom <em>MpInherits From</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIStateChart#getDiagramList <em>Diagram List</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIStateChart#getProperties <em>Properties</em>}</li>
+ * </ul>
+ *
+ * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIStateChart()
+ * @model
+ * @generated
+ */
+public interface CGIStateChart extends GraphicChartType {
+	/**
+	 * Returns the value of the '<em><b>MpModel Object</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>MpModel Object</em>' reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>MpModel Object</em>' reference.
+	 * @see #setM_pModelObject(NestedStateChartType)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIStateChart_M_pModelObject()
+	 * @model
+	 * @generated
+	 */
+	NestedStateChartType getM_pModelObject();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIStateChart#getM_pModelObject <em>MpModel Object</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>MpModel Object</em>' reference.
+	 * @see #getM_pModelObject()
+	 * @generated
+	 */
+	void setM_pModelObject(NestedStateChartType value);
+
+	/**
+	 * Returns the value of the '<em><b>MpRoot</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>MpRoot</em>' reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>MpRoot</em>' reference.
+	 * @see #setM_pRoot(CGIState)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIStateChart_M_pRoot()
+	 * @model
+	 * @generated
+	 */
+	CGIState getM_pRoot();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIStateChart#getM_pRoot <em>MpRoot</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>MpRoot</em>' reference.
+	 * @see #getM_pRoot()
+	 * @generated
+	 */
+	void setM_pRoot(CGIState value);
+
+	/**
+	 * Returns the value of the '<em><b>My State</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>My State</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>My State</em>' attribute.
+	 * @see #setMyState(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIStateChart_MyState()
+	 * @model
+	 * @generated
+	 */
+	String getMyState();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIStateChart#getMyState <em>My State</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>My State</em>' attribute.
+	 * @see #getMyState()
+	 * @generated
+	 */
+	void setMyState(String value);
+
+	/**
+	 * Returns the value of the '<em><b>MpInherits From</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>MpInherits From</em>' reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>MpInherits From</em>' reference.
+	 * @see #setM_pInheritsFrom(GraphicChartType)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIStateChart_M_pInheritsFrom()
+	 * @model
+	 * @generated
+	 */
+	GraphicChartType getM_pInheritsFrom();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIStateChart#getM_pInheritsFrom <em>MpInherits From</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>MpInherits From</em>' reference.
+	 * @see #getM_pInheritsFrom()
+	 * @generated
+	 */
+	void setM_pInheritsFrom(GraphicChartType value);
+
+	/**
+	 * Returns the value of the '<em><b>Diagram List</b></em>' reference list.
+	 * The list contents are of type {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UnknownType}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Diagram List</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>Diagram List</em>' reference list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIStateChart_DiagramList()
+	 * @model
+	 * @generated
+	 */
+	EList<UnknownType> getDiagramList();
+
+	/**
+	 * Returns the value of the '<em><b>Properties</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Properties</em>' containment reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Properties</em>' containment reference.
+	 * @see #setProperties(IPropertyContainer)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIStateChart_Properties()
+	 * @model containment="true" resolveProxies="true"
+	 * @generated
+	 */
+	IPropertyContainer getProperties();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIStateChart#getProperties <em>Properties</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Properties</em>' containment reference.
+	 * @see #getProperties()
+	 * @generated
+	 */
+	void setProperties(IPropertyContainer value);
+
+} // CGIStateChart
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/CGISwimlaneFrame.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/CGISwimlaneFrame.java
new file mode 100755
index 0000000..c05740e
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/CGISwimlaneFrame.java
@@ -0,0 +1,246 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel;
+
+import org.eclipse.emf.common.util.EList;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>CGI Swimlane Frame</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * </p>
+ * <ul>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGISwimlaneFrame#getM_pModelObject <em>MpModel Object</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGISwimlaneFrame#getM_pParent <em>MpParent</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGISwimlaneFrame#getM_polygon <em>Mpolygon</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGISwimlaneFrame#getM_nNameFormat <em>MnName Format</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGISwimlaneFrame#getM_nIsNameFormat <em>MnIs Name Format</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGISwimlaneFrame#getFrameset <em>Frameset</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGISwimlaneFrame#getM_transform <em>Mtransform</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGISwimlaneFrame#getM_bFramesetModified <em>MbFrameset Modified</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGISwimlaneFrame#getCompartments <em>Compartments</em>}</li>
+ * </ul>
+ *
+ * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGISwimlaneFrame()
+ * @model
+ * @generated
+ */
+public interface CGISwimlaneFrame extends GraphElementsType {
+	/**
+	 * Returns the value of the '<em><b>MpModel Object</b></em>' reference list.
+	 * The list contents are of type {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UnknownType}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>MpModel Object</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>MpModel Object</em>' reference list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGISwimlaneFrame_M_pModelObject()
+	 * @model
+	 * @generated
+	 */
+	EList<UnknownType> getM_pModelObject();
+
+	/**
+	 * Returns the value of the '<em><b>MpParent</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>MpParent</em>' reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>MpParent</em>' reference.
+	 * @see #setM_pParent(GraphElementsType)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGISwimlaneFrame_M_pParent()
+	 * @model
+	 * @generated
+	 */
+	GraphElementsType getM_pParent();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGISwimlaneFrame#getM_pParent <em>MpParent</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>MpParent</em>' reference.
+	 * @see #getM_pParent()
+	 * @generated
+	 */
+	void setM_pParent(GraphElementsType value);
+
+	/**
+	 * Returns the value of the '<em><b>Mpolygon</b></em>' attribute list.
+	 * The list contents are of type {@link java.lang.String}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Mpolygon</em>' attribute list isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Mpolygon</em>' attribute list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGISwimlaneFrame_M_polygon()
+	 * @model unique="false"
+	 * @generated
+	 */
+	EList<String> getM_polygon();
+
+	/**
+	 * Returns the value of the '<em><b>MnName Format</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>MnName Format</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>MnName Format</em>' attribute.
+	 * @see #setM_nNameFormat(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGISwimlaneFrame_M_nNameFormat()
+	 * @model
+	 * @generated
+	 */
+	String getM_nNameFormat();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGISwimlaneFrame#getM_nNameFormat <em>MnName Format</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>MnName Format</em>' attribute.
+	 * @see #getM_nNameFormat()
+	 * @generated
+	 */
+	void setM_nNameFormat(String value);
+
+	/**
+	 * Returns the value of the '<em><b>MnIs Name Format</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>MnIs Name Format</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>MnIs Name Format</em>' attribute.
+	 * @see #setM_nIsNameFormat(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGISwimlaneFrame_M_nIsNameFormat()
+	 * @model
+	 * @generated
+	 */
+	String getM_nIsNameFormat();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGISwimlaneFrame#getM_nIsNameFormat <em>MnIs Name Format</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>MnIs Name Format</em>' attribute.
+	 * @see #getM_nIsNameFormat()
+	 * @generated
+	 */
+	void setM_nIsNameFormat(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Frameset</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Frameset</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Frameset</em>' attribute.
+	 * @see #setFrameset(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGISwimlaneFrame_Frameset()
+	 * @model
+	 * @generated
+	 */
+	String getFrameset();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGISwimlaneFrame#getFrameset <em>Frameset</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Frameset</em>' attribute.
+	 * @see #getFrameset()
+	 * @generated
+	 */
+	void setFrameset(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Mtransform</b></em>' attribute list.
+	 * The list contents are of type {@link java.lang.String}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Mtransform</em>' attribute list isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Mtransform</em>' attribute list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGISwimlaneFrame_M_transform()
+	 * @model unique="false"
+	 * @generated
+	 */
+	EList<String> getM_transform();
+
+	/**
+	 * Returns the value of the '<em><b>MbFrameset Modified</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>MbFrameset Modified</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>MbFrameset Modified</em>' attribute.
+	 * @see #setM_bFramesetModified(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGISwimlaneFrame_M_bFramesetModified()
+	 * @model
+	 * @generated
+	 */
+	String getM_bFramesetModified();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGISwimlaneFrame#getM_bFramesetModified <em>MbFrameset Modified</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>MbFrameset Modified</em>' attribute.
+	 * @see #getM_bFramesetModified()
+	 * @generated
+	 */
+	void setM_bFramesetModified(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Compartments</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Compartments</em>' containment reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Compartments</em>' containment reference.
+	 * @see #setCompartments(CompartmentsType)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGISwimlaneFrame_Compartments()
+	 * @model containment="true" resolveProxies="true"
+	 * @generated
+	 */
+	CompartmentsType getCompartments();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGISwimlaneFrame#getCompartments <em>Compartments</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Compartments</em>' containment reference.
+	 * @see #getCompartments()
+	 * @generated
+	 */
+	void setCompartments(CompartmentsType value);
+
+} // CGISwimlaneFrame
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/CGIText.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/CGIText.java
new file mode 100755
index 0000000..81e1e73
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/CGIText.java
@@ -0,0 +1,275 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel;
+
+import org.eclipse.emf.common.util.EList;
+
+import org.eclipse.emf.ecore.EObject;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>CGI Text</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * </p>
+ * <ul>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIText#getM_str <em>Mstr</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIText#getM_style <em>Mstyle</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIText#getM_color <em>Mcolor</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIText#getM_position <em>Mposition</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIText#getM_nIdent <em>MnIdent</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIText#getM_bImplicitSetRectPoints <em>MbImplicit Set Rect Points</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIText#getM_nOrientationCtrlPt <em>MnOrientation Ctrl Pt</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIText#getM_nVerticalSpacing <em>MnVertical Spacing</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIText#getM_nHorizontalSpacing <em>MnHorizontal Spacing</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIText#getM_transform <em>Mtransform</em>}</li>
+ * </ul>
+ *
+ * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIText()
+ * @model
+ * @generated
+ */
+public interface CGIText extends EObject {
+	/**
+	 * Returns the value of the '<em><b>Mstr</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Mstr</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Mstr</em>' attribute.
+	 * @see #setM_str(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIText_M_str()
+	 * @model
+	 * @generated
+	 */
+	String getM_str();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIText#getM_str <em>Mstr</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Mstr</em>' attribute.
+	 * @see #getM_str()
+	 * @generated
+	 */
+	void setM_str(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Mstyle</b></em>' attribute list.
+	 * The list contents are of type {@link java.lang.String}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Mstyle</em>' attribute list isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Mstyle</em>' attribute list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIText_M_style()
+	 * @model unique="false"
+	 * @generated
+	 */
+	EList<String> getM_style();
+
+	/**
+	 * Returns the value of the '<em><b>Mcolor</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Mcolor</em>' containment reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Mcolor</em>' containment reference.
+	 * @see #setM_color(IColor)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIText_M_color()
+	 * @model containment="true" resolveProxies="true"
+	 * @generated
+	 */
+	IColor getM_color();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIText#getM_color <em>Mcolor</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Mcolor</em>' containment reference.
+	 * @see #getM_color()
+	 * @generated
+	 */
+	void setM_color(IColor value);
+
+	/**
+	 * Returns the value of the '<em><b>Mposition</b></em>' attribute list.
+	 * The list contents are of type {@link java.lang.String}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Mposition</em>' attribute list isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Mposition</em>' attribute list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIText_M_position()
+	 * @model unique="false"
+	 * @generated
+	 */
+	EList<String> getM_position();
+
+	/**
+	 * Returns the value of the '<em><b>MnIdent</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>MnIdent</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>MnIdent</em>' attribute.
+	 * @see #setM_nIdent(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIText_M_nIdent()
+	 * @model
+	 * @generated
+	 */
+	String getM_nIdent();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIText#getM_nIdent <em>MnIdent</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>MnIdent</em>' attribute.
+	 * @see #getM_nIdent()
+	 * @generated
+	 */
+	void setM_nIdent(String value);
+
+	/**
+	 * Returns the value of the '<em><b>MbImplicit Set Rect Points</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>MbImplicit Set Rect Points</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>MbImplicit Set Rect Points</em>' attribute.
+	 * @see #setM_bImplicitSetRectPoints(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIText_M_bImplicitSetRectPoints()
+	 * @model
+	 * @generated
+	 */
+	String getM_bImplicitSetRectPoints();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIText#getM_bImplicitSetRectPoints <em>MbImplicit Set Rect Points</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>MbImplicit Set Rect Points</em>' attribute.
+	 * @see #getM_bImplicitSetRectPoints()
+	 * @generated
+	 */
+	void setM_bImplicitSetRectPoints(String value);
+
+	/**
+	 * Returns the value of the '<em><b>MnOrientation Ctrl Pt</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>MnOrientation Ctrl Pt</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>MnOrientation Ctrl Pt</em>' attribute.
+	 * @see #setM_nOrientationCtrlPt(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIText_M_nOrientationCtrlPt()
+	 * @model
+	 * @generated
+	 */
+	String getM_nOrientationCtrlPt();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIText#getM_nOrientationCtrlPt <em>MnOrientation Ctrl Pt</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>MnOrientation Ctrl Pt</em>' attribute.
+	 * @see #getM_nOrientationCtrlPt()
+	 * @generated
+	 */
+	void setM_nOrientationCtrlPt(String value);
+
+	/**
+	 * Returns the value of the '<em><b>MnVertical Spacing</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>MnVertical Spacing</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>MnVertical Spacing</em>' attribute.
+	 * @see #setM_nVerticalSpacing(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIText_M_nVerticalSpacing()
+	 * @model
+	 * @generated
+	 */
+	String getM_nVerticalSpacing();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIText#getM_nVerticalSpacing <em>MnVertical Spacing</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>MnVertical Spacing</em>' attribute.
+	 * @see #getM_nVerticalSpacing()
+	 * @generated
+	 */
+	void setM_nVerticalSpacing(String value);
+
+	/**
+	 * Returns the value of the '<em><b>MnHorizontal Spacing</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>MnHorizontal Spacing</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>MnHorizontal Spacing</em>' attribute.
+	 * @see #setM_nHorizontalSpacing(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIText_M_nHorizontalSpacing()
+	 * @model
+	 * @generated
+	 */
+	String getM_nHorizontalSpacing();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIText#getM_nHorizontalSpacing <em>MnHorizontal Spacing</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>MnHorizontal Spacing</em>' attribute.
+	 * @see #getM_nHorizontalSpacing()
+	 * @generated
+	 */
+	void setM_nHorizontalSpacing(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Mtransform</b></em>' attribute list.
+	 * The list contents are of type {@link java.lang.String}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Mtransform</em>' attribute list isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Mtransform</em>' attribute list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGIText_M_transform()
+	 * @model unique="false"
+	 * @generated
+	 */
+	EList<String> getM_transform();
+
+} // CGIText
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/CGITextBox.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/CGITextBox.java
new file mode 100755
index 0000000..69edda3
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/CGITextBox.java
@@ -0,0 +1,290 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel;
+
+import org.eclipse.emf.common.util.EList;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>CGI Text Box</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * </p>
+ * <ul>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGITextBox#getProperties <em>Properties</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGITextBox#getM_pModelObject <em>MpModel Object</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGITextBox#getM_pParent <em>MpParent</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGITextBox#getM_transform <em>Mtransform</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGITextBox#getM_polygon <em>Mpolygon</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGITextBox#getM_nNameFormat <em>MnName Format</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGITextBox#getM_nIsNameFormat <em>MnIs Name Format</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGITextBox#getCompartments <em>Compartments</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGITextBox#getM_csModelObjPath <em>Mcs Model Obj Path</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGITextBox#getM_csName <em>Mcs Name</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGITextBox#getM_PartsArray <em>MParts Array</em>}</li>
+ * </ul>
+ *
+ * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGITextBox()
+ * @model
+ * @generated
+ */
+public interface CGITextBox extends GraphElementsType {
+	/**
+	 * Returns the value of the '<em><b>Properties</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Properties</em>' containment reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Properties</em>' containment reference.
+	 * @see #setProperties(IPropertyContainer)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGITextBox_Properties()
+	 * @model containment="true" resolveProxies="true"
+	 * @generated
+	 */
+	IPropertyContainer getProperties();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGITextBox#getProperties <em>Properties</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Properties</em>' containment reference.
+	 * @see #getProperties()
+	 * @generated
+	 */
+	void setProperties(IPropertyContainer value);
+
+	/**
+	 * Returns the value of the '<em><b>MpModel Object</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>MpModel Object</em>' reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>MpModel Object</em>' reference.
+	 * @see #setM_pModelObject(IAttribute)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGITextBox_M_pModelObject()
+	 * @model
+	 * @generated
+	 */
+	IAttribute getM_pModelObject();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGITextBox#getM_pModelObject <em>MpModel Object</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>MpModel Object</em>' reference.
+	 * @see #getM_pModelObject()
+	 * @generated
+	 */
+	void setM_pModelObject(IAttribute value);
+
+	/**
+	 * Returns the value of the '<em><b>MpParent</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>MpParent</em>' reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>MpParent</em>' reference.
+	 * @see #setM_pParent(GraphElementsType)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGITextBox_M_pParent()
+	 * @model
+	 * @generated
+	 */
+	GraphElementsType getM_pParent();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGITextBox#getM_pParent <em>MpParent</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>MpParent</em>' reference.
+	 * @see #getM_pParent()
+	 * @generated
+	 */
+	void setM_pParent(GraphElementsType value);
+
+	/**
+	 * Returns the value of the '<em><b>Mtransform</b></em>' attribute list.
+	 * The list contents are of type {@link java.lang.String}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Mtransform</em>' attribute list isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Mtransform</em>' attribute list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGITextBox_M_transform()
+	 * @model unique="false"
+	 * @generated
+	 */
+	EList<String> getM_transform();
+
+	/**
+	 * Returns the value of the '<em><b>Mpolygon</b></em>' attribute list.
+	 * The list contents are of type {@link java.lang.String}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Mpolygon</em>' attribute list isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Mpolygon</em>' attribute list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGITextBox_M_polygon()
+	 * @model unique="false"
+	 * @generated
+	 */
+	EList<String> getM_polygon();
+
+	/**
+	 * Returns the value of the '<em><b>MnName Format</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>MnName Format</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>MnName Format</em>' attribute.
+	 * @see #setM_nNameFormat(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGITextBox_M_nNameFormat()
+	 * @model
+	 * @generated
+	 */
+	String getM_nNameFormat();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGITextBox#getM_nNameFormat <em>MnName Format</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>MnName Format</em>' attribute.
+	 * @see #getM_nNameFormat()
+	 * @generated
+	 */
+	void setM_nNameFormat(String value);
+
+	/**
+	 * Returns the value of the '<em><b>MnIs Name Format</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>MnIs Name Format</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>MnIs Name Format</em>' attribute.
+	 * @see #setM_nIsNameFormat(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGITextBox_M_nIsNameFormat()
+	 * @model
+	 * @generated
+	 */
+	String getM_nIsNameFormat();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGITextBox#getM_nIsNameFormat <em>MnIs Name Format</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>MnIs Name Format</em>' attribute.
+	 * @see #getM_nIsNameFormat()
+	 * @generated
+	 */
+	void setM_nIsNameFormat(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Compartments</b></em>' reference list.
+	 * The list contents are of type {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UnknownType}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Compartments</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>Compartments</em>' reference list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGITextBox_Compartments()
+	 * @model
+	 * @generated
+	 */
+	EList<UnknownType> getCompartments();
+
+	/**
+	 * Returns the value of the '<em><b>Mcs Model Obj Path</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Mcs Model Obj Path</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Mcs Model Obj Path</em>' attribute.
+	 * @see #setM_csModelObjPath(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGITextBox_M_csModelObjPath()
+	 * @model
+	 * @generated
+	 */
+	String getM_csModelObjPath();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGITextBox#getM_csModelObjPath <em>Mcs Model Obj Path</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Mcs Model Obj Path</em>' attribute.
+	 * @see #getM_csModelObjPath()
+	 * @generated
+	 */
+	void setM_csModelObjPath(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Mcs Name</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Mcs Name</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Mcs Name</em>' attribute.
+	 * @see #setM_csName(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGITextBox_M_csName()
+	 * @model
+	 * @generated
+	 */
+	String getM_csName();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGITextBox#getM_csName <em>Mcs Name</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Mcs Name</em>' attribute.
+	 * @see #getM_csName()
+	 * @generated
+	 */
+	void setM_csName(String value);
+
+	/**
+	 * Returns the value of the '<em><b>MParts Array</b></em>' reference list.
+	 * The list contents are of type {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.DependsOnType}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>MParts Array</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>MParts Array</em>' reference list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGITextBox_M_PartsArray()
+	 * @model
+	 * @generated
+	 */
+	EList<DependsOnType> getM_PartsArray();
+
+} // CGITextBox
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/CGITrans.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/CGITrans.java
new file mode 100755
index 0000000..dd3f269
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/CGITrans.java
@@ -0,0 +1,550 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel;
+
+import org.eclipse.emf.common.util.EList;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>CGI Trans</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * </p>
+ * <ul>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGITrans#getProperties <em>Properties</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGITrans#getM_pModelObject <em>MpModel Object</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGITrans#getM_pParent <em>MpParent</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGITrans#getM_pSource <em>MpSource</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGITrans#getM_sourceType <em>Msource Type</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGITrans#getM_pTarget <em>MpTarget</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGITrans#getM_targetType <em>Mtarget Type</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGITrans#getM_direction <em>Mdirection</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGITrans#getM_rpn <em>Mrpn</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGITrans#getM_anglePoint1 <em>Mangle Point1</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGITrans#getM_anglePoint2 <em>Mangle Point2</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGITrans#getM_line_style <em>Mline style</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGITrans#getM_SourcePort <em>MSource Port</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGITrans#getM_TargetPort <em>MTarget Port</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGITrans#getM_nInheritanceMask <em>MnInheritance Mask</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGITrans#getM_bShowName <em>MbShow Name</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGITrans#getM_arrow <em>Marrow</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGITrans#getMyState <em>My State</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGITrans#getM_pInheritsFrom <em>MpInherits From</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGITrans#getM_color <em>Mcolor</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGITrans#getM_lineWidth <em>Mline Width</em>}</li>
+ * </ul>
+ *
+ * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGITrans()
+ * @model
+ * @generated
+ */
+public interface CGITrans extends GraphElementsType {
+	/**
+	 * Returns the value of the '<em><b>Properties</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Properties</em>' containment reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Properties</em>' containment reference.
+	 * @see #setProperties(IPropertyContainer)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGITrans_Properties()
+	 * @model containment="true" resolveProxies="true"
+	 * @generated
+	 */
+	IPropertyContainer getProperties();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGITrans#getProperties <em>Properties</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Properties</em>' containment reference.
+	 * @see #getProperties()
+	 * @generated
+	 */
+	void setProperties(IPropertyContainer value);
+
+	/**
+	 * Returns the value of the '<em><b>MpModel Object</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>MpModel Object</em>' reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>MpModel Object</em>' reference.
+	 * @see #setM_pModelObject(TransitionsType)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGITrans_M_pModelObject()
+	 * @model
+	 * @generated
+	 */
+	TransitionsType getM_pModelObject();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGITrans#getM_pModelObject <em>MpModel Object</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>MpModel Object</em>' reference.
+	 * @see #getM_pModelObject()
+	 * @generated
+	 */
+	void setM_pModelObject(TransitionsType value);
+
+	/**
+	 * Returns the value of the '<em><b>MpParent</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>MpParent</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>MpParent</em>' attribute.
+	 * @see #setM_pParent(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGITrans_M_pParent()
+	 * @model
+	 * @generated
+	 */
+	String getM_pParent();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGITrans#getM_pParent <em>MpParent</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>MpParent</em>' attribute.
+	 * @see #getM_pParent()
+	 * @generated
+	 */
+	void setM_pParent(String value);
+
+	/**
+	 * Returns the value of the '<em><b>MpSource</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>MpSource</em>' reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>MpSource</em>' reference.
+	 * @see #setM_pSource(GraphElementsType)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGITrans_M_pSource()
+	 * @model
+	 * @generated
+	 */
+	GraphElementsType getM_pSource();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGITrans#getM_pSource <em>MpSource</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>MpSource</em>' reference.
+	 * @see #getM_pSource()
+	 * @generated
+	 */
+	void setM_pSource(GraphElementsType value);
+
+	/**
+	 * Returns the value of the '<em><b>Msource Type</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Msource 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>Msource Type</em>' attribute.
+	 * @see #setM_sourceType(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGITrans_M_sourceType()
+	 * @model
+	 * @generated
+	 */
+	String getM_sourceType();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGITrans#getM_sourceType <em>Msource Type</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Msource Type</em>' attribute.
+	 * @see #getM_sourceType()
+	 * @generated
+	 */
+	void setM_sourceType(String value);
+
+	/**
+	 * Returns the value of the '<em><b>MpTarget</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>MpTarget</em>' reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>MpTarget</em>' reference.
+	 * @see #setM_pTarget(GraphElementsType)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGITrans_M_pTarget()
+	 * @model
+	 * @generated
+	 */
+	GraphElementsType getM_pTarget();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGITrans#getM_pTarget <em>MpTarget</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>MpTarget</em>' reference.
+	 * @see #getM_pTarget()
+	 * @generated
+	 */
+	void setM_pTarget(GraphElementsType value);
+
+	/**
+	 * Returns the value of the '<em><b>Mtarget Type</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Mtarget 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>Mtarget Type</em>' attribute.
+	 * @see #setM_targetType(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGITrans_M_targetType()
+	 * @model
+	 * @generated
+	 */
+	String getM_targetType();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGITrans#getM_targetType <em>Mtarget Type</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Mtarget Type</em>' attribute.
+	 * @see #getM_targetType()
+	 * @generated
+	 */
+	void setM_targetType(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Mdirection</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Mdirection</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Mdirection</em>' attribute.
+	 * @see #setM_direction(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGITrans_M_direction()
+	 * @model
+	 * @generated
+	 */
+	String getM_direction();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGITrans#getM_direction <em>Mdirection</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Mdirection</em>' attribute.
+	 * @see #getM_direction()
+	 * @generated
+	 */
+	void setM_direction(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Mrpn</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Mrpn</em>' containment reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Mrpn</em>' containment reference.
+	 * @see #setM_rpn(CGIText)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGITrans_M_rpn()
+	 * @model containment="true" resolveProxies="true"
+	 * @generated
+	 */
+	CGIText getM_rpn();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGITrans#getM_rpn <em>Mrpn</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Mrpn</em>' containment reference.
+	 * @see #getM_rpn()
+	 * @generated
+	 */
+	void setM_rpn(CGIText value);
+
+	/**
+	 * Returns the value of the '<em><b>Mangle Point1</b></em>' attribute list.
+	 * The list contents are of type {@link java.lang.String}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Mangle Point1</em>' attribute list isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Mangle Point1</em>' attribute list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGITrans_M_anglePoint1()
+	 * @model unique="false"
+	 * @generated
+	 */
+	EList<String> getM_anglePoint1();
+
+	/**
+	 * Returns the value of the '<em><b>Mangle Point2</b></em>' attribute list.
+	 * The list contents are of type {@link java.lang.String}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Mangle Point2</em>' attribute list isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Mangle Point2</em>' attribute list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGITrans_M_anglePoint2()
+	 * @model unique="false"
+	 * @generated
+	 */
+	EList<String> getM_anglePoint2();
+
+	/**
+	 * Returns the value of the '<em><b>Mline style</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Mline style</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Mline style</em>' attribute.
+	 * @see #setM_line_style(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGITrans_M_line_style()
+	 * @model
+	 * @generated
+	 */
+	String getM_line_style();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGITrans#getM_line_style <em>Mline style</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Mline style</em>' attribute.
+	 * @see #getM_line_style()
+	 * @generated
+	 */
+	void setM_line_style(String value);
+
+	/**
+	 * Returns the value of the '<em><b>MSource Port</b></em>' attribute list.
+	 * The list contents are of type {@link java.lang.String}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>MSource Port</em>' attribute list isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>MSource Port</em>' attribute list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGITrans_M_SourcePort()
+	 * @model unique="false"
+	 * @generated
+	 */
+	EList<String> getM_SourcePort();
+
+	/**
+	 * Returns the value of the '<em><b>MTarget Port</b></em>' attribute list.
+	 * The list contents are of type {@link java.lang.String}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>MTarget Port</em>' attribute list isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>MTarget Port</em>' attribute list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGITrans_M_TargetPort()
+	 * @model unique="false"
+	 * @generated
+	 */
+	EList<String> getM_TargetPort();
+
+	/**
+	 * Returns the value of the '<em><b>MnInheritance Mask</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>MnInheritance Mask</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>MnInheritance Mask</em>' attribute.
+	 * @see #setM_nInheritanceMask(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGITrans_M_nInheritanceMask()
+	 * @model
+	 * @generated
+	 */
+	String getM_nInheritanceMask();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGITrans#getM_nInheritanceMask <em>MnInheritance Mask</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>MnInheritance Mask</em>' attribute.
+	 * @see #getM_nInheritanceMask()
+	 * @generated
+	 */
+	void setM_nInheritanceMask(String value);
+
+	/**
+	 * Returns the value of the '<em><b>MbShow Name</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>MbShow Name</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>MbShow Name</em>' attribute.
+	 * @see #setM_bShowName(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGITrans_M_bShowName()
+	 * @model
+	 * @generated
+	 */
+	String getM_bShowName();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGITrans#getM_bShowName <em>MbShow Name</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>MbShow Name</em>' attribute.
+	 * @see #getM_bShowName()
+	 * @generated
+	 */
+	void setM_bShowName(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Marrow</b></em>' attribute list.
+	 * The list contents are of type {@link java.lang.String}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Marrow</em>' attribute list isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Marrow</em>' attribute list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGITrans_M_arrow()
+	 * @model unique="false"
+	 * @generated
+	 */
+	EList<String> getM_arrow();
+
+	/**
+	 * Returns the value of the '<em><b>My State</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>My State</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>My State</em>' attribute.
+	 * @see #setMyState(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGITrans_MyState()
+	 * @model
+	 * @generated
+	 */
+	String getMyState();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGITrans#getMyState <em>My State</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>My State</em>' attribute.
+	 * @see #getMyState()
+	 * @generated
+	 */
+	void setMyState(String value);
+
+	/**
+	 * Returns the value of the '<em><b>MpInherits From</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>MpInherits From</em>' reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>MpInherits From</em>' reference.
+	 * @see #setM_pInheritsFrom(GraphElementsType)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGITrans_M_pInheritsFrom()
+	 * @model
+	 * @generated
+	 */
+	GraphElementsType getM_pInheritsFrom();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGITrans#getM_pInheritsFrom <em>MpInherits From</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>MpInherits From</em>' reference.
+	 * @see #getM_pInheritsFrom()
+	 * @generated
+	 */
+	void setM_pInheritsFrom(GraphElementsType value);
+
+	/**
+	 * Returns the value of the '<em><b>Mcolor</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Mcolor</em>' containment reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Mcolor</em>' containment reference.
+	 * @see #setM_color(IColor)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGITrans_M_color()
+	 * @model containment="true" resolveProxies="true"
+	 * @generated
+	 */
+	IColor getM_color();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGITrans#getM_color <em>Mcolor</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Mcolor</em>' containment reference.
+	 * @see #getM_color()
+	 * @generated
+	 */
+	void setM_color(IColor value);
+
+	/**
+	 * Returns the value of the '<em><b>Mline Width</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Mline Width</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Mline Width</em>' attribute.
+	 * @see #setM_lineWidth(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCGITrans_M_lineWidth()
+	 * @model
+	 * @generated
+	 */
+	String getM_lineWidth();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGITrans#getM_lineWidth <em>Mline Width</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Mline Width</em>' attribute.
+	 * @see #getM_lineWidth()
+	 * @generated
+	 */
+	void setM_lineWidth(String value);
+
+} // CGITrans
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/CollEvent.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/CollEvent.java
new file mode 100755
index 0000000..4be4f29
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/CollEvent.java
@@ -0,0 +1,167 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel;
+
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Coll Event</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * </p>
+ * <ul>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CollEvent#getId <em>Id</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CollEvent#getFirst <em>First</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CollEvent#getSecond <em>Second</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CollEvent#getObjectCreation <em>Object Creation</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CollEvent#getUmlDependencyID <em>Uml Dependency ID</em>}</li>
+ * </ul>
+ *
+ * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCollEvent()
+ * @model
+ * @generated
+ */
+public interface CollEvent extends P_MessageHandlerType {
+	/**
+	 * Returns the value of the '<em><b>Id</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Id</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Id</em>' attribute.
+	 * @see #setId(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCollEvent_Id()
+	 * @model
+	 * @generated
+	 */
+	String getId();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CollEvent#getId <em>Id</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Id</em>' attribute.
+	 * @see #getId()
+	 * @generated
+	 */
+	void setId(String value);
+
+	/**
+	 * Returns the value of the '<em><b>First</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>First</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>First</em>' attribute.
+	 * @see #setFirst(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCollEvent_First()
+	 * @model
+	 * @generated
+	 */
+	String getFirst();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CollEvent#getFirst <em>First</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>First</em>' attribute.
+	 * @see #getFirst()
+	 * @generated
+	 */
+	void setFirst(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Second</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Second</em>' reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Second</em>' reference.
+	 * @see #setSecond(IMessage)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCollEvent_Second()
+	 * @model
+	 * @generated
+	 */
+	IMessage getSecond();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CollEvent#getSecond <em>Second</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Second</em>' reference.
+	 * @see #getSecond()
+	 * @generated
+	 */
+	void setSecond(IMessage value);
+
+	/**
+	 * Returns the value of the '<em><b>Object Creation</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Object Creation</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Object Creation</em>' attribute.
+	 * @see #setObjectCreation(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCollEvent_ObjectCreation()
+	 * @model
+	 * @generated
+	 */
+	String getObjectCreation();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CollEvent#getObjectCreation <em>Object Creation</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Object Creation</em>' attribute.
+	 * @see #getObjectCreation()
+	 * @generated
+	 */
+	void setObjectCreation(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Uml Dependency ID</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Uml Dependency ID</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Uml Dependency ID</em>' attribute.
+	 * @see #setUmlDependencyID(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCollEvent_UmlDependencyID()
+	 * @model
+	 * @generated
+	 */
+	String getUmlDependencyID();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CollEvent#getUmlDependencyID <em>Uml Dependency ID</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Uml Dependency ID</em>' attribute.
+	 * @see #getUmlDependencyID()
+	 * @generated
+	 */
+	void setUmlDependencyID(String value);
+
+} // CollEvent
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/CompartmentsType.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/CompartmentsType.java
new file mode 100755
index 0000000..45eb99c
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/CompartmentsType.java
@@ -0,0 +1,28 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel;
+
+import org.eclipse.emf.ecore.EObject;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Compartments Type</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ *
+ * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getCompartmentsType()
+ * @model abstract="true"
+ * @generated
+ */
+public interface CompartmentsType extends EObject {
+} // CompartmentsType
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/ComponentsType.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/ComponentsType.java
new file mode 100755
index 0000000..d5cb2da
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/ComponentsType.java
@@ -0,0 +1,28 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel;
+
+import org.eclipse.emf.ecore.EObject;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Components Type</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ *
+ * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getComponentsType()
+ * @model abstract="true"
+ * @generated
+ */
+public interface ComponentsType extends EObject {
+} // ComponentsType
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/ConveyedType.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/ConveyedType.java
new file mode 100755
index 0000000..d1a2991
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/ConveyedType.java
@@ -0,0 +1,60 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel;
+
+import org.eclipse.emf.ecore.EObject;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Conveyed Type</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * </p>
+ * <ul>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ConveyedType#getLastID <em>Last ID</em>}</li>
+ * </ul>
+ *
+ * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getConveyedType()
+ * @model abstract="true"
+ * @generated
+ */
+public interface ConveyedType extends EObject {
+	/**
+	 * Returns the value of the '<em><b>Last ID</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Last ID</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Last ID</em>' attribute.
+	 * @see #setLastID(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getConveyedType_LastID()
+	 * @model
+	 * @generated
+	 */
+	String getLastID();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ConveyedType#getLastID <em>Last ID</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Last ID</em>' attribute.
+	 * @see #getLastID()
+	 * @generated
+	 */
+	void setLastID(String value);
+
+} // ConveyedType
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/DeclarativesType.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/DeclarativesType.java
new file mode 100755
index 0000000..1f849c4
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/DeclarativesType.java
@@ -0,0 +1,28 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel;
+
+import org.eclipse.emf.ecore.EObject;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Declaratives Type</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ *
+ * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getDeclarativesType()
+ * @model abstract="true"
+ * @generated
+ */
+public interface DeclarativesType extends EObject {
+} // DeclarativesType
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/DefaultSubsystemType.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/DefaultSubsystemType.java
new file mode 100755
index 0000000..de68dbe
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/DefaultSubsystemType.java
@@ -0,0 +1,27 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel;
+
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Default Subsystem Type</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ *
+ * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getDefaultSubsystemType()
+ * @model abstract="true"
+ * @generated
+ */
+public interface DefaultSubsystemType extends IModelElement {
+} // DefaultSubsystemType
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/DefaultTransType.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/DefaultTransType.java
new file mode 100755
index 0000000..e9558e9
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/DefaultTransType.java
@@ -0,0 +1,28 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel;
+
+import org.eclipse.emf.ecore.EObject;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Default Trans Type</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ *
+ * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getDefaultTransType()
+ * @model abstract="true"
+ * @generated
+ */
+public interface DefaultTransType extends EObject {
+} // DefaultTransType
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/DependsOnType.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/DependsOnType.java
new file mode 100755
index 0000000..5743e53
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/DependsOnType.java
@@ -0,0 +1,27 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel;
+
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Depends On Type</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ *
+ * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getDependsOnType()
+ * @model abstract="true"
+ * @generated
+ */
+public interface DependsOnType extends ElementsType {
+} // DependsOnType
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/DescriptionType.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/DescriptionType.java
new file mode 100755
index 0000000..0e381ff
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/DescriptionType.java
@@ -0,0 +1,28 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel;
+
+import org.eclipse.emf.ecore.EObject;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Description Type</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ *
+ * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getDescriptionType()
+ * @model abstract="true"
+ * @generated
+ */
+public interface DescriptionType extends EObject {
+} // DescriptionType
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/ElementsType.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/ElementsType.java
new file mode 100755
index 0000000..677c2b6
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/ElementsType.java
@@ -0,0 +1,28 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel;
+
+import org.eclipse.emf.ecore.EObject;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Elements Type</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ *
+ * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getElementsType()
+ * @model abstract="true"
+ * @generated
+ */
+public interface ElementsType extends EObject {
+} // ElementsType
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/EmbededFilesType.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/EmbededFilesType.java
new file mode 100755
index 0000000..01f40b6
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/EmbededFilesType.java
@@ -0,0 +1,28 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel;
+
+import org.eclipse.emf.ecore.EObject;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Embeded Files Type</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ *
+ * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getEmbededFilesType()
+ * @model abstract="true"
+ * @generated
+ */
+public interface EmbededFilesType extends EObject {
+} // EmbededFilesType
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/End1_Type.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/End1_Type.java
new file mode 100755
index 0000000..c58800b
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/End1_Type.java
@@ -0,0 +1,28 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel;
+
+import org.eclipse.emf.ecore.EObject;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>End1 Type</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ *
+ * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getEnd1_Type()
+ * @model abstract="true"
+ * @generated
+ */
+public interface End1_Type extends EObject {
+} // End1_Type
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/End2_Type.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/End2_Type.java
new file mode 100755
index 0000000..01ff679
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/End2_Type.java
@@ -0,0 +1,59 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel;
+
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>End2 Type</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * </p>
+ * <ul>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.End2_Type#getMultiplicity <em>Multiplicity</em>}</li>
+ * </ul>
+ *
+ * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getEnd2_Type()
+ * @model abstract="true"
+ * @generated
+ */
+public interface End2_Type extends End1_Type {
+	/**
+	 * Returns the value of the '<em><b>Multiplicity</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Multiplicity</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Multiplicity</em>' attribute.
+	 * @see #setMultiplicity(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getEnd2_Type_Multiplicity()
+	 * @model
+	 * @generated
+	 */
+	String getMultiplicity();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.End2_Type#getMultiplicity <em>Multiplicity</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Multiplicity</em>' attribute.
+	 * @see #getMultiplicity()
+	 * @generated
+	 */
+	void setMultiplicity(String value);
+
+} // End2_Type
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/FilesType.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/FilesType.java
new file mode 100755
index 0000000..83f4d6c
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/FilesType.java
@@ -0,0 +1,241 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel;
+
+import org.eclipse.emf.common.util.EList;
+
+import org.eclipse.emf.ecore.EObject;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Files Type</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * </p>
+ * <ul>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.FilesType#getModifiedTimeWeak <em>Modified Time Weak</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.FilesType#getId <em>Id</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.FilesType#getUmlDependencyID <em>Uml Dependency ID</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.FilesType#getLastID <em>Last ID</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.FilesType#getMyState <em>My State</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.FilesType#getM_path <em>Mpath</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.FilesType#getObjectCreation <em>Object Creation</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.FilesType#getName <em>Name</em>}</li>
+ * </ul>
+ *
+ * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getFilesType()
+ * @model abstract="true"
+ * @generated
+ */
+public interface FilesType extends EObject {
+	/**
+	 * Returns the value of the '<em><b>Modified Time Weak</b></em>' attribute list.
+	 * The list contents are of type {@link java.lang.String}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Modified Time Weak</em>' attribute list isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Modified Time Weak</em>' attribute list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getFilesType_ModifiedTimeWeak()
+	 * @model unique="false"
+	 * @generated
+	 */
+	EList<String> getModifiedTimeWeak();
+
+	/**
+	 * Returns the value of the '<em><b>Id</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Id</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Id</em>' attribute.
+	 * @see #setId(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getFilesType_Id()
+	 * @model
+	 * @generated
+	 */
+	String getId();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.FilesType#getId <em>Id</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Id</em>' attribute.
+	 * @see #getId()
+	 * @generated
+	 */
+	void setId(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Uml Dependency ID</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Uml Dependency ID</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Uml Dependency ID</em>' attribute.
+	 * @see #setUmlDependencyID(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getFilesType_UmlDependencyID()
+	 * @model
+	 * @generated
+	 */
+	String getUmlDependencyID();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.FilesType#getUmlDependencyID <em>Uml Dependency ID</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Uml Dependency ID</em>' attribute.
+	 * @see #getUmlDependencyID()
+	 * @generated
+	 */
+	void setUmlDependencyID(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Last ID</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Last ID</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Last ID</em>' attribute.
+	 * @see #setLastID(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getFilesType_LastID()
+	 * @model
+	 * @generated
+	 */
+	String getLastID();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.FilesType#getLastID <em>Last ID</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Last ID</em>' attribute.
+	 * @see #getLastID()
+	 * @generated
+	 */
+	void setLastID(String value);
+
+	/**
+	 * Returns the value of the '<em><b>My State</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>My State</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>My State</em>' attribute.
+	 * @see #setMyState(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getFilesType_MyState()
+	 * @model
+	 * @generated
+	 */
+	String getMyState();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.FilesType#getMyState <em>My State</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>My State</em>' attribute.
+	 * @see #getMyState()
+	 * @generated
+	 */
+	void setMyState(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Mpath</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Mpath</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Mpath</em>' attribute.
+	 * @see #setM_path(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getFilesType_M_path()
+	 * @model
+	 * @generated
+	 */
+	String getM_path();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.FilesType#getM_path <em>Mpath</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Mpath</em>' attribute.
+	 * @see #getM_path()
+	 * @generated
+	 */
+	void setM_path(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Object Creation</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Object Creation</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Object Creation</em>' attribute.
+	 * @see #setObjectCreation(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getFilesType_ObjectCreation()
+	 * @model
+	 * @generated
+	 */
+	String getObjectCreation();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.FilesType#getObjectCreation <em>Object Creation</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Object Creation</em>' attribute.
+	 * @see #getObjectCreation()
+	 * @generated
+	 */
+	void setObjectCreation(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Name</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Name</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Name</em>' attribute.
+	 * @see #setName(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getFilesType_Name()
+	 * @model
+	 * @generated
+	 */
+	String getName();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.FilesType#getName <em>Name</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Name</em>' attribute.
+	 * @see #getName()
+	 * @generated
+	 */
+	void setName(String value);
+
+} // FilesType
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/FromLinkType.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/FromLinkType.java
new file mode 100755
index 0000000..5cf5908
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/FromLinkType.java
@@ -0,0 +1,28 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel;
+
+import org.eclipse.emf.ecore.EObject;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>From Link Type</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ *
+ * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getFromLinkType()
+ * @model abstract="true"
+ * @generated
+ */
+public interface FromLinkType extends EObject {
+} // FromLinkType
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/GraphElementsType.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/GraphElementsType.java
new file mode 100755
index 0000000..48f0c44
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/GraphElementsType.java
@@ -0,0 +1,167 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel;
+
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Graph Elements Type</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * </p>
+ * <ul>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.GraphElementsType#getId <em>Id</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.GraphElementsType#getM_drawBehavior <em>Mdraw Behavior</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.GraphElementsType#getM_type <em>Mtype</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.GraphElementsType#getM_name <em>Mname</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.GraphElementsType#getM_bIsPreferencesInitialized <em>MbIs Preferences Initialized</em>}</li>
+ * </ul>
+ *
+ * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getGraphElementsType()
+ * @model abstract="true"
+ * @generated
+ */
+public interface GraphElementsType extends M_pRootType {
+	/**
+	 * Returns the value of the '<em><b>Id</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Id</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Id</em>' attribute.
+	 * @see #setId(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getGraphElementsType_Id()
+	 * @model
+	 * @generated
+	 */
+	String getId();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.GraphElementsType#getId <em>Id</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Id</em>' attribute.
+	 * @see #getId()
+	 * @generated
+	 */
+	void setId(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Mdraw Behavior</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Mdraw Behavior</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Mdraw Behavior</em>' attribute.
+	 * @see #setM_drawBehavior(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getGraphElementsType_M_drawBehavior()
+	 * @model
+	 * @generated
+	 */
+	String getM_drawBehavior();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.GraphElementsType#getM_drawBehavior <em>Mdraw Behavior</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Mdraw Behavior</em>' attribute.
+	 * @see #getM_drawBehavior()
+	 * @generated
+	 */
+	void setM_drawBehavior(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Mtype</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Mtype</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Mtype</em>' attribute.
+	 * @see #setM_type(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getGraphElementsType_M_type()
+	 * @model
+	 * @generated
+	 */
+	String getM_type();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.GraphElementsType#getM_type <em>Mtype</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Mtype</em>' attribute.
+	 * @see #getM_type()
+	 * @generated
+	 */
+	void setM_type(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Mname</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Mname</em>' containment reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Mname</em>' containment reference.
+	 * @see #setM_name(CGIText)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getGraphElementsType_M_name()
+	 * @model containment="true" resolveProxies="true"
+	 * @generated
+	 */
+	CGIText getM_name();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.GraphElementsType#getM_name <em>Mname</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Mname</em>' containment reference.
+	 * @see #getM_name()
+	 * @generated
+	 */
+	void setM_name(CGIText value);
+
+	/**
+	 * Returns the value of the '<em><b>MbIs Preferences Initialized</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>MbIs Preferences Initialized</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>MbIs Preferences Initialized</em>' attribute.
+	 * @see #setM_bIsPreferencesInitialized(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getGraphElementsType_M_bIsPreferencesInitialized()
+	 * @model
+	 * @generated
+	 */
+	String getM_bIsPreferencesInitialized();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.GraphElementsType#getM_bIsPreferencesInitialized <em>MbIs Preferences Initialized</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>MbIs Preferences Initialized</em>' attribute.
+	 * @see #getM_bIsPreferencesInitialized()
+	 * @generated
+	 */
+	void setM_bIsPreferencesInitialized(String value);
+
+} // GraphElementsType
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/GraphicChartType.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/GraphicChartType.java
new file mode 100755
index 0000000..bc5455e
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/GraphicChartType.java
@@ -0,0 +1,491 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel;
+
+import org.eclipse.emf.common.util.EList;
+
+import org.eclipse.emf.ecore.EObject;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Graphic Chart Type</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * </p>
+ * <ul>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.GraphicChartType#getId <em>Id</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.GraphicChartType#getM_access <em>Maccess</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.GraphicChartType#getElementList <em>Element List</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.GraphicChartType#getM_nModifyDate <em>MnModify Date</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.GraphicChartType#getM_currentLeftTop <em>Mcurrent Left Top</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.GraphicChartType#getM_modified <em>Mmodified</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.GraphicChartType#getM_nCreateDate <em>MnCreate Date</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.GraphicChartType#getM_pParent <em>MpParent</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.GraphicChartType#getM_arrowStyle <em>Marrow Style</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.GraphicChartType#getM_drawBehavior <em>Mdraw Behavior</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.GraphicChartType#getM_currentRightBottom <em>Mcurrent Right Bottom</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.GraphicChartType#getM_creator <em>Mcreator</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.GraphicChartType#getM_bScaleWithZoom <em>MbScale With Zoom</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.GraphicChartType#getM_type <em>Mtype</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.GraphicChartType#getGraphElements <em>Graph Elements</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.GraphicChartType#getM_name <em>Mname</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.GraphicChartType#getM_fileVersion <em>Mfile Version</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.GraphicChartType#getM_bIsPreferencesInitialized <em>MbIs Preferences Initialized</em>}</li>
+ * </ul>
+ *
+ * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getGraphicChartType()
+ * @model abstract="true"
+ * @generated
+ */
+public interface GraphicChartType extends EObject {
+	/**
+	 * Returns the value of the '<em><b>Id</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Id</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Id</em>' attribute.
+	 * @see #setId(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getGraphicChartType_Id()
+	 * @model
+	 * @generated
+	 */
+	String getId();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.GraphicChartType#getId <em>Id</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Id</em>' attribute.
+	 * @see #getId()
+	 * @generated
+	 */
+	void setId(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Maccess</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Maccess</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Maccess</em>' attribute.
+	 * @see #setM_access(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getGraphicChartType_M_access()
+	 * @model
+	 * @generated
+	 */
+	String getM_access();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.GraphicChartType#getM_access <em>Maccess</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Maccess</em>' attribute.
+	 * @see #getM_access()
+	 * @generated
+	 */
+	void setM_access(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Element List</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Element List</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Element List</em>' attribute.
+	 * @see #setElementList(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getGraphicChartType_ElementList()
+	 * @model
+	 * @generated
+	 */
+	String getElementList();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.GraphicChartType#getElementList <em>Element List</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Element List</em>' attribute.
+	 * @see #getElementList()
+	 * @generated
+	 */
+	void setElementList(String value);
+
+	/**
+	 * Returns the value of the '<em><b>MnModify Date</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>MnModify Date</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>MnModify Date</em>' attribute.
+	 * @see #setM_nModifyDate(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getGraphicChartType_M_nModifyDate()
+	 * @model
+	 * @generated
+	 */
+	String getM_nModifyDate();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.GraphicChartType#getM_nModifyDate <em>MnModify Date</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>MnModify Date</em>' attribute.
+	 * @see #getM_nModifyDate()
+	 * @generated
+	 */
+	void setM_nModifyDate(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Mcurrent Left Top</b></em>' attribute list.
+	 * The list contents are of type {@link java.lang.String}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Mcurrent Left Top</em>' attribute list isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Mcurrent Left Top</em>' attribute list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getGraphicChartType_M_currentLeftTop()
+	 * @model unique="false"
+	 * @generated
+	 */
+	EList<String> getM_currentLeftTop();
+
+	/**
+	 * Returns the value of the '<em><b>Mmodified</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Mmodified</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Mmodified</em>' attribute.
+	 * @see #setM_modified(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getGraphicChartType_M_modified()
+	 * @model
+	 * @generated
+	 */
+	String getM_modified();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.GraphicChartType#getM_modified <em>Mmodified</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Mmodified</em>' attribute.
+	 * @see #getM_modified()
+	 * @generated
+	 */
+	void setM_modified(String value);
+
+	/**
+	 * Returns the value of the '<em><b>MnCreate Date</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>MnCreate Date</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>MnCreate Date</em>' attribute.
+	 * @see #setM_nCreateDate(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getGraphicChartType_M_nCreateDate()
+	 * @model
+	 * @generated
+	 */
+	String getM_nCreateDate();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.GraphicChartType#getM_nCreateDate <em>MnCreate Date</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>MnCreate Date</em>' attribute.
+	 * @see #getM_nCreateDate()
+	 * @generated
+	 */
+	void setM_nCreateDate(String value);
+
+	/**
+	 * Returns the value of the '<em><b>MpParent</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>MpParent</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>MpParent</em>' attribute.
+	 * @see #setM_pParent(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getGraphicChartType_M_pParent()
+	 * @model
+	 * @generated
+	 */
+	String getM_pParent();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.GraphicChartType#getM_pParent <em>MpParent</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>MpParent</em>' attribute.
+	 * @see #getM_pParent()
+	 * @generated
+	 */
+	void setM_pParent(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Marrow Style</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Marrow Style</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Marrow Style</em>' attribute.
+	 * @see #setM_arrowStyle(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getGraphicChartType_M_arrowStyle()
+	 * @model
+	 * @generated
+	 */
+	String getM_arrowStyle();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.GraphicChartType#getM_arrowStyle <em>Marrow Style</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Marrow Style</em>' attribute.
+	 * @see #getM_arrowStyle()
+	 * @generated
+	 */
+	void setM_arrowStyle(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Mdraw Behavior</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Mdraw Behavior</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Mdraw Behavior</em>' attribute.
+	 * @see #setM_drawBehavior(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getGraphicChartType_M_drawBehavior()
+	 * @model
+	 * @generated
+	 */
+	String getM_drawBehavior();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.GraphicChartType#getM_drawBehavior <em>Mdraw Behavior</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Mdraw Behavior</em>' attribute.
+	 * @see #getM_drawBehavior()
+	 * @generated
+	 */
+	void setM_drawBehavior(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Mcurrent Right Bottom</b></em>' attribute list.
+	 * The list contents are of type {@link java.lang.String}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Mcurrent Right Bottom</em>' attribute list isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Mcurrent Right Bottom</em>' attribute list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getGraphicChartType_M_currentRightBottom()
+	 * @model unique="false"
+	 * @generated
+	 */
+	EList<String> getM_currentRightBottom();
+
+	/**
+	 * Returns the value of the '<em><b>Mcreator</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Mcreator</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Mcreator</em>' attribute.
+	 * @see #setM_creator(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getGraphicChartType_M_creator()
+	 * @model
+	 * @generated
+	 */
+	String getM_creator();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.GraphicChartType#getM_creator <em>Mcreator</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Mcreator</em>' attribute.
+	 * @see #getM_creator()
+	 * @generated
+	 */
+	void setM_creator(String value);
+
+	/**
+	 * Returns the value of the '<em><b>MbScale With Zoom</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>MbScale With Zoom</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>MbScale With Zoom</em>' attribute.
+	 * @see #setM_bScaleWithZoom(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getGraphicChartType_M_bScaleWithZoom()
+	 * @model
+	 * @generated
+	 */
+	String getM_bScaleWithZoom();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.GraphicChartType#getM_bScaleWithZoom <em>MbScale With Zoom</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>MbScale With Zoom</em>' attribute.
+	 * @see #getM_bScaleWithZoom()
+	 * @generated
+	 */
+	void setM_bScaleWithZoom(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Mtype</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Mtype</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Mtype</em>' attribute.
+	 * @see #setM_type(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getGraphicChartType_M_type()
+	 * @model
+	 * @generated
+	 */
+	String getM_type();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.GraphicChartType#getM_type <em>Mtype</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Mtype</em>' attribute.
+	 * @see #getM_type()
+	 * @generated
+	 */
+	void setM_type(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Graph Elements</b></em>' containment reference list.
+	 * The list contents are of type {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.GraphElementsType}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Graph Elements</em>' containment reference list isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Graph Elements</em>' containment reference list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getGraphicChartType_GraphElements()
+	 * @model containment="true" resolveProxies="true"
+	 * @generated
+	 */
+	EList<GraphElementsType> getGraphElements();
+
+	/**
+	 * Returns the value of the '<em><b>Mname</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Mname</em>' containment reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Mname</em>' containment reference.
+	 * @see #setM_name(CGIText)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getGraphicChartType_M_name()
+	 * @model containment="true" resolveProxies="true"
+	 * @generated
+	 */
+	CGIText getM_name();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.GraphicChartType#getM_name <em>Mname</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Mname</em>' containment reference.
+	 * @see #getM_name()
+	 * @generated
+	 */
+	void setM_name(CGIText value);
+
+	/**
+	 * Returns the value of the '<em><b>Mfile Version</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Mfile Version</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Mfile Version</em>' attribute.
+	 * @see #setM_fileVersion(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getGraphicChartType_M_fileVersion()
+	 * @model
+	 * @generated
+	 */
+	String getM_fileVersion();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.GraphicChartType#getM_fileVersion <em>Mfile Version</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Mfile Version</em>' attribute.
+	 * @see #getM_fileVersion()
+	 * @generated
+	 */
+	void setM_fileVersion(String value);
+
+	/**
+	 * Returns the value of the '<em><b>MbIs Preferences Initialized</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>MbIs Preferences Initialized</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>MbIs Preferences Initialized</em>' attribute.
+	 * @see #setM_bIsPreferencesInitialized(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getGraphicChartType_M_bIsPreferencesInitialized()
+	 * @model
+	 * @generated
+	 */
+	String getM_bIsPreferencesInitialized();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.GraphicChartType#getM_bIsPreferencesInitialized <em>MbIs Preferences Initialized</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>MbIs Preferences Initialized</em>' attribute.
+	 * @see #getM_bIsPreferencesInitialized()
+	 * @generated
+	 */
+	void setM_bIsPreferencesInitialized(String value);
+
+} // GraphicChartType
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/HyperLinksType.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/HyperLinksType.java
new file mode 100755
index 0000000..b086e0b
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/HyperLinksType.java
@@ -0,0 +1,27 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel;
+
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Hyper Links Type</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ *
+ * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getHyperLinksType()
+ * @model abstract="true"
+ * @generated
+ */
+public interface HyperLinksType extends IModelElement {
+} // HyperLinksType
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/IAcceptEventAction.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/IAcceptEventAction.java
new file mode 100755
index 0000000..5a3ae01
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/IAcceptEventAction.java
@@ -0,0 +1,59 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel;
+
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>IAccept Event Action</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * </p>
+ * <ul>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IAcceptEventAction#getEvent <em>Event</em>}</li>
+ * </ul>
+ *
+ * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIAcceptEventAction()
+ * @model
+ * @generated
+ */
+public interface IAcceptEventAction extends IState, ParentType, ItsTargetType {
+	/**
+	 * Returns the value of the '<em><b>Event</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Event</em>' reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Event</em>' reference.
+	 * @see #setEvent(IEvent)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIAcceptEventAction_Event()
+	 * @model
+	 * @generated
+	 */
+	IEvent getEvent();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IAcceptEventAction#getEvent <em>Event</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Event</em>' reference.
+	 * @see #getEvent()
+	 * @generated
+	 */
+	void setEvent(IEvent value);
+
+} // IAcceptEventAction
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/IAcceptTimeEvent.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/IAcceptTimeEvent.java
new file mode 100755
index 0000000..408831c
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/IAcceptTimeEvent.java
@@ -0,0 +1,27 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel;
+
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>IAccept Time Event</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ *
+ * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIAcceptTimeEvent()
+ * @model
+ * @generated
+ */
+public interface IAcceptTimeEvent extends IState {
+} // IAcceptTimeEvent
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/IAction.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/IAction.java
new file mode 100755
index 0000000..4330e41
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/IAction.java
@@ -0,0 +1,185 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel;
+
+import org.eclipse.emf.common.util.EList;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>IAction</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * </p>
+ * <ul>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IAction#getId <em>Id</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IAction#getMyState <em>My State</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IAction#getBody <em>Body</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IAction#getModifiedTimeWeak <em>Modified Time Weak</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IAction#getObjectCreation <em>Object Creation</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IAction#getUmlDependencyID <em>Uml Dependency ID</em>}</li>
+ * </ul>
+ *
+ * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIAction()
+ * @model
+ * @generated
+ */
+public interface IAction extends IModelElement {
+	/**
+	 * Returns the value of the '<em><b>Id</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Id</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Id</em>' attribute.
+	 * @see #setId(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIAction_Id()
+	 * @model
+	 * @generated
+	 */
+	String getId();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IAction#getId <em>Id</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Id</em>' attribute.
+	 * @see #getId()
+	 * @generated
+	 */
+	void setId(String value);
+
+	/**
+	 * Returns the value of the '<em><b>My State</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>My State</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>My State</em>' attribute.
+	 * @see #setMyState(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIAction_MyState()
+	 * @model
+	 * @generated
+	 */
+	String getMyState();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IAction#getMyState <em>My State</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>My State</em>' attribute.
+	 * @see #getMyState()
+	 * @generated
+	 */
+	void setMyState(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Body</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Body</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Body</em>' attribute.
+	 * @see #setBody(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIAction_Body()
+	 * @model
+	 * @generated
+	 */
+	String getBody();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IAction#getBody <em>Body</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Body</em>' attribute.
+	 * @see #getBody()
+	 * @generated
+	 */
+	void setBody(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Modified Time Weak</b></em>' attribute list.
+	 * The list contents are of type {@link java.lang.String}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Modified Time Weak</em>' attribute list isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Modified Time Weak</em>' attribute list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIAction_ModifiedTimeWeak()
+	 * @model unique="false"
+	 * @generated
+	 */
+	EList<String> getModifiedTimeWeak();
+
+	/**
+	 * Returns the value of the '<em><b>Object Creation</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Object Creation</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Object Creation</em>' attribute.
+	 * @see #setObjectCreation(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIAction_ObjectCreation()
+	 * @model
+	 * @generated
+	 */
+	String getObjectCreation();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IAction#getObjectCreation <em>Object Creation</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Object Creation</em>' attribute.
+	 * @see #getObjectCreation()
+	 * @generated
+	 */
+	void setObjectCreation(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Uml Dependency ID</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Uml Dependency ID</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Uml Dependency ID</em>' attribute.
+	 * @see #setUmlDependencyID(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIAction_UmlDependencyID()
+	 * @model
+	 * @generated
+	 */
+	String getUmlDependencyID();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IAction#getUmlDependencyID <em>Uml Dependency ID</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Uml Dependency ID</em>' attribute.
+	 * @see #getUmlDependencyID()
+	 * @generated
+	 */
+	void setUmlDependencyID(String value);
+
+} // IAction
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/IActivityDiagram.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/IActivityDiagram.java
new file mode 100755
index 0000000..ebf2635
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/IActivityDiagram.java
@@ -0,0 +1,77 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel;
+
+import org.eclipse.emf.common.util.EList;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>IActivity Diagram</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * </p>
+ * <ul>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IActivityDiagram#getGraphicChart <em>Graphic Chart</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IActivityDiagram#getCodeUpdateCGTime <em>Code Update CG Time</em>}</li>
+ * </ul>
+ *
+ * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIActivityDiagram()
+ * @model
+ * @generated
+ */
+public interface IActivityDiagram extends DependsOnType, TargetType {
+	/**
+	 * Returns the value of the '<em><b>Graphic Chart</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Graphic Chart</em>' containment reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Graphic Chart</em>' containment reference.
+	 * @see #setGraphicChart(CGIStateChart)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIActivityDiagram_GraphicChart()
+	 * @model containment="true" resolveProxies="true"
+	 * @generated
+	 */
+	CGIStateChart getGraphicChart();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IActivityDiagram#getGraphicChart <em>Graphic Chart</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Graphic Chart</em>' containment reference.
+	 * @see #getGraphicChart()
+	 * @generated
+	 */
+	void setGraphicChart(CGIStateChart value);
+
+	/**
+	 * Returns the value of the '<em><b>Code Update CG Time</b></em>' attribute list.
+	 * The list contents are of type {@link java.lang.String}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Code Update CG Time</em>' attribute list isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Code Update CG Time</em>' attribute list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIActivityDiagram_CodeUpdateCGTime()
+	 * @model unique="false"
+	 * @generated
+	 */
+	EList<String> getCodeUpdateCGTime();
+
+} // IActivityDiagram
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/IActivityGraph.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/IActivityGraph.java
new file mode 100755
index 0000000..0f6521e
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/IActivityGraph.java
@@ -0,0 +1,628 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel;
+
+import org.eclipse.emf.common.util.EList;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>IActivity Graph</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * </p>
+ * <ul>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IActivityGraph#getLastID <em>Last ID</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IActivityGraph#getWeakCGTime <em>Weak CG Time</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IActivityGraph#getStrongCGTime <em>Strong CG Time</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IActivityGraph#getMultiplicity <em>Multiplicity</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IActivityGraph#getItsStateChart <em>Its State Chart</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IActivityGraph#getClassModifier <em>Class Modifier</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IActivityGraph#getStates <em>States</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IActivityGraph#getBaseVersion <em>Base Version</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IActivityGraph#getDiagram <em>Diagram</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IActivityGraph#getViews <em>Views</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IActivityGraph#getProperties <em>Properties</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IActivityGraph#getRequiremenTracabilityHandle <em>Requiremen Tracability Handle</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IActivityGraph#getDescription <em>Description</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IActivityGraph#getSwimlanes <em>Swimlanes</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IActivityGraph#getStereotypes <em>Stereotypes</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IActivityGraph#getAnalysisMode <em>Analysis Mode</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IActivityGraph#getAnnotations <em>Annotations</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IActivityGraph#getCodeUpdateCGTime <em>Code Update CG Time</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IActivityGraph#getObjectCreation <em>Object Creation</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IActivityGraph#getUmlDependencyID <em>Uml Dependency ID</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IActivityGraph#getHyperLinks <em>Hyper Links</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IActivityGraph#getDependencies <em>Dependencies</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IActivityGraph#getTheMainDiagram <em>The Main Diagram</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IActivityGraph#getAssociations <em>Associations</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IActivityGraph#getTags <em>Tags</em>}</li>
+ * </ul>
+ *
+ * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIActivityGraph()
+ * @model
+ * @generated
+ */
+public interface IActivityGraph extends NestedStateChartType, DependsOnType, ValueType, TargetType, M_pModelObjectType, IModelElement {
+	/**
+	 * Returns the value of the '<em><b>Last ID</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Last ID</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Last ID</em>' attribute.
+	 * @see #setLastID(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIActivityGraph_LastID()
+	 * @model
+	 * @generated
+	 */
+	String getLastID();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IActivityGraph#getLastID <em>Last ID</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Last ID</em>' attribute.
+	 * @see #getLastID()
+	 * @generated
+	 */
+	void setLastID(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Weak CG Time</b></em>' attribute list.
+	 * The list contents are of type {@link java.lang.String}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Weak CG Time</em>' attribute list isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Weak CG Time</em>' attribute list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIActivityGraph_WeakCGTime()
+	 * @model unique="false"
+	 * @generated
+	 */
+	EList<String> getWeakCGTime();
+
+	/**
+	 * Returns the value of the '<em><b>Strong CG Time</b></em>' attribute list.
+	 * The list contents are of type {@link java.lang.String}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Strong CG Time</em>' attribute list isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Strong CG Time</em>' attribute list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIActivityGraph_StrongCGTime()
+	 * @model unique="false"
+	 * @generated
+	 */
+	EList<String> getStrongCGTime();
+
+	/**
+	 * Returns the value of the '<em><b>Multiplicity</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Multiplicity</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Multiplicity</em>' attribute.
+	 * @see #setMultiplicity(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIActivityGraph_Multiplicity()
+	 * @model
+	 * @generated
+	 */
+	String getMultiplicity();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IActivityGraph#getMultiplicity <em>Multiplicity</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Multiplicity</em>' attribute.
+	 * @see #getMultiplicity()
+	 * @generated
+	 */
+	void setMultiplicity(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Its State Chart</b></em>' reference list.
+	 * The list contents are of type {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UnknownType}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Its State Chart</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>Its State Chart</em>' reference list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIActivityGraph_ItsStateChart()
+	 * @model
+	 * @generated
+	 */
+	EList<UnknownType> getItsStateChart();
+
+	/**
+	 * Returns the value of the '<em><b>Class Modifier</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Class Modifier</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Class Modifier</em>' attribute.
+	 * @see #setClassModifier(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIActivityGraph_ClassModifier()
+	 * @model
+	 * @generated
+	 */
+	String getClassModifier();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IActivityGraph#getClassModifier <em>Class Modifier</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Class Modifier</em>' attribute.
+	 * @see #getClassModifier()
+	 * @generated
+	 */
+	void setClassModifier(String value);
+
+	/**
+	 * Returns the value of the '<em><b>States</b></em>' containment reference list.
+	 * The list contents are of type {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ItsTargetType}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>States</em>' containment reference list isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>States</em>' containment reference list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIActivityGraph_States()
+	 * @model containment="true" resolveProxies="true"
+	 * @generated
+	 */
+	EList<ItsTargetType> getStates();
+
+	/**
+	 * Returns the value of the '<em><b>Base Version</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Base Version</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Base Version</em>' attribute.
+	 * @see #setBaseVersion(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIActivityGraph_BaseVersion()
+	 * @model
+	 * @generated
+	 */
+	String getBaseVersion();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IActivityGraph#getBaseVersion <em>Base Version</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Base Version</em>' attribute.
+	 * @see #getBaseVersion()
+	 * @generated
+	 */
+	void setBaseVersion(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Diagram</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Diagram</em>' reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Diagram</em>' reference.
+	 * @see #setDiagram(IActivityDiagram)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIActivityGraph_Diagram()
+	 * @model
+	 * @generated
+	 */
+	IActivityDiagram getDiagram();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IActivityGraph#getDiagram <em>Diagram</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Diagram</em>' reference.
+	 * @see #getDiagram()
+	 * @generated
+	 */
+	void setDiagram(IActivityDiagram value);
+
+	/**
+	 * Returns the value of the '<em><b>Views</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Views</em>' containment reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Views</em>' containment reference.
+	 * @see #setViews(IActivityDiagram)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIActivityGraph_Views()
+	 * @model containment="true" resolveProxies="true"
+	 * @generated
+	 */
+	IActivityDiagram getViews();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IActivityGraph#getViews <em>Views</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Views</em>' containment reference.
+	 * @see #getViews()
+	 * @generated
+	 */
+	void setViews(IActivityDiagram value);
+
+	/**
+	 * Returns the value of the '<em><b>Properties</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Properties</em>' containment reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Properties</em>' containment reference.
+	 * @see #setProperties(IPropertyContainer)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIActivityGraph_Properties()
+	 * @model containment="true" resolveProxies="true"
+	 * @generated
+	 */
+	IPropertyContainer getProperties();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IActivityGraph#getProperties <em>Properties</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Properties</em>' containment reference.
+	 * @see #getProperties()
+	 * @generated
+	 */
+	void setProperties(IPropertyContainer value);
+
+	/**
+	 * Returns the value of the '<em><b>Requiremen Tracability Handle</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Requiremen Tracability Handle</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Requiremen Tracability Handle</em>' attribute.
+	 * @see #setRequiremenTracabilityHandle(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIActivityGraph_RequiremenTracabilityHandle()
+	 * @model
+	 * @generated
+	 */
+	String getRequiremenTracabilityHandle();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IActivityGraph#getRequiremenTracabilityHandle <em>Requiremen Tracability Handle</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Requiremen Tracability Handle</em>' attribute.
+	 * @see #getRequiremenTracabilityHandle()
+	 * @generated
+	 */
+	void setRequiremenTracabilityHandle(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Description</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Description</em>' containment reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Description</em>' containment reference.
+	 * @see #setDescription(IDescription)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIActivityGraph_Description()
+	 * @model containment="true" resolveProxies="true"
+	 * @generated
+	 */
+	IDescription getDescription();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IActivityGraph#getDescription <em>Description</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Description</em>' containment reference.
+	 * @see #getDescription()
+	 * @generated
+	 */
+	void setDescription(IDescription value);
+
+	/**
+	 * Returns the value of the '<em><b>Swimlanes</b></em>' containment reference list.
+	 * The list contents are of type {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ISwimlane}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Swimlanes</em>' containment reference list isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Swimlanes</em>' containment reference list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIActivityGraph_Swimlanes()
+	 * @model containment="true" resolveProxies="true"
+	 * @generated
+	 */
+	EList<ISwimlane> getSwimlanes();
+
+	/**
+	 * Returns the value of the '<em><b>Stereotypes</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Stereotypes</em>' reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Stereotypes</em>' reference.
+	 * @see #setStereotypes(IClassifier)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIActivityGraph_Stereotypes()
+	 * @model
+	 * @generated
+	 */
+	IClassifier getStereotypes();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IActivityGraph#getStereotypes <em>Stereotypes</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Stereotypes</em>' reference.
+	 * @see #getStereotypes()
+	 * @generated
+	 */
+	void setStereotypes(IClassifier value);
+
+	/**
+	 * Returns the value of the '<em><b>Analysis Mode</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Analysis Mode</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Analysis Mode</em>' attribute.
+	 * @see #setAnalysisMode(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIActivityGraph_AnalysisMode()
+	 * @model
+	 * @generated
+	 */
+	String getAnalysisMode();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IActivityGraph#getAnalysisMode <em>Analysis Mode</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Analysis Mode</em>' attribute.
+	 * @see #getAnalysisMode()
+	 * @generated
+	 */
+	void setAnalysisMode(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Annotations</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Annotations</em>' containment reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Annotations</em>' containment reference.
+	 * @see #setAnnotations(IComment)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIActivityGraph_Annotations()
+	 * @model containment="true" resolveProxies="true"
+	 * @generated
+	 */
+	IComment getAnnotations();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IActivityGraph#getAnnotations <em>Annotations</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Annotations</em>' containment reference.
+	 * @see #getAnnotations()
+	 * @generated
+	 */
+	void setAnnotations(IComment value);
+
+	/**
+	 * Returns the value of the '<em><b>Code Update CG Time</b></em>' attribute list.
+	 * The list contents are of type {@link java.lang.String}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Code Update CG Time</em>' attribute list isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Code Update CG Time</em>' attribute list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIActivityGraph_CodeUpdateCGTime()
+	 * @model unique="false"
+	 * @generated
+	 */
+	EList<String> getCodeUpdateCGTime();
+
+	/**
+	 * Returns the value of the '<em><b>Object Creation</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Object Creation</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Object Creation</em>' attribute.
+	 * @see #setObjectCreation(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIActivityGraph_ObjectCreation()
+	 * @model
+	 * @generated
+	 */
+	String getObjectCreation();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IActivityGraph#getObjectCreation <em>Object Creation</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Object Creation</em>' attribute.
+	 * @see #getObjectCreation()
+	 * @generated
+	 */
+	void setObjectCreation(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Uml Dependency ID</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Uml Dependency ID</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Uml Dependency ID</em>' attribute.
+	 * @see #setUmlDependencyID(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIActivityGraph_UmlDependencyID()
+	 * @model
+	 * @generated
+	 */
+	String getUmlDependencyID();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IActivityGraph#getUmlDependencyID <em>Uml Dependency ID</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Uml Dependency ID</em>' attribute.
+	 * @see #getUmlDependencyID()
+	 * @generated
+	 */
+	void setUmlDependencyID(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Hyper Links</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Hyper Links</em>' containment reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Hyper Links</em>' containment reference.
+	 * @see #setHyperLinks(IMHyperLink)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIActivityGraph_HyperLinks()
+	 * @model containment="true" resolveProxies="true"
+	 * @generated
+	 */
+	IMHyperLink getHyperLinks();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IActivityGraph#getHyperLinks <em>Hyper Links</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Hyper Links</em>' containment reference.
+	 * @see #getHyperLinks()
+	 * @generated
+	 */
+	void setHyperLinks(IMHyperLink value);
+
+	/**
+	 * Returns the value of the '<em><b>Dependencies</b></em>' containment reference list.
+	 * The list contents are of type {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IDependency}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Dependencies</em>' containment reference list isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Dependencies</em>' containment reference list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIActivityGraph_Dependencies()
+	 * @model containment="true" resolveProxies="true"
+	 * @generated
+	 */
+	EList<IDependency> getDependencies();
+
+	/**
+	 * Returns the value of the '<em><b>The Main Diagram</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>The Main Diagram</em>' reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>The Main Diagram</em>' reference.
+	 * @see #setTheMainDiagram(IDiagram)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIActivityGraph_TheMainDiagram()
+	 * @model
+	 * @generated
+	 */
+	IDiagram getTheMainDiagram();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IActivityGraph#getTheMainDiagram <em>The Main Diagram</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>The Main Diagram</em>' reference.
+	 * @see #getTheMainDiagram()
+	 * @generated
+	 */
+	void setTheMainDiagram(IDiagram value);
+
+	/**
+	 * Returns the value of the '<em><b>Associations</b></em>' containment reference list.
+	 * The list contents are of type {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IAssociationEnd}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Associations</em>' containment reference list isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Associations</em>' containment reference list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIActivityGraph_Associations()
+	 * @model containment="true" resolveProxies="true"
+	 * @generated
+	 */
+	EList<IAssociationEnd> getAssociations();
+
+	/**
+	 * Returns the value of the '<em><b>Tags</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Tags</em>' containment reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Tags</em>' containment reference.
+	 * @see #setTags(ITag)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIActivityGraph_Tags()
+	 * @model containment="true" resolveProxies="true"
+	 * @generated
+	 */
+	ITag getTags();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IActivityGraph#getTags <em>Tags</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Tags</em>' containment reference.
+	 * @see #getTags()
+	 * @generated
+	 */
+	void setTags(ITag value);
+
+} // IActivityGraph
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/IActor.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/IActor.java
new file mode 100755
index 0000000..a10df47
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/IActor.java
@@ -0,0 +1,564 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel;
+
+import org.eclipse.emf.common.util.EList;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>IActor</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * </p>
+ * <ul>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IActor#getId <em>Id</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IActor#getMyState <em>My State</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IActor#getName <em>Name</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IActor#getTheMainDiagram <em>The Main Diagram</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IActor#getDependencies <em>Dependencies</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IActor#getLastID <em>Last ID</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IActor#getWeakCGTime <em>Weak CG Time</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IActor#getStrongCGTime <em>Strong CG Time</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IActor#getOperations <em>Operations</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IActor#getStateCharts <em>State Charts</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IActor#getItsStateChart <em>Its State Chart</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IActor#getAssociations <em>Associations</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IActor#getClassModifier <em>Class Modifier</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IActor#getHyperLinks <em>Hyper Links</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IActor#getModifiedTimeWeak <em>Modified Time Weak</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IActor#getPorts <em>Ports</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IActor#getInheritances <em>Inheritances</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IActor#getAttrs <em>Attrs</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IActor#getRequiremenTracabilityHandle <em>Requiremen Tracability Handle</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IActor#getDescription <em>Description</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IActor#getAnnotations <em>Annotations</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IActor#getComponentFiles <em>Component Files</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IActor#getProperties <em>Properties</em>}</li>
+ * </ul>
+ *
+ * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIActor()
+ * @model
+ * @generated
+ */
+public interface IActor extends IClassifier, M_pBaseType, DependsOnType, M_subjectType, End2_Type {
+	/**
+	 * Returns the value of the '<em><b>Id</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Id</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Id</em>' attribute.
+	 * @see #setId(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIActor_Id()
+	 * @model
+	 * @generated
+	 */
+	String getId();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IActor#getId <em>Id</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Id</em>' attribute.
+	 * @see #getId()
+	 * @generated
+	 */
+	void setId(String value);
+
+	/**
+	 * Returns the value of the '<em><b>My State</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>My State</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>My State</em>' attribute.
+	 * @see #setMyState(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIActor_MyState()
+	 * @model
+	 * @generated
+	 */
+	String getMyState();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IActor#getMyState <em>My State</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>My State</em>' attribute.
+	 * @see #getMyState()
+	 * @generated
+	 */
+	void setMyState(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Name</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Name</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Name</em>' attribute.
+	 * @see #setName(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIActor_Name()
+	 * @model
+	 * @generated
+	 */
+	String getName();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IActor#getName <em>Name</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Name</em>' attribute.
+	 * @see #getName()
+	 * @generated
+	 */
+	void setName(String value);
+
+	/**
+	 * Returns the value of the '<em><b>The Main Diagram</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>The Main Diagram</em>' reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>The Main Diagram</em>' reference.
+	 * @see #setTheMainDiagram(TheMainDiagramType)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIActor_TheMainDiagram()
+	 * @model
+	 * @generated
+	 */
+	TheMainDiagramType getTheMainDiagram();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IActor#getTheMainDiagram <em>The Main Diagram</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>The Main Diagram</em>' reference.
+	 * @see #getTheMainDiagram()
+	 * @generated
+	 */
+	void setTheMainDiagram(TheMainDiagramType value);
+
+	/**
+	 * Returns the value of the '<em><b>Dependencies</b></em>' containment reference list.
+	 * The list contents are of type {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IDependency}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Dependencies</em>' containment reference list isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Dependencies</em>' containment reference list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIActor_Dependencies()
+	 * @model containment="true" resolveProxies="true"
+	 * @generated
+	 */
+	EList<IDependency> getDependencies();
+
+	/**
+	 * Returns the value of the '<em><b>Last ID</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Last ID</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Last ID</em>' attribute.
+	 * @see #setLastID(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIActor_LastID()
+	 * @model
+	 * @generated
+	 */
+	String getLastID();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IActor#getLastID <em>Last ID</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Last ID</em>' attribute.
+	 * @see #getLastID()
+	 * @generated
+	 */
+	void setLastID(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Weak CG Time</b></em>' attribute list.
+	 * The list contents are of type {@link java.lang.String}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Weak CG Time</em>' attribute list isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Weak CG Time</em>' attribute list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIActor_WeakCGTime()
+	 * @model unique="false"
+	 * @generated
+	 */
+	EList<String> getWeakCGTime();
+
+	/**
+	 * Returns the value of the '<em><b>Strong CG Time</b></em>' attribute list.
+	 * The list contents are of type {@link java.lang.String}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Strong CG Time</em>' attribute list isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Strong CG Time</em>' attribute list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIActor_StrongCGTime()
+	 * @model unique="false"
+	 * @generated
+	 */
+	EList<String> getStrongCGTime();
+
+	/**
+	 * Returns the value of the '<em><b>Operations</b></em>' containment reference list.
+	 * The list contents are of type {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.OperationsType}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Operations</em>' containment reference list isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Operations</em>' containment reference list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIActor_Operations()
+	 * @model containment="true" resolveProxies="true"
+	 * @generated
+	 */
+	EList<OperationsType> getOperations();
+
+	/**
+	 * Returns the value of the '<em><b>State Charts</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>State Charts</em>' containment reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>State Charts</em>' containment reference.
+	 * @see #setStateCharts(IStateChart)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIActor_StateCharts()
+	 * @model containment="true" resolveProxies="true"
+	 * @generated
+	 */
+	IStateChart getStateCharts();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IActor#getStateCharts <em>State Charts</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>State Charts</em>' containment reference.
+	 * @see #getStateCharts()
+	 * @generated
+	 */
+	void setStateCharts(IStateChart value);
+
+	/**
+	 * Returns the value of the '<em><b>Its State Chart</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Its State Chart</em>' reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Its State Chart</em>' reference.
+	 * @see #setItsStateChart(IClass)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIActor_ItsStateChart()
+	 * @model
+	 * @generated
+	 */
+	IClass getItsStateChart();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IActor#getItsStateChart <em>Its State Chart</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Its State Chart</em>' reference.
+	 * @see #getItsStateChart()
+	 * @generated
+	 */
+	void setItsStateChart(IClass value);
+
+	/**
+	 * Returns the value of the '<em><b>Associations</b></em>' containment reference list.
+	 * The list contents are of type {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IAssociationEnd}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Associations</em>' containment reference list isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Associations</em>' containment reference list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIActor_Associations()
+	 * @model containment="true" resolveProxies="true"
+	 * @generated
+	 */
+	EList<IAssociationEnd> getAssociations();
+
+	/**
+	 * Returns the value of the '<em><b>Class Modifier</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Class Modifier</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Class Modifier</em>' attribute.
+	 * @see #setClassModifier(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIActor_ClassModifier()
+	 * @model
+	 * @generated
+	 */
+	String getClassModifier();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IActor#getClassModifier <em>Class Modifier</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Class Modifier</em>' attribute.
+	 * @see #getClassModifier()
+	 * @generated
+	 */
+	void setClassModifier(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Hyper Links</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Hyper Links</em>' containment reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Hyper Links</em>' containment reference.
+	 * @see #setHyperLinks(IMHyperLink)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIActor_HyperLinks()
+	 * @model containment="true" resolveProxies="true"
+	 * @generated
+	 */
+	IMHyperLink getHyperLinks();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IActor#getHyperLinks <em>Hyper Links</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Hyper Links</em>' containment reference.
+	 * @see #getHyperLinks()
+	 * @generated
+	 */
+	void setHyperLinks(IMHyperLink value);
+
+	/**
+	 * Returns the value of the '<em><b>Modified Time Weak</b></em>' attribute list.
+	 * The list contents are of type {@link java.lang.String}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Modified Time Weak</em>' attribute list isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Modified Time Weak</em>' attribute list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIActor_ModifiedTimeWeak()
+	 * @model unique="false"
+	 * @generated
+	 */
+	EList<String> getModifiedTimeWeak();
+
+	/**
+	 * Returns the value of the '<em><b>Ports</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Ports</em>' containment reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Ports</em>' containment reference.
+	 * @see #setPorts(IPort)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIActor_Ports()
+	 * @model containment="true" resolveProxies="true"
+	 * @generated
+	 */
+	IPort getPorts();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IActor#getPorts <em>Ports</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Ports</em>' containment reference.
+	 * @see #getPorts()
+	 * @generated
+	 */
+	void setPorts(IPort value);
+
+	/**
+	 * Returns the value of the '<em><b>Inheritances</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Inheritances</em>' containment reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Inheritances</em>' containment reference.
+	 * @see #setInheritances(IGeneralization)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIActor_Inheritances()
+	 * @model containment="true" resolveProxies="true"
+	 * @generated
+	 */
+	IGeneralization getInheritances();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IActor#getInheritances <em>Inheritances</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Inheritances</em>' containment reference.
+	 * @see #getInheritances()
+	 * @generated
+	 */
+	void setInheritances(IGeneralization value);
+
+	/**
+	 * Returns the value of the '<em><b>Attrs</b></em>' containment reference list.
+	 * The list contents are of type {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IAttribute}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Attrs</em>' containment reference list isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Attrs</em>' containment reference list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIActor_Attrs()
+	 * @model containment="true" resolveProxies="true"
+	 * @generated
+	 */
+	EList<IAttribute> getAttrs();
+
+	/**
+	 * Returns the value of the '<em><b>Requiremen Tracability Handle</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Requiremen Tracability Handle</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Requiremen Tracability Handle</em>' attribute.
+	 * @see #setRequiremenTracabilityHandle(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIActor_RequiremenTracabilityHandle()
+	 * @model
+	 * @generated
+	 */
+	String getRequiremenTracabilityHandle();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IActor#getRequiremenTracabilityHandle <em>Requiremen Tracability Handle</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Requiremen Tracability Handle</em>' attribute.
+	 * @see #getRequiremenTracabilityHandle()
+	 * @generated
+	 */
+	void setRequiremenTracabilityHandle(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Description</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Description</em>' containment reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Description</em>' containment reference.
+	 * @see #setDescription(IDescription)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIActor_Description()
+	 * @model containment="true" resolveProxies="true"
+	 * @generated
+	 */
+	IDescription getDescription();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IActor#getDescription <em>Description</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Description</em>' containment reference.
+	 * @see #getDescription()
+	 * @generated
+	 */
+	void setDescription(IDescription value);
+
+	/**
+	 * Returns the value of the '<em><b>Annotations</b></em>' containment reference list.
+	 * The list contents are of type {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IRequirement}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Annotations</em>' containment reference list isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Annotations</em>' containment reference list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIActor_Annotations()
+	 * @model containment="true" resolveProxies="true"
+	 * @generated
+	 */
+	EList<IRequirement> getAnnotations();
+
+	/**
+	 * Returns the value of the '<em><b>Component Files</b></em>' containment reference list.
+	 * The list contents are of type {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IFile}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Component Files</em>' containment reference list isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Component Files</em>' containment reference list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIActor_ComponentFiles()
+	 * @model containment="true" resolveProxies="true"
+	 * @generated
+	 */
+	EList<IFile> getComponentFiles();
+
+	/**
+	 * Returns the value of the '<em><b>Properties</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Properties</em>' containment reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Properties</em>' containment reference.
+	 * @see #setProperties(IPropertyContainer)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIActor_Properties()
+	 * @model containment="true" resolveProxies="true"
+	 * @generated
+	 */
+	IPropertyContainer getProperties();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IActor#getProperties <em>Properties</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Properties</em>' containment reference.
+	 * @see #getProperties()
+	 * @generated
+	 */
+	void setProperties(IPropertyContainer value);
+
+} // IActor
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/IAnchor.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/IAnchor.java
new file mode 100755
index 0000000..aef6716
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/IAnchor.java
@@ -0,0 +1,158 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel;
+
+import org.eclipse.emf.common.util.EList;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>IAnchor</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * </p>
+ * <ul>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IAnchor#getId <em>Id</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IAnchor#getMyState <em>My State</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IAnchor#getName <em>Name</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IAnchor#getDependsOn <em>Depends On</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IAnchor#getModifiedTimeWeak <em>Modified Time Weak</em>}</li>
+ * </ul>
+ *
+ * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIAnchor()
+ * @model
+ * @generated
+ */
+public interface IAnchor extends M_pModelObjectType {
+	/**
+	 * Returns the value of the '<em><b>Id</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Id</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Id</em>' attribute.
+	 * @see #setId(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIAnchor_Id()
+	 * @model
+	 * @generated
+	 */
+	String getId();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IAnchor#getId <em>Id</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Id</em>' attribute.
+	 * @see #getId()
+	 * @generated
+	 */
+	void setId(String value);
+
+	/**
+	 * Returns the value of the '<em><b>My State</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>My State</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>My State</em>' attribute.
+	 * @see #setMyState(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIAnchor_MyState()
+	 * @model
+	 * @generated
+	 */
+	String getMyState();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IAnchor#getMyState <em>My State</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>My State</em>' attribute.
+	 * @see #getMyState()
+	 * @generated
+	 */
+	void setMyState(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Name</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Name</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Name</em>' attribute.
+	 * @see #setName(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIAnchor_Name()
+	 * @model
+	 * @generated
+	 */
+	String getName();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IAnchor#getName <em>Name</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Name</em>' attribute.
+	 * @see #getName()
+	 * @generated
+	 */
+	void setName(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Depends On</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Depends On</em>' reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Depends On</em>' reference.
+	 * @see #setDependsOn(DependsOnType)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIAnchor_DependsOn()
+	 * @model
+	 * @generated
+	 */
+	DependsOnType getDependsOn();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IAnchor#getDependsOn <em>Depends On</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Depends On</em>' reference.
+	 * @see #getDependsOn()
+	 * @generated
+	 */
+	void setDependsOn(DependsOnType value);
+
+	/**
+	 * Returns the value of the '<em><b>Modified Time Weak</b></em>' attribute list.
+	 * The list contents are of type {@link java.lang.String}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Modified Time Weak</em>' attribute list isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Modified Time Weak</em>' attribute list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIAnchor_ModifiedTimeWeak()
+	 * @model unique="false"
+	 * @generated
+	 */
+	EList<String> getModifiedTimeWeak();
+
+} // IAnchor
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/IAnnotation.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/IAnnotation.java
new file mode 100755
index 0000000..20ad338
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/IAnnotation.java
@@ -0,0 +1,185 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel;
+
+import org.eclipse.emf.common.util.EList;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>IAnnotation</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * </p>
+ * <ul>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IAnnotation#getRequiremenTracabilityHandle <em>Requiremen Tracability Handle</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IAnnotation#getDescription <em>Description</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IAnnotation#getUmlDependencyID <em>Uml Dependency ID</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IAnnotation#getObjectCreation <em>Object Creation</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IAnnotation#getTags <em>Tags</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IAnnotation#getBody <em>Body</em>}</li>
+ * </ul>
+ *
+ * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIAnnotation()
+ * @model
+ * @generated
+ */
+public interface IAnnotation extends IUnit {
+	/**
+	 * Returns the value of the '<em><b>Requiremen Tracability Handle</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Requiremen Tracability Handle</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Requiremen Tracability Handle</em>' attribute.
+	 * @see #setRequiremenTracabilityHandle(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIAnnotation_RequiremenTracabilityHandle()
+	 * @model
+	 * @generated
+	 */
+	String getRequiremenTracabilityHandle();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IAnnotation#getRequiremenTracabilityHandle <em>Requiremen Tracability Handle</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Requiremen Tracability Handle</em>' attribute.
+	 * @see #getRequiremenTracabilityHandle()
+	 * @generated
+	 */
+	void setRequiremenTracabilityHandle(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Description</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Description</em>' containment reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Description</em>' containment reference.
+	 * @see #setDescription(IDescription)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIAnnotation_Description()
+	 * @model containment="true" resolveProxies="true"
+	 * @generated
+	 */
+	IDescription getDescription();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IAnnotation#getDescription <em>Description</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Description</em>' containment reference.
+	 * @see #getDescription()
+	 * @generated
+	 */
+	void setDescription(IDescription value);
+
+	/**
+	 * Returns the value of the '<em><b>Uml Dependency ID</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Uml Dependency ID</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Uml Dependency ID</em>' attribute.
+	 * @see #setUmlDependencyID(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIAnnotation_UmlDependencyID()
+	 * @model
+	 * @generated
+	 */
+	String getUmlDependencyID();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IAnnotation#getUmlDependencyID <em>Uml Dependency ID</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Uml Dependency ID</em>' attribute.
+	 * @see #getUmlDependencyID()
+	 * @generated
+	 */
+	void setUmlDependencyID(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Object Creation</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Object Creation</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Object Creation</em>' attribute.
+	 * @see #setObjectCreation(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIAnnotation_ObjectCreation()
+	 * @model
+	 * @generated
+	 */
+	String getObjectCreation();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IAnnotation#getObjectCreation <em>Object Creation</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Object Creation</em>' attribute.
+	 * @see #getObjectCreation()
+	 * @generated
+	 */
+	void setObjectCreation(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Tags</b></em>' containment reference list.
+	 * The list contents are of type {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITag}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Tags</em>' containment reference list isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Tags</em>' containment reference list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIAnnotation_Tags()
+	 * @model containment="true" resolveProxies="true"
+	 * @generated
+	 */
+	EList<ITag> getTags();
+
+	/**
+	 * Returns the value of the '<em><b>Body</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Body</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Body</em>' attribute.
+	 * @see #setBody(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIAnnotation_Body()
+	 * @model
+	 * @generated
+	 */
+	String getBody();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IAnnotation#getBody <em>Body</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Body</em>' attribute.
+	 * @see #getBody()
+	 * @generated
+	 */
+	void setBody(String value);
+
+} // IAnnotation
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/IArgument.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/IArgument.java
new file mode 100755
index 0000000..ef576b9
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/IArgument.java
@@ -0,0 +1,364 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel;
+
+import org.eclipse.emf.common.util.EList;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>IArgument</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * </p>
+ * <ul>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IArgument#getId <em>Id</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IArgument#getMyState <em>My State</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IArgument#getProperties <em>Properties</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IArgument#getName <em>Name</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IArgument#getModifiedTimeWeak <em>Modified Time Weak</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IArgument#getTypeOf <em>Type Of</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IArgument#getArgumentDirection <em>Argument Direction</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IArgument#getDefaultValue <em>Default Value</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IArgument#getValueSpecifications <em>Value Specifications</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IArgument#getDescription <em>Description</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IArgument#getCodeUpdateCGTime <em>Code Update CG Time</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IArgument#getObjectCreation <em>Object Creation</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IArgument#getUmlDependencyID <em>Uml Dependency ID</em>}</li>
+ * </ul>
+ *
+ * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIArgument()
+ * @model
+ * @generated
+ */
+public interface IArgument extends IVariable {
+	/**
+	 * Returns the value of the '<em><b>Id</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Id</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Id</em>' attribute.
+	 * @see #setId(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIArgument_Id()
+	 * @model
+	 * @generated
+	 */
+	String getId();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IArgument#getId <em>Id</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Id</em>' attribute.
+	 * @see #getId()
+	 * @generated
+	 */
+	void setId(String value);
+
+	/**
+	 * Returns the value of the '<em><b>My State</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>My State</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>My State</em>' attribute.
+	 * @see #setMyState(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIArgument_MyState()
+	 * @model
+	 * @generated
+	 */
+	String getMyState();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IArgument#getMyState <em>My State</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>My State</em>' attribute.
+	 * @see #getMyState()
+	 * @generated
+	 */
+	void setMyState(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Properties</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Properties</em>' containment reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Properties</em>' containment reference.
+	 * @see #setProperties(IPropertyContainer)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIArgument_Properties()
+	 * @model containment="true" resolveProxies="true"
+	 * @generated
+	 */
+	IPropertyContainer getProperties();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IArgument#getProperties <em>Properties</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Properties</em>' containment reference.
+	 * @see #getProperties()
+	 * @generated
+	 */
+	void setProperties(IPropertyContainer value);
+
+	/**
+	 * Returns the value of the '<em><b>Name</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Name</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Name</em>' attribute.
+	 * @see #setName(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIArgument_Name()
+	 * @model
+	 * @generated
+	 */
+	String getName();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IArgument#getName <em>Name</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Name</em>' attribute.
+	 * @see #getName()
+	 * @generated
+	 */
+	void setName(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Modified Time Weak</b></em>' attribute list.
+	 * The list contents are of type {@link java.lang.String}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Modified Time Weak</em>' attribute list isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Modified Time Weak</em>' attribute list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIArgument_ModifiedTimeWeak()
+	 * @model unique="false"
+	 * @generated
+	 */
+	EList<String> getModifiedTimeWeak();
+
+	/**
+	 * Returns the value of the '<em><b>Type Of</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Type Of</em>' reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Type Of</em>' reference.
+	 * @see #setTypeOf(IClassifier)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIArgument_TypeOf()
+	 * @model
+	 * @generated
+	 */
+	IClassifier getTypeOf();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IArgument#getTypeOf <em>Type Of</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Type Of</em>' reference.
+	 * @see #getTypeOf()
+	 * @generated
+	 */
+	void setTypeOf(IClassifier value);
+
+	/**
+	 * Returns the value of the '<em><b>Argument Direction</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Argument Direction</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Argument Direction</em>' attribute.
+	 * @see #setArgumentDirection(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIArgument_ArgumentDirection()
+	 * @model
+	 * @generated
+	 */
+	String getArgumentDirection();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IArgument#getArgumentDirection <em>Argument Direction</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Argument Direction</em>' attribute.
+	 * @see #getArgumentDirection()
+	 * @generated
+	 */
+	void setArgumentDirection(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Default Value</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Default Value</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Default Value</em>' attribute.
+	 * @see #setDefaultValue(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIArgument_DefaultValue()
+	 * @model
+	 * @generated
+	 */
+	String getDefaultValue();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IArgument#getDefaultValue <em>Default Value</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Default Value</em>' attribute.
+	 * @see #getDefaultValue()
+	 * @generated
+	 */
+	void setDefaultValue(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Value Specifications</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Value Specifications</em>' containment reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Value Specifications</em>' containment reference.
+	 * @see #setValueSpecifications(ILiteralSpecification)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIArgument_ValueSpecifications()
+	 * @model containment="true" resolveProxies="true"
+	 * @generated
+	 */
+	ILiteralSpecification getValueSpecifications();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IArgument#getValueSpecifications <em>Value Specifications</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Value Specifications</em>' containment reference.
+	 * @see #getValueSpecifications()
+	 * @generated
+	 */
+	void setValueSpecifications(ILiteralSpecification value);
+
+	/**
+	 * Returns the value of the '<em><b>Description</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Description</em>' containment reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Description</em>' containment reference.
+	 * @see #setDescription(IDescription)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIArgument_Description()
+	 * @model containment="true" resolveProxies="true"
+	 * @generated
+	 */
+	IDescription getDescription();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IArgument#getDescription <em>Description</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Description</em>' containment reference.
+	 * @see #getDescription()
+	 * @generated
+	 */
+	void setDescription(IDescription value);
+
+	/**
+	 * Returns the value of the '<em><b>Code Update CG Time</b></em>' attribute list.
+	 * The list contents are of type {@link java.lang.String}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Code Update CG Time</em>' attribute list isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Code Update CG Time</em>' attribute list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIArgument_CodeUpdateCGTime()
+	 * @model unique="false"
+	 * @generated
+	 */
+	EList<String> getCodeUpdateCGTime();
+
+	/**
+	 * Returns the value of the '<em><b>Object Creation</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Object Creation</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Object Creation</em>' attribute.
+	 * @see #setObjectCreation(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIArgument_ObjectCreation()
+	 * @model
+	 * @generated
+	 */
+	String getObjectCreation();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IArgument#getObjectCreation <em>Object Creation</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Object Creation</em>' attribute.
+	 * @see #getObjectCreation()
+	 * @generated
+	 */
+	void setObjectCreation(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Uml Dependency ID</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Uml Dependency ID</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Uml Dependency ID</em>' attribute.
+	 * @see #setUmlDependencyID(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIArgument_UmlDependencyID()
+	 * @model
+	 * @generated
+	 */
+	String getUmlDependencyID();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IArgument#getUmlDependencyID <em>Uml Dependency ID</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Uml Dependency ID</em>' attribute.
+	 * @see #getUmlDependencyID()
+	 * @generated
+	 */
+	void setUmlDependencyID(String value);
+
+} // IArgument
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/IAssociationClass.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/IAssociationClass.java
new file mode 100755
index 0000000..7f8b56f
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/IAssociationClass.java
@@ -0,0 +1,113 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel;
+
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>IAssociation Class</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * </p>
+ * <ul>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IAssociationClass#getIsClass <em>Is Class</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IAssociationClass#getM_end1 <em>Mend1</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IAssociationClass#getM_end2 <em>Mend2</em>}</li>
+ * </ul>
+ *
+ * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIAssociationClass()
+ * @model
+ * @generated
+ */
+public interface IAssociationClass extends IClass {
+	/**
+	 * Returns the value of the '<em><b>Is Class</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Is Class</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Is Class</em>' attribute.
+	 * @see #setIsClass(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIAssociationClass_IsClass()
+	 * @model
+	 * @generated
+	 */
+	String getIsClass();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IAssociationClass#getIsClass <em>Is Class</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Is Class</em>' attribute.
+	 * @see #getIsClass()
+	 * @generated
+	 */
+	void setIsClass(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Mend1</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Mend1</em>' reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Mend1</em>' reference.
+	 * @see #setM_end1(IAssociationEnd)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIAssociationClass_M_end1()
+	 * @model
+	 * @generated
+	 */
+	IAssociationEnd getM_end1();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IAssociationClass#getM_end1 <em>Mend1</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Mend1</em>' reference.
+	 * @see #getM_end1()
+	 * @generated
+	 */
+	void setM_end1(IAssociationEnd value);
+
+	/**
+	 * Returns the value of the '<em><b>Mend2</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Mend2</em>' reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Mend2</em>' reference.
+	 * @see #setM_end2(IAssociationEnd)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIAssociationClass_M_end2()
+	 * @model
+	 * @generated
+	 */
+	IAssociationEnd getM_end2();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IAssociationClass#getM_end2 <em>Mend2</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Mend2</em>' reference.
+	 * @see #getM_end2()
+	 * @generated
+	 */
+	void setM_end2(IAssociationEnd value);
+
+} // IAssociationClass
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/IAssociationEnd.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/IAssociationEnd.java
new file mode 100755
index 0000000..f036e4f
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/IAssociationEnd.java
@@ -0,0 +1,418 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel;
+
+import org.eclipse.emf.common.util.EList;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>IAssociation End</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * </p>
+ * <ul>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IAssociationEnd#getId <em>Id</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IAssociationEnd#getMyState <em>My State</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IAssociationEnd#getName <em>Name</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IAssociationEnd#getMultiplicity <em>Multiplicity</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IAssociationEnd#getOtherClass <em>Other Class</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IAssociationEnd#getLinkName <em>Link Name</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IAssociationEnd#getLinkType <em>Link Type</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IAssociationEnd#getNavigability <em>Navigability</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IAssociationEnd#getInverse <em>Inverse</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IAssociationEnd#getModifiedTimeWeak <em>Modified Time Weak</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IAssociationEnd#getQualifiers <em>Qualifiers</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IAssociationEnd#getStereotypes <em>Stereotypes</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IAssociationEnd#getCodeUpdateCGTime <em>Code Update CG Time</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IAssociationEnd#getQualifierType <em>Qualifier Type</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IAssociationEnd#getM_associationClass <em>Massociation Class</em>}</li>
+ * </ul>
+ *
+ * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIAssociationEnd()
+ * @model
+ * @generated
+ */
+public interface IAssociationEnd extends AssociationsType, M_subjectType, M_hTargetType, InverseType, M_pModelObjectType, ToLinkType, IModelElement {
+	/**
+	 * Returns the value of the '<em><b>Id</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Id</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Id</em>' attribute.
+	 * @see #setId(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIAssociationEnd_Id()
+	 * @model
+	 * @generated
+	 */
+	String getId();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IAssociationEnd#getId <em>Id</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Id</em>' attribute.
+	 * @see #getId()
+	 * @generated
+	 */
+	void setId(String value);
+
+	/**
+	 * Returns the value of the '<em><b>My State</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>My State</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>My State</em>' attribute.
+	 * @see #setMyState(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIAssociationEnd_MyState()
+	 * @model
+	 * @generated
+	 */
+	String getMyState();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IAssociationEnd#getMyState <em>My State</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>My State</em>' attribute.
+	 * @see #getMyState()
+	 * @generated
+	 */
+	void setMyState(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Name</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Name</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Name</em>' attribute.
+	 * @see #setName(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIAssociationEnd_Name()
+	 * @model
+	 * @generated
+	 */
+	String getName();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IAssociationEnd#getName <em>Name</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Name</em>' attribute.
+	 * @see #getName()
+	 * @generated
+	 */
+	void setName(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Multiplicity</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Multiplicity</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Multiplicity</em>' attribute.
+	 * @see #setMultiplicity(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIAssociationEnd_Multiplicity()
+	 * @model
+	 * @generated
+	 */
+	String getMultiplicity();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IAssociationEnd#getMultiplicity <em>Multiplicity</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Multiplicity</em>' attribute.
+	 * @see #getMultiplicity()
+	 * @generated
+	 */
+	void setMultiplicity(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Other Class</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Other 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>Other Class</em>' reference.
+	 * @see #setOtherClass(ElementsType)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIAssociationEnd_OtherClass()
+	 * @model
+	 * @generated
+	 */
+	ElementsType getOtherClass();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IAssociationEnd#getOtherClass <em>Other Class</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Other Class</em>' reference.
+	 * @see #getOtherClass()
+	 * @generated
+	 */
+	void setOtherClass(ElementsType value);
+
+	/**
+	 * Returns the value of the '<em><b>Link Name</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Link Name</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Link Name</em>' attribute.
+	 * @see #setLinkName(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIAssociationEnd_LinkName()
+	 * @model
+	 * @generated
+	 */
+	String getLinkName();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IAssociationEnd#getLinkName <em>Link Name</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Link Name</em>' attribute.
+	 * @see #getLinkName()
+	 * @generated
+	 */
+	void setLinkName(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Link Type</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Link 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>Link Type</em>' attribute.
+	 * @see #setLinkType(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIAssociationEnd_LinkType()
+	 * @model
+	 * @generated
+	 */
+	String getLinkType();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IAssociationEnd#getLinkType <em>Link Type</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Link Type</em>' attribute.
+	 * @see #getLinkType()
+	 * @generated
+	 */
+	void setLinkType(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Navigability</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Navigability</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Navigability</em>' attribute.
+	 * @see #setNavigability(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIAssociationEnd_Navigability()
+	 * @model
+	 * @generated
+	 */
+	String getNavigability();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IAssociationEnd#getNavigability <em>Navigability</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Navigability</em>' attribute.
+	 * @see #getNavigability()
+	 * @generated
+	 */
+	void setNavigability(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Inverse</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Inverse</em>' reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Inverse</em>' reference.
+	 * @see #setInverse(InverseType)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIAssociationEnd_Inverse()
+	 * @model
+	 * @generated
+	 */
+	InverseType getInverse();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IAssociationEnd#getInverse <em>Inverse</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Inverse</em>' reference.
+	 * @see #getInverse()
+	 * @generated
+	 */
+	void setInverse(InverseType value);
+
+	/**
+	 * Returns the value of the '<em><b>Modified Time Weak</b></em>' attribute list.
+	 * The list contents are of type {@link java.lang.String}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Modified Time Weak</em>' attribute list isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Modified Time Weak</em>' attribute list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIAssociationEnd_ModifiedTimeWeak()
+	 * @model unique="false"
+	 * @generated
+	 */
+	EList<String> getModifiedTimeWeak();
+
+	/**
+	 * Returns the value of the '<em><b>Qualifiers</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Qualifiers</em>' reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Qualifiers</em>' reference.
+	 * @see #setQualifiers(IAttribute)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIAssociationEnd_Qualifiers()
+	 * @model
+	 * @generated
+	 */
+	IAttribute getQualifiers();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IAssociationEnd#getQualifiers <em>Qualifiers</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Qualifiers</em>' reference.
+	 * @see #getQualifiers()
+	 * @generated
+	 */
+	void setQualifiers(IAttribute value);
+
+	/**
+	 * Returns the value of the '<em><b>Stereotypes</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Stereotypes</em>' reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Stereotypes</em>' reference.
+	 * @see #setStereotypes(IStereotype)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIAssociationEnd_Stereotypes()
+	 * @model
+	 * @generated
+	 */
+	IStereotype getStereotypes();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IAssociationEnd#getStereotypes <em>Stereotypes</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Stereotypes</em>' reference.
+	 * @see #getStereotypes()
+	 * @generated
+	 */
+	void setStereotypes(IStereotype value);
+
+	/**
+	 * Returns the value of the '<em><b>Code Update CG Time</b></em>' attribute list.
+	 * The list contents are of type {@link java.lang.String}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Code Update CG Time</em>' attribute list isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Code Update CG Time</em>' attribute list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIAssociationEnd_CodeUpdateCGTime()
+	 * @model unique="false"
+	 * @generated
+	 */
+	EList<String> getCodeUpdateCGTime();
+
+	/**
+	 * Returns the value of the '<em><b>Qualifier Type</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Qualifier Type</em>' reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Qualifier Type</em>' reference.
+	 * @see #setQualifierType(IType)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIAssociationEnd_QualifierType()
+	 * @model
+	 * @generated
+	 */
+	IType getQualifierType();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IAssociationEnd#getQualifierType <em>Qualifier Type</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Qualifier Type</em>' reference.
+	 * @see #getQualifierType()
+	 * @generated
+	 */
+	void setQualifierType(IType value);
+
+	/**
+	 * Returns the value of the '<em><b>Massociation Class</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Massociation 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>Massociation Class</em>' reference.
+	 * @see #setM_associationClass(IAssociationClass)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIAssociationEnd_M_associationClass()
+	 * @model
+	 * @generated
+	 */
+	IAssociationClass getM_associationClass();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IAssociationEnd#getM_associationClass <em>Massociation Class</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Massociation Class</em>' reference.
+	 * @see #getM_associationClass()
+	 * @generated
+	 */
+	void setM_associationClass(IAssociationClass value);
+
+} // IAssociationEnd
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/IAssociationEndHandle.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/IAssociationEndHandle.java
new file mode 100755
index 0000000..433bee7
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/IAssociationEndHandle.java
@@ -0,0 +1,195 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel;
+
+import org.eclipse.emf.ecore.EObject;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>IAssociation End Handle</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * </p>
+ * <ul>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IAssociationEndHandle#getM2Class <em>M2 Class</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IAssociationEndHandle#getFilename <em>Filename</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IAssociationEndHandle#getSubsystem <em>Subsystem</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IAssociationEndHandle#getClass_ <em>Class</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IAssociationEndHandle#getName <em>Name</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IAssociationEndHandle#getId <em>Id</em>}</li>
+ * </ul>
+ *
+ * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIAssociationEndHandle()
+ * @model
+ * @generated
+ */
+public interface IAssociationEndHandle extends EObject {
+	/**
+	 * Returns the value of the '<em><b>M2 Class</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>M2 Class</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>M2 Class</em>' attribute.
+	 * @see #setM2Class(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIAssociationEndHandle_M2Class()
+	 * @model
+	 * @generated
+	 */
+	String getM2Class();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IAssociationEndHandle#getM2Class <em>M2 Class</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>M2 Class</em>' attribute.
+	 * @see #getM2Class()
+	 * @generated
+	 */
+	void setM2Class(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Filename</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Filename</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Filename</em>' attribute.
+	 * @see #setFilename(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIAssociationEndHandle_Filename()
+	 * @model
+	 * @generated
+	 */
+	String getFilename();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IAssociationEndHandle#getFilename <em>Filename</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Filename</em>' attribute.
+	 * @see #getFilename()
+	 * @generated
+	 */
+	void setFilename(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Subsystem</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Subsystem</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Subsystem</em>' attribute.
+	 * @see #setSubsystem(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIAssociationEndHandle_Subsystem()
+	 * @model
+	 * @generated
+	 */
+	String getSubsystem();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IAssociationEndHandle#getSubsystem <em>Subsystem</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Subsystem</em>' attribute.
+	 * @see #getSubsystem()
+	 * @generated
+	 */
+	void setSubsystem(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Class</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Class</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Class</em>' attribute.
+	 * @see #setClass(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIAssociationEndHandle_Class()
+	 * @model
+	 * @generated
+	 */
+	String getClass_();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IAssociationEndHandle#getClass_ <em>Class</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Class</em>' attribute.
+	 * @see #getClass_()
+	 * @generated
+	 */
+	void setClass(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Name</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Name</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Name</em>' attribute.
+	 * @see #setName(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIAssociationEndHandle_Name()
+	 * @model
+	 * @generated
+	 */
+	String getName();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IAssociationEndHandle#getName <em>Name</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Name</em>' attribute.
+	 * @see #getName()
+	 * @generated
+	 */
+	void setName(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Id</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Id</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Id</em>' attribute.
+	 * @see #setId(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIAssociationEndHandle_Id()
+	 * @model
+	 * @generated
+	 */
+	String getId();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IAssociationEndHandle#getId <em>Id</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Id</em>' attribute.
+	 * @see #getId()
+	 * @generated
+	 */
+	void setId(String value);
+
+} // IAssociationEndHandle
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/IAssociationRole.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/IAssociationRole.java
new file mode 100755
index 0000000..2f84664
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/IAssociationRole.java
@@ -0,0 +1,347 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel;
+
+import org.eclipse.emf.common.util.EList;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>IAssociation Role</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * </p>
+ * <ul>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IAssociationRole#getId <em>Id</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IAssociationRole#getMyState <em>My State</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IAssociationRole#getM_fAssocType1 <em>MfAssoc Type1</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IAssociationRole#getM_fAssocType2 <em>MfAssoc Type2</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IAssociationRole#getM_pSource <em>MpSource</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IAssociationRole#getM_pTarget <em>MpTarget</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IAssociationRole#getM_pFormalAssoc1 <em>MpFormal Assoc1</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IAssociationRole#getM_pFormalAssoc2 <em>MpFormal Assoc2</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IAssociationRole#getName <em>Name</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IAssociationRole#getModifiedTimeWeak <em>Modified Time Weak</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IAssociationRole#getObjectCreation <em>Object Creation</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IAssociationRole#getUmlDependencyID <em>Uml Dependency ID</em>}</li>
+ * </ul>
+ *
+ * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIAssociationRole()
+ * @model
+ * @generated
+ */
+public interface IAssociationRole extends IModelElement {
+	/**
+	 * Returns the value of the '<em><b>Id</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Id</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Id</em>' attribute.
+	 * @see #setId(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIAssociationRole_Id()
+	 * @model
+	 * @generated
+	 */
+	String getId();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IAssociationRole#getId <em>Id</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Id</em>' attribute.
+	 * @see #getId()
+	 * @generated
+	 */
+	void setId(String value);
+
+	/**
+	 * Returns the value of the '<em><b>My State</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>My State</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>My State</em>' attribute.
+	 * @see #setMyState(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIAssociationRole_MyState()
+	 * @model
+	 * @generated
+	 */
+	String getMyState();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IAssociationRole#getMyState <em>My State</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>My State</em>' attribute.
+	 * @see #getMyState()
+	 * @generated
+	 */
+	void setMyState(String value);
+
+	/**
+	 * Returns the value of the '<em><b>MfAssoc Type1</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>MfAssoc Type1</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>MfAssoc Type1</em>' attribute.
+	 * @see #setM_fAssocType1(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIAssociationRole_M_fAssocType1()
+	 * @model
+	 * @generated
+	 */
+	String getM_fAssocType1();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IAssociationRole#getM_fAssocType1 <em>MfAssoc Type1</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>MfAssoc Type1</em>' attribute.
+	 * @see #getM_fAssocType1()
+	 * @generated
+	 */
+	void setM_fAssocType1(String value);
+
+	/**
+	 * Returns the value of the '<em><b>MfAssoc Type2</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>MfAssoc Type2</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>MfAssoc Type2</em>' attribute.
+	 * @see #setM_fAssocType2(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIAssociationRole_M_fAssocType2()
+	 * @model
+	 * @generated
+	 */
+	String getM_fAssocType2();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IAssociationRole#getM_fAssocType2 <em>MfAssoc Type2</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>MfAssoc Type2</em>' attribute.
+	 * @see #getM_fAssocType2()
+	 * @generated
+	 */
+	void setM_fAssocType2(String value);
+
+	/**
+	 * Returns the value of the '<em><b>MpSource</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>MpSource</em>' reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>MpSource</em>' reference.
+	 * @see #setM_pSource(IClassifierRole)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIAssociationRole_M_pSource()
+	 * @model
+	 * @generated
+	 */
+	IClassifierRole getM_pSource();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IAssociationRole#getM_pSource <em>MpSource</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>MpSource</em>' reference.
+	 * @see #getM_pSource()
+	 * @generated
+	 */
+	void setM_pSource(IClassifierRole value);
+
+	/**
+	 * Returns the value of the '<em><b>MpTarget</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>MpTarget</em>' reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>MpTarget</em>' reference.
+	 * @see #setM_pTarget(IClassifierRole)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIAssociationRole_M_pTarget()
+	 * @model
+	 * @generated
+	 */
+	IClassifierRole getM_pTarget();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IAssociationRole#getM_pTarget <em>MpTarget</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>MpTarget</em>' reference.
+	 * @see #getM_pTarget()
+	 * @generated
+	 */
+	void setM_pTarget(IClassifierRole value);
+
+	/**
+	 * Returns the value of the '<em><b>MpFormal Assoc1</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>MpFormal Assoc1</em>' reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>MpFormal Assoc1</em>' reference.
+	 * @see #setM_pFormalAssoc1(AssociationsType)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIAssociationRole_M_pFormalAssoc1()
+	 * @model
+	 * @generated
+	 */
+	AssociationsType getM_pFormalAssoc1();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IAssociationRole#getM_pFormalAssoc1 <em>MpFormal Assoc1</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>MpFormal Assoc1</em>' reference.
+	 * @see #getM_pFormalAssoc1()
+	 * @generated
+	 */
+	void setM_pFormalAssoc1(AssociationsType value);
+
+	/**
+	 * Returns the value of the '<em><b>MpFormal Assoc2</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>MpFormal Assoc2</em>' reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>MpFormal Assoc2</em>' reference.
+	 * @see #setM_pFormalAssoc2(AssociationsType)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIAssociationRole_M_pFormalAssoc2()
+	 * @model
+	 * @generated
+	 */
+	AssociationsType getM_pFormalAssoc2();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IAssociationRole#getM_pFormalAssoc2 <em>MpFormal Assoc2</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>MpFormal Assoc2</em>' reference.
+	 * @see #getM_pFormalAssoc2()
+	 * @generated
+	 */
+	void setM_pFormalAssoc2(AssociationsType value);
+
+	/**
+	 * Returns the value of the '<em><b>Name</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Name</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Name</em>' attribute.
+	 * @see #setName(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIAssociationRole_Name()
+	 * @model
+	 * @generated
+	 */
+	String getName();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IAssociationRole#getName <em>Name</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Name</em>' attribute.
+	 * @see #getName()
+	 * @generated
+	 */
+	void setName(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Modified Time Weak</b></em>' attribute list.
+	 * The list contents are of type {@link java.lang.String}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Modified Time Weak</em>' attribute list isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Modified Time Weak</em>' attribute list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIAssociationRole_ModifiedTimeWeak()
+	 * @model unique="false"
+	 * @generated
+	 */
+	EList<String> getModifiedTimeWeak();
+
+	/**
+	 * Returns the value of the '<em><b>Object Creation</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Object Creation</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Object Creation</em>' attribute.
+	 * @see #setObjectCreation(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIAssociationRole_ObjectCreation()
+	 * @model
+	 * @generated
+	 */
+	String getObjectCreation();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IAssociationRole#getObjectCreation <em>Object Creation</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Object Creation</em>' attribute.
+	 * @see #getObjectCreation()
+	 * @generated
+	 */
+	void setObjectCreation(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Uml Dependency ID</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Uml Dependency ID</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Uml Dependency ID</em>' attribute.
+	 * @see #setUmlDependencyID(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIAssociationRole_UmlDependencyID()
+	 * @model
+	 * @generated
+	 */
+	String getUmlDependencyID();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IAssociationRole#getUmlDependencyID <em>Uml Dependency ID</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Uml Dependency ID</em>' attribute.
+	 * @see #getUmlDependencyID()
+	 * @generated
+	 */
+	void setUmlDependencyID(String value);
+
+} // IAssociationRole
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/IAttribute.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/IAttribute.java
new file mode 100755
index 0000000..eb4bdfa
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/IAttribute.java
@@ -0,0 +1,462 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel;
+
+import org.eclipse.emf.common.util.EList;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>IAttribute</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * </p>
+ * <ul>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IAttribute#getTypeOf <em>Type Of</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IAttribute#getProtection <em>Protection</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IAttribute#getStatic <em>Static</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IAttribute#getIsReference <em>Is Reference</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IAttribute#getIsConstant <em>Is Constant</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IAttribute#getStereotypes <em>Stereotypes</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IAttribute#getValueSpecifications <em>Value Specifications</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IAttribute#getProperties <em>Properties</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IAttribute#getDescription <em>Description</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IAttribute#getTags <em>Tags</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IAttribute#getDefaultValue <em>Default Value</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IAttribute#getDependencies <em>Dependencies</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IAttribute#getLastID <em>Last ID</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IAttribute#getAnnotations <em>Annotations</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IAttribute#getRequiremenTracabilityHandle <em>Requiremen Tracability Handle</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IAttribute#getCodeUpdateCGTime <em>Code Update CG Time</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IAttribute#getTheMainDiagram <em>The Main Diagram</em>}</li>
+ * </ul>
+ *
+ * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIAttribute()
+ * @model
+ * @generated
+ */
+public interface IAttribute extends IVariable, DependsOnType, M_subjectType, ValueType, ItemsType, M_pModelObjectType, End2_Type, End1_Type {
+	/**
+	 * Returns the value of the '<em><b>Type Of</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Type Of</em>' reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Type Of</em>' reference.
+	 * @see #setTypeOf(IUnit)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIAttribute_TypeOf()
+	 * @model
+	 * @generated
+	 */
+	IUnit getTypeOf();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IAttribute#getTypeOf <em>Type Of</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Type Of</em>' reference.
+	 * @see #getTypeOf()
+	 * @generated
+	 */
+	void setTypeOf(IUnit value);
+
+	/**
+	 * Returns the value of the '<em><b>Protection</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Protection</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Protection</em>' attribute.
+	 * @see #setProtection(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIAttribute_Protection()
+	 * @model
+	 * @generated
+	 */
+	String getProtection();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IAttribute#getProtection <em>Protection</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Protection</em>' attribute.
+	 * @see #getProtection()
+	 * @generated
+	 */
+	void setProtection(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Static</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Static</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Static</em>' attribute.
+	 * @see #setStatic(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIAttribute_Static()
+	 * @model
+	 * @generated
+	 */
+	String getStatic();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IAttribute#getStatic <em>Static</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Static</em>' attribute.
+	 * @see #getStatic()
+	 * @generated
+	 */
+	void setStatic(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Is Reference</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Is Reference</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Is Reference</em>' attribute.
+	 * @see #setIsReference(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIAttribute_IsReference()
+	 * @model
+	 * @generated
+	 */
+	String getIsReference();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IAttribute#getIsReference <em>Is Reference</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Is Reference</em>' attribute.
+	 * @see #getIsReference()
+	 * @generated
+	 */
+	void setIsReference(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Is Constant</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Is Constant</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Is Constant</em>' attribute.
+	 * @see #setIsConstant(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIAttribute_IsConstant()
+	 * @model
+	 * @generated
+	 */
+	String getIsConstant();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IAttribute#getIsConstant <em>Is Constant</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Is Constant</em>' attribute.
+	 * @see #getIsConstant()
+	 * @generated
+	 */
+	void setIsConstant(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Stereotypes</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Stereotypes</em>' reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Stereotypes</em>' reference.
+	 * @see #setStereotypes(IUnit)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIAttribute_Stereotypes()
+	 * @model
+	 * @generated
+	 */
+	IUnit getStereotypes();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IAttribute#getStereotypes <em>Stereotypes</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Stereotypes</em>' reference.
+	 * @see #getStereotypes()
+	 * @generated
+	 */
+	void setStereotypes(IUnit value);
+
+	/**
+	 * Returns the value of the '<em><b>Value Specifications</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Value Specifications</em>' containment reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Value Specifications</em>' containment reference.
+	 * @see #setValueSpecifications(ILiteralSpecification)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIAttribute_ValueSpecifications()
+	 * @model containment="true" resolveProxies="true"
+	 * @generated
+	 */
+	ILiteralSpecification getValueSpecifications();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IAttribute#getValueSpecifications <em>Value Specifications</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Value Specifications</em>' containment reference.
+	 * @see #getValueSpecifications()
+	 * @generated
+	 */
+	void setValueSpecifications(ILiteralSpecification value);
+
+	/**
+	 * Returns the value of the '<em><b>Properties</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Properties</em>' containment reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Properties</em>' containment reference.
+	 * @see #setProperties(IPropertyContainer)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIAttribute_Properties()
+	 * @model containment="true" resolveProxies="true"
+	 * @generated
+	 */
+	IPropertyContainer getProperties();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IAttribute#getProperties <em>Properties</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Properties</em>' containment reference.
+	 * @see #getProperties()
+	 * @generated
+	 */
+	void setProperties(IPropertyContainer value);
+
+	/**
+	 * Returns the value of the '<em><b>Description</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Description</em>' containment reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Description</em>' containment reference.
+	 * @see #setDescription(IDescription)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIAttribute_Description()
+	 * @model containment="true" resolveProxies="true"
+	 * @generated
+	 */
+	IDescription getDescription();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IAttribute#getDescription <em>Description</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Description</em>' containment reference.
+	 * @see #getDescription()
+	 * @generated
+	 */
+	void setDescription(IDescription value);
+
+	/**
+	 * Returns the value of the '<em><b>Tags</b></em>' containment reference list.
+	 * The list contents are of type {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITag}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Tags</em>' containment reference list isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Tags</em>' containment reference list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIAttribute_Tags()
+	 * @model containment="true" resolveProxies="true"
+	 * @generated
+	 */
+	EList<ITag> getTags();
+
+	/**
+	 * Returns the value of the '<em><b>Default Value</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Default Value</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Default Value</em>' attribute.
+	 * @see #setDefaultValue(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIAttribute_DefaultValue()
+	 * @model
+	 * @generated
+	 */
+	String getDefaultValue();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IAttribute#getDefaultValue <em>Default Value</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Default Value</em>' attribute.
+	 * @see #getDefaultValue()
+	 * @generated
+	 */
+	void setDefaultValue(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Dependencies</b></em>' containment reference list.
+	 * The list contents are of type {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IDependency}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Dependencies</em>' containment reference list isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Dependencies</em>' containment reference list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIAttribute_Dependencies()
+	 * @model containment="true" resolveProxies="true"
+	 * @generated
+	 */
+	EList<IDependency> getDependencies();
+
+	/**
+	 * Returns the value of the '<em><b>Last ID</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Last ID</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Last ID</em>' attribute.
+	 * @see #setLastID(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIAttribute_LastID()
+	 * @model
+	 * @generated
+	 */
+	String getLastID();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IAttribute#getLastID <em>Last ID</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Last ID</em>' attribute.
+	 * @see #getLastID()
+	 * @generated
+	 */
+	void setLastID(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Annotations</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Annotations</em>' containment reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Annotations</em>' containment reference.
+	 * @see #setAnnotations(IComment)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIAttribute_Annotations()
+	 * @model containment="true" resolveProxies="true"
+	 * @generated
+	 */
+	IComment getAnnotations();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IAttribute#getAnnotations <em>Annotations</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Annotations</em>' containment reference.
+	 * @see #getAnnotations()
+	 * @generated
+	 */
+	void setAnnotations(IComment value);
+
+	/**
+	 * Returns the value of the '<em><b>Requiremen Tracability Handle</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Requiremen Tracability Handle</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Requiremen Tracability Handle</em>' attribute.
+	 * @see #setRequiremenTracabilityHandle(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIAttribute_RequiremenTracabilityHandle()
+	 * @model
+	 * @generated
+	 */
+	String getRequiremenTracabilityHandle();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IAttribute#getRequiremenTracabilityHandle <em>Requiremen Tracability Handle</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Requiremen Tracability Handle</em>' attribute.
+	 * @see #getRequiremenTracabilityHandle()
+	 * @generated
+	 */
+	void setRequiremenTracabilityHandle(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Code Update CG Time</b></em>' attribute list.
+	 * The list contents are of type {@link java.lang.String}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Code Update CG Time</em>' attribute list isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Code Update CG Time</em>' attribute list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIAttribute_CodeUpdateCGTime()
+	 * @model unique="false"
+	 * @generated
+	 */
+	EList<String> getCodeUpdateCGTime();
+
+	/**
+	 * Returns the value of the '<em><b>The Main Diagram</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>The Main Diagram</em>' reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>The Main Diagram</em>' reference.
+	 * @see #setTheMainDiagram(IDiagram)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIAttribute_TheMainDiagram()
+	 * @model
+	 * @generated
+	 */
+	IDiagram getTheMainDiagram();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IAttribute#getTheMainDiagram <em>The Main Diagram</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>The Main Diagram</em>' reference.
+	 * @see #getTheMainDiagram()
+	 * @generated
+	 */
+	void setTheMainDiagram(IDiagram value);
+
+} // IAttribute
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/IBlock.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/IBlock.java
new file mode 100755
index 0000000..d049ef0
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/IBlock.java
@@ -0,0 +1,239 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel;
+
+import org.eclipse.emf.common.util.EList;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>IBlock</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * </p>
+ * <ul>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IBlock#getId <em>Id</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IBlock#getMyState <em>My State</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IBlock#getName <em>Name</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IBlock#getObjectCreation <em>Object Creation</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IBlock#getUmlDependencyID <em>Uml Dependency ID</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IBlock#getOtherClass <em>Other Class</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IBlock#getInverse <em>Inverse</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IBlock#getPartKind <em>Part Kind</em>}</li>
+ * </ul>
+ *
+ * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIBlock()
+ * @model
+ * @generated
+ */
+public interface IBlock extends AssociationsType, M_pModelObjectType, ToLinkType, End2_Type {
+	/**
+	 * Returns the value of the '<em><b>Id</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Id</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Id</em>' attribute.
+	 * @see #setId(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIBlock_Id()
+	 * @model
+	 * @generated
+	 */
+	String getId();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IBlock#getId <em>Id</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Id</em>' attribute.
+	 * @see #getId()
+	 * @generated
+	 */
+	void setId(String value);
+
+	/**
+	 * Returns the value of the '<em><b>My State</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>My State</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>My State</em>' attribute.
+	 * @see #setMyState(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIBlock_MyState()
+	 * @model
+	 * @generated
+	 */
+	String getMyState();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IBlock#getMyState <em>My State</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>My State</em>' attribute.
+	 * @see #getMyState()
+	 * @generated
+	 */
+	void setMyState(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Name</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Name</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Name</em>' attribute.
+	 * @see #setName(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIBlock_Name()
+	 * @model
+	 * @generated
+	 */
+	String getName();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IBlock#getName <em>Name</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Name</em>' attribute.
+	 * @see #getName()
+	 * @generated
+	 */
+	void setName(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Object Creation</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Object Creation</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Object Creation</em>' attribute.
+	 * @see #setObjectCreation(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIBlock_ObjectCreation()
+	 * @model
+	 * @generated
+	 */
+	String getObjectCreation();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IBlock#getObjectCreation <em>Object Creation</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Object Creation</em>' attribute.
+	 * @see #getObjectCreation()
+	 * @generated
+	 */
+	void setObjectCreation(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Uml Dependency ID</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Uml Dependency ID</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Uml Dependency ID</em>' attribute.
+	 * @see #setUmlDependencyID(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIBlock_UmlDependencyID()
+	 * @model
+	 * @generated
+	 */
+	String getUmlDependencyID();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IBlock#getUmlDependencyID <em>Uml Dependency ID</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Uml Dependency ID</em>' attribute.
+	 * @see #getUmlDependencyID()
+	 * @generated
+	 */
+	void setUmlDependencyID(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Other Class</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Other 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>Other Class</em>' reference.
+	 * @see #setOtherClass(IClass)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIBlock_OtherClass()
+	 * @model
+	 * @generated
+	 */
+	IClass getOtherClass();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IBlock#getOtherClass <em>Other Class</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Other Class</em>' reference.
+	 * @see #getOtherClass()
+	 * @generated
+	 */
+	void setOtherClass(IClass value);
+
+	/**
+	 * Returns the value of the '<em><b>Inverse</b></em>' reference list.
+	 * The list contents are of type {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UnknownType}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Inverse</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>Inverse</em>' reference list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIBlock_Inverse()
+	 * @model
+	 * @generated
+	 */
+	EList<UnknownType> getInverse();
+
+	/**
+	 * Returns the value of the '<em><b>Part Kind</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Part Kind</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Part Kind</em>' attribute.
+	 * @see #setPartKind(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIBlock_PartKind()
+	 * @model
+	 * @generated
+	 */
+	String getPartKind();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IBlock#getPartKind <em>Part Kind</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Part Kind</em>' attribute.
+	 * @see #getPartKind()
+	 * @generated
+	 */
+	void setPartKind(String value);
+
+} // IBlock
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/IBody.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/IBody.java
new file mode 100755
index 0000000..f1ad38b
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/IBody.java
@@ -0,0 +1,60 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel;
+
+import org.eclipse.emf.ecore.EObject;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>IBody</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * </p>
+ * <ul>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IBody#getBodyData <em>Body Data</em>}</li>
+ * </ul>
+ *
+ * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIBody()
+ * @model
+ * @generated
+ */
+public interface IBody extends EObject {
+	/**
+	 * Returns the value of the '<em><b>Body Data</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Body Data</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Body Data</em>' attribute.
+	 * @see #setBodyData(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIBody_BodyData()
+	 * @model
+	 * @generated
+	 */
+	String getBodyData();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IBody#getBodyData <em>Body Data</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Body Data</em>' attribute.
+	 * @see #getBodyData()
+	 * @generated
+	 */
+	void setBodyData(String value);
+
+} // IBody
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/IBranch.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/IBranch.java
new file mode 100755
index 0000000..8f925a4
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/IBranch.java
@@ -0,0 +1,283 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel;
+
+import org.eclipse.emf.common.util.EList;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>IBranch</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * </p>
+ * <ul>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IBranch#getId <em>Id</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IBranch#getName <em>Name</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IBranch#getModifiedTimeWeak <em>Modified Time Weak</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IBranch#getParent <em>Parent</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IBranch#getConnectorType <em>Connector Type</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IBranch#getMyState <em>My State</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IBranch#getStereotypes <em>Stereotypes</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IBranch#getCodeUpdateCGTime <em>Code Update CG Time</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IBranch#getObjectCreation <em>Object Creation</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IBranch#getUmlDependencyID <em>Uml Dependency ID</em>}</li>
+ * </ul>
+ *
+ * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIBranch()
+ * @model
+ * @generated
+ */
+public interface IBranch extends ItsTargetType {
+	/**
+	 * Returns the value of the '<em><b>Id</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Id</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Id</em>' attribute.
+	 * @see #setId(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIBranch_Id()
+	 * @model
+	 * @generated
+	 */
+	String getId();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IBranch#getId <em>Id</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Id</em>' attribute.
+	 * @see #getId()
+	 * @generated
+	 */
+	void setId(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Name</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Name</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Name</em>' attribute.
+	 * @see #setName(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIBranch_Name()
+	 * @model
+	 * @generated
+	 */
+	String getName();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IBranch#getName <em>Name</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Name</em>' attribute.
+	 * @see #getName()
+	 * @generated
+	 */
+	void setName(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Modified Time Weak</b></em>' attribute list.
+	 * The list contents are of type {@link java.lang.String}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Modified Time Weak</em>' attribute list isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Modified Time Weak</em>' attribute list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIBranch_ModifiedTimeWeak()
+	 * @model unique="false"
+	 * @generated
+	 */
+	EList<String> getModifiedTimeWeak();
+
+	/**
+	 * Returns the value of the '<em><b>Parent</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Parent</em>' reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Parent</em>' reference.
+	 * @see #setParent(IStateVertex)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIBranch_Parent()
+	 * @model
+	 * @generated
+	 */
+	IStateVertex getParent();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IBranch#getParent <em>Parent</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Parent</em>' reference.
+	 * @see #getParent()
+	 * @generated
+	 */
+	void setParent(IStateVertex value);
+
+	/**
+	 * Returns the value of the '<em><b>Connector Type</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Connector 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>Connector Type</em>' attribute.
+	 * @see #setConnectorType(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIBranch_ConnectorType()
+	 * @model
+	 * @generated
+	 */
+	String getConnectorType();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IBranch#getConnectorType <em>Connector Type</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Connector Type</em>' attribute.
+	 * @see #getConnectorType()
+	 * @generated
+	 */
+	void setConnectorType(String value);
+
+	/**
+	 * Returns the value of the '<em><b>My State</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>My State</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>My State</em>' attribute.
+	 * @see #setMyState(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIBranch_MyState()
+	 * @model
+	 * @generated
+	 */
+	String getMyState();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IBranch#getMyState <em>My State</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>My State</em>' attribute.
+	 * @see #getMyState()
+	 * @generated
+	 */
+	void setMyState(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Stereotypes</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Stereotypes</em>' reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Stereotypes</em>' reference.
+	 * @see #setStereotypes(IStereotype)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIBranch_Stereotypes()
+	 * @model
+	 * @generated
+	 */
+	IStereotype getStereotypes();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IBranch#getStereotypes <em>Stereotypes</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Stereotypes</em>' reference.
+	 * @see #getStereotypes()
+	 * @generated
+	 */
+	void setStereotypes(IStereotype value);
+
+	/**
+	 * Returns the value of the '<em><b>Code Update CG Time</b></em>' attribute list.
+	 * The list contents are of type {@link java.lang.String}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Code Update CG Time</em>' attribute list isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Code Update CG Time</em>' attribute list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIBranch_CodeUpdateCGTime()
+	 * @model unique="false"
+	 * @generated
+	 */
+	EList<String> getCodeUpdateCGTime();
+
+	/**
+	 * Returns the value of the '<em><b>Object Creation</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Object Creation</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Object Creation</em>' attribute.
+	 * @see #setObjectCreation(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIBranch_ObjectCreation()
+	 * @model
+	 * @generated
+	 */
+	String getObjectCreation();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IBranch#getObjectCreation <em>Object Creation</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Object Creation</em>' attribute.
+	 * @see #getObjectCreation()
+	 * @generated
+	 */
+	void setObjectCreation(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Uml Dependency ID</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Uml Dependency ID</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Uml Dependency ID</em>' attribute.
+	 * @see #setUmlDependencyID(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIBranch_UmlDependencyID()
+	 * @model
+	 * @generated
+	 */
+	String getUmlDependencyID();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IBranch#getUmlDependencyID <em>Uml Dependency ID</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Uml Dependency ID</em>' attribute.
+	 * @see #getUmlDependencyID()
+	 * @generated
+	 */
+	void setUmlDependencyID(String value);
+
+} // IBranch
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/ICallAction.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/ICallAction.java
new file mode 100755
index 0000000..387543d
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/ICallAction.java
@@ -0,0 +1,168 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel;
+
+import org.eclipse.emf.ecore.EObject;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>ICall Action</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * </p>
+ * <ul>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ICallAction#getId <em>Id</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ICallAction#getModifiedTimeWeak <em>Modified Time Weak</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ICallAction#getInterfaceItem <em>Interface Item</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ICallAction#getArgumentNames <em>Argument Names</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ICallAction#getArgumentValues <em>Argument Values</em>}</li>
+ * </ul>
+ *
+ * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getICallAction()
+ * @model
+ * @generated
+ */
+public interface ICallAction extends EObject {
+	/**
+	 * Returns the value of the '<em><b>Id</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Id</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Id</em>' attribute.
+	 * @see #setId(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getICallAction_Id()
+	 * @model
+	 * @generated
+	 */
+	String getId();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ICallAction#getId <em>Id</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Id</em>' attribute.
+	 * @see #getId()
+	 * @generated
+	 */
+	void setId(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Modified Time Weak</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Modified Time Weak</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Modified Time Weak</em>' attribute.
+	 * @see #setModifiedTimeWeak(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getICallAction_ModifiedTimeWeak()
+	 * @model
+	 * @generated
+	 */
+	String getModifiedTimeWeak();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ICallAction#getModifiedTimeWeak <em>Modified Time Weak</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Modified Time Weak</em>' attribute.
+	 * @see #getModifiedTimeWeak()
+	 * @generated
+	 */
+	void setModifiedTimeWeak(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Interface Item</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Interface Item</em>' reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Interface Item</em>' reference.
+	 * @see #setInterfaceItem(IConstructor)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getICallAction_InterfaceItem()
+	 * @model
+	 * @generated
+	 */
+	IConstructor getInterfaceItem();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ICallAction#getInterfaceItem <em>Interface Item</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Interface Item</em>' reference.
+	 * @see #getInterfaceItem()
+	 * @generated
+	 */
+	void setInterfaceItem(IConstructor value);
+
+	/**
+	 * Returns the value of the '<em><b>Argument Names</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Argument Names</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Argument Names</em>' attribute.
+	 * @see #setArgumentNames(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getICallAction_ArgumentNames()
+	 * @model
+	 * @generated
+	 */
+	String getArgumentNames();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ICallAction#getArgumentNames <em>Argument Names</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Argument Names</em>' attribute.
+	 * @see #getArgumentNames()
+	 * @generated
+	 */
+	void setArgumentNames(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Argument Values</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Argument Values</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Argument Values</em>' attribute.
+	 * @see #setArgumentValues(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getICallAction_ArgumentValues()
+	 * @model
+	 * @generated
+	 */
+	String getArgumentValues();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ICallAction#getArgumentValues <em>Argument Values</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Argument Values</em>' attribute.
+	 * @see #getArgumentValues()
+	 * @generated
+	 */
+	void setArgumentValues(String value);
+
+} // ICallAction
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/ICallOperation.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/ICallOperation.java
new file mode 100755
index 0000000..c14843e
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/ICallOperation.java
@@ -0,0 +1,86 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel;
+
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>ICall Operation</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * </p>
+ * <ul>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ICallOperation#getOperation <em>Operation</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ICallOperation#getTarget <em>Target</em>}</li>
+ * </ul>
+ *
+ * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getICallOperation()
+ * @model
+ * @generated
+ */
+public interface ICallOperation extends IState, ParentType, ItsTargetType, DependsOnType {
+	/**
+	 * Returns the value of the '<em><b>Operation</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>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>Operation</em>' reference.
+	 * @see #setOperation(OperationsType)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getICallOperation_Operation()
+	 * @model
+	 * @generated
+	 */
+	OperationsType getOperation();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ICallOperation#getOperation <em>Operation</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Operation</em>' reference.
+	 * @see #getOperation()
+	 * @generated
+	 */
+	void setOperation(OperationsType value);
+
+	/**
+	 * Returns the value of the '<em><b>Target</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Target</em>' reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Target</em>' reference.
+	 * @see #setTarget(AssociationsType)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getICallOperation_Target()
+	 * @model
+	 * @generated
+	 */
+	AssociationsType getTarget();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ICallOperation#getTarget <em>Target</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Target</em>' reference.
+	 * @see #getTarget()
+	 * @generated
+	 */
+	void setTarget(AssociationsType value);
+
+} // ICallOperation
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/IClass.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/IClass.java
new file mode 100755
index 0000000..38167e7
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/IClass.java
@@ -0,0 +1,711 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel;
+
+import org.eclipse.emf.common.util.EList;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>IClass</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * </p>
+ * <ul>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IClass#getWeakCGTime <em>Weak CG Time</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IClass#getStrongCGTime <em>Strong CG Time</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IClass#getMultiplicity <em>Multiplicity</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IClass#getClassModifier <em>Class Modifier</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IClass#getProperties <em>Properties</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IClass#getStereotypes <em>Stereotypes</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IClass#getOperations <em>Operations</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IClass#getInheritances <em>Inheritances</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IClass#getTheMainDiagram <em>The Main Diagram</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IClass#getAttrs <em>Attrs</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IClass#getTags <em>Tags</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IClass#getAssociations <em>Associations</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IClass#getDependencies <em>Dependencies</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IClass#getPorts <em>Ports</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IClass#getObjectLinks <em>Object Links</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IClass#getStateCharts <em>State Charts</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IClass#getItsStateChart <em>Its State Chart</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IClass#getTriggeredOperations <em>Triggered Operations</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IClass#getReceptions <em>Receptions</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IClass#getPrimitiveOperations <em>Primitive Operations</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IClass#getAnnotations <em>Annotations</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IClass#getDescription <em>Description</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IClass#getDeclaratives <em>Declaratives</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IClass#getAssociationElements <em>Association Elements</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IClass#getOwnerHandle <em>Owner Handle</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IClass#getHyperLinks <em>Hyper Links</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IClass#getRequiremenTracabilityHandle <em>Requiremen Tracability Handle</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IClass#getComponentFiles <em>Component Files</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IClass#getLinks <em>Links</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IClass#getComponents <em>Components</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IClass#getEventHandles <em>Event Handles</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IClass#getTemplateParameters <em>Template Parameters</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IClass#getCodeUpdateCGTime <em>Code Update CG Time</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IClass#getCmheader <em>Cmheader</em>}</li>
+ * </ul>
+ *
+ * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIClass()
+ * @model
+ * @generated
+ */
+public interface IClass extends IClassifier, DeclarativesType, M_pBaseType, DependsOnType, M_subjectType, ValueType, ConveyedType, TargetType, M_pModelObjectType {
+	/**
+	 * Returns the value of the '<em><b>Weak CG Time</b></em>' attribute list.
+	 * The list contents are of type {@link java.lang.String}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Weak CG Time</em>' attribute list isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Weak CG Time</em>' attribute list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIClass_WeakCGTime()
+	 * @model unique="false"
+	 * @generated
+	 */
+	EList<String> getWeakCGTime();
+
+	/**
+	 * Returns the value of the '<em><b>Strong CG Time</b></em>' attribute list.
+	 * The list contents are of type {@link java.lang.String}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Strong CG Time</em>' attribute list isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Strong CG Time</em>' attribute list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIClass_StrongCGTime()
+	 * @model unique="false"
+	 * @generated
+	 */
+	EList<String> getStrongCGTime();
+
+	/**
+	 * Returns the value of the '<em><b>Multiplicity</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Multiplicity</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Multiplicity</em>' attribute.
+	 * @see #setMultiplicity(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIClass_Multiplicity()
+	 * @model
+	 * @generated
+	 */
+	String getMultiplicity();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IClass#getMultiplicity <em>Multiplicity</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Multiplicity</em>' attribute.
+	 * @see #getMultiplicity()
+	 * @generated
+	 */
+	void setMultiplicity(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Class Modifier</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Class Modifier</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Class Modifier</em>' attribute.
+	 * @see #setClassModifier(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIClass_ClassModifier()
+	 * @model
+	 * @generated
+	 */
+	String getClassModifier();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IClass#getClassModifier <em>Class Modifier</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Class Modifier</em>' attribute.
+	 * @see #getClassModifier()
+	 * @generated
+	 */
+	void setClassModifier(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Properties</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Properties</em>' containment reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Properties</em>' containment reference.
+	 * @see #setProperties(PropertiesType)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIClass_Properties()
+	 * @model containment="true" resolveProxies="true"
+	 * @generated
+	 */
+	PropertiesType getProperties();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IClass#getProperties <em>Properties</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Properties</em>' containment reference.
+	 * @see #getProperties()
+	 * @generated
+	 */
+	void setProperties(PropertiesType value);
+
+	/**
+	 * Returns the value of the '<em><b>Stereotypes</b></em>' reference list.
+	 * The list contents are of type {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IUnit}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Stereotypes</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>Stereotypes</em>' reference list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIClass_Stereotypes()
+	 * @model
+	 * @generated
+	 */
+	EList<IUnit> getStereotypes();
+
+	/**
+	 * Returns the value of the '<em><b>Operations</b></em>' containment reference list.
+	 * The list contents are of type {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.OperationsType}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Operations</em>' containment reference list isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Operations</em>' containment reference list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIClass_Operations()
+	 * @model containment="true" resolveProxies="true"
+	 * @generated
+	 */
+	EList<OperationsType> getOperations();
+
+	/**
+	 * Returns the value of the '<em><b>Inheritances</b></em>' containment reference list.
+	 * The list contents are of type {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IModelElement}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Inheritances</em>' containment reference list isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Inheritances</em>' containment reference list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIClass_Inheritances()
+	 * @model containment="true" resolveProxies="true"
+	 * @generated
+	 */
+	EList<IModelElement> getInheritances();
+
+	/**
+	 * Returns the value of the '<em><b>The Main Diagram</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>The Main Diagram</em>' reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>The Main Diagram</em>' reference.
+	 * @see #setTheMainDiagram(TheMainDiagramType)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIClass_TheMainDiagram()
+	 * @model
+	 * @generated
+	 */
+	TheMainDiagramType getTheMainDiagram();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IClass#getTheMainDiagram <em>The Main Diagram</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>The Main Diagram</em>' reference.
+	 * @see #getTheMainDiagram()
+	 * @generated
+	 */
+	void setTheMainDiagram(TheMainDiagramType value);
+
+	/**
+	 * Returns the value of the '<em><b>Attrs</b></em>' containment reference list.
+	 * The list contents are of type {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IUnit}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Attrs</em>' containment reference list isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Attrs</em>' containment reference list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIClass_Attrs()
+	 * @model containment="true" resolveProxies="true"
+	 * @generated
+	 */
+	EList<IUnit> getAttrs();
+
+	/**
+	 * Returns the value of the '<em><b>Tags</b></em>' containment reference list.
+	 * The list contents are of type {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITag}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Tags</em>' containment reference list isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Tags</em>' containment reference list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIClass_Tags()
+	 * @model containment="true" resolveProxies="true"
+	 * @generated
+	 */
+	EList<ITag> getTags();
+
+	/**
+	 * Returns the value of the '<em><b>Associations</b></em>' containment reference list.
+	 * The list contents are of type {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.AssociationsType}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Associations</em>' containment reference list isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Associations</em>' containment reference list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIClass_Associations()
+	 * @model containment="true" resolveProxies="true"
+	 * @generated
+	 */
+	EList<AssociationsType> getAssociations();
+
+	/**
+	 * Returns the value of the '<em><b>Dependencies</b></em>' containment reference list.
+	 * The list contents are of type {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IDependency}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Dependencies</em>' containment reference list isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Dependencies</em>' containment reference list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIClass_Dependencies()
+	 * @model containment="true" resolveProxies="true"
+	 * @generated
+	 */
+	EList<IDependency> getDependencies();
+
+	/**
+	 * Returns the value of the '<em><b>Ports</b></em>' containment reference list.
+	 * The list contents are of type {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IRelation}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Ports</em>' containment reference list isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Ports</em>' containment reference list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIClass_Ports()
+	 * @model containment="true" resolveProxies="true"
+	 * @generated
+	 */
+	EList<IRelation> getPorts();
+
+	/**
+	 * Returns the value of the '<em><b>Object Links</b></em>' containment reference list.
+	 * The list contents are of type {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ObjectLinksType}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Object Links</em>' containment reference list isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Object Links</em>' containment reference list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIClass_ObjectLinks()
+	 * @model containment="true" resolveProxies="true"
+	 * @generated
+	 */
+	EList<ObjectLinksType> getObjectLinks();
+
+	/**
+	 * Returns the value of the '<em><b>State Charts</b></em>' containment reference list.
+	 * The list contents are of type {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.NestedStateChartType}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>State Charts</em>' containment reference list isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>State Charts</em>' containment reference list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIClass_StateCharts()
+	 * @model containment="true" resolveProxies="true"
+	 * @generated
+	 */
+	EList<NestedStateChartType> getStateCharts();
+
+	/**
+	 * Returns the value of the '<em><b>Its State Chart</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Its State Chart</em>' reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Its State Chart</em>' reference.
+	 * @see #setItsStateChart(ItsStateChartType)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIClass_ItsStateChart()
+	 * @model
+	 * @generated
+	 */
+	ItsStateChartType getItsStateChart();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IClass#getItsStateChart <em>Its State Chart</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Its State Chart</em>' reference.
+	 * @see #getItsStateChart()
+	 * @generated
+	 */
+	void setItsStateChart(ItsStateChartType value);
+
+	/**
+	 * Returns the value of the '<em><b>Triggered Operations</b></em>' reference list.
+	 * The list contents are of type {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UnknownType}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Triggered Operations</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>Triggered Operations</em>' reference list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIClass_TriggeredOperations()
+	 * @model
+	 * @generated
+	 */
+	EList<UnknownType> getTriggeredOperations();
+
+	/**
+	 * Returns the value of the '<em><b>Receptions</b></em>' reference list.
+	 * The list contents are of type {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UnknownType}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Receptions</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>Receptions</em>' reference list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIClass_Receptions()
+	 * @model
+	 * @generated
+	 */
+	EList<UnknownType> getReceptions();
+
+	/**
+	 * Returns the value of the '<em><b>Primitive Operations</b></em>' containment reference list.
+	 * The list contents are of type {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.OperationsType}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Primitive Operations</em>' containment reference list isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Primitive Operations</em>' containment reference list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIClass_PrimitiveOperations()
+	 * @model containment="true" resolveProxies="true"
+	 * @generated
+	 */
+	EList<OperationsType> getPrimitiveOperations();
+
+	/**
+	 * Returns the value of the '<em><b>Annotations</b></em>' containment reference list.
+	 * The list contents are of type {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IUnit}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Annotations</em>' containment reference list isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Annotations</em>' containment reference list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIClass_Annotations()
+	 * @model containment="true" resolveProxies="true"
+	 * @generated
+	 */
+	EList<IUnit> getAnnotations();
+
+	/**
+	 * Returns the value of the '<em><b>Description</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Description</em>' containment reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Description</em>' containment reference.
+	 * @see #setDescription(DescriptionType)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIClass_Description()
+	 * @model containment="true" resolveProxies="true"
+	 * @generated
+	 */
+	DescriptionType getDescription();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IClass#getDescription <em>Description</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Description</em>' containment reference.
+	 * @see #getDescription()
+	 * @generated
+	 */
+	void setDescription(DescriptionType value);
+
+	/**
+	 * Returns the value of the '<em><b>Declaratives</b></em>' containment reference list.
+	 * The list contents are of type {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.DeclarativesType}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Declaratives</em>' containment reference list isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Declaratives</em>' containment reference list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIClass_Declaratives()
+	 * @model containment="true" resolveProxies="true"
+	 * @generated
+	 */
+	EList<DeclarativesType> getDeclaratives();
+
+	/**
+	 * Returns the value of the '<em><b>Association Elements</b></em>' reference list.
+	 * The list contents are of type {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UnknownType}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Association Elements</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>Association Elements</em>' reference list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIClass_AssociationElements()
+	 * @model
+	 * @generated
+	 */
+	EList<UnknownType> getAssociationElements();
+
+	/**
+	 * Returns the value of the '<em><b>Owner Handle</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Owner Handle</em>' reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Owner Handle</em>' reference.
+	 * @see #setOwnerHandle(ISubsystem)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIClass_OwnerHandle()
+	 * @model
+	 * @generated
+	 */
+	ISubsystem getOwnerHandle();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IClass#getOwnerHandle <em>Owner Handle</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Owner Handle</em>' reference.
+	 * @see #getOwnerHandle()
+	 * @generated
+	 */
+	void setOwnerHandle(ISubsystem value);
+
+	/**
+	 * Returns the value of the '<em><b>Hyper Links</b></em>' containment reference list.
+	 * The list contents are of type {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMHyperLink}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Hyper Links</em>' containment reference list isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Hyper Links</em>' containment reference list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIClass_HyperLinks()
+	 * @model containment="true" resolveProxies="true"
+	 * @generated
+	 */
+	EList<IMHyperLink> getHyperLinks();
+
+	/**
+	 * Returns the value of the '<em><b>Requiremen Tracability Handle</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Requiremen Tracability Handle</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Requiremen Tracability Handle</em>' attribute.
+	 * @see #setRequiremenTracabilityHandle(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIClass_RequiremenTracabilityHandle()
+	 * @model
+	 * @generated
+	 */
+	String getRequiremenTracabilityHandle();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IClass#getRequiremenTracabilityHandle <em>Requiremen Tracability Handle</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Requiremen Tracability Handle</em>' attribute.
+	 * @see #getRequiremenTracabilityHandle()
+	 * @generated
+	 */
+	void setRequiremenTracabilityHandle(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Component Files</b></em>' containment reference list.
+	 * The list contents are of type {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IFile}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Component Files</em>' containment reference list isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Component Files</em>' containment reference list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIClass_ComponentFiles()
+	 * @model containment="true" resolveProxies="true"
+	 * @generated
+	 */
+	EList<IFile> getComponentFiles();
+
+	/**
+	 * Returns the value of the '<em><b>Links</b></em>' containment reference list.
+	 * The list contents are of type {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.LinksType}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Links</em>' containment reference list isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Links</em>' containment reference list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIClass_Links()
+	 * @model containment="true" resolveProxies="true"
+	 * @generated
+	 */
+	EList<LinksType> getLinks();
+
+	/**
+	 * Returns the value of the '<em><b>Components</b></em>' containment reference list.
+	 * The list contents are of type {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ComponentsType}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Components</em>' containment reference list isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Components</em>' containment reference list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIClass_Components()
+	 * @model containment="true" resolveProxies="true"
+	 * @generated
+	 */
+	EList<ComponentsType> getComponents();
+
+	/**
+	 * Returns the value of the '<em><b>Event Handles</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Event Handles</em>' reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Event Handles</em>' reference.
+	 * @see #setEventHandles(IInterfaceItem)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIClass_EventHandles()
+	 * @model
+	 * @generated
+	 */
+	IInterfaceItem getEventHandles();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IClass#getEventHandles <em>Event Handles</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Event Handles</em>' reference.
+	 * @see #getEventHandles()
+	 * @generated
+	 */
+	void setEventHandles(IInterfaceItem value);
+
+	/**
+	 * Returns the value of the '<em><b>Template Parameters</b></em>' containment reference list.
+	 * The list contents are of type {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITemplateParameter}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Template Parameters</em>' containment reference list isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Template Parameters</em>' containment reference list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIClass_TemplateParameters()
+	 * @model containment="true" resolveProxies="true"
+	 * @generated
+	 */
+	EList<ITemplateParameter> getTemplateParameters();
+
+	/**
+	 * Returns the value of the '<em><b>Code Update CG Time</b></em>' attribute list.
+	 * The list contents are of type {@link java.lang.String}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Code Update CG Time</em>' attribute list isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Code Update CG Time</em>' attribute list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIClass_CodeUpdateCGTime()
+	 * @model unique="false"
+	 * @generated
+	 */
+	EList<String> getCodeUpdateCGTime();
+
+	/**
+	 * Returns the value of the '<em><b>Cmheader</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Cmheader</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Cmheader</em>' attribute.
+	 * @see #setCmheader(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIClass_Cmheader()
+	 * @model
+	 * @generated
+	 */
+	String getCmheader();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IClass#getCmheader <em>Cmheader</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Cmheader</em>' attribute.
+	 * @see #getCmheader()
+	 * @generated
+	 */
+	void setCmheader(String value);
+
+} // IClass
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/IClassHandle.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/IClassHandle.java
new file mode 100755
index 0000000..2b36731
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/IClassHandle.java
@@ -0,0 +1,194 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel;
+
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>IClass Handle</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * </p>
+ * <ul>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IClassHandle#getM2Class <em>M2 Class</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IClassHandle#getId <em>Id</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IClassHandle#getFilename <em>Filename</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IClassHandle#getSubsystem <em>Subsystem</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IClassHandle#getClass_ <em>Class</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IClassHandle#getName <em>Name</em>}</li>
+ * </ul>
+ *
+ * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIClassHandle()
+ * @model
+ * @generated
+ */
+public interface IClassHandle extends M_pBaseType {
+	/**
+	 * Returns the value of the '<em><b>M2 Class</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>M2 Class</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>M2 Class</em>' attribute.
+	 * @see #setM2Class(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIClassHandle_M2Class()
+	 * @model
+	 * @generated
+	 */
+	String getM2Class();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IClassHandle#getM2Class <em>M2 Class</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>M2 Class</em>' attribute.
+	 * @see #getM2Class()
+	 * @generated
+	 */
+	void setM2Class(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Id</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Id</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Id</em>' attribute.
+	 * @see #setId(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIClassHandle_Id()
+	 * @model
+	 * @generated
+	 */
+	String getId();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IClassHandle#getId <em>Id</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Id</em>' attribute.
+	 * @see #getId()
+	 * @generated
+	 */
+	void setId(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Filename</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Filename</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Filename</em>' attribute.
+	 * @see #setFilename(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIClassHandle_Filename()
+	 * @model
+	 * @generated
+	 */
+	String getFilename();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IClassHandle#getFilename <em>Filename</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Filename</em>' attribute.
+	 * @see #getFilename()
+	 * @generated
+	 */
+	void setFilename(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Subsystem</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Subsystem</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Subsystem</em>' attribute.
+	 * @see #setSubsystem(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIClassHandle_Subsystem()
+	 * @model
+	 * @generated
+	 */
+	String getSubsystem();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IClassHandle#getSubsystem <em>Subsystem</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Subsystem</em>' attribute.
+	 * @see #getSubsystem()
+	 * @generated
+	 */
+	void setSubsystem(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Class</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Class</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Class</em>' attribute.
+	 * @see #setClass(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIClassHandle_Class()
+	 * @model
+	 * @generated
+	 */
+	String getClass_();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IClassHandle#getClass_ <em>Class</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Class</em>' attribute.
+	 * @see #getClass_()
+	 * @generated
+	 */
+	void setClass(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Name</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Name</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Name</em>' attribute.
+	 * @see #setName(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIClassHandle_Name()
+	 * @model
+	 * @generated
+	 */
+	String getName();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IClassHandle#getName <em>Name</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Name</em>' attribute.
+	 * @see #getName()
+	 * @generated
+	 */
+	void setName(String value);
+
+} // IClassHandle
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/IClassInstance.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/IClassInstance.java
new file mode 100755
index 0000000..76c40ea
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/IClassInstance.java
@@ -0,0 +1,50 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel;
+
+import org.eclipse.emf.common.util.EList;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>IClass Instance</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * </p>
+ * <ul>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IClassInstance#getInverse <em>Inverse</em>}</li>
+ * </ul>
+ *
+ * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIClassInstance()
+ * @model
+ * @generated
+ */
+public interface IClassInstance extends LinksType, M_pModelObjectType {
+	/**
+	 * Returns the value of the '<em><b>Inverse</b></em>' reference list.
+	 * The list contents are of type {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UnknownType}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Inverse</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>Inverse</em>' reference list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIClassInstance_Inverse()
+	 * @model
+	 * @generated
+	 */
+	EList<UnknownType> getInverse();
+
+} // IClassInstance
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/IClassifier.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/IClassifier.java
new file mode 100755
index 0000000..65fefc1
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/IClassifier.java
@@ -0,0 +1,27 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel;
+
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>IClassifier</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ *
+ * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIClassifier()
+ * @model
+ * @generated
+ */
+public interface IClassifier extends IUnit {
+} // IClassifier
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/IClassifierRole.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/IClassifierRole.java
new file mode 100755
index 0000000..768fbe9
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/IClassifierRole.java
@@ -0,0 +1,364 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel;
+
+import org.eclipse.emf.common.util.EList;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>IClassifier Role</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * </p>
+ * <ul>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IClassifierRole#getId <em>Id</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IClassifierRole#getName <em>Name</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IClassifierRole#getM_eRoleType <em>MeRole Type</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IClassifierRole#getMyState <em>My State</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IClassifierRole#getM_pBase <em>MpBase</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IClassifierRole#getM_instance <em>Minstance</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IClassifierRole#getProperties <em>Properties</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IClassifierRole#getModifiedTimeWeak <em>Modified Time Weak</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IClassifierRole#getM_pRefSD <em>MpRef SD</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IClassifierRole#getCodeUpdateCGTime <em>Code Update CG Time</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IClassifierRole#getStereotypes <em>Stereotypes</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IClassifierRole#getObjectCreation <em>Object Creation</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IClassifierRole#getUmlDependencyID <em>Uml Dependency ID</em>}</li>
+ * </ul>
+ *
+ * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIClassifierRole()
+ * @model
+ * @generated
+ */
+public interface IClassifierRole extends IModelElement {
+	/**
+	 * Returns the value of the '<em><b>Id</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Id</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Id</em>' attribute.
+	 * @see #setId(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIClassifierRole_Id()
+	 * @model
+	 * @generated
+	 */
+	String getId();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IClassifierRole#getId <em>Id</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Id</em>' attribute.
+	 * @see #getId()
+	 * @generated
+	 */
+	void setId(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Name</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Name</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Name</em>' attribute.
+	 * @see #setName(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIClassifierRole_Name()
+	 * @model
+	 * @generated
+	 */
+	String getName();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IClassifierRole#getName <em>Name</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Name</em>' attribute.
+	 * @see #getName()
+	 * @generated
+	 */
+	void setName(String value);
+
+	/**
+	 * Returns the value of the '<em><b>MeRole Type</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>MeRole 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>MeRole Type</em>' attribute.
+	 * @see #setM_eRoleType(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIClassifierRole_M_eRoleType()
+	 * @model
+	 * @generated
+	 */
+	String getM_eRoleType();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IClassifierRole#getM_eRoleType <em>MeRole Type</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>MeRole Type</em>' attribute.
+	 * @see #getM_eRoleType()
+	 * @generated
+	 */
+	void setM_eRoleType(String value);
+
+	/**
+	 * Returns the value of the '<em><b>My State</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>My State</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>My State</em>' attribute.
+	 * @see #setMyState(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIClassifierRole_MyState()
+	 * @model
+	 * @generated
+	 */
+	String getMyState();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IClassifierRole#getMyState <em>My State</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>My State</em>' attribute.
+	 * @see #getMyState()
+	 * @generated
+	 */
+	void setMyState(String value);
+
+	/**
+	 * Returns the value of the '<em><b>MpBase</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>MpBase</em>' reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>MpBase</em>' reference.
+	 * @see #setM_pBase(M_pBaseType)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIClassifierRole_M_pBase()
+	 * @model
+	 * @generated
+	 */
+	M_pBaseType getM_pBase();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IClassifierRole#getM_pBase <em>MpBase</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>MpBase</em>' reference.
+	 * @see #getM_pBase()
+	 * @generated
+	 */
+	void setM_pBase(M_pBaseType value);
+
+	/**
+	 * Returns the value of the '<em><b>Minstance</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Minstance</em>' reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Minstance</em>' reference.
+	 * @see #setM_instance(AssociationsType)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIClassifierRole_M_instance()
+	 * @model
+	 * @generated
+	 */
+	AssociationsType getM_instance();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IClassifierRole#getM_instance <em>Minstance</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Minstance</em>' reference.
+	 * @see #getM_instance()
+	 * @generated
+	 */
+	void setM_instance(AssociationsType value);
+
+	/**
+	 * Returns the value of the '<em><b>Properties</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Properties</em>' containment reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Properties</em>' containment reference.
+	 * @see #setProperties(IPropertyContainer)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIClassifierRole_Properties()
+	 * @model containment="true" resolveProxies="true"
+	 * @generated
+	 */
+	IPropertyContainer getProperties();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IClassifierRole#getProperties <em>Properties</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Properties</em>' containment reference.
+	 * @see #getProperties()
+	 * @generated
+	 */
+	void setProperties(IPropertyContainer value);
+
+	/**
+	 * Returns the value of the '<em><b>Modified Time Weak</b></em>' attribute list.
+	 * The list contents are of type {@link java.lang.String}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Modified Time Weak</em>' attribute list isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Modified Time Weak</em>' attribute list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIClassifierRole_ModifiedTimeWeak()
+	 * @model unique="false"
+	 * @generated
+	 */
+	EList<String> getModifiedTimeWeak();
+
+	/**
+	 * Returns the value of the '<em><b>MpRef SD</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>MpRef SD</em>' reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>MpRef SD</em>' reference.
+	 * @see #setM_pRefSD(IMSC)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIClassifierRole_M_pRefSD()
+	 * @model
+	 * @generated
+	 */
+	IMSC getM_pRefSD();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IClassifierRole#getM_pRefSD <em>MpRef SD</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>MpRef SD</em>' reference.
+	 * @see #getM_pRefSD()
+	 * @generated
+	 */
+	void setM_pRefSD(IMSC value);
+
+	/**
+	 * Returns the value of the '<em><b>Code Update CG Time</b></em>' attribute list.
+	 * The list contents are of type {@link java.lang.String}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Code Update CG Time</em>' attribute list isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Code Update CG Time</em>' attribute list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIClassifierRole_CodeUpdateCGTime()
+	 * @model unique="false"
+	 * @generated
+	 */
+	EList<String> getCodeUpdateCGTime();
+
+	/**
+	 * Returns the value of the '<em><b>Stereotypes</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Stereotypes</em>' reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Stereotypes</em>' reference.
+	 * @see #setStereotypes(IStereotype)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIClassifierRole_Stereotypes()
+	 * @model
+	 * @generated
+	 */
+	IStereotype getStereotypes();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IClassifierRole#getStereotypes <em>Stereotypes</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Stereotypes</em>' reference.
+	 * @see #getStereotypes()
+	 * @generated
+	 */
+	void setStereotypes(IStereotype value);
+
+	/**
+	 * Returns the value of the '<em><b>Object Creation</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Object Creation</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Object Creation</em>' attribute.
+	 * @see #setObjectCreation(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIClassifierRole_ObjectCreation()
+	 * @model
+	 * @generated
+	 */
+	String getObjectCreation();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IClassifierRole#getObjectCreation <em>Object Creation</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Object Creation</em>' attribute.
+	 * @see #getObjectCreation()
+	 * @generated
+	 */
+	void setObjectCreation(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Uml Dependency ID</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Uml Dependency ID</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Uml Dependency ID</em>' attribute.
+	 * @see #setUmlDependencyID(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIClassifierRole_UmlDependencyID()
+	 * @model
+	 * @generated
+	 */
+	String getUmlDependencyID();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IClassifierRole#getUmlDependencyID <em>Uml Dependency ID</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Uml Dependency ID</em>' attribute.
+	 * @see #getUmlDependencyID()
+	 * @generated
+	 */
+	void setUmlDependencyID(String value);
+
+} // IClassifierRole
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/ICodeGenConfigInfo.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/ICodeGenConfigInfo.java
new file mode 100755
index 0000000..e982647
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/ICodeGenConfigInfo.java
@@ -0,0 +1,949 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel;
+
+import org.eclipse.emf.common.util.EList;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>ICode Gen Config Info</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * </p>
+ * <ul>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ICodeGenConfigInfo#getId <em>Id</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ICodeGenConfigInfo#getMyState <em>My State</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ICodeGenConfigInfo#getName <em>Name</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ICodeGenConfigInfo#getModifiedTimeWeak <em>Modified Time Weak</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ICodeGenConfigInfo#getHyperLinks <em>Hyper Links</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ICodeGenConfigInfo#getScopeType <em>Scope Type</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ICodeGenConfigInfo#getLibraries <em>Libraries</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ICodeGenConfigInfo#getAdditionalSources <em>Additional Sources</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ICodeGenConfigInfo#getStandardHeaders <em>Standard Headers</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ICodeGenConfigInfo#getIncludePath <em>Include Path</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ICodeGenConfigInfo#getTargetMain <em>Target Main</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ICodeGenConfigInfo#getInstrumentation <em>Instrumentation</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ICodeGenConfigInfo#getTimeModel <em>Time Model</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ICodeGenConfigInfo#getM_generateActors <em>Mgenerate Actors</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ICodeGenConfigInfo#getStatechartImplementation <em>Statechart Implementation</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ICodeGenConfigInfo#getInitializationCode <em>Initialization Code</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ICodeGenConfigInfo#getChecksList <em>Checks List</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ICodeGenConfigInfo#getScopeElements <em>Scope Elements</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ICodeGenConfigInfo#getRoot <em>Root</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ICodeGenConfigInfo#getWeakCGTime <em>Weak CG Time</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ICodeGenConfigInfo#getStrongCGTime <em>Strong CG Time</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ICodeGenConfigInfo#getM_allInAnimScope <em>Mall In Anim Scope</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ICodeGenConfigInfo#getM_generateUsecases <em>Mgenerate Usecases</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ICodeGenConfigInfo#getDependencies <em>Dependencies</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ICodeGenConfigInfo#getInitialInstances <em>Initial Instances</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ICodeGenConfigInfo#getProperties <em>Properties</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ICodeGenConfigInfo#getAnnotations <em>Annotations</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ICodeGenConfigInfo#getLastID <em>Last ID</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ICodeGenConfigInfo#getDescription <em>Description</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ICodeGenConfigInfo#getTags <em>Tags</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ICodeGenConfigInfo#getCmheader <em>Cmheader</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ICodeGenConfigInfo#getRequiremenTracabilityHandle <em>Requiremen Tracability Handle</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ICodeGenConfigInfo#getStereotypes <em>Stereotypes</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ICodeGenConfigInfo#getCodeUpdateCGTime <em>Code Update CG Time</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ICodeGenConfigInfo#getAnimScopeElements <em>Anim Scope Elements</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ICodeGenConfigInfo#getEmbededFiles <em>Embeded Files</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ICodeGenConfigInfo#getObjectCreation <em>Object Creation</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ICodeGenConfigInfo#getUmlDependencyID <em>Uml Dependency ID</em>}</li>
+ * </ul>
+ *
+ * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getICodeGenConfigInfo()
+ * @model
+ * @generated
+ */
+public interface ICodeGenConfigInfo extends DependsOnType {
+	/**
+	 * Returns the value of the '<em><b>Id</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Id</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Id</em>' attribute.
+	 * @see #setId(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getICodeGenConfigInfo_Id()
+	 * @model
+	 * @generated
+	 */
+	String getId();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ICodeGenConfigInfo#getId <em>Id</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Id</em>' attribute.
+	 * @see #getId()
+	 * @generated
+	 */
+	void setId(String value);
+
+	/**
+	 * Returns the value of the '<em><b>My State</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>My State</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>My State</em>' attribute.
+	 * @see #setMyState(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getICodeGenConfigInfo_MyState()
+	 * @model
+	 * @generated
+	 */
+	String getMyState();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ICodeGenConfigInfo#getMyState <em>My State</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>My State</em>' attribute.
+	 * @see #getMyState()
+	 * @generated
+	 */
+	void setMyState(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Name</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Name</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Name</em>' attribute.
+	 * @see #setName(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getICodeGenConfigInfo_Name()
+	 * @model
+	 * @generated
+	 */
+	String getName();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ICodeGenConfigInfo#getName <em>Name</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Name</em>' attribute.
+	 * @see #getName()
+	 * @generated
+	 */
+	void setName(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Modified Time Weak</b></em>' attribute list.
+	 * The list contents are of type {@link java.lang.String}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Modified Time Weak</em>' attribute list isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Modified Time Weak</em>' attribute list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getICodeGenConfigInfo_ModifiedTimeWeak()
+	 * @model unique="false"
+	 * @generated
+	 */
+	EList<String> getModifiedTimeWeak();
+
+	/**
+	 * Returns the value of the '<em><b>Hyper Links</b></em>' containment reference list.
+	 * The list contents are of type {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMHyperLink}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Hyper Links</em>' containment reference list isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Hyper Links</em>' containment reference list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getICodeGenConfigInfo_HyperLinks()
+	 * @model containment="true" resolveProxies="true"
+	 * @generated
+	 */
+	EList<IMHyperLink> getHyperLinks();
+
+	/**
+	 * Returns the value of the '<em><b>Scope Type</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Scope 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>Scope Type</em>' attribute.
+	 * @see #setScopeType(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getICodeGenConfigInfo_ScopeType()
+	 * @model
+	 * @generated
+	 */
+	String getScopeType();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ICodeGenConfigInfo#getScopeType <em>Scope Type</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Scope Type</em>' attribute.
+	 * @see #getScopeType()
+	 * @generated
+	 */
+	void setScopeType(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Libraries</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Libraries</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Libraries</em>' attribute.
+	 * @see #setLibraries(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getICodeGenConfigInfo_Libraries()
+	 * @model
+	 * @generated
+	 */
+	String getLibraries();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ICodeGenConfigInfo#getLibraries <em>Libraries</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Libraries</em>' attribute.
+	 * @see #getLibraries()
+	 * @generated
+	 */
+	void setLibraries(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Additional Sources</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Additional Sources</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Additional Sources</em>' attribute.
+	 * @see #setAdditionalSources(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getICodeGenConfigInfo_AdditionalSources()
+	 * @model
+	 * @generated
+	 */
+	String getAdditionalSources();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ICodeGenConfigInfo#getAdditionalSources <em>Additional Sources</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Additional Sources</em>' attribute.
+	 * @see #getAdditionalSources()
+	 * @generated
+	 */
+	void setAdditionalSources(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Standard Headers</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Standard Headers</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Standard Headers</em>' attribute.
+	 * @see #setStandardHeaders(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getICodeGenConfigInfo_StandardHeaders()
+	 * @model
+	 * @generated
+	 */
+	String getStandardHeaders();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ICodeGenConfigInfo#getStandardHeaders <em>Standard Headers</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Standard Headers</em>' attribute.
+	 * @see #getStandardHeaders()
+	 * @generated
+	 */
+	void setStandardHeaders(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Include Path</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Include Path</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Include Path</em>' attribute.
+	 * @see #setIncludePath(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getICodeGenConfigInfo_IncludePath()
+	 * @model
+	 * @generated
+	 */
+	String getIncludePath();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ICodeGenConfigInfo#getIncludePath <em>Include Path</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Include Path</em>' attribute.
+	 * @see #getIncludePath()
+	 * @generated
+	 */
+	void setIncludePath(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Target Main</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Target Main</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Target Main</em>' attribute.
+	 * @see #setTargetMain(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getICodeGenConfigInfo_TargetMain()
+	 * @model
+	 * @generated
+	 */
+	String getTargetMain();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ICodeGenConfigInfo#getTargetMain <em>Target Main</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Target Main</em>' attribute.
+	 * @see #getTargetMain()
+	 * @generated
+	 */
+	void setTargetMain(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Instrumentation</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Instrumentation</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Instrumentation</em>' attribute.
+	 * @see #setInstrumentation(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getICodeGenConfigInfo_Instrumentation()
+	 * @model
+	 * @generated
+	 */
+	String getInstrumentation();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ICodeGenConfigInfo#getInstrumentation <em>Instrumentation</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Instrumentation</em>' attribute.
+	 * @see #getInstrumentation()
+	 * @generated
+	 */
+	void setInstrumentation(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Time Model</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Time Model</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Time Model</em>' attribute.
+	 * @see #setTimeModel(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getICodeGenConfigInfo_TimeModel()
+	 * @model
+	 * @generated
+	 */
+	String getTimeModel();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ICodeGenConfigInfo#getTimeModel <em>Time Model</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Time Model</em>' attribute.
+	 * @see #getTimeModel()
+	 * @generated
+	 */
+	void setTimeModel(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Mgenerate Actors</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Mgenerate Actors</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Mgenerate Actors</em>' attribute.
+	 * @see #setM_generateActors(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getICodeGenConfigInfo_M_generateActors()
+	 * @model
+	 * @generated
+	 */
+	String getM_generateActors();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ICodeGenConfigInfo#getM_generateActors <em>Mgenerate Actors</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Mgenerate Actors</em>' attribute.
+	 * @see #getM_generateActors()
+	 * @generated
+	 */
+	void setM_generateActors(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Statechart Implementation</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Statechart Implementation</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Statechart Implementation</em>' attribute.
+	 * @see #setStatechartImplementation(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getICodeGenConfigInfo_StatechartImplementation()
+	 * @model
+	 * @generated
+	 */
+	String getStatechartImplementation();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ICodeGenConfigInfo#getStatechartImplementation <em>Statechart Implementation</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Statechart Implementation</em>' attribute.
+	 * @see #getStatechartImplementation()
+	 * @generated
+	 */
+	void setStatechartImplementation(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Initialization Code</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Initialization Code</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Initialization Code</em>' attribute.
+	 * @see #setInitializationCode(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getICodeGenConfigInfo_InitializationCode()
+	 * @model
+	 * @generated
+	 */
+	String getInitializationCode();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ICodeGenConfigInfo#getInitializationCode <em>Initialization Code</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Initialization Code</em>' attribute.
+	 * @see #getInitializationCode()
+	 * @generated
+	 */
+	void setInitializationCode(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Checks List</b></em>' attribute list.
+	 * The list contents are of type {@link java.lang.String}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Checks List</em>' attribute list isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Checks List</em>' attribute list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getICodeGenConfigInfo_ChecksList()
+	 * @model unique="false"
+	 * @generated
+	 */
+	EList<String> getChecksList();
+
+	/**
+	 * Returns the value of the '<em><b>Scope Elements</b></em>' reference list.
+	 * The list contents are of type {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UnknownType}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Scope Elements</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>Scope Elements</em>' reference list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getICodeGenConfigInfo_ScopeElements()
+	 * @model
+	 * @generated
+	 */
+	EList<UnknownType> getScopeElements();
+
+	/**
+	 * Returns the value of the '<em><b>Root</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Root</em>' containment reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Root</em>' containment reference.
+	 * @see #setRoot(IFolder)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getICodeGenConfigInfo_Root()
+	 * @model containment="true" resolveProxies="true"
+	 * @generated
+	 */
+	IFolder getRoot();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ICodeGenConfigInfo#getRoot <em>Root</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Root</em>' containment reference.
+	 * @see #getRoot()
+	 * @generated
+	 */
+	void setRoot(IFolder value);
+
+	/**
+	 * Returns the value of the '<em><b>Weak CG Time</b></em>' attribute list.
+	 * The list contents are of type {@link java.lang.String}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Weak CG Time</em>' attribute list isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Weak CG Time</em>' attribute list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getICodeGenConfigInfo_WeakCGTime()
+	 * @model unique="false"
+	 * @generated
+	 */
+	EList<String> getWeakCGTime();
+
+	/**
+	 * Returns the value of the '<em><b>Strong CG Time</b></em>' attribute list.
+	 * The list contents are of type {@link java.lang.String}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Strong CG Time</em>' attribute list isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Strong CG Time</em>' attribute list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getICodeGenConfigInfo_StrongCGTime()
+	 * @model unique="false"
+	 * @generated
+	 */
+	EList<String> getStrongCGTime();
+
+	/**
+	 * Returns the value of the '<em><b>Mall In Anim Scope</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Mall In Anim Scope</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Mall In Anim Scope</em>' attribute.
+	 * @see #setM_allInAnimScope(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getICodeGenConfigInfo_M_allInAnimScope()
+	 * @model
+	 * @generated
+	 */
+	String getM_allInAnimScope();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ICodeGenConfigInfo#getM_allInAnimScope <em>Mall In Anim Scope</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Mall In Anim Scope</em>' attribute.
+	 * @see #getM_allInAnimScope()
+	 * @generated
+	 */
+	void setM_allInAnimScope(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Mgenerate Usecases</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Mgenerate Usecases</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Mgenerate Usecases</em>' attribute.
+	 * @see #setM_generateUsecases(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getICodeGenConfigInfo_M_generateUsecases()
+	 * @model
+	 * @generated
+	 */
+	String getM_generateUsecases();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ICodeGenConfigInfo#getM_generateUsecases <em>Mgenerate Usecases</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Mgenerate Usecases</em>' attribute.
+	 * @see #getM_generateUsecases()
+	 * @generated
+	 */
+	void setM_generateUsecases(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Dependencies</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Dependencies</em>' containment reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Dependencies</em>' containment reference.
+	 * @see #setDependencies(IDependency)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getICodeGenConfigInfo_Dependencies()
+	 * @model containment="true" resolveProxies="true"
+	 * @generated
+	 */
+	IDependency getDependencies();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ICodeGenConfigInfo#getDependencies <em>Dependencies</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Dependencies</em>' containment reference.
+	 * @see #getDependencies()
+	 * @generated
+	 */
+	void setDependencies(IDependency value);
+
+	/**
+	 * Returns the value of the '<em><b>Initial Instances</b></em>' reference list.
+	 * The list contents are of type {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IUnit}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Initial Instances</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>Initial Instances</em>' reference list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getICodeGenConfigInfo_InitialInstances()
+	 * @model
+	 * @generated
+	 */
+	EList<IUnit> getInitialInstances();
+
+	/**
+	 * Returns the value of the '<em><b>Properties</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Properties</em>' containment reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Properties</em>' containment reference.
+	 * @see #setProperties(IPropertyContainer)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getICodeGenConfigInfo_Properties()
+	 * @model containment="true" resolveProxies="true"
+	 * @generated
+	 */
+	IPropertyContainer getProperties();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ICodeGenConfigInfo#getProperties <em>Properties</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Properties</em>' containment reference.
+	 * @see #getProperties()
+	 * @generated
+	 */
+	void setProperties(IPropertyContainer value);
+
+	/**
+	 * Returns the value of the '<em><b>Annotations</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Annotations</em>' containment reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Annotations</em>' containment reference.
+	 * @see #setAnnotations(IComment)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getICodeGenConfigInfo_Annotations()
+	 * @model containment="true" resolveProxies="true"
+	 * @generated
+	 */
+	IComment getAnnotations();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ICodeGenConfigInfo#getAnnotations <em>Annotations</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Annotations</em>' containment reference.
+	 * @see #getAnnotations()
+	 * @generated
+	 */
+	void setAnnotations(IComment value);
+
+	/**
+	 * Returns the value of the '<em><b>Last ID</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Last ID</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Last ID</em>' attribute.
+	 * @see #setLastID(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getICodeGenConfigInfo_LastID()
+	 * @model
+	 * @generated
+	 */
+	String getLastID();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ICodeGenConfigInfo#getLastID <em>Last ID</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Last ID</em>' attribute.
+	 * @see #getLastID()
+	 * @generated
+	 */
+	void setLastID(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Description</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Description</em>' containment reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Description</em>' containment reference.
+	 * @see #setDescription(IDescription)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getICodeGenConfigInfo_Description()
+	 * @model containment="true" resolveProxies="true"
+	 * @generated
+	 */
+	IDescription getDescription();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ICodeGenConfigInfo#getDescription <em>Description</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Description</em>' containment reference.
+	 * @see #getDescription()
+	 * @generated
+	 */
+	void setDescription(IDescription value);
+
+	/**
+	 * Returns the value of the '<em><b>Tags</b></em>' containment reference list.
+	 * The list contents are of type {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITag}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Tags</em>' containment reference list isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Tags</em>' containment reference list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getICodeGenConfigInfo_Tags()
+	 * @model containment="true" resolveProxies="true"
+	 * @generated
+	 */
+	EList<ITag> getTags();
+
+	/**
+	 * Returns the value of the '<em><b>Cmheader</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Cmheader</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Cmheader</em>' attribute.
+	 * @see #setCmheader(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getICodeGenConfigInfo_Cmheader()
+	 * @model
+	 * @generated
+	 */
+	String getCmheader();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ICodeGenConfigInfo#getCmheader <em>Cmheader</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Cmheader</em>' attribute.
+	 * @see #getCmheader()
+	 * @generated
+	 */
+	void setCmheader(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Requiremen Tracability Handle</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Requiremen Tracability Handle</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Requiremen Tracability Handle</em>' attribute.
+	 * @see #setRequiremenTracabilityHandle(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getICodeGenConfigInfo_RequiremenTracabilityHandle()
+	 * @model
+	 * @generated
+	 */
+	String getRequiremenTracabilityHandle();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ICodeGenConfigInfo#getRequiremenTracabilityHandle <em>Requiremen Tracability Handle</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Requiremen Tracability Handle</em>' attribute.
+	 * @see #getRequiremenTracabilityHandle()
+	 * @generated
+	 */
+	void setRequiremenTracabilityHandle(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Stereotypes</b></em>' reference list.
+	 * The list contents are of type {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IClassifier}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Stereotypes</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>Stereotypes</em>' reference list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getICodeGenConfigInfo_Stereotypes()
+	 * @model
+	 * @generated
+	 */
+	EList<IClassifier> getStereotypes();
+
+	/**
+	 * Returns the value of the '<em><b>Code Update CG Time</b></em>' attribute list.
+	 * The list contents are of type {@link java.lang.String}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Code Update CG Time</em>' attribute list isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Code Update CG Time</em>' attribute list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getICodeGenConfigInfo_CodeUpdateCGTime()
+	 * @model unique="false"
+	 * @generated
+	 */
+	EList<String> getCodeUpdateCGTime();
+
+	/**
+	 * Returns the value of the '<em><b>Anim Scope Elements</b></em>' reference list.
+	 * The list contents are of type {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ElementsType}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Anim Scope Elements</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>Anim Scope Elements</em>' reference list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getICodeGenConfigInfo_AnimScopeElements()
+	 * @model
+	 * @generated
+	 */
+	EList<ElementsType> getAnimScopeElements();
+
+	/**
+	 * Returns the value of the '<em><b>Embeded Files</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Embeded Files</em>' containment reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Embeded Files</em>' containment reference.
+	 * @see #setEmbededFiles(IEmbededFile)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getICodeGenConfigInfo_EmbededFiles()
+	 * @model containment="true" resolveProxies="true"
+	 * @generated
+	 */
+	IEmbededFile getEmbededFiles();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ICodeGenConfigInfo#getEmbededFiles <em>Embeded Files</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Embeded Files</em>' containment reference.
+	 * @see #getEmbededFiles()
+	 * @generated
+	 */
+	void setEmbededFiles(IEmbededFile value);
+
+	/**
+	 * Returns the value of the '<em><b>Object Creation</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Object Creation</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Object Creation</em>' attribute.
+	 * @see #setObjectCreation(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getICodeGenConfigInfo_ObjectCreation()
+	 * @model
+	 * @generated
+	 */
+	String getObjectCreation();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ICodeGenConfigInfo#getObjectCreation <em>Object Creation</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Object Creation</em>' attribute.
+	 * @see #getObjectCreation()
+	 * @generated
+	 */
+	void setObjectCreation(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Uml Dependency ID</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Uml Dependency ID</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Uml Dependency ID</em>' attribute.
+	 * @see #setUmlDependencyID(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getICodeGenConfigInfo_UmlDependencyID()
+	 * @model
+	 * @generated
+	 */
+	String getUmlDependencyID();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ICodeGenConfigInfo#getUmlDependencyID <em>Uml Dependency ID</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Uml Dependency ID</em>' attribute.
+	 * @see #getUmlDependencyID()
+	 * @generated
+	 */
+	void setUmlDependencyID(String value);
+
+} // ICodeGenConfigInfo
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/ICodeGenConfigInfoHandle.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/ICodeGenConfigInfoHandle.java
new file mode 100755
index 0000000..a9c3244
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/ICodeGenConfigInfoHandle.java
@@ -0,0 +1,87 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel;
+
+import org.eclipse.emf.ecore.EObject;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>ICode Gen Config Info Handle</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * </p>
+ * <ul>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ICodeGenConfigInfoHandle#getM2Class <em>M2 Class</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ICodeGenConfigInfoHandle#getId <em>Id</em>}</li>
+ * </ul>
+ *
+ * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getICodeGenConfigInfoHandle()
+ * @model
+ * @generated
+ */
+public interface ICodeGenConfigInfoHandle extends EObject {
+	/**
+	 * Returns the value of the '<em><b>M2 Class</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>M2 Class</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>M2 Class</em>' attribute.
+	 * @see #setM2Class(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getICodeGenConfigInfoHandle_M2Class()
+	 * @model
+	 * @generated
+	 */
+	String getM2Class();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ICodeGenConfigInfoHandle#getM2Class <em>M2 Class</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>M2 Class</em>' attribute.
+	 * @see #getM2Class()
+	 * @generated
+	 */
+	void setM2Class(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Id</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Id</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Id</em>' attribute.
+	 * @see #setId(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getICodeGenConfigInfoHandle_Id()
+	 * @model
+	 * @generated
+	 */
+	String getId();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ICodeGenConfigInfoHandle#getId <em>Id</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Id</em>' attribute.
+	 * @see #getId()
+	 * @generated
+	 */
+	void setId(String value);
+
+} // ICodeGenConfigInfoHandle
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/ICollaboration.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/ICollaboration.java
new file mode 100755
index 0000000..0083565
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/ICollaboration.java
@@ -0,0 +1,297 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel;
+
+import org.eclipse.emf.common.util.EList;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>ICollaboration</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * </p>
+ * <ul>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ICollaboration#getId <em>Id</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ICollaboration#getClassifierRoles <em>Classifier Roles</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ICollaboration#getMessages <em>Messages</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ICollaboration#getAnnotations <em>Annotations</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ICollaboration#getAssociationRoles <em>Association Roles</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ICollaboration#getModifiedTimeWeak <em>Modified Time Weak</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ICollaboration#getCombinedFragments <em>Combined Fragments</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ICollaboration#getP_MessageHandler <em>PMessage Handler</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ICollaboration#getInteractionOccurrences <em>Interaction Occurrences</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ICollaboration#getExecutionOccurrences <em>Execution Occurrences</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ICollaboration#getObjectCreation <em>Object Creation</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ICollaboration#getUmlDependencyID <em>Uml Dependency ID</em>}</li>
+ * </ul>
+ *
+ * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getICollaboration()
+ * @model
+ * @generated
+ */
+public interface ICollaboration extends IModelElement, M_pModelObjectType {
+	/**
+	 * Returns the value of the '<em><b>Id</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Id</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Id</em>' attribute.
+	 * @see #setId(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getICollaboration_Id()
+	 * @model
+	 * @generated
+	 */
+	String getId();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ICollaboration#getId <em>Id</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Id</em>' attribute.
+	 * @see #getId()
+	 * @generated
+	 */
+	void setId(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Classifier Roles</b></em>' containment reference list.
+	 * The list contents are of type {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IClassifierRole}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Classifier Roles</em>' containment reference list isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Classifier Roles</em>' containment reference list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getICollaboration_ClassifierRoles()
+	 * @model containment="true" resolveProxies="true"
+	 * @generated
+	 */
+	EList<IClassifierRole> getClassifierRoles();
+
+	/**
+	 * Returns the value of the '<em><b>Messages</b></em>' containment reference list.
+	 * The list contents are of type {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMessage}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Messages</em>' containment reference list isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Messages</em>' containment reference list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getICollaboration_Messages()
+	 * @model containment="true" resolveProxies="true"
+	 * @generated
+	 */
+	EList<IMessage> getMessages();
+
+	/**
+	 * Returns the value of the '<em><b>Annotations</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Annotations</em>' containment reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Annotations</em>' containment reference.
+	 * @see #setAnnotations(IConstraint)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getICollaboration_Annotations()
+	 * @model containment="true" resolveProxies="true"
+	 * @generated
+	 */
+	IConstraint getAnnotations();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ICollaboration#getAnnotations <em>Annotations</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Annotations</em>' containment reference.
+	 * @see #getAnnotations()
+	 * @generated
+	 */
+	void setAnnotations(IConstraint value);
+
+	/**
+	 * Returns the value of the '<em><b>Association Roles</b></em>' containment reference list.
+	 * The list contents are of type {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IAssociationRole}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Association Roles</em>' containment reference list isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Association Roles</em>' containment reference list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getICollaboration_AssociationRoles()
+	 * @model containment="true" resolveProxies="true"
+	 * @generated
+	 */
+	EList<IAssociationRole> getAssociationRoles();
+
+	/**
+	 * Returns the value of the '<em><b>Modified Time Weak</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Modified Time Weak</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Modified Time Weak</em>' attribute.
+	 * @see #setModifiedTimeWeak(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getICollaboration_ModifiedTimeWeak()
+	 * @model
+	 * @generated
+	 */
+	String getModifiedTimeWeak();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ICollaboration#getModifiedTimeWeak <em>Modified Time Weak</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Modified Time Weak</em>' attribute.
+	 * @see #getModifiedTimeWeak()
+	 * @generated
+	 */
+	void setModifiedTimeWeak(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Combined Fragments</b></em>' containment reference list.
+	 * The list contents are of type {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ICombinedFragment}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Combined Fragments</em>' containment reference list isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Combined Fragments</em>' containment reference list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getICollaboration_CombinedFragments()
+	 * @model containment="true" resolveProxies="true"
+	 * @generated
+	 */
+	EList<ICombinedFragment> getCombinedFragments();
+
+	/**
+	 * Returns the value of the '<em><b>PMessage Handler</b></em>' containment reference list.
+	 * The list contents are of type {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.P_MessageHandlerType}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>PMessage Handler</em>' containment reference list isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>PMessage Handler</em>' containment reference list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getICollaboration_P_MessageHandler()
+	 * @model containment="true" resolveProxies="true"
+	 * @generated
+	 */
+	EList<P_MessageHandlerType> getP_MessageHandler();
+
+	/**
+	 * Returns the value of the '<em><b>Interaction Occurrences</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Interaction Occurrences</em>' containment reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Interaction Occurrences</em>' containment reference.
+	 * @see #setInteractionOccurrences(IInteractionOccurrence)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getICollaboration_InteractionOccurrences()
+	 * @model containment="true" resolveProxies="true"
+	 * @generated
+	 */
+	IInteractionOccurrence getInteractionOccurrences();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ICollaboration#getInteractionOccurrences <em>Interaction Occurrences</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Interaction Occurrences</em>' containment reference.
+	 * @see #getInteractionOccurrences()
+	 * @generated
+	 */
+	void setInteractionOccurrences(IInteractionOccurrence value);
+
+	/**
+	 * Returns the value of the '<em><b>Execution Occurrences</b></em>' containment reference list.
+	 * The list contents are of type {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IExecutionOccurrence}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Execution Occurrences</em>' containment reference list isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Execution Occurrences</em>' containment reference list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getICollaboration_ExecutionOccurrences()
+	 * @model containment="true" resolveProxies="true"
+	 * @generated
+	 */
+	EList<IExecutionOccurrence> getExecutionOccurrences();
+
+	/**
+	 * Returns the value of the '<em><b>Object Creation</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Object Creation</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Object Creation</em>' attribute.
+	 * @see #setObjectCreation(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getICollaboration_ObjectCreation()
+	 * @model
+	 * @generated
+	 */
+	String getObjectCreation();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ICollaboration#getObjectCreation <em>Object Creation</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Object Creation</em>' attribute.
+	 * @see #getObjectCreation()
+	 * @generated
+	 */
+	void setObjectCreation(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Uml Dependency ID</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Uml Dependency ID</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Uml Dependency ID</em>' attribute.
+	 * @see #setUmlDependencyID(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getICollaboration_UmlDependencyID()
+	 * @model
+	 * @generated
+	 */
+	String getUmlDependencyID();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ICollaboration#getUmlDependencyID <em>Uml Dependency ID</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Uml Dependency ID</em>' attribute.
+	 * @see #getUmlDependencyID()
+	 * @generated
+	 */
+	void setUmlDependencyID(String value);
+
+} // ICollaboration
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/ICollaborationDiagram.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/ICollaborationDiagram.java
new file mode 100755
index 0000000..df88b42
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/ICollaborationDiagram.java
@@ -0,0 +1,59 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel;
+
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>ICollaboration Diagram</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * </p>
+ * <ul>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ICollaborationDiagram#getM_pICollaboration <em>MpI Collaboration</em>}</li>
+ * </ul>
+ *
+ * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getICollaborationDiagram()
+ * @model
+ * @generated
+ */
+public interface ICollaborationDiagram extends IDiagram {
+	/**
+	 * Returns the value of the '<em><b>MpI Collaboration</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>MpI Collaboration</em>' containment reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>MpI Collaboration</em>' containment reference.
+	 * @see #setM_pICollaboration(ICollaboration)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getICollaborationDiagram_M_pICollaboration()
+	 * @model containment="true" resolveProxies="true"
+	 * @generated
+	 */
+	ICollaboration getM_pICollaboration();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ICollaborationDiagram#getM_pICollaboration <em>MpI Collaboration</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>MpI Collaboration</em>' containment reference.
+	 * @see #getM_pICollaboration()
+	 * @generated
+	 */
+	void setM_pICollaboration(ICollaboration value);
+
+} // ICollaborationDiagram
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/IColor.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/IColor.java
new file mode 100755
index 0000000..d907672
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/IColor.java
@@ -0,0 +1,114 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel;
+
+import org.eclipse.emf.ecore.EObject;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>IColor</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * </p>
+ * <ul>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IColor#getM_fgColor <em>Mfg Color</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IColor#getM_bgColor <em>Mbg Color</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IColor#getM_bgFlag <em>Mbg Flag</em>}</li>
+ * </ul>
+ *
+ * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIColor()
+ * @model
+ * @generated
+ */
+public interface IColor extends EObject {
+	/**
+	 * Returns the value of the '<em><b>Mfg Color</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Mfg Color</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Mfg Color</em>' attribute.
+	 * @see #setM_fgColor(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIColor_M_fgColor()
+	 * @model
+	 * @generated
+	 */
+	String getM_fgColor();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IColor#getM_fgColor <em>Mfg Color</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Mfg Color</em>' attribute.
+	 * @see #getM_fgColor()
+	 * @generated
+	 */
+	void setM_fgColor(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Mbg Color</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Mbg Color</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Mbg Color</em>' attribute.
+	 * @see #setM_bgColor(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIColor_M_bgColor()
+	 * @model
+	 * @generated
+	 */
+	String getM_bgColor();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IColor#getM_bgColor <em>Mbg Color</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Mbg Color</em>' attribute.
+	 * @see #getM_bgColor()
+	 * @generated
+	 */
+	void setM_bgColor(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Mbg Flag</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Mbg Flag</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Mbg Flag</em>' attribute.
+	 * @see #setM_bgFlag(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIColor_M_bgFlag()
+	 * @model
+	 * @generated
+	 */
+	String getM_bgFlag();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IColor#getM_bgFlag <em>Mbg Flag</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Mbg Flag</em>' attribute.
+	 * @see #getM_bgFlag()
+	 * @generated
+	 */
+	void setM_bgFlag(String value);
+
+} // IColor
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/ICombinedFragment.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/ICombinedFragment.java
new file mode 100755
index 0000000..deff18b
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/ICombinedFragment.java
@@ -0,0 +1,241 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel;
+
+import org.eclipse.emf.common.util.EList;
+
+import org.eclipse.emf.ecore.EObject;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>ICombined Fragment</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * </p>
+ * <ul>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ICombinedFragment#getId <em>Id</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ICombinedFragment#getMyState <em>My State</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ICombinedFragment#getName <em>Name</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ICombinedFragment#getModifiedTimeWeak <em>Modified Time Weak</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ICombinedFragment#getInteractionOperator <em>Interaction Operator</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ICombinedFragment#getInteractionOperands <em>Interaction Operands</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ICombinedFragment#getStereotypes <em>Stereotypes</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ICombinedFragment#getTags <em>Tags</em>}</li>
+ * </ul>
+ *
+ * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getICombinedFragment()
+ * @model
+ * @generated
+ */
+public interface ICombinedFragment extends EObject {
+	/**
+	 * Returns the value of the '<em><b>Id</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Id</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Id</em>' attribute.
+	 * @see #setId(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getICombinedFragment_Id()
+	 * @model
+	 * @generated
+	 */
+	String getId();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ICombinedFragment#getId <em>Id</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Id</em>' attribute.
+	 * @see #getId()
+	 * @generated
+	 */
+	void setId(String value);
+
+	/**
+	 * Returns the value of the '<em><b>My State</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>My State</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>My State</em>' attribute.
+	 * @see #setMyState(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getICombinedFragment_MyState()
+	 * @model
+	 * @generated
+	 */
+	String getMyState();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ICombinedFragment#getMyState <em>My State</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>My State</em>' attribute.
+	 * @see #getMyState()
+	 * @generated
+	 */
+	void setMyState(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Name</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Name</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Name</em>' attribute.
+	 * @see #setName(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getICombinedFragment_Name()
+	 * @model
+	 * @generated
+	 */
+	String getName();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ICombinedFragment#getName <em>Name</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Name</em>' attribute.
+	 * @see #getName()
+	 * @generated
+	 */
+	void setName(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Modified Time Weak</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Modified Time Weak</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Modified Time Weak</em>' attribute.
+	 * @see #setModifiedTimeWeak(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getICombinedFragment_ModifiedTimeWeak()
+	 * @model
+	 * @generated
+	 */
+	String getModifiedTimeWeak();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ICombinedFragment#getModifiedTimeWeak <em>Modified Time Weak</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Modified Time Weak</em>' attribute.
+	 * @see #getModifiedTimeWeak()
+	 * @generated
+	 */
+	void setModifiedTimeWeak(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Interaction Operator</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Interaction Operator</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Interaction Operator</em>' attribute.
+	 * @see #setInteractionOperator(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getICombinedFragment_InteractionOperator()
+	 * @model
+	 * @generated
+	 */
+	String getInteractionOperator();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ICombinedFragment#getInteractionOperator <em>Interaction Operator</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Interaction Operator</em>' attribute.
+	 * @see #getInteractionOperator()
+	 * @generated
+	 */
+	void setInteractionOperator(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Interaction Operands</b></em>' containment reference list.
+	 * The list contents are of type {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IInteractionOperand}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Interaction Operands</em>' containment reference list isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Interaction Operands</em>' containment reference list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getICombinedFragment_InteractionOperands()
+	 * @model containment="true" resolveProxies="true"
+	 * @generated
+	 */
+	EList<IInteractionOperand> getInteractionOperands();
+
+	/**
+	 * Returns the value of the '<em><b>Stereotypes</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Stereotypes</em>' reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Stereotypes</em>' reference.
+	 * @see #setStereotypes(IStereotype)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getICombinedFragment_Stereotypes()
+	 * @model
+	 * @generated
+	 */
+	IStereotype getStereotypes();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ICombinedFragment#getStereotypes <em>Stereotypes</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Stereotypes</em>' reference.
+	 * @see #getStereotypes()
+	 * @generated
+	 */
+	void setStereotypes(IStereotype value);
+
+	/**
+	 * Returns the value of the '<em><b>Tags</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Tags</em>' containment reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Tags</em>' containment reference.
+	 * @see #setTags(ITag)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getICombinedFragment_Tags()
+	 * @model containment="true" resolveProxies="true"
+	 * @generated
+	 */
+	ITag getTags();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ICombinedFragment#getTags <em>Tags</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Tags</em>' containment reference.
+	 * @see #getTags()
+	 * @generated
+	 */
+	void setTags(ITag value);
+
+} // ICombinedFragment
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/IComment.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/IComment.java
new file mode 100755
index 0000000..f364855
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/IComment.java
@@ -0,0 +1,209 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel;
+
+import org.eclipse.emf.common.util.EList;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>IComment</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * </p>
+ * <ul>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IComment#getHyperLinks <em>Hyper Links</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IComment#getAnchors <em>Anchors</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IComment#getDependencies <em>Dependencies</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IComment#getStereotypes <em>Stereotypes</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IComment#getLastID <em>Last ID</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IComment#getCodeUpdateCGTime <em>Code Update CG Time</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IComment#getTheMainDiagram <em>The Main Diagram</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IComment#getProperties <em>Properties</em>}</li>
+ * </ul>
+ *
+ * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIComment()
+ * @model
+ * @generated
+ */
+public interface IComment extends IAnnotation, ValueType {
+	/**
+	 * Returns the value of the '<em><b>Hyper Links</b></em>' containment reference list.
+	 * The list contents are of type {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMHyperLink}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Hyper Links</em>' containment reference list isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Hyper Links</em>' containment reference list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIComment_HyperLinks()
+	 * @model containment="true" resolveProxies="true"
+	 * @generated
+	 */
+	EList<IMHyperLink> getHyperLinks();
+
+	/**
+	 * Returns the value of the '<em><b>Anchors</b></em>' containment reference list.
+	 * The list contents are of type {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IAnchor}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Anchors</em>' containment reference list isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Anchors</em>' containment reference list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIComment_Anchors()
+	 * @model containment="true" resolveProxies="true"
+	 * @generated
+	 */
+	EList<IAnchor> getAnchors();
+
+	/**
+	 * Returns the value of the '<em><b>Dependencies</b></em>' containment reference list.
+	 * The list contents are of type {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IDependency}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Dependencies</em>' containment reference list isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Dependencies</em>' containment reference list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIComment_Dependencies()
+	 * @model containment="true" resolveProxies="true"
+	 * @generated
+	 */
+	EList<IDependency> getDependencies();
+
+	/**
+	 * Returns the value of the '<em><b>Stereotypes</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Stereotypes</em>' reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Stereotypes</em>' reference.
+	 * @see #setStereotypes(IClassifier)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIComment_Stereotypes()
+	 * @model
+	 * @generated
+	 */
+	IClassifier getStereotypes();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IComment#getStereotypes <em>Stereotypes</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Stereotypes</em>' reference.
+	 * @see #getStereotypes()
+	 * @generated
+	 */
+	void setStereotypes(IClassifier value);
+
+	/**
+	 * Returns the value of the '<em><b>Last ID</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Last ID</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Last ID</em>' attribute.
+	 * @see #setLastID(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIComment_LastID()
+	 * @model
+	 * @generated
+	 */
+	String getLastID();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IComment#getLastID <em>Last ID</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Last ID</em>' attribute.
+	 * @see #getLastID()
+	 * @generated
+	 */
+	void setLastID(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Code Update CG Time</b></em>' attribute list.
+	 * The list contents are of type {@link java.lang.String}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Code Update CG Time</em>' attribute list isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Code Update CG Time</em>' attribute list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIComment_CodeUpdateCGTime()
+	 * @model unique="false"
+	 * @generated
+	 */
+	EList<String> getCodeUpdateCGTime();
+
+	/**
+	 * Returns the value of the '<em><b>The Main Diagram</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>The Main Diagram</em>' reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>The Main Diagram</em>' reference.
+	 * @see #setTheMainDiagram(IDiagram)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIComment_TheMainDiagram()
+	 * @model
+	 * @generated
+	 */
+	IDiagram getTheMainDiagram();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IComment#getTheMainDiagram <em>The Main Diagram</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>The Main Diagram</em>' reference.
+	 * @see #getTheMainDiagram()
+	 * @generated
+	 */
+	void setTheMainDiagram(IDiagram value);
+
+	/**
+	 * Returns the value of the '<em><b>Properties</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Properties</em>' containment reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Properties</em>' containment reference.
+	 * @see #setProperties(IPropertyContainer)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIComment_Properties()
+	 * @model containment="true" resolveProxies="true"
+	 * @generated
+	 */
+	IPropertyContainer getProperties();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IComment#getProperties <em>Properties</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Properties</em>' containment reference.
+	 * @see #getProperties()
+	 * @generated
+	 */
+	void setProperties(IPropertyContainer value);
+
+} // IComment
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/IComponent.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/IComponent.java
new file mode 100755
index 0000000..6b9ceb6
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/IComponent.java
@@ -0,0 +1,746 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel;
+
+import org.eclipse.emf.common.util.EList;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>IComponent</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * </p>
+ * <ul>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IComponent#getOwnerHandle <em>Owner Handle</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IComponent#getId <em>Id</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IComponent#getMyState <em>My State</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IComponent#getName <em>Name</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IComponent#getStereotypes <em>Stereotypes</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IComponent#getModifiedTimeWeak <em>Modified Time Weak</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IComponent#getM_buildType <em>Mbuild Type</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IComponent#getM_libraries <em>Mlibraries</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IComponent#getM_additionalSources <em>Madditional Sources</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IComponent#getM_standardHeaders <em>Mstandard Headers</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IComponent#getM_includePath <em>Minclude Path</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IComponent#getM_initializationCode <em>Minitialization Code</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IComponent#getM_folder <em>Mfolder</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IComponent#getM_configActive <em>Mconfig Active</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IComponent#getConfigs <em>Configs</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IComponent#getDependencies <em>Dependencies</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IComponent#getHandlesInMe <em>Handles In Me</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IComponent#getProperties <em>Properties</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IComponent#getLastID <em>Last ID</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IComponent#getDescription <em>Description</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IComponent#getRequiremenTracabilityHandle <em>Requiremen Tracability Handle</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IComponent#getHyperLinks <em>Hyper Links</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IComponent#getCodeUpdateCGTime <em>Code Update CG Time</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IComponent#getDeclaratives <em>Declaratives</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IComponent#getVariationPoints <em>Variation Points</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IComponent#getSelectedVariants <em>Selected Variants</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IComponent#getObjectCreation <em>Object Creation</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IComponent#getUmlDependencyID <em>Uml Dependency ID</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IComponent#getCmheader <em>Cmheader</em>}</li>
+ * </ul>
+ *
+ * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIComponent()
+ * @model
+ * @generated
+ */
+public interface IComponent extends IUnit, OwnerHandleType, DependsOnType, DeclarativesType, M_pModelObjectType {
+	/**
+	 * Returns the value of the '<em><b>Owner Handle</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Owner Handle</em>' reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Owner Handle</em>' reference.
+	 * @see #setOwnerHandle(OwnerHandleType)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIComponent_OwnerHandle()
+	 * @model
+	 * @generated
+	 */
+	OwnerHandleType getOwnerHandle();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IComponent#getOwnerHandle <em>Owner Handle</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Owner Handle</em>' reference.
+	 * @see #getOwnerHandle()
+	 * @generated
+	 */
+	void setOwnerHandle(OwnerHandleType value);
+
+	/**
+	 * Returns the value of the '<em><b>Id</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Id</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Id</em>' attribute.
+	 * @see #setId(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIComponent_Id()
+	 * @model
+	 * @generated
+	 */
+	String getId();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IComponent#getId <em>Id</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Id</em>' attribute.
+	 * @see #getId()
+	 * @generated
+	 */
+	void setId(String value);
+
+	/**
+	 * Returns the value of the '<em><b>My State</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>My State</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>My State</em>' attribute.
+	 * @see #setMyState(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIComponent_MyState()
+	 * @model
+	 * @generated
+	 */
+	String getMyState();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IComponent#getMyState <em>My State</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>My State</em>' attribute.
+	 * @see #getMyState()
+	 * @generated
+	 */
+	void setMyState(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Name</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Name</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Name</em>' attribute.
+	 * @see #setName(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIComponent_Name()
+	 * @model
+	 * @generated
+	 */
+	String getName();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IComponent#getName <em>Name</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Name</em>' attribute.
+	 * @see #getName()
+	 * @generated
+	 */
+	void setName(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Stereotypes</b></em>' reference list.
+	 * The list contents are of type {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IClassifier}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Stereotypes</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>Stereotypes</em>' reference list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIComponent_Stereotypes()
+	 * @model
+	 * @generated
+	 */
+	EList<IClassifier> getStereotypes();
+
+	/**
+	 * Returns the value of the '<em><b>Modified Time Weak</b></em>' attribute list.
+	 * The list contents are of type {@link java.lang.String}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Modified Time Weak</em>' attribute list isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Modified Time Weak</em>' attribute list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIComponent_ModifiedTimeWeak()
+	 * @model unique="false"
+	 * @generated
+	 */
+	EList<String> getModifiedTimeWeak();
+
+	/**
+	 * Returns the value of the '<em><b>Mbuild Type</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Mbuild 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>Mbuild Type</em>' attribute.
+	 * @see #setM_buildType(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIComponent_M_buildType()
+	 * @model
+	 * @generated
+	 */
+	String getM_buildType();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IComponent#getM_buildType <em>Mbuild Type</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Mbuild Type</em>' attribute.
+	 * @see #getM_buildType()
+	 * @generated
+	 */
+	void setM_buildType(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Mlibraries</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Mlibraries</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Mlibraries</em>' attribute.
+	 * @see #setM_libraries(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIComponent_M_libraries()
+	 * @model
+	 * @generated
+	 */
+	String getM_libraries();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IComponent#getM_libraries <em>Mlibraries</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Mlibraries</em>' attribute.
+	 * @see #getM_libraries()
+	 * @generated
+	 */
+	void setM_libraries(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Madditional Sources</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Madditional Sources</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Madditional Sources</em>' attribute.
+	 * @see #setM_additionalSources(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIComponent_M_additionalSources()
+	 * @model
+	 * @generated
+	 */
+	String getM_additionalSources();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IComponent#getM_additionalSources <em>Madditional Sources</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Madditional Sources</em>' attribute.
+	 * @see #getM_additionalSources()
+	 * @generated
+	 */
+	void setM_additionalSources(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Mstandard Headers</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Mstandard Headers</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Mstandard Headers</em>' attribute.
+	 * @see #setM_standardHeaders(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIComponent_M_standardHeaders()
+	 * @model
+	 * @generated
+	 */
+	String getM_standardHeaders();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IComponent#getM_standardHeaders <em>Mstandard Headers</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Mstandard Headers</em>' attribute.
+	 * @see #getM_standardHeaders()
+	 * @generated
+	 */
+	void setM_standardHeaders(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Minclude Path</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Minclude Path</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Minclude Path</em>' attribute.
+	 * @see #setM_includePath(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIComponent_M_includePath()
+	 * @model
+	 * @generated
+	 */
+	String getM_includePath();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IComponent#getM_includePath <em>Minclude Path</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Minclude Path</em>' attribute.
+	 * @see #getM_includePath()
+	 * @generated
+	 */
+	void setM_includePath(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Minitialization Code</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Minitialization Code</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Minitialization Code</em>' attribute.
+	 * @see #setM_initializationCode(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIComponent_M_initializationCode()
+	 * @model
+	 * @generated
+	 */
+	String getM_initializationCode();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IComponent#getM_initializationCode <em>Minitialization Code</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Minitialization Code</em>' attribute.
+	 * @see #getM_initializationCode()
+	 * @generated
+	 */
+	void setM_initializationCode(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Mfolder</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Mfolder</em>' containment reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Mfolder</em>' containment reference.
+	 * @see #setM_folder(IFolder)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIComponent_M_folder()
+	 * @model containment="true" resolveProxies="true"
+	 * @generated
+	 */
+	IFolder getM_folder();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IComponent#getM_folder <em>Mfolder</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Mfolder</em>' containment reference.
+	 * @see #getM_folder()
+	 * @generated
+	 */
+	void setM_folder(IFolder value);
+
+	/**
+	 * Returns the value of the '<em><b>Mconfig Active</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Mconfig Active</em>' containment reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Mconfig Active</em>' containment reference.
+	 * @see #setM_configActive(ICodeGenConfigInfoHandle)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIComponent_M_configActive()
+	 * @model containment="true" resolveProxies="true"
+	 * @generated
+	 */
+	ICodeGenConfigInfoHandle getM_configActive();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IComponent#getM_configActive <em>Mconfig Active</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Mconfig Active</em>' containment reference.
+	 * @see #getM_configActive()
+	 * @generated
+	 */
+	void setM_configActive(ICodeGenConfigInfoHandle value);
+
+	/**
+	 * Returns the value of the '<em><b>Configs</b></em>' containment reference list.
+	 * The list contents are of type {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ICodeGenConfigInfo}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Configs</em>' containment reference list isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Configs</em>' containment reference list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIComponent_Configs()
+	 * @model containment="true" resolveProxies="true"
+	 * @generated
+	 */
+	EList<ICodeGenConfigInfo> getConfigs();
+
+	/**
+	 * Returns the value of the '<em><b>Dependencies</b></em>' containment reference list.
+	 * The list contents are of type {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IDependency}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Dependencies</em>' containment reference list isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Dependencies</em>' containment reference list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIComponent_Dependencies()
+	 * @model containment="true" resolveProxies="true"
+	 * @generated
+	 */
+	EList<IDependency> getDependencies();
+
+	/**
+	 * Returns the value of the '<em><b>Handles In Me</b></em>' reference list.
+	 * The list contents are of type {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.DefaultSubsystemType}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Handles In Me</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>Handles In Me</em>' reference list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIComponent_HandlesInMe()
+	 * @model
+	 * @generated
+	 */
+	EList<DefaultSubsystemType> getHandlesInMe();
+
+	/**
+	 * Returns the value of the '<em><b>Properties</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Properties</em>' containment reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Properties</em>' containment reference.
+	 * @see #setProperties(IPropertyContainer)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIComponent_Properties()
+	 * @model containment="true" resolveProxies="true"
+	 * @generated
+	 */
+	IPropertyContainer getProperties();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IComponent#getProperties <em>Properties</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Properties</em>' containment reference.
+	 * @see #getProperties()
+	 * @generated
+	 */
+	void setProperties(IPropertyContainer value);
+
+	/**
+	 * Returns the value of the '<em><b>Last ID</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Last ID</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Last ID</em>' attribute.
+	 * @see #setLastID(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIComponent_LastID()
+	 * @model
+	 * @generated
+	 */
+	String getLastID();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IComponent#getLastID <em>Last ID</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Last ID</em>' attribute.
+	 * @see #getLastID()
+	 * @generated
+	 */
+	void setLastID(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Description</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Description</em>' containment reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Description</em>' containment reference.
+	 * @see #setDescription(IDescription)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIComponent_Description()
+	 * @model containment="true" resolveProxies="true"
+	 * @generated
+	 */
+	IDescription getDescription();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IComponent#getDescription <em>Description</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Description</em>' containment reference.
+	 * @see #getDescription()
+	 * @generated
+	 */
+	void setDescription(IDescription value);
+
+	/**
+	 * Returns the value of the '<em><b>Requiremen Tracability Handle</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Requiremen Tracability Handle</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Requiremen Tracability Handle</em>' attribute.
+	 * @see #setRequiremenTracabilityHandle(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIComponent_RequiremenTracabilityHandle()
+	 * @model
+	 * @generated
+	 */
+	String getRequiremenTracabilityHandle();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IComponent#getRequiremenTracabilityHandle <em>Requiremen Tracability Handle</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Requiremen Tracability Handle</em>' attribute.
+	 * @see #getRequiremenTracabilityHandle()
+	 * @generated
+	 */
+	void setRequiremenTracabilityHandle(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Hyper Links</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Hyper Links</em>' containment reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Hyper Links</em>' containment reference.
+	 * @see #setHyperLinks(IMHyperLink)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIComponent_HyperLinks()
+	 * @model containment="true" resolveProxies="true"
+	 * @generated
+	 */
+	IMHyperLink getHyperLinks();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IComponent#getHyperLinks <em>Hyper Links</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Hyper Links</em>' containment reference.
+	 * @see #getHyperLinks()
+	 * @generated
+	 */
+	void setHyperLinks(IMHyperLink value);
+
+	/**
+	 * Returns the value of the '<em><b>Code Update CG Time</b></em>' attribute list.
+	 * The list contents are of type {@link java.lang.String}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Code Update CG Time</em>' attribute list isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Code Update CG Time</em>' attribute list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIComponent_CodeUpdateCGTime()
+	 * @model unique="false"
+	 * @generated
+	 */
+	EList<String> getCodeUpdateCGTime();
+
+	/**
+	 * Returns the value of the '<em><b>Declaratives</b></em>' containment reference list.
+	 * The list contents are of type {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IUnit}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Declaratives</em>' containment reference list isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Declaratives</em>' containment reference list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIComponent_Declaratives()
+	 * @model containment="true" resolveProxies="true"
+	 * @generated
+	 */
+	EList<IUnit> getDeclaratives();
+
+	/**
+	 * Returns the value of the '<em><b>Variation Points</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Variation Points</em>' reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Variation Points</em>' reference.
+	 * @see #setVariationPoints(IUnit)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIComponent_VariationPoints()
+	 * @model
+	 * @generated
+	 */
+	IUnit getVariationPoints();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IComponent#getVariationPoints <em>Variation Points</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Variation Points</em>' reference.
+	 * @see #getVariationPoints()
+	 * @generated
+	 */
+	void setVariationPoints(IUnit value);
+
+	/**
+	 * Returns the value of the '<em><b>Selected Variants</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Selected Variants</em>' reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Selected Variants</em>' reference.
+	 * @see #setSelectedVariants(IUnit)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIComponent_SelectedVariants()
+	 * @model
+	 * @generated
+	 */
+	IUnit getSelectedVariants();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IComponent#getSelectedVariants <em>Selected Variants</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Selected Variants</em>' reference.
+	 * @see #getSelectedVariants()
+	 * @generated
+	 */
+	void setSelectedVariants(IUnit value);
+
+	/**
+	 * Returns the value of the '<em><b>Object Creation</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Object Creation</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Object Creation</em>' attribute.
+	 * @see #setObjectCreation(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIComponent_ObjectCreation()
+	 * @model
+	 * @generated
+	 */
+	String getObjectCreation();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IComponent#getObjectCreation <em>Object Creation</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Object Creation</em>' attribute.
+	 * @see #getObjectCreation()
+	 * @generated
+	 */
+	void setObjectCreation(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Uml Dependency ID</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Uml Dependency ID</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Uml Dependency ID</em>' attribute.
+	 * @see #setUmlDependencyID(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIComponent_UmlDependencyID()
+	 * @model
+	 * @generated
+	 */
+	String getUmlDependencyID();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IComponent#getUmlDependencyID <em>Uml Dependency ID</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Uml Dependency ID</em>' attribute.
+	 * @see #getUmlDependencyID()
+	 * @generated
+	 */
+	void setUmlDependencyID(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Cmheader</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Cmheader</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Cmheader</em>' attribute.
+	 * @see #setCmheader(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIComponent_Cmheader()
+	 * @model
+	 * @generated
+	 */
+	String getCmheader();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IComponent#getCmheader <em>Cmheader</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Cmheader</em>' attribute.
+	 * @see #getCmheader()
+	 * @generated
+	 */
+	void setCmheader(String value);
+
+} // IComponent
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/IComponentDiagram.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/IComponentDiagram.java
new file mode 100755
index 0000000..0c0d5ac
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/IComponentDiagram.java
@@ -0,0 +1,27 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel;
+
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>IComponent Diagram</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ *
+ * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIComponentDiagram()
+ * @model
+ * @generated
+ */
+public interface IComponentDiagram extends IDiagram, DeclarativesType, DependsOnType {
+} // IComponentDiagram
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/IComponentInstance.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/IComponentInstance.java
new file mode 100755
index 0000000..af1f4a0
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/IComponentInstance.java
@@ -0,0 +1,27 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel;
+
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>IComponent Instance</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ *
+ * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIComponentInstance()
+ * @model
+ * @generated
+ */
+public interface IComponentInstance extends IModelElement {
+} // IComponentInstance
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/IConfiguration.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/IConfiguration.java
new file mode 100755
index 0000000..943611a
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/IConfiguration.java
@@ -0,0 +1,27 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel;
+
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>IConfiguration</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ *
+ * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIConfiguration()
+ * @model
+ * @generated
+ */
+public interface IConfiguration extends IModelElement {
+} // IConfiguration
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/IConnector.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/IConnector.java
new file mode 100755
index 0000000..3c41a03
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/IConnector.java
@@ -0,0 +1,86 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel;
+
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>IConnector</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * </p>
+ * <ul>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IConnector#getParent <em>Parent</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IConnector#getConnectorType <em>Connector Type</em>}</li>
+ * </ul>
+ *
+ * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIConnector()
+ * @model
+ * @generated
+ */
+public interface IConnector extends IStateVertex, ItsTargetType {
+	/**
+	 * Returns the value of the '<em><b>Parent</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Parent</em>' reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Parent</em>' reference.
+	 * @see #setParent(ParentType)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIConnector_Parent()
+	 * @model
+	 * @generated
+	 */
+	ParentType getParent();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IConnector#getParent <em>Parent</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Parent</em>' reference.
+	 * @see #getParent()
+	 * @generated
+	 */
+	void setParent(ParentType value);
+
+	/**
+	 * Returns the value of the '<em><b>Connector Type</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Connector 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>Connector Type</em>' attribute.
+	 * @see #setConnectorType(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIConnector_ConnectorType()
+	 * @model
+	 * @generated
+	 */
+	String getConnectorType();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IConnector#getConnectorType <em>Connector Type</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Connector Type</em>' attribute.
+	 * @see #getConnectorType()
+	 * @generated
+	 */
+	void setConnectorType(String value);
+
+} // IConnector
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/IConstraint.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/IConstraint.java
new file mode 100755
index 0000000..d39daa7
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/IConstraint.java
@@ -0,0 +1,221 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel;
+
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>IConstraint</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * </p>
+ * <ul>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IConstraint#getId <em>Id</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IConstraint#getMyState <em>My State</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IConstraint#getName <em>Name</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IConstraint#getModifiedTimeWeak <em>Modified Time Weak</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IConstraint#getStereotypes <em>Stereotypes</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IConstraint#getProperties <em>Properties</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IConstraint#getAnchors <em>Anchors</em>}</li>
+ * </ul>
+ *
+ * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIConstraint()
+ * @model
+ * @generated
+ */
+public interface IConstraint extends IAnnotation {
+	/**
+	 * Returns the value of the '<em><b>Id</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Id</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Id</em>' attribute.
+	 * @see #setId(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIConstraint_Id()
+	 * @model
+	 * @generated
+	 */
+	String getId();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IConstraint#getId <em>Id</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Id</em>' attribute.
+	 * @see #getId()
+	 * @generated
+	 */
+	void setId(String value);
+
+	/**
+	 * Returns the value of the '<em><b>My State</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>My State</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>My State</em>' attribute.
+	 * @see #setMyState(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIConstraint_MyState()
+	 * @model
+	 * @generated
+	 */
+	String getMyState();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IConstraint#getMyState <em>My State</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>My State</em>' attribute.
+	 * @see #getMyState()
+	 * @generated
+	 */
+	void setMyState(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Name</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Name</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Name</em>' attribute.
+	 * @see #setName(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIConstraint_Name()
+	 * @model
+	 * @generated
+	 */
+	String getName();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IConstraint#getName <em>Name</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Name</em>' attribute.
+	 * @see #getName()
+	 * @generated
+	 */
+	void setName(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Modified Time Weak</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Modified Time Weak</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Modified Time Weak</em>' attribute.
+	 * @see #setModifiedTimeWeak(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIConstraint_ModifiedTimeWeak()
+	 * @model
+	 * @generated
+	 */
+	String getModifiedTimeWeak();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IConstraint#getModifiedTimeWeak <em>Modified Time Weak</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Modified Time Weak</em>' attribute.
+	 * @see #getModifiedTimeWeak()
+	 * @generated
+	 */
+	void setModifiedTimeWeak(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Stereotypes</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Stereotypes</em>' reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Stereotypes</em>' reference.
+	 * @see #setStereotypes(IClassifier)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIConstraint_Stereotypes()
+	 * @model
+	 * @generated
+	 */
+	IClassifier getStereotypes();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IConstraint#getStereotypes <em>Stereotypes</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Stereotypes</em>' reference.
+	 * @see #getStereotypes()
+	 * @generated
+	 */
+	void setStereotypes(IClassifier value);
+
+	/**
+	 * Returns the value of the '<em><b>Properties</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Properties</em>' containment reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Properties</em>' containment reference.
+	 * @see #setProperties(IPropertyContainer)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIConstraint_Properties()
+	 * @model containment="true" resolveProxies="true"
+	 * @generated
+	 */
+	IPropertyContainer getProperties();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IConstraint#getProperties <em>Properties</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Properties</em>' containment reference.
+	 * @see #getProperties()
+	 * @generated
+	 */
+	void setProperties(IPropertyContainer value);
+
+	/**
+	 * Returns the value of the '<em><b>Anchors</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Anchors</em>' containment reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Anchors</em>' containment reference.
+	 * @see #setAnchors(IAnchor)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIConstraint_Anchors()
+	 * @model containment="true" resolveProxies="true"
+	 * @generated
+	 */
+	IAnchor getAnchors();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IConstraint#getAnchors <em>Anchors</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Anchors</em>' containment reference.
+	 * @see #getAnchors()
+	 * @generated
+	 */
+	void setAnchors(IAnchor value);
+
+} // IConstraint
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/IConstructor.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/IConstructor.java
new file mode 100755
index 0000000..b965016
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/IConstructor.java
@@ -0,0 +1,506 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel;
+
+import org.eclipse.emf.common.util.EList;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>IConstructor</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * </p>
+ * <ul>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IConstructor#getId <em>Id</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IConstructor#getMyState <em>My State</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IConstructor#getModifiedTimeWeak <em>Modified Time Weak</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IConstructor#getReturnType <em>Return Type</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IConstructor#getAbstract <em>Abstract</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IConstructor#getFinal <em>Final</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IConstructor#getConcurrency <em>Concurrency</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IConstructor#getProtection <em>Protection</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IConstructor#getStatic <em>Static</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IConstructor#getConstant <em>Constant</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IConstructor#getItsBody <em>Its Body</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IConstructor#getInitializer <em>Initializer</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IConstructor#getArgs <em>Args</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IConstructor#getName <em>Name</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IConstructor#getDescription <em>Description</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IConstructor#getRequiremenTracabilityHandle <em>Requiremen Tracability Handle</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IConstructor#getCodeUpdateCGTime <em>Code Update CG Time</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IConstructor#getTags <em>Tags</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IConstructor#getLastID <em>Last ID</em>}</li>
+ * </ul>
+ *
+ * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIConstructor()
+ * @model
+ * @generated
+ */
+public interface IConstructor extends OperationsType, M_subjectType, ItemsType {
+	/**
+	 * Returns the value of the '<em><b>Id</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Id</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Id</em>' attribute.
+	 * @see #setId(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIConstructor_Id()
+	 * @model
+	 * @generated
+	 */
+	String getId();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IConstructor#getId <em>Id</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Id</em>' attribute.
+	 * @see #getId()
+	 * @generated
+	 */
+	void setId(String value);
+
+	/**
+	 * Returns the value of the '<em><b>My State</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>My State</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>My State</em>' attribute.
+	 * @see #setMyState(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIConstructor_MyState()
+	 * @model
+	 * @generated
+	 */
+	String getMyState();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IConstructor#getMyState <em>My State</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>My State</em>' attribute.
+	 * @see #getMyState()
+	 * @generated
+	 */
+	void setMyState(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Modified Time Weak</b></em>' attribute list.
+	 * The list contents are of type {@link java.lang.String}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Modified Time Weak</em>' attribute list isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Modified Time Weak</em>' attribute list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIConstructor_ModifiedTimeWeak()
+	 * @model unique="false"
+	 * @generated
+	 */
+	EList<String> getModifiedTimeWeak();
+
+	/**
+	 * Returns the value of the '<em><b>Return Type</b></em>' reference list.
+	 * The list contents are of type {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UnknownType}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Return Type</em>' reference list isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Return Type</em>' reference list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIConstructor_ReturnType()
+	 * @model
+	 * @generated
+	 */
+	EList<UnknownType> getReturnType();
+
+	/**
+	 * Returns the value of the '<em><b>Abstract</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Abstract</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Abstract</em>' attribute.
+	 * @see #setAbstract(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIConstructor_Abstract()
+	 * @model
+	 * @generated
+	 */
+	String getAbstract();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IConstructor#getAbstract <em>Abstract</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Abstract</em>' attribute.
+	 * @see #getAbstract()
+	 * @generated
+	 */
+	void setAbstract(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Final</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Final</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Final</em>' attribute.
+	 * @see #setFinal(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIConstructor_Final()
+	 * @model
+	 * @generated
+	 */
+	String getFinal();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IConstructor#getFinal <em>Final</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Final</em>' attribute.
+	 * @see #getFinal()
+	 * @generated
+	 */
+	void setFinal(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Concurrency</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Concurrency</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Concurrency</em>' attribute.
+	 * @see #setConcurrency(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIConstructor_Concurrency()
+	 * @model
+	 * @generated
+	 */
+	String getConcurrency();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IConstructor#getConcurrency <em>Concurrency</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Concurrency</em>' attribute.
+	 * @see #getConcurrency()
+	 * @generated
+	 */
+	void setConcurrency(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Protection</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Protection</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Protection</em>' attribute.
+	 * @see #setProtection(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIConstructor_Protection()
+	 * @model
+	 * @generated
+	 */
+	String getProtection();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IConstructor#getProtection <em>Protection</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Protection</em>' attribute.
+	 * @see #getProtection()
+	 * @generated
+	 */
+	void setProtection(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Static</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Static</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Static</em>' attribute.
+	 * @see #setStatic(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIConstructor_Static()
+	 * @model
+	 * @generated
+	 */
+	String getStatic();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IConstructor#getStatic <em>Static</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Static</em>' attribute.
+	 * @see #getStatic()
+	 * @generated
+	 */
+	void setStatic(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Constant</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Constant</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Constant</em>' attribute.
+	 * @see #setConstant(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIConstructor_Constant()
+	 * @model
+	 * @generated
+	 */
+	String getConstant();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IConstructor#getConstant <em>Constant</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Constant</em>' attribute.
+	 * @see #getConstant()
+	 * @generated
+	 */
+	void setConstant(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Its Body</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Its Body</em>' containment reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Its Body</em>' containment reference.
+	 * @see #setItsBody(IBody)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIConstructor_ItsBody()
+	 * @model containment="true" resolveProxies="true"
+	 * @generated
+	 */
+	IBody getItsBody();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IConstructor#getItsBody <em>Its Body</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Its Body</em>' containment reference.
+	 * @see #getItsBody()
+	 * @generated
+	 */
+	void setItsBody(IBody value);
+
+	/**
+	 * Returns the value of the '<em><b>Initializer</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Initializer</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Initializer</em>' attribute.
+	 * @see #setInitializer(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIConstructor_Initializer()
+	 * @model
+	 * @generated
+	 */
+	String getInitializer();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IConstructor#getInitializer <em>Initializer</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Initializer</em>' attribute.
+	 * @see #getInitializer()
+	 * @generated
+	 */
+	void setInitializer(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Args</b></em>' containment reference list.
+	 * The list contents are of type {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IVariable}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Args</em>' containment reference list isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Args</em>' containment reference list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIConstructor_Args()
+	 * @model containment="true" resolveProxies="true"
+	 * @generated
+	 */
+	EList<IVariable> getArgs();
+
+	/**
+	 * Returns the value of the '<em><b>Name</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Name</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Name</em>' attribute.
+	 * @see #setName(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIConstructor_Name()
+	 * @model
+	 * @generated
+	 */
+	String getName();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IConstructor#getName <em>Name</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Name</em>' attribute.
+	 * @see #getName()
+	 * @generated
+	 */
+	void setName(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Description</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Description</em>' containment reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Description</em>' containment reference.
+	 * @see #setDescription(IDescription)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIConstructor_Description()
+	 * @model containment="true" resolveProxies="true"
+	 * @generated
+	 */
+	IDescription getDescription();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IConstructor#getDescription <em>Description</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Description</em>' containment reference.
+	 * @see #getDescription()
+	 * @generated
+	 */
+	void setDescription(IDescription value);
+
+	/**
+	 * Returns the value of the '<em><b>Requiremen Tracability Handle</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Requiremen Tracability Handle</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Requiremen Tracability Handle</em>' attribute.
+	 * @see #setRequiremenTracabilityHandle(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIConstructor_RequiremenTracabilityHandle()
+	 * @model
+	 * @generated
+	 */
+	String getRequiremenTracabilityHandle();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IConstructor#getRequiremenTracabilityHandle <em>Requiremen Tracability Handle</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Requiremen Tracability Handle</em>' attribute.
+	 * @see #getRequiremenTracabilityHandle()
+	 * @generated
+	 */
+	void setRequiremenTracabilityHandle(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Code Update CG Time</b></em>' attribute list.
+	 * The list contents are of type {@link java.lang.String}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Code Update CG Time</em>' attribute list isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Code Update CG Time</em>' attribute list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIConstructor_CodeUpdateCGTime()
+	 * @model unique="false"
+	 * @generated
+	 */
+	EList<String> getCodeUpdateCGTime();
+
+	/**
+	 * Returns the value of the '<em><b>Tags</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Tags</em>' containment reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Tags</em>' containment reference.
+	 * @see #setTags(ITag)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIConstructor_Tags()
+	 * @model containment="true" resolveProxies="true"
+	 * @generated
+	 */
+	ITag getTags();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IConstructor#getTags <em>Tags</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Tags</em>' containment reference.
+	 * @see #getTags()
+	 * @generated
+	 */
+	void setTags(ITag value);
+
+	/**
+	 * Returns the value of the '<em><b>Last ID</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Last ID</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Last ID</em>' attribute.
+	 * @see #setLastID(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIConstructor_LastID()
+	 * @model
+	 * @generated
+	 */
+	String getLastID();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IConstructor#getLastID <em>Last ID</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Last ID</em>' attribute.
+	 * @see #getLastID()
+	 * @generated
+	 */
+	void setLastID(String value);
+
+} // IConstructor
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/IContextSpecification.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/IContextSpecification.java
new file mode 100755
index 0000000..0acf4e8
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/IContextSpecification.java
@@ -0,0 +1,27 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel;
+
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>IContext Specification</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ *
+ * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIContextSpecification()
+ * @model
+ * @generated
+ */
+public interface IContextSpecification extends IValueSpecification {
+} // IContextSpecification
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/IControlledFile.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/IControlledFile.java
new file mode 100755
index 0000000..77b35ca
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/IControlledFile.java
@@ -0,0 +1,27 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel;
+
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>IControlled File</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ *
+ * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIControlledFile()
+ * @model
+ * @generated
+ */
+public interface IControlledFile extends IUnit {
+} // IControlledFile
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/IDefaultDrvdTrans.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/IDefaultDrvdTrans.java
new file mode 100755
index 0000000..42b2f20
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/IDefaultDrvdTrans.java
@@ -0,0 +1,194 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel;
+
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>IDefault Drvd Trans</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * </p>
+ * <ul>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IDefaultDrvdTrans#getItsSource <em>Its Source</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IDefaultDrvdTrans#getOfState <em>Of State</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IDefaultDrvdTrans#getErrorStatus <em>Error Status</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IDefaultDrvdTrans#getInheritsFromHandle <em>Inherits From Handle</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IDefaultDrvdTrans#getAnnotations <em>Annotations</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IDefaultDrvdTrans#getStereotypes <em>Stereotypes</em>}</li>
+ * </ul>
+ *
+ * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIDefaultDrvdTrans()
+ * @model
+ * @generated
+ */
+public interface IDefaultDrvdTrans extends DefaultTransType, TransitionsType, DependsOnType {
+	/**
+	 * Returns the value of the '<em><b>Its Source</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Its Source</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Its Source</em>' attribute.
+	 * @see #setItsSource(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIDefaultDrvdTrans_ItsSource()
+	 * @model
+	 * @generated
+	 */
+	String getItsSource();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IDefaultDrvdTrans#getItsSource <em>Its Source</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Its Source</em>' attribute.
+	 * @see #getItsSource()
+	 * @generated
+	 */
+	void setItsSource(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Of State</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Of State</em>' reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Of State</em>' reference.
+	 * @see #setOfState(IState)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIDefaultDrvdTrans_OfState()
+	 * @model
+	 * @generated
+	 */
+	IState getOfState();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IDefaultDrvdTrans#getOfState <em>Of State</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Of State</em>' reference.
+	 * @see #getOfState()
+	 * @generated
+	 */
+	void setOfState(IState value);
+
+	/**
+	 * Returns the value of the '<em><b>Error Status</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Error Status</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Error Status</em>' attribute.
+	 * @see #setErrorStatus(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIDefaultDrvdTrans_ErrorStatus()
+	 * @model
+	 * @generated
+	 */
+	String getErrorStatus();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IDefaultDrvdTrans#getErrorStatus <em>Error Status</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Error Status</em>' attribute.
+	 * @see #getErrorStatus()
+	 * @generated
+	 */
+	void setErrorStatus(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Inherits From Handle</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Inherits From Handle</em>' reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Inherits From Handle</em>' reference.
+	 * @see #setInheritsFromHandle(IDefaultDrvdTrans)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIDefaultDrvdTrans_InheritsFromHandle()
+	 * @model
+	 * @generated
+	 */
+	IDefaultDrvdTrans getInheritsFromHandle();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IDefaultDrvdTrans#getInheritsFromHandle <em>Inherits From Handle</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Inherits From Handle</em>' reference.
+	 * @see #getInheritsFromHandle()
+	 * @generated
+	 */
+	void setInheritsFromHandle(IDefaultDrvdTrans value);
+
+	/**
+	 * Returns the value of the '<em><b>Annotations</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Annotations</em>' containment reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Annotations</em>' containment reference.
+	 * @see #setAnnotations(IRequirement)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIDefaultDrvdTrans_Annotations()
+	 * @model containment="true" resolveProxies="true"
+	 * @generated
+	 */
+	IRequirement getAnnotations();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IDefaultDrvdTrans#getAnnotations <em>Annotations</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Annotations</em>' containment reference.
+	 * @see #getAnnotations()
+	 * @generated
+	 */
+	void setAnnotations(IRequirement value);
+
+	/**
+	 * Returns the value of the '<em><b>Stereotypes</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Stereotypes</em>' reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Stereotypes</em>' reference.
+	 * @see #setStereotypes(IStereotype)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIDefaultDrvdTrans_Stereotypes()
+	 * @model
+	 * @generated
+	 */
+	IStereotype getStereotypes();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IDefaultDrvdTrans#getStereotypes <em>Stereotypes</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Stereotypes</em>' reference.
+	 * @see #getStereotypes()
+	 * @generated
+	 */
+	void setStereotypes(IStereotype value);
+
+} // IDefaultDrvdTrans
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/IDependency.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/IDependency.java
new file mode 100755
index 0000000..eab7460
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/IDependency.java
@@ -0,0 +1,364 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel;
+
+import org.eclipse.emf.common.util.EList;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>IDependency</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * </p>
+ * <ul>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IDependency#getId <em>Id</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IDependency#getMyState <em>My State</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IDependency#getProperties <em>Properties</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IDependency#getName <em>Name</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IDependency#getStereotypes <em>Stereotypes</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IDependency#getModifiedTimeWeak <em>Modified Time Weak</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IDependency#getDependsOn <em>Depends On</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IDependency#getTags <em>Tags</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IDependency#getAnnotations <em>Annotations</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IDependency#getDependencies <em>Dependencies</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IDependency#getDescription <em>Description</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IDependency#getRequiremenTracabilityHandle <em>Requiremen Tracability Handle</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IDependency#getCodeUpdateCGTime <em>Code Update CG Time</em>}</li>
+ * </ul>
+ *
+ * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIDependency()
+ * @model
+ * @generated
+ */
+public interface IDependency extends IModelElement, DependsOnType, M_subjectType {
+	/**
+	 * Returns the value of the '<em><b>Id</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Id</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Id</em>' attribute.
+	 * @see #setId(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIDependency_Id()
+	 * @model
+	 * @generated
+	 */
+	String getId();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IDependency#getId <em>Id</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Id</em>' attribute.
+	 * @see #getId()
+	 * @generated
+	 */
+	void setId(String value);
+
+	/**
+	 * Returns the value of the '<em><b>My State</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>My State</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>My State</em>' attribute.
+	 * @see #setMyState(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIDependency_MyState()
+	 * @model
+	 * @generated
+	 */
+	String getMyState();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IDependency#getMyState <em>My State</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>My State</em>' attribute.
+	 * @see #getMyState()
+	 * @generated
+	 */
+	void setMyState(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Properties</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Properties</em>' containment reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Properties</em>' containment reference.
+	 * @see #setProperties(IPropertyContainer)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIDependency_Properties()
+	 * @model containment="true" resolveProxies="true"
+	 * @generated
+	 */
+	IPropertyContainer getProperties();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IDependency#getProperties <em>Properties</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Properties</em>' containment reference.
+	 * @see #getProperties()
+	 * @generated
+	 */
+	void setProperties(IPropertyContainer value);
+
+	/**
+	 * Returns the value of the '<em><b>Name</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Name</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Name</em>' attribute.
+	 * @see #setName(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIDependency_Name()
+	 * @model
+	 * @generated
+	 */
+	String getName();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IDependency#getName <em>Name</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Name</em>' attribute.
+	 * @see #getName()
+	 * @generated
+	 */
+	void setName(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Stereotypes</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Stereotypes</em>' reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Stereotypes</em>' reference.
+	 * @see #setStereotypes(IUnit)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIDependency_Stereotypes()
+	 * @model
+	 * @generated
+	 */
+	IUnit getStereotypes();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IDependency#getStereotypes <em>Stereotypes</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Stereotypes</em>' reference.
+	 * @see #getStereotypes()
+	 * @generated
+	 */
+	void setStereotypes(IUnit value);
+
+	/**
+	 * Returns the value of the '<em><b>Modified Time Weak</b></em>' attribute list.
+	 * The list contents are of type {@link java.lang.String}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Modified Time Weak</em>' attribute list isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Modified Time Weak</em>' attribute list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIDependency_ModifiedTimeWeak()
+	 * @model unique="false"
+	 * @generated
+	 */
+	EList<String> getModifiedTimeWeak();
+
+	/**
+	 * Returns the value of the '<em><b>Depends On</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Depends On</em>' reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Depends On</em>' reference.
+	 * @see #setDependsOn(DependsOnType)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIDependency_DependsOn()
+	 * @model
+	 * @generated
+	 */
+	DependsOnType getDependsOn();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IDependency#getDependsOn <em>Depends On</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Depends On</em>' reference.
+	 * @see #getDependsOn()
+	 * @generated
+	 */
+	void setDependsOn(DependsOnType value);
+
+	/**
+	 * Returns the value of the '<em><b>Tags</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Tags</em>' containment reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Tags</em>' containment reference.
+	 * @see #setTags(ITag)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIDependency_Tags()
+	 * @model containment="true" resolveProxies="true"
+	 * @generated
+	 */
+	ITag getTags();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IDependency#getTags <em>Tags</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Tags</em>' containment reference.
+	 * @see #getTags()
+	 * @generated
+	 */
+	void setTags(ITag value);
+
+	/**
+	 * Returns the value of the '<em><b>Annotations</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Annotations</em>' containment reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Annotations</em>' containment reference.
+	 * @see #setAnnotations(IComment)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIDependency_Annotations()
+	 * @model containment="true" resolveProxies="true"
+	 * @generated
+	 */
+	IComment getAnnotations();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IDependency#getAnnotations <em>Annotations</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Annotations</em>' containment reference.
+	 * @see #getAnnotations()
+	 * @generated
+	 */
+	void setAnnotations(IComment value);
+
+	/**
+	 * Returns the value of the '<em><b>Dependencies</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Dependencies</em>' containment reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Dependencies</em>' containment reference.
+	 * @see #setDependencies(IDependency)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIDependency_Dependencies()
+	 * @model containment="true" resolveProxies="true"
+	 * @generated
+	 */
+	IDependency getDependencies();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IDependency#getDependencies <em>Dependencies</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Dependencies</em>' containment reference.
+	 * @see #getDependencies()
+	 * @generated
+	 */
+	void setDependencies(IDependency value);
+
+	/**
+	 * Returns the value of the '<em><b>Description</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Description</em>' containment reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Description</em>' containment reference.
+	 * @see #setDescription(IDescription)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIDependency_Description()
+	 * @model containment="true" resolveProxies="true"
+	 * @generated
+	 */
+	IDescription getDescription();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IDependency#getDescription <em>Description</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Description</em>' containment reference.
+	 * @see #getDescription()
+	 * @generated
+	 */
+	void setDescription(IDescription value);
+
+	/**
+	 * Returns the value of the '<em><b>Requiremen Tracability Handle</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Requiremen Tracability Handle</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Requiremen Tracability Handle</em>' attribute.
+	 * @see #setRequiremenTracabilityHandle(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIDependency_RequiremenTracabilityHandle()
+	 * @model
+	 * @generated
+	 */
+	String getRequiremenTracabilityHandle();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IDependency#getRequiremenTracabilityHandle <em>Requiremen Tracability Handle</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Requiremen Tracability Handle</em>' attribute.
+	 * @see #getRequiremenTracabilityHandle()
+	 * @generated
+	 */
+	void setRequiremenTracabilityHandle(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Code Update CG Time</b></em>' attribute list.
+	 * The list contents are of type {@link java.lang.String}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Code Update CG Time</em>' attribute list isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Code Update CG Time</em>' attribute list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIDependency_CodeUpdateCGTime()
+	 * @model unique="false"
+	 * @generated
+	 */
+	EList<String> getCodeUpdateCGTime();
+
+} // IDependency
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/IDeploymentDiagram.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/IDeploymentDiagram.java
new file mode 100755
index 0000000..7197b25
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/IDeploymentDiagram.java
@@ -0,0 +1,27 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel;
+
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>IDeployment Diagram</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ *
+ * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIDeploymentDiagram()
+ * @model
+ * @generated
+ */
+public interface IDeploymentDiagram extends IDiagram {
+} // IDeploymentDiagram
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/IDescription.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/IDescription.java
new file mode 100755
index 0000000..4d37f90
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/IDescription.java
@@ -0,0 +1,104 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel;
+
+import org.eclipse.emf.common.util.EList;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>IDescription</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * </p>
+ * <ul>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IDescription#getTextRTF <em>Text RTF</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IDescription#getText <em>Text</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IDescription#getHyperlinks <em>Hyperlinks</em>}</li>
+ * </ul>
+ *
+ * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIDescription()
+ * @model
+ * @generated
+ */
+public interface IDescription extends DescriptionType {
+	/**
+	 * Returns the value of the '<em><b>Text RTF</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Text RTF</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Text RTF</em>' attribute.
+	 * @see #setTextRTF(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIDescription_TextRTF()
+	 * @model
+	 * @generated
+	 */
+	String getTextRTF();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IDescription#getTextRTF <em>Text RTF</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Text RTF</em>' attribute.
+	 * @see #getTextRTF()
+	 * @generated
+	 */
+	void setTextRTF(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Text</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Text</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Text</em>' attribute.
+	 * @see #setText(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIDescription_Text()
+	 * @model
+	 * @generated
+	 */
+	String getText();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IDescription#getText <em>Text</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Text</em>' attribute.
+	 * @see #getText()
+	 * @generated
+	 */
+	void setText(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Hyperlinks</b></em>' containment reference list.
+	 * The list contents are of type {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.HyperLinksType}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Hyperlinks</em>' containment reference list isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Hyperlinks</em>' containment reference list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIDescription_Hyperlinks()
+	 * @model containment="true" resolveProxies="true"
+	 * @generated
+	 */
+	EList<HyperLinksType> getHyperlinks();
+
+} // IDescription
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/IDestructor.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/IDestructor.java
new file mode 100755
index 0000000..6d812d3
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/IDestructor.java
@@ -0,0 +1,418 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel;
+
+import org.eclipse.emf.common.util.EList;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>IDestructor</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * </p>
+ * <ul>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IDestructor#getId <em>Id</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IDestructor#getName <em>Name</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IDestructor#getArgs <em>Args</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IDestructor#getAbstract <em>Abstract</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IDestructor#getFinal <em>Final</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IDestructor#getConcurrency <em>Concurrency</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IDestructor#getProtection <em>Protection</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IDestructor#getStatic <em>Static</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IDestructor#getConstant <em>Constant</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IDestructor#getItsBody <em>Its Body</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IDestructor#getModifiedTimeWeak <em>Modified Time Weak</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IDestructor#getDescription <em>Description</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IDestructor#getProperties <em>Properties</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IDestructor#getMyState <em>My State</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IDestructor#getReturnType <em>Return Type</em>}</li>
+ * </ul>
+ *
+ * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIDestructor()
+ * @model
+ * @generated
+ */
+public interface IDestructor extends OperationsType, M_subjectType {
+	/**
+	 * Returns the value of the '<em><b>Id</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Id</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Id</em>' attribute.
+	 * @see #setId(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIDestructor_Id()
+	 * @model
+	 * @generated
+	 */
+	String getId();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IDestructor#getId <em>Id</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Id</em>' attribute.
+	 * @see #getId()
+	 * @generated
+	 */
+	void setId(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Name</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Name</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Name</em>' attribute.
+	 * @see #setName(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIDestructor_Name()
+	 * @model
+	 * @generated
+	 */
+	String getName();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IDestructor#getName <em>Name</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Name</em>' attribute.
+	 * @see #getName()
+	 * @generated
+	 */
+	void setName(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Args</b></em>' reference list.
+	 * The list contents are of type {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UnknownType}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Args</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>Args</em>' reference list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIDestructor_Args()
+	 * @model
+	 * @generated
+	 */
+	EList<UnknownType> getArgs();
+
+	/**
+	 * Returns the value of the '<em><b>Abstract</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Abstract</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Abstract</em>' attribute.
+	 * @see #setAbstract(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIDestructor_Abstract()
+	 * @model
+	 * @generated
+	 */
+	String getAbstract();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IDestructor#getAbstract <em>Abstract</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Abstract</em>' attribute.
+	 * @see #getAbstract()
+	 * @generated
+	 */
+	void setAbstract(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Final</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Final</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Final</em>' attribute.
+	 * @see #setFinal(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIDestructor_Final()
+	 * @model
+	 * @generated
+	 */
+	String getFinal();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IDestructor#getFinal <em>Final</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Final</em>' attribute.
+	 * @see #getFinal()
+	 * @generated
+	 */
+	void setFinal(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Concurrency</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Concurrency</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Concurrency</em>' attribute.
+	 * @see #setConcurrency(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIDestructor_Concurrency()
+	 * @model
+	 * @generated
+	 */
+	String getConcurrency();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IDestructor#getConcurrency <em>Concurrency</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Concurrency</em>' attribute.
+	 * @see #getConcurrency()
+	 * @generated
+	 */
+	void setConcurrency(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Protection</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Protection</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Protection</em>' attribute.
+	 * @see #setProtection(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIDestructor_Protection()
+	 * @model
+	 * @generated
+	 */
+	String getProtection();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IDestructor#getProtection <em>Protection</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Protection</em>' attribute.
+	 * @see #getProtection()
+	 * @generated
+	 */
+	void setProtection(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Static</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Static</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Static</em>' attribute.
+	 * @see #setStatic(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIDestructor_Static()
+	 * @model
+	 * @generated
+	 */
+	String getStatic();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IDestructor#getStatic <em>Static</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Static</em>' attribute.
+	 * @see #getStatic()
+	 * @generated
+	 */
+	void setStatic(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Constant</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Constant</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Constant</em>' attribute.
+	 * @see #setConstant(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIDestructor_Constant()
+	 * @model
+	 * @generated
+	 */
+	String getConstant();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IDestructor#getConstant <em>Constant</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Constant</em>' attribute.
+	 * @see #getConstant()
+	 * @generated
+	 */
+	void setConstant(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Its Body</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Its Body</em>' containment reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Its Body</em>' containment reference.
+	 * @see #setItsBody(IBody)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIDestructor_ItsBody()
+	 * @model containment="true" resolveProxies="true"
+	 * @generated
+	 */
+	IBody getItsBody();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IDestructor#getItsBody <em>Its Body</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Its Body</em>' containment reference.
+	 * @see #getItsBody()
+	 * @generated
+	 */
+	void setItsBody(IBody value);
+
+	/**
+	 * Returns the value of the '<em><b>Modified Time Weak</b></em>' attribute list.
+	 * The list contents are of type {@link java.lang.String}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Modified Time Weak</em>' attribute list isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Modified Time Weak</em>' attribute list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIDestructor_ModifiedTimeWeak()
+	 * @model unique="false"
+	 * @generated
+	 */
+	EList<String> getModifiedTimeWeak();
+
+	/**
+	 * Returns the value of the '<em><b>Description</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Description</em>' containment reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Description</em>' containment reference.
+	 * @see #setDescription(IDescription)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIDestructor_Description()
+	 * @model containment="true" resolveProxies="true"
+	 * @generated
+	 */
+	IDescription getDescription();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IDestructor#getDescription <em>Description</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Description</em>' containment reference.
+	 * @see #getDescription()
+	 * @generated
+	 */
+	void setDescription(IDescription value);
+
+	/**
+	 * Returns the value of the '<em><b>Properties</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Properties</em>' containment reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Properties</em>' containment reference.
+	 * @see #setProperties(IPropertyContainer)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIDestructor_Properties()
+	 * @model containment="true" resolveProxies="true"
+	 * @generated
+	 */
+	IPropertyContainer getProperties();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IDestructor#getProperties <em>Properties</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Properties</em>' containment reference.
+	 * @see #getProperties()
+	 * @generated
+	 */
+	void setProperties(IPropertyContainer value);
+
+	/**
+	 * Returns the value of the '<em><b>My State</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>My State</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>My State</em>' attribute.
+	 * @see #setMyState(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIDestructor_MyState()
+	 * @model
+	 * @generated
+	 */
+	String getMyState();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IDestructor#getMyState <em>My State</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>My State</em>' attribute.
+	 * @see #getMyState()
+	 * @generated
+	 */
+	void setMyState(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Return Type</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Return Type</em>' reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Return Type</em>' reference.
+	 * @see #setReturnType(IClassifier)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIDestructor_ReturnType()
+	 * @model
+	 * @generated
+	 */
+	IClassifier getReturnType();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IDestructor#getReturnType <em>Return Type</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Return Type</em>' reference.
+	 * @see #getReturnType()
+	 * @generated
+	 */
+	void setReturnType(IClassifier value);
+
+} // IDestructor
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/IDiagram.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/IDiagram.java
new file mode 100755
index 0000000..e9caa73
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/IDiagram.java
@@ -0,0 +1,182 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel;
+
+import org.eclipse.emf.common.util.EList;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>IDiagram</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * </p>
+ * <ul>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IDiagram#getProperties <em>Properties</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IDiagram#getStereotypes <em>Stereotypes</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IDiagram#getModifiedTimeWeak <em>Modified Time Weak</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IDiagram#getGraphicChart <em>Graphic Chart</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IDiagram#getAnnotations <em>Annotations</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IDiagram#getCodeUpdateCGTime <em>Code Update CG Time</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IDiagram#getHyperLinks <em>Hyper Links</em>}</li>
+ * </ul>
+ *
+ * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIDiagram()
+ * @model
+ * @generated
+ */
+public interface IDiagram extends IUnit, TheMainDiagramType, DeclarativesType, DependsOnType, TargetType, M_pModelObjectType {
+	/**
+	 * Returns the value of the '<em><b>Properties</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Properties</em>' containment reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Properties</em>' containment reference.
+	 * @see #setProperties(PropertiesType)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIDiagram_Properties()
+	 * @model containment="true" resolveProxies="true"
+	 * @generated
+	 */
+	PropertiesType getProperties();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IDiagram#getProperties <em>Properties</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Properties</em>' containment reference.
+	 * @see #getProperties()
+	 * @generated
+	 */
+	void setProperties(PropertiesType value);
+
+	/**
+	 * Returns the value of the '<em><b>Stereotypes</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Stereotypes</em>' reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Stereotypes</em>' reference.
+	 * @see #setStereotypes(IModelElement)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIDiagram_Stereotypes()
+	 * @model
+	 * @generated
+	 */
+	IModelElement getStereotypes();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IDiagram#getStereotypes <em>Stereotypes</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Stereotypes</em>' reference.
+	 * @see #getStereotypes()
+	 * @generated
+	 */
+	void setStereotypes(IModelElement value);
+
+	/**
+	 * Returns the value of the '<em><b>Modified Time Weak</b></em>' attribute list.
+	 * The list contents are of type {@link java.lang.String}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Modified Time Weak</em>' attribute list isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Modified Time Weak</em>' attribute list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIDiagram_ModifiedTimeWeak()
+	 * @model unique="false"
+	 * @generated
+	 */
+	EList<String> getModifiedTimeWeak();
+
+	/**
+	 * Returns the value of the '<em><b>Graphic Chart</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Graphic Chart</em>' containment reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Graphic Chart</em>' containment reference.
+	 * @see #setGraphicChart(GraphicChartType)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIDiagram_GraphicChart()
+	 * @model containment="true" resolveProxies="true"
+	 * @generated
+	 */
+	GraphicChartType getGraphicChart();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IDiagram#getGraphicChart <em>Graphic Chart</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Graphic Chart</em>' containment reference.
+	 * @see #getGraphicChart()
+	 * @generated
+	 */
+	void setGraphicChart(GraphicChartType value);
+
+	/**
+	 * Returns the value of the '<em><b>Annotations</b></em>' containment reference list.
+	 * The list contents are of type {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IAnnotation}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Annotations</em>' containment reference list isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Annotations</em>' containment reference list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIDiagram_Annotations()
+	 * @model containment="true" resolveProxies="true"
+	 * @generated
+	 */
+	EList<IAnnotation> getAnnotations();
+
+	/**
+	 * Returns the value of the '<em><b>Code Update CG Time</b></em>' attribute list.
+	 * The list contents are of type {@link java.lang.String}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Code Update CG Time</em>' attribute list isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Code Update CG Time</em>' attribute list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIDiagram_CodeUpdateCGTime()
+	 * @model unique="false"
+	 * @generated
+	 */
+	EList<String> getCodeUpdateCGTime();
+
+	/**
+	 * Returns the value of the '<em><b>Hyper Links</b></em>' containment reference list.
+	 * The list contents are of type {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMHyperLink}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Hyper Links</em>' containment reference list isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Hyper Links</em>' containment reference list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIDiagram_HyperLinks()
+	 * @model containment="true" resolveProxies="true"
+	 * @generated
+	 */
+	EList<IMHyperLink> getHyperLinks();
+
+} // IDiagram
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/IEmbededFile.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/IEmbededFile.java
new file mode 100755
index 0000000..d08d4a9
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/IEmbededFile.java
@@ -0,0 +1,212 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel;
+
+import org.eclipse.emf.common.util.EList;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>IEmbeded File</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * </p>
+ * <ul>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IEmbededFile#getId <em>Id</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IEmbededFile#getName <em>Name</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IEmbededFile#getModifiedTimeWeak <em>Modified Time Weak</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IEmbededFile#getMayNeedToRelocate <em>May Need To Relocate</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IEmbededFile#getLastKnownFullPath <em>Last Known Full Path</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IEmbededFile#getStereotypes <em>Stereotypes</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IEmbededFile#getTags <em>Tags</em>}</li>
+ * </ul>
+ *
+ * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIEmbededFile()
+ * @model
+ * @generated
+ */
+public interface IEmbededFile extends EmbededFilesType {
+	/**
+	 * Returns the value of the '<em><b>Id</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Id</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Id</em>' attribute.
+	 * @see #setId(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIEmbededFile_Id()
+	 * @model
+	 * @generated
+	 */
+	String getId();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IEmbededFile#getId <em>Id</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Id</em>' attribute.
+	 * @see #getId()
+	 * @generated
+	 */
+	void setId(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Name</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Name</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Name</em>' attribute.
+	 * @see #setName(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIEmbededFile_Name()
+	 * @model
+	 * @generated
+	 */
+	String getName();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IEmbededFile#getName <em>Name</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Name</em>' attribute.
+	 * @see #getName()
+	 * @generated
+	 */
+	void setName(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Modified Time Weak</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Modified Time Weak</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Modified Time Weak</em>' attribute.
+	 * @see #setModifiedTimeWeak(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIEmbededFile_ModifiedTimeWeak()
+	 * @model
+	 * @generated
+	 */
+	String getModifiedTimeWeak();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IEmbededFile#getModifiedTimeWeak <em>Modified Time Weak</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Modified Time Weak</em>' attribute.
+	 * @see #getModifiedTimeWeak()
+	 * @generated
+	 */
+	void setModifiedTimeWeak(String value);
+
+	/**
+	 * Returns the value of the '<em><b>May Need To Relocate</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>May Need To Relocate</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>May Need To Relocate</em>' attribute.
+	 * @see #setMayNeedToRelocate(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIEmbededFile_MayNeedToRelocate()
+	 * @model
+	 * @generated
+	 */
+	String getMayNeedToRelocate();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IEmbededFile#getMayNeedToRelocate <em>May Need To Relocate</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>May Need To Relocate</em>' attribute.
+	 * @see #getMayNeedToRelocate()
+	 * @generated
+	 */
+	void setMayNeedToRelocate(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Last Known Full Path</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Last Known Full Path</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Last Known Full Path</em>' attribute.
+	 * @see #setLastKnownFullPath(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIEmbededFile_LastKnownFullPath()
+	 * @model
+	 * @generated
+	 */
+	String getLastKnownFullPath();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IEmbededFile#getLastKnownFullPath <em>Last Known Full Path</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Last Known Full Path</em>' attribute.
+	 * @see #getLastKnownFullPath()
+	 * @generated
+	 */
+	void setLastKnownFullPath(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Stereotypes</b></em>' reference list.
+	 * The list contents are of type {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UnknownType}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Stereotypes</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>Stereotypes</em>' reference list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIEmbededFile_Stereotypes()
+	 * @model
+	 * @generated
+	 */
+	EList<UnknownType> getStereotypes();
+
+	/**
+	 * Returns the value of the '<em><b>Tags</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Tags</em>' containment reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Tags</em>' containment reference.
+	 * @see #setTags(ITag)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIEmbededFile_Tags()
+	 * @model containment="true" resolveProxies="true"
+	 * @generated
+	 */
+	ITag getTags();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IEmbededFile#getTags <em>Tags</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Tags</em>' containment reference.
+	 * @see #getTags()
+	 * @generated
+	 */
+	void setTags(ITag value);
+
+} // IEmbededFile
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/IEnumerationLiteral.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/IEnumerationLiteral.java
new file mode 100755
index 0000000..800db91
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/IEnumerationLiteral.java
@@ -0,0 +1,229 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel;
+
+import org.eclipse.emf.common.util.EList;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>IEnumeration Literal</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * </p>
+ * <ul>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IEnumerationLiteral#getId <em>Id</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IEnumerationLiteral#getName <em>Name</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IEnumerationLiteral#getModifiedTimeWeak <em>Modified Time Weak</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IEnumerationLiteral#getValue <em>Value</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IEnumerationLiteral#getProperties <em>Properties</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IEnumerationLiteral#getTags <em>Tags</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IEnumerationLiteral#getCodeUpdateCGTime <em>Code Update CG Time</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IEnumerationLiteral#getDescription <em>Description</em>}</li>
+ * </ul>
+ *
+ * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIEnumerationLiteral()
+ * @model
+ * @generated
+ */
+public interface IEnumerationLiteral extends IModelElement, ItemsType {
+	/**
+	 * Returns the value of the '<em><b>Id</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Id</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Id</em>' attribute.
+	 * @see #setId(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIEnumerationLiteral_Id()
+	 * @model
+	 * @generated
+	 */
+	String getId();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IEnumerationLiteral#getId <em>Id</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Id</em>' attribute.
+	 * @see #getId()
+	 * @generated
+	 */
+	void setId(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Name</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Name</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Name</em>' attribute.
+	 * @see #setName(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIEnumerationLiteral_Name()
+	 * @model
+	 * @generated
+	 */
+	String getName();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IEnumerationLiteral#getName <em>Name</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Name</em>' attribute.
+	 * @see #getName()
+	 * @generated
+	 */
+	void setName(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Modified Time Weak</b></em>' attribute list.
+	 * The list contents are of type {@link java.lang.String}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Modified Time Weak</em>' attribute list isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Modified Time Weak</em>' attribute list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIEnumerationLiteral_ModifiedTimeWeak()
+	 * @model unique="false"
+	 * @generated
+	 */
+	EList<String> getModifiedTimeWeak();
+
+	/**
+	 * Returns the value of the '<em><b>Value</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Value</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Value</em>' attribute.
+	 * @see #setValue(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIEnumerationLiteral_Value()
+	 * @model
+	 * @generated
+	 */
+	String getValue();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IEnumerationLiteral#getValue <em>Value</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Value</em>' attribute.
+	 * @see #getValue()
+	 * @generated
+	 */
+	void setValue(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Properties</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Properties</em>' containment reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Properties</em>' containment reference.
+	 * @see #setProperties(IPropertyContainer)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIEnumerationLiteral_Properties()
+	 * @model containment="true" resolveProxies="true"
+	 * @generated
+	 */
+	IPropertyContainer getProperties();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IEnumerationLiteral#getProperties <em>Properties</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Properties</em>' containment reference.
+	 * @see #getProperties()
+	 * @generated
+	 */
+	void setProperties(IPropertyContainer value);
+
+	/**
+	 * Returns the value of the '<em><b>Tags</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Tags</em>' containment reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Tags</em>' containment reference.
+	 * @see #setTags(ITag)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIEnumerationLiteral_Tags()
+	 * @model containment="true" resolveProxies="true"
+	 * @generated
+	 */
+	ITag getTags();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IEnumerationLiteral#getTags <em>Tags</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Tags</em>' containment reference.
+	 * @see #getTags()
+	 * @generated
+	 */
+	void setTags(ITag value);
+
+	/**
+	 * Returns the value of the '<em><b>Code Update CG Time</b></em>' attribute list.
+	 * The list contents are of type {@link java.lang.String}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Code Update CG Time</em>' attribute list isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Code Update CG Time</em>' attribute list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIEnumerationLiteral_CodeUpdateCGTime()
+	 * @model unique="false"
+	 * @generated
+	 */
+	EList<String> getCodeUpdateCGTime();
+
+	/**
+	 * Returns the value of the '<em><b>Description</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Description</em>' containment reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Description</em>' containment reference.
+	 * @see #setDescription(IDescription)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIEnumerationLiteral_Description()
+	 * @model containment="true" resolveProxies="true"
+	 * @generated
+	 */
+	IDescription getDescription();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IEnumerationLiteral#getDescription <em>Description</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Description</em>' containment reference.
+	 * @see #getDescription()
+	 * @generated
+	 */
+	void setDescription(IDescription value);
+
+} // IEnumerationLiteral
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/IEvent.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/IEvent.java
new file mode 100755
index 0000000..9062dc0
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/IEvent.java
@@ -0,0 +1,371 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel;
+
+import org.eclipse.emf.common.util.EList;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>IEvent</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * </p>
+ * <ul>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IEvent#getId <em>Id</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IEvent#getMyState <em>My State</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IEvent#getName <em>Name</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IEvent#getVirtual <em>Virtual</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IEvent#getModifiedTimeWeak <em>Modified Time Weak</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IEvent#getArgs <em>Args</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IEvent#getStereotypes <em>Stereotypes</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IEvent#getDescription <em>Description</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IEvent#getProperties <em>Properties</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IEvent#getDependencies <em>Dependencies</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IEvent#getTags <em>Tags</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IEvent#getSuperEvent <em>Super Event</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IEvent#getRequiremenTracabilityHandle <em>Requiremen Tracability Handle</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IEvent#getAnnotations <em>Annotations</em>}</li>
+ * </ul>
+ *
+ * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIEvent()
+ * @model
+ * @generated
+ */
+public interface IEvent extends IInterfaceItem, M_subjectType, M_pFormalMessageType, ConveyedType, TargetType, M_pModelObjectType {
+	/**
+	 * Returns the value of the '<em><b>Id</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Id</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Id</em>' attribute.
+	 * @see #setId(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIEvent_Id()
+	 * @model
+	 * @generated
+	 */
+	String getId();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IEvent#getId <em>Id</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Id</em>' attribute.
+	 * @see #getId()
+	 * @generated
+	 */
+	void setId(String value);
+
+	/**
+	 * Returns the value of the '<em><b>My State</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>My State</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>My State</em>' attribute.
+	 * @see #setMyState(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIEvent_MyState()
+	 * @model
+	 * @generated
+	 */
+	String getMyState();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IEvent#getMyState <em>My State</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>My State</em>' attribute.
+	 * @see #getMyState()
+	 * @generated
+	 */
+	void setMyState(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Name</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Name</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Name</em>' attribute.
+	 * @see #setName(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIEvent_Name()
+	 * @model
+	 * @generated
+	 */
+	String getName();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IEvent#getName <em>Name</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Name</em>' attribute.
+	 * @see #getName()
+	 * @generated
+	 */
+	void setName(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Virtual</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Virtual</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Virtual</em>' attribute.
+	 * @see #setVirtual(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIEvent_Virtual()
+	 * @model
+	 * @generated
+	 */
+	String getVirtual();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IEvent#getVirtual <em>Virtual</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Virtual</em>' attribute.
+	 * @see #getVirtual()
+	 * @generated
+	 */
+	void setVirtual(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Modified Time Weak</b></em>' attribute list.
+	 * The list contents are of type {@link java.lang.String}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Modified Time Weak</em>' attribute list isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Modified Time Weak</em>' attribute list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIEvent_ModifiedTimeWeak()
+	 * @model unique="false"
+	 * @generated
+	 */
+	EList<String> getModifiedTimeWeak();
+
+	/**
+	 * Returns the value of the '<em><b>Args</b></em>' containment reference list.
+	 * The list contents are of type {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IVariable}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Args</em>' containment reference list isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Args</em>' containment reference list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIEvent_Args()
+	 * @model containment="true" resolveProxies="true"
+	 * @generated
+	 */
+	EList<IVariable> getArgs();
+
+	/**
+	 * Returns the value of the '<em><b>Stereotypes</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Stereotypes</em>' reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Stereotypes</em>' reference.
+	 * @see #setStereotypes(IClassifier)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIEvent_Stereotypes()
+	 * @model
+	 * @generated
+	 */
+	IClassifier getStereotypes();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IEvent#getStereotypes <em>Stereotypes</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Stereotypes</em>' reference.
+	 * @see #getStereotypes()
+	 * @generated
+	 */
+	void setStereotypes(IClassifier value);
+
+	/**
+	 * Returns the value of the '<em><b>Description</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Description</em>' containment reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Description</em>' containment reference.
+	 * @see #setDescription(IDescription)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIEvent_Description()
+	 * @model containment="true" resolveProxies="true"
+	 * @generated
+	 */
+	IDescription getDescription();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IEvent#getDescription <em>Description</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Description</em>' containment reference.
+	 * @see #getDescription()
+	 * @generated
+	 */
+	void setDescription(IDescription value);
+
+	/**
+	 * Returns the value of the '<em><b>Properties</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Properties</em>' containment reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Properties</em>' containment reference.
+	 * @see #setProperties(IPropertyContainer)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIEvent_Properties()
+	 * @model containment="true" resolveProxies="true"
+	 * @generated
+	 */
+	IPropertyContainer getProperties();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IEvent#getProperties <em>Properties</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Properties</em>' containment reference.
+	 * @see #getProperties()
+	 * @generated
+	 */
+	void setProperties(IPropertyContainer value);
+
+	/**
+	 * Returns the value of the '<em><b>Dependencies</b></em>' containment reference list.
+	 * The list contents are of type {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IDependency}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Dependencies</em>' containment reference list isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Dependencies</em>' containment reference list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIEvent_Dependencies()
+	 * @model containment="true" resolveProxies="true"
+	 * @generated
+	 */
+	EList<IDependency> getDependencies();
+
+	/**
+	 * Returns the value of the '<em><b>Tags</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Tags</em>' containment reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Tags</em>' containment reference.
+	 * @see #setTags(ITag)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIEvent_Tags()
+	 * @model containment="true" resolveProxies="true"
+	 * @generated
+	 */
+	ITag getTags();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IEvent#getTags <em>Tags</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Tags</em>' containment reference.
+	 * @see #getTags()
+	 * @generated
+	 */
+	void setTags(ITag value);
+
+	/**
+	 * Returns the value of the '<em><b>Super Event</b></em>' reference list.
+	 * The list contents are of type {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UnknownType}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Super Event</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>Super Event</em>' reference list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIEvent_SuperEvent()
+	 * @model
+	 * @generated
+	 */
+	EList<UnknownType> getSuperEvent();
+
+	/**
+	 * Returns the value of the '<em><b>Requiremen Tracability Handle</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Requiremen Tracability Handle</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Requiremen Tracability Handle</em>' attribute.
+	 * @see #setRequiremenTracabilityHandle(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIEvent_RequiremenTracabilityHandle()
+	 * @model
+	 * @generated
+	 */
+	String getRequiremenTracabilityHandle();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IEvent#getRequiremenTracabilityHandle <em>Requiremen Tracability Handle</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Requiremen Tracability Handle</em>' attribute.
+	 * @see #getRequiremenTracabilityHandle()
+	 * @generated
+	 */
+	void setRequiremenTracabilityHandle(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Annotations</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Annotations</em>' containment reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Annotations</em>' containment reference.
+	 * @see #setAnnotations(IConstraint)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIEvent_Annotations()
+	 * @model containment="true" resolveProxies="true"
+	 * @generated
+	 */
+	IConstraint getAnnotations();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IEvent#getAnnotations <em>Annotations</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Annotations</em>' containment reference.
+	 * @see #getAnnotations()
+	 * @generated
+	 */
+	void setAnnotations(IConstraint value);
+
+} // IEvent
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/IEventHandle.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/IEventHandle.java
new file mode 100755
index 0000000..bf4daa5
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/IEventHandle.java
@@ -0,0 +1,195 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel;
+
+import org.eclipse.emf.ecore.EObject;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>IEvent Handle</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * </p>
+ * <ul>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IEventHandle#getM2Class <em>M2 Class</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IEventHandle#getFilename <em>Filename</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IEventHandle#getSubsystem <em>Subsystem</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IEventHandle#getClass_ <em>Class</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IEventHandle#getName <em>Name</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IEventHandle#getId <em>Id</em>}</li>
+ * </ul>
+ *
+ * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIEventHandle()
+ * @model
+ * @generated
+ */
+public interface IEventHandle extends EObject {
+	/**
+	 * Returns the value of the '<em><b>M2 Class</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>M2 Class</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>M2 Class</em>' attribute.
+	 * @see #setM2Class(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIEventHandle_M2Class()
+	 * @model
+	 * @generated
+	 */
+	String getM2Class();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IEventHandle#getM2Class <em>M2 Class</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>M2 Class</em>' attribute.
+	 * @see #getM2Class()
+	 * @generated
+	 */
+	void setM2Class(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Filename</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Filename</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Filename</em>' attribute.
+	 * @see #setFilename(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIEventHandle_Filename()
+	 * @model
+	 * @generated
+	 */
+	String getFilename();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IEventHandle#getFilename <em>Filename</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Filename</em>' attribute.
+	 * @see #getFilename()
+	 * @generated
+	 */
+	void setFilename(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Subsystem</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Subsystem</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Subsystem</em>' attribute.
+	 * @see #setSubsystem(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIEventHandle_Subsystem()
+	 * @model
+	 * @generated
+	 */
+	String getSubsystem();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IEventHandle#getSubsystem <em>Subsystem</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Subsystem</em>' attribute.
+	 * @see #getSubsystem()
+	 * @generated
+	 */
+	void setSubsystem(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Class</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Class</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Class</em>' attribute.
+	 * @see #setClass(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIEventHandle_Class()
+	 * @model
+	 * @generated
+	 */
+	String getClass_();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IEventHandle#getClass_ <em>Class</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Class</em>' attribute.
+	 * @see #getClass_()
+	 * @generated
+	 */
+	void setClass(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Name</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Name</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Name</em>' attribute.
+	 * @see #setName(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIEventHandle_Name()
+	 * @model
+	 * @generated
+	 */
+	String getName();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IEventHandle#getName <em>Name</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Name</em>' attribute.
+	 * @see #getName()
+	 * @generated
+	 */
+	void setName(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Id</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Id</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Id</em>' attribute.
+	 * @see #setId(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIEventHandle_Id()
+	 * @model
+	 * @generated
+	 */
+	String getId();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IEventHandle#getId <em>Id</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Id</em>' attribute.
+	 * @see #getId()
+	 * @generated
+	 */
+	void setId(String value);
+
+} // IEventHandle
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/IEventReception.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/IEventReception.java
new file mode 100755
index 0000000..956524c
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/IEventReception.java
@@ -0,0 +1,27 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel;
+
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>IEvent Reception</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ *
+ * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIEventReception()
+ * @model
+ * @generated
+ */
+public interface IEventReception extends IInterfaceItem {
+} // IEventReception
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/IExecutionOccurrence.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/IExecutionOccurrence.java
new file mode 100755
index 0000000..1bc3531
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/IExecutionOccurrence.java
@@ -0,0 +1,131 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel;
+
+import org.eclipse.emf.common.util.EList;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>IExecution Occurrence</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * </p>
+ * <ul>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IExecutionOccurrence#getId <em>Id</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IExecutionOccurrence#getM_startMessage <em>Mstart Message</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IExecutionOccurrence#getM_endMessage <em>Mend Message</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IExecutionOccurrence#getM_length <em>Mlength</em>}</li>
+ * </ul>
+ *
+ * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIExecutionOccurrence()
+ * @model
+ * @generated
+ */
+public interface IExecutionOccurrence extends IModelElement {
+	/**
+	 * Returns the value of the '<em><b>Id</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Id</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Id</em>' attribute.
+	 * @see #setId(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIExecutionOccurrence_Id()
+	 * @model
+	 * @generated
+	 */
+	String getId();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IExecutionOccurrence#getId <em>Id</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Id</em>' attribute.
+	 * @see #getId()
+	 * @generated
+	 */
+	void setId(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Mstart Message</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Mstart Message</em>' reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Mstart Message</em>' reference.
+	 * @see #setM_startMessage(IMessage)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIExecutionOccurrence_M_startMessage()
+	 * @model
+	 * @generated
+	 */
+	IMessage getM_startMessage();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IExecutionOccurrence#getM_startMessage <em>Mstart Message</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Mstart Message</em>' reference.
+	 * @see #getM_startMessage()
+	 * @generated
+	 */
+	void setM_startMessage(IMessage value);
+
+	/**
+	 * Returns the value of the '<em><b>Mend Message</b></em>' reference list.
+	 * The list contents are of type {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UnknownType}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Mend Message</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>Mend Message</em>' reference list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIExecutionOccurrence_M_endMessage()
+	 * @model
+	 * @generated
+	 */
+	EList<UnknownType> getM_endMessage();
+
+	/**
+	 * Returns the value of the '<em><b>Mlength</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Mlength</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Mlength</em>' attribute.
+	 * @see #setM_length(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIExecutionOccurrence_M_length()
+	 * @model
+	 * @generated
+	 */
+	String getM_length();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IExecutionOccurrence#getM_length <em>Mlength</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Mlength</em>' attribute.
+	 * @see #getM_length()
+	 * @generated
+	 */
+	void setM_length(String value);
+
+} // IExecutionOccurrence
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/IExternalHyperlink.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/IExternalHyperlink.java
new file mode 100755
index 0000000..b435e7e
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/IExternalHyperlink.java
@@ -0,0 +1,59 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel;
+
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>IExternal Hyperlink</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * </p>
+ * <ul>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IExternalHyperlink#getTarget <em>Target</em>}</li>
+ * </ul>
+ *
+ * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIExternalHyperlink()
+ * @model
+ * @generated
+ */
+public interface IExternalHyperlink extends HyperLinksType {
+	/**
+	 * Returns the value of the '<em><b>Target</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Target</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Target</em>' attribute.
+	 * @see #setTarget(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIExternalHyperlink_Target()
+	 * @model
+	 * @generated
+	 */
+	String getTarget();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IExternalHyperlink#getTarget <em>Target</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Target</em>' attribute.
+	 * @see #getTarget()
+	 * @generated
+	 */
+	void setTarget(String value);
+
+} // IExternalHyperlink
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/IFile.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/IFile.java
new file mode 100755
index 0000000..7aa46e9
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/IFile.java
@@ -0,0 +1,148 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel;
+
+import org.eclipse.emf.common.util.EList;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>IFile</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * </p>
+ * <ul>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IFile#getProperties <em>Properties</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IFile#getM_type <em>Mtype</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IFile#getFragments <em>Fragments</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IFile#getDescription <em>Description</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IFile#getDependencies <em>Dependencies</em>}</li>
+ * </ul>
+ *
+ * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIFile()
+ * @model
+ * @generated
+ */
+public interface IFile extends IUnit, FilesType {
+	/**
+	 * Returns the value of the '<em><b>Properties</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Properties</em>' containment reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Properties</em>' containment reference.
+	 * @see #setProperties(IPropertyContainer)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIFile_Properties()
+	 * @model containment="true" resolveProxies="true"
+	 * @generated
+	 */
+	IPropertyContainer getProperties();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IFile#getProperties <em>Properties</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Properties</em>' containment reference.
+	 * @see #getProperties()
+	 * @generated
+	 */
+	void setProperties(IPropertyContainer value);
+
+	/**
+	 * Returns the value of the '<em><b>Mtype</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Mtype</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Mtype</em>' attribute.
+	 * @see #setM_type(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIFile_M_type()
+	 * @model
+	 * @generated
+	 */
+	String getM_type();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IFile#getM_type <em>Mtype</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Mtype</em>' attribute.
+	 * @see #getM_type()
+	 * @generated
+	 */
+	void setM_type(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Fragments</b></em>' containment reference list.
+	 * The list contents are of type {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IModelElement}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Fragments</em>' containment reference list isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Fragments</em>' containment reference list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIFile_Fragments()
+	 * @model containment="true" resolveProxies="true"
+	 * @generated
+	 */
+	EList<IModelElement> getFragments();
+
+	/**
+	 * Returns the value of the '<em><b>Description</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Description</em>' containment reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Description</em>' containment reference.
+	 * @see #setDescription(IDescription)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIFile_Description()
+	 * @model containment="true" resolveProxies="true"
+	 * @generated
+	 */
+	IDescription getDescription();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IFile#getDescription <em>Description</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Description</em>' containment reference.
+	 * @see #getDescription()
+	 * @generated
+	 */
+	void setDescription(IDescription value);
+
+	/**
+	 * Returns the value of the '<em><b>Dependencies</b></em>' containment reference list.
+	 * The list contents are of type {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IDependency}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Dependencies</em>' containment reference list isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Dependencies</em>' containment reference list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIFile_Dependencies()
+	 * @model containment="true" resolveProxies="true"
+	 * @generated
+	 */
+	EList<IDependency> getDependencies();
+
+} // IFile
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/IFileFragment.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/IFileFragment.java
new file mode 100755
index 0000000..64d109c
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/IFileFragment.java
@@ -0,0 +1,435 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel;
+
+import org.eclipse.emf.common.util.EList;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>IFile Fragment</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * </p>
+ * <ul>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IFileFragment#getId <em>Id</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IFileFragment#getName <em>Name</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IFileFragment#getM_type <em>Mtype</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IFileFragment#getM_text <em>Mtext</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IFileFragment#getM_startRow <em>Mstart Row</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IFileFragment#getM_startCol <em>Mstart Col</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IFileFragment#getDescription <em>Description</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IFileFragment#getM_startCol_Short <em>Mstart Col Short</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IFileFragment#getM_endRow <em>Mend Row</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IFileFragment#getM_endCol_Short <em>Mend Col Short</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IFileFragment#getM_subject <em>Msubject</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IFileFragment#getTags <em>Tags</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IFileFragment#getFragments <em>Fragments</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IFileFragment#getModifiedTimeWeak <em>Modified Time Weak</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IFileFragment#getObjectCreation <em>Object Creation</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IFileFragment#getUmlDependencyID <em>Uml Dependency ID</em>}</li>
+ * </ul>
+ *
+ * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIFileFragment()
+ * @model
+ * @generated
+ */
+public interface IFileFragment extends IModelElement {
+	/**
+	 * Returns the value of the '<em><b>Id</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Id</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Id</em>' attribute.
+	 * @see #setId(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIFileFragment_Id()
+	 * @model
+	 * @generated
+	 */
+	String getId();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IFileFragment#getId <em>Id</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Id</em>' attribute.
+	 * @see #getId()
+	 * @generated
+	 */
+	void setId(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Name</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Name</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Name</em>' attribute.
+	 * @see #setName(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIFileFragment_Name()
+	 * @model
+	 * @generated
+	 */
+	String getName();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IFileFragment#getName <em>Name</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Name</em>' attribute.
+	 * @see #getName()
+	 * @generated
+	 */
+	void setName(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Mtype</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Mtype</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Mtype</em>' attribute.
+	 * @see #setM_type(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIFileFragment_M_type()
+	 * @model
+	 * @generated
+	 */
+	String getM_type();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IFileFragment#getM_type <em>Mtype</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Mtype</em>' attribute.
+	 * @see #getM_type()
+	 * @generated
+	 */
+	void setM_type(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Mtext</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Mtext</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Mtext</em>' attribute.
+	 * @see #setM_text(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIFileFragment_M_text()
+	 * @model
+	 * @generated
+	 */
+	String getM_text();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IFileFragment#getM_text <em>Mtext</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Mtext</em>' attribute.
+	 * @see #getM_text()
+	 * @generated
+	 */
+	void setM_text(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Mstart Row</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Mstart Row</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Mstart Row</em>' attribute.
+	 * @see #setM_startRow(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIFileFragment_M_startRow()
+	 * @model
+	 * @generated
+	 */
+	String getM_startRow();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IFileFragment#getM_startRow <em>Mstart Row</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Mstart Row</em>' attribute.
+	 * @see #getM_startRow()
+	 * @generated
+	 */
+	void setM_startRow(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Mstart Col</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Mstart Col</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Mstart Col</em>' attribute.
+	 * @see #setM_startCol(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIFileFragment_M_startCol()
+	 * @model
+	 * @generated
+	 */
+	String getM_startCol();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IFileFragment#getM_startCol <em>Mstart Col</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Mstart Col</em>' attribute.
+	 * @see #getM_startCol()
+	 * @generated
+	 */
+	void setM_startCol(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Description</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Description</em>' containment reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Description</em>' containment reference.
+	 * @see #setDescription(IDescription)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIFileFragment_Description()
+	 * @model containment="true" resolveProxies="true"
+	 * @generated
+	 */
+	IDescription getDescription();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IFileFragment#getDescription <em>Description</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Description</em>' containment reference.
+	 * @see #getDescription()
+	 * @generated
+	 */
+	void setDescription(IDescription value);
+
+	/**
+	 * Returns the value of the '<em><b>Mstart Col Short</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Mstart Col Short</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Mstart Col Short</em>' attribute.
+	 * @see #setM_startCol_Short(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIFileFragment_M_startCol_Short()
+	 * @model
+	 * @generated
+	 */
+	String getM_startCol_Short();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IFileFragment#getM_startCol_Short <em>Mstart Col Short</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Mstart Col Short</em>' attribute.
+	 * @see #getM_startCol_Short()
+	 * @generated
+	 */
+	void setM_startCol_Short(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Mend Row</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Mend Row</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Mend Row</em>' attribute.
+	 * @see #setM_endRow(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIFileFragment_M_endRow()
+	 * @model
+	 * @generated
+	 */
+	String getM_endRow();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IFileFragment#getM_endRow <em>Mend Row</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Mend Row</em>' attribute.
+	 * @see #getM_endRow()
+	 * @generated
+	 */
+	void setM_endRow(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Mend Col Short</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Mend Col Short</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Mend Col Short</em>' attribute.
+	 * @see #setM_endCol_Short(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIFileFragment_M_endCol_Short()
+	 * @model
+	 * @generated
+	 */
+	String getM_endCol_Short();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IFileFragment#getM_endCol_Short <em>Mend Col Short</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Mend Col Short</em>' attribute.
+	 * @see #getM_endCol_Short()
+	 * @generated
+	 */
+	void setM_endCol_Short(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Msubject</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Msubject</em>' reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Msubject</em>' reference.
+	 * @see #setM_subject(M_subjectType)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIFileFragment_M_subject()
+	 * @model
+	 * @generated
+	 */
+	M_subjectType getM_subject();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IFileFragment#getM_subject <em>Msubject</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Msubject</em>' reference.
+	 * @see #getM_subject()
+	 * @generated
+	 */
+	void setM_subject(M_subjectType value);
+
+	/**
+	 * Returns the value of the '<em><b>Tags</b></em>' containment reference list.
+	 * The list contents are of type {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITag}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Tags</em>' containment reference list isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Tags</em>' containment reference list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIFileFragment_Tags()
+	 * @model containment="true" resolveProxies="true"
+	 * @generated
+	 */
+	EList<ITag> getTags();
+
+	/**
+	 * Returns the value of the '<em><b>Fragments</b></em>' containment reference list.
+	 * The list contents are of type {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IFileFragment}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Fragments</em>' containment reference list isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Fragments</em>' containment reference list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIFileFragment_Fragments()
+	 * @model containment="true" resolveProxies="true"
+	 * @generated
+	 */
+	EList<IFileFragment> getFragments();
+
+	/**
+	 * Returns the value of the '<em><b>Modified Time Weak</b></em>' attribute list.
+	 * The list contents are of type {@link java.lang.String}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Modified Time Weak</em>' attribute list isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Modified Time Weak</em>' attribute list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIFileFragment_ModifiedTimeWeak()
+	 * @model unique="false"
+	 * @generated
+	 */
+	EList<String> getModifiedTimeWeak();
+
+	/**
+	 * Returns the value of the '<em><b>Object Creation</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Object Creation</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Object Creation</em>' attribute.
+	 * @see #setObjectCreation(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIFileFragment_ObjectCreation()
+	 * @model
+	 * @generated
+	 */
+	String getObjectCreation();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IFileFragment#getObjectCreation <em>Object Creation</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Object Creation</em>' attribute.
+	 * @see #getObjectCreation()
+	 * @generated
+	 */
+	void setObjectCreation(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Uml Dependency ID</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Uml Dependency ID</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Uml Dependency ID</em>' attribute.
+	 * @see #setUmlDependencyID(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIFileFragment_UmlDependencyID()
+	 * @model
+	 * @generated
+	 */
+	String getUmlDependencyID();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IFileFragment#getUmlDependencyID <em>Uml Dependency ID</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Uml Dependency ID</em>' attribute.
+	 * @see #getUmlDependencyID()
+	 * @generated
+	 */
+	void setUmlDependencyID(String value);
+
+} // IFileFragment
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/IFlow.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/IFlow.java
new file mode 100755
index 0000000..9309628
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/IFlow.java
@@ -0,0 +1,27 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel;
+
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>IFlow</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ *
+ * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIFlow()
+ * @model
+ * @generated
+ */
+public interface IFlow extends IModelElement {
+} // IFlow
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/IFlowItem.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/IFlowItem.java
new file mode 100755
index 0000000..42069d3
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/IFlowItem.java
@@ -0,0 +1,27 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel;
+
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>IFlow Item</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ *
+ * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIFlowItem()
+ * @model
+ * @generated
+ */
+public interface IFlowItem extends IClassifier {
+} // IFlowItem
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/IFlowchart.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/IFlowchart.java
new file mode 100755
index 0000000..78c8a1c
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/IFlowchart.java
@@ -0,0 +1,28 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel;
+
+import org.eclipse.emf.ecore.EObject;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>IFlowchart</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ *
+ * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIFlowchart()
+ * @model
+ * @generated
+ */
+public interface IFlowchart extends EObject {
+} // IFlowchart
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/IFolder.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/IFolder.java
new file mode 100755
index 0000000..5fbf3cc
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/IFolder.java
@@ -0,0 +1,111 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel;
+
+import org.eclipse.emf.common.util.EList;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>IFolder</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * </p>
+ * <ul>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IFolder#getElements <em>Elements</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IFolder#getFiles <em>Files</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IFolder#getRequiremenTracabilityHandle <em>Requiremen Tracability Handle</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IFolder#getCodeUpdateCGTime <em>Code Update CG Time</em>}</li>
+ * </ul>
+ *
+ * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIFolder()
+ * @model
+ * @generated
+ */
+public interface IFolder extends FilesType {
+	/**
+	 * Returns the value of the '<em><b>Elements</b></em>' reference list.
+	 * The list contents are of type {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ElementsType}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Elements</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>Elements</em>' reference list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIFolder_Elements()
+	 * @model
+	 * @generated
+	 */
+	EList<ElementsType> getElements();
+
+	/**
+	 * Returns the value of the '<em><b>Files</b></em>' containment reference list.
+	 * The list contents are of type {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.FilesType}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Files</em>' containment reference list isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Files</em>' containment reference list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIFolder_Files()
+	 * @model containment="true" resolveProxies="true"
+	 * @generated
+	 */
+	EList<FilesType> getFiles();
+
+	/**
+	 * Returns the value of the '<em><b>Requiremen Tracability Handle</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Requiremen Tracability Handle</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Requiremen Tracability Handle</em>' attribute.
+	 * @see #setRequiremenTracabilityHandle(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIFolder_RequiremenTracabilityHandle()
+	 * @model
+	 * @generated
+	 */
+	String getRequiremenTracabilityHandle();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IFolder#getRequiremenTracabilityHandle <em>Requiremen Tracability Handle</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Requiremen Tracability Handle</em>' attribute.
+	 * @see #getRequiremenTracabilityHandle()
+	 * @generated
+	 */
+	void setRequiremenTracabilityHandle(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Code Update CG Time</b></em>' attribute list.
+	 * The list contents are of type {@link java.lang.String}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Code Update CG Time</em>' attribute list isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Code Update CG Time</em>' attribute list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIFolder_CodeUpdateCGTime()
+	 * @model unique="false"
+	 * @generated
+	 */
+	EList<String> getCodeUpdateCGTime();
+
+} // IFolder
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/IFork.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/IFork.java
new file mode 100755
index 0000000..ad9e83e
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/IFork.java
@@ -0,0 +1,275 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel;
+
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>IFork</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * </p>
+ * <ul>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IFork#getId <em>Id</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IFork#getMyState <em>My State</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IFork#getName <em>Name</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IFork#getModifiedTimeWeak <em>Modified Time Weak</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IFork#getDescription <em>Description</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IFork#getParent <em>Parent</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IFork#getConnectorType <em>Connector Type</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IFork#getObjectCreation <em>Object Creation</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IFork#getUmlDependencyID <em>Uml Dependency ID</em>}</li>
+ * </ul>
+ *
+ * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIFork()
+ * @model
+ * @generated
+ */
+public interface IFork extends ItsTargetType {
+	/**
+	 * Returns the value of the '<em><b>Id</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Id</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Id</em>' attribute.
+	 * @see #setId(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIFork_Id()
+	 * @model
+	 * @generated
+	 */
+	String getId();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IFork#getId <em>Id</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Id</em>' attribute.
+	 * @see #getId()
+	 * @generated
+	 */
+	void setId(String value);
+
+	/**
+	 * Returns the value of the '<em><b>My State</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>My State</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>My State</em>' attribute.
+	 * @see #setMyState(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIFork_MyState()
+	 * @model
+	 * @generated
+	 */
+	String getMyState();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IFork#getMyState <em>My State</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>My State</em>' attribute.
+	 * @see #getMyState()
+	 * @generated
+	 */
+	void setMyState(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Name</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Name</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Name</em>' attribute.
+	 * @see #setName(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIFork_Name()
+	 * @model
+	 * @generated
+	 */
+	String getName();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IFork#getName <em>Name</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Name</em>' attribute.
+	 * @see #getName()
+	 * @generated
+	 */
+	void setName(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Modified Time Weak</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Modified Time Weak</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Modified Time Weak</em>' attribute.
+	 * @see #setModifiedTimeWeak(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIFork_ModifiedTimeWeak()
+	 * @model
+	 * @generated
+	 */
+	String getModifiedTimeWeak();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IFork#getModifiedTimeWeak <em>Modified Time Weak</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Modified Time Weak</em>' attribute.
+	 * @see #getModifiedTimeWeak()
+	 * @generated
+	 */
+	void setModifiedTimeWeak(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Description</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Description</em>' containment reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Description</em>' containment reference.
+	 * @see #setDescription(IDescription)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIFork_Description()
+	 * @model containment="true" resolveProxies="true"
+	 * @generated
+	 */
+	IDescription getDescription();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IFork#getDescription <em>Description</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Description</em>' containment reference.
+	 * @see #getDescription()
+	 * @generated
+	 */
+	void setDescription(IDescription value);
+
+	/**
+	 * Returns the value of the '<em><b>Parent</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Parent</em>' reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Parent</em>' reference.
+	 * @see #setParent(IState)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIFork_Parent()
+	 * @model
+	 * @generated
+	 */
+	IState getParent();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IFork#getParent <em>Parent</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Parent</em>' reference.
+	 * @see #getParent()
+	 * @generated
+	 */
+	void setParent(IState value);
+
+	/**
+	 * Returns the value of the '<em><b>Connector Type</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Connector 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>Connector Type</em>' attribute.
+	 * @see #setConnectorType(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIFork_ConnectorType()
+	 * @model
+	 * @generated
+	 */
+	String getConnectorType();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IFork#getConnectorType <em>Connector Type</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Connector Type</em>' attribute.
+	 * @see #getConnectorType()
+	 * @generated
+	 */
+	void setConnectorType(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Object Creation</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Object Creation</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Object Creation</em>' attribute.
+	 * @see #setObjectCreation(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIFork_ObjectCreation()
+	 * @model
+	 * @generated
+	 */
+	String getObjectCreation();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IFork#getObjectCreation <em>Object Creation</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Object Creation</em>' attribute.
+	 * @see #getObjectCreation()
+	 * @generated
+	 */
+	void setObjectCreation(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Uml Dependency ID</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Uml Dependency ID</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Uml Dependency ID</em>' attribute.
+	 * @see #setUmlDependencyID(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIFork_UmlDependencyID()
+	 * @model
+	 * @generated
+	 */
+	String getUmlDependencyID();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IFork#getUmlDependencyID <em>Uml Dependency ID</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Uml Dependency ID</em>' attribute.
+	 * @see #getUmlDependencyID()
+	 * @generated
+	 */
+	void setUmlDependencyID(String value);
+
+} // IFork
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/IGeneralization.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/IGeneralization.java
new file mode 100755
index 0000000..afe1c38
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/IGeneralization.java
@@ -0,0 +1,310 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel;
+
+import org.eclipse.emf.common.util.EList;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>IGeneralization</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * </p>
+ * <ul>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IGeneralization#getId <em>Id</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IGeneralization#getModifiedTimeWeak <em>Modified Time Weak</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IGeneralization#getDependsOn <em>Depends On</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IGeneralization#getInheritanceType <em>Inheritance Type</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IGeneralization#getIsVirtual <em>Is Virtual</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IGeneralization#getStereotypes <em>Stereotypes</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IGeneralization#getDescription <em>Description</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IGeneralization#getObjectCreation <em>Object Creation</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IGeneralization#getUmlDependencyID <em>Uml Dependency ID</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IGeneralization#getTi <em>Ti</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IGeneralization#getAnnotations <em>Annotations</em>}</li>
+ * </ul>
+ *
+ * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIGeneralization()
+ * @model
+ * @generated
+ */
+public interface IGeneralization extends IModelElement {
+	/**
+	 * Returns the value of the '<em><b>Id</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Id</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Id</em>' attribute.
+	 * @see #setId(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIGeneralization_Id()
+	 * @model
+	 * @generated
+	 */
+	String getId();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IGeneralization#getId <em>Id</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Id</em>' attribute.
+	 * @see #getId()
+	 * @generated
+	 */
+	void setId(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Modified Time Weak</b></em>' attribute list.
+	 * The list contents are of type {@link java.lang.String}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Modified Time Weak</em>' attribute list isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Modified Time Weak</em>' attribute list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIGeneralization_ModifiedTimeWeak()
+	 * @model unique="false"
+	 * @generated
+	 */
+	EList<String> getModifiedTimeWeak();
+
+	/**
+	 * Returns the value of the '<em><b>Depends On</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Depends On</em>' reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Depends On</em>' reference.
+	 * @see #setDependsOn(IUnit)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIGeneralization_DependsOn()
+	 * @model
+	 * @generated
+	 */
+	IUnit getDependsOn();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IGeneralization#getDependsOn <em>Depends On</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Depends On</em>' reference.
+	 * @see #getDependsOn()
+	 * @generated
+	 */
+	void setDependsOn(IUnit value);
+
+	/**
+	 * Returns the value of the '<em><b>Inheritance Type</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Inheritance 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>Inheritance Type</em>' attribute.
+	 * @see #setInheritanceType(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIGeneralization_InheritanceType()
+	 * @model
+	 * @generated
+	 */
+	String getInheritanceType();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IGeneralization#getInheritanceType <em>Inheritance Type</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Inheritance Type</em>' attribute.
+	 * @see #getInheritanceType()
+	 * @generated
+	 */
+	void setInheritanceType(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Is Virtual</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Is Virtual</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Is Virtual</em>' attribute.
+	 * @see #setIsVirtual(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIGeneralization_IsVirtual()
+	 * @model
+	 * @generated
+	 */
+	String getIsVirtual();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IGeneralization#getIsVirtual <em>Is Virtual</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Is Virtual</em>' attribute.
+	 * @see #getIsVirtual()
+	 * @generated
+	 */
+	void setIsVirtual(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Stereotypes</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Stereotypes</em>' reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Stereotypes</em>' reference.
+	 * @see #setStereotypes(IStereotype)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIGeneralization_Stereotypes()
+	 * @model
+	 * @generated
+	 */
+	IStereotype getStereotypes();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IGeneralization#getStereotypes <em>Stereotypes</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Stereotypes</em>' reference.
+	 * @see #getStereotypes()
+	 * @generated
+	 */
+	void setStereotypes(IStereotype value);
+
+	/**
+	 * Returns the value of the '<em><b>Description</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Description</em>' containment reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Description</em>' containment reference.
+	 * @see #setDescription(IDescription)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIGeneralization_Description()
+	 * @model containment="true" resolveProxies="true"
+	 * @generated
+	 */
+	IDescription getDescription();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IGeneralization#getDescription <em>Description</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Description</em>' containment reference.
+	 * @see #getDescription()
+	 * @generated
+	 */
+	void setDescription(IDescription value);
+
+	/**
+	 * Returns the value of the '<em><b>Object Creation</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Object Creation</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Object Creation</em>' attribute.
+	 * @see #setObjectCreation(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIGeneralization_ObjectCreation()
+	 * @model
+	 * @generated
+	 */
+	String getObjectCreation();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IGeneralization#getObjectCreation <em>Object Creation</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Object Creation</em>' attribute.
+	 * @see #getObjectCreation()
+	 * @generated
+	 */
+	void setObjectCreation(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Uml Dependency ID</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Uml Dependency ID</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Uml Dependency ID</em>' attribute.
+	 * @see #setUmlDependencyID(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIGeneralization_UmlDependencyID()
+	 * @model
+	 * @generated
+	 */
+	String getUmlDependencyID();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IGeneralization#getUmlDependencyID <em>Uml Dependency ID</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Uml Dependency ID</em>' attribute.
+	 * @see #getUmlDependencyID()
+	 * @generated
+	 */
+	void setUmlDependencyID(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Ti</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Ti</em>' containment reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Ti</em>' containment reference.
+	 * @see #setTi(ITemplateInst)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIGeneralization_Ti()
+	 * @model containment="true" resolveProxies="true"
+	 * @generated
+	 */
+	ITemplateInst getTi();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IGeneralization#getTi <em>Ti</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Ti</em>' containment reference.
+	 * @see #getTi()
+	 * @generated
+	 */
+	void setTi(ITemplateInst value);
+
+	/**
+	 * Returns the value of the '<em><b>Annotations</b></em>' containment reference list.
+	 * The list contents are of type {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IConstraint}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Annotations</em>' containment reference list isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Annotations</em>' containment reference list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIGeneralization_Annotations()
+	 * @model containment="true" resolveProxies="true"
+	 * @generated
+	 */
+	EList<IConstraint> getAnnotations();
+
+} // IGeneralization
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/IGuard.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/IGuard.java
new file mode 100755
index 0000000..6ef949a
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/IGuard.java
@@ -0,0 +1,158 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel;
+
+import org.eclipse.emf.common.util.EList;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>IGuard</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * </p>
+ * <ul>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IGuard#getId <em>Id</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IGuard#getBody <em>Body</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IGuard#getModifiedTimeWeak <em>Modified Time Weak</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IGuard#getObjectCreation <em>Object Creation</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IGuard#getUmlDependencyID <em>Uml Dependency ID</em>}</li>
+ * </ul>
+ *
+ * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIGuard()
+ * @model
+ * @generated
+ */
+public interface IGuard extends IModelElement {
+	/**
+	 * Returns the value of the '<em><b>Id</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Id</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Id</em>' attribute.
+	 * @see #setId(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIGuard_Id()
+	 * @model
+	 * @generated
+	 */
+	String getId();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IGuard#getId <em>Id</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Id</em>' attribute.
+	 * @see #getId()
+	 * @generated
+	 */
+	void setId(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Body</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Body</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Body</em>' attribute.
+	 * @see #setBody(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIGuard_Body()
+	 * @model
+	 * @generated
+	 */
+	String getBody();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IGuard#getBody <em>Body</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Body</em>' attribute.
+	 * @see #getBody()
+	 * @generated
+	 */
+	void setBody(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Modified Time Weak</b></em>' attribute list.
+	 * The list contents are of type {@link java.lang.String}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Modified Time Weak</em>' attribute list isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Modified Time Weak</em>' attribute list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIGuard_ModifiedTimeWeak()
+	 * @model unique="false"
+	 * @generated
+	 */
+	EList<String> getModifiedTimeWeak();
+
+	/**
+	 * Returns the value of the '<em><b>Object Creation</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Object Creation</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Object Creation</em>' attribute.
+	 * @see #setObjectCreation(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIGuard_ObjectCreation()
+	 * @model
+	 * @generated
+	 */
+	String getObjectCreation();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IGuard#getObjectCreation <em>Object Creation</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Object Creation</em>' attribute.
+	 * @see #getObjectCreation()
+	 * @generated
+	 */
+	void setObjectCreation(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Uml Dependency ID</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Uml Dependency ID</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Uml Dependency ID</em>' attribute.
+	 * @see #setUmlDependencyID(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIGuard_UmlDependencyID()
+	 * @model
+	 * @generated
+	 */
+	String getUmlDependencyID();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IGuard#getUmlDependencyID <em>Uml Dependency ID</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Uml Dependency ID</em>' attribute.
+	 * @see #getUmlDependencyID()
+	 * @generated
+	 */
+	void setUmlDependencyID(String value);
+
+} // IGuard
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/IHandleWithData.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/IHandleWithData.java
new file mode 100755
index 0000000..f9a7808
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/IHandleWithData.java
@@ -0,0 +1,222 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel;
+
+import org.eclipse.emf.ecore.EObject;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>IHandle With Data</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * </p>
+ * <ul>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IHandleWithData#getM2Class <em>M2 Class</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IHandleWithData#getFilename <em>Filename</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IHandleWithData#getSubsystem <em>Subsystem</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IHandleWithData#getClass_ <em>Class</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IHandleWithData#getName <em>Name</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IHandleWithData#getId <em>Id</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IHandleWithData#getData <em>Data</em>}</li>
+ * </ul>
+ *
+ * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIHandleWithData()
+ * @model
+ * @generated
+ */
+public interface IHandleWithData extends EObject {
+	/**
+	 * Returns the value of the '<em><b>M2 Class</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>M2 Class</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>M2 Class</em>' attribute.
+	 * @see #setM2Class(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIHandleWithData_M2Class()
+	 * @model
+	 * @generated
+	 */
+	String getM2Class();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IHandleWithData#getM2Class <em>M2 Class</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>M2 Class</em>' attribute.
+	 * @see #getM2Class()
+	 * @generated
+	 */
+	void setM2Class(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Filename</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Filename</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Filename</em>' attribute.
+	 * @see #setFilename(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIHandleWithData_Filename()
+	 * @model
+	 * @generated
+	 */
+	String getFilename();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IHandleWithData#getFilename <em>Filename</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Filename</em>' attribute.
+	 * @see #getFilename()
+	 * @generated
+	 */
+	void setFilename(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Subsystem</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Subsystem</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Subsystem</em>' attribute.
+	 * @see #setSubsystem(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIHandleWithData_Subsystem()
+	 * @model
+	 * @generated
+	 */
+	String getSubsystem();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IHandleWithData#getSubsystem <em>Subsystem</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Subsystem</em>' attribute.
+	 * @see #getSubsystem()
+	 * @generated
+	 */
+	void setSubsystem(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Class</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Class</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Class</em>' attribute.
+	 * @see #setClass(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIHandleWithData_Class()
+	 * @model
+	 * @generated
+	 */
+	String getClass_();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IHandleWithData#getClass_ <em>Class</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Class</em>' attribute.
+	 * @see #getClass_()
+	 * @generated
+	 */
+	void setClass(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Name</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Name</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Name</em>' attribute.
+	 * @see #setName(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIHandleWithData_Name()
+	 * @model
+	 * @generated
+	 */
+	String getName();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IHandleWithData#getName <em>Name</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Name</em>' attribute.
+	 * @see #getName()
+	 * @generated
+	 */
+	void setName(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Id</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Id</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Id</em>' attribute.
+	 * @see #setId(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIHandleWithData_Id()
+	 * @model
+	 * @generated
+	 */
+	String getId();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IHandleWithData#getId <em>Id</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Id</em>' attribute.
+	 * @see #getId()
+	 * @generated
+	 */
+	void setId(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Data</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Data</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Data</em>' attribute.
+	 * @see #setData(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIHandleWithData_Data()
+	 * @model
+	 * @generated
+	 */
+	String getData();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IHandleWithData#getData <em>Data</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Data</em>' attribute.
+	 * @see #getData()
+	 * @generated
+	 */
+	void setData(String value);
+
+} // IHandleWithData
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/IHistoryConnector.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/IHistoryConnector.java
new file mode 100755
index 0000000..6806216
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/IHistoryConnector.java
@@ -0,0 +1,248 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel;
+
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>IHistory Connector</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * </p>
+ * <ul>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IHistoryConnector#getId <em>Id</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IHistoryConnector#getName <em>Name</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IHistoryConnector#getParent <em>Parent</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IHistoryConnector#getConnectorType <em>Connector Type</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IHistoryConnector#getMyState <em>My State</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IHistoryConnector#getModifiedTimeWeak <em>Modified Time Weak</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IHistoryConnector#getObjectCreation <em>Object Creation</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IHistoryConnector#getUmlDependencyID <em>Uml Dependency ID</em>}</li>
+ * </ul>
+ *
+ * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIHistoryConnector()
+ * @model
+ * @generated
+ */
+public interface IHistoryConnector extends ItsTargetType {
+	/**
+	 * Returns the value of the '<em><b>Id</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Id</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Id</em>' attribute.
+	 * @see #setId(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIHistoryConnector_Id()
+	 * @model
+	 * @generated
+	 */
+	String getId();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IHistoryConnector#getId <em>Id</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Id</em>' attribute.
+	 * @see #getId()
+	 * @generated
+	 */
+	void setId(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Name</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Name</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Name</em>' attribute.
+	 * @see #setName(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIHistoryConnector_Name()
+	 * @model
+	 * @generated
+	 */
+	String getName();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IHistoryConnector#getName <em>Name</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Name</em>' attribute.
+	 * @see #getName()
+	 * @generated
+	 */
+	void setName(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Parent</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Parent</em>' reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Parent</em>' reference.
+	 * @see #setParent(IState)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIHistoryConnector_Parent()
+	 * @model
+	 * @generated
+	 */
+	IState getParent();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IHistoryConnector#getParent <em>Parent</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Parent</em>' reference.
+	 * @see #getParent()
+	 * @generated
+	 */
+	void setParent(IState value);
+
+	/**
+	 * Returns the value of the '<em><b>Connector Type</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Connector 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>Connector Type</em>' attribute.
+	 * @see #setConnectorType(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIHistoryConnector_ConnectorType()
+	 * @model
+	 * @generated
+	 */
+	String getConnectorType();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IHistoryConnector#getConnectorType <em>Connector Type</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Connector Type</em>' attribute.
+	 * @see #getConnectorType()
+	 * @generated
+	 */
+	void setConnectorType(String value);
+
+	/**
+	 * Returns the value of the '<em><b>My State</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>My State</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>My State</em>' attribute.
+	 * @see #setMyState(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIHistoryConnector_MyState()
+	 * @model
+	 * @generated
+	 */
+	String getMyState();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IHistoryConnector#getMyState <em>My State</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>My State</em>' attribute.
+	 * @see #getMyState()
+	 * @generated
+	 */
+	void setMyState(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Modified Time Weak</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Modified Time Weak</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Modified Time Weak</em>' attribute.
+	 * @see #setModifiedTimeWeak(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIHistoryConnector_ModifiedTimeWeak()
+	 * @model
+	 * @generated
+	 */
+	String getModifiedTimeWeak();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IHistoryConnector#getModifiedTimeWeak <em>Modified Time Weak</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Modified Time Weak</em>' attribute.
+	 * @see #getModifiedTimeWeak()
+	 * @generated
+	 */
+	void setModifiedTimeWeak(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Object Creation</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Object Creation</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Object Creation</em>' attribute.
+	 * @see #setObjectCreation(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIHistoryConnector_ObjectCreation()
+	 * @model
+	 * @generated
+	 */
+	String getObjectCreation();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IHistoryConnector#getObjectCreation <em>Object Creation</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Object Creation</em>' attribute.
+	 * @see #getObjectCreation()
+	 * @generated
+	 */
+	void setObjectCreation(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Uml Dependency ID</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Uml Dependency ID</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Uml Dependency ID</em>' attribute.
+	 * @see #setUmlDependencyID(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIHistoryConnector_UmlDependencyID()
+	 * @model
+	 * @generated
+	 */
+	String getUmlDependencyID();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IHistoryConnector#getUmlDependencyID <em>Uml Dependency ID</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Uml Dependency ID</em>' attribute.
+	 * @see #getUmlDependencyID()
+	 * @generated
+	 */
+	void setUmlDependencyID(String value);
+
+} // IHistoryConnector
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/IHyperLink.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/IHyperLink.java
new file mode 100755
index 0000000..3318c1b
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/IHyperLink.java
@@ -0,0 +1,27 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel;
+
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>IHyper Link</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ *
+ * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIHyperLink()
+ * @model
+ * @generated
+ */
+public interface IHyperLink extends IDependency {
+} // IHyperLink
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/IInformationFlow.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/IInformationFlow.java
new file mode 100755
index 0000000..7feb97d
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/IInformationFlow.java
@@ -0,0 +1,516 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel;
+
+import org.eclipse.emf.common.util.EList;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>IInformation Flow</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * </p>
+ * <ul>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IInformationFlow#getId <em>Id</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IInformationFlow#getMyState <em>My State</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IInformationFlow#getName <em>Name</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IInformationFlow#getConveyed <em>Conveyed</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IInformationFlow#getEnd1_ <em>End1 </em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IInformationFlow#getEnd2_ <em>End2 </em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IInformationFlow#getDirection_ <em>Direction </em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IInformationFlow#getModifiedTimeWeak <em>Modified Time Weak</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IInformationFlow#getDescription <em>Description</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IInformationFlow#getEnd1ObjectPort_ <em>End1 Object Port </em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IInformationFlow#getEnd2ObjectPort_ <em>End2 Object Port </em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IInformationFlow#getRequiremenTracabilityHandle <em>Requiremen Tracability Handle</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IInformationFlow#getHyperLinks <em>Hyper Links</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IInformationFlow#getDependencies <em>Dependencies</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IInformationFlow#getAnnotations <em>Annotations</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IInformationFlow#getObjectCreation <em>Object Creation</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IInformationFlow#getUmlDependencyID <em>Uml Dependency ID</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IInformationFlow#getStereotypes <em>Stereotypes</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IInformationFlow#getTags <em>Tags</em>}</li>
+ * </ul>
+ *
+ * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIInformationFlow()
+ * @model
+ * @generated
+ */
+public interface IInformationFlow extends DeclarativesType, DependsOnType, IModelElement {
+	/**
+	 * Returns the value of the '<em><b>Id</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Id</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Id</em>' attribute.
+	 * @see #setId(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIInformationFlow_Id()
+	 * @model
+	 * @generated
+	 */
+	String getId();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IInformationFlow#getId <em>Id</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Id</em>' attribute.
+	 * @see #getId()
+	 * @generated
+	 */
+	void setId(String value);
+
+	/**
+	 * Returns the value of the '<em><b>My State</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>My State</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>My State</em>' attribute.
+	 * @see #setMyState(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIInformationFlow_MyState()
+	 * @model
+	 * @generated
+	 */
+	String getMyState();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IInformationFlow#getMyState <em>My State</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>My State</em>' attribute.
+	 * @see #getMyState()
+	 * @generated
+	 */
+	void setMyState(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Name</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Name</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Name</em>' attribute.
+	 * @see #setName(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIInformationFlow_Name()
+	 * @model
+	 * @generated
+	 */
+	String getName();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IInformationFlow#getName <em>Name</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Name</em>' attribute.
+	 * @see #getName()
+	 * @generated
+	 */
+	void setName(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Conveyed</b></em>' reference list.
+	 * The list contents are of type {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ConveyedType}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Conveyed</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>Conveyed</em>' reference list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIInformationFlow_Conveyed()
+	 * @model
+	 * @generated
+	 */
+	EList<ConveyedType> getConveyed();
+
+	/**
+	 * Returns the value of the '<em><b>End1 </b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>End1 </em>' reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>End1 </em>' reference.
+	 * @see #setEnd1_(End1_Type)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIInformationFlow_End1_()
+	 * @model
+	 * @generated
+	 */
+	End1_Type getEnd1_();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IInformationFlow#getEnd1_ <em>End1 </em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>End1 </em>' reference.
+	 * @see #getEnd1_()
+	 * @generated
+	 */
+	void setEnd1_(End1_Type value);
+
+	/**
+	 * Returns the value of the '<em><b>End2 </b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>End2 </em>' reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>End2 </em>' reference.
+	 * @see #setEnd2_(End2_Type)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIInformationFlow_End2_()
+	 * @model
+	 * @generated
+	 */
+	End2_Type getEnd2_();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IInformationFlow#getEnd2_ <em>End2 </em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>End2 </em>' reference.
+	 * @see #getEnd2_()
+	 * @generated
+	 */
+	void setEnd2_(End2_Type value);
+
+	/**
+	 * Returns the value of the '<em><b>Direction </b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Direction </em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Direction </em>' attribute.
+	 * @see #setDirection_(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIInformationFlow_Direction_()
+	 * @model
+	 * @generated
+	 */
+	String getDirection_();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IInformationFlow#getDirection_ <em>Direction </em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Direction </em>' attribute.
+	 * @see #getDirection_()
+	 * @generated
+	 */
+	void setDirection_(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Modified Time Weak</b></em>' attribute list.
+	 * The list contents are of type {@link java.lang.String}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Modified Time Weak</em>' attribute list isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Modified Time Weak</em>' attribute list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIInformationFlow_ModifiedTimeWeak()
+	 * @model unique="false"
+	 * @generated
+	 */
+	EList<String> getModifiedTimeWeak();
+
+	/**
+	 * Returns the value of the '<em><b>Description</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Description</em>' containment reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Description</em>' containment reference.
+	 * @see #setDescription(IDescription)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIInformationFlow_Description()
+	 * @model containment="true" resolveProxies="true"
+	 * @generated
+	 */
+	IDescription getDescription();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IInformationFlow#getDescription <em>Description</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Description</em>' containment reference.
+	 * @see #getDescription()
+	 * @generated
+	 */
+	void setDescription(IDescription value);
+
+	/**
+	 * Returns the value of the '<em><b>End1 Object Port </b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>End1 Object Port </em>' reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>End1 Object Port </em>' reference.
+	 * @see #setEnd1ObjectPort_(IInstance)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIInformationFlow_End1ObjectPort_()
+	 * @model
+	 * @generated
+	 */
+	IInstance getEnd1ObjectPort_();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IInformationFlow#getEnd1ObjectPort_ <em>End1 Object Port </em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>End1 Object Port </em>' reference.
+	 * @see #getEnd1ObjectPort_()
+	 * @generated
+	 */
+	void setEnd1ObjectPort_(IInstance value);
+
+	/**
+	 * Returns the value of the '<em><b>End2 Object Port </b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>End2 Object Port </em>' reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>End2 Object Port </em>' reference.
+	 * @see #setEnd2ObjectPort_(IInstance)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIInformationFlow_End2ObjectPort_()
+	 * @model
+	 * @generated
+	 */
+	IInstance getEnd2ObjectPort_();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IInformationFlow#getEnd2ObjectPort_ <em>End2 Object Port </em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>End2 Object Port </em>' reference.
+	 * @see #getEnd2ObjectPort_()
+	 * @generated
+	 */
+	void setEnd2ObjectPort_(IInstance value);
+
+	/**
+	 * Returns the value of the '<em><b>Requiremen Tracability Handle</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Requiremen Tracability Handle</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Requiremen Tracability Handle</em>' attribute.
+	 * @see #setRequiremenTracabilityHandle(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIInformationFlow_RequiremenTracabilityHandle()
+	 * @model
+	 * @generated
+	 */
+	String getRequiremenTracabilityHandle();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IInformationFlow#getRequiremenTracabilityHandle <em>Requiremen Tracability Handle</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Requiremen Tracability Handle</em>' attribute.
+	 * @see #getRequiremenTracabilityHandle()
+	 * @generated
+	 */
+	void setRequiremenTracabilityHandle(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Hyper Links</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Hyper Links</em>' containment reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Hyper Links</em>' containment reference.
+	 * @see #setHyperLinks(IMHyperLink)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIInformationFlow_HyperLinks()
+	 * @model containment="true" resolveProxies="true"
+	 * @generated
+	 */
+	IMHyperLink getHyperLinks();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IInformationFlow#getHyperLinks <em>Hyper Links</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Hyper Links</em>' containment reference.
+	 * @see #getHyperLinks()
+	 * @generated
+	 */
+	void setHyperLinks(IMHyperLink value);
+
+	/**
+	 * Returns the value of the '<em><b>Dependencies</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Dependencies</em>' containment reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Dependencies</em>' containment reference.
+	 * @see #setDependencies(IDependency)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIInformationFlow_Dependencies()
+	 * @model containment="true" resolveProxies="true"
+	 * @generated
+	 */
+	IDependency getDependencies();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IInformationFlow#getDependencies <em>Dependencies</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Dependencies</em>' containment reference.
+	 * @see #getDependencies()
+	 * @generated
+	 */
+	void setDependencies(IDependency value);
+
+	/**
+	 * Returns the value of the '<em><b>Annotations</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Annotations</em>' containment reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Annotations</em>' containment reference.
+	 * @see #setAnnotations(IRequirement)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIInformationFlow_Annotations()
+	 * @model containment="true" resolveProxies="true"
+	 * @generated
+	 */
+	IRequirement getAnnotations();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IInformationFlow#getAnnotations <em>Annotations</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Annotations</em>' containment reference.
+	 * @see #getAnnotations()
+	 * @generated
+	 */
+	void setAnnotations(IRequirement value);
+
+	/**
+	 * Returns the value of the '<em><b>Object Creation</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Object Creation</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Object Creation</em>' attribute.
+	 * @see #setObjectCreation(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIInformationFlow_ObjectCreation()
+	 * @model
+	 * @generated
+	 */
+	String getObjectCreation();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IInformationFlow#getObjectCreation <em>Object Creation</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Object Creation</em>' attribute.
+	 * @see #getObjectCreation()
+	 * @generated
+	 */
+	void setObjectCreation(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Uml Dependency ID</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Uml Dependency ID</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Uml Dependency ID</em>' attribute.
+	 * @see #setUmlDependencyID(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIInformationFlow_UmlDependencyID()
+	 * @model
+	 * @generated
+	 */
+	String getUmlDependencyID();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IInformationFlow#getUmlDependencyID <em>Uml Dependency ID</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Uml Dependency ID</em>' attribute.
+	 * @see #getUmlDependencyID()
+	 * @generated
+	 */
+	void setUmlDependencyID(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Stereotypes</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Stereotypes</em>' reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Stereotypes</em>' reference.
+	 * @see #setStereotypes(IUnit)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIInformationFlow_Stereotypes()
+	 * @model
+	 * @generated
+	 */
+	IUnit getStereotypes();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IInformationFlow#getStereotypes <em>Stereotypes</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Stereotypes</em>' reference.
+	 * @see #getStereotypes()
+	 * @generated
+	 */
+	void setStereotypes(IUnit value);
+
+	/**
+	 * Returns the value of the '<em><b>Tags</b></em>' containment reference list.
+	 * The list contents are of type {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITag}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Tags</em>' containment reference list isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Tags</em>' containment reference list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIInformationFlow_Tags()
+	 * @model containment="true" resolveProxies="true"
+	 * @generated
+	 */
+	EList<ITag> getTags();
+
+} // IInformationFlow
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/IInformationItem.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/IInformationItem.java
new file mode 100755
index 0000000..1575d0c
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/IInformationItem.java
@@ -0,0 +1,283 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel;
+
+import org.eclipse.emf.common.util.EList;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>IInformation Item</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * </p>
+ * <ul>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IInformationItem#getId <em>Id</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IInformationItem#getMyState <em>My State</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IInformationItem#getName <em>Name</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IInformationItem#getRequiremenTracabilityHandle <em>Requiremen Tracability Handle</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IInformationItem#getModifiedTimeWeak <em>Modified Time Weak</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IInformationItem#getDescription <em>Description</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IInformationItem#getRepresented <em>Represented</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IInformationItem#getAnnotations <em>Annotations</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IInformationItem#getObjectCreation <em>Object Creation</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IInformationItem#getUmlDependencyID <em>Uml Dependency ID</em>}</li>
+ * </ul>
+ *
+ * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIInformationItem()
+ * @model
+ * @generated
+ */
+public interface IInformationItem extends DeclarativesType, DependsOnType, ConveyedType {
+	/**
+	 * Returns the value of the '<em><b>Id</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Id</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Id</em>' attribute.
+	 * @see #setId(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIInformationItem_Id()
+	 * @model
+	 * @generated
+	 */
+	String getId();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IInformationItem#getId <em>Id</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Id</em>' attribute.
+	 * @see #getId()
+	 * @generated
+	 */
+	void setId(String value);
+
+	/**
+	 * Returns the value of the '<em><b>My State</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>My State</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>My State</em>' attribute.
+	 * @see #setMyState(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIInformationItem_MyState()
+	 * @model
+	 * @generated
+	 */
+	String getMyState();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IInformationItem#getMyState <em>My State</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>My State</em>' attribute.
+	 * @see #getMyState()
+	 * @generated
+	 */
+	void setMyState(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Name</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Name</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Name</em>' attribute.
+	 * @see #setName(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIInformationItem_Name()
+	 * @model
+	 * @generated
+	 */
+	String getName();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IInformationItem#getName <em>Name</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Name</em>' attribute.
+	 * @see #getName()
+	 * @generated
+	 */
+	void setName(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Requiremen Tracability Handle</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Requiremen Tracability Handle</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Requiremen Tracability Handle</em>' attribute.
+	 * @see #setRequiremenTracabilityHandle(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIInformationItem_RequiremenTracabilityHandle()
+	 * @model
+	 * @generated
+	 */
+	String getRequiremenTracabilityHandle();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IInformationItem#getRequiremenTracabilityHandle <em>Requiremen Tracability Handle</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Requiremen Tracability Handle</em>' attribute.
+	 * @see #getRequiremenTracabilityHandle()
+	 * @generated
+	 */
+	void setRequiremenTracabilityHandle(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Modified Time Weak</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Modified Time Weak</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Modified Time Weak</em>' attribute.
+	 * @see #setModifiedTimeWeak(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIInformationItem_ModifiedTimeWeak()
+	 * @model
+	 * @generated
+	 */
+	String getModifiedTimeWeak();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IInformationItem#getModifiedTimeWeak <em>Modified Time Weak</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Modified Time Weak</em>' attribute.
+	 * @see #getModifiedTimeWeak()
+	 * @generated
+	 */
+	void setModifiedTimeWeak(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Description</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Description</em>' containment reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Description</em>' containment reference.
+	 * @see #setDescription(IDescription)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIInformationItem_Description()
+	 * @model containment="true" resolveProxies="true"
+	 * @generated
+	 */
+	IDescription getDescription();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IInformationItem#getDescription <em>Description</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Description</em>' containment reference.
+	 * @see #getDescription()
+	 * @generated
+	 */
+	void setDescription(IDescription value);
+
+	/**
+	 * Returns the value of the '<em><b>Represented</b></em>' reference list.
+	 * The list contents are of type {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IEvent}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Represented</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>Represented</em>' reference list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIInformationItem_Represented()
+	 * @model
+	 * @generated
+	 */
+	EList<IEvent> getRepresented();
+
+	/**
+	 * Returns the value of the '<em><b>Annotations</b></em>' containment reference list.
+	 * The list contents are of type {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IRequirement}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Annotations</em>' containment reference list isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Annotations</em>' containment reference list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIInformationItem_Annotations()
+	 * @model containment="true" resolveProxies="true"
+	 * @generated
+	 */
+	EList<IRequirement> getAnnotations();
+
+	/**
+	 * Returns the value of the '<em><b>Object Creation</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Object Creation</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Object Creation</em>' attribute.
+	 * @see #setObjectCreation(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIInformationItem_ObjectCreation()
+	 * @model
+	 * @generated
+	 */
+	String getObjectCreation();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IInformationItem#getObjectCreation <em>Object Creation</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Object Creation</em>' attribute.
+	 * @see #getObjectCreation()
+	 * @generated
+	 */
+	void setObjectCreation(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Uml Dependency ID</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Uml Dependency ID</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Uml Dependency ID</em>' attribute.
+	 * @see #setUmlDependencyID(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIInformationItem_UmlDependencyID()
+	 * @model
+	 * @generated
+	 */
+	String getUmlDependencyID();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IInformationItem#getUmlDependencyID <em>Uml Dependency ID</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Uml Dependency ID</em>' attribute.
+	 * @see #getUmlDependencyID()
+	 * @generated
+	 */
+	void setUmlDependencyID(String value);
+
+} // IInformationItem
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/IInstance.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/IInstance.java
new file mode 100755
index 0000000..9b7ea74
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/IInstance.java
@@ -0,0 +1,148 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel;
+
+import org.eclipse.emf.common.util.EList;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>IInstance</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * </p>
+ * <ul>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IInstance#getModifiedTimeWeak <em>Modified Time Weak</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IInstance#getId <em>Id</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IInstance#getInverse <em>Inverse</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IInstance#getMyState <em>My State</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IInstance#getName <em>Name</em>}</li>
+ * </ul>
+ *
+ * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIInstance()
+ * @model
+ * @generated
+ */
+public interface IInstance extends IRelation {
+	/**
+	 * Returns the value of the '<em><b>Modified Time Weak</b></em>' attribute list.
+	 * The list contents are of type {@link java.lang.String}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Modified Time Weak</em>' attribute list isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Modified Time Weak</em>' attribute list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIInstance_ModifiedTimeWeak()
+	 * @model unique="false"
+	 * @generated
+	 */
+	EList<String> getModifiedTimeWeak();
+
+	/**
+	 * Returns the value of the '<em><b>Id</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Id</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Id</em>' attribute.
+	 * @see #setId(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIInstance_Id()
+	 * @model
+	 * @generated
+	 */
+	String getId();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IInstance#getId <em>Id</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Id</em>' attribute.
+	 * @see #getId()
+	 * @generated
+	 */
+	void setId(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Inverse</b></em>' reference list.
+	 * The list contents are of type {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UnknownType}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Inverse</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>Inverse</em>' reference list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIInstance_Inverse()
+	 * @model
+	 * @generated
+	 */
+	EList<UnknownType> getInverse();
+
+	/**
+	 * Returns the value of the '<em><b>My State</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>My State</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>My State</em>' attribute.
+	 * @see #setMyState(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIInstance_MyState()
+	 * @model
+	 * @generated
+	 */
+	String getMyState();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IInstance#getMyState <em>My State</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>My State</em>' attribute.
+	 * @see #getMyState()
+	 * @generated
+	 */
+	void setMyState(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Name</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Name</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Name</em>' attribute.
+	 * @see #setName(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIInstance_Name()
+	 * @model
+	 * @generated
+	 */
+	String getName();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IInstance#getName <em>Name</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Name</em>' attribute.
+	 * @see #getName()
+	 * @generated
+	 */
+	void setName(String value);
+
+} // IInstance
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/IInstanceSlot.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/IInstanceSlot.java
new file mode 100755
index 0000000..80a2df0
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/IInstanceSlot.java
@@ -0,0 +1,27 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel;
+
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>IInstance Slot</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ *
+ * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIInstanceSlot()
+ * @model
+ * @generated
+ */
+public interface IInstanceSlot extends IModelElement {
+} // IInstanceSlot
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/IInstanceSpecification.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/IInstanceSpecification.java
new file mode 100755
index 0000000..90a014f
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/IInstanceSpecification.java
@@ -0,0 +1,27 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel;
+
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>IInstance Specification</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ *
+ * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIInstanceSpecification()
+ * @model
+ * @generated
+ */
+public interface IInstanceSpecification extends IModelElement {
+} // IInstanceSpecification
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/IInstanceValue.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/IInstanceValue.java
new file mode 100755
index 0000000..f38fec9
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/IInstanceValue.java
@@ -0,0 +1,113 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel;
+
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>IInstance Value</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * </p>
+ * <ul>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IInstanceValue#getId <em>Id</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IInstanceValue#getModifiedTimeWeak <em>Modified Time Weak</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IInstanceValue#getValue <em>Value</em>}</li>
+ * </ul>
+ *
+ * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIInstanceValue()
+ * @model
+ * @generated
+ */
+public interface IInstanceValue extends IValueSpecification {
+	/**
+	 * Returns the value of the '<em><b>Id</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Id</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Id</em>' attribute.
+	 * @see #setId(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIInstanceValue_Id()
+	 * @model
+	 * @generated
+	 */
+	String getId();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IInstanceValue#getId <em>Id</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Id</em>' attribute.
+	 * @see #getId()
+	 * @generated
+	 */
+	void setId(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Modified Time Weak</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Modified Time Weak</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Modified Time Weak</em>' attribute.
+	 * @see #setModifiedTimeWeak(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIInstanceValue_ModifiedTimeWeak()
+	 * @model
+	 * @generated
+	 */
+	String getModifiedTimeWeak();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IInstanceValue#getModifiedTimeWeak <em>Modified Time Weak</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Modified Time Weak</em>' attribute.
+	 * @see #getModifiedTimeWeak()
+	 * @generated
+	 */
+	void setModifiedTimeWeak(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Value</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Value</em>' reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Value</em>' reference.
+	 * @see #setValue(ValueType)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIInstanceValue_Value()
+	 * @model
+	 * @generated
+	 */
+	ValueType getValue();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IInstanceValue#getValue <em>Value</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Value</em>' reference.
+	 * @see #getValue()
+	 * @generated
+	 */
+	void setValue(ValueType value);
+
+} // IInstanceValue
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/IInteractionOccurrence.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/IInteractionOccurrence.java
new file mode 100755
index 0000000..ad54ac1
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/IInteractionOccurrence.java
@@ -0,0 +1,248 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel;
+
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>IInteraction Occurrence</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * </p>
+ * <ul>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IInteractionOccurrence#getId <em>Id</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IInteractionOccurrence#getName <em>Name</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IInteractionOccurrence#getModifiedTimeWeak <em>Modified Time Weak</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IInteractionOccurrence#getM_pRefSD <em>MpRef SD</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IInteractionOccurrence#getStereotypes <em>Stereotypes</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IInteractionOccurrence#getTags <em>Tags</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IInteractionOccurrence#getObjectCreation <em>Object Creation</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IInteractionOccurrence#getUmlDependencyID <em>Uml Dependency ID</em>}</li>
+ * </ul>
+ *
+ * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIInteractionOccurrence()
+ * @model
+ * @generated
+ */
+public interface IInteractionOccurrence extends IModelElement {
+	/**
+	 * Returns the value of the '<em><b>Id</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Id</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Id</em>' attribute.
+	 * @see #setId(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIInteractionOccurrence_Id()
+	 * @model
+	 * @generated
+	 */
+	String getId();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IInteractionOccurrence#getId <em>Id</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Id</em>' attribute.
+	 * @see #getId()
+	 * @generated
+	 */
+	void setId(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Name</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Name</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Name</em>' attribute.
+	 * @see #setName(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIInteractionOccurrence_Name()
+	 * @model
+	 * @generated
+	 */
+	String getName();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IInteractionOccurrence#getName <em>Name</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Name</em>' attribute.
+	 * @see #getName()
+	 * @generated
+	 */
+	void setName(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Modified Time Weak</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Modified Time Weak</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Modified Time Weak</em>' attribute.
+	 * @see #setModifiedTimeWeak(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIInteractionOccurrence_ModifiedTimeWeak()
+	 * @model
+	 * @generated
+	 */
+	String getModifiedTimeWeak();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IInteractionOccurrence#getModifiedTimeWeak <em>Modified Time Weak</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Modified Time Weak</em>' attribute.
+	 * @see #getModifiedTimeWeak()
+	 * @generated
+	 */
+	void setModifiedTimeWeak(String value);
+
+	/**
+	 * Returns the value of the '<em><b>MpRef SD</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>MpRef SD</em>' reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>MpRef SD</em>' reference.
+	 * @see #setM_pRefSD(IMSC)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIInteractionOccurrence_M_pRefSD()
+	 * @model
+	 * @generated
+	 */
+	IMSC getM_pRefSD();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IInteractionOccurrence#getM_pRefSD <em>MpRef SD</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>MpRef SD</em>' reference.
+	 * @see #getM_pRefSD()
+	 * @generated
+	 */
+	void setM_pRefSD(IMSC value);
+
+	/**
+	 * Returns the value of the '<em><b>Stereotypes</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Stereotypes</em>' reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Stereotypes</em>' reference.
+	 * @see #setStereotypes(IStereotype)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIInteractionOccurrence_Stereotypes()
+	 * @model
+	 * @generated
+	 */
+	IStereotype getStereotypes();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IInteractionOccurrence#getStereotypes <em>Stereotypes</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Stereotypes</em>' reference.
+	 * @see #getStereotypes()
+	 * @generated
+	 */
+	void setStereotypes(IStereotype value);
+
+	/**
+	 * Returns the value of the '<em><b>Tags</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Tags</em>' containment reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Tags</em>' containment reference.
+	 * @see #setTags(ITag)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIInteractionOccurrence_Tags()
+	 * @model containment="true" resolveProxies="true"
+	 * @generated
+	 */
+	ITag getTags();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IInteractionOccurrence#getTags <em>Tags</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Tags</em>' containment reference.
+	 * @see #getTags()
+	 * @generated
+	 */
+	void setTags(ITag value);
+
+	/**
+	 * Returns the value of the '<em><b>Object Creation</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Object Creation</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Object Creation</em>' attribute.
+	 * @see #setObjectCreation(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIInteractionOccurrence_ObjectCreation()
+	 * @model
+	 * @generated
+	 */
+	String getObjectCreation();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IInteractionOccurrence#getObjectCreation <em>Object Creation</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Object Creation</em>' attribute.
+	 * @see #getObjectCreation()
+	 * @generated
+	 */
+	void setObjectCreation(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Uml Dependency ID</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Uml Dependency ID</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Uml Dependency ID</em>' attribute.
+	 * @see #setUmlDependencyID(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIInteractionOccurrence_UmlDependencyID()
+	 * @model
+	 * @generated
+	 */
+	String getUmlDependencyID();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IInteractionOccurrence#getUmlDependencyID <em>Uml Dependency ID</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Uml Dependency ID</em>' attribute.
+	 * @see #getUmlDependencyID()
+	 * @generated
+	 */
+	void setUmlDependencyID(String value);
+
+} // IInteractionOccurrence
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/IInteractionOperand.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/IInteractionOperand.java
new file mode 100755
index 0000000..dfcad4e
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/IInteractionOperand.java
@@ -0,0 +1,113 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel;
+
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>IInteraction Operand</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * </p>
+ * <ul>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IInteractionOperand#getMyState <em>My State</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IInteractionOperand#getName <em>Name</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IInteractionOperand#getInteractionConstraint <em>Interaction Constraint</em>}</li>
+ * </ul>
+ *
+ * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIInteractionOperand()
+ * @model
+ * @generated
+ */
+public interface IInteractionOperand extends ICollaboration {
+	/**
+	 * Returns the value of the '<em><b>My State</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>My State</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>My State</em>' attribute.
+	 * @see #setMyState(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIInteractionOperand_MyState()
+	 * @model
+	 * @generated
+	 */
+	String getMyState();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IInteractionOperand#getMyState <em>My State</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>My State</em>' attribute.
+	 * @see #getMyState()
+	 * @generated
+	 */
+	void setMyState(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Name</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Name</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Name</em>' attribute.
+	 * @see #setName(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIInteractionOperand_Name()
+	 * @model
+	 * @generated
+	 */
+	String getName();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IInteractionOperand#getName <em>Name</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Name</em>' attribute.
+	 * @see #getName()
+	 * @generated
+	 */
+	void setName(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Interaction Constraint</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Interaction Constraint</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Interaction Constraint</em>' attribute.
+	 * @see #setInteractionConstraint(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIInteractionOperand_InteractionConstraint()
+	 * @model
+	 * @generated
+	 */
+	String getInteractionConstraint();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IInteractionOperand#getInteractionConstraint <em>Interaction Constraint</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Interaction Constraint</em>' attribute.
+	 * @see #getInteractionConstraint()
+	 * @generated
+	 */
+	void setInteractionConstraint(String value);
+
+} // IInteractionOperand
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/IInteractionOperator.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/IInteractionOperator.java
new file mode 100755
index 0000000..f5abdd7
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/IInteractionOperator.java
@@ -0,0 +1,27 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel;
+
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>IInteraction Operator</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ *
+ * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIInteractionOperator()
+ * @model
+ * @generated
+ */
+public interface IInteractionOperator extends IModelElement {
+} // IInteractionOperator
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/IInterfaceItem.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/IInterfaceItem.java
new file mode 100755
index 0000000..b303b44
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/IInterfaceItem.java
@@ -0,0 +1,27 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel;
+
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>IInterface Item</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ *
+ * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIInterfaceItem()
+ * @model
+ * @generated
+ */
+public interface IInterfaceItem extends IClassifier {
+} // IInterfaceItem
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/IInterfaceItemTrigger.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/IInterfaceItemTrigger.java
new file mode 100755
index 0000000..e908423
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/IInterfaceItemTrigger.java
@@ -0,0 +1,86 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel;
+
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>IInterface Item Trigger</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * </p>
+ * <ul>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IInterfaceItemTrigger#getItsInterfaceItem <em>Its Interface Item</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IInterfaceItemTrigger#getInheritsFromHandle <em>Inherits From Handle</em>}</li>
+ * </ul>
+ *
+ * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIInterfaceItemTrigger()
+ * @model
+ * @generated
+ */
+public interface IInterfaceItemTrigger extends ItsTriggerType {
+	/**
+	 * Returns the value of the '<em><b>Its Interface Item</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Its Interface Item</em>' reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Its Interface Item</em>' reference.
+	 * @see #setItsInterfaceItem(M_pFormalMessageType)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIInterfaceItemTrigger_ItsInterfaceItem()
+	 * @model
+	 * @generated
+	 */
+	M_pFormalMessageType getItsInterfaceItem();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IInterfaceItemTrigger#getItsInterfaceItem <em>Its Interface Item</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Its Interface Item</em>' reference.
+	 * @see #getItsInterfaceItem()
+	 * @generated
+	 */
+	void setItsInterfaceItem(M_pFormalMessageType value);
+
+	/**
+	 * Returns the value of the '<em><b>Inherits From Handle</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Inherits From Handle</em>' reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Inherits From Handle</em>' reference.
+	 * @see #setInheritsFromHandle(IInterfaceItemTrigger)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIInterfaceItemTrigger_InheritsFromHandle()
+	 * @model
+	 * @generated
+	 */
+	IInterfaceItemTrigger getInheritsFromHandle();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IInterfaceItemTrigger#getInheritsFromHandle <em>Inherits From Handle</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Inherits From Handle</em>' reference.
+	 * @see #getInheritsFromHandle()
+	 * @generated
+	 */
+	void setInheritsFromHandle(IInterfaceItemTrigger value);
+
+} // IInterfaceItemTrigger
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/IInternalHyperlink.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/IInternalHyperlink.java
new file mode 100755
index 0000000..a78ec04
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/IInternalHyperlink.java
@@ -0,0 +1,59 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel;
+
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>IInternal Hyperlink</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * </p>
+ * <ul>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IInternalHyperlink#getTarget <em>Target</em>}</li>
+ * </ul>
+ *
+ * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIInternalHyperlink()
+ * @model
+ * @generated
+ */
+public interface IInternalHyperlink extends HyperLinksType {
+	/**
+	 * Returns the value of the '<em><b>Target</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Target</em>' reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Target</em>' reference.
+	 * @see #setTarget(TargetType)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIInternalHyperlink_Target()
+	 * @model
+	 * @generated
+	 */
+	TargetType getTarget();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IInternalHyperlink#getTarget <em>Target</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Target</em>' reference.
+	 * @see #getTarget()
+	 * @generated
+	 */
+	void setTarget(TargetType value);
+
+} // IInternalHyperlink
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/ILabel.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/ILabel.java
new file mode 100755
index 0000000..5f20d11
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/ILabel.java
@@ -0,0 +1,283 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel;
+
+import org.eclipse.emf.common.util.EList;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>ILabel</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * </p>
+ * <ul>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ILabel#getId <em>Id</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ILabel#getItsTrigger <em>Its Trigger</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ILabel#getItsAction <em>Its Action</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ILabel#getItsGuard <em>Its Guard</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ILabel#getModifiedTimeWeak <em>Modified Time Weak</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ILabel#getMyState <em>My State</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ILabel#getInheritsFromHandle <em>Inherits From Handle</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ILabel#getCodeUpdateCGTime <em>Code Update CG Time</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ILabel#getObjectCreation <em>Object Creation</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ILabel#getUmlDependencyID <em>Uml Dependency ID</em>}</li>
+ * </ul>
+ *
+ * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getILabel()
+ * @model
+ * @generated
+ */
+public interface ILabel extends ItsLabelType {
+	/**
+	 * Returns the value of the '<em><b>Id</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Id</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Id</em>' attribute.
+	 * @see #setId(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getILabel_Id()
+	 * @model
+	 * @generated
+	 */
+	String getId();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ILabel#getId <em>Id</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Id</em>' attribute.
+	 * @see #getId()
+	 * @generated
+	 */
+	void setId(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Its Trigger</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Its Trigger</em>' containment reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Its Trigger</em>' containment reference.
+	 * @see #setItsTrigger(ItsTriggerType)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getILabel_ItsTrigger()
+	 * @model containment="true" resolveProxies="true"
+	 * @generated
+	 */
+	ItsTriggerType getItsTrigger();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ILabel#getItsTrigger <em>Its Trigger</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Its Trigger</em>' containment reference.
+	 * @see #getItsTrigger()
+	 * @generated
+	 */
+	void setItsTrigger(ItsTriggerType value);
+
+	/**
+	 * Returns the value of the '<em><b>Its Action</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Its Action</em>' containment reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Its Action</em>' containment reference.
+	 * @see #setItsAction(IModelElement)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getILabel_ItsAction()
+	 * @model containment="true" resolveProxies="true"
+	 * @generated
+	 */
+	IModelElement getItsAction();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ILabel#getItsAction <em>Its Action</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Its Action</em>' containment reference.
+	 * @see #getItsAction()
+	 * @generated
+	 */
+	void setItsAction(IModelElement value);
+
+	/**
+	 * Returns the value of the '<em><b>Its Guard</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Its Guard</em>' containment reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Its Guard</em>' containment reference.
+	 * @see #setItsGuard(IModelElement)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getILabel_ItsGuard()
+	 * @model containment="true" resolveProxies="true"
+	 * @generated
+	 */
+	IModelElement getItsGuard();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ILabel#getItsGuard <em>Its Guard</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Its Guard</em>' containment reference.
+	 * @see #getItsGuard()
+	 * @generated
+	 */
+	void setItsGuard(IModelElement value);
+
+	/**
+	 * Returns the value of the '<em><b>Modified Time Weak</b></em>' attribute list.
+	 * The list contents are of type {@link java.lang.String}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Modified Time Weak</em>' attribute list isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Modified Time Weak</em>' attribute list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getILabel_ModifiedTimeWeak()
+	 * @model unique="false"
+	 * @generated
+	 */
+	EList<String> getModifiedTimeWeak();
+
+	/**
+	 * Returns the value of the '<em><b>My State</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>My State</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>My State</em>' attribute.
+	 * @see #setMyState(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getILabel_MyState()
+	 * @model
+	 * @generated
+	 */
+	String getMyState();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ILabel#getMyState <em>My State</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>My State</em>' attribute.
+	 * @see #getMyState()
+	 * @generated
+	 */
+	void setMyState(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Inherits From Handle</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Inherits From Handle</em>' reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Inherits From Handle</em>' reference.
+	 * @see #setInheritsFromHandle(ILabel)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getILabel_InheritsFromHandle()
+	 * @model
+	 * @generated
+	 */
+	ILabel getInheritsFromHandle();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ILabel#getInheritsFromHandle <em>Inherits From Handle</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Inherits From Handle</em>' reference.
+	 * @see #getInheritsFromHandle()
+	 * @generated
+	 */
+	void setInheritsFromHandle(ILabel value);
+
+	/**
+	 * Returns the value of the '<em><b>Code Update CG Time</b></em>' attribute list.
+	 * The list contents are of type {@link java.lang.String}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Code Update CG Time</em>' attribute list isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Code Update CG Time</em>' attribute list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getILabel_CodeUpdateCGTime()
+	 * @model unique="false"
+	 * @generated
+	 */
+	EList<String> getCodeUpdateCGTime();
+
+	/**
+	 * Returns the value of the '<em><b>Object Creation</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Object Creation</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Object Creation</em>' attribute.
+	 * @see #setObjectCreation(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getILabel_ObjectCreation()
+	 * @model
+	 * @generated
+	 */
+	String getObjectCreation();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ILabel#getObjectCreation <em>Object Creation</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Object Creation</em>' attribute.
+	 * @see #getObjectCreation()
+	 * @generated
+	 */
+	void setObjectCreation(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Uml Dependency ID</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Uml Dependency ID</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Uml Dependency ID</em>' attribute.
+	 * @see #setUmlDependencyID(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getILabel_UmlDependencyID()
+	 * @model
+	 * @generated
+	 */
+	String getUmlDependencyID();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ILabel#getUmlDependencyID <em>Uml Dependency ID</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Uml Dependency ID</em>' attribute.
+	 * @see #getUmlDependencyID()
+	 * @generated
+	 */
+	void setUmlDependencyID(String value);
+
+} // ILabel
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/ILink.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/ILink.java
new file mode 100755
index 0000000..d72464f
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/ILink.java
@@ -0,0 +1,140 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel;
+
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>ILink</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * </p>
+ * <ul>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ILink#getInverse <em>Inverse</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ILink#getLinkName <em>Link Name</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ILink#getLinkType <em>Link Type</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ILink#getMyState <em>My State</em>}</li>
+ * </ul>
+ *
+ * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getILink()
+ * @model
+ * @generated
+ */
+public interface ILink extends IUnit, LinksType, M_pModelObjectType {
+	/**
+	 * Returns the value of the '<em><b>Inverse</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Inverse</em>' reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Inverse</em>' reference.
+	 * @see #setInverse(IUnit)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getILink_Inverse()
+	 * @model
+	 * @generated
+	 */
+	IUnit getInverse();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ILink#getInverse <em>Inverse</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Inverse</em>' reference.
+	 * @see #getInverse()
+	 * @generated
+	 */
+	void setInverse(IUnit value);
+
+	/**
+	 * Returns the value of the '<em><b>Link Name</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Link Name</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Link Name</em>' attribute.
+	 * @see #setLinkName(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getILink_LinkName()
+	 * @model
+	 * @generated
+	 */
+	String getLinkName();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ILink#getLinkName <em>Link Name</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Link Name</em>' attribute.
+	 * @see #getLinkName()
+	 * @generated
+	 */
+	void setLinkName(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Link Type</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Link 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>Link Type</em>' attribute.
+	 * @see #setLinkType(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getILink_LinkType()
+	 * @model
+	 * @generated
+	 */
+	String getLinkType();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ILink#getLinkType <em>Link Type</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Link Type</em>' attribute.
+	 * @see #getLinkType()
+	 * @generated
+	 */
+	void setLinkType(String value);
+
+	/**
+	 * Returns the value of the '<em><b>My State</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>My State</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>My State</em>' attribute.
+	 * @see #setMyState(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getILink_MyState()
+	 * @model
+	 * @generated
+	 */
+	String getMyState();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ILink#getMyState <em>My State</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>My State</em>' attribute.
+	 * @see #getMyState()
+	 * @generated
+	 */
+	void setMyState(String value);
+
+} // ILink
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/ILinkInstance.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/ILinkInstance.java
new file mode 100755
index 0000000..66dd1e2
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/ILinkInstance.java
@@ -0,0 +1,167 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel;
+
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>ILink Instance</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * </p>
+ * <ul>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ILinkInstance#getId <em>Id</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ILinkInstance#getName <em>Name</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ILinkInstance#getToLink <em>To Link</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ILinkInstance#getFromLink <em>From Link</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ILinkInstance#getInstantiates <em>Instantiates</em>}</li>
+ * </ul>
+ *
+ * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getILinkInstance()
+ * @model
+ * @generated
+ */
+public interface ILinkInstance extends ComponentsType, M_pModelObjectType {
+	/**
+	 * Returns the value of the '<em><b>Id</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Id</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Id</em>' attribute.
+	 * @see #setId(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getILinkInstance_Id()
+	 * @model
+	 * @generated
+	 */
+	String getId();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ILinkInstance#getId <em>Id</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Id</em>' attribute.
+	 * @see #getId()
+	 * @generated
+	 */
+	void setId(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Name</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Name</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Name</em>' attribute.
+	 * @see #setName(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getILinkInstance_Name()
+	 * @model
+	 * @generated
+	 */
+	String getName();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ILinkInstance#getName <em>Name</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Name</em>' attribute.
+	 * @see #getName()
+	 * @generated
+	 */
+	void setName(String value);
+
+	/**
+	 * Returns the value of the '<em><b>To Link</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>To Link</em>' reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>To Link</em>' reference.
+	 * @see #setToLink(IClassInstance)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getILinkInstance_ToLink()
+	 * @model
+	 * @generated
+	 */
+	IClassInstance getToLink();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ILinkInstance#getToLink <em>To Link</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>To Link</em>' reference.
+	 * @see #getToLink()
+	 * @generated
+	 */
+	void setToLink(IClassInstance value);
+
+	/**
+	 * Returns the value of the '<em><b>From Link</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>From Link</em>' reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>From Link</em>' reference.
+	 * @see #setFromLink(IClassInstance)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getILinkInstance_FromLink()
+	 * @model
+	 * @generated
+	 */
+	IClassInstance getFromLink();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ILinkInstance#getFromLink <em>From Link</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>From Link</em>' reference.
+	 * @see #getFromLink()
+	 * @generated
+	 */
+	void setFromLink(IClassInstance value);
+
+	/**
+	 * Returns the value of the '<em><b>Instantiates</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Instantiates</em>' containment reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Instantiates</em>' containment reference.
+	 * @see #setInstantiates(IMetaLinkHandle)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getILinkInstance_Instantiates()
+	 * @model containment="true" resolveProxies="true"
+	 * @generated
+	 */
+	IMetaLinkHandle getInstantiates();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ILinkInstance#getInstantiates <em>Instantiates</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Instantiates</em>' containment reference.
+	 * @see #getInstantiates()
+	 * @generated
+	 */
+	void setInstantiates(IMetaLinkHandle value);
+
+} // ILinkInstance
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/ILiteralSpecification.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/ILiteralSpecification.java
new file mode 100755
index 0000000..09027de
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/ILiteralSpecification.java
@@ -0,0 +1,175 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel;
+
+import org.eclipse.emf.common.util.EList;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>ILiteral Specification</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * </p>
+ * <ul>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ILiteralSpecification#getId <em>Id</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ILiteralSpecification#getModifiedTimeWeak <em>Modified Time Weak</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ILiteralSpecification#getValue <em>Value</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ILiteralSpecification#getMyState <em>My State</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ILiteralSpecification#getName <em>Name</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ILiteralSpecification#getCodeUpdateCGTime <em>Code Update CG Time</em>}</li>
+ * </ul>
+ *
+ * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getILiteralSpecification()
+ * @model
+ * @generated
+ */
+public interface ILiteralSpecification extends IValueSpecification {
+	/**
+	 * Returns the value of the '<em><b>Id</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Id</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Id</em>' attribute.
+	 * @see #setId(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getILiteralSpecification_Id()
+	 * @model
+	 * @generated
+	 */
+	String getId();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ILiteralSpecification#getId <em>Id</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Id</em>' attribute.
+	 * @see #getId()
+	 * @generated
+	 */
+	void setId(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Modified Time Weak</b></em>' attribute list.
+	 * The list contents are of type {@link java.lang.String}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Modified Time Weak</em>' attribute list isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Modified Time Weak</em>' attribute list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getILiteralSpecification_ModifiedTimeWeak()
+	 * @model unique="false"
+	 * @generated
+	 */
+	EList<String> getModifiedTimeWeak();
+
+	/**
+	 * Returns the value of the '<em><b>Value</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Value</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Value</em>' attribute.
+	 * @see #setValue(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getILiteralSpecification_Value()
+	 * @model
+	 * @generated
+	 */
+	String getValue();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ILiteralSpecification#getValue <em>Value</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Value</em>' attribute.
+	 * @see #getValue()
+	 * @generated
+	 */
+	void setValue(String value);
+
+	/**
+	 * Returns the value of the '<em><b>My State</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>My State</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>My State</em>' attribute.
+	 * @see #setMyState(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getILiteralSpecification_MyState()
+	 * @model
+	 * @generated
+	 */
+	String getMyState();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ILiteralSpecification#getMyState <em>My State</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>My State</em>' attribute.
+	 * @see #getMyState()
+	 * @generated
+	 */
+	void setMyState(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Name</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Name</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Name</em>' attribute.
+	 * @see #setName(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getILiteralSpecification_Name()
+	 * @model
+	 * @generated
+	 */
+	String getName();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ILiteralSpecification#getName <em>Name</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Name</em>' attribute.
+	 * @see #getName()
+	 * @generated
+	 */
+	void setName(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Code Update CG Time</b></em>' attribute list.
+	 * The list contents are of type {@link java.lang.String}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Code Update CG Time</em>' attribute list isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Code Update CG Time</em>' attribute list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getILiteralSpecification_CodeUpdateCGTime()
+	 * @model unique="false"
+	 * @generated
+	 */
+	EList<String> getCodeUpdateCGTime();
+
+} // ILiteralSpecification
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/IMHyperLink.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/IMHyperLink.java
new file mode 100755
index 0000000..f1844b4
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/IMHyperLink.java
@@ -0,0 +1,347 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel;
+
+import org.eclipse.emf.common.util.EList;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>IM Hyper Link</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * </p>
+ * <ul>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMHyperLink#getId <em>Id</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMHyperLink#getProperties <em>Properties</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMHyperLink#getModifiedTimeWeak <em>Modified Time Weak</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMHyperLink#getDependsOn <em>Depends On</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMHyperLink#getLinkDispName <em>Link Disp Name</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMHyperLink#getLinkType <em>Link Type</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMHyperLink#getIsConfigurationFileHyperLink <em>Is Configuration File Hyper Link</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMHyperLink#getLinkTarget <em>Link Target</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMHyperLink#getDescription <em>Description</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMHyperLink#getRequiremenTracabilityHandle <em>Requiremen Tracability Handle</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMHyperLink#getObjectCreation <em>Object Creation</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMHyperLink#getUmlDependencyID <em>Uml Dependency ID</em>}</li>
+ * </ul>
+ *
+ * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIMHyperLink()
+ * @model
+ * @generated
+ */
+public interface IMHyperLink extends HyperLinksType {
+	/**
+	 * Returns the value of the '<em><b>Id</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Id</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Id</em>' attribute.
+	 * @see #setId(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIMHyperLink_Id()
+	 * @model
+	 * @generated
+	 */
+	String getId();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMHyperLink#getId <em>Id</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Id</em>' attribute.
+	 * @see #getId()
+	 * @generated
+	 */
+	void setId(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Properties</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Properties</em>' containment reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Properties</em>' containment reference.
+	 * @see #setProperties(IPropertyContainer)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIMHyperLink_Properties()
+	 * @model containment="true" resolveProxies="true"
+	 * @generated
+	 */
+	IPropertyContainer getProperties();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMHyperLink#getProperties <em>Properties</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Properties</em>' containment reference.
+	 * @see #getProperties()
+	 * @generated
+	 */
+	void setProperties(IPropertyContainer value);
+
+	/**
+	 * Returns the value of the '<em><b>Modified Time Weak</b></em>' attribute list.
+	 * The list contents are of type {@link java.lang.String}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Modified Time Weak</em>' attribute list isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Modified Time Weak</em>' attribute list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIMHyperLink_ModifiedTimeWeak()
+	 * @model unique="false"
+	 * @generated
+	 */
+	EList<String> getModifiedTimeWeak();
+
+	/**
+	 * Returns the value of the '<em><b>Depends On</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Depends On</em>' reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Depends On</em>' reference.
+	 * @see #setDependsOn(DependsOnType)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIMHyperLink_DependsOn()
+	 * @model
+	 * @generated
+	 */
+	DependsOnType getDependsOn();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMHyperLink#getDependsOn <em>Depends On</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Depends On</em>' reference.
+	 * @see #getDependsOn()
+	 * @generated
+	 */
+	void setDependsOn(DependsOnType value);
+
+	/**
+	 * Returns the value of the '<em><b>Link Disp Name</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Link Disp Name</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Link Disp Name</em>' attribute.
+	 * @see #setLinkDispName(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIMHyperLink_LinkDispName()
+	 * @model
+	 * @generated
+	 */
+	String getLinkDispName();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMHyperLink#getLinkDispName <em>Link Disp Name</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Link Disp Name</em>' attribute.
+	 * @see #getLinkDispName()
+	 * @generated
+	 */
+	void setLinkDispName(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Link Type</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Link 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>Link Type</em>' attribute.
+	 * @see #setLinkType(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIMHyperLink_LinkType()
+	 * @model
+	 * @generated
+	 */
+	String getLinkType();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMHyperLink#getLinkType <em>Link Type</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Link Type</em>' attribute.
+	 * @see #getLinkType()
+	 * @generated
+	 */
+	void setLinkType(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Is Configuration File Hyper Link</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Is Configuration File Hyper Link</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Is Configuration File Hyper Link</em>' attribute.
+	 * @see #setIsConfigurationFileHyperLink(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIMHyperLink_IsConfigurationFileHyperLink()
+	 * @model
+	 * @generated
+	 */
+	String getIsConfigurationFileHyperLink();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMHyperLink#getIsConfigurationFileHyperLink <em>Is Configuration File Hyper Link</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Is Configuration File Hyper Link</em>' attribute.
+	 * @see #getIsConfigurationFileHyperLink()
+	 * @generated
+	 */
+	void setIsConfigurationFileHyperLink(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Link Target</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Link Target</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Link Target</em>' attribute.
+	 * @see #setLinkTarget(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIMHyperLink_LinkTarget()
+	 * @model
+	 * @generated
+	 */
+	String getLinkTarget();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMHyperLink#getLinkTarget <em>Link Target</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Link Target</em>' attribute.
+	 * @see #getLinkTarget()
+	 * @generated
+	 */
+	void setLinkTarget(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Description</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Description</em>' containment reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Description</em>' containment reference.
+	 * @see #setDescription(IDescription)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIMHyperLink_Description()
+	 * @model containment="true" resolveProxies="true"
+	 * @generated
+	 */
+	IDescription getDescription();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMHyperLink#getDescription <em>Description</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Description</em>' containment reference.
+	 * @see #getDescription()
+	 * @generated
+	 */
+	void setDescription(IDescription value);
+
+	/**
+	 * Returns the value of the '<em><b>Requiremen Tracability Handle</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Requiremen Tracability Handle</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Requiremen Tracability Handle</em>' attribute.
+	 * @see #setRequiremenTracabilityHandle(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIMHyperLink_RequiremenTracabilityHandle()
+	 * @model
+	 * @generated
+	 */
+	String getRequiremenTracabilityHandle();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMHyperLink#getRequiremenTracabilityHandle <em>Requiremen Tracability Handle</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Requiremen Tracability Handle</em>' attribute.
+	 * @see #getRequiremenTracabilityHandle()
+	 * @generated
+	 */
+	void setRequiremenTracabilityHandle(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Object Creation</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Object Creation</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Object Creation</em>' attribute.
+	 * @see #setObjectCreation(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIMHyperLink_ObjectCreation()
+	 * @model
+	 * @generated
+	 */
+	String getObjectCreation();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMHyperLink#getObjectCreation <em>Object Creation</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Object Creation</em>' attribute.
+	 * @see #getObjectCreation()
+	 * @generated
+	 */
+	void setObjectCreation(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Uml Dependency ID</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Uml Dependency ID</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Uml Dependency ID</em>' attribute.
+	 * @see #setUmlDependencyID(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIMHyperLink_UmlDependencyID()
+	 * @model
+	 * @generated
+	 */
+	String getUmlDependencyID();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMHyperLink#getUmlDependencyID <em>Uml Dependency ID</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Uml Dependency ID</em>' attribute.
+	 * @see #getUmlDependencyID()
+	 * @generated
+	 */
+	void setUmlDependencyID(String value);
+
+} // IMHyperLink
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/IMSC.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/IMSC.java
new file mode 100755
index 0000000..ca0e3b4
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/IMSC.java
@@ -0,0 +1,516 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel;
+
+import org.eclipse.emf.common.util.EList;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>IMSC</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * </p>
+ * <ul>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMSC#getId <em>Id</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMSC#getMyState <em>My State</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMSC#getProperties <em>Properties</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMSC#getName <em>Name</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMSC#getLastModifiedTime <em>Last Modified Time</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMSC#getGraphicChart <em>Graphic Chart</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMSC#getDefaultSubsystem <em>Default Subsystem</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMSC#getM_pICollaboration <em>MpI Collaboration</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMSC#getCmheader <em>Cmheader</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMSC#getLastID <em>Last ID</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMSC#getOwnerHandle <em>Owner Handle</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMSC#getDescription <em>Description</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMSC#getModifiedTimeWeak <em>Modified Time Weak</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMSC#getStereotypes <em>Stereotypes</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMSC#getTags <em>Tags</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMSC#getRequiremenTracabilityHandle <em>Requiremen Tracability Handle</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMSC#getAnnotations <em>Annotations</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMSC#getObjectCreation <em>Object Creation</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMSC#getUmlDependencyID <em>Uml Dependency ID</em>}</li>
+ * </ul>
+ *
+ * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIMSC()
+ * @model
+ * @generated
+ */
+public interface IMSC extends DeclarativesType, DependsOnType, TargetType {
+	/**
+	 * Returns the value of the '<em><b>Id</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Id</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Id</em>' attribute.
+	 * @see #setId(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIMSC_Id()
+	 * @model
+	 * @generated
+	 */
+	String getId();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMSC#getId <em>Id</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Id</em>' attribute.
+	 * @see #getId()
+	 * @generated
+	 */
+	void setId(String value);
+
+	/**
+	 * Returns the value of the '<em><b>My State</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>My State</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>My State</em>' attribute.
+	 * @see #setMyState(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIMSC_MyState()
+	 * @model
+	 * @generated
+	 */
+	String getMyState();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMSC#getMyState <em>My State</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>My State</em>' attribute.
+	 * @see #getMyState()
+	 * @generated
+	 */
+	void setMyState(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Properties</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Properties</em>' containment reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Properties</em>' containment reference.
+	 * @see #setProperties(IPropertyContainer)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIMSC_Properties()
+	 * @model containment="true" resolveProxies="true"
+	 * @generated
+	 */
+	IPropertyContainer getProperties();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMSC#getProperties <em>Properties</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Properties</em>' containment reference.
+	 * @see #getProperties()
+	 * @generated
+	 */
+	void setProperties(IPropertyContainer value);
+
+	/**
+	 * Returns the value of the '<em><b>Name</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Name</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Name</em>' attribute.
+	 * @see #setName(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIMSC_Name()
+	 * @model
+	 * @generated
+	 */
+	String getName();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMSC#getName <em>Name</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Name</em>' attribute.
+	 * @see #getName()
+	 * @generated
+	 */
+	void setName(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Last Modified Time</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Last Modified Time</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Last Modified Time</em>' attribute.
+	 * @see #setLastModifiedTime(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIMSC_LastModifiedTime()
+	 * @model
+	 * @generated
+	 */
+	String getLastModifiedTime();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMSC#getLastModifiedTime <em>Last Modified Time</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Last Modified Time</em>' attribute.
+	 * @see #getLastModifiedTime()
+	 * @generated
+	 */
+	void setLastModifiedTime(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Graphic Chart</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Graphic Chart</em>' containment reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Graphic Chart</em>' containment reference.
+	 * @see #setGraphicChart(CGIMscChart)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIMSC_GraphicChart()
+	 * @model containment="true" resolveProxies="true"
+	 * @generated
+	 */
+	CGIMscChart getGraphicChart();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMSC#getGraphicChart <em>Graphic Chart</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Graphic Chart</em>' containment reference.
+	 * @see #getGraphicChart()
+	 * @generated
+	 */
+	void setGraphicChart(CGIMscChart value);
+
+	/**
+	 * Returns the value of the '<em><b>Default Subsystem</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Default Subsystem</em>' reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Default Subsystem</em>' reference.
+	 * @see #setDefaultSubsystem(OwnerHandleType)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIMSC_DefaultSubsystem()
+	 * @model
+	 * @generated
+	 */
+	OwnerHandleType getDefaultSubsystem();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMSC#getDefaultSubsystem <em>Default Subsystem</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Default Subsystem</em>' reference.
+	 * @see #getDefaultSubsystem()
+	 * @generated
+	 */
+	void setDefaultSubsystem(OwnerHandleType value);
+
+	/**
+	 * Returns the value of the '<em><b>MpI Collaboration</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>MpI Collaboration</em>' containment reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>MpI Collaboration</em>' containment reference.
+	 * @see #setM_pICollaboration(ICollaboration)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIMSC_M_pICollaboration()
+	 * @model containment="true" resolveProxies="true"
+	 * @generated
+	 */
+	ICollaboration getM_pICollaboration();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMSC#getM_pICollaboration <em>MpI Collaboration</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>MpI Collaboration</em>' containment reference.
+	 * @see #getM_pICollaboration()
+	 * @generated
+	 */
+	void setM_pICollaboration(ICollaboration value);
+
+	/**
+	 * Returns the value of the '<em><b>Cmheader</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Cmheader</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Cmheader</em>' attribute.
+	 * @see #setCmheader(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIMSC_Cmheader()
+	 * @model
+	 * @generated
+	 */
+	String getCmheader();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMSC#getCmheader <em>Cmheader</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Cmheader</em>' attribute.
+	 * @see #getCmheader()
+	 * @generated
+	 */
+	void setCmheader(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Last ID</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Last ID</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Last ID</em>' attribute.
+	 * @see #setLastID(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIMSC_LastID()
+	 * @model
+	 * @generated
+	 */
+	String getLastID();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMSC#getLastID <em>Last ID</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Last ID</em>' attribute.
+	 * @see #getLastID()
+	 * @generated
+	 */
+	void setLastID(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Owner Handle</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Owner Handle</em>' reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Owner Handle</em>' reference.
+	 * @see #setOwnerHandle(ISubsystem)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIMSC_OwnerHandle()
+	 * @model
+	 * @generated
+	 */
+	ISubsystem getOwnerHandle();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMSC#getOwnerHandle <em>Owner Handle</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Owner Handle</em>' reference.
+	 * @see #getOwnerHandle()
+	 * @generated
+	 */
+	void setOwnerHandle(ISubsystem value);
+
+	/**
+	 * Returns the value of the '<em><b>Description</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Description</em>' containment reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Description</em>' containment reference.
+	 * @see #setDescription(IDescription)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIMSC_Description()
+	 * @model containment="true" resolveProxies="true"
+	 * @generated
+	 */
+	IDescription getDescription();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMSC#getDescription <em>Description</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Description</em>' containment reference.
+	 * @see #getDescription()
+	 * @generated
+	 */
+	void setDescription(IDescription value);
+
+	/**
+	 * Returns the value of the '<em><b>Modified Time Weak</b></em>' attribute list.
+	 * The list contents are of type {@link java.lang.String}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Modified Time Weak</em>' attribute list isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Modified Time Weak</em>' attribute list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIMSC_ModifiedTimeWeak()
+	 * @model unique="false"
+	 * @generated
+	 */
+	EList<String> getModifiedTimeWeak();
+
+	/**
+	 * Returns the value of the '<em><b>Stereotypes</b></em>' reference list.
+	 * The list contents are of type {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IClassifier}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Stereotypes</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>Stereotypes</em>' reference list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIMSC_Stereotypes()
+	 * @model
+	 * @generated
+	 */
+	EList<IClassifier> getStereotypes();
+
+	/**
+	 * Returns the value of the '<em><b>Tags</b></em>' containment reference list.
+	 * The list contents are of type {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITag}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Tags</em>' containment reference list isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Tags</em>' containment reference list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIMSC_Tags()
+	 * @model containment="true" resolveProxies="true"
+	 * @generated
+	 */
+	EList<ITag> getTags();
+
+	/**
+	 * Returns the value of the '<em><b>Requiremen Tracability Handle</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Requiremen Tracability Handle</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Requiremen Tracability Handle</em>' attribute.
+	 * @see #setRequiremenTracabilityHandle(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIMSC_RequiremenTracabilityHandle()
+	 * @model
+	 * @generated
+	 */
+	String getRequiremenTracabilityHandle();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMSC#getRequiremenTracabilityHandle <em>Requiremen Tracability Handle</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Requiremen Tracability Handle</em>' attribute.
+	 * @see #getRequiremenTracabilityHandle()
+	 * @generated
+	 */
+	void setRequiremenTracabilityHandle(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Annotations</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Annotations</em>' containment reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Annotations</em>' containment reference.
+	 * @see #setAnnotations(IAnnotation)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIMSC_Annotations()
+	 * @model containment="true" resolveProxies="true"
+	 * @generated
+	 */
+	IAnnotation getAnnotations();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMSC#getAnnotations <em>Annotations</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Annotations</em>' containment reference.
+	 * @see #getAnnotations()
+	 * @generated
+	 */
+	void setAnnotations(IAnnotation value);
+
+	/**
+	 * Returns the value of the '<em><b>Object Creation</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Object Creation</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Object Creation</em>' attribute.
+	 * @see #setObjectCreation(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIMSC_ObjectCreation()
+	 * @model
+	 * @generated
+	 */
+	String getObjectCreation();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMSC#getObjectCreation <em>Object Creation</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Object Creation</em>' attribute.
+	 * @see #getObjectCreation()
+	 * @generated
+	 */
+	void setObjectCreation(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Uml Dependency ID</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Uml Dependency ID</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Uml Dependency ID</em>' attribute.
+	 * @see #setUmlDependencyID(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIMSC_UmlDependencyID()
+	 * @model
+	 * @generated
+	 */
+	String getUmlDependencyID();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMSC#getUmlDependencyID <em>Uml Dependency ID</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Uml Dependency ID</em>' attribute.
+	 * @see #getUmlDependencyID()
+	 * @generated
+	 */
+	void setUmlDependencyID(String value);
+
+} // IMSC
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/IMatrixInstance.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/IMatrixInstance.java
new file mode 100755
index 0000000..779f128
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/IMatrixInstance.java
@@ -0,0 +1,293 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel;
+
+import org.eclipse.emf.common.util.EList;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>IMatrix Instance</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * </p>
+ * <ul>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMatrixInstance#getId <em>Id</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMatrixInstance#getMyState <em>My State</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMatrixInstance#getName <em>Name</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMatrixInstance#getModifiedTimeWeak <em>Modified Time Weak</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMatrixInstance#getLayoutHandle <em>Layout Handle</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMatrixInstance#getFromScopeHandles <em>From Scope Handles</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMatrixInstance#getToScopeHandles <em>To Scope Handles</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMatrixInstance#getStereotypes <em>Stereotypes</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMatrixInstance#getM_IncludeDescendants_to <em>MInclude Descendants to</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMatrixInstance#getProperties <em>Properties</em>}</li>
+ * </ul>
+ *
+ * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIMatrixInstance()
+ * @model
+ * @generated
+ */
+public interface IMatrixInstance extends MatrixInstancesType, DependsOnType {
+	/**
+	 * Returns the value of the '<em><b>Id</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Id</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Id</em>' attribute.
+	 * @see #setId(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIMatrixInstance_Id()
+	 * @model
+	 * @generated
+	 */
+	String getId();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMatrixInstance#getId <em>Id</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Id</em>' attribute.
+	 * @see #getId()
+	 * @generated
+	 */
+	void setId(String value);
+
+	/**
+	 * Returns the value of the '<em><b>My State</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>My State</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>My State</em>' attribute.
+	 * @see #setMyState(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIMatrixInstance_MyState()
+	 * @model
+	 * @generated
+	 */
+	String getMyState();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMatrixInstance#getMyState <em>My State</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>My State</em>' attribute.
+	 * @see #getMyState()
+	 * @generated
+	 */
+	void setMyState(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Name</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Name</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Name</em>' attribute.
+	 * @see #setName(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIMatrixInstance_Name()
+	 * @model
+	 * @generated
+	 */
+	String getName();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMatrixInstance#getName <em>Name</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Name</em>' attribute.
+	 * @see #getName()
+	 * @generated
+	 */
+	void setName(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Modified Time Weak</b></em>' attribute list.
+	 * The list contents are of type {@link java.lang.String}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Modified Time Weak</em>' attribute list isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Modified Time Weak</em>' attribute list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIMatrixInstance_ModifiedTimeWeak()
+	 * @model unique="false"
+	 * @generated
+	 */
+	EList<String> getModifiedTimeWeak();
+
+	/**
+	 * Returns the value of the '<em><b>Layout Handle</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Layout Handle</em>' reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Layout Handle</em>' reference.
+	 * @see #setLayoutHandle(IUnit)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIMatrixInstance_LayoutHandle()
+	 * @model
+	 * @generated
+	 */
+	IUnit getLayoutHandle();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMatrixInstance#getLayoutHandle <em>Layout Handle</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Layout Handle</em>' reference.
+	 * @see #getLayoutHandle()
+	 * @generated
+	 */
+	void setLayoutHandle(IUnit value);
+
+	/**
+	 * Returns the value of the '<em><b>From Scope Handles</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>From Scope Handles</em>' reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>From Scope Handles</em>' reference.
+	 * @see #setFromScopeHandles(M_pModelObjectType)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIMatrixInstance_FromScopeHandles()
+	 * @model
+	 * @generated
+	 */
+	M_pModelObjectType getFromScopeHandles();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMatrixInstance#getFromScopeHandles <em>From Scope Handles</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>From Scope Handles</em>' reference.
+	 * @see #getFromScopeHandles()
+	 * @generated
+	 */
+	void setFromScopeHandles(M_pModelObjectType value);
+
+	/**
+	 * Returns the value of the '<em><b>To Scope Handles</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>To Scope Handles</em>' reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>To Scope Handles</em>' reference.
+	 * @see #setToScopeHandles(M_pModelObjectType)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIMatrixInstance_ToScopeHandles()
+	 * @model
+	 * @generated
+	 */
+	M_pModelObjectType getToScopeHandles();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMatrixInstance#getToScopeHandles <em>To Scope Handles</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>To Scope Handles</em>' reference.
+	 * @see #getToScopeHandles()
+	 * @generated
+	 */
+	void setToScopeHandles(M_pModelObjectType value);
+
+	/**
+	 * Returns the value of the '<em><b>Stereotypes</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Stereotypes</em>' reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Stereotypes</em>' reference.
+	 * @see #setStereotypes(IClassifier)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIMatrixInstance_Stereotypes()
+	 * @model
+	 * @generated
+	 */
+	IClassifier getStereotypes();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMatrixInstance#getStereotypes <em>Stereotypes</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Stereotypes</em>' reference.
+	 * @see #getStereotypes()
+	 * @generated
+	 */
+	void setStereotypes(IClassifier value);
+
+	/**
+	 * Returns the value of the '<em><b>MInclude Descendants to</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>MInclude Descendants to</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>MInclude Descendants to</em>' attribute.
+	 * @see #setM_IncludeDescendants_to(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIMatrixInstance_M_IncludeDescendants_to()
+	 * @model
+	 * @generated
+	 */
+	String getM_IncludeDescendants_to();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMatrixInstance#getM_IncludeDescendants_to <em>MInclude Descendants to</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>MInclude Descendants to</em>' attribute.
+	 * @see #getM_IncludeDescendants_to()
+	 * @generated
+	 */
+	void setM_IncludeDescendants_to(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Properties</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Properties</em>' containment reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Properties</em>' containment reference.
+	 * @see #setProperties(IPropertyContainer)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIMatrixInstance_Properties()
+	 * @model containment="true" resolveProxies="true"
+	 * @generated
+	 */
+	IPropertyContainer getProperties();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMatrixInstance#getProperties <em>Properties</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Properties</em>' containment reference.
+	 * @see #getProperties()
+	 * @generated
+	 */
+	void setProperties(IPropertyContainer value);
+
+} // IMatrixInstance
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/IMatrixLayout.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/IMatrixLayout.java
new file mode 100755
index 0000000..93ca29a
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/IMatrixLayout.java
@@ -0,0 +1,229 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel;
+
+import org.eclipse.emf.common.util.EList;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>IMatrix Layout</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * </p>
+ * <ul>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMatrixLayout#getId <em>Id</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMatrixLayout#getMyState <em>My State</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMatrixLayout#getName <em>Name</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMatrixLayout#getModifiedTimeWeak <em>Modified Time Weak</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMatrixLayout#getFromElementTypes <em>From Element Types</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMatrixLayout#getToElementTypes <em>To Element Types</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMatrixLayout#getCellElementTypes <em>Cell Element Types</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMatrixLayout#getDescription <em>Description</em>}</li>
+ * </ul>
+ *
+ * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIMatrixLayout()
+ * @model
+ * @generated
+ */
+public interface IMatrixLayout extends IUnit {
+	/**
+	 * Returns the value of the '<em><b>Id</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Id</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Id</em>' attribute.
+	 * @see #setId(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIMatrixLayout_Id()
+	 * @model
+	 * @generated
+	 */
+	String getId();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMatrixLayout#getId <em>Id</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Id</em>' attribute.
+	 * @see #getId()
+	 * @generated
+	 */
+	void setId(String value);
+
+	/**
+	 * Returns the value of the '<em><b>My State</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>My State</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>My State</em>' attribute.
+	 * @see #setMyState(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIMatrixLayout_MyState()
+	 * @model
+	 * @generated
+	 */
+	String getMyState();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMatrixLayout#getMyState <em>My State</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>My State</em>' attribute.
+	 * @see #getMyState()
+	 * @generated
+	 */
+	void setMyState(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Name</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Name</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Name</em>' attribute.
+	 * @see #setName(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIMatrixLayout_Name()
+	 * @model
+	 * @generated
+	 */
+	String getName();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMatrixLayout#getName <em>Name</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Name</em>' attribute.
+	 * @see #getName()
+	 * @generated
+	 */
+	void setName(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Modified Time Weak</b></em>' attribute list.
+	 * The list contents are of type {@link java.lang.String}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Modified Time Weak</em>' attribute list isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Modified Time Weak</em>' attribute list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIMatrixLayout_ModifiedTimeWeak()
+	 * @model unique="false"
+	 * @generated
+	 */
+	EList<String> getModifiedTimeWeak();
+
+	/**
+	 * Returns the value of the '<em><b>From Element Types</b></em>' containment reference list.
+	 * The list contents are of type {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.TableDataDefinition}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>From Element Types</em>' containment reference list isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>From Element Types</em>' containment reference list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIMatrixLayout_FromElementTypes()
+	 * @model containment="true" resolveProxies="true"
+	 * @generated
+	 */
+	EList<TableDataDefinition> getFromElementTypes();
+
+	/**
+	 * Returns the value of the '<em><b>To Element Types</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>To Element Types</em>' containment reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>To Element Types</em>' containment reference.
+	 * @see #setToElementTypes(TableDataDefinition)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIMatrixLayout_ToElementTypes()
+	 * @model containment="true" resolveProxies="true"
+	 * @generated
+	 */
+	TableDataDefinition getToElementTypes();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMatrixLayout#getToElementTypes <em>To Element Types</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>To Element Types</em>' containment reference.
+	 * @see #getToElementTypes()
+	 * @generated
+	 */
+	void setToElementTypes(TableDataDefinition value);
+
+	/**
+	 * Returns the value of the '<em><b>Cell Element Types</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Cell Element Types</em>' containment reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Cell Element Types</em>' containment reference.
+	 * @see #setCellElementTypes(TableDataDefinition)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIMatrixLayout_CellElementTypes()
+	 * @model containment="true" resolveProxies="true"
+	 * @generated
+	 */
+	TableDataDefinition getCellElementTypes();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMatrixLayout#getCellElementTypes <em>Cell Element Types</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Cell Element Types</em>' containment reference.
+	 * @see #getCellElementTypes()
+	 * @generated
+	 */
+	void setCellElementTypes(TableDataDefinition value);
+
+	/**
+	 * Returns the value of the '<em><b>Description</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Description</em>' containment reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Description</em>' containment reference.
+	 * @see #setDescription(IDescription)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIMatrixLayout_Description()
+	 * @model containment="true" resolveProxies="true"
+	 * @generated
+	 */
+	IDescription getDescription();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMatrixLayout#getDescription <em>Description</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Description</em>' containment reference.
+	 * @see #getDescription()
+	 * @generated
+	 */
+	void setDescription(IDescription value);
+
+} // IMatrixLayout
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/IMatrixView.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/IMatrixView.java
new file mode 100755
index 0000000..8a13aa6
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/IMatrixView.java
@@ -0,0 +1,27 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel;
+
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>IMatrix View</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ *
+ * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIMatrixView()
+ * @model
+ * @generated
+ */
+public interface IMatrixView extends IUnit {
+} // IMatrixView
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/IMessage.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/IMessage.java
new file mode 100755
index 0000000..f15b15a
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/IMessage.java
@@ -0,0 +1,563 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel;
+
+import org.eclipse.emf.common.util.EList;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>IMessage</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * </p>
+ * <ul>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMessage#getId <em>Id</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMessage#getMyState <em>My State</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMessage#getName <em>Name</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMessage#getM_szSequence <em>Msz Sequence</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMessage#getM_szActualArgs <em>Msz Actual Args</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMessage#getM_szReturnVal <em>Msz Return Val</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMessage#getM_pReceiver <em>MpReceiver</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMessage#getM_pSender <em>MpSender</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMessage#getM_pFormalMessage <em>MpFormal Message</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMessage#getM_eType <em>MeType</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMessage#getM_pCommunicationConnection <em>MpCommunication Connection</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMessage#getM_freeText <em>Mfree Text</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMessage#getModifiedTimeWeak <em>Modified Time Weak</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMessage#getStereotypes <em>Stereotypes</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMessage#getTags <em>Tags</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMessage#getProperties <em>Properties</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMessage#getM_targetExec <em>Mtarget Exec</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMessage#getM_srcExec <em>Msrc Exec</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMessage#getObjectCreation <em>Object Creation</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMessage#getUmlDependencyID <em>Uml Dependency ID</em>}</li>
+ * </ul>
+ *
+ * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIMessage()
+ * @model
+ * @generated
+ */
+public interface IMessage extends IModelElement, DependsOnType {
+	/**
+	 * Returns the value of the '<em><b>Id</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Id</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Id</em>' attribute.
+	 * @see #setId(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIMessage_Id()
+	 * @model
+	 * @generated
+	 */
+	String getId();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMessage#getId <em>Id</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Id</em>' attribute.
+	 * @see #getId()
+	 * @generated
+	 */
+	void setId(String value);
+
+	/**
+	 * Returns the value of the '<em><b>My State</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>My State</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>My State</em>' attribute.
+	 * @see #setMyState(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIMessage_MyState()
+	 * @model
+	 * @generated
+	 */
+	String getMyState();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMessage#getMyState <em>My State</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>My State</em>' attribute.
+	 * @see #getMyState()
+	 * @generated
+	 */
+	void setMyState(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Name</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Name</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Name</em>' attribute.
+	 * @see #setName(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIMessage_Name()
+	 * @model
+	 * @generated
+	 */
+	String getName();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMessage#getName <em>Name</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Name</em>' attribute.
+	 * @see #getName()
+	 * @generated
+	 */
+	void setName(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Msz Sequence</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Msz Sequence</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Msz Sequence</em>' attribute.
+	 * @see #setM_szSequence(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIMessage_M_szSequence()
+	 * @model
+	 * @generated
+	 */
+	String getM_szSequence();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMessage#getM_szSequence <em>Msz Sequence</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Msz Sequence</em>' attribute.
+	 * @see #getM_szSequence()
+	 * @generated
+	 */
+	void setM_szSequence(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Msz Actual Args</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Msz Actual Args</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Msz Actual Args</em>' attribute.
+	 * @see #setM_szActualArgs(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIMessage_M_szActualArgs()
+	 * @model
+	 * @generated
+	 */
+	String getM_szActualArgs();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMessage#getM_szActualArgs <em>Msz Actual Args</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Msz Actual Args</em>' attribute.
+	 * @see #getM_szActualArgs()
+	 * @generated
+	 */
+	void setM_szActualArgs(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Msz Return Val</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Msz Return Val</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Msz Return Val</em>' attribute.
+	 * @see #setM_szReturnVal(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIMessage_M_szReturnVal()
+	 * @model
+	 * @generated
+	 */
+	String getM_szReturnVal();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMessage#getM_szReturnVal <em>Msz Return Val</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Msz Return Val</em>' attribute.
+	 * @see #getM_szReturnVal()
+	 * @generated
+	 */
+	void setM_szReturnVal(String value);
+
+	/**
+	 * Returns the value of the '<em><b>MpReceiver</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>MpReceiver</em>' reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>MpReceiver</em>' reference.
+	 * @see #setM_pReceiver(IClassifierRole)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIMessage_M_pReceiver()
+	 * @model
+	 * @generated
+	 */
+	IClassifierRole getM_pReceiver();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMessage#getM_pReceiver <em>MpReceiver</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>MpReceiver</em>' reference.
+	 * @see #getM_pReceiver()
+	 * @generated
+	 */
+	void setM_pReceiver(IClassifierRole value);
+
+	/**
+	 * Returns the value of the '<em><b>MpSender</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>MpSender</em>' reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>MpSender</em>' reference.
+	 * @see #setM_pSender(IClassifierRole)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIMessage_M_pSender()
+	 * @model
+	 * @generated
+	 */
+	IClassifierRole getM_pSender();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMessage#getM_pSender <em>MpSender</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>MpSender</em>' reference.
+	 * @see #getM_pSender()
+	 * @generated
+	 */
+	void setM_pSender(IClassifierRole value);
+
+	/**
+	 * Returns the value of the '<em><b>MpFormal Message</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>MpFormal Message</em>' reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>MpFormal Message</em>' reference.
+	 * @see #setM_pFormalMessage(M_pFormalMessageType)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIMessage_M_pFormalMessage()
+	 * @model
+	 * @generated
+	 */
+	M_pFormalMessageType getM_pFormalMessage();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMessage#getM_pFormalMessage <em>MpFormal Message</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>MpFormal Message</em>' reference.
+	 * @see #getM_pFormalMessage()
+	 * @generated
+	 */
+	void setM_pFormalMessage(M_pFormalMessageType value);
+
+	/**
+	 * Returns the value of the '<em><b>MeType</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>MeType</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>MeType</em>' attribute.
+	 * @see #setM_eType(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIMessage_M_eType()
+	 * @model
+	 * @generated
+	 */
+	String getM_eType();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMessage#getM_eType <em>MeType</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>MeType</em>' attribute.
+	 * @see #getM_eType()
+	 * @generated
+	 */
+	void setM_eType(String value);
+
+	/**
+	 * Returns the value of the '<em><b>MpCommunication Connection</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>MpCommunication Connection</em>' reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>MpCommunication Connection</em>' reference.
+	 * @see #setM_pCommunicationConnection(IModelElement)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIMessage_M_pCommunicationConnection()
+	 * @model
+	 * @generated
+	 */
+	IModelElement getM_pCommunicationConnection();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMessage#getM_pCommunicationConnection <em>MpCommunication Connection</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>MpCommunication Connection</em>' reference.
+	 * @see #getM_pCommunicationConnection()
+	 * @generated
+	 */
+	void setM_pCommunicationConnection(IModelElement value);
+
+	/**
+	 * Returns the value of the '<em><b>Mfree Text</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Mfree Text</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Mfree Text</em>' attribute.
+	 * @see #setM_freeText(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIMessage_M_freeText()
+	 * @model
+	 * @generated
+	 */
+	String getM_freeText();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMessage#getM_freeText <em>Mfree Text</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Mfree Text</em>' attribute.
+	 * @see #getM_freeText()
+	 * @generated
+	 */
+	void setM_freeText(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Modified Time Weak</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Modified Time Weak</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Modified Time Weak</em>' attribute.
+	 * @see #setModifiedTimeWeak(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIMessage_ModifiedTimeWeak()
+	 * @model
+	 * @generated
+	 */
+	String getModifiedTimeWeak();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMessage#getModifiedTimeWeak <em>Modified Time Weak</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Modified Time Weak</em>' attribute.
+	 * @see #getModifiedTimeWeak()
+	 * @generated
+	 */
+	void setModifiedTimeWeak(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Stereotypes</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Stereotypes</em>' reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Stereotypes</em>' reference.
+	 * @see #setStereotypes(IClassifier)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIMessage_Stereotypes()
+	 * @model
+	 * @generated
+	 */
+	IClassifier getStereotypes();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMessage#getStereotypes <em>Stereotypes</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Stereotypes</em>' reference.
+	 * @see #getStereotypes()
+	 * @generated
+	 */
+	void setStereotypes(IClassifier value);
+
+	/**
+	 * Returns the value of the '<em><b>Tags</b></em>' containment reference list.
+	 * The list contents are of type {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITag}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Tags</em>' containment reference list isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Tags</em>' containment reference list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIMessage_Tags()
+	 * @model containment="true" resolveProxies="true"
+	 * @generated
+	 */
+	EList<ITag> getTags();
+
+	/**
+	 * Returns the value of the '<em><b>Properties</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Properties</em>' containment reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Properties</em>' containment reference.
+	 * @see #setProperties(IPropertyContainer)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIMessage_Properties()
+	 * @model containment="true" resolveProxies="true"
+	 * @generated
+	 */
+	IPropertyContainer getProperties();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMessage#getProperties <em>Properties</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Properties</em>' containment reference.
+	 * @see #getProperties()
+	 * @generated
+	 */
+	void setProperties(IPropertyContainer value);
+
+	/**
+	 * Returns the value of the '<em><b>Mtarget Exec</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Mtarget Exec</em>' reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Mtarget Exec</em>' reference.
+	 * @see #setM_targetExec(IModelElement)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIMessage_M_targetExec()
+	 * @model
+	 * @generated
+	 */
+	IModelElement getM_targetExec();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMessage#getM_targetExec <em>Mtarget Exec</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Mtarget Exec</em>' reference.
+	 * @see #getM_targetExec()
+	 * @generated
+	 */
+	void setM_targetExec(IModelElement value);
+
+	/**
+	 * Returns the value of the '<em><b>Msrc Exec</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Msrc Exec</em>' reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Msrc Exec</em>' reference.
+	 * @see #setM_srcExec(IModelElement)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIMessage_M_srcExec()
+	 * @model
+	 * @generated
+	 */
+	IModelElement getM_srcExec();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMessage#getM_srcExec <em>Msrc Exec</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Msrc Exec</em>' reference.
+	 * @see #getM_srcExec()
+	 * @generated
+	 */
+	void setM_srcExec(IModelElement value);
+
+	/**
+	 * Returns the value of the '<em><b>Object Creation</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Object Creation</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Object Creation</em>' attribute.
+	 * @see #setObjectCreation(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIMessage_ObjectCreation()
+	 * @model
+	 * @generated
+	 */
+	String getObjectCreation();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMessage#getObjectCreation <em>Object Creation</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Object Creation</em>' attribute.
+	 * @see #getObjectCreation()
+	 * @generated
+	 */
+	void setObjectCreation(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Uml Dependency ID</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Uml Dependency ID</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Uml Dependency ID</em>' attribute.
+	 * @see #setUmlDependencyID(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIMessage_UmlDependencyID()
+	 * @model
+	 * @generated
+	 */
+	String getUmlDependencyID();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMessage#getUmlDependencyID <em>Uml Dependency ID</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Uml Dependency ID</em>' attribute.
+	 * @see #getUmlDependencyID()
+	 * @generated
+	 */
+	void setUmlDependencyID(String value);
+
+} // IMessage
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/IMessagePoint.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/IMessagePoint.java
new file mode 100755
index 0000000..a72afe1
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/IMessagePoint.java
@@ -0,0 +1,27 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel;
+
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>IMessage Point</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ *
+ * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIMessagePoint()
+ * @model
+ * @generated
+ */
+public interface IMessagePoint extends IModelElement {
+} // IMessagePoint
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/IMetaLinkHandle.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/IMetaLinkHandle.java
new file mode 100755
index 0000000..1384a8e
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/IMetaLinkHandle.java
@@ -0,0 +1,194 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel;
+
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>IMeta Link Handle</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * </p>
+ * <ul>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMetaLinkHandle#getM2Class <em>M2 Class</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMetaLinkHandle#getFilename <em>Filename</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMetaLinkHandle#getSubsystem <em>Subsystem</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMetaLinkHandle#getClass_ <em>Class</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMetaLinkHandle#getName <em>Name</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMetaLinkHandle#getId <em>Id</em>}</li>
+ * </ul>
+ *
+ * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIMetaLinkHandle()
+ * @model
+ * @generated
+ */
+public interface IMetaLinkHandle extends InverseType, M_pModelObjectType {
+	/**
+	 * Returns the value of the '<em><b>M2 Class</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>M2 Class</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>M2 Class</em>' attribute.
+	 * @see #setM2Class(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIMetaLinkHandle_M2Class()
+	 * @model
+	 * @generated
+	 */
+	String getM2Class();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMetaLinkHandle#getM2Class <em>M2 Class</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>M2 Class</em>' attribute.
+	 * @see #getM2Class()
+	 * @generated
+	 */
+	void setM2Class(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Filename</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Filename</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Filename</em>' attribute.
+	 * @see #setFilename(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIMetaLinkHandle_Filename()
+	 * @model
+	 * @generated
+	 */
+	String getFilename();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMetaLinkHandle#getFilename <em>Filename</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Filename</em>' attribute.
+	 * @see #getFilename()
+	 * @generated
+	 */
+	void setFilename(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Subsystem</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Subsystem</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Subsystem</em>' attribute.
+	 * @see #setSubsystem(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIMetaLinkHandle_Subsystem()
+	 * @model
+	 * @generated
+	 */
+	String getSubsystem();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMetaLinkHandle#getSubsystem <em>Subsystem</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Subsystem</em>' attribute.
+	 * @see #getSubsystem()
+	 * @generated
+	 */
+	void setSubsystem(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Class</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Class</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Class</em>' attribute.
+	 * @see #setClass(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIMetaLinkHandle_Class()
+	 * @model
+	 * @generated
+	 */
+	String getClass_();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMetaLinkHandle#getClass_ <em>Class</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Class</em>' attribute.
+	 * @see #getClass_()
+	 * @generated
+	 */
+	void setClass(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Name</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Name</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Name</em>' attribute.
+	 * @see #setName(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIMetaLinkHandle_Name()
+	 * @model
+	 * @generated
+	 */
+	String getName();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMetaLinkHandle#getName <em>Name</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Name</em>' attribute.
+	 * @see #getName()
+	 * @generated
+	 */
+	void setName(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Id</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Id</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Id</em>' attribute.
+	 * @see #setId(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIMetaLinkHandle_Id()
+	 * @model
+	 * @generated
+	 */
+	String getId();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMetaLinkHandle#getId <em>Id</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Id</em>' attribute.
+	 * @see #getId()
+	 * @generated
+	 */
+	void setId(String value);
+
+} // IMetaLinkHandle
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/IModelElement.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/IModelElement.java
new file mode 100755
index 0000000..dc40896
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/IModelElement.java
@@ -0,0 +1,66 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel;
+
+import org.eclipse.emf.ecore.EModelElement;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>IModel Element</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <!-- begin-model-doc -->
+ * This object this be the common one for all Rpy Semantic Element
+ * Diagram seems considered as a semantic element in Rpy Legacy tooling
+ * <!-- end-model-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * </p>
+ * <ul>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IModelElement#getDisplayName <em>Display Name</em>}</li>
+ * </ul>
+ *
+ * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIModelElement()
+ * @model
+ * @generated
+ */
+public interface IModelElement extends EModelElement {
+	/**
+	 * Returns the value of the '<em><b>Display Name</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * <!-- begin-model-doc -->
+	 * As the object IModelElement seems be the common Rpy semantic element, 
+	 * we remove the field "displayName" of all elements owning a such field, and we put it here.
+	 * All semantic Rpy elements should extend this one now.
+	 * <!-- end-model-doc -->
+	 * @return the value of the '<em>Display Name</em>' attribute.
+	 * @see #setDisplayName(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIModelElement_DisplayName()
+	 * @model
+	 * @generated
+	 */
+	String getDisplayName();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IModelElement#getDisplayName <em>Display Name</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Display Name</em>' attribute.
+	 * @see #getDisplayName()
+	 * @generated
+	 */
+	void setDisplayName(String value);
+
+} // IModelElement
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/IModule.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/IModule.java
new file mode 100755
index 0000000..230eb84
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/IModule.java
@@ -0,0 +1,239 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel;
+
+import org.eclipse.emf.common.util.EList;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>IModule</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * </p>
+ * <ul>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IModule#getStereotypes <em>Stereotypes</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IModule#getDescription <em>Description</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IModule#getHyperLinks <em>Hyper Links</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IModule#getOtherClass <em>Other Class</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IModule#getImplicitClass <em>Implicit Class</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IModule#getProperties <em>Properties</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IModule#getRequiremenTracabilityHandle <em>Requiremen Tracability Handle</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IModule#getPartKind <em>Part Kind</em>}</li>
+ * </ul>
+ *
+ * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIModule()
+ * @model
+ * @generated
+ */
+public interface IModule extends IInstance, AssociationsType, DependsOnType, M_pModelObjectType, End2_Type {
+	/**
+	 * Returns the value of the '<em><b>Stereotypes</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Stereotypes</em>' reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Stereotypes</em>' reference.
+	 * @see #setStereotypes(IStereotype)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIModule_Stereotypes()
+	 * @model
+	 * @generated
+	 */
+	IStereotype getStereotypes();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IModule#getStereotypes <em>Stereotypes</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Stereotypes</em>' reference.
+	 * @see #getStereotypes()
+	 * @generated
+	 */
+	void setStereotypes(IStereotype value);
+
+	/**
+	 * Returns the value of the '<em><b>Description</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Description</em>' containment reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Description</em>' containment reference.
+	 * @see #setDescription(IDescription)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIModule_Description()
+	 * @model containment="true" resolveProxies="true"
+	 * @generated
+	 */
+	IDescription getDescription();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IModule#getDescription <em>Description</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Description</em>' containment reference.
+	 * @see #getDescription()
+	 * @generated
+	 */
+	void setDescription(IDescription value);
+
+	/**
+	 * Returns the value of the '<em><b>Hyper Links</b></em>' containment reference list.
+	 * The list contents are of type {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMHyperLink}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Hyper Links</em>' containment reference list isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Hyper Links</em>' containment reference list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIModule_HyperLinks()
+	 * @model containment="true" resolveProxies="true"
+	 * @generated
+	 */
+	EList<IMHyperLink> getHyperLinks();
+
+	/**
+	 * Returns the value of the '<em><b>Other Class</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Other 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>Other Class</em>' reference.
+	 * @see #setOtherClass(IClass)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIModule_OtherClass()
+	 * @model
+	 * @generated
+	 */
+	IClass getOtherClass();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IModule#getOtherClass <em>Other Class</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Other Class</em>' reference.
+	 * @see #getOtherClass()
+	 * @generated
+	 */
+	void setOtherClass(IClass value);
+
+	/**
+	 * Returns the value of the '<em><b>Implicit Class</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Implicit Class</em>' containment reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Implicit Class</em>' containment reference.
+	 * @see #setImplicitClass(IClass)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIModule_ImplicitClass()
+	 * @model containment="true" resolveProxies="true"
+	 * @generated
+	 */
+	IClass getImplicitClass();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IModule#getImplicitClass <em>Implicit Class</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Implicit Class</em>' containment reference.
+	 * @see #getImplicitClass()
+	 * @generated
+	 */
+	void setImplicitClass(IClass value);
+
+	/**
+	 * Returns the value of the '<em><b>Properties</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Properties</em>' containment reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Properties</em>' containment reference.
+	 * @see #setProperties(IPropertyContainer)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIModule_Properties()
+	 * @model containment="true" resolveProxies="true"
+	 * @generated
+	 */
+	IPropertyContainer getProperties();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IModule#getProperties <em>Properties</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Properties</em>' containment reference.
+	 * @see #getProperties()
+	 * @generated
+	 */
+	void setProperties(IPropertyContainer value);
+
+	/**
+	 * Returns the value of the '<em><b>Requiremen Tracability Handle</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Requiremen Tracability Handle</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Requiremen Tracability Handle</em>' attribute.
+	 * @see #setRequiremenTracabilityHandle(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIModule_RequiremenTracabilityHandle()
+	 * @model
+	 * @generated
+	 */
+	String getRequiremenTracabilityHandle();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IModule#getRequiremenTracabilityHandle <em>Requiremen Tracability Handle</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Requiremen Tracability Handle</em>' attribute.
+	 * @see #getRequiremenTracabilityHandle()
+	 * @generated
+	 */
+	void setRequiremenTracabilityHandle(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Part Kind</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Part Kind</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Part Kind</em>' attribute.
+	 * @see #setPartKind(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIModule_PartKind()
+	 * @model
+	 * @generated
+	 */
+	String getPartKind();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IModule#getPartKind <em>Part Kind</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Part Kind</em>' attribute.
+	 * @see #getPartKind()
+	 * @generated
+	 */
+	void setPartKind(String value);
+
+} // IModule
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/IMultiplicityItem.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/IMultiplicityItem.java
new file mode 100755
index 0000000..f4b7d82
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/IMultiplicityItem.java
@@ -0,0 +1,87 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel;
+
+import org.eclipse.emf.ecore.EObject;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>IMultiplicity Item</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * </p>
+ * <ul>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMultiplicityItem#getName <em>Name</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMultiplicityItem#getCount <em>Count</em>}</li>
+ * </ul>
+ *
+ * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIMultiplicityItem()
+ * @model
+ * @generated
+ */
+public interface IMultiplicityItem extends EObject {
+	/**
+	 * Returns the value of the '<em><b>Name</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Name</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Name</em>' attribute.
+	 * @see #setName(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIMultiplicityItem_Name()
+	 * @model
+	 * @generated
+	 */
+	String getName();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMultiplicityItem#getName <em>Name</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Name</em>' attribute.
+	 * @see #getName()
+	 * @generated
+	 */
+	void setName(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Count</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Count</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Count</em>' attribute.
+	 * @see #setCount(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIMultiplicityItem_Count()
+	 * @model
+	 * @generated
+	 */
+	String getCount();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMultiplicityItem#getCount <em>Count</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Count</em>' attribute.
+	 * @see #getCount()
+	 * @generated
+	 */
+	void setCount(String value);
+
+} // IMultiplicityItem
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/INode.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/INode.java
new file mode 100755
index 0000000..0ac28ba
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/INode.java
@@ -0,0 +1,27 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel;
+
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>INode</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ *
+ * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getINode()
+ * @model
+ * @generated
+ */
+public interface INode extends IClassifier {
+} // INode
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/IObjectLink.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/IObjectLink.java
new file mode 100755
index 0000000..3c1c095
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/IObjectLink.java
@@ -0,0 +1,401 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel;
+
+import org.eclipse.emf.common.util.EList;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>IObject Link</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * </p>
+ * <ul>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IObjectLink#getStereotypes <em>Stereotypes</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IObjectLink#getTags <em>Tags</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IObjectLink#getToLink <em>To Link</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IObjectLink#getFromLink <em>From Link</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IObjectLink#getInstantiates <em>Instantiates</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IObjectLink#getEnd1Multiplicity <em>End1 Multiplicity</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IObjectLink#getEnd2Multiplicity <em>End2 Multiplicity</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IObjectLink#getToPort <em>To Port</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IObjectLink#getFromPort <em>From Port</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IObjectLink#getDescription <em>Description</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IObjectLink#getRequiremenTracabilityHandle <em>Requiremen Tracability Handle</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IObjectLink#getCodeUpdateCGTime <em>Code Update CG Time</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IObjectLink#getObjectCreation <em>Object Creation</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IObjectLink#getUmlDependencyID <em>Uml Dependency ID</em>}</li>
+ * </ul>
+ *
+ * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIObjectLink()
+ * @model
+ * @generated
+ */
+public interface IObjectLink extends ObjectLinksType, ValueType, M_pModelObjectType, DependsOnType, IModelElement {
+	/**
+	 * Returns the value of the '<em><b>Stereotypes</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Stereotypes</em>' reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Stereotypes</em>' reference.
+	 * @see #setStereotypes(IUnit)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIObjectLink_Stereotypes()
+	 * @model
+	 * @generated
+	 */
+	IUnit getStereotypes();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IObjectLink#getStereotypes <em>Stereotypes</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Stereotypes</em>' reference.
+	 * @see #getStereotypes()
+	 * @generated
+	 */
+	void setStereotypes(IUnit value);
+
+	/**
+	 * Returns the value of the '<em><b>Tags</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Tags</em>' containment reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Tags</em>' containment reference.
+	 * @see #setTags(ITag)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIObjectLink_Tags()
+	 * @model containment="true" resolveProxies="true"
+	 * @generated
+	 */
+	ITag getTags();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IObjectLink#getTags <em>Tags</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Tags</em>' containment reference.
+	 * @see #getTags()
+	 * @generated
+	 */
+	void setTags(ITag value);
+
+	/**
+	 * Returns the value of the '<em><b>To Link</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>To Link</em>' reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>To Link</em>' reference.
+	 * @see #setToLink(ToLinkType)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIObjectLink_ToLink()
+	 * @model
+	 * @generated
+	 */
+	ToLinkType getToLink();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IObjectLink#getToLink <em>To Link</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>To Link</em>' reference.
+	 * @see #getToLink()
+	 * @generated
+	 */
+	void setToLink(ToLinkType value);
+
+	/**
+	 * Returns the value of the '<em><b>From Link</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>From Link</em>' reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>From Link</em>' reference.
+	 * @see #setFromLink(FromLinkType)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIObjectLink_FromLink()
+	 * @model
+	 * @generated
+	 */
+	FromLinkType getFromLink();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IObjectLink#getFromLink <em>From Link</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>From Link</em>' reference.
+	 * @see #getFromLink()
+	 * @generated
+	 */
+	void setFromLink(FromLinkType value);
+
+	/**
+	 * Returns the value of the '<em><b>Instantiates</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Instantiates</em>' containment reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Instantiates</em>' containment reference.
+	 * @see #setInstantiates(IMetaLinkHandle)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIObjectLink_Instantiates()
+	 * @model containment="true" resolveProxies="true"
+	 * @generated
+	 */
+	IMetaLinkHandle getInstantiates();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IObjectLink#getInstantiates <em>Instantiates</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Instantiates</em>' containment reference.
+	 * @see #getInstantiates()
+	 * @generated
+	 */
+	void setInstantiates(IMetaLinkHandle value);
+
+	/**
+	 * Returns the value of the '<em><b>End1 Multiplicity</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>End1 Multiplicity</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>End1 Multiplicity</em>' attribute.
+	 * @see #setEnd1Multiplicity(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIObjectLink_End1Multiplicity()
+	 * @model
+	 * @generated
+	 */
+	String getEnd1Multiplicity();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IObjectLink#getEnd1Multiplicity <em>End1 Multiplicity</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>End1 Multiplicity</em>' attribute.
+	 * @see #getEnd1Multiplicity()
+	 * @generated
+	 */
+	void setEnd1Multiplicity(String value);
+
+	/**
+	 * Returns the value of the '<em><b>End2 Multiplicity</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>End2 Multiplicity</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>End2 Multiplicity</em>' attribute.
+	 * @see #setEnd2Multiplicity(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIObjectLink_End2Multiplicity()
+	 * @model
+	 * @generated
+	 */
+	String getEnd2Multiplicity();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IObjectLink#getEnd2Multiplicity <em>End2 Multiplicity</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>End2 Multiplicity</em>' attribute.
+	 * @see #getEnd2Multiplicity()
+	 * @generated
+	 */
+	void setEnd2Multiplicity(String value);
+
+	/**
+	 * Returns the value of the '<em><b>To Port</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>To Port</em>' reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>To Port</em>' reference.
+	 * @see #setToPort(IRelation)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIObjectLink_ToPort()
+	 * @model
+	 * @generated
+	 */
+	IRelation getToPort();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IObjectLink#getToPort <em>To Port</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>To Port</em>' reference.
+	 * @see #getToPort()
+	 * @generated
+	 */
+	void setToPort(IRelation value);
+
+	/**
+	 * Returns the value of the '<em><b>From Port</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>From Port</em>' reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>From Port</em>' reference.
+	 * @see #setFromPort(IRelation)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIObjectLink_FromPort()
+	 * @model
+	 * @generated
+	 */
+	IRelation getFromPort();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IObjectLink#getFromPort <em>From Port</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>From Port</em>' reference.
+	 * @see #getFromPort()
+	 * @generated
+	 */
+	void setFromPort(IRelation value);
+
+	/**
+	 * Returns the value of the '<em><b>Description</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Description</em>' containment reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Description</em>' containment reference.
+	 * @see #setDescription(IDescription)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIObjectLink_Description()
+	 * @model containment="true" resolveProxies="true"
+	 * @generated
+	 */
+	IDescription getDescription();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IObjectLink#getDescription <em>Description</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Description</em>' containment reference.
+	 * @see #getDescription()
+	 * @generated
+	 */
+	void setDescription(IDescription value);
+
+	/**
+	 * Returns the value of the '<em><b>Requiremen Tracability Handle</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Requiremen Tracability Handle</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Requiremen Tracability Handle</em>' attribute.
+	 * @see #setRequiremenTracabilityHandle(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIObjectLink_RequiremenTracabilityHandle()
+	 * @model
+	 * @generated
+	 */
+	String getRequiremenTracabilityHandle();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IObjectLink#getRequiremenTracabilityHandle <em>Requiremen Tracability Handle</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Requiremen Tracability Handle</em>' attribute.
+	 * @see #getRequiremenTracabilityHandle()
+	 * @generated
+	 */
+	void setRequiremenTracabilityHandle(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Code Update CG Time</b></em>' attribute list.
+	 * The list contents are of type {@link java.lang.String}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Code Update CG Time</em>' attribute list isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Code Update CG Time</em>' attribute list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIObjectLink_CodeUpdateCGTime()
+	 * @model unique="false"
+	 * @generated
+	 */
+	EList<String> getCodeUpdateCGTime();
+
+	/**
+	 * Returns the value of the '<em><b>Object Creation</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Object Creation</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Object Creation</em>' attribute.
+	 * @see #setObjectCreation(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIObjectLink_ObjectCreation()
+	 * @model
+	 * @generated
+	 */
+	String getObjectCreation();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IObjectLink#getObjectCreation <em>Object Creation</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Object Creation</em>' attribute.
+	 * @see #getObjectCreation()
+	 * @generated
+	 */
+	void setObjectCreation(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Uml Dependency ID</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Uml Dependency ID</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Uml Dependency ID</em>' attribute.
+	 * @see #setUmlDependencyID(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIObjectLink_UmlDependencyID()
+	 * @model
+	 * @generated
+	 */
+	String getUmlDependencyID();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IObjectLink#getUmlDependencyID <em>Uml Dependency ID</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Uml Dependency ID</em>' attribute.
+	 * @see #getUmlDependencyID()
+	 * @generated
+	 */
+	void setUmlDependencyID(String value);
+
+} // IObjectLink
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/IObjectLinkHandle.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/IObjectLinkHandle.java
new file mode 100755
index 0000000..9e03b43
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/IObjectLinkHandle.java
@@ -0,0 +1,195 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel;
+
+import org.eclipse.emf.ecore.EObject;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>IObject Link Handle</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * </p>
+ * <ul>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IObjectLinkHandle#getM2Class <em>M2 Class</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IObjectLinkHandle#getFilename <em>Filename</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IObjectLinkHandle#getSubsystem <em>Subsystem</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IObjectLinkHandle#getClass_ <em>Class</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IObjectLinkHandle#getName <em>Name</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IObjectLinkHandle#getId <em>Id</em>}</li>
+ * </ul>
+ *
+ * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIObjectLinkHandle()
+ * @model
+ * @generated
+ */
+public interface IObjectLinkHandle extends EObject {
+	/**
+	 * Returns the value of the '<em><b>M2 Class</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>M2 Class</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>M2 Class</em>' attribute.
+	 * @see #setM2Class(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIObjectLinkHandle_M2Class()
+	 * @model
+	 * @generated
+	 */
+	String getM2Class();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IObjectLinkHandle#getM2Class <em>M2 Class</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>M2 Class</em>' attribute.
+	 * @see #getM2Class()
+	 * @generated
+	 */
+	void setM2Class(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Filename</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Filename</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Filename</em>' attribute.
+	 * @see #setFilename(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIObjectLinkHandle_Filename()
+	 * @model
+	 * @generated
+	 */
+	String getFilename();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IObjectLinkHandle#getFilename <em>Filename</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Filename</em>' attribute.
+	 * @see #getFilename()
+	 * @generated
+	 */
+	void setFilename(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Subsystem</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Subsystem</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Subsystem</em>' attribute.
+	 * @see #setSubsystem(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIObjectLinkHandle_Subsystem()
+	 * @model
+	 * @generated
+	 */
+	String getSubsystem();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IObjectLinkHandle#getSubsystem <em>Subsystem</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Subsystem</em>' attribute.
+	 * @see #getSubsystem()
+	 * @generated
+	 */
+	void setSubsystem(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Class</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Class</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Class</em>' attribute.
+	 * @see #setClass(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIObjectLinkHandle_Class()
+	 * @model
+	 * @generated
+	 */
+	String getClass_();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IObjectLinkHandle#getClass_ <em>Class</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Class</em>' attribute.
+	 * @see #getClass_()
+	 * @generated
+	 */
+	void setClass(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Name</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Name</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Name</em>' attribute.
+	 * @see #setName(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIObjectLinkHandle_Name()
+	 * @model
+	 * @generated
+	 */
+	String getName();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IObjectLinkHandle#getName <em>Name</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Name</em>' attribute.
+	 * @see #getName()
+	 * @generated
+	 */
+	void setName(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Id</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Id</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Id</em>' attribute.
+	 * @see #setId(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIObjectLinkHandle_Id()
+	 * @model
+	 * @generated
+	 */
+	String getId();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IObjectLinkHandle#getId <em>Id</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Id</em>' attribute.
+	 * @see #getId()
+	 * @generated
+	 */
+	void setId(String value);
+
+} // IObjectLinkHandle
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/IObjectModelDiagram.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/IObjectModelDiagram.java
new file mode 100755
index 0000000..ce6643f
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/IObjectModelDiagram.java
@@ -0,0 +1,27 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel;
+
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>IObject Model Diagram</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ *
+ * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIObjectModelDiagram()
+ * @model
+ * @generated
+ */
+public interface IObjectModelDiagram extends IDiagram {
+} // IObjectModelDiagram
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/IObjectNode.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/IObjectNode.java
new file mode 100755
index 0000000..b512bb0
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/IObjectNode.java
@@ -0,0 +1,113 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel;
+
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>IObject Node</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * </p>
+ * <ul>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IObjectNode#getRepresents <em>Represents</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IObjectNode#getTheInState <em>The In State</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IObjectNode#getInState <em>In State</em>}</li>
+ * </ul>
+ *
+ * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIObjectNode()
+ * @model
+ * @generated
+ */
+public interface IObjectNode extends IState, ItsTargetType {
+	/**
+	 * Returns the value of the '<em><b>Represents</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Represents</em>' reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Represents</em>' reference.
+	 * @see #setRepresents(IClass)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIObjectNode_Represents()
+	 * @model
+	 * @generated
+	 */
+	IClass getRepresents();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IObjectNode#getRepresents <em>Represents</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Represents</em>' reference.
+	 * @see #getRepresents()
+	 * @generated
+	 */
+	void setRepresents(IClass value);
+
+	/**
+	 * Returns the value of the '<em><b>The In State</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>The In State</em>' reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>The In State</em>' reference.
+	 * @see #setTheInState(IState)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIObjectNode_TheInState()
+	 * @model
+	 * @generated
+	 */
+	IState getTheInState();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IObjectNode#getTheInState <em>The In State</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>The In State</em>' reference.
+	 * @see #getTheInState()
+	 * @generated
+	 */
+	void setTheInState(IState value);
+
+	/**
+	 * Returns the value of the '<em><b>In State</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>In State</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>In State</em>' attribute.
+	 * @see #setInState(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIObjectNode_InState()
+	 * @model
+	 * @generated
+	 */
+	String getInState();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IObjectNode#getInState <em>In State</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>In State</em>' attribute.
+	 * @see #getInState()
+	 * @generated
+	 */
+	void setInState(String value);
+
+} // IObjectNode
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/IOperation.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/IOperation.java
new file mode 100755
index 0000000..889fdc0
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/IOperation.java
@@ -0,0 +1,27 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel;
+
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>IOperation</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ *
+ * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIOperation()
+ * @model
+ * @generated
+ */
+public interface IOperation extends IInterfaceItem {
+} // IOperation
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/IPackage.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/IPackage.java
new file mode 100755
index 0000000..c7c2f72
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/IPackage.java
@@ -0,0 +1,347 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel;
+
+import org.eclipse.emf.common.util.EList;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>IPackage</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * </p>
+ * <ul>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IPackage#getModifiedTimeWeak <em>Modified Time Weak</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IPackage#getId <em>Id</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IPackage#getDescription <em>Description</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IPackage#getUmlDependencyID <em>Uml Dependency ID</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IPackage#getLastID <em>Last ID</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IPackage#getMyState <em>My State</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IPackage#getAnnotations <em>Annotations</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IPackage#getObjectCreation <em>Object Creation</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IPackage#getStereotypes <em>Stereotypes</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IPackage#getName <em>Name</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IPackage#getProperties <em>Properties</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IPackage#getCmheader <em>Cmheader</em>}</li>
+ * </ul>
+ *
+ * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIPackage()
+ * @model
+ * @generated
+ */
+public interface IPackage extends IUnit {
+	/**
+	 * Returns the value of the '<em><b>Modified Time Weak</b></em>' attribute list.
+	 * The list contents are of type {@link java.lang.String}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Modified Time Weak</em>' attribute list isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Modified Time Weak</em>' attribute list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIPackage_ModifiedTimeWeak()
+	 * @model unique="false"
+	 * @generated
+	 */
+	EList<String> getModifiedTimeWeak();
+
+	/**
+	 * Returns the value of the '<em><b>Id</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Id</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Id</em>' attribute.
+	 * @see #setId(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIPackage_Id()
+	 * @model
+	 * @generated
+	 */
+	String getId();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IPackage#getId <em>Id</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Id</em>' attribute.
+	 * @see #getId()
+	 * @generated
+	 */
+	void setId(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Description</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Description</em>' containment reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Description</em>' containment reference.
+	 * @see #setDescription(IDescription)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIPackage_Description()
+	 * @model containment="true" resolveProxies="true"
+	 * @generated
+	 */
+	IDescription getDescription();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IPackage#getDescription <em>Description</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Description</em>' containment reference.
+	 * @see #getDescription()
+	 * @generated
+	 */
+	void setDescription(IDescription value);
+
+	/**
+	 * Returns the value of the '<em><b>Uml Dependency ID</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Uml Dependency ID</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Uml Dependency ID</em>' attribute.
+	 * @see #setUmlDependencyID(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIPackage_UmlDependencyID()
+	 * @model
+	 * @generated
+	 */
+	String getUmlDependencyID();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IPackage#getUmlDependencyID <em>Uml Dependency ID</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Uml Dependency ID</em>' attribute.
+	 * @see #getUmlDependencyID()
+	 * @generated
+	 */
+	void setUmlDependencyID(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Last ID</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Last ID</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Last ID</em>' attribute.
+	 * @see #setLastID(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIPackage_LastID()
+	 * @model
+	 * @generated
+	 */
+	String getLastID();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IPackage#getLastID <em>Last ID</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Last ID</em>' attribute.
+	 * @see #getLastID()
+	 * @generated
+	 */
+	void setLastID(String value);
+
+	/**
+	 * Returns the value of the '<em><b>My State</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>My State</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>My State</em>' attribute.
+	 * @see #setMyState(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIPackage_MyState()
+	 * @model
+	 * @generated
+	 */
+	String getMyState();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IPackage#getMyState <em>My State</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>My State</em>' attribute.
+	 * @see #getMyState()
+	 * @generated
+	 */
+	void setMyState(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Annotations</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Annotations</em>' containment reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Annotations</em>' containment reference.
+	 * @see #setAnnotations(IComment)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIPackage_Annotations()
+	 * @model containment="true" resolveProxies="true"
+	 * @generated
+	 */
+	IComment getAnnotations();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IPackage#getAnnotations <em>Annotations</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Annotations</em>' containment reference.
+	 * @see #getAnnotations()
+	 * @generated
+	 */
+	void setAnnotations(IComment value);
+
+	/**
+	 * Returns the value of the '<em><b>Object Creation</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Object Creation</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Object Creation</em>' attribute.
+	 * @see #setObjectCreation(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIPackage_ObjectCreation()
+	 * @model
+	 * @generated
+	 */
+	String getObjectCreation();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IPackage#getObjectCreation <em>Object Creation</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Object Creation</em>' attribute.
+	 * @see #getObjectCreation()
+	 * @generated
+	 */
+	void setObjectCreation(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Stereotypes</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Stereotypes</em>' reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Stereotypes</em>' reference.
+	 * @see #setStereotypes(IModelElement)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIPackage_Stereotypes()
+	 * @model
+	 * @generated
+	 */
+	IModelElement getStereotypes();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IPackage#getStereotypes <em>Stereotypes</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Stereotypes</em>' reference.
+	 * @see #getStereotypes()
+	 * @generated
+	 */
+	void setStereotypes(IModelElement value);
+
+	/**
+	 * Returns the value of the '<em><b>Name</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Name</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Name</em>' attribute.
+	 * @see #setName(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIPackage_Name()
+	 * @model
+	 * @generated
+	 */
+	String getName();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IPackage#getName <em>Name</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Name</em>' attribute.
+	 * @see #getName()
+	 * @generated
+	 */
+	void setName(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Properties</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Properties</em>' containment reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Properties</em>' containment reference.
+	 * @see #setProperties(IPropertyContainer)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIPackage_Properties()
+	 * @model containment="true" resolveProxies="true"
+	 * @generated
+	 */
+	IPropertyContainer getProperties();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IPackage#getProperties <em>Properties</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Properties</em>' containment reference.
+	 * @see #getProperties()
+	 * @generated
+	 */
+	void setProperties(IPropertyContainer value);
+
+	/**
+	 * Returns the value of the '<em><b>Cmheader</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Cmheader</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Cmheader</em>' attribute.
+	 * @see #setCmheader(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIPackage_Cmheader()
+	 * @model
+	 * @generated
+	 */
+	String getCmheader();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IPackage#getCmheader <em>Cmheader</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Cmheader</em>' attribute.
+	 * @see #getCmheader()
+	 * @generated
+	 */
+	void setCmheader(String value);
+
+} // IPackage
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/IPanelDiagram.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/IPanelDiagram.java
new file mode 100755
index 0000000..28aa4e3
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/IPanelDiagram.java
@@ -0,0 +1,27 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel;
+
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>IPanel Diagram</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ *
+ * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIPanelDiagram()
+ * @model
+ * @generated
+ */
+public interface IPanelDiagram extends IDiagram, DeclarativesType, TargetType {
+} // IPanelDiagram
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/IPart.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/IPart.java
new file mode 100755
index 0000000..b87bbd7
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/IPart.java
@@ -0,0 +1,273 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel;
+
+import org.eclipse.emf.common.util.EList;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>IPart</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * </p>
+ * <ul>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IPart#getStereotypes <em>Stereotypes</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IPart#getOtherClass <em>Other Class</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IPart#getInverse <em>Inverse</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IPart#getDependencies <em>Dependencies</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IPart#getTags <em>Tags</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IPart#getInitialCallAction <em>Initial Call Action</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IPart#getCodeUpdateCGTime <em>Code Update CG Time</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IPart#getTheMainDiagram <em>The Main Diagram</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IPart#getSlots <em>Slots</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IPart#getHyperLinks <em>Hyper Links</em>}</li>
+ * </ul>
+ *
+ * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIPart()
+ * @model
+ * @generated
+ */
+public interface IPart extends AssociationsType, DependsOnType, M_subjectType, ValueType, M_hTargetType, M_pModelObjectType, ToLinkType, InverseType, ConveyedType, End2_Type, TargetType, FromLinkType, End1_Type, IModelElement {
+	/**
+	 * Returns the value of the '<em><b>Stereotypes</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Stereotypes</em>' reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Stereotypes</em>' reference.
+	 * @see #setStereotypes(IUnit)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIPart_Stereotypes()
+	 * @model
+	 * @generated
+	 */
+	IUnit getStereotypes();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IPart#getStereotypes <em>Stereotypes</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Stereotypes</em>' reference.
+	 * @see #getStereotypes()
+	 * @generated
+	 */
+	void setStereotypes(IUnit value);
+
+	/**
+	 * Returns the value of the '<em><b>Other Class</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Other 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>Other Class</em>' reference.
+	 * @see #setOtherClass(IUnit)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIPart_OtherClass()
+	 * @model
+	 * @generated
+	 */
+	IUnit getOtherClass();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IPart#getOtherClass <em>Other Class</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Other Class</em>' reference.
+	 * @see #getOtherClass()
+	 * @generated
+	 */
+	void setOtherClass(IUnit value);
+
+	/**
+	 * Returns the value of the '<em><b>Inverse</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Inverse</em>' reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Inverse</em>' reference.
+	 * @see #setInverse(InverseType)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIPart_Inverse()
+	 * @model
+	 * @generated
+	 */
+	InverseType getInverse();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IPart#getInverse <em>Inverse</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Inverse</em>' reference.
+	 * @see #getInverse()
+	 * @generated
+	 */
+	void setInverse(InverseType value);
+
+	/**
+	 * Returns the value of the '<em><b>Dependencies</b></em>' containment reference list.
+	 * The list contents are of type {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IDependency}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Dependencies</em>' containment reference list isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Dependencies</em>' containment reference list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIPart_Dependencies()
+	 * @model containment="true" resolveProxies="true"
+	 * @generated
+	 */
+	EList<IDependency> getDependencies();
+
+	/**
+	 * Returns the value of the '<em><b>Tags</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Tags</em>' containment reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Tags</em>' containment reference.
+	 * @see #setTags(ITag)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIPart_Tags()
+	 * @model containment="true" resolveProxies="true"
+	 * @generated
+	 */
+	ITag getTags();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IPart#getTags <em>Tags</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Tags</em>' containment reference.
+	 * @see #getTags()
+	 * @generated
+	 */
+	void setTags(ITag value);
+
+	/**
+	 * Returns the value of the '<em><b>Initial Call Action</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Initial Call Action</em>' containment reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Initial Call Action</em>' containment reference.
+	 * @see #setInitialCallAction(ICallAction)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIPart_InitialCallAction()
+	 * @model containment="true" resolveProxies="true"
+	 * @generated
+	 */
+	ICallAction getInitialCallAction();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IPart#getInitialCallAction <em>Initial Call Action</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Initial Call Action</em>' containment reference.
+	 * @see #getInitialCallAction()
+	 * @generated
+	 */
+	void setInitialCallAction(ICallAction value);
+
+	/**
+	 * Returns the value of the '<em><b>Code Update CG Time</b></em>' attribute list.
+	 * The list contents are of type {@link java.lang.String}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Code Update CG Time</em>' attribute list isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Code Update CG Time</em>' attribute list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIPart_CodeUpdateCGTime()
+	 * @model unique="false"
+	 * @generated
+	 */
+	EList<String> getCodeUpdateCGTime();
+
+	/**
+	 * Returns the value of the '<em><b>The Main Diagram</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>The Main Diagram</em>' reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>The Main Diagram</em>' reference.
+	 * @see #setTheMainDiagram(DependsOnType)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIPart_TheMainDiagram()
+	 * @model
+	 * @generated
+	 */
+	DependsOnType getTheMainDiagram();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IPart#getTheMainDiagram <em>The Main Diagram</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>The Main Diagram</em>' reference.
+	 * @see #getTheMainDiagram()
+	 * @generated
+	 */
+	void setTheMainDiagram(DependsOnType value);
+
+	/**
+	 * Returns the value of the '<em><b>Slots</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Slots</em>' containment reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Slots</em>' containment reference.
+	 * @see #setSlots(ISlot)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIPart_Slots()
+	 * @model containment="true" resolveProxies="true"
+	 * @generated
+	 */
+	ISlot getSlots();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IPart#getSlots <em>Slots</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Slots</em>' containment reference.
+	 * @see #getSlots()
+	 * @generated
+	 */
+	void setSlots(ISlot value);
+
+	/**
+	 * Returns the value of the '<em><b>Hyper Links</b></em>' containment reference list.
+	 * The list contents are of type {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMHyperLink}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Hyper Links</em>' containment reference list isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Hyper Links</em>' containment reference list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIPart_HyperLinks()
+	 * @model containment="true" resolveProxies="true"
+	 * @generated
+	 */
+	EList<IMHyperLink> getHyperLinks();
+
+} // IPart
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/IPin.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/IPin.java
new file mode 100755
index 0000000..b203d24
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/IPin.java
@@ -0,0 +1,113 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel;
+
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>IPin</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * </p>
+ * <ul>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IPin#getM_type <em>Mtype</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IPin#getM_isParameterPin <em>Mis Parameter Pin</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IPin#getM_corePin <em>Mcore Pin</em>}</li>
+ * </ul>
+ *
+ * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIPin()
+ * @model
+ * @generated
+ */
+public interface IPin extends IConnector, ItsTargetType {
+	/**
+	 * Returns the value of the '<em><b>Mtype</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Mtype</em>' reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Mtype</em>' reference.
+	 * @see #setM_type(IClassifier)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIPin_M_type()
+	 * @model
+	 * @generated
+	 */
+	IClassifier getM_type();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IPin#getM_type <em>Mtype</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Mtype</em>' reference.
+	 * @see #getM_type()
+	 * @generated
+	 */
+	void setM_type(IClassifier value);
+
+	/**
+	 * Returns the value of the '<em><b>Mis Parameter Pin</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Mis Parameter Pin</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Mis Parameter Pin</em>' attribute.
+	 * @see #setM_isParameterPin(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIPin_M_isParameterPin()
+	 * @model
+	 * @generated
+	 */
+	String getM_isParameterPin();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IPin#getM_isParameterPin <em>Mis Parameter Pin</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Mis Parameter Pin</em>' attribute.
+	 * @see #getM_isParameterPin()
+	 * @generated
+	 */
+	void setM_isParameterPin(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Mcore Pin</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Mcore Pin</em>' reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Mcore Pin</em>' reference.
+	 * @see #setM_corePin(IConnector)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIPin_M_corePin()
+	 * @model
+	 * @generated
+	 */
+	IConnector getM_corePin();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IPin#getM_corePin <em>Mcore Pin</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Mcore Pin</em>' reference.
+	 * @see #getM_corePin()
+	 * @generated
+	 */
+	void setM_corePin(IConnector value);
+
+} // IPin
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/IPort.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/IPort.java
new file mode 100755
index 0000000..2633133
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/IPort.java
@@ -0,0 +1,293 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel;
+
+import org.eclipse.emf.common.util.EList;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>IPort</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * </p>
+ * <ul>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IPort#getOtherClass <em>Other Class</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IPort#getBehavioral <em>Behavioral</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IPort#getReversed <em>Reversed</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IPort#getStereotypes <em>Stereotypes</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IPort#getTags <em>Tags</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IPort#getObjectCreation <em>Object Creation</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IPort#getUmlDependencyID <em>Uml Dependency ID</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IPort#getLastID <em>Last ID</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IPort#getDependencies <em>Dependencies</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IPort#getAnnotations <em>Annotations</em>}</li>
+ * </ul>
+ *
+ * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIPort()
+ * @model
+ * @generated
+ */
+public interface IPort extends IInstance, M_hTargetType, ToLinkType, End2_Type {
+	/**
+	 * Returns the value of the '<em><b>Other Class</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Other 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>Other Class</em>' reference.
+	 * @see #setOtherClass(IClass)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIPort_OtherClass()
+	 * @model
+	 * @generated
+	 */
+	IClass getOtherClass();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IPort#getOtherClass <em>Other Class</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Other Class</em>' reference.
+	 * @see #getOtherClass()
+	 * @generated
+	 */
+	void setOtherClass(IClass value);
+
+	/**
+	 * Returns the value of the '<em><b>Behavioral</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Behavioral</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Behavioral</em>' attribute.
+	 * @see #setBehavioral(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIPort_Behavioral()
+	 * @model
+	 * @generated
+	 */
+	String getBehavioral();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IPort#getBehavioral <em>Behavioral</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Behavioral</em>' attribute.
+	 * @see #getBehavioral()
+	 * @generated
+	 */
+	void setBehavioral(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Reversed</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Reversed</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Reversed</em>' attribute.
+	 * @see #setReversed(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIPort_Reversed()
+	 * @model
+	 * @generated
+	 */
+	String getReversed();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IPort#getReversed <em>Reversed</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Reversed</em>' attribute.
+	 * @see #getReversed()
+	 * @generated
+	 */
+	void setReversed(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Stereotypes</b></em>' reference list.
+	 * The list contents are of type {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IClassifier}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Stereotypes</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>Stereotypes</em>' reference list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIPort_Stereotypes()
+	 * @model
+	 * @generated
+	 */
+	EList<IClassifier> getStereotypes();
+
+	/**
+	 * Returns the value of the '<em><b>Tags</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Tags</em>' containment reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Tags</em>' containment reference.
+	 * @see #setTags(ITag)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIPort_Tags()
+	 * @model containment="true" resolveProxies="true"
+	 * @generated
+	 */
+	ITag getTags();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IPort#getTags <em>Tags</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Tags</em>' containment reference.
+	 * @see #getTags()
+	 * @generated
+	 */
+	void setTags(ITag value);
+
+	/**
+	 * Returns the value of the '<em><b>Object Creation</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Object Creation</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Object Creation</em>' attribute.
+	 * @see #setObjectCreation(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIPort_ObjectCreation()
+	 * @model
+	 * @generated
+	 */
+	String getObjectCreation();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IPort#getObjectCreation <em>Object Creation</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Object Creation</em>' attribute.
+	 * @see #getObjectCreation()
+	 * @generated
+	 */
+	void setObjectCreation(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Uml Dependency ID</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Uml Dependency ID</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Uml Dependency ID</em>' attribute.
+	 * @see #setUmlDependencyID(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIPort_UmlDependencyID()
+	 * @model
+	 * @generated
+	 */
+	String getUmlDependencyID();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IPort#getUmlDependencyID <em>Uml Dependency ID</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Uml Dependency ID</em>' attribute.
+	 * @see #getUmlDependencyID()
+	 * @generated
+	 */
+	void setUmlDependencyID(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Last ID</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Last ID</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Last ID</em>' attribute.
+	 * @see #setLastID(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIPort_LastID()
+	 * @model
+	 * @generated
+	 */
+	String getLastID();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IPort#getLastID <em>Last ID</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Last ID</em>' attribute.
+	 * @see #getLastID()
+	 * @generated
+	 */
+	void setLastID(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Dependencies</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Dependencies</em>' containment reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Dependencies</em>' containment reference.
+	 * @see #setDependencies(IDependency)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIPort_Dependencies()
+	 * @model containment="true" resolveProxies="true"
+	 * @generated
+	 */
+	IDependency getDependencies();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IPort#getDependencies <em>Dependencies</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Dependencies</em>' containment reference.
+	 * @see #getDependencies()
+	 * @generated
+	 */
+	void setDependencies(IDependency value);
+
+	/**
+	 * Returns the value of the '<em><b>Annotations</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Annotations</em>' containment reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Annotations</em>' containment reference.
+	 * @see #setAnnotations(IRequirement)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIPort_Annotations()
+	 * @model containment="true" resolveProxies="true"
+	 * @generated
+	 */
+	IRequirement getAnnotations();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IPort#getAnnotations <em>Annotations</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Annotations</em>' containment reference.
+	 * @see #getAnnotations()
+	 * @generated
+	 */
+	void setAnnotations(IRequirement value);
+
+} // IPort
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/IPrimitiveOperation.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/IPrimitiveOperation.java
new file mode 100755
index 0000000..63e5215
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/IPrimitiveOperation.java
@@ -0,0 +1,604 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel;
+
+import org.eclipse.emf.common.util.EList;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>IPrimitive Operation</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * </p>
+ * <ul>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IPrimitiveOperation#getProperties <em>Properties</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IPrimitiveOperation#getLastID <em>Last ID</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IPrimitiveOperation#getArgs <em>Args</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IPrimitiveOperation#getReturnType <em>Return Type</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IPrimitiveOperation#getAbstract <em>Abstract</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IPrimitiveOperation#getFinal <em>Final</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IPrimitiveOperation#getConcurrency <em>Concurrency</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IPrimitiveOperation#getProtection <em>Protection</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IPrimitiveOperation#getStatic <em>Static</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IPrimitiveOperation#getConstant <em>Constant</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IPrimitiveOperation#getItsBody <em>Its Body</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IPrimitiveOperation#getTags <em>Tags</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IPrimitiveOperation#getAnnotations <em>Annotations</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IPrimitiveOperation#getDependencies <em>Dependencies</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IPrimitiveOperation#getStereotypes <em>Stereotypes</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IPrimitiveOperation#getMyReturnType <em>My Return Type</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IPrimitiveOperation#getDescription <em>Description</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IPrimitiveOperation#getRequiremenTracabilityHandle <em>Requiremen Tracability Handle</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IPrimitiveOperation#getDeclaratives <em>Declaratives</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IPrimitiveOperation#getItsActivityGraph <em>Its Activity Graph</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IPrimitiveOperation#getEmbededFiles <em>Embeded Files</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IPrimitiveOperation#getCodeUpdateCGTime <em>Code Update CG Time</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IPrimitiveOperation#getTemplateParameters <em>Template Parameters</em>}</li>
+ * </ul>
+ *
+ * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIPrimitiveOperation()
+ * @model
+ * @generated
+ */
+public interface IPrimitiveOperation extends OperationsType, DependsOnType, M_subjectType, ValueType, M_pFormalMessageType, ItemsType, TargetType, M_pModelObjectType, IModelElement {
+	/**
+	 * Returns the value of the '<em><b>Properties</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Properties</em>' containment reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Properties</em>' containment reference.
+	 * @see #setProperties(IPropertyContainer)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIPrimitiveOperation_Properties()
+	 * @model containment="true" resolveProxies="true"
+	 * @generated
+	 */
+	IPropertyContainer getProperties();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IPrimitiveOperation#getProperties <em>Properties</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Properties</em>' containment reference.
+	 * @see #getProperties()
+	 * @generated
+	 */
+	void setProperties(IPropertyContainer value);
+
+	/**
+	 * Returns the value of the '<em><b>Last ID</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Last ID</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Last ID</em>' attribute.
+	 * @see #setLastID(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIPrimitiveOperation_LastID()
+	 * @model
+	 * @generated
+	 */
+	String getLastID();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IPrimitiveOperation#getLastID <em>Last ID</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Last ID</em>' attribute.
+	 * @see #getLastID()
+	 * @generated
+	 */
+	void setLastID(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Args</b></em>' containment reference list.
+	 * The list contents are of type {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IVariable}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Args</em>' containment reference list isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Args</em>' containment reference list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIPrimitiveOperation_Args()
+	 * @model containment="true" resolveProxies="true"
+	 * @generated
+	 */
+	EList<IVariable> getArgs();
+
+	/**
+	 * Returns the value of the '<em><b>Return Type</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Return Type</em>' reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Return Type</em>' reference.
+	 * @see #setReturnType(IClassifier)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIPrimitiveOperation_ReturnType()
+	 * @model
+	 * @generated
+	 */
+	IClassifier getReturnType();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IPrimitiveOperation#getReturnType <em>Return Type</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Return Type</em>' reference.
+	 * @see #getReturnType()
+	 * @generated
+	 */
+	void setReturnType(IClassifier value);
+
+	/**
+	 * Returns the value of the '<em><b>Abstract</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Abstract</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Abstract</em>' attribute.
+	 * @see #setAbstract(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIPrimitiveOperation_Abstract()
+	 * @model
+	 * @generated
+	 */
+	String getAbstract();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IPrimitiveOperation#getAbstract <em>Abstract</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Abstract</em>' attribute.
+	 * @see #getAbstract()
+	 * @generated
+	 */
+	void setAbstract(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Final</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Final</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Final</em>' attribute.
+	 * @see #setFinal(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIPrimitiveOperation_Final()
+	 * @model
+	 * @generated
+	 */
+	String getFinal();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IPrimitiveOperation#getFinal <em>Final</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Final</em>' attribute.
+	 * @see #getFinal()
+	 * @generated
+	 */
+	void setFinal(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Concurrency</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Concurrency</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Concurrency</em>' attribute.
+	 * @see #setConcurrency(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIPrimitiveOperation_Concurrency()
+	 * @model
+	 * @generated
+	 */
+	String getConcurrency();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IPrimitiveOperation#getConcurrency <em>Concurrency</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Concurrency</em>' attribute.
+	 * @see #getConcurrency()
+	 * @generated
+	 */
+	void setConcurrency(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Protection</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Protection</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Protection</em>' attribute.
+	 * @see #setProtection(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIPrimitiveOperation_Protection()
+	 * @model
+	 * @generated
+	 */
+	String getProtection();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IPrimitiveOperation#getProtection <em>Protection</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Protection</em>' attribute.
+	 * @see #getProtection()
+	 * @generated
+	 */
+	void setProtection(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Static</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Static</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Static</em>' attribute.
+	 * @see #setStatic(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIPrimitiveOperation_Static()
+	 * @model
+	 * @generated
+	 */
+	String getStatic();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IPrimitiveOperation#getStatic <em>Static</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Static</em>' attribute.
+	 * @see #getStatic()
+	 * @generated
+	 */
+	void setStatic(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Constant</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Constant</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Constant</em>' attribute.
+	 * @see #setConstant(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIPrimitiveOperation_Constant()
+	 * @model
+	 * @generated
+	 */
+	String getConstant();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IPrimitiveOperation#getConstant <em>Constant</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Constant</em>' attribute.
+	 * @see #getConstant()
+	 * @generated
+	 */
+	void setConstant(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Its Body</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Its Body</em>' containment reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Its Body</em>' containment reference.
+	 * @see #setItsBody(IBody)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIPrimitiveOperation_ItsBody()
+	 * @model containment="true" resolveProxies="true"
+	 * @generated
+	 */
+	IBody getItsBody();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IPrimitiveOperation#getItsBody <em>Its Body</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Its Body</em>' containment reference.
+	 * @see #getItsBody()
+	 * @generated
+	 */
+	void setItsBody(IBody value);
+
+	/**
+	 * Returns the value of the '<em><b>Tags</b></em>' containment reference list.
+	 * The list contents are of type {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITag}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Tags</em>' containment reference list isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Tags</em>' containment reference list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIPrimitiveOperation_Tags()
+	 * @model containment="true" resolveProxies="true"
+	 * @generated
+	 */
+	EList<ITag> getTags();
+
+	/**
+	 * Returns the value of the '<em><b>Annotations</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Annotations</em>' containment reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Annotations</em>' containment reference.
+	 * @see #setAnnotations(IComment)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIPrimitiveOperation_Annotations()
+	 * @model containment="true" resolveProxies="true"
+	 * @generated
+	 */
+	IComment getAnnotations();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IPrimitiveOperation#getAnnotations <em>Annotations</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Annotations</em>' containment reference.
+	 * @see #getAnnotations()
+	 * @generated
+	 */
+	void setAnnotations(IComment value);
+
+	/**
+	 * Returns the value of the '<em><b>Dependencies</b></em>' containment reference list.
+	 * The list contents are of type {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IDependency}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Dependencies</em>' containment reference list isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Dependencies</em>' containment reference list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIPrimitiveOperation_Dependencies()
+	 * @model containment="true" resolveProxies="true"
+	 * @generated
+	 */
+	EList<IDependency> getDependencies();
+
+	/**
+	 * Returns the value of the '<em><b>Stereotypes</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Stereotypes</em>' reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Stereotypes</em>' reference.
+	 * @see #setStereotypes(IClassifier)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIPrimitiveOperation_Stereotypes()
+	 * @model
+	 * @generated
+	 */
+	IClassifier getStereotypes();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IPrimitiveOperation#getStereotypes <em>Stereotypes</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Stereotypes</em>' reference.
+	 * @see #getStereotypes()
+	 * @generated
+	 */
+	void setStereotypes(IClassifier value);
+
+	/**
+	 * Returns the value of the '<em><b>My Return Type</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>My Return Type</em>' containment reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>My Return Type</em>' containment reference.
+	 * @see #setMyReturnType(IType)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIPrimitiveOperation_MyReturnType()
+	 * @model containment="true" resolveProxies="true"
+	 * @generated
+	 */
+	IType getMyReturnType();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IPrimitiveOperation#getMyReturnType <em>My Return Type</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>My Return Type</em>' containment reference.
+	 * @see #getMyReturnType()
+	 * @generated
+	 */
+	void setMyReturnType(IType value);
+
+	/**
+	 * Returns the value of the '<em><b>Description</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Description</em>' containment reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Description</em>' containment reference.
+	 * @see #setDescription(IDescription)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIPrimitiveOperation_Description()
+	 * @model containment="true" resolveProxies="true"
+	 * @generated
+	 */
+	IDescription getDescription();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IPrimitiveOperation#getDescription <em>Description</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Description</em>' containment reference.
+	 * @see #getDescription()
+	 * @generated
+	 */
+	void setDescription(IDescription value);
+
+	/**
+	 * Returns the value of the '<em><b>Requiremen Tracability Handle</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Requiremen Tracability Handle</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Requiremen Tracability Handle</em>' attribute.
+	 * @see #setRequiremenTracabilityHandle(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIPrimitiveOperation_RequiremenTracabilityHandle()
+	 * @model
+	 * @generated
+	 */
+	String getRequiremenTracabilityHandle();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IPrimitiveOperation#getRequiremenTracabilityHandle <em>Requiremen Tracability Handle</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Requiremen Tracability Handle</em>' attribute.
+	 * @see #getRequiremenTracabilityHandle()
+	 * @generated
+	 */
+	void setRequiremenTracabilityHandle(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Declaratives</b></em>' containment reference list.
+	 * The list contents are of type {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMSC}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Declaratives</em>' containment reference list isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Declaratives</em>' containment reference list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIPrimitiveOperation_Declaratives()
+	 * @model containment="true" resolveProxies="true"
+	 * @generated
+	 */
+	EList<IMSC> getDeclaratives();
+
+	/**
+	 * Returns the value of the '<em><b>Its Activity Graph</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Its Activity Graph</em>' containment reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Its Activity Graph</em>' containment reference.
+	 * @see #setItsActivityGraph(IActivityGraph)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIPrimitiveOperation_ItsActivityGraph()
+	 * @model containment="true" resolveProxies="true"
+	 * @generated
+	 */
+	IActivityGraph getItsActivityGraph();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IPrimitiveOperation#getItsActivityGraph <em>Its Activity Graph</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Its Activity Graph</em>' containment reference.
+	 * @see #getItsActivityGraph()
+	 * @generated
+	 */
+	void setItsActivityGraph(IActivityGraph value);
+
+	/**
+	 * Returns the value of the '<em><b>Embeded Files</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Embeded Files</em>' containment reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Embeded Files</em>' containment reference.
+	 * @see #setEmbededFiles(EmbededFilesType)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIPrimitiveOperation_EmbededFiles()
+	 * @model containment="true" resolveProxies="true"
+	 * @generated
+	 */
+	EmbededFilesType getEmbededFiles();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IPrimitiveOperation#getEmbededFiles <em>Embeded Files</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Embeded Files</em>' containment reference.
+	 * @see #getEmbededFiles()
+	 * @generated
+	 */
+	void setEmbededFiles(EmbededFilesType value);
+
+	/**
+	 * Returns the value of the '<em><b>Code Update CG Time</b></em>' attribute list.
+	 * The list contents are of type {@link java.lang.String}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Code Update CG Time</em>' attribute list isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Code Update CG Time</em>' attribute list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIPrimitiveOperation_CodeUpdateCGTime()
+	 * @model unique="false"
+	 * @generated
+	 */
+	EList<String> getCodeUpdateCGTime();
+
+	/**
+	 * Returns the value of the '<em><b>Template Parameters</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Template Parameters</em>' containment reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Template Parameters</em>' containment reference.
+	 * @see #setTemplateParameters(ITemplateParameter)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIPrimitiveOperation_TemplateParameters()
+	 * @model containment="true" resolveProxies="true"
+	 * @generated
+	 */
+	ITemplateParameter getTemplateParameters();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IPrimitiveOperation#getTemplateParameters <em>Template Parameters</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Template Parameters</em>' containment reference.
+	 * @see #getTemplateParameters()
+	 * @generated
+	 */
+	void setTemplateParameters(ITemplateParameter value);
+
+} // IPrimitiveOperation
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/IProfile.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/IProfile.java
new file mode 100755
index 0000000..c7b3ec5
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/IProfile.java
@@ -0,0 +1,226 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel;
+
+import org.eclipse.emf.common.util.EList;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>IProfile</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * </p>
+ * <ul>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IProfile#getDeclaratives <em>Declaratives</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IProfile#getDefaultComposite <em>Default Composite</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IProfile#getEventsBaseID <em>Events Base ID</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IProfile#getClasses <em>Classes</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IProfile#getConfigurationRelatedTime <em>Configuration Related Time</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IProfile#getTags <em>Tags</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IProfile#getTypes <em>Types</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IProfile#getMatrixLayouts <em>Matrix Layouts</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IProfile#getLicense <em>License</em>}</li>
+ * </ul>
+ *
+ * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIProfile()
+ * @model
+ * @generated
+ */
+public interface IProfile extends IPackage, OwnerHandleType, DependsOnType, DefaultSubsystemType {
+	/**
+	 * Returns the value of the '<em><b>Declaratives</b></em>' containment reference list.
+	 * The list contents are of type {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.DeclarativesType}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Declaratives</em>' containment reference list isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Declaratives</em>' containment reference list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIProfile_Declaratives()
+	 * @model containment="true" resolveProxies="true"
+	 * @generated
+	 */
+	EList<DeclarativesType> getDeclaratives();
+
+	/**
+	 * Returns the value of the '<em><b>Default Composite</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Default Composite</em>' reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Default Composite</em>' reference.
+	 * @see #setDefaultComposite(IClass)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIProfile_DefaultComposite()
+	 * @model
+	 * @generated
+	 */
+	IClass getDefaultComposite();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IProfile#getDefaultComposite <em>Default Composite</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Default Composite</em>' reference.
+	 * @see #getDefaultComposite()
+	 * @generated
+	 */
+	void setDefaultComposite(IClass value);
+
+	/**
+	 * Returns the value of the '<em><b>Events Base ID</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Events Base ID</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Events Base ID</em>' attribute.
+	 * @see #setEventsBaseID(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIProfile_EventsBaseID()
+	 * @model
+	 * @generated
+	 */
+	String getEventsBaseID();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IProfile#getEventsBaseID <em>Events Base ID</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Events Base ID</em>' attribute.
+	 * @see #getEventsBaseID()
+	 * @generated
+	 */
+	void setEventsBaseID(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Classes</b></em>' containment reference list.
+	 * The list contents are of type {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IClass}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Classes</em>' containment reference list isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Classes</em>' containment reference list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIProfile_Classes()
+	 * @model containment="true" resolveProxies="true"
+	 * @generated
+	 */
+	EList<IClass> getClasses();
+
+	/**
+	 * Returns the value of the '<em><b>Configuration Related Time</b></em>' attribute list.
+	 * The list contents are of type {@link java.lang.String}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Configuration Related Time</em>' attribute list isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Configuration Related Time</em>' attribute list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIProfile_ConfigurationRelatedTime()
+	 * @model unique="false"
+	 * @generated
+	 */
+	EList<String> getConfigurationRelatedTime();
+
+	/**
+	 * Returns the value of the '<em><b>Tags</b></em>' containment reference list.
+	 * The list contents are of type {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITag}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Tags</em>' containment reference list isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Tags</em>' containment reference list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIProfile_Tags()
+	 * @model containment="true" resolveProxies="true"
+	 * @generated
+	 */
+	EList<ITag> getTags();
+
+	/**
+	 * Returns the value of the '<em><b>Types</b></em>' containment reference list.
+	 * The list contents are of type {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IType}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Types</em>' containment reference list isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Types</em>' containment reference list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIProfile_Types()
+	 * @model containment="true" resolveProxies="true"
+	 * @generated
+	 */
+	EList<IType> getTypes();
+
+	/**
+	 * Returns the value of the '<em><b>Matrix Layouts</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Matrix Layouts</em>' containment reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Matrix Layouts</em>' containment reference.
+	 * @see #setMatrixLayouts(IMatrixLayout)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIProfile_MatrixLayouts()
+	 * @model containment="true" resolveProxies="true"
+	 * @generated
+	 */
+	IMatrixLayout getMatrixLayouts();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IProfile#getMatrixLayouts <em>Matrix Layouts</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Matrix Layouts</em>' containment reference.
+	 * @see #getMatrixLayouts()
+	 * @generated
+	 */
+	void setMatrixLayouts(IMatrixLayout value);
+
+	/**
+	 * Returns the value of the '<em><b>License</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>License</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>License</em>' attribute.
+	 * @see #setLicense(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIProfile_License()
+	 * @model
+	 * @generated
+	 */
+	String getLicense();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IProfile#getLicense <em>License</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>License</em>' attribute.
+	 * @see #getLicense()
+	 * @generated
+	 */
+	void setLicense(String value);
+
+} // IProfile
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/IProject.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/IProject.java
new file mode 100755
index 0000000..5688432
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/IProject.java
@@ -0,0 +1,446 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel;
+
+import org.eclipse.emf.common.util.EList;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>IProject</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * </p>
+ * <ul>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IProject#getUserColors <em>User Colors</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IProject#getDefaultSubsystem <em>Default Subsystem</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IProject#getComponent <em>Component</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IProject#getMultiplicities <em>Multiplicities</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IProject#getSubsystems <em>Subsystems</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IProject#getDiagrams <em>Diagrams</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IProject#getComponents <em>Components</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IProject#getPanelDiagrams <em>Panel Diagrams</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IProject#getHyperLinks <em>Hyper Links</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IProject#getMSCS <em>MSCS</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IProject#getUCDiagrams <em>UC Diagrams</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IProject#getCollaborationDiagrams <em>Collaboration Diagrams</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IProject#getDeclaratives <em>Declaratives</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IProject#getComponentDiagrams <em>Component Diagrams</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IProject#getUnitSccProjName <em>Unit Scc Proj Name</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IProject#getUnitSccProjPath <em>Unit Scc Proj Path</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IProject#getDependencies <em>Dependencies</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IProject#getCodeUpdateCGTime <em>Code Update CG Time</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IProject#getVersion <em>Version</em>}</li>
+ * </ul>
+ *
+ * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIProject()
+ * @model
+ * @generated
+ */
+public interface IProject extends IPackage, M_pModelObjectType {
+	/**
+	 * Returns the value of the '<em><b>User Colors</b></em>' attribute list.
+	 * The list contents are of type {@link java.lang.String}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>User Colors</em>' attribute list isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>User Colors</em>' attribute list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIProject_UserColors()
+	 * @model unique="false"
+	 * @generated
+	 */
+	EList<String> getUserColors();
+
+	/**
+	 * Returns the value of the '<em><b>Default Subsystem</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Default Subsystem</em>' reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Default Subsystem</em>' reference.
+	 * @see #setDefaultSubsystem(DefaultSubsystemType)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIProject_DefaultSubsystem()
+	 * @model
+	 * @generated
+	 */
+	DefaultSubsystemType getDefaultSubsystem();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IProject#getDefaultSubsystem <em>Default Subsystem</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Default Subsystem</em>' reference.
+	 * @see #getDefaultSubsystem()
+	 * @generated
+	 */
+	void setDefaultSubsystem(DefaultSubsystemType value);
+
+	/**
+	 * Returns the value of the '<em><b>Component</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Component</em>' reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Component</em>' reference.
+	 * @see #setComponent(IComponent)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIProject_Component()
+	 * @model
+	 * @generated
+	 */
+	IComponent getComponent();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IProject#getComponent <em>Component</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Component</em>' reference.
+	 * @see #getComponent()
+	 * @generated
+	 */
+	void setComponent(IComponent value);
+
+	/**
+	 * Returns the value of the '<em><b>Multiplicities</b></em>' containment reference list.
+	 * The list contents are of type {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMultiplicityItem}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Multiplicities</em>' containment reference list isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Multiplicities</em>' containment reference list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIProject_Multiplicities()
+	 * @model containment="true" resolveProxies="true"
+	 * @generated
+	 */
+	EList<IMultiplicityItem> getMultiplicities();
+
+	/**
+	 * Returns the value of the '<em><b>Subsystems</b></em>' containment reference list.
+	 * The list contents are of type {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.DefaultSubsystemType}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Subsystems</em>' containment reference list isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Subsystems</em>' containment reference list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIProject_Subsystems()
+	 * @model containment="true" resolveProxies="true"
+	 * @generated
+	 */
+	EList<DefaultSubsystemType> getSubsystems();
+
+	/**
+	 * Returns the value of the '<em><b>Diagrams</b></em>' containment reference list.
+	 * The list contents are of type {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IModelElement}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Diagrams</em>' containment reference list isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Diagrams</em>' containment reference list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIProject_Diagrams()
+	 * @model containment="true" resolveProxies="true"
+	 * @generated
+	 */
+	EList<IModelElement> getDiagrams();
+
+	/**
+	 * Returns the value of the '<em><b>Components</b></em>' containment reference list.
+	 * The list contents are of type {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IModelElement}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Components</em>' containment reference list isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Components</em>' containment reference list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIProject_Components()
+	 * @model containment="true" resolveProxies="true"
+	 * @generated
+	 */
+	EList<IModelElement> getComponents();
+
+	/**
+	 * Returns the value of the '<em><b>Panel Diagrams</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Panel Diagrams</em>' containment reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Panel Diagrams</em>' containment reference.
+	 * @see #setPanelDiagrams(IPanelDiagram)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIProject_PanelDiagrams()
+	 * @model containment="true" resolveProxies="true"
+	 * @generated
+	 */
+	IPanelDiagram getPanelDiagrams();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IProject#getPanelDiagrams <em>Panel Diagrams</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Panel Diagrams</em>' containment reference.
+	 * @see #getPanelDiagrams()
+	 * @generated
+	 */
+	void setPanelDiagrams(IPanelDiagram value);
+
+	/**
+	 * Returns the value of the '<em><b>Hyper Links</b></em>' containment reference list.
+	 * The list contents are of type {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMHyperLink}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Hyper Links</em>' containment reference list isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Hyper Links</em>' containment reference list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIProject_HyperLinks()
+	 * @model containment="true" resolveProxies="true"
+	 * @generated
+	 */
+	EList<IMHyperLink> getHyperLinks();
+
+	/**
+	 * Returns the value of the '<em><b>MSCS</b></em>' containment reference list.
+	 * The list contents are of type {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.DeclarativesType}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>MSCS</em>' containment reference list isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>MSCS</em>' containment reference list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIProject_MSCS()
+	 * @model containment="true" resolveProxies="true"
+	 * @generated
+	 */
+	EList<DeclarativesType> getMSCS();
+
+	/**
+	 * Returns the value of the '<em><b>UC Diagrams</b></em>' containment reference list.
+	 * The list contents are of type {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IUCDiagram}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>UC Diagrams</em>' containment reference list isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>UC Diagrams</em>' containment reference list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIProject_UCDiagrams()
+	 * @model containment="true" resolveProxies="true"
+	 * @generated
+	 */
+	EList<IUCDiagram> getUCDiagrams();
+
+	/**
+	 * Returns the value of the '<em><b>Collaboration Diagrams</b></em>' containment reference list.
+	 * The list contents are of type {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ICollaborationDiagram}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Collaboration Diagrams</em>' containment reference list isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Collaboration Diagrams</em>' containment reference list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIProject_CollaborationDiagrams()
+	 * @model containment="true" resolveProxies="true"
+	 * @generated
+	 */
+	EList<ICollaborationDiagram> getCollaborationDiagrams();
+
+	/**
+	 * Returns the value of the '<em><b>Declaratives</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Declaratives</em>' containment reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Declaratives</em>' containment reference.
+	 * @see #setDeclaratives(IStereotype)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIProject_Declaratives()
+	 * @model containment="true" resolveProxies="true"
+	 * @generated
+	 */
+	IStereotype getDeclaratives();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IProject#getDeclaratives <em>Declaratives</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Declaratives</em>' containment reference.
+	 * @see #getDeclaratives()
+	 * @generated
+	 */
+	void setDeclaratives(IStereotype value);
+
+	/**
+	 * Returns the value of the '<em><b>Component Diagrams</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Component Diagrams</em>' containment reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Component Diagrams</em>' containment reference.
+	 * @see #setComponentDiagrams(IComponentDiagram)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIProject_ComponentDiagrams()
+	 * @model containment="true" resolveProxies="true"
+	 * @generated
+	 */
+	IComponentDiagram getComponentDiagrams();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IProject#getComponentDiagrams <em>Component Diagrams</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Component Diagrams</em>' containment reference.
+	 * @see #getComponentDiagrams()
+	 * @generated
+	 */
+	void setComponentDiagrams(IComponentDiagram value);
+
+	/**
+	 * Returns the value of the '<em><b>Unit Scc Proj Name</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Unit Scc Proj Name</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Unit Scc Proj Name</em>' attribute.
+	 * @see #setUnitSccProjName(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIProject_UnitSccProjName()
+	 * @model
+	 * @generated
+	 */
+	String getUnitSccProjName();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IProject#getUnitSccProjName <em>Unit Scc Proj Name</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Unit Scc Proj Name</em>' attribute.
+	 * @see #getUnitSccProjName()
+	 * @generated
+	 */
+	void setUnitSccProjName(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Unit Scc Proj Path</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Unit Scc Proj Path</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Unit Scc Proj Path</em>' attribute.
+	 * @see #setUnitSccProjPath(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIProject_UnitSccProjPath()
+	 * @model
+	 * @generated
+	 */
+	String getUnitSccProjPath();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IProject#getUnitSccProjPath <em>Unit Scc Proj Path</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Unit Scc Proj Path</em>' attribute.
+	 * @see #getUnitSccProjPath()
+	 * @generated
+	 */
+	void setUnitSccProjPath(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Dependencies</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Dependencies</em>' containment reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Dependencies</em>' containment reference.
+	 * @see #setDependencies(IDependency)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIProject_Dependencies()
+	 * @model containment="true" resolveProxies="true"
+	 * @generated
+	 */
+	IDependency getDependencies();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IProject#getDependencies <em>Dependencies</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Dependencies</em>' containment reference.
+	 * @see #getDependencies()
+	 * @generated
+	 */
+	void setDependencies(IDependency value);
+
+	/**
+	 * Returns the value of the '<em><b>Code Update CG Time</b></em>' attribute list.
+	 * The list contents are of type {@link java.lang.String}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Code Update CG Time</em>' attribute list isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Code Update CG Time</em>' attribute list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIProject_CodeUpdateCGTime()
+	 * @model unique="false"
+	 * @generated
+	 */
+	EList<String> getCodeUpdateCGTime();
+
+	/**
+	 * Returns the value of the '<em><b>Version</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Version</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Version</em>' attribute.
+	 * @see #setVersion(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIProject_Version()
+	 * @model
+	 * @generated
+	 */
+	String getVersion();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IProject#getVersion <em>Version</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Version</em>' attribute.
+	 * @see #getVersion()
+	 * @generated
+	 */
+	void setVersion(String value);
+
+} // IProject
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/IProperty.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/IProperty.java
new file mode 100755
index 0000000..a160d38
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/IProperty.java
@@ -0,0 +1,141 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel;
+
+import org.eclipse.emf.ecore.EObject;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>IProperty</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * </p>
+ * <ul>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IProperty#getName <em>Name</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IProperty#getValue <em>Value</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IProperty#getType <em>Type</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IProperty#getExtraTypeInfo <em>Extra Type Info</em>}</li>
+ * </ul>
+ *
+ * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIProperty()
+ * @model
+ * @generated
+ */
+public interface IProperty extends EObject {
+	/**
+	 * Returns the value of the '<em><b>Name</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Name</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Name</em>' attribute.
+	 * @see #setName(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIProperty_Name()
+	 * @model
+	 * @generated
+	 */
+	String getName();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IProperty#getName <em>Name</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Name</em>' attribute.
+	 * @see #getName()
+	 * @generated
+	 */
+	void setName(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Value</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Value</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Value</em>' attribute.
+	 * @see #setValue(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIProperty_Value()
+	 * @model
+	 * @generated
+	 */
+	String getValue();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IProperty#getValue <em>Value</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Value</em>' attribute.
+	 * @see #getValue()
+	 * @generated
+	 */
+	void setValue(String value);
+
+	/**
+	 * 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.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIProperty_Type()
+	 * @model
+	 * @generated
+	 */
+	String getType();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IProperty#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>Extra Type Info</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Extra Type Info</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Extra Type Info</em>' attribute.
+	 * @see #setExtraTypeInfo(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIProperty_ExtraTypeInfo()
+	 * @model
+	 * @generated
+	 */
+	String getExtraTypeInfo();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IProperty#getExtraTypeInfo <em>Extra Type Info</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Extra Type Info</em>' attribute.
+	 * @see #getExtraTypeInfo()
+	 * @generated
+	 */
+	void setExtraTypeInfo(String value);
+
+} // IProperty
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/IPropertyContainer.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/IPropertyContainer.java
new file mode 100755
index 0000000..a99e0de
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/IPropertyContainer.java
@@ -0,0 +1,50 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel;
+
+import org.eclipse.emf.common.util.EList;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>IProperty Container</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * </p>
+ * <ul>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IPropertyContainer#getSubjects <em>Subjects</em>}</li>
+ * </ul>
+ *
+ * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIPropertyContainer()
+ * @model
+ * @generated
+ */
+public interface IPropertyContainer extends PropertiesType {
+	/**
+	 * Returns the value of the '<em><b>Subjects</b></em>' containment reference list.
+	 * The list contents are of type {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IPropertySubject}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Subjects</em>' containment reference list isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Subjects</em>' containment reference list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIPropertyContainer_Subjects()
+	 * @model containment="true" resolveProxies="true"
+	 * @generated
+	 */
+	EList<IPropertySubject> getSubjects();
+
+} // IPropertyContainer
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/IPropertyMetaclass.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/IPropertyMetaclass.java
new file mode 100755
index 0000000..cd35215
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/IPropertyMetaclass.java
@@ -0,0 +1,79 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel;
+
+import org.eclipse.emf.common.util.EList;
+
+import org.eclipse.emf.ecore.EObject;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>IProperty Metaclass</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * </p>
+ * <ul>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IPropertyMetaclass#getName <em>Name</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IPropertyMetaclass#getProperties <em>Properties</em>}</li>
+ * </ul>
+ *
+ * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIPropertyMetaclass()
+ * @model
+ * @generated
+ */
+public interface IPropertyMetaclass extends EObject {
+	/**
+	 * Returns the value of the '<em><b>Name</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Name</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Name</em>' attribute.
+	 * @see #setName(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIPropertyMetaclass_Name()
+	 * @model
+	 * @generated
+	 */
+	String getName();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IPropertyMetaclass#getName <em>Name</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Name</em>' attribute.
+	 * @see #getName()
+	 * @generated
+	 */
+	void setName(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Properties</b></em>' containment reference list.
+	 * The list contents are of type {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IProperty}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Properties</em>' containment reference list isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Properties</em>' containment reference list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIPropertyMetaclass_Properties()
+	 * @model containment="true" resolveProxies="true"
+	 * @generated
+	 */
+	EList<IProperty> getProperties();
+
+} // IPropertyMetaclass
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/IPropertySubject.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/IPropertySubject.java
new file mode 100755
index 0000000..d093988
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/IPropertySubject.java
@@ -0,0 +1,79 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel;
+
+import org.eclipse.emf.common.util.EList;
+
+import org.eclipse.emf.ecore.EObject;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>IProperty Subject</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * </p>
+ * <ul>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IPropertySubject#getName <em>Name</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IPropertySubject#getMetaclasses <em>Metaclasses</em>}</li>
+ * </ul>
+ *
+ * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIPropertySubject()
+ * @model
+ * @generated
+ */
+public interface IPropertySubject extends EObject {
+	/**
+	 * Returns the value of the '<em><b>Name</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Name</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Name</em>' attribute.
+	 * @see #setName(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIPropertySubject_Name()
+	 * @model
+	 * @generated
+	 */
+	String getName();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IPropertySubject#getName <em>Name</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Name</em>' attribute.
+	 * @see #getName()
+	 * @generated
+	 */
+	void setName(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Metaclasses</b></em>' containment reference list.
+	 * The list contents are of type {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IPropertyMetaclass}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Metaclasses</em>' containment reference list isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Metaclasses</em>' containment reference list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIPropertySubject_Metaclasses()
+	 * @model containment="true" resolveProxies="true"
+	 * @generated
+	 */
+	EList<IPropertyMetaclass> getMetaclasses();
+
+} // IPropertySubject
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/IReception.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/IReception.java
new file mode 100755
index 0000000..31160d2
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/IReception.java
@@ -0,0 +1,300 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel;
+
+import org.eclipse.emf.common.util.EList;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>IReception</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * </p>
+ * <ul>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IReception#getId <em>Id</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IReception#getMyState <em>My State</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IReception#getArgs <em>Args</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IReception#getEvent <em>Event</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IReception#getModifiedTimeWeak <em>Modified Time Weak</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IReception#getDependencies <em>Dependencies</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IReception#getLastID <em>Last ID</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IReception#getRequiremenTracabilityHandle <em>Requiremen Tracability Handle</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IReception#getDescription <em>Description</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IReception#getObjectCreation <em>Object Creation</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IReception#getUmlDependencyID <em>Uml Dependency ID</em>}</li>
+ * </ul>
+ *
+ * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIReception()
+ * @model
+ * @generated
+ */
+public interface IReception extends OperationsType, ItemsType, DependsOnType {
+	/**
+	 * Returns the value of the '<em><b>Id</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Id</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Id</em>' attribute.
+	 * @see #setId(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIReception_Id()
+	 * @model
+	 * @generated
+	 */
+	String getId();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IReception#getId <em>Id</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Id</em>' attribute.
+	 * @see #getId()
+	 * @generated
+	 */
+	void setId(String value);
+
+	/**
+	 * Returns the value of the '<em><b>My State</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>My State</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>My State</em>' attribute.
+	 * @see #setMyState(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIReception_MyState()
+	 * @model
+	 * @generated
+	 */
+	String getMyState();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IReception#getMyState <em>My State</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>My State</em>' attribute.
+	 * @see #getMyState()
+	 * @generated
+	 */
+	void setMyState(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Args</b></em>' reference list.
+	 * The list contents are of type {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UnknownType}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Args</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>Args</em>' reference list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIReception_Args()
+	 * @model
+	 * @generated
+	 */
+	EList<UnknownType> getArgs();
+
+	/**
+	 * Returns the value of the '<em><b>Event</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Event</em>' reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Event</em>' reference.
+	 * @see #setEvent(IEvent)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIReception_Event()
+	 * @model
+	 * @generated
+	 */
+	IEvent getEvent();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IReception#getEvent <em>Event</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Event</em>' reference.
+	 * @see #getEvent()
+	 * @generated
+	 */
+	void setEvent(IEvent value);
+
+	/**
+	 * Returns the value of the '<em><b>Modified Time Weak</b></em>' attribute list.
+	 * The list contents are of type {@link java.lang.String}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Modified Time Weak</em>' attribute list isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Modified Time Weak</em>' attribute list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIReception_ModifiedTimeWeak()
+	 * @model unique="false"
+	 * @generated
+	 */
+	EList<String> getModifiedTimeWeak();
+
+	/**
+	 * Returns the value of the '<em><b>Dependencies</b></em>' containment reference list.
+	 * The list contents are of type {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IDependency}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Dependencies</em>' containment reference list isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Dependencies</em>' containment reference list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIReception_Dependencies()
+	 * @model containment="true" resolveProxies="true"
+	 * @generated
+	 */
+	EList<IDependency> getDependencies();
+
+	/**
+	 * Returns the value of the '<em><b>Last ID</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Last ID</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Last ID</em>' attribute.
+	 * @see #setLastID(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIReception_LastID()
+	 * @model
+	 * @generated
+	 */
+	String getLastID();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IReception#getLastID <em>Last ID</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Last ID</em>' attribute.
+	 * @see #getLastID()
+	 * @generated
+	 */
+	void setLastID(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Requiremen Tracability Handle</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Requiremen Tracability Handle</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Requiremen Tracability Handle</em>' attribute.
+	 * @see #setRequiremenTracabilityHandle(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIReception_RequiremenTracabilityHandle()
+	 * @model
+	 * @generated
+	 */
+	String getRequiremenTracabilityHandle();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IReception#getRequiremenTracabilityHandle <em>Requiremen Tracability Handle</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Requiremen Tracability Handle</em>' attribute.
+	 * @see #getRequiremenTracabilityHandle()
+	 * @generated
+	 */
+	void setRequiremenTracabilityHandle(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Description</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Description</em>' containment reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Description</em>' containment reference.
+	 * @see #setDescription(IDescription)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIReception_Description()
+	 * @model containment="true" resolveProxies="true"
+	 * @generated
+	 */
+	IDescription getDescription();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IReception#getDescription <em>Description</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Description</em>' containment reference.
+	 * @see #getDescription()
+	 * @generated
+	 */
+	void setDescription(IDescription value);
+
+	/**
+	 * Returns the value of the '<em><b>Object Creation</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Object Creation</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Object Creation</em>' attribute.
+	 * @see #setObjectCreation(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIReception_ObjectCreation()
+	 * @model
+	 * @generated
+	 */
+	String getObjectCreation();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IReception#getObjectCreation <em>Object Creation</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Object Creation</em>' attribute.
+	 * @see #getObjectCreation()
+	 * @generated
+	 */
+	void setObjectCreation(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Uml Dependency ID</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Uml Dependency ID</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Uml Dependency ID</em>' attribute.
+	 * @see #setUmlDependencyID(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIReception_UmlDependencyID()
+	 * @model
+	 * @generated
+	 */
+	String getUmlDependencyID();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IReception#getUmlDependencyID <em>Uml Dependency ID</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Uml Dependency ID</em>' attribute.
+	 * @see #getUmlDependencyID()
+	 * @generated
+	 */
+	void setUmlDependencyID(String value);
+
+} // IReception
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/IReferenceActivity.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/IReferenceActivity.java
new file mode 100755
index 0000000..856786e
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/IReferenceActivity.java
@@ -0,0 +1,302 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel;
+
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>IReference Activity</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * </p>
+ * <ul>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IReferenceActivity#getId <em>Id</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IReferenceActivity#getName <em>Name</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IReferenceActivity#getStereotypes <em>Stereotypes</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IReferenceActivity#getModifiedTimeWeak <em>Modified Time Weak</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IReferenceActivity#getParent <em>Parent</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IReferenceActivity#getStateType <em>State Type</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IReferenceActivity#getDefaultTrans <em>Default Trans</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IReferenceActivity#getSwimlane <em>Swimlane</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IReferenceActivity#getReferencedActivity <em>Referenced Activity</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IReferenceActivity#getMyState <em>My State</em>}</li>
+ * </ul>
+ *
+ * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIReferenceActivity()
+ * @model
+ * @generated
+ */
+public interface IReferenceActivity extends DependsOnType, ParentType, ItsTargetType {
+	/**
+	 * Returns the value of the '<em><b>Id</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Id</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Id</em>' attribute.
+	 * @see #setId(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIReferenceActivity_Id()
+	 * @model
+	 * @generated
+	 */
+	String getId();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IReferenceActivity#getId <em>Id</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Id</em>' attribute.
+	 * @see #getId()
+	 * @generated
+	 */
+	void setId(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Name</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Name</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Name</em>' attribute.
+	 * @see #setName(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIReferenceActivity_Name()
+	 * @model
+	 * @generated
+	 */
+	String getName();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IReferenceActivity#getName <em>Name</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Name</em>' attribute.
+	 * @see #getName()
+	 * @generated
+	 */
+	void setName(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Stereotypes</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Stereotypes</em>' reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Stereotypes</em>' reference.
+	 * @see #setStereotypes(IClassifier)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIReferenceActivity_Stereotypes()
+	 * @model
+	 * @generated
+	 */
+	IClassifier getStereotypes();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IReferenceActivity#getStereotypes <em>Stereotypes</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Stereotypes</em>' reference.
+	 * @see #getStereotypes()
+	 * @generated
+	 */
+	void setStereotypes(IClassifier value);
+
+	/**
+	 * Returns the value of the '<em><b>Modified Time Weak</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Modified Time Weak</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Modified Time Weak</em>' attribute.
+	 * @see #setModifiedTimeWeak(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIReferenceActivity_ModifiedTimeWeak()
+	 * @model
+	 * @generated
+	 */
+	String getModifiedTimeWeak();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IReferenceActivity#getModifiedTimeWeak <em>Modified Time Weak</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Modified Time Weak</em>' attribute.
+	 * @see #getModifiedTimeWeak()
+	 * @generated
+	 */
+	void setModifiedTimeWeak(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Parent</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Parent</em>' reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Parent</em>' reference.
+	 * @see #setParent(IState)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIReferenceActivity_Parent()
+	 * @model
+	 * @generated
+	 */
+	IState getParent();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IReferenceActivity#getParent <em>Parent</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Parent</em>' reference.
+	 * @see #getParent()
+	 * @generated
+	 */
+	void setParent(IState value);
+
+	/**
+	 * Returns the value of the '<em><b>State Type</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>State 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>State Type</em>' attribute.
+	 * @see #setStateType(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIReferenceActivity_StateType()
+	 * @model
+	 * @generated
+	 */
+	String getStateType();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IReferenceActivity#getStateType <em>State Type</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>State Type</em>' attribute.
+	 * @see #getStateType()
+	 * @generated
+	 */
+	void setStateType(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Default Trans</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Default Trans</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Default Trans</em>' attribute.
+	 * @see #setDefaultTrans(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIReferenceActivity_DefaultTrans()
+	 * @model
+	 * @generated
+	 */
+	String getDefaultTrans();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IReferenceActivity#getDefaultTrans <em>Default Trans</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Default Trans</em>' attribute.
+	 * @see #getDefaultTrans()
+	 * @generated
+	 */
+	void setDefaultTrans(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Swimlane</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Swimlane</em>' reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Swimlane</em>' reference.
+	 * @see #setSwimlane(ISwimlane)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIReferenceActivity_Swimlane()
+	 * @model
+	 * @generated
+	 */
+	ISwimlane getSwimlane();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IReferenceActivity#getSwimlane <em>Swimlane</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Swimlane</em>' reference.
+	 * @see #getSwimlane()
+	 * @generated
+	 */
+	void setSwimlane(ISwimlane value);
+
+	/**
+	 * Returns the value of the '<em><b>Referenced Activity</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Referenced Activity</em>' reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Referenced Activity</em>' reference.
+	 * @see #setReferencedActivity(IActivityGraph)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIReferenceActivity_ReferencedActivity()
+	 * @model
+	 * @generated
+	 */
+	IActivityGraph getReferencedActivity();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IReferenceActivity#getReferencedActivity <em>Referenced Activity</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Referenced Activity</em>' reference.
+	 * @see #getReferencedActivity()
+	 * @generated
+	 */
+	void setReferencedActivity(IActivityGraph value);
+
+	/**
+	 * Returns the value of the '<em><b>My State</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>My State</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>My State</em>' attribute.
+	 * @see #setMyState(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIReferenceActivity_MyState()
+	 * @model
+	 * @generated
+	 */
+	String getMyState();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IReferenceActivity#getMyState <em>My State</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>My State</em>' attribute.
+	 * @see #getMyState()
+	 * @generated
+	 */
+	void setMyState(String value);
+
+} // IReferenceActivity
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/IRelation.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/IRelation.java
new file mode 100755
index 0000000..5e845a3
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/IRelation.java
@@ -0,0 +1,27 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel;
+
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>IRelation</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ *
+ * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIRelation()
+ * @model
+ * @generated
+ */
+public interface IRelation extends IUnit {
+} // IRelation
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/IRequirement.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/IRequirement.java
new file mode 100755
index 0000000..db42058
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/IRequirement.java
@@ -0,0 +1,307 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel;
+
+import org.eclipse.emf.common.util.EList;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>IRequirement</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * </p>
+ * <ul>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IRequirement#getId <em>Id</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IRequirement#getName <em>Name</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IRequirement#getAnnotations <em>Annotations</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IRequirement#getMyState <em>My State</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IRequirement#getLastID <em>Last ID</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IRequirement#getStereotypes <em>Stereotypes</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IRequirement#getModifiedTimeWeak <em>Modified Time Weak</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IRequirement#getReqID <em>Req ID</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IRequirement#getDependencies <em>Dependencies</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IRequirement#getAnchors <em>Anchors</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IRequirement#getHyperLinks <em>Hyper Links</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IRequirement#getTheMainDiagram <em>The Main Diagram</em>}</li>
+ * </ul>
+ *
+ * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIRequirement()
+ * @model
+ * @generated
+ */
+public interface IRequirement extends IAnnotation, DependsOnType {
+	/**
+	 * Returns the value of the '<em><b>Id</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Id</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Id</em>' attribute.
+	 * @see #setId(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIRequirement_Id()
+	 * @model
+	 * @generated
+	 */
+	String getId();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IRequirement#getId <em>Id</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Id</em>' attribute.
+	 * @see #getId()
+	 * @generated
+	 */
+	void setId(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Name</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Name</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Name</em>' attribute.
+	 * @see #setName(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIRequirement_Name()
+	 * @model
+	 * @generated
+	 */
+	String getName();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IRequirement#getName <em>Name</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Name</em>' attribute.
+	 * @see #getName()
+	 * @generated
+	 */
+	void setName(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Annotations</b></em>' containment reference list.
+	 * The list contents are of type {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IRequirement}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Annotations</em>' containment reference list isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Annotations</em>' containment reference list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIRequirement_Annotations()
+	 * @model containment="true" resolveProxies="true"
+	 * @generated
+	 */
+	EList<IRequirement> getAnnotations();
+
+	/**
+	 * Returns the value of the '<em><b>My State</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>My State</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>My State</em>' attribute.
+	 * @see #setMyState(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIRequirement_MyState()
+	 * @model
+	 * @generated
+	 */
+	String getMyState();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IRequirement#getMyState <em>My State</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>My State</em>' attribute.
+	 * @see #getMyState()
+	 * @generated
+	 */
+	void setMyState(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Last ID</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Last ID</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Last ID</em>' attribute.
+	 * @see #setLastID(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIRequirement_LastID()
+	 * @model
+	 * @generated
+	 */
+	String getLastID();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IRequirement#getLastID <em>Last ID</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Last ID</em>' attribute.
+	 * @see #getLastID()
+	 * @generated
+	 */
+	void setLastID(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Stereotypes</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Stereotypes</em>' reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Stereotypes</em>' reference.
+	 * @see #setStereotypes(IStereotype)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIRequirement_Stereotypes()
+	 * @model
+	 * @generated
+	 */
+	IStereotype getStereotypes();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IRequirement#getStereotypes <em>Stereotypes</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Stereotypes</em>' reference.
+	 * @see #getStereotypes()
+	 * @generated
+	 */
+	void setStereotypes(IStereotype value);
+
+	/**
+	 * Returns the value of the '<em><b>Modified Time Weak</b></em>' attribute list.
+	 * The list contents are of type {@link java.lang.String}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Modified Time Weak</em>' attribute list isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Modified Time Weak</em>' attribute list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIRequirement_ModifiedTimeWeak()
+	 * @model unique="false"
+	 * @generated
+	 */
+	EList<String> getModifiedTimeWeak();
+
+	/**
+	 * Returns the value of the '<em><b>Req ID</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Req ID</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Req ID</em>' attribute.
+	 * @see #setReqID(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIRequirement_ReqID()
+	 * @model
+	 * @generated
+	 */
+	String getReqID();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IRequirement#getReqID <em>Req ID</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Req ID</em>' attribute.
+	 * @see #getReqID()
+	 * @generated
+	 */
+	void setReqID(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Dependencies</b></em>' containment reference list.
+	 * The list contents are of type {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IDependency}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Dependencies</em>' containment reference list isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Dependencies</em>' containment reference list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIRequirement_Dependencies()
+	 * @model containment="true" resolveProxies="true"
+	 * @generated
+	 */
+	EList<IDependency> getDependencies();
+
+	/**
+	 * Returns the value of the '<em><b>Anchors</b></em>' containment reference list.
+	 * The list contents are of type {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IAnchor}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Anchors</em>' containment reference list isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Anchors</em>' containment reference list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIRequirement_Anchors()
+	 * @model containment="true" resolveProxies="true"
+	 * @generated
+	 */
+	EList<IAnchor> getAnchors();
+
+	/**
+	 * Returns the value of the '<em><b>Hyper Links</b></em>' containment reference list.
+	 * The list contents are of type {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMHyperLink}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Hyper Links</em>' containment reference list isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Hyper Links</em>' containment reference list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIRequirement_HyperLinks()
+	 * @model containment="true" resolveProxies="true"
+	 * @generated
+	 */
+	EList<IMHyperLink> getHyperLinks();
+
+	/**
+	 * Returns the value of the '<em><b>The Main Diagram</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>The Main Diagram</em>' reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>The Main Diagram</em>' reference.
+	 * @see #setTheMainDiagram(IDiagram)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIRequirement_TheMainDiagram()
+	 * @model
+	 * @generated
+	 */
+	IDiagram getTheMainDiagram();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IRequirement#getTheMainDiagram <em>The Main Diagram</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>The Main Diagram</em>' reference.
+	 * @see #getTheMainDiagram()
+	 * @generated
+	 */
+	void setTheMainDiagram(IDiagram value);
+
+} // IRequirement
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/ISendAction.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/ISendAction.java
new file mode 100755
index 0000000..76a5696
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/ISendAction.java
@@ -0,0 +1,131 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel;
+
+import org.eclipse.emf.common.util.EList;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>ISend Action</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * </p>
+ * <ul>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ISendAction#getM_hTarget <em>MhTarget</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ISendAction#getM_hEvent <em>MhEvent</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ISendAction#getArgValCount <em>Arg Val Count</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ISendAction#getGraphElements <em>Graph Elements</em>}</li>
+ * </ul>
+ *
+ * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getISendAction()
+ * @model
+ * @generated
+ */
+public interface ISendAction extends IAction {
+	/**
+	 * Returns the value of the '<em><b>MhTarget</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>MhTarget</em>' reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>MhTarget</em>' reference.
+	 * @see #setM_hTarget(M_hTargetType)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getISendAction_M_hTarget()
+	 * @model
+	 * @generated
+	 */
+	M_hTargetType getM_hTarget();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ISendAction#getM_hTarget <em>MhTarget</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>MhTarget</em>' reference.
+	 * @see #getM_hTarget()
+	 * @generated
+	 */
+	void setM_hTarget(M_hTargetType value);
+
+	/**
+	 * Returns the value of the '<em><b>MhEvent</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>MhEvent</em>' containment reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>MhEvent</em>' containment reference.
+	 * @see #setM_hEvent(IEventHandle)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getISendAction_M_hEvent()
+	 * @model containment="true" resolveProxies="true"
+	 * @generated
+	 */
+	IEventHandle getM_hEvent();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ISendAction#getM_hEvent <em>MhEvent</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>MhEvent</em>' containment reference.
+	 * @see #getM_hEvent()
+	 * @generated
+	 */
+	void setM_hEvent(IEventHandle value);
+
+	/**
+	 * Returns the value of the '<em><b>Arg Val Count</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Arg Val Count</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Arg Val Count</em>' attribute.
+	 * @see #setArgValCount(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getISendAction_ArgValCount()
+	 * @model
+	 * @generated
+	 */
+	String getArgValCount();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ISendAction#getArgValCount <em>Arg Val Count</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Arg Val Count</em>' attribute.
+	 * @see #getArgValCount()
+	 * @generated
+	 */
+	void setArgValCount(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Graph Elements</b></em>' containment reference list.
+	 * The list contents are of type {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IHandleWithData}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Graph Elements</em>' containment reference list isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Graph Elements</em>' containment reference list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getISendAction_GraphElements()
+	 * @model containment="true" resolveProxies="true"
+	 * @generated
+	 */
+	EList<IHandleWithData> getGraphElements();
+
+} // ISendAction
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/ISequenceDiagram.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/ISequenceDiagram.java
new file mode 100755
index 0000000..612ae70
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/ISequenceDiagram.java
@@ -0,0 +1,27 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel;
+
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>ISequence Diagram</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ *
+ * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getISequenceDiagram()
+ * @model
+ * @generated
+ */
+public interface ISequenceDiagram extends IDiagram {
+} // ISequenceDiagram
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/ISlot.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/ISlot.java
new file mode 100755
index 0000000..9ef6f99
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/ISlot.java
@@ -0,0 +1,141 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel;
+
+import org.eclipse.emf.ecore.EObject;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>ISlot</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * </p>
+ * <ul>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ISlot#getId <em>Id</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ISlot#getName <em>Name</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ISlot#getValue <em>Value</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ISlot#getDefiningVar <em>Defining Var</em>}</li>
+ * </ul>
+ *
+ * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getISlot()
+ * @model
+ * @generated
+ */
+public interface ISlot extends EObject {
+	/**
+	 * Returns the value of the '<em><b>Id</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Id</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Id</em>' attribute.
+	 * @see #setId(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getISlot_Id()
+	 * @model
+	 * @generated
+	 */
+	String getId();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ISlot#getId <em>Id</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Id</em>' attribute.
+	 * @see #getId()
+	 * @generated
+	 */
+	void setId(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Name</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Name</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Name</em>' attribute.
+	 * @see #setName(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getISlot_Name()
+	 * @model
+	 * @generated
+	 */
+	String getName();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ISlot#getName <em>Name</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Name</em>' attribute.
+	 * @see #getName()
+	 * @generated
+	 */
+	void setName(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Value</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Value</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Value</em>' attribute.
+	 * @see #setValue(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getISlot_Value()
+	 * @model
+	 * @generated
+	 */
+	String getValue();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ISlot#getValue <em>Value</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Value</em>' attribute.
+	 * @see #getValue()
+	 * @generated
+	 */
+	void setValue(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Defining Var</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Defining Var</em>' reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Defining Var</em>' reference.
+	 * @see #setDefiningVar(IAttribute)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getISlot_DefiningVar()
+	 * @model
+	 * @generated
+	 */
+	IAttribute getDefiningVar();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ISlot#getDefiningVar <em>Defining Var</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Defining Var</em>' reference.
+	 * @see #getDefiningVar()
+	 * @generated
+	 */
+	void setDefiningVar(IAttribute value);
+
+} // ISlot
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/IState.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/IState.java
new file mode 100755
index 0000000..a1eac22
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/IState.java
@@ -0,0 +1,364 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel;
+
+import org.eclipse.emf.common.util.EList;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>IState</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * </p>
+ * <ul>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IState#getParent <em>Parent</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IState#getStateType <em>State Type</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IState#getDefaultTrans <em>Default Trans</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IState#getEntryAction <em>Entry Action</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IState#getInheritsFromHandle <em>Inherits From Handle</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IState#getExitAction <em>Exit Action</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IState#getNestedStateChart <em>Nested State Chart</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IState#getRequiremenTracabilityHandle <em>Requiremen Tracability Handle</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IState#getAnnotations <em>Annotations</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IState#getDependencies <em>Dependencies</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IState#getTheMainDiagram <em>The Main Diagram</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IState#getSwimlane <em>Swimlane</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IState#getCodeUpdateCGTime <em>Code Update CG Time</em>}</li>
+ * </ul>
+ *
+ * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIState()
+ * @model
+ * @generated
+ */
+public interface IState extends IStateVertex, ItsTargetType, M_pModelObjectType, DependsOnType, TargetType {
+	/**
+	 * Returns the value of the '<em><b>Parent</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Parent</em>' reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Parent</em>' reference.
+	 * @see #setParent(IStateVertex)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIState_Parent()
+	 * @model
+	 * @generated
+	 */
+	IStateVertex getParent();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IState#getParent <em>Parent</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Parent</em>' reference.
+	 * @see #getParent()
+	 * @generated
+	 */
+	void setParent(IStateVertex value);
+
+	/**
+	 * Returns the value of the '<em><b>State Type</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>State 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>State Type</em>' attribute.
+	 * @see #setStateType(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIState_StateType()
+	 * @model
+	 * @generated
+	 */
+	String getStateType();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IState#getStateType <em>State Type</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>State Type</em>' attribute.
+	 * @see #getStateType()
+	 * @generated
+	 */
+	void setStateType(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Default Trans</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Default Trans</em>' reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Default Trans</em>' reference.
+	 * @see #setDefaultTrans(DefaultTransType)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIState_DefaultTrans()
+	 * @model
+	 * @generated
+	 */
+	DefaultTransType getDefaultTrans();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IState#getDefaultTrans <em>Default Trans</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Default Trans</em>' reference.
+	 * @see #getDefaultTrans()
+	 * @generated
+	 */
+	void setDefaultTrans(DefaultTransType value);
+
+	/**
+	 * Returns the value of the '<em><b>Entry Action</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Entry Action</em>' containment reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Entry Action</em>' containment reference.
+	 * @see #setEntryAction(IModelElement)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIState_EntryAction()
+	 * @model containment="true" resolveProxies="true"
+	 * @generated
+	 */
+	IModelElement getEntryAction();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IState#getEntryAction <em>Entry Action</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Entry Action</em>' containment reference.
+	 * @see #getEntryAction()
+	 * @generated
+	 */
+	void setEntryAction(IModelElement value);
+
+	/**
+	 * Returns the value of the '<em><b>Inherits From Handle</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Inherits From Handle</em>' reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Inherits From Handle</em>' reference.
+	 * @see #setInheritsFromHandle(IState)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIState_InheritsFromHandle()
+	 * @model
+	 * @generated
+	 */
+	IState getInheritsFromHandle();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IState#getInheritsFromHandle <em>Inherits From Handle</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Inherits From Handle</em>' reference.
+	 * @see #getInheritsFromHandle()
+	 * @generated
+	 */
+	void setInheritsFromHandle(IState value);
+
+	/**
+	 * Returns the value of the '<em><b>Exit Action</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Exit Action</em>' containment reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Exit Action</em>' containment reference.
+	 * @see #setExitAction(IAction)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIState_ExitAction()
+	 * @model containment="true" resolveProxies="true"
+	 * @generated
+	 */
+	IAction getExitAction();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IState#getExitAction <em>Exit Action</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Exit Action</em>' containment reference.
+	 * @see #getExitAction()
+	 * @generated
+	 */
+	void setExitAction(IAction value);
+
+	/**
+	 * Returns the value of the '<em><b>Nested State Chart</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Nested State Chart</em>' containment reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Nested State Chart</em>' containment reference.
+	 * @see #setNestedStateChart(NestedStateChartType)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIState_NestedStateChart()
+	 * @model containment="true" resolveProxies="true"
+	 * @generated
+	 */
+	NestedStateChartType getNestedStateChart();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IState#getNestedStateChart <em>Nested State Chart</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Nested State Chart</em>' containment reference.
+	 * @see #getNestedStateChart()
+	 * @generated
+	 */
+	void setNestedStateChart(NestedStateChartType value);
+
+	/**
+	 * Returns the value of the '<em><b>Requiremen Tracability Handle</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Requiremen Tracability Handle</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Requiremen Tracability Handle</em>' attribute.
+	 * @see #setRequiremenTracabilityHandle(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIState_RequiremenTracabilityHandle()
+	 * @model
+	 * @generated
+	 */
+	String getRequiremenTracabilityHandle();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IState#getRequiremenTracabilityHandle <em>Requiremen Tracability Handle</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Requiremen Tracability Handle</em>' attribute.
+	 * @see #getRequiremenTracabilityHandle()
+	 * @generated
+	 */
+	void setRequiremenTracabilityHandle(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Annotations</b></em>' containment reference list.
+	 * The list contents are of type {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IAnnotation}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Annotations</em>' containment reference list isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Annotations</em>' containment reference list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIState_Annotations()
+	 * @model containment="true" resolveProxies="true"
+	 * @generated
+	 */
+	EList<IAnnotation> getAnnotations();
+
+	/**
+	 * Returns the value of the '<em><b>Dependencies</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Dependencies</em>' containment reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Dependencies</em>' containment reference.
+	 * @see #setDependencies(IDependency)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIState_Dependencies()
+	 * @model containment="true" resolveProxies="true"
+	 * @generated
+	 */
+	IDependency getDependencies();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IState#getDependencies <em>Dependencies</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Dependencies</em>' containment reference.
+	 * @see #getDependencies()
+	 * @generated
+	 */
+	void setDependencies(IDependency value);
+
+	/**
+	 * Returns the value of the '<em><b>The Main Diagram</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>The Main Diagram</em>' reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>The Main Diagram</em>' reference.
+	 * @see #setTheMainDiagram(IDiagram)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIState_TheMainDiagram()
+	 * @model
+	 * @generated
+	 */
+	IDiagram getTheMainDiagram();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IState#getTheMainDiagram <em>The Main Diagram</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>The Main Diagram</em>' reference.
+	 * @see #getTheMainDiagram()
+	 * @generated
+	 */
+	void setTheMainDiagram(IDiagram value);
+
+	/**
+	 * Returns the value of the '<em><b>Swimlane</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Swimlane</em>' reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Swimlane</em>' reference.
+	 * @see #setSwimlane(ISwimlane)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIState_Swimlane()
+	 * @model
+	 * @generated
+	 */
+	ISwimlane getSwimlane();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IState#getSwimlane <em>Swimlane</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Swimlane</em>' reference.
+	 * @see #getSwimlane()
+	 * @generated
+	 */
+	void setSwimlane(ISwimlane value);
+
+	/**
+	 * Returns the value of the '<em><b>Code Update CG Time</b></em>' attribute list.
+	 * The list contents are of type {@link java.lang.String}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Code Update CG Time</em>' attribute list isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Code Update CG Time</em>' attribute list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIState_CodeUpdateCGTime()
+	 * @model unique="false"
+	 * @generated
+	 */
+	EList<String> getCodeUpdateCGTime();
+
+} // IState
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/IStateChart.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/IStateChart.java
new file mode 100755
index 0000000..a2d84e3
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/IStateChart.java
@@ -0,0 +1,148 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel;
+
+import org.eclipse.emf.common.util.EList;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>IState Chart</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * </p>
+ * <ul>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IStateChart#getStates <em>States</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IStateChart#getBaseVersion <em>Base Version</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IStateChart#getDiagram <em>Diagram</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IStateChart#getViews <em>Views</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IStateChart#getInheritsFromHandle <em>Inherits From Handle</em>}</li>
+ * </ul>
+ *
+ * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIStateChart()
+ * @model
+ * @generated
+ */
+public interface IStateChart extends IClass, NestedStateChartType, TargetType {
+	/**
+	 * Returns the value of the '<em><b>States</b></em>' containment reference list.
+	 * The list contents are of type {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IState}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>States</em>' containment reference list isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>States</em>' containment reference list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIStateChart_States()
+	 * @model containment="true" resolveProxies="true"
+	 * @generated
+	 */
+	EList<IState> getStates();
+
+	/**
+	 * Returns the value of the '<em><b>Base Version</b></em>' attribute list.
+	 * The list contents are of type {@link java.lang.String}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Base Version</em>' attribute list isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Base Version</em>' attribute list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIStateChart_BaseVersion()
+	 * @model unique="false"
+	 * @generated
+	 */
+	EList<String> getBaseVersion();
+
+	/**
+	 * Returns the value of the '<em><b>Diagram</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Diagram</em>' containment reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Diagram</em>' containment reference.
+	 * @see #setDiagram(IStateChartDiagram)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIStateChart_Diagram()
+	 * @model containment="true" resolveProxies="true"
+	 * @generated
+	 */
+	IStateChartDiagram getDiagram();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IStateChart#getDiagram <em>Diagram</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Diagram</em>' containment reference.
+	 * @see #getDiagram()
+	 * @generated
+	 */
+	void setDiagram(IStateChartDiagram value);
+
+	/**
+	 * Returns the value of the '<em><b>Views</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Views</em>' containment reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Views</em>' containment reference.
+	 * @see #setViews(IStateChartDiagram)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIStateChart_Views()
+	 * @model containment="true" resolveProxies="true"
+	 * @generated
+	 */
+	IStateChartDiagram getViews();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IStateChart#getViews <em>Views</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Views</em>' containment reference.
+	 * @see #getViews()
+	 * @generated
+	 */
+	void setViews(IStateChartDiagram value);
+
+	/**
+	 * Returns the value of the '<em><b>Inherits From Handle</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Inherits From Handle</em>' reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Inherits From Handle</em>' reference.
+	 * @see #setInheritsFromHandle(IStateChart)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIStateChart_InheritsFromHandle()
+	 * @model
+	 * @generated
+	 */
+	IStateChart getInheritsFromHandle();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IStateChart#getInheritsFromHandle <em>Inherits From Handle</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Inherits From Handle</em>' reference.
+	 * @see #getInheritsFromHandle()
+	 * @generated
+	 */
+	void setInheritsFromHandle(IStateChart value);
+
+} // IStateChart
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/IStateChartDiagram.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/IStateChartDiagram.java
new file mode 100755
index 0000000..8ff5af7
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/IStateChartDiagram.java
@@ -0,0 +1,27 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel;
+
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>IState Chart Diagram</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ *
+ * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIStateChartDiagram()
+ * @model
+ * @generated
+ */
+public interface IStateChartDiagram extends IDiagram {
+} // IStateChartDiagram
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/IStateVertex.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/IStateVertex.java
new file mode 100755
index 0000000..72495ae
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/IStateVertex.java
@@ -0,0 +1,239 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel;
+
+import org.eclipse.emf.common.util.EList;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>IState Vertex</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * </p>
+ * <ul>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IStateVertex#getModifiedTimeWeak <em>Modified Time Weak</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IStateVertex#getId <em>Id</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IStateVertex#getDescription <em>Description</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IStateVertex#getUmlDependencyID <em>Uml Dependency ID</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IStateVertex#getMyState <em>My State</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IStateVertex#getStereotypes <em>Stereotypes</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IStateVertex#getObjectCreation <em>Object Creation</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IStateVertex#getName <em>Name</em>}</li>
+ * </ul>
+ *
+ * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIStateVertex()
+ * @model
+ * @generated
+ */
+public interface IStateVertex extends IModelElement, ParentType {
+	/**
+	 * Returns the value of the '<em><b>Modified Time Weak</b></em>' attribute list.
+	 * The list contents are of type {@link java.lang.String}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Modified Time Weak</em>' attribute list isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Modified Time Weak</em>' attribute list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIStateVertex_ModifiedTimeWeak()
+	 * @model unique="false"
+	 * @generated
+	 */
+	EList<String> getModifiedTimeWeak();
+
+	/**
+	 * Returns the value of the '<em><b>Id</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Id</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Id</em>' attribute.
+	 * @see #setId(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIStateVertex_Id()
+	 * @model
+	 * @generated
+	 */
+	String getId();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IStateVertex#getId <em>Id</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Id</em>' attribute.
+	 * @see #getId()
+	 * @generated
+	 */
+	void setId(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Description</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Description</em>' containment reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Description</em>' containment reference.
+	 * @see #setDescription(IDescription)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIStateVertex_Description()
+	 * @model containment="true" resolveProxies="true"
+	 * @generated
+	 */
+	IDescription getDescription();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IStateVertex#getDescription <em>Description</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Description</em>' containment reference.
+	 * @see #getDescription()
+	 * @generated
+	 */
+	void setDescription(IDescription value);
+
+	/**
+	 * Returns the value of the '<em><b>Uml Dependency ID</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Uml Dependency ID</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Uml Dependency ID</em>' attribute.
+	 * @see #setUmlDependencyID(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIStateVertex_UmlDependencyID()
+	 * @model
+	 * @generated
+	 */
+	String getUmlDependencyID();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IStateVertex#getUmlDependencyID <em>Uml Dependency ID</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Uml Dependency ID</em>' attribute.
+	 * @see #getUmlDependencyID()
+	 * @generated
+	 */
+	void setUmlDependencyID(String value);
+
+	/**
+	 * Returns the value of the '<em><b>My State</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>My State</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>My State</em>' attribute.
+	 * @see #setMyState(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIStateVertex_MyState()
+	 * @model
+	 * @generated
+	 */
+	String getMyState();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IStateVertex#getMyState <em>My State</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>My State</em>' attribute.
+	 * @see #getMyState()
+	 * @generated
+	 */
+	void setMyState(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Stereotypes</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Stereotypes</em>' reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Stereotypes</em>' reference.
+	 * @see #setStereotypes(IStereotype)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIStateVertex_Stereotypes()
+	 * @model
+	 * @generated
+	 */
+	IStereotype getStereotypes();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IStateVertex#getStereotypes <em>Stereotypes</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Stereotypes</em>' reference.
+	 * @see #getStereotypes()
+	 * @generated
+	 */
+	void setStereotypes(IStereotype value);
+
+	/**
+	 * Returns the value of the '<em><b>Object Creation</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Object Creation</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Object Creation</em>' attribute.
+	 * @see #setObjectCreation(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIStateVertex_ObjectCreation()
+	 * @model
+	 * @generated
+	 */
+	String getObjectCreation();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IStateVertex#getObjectCreation <em>Object Creation</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Object Creation</em>' attribute.
+	 * @see #getObjectCreation()
+	 * @generated
+	 */
+	void setObjectCreation(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Name</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Name</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Name</em>' attribute.
+	 * @see #setName(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIStateVertex_Name()
+	 * @model
+	 * @generated
+	 */
+	String getName();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IStateVertex#getName <em>Name</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Name</em>' attribute.
+	 * @see #getName()
+	 * @generated
+	 */
+	void setName(String value);
+
+} // IStateVertex
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/IStereotype.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/IStereotype.java
new file mode 100755
index 0000000..6f5ae94
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/IStereotype.java
@@ -0,0 +1,354 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel;
+
+import org.eclipse.emf.common.util.EList;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>IStereotype</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * </p>
+ * <ul>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IStereotype#getProperties <em>Properties</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IStereotype#getM2Classes <em>M2 Classes</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IStereotype#getNewTerm <em>New Term</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IStereotype#getDescription <em>Description</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IStereotype#getTags <em>Tags</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IStereotype#getLastID <em>Last ID</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IStereotype#getInheritances <em>Inheritances</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IStereotype#getDependencies <em>Dependencies</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IStereotype#getRequiremenTracabilityHandle <em>Requiremen Tracability Handle</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IStereotype#getObjectCreation <em>Object Creation</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IStereotype#getUmlDependencyID <em>Uml Dependency ID</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IStereotype#getTheMainDiagram <em>The Main Diagram</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IStereotype#getAnnotations <em>Annotations</em>}</li>
+ * </ul>
+ *
+ * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIStereotype()
+ * @model
+ * @generated
+ */
+public interface IStereotype extends IClassifier, ValueType, DeclarativesType, DependsOnType, M_pModelObjectType {
+	/**
+	 * Returns the value of the '<em><b>Properties</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Properties</em>' containment reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Properties</em>' containment reference.
+	 * @see #setProperties(IPropertyContainer)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIStereotype_Properties()
+	 * @model containment="true" resolveProxies="true"
+	 * @generated
+	 */
+	IPropertyContainer getProperties();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IStereotype#getProperties <em>Properties</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Properties</em>' containment reference.
+	 * @see #getProperties()
+	 * @generated
+	 */
+	void setProperties(IPropertyContainer value);
+
+	/**
+	 * Returns the value of the '<em><b>M2 Classes</b></em>' attribute list.
+	 * The list contents are of type {@link java.lang.String}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>M2 Classes</em>' attribute list isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>M2 Classes</em>' attribute list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIStereotype_M2Classes()
+	 * @model unique="false"
+	 * @generated
+	 */
+	EList<String> getM2Classes();
+
+	/**
+	 * Returns the value of the '<em><b>New Term</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>New Term</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>New Term</em>' attribute.
+	 * @see #setNewTerm(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIStereotype_NewTerm()
+	 * @model
+	 * @generated
+	 */
+	String getNewTerm();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IStereotype#getNewTerm <em>New Term</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>New Term</em>' attribute.
+	 * @see #getNewTerm()
+	 * @generated
+	 */
+	void setNewTerm(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Description</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Description</em>' containment reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Description</em>' containment reference.
+	 * @see #setDescription(IDescription)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIStereotype_Description()
+	 * @model containment="true" resolveProxies="true"
+	 * @generated
+	 */
+	IDescription getDescription();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IStereotype#getDescription <em>Description</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Description</em>' containment reference.
+	 * @see #getDescription()
+	 * @generated
+	 */
+	void setDescription(IDescription value);
+
+	/**
+	 * Returns the value of the '<em><b>Tags</b></em>' containment reference list.
+	 * The list contents are of type {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITag}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Tags</em>' containment reference list isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Tags</em>' containment reference list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIStereotype_Tags()
+	 * @model containment="true" resolveProxies="true"
+	 * @generated
+	 */
+	EList<ITag> getTags();
+
+	/**
+	 * Returns the value of the '<em><b>Last ID</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Last ID</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Last ID</em>' attribute.
+	 * @see #setLastID(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIStereotype_LastID()
+	 * @model
+	 * @generated
+	 */
+	String getLastID();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IStereotype#getLastID <em>Last ID</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Last ID</em>' attribute.
+	 * @see #getLastID()
+	 * @generated
+	 */
+	void setLastID(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Inheritances</b></em>' containment reference list.
+	 * The list contents are of type {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IGeneralization}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Inheritances</em>' containment reference list isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Inheritances</em>' containment reference list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIStereotype_Inheritances()
+	 * @model containment="true" resolveProxies="true"
+	 * @generated
+	 */
+	EList<IGeneralization> getInheritances();
+
+	/**
+	 * Returns the value of the '<em><b>Dependencies</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Dependencies</em>' containment reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Dependencies</em>' containment reference.
+	 * @see #setDependencies(IDependency)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIStereotype_Dependencies()
+	 * @model containment="true" resolveProxies="true"
+	 * @generated
+	 */
+	IDependency getDependencies();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IStereotype#getDependencies <em>Dependencies</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Dependencies</em>' containment reference.
+	 * @see #getDependencies()
+	 * @generated
+	 */
+	void setDependencies(IDependency value);
+
+	/**
+	 * Returns the value of the '<em><b>Requiremen Tracability Handle</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Requiremen Tracability Handle</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Requiremen Tracability Handle</em>' attribute.
+	 * @see #setRequiremenTracabilityHandle(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIStereotype_RequiremenTracabilityHandle()
+	 * @model
+	 * @generated
+	 */
+	String getRequiremenTracabilityHandle();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IStereotype#getRequiremenTracabilityHandle <em>Requiremen Tracability Handle</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Requiremen Tracability Handle</em>' attribute.
+	 * @see #getRequiremenTracabilityHandle()
+	 * @generated
+	 */
+	void setRequiremenTracabilityHandle(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Object Creation</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Object Creation</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Object Creation</em>' attribute.
+	 * @see #setObjectCreation(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIStereotype_ObjectCreation()
+	 * @model
+	 * @generated
+	 */
+	String getObjectCreation();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IStereotype#getObjectCreation <em>Object Creation</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Object Creation</em>' attribute.
+	 * @see #getObjectCreation()
+	 * @generated
+	 */
+	void setObjectCreation(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Uml Dependency ID</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Uml Dependency ID</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Uml Dependency ID</em>' attribute.
+	 * @see #setUmlDependencyID(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIStereotype_UmlDependencyID()
+	 * @model
+	 * @generated
+	 */
+	String getUmlDependencyID();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IStereotype#getUmlDependencyID <em>Uml Dependency ID</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Uml Dependency ID</em>' attribute.
+	 * @see #getUmlDependencyID()
+	 * @generated
+	 */
+	void setUmlDependencyID(String value);
+
+	/**
+	 * Returns the value of the '<em><b>The Main Diagram</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>The Main Diagram</em>' reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>The Main Diagram</em>' reference.
+	 * @see #setTheMainDiagram(IUnit)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIStereotype_TheMainDiagram()
+	 * @model
+	 * @generated
+	 */
+	IUnit getTheMainDiagram();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IStereotype#getTheMainDiagram <em>The Main Diagram</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>The Main Diagram</em>' reference.
+	 * @see #getTheMainDiagram()
+	 * @generated
+	 */
+	void setTheMainDiagram(IUnit value);
+
+	/**
+	 * Returns the value of the '<em><b>Annotations</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Annotations</em>' containment reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Annotations</em>' containment reference.
+	 * @see #setAnnotations(IComment)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIStereotype_Annotations()
+	 * @model containment="true" resolveProxies="true"
+	 * @generated
+	 */
+	IComment getAnnotations();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IStereotype#getAnnotations <em>Annotations</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Annotations</em>' containment reference.
+	 * @see #getAnnotations()
+	 * @generated
+	 */
+	void setAnnotations(IComment value);
+
+} // IStereotype
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/IStructureDiagram.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/IStructureDiagram.java
new file mode 100755
index 0000000..5703892
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/IStructureDiagram.java
@@ -0,0 +1,27 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel;
+
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>IStructure Diagram</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ *
+ * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIStructureDiagram()
+ * @model
+ * @generated
+ */
+public interface IStructureDiagram extends IDiagram, DeclarativesType, DependsOnType, TargetType, TheMainDiagramType, M_pModelObjectType {
+} // IStructureDiagram
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/ISubsystem.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/ISubsystem.java
new file mode 100755
index 0000000..8446166
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/ISubsystem.java
@@ -0,0 +1,815 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel;
+
+import org.eclipse.emf.common.util.EList;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>ISubsystem</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * </p>
+ * <ul>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ISubsystem#getId <em>Id</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ISubsystem#getMyState <em>My State</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ISubsystem#getName <em>Name</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ISubsystem#getModifiedTimeWeak <em>Modified Time Weak</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ISubsystem#getDefaultComposite <em>Default Composite</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ISubsystem#getEventsBaseID <em>Events Base ID</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ISubsystem#getClasses <em>Classes</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ISubsystem#getConfigurationRelatedTime <em>Configuration Related Time</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ISubsystem#getProperties <em>Properties</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ISubsystem#getLastID <em>Last ID</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ISubsystem#getCmheader <em>Cmheader</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ISubsystem#getDeclaratives <em>Declaratives</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ISubsystem#getTypes <em>Types</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ISubsystem#getStereotypes <em>Stereotypes</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ISubsystem#getPredefinedTypes <em>Predefined Types</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ISubsystem#getEvents <em>Events</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ISubsystem#getAnnotations <em>Annotations</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ISubsystem#getUseCases <em>Use Cases</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ISubsystem#getActors <em>Actors</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ISubsystem#getDescription <em>Description</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ISubsystem#getTags <em>Tags</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ISubsystem#getDependencies <em>Dependencies</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ISubsystem#getOwnerHandle <em>Owner Handle</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ISubsystem#getTheMainDiagram <em>The Main Diagram</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ISubsystem#getHyperLinks <em>Hyper Links</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ISubsystem#getTableLayouts <em>Table Layouts</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ISubsystem#getMatrixLayouts <em>Matrix Layouts</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ISubsystem#getTableInstances <em>Table Instances</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ISubsystem#getMatrixInstances <em>Matrix Instances</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ISubsystem#getEmbededFiles <em>Embeded Files</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ISubsystem#getComponentFiles <em>Component Files</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ISubsystem#getRequiremenTracabilityHandle <em>Requiremen Tracability Handle</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ISubsystem#getCodeUpdateCGTime <em>Code Update CG Time</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ISubsystem#getObjectCreation <em>Object Creation</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ISubsystem#getUmlDependencyID <em>Uml Dependency ID</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ISubsystem#getAssociationElements <em>Association Elements</em>}</li>
+ * </ul>
+ *
+ * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getISubsystem()
+ * @model
+ * @generated
+ */
+public interface ISubsystem extends OwnerHandleType, DependsOnType, DeclarativesType, M_pModelObjectType, TargetType, DefaultSubsystemType {
+	/**
+	 * Returns the value of the '<em><b>Id</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Id</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Id</em>' attribute.
+	 * @see #setId(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getISubsystem_Id()
+	 * @model
+	 * @generated
+	 */
+	String getId();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ISubsystem#getId <em>Id</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Id</em>' attribute.
+	 * @see #getId()
+	 * @generated
+	 */
+	void setId(String value);
+
+	/**
+	 * Returns the value of the '<em><b>My State</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>My State</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>My State</em>' attribute.
+	 * @see #setMyState(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getISubsystem_MyState()
+	 * @model
+	 * @generated
+	 */
+	String getMyState();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ISubsystem#getMyState <em>My State</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>My State</em>' attribute.
+	 * @see #getMyState()
+	 * @generated
+	 */
+	void setMyState(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Name</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Name</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Name</em>' attribute.
+	 * @see #setName(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getISubsystem_Name()
+	 * @model
+	 * @generated
+	 */
+	String getName();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ISubsystem#getName <em>Name</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Name</em>' attribute.
+	 * @see #getName()
+	 * @generated
+	 */
+	void setName(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Modified Time Weak</b></em>' attribute list.
+	 * The list contents are of type {@link java.lang.String}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Modified Time Weak</em>' attribute list isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Modified Time Weak</em>' attribute list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getISubsystem_ModifiedTimeWeak()
+	 * @model unique="false"
+	 * @generated
+	 */
+	EList<String> getModifiedTimeWeak();
+
+	/**
+	 * Returns the value of the '<em><b>Default Composite</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Default Composite</em>' reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Default Composite</em>' reference.
+	 * @see #setDefaultComposite(IClass)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getISubsystem_DefaultComposite()
+	 * @model
+	 * @generated
+	 */
+	IClass getDefaultComposite();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ISubsystem#getDefaultComposite <em>Default Composite</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Default Composite</em>' reference.
+	 * @see #getDefaultComposite()
+	 * @generated
+	 */
+	void setDefaultComposite(IClass value);
+
+	/**
+	 * Returns the value of the '<em><b>Events Base ID</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Events Base ID</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Events Base ID</em>' attribute.
+	 * @see #setEventsBaseID(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getISubsystem_EventsBaseID()
+	 * @model
+	 * @generated
+	 */
+	String getEventsBaseID();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ISubsystem#getEventsBaseID <em>Events Base ID</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Events Base ID</em>' attribute.
+	 * @see #getEventsBaseID()
+	 * @generated
+	 */
+	void setEventsBaseID(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Classes</b></em>' containment reference list.
+	 * The list contents are of type {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IClass}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Classes</em>' containment reference list isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Classes</em>' containment reference list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getISubsystem_Classes()
+	 * @model containment="true" resolveProxies="true"
+	 * @generated
+	 */
+	EList<IClass> getClasses();
+
+	/**
+	 * Returns the value of the '<em><b>Configuration Related Time</b></em>' attribute list.
+	 * The list contents are of type {@link java.lang.String}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Configuration Related Time</em>' attribute list isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Configuration Related Time</em>' attribute list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getISubsystem_ConfigurationRelatedTime()
+	 * @model unique="false"
+	 * @generated
+	 */
+	EList<String> getConfigurationRelatedTime();
+
+	/**
+	 * Returns the value of the '<em><b>Properties</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Properties</em>' containment reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Properties</em>' containment reference.
+	 * @see #setProperties(IPropertyContainer)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getISubsystem_Properties()
+	 * @model containment="true" resolveProxies="true"
+	 * @generated
+	 */
+	IPropertyContainer getProperties();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ISubsystem#getProperties <em>Properties</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Properties</em>' containment reference.
+	 * @see #getProperties()
+	 * @generated
+	 */
+	void setProperties(IPropertyContainer value);
+
+	/**
+	 * Returns the value of the '<em><b>Last ID</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Last ID</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Last ID</em>' attribute.
+	 * @see #setLastID(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getISubsystem_LastID()
+	 * @model
+	 * @generated
+	 */
+	String getLastID();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ISubsystem#getLastID <em>Last ID</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Last ID</em>' attribute.
+	 * @see #getLastID()
+	 * @generated
+	 */
+	void setLastID(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Cmheader</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Cmheader</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Cmheader</em>' attribute.
+	 * @see #setCmheader(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getISubsystem_Cmheader()
+	 * @model
+	 * @generated
+	 */
+	String getCmheader();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ISubsystem#getCmheader <em>Cmheader</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Cmheader</em>' attribute.
+	 * @see #getCmheader()
+	 * @generated
+	 */
+	void setCmheader(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Declaratives</b></em>' containment reference list.
+	 * The list contents are of type {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.DeclarativesType}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Declaratives</em>' containment reference list isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Declaratives</em>' containment reference list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getISubsystem_Declaratives()
+	 * @model containment="true" resolveProxies="true"
+	 * @generated
+	 */
+	EList<DeclarativesType> getDeclaratives();
+
+	/**
+	 * Returns the value of the '<em><b>Types</b></em>' containment reference list.
+	 * The list contents are of type {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IUnit}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Types</em>' containment reference list isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Types</em>' containment reference list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getISubsystem_Types()
+	 * @model containment="true" resolveProxies="true"
+	 * @generated
+	 */
+	EList<IUnit> getTypes();
+
+	/**
+	 * Returns the value of the '<em><b>Stereotypes</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Stereotypes</em>' reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Stereotypes</em>' reference.
+	 * @see #setStereotypes(IUnit)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getISubsystem_Stereotypes()
+	 * @model
+	 * @generated
+	 */
+	IUnit getStereotypes();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ISubsystem#getStereotypes <em>Stereotypes</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Stereotypes</em>' reference.
+	 * @see #getStereotypes()
+	 * @generated
+	 */
+	void setStereotypes(IUnit value);
+
+	/**
+	 * Returns the value of the '<em><b>Predefined Types</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Predefined Types</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Predefined Types</em>' attribute.
+	 * @see #setPredefinedTypes(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getISubsystem_PredefinedTypes()
+	 * @model
+	 * @generated
+	 */
+	String getPredefinedTypes();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ISubsystem#getPredefinedTypes <em>Predefined Types</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Predefined Types</em>' attribute.
+	 * @see #getPredefinedTypes()
+	 * @generated
+	 */
+	void setPredefinedTypes(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Events</b></em>' containment reference list.
+	 * The list contents are of type {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IInterfaceItem}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Events</em>' containment reference list isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Events</em>' containment reference list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getISubsystem_Events()
+	 * @model containment="true" resolveProxies="true"
+	 * @generated
+	 */
+	EList<IInterfaceItem> getEvents();
+
+	/**
+	 * Returns the value of the '<em><b>Annotations</b></em>' containment reference list.
+	 * The list contents are of type {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IUnit}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Annotations</em>' containment reference list isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Annotations</em>' containment reference list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getISubsystem_Annotations()
+	 * @model containment="true" resolveProxies="true"
+	 * @generated
+	 */
+	EList<IUnit> getAnnotations();
+
+	/**
+	 * Returns the value of the '<em><b>Use Cases</b></em>' containment reference list.
+	 * The list contents are of type {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IClassifier}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Use Cases</em>' containment reference list isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Use Cases</em>' containment reference list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getISubsystem_UseCases()
+	 * @model containment="true" resolveProxies="true"
+	 * @generated
+	 */
+	EList<IClassifier> getUseCases();
+
+	/**
+	 * Returns the value of the '<em><b>Actors</b></em>' containment reference list.
+	 * The list contents are of type {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IClassifier}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Actors</em>' containment reference list isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Actors</em>' containment reference list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getISubsystem_Actors()
+	 * @model containment="true" resolveProxies="true"
+	 * @generated
+	 */
+	EList<IClassifier> getActors();
+
+	/**
+	 * Returns the value of the '<em><b>Description</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Description</em>' containment reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Description</em>' containment reference.
+	 * @see #setDescription(IDescription)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getISubsystem_Description()
+	 * @model containment="true" resolveProxies="true"
+	 * @generated
+	 */
+	IDescription getDescription();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ISubsystem#getDescription <em>Description</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Description</em>' containment reference.
+	 * @see #getDescription()
+	 * @generated
+	 */
+	void setDescription(IDescription value);
+
+	/**
+	 * Returns the value of the '<em><b>Tags</b></em>' containment reference list.
+	 * The list contents are of type {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITag}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Tags</em>' containment reference list isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Tags</em>' containment reference list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getISubsystem_Tags()
+	 * @model containment="true" resolveProxies="true"
+	 * @generated
+	 */
+	EList<ITag> getTags();
+
+	/**
+	 * Returns the value of the '<em><b>Dependencies</b></em>' containment reference list.
+	 * The list contents are of type {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IDependency}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Dependencies</em>' containment reference list isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Dependencies</em>' containment reference list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getISubsystem_Dependencies()
+	 * @model containment="true" resolveProxies="true"
+	 * @generated
+	 */
+	EList<IDependency> getDependencies();
+
+	/**
+	 * Returns the value of the '<em><b>Owner Handle</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Owner Handle</em>' reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Owner Handle</em>' reference.
+	 * @see #setOwnerHandle(OwnerHandleType)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getISubsystem_OwnerHandle()
+	 * @model
+	 * @generated
+	 */
+	OwnerHandleType getOwnerHandle();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ISubsystem#getOwnerHandle <em>Owner Handle</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Owner Handle</em>' reference.
+	 * @see #getOwnerHandle()
+	 * @generated
+	 */
+	void setOwnerHandle(OwnerHandleType value);
+
+	/**
+	 * Returns the value of the '<em><b>The Main Diagram</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>The Main Diagram</em>' reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>The Main Diagram</em>' reference.
+	 * @see #setTheMainDiagram(TheMainDiagramType)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getISubsystem_TheMainDiagram()
+	 * @model
+	 * @generated
+	 */
+	TheMainDiagramType getTheMainDiagram();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ISubsystem#getTheMainDiagram <em>The Main Diagram</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>The Main Diagram</em>' reference.
+	 * @see #getTheMainDiagram()
+	 * @generated
+	 */
+	void setTheMainDiagram(TheMainDiagramType value);
+
+	/**
+	 * Returns the value of the '<em><b>Hyper Links</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Hyper Links</em>' containment reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Hyper Links</em>' containment reference.
+	 * @see #setHyperLinks(HyperLinksType)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getISubsystem_HyperLinks()
+	 * @model containment="true" resolveProxies="true"
+	 * @generated
+	 */
+	HyperLinksType getHyperLinks();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ISubsystem#getHyperLinks <em>Hyper Links</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Hyper Links</em>' containment reference.
+	 * @see #getHyperLinks()
+	 * @generated
+	 */
+	void setHyperLinks(HyperLinksType value);
+
+	/**
+	 * Returns the value of the '<em><b>Table Layouts</b></em>' containment reference list.
+	 * The list contents are of type {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IModelElement}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Table Layouts</em>' containment reference list isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Table Layouts</em>' containment reference list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getISubsystem_TableLayouts()
+	 * @model containment="true" resolveProxies="true"
+	 * @generated
+	 */
+	EList<IModelElement> getTableLayouts();
+
+	/**
+	 * Returns the value of the '<em><b>Matrix Layouts</b></em>' containment reference list.
+	 * The list contents are of type {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMatrixLayout}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Matrix Layouts</em>' containment reference list isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Matrix Layouts</em>' containment reference list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getISubsystem_MatrixLayouts()
+	 * @model containment="true" resolveProxies="true"
+	 * @generated
+	 */
+	EList<IMatrixLayout> getMatrixLayouts();
+
+	/**
+	 * Returns the value of the '<em><b>Table Instances</b></em>' containment reference list.
+	 * The list contents are of type {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.TableInstancesType}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Table Instances</em>' containment reference list isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Table Instances</em>' containment reference list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getISubsystem_TableInstances()
+	 * @model containment="true" resolveProxies="true"
+	 * @generated
+	 */
+	EList<TableInstancesType> getTableInstances();
+
+	/**
+	 * Returns the value of the '<em><b>Matrix Instances</b></em>' containment reference list.
+	 * The list contents are of type {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.MatrixInstancesType}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Matrix Instances</em>' containment reference list isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Matrix Instances</em>' containment reference list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getISubsystem_MatrixInstances()
+	 * @model containment="true" resolveProxies="true"
+	 * @generated
+	 */
+	EList<MatrixInstancesType> getMatrixInstances();
+
+	/**
+	 * Returns the value of the '<em><b>Embeded Files</b></em>' containment reference list.
+	 * The list contents are of type {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.EmbededFilesType}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Embeded Files</em>' containment reference list isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Embeded Files</em>' containment reference list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getISubsystem_EmbededFiles()
+	 * @model containment="true" resolveProxies="true"
+	 * @generated
+	 */
+	EList<EmbededFilesType> getEmbededFiles();
+
+	/**
+	 * Returns the value of the '<em><b>Component Files</b></em>' containment reference list.
+	 * The list contents are of type {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IFile}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Component Files</em>' containment reference list isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Component Files</em>' containment reference list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getISubsystem_ComponentFiles()
+	 * @model containment="true" resolveProxies="true"
+	 * @generated
+	 */
+	EList<IFile> getComponentFiles();
+
+	/**
+	 * Returns the value of the '<em><b>Requiremen Tracability Handle</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Requiremen Tracability Handle</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Requiremen Tracability Handle</em>' attribute.
+	 * @see #setRequiremenTracabilityHandle(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getISubsystem_RequiremenTracabilityHandle()
+	 * @model
+	 * @generated
+	 */
+	String getRequiremenTracabilityHandle();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ISubsystem#getRequiremenTracabilityHandle <em>Requiremen Tracability Handle</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Requiremen Tracability Handle</em>' attribute.
+	 * @see #getRequiremenTracabilityHandle()
+	 * @generated
+	 */
+	void setRequiremenTracabilityHandle(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Code Update CG Time</b></em>' attribute list.
+	 * The list contents are of type {@link java.lang.String}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Code Update CG Time</em>' attribute list isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Code Update CG Time</em>' attribute list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getISubsystem_CodeUpdateCGTime()
+	 * @model unique="false"
+	 * @generated
+	 */
+	EList<String> getCodeUpdateCGTime();
+
+	/**
+	 * Returns the value of the '<em><b>Object Creation</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Object Creation</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Object Creation</em>' attribute.
+	 * @see #setObjectCreation(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getISubsystem_ObjectCreation()
+	 * @model
+	 * @generated
+	 */
+	String getObjectCreation();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ISubsystem#getObjectCreation <em>Object Creation</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Object Creation</em>' attribute.
+	 * @see #getObjectCreation()
+	 * @generated
+	 */
+	void setObjectCreation(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Uml Dependency ID</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Uml Dependency ID</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Uml Dependency ID</em>' attribute.
+	 * @see #setUmlDependencyID(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getISubsystem_UmlDependencyID()
+	 * @model
+	 * @generated
+	 */
+	String getUmlDependencyID();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ISubsystem#getUmlDependencyID <em>Uml Dependency ID</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Uml Dependency ID</em>' attribute.
+	 * @see #getUmlDependencyID()
+	 * @generated
+	 */
+	void setUmlDependencyID(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Association Elements</b></em>' containment reference list.
+	 * The list contents are of type {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IAssociationClass}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Association Elements</em>' containment reference list isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Association Elements</em>' containment reference list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getISubsystem_AssociationElements()
+	 * @model containment="true" resolveProxies="true"
+	 * @generated
+	 */
+	EList<IAssociationClass> getAssociationElements();
+
+} // ISubsystem
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/ISwimlane.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/ISwimlane.java
new file mode 100755
index 0000000..95ea7b2
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/ISwimlane.java
@@ -0,0 +1,283 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel;
+
+import org.eclipse.emf.common.util.EList;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>ISwimlane</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * </p>
+ * <ul>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ISwimlane#getId <em>Id</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ISwimlane#getName <em>Name</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ISwimlane#getModifiedTimeWeak <em>Modified Time Weak</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ISwimlane#getDescription <em>Description</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ISwimlane#getRepresents <em>Represents</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ISwimlane#getMyState <em>My State</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ISwimlane#getObjectCreation <em>Object Creation</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ISwimlane#getUmlDependencyID <em>Uml Dependency ID</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ISwimlane#getSwimlanes <em>Swimlanes</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ISwimlane#getStereotypes <em>Stereotypes</em>}</li>
+ * </ul>
+ *
+ * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getISwimlane()
+ * @model
+ * @generated
+ */
+public interface ISwimlane extends IModelElement {
+	/**
+	 * Returns the value of the '<em><b>Id</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Id</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Id</em>' attribute.
+	 * @see #setId(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getISwimlane_Id()
+	 * @model
+	 * @generated
+	 */
+	String getId();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ISwimlane#getId <em>Id</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Id</em>' attribute.
+	 * @see #getId()
+	 * @generated
+	 */
+	void setId(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Name</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Name</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Name</em>' attribute.
+	 * @see #setName(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getISwimlane_Name()
+	 * @model
+	 * @generated
+	 */
+	String getName();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ISwimlane#getName <em>Name</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Name</em>' attribute.
+	 * @see #getName()
+	 * @generated
+	 */
+	void setName(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Modified Time Weak</b></em>' attribute list.
+	 * The list contents are of type {@link java.lang.String}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Modified Time Weak</em>' attribute list isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Modified Time Weak</em>' attribute list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getISwimlane_ModifiedTimeWeak()
+	 * @model unique="false"
+	 * @generated
+	 */
+	EList<String> getModifiedTimeWeak();
+
+	/**
+	 * Returns the value of the '<em><b>Description</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Description</em>' containment reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Description</em>' containment reference.
+	 * @see #setDescription(IDescription)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getISwimlane_Description()
+	 * @model containment="true" resolveProxies="true"
+	 * @generated
+	 */
+	IDescription getDescription();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ISwimlane#getDescription <em>Description</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Description</em>' containment reference.
+	 * @see #getDescription()
+	 * @generated
+	 */
+	void setDescription(IDescription value);
+
+	/**
+	 * Returns the value of the '<em><b>Represents</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Represents</em>' reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Represents</em>' reference.
+	 * @see #setRepresents(M_subjectType)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getISwimlane_Represents()
+	 * @model
+	 * @generated
+	 */
+	M_subjectType getRepresents();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ISwimlane#getRepresents <em>Represents</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Represents</em>' reference.
+	 * @see #getRepresents()
+	 * @generated
+	 */
+	void setRepresents(M_subjectType value);
+
+	/**
+	 * Returns the value of the '<em><b>My State</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>My State</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>My State</em>' attribute.
+	 * @see #setMyState(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getISwimlane_MyState()
+	 * @model
+	 * @generated
+	 */
+	String getMyState();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ISwimlane#getMyState <em>My State</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>My State</em>' attribute.
+	 * @see #getMyState()
+	 * @generated
+	 */
+	void setMyState(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Object Creation</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Object Creation</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Object Creation</em>' attribute.
+	 * @see #setObjectCreation(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getISwimlane_ObjectCreation()
+	 * @model
+	 * @generated
+	 */
+	String getObjectCreation();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ISwimlane#getObjectCreation <em>Object Creation</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Object Creation</em>' attribute.
+	 * @see #getObjectCreation()
+	 * @generated
+	 */
+	void setObjectCreation(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Uml Dependency ID</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Uml Dependency ID</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Uml Dependency ID</em>' attribute.
+	 * @see #setUmlDependencyID(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getISwimlane_UmlDependencyID()
+	 * @model
+	 * @generated
+	 */
+	String getUmlDependencyID();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ISwimlane#getUmlDependencyID <em>Uml Dependency ID</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Uml Dependency ID</em>' attribute.
+	 * @see #getUmlDependencyID()
+	 * @generated
+	 */
+	void setUmlDependencyID(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Swimlanes</b></em>' containment reference list.
+	 * The list contents are of type {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ISwimlane}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Swimlanes</em>' containment reference list isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Swimlanes</em>' containment reference list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getISwimlane_Swimlanes()
+	 * @model containment="true" resolveProxies="true"
+	 * @generated
+	 */
+	EList<ISwimlane> getSwimlanes();
+
+	/**
+	 * Returns the value of the '<em><b>Stereotypes</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Stereotypes</em>' reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Stereotypes</em>' reference.
+	 * @see #setStereotypes(IStereotype)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getISwimlane_Stereotypes()
+	 * @model
+	 * @generated
+	 */
+	IStereotype getStereotypes();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ISwimlane#getStereotypes <em>Stereotypes</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Stereotypes</em>' reference.
+	 * @see #getStereotypes()
+	 * @generated
+	 */
+	void setStereotypes(IStereotype value);
+
+} // ISwimlane
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/ISysMLPort.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/ISysMLPort.java
new file mode 100755
index 0000000..950eeef
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/ISysMLPort.java
@@ -0,0 +1,239 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel;
+
+import org.eclipse.emf.common.util.EList;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>ISys ML Port</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * </p>
+ * <ul>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ISysMLPort#getDependencies <em>Dependencies</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ISysMLPort#getStereotypes <em>Stereotypes</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ISysMLPort#getTags <em>Tags</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ISysMLPort#getOtherClass <em>Other Class</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ISysMLPort#getDirection <em>Direction</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ISysMLPort#getDescription <em>Description</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ISysMLPort#getLastID <em>Last ID</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ISysMLPort#getReversed <em>Reversed</em>}</li>
+ * </ul>
+ *
+ * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getISysMLPort()
+ * @model
+ * @generated
+ */
+public interface ISysMLPort extends IInstance, DependsOnType, M_pFormalMessageType, ToLinkType, End2_Type, FromLinkType, End1_Type {
+	/**
+	 * Returns the value of the '<em><b>Dependencies</b></em>' containment reference list.
+	 * The list contents are of type {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IDependency}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Dependencies</em>' containment reference list isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Dependencies</em>' containment reference list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getISysMLPort_Dependencies()
+	 * @model containment="true" resolveProxies="true"
+	 * @generated
+	 */
+	EList<IDependency> getDependencies();
+
+	/**
+	 * Returns the value of the '<em><b>Stereotypes</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Stereotypes</em>' reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Stereotypes</em>' reference.
+	 * @see #setStereotypes(IUnit)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getISysMLPort_Stereotypes()
+	 * @model
+	 * @generated
+	 */
+	IUnit getStereotypes();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ISysMLPort#getStereotypes <em>Stereotypes</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Stereotypes</em>' reference.
+	 * @see #getStereotypes()
+	 * @generated
+	 */
+	void setStereotypes(IUnit value);
+
+	/**
+	 * Returns the value of the '<em><b>Tags</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Tags</em>' containment reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Tags</em>' containment reference.
+	 * @see #setTags(ITag)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getISysMLPort_Tags()
+	 * @model containment="true" resolveProxies="true"
+	 * @generated
+	 */
+	ITag getTags();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ISysMLPort#getTags <em>Tags</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Tags</em>' containment reference.
+	 * @see #getTags()
+	 * @generated
+	 */
+	void setTags(ITag value);
+
+	/**
+	 * Returns the value of the '<em><b>Other Class</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Other 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>Other Class</em>' reference.
+	 * @see #setOtherClass(IUnit)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getISysMLPort_OtherClass()
+	 * @model
+	 * @generated
+	 */
+	IUnit getOtherClass();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ISysMLPort#getOtherClass <em>Other Class</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Other Class</em>' reference.
+	 * @see #getOtherClass()
+	 * @generated
+	 */
+	void setOtherClass(IUnit value);
+
+	/**
+	 * Returns the value of the '<em><b>Direction</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Direction</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Direction</em>' attribute.
+	 * @see #setDirection(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getISysMLPort_Direction()
+	 * @model
+	 * @generated
+	 */
+	String getDirection();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ISysMLPort#getDirection <em>Direction</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Direction</em>' attribute.
+	 * @see #getDirection()
+	 * @generated
+	 */
+	void setDirection(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Description</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Description</em>' containment reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Description</em>' containment reference.
+	 * @see #setDescription(IDescription)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getISysMLPort_Description()
+	 * @model containment="true" resolveProxies="true"
+	 * @generated
+	 */
+	IDescription getDescription();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ISysMLPort#getDescription <em>Description</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Description</em>' containment reference.
+	 * @see #getDescription()
+	 * @generated
+	 */
+	void setDescription(IDescription value);
+
+	/**
+	 * Returns the value of the '<em><b>Last ID</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Last ID</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Last ID</em>' attribute.
+	 * @see #setLastID(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getISysMLPort_LastID()
+	 * @model
+	 * @generated
+	 */
+	String getLastID();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ISysMLPort#getLastID <em>Last ID</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Last ID</em>' attribute.
+	 * @see #getLastID()
+	 * @generated
+	 */
+	void setLastID(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Reversed</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Reversed</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Reversed</em>' attribute.
+	 * @see #setReversed(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getISysMLPort_Reversed()
+	 * @model
+	 * @generated
+	 */
+	String getReversed();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ISysMLPort#getReversed <em>Reversed</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Reversed</em>' attribute.
+	 * @see #getReversed()
+	 * @generated
+	 */
+	void setReversed(String value);
+
+} // ISysMLPort
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/ITableInstance.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/ITableInstance.java
new file mode 100755
index 0000000..45c95ce
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/ITableInstance.java
@@ -0,0 +1,239 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel;
+
+import org.eclipse.emf.common.util.EList;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>ITable Instance</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * </p>
+ * <ul>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITableInstance#getId <em>Id</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITableInstance#getMyState <em>My State</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITableInstance#getProperties <em>Properties</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITableInstance#getName <em>Name</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITableInstance#getModifiedTimeWeak <em>Modified Time Weak</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITableInstance#getLayoutHandle <em>Layout Handle</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITableInstance#getScopeHandles <em>Scope Handles</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITableInstance#getStereotypes <em>Stereotypes</em>}</li>
+ * </ul>
+ *
+ * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getITableInstance()
+ * @model
+ * @generated
+ */
+public interface ITableInstance extends TableInstancesType, DependsOnType {
+	/**
+	 * Returns the value of the '<em><b>Id</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Id</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Id</em>' attribute.
+	 * @see #setId(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getITableInstance_Id()
+	 * @model
+	 * @generated
+	 */
+	String getId();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITableInstance#getId <em>Id</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Id</em>' attribute.
+	 * @see #getId()
+	 * @generated
+	 */
+	void setId(String value);
+
+	/**
+	 * Returns the value of the '<em><b>My State</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>My State</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>My State</em>' attribute.
+	 * @see #setMyState(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getITableInstance_MyState()
+	 * @model
+	 * @generated
+	 */
+	String getMyState();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITableInstance#getMyState <em>My State</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>My State</em>' attribute.
+	 * @see #getMyState()
+	 * @generated
+	 */
+	void setMyState(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Properties</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Properties</em>' containment reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Properties</em>' containment reference.
+	 * @see #setProperties(IPropertyContainer)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getITableInstance_Properties()
+	 * @model containment="true" resolveProxies="true"
+	 * @generated
+	 */
+	IPropertyContainer getProperties();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITableInstance#getProperties <em>Properties</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Properties</em>' containment reference.
+	 * @see #getProperties()
+	 * @generated
+	 */
+	void setProperties(IPropertyContainer value);
+
+	/**
+	 * Returns the value of the '<em><b>Name</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Name</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Name</em>' attribute.
+	 * @see #setName(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getITableInstance_Name()
+	 * @model
+	 * @generated
+	 */
+	String getName();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITableInstance#getName <em>Name</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Name</em>' attribute.
+	 * @see #getName()
+	 * @generated
+	 */
+	void setName(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Modified Time Weak</b></em>' attribute list.
+	 * The list contents are of type {@link java.lang.String}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Modified Time Weak</em>' attribute list isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Modified Time Weak</em>' attribute list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getITableInstance_ModifiedTimeWeak()
+	 * @model unique="false"
+	 * @generated
+	 */
+	EList<String> getModifiedTimeWeak();
+
+	/**
+	 * Returns the value of the '<em><b>Layout Handle</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Layout Handle</em>' reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Layout Handle</em>' reference.
+	 * @see #setLayoutHandle(IUnit)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getITableInstance_LayoutHandle()
+	 * @model
+	 * @generated
+	 */
+	IUnit getLayoutHandle();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITableInstance#getLayoutHandle <em>Layout Handle</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Layout Handle</em>' reference.
+	 * @see #getLayoutHandle()
+	 * @generated
+	 */
+	void setLayoutHandle(IUnit value);
+
+	/**
+	 * Returns the value of the '<em><b>Scope Handles</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Scope Handles</em>' reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Scope Handles</em>' reference.
+	 * @see #setScopeHandles(M_pModelObjectType)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getITableInstance_ScopeHandles()
+	 * @model
+	 * @generated
+	 */
+	M_pModelObjectType getScopeHandles();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITableInstance#getScopeHandles <em>Scope Handles</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Scope Handles</em>' reference.
+	 * @see #getScopeHandles()
+	 * @generated
+	 */
+	void setScopeHandles(M_pModelObjectType value);
+
+	/**
+	 * Returns the value of the '<em><b>Stereotypes</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Stereotypes</em>' reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Stereotypes</em>' reference.
+	 * @see #setStereotypes(IClassifier)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getITableInstance_Stereotypes()
+	 * @model
+	 * @generated
+	 */
+	IClassifier getStereotypes();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITableInstance#getStereotypes <em>Stereotypes</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Stereotypes</em>' reference.
+	 * @see #getStereotypes()
+	 * @generated
+	 */
+	void setStereotypes(IClassifier value);
+
+} // ITableInstance
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/ITableLayout.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/ITableLayout.java
new file mode 100755
index 0000000..fcb8245
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/ITableLayout.java
@@ -0,0 +1,165 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel;
+
+import org.eclipse.emf.common.util.EList;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>ITable Layout</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * </p>
+ * <ul>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITableLayout#getProperties <em>Properties</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITableLayout#getStereotypes <em>Stereotypes</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITableLayout#getTags <em>Tags</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITableLayout#getTableElementTypes <em>Table Element Types</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITableLayout#getDataColumns <em>Data Columns</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITableLayout#getDescription <em>Description</em>}</li>
+ * </ul>
+ *
+ * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getITableLayout()
+ * @model
+ * @generated
+ */
+public interface ITableLayout extends IUnit, ValueType {
+	/**
+	 * Returns the value of the '<em><b>Properties</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Properties</em>' containment reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Properties</em>' containment reference.
+	 * @see #setProperties(IPropertyContainer)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getITableLayout_Properties()
+	 * @model containment="true" resolveProxies="true"
+	 * @generated
+	 */
+	IPropertyContainer getProperties();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITableLayout#getProperties <em>Properties</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Properties</em>' containment reference.
+	 * @see #getProperties()
+	 * @generated
+	 */
+	void setProperties(IPropertyContainer value);
+
+	/**
+	 * Returns the value of the '<em><b>Stereotypes</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Stereotypes</em>' reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Stereotypes</em>' reference.
+	 * @see #setStereotypes(IStereotype)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getITableLayout_Stereotypes()
+	 * @model
+	 * @generated
+	 */
+	IStereotype getStereotypes();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITableLayout#getStereotypes <em>Stereotypes</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Stereotypes</em>' reference.
+	 * @see #getStereotypes()
+	 * @generated
+	 */
+	void setStereotypes(IStereotype value);
+
+	/**
+	 * Returns the value of the '<em><b>Tags</b></em>' containment reference list.
+	 * The list contents are of type {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITag}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Tags</em>' containment reference list isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Tags</em>' containment reference list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getITableLayout_Tags()
+	 * @model containment="true" resolveProxies="true"
+	 * @generated
+	 */
+	EList<ITag> getTags();
+
+	/**
+	 * Returns the value of the '<em><b>Table Element Types</b></em>' containment reference list.
+	 * The list contents are of type {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.TableDataDefinition}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Table Element Types</em>' containment reference list isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Table Element Types</em>' containment reference list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getITableLayout_TableElementTypes()
+	 * @model containment="true" resolveProxies="true"
+	 * @generated
+	 */
+	EList<TableDataDefinition> getTableElementTypes();
+
+	/**
+	 * Returns the value of the '<em><b>Data Columns</b></em>' containment reference list.
+	 * The list contents are of type {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.TableDataDefinition}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Data Columns</em>' containment reference list isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Data Columns</em>' containment reference list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getITableLayout_DataColumns()
+	 * @model containment="true" resolveProxies="true"
+	 * @generated
+	 */
+	EList<TableDataDefinition> getDataColumns();
+
+	/**
+	 * Returns the value of the '<em><b>Description</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Description</em>' containment reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Description</em>' containment reference.
+	 * @see #setDescription(IDescription)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getITableLayout_Description()
+	 * @model containment="true" resolveProxies="true"
+	 * @generated
+	 */
+	IDescription getDescription();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITableLayout#getDescription <em>Description</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Description</em>' containment reference.
+	 * @see #getDescription()
+	 * @generated
+	 */
+	void setDescription(IDescription value);
+
+} // ITableLayout
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/ITableView.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/ITableView.java
new file mode 100755
index 0000000..5c76655
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/ITableView.java
@@ -0,0 +1,27 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel;
+
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>ITable View</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ *
+ * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getITableView()
+ * @model
+ * @generated
+ */
+public interface ITableView extends IUnit {
+} // ITableView
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/ITag.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/ITag.java
new file mode 100755
index 0000000..721026a
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/ITag.java
@@ -0,0 +1,381 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel;
+
+import org.eclipse.emf.common.util.EList;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>ITag</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * </p>
+ * <ul>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITag#getId <em>Id</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITag#getName <em>Name</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITag#getModifiedTimeWeak <em>Modified Time Weak</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITag#getValueSpecifications <em>Value Specifications</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITag#getTypeOf <em>Type Of</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITag#getMyState <em>My State</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITag#getMultiplicity <em>Multiplicity</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITag#getProperties <em>Properties</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITag#getDescription <em>Description</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITag#getHyperLinks <em>Hyper Links</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITag#getBase <em>Base</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITag#getMetaClass <em>Meta Class</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITag#getDefaultValue <em>Default Value</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITag#getCodeUpdateCGTime <em>Code Update CG Time</em>}</li>
+ * </ul>
+ *
+ * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getITag()
+ * @model
+ * @generated
+ */
+public interface ITag extends IVariable, M_pModelObjectType {
+	/**
+	 * Returns the value of the '<em><b>Id</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Id</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Id</em>' attribute.
+	 * @see #setId(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getITag_Id()
+	 * @model
+	 * @generated
+	 */
+	String getId();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITag#getId <em>Id</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Id</em>' attribute.
+	 * @see #getId()
+	 * @generated
+	 */
+	void setId(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Name</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Name</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Name</em>' attribute.
+	 * @see #setName(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getITag_Name()
+	 * @model
+	 * @generated
+	 */
+	String getName();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITag#getName <em>Name</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Name</em>' attribute.
+	 * @see #getName()
+	 * @generated
+	 */
+	void setName(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Modified Time Weak</b></em>' attribute list.
+	 * The list contents are of type {@link java.lang.String}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Modified Time Weak</em>' attribute list isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Modified Time Weak</em>' attribute list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getITag_ModifiedTimeWeak()
+	 * @model unique="false"
+	 * @generated
+	 */
+	EList<String> getModifiedTimeWeak();
+
+	/**
+	 * Returns the value of the '<em><b>Value Specifications</b></em>' containment reference list.
+	 * The list contents are of type {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IModelElement}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Value Specifications</em>' containment reference list isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Value Specifications</em>' containment reference list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getITag_ValueSpecifications()
+	 * @model containment="true" resolveProxies="true"
+	 * @generated
+	 */
+	EList<IModelElement> getValueSpecifications();
+
+	/**
+	 * Returns the value of the '<em><b>Type Of</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Type Of</em>' reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Type Of</em>' reference.
+	 * @see #setTypeOf(IUnit)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getITag_TypeOf()
+	 * @model
+	 * @generated
+	 */
+	IUnit getTypeOf();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITag#getTypeOf <em>Type Of</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Type Of</em>' reference.
+	 * @see #getTypeOf()
+	 * @generated
+	 */
+	void setTypeOf(IUnit value);
+
+	/**
+	 * Returns the value of the '<em><b>My State</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>My State</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>My State</em>' attribute.
+	 * @see #setMyState(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getITag_MyState()
+	 * @model
+	 * @generated
+	 */
+	String getMyState();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITag#getMyState <em>My State</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>My State</em>' attribute.
+	 * @see #getMyState()
+	 * @generated
+	 */
+	void setMyState(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Multiplicity</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Multiplicity</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Multiplicity</em>' attribute.
+	 * @see #setMultiplicity(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getITag_Multiplicity()
+	 * @model
+	 * @generated
+	 */
+	String getMultiplicity();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITag#getMultiplicity <em>Multiplicity</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Multiplicity</em>' attribute.
+	 * @see #getMultiplicity()
+	 * @generated
+	 */
+	void setMultiplicity(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Properties</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Properties</em>' containment reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Properties</em>' containment reference.
+	 * @see #setProperties(IPropertyContainer)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getITag_Properties()
+	 * @model containment="true" resolveProxies="true"
+	 * @generated
+	 */
+	IPropertyContainer getProperties();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITag#getProperties <em>Properties</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Properties</em>' containment reference.
+	 * @see #getProperties()
+	 * @generated
+	 */
+	void setProperties(IPropertyContainer value);
+
+	/**
+	 * Returns the value of the '<em><b>Description</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Description</em>' containment reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Description</em>' containment reference.
+	 * @see #setDescription(IDescription)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getITag_Description()
+	 * @model containment="true" resolveProxies="true"
+	 * @generated
+	 */
+	IDescription getDescription();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITag#getDescription <em>Description</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Description</em>' containment reference.
+	 * @see #getDescription()
+	 * @generated
+	 */
+	void setDescription(IDescription value);
+
+	/**
+	 * Returns the value of the '<em><b>Hyper Links</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Hyper Links</em>' containment reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Hyper Links</em>' containment reference.
+	 * @see #setHyperLinks(IMHyperLink)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getITag_HyperLinks()
+	 * @model containment="true" resolveProxies="true"
+	 * @generated
+	 */
+	IMHyperLink getHyperLinks();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITag#getHyperLinks <em>Hyper Links</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Hyper Links</em>' containment reference.
+	 * @see #getHyperLinks()
+	 * @generated
+	 */
+	void setHyperLinks(IMHyperLink value);
+
+	/**
+	 * Returns the value of the '<em><b>Base</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Base</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</em>' reference.
+	 * @see #setBase(IUnit)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getITag_Base()
+	 * @model
+	 * @generated
+	 */
+	IUnit getBase();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITag#getBase <em>Base</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Base</em>' reference.
+	 * @see #getBase()
+	 * @generated
+	 */
+	void setBase(IUnit value);
+
+	/**
+	 * Returns the value of the '<em><b>Meta Class</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Meta Class</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Meta Class</em>' attribute.
+	 * @see #setMetaClass(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getITag_MetaClass()
+	 * @model
+	 * @generated
+	 */
+	String getMetaClass();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITag#getMetaClass <em>Meta Class</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Meta Class</em>' attribute.
+	 * @see #getMetaClass()
+	 * @generated
+	 */
+	void setMetaClass(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Default Value</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Default Value</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Default Value</em>' attribute.
+	 * @see #setDefaultValue(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getITag_DefaultValue()
+	 * @model
+	 * @generated
+	 */
+	String getDefaultValue();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITag#getDefaultValue <em>Default Value</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Default Value</em>' attribute.
+	 * @see #getDefaultValue()
+	 * @generated
+	 */
+	void setDefaultValue(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Code Update CG Time</b></em>' attribute list.
+	 * The list contents are of type {@link java.lang.String}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Code Update CG Time</em>' attribute list isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Code Update CG Time</em>' attribute list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getITag_CodeUpdateCGTime()
+	 * @model unique="false"
+	 * @generated
+	 */
+	EList<String> getCodeUpdateCGTime();
+
+} // ITag
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/ITemplateInst.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/ITemplateInst.java
new file mode 100755
index 0000000..83c1a15
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/ITemplateInst.java
@@ -0,0 +1,141 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel;
+
+import org.eclipse.emf.ecore.EObject;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>ITemplate Inst</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * </p>
+ * <ul>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITemplateInst#getId <em>Id</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITemplateInst#getModifiedTimeWeak <em>Modified Time Weak</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITemplateInst#getTemplateInstParams <em>Template Inst Params</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITemplateInst#getOfTemplate <em>Of Template</em>}</li>
+ * </ul>
+ *
+ * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getITemplateInst()
+ * @model
+ * @generated
+ */
+public interface ITemplateInst extends EObject {
+	/**
+	 * Returns the value of the '<em><b>Id</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Id</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Id</em>' attribute.
+	 * @see #setId(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getITemplateInst_Id()
+	 * @model
+	 * @generated
+	 */
+	String getId();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITemplateInst#getId <em>Id</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Id</em>' attribute.
+	 * @see #getId()
+	 * @generated
+	 */
+	void setId(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Modified Time Weak</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Modified Time Weak</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Modified Time Weak</em>' attribute.
+	 * @see #setModifiedTimeWeak(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getITemplateInst_ModifiedTimeWeak()
+	 * @model
+	 * @generated
+	 */
+	String getModifiedTimeWeak();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITemplateInst#getModifiedTimeWeak <em>Modified Time Weak</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Modified Time Weak</em>' attribute.
+	 * @see #getModifiedTimeWeak()
+	 * @generated
+	 */
+	void setModifiedTimeWeak(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Template Inst Params</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Template Inst Params</em>' containment reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Template Inst Params</em>' containment reference.
+	 * @see #setTemplateInstParams(ITemplateInstParam)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getITemplateInst_TemplateInstParams()
+	 * @model containment="true" resolveProxies="true"
+	 * @generated
+	 */
+	ITemplateInstParam getTemplateInstParams();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITemplateInst#getTemplateInstParams <em>Template Inst Params</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Template Inst Params</em>' containment reference.
+	 * @see #getTemplateInstParams()
+	 * @generated
+	 */
+	void setTemplateInstParams(ITemplateInstParam value);
+
+	/**
+	 * Returns the value of the '<em><b>Of Template</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Of Template</em>' reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Of Template</em>' reference.
+	 * @see #setOfTemplate(IClass)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getITemplateInst_OfTemplate()
+	 * @model
+	 * @generated
+	 */
+	IClass getOfTemplate();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITemplateInst#getOfTemplate <em>Of Template</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Of Template</em>' reference.
+	 * @see #getOfTemplate()
+	 * @generated
+	 */
+	void setOfTemplate(IClass value);
+
+} // ITemplateInst
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/ITemplateInstParam.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/ITemplateInstParam.java
new file mode 100755
index 0000000..0116c7e
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/ITemplateInstParam.java
@@ -0,0 +1,195 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel;
+
+import org.eclipse.emf.ecore.EObject;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>ITemplate Inst Param</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * </p>
+ * <ul>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITemplateInstParam#getId <em>Id</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITemplateInstParam#getName <em>Name</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITemplateInstParam#getModifiedTimeWeak <em>Modified Time Weak</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITemplateInstParam#getValue <em>Value</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITemplateInstParam#getArgValue <em>Arg Value</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITemplateInstParam#getOnTheFlyValue <em>On The Fly Value</em>}</li>
+ * </ul>
+ *
+ * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getITemplateInstParam()
+ * @model
+ * @generated
+ */
+public interface ITemplateInstParam extends EObject {
+	/**
+	 * Returns the value of the '<em><b>Id</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Id</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Id</em>' attribute.
+	 * @see #setId(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getITemplateInstParam_Id()
+	 * @model
+	 * @generated
+	 */
+	String getId();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITemplateInstParam#getId <em>Id</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Id</em>' attribute.
+	 * @see #getId()
+	 * @generated
+	 */
+	void setId(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Name</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Name</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Name</em>' attribute.
+	 * @see #setName(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getITemplateInstParam_Name()
+	 * @model
+	 * @generated
+	 */
+	String getName();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITemplateInstParam#getName <em>Name</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Name</em>' attribute.
+	 * @see #getName()
+	 * @generated
+	 */
+	void setName(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Modified Time Weak</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Modified Time Weak</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Modified Time Weak</em>' attribute.
+	 * @see #setModifiedTimeWeak(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getITemplateInstParam_ModifiedTimeWeak()
+	 * @model
+	 * @generated
+	 */
+	String getModifiedTimeWeak();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITemplateInstParam#getModifiedTimeWeak <em>Modified Time Weak</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Modified Time Weak</em>' attribute.
+	 * @see #getModifiedTimeWeak()
+	 * @generated
+	 */
+	void setModifiedTimeWeak(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Value</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Value</em>' reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Value</em>' reference.
+	 * @see #setValue(IClass)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getITemplateInstParam_Value()
+	 * @model
+	 * @generated
+	 */
+	IClass getValue();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITemplateInstParam#getValue <em>Value</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Value</em>' reference.
+	 * @see #getValue()
+	 * @generated
+	 */
+	void setValue(IClass value);
+
+	/**
+	 * Returns the value of the '<em><b>Arg Value</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Arg Value</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Arg Value</em>' attribute.
+	 * @see #setArgValue(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getITemplateInstParam_ArgValue()
+	 * @model
+	 * @generated
+	 */
+	String getArgValue();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITemplateInstParam#getArgValue <em>Arg Value</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Arg Value</em>' attribute.
+	 * @see #getArgValue()
+	 * @generated
+	 */
+	void setArgValue(String value);
+
+	/**
+	 * Returns the value of the '<em><b>On The Fly Value</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>On The Fly Value</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>On The Fly Value</em>' attribute.
+	 * @see #setOnTheFlyValue(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getITemplateInstParam_OnTheFlyValue()
+	 * @model
+	 * @generated
+	 */
+	String getOnTheFlyValue();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITemplateInstParam#getOnTheFlyValue <em>On The Fly Value</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>On The Fly Value</em>' attribute.
+	 * @see #getOnTheFlyValue()
+	 * @generated
+	 */
+	void setOnTheFlyValue(String value);
+
+} // ITemplateInstParam
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/ITemplateInstantiation.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/ITemplateInstantiation.java
new file mode 100755
index 0000000..10c67a3
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/ITemplateInstantiation.java
@@ -0,0 +1,27 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel;
+
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>ITemplate Instantiation</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ *
+ * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getITemplateInstantiation()
+ * @model
+ * @generated
+ */
+public interface ITemplateInstantiation extends IModelElement {
+} // ITemplateInstantiation
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/ITemplateInstantiationParameter.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/ITemplateInstantiationParameter.java
new file mode 100755
index 0000000..a5cfcde
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/ITemplateInstantiationParameter.java
@@ -0,0 +1,27 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel;
+
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>ITemplate Instantiation Parameter</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ *
+ * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getITemplateInstantiationParameter()
+ * @model
+ * @generated
+ */
+public interface ITemplateInstantiationParameter extends IModelElement {
+} // ITemplateInstantiationParameter
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/ITemplateParameter.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/ITemplateParameter.java
new file mode 100755
index 0000000..61131f7
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/ITemplateParameter.java
@@ -0,0 +1,158 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel;
+
+import org.eclipse.emf.common.util.EList;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>ITemplate Parameter</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * </p>
+ * <ul>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITemplateParameter#getId <em>Id</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITemplateParameter#getName <em>Name</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITemplateParameter#getMyState <em>My State</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITemplateParameter#getModifiedTimeWeak <em>Modified Time Weak</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITemplateParameter#getRepresentative <em>Representative</em>}</li>
+ * </ul>
+ *
+ * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getITemplateParameter()
+ * @model
+ * @generated
+ */
+public interface ITemplateParameter extends IVariable {
+	/**
+	 * Returns the value of the '<em><b>Id</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Id</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Id</em>' attribute.
+	 * @see #setId(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getITemplateParameter_Id()
+	 * @model
+	 * @generated
+	 */
+	String getId();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITemplateParameter#getId <em>Id</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Id</em>' attribute.
+	 * @see #getId()
+	 * @generated
+	 */
+	void setId(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Name</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Name</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Name</em>' attribute.
+	 * @see #setName(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getITemplateParameter_Name()
+	 * @model
+	 * @generated
+	 */
+	String getName();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITemplateParameter#getName <em>Name</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Name</em>' attribute.
+	 * @see #getName()
+	 * @generated
+	 */
+	void setName(String value);
+
+	/**
+	 * Returns the value of the '<em><b>My State</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>My State</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>My State</em>' attribute.
+	 * @see #setMyState(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getITemplateParameter_MyState()
+	 * @model
+	 * @generated
+	 */
+	String getMyState();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITemplateParameter#getMyState <em>My State</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>My State</em>' attribute.
+	 * @see #getMyState()
+	 * @generated
+	 */
+	void setMyState(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Modified Time Weak</b></em>' attribute list.
+	 * The list contents are of type {@link java.lang.String}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Modified Time Weak</em>' attribute list isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Modified Time Weak</em>' attribute list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getITemplateParameter_ModifiedTimeWeak()
+	 * @model unique="false"
+	 * @generated
+	 */
+	EList<String> getModifiedTimeWeak();
+
+	/**
+	 * Returns the value of the '<em><b>Representative</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Representative</em>' reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Representative</em>' reference.
+	 * @see #setRepresentative(IClass)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getITemplateParameter_Representative()
+	 * @model
+	 * @generated
+	 */
+	IClass getRepresentative();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITemplateParameter#getRepresentative <em>Representative</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Representative</em>' reference.
+	 * @see #getRepresentative()
+	 * @generated
+	 */
+	void setRepresentative(IClass value);
+
+} // ITemplateParameter
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/ITimeEvent.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/ITimeEvent.java
new file mode 100755
index 0000000..1032f27
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/ITimeEvent.java
@@ -0,0 +1,266 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel;
+
+import org.eclipse.emf.common.util.EList;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>ITime Event</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * </p>
+ * <ul>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITimeEvent#getId <em>Id</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITimeEvent#getMyState <em>My State</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITimeEvent#getName <em>Name</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITimeEvent#getModifiedTimeWeak <em>Modified Time Weak</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITimeEvent#getParent <em>Parent</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITimeEvent#getStateType <em>State Type</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITimeEvent#getDefaultTrans <em>Default Trans</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITimeEvent#getDurationTime <em>Duration Time</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITimeEvent#getSwimlane <em>Swimlane</em>}</li>
+ * </ul>
+ *
+ * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getITimeEvent()
+ * @model
+ * @generated
+ */
+public interface ITimeEvent extends ItsTargetType {
+	/**
+	 * Returns the value of the '<em><b>Id</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Id</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Id</em>' attribute.
+	 * @see #setId(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getITimeEvent_Id()
+	 * @model
+	 * @generated
+	 */
+	String getId();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITimeEvent#getId <em>Id</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Id</em>' attribute.
+	 * @see #getId()
+	 * @generated
+	 */
+	void setId(String value);
+
+	/**
+	 * Returns the value of the '<em><b>My State</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>My State</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>My State</em>' attribute.
+	 * @see #setMyState(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getITimeEvent_MyState()
+	 * @model
+	 * @generated
+	 */
+	String getMyState();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITimeEvent#getMyState <em>My State</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>My State</em>' attribute.
+	 * @see #getMyState()
+	 * @generated
+	 */
+	void setMyState(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Name</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Name</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Name</em>' attribute.
+	 * @see #setName(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getITimeEvent_Name()
+	 * @model
+	 * @generated
+	 */
+	String getName();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITimeEvent#getName <em>Name</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Name</em>' attribute.
+	 * @see #getName()
+	 * @generated
+	 */
+	void setName(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Modified Time Weak</b></em>' attribute list.
+	 * The list contents are of type {@link java.lang.String}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Modified Time Weak</em>' attribute list isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Modified Time Weak</em>' attribute list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getITimeEvent_ModifiedTimeWeak()
+	 * @model unique="false"
+	 * @generated
+	 */
+	EList<String> getModifiedTimeWeak();
+
+	/**
+	 * Returns the value of the '<em><b>Parent</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Parent</em>' reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Parent</em>' reference.
+	 * @see #setParent(IState)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getITimeEvent_Parent()
+	 * @model
+	 * @generated
+	 */
+	IState getParent();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITimeEvent#getParent <em>Parent</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Parent</em>' reference.
+	 * @see #getParent()
+	 * @generated
+	 */
+	void setParent(IState value);
+
+	/**
+	 * Returns the value of the '<em><b>State Type</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>State 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>State Type</em>' attribute.
+	 * @see #setStateType(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getITimeEvent_StateType()
+	 * @model
+	 * @generated
+	 */
+	String getStateType();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITimeEvent#getStateType <em>State Type</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>State Type</em>' attribute.
+	 * @see #getStateType()
+	 * @generated
+	 */
+	void setStateType(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Default Trans</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Default Trans</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Default Trans</em>' attribute.
+	 * @see #setDefaultTrans(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getITimeEvent_DefaultTrans()
+	 * @model
+	 * @generated
+	 */
+	String getDefaultTrans();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITimeEvent#getDefaultTrans <em>Default Trans</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Default Trans</em>' attribute.
+	 * @see #getDefaultTrans()
+	 * @generated
+	 */
+	void setDefaultTrans(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Duration Time</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Duration Time</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Duration Time</em>' attribute.
+	 * @see #setDurationTime(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getITimeEvent_DurationTime()
+	 * @model
+	 * @generated
+	 */
+	String getDurationTime();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITimeEvent#getDurationTime <em>Duration Time</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Duration Time</em>' attribute.
+	 * @see #getDurationTime()
+	 * @generated
+	 */
+	void setDurationTime(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Swimlane</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Swimlane</em>' reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Swimlane</em>' reference.
+	 * @see #setSwimlane(ISwimlane)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getITimeEvent_Swimlane()
+	 * @model
+	 * @generated
+	 */
+	ISwimlane getSwimlane();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITimeEvent#getSwimlane <em>Swimlane</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Swimlane</em>' reference.
+	 * @see #getSwimlane()
+	 * @generated
+	 */
+	void setSwimlane(ISwimlane value);
+
+} // ITimeEvent
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/ITimeout.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/ITimeout.java
new file mode 100755
index 0000000..32b7c36
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/ITimeout.java
@@ -0,0 +1,86 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel;
+
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>ITimeout</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * </p>
+ * <ul>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITimeout#getTime <em>Time</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITimeout#getInheritsFromHandle <em>Inherits From Handle</em>}</li>
+ * </ul>
+ *
+ * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getITimeout()
+ * @model
+ * @generated
+ */
+public interface ITimeout extends ItsTriggerType {
+	/**
+	 * Returns the value of the '<em><b>Time</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Time</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Time</em>' attribute.
+	 * @see #setTime(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getITimeout_Time()
+	 * @model
+	 * @generated
+	 */
+	String getTime();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITimeout#getTime <em>Time</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Time</em>' attribute.
+	 * @see #getTime()
+	 * @generated
+	 */
+	void setTime(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Inherits From Handle</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Inherits From Handle</em>' reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Inherits From Handle</em>' reference.
+	 * @see #setInheritsFromHandle(ITimeout)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getITimeout_InheritsFromHandle()
+	 * @model
+	 * @generated
+	 */
+	ITimeout getInheritsFromHandle();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITimeout#getInheritsFromHandle <em>Inherits From Handle</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Inherits From Handle</em>' reference.
+	 * @see #getInheritsFromHandle()
+	 * @generated
+	 */
+	void setInheritsFromHandle(ITimeout value);
+
+} // ITimeout
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/ITransition.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/ITransition.java
new file mode 100755
index 0000000..8e0df37
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/ITransition.java
@@ -0,0 +1,131 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel;
+
+import org.eclipse.emf.common.util.EList;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>ITransition</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * </p>
+ * <ul>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITransition#getItsSource <em>Its Source</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITransition#getInheritsFromHandle <em>Inherits From Handle</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITransition#getDependencies <em>Dependencies</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITransition#getStereotypes <em>Stereotypes</em>}</li>
+ * </ul>
+ *
+ * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getITransition()
+ * @model
+ * @generated
+ */
+public interface ITransition extends IModelElement, TransitionsType, DependsOnType, TargetType {
+	/**
+	 * Returns the value of the '<em><b>Its Source</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Its Source</em>' reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Its Source</em>' reference.
+	 * @see #setItsSource(ItsTargetType)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getITransition_ItsSource()
+	 * @model
+	 * @generated
+	 */
+	ItsTargetType getItsSource();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITransition#getItsSource <em>Its Source</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Its Source</em>' reference.
+	 * @see #getItsSource()
+	 * @generated
+	 */
+	void setItsSource(ItsTargetType value);
+
+	/**
+	 * Returns the value of the '<em><b>Inherits From Handle</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Inherits From Handle</em>' reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Inherits From Handle</em>' reference.
+	 * @see #setInheritsFromHandle(ITransition)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getITransition_InheritsFromHandle()
+	 * @model
+	 * @generated
+	 */
+	ITransition getInheritsFromHandle();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITransition#getInheritsFromHandle <em>Inherits From Handle</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Inherits From Handle</em>' reference.
+	 * @see #getInheritsFromHandle()
+	 * @generated
+	 */
+	void setInheritsFromHandle(ITransition value);
+
+	/**
+	 * Returns the value of the '<em><b>Dependencies</b></em>' containment reference list.
+	 * The list contents are of type {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IDependency}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Dependencies</em>' containment reference list isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Dependencies</em>' containment reference list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getITransition_Dependencies()
+	 * @model containment="true" resolveProxies="true"
+	 * @generated
+	 */
+	EList<IDependency> getDependencies();
+
+	/**
+	 * Returns the value of the '<em><b>Stereotypes</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Stereotypes</em>' reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Stereotypes</em>' reference.
+	 * @see #setStereotypes(IClassifier)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getITransition_Stereotypes()
+	 * @model
+	 * @generated
+	 */
+	IClassifier getStereotypes();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITransition#getStereotypes <em>Stereotypes</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Stereotypes</em>' reference.
+	 * @see #getStereotypes()
+	 * @generated
+	 */
+	void setStereotypes(IClassifier value);
+
+} // ITransition
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/ITrigger.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/ITrigger.java
new file mode 100755
index 0000000..1443e8b
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/ITrigger.java
@@ -0,0 +1,27 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel;
+
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>ITrigger</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ *
+ * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getITrigger()
+ * @model
+ * @generated
+ */
+public interface ITrigger extends IModelElement {
+} // ITrigger
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/ITriggered.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/ITriggered.java
new file mode 100755
index 0000000..ef36e93
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/ITriggered.java
@@ -0,0 +1,283 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel;
+
+import org.eclipse.emf.common.util.EList;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>ITriggered</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * </p>
+ * <ul>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITriggered#getId <em>Id</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITriggered#getName <em>Name</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITriggered#getArgs <em>Args</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITriggered#getReturnType <em>Return Type</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITriggered#getAbstract <em>Abstract</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITriggered#getFinal <em>Final</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITriggered#getConcurrency <em>Concurrency</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITriggered#getProtection <em>Protection</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITriggered#getModifiedTimeWeak <em>Modified Time Weak</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITriggered#getMyState <em>My State</em>}</li>
+ * </ul>
+ *
+ * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getITriggered()
+ * @model
+ * @generated
+ */
+public interface ITriggered extends OperationsType, M_pFormalMessageType, ItemsType, IModelElement {
+	/**
+	 * Returns the value of the '<em><b>Id</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Id</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Id</em>' attribute.
+	 * @see #setId(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getITriggered_Id()
+	 * @model
+	 * @generated
+	 */
+	String getId();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITriggered#getId <em>Id</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Id</em>' attribute.
+	 * @see #getId()
+	 * @generated
+	 */
+	void setId(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Name</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Name</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Name</em>' attribute.
+	 * @see #setName(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getITriggered_Name()
+	 * @model
+	 * @generated
+	 */
+	String getName();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITriggered#getName <em>Name</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Name</em>' attribute.
+	 * @see #getName()
+	 * @generated
+	 */
+	void setName(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Args</b></em>' containment reference list.
+	 * The list contents are of type {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IVariable}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Args</em>' containment reference list isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Args</em>' containment reference list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getITriggered_Args()
+	 * @model containment="true" resolveProxies="true"
+	 * @generated
+	 */
+	EList<IVariable> getArgs();
+
+	/**
+	 * Returns the value of the '<em><b>Return Type</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Return Type</em>' reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Return Type</em>' reference.
+	 * @see #setReturnType(IType)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getITriggered_ReturnType()
+	 * @model
+	 * @generated
+	 */
+	IType getReturnType();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITriggered#getReturnType <em>Return Type</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Return Type</em>' reference.
+	 * @see #getReturnType()
+	 * @generated
+	 */
+	void setReturnType(IType value);
+
+	/**
+	 * Returns the value of the '<em><b>Abstract</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Abstract</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Abstract</em>' attribute.
+	 * @see #setAbstract(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getITriggered_Abstract()
+	 * @model
+	 * @generated
+	 */
+	String getAbstract();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITriggered#getAbstract <em>Abstract</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Abstract</em>' attribute.
+	 * @see #getAbstract()
+	 * @generated
+	 */
+	void setAbstract(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Final</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Final</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Final</em>' attribute.
+	 * @see #setFinal(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getITriggered_Final()
+	 * @model
+	 * @generated
+	 */
+	String getFinal();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITriggered#getFinal <em>Final</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Final</em>' attribute.
+	 * @see #getFinal()
+	 * @generated
+	 */
+	void setFinal(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Concurrency</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Concurrency</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Concurrency</em>' attribute.
+	 * @see #setConcurrency(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getITriggered_Concurrency()
+	 * @model
+	 * @generated
+	 */
+	String getConcurrency();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITriggered#getConcurrency <em>Concurrency</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Concurrency</em>' attribute.
+	 * @see #getConcurrency()
+	 * @generated
+	 */
+	void setConcurrency(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Protection</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Protection</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Protection</em>' attribute.
+	 * @see #setProtection(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getITriggered_Protection()
+	 * @model
+	 * @generated
+	 */
+	String getProtection();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITriggered#getProtection <em>Protection</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Protection</em>' attribute.
+	 * @see #getProtection()
+	 * @generated
+	 */
+	void setProtection(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Modified Time Weak</b></em>' attribute list.
+	 * The list contents are of type {@link java.lang.String}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Modified Time Weak</em>' attribute list isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Modified Time Weak</em>' attribute list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getITriggered_ModifiedTimeWeak()
+	 * @model unique="false"
+	 * @generated
+	 */
+	EList<String> getModifiedTimeWeak();
+
+	/**
+	 * Returns the value of the '<em><b>My State</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>My State</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>My State</em>' attribute.
+	 * @see #setMyState(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getITriggered_MyState()
+	 * @model
+	 * @generated
+	 */
+	String getMyState();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITriggered#getMyState <em>My State</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>My State</em>' attribute.
+	 * @see #getMyState()
+	 * @generated
+	 */
+	void setMyState(String value);
+
+} // ITriggered
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/IType.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/IType.java
new file mode 100755
index 0000000..d14cec4
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/IType.java
@@ -0,0 +1,469 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel;
+
+import org.eclipse.emf.common.util.EList;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>IType</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * </p>
+ * <ul>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IType#getLastID <em>Last ID</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IType#getLiterals <em>Literals</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IType#getKind <em>Kind</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IType#getProperties <em>Properties</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IType#getDescription <em>Description</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IType#getDeclaration <em>Declaration</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IType#getStereotypes <em>Stereotypes</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IType#getAttrs <em>Attrs</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IType#getAssociationElements <em>Association Elements</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IType#getTags <em>Tags</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IType#getTypedefBaseType <em>Typedef Base Type</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IType#getTypedefMultiplicity <em>Typedef Multiplicity</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IType#getTypedefIsOrdered <em>Typedef Is Ordered</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IType#getTypedefIsReference <em>Typedef Is Reference</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IType#getTypedefIsConstant <em>Typedef Is Constant</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IType#getRequiremenTracabilityHandle <em>Requiremen Tracability Handle</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IType#getCodeUpdateCGTime <em>Code Update CG Time</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IType#getTheMainDiagram <em>The Main Diagram</em>}</li>
+ * </ul>
+ *
+ * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIType()
+ * @model
+ * @generated
+ */
+public interface IType extends IClassifier, DeclarativesType, DependsOnType, M_subjectType, ValueType, TargetType, M_pModelObjectType {
+	/**
+	 * Returns the value of the '<em><b>Last ID</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Last ID</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Last ID</em>' attribute.
+	 * @see #setLastID(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIType_LastID()
+	 * @model
+	 * @generated
+	 */
+	String getLastID();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IType#getLastID <em>Last ID</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Last ID</em>' attribute.
+	 * @see #getLastID()
+	 * @generated
+	 */
+	void setLastID(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Literals</b></em>' containment reference list.
+	 * The list contents are of type {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IEnumerationLiteral}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Literals</em>' containment reference list isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Literals</em>' containment reference list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIType_Literals()
+	 * @model containment="true" resolveProxies="true"
+	 * @generated
+	 */
+	EList<IEnumerationLiteral> getLiterals();
+
+	/**
+	 * Returns the value of the '<em><b>Kind</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Kind</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Kind</em>' attribute.
+	 * @see #setKind(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIType_Kind()
+	 * @model
+	 * @generated
+	 */
+	String getKind();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IType#getKind <em>Kind</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Kind</em>' attribute.
+	 * @see #getKind()
+	 * @generated
+	 */
+	void setKind(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Properties</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Properties</em>' containment reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Properties</em>' containment reference.
+	 * @see #setProperties(IPropertyContainer)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIType_Properties()
+	 * @model containment="true" resolveProxies="true"
+	 * @generated
+	 */
+	IPropertyContainer getProperties();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IType#getProperties <em>Properties</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Properties</em>' containment reference.
+	 * @see #getProperties()
+	 * @generated
+	 */
+	void setProperties(IPropertyContainer value);
+
+	/**
+	 * Returns the value of the '<em><b>Description</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Description</em>' containment reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Description</em>' containment reference.
+	 * @see #setDescription(IDescription)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIType_Description()
+	 * @model containment="true" resolveProxies="true"
+	 * @generated
+	 */
+	IDescription getDescription();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IType#getDescription <em>Description</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Description</em>' containment reference.
+	 * @see #getDescription()
+	 * @generated
+	 */
+	void setDescription(IDescription value);
+
+	/**
+	 * Returns the value of the '<em><b>Declaration</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Declaration</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Declaration</em>' attribute.
+	 * @see #setDeclaration(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIType_Declaration()
+	 * @model
+	 * @generated
+	 */
+	String getDeclaration();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IType#getDeclaration <em>Declaration</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Declaration</em>' attribute.
+	 * @see #getDeclaration()
+	 * @generated
+	 */
+	void setDeclaration(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Stereotypes</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Stereotypes</em>' reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Stereotypes</em>' reference.
+	 * @see #setStereotypes(IUnit)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIType_Stereotypes()
+	 * @model
+	 * @generated
+	 */
+	IUnit getStereotypes();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IType#getStereotypes <em>Stereotypes</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Stereotypes</em>' reference.
+	 * @see #getStereotypes()
+	 * @generated
+	 */
+	void setStereotypes(IUnit value);
+
+	/**
+	 * Returns the value of the '<em><b>Attrs</b></em>' containment reference list.
+	 * The list contents are of type {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IAttribute}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Attrs</em>' containment reference list isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Attrs</em>' containment reference list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIType_Attrs()
+	 * @model containment="true" resolveProxies="true"
+	 * @generated
+	 */
+	EList<IAttribute> getAttrs();
+
+	/**
+	 * Returns the value of the '<em><b>Association Elements</b></em>' reference list.
+	 * The list contents are of type {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UnknownType}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Association Elements</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>Association Elements</em>' reference list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIType_AssociationElements()
+	 * @model
+	 * @generated
+	 */
+	EList<UnknownType> getAssociationElements();
+
+	/**
+	 * Returns the value of the '<em><b>Tags</b></em>' containment reference list.
+	 * The list contents are of type {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITag}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Tags</em>' containment reference list isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Tags</em>' containment reference list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIType_Tags()
+	 * @model containment="true" resolveProxies="true"
+	 * @generated
+	 */
+	EList<ITag> getTags();
+
+	/**
+	 * Returns the value of the '<em><b>Typedef Base Type</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Typedef Base Type</em>' reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Typedef Base Type</em>' reference.
+	 * @see #setTypedefBaseType(IUnit)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIType_TypedefBaseType()
+	 * @model
+	 * @generated
+	 */
+	IUnit getTypedefBaseType();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IType#getTypedefBaseType <em>Typedef Base Type</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Typedef Base Type</em>' reference.
+	 * @see #getTypedefBaseType()
+	 * @generated
+	 */
+	void setTypedefBaseType(IUnit value);
+
+	/**
+	 * Returns the value of the '<em><b>Typedef Multiplicity</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Typedef Multiplicity</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Typedef Multiplicity</em>' attribute.
+	 * @see #setTypedefMultiplicity(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIType_TypedefMultiplicity()
+	 * @model
+	 * @generated
+	 */
+	String getTypedefMultiplicity();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IType#getTypedefMultiplicity <em>Typedef Multiplicity</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Typedef Multiplicity</em>' attribute.
+	 * @see #getTypedefMultiplicity()
+	 * @generated
+	 */
+	void setTypedefMultiplicity(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Typedef Is Ordered</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Typedef Is Ordered</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Typedef Is Ordered</em>' attribute.
+	 * @see #setTypedefIsOrdered(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIType_TypedefIsOrdered()
+	 * @model
+	 * @generated
+	 */
+	String getTypedefIsOrdered();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IType#getTypedefIsOrdered <em>Typedef Is Ordered</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Typedef Is Ordered</em>' attribute.
+	 * @see #getTypedefIsOrdered()
+	 * @generated
+	 */
+	void setTypedefIsOrdered(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Typedef Is Reference</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Typedef Is Reference</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Typedef Is Reference</em>' attribute.
+	 * @see #setTypedefIsReference(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIType_TypedefIsReference()
+	 * @model
+	 * @generated
+	 */
+	String getTypedefIsReference();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IType#getTypedefIsReference <em>Typedef Is Reference</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Typedef Is Reference</em>' attribute.
+	 * @see #getTypedefIsReference()
+	 * @generated
+	 */
+	void setTypedefIsReference(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Typedef Is Constant</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Typedef Is Constant</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Typedef Is Constant</em>' attribute.
+	 * @see #setTypedefIsConstant(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIType_TypedefIsConstant()
+	 * @model
+	 * @generated
+	 */
+	String getTypedefIsConstant();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IType#getTypedefIsConstant <em>Typedef Is Constant</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Typedef Is Constant</em>' attribute.
+	 * @see #getTypedefIsConstant()
+	 * @generated
+	 */
+	void setTypedefIsConstant(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Requiremen Tracability Handle</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Requiremen Tracability Handle</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Requiremen Tracability Handle</em>' attribute.
+	 * @see #setRequiremenTracabilityHandle(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIType_RequiremenTracabilityHandle()
+	 * @model
+	 * @generated
+	 */
+	String getRequiremenTracabilityHandle();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IType#getRequiremenTracabilityHandle <em>Requiremen Tracability Handle</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Requiremen Tracability Handle</em>' attribute.
+	 * @see #getRequiremenTracabilityHandle()
+	 * @generated
+	 */
+	void setRequiremenTracabilityHandle(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Code Update CG Time</b></em>' attribute list.
+	 * The list contents are of type {@link java.lang.String}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Code Update CG Time</em>' attribute list isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Code Update CG Time</em>' attribute list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIType_CodeUpdateCGTime()
+	 * @model unique="false"
+	 * @generated
+	 */
+	EList<String> getCodeUpdateCGTime();
+
+	/**
+	 * Returns the value of the '<em><b>The Main Diagram</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>The Main Diagram</em>' reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>The Main Diagram</em>' reference.
+	 * @see #setTheMainDiagram(IDiagram)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIType_TheMainDiagram()
+	 * @model
+	 * @generated
+	 */
+	IDiagram getTheMainDiagram();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IType#getTheMainDiagram <em>The Main Diagram</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>The Main Diagram</em>' reference.
+	 * @see #getTheMainDiagram()
+	 * @generated
+	 */
+	void setTheMainDiagram(IDiagram value);
+
+} // IType
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/IUCDiagram.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/IUCDiagram.java
new file mode 100755
index 0000000..216bc98
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/IUCDiagram.java
@@ -0,0 +1,113 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel;
+
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>IUC Diagram</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * </p>
+ * <ul>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IUCDiagram#getProperties <em>Properties</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IUCDiagram#getGraphicChart <em>Graphic Chart</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IUCDiagram#getModifiedTimeWeak <em>Modified Time Weak</em>}</li>
+ * </ul>
+ *
+ * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIUCDiagram()
+ * @model
+ * @generated
+ */
+public interface IUCDiagram extends TheMainDiagramType, DependsOnType, DeclarativesType {
+	/**
+	 * Returns the value of the '<em><b>Properties</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Properties</em>' containment reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Properties</em>' containment reference.
+	 * @see #setProperties(IPropertyContainer)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIUCDiagram_Properties()
+	 * @model containment="true" resolveProxies="true"
+	 * @generated
+	 */
+	IPropertyContainer getProperties();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IUCDiagram#getProperties <em>Properties</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Properties</em>' containment reference.
+	 * @see #getProperties()
+	 * @generated
+	 */
+	void setProperties(IPropertyContainer value);
+
+	/**
+	 * Returns the value of the '<em><b>Graphic Chart</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Graphic Chart</em>' containment reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Graphic Chart</em>' containment reference.
+	 * @see #setGraphicChart(CGIClassChart)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIUCDiagram_GraphicChart()
+	 * @model containment="true" resolveProxies="true"
+	 * @generated
+	 */
+	CGIClassChart getGraphicChart();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IUCDiagram#getGraphicChart <em>Graphic Chart</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Graphic Chart</em>' containment reference.
+	 * @see #getGraphicChart()
+	 * @generated
+	 */
+	void setGraphicChart(CGIClassChart value);
+
+	/**
+	 * Returns the value of the '<em><b>Modified Time Weak</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Modified Time Weak</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Modified Time Weak</em>' attribute.
+	 * @see #setModifiedTimeWeak(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIUCDiagram_ModifiedTimeWeak()
+	 * @model
+	 * @generated
+	 */
+	String getModifiedTimeWeak();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IUCDiagram#getModifiedTimeWeak <em>Modified Time Weak</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Modified Time Weak</em>' attribute.
+	 * @see #getModifiedTimeWeak()
+	 * @generated
+	 */
+	void setModifiedTimeWeak(String value);
+
+} // IUCDiagram
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/IUnit.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/IUnit.java
new file mode 100755
index 0000000..5b690eb
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/IUnit.java
@@ -0,0 +1,27 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel;
+
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>IUnit</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ *
+ * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIUnit()
+ * @model
+ * @generated
+ */
+public interface IUnit extends IModelElement {
+} // IUnit
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/IUseCase.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/IUseCase.java
new file mode 100755
index 0000000..75c5119
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/IUseCase.java
@@ -0,0 +1,720 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel;
+
+import org.eclipse.emf.common.util.EList;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>IUse Case</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * </p>
+ * <ul>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IUseCase#getId <em>Id</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IUseCase#getMyState <em>My State</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IUseCase#getName <em>Name</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IUseCase#getTheMainDiagram <em>The Main Diagram</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IUseCase#getHyperLinks <em>Hyper Links</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IUseCase#getWeakCGTime <em>Weak CG Time</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IUseCase#getStrongCGTime <em>Strong CG Time</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IUseCase#getClassModifier <em>Class Modifier</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IUseCase#getDescription <em>Description</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IUseCase#getInheritances <em>Inheritances</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IUseCase#getAssociations <em>Associations</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IUseCase#getUseCaseStereoTypes <em>Use Case Stereo Types</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IUseCase#getEntryPoints <em>Entry Points</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IUseCase#getDependencies <em>Dependencies</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IUseCase#getLastID <em>Last ID</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IUseCase#getDiagrams <em>Diagrams</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IUseCase#getModifiedTimeWeak <em>Modified Time Weak</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IUseCase#getRequiremenTracabilityHandle <em>Requiremen Tracability Handle</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IUseCase#getCmheader <em>Cmheader</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IUseCase#getOwnerHandle <em>Owner Handle</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IUseCase#getDeclaratives <em>Declaratives</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IUseCase#getOperations <em>Operations</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IUseCase#getStateCharts <em>State Charts</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IUseCase#getItsStateChart <em>Its State Chart</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IUseCase#getAttrs <em>Attrs</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IUseCase#getAnnotations <em>Annotations</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IUseCase#getEmbededFiles <em>Embeded Files</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IUseCase#getObjectCreation <em>Object Creation</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IUseCase#getUmlDependencyID <em>Uml Dependency ID</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IUseCase#getObjectLinks <em>Object Links</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IUseCase#getProperties <em>Properties</em>}</li>
+ * </ul>
+ *
+ * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIUseCase()
+ * @model
+ * @generated
+ */
+public interface IUseCase extends IClassifier, DependsOnType, End2_Type, TargetType {
+	/**
+	 * Returns the value of the '<em><b>Id</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Id</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Id</em>' attribute.
+	 * @see #setId(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIUseCase_Id()
+	 * @model
+	 * @generated
+	 */
+	String getId();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IUseCase#getId <em>Id</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Id</em>' attribute.
+	 * @see #getId()
+	 * @generated
+	 */
+	void setId(String value);
+
+	/**
+	 * Returns the value of the '<em><b>My State</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>My State</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>My State</em>' attribute.
+	 * @see #setMyState(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIUseCase_MyState()
+	 * @model
+	 * @generated
+	 */
+	String getMyState();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IUseCase#getMyState <em>My State</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>My State</em>' attribute.
+	 * @see #getMyState()
+	 * @generated
+	 */
+	void setMyState(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Name</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Name</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Name</em>' attribute.
+	 * @see #setName(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIUseCase_Name()
+	 * @model
+	 * @generated
+	 */
+	String getName();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IUseCase#getName <em>Name</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Name</em>' attribute.
+	 * @see #getName()
+	 * @generated
+	 */
+	void setName(String value);
+
+	/**
+	 * Returns the value of the '<em><b>The Main Diagram</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>The Main Diagram</em>' reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>The Main Diagram</em>' reference.
+	 * @see #setTheMainDiagram(TheMainDiagramType)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIUseCase_TheMainDiagram()
+	 * @model
+	 * @generated
+	 */
+	TheMainDiagramType getTheMainDiagram();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IUseCase#getTheMainDiagram <em>The Main Diagram</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>The Main Diagram</em>' reference.
+	 * @see #getTheMainDiagram()
+	 * @generated
+	 */
+	void setTheMainDiagram(TheMainDiagramType value);
+
+	/**
+	 * Returns the value of the '<em><b>Hyper Links</b></em>' containment reference list.
+	 * The list contents are of type {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMHyperLink}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Hyper Links</em>' containment reference list isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Hyper Links</em>' containment reference list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIUseCase_HyperLinks()
+	 * @model containment="true" resolveProxies="true"
+	 * @generated
+	 */
+	EList<IMHyperLink> getHyperLinks();
+
+	/**
+	 * Returns the value of the '<em><b>Weak CG Time</b></em>' attribute list.
+	 * The list contents are of type {@link java.lang.String}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Weak CG Time</em>' attribute list isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Weak CG Time</em>' attribute list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIUseCase_WeakCGTime()
+	 * @model unique="false"
+	 * @generated
+	 */
+	EList<String> getWeakCGTime();
+
+	/**
+	 * Returns the value of the '<em><b>Strong CG Time</b></em>' attribute list.
+	 * The list contents are of type {@link java.lang.String}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Strong CG Time</em>' attribute list isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Strong CG Time</em>' attribute list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIUseCase_StrongCGTime()
+	 * @model unique="false"
+	 * @generated
+	 */
+	EList<String> getStrongCGTime();
+
+	/**
+	 * Returns the value of the '<em><b>Class Modifier</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Class Modifier</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Class Modifier</em>' attribute.
+	 * @see #setClassModifier(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIUseCase_ClassModifier()
+	 * @model
+	 * @generated
+	 */
+	String getClassModifier();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IUseCase#getClassModifier <em>Class Modifier</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Class Modifier</em>' attribute.
+	 * @see #getClassModifier()
+	 * @generated
+	 */
+	void setClassModifier(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Description</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Description</em>' containment reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Description</em>' containment reference.
+	 * @see #setDescription(IDescription)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIUseCase_Description()
+	 * @model containment="true" resolveProxies="true"
+	 * @generated
+	 */
+	IDescription getDescription();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IUseCase#getDescription <em>Description</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Description</em>' containment reference.
+	 * @see #getDescription()
+	 * @generated
+	 */
+	void setDescription(IDescription value);
+
+	/**
+	 * Returns the value of the '<em><b>Inheritances</b></em>' containment reference list.
+	 * The list contents are of type {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IGeneralization}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Inheritances</em>' containment reference list isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Inheritances</em>' containment reference list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIUseCase_Inheritances()
+	 * @model containment="true" resolveProxies="true"
+	 * @generated
+	 */
+	EList<IGeneralization> getInheritances();
+
+	/**
+	 * Returns the value of the '<em><b>Associations</b></em>' containment reference list.
+	 * The list contents are of type {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.AssociationsType}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Associations</em>' containment reference list isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Associations</em>' containment reference list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIUseCase_Associations()
+	 * @model containment="true" resolveProxies="true"
+	 * @generated
+	 */
+	EList<AssociationsType> getAssociations();
+
+	/**
+	 * Returns the value of the '<em><b>Use Case Stereo Types</b></em>' containment reference list.
+	 * The list contents are of type {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IUseCaseStereoType}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Use Case Stereo Types</em>' containment reference list isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Use Case Stereo Types</em>' containment reference list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIUseCase_UseCaseStereoTypes()
+	 * @model containment="true" resolveProxies="true"
+	 * @generated
+	 */
+	EList<IUseCaseStereoType> getUseCaseStereoTypes();
+
+	/**
+	 * Returns the value of the '<em><b>Entry Points</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Entry Points</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Entry Points</em>' attribute.
+	 * @see #setEntryPoints(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIUseCase_EntryPoints()
+	 * @model
+	 * @generated
+	 */
+	String getEntryPoints();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IUseCase#getEntryPoints <em>Entry Points</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Entry Points</em>' attribute.
+	 * @see #getEntryPoints()
+	 * @generated
+	 */
+	void setEntryPoints(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Dependencies</b></em>' containment reference list.
+	 * The list contents are of type {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IDependency}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Dependencies</em>' containment reference list isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Dependencies</em>' containment reference list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIUseCase_Dependencies()
+	 * @model containment="true" resolveProxies="true"
+	 * @generated
+	 */
+	EList<IDependency> getDependencies();
+
+	/**
+	 * Returns the value of the '<em><b>Last ID</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Last ID</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Last ID</em>' attribute.
+	 * @see #setLastID(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIUseCase_LastID()
+	 * @model
+	 * @generated
+	 */
+	String getLastID();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IUseCase#getLastID <em>Last ID</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Last ID</em>' attribute.
+	 * @see #getLastID()
+	 * @generated
+	 */
+	void setLastID(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Diagrams</b></em>' reference list.
+	 * The list contents are of type {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.DeclarativesType}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Diagrams</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>Diagrams</em>' reference list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIUseCase_Diagrams()
+	 * @model
+	 * @generated
+	 */
+	EList<DeclarativesType> getDiagrams();
+
+	/**
+	 * Returns the value of the '<em><b>Modified Time Weak</b></em>' attribute list.
+	 * The list contents are of type {@link java.lang.String}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Modified Time Weak</em>' attribute list isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Modified Time Weak</em>' attribute list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIUseCase_ModifiedTimeWeak()
+	 * @model unique="false"
+	 * @generated
+	 */
+	EList<String> getModifiedTimeWeak();
+
+	/**
+	 * Returns the value of the '<em><b>Requiremen Tracability Handle</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Requiremen Tracability Handle</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Requiremen Tracability Handle</em>' attribute.
+	 * @see #setRequiremenTracabilityHandle(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIUseCase_RequiremenTracabilityHandle()
+	 * @model
+	 * @generated
+	 */
+	String getRequiremenTracabilityHandle();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IUseCase#getRequiremenTracabilityHandle <em>Requiremen Tracability Handle</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Requiremen Tracability Handle</em>' attribute.
+	 * @see #getRequiremenTracabilityHandle()
+	 * @generated
+	 */
+	void setRequiremenTracabilityHandle(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Cmheader</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Cmheader</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Cmheader</em>' attribute.
+	 * @see #setCmheader(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIUseCase_Cmheader()
+	 * @model
+	 * @generated
+	 */
+	String getCmheader();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IUseCase#getCmheader <em>Cmheader</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Cmheader</em>' attribute.
+	 * @see #getCmheader()
+	 * @generated
+	 */
+	void setCmheader(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Owner Handle</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Owner Handle</em>' reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Owner Handle</em>' reference.
+	 * @see #setOwnerHandle(ISubsystem)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIUseCase_OwnerHandle()
+	 * @model
+	 * @generated
+	 */
+	ISubsystem getOwnerHandle();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IUseCase#getOwnerHandle <em>Owner Handle</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Owner Handle</em>' reference.
+	 * @see #getOwnerHandle()
+	 * @generated
+	 */
+	void setOwnerHandle(ISubsystem value);
+
+	/**
+	 * Returns the value of the '<em><b>Declaratives</b></em>' containment reference list.
+	 * The list contents are of type {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.DependsOnType}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Declaratives</em>' containment reference list isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Declaratives</em>' containment reference list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIUseCase_Declaratives()
+	 * @model containment="true" resolveProxies="true"
+	 * @generated
+	 */
+	EList<DependsOnType> getDeclaratives();
+
+	/**
+	 * Returns the value of the '<em><b>Operations</b></em>' containment reference list.
+	 * The list contents are of type {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.OperationsType}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Operations</em>' containment reference list isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Operations</em>' containment reference list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIUseCase_Operations()
+	 * @model containment="true" resolveProxies="true"
+	 * @generated
+	 */
+	EList<OperationsType> getOperations();
+
+	/**
+	 * Returns the value of the '<em><b>State Charts</b></em>' containment reference list.
+	 * The list contents are of type {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IActivityGraph}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>State Charts</em>' containment reference list isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>State Charts</em>' containment reference list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIUseCase_StateCharts()
+	 * @model containment="true" resolveProxies="true"
+	 * @generated
+	 */
+	EList<IActivityGraph> getStateCharts();
+
+	/**
+	 * Returns the value of the '<em><b>Its State Chart</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Its State Chart</em>' reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Its State Chart</em>' reference.
+	 * @see #setItsStateChart(NestedStateChartType)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIUseCase_ItsStateChart()
+	 * @model
+	 * @generated
+	 */
+	NestedStateChartType getItsStateChart();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IUseCase#getItsStateChart <em>Its State Chart</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Its State Chart</em>' reference.
+	 * @see #getItsStateChart()
+	 * @generated
+	 */
+	void setItsStateChart(NestedStateChartType value);
+
+	/**
+	 * Returns the value of the '<em><b>Attrs</b></em>' containment reference list.
+	 * The list contents are of type {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IAttribute}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Attrs</em>' containment reference list isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Attrs</em>' containment reference list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIUseCase_Attrs()
+	 * @model containment="true" resolveProxies="true"
+	 * @generated
+	 */
+	EList<IAttribute> getAttrs();
+
+	/**
+	 * Returns the value of the '<em><b>Annotations</b></em>' containment reference list.
+	 * The list contents are of type {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IAnnotation}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Annotations</em>' containment reference list isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Annotations</em>' containment reference list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIUseCase_Annotations()
+	 * @model containment="true" resolveProxies="true"
+	 * @generated
+	 */
+	EList<IAnnotation> getAnnotations();
+
+	/**
+	 * Returns the value of the '<em><b>Embeded Files</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Embeded Files</em>' containment reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Embeded Files</em>' containment reference.
+	 * @see #setEmbededFiles(IEmbededFile)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIUseCase_EmbededFiles()
+	 * @model containment="true" resolveProxies="true"
+	 * @generated
+	 */
+	IEmbededFile getEmbededFiles();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IUseCase#getEmbededFiles <em>Embeded Files</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Embeded Files</em>' containment reference.
+	 * @see #getEmbededFiles()
+	 * @generated
+	 */
+	void setEmbededFiles(IEmbededFile value);
+
+	/**
+	 * Returns the value of the '<em><b>Object Creation</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Object Creation</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Object Creation</em>' attribute.
+	 * @see #setObjectCreation(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIUseCase_ObjectCreation()
+	 * @model
+	 * @generated
+	 */
+	String getObjectCreation();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IUseCase#getObjectCreation <em>Object Creation</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Object Creation</em>' attribute.
+	 * @see #getObjectCreation()
+	 * @generated
+	 */
+	void setObjectCreation(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Uml Dependency ID</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Uml Dependency ID</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Uml Dependency ID</em>' attribute.
+	 * @see #setUmlDependencyID(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIUseCase_UmlDependencyID()
+	 * @model
+	 * @generated
+	 */
+	String getUmlDependencyID();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IUseCase#getUmlDependencyID <em>Uml Dependency ID</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Uml Dependency ID</em>' attribute.
+	 * @see #getUmlDependencyID()
+	 * @generated
+	 */
+	void setUmlDependencyID(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Object Links</b></em>' containment reference list.
+	 * The list contents are of type {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IObjectLink}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Object Links</em>' containment reference list isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Object Links</em>' containment reference list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIUseCase_ObjectLinks()
+	 * @model containment="true" resolveProxies="true"
+	 * @generated
+	 */
+	EList<IObjectLink> getObjectLinks();
+
+	/**
+	 * Returns the value of the '<em><b>Properties</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Properties</em>' containment reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Properties</em>' containment reference.
+	 * @see #setProperties(IPropertyContainer)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIUseCase_Properties()
+	 * @model containment="true" resolveProxies="true"
+	 * @generated
+	 */
+	IPropertyContainer getProperties();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IUseCase#getProperties <em>Properties</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Properties</em>' containment reference.
+	 * @see #getProperties()
+	 * @generated
+	 */
+	void setProperties(IPropertyContainer value);
+
+} // IUseCase
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/IUseCaseDiagram.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/IUseCaseDiagram.java
new file mode 100755
index 0000000..1909047
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/IUseCaseDiagram.java
@@ -0,0 +1,27 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel;
+
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>IUse Case Diagram</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ *
+ * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIUseCaseDiagram()
+ * @model
+ * @generated
+ */
+public interface IUseCaseDiagram extends IDiagram {
+} // IUseCaseDiagram
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/IUseCaseStereoType.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/IUseCaseStereoType.java
new file mode 100755
index 0000000..f4a8070
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/IUseCaseStereoType.java
@@ -0,0 +1,114 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel;
+
+import org.eclipse.emf.ecore.EObject;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>IUse Case Stereo Type</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * </p>
+ * <ul>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IUseCaseStereoType#getUseCase <em>Use Case</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IUseCaseStereoType#getStereoType <em>Stereo Type</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IUseCaseStereoType#getEntryPoint <em>Entry Point</em>}</li>
+ * </ul>
+ *
+ * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIUseCaseStereoType()
+ * @model
+ * @generated
+ */
+public interface IUseCaseStereoType extends EObject {
+	/**
+	 * Returns the value of the '<em><b>Use Case</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Use Case</em>' reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Use Case</em>' reference.
+	 * @see #setUseCase(IUseCase)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIUseCaseStereoType_UseCase()
+	 * @model
+	 * @generated
+	 */
+	IUseCase getUseCase();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IUseCaseStereoType#getUseCase <em>Use Case</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Use Case</em>' reference.
+	 * @see #getUseCase()
+	 * @generated
+	 */
+	void setUseCase(IUseCase value);
+
+	/**
+	 * Returns the value of the '<em><b>Stereo Type</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Stereo 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>Stereo Type</em>' attribute.
+	 * @see #setStereoType(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIUseCaseStereoType_StereoType()
+	 * @model
+	 * @generated
+	 */
+	String getStereoType();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IUseCaseStereoType#getStereoType <em>Stereo Type</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Stereo Type</em>' attribute.
+	 * @see #getStereoType()
+	 * @generated
+	 */
+	void setStereoType(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Entry Point</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Entry Point</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Entry Point</em>' attribute.
+	 * @see #setEntryPoint(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIUseCaseStereoType_EntryPoint()
+	 * @model
+	 * @generated
+	 */
+	String getEntryPoint();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IUseCaseStereoType#getEntryPoint <em>Entry Point</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Entry Point</em>' attribute.
+	 * @see #getEntryPoint()
+	 * @generated
+	 */
+	void setEntryPoint(String value);
+
+} // IUseCaseStereoType
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/IValueSpecification.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/IValueSpecification.java
new file mode 100755
index 0000000..b69890c
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/IValueSpecification.java
@@ -0,0 +1,27 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel;
+
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>IValue Specification</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ *
+ * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIValueSpecification()
+ * @model
+ * @generated
+ */
+public interface IValueSpecification extends IModelElement {
+} // IValueSpecification
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/IVariable.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/IVariable.java
new file mode 100755
index 0000000..6571fc2
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/IVariable.java
@@ -0,0 +1,86 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel;
+
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>IVariable</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * </p>
+ * <ul>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IVariable#getIsOrdered <em>Is Ordered</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IVariable#getMyTypeOf <em>My Type Of</em>}</li>
+ * </ul>
+ *
+ * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIVariable()
+ * @model
+ * @generated
+ */
+public interface IVariable extends IUnit {
+	/**
+	 * Returns the value of the '<em><b>Is Ordered</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Is Ordered</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Is Ordered</em>' attribute.
+	 * @see #setIsOrdered(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIVariable_IsOrdered()
+	 * @model
+	 * @generated
+	 */
+	String getIsOrdered();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IVariable#getIsOrdered <em>Is Ordered</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Is Ordered</em>' attribute.
+	 * @see #getIsOrdered()
+	 * @generated
+	 */
+	void setIsOrdered(String value);
+
+	/**
+	 * Returns the value of the '<em><b>My Type Of</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>My Type Of</em>' containment reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>My Type Of</em>' containment reference.
+	 * @see #setMyTypeOf(IType)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getIVariable_MyTypeOf()
+	 * @model containment="true" resolveProxies="true"
+	 * @generated
+	 */
+	IType getMyTypeOf();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IVariable#getMyTypeOf <em>My Type Of</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>My Type Of</em>' containment reference.
+	 * @see #getMyTypeOf()
+	 * @generated
+	 */
+	void setMyTypeOf(IType value);
+
+} // IVariable
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/InverseType.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/InverseType.java
new file mode 100755
index 0000000..b8ce9b7
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/InverseType.java
@@ -0,0 +1,28 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel;
+
+import org.eclipse.emf.ecore.EObject;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Inverse Type</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ *
+ * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getInverseType()
+ * @model abstract="true"
+ * @generated
+ */
+public interface InverseType extends EObject {
+} // InverseType
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/ItemsType.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/ItemsType.java
new file mode 100755
index 0000000..d645fc7
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/ItemsType.java
@@ -0,0 +1,28 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel;
+
+import org.eclipse.emf.ecore.EObject;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Items Type</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ *
+ * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getItemsType()
+ * @model abstract="true"
+ * @generated
+ */
+public interface ItemsType extends EObject {
+} // ItemsType
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/ItsLabelType.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/ItsLabelType.java
new file mode 100755
index 0000000..49e5b8d
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/ItsLabelType.java
@@ -0,0 +1,28 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel;
+
+import org.eclipse.emf.ecore.EObject;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Its Label Type</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ *
+ * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getItsLabelType()
+ * @model abstract="true"
+ * @generated
+ */
+public interface ItsLabelType extends EObject {
+} // ItsLabelType
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/ItsStateChartType.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/ItsStateChartType.java
new file mode 100755
index 0000000..92c76c6
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/ItsStateChartType.java
@@ -0,0 +1,28 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel;
+
+import org.eclipse.emf.ecore.EObject;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Its State Chart Type</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ *
+ * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getItsStateChartType()
+ * @model abstract="true"
+ * @generated
+ */
+public interface ItsStateChartType extends EObject {
+} // ItsStateChartType
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/ItsTargetType.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/ItsTargetType.java
new file mode 100755
index 0000000..f586b17
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/ItsTargetType.java
@@ -0,0 +1,28 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel;
+
+import org.eclipse.emf.ecore.EObject;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Its Target Type</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ *
+ * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getItsTargetType()
+ * @model abstract="true"
+ * @generated
+ */
+public interface ItsTargetType extends EObject {
+} // ItsTargetType
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/ItsTriggerType.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/ItsTriggerType.java
new file mode 100755
index 0000000..3506fea
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/ItsTriggerType.java
@@ -0,0 +1,214 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel;
+
+import org.eclipse.emf.common.util.EList;
+
+import org.eclipse.emf.ecore.EObject;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Its Trigger Type</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * </p>
+ * <ul>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ItsTriggerType#getModifiedTimeWeak <em>Modified Time Weak</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ItsTriggerType#getId <em>Id</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ItsTriggerType#getInfo <em>Info</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ItsTriggerType#getUmlDependencyID <em>Uml Dependency ID</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ItsTriggerType#getMyState <em>My State</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ItsTriggerType#getObjectCreation <em>Object Creation</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ItsTriggerType#getBody <em>Body</em>}</li>
+ * </ul>
+ *
+ * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getItsTriggerType()
+ * @model abstract="true"
+ * @generated
+ */
+public interface ItsTriggerType extends EObject {
+	/**
+	 * Returns the value of the '<em><b>Modified Time Weak</b></em>' attribute list.
+	 * The list contents are of type {@link java.lang.String}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Modified Time Weak</em>' attribute list isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Modified Time Weak</em>' attribute list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getItsTriggerType_ModifiedTimeWeak()
+	 * @model unique="false"
+	 * @generated
+	 */
+	EList<String> getModifiedTimeWeak();
+
+	/**
+	 * Returns the value of the '<em><b>Id</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Id</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Id</em>' attribute.
+	 * @see #setId(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getItsTriggerType_Id()
+	 * @model
+	 * @generated
+	 */
+	String getId();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ItsTriggerType#getId <em>Id</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Id</em>' attribute.
+	 * @see #getId()
+	 * @generated
+	 */
+	void setId(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Info</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Info</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Info</em>' attribute.
+	 * @see #setInfo(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getItsTriggerType_Info()
+	 * @model
+	 * @generated
+	 */
+	String getInfo();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ItsTriggerType#getInfo <em>Info</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Info</em>' attribute.
+	 * @see #getInfo()
+	 * @generated
+	 */
+	void setInfo(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Uml Dependency ID</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Uml Dependency ID</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Uml Dependency ID</em>' attribute.
+	 * @see #setUmlDependencyID(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getItsTriggerType_UmlDependencyID()
+	 * @model
+	 * @generated
+	 */
+	String getUmlDependencyID();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ItsTriggerType#getUmlDependencyID <em>Uml Dependency ID</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Uml Dependency ID</em>' attribute.
+	 * @see #getUmlDependencyID()
+	 * @generated
+	 */
+	void setUmlDependencyID(String value);
+
+	/**
+	 * Returns the value of the '<em><b>My State</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>My State</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>My State</em>' attribute.
+	 * @see #setMyState(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getItsTriggerType_MyState()
+	 * @model
+	 * @generated
+	 */
+	String getMyState();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ItsTriggerType#getMyState <em>My State</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>My State</em>' attribute.
+	 * @see #getMyState()
+	 * @generated
+	 */
+	void setMyState(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Object Creation</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Object Creation</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Object Creation</em>' attribute.
+	 * @see #setObjectCreation(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getItsTriggerType_ObjectCreation()
+	 * @model
+	 * @generated
+	 */
+	String getObjectCreation();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ItsTriggerType#getObjectCreation <em>Object Creation</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Object Creation</em>' attribute.
+	 * @see #getObjectCreation()
+	 * @generated
+	 */
+	void setObjectCreation(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Body</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Body</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Body</em>' attribute.
+	 * @see #setBody(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getItsTriggerType_Body()
+	 * @model
+	 * @generated
+	 */
+	String getBody();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ItsTriggerType#getBody <em>Body</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Body</em>' attribute.
+	 * @see #getBody()
+	 * @generated
+	 */
+	void setBody(String value);
+
+} // ItsTriggerType
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/LinksType.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/LinksType.java
new file mode 100755
index 0000000..9e705ab
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/LinksType.java
@@ -0,0 +1,141 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel;
+
+import org.eclipse.emf.ecore.EObject;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Links Type</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * </p>
+ * <ul>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.LinksType#getId <em>Id</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.LinksType#getMultiplicity <em>Multiplicity</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.LinksType#getName <em>Name</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.LinksType#getOtherClass <em>Other Class</em>}</li>
+ * </ul>
+ *
+ * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getLinksType()
+ * @model abstract="true"
+ * @generated
+ */
+public interface LinksType extends EObject {
+	/**
+	 * Returns the value of the '<em><b>Id</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Id</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Id</em>' attribute.
+	 * @see #setId(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getLinksType_Id()
+	 * @model
+	 * @generated
+	 */
+	String getId();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.LinksType#getId <em>Id</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Id</em>' attribute.
+	 * @see #getId()
+	 * @generated
+	 */
+	void setId(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Multiplicity</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Multiplicity</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Multiplicity</em>' attribute.
+	 * @see #setMultiplicity(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getLinksType_Multiplicity()
+	 * @model
+	 * @generated
+	 */
+	String getMultiplicity();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.LinksType#getMultiplicity <em>Multiplicity</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Multiplicity</em>' attribute.
+	 * @see #getMultiplicity()
+	 * @generated
+	 */
+	void setMultiplicity(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Name</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Name</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Name</em>' attribute.
+	 * @see #setName(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getLinksType_Name()
+	 * @model
+	 * @generated
+	 */
+	String getName();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.LinksType#getName <em>Name</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Name</em>' attribute.
+	 * @see #getName()
+	 * @generated
+	 */
+	void setName(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Other Class</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Other Class</em>' containment reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Other Class</em>' containment reference.
+	 * @see #setOtherClass(IClassHandle)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getLinksType_OtherClass()
+	 * @model containment="true" resolveProxies="true"
+	 * @generated
+	 */
+	IClassHandle getOtherClass();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.LinksType#getOtherClass <em>Other Class</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Other Class</em>' containment reference.
+	 * @see #getOtherClass()
+	 * @generated
+	 */
+	void setOtherClass(IClassHandle value);
+
+} // LinksType
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/M_hTargetType.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/M_hTargetType.java
new file mode 100755
index 0000000..3f401c7
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/M_hTargetType.java
@@ -0,0 +1,114 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel;
+
+import org.eclipse.emf.ecore.EObject;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>MhTarget Type</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * </p>
+ * <ul>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.M_hTargetType#getRequiremenTracabilityHandle <em>Requiremen Tracability Handle</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.M_hTargetType#getDescription <em>Description</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.M_hTargetType#getProperties <em>Properties</em>}</li>
+ * </ul>
+ *
+ * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getM_hTargetType()
+ * @model abstract="true"
+ * @generated
+ */
+public interface M_hTargetType extends EObject {
+	/**
+	 * Returns the value of the '<em><b>Requiremen Tracability Handle</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Requiremen Tracability Handle</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Requiremen Tracability Handle</em>' attribute.
+	 * @see #setRequiremenTracabilityHandle(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getM_hTargetType_RequiremenTracabilityHandle()
+	 * @model
+	 * @generated
+	 */
+	String getRequiremenTracabilityHandle();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.M_hTargetType#getRequiremenTracabilityHandle <em>Requiremen Tracability Handle</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Requiremen Tracability Handle</em>' attribute.
+	 * @see #getRequiremenTracabilityHandle()
+	 * @generated
+	 */
+	void setRequiremenTracabilityHandle(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Description</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Description</em>' containment reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Description</em>' containment reference.
+	 * @see #setDescription(IDescription)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getM_hTargetType_Description()
+	 * @model containment="true" resolveProxies="true"
+	 * @generated
+	 */
+	IDescription getDescription();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.M_hTargetType#getDescription <em>Description</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Description</em>' containment reference.
+	 * @see #getDescription()
+	 * @generated
+	 */
+	void setDescription(IDescription value);
+
+	/**
+	 * Returns the value of the '<em><b>Properties</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Properties</em>' containment reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Properties</em>' containment reference.
+	 * @see #setProperties(IPropertyContainer)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getM_hTargetType_Properties()
+	 * @model containment="true" resolveProxies="true"
+	 * @generated
+	 */
+	IPropertyContainer getProperties();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.M_hTargetType#getProperties <em>Properties</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Properties</em>' containment reference.
+	 * @see #getProperties()
+	 * @generated
+	 */
+	void setProperties(IPropertyContainer value);
+
+} // M_hTargetType
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/M_pBaseType.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/M_pBaseType.java
new file mode 100755
index 0000000..1d02634
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/M_pBaseType.java
@@ -0,0 +1,27 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel;
+
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>MpBase Type</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ *
+ * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getM_pBaseType()
+ * @model abstract="true"
+ * @generated
+ */
+public interface M_pBaseType extends M_pModelObjectType {
+} // M_pBaseType
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/M_pFormalMessageType.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/M_pFormalMessageType.java
new file mode 100755
index 0000000..919a06c
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/M_pFormalMessageType.java
@@ -0,0 +1,28 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel;
+
+import org.eclipse.emf.ecore.EObject;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>MpFormal Message Type</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ *
+ * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getM_pFormalMessageType()
+ * @model abstract="true"
+ * @generated
+ */
+public interface M_pFormalMessageType extends EObject {
+} // M_pFormalMessageType
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/M_pModelObjectType.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/M_pModelObjectType.java
new file mode 100755
index 0000000..aaf290e
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/M_pModelObjectType.java
@@ -0,0 +1,28 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel;
+
+import org.eclipse.emf.ecore.EObject;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>MpModel Object Type</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ *
+ * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getM_pModelObjectType()
+ * @model abstract="true"
+ * @generated
+ */
+public interface M_pModelObjectType extends EObject {
+} // M_pModelObjectType
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/M_pRootType.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/M_pRootType.java
new file mode 100755
index 0000000..ba31868
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/M_pRootType.java
@@ -0,0 +1,28 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel;
+
+import org.eclipse.emf.ecore.EObject;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>MpRoot Type</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ *
+ * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getM_pRootType()
+ * @model abstract="true"
+ * @generated
+ */
+public interface M_pRootType extends EObject {
+} // M_pRootType
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/M_subjectType.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/M_subjectType.java
new file mode 100755
index 0000000..2b2c590
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/M_subjectType.java
@@ -0,0 +1,87 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel;
+
+import org.eclipse.emf.ecore.EObject;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Msubject Type</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * </p>
+ * <ul>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.M_subjectType#getUmlDependencyID <em>Uml Dependency ID</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.M_subjectType#getObjectCreation <em>Object Creation</em>}</li>
+ * </ul>
+ *
+ * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getM_subjectType()
+ * @model abstract="true"
+ * @generated
+ */
+public interface M_subjectType extends EObject {
+	/**
+	 * Returns the value of the '<em><b>Uml Dependency ID</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Uml Dependency ID</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Uml Dependency ID</em>' attribute.
+	 * @see #setUmlDependencyID(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getM_subjectType_UmlDependencyID()
+	 * @model
+	 * @generated
+	 */
+	String getUmlDependencyID();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.M_subjectType#getUmlDependencyID <em>Uml Dependency ID</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Uml Dependency ID</em>' attribute.
+	 * @see #getUmlDependencyID()
+	 * @generated
+	 */
+	void setUmlDependencyID(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Object Creation</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Object Creation</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Object Creation</em>' attribute.
+	 * @see #setObjectCreation(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getM_subjectType_ObjectCreation()
+	 * @model
+	 * @generated
+	 */
+	String getObjectCreation();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.M_subjectType#getObjectCreation <em>Object Creation</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Object Creation</em>' attribute.
+	 * @see #getObjectCreation()
+	 * @generated
+	 */
+	void setObjectCreation(String value);
+
+} // M_subjectType
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/MatrixInstancesType.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/MatrixInstancesType.java
new file mode 100755
index 0000000..7d41854
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/MatrixInstancesType.java
@@ -0,0 +1,28 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel;
+
+import org.eclipse.emf.ecore.EObject;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Matrix Instances Type</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ *
+ * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getMatrixInstancesType()
+ * @model abstract="true"
+ * @generated
+ */
+public interface MatrixInstancesType extends EObject {
+} // MatrixInstancesType
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/NestedStateChartType.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/NestedStateChartType.java
new file mode 100755
index 0000000..3fa662c
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/NestedStateChartType.java
@@ -0,0 +1,165 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel;
+
+import org.eclipse.emf.common.util.EList;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Nested State Chart Type</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * </p>
+ * <ul>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.NestedStateChartType#getDefNumber <em>Def Number</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.NestedStateChartType#getGraphicChart <em>Graphic Chart</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.NestedStateChartType#getLastModifiedTime <em>Last Modified Time</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.NestedStateChartType#getTransitions <em>Transitions</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.NestedStateChartType#getConnectors <em>Connectors</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.NestedStateChartType#getVersion <em>Version</em>}</li>
+ * </ul>
+ *
+ * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getNestedStateChartType()
+ * @model abstract="true"
+ * @generated
+ */
+public interface NestedStateChartType extends ItsStateChartType {
+	/**
+	 * Returns the value of the '<em><b>Def Number</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Def Number</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Def Number</em>' attribute.
+	 * @see #setDefNumber(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getNestedStateChartType_DefNumber()
+	 * @model
+	 * @generated
+	 */
+	String getDefNumber();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.NestedStateChartType#getDefNumber <em>Def Number</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Def Number</em>' attribute.
+	 * @see #getDefNumber()
+	 * @generated
+	 */
+	void setDefNumber(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Graphic Chart</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Graphic Chart</em>' containment reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Graphic Chart</em>' containment reference.
+	 * @see #setGraphicChart(CGIStateChart)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getNestedStateChartType_GraphicChart()
+	 * @model containment="true" resolveProxies="true"
+	 * @generated
+	 */
+	CGIStateChart getGraphicChart();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.NestedStateChartType#getGraphicChart <em>Graphic Chart</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Graphic Chart</em>' containment reference.
+	 * @see #getGraphicChart()
+	 * @generated
+	 */
+	void setGraphicChart(CGIStateChart value);
+
+	/**
+	 * Returns the value of the '<em><b>Last Modified Time</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Last Modified Time</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Last Modified Time</em>' attribute.
+	 * @see #setLastModifiedTime(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getNestedStateChartType_LastModifiedTime()
+	 * @model
+	 * @generated
+	 */
+	String getLastModifiedTime();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.NestedStateChartType#getLastModifiedTime <em>Last Modified Time</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Last Modified Time</em>' attribute.
+	 * @see #getLastModifiedTime()
+	 * @generated
+	 */
+	void setLastModifiedTime(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Transitions</b></em>' containment reference list.
+	 * The list contents are of type {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.TransitionsType}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Transitions</em>' containment reference list isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Transitions</em>' containment reference list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getNestedStateChartType_Transitions()
+	 * @model containment="true" resolveProxies="true"
+	 * @generated
+	 */
+	EList<TransitionsType> getTransitions();
+
+	/**
+	 * Returns the value of the '<em><b>Connectors</b></em>' containment reference list.
+	 * The list contents are of type {@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ItsTargetType}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Connectors</em>' containment reference list isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Connectors</em>' containment reference list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getNestedStateChartType_Connectors()
+	 * @model containment="true" resolveProxies="true"
+	 * @generated
+	 */
+	EList<ItsTargetType> getConnectors();
+
+	/**
+	 * Returns the value of the '<em><b>Version</b></em>' attribute list.
+	 * The list contents are of type {@link java.lang.String}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Version</em>' attribute list isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Version</em>' attribute list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getNestedStateChartType_Version()
+	 * @model unique="false"
+	 * @generated
+	 */
+	EList<String> getVersion();
+
+} // NestedStateChartType
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/ObjectLinksType.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/ObjectLinksType.java
new file mode 100755
index 0000000..3446da3
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/ObjectLinksType.java
@@ -0,0 +1,28 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel;
+
+import org.eclipse.emf.ecore.EObject;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Object Links Type</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ *
+ * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getObjectLinksType()
+ * @model abstract="true"
+ * @generated
+ */
+public interface ObjectLinksType extends EObject {
+} // ObjectLinksType
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/OperationsType.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/OperationsType.java
new file mode 100755
index 0000000..596afa8
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/OperationsType.java
@@ -0,0 +1,60 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel;
+
+import org.eclipse.emf.ecore.EObject;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Operations Type</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * </p>
+ * <ul>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.OperationsType#getVirtual <em>Virtual</em>}</li>
+ * </ul>
+ *
+ * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getOperationsType()
+ * @model abstract="true"
+ * @generated
+ */
+public interface OperationsType extends EObject {
+	/**
+	 * Returns the value of the '<em><b>Virtual</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Virtual</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Virtual</em>' attribute.
+	 * @see #setVirtual(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getOperationsType_Virtual()
+	 * @model
+	 * @generated
+	 */
+	String getVirtual();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.OperationsType#getVirtual <em>Virtual</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Virtual</em>' attribute.
+	 * @see #getVirtual()
+	 * @generated
+	 */
+	void setVirtual(String value);
+
+} // OperationsType
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/OwnerHandleType.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/OwnerHandleType.java
new file mode 100755
index 0000000..cd777b2
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/OwnerHandleType.java
@@ -0,0 +1,67 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel;
+
+import org.eclipse.emf.common.util.EList;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Owner Handle Type</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * </p>
+ * <ul>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.OwnerHandleType#getWeakCGTime <em>Weak CG Time</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.OwnerHandleType#getStrongCGTime <em>Strong CG Time</em>}</li>
+ * </ul>
+ *
+ * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getOwnerHandleType()
+ * @model abstract="true"
+ * @generated
+ */
+public interface OwnerHandleType extends DefaultSubsystemType {
+	/**
+	 * Returns the value of the '<em><b>Weak CG Time</b></em>' attribute list.
+	 * The list contents are of type {@link java.lang.String}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Weak CG Time</em>' attribute list isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Weak CG Time</em>' attribute list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getOwnerHandleType_WeakCGTime()
+	 * @model unique="false"
+	 * @generated
+	 */
+	EList<String> getWeakCGTime();
+
+	/**
+	 * Returns the value of the '<em><b>Strong CG Time</b></em>' attribute list.
+	 * The list contents are of type {@link java.lang.String}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Strong CG Time</em>' attribute list isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Strong CG Time</em>' attribute list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getOwnerHandleType_StrongCGTime()
+	 * @model unique="false"
+	 * @generated
+	 */
+	EList<String> getStrongCGTime();
+
+} // OwnerHandleType
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/P_MessageHandlerType.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/P_MessageHandlerType.java
new file mode 100755
index 0000000..ed674b0
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/P_MessageHandlerType.java
@@ -0,0 +1,28 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel;
+
+import org.eclipse.emf.ecore.EObject;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>PMessage Handler Type</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ *
+ * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getP_MessageHandlerType()
+ * @model abstract="true"
+ * @generated
+ */
+public interface P_MessageHandlerType extends EObject {
+} // P_MessageHandlerType
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/ParentType.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/ParentType.java
new file mode 100755
index 0000000..0226c6b
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/ParentType.java
@@ -0,0 +1,28 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel;
+
+import org.eclipse.emf.ecore.EObject;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Parent Type</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ *
+ * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getParentType()
+ * @model abstract="true"
+ * @generated
+ */
+public interface ParentType extends EObject {
+} // ParentType
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/PropertiesType.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/PropertiesType.java
new file mode 100755
index 0000000..98394d4
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/PropertiesType.java
@@ -0,0 +1,28 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel;
+
+import org.eclipse.emf.ecore.EObject;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Properties Type</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ *
+ * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getPropertiesType()
+ * @model abstract="true"
+ * @generated
+ */
+public interface PropertiesType extends EObject {
+} // PropertiesType
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/TableDataDefinition.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/TableDataDefinition.java
new file mode 100755
index 0000000..23dceec
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/TableDataDefinition.java
@@ -0,0 +1,168 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel;
+
+import org.eclipse.emf.ecore.EObject;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Table Data Definition</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * </p>
+ * <ul>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.TableDataDefinition#getMyTable <em>My Table</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.TableDataDefinition#getName <em>Name</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.TableDataDefinition#getDataType <em>Data Type</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.TableDataDefinition#getColumnName <em>Column Name</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.TableDataDefinition#getModelElement <em>Model Element</em>}</li>
+ * </ul>
+ *
+ * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getTableDataDefinition()
+ * @model
+ * @generated
+ */
+public interface TableDataDefinition extends EObject {
+	/**
+	 * Returns the value of the '<em><b>My Table</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>My Table</em>' reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>My Table</em>' reference.
+	 * @see #setMyTable(IModelElement)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getTableDataDefinition_MyTable()
+	 * @model
+	 * @generated
+	 */
+	IModelElement getMyTable();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.TableDataDefinition#getMyTable <em>My Table</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>My Table</em>' reference.
+	 * @see #getMyTable()
+	 * @generated
+	 */
+	void setMyTable(IModelElement value);
+
+	/**
+	 * Returns the value of the '<em><b>Name</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Name</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Name</em>' attribute.
+	 * @see #setName(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getTableDataDefinition_Name()
+	 * @model
+	 * @generated
+	 */
+	String getName();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.TableDataDefinition#getName <em>Name</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Name</em>' attribute.
+	 * @see #getName()
+	 * @generated
+	 */
+	void setName(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Data Type</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Data 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>Data Type</em>' attribute.
+	 * @see #setDataType(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getTableDataDefinition_DataType()
+	 * @model
+	 * @generated
+	 */
+	String getDataType();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.TableDataDefinition#getDataType <em>Data Type</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Data Type</em>' attribute.
+	 * @see #getDataType()
+	 * @generated
+	 */
+	void setDataType(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Column Name</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Column Name</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Column Name</em>' attribute.
+	 * @see #setColumnName(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getTableDataDefinition_ColumnName()
+	 * @model
+	 * @generated
+	 */
+	String getColumnName();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.TableDataDefinition#getColumnName <em>Column Name</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Column Name</em>' attribute.
+	 * @see #getColumnName()
+	 * @generated
+	 */
+	void setColumnName(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Model Element</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Model Element</em>' reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Model Element</em>' reference.
+	 * @see #setModelElement(IUnit)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getTableDataDefinition_ModelElement()
+	 * @model
+	 * @generated
+	 */
+	IUnit getModelElement();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.TableDataDefinition#getModelElement <em>Model Element</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Model Element</em>' reference.
+	 * @see #getModelElement()
+	 * @generated
+	 */
+	void setModelElement(IUnit value);
+
+} // TableDataDefinition
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/TableInstancesType.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/TableInstancesType.java
new file mode 100755
index 0000000..bf4e617
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/TableInstancesType.java
@@ -0,0 +1,28 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel;
+
+import org.eclipse.emf.ecore.EObject;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Table Instances Type</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ *
+ * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getTableInstancesType()
+ * @model abstract="true"
+ * @generated
+ */
+public interface TableInstancesType extends EObject {
+} // TableInstancesType
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/TargetType.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/TargetType.java
new file mode 100755
index 0000000..0094226
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/TargetType.java
@@ -0,0 +1,28 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel;
+
+import org.eclipse.emf.ecore.EObject;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Target Type</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ *
+ * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getTargetType()
+ * @model abstract="true"
+ * @generated
+ */
+public interface TargetType extends EObject {
+} // TargetType
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/TheMainDiagramType.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/TheMainDiagramType.java
new file mode 100755
index 0000000..5a19730
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/TheMainDiagramType.java
@@ -0,0 +1,356 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel;
+
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>The Main Diagram Type</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * </p>
+ * <ul>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.TheMainDiagramType#getId <em>Id</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.TheMainDiagramType#getLastModifiedTime <em>Last Modified Time</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.TheMainDiagramType#getRequiremenTracabilityHandle <em>Requiremen Tracability Handle</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.TheMainDiagramType#getDefaultSubsystem <em>Default Subsystem</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.TheMainDiagramType#getDescription <em>Description</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.TheMainDiagramType#getUmlDependencyID <em>Uml Dependency ID</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.TheMainDiagramType#getLastID <em>Last ID</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.TheMainDiagramType#getMyState <em>My State</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.TheMainDiagramType#getOwnerHandle <em>Owner Handle</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.TheMainDiagramType#getObjectCreation <em>Object Creation</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.TheMainDiagramType#getName <em>Name</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.TheMainDiagramType#getCmheader <em>Cmheader</em>}</li>
+ * </ul>
+ *
+ * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getTheMainDiagramType()
+ * @model abstract="true"
+ * @generated
+ */
+public interface TheMainDiagramType extends M_pModelObjectType {
+	/**
+	 * Returns the value of the '<em><b>Id</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Id</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Id</em>' attribute.
+	 * @see #setId(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getTheMainDiagramType_Id()
+	 * @model
+	 * @generated
+	 */
+	String getId();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.TheMainDiagramType#getId <em>Id</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Id</em>' attribute.
+	 * @see #getId()
+	 * @generated
+	 */
+	void setId(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Last Modified Time</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Last Modified Time</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Last Modified Time</em>' attribute.
+	 * @see #setLastModifiedTime(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getTheMainDiagramType_LastModifiedTime()
+	 * @model
+	 * @generated
+	 */
+	String getLastModifiedTime();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.TheMainDiagramType#getLastModifiedTime <em>Last Modified Time</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Last Modified Time</em>' attribute.
+	 * @see #getLastModifiedTime()
+	 * @generated
+	 */
+	void setLastModifiedTime(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Requiremen Tracability Handle</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Requiremen Tracability Handle</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Requiremen Tracability Handle</em>' attribute.
+	 * @see #setRequiremenTracabilityHandle(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getTheMainDiagramType_RequiremenTracabilityHandle()
+	 * @model
+	 * @generated
+	 */
+	String getRequiremenTracabilityHandle();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.TheMainDiagramType#getRequiremenTracabilityHandle <em>Requiremen Tracability Handle</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Requiremen Tracability Handle</em>' attribute.
+	 * @see #getRequiremenTracabilityHandle()
+	 * @generated
+	 */
+	void setRequiremenTracabilityHandle(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Default Subsystem</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Default Subsystem</em>' reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Default Subsystem</em>' reference.
+	 * @see #setDefaultSubsystem(DefaultSubsystemType)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getTheMainDiagramType_DefaultSubsystem()
+	 * @model
+	 * @generated
+	 */
+	DefaultSubsystemType getDefaultSubsystem();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.TheMainDiagramType#getDefaultSubsystem <em>Default Subsystem</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Default Subsystem</em>' reference.
+	 * @see #getDefaultSubsystem()
+	 * @generated
+	 */
+	void setDefaultSubsystem(DefaultSubsystemType value);
+
+	/**
+	 * Returns the value of the '<em><b>Description</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Description</em>' containment reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Description</em>' containment reference.
+	 * @see #setDescription(IDescription)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getTheMainDiagramType_Description()
+	 * @model containment="true" resolveProxies="true"
+	 * @generated
+	 */
+	IDescription getDescription();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.TheMainDiagramType#getDescription <em>Description</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Description</em>' containment reference.
+	 * @see #getDescription()
+	 * @generated
+	 */
+	void setDescription(IDescription value);
+
+	/**
+	 * Returns the value of the '<em><b>Uml Dependency ID</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Uml Dependency ID</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Uml Dependency ID</em>' attribute.
+	 * @see #setUmlDependencyID(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getTheMainDiagramType_UmlDependencyID()
+	 * @model
+	 * @generated
+	 */
+	String getUmlDependencyID();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.TheMainDiagramType#getUmlDependencyID <em>Uml Dependency ID</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Uml Dependency ID</em>' attribute.
+	 * @see #getUmlDependencyID()
+	 * @generated
+	 */
+	void setUmlDependencyID(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Last ID</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Last ID</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Last ID</em>' attribute.
+	 * @see #setLastID(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getTheMainDiagramType_LastID()
+	 * @model
+	 * @generated
+	 */
+	String getLastID();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.TheMainDiagramType#getLastID <em>Last ID</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Last ID</em>' attribute.
+	 * @see #getLastID()
+	 * @generated
+	 */
+	void setLastID(String value);
+
+	/**
+	 * Returns the value of the '<em><b>My State</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>My State</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>My State</em>' attribute.
+	 * @see #setMyState(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getTheMainDiagramType_MyState()
+	 * @model
+	 * @generated
+	 */
+	String getMyState();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.TheMainDiagramType#getMyState <em>My State</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>My State</em>' attribute.
+	 * @see #getMyState()
+	 * @generated
+	 */
+	void setMyState(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Owner Handle</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Owner Handle</em>' reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Owner Handle</em>' reference.
+	 * @see #setOwnerHandle(OwnerHandleType)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getTheMainDiagramType_OwnerHandle()
+	 * @model
+	 * @generated
+	 */
+	OwnerHandleType getOwnerHandle();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.TheMainDiagramType#getOwnerHandle <em>Owner Handle</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Owner Handle</em>' reference.
+	 * @see #getOwnerHandle()
+	 * @generated
+	 */
+	void setOwnerHandle(OwnerHandleType value);
+
+	/**
+	 * Returns the value of the '<em><b>Object Creation</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Object Creation</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Object Creation</em>' attribute.
+	 * @see #setObjectCreation(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getTheMainDiagramType_ObjectCreation()
+	 * @model
+	 * @generated
+	 */
+	String getObjectCreation();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.TheMainDiagramType#getObjectCreation <em>Object Creation</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Object Creation</em>' attribute.
+	 * @see #getObjectCreation()
+	 * @generated
+	 */
+	void setObjectCreation(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Name</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Name</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Name</em>' attribute.
+	 * @see #setName(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getTheMainDiagramType_Name()
+	 * @model
+	 * @generated
+	 */
+	String getName();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.TheMainDiagramType#getName <em>Name</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Name</em>' attribute.
+	 * @see #getName()
+	 * @generated
+	 */
+	void setName(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Cmheader</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Cmheader</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Cmheader</em>' attribute.
+	 * @see #setCmheader(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getTheMainDiagramType_Cmheader()
+	 * @model
+	 * @generated
+	 */
+	String getCmheader();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.TheMainDiagramType#getCmheader <em>Cmheader</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Cmheader</em>' attribute.
+	 * @see #getCmheader()
+	 * @generated
+	 */
+	void setCmheader(String value);
+
+} // TheMainDiagramType
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/ToLinkType.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/ToLinkType.java
new file mode 100755
index 0000000..c7a10c5
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/ToLinkType.java
@@ -0,0 +1,59 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel;
+
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>To Link Type</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * </p>
+ * <ul>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ToLinkType#getImplicitClass <em>Implicit Class</em>}</li>
+ * </ul>
+ *
+ * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getToLinkType()
+ * @model abstract="true"
+ * @generated
+ */
+public interface ToLinkType extends FromLinkType {
+	/**
+	 * Returns the value of the '<em><b>Implicit Class</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Implicit Class</em>' containment reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Implicit Class</em>' containment reference.
+	 * @see #setImplicitClass(IClass)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getToLinkType_ImplicitClass()
+	 * @model containment="true" resolveProxies="true"
+	 * @generated
+	 */
+	IClass getImplicitClass();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ToLinkType#getImplicitClass <em>Implicit Class</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Implicit Class</em>' containment reference.
+	 * @see #getImplicitClass()
+	 * @generated
+	 */
+	void setImplicitClass(IClass value);
+
+} // ToLinkType
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/TransitionsType.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/TransitionsType.java
new file mode 100755
index 0000000..f4710a1
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/TransitionsType.java
@@ -0,0 +1,339 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel;
+
+import org.eclipse.emf.common.util.EList;
+
+import org.eclipse.emf.ecore.EObject;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Transitions Type</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * </p>
+ * <ul>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.TransitionsType#getModifiedTimeWeak <em>Modified Time Weak</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.TransitionsType#getStaticReaction <em>Static Reaction</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.TransitionsType#getItsTarget <em>Its Target</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.TransitionsType#getId <em>Id</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.TransitionsType#getCodeUpdateCGTime <em>Code Update CG Time</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.TransitionsType#getRequiremenTracabilityHandle <em>Requiremen Tracability Handle</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.TransitionsType#getDescription <em>Description</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.TransitionsType#getItsLabel <em>Its Label</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.TransitionsType#getUmlDependencyID <em>Uml Dependency ID</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.TransitionsType#getMyState <em>My State</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.TransitionsType#getObjectCreation <em>Object Creation</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.TransitionsType#getName <em>Name</em>}</li>
+ * </ul>
+ *
+ * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getTransitionsType()
+ * @model abstract="true"
+ * @generated
+ */
+public interface TransitionsType extends EObject {
+	/**
+	 * Returns the value of the '<em><b>Modified Time Weak</b></em>' attribute list.
+	 * The list contents are of type {@link java.lang.String}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Modified Time Weak</em>' attribute list isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Modified Time Weak</em>' attribute list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getTransitionsType_ModifiedTimeWeak()
+	 * @model unique="false"
+	 * @generated
+	 */
+	EList<String> getModifiedTimeWeak();
+
+	/**
+	 * Returns the value of the '<em><b>Static Reaction</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Static Reaction</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Static Reaction</em>' attribute.
+	 * @see #setStaticReaction(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getTransitionsType_StaticReaction()
+	 * @model
+	 * @generated
+	 */
+	String getStaticReaction();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.TransitionsType#getStaticReaction <em>Static Reaction</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Static Reaction</em>' attribute.
+	 * @see #getStaticReaction()
+	 * @generated
+	 */
+	void setStaticReaction(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Its Target</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Its Target</em>' reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Its Target</em>' reference.
+	 * @see #setItsTarget(ItsTargetType)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getTransitionsType_ItsTarget()
+	 * @model
+	 * @generated
+	 */
+	ItsTargetType getItsTarget();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.TransitionsType#getItsTarget <em>Its Target</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Its Target</em>' reference.
+	 * @see #getItsTarget()
+	 * @generated
+	 */
+	void setItsTarget(ItsTargetType value);
+
+	/**
+	 * Returns the value of the '<em><b>Id</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Id</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Id</em>' attribute.
+	 * @see #setId(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getTransitionsType_Id()
+	 * @model
+	 * @generated
+	 */
+	String getId();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.TransitionsType#getId <em>Id</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Id</em>' attribute.
+	 * @see #getId()
+	 * @generated
+	 */
+	void setId(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Code Update CG Time</b></em>' attribute list.
+	 * The list contents are of type {@link java.lang.String}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Code Update CG Time</em>' attribute list isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Code Update CG Time</em>' attribute list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getTransitionsType_CodeUpdateCGTime()
+	 * @model unique="false"
+	 * @generated
+	 */
+	EList<String> getCodeUpdateCGTime();
+
+	/**
+	 * Returns the value of the '<em><b>Requiremen Tracability Handle</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Requiremen Tracability Handle</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Requiremen Tracability Handle</em>' attribute.
+	 * @see #setRequiremenTracabilityHandle(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getTransitionsType_RequiremenTracabilityHandle()
+	 * @model
+	 * @generated
+	 */
+	String getRequiremenTracabilityHandle();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.TransitionsType#getRequiremenTracabilityHandle <em>Requiremen Tracability Handle</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Requiremen Tracability Handle</em>' attribute.
+	 * @see #getRequiremenTracabilityHandle()
+	 * @generated
+	 */
+	void setRequiremenTracabilityHandle(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Description</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Description</em>' containment reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Description</em>' containment reference.
+	 * @see #setDescription(IDescription)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getTransitionsType_Description()
+	 * @model containment="true" resolveProxies="true"
+	 * @generated
+	 */
+	IDescription getDescription();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.TransitionsType#getDescription <em>Description</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Description</em>' containment reference.
+	 * @see #getDescription()
+	 * @generated
+	 */
+	void setDescription(IDescription value);
+
+	/**
+	 * Returns the value of the '<em><b>Its Label</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Its Label</em>' containment reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Its Label</em>' containment reference.
+	 * @see #setItsLabel(ItsLabelType)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getTransitionsType_ItsLabel()
+	 * @model containment="true" resolveProxies="true"
+	 * @generated
+	 */
+	ItsLabelType getItsLabel();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.TransitionsType#getItsLabel <em>Its Label</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Its Label</em>' containment reference.
+	 * @see #getItsLabel()
+	 * @generated
+	 */
+	void setItsLabel(ItsLabelType value);
+
+	/**
+	 * Returns the value of the '<em><b>Uml Dependency ID</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Uml Dependency ID</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Uml Dependency ID</em>' attribute.
+	 * @see #setUmlDependencyID(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getTransitionsType_UmlDependencyID()
+	 * @model
+	 * @generated
+	 */
+	String getUmlDependencyID();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.TransitionsType#getUmlDependencyID <em>Uml Dependency ID</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Uml Dependency ID</em>' attribute.
+	 * @see #getUmlDependencyID()
+	 * @generated
+	 */
+	void setUmlDependencyID(String value);
+
+	/**
+	 * Returns the value of the '<em><b>My State</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>My State</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>My State</em>' attribute.
+	 * @see #setMyState(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getTransitionsType_MyState()
+	 * @model
+	 * @generated
+	 */
+	String getMyState();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.TransitionsType#getMyState <em>My State</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>My State</em>' attribute.
+	 * @see #getMyState()
+	 * @generated
+	 */
+	void setMyState(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Object Creation</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Object Creation</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Object Creation</em>' attribute.
+	 * @see #setObjectCreation(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getTransitionsType_ObjectCreation()
+	 * @model
+	 * @generated
+	 */
+	String getObjectCreation();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.TransitionsType#getObjectCreation <em>Object Creation</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Object Creation</em>' attribute.
+	 * @see #getObjectCreation()
+	 * @generated
+	 */
+	void setObjectCreation(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Name</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Name</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Name</em>' attribute.
+	 * @see #setName(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getTransitionsType_Name()
+	 * @model
+	 * @generated
+	 */
+	String getName();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.TransitionsType#getName <em>Name</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Name</em>' attribute.
+	 * @see #getName()
+	 * @generated
+	 */
+	void setName(String value);
+
+} // TransitionsType
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/UMLRpyFactory.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/UMLRpyFactory.java
new file mode 100755
index 0000000..453cad7
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/UMLRpyFactory.java
@@ -0,0 +1,1843 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel;
+
+import org.eclipse.emf.ecore.EFactory;
+
+/**
+ * <!-- begin-user-doc -->
+ * The <b>Factory</b> for the model.
+ * It provides a create method for each non-abstract class of the model.
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage
+ * @generated
+ */
+public interface UMLRpyFactory extends EFactory {
+	/**
+	 * The singleton instance of the factory.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	UMLRpyFactory eINSTANCE = org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.UMLRpyFactoryImpl.init();
+
+	/**
+	 * Returns a new object of class '<em>CCollaboration Chart</em>'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return a new object of class '<em>CCollaboration Chart</em>'.
+	 * @generated
+	 */
+	CCollaborationChart createCCollaborationChart();
+
+	/**
+	 * Returns a new object of class '<em>CGI Action State</em>'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return a new object of class '<em>CGI Action State</em>'.
+	 * @generated
+	 */
+	CGIActionState createCGIActionState();
+
+	/**
+	 * Returns a new object of class '<em>CGI Active X</em>'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return a new object of class '<em>CGI Active X</em>'.
+	 * @generated
+	 */
+	CGIActiveX createCGIActiveX();
+
+	/**
+	 * Returns a new object of class '<em>CGI Anchor</em>'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return a new object of class '<em>CGI Anchor</em>'.
+	 * @generated
+	 */
+	CGIAnchor createCGIAnchor();
+
+	/**
+	 * Returns a new object of class '<em>CGI Annotation</em>'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return a new object of class '<em>CGI Annotation</em>'.
+	 * @generated
+	 */
+	CGIAnnotation createCGIAnnotation();
+
+	/**
+	 * Returns a new object of class '<em>CGI Arrow</em>'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return a new object of class '<em>CGI Arrow</em>'.
+	 * @generated
+	 */
+	CGIArrow createCGIArrow();
+
+	/**
+	 * Returns a new object of class '<em>CGI Association End</em>'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return a new object of class '<em>CGI Association End</em>'.
+	 * @generated
+	 */
+	CGIAssociationEnd createCGIAssociationEnd();
+
+	/**
+	 * Returns a new object of class '<em>CGI Association Role</em>'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return a new object of class '<em>CGI Association Role</em>'.
+	 * @generated
+	 */
+	CGIAssociationRole createCGIAssociationRole();
+
+	/**
+	 * Returns a new object of class '<em>CGI Basic Class</em>'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return a new object of class '<em>CGI Basic Class</em>'.
+	 * @generated
+	 */
+	CGIBasicClass createCGIBasicClass();
+
+	/**
+	 * Returns a new object of class '<em>CGI Block State</em>'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return a new object of class '<em>CGI Block State</em>'.
+	 * @generated
+	 */
+	CGIBlockState createCGIBlockState();
+
+	/**
+	 * Returns a new object of class '<em>CGI Box</em>'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return a new object of class '<em>CGI Box</em>'.
+	 * @generated
+	 */
+	CGIBox createCGIBox();
+
+	/**
+	 * Returns a new object of class '<em>CGI Button Array</em>'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return a new object of class '<em>CGI Button Array</em>'.
+	 * @generated
+	 */
+	CGIButtonArray createCGIButtonArray();
+
+	/**
+	 * Returns a new object of class '<em>CGI Class</em>'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return a new object of class '<em>CGI Class</em>'.
+	 * @generated
+	 */
+	CGIClass createCGIClass();
+
+	/**
+	 * Returns a new object of class '<em>CGI Class Chart</em>'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return a new object of class '<em>CGI Class Chart</em>'.
+	 * @generated
+	 */
+	CGIClassChart createCGIClassChart();
+
+	/**
+	 * Returns a new object of class '<em>CGI Classifier Role</em>'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return a new object of class '<em>CGI Classifier Role</em>'.
+	 * @generated
+	 */
+	CGIClassifierRole createCGIClassifierRole();
+
+	/**
+	 * Returns a new object of class '<em>CGI Compartment</em>'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return a new object of class '<em>CGI Compartment</em>'.
+	 * @generated
+	 */
+	CGICompartment createCGICompartment();
+
+	/**
+	 * Returns a new object of class '<em>CGI Component</em>'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return a new object of class '<em>CGI Component</em>'.
+	 * @generated
+	 */
+	CGIComponent createCGIComponent();
+
+	/**
+	 * Returns a new object of class '<em>CGI Composite Class</em>'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return a new object of class '<em>CGI Composite Class</em>'.
+	 * @generated
+	 */
+	CGICompositeClass createCGICompositeClass();
+
+	/**
+	 * Returns a new object of class '<em>CGI Connector</em>'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return a new object of class '<em>CGI Connector</em>'.
+	 * @generated
+	 */
+	CGIConnector createCGIConnector();
+
+	/**
+	 * Returns a new object of class '<em>CGI Contain Arrow</em>'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return a new object of class '<em>CGI Contain Arrow</em>'.
+	 * @generated
+	 */
+	CGIContainArrow createCGIContainArrow();
+
+	/**
+	 * Returns a new object of class '<em>CGI Diagram Frame</em>'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return a new object of class '<em>CGI Diagram Frame</em>'.
+	 * @generated
+	 */
+	CGIDiagramFrame createCGIDiagramFrame();
+
+	/**
+	 * Returns a new object of class '<em>CGI Free Shape</em>'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return a new object of class '<em>CGI Free Shape</em>'.
+	 * @generated
+	 */
+	CGIFreeShape createCGIFreeShape();
+
+	/**
+	 * Returns a new object of class '<em>CGI Free Text</em>'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return a new object of class '<em>CGI Free Text</em>'.
+	 * @generated
+	 */
+	CGIFreeText createCGIFreeText();
+
+	/**
+	 * Returns a new object of class '<em>CGI Generic Element</em>'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return a new object of class '<em>CGI Generic Element</em>'.
+	 * @generated
+	 */
+	CGIGenericElement createCGIGenericElement();
+
+	/**
+	 * Returns a new object of class '<em>CGI Image</em>'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return a new object of class '<em>CGI Image</em>'.
+	 * @generated
+	 */
+	CGIImage createCGIImage();
+
+	/**
+	 * Returns a new object of class '<em>CGI Image Data</em>'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return a new object of class '<em>CGI Image Data</em>'.
+	 * @generated
+	 */
+	CGIImageData createCGIImageData();
+
+	/**
+	 * Returns a new object of class '<em>CGI Information Flow</em>'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return a new object of class '<em>CGI Information Flow</em>'.
+	 * @generated
+	 */
+	CGIInformationFlow createCGIInformationFlow();
+
+	/**
+	 * Returns a new object of class '<em>CGI Inheritance</em>'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return a new object of class '<em>CGI Inheritance</em>'.
+	 * @generated
+	 */
+	CGIInheritance createCGIInheritance();
+
+	/**
+	 * Returns a new object of class '<em>CGIMFC Ctrl</em>'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return a new object of class '<em>CGIMFC Ctrl</em>'.
+	 * @generated
+	 */
+	CGIMFCCtrl createCGIMFCCtrl();
+
+	/**
+	 * Returns a new object of class '<em>CGI Message Label</em>'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return a new object of class '<em>CGI Message Label</em>'.
+	 * @generated
+	 */
+	CGIMessageLabel createCGIMessageLabel();
+
+	/**
+	 * Returns a new object of class '<em>CGI Msc Chart</em>'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return a new object of class '<em>CGI Msc Chart</em>'.
+	 * @generated
+	 */
+	CGIMscChart createCGIMscChart();
+
+	/**
+	 * Returns a new object of class '<em>CGI Msc Column CR</em>'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return a new object of class '<em>CGI Msc Column CR</em>'.
+	 * @generated
+	 */
+	CGIMscColumnCR createCGIMscColumnCR();
+
+	/**
+	 * Returns a new object of class '<em>CGI Msc Condition Mark</em>'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return a new object of class '<em>CGI Msc Condition Mark</em>'.
+	 * @generated
+	 */
+	CGIMscConditionMark createCGIMscConditionMark();
+
+	/**
+	 * Returns a new object of class '<em>CGI Msc Execution Occurrence</em>'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return a new object of class '<em>CGI Msc Execution Occurrence</em>'.
+	 * @generated
+	 */
+	CGIMscExecutionOccurrence createCGIMscExecutionOccurrence();
+
+	/**
+	 * Returns a new object of class '<em>CGI Msc Interaction Occurrence</em>'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return a new object of class '<em>CGI Msc Interaction Occurrence</em>'.
+	 * @generated
+	 */
+	CGIMscInteractionOccurrence createCGIMscInteractionOccurrence();
+
+	/**
+	 * Returns a new object of class '<em>CGI Msc Interaction Operand</em>'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return a new object of class '<em>CGI Msc Interaction Operand</em>'.
+	 * @generated
+	 */
+	CGIMscInteractionOperand createCGIMscInteractionOperand();
+
+	/**
+	 * Returns a new object of class '<em>CGI Msc Interaction Operator</em>'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return a new object of class '<em>CGI Msc Interaction Operator</em>'.
+	 * @generated
+	 */
+	CGIMscInteractionOperator createCGIMscInteractionOperator();
+
+	/**
+	 * Returns a new object of class '<em>CGI Msc Message</em>'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return a new object of class '<em>CGI Msc Message</em>'.
+	 * @generated
+	 */
+	CGIMscMessage createCGIMscMessage();
+
+	/**
+	 * Returns a new object of class '<em>CGI Object Instance</em>'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return a new object of class '<em>CGI Object Instance</em>'.
+	 * @generated
+	 */
+	CGIObjectInstance createCGIObjectInstance();
+
+	/**
+	 * Returns a new object of class '<em>CGI Object Link</em>'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return a new object of class '<em>CGI Object Link</em>'.
+	 * @generated
+	 */
+	CGIObjectLink createCGIObjectLink();
+
+	/**
+	 * Returns a new object of class '<em>CGI Package</em>'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return a new object of class '<em>CGI Package</em>'.
+	 * @generated
+	 */
+	CGIPackage createCGIPackage();
+
+	/**
+	 * Returns a new object of class '<em>CGI Partition</em>'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return a new object of class '<em>CGI Partition</em>'.
+	 * @generated
+	 */
+	CGIPartition createCGIPartition();
+
+	/**
+	 * Returns a new object of class '<em>CGI Port Connector</em>'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return a new object of class '<em>CGI Port Connector</em>'.
+	 * @generated
+	 */
+	CGIPortConnector createCGIPortConnector();
+
+	/**
+	 * Returns a new object of class '<em>CGI State</em>'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return a new object of class '<em>CGI State</em>'.
+	 * @generated
+	 */
+	CGIState createCGIState();
+
+	/**
+	 * Returns a new object of class '<em>CGI State Chart</em>'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return a new object of class '<em>CGI State Chart</em>'.
+	 * @generated
+	 */
+	CGIStateChart createCGIStateChart();
+
+	/**
+	 * Returns a new object of class '<em>CGI Swimlane Frame</em>'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return a new object of class '<em>CGI Swimlane Frame</em>'.
+	 * @generated
+	 */
+	CGISwimlaneFrame createCGISwimlaneFrame();
+
+	/**
+	 * Returns a new object of class '<em>CGI Text</em>'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return a new object of class '<em>CGI Text</em>'.
+	 * @generated
+	 */
+	CGIText createCGIText();
+
+	/**
+	 * Returns a new object of class '<em>CGI Text Box</em>'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return a new object of class '<em>CGI Text Box</em>'.
+	 * @generated
+	 */
+	CGITextBox createCGITextBox();
+
+	/**
+	 * Returns a new object of class '<em>CGI Trans</em>'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return a new object of class '<em>CGI Trans</em>'.
+	 * @generated
+	 */
+	CGITrans createCGITrans();
+
+	/**
+	 * Returns a new object of class '<em>Coll Event</em>'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return a new object of class '<em>Coll Event</em>'.
+	 * @generated
+	 */
+	CollEvent createCollEvent();
+
+	/**
+	 * Returns a new object of class '<em>IAccept Event Action</em>'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return a new object of class '<em>IAccept Event Action</em>'.
+	 * @generated
+	 */
+	IAcceptEventAction createIAcceptEventAction();
+
+	/**
+	 * Returns a new object of class '<em>IAccept Time Event</em>'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return a new object of class '<em>IAccept Time Event</em>'.
+	 * @generated
+	 */
+	IAcceptTimeEvent createIAcceptTimeEvent();
+
+	/**
+	 * Returns a new object of class '<em>IAction</em>'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return a new object of class '<em>IAction</em>'.
+	 * @generated
+	 */
+	IAction createIAction();
+
+	/**
+	 * Returns a new object of class '<em>IActivity Diagram</em>'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return a new object of class '<em>IActivity Diagram</em>'.
+	 * @generated
+	 */
+	IActivityDiagram createIActivityDiagram();
+
+	/**
+	 * Returns a new object of class '<em>IActivity Graph</em>'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return a new object of class '<em>IActivity Graph</em>'.
+	 * @generated
+	 */
+	IActivityGraph createIActivityGraph();
+
+	/**
+	 * Returns a new object of class '<em>IActor</em>'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return a new object of class '<em>IActor</em>'.
+	 * @generated
+	 */
+	IActor createIActor();
+
+	/**
+	 * Returns a new object of class '<em>IAnchor</em>'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return a new object of class '<em>IAnchor</em>'.
+	 * @generated
+	 */
+	IAnchor createIAnchor();
+
+	/**
+	 * Returns a new object of class '<em>IAnnotation</em>'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return a new object of class '<em>IAnnotation</em>'.
+	 * @generated
+	 */
+	IAnnotation createIAnnotation();
+
+	/**
+	 * Returns a new object of class '<em>IArgument</em>'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return a new object of class '<em>IArgument</em>'.
+	 * @generated
+	 */
+	IArgument createIArgument();
+
+	/**
+	 * Returns a new object of class '<em>IAssociation Class</em>'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return a new object of class '<em>IAssociation Class</em>'.
+	 * @generated
+	 */
+	IAssociationClass createIAssociationClass();
+
+	/**
+	 * Returns a new object of class '<em>IAssociation End</em>'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return a new object of class '<em>IAssociation End</em>'.
+	 * @generated
+	 */
+	IAssociationEnd createIAssociationEnd();
+
+	/**
+	 * Returns a new object of class '<em>IAssociation End Handle</em>'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return a new object of class '<em>IAssociation End Handle</em>'.
+	 * @generated
+	 */
+	IAssociationEndHandle createIAssociationEndHandle();
+
+	/**
+	 * Returns a new object of class '<em>IAssociation Role</em>'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return a new object of class '<em>IAssociation Role</em>'.
+	 * @generated
+	 */
+	IAssociationRole createIAssociationRole();
+
+	/**
+	 * Returns a new object of class '<em>IAttribute</em>'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return a new object of class '<em>IAttribute</em>'.
+	 * @generated
+	 */
+	IAttribute createIAttribute();
+
+	/**
+	 * Returns a new object of class '<em>IBlock</em>'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return a new object of class '<em>IBlock</em>'.
+	 * @generated
+	 */
+	IBlock createIBlock();
+
+	/**
+	 * Returns a new object of class '<em>IBody</em>'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return a new object of class '<em>IBody</em>'.
+	 * @generated
+	 */
+	IBody createIBody();
+
+	/**
+	 * Returns a new object of class '<em>IBranch</em>'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return a new object of class '<em>IBranch</em>'.
+	 * @generated
+	 */
+	IBranch createIBranch();
+
+	/**
+	 * Returns a new object of class '<em>ICall Action</em>'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return a new object of class '<em>ICall Action</em>'.
+	 * @generated
+	 */
+	ICallAction createICallAction();
+
+	/**
+	 * Returns a new object of class '<em>ICall Operation</em>'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return a new object of class '<em>ICall Operation</em>'.
+	 * @generated
+	 */
+	ICallOperation createICallOperation();
+
+	/**
+	 * Returns a new object of class '<em>IClass</em>'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return a new object of class '<em>IClass</em>'.
+	 * @generated
+	 */
+	IClass createIClass();
+
+	/**
+	 * Returns a new object of class '<em>IClass Handle</em>'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return a new object of class '<em>IClass Handle</em>'.
+	 * @generated
+	 */
+	IClassHandle createIClassHandle();
+
+	/**
+	 * Returns a new object of class '<em>IClass Instance</em>'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return a new object of class '<em>IClass Instance</em>'.
+	 * @generated
+	 */
+	IClassInstance createIClassInstance();
+
+	/**
+	 * Returns a new object of class '<em>IClassifier</em>'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return a new object of class '<em>IClassifier</em>'.
+	 * @generated
+	 */
+	IClassifier createIClassifier();
+
+	/**
+	 * Returns a new object of class '<em>IClassifier Role</em>'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return a new object of class '<em>IClassifier Role</em>'.
+	 * @generated
+	 */
+	IClassifierRole createIClassifierRole();
+
+	/**
+	 * Returns a new object of class '<em>ICode Gen Config Info</em>'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return a new object of class '<em>ICode Gen Config Info</em>'.
+	 * @generated
+	 */
+	ICodeGenConfigInfo createICodeGenConfigInfo();
+
+	/**
+	 * Returns a new object of class '<em>ICode Gen Config Info Handle</em>'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return a new object of class '<em>ICode Gen Config Info Handle</em>'.
+	 * @generated
+	 */
+	ICodeGenConfigInfoHandle createICodeGenConfigInfoHandle();
+
+	/**
+	 * Returns a new object of class '<em>ICollaboration</em>'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return a new object of class '<em>ICollaboration</em>'.
+	 * @generated
+	 */
+	ICollaboration createICollaboration();
+
+	/**
+	 * Returns a new object of class '<em>ICollaboration Diagram</em>'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return a new object of class '<em>ICollaboration Diagram</em>'.
+	 * @generated
+	 */
+	ICollaborationDiagram createICollaborationDiagram();
+
+	/**
+	 * Returns a new object of class '<em>IColor</em>'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return a new object of class '<em>IColor</em>'.
+	 * @generated
+	 */
+	IColor createIColor();
+
+	/**
+	 * Returns a new object of class '<em>ICombined Fragment</em>'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return a new object of class '<em>ICombined Fragment</em>'.
+	 * @generated
+	 */
+	ICombinedFragment createICombinedFragment();
+
+	/**
+	 * Returns a new object of class '<em>IComment</em>'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return a new object of class '<em>IComment</em>'.
+	 * @generated
+	 */
+	IComment createIComment();
+
+	/**
+	 * Returns a new object of class '<em>IComponent</em>'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return a new object of class '<em>IComponent</em>'.
+	 * @generated
+	 */
+	IComponent createIComponent();
+
+	/**
+	 * Returns a new object of class '<em>IComponent Diagram</em>'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return a new object of class '<em>IComponent Diagram</em>'.
+	 * @generated
+	 */
+	IComponentDiagram createIComponentDiagram();
+
+	/**
+	 * Returns a new object of class '<em>IComponent Instance</em>'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return a new object of class '<em>IComponent Instance</em>'.
+	 * @generated
+	 */
+	IComponentInstance createIComponentInstance();
+
+	/**
+	 * Returns a new object of class '<em>IConfiguration</em>'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return a new object of class '<em>IConfiguration</em>'.
+	 * @generated
+	 */
+	IConfiguration createIConfiguration();
+
+	/**
+	 * Returns a new object of class '<em>IConnector</em>'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return a new object of class '<em>IConnector</em>'.
+	 * @generated
+	 */
+	IConnector createIConnector();
+
+	/**
+	 * Returns a new object of class '<em>IConstraint</em>'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return a new object of class '<em>IConstraint</em>'.
+	 * @generated
+	 */
+	IConstraint createIConstraint();
+
+	/**
+	 * Returns a new object of class '<em>IConstructor</em>'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return a new object of class '<em>IConstructor</em>'.
+	 * @generated
+	 */
+	IConstructor createIConstructor();
+
+	/**
+	 * Returns a new object of class '<em>IContext Specification</em>'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return a new object of class '<em>IContext Specification</em>'.
+	 * @generated
+	 */
+	IContextSpecification createIContextSpecification();
+
+	/**
+	 * Returns a new object of class '<em>IControlled File</em>'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return a new object of class '<em>IControlled File</em>'.
+	 * @generated
+	 */
+	IControlledFile createIControlledFile();
+
+	/**
+	 * Returns a new object of class '<em>IDefault Drvd Trans</em>'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return a new object of class '<em>IDefault Drvd Trans</em>'.
+	 * @generated
+	 */
+	IDefaultDrvdTrans createIDefaultDrvdTrans();
+
+	/**
+	 * Returns a new object of class '<em>IDependency</em>'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return a new object of class '<em>IDependency</em>'.
+	 * @generated
+	 */
+	IDependency createIDependency();
+
+	/**
+	 * Returns a new object of class '<em>IDeployment Diagram</em>'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return a new object of class '<em>IDeployment Diagram</em>'.
+	 * @generated
+	 */
+	IDeploymentDiagram createIDeploymentDiagram();
+
+	/**
+	 * Returns a new object of class '<em>IDescription</em>'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return a new object of class '<em>IDescription</em>'.
+	 * @generated
+	 */
+	IDescription createIDescription();
+
+	/**
+	 * Returns a new object of class '<em>IDestructor</em>'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return a new object of class '<em>IDestructor</em>'.
+	 * @generated
+	 */
+	IDestructor createIDestructor();
+
+	/**
+	 * Returns a new object of class '<em>IDiagram</em>'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return a new object of class '<em>IDiagram</em>'.
+	 * @generated
+	 */
+	IDiagram createIDiagram();
+
+	/**
+	 * Returns a new object of class '<em>IEmbeded File</em>'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return a new object of class '<em>IEmbeded File</em>'.
+	 * @generated
+	 */
+	IEmbededFile createIEmbededFile();
+
+	/**
+	 * Returns a new object of class '<em>IEnumeration Literal</em>'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return a new object of class '<em>IEnumeration Literal</em>'.
+	 * @generated
+	 */
+	IEnumerationLiteral createIEnumerationLiteral();
+
+	/**
+	 * Returns a new object of class '<em>IEvent</em>'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return a new object of class '<em>IEvent</em>'.
+	 * @generated
+	 */
+	IEvent createIEvent();
+
+	/**
+	 * Returns a new object of class '<em>IEvent Handle</em>'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return a new object of class '<em>IEvent Handle</em>'.
+	 * @generated
+	 */
+	IEventHandle createIEventHandle();
+
+	/**
+	 * Returns a new object of class '<em>IEvent Reception</em>'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return a new object of class '<em>IEvent Reception</em>'.
+	 * @generated
+	 */
+	IEventReception createIEventReception();
+
+	/**
+	 * Returns a new object of class '<em>IExecution Occurrence</em>'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return a new object of class '<em>IExecution Occurrence</em>'.
+	 * @generated
+	 */
+	IExecutionOccurrence createIExecutionOccurrence();
+
+	/**
+	 * Returns a new object of class '<em>IExternal Hyperlink</em>'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return a new object of class '<em>IExternal Hyperlink</em>'.
+	 * @generated
+	 */
+	IExternalHyperlink createIExternalHyperlink();
+
+	/**
+	 * Returns a new object of class '<em>IFile</em>'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return a new object of class '<em>IFile</em>'.
+	 * @generated
+	 */
+	IFile createIFile();
+
+	/**
+	 * Returns a new object of class '<em>IFile Fragment</em>'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return a new object of class '<em>IFile Fragment</em>'.
+	 * @generated
+	 */
+	IFileFragment createIFileFragment();
+
+	/**
+	 * Returns a new object of class '<em>IFlow</em>'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return a new object of class '<em>IFlow</em>'.
+	 * @generated
+	 */
+	IFlow createIFlow();
+
+	/**
+	 * Returns a new object of class '<em>IFlow Item</em>'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return a new object of class '<em>IFlow Item</em>'.
+	 * @generated
+	 */
+	IFlowItem createIFlowItem();
+
+	/**
+	 * Returns a new object of class '<em>IFlowchart</em>'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return a new object of class '<em>IFlowchart</em>'.
+	 * @generated
+	 */
+	IFlowchart createIFlowchart();
+
+	/**
+	 * Returns a new object of class '<em>IFolder</em>'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return a new object of class '<em>IFolder</em>'.
+	 * @generated
+	 */
+	IFolder createIFolder();
+
+	/**
+	 * Returns a new object of class '<em>IFork</em>'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return a new object of class '<em>IFork</em>'.
+	 * @generated
+	 */
+	IFork createIFork();
+
+	/**
+	 * Returns a new object of class '<em>IGeneralization</em>'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return a new object of class '<em>IGeneralization</em>'.
+	 * @generated
+	 */
+	IGeneralization createIGeneralization();
+
+	/**
+	 * Returns a new object of class '<em>IGuard</em>'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return a new object of class '<em>IGuard</em>'.
+	 * @generated
+	 */
+	IGuard createIGuard();
+
+	/**
+	 * Returns a new object of class '<em>IHandle With Data</em>'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return a new object of class '<em>IHandle With Data</em>'.
+	 * @generated
+	 */
+	IHandleWithData createIHandleWithData();
+
+	/**
+	 * Returns a new object of class '<em>IHistory Connector</em>'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return a new object of class '<em>IHistory Connector</em>'.
+	 * @generated
+	 */
+	IHistoryConnector createIHistoryConnector();
+
+	/**
+	 * Returns a new object of class '<em>IHyper Link</em>'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return a new object of class '<em>IHyper Link</em>'.
+	 * @generated
+	 */
+	IHyperLink createIHyperLink();
+
+	/**
+	 * Returns a new object of class '<em>IInformation Flow</em>'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return a new object of class '<em>IInformation Flow</em>'.
+	 * @generated
+	 */
+	IInformationFlow createIInformationFlow();
+
+	/**
+	 * Returns a new object of class '<em>IInformation Item</em>'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return a new object of class '<em>IInformation Item</em>'.
+	 * @generated
+	 */
+	IInformationItem createIInformationItem();
+
+	/**
+	 * Returns a new object of class '<em>IInstance</em>'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return a new object of class '<em>IInstance</em>'.
+	 * @generated
+	 */
+	IInstance createIInstance();
+
+	/**
+	 * Returns a new object of class '<em>IInstance Slot</em>'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return a new object of class '<em>IInstance Slot</em>'.
+	 * @generated
+	 */
+	IInstanceSlot createIInstanceSlot();
+
+	/**
+	 * Returns a new object of class '<em>IInstance Specification</em>'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return a new object of class '<em>IInstance Specification</em>'.
+	 * @generated
+	 */
+	IInstanceSpecification createIInstanceSpecification();
+
+	/**
+	 * Returns a new object of class '<em>IInstance Value</em>'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return a new object of class '<em>IInstance Value</em>'.
+	 * @generated
+	 */
+	IInstanceValue createIInstanceValue();
+
+	/**
+	 * Returns a new object of class '<em>IInteraction Occurrence</em>'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return a new object of class '<em>IInteraction Occurrence</em>'.
+	 * @generated
+	 */
+	IInteractionOccurrence createIInteractionOccurrence();
+
+	/**
+	 * Returns a new object of class '<em>IInteraction Operand</em>'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return a new object of class '<em>IInteraction Operand</em>'.
+	 * @generated
+	 */
+	IInteractionOperand createIInteractionOperand();
+
+	/**
+	 * Returns a new object of class '<em>IInteraction Operator</em>'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return a new object of class '<em>IInteraction Operator</em>'.
+	 * @generated
+	 */
+	IInteractionOperator createIInteractionOperator();
+
+	/**
+	 * Returns a new object of class '<em>IInterface Item</em>'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return a new object of class '<em>IInterface Item</em>'.
+	 * @generated
+	 */
+	IInterfaceItem createIInterfaceItem();
+
+	/**
+	 * Returns a new object of class '<em>IInterface Item Trigger</em>'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return a new object of class '<em>IInterface Item Trigger</em>'.
+	 * @generated
+	 */
+	IInterfaceItemTrigger createIInterfaceItemTrigger();
+
+	/**
+	 * Returns a new object of class '<em>IInternal Hyperlink</em>'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return a new object of class '<em>IInternal Hyperlink</em>'.
+	 * @generated
+	 */
+	IInternalHyperlink createIInternalHyperlink();
+
+	/**
+	 * Returns a new object of class '<em>ILabel</em>'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return a new object of class '<em>ILabel</em>'.
+	 * @generated
+	 */
+	ILabel createILabel();
+
+	/**
+	 * Returns a new object of class '<em>ILink</em>'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return a new object of class '<em>ILink</em>'.
+	 * @generated
+	 */
+	ILink createILink();
+
+	/**
+	 * Returns a new object of class '<em>ILink Instance</em>'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return a new object of class '<em>ILink Instance</em>'.
+	 * @generated
+	 */
+	ILinkInstance createILinkInstance();
+
+	/**
+	 * Returns a new object of class '<em>ILiteral Specification</em>'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return a new object of class '<em>ILiteral Specification</em>'.
+	 * @generated
+	 */
+	ILiteralSpecification createILiteralSpecification();
+
+	/**
+	 * Returns a new object of class '<em>IM Hyper Link</em>'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return a new object of class '<em>IM Hyper Link</em>'.
+	 * @generated
+	 */
+	IMHyperLink createIMHyperLink();
+
+	/**
+	 * Returns a new object of class '<em>IMSC</em>'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return a new object of class '<em>IMSC</em>'.
+	 * @generated
+	 */
+	IMSC createIMSC();
+
+	/**
+	 * Returns a new object of class '<em>IMatrix Instance</em>'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return a new object of class '<em>IMatrix Instance</em>'.
+	 * @generated
+	 */
+	IMatrixInstance createIMatrixInstance();
+
+	/**
+	 * Returns a new object of class '<em>IMatrix Layout</em>'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return a new object of class '<em>IMatrix Layout</em>'.
+	 * @generated
+	 */
+	IMatrixLayout createIMatrixLayout();
+
+	/**
+	 * Returns a new object of class '<em>IMatrix View</em>'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return a new object of class '<em>IMatrix View</em>'.
+	 * @generated
+	 */
+	IMatrixView createIMatrixView();
+
+	/**
+	 * Returns a new object of class '<em>IMessage</em>'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return a new object of class '<em>IMessage</em>'.
+	 * @generated
+	 */
+	IMessage createIMessage();
+
+	/**
+	 * Returns a new object of class '<em>IMessage Point</em>'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return a new object of class '<em>IMessage Point</em>'.
+	 * @generated
+	 */
+	IMessagePoint createIMessagePoint();
+
+	/**
+	 * Returns a new object of class '<em>IMeta Link Handle</em>'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return a new object of class '<em>IMeta Link Handle</em>'.
+	 * @generated
+	 */
+	IMetaLinkHandle createIMetaLinkHandle();
+
+	/**
+	 * Returns a new object of class '<em>IModel Element</em>'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return a new object of class '<em>IModel Element</em>'.
+	 * @generated
+	 */
+	IModelElement createIModelElement();
+
+	/**
+	 * Returns a new object of class '<em>IModule</em>'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return a new object of class '<em>IModule</em>'.
+	 * @generated
+	 */
+	IModule createIModule();
+
+	/**
+	 * Returns a new object of class '<em>IMultiplicity Item</em>'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return a new object of class '<em>IMultiplicity Item</em>'.
+	 * @generated
+	 */
+	IMultiplicityItem createIMultiplicityItem();
+
+	/**
+	 * Returns a new object of class '<em>INode</em>'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return a new object of class '<em>INode</em>'.
+	 * @generated
+	 */
+	INode createINode();
+
+	/**
+	 * Returns a new object of class '<em>IObject Link</em>'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return a new object of class '<em>IObject Link</em>'.
+	 * @generated
+	 */
+	IObjectLink createIObjectLink();
+
+	/**
+	 * Returns a new object of class '<em>IObject Link Handle</em>'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return a new object of class '<em>IObject Link Handle</em>'.
+	 * @generated
+	 */
+	IObjectLinkHandle createIObjectLinkHandle();
+
+	/**
+	 * Returns a new object of class '<em>IObject Model Diagram</em>'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return a new object of class '<em>IObject Model Diagram</em>'.
+	 * @generated
+	 */
+	IObjectModelDiagram createIObjectModelDiagram();
+
+	/**
+	 * Returns a new object of class '<em>IObject Node</em>'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return a new object of class '<em>IObject Node</em>'.
+	 * @generated
+	 */
+	IObjectNode createIObjectNode();
+
+	/**
+	 * Returns a new object of class '<em>IOperation</em>'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return a new object of class '<em>IOperation</em>'.
+	 * @generated
+	 */
+	IOperation createIOperation();
+
+	/**
+	 * Returns a new object of class '<em>IPackage</em>'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return a new object of class '<em>IPackage</em>'.
+	 * @generated
+	 */
+	IPackage createIPackage();
+
+	/**
+	 * Returns a new object of class '<em>IPanel Diagram</em>'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return a new object of class '<em>IPanel Diagram</em>'.
+	 * @generated
+	 */
+	IPanelDiagram createIPanelDiagram();
+
+	/**
+	 * Returns a new object of class '<em>IPart</em>'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return a new object of class '<em>IPart</em>'.
+	 * @generated
+	 */
+	IPart createIPart();
+
+	/**
+	 * Returns a new object of class '<em>IPin</em>'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return a new object of class '<em>IPin</em>'.
+	 * @generated
+	 */
+	IPin createIPin();
+
+	/**
+	 * Returns a new object of class '<em>IPort</em>'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return a new object of class '<em>IPort</em>'.
+	 * @generated
+	 */
+	IPort createIPort();
+
+	/**
+	 * Returns a new object of class '<em>IPrimitive Operation</em>'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return a new object of class '<em>IPrimitive Operation</em>'.
+	 * @generated
+	 */
+	IPrimitiveOperation createIPrimitiveOperation();
+
+	/**
+	 * Returns a new object of class '<em>IProfile</em>'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return a new object of class '<em>IProfile</em>'.
+	 * @generated
+	 */
+	IProfile createIProfile();
+
+	/**
+	 * Returns a new object of class '<em>IProject</em>'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return a new object of class '<em>IProject</em>'.
+	 * @generated
+	 */
+	IProject createIProject();
+
+	/**
+	 * Returns a new object of class '<em>IProperty</em>'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return a new object of class '<em>IProperty</em>'.
+	 * @generated
+	 */
+	IProperty createIProperty();
+
+	/**
+	 * Returns a new object of class '<em>IProperty Container</em>'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return a new object of class '<em>IProperty Container</em>'.
+	 * @generated
+	 */
+	IPropertyContainer createIPropertyContainer();
+
+	/**
+	 * Returns a new object of class '<em>IProperty Metaclass</em>'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return a new object of class '<em>IProperty Metaclass</em>'.
+	 * @generated
+	 */
+	IPropertyMetaclass createIPropertyMetaclass();
+
+	/**
+	 * Returns a new object of class '<em>IProperty Subject</em>'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return a new object of class '<em>IProperty Subject</em>'.
+	 * @generated
+	 */
+	IPropertySubject createIPropertySubject();
+
+	/**
+	 * Returns a new object of class '<em>IReception</em>'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return a new object of class '<em>IReception</em>'.
+	 * @generated
+	 */
+	IReception createIReception();
+
+	/**
+	 * Returns a new object of class '<em>IReference Activity</em>'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return a new object of class '<em>IReference Activity</em>'.
+	 * @generated
+	 */
+	IReferenceActivity createIReferenceActivity();
+
+	/**
+	 * Returns a new object of class '<em>IRelation</em>'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return a new object of class '<em>IRelation</em>'.
+	 * @generated
+	 */
+	IRelation createIRelation();
+
+	/**
+	 * Returns a new object of class '<em>IRequirement</em>'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return a new object of class '<em>IRequirement</em>'.
+	 * @generated
+	 */
+	IRequirement createIRequirement();
+
+	/**
+	 * Returns a new object of class '<em>ISend Action</em>'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return a new object of class '<em>ISend Action</em>'.
+	 * @generated
+	 */
+	ISendAction createISendAction();
+
+	/**
+	 * Returns a new object of class '<em>ISequence Diagram</em>'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return a new object of class '<em>ISequence Diagram</em>'.
+	 * @generated
+	 */
+	ISequenceDiagram createISequenceDiagram();
+
+	/**
+	 * Returns a new object of class '<em>ISlot</em>'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return a new object of class '<em>ISlot</em>'.
+	 * @generated
+	 */
+	ISlot createISlot();
+
+	/**
+	 * Returns a new object of class '<em>IState</em>'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return a new object of class '<em>IState</em>'.
+	 * @generated
+	 */
+	IState createIState();
+
+	/**
+	 * Returns a new object of class '<em>IState Chart</em>'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return a new object of class '<em>IState Chart</em>'.
+	 * @generated
+	 */
+	IStateChart createIStateChart();
+
+	/**
+	 * Returns a new object of class '<em>IState Chart Diagram</em>'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return a new object of class '<em>IState Chart Diagram</em>'.
+	 * @generated
+	 */
+	IStateChartDiagram createIStateChartDiagram();
+
+	/**
+	 * Returns a new object of class '<em>IState Vertex</em>'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return a new object of class '<em>IState Vertex</em>'.
+	 * @generated
+	 */
+	IStateVertex createIStateVertex();
+
+	/**
+	 * Returns a new object of class '<em>IStereotype</em>'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return a new object of class '<em>IStereotype</em>'.
+	 * @generated
+	 */
+	IStereotype createIStereotype();
+
+	/**
+	 * Returns a new object of class '<em>IStructure Diagram</em>'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return a new object of class '<em>IStructure Diagram</em>'.
+	 * @generated
+	 */
+	IStructureDiagram createIStructureDiagram();
+
+	/**
+	 * Returns a new object of class '<em>ISubsystem</em>'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return a new object of class '<em>ISubsystem</em>'.
+	 * @generated
+	 */
+	ISubsystem createISubsystem();
+
+	/**
+	 * Returns a new object of class '<em>ISwimlane</em>'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return a new object of class '<em>ISwimlane</em>'.
+	 * @generated
+	 */
+	ISwimlane createISwimlane();
+
+	/**
+	 * Returns a new object of class '<em>ISys ML Port</em>'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return a new object of class '<em>ISys ML Port</em>'.
+	 * @generated
+	 */
+	ISysMLPort createISysMLPort();
+
+	/**
+	 * Returns a new object of class '<em>ITable Instance</em>'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return a new object of class '<em>ITable Instance</em>'.
+	 * @generated
+	 */
+	ITableInstance createITableInstance();
+
+	/**
+	 * Returns a new object of class '<em>ITable Layout</em>'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return a new object of class '<em>ITable Layout</em>'.
+	 * @generated
+	 */
+	ITableLayout createITableLayout();
+
+	/**
+	 * Returns a new object of class '<em>ITable View</em>'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return a new object of class '<em>ITable View</em>'.
+	 * @generated
+	 */
+	ITableView createITableView();
+
+	/**
+	 * Returns a new object of class '<em>ITag</em>'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return a new object of class '<em>ITag</em>'.
+	 * @generated
+	 */
+	ITag createITag();
+
+	/**
+	 * Returns a new object of class '<em>ITemplate Inst</em>'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return a new object of class '<em>ITemplate Inst</em>'.
+	 * @generated
+	 */
+	ITemplateInst createITemplateInst();
+
+	/**
+	 * Returns a new object of class '<em>ITemplate Inst Param</em>'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return a new object of class '<em>ITemplate Inst Param</em>'.
+	 * @generated
+	 */
+	ITemplateInstParam createITemplateInstParam();
+
+	/**
+	 * Returns a new object of class '<em>ITemplate Instantiation</em>'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return a new object of class '<em>ITemplate Instantiation</em>'.
+	 * @generated
+	 */
+	ITemplateInstantiation createITemplateInstantiation();
+
+	/**
+	 * Returns a new object of class '<em>ITemplate Instantiation Parameter</em>'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return a new object of class '<em>ITemplate Instantiation Parameter</em>'.
+	 * @generated
+	 */
+	ITemplateInstantiationParameter createITemplateInstantiationParameter();
+
+	/**
+	 * Returns a new object of class '<em>ITemplate Parameter</em>'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return a new object of class '<em>ITemplate Parameter</em>'.
+	 * @generated
+	 */
+	ITemplateParameter createITemplateParameter();
+
+	/**
+	 * Returns a new object of class '<em>ITime Event</em>'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return a new object of class '<em>ITime Event</em>'.
+	 * @generated
+	 */
+	ITimeEvent createITimeEvent();
+
+	/**
+	 * Returns a new object of class '<em>ITimeout</em>'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return a new object of class '<em>ITimeout</em>'.
+	 * @generated
+	 */
+	ITimeout createITimeout();
+
+	/**
+	 * Returns a new object of class '<em>ITransition</em>'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return a new object of class '<em>ITransition</em>'.
+	 * @generated
+	 */
+	ITransition createITransition();
+
+	/**
+	 * Returns a new object of class '<em>ITrigger</em>'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return a new object of class '<em>ITrigger</em>'.
+	 * @generated
+	 */
+	ITrigger createITrigger();
+
+	/**
+	 * Returns a new object of class '<em>ITriggered</em>'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return a new object of class '<em>ITriggered</em>'.
+	 * @generated
+	 */
+	ITriggered createITriggered();
+
+	/**
+	 * Returns a new object of class '<em>IType</em>'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return a new object of class '<em>IType</em>'.
+	 * @generated
+	 */
+	IType createIType();
+
+	/**
+	 * Returns a new object of class '<em>IUC Diagram</em>'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return a new object of class '<em>IUC Diagram</em>'.
+	 * @generated
+	 */
+	IUCDiagram createIUCDiagram();
+
+	/**
+	 * Returns a new object of class '<em>IUnit</em>'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return a new object of class '<em>IUnit</em>'.
+	 * @generated
+	 */
+	IUnit createIUnit();
+
+	/**
+	 * Returns a new object of class '<em>IUse Case</em>'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return a new object of class '<em>IUse Case</em>'.
+	 * @generated
+	 */
+	IUseCase createIUseCase();
+
+	/**
+	 * Returns a new object of class '<em>IUse Case Diagram</em>'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return a new object of class '<em>IUse Case Diagram</em>'.
+	 * @generated
+	 */
+	IUseCaseDiagram createIUseCaseDiagram();
+
+	/**
+	 * Returns a new object of class '<em>IUse Case Stereo Type</em>'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return a new object of class '<em>IUse Case Stereo Type</em>'.
+	 * @generated
+	 */
+	IUseCaseStereoType createIUseCaseStereoType();
+
+	/**
+	 * Returns a new object of class '<em>IValue Specification</em>'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return a new object of class '<em>IValue Specification</em>'.
+	 * @generated
+	 */
+	IValueSpecification createIValueSpecification();
+
+	/**
+	 * Returns a new object of class '<em>IVariable</em>'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return a new object of class '<em>IVariable</em>'.
+	 * @generated
+	 */
+	IVariable createIVariable();
+
+	/**
+	 * Returns a new object of class '<em>Table Data Definition</em>'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return a new object of class '<em>Table Data Definition</em>'.
+	 * @generated
+	 */
+	TableDataDefinition createTableDataDefinition();
+
+	/**
+	 * Returns a new object of class '<em>Unknown Type</em>'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return a new object of class '<em>Unknown Type</em>'.
+	 * @generated
+	 */
+	UnknownType createUnknownType();
+
+	/**
+	 * Returns the package supported by this factory.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the package supported by this factory.
+	 * @generated
+	 */
+	UMLRpyPackage getUMLRpyPackage();
+
+} //UMLRpyFactory
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/UMLRpyPackage.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/UMLRpyPackage.java
new file mode 100755
index 0000000..f209882
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/UMLRpyPackage.java
@@ -0,0 +1,55052 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel;
+
+import org.eclipse.emf.ecore.EAttribute;
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.EPackage;
+import org.eclipse.emf.ecore.EReference;
+import org.eclipse.emf.ecore.EcorePackage;
+
+/**
+ * <!-- begin-user-doc -->
+ * The <b>Package</b> for the model.
+ * It contains accessors for the meta objects to represent
+ * <ul>
+ *   <li>each class,</li>
+ *   <li>each feature of each class,</li>
+ *   <li>each operation of each class,</li>
+ *   <li>each enum,</li>
+ *   <li>and each data type</li>
+ * </ul>
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyFactory
+ * @model kind="package"
+ * @generated
+ */
+public interface UMLRpyPackage extends EPackage {
+	/**
+	 * The package name.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	String eNAME = "rpymetamodel"; //$NON-NLS-1$
+
+	/**
+	 * The package namespace URI.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	String eNS_URI = "http://www.eclipse.org/Papyrus/UMLRpy/1.0.0"; //$NON-NLS-1$
+
+	/**
+	 * The package namespace name.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	String eNS_PREFIX = "rhyuml"; //$NON-NLS-1$
+
+	/**
+	 * The singleton instance of the package.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	UMLRpyPackage eINSTANCE = org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.UMLRpyPackageImpl.init();
+
+	/**
+	 * The meta object id for the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.InverseTypeImpl <em>Inverse Type</em>}' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.InverseTypeImpl
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.UMLRpyPackageImpl#getInverseType()
+	 * @generated
+	 */
+	int INVERSE_TYPE = 216;
+
+	/**
+	 * The number of structural features of the '<em>Inverse Type</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int INVERSE_TYPE_FEATURE_COUNT = 0;
+
+	/**
+	 * The number of operations of the '<em>Inverse Type</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int INVERSE_TYPE_OPERATION_COUNT = 0;
+
+	/**
+	 * The meta object id for the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.AssociationsTypeImpl <em>Associations Type</em>}' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.AssociationsTypeImpl
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.UMLRpyPackageImpl#getAssociationsType()
+	 * @generated
+	 */
+	int ASSOCIATIONS_TYPE = 0;
+
+	/**
+	 * The number of structural features of the '<em>Associations Type</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ASSOCIATIONS_TYPE_FEATURE_COUNT = INVERSE_TYPE_FEATURE_COUNT + 0;
+
+	/**
+	 * The number of operations of the '<em>Associations Type</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ASSOCIATIONS_TYPE_OPERATION_COUNT = INVERSE_TYPE_OPERATION_COUNT + 0;
+
+	/**
+	 * The meta object id for the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.GraphicChartTypeImpl <em>Graphic Chart Type</em>}' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.GraphicChartTypeImpl
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.UMLRpyPackageImpl#getGraphicChartType()
+	 * @generated
+	 */
+	int GRAPHIC_CHART_TYPE = 66;
+
+	/**
+	 * The feature id for the '<em><b>Id</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int GRAPHIC_CHART_TYPE__ID = 0;
+
+	/**
+	 * The feature id for the '<em><b>Maccess</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int GRAPHIC_CHART_TYPE__MACCESS = 1;
+
+	/**
+	 * The feature id for the '<em><b>Element List</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int GRAPHIC_CHART_TYPE__ELEMENT_LIST = 2;
+
+	/**
+	 * The feature id for the '<em><b>MnModify Date</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int GRAPHIC_CHART_TYPE__MNMODIFY_DATE = 3;
+
+	/**
+	 * The feature id for the '<em><b>Mcurrent Left Top</b></em>' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int GRAPHIC_CHART_TYPE__MCURRENT_LEFT_TOP = 4;
+
+	/**
+	 * The feature id for the '<em><b>Mmodified</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int GRAPHIC_CHART_TYPE__MMODIFIED = 5;
+
+	/**
+	 * The feature id for the '<em><b>MnCreate Date</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int GRAPHIC_CHART_TYPE__MNCREATE_DATE = 6;
+
+	/**
+	 * The feature id for the '<em><b>MpParent</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int GRAPHIC_CHART_TYPE__MPPARENT = 7;
+
+	/**
+	 * The feature id for the '<em><b>Marrow Style</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int GRAPHIC_CHART_TYPE__MARROW_STYLE = 8;
+
+	/**
+	 * The feature id for the '<em><b>Mdraw Behavior</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int GRAPHIC_CHART_TYPE__MDRAW_BEHAVIOR = 9;
+
+	/**
+	 * The feature id for the '<em><b>Mcurrent Right Bottom</b></em>' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int GRAPHIC_CHART_TYPE__MCURRENT_RIGHT_BOTTOM = 10;
+
+	/**
+	 * The feature id for the '<em><b>Mcreator</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int GRAPHIC_CHART_TYPE__MCREATOR = 11;
+
+	/**
+	 * The feature id for the '<em><b>MbScale With Zoom</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int GRAPHIC_CHART_TYPE__MBSCALE_WITH_ZOOM = 12;
+
+	/**
+	 * The feature id for the '<em><b>Mtype</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int GRAPHIC_CHART_TYPE__MTYPE = 13;
+
+	/**
+	 * The feature id for the '<em><b>Graph Elements</b></em>' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int GRAPHIC_CHART_TYPE__GRAPH_ELEMENTS = 14;
+
+	/**
+	 * The feature id for the '<em><b>Mname</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int GRAPHIC_CHART_TYPE__MNAME = 15;
+
+	/**
+	 * The feature id for the '<em><b>Mfile Version</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int GRAPHIC_CHART_TYPE__MFILE_VERSION = 16;
+
+	/**
+	 * The feature id for the '<em><b>MbIs Preferences Initialized</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int GRAPHIC_CHART_TYPE__MBIS_PREFERENCES_INITIALIZED = 17;
+
+	/**
+	 * The number of structural features of the '<em>Graphic Chart Type</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int GRAPHIC_CHART_TYPE_FEATURE_COUNT = 18;
+
+	/**
+	 * The number of operations of the '<em>Graphic Chart Type</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int GRAPHIC_CHART_TYPE_OPERATION_COUNT = 0;
+
+	/**
+	 * The meta object id for the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CCollaborationChartImpl <em>CCollaboration Chart</em>}' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CCollaborationChartImpl
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.UMLRpyPackageImpl#getCCollaborationChart()
+	 * @generated
+	 */
+	int CCOLLABORATION_CHART = 1;
+
+	/**
+	 * The feature id for the '<em><b>Id</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CCOLLABORATION_CHART__ID = GRAPHIC_CHART_TYPE__ID;
+
+	/**
+	 * The feature id for the '<em><b>Maccess</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CCOLLABORATION_CHART__MACCESS = GRAPHIC_CHART_TYPE__MACCESS;
+
+	/**
+	 * The feature id for the '<em><b>Element List</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CCOLLABORATION_CHART__ELEMENT_LIST = GRAPHIC_CHART_TYPE__ELEMENT_LIST;
+
+	/**
+	 * The feature id for the '<em><b>MnModify Date</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CCOLLABORATION_CHART__MNMODIFY_DATE = GRAPHIC_CHART_TYPE__MNMODIFY_DATE;
+
+	/**
+	 * The feature id for the '<em><b>Mcurrent Left Top</b></em>' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CCOLLABORATION_CHART__MCURRENT_LEFT_TOP = GRAPHIC_CHART_TYPE__MCURRENT_LEFT_TOP;
+
+	/**
+	 * The feature id for the '<em><b>Mmodified</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CCOLLABORATION_CHART__MMODIFIED = GRAPHIC_CHART_TYPE__MMODIFIED;
+
+	/**
+	 * The feature id for the '<em><b>MnCreate Date</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CCOLLABORATION_CHART__MNCREATE_DATE = GRAPHIC_CHART_TYPE__MNCREATE_DATE;
+
+	/**
+	 * The feature id for the '<em><b>MpParent</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CCOLLABORATION_CHART__MPPARENT = GRAPHIC_CHART_TYPE__MPPARENT;
+
+	/**
+	 * The feature id for the '<em><b>Marrow Style</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CCOLLABORATION_CHART__MARROW_STYLE = GRAPHIC_CHART_TYPE__MARROW_STYLE;
+
+	/**
+	 * The feature id for the '<em><b>Mdraw Behavior</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CCOLLABORATION_CHART__MDRAW_BEHAVIOR = GRAPHIC_CHART_TYPE__MDRAW_BEHAVIOR;
+
+	/**
+	 * The feature id for the '<em><b>Mcurrent Right Bottom</b></em>' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CCOLLABORATION_CHART__MCURRENT_RIGHT_BOTTOM = GRAPHIC_CHART_TYPE__MCURRENT_RIGHT_BOTTOM;
+
+	/**
+	 * The feature id for the '<em><b>Mcreator</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CCOLLABORATION_CHART__MCREATOR = GRAPHIC_CHART_TYPE__MCREATOR;
+
+	/**
+	 * The feature id for the '<em><b>MbScale With Zoom</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CCOLLABORATION_CHART__MBSCALE_WITH_ZOOM = GRAPHIC_CHART_TYPE__MBSCALE_WITH_ZOOM;
+
+	/**
+	 * The feature id for the '<em><b>Mtype</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CCOLLABORATION_CHART__MTYPE = GRAPHIC_CHART_TYPE__MTYPE;
+
+	/**
+	 * The feature id for the '<em><b>Graph Elements</b></em>' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CCOLLABORATION_CHART__GRAPH_ELEMENTS = GRAPHIC_CHART_TYPE__GRAPH_ELEMENTS;
+
+	/**
+	 * The feature id for the '<em><b>Mname</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CCOLLABORATION_CHART__MNAME = GRAPHIC_CHART_TYPE__MNAME;
+
+	/**
+	 * The feature id for the '<em><b>Mfile Version</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CCOLLABORATION_CHART__MFILE_VERSION = GRAPHIC_CHART_TYPE__MFILE_VERSION;
+
+	/**
+	 * The feature id for the '<em><b>MbIs Preferences Initialized</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CCOLLABORATION_CHART__MBIS_PREFERENCES_INITIALIZED = GRAPHIC_CHART_TYPE__MBIS_PREFERENCES_INITIALIZED;
+
+	/**
+	 * The feature id for the '<em><b>MpModel Object</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CCOLLABORATION_CHART__MPMODEL_OBJECT = GRAPHIC_CHART_TYPE_FEATURE_COUNT + 0;
+
+	/**
+	 * The feature id for the '<em><b>MpRoot</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CCOLLABORATION_CHART__MPROOT = GRAPHIC_CHART_TYPE_FEATURE_COUNT + 1;
+
+	/**
+	 * The number of structural features of the '<em>CCollaboration Chart</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CCOLLABORATION_CHART_FEATURE_COUNT = GRAPHIC_CHART_TYPE_FEATURE_COUNT + 2;
+
+	/**
+	 * The number of operations of the '<em>CCollaboration Chart</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CCOLLABORATION_CHART_OPERATION_COUNT = GRAPHIC_CHART_TYPE_OPERATION_COUNT + 0;
+
+	/**
+	 * The meta object id for the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.M_pRootTypeImpl <em>MpRoot Type</em>}' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.M_pRootTypeImpl
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.UMLRpyPackageImpl#getM_pRootType()
+	 * @generated
+	 */
+	int MPROOT_TYPE = 227;
+
+	/**
+	 * The number of structural features of the '<em>MpRoot Type</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int MPROOT_TYPE_FEATURE_COUNT = 0;
+
+	/**
+	 * The number of operations of the '<em>MpRoot Type</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int MPROOT_TYPE_OPERATION_COUNT = 0;
+
+	/**
+	 * The meta object id for the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.GraphElementsTypeImpl <em>Graph Elements Type</em>}' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.GraphElementsTypeImpl
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.UMLRpyPackageImpl#getGraphElementsType()
+	 * @generated
+	 */
+	int GRAPH_ELEMENTS_TYPE = 65;
+
+	/**
+	 * The feature id for the '<em><b>Id</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int GRAPH_ELEMENTS_TYPE__ID = MPROOT_TYPE_FEATURE_COUNT + 0;
+
+	/**
+	 * The feature id for the '<em><b>Mdraw Behavior</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int GRAPH_ELEMENTS_TYPE__MDRAW_BEHAVIOR = MPROOT_TYPE_FEATURE_COUNT + 1;
+
+	/**
+	 * The feature id for the '<em><b>Mtype</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int GRAPH_ELEMENTS_TYPE__MTYPE = MPROOT_TYPE_FEATURE_COUNT + 2;
+
+	/**
+	 * The feature id for the '<em><b>Mname</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int GRAPH_ELEMENTS_TYPE__MNAME = MPROOT_TYPE_FEATURE_COUNT + 3;
+
+	/**
+	 * The feature id for the '<em><b>MbIs Preferences Initialized</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int GRAPH_ELEMENTS_TYPE__MBIS_PREFERENCES_INITIALIZED = MPROOT_TYPE_FEATURE_COUNT + 4;
+
+	/**
+	 * The number of structural features of the '<em>Graph Elements Type</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int GRAPH_ELEMENTS_TYPE_FEATURE_COUNT = MPROOT_TYPE_FEATURE_COUNT + 5;
+
+	/**
+	 * The number of operations of the '<em>Graph Elements Type</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int GRAPH_ELEMENTS_TYPE_OPERATION_COUNT = MPROOT_TYPE_OPERATION_COUNT + 0;
+
+	/**
+	 * The meta object id for the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIActionStateImpl <em>CGI Action State</em>}' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIActionStateImpl
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.UMLRpyPackageImpl#getCGIActionState()
+	 * @generated
+	 */
+	int CGI_ACTION_STATE = 2;
+
+	/**
+	 * The feature id for the '<em><b>Id</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_ACTION_STATE__ID = GRAPH_ELEMENTS_TYPE__ID;
+
+	/**
+	 * The feature id for the '<em><b>Mdraw Behavior</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_ACTION_STATE__MDRAW_BEHAVIOR = GRAPH_ELEMENTS_TYPE__MDRAW_BEHAVIOR;
+
+	/**
+	 * The feature id for the '<em><b>Mtype</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_ACTION_STATE__MTYPE = GRAPH_ELEMENTS_TYPE__MTYPE;
+
+	/**
+	 * The feature id for the '<em><b>Mname</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_ACTION_STATE__MNAME = GRAPH_ELEMENTS_TYPE__MNAME;
+
+	/**
+	 * The feature id for the '<em><b>MbIs Preferences Initialized</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_ACTION_STATE__MBIS_PREFERENCES_INITIALIZED = GRAPH_ELEMENTS_TYPE__MBIS_PREFERENCES_INITIALIZED;
+
+	/**
+	 * The feature id for the '<em><b>Properties</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_ACTION_STATE__PROPERTIES = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 0;
+
+	/**
+	 * The feature id for the '<em><b>MpModel Object</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_ACTION_STATE__MPMODEL_OBJECT = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 1;
+
+	/**
+	 * The feature id for the '<em><b>MpParent</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_ACTION_STATE__MPPARENT = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 2;
+
+	/**
+	 * The feature id for the '<em><b>Mtransform</b></em>' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_ACTION_STATE__MTRANSFORM = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 3;
+
+	/**
+	 * The feature id for the '<em><b>MAdditional Label</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_ACTION_STATE__MADDITIONAL_LABEL = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 4;
+
+	/**
+	 * The feature id for the '<em><b>Mpolygon</b></em>' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_ACTION_STATE__MPOLYGON = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 5;
+
+	/**
+	 * The feature id for the '<em><b>MnName Format</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_ACTION_STATE__MNNAME_FORMAT = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 6;
+
+	/**
+	 * The feature id for the '<em><b>MnIs Name Format</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_ACTION_STATE__MNIS_NAME_FORMAT = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 7;
+
+	/**
+	 * The feature id for the '<em><b>Compartments</b></em>' reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_ACTION_STATE__COMPARTMENTS = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 8;
+
+	/**
+	 * The feature id for the '<em><b>NAnd Line Count</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_ACTION_STATE__NAND_LINE_COUNT = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 9;
+
+	/**
+	 * The feature id for the '<em><b>MpInherits From</b></em>' reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_ACTION_STATE__MPINHERITS_FROM = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 10;
+
+	/**
+	 * The feature id for the '<em><b>MnInheritance Mask</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_ACTION_STATE__MNINHERITANCE_MASK = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 11;
+
+	/**
+	 * The feature id for the '<em><b>MpDefault Component Relation</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_ACTION_STATE__MPDEFAULT_COMPONENT_RELATION = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 12;
+
+	/**
+	 * The feature id for the '<em><b>MName Display Mode</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_ACTION_STATE__MNAME_DISPLAY_MODE = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 13;
+
+	/**
+	 * The feature id for the '<em><b>MAct Desc Labl Diaplay Mode</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_ACTION_STATE__MACT_DESC_LABL_DIAPLAY_MODE = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 14;
+
+	/**
+	 * The feature id for the '<em><b>Mmove And Line Time Stamp</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_ACTION_STATE__MMOVE_AND_LINE_TIME_STAMP = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 15;
+
+	/**
+	 * The number of structural features of the '<em>CGI Action State</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_ACTION_STATE_FEATURE_COUNT = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 16;
+
+	/**
+	 * The number of operations of the '<em>CGI Action State</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_ACTION_STATE_OPERATION_COUNT = GRAPH_ELEMENTS_TYPE_OPERATION_COUNT + 0;
+
+	/**
+	 * The meta object id for the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIActiveXImpl <em>CGI Active X</em>}' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIActiveXImpl
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.UMLRpyPackageImpl#getCGIActiveX()
+	 * @generated
+	 */
+	int CGI_ACTIVE_X = 3;
+
+	/**
+	 * The feature id for the '<em><b>Id</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_ACTIVE_X__ID = GRAPH_ELEMENTS_TYPE__ID;
+
+	/**
+	 * The feature id for the '<em><b>Mdraw Behavior</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_ACTIVE_X__MDRAW_BEHAVIOR = GRAPH_ELEMENTS_TYPE__MDRAW_BEHAVIOR;
+
+	/**
+	 * The feature id for the '<em><b>Mtype</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_ACTIVE_X__MTYPE = GRAPH_ELEMENTS_TYPE__MTYPE;
+
+	/**
+	 * The feature id for the '<em><b>Mname</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_ACTIVE_X__MNAME = GRAPH_ELEMENTS_TYPE__MNAME;
+
+	/**
+	 * The feature id for the '<em><b>MbIs Preferences Initialized</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_ACTIVE_X__MBIS_PREFERENCES_INITIALIZED = GRAPH_ELEMENTS_TYPE__MBIS_PREFERENCES_INITIALIZED;
+
+	/**
+	 * The feature id for the '<em><b>Properties</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_ACTIVE_X__PROPERTIES = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 0;
+
+	/**
+	 * The feature id for the '<em><b>MpModel Object</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_ACTIVE_X__MPMODEL_OBJECT = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 1;
+
+	/**
+	 * The feature id for the '<em><b>MpParent</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_ACTIVE_X__MPPARENT = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 2;
+
+	/**
+	 * The feature id for the '<em><b>Mtransform</b></em>' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_ACTIVE_X__MTRANSFORM = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 3;
+
+	/**
+	 * The feature id for the '<em><b>Mpolygon</b></em>' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_ACTIVE_X__MPOLYGON = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 4;
+
+	/**
+	 * The feature id for the '<em><b>MnName Format</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_ACTIVE_X__MNNAME_FORMAT = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 5;
+
+	/**
+	 * The feature id for the '<em><b>MnIs Name Format</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_ACTIVE_X__MNIS_NAME_FORMAT = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 6;
+
+	/**
+	 * The feature id for the '<em><b>Compartments</b></em>' reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_ACTIVE_X__COMPARTMENTS = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 7;
+
+	/**
+	 * The feature id for the '<em><b>Mcs Model Obj Path</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_ACTIVE_X__MCS_MODEL_OBJ_PATH = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 8;
+
+	/**
+	 * The feature id for the '<em><b>Mcs Name</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_ACTIVE_X__MCS_NAME = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 9;
+
+	/**
+	 * The feature id for the '<em><b>MParts Array</b></em>' reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_ACTIVE_X__MPARTS_ARRAY = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 10;
+
+	/**
+	 * The number of structural features of the '<em>CGI Active X</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_ACTIVE_X_FEATURE_COUNT = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 11;
+
+	/**
+	 * The number of operations of the '<em>CGI Active X</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_ACTIVE_X_OPERATION_COUNT = GRAPH_ELEMENTS_TYPE_OPERATION_COUNT + 0;
+
+	/**
+	 * The meta object id for the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIAnchorImpl <em>CGI Anchor</em>}' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIAnchorImpl
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.UMLRpyPackageImpl#getCGIAnchor()
+	 * @generated
+	 */
+	int CGI_ANCHOR = 4;
+
+	/**
+	 * The feature id for the '<em><b>Id</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_ANCHOR__ID = GRAPH_ELEMENTS_TYPE__ID;
+
+	/**
+	 * The feature id for the '<em><b>Mdraw Behavior</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_ANCHOR__MDRAW_BEHAVIOR = GRAPH_ELEMENTS_TYPE__MDRAW_BEHAVIOR;
+
+	/**
+	 * The feature id for the '<em><b>Mtype</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_ANCHOR__MTYPE = GRAPH_ELEMENTS_TYPE__MTYPE;
+
+	/**
+	 * The feature id for the '<em><b>Mname</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_ANCHOR__MNAME = GRAPH_ELEMENTS_TYPE__MNAME;
+
+	/**
+	 * The feature id for the '<em><b>MbIs Preferences Initialized</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_ANCHOR__MBIS_PREFERENCES_INITIALIZED = GRAPH_ELEMENTS_TYPE__MBIS_PREFERENCES_INITIALIZED;
+
+	/**
+	 * The feature id for the '<em><b>MpModel Object</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_ANCHOR__MPMODEL_OBJECT = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 0;
+
+	/**
+	 * The feature id for the '<em><b>MpParent</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_ANCHOR__MPPARENT = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 1;
+
+	/**
+	 * The feature id for the '<em><b>MpSource</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_ANCHOR__MPSOURCE = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 2;
+
+	/**
+	 * The feature id for the '<em><b>Msource Type</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_ANCHOR__MSOURCE_TYPE = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 3;
+
+	/**
+	 * The feature id for the '<em><b>MpTarget</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_ANCHOR__MPTARGET = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 4;
+
+	/**
+	 * The feature id for the '<em><b>Mtarget Type</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_ANCHOR__MTARGET_TYPE = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 5;
+
+	/**
+	 * The feature id for the '<em><b>Mdirection</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_ANCHOR__MDIRECTION = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 6;
+
+	/**
+	 * The feature id for the '<em><b>Mrpn</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_ANCHOR__MRPN = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 7;
+
+	/**
+	 * The feature id for the '<em><b>Mangle Point1</b></em>' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_ANCHOR__MANGLE_POINT1 = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 8;
+
+	/**
+	 * The feature id for the '<em><b>Mangle Point2</b></em>' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_ANCHOR__MANGLE_POINT2 = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 9;
+
+	/**
+	 * The feature id for the '<em><b>Mline style</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_ANCHOR__MLINE_STYLE = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 10;
+
+	/**
+	 * The feature id for the '<em><b>MSource Port</b></em>' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_ANCHOR__MSOURCE_PORT = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 11;
+
+	/**
+	 * The feature id for the '<em><b>MTarget Port</b></em>' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_ANCHOR__MTARGET_PORT = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 12;
+
+	/**
+	 * The feature id for the '<em><b>Properties</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_ANCHOR__PROPERTIES = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 13;
+
+	/**
+	 * The feature id for the '<em><b>Mcolor</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_ANCHOR__MCOLOR = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 14;
+
+	/**
+	 * The feature id for the '<em><b>Mline Width</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_ANCHOR__MLINE_WIDTH = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 15;
+
+	/**
+	 * The feature id for the '<em><b>Marrow</b></em>' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_ANCHOR__MARROW = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 16;
+
+	/**
+	 * The number of structural features of the '<em>CGI Anchor</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_ANCHOR_FEATURE_COUNT = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 17;
+
+	/**
+	 * The number of operations of the '<em>CGI Anchor</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_ANCHOR_OPERATION_COUNT = GRAPH_ELEMENTS_TYPE_OPERATION_COUNT + 0;
+
+	/**
+	 * The meta object id for the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIAnnotationImpl <em>CGI Annotation</em>}' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIAnnotationImpl
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.UMLRpyPackageImpl#getCGIAnnotation()
+	 * @generated
+	 */
+	int CGI_ANNOTATION = 5;
+
+	/**
+	 * The feature id for the '<em><b>Id</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_ANNOTATION__ID = GRAPH_ELEMENTS_TYPE__ID;
+
+	/**
+	 * The feature id for the '<em><b>Mdraw Behavior</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_ANNOTATION__MDRAW_BEHAVIOR = GRAPH_ELEMENTS_TYPE__MDRAW_BEHAVIOR;
+
+	/**
+	 * The feature id for the '<em><b>Mtype</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_ANNOTATION__MTYPE = GRAPH_ELEMENTS_TYPE__MTYPE;
+
+	/**
+	 * The feature id for the '<em><b>Mname</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_ANNOTATION__MNAME = GRAPH_ELEMENTS_TYPE__MNAME;
+
+	/**
+	 * The feature id for the '<em><b>MbIs Preferences Initialized</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_ANNOTATION__MBIS_PREFERENCES_INITIALIZED = GRAPH_ELEMENTS_TYPE__MBIS_PREFERENCES_INITIALIZED;
+
+	/**
+	 * The feature id for the '<em><b>Properties</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_ANNOTATION__PROPERTIES = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 0;
+
+	/**
+	 * The feature id for the '<em><b>MpParent</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_ANNOTATION__MPPARENT = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 1;
+
+	/**
+	 * The feature id for the '<em><b>Mtransform</b></em>' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_ANNOTATION__MTRANSFORM = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 2;
+
+	/**
+	 * The feature id for the '<em><b>MAdditional Label</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_ANNOTATION__MADDITIONAL_LABEL = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 3;
+
+	/**
+	 * The feature id for the '<em><b>Mpolygon</b></em>' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_ANNOTATION__MPOLYGON = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 4;
+
+	/**
+	 * The feature id for the '<em><b>MnName Format</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_ANNOTATION__MNNAME_FORMAT = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 5;
+
+	/**
+	 * The feature id for the '<em><b>MnIs Name Format</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_ANNOTATION__MNIS_NAME_FORMAT = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 6;
+
+	/**
+	 * The feature id for the '<em><b>ITempdisplay Text Flag</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_ANNOTATION__ITEMPDISPLAY_TEXT_FLAG = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 7;
+
+	/**
+	 * The feature id for the '<em><b>MbIs Box Style</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_ANNOTATION__MBIS_BOX_STYLE = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 8;
+
+	/**
+	 * The feature id for the '<em><b>MpModel Object</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_ANNOTATION__MPMODEL_OBJECT = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 9;
+
+	/**
+	 * The feature id for the '<em><b>Mcolor</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_ANNOTATION__MCOLOR = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 10;
+
+	/**
+	 * The feature id for the '<em><b>Mline Width</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_ANNOTATION__MLINE_WIDTH = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 11;
+
+	/**
+	 * The feature id for the '<em><b>Frameset</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_ANNOTATION__FRAMESET = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 12;
+
+	/**
+	 * The feature id for the '<em><b>Compartments</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_ANNOTATION__COMPARTMENTS = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 13;
+
+	/**
+	 * The feature id for the '<em><b>MbIs Structured</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_ANNOTATION__MBIS_STRUCTURED = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 14;
+
+	/**
+	 * The feature id for the '<em><b>MbFrameset Modified</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_ANNOTATION__MBFRAMESET_MODIFIED = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 15;
+
+	/**
+	 * The number of structural features of the '<em>CGI Annotation</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_ANNOTATION_FEATURE_COUNT = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 16;
+
+	/**
+	 * The number of operations of the '<em>CGI Annotation</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_ANNOTATION_OPERATION_COUNT = GRAPH_ELEMENTS_TYPE_OPERATION_COUNT + 0;
+
+	/**
+	 * The meta object id for the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIArrowImpl <em>CGI Arrow</em>}' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIArrowImpl
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.UMLRpyPackageImpl#getCGIArrow()
+	 * @generated
+	 */
+	int CGI_ARROW = 6;
+
+	/**
+	 * The feature id for the '<em><b>Id</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_ARROW__ID = GRAPH_ELEMENTS_TYPE__ID;
+
+	/**
+	 * The feature id for the '<em><b>Mdraw Behavior</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_ARROW__MDRAW_BEHAVIOR = GRAPH_ELEMENTS_TYPE__MDRAW_BEHAVIOR;
+
+	/**
+	 * The feature id for the '<em><b>Mtype</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_ARROW__MTYPE = GRAPH_ELEMENTS_TYPE__MTYPE;
+
+	/**
+	 * The feature id for the '<em><b>Mname</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_ARROW__MNAME = GRAPH_ELEMENTS_TYPE__MNAME;
+
+	/**
+	 * The feature id for the '<em><b>MbIs Preferences Initialized</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_ARROW__MBIS_PREFERENCES_INITIALIZED = GRAPH_ELEMENTS_TYPE__MBIS_PREFERENCES_INITIALIZED;
+
+	/**
+	 * The feature id for the '<em><b>MpModel Object</b></em>' reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_ARROW__MPMODEL_OBJECT = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 0;
+
+	/**
+	 * The feature id for the '<em><b>MpParent</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_ARROW__MPPARENT = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 1;
+
+	/**
+	 * The feature id for the '<em><b>MpSource</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_ARROW__MPSOURCE = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 2;
+
+	/**
+	 * The feature id for the '<em><b>Msource Type</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_ARROW__MSOURCE_TYPE = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 3;
+
+	/**
+	 * The feature id for the '<em><b>MpTarget</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_ARROW__MPTARGET = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 4;
+
+	/**
+	 * The feature id for the '<em><b>Mtarget Type</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_ARROW__MTARGET_TYPE = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 5;
+
+	/**
+	 * The feature id for the '<em><b>Mdirection</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_ARROW__MDIRECTION = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 6;
+
+	/**
+	 * The feature id for the '<em><b>Mrpn</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_ARROW__MRPN = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 7;
+
+	/**
+	 * The feature id for the '<em><b>Mangle Point1</b></em>' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_ARROW__MANGLE_POINT1 = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 8;
+
+	/**
+	 * The feature id for the '<em><b>Mangle Point2</b></em>' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_ARROW__MANGLE_POINT2 = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 9;
+
+	/**
+	 * The feature id for the '<em><b>Mline style</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_ARROW__MLINE_STYLE = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 10;
+
+	/**
+	 * The feature id for the '<em><b>MSource Port</b></em>' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_ARROW__MSOURCE_PORT = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 11;
+
+	/**
+	 * The feature id for the '<em><b>MTarget Port</b></em>' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_ARROW__MTARGET_PORT = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 12;
+
+	/**
+	 * The number of structural features of the '<em>CGI Arrow</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_ARROW_FEATURE_COUNT = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 13;
+
+	/**
+	 * The number of operations of the '<em>CGI Arrow</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_ARROW_OPERATION_COUNT = GRAPH_ELEMENTS_TYPE_OPERATION_COUNT + 0;
+
+	/**
+	 * The meta object id for the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIAssociationEndImpl <em>CGI Association End</em>}' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIAssociationEndImpl
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.UMLRpyPackageImpl#getCGIAssociationEnd()
+	 * @generated
+	 */
+	int CGI_ASSOCIATION_END = 7;
+
+	/**
+	 * The feature id for the '<em><b>Id</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_ASSOCIATION_END__ID = GRAPH_ELEMENTS_TYPE__ID;
+
+	/**
+	 * The feature id for the '<em><b>Mdraw Behavior</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_ASSOCIATION_END__MDRAW_BEHAVIOR = GRAPH_ELEMENTS_TYPE__MDRAW_BEHAVIOR;
+
+	/**
+	 * The feature id for the '<em><b>Mtype</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_ASSOCIATION_END__MTYPE = GRAPH_ELEMENTS_TYPE__MTYPE;
+
+	/**
+	 * The feature id for the '<em><b>Mname</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_ASSOCIATION_END__MNAME = GRAPH_ELEMENTS_TYPE__MNAME;
+
+	/**
+	 * The feature id for the '<em><b>MbIs Preferences Initialized</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_ASSOCIATION_END__MBIS_PREFERENCES_INITIALIZED = GRAPH_ELEMENTS_TYPE__MBIS_PREFERENCES_INITIALIZED;
+
+	/**
+	 * The feature id for the '<em><b>Properties</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_ASSOCIATION_END__PROPERTIES = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 0;
+
+	/**
+	 * The feature id for the '<em><b>MpModel Object</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_ASSOCIATION_END__MPMODEL_OBJECT = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 1;
+
+	/**
+	 * The feature id for the '<em><b>MpParent</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_ASSOCIATION_END__MPPARENT = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 2;
+
+	/**
+	 * The feature id for the '<em><b>MpSource</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_ASSOCIATION_END__MPSOURCE = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 3;
+
+	/**
+	 * The feature id for the '<em><b>Msource Type</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_ASSOCIATION_END__MSOURCE_TYPE = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 4;
+
+	/**
+	 * The feature id for the '<em><b>MpTarget</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_ASSOCIATION_END__MPTARGET = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 5;
+
+	/**
+	 * The feature id for the '<em><b>Mtarget Type</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_ASSOCIATION_END__MTARGET_TYPE = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 6;
+
+	/**
+	 * The feature id for the '<em><b>Mdirection</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_ASSOCIATION_END__MDIRECTION = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 7;
+
+	/**
+	 * The feature id for the '<em><b>Mrpn</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_ASSOCIATION_END__MRPN = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 8;
+
+	/**
+	 * The feature id for the '<em><b>Mangle Point1</b></em>' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_ASSOCIATION_END__MANGLE_POINT1 = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 9;
+
+	/**
+	 * The feature id for the '<em><b>Mangle Point2</b></em>' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_ASSOCIATION_END__MANGLE_POINT2 = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 10;
+
+	/**
+	 * The feature id for the '<em><b>Mline style</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_ASSOCIATION_END__MLINE_STYLE = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 11;
+
+	/**
+	 * The feature id for the '<em><b>MSource Port</b></em>' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_ASSOCIATION_END__MSOURCE_PORT = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 12;
+
+	/**
+	 * The feature id for the '<em><b>MTarget Port</b></em>' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_ASSOCIATION_END__MTARGET_PORT = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 13;
+
+	/**
+	 * The feature id for the '<em><b>MpInverse Model Object</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_ASSOCIATION_END__MPINVERSE_MODEL_OBJECT = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 14;
+
+	/**
+	 * The feature id for the '<em><b>MpInstance</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_ASSOCIATION_END__MPINSTANCE = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 15;
+
+	/**
+	 * The feature id for the '<em><b>MpInverse Instance</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_ASSOCIATION_END__MPINVERSE_INSTANCE = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 16;
+
+	/**
+	 * The feature id for the '<em><b>MbShow Source Multiplicity</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_ASSOCIATION_END__MBSHOW_SOURCE_MULTIPLICITY = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 17;
+
+	/**
+	 * The feature id for the '<em><b>MbShow Source Role</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_ASSOCIATION_END__MBSHOW_SOURCE_ROLE = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 18;
+
+	/**
+	 * The feature id for the '<em><b>MbShow Target Multiplicity</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_ASSOCIATION_END__MBSHOW_TARGET_MULTIPLICITY = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 19;
+
+	/**
+	 * The feature id for the '<em><b>MbShow Target Role</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_ASSOCIATION_END__MBSHOW_TARGET_ROLE = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 20;
+
+	/**
+	 * The feature id for the '<em><b>MbShow Link Name</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_ASSOCIATION_END__MBSHOW_LINK_NAME = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 21;
+
+	/**
+	 * The feature id for the '<em><b>MbShow Specific Type</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_ASSOCIATION_END__MBSHOW_SPECIFIC_TYPE = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 22;
+
+	/**
+	 * The feature id for the '<em><b>MbInstance</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_ASSOCIATION_END__MBINSTANCE = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 23;
+
+	/**
+	 * The feature id for the '<em><b>MbShow Qualifier1</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_ASSOCIATION_END__MBSHOW_QUALIFIER1 = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 24;
+
+	/**
+	 * The feature id for the '<em><b>MbShow Qualifier2</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_ASSOCIATION_END__MBSHOW_QUALIFIER2 = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 25;
+
+	/**
+	 * The feature id for the '<em><b>Msource Role</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_ASSOCIATION_END__MSOURCE_ROLE = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 26;
+
+	/**
+	 * The feature id for the '<em><b>Mtarget Role</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_ASSOCIATION_END__MTARGET_ROLE = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 27;
+
+	/**
+	 * The feature id for the '<em><b>Msource Multiplicity</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_ASSOCIATION_END__MSOURCE_MULTIPLICITY = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 28;
+
+	/**
+	 * The feature id for the '<em><b>Mtarget Multiplicity</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_ASSOCIATION_END__MTARGET_MULTIPLICITY = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 29;
+
+	/**
+	 * The feature id for the '<em><b>Msource Qualifier</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_ASSOCIATION_END__MSOURCE_QUALIFIER = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 30;
+
+	/**
+	 * The feature id for the '<em><b>Mtarget Qualifier</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_ASSOCIATION_END__MTARGET_QUALIFIER = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 31;
+
+	/**
+	 * The feature id for the '<em><b>Mspecific Type</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_ASSOCIATION_END__MSPECIFIC_TYPE = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 32;
+
+	/**
+	 * The feature id for the '<em><b>Marrow</b></em>' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_ASSOCIATION_END__MARROW = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 33;
+
+	/**
+	 * The number of structural features of the '<em>CGI Association End</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_ASSOCIATION_END_FEATURE_COUNT = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 34;
+
+	/**
+	 * The number of operations of the '<em>CGI Association End</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_ASSOCIATION_END_OPERATION_COUNT = GRAPH_ELEMENTS_TYPE_OPERATION_COUNT + 0;
+
+	/**
+	 * The meta object id for the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIAssociationRoleImpl <em>CGI Association Role</em>}' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIAssociationRoleImpl
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.UMLRpyPackageImpl#getCGIAssociationRole()
+	 * @generated
+	 */
+	int CGI_ASSOCIATION_ROLE = 8;
+
+	/**
+	 * The feature id for the '<em><b>Id</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_ASSOCIATION_ROLE__ID = GRAPH_ELEMENTS_TYPE__ID;
+
+	/**
+	 * The feature id for the '<em><b>Mdraw Behavior</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_ASSOCIATION_ROLE__MDRAW_BEHAVIOR = GRAPH_ELEMENTS_TYPE__MDRAW_BEHAVIOR;
+
+	/**
+	 * The feature id for the '<em><b>Mtype</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_ASSOCIATION_ROLE__MTYPE = GRAPH_ELEMENTS_TYPE__MTYPE;
+
+	/**
+	 * The feature id for the '<em><b>Mname</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_ASSOCIATION_ROLE__MNAME = GRAPH_ELEMENTS_TYPE__MNAME;
+
+	/**
+	 * The feature id for the '<em><b>MbIs Preferences Initialized</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_ASSOCIATION_ROLE__MBIS_PREFERENCES_INITIALIZED = GRAPH_ELEMENTS_TYPE__MBIS_PREFERENCES_INITIALIZED;
+
+	/**
+	 * The feature id for the '<em><b>MpModel Object</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_ASSOCIATION_ROLE__MPMODEL_OBJECT = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 0;
+
+	/**
+	 * The feature id for the '<em><b>MpParent</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_ASSOCIATION_ROLE__MPPARENT = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 1;
+
+	/**
+	 * The feature id for the '<em><b>MpSource</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_ASSOCIATION_ROLE__MPSOURCE = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 2;
+
+	/**
+	 * The feature id for the '<em><b>Msource Type</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_ASSOCIATION_ROLE__MSOURCE_TYPE = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 3;
+
+	/**
+	 * The feature id for the '<em><b>MpTarget</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_ASSOCIATION_ROLE__MPTARGET = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 4;
+
+	/**
+	 * The feature id for the '<em><b>Mtarget Type</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_ASSOCIATION_ROLE__MTARGET_TYPE = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 5;
+
+	/**
+	 * The feature id for the '<em><b>Mdirection</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_ASSOCIATION_ROLE__MDIRECTION = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 6;
+
+	/**
+	 * The feature id for the '<em><b>Mrpn</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_ASSOCIATION_ROLE__MRPN = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 7;
+
+	/**
+	 * The feature id for the '<em><b>Mangle Point1</b></em>' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_ASSOCIATION_ROLE__MANGLE_POINT1 = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 8;
+
+	/**
+	 * The feature id for the '<em><b>Mangle Point2</b></em>' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_ASSOCIATION_ROLE__MANGLE_POINT2 = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 9;
+
+	/**
+	 * The feature id for the '<em><b>Mline style</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_ASSOCIATION_ROLE__MLINE_STYLE = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 10;
+
+	/**
+	 * The feature id for the '<em><b>MSource Port</b></em>' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_ASSOCIATION_ROLE__MSOURCE_PORT = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 11;
+
+	/**
+	 * The feature id for the '<em><b>MTarget Port</b></em>' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_ASSOCIATION_ROLE__MTARGET_PORT = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 12;
+
+	/**
+	 * The feature id for the '<em><b>Marrow</b></em>' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_ASSOCIATION_ROLE__MARROW = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 13;
+
+	/**
+	 * The feature id for the '<em><b>Properties</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_ASSOCIATION_ROLE__PROPERTIES = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 14;
+
+	/**
+	 * The number of structural features of the '<em>CGI Association Role</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_ASSOCIATION_ROLE_FEATURE_COUNT = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 15;
+
+	/**
+	 * The number of operations of the '<em>CGI Association Role</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_ASSOCIATION_ROLE_OPERATION_COUNT = GRAPH_ELEMENTS_TYPE_OPERATION_COUNT + 0;
+
+	/**
+	 * The meta object id for the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIBasicClassImpl <em>CGI Basic Class</em>}' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIBasicClassImpl
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.UMLRpyPackageImpl#getCGIBasicClass()
+	 * @generated
+	 */
+	int CGI_BASIC_CLASS = 9;
+
+	/**
+	 * The feature id for the '<em><b>Id</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_BASIC_CLASS__ID = GRAPH_ELEMENTS_TYPE__ID;
+
+	/**
+	 * The feature id for the '<em><b>Mdraw Behavior</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_BASIC_CLASS__MDRAW_BEHAVIOR = GRAPH_ELEMENTS_TYPE__MDRAW_BEHAVIOR;
+
+	/**
+	 * The feature id for the '<em><b>Mtype</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_BASIC_CLASS__MTYPE = GRAPH_ELEMENTS_TYPE__MTYPE;
+
+	/**
+	 * The feature id for the '<em><b>Mname</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_BASIC_CLASS__MNAME = GRAPH_ELEMENTS_TYPE__MNAME;
+
+	/**
+	 * The feature id for the '<em><b>MbIs Preferences Initialized</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_BASIC_CLASS__MBIS_PREFERENCES_INITIALIZED = GRAPH_ELEMENTS_TYPE__MBIS_PREFERENCES_INITIALIZED;
+
+	/**
+	 * The feature id for the '<em><b>MpModel Object</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_BASIC_CLASS__MPMODEL_OBJECT = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 0;
+
+	/**
+	 * The feature id for the '<em><b>MpParent</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_BASIC_CLASS__MPPARENT = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 1;
+
+	/**
+	 * The feature id for the '<em><b>Mtransform</b></em>' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_BASIC_CLASS__MTRANSFORM = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 2;
+
+	/**
+	 * The feature id for the '<em><b>MAdditional Label</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_BASIC_CLASS__MADDITIONAL_LABEL = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 3;
+
+	/**
+	 * The feature id for the '<em><b>Mpolygon</b></em>' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_BASIC_CLASS__MPOLYGON = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 4;
+
+	/**
+	 * The feature id for the '<em><b>MnName Format</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_BASIC_CLASS__MNNAME_FORMAT = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 5;
+
+	/**
+	 * The feature id for the '<em><b>MnIs Name Format</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_BASIC_CLASS__MNIS_NAME_FORMAT = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 6;
+
+	/**
+	 * The feature id for the '<em><b>Compartments</b></em>' reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_BASIC_CLASS__COMPARTMENTS = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 7;
+
+	/**
+	 * The feature id for the '<em><b>Properties</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_BASIC_CLASS__PROPERTIES = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 8;
+
+	/**
+	 * The feature id for the '<em><b>MpImage View Data</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_BASIC_CLASS__MPIMAGE_VIEW_DATA = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 9;
+
+	/**
+	 * The number of structural features of the '<em>CGI Basic Class</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_BASIC_CLASS_FEATURE_COUNT = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 10;
+
+	/**
+	 * The number of operations of the '<em>CGI Basic Class</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_BASIC_CLASS_OPERATION_COUNT = GRAPH_ELEMENTS_TYPE_OPERATION_COUNT + 0;
+
+	/**
+	 * The meta object id for the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIBlockStateImpl <em>CGI Block State</em>}' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIBlockStateImpl
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.UMLRpyPackageImpl#getCGIBlockState()
+	 * @generated
+	 */
+	int CGI_BLOCK_STATE = 10;
+
+	/**
+	 * The feature id for the '<em><b>Id</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_BLOCK_STATE__ID = GRAPH_ELEMENTS_TYPE__ID;
+
+	/**
+	 * The feature id for the '<em><b>Mdraw Behavior</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_BLOCK_STATE__MDRAW_BEHAVIOR = GRAPH_ELEMENTS_TYPE__MDRAW_BEHAVIOR;
+
+	/**
+	 * The feature id for the '<em><b>Mtype</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_BLOCK_STATE__MTYPE = GRAPH_ELEMENTS_TYPE__MTYPE;
+
+	/**
+	 * The feature id for the '<em><b>Mname</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_BLOCK_STATE__MNAME = GRAPH_ELEMENTS_TYPE__MNAME;
+
+	/**
+	 * The feature id for the '<em><b>MbIs Preferences Initialized</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_BLOCK_STATE__MBIS_PREFERENCES_INITIALIZED = GRAPH_ELEMENTS_TYPE__MBIS_PREFERENCES_INITIALIZED;
+
+	/**
+	 * The feature id for the '<em><b>MpModel Object</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_BLOCK_STATE__MPMODEL_OBJECT = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 0;
+
+	/**
+	 * The feature id for the '<em><b>MpParent</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_BLOCK_STATE__MPPARENT = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 1;
+
+	/**
+	 * The feature id for the '<em><b>Mtransform</b></em>' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_BLOCK_STATE__MTRANSFORM = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 2;
+
+	/**
+	 * The feature id for the '<em><b>Mpolygon</b></em>' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_BLOCK_STATE__MPOLYGON = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 3;
+
+	/**
+	 * The feature id for the '<em><b>MnName Format</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_BLOCK_STATE__MNNAME_FORMAT = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 4;
+
+	/**
+	 * The feature id for the '<em><b>MnIs Name Format</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_BLOCK_STATE__MNIS_NAME_FORMAT = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 5;
+
+	/**
+	 * The feature id for the '<em><b>NAnd Line Count</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_BLOCK_STATE__NAND_LINE_COUNT = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 6;
+
+	/**
+	 * The feature id for the '<em><b>MpInherits From</b></em>' reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_BLOCK_STATE__MPINHERITS_FROM = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 7;
+
+	/**
+	 * The feature id for the '<em><b>MnInheritance Mask</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_BLOCK_STATE__MNINHERITANCE_MASK = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 8;
+
+	/**
+	 * The feature id for the '<em><b>MpDefault Component Relation</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_BLOCK_STATE__MPDEFAULT_COMPONENT_RELATION = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 9;
+
+	/**
+	 * The feature id for the '<em><b>MName Display Mode</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_BLOCK_STATE__MNAME_DISPLAY_MODE = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 10;
+
+	/**
+	 * The feature id for the '<em><b>MAct Desc Labl Diaplay Mode</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_BLOCK_STATE__MACT_DESC_LABL_DIAPLAY_MODE = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 11;
+
+	/**
+	 * The feature id for the '<em><b>Properties</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_BLOCK_STATE__PROPERTIES = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 12;
+
+	/**
+	 * The feature id for the '<em><b>MAdditional Label</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_BLOCK_STATE__MADDITIONAL_LABEL = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 13;
+
+	/**
+	 * The feature id for the '<em><b>Mmove And Line Time Stamp</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_BLOCK_STATE__MMOVE_AND_LINE_TIME_STAMP = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 14;
+
+	/**
+	 * The feature id for the '<em><b>Compartments</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_BLOCK_STATE__COMPARTMENTS = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 15;
+
+	/**
+	 * The feature id for the '<em><b>Frameset</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_BLOCK_STATE__FRAMESET = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 16;
+
+	/**
+	 * The number of structural features of the '<em>CGI Block State</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_BLOCK_STATE_FEATURE_COUNT = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 17;
+
+	/**
+	 * The number of operations of the '<em>CGI Block State</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_BLOCK_STATE_OPERATION_COUNT = GRAPH_ELEMENTS_TYPE_OPERATION_COUNT + 0;
+
+	/**
+	 * The meta object id for the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIBoxImpl <em>CGI Box</em>}' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIBoxImpl
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.UMLRpyPackageImpl#getCGIBox()
+	 * @generated
+	 */
+	int CGI_BOX = 11;
+
+	/**
+	 * The feature id for the '<em><b>Id</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_BOX__ID = GRAPH_ELEMENTS_TYPE__ID;
+
+	/**
+	 * The feature id for the '<em><b>Mdraw Behavior</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_BOX__MDRAW_BEHAVIOR = GRAPH_ELEMENTS_TYPE__MDRAW_BEHAVIOR;
+
+	/**
+	 * The feature id for the '<em><b>Mtype</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_BOX__MTYPE = GRAPH_ELEMENTS_TYPE__MTYPE;
+
+	/**
+	 * The feature id for the '<em><b>Mname</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_BOX__MNAME = GRAPH_ELEMENTS_TYPE__MNAME;
+
+	/**
+	 * The feature id for the '<em><b>MbIs Preferences Initialized</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_BOX__MBIS_PREFERENCES_INITIALIZED = GRAPH_ELEMENTS_TYPE__MBIS_PREFERENCES_INITIALIZED;
+
+	/**
+	 * The feature id for the '<em><b>MpModel Object</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_BOX__MPMODEL_OBJECT = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 0;
+
+	/**
+	 * The feature id for the '<em><b>Mpolygon</b></em>' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_BOX__MPOLYGON = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 1;
+
+	/**
+	 * The feature id for the '<em><b>MnName Format</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_BOX__MNNAME_FORMAT = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 2;
+
+	/**
+	 * The feature id for the '<em><b>MnIs Name Format</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_BOX__MNIS_NAME_FORMAT = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 3;
+
+	/**
+	 * The feature id for the '<em><b>Compartments</b></em>' reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_BOX__COMPARTMENTS = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 4;
+
+	/**
+	 * The feature id for the '<em><b>MpParent</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_BOX__MPPARENT = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 5;
+
+	/**
+	 * The feature id for the '<em><b>Mtransform</b></em>' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_BOX__MTRANSFORM = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 6;
+
+	/**
+	 * The feature id for the '<em><b>Properties</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_BOX__PROPERTIES = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 7;
+
+	/**
+	 * The number of structural features of the '<em>CGI Box</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_BOX_FEATURE_COUNT = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 8;
+
+	/**
+	 * The number of operations of the '<em>CGI Box</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_BOX_OPERATION_COUNT = GRAPH_ELEMENTS_TYPE_OPERATION_COUNT + 0;
+
+	/**
+	 * The meta object id for the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIButtonArrayImpl <em>CGI Button Array</em>}' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIButtonArrayImpl
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.UMLRpyPackageImpl#getCGIButtonArray()
+	 * @generated
+	 */
+	int CGI_BUTTON_ARRAY = 12;
+
+	/**
+	 * The feature id for the '<em><b>Id</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_BUTTON_ARRAY__ID = GRAPH_ELEMENTS_TYPE__ID;
+
+	/**
+	 * The feature id for the '<em><b>Mdraw Behavior</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_BUTTON_ARRAY__MDRAW_BEHAVIOR = GRAPH_ELEMENTS_TYPE__MDRAW_BEHAVIOR;
+
+	/**
+	 * The feature id for the '<em><b>Mtype</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_BUTTON_ARRAY__MTYPE = GRAPH_ELEMENTS_TYPE__MTYPE;
+
+	/**
+	 * The feature id for the '<em><b>Mname</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_BUTTON_ARRAY__MNAME = GRAPH_ELEMENTS_TYPE__MNAME;
+
+	/**
+	 * The feature id for the '<em><b>MbIs Preferences Initialized</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_BUTTON_ARRAY__MBIS_PREFERENCES_INITIALIZED = GRAPH_ELEMENTS_TYPE__MBIS_PREFERENCES_INITIALIZED;
+
+	/**
+	 * The feature id for the '<em><b>Properties</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_BUTTON_ARRAY__PROPERTIES = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 0;
+
+	/**
+	 * The feature id for the '<em><b>MpModel Object</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_BUTTON_ARRAY__MPMODEL_OBJECT = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 1;
+
+	/**
+	 * The feature id for the '<em><b>MpParent</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_BUTTON_ARRAY__MPPARENT = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 2;
+
+	/**
+	 * The feature id for the '<em><b>Mtransform</b></em>' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_BUTTON_ARRAY__MTRANSFORM = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 3;
+
+	/**
+	 * The feature id for the '<em><b>Mpolygon</b></em>' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_BUTTON_ARRAY__MPOLYGON = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 4;
+
+	/**
+	 * The feature id for the '<em><b>MnName Format</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_BUTTON_ARRAY__MNNAME_FORMAT = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 5;
+
+	/**
+	 * The feature id for the '<em><b>MnIs Name Format</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_BUTTON_ARRAY__MNIS_NAME_FORMAT = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 6;
+
+	/**
+	 * The feature id for the '<em><b>Frameset</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_BUTTON_ARRAY__FRAMESET = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 7;
+
+	/**
+	 * The feature id for the '<em><b>Compartments</b></em>' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_BUTTON_ARRAY__COMPARTMENTS = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 8;
+
+	/**
+	 * The feature id for the '<em><b>Mcs Model Obj Path</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_BUTTON_ARRAY__MCS_MODEL_OBJ_PATH = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 9;
+
+	/**
+	 * The feature id for the '<em><b>Mcs Name</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_BUTTON_ARRAY__MCS_NAME = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 10;
+
+	/**
+	 * The feature id for the '<em><b>MParts Array</b></em>' reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_BUTTON_ARRAY__MPARTS_ARRAY = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 11;
+
+	/**
+	 * The feature id for the '<em><b>Mli Button Names</b></em>' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_BUTTON_ARRAY__MLI_BUTTON_NAMES = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 12;
+
+	/**
+	 * The feature id for the '<em><b>Mli Button Values</b></em>' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_BUTTON_ARRAY__MLI_BUTTON_VALUES = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 13;
+
+	/**
+	 * The number of structural features of the '<em>CGI Button Array</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_BUTTON_ARRAY_FEATURE_COUNT = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 14;
+
+	/**
+	 * The number of operations of the '<em>CGI Button Array</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_BUTTON_ARRAY_OPERATION_COUNT = GRAPH_ELEMENTS_TYPE_OPERATION_COUNT + 0;
+
+	/**
+	 * The meta object id for the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIClassImpl <em>CGI Class</em>}' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIClassImpl
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.UMLRpyPackageImpl#getCGIClass()
+	 * @generated
+	 */
+	int CGI_CLASS = 13;
+
+	/**
+	 * The feature id for the '<em><b>Id</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_CLASS__ID = GRAPH_ELEMENTS_TYPE__ID;
+
+	/**
+	 * The feature id for the '<em><b>Mdraw Behavior</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_CLASS__MDRAW_BEHAVIOR = GRAPH_ELEMENTS_TYPE__MDRAW_BEHAVIOR;
+
+	/**
+	 * The feature id for the '<em><b>Mtype</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_CLASS__MTYPE = GRAPH_ELEMENTS_TYPE__MTYPE;
+
+	/**
+	 * The feature id for the '<em><b>Mname</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_CLASS__MNAME = GRAPH_ELEMENTS_TYPE__MNAME;
+
+	/**
+	 * The feature id for the '<em><b>MbIs Preferences Initialized</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_CLASS__MBIS_PREFERENCES_INITIALIZED = GRAPH_ELEMENTS_TYPE__MBIS_PREFERENCES_INITIALIZED;
+
+	/**
+	 * The feature id for the '<em><b>MpModel Object</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_CLASS__MPMODEL_OBJECT = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 0;
+
+	/**
+	 * The feature id for the '<em><b>MAdditional Label</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_CLASS__MADDITIONAL_LABEL = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 1;
+
+	/**
+	 * The feature id for the '<em><b>Mpolygon</b></em>' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_CLASS__MPOLYGON = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 2;
+
+	/**
+	 * The feature id for the '<em><b>MnName Format</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_CLASS__MNNAME_FORMAT = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 3;
+
+	/**
+	 * The feature id for the '<em><b>MnIs Name Format</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_CLASS__MNIS_NAME_FORMAT = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 4;
+
+	/**
+	 * The feature id for the '<em><b>Compartments</b></em>' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_CLASS__COMPARTMENTS = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 5;
+
+	/**
+	 * The feature id for the '<em><b>MpParent</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_CLASS__MPPARENT = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 6;
+
+	/**
+	 * The feature id for the '<em><b>Mtransform</b></em>' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_CLASS__MTRANSFORM = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 7;
+
+	/**
+	 * The feature id for the '<em><b>Frameset</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_CLASS__FRAMESET = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 8;
+
+	/**
+	 * The feature id for the '<em><b>Properties</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_CLASS__PROPERTIES = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 9;
+
+	/**
+	 * The feature id for the '<em><b>Attrs</b></em>' reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_CLASS__ATTRS = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 10;
+
+	/**
+	 * The feature id for the '<em><b>Operations</b></em>' reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_CLASS__OPERATIONS = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 11;
+
+	/**
+	 * The feature id for the '<em><b>Mcolor</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_CLASS__MCOLOR = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 12;
+
+	/**
+	 * The feature id for the '<em><b>Mline Width</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_CLASS__MLINE_WIDTH = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 13;
+
+	/**
+	 * The feature id for the '<em><b>MdSeparator Position</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_CLASS__MDSEPARATOR_POSITION = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 14;
+
+	/**
+	 * The feature id for the '<em><b>MbIs Misplaced</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_CLASS__MBIS_MISPLACED = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 15;
+
+	/**
+	 * The feature id for the '<em><b>MpImage View Data</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_CLASS__MPIMAGE_VIEW_DATA = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 16;
+
+	/**
+	 * The feature id for the '<em><b>MbFrameset Modified</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_CLASS__MBFRAMESET_MODIFIED = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 17;
+
+	/**
+	 * The number of structural features of the '<em>CGI Class</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_CLASS_FEATURE_COUNT = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 18;
+
+	/**
+	 * The number of operations of the '<em>CGI Class</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_CLASS_OPERATION_COUNT = GRAPH_ELEMENTS_TYPE_OPERATION_COUNT + 0;
+
+	/**
+	 * The meta object id for the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIClassChartImpl <em>CGI Class Chart</em>}' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIClassChartImpl
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.UMLRpyPackageImpl#getCGIClassChart()
+	 * @generated
+	 */
+	int CGI_CLASS_CHART = 14;
+
+	/**
+	 * The feature id for the '<em><b>Id</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_CLASS_CHART__ID = GRAPHIC_CHART_TYPE__ID;
+
+	/**
+	 * The feature id for the '<em><b>Maccess</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_CLASS_CHART__MACCESS = GRAPHIC_CHART_TYPE__MACCESS;
+
+	/**
+	 * The feature id for the '<em><b>Element List</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_CLASS_CHART__ELEMENT_LIST = GRAPHIC_CHART_TYPE__ELEMENT_LIST;
+
+	/**
+	 * The feature id for the '<em><b>MnModify Date</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_CLASS_CHART__MNMODIFY_DATE = GRAPHIC_CHART_TYPE__MNMODIFY_DATE;
+
+	/**
+	 * The feature id for the '<em><b>Mcurrent Left Top</b></em>' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_CLASS_CHART__MCURRENT_LEFT_TOP = GRAPHIC_CHART_TYPE__MCURRENT_LEFT_TOP;
+
+	/**
+	 * The feature id for the '<em><b>Mmodified</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_CLASS_CHART__MMODIFIED = GRAPHIC_CHART_TYPE__MMODIFIED;
+
+	/**
+	 * The feature id for the '<em><b>MnCreate Date</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_CLASS_CHART__MNCREATE_DATE = GRAPHIC_CHART_TYPE__MNCREATE_DATE;
+
+	/**
+	 * The feature id for the '<em><b>MpParent</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_CLASS_CHART__MPPARENT = GRAPHIC_CHART_TYPE__MPPARENT;
+
+	/**
+	 * The feature id for the '<em><b>Marrow Style</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_CLASS_CHART__MARROW_STYLE = GRAPHIC_CHART_TYPE__MARROW_STYLE;
+
+	/**
+	 * The feature id for the '<em><b>Mdraw Behavior</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_CLASS_CHART__MDRAW_BEHAVIOR = GRAPHIC_CHART_TYPE__MDRAW_BEHAVIOR;
+
+	/**
+	 * The feature id for the '<em><b>Mcurrent Right Bottom</b></em>' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_CLASS_CHART__MCURRENT_RIGHT_BOTTOM = GRAPHIC_CHART_TYPE__MCURRENT_RIGHT_BOTTOM;
+
+	/**
+	 * The feature id for the '<em><b>Mcreator</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_CLASS_CHART__MCREATOR = GRAPHIC_CHART_TYPE__MCREATOR;
+
+	/**
+	 * The feature id for the '<em><b>MbScale With Zoom</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_CLASS_CHART__MBSCALE_WITH_ZOOM = GRAPHIC_CHART_TYPE__MBSCALE_WITH_ZOOM;
+
+	/**
+	 * The feature id for the '<em><b>Mtype</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_CLASS_CHART__MTYPE = GRAPHIC_CHART_TYPE__MTYPE;
+
+	/**
+	 * The feature id for the '<em><b>Graph Elements</b></em>' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_CLASS_CHART__GRAPH_ELEMENTS = GRAPHIC_CHART_TYPE__GRAPH_ELEMENTS;
+
+	/**
+	 * The feature id for the '<em><b>Mname</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_CLASS_CHART__MNAME = GRAPHIC_CHART_TYPE__MNAME;
+
+	/**
+	 * The feature id for the '<em><b>Mfile Version</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_CLASS_CHART__MFILE_VERSION = GRAPHIC_CHART_TYPE__MFILE_VERSION;
+
+	/**
+	 * The feature id for the '<em><b>MbIs Preferences Initialized</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_CLASS_CHART__MBIS_PREFERENCES_INITIALIZED = GRAPHIC_CHART_TYPE__MBIS_PREFERENCES_INITIALIZED;
+
+	/**
+	 * The feature id for the '<em><b>MpModel Object</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_CLASS_CHART__MPMODEL_OBJECT = GRAPHIC_CHART_TYPE_FEATURE_COUNT + 0;
+
+	/**
+	 * The feature id for the '<em><b>MpRoot</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_CLASS_CHART__MPROOT = GRAPHIC_CHART_TYPE_FEATURE_COUNT + 1;
+
+	/**
+	 * The number of structural features of the '<em>CGI Class Chart</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_CLASS_CHART_FEATURE_COUNT = GRAPHIC_CHART_TYPE_FEATURE_COUNT + 2;
+
+	/**
+	 * The number of operations of the '<em>CGI Class Chart</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_CLASS_CHART_OPERATION_COUNT = GRAPHIC_CHART_TYPE_OPERATION_COUNT + 0;
+
+	/**
+	 * The meta object id for the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIClassifierRoleImpl <em>CGI Classifier Role</em>}' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIClassifierRoleImpl
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.UMLRpyPackageImpl#getCGIClassifierRole()
+	 * @generated
+	 */
+	int CGI_CLASSIFIER_ROLE = 15;
+
+	/**
+	 * The feature id for the '<em><b>Id</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_CLASSIFIER_ROLE__ID = GRAPH_ELEMENTS_TYPE__ID;
+
+	/**
+	 * The feature id for the '<em><b>Mdraw Behavior</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_CLASSIFIER_ROLE__MDRAW_BEHAVIOR = GRAPH_ELEMENTS_TYPE__MDRAW_BEHAVIOR;
+
+	/**
+	 * The feature id for the '<em><b>Mtype</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_CLASSIFIER_ROLE__MTYPE = GRAPH_ELEMENTS_TYPE__MTYPE;
+
+	/**
+	 * The feature id for the '<em><b>Mname</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_CLASSIFIER_ROLE__MNAME = GRAPH_ELEMENTS_TYPE__MNAME;
+
+	/**
+	 * The feature id for the '<em><b>MbIs Preferences Initialized</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_CLASSIFIER_ROLE__MBIS_PREFERENCES_INITIALIZED = GRAPH_ELEMENTS_TYPE__MBIS_PREFERENCES_INITIALIZED;
+
+	/**
+	 * The feature id for the '<em><b>MpModel Object</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_CLASSIFIER_ROLE__MPMODEL_OBJECT = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 0;
+
+	/**
+	 * The feature id for the '<em><b>MpParent</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_CLASSIFIER_ROLE__MPPARENT = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 1;
+
+	/**
+	 * The feature id for the '<em><b>Mtransform</b></em>' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_CLASSIFIER_ROLE__MTRANSFORM = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 2;
+
+	/**
+	 * The feature id for the '<em><b>Mpolygon</b></em>' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_CLASSIFIER_ROLE__MPOLYGON = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 3;
+
+	/**
+	 * The feature id for the '<em><b>MnName Format</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_CLASSIFIER_ROLE__MNNAME_FORMAT = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 4;
+
+	/**
+	 * The feature id for the '<em><b>MnIs Name Format</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_CLASSIFIER_ROLE__MNIS_NAME_FORMAT = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 5;
+
+	/**
+	 * The feature id for the '<em><b>Compartments</b></em>' reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_CLASSIFIER_ROLE__COMPARTMENTS = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 6;
+
+	/**
+	 * The feature id for the '<em><b>Properties</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_CLASSIFIER_ROLE__PROPERTIES = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 7;
+
+	/**
+	 * The number of structural features of the '<em>CGI Classifier Role</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_CLASSIFIER_ROLE_FEATURE_COUNT = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 8;
+
+	/**
+	 * The number of operations of the '<em>CGI Classifier Role</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_CLASSIFIER_ROLE_OPERATION_COUNT = GRAPH_ELEMENTS_TYPE_OPERATION_COUNT + 0;
+
+	/**
+	 * The meta object id for the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CompartmentsTypeImpl <em>Compartments Type</em>}' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CompartmentsTypeImpl
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.UMLRpyPackageImpl#getCompartmentsType()
+	 * @generated
+	 */
+	int COMPARTMENTS_TYPE = 51;
+
+	/**
+	 * The number of structural features of the '<em>Compartments Type</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int COMPARTMENTS_TYPE_FEATURE_COUNT = 0;
+
+	/**
+	 * The number of operations of the '<em>Compartments Type</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int COMPARTMENTS_TYPE_OPERATION_COUNT = 0;
+
+	/**
+	 * The meta object id for the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGICompartmentImpl <em>CGI Compartment</em>}' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGICompartmentImpl
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.UMLRpyPackageImpl#getCGICompartment()
+	 * @generated
+	 */
+	int CGI_COMPARTMENT = 16;
+
+	/**
+	 * The feature id for the '<em><b>Id</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_COMPARTMENT__ID = COMPARTMENTS_TYPE_FEATURE_COUNT + 0;
+
+	/**
+	 * The feature id for the '<em><b>Mname</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_COMPARTMENT__MNAME = COMPARTMENTS_TYPE_FEATURE_COUNT + 1;
+
+	/**
+	 * The feature id for the '<em><b>Mdisplay Option</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_COMPARTMENT__MDISPLAY_OPTION = COMPARTMENTS_TYPE_FEATURE_COUNT + 2;
+
+	/**
+	 * The feature id for the '<em><b>MbShow Inherited</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_COMPARTMENT__MBSHOW_INHERITED = COMPARTMENTS_TYPE_FEATURE_COUNT + 3;
+
+	/**
+	 * The feature id for the '<em><b>MbOrdered</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_COMPARTMENT__MBORDERED = COMPARTMENTS_TYPE_FEATURE_COUNT + 4;
+
+	/**
+	 * The feature id for the '<em><b>Items</b></em>' reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_COMPARTMENT__ITEMS = COMPARTMENTS_TYPE_FEATURE_COUNT + 5;
+
+	/**
+	 * The number of structural features of the '<em>CGI Compartment</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_COMPARTMENT_FEATURE_COUNT = COMPARTMENTS_TYPE_FEATURE_COUNT + 6;
+
+	/**
+	 * The number of operations of the '<em>CGI Compartment</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_COMPARTMENT_OPERATION_COUNT = COMPARTMENTS_TYPE_OPERATION_COUNT + 0;
+
+	/**
+	 * The meta object id for the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIComponentImpl <em>CGI Component</em>}' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIComponentImpl
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.UMLRpyPackageImpl#getCGIComponent()
+	 * @generated
+	 */
+	int CGI_COMPONENT = 17;
+
+	/**
+	 * The feature id for the '<em><b>Id</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_COMPONENT__ID = GRAPH_ELEMENTS_TYPE__ID;
+
+	/**
+	 * The feature id for the '<em><b>Mdraw Behavior</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_COMPONENT__MDRAW_BEHAVIOR = GRAPH_ELEMENTS_TYPE__MDRAW_BEHAVIOR;
+
+	/**
+	 * The feature id for the '<em><b>Mtype</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_COMPONENT__MTYPE = GRAPH_ELEMENTS_TYPE__MTYPE;
+
+	/**
+	 * The feature id for the '<em><b>Mname</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_COMPONENT__MNAME = GRAPH_ELEMENTS_TYPE__MNAME;
+
+	/**
+	 * The feature id for the '<em><b>MbIs Preferences Initialized</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_COMPONENT__MBIS_PREFERENCES_INITIALIZED = GRAPH_ELEMENTS_TYPE__MBIS_PREFERENCES_INITIALIZED;
+
+	/**
+	 * The feature id for the '<em><b>MpModel Object</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_COMPONENT__MPMODEL_OBJECT = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 0;
+
+	/**
+	 * The feature id for the '<em><b>MpParent</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_COMPONENT__MPPARENT = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 1;
+
+	/**
+	 * The feature id for the '<em><b>Mtransform</b></em>' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_COMPONENT__MTRANSFORM = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 2;
+
+	/**
+	 * The feature id for the '<em><b>Mpolygon</b></em>' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_COMPONENT__MPOLYGON = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 3;
+
+	/**
+	 * The feature id for the '<em><b>MnName Format</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_COMPONENT__MNNAME_FORMAT = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 4;
+
+	/**
+	 * The feature id for the '<em><b>MnIs Name Format</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_COMPONENT__MNIS_NAME_FORMAT = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 5;
+
+	/**
+	 * The feature id for the '<em><b>Compartments</b></em>' reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_COMPONENT__COMPARTMENTS = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 6;
+
+	/**
+	 * The feature id for the '<em><b>Properties</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_COMPONENT__PROPERTIES = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 7;
+
+	/**
+	 * The feature id for the '<em><b>MAdditional Label</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_COMPONENT__MADDITIONAL_LABEL = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 8;
+
+	/**
+	 * The number of structural features of the '<em>CGI Component</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_COMPONENT_FEATURE_COUNT = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 9;
+
+	/**
+	 * The number of operations of the '<em>CGI Component</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_COMPONENT_OPERATION_COUNT = GRAPH_ELEMENTS_TYPE_OPERATION_COUNT + 0;
+
+	/**
+	 * The meta object id for the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGICompositeClassImpl <em>CGI Composite Class</em>}' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGICompositeClassImpl
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.UMLRpyPackageImpl#getCGICompositeClass()
+	 * @generated
+	 */
+	int CGI_COMPOSITE_CLASS = 18;
+
+	/**
+	 * The feature id for the '<em><b>Id</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_COMPOSITE_CLASS__ID = GRAPH_ELEMENTS_TYPE__ID;
+
+	/**
+	 * The feature id for the '<em><b>Mdraw Behavior</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_COMPOSITE_CLASS__MDRAW_BEHAVIOR = GRAPH_ELEMENTS_TYPE__MDRAW_BEHAVIOR;
+
+	/**
+	 * The feature id for the '<em><b>Mtype</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_COMPOSITE_CLASS__MTYPE = GRAPH_ELEMENTS_TYPE__MTYPE;
+
+	/**
+	 * The feature id for the '<em><b>Mname</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_COMPOSITE_CLASS__MNAME = GRAPH_ELEMENTS_TYPE__MNAME;
+
+	/**
+	 * The feature id for the '<em><b>MbIs Preferences Initialized</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_COMPOSITE_CLASS__MBIS_PREFERENCES_INITIALIZED = GRAPH_ELEMENTS_TYPE__MBIS_PREFERENCES_INITIALIZED;
+
+	/**
+	 * The feature id for the '<em><b>MpModel Object</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_COMPOSITE_CLASS__MPMODEL_OBJECT = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 0;
+
+	/**
+	 * The feature id for the '<em><b>MpParent</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_COMPOSITE_CLASS__MPPARENT = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 1;
+
+	/**
+	 * The feature id for the '<em><b>MAdditional Label</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_COMPOSITE_CLASS__MADDITIONAL_LABEL = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 2;
+
+	/**
+	 * The feature id for the '<em><b>Mpolygon</b></em>' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_COMPOSITE_CLASS__MPOLYGON = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 3;
+
+	/**
+	 * The feature id for the '<em><b>MnName Format</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_COMPOSITE_CLASS__MNNAME_FORMAT = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 4;
+
+	/**
+	 * The feature id for the '<em><b>MnIs Name Format</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_COMPOSITE_CLASS__MNIS_NAME_FORMAT = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 5;
+
+	/**
+	 * The feature id for the '<em><b>Compartments</b></em>' reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_COMPOSITE_CLASS__COMPARTMENTS = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 6;
+
+	/**
+	 * The feature id for the '<em><b>Properties</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_COMPOSITE_CLASS__PROPERTIES = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 7;
+
+	/**
+	 * The feature id for the '<em><b>Mcolor</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_COMPOSITE_CLASS__MCOLOR = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 8;
+
+	/**
+	 * The feature id for the '<em><b>Mline Width</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_COMPOSITE_CLASS__MLINE_WIDTH = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 9;
+
+	/**
+	 * The number of structural features of the '<em>CGI Composite Class</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_COMPOSITE_CLASS_FEATURE_COUNT = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 10;
+
+	/**
+	 * The number of operations of the '<em>CGI Composite Class</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_COMPOSITE_CLASS_OPERATION_COUNT = GRAPH_ELEMENTS_TYPE_OPERATION_COUNT + 0;
+
+	/**
+	 * The meta object id for the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIConnectorImpl <em>CGI Connector</em>}' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIConnectorImpl
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.UMLRpyPackageImpl#getCGIConnector()
+	 * @generated
+	 */
+	int CGI_CONNECTOR = 19;
+
+	/**
+	 * The feature id for the '<em><b>Id</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_CONNECTOR__ID = GRAPH_ELEMENTS_TYPE__ID;
+
+	/**
+	 * The feature id for the '<em><b>Mdraw Behavior</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_CONNECTOR__MDRAW_BEHAVIOR = GRAPH_ELEMENTS_TYPE__MDRAW_BEHAVIOR;
+
+	/**
+	 * The feature id for the '<em><b>Mtype</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_CONNECTOR__MTYPE = GRAPH_ELEMENTS_TYPE__MTYPE;
+
+	/**
+	 * The feature id for the '<em><b>Mname</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_CONNECTOR__MNAME = GRAPH_ELEMENTS_TYPE__MNAME;
+
+	/**
+	 * The feature id for the '<em><b>MbIs Preferences Initialized</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_CONNECTOR__MBIS_PREFERENCES_INITIALIZED = GRAPH_ELEMENTS_TYPE__MBIS_PREFERENCES_INITIALIZED;
+
+	/**
+	 * The feature id for the '<em><b>MpModel Object</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_CONNECTOR__MPMODEL_OBJECT = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 0;
+
+	/**
+	 * The feature id for the '<em><b>MpParent</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_CONNECTOR__MPPARENT = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 1;
+
+	/**
+	 * The feature id for the '<em><b>Mtransform</b></em>' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_CONNECTOR__MTRANSFORM = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 2;
+
+	/**
+	 * The feature id for the '<em><b>Mposition</b></em>' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_CONNECTOR__MPOSITION = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 3;
+
+	/**
+	 * The feature id for the '<em><b>MnInheritance Mask</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_CONNECTOR__MNINHERITANCE_MASK = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 4;
+
+	/**
+	 * The feature id for the '<em><b>MSub Type</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_CONNECTOR__MSUB_TYPE = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 5;
+
+	/**
+	 * The feature id for the '<em><b>Properties</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_CONNECTOR__PROPERTIES = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 6;
+
+	/**
+	 * The feature id for the '<em><b>MAdditional Label</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_CONNECTOR__MADDITIONAL_LABEL = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 7;
+
+	/**
+	 * The feature id for the '<em><b>My State</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_CONNECTOR__MY_STATE = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 8;
+
+	/**
+	 * The feature id for the '<em><b>MpInherits From</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_CONNECTOR__MPINHERITS_FROM = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 9;
+
+	/**
+	 * The number of structural features of the '<em>CGI Connector</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_CONNECTOR_FEATURE_COUNT = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 10;
+
+	/**
+	 * The number of operations of the '<em>CGI Connector</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_CONNECTOR_OPERATION_COUNT = GRAPH_ELEMENTS_TYPE_OPERATION_COUNT + 0;
+
+	/**
+	 * The meta object id for the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIContainArrowImpl <em>CGI Contain Arrow</em>}' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIContainArrowImpl
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.UMLRpyPackageImpl#getCGIContainArrow()
+	 * @generated
+	 */
+	int CGI_CONTAIN_ARROW = 20;
+
+	/**
+	 * The feature id for the '<em><b>Id</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_CONTAIN_ARROW__ID = GRAPH_ELEMENTS_TYPE__ID;
+
+	/**
+	 * The feature id for the '<em><b>Mdraw Behavior</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_CONTAIN_ARROW__MDRAW_BEHAVIOR = GRAPH_ELEMENTS_TYPE__MDRAW_BEHAVIOR;
+
+	/**
+	 * The feature id for the '<em><b>Mtype</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_CONTAIN_ARROW__MTYPE = GRAPH_ELEMENTS_TYPE__MTYPE;
+
+	/**
+	 * The feature id for the '<em><b>Mname</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_CONTAIN_ARROW__MNAME = GRAPH_ELEMENTS_TYPE__MNAME;
+
+	/**
+	 * The feature id for the '<em><b>MbIs Preferences Initialized</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_CONTAIN_ARROW__MBIS_PREFERENCES_INITIALIZED = GRAPH_ELEMENTS_TYPE__MBIS_PREFERENCES_INITIALIZED;
+
+	/**
+	 * The feature id for the '<em><b>MpModel Object</b></em>' reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_CONTAIN_ARROW__MPMODEL_OBJECT = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 0;
+
+	/**
+	 * The feature id for the '<em><b>MpParent</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_CONTAIN_ARROW__MPPARENT = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 1;
+
+	/**
+	 * The feature id for the '<em><b>MpSource</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_CONTAIN_ARROW__MPSOURCE = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 2;
+
+	/**
+	 * The feature id for the '<em><b>Msource Type</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_CONTAIN_ARROW__MSOURCE_TYPE = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 3;
+
+	/**
+	 * The feature id for the '<em><b>MpTarget</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_CONTAIN_ARROW__MPTARGET = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 4;
+
+	/**
+	 * The feature id for the '<em><b>Mtarget Type</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_CONTAIN_ARROW__MTARGET_TYPE = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 5;
+
+	/**
+	 * The feature id for the '<em><b>Mdirection</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_CONTAIN_ARROW__MDIRECTION = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 6;
+
+	/**
+	 * The feature id for the '<em><b>Mrpn</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_CONTAIN_ARROW__MRPN = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 7;
+
+	/**
+	 * The feature id for the '<em><b>Marrow</b></em>' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_CONTAIN_ARROW__MARROW = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 8;
+
+	/**
+	 * The feature id for the '<em><b>Mangle Point1</b></em>' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_CONTAIN_ARROW__MANGLE_POINT1 = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 9;
+
+	/**
+	 * The feature id for the '<em><b>Mangle Point2</b></em>' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_CONTAIN_ARROW__MANGLE_POINT2 = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 10;
+
+	/**
+	 * The feature id for the '<em><b>Mline style</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_CONTAIN_ARROW__MLINE_STYLE = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 11;
+
+	/**
+	 * The feature id for the '<em><b>MSource Port</b></em>' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_CONTAIN_ARROW__MSOURCE_PORT = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 12;
+
+	/**
+	 * The feature id for the '<em><b>MTarget Port</b></em>' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_CONTAIN_ARROW__MTARGET_PORT = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 13;
+
+	/**
+	 * The number of structural features of the '<em>CGI Contain Arrow</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_CONTAIN_ARROW_FEATURE_COUNT = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 14;
+
+	/**
+	 * The number of operations of the '<em>CGI Contain Arrow</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_CONTAIN_ARROW_OPERATION_COUNT = GRAPH_ELEMENTS_TYPE_OPERATION_COUNT + 0;
+
+	/**
+	 * The meta object id for the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIDiagramFrameImpl <em>CGI Diagram Frame</em>}' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIDiagramFrameImpl
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.UMLRpyPackageImpl#getCGIDiagramFrame()
+	 * @generated
+	 */
+	int CGI_DIAGRAM_FRAME = 21;
+
+	/**
+	 * The feature id for the '<em><b>Id</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_DIAGRAM_FRAME__ID = GRAPH_ELEMENTS_TYPE__ID;
+
+	/**
+	 * The feature id for the '<em><b>Mdraw Behavior</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_DIAGRAM_FRAME__MDRAW_BEHAVIOR = GRAPH_ELEMENTS_TYPE__MDRAW_BEHAVIOR;
+
+	/**
+	 * The feature id for the '<em><b>Mtype</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_DIAGRAM_FRAME__MTYPE = GRAPH_ELEMENTS_TYPE__MTYPE;
+
+	/**
+	 * The feature id for the '<em><b>Mname</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_DIAGRAM_FRAME__MNAME = GRAPH_ELEMENTS_TYPE__MNAME;
+
+	/**
+	 * The feature id for the '<em><b>MbIs Preferences Initialized</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_DIAGRAM_FRAME__MBIS_PREFERENCES_INITIALIZED = GRAPH_ELEMENTS_TYPE__MBIS_PREFERENCES_INITIALIZED;
+
+	/**
+	 * The feature id for the '<em><b>MpModel Object</b></em>' reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_DIAGRAM_FRAME__MPMODEL_OBJECT = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 0;
+
+	/**
+	 * The feature id for the '<em><b>MpParent</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_DIAGRAM_FRAME__MPPARENT = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 1;
+
+	/**
+	 * The feature id for the '<em><b>Mtransform</b></em>' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_DIAGRAM_FRAME__MTRANSFORM = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 2;
+
+	/**
+	 * The feature id for the '<em><b>MAdditional Label</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_DIAGRAM_FRAME__MADDITIONAL_LABEL = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 3;
+
+	/**
+	 * The feature id for the '<em><b>Mpolygon</b></em>' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_DIAGRAM_FRAME__MPOLYGON = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 4;
+
+	/**
+	 * The feature id for the '<em><b>MnName Format</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_DIAGRAM_FRAME__MNNAME_FORMAT = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 5;
+
+	/**
+	 * The feature id for the '<em><b>MnIs Name Format</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_DIAGRAM_FRAME__MNIS_NAME_FORMAT = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 6;
+
+	/**
+	 * The feature id for the '<em><b>MbVisible</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_DIAGRAM_FRAME__MBVISIBLE = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 7;
+
+	/**
+	 * The feature id for the '<em><b>Frameset</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_DIAGRAM_FRAME__FRAMESET = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 8;
+
+	/**
+	 * The feature id for the '<em><b>Compartments</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_DIAGRAM_FRAME__COMPARTMENTS = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 9;
+
+	/**
+	 * The number of structural features of the '<em>CGI Diagram Frame</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_DIAGRAM_FRAME_FEATURE_COUNT = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 10;
+
+	/**
+	 * The number of operations of the '<em>CGI Diagram Frame</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_DIAGRAM_FRAME_OPERATION_COUNT = GRAPH_ELEMENTS_TYPE_OPERATION_COUNT + 0;
+
+	/**
+	 * The meta object id for the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIFreeShapeImpl <em>CGI Free Shape</em>}' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIFreeShapeImpl
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.UMLRpyPackageImpl#getCGIFreeShape()
+	 * @generated
+	 */
+	int CGI_FREE_SHAPE = 22;
+
+	/**
+	 * The feature id for the '<em><b>Id</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_FREE_SHAPE__ID = GRAPH_ELEMENTS_TYPE__ID;
+
+	/**
+	 * The feature id for the '<em><b>Mdraw Behavior</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_FREE_SHAPE__MDRAW_BEHAVIOR = GRAPH_ELEMENTS_TYPE__MDRAW_BEHAVIOR;
+
+	/**
+	 * The feature id for the '<em><b>Mtype</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_FREE_SHAPE__MTYPE = GRAPH_ELEMENTS_TYPE__MTYPE;
+
+	/**
+	 * The feature id for the '<em><b>Mname</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_FREE_SHAPE__MNAME = GRAPH_ELEMENTS_TYPE__MNAME;
+
+	/**
+	 * The feature id for the '<em><b>MbIs Preferences Initialized</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_FREE_SHAPE__MBIS_PREFERENCES_INITIALIZED = GRAPH_ELEMENTS_TYPE__MBIS_PREFERENCES_INITIALIZED;
+
+	/**
+	 * The feature id for the '<em><b>Properties</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_FREE_SHAPE__PROPERTIES = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 0;
+
+	/**
+	 * The feature id for the '<em><b>MpModel Object</b></em>' reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_FREE_SHAPE__MPMODEL_OBJECT = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 1;
+
+	/**
+	 * The feature id for the '<em><b>MpParent</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_FREE_SHAPE__MPPARENT = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 2;
+
+	/**
+	 * The feature id for the '<em><b>Mtransform</b></em>' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_FREE_SHAPE__MTRANSFORM = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 3;
+
+	/**
+	 * The feature id for the '<em><b>Mpoints</b></em>' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_FREE_SHAPE__MPOINTS = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 4;
+
+	/**
+	 * The number of structural features of the '<em>CGI Free Shape</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_FREE_SHAPE_FEATURE_COUNT = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 5;
+
+	/**
+	 * The number of operations of the '<em>CGI Free Shape</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_FREE_SHAPE_OPERATION_COUNT = GRAPH_ELEMENTS_TYPE_OPERATION_COUNT + 0;
+
+	/**
+	 * The meta object id for the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIFreeTextImpl <em>CGI Free Text</em>}' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIFreeTextImpl
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.UMLRpyPackageImpl#getCGIFreeText()
+	 * @generated
+	 */
+	int CGI_FREE_TEXT = 23;
+
+	/**
+	 * The feature id for the '<em><b>Id</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_FREE_TEXT__ID = GRAPH_ELEMENTS_TYPE__ID;
+
+	/**
+	 * The feature id for the '<em><b>Mdraw Behavior</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_FREE_TEXT__MDRAW_BEHAVIOR = GRAPH_ELEMENTS_TYPE__MDRAW_BEHAVIOR;
+
+	/**
+	 * The feature id for the '<em><b>Mtype</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_FREE_TEXT__MTYPE = GRAPH_ELEMENTS_TYPE__MTYPE;
+
+	/**
+	 * The feature id for the '<em><b>Mname</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_FREE_TEXT__MNAME = GRAPH_ELEMENTS_TYPE__MNAME;
+
+	/**
+	 * The feature id for the '<em><b>MbIs Preferences Initialized</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_FREE_TEXT__MBIS_PREFERENCES_INITIALIZED = GRAPH_ELEMENTS_TYPE__MBIS_PREFERENCES_INITIALIZED;
+
+	/**
+	 * The feature id for the '<em><b>MpModel Object</b></em>' reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_FREE_TEXT__MPMODEL_OBJECT = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 0;
+
+	/**
+	 * The feature id for the '<em><b>MpParent</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_FREE_TEXT__MPPARENT = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 1;
+
+	/**
+	 * The feature id for the '<em><b>Mtransform</b></em>' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_FREE_TEXT__MTRANSFORM = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 2;
+
+	/**
+	 * The feature id for the '<em><b>Mpoints</b></em>' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_FREE_TEXT__MPOINTS = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 3;
+
+	/**
+	 * The feature id for the '<em><b>Mtext</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_FREE_TEXT__MTEXT = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 4;
+
+	/**
+	 * The feature id for the '<em><b>Properties</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_FREE_TEXT__PROPERTIES = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 5;
+
+	/**
+	 * The number of structural features of the '<em>CGI Free Text</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_FREE_TEXT_FEATURE_COUNT = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 6;
+
+	/**
+	 * The number of operations of the '<em>CGI Free Text</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_FREE_TEXT_OPERATION_COUNT = GRAPH_ELEMENTS_TYPE_OPERATION_COUNT + 0;
+
+	/**
+	 * The meta object id for the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIGenericElementImpl <em>CGI Generic Element</em>}' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIGenericElementImpl
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.UMLRpyPackageImpl#getCGIGenericElement()
+	 * @generated
+	 */
+	int CGI_GENERIC_ELEMENT = 24;
+
+	/**
+	 * The feature id for the '<em><b>Id</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_GENERIC_ELEMENT__ID = GRAPH_ELEMENTS_TYPE__ID;
+
+	/**
+	 * The feature id for the '<em><b>Mdraw Behavior</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_GENERIC_ELEMENT__MDRAW_BEHAVIOR = GRAPH_ELEMENTS_TYPE__MDRAW_BEHAVIOR;
+
+	/**
+	 * The feature id for the '<em><b>Mtype</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_GENERIC_ELEMENT__MTYPE = GRAPH_ELEMENTS_TYPE__MTYPE;
+
+	/**
+	 * The feature id for the '<em><b>Mname</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_GENERIC_ELEMENT__MNAME = GRAPH_ELEMENTS_TYPE__MNAME;
+
+	/**
+	 * The feature id for the '<em><b>MbIs Preferences Initialized</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_GENERIC_ELEMENT__MBIS_PREFERENCES_INITIALIZED = GRAPH_ELEMENTS_TYPE__MBIS_PREFERENCES_INITIALIZED;
+
+	/**
+	 * The feature id for the '<em><b>MpModel Object</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_GENERIC_ELEMENT__MPMODEL_OBJECT = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 0;
+
+	/**
+	 * The feature id for the '<em><b>MpParent</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_GENERIC_ELEMENT__MPPARENT = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 1;
+
+	/**
+	 * The feature id for the '<em><b>Mtransform</b></em>' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_GENERIC_ELEMENT__MTRANSFORM = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 2;
+
+	/**
+	 * The feature id for the '<em><b>MAdditional Label</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_GENERIC_ELEMENT__MADDITIONAL_LABEL = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 3;
+
+	/**
+	 * The feature id for the '<em><b>Mpolygon</b></em>' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_GENERIC_ELEMENT__MPOLYGON = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 4;
+
+	/**
+	 * The feature id for the '<em><b>MnName Format</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_GENERIC_ELEMENT__MNNAME_FORMAT = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 5;
+
+	/**
+	 * The feature id for the '<em><b>MnIs Name Format</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_GENERIC_ELEMENT__MNIS_NAME_FORMAT = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 6;
+
+	/**
+	 * The feature id for the '<em><b>Frameset</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_GENERIC_ELEMENT__FRAMESET = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 7;
+
+	/**
+	 * The feature id for the '<em><b>Compartments</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_GENERIC_ELEMENT__COMPARTMENTS = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 8;
+
+	/**
+	 * The feature id for the '<em><b>Properties</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_GENERIC_ELEMENT__PROPERTIES = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 9;
+
+	/**
+	 * The feature id for the '<em><b>MpImage View Data</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_GENERIC_ELEMENT__MPIMAGE_VIEW_DATA = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 10;
+
+	/**
+	 * The feature id for the '<em><b>Mcs Context</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_GENERIC_ELEMENT__MCS_CONTEXT = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 11;
+
+	/**
+	 * The feature id for the '<em><b>Mcs Parts Array</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_GENERIC_ELEMENT__MCS_PARTS_ARRAY = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 12;
+
+	/**
+	 * The feature id for the '<em><b>MbIs Structured</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_GENERIC_ELEMENT__MBIS_STRUCTURED = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 13;
+
+	/**
+	 * The number of structural features of the '<em>CGI Generic Element</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_GENERIC_ELEMENT_FEATURE_COUNT = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 14;
+
+	/**
+	 * The number of operations of the '<em>CGI Generic Element</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_GENERIC_ELEMENT_OPERATION_COUNT = GRAPH_ELEMENTS_TYPE_OPERATION_COUNT + 0;
+
+	/**
+	 * The meta object id for the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIImageImpl <em>CGI Image</em>}' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIImageImpl
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.UMLRpyPackageImpl#getCGIImage()
+	 * @generated
+	 */
+	int CGI_IMAGE = 25;
+
+	/**
+	 * The feature id for the '<em><b>Id</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_IMAGE__ID = GRAPH_ELEMENTS_TYPE__ID;
+
+	/**
+	 * The feature id for the '<em><b>Mdraw Behavior</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_IMAGE__MDRAW_BEHAVIOR = GRAPH_ELEMENTS_TYPE__MDRAW_BEHAVIOR;
+
+	/**
+	 * The feature id for the '<em><b>Mtype</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_IMAGE__MTYPE = GRAPH_ELEMENTS_TYPE__MTYPE;
+
+	/**
+	 * The feature id for the '<em><b>Mname</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_IMAGE__MNAME = GRAPH_ELEMENTS_TYPE__MNAME;
+
+	/**
+	 * The feature id for the '<em><b>MbIs Preferences Initialized</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_IMAGE__MBIS_PREFERENCES_INITIALIZED = GRAPH_ELEMENTS_TYPE__MBIS_PREFERENCES_INITIALIZED;
+
+	/**
+	 * The feature id for the '<em><b>MpModel Object</b></em>' reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_IMAGE__MPMODEL_OBJECT = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 0;
+
+	/**
+	 * The feature id for the '<em><b>MpParent</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_IMAGE__MPPARENT = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 1;
+
+	/**
+	 * The feature id for the '<em><b>Mtransform</b></em>' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_IMAGE__MTRANSFORM = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 2;
+
+	/**
+	 * The feature id for the '<em><b>MpImage View Data</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_IMAGE__MPIMAGE_VIEW_DATA = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 3;
+
+	/**
+	 * The feature id for the '<em><b>Mpoints</b></em>' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_IMAGE__MPOINTS = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 4;
+
+	/**
+	 * The number of structural features of the '<em>CGI Image</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_IMAGE_FEATURE_COUNT = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 5;
+
+	/**
+	 * The number of operations of the '<em>CGI Image</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_IMAGE_OPERATION_COUNT = GRAPH_ELEMENTS_TYPE_OPERATION_COUNT + 0;
+
+	/**
+	 * The meta object id for the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIImageDataImpl <em>CGI Image Data</em>}' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIImageDataImpl
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.UMLRpyPackageImpl#getCGIImageData()
+	 * @generated
+	 */
+	int CGI_IMAGE_DATA = 26;
+
+	/**
+	 * The feature id for the '<em><b>Id</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_IMAGE_DATA__ID = GRAPH_ELEMENTS_TYPE__ID;
+
+	/**
+	 * The feature id for the '<em><b>Mdraw Behavior</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_IMAGE_DATA__MDRAW_BEHAVIOR = GRAPH_ELEMENTS_TYPE__MDRAW_BEHAVIOR;
+
+	/**
+	 * The feature id for the '<em><b>Mtype</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_IMAGE_DATA__MTYPE = GRAPH_ELEMENTS_TYPE__MTYPE;
+
+	/**
+	 * The feature id for the '<em><b>Mname</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_IMAGE_DATA__MNAME = GRAPH_ELEMENTS_TYPE__MNAME;
+
+	/**
+	 * The feature id for the '<em><b>MbIs Preferences Initialized</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_IMAGE_DATA__MBIS_PREFERENCES_INITIALIZED = GRAPH_ELEMENTS_TYPE__MBIS_PREFERENCES_INITIALIZED;
+
+	/**
+	 * The feature id for the '<em><b>MpModel Object</b></em>' reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_IMAGE_DATA__MPMODEL_OBJECT = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 0;
+
+	/**
+	 * The feature id for the '<em><b>MpParent</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_IMAGE_DATA__MPPARENT = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 1;
+
+	/**
+	 * The feature id for the '<em><b>Mdata Size</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_IMAGE_DATA__MDATA_SIZE = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 2;
+
+	/**
+	 * The feature id for the '<em><b>Mdata</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_IMAGE_DATA__MDATA = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 3;
+
+	/**
+	 * The feature id for the '<em><b>Msrc File</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_IMAGE_DATA__MSRC_FILE = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 4;
+
+	/**
+	 * The feature id for the '<em><b>Mfile Modified Time</b></em>' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_IMAGE_DATA__MFILE_MODIFIED_TIME = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 5;
+
+	/**
+	 * The number of structural features of the '<em>CGI Image Data</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_IMAGE_DATA_FEATURE_COUNT = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 6;
+
+	/**
+	 * The number of operations of the '<em>CGI Image Data</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_IMAGE_DATA_OPERATION_COUNT = GRAPH_ELEMENTS_TYPE_OPERATION_COUNT + 0;
+
+	/**
+	 * The meta object id for the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIInformationFlowImpl <em>CGI Information Flow</em>}' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIInformationFlowImpl
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.UMLRpyPackageImpl#getCGIInformationFlow()
+	 * @generated
+	 */
+	int CGI_INFORMATION_FLOW = 27;
+
+	/**
+	 * The feature id for the '<em><b>Id</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_INFORMATION_FLOW__ID = GRAPH_ELEMENTS_TYPE__ID;
+
+	/**
+	 * The feature id for the '<em><b>Mdraw Behavior</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_INFORMATION_FLOW__MDRAW_BEHAVIOR = GRAPH_ELEMENTS_TYPE__MDRAW_BEHAVIOR;
+
+	/**
+	 * The feature id for the '<em><b>Mtype</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_INFORMATION_FLOW__MTYPE = GRAPH_ELEMENTS_TYPE__MTYPE;
+
+	/**
+	 * The feature id for the '<em><b>Mname</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_INFORMATION_FLOW__MNAME = GRAPH_ELEMENTS_TYPE__MNAME;
+
+	/**
+	 * The feature id for the '<em><b>MbIs Preferences Initialized</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_INFORMATION_FLOW__MBIS_PREFERENCES_INITIALIZED = GRAPH_ELEMENTS_TYPE__MBIS_PREFERENCES_INITIALIZED;
+
+	/**
+	 * The feature id for the '<em><b>MpModel Object</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_INFORMATION_FLOW__MPMODEL_OBJECT = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 0;
+
+	/**
+	 * The feature id for the '<em><b>MpParent</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_INFORMATION_FLOW__MPPARENT = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 1;
+
+	/**
+	 * The feature id for the '<em><b>MpSource</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_INFORMATION_FLOW__MPSOURCE = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 2;
+
+	/**
+	 * The feature id for the '<em><b>Msource Type</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_INFORMATION_FLOW__MSOURCE_TYPE = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 3;
+
+	/**
+	 * The feature id for the '<em><b>MpTarget</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_INFORMATION_FLOW__MPTARGET = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 4;
+
+	/**
+	 * The feature id for the '<em><b>Mtarget Type</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_INFORMATION_FLOW__MTARGET_TYPE = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 5;
+
+	/**
+	 * The feature id for the '<em><b>Mdirection</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_INFORMATION_FLOW__MDIRECTION = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 6;
+
+	/**
+	 * The feature id for the '<em><b>Mrpn</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_INFORMATION_FLOW__MRPN = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 7;
+
+	/**
+	 * The feature id for the '<em><b>Mangle Point1</b></em>' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_INFORMATION_FLOW__MANGLE_POINT1 = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 8;
+
+	/**
+	 * The feature id for the '<em><b>Mangle Point2</b></em>' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_INFORMATION_FLOW__MANGLE_POINT2 = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 9;
+
+	/**
+	 * The feature id for the '<em><b>Mline style</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_INFORMATION_FLOW__MLINE_STYLE = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 10;
+
+	/**
+	 * The feature id for the '<em><b>MSource Port</b></em>' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_INFORMATION_FLOW__MSOURCE_PORT = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 11;
+
+	/**
+	 * The feature id for the '<em><b>MTarget Port</b></em>' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_INFORMATION_FLOW__MTARGET_PORT = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 12;
+
+	/**
+	 * The feature id for the '<em><b>MbShow Keyword</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_INFORMATION_FLOW__MBSHOW_KEYWORD = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 13;
+
+	/**
+	 * The feature id for the '<em><b>Mshow Conveyed</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_INFORMATION_FLOW__MSHOW_CONVEYED = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 14;
+
+	/**
+	 * The feature id for the '<em><b>Mkeyword</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_INFORMATION_FLOW__MKEYWORD = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 15;
+
+	/**
+	 * The feature id for the '<em><b>Mconveyed</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_INFORMATION_FLOW__MCONVEYED = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 16;
+
+	/**
+	 * The feature id for the '<em><b>Marrow</b></em>' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_INFORMATION_FLOW__MARROW = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 17;
+
+	/**
+	 * The feature id for the '<em><b>Properties</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_INFORMATION_FLOW__PROPERTIES = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 18;
+
+	/**
+	 * The number of structural features of the '<em>CGI Information Flow</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_INFORMATION_FLOW_FEATURE_COUNT = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 19;
+
+	/**
+	 * The number of operations of the '<em>CGI Information Flow</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_INFORMATION_FLOW_OPERATION_COUNT = GRAPH_ELEMENTS_TYPE_OPERATION_COUNT + 0;
+
+	/**
+	 * The meta object id for the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIInheritanceImpl <em>CGI Inheritance</em>}' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIInheritanceImpl
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.UMLRpyPackageImpl#getCGIInheritance()
+	 * @generated
+	 */
+	int CGI_INHERITANCE = 28;
+
+	/**
+	 * The feature id for the '<em><b>Id</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_INHERITANCE__ID = GRAPH_ELEMENTS_TYPE__ID;
+
+	/**
+	 * The feature id for the '<em><b>Mdraw Behavior</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_INHERITANCE__MDRAW_BEHAVIOR = GRAPH_ELEMENTS_TYPE__MDRAW_BEHAVIOR;
+
+	/**
+	 * The feature id for the '<em><b>Mtype</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_INHERITANCE__MTYPE = GRAPH_ELEMENTS_TYPE__MTYPE;
+
+	/**
+	 * The feature id for the '<em><b>Mname</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_INHERITANCE__MNAME = GRAPH_ELEMENTS_TYPE__MNAME;
+
+	/**
+	 * The feature id for the '<em><b>MbIs Preferences Initialized</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_INHERITANCE__MBIS_PREFERENCES_INITIALIZED = GRAPH_ELEMENTS_TYPE__MBIS_PREFERENCES_INITIALIZED;
+
+	/**
+	 * The feature id for the '<em><b>MpModel Object</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_INHERITANCE__MPMODEL_OBJECT = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 0;
+
+	/**
+	 * The feature id for the '<em><b>MpParent</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_INHERITANCE__MPPARENT = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 1;
+
+	/**
+	 * The feature id for the '<em><b>MpSource</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_INHERITANCE__MPSOURCE = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 2;
+
+	/**
+	 * The feature id for the '<em><b>Msource Type</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_INHERITANCE__MSOURCE_TYPE = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 3;
+
+	/**
+	 * The feature id for the '<em><b>MpTarget</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_INHERITANCE__MPTARGET = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 4;
+
+	/**
+	 * The feature id for the '<em><b>Mtarget Type</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_INHERITANCE__MTARGET_TYPE = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 5;
+
+	/**
+	 * The feature id for the '<em><b>Mdirection</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_INHERITANCE__MDIRECTION = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 6;
+
+	/**
+	 * The feature id for the '<em><b>Mrpn</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_INHERITANCE__MRPN = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 7;
+
+	/**
+	 * The feature id for the '<em><b>Mangle Point1</b></em>' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_INHERITANCE__MANGLE_POINT1 = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 8;
+
+	/**
+	 * The feature id for the '<em><b>Mangle Point2</b></em>' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_INHERITANCE__MANGLE_POINT2 = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 9;
+
+	/**
+	 * The feature id for the '<em><b>Mline style</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_INHERITANCE__MLINE_STYLE = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 10;
+
+	/**
+	 * The feature id for the '<em><b>MSource Port</b></em>' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_INHERITANCE__MSOURCE_PORT = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 11;
+
+	/**
+	 * The feature id for the '<em><b>MTarget Port</b></em>' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_INHERITANCE__MTARGET_PORT = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 12;
+
+	/**
+	 * The feature id for the '<em><b>MShow Name</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_INHERITANCE__MSHOW_NAME = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 13;
+
+	/**
+	 * The feature id for the '<em><b>MShow Stereotype</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_INHERITANCE__MSHOW_STEREOTYPE = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 14;
+
+	/**
+	 * The feature id for the '<em><b>Properties</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_INHERITANCE__PROPERTIES = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 15;
+
+	/**
+	 * The feature id for the '<em><b>Mcolor</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_INHERITANCE__MCOLOR = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 16;
+
+	/**
+	 * The feature id for the '<em><b>Mline Width</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_INHERITANCE__MLINE_WIDTH = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 17;
+
+	/**
+	 * The feature id for the '<em><b>Marrow</b></em>' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_INHERITANCE__MARROW = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 18;
+
+	/**
+	 * The number of structural features of the '<em>CGI Inheritance</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_INHERITANCE_FEATURE_COUNT = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 19;
+
+	/**
+	 * The number of operations of the '<em>CGI Inheritance</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_INHERITANCE_OPERATION_COUNT = GRAPH_ELEMENTS_TYPE_OPERATION_COUNT + 0;
+
+	/**
+	 * The meta object id for the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIMFCCtrlImpl <em>CGIMFC Ctrl</em>}' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIMFCCtrlImpl
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.UMLRpyPackageImpl#getCGIMFCCtrl()
+	 * @generated
+	 */
+	int CGIMFC_CTRL = 29;
+
+	/**
+	 * The feature id for the '<em><b>Id</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGIMFC_CTRL__ID = GRAPH_ELEMENTS_TYPE__ID;
+
+	/**
+	 * The feature id for the '<em><b>Mdraw Behavior</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGIMFC_CTRL__MDRAW_BEHAVIOR = GRAPH_ELEMENTS_TYPE__MDRAW_BEHAVIOR;
+
+	/**
+	 * The feature id for the '<em><b>Mtype</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGIMFC_CTRL__MTYPE = GRAPH_ELEMENTS_TYPE__MTYPE;
+
+	/**
+	 * The feature id for the '<em><b>Mname</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGIMFC_CTRL__MNAME = GRAPH_ELEMENTS_TYPE__MNAME;
+
+	/**
+	 * The feature id for the '<em><b>MbIs Preferences Initialized</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGIMFC_CTRL__MBIS_PREFERENCES_INITIALIZED = GRAPH_ELEMENTS_TYPE__MBIS_PREFERENCES_INITIALIZED;
+
+	/**
+	 * The feature id for the '<em><b>Properties</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGIMFC_CTRL__PROPERTIES = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 0;
+
+	/**
+	 * The feature id for the '<em><b>MpModel Object</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGIMFC_CTRL__MPMODEL_OBJECT = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 1;
+
+	/**
+	 * The feature id for the '<em><b>MpParent</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGIMFC_CTRL__MPPARENT = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 2;
+
+	/**
+	 * The feature id for the '<em><b>Mtransform</b></em>' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGIMFC_CTRL__MTRANSFORM = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 3;
+
+	/**
+	 * The feature id for the '<em><b>Mpolygon</b></em>' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGIMFC_CTRL__MPOLYGON = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 4;
+
+	/**
+	 * The feature id for the '<em><b>MnName Format</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGIMFC_CTRL__MNNAME_FORMAT = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 5;
+
+	/**
+	 * The feature id for the '<em><b>MnIs Name Format</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGIMFC_CTRL__MNIS_NAME_FORMAT = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 6;
+
+	/**
+	 * The feature id for the '<em><b>Compartments</b></em>' reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGIMFC_CTRL__COMPARTMENTS = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 7;
+
+	/**
+	 * The feature id for the '<em><b>Mcs Model Obj Path</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGIMFC_CTRL__MCS_MODEL_OBJ_PATH = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 8;
+
+	/**
+	 * The feature id for the '<em><b>Mcs Name</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGIMFC_CTRL__MCS_NAME = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 9;
+
+	/**
+	 * The feature id for the '<em><b>MParts Array</b></em>' reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGIMFC_CTRL__MPARTS_ARRAY = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 10;
+
+	/**
+	 * The feature id for the '<em><b>Mcs Button Caption</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGIMFC_CTRL__MCS_BUTTON_CAPTION = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 11;
+
+	/**
+	 * The number of structural features of the '<em>CGIMFC Ctrl</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGIMFC_CTRL_FEATURE_COUNT = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 12;
+
+	/**
+	 * The number of operations of the '<em>CGIMFC Ctrl</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGIMFC_CTRL_OPERATION_COUNT = GRAPH_ELEMENTS_TYPE_OPERATION_COUNT + 0;
+
+	/**
+	 * The meta object id for the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIMessageLabelImpl <em>CGI Message Label</em>}' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIMessageLabelImpl
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.UMLRpyPackageImpl#getCGIMessageLabel()
+	 * @generated
+	 */
+	int CGI_MESSAGE_LABEL = 30;
+
+	/**
+	 * The feature id for the '<em><b>Id</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_MESSAGE_LABEL__ID = GRAPH_ELEMENTS_TYPE__ID;
+
+	/**
+	 * The feature id for the '<em><b>Mdraw Behavior</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_MESSAGE_LABEL__MDRAW_BEHAVIOR = GRAPH_ELEMENTS_TYPE__MDRAW_BEHAVIOR;
+
+	/**
+	 * The feature id for the '<em><b>Mtype</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_MESSAGE_LABEL__MTYPE = GRAPH_ELEMENTS_TYPE__MTYPE;
+
+	/**
+	 * The feature id for the '<em><b>Mname</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_MESSAGE_LABEL__MNAME = GRAPH_ELEMENTS_TYPE__MNAME;
+
+	/**
+	 * The feature id for the '<em><b>MbIs Preferences Initialized</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_MESSAGE_LABEL__MBIS_PREFERENCES_INITIALIZED = GRAPH_ELEMENTS_TYPE__MBIS_PREFERENCES_INITIALIZED;
+
+	/**
+	 * The feature id for the '<em><b>MpModel Object</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_MESSAGE_LABEL__MPMODEL_OBJECT = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 0;
+
+	/**
+	 * The feature id for the '<em><b>MpParent</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_MESSAGE_LABEL__MPPARENT = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 1;
+
+	/**
+	 * The feature id for the '<em><b>MpCommunication Connection</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_MESSAGE_LABEL__MPCOMMUNICATION_CONNECTION = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 2;
+
+	/**
+	 * The feature id for the '<em><b>Percent</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_MESSAGE_LABEL__PERCENT = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 3;
+
+	/**
+	 * The number of structural features of the '<em>CGI Message Label</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_MESSAGE_LABEL_FEATURE_COUNT = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 4;
+
+	/**
+	 * The number of operations of the '<em>CGI Message Label</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_MESSAGE_LABEL_OPERATION_COUNT = GRAPH_ELEMENTS_TYPE_OPERATION_COUNT + 0;
+
+	/**
+	 * The meta object id for the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIMscChartImpl <em>CGI Msc Chart</em>}' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIMscChartImpl
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.UMLRpyPackageImpl#getCGIMscChart()
+	 * @generated
+	 */
+	int CGI_MSC_CHART = 31;
+
+	/**
+	 * The feature id for the '<em><b>VLadder Margin</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_MSC_CHART__VLADDER_MARGIN = 0;
+
+	/**
+	 * The feature id for the '<em><b>Musing Activation Bar</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_MSC_CHART__MUSING_ACTIVATION_BAR = 1;
+
+	/**
+	 * The feature id for the '<em><b>Id</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_MSC_CHART__ID = 2;
+
+	/**
+	 * The feature id for the '<em><b>Mtype</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_MSC_CHART__MTYPE = 3;
+
+	/**
+	 * The feature id for the '<em><b>MpModel Object</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_MSC_CHART__MPMODEL_OBJECT = 4;
+
+	/**
+	 * The feature id for the '<em><b>MpParent</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_MSC_CHART__MPPARENT = 5;
+
+	/**
+	 * The feature id for the '<em><b>Mname</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_MSC_CHART__MNAME = 6;
+
+	/**
+	 * The feature id for the '<em><b>Mdraw Behavior</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_MSC_CHART__MDRAW_BEHAVIOR = 7;
+
+	/**
+	 * The feature id for the '<em><b>MbIs Preferences Initialized</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_MSC_CHART__MBIS_PREFERENCES_INITIALIZED = 8;
+
+	/**
+	 * The feature id for the '<em><b>Element List</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_MSC_CHART__ELEMENT_LIST = 9;
+
+	/**
+	 * The feature id for the '<em><b>Graph Elements</b></em>' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_MSC_CHART__GRAPH_ELEMENTS = 10;
+
+	/**
+	 * The feature id for the '<em><b>Maccess</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_MSC_CHART__MACCESS = 11;
+
+	/**
+	 * The feature id for the '<em><b>Mmodified</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_MSC_CHART__MMODIFIED = 12;
+
+	/**
+	 * The feature id for the '<em><b>Mfile Version</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_MSC_CHART__MFILE_VERSION = 13;
+
+	/**
+	 * The feature id for the '<em><b>MnModify Date</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_MSC_CHART__MNMODIFY_DATE = 14;
+
+	/**
+	 * The feature id for the '<em><b>MnCreate Date</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_MSC_CHART__MNCREATE_DATE = 15;
+
+	/**
+	 * The feature id for the '<em><b>Mcreator</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_MSC_CHART__MCREATOR = 16;
+
+	/**
+	 * The feature id for the '<em><b>MbScale With Zoom</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_MSC_CHART__MBSCALE_WITH_ZOOM = 17;
+
+	/**
+	 * The feature id for the '<em><b>Marrow Style</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_MSC_CHART__MARROW_STYLE = 18;
+
+	/**
+	 * The feature id for the '<em><b>MpRoot</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_MSC_CHART__MPROOT = 19;
+
+	/**
+	 * The feature id for the '<em><b>Mcurrent Left Top</b></em>' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_MSC_CHART__MCURRENT_LEFT_TOP = 20;
+
+	/**
+	 * The feature id for the '<em><b>Mcurrent Right Bottom</b></em>' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_MSC_CHART__MCURRENT_RIGHT_BOTTOM = 21;
+
+	/**
+	 * The number of structural features of the '<em>CGI Msc Chart</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_MSC_CHART_FEATURE_COUNT = 22;
+
+	/**
+	 * The number of operations of the '<em>CGI Msc Chart</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_MSC_CHART_OPERATION_COUNT = 0;
+
+	/**
+	 * The meta object id for the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIMscColumnCRImpl <em>CGI Msc Column CR</em>}' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIMscColumnCRImpl
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.UMLRpyPackageImpl#getCGIMscColumnCR()
+	 * @generated
+	 */
+	int CGI_MSC_COLUMN_CR = 32;
+
+	/**
+	 * The feature id for the '<em><b>Id</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_MSC_COLUMN_CR__ID = GRAPH_ELEMENTS_TYPE__ID;
+
+	/**
+	 * The feature id for the '<em><b>Mdraw Behavior</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_MSC_COLUMN_CR__MDRAW_BEHAVIOR = GRAPH_ELEMENTS_TYPE__MDRAW_BEHAVIOR;
+
+	/**
+	 * The feature id for the '<em><b>Mtype</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_MSC_COLUMN_CR__MTYPE = GRAPH_ELEMENTS_TYPE__MTYPE;
+
+	/**
+	 * The feature id for the '<em><b>Mname</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_MSC_COLUMN_CR__MNAME = GRAPH_ELEMENTS_TYPE__MNAME;
+
+	/**
+	 * The feature id for the '<em><b>MbIs Preferences Initialized</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_MSC_COLUMN_CR__MBIS_PREFERENCES_INITIALIZED = GRAPH_ELEMENTS_TYPE__MBIS_PREFERENCES_INITIALIZED;
+
+	/**
+	 * The feature id for the '<em><b>MpModel Object</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_MSC_COLUMN_CR__MPMODEL_OBJECT = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 0;
+
+	/**
+	 * The feature id for the '<em><b>MpParent</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_MSC_COLUMN_CR__MPPARENT = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 1;
+
+	/**
+	 * The feature id for the '<em><b>Mtransform</b></em>' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_MSC_COLUMN_CR__MTRANSFORM = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 2;
+
+	/**
+	 * The feature id for the '<em><b>MAdditional Label</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_MSC_COLUMN_CR__MADDITIONAL_LABEL = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 3;
+
+	/**
+	 * The feature id for the '<em><b>Mposition</b></em>' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_MSC_COLUMN_CR__MPOSITION = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 4;
+
+	/**
+	 * The feature id for the '<em><b>MpInherits From</b></em>' reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_MSC_COLUMN_CR__MPINHERITS_FROM = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 5;
+
+	/**
+	 * The feature id for the '<em><b>MnInheritance Mask</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_MSC_COLUMN_CR__MNINHERITANCE_MASK = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 6;
+
+	/**
+	 * The feature id for the '<em><b>MSub Type</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_MSC_COLUMN_CR__MSUB_TYPE = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 7;
+
+	/**
+	 * The feature id for the '<em><b>Properties</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_MSC_COLUMN_CR__PROPERTIES = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 8;
+
+	/**
+	 * The number of structural features of the '<em>CGI Msc Column CR</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_MSC_COLUMN_CR_FEATURE_COUNT = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 9;
+
+	/**
+	 * The number of operations of the '<em>CGI Msc Column CR</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_MSC_COLUMN_CR_OPERATION_COUNT = GRAPH_ELEMENTS_TYPE_OPERATION_COUNT + 0;
+
+	/**
+	 * The meta object id for the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIMscConditionMarkImpl <em>CGI Msc Condition Mark</em>}' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIMscConditionMarkImpl
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.UMLRpyPackageImpl#getCGIMscConditionMark()
+	 * @generated
+	 */
+	int CGI_MSC_CONDITION_MARK = 33;
+
+	/**
+	 * The feature id for the '<em><b>Id</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_MSC_CONDITION_MARK__ID = GRAPH_ELEMENTS_TYPE__ID;
+
+	/**
+	 * The feature id for the '<em><b>Mdraw Behavior</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_MSC_CONDITION_MARK__MDRAW_BEHAVIOR = GRAPH_ELEMENTS_TYPE__MDRAW_BEHAVIOR;
+
+	/**
+	 * The feature id for the '<em><b>Mtype</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_MSC_CONDITION_MARK__MTYPE = GRAPH_ELEMENTS_TYPE__MTYPE;
+
+	/**
+	 * The feature id for the '<em><b>Mname</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_MSC_CONDITION_MARK__MNAME = GRAPH_ELEMENTS_TYPE__MNAME;
+
+	/**
+	 * The feature id for the '<em><b>MbIs Preferences Initialized</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_MSC_CONDITION_MARK__MBIS_PREFERENCES_INITIALIZED = GRAPH_ELEMENTS_TYPE__MBIS_PREFERENCES_INITIALIZED;
+
+	/**
+	 * The feature id for the '<em><b>Properties</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_MSC_CONDITION_MARK__PROPERTIES = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 0;
+
+	/**
+	 * The feature id for the '<em><b>MpModel Object</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_MSC_CONDITION_MARK__MPMODEL_OBJECT = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 1;
+
+	/**
+	 * The feature id for the '<em><b>MpParent</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_MSC_CONDITION_MARK__MPPARENT = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 2;
+
+	/**
+	 * The feature id for the '<em><b>Mtransform</b></em>' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_MSC_CONDITION_MARK__MTRANSFORM = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 3;
+
+	/**
+	 * The feature id for the '<em><b>Mpolygon</b></em>' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_MSC_CONDITION_MARK__MPOLYGON = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 4;
+
+	/**
+	 * The feature id for the '<em><b>MnName Format</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_MSC_CONDITION_MARK__MNNAME_FORMAT = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 5;
+
+	/**
+	 * The feature id for the '<em><b>MnIs Name Format</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_MSC_CONDITION_MARK__MNIS_NAME_FORMAT = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 6;
+
+	/**
+	 * The feature id for the '<em><b>Compartments</b></em>' reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_MSC_CONDITION_MARK__COMPARTMENTS = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 7;
+
+	/**
+	 * The number of structural features of the '<em>CGI Msc Condition Mark</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_MSC_CONDITION_MARK_FEATURE_COUNT = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 8;
+
+	/**
+	 * The number of operations of the '<em>CGI Msc Condition Mark</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_MSC_CONDITION_MARK_OPERATION_COUNT = GRAPH_ELEMENTS_TYPE_OPERATION_COUNT + 0;
+
+	/**
+	 * The meta object id for the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIMscExecutionOccurrenceImpl <em>CGI Msc Execution Occurrence</em>}' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIMscExecutionOccurrenceImpl
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.UMLRpyPackageImpl#getCGIMscExecutionOccurrence()
+	 * @generated
+	 */
+	int CGI_MSC_EXECUTION_OCCURRENCE = 34;
+
+	/**
+	 * The feature id for the '<em><b>Id</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_MSC_EXECUTION_OCCURRENCE__ID = GRAPH_ELEMENTS_TYPE__ID;
+
+	/**
+	 * The feature id for the '<em><b>Mdraw Behavior</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_MSC_EXECUTION_OCCURRENCE__MDRAW_BEHAVIOR = GRAPH_ELEMENTS_TYPE__MDRAW_BEHAVIOR;
+
+	/**
+	 * The feature id for the '<em><b>Mtype</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_MSC_EXECUTION_OCCURRENCE__MTYPE = GRAPH_ELEMENTS_TYPE__MTYPE;
+
+	/**
+	 * The feature id for the '<em><b>Mname</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_MSC_EXECUTION_OCCURRENCE__MNAME = GRAPH_ELEMENTS_TYPE__MNAME;
+
+	/**
+	 * The feature id for the '<em><b>MbIs Preferences Initialized</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_MSC_EXECUTION_OCCURRENCE__MBIS_PREFERENCES_INITIALIZED = GRAPH_ELEMENTS_TYPE__MBIS_PREFERENCES_INITIALIZED;
+
+	/**
+	 * The feature id for the '<em><b>MpModel Object</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_MSC_EXECUTION_OCCURRENCE__MPMODEL_OBJECT = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 0;
+
+	/**
+	 * The feature id for the '<em><b>MpParent</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_MSC_EXECUTION_OCCURRENCE__MPPARENT = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 1;
+
+	/**
+	 * The feature id for the '<em><b>Mtransform</b></em>' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_MSC_EXECUTION_OCCURRENCE__MTRANSFORM = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 2;
+
+	/**
+	 * The feature id for the '<em><b>Mposition</b></em>' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_MSC_EXECUTION_OCCURRENCE__MPOSITION = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 3;
+
+	/**
+	 * The feature id for the '<em><b>MpInherits From</b></em>' reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_MSC_EXECUTION_OCCURRENCE__MPINHERITS_FROM = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 4;
+
+	/**
+	 * The feature id for the '<em><b>MnInheritance Mask</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_MSC_EXECUTION_OCCURRENCE__MNINHERITANCE_MASK = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 5;
+
+	/**
+	 * The feature id for the '<em><b>MSub Type</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_MSC_EXECUTION_OCCURRENCE__MSUB_TYPE = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 6;
+
+	/**
+	 * The feature id for the '<em><b>MpStart Message</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_MSC_EXECUTION_OCCURRENCE__MPSTART_MESSAGE = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 7;
+
+	/**
+	 * The number of structural features of the '<em>CGI Msc Execution Occurrence</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_MSC_EXECUTION_OCCURRENCE_FEATURE_COUNT = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 8;
+
+	/**
+	 * The number of operations of the '<em>CGI Msc Execution Occurrence</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_MSC_EXECUTION_OCCURRENCE_OPERATION_COUNT = GRAPH_ELEMENTS_TYPE_OPERATION_COUNT + 0;
+
+	/**
+	 * The meta object id for the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIMscInteractionOccurrenceImpl <em>CGI Msc Interaction Occurrence</em>}' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIMscInteractionOccurrenceImpl
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.UMLRpyPackageImpl#getCGIMscInteractionOccurrence()
+	 * @generated
+	 */
+	int CGI_MSC_INTERACTION_OCCURRENCE = 35;
+
+	/**
+	 * The feature id for the '<em><b>Id</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_MSC_INTERACTION_OCCURRENCE__ID = GRAPH_ELEMENTS_TYPE__ID;
+
+	/**
+	 * The feature id for the '<em><b>Mdraw Behavior</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_MSC_INTERACTION_OCCURRENCE__MDRAW_BEHAVIOR = GRAPH_ELEMENTS_TYPE__MDRAW_BEHAVIOR;
+
+	/**
+	 * The feature id for the '<em><b>Mtype</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_MSC_INTERACTION_OCCURRENCE__MTYPE = GRAPH_ELEMENTS_TYPE__MTYPE;
+
+	/**
+	 * The feature id for the '<em><b>Mname</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_MSC_INTERACTION_OCCURRENCE__MNAME = GRAPH_ELEMENTS_TYPE__MNAME;
+
+	/**
+	 * The feature id for the '<em><b>MbIs Preferences Initialized</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_MSC_INTERACTION_OCCURRENCE__MBIS_PREFERENCES_INITIALIZED = GRAPH_ELEMENTS_TYPE__MBIS_PREFERENCES_INITIALIZED;
+
+	/**
+	 * The feature id for the '<em><b>MpModel Object</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_MSC_INTERACTION_OCCURRENCE__MPMODEL_OBJECT = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 0;
+
+	/**
+	 * The feature id for the '<em><b>MpParent</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_MSC_INTERACTION_OCCURRENCE__MPPARENT = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 1;
+
+	/**
+	 * The feature id for the '<em><b>Mtransform</b></em>' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_MSC_INTERACTION_OCCURRENCE__MTRANSFORM = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 2;
+
+	/**
+	 * The feature id for the '<em><b>Mpolygon</b></em>' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_MSC_INTERACTION_OCCURRENCE__MPOLYGON = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 3;
+
+	/**
+	 * The feature id for the '<em><b>MnName Format</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_MSC_INTERACTION_OCCURRENCE__MNNAME_FORMAT = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 4;
+
+	/**
+	 * The feature id for the '<em><b>MnIs Name Format</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_MSC_INTERACTION_OCCURRENCE__MNIS_NAME_FORMAT = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 5;
+
+	/**
+	 * The feature id for the '<em><b>Compartments</b></em>' reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_MSC_INTERACTION_OCCURRENCE__COMPARTMENTS = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 6;
+
+	/**
+	 * The feature id for the '<em><b>Properties</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_MSC_INTERACTION_OCCURRENCE__PROPERTIES = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 7;
+
+	/**
+	 * The number of structural features of the '<em>CGI Msc Interaction Occurrence</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_MSC_INTERACTION_OCCURRENCE_FEATURE_COUNT = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 8;
+
+	/**
+	 * The number of operations of the '<em>CGI Msc Interaction Occurrence</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_MSC_INTERACTION_OCCURRENCE_OPERATION_COUNT = GRAPH_ELEMENTS_TYPE_OPERATION_COUNT + 0;
+
+	/**
+	 * The meta object id for the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIMscInteractionOperandImpl <em>CGI Msc Interaction Operand</em>}' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIMscInteractionOperandImpl
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.UMLRpyPackageImpl#getCGIMscInteractionOperand()
+	 * @generated
+	 */
+	int CGI_MSC_INTERACTION_OPERAND = 36;
+
+	/**
+	 * The feature id for the '<em><b>Id</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_MSC_INTERACTION_OPERAND__ID = GRAPH_ELEMENTS_TYPE__ID;
+
+	/**
+	 * The feature id for the '<em><b>Mdraw Behavior</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_MSC_INTERACTION_OPERAND__MDRAW_BEHAVIOR = GRAPH_ELEMENTS_TYPE__MDRAW_BEHAVIOR;
+
+	/**
+	 * The feature id for the '<em><b>Mtype</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_MSC_INTERACTION_OPERAND__MTYPE = GRAPH_ELEMENTS_TYPE__MTYPE;
+
+	/**
+	 * The feature id for the '<em><b>Mname</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_MSC_INTERACTION_OPERAND__MNAME = GRAPH_ELEMENTS_TYPE__MNAME;
+
+	/**
+	 * The feature id for the '<em><b>MbIs Preferences Initialized</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_MSC_INTERACTION_OPERAND__MBIS_PREFERENCES_INITIALIZED = GRAPH_ELEMENTS_TYPE__MBIS_PREFERENCES_INITIALIZED;
+
+	/**
+	 * The feature id for the '<em><b>Properties</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_MSC_INTERACTION_OPERAND__PROPERTIES = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 0;
+
+	/**
+	 * The feature id for the '<em><b>MpModel Object</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_MSC_INTERACTION_OPERAND__MPMODEL_OBJECT = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 1;
+
+	/**
+	 * The feature id for the '<em><b>MpParent</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_MSC_INTERACTION_OPERAND__MPPARENT = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 2;
+
+	/**
+	 * The feature id for the '<em><b>MAdditional Label</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_MSC_INTERACTION_OPERAND__MADDITIONAL_LABEL = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 3;
+
+	/**
+	 * The feature id for the '<em><b>Mpolygon</b></em>' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_MSC_INTERACTION_OPERAND__MPOLYGON = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 4;
+
+	/**
+	 * The feature id for the '<em><b>MnName Format</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_MSC_INTERACTION_OPERAND__MNNAME_FORMAT = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 5;
+
+	/**
+	 * The feature id for the '<em><b>MnIs Name Format</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_MSC_INTERACTION_OPERAND__MNIS_NAME_FORMAT = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 6;
+
+	/**
+	 * The feature id for the '<em><b>Compartments</b></em>' reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_MSC_INTERACTION_OPERAND__COMPARTMENTS = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 7;
+
+	/**
+	 * The feature id for the '<em><b>Mtransform</b></em>' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_MSC_INTERACTION_OPERAND__MTRANSFORM = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 8;
+
+	/**
+	 * The number of structural features of the '<em>CGI Msc Interaction Operand</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_MSC_INTERACTION_OPERAND_FEATURE_COUNT = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 9;
+
+	/**
+	 * The number of operations of the '<em>CGI Msc Interaction Operand</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_MSC_INTERACTION_OPERAND_OPERATION_COUNT = GRAPH_ELEMENTS_TYPE_OPERATION_COUNT + 0;
+
+	/**
+	 * The meta object id for the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIMscInteractionOperatorImpl <em>CGI Msc Interaction Operator</em>}' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIMscInteractionOperatorImpl
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.UMLRpyPackageImpl#getCGIMscInteractionOperator()
+	 * @generated
+	 */
+	int CGI_MSC_INTERACTION_OPERATOR = 37;
+
+	/**
+	 * The feature id for the '<em><b>Id</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_MSC_INTERACTION_OPERATOR__ID = GRAPH_ELEMENTS_TYPE__ID;
+
+	/**
+	 * The feature id for the '<em><b>Mdraw Behavior</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_MSC_INTERACTION_OPERATOR__MDRAW_BEHAVIOR = GRAPH_ELEMENTS_TYPE__MDRAW_BEHAVIOR;
+
+	/**
+	 * The feature id for the '<em><b>Mtype</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_MSC_INTERACTION_OPERATOR__MTYPE = GRAPH_ELEMENTS_TYPE__MTYPE;
+
+	/**
+	 * The feature id for the '<em><b>Mname</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_MSC_INTERACTION_OPERATOR__MNAME = GRAPH_ELEMENTS_TYPE__MNAME;
+
+	/**
+	 * The feature id for the '<em><b>MbIs Preferences Initialized</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_MSC_INTERACTION_OPERATOR__MBIS_PREFERENCES_INITIALIZED = GRAPH_ELEMENTS_TYPE__MBIS_PREFERENCES_INITIALIZED;
+
+	/**
+	 * The feature id for the '<em><b>Moperator Type</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_MSC_INTERACTION_OPERATOR__MOPERATOR_TYPE = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 0;
+
+	/**
+	 * The feature id for the '<em><b>Properties</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_MSC_INTERACTION_OPERATOR__PROPERTIES = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 1;
+
+	/**
+	 * The feature id for the '<em><b>MpModel Object</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_MSC_INTERACTION_OPERATOR__MPMODEL_OBJECT = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 2;
+
+	/**
+	 * The feature id for the '<em><b>MpParent</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_MSC_INTERACTION_OPERATOR__MPPARENT = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 3;
+
+	/**
+	 * The feature id for the '<em><b>Mtransform</b></em>' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_MSC_INTERACTION_OPERATOR__MTRANSFORM = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 4;
+
+	/**
+	 * The feature id for the '<em><b>Mpolygon</b></em>' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_MSC_INTERACTION_OPERATOR__MPOLYGON = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 5;
+
+	/**
+	 * The feature id for the '<em><b>MnName Format</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_MSC_INTERACTION_OPERATOR__MNNAME_FORMAT = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 6;
+
+	/**
+	 * The feature id for the '<em><b>MnIs Name Format</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_MSC_INTERACTION_OPERATOR__MNIS_NAME_FORMAT = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 7;
+
+	/**
+	 * The feature id for the '<em><b>Frameset</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_MSC_INTERACTION_OPERATOR__FRAMESET = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 8;
+
+	/**
+	 * The feature id for the '<em><b>Compartments</b></em>' reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_MSC_INTERACTION_OPERATOR__COMPARTMENTS = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 9;
+
+	/**
+	 * The feature id for the '<em><b>MbFrameset Modified</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_MSC_INTERACTION_OPERATOR__MBFRAMESET_MODIFIED = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 10;
+
+	/**
+	 * The number of structural features of the '<em>CGI Msc Interaction Operator</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_MSC_INTERACTION_OPERATOR_FEATURE_COUNT = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 11;
+
+	/**
+	 * The number of operations of the '<em>CGI Msc Interaction Operator</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_MSC_INTERACTION_OPERATOR_OPERATION_COUNT = GRAPH_ELEMENTS_TYPE_OPERATION_COUNT + 0;
+
+	/**
+	 * The meta object id for the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIMscMessageImpl <em>CGI Msc Message</em>}' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIMscMessageImpl
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.UMLRpyPackageImpl#getCGIMscMessage()
+	 * @generated
+	 */
+	int CGI_MSC_MESSAGE = 38;
+
+	/**
+	 * The feature id for the '<em><b>Id</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_MSC_MESSAGE__ID = GRAPH_ELEMENTS_TYPE__ID;
+
+	/**
+	 * The feature id for the '<em><b>Mdraw Behavior</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_MSC_MESSAGE__MDRAW_BEHAVIOR = GRAPH_ELEMENTS_TYPE__MDRAW_BEHAVIOR;
+
+	/**
+	 * The feature id for the '<em><b>Mtype</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_MSC_MESSAGE__MTYPE = GRAPH_ELEMENTS_TYPE__MTYPE;
+
+	/**
+	 * The feature id for the '<em><b>Mname</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_MSC_MESSAGE__MNAME = GRAPH_ELEMENTS_TYPE__MNAME;
+
+	/**
+	 * The feature id for the '<em><b>MbIs Preferences Initialized</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_MSC_MESSAGE__MBIS_PREFERENCES_INITIALIZED = GRAPH_ELEMENTS_TYPE__MBIS_PREFERENCES_INITIALIZED;
+
+	/**
+	 * The feature id for the '<em><b>MpModel Object</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_MSC_MESSAGE__MPMODEL_OBJECT = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 0;
+
+	/**
+	 * The feature id for the '<em><b>MpParent</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_MSC_MESSAGE__MPPARENT = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 1;
+
+	/**
+	 * The feature id for the '<em><b>MpSource</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_MSC_MESSAGE__MPSOURCE = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 2;
+
+	/**
+	 * The feature id for the '<em><b>Msource Type</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_MSC_MESSAGE__MSOURCE_TYPE = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 3;
+
+	/**
+	 * The feature id for the '<em><b>MpTarget</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_MSC_MESSAGE__MPTARGET = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 4;
+
+	/**
+	 * The feature id for the '<em><b>Mtarget Type</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_MSC_MESSAGE__MTARGET_TYPE = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 5;
+
+	/**
+	 * The feature id for the '<em><b>Mdirection</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_MSC_MESSAGE__MDIRECTION = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 6;
+
+	/**
+	 * The feature id for the '<em><b>Mrpn</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_MSC_MESSAGE__MRPN = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 7;
+
+	/**
+	 * The feature id for the '<em><b>Mangle Point1</b></em>' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_MSC_MESSAGE__MANGLE_POINT1 = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 8;
+
+	/**
+	 * The feature id for the '<em><b>Mangle Point2</b></em>' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_MSC_MESSAGE__MANGLE_POINT2 = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 9;
+
+	/**
+	 * The feature id for the '<em><b>Mline style</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_MSC_MESSAGE__MLINE_STYLE = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 10;
+
+	/**
+	 * The feature id for the '<em><b>MSource Port</b></em>' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_MSC_MESSAGE__MSOURCE_PORT = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 11;
+
+	/**
+	 * The feature id for the '<em><b>MTarget Port</b></em>' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_MSC_MESSAGE__MTARGET_PORT = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 12;
+
+	/**
+	 * The feature id for the '<em><b>MbLeft</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_MSC_MESSAGE__MBLEFT = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 13;
+
+	/**
+	 * The feature id for the '<em><b>Marrow</b></em>' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_MSC_MESSAGE__MARROW = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 14;
+
+	/**
+	 * The feature id for the '<em><b>Properties</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_MSC_MESSAGE__PROPERTIES = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 15;
+
+	/**
+	 * The feature id for the '<em><b>My State</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_MSC_MESSAGE__MY_STATE = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 16;
+
+	/**
+	 * The feature id for the '<em><b>MpSource Exec</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_MSC_MESSAGE__MPSOURCE_EXEC = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 17;
+
+	/**
+	 * The feature id for the '<em><b>MpTarget Exec</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_MSC_MESSAGE__MPTARGET_EXEC = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 18;
+
+	/**
+	 * The number of structural features of the '<em>CGI Msc Message</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_MSC_MESSAGE_FEATURE_COUNT = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 19;
+
+	/**
+	 * The number of operations of the '<em>CGI Msc Message</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_MSC_MESSAGE_OPERATION_COUNT = GRAPH_ELEMENTS_TYPE_OPERATION_COUNT + 0;
+
+	/**
+	 * The meta object id for the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIObjectInstanceImpl <em>CGI Object Instance</em>}' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIObjectInstanceImpl
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.UMLRpyPackageImpl#getCGIObjectInstance()
+	 * @generated
+	 */
+	int CGI_OBJECT_INSTANCE = 39;
+
+	/**
+	 * The feature id for the '<em><b>Id</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_OBJECT_INSTANCE__ID = GRAPH_ELEMENTS_TYPE__ID;
+
+	/**
+	 * The feature id for the '<em><b>Mdraw Behavior</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_OBJECT_INSTANCE__MDRAW_BEHAVIOR = GRAPH_ELEMENTS_TYPE__MDRAW_BEHAVIOR;
+
+	/**
+	 * The feature id for the '<em><b>Mtype</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_OBJECT_INSTANCE__MTYPE = GRAPH_ELEMENTS_TYPE__MTYPE;
+
+	/**
+	 * The feature id for the '<em><b>Mname</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_OBJECT_INSTANCE__MNAME = GRAPH_ELEMENTS_TYPE__MNAME;
+
+	/**
+	 * The feature id for the '<em><b>MbIs Preferences Initialized</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_OBJECT_INSTANCE__MBIS_PREFERENCES_INITIALIZED = GRAPH_ELEMENTS_TYPE__MBIS_PREFERENCES_INITIALIZED;
+
+	/**
+	 * The feature id for the '<em><b>MpModel Object</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_OBJECT_INSTANCE__MPMODEL_OBJECT = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 0;
+
+	/**
+	 * The feature id for the '<em><b>MpParent</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_OBJECT_INSTANCE__MPPARENT = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 1;
+
+	/**
+	 * The feature id for the '<em><b>Mtransform</b></em>' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_OBJECT_INSTANCE__MTRANSFORM = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 2;
+
+	/**
+	 * The feature id for the '<em><b>MAdditional Label</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_OBJECT_INSTANCE__MADDITIONAL_LABEL = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 3;
+
+	/**
+	 * The feature id for the '<em><b>Mpolygon</b></em>' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_OBJECT_INSTANCE__MPOLYGON = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 4;
+
+	/**
+	 * The feature id for the '<em><b>MnName Format</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_OBJECT_INSTANCE__MNNAME_FORMAT = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 5;
+
+	/**
+	 * The feature id for the '<em><b>MnIs Name Format</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_OBJECT_INSTANCE__MNIS_NAME_FORMAT = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 6;
+
+	/**
+	 * The feature id for the '<em><b>Frameset</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_OBJECT_INSTANCE__FRAMESET = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 7;
+
+	/**
+	 * The feature id for the '<em><b>Compartments</b></em>' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_OBJECT_INSTANCE__COMPARTMENTS = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 8;
+
+	/**
+	 * The feature id for the '<em><b>Mmultiplicity</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_OBJECT_INSTANCE__MMULTIPLICITY = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 9;
+
+	/**
+	 * The feature id for the '<em><b>Properties</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_OBJECT_INSTANCE__PROPERTIES = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 10;
+
+	/**
+	 * The feature id for the '<em><b>Operations</b></em>' reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_OBJECT_INSTANCE__OPERATIONS = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 11;
+
+	/**
+	 * The feature id for the '<em><b>Attrs</b></em>' reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_OBJECT_INSTANCE__ATTRS = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 12;
+
+	/**
+	 * The feature id for the '<em><b>MbFrameset Modified</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_OBJECT_INSTANCE__MBFRAMESET_MODIFIED = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 13;
+
+	/**
+	 * The feature id for the '<em><b>MpImage View Data</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_OBJECT_INSTANCE__MPIMAGE_VIEW_DATA = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 14;
+
+	/**
+	 * The feature id for the '<em><b>MbIs Misplaced</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_OBJECT_INSTANCE__MBIS_MISPLACED = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 15;
+
+	/**
+	 * The number of structural features of the '<em>CGI Object Instance</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_OBJECT_INSTANCE_FEATURE_COUNT = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 16;
+
+	/**
+	 * The number of operations of the '<em>CGI Object Instance</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_OBJECT_INSTANCE_OPERATION_COUNT = GRAPH_ELEMENTS_TYPE_OPERATION_COUNT + 0;
+
+	/**
+	 * The meta object id for the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIObjectLinkImpl <em>CGI Object Link</em>}' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIObjectLinkImpl
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.UMLRpyPackageImpl#getCGIObjectLink()
+	 * @generated
+	 */
+	int CGI_OBJECT_LINK = 40;
+
+	/**
+	 * The feature id for the '<em><b>Id</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_OBJECT_LINK__ID = GRAPH_ELEMENTS_TYPE__ID;
+
+	/**
+	 * The feature id for the '<em><b>Mdraw Behavior</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_OBJECT_LINK__MDRAW_BEHAVIOR = GRAPH_ELEMENTS_TYPE__MDRAW_BEHAVIOR;
+
+	/**
+	 * The feature id for the '<em><b>Mtype</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_OBJECT_LINK__MTYPE = GRAPH_ELEMENTS_TYPE__MTYPE;
+
+	/**
+	 * The feature id for the '<em><b>Mname</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_OBJECT_LINK__MNAME = GRAPH_ELEMENTS_TYPE__MNAME;
+
+	/**
+	 * The feature id for the '<em><b>MbIs Preferences Initialized</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_OBJECT_LINK__MBIS_PREFERENCES_INITIALIZED = GRAPH_ELEMENTS_TYPE__MBIS_PREFERENCES_INITIALIZED;
+
+	/**
+	 * The feature id for the '<em><b>Properties</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_OBJECT_LINK__PROPERTIES = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 0;
+
+	/**
+	 * The feature id for the '<em><b>MpModel Object</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_OBJECT_LINK__MPMODEL_OBJECT = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 1;
+
+	/**
+	 * The feature id for the '<em><b>MpParent</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_OBJECT_LINK__MPPARENT = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 2;
+
+	/**
+	 * The feature id for the '<em><b>MpSource</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_OBJECT_LINK__MPSOURCE = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 3;
+
+	/**
+	 * The feature id for the '<em><b>Msource Type</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_OBJECT_LINK__MSOURCE_TYPE = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 4;
+
+	/**
+	 * The feature id for the '<em><b>MpTarget</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_OBJECT_LINK__MPTARGET = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 5;
+
+	/**
+	 * The feature id for the '<em><b>Mtarget Type</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_OBJECT_LINK__MTARGET_TYPE = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 6;
+
+	/**
+	 * The feature id for the '<em><b>Mdirection</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_OBJECT_LINK__MDIRECTION = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 7;
+
+	/**
+	 * The feature id for the '<em><b>Mrpn</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_OBJECT_LINK__MRPN = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 8;
+
+	/**
+	 * The feature id for the '<em><b>Marrow</b></em>' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_OBJECT_LINK__MARROW = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 9;
+
+	/**
+	 * The feature id for the '<em><b>Mangle Point1</b></em>' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_OBJECT_LINK__MANGLE_POINT1 = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 10;
+
+	/**
+	 * The feature id for the '<em><b>Mangle Point2</b></em>' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_OBJECT_LINK__MANGLE_POINT2 = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 11;
+
+	/**
+	 * The feature id for the '<em><b>Mline style</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_OBJECT_LINK__MLINE_STYLE = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 12;
+
+	/**
+	 * The feature id for the '<em><b>MSource Port</b></em>' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_OBJECT_LINK__MSOURCE_PORT = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 13;
+
+	/**
+	 * The feature id for the '<em><b>MTarget Port</b></em>' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_OBJECT_LINK__MTARGET_PORT = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 14;
+
+	/**
+	 * The feature id for the '<em><b>MbShow Source Multiplicity</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_OBJECT_LINK__MBSHOW_SOURCE_MULTIPLICITY = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 15;
+
+	/**
+	 * The feature id for the '<em><b>MbShow Source Role</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_OBJECT_LINK__MBSHOW_SOURCE_ROLE = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 16;
+
+	/**
+	 * The feature id for the '<em><b>MbShow Target Multiplicity</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_OBJECT_LINK__MBSHOW_TARGET_MULTIPLICITY = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 17;
+
+	/**
+	 * The feature id for the '<em><b>MbShow Target Role</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_OBJECT_LINK__MBSHOW_TARGET_ROLE = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 18;
+
+	/**
+	 * The feature id for the '<em><b>MbShow Link Name</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_OBJECT_LINK__MBSHOW_LINK_NAME = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 19;
+
+	/**
+	 * The feature id for the '<em><b>Msource Role</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_OBJECT_LINK__MSOURCE_ROLE = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 20;
+
+	/**
+	 * The feature id for the '<em><b>Mtarget Role</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_OBJECT_LINK__MTARGET_ROLE = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 21;
+
+	/**
+	 * The feature id for the '<em><b>Msource Multiplicity</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_OBJECT_LINK__MSOURCE_MULTIPLICITY = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 22;
+
+	/**
+	 * The feature id for the '<em><b>Mtarget Multiplicity</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_OBJECT_LINK__MTARGET_MULTIPLICITY = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 23;
+
+	/**
+	 * The number of structural features of the '<em>CGI Object Link</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_OBJECT_LINK_FEATURE_COUNT = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 24;
+
+	/**
+	 * The number of operations of the '<em>CGI Object Link</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_OBJECT_LINK_OPERATION_COUNT = GRAPH_ELEMENTS_TYPE_OPERATION_COUNT + 0;
+
+	/**
+	 * The meta object id for the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIPackageImpl <em>CGI Package</em>}' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIPackageImpl
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.UMLRpyPackageImpl#getCGIPackage()
+	 * @generated
+	 */
+	int CGI_PACKAGE = 41;
+
+	/**
+	 * The feature id for the '<em><b>Id</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_PACKAGE__ID = GRAPH_ELEMENTS_TYPE__ID;
+
+	/**
+	 * The feature id for the '<em><b>Mdraw Behavior</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_PACKAGE__MDRAW_BEHAVIOR = GRAPH_ELEMENTS_TYPE__MDRAW_BEHAVIOR;
+
+	/**
+	 * The feature id for the '<em><b>Mtype</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_PACKAGE__MTYPE = GRAPH_ELEMENTS_TYPE__MTYPE;
+
+	/**
+	 * The feature id for the '<em><b>Mname</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_PACKAGE__MNAME = GRAPH_ELEMENTS_TYPE__MNAME;
+
+	/**
+	 * The feature id for the '<em><b>MbIs Preferences Initialized</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_PACKAGE__MBIS_PREFERENCES_INITIALIZED = GRAPH_ELEMENTS_TYPE__MBIS_PREFERENCES_INITIALIZED;
+
+	/**
+	 * The feature id for the '<em><b>MpModel Object</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_PACKAGE__MPMODEL_OBJECT = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 0;
+
+	/**
+	 * The feature id for the '<em><b>MpParent</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_PACKAGE__MPPARENT = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 1;
+
+	/**
+	 * The feature id for the '<em><b>Mtransform</b></em>' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_PACKAGE__MTRANSFORM = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 2;
+
+	/**
+	 * The feature id for the '<em><b>Mpolygon</b></em>' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_PACKAGE__MPOLYGON = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 3;
+
+	/**
+	 * The feature id for the '<em><b>MnName Format</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_PACKAGE__MNNAME_FORMAT = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 4;
+
+	/**
+	 * The feature id for the '<em><b>MnIs Name Format</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_PACKAGE__MNIS_NAME_FORMAT = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 5;
+
+	/**
+	 * The feature id for the '<em><b>Compartments</b></em>' reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_PACKAGE__COMPARTMENTS = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 6;
+
+	/**
+	 * The feature id for the '<em><b>Properties</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_PACKAGE__PROPERTIES = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 7;
+
+	/**
+	 * The feature id for the '<em><b>Mcolor</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_PACKAGE__MCOLOR = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 8;
+
+	/**
+	 * The feature id for the '<em><b>Mline Width</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_PACKAGE__MLINE_WIDTH = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 9;
+
+	/**
+	 * The feature id for the '<em><b>MAdditional Label</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_PACKAGE__MADDITIONAL_LABEL = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 10;
+
+	/**
+	 * The feature id for the '<em><b>Frameset</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_PACKAGE__FRAMESET = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 11;
+
+	/**
+	 * The feature id for the '<em><b>MbIs Structured</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_PACKAGE__MBIS_STRUCTURED = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 12;
+
+	/**
+	 * The number of structural features of the '<em>CGI Package</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_PACKAGE_FEATURE_COUNT = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 13;
+
+	/**
+	 * The number of operations of the '<em>CGI Package</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_PACKAGE_OPERATION_COUNT = GRAPH_ELEMENTS_TYPE_OPERATION_COUNT + 0;
+
+	/**
+	 * The meta object id for the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIPartitionImpl <em>CGI Partition</em>}' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIPartitionImpl
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.UMLRpyPackageImpl#getCGIPartition()
+	 * @generated
+	 */
+	int CGI_PARTITION = 42;
+
+	/**
+	 * The feature id for the '<em><b>Id</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_PARTITION__ID = GRAPH_ELEMENTS_TYPE__ID;
+
+	/**
+	 * The feature id for the '<em><b>Mdraw Behavior</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_PARTITION__MDRAW_BEHAVIOR = GRAPH_ELEMENTS_TYPE__MDRAW_BEHAVIOR;
+
+	/**
+	 * The feature id for the '<em><b>Mtype</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_PARTITION__MTYPE = GRAPH_ELEMENTS_TYPE__MTYPE;
+
+	/**
+	 * The feature id for the '<em><b>Mname</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_PARTITION__MNAME = GRAPH_ELEMENTS_TYPE__MNAME;
+
+	/**
+	 * The feature id for the '<em><b>MbIs Preferences Initialized</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_PARTITION__MBIS_PREFERENCES_INITIALIZED = GRAPH_ELEMENTS_TYPE__MBIS_PREFERENCES_INITIALIZED;
+
+	/**
+	 * The feature id for the '<em><b>MpModel Object</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_PARTITION__MPMODEL_OBJECT = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 0;
+
+	/**
+	 * The feature id for the '<em><b>MpParent</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_PARTITION__MPPARENT = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 1;
+
+	/**
+	 * The feature id for the '<em><b>Mpolygon</b></em>' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_PARTITION__MPOLYGON = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 2;
+
+	/**
+	 * The feature id for the '<em><b>MnName Format</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_PARTITION__MNNAME_FORMAT = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 3;
+
+	/**
+	 * The feature id for the '<em><b>MnIs Name Format</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_PARTITION__MNIS_NAME_FORMAT = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 4;
+
+	/**
+	 * The feature id for the '<em><b>Frameset</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_PARTITION__FRAMESET = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 5;
+
+	/**
+	 * The feature id for the '<em><b>MAdditional Label</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_PARTITION__MADDITIONAL_LABEL = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 6;
+
+	/**
+	 * The feature id for the '<em><b>Properties</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_PARTITION__PROPERTIES = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 7;
+
+	/**
+	 * The feature id for the '<em><b>Compartments</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_PARTITION__COMPARTMENTS = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 8;
+
+	/**
+	 * The number of structural features of the '<em>CGI Partition</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_PARTITION_FEATURE_COUNT = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 9;
+
+	/**
+	 * The number of operations of the '<em>CGI Partition</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_PARTITION_OPERATION_COUNT = GRAPH_ELEMENTS_TYPE_OPERATION_COUNT + 0;
+
+	/**
+	 * The meta object id for the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIPortConnectorImpl <em>CGI Port Connector</em>}' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIPortConnectorImpl
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.UMLRpyPackageImpl#getCGIPortConnector()
+	 * @generated
+	 */
+	int CGI_PORT_CONNECTOR = 43;
+
+	/**
+	 * The feature id for the '<em><b>Id</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_PORT_CONNECTOR__ID = GRAPH_ELEMENTS_TYPE__ID;
+
+	/**
+	 * The feature id for the '<em><b>Mdraw Behavior</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_PORT_CONNECTOR__MDRAW_BEHAVIOR = GRAPH_ELEMENTS_TYPE__MDRAW_BEHAVIOR;
+
+	/**
+	 * The feature id for the '<em><b>Mtype</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_PORT_CONNECTOR__MTYPE = GRAPH_ELEMENTS_TYPE__MTYPE;
+
+	/**
+	 * The feature id for the '<em><b>Mname</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_PORT_CONNECTOR__MNAME = GRAPH_ELEMENTS_TYPE__MNAME;
+
+	/**
+	 * The feature id for the '<em><b>MbIs Preferences Initialized</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_PORT_CONNECTOR__MBIS_PREFERENCES_INITIALIZED = GRAPH_ELEMENTS_TYPE__MBIS_PREFERENCES_INITIALIZED;
+
+	/**
+	 * The feature id for the '<em><b>MpModel Object</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_PORT_CONNECTOR__MPMODEL_OBJECT = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 0;
+
+	/**
+	 * The feature id for the '<em><b>MpParent</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_PORT_CONNECTOR__MPPARENT = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 1;
+
+	/**
+	 * The feature id for the '<em><b>Mtransform</b></em>' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_PORT_CONNECTOR__MTRANSFORM = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 2;
+
+	/**
+	 * The feature id for the '<em><b>MAdditional Label</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_PORT_CONNECTOR__MADDITIONAL_LABEL = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 3;
+
+	/**
+	 * The feature id for the '<em><b>Mposition</b></em>' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_PORT_CONNECTOR__MPOSITION = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 4;
+
+	/**
+	 * The feature id for the '<em><b>MpInherits From</b></em>' reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_PORT_CONNECTOR__MPINHERITS_FROM = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 5;
+
+	/**
+	 * The feature id for the '<em><b>MnInheritance Mask</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_PORT_CONNECTOR__MNINHERITANCE_MASK = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 6;
+
+	/**
+	 * The feature id for the '<em><b>MSub Type</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_PORT_CONNECTOR__MSUB_TYPE = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 7;
+
+	/**
+	 * The feature id for the '<em><b>Mprovided Interface Label</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_PORT_CONNECTOR__MPROVIDED_INTERFACE_LABEL = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 8;
+
+	/**
+	 * The feature id for the '<em><b>Mrequired Interface Label</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_PORT_CONNECTOR__MREQUIRED_INTERFACE_LABEL = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 9;
+
+	/**
+	 * The feature id for the '<em><b>Properties</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_PORT_CONNECTOR__PROPERTIES = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 10;
+
+	/**
+	 * The feature id for the '<em><b>MbVisible</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_PORT_CONNECTOR__MBVISIBLE = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 11;
+
+	/**
+	 * The feature id for the '<em><b>MnAngle</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_PORT_CONNECTOR__MNANGLE = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 12;
+
+	/**
+	 * The number of structural features of the '<em>CGI Port Connector</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_PORT_CONNECTOR_FEATURE_COUNT = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 13;
+
+	/**
+	 * The number of operations of the '<em>CGI Port Connector</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_PORT_CONNECTOR_OPERATION_COUNT = GRAPH_ELEMENTS_TYPE_OPERATION_COUNT + 0;
+
+	/**
+	 * The meta object id for the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIStateImpl <em>CGI State</em>}' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIStateImpl
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.UMLRpyPackageImpl#getCGIState()
+	 * @generated
+	 */
+	int CGI_STATE = 44;
+
+	/**
+	 * The feature id for the '<em><b>Id</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_STATE__ID = GRAPH_ELEMENTS_TYPE__ID;
+
+	/**
+	 * The feature id for the '<em><b>Mdraw Behavior</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_STATE__MDRAW_BEHAVIOR = GRAPH_ELEMENTS_TYPE__MDRAW_BEHAVIOR;
+
+	/**
+	 * The feature id for the '<em><b>Mtype</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_STATE__MTYPE = GRAPH_ELEMENTS_TYPE__MTYPE;
+
+	/**
+	 * The feature id for the '<em><b>Mname</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_STATE__MNAME = GRAPH_ELEMENTS_TYPE__MNAME;
+
+	/**
+	 * The feature id for the '<em><b>MbIs Preferences Initialized</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_STATE__MBIS_PREFERENCES_INITIALIZED = GRAPH_ELEMENTS_TYPE__MBIS_PREFERENCES_INITIALIZED;
+
+	/**
+	 * The feature id for the '<em><b>MpModel Object</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_STATE__MPMODEL_OBJECT = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 0;
+
+	/**
+	 * The feature id for the '<em><b>MAdditional Label</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_STATE__MADDITIONAL_LABEL = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 1;
+
+	/**
+	 * The feature id for the '<em><b>Mpolygon</b></em>' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_STATE__MPOLYGON = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 2;
+
+	/**
+	 * The feature id for the '<em><b>MnName Format</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_STATE__MNNAME_FORMAT = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 3;
+
+	/**
+	 * The feature id for the '<em><b>MnIs Name Format</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_STATE__MNIS_NAME_FORMAT = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 4;
+
+	/**
+	 * The feature id for the '<em><b>NAnd Line Count</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_STATE__NAND_LINE_COUNT = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 5;
+
+	/**
+	 * The feature id for the '<em><b>MnInheritance Mask</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_STATE__MNINHERITANCE_MASK = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 6;
+
+	/**
+	 * The feature id for the '<em><b>MpDefault Component Relation</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_STATE__MPDEFAULT_COMPONENT_RELATION = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 7;
+
+	/**
+	 * The feature id for the '<em><b>Properties</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_STATE__PROPERTIES = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 8;
+
+	/**
+	 * The feature id for the '<em><b>MpParent</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_STATE__MPPARENT = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 9;
+
+	/**
+	 * The feature id for the '<em><b>Mtransform</b></em>' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_STATE__MTRANSFORM = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 10;
+
+	/**
+	 * The feature id for the '<em><b>And Line Poly</b></em>' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_STATE__AND_LINE_POLY = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 11;
+
+	/**
+	 * The feature id for the '<em><b>MpVirtual Parent</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_STATE__MPVIRTUAL_PARENT = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 12;
+
+	/**
+	 * The feature id for the '<em><b>Mmove And Line Time Stamp</b></em>' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_STATE__MMOVE_AND_LINE_TIME_STAMP = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 13;
+
+	/**
+	 * The feature id for the '<em><b>My State</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_STATE__MY_STATE = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 14;
+
+	/**
+	 * The feature id for the '<em><b>MpInherits From</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_STATE__MPINHERITS_FROM = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 15;
+
+	/**
+	 * The feature id for the '<em><b>Frameset</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_STATE__FRAMESET = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 16;
+
+	/**
+	 * The feature id for the '<em><b>MbFrameset Modified</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_STATE__MBFRAMESET_MODIFIED = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 17;
+
+	/**
+	 * The feature id for the '<em><b>MbIs Misplaced</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_STATE__MBIS_MISPLACED = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 18;
+
+	/**
+	 * The feature id for the '<em><b>Mcolor</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_STATE__MCOLOR = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 19;
+
+	/**
+	 * The feature id for the '<em><b>Mline Width</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_STATE__MLINE_WIDTH = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 20;
+
+	/**
+	 * The feature id for the '<em><b>Compartments</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_STATE__COMPARTMENTS = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 21;
+
+	/**
+	 * The number of structural features of the '<em>CGI State</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_STATE_FEATURE_COUNT = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 22;
+
+	/**
+	 * The number of operations of the '<em>CGI State</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_STATE_OPERATION_COUNT = GRAPH_ELEMENTS_TYPE_OPERATION_COUNT + 0;
+
+	/**
+	 * The meta object id for the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIStateChartImpl <em>CGI State Chart</em>}' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIStateChartImpl
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.UMLRpyPackageImpl#getCGIStateChart()
+	 * @generated
+	 */
+	int CGI_STATE_CHART = 45;
+
+	/**
+	 * The feature id for the '<em><b>Id</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_STATE_CHART__ID = GRAPHIC_CHART_TYPE__ID;
+
+	/**
+	 * The feature id for the '<em><b>Maccess</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_STATE_CHART__MACCESS = GRAPHIC_CHART_TYPE__MACCESS;
+
+	/**
+	 * The feature id for the '<em><b>Element List</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_STATE_CHART__ELEMENT_LIST = GRAPHIC_CHART_TYPE__ELEMENT_LIST;
+
+	/**
+	 * The feature id for the '<em><b>MnModify Date</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_STATE_CHART__MNMODIFY_DATE = GRAPHIC_CHART_TYPE__MNMODIFY_DATE;
+
+	/**
+	 * The feature id for the '<em><b>Mcurrent Left Top</b></em>' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_STATE_CHART__MCURRENT_LEFT_TOP = GRAPHIC_CHART_TYPE__MCURRENT_LEFT_TOP;
+
+	/**
+	 * The feature id for the '<em><b>Mmodified</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_STATE_CHART__MMODIFIED = GRAPHIC_CHART_TYPE__MMODIFIED;
+
+	/**
+	 * The feature id for the '<em><b>MnCreate Date</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_STATE_CHART__MNCREATE_DATE = GRAPHIC_CHART_TYPE__MNCREATE_DATE;
+
+	/**
+	 * The feature id for the '<em><b>MpParent</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_STATE_CHART__MPPARENT = GRAPHIC_CHART_TYPE__MPPARENT;
+
+	/**
+	 * The feature id for the '<em><b>Marrow Style</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_STATE_CHART__MARROW_STYLE = GRAPHIC_CHART_TYPE__MARROW_STYLE;
+
+	/**
+	 * The feature id for the '<em><b>Mdraw Behavior</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_STATE_CHART__MDRAW_BEHAVIOR = GRAPHIC_CHART_TYPE__MDRAW_BEHAVIOR;
+
+	/**
+	 * The feature id for the '<em><b>Mcurrent Right Bottom</b></em>' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_STATE_CHART__MCURRENT_RIGHT_BOTTOM = GRAPHIC_CHART_TYPE__MCURRENT_RIGHT_BOTTOM;
+
+	/**
+	 * The feature id for the '<em><b>Mcreator</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_STATE_CHART__MCREATOR = GRAPHIC_CHART_TYPE__MCREATOR;
+
+	/**
+	 * The feature id for the '<em><b>MbScale With Zoom</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_STATE_CHART__MBSCALE_WITH_ZOOM = GRAPHIC_CHART_TYPE__MBSCALE_WITH_ZOOM;
+
+	/**
+	 * The feature id for the '<em><b>Mtype</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_STATE_CHART__MTYPE = GRAPHIC_CHART_TYPE__MTYPE;
+
+	/**
+	 * The feature id for the '<em><b>Graph Elements</b></em>' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_STATE_CHART__GRAPH_ELEMENTS = GRAPHIC_CHART_TYPE__GRAPH_ELEMENTS;
+
+	/**
+	 * The feature id for the '<em><b>Mname</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_STATE_CHART__MNAME = GRAPHIC_CHART_TYPE__MNAME;
+
+	/**
+	 * The feature id for the '<em><b>Mfile Version</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_STATE_CHART__MFILE_VERSION = GRAPHIC_CHART_TYPE__MFILE_VERSION;
+
+	/**
+	 * The feature id for the '<em><b>MbIs Preferences Initialized</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_STATE_CHART__MBIS_PREFERENCES_INITIALIZED = GRAPHIC_CHART_TYPE__MBIS_PREFERENCES_INITIALIZED;
+
+	/**
+	 * The feature id for the '<em><b>MpModel Object</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_STATE_CHART__MPMODEL_OBJECT = GRAPHIC_CHART_TYPE_FEATURE_COUNT + 0;
+
+	/**
+	 * The feature id for the '<em><b>MpRoot</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_STATE_CHART__MPROOT = GRAPHIC_CHART_TYPE_FEATURE_COUNT + 1;
+
+	/**
+	 * The feature id for the '<em><b>My State</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_STATE_CHART__MY_STATE = GRAPHIC_CHART_TYPE_FEATURE_COUNT + 2;
+
+	/**
+	 * The feature id for the '<em><b>MpInherits From</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_STATE_CHART__MPINHERITS_FROM = GRAPHIC_CHART_TYPE_FEATURE_COUNT + 3;
+
+	/**
+	 * The feature id for the '<em><b>Diagram List</b></em>' reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_STATE_CHART__DIAGRAM_LIST = GRAPHIC_CHART_TYPE_FEATURE_COUNT + 4;
+
+	/**
+	 * The feature id for the '<em><b>Properties</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_STATE_CHART__PROPERTIES = GRAPHIC_CHART_TYPE_FEATURE_COUNT + 5;
+
+	/**
+	 * The number of structural features of the '<em>CGI State Chart</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_STATE_CHART_FEATURE_COUNT = GRAPHIC_CHART_TYPE_FEATURE_COUNT + 6;
+
+	/**
+	 * The number of operations of the '<em>CGI State Chart</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_STATE_CHART_OPERATION_COUNT = GRAPHIC_CHART_TYPE_OPERATION_COUNT + 0;
+
+	/**
+	 * The meta object id for the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGISwimlaneFrameImpl <em>CGI Swimlane Frame</em>}' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGISwimlaneFrameImpl
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.UMLRpyPackageImpl#getCGISwimlaneFrame()
+	 * @generated
+	 */
+	int CGI_SWIMLANE_FRAME = 46;
+
+	/**
+	 * The feature id for the '<em><b>Id</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_SWIMLANE_FRAME__ID = GRAPH_ELEMENTS_TYPE__ID;
+
+	/**
+	 * The feature id for the '<em><b>Mdraw Behavior</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_SWIMLANE_FRAME__MDRAW_BEHAVIOR = GRAPH_ELEMENTS_TYPE__MDRAW_BEHAVIOR;
+
+	/**
+	 * The feature id for the '<em><b>Mtype</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_SWIMLANE_FRAME__MTYPE = GRAPH_ELEMENTS_TYPE__MTYPE;
+
+	/**
+	 * The feature id for the '<em><b>Mname</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_SWIMLANE_FRAME__MNAME = GRAPH_ELEMENTS_TYPE__MNAME;
+
+	/**
+	 * The feature id for the '<em><b>MbIs Preferences Initialized</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_SWIMLANE_FRAME__MBIS_PREFERENCES_INITIALIZED = GRAPH_ELEMENTS_TYPE__MBIS_PREFERENCES_INITIALIZED;
+
+	/**
+	 * The feature id for the '<em><b>MpModel Object</b></em>' reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_SWIMLANE_FRAME__MPMODEL_OBJECT = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 0;
+
+	/**
+	 * The feature id for the '<em><b>MpParent</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_SWIMLANE_FRAME__MPPARENT = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 1;
+
+	/**
+	 * The feature id for the '<em><b>Mpolygon</b></em>' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_SWIMLANE_FRAME__MPOLYGON = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 2;
+
+	/**
+	 * The feature id for the '<em><b>MnName Format</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_SWIMLANE_FRAME__MNNAME_FORMAT = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 3;
+
+	/**
+	 * The feature id for the '<em><b>MnIs Name Format</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_SWIMLANE_FRAME__MNIS_NAME_FORMAT = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 4;
+
+	/**
+	 * The feature id for the '<em><b>Frameset</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_SWIMLANE_FRAME__FRAMESET = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 5;
+
+	/**
+	 * The feature id for the '<em><b>Mtransform</b></em>' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_SWIMLANE_FRAME__MTRANSFORM = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 6;
+
+	/**
+	 * The feature id for the '<em><b>MbFrameset Modified</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_SWIMLANE_FRAME__MBFRAMESET_MODIFIED = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 7;
+
+	/**
+	 * The feature id for the '<em><b>Compartments</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_SWIMLANE_FRAME__COMPARTMENTS = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 8;
+
+	/**
+	 * The number of structural features of the '<em>CGI Swimlane Frame</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_SWIMLANE_FRAME_FEATURE_COUNT = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 9;
+
+	/**
+	 * The number of operations of the '<em>CGI Swimlane Frame</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_SWIMLANE_FRAME_OPERATION_COUNT = GRAPH_ELEMENTS_TYPE_OPERATION_COUNT + 0;
+
+	/**
+	 * The meta object id for the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGITextImpl <em>CGI Text</em>}' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGITextImpl
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.UMLRpyPackageImpl#getCGIText()
+	 * @generated
+	 */
+	int CGI_TEXT = 47;
+
+	/**
+	 * The feature id for the '<em><b>Mstr</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_TEXT__MSTR = 0;
+
+	/**
+	 * The feature id for the '<em><b>Mstyle</b></em>' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_TEXT__MSTYLE = 1;
+
+	/**
+	 * The feature id for the '<em><b>Mcolor</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_TEXT__MCOLOR = 2;
+
+	/**
+	 * The feature id for the '<em><b>Mposition</b></em>' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_TEXT__MPOSITION = 3;
+
+	/**
+	 * The feature id for the '<em><b>MnIdent</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_TEXT__MNIDENT = 4;
+
+	/**
+	 * The feature id for the '<em><b>MbImplicit Set Rect Points</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_TEXT__MBIMPLICIT_SET_RECT_POINTS = 5;
+
+	/**
+	 * The feature id for the '<em><b>MnOrientation Ctrl Pt</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_TEXT__MNORIENTATION_CTRL_PT = 6;
+
+	/**
+	 * The feature id for the '<em><b>MnVertical Spacing</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_TEXT__MNVERTICAL_SPACING = 7;
+
+	/**
+	 * The feature id for the '<em><b>MnHorizontal Spacing</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_TEXT__MNHORIZONTAL_SPACING = 8;
+
+	/**
+	 * The feature id for the '<em><b>Mtransform</b></em>' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_TEXT__MTRANSFORM = 9;
+
+	/**
+	 * The number of structural features of the '<em>CGI Text</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_TEXT_FEATURE_COUNT = 10;
+
+	/**
+	 * The number of operations of the '<em>CGI Text</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_TEXT_OPERATION_COUNT = 0;
+
+	/**
+	 * The meta object id for the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGITextBoxImpl <em>CGI Text Box</em>}' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGITextBoxImpl
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.UMLRpyPackageImpl#getCGITextBox()
+	 * @generated
+	 */
+	int CGI_TEXT_BOX = 48;
+
+	/**
+	 * The feature id for the '<em><b>Id</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_TEXT_BOX__ID = GRAPH_ELEMENTS_TYPE__ID;
+
+	/**
+	 * The feature id for the '<em><b>Mdraw Behavior</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_TEXT_BOX__MDRAW_BEHAVIOR = GRAPH_ELEMENTS_TYPE__MDRAW_BEHAVIOR;
+
+	/**
+	 * The feature id for the '<em><b>Mtype</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_TEXT_BOX__MTYPE = GRAPH_ELEMENTS_TYPE__MTYPE;
+
+	/**
+	 * The feature id for the '<em><b>Mname</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_TEXT_BOX__MNAME = GRAPH_ELEMENTS_TYPE__MNAME;
+
+	/**
+	 * The feature id for the '<em><b>MbIs Preferences Initialized</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_TEXT_BOX__MBIS_PREFERENCES_INITIALIZED = GRAPH_ELEMENTS_TYPE__MBIS_PREFERENCES_INITIALIZED;
+
+	/**
+	 * The feature id for the '<em><b>Properties</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_TEXT_BOX__PROPERTIES = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 0;
+
+	/**
+	 * The feature id for the '<em><b>MpModel Object</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_TEXT_BOX__MPMODEL_OBJECT = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 1;
+
+	/**
+	 * The feature id for the '<em><b>MpParent</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_TEXT_BOX__MPPARENT = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 2;
+
+	/**
+	 * The feature id for the '<em><b>Mtransform</b></em>' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_TEXT_BOX__MTRANSFORM = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 3;
+
+	/**
+	 * The feature id for the '<em><b>Mpolygon</b></em>' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_TEXT_BOX__MPOLYGON = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 4;
+
+	/**
+	 * The feature id for the '<em><b>MnName Format</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_TEXT_BOX__MNNAME_FORMAT = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 5;
+
+	/**
+	 * The feature id for the '<em><b>MnIs Name Format</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_TEXT_BOX__MNIS_NAME_FORMAT = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 6;
+
+	/**
+	 * The feature id for the '<em><b>Compartments</b></em>' reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_TEXT_BOX__COMPARTMENTS = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 7;
+
+	/**
+	 * The feature id for the '<em><b>Mcs Model Obj Path</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_TEXT_BOX__MCS_MODEL_OBJ_PATH = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 8;
+
+	/**
+	 * The feature id for the '<em><b>Mcs Name</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_TEXT_BOX__MCS_NAME = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 9;
+
+	/**
+	 * The feature id for the '<em><b>MParts Array</b></em>' reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_TEXT_BOX__MPARTS_ARRAY = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 10;
+
+	/**
+	 * The number of structural features of the '<em>CGI Text Box</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_TEXT_BOX_FEATURE_COUNT = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 11;
+
+	/**
+	 * The number of operations of the '<em>CGI Text Box</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_TEXT_BOX_OPERATION_COUNT = GRAPH_ELEMENTS_TYPE_OPERATION_COUNT + 0;
+
+	/**
+	 * The meta object id for the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGITransImpl <em>CGI Trans</em>}' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGITransImpl
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.UMLRpyPackageImpl#getCGITrans()
+	 * @generated
+	 */
+	int CGI_TRANS = 49;
+
+	/**
+	 * The feature id for the '<em><b>Id</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_TRANS__ID = GRAPH_ELEMENTS_TYPE__ID;
+
+	/**
+	 * The feature id for the '<em><b>Mdraw Behavior</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_TRANS__MDRAW_BEHAVIOR = GRAPH_ELEMENTS_TYPE__MDRAW_BEHAVIOR;
+
+	/**
+	 * The feature id for the '<em><b>Mtype</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_TRANS__MTYPE = GRAPH_ELEMENTS_TYPE__MTYPE;
+
+	/**
+	 * The feature id for the '<em><b>Mname</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_TRANS__MNAME = GRAPH_ELEMENTS_TYPE__MNAME;
+
+	/**
+	 * The feature id for the '<em><b>MbIs Preferences Initialized</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_TRANS__MBIS_PREFERENCES_INITIALIZED = GRAPH_ELEMENTS_TYPE__MBIS_PREFERENCES_INITIALIZED;
+
+	/**
+	 * The feature id for the '<em><b>Properties</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_TRANS__PROPERTIES = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 0;
+
+	/**
+	 * The feature id for the '<em><b>MpModel Object</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_TRANS__MPMODEL_OBJECT = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 1;
+
+	/**
+	 * The feature id for the '<em><b>MpParent</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_TRANS__MPPARENT = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 2;
+
+	/**
+	 * The feature id for the '<em><b>MpSource</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_TRANS__MPSOURCE = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 3;
+
+	/**
+	 * The feature id for the '<em><b>Msource Type</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_TRANS__MSOURCE_TYPE = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 4;
+
+	/**
+	 * The feature id for the '<em><b>MpTarget</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_TRANS__MPTARGET = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 5;
+
+	/**
+	 * The feature id for the '<em><b>Mtarget Type</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_TRANS__MTARGET_TYPE = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 6;
+
+	/**
+	 * The feature id for the '<em><b>Mdirection</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_TRANS__MDIRECTION = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 7;
+
+	/**
+	 * The feature id for the '<em><b>Mrpn</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_TRANS__MRPN = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 8;
+
+	/**
+	 * The feature id for the '<em><b>Mangle Point1</b></em>' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_TRANS__MANGLE_POINT1 = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 9;
+
+	/**
+	 * The feature id for the '<em><b>Mangle Point2</b></em>' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_TRANS__MANGLE_POINT2 = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 10;
+
+	/**
+	 * The feature id for the '<em><b>Mline style</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_TRANS__MLINE_STYLE = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 11;
+
+	/**
+	 * The feature id for the '<em><b>MSource Port</b></em>' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_TRANS__MSOURCE_PORT = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 12;
+
+	/**
+	 * The feature id for the '<em><b>MTarget Port</b></em>' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_TRANS__MTARGET_PORT = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 13;
+
+	/**
+	 * The feature id for the '<em><b>MnInheritance Mask</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_TRANS__MNINHERITANCE_MASK = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 14;
+
+	/**
+	 * The feature id for the '<em><b>MbShow Name</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_TRANS__MBSHOW_NAME = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 15;
+
+	/**
+	 * The feature id for the '<em><b>Marrow</b></em>' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_TRANS__MARROW = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 16;
+
+	/**
+	 * The feature id for the '<em><b>My State</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_TRANS__MY_STATE = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 17;
+
+	/**
+	 * The feature id for the '<em><b>MpInherits From</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_TRANS__MPINHERITS_FROM = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 18;
+
+	/**
+	 * The feature id for the '<em><b>Mcolor</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_TRANS__MCOLOR = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 19;
+
+	/**
+	 * The feature id for the '<em><b>Mline Width</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_TRANS__MLINE_WIDTH = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 20;
+
+	/**
+	 * The number of structural features of the '<em>CGI Trans</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_TRANS_FEATURE_COUNT = GRAPH_ELEMENTS_TYPE_FEATURE_COUNT + 21;
+
+	/**
+	 * The number of operations of the '<em>CGI Trans</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CGI_TRANS_OPERATION_COUNT = GRAPH_ELEMENTS_TYPE_OPERATION_COUNT + 0;
+
+	/**
+	 * The meta object id for the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.P_MessageHandlerTypeImpl <em>PMessage Handler Type</em>}' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.P_MessageHandlerTypeImpl
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.UMLRpyPackageImpl#getP_MessageHandlerType()
+	 * @generated
+	 */
+	int PMESSAGE_HANDLER_TYPE = 234;
+
+	/**
+	 * The number of structural features of the '<em>PMessage Handler Type</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int PMESSAGE_HANDLER_TYPE_FEATURE_COUNT = 0;
+
+	/**
+	 * The number of operations of the '<em>PMessage Handler Type</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int PMESSAGE_HANDLER_TYPE_OPERATION_COUNT = 0;
+
+	/**
+	 * The meta object id for the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CollEventImpl <em>Coll Event</em>}' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CollEventImpl
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.UMLRpyPackageImpl#getCollEvent()
+	 * @generated
+	 */
+	int COLL_EVENT = 50;
+
+	/**
+	 * The feature id for the '<em><b>Id</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int COLL_EVENT__ID = PMESSAGE_HANDLER_TYPE_FEATURE_COUNT + 0;
+
+	/**
+	 * The feature id for the '<em><b>First</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int COLL_EVENT__FIRST = PMESSAGE_HANDLER_TYPE_FEATURE_COUNT + 1;
+
+	/**
+	 * The feature id for the '<em><b>Second</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int COLL_EVENT__SECOND = PMESSAGE_HANDLER_TYPE_FEATURE_COUNT + 2;
+
+	/**
+	 * The feature id for the '<em><b>Object Creation</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int COLL_EVENT__OBJECT_CREATION = PMESSAGE_HANDLER_TYPE_FEATURE_COUNT + 3;
+
+	/**
+	 * The feature id for the '<em><b>Uml Dependency ID</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int COLL_EVENT__UML_DEPENDENCY_ID = PMESSAGE_HANDLER_TYPE_FEATURE_COUNT + 4;
+
+	/**
+	 * The number of structural features of the '<em>Coll Event</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int COLL_EVENT_FEATURE_COUNT = PMESSAGE_HANDLER_TYPE_FEATURE_COUNT + 5;
+
+	/**
+	 * The number of operations of the '<em>Coll Event</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int COLL_EVENT_OPERATION_COUNT = PMESSAGE_HANDLER_TYPE_OPERATION_COUNT + 0;
+
+	/**
+	 * The meta object id for the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.ComponentsTypeImpl <em>Components Type</em>}' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.ComponentsTypeImpl
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.UMLRpyPackageImpl#getComponentsType()
+	 * @generated
+	 */
+	int COMPONENTS_TYPE = 52;
+
+	/**
+	 * The number of structural features of the '<em>Components Type</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int COMPONENTS_TYPE_FEATURE_COUNT = 0;
+
+	/**
+	 * The number of operations of the '<em>Components Type</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int COMPONENTS_TYPE_OPERATION_COUNT = 0;
+
+	/**
+	 * The meta object id for the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.ConveyedTypeImpl <em>Conveyed Type</em>}' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.ConveyedTypeImpl
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.UMLRpyPackageImpl#getConveyedType()
+	 * @generated
+	 */
+	int CONVEYED_TYPE = 53;
+
+	/**
+	 * The feature id for the '<em><b>Last ID</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CONVEYED_TYPE__LAST_ID = 0;
+
+	/**
+	 * The number of structural features of the '<em>Conveyed Type</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CONVEYED_TYPE_FEATURE_COUNT = 1;
+
+	/**
+	 * The number of operations of the '<em>Conveyed Type</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CONVEYED_TYPE_OPERATION_COUNT = 0;
+
+	/**
+	 * The meta object id for the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.DeclarativesTypeImpl <em>Declaratives Type</em>}' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.DeclarativesTypeImpl
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.UMLRpyPackageImpl#getDeclarativesType()
+	 * @generated
+	 */
+	int DECLARATIVES_TYPE = 54;
+
+	/**
+	 * The number of structural features of the '<em>Declaratives Type</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int DECLARATIVES_TYPE_FEATURE_COUNT = 0;
+
+	/**
+	 * The number of operations of the '<em>Declaratives Type</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int DECLARATIVES_TYPE_OPERATION_COUNT = 0;
+
+	/**
+	 * The meta object id for the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IModelElementImpl <em>IModel Element</em>}' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IModelElementImpl
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.UMLRpyPackageImpl#getIModelElement()
+	 * @generated
+	 */
+	int IMODEL_ELEMENT = 157;
+
+	/**
+	 * The feature id for the '<em><b>EAnnotations</b></em>' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IMODEL_ELEMENT__EANNOTATIONS = EcorePackage.EMODEL_ELEMENT__EANNOTATIONS;
+
+	/**
+	 * The feature id for the '<em><b>Display Name</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IMODEL_ELEMENT__DISPLAY_NAME = EcorePackage.EMODEL_ELEMENT_FEATURE_COUNT + 0;
+
+	/**
+	 * The number of structural features of the '<em>IModel Element</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IMODEL_ELEMENT_FEATURE_COUNT = EcorePackage.EMODEL_ELEMENT_FEATURE_COUNT + 1;
+
+	/**
+	 * The operation id for the '<em>Get EAnnotation</em>' operation.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IMODEL_ELEMENT___GET_EANNOTATION__STRING = EcorePackage.EMODEL_ELEMENT___GET_EANNOTATION__STRING;
+
+	/**
+	 * The number of operations of the '<em>IModel Element</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IMODEL_ELEMENT_OPERATION_COUNT = EcorePackage.EMODEL_ELEMENT_OPERATION_COUNT + 0;
+
+	/**
+	 * The meta object id for the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.DefaultSubsystemTypeImpl <em>Default Subsystem Type</em>}' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.DefaultSubsystemTypeImpl
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.UMLRpyPackageImpl#getDefaultSubsystemType()
+	 * @generated
+	 */
+	int DEFAULT_SUBSYSTEM_TYPE = 55;
+
+	/**
+	 * The feature id for the '<em><b>EAnnotations</b></em>' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int DEFAULT_SUBSYSTEM_TYPE__EANNOTATIONS = IMODEL_ELEMENT__EANNOTATIONS;
+
+	/**
+	 * The feature id for the '<em><b>Display Name</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int DEFAULT_SUBSYSTEM_TYPE__DISPLAY_NAME = IMODEL_ELEMENT__DISPLAY_NAME;
+
+	/**
+	 * The number of structural features of the '<em>Default Subsystem Type</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int DEFAULT_SUBSYSTEM_TYPE_FEATURE_COUNT = IMODEL_ELEMENT_FEATURE_COUNT + 0;
+
+	/**
+	 * The operation id for the '<em>Get EAnnotation</em>' operation.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int DEFAULT_SUBSYSTEM_TYPE___GET_EANNOTATION__STRING = IMODEL_ELEMENT___GET_EANNOTATION__STRING;
+
+	/**
+	 * The number of operations of the '<em>Default Subsystem Type</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int DEFAULT_SUBSYSTEM_TYPE_OPERATION_COUNT = IMODEL_ELEMENT_OPERATION_COUNT + 0;
+
+	/**
+	 * The meta object id for the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.DefaultTransTypeImpl <em>Default Trans Type</em>}' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.DefaultTransTypeImpl
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.UMLRpyPackageImpl#getDefaultTransType()
+	 * @generated
+	 */
+	int DEFAULT_TRANS_TYPE = 56;
+
+	/**
+	 * The number of structural features of the '<em>Default Trans Type</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int DEFAULT_TRANS_TYPE_FEATURE_COUNT = 0;
+
+	/**
+	 * The number of operations of the '<em>Default Trans Type</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int DEFAULT_TRANS_TYPE_OPERATION_COUNT = 0;
+
+	/**
+	 * The meta object id for the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.ElementsTypeImpl <em>Elements Type</em>}' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.ElementsTypeImpl
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.UMLRpyPackageImpl#getElementsType()
+	 * @generated
+	 */
+	int ELEMENTS_TYPE = 59;
+
+	/**
+	 * The number of structural features of the '<em>Elements Type</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ELEMENTS_TYPE_FEATURE_COUNT = 0;
+
+	/**
+	 * The number of operations of the '<em>Elements Type</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ELEMENTS_TYPE_OPERATION_COUNT = 0;
+
+	/**
+	 * The meta object id for the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.DependsOnTypeImpl <em>Depends On Type</em>}' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.DependsOnTypeImpl
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.UMLRpyPackageImpl#getDependsOnType()
+	 * @generated
+	 */
+	int DEPENDS_ON_TYPE = 57;
+
+	/**
+	 * The number of structural features of the '<em>Depends On Type</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int DEPENDS_ON_TYPE_FEATURE_COUNT = ELEMENTS_TYPE_FEATURE_COUNT + 0;
+
+	/**
+	 * The number of operations of the '<em>Depends On Type</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int DEPENDS_ON_TYPE_OPERATION_COUNT = ELEMENTS_TYPE_OPERATION_COUNT + 0;
+
+	/**
+	 * The meta object id for the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.DescriptionTypeImpl <em>Description Type</em>}' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.DescriptionTypeImpl
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.UMLRpyPackageImpl#getDescriptionType()
+	 * @generated
+	 */
+	int DESCRIPTION_TYPE = 58;
+
+	/**
+	 * The number of structural features of the '<em>Description Type</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int DESCRIPTION_TYPE_FEATURE_COUNT = 0;
+
+	/**
+	 * The number of operations of the '<em>Description Type</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int DESCRIPTION_TYPE_OPERATION_COUNT = 0;
+
+	/**
+	 * The meta object id for the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.EmbededFilesTypeImpl <em>Embeded Files Type</em>}' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.EmbededFilesTypeImpl
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.UMLRpyPackageImpl#getEmbededFilesType()
+	 * @generated
+	 */
+	int EMBEDED_FILES_TYPE = 60;
+
+	/**
+	 * The number of structural features of the '<em>Embeded Files Type</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int EMBEDED_FILES_TYPE_FEATURE_COUNT = 0;
+
+	/**
+	 * The number of operations of the '<em>Embeded Files Type</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int EMBEDED_FILES_TYPE_OPERATION_COUNT = 0;
+
+	/**
+	 * The meta object id for the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.End1_TypeImpl <em>End1 Type</em>}' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.End1_TypeImpl
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.UMLRpyPackageImpl#getEnd1_Type()
+	 * @generated
+	 */
+	int END1_TYPE = 61;
+
+	/**
+	 * The number of structural features of the '<em>End1 Type</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int END1_TYPE_FEATURE_COUNT = 0;
+
+	/**
+	 * The number of operations of the '<em>End1 Type</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int END1_TYPE_OPERATION_COUNT = 0;
+
+	/**
+	 * The meta object id for the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.End2_TypeImpl <em>End2 Type</em>}' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.End2_TypeImpl
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.UMLRpyPackageImpl#getEnd2_Type()
+	 * @generated
+	 */
+	int END2_TYPE = 62;
+
+	/**
+	 * The feature id for the '<em><b>Multiplicity</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int END2_TYPE__MULTIPLICITY = END1_TYPE_FEATURE_COUNT + 0;
+
+	/**
+	 * The number of structural features of the '<em>End2 Type</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int END2_TYPE_FEATURE_COUNT = END1_TYPE_FEATURE_COUNT + 1;
+
+	/**
+	 * The number of operations of the '<em>End2 Type</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int END2_TYPE_OPERATION_COUNT = END1_TYPE_OPERATION_COUNT + 0;
+
+	/**
+	 * The meta object id for the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.FilesTypeImpl <em>Files Type</em>}' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.FilesTypeImpl
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.UMLRpyPackageImpl#getFilesType()
+	 * @generated
+	 */
+	int FILES_TYPE = 63;
+
+	/**
+	 * The feature id for the '<em><b>Modified Time Weak</b></em>' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int FILES_TYPE__MODIFIED_TIME_WEAK = 0;
+
+	/**
+	 * The feature id for the '<em><b>Id</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int FILES_TYPE__ID = 1;
+
+	/**
+	 * The feature id for the '<em><b>Uml Dependency ID</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int FILES_TYPE__UML_DEPENDENCY_ID = 2;
+
+	/**
+	 * The feature id for the '<em><b>Last ID</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int FILES_TYPE__LAST_ID = 3;
+
+	/**
+	 * The feature id for the '<em><b>My State</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int FILES_TYPE__MY_STATE = 4;
+
+	/**
+	 * The feature id for the '<em><b>Mpath</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int FILES_TYPE__MPATH = 5;
+
+	/**
+	 * The feature id for the '<em><b>Object Creation</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int FILES_TYPE__OBJECT_CREATION = 6;
+
+	/**
+	 * The feature id for the '<em><b>Name</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int FILES_TYPE__NAME = 7;
+
+	/**
+	 * The number of structural features of the '<em>Files Type</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int FILES_TYPE_FEATURE_COUNT = 8;
+
+	/**
+	 * The number of operations of the '<em>Files Type</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int FILES_TYPE_OPERATION_COUNT = 0;
+
+	/**
+	 * The meta object id for the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.FromLinkTypeImpl <em>From Link Type</em>}' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.FromLinkTypeImpl
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.UMLRpyPackageImpl#getFromLinkType()
+	 * @generated
+	 */
+	int FROM_LINK_TYPE = 64;
+
+	/**
+	 * The number of structural features of the '<em>From Link Type</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int FROM_LINK_TYPE_FEATURE_COUNT = 0;
+
+	/**
+	 * The number of operations of the '<em>From Link Type</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int FROM_LINK_TYPE_OPERATION_COUNT = 0;
+
+	/**
+	 * The meta object id for the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.HyperLinksTypeImpl <em>Hyper Links Type</em>}' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.HyperLinksTypeImpl
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.UMLRpyPackageImpl#getHyperLinksType()
+	 * @generated
+	 */
+	int HYPER_LINKS_TYPE = 67;
+
+	/**
+	 * The feature id for the '<em><b>EAnnotations</b></em>' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int HYPER_LINKS_TYPE__EANNOTATIONS = IMODEL_ELEMENT__EANNOTATIONS;
+
+	/**
+	 * The feature id for the '<em><b>Display Name</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int HYPER_LINKS_TYPE__DISPLAY_NAME = IMODEL_ELEMENT__DISPLAY_NAME;
+
+	/**
+	 * The number of structural features of the '<em>Hyper Links Type</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int HYPER_LINKS_TYPE_FEATURE_COUNT = IMODEL_ELEMENT_FEATURE_COUNT + 0;
+
+	/**
+	 * The operation id for the '<em>Get EAnnotation</em>' operation.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int HYPER_LINKS_TYPE___GET_EANNOTATION__STRING = IMODEL_ELEMENT___GET_EANNOTATION__STRING;
+
+	/**
+	 * The number of operations of the '<em>Hyper Links Type</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int HYPER_LINKS_TYPE_OPERATION_COUNT = IMODEL_ELEMENT_OPERATION_COUNT + 0;
+
+	/**
+	 * The meta object id for the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IStateVertexImpl <em>IState Vertex</em>}' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IStateVertexImpl
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.UMLRpyPackageImpl#getIStateVertex()
+	 * @generated
+	 */
+	int ISTATE_VERTEX = 188;
+
+	/**
+	 * The feature id for the '<em><b>EAnnotations</b></em>' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ISTATE_VERTEX__EANNOTATIONS = IMODEL_ELEMENT__EANNOTATIONS;
+
+	/**
+	 * The feature id for the '<em><b>Display Name</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ISTATE_VERTEX__DISPLAY_NAME = IMODEL_ELEMENT__DISPLAY_NAME;
+
+	/**
+	 * The feature id for the '<em><b>Modified Time Weak</b></em>' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ISTATE_VERTEX__MODIFIED_TIME_WEAK = IMODEL_ELEMENT_FEATURE_COUNT + 0;
+
+	/**
+	 * The feature id for the '<em><b>Id</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ISTATE_VERTEX__ID = IMODEL_ELEMENT_FEATURE_COUNT + 1;
+
+	/**
+	 * The feature id for the '<em><b>Description</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ISTATE_VERTEX__DESCRIPTION = IMODEL_ELEMENT_FEATURE_COUNT + 2;
+
+	/**
+	 * The feature id for the '<em><b>Uml Dependency ID</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ISTATE_VERTEX__UML_DEPENDENCY_ID = IMODEL_ELEMENT_FEATURE_COUNT + 3;
+
+	/**
+	 * The feature id for the '<em><b>My State</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ISTATE_VERTEX__MY_STATE = IMODEL_ELEMENT_FEATURE_COUNT + 4;
+
+	/**
+	 * The feature id for the '<em><b>Stereotypes</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ISTATE_VERTEX__STEREOTYPES = IMODEL_ELEMENT_FEATURE_COUNT + 5;
+
+	/**
+	 * The feature id for the '<em><b>Object Creation</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ISTATE_VERTEX__OBJECT_CREATION = IMODEL_ELEMENT_FEATURE_COUNT + 6;
+
+	/**
+	 * The feature id for the '<em><b>Name</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ISTATE_VERTEX__NAME = IMODEL_ELEMENT_FEATURE_COUNT + 7;
+
+	/**
+	 * The number of structural features of the '<em>IState Vertex</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ISTATE_VERTEX_FEATURE_COUNT = IMODEL_ELEMENT_FEATURE_COUNT + 8;
+
+	/**
+	 * The operation id for the '<em>Get EAnnotation</em>' operation.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ISTATE_VERTEX___GET_EANNOTATION__STRING = IMODEL_ELEMENT___GET_EANNOTATION__STRING;
+
+	/**
+	 * The number of operations of the '<em>IState Vertex</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ISTATE_VERTEX_OPERATION_COUNT = IMODEL_ELEMENT_OPERATION_COUNT + 0;
+
+	/**
+	 * The meta object id for the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IStateImpl <em>IState</em>}' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IStateImpl
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.UMLRpyPackageImpl#getIState()
+	 * @generated
+	 */
+	int ISTATE = 185;
+
+	/**
+	 * The feature id for the '<em><b>EAnnotations</b></em>' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ISTATE__EANNOTATIONS = ISTATE_VERTEX__EANNOTATIONS;
+
+	/**
+	 * The feature id for the '<em><b>Display Name</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ISTATE__DISPLAY_NAME = ISTATE_VERTEX__DISPLAY_NAME;
+
+	/**
+	 * The feature id for the '<em><b>Modified Time Weak</b></em>' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ISTATE__MODIFIED_TIME_WEAK = ISTATE_VERTEX__MODIFIED_TIME_WEAK;
+
+	/**
+	 * The feature id for the '<em><b>Id</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ISTATE__ID = ISTATE_VERTEX__ID;
+
+	/**
+	 * The feature id for the '<em><b>Description</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ISTATE__DESCRIPTION = ISTATE_VERTEX__DESCRIPTION;
+
+	/**
+	 * The feature id for the '<em><b>Uml Dependency ID</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ISTATE__UML_DEPENDENCY_ID = ISTATE_VERTEX__UML_DEPENDENCY_ID;
+
+	/**
+	 * The feature id for the '<em><b>My State</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ISTATE__MY_STATE = ISTATE_VERTEX__MY_STATE;
+
+	/**
+	 * The feature id for the '<em><b>Stereotypes</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ISTATE__STEREOTYPES = ISTATE_VERTEX__STEREOTYPES;
+
+	/**
+	 * The feature id for the '<em><b>Object Creation</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ISTATE__OBJECT_CREATION = ISTATE_VERTEX__OBJECT_CREATION;
+
+	/**
+	 * The feature id for the '<em><b>Name</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ISTATE__NAME = ISTATE_VERTEX__NAME;
+
+	/**
+	 * The feature id for the '<em><b>Parent</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ISTATE__PARENT = ISTATE_VERTEX_FEATURE_COUNT + 0;
+
+	/**
+	 * The feature id for the '<em><b>State Type</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ISTATE__STATE_TYPE = ISTATE_VERTEX_FEATURE_COUNT + 1;
+
+	/**
+	 * The feature id for the '<em><b>Default Trans</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ISTATE__DEFAULT_TRANS = ISTATE_VERTEX_FEATURE_COUNT + 2;
+
+	/**
+	 * The feature id for the '<em><b>Entry Action</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ISTATE__ENTRY_ACTION = ISTATE_VERTEX_FEATURE_COUNT + 3;
+
+	/**
+	 * The feature id for the '<em><b>Inherits From Handle</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ISTATE__INHERITS_FROM_HANDLE = ISTATE_VERTEX_FEATURE_COUNT + 4;
+
+	/**
+	 * The feature id for the '<em><b>Exit Action</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ISTATE__EXIT_ACTION = ISTATE_VERTEX_FEATURE_COUNT + 5;
+
+	/**
+	 * The feature id for the '<em><b>Nested State Chart</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ISTATE__NESTED_STATE_CHART = ISTATE_VERTEX_FEATURE_COUNT + 6;
+
+	/**
+	 * The feature id for the '<em><b>Requiremen Tracability Handle</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ISTATE__REQUIREMEN_TRACABILITY_HANDLE = ISTATE_VERTEX_FEATURE_COUNT + 7;
+
+	/**
+	 * The feature id for the '<em><b>Annotations</b></em>' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ISTATE__ANNOTATIONS = ISTATE_VERTEX_FEATURE_COUNT + 8;
+
+	/**
+	 * The feature id for the '<em><b>Dependencies</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ISTATE__DEPENDENCIES = ISTATE_VERTEX_FEATURE_COUNT + 9;
+
+	/**
+	 * The feature id for the '<em><b>The Main Diagram</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ISTATE__THE_MAIN_DIAGRAM = ISTATE_VERTEX_FEATURE_COUNT + 10;
+
+	/**
+	 * The feature id for the '<em><b>Swimlane</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ISTATE__SWIMLANE = ISTATE_VERTEX_FEATURE_COUNT + 11;
+
+	/**
+	 * The feature id for the '<em><b>Code Update CG Time</b></em>' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ISTATE__CODE_UPDATE_CG_TIME = ISTATE_VERTEX_FEATURE_COUNT + 12;
+
+	/**
+	 * The number of structural features of the '<em>IState</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ISTATE_FEATURE_COUNT = ISTATE_VERTEX_FEATURE_COUNT + 13;
+
+	/**
+	 * The operation id for the '<em>Get EAnnotation</em>' operation.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ISTATE___GET_EANNOTATION__STRING = ISTATE_VERTEX___GET_EANNOTATION__STRING;
+
+	/**
+	 * The number of operations of the '<em>IState</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ISTATE_OPERATION_COUNT = ISTATE_VERTEX_OPERATION_COUNT + 0;
+
+	/**
+	 * The meta object id for the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IAcceptEventActionImpl <em>IAccept Event Action</em>}' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IAcceptEventActionImpl
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.UMLRpyPackageImpl#getIAcceptEventAction()
+	 * @generated
+	 */
+	int IACCEPT_EVENT_ACTION = 68;
+
+	/**
+	 * The feature id for the '<em><b>EAnnotations</b></em>' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IACCEPT_EVENT_ACTION__EANNOTATIONS = ISTATE__EANNOTATIONS;
+
+	/**
+	 * The feature id for the '<em><b>Display Name</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IACCEPT_EVENT_ACTION__DISPLAY_NAME = ISTATE__DISPLAY_NAME;
+
+	/**
+	 * The feature id for the '<em><b>Modified Time Weak</b></em>' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IACCEPT_EVENT_ACTION__MODIFIED_TIME_WEAK = ISTATE__MODIFIED_TIME_WEAK;
+
+	/**
+	 * The feature id for the '<em><b>Id</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IACCEPT_EVENT_ACTION__ID = ISTATE__ID;
+
+	/**
+	 * The feature id for the '<em><b>Description</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IACCEPT_EVENT_ACTION__DESCRIPTION = ISTATE__DESCRIPTION;
+
+	/**
+	 * The feature id for the '<em><b>Uml Dependency ID</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IACCEPT_EVENT_ACTION__UML_DEPENDENCY_ID = ISTATE__UML_DEPENDENCY_ID;
+
+	/**
+	 * The feature id for the '<em><b>My State</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IACCEPT_EVENT_ACTION__MY_STATE = ISTATE__MY_STATE;
+
+	/**
+	 * The feature id for the '<em><b>Stereotypes</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IACCEPT_EVENT_ACTION__STEREOTYPES = ISTATE__STEREOTYPES;
+
+	/**
+	 * The feature id for the '<em><b>Object Creation</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IACCEPT_EVENT_ACTION__OBJECT_CREATION = ISTATE__OBJECT_CREATION;
+
+	/**
+	 * The feature id for the '<em><b>Name</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IACCEPT_EVENT_ACTION__NAME = ISTATE__NAME;
+
+	/**
+	 * The feature id for the '<em><b>Parent</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IACCEPT_EVENT_ACTION__PARENT = ISTATE__PARENT;
+
+	/**
+	 * The feature id for the '<em><b>State Type</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IACCEPT_EVENT_ACTION__STATE_TYPE = ISTATE__STATE_TYPE;
+
+	/**
+	 * The feature id for the '<em><b>Default Trans</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IACCEPT_EVENT_ACTION__DEFAULT_TRANS = ISTATE__DEFAULT_TRANS;
+
+	/**
+	 * The feature id for the '<em><b>Entry Action</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IACCEPT_EVENT_ACTION__ENTRY_ACTION = ISTATE__ENTRY_ACTION;
+
+	/**
+	 * The feature id for the '<em><b>Inherits From Handle</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IACCEPT_EVENT_ACTION__INHERITS_FROM_HANDLE = ISTATE__INHERITS_FROM_HANDLE;
+
+	/**
+	 * The feature id for the '<em><b>Exit Action</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IACCEPT_EVENT_ACTION__EXIT_ACTION = ISTATE__EXIT_ACTION;
+
+	/**
+	 * The feature id for the '<em><b>Nested State Chart</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IACCEPT_EVENT_ACTION__NESTED_STATE_CHART = ISTATE__NESTED_STATE_CHART;
+
+	/**
+	 * The feature id for the '<em><b>Requiremen Tracability Handle</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IACCEPT_EVENT_ACTION__REQUIREMEN_TRACABILITY_HANDLE = ISTATE__REQUIREMEN_TRACABILITY_HANDLE;
+
+	/**
+	 * The feature id for the '<em><b>Annotations</b></em>' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IACCEPT_EVENT_ACTION__ANNOTATIONS = ISTATE__ANNOTATIONS;
+
+	/**
+	 * The feature id for the '<em><b>Dependencies</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IACCEPT_EVENT_ACTION__DEPENDENCIES = ISTATE__DEPENDENCIES;
+
+	/**
+	 * The feature id for the '<em><b>The Main Diagram</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IACCEPT_EVENT_ACTION__THE_MAIN_DIAGRAM = ISTATE__THE_MAIN_DIAGRAM;
+
+	/**
+	 * The feature id for the '<em><b>Swimlane</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IACCEPT_EVENT_ACTION__SWIMLANE = ISTATE__SWIMLANE;
+
+	/**
+	 * The feature id for the '<em><b>Code Update CG Time</b></em>' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IACCEPT_EVENT_ACTION__CODE_UPDATE_CG_TIME = ISTATE__CODE_UPDATE_CG_TIME;
+
+	/**
+	 * The feature id for the '<em><b>Event</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IACCEPT_EVENT_ACTION__EVENT = ISTATE_FEATURE_COUNT + 0;
+
+	/**
+	 * The number of structural features of the '<em>IAccept Event Action</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IACCEPT_EVENT_ACTION_FEATURE_COUNT = ISTATE_FEATURE_COUNT + 1;
+
+	/**
+	 * The operation id for the '<em>Get EAnnotation</em>' operation.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IACCEPT_EVENT_ACTION___GET_EANNOTATION__STRING = ISTATE___GET_EANNOTATION__STRING;
+
+	/**
+	 * The number of operations of the '<em>IAccept Event Action</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IACCEPT_EVENT_ACTION_OPERATION_COUNT = ISTATE_OPERATION_COUNT + 0;
+
+	/**
+	 * The meta object id for the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IAcceptTimeEventImpl <em>IAccept Time Event</em>}' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IAcceptTimeEventImpl
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.UMLRpyPackageImpl#getIAcceptTimeEvent()
+	 * @generated
+	 */
+	int IACCEPT_TIME_EVENT = 69;
+
+	/**
+	 * The feature id for the '<em><b>EAnnotations</b></em>' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IACCEPT_TIME_EVENT__EANNOTATIONS = ISTATE__EANNOTATIONS;
+
+	/**
+	 * The feature id for the '<em><b>Display Name</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IACCEPT_TIME_EVENT__DISPLAY_NAME = ISTATE__DISPLAY_NAME;
+
+	/**
+	 * The feature id for the '<em><b>Modified Time Weak</b></em>' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IACCEPT_TIME_EVENT__MODIFIED_TIME_WEAK = ISTATE__MODIFIED_TIME_WEAK;
+
+	/**
+	 * The feature id for the '<em><b>Id</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IACCEPT_TIME_EVENT__ID = ISTATE__ID;
+
+	/**
+	 * The feature id for the '<em><b>Description</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IACCEPT_TIME_EVENT__DESCRIPTION = ISTATE__DESCRIPTION;
+
+	/**
+	 * The feature id for the '<em><b>Uml Dependency ID</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IACCEPT_TIME_EVENT__UML_DEPENDENCY_ID = ISTATE__UML_DEPENDENCY_ID;
+
+	/**
+	 * The feature id for the '<em><b>My State</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IACCEPT_TIME_EVENT__MY_STATE = ISTATE__MY_STATE;
+
+	/**
+	 * The feature id for the '<em><b>Stereotypes</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IACCEPT_TIME_EVENT__STEREOTYPES = ISTATE__STEREOTYPES;
+
+	/**
+	 * The feature id for the '<em><b>Object Creation</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IACCEPT_TIME_EVENT__OBJECT_CREATION = ISTATE__OBJECT_CREATION;
+
+	/**
+	 * The feature id for the '<em><b>Name</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IACCEPT_TIME_EVENT__NAME = ISTATE__NAME;
+
+	/**
+	 * The feature id for the '<em><b>Parent</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IACCEPT_TIME_EVENT__PARENT = ISTATE__PARENT;
+
+	/**
+	 * The feature id for the '<em><b>State Type</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IACCEPT_TIME_EVENT__STATE_TYPE = ISTATE__STATE_TYPE;
+
+	/**
+	 * The feature id for the '<em><b>Default Trans</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IACCEPT_TIME_EVENT__DEFAULT_TRANS = ISTATE__DEFAULT_TRANS;
+
+	/**
+	 * The feature id for the '<em><b>Entry Action</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IACCEPT_TIME_EVENT__ENTRY_ACTION = ISTATE__ENTRY_ACTION;
+
+	/**
+	 * The feature id for the '<em><b>Inherits From Handle</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IACCEPT_TIME_EVENT__INHERITS_FROM_HANDLE = ISTATE__INHERITS_FROM_HANDLE;
+
+	/**
+	 * The feature id for the '<em><b>Exit Action</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IACCEPT_TIME_EVENT__EXIT_ACTION = ISTATE__EXIT_ACTION;
+
+	/**
+	 * The feature id for the '<em><b>Nested State Chart</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IACCEPT_TIME_EVENT__NESTED_STATE_CHART = ISTATE__NESTED_STATE_CHART;
+
+	/**
+	 * The feature id for the '<em><b>Requiremen Tracability Handle</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IACCEPT_TIME_EVENT__REQUIREMEN_TRACABILITY_HANDLE = ISTATE__REQUIREMEN_TRACABILITY_HANDLE;
+
+	/**
+	 * The feature id for the '<em><b>Annotations</b></em>' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IACCEPT_TIME_EVENT__ANNOTATIONS = ISTATE__ANNOTATIONS;
+
+	/**
+	 * The feature id for the '<em><b>Dependencies</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IACCEPT_TIME_EVENT__DEPENDENCIES = ISTATE__DEPENDENCIES;
+
+	/**
+	 * The feature id for the '<em><b>The Main Diagram</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IACCEPT_TIME_EVENT__THE_MAIN_DIAGRAM = ISTATE__THE_MAIN_DIAGRAM;
+
+	/**
+	 * The feature id for the '<em><b>Swimlane</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IACCEPT_TIME_EVENT__SWIMLANE = ISTATE__SWIMLANE;
+
+	/**
+	 * The feature id for the '<em><b>Code Update CG Time</b></em>' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IACCEPT_TIME_EVENT__CODE_UPDATE_CG_TIME = ISTATE__CODE_UPDATE_CG_TIME;
+
+	/**
+	 * The number of structural features of the '<em>IAccept Time Event</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IACCEPT_TIME_EVENT_FEATURE_COUNT = ISTATE_FEATURE_COUNT + 0;
+
+	/**
+	 * The operation id for the '<em>Get EAnnotation</em>' operation.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IACCEPT_TIME_EVENT___GET_EANNOTATION__STRING = ISTATE___GET_EANNOTATION__STRING;
+
+	/**
+	 * The number of operations of the '<em>IAccept Time Event</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IACCEPT_TIME_EVENT_OPERATION_COUNT = ISTATE_OPERATION_COUNT + 0;
+
+	/**
+	 * The meta object id for the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IActionImpl <em>IAction</em>}' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IActionImpl
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.UMLRpyPackageImpl#getIAction()
+	 * @generated
+	 */
+	int IACTION = 70;
+
+	/**
+	 * The feature id for the '<em><b>EAnnotations</b></em>' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IACTION__EANNOTATIONS = IMODEL_ELEMENT__EANNOTATIONS;
+
+	/**
+	 * The feature id for the '<em><b>Display Name</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IACTION__DISPLAY_NAME = IMODEL_ELEMENT__DISPLAY_NAME;
+
+	/**
+	 * The feature id for the '<em><b>Id</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IACTION__ID = IMODEL_ELEMENT_FEATURE_COUNT + 0;
+
+	/**
+	 * The feature id for the '<em><b>My State</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IACTION__MY_STATE = IMODEL_ELEMENT_FEATURE_COUNT + 1;
+
+	/**
+	 * The feature id for the '<em><b>Body</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IACTION__BODY = IMODEL_ELEMENT_FEATURE_COUNT + 2;
+
+	/**
+	 * The feature id for the '<em><b>Modified Time Weak</b></em>' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IACTION__MODIFIED_TIME_WEAK = IMODEL_ELEMENT_FEATURE_COUNT + 3;
+
+	/**
+	 * The feature id for the '<em><b>Object Creation</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IACTION__OBJECT_CREATION = IMODEL_ELEMENT_FEATURE_COUNT + 4;
+
+	/**
+	 * The feature id for the '<em><b>Uml Dependency ID</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IACTION__UML_DEPENDENCY_ID = IMODEL_ELEMENT_FEATURE_COUNT + 5;
+
+	/**
+	 * The number of structural features of the '<em>IAction</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IACTION_FEATURE_COUNT = IMODEL_ELEMENT_FEATURE_COUNT + 6;
+
+	/**
+	 * The operation id for the '<em>Get EAnnotation</em>' operation.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IACTION___GET_EANNOTATION__STRING = IMODEL_ELEMENT___GET_EANNOTATION__STRING;
+
+	/**
+	 * The number of operations of the '<em>IAction</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IACTION_OPERATION_COUNT = IMODEL_ELEMENT_OPERATION_COUNT + 0;
+
+	/**
+	 * The meta object id for the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IActivityDiagramImpl <em>IActivity Diagram</em>}' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IActivityDiagramImpl
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.UMLRpyPackageImpl#getIActivityDiagram()
+	 * @generated
+	 */
+	int IACTIVITY_DIAGRAM = 71;
+
+	/**
+	 * The feature id for the '<em><b>Graphic Chart</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IACTIVITY_DIAGRAM__GRAPHIC_CHART = DEPENDS_ON_TYPE_FEATURE_COUNT + 0;
+
+	/**
+	 * The feature id for the '<em><b>Code Update CG Time</b></em>' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IACTIVITY_DIAGRAM__CODE_UPDATE_CG_TIME = DEPENDS_ON_TYPE_FEATURE_COUNT + 1;
+
+	/**
+	 * The number of structural features of the '<em>IActivity Diagram</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IACTIVITY_DIAGRAM_FEATURE_COUNT = DEPENDS_ON_TYPE_FEATURE_COUNT + 2;
+
+	/**
+	 * The number of operations of the '<em>IActivity Diagram</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IACTIVITY_DIAGRAM_OPERATION_COUNT = DEPENDS_ON_TYPE_OPERATION_COUNT + 0;
+
+	/**
+	 * The meta object id for the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.ItsStateChartTypeImpl <em>Its State Chart Type</em>}' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.ItsStateChartTypeImpl
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.UMLRpyPackageImpl#getItsStateChartType()
+	 * @generated
+	 */
+	int ITS_STATE_CHART_TYPE = 219;
+
+	/**
+	 * The number of structural features of the '<em>Its State Chart Type</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ITS_STATE_CHART_TYPE_FEATURE_COUNT = 0;
+
+	/**
+	 * The number of operations of the '<em>Its State Chart Type</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ITS_STATE_CHART_TYPE_OPERATION_COUNT = 0;
+
+	/**
+	 * The meta object id for the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.NestedStateChartTypeImpl <em>Nested State Chart Type</em>}' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.NestedStateChartTypeImpl
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.UMLRpyPackageImpl#getNestedStateChartType()
+	 * @generated
+	 */
+	int NESTED_STATE_CHART_TYPE = 230;
+
+	/**
+	 * The feature id for the '<em><b>Def Number</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int NESTED_STATE_CHART_TYPE__DEF_NUMBER = ITS_STATE_CHART_TYPE_FEATURE_COUNT + 0;
+
+	/**
+	 * The feature id for the '<em><b>Graphic Chart</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int NESTED_STATE_CHART_TYPE__GRAPHIC_CHART = ITS_STATE_CHART_TYPE_FEATURE_COUNT + 1;
+
+	/**
+	 * The feature id for the '<em><b>Last Modified Time</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int NESTED_STATE_CHART_TYPE__LAST_MODIFIED_TIME = ITS_STATE_CHART_TYPE_FEATURE_COUNT + 2;
+
+	/**
+	 * The feature id for the '<em><b>Transitions</b></em>' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int NESTED_STATE_CHART_TYPE__TRANSITIONS = ITS_STATE_CHART_TYPE_FEATURE_COUNT + 3;
+
+	/**
+	 * The feature id for the '<em><b>Connectors</b></em>' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int NESTED_STATE_CHART_TYPE__CONNECTORS = ITS_STATE_CHART_TYPE_FEATURE_COUNT + 4;
+
+	/**
+	 * The feature id for the '<em><b>Version</b></em>' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int NESTED_STATE_CHART_TYPE__VERSION = ITS_STATE_CHART_TYPE_FEATURE_COUNT + 5;
+
+	/**
+	 * The number of structural features of the '<em>Nested State Chart Type</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int NESTED_STATE_CHART_TYPE_FEATURE_COUNT = ITS_STATE_CHART_TYPE_FEATURE_COUNT + 6;
+
+	/**
+	 * The number of operations of the '<em>Nested State Chart Type</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int NESTED_STATE_CHART_TYPE_OPERATION_COUNT = ITS_STATE_CHART_TYPE_OPERATION_COUNT + 0;
+
+	/**
+	 * The meta object id for the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IActivityGraphImpl <em>IActivity Graph</em>}' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IActivityGraphImpl
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.UMLRpyPackageImpl#getIActivityGraph()
+	 * @generated
+	 */
+	int IACTIVITY_GRAPH = 72;
+
+	/**
+	 * The feature id for the '<em><b>Def Number</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IACTIVITY_GRAPH__DEF_NUMBER = NESTED_STATE_CHART_TYPE__DEF_NUMBER;
+
+	/**
+	 * The feature id for the '<em><b>Graphic Chart</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IACTIVITY_GRAPH__GRAPHIC_CHART = NESTED_STATE_CHART_TYPE__GRAPHIC_CHART;
+
+	/**
+	 * The feature id for the '<em><b>Last Modified Time</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IACTIVITY_GRAPH__LAST_MODIFIED_TIME = NESTED_STATE_CHART_TYPE__LAST_MODIFIED_TIME;
+
+	/**
+	 * The feature id for the '<em><b>Transitions</b></em>' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IACTIVITY_GRAPH__TRANSITIONS = NESTED_STATE_CHART_TYPE__TRANSITIONS;
+
+	/**
+	 * The feature id for the '<em><b>Connectors</b></em>' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IACTIVITY_GRAPH__CONNECTORS = NESTED_STATE_CHART_TYPE__CONNECTORS;
+
+	/**
+	 * The feature id for the '<em><b>Version</b></em>' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IACTIVITY_GRAPH__VERSION = NESTED_STATE_CHART_TYPE__VERSION;
+
+	/**
+	 * The feature id for the '<em><b>Modified Time Weak</b></em>' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IACTIVITY_GRAPH__MODIFIED_TIME_WEAK = NESTED_STATE_CHART_TYPE_FEATURE_COUNT + 0;
+
+	/**
+	 * The feature id for the '<em><b>Id</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IACTIVITY_GRAPH__ID = NESTED_STATE_CHART_TYPE_FEATURE_COUNT + 1;
+
+	/**
+	 * The feature id for the '<em><b>My State</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IACTIVITY_GRAPH__MY_STATE = NESTED_STATE_CHART_TYPE_FEATURE_COUNT + 2;
+
+	/**
+	 * The feature id for the '<em><b>Name</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IACTIVITY_GRAPH__NAME = NESTED_STATE_CHART_TYPE_FEATURE_COUNT + 3;
+
+	/**
+	 * The feature id for the '<em><b>EAnnotations</b></em>' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IACTIVITY_GRAPH__EANNOTATIONS = NESTED_STATE_CHART_TYPE_FEATURE_COUNT + 4;
+
+	/**
+	 * The feature id for the '<em><b>Display Name</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IACTIVITY_GRAPH__DISPLAY_NAME = NESTED_STATE_CHART_TYPE_FEATURE_COUNT + 5;
+
+	/**
+	 * The feature id for the '<em><b>Last ID</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IACTIVITY_GRAPH__LAST_ID = NESTED_STATE_CHART_TYPE_FEATURE_COUNT + 6;
+
+	/**
+	 * The feature id for the '<em><b>Weak CG Time</b></em>' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IACTIVITY_GRAPH__WEAK_CG_TIME = NESTED_STATE_CHART_TYPE_FEATURE_COUNT + 7;
+
+	/**
+	 * The feature id for the '<em><b>Strong CG Time</b></em>' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IACTIVITY_GRAPH__STRONG_CG_TIME = NESTED_STATE_CHART_TYPE_FEATURE_COUNT + 8;
+
+	/**
+	 * The feature id for the '<em><b>Multiplicity</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IACTIVITY_GRAPH__MULTIPLICITY = NESTED_STATE_CHART_TYPE_FEATURE_COUNT + 9;
+
+	/**
+	 * The feature id for the '<em><b>Its State Chart</b></em>' reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IACTIVITY_GRAPH__ITS_STATE_CHART = NESTED_STATE_CHART_TYPE_FEATURE_COUNT + 10;
+
+	/**
+	 * The feature id for the '<em><b>Class Modifier</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IACTIVITY_GRAPH__CLASS_MODIFIER = NESTED_STATE_CHART_TYPE_FEATURE_COUNT + 11;
+
+	/**
+	 * The feature id for the '<em><b>States</b></em>' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IACTIVITY_GRAPH__STATES = NESTED_STATE_CHART_TYPE_FEATURE_COUNT + 12;
+
+	/**
+	 * The feature id for the '<em><b>Base Version</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IACTIVITY_GRAPH__BASE_VERSION = NESTED_STATE_CHART_TYPE_FEATURE_COUNT + 13;
+
+	/**
+	 * The feature id for the '<em><b>Diagram</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IACTIVITY_GRAPH__DIAGRAM = NESTED_STATE_CHART_TYPE_FEATURE_COUNT + 14;
+
+	/**
+	 * The feature id for the '<em><b>Views</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IACTIVITY_GRAPH__VIEWS = NESTED_STATE_CHART_TYPE_FEATURE_COUNT + 15;
+
+	/**
+	 * The feature id for the '<em><b>Properties</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IACTIVITY_GRAPH__PROPERTIES = NESTED_STATE_CHART_TYPE_FEATURE_COUNT + 16;
+
+	/**
+	 * The feature id for the '<em><b>Requiremen Tracability Handle</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IACTIVITY_GRAPH__REQUIREMEN_TRACABILITY_HANDLE = NESTED_STATE_CHART_TYPE_FEATURE_COUNT + 17;
+
+	/**
+	 * The feature id for the '<em><b>Description</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IACTIVITY_GRAPH__DESCRIPTION = NESTED_STATE_CHART_TYPE_FEATURE_COUNT + 18;
+
+	/**
+	 * The feature id for the '<em><b>Swimlanes</b></em>' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IACTIVITY_GRAPH__SWIMLANES = NESTED_STATE_CHART_TYPE_FEATURE_COUNT + 19;
+
+	/**
+	 * The feature id for the '<em><b>Stereotypes</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IACTIVITY_GRAPH__STEREOTYPES = NESTED_STATE_CHART_TYPE_FEATURE_COUNT + 20;
+
+	/**
+	 * The feature id for the '<em><b>Analysis Mode</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IACTIVITY_GRAPH__ANALYSIS_MODE = NESTED_STATE_CHART_TYPE_FEATURE_COUNT + 21;
+
+	/**
+	 * The feature id for the '<em><b>Annotations</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IACTIVITY_GRAPH__ANNOTATIONS = NESTED_STATE_CHART_TYPE_FEATURE_COUNT + 22;
+
+	/**
+	 * The feature id for the '<em><b>Code Update CG Time</b></em>' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IACTIVITY_GRAPH__CODE_UPDATE_CG_TIME = NESTED_STATE_CHART_TYPE_FEATURE_COUNT + 23;
+
+	/**
+	 * The feature id for the '<em><b>Object Creation</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IACTIVITY_GRAPH__OBJECT_CREATION = NESTED_STATE_CHART_TYPE_FEATURE_COUNT + 24;
+
+	/**
+	 * The feature id for the '<em><b>Uml Dependency ID</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IACTIVITY_GRAPH__UML_DEPENDENCY_ID = NESTED_STATE_CHART_TYPE_FEATURE_COUNT + 25;
+
+	/**
+	 * The feature id for the '<em><b>Hyper Links</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IACTIVITY_GRAPH__HYPER_LINKS = NESTED_STATE_CHART_TYPE_FEATURE_COUNT + 26;
+
+	/**
+	 * The feature id for the '<em><b>Dependencies</b></em>' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IACTIVITY_GRAPH__DEPENDENCIES = NESTED_STATE_CHART_TYPE_FEATURE_COUNT + 27;
+
+	/**
+	 * The feature id for the '<em><b>The Main Diagram</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IACTIVITY_GRAPH__THE_MAIN_DIAGRAM = NESTED_STATE_CHART_TYPE_FEATURE_COUNT + 28;
+
+	/**
+	 * The feature id for the '<em><b>Associations</b></em>' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IACTIVITY_GRAPH__ASSOCIATIONS = NESTED_STATE_CHART_TYPE_FEATURE_COUNT + 29;
+
+	/**
+	 * The feature id for the '<em><b>Tags</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IACTIVITY_GRAPH__TAGS = NESTED_STATE_CHART_TYPE_FEATURE_COUNT + 30;
+
+	/**
+	 * The number of structural features of the '<em>IActivity Graph</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IACTIVITY_GRAPH_FEATURE_COUNT = NESTED_STATE_CHART_TYPE_FEATURE_COUNT + 31;
+
+	/**
+	 * The operation id for the '<em>Get EAnnotation</em>' operation.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IACTIVITY_GRAPH___GET_EANNOTATION__STRING = NESTED_STATE_CHART_TYPE_OPERATION_COUNT + 0;
+
+	/**
+	 * The number of operations of the '<em>IActivity Graph</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IACTIVITY_GRAPH_OPERATION_COUNT = NESTED_STATE_CHART_TYPE_OPERATION_COUNT + 1;
+
+	/**
+	 * The meta object id for the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IUnitImpl <em>IUnit</em>}' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IUnitImpl
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.UMLRpyPackageImpl#getIUnit()
+	 * @generated
+	 */
+	int IUNIT = 210;
+
+	/**
+	 * The feature id for the '<em><b>EAnnotations</b></em>' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IUNIT__EANNOTATIONS = IMODEL_ELEMENT__EANNOTATIONS;
+
+	/**
+	 * The feature id for the '<em><b>Display Name</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IUNIT__DISPLAY_NAME = IMODEL_ELEMENT__DISPLAY_NAME;
+
+	/**
+	 * The number of structural features of the '<em>IUnit</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IUNIT_FEATURE_COUNT = IMODEL_ELEMENT_FEATURE_COUNT + 0;
+
+	/**
+	 * The operation id for the '<em>Get EAnnotation</em>' operation.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IUNIT___GET_EANNOTATION__STRING = IMODEL_ELEMENT___GET_EANNOTATION__STRING;
+
+	/**
+	 * The number of operations of the '<em>IUnit</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IUNIT_OPERATION_COUNT = IMODEL_ELEMENT_OPERATION_COUNT + 0;
+
+	/**
+	 * The meta object id for the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IClassifierImpl <em>IClassifier</em>}' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IClassifierImpl
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.UMLRpyPackageImpl#getIClassifier()
+	 * @generated
+	 */
+	int ICLASSIFIER = 90;
+
+	/**
+	 * The feature id for the '<em><b>EAnnotations</b></em>' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ICLASSIFIER__EANNOTATIONS = IUNIT__EANNOTATIONS;
+
+	/**
+	 * The feature id for the '<em><b>Display Name</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ICLASSIFIER__DISPLAY_NAME = IUNIT__DISPLAY_NAME;
+
+	/**
+	 * The number of structural features of the '<em>IClassifier</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ICLASSIFIER_FEATURE_COUNT = IUNIT_FEATURE_COUNT + 0;
+
+	/**
+	 * The operation id for the '<em>Get EAnnotation</em>' operation.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ICLASSIFIER___GET_EANNOTATION__STRING = IUNIT___GET_EANNOTATION__STRING;
+
+	/**
+	 * The number of operations of the '<em>IClassifier</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ICLASSIFIER_OPERATION_COUNT = IUNIT_OPERATION_COUNT + 0;
+
+	/**
+	 * The meta object id for the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IActorImpl <em>IActor</em>}' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IActorImpl
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.UMLRpyPackageImpl#getIActor()
+	 * @generated
+	 */
+	int IACTOR = 73;
+
+	/**
+	 * The feature id for the '<em><b>EAnnotations</b></em>' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IACTOR__EANNOTATIONS = ICLASSIFIER__EANNOTATIONS;
+
+	/**
+	 * The feature id for the '<em><b>Display Name</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IACTOR__DISPLAY_NAME = ICLASSIFIER__DISPLAY_NAME;
+
+	/**
+	 * The feature id for the '<em><b>Uml Dependency ID</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IACTOR__UML_DEPENDENCY_ID = ICLASSIFIER_FEATURE_COUNT + 0;
+
+	/**
+	 * The feature id for the '<em><b>Object Creation</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IACTOR__OBJECT_CREATION = ICLASSIFIER_FEATURE_COUNT + 1;
+
+	/**
+	 * The feature id for the '<em><b>Multiplicity</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IACTOR__MULTIPLICITY = ICLASSIFIER_FEATURE_COUNT + 2;
+
+	/**
+	 * The feature id for the '<em><b>Id</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IACTOR__ID = ICLASSIFIER_FEATURE_COUNT + 3;
+
+	/**
+	 * The feature id for the '<em><b>My State</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IACTOR__MY_STATE = ICLASSIFIER_FEATURE_COUNT + 4;
+
+	/**
+	 * The feature id for the '<em><b>Name</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IACTOR__NAME = ICLASSIFIER_FEATURE_COUNT + 5;
+
+	/**
+	 * The feature id for the '<em><b>The Main Diagram</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IACTOR__THE_MAIN_DIAGRAM = ICLASSIFIER_FEATURE_COUNT + 6;
+
+	/**
+	 * The feature id for the '<em><b>Dependencies</b></em>' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IACTOR__DEPENDENCIES = ICLASSIFIER_FEATURE_COUNT + 7;
+
+	/**
+	 * The feature id for the '<em><b>Last ID</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IACTOR__LAST_ID = ICLASSIFIER_FEATURE_COUNT + 8;
+
+	/**
+	 * The feature id for the '<em><b>Weak CG Time</b></em>' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IACTOR__WEAK_CG_TIME = ICLASSIFIER_FEATURE_COUNT + 9;
+
+	/**
+	 * The feature id for the '<em><b>Strong CG Time</b></em>' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IACTOR__STRONG_CG_TIME = ICLASSIFIER_FEATURE_COUNT + 10;
+
+	/**
+	 * The feature id for the '<em><b>Operations</b></em>' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IACTOR__OPERATIONS = ICLASSIFIER_FEATURE_COUNT + 11;
+
+	/**
+	 * The feature id for the '<em><b>State Charts</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IACTOR__STATE_CHARTS = ICLASSIFIER_FEATURE_COUNT + 12;
+
+	/**
+	 * The feature id for the '<em><b>Its State Chart</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IACTOR__ITS_STATE_CHART = ICLASSIFIER_FEATURE_COUNT + 13;
+
+	/**
+	 * The feature id for the '<em><b>Associations</b></em>' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IACTOR__ASSOCIATIONS = ICLASSIFIER_FEATURE_COUNT + 14;
+
+	/**
+	 * The feature id for the '<em><b>Class Modifier</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IACTOR__CLASS_MODIFIER = ICLASSIFIER_FEATURE_COUNT + 15;
+
+	/**
+	 * The feature id for the '<em><b>Hyper Links</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IACTOR__HYPER_LINKS = ICLASSIFIER_FEATURE_COUNT + 16;
+
+	/**
+	 * The feature id for the '<em><b>Modified Time Weak</b></em>' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IACTOR__MODIFIED_TIME_WEAK = ICLASSIFIER_FEATURE_COUNT + 17;
+
+	/**
+	 * The feature id for the '<em><b>Ports</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IACTOR__PORTS = ICLASSIFIER_FEATURE_COUNT + 18;
+
+	/**
+	 * The feature id for the '<em><b>Inheritances</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IACTOR__INHERITANCES = ICLASSIFIER_FEATURE_COUNT + 19;
+
+	/**
+	 * The feature id for the '<em><b>Attrs</b></em>' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IACTOR__ATTRS = ICLASSIFIER_FEATURE_COUNT + 20;
+
+	/**
+	 * The feature id for the '<em><b>Requiremen Tracability Handle</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IACTOR__REQUIREMEN_TRACABILITY_HANDLE = ICLASSIFIER_FEATURE_COUNT + 21;
+
+	/**
+	 * The feature id for the '<em><b>Description</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IACTOR__DESCRIPTION = ICLASSIFIER_FEATURE_COUNT + 22;
+
+	/**
+	 * The feature id for the '<em><b>Annotations</b></em>' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IACTOR__ANNOTATIONS = ICLASSIFIER_FEATURE_COUNT + 23;
+
+	/**
+	 * The feature id for the '<em><b>Component Files</b></em>' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IACTOR__COMPONENT_FILES = ICLASSIFIER_FEATURE_COUNT + 24;
+
+	/**
+	 * The feature id for the '<em><b>Properties</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IACTOR__PROPERTIES = ICLASSIFIER_FEATURE_COUNT + 25;
+
+	/**
+	 * The number of structural features of the '<em>IActor</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IACTOR_FEATURE_COUNT = ICLASSIFIER_FEATURE_COUNT + 26;
+
+	/**
+	 * The operation id for the '<em>Get EAnnotation</em>' operation.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IACTOR___GET_EANNOTATION__STRING = ICLASSIFIER___GET_EANNOTATION__STRING;
+
+	/**
+	 * The number of operations of the '<em>IActor</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IACTOR_OPERATION_COUNT = ICLASSIFIER_OPERATION_COUNT + 0;
+
+	/**
+	 * The meta object id for the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.M_pModelObjectTypeImpl <em>MpModel Object Type</em>}' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.M_pModelObjectTypeImpl
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.UMLRpyPackageImpl#getM_pModelObjectType()
+	 * @generated
+	 */
+	int MPMODEL_OBJECT_TYPE = 226;
+
+	/**
+	 * The number of structural features of the '<em>MpModel Object Type</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int MPMODEL_OBJECT_TYPE_FEATURE_COUNT = 0;
+
+	/**
+	 * The number of operations of the '<em>MpModel Object Type</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int MPMODEL_OBJECT_TYPE_OPERATION_COUNT = 0;
+
+	/**
+	 * The meta object id for the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IAnchorImpl <em>IAnchor</em>}' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IAnchorImpl
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.UMLRpyPackageImpl#getIAnchor()
+	 * @generated
+	 */
+	int IANCHOR = 74;
+
+	/**
+	 * The feature id for the '<em><b>Id</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IANCHOR__ID = MPMODEL_OBJECT_TYPE_FEATURE_COUNT + 0;
+
+	/**
+	 * The feature id for the '<em><b>My State</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IANCHOR__MY_STATE = MPMODEL_OBJECT_TYPE_FEATURE_COUNT + 1;
+
+	/**
+	 * The feature id for the '<em><b>Name</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IANCHOR__NAME = MPMODEL_OBJECT_TYPE_FEATURE_COUNT + 2;
+
+	/**
+	 * The feature id for the '<em><b>Depends On</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IANCHOR__DEPENDS_ON = MPMODEL_OBJECT_TYPE_FEATURE_COUNT + 3;
+
+	/**
+	 * The feature id for the '<em><b>Modified Time Weak</b></em>' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IANCHOR__MODIFIED_TIME_WEAK = MPMODEL_OBJECT_TYPE_FEATURE_COUNT + 4;
+
+	/**
+	 * The number of structural features of the '<em>IAnchor</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IANCHOR_FEATURE_COUNT = MPMODEL_OBJECT_TYPE_FEATURE_COUNT + 5;
+
+	/**
+	 * The number of operations of the '<em>IAnchor</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IANCHOR_OPERATION_COUNT = MPMODEL_OBJECT_TYPE_OPERATION_COUNT + 0;
+
+	/**
+	 * The meta object id for the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IAnnotationImpl <em>IAnnotation</em>}' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IAnnotationImpl
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.UMLRpyPackageImpl#getIAnnotation()
+	 * @generated
+	 */
+	int IANNOTATION = 75;
+
+	/**
+	 * The feature id for the '<em><b>EAnnotations</b></em>' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IANNOTATION__EANNOTATIONS = IUNIT__EANNOTATIONS;
+
+	/**
+	 * The feature id for the '<em><b>Display Name</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IANNOTATION__DISPLAY_NAME = IUNIT__DISPLAY_NAME;
+
+	/**
+	 * The feature id for the '<em><b>Requiremen Tracability Handle</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IANNOTATION__REQUIREMEN_TRACABILITY_HANDLE = IUNIT_FEATURE_COUNT + 0;
+
+	/**
+	 * The feature id for the '<em><b>Description</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IANNOTATION__DESCRIPTION = IUNIT_FEATURE_COUNT + 1;
+
+	/**
+	 * The feature id for the '<em><b>Uml Dependency ID</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IANNOTATION__UML_DEPENDENCY_ID = IUNIT_FEATURE_COUNT + 2;
+
+	/**
+	 * The feature id for the '<em><b>Object Creation</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IANNOTATION__OBJECT_CREATION = IUNIT_FEATURE_COUNT + 3;
+
+	/**
+	 * The feature id for the '<em><b>Tags</b></em>' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IANNOTATION__TAGS = IUNIT_FEATURE_COUNT + 4;
+
+	/**
+	 * The feature id for the '<em><b>Body</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IANNOTATION__BODY = IUNIT_FEATURE_COUNT + 5;
+
+	/**
+	 * The number of structural features of the '<em>IAnnotation</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IANNOTATION_FEATURE_COUNT = IUNIT_FEATURE_COUNT + 6;
+
+	/**
+	 * The operation id for the '<em>Get EAnnotation</em>' operation.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IANNOTATION___GET_EANNOTATION__STRING = IUNIT___GET_EANNOTATION__STRING;
+
+	/**
+	 * The number of operations of the '<em>IAnnotation</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IANNOTATION_OPERATION_COUNT = IUNIT_OPERATION_COUNT + 0;
+
+	/**
+	 * The meta object id for the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IVariableImpl <em>IVariable</em>}' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IVariableImpl
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.UMLRpyPackageImpl#getIVariable()
+	 * @generated
+	 */
+	int IVARIABLE = 215;
+
+	/**
+	 * The feature id for the '<em><b>EAnnotations</b></em>' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IVARIABLE__EANNOTATIONS = IUNIT__EANNOTATIONS;
+
+	/**
+	 * The feature id for the '<em><b>Display Name</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IVARIABLE__DISPLAY_NAME = IUNIT__DISPLAY_NAME;
+
+	/**
+	 * The feature id for the '<em><b>Is Ordered</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IVARIABLE__IS_ORDERED = IUNIT_FEATURE_COUNT + 0;
+
+	/**
+	 * The feature id for the '<em><b>My Type Of</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IVARIABLE__MY_TYPE_OF = IUNIT_FEATURE_COUNT + 1;
+
+	/**
+	 * The number of structural features of the '<em>IVariable</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IVARIABLE_FEATURE_COUNT = IUNIT_FEATURE_COUNT + 2;
+
+	/**
+	 * The operation id for the '<em>Get EAnnotation</em>' operation.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IVARIABLE___GET_EANNOTATION__STRING = IUNIT___GET_EANNOTATION__STRING;
+
+	/**
+	 * The number of operations of the '<em>IVariable</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IVARIABLE_OPERATION_COUNT = IUNIT_OPERATION_COUNT + 0;
+
+	/**
+	 * The meta object id for the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IArgumentImpl <em>IArgument</em>}' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IArgumentImpl
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.UMLRpyPackageImpl#getIArgument()
+	 * @generated
+	 */
+	int IARGUMENT = 76;
+
+	/**
+	 * The feature id for the '<em><b>EAnnotations</b></em>' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IARGUMENT__EANNOTATIONS = IVARIABLE__EANNOTATIONS;
+
+	/**
+	 * The feature id for the '<em><b>Display Name</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IARGUMENT__DISPLAY_NAME = IVARIABLE__DISPLAY_NAME;
+
+	/**
+	 * The feature id for the '<em><b>Is Ordered</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IARGUMENT__IS_ORDERED = IVARIABLE__IS_ORDERED;
+
+	/**
+	 * The feature id for the '<em><b>My Type Of</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IARGUMENT__MY_TYPE_OF = IVARIABLE__MY_TYPE_OF;
+
+	/**
+	 * The feature id for the '<em><b>Id</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IARGUMENT__ID = IVARIABLE_FEATURE_COUNT + 0;
+
+	/**
+	 * The feature id for the '<em><b>My State</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IARGUMENT__MY_STATE = IVARIABLE_FEATURE_COUNT + 1;
+
+	/**
+	 * The feature id for the '<em><b>Properties</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IARGUMENT__PROPERTIES = IVARIABLE_FEATURE_COUNT + 2;
+
+	/**
+	 * The feature id for the '<em><b>Name</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IARGUMENT__NAME = IVARIABLE_FEATURE_COUNT + 3;
+
+	/**
+	 * The feature id for the '<em><b>Modified Time Weak</b></em>' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IARGUMENT__MODIFIED_TIME_WEAK = IVARIABLE_FEATURE_COUNT + 4;
+
+	/**
+	 * The feature id for the '<em><b>Type Of</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IARGUMENT__TYPE_OF = IVARIABLE_FEATURE_COUNT + 5;
+
+	/**
+	 * The feature id for the '<em><b>Argument Direction</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IARGUMENT__ARGUMENT_DIRECTION = IVARIABLE_FEATURE_COUNT + 6;
+
+	/**
+	 * The feature id for the '<em><b>Default Value</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IARGUMENT__DEFAULT_VALUE = IVARIABLE_FEATURE_COUNT + 7;
+
+	/**
+	 * The feature id for the '<em><b>Value Specifications</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IARGUMENT__VALUE_SPECIFICATIONS = IVARIABLE_FEATURE_COUNT + 8;
+
+	/**
+	 * The feature id for the '<em><b>Description</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IARGUMENT__DESCRIPTION = IVARIABLE_FEATURE_COUNT + 9;
+
+	/**
+	 * The feature id for the '<em><b>Code Update CG Time</b></em>' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IARGUMENT__CODE_UPDATE_CG_TIME = IVARIABLE_FEATURE_COUNT + 10;
+
+	/**
+	 * The feature id for the '<em><b>Object Creation</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IARGUMENT__OBJECT_CREATION = IVARIABLE_FEATURE_COUNT + 11;
+
+	/**
+	 * The feature id for the '<em><b>Uml Dependency ID</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IARGUMENT__UML_DEPENDENCY_ID = IVARIABLE_FEATURE_COUNT + 12;
+
+	/**
+	 * The number of structural features of the '<em>IArgument</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IARGUMENT_FEATURE_COUNT = IVARIABLE_FEATURE_COUNT + 13;
+
+	/**
+	 * The operation id for the '<em>Get EAnnotation</em>' operation.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IARGUMENT___GET_EANNOTATION__STRING = IVARIABLE___GET_EANNOTATION__STRING;
+
+	/**
+	 * The number of operations of the '<em>IArgument</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IARGUMENT_OPERATION_COUNT = IVARIABLE_OPERATION_COUNT + 0;
+
+	/**
+	 * The meta object id for the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IClassImpl <em>IClass</em>}' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IClassImpl
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.UMLRpyPackageImpl#getIClass()
+	 * @generated
+	 */
+	int ICLASS = 87;
+
+	/**
+	 * The feature id for the '<em><b>EAnnotations</b></em>' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ICLASS__EANNOTATIONS = ICLASSIFIER__EANNOTATIONS;
+
+	/**
+	 * The feature id for the '<em><b>Display Name</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ICLASS__DISPLAY_NAME = ICLASSIFIER__DISPLAY_NAME;
+
+	/**
+	 * The feature id for the '<em><b>Uml Dependency ID</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ICLASS__UML_DEPENDENCY_ID = ICLASSIFIER_FEATURE_COUNT + 0;
+
+	/**
+	 * The feature id for the '<em><b>Object Creation</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ICLASS__OBJECT_CREATION = ICLASSIFIER_FEATURE_COUNT + 1;
+
+	/**
+	 * The feature id for the '<em><b>Modified Time Weak</b></em>' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ICLASS__MODIFIED_TIME_WEAK = ICLASSIFIER_FEATURE_COUNT + 2;
+
+	/**
+	 * The feature id for the '<em><b>Id</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ICLASS__ID = ICLASSIFIER_FEATURE_COUNT + 3;
+
+	/**
+	 * The feature id for the '<em><b>My State</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ICLASS__MY_STATE = ICLASSIFIER_FEATURE_COUNT + 4;
+
+	/**
+	 * The feature id for the '<em><b>Name</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ICLASS__NAME = ICLASSIFIER_FEATURE_COUNT + 5;
+
+	/**
+	 * The feature id for the '<em><b>Last ID</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ICLASS__LAST_ID = ICLASSIFIER_FEATURE_COUNT + 6;
+
+	/**
+	 * The feature id for the '<em><b>Weak CG Time</b></em>' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ICLASS__WEAK_CG_TIME = ICLASSIFIER_FEATURE_COUNT + 7;
+
+	/**
+	 * The feature id for the '<em><b>Strong CG Time</b></em>' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ICLASS__STRONG_CG_TIME = ICLASSIFIER_FEATURE_COUNT + 8;
+
+	/**
+	 * The feature id for the '<em><b>Multiplicity</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ICLASS__MULTIPLICITY = ICLASSIFIER_FEATURE_COUNT + 9;
+
+	/**
+	 * The feature id for the '<em><b>Class Modifier</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ICLASS__CLASS_MODIFIER = ICLASSIFIER_FEATURE_COUNT + 10;
+
+	/**
+	 * The feature id for the '<em><b>Properties</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ICLASS__PROPERTIES = ICLASSIFIER_FEATURE_COUNT + 11;
+
+	/**
+	 * The feature id for the '<em><b>Stereotypes</b></em>' reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ICLASS__STEREOTYPES = ICLASSIFIER_FEATURE_COUNT + 12;
+
+	/**
+	 * The feature id for the '<em><b>Operations</b></em>' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ICLASS__OPERATIONS = ICLASSIFIER_FEATURE_COUNT + 13;
+
+	/**
+	 * The feature id for the '<em><b>Inheritances</b></em>' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ICLASS__INHERITANCES = ICLASSIFIER_FEATURE_COUNT + 14;
+
+	/**
+	 * The feature id for the '<em><b>The Main Diagram</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ICLASS__THE_MAIN_DIAGRAM = ICLASSIFIER_FEATURE_COUNT + 15;
+
+	/**
+	 * The feature id for the '<em><b>Attrs</b></em>' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ICLASS__ATTRS = ICLASSIFIER_FEATURE_COUNT + 16;
+
+	/**
+	 * The feature id for the '<em><b>Tags</b></em>' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ICLASS__TAGS = ICLASSIFIER_FEATURE_COUNT + 17;
+
+	/**
+	 * The feature id for the '<em><b>Associations</b></em>' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ICLASS__ASSOCIATIONS = ICLASSIFIER_FEATURE_COUNT + 18;
+
+	/**
+	 * The feature id for the '<em><b>Dependencies</b></em>' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ICLASS__DEPENDENCIES = ICLASSIFIER_FEATURE_COUNT + 19;
+
+	/**
+	 * The feature id for the '<em><b>Ports</b></em>' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ICLASS__PORTS = ICLASSIFIER_FEATURE_COUNT + 20;
+
+	/**
+	 * The feature id for the '<em><b>Object Links</b></em>' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ICLASS__OBJECT_LINKS = ICLASSIFIER_FEATURE_COUNT + 21;
+
+	/**
+	 * The feature id for the '<em><b>State Charts</b></em>' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ICLASS__STATE_CHARTS = ICLASSIFIER_FEATURE_COUNT + 22;
+
+	/**
+	 * The feature id for the '<em><b>Its State Chart</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ICLASS__ITS_STATE_CHART = ICLASSIFIER_FEATURE_COUNT + 23;
+
+	/**
+	 * The feature id for the '<em><b>Triggered Operations</b></em>' reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ICLASS__TRIGGERED_OPERATIONS = ICLASSIFIER_FEATURE_COUNT + 24;
+
+	/**
+	 * The feature id for the '<em><b>Receptions</b></em>' reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ICLASS__RECEPTIONS = ICLASSIFIER_FEATURE_COUNT + 25;
+
+	/**
+	 * The feature id for the '<em><b>Primitive Operations</b></em>' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ICLASS__PRIMITIVE_OPERATIONS = ICLASSIFIER_FEATURE_COUNT + 26;
+
+	/**
+	 * The feature id for the '<em><b>Annotations</b></em>' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ICLASS__ANNOTATIONS = ICLASSIFIER_FEATURE_COUNT + 27;
+
+	/**
+	 * The feature id for the '<em><b>Description</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ICLASS__DESCRIPTION = ICLASSIFIER_FEATURE_COUNT + 28;
+
+	/**
+	 * The feature id for the '<em><b>Declaratives</b></em>' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ICLASS__DECLARATIVES = ICLASSIFIER_FEATURE_COUNT + 29;
+
+	/**
+	 * The feature id for the '<em><b>Association Elements</b></em>' reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ICLASS__ASSOCIATION_ELEMENTS = ICLASSIFIER_FEATURE_COUNT + 30;
+
+	/**
+	 * The feature id for the '<em><b>Owner Handle</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ICLASS__OWNER_HANDLE = ICLASSIFIER_FEATURE_COUNT + 31;
+
+	/**
+	 * The feature id for the '<em><b>Hyper Links</b></em>' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ICLASS__HYPER_LINKS = ICLASSIFIER_FEATURE_COUNT + 32;
+
+	/**
+	 * The feature id for the '<em><b>Requiremen Tracability Handle</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ICLASS__REQUIREMEN_TRACABILITY_HANDLE = ICLASSIFIER_FEATURE_COUNT + 33;
+
+	/**
+	 * The feature id for the '<em><b>Component Files</b></em>' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ICLASS__COMPONENT_FILES = ICLASSIFIER_FEATURE_COUNT + 34;
+
+	/**
+	 * The feature id for the '<em><b>Links</b></em>' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ICLASS__LINKS = ICLASSIFIER_FEATURE_COUNT + 35;
+
+	/**
+	 * The feature id for the '<em><b>Components</b></em>' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ICLASS__COMPONENTS = ICLASSIFIER_FEATURE_COUNT + 36;
+
+	/**
+	 * The feature id for the '<em><b>Event Handles</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ICLASS__EVENT_HANDLES = ICLASSIFIER_FEATURE_COUNT + 37;
+
+	/**
+	 * The feature id for the '<em><b>Template Parameters</b></em>' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ICLASS__TEMPLATE_PARAMETERS = ICLASSIFIER_FEATURE_COUNT + 38;
+
+	/**
+	 * The feature id for the '<em><b>Code Update CG Time</b></em>' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ICLASS__CODE_UPDATE_CG_TIME = ICLASSIFIER_FEATURE_COUNT + 39;
+
+	/**
+	 * The feature id for the '<em><b>Cmheader</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ICLASS__CMHEADER = ICLASSIFIER_FEATURE_COUNT + 40;
+
+	/**
+	 * The number of structural features of the '<em>IClass</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ICLASS_FEATURE_COUNT = ICLASSIFIER_FEATURE_COUNT + 41;
+
+	/**
+	 * The operation id for the '<em>Get EAnnotation</em>' operation.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ICLASS___GET_EANNOTATION__STRING = ICLASSIFIER___GET_EANNOTATION__STRING;
+
+	/**
+	 * The number of operations of the '<em>IClass</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ICLASS_OPERATION_COUNT = ICLASSIFIER_OPERATION_COUNT + 0;
+
+	/**
+	 * The meta object id for the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IAssociationClassImpl <em>IAssociation Class</em>}' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IAssociationClassImpl
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.UMLRpyPackageImpl#getIAssociationClass()
+	 * @generated
+	 */
+	int IASSOCIATION_CLASS = 77;
+
+	/**
+	 * The feature id for the '<em><b>EAnnotations</b></em>' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IASSOCIATION_CLASS__EANNOTATIONS = ICLASS__EANNOTATIONS;
+
+	/**
+	 * The feature id for the '<em><b>Display Name</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IASSOCIATION_CLASS__DISPLAY_NAME = ICLASS__DISPLAY_NAME;
+
+	/**
+	 * The feature id for the '<em><b>Uml Dependency ID</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IASSOCIATION_CLASS__UML_DEPENDENCY_ID = ICLASS__UML_DEPENDENCY_ID;
+
+	/**
+	 * The feature id for the '<em><b>Object Creation</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IASSOCIATION_CLASS__OBJECT_CREATION = ICLASS__OBJECT_CREATION;
+
+	/**
+	 * The feature id for the '<em><b>Modified Time Weak</b></em>' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IASSOCIATION_CLASS__MODIFIED_TIME_WEAK = ICLASS__MODIFIED_TIME_WEAK;
+
+	/**
+	 * The feature id for the '<em><b>Id</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IASSOCIATION_CLASS__ID = ICLASS__ID;
+
+	/**
+	 * The feature id for the '<em><b>My State</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IASSOCIATION_CLASS__MY_STATE = ICLASS__MY_STATE;
+
+	/**
+	 * The feature id for the '<em><b>Name</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IASSOCIATION_CLASS__NAME = ICLASS__NAME;
+
+	/**
+	 * The feature id for the '<em><b>Last ID</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IASSOCIATION_CLASS__LAST_ID = ICLASS__LAST_ID;
+
+	/**
+	 * The feature id for the '<em><b>Weak CG Time</b></em>' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IASSOCIATION_CLASS__WEAK_CG_TIME = ICLASS__WEAK_CG_TIME;
+
+	/**
+	 * The feature id for the '<em><b>Strong CG Time</b></em>' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IASSOCIATION_CLASS__STRONG_CG_TIME = ICLASS__STRONG_CG_TIME;
+
+	/**
+	 * The feature id for the '<em><b>Multiplicity</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IASSOCIATION_CLASS__MULTIPLICITY = ICLASS__MULTIPLICITY;
+
+	/**
+	 * The feature id for the '<em><b>Class Modifier</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IASSOCIATION_CLASS__CLASS_MODIFIER = ICLASS__CLASS_MODIFIER;
+
+	/**
+	 * The feature id for the '<em><b>Properties</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IASSOCIATION_CLASS__PROPERTIES = ICLASS__PROPERTIES;
+
+	/**
+	 * The feature id for the '<em><b>Stereotypes</b></em>' reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IASSOCIATION_CLASS__STEREOTYPES = ICLASS__STEREOTYPES;
+
+	/**
+	 * The feature id for the '<em><b>Operations</b></em>' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IASSOCIATION_CLASS__OPERATIONS = ICLASS__OPERATIONS;
+
+	/**
+	 * The feature id for the '<em><b>Inheritances</b></em>' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IASSOCIATION_CLASS__INHERITANCES = ICLASS__INHERITANCES;
+
+	/**
+	 * The feature id for the '<em><b>The Main Diagram</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IASSOCIATION_CLASS__THE_MAIN_DIAGRAM = ICLASS__THE_MAIN_DIAGRAM;
+
+	/**
+	 * The feature id for the '<em><b>Attrs</b></em>' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IASSOCIATION_CLASS__ATTRS = ICLASS__ATTRS;
+
+	/**
+	 * The feature id for the '<em><b>Tags</b></em>' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IASSOCIATION_CLASS__TAGS = ICLASS__TAGS;
+
+	/**
+	 * The feature id for the '<em><b>Associations</b></em>' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IASSOCIATION_CLASS__ASSOCIATIONS = ICLASS__ASSOCIATIONS;
+
+	/**
+	 * The feature id for the '<em><b>Dependencies</b></em>' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IASSOCIATION_CLASS__DEPENDENCIES = ICLASS__DEPENDENCIES;
+
+	/**
+	 * The feature id for the '<em><b>Ports</b></em>' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IASSOCIATION_CLASS__PORTS = ICLASS__PORTS;
+
+	/**
+	 * The feature id for the '<em><b>Object Links</b></em>' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IASSOCIATION_CLASS__OBJECT_LINKS = ICLASS__OBJECT_LINKS;
+
+	/**
+	 * The feature id for the '<em><b>State Charts</b></em>' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IASSOCIATION_CLASS__STATE_CHARTS = ICLASS__STATE_CHARTS;
+
+	/**
+	 * The feature id for the '<em><b>Its State Chart</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IASSOCIATION_CLASS__ITS_STATE_CHART = ICLASS__ITS_STATE_CHART;
+
+	/**
+	 * The feature id for the '<em><b>Triggered Operations</b></em>' reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IASSOCIATION_CLASS__TRIGGERED_OPERATIONS = ICLASS__TRIGGERED_OPERATIONS;
+
+	/**
+	 * The feature id for the '<em><b>Receptions</b></em>' reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IASSOCIATION_CLASS__RECEPTIONS = ICLASS__RECEPTIONS;
+
+	/**
+	 * The feature id for the '<em><b>Primitive Operations</b></em>' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IASSOCIATION_CLASS__PRIMITIVE_OPERATIONS = ICLASS__PRIMITIVE_OPERATIONS;
+
+	/**
+	 * The feature id for the '<em><b>Annotations</b></em>' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IASSOCIATION_CLASS__ANNOTATIONS = ICLASS__ANNOTATIONS;
+
+	/**
+	 * The feature id for the '<em><b>Description</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IASSOCIATION_CLASS__DESCRIPTION = ICLASS__DESCRIPTION;
+
+	/**
+	 * The feature id for the '<em><b>Declaratives</b></em>' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IASSOCIATION_CLASS__DECLARATIVES = ICLASS__DECLARATIVES;
+
+	/**
+	 * The feature id for the '<em><b>Association Elements</b></em>' reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IASSOCIATION_CLASS__ASSOCIATION_ELEMENTS = ICLASS__ASSOCIATION_ELEMENTS;
+
+	/**
+	 * The feature id for the '<em><b>Owner Handle</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IASSOCIATION_CLASS__OWNER_HANDLE = ICLASS__OWNER_HANDLE;
+
+	/**
+	 * The feature id for the '<em><b>Hyper Links</b></em>' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IASSOCIATION_CLASS__HYPER_LINKS = ICLASS__HYPER_LINKS;
+
+	/**
+	 * The feature id for the '<em><b>Requiremen Tracability Handle</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IASSOCIATION_CLASS__REQUIREMEN_TRACABILITY_HANDLE = ICLASS__REQUIREMEN_TRACABILITY_HANDLE;
+
+	/**
+	 * The feature id for the '<em><b>Component Files</b></em>' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IASSOCIATION_CLASS__COMPONENT_FILES = ICLASS__COMPONENT_FILES;
+
+	/**
+	 * The feature id for the '<em><b>Links</b></em>' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IASSOCIATION_CLASS__LINKS = ICLASS__LINKS;
+
+	/**
+	 * The feature id for the '<em><b>Components</b></em>' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IASSOCIATION_CLASS__COMPONENTS = ICLASS__COMPONENTS;
+
+	/**
+	 * The feature id for the '<em><b>Event Handles</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IASSOCIATION_CLASS__EVENT_HANDLES = ICLASS__EVENT_HANDLES;
+
+	/**
+	 * The feature id for the '<em><b>Template Parameters</b></em>' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IASSOCIATION_CLASS__TEMPLATE_PARAMETERS = ICLASS__TEMPLATE_PARAMETERS;
+
+	/**
+	 * The feature id for the '<em><b>Code Update CG Time</b></em>' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IASSOCIATION_CLASS__CODE_UPDATE_CG_TIME = ICLASS__CODE_UPDATE_CG_TIME;
+
+	/**
+	 * The feature id for the '<em><b>Cmheader</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IASSOCIATION_CLASS__CMHEADER = ICLASS__CMHEADER;
+
+	/**
+	 * The feature id for the '<em><b>Is Class</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IASSOCIATION_CLASS__IS_CLASS = ICLASS_FEATURE_COUNT + 0;
+
+	/**
+	 * The feature id for the '<em><b>Mend1</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IASSOCIATION_CLASS__MEND1 = ICLASS_FEATURE_COUNT + 1;
+
+	/**
+	 * The feature id for the '<em><b>Mend2</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IASSOCIATION_CLASS__MEND2 = ICLASS_FEATURE_COUNT + 2;
+
+	/**
+	 * The number of structural features of the '<em>IAssociation Class</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IASSOCIATION_CLASS_FEATURE_COUNT = ICLASS_FEATURE_COUNT + 3;
+
+	/**
+	 * The operation id for the '<em>Get EAnnotation</em>' operation.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IASSOCIATION_CLASS___GET_EANNOTATION__STRING = ICLASS___GET_EANNOTATION__STRING;
+
+	/**
+	 * The number of operations of the '<em>IAssociation Class</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IASSOCIATION_CLASS_OPERATION_COUNT = ICLASS_OPERATION_COUNT + 0;
+
+	/**
+	 * The meta object id for the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IAssociationEndImpl <em>IAssociation End</em>}' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IAssociationEndImpl
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.UMLRpyPackageImpl#getIAssociationEnd()
+	 * @generated
+	 */
+	int IASSOCIATION_END = 78;
+
+	/**
+	 * The feature id for the '<em><b>Uml Dependency ID</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IASSOCIATION_END__UML_DEPENDENCY_ID = ASSOCIATIONS_TYPE_FEATURE_COUNT + 0;
+
+	/**
+	 * The feature id for the '<em><b>Object Creation</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IASSOCIATION_END__OBJECT_CREATION = ASSOCIATIONS_TYPE_FEATURE_COUNT + 1;
+
+	/**
+	 * The feature id for the '<em><b>Requiremen Tracability Handle</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IASSOCIATION_END__REQUIREMEN_TRACABILITY_HANDLE = ASSOCIATIONS_TYPE_FEATURE_COUNT + 2;
+
+	/**
+	 * The feature id for the '<em><b>Description</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IASSOCIATION_END__DESCRIPTION = ASSOCIATIONS_TYPE_FEATURE_COUNT + 3;
+
+	/**
+	 * The feature id for the '<em><b>Properties</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IASSOCIATION_END__PROPERTIES = ASSOCIATIONS_TYPE_FEATURE_COUNT + 4;
+
+	/**
+	 * The feature id for the '<em><b>Implicit Class</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IASSOCIATION_END__IMPLICIT_CLASS = ASSOCIATIONS_TYPE_FEATURE_COUNT + 5;
+
+	/**
+	 * The feature id for the '<em><b>EAnnotations</b></em>' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IASSOCIATION_END__EANNOTATIONS = ASSOCIATIONS_TYPE_FEATURE_COUNT + 6;
+
+	/**
+	 * The feature id for the '<em><b>Display Name</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IASSOCIATION_END__DISPLAY_NAME = ASSOCIATIONS_TYPE_FEATURE_COUNT + 7;
+
+	/**
+	 * The feature id for the '<em><b>Id</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IASSOCIATION_END__ID = ASSOCIATIONS_TYPE_FEATURE_COUNT + 8;
+
+	/**
+	 * The feature id for the '<em><b>My State</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IASSOCIATION_END__MY_STATE = ASSOCIATIONS_TYPE_FEATURE_COUNT + 9;
+
+	/**
+	 * The feature id for the '<em><b>Name</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IASSOCIATION_END__NAME = ASSOCIATIONS_TYPE_FEATURE_COUNT + 10;
+
+	/**
+	 * The feature id for the '<em><b>Multiplicity</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IASSOCIATION_END__MULTIPLICITY = ASSOCIATIONS_TYPE_FEATURE_COUNT + 11;
+
+	/**
+	 * The feature id for the '<em><b>Other Class</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IASSOCIATION_END__OTHER_CLASS = ASSOCIATIONS_TYPE_FEATURE_COUNT + 12;
+
+	/**
+	 * The feature id for the '<em><b>Link Name</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IASSOCIATION_END__LINK_NAME = ASSOCIATIONS_TYPE_FEATURE_COUNT + 13;
+
+	/**
+	 * The feature id for the '<em><b>Link Type</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IASSOCIATION_END__LINK_TYPE = ASSOCIATIONS_TYPE_FEATURE_COUNT + 14;
+
+	/**
+	 * The feature id for the '<em><b>Navigability</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IASSOCIATION_END__NAVIGABILITY = ASSOCIATIONS_TYPE_FEATURE_COUNT + 15;
+
+	/**
+	 * The feature id for the '<em><b>Inverse</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IASSOCIATION_END__INVERSE = ASSOCIATIONS_TYPE_FEATURE_COUNT + 16;
+
+	/**
+	 * The feature id for the '<em><b>Modified Time Weak</b></em>' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IASSOCIATION_END__MODIFIED_TIME_WEAK = ASSOCIATIONS_TYPE_FEATURE_COUNT + 17;
+
+	/**
+	 * The feature id for the '<em><b>Qualifiers</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IASSOCIATION_END__QUALIFIERS = ASSOCIATIONS_TYPE_FEATURE_COUNT + 18;
+
+	/**
+	 * The feature id for the '<em><b>Stereotypes</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IASSOCIATION_END__STEREOTYPES = ASSOCIATIONS_TYPE_FEATURE_COUNT + 19;
+
+	/**
+	 * The feature id for the '<em><b>Code Update CG Time</b></em>' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IASSOCIATION_END__CODE_UPDATE_CG_TIME = ASSOCIATIONS_TYPE_FEATURE_COUNT + 20;
+
+	/**
+	 * The feature id for the '<em><b>Qualifier Type</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IASSOCIATION_END__QUALIFIER_TYPE = ASSOCIATIONS_TYPE_FEATURE_COUNT + 21;
+
+	/**
+	 * The feature id for the '<em><b>Massociation Class</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IASSOCIATION_END__MASSOCIATION_CLASS = ASSOCIATIONS_TYPE_FEATURE_COUNT + 22;
+
+	/**
+	 * The number of structural features of the '<em>IAssociation End</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IASSOCIATION_END_FEATURE_COUNT = ASSOCIATIONS_TYPE_FEATURE_COUNT + 23;
+
+	/**
+	 * The operation id for the '<em>Get EAnnotation</em>' operation.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IASSOCIATION_END___GET_EANNOTATION__STRING = ASSOCIATIONS_TYPE_OPERATION_COUNT + 0;
+
+	/**
+	 * The number of operations of the '<em>IAssociation End</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IASSOCIATION_END_OPERATION_COUNT = ASSOCIATIONS_TYPE_OPERATION_COUNT + 1;
+
+	/**
+	 * The meta object id for the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IAssociationEndHandleImpl <em>IAssociation End Handle</em>}' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IAssociationEndHandleImpl
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.UMLRpyPackageImpl#getIAssociationEndHandle()
+	 * @generated
+	 */
+	int IASSOCIATION_END_HANDLE = 79;
+
+	/**
+	 * The feature id for the '<em><b>M2 Class</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IASSOCIATION_END_HANDLE__M2_CLASS = 0;
+
+	/**
+	 * The feature id for the '<em><b>Filename</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IASSOCIATION_END_HANDLE__FILENAME = 1;
+
+	/**
+	 * The feature id for the '<em><b>Subsystem</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IASSOCIATION_END_HANDLE__SUBSYSTEM = 2;
+
+	/**
+	 * The feature id for the '<em><b>Class</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IASSOCIATION_END_HANDLE__CLASS = 3;
+
+	/**
+	 * The feature id for the '<em><b>Name</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IASSOCIATION_END_HANDLE__NAME = 4;
+
+	/**
+	 * The feature id for the '<em><b>Id</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IASSOCIATION_END_HANDLE__ID = 5;
+
+	/**
+	 * The number of structural features of the '<em>IAssociation End Handle</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IASSOCIATION_END_HANDLE_FEATURE_COUNT = 6;
+
+	/**
+	 * The number of operations of the '<em>IAssociation End Handle</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IASSOCIATION_END_HANDLE_OPERATION_COUNT = 0;
+
+	/**
+	 * The meta object id for the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IAssociationRoleImpl <em>IAssociation Role</em>}' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IAssociationRoleImpl
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.UMLRpyPackageImpl#getIAssociationRole()
+	 * @generated
+	 */
+	int IASSOCIATION_ROLE = 80;
+
+	/**
+	 * The feature id for the '<em><b>EAnnotations</b></em>' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IASSOCIATION_ROLE__EANNOTATIONS = IMODEL_ELEMENT__EANNOTATIONS;
+
+	/**
+	 * The feature id for the '<em><b>Display Name</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IASSOCIATION_ROLE__DISPLAY_NAME = IMODEL_ELEMENT__DISPLAY_NAME;
+
+	/**
+	 * The feature id for the '<em><b>Id</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IASSOCIATION_ROLE__ID = IMODEL_ELEMENT_FEATURE_COUNT + 0;
+
+	/**
+	 * The feature id for the '<em><b>My State</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IASSOCIATION_ROLE__MY_STATE = IMODEL_ELEMENT_FEATURE_COUNT + 1;
+
+	/**
+	 * The feature id for the '<em><b>MfAssoc Type1</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IASSOCIATION_ROLE__MFASSOC_TYPE1 = IMODEL_ELEMENT_FEATURE_COUNT + 2;
+
+	/**
+	 * The feature id for the '<em><b>MfAssoc Type2</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IASSOCIATION_ROLE__MFASSOC_TYPE2 = IMODEL_ELEMENT_FEATURE_COUNT + 3;
+
+	/**
+	 * The feature id for the '<em><b>MpSource</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IASSOCIATION_ROLE__MPSOURCE = IMODEL_ELEMENT_FEATURE_COUNT + 4;
+
+	/**
+	 * The feature id for the '<em><b>MpTarget</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IASSOCIATION_ROLE__MPTARGET = IMODEL_ELEMENT_FEATURE_COUNT + 5;
+
+	/**
+	 * The feature id for the '<em><b>MpFormal Assoc1</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IASSOCIATION_ROLE__MPFORMAL_ASSOC1 = IMODEL_ELEMENT_FEATURE_COUNT + 6;
+
+	/**
+	 * The feature id for the '<em><b>MpFormal Assoc2</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IASSOCIATION_ROLE__MPFORMAL_ASSOC2 = IMODEL_ELEMENT_FEATURE_COUNT + 7;
+
+	/**
+	 * The feature id for the '<em><b>Name</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IASSOCIATION_ROLE__NAME = IMODEL_ELEMENT_FEATURE_COUNT + 8;
+
+	/**
+	 * The feature id for the '<em><b>Modified Time Weak</b></em>' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IASSOCIATION_ROLE__MODIFIED_TIME_WEAK = IMODEL_ELEMENT_FEATURE_COUNT + 9;
+
+	/**
+	 * The feature id for the '<em><b>Object Creation</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IASSOCIATION_ROLE__OBJECT_CREATION = IMODEL_ELEMENT_FEATURE_COUNT + 10;
+
+	/**
+	 * The feature id for the '<em><b>Uml Dependency ID</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IASSOCIATION_ROLE__UML_DEPENDENCY_ID = IMODEL_ELEMENT_FEATURE_COUNT + 11;
+
+	/**
+	 * The number of structural features of the '<em>IAssociation Role</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IASSOCIATION_ROLE_FEATURE_COUNT = IMODEL_ELEMENT_FEATURE_COUNT + 12;
+
+	/**
+	 * The operation id for the '<em>Get EAnnotation</em>' operation.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IASSOCIATION_ROLE___GET_EANNOTATION__STRING = IMODEL_ELEMENT___GET_EANNOTATION__STRING;
+
+	/**
+	 * The number of operations of the '<em>IAssociation Role</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IASSOCIATION_ROLE_OPERATION_COUNT = IMODEL_ELEMENT_OPERATION_COUNT + 0;
+
+	/**
+	 * The meta object id for the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IAttributeImpl <em>IAttribute</em>}' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IAttributeImpl
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.UMLRpyPackageImpl#getIAttribute()
+	 * @generated
+	 */
+	int IATTRIBUTE = 81;
+
+	/**
+	 * The feature id for the '<em><b>EAnnotations</b></em>' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IATTRIBUTE__EANNOTATIONS = IVARIABLE__EANNOTATIONS;
+
+	/**
+	 * The feature id for the '<em><b>Display Name</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IATTRIBUTE__DISPLAY_NAME = IVARIABLE__DISPLAY_NAME;
+
+	/**
+	 * The feature id for the '<em><b>Is Ordered</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IATTRIBUTE__IS_ORDERED = IVARIABLE__IS_ORDERED;
+
+	/**
+	 * The feature id for the '<em><b>My Type Of</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IATTRIBUTE__MY_TYPE_OF = IVARIABLE__MY_TYPE_OF;
+
+	/**
+	 * The feature id for the '<em><b>Uml Dependency ID</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IATTRIBUTE__UML_DEPENDENCY_ID = IVARIABLE_FEATURE_COUNT + 0;
+
+	/**
+	 * The feature id for the '<em><b>Object Creation</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IATTRIBUTE__OBJECT_CREATION = IVARIABLE_FEATURE_COUNT + 1;
+
+	/**
+	 * The feature id for the '<em><b>Modified Time Weak</b></em>' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IATTRIBUTE__MODIFIED_TIME_WEAK = IVARIABLE_FEATURE_COUNT + 2;
+
+	/**
+	 * The feature id for the '<em><b>Id</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IATTRIBUTE__ID = IVARIABLE_FEATURE_COUNT + 3;
+
+	/**
+	 * The feature id for the '<em><b>My State</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IATTRIBUTE__MY_STATE = IVARIABLE_FEATURE_COUNT + 4;
+
+	/**
+	 * The feature id for the '<em><b>Name</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IATTRIBUTE__NAME = IVARIABLE_FEATURE_COUNT + 5;
+
+	/**
+	 * The feature id for the '<em><b>Multiplicity</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IATTRIBUTE__MULTIPLICITY = IVARIABLE_FEATURE_COUNT + 6;
+
+	/**
+	 * The feature id for the '<em><b>Type Of</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IATTRIBUTE__TYPE_OF = IVARIABLE_FEATURE_COUNT + 7;
+
+	/**
+	 * The feature id for the '<em><b>Protection</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IATTRIBUTE__PROTECTION = IVARIABLE_FEATURE_COUNT + 8;
+
+	/**
+	 * The feature id for the '<em><b>Static</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IATTRIBUTE__STATIC = IVARIABLE_FEATURE_COUNT + 9;
+
+	/**
+	 * The feature id for the '<em><b>Is Reference</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IATTRIBUTE__IS_REFERENCE = IVARIABLE_FEATURE_COUNT + 10;
+
+	/**
+	 * The feature id for the '<em><b>Is Constant</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IATTRIBUTE__IS_CONSTANT = IVARIABLE_FEATURE_COUNT + 11;
+
+	/**
+	 * The feature id for the '<em><b>Stereotypes</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IATTRIBUTE__STEREOTYPES = IVARIABLE_FEATURE_COUNT + 12;
+
+	/**
+	 * The feature id for the '<em><b>Value Specifications</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IATTRIBUTE__VALUE_SPECIFICATIONS = IVARIABLE_FEATURE_COUNT + 13;
+
+	/**
+	 * The feature id for the '<em><b>Properties</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IATTRIBUTE__PROPERTIES = IVARIABLE_FEATURE_COUNT + 14;
+
+	/**
+	 * The feature id for the '<em><b>Description</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IATTRIBUTE__DESCRIPTION = IVARIABLE_FEATURE_COUNT + 15;
+
+	/**
+	 * The feature id for the '<em><b>Tags</b></em>' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IATTRIBUTE__TAGS = IVARIABLE_FEATURE_COUNT + 16;
+
+	/**
+	 * The feature id for the '<em><b>Default Value</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IATTRIBUTE__DEFAULT_VALUE = IVARIABLE_FEATURE_COUNT + 17;
+
+	/**
+	 * The feature id for the '<em><b>Dependencies</b></em>' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IATTRIBUTE__DEPENDENCIES = IVARIABLE_FEATURE_COUNT + 18;
+
+	/**
+	 * The feature id for the '<em><b>Last ID</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IATTRIBUTE__LAST_ID = IVARIABLE_FEATURE_COUNT + 19;
+
+	/**
+	 * The feature id for the '<em><b>Annotations</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IATTRIBUTE__ANNOTATIONS = IVARIABLE_FEATURE_COUNT + 20;
+
+	/**
+	 * The feature id for the '<em><b>Requiremen Tracability Handle</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IATTRIBUTE__REQUIREMEN_TRACABILITY_HANDLE = IVARIABLE_FEATURE_COUNT + 21;
+
+	/**
+	 * The feature id for the '<em><b>Code Update CG Time</b></em>' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IATTRIBUTE__CODE_UPDATE_CG_TIME = IVARIABLE_FEATURE_COUNT + 22;
+
+	/**
+	 * The feature id for the '<em><b>The Main Diagram</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IATTRIBUTE__THE_MAIN_DIAGRAM = IVARIABLE_FEATURE_COUNT + 23;
+
+	/**
+	 * The number of structural features of the '<em>IAttribute</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IATTRIBUTE_FEATURE_COUNT = IVARIABLE_FEATURE_COUNT + 24;
+
+	/**
+	 * The operation id for the '<em>Get EAnnotation</em>' operation.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IATTRIBUTE___GET_EANNOTATION__STRING = IVARIABLE___GET_EANNOTATION__STRING;
+
+	/**
+	 * The number of operations of the '<em>IAttribute</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IATTRIBUTE_OPERATION_COUNT = IVARIABLE_OPERATION_COUNT + 0;
+
+	/**
+	 * The meta object id for the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IBlockImpl <em>IBlock</em>}' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IBlockImpl
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.UMLRpyPackageImpl#getIBlock()
+	 * @generated
+	 */
+	int IBLOCK = 82;
+
+	/**
+	 * The feature id for the '<em><b>Implicit Class</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IBLOCK__IMPLICIT_CLASS = ASSOCIATIONS_TYPE_FEATURE_COUNT + 0;
+
+	/**
+	 * The feature id for the '<em><b>Multiplicity</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IBLOCK__MULTIPLICITY = ASSOCIATIONS_TYPE_FEATURE_COUNT + 1;
+
+	/**
+	 * The feature id for the '<em><b>Id</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IBLOCK__ID = ASSOCIATIONS_TYPE_FEATURE_COUNT + 2;
+
+	/**
+	 * The feature id for the '<em><b>My State</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IBLOCK__MY_STATE = ASSOCIATIONS_TYPE_FEATURE_COUNT + 3;
+
+	/**
+	 * The feature id for the '<em><b>Name</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IBLOCK__NAME = ASSOCIATIONS_TYPE_FEATURE_COUNT + 4;
+
+	/**
+	 * The feature id for the '<em><b>Object Creation</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IBLOCK__OBJECT_CREATION = ASSOCIATIONS_TYPE_FEATURE_COUNT + 5;
+
+	/**
+	 * The feature id for the '<em><b>Uml Dependency ID</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IBLOCK__UML_DEPENDENCY_ID = ASSOCIATIONS_TYPE_FEATURE_COUNT + 6;
+
+	/**
+	 * The feature id for the '<em><b>Other Class</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IBLOCK__OTHER_CLASS = ASSOCIATIONS_TYPE_FEATURE_COUNT + 7;
+
+	/**
+	 * The feature id for the '<em><b>Inverse</b></em>' reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IBLOCK__INVERSE = ASSOCIATIONS_TYPE_FEATURE_COUNT + 8;
+
+	/**
+	 * The feature id for the '<em><b>Part Kind</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IBLOCK__PART_KIND = ASSOCIATIONS_TYPE_FEATURE_COUNT + 9;
+
+	/**
+	 * The number of structural features of the '<em>IBlock</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IBLOCK_FEATURE_COUNT = ASSOCIATIONS_TYPE_FEATURE_COUNT + 10;
+
+	/**
+	 * The number of operations of the '<em>IBlock</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IBLOCK_OPERATION_COUNT = ASSOCIATIONS_TYPE_OPERATION_COUNT + 0;
+
+	/**
+	 * The meta object id for the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IBodyImpl <em>IBody</em>}' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IBodyImpl
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.UMLRpyPackageImpl#getIBody()
+	 * @generated
+	 */
+	int IBODY = 83;
+
+	/**
+	 * The feature id for the '<em><b>Body Data</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IBODY__BODY_DATA = 0;
+
+	/**
+	 * The number of structural features of the '<em>IBody</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IBODY_FEATURE_COUNT = 1;
+
+	/**
+	 * The number of operations of the '<em>IBody</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IBODY_OPERATION_COUNT = 0;
+
+	/**
+	 * The meta object id for the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.ItsTargetTypeImpl <em>Its Target Type</em>}' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.ItsTargetTypeImpl
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.UMLRpyPackageImpl#getItsTargetType()
+	 * @generated
+	 */
+	int ITS_TARGET_TYPE = 220;
+
+	/**
+	 * The number of structural features of the '<em>Its Target Type</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ITS_TARGET_TYPE_FEATURE_COUNT = 0;
+
+	/**
+	 * The number of operations of the '<em>Its Target Type</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ITS_TARGET_TYPE_OPERATION_COUNT = 0;
+
+	/**
+	 * The meta object id for the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IBranchImpl <em>IBranch</em>}' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IBranchImpl
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.UMLRpyPackageImpl#getIBranch()
+	 * @generated
+	 */
+	int IBRANCH = 84;
+
+	/**
+	 * The feature id for the '<em><b>Id</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IBRANCH__ID = ITS_TARGET_TYPE_FEATURE_COUNT + 0;
+
+	/**
+	 * The feature id for the '<em><b>Name</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IBRANCH__NAME = ITS_TARGET_TYPE_FEATURE_COUNT + 1;
+
+	/**
+	 * The feature id for the '<em><b>Modified Time Weak</b></em>' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IBRANCH__MODIFIED_TIME_WEAK = ITS_TARGET_TYPE_FEATURE_COUNT + 2;
+
+	/**
+	 * The feature id for the '<em><b>Parent</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IBRANCH__PARENT = ITS_TARGET_TYPE_FEATURE_COUNT + 3;
+
+	/**
+	 * The feature id for the '<em><b>Connector Type</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IBRANCH__CONNECTOR_TYPE = ITS_TARGET_TYPE_FEATURE_COUNT + 4;
+
+	/**
+	 * The feature id for the '<em><b>My State</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IBRANCH__MY_STATE = ITS_TARGET_TYPE_FEATURE_COUNT + 5;
+
+	/**
+	 * The feature id for the '<em><b>Stereotypes</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IBRANCH__STEREOTYPES = ITS_TARGET_TYPE_FEATURE_COUNT + 6;
+
+	/**
+	 * The feature id for the '<em><b>Code Update CG Time</b></em>' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IBRANCH__CODE_UPDATE_CG_TIME = ITS_TARGET_TYPE_FEATURE_COUNT + 7;
+
+	/**
+	 * The feature id for the '<em><b>Object Creation</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IBRANCH__OBJECT_CREATION = ITS_TARGET_TYPE_FEATURE_COUNT + 8;
+
+	/**
+	 * The feature id for the '<em><b>Uml Dependency ID</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IBRANCH__UML_DEPENDENCY_ID = ITS_TARGET_TYPE_FEATURE_COUNT + 9;
+
+	/**
+	 * The number of structural features of the '<em>IBranch</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IBRANCH_FEATURE_COUNT = ITS_TARGET_TYPE_FEATURE_COUNT + 10;
+
+	/**
+	 * The number of operations of the '<em>IBranch</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IBRANCH_OPERATION_COUNT = ITS_TARGET_TYPE_OPERATION_COUNT + 0;
+
+	/**
+	 * The meta object id for the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.ICallActionImpl <em>ICall Action</em>}' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.ICallActionImpl
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.UMLRpyPackageImpl#getICallAction()
+	 * @generated
+	 */
+	int ICALL_ACTION = 85;
+
+	/**
+	 * The feature id for the '<em><b>Id</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ICALL_ACTION__ID = 0;
+
+	/**
+	 * The feature id for the '<em><b>Modified Time Weak</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ICALL_ACTION__MODIFIED_TIME_WEAK = 1;
+
+	/**
+	 * The feature id for the '<em><b>Interface Item</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ICALL_ACTION__INTERFACE_ITEM = 2;
+
+	/**
+	 * The feature id for the '<em><b>Argument Names</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ICALL_ACTION__ARGUMENT_NAMES = 3;
+
+	/**
+	 * The feature id for the '<em><b>Argument Values</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ICALL_ACTION__ARGUMENT_VALUES = 4;
+
+	/**
+	 * The number of structural features of the '<em>ICall Action</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ICALL_ACTION_FEATURE_COUNT = 5;
+
+	/**
+	 * The number of operations of the '<em>ICall Action</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ICALL_ACTION_OPERATION_COUNT = 0;
+
+	/**
+	 * The meta object id for the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.ICallOperationImpl <em>ICall Operation</em>}' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.ICallOperationImpl
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.UMLRpyPackageImpl#getICallOperation()
+	 * @generated
+	 */
+	int ICALL_OPERATION = 86;
+
+	/**
+	 * The feature id for the '<em><b>EAnnotations</b></em>' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ICALL_OPERATION__EANNOTATIONS = ISTATE__EANNOTATIONS;
+
+	/**
+	 * The feature id for the '<em><b>Display Name</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ICALL_OPERATION__DISPLAY_NAME = ISTATE__DISPLAY_NAME;
+
+	/**
+	 * The feature id for the '<em><b>Modified Time Weak</b></em>' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ICALL_OPERATION__MODIFIED_TIME_WEAK = ISTATE__MODIFIED_TIME_WEAK;
+
+	/**
+	 * The feature id for the '<em><b>Id</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ICALL_OPERATION__ID = ISTATE__ID;
+
+	/**
+	 * The feature id for the '<em><b>Description</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ICALL_OPERATION__DESCRIPTION = ISTATE__DESCRIPTION;
+
+	/**
+	 * The feature id for the '<em><b>Uml Dependency ID</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ICALL_OPERATION__UML_DEPENDENCY_ID = ISTATE__UML_DEPENDENCY_ID;
+
+	/**
+	 * The feature id for the '<em><b>My State</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ICALL_OPERATION__MY_STATE = ISTATE__MY_STATE;
+
+	/**
+	 * The feature id for the '<em><b>Stereotypes</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ICALL_OPERATION__STEREOTYPES = ISTATE__STEREOTYPES;
+
+	/**
+	 * The feature id for the '<em><b>Object Creation</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ICALL_OPERATION__OBJECT_CREATION = ISTATE__OBJECT_CREATION;
+
+	/**
+	 * The feature id for the '<em><b>Name</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ICALL_OPERATION__NAME = ISTATE__NAME;
+
+	/**
+	 * The feature id for the '<em><b>Parent</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ICALL_OPERATION__PARENT = ISTATE__PARENT;
+
+	/**
+	 * The feature id for the '<em><b>State Type</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ICALL_OPERATION__STATE_TYPE = ISTATE__STATE_TYPE;
+
+	/**
+	 * The feature id for the '<em><b>Default Trans</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ICALL_OPERATION__DEFAULT_TRANS = ISTATE__DEFAULT_TRANS;
+
+	/**
+	 * The feature id for the '<em><b>Entry Action</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ICALL_OPERATION__ENTRY_ACTION = ISTATE__ENTRY_ACTION;
+
+	/**
+	 * The feature id for the '<em><b>Inherits From Handle</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ICALL_OPERATION__INHERITS_FROM_HANDLE = ISTATE__INHERITS_FROM_HANDLE;
+
+	/**
+	 * The feature id for the '<em><b>Exit Action</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ICALL_OPERATION__EXIT_ACTION = ISTATE__EXIT_ACTION;
+
+	/**
+	 * The feature id for the '<em><b>Nested State Chart</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ICALL_OPERATION__NESTED_STATE_CHART = ISTATE__NESTED_STATE_CHART;
+
+	/**
+	 * The feature id for the '<em><b>Requiremen Tracability Handle</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ICALL_OPERATION__REQUIREMEN_TRACABILITY_HANDLE = ISTATE__REQUIREMEN_TRACABILITY_HANDLE;
+
+	/**
+	 * The feature id for the '<em><b>Annotations</b></em>' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ICALL_OPERATION__ANNOTATIONS = ISTATE__ANNOTATIONS;
+
+	/**
+	 * The feature id for the '<em><b>Dependencies</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ICALL_OPERATION__DEPENDENCIES = ISTATE__DEPENDENCIES;
+
+	/**
+	 * The feature id for the '<em><b>The Main Diagram</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ICALL_OPERATION__THE_MAIN_DIAGRAM = ISTATE__THE_MAIN_DIAGRAM;
+
+	/**
+	 * The feature id for the '<em><b>Swimlane</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ICALL_OPERATION__SWIMLANE = ISTATE__SWIMLANE;
+
+	/**
+	 * The feature id for the '<em><b>Code Update CG Time</b></em>' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ICALL_OPERATION__CODE_UPDATE_CG_TIME = ISTATE__CODE_UPDATE_CG_TIME;
+
+	/**
+	 * The feature id for the '<em><b>Operation</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ICALL_OPERATION__OPERATION = ISTATE_FEATURE_COUNT + 0;
+
+	/**
+	 * The feature id for the '<em><b>Target</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ICALL_OPERATION__TARGET = ISTATE_FEATURE_COUNT + 1;
+
+	/**
+	 * The number of structural features of the '<em>ICall Operation</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ICALL_OPERATION_FEATURE_COUNT = ISTATE_FEATURE_COUNT + 2;
+
+	/**
+	 * The operation id for the '<em>Get EAnnotation</em>' operation.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ICALL_OPERATION___GET_EANNOTATION__STRING = ISTATE___GET_EANNOTATION__STRING;
+
+	/**
+	 * The number of operations of the '<em>ICall Operation</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ICALL_OPERATION_OPERATION_COUNT = ISTATE_OPERATION_COUNT + 0;
+
+	/**
+	 * The meta object id for the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.M_pBaseTypeImpl <em>MpBase Type</em>}' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.M_pBaseTypeImpl
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.UMLRpyPackageImpl#getM_pBaseType()
+	 * @generated
+	 */
+	int MPBASE_TYPE = 224;
+
+	/**
+	 * The number of structural features of the '<em>MpBase Type</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int MPBASE_TYPE_FEATURE_COUNT = MPMODEL_OBJECT_TYPE_FEATURE_COUNT + 0;
+
+	/**
+	 * The number of operations of the '<em>MpBase Type</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int MPBASE_TYPE_OPERATION_COUNT = MPMODEL_OBJECT_TYPE_OPERATION_COUNT + 0;
+
+	/**
+	 * The meta object id for the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IClassHandleImpl <em>IClass Handle</em>}' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IClassHandleImpl
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.UMLRpyPackageImpl#getIClassHandle()
+	 * @generated
+	 */
+	int ICLASS_HANDLE = 88;
+
+	/**
+	 * The feature id for the '<em><b>M2 Class</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ICLASS_HANDLE__M2_CLASS = MPBASE_TYPE_FEATURE_COUNT + 0;
+
+	/**
+	 * The feature id for the '<em><b>Id</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ICLASS_HANDLE__ID = MPBASE_TYPE_FEATURE_COUNT + 1;
+
+	/**
+	 * The feature id for the '<em><b>Filename</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ICLASS_HANDLE__FILENAME = MPBASE_TYPE_FEATURE_COUNT + 2;
+
+	/**
+	 * The feature id for the '<em><b>Subsystem</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ICLASS_HANDLE__SUBSYSTEM = MPBASE_TYPE_FEATURE_COUNT + 3;
+
+	/**
+	 * The feature id for the '<em><b>Class</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ICLASS_HANDLE__CLASS = MPBASE_TYPE_FEATURE_COUNT + 4;
+
+	/**
+	 * The feature id for the '<em><b>Name</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ICLASS_HANDLE__NAME = MPBASE_TYPE_FEATURE_COUNT + 5;
+
+	/**
+	 * The number of structural features of the '<em>IClass Handle</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ICLASS_HANDLE_FEATURE_COUNT = MPBASE_TYPE_FEATURE_COUNT + 6;
+
+	/**
+	 * The number of operations of the '<em>IClass Handle</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ICLASS_HANDLE_OPERATION_COUNT = MPBASE_TYPE_OPERATION_COUNT + 0;
+
+	/**
+	 * The meta object id for the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.LinksTypeImpl <em>Links Type</em>}' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.LinksTypeImpl
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.UMLRpyPackageImpl#getLinksType()
+	 * @generated
+	 */
+	int LINKS_TYPE = 222;
+
+	/**
+	 * The feature id for the '<em><b>Id</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int LINKS_TYPE__ID = 0;
+
+	/**
+	 * The feature id for the '<em><b>Multiplicity</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int LINKS_TYPE__MULTIPLICITY = 1;
+
+	/**
+	 * The feature id for the '<em><b>Name</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int LINKS_TYPE__NAME = 2;
+
+	/**
+	 * The feature id for the '<em><b>Other Class</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int LINKS_TYPE__OTHER_CLASS = 3;
+
+	/**
+	 * The number of structural features of the '<em>Links Type</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int LINKS_TYPE_FEATURE_COUNT = 4;
+
+	/**
+	 * The number of operations of the '<em>Links Type</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int LINKS_TYPE_OPERATION_COUNT = 0;
+
+	/**
+	 * The meta object id for the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IClassInstanceImpl <em>IClass Instance</em>}' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IClassInstanceImpl
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.UMLRpyPackageImpl#getIClassInstance()
+	 * @generated
+	 */
+	int ICLASS_INSTANCE = 89;
+
+	/**
+	 * The feature id for the '<em><b>Id</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ICLASS_INSTANCE__ID = LINKS_TYPE__ID;
+
+	/**
+	 * The feature id for the '<em><b>Multiplicity</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ICLASS_INSTANCE__MULTIPLICITY = LINKS_TYPE__MULTIPLICITY;
+
+	/**
+	 * The feature id for the '<em><b>Name</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ICLASS_INSTANCE__NAME = LINKS_TYPE__NAME;
+
+	/**
+	 * The feature id for the '<em><b>Other Class</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ICLASS_INSTANCE__OTHER_CLASS = LINKS_TYPE__OTHER_CLASS;
+
+	/**
+	 * The feature id for the '<em><b>Inverse</b></em>' reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ICLASS_INSTANCE__INVERSE = LINKS_TYPE_FEATURE_COUNT + 0;
+
+	/**
+	 * The number of structural features of the '<em>IClass Instance</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ICLASS_INSTANCE_FEATURE_COUNT = LINKS_TYPE_FEATURE_COUNT + 1;
+
+	/**
+	 * The number of operations of the '<em>IClass Instance</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ICLASS_INSTANCE_OPERATION_COUNT = LINKS_TYPE_OPERATION_COUNT + 0;
+
+	/**
+	 * The meta object id for the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IClassifierRoleImpl <em>IClassifier Role</em>}' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IClassifierRoleImpl
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.UMLRpyPackageImpl#getIClassifierRole()
+	 * @generated
+	 */
+	int ICLASSIFIER_ROLE = 91;
+
+	/**
+	 * The feature id for the '<em><b>EAnnotations</b></em>' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ICLASSIFIER_ROLE__EANNOTATIONS = IMODEL_ELEMENT__EANNOTATIONS;
+
+	/**
+	 * The feature id for the '<em><b>Display Name</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ICLASSIFIER_ROLE__DISPLAY_NAME = IMODEL_ELEMENT__DISPLAY_NAME;
+
+	/**
+	 * The feature id for the '<em><b>Id</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ICLASSIFIER_ROLE__ID = IMODEL_ELEMENT_FEATURE_COUNT + 0;
+
+	/**
+	 * The feature id for the '<em><b>Name</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ICLASSIFIER_ROLE__NAME = IMODEL_ELEMENT_FEATURE_COUNT + 1;
+
+	/**
+	 * The feature id for the '<em><b>MeRole Type</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ICLASSIFIER_ROLE__MEROLE_TYPE = IMODEL_ELEMENT_FEATURE_COUNT + 2;
+
+	/**
+	 * The feature id for the '<em><b>My State</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ICLASSIFIER_ROLE__MY_STATE = IMODEL_ELEMENT_FEATURE_COUNT + 3;
+
+	/**
+	 * The feature id for the '<em><b>MpBase</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ICLASSIFIER_ROLE__MPBASE = IMODEL_ELEMENT_FEATURE_COUNT + 4;
+
+	/**
+	 * The feature id for the '<em><b>Minstance</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ICLASSIFIER_ROLE__MINSTANCE = IMODEL_ELEMENT_FEATURE_COUNT + 5;
+
+	/**
+	 * The feature id for the '<em><b>Properties</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ICLASSIFIER_ROLE__PROPERTIES = IMODEL_ELEMENT_FEATURE_COUNT + 6;
+
+	/**
+	 * The feature id for the '<em><b>Modified Time Weak</b></em>' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ICLASSIFIER_ROLE__MODIFIED_TIME_WEAK = IMODEL_ELEMENT_FEATURE_COUNT + 7;
+
+	/**
+	 * The feature id for the '<em><b>MpRef SD</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ICLASSIFIER_ROLE__MPREF_SD = IMODEL_ELEMENT_FEATURE_COUNT + 8;
+
+	/**
+	 * The feature id for the '<em><b>Code Update CG Time</b></em>' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ICLASSIFIER_ROLE__CODE_UPDATE_CG_TIME = IMODEL_ELEMENT_FEATURE_COUNT + 9;
+
+	/**
+	 * The feature id for the '<em><b>Stereotypes</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ICLASSIFIER_ROLE__STEREOTYPES = IMODEL_ELEMENT_FEATURE_COUNT + 10;
+
+	/**
+	 * The feature id for the '<em><b>Object Creation</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ICLASSIFIER_ROLE__OBJECT_CREATION = IMODEL_ELEMENT_FEATURE_COUNT + 11;
+
+	/**
+	 * The feature id for the '<em><b>Uml Dependency ID</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ICLASSIFIER_ROLE__UML_DEPENDENCY_ID = IMODEL_ELEMENT_FEATURE_COUNT + 12;
+
+	/**
+	 * The number of structural features of the '<em>IClassifier Role</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ICLASSIFIER_ROLE_FEATURE_COUNT = IMODEL_ELEMENT_FEATURE_COUNT + 13;
+
+	/**
+	 * The operation id for the '<em>Get EAnnotation</em>' operation.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ICLASSIFIER_ROLE___GET_EANNOTATION__STRING = IMODEL_ELEMENT___GET_EANNOTATION__STRING;
+
+	/**
+	 * The number of operations of the '<em>IClassifier Role</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ICLASSIFIER_ROLE_OPERATION_COUNT = IMODEL_ELEMENT_OPERATION_COUNT + 0;
+
+	/**
+	 * The meta object id for the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.ICodeGenConfigInfoImpl <em>ICode Gen Config Info</em>}' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.ICodeGenConfigInfoImpl
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.UMLRpyPackageImpl#getICodeGenConfigInfo()
+	 * @generated
+	 */
+	int ICODE_GEN_CONFIG_INFO = 92;
+
+	/**
+	 * The feature id for the '<em><b>Id</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ICODE_GEN_CONFIG_INFO__ID = DEPENDS_ON_TYPE_FEATURE_COUNT + 0;
+
+	/**
+	 * The feature id for the '<em><b>My State</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ICODE_GEN_CONFIG_INFO__MY_STATE = DEPENDS_ON_TYPE_FEATURE_COUNT + 1;
+
+	/**
+	 * The feature id for the '<em><b>Name</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ICODE_GEN_CONFIG_INFO__NAME = DEPENDS_ON_TYPE_FEATURE_COUNT + 2;
+
+	/**
+	 * The feature id for the '<em><b>Modified Time Weak</b></em>' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ICODE_GEN_CONFIG_INFO__MODIFIED_TIME_WEAK = DEPENDS_ON_TYPE_FEATURE_COUNT + 3;
+
+	/**
+	 * The feature id for the '<em><b>Hyper Links</b></em>' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ICODE_GEN_CONFIG_INFO__HYPER_LINKS = DEPENDS_ON_TYPE_FEATURE_COUNT + 4;
+
+	/**
+	 * The feature id for the '<em><b>Scope Type</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ICODE_GEN_CONFIG_INFO__SCOPE_TYPE = DEPENDS_ON_TYPE_FEATURE_COUNT + 5;
+
+	/**
+	 * The feature id for the '<em><b>Libraries</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ICODE_GEN_CONFIG_INFO__LIBRARIES = DEPENDS_ON_TYPE_FEATURE_COUNT + 6;
+
+	/**
+	 * The feature id for the '<em><b>Additional Sources</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ICODE_GEN_CONFIG_INFO__ADDITIONAL_SOURCES = DEPENDS_ON_TYPE_FEATURE_COUNT + 7;
+
+	/**
+	 * The feature id for the '<em><b>Standard Headers</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ICODE_GEN_CONFIG_INFO__STANDARD_HEADERS = DEPENDS_ON_TYPE_FEATURE_COUNT + 8;
+
+	/**
+	 * The feature id for the '<em><b>Include Path</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ICODE_GEN_CONFIG_INFO__INCLUDE_PATH = DEPENDS_ON_TYPE_FEATURE_COUNT + 9;
+
+	/**
+	 * The feature id for the '<em><b>Target Main</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ICODE_GEN_CONFIG_INFO__TARGET_MAIN = DEPENDS_ON_TYPE_FEATURE_COUNT + 10;
+
+	/**
+	 * The feature id for the '<em><b>Instrumentation</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ICODE_GEN_CONFIG_INFO__INSTRUMENTATION = DEPENDS_ON_TYPE_FEATURE_COUNT + 11;
+
+	/**
+	 * The feature id for the '<em><b>Time Model</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ICODE_GEN_CONFIG_INFO__TIME_MODEL = DEPENDS_ON_TYPE_FEATURE_COUNT + 12;
+
+	/**
+	 * The feature id for the '<em><b>Mgenerate Actors</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ICODE_GEN_CONFIG_INFO__MGENERATE_ACTORS = DEPENDS_ON_TYPE_FEATURE_COUNT + 13;
+
+	/**
+	 * The feature id for the '<em><b>Statechart Implementation</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ICODE_GEN_CONFIG_INFO__STATECHART_IMPLEMENTATION = DEPENDS_ON_TYPE_FEATURE_COUNT + 14;
+
+	/**
+	 * The feature id for the '<em><b>Initialization Code</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ICODE_GEN_CONFIG_INFO__INITIALIZATION_CODE = DEPENDS_ON_TYPE_FEATURE_COUNT + 15;
+
+	/**
+	 * The feature id for the '<em><b>Checks List</b></em>' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ICODE_GEN_CONFIG_INFO__CHECKS_LIST = DEPENDS_ON_TYPE_FEATURE_COUNT + 16;
+
+	/**
+	 * The feature id for the '<em><b>Scope Elements</b></em>' reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ICODE_GEN_CONFIG_INFO__SCOPE_ELEMENTS = DEPENDS_ON_TYPE_FEATURE_COUNT + 17;
+
+	/**
+	 * The feature id for the '<em><b>Root</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ICODE_GEN_CONFIG_INFO__ROOT = DEPENDS_ON_TYPE_FEATURE_COUNT + 18;
+
+	/**
+	 * The feature id for the '<em><b>Weak CG Time</b></em>' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ICODE_GEN_CONFIG_INFO__WEAK_CG_TIME = DEPENDS_ON_TYPE_FEATURE_COUNT + 19;
+
+	/**
+	 * The feature id for the '<em><b>Strong CG Time</b></em>' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ICODE_GEN_CONFIG_INFO__STRONG_CG_TIME = DEPENDS_ON_TYPE_FEATURE_COUNT + 20;
+
+	/**
+	 * The feature id for the '<em><b>Mall In Anim Scope</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ICODE_GEN_CONFIG_INFO__MALL_IN_ANIM_SCOPE = DEPENDS_ON_TYPE_FEATURE_COUNT + 21;
+
+	/**
+	 * The feature id for the '<em><b>Mgenerate Usecases</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ICODE_GEN_CONFIG_INFO__MGENERATE_USECASES = DEPENDS_ON_TYPE_FEATURE_COUNT + 22;
+
+	/**
+	 * The feature id for the '<em><b>Dependencies</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ICODE_GEN_CONFIG_INFO__DEPENDENCIES = DEPENDS_ON_TYPE_FEATURE_COUNT + 23;
+
+	/**
+	 * The feature id for the '<em><b>Initial Instances</b></em>' reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ICODE_GEN_CONFIG_INFO__INITIAL_INSTANCES = DEPENDS_ON_TYPE_FEATURE_COUNT + 24;
+
+	/**
+	 * The feature id for the '<em><b>Properties</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ICODE_GEN_CONFIG_INFO__PROPERTIES = DEPENDS_ON_TYPE_FEATURE_COUNT + 25;
+
+	/**
+	 * The feature id for the '<em><b>Annotations</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ICODE_GEN_CONFIG_INFO__ANNOTATIONS = DEPENDS_ON_TYPE_FEATURE_COUNT + 26;
+
+	/**
+	 * The feature id for the '<em><b>Last ID</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ICODE_GEN_CONFIG_INFO__LAST_ID = DEPENDS_ON_TYPE_FEATURE_COUNT + 27;
+
+	/**
+	 * The feature id for the '<em><b>Description</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ICODE_GEN_CONFIG_INFO__DESCRIPTION = DEPENDS_ON_TYPE_FEATURE_COUNT + 28;
+
+	/**
+	 * The feature id for the '<em><b>Tags</b></em>' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ICODE_GEN_CONFIG_INFO__TAGS = DEPENDS_ON_TYPE_FEATURE_COUNT + 29;
+
+	/**
+	 * The feature id for the '<em><b>Cmheader</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ICODE_GEN_CONFIG_INFO__CMHEADER = DEPENDS_ON_TYPE_FEATURE_COUNT + 30;
+
+	/**
+	 * The feature id for the '<em><b>Requiremen Tracability Handle</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ICODE_GEN_CONFIG_INFO__REQUIREMEN_TRACABILITY_HANDLE = DEPENDS_ON_TYPE_FEATURE_COUNT + 31;
+
+	/**
+	 * The feature id for the '<em><b>Stereotypes</b></em>' reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ICODE_GEN_CONFIG_INFO__STEREOTYPES = DEPENDS_ON_TYPE_FEATURE_COUNT + 32;
+
+	/**
+	 * The feature id for the '<em><b>Code Update CG Time</b></em>' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ICODE_GEN_CONFIG_INFO__CODE_UPDATE_CG_TIME = DEPENDS_ON_TYPE_FEATURE_COUNT + 33;
+
+	/**
+	 * The feature id for the '<em><b>Anim Scope Elements</b></em>' reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ICODE_GEN_CONFIG_INFO__ANIM_SCOPE_ELEMENTS = DEPENDS_ON_TYPE_FEATURE_COUNT + 34;
+
+	/**
+	 * The feature id for the '<em><b>Embeded Files</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ICODE_GEN_CONFIG_INFO__EMBEDED_FILES = DEPENDS_ON_TYPE_FEATURE_COUNT + 35;
+
+	/**
+	 * The feature id for the '<em><b>Object Creation</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ICODE_GEN_CONFIG_INFO__OBJECT_CREATION = DEPENDS_ON_TYPE_FEATURE_COUNT + 36;
+
+	/**
+	 * The feature id for the '<em><b>Uml Dependency ID</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ICODE_GEN_CONFIG_INFO__UML_DEPENDENCY_ID = DEPENDS_ON_TYPE_FEATURE_COUNT + 37;
+
+	/**
+	 * The number of structural features of the '<em>ICode Gen Config Info</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ICODE_GEN_CONFIG_INFO_FEATURE_COUNT = DEPENDS_ON_TYPE_FEATURE_COUNT + 38;
+
+	/**
+	 * The number of operations of the '<em>ICode Gen Config Info</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ICODE_GEN_CONFIG_INFO_OPERATION_COUNT = DEPENDS_ON_TYPE_OPERATION_COUNT + 0;
+
+	/**
+	 * The meta object id for the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.ICodeGenConfigInfoHandleImpl <em>ICode Gen Config Info Handle</em>}' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.ICodeGenConfigInfoHandleImpl
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.UMLRpyPackageImpl#getICodeGenConfigInfoHandle()
+	 * @generated
+	 */
+	int ICODE_GEN_CONFIG_INFO_HANDLE = 93;
+
+	/**
+	 * The feature id for the '<em><b>M2 Class</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ICODE_GEN_CONFIG_INFO_HANDLE__M2_CLASS = 0;
+
+	/**
+	 * The feature id for the '<em><b>Id</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ICODE_GEN_CONFIG_INFO_HANDLE__ID = 1;
+
+	/**
+	 * The number of structural features of the '<em>ICode Gen Config Info Handle</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ICODE_GEN_CONFIG_INFO_HANDLE_FEATURE_COUNT = 2;
+
+	/**
+	 * The number of operations of the '<em>ICode Gen Config Info Handle</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ICODE_GEN_CONFIG_INFO_HANDLE_OPERATION_COUNT = 0;
+
+	/**
+	 * The meta object id for the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.ICollaborationImpl <em>ICollaboration</em>}' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.ICollaborationImpl
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.UMLRpyPackageImpl#getICollaboration()
+	 * @generated
+	 */
+	int ICOLLABORATION = 94;
+
+	/**
+	 * The feature id for the '<em><b>EAnnotations</b></em>' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ICOLLABORATION__EANNOTATIONS = IMODEL_ELEMENT__EANNOTATIONS;
+
+	/**
+	 * The feature id for the '<em><b>Display Name</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ICOLLABORATION__DISPLAY_NAME = IMODEL_ELEMENT__DISPLAY_NAME;
+
+	/**
+	 * The feature id for the '<em><b>Id</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ICOLLABORATION__ID = IMODEL_ELEMENT_FEATURE_COUNT + 0;
+
+	/**
+	 * The feature id for the '<em><b>Classifier Roles</b></em>' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ICOLLABORATION__CLASSIFIER_ROLES = IMODEL_ELEMENT_FEATURE_COUNT + 1;
+
+	/**
+	 * The feature id for the '<em><b>Messages</b></em>' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ICOLLABORATION__MESSAGES = IMODEL_ELEMENT_FEATURE_COUNT + 2;
+
+	/**
+	 * The feature id for the '<em><b>Annotations</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ICOLLABORATION__ANNOTATIONS = IMODEL_ELEMENT_FEATURE_COUNT + 3;
+
+	/**
+	 * The feature id for the '<em><b>Association Roles</b></em>' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ICOLLABORATION__ASSOCIATION_ROLES = IMODEL_ELEMENT_FEATURE_COUNT + 4;
+
+	/**
+	 * The feature id for the '<em><b>Modified Time Weak</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ICOLLABORATION__MODIFIED_TIME_WEAK = IMODEL_ELEMENT_FEATURE_COUNT + 5;
+
+	/**
+	 * The feature id for the '<em><b>Combined Fragments</b></em>' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ICOLLABORATION__COMBINED_FRAGMENTS = IMODEL_ELEMENT_FEATURE_COUNT + 6;
+
+	/**
+	 * The feature id for the '<em><b>PMessage Handler</b></em>' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ICOLLABORATION__PMESSAGE_HANDLER = IMODEL_ELEMENT_FEATURE_COUNT + 7;
+
+	/**
+	 * The feature id for the '<em><b>Interaction Occurrences</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ICOLLABORATION__INTERACTION_OCCURRENCES = IMODEL_ELEMENT_FEATURE_COUNT + 8;
+
+	/**
+	 * The feature id for the '<em><b>Execution Occurrences</b></em>' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ICOLLABORATION__EXECUTION_OCCURRENCES = IMODEL_ELEMENT_FEATURE_COUNT + 9;
+
+	/**
+	 * The feature id for the '<em><b>Object Creation</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ICOLLABORATION__OBJECT_CREATION = IMODEL_ELEMENT_FEATURE_COUNT + 10;
+
+	/**
+	 * The feature id for the '<em><b>Uml Dependency ID</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ICOLLABORATION__UML_DEPENDENCY_ID = IMODEL_ELEMENT_FEATURE_COUNT + 11;
+
+	/**
+	 * The number of structural features of the '<em>ICollaboration</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ICOLLABORATION_FEATURE_COUNT = IMODEL_ELEMENT_FEATURE_COUNT + 12;
+
+	/**
+	 * The operation id for the '<em>Get EAnnotation</em>' operation.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ICOLLABORATION___GET_EANNOTATION__STRING = IMODEL_ELEMENT___GET_EANNOTATION__STRING;
+
+	/**
+	 * The number of operations of the '<em>ICollaboration</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ICOLLABORATION_OPERATION_COUNT = IMODEL_ELEMENT_OPERATION_COUNT + 0;
+
+	/**
+	 * The meta object id for the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IDiagramImpl <em>IDiagram</em>}' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IDiagramImpl
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.UMLRpyPackageImpl#getIDiagram()
+	 * @generated
+	 */
+	int IDIAGRAM = 113;
+
+	/**
+	 * The feature id for the '<em><b>EAnnotations</b></em>' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IDIAGRAM__EANNOTATIONS = IUNIT__EANNOTATIONS;
+
+	/**
+	 * The feature id for the '<em><b>Display Name</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IDIAGRAM__DISPLAY_NAME = IUNIT__DISPLAY_NAME;
+
+	/**
+	 * The feature id for the '<em><b>Id</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IDIAGRAM__ID = IUNIT_FEATURE_COUNT + 0;
+
+	/**
+	 * The feature id for the '<em><b>Last Modified Time</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IDIAGRAM__LAST_MODIFIED_TIME = IUNIT_FEATURE_COUNT + 1;
+
+	/**
+	 * The feature id for the '<em><b>Requiremen Tracability Handle</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IDIAGRAM__REQUIREMEN_TRACABILITY_HANDLE = IUNIT_FEATURE_COUNT + 2;
+
+	/**
+	 * The feature id for the '<em><b>Default Subsystem</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IDIAGRAM__DEFAULT_SUBSYSTEM = IUNIT_FEATURE_COUNT + 3;
+
+	/**
+	 * The feature id for the '<em><b>Description</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IDIAGRAM__DESCRIPTION = IUNIT_FEATURE_COUNT + 4;
+
+	/**
+	 * The feature id for the '<em><b>Uml Dependency ID</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IDIAGRAM__UML_DEPENDENCY_ID = IUNIT_FEATURE_COUNT + 5;
+
+	/**
+	 * The feature id for the '<em><b>Last ID</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IDIAGRAM__LAST_ID = IUNIT_FEATURE_COUNT + 6;
+
+	/**
+	 * The feature id for the '<em><b>My State</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IDIAGRAM__MY_STATE = IUNIT_FEATURE_COUNT + 7;
+
+	/**
+	 * The feature id for the '<em><b>Owner Handle</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IDIAGRAM__OWNER_HANDLE = IUNIT_FEATURE_COUNT + 8;
+
+	/**
+	 * The feature id for the '<em><b>Object Creation</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IDIAGRAM__OBJECT_CREATION = IUNIT_FEATURE_COUNT + 9;
+
+	/**
+	 * The feature id for the '<em><b>Name</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IDIAGRAM__NAME = IUNIT_FEATURE_COUNT + 10;
+
+	/**
+	 * The feature id for the '<em><b>Cmheader</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IDIAGRAM__CMHEADER = IUNIT_FEATURE_COUNT + 11;
+
+	/**
+	 * The feature id for the '<em><b>Properties</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IDIAGRAM__PROPERTIES = IUNIT_FEATURE_COUNT + 12;
+
+	/**
+	 * The feature id for the '<em><b>Stereotypes</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IDIAGRAM__STEREOTYPES = IUNIT_FEATURE_COUNT + 13;
+
+	/**
+	 * The feature id for the '<em><b>Modified Time Weak</b></em>' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IDIAGRAM__MODIFIED_TIME_WEAK = IUNIT_FEATURE_COUNT + 14;
+
+	/**
+	 * The feature id for the '<em><b>Graphic Chart</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IDIAGRAM__GRAPHIC_CHART = IUNIT_FEATURE_COUNT + 15;
+
+	/**
+	 * The feature id for the '<em><b>Annotations</b></em>' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IDIAGRAM__ANNOTATIONS = IUNIT_FEATURE_COUNT + 16;
+
+	/**
+	 * The feature id for the '<em><b>Code Update CG Time</b></em>' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IDIAGRAM__CODE_UPDATE_CG_TIME = IUNIT_FEATURE_COUNT + 17;
+
+	/**
+	 * The feature id for the '<em><b>Hyper Links</b></em>' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IDIAGRAM__HYPER_LINKS = IUNIT_FEATURE_COUNT + 18;
+
+	/**
+	 * The number of structural features of the '<em>IDiagram</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IDIAGRAM_FEATURE_COUNT = IUNIT_FEATURE_COUNT + 19;
+
+	/**
+	 * The operation id for the '<em>Get EAnnotation</em>' operation.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IDIAGRAM___GET_EANNOTATION__STRING = IUNIT___GET_EANNOTATION__STRING;
+
+	/**
+	 * The number of operations of the '<em>IDiagram</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IDIAGRAM_OPERATION_COUNT = IUNIT_OPERATION_COUNT + 0;
+
+	/**
+	 * The meta object id for the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.ICollaborationDiagramImpl <em>ICollaboration Diagram</em>}' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.ICollaborationDiagramImpl
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.UMLRpyPackageImpl#getICollaborationDiagram()
+	 * @generated
+	 */
+	int ICOLLABORATION_DIAGRAM = 95;
+
+	/**
+	 * The feature id for the '<em><b>EAnnotations</b></em>' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ICOLLABORATION_DIAGRAM__EANNOTATIONS = IDIAGRAM__EANNOTATIONS;
+
+	/**
+	 * The feature id for the '<em><b>Display Name</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ICOLLABORATION_DIAGRAM__DISPLAY_NAME = IDIAGRAM__DISPLAY_NAME;
+
+	/**
+	 * The feature id for the '<em><b>Id</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ICOLLABORATION_DIAGRAM__ID = IDIAGRAM__ID;
+
+	/**
+	 * The feature id for the '<em><b>Last Modified Time</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ICOLLABORATION_DIAGRAM__LAST_MODIFIED_TIME = IDIAGRAM__LAST_MODIFIED_TIME;
+
+	/**
+	 * The feature id for the '<em><b>Requiremen Tracability Handle</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ICOLLABORATION_DIAGRAM__REQUIREMEN_TRACABILITY_HANDLE = IDIAGRAM__REQUIREMEN_TRACABILITY_HANDLE;
+
+	/**
+	 * The feature id for the '<em><b>Default Subsystem</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ICOLLABORATION_DIAGRAM__DEFAULT_SUBSYSTEM = IDIAGRAM__DEFAULT_SUBSYSTEM;
+
+	/**
+	 * The feature id for the '<em><b>Description</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ICOLLABORATION_DIAGRAM__DESCRIPTION = IDIAGRAM__DESCRIPTION;
+
+	/**
+	 * The feature id for the '<em><b>Uml Dependency ID</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ICOLLABORATION_DIAGRAM__UML_DEPENDENCY_ID = IDIAGRAM__UML_DEPENDENCY_ID;
+
+	/**
+	 * The feature id for the '<em><b>Last ID</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ICOLLABORATION_DIAGRAM__LAST_ID = IDIAGRAM__LAST_ID;
+
+	/**
+	 * The feature id for the '<em><b>My State</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ICOLLABORATION_DIAGRAM__MY_STATE = IDIAGRAM__MY_STATE;
+
+	/**
+	 * The feature id for the '<em><b>Owner Handle</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ICOLLABORATION_DIAGRAM__OWNER_HANDLE = IDIAGRAM__OWNER_HANDLE;
+
+	/**
+	 * The feature id for the '<em><b>Object Creation</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ICOLLABORATION_DIAGRAM__OBJECT_CREATION = IDIAGRAM__OBJECT_CREATION;
+
+	/**
+	 * The feature id for the '<em><b>Name</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ICOLLABORATION_DIAGRAM__NAME = IDIAGRAM__NAME;
+
+	/**
+	 * The feature id for the '<em><b>Cmheader</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ICOLLABORATION_DIAGRAM__CMHEADER = IDIAGRAM__CMHEADER;
+
+	/**
+	 * The feature id for the '<em><b>Properties</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ICOLLABORATION_DIAGRAM__PROPERTIES = IDIAGRAM__PROPERTIES;
+
+	/**
+	 * The feature id for the '<em><b>Stereotypes</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ICOLLABORATION_DIAGRAM__STEREOTYPES = IDIAGRAM__STEREOTYPES;
+
+	/**
+	 * The feature id for the '<em><b>Modified Time Weak</b></em>' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ICOLLABORATION_DIAGRAM__MODIFIED_TIME_WEAK = IDIAGRAM__MODIFIED_TIME_WEAK;
+
+	/**
+	 * The feature id for the '<em><b>Graphic Chart</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ICOLLABORATION_DIAGRAM__GRAPHIC_CHART = IDIAGRAM__GRAPHIC_CHART;
+
+	/**
+	 * The feature id for the '<em><b>Annotations</b></em>' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ICOLLABORATION_DIAGRAM__ANNOTATIONS = IDIAGRAM__ANNOTATIONS;
+
+	/**
+	 * The feature id for the '<em><b>Code Update CG Time</b></em>' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ICOLLABORATION_DIAGRAM__CODE_UPDATE_CG_TIME = IDIAGRAM__CODE_UPDATE_CG_TIME;
+
+	/**
+	 * The feature id for the '<em><b>Hyper Links</b></em>' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ICOLLABORATION_DIAGRAM__HYPER_LINKS = IDIAGRAM__HYPER_LINKS;
+
+	/**
+	 * The feature id for the '<em><b>MpI Collaboration</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ICOLLABORATION_DIAGRAM__MPI_COLLABORATION = IDIAGRAM_FEATURE_COUNT + 0;
+
+	/**
+	 * The number of structural features of the '<em>ICollaboration Diagram</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ICOLLABORATION_DIAGRAM_FEATURE_COUNT = IDIAGRAM_FEATURE_COUNT + 1;
+
+	/**
+	 * The operation id for the '<em>Get EAnnotation</em>' operation.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ICOLLABORATION_DIAGRAM___GET_EANNOTATION__STRING = IDIAGRAM___GET_EANNOTATION__STRING;
+
+	/**
+	 * The number of operations of the '<em>ICollaboration Diagram</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ICOLLABORATION_DIAGRAM_OPERATION_COUNT = IDIAGRAM_OPERATION_COUNT + 0;
+
+	/**
+	 * The meta object id for the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IColorImpl <em>IColor</em>}' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IColorImpl
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.UMLRpyPackageImpl#getIColor()
+	 * @generated
+	 */
+	int ICOLOR = 96;
+
+	/**
+	 * The feature id for the '<em><b>Mfg Color</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ICOLOR__MFG_COLOR = 0;
+
+	/**
+	 * The feature id for the '<em><b>Mbg Color</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ICOLOR__MBG_COLOR = 1;
+
+	/**
+	 * The feature id for the '<em><b>Mbg Flag</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ICOLOR__MBG_FLAG = 2;
+
+	/**
+	 * The number of structural features of the '<em>IColor</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ICOLOR_FEATURE_COUNT = 3;
+
+	/**
+	 * The number of operations of the '<em>IColor</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ICOLOR_OPERATION_COUNT = 0;
+
+	/**
+	 * The meta object id for the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.ICombinedFragmentImpl <em>ICombined Fragment</em>}' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.ICombinedFragmentImpl
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.UMLRpyPackageImpl#getICombinedFragment()
+	 * @generated
+	 */
+	int ICOMBINED_FRAGMENT = 97;
+
+	/**
+	 * The feature id for the '<em><b>Id</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ICOMBINED_FRAGMENT__ID = 0;
+
+	/**
+	 * The feature id for the '<em><b>My State</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ICOMBINED_FRAGMENT__MY_STATE = 1;
+
+	/**
+	 * The feature id for the '<em><b>Name</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ICOMBINED_FRAGMENT__NAME = 2;
+
+	/**
+	 * The feature id for the '<em><b>Modified Time Weak</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ICOMBINED_FRAGMENT__MODIFIED_TIME_WEAK = 3;
+
+	/**
+	 * The feature id for the '<em><b>Interaction Operator</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ICOMBINED_FRAGMENT__INTERACTION_OPERATOR = 4;
+
+	/**
+	 * The feature id for the '<em><b>Interaction Operands</b></em>' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ICOMBINED_FRAGMENT__INTERACTION_OPERANDS = 5;
+
+	/**
+	 * The feature id for the '<em><b>Stereotypes</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ICOMBINED_FRAGMENT__STEREOTYPES = 6;
+
+	/**
+	 * The feature id for the '<em><b>Tags</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ICOMBINED_FRAGMENT__TAGS = 7;
+
+	/**
+	 * The number of structural features of the '<em>ICombined Fragment</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ICOMBINED_FRAGMENT_FEATURE_COUNT = 8;
+
+	/**
+	 * The number of operations of the '<em>ICombined Fragment</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ICOMBINED_FRAGMENT_OPERATION_COUNT = 0;
+
+	/**
+	 * The meta object id for the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.ICommentImpl <em>IComment</em>}' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.ICommentImpl
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.UMLRpyPackageImpl#getIComment()
+	 * @generated
+	 */
+	int ICOMMENT = 98;
+
+	/**
+	 * The feature id for the '<em><b>EAnnotations</b></em>' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ICOMMENT__EANNOTATIONS = IANNOTATION__EANNOTATIONS;
+
+	/**
+	 * The feature id for the '<em><b>Display Name</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ICOMMENT__DISPLAY_NAME = IANNOTATION__DISPLAY_NAME;
+
+	/**
+	 * The feature id for the '<em><b>Requiremen Tracability Handle</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ICOMMENT__REQUIREMEN_TRACABILITY_HANDLE = IANNOTATION__REQUIREMEN_TRACABILITY_HANDLE;
+
+	/**
+	 * The feature id for the '<em><b>Description</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ICOMMENT__DESCRIPTION = IANNOTATION__DESCRIPTION;
+
+	/**
+	 * The feature id for the '<em><b>Uml Dependency ID</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ICOMMENT__UML_DEPENDENCY_ID = IANNOTATION__UML_DEPENDENCY_ID;
+
+	/**
+	 * The feature id for the '<em><b>Object Creation</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ICOMMENT__OBJECT_CREATION = IANNOTATION__OBJECT_CREATION;
+
+	/**
+	 * The feature id for the '<em><b>Tags</b></em>' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ICOMMENT__TAGS = IANNOTATION__TAGS;
+
+	/**
+	 * The feature id for the '<em><b>Body</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ICOMMENT__BODY = IANNOTATION__BODY;
+
+	/**
+	 * The feature id for the '<em><b>Modified Time Weak</b></em>' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ICOMMENT__MODIFIED_TIME_WEAK = IANNOTATION_FEATURE_COUNT + 0;
+
+	/**
+	 * The feature id for the '<em><b>Id</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ICOMMENT__ID = IANNOTATION_FEATURE_COUNT + 1;
+
+	/**
+	 * The feature id for the '<em><b>My State</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ICOMMENT__MY_STATE = IANNOTATION_FEATURE_COUNT + 2;
+
+	/**
+	 * The feature id for the '<em><b>Name</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ICOMMENT__NAME = IANNOTATION_FEATURE_COUNT + 3;
+
+	/**
+	 * The feature id for the '<em><b>Hyper Links</b></em>' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ICOMMENT__HYPER_LINKS = IANNOTATION_FEATURE_COUNT + 4;
+
+	/**
+	 * The feature id for the '<em><b>Anchors</b></em>' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ICOMMENT__ANCHORS = IANNOTATION_FEATURE_COUNT + 5;
+
+	/**
+	 * The feature id for the '<em><b>Dependencies</b></em>' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ICOMMENT__DEPENDENCIES = IANNOTATION_FEATURE_COUNT + 6;
+
+	/**
+	 * The feature id for the '<em><b>Stereotypes</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ICOMMENT__STEREOTYPES = IANNOTATION_FEATURE_COUNT + 7;
+
+	/**
+	 * The feature id for the '<em><b>Last ID</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ICOMMENT__LAST_ID = IANNOTATION_FEATURE_COUNT + 8;
+
+	/**
+	 * The feature id for the '<em><b>Code Update CG Time</b></em>' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ICOMMENT__CODE_UPDATE_CG_TIME = IANNOTATION_FEATURE_COUNT + 9;
+
+	/**
+	 * The feature id for the '<em><b>The Main Diagram</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ICOMMENT__THE_MAIN_DIAGRAM = IANNOTATION_FEATURE_COUNT + 10;
+
+	/**
+	 * The feature id for the '<em><b>Properties</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ICOMMENT__PROPERTIES = IANNOTATION_FEATURE_COUNT + 11;
+
+	/**
+	 * The number of structural features of the '<em>IComment</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ICOMMENT_FEATURE_COUNT = IANNOTATION_FEATURE_COUNT + 12;
+
+	/**
+	 * The operation id for the '<em>Get EAnnotation</em>' operation.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ICOMMENT___GET_EANNOTATION__STRING = IANNOTATION___GET_EANNOTATION__STRING;
+
+	/**
+	 * The number of operations of the '<em>IComment</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ICOMMENT_OPERATION_COUNT = IANNOTATION_OPERATION_COUNT + 0;
+
+	/**
+	 * The meta object id for the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IComponentImpl <em>IComponent</em>}' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IComponentImpl
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.UMLRpyPackageImpl#getIComponent()
+	 * @generated
+	 */
+	int ICOMPONENT = 99;
+
+	/**
+	 * The feature id for the '<em><b>EAnnotations</b></em>' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ICOMPONENT__EANNOTATIONS = IUNIT__EANNOTATIONS;
+
+	/**
+	 * The feature id for the '<em><b>Display Name</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ICOMPONENT__DISPLAY_NAME = IUNIT__DISPLAY_NAME;
+
+	/**
+	 * The feature id for the '<em><b>Weak CG Time</b></em>' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ICOMPONENT__WEAK_CG_TIME = IUNIT_FEATURE_COUNT + 0;
+
+	/**
+	 * The feature id for the '<em><b>Strong CG Time</b></em>' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ICOMPONENT__STRONG_CG_TIME = IUNIT_FEATURE_COUNT + 1;
+
+	/**
+	 * The feature id for the '<em><b>Owner Handle</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ICOMPONENT__OWNER_HANDLE = IUNIT_FEATURE_COUNT + 2;
+
+	/**
+	 * The feature id for the '<em><b>Id</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ICOMPONENT__ID = IUNIT_FEATURE_COUNT + 3;
+
+	/**
+	 * The feature id for the '<em><b>My State</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ICOMPONENT__MY_STATE = IUNIT_FEATURE_COUNT + 4;
+
+	/**
+	 * The feature id for the '<em><b>Name</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ICOMPONENT__NAME = IUNIT_FEATURE_COUNT + 5;
+
+	/**
+	 * The feature id for the '<em><b>Stereotypes</b></em>' reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ICOMPONENT__STEREOTYPES = IUNIT_FEATURE_COUNT + 6;
+
+	/**
+	 * The feature id for the '<em><b>Modified Time Weak</b></em>' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ICOMPONENT__MODIFIED_TIME_WEAK = IUNIT_FEATURE_COUNT + 7;
+
+	/**
+	 * The feature id for the '<em><b>Mbuild Type</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ICOMPONENT__MBUILD_TYPE = IUNIT_FEATURE_COUNT + 8;
+
+	/**
+	 * The feature id for the '<em><b>Mlibraries</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ICOMPONENT__MLIBRARIES = IUNIT_FEATURE_COUNT + 9;
+
+	/**
+	 * The feature id for the '<em><b>Madditional Sources</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ICOMPONENT__MADDITIONAL_SOURCES = IUNIT_FEATURE_COUNT + 10;
+
+	/**
+	 * The feature id for the '<em><b>Mstandard Headers</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ICOMPONENT__MSTANDARD_HEADERS = IUNIT_FEATURE_COUNT + 11;
+
+	/**
+	 * The feature id for the '<em><b>Minclude Path</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ICOMPONENT__MINCLUDE_PATH = IUNIT_FEATURE_COUNT + 12;
+
+	/**
+	 * The feature id for the '<em><b>Minitialization Code</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ICOMPONENT__MINITIALIZATION_CODE = IUNIT_FEATURE_COUNT + 13;
+
+	/**
+	 * The feature id for the '<em><b>Mfolder</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ICOMPONENT__MFOLDER = IUNIT_FEATURE_COUNT + 14;
+
+	/**
+	 * The feature id for the '<em><b>Mconfig Active</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ICOMPONENT__MCONFIG_ACTIVE = IUNIT_FEATURE_COUNT + 15;
+
+	/**
+	 * The feature id for the '<em><b>Configs</b></em>' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ICOMPONENT__CONFIGS = IUNIT_FEATURE_COUNT + 16;
+
+	/**
+	 * The feature id for the '<em><b>Dependencies</b></em>' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ICOMPONENT__DEPENDENCIES = IUNIT_FEATURE_COUNT + 17;
+
+	/**
+	 * The feature id for the '<em><b>Handles In Me</b></em>' reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ICOMPONENT__HANDLES_IN_ME = IUNIT_FEATURE_COUNT + 18;
+
+	/**
+	 * The feature id for the '<em><b>Properties</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ICOMPONENT__PROPERTIES = IUNIT_FEATURE_COUNT + 19;
+
+	/**
+	 * The feature id for the '<em><b>Last ID</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ICOMPONENT__LAST_ID = IUNIT_FEATURE_COUNT + 20;
+
+	/**
+	 * The feature id for the '<em><b>Description</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ICOMPONENT__DESCRIPTION = IUNIT_FEATURE_COUNT + 21;
+
+	/**
+	 * The feature id for the '<em><b>Requiremen Tracability Handle</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ICOMPONENT__REQUIREMEN_TRACABILITY_HANDLE = IUNIT_FEATURE_COUNT + 22;
+
+	/**
+	 * The feature id for the '<em><b>Hyper Links</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ICOMPONENT__HYPER_LINKS = IUNIT_FEATURE_COUNT + 23;
+
+	/**
+	 * The feature id for the '<em><b>Code Update CG Time</b></em>' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ICOMPONENT__CODE_UPDATE_CG_TIME = IUNIT_FEATURE_COUNT + 24;
+
+	/**
+	 * The feature id for the '<em><b>Declaratives</b></em>' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ICOMPONENT__DECLARATIVES = IUNIT_FEATURE_COUNT + 25;
+
+	/**
+	 * The feature id for the '<em><b>Variation Points</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ICOMPONENT__VARIATION_POINTS = IUNIT_FEATURE_COUNT + 26;
+
+	/**
+	 * The feature id for the '<em><b>Selected Variants</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ICOMPONENT__SELECTED_VARIANTS = IUNIT_FEATURE_COUNT + 27;
+
+	/**
+	 * The feature id for the '<em><b>Object Creation</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ICOMPONENT__OBJECT_CREATION = IUNIT_FEATURE_COUNT + 28;
+
+	/**
+	 * The feature id for the '<em><b>Uml Dependency ID</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ICOMPONENT__UML_DEPENDENCY_ID = IUNIT_FEATURE_COUNT + 29;
+
+	/**
+	 * The feature id for the '<em><b>Cmheader</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ICOMPONENT__CMHEADER = IUNIT_FEATURE_COUNT + 30;
+
+	/**
+	 * The number of structural features of the '<em>IComponent</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ICOMPONENT_FEATURE_COUNT = IUNIT_FEATURE_COUNT + 31;
+
+	/**
+	 * The operation id for the '<em>Get EAnnotation</em>' operation.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ICOMPONENT___GET_EANNOTATION__STRING = IUNIT___GET_EANNOTATION__STRING;
+
+	/**
+	 * The number of operations of the '<em>IComponent</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ICOMPONENT_OPERATION_COUNT = IUNIT_OPERATION_COUNT + 0;
+
+	/**
+	 * The meta object id for the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IComponentDiagramImpl <em>IComponent Diagram</em>}' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IComponentDiagramImpl
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.UMLRpyPackageImpl#getIComponentDiagram()
+	 * @generated
+	 */
+	int ICOMPONENT_DIAGRAM = 100;
+
+	/**
+	 * The feature id for the '<em><b>EAnnotations</b></em>' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ICOMPONENT_DIAGRAM__EANNOTATIONS = IDIAGRAM__EANNOTATIONS;
+
+	/**
+	 * The feature id for the '<em><b>Display Name</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ICOMPONENT_DIAGRAM__DISPLAY_NAME = IDIAGRAM__DISPLAY_NAME;
+
+	/**
+	 * The feature id for the '<em><b>Id</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ICOMPONENT_DIAGRAM__ID = IDIAGRAM__ID;
+
+	/**
+	 * The feature id for the '<em><b>Last Modified Time</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ICOMPONENT_DIAGRAM__LAST_MODIFIED_TIME = IDIAGRAM__LAST_MODIFIED_TIME;
+
+	/**
+	 * The feature id for the '<em><b>Requiremen Tracability Handle</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ICOMPONENT_DIAGRAM__REQUIREMEN_TRACABILITY_HANDLE = IDIAGRAM__REQUIREMEN_TRACABILITY_HANDLE;
+
+	/**
+	 * The feature id for the '<em><b>Default Subsystem</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ICOMPONENT_DIAGRAM__DEFAULT_SUBSYSTEM = IDIAGRAM__DEFAULT_SUBSYSTEM;
+
+	/**
+	 * The feature id for the '<em><b>Description</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ICOMPONENT_DIAGRAM__DESCRIPTION = IDIAGRAM__DESCRIPTION;
+
+	/**
+	 * The feature id for the '<em><b>Uml Dependency ID</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ICOMPONENT_DIAGRAM__UML_DEPENDENCY_ID = IDIAGRAM__UML_DEPENDENCY_ID;
+
+	/**
+	 * The feature id for the '<em><b>Last ID</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ICOMPONENT_DIAGRAM__LAST_ID = IDIAGRAM__LAST_ID;
+
+	/**
+	 * The feature id for the '<em><b>My State</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ICOMPONENT_DIAGRAM__MY_STATE = IDIAGRAM__MY_STATE;
+
+	/**
+	 * The feature id for the '<em><b>Owner Handle</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ICOMPONENT_DIAGRAM__OWNER_HANDLE = IDIAGRAM__OWNER_HANDLE;
+
+	/**
+	 * The feature id for the '<em><b>Object Creation</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ICOMPONENT_DIAGRAM__OBJECT_CREATION = IDIAGRAM__OBJECT_CREATION;
+
+	/**
+	 * The feature id for the '<em><b>Name</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ICOMPONENT_DIAGRAM__NAME = IDIAGRAM__NAME;
+
+	/**
+	 * The feature id for the '<em><b>Cmheader</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ICOMPONENT_DIAGRAM__CMHEADER = IDIAGRAM__CMHEADER;
+
+	/**
+	 * The feature id for the '<em><b>Properties</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ICOMPONENT_DIAGRAM__PROPERTIES = IDIAGRAM__PROPERTIES;
+
+	/**
+	 * The feature id for the '<em><b>Stereotypes</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ICOMPONENT_DIAGRAM__STEREOTYPES = IDIAGRAM__STEREOTYPES;
+
+	/**
+	 * The feature id for the '<em><b>Modified Time Weak</b></em>' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ICOMPONENT_DIAGRAM__MODIFIED_TIME_WEAK = IDIAGRAM__MODIFIED_TIME_WEAK;
+
+	/**
+	 * The feature id for the '<em><b>Graphic Chart</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ICOMPONENT_DIAGRAM__GRAPHIC_CHART = IDIAGRAM__GRAPHIC_CHART;
+
+	/**
+	 * The feature id for the '<em><b>Annotations</b></em>' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ICOMPONENT_DIAGRAM__ANNOTATIONS = IDIAGRAM__ANNOTATIONS;
+
+	/**
+	 * The feature id for the '<em><b>Code Update CG Time</b></em>' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ICOMPONENT_DIAGRAM__CODE_UPDATE_CG_TIME = IDIAGRAM__CODE_UPDATE_CG_TIME;
+
+	/**
+	 * The feature id for the '<em><b>Hyper Links</b></em>' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ICOMPONENT_DIAGRAM__HYPER_LINKS = IDIAGRAM__HYPER_LINKS;
+
+	/**
+	 * The number of structural features of the '<em>IComponent Diagram</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ICOMPONENT_DIAGRAM_FEATURE_COUNT = IDIAGRAM_FEATURE_COUNT + 0;
+
+	/**
+	 * The operation id for the '<em>Get EAnnotation</em>' operation.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ICOMPONENT_DIAGRAM___GET_EANNOTATION__STRING = IDIAGRAM___GET_EANNOTATION__STRING;
+
+	/**
+	 * The number of operations of the '<em>IComponent Diagram</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ICOMPONENT_DIAGRAM_OPERATION_COUNT = IDIAGRAM_OPERATION_COUNT + 0;
+
+	/**
+	 * The meta object id for the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IComponentInstanceImpl <em>IComponent Instance</em>}' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IComponentInstanceImpl
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.UMLRpyPackageImpl#getIComponentInstance()
+	 * @generated
+	 */
+	int ICOMPONENT_INSTANCE = 101;
+
+	/**
+	 * The feature id for the '<em><b>EAnnotations</b></em>' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ICOMPONENT_INSTANCE__EANNOTATIONS = IMODEL_ELEMENT__EANNOTATIONS;
+
+	/**
+	 * The feature id for the '<em><b>Display Name</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ICOMPONENT_INSTANCE__DISPLAY_NAME = IMODEL_ELEMENT__DISPLAY_NAME;
+
+	/**
+	 * The number of structural features of the '<em>IComponent Instance</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ICOMPONENT_INSTANCE_FEATURE_COUNT = IMODEL_ELEMENT_FEATURE_COUNT + 0;
+
+	/**
+	 * The operation id for the '<em>Get EAnnotation</em>' operation.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ICOMPONENT_INSTANCE___GET_EANNOTATION__STRING = IMODEL_ELEMENT___GET_EANNOTATION__STRING;
+
+	/**
+	 * The number of operations of the '<em>IComponent Instance</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ICOMPONENT_INSTANCE_OPERATION_COUNT = IMODEL_ELEMENT_OPERATION_COUNT + 0;
+
+	/**
+	 * The meta object id for the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IConfigurationImpl <em>IConfiguration</em>}' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IConfigurationImpl
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.UMLRpyPackageImpl#getIConfiguration()
+	 * @generated
+	 */
+	int ICONFIGURATION = 102;
+
+	/**
+	 * The feature id for the '<em><b>EAnnotations</b></em>' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ICONFIGURATION__EANNOTATIONS = IMODEL_ELEMENT__EANNOTATIONS;
+
+	/**
+	 * The feature id for the '<em><b>Display Name</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ICONFIGURATION__DISPLAY_NAME = IMODEL_ELEMENT__DISPLAY_NAME;
+
+	/**
+	 * The number of structural features of the '<em>IConfiguration</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ICONFIGURATION_FEATURE_COUNT = IMODEL_ELEMENT_FEATURE_COUNT + 0;
+
+	/**
+	 * The operation id for the '<em>Get EAnnotation</em>' operation.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ICONFIGURATION___GET_EANNOTATION__STRING = IMODEL_ELEMENT___GET_EANNOTATION__STRING;
+
+	/**
+	 * The number of operations of the '<em>IConfiguration</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ICONFIGURATION_OPERATION_COUNT = IMODEL_ELEMENT_OPERATION_COUNT + 0;
+
+	/**
+	 * The meta object id for the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IConnectorImpl <em>IConnector</em>}' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IConnectorImpl
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.UMLRpyPackageImpl#getIConnector()
+	 * @generated
+	 */
+	int ICONNECTOR = 103;
+
+	/**
+	 * The feature id for the '<em><b>EAnnotations</b></em>' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ICONNECTOR__EANNOTATIONS = ISTATE_VERTEX__EANNOTATIONS;
+
+	/**
+	 * The feature id for the '<em><b>Display Name</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ICONNECTOR__DISPLAY_NAME = ISTATE_VERTEX__DISPLAY_NAME;
+
+	/**
+	 * The feature id for the '<em><b>Modified Time Weak</b></em>' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ICONNECTOR__MODIFIED_TIME_WEAK = ISTATE_VERTEX__MODIFIED_TIME_WEAK;
+
+	/**
+	 * The feature id for the '<em><b>Id</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ICONNECTOR__ID = ISTATE_VERTEX__ID;
+
+	/**
+	 * The feature id for the '<em><b>Description</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ICONNECTOR__DESCRIPTION = ISTATE_VERTEX__DESCRIPTION;
+
+	/**
+	 * The feature id for the '<em><b>Uml Dependency ID</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ICONNECTOR__UML_DEPENDENCY_ID = ISTATE_VERTEX__UML_DEPENDENCY_ID;
+
+	/**
+	 * The feature id for the '<em><b>My State</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ICONNECTOR__MY_STATE = ISTATE_VERTEX__MY_STATE;
+
+	/**
+	 * The feature id for the '<em><b>Stereotypes</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ICONNECTOR__STEREOTYPES = ISTATE_VERTEX__STEREOTYPES;
+
+	/**
+	 * The feature id for the '<em><b>Object Creation</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ICONNECTOR__OBJECT_CREATION = ISTATE_VERTEX__OBJECT_CREATION;
+
+	/**
+	 * The feature id for the '<em><b>Name</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ICONNECTOR__NAME = ISTATE_VERTEX__NAME;
+
+	/**
+	 * The feature id for the '<em><b>Parent</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ICONNECTOR__PARENT = ISTATE_VERTEX_FEATURE_COUNT + 0;
+
+	/**
+	 * The feature id for the '<em><b>Connector Type</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ICONNECTOR__CONNECTOR_TYPE = ISTATE_VERTEX_FEATURE_COUNT + 1;
+
+	/**
+	 * The number of structural features of the '<em>IConnector</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ICONNECTOR_FEATURE_COUNT = ISTATE_VERTEX_FEATURE_COUNT + 2;
+
+	/**
+	 * The operation id for the '<em>Get EAnnotation</em>' operation.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ICONNECTOR___GET_EANNOTATION__STRING = ISTATE_VERTEX___GET_EANNOTATION__STRING;
+
+	/**
+	 * The number of operations of the '<em>IConnector</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ICONNECTOR_OPERATION_COUNT = ISTATE_VERTEX_OPERATION_COUNT + 0;
+
+	/**
+	 * The meta object id for the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IConstraintImpl <em>IConstraint</em>}' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IConstraintImpl
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.UMLRpyPackageImpl#getIConstraint()
+	 * @generated
+	 */
+	int ICONSTRAINT = 104;
+
+	/**
+	 * The feature id for the '<em><b>EAnnotations</b></em>' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ICONSTRAINT__EANNOTATIONS = IANNOTATION__EANNOTATIONS;
+
+	/**
+	 * The feature id for the '<em><b>Display Name</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ICONSTRAINT__DISPLAY_NAME = IANNOTATION__DISPLAY_NAME;
+
+	/**
+	 * The feature id for the '<em><b>Requiremen Tracability Handle</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ICONSTRAINT__REQUIREMEN_TRACABILITY_HANDLE = IANNOTATION__REQUIREMEN_TRACABILITY_HANDLE;
+
+	/**
+	 * The feature id for the '<em><b>Description</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ICONSTRAINT__DESCRIPTION = IANNOTATION__DESCRIPTION;
+
+	/**
+	 * The feature id for the '<em><b>Uml Dependency ID</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ICONSTRAINT__UML_DEPENDENCY_ID = IANNOTATION__UML_DEPENDENCY_ID;
+
+	/**
+	 * The feature id for the '<em><b>Object Creation</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ICONSTRAINT__OBJECT_CREATION = IANNOTATION__OBJECT_CREATION;
+
+	/**
+	 * The feature id for the '<em><b>Tags</b></em>' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ICONSTRAINT__TAGS = IANNOTATION__TAGS;
+
+	/**
+	 * The feature id for the '<em><b>Body</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ICONSTRAINT__BODY = IANNOTATION__BODY;
+
+	/**
+	 * The feature id for the '<em><b>Id</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ICONSTRAINT__ID = IANNOTATION_FEATURE_COUNT + 0;
+
+	/**
+	 * The feature id for the '<em><b>My State</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ICONSTRAINT__MY_STATE = IANNOTATION_FEATURE_COUNT + 1;
+
+	/**
+	 * The feature id for the '<em><b>Name</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ICONSTRAINT__NAME = IANNOTATION_FEATURE_COUNT + 2;
+
+	/**
+	 * The feature id for the '<em><b>Modified Time Weak</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ICONSTRAINT__MODIFIED_TIME_WEAK = IANNOTATION_FEATURE_COUNT + 3;
+
+	/**
+	 * The feature id for the '<em><b>Stereotypes</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ICONSTRAINT__STEREOTYPES = IANNOTATION_FEATURE_COUNT + 4;
+
+	/**
+	 * The feature id for the '<em><b>Properties</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ICONSTRAINT__PROPERTIES = IANNOTATION_FEATURE_COUNT + 5;
+
+	/**
+	 * The feature id for the '<em><b>Anchors</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ICONSTRAINT__ANCHORS = IANNOTATION_FEATURE_COUNT + 6;
+
+	/**
+	 * The number of structural features of the '<em>IConstraint</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ICONSTRAINT_FEATURE_COUNT = IANNOTATION_FEATURE_COUNT + 7;
+
+	/**
+	 * The operation id for the '<em>Get EAnnotation</em>' operation.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ICONSTRAINT___GET_EANNOTATION__STRING = IANNOTATION___GET_EANNOTATION__STRING;
+
+	/**
+	 * The number of operations of the '<em>IConstraint</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ICONSTRAINT_OPERATION_COUNT = IANNOTATION_OPERATION_COUNT + 0;
+
+	/**
+	 * The meta object id for the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.OperationsTypeImpl <em>Operations Type</em>}' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.OperationsTypeImpl
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.UMLRpyPackageImpl#getOperationsType()
+	 * @generated
+	 */
+	int OPERATIONS_TYPE = 232;
+
+	/**
+	 * The feature id for the '<em><b>Virtual</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int OPERATIONS_TYPE__VIRTUAL = 0;
+
+	/**
+	 * The number of structural features of the '<em>Operations Type</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int OPERATIONS_TYPE_FEATURE_COUNT = 1;
+
+	/**
+	 * The number of operations of the '<em>Operations Type</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int OPERATIONS_TYPE_OPERATION_COUNT = 0;
+
+	/**
+	 * The meta object id for the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IConstructorImpl <em>IConstructor</em>}' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IConstructorImpl
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.UMLRpyPackageImpl#getIConstructor()
+	 * @generated
+	 */
+	int ICONSTRUCTOR = 105;
+
+	/**
+	 * The feature id for the '<em><b>Virtual</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ICONSTRUCTOR__VIRTUAL = OPERATIONS_TYPE__VIRTUAL;
+
+	/**
+	 * The feature id for the '<em><b>Uml Dependency ID</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ICONSTRUCTOR__UML_DEPENDENCY_ID = OPERATIONS_TYPE_FEATURE_COUNT + 0;
+
+	/**
+	 * The feature id for the '<em><b>Object Creation</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ICONSTRUCTOR__OBJECT_CREATION = OPERATIONS_TYPE_FEATURE_COUNT + 1;
+
+	/**
+	 * The feature id for the '<em><b>Id</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ICONSTRUCTOR__ID = OPERATIONS_TYPE_FEATURE_COUNT + 2;
+
+	/**
+	 * The feature id for the '<em><b>My State</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ICONSTRUCTOR__MY_STATE = OPERATIONS_TYPE_FEATURE_COUNT + 3;
+
+	/**
+	 * The feature id for the '<em><b>Modified Time Weak</b></em>' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ICONSTRUCTOR__MODIFIED_TIME_WEAK = OPERATIONS_TYPE_FEATURE_COUNT + 4;
+
+	/**
+	 * The feature id for the '<em><b>Return Type</b></em>' reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ICONSTRUCTOR__RETURN_TYPE = OPERATIONS_TYPE_FEATURE_COUNT + 5;
+
+	/**
+	 * The feature id for the '<em><b>Abstract</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ICONSTRUCTOR__ABSTRACT = OPERATIONS_TYPE_FEATURE_COUNT + 6;
+
+	/**
+	 * The feature id for the '<em><b>Final</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ICONSTRUCTOR__FINAL = OPERATIONS_TYPE_FEATURE_COUNT + 7;
+
+	/**
+	 * The feature id for the '<em><b>Concurrency</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ICONSTRUCTOR__CONCURRENCY = OPERATIONS_TYPE_FEATURE_COUNT + 8;
+
+	/**
+	 * The feature id for the '<em><b>Protection</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ICONSTRUCTOR__PROTECTION = OPERATIONS_TYPE_FEATURE_COUNT + 9;
+
+	/**
+	 * The feature id for the '<em><b>Static</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ICONSTRUCTOR__STATIC = OPERATIONS_TYPE_FEATURE_COUNT + 10;
+
+	/**
+	 * The feature id for the '<em><b>Constant</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ICONSTRUCTOR__CONSTANT = OPERATIONS_TYPE_FEATURE_COUNT + 11;
+
+	/**
+	 * The feature id for the '<em><b>Its Body</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ICONSTRUCTOR__ITS_BODY = OPERATIONS_TYPE_FEATURE_COUNT + 12;
+
+	/**
+	 * The feature id for the '<em><b>Initializer</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ICONSTRUCTOR__INITIALIZER = OPERATIONS_TYPE_FEATURE_COUNT + 13;
+
+	/**
+	 * The feature id for the '<em><b>Args</b></em>' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ICONSTRUCTOR__ARGS = OPERATIONS_TYPE_FEATURE_COUNT + 14;
+
+	/**
+	 * The feature id for the '<em><b>Name</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ICONSTRUCTOR__NAME = OPERATIONS_TYPE_FEATURE_COUNT + 15;
+
+	/**
+	 * The feature id for the '<em><b>Description</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ICONSTRUCTOR__DESCRIPTION = OPERATIONS_TYPE_FEATURE_COUNT + 16;
+
+	/**
+	 * The feature id for the '<em><b>Requiremen Tracability Handle</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ICONSTRUCTOR__REQUIREMEN_TRACABILITY_HANDLE = OPERATIONS_TYPE_FEATURE_COUNT + 17;
+
+	/**
+	 * The feature id for the '<em><b>Code Update CG Time</b></em>' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ICONSTRUCTOR__CODE_UPDATE_CG_TIME = OPERATIONS_TYPE_FEATURE_COUNT + 18;
+
+	/**
+	 * The feature id for the '<em><b>Tags</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ICONSTRUCTOR__TAGS = OPERATIONS_TYPE_FEATURE_COUNT + 19;
+
+	/**
+	 * The feature id for the '<em><b>Last ID</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ICONSTRUCTOR__LAST_ID = OPERATIONS_TYPE_FEATURE_COUNT + 20;
+
+	/**
+	 * The number of structural features of the '<em>IConstructor</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ICONSTRUCTOR_FEATURE_COUNT = OPERATIONS_TYPE_FEATURE_COUNT + 21;
+
+	/**
+	 * The number of operations of the '<em>IConstructor</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ICONSTRUCTOR_OPERATION_COUNT = OPERATIONS_TYPE_OPERATION_COUNT + 0;
+
+	/**
+	 * The meta object id for the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IValueSpecificationImpl <em>IValue Specification</em>}' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IValueSpecificationImpl
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.UMLRpyPackageImpl#getIValueSpecification()
+	 * @generated
+	 */
+	int IVALUE_SPECIFICATION = 214;
+
+	/**
+	 * The feature id for the '<em><b>EAnnotations</b></em>' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IVALUE_SPECIFICATION__EANNOTATIONS = IMODEL_ELEMENT__EANNOTATIONS;
+
+	/**
+	 * The feature id for the '<em><b>Display Name</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IVALUE_SPECIFICATION__DISPLAY_NAME = IMODEL_ELEMENT__DISPLAY_NAME;
+
+	/**
+	 * The number of structural features of the '<em>IValue Specification</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IVALUE_SPECIFICATION_FEATURE_COUNT = IMODEL_ELEMENT_FEATURE_COUNT + 0;
+
+	/**
+	 * The operation id for the '<em>Get EAnnotation</em>' operation.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IVALUE_SPECIFICATION___GET_EANNOTATION__STRING = IMODEL_ELEMENT___GET_EANNOTATION__STRING;
+
+	/**
+	 * The number of operations of the '<em>IValue Specification</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IVALUE_SPECIFICATION_OPERATION_COUNT = IMODEL_ELEMENT_OPERATION_COUNT + 0;
+
+	/**
+	 * The meta object id for the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IContextSpecificationImpl <em>IContext Specification</em>}' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IContextSpecificationImpl
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.UMLRpyPackageImpl#getIContextSpecification()
+	 * @generated
+	 */
+	int ICONTEXT_SPECIFICATION = 106;
+
+	/**
+	 * The feature id for the '<em><b>EAnnotations</b></em>' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ICONTEXT_SPECIFICATION__EANNOTATIONS = IVALUE_SPECIFICATION__EANNOTATIONS;
+
+	/**
+	 * The feature id for the '<em><b>Display Name</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ICONTEXT_SPECIFICATION__DISPLAY_NAME = IVALUE_SPECIFICATION__DISPLAY_NAME;
+
+	/**
+	 * The number of structural features of the '<em>IContext Specification</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ICONTEXT_SPECIFICATION_FEATURE_COUNT = IVALUE_SPECIFICATION_FEATURE_COUNT + 0;
+
+	/**
+	 * The operation id for the '<em>Get EAnnotation</em>' operation.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ICONTEXT_SPECIFICATION___GET_EANNOTATION__STRING = IVALUE_SPECIFICATION___GET_EANNOTATION__STRING;
+
+	/**
+	 * The number of operations of the '<em>IContext Specification</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ICONTEXT_SPECIFICATION_OPERATION_COUNT = IVALUE_SPECIFICATION_OPERATION_COUNT + 0;
+
+	/**
+	 * The meta object id for the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IControlledFileImpl <em>IControlled File</em>}' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IControlledFileImpl
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.UMLRpyPackageImpl#getIControlledFile()
+	 * @generated
+	 */
+	int ICONTROLLED_FILE = 107;
+
+	/**
+	 * The feature id for the '<em><b>EAnnotations</b></em>' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ICONTROLLED_FILE__EANNOTATIONS = IUNIT__EANNOTATIONS;
+
+	/**
+	 * The feature id for the '<em><b>Display Name</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ICONTROLLED_FILE__DISPLAY_NAME = IUNIT__DISPLAY_NAME;
+
+	/**
+	 * The number of structural features of the '<em>IControlled File</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ICONTROLLED_FILE_FEATURE_COUNT = IUNIT_FEATURE_COUNT + 0;
+
+	/**
+	 * The operation id for the '<em>Get EAnnotation</em>' operation.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ICONTROLLED_FILE___GET_EANNOTATION__STRING = IUNIT___GET_EANNOTATION__STRING;
+
+	/**
+	 * The number of operations of the '<em>IControlled File</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ICONTROLLED_FILE_OPERATION_COUNT = IUNIT_OPERATION_COUNT + 0;
+
+	/**
+	 * The meta object id for the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IDefaultDrvdTransImpl <em>IDefault Drvd Trans</em>}' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IDefaultDrvdTransImpl
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.UMLRpyPackageImpl#getIDefaultDrvdTrans()
+	 * @generated
+	 */
+	int IDEFAULT_DRVD_TRANS = 108;
+
+	/**
+	 * The feature id for the '<em><b>Modified Time Weak</b></em>' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IDEFAULT_DRVD_TRANS__MODIFIED_TIME_WEAK = DEFAULT_TRANS_TYPE_FEATURE_COUNT + 0;
+
+	/**
+	 * The feature id for the '<em><b>Static Reaction</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IDEFAULT_DRVD_TRANS__STATIC_REACTION = DEFAULT_TRANS_TYPE_FEATURE_COUNT + 1;
+
+	/**
+	 * The feature id for the '<em><b>Its Target</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IDEFAULT_DRVD_TRANS__ITS_TARGET = DEFAULT_TRANS_TYPE_FEATURE_COUNT + 2;
+
+	/**
+	 * The feature id for the '<em><b>Id</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IDEFAULT_DRVD_TRANS__ID = DEFAULT_TRANS_TYPE_FEATURE_COUNT + 3;
+
+	/**
+	 * The feature id for the '<em><b>Code Update CG Time</b></em>' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IDEFAULT_DRVD_TRANS__CODE_UPDATE_CG_TIME = DEFAULT_TRANS_TYPE_FEATURE_COUNT + 4;
+
+	/**
+	 * The feature id for the '<em><b>Requiremen Tracability Handle</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IDEFAULT_DRVD_TRANS__REQUIREMEN_TRACABILITY_HANDLE = DEFAULT_TRANS_TYPE_FEATURE_COUNT + 5;
+
+	/**
+	 * The feature id for the '<em><b>Description</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IDEFAULT_DRVD_TRANS__DESCRIPTION = DEFAULT_TRANS_TYPE_FEATURE_COUNT + 6;
+
+	/**
+	 * The feature id for the '<em><b>Its Label</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IDEFAULT_DRVD_TRANS__ITS_LABEL = DEFAULT_TRANS_TYPE_FEATURE_COUNT + 7;
+
+	/**
+	 * The feature id for the '<em><b>Uml Dependency ID</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IDEFAULT_DRVD_TRANS__UML_DEPENDENCY_ID = DEFAULT_TRANS_TYPE_FEATURE_COUNT + 8;
+
+	/**
+	 * The feature id for the '<em><b>My State</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IDEFAULT_DRVD_TRANS__MY_STATE = DEFAULT_TRANS_TYPE_FEATURE_COUNT + 9;
+
+	/**
+	 * The feature id for the '<em><b>Object Creation</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IDEFAULT_DRVD_TRANS__OBJECT_CREATION = DEFAULT_TRANS_TYPE_FEATURE_COUNT + 10;
+
+	/**
+	 * The feature id for the '<em><b>Name</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IDEFAULT_DRVD_TRANS__NAME = DEFAULT_TRANS_TYPE_FEATURE_COUNT + 11;
+
+	/**
+	 * The feature id for the '<em><b>Its Source</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IDEFAULT_DRVD_TRANS__ITS_SOURCE = DEFAULT_TRANS_TYPE_FEATURE_COUNT + 12;
+
+	/**
+	 * The feature id for the '<em><b>Of State</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IDEFAULT_DRVD_TRANS__OF_STATE = DEFAULT_TRANS_TYPE_FEATURE_COUNT + 13;
+
+	/**
+	 * The feature id for the '<em><b>Error Status</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IDEFAULT_DRVD_TRANS__ERROR_STATUS = DEFAULT_TRANS_TYPE_FEATURE_COUNT + 14;
+
+	/**
+	 * The feature id for the '<em><b>Inherits From Handle</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IDEFAULT_DRVD_TRANS__INHERITS_FROM_HANDLE = DEFAULT_TRANS_TYPE_FEATURE_COUNT + 15;
+
+	/**
+	 * The feature id for the '<em><b>Annotations</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IDEFAULT_DRVD_TRANS__ANNOTATIONS = DEFAULT_TRANS_TYPE_FEATURE_COUNT + 16;
+
+	/**
+	 * The feature id for the '<em><b>Stereotypes</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IDEFAULT_DRVD_TRANS__STEREOTYPES = DEFAULT_TRANS_TYPE_FEATURE_COUNT + 17;
+
+	/**
+	 * The number of structural features of the '<em>IDefault Drvd Trans</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IDEFAULT_DRVD_TRANS_FEATURE_COUNT = DEFAULT_TRANS_TYPE_FEATURE_COUNT + 18;
+
+	/**
+	 * The number of operations of the '<em>IDefault Drvd Trans</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IDEFAULT_DRVD_TRANS_OPERATION_COUNT = DEFAULT_TRANS_TYPE_OPERATION_COUNT + 0;
+
+	/**
+	 * The meta object id for the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IDependencyImpl <em>IDependency</em>}' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IDependencyImpl
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.UMLRpyPackageImpl#getIDependency()
+	 * @generated
+	 */
+	int IDEPENDENCY = 109;
+
+	/**
+	 * The feature id for the '<em><b>EAnnotations</b></em>' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IDEPENDENCY__EANNOTATIONS = IMODEL_ELEMENT__EANNOTATIONS;
+
+	/**
+	 * The feature id for the '<em><b>Display Name</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IDEPENDENCY__DISPLAY_NAME = IMODEL_ELEMENT__DISPLAY_NAME;
+
+	/**
+	 * The feature id for the '<em><b>Uml Dependency ID</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IDEPENDENCY__UML_DEPENDENCY_ID = IMODEL_ELEMENT_FEATURE_COUNT + 0;
+
+	/**
+	 * The feature id for the '<em><b>Object Creation</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IDEPENDENCY__OBJECT_CREATION = IMODEL_ELEMENT_FEATURE_COUNT + 1;
+
+	/**
+	 * The feature id for the '<em><b>Id</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IDEPENDENCY__ID = IMODEL_ELEMENT_FEATURE_COUNT + 2;
+
+	/**
+	 * The feature id for the '<em><b>My State</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IDEPENDENCY__MY_STATE = IMODEL_ELEMENT_FEATURE_COUNT + 3;
+
+	/**
+	 * The feature id for the '<em><b>Properties</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IDEPENDENCY__PROPERTIES = IMODEL_ELEMENT_FEATURE_COUNT + 4;
+
+	/**
+	 * The feature id for the '<em><b>Name</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IDEPENDENCY__NAME = IMODEL_ELEMENT_FEATURE_COUNT + 5;
+
+	/**
+	 * The feature id for the '<em><b>Stereotypes</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IDEPENDENCY__STEREOTYPES = IMODEL_ELEMENT_FEATURE_COUNT + 6;
+
+	/**
+	 * The feature id for the '<em><b>Modified Time Weak</b></em>' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IDEPENDENCY__MODIFIED_TIME_WEAK = IMODEL_ELEMENT_FEATURE_COUNT + 7;
+
+	/**
+	 * The feature id for the '<em><b>Depends On</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IDEPENDENCY__DEPENDS_ON = IMODEL_ELEMENT_FEATURE_COUNT + 8;
+
+	/**
+	 * The feature id for the '<em><b>Tags</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IDEPENDENCY__TAGS = IMODEL_ELEMENT_FEATURE_COUNT + 9;
+
+	/**
+	 * The feature id for the '<em><b>Annotations</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IDEPENDENCY__ANNOTATIONS = IMODEL_ELEMENT_FEATURE_COUNT + 10;
+
+	/**
+	 * The feature id for the '<em><b>Dependencies</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IDEPENDENCY__DEPENDENCIES = IMODEL_ELEMENT_FEATURE_COUNT + 11;
+
+	/**
+	 * The feature id for the '<em><b>Description</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IDEPENDENCY__DESCRIPTION = IMODEL_ELEMENT_FEATURE_COUNT + 12;
+
+	/**
+	 * The feature id for the '<em><b>Requiremen Tracability Handle</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IDEPENDENCY__REQUIREMEN_TRACABILITY_HANDLE = IMODEL_ELEMENT_FEATURE_COUNT + 13;
+
+	/**
+	 * The feature id for the '<em><b>Code Update CG Time</b></em>' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IDEPENDENCY__CODE_UPDATE_CG_TIME = IMODEL_ELEMENT_FEATURE_COUNT + 14;
+
+	/**
+	 * The number of structural features of the '<em>IDependency</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IDEPENDENCY_FEATURE_COUNT = IMODEL_ELEMENT_FEATURE_COUNT + 15;
+
+	/**
+	 * The operation id for the '<em>Get EAnnotation</em>' operation.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IDEPENDENCY___GET_EANNOTATION__STRING = IMODEL_ELEMENT___GET_EANNOTATION__STRING;
+
+	/**
+	 * The number of operations of the '<em>IDependency</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IDEPENDENCY_OPERATION_COUNT = IMODEL_ELEMENT_OPERATION_COUNT + 0;
+
+	/**
+	 * The meta object id for the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IDeploymentDiagramImpl <em>IDeployment Diagram</em>}' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IDeploymentDiagramImpl
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.UMLRpyPackageImpl#getIDeploymentDiagram()
+	 * @generated
+	 */
+	int IDEPLOYMENT_DIAGRAM = 110;
+
+	/**
+	 * The feature id for the '<em><b>EAnnotations</b></em>' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IDEPLOYMENT_DIAGRAM__EANNOTATIONS = IDIAGRAM__EANNOTATIONS;
+
+	/**
+	 * The feature id for the '<em><b>Display Name</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IDEPLOYMENT_DIAGRAM__DISPLAY_NAME = IDIAGRAM__DISPLAY_NAME;
+
+	/**
+	 * The feature id for the '<em><b>Id</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IDEPLOYMENT_DIAGRAM__ID = IDIAGRAM__ID;
+
+	/**
+	 * The feature id for the '<em><b>Last Modified Time</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IDEPLOYMENT_DIAGRAM__LAST_MODIFIED_TIME = IDIAGRAM__LAST_MODIFIED_TIME;
+
+	/**
+	 * The feature id for the '<em><b>Requiremen Tracability Handle</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IDEPLOYMENT_DIAGRAM__REQUIREMEN_TRACABILITY_HANDLE = IDIAGRAM__REQUIREMEN_TRACABILITY_HANDLE;
+
+	/**
+	 * The feature id for the '<em><b>Default Subsystem</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IDEPLOYMENT_DIAGRAM__DEFAULT_SUBSYSTEM = IDIAGRAM__DEFAULT_SUBSYSTEM;
+
+	/**
+	 * The feature id for the '<em><b>Description</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IDEPLOYMENT_DIAGRAM__DESCRIPTION = IDIAGRAM__DESCRIPTION;
+
+	/**
+	 * The feature id for the '<em><b>Uml Dependency ID</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IDEPLOYMENT_DIAGRAM__UML_DEPENDENCY_ID = IDIAGRAM__UML_DEPENDENCY_ID;
+
+	/**
+	 * The feature id for the '<em><b>Last ID</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IDEPLOYMENT_DIAGRAM__LAST_ID = IDIAGRAM__LAST_ID;
+
+	/**
+	 * The feature id for the '<em><b>My State</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IDEPLOYMENT_DIAGRAM__MY_STATE = IDIAGRAM__MY_STATE;
+
+	/**
+	 * The feature id for the '<em><b>Owner Handle</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IDEPLOYMENT_DIAGRAM__OWNER_HANDLE = IDIAGRAM__OWNER_HANDLE;
+
+	/**
+	 * The feature id for the '<em><b>Object Creation</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IDEPLOYMENT_DIAGRAM__OBJECT_CREATION = IDIAGRAM__OBJECT_CREATION;
+
+	/**
+	 * The feature id for the '<em><b>Name</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IDEPLOYMENT_DIAGRAM__NAME = IDIAGRAM__NAME;
+
+	/**
+	 * The feature id for the '<em><b>Cmheader</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IDEPLOYMENT_DIAGRAM__CMHEADER = IDIAGRAM__CMHEADER;
+
+	/**
+	 * The feature id for the '<em><b>Properties</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IDEPLOYMENT_DIAGRAM__PROPERTIES = IDIAGRAM__PROPERTIES;
+
+	/**
+	 * The feature id for the '<em><b>Stereotypes</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IDEPLOYMENT_DIAGRAM__STEREOTYPES = IDIAGRAM__STEREOTYPES;
+
+	/**
+	 * The feature id for the '<em><b>Modified Time Weak</b></em>' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IDEPLOYMENT_DIAGRAM__MODIFIED_TIME_WEAK = IDIAGRAM__MODIFIED_TIME_WEAK;
+
+	/**
+	 * The feature id for the '<em><b>Graphic Chart</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IDEPLOYMENT_DIAGRAM__GRAPHIC_CHART = IDIAGRAM__GRAPHIC_CHART;
+
+	/**
+	 * The feature id for the '<em><b>Annotations</b></em>' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IDEPLOYMENT_DIAGRAM__ANNOTATIONS = IDIAGRAM__ANNOTATIONS;
+
+	/**
+	 * The feature id for the '<em><b>Code Update CG Time</b></em>' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IDEPLOYMENT_DIAGRAM__CODE_UPDATE_CG_TIME = IDIAGRAM__CODE_UPDATE_CG_TIME;
+
+	/**
+	 * The feature id for the '<em><b>Hyper Links</b></em>' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IDEPLOYMENT_DIAGRAM__HYPER_LINKS = IDIAGRAM__HYPER_LINKS;
+
+	/**
+	 * The number of structural features of the '<em>IDeployment Diagram</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IDEPLOYMENT_DIAGRAM_FEATURE_COUNT = IDIAGRAM_FEATURE_COUNT + 0;
+
+	/**
+	 * The operation id for the '<em>Get EAnnotation</em>' operation.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IDEPLOYMENT_DIAGRAM___GET_EANNOTATION__STRING = IDIAGRAM___GET_EANNOTATION__STRING;
+
+	/**
+	 * The number of operations of the '<em>IDeployment Diagram</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IDEPLOYMENT_DIAGRAM_OPERATION_COUNT = IDIAGRAM_OPERATION_COUNT + 0;
+
+	/**
+	 * The meta object id for the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IDescriptionImpl <em>IDescription</em>}' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IDescriptionImpl
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.UMLRpyPackageImpl#getIDescription()
+	 * @generated
+	 */
+	int IDESCRIPTION = 111;
+
+	/**
+	 * The feature id for the '<em><b>Text RTF</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IDESCRIPTION__TEXT_RTF = DESCRIPTION_TYPE_FEATURE_COUNT + 0;
+
+	/**
+	 * The feature id for the '<em><b>Text</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IDESCRIPTION__TEXT = DESCRIPTION_TYPE_FEATURE_COUNT + 1;
+
+	/**
+	 * The feature id for the '<em><b>Hyperlinks</b></em>' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IDESCRIPTION__HYPERLINKS = DESCRIPTION_TYPE_FEATURE_COUNT + 2;
+
+	/**
+	 * The number of structural features of the '<em>IDescription</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IDESCRIPTION_FEATURE_COUNT = DESCRIPTION_TYPE_FEATURE_COUNT + 3;
+
+	/**
+	 * The number of operations of the '<em>IDescription</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IDESCRIPTION_OPERATION_COUNT = DESCRIPTION_TYPE_OPERATION_COUNT + 0;
+
+	/**
+	 * The meta object id for the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IDestructorImpl <em>IDestructor</em>}' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IDestructorImpl
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.UMLRpyPackageImpl#getIDestructor()
+	 * @generated
+	 */
+	int IDESTRUCTOR = 112;
+
+	/**
+	 * The feature id for the '<em><b>Virtual</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IDESTRUCTOR__VIRTUAL = OPERATIONS_TYPE__VIRTUAL;
+
+	/**
+	 * The feature id for the '<em><b>Uml Dependency ID</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IDESTRUCTOR__UML_DEPENDENCY_ID = OPERATIONS_TYPE_FEATURE_COUNT + 0;
+
+	/**
+	 * The feature id for the '<em><b>Object Creation</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IDESTRUCTOR__OBJECT_CREATION = OPERATIONS_TYPE_FEATURE_COUNT + 1;
+
+	/**
+	 * The feature id for the '<em><b>Id</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IDESTRUCTOR__ID = OPERATIONS_TYPE_FEATURE_COUNT + 2;
+
+	/**
+	 * The feature id for the '<em><b>Name</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IDESTRUCTOR__NAME = OPERATIONS_TYPE_FEATURE_COUNT + 3;
+
+	/**
+	 * The feature id for the '<em><b>Args</b></em>' reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IDESTRUCTOR__ARGS = OPERATIONS_TYPE_FEATURE_COUNT + 4;
+
+	/**
+	 * The feature id for the '<em><b>Abstract</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IDESTRUCTOR__ABSTRACT = OPERATIONS_TYPE_FEATURE_COUNT + 5;
+
+	/**
+	 * The feature id for the '<em><b>Final</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IDESTRUCTOR__FINAL = OPERATIONS_TYPE_FEATURE_COUNT + 6;
+
+	/**
+	 * The feature id for the '<em><b>Concurrency</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IDESTRUCTOR__CONCURRENCY = OPERATIONS_TYPE_FEATURE_COUNT + 7;
+
+	/**
+	 * The feature id for the '<em><b>Protection</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IDESTRUCTOR__PROTECTION = OPERATIONS_TYPE_FEATURE_COUNT + 8;
+
+	/**
+	 * The feature id for the '<em><b>Static</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IDESTRUCTOR__STATIC = OPERATIONS_TYPE_FEATURE_COUNT + 9;
+
+	/**
+	 * The feature id for the '<em><b>Constant</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IDESTRUCTOR__CONSTANT = OPERATIONS_TYPE_FEATURE_COUNT + 10;
+
+	/**
+	 * The feature id for the '<em><b>Its Body</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IDESTRUCTOR__ITS_BODY = OPERATIONS_TYPE_FEATURE_COUNT + 11;
+
+	/**
+	 * The feature id for the '<em><b>Modified Time Weak</b></em>' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IDESTRUCTOR__MODIFIED_TIME_WEAK = OPERATIONS_TYPE_FEATURE_COUNT + 12;
+
+	/**
+	 * The feature id for the '<em><b>Description</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IDESTRUCTOR__DESCRIPTION = OPERATIONS_TYPE_FEATURE_COUNT + 13;
+
+	/**
+	 * The feature id for the '<em><b>Properties</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IDESTRUCTOR__PROPERTIES = OPERATIONS_TYPE_FEATURE_COUNT + 14;
+
+	/**
+	 * The feature id for the '<em><b>My State</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IDESTRUCTOR__MY_STATE = OPERATIONS_TYPE_FEATURE_COUNT + 15;
+
+	/**
+	 * The feature id for the '<em><b>Return Type</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IDESTRUCTOR__RETURN_TYPE = OPERATIONS_TYPE_FEATURE_COUNT + 16;
+
+	/**
+	 * The number of structural features of the '<em>IDestructor</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IDESTRUCTOR_FEATURE_COUNT = OPERATIONS_TYPE_FEATURE_COUNT + 17;
+
+	/**
+	 * The number of operations of the '<em>IDestructor</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IDESTRUCTOR_OPERATION_COUNT = OPERATIONS_TYPE_OPERATION_COUNT + 0;
+
+	/**
+	 * The meta object id for the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IEmbededFileImpl <em>IEmbeded File</em>}' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IEmbededFileImpl
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.UMLRpyPackageImpl#getIEmbededFile()
+	 * @generated
+	 */
+	int IEMBEDED_FILE = 114;
+
+	/**
+	 * The feature id for the '<em><b>Id</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IEMBEDED_FILE__ID = EMBEDED_FILES_TYPE_FEATURE_COUNT + 0;
+
+	/**
+	 * The feature id for the '<em><b>Name</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IEMBEDED_FILE__NAME = EMBEDED_FILES_TYPE_FEATURE_COUNT + 1;
+
+	/**
+	 * The feature id for the '<em><b>Modified Time Weak</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IEMBEDED_FILE__MODIFIED_TIME_WEAK = EMBEDED_FILES_TYPE_FEATURE_COUNT + 2;
+
+	/**
+	 * The feature id for the '<em><b>May Need To Relocate</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IEMBEDED_FILE__MAY_NEED_TO_RELOCATE = EMBEDED_FILES_TYPE_FEATURE_COUNT + 3;
+
+	/**
+	 * The feature id for the '<em><b>Last Known Full Path</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IEMBEDED_FILE__LAST_KNOWN_FULL_PATH = EMBEDED_FILES_TYPE_FEATURE_COUNT + 4;
+
+	/**
+	 * The feature id for the '<em><b>Stereotypes</b></em>' reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IEMBEDED_FILE__STEREOTYPES = EMBEDED_FILES_TYPE_FEATURE_COUNT + 5;
+
+	/**
+	 * The feature id for the '<em><b>Tags</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IEMBEDED_FILE__TAGS = EMBEDED_FILES_TYPE_FEATURE_COUNT + 6;
+
+	/**
+	 * The number of structural features of the '<em>IEmbeded File</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IEMBEDED_FILE_FEATURE_COUNT = EMBEDED_FILES_TYPE_FEATURE_COUNT + 7;
+
+	/**
+	 * The number of operations of the '<em>IEmbeded File</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IEMBEDED_FILE_OPERATION_COUNT = EMBEDED_FILES_TYPE_OPERATION_COUNT + 0;
+
+	/**
+	 * The meta object id for the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IEnumerationLiteralImpl <em>IEnumeration Literal</em>}' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IEnumerationLiteralImpl
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.UMLRpyPackageImpl#getIEnumerationLiteral()
+	 * @generated
+	 */
+	int IENUMERATION_LITERAL = 115;
+
+	/**
+	 * The feature id for the '<em><b>EAnnotations</b></em>' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IENUMERATION_LITERAL__EANNOTATIONS = IMODEL_ELEMENT__EANNOTATIONS;
+
+	/**
+	 * The feature id for the '<em><b>Display Name</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IENUMERATION_LITERAL__DISPLAY_NAME = IMODEL_ELEMENT__DISPLAY_NAME;
+
+	/**
+	 * The feature id for the '<em><b>Id</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IENUMERATION_LITERAL__ID = IMODEL_ELEMENT_FEATURE_COUNT + 0;
+
+	/**
+	 * The feature id for the '<em><b>Name</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IENUMERATION_LITERAL__NAME = IMODEL_ELEMENT_FEATURE_COUNT + 1;
+
+	/**
+	 * The feature id for the '<em><b>Modified Time Weak</b></em>' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IENUMERATION_LITERAL__MODIFIED_TIME_WEAK = IMODEL_ELEMENT_FEATURE_COUNT + 2;
+
+	/**
+	 * The feature id for the '<em><b>Value</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IENUMERATION_LITERAL__VALUE = IMODEL_ELEMENT_FEATURE_COUNT + 3;
+
+	/**
+	 * The feature id for the '<em><b>Properties</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IENUMERATION_LITERAL__PROPERTIES = IMODEL_ELEMENT_FEATURE_COUNT + 4;
+
+	/**
+	 * The feature id for the '<em><b>Tags</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IENUMERATION_LITERAL__TAGS = IMODEL_ELEMENT_FEATURE_COUNT + 5;
+
+	/**
+	 * The feature id for the '<em><b>Code Update CG Time</b></em>' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IENUMERATION_LITERAL__CODE_UPDATE_CG_TIME = IMODEL_ELEMENT_FEATURE_COUNT + 6;
+
+	/**
+	 * The feature id for the '<em><b>Description</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IENUMERATION_LITERAL__DESCRIPTION = IMODEL_ELEMENT_FEATURE_COUNT + 7;
+
+	/**
+	 * The number of structural features of the '<em>IEnumeration Literal</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IENUMERATION_LITERAL_FEATURE_COUNT = IMODEL_ELEMENT_FEATURE_COUNT + 8;
+
+	/**
+	 * The operation id for the '<em>Get EAnnotation</em>' operation.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IENUMERATION_LITERAL___GET_EANNOTATION__STRING = IMODEL_ELEMENT___GET_EANNOTATION__STRING;
+
+	/**
+	 * The number of operations of the '<em>IEnumeration Literal</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IENUMERATION_LITERAL_OPERATION_COUNT = IMODEL_ELEMENT_OPERATION_COUNT + 0;
+
+	/**
+	 * The meta object id for the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IInterfaceItemImpl <em>IInterface Item</em>}' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IInterfaceItemImpl
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.UMLRpyPackageImpl#getIInterfaceItem()
+	 * @generated
+	 */
+	int IINTERFACE_ITEM = 142;
+
+	/**
+	 * The feature id for the '<em><b>EAnnotations</b></em>' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IINTERFACE_ITEM__EANNOTATIONS = ICLASSIFIER__EANNOTATIONS;
+
+	/**
+	 * The feature id for the '<em><b>Display Name</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IINTERFACE_ITEM__DISPLAY_NAME = ICLASSIFIER__DISPLAY_NAME;
+
+	/**
+	 * The number of structural features of the '<em>IInterface Item</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IINTERFACE_ITEM_FEATURE_COUNT = ICLASSIFIER_FEATURE_COUNT + 0;
+
+	/**
+	 * The operation id for the '<em>Get EAnnotation</em>' operation.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IINTERFACE_ITEM___GET_EANNOTATION__STRING = ICLASSIFIER___GET_EANNOTATION__STRING;
+
+	/**
+	 * The number of operations of the '<em>IInterface Item</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IINTERFACE_ITEM_OPERATION_COUNT = ICLASSIFIER_OPERATION_COUNT + 0;
+
+	/**
+	 * The meta object id for the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IEventImpl <em>IEvent</em>}' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IEventImpl
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.UMLRpyPackageImpl#getIEvent()
+	 * @generated
+	 */
+	int IEVENT = 116;
+
+	/**
+	 * The feature id for the '<em><b>EAnnotations</b></em>' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IEVENT__EANNOTATIONS = IINTERFACE_ITEM__EANNOTATIONS;
+
+	/**
+	 * The feature id for the '<em><b>Display Name</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IEVENT__DISPLAY_NAME = IINTERFACE_ITEM__DISPLAY_NAME;
+
+	/**
+	 * The feature id for the '<em><b>Uml Dependency ID</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IEVENT__UML_DEPENDENCY_ID = IINTERFACE_ITEM_FEATURE_COUNT + 0;
+
+	/**
+	 * The feature id for the '<em><b>Object Creation</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IEVENT__OBJECT_CREATION = IINTERFACE_ITEM_FEATURE_COUNT + 1;
+
+	/**
+	 * The feature id for the '<em><b>Last ID</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IEVENT__LAST_ID = IINTERFACE_ITEM_FEATURE_COUNT + 2;
+
+	/**
+	 * The feature id for the '<em><b>Id</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IEVENT__ID = IINTERFACE_ITEM_FEATURE_COUNT + 3;
+
+	/**
+	 * The feature id for the '<em><b>My State</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IEVENT__MY_STATE = IINTERFACE_ITEM_FEATURE_COUNT + 4;
+
+	/**
+	 * The feature id for the '<em><b>Name</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IEVENT__NAME = IINTERFACE_ITEM_FEATURE_COUNT + 5;
+
+	/**
+	 * The feature id for the '<em><b>Virtual</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IEVENT__VIRTUAL = IINTERFACE_ITEM_FEATURE_COUNT + 6;
+
+	/**
+	 * The feature id for the '<em><b>Modified Time Weak</b></em>' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IEVENT__MODIFIED_TIME_WEAK = IINTERFACE_ITEM_FEATURE_COUNT + 7;
+
+	/**
+	 * The feature id for the '<em><b>Args</b></em>' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IEVENT__ARGS = IINTERFACE_ITEM_FEATURE_COUNT + 8;
+
+	/**
+	 * The feature id for the '<em><b>Stereotypes</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IEVENT__STEREOTYPES = IINTERFACE_ITEM_FEATURE_COUNT + 9;
+
+	/**
+	 * The feature id for the '<em><b>Description</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IEVENT__DESCRIPTION = IINTERFACE_ITEM_FEATURE_COUNT + 10;
+
+	/**
+	 * The feature id for the '<em><b>Properties</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IEVENT__PROPERTIES = IINTERFACE_ITEM_FEATURE_COUNT + 11;
+
+	/**
+	 * The feature id for the '<em><b>Dependencies</b></em>' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IEVENT__DEPENDENCIES = IINTERFACE_ITEM_FEATURE_COUNT + 12;
+
+	/**
+	 * The feature id for the '<em><b>Tags</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IEVENT__TAGS = IINTERFACE_ITEM_FEATURE_COUNT + 13;
+
+	/**
+	 * The feature id for the '<em><b>Super Event</b></em>' reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IEVENT__SUPER_EVENT = IINTERFACE_ITEM_FEATURE_COUNT + 14;
+
+	/**
+	 * The feature id for the '<em><b>Requiremen Tracability Handle</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IEVENT__REQUIREMEN_TRACABILITY_HANDLE = IINTERFACE_ITEM_FEATURE_COUNT + 15;
+
+	/**
+	 * The feature id for the '<em><b>Annotations</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IEVENT__ANNOTATIONS = IINTERFACE_ITEM_FEATURE_COUNT + 16;
+
+	/**
+	 * The number of structural features of the '<em>IEvent</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IEVENT_FEATURE_COUNT = IINTERFACE_ITEM_FEATURE_COUNT + 17;
+
+	/**
+	 * The operation id for the '<em>Get EAnnotation</em>' operation.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IEVENT___GET_EANNOTATION__STRING = IINTERFACE_ITEM___GET_EANNOTATION__STRING;
+
+	/**
+	 * The number of operations of the '<em>IEvent</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IEVENT_OPERATION_COUNT = IINTERFACE_ITEM_OPERATION_COUNT + 0;
+
+	/**
+	 * The meta object id for the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IEventHandleImpl <em>IEvent Handle</em>}' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IEventHandleImpl
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.UMLRpyPackageImpl#getIEventHandle()
+	 * @generated
+	 */
+	int IEVENT_HANDLE = 117;
+
+	/**
+	 * The feature id for the '<em><b>M2 Class</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IEVENT_HANDLE__M2_CLASS = 0;
+
+	/**
+	 * The feature id for the '<em><b>Filename</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IEVENT_HANDLE__FILENAME = 1;
+
+	/**
+	 * The feature id for the '<em><b>Subsystem</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IEVENT_HANDLE__SUBSYSTEM = 2;
+
+	/**
+	 * The feature id for the '<em><b>Class</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IEVENT_HANDLE__CLASS = 3;
+
+	/**
+	 * The feature id for the '<em><b>Name</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IEVENT_HANDLE__NAME = 4;
+
+	/**
+	 * The feature id for the '<em><b>Id</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IEVENT_HANDLE__ID = 5;
+
+	/**
+	 * The number of structural features of the '<em>IEvent Handle</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IEVENT_HANDLE_FEATURE_COUNT = 6;
+
+	/**
+	 * The number of operations of the '<em>IEvent Handle</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IEVENT_HANDLE_OPERATION_COUNT = 0;
+
+	/**
+	 * The meta object id for the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IEventReceptionImpl <em>IEvent Reception</em>}' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IEventReceptionImpl
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.UMLRpyPackageImpl#getIEventReception()
+	 * @generated
+	 */
+	int IEVENT_RECEPTION = 118;
+
+	/**
+	 * The feature id for the '<em><b>EAnnotations</b></em>' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IEVENT_RECEPTION__EANNOTATIONS = IINTERFACE_ITEM__EANNOTATIONS;
+
+	/**
+	 * The feature id for the '<em><b>Display Name</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IEVENT_RECEPTION__DISPLAY_NAME = IINTERFACE_ITEM__DISPLAY_NAME;
+
+	/**
+	 * The number of structural features of the '<em>IEvent Reception</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IEVENT_RECEPTION_FEATURE_COUNT = IINTERFACE_ITEM_FEATURE_COUNT + 0;
+
+	/**
+	 * The operation id for the '<em>Get EAnnotation</em>' operation.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IEVENT_RECEPTION___GET_EANNOTATION__STRING = IINTERFACE_ITEM___GET_EANNOTATION__STRING;
+
+	/**
+	 * The number of operations of the '<em>IEvent Reception</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IEVENT_RECEPTION_OPERATION_COUNT = IINTERFACE_ITEM_OPERATION_COUNT + 0;
+
+	/**
+	 * The meta object id for the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IExecutionOccurrenceImpl <em>IExecution Occurrence</em>}' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IExecutionOccurrenceImpl
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.UMLRpyPackageImpl#getIExecutionOccurrence()
+	 * @generated
+	 */
+	int IEXECUTION_OCCURRENCE = 119;
+
+	/**
+	 * The feature id for the '<em><b>EAnnotations</b></em>' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IEXECUTION_OCCURRENCE__EANNOTATIONS = IMODEL_ELEMENT__EANNOTATIONS;
+
+	/**
+	 * The feature id for the '<em><b>Display Name</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IEXECUTION_OCCURRENCE__DISPLAY_NAME = IMODEL_ELEMENT__DISPLAY_NAME;
+
+	/**
+	 * The feature id for the '<em><b>Id</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IEXECUTION_OCCURRENCE__ID = IMODEL_ELEMENT_FEATURE_COUNT + 0;
+
+	/**
+	 * The feature id for the '<em><b>Mstart Message</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IEXECUTION_OCCURRENCE__MSTART_MESSAGE = IMODEL_ELEMENT_FEATURE_COUNT + 1;
+
+	/**
+	 * The feature id for the '<em><b>Mend Message</b></em>' reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IEXECUTION_OCCURRENCE__MEND_MESSAGE = IMODEL_ELEMENT_FEATURE_COUNT + 2;
+
+	/**
+	 * The feature id for the '<em><b>Mlength</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IEXECUTION_OCCURRENCE__MLENGTH = IMODEL_ELEMENT_FEATURE_COUNT + 3;
+
+	/**
+	 * The number of structural features of the '<em>IExecution Occurrence</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IEXECUTION_OCCURRENCE_FEATURE_COUNT = IMODEL_ELEMENT_FEATURE_COUNT + 4;
+
+	/**
+	 * The operation id for the '<em>Get EAnnotation</em>' operation.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IEXECUTION_OCCURRENCE___GET_EANNOTATION__STRING = IMODEL_ELEMENT___GET_EANNOTATION__STRING;
+
+	/**
+	 * The number of operations of the '<em>IExecution Occurrence</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IEXECUTION_OCCURRENCE_OPERATION_COUNT = IMODEL_ELEMENT_OPERATION_COUNT + 0;
+
+	/**
+	 * The meta object id for the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IExternalHyperlinkImpl <em>IExternal Hyperlink</em>}' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IExternalHyperlinkImpl
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.UMLRpyPackageImpl#getIExternalHyperlink()
+	 * @generated
+	 */
+	int IEXTERNAL_HYPERLINK = 120;
+
+	/**
+	 * The feature id for the '<em><b>EAnnotations</b></em>' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IEXTERNAL_HYPERLINK__EANNOTATIONS = HYPER_LINKS_TYPE__EANNOTATIONS;
+
+	/**
+	 * The feature id for the '<em><b>Display Name</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IEXTERNAL_HYPERLINK__DISPLAY_NAME = HYPER_LINKS_TYPE__DISPLAY_NAME;
+
+	/**
+	 * The feature id for the '<em><b>Target</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IEXTERNAL_HYPERLINK__TARGET = HYPER_LINKS_TYPE_FEATURE_COUNT + 0;
+
+	/**
+	 * The number of structural features of the '<em>IExternal Hyperlink</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IEXTERNAL_HYPERLINK_FEATURE_COUNT = HYPER_LINKS_TYPE_FEATURE_COUNT + 1;
+
+	/**
+	 * The operation id for the '<em>Get EAnnotation</em>' operation.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IEXTERNAL_HYPERLINK___GET_EANNOTATION__STRING = HYPER_LINKS_TYPE___GET_EANNOTATION__STRING;
+
+	/**
+	 * The number of operations of the '<em>IExternal Hyperlink</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IEXTERNAL_HYPERLINK_OPERATION_COUNT = HYPER_LINKS_TYPE_OPERATION_COUNT + 0;
+
+	/**
+	 * The meta object id for the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IFileImpl <em>IFile</em>}' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IFileImpl
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.UMLRpyPackageImpl#getIFile()
+	 * @generated
+	 */
+	int IFILE = 121;
+
+	/**
+	 * The feature id for the '<em><b>EAnnotations</b></em>' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IFILE__EANNOTATIONS = IUNIT__EANNOTATIONS;
+
+	/**
+	 * The feature id for the '<em><b>Display Name</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IFILE__DISPLAY_NAME = IUNIT__DISPLAY_NAME;
+
+	/**
+	 * The feature id for the '<em><b>Modified Time Weak</b></em>' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IFILE__MODIFIED_TIME_WEAK = IUNIT_FEATURE_COUNT + 0;
+
+	/**
+	 * The feature id for the '<em><b>Id</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IFILE__ID = IUNIT_FEATURE_COUNT + 1;
+
+	/**
+	 * The feature id for the '<em><b>Uml Dependency ID</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IFILE__UML_DEPENDENCY_ID = IUNIT_FEATURE_COUNT + 2;
+
+	/**
+	 * The feature id for the '<em><b>Last ID</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IFILE__LAST_ID = IUNIT_FEATURE_COUNT + 3;
+
+	/**
+	 * The feature id for the '<em><b>My State</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IFILE__MY_STATE = IUNIT_FEATURE_COUNT + 4;
+
+	/**
+	 * The feature id for the '<em><b>Mpath</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IFILE__MPATH = IUNIT_FEATURE_COUNT + 5;
+
+	/**
+	 * The feature id for the '<em><b>Object Creation</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IFILE__OBJECT_CREATION = IUNIT_FEATURE_COUNT + 6;
+
+	/**
+	 * The feature id for the '<em><b>Name</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IFILE__NAME = IUNIT_FEATURE_COUNT + 7;
+
+	/**
+	 * The feature id for the '<em><b>Properties</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IFILE__PROPERTIES = IUNIT_FEATURE_COUNT + 8;
+
+	/**
+	 * The feature id for the '<em><b>Mtype</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IFILE__MTYPE = IUNIT_FEATURE_COUNT + 9;
+
+	/**
+	 * The feature id for the '<em><b>Fragments</b></em>' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IFILE__FRAGMENTS = IUNIT_FEATURE_COUNT + 10;
+
+	/**
+	 * The feature id for the '<em><b>Description</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IFILE__DESCRIPTION = IUNIT_FEATURE_COUNT + 11;
+
+	/**
+	 * The feature id for the '<em><b>Dependencies</b></em>' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IFILE__DEPENDENCIES = IUNIT_FEATURE_COUNT + 12;
+
+	/**
+	 * The number of structural features of the '<em>IFile</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IFILE_FEATURE_COUNT = IUNIT_FEATURE_COUNT + 13;
+
+	/**
+	 * The operation id for the '<em>Get EAnnotation</em>' operation.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IFILE___GET_EANNOTATION__STRING = IUNIT___GET_EANNOTATION__STRING;
+
+	/**
+	 * The number of operations of the '<em>IFile</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IFILE_OPERATION_COUNT = IUNIT_OPERATION_COUNT + 0;
+
+	/**
+	 * The meta object id for the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IFileFragmentImpl <em>IFile Fragment</em>}' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IFileFragmentImpl
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.UMLRpyPackageImpl#getIFileFragment()
+	 * @generated
+	 */
+	int IFILE_FRAGMENT = 122;
+
+	/**
+	 * The feature id for the '<em><b>EAnnotations</b></em>' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IFILE_FRAGMENT__EANNOTATIONS = IMODEL_ELEMENT__EANNOTATIONS;
+
+	/**
+	 * The feature id for the '<em><b>Display Name</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IFILE_FRAGMENT__DISPLAY_NAME = IMODEL_ELEMENT__DISPLAY_NAME;
+
+	/**
+	 * The feature id for the '<em><b>Id</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IFILE_FRAGMENT__ID = IMODEL_ELEMENT_FEATURE_COUNT + 0;
+
+	/**
+	 * The feature id for the '<em><b>Name</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IFILE_FRAGMENT__NAME = IMODEL_ELEMENT_FEATURE_COUNT + 1;
+
+	/**
+	 * The feature id for the '<em><b>Mtype</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IFILE_FRAGMENT__MTYPE = IMODEL_ELEMENT_FEATURE_COUNT + 2;
+
+	/**
+	 * The feature id for the '<em><b>Mtext</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IFILE_FRAGMENT__MTEXT = IMODEL_ELEMENT_FEATURE_COUNT + 3;
+
+	/**
+	 * The feature id for the '<em><b>Mstart Row</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IFILE_FRAGMENT__MSTART_ROW = IMODEL_ELEMENT_FEATURE_COUNT + 4;
+
+	/**
+	 * The feature id for the '<em><b>Mstart Col</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IFILE_FRAGMENT__MSTART_COL = IMODEL_ELEMENT_FEATURE_COUNT + 5;
+
+	/**
+	 * The feature id for the '<em><b>Description</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IFILE_FRAGMENT__DESCRIPTION = IMODEL_ELEMENT_FEATURE_COUNT + 6;
+
+	/**
+	 * The feature id for the '<em><b>Mstart Col Short</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IFILE_FRAGMENT__MSTART_COL_SHORT = IMODEL_ELEMENT_FEATURE_COUNT + 7;
+
+	/**
+	 * The feature id for the '<em><b>Mend Row</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IFILE_FRAGMENT__MEND_ROW = IMODEL_ELEMENT_FEATURE_COUNT + 8;
+
+	/**
+	 * The feature id for the '<em><b>Mend Col Short</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IFILE_FRAGMENT__MEND_COL_SHORT = IMODEL_ELEMENT_FEATURE_COUNT + 9;
+
+	/**
+	 * The feature id for the '<em><b>Msubject</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IFILE_FRAGMENT__MSUBJECT = IMODEL_ELEMENT_FEATURE_COUNT + 10;
+
+	/**
+	 * The feature id for the '<em><b>Tags</b></em>' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IFILE_FRAGMENT__TAGS = IMODEL_ELEMENT_FEATURE_COUNT + 11;
+
+	/**
+	 * The feature id for the '<em><b>Fragments</b></em>' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IFILE_FRAGMENT__FRAGMENTS = IMODEL_ELEMENT_FEATURE_COUNT + 12;
+
+	/**
+	 * The feature id for the '<em><b>Modified Time Weak</b></em>' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IFILE_FRAGMENT__MODIFIED_TIME_WEAK = IMODEL_ELEMENT_FEATURE_COUNT + 13;
+
+	/**
+	 * The feature id for the '<em><b>Object Creation</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IFILE_FRAGMENT__OBJECT_CREATION = IMODEL_ELEMENT_FEATURE_COUNT + 14;
+
+	/**
+	 * The feature id for the '<em><b>Uml Dependency ID</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IFILE_FRAGMENT__UML_DEPENDENCY_ID = IMODEL_ELEMENT_FEATURE_COUNT + 15;
+
+	/**
+	 * The number of structural features of the '<em>IFile Fragment</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IFILE_FRAGMENT_FEATURE_COUNT = IMODEL_ELEMENT_FEATURE_COUNT + 16;
+
+	/**
+	 * The operation id for the '<em>Get EAnnotation</em>' operation.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IFILE_FRAGMENT___GET_EANNOTATION__STRING = IMODEL_ELEMENT___GET_EANNOTATION__STRING;
+
+	/**
+	 * The number of operations of the '<em>IFile Fragment</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IFILE_FRAGMENT_OPERATION_COUNT = IMODEL_ELEMENT_OPERATION_COUNT + 0;
+
+	/**
+	 * The meta object id for the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IFlowImpl <em>IFlow</em>}' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IFlowImpl
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.UMLRpyPackageImpl#getIFlow()
+	 * @generated
+	 */
+	int IFLOW = 123;
+
+	/**
+	 * The feature id for the '<em><b>EAnnotations</b></em>' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IFLOW__EANNOTATIONS = IMODEL_ELEMENT__EANNOTATIONS;
+
+	/**
+	 * The feature id for the '<em><b>Display Name</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IFLOW__DISPLAY_NAME = IMODEL_ELEMENT__DISPLAY_NAME;
+
+	/**
+	 * The number of structural features of the '<em>IFlow</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IFLOW_FEATURE_COUNT = IMODEL_ELEMENT_FEATURE_COUNT + 0;
+
+	/**
+	 * The operation id for the '<em>Get EAnnotation</em>' operation.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IFLOW___GET_EANNOTATION__STRING = IMODEL_ELEMENT___GET_EANNOTATION__STRING;
+
+	/**
+	 * The number of operations of the '<em>IFlow</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IFLOW_OPERATION_COUNT = IMODEL_ELEMENT_OPERATION_COUNT + 0;
+
+	/**
+	 * The meta object id for the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IFlowItemImpl <em>IFlow Item</em>}' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IFlowItemImpl
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.UMLRpyPackageImpl#getIFlowItem()
+	 * @generated
+	 */
+	int IFLOW_ITEM = 124;
+
+	/**
+	 * The feature id for the '<em><b>EAnnotations</b></em>' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IFLOW_ITEM__EANNOTATIONS = ICLASSIFIER__EANNOTATIONS;
+
+	/**
+	 * The feature id for the '<em><b>Display Name</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IFLOW_ITEM__DISPLAY_NAME = ICLASSIFIER__DISPLAY_NAME;
+
+	/**
+	 * The number of structural features of the '<em>IFlow Item</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IFLOW_ITEM_FEATURE_COUNT = ICLASSIFIER_FEATURE_COUNT + 0;
+
+	/**
+	 * The operation id for the '<em>Get EAnnotation</em>' operation.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IFLOW_ITEM___GET_EANNOTATION__STRING = ICLASSIFIER___GET_EANNOTATION__STRING;
+
+	/**
+	 * The number of operations of the '<em>IFlow Item</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IFLOW_ITEM_OPERATION_COUNT = ICLASSIFIER_OPERATION_COUNT + 0;
+
+	/**
+	 * The meta object id for the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IFlowchartImpl <em>IFlowchart</em>}' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IFlowchartImpl
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.UMLRpyPackageImpl#getIFlowchart()
+	 * @generated
+	 */
+	int IFLOWCHART = 125;
+
+	/**
+	 * The number of structural features of the '<em>IFlowchart</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IFLOWCHART_FEATURE_COUNT = 0;
+
+	/**
+	 * The number of operations of the '<em>IFlowchart</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IFLOWCHART_OPERATION_COUNT = 0;
+
+	/**
+	 * The meta object id for the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IFolderImpl <em>IFolder</em>}' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IFolderImpl
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.UMLRpyPackageImpl#getIFolder()
+	 * @generated
+	 */
+	int IFOLDER = 126;
+
+	/**
+	 * The feature id for the '<em><b>Modified Time Weak</b></em>' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IFOLDER__MODIFIED_TIME_WEAK = FILES_TYPE__MODIFIED_TIME_WEAK;
+
+	/**
+	 * The feature id for the '<em><b>Id</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IFOLDER__ID = FILES_TYPE__ID;
+
+	/**
+	 * The feature id for the '<em><b>Uml Dependency ID</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IFOLDER__UML_DEPENDENCY_ID = FILES_TYPE__UML_DEPENDENCY_ID;
+
+	/**
+	 * The feature id for the '<em><b>Last ID</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IFOLDER__LAST_ID = FILES_TYPE__LAST_ID;
+
+	/**
+	 * The feature id for the '<em><b>My State</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IFOLDER__MY_STATE = FILES_TYPE__MY_STATE;
+
+	/**
+	 * The feature id for the '<em><b>Mpath</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IFOLDER__MPATH = FILES_TYPE__MPATH;
+
+	/**
+	 * The feature id for the '<em><b>Object Creation</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IFOLDER__OBJECT_CREATION = FILES_TYPE__OBJECT_CREATION;
+
+	/**
+	 * The feature id for the '<em><b>Name</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IFOLDER__NAME = FILES_TYPE__NAME;
+
+	/**
+	 * The feature id for the '<em><b>Elements</b></em>' reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IFOLDER__ELEMENTS = FILES_TYPE_FEATURE_COUNT + 0;
+
+	/**
+	 * The feature id for the '<em><b>Files</b></em>' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IFOLDER__FILES = FILES_TYPE_FEATURE_COUNT + 1;
+
+	/**
+	 * The feature id for the '<em><b>Requiremen Tracability Handle</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IFOLDER__REQUIREMEN_TRACABILITY_HANDLE = FILES_TYPE_FEATURE_COUNT + 2;
+
+	/**
+	 * The feature id for the '<em><b>Code Update CG Time</b></em>' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IFOLDER__CODE_UPDATE_CG_TIME = FILES_TYPE_FEATURE_COUNT + 3;
+
+	/**
+	 * The number of structural features of the '<em>IFolder</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IFOLDER_FEATURE_COUNT = FILES_TYPE_FEATURE_COUNT + 4;
+
+	/**
+	 * The number of operations of the '<em>IFolder</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IFOLDER_OPERATION_COUNT = FILES_TYPE_OPERATION_COUNT + 0;
+
+	/**
+	 * The meta object id for the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IForkImpl <em>IFork</em>}' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IForkImpl
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.UMLRpyPackageImpl#getIFork()
+	 * @generated
+	 */
+	int IFORK = 127;
+
+	/**
+	 * The feature id for the '<em><b>Id</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IFORK__ID = ITS_TARGET_TYPE_FEATURE_COUNT + 0;
+
+	/**
+	 * The feature id for the '<em><b>My State</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IFORK__MY_STATE = ITS_TARGET_TYPE_FEATURE_COUNT + 1;
+
+	/**
+	 * The feature id for the '<em><b>Name</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IFORK__NAME = ITS_TARGET_TYPE_FEATURE_COUNT + 2;
+
+	/**
+	 * The feature id for the '<em><b>Modified Time Weak</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IFORK__MODIFIED_TIME_WEAK = ITS_TARGET_TYPE_FEATURE_COUNT + 3;
+
+	/**
+	 * The feature id for the '<em><b>Description</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IFORK__DESCRIPTION = ITS_TARGET_TYPE_FEATURE_COUNT + 4;
+
+	/**
+	 * The feature id for the '<em><b>Parent</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IFORK__PARENT = ITS_TARGET_TYPE_FEATURE_COUNT + 5;
+
+	/**
+	 * The feature id for the '<em><b>Connector Type</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IFORK__CONNECTOR_TYPE = ITS_TARGET_TYPE_FEATURE_COUNT + 6;
+
+	/**
+	 * The feature id for the '<em><b>Object Creation</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IFORK__OBJECT_CREATION = ITS_TARGET_TYPE_FEATURE_COUNT + 7;
+
+	/**
+	 * The feature id for the '<em><b>Uml Dependency ID</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IFORK__UML_DEPENDENCY_ID = ITS_TARGET_TYPE_FEATURE_COUNT + 8;
+
+	/**
+	 * The number of structural features of the '<em>IFork</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IFORK_FEATURE_COUNT = ITS_TARGET_TYPE_FEATURE_COUNT + 9;
+
+	/**
+	 * The number of operations of the '<em>IFork</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IFORK_OPERATION_COUNT = ITS_TARGET_TYPE_OPERATION_COUNT + 0;
+
+	/**
+	 * The meta object id for the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IGeneralizationImpl <em>IGeneralization</em>}' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IGeneralizationImpl
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.UMLRpyPackageImpl#getIGeneralization()
+	 * @generated
+	 */
+	int IGENERALIZATION = 128;
+
+	/**
+	 * The feature id for the '<em><b>EAnnotations</b></em>' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IGENERALIZATION__EANNOTATIONS = IMODEL_ELEMENT__EANNOTATIONS;
+
+	/**
+	 * The feature id for the '<em><b>Display Name</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IGENERALIZATION__DISPLAY_NAME = IMODEL_ELEMENT__DISPLAY_NAME;
+
+	/**
+	 * The feature id for the '<em><b>Id</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IGENERALIZATION__ID = IMODEL_ELEMENT_FEATURE_COUNT + 0;
+
+	/**
+	 * The feature id for the '<em><b>Modified Time Weak</b></em>' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IGENERALIZATION__MODIFIED_TIME_WEAK = IMODEL_ELEMENT_FEATURE_COUNT + 1;
+
+	/**
+	 * The feature id for the '<em><b>Depends On</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IGENERALIZATION__DEPENDS_ON = IMODEL_ELEMENT_FEATURE_COUNT + 2;
+
+	/**
+	 * The feature id for the '<em><b>Inheritance Type</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IGENERALIZATION__INHERITANCE_TYPE = IMODEL_ELEMENT_FEATURE_COUNT + 3;
+
+	/**
+	 * The feature id for the '<em><b>Is Virtual</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IGENERALIZATION__IS_VIRTUAL = IMODEL_ELEMENT_FEATURE_COUNT + 4;
+
+	/**
+	 * The feature id for the '<em><b>Stereotypes</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IGENERALIZATION__STEREOTYPES = IMODEL_ELEMENT_FEATURE_COUNT + 5;
+
+	/**
+	 * The feature id for the '<em><b>Description</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IGENERALIZATION__DESCRIPTION = IMODEL_ELEMENT_FEATURE_COUNT + 6;
+
+	/**
+	 * The feature id for the '<em><b>Object Creation</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IGENERALIZATION__OBJECT_CREATION = IMODEL_ELEMENT_FEATURE_COUNT + 7;
+
+	/**
+	 * The feature id for the '<em><b>Uml Dependency ID</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IGENERALIZATION__UML_DEPENDENCY_ID = IMODEL_ELEMENT_FEATURE_COUNT + 8;
+
+	/**
+	 * The feature id for the '<em><b>Ti</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IGENERALIZATION__TI = IMODEL_ELEMENT_FEATURE_COUNT + 9;
+
+	/**
+	 * The feature id for the '<em><b>Annotations</b></em>' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IGENERALIZATION__ANNOTATIONS = IMODEL_ELEMENT_FEATURE_COUNT + 10;
+
+	/**
+	 * The number of structural features of the '<em>IGeneralization</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IGENERALIZATION_FEATURE_COUNT = IMODEL_ELEMENT_FEATURE_COUNT + 11;
+
+	/**
+	 * The operation id for the '<em>Get EAnnotation</em>' operation.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IGENERALIZATION___GET_EANNOTATION__STRING = IMODEL_ELEMENT___GET_EANNOTATION__STRING;
+
+	/**
+	 * The number of operations of the '<em>IGeneralization</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IGENERALIZATION_OPERATION_COUNT = IMODEL_ELEMENT_OPERATION_COUNT + 0;
+
+	/**
+	 * The meta object id for the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IGuardImpl <em>IGuard</em>}' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IGuardImpl
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.UMLRpyPackageImpl#getIGuard()
+	 * @generated
+	 */
+	int IGUARD = 129;
+
+	/**
+	 * The feature id for the '<em><b>EAnnotations</b></em>' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IGUARD__EANNOTATIONS = IMODEL_ELEMENT__EANNOTATIONS;
+
+	/**
+	 * The feature id for the '<em><b>Display Name</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IGUARD__DISPLAY_NAME = IMODEL_ELEMENT__DISPLAY_NAME;
+
+	/**
+	 * The feature id for the '<em><b>Id</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IGUARD__ID = IMODEL_ELEMENT_FEATURE_COUNT + 0;
+
+	/**
+	 * The feature id for the '<em><b>Body</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IGUARD__BODY = IMODEL_ELEMENT_FEATURE_COUNT + 1;
+
+	/**
+	 * The feature id for the '<em><b>Modified Time Weak</b></em>' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IGUARD__MODIFIED_TIME_WEAK = IMODEL_ELEMENT_FEATURE_COUNT + 2;
+
+	/**
+	 * The feature id for the '<em><b>Object Creation</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IGUARD__OBJECT_CREATION = IMODEL_ELEMENT_FEATURE_COUNT + 3;
+
+	/**
+	 * The feature id for the '<em><b>Uml Dependency ID</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IGUARD__UML_DEPENDENCY_ID = IMODEL_ELEMENT_FEATURE_COUNT + 4;
+
+	/**
+	 * The number of structural features of the '<em>IGuard</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IGUARD_FEATURE_COUNT = IMODEL_ELEMENT_FEATURE_COUNT + 5;
+
+	/**
+	 * The operation id for the '<em>Get EAnnotation</em>' operation.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IGUARD___GET_EANNOTATION__STRING = IMODEL_ELEMENT___GET_EANNOTATION__STRING;
+
+	/**
+	 * The number of operations of the '<em>IGuard</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IGUARD_OPERATION_COUNT = IMODEL_ELEMENT_OPERATION_COUNT + 0;
+
+	/**
+	 * The meta object id for the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IHandleWithDataImpl <em>IHandle With Data</em>}' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IHandleWithDataImpl
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.UMLRpyPackageImpl#getIHandleWithData()
+	 * @generated
+	 */
+	int IHANDLE_WITH_DATA = 130;
+
+	/**
+	 * The feature id for the '<em><b>M2 Class</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IHANDLE_WITH_DATA__M2_CLASS = 0;
+
+	/**
+	 * The feature id for the '<em><b>Filename</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IHANDLE_WITH_DATA__FILENAME = 1;
+
+	/**
+	 * The feature id for the '<em><b>Subsystem</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IHANDLE_WITH_DATA__SUBSYSTEM = 2;
+
+	/**
+	 * The feature id for the '<em><b>Class</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IHANDLE_WITH_DATA__CLASS = 3;
+
+	/**
+	 * The feature id for the '<em><b>Name</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IHANDLE_WITH_DATA__NAME = 4;
+
+	/**
+	 * The feature id for the '<em><b>Id</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IHANDLE_WITH_DATA__ID = 5;
+
+	/**
+	 * The feature id for the '<em><b>Data</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IHANDLE_WITH_DATA__DATA = 6;
+
+	/**
+	 * The number of structural features of the '<em>IHandle With Data</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IHANDLE_WITH_DATA_FEATURE_COUNT = 7;
+
+	/**
+	 * The number of operations of the '<em>IHandle With Data</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IHANDLE_WITH_DATA_OPERATION_COUNT = 0;
+
+	/**
+	 * The meta object id for the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IHistoryConnectorImpl <em>IHistory Connector</em>}' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IHistoryConnectorImpl
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.UMLRpyPackageImpl#getIHistoryConnector()
+	 * @generated
+	 */
+	int IHISTORY_CONNECTOR = 131;
+
+	/**
+	 * The feature id for the '<em><b>Id</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IHISTORY_CONNECTOR__ID = ITS_TARGET_TYPE_FEATURE_COUNT + 0;
+
+	/**
+	 * The feature id for the '<em><b>Name</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IHISTORY_CONNECTOR__NAME = ITS_TARGET_TYPE_FEATURE_COUNT + 1;
+
+	/**
+	 * The feature id for the '<em><b>Parent</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IHISTORY_CONNECTOR__PARENT = ITS_TARGET_TYPE_FEATURE_COUNT + 2;
+
+	/**
+	 * The feature id for the '<em><b>Connector Type</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IHISTORY_CONNECTOR__CONNECTOR_TYPE = ITS_TARGET_TYPE_FEATURE_COUNT + 3;
+
+	/**
+	 * The feature id for the '<em><b>My State</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IHISTORY_CONNECTOR__MY_STATE = ITS_TARGET_TYPE_FEATURE_COUNT + 4;
+
+	/**
+	 * The feature id for the '<em><b>Modified Time Weak</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IHISTORY_CONNECTOR__MODIFIED_TIME_WEAK = ITS_TARGET_TYPE_FEATURE_COUNT + 5;
+
+	/**
+	 * The feature id for the '<em><b>Object Creation</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IHISTORY_CONNECTOR__OBJECT_CREATION = ITS_TARGET_TYPE_FEATURE_COUNT + 6;
+
+	/**
+	 * The feature id for the '<em><b>Uml Dependency ID</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IHISTORY_CONNECTOR__UML_DEPENDENCY_ID = ITS_TARGET_TYPE_FEATURE_COUNT + 7;
+
+	/**
+	 * The number of structural features of the '<em>IHistory Connector</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IHISTORY_CONNECTOR_FEATURE_COUNT = ITS_TARGET_TYPE_FEATURE_COUNT + 8;
+
+	/**
+	 * The number of operations of the '<em>IHistory Connector</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IHISTORY_CONNECTOR_OPERATION_COUNT = ITS_TARGET_TYPE_OPERATION_COUNT + 0;
+
+	/**
+	 * The meta object id for the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IHyperLinkImpl <em>IHyper Link</em>}' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IHyperLinkImpl
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.UMLRpyPackageImpl#getIHyperLink()
+	 * @generated
+	 */
+	int IHYPER_LINK = 132;
+
+	/**
+	 * The feature id for the '<em><b>EAnnotations</b></em>' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IHYPER_LINK__EANNOTATIONS = IDEPENDENCY__EANNOTATIONS;
+
+	/**
+	 * The feature id for the '<em><b>Display Name</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IHYPER_LINK__DISPLAY_NAME = IDEPENDENCY__DISPLAY_NAME;
+
+	/**
+	 * The feature id for the '<em><b>Uml Dependency ID</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IHYPER_LINK__UML_DEPENDENCY_ID = IDEPENDENCY__UML_DEPENDENCY_ID;
+
+	/**
+	 * The feature id for the '<em><b>Object Creation</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IHYPER_LINK__OBJECT_CREATION = IDEPENDENCY__OBJECT_CREATION;
+
+	/**
+	 * The feature id for the '<em><b>Id</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IHYPER_LINK__ID = IDEPENDENCY__ID;
+
+	/**
+	 * The feature id for the '<em><b>My State</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IHYPER_LINK__MY_STATE = IDEPENDENCY__MY_STATE;
+
+	/**
+	 * The feature id for the '<em><b>Properties</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IHYPER_LINK__PROPERTIES = IDEPENDENCY__PROPERTIES;
+
+	/**
+	 * The feature id for the '<em><b>Name</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IHYPER_LINK__NAME = IDEPENDENCY__NAME;
+
+	/**
+	 * The feature id for the '<em><b>Stereotypes</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IHYPER_LINK__STEREOTYPES = IDEPENDENCY__STEREOTYPES;
+
+	/**
+	 * The feature id for the '<em><b>Modified Time Weak</b></em>' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IHYPER_LINK__MODIFIED_TIME_WEAK = IDEPENDENCY__MODIFIED_TIME_WEAK;
+
+	/**
+	 * The feature id for the '<em><b>Depends On</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IHYPER_LINK__DEPENDS_ON = IDEPENDENCY__DEPENDS_ON;
+
+	/**
+	 * The feature id for the '<em><b>Tags</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IHYPER_LINK__TAGS = IDEPENDENCY__TAGS;
+
+	/**
+	 * The feature id for the '<em><b>Annotations</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IHYPER_LINK__ANNOTATIONS = IDEPENDENCY__ANNOTATIONS;
+
+	/**
+	 * The feature id for the '<em><b>Dependencies</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IHYPER_LINK__DEPENDENCIES = IDEPENDENCY__DEPENDENCIES;
+
+	/**
+	 * The feature id for the '<em><b>Description</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IHYPER_LINK__DESCRIPTION = IDEPENDENCY__DESCRIPTION;
+
+	/**
+	 * The feature id for the '<em><b>Requiremen Tracability Handle</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IHYPER_LINK__REQUIREMEN_TRACABILITY_HANDLE = IDEPENDENCY__REQUIREMEN_TRACABILITY_HANDLE;
+
+	/**
+	 * The feature id for the '<em><b>Code Update CG Time</b></em>' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IHYPER_LINK__CODE_UPDATE_CG_TIME = IDEPENDENCY__CODE_UPDATE_CG_TIME;
+
+	/**
+	 * The number of structural features of the '<em>IHyper Link</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IHYPER_LINK_FEATURE_COUNT = IDEPENDENCY_FEATURE_COUNT + 0;
+
+	/**
+	 * The operation id for the '<em>Get EAnnotation</em>' operation.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IHYPER_LINK___GET_EANNOTATION__STRING = IDEPENDENCY___GET_EANNOTATION__STRING;
+
+	/**
+	 * The number of operations of the '<em>IHyper Link</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IHYPER_LINK_OPERATION_COUNT = IDEPENDENCY_OPERATION_COUNT + 0;
+
+	/**
+	 * The meta object id for the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IInformationFlowImpl <em>IInformation Flow</em>}' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IInformationFlowImpl
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.UMLRpyPackageImpl#getIInformationFlow()
+	 * @generated
+	 */
+	int IINFORMATION_FLOW = 133;
+
+	/**
+	 * The feature id for the '<em><b>EAnnotations</b></em>' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IINFORMATION_FLOW__EANNOTATIONS = DECLARATIVES_TYPE_FEATURE_COUNT + 0;
+
+	/**
+	 * The feature id for the '<em><b>Display Name</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IINFORMATION_FLOW__DISPLAY_NAME = DECLARATIVES_TYPE_FEATURE_COUNT + 1;
+
+	/**
+	 * The feature id for the '<em><b>Id</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IINFORMATION_FLOW__ID = DECLARATIVES_TYPE_FEATURE_COUNT + 2;
+
+	/**
+	 * The feature id for the '<em><b>My State</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IINFORMATION_FLOW__MY_STATE = DECLARATIVES_TYPE_FEATURE_COUNT + 3;
+
+	/**
+	 * The feature id for the '<em><b>Name</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IINFORMATION_FLOW__NAME = DECLARATIVES_TYPE_FEATURE_COUNT + 4;
+
+	/**
+	 * The feature id for the '<em><b>Conveyed</b></em>' reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IINFORMATION_FLOW__CONVEYED = DECLARATIVES_TYPE_FEATURE_COUNT + 5;
+
+	/**
+	 * The feature id for the '<em><b>End1 </b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IINFORMATION_FLOW__END1_ = DECLARATIVES_TYPE_FEATURE_COUNT + 6;
+
+	/**
+	 * The feature id for the '<em><b>End2 </b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IINFORMATION_FLOW__END2_ = DECLARATIVES_TYPE_FEATURE_COUNT + 7;
+
+	/**
+	 * The feature id for the '<em><b>Direction </b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IINFORMATION_FLOW__DIRECTION_ = DECLARATIVES_TYPE_FEATURE_COUNT + 8;
+
+	/**
+	 * The feature id for the '<em><b>Modified Time Weak</b></em>' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IINFORMATION_FLOW__MODIFIED_TIME_WEAK = DECLARATIVES_TYPE_FEATURE_COUNT + 9;
+
+	/**
+	 * The feature id for the '<em><b>Description</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IINFORMATION_FLOW__DESCRIPTION = DECLARATIVES_TYPE_FEATURE_COUNT + 10;
+
+	/**
+	 * The feature id for the '<em><b>End1 Object Port </b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IINFORMATION_FLOW__END1_OBJECT_PORT_ = DECLARATIVES_TYPE_FEATURE_COUNT + 11;
+
+	/**
+	 * The feature id for the '<em><b>End2 Object Port </b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IINFORMATION_FLOW__END2_OBJECT_PORT_ = DECLARATIVES_TYPE_FEATURE_COUNT + 12;
+
+	/**
+	 * The feature id for the '<em><b>Requiremen Tracability Handle</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IINFORMATION_FLOW__REQUIREMEN_TRACABILITY_HANDLE = DECLARATIVES_TYPE_FEATURE_COUNT + 13;
+
+	/**
+	 * The feature id for the '<em><b>Hyper Links</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IINFORMATION_FLOW__HYPER_LINKS = DECLARATIVES_TYPE_FEATURE_COUNT + 14;
+
+	/**
+	 * The feature id for the '<em><b>Dependencies</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IINFORMATION_FLOW__DEPENDENCIES = DECLARATIVES_TYPE_FEATURE_COUNT + 15;
+
+	/**
+	 * The feature id for the '<em><b>Annotations</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IINFORMATION_FLOW__ANNOTATIONS = DECLARATIVES_TYPE_FEATURE_COUNT + 16;
+
+	/**
+	 * The feature id for the '<em><b>Object Creation</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IINFORMATION_FLOW__OBJECT_CREATION = DECLARATIVES_TYPE_FEATURE_COUNT + 17;
+
+	/**
+	 * The feature id for the '<em><b>Uml Dependency ID</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IINFORMATION_FLOW__UML_DEPENDENCY_ID = DECLARATIVES_TYPE_FEATURE_COUNT + 18;
+
+	/**
+	 * The feature id for the '<em><b>Stereotypes</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IINFORMATION_FLOW__STEREOTYPES = DECLARATIVES_TYPE_FEATURE_COUNT + 19;
+
+	/**
+	 * The feature id for the '<em><b>Tags</b></em>' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IINFORMATION_FLOW__TAGS = DECLARATIVES_TYPE_FEATURE_COUNT + 20;
+
+	/**
+	 * The number of structural features of the '<em>IInformation Flow</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IINFORMATION_FLOW_FEATURE_COUNT = DECLARATIVES_TYPE_FEATURE_COUNT + 21;
+
+	/**
+	 * The operation id for the '<em>Get EAnnotation</em>' operation.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IINFORMATION_FLOW___GET_EANNOTATION__STRING = DECLARATIVES_TYPE_OPERATION_COUNT + 0;
+
+	/**
+	 * The number of operations of the '<em>IInformation Flow</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IINFORMATION_FLOW_OPERATION_COUNT = DECLARATIVES_TYPE_OPERATION_COUNT + 1;
+
+	/**
+	 * The meta object id for the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IInformationItemImpl <em>IInformation Item</em>}' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IInformationItemImpl
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.UMLRpyPackageImpl#getIInformationItem()
+	 * @generated
+	 */
+	int IINFORMATION_ITEM = 134;
+
+	/**
+	 * The feature id for the '<em><b>Last ID</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IINFORMATION_ITEM__LAST_ID = DECLARATIVES_TYPE_FEATURE_COUNT + 0;
+
+	/**
+	 * The feature id for the '<em><b>Id</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IINFORMATION_ITEM__ID = DECLARATIVES_TYPE_FEATURE_COUNT + 1;
+
+	/**
+	 * The feature id for the '<em><b>My State</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IINFORMATION_ITEM__MY_STATE = DECLARATIVES_TYPE_FEATURE_COUNT + 2;
+
+	/**
+	 * The feature id for the '<em><b>Name</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IINFORMATION_ITEM__NAME = DECLARATIVES_TYPE_FEATURE_COUNT + 3;
+
+	/**
+	 * The feature id for the '<em><b>Requiremen Tracability Handle</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IINFORMATION_ITEM__REQUIREMEN_TRACABILITY_HANDLE = DECLARATIVES_TYPE_FEATURE_COUNT + 4;
+
+	/**
+	 * The feature id for the '<em><b>Modified Time Weak</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IINFORMATION_ITEM__MODIFIED_TIME_WEAK = DECLARATIVES_TYPE_FEATURE_COUNT + 5;
+
+	/**
+	 * The feature id for the '<em><b>Description</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IINFORMATION_ITEM__DESCRIPTION = DECLARATIVES_TYPE_FEATURE_COUNT + 6;
+
+	/**
+	 * The feature id for the '<em><b>Represented</b></em>' reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IINFORMATION_ITEM__REPRESENTED = DECLARATIVES_TYPE_FEATURE_COUNT + 7;
+
+	/**
+	 * The feature id for the '<em><b>Annotations</b></em>' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IINFORMATION_ITEM__ANNOTATIONS = DECLARATIVES_TYPE_FEATURE_COUNT + 8;
+
+	/**
+	 * The feature id for the '<em><b>Object Creation</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IINFORMATION_ITEM__OBJECT_CREATION = DECLARATIVES_TYPE_FEATURE_COUNT + 9;
+
+	/**
+	 * The feature id for the '<em><b>Uml Dependency ID</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IINFORMATION_ITEM__UML_DEPENDENCY_ID = DECLARATIVES_TYPE_FEATURE_COUNT + 10;
+
+	/**
+	 * The number of structural features of the '<em>IInformation Item</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IINFORMATION_ITEM_FEATURE_COUNT = DECLARATIVES_TYPE_FEATURE_COUNT + 11;
+
+	/**
+	 * The number of operations of the '<em>IInformation Item</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IINFORMATION_ITEM_OPERATION_COUNT = DECLARATIVES_TYPE_OPERATION_COUNT + 0;
+
+	/**
+	 * The meta object id for the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IRelationImpl <em>IRelation</em>}' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IRelationImpl
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.UMLRpyPackageImpl#getIRelation()
+	 * @generated
+	 */
+	int IRELATION = 180;
+
+	/**
+	 * The feature id for the '<em><b>EAnnotations</b></em>' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IRELATION__EANNOTATIONS = IUNIT__EANNOTATIONS;
+
+	/**
+	 * The feature id for the '<em><b>Display Name</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IRELATION__DISPLAY_NAME = IUNIT__DISPLAY_NAME;
+
+	/**
+	 * The number of structural features of the '<em>IRelation</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IRELATION_FEATURE_COUNT = IUNIT_FEATURE_COUNT + 0;
+
+	/**
+	 * The operation id for the '<em>Get EAnnotation</em>' operation.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IRELATION___GET_EANNOTATION__STRING = IUNIT___GET_EANNOTATION__STRING;
+
+	/**
+	 * The number of operations of the '<em>IRelation</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IRELATION_OPERATION_COUNT = IUNIT_OPERATION_COUNT + 0;
+
+	/**
+	 * The meta object id for the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IInstanceImpl <em>IInstance</em>}' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IInstanceImpl
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.UMLRpyPackageImpl#getIInstance()
+	 * @generated
+	 */
+	int IINSTANCE = 135;
+
+	/**
+	 * The feature id for the '<em><b>EAnnotations</b></em>' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IINSTANCE__EANNOTATIONS = IRELATION__EANNOTATIONS;
+
+	/**
+	 * The feature id for the '<em><b>Display Name</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IINSTANCE__DISPLAY_NAME = IRELATION__DISPLAY_NAME;
+
+	/**
+	 * The feature id for the '<em><b>Modified Time Weak</b></em>' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IINSTANCE__MODIFIED_TIME_WEAK = IRELATION_FEATURE_COUNT + 0;
+
+	/**
+	 * The feature id for the '<em><b>Id</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IINSTANCE__ID = IRELATION_FEATURE_COUNT + 1;
+
+	/**
+	 * The feature id for the '<em><b>Inverse</b></em>' reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IINSTANCE__INVERSE = IRELATION_FEATURE_COUNT + 2;
+
+	/**
+	 * The feature id for the '<em><b>My State</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IINSTANCE__MY_STATE = IRELATION_FEATURE_COUNT + 3;
+
+	/**
+	 * The feature id for the '<em><b>Name</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IINSTANCE__NAME = IRELATION_FEATURE_COUNT + 4;
+
+	/**
+	 * The number of structural features of the '<em>IInstance</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IINSTANCE_FEATURE_COUNT = IRELATION_FEATURE_COUNT + 5;
+
+	/**
+	 * The operation id for the '<em>Get EAnnotation</em>' operation.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IINSTANCE___GET_EANNOTATION__STRING = IRELATION___GET_EANNOTATION__STRING;
+
+	/**
+	 * The number of operations of the '<em>IInstance</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IINSTANCE_OPERATION_COUNT = IRELATION_OPERATION_COUNT + 0;
+
+	/**
+	 * The meta object id for the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IInstanceSlotImpl <em>IInstance Slot</em>}' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IInstanceSlotImpl
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.UMLRpyPackageImpl#getIInstanceSlot()
+	 * @generated
+	 */
+	int IINSTANCE_SLOT = 136;
+
+	/**
+	 * The feature id for the '<em><b>EAnnotations</b></em>' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IINSTANCE_SLOT__EANNOTATIONS = IMODEL_ELEMENT__EANNOTATIONS;
+
+	/**
+	 * The feature id for the '<em><b>Display Name</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IINSTANCE_SLOT__DISPLAY_NAME = IMODEL_ELEMENT__DISPLAY_NAME;
+
+	/**
+	 * The number of structural features of the '<em>IInstance Slot</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IINSTANCE_SLOT_FEATURE_COUNT = IMODEL_ELEMENT_FEATURE_COUNT + 0;
+
+	/**
+	 * The operation id for the '<em>Get EAnnotation</em>' operation.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IINSTANCE_SLOT___GET_EANNOTATION__STRING = IMODEL_ELEMENT___GET_EANNOTATION__STRING;
+
+	/**
+	 * The number of operations of the '<em>IInstance Slot</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IINSTANCE_SLOT_OPERATION_COUNT = IMODEL_ELEMENT_OPERATION_COUNT + 0;
+
+	/**
+	 * The meta object id for the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IInstanceSpecificationImpl <em>IInstance Specification</em>}' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IInstanceSpecificationImpl
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.UMLRpyPackageImpl#getIInstanceSpecification()
+	 * @generated
+	 */
+	int IINSTANCE_SPECIFICATION = 137;
+
+	/**
+	 * The feature id for the '<em><b>EAnnotations</b></em>' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IINSTANCE_SPECIFICATION__EANNOTATIONS = IMODEL_ELEMENT__EANNOTATIONS;
+
+	/**
+	 * The feature id for the '<em><b>Display Name</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IINSTANCE_SPECIFICATION__DISPLAY_NAME = IMODEL_ELEMENT__DISPLAY_NAME;
+
+	/**
+	 * The number of structural features of the '<em>IInstance Specification</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IINSTANCE_SPECIFICATION_FEATURE_COUNT = IMODEL_ELEMENT_FEATURE_COUNT + 0;
+
+	/**
+	 * The operation id for the '<em>Get EAnnotation</em>' operation.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IINSTANCE_SPECIFICATION___GET_EANNOTATION__STRING = IMODEL_ELEMENT___GET_EANNOTATION__STRING;
+
+	/**
+	 * The number of operations of the '<em>IInstance Specification</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IINSTANCE_SPECIFICATION_OPERATION_COUNT = IMODEL_ELEMENT_OPERATION_COUNT + 0;
+
+	/**
+	 * The meta object id for the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IInstanceValueImpl <em>IInstance Value</em>}' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IInstanceValueImpl
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.UMLRpyPackageImpl#getIInstanceValue()
+	 * @generated
+	 */
+	int IINSTANCE_VALUE = 138;
+
+	/**
+	 * The feature id for the '<em><b>EAnnotations</b></em>' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IINSTANCE_VALUE__EANNOTATIONS = IVALUE_SPECIFICATION__EANNOTATIONS;
+
+	/**
+	 * The feature id for the '<em><b>Display Name</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IINSTANCE_VALUE__DISPLAY_NAME = IVALUE_SPECIFICATION__DISPLAY_NAME;
+
+	/**
+	 * The feature id for the '<em><b>Id</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IINSTANCE_VALUE__ID = IVALUE_SPECIFICATION_FEATURE_COUNT + 0;
+
+	/**
+	 * The feature id for the '<em><b>Modified Time Weak</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IINSTANCE_VALUE__MODIFIED_TIME_WEAK = IVALUE_SPECIFICATION_FEATURE_COUNT + 1;
+
+	/**
+	 * The feature id for the '<em><b>Value</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IINSTANCE_VALUE__VALUE = IVALUE_SPECIFICATION_FEATURE_COUNT + 2;
+
+	/**
+	 * The number of structural features of the '<em>IInstance Value</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IINSTANCE_VALUE_FEATURE_COUNT = IVALUE_SPECIFICATION_FEATURE_COUNT + 3;
+
+	/**
+	 * The operation id for the '<em>Get EAnnotation</em>' operation.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IINSTANCE_VALUE___GET_EANNOTATION__STRING = IVALUE_SPECIFICATION___GET_EANNOTATION__STRING;
+
+	/**
+	 * The number of operations of the '<em>IInstance Value</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IINSTANCE_VALUE_OPERATION_COUNT = IVALUE_SPECIFICATION_OPERATION_COUNT + 0;
+
+	/**
+	 * The meta object id for the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IInteractionOccurrenceImpl <em>IInteraction Occurrence</em>}' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IInteractionOccurrenceImpl
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.UMLRpyPackageImpl#getIInteractionOccurrence()
+	 * @generated
+	 */
+	int IINTERACTION_OCCURRENCE = 139;
+
+	/**
+	 * The feature id for the '<em><b>EAnnotations</b></em>' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IINTERACTION_OCCURRENCE__EANNOTATIONS = IMODEL_ELEMENT__EANNOTATIONS;
+
+	/**
+	 * The feature id for the '<em><b>Display Name</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IINTERACTION_OCCURRENCE__DISPLAY_NAME = IMODEL_ELEMENT__DISPLAY_NAME;
+
+	/**
+	 * The feature id for the '<em><b>Id</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IINTERACTION_OCCURRENCE__ID = IMODEL_ELEMENT_FEATURE_COUNT + 0;
+
+	/**
+	 * The feature id for the '<em><b>Name</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IINTERACTION_OCCURRENCE__NAME = IMODEL_ELEMENT_FEATURE_COUNT + 1;
+
+	/**
+	 * The feature id for the '<em><b>Modified Time Weak</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IINTERACTION_OCCURRENCE__MODIFIED_TIME_WEAK = IMODEL_ELEMENT_FEATURE_COUNT + 2;
+
+	/**
+	 * The feature id for the '<em><b>MpRef SD</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IINTERACTION_OCCURRENCE__MPREF_SD = IMODEL_ELEMENT_FEATURE_COUNT + 3;
+
+	/**
+	 * The feature id for the '<em><b>Stereotypes</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IINTERACTION_OCCURRENCE__STEREOTYPES = IMODEL_ELEMENT_FEATURE_COUNT + 4;
+
+	/**
+	 * The feature id for the '<em><b>Tags</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IINTERACTION_OCCURRENCE__TAGS = IMODEL_ELEMENT_FEATURE_COUNT + 5;
+
+	/**
+	 * The feature id for the '<em><b>Object Creation</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IINTERACTION_OCCURRENCE__OBJECT_CREATION = IMODEL_ELEMENT_FEATURE_COUNT + 6;
+
+	/**
+	 * The feature id for the '<em><b>Uml Dependency ID</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IINTERACTION_OCCURRENCE__UML_DEPENDENCY_ID = IMODEL_ELEMENT_FEATURE_COUNT + 7;
+
+	/**
+	 * The number of structural features of the '<em>IInteraction Occurrence</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IINTERACTION_OCCURRENCE_FEATURE_COUNT = IMODEL_ELEMENT_FEATURE_COUNT + 8;
+
+	/**
+	 * The operation id for the '<em>Get EAnnotation</em>' operation.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IINTERACTION_OCCURRENCE___GET_EANNOTATION__STRING = IMODEL_ELEMENT___GET_EANNOTATION__STRING;
+
+	/**
+	 * The number of operations of the '<em>IInteraction Occurrence</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IINTERACTION_OCCURRENCE_OPERATION_COUNT = IMODEL_ELEMENT_OPERATION_COUNT + 0;
+
+	/**
+	 * The meta object id for the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IInteractionOperandImpl <em>IInteraction Operand</em>}' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IInteractionOperandImpl
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.UMLRpyPackageImpl#getIInteractionOperand()
+	 * @generated
+	 */
+	int IINTERACTION_OPERAND = 140;
+
+	/**
+	 * The feature id for the '<em><b>EAnnotations</b></em>' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IINTERACTION_OPERAND__EANNOTATIONS = ICOLLABORATION__EANNOTATIONS;
+
+	/**
+	 * The feature id for the '<em><b>Display Name</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IINTERACTION_OPERAND__DISPLAY_NAME = ICOLLABORATION__DISPLAY_NAME;
+
+	/**
+	 * The feature id for the '<em><b>Id</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IINTERACTION_OPERAND__ID = ICOLLABORATION__ID;
+
+	/**
+	 * The feature id for the '<em><b>Classifier Roles</b></em>' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IINTERACTION_OPERAND__CLASSIFIER_ROLES = ICOLLABORATION__CLASSIFIER_ROLES;
+
+	/**
+	 * The feature id for the '<em><b>Messages</b></em>' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IINTERACTION_OPERAND__MESSAGES = ICOLLABORATION__MESSAGES;
+
+	/**
+	 * The feature id for the '<em><b>Annotations</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IINTERACTION_OPERAND__ANNOTATIONS = ICOLLABORATION__ANNOTATIONS;
+
+	/**
+	 * The feature id for the '<em><b>Association Roles</b></em>' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IINTERACTION_OPERAND__ASSOCIATION_ROLES = ICOLLABORATION__ASSOCIATION_ROLES;
+
+	/**
+	 * The feature id for the '<em><b>Modified Time Weak</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IINTERACTION_OPERAND__MODIFIED_TIME_WEAK = ICOLLABORATION__MODIFIED_TIME_WEAK;
+
+	/**
+	 * The feature id for the '<em><b>Combined Fragments</b></em>' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IINTERACTION_OPERAND__COMBINED_FRAGMENTS = ICOLLABORATION__COMBINED_FRAGMENTS;
+
+	/**
+	 * The feature id for the '<em><b>PMessage Handler</b></em>' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IINTERACTION_OPERAND__PMESSAGE_HANDLER = ICOLLABORATION__PMESSAGE_HANDLER;
+
+	/**
+	 * The feature id for the '<em><b>Interaction Occurrences</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IINTERACTION_OPERAND__INTERACTION_OCCURRENCES = ICOLLABORATION__INTERACTION_OCCURRENCES;
+
+	/**
+	 * The feature id for the '<em><b>Execution Occurrences</b></em>' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IINTERACTION_OPERAND__EXECUTION_OCCURRENCES = ICOLLABORATION__EXECUTION_OCCURRENCES;
+
+	/**
+	 * The feature id for the '<em><b>Object Creation</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IINTERACTION_OPERAND__OBJECT_CREATION = ICOLLABORATION__OBJECT_CREATION;
+
+	/**
+	 * The feature id for the '<em><b>Uml Dependency ID</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IINTERACTION_OPERAND__UML_DEPENDENCY_ID = ICOLLABORATION__UML_DEPENDENCY_ID;
+
+	/**
+	 * The feature id for the '<em><b>My State</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IINTERACTION_OPERAND__MY_STATE = ICOLLABORATION_FEATURE_COUNT + 0;
+
+	/**
+	 * The feature id for the '<em><b>Name</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IINTERACTION_OPERAND__NAME = ICOLLABORATION_FEATURE_COUNT + 1;
+
+	/**
+	 * The feature id for the '<em><b>Interaction Constraint</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IINTERACTION_OPERAND__INTERACTION_CONSTRAINT = ICOLLABORATION_FEATURE_COUNT + 2;
+
+	/**
+	 * The number of structural features of the '<em>IInteraction Operand</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IINTERACTION_OPERAND_FEATURE_COUNT = ICOLLABORATION_FEATURE_COUNT + 3;
+
+	/**
+	 * The operation id for the '<em>Get EAnnotation</em>' operation.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IINTERACTION_OPERAND___GET_EANNOTATION__STRING = ICOLLABORATION___GET_EANNOTATION__STRING;
+
+	/**
+	 * The number of operations of the '<em>IInteraction Operand</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IINTERACTION_OPERAND_OPERATION_COUNT = ICOLLABORATION_OPERATION_COUNT + 0;
+
+	/**
+	 * The meta object id for the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IInteractionOperatorImpl <em>IInteraction Operator</em>}' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IInteractionOperatorImpl
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.UMLRpyPackageImpl#getIInteractionOperator()
+	 * @generated
+	 */
+	int IINTERACTION_OPERATOR = 141;
+
+	/**
+	 * The feature id for the '<em><b>EAnnotations</b></em>' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IINTERACTION_OPERATOR__EANNOTATIONS = IMODEL_ELEMENT__EANNOTATIONS;
+
+	/**
+	 * The feature id for the '<em><b>Display Name</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IINTERACTION_OPERATOR__DISPLAY_NAME = IMODEL_ELEMENT__DISPLAY_NAME;
+
+	/**
+	 * The number of structural features of the '<em>IInteraction Operator</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IINTERACTION_OPERATOR_FEATURE_COUNT = IMODEL_ELEMENT_FEATURE_COUNT + 0;
+
+	/**
+	 * The operation id for the '<em>Get EAnnotation</em>' operation.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IINTERACTION_OPERATOR___GET_EANNOTATION__STRING = IMODEL_ELEMENT___GET_EANNOTATION__STRING;
+
+	/**
+	 * The number of operations of the '<em>IInteraction Operator</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IINTERACTION_OPERATOR_OPERATION_COUNT = IMODEL_ELEMENT_OPERATION_COUNT + 0;
+
+	/**
+	 * The meta object id for the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.ItsTriggerTypeImpl <em>Its Trigger Type</em>}' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.ItsTriggerTypeImpl
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.UMLRpyPackageImpl#getItsTriggerType()
+	 * @generated
+	 */
+	int ITS_TRIGGER_TYPE = 221;
+
+	/**
+	 * The feature id for the '<em><b>Modified Time Weak</b></em>' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ITS_TRIGGER_TYPE__MODIFIED_TIME_WEAK = 0;
+
+	/**
+	 * The feature id for the '<em><b>Id</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ITS_TRIGGER_TYPE__ID = 1;
+
+	/**
+	 * The feature id for the '<em><b>Info</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ITS_TRIGGER_TYPE__INFO = 2;
+
+	/**
+	 * The feature id for the '<em><b>Uml Dependency ID</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ITS_TRIGGER_TYPE__UML_DEPENDENCY_ID = 3;
+
+	/**
+	 * The feature id for the '<em><b>My State</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ITS_TRIGGER_TYPE__MY_STATE = 4;
+
+	/**
+	 * The feature id for the '<em><b>Object Creation</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ITS_TRIGGER_TYPE__OBJECT_CREATION = 5;
+
+	/**
+	 * The feature id for the '<em><b>Body</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ITS_TRIGGER_TYPE__BODY = 6;
+
+	/**
+	 * The number of structural features of the '<em>Its Trigger Type</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ITS_TRIGGER_TYPE_FEATURE_COUNT = 7;
+
+	/**
+	 * The number of operations of the '<em>Its Trigger Type</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ITS_TRIGGER_TYPE_OPERATION_COUNT = 0;
+
+	/**
+	 * The meta object id for the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IInterfaceItemTriggerImpl <em>IInterface Item Trigger</em>}' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IInterfaceItemTriggerImpl
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.UMLRpyPackageImpl#getIInterfaceItemTrigger()
+	 * @generated
+	 */
+	int IINTERFACE_ITEM_TRIGGER = 143;
+
+	/**
+	 * The feature id for the '<em><b>Modified Time Weak</b></em>' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IINTERFACE_ITEM_TRIGGER__MODIFIED_TIME_WEAK = ITS_TRIGGER_TYPE__MODIFIED_TIME_WEAK;
+
+	/**
+	 * The feature id for the '<em><b>Id</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IINTERFACE_ITEM_TRIGGER__ID = ITS_TRIGGER_TYPE__ID;
+
+	/**
+	 * The feature id for the '<em><b>Info</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IINTERFACE_ITEM_TRIGGER__INFO = ITS_TRIGGER_TYPE__INFO;
+
+	/**
+	 * The feature id for the '<em><b>Uml Dependency ID</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IINTERFACE_ITEM_TRIGGER__UML_DEPENDENCY_ID = ITS_TRIGGER_TYPE__UML_DEPENDENCY_ID;
+
+	/**
+	 * The feature id for the '<em><b>My State</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IINTERFACE_ITEM_TRIGGER__MY_STATE = ITS_TRIGGER_TYPE__MY_STATE;
+
+	/**
+	 * The feature id for the '<em><b>Object Creation</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IINTERFACE_ITEM_TRIGGER__OBJECT_CREATION = ITS_TRIGGER_TYPE__OBJECT_CREATION;
+
+	/**
+	 * The feature id for the '<em><b>Body</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IINTERFACE_ITEM_TRIGGER__BODY = ITS_TRIGGER_TYPE__BODY;
+
+	/**
+	 * The feature id for the '<em><b>Its Interface Item</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IINTERFACE_ITEM_TRIGGER__ITS_INTERFACE_ITEM = ITS_TRIGGER_TYPE_FEATURE_COUNT + 0;
+
+	/**
+	 * The feature id for the '<em><b>Inherits From Handle</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IINTERFACE_ITEM_TRIGGER__INHERITS_FROM_HANDLE = ITS_TRIGGER_TYPE_FEATURE_COUNT + 1;
+
+	/**
+	 * The number of structural features of the '<em>IInterface Item Trigger</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IINTERFACE_ITEM_TRIGGER_FEATURE_COUNT = ITS_TRIGGER_TYPE_FEATURE_COUNT + 2;
+
+	/**
+	 * The number of operations of the '<em>IInterface Item Trigger</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IINTERFACE_ITEM_TRIGGER_OPERATION_COUNT = ITS_TRIGGER_TYPE_OPERATION_COUNT + 0;
+
+	/**
+	 * The meta object id for the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IInternalHyperlinkImpl <em>IInternal Hyperlink</em>}' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IInternalHyperlinkImpl
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.UMLRpyPackageImpl#getIInternalHyperlink()
+	 * @generated
+	 */
+	int IINTERNAL_HYPERLINK = 144;
+
+	/**
+	 * The feature id for the '<em><b>EAnnotations</b></em>' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IINTERNAL_HYPERLINK__EANNOTATIONS = HYPER_LINKS_TYPE__EANNOTATIONS;
+
+	/**
+	 * The feature id for the '<em><b>Display Name</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IINTERNAL_HYPERLINK__DISPLAY_NAME = HYPER_LINKS_TYPE__DISPLAY_NAME;
+
+	/**
+	 * The feature id for the '<em><b>Target</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IINTERNAL_HYPERLINK__TARGET = HYPER_LINKS_TYPE_FEATURE_COUNT + 0;
+
+	/**
+	 * The number of structural features of the '<em>IInternal Hyperlink</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IINTERNAL_HYPERLINK_FEATURE_COUNT = HYPER_LINKS_TYPE_FEATURE_COUNT + 1;
+
+	/**
+	 * The operation id for the '<em>Get EAnnotation</em>' operation.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IINTERNAL_HYPERLINK___GET_EANNOTATION__STRING = HYPER_LINKS_TYPE___GET_EANNOTATION__STRING;
+
+	/**
+	 * The number of operations of the '<em>IInternal Hyperlink</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IINTERNAL_HYPERLINK_OPERATION_COUNT = HYPER_LINKS_TYPE_OPERATION_COUNT + 0;
+
+	/**
+	 * The meta object id for the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.ItsLabelTypeImpl <em>Its Label Type</em>}' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.ItsLabelTypeImpl
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.UMLRpyPackageImpl#getItsLabelType()
+	 * @generated
+	 */
+	int ITS_LABEL_TYPE = 218;
+
+	/**
+	 * The number of structural features of the '<em>Its Label Type</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ITS_LABEL_TYPE_FEATURE_COUNT = 0;
+
+	/**
+	 * The number of operations of the '<em>Its Label Type</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ITS_LABEL_TYPE_OPERATION_COUNT = 0;
+
+	/**
+	 * The meta object id for the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.ILabelImpl <em>ILabel</em>}' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.ILabelImpl
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.UMLRpyPackageImpl#getILabel()
+	 * @generated
+	 */
+	int ILABEL = 145;
+
+	/**
+	 * The feature id for the '<em><b>Id</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ILABEL__ID = ITS_LABEL_TYPE_FEATURE_COUNT + 0;
+
+	/**
+	 * The feature id for the '<em><b>Its Trigger</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ILABEL__ITS_TRIGGER = ITS_LABEL_TYPE_FEATURE_COUNT + 1;
+
+	/**
+	 * The feature id for the '<em><b>Its Action</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ILABEL__ITS_ACTION = ITS_LABEL_TYPE_FEATURE_COUNT + 2;
+
+	/**
+	 * The feature id for the '<em><b>Its Guard</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ILABEL__ITS_GUARD = ITS_LABEL_TYPE_FEATURE_COUNT + 3;
+
+	/**
+	 * The feature id for the '<em><b>Modified Time Weak</b></em>' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ILABEL__MODIFIED_TIME_WEAK = ITS_LABEL_TYPE_FEATURE_COUNT + 4;
+
+	/**
+	 * The feature id for the '<em><b>My State</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ILABEL__MY_STATE = ITS_LABEL_TYPE_FEATURE_COUNT + 5;
+
+	/**
+	 * The feature id for the '<em><b>Inherits From Handle</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ILABEL__INHERITS_FROM_HANDLE = ITS_LABEL_TYPE_FEATURE_COUNT + 6;
+
+	/**
+	 * The feature id for the '<em><b>Code Update CG Time</b></em>' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ILABEL__CODE_UPDATE_CG_TIME = ITS_LABEL_TYPE_FEATURE_COUNT + 7;
+
+	/**
+	 * The feature id for the '<em><b>Object Creation</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ILABEL__OBJECT_CREATION = ITS_LABEL_TYPE_FEATURE_COUNT + 8;
+
+	/**
+	 * The feature id for the '<em><b>Uml Dependency ID</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ILABEL__UML_DEPENDENCY_ID = ITS_LABEL_TYPE_FEATURE_COUNT + 9;
+
+	/**
+	 * The number of structural features of the '<em>ILabel</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ILABEL_FEATURE_COUNT = ITS_LABEL_TYPE_FEATURE_COUNT + 10;
+
+	/**
+	 * The number of operations of the '<em>ILabel</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ILABEL_OPERATION_COUNT = ITS_LABEL_TYPE_OPERATION_COUNT + 0;
+
+	/**
+	 * The meta object id for the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.ILinkImpl <em>ILink</em>}' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.ILinkImpl
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.UMLRpyPackageImpl#getILink()
+	 * @generated
+	 */
+	int ILINK = 146;
+
+	/**
+	 * The feature id for the '<em><b>EAnnotations</b></em>' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ILINK__EANNOTATIONS = IUNIT__EANNOTATIONS;
+
+	/**
+	 * The feature id for the '<em><b>Display Name</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ILINK__DISPLAY_NAME = IUNIT__DISPLAY_NAME;
+
+	/**
+	 * The feature id for the '<em><b>Id</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ILINK__ID = IUNIT_FEATURE_COUNT + 0;
+
+	/**
+	 * The feature id for the '<em><b>Multiplicity</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ILINK__MULTIPLICITY = IUNIT_FEATURE_COUNT + 1;
+
+	/**
+	 * The feature id for the '<em><b>Name</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ILINK__NAME = IUNIT_FEATURE_COUNT + 2;
+
+	/**
+	 * The feature id for the '<em><b>Other Class</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ILINK__OTHER_CLASS = IUNIT_FEATURE_COUNT + 3;
+
+	/**
+	 * The feature id for the '<em><b>Inverse</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ILINK__INVERSE = IUNIT_FEATURE_COUNT + 4;
+
+	/**
+	 * The feature id for the '<em><b>Link Name</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ILINK__LINK_NAME = IUNIT_FEATURE_COUNT + 5;
+
+	/**
+	 * The feature id for the '<em><b>Link Type</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ILINK__LINK_TYPE = IUNIT_FEATURE_COUNT + 6;
+
+	/**
+	 * The feature id for the '<em><b>My State</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ILINK__MY_STATE = IUNIT_FEATURE_COUNT + 7;
+
+	/**
+	 * The number of structural features of the '<em>ILink</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ILINK_FEATURE_COUNT = IUNIT_FEATURE_COUNT + 8;
+
+	/**
+	 * The operation id for the '<em>Get EAnnotation</em>' operation.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ILINK___GET_EANNOTATION__STRING = IUNIT___GET_EANNOTATION__STRING;
+
+	/**
+	 * The number of operations of the '<em>ILink</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ILINK_OPERATION_COUNT = IUNIT_OPERATION_COUNT + 0;
+
+	/**
+	 * The meta object id for the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.ILinkInstanceImpl <em>ILink Instance</em>}' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.ILinkInstanceImpl
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.UMLRpyPackageImpl#getILinkInstance()
+	 * @generated
+	 */
+	int ILINK_INSTANCE = 147;
+
+	/**
+	 * The feature id for the '<em><b>Id</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ILINK_INSTANCE__ID = COMPONENTS_TYPE_FEATURE_COUNT + 0;
+
+	/**
+	 * The feature id for the '<em><b>Name</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ILINK_INSTANCE__NAME = COMPONENTS_TYPE_FEATURE_COUNT + 1;
+
+	/**
+	 * The feature id for the '<em><b>To Link</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ILINK_INSTANCE__TO_LINK = COMPONENTS_TYPE_FEATURE_COUNT + 2;
+
+	/**
+	 * The feature id for the '<em><b>From Link</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ILINK_INSTANCE__FROM_LINK = COMPONENTS_TYPE_FEATURE_COUNT + 3;
+
+	/**
+	 * The feature id for the '<em><b>Instantiates</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ILINK_INSTANCE__INSTANTIATES = COMPONENTS_TYPE_FEATURE_COUNT + 4;
+
+	/**
+	 * The number of structural features of the '<em>ILink Instance</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ILINK_INSTANCE_FEATURE_COUNT = COMPONENTS_TYPE_FEATURE_COUNT + 5;
+
+	/**
+	 * The number of operations of the '<em>ILink Instance</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ILINK_INSTANCE_OPERATION_COUNT = COMPONENTS_TYPE_OPERATION_COUNT + 0;
+
+	/**
+	 * The meta object id for the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.ILiteralSpecificationImpl <em>ILiteral Specification</em>}' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.ILiteralSpecificationImpl
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.UMLRpyPackageImpl#getILiteralSpecification()
+	 * @generated
+	 */
+	int ILITERAL_SPECIFICATION = 148;
+
+	/**
+	 * The feature id for the '<em><b>EAnnotations</b></em>' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ILITERAL_SPECIFICATION__EANNOTATIONS = IVALUE_SPECIFICATION__EANNOTATIONS;
+
+	/**
+	 * The feature id for the '<em><b>Display Name</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ILITERAL_SPECIFICATION__DISPLAY_NAME = IVALUE_SPECIFICATION__DISPLAY_NAME;
+
+	/**
+	 * The feature id for the '<em><b>Id</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ILITERAL_SPECIFICATION__ID = IVALUE_SPECIFICATION_FEATURE_COUNT + 0;
+
+	/**
+	 * The feature id for the '<em><b>Modified Time Weak</b></em>' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ILITERAL_SPECIFICATION__MODIFIED_TIME_WEAK = IVALUE_SPECIFICATION_FEATURE_COUNT + 1;
+
+	/**
+	 * The feature id for the '<em><b>Value</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ILITERAL_SPECIFICATION__VALUE = IVALUE_SPECIFICATION_FEATURE_COUNT + 2;
+
+	/**
+	 * The feature id for the '<em><b>My State</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ILITERAL_SPECIFICATION__MY_STATE = IVALUE_SPECIFICATION_FEATURE_COUNT + 3;
+
+	/**
+	 * The feature id for the '<em><b>Name</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ILITERAL_SPECIFICATION__NAME = IVALUE_SPECIFICATION_FEATURE_COUNT + 4;
+
+	/**
+	 * The feature id for the '<em><b>Code Update CG Time</b></em>' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ILITERAL_SPECIFICATION__CODE_UPDATE_CG_TIME = IVALUE_SPECIFICATION_FEATURE_COUNT + 5;
+
+	/**
+	 * The number of structural features of the '<em>ILiteral Specification</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ILITERAL_SPECIFICATION_FEATURE_COUNT = IVALUE_SPECIFICATION_FEATURE_COUNT + 6;
+
+	/**
+	 * The operation id for the '<em>Get EAnnotation</em>' operation.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ILITERAL_SPECIFICATION___GET_EANNOTATION__STRING = IVALUE_SPECIFICATION___GET_EANNOTATION__STRING;
+
+	/**
+	 * The number of operations of the '<em>ILiteral Specification</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ILITERAL_SPECIFICATION_OPERATION_COUNT = IVALUE_SPECIFICATION_OPERATION_COUNT + 0;
+
+	/**
+	 * The meta object id for the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IMHyperLinkImpl <em>IM Hyper Link</em>}' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IMHyperLinkImpl
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.UMLRpyPackageImpl#getIMHyperLink()
+	 * @generated
+	 */
+	int IM_HYPER_LINK = 149;
+
+	/**
+	 * The feature id for the '<em><b>EAnnotations</b></em>' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IM_HYPER_LINK__EANNOTATIONS = HYPER_LINKS_TYPE__EANNOTATIONS;
+
+	/**
+	 * The feature id for the '<em><b>Display Name</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IM_HYPER_LINK__DISPLAY_NAME = HYPER_LINKS_TYPE__DISPLAY_NAME;
+
+	/**
+	 * The feature id for the '<em><b>Id</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IM_HYPER_LINK__ID = HYPER_LINKS_TYPE_FEATURE_COUNT + 0;
+
+	/**
+	 * The feature id for the '<em><b>Properties</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IM_HYPER_LINK__PROPERTIES = HYPER_LINKS_TYPE_FEATURE_COUNT + 1;
+
+	/**
+	 * The feature id for the '<em><b>Modified Time Weak</b></em>' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IM_HYPER_LINK__MODIFIED_TIME_WEAK = HYPER_LINKS_TYPE_FEATURE_COUNT + 2;
+
+	/**
+	 * The feature id for the '<em><b>Depends On</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IM_HYPER_LINK__DEPENDS_ON = HYPER_LINKS_TYPE_FEATURE_COUNT + 3;
+
+	/**
+	 * The feature id for the '<em><b>Link Disp Name</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IM_HYPER_LINK__LINK_DISP_NAME = HYPER_LINKS_TYPE_FEATURE_COUNT + 4;
+
+	/**
+	 * The feature id for the '<em><b>Link Type</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IM_HYPER_LINK__LINK_TYPE = HYPER_LINKS_TYPE_FEATURE_COUNT + 5;
+
+	/**
+	 * The feature id for the '<em><b>Is Configuration File Hyper Link</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IM_HYPER_LINK__IS_CONFIGURATION_FILE_HYPER_LINK = HYPER_LINKS_TYPE_FEATURE_COUNT + 6;
+
+	/**
+	 * The feature id for the '<em><b>Link Target</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IM_HYPER_LINK__LINK_TARGET = HYPER_LINKS_TYPE_FEATURE_COUNT + 7;
+
+	/**
+	 * The feature id for the '<em><b>Description</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IM_HYPER_LINK__DESCRIPTION = HYPER_LINKS_TYPE_FEATURE_COUNT + 8;
+
+	/**
+	 * The feature id for the '<em><b>Requiremen Tracability Handle</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IM_HYPER_LINK__REQUIREMEN_TRACABILITY_HANDLE = HYPER_LINKS_TYPE_FEATURE_COUNT + 9;
+
+	/**
+	 * The feature id for the '<em><b>Object Creation</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IM_HYPER_LINK__OBJECT_CREATION = HYPER_LINKS_TYPE_FEATURE_COUNT + 10;
+
+	/**
+	 * The feature id for the '<em><b>Uml Dependency ID</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IM_HYPER_LINK__UML_DEPENDENCY_ID = HYPER_LINKS_TYPE_FEATURE_COUNT + 11;
+
+	/**
+	 * The number of structural features of the '<em>IM Hyper Link</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IM_HYPER_LINK_FEATURE_COUNT = HYPER_LINKS_TYPE_FEATURE_COUNT + 12;
+
+	/**
+	 * The operation id for the '<em>Get EAnnotation</em>' operation.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IM_HYPER_LINK___GET_EANNOTATION__STRING = HYPER_LINKS_TYPE___GET_EANNOTATION__STRING;
+
+	/**
+	 * The number of operations of the '<em>IM Hyper Link</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IM_HYPER_LINK_OPERATION_COUNT = HYPER_LINKS_TYPE_OPERATION_COUNT + 0;
+
+	/**
+	 * The meta object id for the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IMSCImpl <em>IMSC</em>}' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IMSCImpl
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.UMLRpyPackageImpl#getIMSC()
+	 * @generated
+	 */
+	int IMSC = 150;
+
+	/**
+	 * The feature id for the '<em><b>Id</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IMSC__ID = DECLARATIVES_TYPE_FEATURE_COUNT + 0;
+
+	/**
+	 * The feature id for the '<em><b>My State</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IMSC__MY_STATE = DECLARATIVES_TYPE_FEATURE_COUNT + 1;
+
+	/**
+	 * The feature id for the '<em><b>Properties</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IMSC__PROPERTIES = DECLARATIVES_TYPE_FEATURE_COUNT + 2;
+
+	/**
+	 * The feature id for the '<em><b>Name</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IMSC__NAME = DECLARATIVES_TYPE_FEATURE_COUNT + 3;
+
+	/**
+	 * The feature id for the '<em><b>Last Modified Time</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IMSC__LAST_MODIFIED_TIME = DECLARATIVES_TYPE_FEATURE_COUNT + 4;
+
+	/**
+	 * The feature id for the '<em><b>Graphic Chart</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IMSC__GRAPHIC_CHART = DECLARATIVES_TYPE_FEATURE_COUNT + 5;
+
+	/**
+	 * The feature id for the '<em><b>Default Subsystem</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IMSC__DEFAULT_SUBSYSTEM = DECLARATIVES_TYPE_FEATURE_COUNT + 6;
+
+	/**
+	 * The feature id for the '<em><b>MpI Collaboration</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IMSC__MPI_COLLABORATION = DECLARATIVES_TYPE_FEATURE_COUNT + 7;
+
+	/**
+	 * The feature id for the '<em><b>Cmheader</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IMSC__CMHEADER = DECLARATIVES_TYPE_FEATURE_COUNT + 8;
+
+	/**
+	 * The feature id for the '<em><b>Last ID</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IMSC__LAST_ID = DECLARATIVES_TYPE_FEATURE_COUNT + 9;
+
+	/**
+	 * The feature id for the '<em><b>Owner Handle</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IMSC__OWNER_HANDLE = DECLARATIVES_TYPE_FEATURE_COUNT + 10;
+
+	/**
+	 * The feature id for the '<em><b>Description</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IMSC__DESCRIPTION = DECLARATIVES_TYPE_FEATURE_COUNT + 11;
+
+	/**
+	 * The feature id for the '<em><b>Modified Time Weak</b></em>' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IMSC__MODIFIED_TIME_WEAK = DECLARATIVES_TYPE_FEATURE_COUNT + 12;
+
+	/**
+	 * The feature id for the '<em><b>Stereotypes</b></em>' reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IMSC__STEREOTYPES = DECLARATIVES_TYPE_FEATURE_COUNT + 13;
+
+	/**
+	 * The feature id for the '<em><b>Tags</b></em>' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IMSC__TAGS = DECLARATIVES_TYPE_FEATURE_COUNT + 14;
+
+	/**
+	 * The feature id for the '<em><b>Requiremen Tracability Handle</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IMSC__REQUIREMEN_TRACABILITY_HANDLE = DECLARATIVES_TYPE_FEATURE_COUNT + 15;
+
+	/**
+	 * The feature id for the '<em><b>Annotations</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IMSC__ANNOTATIONS = DECLARATIVES_TYPE_FEATURE_COUNT + 16;
+
+	/**
+	 * The feature id for the '<em><b>Object Creation</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IMSC__OBJECT_CREATION = DECLARATIVES_TYPE_FEATURE_COUNT + 17;
+
+	/**
+	 * The feature id for the '<em><b>Uml Dependency ID</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IMSC__UML_DEPENDENCY_ID = DECLARATIVES_TYPE_FEATURE_COUNT + 18;
+
+	/**
+	 * The number of structural features of the '<em>IMSC</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IMSC_FEATURE_COUNT = DECLARATIVES_TYPE_FEATURE_COUNT + 19;
+
+	/**
+	 * The number of operations of the '<em>IMSC</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IMSC_OPERATION_COUNT = DECLARATIVES_TYPE_OPERATION_COUNT + 0;
+
+	/**
+	 * The meta object id for the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.MatrixInstancesTypeImpl <em>Matrix Instances Type</em>}' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.MatrixInstancesTypeImpl
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.UMLRpyPackageImpl#getMatrixInstancesType()
+	 * @generated
+	 */
+	int MATRIX_INSTANCES_TYPE = 229;
+
+	/**
+	 * The number of structural features of the '<em>Matrix Instances Type</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int MATRIX_INSTANCES_TYPE_FEATURE_COUNT = 0;
+
+	/**
+	 * The number of operations of the '<em>Matrix Instances Type</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int MATRIX_INSTANCES_TYPE_OPERATION_COUNT = 0;
+
+	/**
+	 * The meta object id for the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IMatrixInstanceImpl <em>IMatrix Instance</em>}' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IMatrixInstanceImpl
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.UMLRpyPackageImpl#getIMatrixInstance()
+	 * @generated
+	 */
+	int IMATRIX_INSTANCE = 151;
+
+	/**
+	 * The feature id for the '<em><b>Id</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IMATRIX_INSTANCE__ID = MATRIX_INSTANCES_TYPE_FEATURE_COUNT + 0;
+
+	/**
+	 * The feature id for the '<em><b>My State</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IMATRIX_INSTANCE__MY_STATE = MATRIX_INSTANCES_TYPE_FEATURE_COUNT + 1;
+
+	/**
+	 * The feature id for the '<em><b>Name</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IMATRIX_INSTANCE__NAME = MATRIX_INSTANCES_TYPE_FEATURE_COUNT + 2;
+
+	/**
+	 * The feature id for the '<em><b>Modified Time Weak</b></em>' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IMATRIX_INSTANCE__MODIFIED_TIME_WEAK = MATRIX_INSTANCES_TYPE_FEATURE_COUNT + 3;
+
+	/**
+	 * The feature id for the '<em><b>Layout Handle</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IMATRIX_INSTANCE__LAYOUT_HANDLE = MATRIX_INSTANCES_TYPE_FEATURE_COUNT + 4;
+
+	/**
+	 * The feature id for the '<em><b>From Scope Handles</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IMATRIX_INSTANCE__FROM_SCOPE_HANDLES = MATRIX_INSTANCES_TYPE_FEATURE_COUNT + 5;
+
+	/**
+	 * The feature id for the '<em><b>To Scope Handles</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IMATRIX_INSTANCE__TO_SCOPE_HANDLES = MATRIX_INSTANCES_TYPE_FEATURE_COUNT + 6;
+
+	/**
+	 * The feature id for the '<em><b>Stereotypes</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IMATRIX_INSTANCE__STEREOTYPES = MATRIX_INSTANCES_TYPE_FEATURE_COUNT + 7;
+
+	/**
+	 * The feature id for the '<em><b>MInclude Descendants to</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IMATRIX_INSTANCE__MINCLUDE_DESCENDANTS_TO = MATRIX_INSTANCES_TYPE_FEATURE_COUNT + 8;
+
+	/**
+	 * The feature id for the '<em><b>Properties</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IMATRIX_INSTANCE__PROPERTIES = MATRIX_INSTANCES_TYPE_FEATURE_COUNT + 9;
+
+	/**
+	 * The number of structural features of the '<em>IMatrix Instance</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IMATRIX_INSTANCE_FEATURE_COUNT = MATRIX_INSTANCES_TYPE_FEATURE_COUNT + 10;
+
+	/**
+	 * The number of operations of the '<em>IMatrix Instance</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IMATRIX_INSTANCE_OPERATION_COUNT = MATRIX_INSTANCES_TYPE_OPERATION_COUNT + 0;
+
+	/**
+	 * The meta object id for the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IMatrixLayoutImpl <em>IMatrix Layout</em>}' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IMatrixLayoutImpl
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.UMLRpyPackageImpl#getIMatrixLayout()
+	 * @generated
+	 */
+	int IMATRIX_LAYOUT = 152;
+
+	/**
+	 * The feature id for the '<em><b>EAnnotations</b></em>' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IMATRIX_LAYOUT__EANNOTATIONS = IUNIT__EANNOTATIONS;
+
+	/**
+	 * The feature id for the '<em><b>Display Name</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IMATRIX_LAYOUT__DISPLAY_NAME = IUNIT__DISPLAY_NAME;
+
+	/**
+	 * The feature id for the '<em><b>Id</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IMATRIX_LAYOUT__ID = IUNIT_FEATURE_COUNT + 0;
+
+	/**
+	 * The feature id for the '<em><b>My State</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IMATRIX_LAYOUT__MY_STATE = IUNIT_FEATURE_COUNT + 1;
+
+	/**
+	 * The feature id for the '<em><b>Name</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IMATRIX_LAYOUT__NAME = IUNIT_FEATURE_COUNT + 2;
+
+	/**
+	 * The feature id for the '<em><b>Modified Time Weak</b></em>' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IMATRIX_LAYOUT__MODIFIED_TIME_WEAK = IUNIT_FEATURE_COUNT + 3;
+
+	/**
+	 * The feature id for the '<em><b>From Element Types</b></em>' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IMATRIX_LAYOUT__FROM_ELEMENT_TYPES = IUNIT_FEATURE_COUNT + 4;
+
+	/**
+	 * The feature id for the '<em><b>To Element Types</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IMATRIX_LAYOUT__TO_ELEMENT_TYPES = IUNIT_FEATURE_COUNT + 5;
+
+	/**
+	 * The feature id for the '<em><b>Cell Element Types</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IMATRIX_LAYOUT__CELL_ELEMENT_TYPES = IUNIT_FEATURE_COUNT + 6;
+
+	/**
+	 * The feature id for the '<em><b>Description</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IMATRIX_LAYOUT__DESCRIPTION = IUNIT_FEATURE_COUNT + 7;
+
+	/**
+	 * The number of structural features of the '<em>IMatrix Layout</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IMATRIX_LAYOUT_FEATURE_COUNT = IUNIT_FEATURE_COUNT + 8;
+
+	/**
+	 * The operation id for the '<em>Get EAnnotation</em>' operation.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IMATRIX_LAYOUT___GET_EANNOTATION__STRING = IUNIT___GET_EANNOTATION__STRING;
+
+	/**
+	 * The number of operations of the '<em>IMatrix Layout</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IMATRIX_LAYOUT_OPERATION_COUNT = IUNIT_OPERATION_COUNT + 0;
+
+	/**
+	 * The meta object id for the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IMatrixViewImpl <em>IMatrix View</em>}' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IMatrixViewImpl
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.UMLRpyPackageImpl#getIMatrixView()
+	 * @generated
+	 */
+	int IMATRIX_VIEW = 153;
+
+	/**
+	 * The feature id for the '<em><b>EAnnotations</b></em>' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IMATRIX_VIEW__EANNOTATIONS = IUNIT__EANNOTATIONS;
+
+	/**
+	 * The feature id for the '<em><b>Display Name</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IMATRIX_VIEW__DISPLAY_NAME = IUNIT__DISPLAY_NAME;
+
+	/**
+	 * The number of structural features of the '<em>IMatrix View</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IMATRIX_VIEW_FEATURE_COUNT = IUNIT_FEATURE_COUNT + 0;
+
+	/**
+	 * The operation id for the '<em>Get EAnnotation</em>' operation.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IMATRIX_VIEW___GET_EANNOTATION__STRING = IUNIT___GET_EANNOTATION__STRING;
+
+	/**
+	 * The number of operations of the '<em>IMatrix View</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IMATRIX_VIEW_OPERATION_COUNT = IUNIT_OPERATION_COUNT + 0;
+
+	/**
+	 * The meta object id for the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IMessageImpl <em>IMessage</em>}' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IMessageImpl
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.UMLRpyPackageImpl#getIMessage()
+	 * @generated
+	 */
+	int IMESSAGE = 154;
+
+	/**
+	 * The feature id for the '<em><b>EAnnotations</b></em>' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IMESSAGE__EANNOTATIONS = IMODEL_ELEMENT__EANNOTATIONS;
+
+	/**
+	 * The feature id for the '<em><b>Display Name</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IMESSAGE__DISPLAY_NAME = IMODEL_ELEMENT__DISPLAY_NAME;
+
+	/**
+	 * The feature id for the '<em><b>Id</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IMESSAGE__ID = IMODEL_ELEMENT_FEATURE_COUNT + 0;
+
+	/**
+	 * The feature id for the '<em><b>My State</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IMESSAGE__MY_STATE = IMODEL_ELEMENT_FEATURE_COUNT + 1;
+
+	/**
+	 * The feature id for the '<em><b>Name</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IMESSAGE__NAME = IMODEL_ELEMENT_FEATURE_COUNT + 2;
+
+	/**
+	 * The feature id for the '<em><b>Msz Sequence</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IMESSAGE__MSZ_SEQUENCE = IMODEL_ELEMENT_FEATURE_COUNT + 3;
+
+	/**
+	 * The feature id for the '<em><b>Msz Actual Args</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IMESSAGE__MSZ_ACTUAL_ARGS = IMODEL_ELEMENT_FEATURE_COUNT + 4;
+
+	/**
+	 * The feature id for the '<em><b>Msz Return Val</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IMESSAGE__MSZ_RETURN_VAL = IMODEL_ELEMENT_FEATURE_COUNT + 5;
+
+	/**
+	 * The feature id for the '<em><b>MpReceiver</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IMESSAGE__MPRECEIVER = IMODEL_ELEMENT_FEATURE_COUNT + 6;
+
+	/**
+	 * The feature id for the '<em><b>MpSender</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IMESSAGE__MPSENDER = IMODEL_ELEMENT_FEATURE_COUNT + 7;
+
+	/**
+	 * The feature id for the '<em><b>MpFormal Message</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IMESSAGE__MPFORMAL_MESSAGE = IMODEL_ELEMENT_FEATURE_COUNT + 8;
+
+	/**
+	 * The feature id for the '<em><b>MeType</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IMESSAGE__METYPE = IMODEL_ELEMENT_FEATURE_COUNT + 9;
+
+	/**
+	 * The feature id for the '<em><b>MpCommunication Connection</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IMESSAGE__MPCOMMUNICATION_CONNECTION = IMODEL_ELEMENT_FEATURE_COUNT + 10;
+
+	/**
+	 * The feature id for the '<em><b>Mfree Text</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IMESSAGE__MFREE_TEXT = IMODEL_ELEMENT_FEATURE_COUNT + 11;
+
+	/**
+	 * The feature id for the '<em><b>Modified Time Weak</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IMESSAGE__MODIFIED_TIME_WEAK = IMODEL_ELEMENT_FEATURE_COUNT + 12;
+
+	/**
+	 * The feature id for the '<em><b>Stereotypes</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IMESSAGE__STEREOTYPES = IMODEL_ELEMENT_FEATURE_COUNT + 13;
+
+	/**
+	 * The feature id for the '<em><b>Tags</b></em>' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IMESSAGE__TAGS = IMODEL_ELEMENT_FEATURE_COUNT + 14;
+
+	/**
+	 * The feature id for the '<em><b>Properties</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IMESSAGE__PROPERTIES = IMODEL_ELEMENT_FEATURE_COUNT + 15;
+
+	/**
+	 * The feature id for the '<em><b>Mtarget Exec</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IMESSAGE__MTARGET_EXEC = IMODEL_ELEMENT_FEATURE_COUNT + 16;
+
+	/**
+	 * The feature id for the '<em><b>Msrc Exec</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IMESSAGE__MSRC_EXEC = IMODEL_ELEMENT_FEATURE_COUNT + 17;
+
+	/**
+	 * The feature id for the '<em><b>Object Creation</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IMESSAGE__OBJECT_CREATION = IMODEL_ELEMENT_FEATURE_COUNT + 18;
+
+	/**
+	 * The feature id for the '<em><b>Uml Dependency ID</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IMESSAGE__UML_DEPENDENCY_ID = IMODEL_ELEMENT_FEATURE_COUNT + 19;
+
+	/**
+	 * The number of structural features of the '<em>IMessage</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IMESSAGE_FEATURE_COUNT = IMODEL_ELEMENT_FEATURE_COUNT + 20;
+
+	/**
+	 * The operation id for the '<em>Get EAnnotation</em>' operation.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IMESSAGE___GET_EANNOTATION__STRING = IMODEL_ELEMENT___GET_EANNOTATION__STRING;
+
+	/**
+	 * The number of operations of the '<em>IMessage</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IMESSAGE_OPERATION_COUNT = IMODEL_ELEMENT_OPERATION_COUNT + 0;
+
+	/**
+	 * The meta object id for the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IMessagePointImpl <em>IMessage Point</em>}' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IMessagePointImpl
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.UMLRpyPackageImpl#getIMessagePoint()
+	 * @generated
+	 */
+	int IMESSAGE_POINT = 155;
+
+	/**
+	 * The feature id for the '<em><b>EAnnotations</b></em>' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IMESSAGE_POINT__EANNOTATIONS = IMODEL_ELEMENT__EANNOTATIONS;
+
+	/**
+	 * The feature id for the '<em><b>Display Name</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IMESSAGE_POINT__DISPLAY_NAME = IMODEL_ELEMENT__DISPLAY_NAME;
+
+	/**
+	 * The number of structural features of the '<em>IMessage Point</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IMESSAGE_POINT_FEATURE_COUNT = IMODEL_ELEMENT_FEATURE_COUNT + 0;
+
+	/**
+	 * The operation id for the '<em>Get EAnnotation</em>' operation.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IMESSAGE_POINT___GET_EANNOTATION__STRING = IMODEL_ELEMENT___GET_EANNOTATION__STRING;
+
+	/**
+	 * The number of operations of the '<em>IMessage Point</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IMESSAGE_POINT_OPERATION_COUNT = IMODEL_ELEMENT_OPERATION_COUNT + 0;
+
+	/**
+	 * The meta object id for the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IMetaLinkHandleImpl <em>IMeta Link Handle</em>}' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IMetaLinkHandleImpl
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.UMLRpyPackageImpl#getIMetaLinkHandle()
+	 * @generated
+	 */
+	int IMETA_LINK_HANDLE = 156;
+
+	/**
+	 * The feature id for the '<em><b>M2 Class</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IMETA_LINK_HANDLE__M2_CLASS = INVERSE_TYPE_FEATURE_COUNT + 0;
+
+	/**
+	 * The feature id for the '<em><b>Filename</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IMETA_LINK_HANDLE__FILENAME = INVERSE_TYPE_FEATURE_COUNT + 1;
+
+	/**
+	 * The feature id for the '<em><b>Subsystem</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IMETA_LINK_HANDLE__SUBSYSTEM = INVERSE_TYPE_FEATURE_COUNT + 2;
+
+	/**
+	 * The feature id for the '<em><b>Class</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IMETA_LINK_HANDLE__CLASS = INVERSE_TYPE_FEATURE_COUNT + 3;
+
+	/**
+	 * The feature id for the '<em><b>Name</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IMETA_LINK_HANDLE__NAME = INVERSE_TYPE_FEATURE_COUNT + 4;
+
+	/**
+	 * The feature id for the '<em><b>Id</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IMETA_LINK_HANDLE__ID = INVERSE_TYPE_FEATURE_COUNT + 5;
+
+	/**
+	 * The number of structural features of the '<em>IMeta Link Handle</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IMETA_LINK_HANDLE_FEATURE_COUNT = INVERSE_TYPE_FEATURE_COUNT + 6;
+
+	/**
+	 * The number of operations of the '<em>IMeta Link Handle</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IMETA_LINK_HANDLE_OPERATION_COUNT = INVERSE_TYPE_OPERATION_COUNT + 0;
+
+	/**
+	 * The meta object id for the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IModuleImpl <em>IModule</em>}' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IModuleImpl
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.UMLRpyPackageImpl#getIModule()
+	 * @generated
+	 */
+	int IMODULE = 158;
+
+	/**
+	 * The feature id for the '<em><b>EAnnotations</b></em>' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IMODULE__EANNOTATIONS = IINSTANCE__EANNOTATIONS;
+
+	/**
+	 * The feature id for the '<em><b>Display Name</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IMODULE__DISPLAY_NAME = IINSTANCE__DISPLAY_NAME;
+
+	/**
+	 * The feature id for the '<em><b>Modified Time Weak</b></em>' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IMODULE__MODIFIED_TIME_WEAK = IINSTANCE__MODIFIED_TIME_WEAK;
+
+	/**
+	 * The feature id for the '<em><b>Id</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IMODULE__ID = IINSTANCE__ID;
+
+	/**
+	 * The feature id for the '<em><b>Inverse</b></em>' reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IMODULE__INVERSE = IINSTANCE__INVERSE;
+
+	/**
+	 * The feature id for the '<em><b>My State</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IMODULE__MY_STATE = IINSTANCE__MY_STATE;
+
+	/**
+	 * The feature id for the '<em><b>Name</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IMODULE__NAME = IINSTANCE__NAME;
+
+	/**
+	 * The feature id for the '<em><b>Multiplicity</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IMODULE__MULTIPLICITY = IINSTANCE_FEATURE_COUNT + 0;
+
+	/**
+	 * The feature id for the '<em><b>Stereotypes</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IMODULE__STEREOTYPES = IINSTANCE_FEATURE_COUNT + 1;
+
+	/**
+	 * The feature id for the '<em><b>Description</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IMODULE__DESCRIPTION = IINSTANCE_FEATURE_COUNT + 2;
+
+	/**
+	 * The feature id for the '<em><b>Hyper Links</b></em>' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IMODULE__HYPER_LINKS = IINSTANCE_FEATURE_COUNT + 3;
+
+	/**
+	 * The feature id for the '<em><b>Other Class</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IMODULE__OTHER_CLASS = IINSTANCE_FEATURE_COUNT + 4;
+
+	/**
+	 * The feature id for the '<em><b>Implicit Class</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IMODULE__IMPLICIT_CLASS = IINSTANCE_FEATURE_COUNT + 5;
+
+	/**
+	 * The feature id for the '<em><b>Properties</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IMODULE__PROPERTIES = IINSTANCE_FEATURE_COUNT + 6;
+
+	/**
+	 * The feature id for the '<em><b>Requiremen Tracability Handle</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IMODULE__REQUIREMEN_TRACABILITY_HANDLE = IINSTANCE_FEATURE_COUNT + 7;
+
+	/**
+	 * The feature id for the '<em><b>Part Kind</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IMODULE__PART_KIND = IINSTANCE_FEATURE_COUNT + 8;
+
+	/**
+	 * The number of structural features of the '<em>IModule</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IMODULE_FEATURE_COUNT = IINSTANCE_FEATURE_COUNT + 9;
+
+	/**
+	 * The operation id for the '<em>Get EAnnotation</em>' operation.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IMODULE___GET_EANNOTATION__STRING = IINSTANCE___GET_EANNOTATION__STRING;
+
+	/**
+	 * The number of operations of the '<em>IModule</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IMODULE_OPERATION_COUNT = IINSTANCE_OPERATION_COUNT + 0;
+
+	/**
+	 * The meta object id for the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IMultiplicityItemImpl <em>IMultiplicity Item</em>}' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IMultiplicityItemImpl
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.UMLRpyPackageImpl#getIMultiplicityItem()
+	 * @generated
+	 */
+	int IMULTIPLICITY_ITEM = 159;
+
+	/**
+	 * The feature id for the '<em><b>Name</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IMULTIPLICITY_ITEM__NAME = 0;
+
+	/**
+	 * The feature id for the '<em><b>Count</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IMULTIPLICITY_ITEM__COUNT = 1;
+
+	/**
+	 * The number of structural features of the '<em>IMultiplicity Item</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IMULTIPLICITY_ITEM_FEATURE_COUNT = 2;
+
+	/**
+	 * The number of operations of the '<em>IMultiplicity Item</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IMULTIPLICITY_ITEM_OPERATION_COUNT = 0;
+
+	/**
+	 * The meta object id for the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.INodeImpl <em>INode</em>}' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.INodeImpl
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.UMLRpyPackageImpl#getINode()
+	 * @generated
+	 */
+	int INODE = 160;
+
+	/**
+	 * The feature id for the '<em><b>EAnnotations</b></em>' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int INODE__EANNOTATIONS = ICLASSIFIER__EANNOTATIONS;
+
+	/**
+	 * The feature id for the '<em><b>Display Name</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int INODE__DISPLAY_NAME = ICLASSIFIER__DISPLAY_NAME;
+
+	/**
+	 * The number of structural features of the '<em>INode</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int INODE_FEATURE_COUNT = ICLASSIFIER_FEATURE_COUNT + 0;
+
+	/**
+	 * The operation id for the '<em>Get EAnnotation</em>' operation.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int INODE___GET_EANNOTATION__STRING = ICLASSIFIER___GET_EANNOTATION__STRING;
+
+	/**
+	 * The number of operations of the '<em>INode</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int INODE_OPERATION_COUNT = ICLASSIFIER_OPERATION_COUNT + 0;
+
+	/**
+	 * The meta object id for the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.ObjectLinksTypeImpl <em>Object Links Type</em>}' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.ObjectLinksTypeImpl
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.UMLRpyPackageImpl#getObjectLinksType()
+	 * @generated
+	 */
+	int OBJECT_LINKS_TYPE = 231;
+
+	/**
+	 * The number of structural features of the '<em>Object Links Type</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int OBJECT_LINKS_TYPE_FEATURE_COUNT = 0;
+
+	/**
+	 * The number of operations of the '<em>Object Links Type</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int OBJECT_LINKS_TYPE_OPERATION_COUNT = 0;
+
+	/**
+	 * The meta object id for the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IObjectLinkImpl <em>IObject Link</em>}' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IObjectLinkImpl
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.UMLRpyPackageImpl#getIObjectLink()
+	 * @generated
+	 */
+	int IOBJECT_LINK = 161;
+
+	/**
+	 * The feature id for the '<em><b>Modified Time Weak</b></em>' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IOBJECT_LINK__MODIFIED_TIME_WEAK = OBJECT_LINKS_TYPE_FEATURE_COUNT + 0;
+
+	/**
+	 * The feature id for the '<em><b>Id</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IOBJECT_LINK__ID = OBJECT_LINKS_TYPE_FEATURE_COUNT + 1;
+
+	/**
+	 * The feature id for the '<em><b>My State</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IOBJECT_LINK__MY_STATE = OBJECT_LINKS_TYPE_FEATURE_COUNT + 2;
+
+	/**
+	 * The feature id for the '<em><b>Name</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IOBJECT_LINK__NAME = OBJECT_LINKS_TYPE_FEATURE_COUNT + 3;
+
+	/**
+	 * The feature id for the '<em><b>EAnnotations</b></em>' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IOBJECT_LINK__EANNOTATIONS = OBJECT_LINKS_TYPE_FEATURE_COUNT + 4;
+
+	/**
+	 * The feature id for the '<em><b>Display Name</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IOBJECT_LINK__DISPLAY_NAME = OBJECT_LINKS_TYPE_FEATURE_COUNT + 5;
+
+	/**
+	 * The feature id for the '<em><b>Stereotypes</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IOBJECT_LINK__STEREOTYPES = OBJECT_LINKS_TYPE_FEATURE_COUNT + 6;
+
+	/**
+	 * The feature id for the '<em><b>Tags</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IOBJECT_LINK__TAGS = OBJECT_LINKS_TYPE_FEATURE_COUNT + 7;
+
+	/**
+	 * The feature id for the '<em><b>To Link</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IOBJECT_LINK__TO_LINK = OBJECT_LINKS_TYPE_FEATURE_COUNT + 8;
+
+	/**
+	 * The feature id for the '<em><b>From Link</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IOBJECT_LINK__FROM_LINK = OBJECT_LINKS_TYPE_FEATURE_COUNT + 9;
+
+	/**
+	 * The feature id for the '<em><b>Instantiates</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IOBJECT_LINK__INSTANTIATES = OBJECT_LINKS_TYPE_FEATURE_COUNT + 10;
+
+	/**
+	 * The feature id for the '<em><b>End1 Multiplicity</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IOBJECT_LINK__END1_MULTIPLICITY = OBJECT_LINKS_TYPE_FEATURE_COUNT + 11;
+
+	/**
+	 * The feature id for the '<em><b>End2 Multiplicity</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IOBJECT_LINK__END2_MULTIPLICITY = OBJECT_LINKS_TYPE_FEATURE_COUNT + 12;
+
+	/**
+	 * The feature id for the '<em><b>To Port</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IOBJECT_LINK__TO_PORT = OBJECT_LINKS_TYPE_FEATURE_COUNT + 13;
+
+	/**
+	 * The feature id for the '<em><b>From Port</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IOBJECT_LINK__FROM_PORT = OBJECT_LINKS_TYPE_FEATURE_COUNT + 14;
+
+	/**
+	 * The feature id for the '<em><b>Description</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IOBJECT_LINK__DESCRIPTION = OBJECT_LINKS_TYPE_FEATURE_COUNT + 15;
+
+	/**
+	 * The feature id for the '<em><b>Requiremen Tracability Handle</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IOBJECT_LINK__REQUIREMEN_TRACABILITY_HANDLE = OBJECT_LINKS_TYPE_FEATURE_COUNT + 16;
+
+	/**
+	 * The feature id for the '<em><b>Code Update CG Time</b></em>' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IOBJECT_LINK__CODE_UPDATE_CG_TIME = OBJECT_LINKS_TYPE_FEATURE_COUNT + 17;
+
+	/**
+	 * The feature id for the '<em><b>Object Creation</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IOBJECT_LINK__OBJECT_CREATION = OBJECT_LINKS_TYPE_FEATURE_COUNT + 18;
+
+	/**
+	 * The feature id for the '<em><b>Uml Dependency ID</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IOBJECT_LINK__UML_DEPENDENCY_ID = OBJECT_LINKS_TYPE_FEATURE_COUNT + 19;
+
+	/**
+	 * The number of structural features of the '<em>IObject Link</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IOBJECT_LINK_FEATURE_COUNT = OBJECT_LINKS_TYPE_FEATURE_COUNT + 20;
+
+	/**
+	 * The operation id for the '<em>Get EAnnotation</em>' operation.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IOBJECT_LINK___GET_EANNOTATION__STRING = OBJECT_LINKS_TYPE_OPERATION_COUNT + 0;
+
+	/**
+	 * The number of operations of the '<em>IObject Link</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IOBJECT_LINK_OPERATION_COUNT = OBJECT_LINKS_TYPE_OPERATION_COUNT + 1;
+
+	/**
+	 * The meta object id for the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IObjectLinkHandleImpl <em>IObject Link Handle</em>}' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IObjectLinkHandleImpl
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.UMLRpyPackageImpl#getIObjectLinkHandle()
+	 * @generated
+	 */
+	int IOBJECT_LINK_HANDLE = 162;
+
+	/**
+	 * The feature id for the '<em><b>M2 Class</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IOBJECT_LINK_HANDLE__M2_CLASS = 0;
+
+	/**
+	 * The feature id for the '<em><b>Filename</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IOBJECT_LINK_HANDLE__FILENAME = 1;
+
+	/**
+	 * The feature id for the '<em><b>Subsystem</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IOBJECT_LINK_HANDLE__SUBSYSTEM = 2;
+
+	/**
+	 * The feature id for the '<em><b>Class</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IOBJECT_LINK_HANDLE__CLASS = 3;
+
+	/**
+	 * The feature id for the '<em><b>Name</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IOBJECT_LINK_HANDLE__NAME = 4;
+
+	/**
+	 * The feature id for the '<em><b>Id</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IOBJECT_LINK_HANDLE__ID = 5;
+
+	/**
+	 * The number of structural features of the '<em>IObject Link Handle</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IOBJECT_LINK_HANDLE_FEATURE_COUNT = 6;
+
+	/**
+	 * The number of operations of the '<em>IObject Link Handle</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IOBJECT_LINK_HANDLE_OPERATION_COUNT = 0;
+
+	/**
+	 * The meta object id for the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IObjectModelDiagramImpl <em>IObject Model Diagram</em>}' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IObjectModelDiagramImpl
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.UMLRpyPackageImpl#getIObjectModelDiagram()
+	 * @generated
+	 */
+	int IOBJECT_MODEL_DIAGRAM = 163;
+
+	/**
+	 * The feature id for the '<em><b>EAnnotations</b></em>' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IOBJECT_MODEL_DIAGRAM__EANNOTATIONS = IDIAGRAM__EANNOTATIONS;
+
+	/**
+	 * The feature id for the '<em><b>Display Name</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IOBJECT_MODEL_DIAGRAM__DISPLAY_NAME = IDIAGRAM__DISPLAY_NAME;
+
+	/**
+	 * The feature id for the '<em><b>Id</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IOBJECT_MODEL_DIAGRAM__ID = IDIAGRAM__ID;
+
+	/**
+	 * The feature id for the '<em><b>Last Modified Time</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IOBJECT_MODEL_DIAGRAM__LAST_MODIFIED_TIME = IDIAGRAM__LAST_MODIFIED_TIME;
+
+	/**
+	 * The feature id for the '<em><b>Requiremen Tracability Handle</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IOBJECT_MODEL_DIAGRAM__REQUIREMEN_TRACABILITY_HANDLE = IDIAGRAM__REQUIREMEN_TRACABILITY_HANDLE;
+
+	/**
+	 * The feature id for the '<em><b>Default Subsystem</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IOBJECT_MODEL_DIAGRAM__DEFAULT_SUBSYSTEM = IDIAGRAM__DEFAULT_SUBSYSTEM;
+
+	/**
+	 * The feature id for the '<em><b>Description</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IOBJECT_MODEL_DIAGRAM__DESCRIPTION = IDIAGRAM__DESCRIPTION;
+
+	/**
+	 * The feature id for the '<em><b>Uml Dependency ID</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IOBJECT_MODEL_DIAGRAM__UML_DEPENDENCY_ID = IDIAGRAM__UML_DEPENDENCY_ID;
+
+	/**
+	 * The feature id for the '<em><b>Last ID</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IOBJECT_MODEL_DIAGRAM__LAST_ID = IDIAGRAM__LAST_ID;
+
+	/**
+	 * The feature id for the '<em><b>My State</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IOBJECT_MODEL_DIAGRAM__MY_STATE = IDIAGRAM__MY_STATE;
+
+	/**
+	 * The feature id for the '<em><b>Owner Handle</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IOBJECT_MODEL_DIAGRAM__OWNER_HANDLE = IDIAGRAM__OWNER_HANDLE;
+
+	/**
+	 * The feature id for the '<em><b>Object Creation</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IOBJECT_MODEL_DIAGRAM__OBJECT_CREATION = IDIAGRAM__OBJECT_CREATION;
+
+	/**
+	 * The feature id for the '<em><b>Name</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IOBJECT_MODEL_DIAGRAM__NAME = IDIAGRAM__NAME;
+
+	/**
+	 * The feature id for the '<em><b>Cmheader</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IOBJECT_MODEL_DIAGRAM__CMHEADER = IDIAGRAM__CMHEADER;
+
+	/**
+	 * The feature id for the '<em><b>Properties</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IOBJECT_MODEL_DIAGRAM__PROPERTIES = IDIAGRAM__PROPERTIES;
+
+	/**
+	 * The feature id for the '<em><b>Stereotypes</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IOBJECT_MODEL_DIAGRAM__STEREOTYPES = IDIAGRAM__STEREOTYPES;
+
+	/**
+	 * The feature id for the '<em><b>Modified Time Weak</b></em>' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IOBJECT_MODEL_DIAGRAM__MODIFIED_TIME_WEAK = IDIAGRAM__MODIFIED_TIME_WEAK;
+
+	/**
+	 * The feature id for the '<em><b>Graphic Chart</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IOBJECT_MODEL_DIAGRAM__GRAPHIC_CHART = IDIAGRAM__GRAPHIC_CHART;
+
+	/**
+	 * The feature id for the '<em><b>Annotations</b></em>' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IOBJECT_MODEL_DIAGRAM__ANNOTATIONS = IDIAGRAM__ANNOTATIONS;
+
+	/**
+	 * The feature id for the '<em><b>Code Update CG Time</b></em>' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IOBJECT_MODEL_DIAGRAM__CODE_UPDATE_CG_TIME = IDIAGRAM__CODE_UPDATE_CG_TIME;
+
+	/**
+	 * The feature id for the '<em><b>Hyper Links</b></em>' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IOBJECT_MODEL_DIAGRAM__HYPER_LINKS = IDIAGRAM__HYPER_LINKS;
+
+	/**
+	 * The number of structural features of the '<em>IObject Model Diagram</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IOBJECT_MODEL_DIAGRAM_FEATURE_COUNT = IDIAGRAM_FEATURE_COUNT + 0;
+
+	/**
+	 * The operation id for the '<em>Get EAnnotation</em>' operation.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IOBJECT_MODEL_DIAGRAM___GET_EANNOTATION__STRING = IDIAGRAM___GET_EANNOTATION__STRING;
+
+	/**
+	 * The number of operations of the '<em>IObject Model Diagram</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IOBJECT_MODEL_DIAGRAM_OPERATION_COUNT = IDIAGRAM_OPERATION_COUNT + 0;
+
+	/**
+	 * The meta object id for the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IObjectNodeImpl <em>IObject Node</em>}' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IObjectNodeImpl
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.UMLRpyPackageImpl#getIObjectNode()
+	 * @generated
+	 */
+	int IOBJECT_NODE = 164;
+
+	/**
+	 * The feature id for the '<em><b>EAnnotations</b></em>' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IOBJECT_NODE__EANNOTATIONS = ISTATE__EANNOTATIONS;
+
+	/**
+	 * The feature id for the '<em><b>Display Name</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IOBJECT_NODE__DISPLAY_NAME = ISTATE__DISPLAY_NAME;
+
+	/**
+	 * The feature id for the '<em><b>Modified Time Weak</b></em>' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IOBJECT_NODE__MODIFIED_TIME_WEAK = ISTATE__MODIFIED_TIME_WEAK;
+
+	/**
+	 * The feature id for the '<em><b>Id</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IOBJECT_NODE__ID = ISTATE__ID;
+
+	/**
+	 * The feature id for the '<em><b>Description</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IOBJECT_NODE__DESCRIPTION = ISTATE__DESCRIPTION;
+
+	/**
+	 * The feature id for the '<em><b>Uml Dependency ID</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IOBJECT_NODE__UML_DEPENDENCY_ID = ISTATE__UML_DEPENDENCY_ID;
+
+	/**
+	 * The feature id for the '<em><b>My State</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IOBJECT_NODE__MY_STATE = ISTATE__MY_STATE;
+
+	/**
+	 * The feature id for the '<em><b>Stereotypes</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IOBJECT_NODE__STEREOTYPES = ISTATE__STEREOTYPES;
+
+	/**
+	 * The feature id for the '<em><b>Object Creation</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IOBJECT_NODE__OBJECT_CREATION = ISTATE__OBJECT_CREATION;
+
+	/**
+	 * The feature id for the '<em><b>Name</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IOBJECT_NODE__NAME = ISTATE__NAME;
+
+	/**
+	 * The feature id for the '<em><b>Parent</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IOBJECT_NODE__PARENT = ISTATE__PARENT;
+
+	/**
+	 * The feature id for the '<em><b>State Type</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IOBJECT_NODE__STATE_TYPE = ISTATE__STATE_TYPE;
+
+	/**
+	 * The feature id for the '<em><b>Default Trans</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IOBJECT_NODE__DEFAULT_TRANS = ISTATE__DEFAULT_TRANS;
+
+	/**
+	 * The feature id for the '<em><b>Entry Action</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IOBJECT_NODE__ENTRY_ACTION = ISTATE__ENTRY_ACTION;
+
+	/**
+	 * The feature id for the '<em><b>Inherits From Handle</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IOBJECT_NODE__INHERITS_FROM_HANDLE = ISTATE__INHERITS_FROM_HANDLE;
+
+	/**
+	 * The feature id for the '<em><b>Exit Action</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IOBJECT_NODE__EXIT_ACTION = ISTATE__EXIT_ACTION;
+
+	/**
+	 * The feature id for the '<em><b>Nested State Chart</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IOBJECT_NODE__NESTED_STATE_CHART = ISTATE__NESTED_STATE_CHART;
+
+	/**
+	 * The feature id for the '<em><b>Requiremen Tracability Handle</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IOBJECT_NODE__REQUIREMEN_TRACABILITY_HANDLE = ISTATE__REQUIREMEN_TRACABILITY_HANDLE;
+
+	/**
+	 * The feature id for the '<em><b>Annotations</b></em>' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IOBJECT_NODE__ANNOTATIONS = ISTATE__ANNOTATIONS;
+
+	/**
+	 * The feature id for the '<em><b>Dependencies</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IOBJECT_NODE__DEPENDENCIES = ISTATE__DEPENDENCIES;
+
+	/**
+	 * The feature id for the '<em><b>The Main Diagram</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IOBJECT_NODE__THE_MAIN_DIAGRAM = ISTATE__THE_MAIN_DIAGRAM;
+
+	/**
+	 * The feature id for the '<em><b>Swimlane</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IOBJECT_NODE__SWIMLANE = ISTATE__SWIMLANE;
+
+	/**
+	 * The feature id for the '<em><b>Code Update CG Time</b></em>' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IOBJECT_NODE__CODE_UPDATE_CG_TIME = ISTATE__CODE_UPDATE_CG_TIME;
+
+	/**
+	 * The feature id for the '<em><b>Represents</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IOBJECT_NODE__REPRESENTS = ISTATE_FEATURE_COUNT + 0;
+
+	/**
+	 * The feature id for the '<em><b>The In State</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IOBJECT_NODE__THE_IN_STATE = ISTATE_FEATURE_COUNT + 1;
+
+	/**
+	 * The feature id for the '<em><b>In State</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IOBJECT_NODE__IN_STATE = ISTATE_FEATURE_COUNT + 2;
+
+	/**
+	 * The number of structural features of the '<em>IObject Node</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IOBJECT_NODE_FEATURE_COUNT = ISTATE_FEATURE_COUNT + 3;
+
+	/**
+	 * The operation id for the '<em>Get EAnnotation</em>' operation.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IOBJECT_NODE___GET_EANNOTATION__STRING = ISTATE___GET_EANNOTATION__STRING;
+
+	/**
+	 * The number of operations of the '<em>IObject Node</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IOBJECT_NODE_OPERATION_COUNT = ISTATE_OPERATION_COUNT + 0;
+
+	/**
+	 * The meta object id for the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IOperationImpl <em>IOperation</em>}' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IOperationImpl
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.UMLRpyPackageImpl#getIOperation()
+	 * @generated
+	 */
+	int IOPERATION = 165;
+
+	/**
+	 * The feature id for the '<em><b>EAnnotations</b></em>' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IOPERATION__EANNOTATIONS = IINTERFACE_ITEM__EANNOTATIONS;
+
+	/**
+	 * The feature id for the '<em><b>Display Name</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IOPERATION__DISPLAY_NAME = IINTERFACE_ITEM__DISPLAY_NAME;
+
+	/**
+	 * The number of structural features of the '<em>IOperation</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IOPERATION_FEATURE_COUNT = IINTERFACE_ITEM_FEATURE_COUNT + 0;
+
+	/**
+	 * The operation id for the '<em>Get EAnnotation</em>' operation.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IOPERATION___GET_EANNOTATION__STRING = IINTERFACE_ITEM___GET_EANNOTATION__STRING;
+
+	/**
+	 * The number of operations of the '<em>IOperation</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IOPERATION_OPERATION_COUNT = IINTERFACE_ITEM_OPERATION_COUNT + 0;
+
+	/**
+	 * The meta object id for the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IPackageImpl <em>IPackage</em>}' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IPackageImpl
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.UMLRpyPackageImpl#getIPackage()
+	 * @generated
+	 */
+	int IPACKAGE = 166;
+
+	/**
+	 * The feature id for the '<em><b>EAnnotations</b></em>' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IPACKAGE__EANNOTATIONS = IUNIT__EANNOTATIONS;
+
+	/**
+	 * The feature id for the '<em><b>Display Name</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IPACKAGE__DISPLAY_NAME = IUNIT__DISPLAY_NAME;
+
+	/**
+	 * The feature id for the '<em><b>Modified Time Weak</b></em>' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IPACKAGE__MODIFIED_TIME_WEAK = IUNIT_FEATURE_COUNT + 0;
+
+	/**
+	 * The feature id for the '<em><b>Id</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IPACKAGE__ID = IUNIT_FEATURE_COUNT + 1;
+
+	/**
+	 * The feature id for the '<em><b>Description</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IPACKAGE__DESCRIPTION = IUNIT_FEATURE_COUNT + 2;
+
+	/**
+	 * The feature id for the '<em><b>Uml Dependency ID</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IPACKAGE__UML_DEPENDENCY_ID = IUNIT_FEATURE_COUNT + 3;
+
+	/**
+	 * The feature id for the '<em><b>Last ID</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IPACKAGE__LAST_ID = IUNIT_FEATURE_COUNT + 4;
+
+	/**
+	 * The feature id for the '<em><b>My State</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IPACKAGE__MY_STATE = IUNIT_FEATURE_COUNT + 5;
+
+	/**
+	 * The feature id for the '<em><b>Annotations</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IPACKAGE__ANNOTATIONS = IUNIT_FEATURE_COUNT + 6;
+
+	/**
+	 * The feature id for the '<em><b>Object Creation</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IPACKAGE__OBJECT_CREATION = IUNIT_FEATURE_COUNT + 7;
+
+	/**
+	 * The feature id for the '<em><b>Stereotypes</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IPACKAGE__STEREOTYPES = IUNIT_FEATURE_COUNT + 8;
+
+	/**
+	 * The feature id for the '<em><b>Name</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IPACKAGE__NAME = IUNIT_FEATURE_COUNT + 9;
+
+	/**
+	 * The feature id for the '<em><b>Properties</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IPACKAGE__PROPERTIES = IUNIT_FEATURE_COUNT + 10;
+
+	/**
+	 * The feature id for the '<em><b>Cmheader</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IPACKAGE__CMHEADER = IUNIT_FEATURE_COUNT + 11;
+
+	/**
+	 * The number of structural features of the '<em>IPackage</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IPACKAGE_FEATURE_COUNT = IUNIT_FEATURE_COUNT + 12;
+
+	/**
+	 * The operation id for the '<em>Get EAnnotation</em>' operation.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IPACKAGE___GET_EANNOTATION__STRING = IUNIT___GET_EANNOTATION__STRING;
+
+	/**
+	 * The number of operations of the '<em>IPackage</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IPACKAGE_OPERATION_COUNT = IUNIT_OPERATION_COUNT + 0;
+
+	/**
+	 * The meta object id for the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IPanelDiagramImpl <em>IPanel Diagram</em>}' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IPanelDiagramImpl
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.UMLRpyPackageImpl#getIPanelDiagram()
+	 * @generated
+	 */
+	int IPANEL_DIAGRAM = 167;
+
+	/**
+	 * The feature id for the '<em><b>EAnnotations</b></em>' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IPANEL_DIAGRAM__EANNOTATIONS = IDIAGRAM__EANNOTATIONS;
+
+	/**
+	 * The feature id for the '<em><b>Display Name</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IPANEL_DIAGRAM__DISPLAY_NAME = IDIAGRAM__DISPLAY_NAME;
+
+	/**
+	 * The feature id for the '<em><b>Id</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IPANEL_DIAGRAM__ID = IDIAGRAM__ID;
+
+	/**
+	 * The feature id for the '<em><b>Last Modified Time</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IPANEL_DIAGRAM__LAST_MODIFIED_TIME = IDIAGRAM__LAST_MODIFIED_TIME;
+
+	/**
+	 * The feature id for the '<em><b>Requiremen Tracability Handle</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IPANEL_DIAGRAM__REQUIREMEN_TRACABILITY_HANDLE = IDIAGRAM__REQUIREMEN_TRACABILITY_HANDLE;
+
+	/**
+	 * The feature id for the '<em><b>Default Subsystem</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IPANEL_DIAGRAM__DEFAULT_SUBSYSTEM = IDIAGRAM__DEFAULT_SUBSYSTEM;
+
+	/**
+	 * The feature id for the '<em><b>Description</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IPANEL_DIAGRAM__DESCRIPTION = IDIAGRAM__DESCRIPTION;
+
+	/**
+	 * The feature id for the '<em><b>Uml Dependency ID</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IPANEL_DIAGRAM__UML_DEPENDENCY_ID = IDIAGRAM__UML_DEPENDENCY_ID;
+
+	/**
+	 * The feature id for the '<em><b>Last ID</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IPANEL_DIAGRAM__LAST_ID = IDIAGRAM__LAST_ID;
+
+	/**
+	 * The feature id for the '<em><b>My State</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IPANEL_DIAGRAM__MY_STATE = IDIAGRAM__MY_STATE;
+
+	/**
+	 * The feature id for the '<em><b>Owner Handle</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IPANEL_DIAGRAM__OWNER_HANDLE = IDIAGRAM__OWNER_HANDLE;
+
+	/**
+	 * The feature id for the '<em><b>Object Creation</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IPANEL_DIAGRAM__OBJECT_CREATION = IDIAGRAM__OBJECT_CREATION;
+
+	/**
+	 * The feature id for the '<em><b>Name</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IPANEL_DIAGRAM__NAME = IDIAGRAM__NAME;
+
+	/**
+	 * The feature id for the '<em><b>Cmheader</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IPANEL_DIAGRAM__CMHEADER = IDIAGRAM__CMHEADER;
+
+	/**
+	 * The feature id for the '<em><b>Properties</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IPANEL_DIAGRAM__PROPERTIES = IDIAGRAM__PROPERTIES;
+
+	/**
+	 * The feature id for the '<em><b>Stereotypes</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IPANEL_DIAGRAM__STEREOTYPES = IDIAGRAM__STEREOTYPES;
+
+	/**
+	 * The feature id for the '<em><b>Modified Time Weak</b></em>' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IPANEL_DIAGRAM__MODIFIED_TIME_WEAK = IDIAGRAM__MODIFIED_TIME_WEAK;
+
+	/**
+	 * The feature id for the '<em><b>Graphic Chart</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IPANEL_DIAGRAM__GRAPHIC_CHART = IDIAGRAM__GRAPHIC_CHART;
+
+	/**
+	 * The feature id for the '<em><b>Annotations</b></em>' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IPANEL_DIAGRAM__ANNOTATIONS = IDIAGRAM__ANNOTATIONS;
+
+	/**
+	 * The feature id for the '<em><b>Code Update CG Time</b></em>' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IPANEL_DIAGRAM__CODE_UPDATE_CG_TIME = IDIAGRAM__CODE_UPDATE_CG_TIME;
+
+	/**
+	 * The feature id for the '<em><b>Hyper Links</b></em>' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IPANEL_DIAGRAM__HYPER_LINKS = IDIAGRAM__HYPER_LINKS;
+
+	/**
+	 * The number of structural features of the '<em>IPanel Diagram</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IPANEL_DIAGRAM_FEATURE_COUNT = IDIAGRAM_FEATURE_COUNT + 0;
+
+	/**
+	 * The operation id for the '<em>Get EAnnotation</em>' operation.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IPANEL_DIAGRAM___GET_EANNOTATION__STRING = IDIAGRAM___GET_EANNOTATION__STRING;
+
+	/**
+	 * The number of operations of the '<em>IPanel Diagram</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IPANEL_DIAGRAM_OPERATION_COUNT = IDIAGRAM_OPERATION_COUNT + 0;
+
+	/**
+	 * The meta object id for the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IPartImpl <em>IPart</em>}' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IPartImpl
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.UMLRpyPackageImpl#getIPart()
+	 * @generated
+	 */
+	int IPART = 168;
+
+	/**
+	 * The feature id for the '<em><b>Uml Dependency ID</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IPART__UML_DEPENDENCY_ID = ASSOCIATIONS_TYPE_FEATURE_COUNT + 0;
+
+	/**
+	 * The feature id for the '<em><b>Object Creation</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IPART__OBJECT_CREATION = ASSOCIATIONS_TYPE_FEATURE_COUNT + 1;
+
+	/**
+	 * The feature id for the '<em><b>Modified Time Weak</b></em>' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IPART__MODIFIED_TIME_WEAK = ASSOCIATIONS_TYPE_FEATURE_COUNT + 2;
+
+	/**
+	 * The feature id for the '<em><b>Id</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IPART__ID = ASSOCIATIONS_TYPE_FEATURE_COUNT + 3;
+
+	/**
+	 * The feature id for the '<em><b>My State</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IPART__MY_STATE = ASSOCIATIONS_TYPE_FEATURE_COUNT + 4;
+
+	/**
+	 * The feature id for the '<em><b>Name</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IPART__NAME = ASSOCIATIONS_TYPE_FEATURE_COUNT + 5;
+
+	/**
+	 * The feature id for the '<em><b>Requiremen Tracability Handle</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IPART__REQUIREMEN_TRACABILITY_HANDLE = ASSOCIATIONS_TYPE_FEATURE_COUNT + 6;
+
+	/**
+	 * The feature id for the '<em><b>Description</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IPART__DESCRIPTION = ASSOCIATIONS_TYPE_FEATURE_COUNT + 7;
+
+	/**
+	 * The feature id for the '<em><b>Properties</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IPART__PROPERTIES = ASSOCIATIONS_TYPE_FEATURE_COUNT + 8;
+
+	/**
+	 * The feature id for the '<em><b>Implicit Class</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IPART__IMPLICIT_CLASS = ASSOCIATIONS_TYPE_FEATURE_COUNT + 9;
+
+	/**
+	 * The feature id for the '<em><b>Last ID</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IPART__LAST_ID = ASSOCIATIONS_TYPE_FEATURE_COUNT + 10;
+
+	/**
+	 * The feature id for the '<em><b>Multiplicity</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IPART__MULTIPLICITY = ASSOCIATIONS_TYPE_FEATURE_COUNT + 11;
+
+	/**
+	 * The feature id for the '<em><b>EAnnotations</b></em>' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IPART__EANNOTATIONS = ASSOCIATIONS_TYPE_FEATURE_COUNT + 12;
+
+	/**
+	 * The feature id for the '<em><b>Display Name</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IPART__DISPLAY_NAME = ASSOCIATIONS_TYPE_FEATURE_COUNT + 13;
+
+	/**
+	 * The feature id for the '<em><b>Stereotypes</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IPART__STEREOTYPES = ASSOCIATIONS_TYPE_FEATURE_COUNT + 14;
+
+	/**
+	 * The feature id for the '<em><b>Other Class</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IPART__OTHER_CLASS = ASSOCIATIONS_TYPE_FEATURE_COUNT + 15;
+
+	/**
+	 * The feature id for the '<em><b>Inverse</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IPART__INVERSE = ASSOCIATIONS_TYPE_FEATURE_COUNT + 16;
+
+	/**
+	 * The feature id for the '<em><b>Dependencies</b></em>' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IPART__DEPENDENCIES = ASSOCIATIONS_TYPE_FEATURE_COUNT + 17;
+
+	/**
+	 * The feature id for the '<em><b>Tags</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IPART__TAGS = ASSOCIATIONS_TYPE_FEATURE_COUNT + 18;
+
+	/**
+	 * The feature id for the '<em><b>Initial Call Action</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IPART__INITIAL_CALL_ACTION = ASSOCIATIONS_TYPE_FEATURE_COUNT + 19;
+
+	/**
+	 * The feature id for the '<em><b>Code Update CG Time</b></em>' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IPART__CODE_UPDATE_CG_TIME = ASSOCIATIONS_TYPE_FEATURE_COUNT + 20;
+
+	/**
+	 * The feature id for the '<em><b>The Main Diagram</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IPART__THE_MAIN_DIAGRAM = ASSOCIATIONS_TYPE_FEATURE_COUNT + 21;
+
+	/**
+	 * The feature id for the '<em><b>Slots</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IPART__SLOTS = ASSOCIATIONS_TYPE_FEATURE_COUNT + 22;
+
+	/**
+	 * The feature id for the '<em><b>Hyper Links</b></em>' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IPART__HYPER_LINKS = ASSOCIATIONS_TYPE_FEATURE_COUNT + 23;
+
+	/**
+	 * The number of structural features of the '<em>IPart</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IPART_FEATURE_COUNT = ASSOCIATIONS_TYPE_FEATURE_COUNT + 24;
+
+	/**
+	 * The operation id for the '<em>Get EAnnotation</em>' operation.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IPART___GET_EANNOTATION__STRING = ASSOCIATIONS_TYPE_OPERATION_COUNT + 0;
+
+	/**
+	 * The number of operations of the '<em>IPart</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IPART_OPERATION_COUNT = ASSOCIATIONS_TYPE_OPERATION_COUNT + 1;
+
+	/**
+	 * The meta object id for the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IPinImpl <em>IPin</em>}' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IPinImpl
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.UMLRpyPackageImpl#getIPin()
+	 * @generated
+	 */
+	int IPIN = 169;
+
+	/**
+	 * The feature id for the '<em><b>EAnnotations</b></em>' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IPIN__EANNOTATIONS = ICONNECTOR__EANNOTATIONS;
+
+	/**
+	 * The feature id for the '<em><b>Display Name</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IPIN__DISPLAY_NAME = ICONNECTOR__DISPLAY_NAME;
+
+	/**
+	 * The feature id for the '<em><b>Modified Time Weak</b></em>' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IPIN__MODIFIED_TIME_WEAK = ICONNECTOR__MODIFIED_TIME_WEAK;
+
+	/**
+	 * The feature id for the '<em><b>Id</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IPIN__ID = ICONNECTOR__ID;
+
+	/**
+	 * The feature id for the '<em><b>Description</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IPIN__DESCRIPTION = ICONNECTOR__DESCRIPTION;
+
+	/**
+	 * The feature id for the '<em><b>Uml Dependency ID</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IPIN__UML_DEPENDENCY_ID = ICONNECTOR__UML_DEPENDENCY_ID;
+
+	/**
+	 * The feature id for the '<em><b>My State</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IPIN__MY_STATE = ICONNECTOR__MY_STATE;
+
+	/**
+	 * The feature id for the '<em><b>Stereotypes</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IPIN__STEREOTYPES = ICONNECTOR__STEREOTYPES;
+
+	/**
+	 * The feature id for the '<em><b>Object Creation</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IPIN__OBJECT_CREATION = ICONNECTOR__OBJECT_CREATION;
+
+	/**
+	 * The feature id for the '<em><b>Name</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IPIN__NAME = ICONNECTOR__NAME;
+
+	/**
+	 * The feature id for the '<em><b>Parent</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IPIN__PARENT = ICONNECTOR__PARENT;
+
+	/**
+	 * The feature id for the '<em><b>Connector Type</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IPIN__CONNECTOR_TYPE = ICONNECTOR__CONNECTOR_TYPE;
+
+	/**
+	 * The feature id for the '<em><b>Mtype</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IPIN__MTYPE = ICONNECTOR_FEATURE_COUNT + 0;
+
+	/**
+	 * The feature id for the '<em><b>Mis Parameter Pin</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IPIN__MIS_PARAMETER_PIN = ICONNECTOR_FEATURE_COUNT + 1;
+
+	/**
+	 * The feature id for the '<em><b>Mcore Pin</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IPIN__MCORE_PIN = ICONNECTOR_FEATURE_COUNT + 2;
+
+	/**
+	 * The number of structural features of the '<em>IPin</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IPIN_FEATURE_COUNT = ICONNECTOR_FEATURE_COUNT + 3;
+
+	/**
+	 * The operation id for the '<em>Get EAnnotation</em>' operation.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IPIN___GET_EANNOTATION__STRING = ICONNECTOR___GET_EANNOTATION__STRING;
+
+	/**
+	 * The number of operations of the '<em>IPin</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IPIN_OPERATION_COUNT = ICONNECTOR_OPERATION_COUNT + 0;
+
+	/**
+	 * The meta object id for the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IPortImpl <em>IPort</em>}' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IPortImpl
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.UMLRpyPackageImpl#getIPort()
+	 * @generated
+	 */
+	int IPORT = 170;
+
+	/**
+	 * The feature id for the '<em><b>EAnnotations</b></em>' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IPORT__EANNOTATIONS = IINSTANCE__EANNOTATIONS;
+
+	/**
+	 * The feature id for the '<em><b>Display Name</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IPORT__DISPLAY_NAME = IINSTANCE__DISPLAY_NAME;
+
+	/**
+	 * The feature id for the '<em><b>Modified Time Weak</b></em>' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IPORT__MODIFIED_TIME_WEAK = IINSTANCE__MODIFIED_TIME_WEAK;
+
+	/**
+	 * The feature id for the '<em><b>Id</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IPORT__ID = IINSTANCE__ID;
+
+	/**
+	 * The feature id for the '<em><b>Inverse</b></em>' reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IPORT__INVERSE = IINSTANCE__INVERSE;
+
+	/**
+	 * The feature id for the '<em><b>My State</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IPORT__MY_STATE = IINSTANCE__MY_STATE;
+
+	/**
+	 * The feature id for the '<em><b>Name</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IPORT__NAME = IINSTANCE__NAME;
+
+	/**
+	 * The feature id for the '<em><b>Requiremen Tracability Handle</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IPORT__REQUIREMEN_TRACABILITY_HANDLE = IINSTANCE_FEATURE_COUNT + 0;
+
+	/**
+	 * The feature id for the '<em><b>Description</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IPORT__DESCRIPTION = IINSTANCE_FEATURE_COUNT + 1;
+
+	/**
+	 * The feature id for the '<em><b>Properties</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IPORT__PROPERTIES = IINSTANCE_FEATURE_COUNT + 2;
+
+	/**
+	 * The feature id for the '<em><b>Implicit Class</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IPORT__IMPLICIT_CLASS = IINSTANCE_FEATURE_COUNT + 3;
+
+	/**
+	 * The feature id for the '<em><b>Multiplicity</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IPORT__MULTIPLICITY = IINSTANCE_FEATURE_COUNT + 4;
+
+	/**
+	 * The feature id for the '<em><b>Other Class</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IPORT__OTHER_CLASS = IINSTANCE_FEATURE_COUNT + 5;
+
+	/**
+	 * The feature id for the '<em><b>Behavioral</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IPORT__BEHAVIORAL = IINSTANCE_FEATURE_COUNT + 6;
+
+	/**
+	 * The feature id for the '<em><b>Reversed</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IPORT__REVERSED = IINSTANCE_FEATURE_COUNT + 7;
+
+	/**
+	 * The feature id for the '<em><b>Stereotypes</b></em>' reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IPORT__STEREOTYPES = IINSTANCE_FEATURE_COUNT + 8;
+
+	/**
+	 * The feature id for the '<em><b>Tags</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IPORT__TAGS = IINSTANCE_FEATURE_COUNT + 9;
+
+	/**
+	 * The feature id for the '<em><b>Object Creation</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IPORT__OBJECT_CREATION = IINSTANCE_FEATURE_COUNT + 10;
+
+	/**
+	 * The feature id for the '<em><b>Uml Dependency ID</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IPORT__UML_DEPENDENCY_ID = IINSTANCE_FEATURE_COUNT + 11;
+
+	/**
+	 * The feature id for the '<em><b>Last ID</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IPORT__LAST_ID = IINSTANCE_FEATURE_COUNT + 12;
+
+	/**
+	 * The feature id for the '<em><b>Dependencies</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IPORT__DEPENDENCIES = IINSTANCE_FEATURE_COUNT + 13;
+
+	/**
+	 * The feature id for the '<em><b>Annotations</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IPORT__ANNOTATIONS = IINSTANCE_FEATURE_COUNT + 14;
+
+	/**
+	 * The number of structural features of the '<em>IPort</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IPORT_FEATURE_COUNT = IINSTANCE_FEATURE_COUNT + 15;
+
+	/**
+	 * The operation id for the '<em>Get EAnnotation</em>' operation.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IPORT___GET_EANNOTATION__STRING = IINSTANCE___GET_EANNOTATION__STRING;
+
+	/**
+	 * The number of operations of the '<em>IPort</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IPORT_OPERATION_COUNT = IINSTANCE_OPERATION_COUNT + 0;
+
+	/**
+	 * The meta object id for the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IPrimitiveOperationImpl <em>IPrimitive Operation</em>}' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IPrimitiveOperationImpl
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.UMLRpyPackageImpl#getIPrimitiveOperation()
+	 * @generated
+	 */
+	int IPRIMITIVE_OPERATION = 171;
+
+	/**
+	 * The feature id for the '<em><b>Virtual</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IPRIMITIVE_OPERATION__VIRTUAL = OPERATIONS_TYPE__VIRTUAL;
+
+	/**
+	 * The feature id for the '<em><b>Uml Dependency ID</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IPRIMITIVE_OPERATION__UML_DEPENDENCY_ID = OPERATIONS_TYPE_FEATURE_COUNT + 0;
+
+	/**
+	 * The feature id for the '<em><b>Object Creation</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IPRIMITIVE_OPERATION__OBJECT_CREATION = OPERATIONS_TYPE_FEATURE_COUNT + 1;
+
+	/**
+	 * The feature id for the '<em><b>Modified Time Weak</b></em>' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IPRIMITIVE_OPERATION__MODIFIED_TIME_WEAK = OPERATIONS_TYPE_FEATURE_COUNT + 2;
+
+	/**
+	 * The feature id for the '<em><b>Id</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IPRIMITIVE_OPERATION__ID = OPERATIONS_TYPE_FEATURE_COUNT + 3;
+
+	/**
+	 * The feature id for the '<em><b>My State</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IPRIMITIVE_OPERATION__MY_STATE = OPERATIONS_TYPE_FEATURE_COUNT + 4;
+
+	/**
+	 * The feature id for the '<em><b>Name</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IPRIMITIVE_OPERATION__NAME = OPERATIONS_TYPE_FEATURE_COUNT + 5;
+
+	/**
+	 * The feature id for the '<em><b>EAnnotations</b></em>' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IPRIMITIVE_OPERATION__EANNOTATIONS = OPERATIONS_TYPE_FEATURE_COUNT + 6;
+
+	/**
+	 * The feature id for the '<em><b>Display Name</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IPRIMITIVE_OPERATION__DISPLAY_NAME = OPERATIONS_TYPE_FEATURE_COUNT + 7;
+
+	/**
+	 * The feature id for the '<em><b>Properties</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IPRIMITIVE_OPERATION__PROPERTIES = OPERATIONS_TYPE_FEATURE_COUNT + 8;
+
+	/**
+	 * The feature id for the '<em><b>Last ID</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IPRIMITIVE_OPERATION__LAST_ID = OPERATIONS_TYPE_FEATURE_COUNT + 9;
+
+	/**
+	 * The feature id for the '<em><b>Args</b></em>' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IPRIMITIVE_OPERATION__ARGS = OPERATIONS_TYPE_FEATURE_COUNT + 10;
+
+	/**
+	 * The feature id for the '<em><b>Return Type</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IPRIMITIVE_OPERATION__RETURN_TYPE = OPERATIONS_TYPE_FEATURE_COUNT + 11;
+
+	/**
+	 * The feature id for the '<em><b>Abstract</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IPRIMITIVE_OPERATION__ABSTRACT = OPERATIONS_TYPE_FEATURE_COUNT + 12;
+
+	/**
+	 * The feature id for the '<em><b>Final</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IPRIMITIVE_OPERATION__FINAL = OPERATIONS_TYPE_FEATURE_COUNT + 13;
+
+	/**
+	 * The feature id for the '<em><b>Concurrency</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IPRIMITIVE_OPERATION__CONCURRENCY = OPERATIONS_TYPE_FEATURE_COUNT + 14;
+
+	/**
+	 * The feature id for the '<em><b>Protection</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IPRIMITIVE_OPERATION__PROTECTION = OPERATIONS_TYPE_FEATURE_COUNT + 15;
+
+	/**
+	 * The feature id for the '<em><b>Static</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IPRIMITIVE_OPERATION__STATIC = OPERATIONS_TYPE_FEATURE_COUNT + 16;
+
+	/**
+	 * The feature id for the '<em><b>Constant</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IPRIMITIVE_OPERATION__CONSTANT = OPERATIONS_TYPE_FEATURE_COUNT + 17;
+
+	/**
+	 * The feature id for the '<em><b>Its Body</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IPRIMITIVE_OPERATION__ITS_BODY = OPERATIONS_TYPE_FEATURE_COUNT + 18;
+
+	/**
+	 * The feature id for the '<em><b>Tags</b></em>' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IPRIMITIVE_OPERATION__TAGS = OPERATIONS_TYPE_FEATURE_COUNT + 19;
+
+	/**
+	 * The feature id for the '<em><b>Annotations</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IPRIMITIVE_OPERATION__ANNOTATIONS = OPERATIONS_TYPE_FEATURE_COUNT + 20;
+
+	/**
+	 * The feature id for the '<em><b>Dependencies</b></em>' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IPRIMITIVE_OPERATION__DEPENDENCIES = OPERATIONS_TYPE_FEATURE_COUNT + 21;
+
+	/**
+	 * The feature id for the '<em><b>Stereotypes</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IPRIMITIVE_OPERATION__STEREOTYPES = OPERATIONS_TYPE_FEATURE_COUNT + 22;
+
+	/**
+	 * The feature id for the '<em><b>My Return Type</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IPRIMITIVE_OPERATION__MY_RETURN_TYPE = OPERATIONS_TYPE_FEATURE_COUNT + 23;
+
+	/**
+	 * The feature id for the '<em><b>Description</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IPRIMITIVE_OPERATION__DESCRIPTION = OPERATIONS_TYPE_FEATURE_COUNT + 24;
+
+	/**
+	 * The feature id for the '<em><b>Requiremen Tracability Handle</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IPRIMITIVE_OPERATION__REQUIREMEN_TRACABILITY_HANDLE = OPERATIONS_TYPE_FEATURE_COUNT + 25;
+
+	/**
+	 * The feature id for the '<em><b>Declaratives</b></em>' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IPRIMITIVE_OPERATION__DECLARATIVES = OPERATIONS_TYPE_FEATURE_COUNT + 26;
+
+	/**
+	 * The feature id for the '<em><b>Its Activity Graph</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IPRIMITIVE_OPERATION__ITS_ACTIVITY_GRAPH = OPERATIONS_TYPE_FEATURE_COUNT + 27;
+
+	/**
+	 * The feature id for the '<em><b>Embeded Files</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IPRIMITIVE_OPERATION__EMBEDED_FILES = OPERATIONS_TYPE_FEATURE_COUNT + 28;
+
+	/**
+	 * The feature id for the '<em><b>Code Update CG Time</b></em>' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IPRIMITIVE_OPERATION__CODE_UPDATE_CG_TIME = OPERATIONS_TYPE_FEATURE_COUNT + 29;
+
+	/**
+	 * The feature id for the '<em><b>Template Parameters</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IPRIMITIVE_OPERATION__TEMPLATE_PARAMETERS = OPERATIONS_TYPE_FEATURE_COUNT + 30;
+
+	/**
+	 * The number of structural features of the '<em>IPrimitive Operation</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IPRIMITIVE_OPERATION_FEATURE_COUNT = OPERATIONS_TYPE_FEATURE_COUNT + 31;
+
+	/**
+	 * The operation id for the '<em>Get EAnnotation</em>' operation.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IPRIMITIVE_OPERATION___GET_EANNOTATION__STRING = OPERATIONS_TYPE_OPERATION_COUNT + 0;
+
+	/**
+	 * The number of operations of the '<em>IPrimitive Operation</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IPRIMITIVE_OPERATION_OPERATION_COUNT = OPERATIONS_TYPE_OPERATION_COUNT + 1;
+
+	/**
+	 * The meta object id for the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IProfileImpl <em>IProfile</em>}' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IProfileImpl
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.UMLRpyPackageImpl#getIProfile()
+	 * @generated
+	 */
+	int IPROFILE = 172;
+
+	/**
+	 * The feature id for the '<em><b>EAnnotations</b></em>' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IPROFILE__EANNOTATIONS = IPACKAGE__EANNOTATIONS;
+
+	/**
+	 * The feature id for the '<em><b>Display Name</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IPROFILE__DISPLAY_NAME = IPACKAGE__DISPLAY_NAME;
+
+	/**
+	 * The feature id for the '<em><b>Modified Time Weak</b></em>' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IPROFILE__MODIFIED_TIME_WEAK = IPACKAGE__MODIFIED_TIME_WEAK;
+
+	/**
+	 * The feature id for the '<em><b>Id</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IPROFILE__ID = IPACKAGE__ID;
+
+	/**
+	 * The feature id for the '<em><b>Description</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IPROFILE__DESCRIPTION = IPACKAGE__DESCRIPTION;
+
+	/**
+	 * The feature id for the '<em><b>Uml Dependency ID</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IPROFILE__UML_DEPENDENCY_ID = IPACKAGE__UML_DEPENDENCY_ID;
+
+	/**
+	 * The feature id for the '<em><b>Last ID</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IPROFILE__LAST_ID = IPACKAGE__LAST_ID;
+
+	/**
+	 * The feature id for the '<em><b>My State</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IPROFILE__MY_STATE = IPACKAGE__MY_STATE;
+
+	/**
+	 * The feature id for the '<em><b>Annotations</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IPROFILE__ANNOTATIONS = IPACKAGE__ANNOTATIONS;
+
+	/**
+	 * The feature id for the '<em><b>Object Creation</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IPROFILE__OBJECT_CREATION = IPACKAGE__OBJECT_CREATION;
+
+	/**
+	 * The feature id for the '<em><b>Stereotypes</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IPROFILE__STEREOTYPES = IPACKAGE__STEREOTYPES;
+
+	/**
+	 * The feature id for the '<em><b>Name</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IPROFILE__NAME = IPACKAGE__NAME;
+
+	/**
+	 * The feature id for the '<em><b>Properties</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IPROFILE__PROPERTIES = IPACKAGE__PROPERTIES;
+
+	/**
+	 * The feature id for the '<em><b>Cmheader</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IPROFILE__CMHEADER = IPACKAGE__CMHEADER;
+
+	/**
+	 * The feature id for the '<em><b>Weak CG Time</b></em>' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IPROFILE__WEAK_CG_TIME = IPACKAGE_FEATURE_COUNT + 0;
+
+	/**
+	 * The feature id for the '<em><b>Strong CG Time</b></em>' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IPROFILE__STRONG_CG_TIME = IPACKAGE_FEATURE_COUNT + 1;
+
+	/**
+	 * The feature id for the '<em><b>Declaratives</b></em>' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IPROFILE__DECLARATIVES = IPACKAGE_FEATURE_COUNT + 2;
+
+	/**
+	 * The feature id for the '<em><b>Default Composite</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IPROFILE__DEFAULT_COMPOSITE = IPACKAGE_FEATURE_COUNT + 3;
+
+	/**
+	 * The feature id for the '<em><b>Events Base ID</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IPROFILE__EVENTS_BASE_ID = IPACKAGE_FEATURE_COUNT + 4;
+
+	/**
+	 * The feature id for the '<em><b>Classes</b></em>' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IPROFILE__CLASSES = IPACKAGE_FEATURE_COUNT + 5;
+
+	/**
+	 * The feature id for the '<em><b>Configuration Related Time</b></em>' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IPROFILE__CONFIGURATION_RELATED_TIME = IPACKAGE_FEATURE_COUNT + 6;
+
+	/**
+	 * The feature id for the '<em><b>Tags</b></em>' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IPROFILE__TAGS = IPACKAGE_FEATURE_COUNT + 7;
+
+	/**
+	 * The feature id for the '<em><b>Types</b></em>' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IPROFILE__TYPES = IPACKAGE_FEATURE_COUNT + 8;
+
+	/**
+	 * The feature id for the '<em><b>Matrix Layouts</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IPROFILE__MATRIX_LAYOUTS = IPACKAGE_FEATURE_COUNT + 9;
+
+	/**
+	 * The feature id for the '<em><b>License</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IPROFILE__LICENSE = IPACKAGE_FEATURE_COUNT + 10;
+
+	/**
+	 * The number of structural features of the '<em>IProfile</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IPROFILE_FEATURE_COUNT = IPACKAGE_FEATURE_COUNT + 11;
+
+	/**
+	 * The operation id for the '<em>Get EAnnotation</em>' operation.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IPROFILE___GET_EANNOTATION__STRING = IPACKAGE___GET_EANNOTATION__STRING;
+
+	/**
+	 * The number of operations of the '<em>IProfile</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IPROFILE_OPERATION_COUNT = IPACKAGE_OPERATION_COUNT + 0;
+
+	/**
+	 * The meta object id for the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IProjectImpl <em>IProject</em>}' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IProjectImpl
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.UMLRpyPackageImpl#getIProject()
+	 * @generated
+	 */
+	int IPROJECT = 173;
+
+	/**
+	 * The feature id for the '<em><b>EAnnotations</b></em>' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IPROJECT__EANNOTATIONS = IPACKAGE__EANNOTATIONS;
+
+	/**
+	 * The feature id for the '<em><b>Display Name</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IPROJECT__DISPLAY_NAME = IPACKAGE__DISPLAY_NAME;
+
+	/**
+	 * The feature id for the '<em><b>Modified Time Weak</b></em>' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IPROJECT__MODIFIED_TIME_WEAK = IPACKAGE__MODIFIED_TIME_WEAK;
+
+	/**
+	 * The feature id for the '<em><b>Id</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IPROJECT__ID = IPACKAGE__ID;
+
+	/**
+	 * The feature id for the '<em><b>Description</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IPROJECT__DESCRIPTION = IPACKAGE__DESCRIPTION;
+
+	/**
+	 * The feature id for the '<em><b>Uml Dependency ID</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IPROJECT__UML_DEPENDENCY_ID = IPACKAGE__UML_DEPENDENCY_ID;
+
+	/**
+	 * The feature id for the '<em><b>Last ID</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IPROJECT__LAST_ID = IPACKAGE__LAST_ID;
+
+	/**
+	 * The feature id for the '<em><b>My State</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IPROJECT__MY_STATE = IPACKAGE__MY_STATE;
+
+	/**
+	 * The feature id for the '<em><b>Annotations</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IPROJECT__ANNOTATIONS = IPACKAGE__ANNOTATIONS;
+
+	/**
+	 * The feature id for the '<em><b>Object Creation</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IPROJECT__OBJECT_CREATION = IPACKAGE__OBJECT_CREATION;
+
+	/**
+	 * The feature id for the '<em><b>Stereotypes</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IPROJECT__STEREOTYPES = IPACKAGE__STEREOTYPES;
+
+	/**
+	 * The feature id for the '<em><b>Name</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IPROJECT__NAME = IPACKAGE__NAME;
+
+	/**
+	 * The feature id for the '<em><b>Properties</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IPROJECT__PROPERTIES = IPACKAGE__PROPERTIES;
+
+	/**
+	 * The feature id for the '<em><b>Cmheader</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IPROJECT__CMHEADER = IPACKAGE__CMHEADER;
+
+	/**
+	 * The feature id for the '<em><b>User Colors</b></em>' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IPROJECT__USER_COLORS = IPACKAGE_FEATURE_COUNT + 0;
+
+	/**
+	 * The feature id for the '<em><b>Default Subsystem</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IPROJECT__DEFAULT_SUBSYSTEM = IPACKAGE_FEATURE_COUNT + 1;
+
+	/**
+	 * The feature id for the '<em><b>Component</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IPROJECT__COMPONENT = IPACKAGE_FEATURE_COUNT + 2;
+
+	/**
+	 * The feature id for the '<em><b>Multiplicities</b></em>' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IPROJECT__MULTIPLICITIES = IPACKAGE_FEATURE_COUNT + 3;
+
+	/**
+	 * The feature id for the '<em><b>Subsystems</b></em>' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IPROJECT__SUBSYSTEMS = IPACKAGE_FEATURE_COUNT + 4;
+
+	/**
+	 * The feature id for the '<em><b>Diagrams</b></em>' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IPROJECT__DIAGRAMS = IPACKAGE_FEATURE_COUNT + 5;
+
+	/**
+	 * The feature id for the '<em><b>Components</b></em>' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IPROJECT__COMPONENTS = IPACKAGE_FEATURE_COUNT + 6;
+
+	/**
+	 * The feature id for the '<em><b>Panel Diagrams</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IPROJECT__PANEL_DIAGRAMS = IPACKAGE_FEATURE_COUNT + 7;
+
+	/**
+	 * The feature id for the '<em><b>Hyper Links</b></em>' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IPROJECT__HYPER_LINKS = IPACKAGE_FEATURE_COUNT + 8;
+
+	/**
+	 * The feature id for the '<em><b>MSCS</b></em>' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IPROJECT__MSCS = IPACKAGE_FEATURE_COUNT + 9;
+
+	/**
+	 * The feature id for the '<em><b>UC Diagrams</b></em>' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IPROJECT__UC_DIAGRAMS = IPACKAGE_FEATURE_COUNT + 10;
+
+	/**
+	 * The feature id for the '<em><b>Collaboration Diagrams</b></em>' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IPROJECT__COLLABORATION_DIAGRAMS = IPACKAGE_FEATURE_COUNT + 11;
+
+	/**
+	 * The feature id for the '<em><b>Declaratives</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IPROJECT__DECLARATIVES = IPACKAGE_FEATURE_COUNT + 12;
+
+	/**
+	 * The feature id for the '<em><b>Component Diagrams</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IPROJECT__COMPONENT_DIAGRAMS = IPACKAGE_FEATURE_COUNT + 13;
+
+	/**
+	 * The feature id for the '<em><b>Unit Scc Proj Name</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IPROJECT__UNIT_SCC_PROJ_NAME = IPACKAGE_FEATURE_COUNT + 14;
+
+	/**
+	 * The feature id for the '<em><b>Unit Scc Proj Path</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IPROJECT__UNIT_SCC_PROJ_PATH = IPACKAGE_FEATURE_COUNT + 15;
+
+	/**
+	 * The feature id for the '<em><b>Dependencies</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IPROJECT__DEPENDENCIES = IPACKAGE_FEATURE_COUNT + 16;
+
+	/**
+	 * The feature id for the '<em><b>Code Update CG Time</b></em>' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IPROJECT__CODE_UPDATE_CG_TIME = IPACKAGE_FEATURE_COUNT + 17;
+
+	/**
+	 * The feature id for the '<em><b>Version</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IPROJECT__VERSION = IPACKAGE_FEATURE_COUNT + 18;
+
+	/**
+	 * The number of structural features of the '<em>IProject</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IPROJECT_FEATURE_COUNT = IPACKAGE_FEATURE_COUNT + 19;
+
+	/**
+	 * The operation id for the '<em>Get EAnnotation</em>' operation.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IPROJECT___GET_EANNOTATION__STRING = IPACKAGE___GET_EANNOTATION__STRING;
+
+	/**
+	 * The number of operations of the '<em>IProject</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IPROJECT_OPERATION_COUNT = IPACKAGE_OPERATION_COUNT + 0;
+
+	/**
+	 * The meta object id for the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IPropertyImpl <em>IProperty</em>}' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IPropertyImpl
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.UMLRpyPackageImpl#getIProperty()
+	 * @generated
+	 */
+	int IPROPERTY = 174;
+
+	/**
+	 * The feature id for the '<em><b>Name</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IPROPERTY__NAME = 0;
+
+	/**
+	 * The feature id for the '<em><b>Value</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IPROPERTY__VALUE = 1;
+
+	/**
+	 * The feature id for the '<em><b>Type</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IPROPERTY__TYPE = 2;
+
+	/**
+	 * The feature id for the '<em><b>Extra Type Info</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IPROPERTY__EXTRA_TYPE_INFO = 3;
+
+	/**
+	 * The number of structural features of the '<em>IProperty</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IPROPERTY_FEATURE_COUNT = 4;
+
+	/**
+	 * The number of operations of the '<em>IProperty</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IPROPERTY_OPERATION_COUNT = 0;
+
+	/**
+	 * The meta object id for the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.PropertiesTypeImpl <em>Properties Type</em>}' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.PropertiesTypeImpl
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.UMLRpyPackageImpl#getPropertiesType()
+	 * @generated
+	 */
+	int PROPERTIES_TYPE = 236;
+
+	/**
+	 * The number of structural features of the '<em>Properties Type</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int PROPERTIES_TYPE_FEATURE_COUNT = 0;
+
+	/**
+	 * The number of operations of the '<em>Properties Type</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int PROPERTIES_TYPE_OPERATION_COUNT = 0;
+
+	/**
+	 * The meta object id for the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IPropertyContainerImpl <em>IProperty Container</em>}' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IPropertyContainerImpl
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.UMLRpyPackageImpl#getIPropertyContainer()
+	 * @generated
+	 */
+	int IPROPERTY_CONTAINER = 175;
+
+	/**
+	 * The feature id for the '<em><b>Subjects</b></em>' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IPROPERTY_CONTAINER__SUBJECTS = PROPERTIES_TYPE_FEATURE_COUNT + 0;
+
+	/**
+	 * The number of structural features of the '<em>IProperty Container</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IPROPERTY_CONTAINER_FEATURE_COUNT = PROPERTIES_TYPE_FEATURE_COUNT + 1;
+
+	/**
+	 * The number of operations of the '<em>IProperty Container</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IPROPERTY_CONTAINER_OPERATION_COUNT = PROPERTIES_TYPE_OPERATION_COUNT + 0;
+
+	/**
+	 * The meta object id for the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IPropertyMetaclassImpl <em>IProperty Metaclass</em>}' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IPropertyMetaclassImpl
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.UMLRpyPackageImpl#getIPropertyMetaclass()
+	 * @generated
+	 */
+	int IPROPERTY_METACLASS = 176;
+
+	/**
+	 * The feature id for the '<em><b>Name</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IPROPERTY_METACLASS__NAME = 0;
+
+	/**
+	 * The feature id for the '<em><b>Properties</b></em>' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IPROPERTY_METACLASS__PROPERTIES = 1;
+
+	/**
+	 * The number of structural features of the '<em>IProperty Metaclass</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IPROPERTY_METACLASS_FEATURE_COUNT = 2;
+
+	/**
+	 * The number of operations of the '<em>IProperty Metaclass</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IPROPERTY_METACLASS_OPERATION_COUNT = 0;
+
+	/**
+	 * The meta object id for the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IPropertySubjectImpl <em>IProperty Subject</em>}' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IPropertySubjectImpl
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.UMLRpyPackageImpl#getIPropertySubject()
+	 * @generated
+	 */
+	int IPROPERTY_SUBJECT = 177;
+
+	/**
+	 * The feature id for the '<em><b>Name</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IPROPERTY_SUBJECT__NAME = 0;
+
+	/**
+	 * The feature id for the '<em><b>Metaclasses</b></em>' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IPROPERTY_SUBJECT__METACLASSES = 1;
+
+	/**
+	 * The number of structural features of the '<em>IProperty Subject</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IPROPERTY_SUBJECT_FEATURE_COUNT = 2;
+
+	/**
+	 * The number of operations of the '<em>IProperty Subject</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IPROPERTY_SUBJECT_OPERATION_COUNT = 0;
+
+	/**
+	 * The meta object id for the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IReceptionImpl <em>IReception</em>}' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IReceptionImpl
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.UMLRpyPackageImpl#getIReception()
+	 * @generated
+	 */
+	int IRECEPTION = 178;
+
+	/**
+	 * The feature id for the '<em><b>Virtual</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IRECEPTION__VIRTUAL = OPERATIONS_TYPE__VIRTUAL;
+
+	/**
+	 * The feature id for the '<em><b>Id</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IRECEPTION__ID = OPERATIONS_TYPE_FEATURE_COUNT + 0;
+
+	/**
+	 * The feature id for the '<em><b>My State</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IRECEPTION__MY_STATE = OPERATIONS_TYPE_FEATURE_COUNT + 1;
+
+	/**
+	 * The feature id for the '<em><b>Args</b></em>' reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IRECEPTION__ARGS = OPERATIONS_TYPE_FEATURE_COUNT + 2;
+
+	/**
+	 * The feature id for the '<em><b>Event</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IRECEPTION__EVENT = OPERATIONS_TYPE_FEATURE_COUNT + 3;
+
+	/**
+	 * The feature id for the '<em><b>Modified Time Weak</b></em>' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IRECEPTION__MODIFIED_TIME_WEAK = OPERATIONS_TYPE_FEATURE_COUNT + 4;
+
+	/**
+	 * The feature id for the '<em><b>Dependencies</b></em>' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IRECEPTION__DEPENDENCIES = OPERATIONS_TYPE_FEATURE_COUNT + 5;
+
+	/**
+	 * The feature id for the '<em><b>Last ID</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IRECEPTION__LAST_ID = OPERATIONS_TYPE_FEATURE_COUNT + 6;
+
+	/**
+	 * The feature id for the '<em><b>Requiremen Tracability Handle</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IRECEPTION__REQUIREMEN_TRACABILITY_HANDLE = OPERATIONS_TYPE_FEATURE_COUNT + 7;
+
+	/**
+	 * The feature id for the '<em><b>Description</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IRECEPTION__DESCRIPTION = OPERATIONS_TYPE_FEATURE_COUNT + 8;
+
+	/**
+	 * The feature id for the '<em><b>Object Creation</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IRECEPTION__OBJECT_CREATION = OPERATIONS_TYPE_FEATURE_COUNT + 9;
+
+	/**
+	 * The feature id for the '<em><b>Uml Dependency ID</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IRECEPTION__UML_DEPENDENCY_ID = OPERATIONS_TYPE_FEATURE_COUNT + 10;
+
+	/**
+	 * The number of structural features of the '<em>IReception</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IRECEPTION_FEATURE_COUNT = OPERATIONS_TYPE_FEATURE_COUNT + 11;
+
+	/**
+	 * The number of operations of the '<em>IReception</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IRECEPTION_OPERATION_COUNT = OPERATIONS_TYPE_OPERATION_COUNT + 0;
+
+	/**
+	 * The meta object id for the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IReferenceActivityImpl <em>IReference Activity</em>}' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IReferenceActivityImpl
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.UMLRpyPackageImpl#getIReferenceActivity()
+	 * @generated
+	 */
+	int IREFERENCE_ACTIVITY = 179;
+
+	/**
+	 * The feature id for the '<em><b>Id</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IREFERENCE_ACTIVITY__ID = DEPENDS_ON_TYPE_FEATURE_COUNT + 0;
+
+	/**
+	 * The feature id for the '<em><b>Name</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IREFERENCE_ACTIVITY__NAME = DEPENDS_ON_TYPE_FEATURE_COUNT + 1;
+
+	/**
+	 * The feature id for the '<em><b>Stereotypes</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IREFERENCE_ACTIVITY__STEREOTYPES = DEPENDS_ON_TYPE_FEATURE_COUNT + 2;
+
+	/**
+	 * The feature id for the '<em><b>Modified Time Weak</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IREFERENCE_ACTIVITY__MODIFIED_TIME_WEAK = DEPENDS_ON_TYPE_FEATURE_COUNT + 3;
+
+	/**
+	 * The feature id for the '<em><b>Parent</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IREFERENCE_ACTIVITY__PARENT = DEPENDS_ON_TYPE_FEATURE_COUNT + 4;
+
+	/**
+	 * The feature id for the '<em><b>State Type</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IREFERENCE_ACTIVITY__STATE_TYPE = DEPENDS_ON_TYPE_FEATURE_COUNT + 5;
+
+	/**
+	 * The feature id for the '<em><b>Default Trans</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IREFERENCE_ACTIVITY__DEFAULT_TRANS = DEPENDS_ON_TYPE_FEATURE_COUNT + 6;
+
+	/**
+	 * The feature id for the '<em><b>Swimlane</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IREFERENCE_ACTIVITY__SWIMLANE = DEPENDS_ON_TYPE_FEATURE_COUNT + 7;
+
+	/**
+	 * The feature id for the '<em><b>Referenced Activity</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IREFERENCE_ACTIVITY__REFERENCED_ACTIVITY = DEPENDS_ON_TYPE_FEATURE_COUNT + 8;
+
+	/**
+	 * The feature id for the '<em><b>My State</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IREFERENCE_ACTIVITY__MY_STATE = DEPENDS_ON_TYPE_FEATURE_COUNT + 9;
+
+	/**
+	 * The number of structural features of the '<em>IReference Activity</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IREFERENCE_ACTIVITY_FEATURE_COUNT = DEPENDS_ON_TYPE_FEATURE_COUNT + 10;
+
+	/**
+	 * The number of operations of the '<em>IReference Activity</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IREFERENCE_ACTIVITY_OPERATION_COUNT = DEPENDS_ON_TYPE_OPERATION_COUNT + 0;
+
+	/**
+	 * The meta object id for the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IRequirementImpl <em>IRequirement</em>}' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IRequirementImpl
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.UMLRpyPackageImpl#getIRequirement()
+	 * @generated
+	 */
+	int IREQUIREMENT = 181;
+
+	/**
+	 * The feature id for the '<em><b>EAnnotations</b></em>' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IREQUIREMENT__EANNOTATIONS = IANNOTATION__EANNOTATIONS;
+
+	/**
+	 * The feature id for the '<em><b>Display Name</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IREQUIREMENT__DISPLAY_NAME = IANNOTATION__DISPLAY_NAME;
+
+	/**
+	 * The feature id for the '<em><b>Requiremen Tracability Handle</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IREQUIREMENT__REQUIREMEN_TRACABILITY_HANDLE = IANNOTATION__REQUIREMEN_TRACABILITY_HANDLE;
+
+	/**
+	 * The feature id for the '<em><b>Description</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IREQUIREMENT__DESCRIPTION = IANNOTATION__DESCRIPTION;
+
+	/**
+	 * The feature id for the '<em><b>Uml Dependency ID</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IREQUIREMENT__UML_DEPENDENCY_ID = IANNOTATION__UML_DEPENDENCY_ID;
+
+	/**
+	 * The feature id for the '<em><b>Object Creation</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IREQUIREMENT__OBJECT_CREATION = IANNOTATION__OBJECT_CREATION;
+
+	/**
+	 * The feature id for the '<em><b>Tags</b></em>' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IREQUIREMENT__TAGS = IANNOTATION__TAGS;
+
+	/**
+	 * The feature id for the '<em><b>Body</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IREQUIREMENT__BODY = IANNOTATION__BODY;
+
+	/**
+	 * The feature id for the '<em><b>Id</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IREQUIREMENT__ID = IANNOTATION_FEATURE_COUNT + 0;
+
+	/**
+	 * The feature id for the '<em><b>Name</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IREQUIREMENT__NAME = IANNOTATION_FEATURE_COUNT + 1;
+
+	/**
+	 * The feature id for the '<em><b>Annotations</b></em>' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IREQUIREMENT__ANNOTATIONS = IANNOTATION_FEATURE_COUNT + 2;
+
+	/**
+	 * The feature id for the '<em><b>My State</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IREQUIREMENT__MY_STATE = IANNOTATION_FEATURE_COUNT + 3;
+
+	/**
+	 * The feature id for the '<em><b>Last ID</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IREQUIREMENT__LAST_ID = IANNOTATION_FEATURE_COUNT + 4;
+
+	/**
+	 * The feature id for the '<em><b>Stereotypes</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IREQUIREMENT__STEREOTYPES = IANNOTATION_FEATURE_COUNT + 5;
+
+	/**
+	 * The feature id for the '<em><b>Modified Time Weak</b></em>' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IREQUIREMENT__MODIFIED_TIME_WEAK = IANNOTATION_FEATURE_COUNT + 6;
+
+	/**
+	 * The feature id for the '<em><b>Req ID</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IREQUIREMENT__REQ_ID = IANNOTATION_FEATURE_COUNT + 7;
+
+	/**
+	 * The feature id for the '<em><b>Dependencies</b></em>' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IREQUIREMENT__DEPENDENCIES = IANNOTATION_FEATURE_COUNT + 8;
+
+	/**
+	 * The feature id for the '<em><b>Anchors</b></em>' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IREQUIREMENT__ANCHORS = IANNOTATION_FEATURE_COUNT + 9;
+
+	/**
+	 * The feature id for the '<em><b>Hyper Links</b></em>' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IREQUIREMENT__HYPER_LINKS = IANNOTATION_FEATURE_COUNT + 10;
+
+	/**
+	 * The feature id for the '<em><b>The Main Diagram</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IREQUIREMENT__THE_MAIN_DIAGRAM = IANNOTATION_FEATURE_COUNT + 11;
+
+	/**
+	 * The number of structural features of the '<em>IRequirement</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IREQUIREMENT_FEATURE_COUNT = IANNOTATION_FEATURE_COUNT + 12;
+
+	/**
+	 * The operation id for the '<em>Get EAnnotation</em>' operation.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IREQUIREMENT___GET_EANNOTATION__STRING = IANNOTATION___GET_EANNOTATION__STRING;
+
+	/**
+	 * The number of operations of the '<em>IRequirement</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IREQUIREMENT_OPERATION_COUNT = IANNOTATION_OPERATION_COUNT + 0;
+
+	/**
+	 * The meta object id for the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.ISendActionImpl <em>ISend Action</em>}' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.ISendActionImpl
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.UMLRpyPackageImpl#getISendAction()
+	 * @generated
+	 */
+	int ISEND_ACTION = 182;
+
+	/**
+	 * The feature id for the '<em><b>EAnnotations</b></em>' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ISEND_ACTION__EANNOTATIONS = IACTION__EANNOTATIONS;
+
+	/**
+	 * The feature id for the '<em><b>Display Name</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ISEND_ACTION__DISPLAY_NAME = IACTION__DISPLAY_NAME;
+
+	/**
+	 * The feature id for the '<em><b>Id</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ISEND_ACTION__ID = IACTION__ID;
+
+	/**
+	 * The feature id for the '<em><b>My State</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ISEND_ACTION__MY_STATE = IACTION__MY_STATE;
+
+	/**
+	 * The feature id for the '<em><b>Body</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ISEND_ACTION__BODY = IACTION__BODY;
+
+	/**
+	 * The feature id for the '<em><b>Modified Time Weak</b></em>' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ISEND_ACTION__MODIFIED_TIME_WEAK = IACTION__MODIFIED_TIME_WEAK;
+
+	/**
+	 * The feature id for the '<em><b>Object Creation</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ISEND_ACTION__OBJECT_CREATION = IACTION__OBJECT_CREATION;
+
+	/**
+	 * The feature id for the '<em><b>Uml Dependency ID</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ISEND_ACTION__UML_DEPENDENCY_ID = IACTION__UML_DEPENDENCY_ID;
+
+	/**
+	 * The feature id for the '<em><b>MhTarget</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ISEND_ACTION__MHTARGET = IACTION_FEATURE_COUNT + 0;
+
+	/**
+	 * The feature id for the '<em><b>MhEvent</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ISEND_ACTION__MHEVENT = IACTION_FEATURE_COUNT + 1;
+
+	/**
+	 * The feature id for the '<em><b>Arg Val Count</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ISEND_ACTION__ARG_VAL_COUNT = IACTION_FEATURE_COUNT + 2;
+
+	/**
+	 * The feature id for the '<em><b>Graph Elements</b></em>' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ISEND_ACTION__GRAPH_ELEMENTS = IACTION_FEATURE_COUNT + 3;
+
+	/**
+	 * The number of structural features of the '<em>ISend Action</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ISEND_ACTION_FEATURE_COUNT = IACTION_FEATURE_COUNT + 4;
+
+	/**
+	 * The operation id for the '<em>Get EAnnotation</em>' operation.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ISEND_ACTION___GET_EANNOTATION__STRING = IACTION___GET_EANNOTATION__STRING;
+
+	/**
+	 * The number of operations of the '<em>ISend Action</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ISEND_ACTION_OPERATION_COUNT = IACTION_OPERATION_COUNT + 0;
+
+	/**
+	 * The meta object id for the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.ISequenceDiagramImpl <em>ISequence Diagram</em>}' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.ISequenceDiagramImpl
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.UMLRpyPackageImpl#getISequenceDiagram()
+	 * @generated
+	 */
+	int ISEQUENCE_DIAGRAM = 183;
+
+	/**
+	 * The feature id for the '<em><b>EAnnotations</b></em>' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ISEQUENCE_DIAGRAM__EANNOTATIONS = IDIAGRAM__EANNOTATIONS;
+
+	/**
+	 * The feature id for the '<em><b>Display Name</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ISEQUENCE_DIAGRAM__DISPLAY_NAME = IDIAGRAM__DISPLAY_NAME;
+
+	/**
+	 * The feature id for the '<em><b>Id</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ISEQUENCE_DIAGRAM__ID = IDIAGRAM__ID;
+
+	/**
+	 * The feature id for the '<em><b>Last Modified Time</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ISEQUENCE_DIAGRAM__LAST_MODIFIED_TIME = IDIAGRAM__LAST_MODIFIED_TIME;
+
+	/**
+	 * The feature id for the '<em><b>Requiremen Tracability Handle</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ISEQUENCE_DIAGRAM__REQUIREMEN_TRACABILITY_HANDLE = IDIAGRAM__REQUIREMEN_TRACABILITY_HANDLE;
+
+	/**
+	 * The feature id for the '<em><b>Default Subsystem</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ISEQUENCE_DIAGRAM__DEFAULT_SUBSYSTEM = IDIAGRAM__DEFAULT_SUBSYSTEM;
+
+	/**
+	 * The feature id for the '<em><b>Description</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ISEQUENCE_DIAGRAM__DESCRIPTION = IDIAGRAM__DESCRIPTION;
+
+	/**
+	 * The feature id for the '<em><b>Uml Dependency ID</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ISEQUENCE_DIAGRAM__UML_DEPENDENCY_ID = IDIAGRAM__UML_DEPENDENCY_ID;
+
+	/**
+	 * The feature id for the '<em><b>Last ID</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ISEQUENCE_DIAGRAM__LAST_ID = IDIAGRAM__LAST_ID;
+
+	/**
+	 * The feature id for the '<em><b>My State</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ISEQUENCE_DIAGRAM__MY_STATE = IDIAGRAM__MY_STATE;
+
+	/**
+	 * The feature id for the '<em><b>Owner Handle</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ISEQUENCE_DIAGRAM__OWNER_HANDLE = IDIAGRAM__OWNER_HANDLE;
+
+	/**
+	 * The feature id for the '<em><b>Object Creation</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ISEQUENCE_DIAGRAM__OBJECT_CREATION = IDIAGRAM__OBJECT_CREATION;
+
+	/**
+	 * The feature id for the '<em><b>Name</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ISEQUENCE_DIAGRAM__NAME = IDIAGRAM__NAME;
+
+	/**
+	 * The feature id for the '<em><b>Cmheader</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ISEQUENCE_DIAGRAM__CMHEADER = IDIAGRAM__CMHEADER;
+
+	/**
+	 * The feature id for the '<em><b>Properties</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ISEQUENCE_DIAGRAM__PROPERTIES = IDIAGRAM__PROPERTIES;
+
+	/**
+	 * The feature id for the '<em><b>Stereotypes</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ISEQUENCE_DIAGRAM__STEREOTYPES = IDIAGRAM__STEREOTYPES;
+
+	/**
+	 * The feature id for the '<em><b>Modified Time Weak</b></em>' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ISEQUENCE_DIAGRAM__MODIFIED_TIME_WEAK = IDIAGRAM__MODIFIED_TIME_WEAK;
+
+	/**
+	 * The feature id for the '<em><b>Graphic Chart</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ISEQUENCE_DIAGRAM__GRAPHIC_CHART = IDIAGRAM__GRAPHIC_CHART;
+
+	/**
+	 * The feature id for the '<em><b>Annotations</b></em>' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ISEQUENCE_DIAGRAM__ANNOTATIONS = IDIAGRAM__ANNOTATIONS;
+
+	/**
+	 * The feature id for the '<em><b>Code Update CG Time</b></em>' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ISEQUENCE_DIAGRAM__CODE_UPDATE_CG_TIME = IDIAGRAM__CODE_UPDATE_CG_TIME;
+
+	/**
+	 * The feature id for the '<em><b>Hyper Links</b></em>' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ISEQUENCE_DIAGRAM__HYPER_LINKS = IDIAGRAM__HYPER_LINKS;
+
+	/**
+	 * The number of structural features of the '<em>ISequence Diagram</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ISEQUENCE_DIAGRAM_FEATURE_COUNT = IDIAGRAM_FEATURE_COUNT + 0;
+
+	/**
+	 * The operation id for the '<em>Get EAnnotation</em>' operation.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ISEQUENCE_DIAGRAM___GET_EANNOTATION__STRING = IDIAGRAM___GET_EANNOTATION__STRING;
+
+	/**
+	 * The number of operations of the '<em>ISequence Diagram</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ISEQUENCE_DIAGRAM_OPERATION_COUNT = IDIAGRAM_OPERATION_COUNT + 0;
+
+	/**
+	 * The meta object id for the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.ISlotImpl <em>ISlot</em>}' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.ISlotImpl
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.UMLRpyPackageImpl#getISlot()
+	 * @generated
+	 */
+	int ISLOT = 184;
+
+	/**
+	 * The feature id for the '<em><b>Id</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ISLOT__ID = 0;
+
+	/**
+	 * The feature id for the '<em><b>Name</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ISLOT__NAME = 1;
+
+	/**
+	 * The feature id for the '<em><b>Value</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ISLOT__VALUE = 2;
+
+	/**
+	 * The feature id for the '<em><b>Defining Var</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ISLOT__DEFINING_VAR = 3;
+
+	/**
+	 * The number of structural features of the '<em>ISlot</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ISLOT_FEATURE_COUNT = 4;
+
+	/**
+	 * The number of operations of the '<em>ISlot</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ISLOT_OPERATION_COUNT = 0;
+
+	/**
+	 * The meta object id for the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IStateChartImpl <em>IState Chart</em>}' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IStateChartImpl
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.UMLRpyPackageImpl#getIStateChart()
+	 * @generated
+	 */
+	int ISTATE_CHART = 186;
+
+	/**
+	 * The feature id for the '<em><b>EAnnotations</b></em>' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ISTATE_CHART__EANNOTATIONS = ICLASS__EANNOTATIONS;
+
+	/**
+	 * The feature id for the '<em><b>Display Name</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ISTATE_CHART__DISPLAY_NAME = ICLASS__DISPLAY_NAME;
+
+	/**
+	 * The feature id for the '<em><b>Uml Dependency ID</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ISTATE_CHART__UML_DEPENDENCY_ID = ICLASS__UML_DEPENDENCY_ID;
+
+	/**
+	 * The feature id for the '<em><b>Object Creation</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ISTATE_CHART__OBJECT_CREATION = ICLASS__OBJECT_CREATION;
+
+	/**
+	 * The feature id for the '<em><b>Modified Time Weak</b></em>' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ISTATE_CHART__MODIFIED_TIME_WEAK = ICLASS__MODIFIED_TIME_WEAK;
+
+	/**
+	 * The feature id for the '<em><b>Id</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ISTATE_CHART__ID = ICLASS__ID;
+
+	/**
+	 * The feature id for the '<em><b>My State</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ISTATE_CHART__MY_STATE = ICLASS__MY_STATE;
+
+	/**
+	 * The feature id for the '<em><b>Name</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ISTATE_CHART__NAME = ICLASS__NAME;
+
+	/**
+	 * The feature id for the '<em><b>Last ID</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ISTATE_CHART__LAST_ID = ICLASS__LAST_ID;
+
+	/**
+	 * The feature id for the '<em><b>Weak CG Time</b></em>' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ISTATE_CHART__WEAK_CG_TIME = ICLASS__WEAK_CG_TIME;
+
+	/**
+	 * The feature id for the '<em><b>Strong CG Time</b></em>' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ISTATE_CHART__STRONG_CG_TIME = ICLASS__STRONG_CG_TIME;
+
+	/**
+	 * The feature id for the '<em><b>Multiplicity</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ISTATE_CHART__MULTIPLICITY = ICLASS__MULTIPLICITY;
+
+	/**
+	 * The feature id for the '<em><b>Class Modifier</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ISTATE_CHART__CLASS_MODIFIER = ICLASS__CLASS_MODIFIER;
+
+	/**
+	 * The feature id for the '<em><b>Properties</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ISTATE_CHART__PROPERTIES = ICLASS__PROPERTIES;
+
+	/**
+	 * The feature id for the '<em><b>Stereotypes</b></em>' reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ISTATE_CHART__STEREOTYPES = ICLASS__STEREOTYPES;
+
+	/**
+	 * The feature id for the '<em><b>Operations</b></em>' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ISTATE_CHART__OPERATIONS = ICLASS__OPERATIONS;
+
+	/**
+	 * The feature id for the '<em><b>Inheritances</b></em>' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ISTATE_CHART__INHERITANCES = ICLASS__INHERITANCES;
+
+	/**
+	 * The feature id for the '<em><b>The Main Diagram</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ISTATE_CHART__THE_MAIN_DIAGRAM = ICLASS__THE_MAIN_DIAGRAM;
+
+	/**
+	 * The feature id for the '<em><b>Attrs</b></em>' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ISTATE_CHART__ATTRS = ICLASS__ATTRS;
+
+	/**
+	 * The feature id for the '<em><b>Tags</b></em>' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ISTATE_CHART__TAGS = ICLASS__TAGS;
+
+	/**
+	 * The feature id for the '<em><b>Associations</b></em>' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ISTATE_CHART__ASSOCIATIONS = ICLASS__ASSOCIATIONS;
+
+	/**
+	 * The feature id for the '<em><b>Dependencies</b></em>' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ISTATE_CHART__DEPENDENCIES = ICLASS__DEPENDENCIES;
+
+	/**
+	 * The feature id for the '<em><b>Ports</b></em>' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ISTATE_CHART__PORTS = ICLASS__PORTS;
+
+	/**
+	 * The feature id for the '<em><b>Object Links</b></em>' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ISTATE_CHART__OBJECT_LINKS = ICLASS__OBJECT_LINKS;
+
+	/**
+	 * The feature id for the '<em><b>State Charts</b></em>' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ISTATE_CHART__STATE_CHARTS = ICLASS__STATE_CHARTS;
+
+	/**
+	 * The feature id for the '<em><b>Its State Chart</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ISTATE_CHART__ITS_STATE_CHART = ICLASS__ITS_STATE_CHART;
+
+	/**
+	 * The feature id for the '<em><b>Triggered Operations</b></em>' reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ISTATE_CHART__TRIGGERED_OPERATIONS = ICLASS__TRIGGERED_OPERATIONS;
+
+	/**
+	 * The feature id for the '<em><b>Receptions</b></em>' reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ISTATE_CHART__RECEPTIONS = ICLASS__RECEPTIONS;
+
+	/**
+	 * The feature id for the '<em><b>Primitive Operations</b></em>' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ISTATE_CHART__PRIMITIVE_OPERATIONS = ICLASS__PRIMITIVE_OPERATIONS;
+
+	/**
+	 * The feature id for the '<em><b>Annotations</b></em>' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ISTATE_CHART__ANNOTATIONS = ICLASS__ANNOTATIONS;
+
+	/**
+	 * The feature id for the '<em><b>Description</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ISTATE_CHART__DESCRIPTION = ICLASS__DESCRIPTION;
+
+	/**
+	 * The feature id for the '<em><b>Declaratives</b></em>' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ISTATE_CHART__DECLARATIVES = ICLASS__DECLARATIVES;
+
+	/**
+	 * The feature id for the '<em><b>Association Elements</b></em>' reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ISTATE_CHART__ASSOCIATION_ELEMENTS = ICLASS__ASSOCIATION_ELEMENTS;
+
+	/**
+	 * The feature id for the '<em><b>Owner Handle</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ISTATE_CHART__OWNER_HANDLE = ICLASS__OWNER_HANDLE;
+
+	/**
+	 * The feature id for the '<em><b>Hyper Links</b></em>' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ISTATE_CHART__HYPER_LINKS = ICLASS__HYPER_LINKS;
+
+	/**
+	 * The feature id for the '<em><b>Requiremen Tracability Handle</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ISTATE_CHART__REQUIREMEN_TRACABILITY_HANDLE = ICLASS__REQUIREMEN_TRACABILITY_HANDLE;
+
+	/**
+	 * The feature id for the '<em><b>Component Files</b></em>' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ISTATE_CHART__COMPONENT_FILES = ICLASS__COMPONENT_FILES;
+
+	/**
+	 * The feature id for the '<em><b>Links</b></em>' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ISTATE_CHART__LINKS = ICLASS__LINKS;
+
+	/**
+	 * The feature id for the '<em><b>Components</b></em>' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ISTATE_CHART__COMPONENTS = ICLASS__COMPONENTS;
+
+	/**
+	 * The feature id for the '<em><b>Event Handles</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ISTATE_CHART__EVENT_HANDLES = ICLASS__EVENT_HANDLES;
+
+	/**
+	 * The feature id for the '<em><b>Template Parameters</b></em>' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ISTATE_CHART__TEMPLATE_PARAMETERS = ICLASS__TEMPLATE_PARAMETERS;
+
+	/**
+	 * The feature id for the '<em><b>Code Update CG Time</b></em>' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ISTATE_CHART__CODE_UPDATE_CG_TIME = ICLASS__CODE_UPDATE_CG_TIME;
+
+	/**
+	 * The feature id for the '<em><b>Cmheader</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ISTATE_CHART__CMHEADER = ICLASS__CMHEADER;
+
+	/**
+	 * The feature id for the '<em><b>Def Number</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ISTATE_CHART__DEF_NUMBER = ICLASS_FEATURE_COUNT + 0;
+
+	/**
+	 * The feature id for the '<em><b>Graphic Chart</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ISTATE_CHART__GRAPHIC_CHART = ICLASS_FEATURE_COUNT + 1;
+
+	/**
+	 * The feature id for the '<em><b>Last Modified Time</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ISTATE_CHART__LAST_MODIFIED_TIME = ICLASS_FEATURE_COUNT + 2;
+
+	/**
+	 * The feature id for the '<em><b>Transitions</b></em>' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ISTATE_CHART__TRANSITIONS = ICLASS_FEATURE_COUNT + 3;
+
+	/**
+	 * The feature id for the '<em><b>Connectors</b></em>' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ISTATE_CHART__CONNECTORS = ICLASS_FEATURE_COUNT + 4;
+
+	/**
+	 * The feature id for the '<em><b>Version</b></em>' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ISTATE_CHART__VERSION = ICLASS_FEATURE_COUNT + 5;
+
+	/**
+	 * The feature id for the '<em><b>States</b></em>' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ISTATE_CHART__STATES = ICLASS_FEATURE_COUNT + 6;
+
+	/**
+	 * The feature id for the '<em><b>Base Version</b></em>' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ISTATE_CHART__BASE_VERSION = ICLASS_FEATURE_COUNT + 7;
+
+	/**
+	 * The feature id for the '<em><b>Diagram</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ISTATE_CHART__DIAGRAM = ICLASS_FEATURE_COUNT + 8;
+
+	/**
+	 * The feature id for the '<em><b>Views</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ISTATE_CHART__VIEWS = ICLASS_FEATURE_COUNT + 9;
+
+	/**
+	 * The feature id for the '<em><b>Inherits From Handle</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ISTATE_CHART__INHERITS_FROM_HANDLE = ICLASS_FEATURE_COUNT + 10;
+
+	/**
+	 * The number of structural features of the '<em>IState Chart</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ISTATE_CHART_FEATURE_COUNT = ICLASS_FEATURE_COUNT + 11;
+
+	/**
+	 * The operation id for the '<em>Get EAnnotation</em>' operation.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ISTATE_CHART___GET_EANNOTATION__STRING = ICLASS___GET_EANNOTATION__STRING;
+
+	/**
+	 * The number of operations of the '<em>IState Chart</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ISTATE_CHART_OPERATION_COUNT = ICLASS_OPERATION_COUNT + 0;
+
+	/**
+	 * The meta object id for the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IStateChartDiagramImpl <em>IState Chart Diagram</em>}' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IStateChartDiagramImpl
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.UMLRpyPackageImpl#getIStateChartDiagram()
+	 * @generated
+	 */
+	int ISTATE_CHART_DIAGRAM = 187;
+
+	/**
+	 * The feature id for the '<em><b>EAnnotations</b></em>' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ISTATE_CHART_DIAGRAM__EANNOTATIONS = IDIAGRAM__EANNOTATIONS;
+
+	/**
+	 * The feature id for the '<em><b>Display Name</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ISTATE_CHART_DIAGRAM__DISPLAY_NAME = IDIAGRAM__DISPLAY_NAME;
+
+	/**
+	 * The feature id for the '<em><b>Id</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ISTATE_CHART_DIAGRAM__ID = IDIAGRAM__ID;
+
+	/**
+	 * The feature id for the '<em><b>Last Modified Time</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ISTATE_CHART_DIAGRAM__LAST_MODIFIED_TIME = IDIAGRAM__LAST_MODIFIED_TIME;
+
+	/**
+	 * The feature id for the '<em><b>Requiremen Tracability Handle</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ISTATE_CHART_DIAGRAM__REQUIREMEN_TRACABILITY_HANDLE = IDIAGRAM__REQUIREMEN_TRACABILITY_HANDLE;
+
+	/**
+	 * The feature id for the '<em><b>Default Subsystem</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ISTATE_CHART_DIAGRAM__DEFAULT_SUBSYSTEM = IDIAGRAM__DEFAULT_SUBSYSTEM;
+
+	/**
+	 * The feature id for the '<em><b>Description</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ISTATE_CHART_DIAGRAM__DESCRIPTION = IDIAGRAM__DESCRIPTION;
+
+	/**
+	 * The feature id for the '<em><b>Uml Dependency ID</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ISTATE_CHART_DIAGRAM__UML_DEPENDENCY_ID = IDIAGRAM__UML_DEPENDENCY_ID;
+
+	/**
+	 * The feature id for the '<em><b>Last ID</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ISTATE_CHART_DIAGRAM__LAST_ID = IDIAGRAM__LAST_ID;
+
+	/**
+	 * The feature id for the '<em><b>My State</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ISTATE_CHART_DIAGRAM__MY_STATE = IDIAGRAM__MY_STATE;
+
+	/**
+	 * The feature id for the '<em><b>Owner Handle</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ISTATE_CHART_DIAGRAM__OWNER_HANDLE = IDIAGRAM__OWNER_HANDLE;
+
+	/**
+	 * The feature id for the '<em><b>Object Creation</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ISTATE_CHART_DIAGRAM__OBJECT_CREATION = IDIAGRAM__OBJECT_CREATION;
+
+	/**
+	 * The feature id for the '<em><b>Name</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ISTATE_CHART_DIAGRAM__NAME = IDIAGRAM__NAME;
+
+	/**
+	 * The feature id for the '<em><b>Cmheader</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ISTATE_CHART_DIAGRAM__CMHEADER = IDIAGRAM__CMHEADER;
+
+	/**
+	 * The feature id for the '<em><b>Properties</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ISTATE_CHART_DIAGRAM__PROPERTIES = IDIAGRAM__PROPERTIES;
+
+	/**
+	 * The feature id for the '<em><b>Stereotypes</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ISTATE_CHART_DIAGRAM__STEREOTYPES = IDIAGRAM__STEREOTYPES;
+
+	/**
+	 * The feature id for the '<em><b>Modified Time Weak</b></em>' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ISTATE_CHART_DIAGRAM__MODIFIED_TIME_WEAK = IDIAGRAM__MODIFIED_TIME_WEAK;
+
+	/**
+	 * The feature id for the '<em><b>Graphic Chart</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ISTATE_CHART_DIAGRAM__GRAPHIC_CHART = IDIAGRAM__GRAPHIC_CHART;
+
+	/**
+	 * The feature id for the '<em><b>Annotations</b></em>' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ISTATE_CHART_DIAGRAM__ANNOTATIONS = IDIAGRAM__ANNOTATIONS;
+
+	/**
+	 * The feature id for the '<em><b>Code Update CG Time</b></em>' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ISTATE_CHART_DIAGRAM__CODE_UPDATE_CG_TIME = IDIAGRAM__CODE_UPDATE_CG_TIME;
+
+	/**
+	 * The feature id for the '<em><b>Hyper Links</b></em>' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ISTATE_CHART_DIAGRAM__HYPER_LINKS = IDIAGRAM__HYPER_LINKS;
+
+	/**
+	 * The number of structural features of the '<em>IState Chart Diagram</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ISTATE_CHART_DIAGRAM_FEATURE_COUNT = IDIAGRAM_FEATURE_COUNT + 0;
+
+	/**
+	 * The operation id for the '<em>Get EAnnotation</em>' operation.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ISTATE_CHART_DIAGRAM___GET_EANNOTATION__STRING = IDIAGRAM___GET_EANNOTATION__STRING;
+
+	/**
+	 * The number of operations of the '<em>IState Chart Diagram</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ISTATE_CHART_DIAGRAM_OPERATION_COUNT = IDIAGRAM_OPERATION_COUNT + 0;
+
+	/**
+	 * The meta object id for the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IStereotypeImpl <em>IStereotype</em>}' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IStereotypeImpl
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.UMLRpyPackageImpl#getIStereotype()
+	 * @generated
+	 */
+	int ISTEREOTYPE = 189;
+
+	/**
+	 * The feature id for the '<em><b>EAnnotations</b></em>' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ISTEREOTYPE__EANNOTATIONS = ICLASSIFIER__EANNOTATIONS;
+
+	/**
+	 * The feature id for the '<em><b>Display Name</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ISTEREOTYPE__DISPLAY_NAME = ICLASSIFIER__DISPLAY_NAME;
+
+	/**
+	 * The feature id for the '<em><b>Modified Time Weak</b></em>' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ISTEREOTYPE__MODIFIED_TIME_WEAK = ICLASSIFIER_FEATURE_COUNT + 0;
+
+	/**
+	 * The feature id for the '<em><b>Id</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ISTEREOTYPE__ID = ICLASSIFIER_FEATURE_COUNT + 1;
+
+	/**
+	 * The feature id for the '<em><b>My State</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ISTEREOTYPE__MY_STATE = ICLASSIFIER_FEATURE_COUNT + 2;
+
+	/**
+	 * The feature id for the '<em><b>Name</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ISTEREOTYPE__NAME = ICLASSIFIER_FEATURE_COUNT + 3;
+
+	/**
+	 * The feature id for the '<em><b>Properties</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ISTEREOTYPE__PROPERTIES = ICLASSIFIER_FEATURE_COUNT + 4;
+
+	/**
+	 * The feature id for the '<em><b>M2 Classes</b></em>' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ISTEREOTYPE__M2_CLASSES = ICLASSIFIER_FEATURE_COUNT + 5;
+
+	/**
+	 * The feature id for the '<em><b>New Term</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ISTEREOTYPE__NEW_TERM = ICLASSIFIER_FEATURE_COUNT + 6;
+
+	/**
+	 * The feature id for the '<em><b>Description</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ISTEREOTYPE__DESCRIPTION = ICLASSIFIER_FEATURE_COUNT + 7;
+
+	/**
+	 * The feature id for the '<em><b>Tags</b></em>' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ISTEREOTYPE__TAGS = ICLASSIFIER_FEATURE_COUNT + 8;
+
+	/**
+	 * The feature id for the '<em><b>Last ID</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ISTEREOTYPE__LAST_ID = ICLASSIFIER_FEATURE_COUNT + 9;
+
+	/**
+	 * The feature id for the '<em><b>Inheritances</b></em>' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ISTEREOTYPE__INHERITANCES = ICLASSIFIER_FEATURE_COUNT + 10;
+
+	/**
+	 * The feature id for the '<em><b>Dependencies</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ISTEREOTYPE__DEPENDENCIES = ICLASSIFIER_FEATURE_COUNT + 11;
+
+	/**
+	 * The feature id for the '<em><b>Requiremen Tracability Handle</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ISTEREOTYPE__REQUIREMEN_TRACABILITY_HANDLE = ICLASSIFIER_FEATURE_COUNT + 12;
+
+	/**
+	 * The feature id for the '<em><b>Object Creation</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ISTEREOTYPE__OBJECT_CREATION = ICLASSIFIER_FEATURE_COUNT + 13;
+
+	/**
+	 * The feature id for the '<em><b>Uml Dependency ID</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ISTEREOTYPE__UML_DEPENDENCY_ID = ICLASSIFIER_FEATURE_COUNT + 14;
+
+	/**
+	 * The feature id for the '<em><b>The Main Diagram</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ISTEREOTYPE__THE_MAIN_DIAGRAM = ICLASSIFIER_FEATURE_COUNT + 15;
+
+	/**
+	 * The feature id for the '<em><b>Annotations</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ISTEREOTYPE__ANNOTATIONS = ICLASSIFIER_FEATURE_COUNT + 16;
+
+	/**
+	 * The number of structural features of the '<em>IStereotype</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ISTEREOTYPE_FEATURE_COUNT = ICLASSIFIER_FEATURE_COUNT + 17;
+
+	/**
+	 * The operation id for the '<em>Get EAnnotation</em>' operation.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ISTEREOTYPE___GET_EANNOTATION__STRING = ICLASSIFIER___GET_EANNOTATION__STRING;
+
+	/**
+	 * The number of operations of the '<em>IStereotype</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ISTEREOTYPE_OPERATION_COUNT = ICLASSIFIER_OPERATION_COUNT + 0;
+
+	/**
+	 * The meta object id for the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IStructureDiagramImpl <em>IStructure Diagram</em>}' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IStructureDiagramImpl
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.UMLRpyPackageImpl#getIStructureDiagram()
+	 * @generated
+	 */
+	int ISTRUCTURE_DIAGRAM = 190;
+
+	/**
+	 * The feature id for the '<em><b>EAnnotations</b></em>' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ISTRUCTURE_DIAGRAM__EANNOTATIONS = IDIAGRAM__EANNOTATIONS;
+
+	/**
+	 * The feature id for the '<em><b>Display Name</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ISTRUCTURE_DIAGRAM__DISPLAY_NAME = IDIAGRAM__DISPLAY_NAME;
+
+	/**
+	 * The feature id for the '<em><b>Id</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ISTRUCTURE_DIAGRAM__ID = IDIAGRAM__ID;
+
+	/**
+	 * The feature id for the '<em><b>Last Modified Time</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ISTRUCTURE_DIAGRAM__LAST_MODIFIED_TIME = IDIAGRAM__LAST_MODIFIED_TIME;
+
+	/**
+	 * The feature id for the '<em><b>Requiremen Tracability Handle</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ISTRUCTURE_DIAGRAM__REQUIREMEN_TRACABILITY_HANDLE = IDIAGRAM__REQUIREMEN_TRACABILITY_HANDLE;
+
+	/**
+	 * The feature id for the '<em><b>Default Subsystem</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ISTRUCTURE_DIAGRAM__DEFAULT_SUBSYSTEM = IDIAGRAM__DEFAULT_SUBSYSTEM;
+
+	/**
+	 * The feature id for the '<em><b>Description</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ISTRUCTURE_DIAGRAM__DESCRIPTION = IDIAGRAM__DESCRIPTION;
+
+	/**
+	 * The feature id for the '<em><b>Uml Dependency ID</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ISTRUCTURE_DIAGRAM__UML_DEPENDENCY_ID = IDIAGRAM__UML_DEPENDENCY_ID;
+
+	/**
+	 * The feature id for the '<em><b>Last ID</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ISTRUCTURE_DIAGRAM__LAST_ID = IDIAGRAM__LAST_ID;
+
+	/**
+	 * The feature id for the '<em><b>My State</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ISTRUCTURE_DIAGRAM__MY_STATE = IDIAGRAM__MY_STATE;
+
+	/**
+	 * The feature id for the '<em><b>Owner Handle</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ISTRUCTURE_DIAGRAM__OWNER_HANDLE = IDIAGRAM__OWNER_HANDLE;
+
+	/**
+	 * The feature id for the '<em><b>Object Creation</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ISTRUCTURE_DIAGRAM__OBJECT_CREATION = IDIAGRAM__OBJECT_CREATION;
+
+	/**
+	 * The feature id for the '<em><b>Name</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ISTRUCTURE_DIAGRAM__NAME = IDIAGRAM__NAME;
+
+	/**
+	 * The feature id for the '<em><b>Cmheader</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ISTRUCTURE_DIAGRAM__CMHEADER = IDIAGRAM__CMHEADER;
+
+	/**
+	 * The feature id for the '<em><b>Properties</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ISTRUCTURE_DIAGRAM__PROPERTIES = IDIAGRAM__PROPERTIES;
+
+	/**
+	 * The feature id for the '<em><b>Stereotypes</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ISTRUCTURE_DIAGRAM__STEREOTYPES = IDIAGRAM__STEREOTYPES;
+
+	/**
+	 * The feature id for the '<em><b>Modified Time Weak</b></em>' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ISTRUCTURE_DIAGRAM__MODIFIED_TIME_WEAK = IDIAGRAM__MODIFIED_TIME_WEAK;
+
+	/**
+	 * The feature id for the '<em><b>Graphic Chart</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ISTRUCTURE_DIAGRAM__GRAPHIC_CHART = IDIAGRAM__GRAPHIC_CHART;
+
+	/**
+	 * The feature id for the '<em><b>Annotations</b></em>' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ISTRUCTURE_DIAGRAM__ANNOTATIONS = IDIAGRAM__ANNOTATIONS;
+
+	/**
+	 * The feature id for the '<em><b>Code Update CG Time</b></em>' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ISTRUCTURE_DIAGRAM__CODE_UPDATE_CG_TIME = IDIAGRAM__CODE_UPDATE_CG_TIME;
+
+	/**
+	 * The feature id for the '<em><b>Hyper Links</b></em>' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ISTRUCTURE_DIAGRAM__HYPER_LINKS = IDIAGRAM__HYPER_LINKS;
+
+	/**
+	 * The number of structural features of the '<em>IStructure Diagram</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ISTRUCTURE_DIAGRAM_FEATURE_COUNT = IDIAGRAM_FEATURE_COUNT + 0;
+
+	/**
+	 * The operation id for the '<em>Get EAnnotation</em>' operation.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ISTRUCTURE_DIAGRAM___GET_EANNOTATION__STRING = IDIAGRAM___GET_EANNOTATION__STRING;
+
+	/**
+	 * The number of operations of the '<em>IStructure Diagram</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ISTRUCTURE_DIAGRAM_OPERATION_COUNT = IDIAGRAM_OPERATION_COUNT + 0;
+
+	/**
+	 * The meta object id for the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.OwnerHandleTypeImpl <em>Owner Handle Type</em>}' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.OwnerHandleTypeImpl
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.UMLRpyPackageImpl#getOwnerHandleType()
+	 * @generated
+	 */
+	int OWNER_HANDLE_TYPE = 233;
+
+	/**
+	 * The feature id for the '<em><b>EAnnotations</b></em>' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int OWNER_HANDLE_TYPE__EANNOTATIONS = DEFAULT_SUBSYSTEM_TYPE__EANNOTATIONS;
+
+	/**
+	 * The feature id for the '<em><b>Display Name</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int OWNER_HANDLE_TYPE__DISPLAY_NAME = DEFAULT_SUBSYSTEM_TYPE__DISPLAY_NAME;
+
+	/**
+	 * The feature id for the '<em><b>Weak CG Time</b></em>' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int OWNER_HANDLE_TYPE__WEAK_CG_TIME = DEFAULT_SUBSYSTEM_TYPE_FEATURE_COUNT + 0;
+
+	/**
+	 * The feature id for the '<em><b>Strong CG Time</b></em>' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int OWNER_HANDLE_TYPE__STRONG_CG_TIME = DEFAULT_SUBSYSTEM_TYPE_FEATURE_COUNT + 1;
+
+	/**
+	 * The number of structural features of the '<em>Owner Handle Type</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int OWNER_HANDLE_TYPE_FEATURE_COUNT = DEFAULT_SUBSYSTEM_TYPE_FEATURE_COUNT + 2;
+
+	/**
+	 * The operation id for the '<em>Get EAnnotation</em>' operation.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int OWNER_HANDLE_TYPE___GET_EANNOTATION__STRING = DEFAULT_SUBSYSTEM_TYPE___GET_EANNOTATION__STRING;
+
+	/**
+	 * The number of operations of the '<em>Owner Handle Type</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int OWNER_HANDLE_TYPE_OPERATION_COUNT = DEFAULT_SUBSYSTEM_TYPE_OPERATION_COUNT + 0;
+
+	/**
+	 * The meta object id for the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.ISubsystemImpl <em>ISubsystem</em>}' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.ISubsystemImpl
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.UMLRpyPackageImpl#getISubsystem()
+	 * @generated
+	 */
+	int ISUBSYSTEM = 191;
+
+	/**
+	 * The feature id for the '<em><b>EAnnotations</b></em>' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ISUBSYSTEM__EANNOTATIONS = OWNER_HANDLE_TYPE__EANNOTATIONS;
+
+	/**
+	 * The feature id for the '<em><b>Display Name</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ISUBSYSTEM__DISPLAY_NAME = OWNER_HANDLE_TYPE__DISPLAY_NAME;
+
+	/**
+	 * The feature id for the '<em><b>Weak CG Time</b></em>' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ISUBSYSTEM__WEAK_CG_TIME = OWNER_HANDLE_TYPE__WEAK_CG_TIME;
+
+	/**
+	 * The feature id for the '<em><b>Strong CG Time</b></em>' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ISUBSYSTEM__STRONG_CG_TIME = OWNER_HANDLE_TYPE__STRONG_CG_TIME;
+
+	/**
+	 * The feature id for the '<em><b>Id</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ISUBSYSTEM__ID = OWNER_HANDLE_TYPE_FEATURE_COUNT + 0;
+
+	/**
+	 * The feature id for the '<em><b>My State</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ISUBSYSTEM__MY_STATE = OWNER_HANDLE_TYPE_FEATURE_COUNT + 1;
+
+	/**
+	 * The feature id for the '<em><b>Name</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ISUBSYSTEM__NAME = OWNER_HANDLE_TYPE_FEATURE_COUNT + 2;
+
+	/**
+	 * The feature id for the '<em><b>Modified Time Weak</b></em>' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ISUBSYSTEM__MODIFIED_TIME_WEAK = OWNER_HANDLE_TYPE_FEATURE_COUNT + 3;
+
+	/**
+	 * The feature id for the '<em><b>Default Composite</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ISUBSYSTEM__DEFAULT_COMPOSITE = OWNER_HANDLE_TYPE_FEATURE_COUNT + 4;
+
+	/**
+	 * The feature id for the '<em><b>Events Base ID</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ISUBSYSTEM__EVENTS_BASE_ID = OWNER_HANDLE_TYPE_FEATURE_COUNT + 5;
+
+	/**
+	 * The feature id for the '<em><b>Classes</b></em>' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ISUBSYSTEM__CLASSES = OWNER_HANDLE_TYPE_FEATURE_COUNT + 6;
+
+	/**
+	 * The feature id for the '<em><b>Configuration Related Time</b></em>' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ISUBSYSTEM__CONFIGURATION_RELATED_TIME = OWNER_HANDLE_TYPE_FEATURE_COUNT + 7;
+
+	/**
+	 * The feature id for the '<em><b>Properties</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ISUBSYSTEM__PROPERTIES = OWNER_HANDLE_TYPE_FEATURE_COUNT + 8;
+
+	/**
+	 * The feature id for the '<em><b>Last ID</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ISUBSYSTEM__LAST_ID = OWNER_HANDLE_TYPE_FEATURE_COUNT + 9;
+
+	/**
+	 * The feature id for the '<em><b>Cmheader</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ISUBSYSTEM__CMHEADER = OWNER_HANDLE_TYPE_FEATURE_COUNT + 10;
+
+	/**
+	 * The feature id for the '<em><b>Declaratives</b></em>' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ISUBSYSTEM__DECLARATIVES = OWNER_HANDLE_TYPE_FEATURE_COUNT + 11;
+
+	/**
+	 * The feature id for the '<em><b>Types</b></em>' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ISUBSYSTEM__TYPES = OWNER_HANDLE_TYPE_FEATURE_COUNT + 12;
+
+	/**
+	 * The feature id for the '<em><b>Stereotypes</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ISUBSYSTEM__STEREOTYPES = OWNER_HANDLE_TYPE_FEATURE_COUNT + 13;
+
+	/**
+	 * The feature id for the '<em><b>Predefined Types</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ISUBSYSTEM__PREDEFINED_TYPES = OWNER_HANDLE_TYPE_FEATURE_COUNT + 14;
+
+	/**
+	 * The feature id for the '<em><b>Events</b></em>' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ISUBSYSTEM__EVENTS = OWNER_HANDLE_TYPE_FEATURE_COUNT + 15;
+
+	/**
+	 * The feature id for the '<em><b>Annotations</b></em>' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ISUBSYSTEM__ANNOTATIONS = OWNER_HANDLE_TYPE_FEATURE_COUNT + 16;
+
+	/**
+	 * The feature id for the '<em><b>Use Cases</b></em>' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ISUBSYSTEM__USE_CASES = OWNER_HANDLE_TYPE_FEATURE_COUNT + 17;
+
+	/**
+	 * The feature id for the '<em><b>Actors</b></em>' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ISUBSYSTEM__ACTORS = OWNER_HANDLE_TYPE_FEATURE_COUNT + 18;
+
+	/**
+	 * The feature id for the '<em><b>Description</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ISUBSYSTEM__DESCRIPTION = OWNER_HANDLE_TYPE_FEATURE_COUNT + 19;
+
+	/**
+	 * The feature id for the '<em><b>Tags</b></em>' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ISUBSYSTEM__TAGS = OWNER_HANDLE_TYPE_FEATURE_COUNT + 20;
+
+	/**
+	 * The feature id for the '<em><b>Dependencies</b></em>' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ISUBSYSTEM__DEPENDENCIES = OWNER_HANDLE_TYPE_FEATURE_COUNT + 21;
+
+	/**
+	 * The feature id for the '<em><b>Owner Handle</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ISUBSYSTEM__OWNER_HANDLE = OWNER_HANDLE_TYPE_FEATURE_COUNT + 22;
+
+	/**
+	 * The feature id for the '<em><b>The Main Diagram</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ISUBSYSTEM__THE_MAIN_DIAGRAM = OWNER_HANDLE_TYPE_FEATURE_COUNT + 23;
+
+	/**
+	 * The feature id for the '<em><b>Hyper Links</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ISUBSYSTEM__HYPER_LINKS = OWNER_HANDLE_TYPE_FEATURE_COUNT + 24;
+
+	/**
+	 * The feature id for the '<em><b>Table Layouts</b></em>' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ISUBSYSTEM__TABLE_LAYOUTS = OWNER_HANDLE_TYPE_FEATURE_COUNT + 25;
+
+	/**
+	 * The feature id for the '<em><b>Matrix Layouts</b></em>' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ISUBSYSTEM__MATRIX_LAYOUTS = OWNER_HANDLE_TYPE_FEATURE_COUNT + 26;
+
+	/**
+	 * The feature id for the '<em><b>Table Instances</b></em>' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ISUBSYSTEM__TABLE_INSTANCES = OWNER_HANDLE_TYPE_FEATURE_COUNT + 27;
+
+	/**
+	 * The feature id for the '<em><b>Matrix Instances</b></em>' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ISUBSYSTEM__MATRIX_INSTANCES = OWNER_HANDLE_TYPE_FEATURE_COUNT + 28;
+
+	/**
+	 * The feature id for the '<em><b>Embeded Files</b></em>' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ISUBSYSTEM__EMBEDED_FILES = OWNER_HANDLE_TYPE_FEATURE_COUNT + 29;
+
+	/**
+	 * The feature id for the '<em><b>Component Files</b></em>' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ISUBSYSTEM__COMPONENT_FILES = OWNER_HANDLE_TYPE_FEATURE_COUNT + 30;
+
+	/**
+	 * The feature id for the '<em><b>Requiremen Tracability Handle</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ISUBSYSTEM__REQUIREMEN_TRACABILITY_HANDLE = OWNER_HANDLE_TYPE_FEATURE_COUNT + 31;
+
+	/**
+	 * The feature id for the '<em><b>Code Update CG Time</b></em>' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ISUBSYSTEM__CODE_UPDATE_CG_TIME = OWNER_HANDLE_TYPE_FEATURE_COUNT + 32;
+
+	/**
+	 * The feature id for the '<em><b>Object Creation</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ISUBSYSTEM__OBJECT_CREATION = OWNER_HANDLE_TYPE_FEATURE_COUNT + 33;
+
+	/**
+	 * The feature id for the '<em><b>Uml Dependency ID</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ISUBSYSTEM__UML_DEPENDENCY_ID = OWNER_HANDLE_TYPE_FEATURE_COUNT + 34;
+
+	/**
+	 * The feature id for the '<em><b>Association Elements</b></em>' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ISUBSYSTEM__ASSOCIATION_ELEMENTS = OWNER_HANDLE_TYPE_FEATURE_COUNT + 35;
+
+	/**
+	 * The number of structural features of the '<em>ISubsystem</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ISUBSYSTEM_FEATURE_COUNT = OWNER_HANDLE_TYPE_FEATURE_COUNT + 36;
+
+	/**
+	 * The operation id for the '<em>Get EAnnotation</em>' operation.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ISUBSYSTEM___GET_EANNOTATION__STRING = OWNER_HANDLE_TYPE___GET_EANNOTATION__STRING;
+
+	/**
+	 * The number of operations of the '<em>ISubsystem</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ISUBSYSTEM_OPERATION_COUNT = OWNER_HANDLE_TYPE_OPERATION_COUNT + 0;
+
+	/**
+	 * The meta object id for the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.ISwimlaneImpl <em>ISwimlane</em>}' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.ISwimlaneImpl
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.UMLRpyPackageImpl#getISwimlane()
+	 * @generated
+	 */
+	int ISWIMLANE = 192;
+
+	/**
+	 * The feature id for the '<em><b>EAnnotations</b></em>' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ISWIMLANE__EANNOTATIONS = IMODEL_ELEMENT__EANNOTATIONS;
+
+	/**
+	 * The feature id for the '<em><b>Display Name</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ISWIMLANE__DISPLAY_NAME = IMODEL_ELEMENT__DISPLAY_NAME;
+
+	/**
+	 * The feature id for the '<em><b>Id</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ISWIMLANE__ID = IMODEL_ELEMENT_FEATURE_COUNT + 0;
+
+	/**
+	 * The feature id for the '<em><b>Name</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ISWIMLANE__NAME = IMODEL_ELEMENT_FEATURE_COUNT + 1;
+
+	/**
+	 * The feature id for the '<em><b>Modified Time Weak</b></em>' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ISWIMLANE__MODIFIED_TIME_WEAK = IMODEL_ELEMENT_FEATURE_COUNT + 2;
+
+	/**
+	 * The feature id for the '<em><b>Description</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ISWIMLANE__DESCRIPTION = IMODEL_ELEMENT_FEATURE_COUNT + 3;
+
+	/**
+	 * The feature id for the '<em><b>Represents</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ISWIMLANE__REPRESENTS = IMODEL_ELEMENT_FEATURE_COUNT + 4;
+
+	/**
+	 * The feature id for the '<em><b>My State</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ISWIMLANE__MY_STATE = IMODEL_ELEMENT_FEATURE_COUNT + 5;
+
+	/**
+	 * The feature id for the '<em><b>Object Creation</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ISWIMLANE__OBJECT_CREATION = IMODEL_ELEMENT_FEATURE_COUNT + 6;
+
+	/**
+	 * The feature id for the '<em><b>Uml Dependency ID</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ISWIMLANE__UML_DEPENDENCY_ID = IMODEL_ELEMENT_FEATURE_COUNT + 7;
+
+	/**
+	 * The feature id for the '<em><b>Swimlanes</b></em>' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ISWIMLANE__SWIMLANES = IMODEL_ELEMENT_FEATURE_COUNT + 8;
+
+	/**
+	 * The feature id for the '<em><b>Stereotypes</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ISWIMLANE__STEREOTYPES = IMODEL_ELEMENT_FEATURE_COUNT + 9;
+
+	/**
+	 * The number of structural features of the '<em>ISwimlane</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ISWIMLANE_FEATURE_COUNT = IMODEL_ELEMENT_FEATURE_COUNT + 10;
+
+	/**
+	 * The operation id for the '<em>Get EAnnotation</em>' operation.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ISWIMLANE___GET_EANNOTATION__STRING = IMODEL_ELEMENT___GET_EANNOTATION__STRING;
+
+	/**
+	 * The number of operations of the '<em>ISwimlane</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ISWIMLANE_OPERATION_COUNT = IMODEL_ELEMENT_OPERATION_COUNT + 0;
+
+	/**
+	 * The meta object id for the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.ISysMLPortImpl <em>ISys ML Port</em>}' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.ISysMLPortImpl
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.UMLRpyPackageImpl#getISysMLPort()
+	 * @generated
+	 */
+	int ISYS_ML_PORT = 193;
+
+	/**
+	 * The feature id for the '<em><b>EAnnotations</b></em>' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ISYS_ML_PORT__EANNOTATIONS = IINSTANCE__EANNOTATIONS;
+
+	/**
+	 * The feature id for the '<em><b>Display Name</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ISYS_ML_PORT__DISPLAY_NAME = IINSTANCE__DISPLAY_NAME;
+
+	/**
+	 * The feature id for the '<em><b>Modified Time Weak</b></em>' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ISYS_ML_PORT__MODIFIED_TIME_WEAK = IINSTANCE__MODIFIED_TIME_WEAK;
+
+	/**
+	 * The feature id for the '<em><b>Id</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ISYS_ML_PORT__ID = IINSTANCE__ID;
+
+	/**
+	 * The feature id for the '<em><b>Inverse</b></em>' reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ISYS_ML_PORT__INVERSE = IINSTANCE__INVERSE;
+
+	/**
+	 * The feature id for the '<em><b>My State</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ISYS_ML_PORT__MY_STATE = IINSTANCE__MY_STATE;
+
+	/**
+	 * The feature id for the '<em><b>Name</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ISYS_ML_PORT__NAME = IINSTANCE__NAME;
+
+	/**
+	 * The feature id for the '<em><b>Implicit Class</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ISYS_ML_PORT__IMPLICIT_CLASS = IINSTANCE_FEATURE_COUNT + 0;
+
+	/**
+	 * The feature id for the '<em><b>Multiplicity</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ISYS_ML_PORT__MULTIPLICITY = IINSTANCE_FEATURE_COUNT + 1;
+
+	/**
+	 * The feature id for the '<em><b>Dependencies</b></em>' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ISYS_ML_PORT__DEPENDENCIES = IINSTANCE_FEATURE_COUNT + 2;
+
+	/**
+	 * The feature id for the '<em><b>Stereotypes</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ISYS_ML_PORT__STEREOTYPES = IINSTANCE_FEATURE_COUNT + 3;
+
+	/**
+	 * The feature id for the '<em><b>Tags</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ISYS_ML_PORT__TAGS = IINSTANCE_FEATURE_COUNT + 4;
+
+	/**
+	 * The feature id for the '<em><b>Other Class</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ISYS_ML_PORT__OTHER_CLASS = IINSTANCE_FEATURE_COUNT + 5;
+
+	/**
+	 * The feature id for the '<em><b>Direction</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ISYS_ML_PORT__DIRECTION = IINSTANCE_FEATURE_COUNT + 6;
+
+	/**
+	 * The feature id for the '<em><b>Description</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ISYS_ML_PORT__DESCRIPTION = IINSTANCE_FEATURE_COUNT + 7;
+
+	/**
+	 * The feature id for the '<em><b>Last ID</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ISYS_ML_PORT__LAST_ID = IINSTANCE_FEATURE_COUNT + 8;
+
+	/**
+	 * The feature id for the '<em><b>Reversed</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ISYS_ML_PORT__REVERSED = IINSTANCE_FEATURE_COUNT + 9;
+
+	/**
+	 * The number of structural features of the '<em>ISys ML Port</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ISYS_ML_PORT_FEATURE_COUNT = IINSTANCE_FEATURE_COUNT + 10;
+
+	/**
+	 * The operation id for the '<em>Get EAnnotation</em>' operation.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ISYS_ML_PORT___GET_EANNOTATION__STRING = IINSTANCE___GET_EANNOTATION__STRING;
+
+	/**
+	 * The number of operations of the '<em>ISys ML Port</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ISYS_ML_PORT_OPERATION_COUNT = IINSTANCE_OPERATION_COUNT + 0;
+
+	/**
+	 * The meta object id for the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.TableInstancesTypeImpl <em>Table Instances Type</em>}' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.TableInstancesTypeImpl
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.UMLRpyPackageImpl#getTableInstancesType()
+	 * @generated
+	 */
+	int TABLE_INSTANCES_TYPE = 238;
+
+	/**
+	 * The number of structural features of the '<em>Table Instances Type</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int TABLE_INSTANCES_TYPE_FEATURE_COUNT = 0;
+
+	/**
+	 * The number of operations of the '<em>Table Instances Type</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int TABLE_INSTANCES_TYPE_OPERATION_COUNT = 0;
+
+	/**
+	 * The meta object id for the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.ITableInstanceImpl <em>ITable Instance</em>}' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.ITableInstanceImpl
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.UMLRpyPackageImpl#getITableInstance()
+	 * @generated
+	 */
+	int ITABLE_INSTANCE = 194;
+
+	/**
+	 * The feature id for the '<em><b>Id</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ITABLE_INSTANCE__ID = TABLE_INSTANCES_TYPE_FEATURE_COUNT + 0;
+
+	/**
+	 * The feature id for the '<em><b>My State</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ITABLE_INSTANCE__MY_STATE = TABLE_INSTANCES_TYPE_FEATURE_COUNT + 1;
+
+	/**
+	 * The feature id for the '<em><b>Properties</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ITABLE_INSTANCE__PROPERTIES = TABLE_INSTANCES_TYPE_FEATURE_COUNT + 2;
+
+	/**
+	 * The feature id for the '<em><b>Name</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ITABLE_INSTANCE__NAME = TABLE_INSTANCES_TYPE_FEATURE_COUNT + 3;
+
+	/**
+	 * The feature id for the '<em><b>Modified Time Weak</b></em>' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ITABLE_INSTANCE__MODIFIED_TIME_WEAK = TABLE_INSTANCES_TYPE_FEATURE_COUNT + 4;
+
+	/**
+	 * The feature id for the '<em><b>Layout Handle</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ITABLE_INSTANCE__LAYOUT_HANDLE = TABLE_INSTANCES_TYPE_FEATURE_COUNT + 5;
+
+	/**
+	 * The feature id for the '<em><b>Scope Handles</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ITABLE_INSTANCE__SCOPE_HANDLES = TABLE_INSTANCES_TYPE_FEATURE_COUNT + 6;
+
+	/**
+	 * The feature id for the '<em><b>Stereotypes</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ITABLE_INSTANCE__STEREOTYPES = TABLE_INSTANCES_TYPE_FEATURE_COUNT + 7;
+
+	/**
+	 * The number of structural features of the '<em>ITable Instance</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ITABLE_INSTANCE_FEATURE_COUNT = TABLE_INSTANCES_TYPE_FEATURE_COUNT + 8;
+
+	/**
+	 * The number of operations of the '<em>ITable Instance</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ITABLE_INSTANCE_OPERATION_COUNT = TABLE_INSTANCES_TYPE_OPERATION_COUNT + 0;
+
+	/**
+	 * The meta object id for the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.ITableLayoutImpl <em>ITable Layout</em>}' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.ITableLayoutImpl
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.UMLRpyPackageImpl#getITableLayout()
+	 * @generated
+	 */
+	int ITABLE_LAYOUT = 195;
+
+	/**
+	 * The feature id for the '<em><b>EAnnotations</b></em>' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ITABLE_LAYOUT__EANNOTATIONS = IUNIT__EANNOTATIONS;
+
+	/**
+	 * The feature id for the '<em><b>Display Name</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ITABLE_LAYOUT__DISPLAY_NAME = IUNIT__DISPLAY_NAME;
+
+	/**
+	 * The feature id for the '<em><b>Modified Time Weak</b></em>' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ITABLE_LAYOUT__MODIFIED_TIME_WEAK = IUNIT_FEATURE_COUNT + 0;
+
+	/**
+	 * The feature id for the '<em><b>Id</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ITABLE_LAYOUT__ID = IUNIT_FEATURE_COUNT + 1;
+
+	/**
+	 * The feature id for the '<em><b>My State</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ITABLE_LAYOUT__MY_STATE = IUNIT_FEATURE_COUNT + 2;
+
+	/**
+	 * The feature id for the '<em><b>Name</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ITABLE_LAYOUT__NAME = IUNIT_FEATURE_COUNT + 3;
+
+	/**
+	 * The feature id for the '<em><b>Properties</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ITABLE_LAYOUT__PROPERTIES = IUNIT_FEATURE_COUNT + 4;
+
+	/**
+	 * The feature id for the '<em><b>Stereotypes</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ITABLE_LAYOUT__STEREOTYPES = IUNIT_FEATURE_COUNT + 5;
+
+	/**
+	 * The feature id for the '<em><b>Tags</b></em>' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ITABLE_LAYOUT__TAGS = IUNIT_FEATURE_COUNT + 6;
+
+	/**
+	 * The feature id for the '<em><b>Table Element Types</b></em>' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ITABLE_LAYOUT__TABLE_ELEMENT_TYPES = IUNIT_FEATURE_COUNT + 7;
+
+	/**
+	 * The feature id for the '<em><b>Data Columns</b></em>' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ITABLE_LAYOUT__DATA_COLUMNS = IUNIT_FEATURE_COUNT + 8;
+
+	/**
+	 * The feature id for the '<em><b>Description</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ITABLE_LAYOUT__DESCRIPTION = IUNIT_FEATURE_COUNT + 9;
+
+	/**
+	 * The number of structural features of the '<em>ITable Layout</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ITABLE_LAYOUT_FEATURE_COUNT = IUNIT_FEATURE_COUNT + 10;
+
+	/**
+	 * The operation id for the '<em>Get EAnnotation</em>' operation.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ITABLE_LAYOUT___GET_EANNOTATION__STRING = IUNIT___GET_EANNOTATION__STRING;
+
+	/**
+	 * The number of operations of the '<em>ITable Layout</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ITABLE_LAYOUT_OPERATION_COUNT = IUNIT_OPERATION_COUNT + 0;
+
+	/**
+	 * The meta object id for the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.ITableViewImpl <em>ITable View</em>}' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.ITableViewImpl
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.UMLRpyPackageImpl#getITableView()
+	 * @generated
+	 */
+	int ITABLE_VIEW = 196;
+
+	/**
+	 * The feature id for the '<em><b>EAnnotations</b></em>' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ITABLE_VIEW__EANNOTATIONS = IUNIT__EANNOTATIONS;
+
+	/**
+	 * The feature id for the '<em><b>Display Name</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ITABLE_VIEW__DISPLAY_NAME = IUNIT__DISPLAY_NAME;
+
+	/**
+	 * The number of structural features of the '<em>ITable View</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ITABLE_VIEW_FEATURE_COUNT = IUNIT_FEATURE_COUNT + 0;
+
+	/**
+	 * The operation id for the '<em>Get EAnnotation</em>' operation.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ITABLE_VIEW___GET_EANNOTATION__STRING = IUNIT___GET_EANNOTATION__STRING;
+
+	/**
+	 * The number of operations of the '<em>ITable View</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ITABLE_VIEW_OPERATION_COUNT = IUNIT_OPERATION_COUNT + 0;
+
+	/**
+	 * The meta object id for the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.ITagImpl <em>ITag</em>}' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.ITagImpl
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.UMLRpyPackageImpl#getITag()
+	 * @generated
+	 */
+	int ITAG = 197;
+
+	/**
+	 * The feature id for the '<em><b>EAnnotations</b></em>' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ITAG__EANNOTATIONS = IVARIABLE__EANNOTATIONS;
+
+	/**
+	 * The feature id for the '<em><b>Display Name</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ITAG__DISPLAY_NAME = IVARIABLE__DISPLAY_NAME;
+
+	/**
+	 * The feature id for the '<em><b>Is Ordered</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ITAG__IS_ORDERED = IVARIABLE__IS_ORDERED;
+
+	/**
+	 * The feature id for the '<em><b>My Type Of</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ITAG__MY_TYPE_OF = IVARIABLE__MY_TYPE_OF;
+
+	/**
+	 * The feature id for the '<em><b>Id</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ITAG__ID = IVARIABLE_FEATURE_COUNT + 0;
+
+	/**
+	 * The feature id for the '<em><b>Name</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ITAG__NAME = IVARIABLE_FEATURE_COUNT + 1;
+
+	/**
+	 * The feature id for the '<em><b>Modified Time Weak</b></em>' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ITAG__MODIFIED_TIME_WEAK = IVARIABLE_FEATURE_COUNT + 2;
+
+	/**
+	 * The feature id for the '<em><b>Value Specifications</b></em>' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ITAG__VALUE_SPECIFICATIONS = IVARIABLE_FEATURE_COUNT + 3;
+
+	/**
+	 * The feature id for the '<em><b>Type Of</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ITAG__TYPE_OF = IVARIABLE_FEATURE_COUNT + 4;
+
+	/**
+	 * The feature id for the '<em><b>My State</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ITAG__MY_STATE = IVARIABLE_FEATURE_COUNT + 5;
+
+	/**
+	 * The feature id for the '<em><b>Multiplicity</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ITAG__MULTIPLICITY = IVARIABLE_FEATURE_COUNT + 6;
+
+	/**
+	 * The feature id for the '<em><b>Properties</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ITAG__PROPERTIES = IVARIABLE_FEATURE_COUNT + 7;
+
+	/**
+	 * The feature id for the '<em><b>Description</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ITAG__DESCRIPTION = IVARIABLE_FEATURE_COUNT + 8;
+
+	/**
+	 * The feature id for the '<em><b>Hyper Links</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ITAG__HYPER_LINKS = IVARIABLE_FEATURE_COUNT + 9;
+
+	/**
+	 * The feature id for the '<em><b>Base</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ITAG__BASE = IVARIABLE_FEATURE_COUNT + 10;
+
+	/**
+	 * The feature id for the '<em><b>Meta Class</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ITAG__META_CLASS = IVARIABLE_FEATURE_COUNT + 11;
+
+	/**
+	 * The feature id for the '<em><b>Default Value</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ITAG__DEFAULT_VALUE = IVARIABLE_FEATURE_COUNT + 12;
+
+	/**
+	 * The feature id for the '<em><b>Code Update CG Time</b></em>' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ITAG__CODE_UPDATE_CG_TIME = IVARIABLE_FEATURE_COUNT + 13;
+
+	/**
+	 * The number of structural features of the '<em>ITag</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ITAG_FEATURE_COUNT = IVARIABLE_FEATURE_COUNT + 14;
+
+	/**
+	 * The operation id for the '<em>Get EAnnotation</em>' operation.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ITAG___GET_EANNOTATION__STRING = IVARIABLE___GET_EANNOTATION__STRING;
+
+	/**
+	 * The number of operations of the '<em>ITag</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ITAG_OPERATION_COUNT = IVARIABLE_OPERATION_COUNT + 0;
+
+	/**
+	 * The meta object id for the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.ITemplateInstImpl <em>ITemplate Inst</em>}' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.ITemplateInstImpl
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.UMLRpyPackageImpl#getITemplateInst()
+	 * @generated
+	 */
+	int ITEMPLATE_INST = 198;
+
+	/**
+	 * The feature id for the '<em><b>Id</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ITEMPLATE_INST__ID = 0;
+
+	/**
+	 * The feature id for the '<em><b>Modified Time Weak</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ITEMPLATE_INST__MODIFIED_TIME_WEAK = 1;
+
+	/**
+	 * The feature id for the '<em><b>Template Inst Params</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ITEMPLATE_INST__TEMPLATE_INST_PARAMS = 2;
+
+	/**
+	 * The feature id for the '<em><b>Of Template</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ITEMPLATE_INST__OF_TEMPLATE = 3;
+
+	/**
+	 * The number of structural features of the '<em>ITemplate Inst</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ITEMPLATE_INST_FEATURE_COUNT = 4;
+
+	/**
+	 * The number of operations of the '<em>ITemplate Inst</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ITEMPLATE_INST_OPERATION_COUNT = 0;
+
+	/**
+	 * The meta object id for the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.ITemplateInstParamImpl <em>ITemplate Inst Param</em>}' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.ITemplateInstParamImpl
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.UMLRpyPackageImpl#getITemplateInstParam()
+	 * @generated
+	 */
+	int ITEMPLATE_INST_PARAM = 199;
+
+	/**
+	 * The feature id for the '<em><b>Id</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ITEMPLATE_INST_PARAM__ID = 0;
+
+	/**
+	 * The feature id for the '<em><b>Name</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ITEMPLATE_INST_PARAM__NAME = 1;
+
+	/**
+	 * The feature id for the '<em><b>Modified Time Weak</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ITEMPLATE_INST_PARAM__MODIFIED_TIME_WEAK = 2;
+
+	/**
+	 * The feature id for the '<em><b>Value</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ITEMPLATE_INST_PARAM__VALUE = 3;
+
+	/**
+	 * The feature id for the '<em><b>Arg Value</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ITEMPLATE_INST_PARAM__ARG_VALUE = 4;
+
+	/**
+	 * The feature id for the '<em><b>On The Fly Value</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ITEMPLATE_INST_PARAM__ON_THE_FLY_VALUE = 5;
+
+	/**
+	 * The number of structural features of the '<em>ITemplate Inst Param</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ITEMPLATE_INST_PARAM_FEATURE_COUNT = 6;
+
+	/**
+	 * The number of operations of the '<em>ITemplate Inst Param</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ITEMPLATE_INST_PARAM_OPERATION_COUNT = 0;
+
+	/**
+	 * The meta object id for the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.ITemplateInstantiationImpl <em>ITemplate Instantiation</em>}' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.ITemplateInstantiationImpl
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.UMLRpyPackageImpl#getITemplateInstantiation()
+	 * @generated
+	 */
+	int ITEMPLATE_INSTANTIATION = 200;
+
+	/**
+	 * The feature id for the '<em><b>EAnnotations</b></em>' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ITEMPLATE_INSTANTIATION__EANNOTATIONS = IMODEL_ELEMENT__EANNOTATIONS;
+
+	/**
+	 * The feature id for the '<em><b>Display Name</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ITEMPLATE_INSTANTIATION__DISPLAY_NAME = IMODEL_ELEMENT__DISPLAY_NAME;
+
+	/**
+	 * The number of structural features of the '<em>ITemplate Instantiation</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ITEMPLATE_INSTANTIATION_FEATURE_COUNT = IMODEL_ELEMENT_FEATURE_COUNT + 0;
+
+	/**
+	 * The operation id for the '<em>Get EAnnotation</em>' operation.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ITEMPLATE_INSTANTIATION___GET_EANNOTATION__STRING = IMODEL_ELEMENT___GET_EANNOTATION__STRING;
+
+	/**
+	 * The number of operations of the '<em>ITemplate Instantiation</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ITEMPLATE_INSTANTIATION_OPERATION_COUNT = IMODEL_ELEMENT_OPERATION_COUNT + 0;
+
+	/**
+	 * The meta object id for the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.ITemplateInstantiationParameterImpl <em>ITemplate Instantiation Parameter</em>}' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.ITemplateInstantiationParameterImpl
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.UMLRpyPackageImpl#getITemplateInstantiationParameter()
+	 * @generated
+	 */
+	int ITEMPLATE_INSTANTIATION_PARAMETER = 201;
+
+	/**
+	 * The feature id for the '<em><b>EAnnotations</b></em>' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ITEMPLATE_INSTANTIATION_PARAMETER__EANNOTATIONS = IMODEL_ELEMENT__EANNOTATIONS;
+
+	/**
+	 * The feature id for the '<em><b>Display Name</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ITEMPLATE_INSTANTIATION_PARAMETER__DISPLAY_NAME = IMODEL_ELEMENT__DISPLAY_NAME;
+
+	/**
+	 * The number of structural features of the '<em>ITemplate Instantiation Parameter</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ITEMPLATE_INSTANTIATION_PARAMETER_FEATURE_COUNT = IMODEL_ELEMENT_FEATURE_COUNT + 0;
+
+	/**
+	 * The operation id for the '<em>Get EAnnotation</em>' operation.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ITEMPLATE_INSTANTIATION_PARAMETER___GET_EANNOTATION__STRING = IMODEL_ELEMENT___GET_EANNOTATION__STRING;
+
+	/**
+	 * The number of operations of the '<em>ITemplate Instantiation Parameter</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ITEMPLATE_INSTANTIATION_PARAMETER_OPERATION_COUNT = IMODEL_ELEMENT_OPERATION_COUNT + 0;
+
+	/**
+	 * The meta object id for the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.ITemplateParameterImpl <em>ITemplate Parameter</em>}' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.ITemplateParameterImpl
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.UMLRpyPackageImpl#getITemplateParameter()
+	 * @generated
+	 */
+	int ITEMPLATE_PARAMETER = 202;
+
+	/**
+	 * The feature id for the '<em><b>EAnnotations</b></em>' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ITEMPLATE_PARAMETER__EANNOTATIONS = IVARIABLE__EANNOTATIONS;
+
+	/**
+	 * The feature id for the '<em><b>Display Name</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ITEMPLATE_PARAMETER__DISPLAY_NAME = IVARIABLE__DISPLAY_NAME;
+
+	/**
+	 * The feature id for the '<em><b>Is Ordered</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ITEMPLATE_PARAMETER__IS_ORDERED = IVARIABLE__IS_ORDERED;
+
+	/**
+	 * The feature id for the '<em><b>My Type Of</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ITEMPLATE_PARAMETER__MY_TYPE_OF = IVARIABLE__MY_TYPE_OF;
+
+	/**
+	 * The feature id for the '<em><b>Id</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ITEMPLATE_PARAMETER__ID = IVARIABLE_FEATURE_COUNT + 0;
+
+	/**
+	 * The feature id for the '<em><b>Name</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ITEMPLATE_PARAMETER__NAME = IVARIABLE_FEATURE_COUNT + 1;
+
+	/**
+	 * The feature id for the '<em><b>My State</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ITEMPLATE_PARAMETER__MY_STATE = IVARIABLE_FEATURE_COUNT + 2;
+
+	/**
+	 * The feature id for the '<em><b>Modified Time Weak</b></em>' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ITEMPLATE_PARAMETER__MODIFIED_TIME_WEAK = IVARIABLE_FEATURE_COUNT + 3;
+
+	/**
+	 * The feature id for the '<em><b>Representative</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ITEMPLATE_PARAMETER__REPRESENTATIVE = IVARIABLE_FEATURE_COUNT + 4;
+
+	/**
+	 * The number of structural features of the '<em>ITemplate Parameter</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ITEMPLATE_PARAMETER_FEATURE_COUNT = IVARIABLE_FEATURE_COUNT + 5;
+
+	/**
+	 * The operation id for the '<em>Get EAnnotation</em>' operation.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ITEMPLATE_PARAMETER___GET_EANNOTATION__STRING = IVARIABLE___GET_EANNOTATION__STRING;
+
+	/**
+	 * The number of operations of the '<em>ITemplate Parameter</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ITEMPLATE_PARAMETER_OPERATION_COUNT = IVARIABLE_OPERATION_COUNT + 0;
+
+	/**
+	 * The meta object id for the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.ITimeEventImpl <em>ITime Event</em>}' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.ITimeEventImpl
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.UMLRpyPackageImpl#getITimeEvent()
+	 * @generated
+	 */
+	int ITIME_EVENT = 203;
+
+	/**
+	 * The feature id for the '<em><b>Id</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ITIME_EVENT__ID = ITS_TARGET_TYPE_FEATURE_COUNT + 0;
+
+	/**
+	 * The feature id for the '<em><b>My State</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ITIME_EVENT__MY_STATE = ITS_TARGET_TYPE_FEATURE_COUNT + 1;
+
+	/**
+	 * The feature id for the '<em><b>Name</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ITIME_EVENT__NAME = ITS_TARGET_TYPE_FEATURE_COUNT + 2;
+
+	/**
+	 * The feature id for the '<em><b>Modified Time Weak</b></em>' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ITIME_EVENT__MODIFIED_TIME_WEAK = ITS_TARGET_TYPE_FEATURE_COUNT + 3;
+
+	/**
+	 * The feature id for the '<em><b>Parent</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ITIME_EVENT__PARENT = ITS_TARGET_TYPE_FEATURE_COUNT + 4;
+
+	/**
+	 * The feature id for the '<em><b>State Type</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ITIME_EVENT__STATE_TYPE = ITS_TARGET_TYPE_FEATURE_COUNT + 5;
+
+	/**
+	 * The feature id for the '<em><b>Default Trans</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ITIME_EVENT__DEFAULT_TRANS = ITS_TARGET_TYPE_FEATURE_COUNT + 6;
+
+	/**
+	 * The feature id for the '<em><b>Duration Time</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ITIME_EVENT__DURATION_TIME = ITS_TARGET_TYPE_FEATURE_COUNT + 7;
+
+	/**
+	 * The feature id for the '<em><b>Swimlane</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ITIME_EVENT__SWIMLANE = ITS_TARGET_TYPE_FEATURE_COUNT + 8;
+
+	/**
+	 * The number of structural features of the '<em>ITime Event</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ITIME_EVENT_FEATURE_COUNT = ITS_TARGET_TYPE_FEATURE_COUNT + 9;
+
+	/**
+	 * The number of operations of the '<em>ITime Event</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ITIME_EVENT_OPERATION_COUNT = ITS_TARGET_TYPE_OPERATION_COUNT + 0;
+
+	/**
+	 * The meta object id for the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.ITimeoutImpl <em>ITimeout</em>}' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.ITimeoutImpl
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.UMLRpyPackageImpl#getITimeout()
+	 * @generated
+	 */
+	int ITIMEOUT = 204;
+
+	/**
+	 * The feature id for the '<em><b>Modified Time Weak</b></em>' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ITIMEOUT__MODIFIED_TIME_WEAK = ITS_TRIGGER_TYPE__MODIFIED_TIME_WEAK;
+
+	/**
+	 * The feature id for the '<em><b>Id</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ITIMEOUT__ID = ITS_TRIGGER_TYPE__ID;
+
+	/**
+	 * The feature id for the '<em><b>Info</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ITIMEOUT__INFO = ITS_TRIGGER_TYPE__INFO;
+
+	/**
+	 * The feature id for the '<em><b>Uml Dependency ID</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ITIMEOUT__UML_DEPENDENCY_ID = ITS_TRIGGER_TYPE__UML_DEPENDENCY_ID;
+
+	/**
+	 * The feature id for the '<em><b>My State</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ITIMEOUT__MY_STATE = ITS_TRIGGER_TYPE__MY_STATE;
+
+	/**
+	 * The feature id for the '<em><b>Object Creation</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ITIMEOUT__OBJECT_CREATION = ITS_TRIGGER_TYPE__OBJECT_CREATION;
+
+	/**
+	 * The feature id for the '<em><b>Body</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ITIMEOUT__BODY = ITS_TRIGGER_TYPE__BODY;
+
+	/**
+	 * The feature id for the '<em><b>Time</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ITIMEOUT__TIME = ITS_TRIGGER_TYPE_FEATURE_COUNT + 0;
+
+	/**
+	 * The feature id for the '<em><b>Inherits From Handle</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ITIMEOUT__INHERITS_FROM_HANDLE = ITS_TRIGGER_TYPE_FEATURE_COUNT + 1;
+
+	/**
+	 * The number of structural features of the '<em>ITimeout</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ITIMEOUT_FEATURE_COUNT = ITS_TRIGGER_TYPE_FEATURE_COUNT + 2;
+
+	/**
+	 * The number of operations of the '<em>ITimeout</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ITIMEOUT_OPERATION_COUNT = ITS_TRIGGER_TYPE_OPERATION_COUNT + 0;
+
+	/**
+	 * The meta object id for the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.ITransitionImpl <em>ITransition</em>}' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.ITransitionImpl
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.UMLRpyPackageImpl#getITransition()
+	 * @generated
+	 */
+	int ITRANSITION = 205;
+
+	/**
+	 * The feature id for the '<em><b>EAnnotations</b></em>' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ITRANSITION__EANNOTATIONS = IMODEL_ELEMENT__EANNOTATIONS;
+
+	/**
+	 * The feature id for the '<em><b>Display Name</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ITRANSITION__DISPLAY_NAME = IMODEL_ELEMENT__DISPLAY_NAME;
+
+	/**
+	 * The feature id for the '<em><b>Modified Time Weak</b></em>' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ITRANSITION__MODIFIED_TIME_WEAK = IMODEL_ELEMENT_FEATURE_COUNT + 0;
+
+	/**
+	 * The feature id for the '<em><b>Static Reaction</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ITRANSITION__STATIC_REACTION = IMODEL_ELEMENT_FEATURE_COUNT + 1;
+
+	/**
+	 * The feature id for the '<em><b>Its Target</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ITRANSITION__ITS_TARGET = IMODEL_ELEMENT_FEATURE_COUNT + 2;
+
+	/**
+	 * The feature id for the '<em><b>Id</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ITRANSITION__ID = IMODEL_ELEMENT_FEATURE_COUNT + 3;
+
+	/**
+	 * The feature id for the '<em><b>Code Update CG Time</b></em>' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ITRANSITION__CODE_UPDATE_CG_TIME = IMODEL_ELEMENT_FEATURE_COUNT + 4;
+
+	/**
+	 * The feature id for the '<em><b>Requiremen Tracability Handle</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ITRANSITION__REQUIREMEN_TRACABILITY_HANDLE = IMODEL_ELEMENT_FEATURE_COUNT + 5;
+
+	/**
+	 * The feature id for the '<em><b>Description</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ITRANSITION__DESCRIPTION = IMODEL_ELEMENT_FEATURE_COUNT + 6;
+
+	/**
+	 * The feature id for the '<em><b>Its Label</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ITRANSITION__ITS_LABEL = IMODEL_ELEMENT_FEATURE_COUNT + 7;
+
+	/**
+	 * The feature id for the '<em><b>Uml Dependency ID</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ITRANSITION__UML_DEPENDENCY_ID = IMODEL_ELEMENT_FEATURE_COUNT + 8;
+
+	/**
+	 * The feature id for the '<em><b>My State</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ITRANSITION__MY_STATE = IMODEL_ELEMENT_FEATURE_COUNT + 9;
+
+	/**
+	 * The feature id for the '<em><b>Object Creation</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ITRANSITION__OBJECT_CREATION = IMODEL_ELEMENT_FEATURE_COUNT + 10;
+
+	/**
+	 * The feature id for the '<em><b>Name</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ITRANSITION__NAME = IMODEL_ELEMENT_FEATURE_COUNT + 11;
+
+	/**
+	 * The feature id for the '<em><b>Its Source</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ITRANSITION__ITS_SOURCE = IMODEL_ELEMENT_FEATURE_COUNT + 12;
+
+	/**
+	 * The feature id for the '<em><b>Inherits From Handle</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ITRANSITION__INHERITS_FROM_HANDLE = IMODEL_ELEMENT_FEATURE_COUNT + 13;
+
+	/**
+	 * The feature id for the '<em><b>Dependencies</b></em>' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ITRANSITION__DEPENDENCIES = IMODEL_ELEMENT_FEATURE_COUNT + 14;
+
+	/**
+	 * The feature id for the '<em><b>Stereotypes</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ITRANSITION__STEREOTYPES = IMODEL_ELEMENT_FEATURE_COUNT + 15;
+
+	/**
+	 * The number of structural features of the '<em>ITransition</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ITRANSITION_FEATURE_COUNT = IMODEL_ELEMENT_FEATURE_COUNT + 16;
+
+	/**
+	 * The operation id for the '<em>Get EAnnotation</em>' operation.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ITRANSITION___GET_EANNOTATION__STRING = IMODEL_ELEMENT___GET_EANNOTATION__STRING;
+
+	/**
+	 * The number of operations of the '<em>ITransition</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ITRANSITION_OPERATION_COUNT = IMODEL_ELEMENT_OPERATION_COUNT + 0;
+
+	/**
+	 * The meta object id for the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.ITriggerImpl <em>ITrigger</em>}' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.ITriggerImpl
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.UMLRpyPackageImpl#getITrigger()
+	 * @generated
+	 */
+	int ITRIGGER = 206;
+
+	/**
+	 * The feature id for the '<em><b>EAnnotations</b></em>' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ITRIGGER__EANNOTATIONS = IMODEL_ELEMENT__EANNOTATIONS;
+
+	/**
+	 * The feature id for the '<em><b>Display Name</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ITRIGGER__DISPLAY_NAME = IMODEL_ELEMENT__DISPLAY_NAME;
+
+	/**
+	 * The number of structural features of the '<em>ITrigger</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ITRIGGER_FEATURE_COUNT = IMODEL_ELEMENT_FEATURE_COUNT + 0;
+
+	/**
+	 * The operation id for the '<em>Get EAnnotation</em>' operation.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ITRIGGER___GET_EANNOTATION__STRING = IMODEL_ELEMENT___GET_EANNOTATION__STRING;
+
+	/**
+	 * The number of operations of the '<em>ITrigger</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ITRIGGER_OPERATION_COUNT = IMODEL_ELEMENT_OPERATION_COUNT + 0;
+
+	/**
+	 * The meta object id for the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.ITriggeredImpl <em>ITriggered</em>}' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.ITriggeredImpl
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.UMLRpyPackageImpl#getITriggered()
+	 * @generated
+	 */
+	int ITRIGGERED = 207;
+
+	/**
+	 * The feature id for the '<em><b>Virtual</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ITRIGGERED__VIRTUAL = OPERATIONS_TYPE__VIRTUAL;
+
+	/**
+	 * The feature id for the '<em><b>EAnnotations</b></em>' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ITRIGGERED__EANNOTATIONS = OPERATIONS_TYPE_FEATURE_COUNT + 0;
+
+	/**
+	 * The feature id for the '<em><b>Display Name</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ITRIGGERED__DISPLAY_NAME = OPERATIONS_TYPE_FEATURE_COUNT + 1;
+
+	/**
+	 * The feature id for the '<em><b>Id</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ITRIGGERED__ID = OPERATIONS_TYPE_FEATURE_COUNT + 2;
+
+	/**
+	 * The feature id for the '<em><b>Name</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ITRIGGERED__NAME = OPERATIONS_TYPE_FEATURE_COUNT + 3;
+
+	/**
+	 * The feature id for the '<em><b>Args</b></em>' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ITRIGGERED__ARGS = OPERATIONS_TYPE_FEATURE_COUNT + 4;
+
+	/**
+	 * The feature id for the '<em><b>Return Type</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ITRIGGERED__RETURN_TYPE = OPERATIONS_TYPE_FEATURE_COUNT + 5;
+
+	/**
+	 * The feature id for the '<em><b>Abstract</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ITRIGGERED__ABSTRACT = OPERATIONS_TYPE_FEATURE_COUNT + 6;
+
+	/**
+	 * The feature id for the '<em><b>Final</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ITRIGGERED__FINAL = OPERATIONS_TYPE_FEATURE_COUNT + 7;
+
+	/**
+	 * The feature id for the '<em><b>Concurrency</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ITRIGGERED__CONCURRENCY = OPERATIONS_TYPE_FEATURE_COUNT + 8;
+
+	/**
+	 * The feature id for the '<em><b>Protection</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ITRIGGERED__PROTECTION = OPERATIONS_TYPE_FEATURE_COUNT + 9;
+
+	/**
+	 * The feature id for the '<em><b>Modified Time Weak</b></em>' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ITRIGGERED__MODIFIED_TIME_WEAK = OPERATIONS_TYPE_FEATURE_COUNT + 10;
+
+	/**
+	 * The feature id for the '<em><b>My State</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ITRIGGERED__MY_STATE = OPERATIONS_TYPE_FEATURE_COUNT + 11;
+
+	/**
+	 * The number of structural features of the '<em>ITriggered</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ITRIGGERED_FEATURE_COUNT = OPERATIONS_TYPE_FEATURE_COUNT + 12;
+
+	/**
+	 * The operation id for the '<em>Get EAnnotation</em>' operation.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ITRIGGERED___GET_EANNOTATION__STRING = OPERATIONS_TYPE_OPERATION_COUNT + 0;
+
+	/**
+	 * The number of operations of the '<em>ITriggered</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ITRIGGERED_OPERATION_COUNT = OPERATIONS_TYPE_OPERATION_COUNT + 1;
+
+	/**
+	 * The meta object id for the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.ITypeImpl <em>IType</em>}' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.ITypeImpl
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.UMLRpyPackageImpl#getIType()
+	 * @generated
+	 */
+	int ITYPE = 208;
+
+	/**
+	 * The feature id for the '<em><b>EAnnotations</b></em>' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ITYPE__EANNOTATIONS = ICLASSIFIER__EANNOTATIONS;
+
+	/**
+	 * The feature id for the '<em><b>Display Name</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ITYPE__DISPLAY_NAME = ICLASSIFIER__DISPLAY_NAME;
+
+	/**
+	 * The feature id for the '<em><b>Uml Dependency ID</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ITYPE__UML_DEPENDENCY_ID = ICLASSIFIER_FEATURE_COUNT + 0;
+
+	/**
+	 * The feature id for the '<em><b>Object Creation</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ITYPE__OBJECT_CREATION = ICLASSIFIER_FEATURE_COUNT + 1;
+
+	/**
+	 * The feature id for the '<em><b>Modified Time Weak</b></em>' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ITYPE__MODIFIED_TIME_WEAK = ICLASSIFIER_FEATURE_COUNT + 2;
+
+	/**
+	 * The feature id for the '<em><b>Id</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ITYPE__ID = ICLASSIFIER_FEATURE_COUNT + 3;
+
+	/**
+	 * The feature id for the '<em><b>My State</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ITYPE__MY_STATE = ICLASSIFIER_FEATURE_COUNT + 4;
+
+	/**
+	 * The feature id for the '<em><b>Name</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ITYPE__NAME = ICLASSIFIER_FEATURE_COUNT + 5;
+
+	/**
+	 * The feature id for the '<em><b>Last ID</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ITYPE__LAST_ID = ICLASSIFIER_FEATURE_COUNT + 6;
+
+	/**
+	 * The feature id for the '<em><b>Literals</b></em>' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ITYPE__LITERALS = ICLASSIFIER_FEATURE_COUNT + 7;
+
+	/**
+	 * The feature id for the '<em><b>Kind</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ITYPE__KIND = ICLASSIFIER_FEATURE_COUNT + 8;
+
+	/**
+	 * The feature id for the '<em><b>Properties</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ITYPE__PROPERTIES = ICLASSIFIER_FEATURE_COUNT + 9;
+
+	/**
+	 * The feature id for the '<em><b>Description</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ITYPE__DESCRIPTION = ICLASSIFIER_FEATURE_COUNT + 10;
+
+	/**
+	 * The feature id for the '<em><b>Declaration</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ITYPE__DECLARATION = ICLASSIFIER_FEATURE_COUNT + 11;
+
+	/**
+	 * The feature id for the '<em><b>Stereotypes</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ITYPE__STEREOTYPES = ICLASSIFIER_FEATURE_COUNT + 12;
+
+	/**
+	 * The feature id for the '<em><b>Attrs</b></em>' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ITYPE__ATTRS = ICLASSIFIER_FEATURE_COUNT + 13;
+
+	/**
+	 * The feature id for the '<em><b>Association Elements</b></em>' reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ITYPE__ASSOCIATION_ELEMENTS = ICLASSIFIER_FEATURE_COUNT + 14;
+
+	/**
+	 * The feature id for the '<em><b>Tags</b></em>' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ITYPE__TAGS = ICLASSIFIER_FEATURE_COUNT + 15;
+
+	/**
+	 * The feature id for the '<em><b>Typedef Base Type</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ITYPE__TYPEDEF_BASE_TYPE = ICLASSIFIER_FEATURE_COUNT + 16;
+
+	/**
+	 * The feature id for the '<em><b>Typedef Multiplicity</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ITYPE__TYPEDEF_MULTIPLICITY = ICLASSIFIER_FEATURE_COUNT + 17;
+
+	/**
+	 * The feature id for the '<em><b>Typedef Is Ordered</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ITYPE__TYPEDEF_IS_ORDERED = ICLASSIFIER_FEATURE_COUNT + 18;
+
+	/**
+	 * The feature id for the '<em><b>Typedef Is Reference</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ITYPE__TYPEDEF_IS_REFERENCE = ICLASSIFIER_FEATURE_COUNT + 19;
+
+	/**
+	 * The feature id for the '<em><b>Typedef Is Constant</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ITYPE__TYPEDEF_IS_CONSTANT = ICLASSIFIER_FEATURE_COUNT + 20;
+
+	/**
+	 * The feature id for the '<em><b>Requiremen Tracability Handle</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ITYPE__REQUIREMEN_TRACABILITY_HANDLE = ICLASSIFIER_FEATURE_COUNT + 21;
+
+	/**
+	 * The feature id for the '<em><b>Code Update CG Time</b></em>' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ITYPE__CODE_UPDATE_CG_TIME = ICLASSIFIER_FEATURE_COUNT + 22;
+
+	/**
+	 * The feature id for the '<em><b>The Main Diagram</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ITYPE__THE_MAIN_DIAGRAM = ICLASSIFIER_FEATURE_COUNT + 23;
+
+	/**
+	 * The number of structural features of the '<em>IType</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ITYPE_FEATURE_COUNT = ICLASSIFIER_FEATURE_COUNT + 24;
+
+	/**
+	 * The operation id for the '<em>Get EAnnotation</em>' operation.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ITYPE___GET_EANNOTATION__STRING = ICLASSIFIER___GET_EANNOTATION__STRING;
+
+	/**
+	 * The number of operations of the '<em>IType</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ITYPE_OPERATION_COUNT = ICLASSIFIER_OPERATION_COUNT + 0;
+
+	/**
+	 * The meta object id for the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.TheMainDiagramTypeImpl <em>The Main Diagram Type</em>}' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.TheMainDiagramTypeImpl
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.UMLRpyPackageImpl#getTheMainDiagramType()
+	 * @generated
+	 */
+	int THE_MAIN_DIAGRAM_TYPE = 240;
+
+	/**
+	 * The feature id for the '<em><b>Id</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int THE_MAIN_DIAGRAM_TYPE__ID = MPMODEL_OBJECT_TYPE_FEATURE_COUNT + 0;
+
+	/**
+	 * The feature id for the '<em><b>Last Modified Time</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int THE_MAIN_DIAGRAM_TYPE__LAST_MODIFIED_TIME = MPMODEL_OBJECT_TYPE_FEATURE_COUNT + 1;
+
+	/**
+	 * The feature id for the '<em><b>Requiremen Tracability Handle</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int THE_MAIN_DIAGRAM_TYPE__REQUIREMEN_TRACABILITY_HANDLE = MPMODEL_OBJECT_TYPE_FEATURE_COUNT + 2;
+
+	/**
+	 * The feature id for the '<em><b>Default Subsystem</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int THE_MAIN_DIAGRAM_TYPE__DEFAULT_SUBSYSTEM = MPMODEL_OBJECT_TYPE_FEATURE_COUNT + 3;
+
+	/**
+	 * The feature id for the '<em><b>Description</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int THE_MAIN_DIAGRAM_TYPE__DESCRIPTION = MPMODEL_OBJECT_TYPE_FEATURE_COUNT + 4;
+
+	/**
+	 * The feature id for the '<em><b>Uml Dependency ID</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int THE_MAIN_DIAGRAM_TYPE__UML_DEPENDENCY_ID = MPMODEL_OBJECT_TYPE_FEATURE_COUNT + 5;
+
+	/**
+	 * The feature id for the '<em><b>Last ID</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int THE_MAIN_DIAGRAM_TYPE__LAST_ID = MPMODEL_OBJECT_TYPE_FEATURE_COUNT + 6;
+
+	/**
+	 * The feature id for the '<em><b>My State</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int THE_MAIN_DIAGRAM_TYPE__MY_STATE = MPMODEL_OBJECT_TYPE_FEATURE_COUNT + 7;
+
+	/**
+	 * The feature id for the '<em><b>Owner Handle</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int THE_MAIN_DIAGRAM_TYPE__OWNER_HANDLE = MPMODEL_OBJECT_TYPE_FEATURE_COUNT + 8;
+
+	/**
+	 * The feature id for the '<em><b>Object Creation</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int THE_MAIN_DIAGRAM_TYPE__OBJECT_CREATION = MPMODEL_OBJECT_TYPE_FEATURE_COUNT + 9;
+
+	/**
+	 * The feature id for the '<em><b>Name</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int THE_MAIN_DIAGRAM_TYPE__NAME = MPMODEL_OBJECT_TYPE_FEATURE_COUNT + 10;
+
+	/**
+	 * The feature id for the '<em><b>Cmheader</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int THE_MAIN_DIAGRAM_TYPE__CMHEADER = MPMODEL_OBJECT_TYPE_FEATURE_COUNT + 11;
+
+	/**
+	 * The number of structural features of the '<em>The Main Diagram Type</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int THE_MAIN_DIAGRAM_TYPE_FEATURE_COUNT = MPMODEL_OBJECT_TYPE_FEATURE_COUNT + 12;
+
+	/**
+	 * The number of operations of the '<em>The Main Diagram Type</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int THE_MAIN_DIAGRAM_TYPE_OPERATION_COUNT = MPMODEL_OBJECT_TYPE_OPERATION_COUNT + 0;
+
+	/**
+	 * The meta object id for the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IUCDiagramImpl <em>IUC Diagram</em>}' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IUCDiagramImpl
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.UMLRpyPackageImpl#getIUCDiagram()
+	 * @generated
+	 */
+	int IUC_DIAGRAM = 209;
+
+	/**
+	 * The feature id for the '<em><b>Id</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IUC_DIAGRAM__ID = THE_MAIN_DIAGRAM_TYPE__ID;
+
+	/**
+	 * The feature id for the '<em><b>Last Modified Time</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IUC_DIAGRAM__LAST_MODIFIED_TIME = THE_MAIN_DIAGRAM_TYPE__LAST_MODIFIED_TIME;
+
+	/**
+	 * The feature id for the '<em><b>Requiremen Tracability Handle</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IUC_DIAGRAM__REQUIREMEN_TRACABILITY_HANDLE = THE_MAIN_DIAGRAM_TYPE__REQUIREMEN_TRACABILITY_HANDLE;
+
+	/**
+	 * The feature id for the '<em><b>Default Subsystem</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IUC_DIAGRAM__DEFAULT_SUBSYSTEM = THE_MAIN_DIAGRAM_TYPE__DEFAULT_SUBSYSTEM;
+
+	/**
+	 * The feature id for the '<em><b>Description</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IUC_DIAGRAM__DESCRIPTION = THE_MAIN_DIAGRAM_TYPE__DESCRIPTION;
+
+	/**
+	 * The feature id for the '<em><b>Uml Dependency ID</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IUC_DIAGRAM__UML_DEPENDENCY_ID = THE_MAIN_DIAGRAM_TYPE__UML_DEPENDENCY_ID;
+
+	/**
+	 * The feature id for the '<em><b>Last ID</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IUC_DIAGRAM__LAST_ID = THE_MAIN_DIAGRAM_TYPE__LAST_ID;
+
+	/**
+	 * The feature id for the '<em><b>My State</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IUC_DIAGRAM__MY_STATE = THE_MAIN_DIAGRAM_TYPE__MY_STATE;
+
+	/**
+	 * The feature id for the '<em><b>Owner Handle</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IUC_DIAGRAM__OWNER_HANDLE = THE_MAIN_DIAGRAM_TYPE__OWNER_HANDLE;
+
+	/**
+	 * The feature id for the '<em><b>Object Creation</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IUC_DIAGRAM__OBJECT_CREATION = THE_MAIN_DIAGRAM_TYPE__OBJECT_CREATION;
+
+	/**
+	 * The feature id for the '<em><b>Name</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IUC_DIAGRAM__NAME = THE_MAIN_DIAGRAM_TYPE__NAME;
+
+	/**
+	 * The feature id for the '<em><b>Cmheader</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IUC_DIAGRAM__CMHEADER = THE_MAIN_DIAGRAM_TYPE__CMHEADER;
+
+	/**
+	 * The feature id for the '<em><b>Properties</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IUC_DIAGRAM__PROPERTIES = THE_MAIN_DIAGRAM_TYPE_FEATURE_COUNT + 0;
+
+	/**
+	 * The feature id for the '<em><b>Graphic Chart</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IUC_DIAGRAM__GRAPHIC_CHART = THE_MAIN_DIAGRAM_TYPE_FEATURE_COUNT + 1;
+
+	/**
+	 * The feature id for the '<em><b>Modified Time Weak</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IUC_DIAGRAM__MODIFIED_TIME_WEAK = THE_MAIN_DIAGRAM_TYPE_FEATURE_COUNT + 2;
+
+	/**
+	 * The number of structural features of the '<em>IUC Diagram</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IUC_DIAGRAM_FEATURE_COUNT = THE_MAIN_DIAGRAM_TYPE_FEATURE_COUNT + 3;
+
+	/**
+	 * The number of operations of the '<em>IUC Diagram</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IUC_DIAGRAM_OPERATION_COUNT = THE_MAIN_DIAGRAM_TYPE_OPERATION_COUNT + 0;
+
+	/**
+	 * The meta object id for the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IUseCaseImpl <em>IUse Case</em>}' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IUseCaseImpl
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.UMLRpyPackageImpl#getIUseCase()
+	 * @generated
+	 */
+	int IUSE_CASE = 211;
+
+	/**
+	 * The feature id for the '<em><b>EAnnotations</b></em>' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IUSE_CASE__EANNOTATIONS = ICLASSIFIER__EANNOTATIONS;
+
+	/**
+	 * The feature id for the '<em><b>Display Name</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IUSE_CASE__DISPLAY_NAME = ICLASSIFIER__DISPLAY_NAME;
+
+	/**
+	 * The feature id for the '<em><b>Multiplicity</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IUSE_CASE__MULTIPLICITY = ICLASSIFIER_FEATURE_COUNT + 0;
+
+	/**
+	 * The feature id for the '<em><b>Id</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IUSE_CASE__ID = ICLASSIFIER_FEATURE_COUNT + 1;
+
+	/**
+	 * The feature id for the '<em><b>My State</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IUSE_CASE__MY_STATE = ICLASSIFIER_FEATURE_COUNT + 2;
+
+	/**
+	 * The feature id for the '<em><b>Name</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IUSE_CASE__NAME = ICLASSIFIER_FEATURE_COUNT + 3;
+
+	/**
+	 * The feature id for the '<em><b>The Main Diagram</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IUSE_CASE__THE_MAIN_DIAGRAM = ICLASSIFIER_FEATURE_COUNT + 4;
+
+	/**
+	 * The feature id for the '<em><b>Hyper Links</b></em>' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IUSE_CASE__HYPER_LINKS = ICLASSIFIER_FEATURE_COUNT + 5;
+
+	/**
+	 * The feature id for the '<em><b>Weak CG Time</b></em>' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IUSE_CASE__WEAK_CG_TIME = ICLASSIFIER_FEATURE_COUNT + 6;
+
+	/**
+	 * The feature id for the '<em><b>Strong CG Time</b></em>' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IUSE_CASE__STRONG_CG_TIME = ICLASSIFIER_FEATURE_COUNT + 7;
+
+	/**
+	 * The feature id for the '<em><b>Class Modifier</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IUSE_CASE__CLASS_MODIFIER = ICLASSIFIER_FEATURE_COUNT + 8;
+
+	/**
+	 * The feature id for the '<em><b>Description</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IUSE_CASE__DESCRIPTION = ICLASSIFIER_FEATURE_COUNT + 9;
+
+	/**
+	 * The feature id for the '<em><b>Inheritances</b></em>' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IUSE_CASE__INHERITANCES = ICLASSIFIER_FEATURE_COUNT + 10;
+
+	/**
+	 * The feature id for the '<em><b>Associations</b></em>' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IUSE_CASE__ASSOCIATIONS = ICLASSIFIER_FEATURE_COUNT + 11;
+
+	/**
+	 * The feature id for the '<em><b>Use Case Stereo Types</b></em>' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IUSE_CASE__USE_CASE_STEREO_TYPES = ICLASSIFIER_FEATURE_COUNT + 12;
+
+	/**
+	 * The feature id for the '<em><b>Entry Points</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IUSE_CASE__ENTRY_POINTS = ICLASSIFIER_FEATURE_COUNT + 13;
+
+	/**
+	 * The feature id for the '<em><b>Dependencies</b></em>' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IUSE_CASE__DEPENDENCIES = ICLASSIFIER_FEATURE_COUNT + 14;
+
+	/**
+	 * The feature id for the '<em><b>Last ID</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IUSE_CASE__LAST_ID = ICLASSIFIER_FEATURE_COUNT + 15;
+
+	/**
+	 * The feature id for the '<em><b>Diagrams</b></em>' reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IUSE_CASE__DIAGRAMS = ICLASSIFIER_FEATURE_COUNT + 16;
+
+	/**
+	 * The feature id for the '<em><b>Modified Time Weak</b></em>' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IUSE_CASE__MODIFIED_TIME_WEAK = ICLASSIFIER_FEATURE_COUNT + 17;
+
+	/**
+	 * The feature id for the '<em><b>Requiremen Tracability Handle</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IUSE_CASE__REQUIREMEN_TRACABILITY_HANDLE = ICLASSIFIER_FEATURE_COUNT + 18;
+
+	/**
+	 * The feature id for the '<em><b>Cmheader</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IUSE_CASE__CMHEADER = ICLASSIFIER_FEATURE_COUNT + 19;
+
+	/**
+	 * The feature id for the '<em><b>Owner Handle</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IUSE_CASE__OWNER_HANDLE = ICLASSIFIER_FEATURE_COUNT + 20;
+
+	/**
+	 * The feature id for the '<em><b>Declaratives</b></em>' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IUSE_CASE__DECLARATIVES = ICLASSIFIER_FEATURE_COUNT + 21;
+
+	/**
+	 * The feature id for the '<em><b>Operations</b></em>' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IUSE_CASE__OPERATIONS = ICLASSIFIER_FEATURE_COUNT + 22;
+
+	/**
+	 * The feature id for the '<em><b>State Charts</b></em>' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IUSE_CASE__STATE_CHARTS = ICLASSIFIER_FEATURE_COUNT + 23;
+
+	/**
+	 * The feature id for the '<em><b>Its State Chart</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IUSE_CASE__ITS_STATE_CHART = ICLASSIFIER_FEATURE_COUNT + 24;
+
+	/**
+	 * The feature id for the '<em><b>Attrs</b></em>' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IUSE_CASE__ATTRS = ICLASSIFIER_FEATURE_COUNT + 25;
+
+	/**
+	 * The feature id for the '<em><b>Annotations</b></em>' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IUSE_CASE__ANNOTATIONS = ICLASSIFIER_FEATURE_COUNT + 26;
+
+	/**
+	 * The feature id for the '<em><b>Embeded Files</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IUSE_CASE__EMBEDED_FILES = ICLASSIFIER_FEATURE_COUNT + 27;
+
+	/**
+	 * The feature id for the '<em><b>Object Creation</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IUSE_CASE__OBJECT_CREATION = ICLASSIFIER_FEATURE_COUNT + 28;
+
+	/**
+	 * The feature id for the '<em><b>Uml Dependency ID</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IUSE_CASE__UML_DEPENDENCY_ID = ICLASSIFIER_FEATURE_COUNT + 29;
+
+	/**
+	 * The feature id for the '<em><b>Object Links</b></em>' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IUSE_CASE__OBJECT_LINKS = ICLASSIFIER_FEATURE_COUNT + 30;
+
+	/**
+	 * The feature id for the '<em><b>Properties</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IUSE_CASE__PROPERTIES = ICLASSIFIER_FEATURE_COUNT + 31;
+
+	/**
+	 * The number of structural features of the '<em>IUse Case</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IUSE_CASE_FEATURE_COUNT = ICLASSIFIER_FEATURE_COUNT + 32;
+
+	/**
+	 * The operation id for the '<em>Get EAnnotation</em>' operation.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IUSE_CASE___GET_EANNOTATION__STRING = ICLASSIFIER___GET_EANNOTATION__STRING;
+
+	/**
+	 * The number of operations of the '<em>IUse Case</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IUSE_CASE_OPERATION_COUNT = ICLASSIFIER_OPERATION_COUNT + 0;
+
+	/**
+	 * The meta object id for the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IUseCaseDiagramImpl <em>IUse Case Diagram</em>}' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IUseCaseDiagramImpl
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.UMLRpyPackageImpl#getIUseCaseDiagram()
+	 * @generated
+	 */
+	int IUSE_CASE_DIAGRAM = 212;
+
+	/**
+	 * The feature id for the '<em><b>EAnnotations</b></em>' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IUSE_CASE_DIAGRAM__EANNOTATIONS = IDIAGRAM__EANNOTATIONS;
+
+	/**
+	 * The feature id for the '<em><b>Display Name</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IUSE_CASE_DIAGRAM__DISPLAY_NAME = IDIAGRAM__DISPLAY_NAME;
+
+	/**
+	 * The feature id for the '<em><b>Id</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IUSE_CASE_DIAGRAM__ID = IDIAGRAM__ID;
+
+	/**
+	 * The feature id for the '<em><b>Last Modified Time</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IUSE_CASE_DIAGRAM__LAST_MODIFIED_TIME = IDIAGRAM__LAST_MODIFIED_TIME;
+
+	/**
+	 * The feature id for the '<em><b>Requiremen Tracability Handle</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IUSE_CASE_DIAGRAM__REQUIREMEN_TRACABILITY_HANDLE = IDIAGRAM__REQUIREMEN_TRACABILITY_HANDLE;
+
+	/**
+	 * The feature id for the '<em><b>Default Subsystem</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IUSE_CASE_DIAGRAM__DEFAULT_SUBSYSTEM = IDIAGRAM__DEFAULT_SUBSYSTEM;
+
+	/**
+	 * The feature id for the '<em><b>Description</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IUSE_CASE_DIAGRAM__DESCRIPTION = IDIAGRAM__DESCRIPTION;
+
+	/**
+	 * The feature id for the '<em><b>Uml Dependency ID</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IUSE_CASE_DIAGRAM__UML_DEPENDENCY_ID = IDIAGRAM__UML_DEPENDENCY_ID;
+
+	/**
+	 * The feature id for the '<em><b>Last ID</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IUSE_CASE_DIAGRAM__LAST_ID = IDIAGRAM__LAST_ID;
+
+	/**
+	 * The feature id for the '<em><b>My State</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IUSE_CASE_DIAGRAM__MY_STATE = IDIAGRAM__MY_STATE;
+
+	/**
+	 * The feature id for the '<em><b>Owner Handle</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IUSE_CASE_DIAGRAM__OWNER_HANDLE = IDIAGRAM__OWNER_HANDLE;
+
+	/**
+	 * The feature id for the '<em><b>Object Creation</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IUSE_CASE_DIAGRAM__OBJECT_CREATION = IDIAGRAM__OBJECT_CREATION;
+
+	/**
+	 * The feature id for the '<em><b>Name</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IUSE_CASE_DIAGRAM__NAME = IDIAGRAM__NAME;
+
+	/**
+	 * The feature id for the '<em><b>Cmheader</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IUSE_CASE_DIAGRAM__CMHEADER = IDIAGRAM__CMHEADER;
+
+	/**
+	 * The feature id for the '<em><b>Properties</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IUSE_CASE_DIAGRAM__PROPERTIES = IDIAGRAM__PROPERTIES;
+
+	/**
+	 * The feature id for the '<em><b>Stereotypes</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IUSE_CASE_DIAGRAM__STEREOTYPES = IDIAGRAM__STEREOTYPES;
+
+	/**
+	 * The feature id for the '<em><b>Modified Time Weak</b></em>' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IUSE_CASE_DIAGRAM__MODIFIED_TIME_WEAK = IDIAGRAM__MODIFIED_TIME_WEAK;
+
+	/**
+	 * The feature id for the '<em><b>Graphic Chart</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IUSE_CASE_DIAGRAM__GRAPHIC_CHART = IDIAGRAM__GRAPHIC_CHART;
+
+	/**
+	 * The feature id for the '<em><b>Annotations</b></em>' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IUSE_CASE_DIAGRAM__ANNOTATIONS = IDIAGRAM__ANNOTATIONS;
+
+	/**
+	 * The feature id for the '<em><b>Code Update CG Time</b></em>' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IUSE_CASE_DIAGRAM__CODE_UPDATE_CG_TIME = IDIAGRAM__CODE_UPDATE_CG_TIME;
+
+	/**
+	 * The feature id for the '<em><b>Hyper Links</b></em>' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IUSE_CASE_DIAGRAM__HYPER_LINKS = IDIAGRAM__HYPER_LINKS;
+
+	/**
+	 * The number of structural features of the '<em>IUse Case Diagram</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IUSE_CASE_DIAGRAM_FEATURE_COUNT = IDIAGRAM_FEATURE_COUNT + 0;
+
+	/**
+	 * The operation id for the '<em>Get EAnnotation</em>' operation.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IUSE_CASE_DIAGRAM___GET_EANNOTATION__STRING = IDIAGRAM___GET_EANNOTATION__STRING;
+
+	/**
+	 * The number of operations of the '<em>IUse Case Diagram</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IUSE_CASE_DIAGRAM_OPERATION_COUNT = IDIAGRAM_OPERATION_COUNT + 0;
+
+	/**
+	 * The meta object id for the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IUseCaseStereoTypeImpl <em>IUse Case Stereo Type</em>}' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IUseCaseStereoTypeImpl
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.UMLRpyPackageImpl#getIUseCaseStereoType()
+	 * @generated
+	 */
+	int IUSE_CASE_STEREO_TYPE = 213;
+
+	/**
+	 * The feature id for the '<em><b>Use Case</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IUSE_CASE_STEREO_TYPE__USE_CASE = 0;
+
+	/**
+	 * The feature id for the '<em><b>Stereo Type</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IUSE_CASE_STEREO_TYPE__STEREO_TYPE = 1;
+
+	/**
+	 * The feature id for the '<em><b>Entry Point</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IUSE_CASE_STEREO_TYPE__ENTRY_POINT = 2;
+
+	/**
+	 * The number of structural features of the '<em>IUse Case Stereo Type</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IUSE_CASE_STEREO_TYPE_FEATURE_COUNT = 3;
+
+	/**
+	 * The number of operations of the '<em>IUse Case Stereo Type</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IUSE_CASE_STEREO_TYPE_OPERATION_COUNT = 0;
+
+	/**
+	 * The meta object id for the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.ItemsTypeImpl <em>Items Type</em>}' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.ItemsTypeImpl
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.UMLRpyPackageImpl#getItemsType()
+	 * @generated
+	 */
+	int ITEMS_TYPE = 217;
+
+	/**
+	 * The number of structural features of the '<em>Items Type</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ITEMS_TYPE_FEATURE_COUNT = 0;
+
+	/**
+	 * The number of operations of the '<em>Items Type</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ITEMS_TYPE_OPERATION_COUNT = 0;
+
+	/**
+	 * The meta object id for the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.M_hTargetTypeImpl <em>MhTarget Type</em>}' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.M_hTargetTypeImpl
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.UMLRpyPackageImpl#getM_hTargetType()
+	 * @generated
+	 */
+	int MHTARGET_TYPE = 223;
+
+	/**
+	 * The feature id for the '<em><b>Requiremen Tracability Handle</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int MHTARGET_TYPE__REQUIREMEN_TRACABILITY_HANDLE = 0;
+
+	/**
+	 * The feature id for the '<em><b>Description</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int MHTARGET_TYPE__DESCRIPTION = 1;
+
+	/**
+	 * The feature id for the '<em><b>Properties</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int MHTARGET_TYPE__PROPERTIES = 2;
+
+	/**
+	 * The number of structural features of the '<em>MhTarget Type</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int MHTARGET_TYPE_FEATURE_COUNT = 3;
+
+	/**
+	 * The number of operations of the '<em>MhTarget Type</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int MHTARGET_TYPE_OPERATION_COUNT = 0;
+
+	/**
+	 * The meta object id for the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.M_pFormalMessageTypeImpl <em>MpFormal Message Type</em>}' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.M_pFormalMessageTypeImpl
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.UMLRpyPackageImpl#getM_pFormalMessageType()
+	 * @generated
+	 */
+	int MPFORMAL_MESSAGE_TYPE = 225;
+
+	/**
+	 * The number of structural features of the '<em>MpFormal Message Type</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int MPFORMAL_MESSAGE_TYPE_FEATURE_COUNT = 0;
+
+	/**
+	 * The number of operations of the '<em>MpFormal Message Type</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int MPFORMAL_MESSAGE_TYPE_OPERATION_COUNT = 0;
+
+	/**
+	 * The meta object id for the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.M_subjectTypeImpl <em>Msubject Type</em>}' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.M_subjectTypeImpl
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.UMLRpyPackageImpl#getM_subjectType()
+	 * @generated
+	 */
+	int MSUBJECT_TYPE = 228;
+
+	/**
+	 * The feature id for the '<em><b>Uml Dependency ID</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int MSUBJECT_TYPE__UML_DEPENDENCY_ID = 0;
+
+	/**
+	 * The feature id for the '<em><b>Object Creation</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int MSUBJECT_TYPE__OBJECT_CREATION = 1;
+
+	/**
+	 * The number of structural features of the '<em>Msubject Type</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int MSUBJECT_TYPE_FEATURE_COUNT = 2;
+
+	/**
+	 * The number of operations of the '<em>Msubject Type</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int MSUBJECT_TYPE_OPERATION_COUNT = 0;
+
+	/**
+	 * The meta object id for the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.ParentTypeImpl <em>Parent Type</em>}' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.ParentTypeImpl
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.UMLRpyPackageImpl#getParentType()
+	 * @generated
+	 */
+	int PARENT_TYPE = 235;
+
+	/**
+	 * The number of structural features of the '<em>Parent Type</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int PARENT_TYPE_FEATURE_COUNT = 0;
+
+	/**
+	 * The number of operations of the '<em>Parent Type</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int PARENT_TYPE_OPERATION_COUNT = 0;
+
+	/**
+	 * The meta object id for the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.TableDataDefinitionImpl <em>Table Data Definition</em>}' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.TableDataDefinitionImpl
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.UMLRpyPackageImpl#getTableDataDefinition()
+	 * @generated
+	 */
+	int TABLE_DATA_DEFINITION = 237;
+
+	/**
+	 * The feature id for the '<em><b>My Table</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int TABLE_DATA_DEFINITION__MY_TABLE = 0;
+
+	/**
+	 * The feature id for the '<em><b>Name</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int TABLE_DATA_DEFINITION__NAME = 1;
+
+	/**
+	 * The feature id for the '<em><b>Data Type</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int TABLE_DATA_DEFINITION__DATA_TYPE = 2;
+
+	/**
+	 * The feature id for the '<em><b>Column Name</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int TABLE_DATA_DEFINITION__COLUMN_NAME = 3;
+
+	/**
+	 * The feature id for the '<em><b>Model Element</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int TABLE_DATA_DEFINITION__MODEL_ELEMENT = 4;
+
+	/**
+	 * The number of structural features of the '<em>Table Data Definition</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int TABLE_DATA_DEFINITION_FEATURE_COUNT = 5;
+
+	/**
+	 * The number of operations of the '<em>Table Data Definition</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int TABLE_DATA_DEFINITION_OPERATION_COUNT = 0;
+
+	/**
+	 * The meta object id for the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.TargetTypeImpl <em>Target Type</em>}' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.TargetTypeImpl
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.UMLRpyPackageImpl#getTargetType()
+	 * @generated
+	 */
+	int TARGET_TYPE = 239;
+
+	/**
+	 * The number of structural features of the '<em>Target Type</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int TARGET_TYPE_FEATURE_COUNT = 0;
+
+	/**
+	 * The number of operations of the '<em>Target Type</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int TARGET_TYPE_OPERATION_COUNT = 0;
+
+	/**
+	 * The meta object id for the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.ToLinkTypeImpl <em>To Link Type</em>}' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.ToLinkTypeImpl
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.UMLRpyPackageImpl#getToLinkType()
+	 * @generated
+	 */
+	int TO_LINK_TYPE = 241;
+
+	/**
+	 * The feature id for the '<em><b>Implicit Class</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int TO_LINK_TYPE__IMPLICIT_CLASS = FROM_LINK_TYPE_FEATURE_COUNT + 0;
+
+	/**
+	 * The number of structural features of the '<em>To Link Type</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int TO_LINK_TYPE_FEATURE_COUNT = FROM_LINK_TYPE_FEATURE_COUNT + 1;
+
+	/**
+	 * The number of operations of the '<em>To Link Type</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int TO_LINK_TYPE_OPERATION_COUNT = FROM_LINK_TYPE_OPERATION_COUNT + 0;
+
+	/**
+	 * The meta object id for the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.TransitionsTypeImpl <em>Transitions Type</em>}' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.TransitionsTypeImpl
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.UMLRpyPackageImpl#getTransitionsType()
+	 * @generated
+	 */
+	int TRANSITIONS_TYPE = 242;
+
+	/**
+	 * The feature id for the '<em><b>Modified Time Weak</b></em>' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int TRANSITIONS_TYPE__MODIFIED_TIME_WEAK = 0;
+
+	/**
+	 * The feature id for the '<em><b>Static Reaction</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int TRANSITIONS_TYPE__STATIC_REACTION = 1;
+
+	/**
+	 * The feature id for the '<em><b>Its Target</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int TRANSITIONS_TYPE__ITS_TARGET = 2;
+
+	/**
+	 * The feature id for the '<em><b>Id</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int TRANSITIONS_TYPE__ID = 3;
+
+	/**
+	 * The feature id for the '<em><b>Code Update CG Time</b></em>' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int TRANSITIONS_TYPE__CODE_UPDATE_CG_TIME = 4;
+
+	/**
+	 * The feature id for the '<em><b>Requiremen Tracability Handle</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int TRANSITIONS_TYPE__REQUIREMEN_TRACABILITY_HANDLE = 5;
+
+	/**
+	 * The feature id for the '<em><b>Description</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int TRANSITIONS_TYPE__DESCRIPTION = 6;
+
+	/**
+	 * The feature id for the '<em><b>Its Label</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int TRANSITIONS_TYPE__ITS_LABEL = 7;
+
+	/**
+	 * The feature id for the '<em><b>Uml Dependency ID</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int TRANSITIONS_TYPE__UML_DEPENDENCY_ID = 8;
+
+	/**
+	 * The feature id for the '<em><b>My State</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int TRANSITIONS_TYPE__MY_STATE = 9;
+
+	/**
+	 * The feature id for the '<em><b>Object Creation</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int TRANSITIONS_TYPE__OBJECT_CREATION = 10;
+
+	/**
+	 * The feature id for the '<em><b>Name</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int TRANSITIONS_TYPE__NAME = 11;
+
+	/**
+	 * The number of structural features of the '<em>Transitions Type</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int TRANSITIONS_TYPE_FEATURE_COUNT = 12;
+
+	/**
+	 * The number of operations of the '<em>Transitions Type</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int TRANSITIONS_TYPE_OPERATION_COUNT = 0;
+
+	/**
+	 * The meta object id for the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.UnknownTypeImpl <em>Unknown Type</em>}' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.UnknownTypeImpl
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.UMLRpyPackageImpl#getUnknownType()
+	 * @generated
+	 */
+	int UNKNOWN_TYPE = 243;
+
+	/**
+	 * The number of structural features of the '<em>Unknown Type</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int UNKNOWN_TYPE_FEATURE_COUNT = 0;
+
+	/**
+	 * The number of operations of the '<em>Unknown Type</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int UNKNOWN_TYPE_OPERATION_COUNT = 0;
+
+	/**
+	 * The meta object id for the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.ValueTypeImpl <em>Value Type</em>}' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.ValueTypeImpl
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.UMLRpyPackageImpl#getValueType()
+	 * @generated
+	 */
+	int VALUE_TYPE = 244;
+
+	/**
+	 * The feature id for the '<em><b>Modified Time Weak</b></em>' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int VALUE_TYPE__MODIFIED_TIME_WEAK = 0;
+
+	/**
+	 * The feature id for the '<em><b>Id</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int VALUE_TYPE__ID = 1;
+
+	/**
+	 * The feature id for the '<em><b>My State</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int VALUE_TYPE__MY_STATE = 2;
+
+	/**
+	 * The feature id for the '<em><b>Name</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int VALUE_TYPE__NAME = 3;
+
+	/**
+	 * The number of structural features of the '<em>Value Type</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int VALUE_TYPE_FEATURE_COUNT = 4;
+
+	/**
+	 * The number of operations of the '<em>Value Type</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int VALUE_TYPE_OPERATION_COUNT = 0;
+
+
+	/**
+	 * Returns the meta object for class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.AssociationsType <em>Associations Type</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for class '<em>Associations Type</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.AssociationsType
+	 * @generated
+	 */
+	EClass getAssociationsType();
+
+	/**
+	 * Returns the meta object for class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CCollaborationChart <em>CCollaboration Chart</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for class '<em>CCollaboration Chart</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CCollaborationChart
+	 * @generated
+	 */
+	EClass getCCollaborationChart();
+
+	/**
+	 * Returns the meta object for the reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CCollaborationChart#getM_pModelObject <em>MpModel Object</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the reference '<em>MpModel Object</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CCollaborationChart#getM_pModelObject()
+	 * @see #getCCollaborationChart()
+	 * @generated
+	 */
+	EReference getCCollaborationChart_M_pModelObject();
+
+	/**
+	 * Returns the meta object for the reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CCollaborationChart#getM_pRoot <em>MpRoot</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the reference '<em>MpRoot</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CCollaborationChart#getM_pRoot()
+	 * @see #getCCollaborationChart()
+	 * @generated
+	 */
+	EReference getCCollaborationChart_M_pRoot();
+
+	/**
+	 * Returns the meta object for class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIActionState <em>CGI Action State</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for class '<em>CGI Action State</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIActionState
+	 * @generated
+	 */
+	EClass getCGIActionState();
+
+	/**
+	 * Returns the meta object for the containment reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIActionState#getProperties <em>Properties</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference '<em>Properties</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIActionState#getProperties()
+	 * @see #getCGIActionState()
+	 * @generated
+	 */
+	EReference getCGIActionState_Properties();
+
+	/**
+	 * Returns the meta object for the reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIActionState#getM_pModelObject <em>MpModel Object</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the reference '<em>MpModel Object</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIActionState#getM_pModelObject()
+	 * @see #getCGIActionState()
+	 * @generated
+	 */
+	EReference getCGIActionState_M_pModelObject();
+
+	/**
+	 * Returns the meta object for the reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIActionState#getM_pParent <em>MpParent</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the reference '<em>MpParent</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIActionState#getM_pParent()
+	 * @see #getCGIActionState()
+	 * @generated
+	 */
+	EReference getCGIActionState_M_pParent();
+
+	/**
+	 * Returns the meta object for the attribute list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIActionState#getM_transform <em>Mtransform</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute list '<em>Mtransform</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIActionState#getM_transform()
+	 * @see #getCGIActionState()
+	 * @generated
+	 */
+	EAttribute getCGIActionState_M_transform();
+
+	/**
+	 * Returns the meta object for the containment reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIActionState#getM_AdditionalLabel <em>MAdditional Label</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference '<em>MAdditional Label</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIActionState#getM_AdditionalLabel()
+	 * @see #getCGIActionState()
+	 * @generated
+	 */
+	EReference getCGIActionState_M_AdditionalLabel();
+
+	/**
+	 * Returns the meta object for the attribute list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIActionState#getM_polygon <em>Mpolygon</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute list '<em>Mpolygon</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIActionState#getM_polygon()
+	 * @see #getCGIActionState()
+	 * @generated
+	 */
+	EAttribute getCGIActionState_M_polygon();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIActionState#getM_nNameFormat <em>MnName Format</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>MnName Format</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIActionState#getM_nNameFormat()
+	 * @see #getCGIActionState()
+	 * @generated
+	 */
+	EAttribute getCGIActionState_M_nNameFormat();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIActionState#getM_nIsNameFormat <em>MnIs Name Format</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>MnIs Name Format</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIActionState#getM_nIsNameFormat()
+	 * @see #getCGIActionState()
+	 * @generated
+	 */
+	EAttribute getCGIActionState_M_nIsNameFormat();
+
+	/**
+	 * Returns the meta object for the reference list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIActionState#getCompartments <em>Compartments</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the reference list '<em>Compartments</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIActionState#getCompartments()
+	 * @see #getCGIActionState()
+	 * @generated
+	 */
+	EReference getCGIActionState_Compartments();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIActionState#getNAndLineCount <em>NAnd Line Count</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>NAnd Line Count</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIActionState#getNAndLineCount()
+	 * @see #getCGIActionState()
+	 * @generated
+	 */
+	EAttribute getCGIActionState_NAndLineCount();
+
+	/**
+	 * Returns the meta object for the reference list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIActionState#getM_pInheritsFrom <em>MpInherits From</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the reference list '<em>MpInherits From</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIActionState#getM_pInheritsFrom()
+	 * @see #getCGIActionState()
+	 * @generated
+	 */
+	EReference getCGIActionState_M_pInheritsFrom();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIActionState#getM_nInheritanceMask <em>MnInheritance Mask</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>MnInheritance Mask</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIActionState#getM_nInheritanceMask()
+	 * @see #getCGIActionState()
+	 * @generated
+	 */
+	EAttribute getCGIActionState_M_nInheritanceMask();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIActionState#getM_pDefaultComponentRelation <em>MpDefault Component Relation</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>MpDefault Component Relation</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIActionState#getM_pDefaultComponentRelation()
+	 * @see #getCGIActionState()
+	 * @generated
+	 */
+	EAttribute getCGIActionState_M_pDefaultComponentRelation();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIActionState#getM_NameDisplayMode <em>MName Display Mode</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>MName Display Mode</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIActionState#getM_NameDisplayMode()
+	 * @see #getCGIActionState()
+	 * @generated
+	 */
+	EAttribute getCGIActionState_M_NameDisplayMode();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIActionState#getM_ActDescLablDiaplayMode <em>MAct Desc Labl Diaplay Mode</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>MAct Desc Labl Diaplay Mode</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIActionState#getM_ActDescLablDiaplayMode()
+	 * @see #getCGIActionState()
+	 * @generated
+	 */
+	EAttribute getCGIActionState_M_ActDescLablDiaplayMode();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIActionState#getM_moveAndLineTimeStamp <em>Mmove And Line Time Stamp</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Mmove And Line Time Stamp</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIActionState#getM_moveAndLineTimeStamp()
+	 * @see #getCGIActionState()
+	 * @generated
+	 */
+	EAttribute getCGIActionState_M_moveAndLineTimeStamp();
+
+	/**
+	 * Returns the meta object for class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIActiveX <em>CGI Active X</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for class '<em>CGI Active X</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIActiveX
+	 * @generated
+	 */
+	EClass getCGIActiveX();
+
+	/**
+	 * Returns the meta object for the containment reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIActiveX#getProperties <em>Properties</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference '<em>Properties</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIActiveX#getProperties()
+	 * @see #getCGIActiveX()
+	 * @generated
+	 */
+	EReference getCGIActiveX_Properties();
+
+	/**
+	 * Returns the meta object for the reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIActiveX#getM_pModelObject <em>MpModel Object</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the reference '<em>MpModel Object</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIActiveX#getM_pModelObject()
+	 * @see #getCGIActiveX()
+	 * @generated
+	 */
+	EReference getCGIActiveX_M_pModelObject();
+
+	/**
+	 * Returns the meta object for the reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIActiveX#getM_pParent <em>MpParent</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the reference '<em>MpParent</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIActiveX#getM_pParent()
+	 * @see #getCGIActiveX()
+	 * @generated
+	 */
+	EReference getCGIActiveX_M_pParent();
+
+	/**
+	 * Returns the meta object for the attribute list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIActiveX#getM_transform <em>Mtransform</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute list '<em>Mtransform</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIActiveX#getM_transform()
+	 * @see #getCGIActiveX()
+	 * @generated
+	 */
+	EAttribute getCGIActiveX_M_transform();
+
+	/**
+	 * Returns the meta object for the attribute list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIActiveX#getM_polygon <em>Mpolygon</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute list '<em>Mpolygon</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIActiveX#getM_polygon()
+	 * @see #getCGIActiveX()
+	 * @generated
+	 */
+	EAttribute getCGIActiveX_M_polygon();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIActiveX#getM_nNameFormat <em>MnName Format</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>MnName Format</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIActiveX#getM_nNameFormat()
+	 * @see #getCGIActiveX()
+	 * @generated
+	 */
+	EAttribute getCGIActiveX_M_nNameFormat();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIActiveX#getM_nIsNameFormat <em>MnIs Name Format</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>MnIs Name Format</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIActiveX#getM_nIsNameFormat()
+	 * @see #getCGIActiveX()
+	 * @generated
+	 */
+	EAttribute getCGIActiveX_M_nIsNameFormat();
+
+	/**
+	 * Returns the meta object for the reference list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIActiveX#getCompartments <em>Compartments</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the reference list '<em>Compartments</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIActiveX#getCompartments()
+	 * @see #getCGIActiveX()
+	 * @generated
+	 */
+	EReference getCGIActiveX_Compartments();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIActiveX#getM_csModelObjPath <em>Mcs Model Obj Path</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Mcs Model Obj Path</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIActiveX#getM_csModelObjPath()
+	 * @see #getCGIActiveX()
+	 * @generated
+	 */
+	EAttribute getCGIActiveX_M_csModelObjPath();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIActiveX#getM_csName <em>Mcs Name</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Mcs Name</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIActiveX#getM_csName()
+	 * @see #getCGIActiveX()
+	 * @generated
+	 */
+	EAttribute getCGIActiveX_M_csName();
+
+	/**
+	 * Returns the meta object for the reference list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIActiveX#getM_PartsArray <em>MParts Array</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the reference list '<em>MParts Array</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIActiveX#getM_PartsArray()
+	 * @see #getCGIActiveX()
+	 * @generated
+	 */
+	EReference getCGIActiveX_M_PartsArray();
+
+	/**
+	 * Returns the meta object for class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIAnchor <em>CGI Anchor</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for class '<em>CGI Anchor</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIAnchor
+	 * @generated
+	 */
+	EClass getCGIAnchor();
+
+	/**
+	 * Returns the meta object for the reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIAnchor#getM_pModelObject <em>MpModel Object</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the reference '<em>MpModel Object</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIAnchor#getM_pModelObject()
+	 * @see #getCGIAnchor()
+	 * @generated
+	 */
+	EReference getCGIAnchor_M_pModelObject();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIAnchor#getM_pParent <em>MpParent</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>MpParent</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIAnchor#getM_pParent()
+	 * @see #getCGIAnchor()
+	 * @generated
+	 */
+	EAttribute getCGIAnchor_M_pParent();
+
+	/**
+	 * Returns the meta object for the reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIAnchor#getM_pSource <em>MpSource</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the reference '<em>MpSource</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIAnchor#getM_pSource()
+	 * @see #getCGIAnchor()
+	 * @generated
+	 */
+	EReference getCGIAnchor_M_pSource();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIAnchor#getM_sourceType <em>Msource Type</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Msource Type</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIAnchor#getM_sourceType()
+	 * @see #getCGIAnchor()
+	 * @generated
+	 */
+	EAttribute getCGIAnchor_M_sourceType();
+
+	/**
+	 * Returns the meta object for the reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIAnchor#getM_pTarget <em>MpTarget</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the reference '<em>MpTarget</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIAnchor#getM_pTarget()
+	 * @see #getCGIAnchor()
+	 * @generated
+	 */
+	EReference getCGIAnchor_M_pTarget();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIAnchor#getM_targetType <em>Mtarget Type</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Mtarget Type</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIAnchor#getM_targetType()
+	 * @see #getCGIAnchor()
+	 * @generated
+	 */
+	EAttribute getCGIAnchor_M_targetType();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIAnchor#getM_direction <em>Mdirection</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Mdirection</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIAnchor#getM_direction()
+	 * @see #getCGIAnchor()
+	 * @generated
+	 */
+	EAttribute getCGIAnchor_M_direction();
+
+	/**
+	 * Returns the meta object for the containment reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIAnchor#getM_rpn <em>Mrpn</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference '<em>Mrpn</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIAnchor#getM_rpn()
+	 * @see #getCGIAnchor()
+	 * @generated
+	 */
+	EReference getCGIAnchor_M_rpn();
+
+	/**
+	 * Returns the meta object for the attribute list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIAnchor#getM_anglePoint1 <em>Mangle Point1</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute list '<em>Mangle Point1</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIAnchor#getM_anglePoint1()
+	 * @see #getCGIAnchor()
+	 * @generated
+	 */
+	EAttribute getCGIAnchor_M_anglePoint1();
+
+	/**
+	 * Returns the meta object for the attribute list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIAnchor#getM_anglePoint2 <em>Mangle Point2</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute list '<em>Mangle Point2</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIAnchor#getM_anglePoint2()
+	 * @see #getCGIAnchor()
+	 * @generated
+	 */
+	EAttribute getCGIAnchor_M_anglePoint2();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIAnchor#getM_line_style <em>Mline style</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Mline style</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIAnchor#getM_line_style()
+	 * @see #getCGIAnchor()
+	 * @generated
+	 */
+	EAttribute getCGIAnchor_M_line_style();
+
+	/**
+	 * Returns the meta object for the attribute list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIAnchor#getM_SourcePort <em>MSource Port</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute list '<em>MSource Port</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIAnchor#getM_SourcePort()
+	 * @see #getCGIAnchor()
+	 * @generated
+	 */
+	EAttribute getCGIAnchor_M_SourcePort();
+
+	/**
+	 * Returns the meta object for the attribute list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIAnchor#getM_TargetPort <em>MTarget Port</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute list '<em>MTarget Port</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIAnchor#getM_TargetPort()
+	 * @see #getCGIAnchor()
+	 * @generated
+	 */
+	EAttribute getCGIAnchor_M_TargetPort();
+
+	/**
+	 * Returns the meta object for the containment reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIAnchor#getProperties <em>Properties</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference '<em>Properties</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIAnchor#getProperties()
+	 * @see #getCGIAnchor()
+	 * @generated
+	 */
+	EReference getCGIAnchor_Properties();
+
+	/**
+	 * Returns the meta object for the containment reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIAnchor#getM_color <em>Mcolor</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference '<em>Mcolor</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIAnchor#getM_color()
+	 * @see #getCGIAnchor()
+	 * @generated
+	 */
+	EReference getCGIAnchor_M_color();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIAnchor#getM_lineWidth <em>Mline Width</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Mline Width</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIAnchor#getM_lineWidth()
+	 * @see #getCGIAnchor()
+	 * @generated
+	 */
+	EAttribute getCGIAnchor_M_lineWidth();
+
+	/**
+	 * Returns the meta object for the attribute list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIAnchor#getM_arrow <em>Marrow</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute list '<em>Marrow</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIAnchor#getM_arrow()
+	 * @see #getCGIAnchor()
+	 * @generated
+	 */
+	EAttribute getCGIAnchor_M_arrow();
+
+	/**
+	 * Returns the meta object for class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIAnnotation <em>CGI Annotation</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for class '<em>CGI Annotation</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIAnnotation
+	 * @generated
+	 */
+	EClass getCGIAnnotation();
+
+	/**
+	 * Returns the meta object for the containment reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIAnnotation#getProperties <em>Properties</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference '<em>Properties</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIAnnotation#getProperties()
+	 * @see #getCGIAnnotation()
+	 * @generated
+	 */
+	EReference getCGIAnnotation_Properties();
+
+	/**
+	 * Returns the meta object for the reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIAnnotation#getM_pParent <em>MpParent</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the reference '<em>MpParent</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIAnnotation#getM_pParent()
+	 * @see #getCGIAnnotation()
+	 * @generated
+	 */
+	EReference getCGIAnnotation_M_pParent();
+
+	/**
+	 * Returns the meta object for the attribute list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIAnnotation#getM_transform <em>Mtransform</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute list '<em>Mtransform</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIAnnotation#getM_transform()
+	 * @see #getCGIAnnotation()
+	 * @generated
+	 */
+	EAttribute getCGIAnnotation_M_transform();
+
+	/**
+	 * Returns the meta object for the containment reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIAnnotation#getM_AdditionalLabel <em>MAdditional Label</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference '<em>MAdditional Label</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIAnnotation#getM_AdditionalLabel()
+	 * @see #getCGIAnnotation()
+	 * @generated
+	 */
+	EReference getCGIAnnotation_M_AdditionalLabel();
+
+	/**
+	 * Returns the meta object for the attribute list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIAnnotation#getM_polygon <em>Mpolygon</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute list '<em>Mpolygon</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIAnnotation#getM_polygon()
+	 * @see #getCGIAnnotation()
+	 * @generated
+	 */
+	EAttribute getCGIAnnotation_M_polygon();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIAnnotation#getM_nNameFormat <em>MnName Format</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>MnName Format</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIAnnotation#getM_nNameFormat()
+	 * @see #getCGIAnnotation()
+	 * @generated
+	 */
+	EAttribute getCGIAnnotation_M_nNameFormat();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIAnnotation#getM_nIsNameFormat <em>MnIs Name Format</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>MnIs Name Format</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIAnnotation#getM_nIsNameFormat()
+	 * @see #getCGIAnnotation()
+	 * @generated
+	 */
+	EAttribute getCGIAnnotation_M_nIsNameFormat();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIAnnotation#getITempdisplayTextFlag <em>ITempdisplay Text Flag</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>ITempdisplay Text Flag</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIAnnotation#getITempdisplayTextFlag()
+	 * @see #getCGIAnnotation()
+	 * @generated
+	 */
+	EAttribute getCGIAnnotation_ITempdisplayTextFlag();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIAnnotation#getM_bIsBoxStyle <em>MbIs Box Style</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>MbIs Box Style</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIAnnotation#getM_bIsBoxStyle()
+	 * @see #getCGIAnnotation()
+	 * @generated
+	 */
+	EAttribute getCGIAnnotation_M_bIsBoxStyle();
+
+	/**
+	 * Returns the meta object for the reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIAnnotation#getM_pModelObject <em>MpModel Object</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the reference '<em>MpModel Object</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIAnnotation#getM_pModelObject()
+	 * @see #getCGIAnnotation()
+	 * @generated
+	 */
+	EReference getCGIAnnotation_M_pModelObject();
+
+	/**
+	 * Returns the meta object for the containment reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIAnnotation#getM_color <em>Mcolor</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference '<em>Mcolor</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIAnnotation#getM_color()
+	 * @see #getCGIAnnotation()
+	 * @generated
+	 */
+	EReference getCGIAnnotation_M_color();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIAnnotation#getM_lineWidth <em>Mline Width</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Mline Width</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIAnnotation#getM_lineWidth()
+	 * @see #getCGIAnnotation()
+	 * @generated
+	 */
+	EAttribute getCGIAnnotation_M_lineWidth();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIAnnotation#getFrameset <em>Frameset</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Frameset</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIAnnotation#getFrameset()
+	 * @see #getCGIAnnotation()
+	 * @generated
+	 */
+	EAttribute getCGIAnnotation_Frameset();
+
+	/**
+	 * Returns the meta object for the containment reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIAnnotation#getCompartments <em>Compartments</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference '<em>Compartments</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIAnnotation#getCompartments()
+	 * @see #getCGIAnnotation()
+	 * @generated
+	 */
+	EReference getCGIAnnotation_Compartments();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIAnnotation#getM_bIsStructured <em>MbIs Structured</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>MbIs Structured</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIAnnotation#getM_bIsStructured()
+	 * @see #getCGIAnnotation()
+	 * @generated
+	 */
+	EAttribute getCGIAnnotation_M_bIsStructured();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIAnnotation#getM_bFramesetModified <em>MbFrameset Modified</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>MbFrameset Modified</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIAnnotation#getM_bFramesetModified()
+	 * @see #getCGIAnnotation()
+	 * @generated
+	 */
+	EAttribute getCGIAnnotation_M_bFramesetModified();
+
+	/**
+	 * Returns the meta object for class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIArrow <em>CGI Arrow</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for class '<em>CGI Arrow</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIArrow
+	 * @generated
+	 */
+	EClass getCGIArrow();
+
+	/**
+	 * Returns the meta object for the reference list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIArrow#getM_pModelObject <em>MpModel Object</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the reference list '<em>MpModel Object</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIArrow#getM_pModelObject()
+	 * @see #getCGIArrow()
+	 * @generated
+	 */
+	EReference getCGIArrow_M_pModelObject();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIArrow#getM_pParent <em>MpParent</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>MpParent</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIArrow#getM_pParent()
+	 * @see #getCGIArrow()
+	 * @generated
+	 */
+	EAttribute getCGIArrow_M_pParent();
+
+	/**
+	 * Returns the meta object for the reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIArrow#getM_pSource <em>MpSource</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the reference '<em>MpSource</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIArrow#getM_pSource()
+	 * @see #getCGIArrow()
+	 * @generated
+	 */
+	EReference getCGIArrow_M_pSource();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIArrow#getM_sourceType <em>Msource Type</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Msource Type</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIArrow#getM_sourceType()
+	 * @see #getCGIArrow()
+	 * @generated
+	 */
+	EAttribute getCGIArrow_M_sourceType();
+
+	/**
+	 * Returns the meta object for the reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIArrow#getM_pTarget <em>MpTarget</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the reference '<em>MpTarget</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIArrow#getM_pTarget()
+	 * @see #getCGIArrow()
+	 * @generated
+	 */
+	EReference getCGIArrow_M_pTarget();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIArrow#getM_targetType <em>Mtarget Type</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Mtarget Type</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIArrow#getM_targetType()
+	 * @see #getCGIArrow()
+	 * @generated
+	 */
+	EAttribute getCGIArrow_M_targetType();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIArrow#getM_direction <em>Mdirection</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Mdirection</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIArrow#getM_direction()
+	 * @see #getCGIArrow()
+	 * @generated
+	 */
+	EAttribute getCGIArrow_M_direction();
+
+	/**
+	 * Returns the meta object for the containment reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIArrow#getM_rpn <em>Mrpn</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference '<em>Mrpn</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIArrow#getM_rpn()
+	 * @see #getCGIArrow()
+	 * @generated
+	 */
+	EReference getCGIArrow_M_rpn();
+
+	/**
+	 * Returns the meta object for the attribute list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIArrow#getM_anglePoint1 <em>Mangle Point1</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute list '<em>Mangle Point1</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIArrow#getM_anglePoint1()
+	 * @see #getCGIArrow()
+	 * @generated
+	 */
+	EAttribute getCGIArrow_M_anglePoint1();
+
+	/**
+	 * Returns the meta object for the attribute list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIArrow#getM_anglePoint2 <em>Mangle Point2</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute list '<em>Mangle Point2</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIArrow#getM_anglePoint2()
+	 * @see #getCGIArrow()
+	 * @generated
+	 */
+	EAttribute getCGIArrow_M_anglePoint2();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIArrow#getM_line_style <em>Mline style</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Mline style</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIArrow#getM_line_style()
+	 * @see #getCGIArrow()
+	 * @generated
+	 */
+	EAttribute getCGIArrow_M_line_style();
+
+	/**
+	 * Returns the meta object for the attribute list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIArrow#getM_SourcePort <em>MSource Port</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute list '<em>MSource Port</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIArrow#getM_SourcePort()
+	 * @see #getCGIArrow()
+	 * @generated
+	 */
+	EAttribute getCGIArrow_M_SourcePort();
+
+	/**
+	 * Returns the meta object for the attribute list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIArrow#getM_TargetPort <em>MTarget Port</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute list '<em>MTarget Port</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIArrow#getM_TargetPort()
+	 * @see #getCGIArrow()
+	 * @generated
+	 */
+	EAttribute getCGIArrow_M_TargetPort();
+
+	/**
+	 * Returns the meta object for class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIAssociationEnd <em>CGI Association End</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for class '<em>CGI Association End</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIAssociationEnd
+	 * @generated
+	 */
+	EClass getCGIAssociationEnd();
+
+	/**
+	 * Returns the meta object for the containment reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIAssociationEnd#getProperties <em>Properties</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference '<em>Properties</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIAssociationEnd#getProperties()
+	 * @see #getCGIAssociationEnd()
+	 * @generated
+	 */
+	EReference getCGIAssociationEnd_Properties();
+
+	/**
+	 * Returns the meta object for the reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIAssociationEnd#getM_pModelObject <em>MpModel Object</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the reference '<em>MpModel Object</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIAssociationEnd#getM_pModelObject()
+	 * @see #getCGIAssociationEnd()
+	 * @generated
+	 */
+	EReference getCGIAssociationEnd_M_pModelObject();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIAssociationEnd#getM_pParent <em>MpParent</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>MpParent</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIAssociationEnd#getM_pParent()
+	 * @see #getCGIAssociationEnd()
+	 * @generated
+	 */
+	EAttribute getCGIAssociationEnd_M_pParent();
+
+	/**
+	 * Returns the meta object for the reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIAssociationEnd#getM_pSource <em>MpSource</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the reference '<em>MpSource</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIAssociationEnd#getM_pSource()
+	 * @see #getCGIAssociationEnd()
+	 * @generated
+	 */
+	EReference getCGIAssociationEnd_M_pSource();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIAssociationEnd#getM_sourceType <em>Msource Type</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Msource Type</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIAssociationEnd#getM_sourceType()
+	 * @see #getCGIAssociationEnd()
+	 * @generated
+	 */
+	EAttribute getCGIAssociationEnd_M_sourceType();
+
+	/**
+	 * Returns the meta object for the reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIAssociationEnd#getM_pTarget <em>MpTarget</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the reference '<em>MpTarget</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIAssociationEnd#getM_pTarget()
+	 * @see #getCGIAssociationEnd()
+	 * @generated
+	 */
+	EReference getCGIAssociationEnd_M_pTarget();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIAssociationEnd#getM_targetType <em>Mtarget Type</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Mtarget Type</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIAssociationEnd#getM_targetType()
+	 * @see #getCGIAssociationEnd()
+	 * @generated
+	 */
+	EAttribute getCGIAssociationEnd_M_targetType();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIAssociationEnd#getM_direction <em>Mdirection</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Mdirection</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIAssociationEnd#getM_direction()
+	 * @see #getCGIAssociationEnd()
+	 * @generated
+	 */
+	EAttribute getCGIAssociationEnd_M_direction();
+
+	/**
+	 * Returns the meta object for the containment reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIAssociationEnd#getM_rpn <em>Mrpn</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference '<em>Mrpn</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIAssociationEnd#getM_rpn()
+	 * @see #getCGIAssociationEnd()
+	 * @generated
+	 */
+	EReference getCGIAssociationEnd_M_rpn();
+
+	/**
+	 * Returns the meta object for the attribute list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIAssociationEnd#getM_anglePoint1 <em>Mangle Point1</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute list '<em>Mangle Point1</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIAssociationEnd#getM_anglePoint1()
+	 * @see #getCGIAssociationEnd()
+	 * @generated
+	 */
+	EAttribute getCGIAssociationEnd_M_anglePoint1();
+
+	/**
+	 * Returns the meta object for the attribute list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIAssociationEnd#getM_anglePoint2 <em>Mangle Point2</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute list '<em>Mangle Point2</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIAssociationEnd#getM_anglePoint2()
+	 * @see #getCGIAssociationEnd()
+	 * @generated
+	 */
+	EAttribute getCGIAssociationEnd_M_anglePoint2();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIAssociationEnd#getM_line_style <em>Mline style</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Mline style</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIAssociationEnd#getM_line_style()
+	 * @see #getCGIAssociationEnd()
+	 * @generated
+	 */
+	EAttribute getCGIAssociationEnd_M_line_style();
+
+	/**
+	 * Returns the meta object for the attribute list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIAssociationEnd#getM_SourcePort <em>MSource Port</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute list '<em>MSource Port</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIAssociationEnd#getM_SourcePort()
+	 * @see #getCGIAssociationEnd()
+	 * @generated
+	 */
+	EAttribute getCGIAssociationEnd_M_SourcePort();
+
+	/**
+	 * Returns the meta object for the attribute list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIAssociationEnd#getM_TargetPort <em>MTarget Port</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute list '<em>MTarget Port</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIAssociationEnd#getM_TargetPort()
+	 * @see #getCGIAssociationEnd()
+	 * @generated
+	 */
+	EAttribute getCGIAssociationEnd_M_TargetPort();
+
+	/**
+	 * Returns the meta object for the containment reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIAssociationEnd#getM_pInverseModelObject <em>MpInverse Model Object</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference '<em>MpInverse Model Object</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIAssociationEnd#getM_pInverseModelObject()
+	 * @see #getCGIAssociationEnd()
+	 * @generated
+	 */
+	EReference getCGIAssociationEnd_M_pInverseModelObject();
+
+	/**
+	 * Returns the meta object for the containment reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIAssociationEnd#getM_pInstance <em>MpInstance</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference '<em>MpInstance</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIAssociationEnd#getM_pInstance()
+	 * @see #getCGIAssociationEnd()
+	 * @generated
+	 */
+	EReference getCGIAssociationEnd_M_pInstance();
+
+	/**
+	 * Returns the meta object for the containment reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIAssociationEnd#getM_pInverseInstance <em>MpInverse Instance</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference '<em>MpInverse Instance</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIAssociationEnd#getM_pInverseInstance()
+	 * @see #getCGIAssociationEnd()
+	 * @generated
+	 */
+	EReference getCGIAssociationEnd_M_pInverseInstance();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIAssociationEnd#getM_bShowSourceMultiplicity <em>MbShow Source Multiplicity</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>MbShow Source Multiplicity</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIAssociationEnd#getM_bShowSourceMultiplicity()
+	 * @see #getCGIAssociationEnd()
+	 * @generated
+	 */
+	EAttribute getCGIAssociationEnd_M_bShowSourceMultiplicity();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIAssociationEnd#getM_bShowSourceRole <em>MbShow Source Role</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>MbShow Source Role</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIAssociationEnd#getM_bShowSourceRole()
+	 * @see #getCGIAssociationEnd()
+	 * @generated
+	 */
+	EAttribute getCGIAssociationEnd_M_bShowSourceRole();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIAssociationEnd#getM_bShowTargetMultiplicity <em>MbShow Target Multiplicity</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>MbShow Target Multiplicity</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIAssociationEnd#getM_bShowTargetMultiplicity()
+	 * @see #getCGIAssociationEnd()
+	 * @generated
+	 */
+	EAttribute getCGIAssociationEnd_M_bShowTargetMultiplicity();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIAssociationEnd#getM_bShowTargetRole <em>MbShow Target Role</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>MbShow Target Role</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIAssociationEnd#getM_bShowTargetRole()
+	 * @see #getCGIAssociationEnd()
+	 * @generated
+	 */
+	EAttribute getCGIAssociationEnd_M_bShowTargetRole();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIAssociationEnd#getM_bShowLinkName <em>MbShow Link Name</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>MbShow Link Name</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIAssociationEnd#getM_bShowLinkName()
+	 * @see #getCGIAssociationEnd()
+	 * @generated
+	 */
+	EAttribute getCGIAssociationEnd_M_bShowLinkName();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIAssociationEnd#getM_bShowSpecificType <em>MbShow Specific Type</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>MbShow Specific Type</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIAssociationEnd#getM_bShowSpecificType()
+	 * @see #getCGIAssociationEnd()
+	 * @generated
+	 */
+	EAttribute getCGIAssociationEnd_M_bShowSpecificType();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIAssociationEnd#getM_bInstance <em>MbInstance</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>MbInstance</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIAssociationEnd#getM_bInstance()
+	 * @see #getCGIAssociationEnd()
+	 * @generated
+	 */
+	EAttribute getCGIAssociationEnd_M_bInstance();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIAssociationEnd#getM_bShowQualifier1 <em>MbShow Qualifier1</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>MbShow Qualifier1</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIAssociationEnd#getM_bShowQualifier1()
+	 * @see #getCGIAssociationEnd()
+	 * @generated
+	 */
+	EAttribute getCGIAssociationEnd_M_bShowQualifier1();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIAssociationEnd#getM_bShowQualifier2 <em>MbShow Qualifier2</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>MbShow Qualifier2</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIAssociationEnd#getM_bShowQualifier2()
+	 * @see #getCGIAssociationEnd()
+	 * @generated
+	 */
+	EAttribute getCGIAssociationEnd_M_bShowQualifier2();
+
+	/**
+	 * Returns the meta object for the containment reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIAssociationEnd#getM_sourceRole <em>Msource Role</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference '<em>Msource Role</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIAssociationEnd#getM_sourceRole()
+	 * @see #getCGIAssociationEnd()
+	 * @generated
+	 */
+	EReference getCGIAssociationEnd_M_sourceRole();
+
+	/**
+	 * Returns the meta object for the containment reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIAssociationEnd#getM_targetRole <em>Mtarget Role</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference '<em>Mtarget Role</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIAssociationEnd#getM_targetRole()
+	 * @see #getCGIAssociationEnd()
+	 * @generated
+	 */
+	EReference getCGIAssociationEnd_M_targetRole();
+
+	/**
+	 * Returns the meta object for the containment reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIAssociationEnd#getM_sourceMultiplicity <em>Msource Multiplicity</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference '<em>Msource Multiplicity</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIAssociationEnd#getM_sourceMultiplicity()
+	 * @see #getCGIAssociationEnd()
+	 * @generated
+	 */
+	EReference getCGIAssociationEnd_M_sourceMultiplicity();
+
+	/**
+	 * Returns the meta object for the containment reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIAssociationEnd#getM_targetMultiplicity <em>Mtarget Multiplicity</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference '<em>Mtarget Multiplicity</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIAssociationEnd#getM_targetMultiplicity()
+	 * @see #getCGIAssociationEnd()
+	 * @generated
+	 */
+	EReference getCGIAssociationEnd_M_targetMultiplicity();
+
+	/**
+	 * Returns the meta object for the containment reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIAssociationEnd#getM_sourceQualifier <em>Msource Qualifier</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference '<em>Msource Qualifier</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIAssociationEnd#getM_sourceQualifier()
+	 * @see #getCGIAssociationEnd()
+	 * @generated
+	 */
+	EReference getCGIAssociationEnd_M_sourceQualifier();
+
+	/**
+	 * Returns the meta object for the containment reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIAssociationEnd#getM_targetQualifier <em>Mtarget Qualifier</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference '<em>Mtarget Qualifier</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIAssociationEnd#getM_targetQualifier()
+	 * @see #getCGIAssociationEnd()
+	 * @generated
+	 */
+	EReference getCGIAssociationEnd_M_targetQualifier();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIAssociationEnd#getM_specificType <em>Mspecific Type</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Mspecific Type</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIAssociationEnd#getM_specificType()
+	 * @see #getCGIAssociationEnd()
+	 * @generated
+	 */
+	EAttribute getCGIAssociationEnd_M_specificType();
+
+	/**
+	 * Returns the meta object for the attribute list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIAssociationEnd#getM_arrow <em>Marrow</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute list '<em>Marrow</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIAssociationEnd#getM_arrow()
+	 * @see #getCGIAssociationEnd()
+	 * @generated
+	 */
+	EAttribute getCGIAssociationEnd_M_arrow();
+
+	/**
+	 * Returns the meta object for class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIAssociationRole <em>CGI Association Role</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for class '<em>CGI Association Role</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIAssociationRole
+	 * @generated
+	 */
+	EClass getCGIAssociationRole();
+
+	/**
+	 * Returns the meta object for the reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIAssociationRole#getM_pModelObject <em>MpModel Object</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the reference '<em>MpModel Object</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIAssociationRole#getM_pModelObject()
+	 * @see #getCGIAssociationRole()
+	 * @generated
+	 */
+	EReference getCGIAssociationRole_M_pModelObject();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIAssociationRole#getM_pParent <em>MpParent</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>MpParent</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIAssociationRole#getM_pParent()
+	 * @see #getCGIAssociationRole()
+	 * @generated
+	 */
+	EAttribute getCGIAssociationRole_M_pParent();
+
+	/**
+	 * Returns the meta object for the reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIAssociationRole#getM_pSource <em>MpSource</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the reference '<em>MpSource</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIAssociationRole#getM_pSource()
+	 * @see #getCGIAssociationRole()
+	 * @generated
+	 */
+	EReference getCGIAssociationRole_M_pSource();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIAssociationRole#getM_sourceType <em>Msource Type</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Msource Type</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIAssociationRole#getM_sourceType()
+	 * @see #getCGIAssociationRole()
+	 * @generated
+	 */
+	EAttribute getCGIAssociationRole_M_sourceType();
+
+	/**
+	 * Returns the meta object for the reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIAssociationRole#getM_pTarget <em>MpTarget</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the reference '<em>MpTarget</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIAssociationRole#getM_pTarget()
+	 * @see #getCGIAssociationRole()
+	 * @generated
+	 */
+	EReference getCGIAssociationRole_M_pTarget();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIAssociationRole#getM_targetType <em>Mtarget Type</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Mtarget Type</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIAssociationRole#getM_targetType()
+	 * @see #getCGIAssociationRole()
+	 * @generated
+	 */
+	EAttribute getCGIAssociationRole_M_targetType();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIAssociationRole#getM_direction <em>Mdirection</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Mdirection</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIAssociationRole#getM_direction()
+	 * @see #getCGIAssociationRole()
+	 * @generated
+	 */
+	EAttribute getCGIAssociationRole_M_direction();
+
+	/**
+	 * Returns the meta object for the containment reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIAssociationRole#getM_rpn <em>Mrpn</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference '<em>Mrpn</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIAssociationRole#getM_rpn()
+	 * @see #getCGIAssociationRole()
+	 * @generated
+	 */
+	EReference getCGIAssociationRole_M_rpn();
+
+	/**
+	 * Returns the meta object for the attribute list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIAssociationRole#getM_anglePoint1 <em>Mangle Point1</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute list '<em>Mangle Point1</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIAssociationRole#getM_anglePoint1()
+	 * @see #getCGIAssociationRole()
+	 * @generated
+	 */
+	EAttribute getCGIAssociationRole_M_anglePoint1();
+
+	/**
+	 * Returns the meta object for the attribute list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIAssociationRole#getM_anglePoint2 <em>Mangle Point2</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute list '<em>Mangle Point2</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIAssociationRole#getM_anglePoint2()
+	 * @see #getCGIAssociationRole()
+	 * @generated
+	 */
+	EAttribute getCGIAssociationRole_M_anglePoint2();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIAssociationRole#getM_line_style <em>Mline style</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Mline style</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIAssociationRole#getM_line_style()
+	 * @see #getCGIAssociationRole()
+	 * @generated
+	 */
+	EAttribute getCGIAssociationRole_M_line_style();
+
+	/**
+	 * Returns the meta object for the attribute list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIAssociationRole#getM_SourcePort <em>MSource Port</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute list '<em>MSource Port</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIAssociationRole#getM_SourcePort()
+	 * @see #getCGIAssociationRole()
+	 * @generated
+	 */
+	EAttribute getCGIAssociationRole_M_SourcePort();
+
+	/**
+	 * Returns the meta object for the attribute list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIAssociationRole#getM_TargetPort <em>MTarget Port</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute list '<em>MTarget Port</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIAssociationRole#getM_TargetPort()
+	 * @see #getCGIAssociationRole()
+	 * @generated
+	 */
+	EAttribute getCGIAssociationRole_M_TargetPort();
+
+	/**
+	 * Returns the meta object for the attribute list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIAssociationRole#getM_arrow <em>Marrow</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute list '<em>Marrow</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIAssociationRole#getM_arrow()
+	 * @see #getCGIAssociationRole()
+	 * @generated
+	 */
+	EAttribute getCGIAssociationRole_M_arrow();
+
+	/**
+	 * Returns the meta object for the containment reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIAssociationRole#getProperties <em>Properties</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference '<em>Properties</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIAssociationRole#getProperties()
+	 * @see #getCGIAssociationRole()
+	 * @generated
+	 */
+	EReference getCGIAssociationRole_Properties();
+
+	/**
+	 * Returns the meta object for class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIBasicClass <em>CGI Basic Class</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for class '<em>CGI Basic Class</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIBasicClass
+	 * @generated
+	 */
+	EClass getCGIBasicClass();
+
+	/**
+	 * Returns the meta object for the reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIBasicClass#getM_pModelObject <em>MpModel Object</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the reference '<em>MpModel Object</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIBasicClass#getM_pModelObject()
+	 * @see #getCGIBasicClass()
+	 * @generated
+	 */
+	EReference getCGIBasicClass_M_pModelObject();
+
+	/**
+	 * Returns the meta object for the reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIBasicClass#getM_pParent <em>MpParent</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the reference '<em>MpParent</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIBasicClass#getM_pParent()
+	 * @see #getCGIBasicClass()
+	 * @generated
+	 */
+	EReference getCGIBasicClass_M_pParent();
+
+	/**
+	 * Returns the meta object for the attribute list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIBasicClass#getM_transform <em>Mtransform</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute list '<em>Mtransform</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIBasicClass#getM_transform()
+	 * @see #getCGIBasicClass()
+	 * @generated
+	 */
+	EAttribute getCGIBasicClass_M_transform();
+
+	/**
+	 * Returns the meta object for the containment reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIBasicClass#getM_AdditionalLabel <em>MAdditional Label</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference '<em>MAdditional Label</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIBasicClass#getM_AdditionalLabel()
+	 * @see #getCGIBasicClass()
+	 * @generated
+	 */
+	EReference getCGIBasicClass_M_AdditionalLabel();
+
+	/**
+	 * Returns the meta object for the attribute list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIBasicClass#getM_polygon <em>Mpolygon</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute list '<em>Mpolygon</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIBasicClass#getM_polygon()
+	 * @see #getCGIBasicClass()
+	 * @generated
+	 */
+	EAttribute getCGIBasicClass_M_polygon();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIBasicClass#getM_nNameFormat <em>MnName Format</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>MnName Format</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIBasicClass#getM_nNameFormat()
+	 * @see #getCGIBasicClass()
+	 * @generated
+	 */
+	EAttribute getCGIBasicClass_M_nNameFormat();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIBasicClass#getM_nIsNameFormat <em>MnIs Name Format</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>MnIs Name Format</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIBasicClass#getM_nIsNameFormat()
+	 * @see #getCGIBasicClass()
+	 * @generated
+	 */
+	EAttribute getCGIBasicClass_M_nIsNameFormat();
+
+	/**
+	 * Returns the meta object for the reference list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIBasicClass#getCompartments <em>Compartments</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the reference list '<em>Compartments</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIBasicClass#getCompartments()
+	 * @see #getCGIBasicClass()
+	 * @generated
+	 */
+	EReference getCGIBasicClass_Compartments();
+
+	/**
+	 * Returns the meta object for the containment reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIBasicClass#getProperties <em>Properties</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference '<em>Properties</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIBasicClass#getProperties()
+	 * @see #getCGIBasicClass()
+	 * @generated
+	 */
+	EReference getCGIBasicClass_Properties();
+
+	/**
+	 * Returns the meta object for the reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIBasicClass#getM_pImageViewData <em>MpImage View Data</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the reference '<em>MpImage View Data</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIBasicClass#getM_pImageViewData()
+	 * @see #getCGIBasicClass()
+	 * @generated
+	 */
+	EReference getCGIBasicClass_M_pImageViewData();
+
+	/**
+	 * Returns the meta object for class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIBlockState <em>CGI Block State</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for class '<em>CGI Block State</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIBlockState
+	 * @generated
+	 */
+	EClass getCGIBlockState();
+
+	/**
+	 * Returns the meta object for the reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIBlockState#getM_pModelObject <em>MpModel Object</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the reference '<em>MpModel Object</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIBlockState#getM_pModelObject()
+	 * @see #getCGIBlockState()
+	 * @generated
+	 */
+	EReference getCGIBlockState_M_pModelObject();
+
+	/**
+	 * Returns the meta object for the reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIBlockState#getM_pParent <em>MpParent</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the reference '<em>MpParent</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIBlockState#getM_pParent()
+	 * @see #getCGIBlockState()
+	 * @generated
+	 */
+	EReference getCGIBlockState_M_pParent();
+
+	/**
+	 * Returns the meta object for the attribute list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIBlockState#getM_transform <em>Mtransform</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute list '<em>Mtransform</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIBlockState#getM_transform()
+	 * @see #getCGIBlockState()
+	 * @generated
+	 */
+	EAttribute getCGIBlockState_M_transform();
+
+	/**
+	 * Returns the meta object for the attribute list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIBlockState#getM_polygon <em>Mpolygon</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute list '<em>Mpolygon</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIBlockState#getM_polygon()
+	 * @see #getCGIBlockState()
+	 * @generated
+	 */
+	EAttribute getCGIBlockState_M_polygon();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIBlockState#getM_nNameFormat <em>MnName Format</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>MnName Format</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIBlockState#getM_nNameFormat()
+	 * @see #getCGIBlockState()
+	 * @generated
+	 */
+	EAttribute getCGIBlockState_M_nNameFormat();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIBlockState#getM_nIsNameFormat <em>MnIs Name Format</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>MnIs Name Format</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIBlockState#getM_nIsNameFormat()
+	 * @see #getCGIBlockState()
+	 * @generated
+	 */
+	EAttribute getCGIBlockState_M_nIsNameFormat();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIBlockState#getNAndLineCount <em>NAnd Line Count</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>NAnd Line Count</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIBlockState#getNAndLineCount()
+	 * @see #getCGIBlockState()
+	 * @generated
+	 */
+	EAttribute getCGIBlockState_NAndLineCount();
+
+	/**
+	 * Returns the meta object for the reference list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIBlockState#getM_pInheritsFrom <em>MpInherits From</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the reference list '<em>MpInherits From</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIBlockState#getM_pInheritsFrom()
+	 * @see #getCGIBlockState()
+	 * @generated
+	 */
+	EReference getCGIBlockState_M_pInheritsFrom();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIBlockState#getM_nInheritanceMask <em>MnInheritance Mask</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>MnInheritance Mask</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIBlockState#getM_nInheritanceMask()
+	 * @see #getCGIBlockState()
+	 * @generated
+	 */
+	EAttribute getCGIBlockState_M_nInheritanceMask();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIBlockState#getM_pDefaultComponentRelation <em>MpDefault Component Relation</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>MpDefault Component Relation</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIBlockState#getM_pDefaultComponentRelation()
+	 * @see #getCGIBlockState()
+	 * @generated
+	 */
+	EAttribute getCGIBlockState_M_pDefaultComponentRelation();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIBlockState#getM_NameDisplayMode <em>MName Display Mode</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>MName Display Mode</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIBlockState#getM_NameDisplayMode()
+	 * @see #getCGIBlockState()
+	 * @generated
+	 */
+	EAttribute getCGIBlockState_M_NameDisplayMode();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIBlockState#getM_ActDescLablDiaplayMode <em>MAct Desc Labl Diaplay Mode</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>MAct Desc Labl Diaplay Mode</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIBlockState#getM_ActDescLablDiaplayMode()
+	 * @see #getCGIBlockState()
+	 * @generated
+	 */
+	EAttribute getCGIBlockState_M_ActDescLablDiaplayMode();
+
+	/**
+	 * Returns the meta object for the containment reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIBlockState#getProperties <em>Properties</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference '<em>Properties</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIBlockState#getProperties()
+	 * @see #getCGIBlockState()
+	 * @generated
+	 */
+	EReference getCGIBlockState_Properties();
+
+	/**
+	 * Returns the meta object for the containment reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIBlockState#getM_AdditionalLabel <em>MAdditional Label</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference '<em>MAdditional Label</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIBlockState#getM_AdditionalLabel()
+	 * @see #getCGIBlockState()
+	 * @generated
+	 */
+	EReference getCGIBlockState_M_AdditionalLabel();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIBlockState#getM_moveAndLineTimeStamp <em>Mmove And Line Time Stamp</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Mmove And Line Time Stamp</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIBlockState#getM_moveAndLineTimeStamp()
+	 * @see #getCGIBlockState()
+	 * @generated
+	 */
+	EAttribute getCGIBlockState_M_moveAndLineTimeStamp();
+
+	/**
+	 * Returns the meta object for the containment reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIBlockState#getCompartments <em>Compartments</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference '<em>Compartments</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIBlockState#getCompartments()
+	 * @see #getCGIBlockState()
+	 * @generated
+	 */
+	EReference getCGIBlockState_Compartments();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIBlockState#getFrameset <em>Frameset</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Frameset</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIBlockState#getFrameset()
+	 * @see #getCGIBlockState()
+	 * @generated
+	 */
+	EAttribute getCGIBlockState_Frameset();
+
+	/**
+	 * Returns the meta object for class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIBox <em>CGI Box</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for class '<em>CGI Box</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIBox
+	 * @generated
+	 */
+	EClass getCGIBox();
+
+	/**
+	 * Returns the meta object for the reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIBox#getM_pModelObject <em>MpModel Object</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the reference '<em>MpModel Object</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIBox#getM_pModelObject()
+	 * @see #getCGIBox()
+	 * @generated
+	 */
+	EReference getCGIBox_M_pModelObject();
+
+	/**
+	 * Returns the meta object for the attribute list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIBox#getM_polygon <em>Mpolygon</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute list '<em>Mpolygon</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIBox#getM_polygon()
+	 * @see #getCGIBox()
+	 * @generated
+	 */
+	EAttribute getCGIBox_M_polygon();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIBox#getM_nNameFormat <em>MnName Format</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>MnName Format</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIBox#getM_nNameFormat()
+	 * @see #getCGIBox()
+	 * @generated
+	 */
+	EAttribute getCGIBox_M_nNameFormat();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIBox#getM_nIsNameFormat <em>MnIs Name Format</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>MnIs Name Format</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIBox#getM_nIsNameFormat()
+	 * @see #getCGIBox()
+	 * @generated
+	 */
+	EAttribute getCGIBox_M_nIsNameFormat();
+
+	/**
+	 * Returns the meta object for the reference list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIBox#getCompartments <em>Compartments</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the reference list '<em>Compartments</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIBox#getCompartments()
+	 * @see #getCGIBox()
+	 * @generated
+	 */
+	EReference getCGIBox_Compartments();
+
+	/**
+	 * Returns the meta object for the reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIBox#getM_pParent <em>MpParent</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the reference '<em>MpParent</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIBox#getM_pParent()
+	 * @see #getCGIBox()
+	 * @generated
+	 */
+	EReference getCGIBox_M_pParent();
+
+	/**
+	 * Returns the meta object for the attribute list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIBox#getM_transform <em>Mtransform</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute list '<em>Mtransform</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIBox#getM_transform()
+	 * @see #getCGIBox()
+	 * @generated
+	 */
+	EAttribute getCGIBox_M_transform();
+
+	/**
+	 * Returns the meta object for the containment reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIBox#getProperties <em>Properties</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference '<em>Properties</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIBox#getProperties()
+	 * @see #getCGIBox()
+	 * @generated
+	 */
+	EReference getCGIBox_Properties();
+
+	/**
+	 * Returns the meta object for class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIButtonArray <em>CGI Button Array</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for class '<em>CGI Button Array</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIButtonArray
+	 * @generated
+	 */
+	EClass getCGIButtonArray();
+
+	/**
+	 * Returns the meta object for the containment reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIButtonArray#getProperties <em>Properties</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference '<em>Properties</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIButtonArray#getProperties()
+	 * @see #getCGIButtonArray()
+	 * @generated
+	 */
+	EReference getCGIButtonArray_Properties();
+
+	/**
+	 * Returns the meta object for the reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIButtonArray#getM_pModelObject <em>MpModel Object</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the reference '<em>MpModel Object</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIButtonArray#getM_pModelObject()
+	 * @see #getCGIButtonArray()
+	 * @generated
+	 */
+	EReference getCGIButtonArray_M_pModelObject();
+
+	/**
+	 * Returns the meta object for the reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIButtonArray#getM_pParent <em>MpParent</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the reference '<em>MpParent</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIButtonArray#getM_pParent()
+	 * @see #getCGIButtonArray()
+	 * @generated
+	 */
+	EReference getCGIButtonArray_M_pParent();
+
+	/**
+	 * Returns the meta object for the attribute list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIButtonArray#getM_transform <em>Mtransform</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute list '<em>Mtransform</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIButtonArray#getM_transform()
+	 * @see #getCGIButtonArray()
+	 * @generated
+	 */
+	EAttribute getCGIButtonArray_M_transform();
+
+	/**
+	 * Returns the meta object for the attribute list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIButtonArray#getM_polygon <em>Mpolygon</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute list '<em>Mpolygon</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIButtonArray#getM_polygon()
+	 * @see #getCGIButtonArray()
+	 * @generated
+	 */
+	EAttribute getCGIButtonArray_M_polygon();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIButtonArray#getM_nNameFormat <em>MnName Format</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>MnName Format</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIButtonArray#getM_nNameFormat()
+	 * @see #getCGIButtonArray()
+	 * @generated
+	 */
+	EAttribute getCGIButtonArray_M_nNameFormat();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIButtonArray#getM_nIsNameFormat <em>MnIs Name Format</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>MnIs Name Format</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIButtonArray#getM_nIsNameFormat()
+	 * @see #getCGIButtonArray()
+	 * @generated
+	 */
+	EAttribute getCGIButtonArray_M_nIsNameFormat();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIButtonArray#getFrameset <em>Frameset</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Frameset</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIButtonArray#getFrameset()
+	 * @see #getCGIButtonArray()
+	 * @generated
+	 */
+	EAttribute getCGIButtonArray_Frameset();
+
+	/**
+	 * Returns the meta object for the containment reference list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIButtonArray#getCompartments <em>Compartments</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference list '<em>Compartments</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIButtonArray#getCompartments()
+	 * @see #getCGIButtonArray()
+	 * @generated
+	 */
+	EReference getCGIButtonArray_Compartments();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIButtonArray#getM_csModelObjPath <em>Mcs Model Obj Path</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Mcs Model Obj Path</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIButtonArray#getM_csModelObjPath()
+	 * @see #getCGIButtonArray()
+	 * @generated
+	 */
+	EAttribute getCGIButtonArray_M_csModelObjPath();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIButtonArray#getM_csName <em>Mcs Name</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Mcs Name</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIButtonArray#getM_csName()
+	 * @see #getCGIButtonArray()
+	 * @generated
+	 */
+	EAttribute getCGIButtonArray_M_csName();
+
+	/**
+	 * Returns the meta object for the reference list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIButtonArray#getM_PartsArray <em>MParts Array</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the reference list '<em>MParts Array</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIButtonArray#getM_PartsArray()
+	 * @see #getCGIButtonArray()
+	 * @generated
+	 */
+	EReference getCGIButtonArray_M_PartsArray();
+
+	/**
+	 * Returns the meta object for the attribute list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIButtonArray#getM_liButtonNames <em>Mli Button Names</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute list '<em>Mli Button Names</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIButtonArray#getM_liButtonNames()
+	 * @see #getCGIButtonArray()
+	 * @generated
+	 */
+	EAttribute getCGIButtonArray_M_liButtonNames();
+
+	/**
+	 * Returns the meta object for the attribute list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIButtonArray#getM_liButtonValues <em>Mli Button Values</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute list '<em>Mli Button Values</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIButtonArray#getM_liButtonValues()
+	 * @see #getCGIButtonArray()
+	 * @generated
+	 */
+	EAttribute getCGIButtonArray_M_liButtonValues();
+
+	/**
+	 * Returns the meta object for class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIClass <em>CGI Class</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for class '<em>CGI Class</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIClass
+	 * @generated
+	 */
+	EClass getCGIClass();
+
+	/**
+	 * Returns the meta object for the reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIClass#getM_pModelObject <em>MpModel Object</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the reference '<em>MpModel Object</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIClass#getM_pModelObject()
+	 * @see #getCGIClass()
+	 * @generated
+	 */
+	EReference getCGIClass_M_pModelObject();
+
+	/**
+	 * Returns the meta object for the containment reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIClass#getM_AdditionalLabel <em>MAdditional Label</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference '<em>MAdditional Label</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIClass#getM_AdditionalLabel()
+	 * @see #getCGIClass()
+	 * @generated
+	 */
+	EReference getCGIClass_M_AdditionalLabel();
+
+	/**
+	 * Returns the meta object for the attribute list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIClass#getM_polygon <em>Mpolygon</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute list '<em>Mpolygon</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIClass#getM_polygon()
+	 * @see #getCGIClass()
+	 * @generated
+	 */
+	EAttribute getCGIClass_M_polygon();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIClass#getM_nNameFormat <em>MnName Format</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>MnName Format</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIClass#getM_nNameFormat()
+	 * @see #getCGIClass()
+	 * @generated
+	 */
+	EAttribute getCGIClass_M_nNameFormat();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIClass#getM_nIsNameFormat <em>MnIs Name Format</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>MnIs Name Format</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIClass#getM_nIsNameFormat()
+	 * @see #getCGIClass()
+	 * @generated
+	 */
+	EAttribute getCGIClass_M_nIsNameFormat();
+
+	/**
+	 * Returns the meta object for the containment reference list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIClass#getCompartments <em>Compartments</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference list '<em>Compartments</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIClass#getCompartments()
+	 * @see #getCGIClass()
+	 * @generated
+	 */
+	EReference getCGIClass_Compartments();
+
+	/**
+	 * Returns the meta object for the reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIClass#getM_pParent <em>MpParent</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the reference '<em>MpParent</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIClass#getM_pParent()
+	 * @see #getCGIClass()
+	 * @generated
+	 */
+	EReference getCGIClass_M_pParent();
+
+	/**
+	 * Returns the meta object for the attribute list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIClass#getM_transform <em>Mtransform</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute list '<em>Mtransform</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIClass#getM_transform()
+	 * @see #getCGIClass()
+	 * @generated
+	 */
+	EAttribute getCGIClass_M_transform();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIClass#getFrameset <em>Frameset</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Frameset</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIClass#getFrameset()
+	 * @see #getCGIClass()
+	 * @generated
+	 */
+	EAttribute getCGIClass_Frameset();
+
+	/**
+	 * Returns the meta object for the containment reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIClass#getProperties <em>Properties</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference '<em>Properties</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIClass#getProperties()
+	 * @see #getCGIClass()
+	 * @generated
+	 */
+	EReference getCGIClass_Properties();
+
+	/**
+	 * Returns the meta object for the reference list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIClass#getAttrs <em>Attrs</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the reference list '<em>Attrs</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIClass#getAttrs()
+	 * @see #getCGIClass()
+	 * @generated
+	 */
+	EReference getCGIClass_Attrs();
+
+	/**
+	 * Returns the meta object for the reference list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIClass#getOperations <em>Operations</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the reference list '<em>Operations</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIClass#getOperations()
+	 * @see #getCGIClass()
+	 * @generated
+	 */
+	EReference getCGIClass_Operations();
+
+	/**
+	 * Returns the meta object for the containment reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIClass#getM_color <em>Mcolor</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference '<em>Mcolor</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIClass#getM_color()
+	 * @see #getCGIClass()
+	 * @generated
+	 */
+	EReference getCGIClass_M_color();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIClass#getM_lineWidth <em>Mline Width</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Mline Width</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIClass#getM_lineWidth()
+	 * @see #getCGIClass()
+	 * @generated
+	 */
+	EAttribute getCGIClass_M_lineWidth();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIClass#getM_dSeparatorPosition <em>MdSeparator Position</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>MdSeparator Position</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIClass#getM_dSeparatorPosition()
+	 * @see #getCGIClass()
+	 * @generated
+	 */
+	EAttribute getCGIClass_M_dSeparatorPosition();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIClass#getM_bIsMisplaced <em>MbIs Misplaced</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>MbIs Misplaced</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIClass#getM_bIsMisplaced()
+	 * @see #getCGIClass()
+	 * @generated
+	 */
+	EAttribute getCGIClass_M_bIsMisplaced();
+
+	/**
+	 * Returns the meta object for the reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIClass#getM_pImageViewData <em>MpImage View Data</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the reference '<em>MpImage View Data</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIClass#getM_pImageViewData()
+	 * @see #getCGIClass()
+	 * @generated
+	 */
+	EReference getCGIClass_M_pImageViewData();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIClass#getM_bFramesetModified <em>MbFrameset Modified</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>MbFrameset Modified</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIClass#getM_bFramesetModified()
+	 * @see #getCGIClass()
+	 * @generated
+	 */
+	EAttribute getCGIClass_M_bFramesetModified();
+
+	/**
+	 * Returns the meta object for class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIClassChart <em>CGI Class Chart</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for class '<em>CGI Class Chart</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIClassChart
+	 * @generated
+	 */
+	EClass getCGIClassChart();
+
+	/**
+	 * Returns the meta object for the reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIClassChart#getM_pModelObject <em>MpModel Object</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the reference '<em>MpModel Object</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIClassChart#getM_pModelObject()
+	 * @see #getCGIClassChart()
+	 * @generated
+	 */
+	EReference getCGIClassChart_M_pModelObject();
+
+	/**
+	 * Returns the meta object for the reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIClassChart#getM_pRoot <em>MpRoot</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the reference '<em>MpRoot</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIClassChart#getM_pRoot()
+	 * @see #getCGIClassChart()
+	 * @generated
+	 */
+	EReference getCGIClassChart_M_pRoot();
+
+	/**
+	 * Returns the meta object for class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIClassifierRole <em>CGI Classifier Role</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for class '<em>CGI Classifier Role</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIClassifierRole
+	 * @generated
+	 */
+	EClass getCGIClassifierRole();
+
+	/**
+	 * Returns the meta object for the reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIClassifierRole#getM_pModelObject <em>MpModel Object</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the reference '<em>MpModel Object</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIClassifierRole#getM_pModelObject()
+	 * @see #getCGIClassifierRole()
+	 * @generated
+	 */
+	EReference getCGIClassifierRole_M_pModelObject();
+
+	/**
+	 * Returns the meta object for the reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIClassifierRole#getM_pParent <em>MpParent</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the reference '<em>MpParent</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIClassifierRole#getM_pParent()
+	 * @see #getCGIClassifierRole()
+	 * @generated
+	 */
+	EReference getCGIClassifierRole_M_pParent();
+
+	/**
+	 * Returns the meta object for the attribute list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIClassifierRole#getM_transform <em>Mtransform</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute list '<em>Mtransform</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIClassifierRole#getM_transform()
+	 * @see #getCGIClassifierRole()
+	 * @generated
+	 */
+	EAttribute getCGIClassifierRole_M_transform();
+
+	/**
+	 * Returns the meta object for the attribute list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIClassifierRole#getM_polygon <em>Mpolygon</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute list '<em>Mpolygon</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIClassifierRole#getM_polygon()
+	 * @see #getCGIClassifierRole()
+	 * @generated
+	 */
+	EAttribute getCGIClassifierRole_M_polygon();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIClassifierRole#getM_nNameFormat <em>MnName Format</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>MnName Format</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIClassifierRole#getM_nNameFormat()
+	 * @see #getCGIClassifierRole()
+	 * @generated
+	 */
+	EAttribute getCGIClassifierRole_M_nNameFormat();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIClassifierRole#getM_nIsNameFormat <em>MnIs Name Format</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>MnIs Name Format</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIClassifierRole#getM_nIsNameFormat()
+	 * @see #getCGIClassifierRole()
+	 * @generated
+	 */
+	EAttribute getCGIClassifierRole_M_nIsNameFormat();
+
+	/**
+	 * Returns the meta object for the reference list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIClassifierRole#getCompartments <em>Compartments</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the reference list '<em>Compartments</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIClassifierRole#getCompartments()
+	 * @see #getCGIClassifierRole()
+	 * @generated
+	 */
+	EReference getCGIClassifierRole_Compartments();
+
+	/**
+	 * Returns the meta object for the containment reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIClassifierRole#getProperties <em>Properties</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference '<em>Properties</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIClassifierRole#getProperties()
+	 * @see #getCGIClassifierRole()
+	 * @generated
+	 */
+	EReference getCGIClassifierRole_Properties();
+
+	/**
+	 * Returns the meta object for class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGICompartment <em>CGI Compartment</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for class '<em>CGI Compartment</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGICompartment
+	 * @generated
+	 */
+	EClass getCGICompartment();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGICompartment#getId <em>Id</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Id</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGICompartment#getId()
+	 * @see #getCGICompartment()
+	 * @generated
+	 */
+	EAttribute getCGICompartment_Id();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGICompartment#getM_name <em>Mname</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Mname</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGICompartment#getM_name()
+	 * @see #getCGICompartment()
+	 * @generated
+	 */
+	EAttribute getCGICompartment_M_name();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGICompartment#getM_displayOption <em>Mdisplay Option</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Mdisplay Option</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGICompartment#getM_displayOption()
+	 * @see #getCGICompartment()
+	 * @generated
+	 */
+	EAttribute getCGICompartment_M_displayOption();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGICompartment#getM_bShowInherited <em>MbShow Inherited</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>MbShow Inherited</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGICompartment#getM_bShowInherited()
+	 * @see #getCGICompartment()
+	 * @generated
+	 */
+	EAttribute getCGICompartment_M_bShowInherited();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGICompartment#getM_bOrdered <em>MbOrdered</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>MbOrdered</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGICompartment#getM_bOrdered()
+	 * @see #getCGICompartment()
+	 * @generated
+	 */
+	EAttribute getCGICompartment_M_bOrdered();
+
+	/**
+	 * Returns the meta object for the reference list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGICompartment#getItems <em>Items</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the reference list '<em>Items</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGICompartment#getItems()
+	 * @see #getCGICompartment()
+	 * @generated
+	 */
+	EReference getCGICompartment_Items();
+
+	/**
+	 * Returns the meta object for class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIComponent <em>CGI Component</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for class '<em>CGI Component</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIComponent
+	 * @generated
+	 */
+	EClass getCGIComponent();
+
+	/**
+	 * Returns the meta object for the reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIComponent#getM_pModelObject <em>MpModel Object</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the reference '<em>MpModel Object</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIComponent#getM_pModelObject()
+	 * @see #getCGIComponent()
+	 * @generated
+	 */
+	EReference getCGIComponent_M_pModelObject();
+
+	/**
+	 * Returns the meta object for the reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIComponent#getM_pParent <em>MpParent</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the reference '<em>MpParent</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIComponent#getM_pParent()
+	 * @see #getCGIComponent()
+	 * @generated
+	 */
+	EReference getCGIComponent_M_pParent();
+
+	/**
+	 * Returns the meta object for the attribute list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIComponent#getM_transform <em>Mtransform</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute list '<em>Mtransform</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIComponent#getM_transform()
+	 * @see #getCGIComponent()
+	 * @generated
+	 */
+	EAttribute getCGIComponent_M_transform();
+
+	/**
+	 * Returns the meta object for the attribute list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIComponent#getM_polygon <em>Mpolygon</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute list '<em>Mpolygon</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIComponent#getM_polygon()
+	 * @see #getCGIComponent()
+	 * @generated
+	 */
+	EAttribute getCGIComponent_M_polygon();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIComponent#getM_nNameFormat <em>MnName Format</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>MnName Format</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIComponent#getM_nNameFormat()
+	 * @see #getCGIComponent()
+	 * @generated
+	 */
+	EAttribute getCGIComponent_M_nNameFormat();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIComponent#getM_nIsNameFormat <em>MnIs Name Format</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>MnIs Name Format</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIComponent#getM_nIsNameFormat()
+	 * @see #getCGIComponent()
+	 * @generated
+	 */
+	EAttribute getCGIComponent_M_nIsNameFormat();
+
+	/**
+	 * Returns the meta object for the reference list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIComponent#getCompartments <em>Compartments</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the reference list '<em>Compartments</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIComponent#getCompartments()
+	 * @see #getCGIComponent()
+	 * @generated
+	 */
+	EReference getCGIComponent_Compartments();
+
+	/**
+	 * Returns the meta object for the containment reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIComponent#getProperties <em>Properties</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference '<em>Properties</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIComponent#getProperties()
+	 * @see #getCGIComponent()
+	 * @generated
+	 */
+	EReference getCGIComponent_Properties();
+
+	/**
+	 * Returns the meta object for the containment reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIComponent#getM_AdditionalLabel <em>MAdditional Label</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference '<em>MAdditional Label</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIComponent#getM_AdditionalLabel()
+	 * @see #getCGIComponent()
+	 * @generated
+	 */
+	EReference getCGIComponent_M_AdditionalLabel();
+
+	/**
+	 * Returns the meta object for class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGICompositeClass <em>CGI Composite Class</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for class '<em>CGI Composite Class</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGICompositeClass
+	 * @generated
+	 */
+	EClass getCGICompositeClass();
+
+	/**
+	 * Returns the meta object for the reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGICompositeClass#getM_pModelObject <em>MpModel Object</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the reference '<em>MpModel Object</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGICompositeClass#getM_pModelObject()
+	 * @see #getCGICompositeClass()
+	 * @generated
+	 */
+	EReference getCGICompositeClass_M_pModelObject();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGICompositeClass#getM_pParent <em>MpParent</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>MpParent</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGICompositeClass#getM_pParent()
+	 * @see #getCGICompositeClass()
+	 * @generated
+	 */
+	EAttribute getCGICompositeClass_M_pParent();
+
+	/**
+	 * Returns the meta object for the containment reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGICompositeClass#getM_AdditionalLabel <em>MAdditional Label</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference '<em>MAdditional Label</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGICompositeClass#getM_AdditionalLabel()
+	 * @see #getCGICompositeClass()
+	 * @generated
+	 */
+	EReference getCGICompositeClass_M_AdditionalLabel();
+
+	/**
+	 * Returns the meta object for the attribute list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGICompositeClass#getM_polygon <em>Mpolygon</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute list '<em>Mpolygon</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGICompositeClass#getM_polygon()
+	 * @see #getCGICompositeClass()
+	 * @generated
+	 */
+	EAttribute getCGICompositeClass_M_polygon();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGICompositeClass#getM_nNameFormat <em>MnName Format</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>MnName Format</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGICompositeClass#getM_nNameFormat()
+	 * @see #getCGICompositeClass()
+	 * @generated
+	 */
+	EAttribute getCGICompositeClass_M_nNameFormat();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGICompositeClass#getM_nIsNameFormat <em>MnIs Name Format</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>MnIs Name Format</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGICompositeClass#getM_nIsNameFormat()
+	 * @see #getCGICompositeClass()
+	 * @generated
+	 */
+	EAttribute getCGICompositeClass_M_nIsNameFormat();
+
+	/**
+	 * Returns the meta object for the reference list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGICompositeClass#getCompartments <em>Compartments</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the reference list '<em>Compartments</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGICompositeClass#getCompartments()
+	 * @see #getCGICompositeClass()
+	 * @generated
+	 */
+	EReference getCGICompositeClass_Compartments();
+
+	/**
+	 * Returns the meta object for the containment reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGICompositeClass#getProperties <em>Properties</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference '<em>Properties</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGICompositeClass#getProperties()
+	 * @see #getCGICompositeClass()
+	 * @generated
+	 */
+	EReference getCGICompositeClass_Properties();
+
+	/**
+	 * Returns the meta object for the containment reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGICompositeClass#getM_color <em>Mcolor</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference '<em>Mcolor</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGICompositeClass#getM_color()
+	 * @see #getCGICompositeClass()
+	 * @generated
+	 */
+	EReference getCGICompositeClass_M_color();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGICompositeClass#getM_lineWidth <em>Mline Width</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Mline Width</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGICompositeClass#getM_lineWidth()
+	 * @see #getCGICompositeClass()
+	 * @generated
+	 */
+	EAttribute getCGICompositeClass_M_lineWidth();
+
+	/**
+	 * Returns the meta object for class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIConnector <em>CGI Connector</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for class '<em>CGI Connector</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIConnector
+	 * @generated
+	 */
+	EClass getCGIConnector();
+
+	/**
+	 * Returns the meta object for the reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIConnector#getM_pModelObject <em>MpModel Object</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the reference '<em>MpModel Object</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIConnector#getM_pModelObject()
+	 * @see #getCGIConnector()
+	 * @generated
+	 */
+	EReference getCGIConnector_M_pModelObject();
+
+	/**
+	 * Returns the meta object for the reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIConnector#getM_pParent <em>MpParent</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the reference '<em>MpParent</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIConnector#getM_pParent()
+	 * @see #getCGIConnector()
+	 * @generated
+	 */
+	EReference getCGIConnector_M_pParent();
+
+	/**
+	 * Returns the meta object for the attribute list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIConnector#getM_transform <em>Mtransform</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute list '<em>Mtransform</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIConnector#getM_transform()
+	 * @see #getCGIConnector()
+	 * @generated
+	 */
+	EAttribute getCGIConnector_M_transform();
+
+	/**
+	 * Returns the meta object for the attribute list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIConnector#getM_position <em>Mposition</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute list '<em>Mposition</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIConnector#getM_position()
+	 * @see #getCGIConnector()
+	 * @generated
+	 */
+	EAttribute getCGIConnector_M_position();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIConnector#getM_nInheritanceMask <em>MnInheritance Mask</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>MnInheritance Mask</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIConnector#getM_nInheritanceMask()
+	 * @see #getCGIConnector()
+	 * @generated
+	 */
+	EAttribute getCGIConnector_M_nInheritanceMask();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIConnector#getM_SubType <em>MSub Type</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>MSub Type</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIConnector#getM_SubType()
+	 * @see #getCGIConnector()
+	 * @generated
+	 */
+	EAttribute getCGIConnector_M_SubType();
+
+	/**
+	 * Returns the meta object for the containment reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIConnector#getProperties <em>Properties</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference '<em>Properties</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIConnector#getProperties()
+	 * @see #getCGIConnector()
+	 * @generated
+	 */
+	EReference getCGIConnector_Properties();
+
+	/**
+	 * Returns the meta object for the containment reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIConnector#getM_AdditionalLabel <em>MAdditional Label</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference '<em>MAdditional Label</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIConnector#getM_AdditionalLabel()
+	 * @see #getCGIConnector()
+	 * @generated
+	 */
+	EReference getCGIConnector_M_AdditionalLabel();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIConnector#getMyState <em>My State</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>My State</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIConnector#getMyState()
+	 * @see #getCGIConnector()
+	 * @generated
+	 */
+	EAttribute getCGIConnector_MyState();
+
+	/**
+	 * Returns the meta object for the reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIConnector#getM_pInheritsFrom <em>MpInherits From</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the reference '<em>MpInherits From</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIConnector#getM_pInheritsFrom()
+	 * @see #getCGIConnector()
+	 * @generated
+	 */
+	EReference getCGIConnector_M_pInheritsFrom();
+
+	/**
+	 * Returns the meta object for class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIContainArrow <em>CGI Contain Arrow</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for class '<em>CGI Contain Arrow</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIContainArrow
+	 * @generated
+	 */
+	EClass getCGIContainArrow();
+
+	/**
+	 * Returns the meta object for the reference list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIContainArrow#getM_pModelObject <em>MpModel Object</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the reference list '<em>MpModel Object</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIContainArrow#getM_pModelObject()
+	 * @see #getCGIContainArrow()
+	 * @generated
+	 */
+	EReference getCGIContainArrow_M_pModelObject();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIContainArrow#getM_pParent <em>MpParent</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>MpParent</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIContainArrow#getM_pParent()
+	 * @see #getCGIContainArrow()
+	 * @generated
+	 */
+	EAttribute getCGIContainArrow_M_pParent();
+
+	/**
+	 * Returns the meta object for the reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIContainArrow#getM_pSource <em>MpSource</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the reference '<em>MpSource</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIContainArrow#getM_pSource()
+	 * @see #getCGIContainArrow()
+	 * @generated
+	 */
+	EReference getCGIContainArrow_M_pSource();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIContainArrow#getM_sourceType <em>Msource Type</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Msource Type</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIContainArrow#getM_sourceType()
+	 * @see #getCGIContainArrow()
+	 * @generated
+	 */
+	EAttribute getCGIContainArrow_M_sourceType();
+
+	/**
+	 * Returns the meta object for the reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIContainArrow#getM_pTarget <em>MpTarget</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the reference '<em>MpTarget</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIContainArrow#getM_pTarget()
+	 * @see #getCGIContainArrow()
+	 * @generated
+	 */
+	EReference getCGIContainArrow_M_pTarget();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIContainArrow#getM_targetType <em>Mtarget Type</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Mtarget Type</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIContainArrow#getM_targetType()
+	 * @see #getCGIContainArrow()
+	 * @generated
+	 */
+	EAttribute getCGIContainArrow_M_targetType();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIContainArrow#getM_direction <em>Mdirection</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Mdirection</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIContainArrow#getM_direction()
+	 * @see #getCGIContainArrow()
+	 * @generated
+	 */
+	EAttribute getCGIContainArrow_M_direction();
+
+	/**
+	 * Returns the meta object for the containment reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIContainArrow#getM_rpn <em>Mrpn</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference '<em>Mrpn</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIContainArrow#getM_rpn()
+	 * @see #getCGIContainArrow()
+	 * @generated
+	 */
+	EReference getCGIContainArrow_M_rpn();
+
+	/**
+	 * Returns the meta object for the attribute list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIContainArrow#getM_arrow <em>Marrow</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute list '<em>Marrow</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIContainArrow#getM_arrow()
+	 * @see #getCGIContainArrow()
+	 * @generated
+	 */
+	EAttribute getCGIContainArrow_M_arrow();
+
+	/**
+	 * Returns the meta object for the attribute list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIContainArrow#getM_anglePoint1 <em>Mangle Point1</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute list '<em>Mangle Point1</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIContainArrow#getM_anglePoint1()
+	 * @see #getCGIContainArrow()
+	 * @generated
+	 */
+	EAttribute getCGIContainArrow_M_anglePoint1();
+
+	/**
+	 * Returns the meta object for the attribute list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIContainArrow#getM_anglePoint2 <em>Mangle Point2</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute list '<em>Mangle Point2</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIContainArrow#getM_anglePoint2()
+	 * @see #getCGIContainArrow()
+	 * @generated
+	 */
+	EAttribute getCGIContainArrow_M_anglePoint2();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIContainArrow#getM_line_style <em>Mline style</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Mline style</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIContainArrow#getM_line_style()
+	 * @see #getCGIContainArrow()
+	 * @generated
+	 */
+	EAttribute getCGIContainArrow_M_line_style();
+
+	/**
+	 * Returns the meta object for the attribute list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIContainArrow#getM_SourcePort <em>MSource Port</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute list '<em>MSource Port</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIContainArrow#getM_SourcePort()
+	 * @see #getCGIContainArrow()
+	 * @generated
+	 */
+	EAttribute getCGIContainArrow_M_SourcePort();
+
+	/**
+	 * Returns the meta object for the attribute list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIContainArrow#getM_TargetPort <em>MTarget Port</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute list '<em>MTarget Port</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIContainArrow#getM_TargetPort()
+	 * @see #getCGIContainArrow()
+	 * @generated
+	 */
+	EAttribute getCGIContainArrow_M_TargetPort();
+
+	/**
+	 * Returns the meta object for class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIDiagramFrame <em>CGI Diagram Frame</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for class '<em>CGI Diagram Frame</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIDiagramFrame
+	 * @generated
+	 */
+	EClass getCGIDiagramFrame();
+
+	/**
+	 * Returns the meta object for the reference list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIDiagramFrame#getM_pModelObject <em>MpModel Object</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the reference list '<em>MpModel Object</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIDiagramFrame#getM_pModelObject()
+	 * @see #getCGIDiagramFrame()
+	 * @generated
+	 */
+	EReference getCGIDiagramFrame_M_pModelObject();
+
+	/**
+	 * Returns the meta object for the reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIDiagramFrame#getM_pParent <em>MpParent</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the reference '<em>MpParent</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIDiagramFrame#getM_pParent()
+	 * @see #getCGIDiagramFrame()
+	 * @generated
+	 */
+	EReference getCGIDiagramFrame_M_pParent();
+
+	/**
+	 * Returns the meta object for the attribute list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIDiagramFrame#getM_transform <em>Mtransform</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute list '<em>Mtransform</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIDiagramFrame#getM_transform()
+	 * @see #getCGIDiagramFrame()
+	 * @generated
+	 */
+	EAttribute getCGIDiagramFrame_M_transform();
+
+	/**
+	 * Returns the meta object for the containment reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIDiagramFrame#getM_AdditionalLabel <em>MAdditional Label</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference '<em>MAdditional Label</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIDiagramFrame#getM_AdditionalLabel()
+	 * @see #getCGIDiagramFrame()
+	 * @generated
+	 */
+	EReference getCGIDiagramFrame_M_AdditionalLabel();
+
+	/**
+	 * Returns the meta object for the attribute list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIDiagramFrame#getM_polygon <em>Mpolygon</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute list '<em>Mpolygon</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIDiagramFrame#getM_polygon()
+	 * @see #getCGIDiagramFrame()
+	 * @generated
+	 */
+	EAttribute getCGIDiagramFrame_M_polygon();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIDiagramFrame#getM_nNameFormat <em>MnName Format</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>MnName Format</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIDiagramFrame#getM_nNameFormat()
+	 * @see #getCGIDiagramFrame()
+	 * @generated
+	 */
+	EAttribute getCGIDiagramFrame_M_nNameFormat();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIDiagramFrame#getM_nIsNameFormat <em>MnIs Name Format</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>MnIs Name Format</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIDiagramFrame#getM_nIsNameFormat()
+	 * @see #getCGIDiagramFrame()
+	 * @generated
+	 */
+	EAttribute getCGIDiagramFrame_M_nIsNameFormat();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIDiagramFrame#getM_bVisible <em>MbVisible</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>MbVisible</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIDiagramFrame#getM_bVisible()
+	 * @see #getCGIDiagramFrame()
+	 * @generated
+	 */
+	EAttribute getCGIDiagramFrame_M_bVisible();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIDiagramFrame#getFrameset <em>Frameset</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Frameset</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIDiagramFrame#getFrameset()
+	 * @see #getCGIDiagramFrame()
+	 * @generated
+	 */
+	EAttribute getCGIDiagramFrame_Frameset();
+
+	/**
+	 * Returns the meta object for the containment reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIDiagramFrame#getCompartments <em>Compartments</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference '<em>Compartments</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIDiagramFrame#getCompartments()
+	 * @see #getCGIDiagramFrame()
+	 * @generated
+	 */
+	EReference getCGIDiagramFrame_Compartments();
+
+	/**
+	 * Returns the meta object for class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIFreeShape <em>CGI Free Shape</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for class '<em>CGI Free Shape</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIFreeShape
+	 * @generated
+	 */
+	EClass getCGIFreeShape();
+
+	/**
+	 * Returns the meta object for the containment reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIFreeShape#getProperties <em>Properties</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference '<em>Properties</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIFreeShape#getProperties()
+	 * @see #getCGIFreeShape()
+	 * @generated
+	 */
+	EReference getCGIFreeShape_Properties();
+
+	/**
+	 * Returns the meta object for the reference list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIFreeShape#getM_pModelObject <em>MpModel Object</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the reference list '<em>MpModel Object</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIFreeShape#getM_pModelObject()
+	 * @see #getCGIFreeShape()
+	 * @generated
+	 */
+	EReference getCGIFreeShape_M_pModelObject();
+
+	/**
+	 * Returns the meta object for the reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIFreeShape#getM_pParent <em>MpParent</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the reference '<em>MpParent</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIFreeShape#getM_pParent()
+	 * @see #getCGIFreeShape()
+	 * @generated
+	 */
+	EReference getCGIFreeShape_M_pParent();
+
+	/**
+	 * Returns the meta object for the attribute list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIFreeShape#getM_transform <em>Mtransform</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute list '<em>Mtransform</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIFreeShape#getM_transform()
+	 * @see #getCGIFreeShape()
+	 * @generated
+	 */
+	EAttribute getCGIFreeShape_M_transform();
+
+	/**
+	 * Returns the meta object for the attribute list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIFreeShape#getM_points <em>Mpoints</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute list '<em>Mpoints</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIFreeShape#getM_points()
+	 * @see #getCGIFreeShape()
+	 * @generated
+	 */
+	EAttribute getCGIFreeShape_M_points();
+
+	/**
+	 * Returns the meta object for class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIFreeText <em>CGI Free Text</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for class '<em>CGI Free Text</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIFreeText
+	 * @generated
+	 */
+	EClass getCGIFreeText();
+
+	/**
+	 * Returns the meta object for the reference list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIFreeText#getM_pModelObject <em>MpModel Object</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the reference list '<em>MpModel Object</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIFreeText#getM_pModelObject()
+	 * @see #getCGIFreeText()
+	 * @generated
+	 */
+	EReference getCGIFreeText_M_pModelObject();
+
+	/**
+	 * Returns the meta object for the reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIFreeText#getM_pParent <em>MpParent</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the reference '<em>MpParent</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIFreeText#getM_pParent()
+	 * @see #getCGIFreeText()
+	 * @generated
+	 */
+	EReference getCGIFreeText_M_pParent();
+
+	/**
+	 * Returns the meta object for the attribute list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIFreeText#getM_transform <em>Mtransform</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute list '<em>Mtransform</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIFreeText#getM_transform()
+	 * @see #getCGIFreeText()
+	 * @generated
+	 */
+	EAttribute getCGIFreeText_M_transform();
+
+	/**
+	 * Returns the meta object for the attribute list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIFreeText#getM_points <em>Mpoints</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute list '<em>Mpoints</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIFreeText#getM_points()
+	 * @see #getCGIFreeText()
+	 * @generated
+	 */
+	EAttribute getCGIFreeText_M_points();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIFreeText#getM_text <em>Mtext</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Mtext</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIFreeText#getM_text()
+	 * @see #getCGIFreeText()
+	 * @generated
+	 */
+	EAttribute getCGIFreeText_M_text();
+
+	/**
+	 * Returns the meta object for the containment reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIFreeText#getProperties <em>Properties</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference '<em>Properties</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIFreeText#getProperties()
+	 * @see #getCGIFreeText()
+	 * @generated
+	 */
+	EReference getCGIFreeText_Properties();
+
+	/**
+	 * Returns the meta object for class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIGenericElement <em>CGI Generic Element</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for class '<em>CGI Generic Element</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIGenericElement
+	 * @generated
+	 */
+	EClass getCGIGenericElement();
+
+	/**
+	 * Returns the meta object for the reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIGenericElement#getM_pModelObject <em>MpModel Object</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the reference '<em>MpModel Object</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIGenericElement#getM_pModelObject()
+	 * @see #getCGIGenericElement()
+	 * @generated
+	 */
+	EReference getCGIGenericElement_M_pModelObject();
+
+	/**
+	 * Returns the meta object for the reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIGenericElement#getM_pParent <em>MpParent</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the reference '<em>MpParent</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIGenericElement#getM_pParent()
+	 * @see #getCGIGenericElement()
+	 * @generated
+	 */
+	EReference getCGIGenericElement_M_pParent();
+
+	/**
+	 * Returns the meta object for the attribute list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIGenericElement#getM_transform <em>Mtransform</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute list '<em>Mtransform</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIGenericElement#getM_transform()
+	 * @see #getCGIGenericElement()
+	 * @generated
+	 */
+	EAttribute getCGIGenericElement_M_transform();
+
+	/**
+	 * Returns the meta object for the containment reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIGenericElement#getM_AdditionalLabel <em>MAdditional Label</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference '<em>MAdditional Label</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIGenericElement#getM_AdditionalLabel()
+	 * @see #getCGIGenericElement()
+	 * @generated
+	 */
+	EReference getCGIGenericElement_M_AdditionalLabel();
+
+	/**
+	 * Returns the meta object for the attribute list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIGenericElement#getM_polygon <em>Mpolygon</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute list '<em>Mpolygon</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIGenericElement#getM_polygon()
+	 * @see #getCGIGenericElement()
+	 * @generated
+	 */
+	EAttribute getCGIGenericElement_M_polygon();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIGenericElement#getM_nNameFormat <em>MnName Format</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>MnName Format</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIGenericElement#getM_nNameFormat()
+	 * @see #getCGIGenericElement()
+	 * @generated
+	 */
+	EAttribute getCGIGenericElement_M_nNameFormat();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIGenericElement#getM_nIsNameFormat <em>MnIs Name Format</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>MnIs Name Format</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIGenericElement#getM_nIsNameFormat()
+	 * @see #getCGIGenericElement()
+	 * @generated
+	 */
+	EAttribute getCGIGenericElement_M_nIsNameFormat();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIGenericElement#getFrameset <em>Frameset</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Frameset</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIGenericElement#getFrameset()
+	 * @see #getCGIGenericElement()
+	 * @generated
+	 */
+	EAttribute getCGIGenericElement_Frameset();
+
+	/**
+	 * Returns the meta object for the containment reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIGenericElement#getCompartments <em>Compartments</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference '<em>Compartments</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIGenericElement#getCompartments()
+	 * @see #getCGIGenericElement()
+	 * @generated
+	 */
+	EReference getCGIGenericElement_Compartments();
+
+	/**
+	 * Returns the meta object for the containment reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIGenericElement#getProperties <em>Properties</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference '<em>Properties</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIGenericElement#getProperties()
+	 * @see #getCGIGenericElement()
+	 * @generated
+	 */
+	EReference getCGIGenericElement_Properties();
+
+	/**
+	 * Returns the meta object for the reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIGenericElement#getM_pImageViewData <em>MpImage View Data</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the reference '<em>MpImage View Data</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIGenericElement#getM_pImageViewData()
+	 * @see #getCGIGenericElement()
+	 * @generated
+	 */
+	EReference getCGIGenericElement_M_pImageViewData();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIGenericElement#getM_csContext <em>Mcs Context</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Mcs Context</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIGenericElement#getM_csContext()
+	 * @see #getCGIGenericElement()
+	 * @generated
+	 */
+	EAttribute getCGIGenericElement_M_csContext();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIGenericElement#getM_csPartsArray <em>Mcs Parts Array</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Mcs Parts Array</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIGenericElement#getM_csPartsArray()
+	 * @see #getCGIGenericElement()
+	 * @generated
+	 */
+	EAttribute getCGIGenericElement_M_csPartsArray();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIGenericElement#getM_bIsStructured <em>MbIs Structured</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>MbIs Structured</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIGenericElement#getM_bIsStructured()
+	 * @see #getCGIGenericElement()
+	 * @generated
+	 */
+	EAttribute getCGIGenericElement_M_bIsStructured();
+
+	/**
+	 * Returns the meta object for class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIImage <em>CGI Image</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for class '<em>CGI Image</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIImage
+	 * @generated
+	 */
+	EClass getCGIImage();
+
+	/**
+	 * Returns the meta object for the reference list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIImage#getM_pModelObject <em>MpModel Object</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the reference list '<em>MpModel Object</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIImage#getM_pModelObject()
+	 * @see #getCGIImage()
+	 * @generated
+	 */
+	EReference getCGIImage_M_pModelObject();
+
+	/**
+	 * Returns the meta object for the reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIImage#getM_pParent <em>MpParent</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the reference '<em>MpParent</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIImage#getM_pParent()
+	 * @see #getCGIImage()
+	 * @generated
+	 */
+	EReference getCGIImage_M_pParent();
+
+	/**
+	 * Returns the meta object for the attribute list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIImage#getM_transform <em>Mtransform</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute list '<em>Mtransform</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIImage#getM_transform()
+	 * @see #getCGIImage()
+	 * @generated
+	 */
+	EAttribute getCGIImage_M_transform();
+
+	/**
+	 * Returns the meta object for the reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIImage#getM_pImageViewData <em>MpImage View Data</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the reference '<em>MpImage View Data</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIImage#getM_pImageViewData()
+	 * @see #getCGIImage()
+	 * @generated
+	 */
+	EReference getCGIImage_M_pImageViewData();
+
+	/**
+	 * Returns the meta object for the attribute list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIImage#getM_points <em>Mpoints</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute list '<em>Mpoints</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIImage#getM_points()
+	 * @see #getCGIImage()
+	 * @generated
+	 */
+	EAttribute getCGIImage_M_points();
+
+	/**
+	 * Returns the meta object for class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIImageData <em>CGI Image Data</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for class '<em>CGI Image Data</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIImageData
+	 * @generated
+	 */
+	EClass getCGIImageData();
+
+	/**
+	 * Returns the meta object for the reference list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIImageData#getM_pModelObject <em>MpModel Object</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the reference list '<em>MpModel Object</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIImageData#getM_pModelObject()
+	 * @see #getCGIImageData()
+	 * @generated
+	 */
+	EReference getCGIImageData_M_pModelObject();
+
+	/**
+	 * Returns the meta object for the reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIImageData#getM_pParent <em>MpParent</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the reference '<em>MpParent</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIImageData#getM_pParent()
+	 * @see #getCGIImageData()
+	 * @generated
+	 */
+	EReference getCGIImageData_M_pParent();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIImageData#getM_dataSize <em>Mdata Size</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Mdata Size</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIImageData#getM_dataSize()
+	 * @see #getCGIImageData()
+	 * @generated
+	 */
+	EAttribute getCGIImageData_M_dataSize();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIImageData#getM_data <em>Mdata</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Mdata</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIImageData#getM_data()
+	 * @see #getCGIImageData()
+	 * @generated
+	 */
+	EAttribute getCGIImageData_M_data();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIImageData#getM_srcFile <em>Msrc File</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Msrc File</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIImageData#getM_srcFile()
+	 * @see #getCGIImageData()
+	 * @generated
+	 */
+	EAttribute getCGIImageData_M_srcFile();
+
+	/**
+	 * Returns the meta object for the attribute list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIImageData#getM_fileModifiedTime <em>Mfile Modified Time</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute list '<em>Mfile Modified Time</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIImageData#getM_fileModifiedTime()
+	 * @see #getCGIImageData()
+	 * @generated
+	 */
+	EAttribute getCGIImageData_M_fileModifiedTime();
+
+	/**
+	 * Returns the meta object for class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIInformationFlow <em>CGI Information Flow</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for class '<em>CGI Information Flow</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIInformationFlow
+	 * @generated
+	 */
+	EClass getCGIInformationFlow();
+
+	/**
+	 * Returns the meta object for the reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIInformationFlow#getM_pModelObject <em>MpModel Object</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the reference '<em>MpModel Object</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIInformationFlow#getM_pModelObject()
+	 * @see #getCGIInformationFlow()
+	 * @generated
+	 */
+	EReference getCGIInformationFlow_M_pModelObject();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIInformationFlow#getM_pParent <em>MpParent</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>MpParent</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIInformationFlow#getM_pParent()
+	 * @see #getCGIInformationFlow()
+	 * @generated
+	 */
+	EAttribute getCGIInformationFlow_M_pParent();
+
+	/**
+	 * Returns the meta object for the reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIInformationFlow#getM_pSource <em>MpSource</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the reference '<em>MpSource</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIInformationFlow#getM_pSource()
+	 * @see #getCGIInformationFlow()
+	 * @generated
+	 */
+	EReference getCGIInformationFlow_M_pSource();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIInformationFlow#getM_sourceType <em>Msource Type</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Msource Type</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIInformationFlow#getM_sourceType()
+	 * @see #getCGIInformationFlow()
+	 * @generated
+	 */
+	EAttribute getCGIInformationFlow_M_sourceType();
+
+	/**
+	 * Returns the meta object for the reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIInformationFlow#getM_pTarget <em>MpTarget</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the reference '<em>MpTarget</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIInformationFlow#getM_pTarget()
+	 * @see #getCGIInformationFlow()
+	 * @generated
+	 */
+	EReference getCGIInformationFlow_M_pTarget();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIInformationFlow#getM_targetType <em>Mtarget Type</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Mtarget Type</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIInformationFlow#getM_targetType()
+	 * @see #getCGIInformationFlow()
+	 * @generated
+	 */
+	EAttribute getCGIInformationFlow_M_targetType();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIInformationFlow#getM_direction <em>Mdirection</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Mdirection</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIInformationFlow#getM_direction()
+	 * @see #getCGIInformationFlow()
+	 * @generated
+	 */
+	EAttribute getCGIInformationFlow_M_direction();
+
+	/**
+	 * Returns the meta object for the containment reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIInformationFlow#getM_rpn <em>Mrpn</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference '<em>Mrpn</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIInformationFlow#getM_rpn()
+	 * @see #getCGIInformationFlow()
+	 * @generated
+	 */
+	EReference getCGIInformationFlow_M_rpn();
+
+	/**
+	 * Returns the meta object for the attribute list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIInformationFlow#getM_anglePoint1 <em>Mangle Point1</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute list '<em>Mangle Point1</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIInformationFlow#getM_anglePoint1()
+	 * @see #getCGIInformationFlow()
+	 * @generated
+	 */
+	EAttribute getCGIInformationFlow_M_anglePoint1();
+
+	/**
+	 * Returns the meta object for the attribute list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIInformationFlow#getM_anglePoint2 <em>Mangle Point2</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute list '<em>Mangle Point2</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIInformationFlow#getM_anglePoint2()
+	 * @see #getCGIInformationFlow()
+	 * @generated
+	 */
+	EAttribute getCGIInformationFlow_M_anglePoint2();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIInformationFlow#getM_line_style <em>Mline style</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Mline style</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIInformationFlow#getM_line_style()
+	 * @see #getCGIInformationFlow()
+	 * @generated
+	 */
+	EAttribute getCGIInformationFlow_M_line_style();
+
+	/**
+	 * Returns the meta object for the attribute list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIInformationFlow#getM_SourcePort <em>MSource Port</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute list '<em>MSource Port</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIInformationFlow#getM_SourcePort()
+	 * @see #getCGIInformationFlow()
+	 * @generated
+	 */
+	EAttribute getCGIInformationFlow_M_SourcePort();
+
+	/**
+	 * Returns the meta object for the attribute list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIInformationFlow#getM_TargetPort <em>MTarget Port</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute list '<em>MTarget Port</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIInformationFlow#getM_TargetPort()
+	 * @see #getCGIInformationFlow()
+	 * @generated
+	 */
+	EAttribute getCGIInformationFlow_M_TargetPort();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIInformationFlow#getM_bShowKeyword <em>MbShow Keyword</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>MbShow Keyword</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIInformationFlow#getM_bShowKeyword()
+	 * @see #getCGIInformationFlow()
+	 * @generated
+	 */
+	EAttribute getCGIInformationFlow_M_bShowKeyword();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIInformationFlow#getM_showConveyed <em>Mshow Conveyed</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Mshow Conveyed</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIInformationFlow#getM_showConveyed()
+	 * @see #getCGIInformationFlow()
+	 * @generated
+	 */
+	EAttribute getCGIInformationFlow_M_showConveyed();
+
+	/**
+	 * Returns the meta object for the containment reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIInformationFlow#getM_keyword <em>Mkeyword</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference '<em>Mkeyword</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIInformationFlow#getM_keyword()
+	 * @see #getCGIInformationFlow()
+	 * @generated
+	 */
+	EReference getCGIInformationFlow_M_keyword();
+
+	/**
+	 * Returns the meta object for the containment reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIInformationFlow#getM_conveyed <em>Mconveyed</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference '<em>Mconveyed</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIInformationFlow#getM_conveyed()
+	 * @see #getCGIInformationFlow()
+	 * @generated
+	 */
+	EReference getCGIInformationFlow_M_conveyed();
+
+	/**
+	 * Returns the meta object for the attribute list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIInformationFlow#getM_arrow <em>Marrow</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute list '<em>Marrow</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIInformationFlow#getM_arrow()
+	 * @see #getCGIInformationFlow()
+	 * @generated
+	 */
+	EAttribute getCGIInformationFlow_M_arrow();
+
+	/**
+	 * Returns the meta object for the containment reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIInformationFlow#getProperties <em>Properties</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference '<em>Properties</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIInformationFlow#getProperties()
+	 * @see #getCGIInformationFlow()
+	 * @generated
+	 */
+	EReference getCGIInformationFlow_Properties();
+
+	/**
+	 * Returns the meta object for class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIInheritance <em>CGI Inheritance</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for class '<em>CGI Inheritance</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIInheritance
+	 * @generated
+	 */
+	EClass getCGIInheritance();
+
+	/**
+	 * Returns the meta object for the reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIInheritance#getM_pModelObject <em>MpModel Object</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the reference '<em>MpModel Object</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIInheritance#getM_pModelObject()
+	 * @see #getCGIInheritance()
+	 * @generated
+	 */
+	EReference getCGIInheritance_M_pModelObject();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIInheritance#getM_pParent <em>MpParent</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>MpParent</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIInheritance#getM_pParent()
+	 * @see #getCGIInheritance()
+	 * @generated
+	 */
+	EAttribute getCGIInheritance_M_pParent();
+
+	/**
+	 * Returns the meta object for the reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIInheritance#getM_pSource <em>MpSource</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the reference '<em>MpSource</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIInheritance#getM_pSource()
+	 * @see #getCGIInheritance()
+	 * @generated
+	 */
+	EReference getCGIInheritance_M_pSource();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIInheritance#getM_sourceType <em>Msource Type</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Msource Type</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIInheritance#getM_sourceType()
+	 * @see #getCGIInheritance()
+	 * @generated
+	 */
+	EAttribute getCGIInheritance_M_sourceType();
+
+	/**
+	 * Returns the meta object for the reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIInheritance#getM_pTarget <em>MpTarget</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the reference '<em>MpTarget</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIInheritance#getM_pTarget()
+	 * @see #getCGIInheritance()
+	 * @generated
+	 */
+	EReference getCGIInheritance_M_pTarget();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIInheritance#getM_targetType <em>Mtarget Type</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Mtarget Type</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIInheritance#getM_targetType()
+	 * @see #getCGIInheritance()
+	 * @generated
+	 */
+	EAttribute getCGIInheritance_M_targetType();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIInheritance#getM_direction <em>Mdirection</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Mdirection</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIInheritance#getM_direction()
+	 * @see #getCGIInheritance()
+	 * @generated
+	 */
+	EAttribute getCGIInheritance_M_direction();
+
+	/**
+	 * Returns the meta object for the containment reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIInheritance#getM_rpn <em>Mrpn</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference '<em>Mrpn</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIInheritance#getM_rpn()
+	 * @see #getCGIInheritance()
+	 * @generated
+	 */
+	EReference getCGIInheritance_M_rpn();
+
+	/**
+	 * Returns the meta object for the attribute list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIInheritance#getM_anglePoint1 <em>Mangle Point1</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute list '<em>Mangle Point1</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIInheritance#getM_anglePoint1()
+	 * @see #getCGIInheritance()
+	 * @generated
+	 */
+	EAttribute getCGIInheritance_M_anglePoint1();
+
+	/**
+	 * Returns the meta object for the attribute list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIInheritance#getM_anglePoint2 <em>Mangle Point2</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute list '<em>Mangle Point2</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIInheritance#getM_anglePoint2()
+	 * @see #getCGIInheritance()
+	 * @generated
+	 */
+	EAttribute getCGIInheritance_M_anglePoint2();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIInheritance#getM_line_style <em>Mline style</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Mline style</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIInheritance#getM_line_style()
+	 * @see #getCGIInheritance()
+	 * @generated
+	 */
+	EAttribute getCGIInheritance_M_line_style();
+
+	/**
+	 * Returns the meta object for the attribute list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIInheritance#getM_SourcePort <em>MSource Port</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute list '<em>MSource Port</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIInheritance#getM_SourcePort()
+	 * @see #getCGIInheritance()
+	 * @generated
+	 */
+	EAttribute getCGIInheritance_M_SourcePort();
+
+	/**
+	 * Returns the meta object for the attribute list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIInheritance#getM_TargetPort <em>MTarget Port</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute list '<em>MTarget Port</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIInheritance#getM_TargetPort()
+	 * @see #getCGIInheritance()
+	 * @generated
+	 */
+	EAttribute getCGIInheritance_M_TargetPort();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIInheritance#getM_ShowName <em>MShow Name</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>MShow Name</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIInheritance#getM_ShowName()
+	 * @see #getCGIInheritance()
+	 * @generated
+	 */
+	EAttribute getCGIInheritance_M_ShowName();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIInheritance#getM_ShowStereotype <em>MShow Stereotype</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>MShow Stereotype</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIInheritance#getM_ShowStereotype()
+	 * @see #getCGIInheritance()
+	 * @generated
+	 */
+	EAttribute getCGIInheritance_M_ShowStereotype();
+
+	/**
+	 * Returns the meta object for the containment reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIInheritance#getProperties <em>Properties</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference '<em>Properties</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIInheritance#getProperties()
+	 * @see #getCGIInheritance()
+	 * @generated
+	 */
+	EReference getCGIInheritance_Properties();
+
+	/**
+	 * Returns the meta object for the containment reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIInheritance#getM_color <em>Mcolor</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference '<em>Mcolor</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIInheritance#getM_color()
+	 * @see #getCGIInheritance()
+	 * @generated
+	 */
+	EReference getCGIInheritance_M_color();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIInheritance#getM_lineWidth <em>Mline Width</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Mline Width</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIInheritance#getM_lineWidth()
+	 * @see #getCGIInheritance()
+	 * @generated
+	 */
+	EAttribute getCGIInheritance_M_lineWidth();
+
+	/**
+	 * Returns the meta object for the attribute list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIInheritance#getM_arrow <em>Marrow</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute list '<em>Marrow</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIInheritance#getM_arrow()
+	 * @see #getCGIInheritance()
+	 * @generated
+	 */
+	EAttribute getCGIInheritance_M_arrow();
+
+	/**
+	 * Returns the meta object for class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMFCCtrl <em>CGIMFC Ctrl</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for class '<em>CGIMFC Ctrl</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMFCCtrl
+	 * @generated
+	 */
+	EClass getCGIMFCCtrl();
+
+	/**
+	 * Returns the meta object for the containment reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMFCCtrl#getProperties <em>Properties</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference '<em>Properties</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMFCCtrl#getProperties()
+	 * @see #getCGIMFCCtrl()
+	 * @generated
+	 */
+	EReference getCGIMFCCtrl_Properties();
+
+	/**
+	 * Returns the meta object for the reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMFCCtrl#getM_pModelObject <em>MpModel Object</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the reference '<em>MpModel Object</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMFCCtrl#getM_pModelObject()
+	 * @see #getCGIMFCCtrl()
+	 * @generated
+	 */
+	EReference getCGIMFCCtrl_M_pModelObject();
+
+	/**
+	 * Returns the meta object for the reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMFCCtrl#getM_pParent <em>MpParent</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the reference '<em>MpParent</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMFCCtrl#getM_pParent()
+	 * @see #getCGIMFCCtrl()
+	 * @generated
+	 */
+	EReference getCGIMFCCtrl_M_pParent();
+
+	/**
+	 * Returns the meta object for the attribute list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMFCCtrl#getM_transform <em>Mtransform</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute list '<em>Mtransform</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMFCCtrl#getM_transform()
+	 * @see #getCGIMFCCtrl()
+	 * @generated
+	 */
+	EAttribute getCGIMFCCtrl_M_transform();
+
+	/**
+	 * Returns the meta object for the attribute list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMFCCtrl#getM_polygon <em>Mpolygon</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute list '<em>Mpolygon</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMFCCtrl#getM_polygon()
+	 * @see #getCGIMFCCtrl()
+	 * @generated
+	 */
+	EAttribute getCGIMFCCtrl_M_polygon();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMFCCtrl#getM_nNameFormat <em>MnName Format</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>MnName Format</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMFCCtrl#getM_nNameFormat()
+	 * @see #getCGIMFCCtrl()
+	 * @generated
+	 */
+	EAttribute getCGIMFCCtrl_M_nNameFormat();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMFCCtrl#getM_nIsNameFormat <em>MnIs Name Format</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>MnIs Name Format</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMFCCtrl#getM_nIsNameFormat()
+	 * @see #getCGIMFCCtrl()
+	 * @generated
+	 */
+	EAttribute getCGIMFCCtrl_M_nIsNameFormat();
+
+	/**
+	 * Returns the meta object for the reference list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMFCCtrl#getCompartments <em>Compartments</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the reference list '<em>Compartments</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMFCCtrl#getCompartments()
+	 * @see #getCGIMFCCtrl()
+	 * @generated
+	 */
+	EReference getCGIMFCCtrl_Compartments();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMFCCtrl#getM_csModelObjPath <em>Mcs Model Obj Path</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Mcs Model Obj Path</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMFCCtrl#getM_csModelObjPath()
+	 * @see #getCGIMFCCtrl()
+	 * @generated
+	 */
+	EAttribute getCGIMFCCtrl_M_csModelObjPath();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMFCCtrl#getM_csName <em>Mcs Name</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Mcs Name</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMFCCtrl#getM_csName()
+	 * @see #getCGIMFCCtrl()
+	 * @generated
+	 */
+	EAttribute getCGIMFCCtrl_M_csName();
+
+	/**
+	 * Returns the meta object for the reference list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMFCCtrl#getM_PartsArray <em>MParts Array</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the reference list '<em>MParts Array</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMFCCtrl#getM_PartsArray()
+	 * @see #getCGIMFCCtrl()
+	 * @generated
+	 */
+	EReference getCGIMFCCtrl_M_PartsArray();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMFCCtrl#getM_csButtonCaption <em>Mcs Button Caption</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Mcs Button Caption</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMFCCtrl#getM_csButtonCaption()
+	 * @see #getCGIMFCCtrl()
+	 * @generated
+	 */
+	EAttribute getCGIMFCCtrl_M_csButtonCaption();
+
+	/**
+	 * Returns the meta object for class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMessageLabel <em>CGI Message Label</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for class '<em>CGI Message Label</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMessageLabel
+	 * @generated
+	 */
+	EClass getCGIMessageLabel();
+
+	/**
+	 * Returns the meta object for the reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMessageLabel#getM_pModelObject <em>MpModel Object</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the reference '<em>MpModel Object</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMessageLabel#getM_pModelObject()
+	 * @see #getCGIMessageLabel()
+	 * @generated
+	 */
+	EReference getCGIMessageLabel_M_pModelObject();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMessageLabel#getM_pParent <em>MpParent</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>MpParent</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMessageLabel#getM_pParent()
+	 * @see #getCGIMessageLabel()
+	 * @generated
+	 */
+	EAttribute getCGIMessageLabel_M_pParent();
+
+	/**
+	 * Returns the meta object for the reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMessageLabel#getM_pCommunicationConnection <em>MpCommunication Connection</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the reference '<em>MpCommunication Connection</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMessageLabel#getM_pCommunicationConnection()
+	 * @see #getCGIMessageLabel()
+	 * @generated
+	 */
+	EReference getCGIMessageLabel_M_pCommunicationConnection();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMessageLabel#getPercent <em>Percent</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Percent</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMessageLabel#getPercent()
+	 * @see #getCGIMessageLabel()
+	 * @generated
+	 */
+	EAttribute getCGIMessageLabel_Percent();
+
+	/**
+	 * Returns the meta object for class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscChart <em>CGI Msc Chart</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for class '<em>CGI Msc Chart</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscChart
+	 * @generated
+	 */
+	EClass getCGIMscChart();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscChart#getVLadderMargin <em>VLadder Margin</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>VLadder Margin</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscChart#getVLadderMargin()
+	 * @see #getCGIMscChart()
+	 * @generated
+	 */
+	EAttribute getCGIMscChart_VLadderMargin();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscChart#getM_usingActivationBar <em>Musing Activation Bar</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Musing Activation Bar</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscChart#getM_usingActivationBar()
+	 * @see #getCGIMscChart()
+	 * @generated
+	 */
+	EAttribute getCGIMscChart_M_usingActivationBar();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscChart#getId <em>Id</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Id</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscChart#getId()
+	 * @see #getCGIMscChart()
+	 * @generated
+	 */
+	EAttribute getCGIMscChart_Id();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscChart#getM_type <em>Mtype</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Mtype</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscChart#getM_type()
+	 * @see #getCGIMscChart()
+	 * @generated
+	 */
+	EAttribute getCGIMscChart_M_type();
+
+	/**
+	 * Returns the meta object for the reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscChart#getM_pModelObject <em>MpModel Object</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the reference '<em>MpModel Object</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscChart#getM_pModelObject()
+	 * @see #getCGIMscChart()
+	 * @generated
+	 */
+	EReference getCGIMscChart_M_pModelObject();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscChart#getM_pParent <em>MpParent</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>MpParent</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscChart#getM_pParent()
+	 * @see #getCGIMscChart()
+	 * @generated
+	 */
+	EAttribute getCGIMscChart_M_pParent();
+
+	/**
+	 * Returns the meta object for the containment reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscChart#getM_name <em>Mname</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference '<em>Mname</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscChart#getM_name()
+	 * @see #getCGIMscChart()
+	 * @generated
+	 */
+	EReference getCGIMscChart_M_name();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscChart#getM_drawBehavior <em>Mdraw Behavior</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Mdraw Behavior</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscChart#getM_drawBehavior()
+	 * @see #getCGIMscChart()
+	 * @generated
+	 */
+	EAttribute getCGIMscChart_M_drawBehavior();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscChart#getM_bIsPreferencesInitialized <em>MbIs Preferences Initialized</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>MbIs Preferences Initialized</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscChart#getM_bIsPreferencesInitialized()
+	 * @see #getCGIMscChart()
+	 * @generated
+	 */
+	EAttribute getCGIMscChart_M_bIsPreferencesInitialized();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscChart#getElementList <em>Element List</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Element List</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscChart#getElementList()
+	 * @see #getCGIMscChart()
+	 * @generated
+	 */
+	EAttribute getCGIMscChart_ElementList();
+
+	/**
+	 * Returns the meta object for the containment reference list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscChart#getGraphElements <em>Graph Elements</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference list '<em>Graph Elements</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscChart#getGraphElements()
+	 * @see #getCGIMscChart()
+	 * @generated
+	 */
+	EReference getCGIMscChart_GraphElements();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscChart#getM_access <em>Maccess</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Maccess</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscChart#getM_access()
+	 * @see #getCGIMscChart()
+	 * @generated
+	 */
+	EAttribute getCGIMscChart_M_access();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscChart#getM_modified <em>Mmodified</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Mmodified</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscChart#getM_modified()
+	 * @see #getCGIMscChart()
+	 * @generated
+	 */
+	EAttribute getCGIMscChart_M_modified();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscChart#getM_fileVersion <em>Mfile Version</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Mfile Version</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscChart#getM_fileVersion()
+	 * @see #getCGIMscChart()
+	 * @generated
+	 */
+	EAttribute getCGIMscChart_M_fileVersion();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscChart#getM_nModifyDate <em>MnModify Date</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>MnModify Date</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscChart#getM_nModifyDate()
+	 * @see #getCGIMscChart()
+	 * @generated
+	 */
+	EAttribute getCGIMscChart_M_nModifyDate();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscChart#getM_nCreateDate <em>MnCreate Date</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>MnCreate Date</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscChart#getM_nCreateDate()
+	 * @see #getCGIMscChart()
+	 * @generated
+	 */
+	EAttribute getCGIMscChart_M_nCreateDate();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscChart#getM_creator <em>Mcreator</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Mcreator</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscChart#getM_creator()
+	 * @see #getCGIMscChart()
+	 * @generated
+	 */
+	EAttribute getCGIMscChart_M_creator();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscChart#getM_bScaleWithZoom <em>MbScale With Zoom</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>MbScale With Zoom</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscChart#getM_bScaleWithZoom()
+	 * @see #getCGIMscChart()
+	 * @generated
+	 */
+	EAttribute getCGIMscChart_M_bScaleWithZoom();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscChart#getM_arrowStyle <em>Marrow Style</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Marrow Style</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscChart#getM_arrowStyle()
+	 * @see #getCGIMscChart()
+	 * @generated
+	 */
+	EAttribute getCGIMscChart_M_arrowStyle();
+
+	/**
+	 * Returns the meta object for the reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscChart#getM_pRoot <em>MpRoot</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the reference '<em>MpRoot</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscChart#getM_pRoot()
+	 * @see #getCGIMscChart()
+	 * @generated
+	 */
+	EReference getCGIMscChart_M_pRoot();
+
+	/**
+	 * Returns the meta object for the attribute list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscChart#getM_currentLeftTop <em>Mcurrent Left Top</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute list '<em>Mcurrent Left Top</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscChart#getM_currentLeftTop()
+	 * @see #getCGIMscChart()
+	 * @generated
+	 */
+	EAttribute getCGIMscChart_M_currentLeftTop();
+
+	/**
+	 * Returns the meta object for the attribute list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscChart#getM_currentRightBottom <em>Mcurrent Right Bottom</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute list '<em>Mcurrent Right Bottom</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscChart#getM_currentRightBottom()
+	 * @see #getCGIMscChart()
+	 * @generated
+	 */
+	EAttribute getCGIMscChart_M_currentRightBottom();
+
+	/**
+	 * Returns the meta object for class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscColumnCR <em>CGI Msc Column CR</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for class '<em>CGI Msc Column CR</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscColumnCR
+	 * @generated
+	 */
+	EClass getCGIMscColumnCR();
+
+	/**
+	 * Returns the meta object for the reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscColumnCR#getM_pModelObject <em>MpModel Object</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the reference '<em>MpModel Object</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscColumnCR#getM_pModelObject()
+	 * @see #getCGIMscColumnCR()
+	 * @generated
+	 */
+	EReference getCGIMscColumnCR_M_pModelObject();
+
+	/**
+	 * Returns the meta object for the reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscColumnCR#getM_pParent <em>MpParent</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the reference '<em>MpParent</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscColumnCR#getM_pParent()
+	 * @see #getCGIMscColumnCR()
+	 * @generated
+	 */
+	EReference getCGIMscColumnCR_M_pParent();
+
+	/**
+	 * Returns the meta object for the attribute list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscColumnCR#getM_transform <em>Mtransform</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute list '<em>Mtransform</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscColumnCR#getM_transform()
+	 * @see #getCGIMscColumnCR()
+	 * @generated
+	 */
+	EAttribute getCGIMscColumnCR_M_transform();
+
+	/**
+	 * Returns the meta object for the containment reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscColumnCR#getM_AdditionalLabel <em>MAdditional Label</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference '<em>MAdditional Label</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscColumnCR#getM_AdditionalLabel()
+	 * @see #getCGIMscColumnCR()
+	 * @generated
+	 */
+	EReference getCGIMscColumnCR_M_AdditionalLabel();
+
+	/**
+	 * Returns the meta object for the attribute list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscColumnCR#getM_position <em>Mposition</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute list '<em>Mposition</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscColumnCR#getM_position()
+	 * @see #getCGIMscColumnCR()
+	 * @generated
+	 */
+	EAttribute getCGIMscColumnCR_M_position();
+
+	/**
+	 * Returns the meta object for the reference list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscColumnCR#getM_pInheritsFrom <em>MpInherits From</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the reference list '<em>MpInherits From</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscColumnCR#getM_pInheritsFrom()
+	 * @see #getCGIMscColumnCR()
+	 * @generated
+	 */
+	EReference getCGIMscColumnCR_M_pInheritsFrom();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscColumnCR#getM_nInheritanceMask <em>MnInheritance Mask</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>MnInheritance Mask</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscColumnCR#getM_nInheritanceMask()
+	 * @see #getCGIMscColumnCR()
+	 * @generated
+	 */
+	EAttribute getCGIMscColumnCR_M_nInheritanceMask();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscColumnCR#getM_SubType <em>MSub Type</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>MSub Type</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscColumnCR#getM_SubType()
+	 * @see #getCGIMscColumnCR()
+	 * @generated
+	 */
+	EAttribute getCGIMscColumnCR_M_SubType();
+
+	/**
+	 * Returns the meta object for the containment reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscColumnCR#getProperties <em>Properties</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference '<em>Properties</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscColumnCR#getProperties()
+	 * @see #getCGIMscColumnCR()
+	 * @generated
+	 */
+	EReference getCGIMscColumnCR_Properties();
+
+	/**
+	 * Returns the meta object for class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscConditionMark <em>CGI Msc Condition Mark</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for class '<em>CGI Msc Condition Mark</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscConditionMark
+	 * @generated
+	 */
+	EClass getCGIMscConditionMark();
+
+	/**
+	 * Returns the meta object for the containment reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscConditionMark#getProperties <em>Properties</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference '<em>Properties</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscConditionMark#getProperties()
+	 * @see #getCGIMscConditionMark()
+	 * @generated
+	 */
+	EReference getCGIMscConditionMark_Properties();
+
+	/**
+	 * Returns the meta object for the reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscConditionMark#getM_pModelObject <em>MpModel Object</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the reference '<em>MpModel Object</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscConditionMark#getM_pModelObject()
+	 * @see #getCGIMscConditionMark()
+	 * @generated
+	 */
+	EReference getCGIMscConditionMark_M_pModelObject();
+
+	/**
+	 * Returns the meta object for the reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscConditionMark#getM_pParent <em>MpParent</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the reference '<em>MpParent</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscConditionMark#getM_pParent()
+	 * @see #getCGIMscConditionMark()
+	 * @generated
+	 */
+	EReference getCGIMscConditionMark_M_pParent();
+
+	/**
+	 * Returns the meta object for the attribute list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscConditionMark#getM_transform <em>Mtransform</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute list '<em>Mtransform</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscConditionMark#getM_transform()
+	 * @see #getCGIMscConditionMark()
+	 * @generated
+	 */
+	EAttribute getCGIMscConditionMark_M_transform();
+
+	/**
+	 * Returns the meta object for the attribute list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscConditionMark#getM_polygon <em>Mpolygon</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute list '<em>Mpolygon</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscConditionMark#getM_polygon()
+	 * @see #getCGIMscConditionMark()
+	 * @generated
+	 */
+	EAttribute getCGIMscConditionMark_M_polygon();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscConditionMark#getM_nNameFormat <em>MnName Format</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>MnName Format</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscConditionMark#getM_nNameFormat()
+	 * @see #getCGIMscConditionMark()
+	 * @generated
+	 */
+	EAttribute getCGIMscConditionMark_M_nNameFormat();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscConditionMark#getM_nIsNameFormat <em>MnIs Name Format</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>MnIs Name Format</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscConditionMark#getM_nIsNameFormat()
+	 * @see #getCGIMscConditionMark()
+	 * @generated
+	 */
+	EAttribute getCGIMscConditionMark_M_nIsNameFormat();
+
+	/**
+	 * Returns the meta object for the reference list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscConditionMark#getCompartments <em>Compartments</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the reference list '<em>Compartments</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscConditionMark#getCompartments()
+	 * @see #getCGIMscConditionMark()
+	 * @generated
+	 */
+	EReference getCGIMscConditionMark_Compartments();
+
+	/**
+	 * Returns the meta object for class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscExecutionOccurrence <em>CGI Msc Execution Occurrence</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for class '<em>CGI Msc Execution Occurrence</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscExecutionOccurrence
+	 * @generated
+	 */
+	EClass getCGIMscExecutionOccurrence();
+
+	/**
+	 * Returns the meta object for the reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscExecutionOccurrence#getM_pModelObject <em>MpModel Object</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the reference '<em>MpModel Object</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscExecutionOccurrence#getM_pModelObject()
+	 * @see #getCGIMscExecutionOccurrence()
+	 * @generated
+	 */
+	EReference getCGIMscExecutionOccurrence_M_pModelObject();
+
+	/**
+	 * Returns the meta object for the reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscExecutionOccurrence#getM_pParent <em>MpParent</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the reference '<em>MpParent</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscExecutionOccurrence#getM_pParent()
+	 * @see #getCGIMscExecutionOccurrence()
+	 * @generated
+	 */
+	EReference getCGIMscExecutionOccurrence_M_pParent();
+
+	/**
+	 * Returns the meta object for the attribute list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscExecutionOccurrence#getM_transform <em>Mtransform</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute list '<em>Mtransform</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscExecutionOccurrence#getM_transform()
+	 * @see #getCGIMscExecutionOccurrence()
+	 * @generated
+	 */
+	EAttribute getCGIMscExecutionOccurrence_M_transform();
+
+	/**
+	 * Returns the meta object for the attribute list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscExecutionOccurrence#getM_position <em>Mposition</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute list '<em>Mposition</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscExecutionOccurrence#getM_position()
+	 * @see #getCGIMscExecutionOccurrence()
+	 * @generated
+	 */
+	EAttribute getCGIMscExecutionOccurrence_M_position();
+
+	/**
+	 * Returns the meta object for the reference list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscExecutionOccurrence#getM_pInheritsFrom <em>MpInherits From</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the reference list '<em>MpInherits From</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscExecutionOccurrence#getM_pInheritsFrom()
+	 * @see #getCGIMscExecutionOccurrence()
+	 * @generated
+	 */
+	EReference getCGIMscExecutionOccurrence_M_pInheritsFrom();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscExecutionOccurrence#getM_nInheritanceMask <em>MnInheritance Mask</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>MnInheritance Mask</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscExecutionOccurrence#getM_nInheritanceMask()
+	 * @see #getCGIMscExecutionOccurrence()
+	 * @generated
+	 */
+	EAttribute getCGIMscExecutionOccurrence_M_nInheritanceMask();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscExecutionOccurrence#getM_SubType <em>MSub Type</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>MSub Type</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscExecutionOccurrence#getM_SubType()
+	 * @see #getCGIMscExecutionOccurrence()
+	 * @generated
+	 */
+	EAttribute getCGIMscExecutionOccurrence_M_SubType();
+
+	/**
+	 * Returns the meta object for the reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscExecutionOccurrence#getM_pStartMessage <em>MpStart Message</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the reference '<em>MpStart Message</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscExecutionOccurrence#getM_pStartMessage()
+	 * @see #getCGIMscExecutionOccurrence()
+	 * @generated
+	 */
+	EReference getCGIMscExecutionOccurrence_M_pStartMessage();
+
+	/**
+	 * Returns the meta object for class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscInteractionOccurrence <em>CGI Msc Interaction Occurrence</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for class '<em>CGI Msc Interaction Occurrence</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscInteractionOccurrence
+	 * @generated
+	 */
+	EClass getCGIMscInteractionOccurrence();
+
+	/**
+	 * Returns the meta object for the reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscInteractionOccurrence#getM_pModelObject <em>MpModel Object</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the reference '<em>MpModel Object</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscInteractionOccurrence#getM_pModelObject()
+	 * @see #getCGIMscInteractionOccurrence()
+	 * @generated
+	 */
+	EReference getCGIMscInteractionOccurrence_M_pModelObject();
+
+	/**
+	 * Returns the meta object for the reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscInteractionOccurrence#getM_pParent <em>MpParent</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the reference '<em>MpParent</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscInteractionOccurrence#getM_pParent()
+	 * @see #getCGIMscInteractionOccurrence()
+	 * @generated
+	 */
+	EReference getCGIMscInteractionOccurrence_M_pParent();
+
+	/**
+	 * Returns the meta object for the attribute list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscInteractionOccurrence#getM_transform <em>Mtransform</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute list '<em>Mtransform</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscInteractionOccurrence#getM_transform()
+	 * @see #getCGIMscInteractionOccurrence()
+	 * @generated
+	 */
+	EAttribute getCGIMscInteractionOccurrence_M_transform();
+
+	/**
+	 * Returns the meta object for the attribute list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscInteractionOccurrence#getM_polygon <em>Mpolygon</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute list '<em>Mpolygon</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscInteractionOccurrence#getM_polygon()
+	 * @see #getCGIMscInteractionOccurrence()
+	 * @generated
+	 */
+	EAttribute getCGIMscInteractionOccurrence_M_polygon();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscInteractionOccurrence#getM_nNameFormat <em>MnName Format</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>MnName Format</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscInteractionOccurrence#getM_nNameFormat()
+	 * @see #getCGIMscInteractionOccurrence()
+	 * @generated
+	 */
+	EAttribute getCGIMscInteractionOccurrence_M_nNameFormat();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscInteractionOccurrence#getM_nIsNameFormat <em>MnIs Name Format</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>MnIs Name Format</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscInteractionOccurrence#getM_nIsNameFormat()
+	 * @see #getCGIMscInteractionOccurrence()
+	 * @generated
+	 */
+	EAttribute getCGIMscInteractionOccurrence_M_nIsNameFormat();
+
+	/**
+	 * Returns the meta object for the reference list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscInteractionOccurrence#getCompartments <em>Compartments</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the reference list '<em>Compartments</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscInteractionOccurrence#getCompartments()
+	 * @see #getCGIMscInteractionOccurrence()
+	 * @generated
+	 */
+	EReference getCGIMscInteractionOccurrence_Compartments();
+
+	/**
+	 * Returns the meta object for the containment reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscInteractionOccurrence#getProperties <em>Properties</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference '<em>Properties</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscInteractionOccurrence#getProperties()
+	 * @see #getCGIMscInteractionOccurrence()
+	 * @generated
+	 */
+	EReference getCGIMscInteractionOccurrence_Properties();
+
+	/**
+	 * Returns the meta object for class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscInteractionOperand <em>CGI Msc Interaction Operand</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for class '<em>CGI Msc Interaction Operand</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscInteractionOperand
+	 * @generated
+	 */
+	EClass getCGIMscInteractionOperand();
+
+	/**
+	 * Returns the meta object for the containment reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscInteractionOperand#getProperties <em>Properties</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference '<em>Properties</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscInteractionOperand#getProperties()
+	 * @see #getCGIMscInteractionOperand()
+	 * @generated
+	 */
+	EReference getCGIMscInteractionOperand_Properties();
+
+	/**
+	 * Returns the meta object for the reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscInteractionOperand#getM_pModelObject <em>MpModel Object</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the reference '<em>MpModel Object</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscInteractionOperand#getM_pModelObject()
+	 * @see #getCGIMscInteractionOperand()
+	 * @generated
+	 */
+	EReference getCGIMscInteractionOperand_M_pModelObject();
+
+	/**
+	 * Returns the meta object for the reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscInteractionOperand#getM_pParent <em>MpParent</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the reference '<em>MpParent</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscInteractionOperand#getM_pParent()
+	 * @see #getCGIMscInteractionOperand()
+	 * @generated
+	 */
+	EReference getCGIMscInteractionOperand_M_pParent();
+
+	/**
+	 * Returns the meta object for the containment reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscInteractionOperand#getM_AdditionalLabel <em>MAdditional Label</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference '<em>MAdditional Label</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscInteractionOperand#getM_AdditionalLabel()
+	 * @see #getCGIMscInteractionOperand()
+	 * @generated
+	 */
+	EReference getCGIMscInteractionOperand_M_AdditionalLabel();
+
+	/**
+	 * Returns the meta object for the attribute list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscInteractionOperand#getM_polygon <em>Mpolygon</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute list '<em>Mpolygon</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscInteractionOperand#getM_polygon()
+	 * @see #getCGIMscInteractionOperand()
+	 * @generated
+	 */
+	EAttribute getCGIMscInteractionOperand_M_polygon();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscInteractionOperand#getM_nNameFormat <em>MnName Format</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>MnName Format</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscInteractionOperand#getM_nNameFormat()
+	 * @see #getCGIMscInteractionOperand()
+	 * @generated
+	 */
+	EAttribute getCGIMscInteractionOperand_M_nNameFormat();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscInteractionOperand#getM_nIsNameFormat <em>MnIs Name Format</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>MnIs Name Format</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscInteractionOperand#getM_nIsNameFormat()
+	 * @see #getCGIMscInteractionOperand()
+	 * @generated
+	 */
+	EAttribute getCGIMscInteractionOperand_M_nIsNameFormat();
+
+	/**
+	 * Returns the meta object for the reference list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscInteractionOperand#getCompartments <em>Compartments</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the reference list '<em>Compartments</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscInteractionOperand#getCompartments()
+	 * @see #getCGIMscInteractionOperand()
+	 * @generated
+	 */
+	EReference getCGIMscInteractionOperand_Compartments();
+
+	/**
+	 * Returns the meta object for the attribute list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscInteractionOperand#getM_transform <em>Mtransform</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute list '<em>Mtransform</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscInteractionOperand#getM_transform()
+	 * @see #getCGIMscInteractionOperand()
+	 * @generated
+	 */
+	EAttribute getCGIMscInteractionOperand_M_transform();
+
+	/**
+	 * Returns the meta object for class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscInteractionOperator <em>CGI Msc Interaction Operator</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for class '<em>CGI Msc Interaction Operator</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscInteractionOperator
+	 * @generated
+	 */
+	EClass getCGIMscInteractionOperator();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscInteractionOperator#getM_operatorType <em>Moperator Type</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Moperator Type</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscInteractionOperator#getM_operatorType()
+	 * @see #getCGIMscInteractionOperator()
+	 * @generated
+	 */
+	EAttribute getCGIMscInteractionOperator_M_operatorType();
+
+	/**
+	 * Returns the meta object for the containment reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscInteractionOperator#getProperties <em>Properties</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference '<em>Properties</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscInteractionOperator#getProperties()
+	 * @see #getCGIMscInteractionOperator()
+	 * @generated
+	 */
+	EReference getCGIMscInteractionOperator_Properties();
+
+	/**
+	 * Returns the meta object for the reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscInteractionOperator#getM_pModelObject <em>MpModel Object</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the reference '<em>MpModel Object</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscInteractionOperator#getM_pModelObject()
+	 * @see #getCGIMscInteractionOperator()
+	 * @generated
+	 */
+	EReference getCGIMscInteractionOperator_M_pModelObject();
+
+	/**
+	 * Returns the meta object for the reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscInteractionOperator#getM_pParent <em>MpParent</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the reference '<em>MpParent</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscInteractionOperator#getM_pParent()
+	 * @see #getCGIMscInteractionOperator()
+	 * @generated
+	 */
+	EReference getCGIMscInteractionOperator_M_pParent();
+
+	/**
+	 * Returns the meta object for the attribute list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscInteractionOperator#getM_transform <em>Mtransform</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute list '<em>Mtransform</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscInteractionOperator#getM_transform()
+	 * @see #getCGIMscInteractionOperator()
+	 * @generated
+	 */
+	EAttribute getCGIMscInteractionOperator_M_transform();
+
+	/**
+	 * Returns the meta object for the attribute list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscInteractionOperator#getM_polygon <em>Mpolygon</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute list '<em>Mpolygon</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscInteractionOperator#getM_polygon()
+	 * @see #getCGIMscInteractionOperator()
+	 * @generated
+	 */
+	EAttribute getCGIMscInteractionOperator_M_polygon();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscInteractionOperator#getM_nNameFormat <em>MnName Format</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>MnName Format</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscInteractionOperator#getM_nNameFormat()
+	 * @see #getCGIMscInteractionOperator()
+	 * @generated
+	 */
+	EAttribute getCGIMscInteractionOperator_M_nNameFormat();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscInteractionOperator#getM_nIsNameFormat <em>MnIs Name Format</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>MnIs Name Format</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscInteractionOperator#getM_nIsNameFormat()
+	 * @see #getCGIMscInteractionOperator()
+	 * @generated
+	 */
+	EAttribute getCGIMscInteractionOperator_M_nIsNameFormat();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscInteractionOperator#getFrameset <em>Frameset</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Frameset</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscInteractionOperator#getFrameset()
+	 * @see #getCGIMscInteractionOperator()
+	 * @generated
+	 */
+	EAttribute getCGIMscInteractionOperator_Frameset();
+
+	/**
+	 * Returns the meta object for the reference list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscInteractionOperator#getCompartments <em>Compartments</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the reference list '<em>Compartments</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscInteractionOperator#getCompartments()
+	 * @see #getCGIMscInteractionOperator()
+	 * @generated
+	 */
+	EReference getCGIMscInteractionOperator_Compartments();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscInteractionOperator#getM_bFramesetModified <em>MbFrameset Modified</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>MbFrameset Modified</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscInteractionOperator#getM_bFramesetModified()
+	 * @see #getCGIMscInteractionOperator()
+	 * @generated
+	 */
+	EAttribute getCGIMscInteractionOperator_M_bFramesetModified();
+
+	/**
+	 * Returns the meta object for class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscMessage <em>CGI Msc Message</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for class '<em>CGI Msc Message</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscMessage
+	 * @generated
+	 */
+	EClass getCGIMscMessage();
+
+	/**
+	 * Returns the meta object for the reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscMessage#getM_pModelObject <em>MpModel Object</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the reference '<em>MpModel Object</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscMessage#getM_pModelObject()
+	 * @see #getCGIMscMessage()
+	 * @generated
+	 */
+	EReference getCGIMscMessage_M_pModelObject();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscMessage#getM_pParent <em>MpParent</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>MpParent</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscMessage#getM_pParent()
+	 * @see #getCGIMscMessage()
+	 * @generated
+	 */
+	EAttribute getCGIMscMessage_M_pParent();
+
+	/**
+	 * Returns the meta object for the reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscMessage#getM_pSource <em>MpSource</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the reference '<em>MpSource</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscMessage#getM_pSource()
+	 * @see #getCGIMscMessage()
+	 * @generated
+	 */
+	EReference getCGIMscMessage_M_pSource();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscMessage#getM_sourceType <em>Msource Type</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Msource Type</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscMessage#getM_sourceType()
+	 * @see #getCGIMscMessage()
+	 * @generated
+	 */
+	EAttribute getCGIMscMessage_M_sourceType();
+
+	/**
+	 * Returns the meta object for the reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscMessage#getM_pTarget <em>MpTarget</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the reference '<em>MpTarget</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscMessage#getM_pTarget()
+	 * @see #getCGIMscMessage()
+	 * @generated
+	 */
+	EReference getCGIMscMessage_M_pTarget();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscMessage#getM_targetType <em>Mtarget Type</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Mtarget Type</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscMessage#getM_targetType()
+	 * @see #getCGIMscMessage()
+	 * @generated
+	 */
+	EAttribute getCGIMscMessage_M_targetType();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscMessage#getM_direction <em>Mdirection</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Mdirection</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscMessage#getM_direction()
+	 * @see #getCGIMscMessage()
+	 * @generated
+	 */
+	EAttribute getCGIMscMessage_M_direction();
+
+	/**
+	 * Returns the meta object for the containment reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscMessage#getM_rpn <em>Mrpn</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference '<em>Mrpn</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscMessage#getM_rpn()
+	 * @see #getCGIMscMessage()
+	 * @generated
+	 */
+	EReference getCGIMscMessage_M_rpn();
+
+	/**
+	 * Returns the meta object for the attribute list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscMessage#getM_anglePoint1 <em>Mangle Point1</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute list '<em>Mangle Point1</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscMessage#getM_anglePoint1()
+	 * @see #getCGIMscMessage()
+	 * @generated
+	 */
+	EAttribute getCGIMscMessage_M_anglePoint1();
+
+	/**
+	 * Returns the meta object for the attribute list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscMessage#getM_anglePoint2 <em>Mangle Point2</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute list '<em>Mangle Point2</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscMessage#getM_anglePoint2()
+	 * @see #getCGIMscMessage()
+	 * @generated
+	 */
+	EAttribute getCGIMscMessage_M_anglePoint2();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscMessage#getM_line_style <em>Mline style</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Mline style</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscMessage#getM_line_style()
+	 * @see #getCGIMscMessage()
+	 * @generated
+	 */
+	EAttribute getCGIMscMessage_M_line_style();
+
+	/**
+	 * Returns the meta object for the attribute list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscMessage#getM_SourcePort <em>MSource Port</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute list '<em>MSource Port</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscMessage#getM_SourcePort()
+	 * @see #getCGIMscMessage()
+	 * @generated
+	 */
+	EAttribute getCGIMscMessage_M_SourcePort();
+
+	/**
+	 * Returns the meta object for the attribute list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscMessage#getM_TargetPort <em>MTarget Port</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute list '<em>MTarget Port</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscMessage#getM_TargetPort()
+	 * @see #getCGIMscMessage()
+	 * @generated
+	 */
+	EAttribute getCGIMscMessage_M_TargetPort();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscMessage#getM_bLeft <em>MbLeft</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>MbLeft</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscMessage#getM_bLeft()
+	 * @see #getCGIMscMessage()
+	 * @generated
+	 */
+	EAttribute getCGIMscMessage_M_bLeft();
+
+	/**
+	 * Returns the meta object for the attribute list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscMessage#getM_arrow <em>Marrow</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute list '<em>Marrow</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscMessage#getM_arrow()
+	 * @see #getCGIMscMessage()
+	 * @generated
+	 */
+	EAttribute getCGIMscMessage_M_arrow();
+
+	/**
+	 * Returns the meta object for the containment reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscMessage#getProperties <em>Properties</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference '<em>Properties</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscMessage#getProperties()
+	 * @see #getCGIMscMessage()
+	 * @generated
+	 */
+	EReference getCGIMscMessage_Properties();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscMessage#getMyState <em>My State</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>My State</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscMessage#getMyState()
+	 * @see #getCGIMscMessage()
+	 * @generated
+	 */
+	EAttribute getCGIMscMessage_MyState();
+
+	/**
+	 * Returns the meta object for the reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscMessage#getM_pSourceExec <em>MpSource Exec</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the reference '<em>MpSource Exec</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscMessage#getM_pSourceExec()
+	 * @see #getCGIMscMessage()
+	 * @generated
+	 */
+	EReference getCGIMscMessage_M_pSourceExec();
+
+	/**
+	 * Returns the meta object for the reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscMessage#getM_pTargetExec <em>MpTarget Exec</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the reference '<em>MpTarget Exec</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscMessage#getM_pTargetExec()
+	 * @see #getCGIMscMessage()
+	 * @generated
+	 */
+	EReference getCGIMscMessage_M_pTargetExec();
+
+	/**
+	 * Returns the meta object for class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIObjectInstance <em>CGI Object Instance</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for class '<em>CGI Object Instance</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIObjectInstance
+	 * @generated
+	 */
+	EClass getCGIObjectInstance();
+
+	/**
+	 * Returns the meta object for the reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIObjectInstance#getM_pModelObject <em>MpModel Object</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the reference '<em>MpModel Object</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIObjectInstance#getM_pModelObject()
+	 * @see #getCGIObjectInstance()
+	 * @generated
+	 */
+	EReference getCGIObjectInstance_M_pModelObject();
+
+	/**
+	 * Returns the meta object for the reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIObjectInstance#getM_pParent <em>MpParent</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the reference '<em>MpParent</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIObjectInstance#getM_pParent()
+	 * @see #getCGIObjectInstance()
+	 * @generated
+	 */
+	EReference getCGIObjectInstance_M_pParent();
+
+	/**
+	 * Returns the meta object for the attribute list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIObjectInstance#getM_transform <em>Mtransform</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute list '<em>Mtransform</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIObjectInstance#getM_transform()
+	 * @see #getCGIObjectInstance()
+	 * @generated
+	 */
+	EAttribute getCGIObjectInstance_M_transform();
+
+	/**
+	 * Returns the meta object for the containment reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIObjectInstance#getM_AdditionalLabel <em>MAdditional Label</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference '<em>MAdditional Label</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIObjectInstance#getM_AdditionalLabel()
+	 * @see #getCGIObjectInstance()
+	 * @generated
+	 */
+	EReference getCGIObjectInstance_M_AdditionalLabel();
+
+	/**
+	 * Returns the meta object for the attribute list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIObjectInstance#getM_polygon <em>Mpolygon</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute list '<em>Mpolygon</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIObjectInstance#getM_polygon()
+	 * @see #getCGIObjectInstance()
+	 * @generated
+	 */
+	EAttribute getCGIObjectInstance_M_polygon();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIObjectInstance#getM_nNameFormat <em>MnName Format</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>MnName Format</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIObjectInstance#getM_nNameFormat()
+	 * @see #getCGIObjectInstance()
+	 * @generated
+	 */
+	EAttribute getCGIObjectInstance_M_nNameFormat();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIObjectInstance#getM_nIsNameFormat <em>MnIs Name Format</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>MnIs Name Format</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIObjectInstance#getM_nIsNameFormat()
+	 * @see #getCGIObjectInstance()
+	 * @generated
+	 */
+	EAttribute getCGIObjectInstance_M_nIsNameFormat();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIObjectInstance#getFrameset <em>Frameset</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Frameset</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIObjectInstance#getFrameset()
+	 * @see #getCGIObjectInstance()
+	 * @generated
+	 */
+	EAttribute getCGIObjectInstance_Frameset();
+
+	/**
+	 * Returns the meta object for the containment reference list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIObjectInstance#getCompartments <em>Compartments</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference list '<em>Compartments</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIObjectInstance#getCompartments()
+	 * @see #getCGIObjectInstance()
+	 * @generated
+	 */
+	EReference getCGIObjectInstance_Compartments();
+
+	/**
+	 * Returns the meta object for the containment reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIObjectInstance#getM_multiplicity <em>Mmultiplicity</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference '<em>Mmultiplicity</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIObjectInstance#getM_multiplicity()
+	 * @see #getCGIObjectInstance()
+	 * @generated
+	 */
+	EReference getCGIObjectInstance_M_multiplicity();
+
+	/**
+	 * Returns the meta object for the containment reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIObjectInstance#getProperties <em>Properties</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference '<em>Properties</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIObjectInstance#getProperties()
+	 * @see #getCGIObjectInstance()
+	 * @generated
+	 */
+	EReference getCGIObjectInstance_Properties();
+
+	/**
+	 * Returns the meta object for the reference list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIObjectInstance#getOperations <em>Operations</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the reference list '<em>Operations</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIObjectInstance#getOperations()
+	 * @see #getCGIObjectInstance()
+	 * @generated
+	 */
+	EReference getCGIObjectInstance_Operations();
+
+	/**
+	 * Returns the meta object for the reference list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIObjectInstance#getAttrs <em>Attrs</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the reference list '<em>Attrs</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIObjectInstance#getAttrs()
+	 * @see #getCGIObjectInstance()
+	 * @generated
+	 */
+	EReference getCGIObjectInstance_Attrs();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIObjectInstance#getM_bFramesetModified <em>MbFrameset Modified</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>MbFrameset Modified</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIObjectInstance#getM_bFramesetModified()
+	 * @see #getCGIObjectInstance()
+	 * @generated
+	 */
+	EAttribute getCGIObjectInstance_M_bFramesetModified();
+
+	/**
+	 * Returns the meta object for the reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIObjectInstance#getM_pImageViewData <em>MpImage View Data</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the reference '<em>MpImage View Data</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIObjectInstance#getM_pImageViewData()
+	 * @see #getCGIObjectInstance()
+	 * @generated
+	 */
+	EReference getCGIObjectInstance_M_pImageViewData();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIObjectInstance#getM_bIsMisplaced <em>MbIs Misplaced</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>MbIs Misplaced</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIObjectInstance#getM_bIsMisplaced()
+	 * @see #getCGIObjectInstance()
+	 * @generated
+	 */
+	EAttribute getCGIObjectInstance_M_bIsMisplaced();
+
+	/**
+	 * Returns the meta object for class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIObjectLink <em>CGI Object Link</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for class '<em>CGI Object Link</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIObjectLink
+	 * @generated
+	 */
+	EClass getCGIObjectLink();
+
+	/**
+	 * Returns the meta object for the containment reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIObjectLink#getProperties <em>Properties</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference '<em>Properties</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIObjectLink#getProperties()
+	 * @see #getCGIObjectLink()
+	 * @generated
+	 */
+	EReference getCGIObjectLink_Properties();
+
+	/**
+	 * Returns the meta object for the reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIObjectLink#getM_pModelObject <em>MpModel Object</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the reference '<em>MpModel Object</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIObjectLink#getM_pModelObject()
+	 * @see #getCGIObjectLink()
+	 * @generated
+	 */
+	EReference getCGIObjectLink_M_pModelObject();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIObjectLink#getM_pParent <em>MpParent</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>MpParent</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIObjectLink#getM_pParent()
+	 * @see #getCGIObjectLink()
+	 * @generated
+	 */
+	EAttribute getCGIObjectLink_M_pParent();
+
+	/**
+	 * Returns the meta object for the reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIObjectLink#getM_pSource <em>MpSource</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the reference '<em>MpSource</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIObjectLink#getM_pSource()
+	 * @see #getCGIObjectLink()
+	 * @generated
+	 */
+	EReference getCGIObjectLink_M_pSource();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIObjectLink#getM_sourceType <em>Msource Type</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Msource Type</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIObjectLink#getM_sourceType()
+	 * @see #getCGIObjectLink()
+	 * @generated
+	 */
+	EAttribute getCGIObjectLink_M_sourceType();
+
+	/**
+	 * Returns the meta object for the reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIObjectLink#getM_pTarget <em>MpTarget</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the reference '<em>MpTarget</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIObjectLink#getM_pTarget()
+	 * @see #getCGIObjectLink()
+	 * @generated
+	 */
+	EReference getCGIObjectLink_M_pTarget();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIObjectLink#getM_targetType <em>Mtarget Type</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Mtarget Type</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIObjectLink#getM_targetType()
+	 * @see #getCGIObjectLink()
+	 * @generated
+	 */
+	EAttribute getCGIObjectLink_M_targetType();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIObjectLink#getM_direction <em>Mdirection</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Mdirection</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIObjectLink#getM_direction()
+	 * @see #getCGIObjectLink()
+	 * @generated
+	 */
+	EAttribute getCGIObjectLink_M_direction();
+
+	/**
+	 * Returns the meta object for the containment reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIObjectLink#getM_rpn <em>Mrpn</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference '<em>Mrpn</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIObjectLink#getM_rpn()
+	 * @see #getCGIObjectLink()
+	 * @generated
+	 */
+	EReference getCGIObjectLink_M_rpn();
+
+	/**
+	 * Returns the meta object for the attribute list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIObjectLink#getM_arrow <em>Marrow</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute list '<em>Marrow</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIObjectLink#getM_arrow()
+	 * @see #getCGIObjectLink()
+	 * @generated
+	 */
+	EAttribute getCGIObjectLink_M_arrow();
+
+	/**
+	 * Returns the meta object for the attribute list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIObjectLink#getM_anglePoint1 <em>Mangle Point1</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute list '<em>Mangle Point1</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIObjectLink#getM_anglePoint1()
+	 * @see #getCGIObjectLink()
+	 * @generated
+	 */
+	EAttribute getCGIObjectLink_M_anglePoint1();
+
+	/**
+	 * Returns the meta object for the attribute list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIObjectLink#getM_anglePoint2 <em>Mangle Point2</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute list '<em>Mangle Point2</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIObjectLink#getM_anglePoint2()
+	 * @see #getCGIObjectLink()
+	 * @generated
+	 */
+	EAttribute getCGIObjectLink_M_anglePoint2();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIObjectLink#getM_line_style <em>Mline style</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Mline style</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIObjectLink#getM_line_style()
+	 * @see #getCGIObjectLink()
+	 * @generated
+	 */
+	EAttribute getCGIObjectLink_M_line_style();
+
+	/**
+	 * Returns the meta object for the attribute list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIObjectLink#getM_SourcePort <em>MSource Port</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute list '<em>MSource Port</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIObjectLink#getM_SourcePort()
+	 * @see #getCGIObjectLink()
+	 * @generated
+	 */
+	EAttribute getCGIObjectLink_M_SourcePort();
+
+	/**
+	 * Returns the meta object for the attribute list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIObjectLink#getM_TargetPort <em>MTarget Port</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute list '<em>MTarget Port</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIObjectLink#getM_TargetPort()
+	 * @see #getCGIObjectLink()
+	 * @generated
+	 */
+	EAttribute getCGIObjectLink_M_TargetPort();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIObjectLink#getM_bShowSourceMultiplicity <em>MbShow Source Multiplicity</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>MbShow Source Multiplicity</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIObjectLink#getM_bShowSourceMultiplicity()
+	 * @see #getCGIObjectLink()
+	 * @generated
+	 */
+	EAttribute getCGIObjectLink_M_bShowSourceMultiplicity();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIObjectLink#getM_bShowSourceRole <em>MbShow Source Role</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>MbShow Source Role</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIObjectLink#getM_bShowSourceRole()
+	 * @see #getCGIObjectLink()
+	 * @generated
+	 */
+	EAttribute getCGIObjectLink_M_bShowSourceRole();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIObjectLink#getM_bShowTargetMultiplicity <em>MbShow Target Multiplicity</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>MbShow Target Multiplicity</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIObjectLink#getM_bShowTargetMultiplicity()
+	 * @see #getCGIObjectLink()
+	 * @generated
+	 */
+	EAttribute getCGIObjectLink_M_bShowTargetMultiplicity();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIObjectLink#getM_bShowTargetRole <em>MbShow Target Role</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>MbShow Target Role</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIObjectLink#getM_bShowTargetRole()
+	 * @see #getCGIObjectLink()
+	 * @generated
+	 */
+	EAttribute getCGIObjectLink_M_bShowTargetRole();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIObjectLink#getM_bShowLinkName <em>MbShow Link Name</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>MbShow Link Name</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIObjectLink#getM_bShowLinkName()
+	 * @see #getCGIObjectLink()
+	 * @generated
+	 */
+	EAttribute getCGIObjectLink_M_bShowLinkName();
+
+	/**
+	 * Returns the meta object for the containment reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIObjectLink#getM_sourceRole <em>Msource Role</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference '<em>Msource Role</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIObjectLink#getM_sourceRole()
+	 * @see #getCGIObjectLink()
+	 * @generated
+	 */
+	EReference getCGIObjectLink_M_sourceRole();
+
+	/**
+	 * Returns the meta object for the containment reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIObjectLink#getM_targetRole <em>Mtarget Role</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference '<em>Mtarget Role</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIObjectLink#getM_targetRole()
+	 * @see #getCGIObjectLink()
+	 * @generated
+	 */
+	EReference getCGIObjectLink_M_targetRole();
+
+	/**
+	 * Returns the meta object for the containment reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIObjectLink#getM_sourceMultiplicity <em>Msource Multiplicity</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference '<em>Msource Multiplicity</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIObjectLink#getM_sourceMultiplicity()
+	 * @see #getCGIObjectLink()
+	 * @generated
+	 */
+	EReference getCGIObjectLink_M_sourceMultiplicity();
+
+	/**
+	 * Returns the meta object for the containment reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIObjectLink#getM_targetMultiplicity <em>Mtarget Multiplicity</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference '<em>Mtarget Multiplicity</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIObjectLink#getM_targetMultiplicity()
+	 * @see #getCGIObjectLink()
+	 * @generated
+	 */
+	EReference getCGIObjectLink_M_targetMultiplicity();
+
+	/**
+	 * Returns the meta object for class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIPackage <em>CGI Package</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for class '<em>CGI Package</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIPackage
+	 * @generated
+	 */
+	EClass getCGIPackage();
+
+	/**
+	 * Returns the meta object for the reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIPackage#getM_pModelObject <em>MpModel Object</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the reference '<em>MpModel Object</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIPackage#getM_pModelObject()
+	 * @see #getCGIPackage()
+	 * @generated
+	 */
+	EReference getCGIPackage_M_pModelObject();
+
+	/**
+	 * Returns the meta object for the reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIPackage#getM_pParent <em>MpParent</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the reference '<em>MpParent</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIPackage#getM_pParent()
+	 * @see #getCGIPackage()
+	 * @generated
+	 */
+	EReference getCGIPackage_M_pParent();
+
+	/**
+	 * Returns the meta object for the attribute list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIPackage#getM_transform <em>Mtransform</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute list '<em>Mtransform</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIPackage#getM_transform()
+	 * @see #getCGIPackage()
+	 * @generated
+	 */
+	EAttribute getCGIPackage_M_transform();
+
+	/**
+	 * Returns the meta object for the attribute list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIPackage#getM_polygon <em>Mpolygon</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute list '<em>Mpolygon</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIPackage#getM_polygon()
+	 * @see #getCGIPackage()
+	 * @generated
+	 */
+	EAttribute getCGIPackage_M_polygon();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIPackage#getM_nNameFormat <em>MnName Format</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>MnName Format</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIPackage#getM_nNameFormat()
+	 * @see #getCGIPackage()
+	 * @generated
+	 */
+	EAttribute getCGIPackage_M_nNameFormat();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIPackage#getM_nIsNameFormat <em>MnIs Name Format</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>MnIs Name Format</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIPackage#getM_nIsNameFormat()
+	 * @see #getCGIPackage()
+	 * @generated
+	 */
+	EAttribute getCGIPackage_M_nIsNameFormat();
+
+	/**
+	 * Returns the meta object for the reference list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIPackage#getCompartments <em>Compartments</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the reference list '<em>Compartments</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIPackage#getCompartments()
+	 * @see #getCGIPackage()
+	 * @generated
+	 */
+	EReference getCGIPackage_Compartments();
+
+	/**
+	 * Returns the meta object for the containment reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIPackage#getProperties <em>Properties</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference '<em>Properties</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIPackage#getProperties()
+	 * @see #getCGIPackage()
+	 * @generated
+	 */
+	EReference getCGIPackage_Properties();
+
+	/**
+	 * Returns the meta object for the containment reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIPackage#getM_color <em>Mcolor</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference '<em>Mcolor</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIPackage#getM_color()
+	 * @see #getCGIPackage()
+	 * @generated
+	 */
+	EReference getCGIPackage_M_color();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIPackage#getM_lineWidth <em>Mline Width</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Mline Width</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIPackage#getM_lineWidth()
+	 * @see #getCGIPackage()
+	 * @generated
+	 */
+	EAttribute getCGIPackage_M_lineWidth();
+
+	/**
+	 * Returns the meta object for the containment reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIPackage#getM_AdditionalLabel <em>MAdditional Label</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference '<em>MAdditional Label</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIPackage#getM_AdditionalLabel()
+	 * @see #getCGIPackage()
+	 * @generated
+	 */
+	EReference getCGIPackage_M_AdditionalLabel();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIPackage#getFrameset <em>Frameset</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Frameset</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIPackage#getFrameset()
+	 * @see #getCGIPackage()
+	 * @generated
+	 */
+	EAttribute getCGIPackage_Frameset();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIPackage#getM_bIsStructured <em>MbIs Structured</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>MbIs Structured</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIPackage#getM_bIsStructured()
+	 * @see #getCGIPackage()
+	 * @generated
+	 */
+	EAttribute getCGIPackage_M_bIsStructured();
+
+	/**
+	 * Returns the meta object for class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIPartition <em>CGI Partition</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for class '<em>CGI Partition</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIPartition
+	 * @generated
+	 */
+	EClass getCGIPartition();
+
+	/**
+	 * Returns the meta object for the reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIPartition#getM_pModelObject <em>MpModel Object</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the reference '<em>MpModel Object</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIPartition#getM_pModelObject()
+	 * @see #getCGIPartition()
+	 * @generated
+	 */
+	EReference getCGIPartition_M_pModelObject();
+
+	/**
+	 * Returns the meta object for the reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIPartition#getM_pParent <em>MpParent</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the reference '<em>MpParent</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIPartition#getM_pParent()
+	 * @see #getCGIPartition()
+	 * @generated
+	 */
+	EReference getCGIPartition_M_pParent();
+
+	/**
+	 * Returns the meta object for the attribute list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIPartition#getM_polygon <em>Mpolygon</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute list '<em>Mpolygon</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIPartition#getM_polygon()
+	 * @see #getCGIPartition()
+	 * @generated
+	 */
+	EAttribute getCGIPartition_M_polygon();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIPartition#getM_nNameFormat <em>MnName Format</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>MnName Format</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIPartition#getM_nNameFormat()
+	 * @see #getCGIPartition()
+	 * @generated
+	 */
+	EAttribute getCGIPartition_M_nNameFormat();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIPartition#getM_nIsNameFormat <em>MnIs Name Format</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>MnIs Name Format</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIPartition#getM_nIsNameFormat()
+	 * @see #getCGIPartition()
+	 * @generated
+	 */
+	EAttribute getCGIPartition_M_nIsNameFormat();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIPartition#getFrameset <em>Frameset</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Frameset</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIPartition#getFrameset()
+	 * @see #getCGIPartition()
+	 * @generated
+	 */
+	EAttribute getCGIPartition_Frameset();
+
+	/**
+	 * Returns the meta object for the containment reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIPartition#getM_AdditionalLabel <em>MAdditional Label</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference '<em>MAdditional Label</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIPartition#getM_AdditionalLabel()
+	 * @see #getCGIPartition()
+	 * @generated
+	 */
+	EReference getCGIPartition_M_AdditionalLabel();
+
+	/**
+	 * Returns the meta object for the containment reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIPartition#getProperties <em>Properties</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference '<em>Properties</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIPartition#getProperties()
+	 * @see #getCGIPartition()
+	 * @generated
+	 */
+	EReference getCGIPartition_Properties();
+
+	/**
+	 * Returns the meta object for the containment reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIPartition#getCompartments <em>Compartments</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference '<em>Compartments</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIPartition#getCompartments()
+	 * @see #getCGIPartition()
+	 * @generated
+	 */
+	EReference getCGIPartition_Compartments();
+
+	/**
+	 * Returns the meta object for class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIPortConnector <em>CGI Port Connector</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for class '<em>CGI Port Connector</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIPortConnector
+	 * @generated
+	 */
+	EClass getCGIPortConnector();
+
+	/**
+	 * Returns the meta object for the reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIPortConnector#getM_pModelObject <em>MpModel Object</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the reference '<em>MpModel Object</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIPortConnector#getM_pModelObject()
+	 * @see #getCGIPortConnector()
+	 * @generated
+	 */
+	EReference getCGIPortConnector_M_pModelObject();
+
+	/**
+	 * Returns the meta object for the reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIPortConnector#getM_pParent <em>MpParent</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the reference '<em>MpParent</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIPortConnector#getM_pParent()
+	 * @see #getCGIPortConnector()
+	 * @generated
+	 */
+	EReference getCGIPortConnector_M_pParent();
+
+	/**
+	 * Returns the meta object for the attribute list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIPortConnector#getM_transform <em>Mtransform</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute list '<em>Mtransform</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIPortConnector#getM_transform()
+	 * @see #getCGIPortConnector()
+	 * @generated
+	 */
+	EAttribute getCGIPortConnector_M_transform();
+
+	/**
+	 * Returns the meta object for the containment reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIPortConnector#getM_AdditionalLabel <em>MAdditional Label</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference '<em>MAdditional Label</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIPortConnector#getM_AdditionalLabel()
+	 * @see #getCGIPortConnector()
+	 * @generated
+	 */
+	EReference getCGIPortConnector_M_AdditionalLabel();
+
+	/**
+	 * Returns the meta object for the attribute list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIPortConnector#getM_position <em>Mposition</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute list '<em>Mposition</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIPortConnector#getM_position()
+	 * @see #getCGIPortConnector()
+	 * @generated
+	 */
+	EAttribute getCGIPortConnector_M_position();
+
+	/**
+	 * Returns the meta object for the reference list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIPortConnector#getM_pInheritsFrom <em>MpInherits From</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the reference list '<em>MpInherits From</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIPortConnector#getM_pInheritsFrom()
+	 * @see #getCGIPortConnector()
+	 * @generated
+	 */
+	EReference getCGIPortConnector_M_pInheritsFrom();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIPortConnector#getM_nInheritanceMask <em>MnInheritance Mask</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>MnInheritance Mask</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIPortConnector#getM_nInheritanceMask()
+	 * @see #getCGIPortConnector()
+	 * @generated
+	 */
+	EAttribute getCGIPortConnector_M_nInheritanceMask();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIPortConnector#getM_SubType <em>MSub Type</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>MSub Type</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIPortConnector#getM_SubType()
+	 * @see #getCGIPortConnector()
+	 * @generated
+	 */
+	EAttribute getCGIPortConnector_M_SubType();
+
+	/**
+	 * Returns the meta object for the containment reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIPortConnector#getM_providedInterfaceLabel <em>Mprovided Interface Label</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference '<em>Mprovided Interface Label</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIPortConnector#getM_providedInterfaceLabel()
+	 * @see #getCGIPortConnector()
+	 * @generated
+	 */
+	EReference getCGIPortConnector_M_providedInterfaceLabel();
+
+	/**
+	 * Returns the meta object for the containment reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIPortConnector#getM_requiredInterfaceLabel <em>Mrequired Interface Label</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference '<em>Mrequired Interface Label</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIPortConnector#getM_requiredInterfaceLabel()
+	 * @see #getCGIPortConnector()
+	 * @generated
+	 */
+	EReference getCGIPortConnector_M_requiredInterfaceLabel();
+
+	/**
+	 * Returns the meta object for the containment reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIPortConnector#getProperties <em>Properties</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference '<em>Properties</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIPortConnector#getProperties()
+	 * @see #getCGIPortConnector()
+	 * @generated
+	 */
+	EReference getCGIPortConnector_Properties();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIPortConnector#getM_bVisible <em>MbVisible</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>MbVisible</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIPortConnector#getM_bVisible()
+	 * @see #getCGIPortConnector()
+	 * @generated
+	 */
+	EAttribute getCGIPortConnector_M_bVisible();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIPortConnector#getM_nAngle <em>MnAngle</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>MnAngle</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIPortConnector#getM_nAngle()
+	 * @see #getCGIPortConnector()
+	 * @generated
+	 */
+	EAttribute getCGIPortConnector_M_nAngle();
+
+	/**
+	 * Returns the meta object for class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIState <em>CGI State</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for class '<em>CGI State</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIState
+	 * @generated
+	 */
+	EClass getCGIState();
+
+	/**
+	 * Returns the meta object for the reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIState#getM_pModelObject <em>MpModel Object</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the reference '<em>MpModel Object</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIState#getM_pModelObject()
+	 * @see #getCGIState()
+	 * @generated
+	 */
+	EReference getCGIState_M_pModelObject();
+
+	/**
+	 * Returns the meta object for the containment reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIState#getM_AdditionalLabel <em>MAdditional Label</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference '<em>MAdditional Label</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIState#getM_AdditionalLabel()
+	 * @see #getCGIState()
+	 * @generated
+	 */
+	EReference getCGIState_M_AdditionalLabel();
+
+	/**
+	 * Returns the meta object for the attribute list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIState#getM_polygon <em>Mpolygon</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute list '<em>Mpolygon</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIState#getM_polygon()
+	 * @see #getCGIState()
+	 * @generated
+	 */
+	EAttribute getCGIState_M_polygon();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIState#getM_nNameFormat <em>MnName Format</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>MnName Format</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIState#getM_nNameFormat()
+	 * @see #getCGIState()
+	 * @generated
+	 */
+	EAttribute getCGIState_M_nNameFormat();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIState#getM_nIsNameFormat <em>MnIs Name Format</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>MnIs Name Format</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIState#getM_nIsNameFormat()
+	 * @see #getCGIState()
+	 * @generated
+	 */
+	EAttribute getCGIState_M_nIsNameFormat();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIState#getNAndLineCount <em>NAnd Line Count</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>NAnd Line Count</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIState#getNAndLineCount()
+	 * @see #getCGIState()
+	 * @generated
+	 */
+	EAttribute getCGIState_NAndLineCount();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIState#getM_nInheritanceMask <em>MnInheritance Mask</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>MnInheritance Mask</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIState#getM_nInheritanceMask()
+	 * @see #getCGIState()
+	 * @generated
+	 */
+	EAttribute getCGIState_M_nInheritanceMask();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIState#getM_pDefaultComponentRelation <em>MpDefault Component Relation</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>MpDefault Component Relation</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIState#getM_pDefaultComponentRelation()
+	 * @see #getCGIState()
+	 * @generated
+	 */
+	EAttribute getCGIState_M_pDefaultComponentRelation();
+
+	/**
+	 * Returns the meta object for the containment reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIState#getProperties <em>Properties</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference '<em>Properties</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIState#getProperties()
+	 * @see #getCGIState()
+	 * @generated
+	 */
+	EReference getCGIState_Properties();
+
+	/**
+	 * Returns the meta object for the reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIState#getM_pParent <em>MpParent</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the reference '<em>MpParent</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIState#getM_pParent()
+	 * @see #getCGIState()
+	 * @generated
+	 */
+	EReference getCGIState_M_pParent();
+
+	/**
+	 * Returns the meta object for the attribute list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIState#getM_transform <em>Mtransform</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute list '<em>Mtransform</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIState#getM_transform()
+	 * @see #getCGIState()
+	 * @generated
+	 */
+	EAttribute getCGIState_M_transform();
+
+	/**
+	 * Returns the meta object for the attribute list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIState#getAndLinePoly <em>And Line Poly</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute list '<em>And Line Poly</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIState#getAndLinePoly()
+	 * @see #getCGIState()
+	 * @generated
+	 */
+	EAttribute getCGIState_AndLinePoly();
+
+	/**
+	 * Returns the meta object for the reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIState#getM_pVirtualParent <em>MpVirtual Parent</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the reference '<em>MpVirtual Parent</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIState#getM_pVirtualParent()
+	 * @see #getCGIState()
+	 * @generated
+	 */
+	EReference getCGIState_M_pVirtualParent();
+
+	/**
+	 * Returns the meta object for the attribute list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIState#getM_moveAndLineTimeStamp <em>Mmove And Line Time Stamp</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute list '<em>Mmove And Line Time Stamp</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIState#getM_moveAndLineTimeStamp()
+	 * @see #getCGIState()
+	 * @generated
+	 */
+	EAttribute getCGIState_M_moveAndLineTimeStamp();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIState#getMyState <em>My State</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>My State</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIState#getMyState()
+	 * @see #getCGIState()
+	 * @generated
+	 */
+	EAttribute getCGIState_MyState();
+
+	/**
+	 * Returns the meta object for the reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIState#getM_pInheritsFrom <em>MpInherits From</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the reference '<em>MpInherits From</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIState#getM_pInheritsFrom()
+	 * @see #getCGIState()
+	 * @generated
+	 */
+	EReference getCGIState_M_pInheritsFrom();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIState#getFrameset <em>Frameset</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Frameset</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIState#getFrameset()
+	 * @see #getCGIState()
+	 * @generated
+	 */
+	EAttribute getCGIState_Frameset();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIState#getM_bFramesetModified <em>MbFrameset Modified</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>MbFrameset Modified</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIState#getM_bFramesetModified()
+	 * @see #getCGIState()
+	 * @generated
+	 */
+	EAttribute getCGIState_M_bFramesetModified();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIState#getM_bIsMisplaced <em>MbIs Misplaced</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>MbIs Misplaced</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIState#getM_bIsMisplaced()
+	 * @see #getCGIState()
+	 * @generated
+	 */
+	EAttribute getCGIState_M_bIsMisplaced();
+
+	/**
+	 * Returns the meta object for the containment reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIState#getM_color <em>Mcolor</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference '<em>Mcolor</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIState#getM_color()
+	 * @see #getCGIState()
+	 * @generated
+	 */
+	EReference getCGIState_M_color();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIState#getM_lineWidth <em>Mline Width</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Mline Width</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIState#getM_lineWidth()
+	 * @see #getCGIState()
+	 * @generated
+	 */
+	EAttribute getCGIState_M_lineWidth();
+
+	/**
+	 * Returns the meta object for the containment reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIState#getCompartments <em>Compartments</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference '<em>Compartments</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIState#getCompartments()
+	 * @see #getCGIState()
+	 * @generated
+	 */
+	EReference getCGIState_Compartments();
+
+	/**
+	 * Returns the meta object for class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIStateChart <em>CGI State Chart</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for class '<em>CGI State Chart</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIStateChart
+	 * @generated
+	 */
+	EClass getCGIStateChart();
+
+	/**
+	 * Returns the meta object for the reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIStateChart#getM_pModelObject <em>MpModel Object</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the reference '<em>MpModel Object</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIStateChart#getM_pModelObject()
+	 * @see #getCGIStateChart()
+	 * @generated
+	 */
+	EReference getCGIStateChart_M_pModelObject();
+
+	/**
+	 * Returns the meta object for the reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIStateChart#getM_pRoot <em>MpRoot</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the reference '<em>MpRoot</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIStateChart#getM_pRoot()
+	 * @see #getCGIStateChart()
+	 * @generated
+	 */
+	EReference getCGIStateChart_M_pRoot();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIStateChart#getMyState <em>My State</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>My State</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIStateChart#getMyState()
+	 * @see #getCGIStateChart()
+	 * @generated
+	 */
+	EAttribute getCGIStateChart_MyState();
+
+	/**
+	 * Returns the meta object for the reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIStateChart#getM_pInheritsFrom <em>MpInherits From</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the reference '<em>MpInherits From</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIStateChart#getM_pInheritsFrom()
+	 * @see #getCGIStateChart()
+	 * @generated
+	 */
+	EReference getCGIStateChart_M_pInheritsFrom();
+
+	/**
+	 * Returns the meta object for the reference list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIStateChart#getDiagramList <em>Diagram List</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the reference list '<em>Diagram List</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIStateChart#getDiagramList()
+	 * @see #getCGIStateChart()
+	 * @generated
+	 */
+	EReference getCGIStateChart_DiagramList();
+
+	/**
+	 * Returns the meta object for the containment reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIStateChart#getProperties <em>Properties</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference '<em>Properties</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIStateChart#getProperties()
+	 * @see #getCGIStateChart()
+	 * @generated
+	 */
+	EReference getCGIStateChart_Properties();
+
+	/**
+	 * Returns the meta object for class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGISwimlaneFrame <em>CGI Swimlane Frame</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for class '<em>CGI Swimlane Frame</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGISwimlaneFrame
+	 * @generated
+	 */
+	EClass getCGISwimlaneFrame();
+
+	/**
+	 * Returns the meta object for the reference list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGISwimlaneFrame#getM_pModelObject <em>MpModel Object</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the reference list '<em>MpModel Object</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGISwimlaneFrame#getM_pModelObject()
+	 * @see #getCGISwimlaneFrame()
+	 * @generated
+	 */
+	EReference getCGISwimlaneFrame_M_pModelObject();
+
+	/**
+	 * Returns the meta object for the reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGISwimlaneFrame#getM_pParent <em>MpParent</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the reference '<em>MpParent</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGISwimlaneFrame#getM_pParent()
+	 * @see #getCGISwimlaneFrame()
+	 * @generated
+	 */
+	EReference getCGISwimlaneFrame_M_pParent();
+
+	/**
+	 * Returns the meta object for the attribute list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGISwimlaneFrame#getM_polygon <em>Mpolygon</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute list '<em>Mpolygon</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGISwimlaneFrame#getM_polygon()
+	 * @see #getCGISwimlaneFrame()
+	 * @generated
+	 */
+	EAttribute getCGISwimlaneFrame_M_polygon();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGISwimlaneFrame#getM_nNameFormat <em>MnName Format</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>MnName Format</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGISwimlaneFrame#getM_nNameFormat()
+	 * @see #getCGISwimlaneFrame()
+	 * @generated
+	 */
+	EAttribute getCGISwimlaneFrame_M_nNameFormat();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGISwimlaneFrame#getM_nIsNameFormat <em>MnIs Name Format</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>MnIs Name Format</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGISwimlaneFrame#getM_nIsNameFormat()
+	 * @see #getCGISwimlaneFrame()
+	 * @generated
+	 */
+	EAttribute getCGISwimlaneFrame_M_nIsNameFormat();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGISwimlaneFrame#getFrameset <em>Frameset</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Frameset</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGISwimlaneFrame#getFrameset()
+	 * @see #getCGISwimlaneFrame()
+	 * @generated
+	 */
+	EAttribute getCGISwimlaneFrame_Frameset();
+
+	/**
+	 * Returns the meta object for the attribute list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGISwimlaneFrame#getM_transform <em>Mtransform</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute list '<em>Mtransform</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGISwimlaneFrame#getM_transform()
+	 * @see #getCGISwimlaneFrame()
+	 * @generated
+	 */
+	EAttribute getCGISwimlaneFrame_M_transform();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGISwimlaneFrame#getM_bFramesetModified <em>MbFrameset Modified</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>MbFrameset Modified</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGISwimlaneFrame#getM_bFramesetModified()
+	 * @see #getCGISwimlaneFrame()
+	 * @generated
+	 */
+	EAttribute getCGISwimlaneFrame_M_bFramesetModified();
+
+	/**
+	 * Returns the meta object for the containment reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGISwimlaneFrame#getCompartments <em>Compartments</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference '<em>Compartments</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGISwimlaneFrame#getCompartments()
+	 * @see #getCGISwimlaneFrame()
+	 * @generated
+	 */
+	EReference getCGISwimlaneFrame_Compartments();
+
+	/**
+	 * Returns the meta object for class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIText <em>CGI Text</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for class '<em>CGI Text</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIText
+	 * @generated
+	 */
+	EClass getCGIText();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIText#getM_str <em>Mstr</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Mstr</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIText#getM_str()
+	 * @see #getCGIText()
+	 * @generated
+	 */
+	EAttribute getCGIText_M_str();
+
+	/**
+	 * Returns the meta object for the attribute list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIText#getM_style <em>Mstyle</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute list '<em>Mstyle</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIText#getM_style()
+	 * @see #getCGIText()
+	 * @generated
+	 */
+	EAttribute getCGIText_M_style();
+
+	/**
+	 * Returns the meta object for the containment reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIText#getM_color <em>Mcolor</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference '<em>Mcolor</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIText#getM_color()
+	 * @see #getCGIText()
+	 * @generated
+	 */
+	EReference getCGIText_M_color();
+
+	/**
+	 * Returns the meta object for the attribute list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIText#getM_position <em>Mposition</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute list '<em>Mposition</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIText#getM_position()
+	 * @see #getCGIText()
+	 * @generated
+	 */
+	EAttribute getCGIText_M_position();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIText#getM_nIdent <em>MnIdent</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>MnIdent</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIText#getM_nIdent()
+	 * @see #getCGIText()
+	 * @generated
+	 */
+	EAttribute getCGIText_M_nIdent();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIText#getM_bImplicitSetRectPoints <em>MbImplicit Set Rect Points</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>MbImplicit Set Rect Points</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIText#getM_bImplicitSetRectPoints()
+	 * @see #getCGIText()
+	 * @generated
+	 */
+	EAttribute getCGIText_M_bImplicitSetRectPoints();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIText#getM_nOrientationCtrlPt <em>MnOrientation Ctrl Pt</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>MnOrientation Ctrl Pt</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIText#getM_nOrientationCtrlPt()
+	 * @see #getCGIText()
+	 * @generated
+	 */
+	EAttribute getCGIText_M_nOrientationCtrlPt();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIText#getM_nVerticalSpacing <em>MnVertical Spacing</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>MnVertical Spacing</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIText#getM_nVerticalSpacing()
+	 * @see #getCGIText()
+	 * @generated
+	 */
+	EAttribute getCGIText_M_nVerticalSpacing();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIText#getM_nHorizontalSpacing <em>MnHorizontal Spacing</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>MnHorizontal Spacing</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIText#getM_nHorizontalSpacing()
+	 * @see #getCGIText()
+	 * @generated
+	 */
+	EAttribute getCGIText_M_nHorizontalSpacing();
+
+	/**
+	 * Returns the meta object for the attribute list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIText#getM_transform <em>Mtransform</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute list '<em>Mtransform</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIText#getM_transform()
+	 * @see #getCGIText()
+	 * @generated
+	 */
+	EAttribute getCGIText_M_transform();
+
+	/**
+	 * Returns the meta object for class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGITextBox <em>CGI Text Box</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for class '<em>CGI Text Box</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGITextBox
+	 * @generated
+	 */
+	EClass getCGITextBox();
+
+	/**
+	 * Returns the meta object for the containment reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGITextBox#getProperties <em>Properties</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference '<em>Properties</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGITextBox#getProperties()
+	 * @see #getCGITextBox()
+	 * @generated
+	 */
+	EReference getCGITextBox_Properties();
+
+	/**
+	 * Returns the meta object for the reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGITextBox#getM_pModelObject <em>MpModel Object</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the reference '<em>MpModel Object</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGITextBox#getM_pModelObject()
+	 * @see #getCGITextBox()
+	 * @generated
+	 */
+	EReference getCGITextBox_M_pModelObject();
+
+	/**
+	 * Returns the meta object for the reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGITextBox#getM_pParent <em>MpParent</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the reference '<em>MpParent</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGITextBox#getM_pParent()
+	 * @see #getCGITextBox()
+	 * @generated
+	 */
+	EReference getCGITextBox_M_pParent();
+
+	/**
+	 * Returns the meta object for the attribute list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGITextBox#getM_transform <em>Mtransform</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute list '<em>Mtransform</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGITextBox#getM_transform()
+	 * @see #getCGITextBox()
+	 * @generated
+	 */
+	EAttribute getCGITextBox_M_transform();
+
+	/**
+	 * Returns the meta object for the attribute list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGITextBox#getM_polygon <em>Mpolygon</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute list '<em>Mpolygon</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGITextBox#getM_polygon()
+	 * @see #getCGITextBox()
+	 * @generated
+	 */
+	EAttribute getCGITextBox_M_polygon();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGITextBox#getM_nNameFormat <em>MnName Format</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>MnName Format</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGITextBox#getM_nNameFormat()
+	 * @see #getCGITextBox()
+	 * @generated
+	 */
+	EAttribute getCGITextBox_M_nNameFormat();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGITextBox#getM_nIsNameFormat <em>MnIs Name Format</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>MnIs Name Format</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGITextBox#getM_nIsNameFormat()
+	 * @see #getCGITextBox()
+	 * @generated
+	 */
+	EAttribute getCGITextBox_M_nIsNameFormat();
+
+	/**
+	 * Returns the meta object for the reference list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGITextBox#getCompartments <em>Compartments</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the reference list '<em>Compartments</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGITextBox#getCompartments()
+	 * @see #getCGITextBox()
+	 * @generated
+	 */
+	EReference getCGITextBox_Compartments();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGITextBox#getM_csModelObjPath <em>Mcs Model Obj Path</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Mcs Model Obj Path</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGITextBox#getM_csModelObjPath()
+	 * @see #getCGITextBox()
+	 * @generated
+	 */
+	EAttribute getCGITextBox_M_csModelObjPath();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGITextBox#getM_csName <em>Mcs Name</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Mcs Name</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGITextBox#getM_csName()
+	 * @see #getCGITextBox()
+	 * @generated
+	 */
+	EAttribute getCGITextBox_M_csName();
+
+	/**
+	 * Returns the meta object for the reference list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGITextBox#getM_PartsArray <em>MParts Array</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the reference list '<em>MParts Array</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGITextBox#getM_PartsArray()
+	 * @see #getCGITextBox()
+	 * @generated
+	 */
+	EReference getCGITextBox_M_PartsArray();
+
+	/**
+	 * Returns the meta object for class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGITrans <em>CGI Trans</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for class '<em>CGI Trans</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGITrans
+	 * @generated
+	 */
+	EClass getCGITrans();
+
+	/**
+	 * Returns the meta object for the containment reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGITrans#getProperties <em>Properties</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference '<em>Properties</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGITrans#getProperties()
+	 * @see #getCGITrans()
+	 * @generated
+	 */
+	EReference getCGITrans_Properties();
+
+	/**
+	 * Returns the meta object for the reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGITrans#getM_pModelObject <em>MpModel Object</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the reference '<em>MpModel Object</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGITrans#getM_pModelObject()
+	 * @see #getCGITrans()
+	 * @generated
+	 */
+	EReference getCGITrans_M_pModelObject();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGITrans#getM_pParent <em>MpParent</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>MpParent</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGITrans#getM_pParent()
+	 * @see #getCGITrans()
+	 * @generated
+	 */
+	EAttribute getCGITrans_M_pParent();
+
+	/**
+	 * Returns the meta object for the reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGITrans#getM_pSource <em>MpSource</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the reference '<em>MpSource</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGITrans#getM_pSource()
+	 * @see #getCGITrans()
+	 * @generated
+	 */
+	EReference getCGITrans_M_pSource();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGITrans#getM_sourceType <em>Msource Type</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Msource Type</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGITrans#getM_sourceType()
+	 * @see #getCGITrans()
+	 * @generated
+	 */
+	EAttribute getCGITrans_M_sourceType();
+
+	/**
+	 * Returns the meta object for the reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGITrans#getM_pTarget <em>MpTarget</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the reference '<em>MpTarget</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGITrans#getM_pTarget()
+	 * @see #getCGITrans()
+	 * @generated
+	 */
+	EReference getCGITrans_M_pTarget();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGITrans#getM_targetType <em>Mtarget Type</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Mtarget Type</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGITrans#getM_targetType()
+	 * @see #getCGITrans()
+	 * @generated
+	 */
+	EAttribute getCGITrans_M_targetType();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGITrans#getM_direction <em>Mdirection</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Mdirection</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGITrans#getM_direction()
+	 * @see #getCGITrans()
+	 * @generated
+	 */
+	EAttribute getCGITrans_M_direction();
+
+	/**
+	 * Returns the meta object for the containment reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGITrans#getM_rpn <em>Mrpn</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference '<em>Mrpn</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGITrans#getM_rpn()
+	 * @see #getCGITrans()
+	 * @generated
+	 */
+	EReference getCGITrans_M_rpn();
+
+	/**
+	 * Returns the meta object for the attribute list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGITrans#getM_anglePoint1 <em>Mangle Point1</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute list '<em>Mangle Point1</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGITrans#getM_anglePoint1()
+	 * @see #getCGITrans()
+	 * @generated
+	 */
+	EAttribute getCGITrans_M_anglePoint1();
+
+	/**
+	 * Returns the meta object for the attribute list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGITrans#getM_anglePoint2 <em>Mangle Point2</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute list '<em>Mangle Point2</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGITrans#getM_anglePoint2()
+	 * @see #getCGITrans()
+	 * @generated
+	 */
+	EAttribute getCGITrans_M_anglePoint2();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGITrans#getM_line_style <em>Mline style</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Mline style</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGITrans#getM_line_style()
+	 * @see #getCGITrans()
+	 * @generated
+	 */
+	EAttribute getCGITrans_M_line_style();
+
+	/**
+	 * Returns the meta object for the attribute list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGITrans#getM_SourcePort <em>MSource Port</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute list '<em>MSource Port</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGITrans#getM_SourcePort()
+	 * @see #getCGITrans()
+	 * @generated
+	 */
+	EAttribute getCGITrans_M_SourcePort();
+
+	/**
+	 * Returns the meta object for the attribute list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGITrans#getM_TargetPort <em>MTarget Port</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute list '<em>MTarget Port</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGITrans#getM_TargetPort()
+	 * @see #getCGITrans()
+	 * @generated
+	 */
+	EAttribute getCGITrans_M_TargetPort();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGITrans#getM_nInheritanceMask <em>MnInheritance Mask</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>MnInheritance Mask</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGITrans#getM_nInheritanceMask()
+	 * @see #getCGITrans()
+	 * @generated
+	 */
+	EAttribute getCGITrans_M_nInheritanceMask();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGITrans#getM_bShowName <em>MbShow Name</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>MbShow Name</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGITrans#getM_bShowName()
+	 * @see #getCGITrans()
+	 * @generated
+	 */
+	EAttribute getCGITrans_M_bShowName();
+
+	/**
+	 * Returns the meta object for the attribute list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGITrans#getM_arrow <em>Marrow</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute list '<em>Marrow</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGITrans#getM_arrow()
+	 * @see #getCGITrans()
+	 * @generated
+	 */
+	EAttribute getCGITrans_M_arrow();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGITrans#getMyState <em>My State</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>My State</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGITrans#getMyState()
+	 * @see #getCGITrans()
+	 * @generated
+	 */
+	EAttribute getCGITrans_MyState();
+
+	/**
+	 * Returns the meta object for the reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGITrans#getM_pInheritsFrom <em>MpInherits From</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the reference '<em>MpInherits From</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGITrans#getM_pInheritsFrom()
+	 * @see #getCGITrans()
+	 * @generated
+	 */
+	EReference getCGITrans_M_pInheritsFrom();
+
+	/**
+	 * Returns the meta object for the containment reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGITrans#getM_color <em>Mcolor</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference '<em>Mcolor</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGITrans#getM_color()
+	 * @see #getCGITrans()
+	 * @generated
+	 */
+	EReference getCGITrans_M_color();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGITrans#getM_lineWidth <em>Mline Width</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Mline Width</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGITrans#getM_lineWidth()
+	 * @see #getCGITrans()
+	 * @generated
+	 */
+	EAttribute getCGITrans_M_lineWidth();
+
+	/**
+	 * Returns the meta object for class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CollEvent <em>Coll Event</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for class '<em>Coll Event</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CollEvent
+	 * @generated
+	 */
+	EClass getCollEvent();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CollEvent#getId <em>Id</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Id</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CollEvent#getId()
+	 * @see #getCollEvent()
+	 * @generated
+	 */
+	EAttribute getCollEvent_Id();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CollEvent#getFirst <em>First</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>First</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CollEvent#getFirst()
+	 * @see #getCollEvent()
+	 * @generated
+	 */
+	EAttribute getCollEvent_First();
+
+	/**
+	 * Returns the meta object for the reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CollEvent#getSecond <em>Second</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the reference '<em>Second</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CollEvent#getSecond()
+	 * @see #getCollEvent()
+	 * @generated
+	 */
+	EReference getCollEvent_Second();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CollEvent#getObjectCreation <em>Object Creation</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Object Creation</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CollEvent#getObjectCreation()
+	 * @see #getCollEvent()
+	 * @generated
+	 */
+	EAttribute getCollEvent_ObjectCreation();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CollEvent#getUmlDependencyID <em>Uml Dependency ID</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Uml Dependency ID</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CollEvent#getUmlDependencyID()
+	 * @see #getCollEvent()
+	 * @generated
+	 */
+	EAttribute getCollEvent_UmlDependencyID();
+
+	/**
+	 * Returns the meta object for class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CompartmentsType <em>Compartments Type</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for class '<em>Compartments Type</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CompartmentsType
+	 * @generated
+	 */
+	EClass getCompartmentsType();
+
+	/**
+	 * Returns the meta object for class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ComponentsType <em>Components Type</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for class '<em>Components Type</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ComponentsType
+	 * @generated
+	 */
+	EClass getComponentsType();
+
+	/**
+	 * Returns the meta object for class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ConveyedType <em>Conveyed Type</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for class '<em>Conveyed Type</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ConveyedType
+	 * @generated
+	 */
+	EClass getConveyedType();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ConveyedType#getLastID <em>Last ID</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Last ID</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ConveyedType#getLastID()
+	 * @see #getConveyedType()
+	 * @generated
+	 */
+	EAttribute getConveyedType_LastID();
+
+	/**
+	 * Returns the meta object for class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.DeclarativesType <em>Declaratives Type</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for class '<em>Declaratives Type</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.DeclarativesType
+	 * @generated
+	 */
+	EClass getDeclarativesType();
+
+	/**
+	 * Returns the meta object for class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.DefaultSubsystemType <em>Default Subsystem Type</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for class '<em>Default Subsystem Type</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.DefaultSubsystemType
+	 * @generated
+	 */
+	EClass getDefaultSubsystemType();
+
+	/**
+	 * Returns the meta object for class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.DefaultTransType <em>Default Trans Type</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for class '<em>Default Trans Type</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.DefaultTransType
+	 * @generated
+	 */
+	EClass getDefaultTransType();
+
+	/**
+	 * Returns the meta object for class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.DependsOnType <em>Depends On Type</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for class '<em>Depends On Type</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.DependsOnType
+	 * @generated
+	 */
+	EClass getDependsOnType();
+
+	/**
+	 * Returns the meta object for class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.DescriptionType <em>Description Type</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for class '<em>Description Type</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.DescriptionType
+	 * @generated
+	 */
+	EClass getDescriptionType();
+
+	/**
+	 * Returns the meta object for class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ElementsType <em>Elements Type</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for class '<em>Elements Type</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ElementsType
+	 * @generated
+	 */
+	EClass getElementsType();
+
+	/**
+	 * Returns the meta object for class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.EmbededFilesType <em>Embeded Files Type</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for class '<em>Embeded Files Type</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.EmbededFilesType
+	 * @generated
+	 */
+	EClass getEmbededFilesType();
+
+	/**
+	 * Returns the meta object for class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.End1_Type <em>End1 Type</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for class '<em>End1 Type</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.End1_Type
+	 * @generated
+	 */
+	EClass getEnd1_Type();
+
+	/**
+	 * Returns the meta object for class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.End2_Type <em>End2 Type</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for class '<em>End2 Type</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.End2_Type
+	 * @generated
+	 */
+	EClass getEnd2_Type();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.End2_Type#getMultiplicity <em>Multiplicity</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Multiplicity</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.End2_Type#getMultiplicity()
+	 * @see #getEnd2_Type()
+	 * @generated
+	 */
+	EAttribute getEnd2_Type_Multiplicity();
+
+	/**
+	 * Returns the meta object for class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.FilesType <em>Files Type</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for class '<em>Files Type</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.FilesType
+	 * @generated
+	 */
+	EClass getFilesType();
+
+	/**
+	 * Returns the meta object for the attribute list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.FilesType#getModifiedTimeWeak <em>Modified Time Weak</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute list '<em>Modified Time Weak</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.FilesType#getModifiedTimeWeak()
+	 * @see #getFilesType()
+	 * @generated
+	 */
+	EAttribute getFilesType_ModifiedTimeWeak();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.FilesType#getId <em>Id</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Id</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.FilesType#getId()
+	 * @see #getFilesType()
+	 * @generated
+	 */
+	EAttribute getFilesType_Id();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.FilesType#getUmlDependencyID <em>Uml Dependency ID</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Uml Dependency ID</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.FilesType#getUmlDependencyID()
+	 * @see #getFilesType()
+	 * @generated
+	 */
+	EAttribute getFilesType_UmlDependencyID();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.FilesType#getLastID <em>Last ID</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Last ID</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.FilesType#getLastID()
+	 * @see #getFilesType()
+	 * @generated
+	 */
+	EAttribute getFilesType_LastID();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.FilesType#getMyState <em>My State</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>My State</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.FilesType#getMyState()
+	 * @see #getFilesType()
+	 * @generated
+	 */
+	EAttribute getFilesType_MyState();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.FilesType#getM_path <em>Mpath</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Mpath</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.FilesType#getM_path()
+	 * @see #getFilesType()
+	 * @generated
+	 */
+	EAttribute getFilesType_M_path();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.FilesType#getObjectCreation <em>Object Creation</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Object Creation</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.FilesType#getObjectCreation()
+	 * @see #getFilesType()
+	 * @generated
+	 */
+	EAttribute getFilesType_ObjectCreation();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.FilesType#getName <em>Name</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Name</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.FilesType#getName()
+	 * @see #getFilesType()
+	 * @generated
+	 */
+	EAttribute getFilesType_Name();
+
+	/**
+	 * Returns the meta object for class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.FromLinkType <em>From Link Type</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for class '<em>From Link Type</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.FromLinkType
+	 * @generated
+	 */
+	EClass getFromLinkType();
+
+	/**
+	 * Returns the meta object for class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.GraphElementsType <em>Graph Elements Type</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for class '<em>Graph Elements Type</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.GraphElementsType
+	 * @generated
+	 */
+	EClass getGraphElementsType();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.GraphElementsType#getId <em>Id</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Id</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.GraphElementsType#getId()
+	 * @see #getGraphElementsType()
+	 * @generated
+	 */
+	EAttribute getGraphElementsType_Id();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.GraphElementsType#getM_drawBehavior <em>Mdraw Behavior</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Mdraw Behavior</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.GraphElementsType#getM_drawBehavior()
+	 * @see #getGraphElementsType()
+	 * @generated
+	 */
+	EAttribute getGraphElementsType_M_drawBehavior();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.GraphElementsType#getM_type <em>Mtype</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Mtype</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.GraphElementsType#getM_type()
+	 * @see #getGraphElementsType()
+	 * @generated
+	 */
+	EAttribute getGraphElementsType_M_type();
+
+	/**
+	 * Returns the meta object for the containment reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.GraphElementsType#getM_name <em>Mname</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference '<em>Mname</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.GraphElementsType#getM_name()
+	 * @see #getGraphElementsType()
+	 * @generated
+	 */
+	EReference getGraphElementsType_M_name();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.GraphElementsType#getM_bIsPreferencesInitialized <em>MbIs Preferences Initialized</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>MbIs Preferences Initialized</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.GraphElementsType#getM_bIsPreferencesInitialized()
+	 * @see #getGraphElementsType()
+	 * @generated
+	 */
+	EAttribute getGraphElementsType_M_bIsPreferencesInitialized();
+
+	/**
+	 * Returns the meta object for class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.GraphicChartType <em>Graphic Chart Type</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for class '<em>Graphic Chart Type</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.GraphicChartType
+	 * @generated
+	 */
+	EClass getGraphicChartType();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.GraphicChartType#getId <em>Id</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Id</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.GraphicChartType#getId()
+	 * @see #getGraphicChartType()
+	 * @generated
+	 */
+	EAttribute getGraphicChartType_Id();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.GraphicChartType#getM_access <em>Maccess</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Maccess</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.GraphicChartType#getM_access()
+	 * @see #getGraphicChartType()
+	 * @generated
+	 */
+	EAttribute getGraphicChartType_M_access();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.GraphicChartType#getElementList <em>Element List</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Element List</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.GraphicChartType#getElementList()
+	 * @see #getGraphicChartType()
+	 * @generated
+	 */
+	EAttribute getGraphicChartType_ElementList();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.GraphicChartType#getM_nModifyDate <em>MnModify Date</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>MnModify Date</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.GraphicChartType#getM_nModifyDate()
+	 * @see #getGraphicChartType()
+	 * @generated
+	 */
+	EAttribute getGraphicChartType_M_nModifyDate();
+
+	/**
+	 * Returns the meta object for the attribute list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.GraphicChartType#getM_currentLeftTop <em>Mcurrent Left Top</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute list '<em>Mcurrent Left Top</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.GraphicChartType#getM_currentLeftTop()
+	 * @see #getGraphicChartType()
+	 * @generated
+	 */
+	EAttribute getGraphicChartType_M_currentLeftTop();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.GraphicChartType#getM_modified <em>Mmodified</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Mmodified</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.GraphicChartType#getM_modified()
+	 * @see #getGraphicChartType()
+	 * @generated
+	 */
+	EAttribute getGraphicChartType_M_modified();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.GraphicChartType#getM_nCreateDate <em>MnCreate Date</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>MnCreate Date</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.GraphicChartType#getM_nCreateDate()
+	 * @see #getGraphicChartType()
+	 * @generated
+	 */
+	EAttribute getGraphicChartType_M_nCreateDate();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.GraphicChartType#getM_pParent <em>MpParent</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>MpParent</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.GraphicChartType#getM_pParent()
+	 * @see #getGraphicChartType()
+	 * @generated
+	 */
+	EAttribute getGraphicChartType_M_pParent();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.GraphicChartType#getM_arrowStyle <em>Marrow Style</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Marrow Style</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.GraphicChartType#getM_arrowStyle()
+	 * @see #getGraphicChartType()
+	 * @generated
+	 */
+	EAttribute getGraphicChartType_M_arrowStyle();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.GraphicChartType#getM_drawBehavior <em>Mdraw Behavior</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Mdraw Behavior</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.GraphicChartType#getM_drawBehavior()
+	 * @see #getGraphicChartType()
+	 * @generated
+	 */
+	EAttribute getGraphicChartType_M_drawBehavior();
+
+	/**
+	 * Returns the meta object for the attribute list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.GraphicChartType#getM_currentRightBottom <em>Mcurrent Right Bottom</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute list '<em>Mcurrent Right Bottom</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.GraphicChartType#getM_currentRightBottom()
+	 * @see #getGraphicChartType()
+	 * @generated
+	 */
+	EAttribute getGraphicChartType_M_currentRightBottom();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.GraphicChartType#getM_creator <em>Mcreator</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Mcreator</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.GraphicChartType#getM_creator()
+	 * @see #getGraphicChartType()
+	 * @generated
+	 */
+	EAttribute getGraphicChartType_M_creator();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.GraphicChartType#getM_bScaleWithZoom <em>MbScale With Zoom</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>MbScale With Zoom</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.GraphicChartType#getM_bScaleWithZoom()
+	 * @see #getGraphicChartType()
+	 * @generated
+	 */
+	EAttribute getGraphicChartType_M_bScaleWithZoom();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.GraphicChartType#getM_type <em>Mtype</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Mtype</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.GraphicChartType#getM_type()
+	 * @see #getGraphicChartType()
+	 * @generated
+	 */
+	EAttribute getGraphicChartType_M_type();
+
+	/**
+	 * Returns the meta object for the containment reference list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.GraphicChartType#getGraphElements <em>Graph Elements</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference list '<em>Graph Elements</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.GraphicChartType#getGraphElements()
+	 * @see #getGraphicChartType()
+	 * @generated
+	 */
+	EReference getGraphicChartType_GraphElements();
+
+	/**
+	 * Returns the meta object for the containment reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.GraphicChartType#getM_name <em>Mname</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference '<em>Mname</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.GraphicChartType#getM_name()
+	 * @see #getGraphicChartType()
+	 * @generated
+	 */
+	EReference getGraphicChartType_M_name();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.GraphicChartType#getM_fileVersion <em>Mfile Version</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Mfile Version</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.GraphicChartType#getM_fileVersion()
+	 * @see #getGraphicChartType()
+	 * @generated
+	 */
+	EAttribute getGraphicChartType_M_fileVersion();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.GraphicChartType#getM_bIsPreferencesInitialized <em>MbIs Preferences Initialized</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>MbIs Preferences Initialized</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.GraphicChartType#getM_bIsPreferencesInitialized()
+	 * @see #getGraphicChartType()
+	 * @generated
+	 */
+	EAttribute getGraphicChartType_M_bIsPreferencesInitialized();
+
+	/**
+	 * Returns the meta object for class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.HyperLinksType <em>Hyper Links Type</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for class '<em>Hyper Links Type</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.HyperLinksType
+	 * @generated
+	 */
+	EClass getHyperLinksType();
+
+	/**
+	 * Returns the meta object for class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IAcceptEventAction <em>IAccept Event Action</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for class '<em>IAccept Event Action</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IAcceptEventAction
+	 * @generated
+	 */
+	EClass getIAcceptEventAction();
+
+	/**
+	 * Returns the meta object for the reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IAcceptEventAction#getEvent <em>Event</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the reference '<em>Event</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IAcceptEventAction#getEvent()
+	 * @see #getIAcceptEventAction()
+	 * @generated
+	 */
+	EReference getIAcceptEventAction_Event();
+
+	/**
+	 * Returns the meta object for class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IAcceptTimeEvent <em>IAccept Time Event</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for class '<em>IAccept Time Event</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IAcceptTimeEvent
+	 * @generated
+	 */
+	EClass getIAcceptTimeEvent();
+
+	/**
+	 * Returns the meta object for class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IAction <em>IAction</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for class '<em>IAction</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IAction
+	 * @generated
+	 */
+	EClass getIAction();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IAction#getId <em>Id</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Id</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IAction#getId()
+	 * @see #getIAction()
+	 * @generated
+	 */
+	EAttribute getIAction_Id();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IAction#getMyState <em>My State</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>My State</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IAction#getMyState()
+	 * @see #getIAction()
+	 * @generated
+	 */
+	EAttribute getIAction_MyState();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IAction#getBody <em>Body</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Body</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IAction#getBody()
+	 * @see #getIAction()
+	 * @generated
+	 */
+	EAttribute getIAction_Body();
+
+	/**
+	 * Returns the meta object for the attribute list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IAction#getModifiedTimeWeak <em>Modified Time Weak</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute list '<em>Modified Time Weak</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IAction#getModifiedTimeWeak()
+	 * @see #getIAction()
+	 * @generated
+	 */
+	EAttribute getIAction_ModifiedTimeWeak();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IAction#getObjectCreation <em>Object Creation</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Object Creation</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IAction#getObjectCreation()
+	 * @see #getIAction()
+	 * @generated
+	 */
+	EAttribute getIAction_ObjectCreation();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IAction#getUmlDependencyID <em>Uml Dependency ID</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Uml Dependency ID</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IAction#getUmlDependencyID()
+	 * @see #getIAction()
+	 * @generated
+	 */
+	EAttribute getIAction_UmlDependencyID();
+
+	/**
+	 * Returns the meta object for class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IActivityDiagram <em>IActivity Diagram</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for class '<em>IActivity Diagram</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IActivityDiagram
+	 * @generated
+	 */
+	EClass getIActivityDiagram();
+
+	/**
+	 * Returns the meta object for the containment reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IActivityDiagram#getGraphicChart <em>Graphic Chart</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference '<em>Graphic Chart</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IActivityDiagram#getGraphicChart()
+	 * @see #getIActivityDiagram()
+	 * @generated
+	 */
+	EReference getIActivityDiagram_GraphicChart();
+
+	/**
+	 * Returns the meta object for the attribute list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IActivityDiagram#getCodeUpdateCGTime <em>Code Update CG Time</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute list '<em>Code Update CG Time</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IActivityDiagram#getCodeUpdateCGTime()
+	 * @see #getIActivityDiagram()
+	 * @generated
+	 */
+	EAttribute getIActivityDiagram_CodeUpdateCGTime();
+
+	/**
+	 * Returns the meta object for class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IActivityGraph <em>IActivity Graph</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for class '<em>IActivity Graph</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IActivityGraph
+	 * @generated
+	 */
+	EClass getIActivityGraph();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IActivityGraph#getLastID <em>Last ID</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Last ID</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IActivityGraph#getLastID()
+	 * @see #getIActivityGraph()
+	 * @generated
+	 */
+	EAttribute getIActivityGraph_LastID();
+
+	/**
+	 * Returns the meta object for the attribute list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IActivityGraph#getWeakCGTime <em>Weak CG Time</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute list '<em>Weak CG Time</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IActivityGraph#getWeakCGTime()
+	 * @see #getIActivityGraph()
+	 * @generated
+	 */
+	EAttribute getIActivityGraph_WeakCGTime();
+
+	/**
+	 * Returns the meta object for the attribute list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IActivityGraph#getStrongCGTime <em>Strong CG Time</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute list '<em>Strong CG Time</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IActivityGraph#getStrongCGTime()
+	 * @see #getIActivityGraph()
+	 * @generated
+	 */
+	EAttribute getIActivityGraph_StrongCGTime();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IActivityGraph#getMultiplicity <em>Multiplicity</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Multiplicity</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IActivityGraph#getMultiplicity()
+	 * @see #getIActivityGraph()
+	 * @generated
+	 */
+	EAttribute getIActivityGraph_Multiplicity();
+
+	/**
+	 * Returns the meta object for the reference list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IActivityGraph#getItsStateChart <em>Its State Chart</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the reference list '<em>Its State Chart</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IActivityGraph#getItsStateChart()
+	 * @see #getIActivityGraph()
+	 * @generated
+	 */
+	EReference getIActivityGraph_ItsStateChart();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IActivityGraph#getClassModifier <em>Class Modifier</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Class Modifier</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IActivityGraph#getClassModifier()
+	 * @see #getIActivityGraph()
+	 * @generated
+	 */
+	EAttribute getIActivityGraph_ClassModifier();
+
+	/**
+	 * Returns the meta object for the containment reference list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IActivityGraph#getStates <em>States</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference list '<em>States</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IActivityGraph#getStates()
+	 * @see #getIActivityGraph()
+	 * @generated
+	 */
+	EReference getIActivityGraph_States();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IActivityGraph#getBaseVersion <em>Base Version</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Base Version</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IActivityGraph#getBaseVersion()
+	 * @see #getIActivityGraph()
+	 * @generated
+	 */
+	EAttribute getIActivityGraph_BaseVersion();
+
+	/**
+	 * Returns the meta object for the reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IActivityGraph#getDiagram <em>Diagram</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the reference '<em>Diagram</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IActivityGraph#getDiagram()
+	 * @see #getIActivityGraph()
+	 * @generated
+	 */
+	EReference getIActivityGraph_Diagram();
+
+	/**
+	 * Returns the meta object for the containment reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IActivityGraph#getViews <em>Views</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference '<em>Views</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IActivityGraph#getViews()
+	 * @see #getIActivityGraph()
+	 * @generated
+	 */
+	EReference getIActivityGraph_Views();
+
+	/**
+	 * Returns the meta object for the containment reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IActivityGraph#getProperties <em>Properties</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference '<em>Properties</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IActivityGraph#getProperties()
+	 * @see #getIActivityGraph()
+	 * @generated
+	 */
+	EReference getIActivityGraph_Properties();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IActivityGraph#getRequiremenTracabilityHandle <em>Requiremen Tracability Handle</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Requiremen Tracability Handle</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IActivityGraph#getRequiremenTracabilityHandle()
+	 * @see #getIActivityGraph()
+	 * @generated
+	 */
+	EAttribute getIActivityGraph_RequiremenTracabilityHandle();
+
+	/**
+	 * Returns the meta object for the containment reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IActivityGraph#getDescription <em>Description</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference '<em>Description</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IActivityGraph#getDescription()
+	 * @see #getIActivityGraph()
+	 * @generated
+	 */
+	EReference getIActivityGraph_Description();
+
+	/**
+	 * Returns the meta object for the containment reference list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IActivityGraph#getSwimlanes <em>Swimlanes</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference list '<em>Swimlanes</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IActivityGraph#getSwimlanes()
+	 * @see #getIActivityGraph()
+	 * @generated
+	 */
+	EReference getIActivityGraph_Swimlanes();
+
+	/**
+	 * Returns the meta object for the reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IActivityGraph#getStereotypes <em>Stereotypes</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the reference '<em>Stereotypes</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IActivityGraph#getStereotypes()
+	 * @see #getIActivityGraph()
+	 * @generated
+	 */
+	EReference getIActivityGraph_Stereotypes();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IActivityGraph#getAnalysisMode <em>Analysis Mode</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Analysis Mode</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IActivityGraph#getAnalysisMode()
+	 * @see #getIActivityGraph()
+	 * @generated
+	 */
+	EAttribute getIActivityGraph_AnalysisMode();
+
+	/**
+	 * Returns the meta object for the containment reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IActivityGraph#getAnnotations <em>Annotations</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference '<em>Annotations</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IActivityGraph#getAnnotations()
+	 * @see #getIActivityGraph()
+	 * @generated
+	 */
+	EReference getIActivityGraph_Annotations();
+
+	/**
+	 * Returns the meta object for the attribute list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IActivityGraph#getCodeUpdateCGTime <em>Code Update CG Time</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute list '<em>Code Update CG Time</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IActivityGraph#getCodeUpdateCGTime()
+	 * @see #getIActivityGraph()
+	 * @generated
+	 */
+	EAttribute getIActivityGraph_CodeUpdateCGTime();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IActivityGraph#getObjectCreation <em>Object Creation</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Object Creation</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IActivityGraph#getObjectCreation()
+	 * @see #getIActivityGraph()
+	 * @generated
+	 */
+	EAttribute getIActivityGraph_ObjectCreation();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IActivityGraph#getUmlDependencyID <em>Uml Dependency ID</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Uml Dependency ID</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IActivityGraph#getUmlDependencyID()
+	 * @see #getIActivityGraph()
+	 * @generated
+	 */
+	EAttribute getIActivityGraph_UmlDependencyID();
+
+	/**
+	 * Returns the meta object for the containment reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IActivityGraph#getHyperLinks <em>Hyper Links</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference '<em>Hyper Links</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IActivityGraph#getHyperLinks()
+	 * @see #getIActivityGraph()
+	 * @generated
+	 */
+	EReference getIActivityGraph_HyperLinks();
+
+	/**
+	 * Returns the meta object for the containment reference list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IActivityGraph#getDependencies <em>Dependencies</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference list '<em>Dependencies</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IActivityGraph#getDependencies()
+	 * @see #getIActivityGraph()
+	 * @generated
+	 */
+	EReference getIActivityGraph_Dependencies();
+
+	/**
+	 * Returns the meta object for the reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IActivityGraph#getTheMainDiagram <em>The Main Diagram</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the reference '<em>The Main Diagram</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IActivityGraph#getTheMainDiagram()
+	 * @see #getIActivityGraph()
+	 * @generated
+	 */
+	EReference getIActivityGraph_TheMainDiagram();
+
+	/**
+	 * Returns the meta object for the containment reference list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IActivityGraph#getAssociations <em>Associations</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference list '<em>Associations</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IActivityGraph#getAssociations()
+	 * @see #getIActivityGraph()
+	 * @generated
+	 */
+	EReference getIActivityGraph_Associations();
+
+	/**
+	 * Returns the meta object for the containment reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IActivityGraph#getTags <em>Tags</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference '<em>Tags</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IActivityGraph#getTags()
+	 * @see #getIActivityGraph()
+	 * @generated
+	 */
+	EReference getIActivityGraph_Tags();
+
+	/**
+	 * Returns the meta object for class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IActor <em>IActor</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for class '<em>IActor</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IActor
+	 * @generated
+	 */
+	EClass getIActor();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IActor#getId <em>Id</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Id</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IActor#getId()
+	 * @see #getIActor()
+	 * @generated
+	 */
+	EAttribute getIActor_Id();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IActor#getMyState <em>My State</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>My State</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IActor#getMyState()
+	 * @see #getIActor()
+	 * @generated
+	 */
+	EAttribute getIActor_MyState();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IActor#getName <em>Name</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Name</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IActor#getName()
+	 * @see #getIActor()
+	 * @generated
+	 */
+	EAttribute getIActor_Name();
+
+	/**
+	 * Returns the meta object for the reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IActor#getTheMainDiagram <em>The Main Diagram</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the reference '<em>The Main Diagram</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IActor#getTheMainDiagram()
+	 * @see #getIActor()
+	 * @generated
+	 */
+	EReference getIActor_TheMainDiagram();
+
+	/**
+	 * Returns the meta object for the containment reference list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IActor#getDependencies <em>Dependencies</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference list '<em>Dependencies</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IActor#getDependencies()
+	 * @see #getIActor()
+	 * @generated
+	 */
+	EReference getIActor_Dependencies();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IActor#getLastID <em>Last ID</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Last ID</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IActor#getLastID()
+	 * @see #getIActor()
+	 * @generated
+	 */
+	EAttribute getIActor_LastID();
+
+	/**
+	 * Returns the meta object for the attribute list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IActor#getWeakCGTime <em>Weak CG Time</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute list '<em>Weak CG Time</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IActor#getWeakCGTime()
+	 * @see #getIActor()
+	 * @generated
+	 */
+	EAttribute getIActor_WeakCGTime();
+
+	/**
+	 * Returns the meta object for the attribute list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IActor#getStrongCGTime <em>Strong CG Time</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute list '<em>Strong CG Time</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IActor#getStrongCGTime()
+	 * @see #getIActor()
+	 * @generated
+	 */
+	EAttribute getIActor_StrongCGTime();
+
+	/**
+	 * Returns the meta object for the containment reference list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IActor#getOperations <em>Operations</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference list '<em>Operations</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IActor#getOperations()
+	 * @see #getIActor()
+	 * @generated
+	 */
+	EReference getIActor_Operations();
+
+	/**
+	 * Returns the meta object for the containment reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IActor#getStateCharts <em>State Charts</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference '<em>State Charts</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IActor#getStateCharts()
+	 * @see #getIActor()
+	 * @generated
+	 */
+	EReference getIActor_StateCharts();
+
+	/**
+	 * Returns the meta object for the reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IActor#getItsStateChart <em>Its State Chart</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the reference '<em>Its State Chart</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IActor#getItsStateChart()
+	 * @see #getIActor()
+	 * @generated
+	 */
+	EReference getIActor_ItsStateChart();
+
+	/**
+	 * Returns the meta object for the containment reference list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IActor#getAssociations <em>Associations</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference list '<em>Associations</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IActor#getAssociations()
+	 * @see #getIActor()
+	 * @generated
+	 */
+	EReference getIActor_Associations();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IActor#getClassModifier <em>Class Modifier</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Class Modifier</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IActor#getClassModifier()
+	 * @see #getIActor()
+	 * @generated
+	 */
+	EAttribute getIActor_ClassModifier();
+
+	/**
+	 * Returns the meta object for the containment reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IActor#getHyperLinks <em>Hyper Links</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference '<em>Hyper Links</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IActor#getHyperLinks()
+	 * @see #getIActor()
+	 * @generated
+	 */
+	EReference getIActor_HyperLinks();
+
+	/**
+	 * Returns the meta object for the attribute list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IActor#getModifiedTimeWeak <em>Modified Time Weak</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute list '<em>Modified Time Weak</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IActor#getModifiedTimeWeak()
+	 * @see #getIActor()
+	 * @generated
+	 */
+	EAttribute getIActor_ModifiedTimeWeak();
+
+	/**
+	 * Returns the meta object for the containment reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IActor#getPorts <em>Ports</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference '<em>Ports</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IActor#getPorts()
+	 * @see #getIActor()
+	 * @generated
+	 */
+	EReference getIActor_Ports();
+
+	/**
+	 * Returns the meta object for the containment reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IActor#getInheritances <em>Inheritances</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference '<em>Inheritances</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IActor#getInheritances()
+	 * @see #getIActor()
+	 * @generated
+	 */
+	EReference getIActor_Inheritances();
+
+	/**
+	 * Returns the meta object for the containment reference list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IActor#getAttrs <em>Attrs</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference list '<em>Attrs</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IActor#getAttrs()
+	 * @see #getIActor()
+	 * @generated
+	 */
+	EReference getIActor_Attrs();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IActor#getRequiremenTracabilityHandle <em>Requiremen Tracability Handle</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Requiremen Tracability Handle</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IActor#getRequiremenTracabilityHandle()
+	 * @see #getIActor()
+	 * @generated
+	 */
+	EAttribute getIActor_RequiremenTracabilityHandle();
+
+	/**
+	 * Returns the meta object for the containment reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IActor#getDescription <em>Description</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference '<em>Description</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IActor#getDescription()
+	 * @see #getIActor()
+	 * @generated
+	 */
+	EReference getIActor_Description();
+
+	/**
+	 * Returns the meta object for the containment reference list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IActor#getAnnotations <em>Annotations</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference list '<em>Annotations</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IActor#getAnnotations()
+	 * @see #getIActor()
+	 * @generated
+	 */
+	EReference getIActor_Annotations();
+
+	/**
+	 * Returns the meta object for the containment reference list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IActor#getComponentFiles <em>Component Files</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference list '<em>Component Files</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IActor#getComponentFiles()
+	 * @see #getIActor()
+	 * @generated
+	 */
+	EReference getIActor_ComponentFiles();
+
+	/**
+	 * Returns the meta object for the containment reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IActor#getProperties <em>Properties</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference '<em>Properties</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IActor#getProperties()
+	 * @see #getIActor()
+	 * @generated
+	 */
+	EReference getIActor_Properties();
+
+	/**
+	 * Returns the meta object for class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IAnchor <em>IAnchor</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for class '<em>IAnchor</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IAnchor
+	 * @generated
+	 */
+	EClass getIAnchor();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IAnchor#getId <em>Id</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Id</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IAnchor#getId()
+	 * @see #getIAnchor()
+	 * @generated
+	 */
+	EAttribute getIAnchor_Id();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IAnchor#getMyState <em>My State</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>My State</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IAnchor#getMyState()
+	 * @see #getIAnchor()
+	 * @generated
+	 */
+	EAttribute getIAnchor_MyState();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IAnchor#getName <em>Name</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Name</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IAnchor#getName()
+	 * @see #getIAnchor()
+	 * @generated
+	 */
+	EAttribute getIAnchor_Name();
+
+	/**
+	 * Returns the meta object for the reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IAnchor#getDependsOn <em>Depends On</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the reference '<em>Depends On</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IAnchor#getDependsOn()
+	 * @see #getIAnchor()
+	 * @generated
+	 */
+	EReference getIAnchor_DependsOn();
+
+	/**
+	 * Returns the meta object for the attribute list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IAnchor#getModifiedTimeWeak <em>Modified Time Weak</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute list '<em>Modified Time Weak</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IAnchor#getModifiedTimeWeak()
+	 * @see #getIAnchor()
+	 * @generated
+	 */
+	EAttribute getIAnchor_ModifiedTimeWeak();
+
+	/**
+	 * Returns the meta object for class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IAnnotation <em>IAnnotation</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for class '<em>IAnnotation</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IAnnotation
+	 * @generated
+	 */
+	EClass getIAnnotation();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IAnnotation#getRequiremenTracabilityHandle <em>Requiremen Tracability Handle</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Requiremen Tracability Handle</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IAnnotation#getRequiremenTracabilityHandle()
+	 * @see #getIAnnotation()
+	 * @generated
+	 */
+	EAttribute getIAnnotation_RequiremenTracabilityHandle();
+
+	/**
+	 * Returns the meta object for the containment reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IAnnotation#getDescription <em>Description</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference '<em>Description</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IAnnotation#getDescription()
+	 * @see #getIAnnotation()
+	 * @generated
+	 */
+	EReference getIAnnotation_Description();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IAnnotation#getUmlDependencyID <em>Uml Dependency ID</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Uml Dependency ID</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IAnnotation#getUmlDependencyID()
+	 * @see #getIAnnotation()
+	 * @generated
+	 */
+	EAttribute getIAnnotation_UmlDependencyID();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IAnnotation#getObjectCreation <em>Object Creation</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Object Creation</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IAnnotation#getObjectCreation()
+	 * @see #getIAnnotation()
+	 * @generated
+	 */
+	EAttribute getIAnnotation_ObjectCreation();
+
+	/**
+	 * Returns the meta object for the containment reference list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IAnnotation#getTags <em>Tags</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference list '<em>Tags</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IAnnotation#getTags()
+	 * @see #getIAnnotation()
+	 * @generated
+	 */
+	EReference getIAnnotation_Tags();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IAnnotation#getBody <em>Body</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Body</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IAnnotation#getBody()
+	 * @see #getIAnnotation()
+	 * @generated
+	 */
+	EAttribute getIAnnotation_Body();
+
+	/**
+	 * Returns the meta object for class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IArgument <em>IArgument</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for class '<em>IArgument</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IArgument
+	 * @generated
+	 */
+	EClass getIArgument();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IArgument#getId <em>Id</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Id</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IArgument#getId()
+	 * @see #getIArgument()
+	 * @generated
+	 */
+	EAttribute getIArgument_Id();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IArgument#getMyState <em>My State</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>My State</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IArgument#getMyState()
+	 * @see #getIArgument()
+	 * @generated
+	 */
+	EAttribute getIArgument_MyState();
+
+	/**
+	 * Returns the meta object for the containment reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IArgument#getProperties <em>Properties</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference '<em>Properties</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IArgument#getProperties()
+	 * @see #getIArgument()
+	 * @generated
+	 */
+	EReference getIArgument_Properties();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IArgument#getName <em>Name</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Name</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IArgument#getName()
+	 * @see #getIArgument()
+	 * @generated
+	 */
+	EAttribute getIArgument_Name();
+
+	/**
+	 * Returns the meta object for the attribute list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IArgument#getModifiedTimeWeak <em>Modified Time Weak</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute list '<em>Modified Time Weak</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IArgument#getModifiedTimeWeak()
+	 * @see #getIArgument()
+	 * @generated
+	 */
+	EAttribute getIArgument_ModifiedTimeWeak();
+
+	/**
+	 * Returns the meta object for the reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IArgument#getTypeOf <em>Type Of</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the reference '<em>Type Of</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IArgument#getTypeOf()
+	 * @see #getIArgument()
+	 * @generated
+	 */
+	EReference getIArgument_TypeOf();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IArgument#getArgumentDirection <em>Argument Direction</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Argument Direction</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IArgument#getArgumentDirection()
+	 * @see #getIArgument()
+	 * @generated
+	 */
+	EAttribute getIArgument_ArgumentDirection();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IArgument#getDefaultValue <em>Default Value</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Default Value</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IArgument#getDefaultValue()
+	 * @see #getIArgument()
+	 * @generated
+	 */
+	EAttribute getIArgument_DefaultValue();
+
+	/**
+	 * Returns the meta object for the containment reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IArgument#getValueSpecifications <em>Value Specifications</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference '<em>Value Specifications</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IArgument#getValueSpecifications()
+	 * @see #getIArgument()
+	 * @generated
+	 */
+	EReference getIArgument_ValueSpecifications();
+
+	/**
+	 * Returns the meta object for the containment reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IArgument#getDescription <em>Description</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference '<em>Description</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IArgument#getDescription()
+	 * @see #getIArgument()
+	 * @generated
+	 */
+	EReference getIArgument_Description();
+
+	/**
+	 * Returns the meta object for the attribute list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IArgument#getCodeUpdateCGTime <em>Code Update CG Time</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute list '<em>Code Update CG Time</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IArgument#getCodeUpdateCGTime()
+	 * @see #getIArgument()
+	 * @generated
+	 */
+	EAttribute getIArgument_CodeUpdateCGTime();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IArgument#getObjectCreation <em>Object Creation</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Object Creation</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IArgument#getObjectCreation()
+	 * @see #getIArgument()
+	 * @generated
+	 */
+	EAttribute getIArgument_ObjectCreation();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IArgument#getUmlDependencyID <em>Uml Dependency ID</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Uml Dependency ID</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IArgument#getUmlDependencyID()
+	 * @see #getIArgument()
+	 * @generated
+	 */
+	EAttribute getIArgument_UmlDependencyID();
+
+	/**
+	 * Returns the meta object for class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IAssociationClass <em>IAssociation Class</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for class '<em>IAssociation Class</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IAssociationClass
+	 * @generated
+	 */
+	EClass getIAssociationClass();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IAssociationClass#getIsClass <em>Is Class</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Is Class</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IAssociationClass#getIsClass()
+	 * @see #getIAssociationClass()
+	 * @generated
+	 */
+	EAttribute getIAssociationClass_IsClass();
+
+	/**
+	 * Returns the meta object for the reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IAssociationClass#getM_end1 <em>Mend1</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the reference '<em>Mend1</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IAssociationClass#getM_end1()
+	 * @see #getIAssociationClass()
+	 * @generated
+	 */
+	EReference getIAssociationClass_M_end1();
+
+	/**
+	 * Returns the meta object for the reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IAssociationClass#getM_end2 <em>Mend2</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the reference '<em>Mend2</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IAssociationClass#getM_end2()
+	 * @see #getIAssociationClass()
+	 * @generated
+	 */
+	EReference getIAssociationClass_M_end2();
+
+	/**
+	 * Returns the meta object for class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IAssociationEnd <em>IAssociation End</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for class '<em>IAssociation End</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IAssociationEnd
+	 * @generated
+	 */
+	EClass getIAssociationEnd();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IAssociationEnd#getId <em>Id</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Id</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IAssociationEnd#getId()
+	 * @see #getIAssociationEnd()
+	 * @generated
+	 */
+	EAttribute getIAssociationEnd_Id();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IAssociationEnd#getMyState <em>My State</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>My State</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IAssociationEnd#getMyState()
+	 * @see #getIAssociationEnd()
+	 * @generated
+	 */
+	EAttribute getIAssociationEnd_MyState();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IAssociationEnd#getName <em>Name</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Name</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IAssociationEnd#getName()
+	 * @see #getIAssociationEnd()
+	 * @generated
+	 */
+	EAttribute getIAssociationEnd_Name();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IAssociationEnd#getMultiplicity <em>Multiplicity</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Multiplicity</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IAssociationEnd#getMultiplicity()
+	 * @see #getIAssociationEnd()
+	 * @generated
+	 */
+	EAttribute getIAssociationEnd_Multiplicity();
+
+	/**
+	 * Returns the meta object for the reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IAssociationEnd#getOtherClass <em>Other Class</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the reference '<em>Other Class</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IAssociationEnd#getOtherClass()
+	 * @see #getIAssociationEnd()
+	 * @generated
+	 */
+	EReference getIAssociationEnd_OtherClass();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IAssociationEnd#getLinkName <em>Link Name</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Link Name</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IAssociationEnd#getLinkName()
+	 * @see #getIAssociationEnd()
+	 * @generated
+	 */
+	EAttribute getIAssociationEnd_LinkName();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IAssociationEnd#getLinkType <em>Link Type</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Link Type</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IAssociationEnd#getLinkType()
+	 * @see #getIAssociationEnd()
+	 * @generated
+	 */
+	EAttribute getIAssociationEnd_LinkType();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IAssociationEnd#getNavigability <em>Navigability</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Navigability</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IAssociationEnd#getNavigability()
+	 * @see #getIAssociationEnd()
+	 * @generated
+	 */
+	EAttribute getIAssociationEnd_Navigability();
+
+	/**
+	 * Returns the meta object for the reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IAssociationEnd#getInverse <em>Inverse</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the reference '<em>Inverse</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IAssociationEnd#getInverse()
+	 * @see #getIAssociationEnd()
+	 * @generated
+	 */
+	EReference getIAssociationEnd_Inverse();
+
+	/**
+	 * Returns the meta object for the attribute list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IAssociationEnd#getModifiedTimeWeak <em>Modified Time Weak</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute list '<em>Modified Time Weak</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IAssociationEnd#getModifiedTimeWeak()
+	 * @see #getIAssociationEnd()
+	 * @generated
+	 */
+	EAttribute getIAssociationEnd_ModifiedTimeWeak();
+
+	/**
+	 * Returns the meta object for the reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IAssociationEnd#getQualifiers <em>Qualifiers</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the reference '<em>Qualifiers</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IAssociationEnd#getQualifiers()
+	 * @see #getIAssociationEnd()
+	 * @generated
+	 */
+	EReference getIAssociationEnd_Qualifiers();
+
+	/**
+	 * Returns the meta object for the reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IAssociationEnd#getStereotypes <em>Stereotypes</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the reference '<em>Stereotypes</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IAssociationEnd#getStereotypes()
+	 * @see #getIAssociationEnd()
+	 * @generated
+	 */
+	EReference getIAssociationEnd_Stereotypes();
+
+	/**
+	 * Returns the meta object for the attribute list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IAssociationEnd#getCodeUpdateCGTime <em>Code Update CG Time</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute list '<em>Code Update CG Time</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IAssociationEnd#getCodeUpdateCGTime()
+	 * @see #getIAssociationEnd()
+	 * @generated
+	 */
+	EAttribute getIAssociationEnd_CodeUpdateCGTime();
+
+	/**
+	 * Returns the meta object for the reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IAssociationEnd#getQualifierType <em>Qualifier Type</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the reference '<em>Qualifier Type</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IAssociationEnd#getQualifierType()
+	 * @see #getIAssociationEnd()
+	 * @generated
+	 */
+	EReference getIAssociationEnd_QualifierType();
+
+	/**
+	 * Returns the meta object for the reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IAssociationEnd#getM_associationClass <em>Massociation Class</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the reference '<em>Massociation Class</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IAssociationEnd#getM_associationClass()
+	 * @see #getIAssociationEnd()
+	 * @generated
+	 */
+	EReference getIAssociationEnd_M_associationClass();
+
+	/**
+	 * Returns the meta object for class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IAssociationEndHandle <em>IAssociation End Handle</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for class '<em>IAssociation End Handle</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IAssociationEndHandle
+	 * @generated
+	 */
+	EClass getIAssociationEndHandle();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IAssociationEndHandle#getM2Class <em>M2 Class</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>M2 Class</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IAssociationEndHandle#getM2Class()
+	 * @see #getIAssociationEndHandle()
+	 * @generated
+	 */
+	EAttribute getIAssociationEndHandle_M2Class();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IAssociationEndHandle#getFilename <em>Filename</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Filename</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IAssociationEndHandle#getFilename()
+	 * @see #getIAssociationEndHandle()
+	 * @generated
+	 */
+	EAttribute getIAssociationEndHandle_Filename();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IAssociationEndHandle#getSubsystem <em>Subsystem</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Subsystem</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IAssociationEndHandle#getSubsystem()
+	 * @see #getIAssociationEndHandle()
+	 * @generated
+	 */
+	EAttribute getIAssociationEndHandle_Subsystem();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IAssociationEndHandle#getClass_ <em>Class</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Class</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IAssociationEndHandle#getClass_()
+	 * @see #getIAssociationEndHandle()
+	 * @generated
+	 */
+	EAttribute getIAssociationEndHandle_Class();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IAssociationEndHandle#getName <em>Name</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Name</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IAssociationEndHandle#getName()
+	 * @see #getIAssociationEndHandle()
+	 * @generated
+	 */
+	EAttribute getIAssociationEndHandle_Name();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IAssociationEndHandle#getId <em>Id</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Id</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IAssociationEndHandle#getId()
+	 * @see #getIAssociationEndHandle()
+	 * @generated
+	 */
+	EAttribute getIAssociationEndHandle_Id();
+
+	/**
+	 * Returns the meta object for class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IAssociationRole <em>IAssociation Role</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for class '<em>IAssociation Role</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IAssociationRole
+	 * @generated
+	 */
+	EClass getIAssociationRole();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IAssociationRole#getId <em>Id</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Id</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IAssociationRole#getId()
+	 * @see #getIAssociationRole()
+	 * @generated
+	 */
+	EAttribute getIAssociationRole_Id();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IAssociationRole#getMyState <em>My State</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>My State</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IAssociationRole#getMyState()
+	 * @see #getIAssociationRole()
+	 * @generated
+	 */
+	EAttribute getIAssociationRole_MyState();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IAssociationRole#getM_fAssocType1 <em>MfAssoc Type1</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>MfAssoc Type1</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IAssociationRole#getM_fAssocType1()
+	 * @see #getIAssociationRole()
+	 * @generated
+	 */
+	EAttribute getIAssociationRole_M_fAssocType1();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IAssociationRole#getM_fAssocType2 <em>MfAssoc Type2</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>MfAssoc Type2</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IAssociationRole#getM_fAssocType2()
+	 * @see #getIAssociationRole()
+	 * @generated
+	 */
+	EAttribute getIAssociationRole_M_fAssocType2();
+
+	/**
+	 * Returns the meta object for the reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IAssociationRole#getM_pSource <em>MpSource</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the reference '<em>MpSource</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IAssociationRole#getM_pSource()
+	 * @see #getIAssociationRole()
+	 * @generated
+	 */
+	EReference getIAssociationRole_M_pSource();
+
+	/**
+	 * Returns the meta object for the reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IAssociationRole#getM_pTarget <em>MpTarget</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the reference '<em>MpTarget</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IAssociationRole#getM_pTarget()
+	 * @see #getIAssociationRole()
+	 * @generated
+	 */
+	EReference getIAssociationRole_M_pTarget();
+
+	/**
+	 * Returns the meta object for the reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IAssociationRole#getM_pFormalAssoc1 <em>MpFormal Assoc1</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the reference '<em>MpFormal Assoc1</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IAssociationRole#getM_pFormalAssoc1()
+	 * @see #getIAssociationRole()
+	 * @generated
+	 */
+	EReference getIAssociationRole_M_pFormalAssoc1();
+
+	/**
+	 * Returns the meta object for the reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IAssociationRole#getM_pFormalAssoc2 <em>MpFormal Assoc2</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the reference '<em>MpFormal Assoc2</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IAssociationRole#getM_pFormalAssoc2()
+	 * @see #getIAssociationRole()
+	 * @generated
+	 */
+	EReference getIAssociationRole_M_pFormalAssoc2();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IAssociationRole#getName <em>Name</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Name</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IAssociationRole#getName()
+	 * @see #getIAssociationRole()
+	 * @generated
+	 */
+	EAttribute getIAssociationRole_Name();
+
+	/**
+	 * Returns the meta object for the attribute list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IAssociationRole#getModifiedTimeWeak <em>Modified Time Weak</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute list '<em>Modified Time Weak</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IAssociationRole#getModifiedTimeWeak()
+	 * @see #getIAssociationRole()
+	 * @generated
+	 */
+	EAttribute getIAssociationRole_ModifiedTimeWeak();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IAssociationRole#getObjectCreation <em>Object Creation</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Object Creation</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IAssociationRole#getObjectCreation()
+	 * @see #getIAssociationRole()
+	 * @generated
+	 */
+	EAttribute getIAssociationRole_ObjectCreation();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IAssociationRole#getUmlDependencyID <em>Uml Dependency ID</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Uml Dependency ID</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IAssociationRole#getUmlDependencyID()
+	 * @see #getIAssociationRole()
+	 * @generated
+	 */
+	EAttribute getIAssociationRole_UmlDependencyID();
+
+	/**
+	 * Returns the meta object for class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IAttribute <em>IAttribute</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for class '<em>IAttribute</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IAttribute
+	 * @generated
+	 */
+	EClass getIAttribute();
+
+	/**
+	 * Returns the meta object for the reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IAttribute#getTypeOf <em>Type Of</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the reference '<em>Type Of</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IAttribute#getTypeOf()
+	 * @see #getIAttribute()
+	 * @generated
+	 */
+	EReference getIAttribute_TypeOf();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IAttribute#getProtection <em>Protection</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Protection</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IAttribute#getProtection()
+	 * @see #getIAttribute()
+	 * @generated
+	 */
+	EAttribute getIAttribute_Protection();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IAttribute#getStatic <em>Static</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Static</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IAttribute#getStatic()
+	 * @see #getIAttribute()
+	 * @generated
+	 */
+	EAttribute getIAttribute_Static();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IAttribute#getIsReference <em>Is Reference</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Is Reference</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IAttribute#getIsReference()
+	 * @see #getIAttribute()
+	 * @generated
+	 */
+	EAttribute getIAttribute_IsReference();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IAttribute#getIsConstant <em>Is Constant</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Is Constant</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IAttribute#getIsConstant()
+	 * @see #getIAttribute()
+	 * @generated
+	 */
+	EAttribute getIAttribute_IsConstant();
+
+	/**
+	 * Returns the meta object for the reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IAttribute#getStereotypes <em>Stereotypes</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the reference '<em>Stereotypes</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IAttribute#getStereotypes()
+	 * @see #getIAttribute()
+	 * @generated
+	 */
+	EReference getIAttribute_Stereotypes();
+
+	/**
+	 * Returns the meta object for the containment reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IAttribute#getValueSpecifications <em>Value Specifications</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference '<em>Value Specifications</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IAttribute#getValueSpecifications()
+	 * @see #getIAttribute()
+	 * @generated
+	 */
+	EReference getIAttribute_ValueSpecifications();
+
+	/**
+	 * Returns the meta object for the containment reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IAttribute#getProperties <em>Properties</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference '<em>Properties</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IAttribute#getProperties()
+	 * @see #getIAttribute()
+	 * @generated
+	 */
+	EReference getIAttribute_Properties();
+
+	/**
+	 * Returns the meta object for the containment reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IAttribute#getDescription <em>Description</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference '<em>Description</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IAttribute#getDescription()
+	 * @see #getIAttribute()
+	 * @generated
+	 */
+	EReference getIAttribute_Description();
+
+	/**
+	 * Returns the meta object for the containment reference list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IAttribute#getTags <em>Tags</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference list '<em>Tags</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IAttribute#getTags()
+	 * @see #getIAttribute()
+	 * @generated
+	 */
+	EReference getIAttribute_Tags();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IAttribute#getDefaultValue <em>Default Value</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Default Value</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IAttribute#getDefaultValue()
+	 * @see #getIAttribute()
+	 * @generated
+	 */
+	EAttribute getIAttribute_DefaultValue();
+
+	/**
+	 * Returns the meta object for the containment reference list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IAttribute#getDependencies <em>Dependencies</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference list '<em>Dependencies</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IAttribute#getDependencies()
+	 * @see #getIAttribute()
+	 * @generated
+	 */
+	EReference getIAttribute_Dependencies();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IAttribute#getLastID <em>Last ID</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Last ID</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IAttribute#getLastID()
+	 * @see #getIAttribute()
+	 * @generated
+	 */
+	EAttribute getIAttribute_LastID();
+
+	/**
+	 * Returns the meta object for the containment reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IAttribute#getAnnotations <em>Annotations</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference '<em>Annotations</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IAttribute#getAnnotations()
+	 * @see #getIAttribute()
+	 * @generated
+	 */
+	EReference getIAttribute_Annotations();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IAttribute#getRequiremenTracabilityHandle <em>Requiremen Tracability Handle</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Requiremen Tracability Handle</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IAttribute#getRequiremenTracabilityHandle()
+	 * @see #getIAttribute()
+	 * @generated
+	 */
+	EAttribute getIAttribute_RequiremenTracabilityHandle();
+
+	/**
+	 * Returns the meta object for the attribute list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IAttribute#getCodeUpdateCGTime <em>Code Update CG Time</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute list '<em>Code Update CG Time</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IAttribute#getCodeUpdateCGTime()
+	 * @see #getIAttribute()
+	 * @generated
+	 */
+	EAttribute getIAttribute_CodeUpdateCGTime();
+
+	/**
+	 * Returns the meta object for the reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IAttribute#getTheMainDiagram <em>The Main Diagram</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the reference '<em>The Main Diagram</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IAttribute#getTheMainDiagram()
+	 * @see #getIAttribute()
+	 * @generated
+	 */
+	EReference getIAttribute_TheMainDiagram();
+
+	/**
+	 * Returns the meta object for class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IBlock <em>IBlock</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for class '<em>IBlock</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IBlock
+	 * @generated
+	 */
+	EClass getIBlock();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IBlock#getId <em>Id</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Id</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IBlock#getId()
+	 * @see #getIBlock()
+	 * @generated
+	 */
+	EAttribute getIBlock_Id();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IBlock#getMyState <em>My State</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>My State</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IBlock#getMyState()
+	 * @see #getIBlock()
+	 * @generated
+	 */
+	EAttribute getIBlock_MyState();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IBlock#getName <em>Name</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Name</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IBlock#getName()
+	 * @see #getIBlock()
+	 * @generated
+	 */
+	EAttribute getIBlock_Name();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IBlock#getObjectCreation <em>Object Creation</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Object Creation</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IBlock#getObjectCreation()
+	 * @see #getIBlock()
+	 * @generated
+	 */
+	EAttribute getIBlock_ObjectCreation();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IBlock#getUmlDependencyID <em>Uml Dependency ID</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Uml Dependency ID</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IBlock#getUmlDependencyID()
+	 * @see #getIBlock()
+	 * @generated
+	 */
+	EAttribute getIBlock_UmlDependencyID();
+
+	/**
+	 * Returns the meta object for the reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IBlock#getOtherClass <em>Other Class</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the reference '<em>Other Class</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IBlock#getOtherClass()
+	 * @see #getIBlock()
+	 * @generated
+	 */
+	EReference getIBlock_OtherClass();
+
+	/**
+	 * Returns the meta object for the reference list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IBlock#getInverse <em>Inverse</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the reference list '<em>Inverse</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IBlock#getInverse()
+	 * @see #getIBlock()
+	 * @generated
+	 */
+	EReference getIBlock_Inverse();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IBlock#getPartKind <em>Part Kind</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Part Kind</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IBlock#getPartKind()
+	 * @see #getIBlock()
+	 * @generated
+	 */
+	EAttribute getIBlock_PartKind();
+
+	/**
+	 * Returns the meta object for class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IBody <em>IBody</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for class '<em>IBody</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IBody
+	 * @generated
+	 */
+	EClass getIBody();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IBody#getBodyData <em>Body Data</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Body Data</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IBody#getBodyData()
+	 * @see #getIBody()
+	 * @generated
+	 */
+	EAttribute getIBody_BodyData();
+
+	/**
+	 * Returns the meta object for class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IBranch <em>IBranch</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for class '<em>IBranch</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IBranch
+	 * @generated
+	 */
+	EClass getIBranch();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IBranch#getId <em>Id</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Id</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IBranch#getId()
+	 * @see #getIBranch()
+	 * @generated
+	 */
+	EAttribute getIBranch_Id();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IBranch#getName <em>Name</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Name</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IBranch#getName()
+	 * @see #getIBranch()
+	 * @generated
+	 */
+	EAttribute getIBranch_Name();
+
+	/**
+	 * Returns the meta object for the attribute list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IBranch#getModifiedTimeWeak <em>Modified Time Weak</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute list '<em>Modified Time Weak</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IBranch#getModifiedTimeWeak()
+	 * @see #getIBranch()
+	 * @generated
+	 */
+	EAttribute getIBranch_ModifiedTimeWeak();
+
+	/**
+	 * Returns the meta object for the reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IBranch#getParent <em>Parent</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the reference '<em>Parent</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IBranch#getParent()
+	 * @see #getIBranch()
+	 * @generated
+	 */
+	EReference getIBranch_Parent();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IBranch#getConnectorType <em>Connector Type</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Connector Type</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IBranch#getConnectorType()
+	 * @see #getIBranch()
+	 * @generated
+	 */
+	EAttribute getIBranch_ConnectorType();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IBranch#getMyState <em>My State</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>My State</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IBranch#getMyState()
+	 * @see #getIBranch()
+	 * @generated
+	 */
+	EAttribute getIBranch_MyState();
+
+	/**
+	 * Returns the meta object for the reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IBranch#getStereotypes <em>Stereotypes</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the reference '<em>Stereotypes</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IBranch#getStereotypes()
+	 * @see #getIBranch()
+	 * @generated
+	 */
+	EReference getIBranch_Stereotypes();
+
+	/**
+	 * Returns the meta object for the attribute list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IBranch#getCodeUpdateCGTime <em>Code Update CG Time</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute list '<em>Code Update CG Time</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IBranch#getCodeUpdateCGTime()
+	 * @see #getIBranch()
+	 * @generated
+	 */
+	EAttribute getIBranch_CodeUpdateCGTime();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IBranch#getObjectCreation <em>Object Creation</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Object Creation</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IBranch#getObjectCreation()
+	 * @see #getIBranch()
+	 * @generated
+	 */
+	EAttribute getIBranch_ObjectCreation();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IBranch#getUmlDependencyID <em>Uml Dependency ID</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Uml Dependency ID</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IBranch#getUmlDependencyID()
+	 * @see #getIBranch()
+	 * @generated
+	 */
+	EAttribute getIBranch_UmlDependencyID();
+
+	/**
+	 * Returns the meta object for class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ICallAction <em>ICall Action</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for class '<em>ICall Action</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ICallAction
+	 * @generated
+	 */
+	EClass getICallAction();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ICallAction#getId <em>Id</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Id</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ICallAction#getId()
+	 * @see #getICallAction()
+	 * @generated
+	 */
+	EAttribute getICallAction_Id();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ICallAction#getModifiedTimeWeak <em>Modified Time Weak</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Modified Time Weak</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ICallAction#getModifiedTimeWeak()
+	 * @see #getICallAction()
+	 * @generated
+	 */
+	EAttribute getICallAction_ModifiedTimeWeak();
+
+	/**
+	 * Returns the meta object for the reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ICallAction#getInterfaceItem <em>Interface Item</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the reference '<em>Interface Item</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ICallAction#getInterfaceItem()
+	 * @see #getICallAction()
+	 * @generated
+	 */
+	EReference getICallAction_InterfaceItem();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ICallAction#getArgumentNames <em>Argument Names</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Argument Names</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ICallAction#getArgumentNames()
+	 * @see #getICallAction()
+	 * @generated
+	 */
+	EAttribute getICallAction_ArgumentNames();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ICallAction#getArgumentValues <em>Argument Values</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Argument Values</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ICallAction#getArgumentValues()
+	 * @see #getICallAction()
+	 * @generated
+	 */
+	EAttribute getICallAction_ArgumentValues();
+
+	/**
+	 * Returns the meta object for class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ICallOperation <em>ICall Operation</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for class '<em>ICall Operation</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ICallOperation
+	 * @generated
+	 */
+	EClass getICallOperation();
+
+	/**
+	 * Returns the meta object for the reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ICallOperation#getOperation <em>Operation</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the reference '<em>Operation</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ICallOperation#getOperation()
+	 * @see #getICallOperation()
+	 * @generated
+	 */
+	EReference getICallOperation_Operation();
+
+	/**
+	 * Returns the meta object for the reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ICallOperation#getTarget <em>Target</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the reference '<em>Target</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ICallOperation#getTarget()
+	 * @see #getICallOperation()
+	 * @generated
+	 */
+	EReference getICallOperation_Target();
+
+	/**
+	 * Returns the meta object for class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IClass <em>IClass</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for class '<em>IClass</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IClass
+	 * @generated
+	 */
+	EClass getIClass();
+
+	/**
+	 * Returns the meta object for the attribute list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IClass#getWeakCGTime <em>Weak CG Time</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute list '<em>Weak CG Time</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IClass#getWeakCGTime()
+	 * @see #getIClass()
+	 * @generated
+	 */
+	EAttribute getIClass_WeakCGTime();
+
+	/**
+	 * Returns the meta object for the attribute list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IClass#getStrongCGTime <em>Strong CG Time</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute list '<em>Strong CG Time</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IClass#getStrongCGTime()
+	 * @see #getIClass()
+	 * @generated
+	 */
+	EAttribute getIClass_StrongCGTime();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IClass#getMultiplicity <em>Multiplicity</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Multiplicity</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IClass#getMultiplicity()
+	 * @see #getIClass()
+	 * @generated
+	 */
+	EAttribute getIClass_Multiplicity();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IClass#getClassModifier <em>Class Modifier</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Class Modifier</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IClass#getClassModifier()
+	 * @see #getIClass()
+	 * @generated
+	 */
+	EAttribute getIClass_ClassModifier();
+
+	/**
+	 * Returns the meta object for the containment reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IClass#getProperties <em>Properties</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference '<em>Properties</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IClass#getProperties()
+	 * @see #getIClass()
+	 * @generated
+	 */
+	EReference getIClass_Properties();
+
+	/**
+	 * Returns the meta object for the reference list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IClass#getStereotypes <em>Stereotypes</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the reference list '<em>Stereotypes</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IClass#getStereotypes()
+	 * @see #getIClass()
+	 * @generated
+	 */
+	EReference getIClass_Stereotypes();
+
+	/**
+	 * Returns the meta object for the containment reference list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IClass#getOperations <em>Operations</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference list '<em>Operations</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IClass#getOperations()
+	 * @see #getIClass()
+	 * @generated
+	 */
+	EReference getIClass_Operations();
+
+	/**
+	 * Returns the meta object for the containment reference list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IClass#getInheritances <em>Inheritances</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference list '<em>Inheritances</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IClass#getInheritances()
+	 * @see #getIClass()
+	 * @generated
+	 */
+	EReference getIClass_Inheritances();
+
+	/**
+	 * Returns the meta object for the reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IClass#getTheMainDiagram <em>The Main Diagram</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the reference '<em>The Main Diagram</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IClass#getTheMainDiagram()
+	 * @see #getIClass()
+	 * @generated
+	 */
+	EReference getIClass_TheMainDiagram();
+
+	/**
+	 * Returns the meta object for the containment reference list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IClass#getAttrs <em>Attrs</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference list '<em>Attrs</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IClass#getAttrs()
+	 * @see #getIClass()
+	 * @generated
+	 */
+	EReference getIClass_Attrs();
+
+	/**
+	 * Returns the meta object for the containment reference list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IClass#getTags <em>Tags</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference list '<em>Tags</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IClass#getTags()
+	 * @see #getIClass()
+	 * @generated
+	 */
+	EReference getIClass_Tags();
+
+	/**
+	 * Returns the meta object for the containment reference list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IClass#getAssociations <em>Associations</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference list '<em>Associations</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IClass#getAssociations()
+	 * @see #getIClass()
+	 * @generated
+	 */
+	EReference getIClass_Associations();
+
+	/**
+	 * Returns the meta object for the containment reference list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IClass#getDependencies <em>Dependencies</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference list '<em>Dependencies</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IClass#getDependencies()
+	 * @see #getIClass()
+	 * @generated
+	 */
+	EReference getIClass_Dependencies();
+
+	/**
+	 * Returns the meta object for the containment reference list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IClass#getPorts <em>Ports</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference list '<em>Ports</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IClass#getPorts()
+	 * @see #getIClass()
+	 * @generated
+	 */
+	EReference getIClass_Ports();
+
+	/**
+	 * Returns the meta object for the containment reference list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IClass#getObjectLinks <em>Object Links</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference list '<em>Object Links</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IClass#getObjectLinks()
+	 * @see #getIClass()
+	 * @generated
+	 */
+	EReference getIClass_ObjectLinks();
+
+	/**
+	 * Returns the meta object for the containment reference list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IClass#getStateCharts <em>State Charts</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference list '<em>State Charts</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IClass#getStateCharts()
+	 * @see #getIClass()
+	 * @generated
+	 */
+	EReference getIClass_StateCharts();
+
+	/**
+	 * Returns the meta object for the reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IClass#getItsStateChart <em>Its State Chart</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the reference '<em>Its State Chart</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IClass#getItsStateChart()
+	 * @see #getIClass()
+	 * @generated
+	 */
+	EReference getIClass_ItsStateChart();
+
+	/**
+	 * Returns the meta object for the reference list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IClass#getTriggeredOperations <em>Triggered Operations</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the reference list '<em>Triggered Operations</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IClass#getTriggeredOperations()
+	 * @see #getIClass()
+	 * @generated
+	 */
+	EReference getIClass_TriggeredOperations();
+
+	/**
+	 * Returns the meta object for the reference list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IClass#getReceptions <em>Receptions</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the reference list '<em>Receptions</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IClass#getReceptions()
+	 * @see #getIClass()
+	 * @generated
+	 */
+	EReference getIClass_Receptions();
+
+	/**
+	 * Returns the meta object for the containment reference list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IClass#getPrimitiveOperations <em>Primitive Operations</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference list '<em>Primitive Operations</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IClass#getPrimitiveOperations()
+	 * @see #getIClass()
+	 * @generated
+	 */
+	EReference getIClass_PrimitiveOperations();
+
+	/**
+	 * Returns the meta object for the containment reference list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IClass#getAnnotations <em>Annotations</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference list '<em>Annotations</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IClass#getAnnotations()
+	 * @see #getIClass()
+	 * @generated
+	 */
+	EReference getIClass_Annotations();
+
+	/**
+	 * Returns the meta object for the containment reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IClass#getDescription <em>Description</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference '<em>Description</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IClass#getDescription()
+	 * @see #getIClass()
+	 * @generated
+	 */
+	EReference getIClass_Description();
+
+	/**
+	 * Returns the meta object for the containment reference list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IClass#getDeclaratives <em>Declaratives</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference list '<em>Declaratives</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IClass#getDeclaratives()
+	 * @see #getIClass()
+	 * @generated
+	 */
+	EReference getIClass_Declaratives();
+
+	/**
+	 * Returns the meta object for the reference list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IClass#getAssociationElements <em>Association Elements</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the reference list '<em>Association Elements</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IClass#getAssociationElements()
+	 * @see #getIClass()
+	 * @generated
+	 */
+	EReference getIClass_AssociationElements();
+
+	/**
+	 * Returns the meta object for the reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IClass#getOwnerHandle <em>Owner Handle</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the reference '<em>Owner Handle</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IClass#getOwnerHandle()
+	 * @see #getIClass()
+	 * @generated
+	 */
+	EReference getIClass_OwnerHandle();
+
+	/**
+	 * Returns the meta object for the containment reference list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IClass#getHyperLinks <em>Hyper Links</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference list '<em>Hyper Links</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IClass#getHyperLinks()
+	 * @see #getIClass()
+	 * @generated
+	 */
+	EReference getIClass_HyperLinks();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IClass#getRequiremenTracabilityHandle <em>Requiremen Tracability Handle</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Requiremen Tracability Handle</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IClass#getRequiremenTracabilityHandle()
+	 * @see #getIClass()
+	 * @generated
+	 */
+	EAttribute getIClass_RequiremenTracabilityHandle();
+
+	/**
+	 * Returns the meta object for the containment reference list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IClass#getComponentFiles <em>Component Files</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference list '<em>Component Files</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IClass#getComponentFiles()
+	 * @see #getIClass()
+	 * @generated
+	 */
+	EReference getIClass_ComponentFiles();
+
+	/**
+	 * Returns the meta object for the containment reference list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IClass#getLinks <em>Links</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference list '<em>Links</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IClass#getLinks()
+	 * @see #getIClass()
+	 * @generated
+	 */
+	EReference getIClass_Links();
+
+	/**
+	 * Returns the meta object for the containment reference list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IClass#getComponents <em>Components</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference list '<em>Components</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IClass#getComponents()
+	 * @see #getIClass()
+	 * @generated
+	 */
+	EReference getIClass_Components();
+
+	/**
+	 * Returns the meta object for the reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IClass#getEventHandles <em>Event Handles</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the reference '<em>Event Handles</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IClass#getEventHandles()
+	 * @see #getIClass()
+	 * @generated
+	 */
+	EReference getIClass_EventHandles();
+
+	/**
+	 * Returns the meta object for the containment reference list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IClass#getTemplateParameters <em>Template Parameters</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference list '<em>Template Parameters</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IClass#getTemplateParameters()
+	 * @see #getIClass()
+	 * @generated
+	 */
+	EReference getIClass_TemplateParameters();
+
+	/**
+	 * Returns the meta object for the attribute list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IClass#getCodeUpdateCGTime <em>Code Update CG Time</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute list '<em>Code Update CG Time</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IClass#getCodeUpdateCGTime()
+	 * @see #getIClass()
+	 * @generated
+	 */
+	EAttribute getIClass_CodeUpdateCGTime();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IClass#getCmheader <em>Cmheader</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Cmheader</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IClass#getCmheader()
+	 * @see #getIClass()
+	 * @generated
+	 */
+	EAttribute getIClass_Cmheader();
+
+	/**
+	 * Returns the meta object for class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IClassHandle <em>IClass Handle</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for class '<em>IClass Handle</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IClassHandle
+	 * @generated
+	 */
+	EClass getIClassHandle();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IClassHandle#getM2Class <em>M2 Class</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>M2 Class</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IClassHandle#getM2Class()
+	 * @see #getIClassHandle()
+	 * @generated
+	 */
+	EAttribute getIClassHandle_M2Class();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IClassHandle#getId <em>Id</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Id</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IClassHandle#getId()
+	 * @see #getIClassHandle()
+	 * @generated
+	 */
+	EAttribute getIClassHandle_Id();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IClassHandle#getFilename <em>Filename</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Filename</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IClassHandle#getFilename()
+	 * @see #getIClassHandle()
+	 * @generated
+	 */
+	EAttribute getIClassHandle_Filename();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IClassHandle#getSubsystem <em>Subsystem</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Subsystem</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IClassHandle#getSubsystem()
+	 * @see #getIClassHandle()
+	 * @generated
+	 */
+	EAttribute getIClassHandle_Subsystem();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IClassHandle#getClass_ <em>Class</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Class</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IClassHandle#getClass_()
+	 * @see #getIClassHandle()
+	 * @generated
+	 */
+	EAttribute getIClassHandle_Class();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IClassHandle#getName <em>Name</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Name</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IClassHandle#getName()
+	 * @see #getIClassHandle()
+	 * @generated
+	 */
+	EAttribute getIClassHandle_Name();
+
+	/**
+	 * Returns the meta object for class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IClassInstance <em>IClass Instance</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for class '<em>IClass Instance</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IClassInstance
+	 * @generated
+	 */
+	EClass getIClassInstance();
+
+	/**
+	 * Returns the meta object for the reference list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IClassInstance#getInverse <em>Inverse</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the reference list '<em>Inverse</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IClassInstance#getInverse()
+	 * @see #getIClassInstance()
+	 * @generated
+	 */
+	EReference getIClassInstance_Inverse();
+
+	/**
+	 * Returns the meta object for class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IClassifier <em>IClassifier</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for class '<em>IClassifier</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IClassifier
+	 * @generated
+	 */
+	EClass getIClassifier();
+
+	/**
+	 * Returns the meta object for class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IClassifierRole <em>IClassifier Role</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for class '<em>IClassifier Role</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IClassifierRole
+	 * @generated
+	 */
+	EClass getIClassifierRole();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IClassifierRole#getId <em>Id</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Id</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IClassifierRole#getId()
+	 * @see #getIClassifierRole()
+	 * @generated
+	 */
+	EAttribute getIClassifierRole_Id();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IClassifierRole#getName <em>Name</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Name</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IClassifierRole#getName()
+	 * @see #getIClassifierRole()
+	 * @generated
+	 */
+	EAttribute getIClassifierRole_Name();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IClassifierRole#getM_eRoleType <em>MeRole Type</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>MeRole Type</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IClassifierRole#getM_eRoleType()
+	 * @see #getIClassifierRole()
+	 * @generated
+	 */
+	EAttribute getIClassifierRole_M_eRoleType();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IClassifierRole#getMyState <em>My State</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>My State</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IClassifierRole#getMyState()
+	 * @see #getIClassifierRole()
+	 * @generated
+	 */
+	EAttribute getIClassifierRole_MyState();
+
+	/**
+	 * Returns the meta object for the reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IClassifierRole#getM_pBase <em>MpBase</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the reference '<em>MpBase</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IClassifierRole#getM_pBase()
+	 * @see #getIClassifierRole()
+	 * @generated
+	 */
+	EReference getIClassifierRole_M_pBase();
+
+	/**
+	 * Returns the meta object for the reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IClassifierRole#getM_instance <em>Minstance</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the reference '<em>Minstance</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IClassifierRole#getM_instance()
+	 * @see #getIClassifierRole()
+	 * @generated
+	 */
+	EReference getIClassifierRole_M_instance();
+
+	/**
+	 * Returns the meta object for the containment reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IClassifierRole#getProperties <em>Properties</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference '<em>Properties</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IClassifierRole#getProperties()
+	 * @see #getIClassifierRole()
+	 * @generated
+	 */
+	EReference getIClassifierRole_Properties();
+
+	/**
+	 * Returns the meta object for the attribute list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IClassifierRole#getModifiedTimeWeak <em>Modified Time Weak</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute list '<em>Modified Time Weak</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IClassifierRole#getModifiedTimeWeak()
+	 * @see #getIClassifierRole()
+	 * @generated
+	 */
+	EAttribute getIClassifierRole_ModifiedTimeWeak();
+
+	/**
+	 * Returns the meta object for the reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IClassifierRole#getM_pRefSD <em>MpRef SD</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the reference '<em>MpRef SD</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IClassifierRole#getM_pRefSD()
+	 * @see #getIClassifierRole()
+	 * @generated
+	 */
+	EReference getIClassifierRole_M_pRefSD();
+
+	/**
+	 * Returns the meta object for the attribute list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IClassifierRole#getCodeUpdateCGTime <em>Code Update CG Time</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute list '<em>Code Update CG Time</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IClassifierRole#getCodeUpdateCGTime()
+	 * @see #getIClassifierRole()
+	 * @generated
+	 */
+	EAttribute getIClassifierRole_CodeUpdateCGTime();
+
+	/**
+	 * Returns the meta object for the reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IClassifierRole#getStereotypes <em>Stereotypes</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the reference '<em>Stereotypes</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IClassifierRole#getStereotypes()
+	 * @see #getIClassifierRole()
+	 * @generated
+	 */
+	EReference getIClassifierRole_Stereotypes();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IClassifierRole#getObjectCreation <em>Object Creation</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Object Creation</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IClassifierRole#getObjectCreation()
+	 * @see #getIClassifierRole()
+	 * @generated
+	 */
+	EAttribute getIClassifierRole_ObjectCreation();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IClassifierRole#getUmlDependencyID <em>Uml Dependency ID</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Uml Dependency ID</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IClassifierRole#getUmlDependencyID()
+	 * @see #getIClassifierRole()
+	 * @generated
+	 */
+	EAttribute getIClassifierRole_UmlDependencyID();
+
+	/**
+	 * Returns the meta object for class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ICodeGenConfigInfo <em>ICode Gen Config Info</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for class '<em>ICode Gen Config Info</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ICodeGenConfigInfo
+	 * @generated
+	 */
+	EClass getICodeGenConfigInfo();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ICodeGenConfigInfo#getId <em>Id</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Id</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ICodeGenConfigInfo#getId()
+	 * @see #getICodeGenConfigInfo()
+	 * @generated
+	 */
+	EAttribute getICodeGenConfigInfo_Id();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ICodeGenConfigInfo#getMyState <em>My State</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>My State</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ICodeGenConfigInfo#getMyState()
+	 * @see #getICodeGenConfigInfo()
+	 * @generated
+	 */
+	EAttribute getICodeGenConfigInfo_MyState();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ICodeGenConfigInfo#getName <em>Name</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Name</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ICodeGenConfigInfo#getName()
+	 * @see #getICodeGenConfigInfo()
+	 * @generated
+	 */
+	EAttribute getICodeGenConfigInfo_Name();
+
+	/**
+	 * Returns the meta object for the attribute list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ICodeGenConfigInfo#getModifiedTimeWeak <em>Modified Time Weak</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute list '<em>Modified Time Weak</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ICodeGenConfigInfo#getModifiedTimeWeak()
+	 * @see #getICodeGenConfigInfo()
+	 * @generated
+	 */
+	EAttribute getICodeGenConfigInfo_ModifiedTimeWeak();
+
+	/**
+	 * Returns the meta object for the containment reference list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ICodeGenConfigInfo#getHyperLinks <em>Hyper Links</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference list '<em>Hyper Links</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ICodeGenConfigInfo#getHyperLinks()
+	 * @see #getICodeGenConfigInfo()
+	 * @generated
+	 */
+	EReference getICodeGenConfigInfo_HyperLinks();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ICodeGenConfigInfo#getScopeType <em>Scope Type</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Scope Type</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ICodeGenConfigInfo#getScopeType()
+	 * @see #getICodeGenConfigInfo()
+	 * @generated
+	 */
+	EAttribute getICodeGenConfigInfo_ScopeType();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ICodeGenConfigInfo#getLibraries <em>Libraries</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Libraries</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ICodeGenConfigInfo#getLibraries()
+	 * @see #getICodeGenConfigInfo()
+	 * @generated
+	 */
+	EAttribute getICodeGenConfigInfo_Libraries();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ICodeGenConfigInfo#getAdditionalSources <em>Additional Sources</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Additional Sources</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ICodeGenConfigInfo#getAdditionalSources()
+	 * @see #getICodeGenConfigInfo()
+	 * @generated
+	 */
+	EAttribute getICodeGenConfigInfo_AdditionalSources();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ICodeGenConfigInfo#getStandardHeaders <em>Standard Headers</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Standard Headers</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ICodeGenConfigInfo#getStandardHeaders()
+	 * @see #getICodeGenConfigInfo()
+	 * @generated
+	 */
+	EAttribute getICodeGenConfigInfo_StandardHeaders();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ICodeGenConfigInfo#getIncludePath <em>Include Path</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Include Path</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ICodeGenConfigInfo#getIncludePath()
+	 * @see #getICodeGenConfigInfo()
+	 * @generated
+	 */
+	EAttribute getICodeGenConfigInfo_IncludePath();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ICodeGenConfigInfo#getTargetMain <em>Target Main</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Target Main</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ICodeGenConfigInfo#getTargetMain()
+	 * @see #getICodeGenConfigInfo()
+	 * @generated
+	 */
+	EAttribute getICodeGenConfigInfo_TargetMain();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ICodeGenConfigInfo#getInstrumentation <em>Instrumentation</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Instrumentation</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ICodeGenConfigInfo#getInstrumentation()
+	 * @see #getICodeGenConfigInfo()
+	 * @generated
+	 */
+	EAttribute getICodeGenConfigInfo_Instrumentation();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ICodeGenConfigInfo#getTimeModel <em>Time Model</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Time Model</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ICodeGenConfigInfo#getTimeModel()
+	 * @see #getICodeGenConfigInfo()
+	 * @generated
+	 */
+	EAttribute getICodeGenConfigInfo_TimeModel();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ICodeGenConfigInfo#getM_generateActors <em>Mgenerate Actors</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Mgenerate Actors</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ICodeGenConfigInfo#getM_generateActors()
+	 * @see #getICodeGenConfigInfo()
+	 * @generated
+	 */
+	EAttribute getICodeGenConfigInfo_M_generateActors();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ICodeGenConfigInfo#getStatechartImplementation <em>Statechart Implementation</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Statechart Implementation</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ICodeGenConfigInfo#getStatechartImplementation()
+	 * @see #getICodeGenConfigInfo()
+	 * @generated
+	 */
+	EAttribute getICodeGenConfigInfo_StatechartImplementation();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ICodeGenConfigInfo#getInitializationCode <em>Initialization Code</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Initialization Code</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ICodeGenConfigInfo#getInitializationCode()
+	 * @see #getICodeGenConfigInfo()
+	 * @generated
+	 */
+	EAttribute getICodeGenConfigInfo_InitializationCode();
+
+	/**
+	 * Returns the meta object for the attribute list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ICodeGenConfigInfo#getChecksList <em>Checks List</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute list '<em>Checks List</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ICodeGenConfigInfo#getChecksList()
+	 * @see #getICodeGenConfigInfo()
+	 * @generated
+	 */
+	EAttribute getICodeGenConfigInfo_ChecksList();
+
+	/**
+	 * Returns the meta object for the reference list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ICodeGenConfigInfo#getScopeElements <em>Scope Elements</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the reference list '<em>Scope Elements</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ICodeGenConfigInfo#getScopeElements()
+	 * @see #getICodeGenConfigInfo()
+	 * @generated
+	 */
+	EReference getICodeGenConfigInfo_ScopeElements();
+
+	/**
+	 * Returns the meta object for the containment reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ICodeGenConfigInfo#getRoot <em>Root</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference '<em>Root</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ICodeGenConfigInfo#getRoot()
+	 * @see #getICodeGenConfigInfo()
+	 * @generated
+	 */
+	EReference getICodeGenConfigInfo_Root();
+
+	/**
+	 * Returns the meta object for the attribute list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ICodeGenConfigInfo#getWeakCGTime <em>Weak CG Time</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute list '<em>Weak CG Time</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ICodeGenConfigInfo#getWeakCGTime()
+	 * @see #getICodeGenConfigInfo()
+	 * @generated
+	 */
+	EAttribute getICodeGenConfigInfo_WeakCGTime();
+
+	/**
+	 * Returns the meta object for the attribute list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ICodeGenConfigInfo#getStrongCGTime <em>Strong CG Time</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute list '<em>Strong CG Time</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ICodeGenConfigInfo#getStrongCGTime()
+	 * @see #getICodeGenConfigInfo()
+	 * @generated
+	 */
+	EAttribute getICodeGenConfigInfo_StrongCGTime();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ICodeGenConfigInfo#getM_allInAnimScope <em>Mall In Anim Scope</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Mall In Anim Scope</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ICodeGenConfigInfo#getM_allInAnimScope()
+	 * @see #getICodeGenConfigInfo()
+	 * @generated
+	 */
+	EAttribute getICodeGenConfigInfo_M_allInAnimScope();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ICodeGenConfigInfo#getM_generateUsecases <em>Mgenerate Usecases</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Mgenerate Usecases</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ICodeGenConfigInfo#getM_generateUsecases()
+	 * @see #getICodeGenConfigInfo()
+	 * @generated
+	 */
+	EAttribute getICodeGenConfigInfo_M_generateUsecases();
+
+	/**
+	 * Returns the meta object for the containment reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ICodeGenConfigInfo#getDependencies <em>Dependencies</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference '<em>Dependencies</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ICodeGenConfigInfo#getDependencies()
+	 * @see #getICodeGenConfigInfo()
+	 * @generated
+	 */
+	EReference getICodeGenConfigInfo_Dependencies();
+
+	/**
+	 * Returns the meta object for the reference list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ICodeGenConfigInfo#getInitialInstances <em>Initial Instances</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the reference list '<em>Initial Instances</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ICodeGenConfigInfo#getInitialInstances()
+	 * @see #getICodeGenConfigInfo()
+	 * @generated
+	 */
+	EReference getICodeGenConfigInfo_InitialInstances();
+
+	/**
+	 * Returns the meta object for the containment reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ICodeGenConfigInfo#getProperties <em>Properties</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference '<em>Properties</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ICodeGenConfigInfo#getProperties()
+	 * @see #getICodeGenConfigInfo()
+	 * @generated
+	 */
+	EReference getICodeGenConfigInfo_Properties();
+
+	/**
+	 * Returns the meta object for the containment reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ICodeGenConfigInfo#getAnnotations <em>Annotations</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference '<em>Annotations</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ICodeGenConfigInfo#getAnnotations()
+	 * @see #getICodeGenConfigInfo()
+	 * @generated
+	 */
+	EReference getICodeGenConfigInfo_Annotations();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ICodeGenConfigInfo#getLastID <em>Last ID</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Last ID</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ICodeGenConfigInfo#getLastID()
+	 * @see #getICodeGenConfigInfo()
+	 * @generated
+	 */
+	EAttribute getICodeGenConfigInfo_LastID();
+
+	/**
+	 * Returns the meta object for the containment reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ICodeGenConfigInfo#getDescription <em>Description</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference '<em>Description</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ICodeGenConfigInfo#getDescription()
+	 * @see #getICodeGenConfigInfo()
+	 * @generated
+	 */
+	EReference getICodeGenConfigInfo_Description();
+
+	/**
+	 * Returns the meta object for the containment reference list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ICodeGenConfigInfo#getTags <em>Tags</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference list '<em>Tags</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ICodeGenConfigInfo#getTags()
+	 * @see #getICodeGenConfigInfo()
+	 * @generated
+	 */
+	EReference getICodeGenConfigInfo_Tags();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ICodeGenConfigInfo#getCmheader <em>Cmheader</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Cmheader</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ICodeGenConfigInfo#getCmheader()
+	 * @see #getICodeGenConfigInfo()
+	 * @generated
+	 */
+	EAttribute getICodeGenConfigInfo_Cmheader();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ICodeGenConfigInfo#getRequiremenTracabilityHandle <em>Requiremen Tracability Handle</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Requiremen Tracability Handle</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ICodeGenConfigInfo#getRequiremenTracabilityHandle()
+	 * @see #getICodeGenConfigInfo()
+	 * @generated
+	 */
+	EAttribute getICodeGenConfigInfo_RequiremenTracabilityHandle();
+
+	/**
+	 * Returns the meta object for the reference list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ICodeGenConfigInfo#getStereotypes <em>Stereotypes</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the reference list '<em>Stereotypes</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ICodeGenConfigInfo#getStereotypes()
+	 * @see #getICodeGenConfigInfo()
+	 * @generated
+	 */
+	EReference getICodeGenConfigInfo_Stereotypes();
+
+	/**
+	 * Returns the meta object for the attribute list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ICodeGenConfigInfo#getCodeUpdateCGTime <em>Code Update CG Time</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute list '<em>Code Update CG Time</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ICodeGenConfigInfo#getCodeUpdateCGTime()
+	 * @see #getICodeGenConfigInfo()
+	 * @generated
+	 */
+	EAttribute getICodeGenConfigInfo_CodeUpdateCGTime();
+
+	/**
+	 * Returns the meta object for the reference list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ICodeGenConfigInfo#getAnimScopeElements <em>Anim Scope Elements</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the reference list '<em>Anim Scope Elements</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ICodeGenConfigInfo#getAnimScopeElements()
+	 * @see #getICodeGenConfigInfo()
+	 * @generated
+	 */
+	EReference getICodeGenConfigInfo_AnimScopeElements();
+
+	/**
+	 * Returns the meta object for the containment reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ICodeGenConfigInfo#getEmbededFiles <em>Embeded Files</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference '<em>Embeded Files</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ICodeGenConfigInfo#getEmbededFiles()
+	 * @see #getICodeGenConfigInfo()
+	 * @generated
+	 */
+	EReference getICodeGenConfigInfo_EmbededFiles();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ICodeGenConfigInfo#getObjectCreation <em>Object Creation</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Object Creation</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ICodeGenConfigInfo#getObjectCreation()
+	 * @see #getICodeGenConfigInfo()
+	 * @generated
+	 */
+	EAttribute getICodeGenConfigInfo_ObjectCreation();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ICodeGenConfigInfo#getUmlDependencyID <em>Uml Dependency ID</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Uml Dependency ID</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ICodeGenConfigInfo#getUmlDependencyID()
+	 * @see #getICodeGenConfigInfo()
+	 * @generated
+	 */
+	EAttribute getICodeGenConfigInfo_UmlDependencyID();
+
+	/**
+	 * Returns the meta object for class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ICodeGenConfigInfoHandle <em>ICode Gen Config Info Handle</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for class '<em>ICode Gen Config Info Handle</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ICodeGenConfigInfoHandle
+	 * @generated
+	 */
+	EClass getICodeGenConfigInfoHandle();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ICodeGenConfigInfoHandle#getM2Class <em>M2 Class</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>M2 Class</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ICodeGenConfigInfoHandle#getM2Class()
+	 * @see #getICodeGenConfigInfoHandle()
+	 * @generated
+	 */
+	EAttribute getICodeGenConfigInfoHandle_M2Class();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ICodeGenConfigInfoHandle#getId <em>Id</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Id</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ICodeGenConfigInfoHandle#getId()
+	 * @see #getICodeGenConfigInfoHandle()
+	 * @generated
+	 */
+	EAttribute getICodeGenConfigInfoHandle_Id();
+
+	/**
+	 * Returns the meta object for class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ICollaboration <em>ICollaboration</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for class '<em>ICollaboration</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ICollaboration
+	 * @generated
+	 */
+	EClass getICollaboration();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ICollaboration#getId <em>Id</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Id</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ICollaboration#getId()
+	 * @see #getICollaboration()
+	 * @generated
+	 */
+	EAttribute getICollaboration_Id();
+
+	/**
+	 * Returns the meta object for the containment reference list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ICollaboration#getClassifierRoles <em>Classifier Roles</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference list '<em>Classifier Roles</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ICollaboration#getClassifierRoles()
+	 * @see #getICollaboration()
+	 * @generated
+	 */
+	EReference getICollaboration_ClassifierRoles();
+
+	/**
+	 * Returns the meta object for the containment reference list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ICollaboration#getMessages <em>Messages</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference list '<em>Messages</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ICollaboration#getMessages()
+	 * @see #getICollaboration()
+	 * @generated
+	 */
+	EReference getICollaboration_Messages();
+
+	/**
+	 * Returns the meta object for the containment reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ICollaboration#getAnnotations <em>Annotations</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference '<em>Annotations</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ICollaboration#getAnnotations()
+	 * @see #getICollaboration()
+	 * @generated
+	 */
+	EReference getICollaboration_Annotations();
+
+	/**
+	 * Returns the meta object for the containment reference list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ICollaboration#getAssociationRoles <em>Association Roles</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference list '<em>Association Roles</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ICollaboration#getAssociationRoles()
+	 * @see #getICollaboration()
+	 * @generated
+	 */
+	EReference getICollaboration_AssociationRoles();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ICollaboration#getModifiedTimeWeak <em>Modified Time Weak</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Modified Time Weak</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ICollaboration#getModifiedTimeWeak()
+	 * @see #getICollaboration()
+	 * @generated
+	 */
+	EAttribute getICollaboration_ModifiedTimeWeak();
+
+	/**
+	 * Returns the meta object for the containment reference list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ICollaboration#getCombinedFragments <em>Combined Fragments</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference list '<em>Combined Fragments</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ICollaboration#getCombinedFragments()
+	 * @see #getICollaboration()
+	 * @generated
+	 */
+	EReference getICollaboration_CombinedFragments();
+
+	/**
+	 * Returns the meta object for the containment reference list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ICollaboration#getP_MessageHandler <em>PMessage Handler</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference list '<em>PMessage Handler</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ICollaboration#getP_MessageHandler()
+	 * @see #getICollaboration()
+	 * @generated
+	 */
+	EReference getICollaboration_P_MessageHandler();
+
+	/**
+	 * Returns the meta object for the containment reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ICollaboration#getInteractionOccurrences <em>Interaction Occurrences</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference '<em>Interaction Occurrences</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ICollaboration#getInteractionOccurrences()
+	 * @see #getICollaboration()
+	 * @generated
+	 */
+	EReference getICollaboration_InteractionOccurrences();
+
+	/**
+	 * Returns the meta object for the containment reference list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ICollaboration#getExecutionOccurrences <em>Execution Occurrences</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference list '<em>Execution Occurrences</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ICollaboration#getExecutionOccurrences()
+	 * @see #getICollaboration()
+	 * @generated
+	 */
+	EReference getICollaboration_ExecutionOccurrences();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ICollaboration#getObjectCreation <em>Object Creation</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Object Creation</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ICollaboration#getObjectCreation()
+	 * @see #getICollaboration()
+	 * @generated
+	 */
+	EAttribute getICollaboration_ObjectCreation();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ICollaboration#getUmlDependencyID <em>Uml Dependency ID</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Uml Dependency ID</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ICollaboration#getUmlDependencyID()
+	 * @see #getICollaboration()
+	 * @generated
+	 */
+	EAttribute getICollaboration_UmlDependencyID();
+
+	/**
+	 * Returns the meta object for class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ICollaborationDiagram <em>ICollaboration Diagram</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for class '<em>ICollaboration Diagram</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ICollaborationDiagram
+	 * @generated
+	 */
+	EClass getICollaborationDiagram();
+
+	/**
+	 * Returns the meta object for the containment reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ICollaborationDiagram#getM_pICollaboration <em>MpI Collaboration</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference '<em>MpI Collaboration</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ICollaborationDiagram#getM_pICollaboration()
+	 * @see #getICollaborationDiagram()
+	 * @generated
+	 */
+	EReference getICollaborationDiagram_M_pICollaboration();
+
+	/**
+	 * Returns the meta object for class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IColor <em>IColor</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for class '<em>IColor</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IColor
+	 * @generated
+	 */
+	EClass getIColor();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IColor#getM_fgColor <em>Mfg Color</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Mfg Color</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IColor#getM_fgColor()
+	 * @see #getIColor()
+	 * @generated
+	 */
+	EAttribute getIColor_M_fgColor();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IColor#getM_bgColor <em>Mbg Color</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Mbg Color</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IColor#getM_bgColor()
+	 * @see #getIColor()
+	 * @generated
+	 */
+	EAttribute getIColor_M_bgColor();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IColor#getM_bgFlag <em>Mbg Flag</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Mbg Flag</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IColor#getM_bgFlag()
+	 * @see #getIColor()
+	 * @generated
+	 */
+	EAttribute getIColor_M_bgFlag();
+
+	/**
+	 * Returns the meta object for class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ICombinedFragment <em>ICombined Fragment</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for class '<em>ICombined Fragment</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ICombinedFragment
+	 * @generated
+	 */
+	EClass getICombinedFragment();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ICombinedFragment#getId <em>Id</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Id</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ICombinedFragment#getId()
+	 * @see #getICombinedFragment()
+	 * @generated
+	 */
+	EAttribute getICombinedFragment_Id();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ICombinedFragment#getMyState <em>My State</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>My State</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ICombinedFragment#getMyState()
+	 * @see #getICombinedFragment()
+	 * @generated
+	 */
+	EAttribute getICombinedFragment_MyState();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ICombinedFragment#getName <em>Name</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Name</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ICombinedFragment#getName()
+	 * @see #getICombinedFragment()
+	 * @generated
+	 */
+	EAttribute getICombinedFragment_Name();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ICombinedFragment#getModifiedTimeWeak <em>Modified Time Weak</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Modified Time Weak</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ICombinedFragment#getModifiedTimeWeak()
+	 * @see #getICombinedFragment()
+	 * @generated
+	 */
+	EAttribute getICombinedFragment_ModifiedTimeWeak();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ICombinedFragment#getInteractionOperator <em>Interaction Operator</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Interaction Operator</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ICombinedFragment#getInteractionOperator()
+	 * @see #getICombinedFragment()
+	 * @generated
+	 */
+	EAttribute getICombinedFragment_InteractionOperator();
+
+	/**
+	 * Returns the meta object for the containment reference list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ICombinedFragment#getInteractionOperands <em>Interaction Operands</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference list '<em>Interaction Operands</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ICombinedFragment#getInteractionOperands()
+	 * @see #getICombinedFragment()
+	 * @generated
+	 */
+	EReference getICombinedFragment_InteractionOperands();
+
+	/**
+	 * Returns the meta object for the reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ICombinedFragment#getStereotypes <em>Stereotypes</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the reference '<em>Stereotypes</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ICombinedFragment#getStereotypes()
+	 * @see #getICombinedFragment()
+	 * @generated
+	 */
+	EReference getICombinedFragment_Stereotypes();
+
+	/**
+	 * Returns the meta object for the containment reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ICombinedFragment#getTags <em>Tags</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference '<em>Tags</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ICombinedFragment#getTags()
+	 * @see #getICombinedFragment()
+	 * @generated
+	 */
+	EReference getICombinedFragment_Tags();
+
+	/**
+	 * Returns the meta object for class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IComment <em>IComment</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for class '<em>IComment</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IComment
+	 * @generated
+	 */
+	EClass getIComment();
+
+	/**
+	 * Returns the meta object for the containment reference list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IComment#getHyperLinks <em>Hyper Links</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference list '<em>Hyper Links</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IComment#getHyperLinks()
+	 * @see #getIComment()
+	 * @generated
+	 */
+	EReference getIComment_HyperLinks();
+
+	/**
+	 * Returns the meta object for the containment reference list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IComment#getAnchors <em>Anchors</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference list '<em>Anchors</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IComment#getAnchors()
+	 * @see #getIComment()
+	 * @generated
+	 */
+	EReference getIComment_Anchors();
+
+	/**
+	 * Returns the meta object for the containment reference list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IComment#getDependencies <em>Dependencies</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference list '<em>Dependencies</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IComment#getDependencies()
+	 * @see #getIComment()
+	 * @generated
+	 */
+	EReference getIComment_Dependencies();
+
+	/**
+	 * Returns the meta object for the reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IComment#getStereotypes <em>Stereotypes</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the reference '<em>Stereotypes</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IComment#getStereotypes()
+	 * @see #getIComment()
+	 * @generated
+	 */
+	EReference getIComment_Stereotypes();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IComment#getLastID <em>Last ID</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Last ID</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IComment#getLastID()
+	 * @see #getIComment()
+	 * @generated
+	 */
+	EAttribute getIComment_LastID();
+
+	/**
+	 * Returns the meta object for the attribute list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IComment#getCodeUpdateCGTime <em>Code Update CG Time</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute list '<em>Code Update CG Time</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IComment#getCodeUpdateCGTime()
+	 * @see #getIComment()
+	 * @generated
+	 */
+	EAttribute getIComment_CodeUpdateCGTime();
+
+	/**
+	 * Returns the meta object for the reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IComment#getTheMainDiagram <em>The Main Diagram</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the reference '<em>The Main Diagram</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IComment#getTheMainDiagram()
+	 * @see #getIComment()
+	 * @generated
+	 */
+	EReference getIComment_TheMainDiagram();
+
+	/**
+	 * Returns the meta object for the containment reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IComment#getProperties <em>Properties</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference '<em>Properties</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IComment#getProperties()
+	 * @see #getIComment()
+	 * @generated
+	 */
+	EReference getIComment_Properties();
+
+	/**
+	 * Returns the meta object for class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IComponent <em>IComponent</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for class '<em>IComponent</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IComponent
+	 * @generated
+	 */
+	EClass getIComponent();
+
+	/**
+	 * Returns the meta object for the reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IComponent#getOwnerHandle <em>Owner Handle</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the reference '<em>Owner Handle</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IComponent#getOwnerHandle()
+	 * @see #getIComponent()
+	 * @generated
+	 */
+	EReference getIComponent_OwnerHandle();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IComponent#getId <em>Id</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Id</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IComponent#getId()
+	 * @see #getIComponent()
+	 * @generated
+	 */
+	EAttribute getIComponent_Id();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IComponent#getMyState <em>My State</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>My State</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IComponent#getMyState()
+	 * @see #getIComponent()
+	 * @generated
+	 */
+	EAttribute getIComponent_MyState();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IComponent#getName <em>Name</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Name</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IComponent#getName()
+	 * @see #getIComponent()
+	 * @generated
+	 */
+	EAttribute getIComponent_Name();
+
+	/**
+	 * Returns the meta object for the reference list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IComponent#getStereotypes <em>Stereotypes</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the reference list '<em>Stereotypes</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IComponent#getStereotypes()
+	 * @see #getIComponent()
+	 * @generated
+	 */
+	EReference getIComponent_Stereotypes();
+
+	/**
+	 * Returns the meta object for the attribute list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IComponent#getModifiedTimeWeak <em>Modified Time Weak</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute list '<em>Modified Time Weak</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IComponent#getModifiedTimeWeak()
+	 * @see #getIComponent()
+	 * @generated
+	 */
+	EAttribute getIComponent_ModifiedTimeWeak();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IComponent#getM_buildType <em>Mbuild Type</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Mbuild Type</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IComponent#getM_buildType()
+	 * @see #getIComponent()
+	 * @generated
+	 */
+	EAttribute getIComponent_M_buildType();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IComponent#getM_libraries <em>Mlibraries</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Mlibraries</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IComponent#getM_libraries()
+	 * @see #getIComponent()
+	 * @generated
+	 */
+	EAttribute getIComponent_M_libraries();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IComponent#getM_additionalSources <em>Madditional Sources</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Madditional Sources</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IComponent#getM_additionalSources()
+	 * @see #getIComponent()
+	 * @generated
+	 */
+	EAttribute getIComponent_M_additionalSources();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IComponent#getM_standardHeaders <em>Mstandard Headers</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Mstandard Headers</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IComponent#getM_standardHeaders()
+	 * @see #getIComponent()
+	 * @generated
+	 */
+	EAttribute getIComponent_M_standardHeaders();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IComponent#getM_includePath <em>Minclude Path</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Minclude Path</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IComponent#getM_includePath()
+	 * @see #getIComponent()
+	 * @generated
+	 */
+	EAttribute getIComponent_M_includePath();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IComponent#getM_initializationCode <em>Minitialization Code</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Minitialization Code</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IComponent#getM_initializationCode()
+	 * @see #getIComponent()
+	 * @generated
+	 */
+	EAttribute getIComponent_M_initializationCode();
+
+	/**
+	 * Returns the meta object for the containment reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IComponent#getM_folder <em>Mfolder</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference '<em>Mfolder</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IComponent#getM_folder()
+	 * @see #getIComponent()
+	 * @generated
+	 */
+	EReference getIComponent_M_folder();
+
+	/**
+	 * Returns the meta object for the containment reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IComponent#getM_configActive <em>Mconfig Active</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference '<em>Mconfig Active</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IComponent#getM_configActive()
+	 * @see #getIComponent()
+	 * @generated
+	 */
+	EReference getIComponent_M_configActive();
+
+	/**
+	 * Returns the meta object for the containment reference list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IComponent#getConfigs <em>Configs</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference list '<em>Configs</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IComponent#getConfigs()
+	 * @see #getIComponent()
+	 * @generated
+	 */
+	EReference getIComponent_Configs();
+
+	/**
+	 * Returns the meta object for the containment reference list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IComponent#getDependencies <em>Dependencies</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference list '<em>Dependencies</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IComponent#getDependencies()
+	 * @see #getIComponent()
+	 * @generated
+	 */
+	EReference getIComponent_Dependencies();
+
+	/**
+	 * Returns the meta object for the reference list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IComponent#getHandlesInMe <em>Handles In Me</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the reference list '<em>Handles In Me</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IComponent#getHandlesInMe()
+	 * @see #getIComponent()
+	 * @generated
+	 */
+	EReference getIComponent_HandlesInMe();
+
+	/**
+	 * Returns the meta object for the containment reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IComponent#getProperties <em>Properties</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference '<em>Properties</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IComponent#getProperties()
+	 * @see #getIComponent()
+	 * @generated
+	 */
+	EReference getIComponent_Properties();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IComponent#getLastID <em>Last ID</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Last ID</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IComponent#getLastID()
+	 * @see #getIComponent()
+	 * @generated
+	 */
+	EAttribute getIComponent_LastID();
+
+	/**
+	 * Returns the meta object for the containment reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IComponent#getDescription <em>Description</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference '<em>Description</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IComponent#getDescription()
+	 * @see #getIComponent()
+	 * @generated
+	 */
+	EReference getIComponent_Description();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IComponent#getRequiremenTracabilityHandle <em>Requiremen Tracability Handle</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Requiremen Tracability Handle</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IComponent#getRequiremenTracabilityHandle()
+	 * @see #getIComponent()
+	 * @generated
+	 */
+	EAttribute getIComponent_RequiremenTracabilityHandle();
+
+	/**
+	 * Returns the meta object for the containment reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IComponent#getHyperLinks <em>Hyper Links</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference '<em>Hyper Links</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IComponent#getHyperLinks()
+	 * @see #getIComponent()
+	 * @generated
+	 */
+	EReference getIComponent_HyperLinks();
+
+	/**
+	 * Returns the meta object for the attribute list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IComponent#getCodeUpdateCGTime <em>Code Update CG Time</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute list '<em>Code Update CG Time</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IComponent#getCodeUpdateCGTime()
+	 * @see #getIComponent()
+	 * @generated
+	 */
+	EAttribute getIComponent_CodeUpdateCGTime();
+
+	/**
+	 * Returns the meta object for the containment reference list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IComponent#getDeclaratives <em>Declaratives</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference list '<em>Declaratives</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IComponent#getDeclaratives()
+	 * @see #getIComponent()
+	 * @generated
+	 */
+	EReference getIComponent_Declaratives();
+
+	/**
+	 * Returns the meta object for the reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IComponent#getVariationPoints <em>Variation Points</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the reference '<em>Variation Points</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IComponent#getVariationPoints()
+	 * @see #getIComponent()
+	 * @generated
+	 */
+	EReference getIComponent_VariationPoints();
+
+	/**
+	 * Returns the meta object for the reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IComponent#getSelectedVariants <em>Selected Variants</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the reference '<em>Selected Variants</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IComponent#getSelectedVariants()
+	 * @see #getIComponent()
+	 * @generated
+	 */
+	EReference getIComponent_SelectedVariants();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IComponent#getObjectCreation <em>Object Creation</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Object Creation</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IComponent#getObjectCreation()
+	 * @see #getIComponent()
+	 * @generated
+	 */
+	EAttribute getIComponent_ObjectCreation();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IComponent#getUmlDependencyID <em>Uml Dependency ID</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Uml Dependency ID</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IComponent#getUmlDependencyID()
+	 * @see #getIComponent()
+	 * @generated
+	 */
+	EAttribute getIComponent_UmlDependencyID();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IComponent#getCmheader <em>Cmheader</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Cmheader</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IComponent#getCmheader()
+	 * @see #getIComponent()
+	 * @generated
+	 */
+	EAttribute getIComponent_Cmheader();
+
+	/**
+	 * Returns the meta object for class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IComponentDiagram <em>IComponent Diagram</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for class '<em>IComponent Diagram</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IComponentDiagram
+	 * @generated
+	 */
+	EClass getIComponentDiagram();
+
+	/**
+	 * Returns the meta object for class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IComponentInstance <em>IComponent Instance</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for class '<em>IComponent Instance</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IComponentInstance
+	 * @generated
+	 */
+	EClass getIComponentInstance();
+
+	/**
+	 * Returns the meta object for class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IConfiguration <em>IConfiguration</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for class '<em>IConfiguration</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IConfiguration
+	 * @generated
+	 */
+	EClass getIConfiguration();
+
+	/**
+	 * Returns the meta object for class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IConnector <em>IConnector</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for class '<em>IConnector</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IConnector
+	 * @generated
+	 */
+	EClass getIConnector();
+
+	/**
+	 * Returns the meta object for the reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IConnector#getParent <em>Parent</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the reference '<em>Parent</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IConnector#getParent()
+	 * @see #getIConnector()
+	 * @generated
+	 */
+	EReference getIConnector_Parent();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IConnector#getConnectorType <em>Connector Type</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Connector Type</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IConnector#getConnectorType()
+	 * @see #getIConnector()
+	 * @generated
+	 */
+	EAttribute getIConnector_ConnectorType();
+
+	/**
+	 * Returns the meta object for class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IConstraint <em>IConstraint</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for class '<em>IConstraint</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IConstraint
+	 * @generated
+	 */
+	EClass getIConstraint();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IConstraint#getId <em>Id</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Id</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IConstraint#getId()
+	 * @see #getIConstraint()
+	 * @generated
+	 */
+	EAttribute getIConstraint_Id();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IConstraint#getMyState <em>My State</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>My State</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IConstraint#getMyState()
+	 * @see #getIConstraint()
+	 * @generated
+	 */
+	EAttribute getIConstraint_MyState();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IConstraint#getName <em>Name</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Name</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IConstraint#getName()
+	 * @see #getIConstraint()
+	 * @generated
+	 */
+	EAttribute getIConstraint_Name();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IConstraint#getModifiedTimeWeak <em>Modified Time Weak</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Modified Time Weak</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IConstraint#getModifiedTimeWeak()
+	 * @see #getIConstraint()
+	 * @generated
+	 */
+	EAttribute getIConstraint_ModifiedTimeWeak();
+
+	/**
+	 * Returns the meta object for the reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IConstraint#getStereotypes <em>Stereotypes</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the reference '<em>Stereotypes</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IConstraint#getStereotypes()
+	 * @see #getIConstraint()
+	 * @generated
+	 */
+	EReference getIConstraint_Stereotypes();
+
+	/**
+	 * Returns the meta object for the containment reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IConstraint#getProperties <em>Properties</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference '<em>Properties</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IConstraint#getProperties()
+	 * @see #getIConstraint()
+	 * @generated
+	 */
+	EReference getIConstraint_Properties();
+
+	/**
+	 * Returns the meta object for the containment reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IConstraint#getAnchors <em>Anchors</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference '<em>Anchors</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IConstraint#getAnchors()
+	 * @see #getIConstraint()
+	 * @generated
+	 */
+	EReference getIConstraint_Anchors();
+
+	/**
+	 * Returns the meta object for class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IConstructor <em>IConstructor</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for class '<em>IConstructor</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IConstructor
+	 * @generated
+	 */
+	EClass getIConstructor();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IConstructor#getId <em>Id</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Id</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IConstructor#getId()
+	 * @see #getIConstructor()
+	 * @generated
+	 */
+	EAttribute getIConstructor_Id();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IConstructor#getMyState <em>My State</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>My State</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IConstructor#getMyState()
+	 * @see #getIConstructor()
+	 * @generated
+	 */
+	EAttribute getIConstructor_MyState();
+
+	/**
+	 * Returns the meta object for the attribute list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IConstructor#getModifiedTimeWeak <em>Modified Time Weak</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute list '<em>Modified Time Weak</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IConstructor#getModifiedTimeWeak()
+	 * @see #getIConstructor()
+	 * @generated
+	 */
+	EAttribute getIConstructor_ModifiedTimeWeak();
+
+	/**
+	 * Returns the meta object for the reference list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IConstructor#getReturnType <em>Return Type</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the reference list '<em>Return Type</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IConstructor#getReturnType()
+	 * @see #getIConstructor()
+	 * @generated
+	 */
+	EReference getIConstructor_ReturnType();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IConstructor#getAbstract <em>Abstract</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Abstract</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IConstructor#getAbstract()
+	 * @see #getIConstructor()
+	 * @generated
+	 */
+	EAttribute getIConstructor_Abstract();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IConstructor#getFinal <em>Final</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Final</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IConstructor#getFinal()
+	 * @see #getIConstructor()
+	 * @generated
+	 */
+	EAttribute getIConstructor_Final();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IConstructor#getConcurrency <em>Concurrency</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Concurrency</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IConstructor#getConcurrency()
+	 * @see #getIConstructor()
+	 * @generated
+	 */
+	EAttribute getIConstructor_Concurrency();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IConstructor#getProtection <em>Protection</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Protection</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IConstructor#getProtection()
+	 * @see #getIConstructor()
+	 * @generated
+	 */
+	EAttribute getIConstructor_Protection();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IConstructor#getStatic <em>Static</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Static</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IConstructor#getStatic()
+	 * @see #getIConstructor()
+	 * @generated
+	 */
+	EAttribute getIConstructor_Static();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IConstructor#getConstant <em>Constant</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Constant</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IConstructor#getConstant()
+	 * @see #getIConstructor()
+	 * @generated
+	 */
+	EAttribute getIConstructor_Constant();
+
+	/**
+	 * Returns the meta object for the containment reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IConstructor#getItsBody <em>Its Body</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference '<em>Its Body</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IConstructor#getItsBody()
+	 * @see #getIConstructor()
+	 * @generated
+	 */
+	EReference getIConstructor_ItsBody();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IConstructor#getInitializer <em>Initializer</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Initializer</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IConstructor#getInitializer()
+	 * @see #getIConstructor()
+	 * @generated
+	 */
+	EAttribute getIConstructor_Initializer();
+
+	/**
+	 * Returns the meta object for the containment reference list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IConstructor#getArgs <em>Args</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference list '<em>Args</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IConstructor#getArgs()
+	 * @see #getIConstructor()
+	 * @generated
+	 */
+	EReference getIConstructor_Args();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IConstructor#getName <em>Name</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Name</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IConstructor#getName()
+	 * @see #getIConstructor()
+	 * @generated
+	 */
+	EAttribute getIConstructor_Name();
+
+	/**
+	 * Returns the meta object for the containment reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IConstructor#getDescription <em>Description</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference '<em>Description</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IConstructor#getDescription()
+	 * @see #getIConstructor()
+	 * @generated
+	 */
+	EReference getIConstructor_Description();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IConstructor#getRequiremenTracabilityHandle <em>Requiremen Tracability Handle</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Requiremen Tracability Handle</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IConstructor#getRequiremenTracabilityHandle()
+	 * @see #getIConstructor()
+	 * @generated
+	 */
+	EAttribute getIConstructor_RequiremenTracabilityHandle();
+
+	/**
+	 * Returns the meta object for the attribute list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IConstructor#getCodeUpdateCGTime <em>Code Update CG Time</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute list '<em>Code Update CG Time</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IConstructor#getCodeUpdateCGTime()
+	 * @see #getIConstructor()
+	 * @generated
+	 */
+	EAttribute getIConstructor_CodeUpdateCGTime();
+
+	/**
+	 * Returns the meta object for the containment reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IConstructor#getTags <em>Tags</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference '<em>Tags</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IConstructor#getTags()
+	 * @see #getIConstructor()
+	 * @generated
+	 */
+	EReference getIConstructor_Tags();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IConstructor#getLastID <em>Last ID</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Last ID</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IConstructor#getLastID()
+	 * @see #getIConstructor()
+	 * @generated
+	 */
+	EAttribute getIConstructor_LastID();
+
+	/**
+	 * Returns the meta object for class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IContextSpecification <em>IContext Specification</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for class '<em>IContext Specification</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IContextSpecification
+	 * @generated
+	 */
+	EClass getIContextSpecification();
+
+	/**
+	 * Returns the meta object for class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IControlledFile <em>IControlled File</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for class '<em>IControlled File</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IControlledFile
+	 * @generated
+	 */
+	EClass getIControlledFile();
+
+	/**
+	 * Returns the meta object for class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IDefaultDrvdTrans <em>IDefault Drvd Trans</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for class '<em>IDefault Drvd Trans</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IDefaultDrvdTrans
+	 * @generated
+	 */
+	EClass getIDefaultDrvdTrans();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IDefaultDrvdTrans#getItsSource <em>Its Source</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Its Source</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IDefaultDrvdTrans#getItsSource()
+	 * @see #getIDefaultDrvdTrans()
+	 * @generated
+	 */
+	EAttribute getIDefaultDrvdTrans_ItsSource();
+
+	/**
+	 * Returns the meta object for the reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IDefaultDrvdTrans#getOfState <em>Of State</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the reference '<em>Of State</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IDefaultDrvdTrans#getOfState()
+	 * @see #getIDefaultDrvdTrans()
+	 * @generated
+	 */
+	EReference getIDefaultDrvdTrans_OfState();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IDefaultDrvdTrans#getErrorStatus <em>Error Status</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Error Status</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IDefaultDrvdTrans#getErrorStatus()
+	 * @see #getIDefaultDrvdTrans()
+	 * @generated
+	 */
+	EAttribute getIDefaultDrvdTrans_ErrorStatus();
+
+	/**
+	 * Returns the meta object for the reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IDefaultDrvdTrans#getInheritsFromHandle <em>Inherits From Handle</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the reference '<em>Inherits From Handle</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IDefaultDrvdTrans#getInheritsFromHandle()
+	 * @see #getIDefaultDrvdTrans()
+	 * @generated
+	 */
+	EReference getIDefaultDrvdTrans_InheritsFromHandle();
+
+	/**
+	 * Returns the meta object for the containment reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IDefaultDrvdTrans#getAnnotations <em>Annotations</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference '<em>Annotations</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IDefaultDrvdTrans#getAnnotations()
+	 * @see #getIDefaultDrvdTrans()
+	 * @generated
+	 */
+	EReference getIDefaultDrvdTrans_Annotations();
+
+	/**
+	 * Returns the meta object for the reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IDefaultDrvdTrans#getStereotypes <em>Stereotypes</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the reference '<em>Stereotypes</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IDefaultDrvdTrans#getStereotypes()
+	 * @see #getIDefaultDrvdTrans()
+	 * @generated
+	 */
+	EReference getIDefaultDrvdTrans_Stereotypes();
+
+	/**
+	 * Returns the meta object for class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IDependency <em>IDependency</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for class '<em>IDependency</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IDependency
+	 * @generated
+	 */
+	EClass getIDependency();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IDependency#getId <em>Id</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Id</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IDependency#getId()
+	 * @see #getIDependency()
+	 * @generated
+	 */
+	EAttribute getIDependency_Id();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IDependency#getMyState <em>My State</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>My State</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IDependency#getMyState()
+	 * @see #getIDependency()
+	 * @generated
+	 */
+	EAttribute getIDependency_MyState();
+
+	/**
+	 * Returns the meta object for the containment reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IDependency#getProperties <em>Properties</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference '<em>Properties</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IDependency#getProperties()
+	 * @see #getIDependency()
+	 * @generated
+	 */
+	EReference getIDependency_Properties();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IDependency#getName <em>Name</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Name</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IDependency#getName()
+	 * @see #getIDependency()
+	 * @generated
+	 */
+	EAttribute getIDependency_Name();
+
+	/**
+	 * Returns the meta object for the reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IDependency#getStereotypes <em>Stereotypes</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the reference '<em>Stereotypes</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IDependency#getStereotypes()
+	 * @see #getIDependency()
+	 * @generated
+	 */
+	EReference getIDependency_Stereotypes();
+
+	/**
+	 * Returns the meta object for the attribute list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IDependency#getModifiedTimeWeak <em>Modified Time Weak</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute list '<em>Modified Time Weak</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IDependency#getModifiedTimeWeak()
+	 * @see #getIDependency()
+	 * @generated
+	 */
+	EAttribute getIDependency_ModifiedTimeWeak();
+
+	/**
+	 * Returns the meta object for the reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IDependency#getDependsOn <em>Depends On</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the reference '<em>Depends On</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IDependency#getDependsOn()
+	 * @see #getIDependency()
+	 * @generated
+	 */
+	EReference getIDependency_DependsOn();
+
+	/**
+	 * Returns the meta object for the containment reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IDependency#getTags <em>Tags</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference '<em>Tags</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IDependency#getTags()
+	 * @see #getIDependency()
+	 * @generated
+	 */
+	EReference getIDependency_Tags();
+
+	/**
+	 * Returns the meta object for the containment reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IDependency#getAnnotations <em>Annotations</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference '<em>Annotations</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IDependency#getAnnotations()
+	 * @see #getIDependency()
+	 * @generated
+	 */
+	EReference getIDependency_Annotations();
+
+	/**
+	 * Returns the meta object for the containment reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IDependency#getDependencies <em>Dependencies</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference '<em>Dependencies</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IDependency#getDependencies()
+	 * @see #getIDependency()
+	 * @generated
+	 */
+	EReference getIDependency_Dependencies();
+
+	/**
+	 * Returns the meta object for the containment reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IDependency#getDescription <em>Description</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference '<em>Description</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IDependency#getDescription()
+	 * @see #getIDependency()
+	 * @generated
+	 */
+	EReference getIDependency_Description();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IDependency#getRequiremenTracabilityHandle <em>Requiremen Tracability Handle</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Requiremen Tracability Handle</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IDependency#getRequiremenTracabilityHandle()
+	 * @see #getIDependency()
+	 * @generated
+	 */
+	EAttribute getIDependency_RequiremenTracabilityHandle();
+
+	/**
+	 * Returns the meta object for the attribute list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IDependency#getCodeUpdateCGTime <em>Code Update CG Time</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute list '<em>Code Update CG Time</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IDependency#getCodeUpdateCGTime()
+	 * @see #getIDependency()
+	 * @generated
+	 */
+	EAttribute getIDependency_CodeUpdateCGTime();
+
+	/**
+	 * Returns the meta object for class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IDeploymentDiagram <em>IDeployment Diagram</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for class '<em>IDeployment Diagram</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IDeploymentDiagram
+	 * @generated
+	 */
+	EClass getIDeploymentDiagram();
+
+	/**
+	 * Returns the meta object for class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IDescription <em>IDescription</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for class '<em>IDescription</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IDescription
+	 * @generated
+	 */
+	EClass getIDescription();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IDescription#getTextRTF <em>Text RTF</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Text RTF</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IDescription#getTextRTF()
+	 * @see #getIDescription()
+	 * @generated
+	 */
+	EAttribute getIDescription_TextRTF();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IDescription#getText <em>Text</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Text</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IDescription#getText()
+	 * @see #getIDescription()
+	 * @generated
+	 */
+	EAttribute getIDescription_Text();
+
+	/**
+	 * Returns the meta object for the containment reference list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IDescription#getHyperlinks <em>Hyperlinks</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference list '<em>Hyperlinks</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IDescription#getHyperlinks()
+	 * @see #getIDescription()
+	 * @generated
+	 */
+	EReference getIDescription_Hyperlinks();
+
+	/**
+	 * Returns the meta object for class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IDestructor <em>IDestructor</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for class '<em>IDestructor</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IDestructor
+	 * @generated
+	 */
+	EClass getIDestructor();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IDestructor#getId <em>Id</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Id</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IDestructor#getId()
+	 * @see #getIDestructor()
+	 * @generated
+	 */
+	EAttribute getIDestructor_Id();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IDestructor#getName <em>Name</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Name</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IDestructor#getName()
+	 * @see #getIDestructor()
+	 * @generated
+	 */
+	EAttribute getIDestructor_Name();
+
+	/**
+	 * Returns the meta object for the reference list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IDestructor#getArgs <em>Args</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the reference list '<em>Args</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IDestructor#getArgs()
+	 * @see #getIDestructor()
+	 * @generated
+	 */
+	EReference getIDestructor_Args();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IDestructor#getAbstract <em>Abstract</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Abstract</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IDestructor#getAbstract()
+	 * @see #getIDestructor()
+	 * @generated
+	 */
+	EAttribute getIDestructor_Abstract();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IDestructor#getFinal <em>Final</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Final</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IDestructor#getFinal()
+	 * @see #getIDestructor()
+	 * @generated
+	 */
+	EAttribute getIDestructor_Final();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IDestructor#getConcurrency <em>Concurrency</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Concurrency</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IDestructor#getConcurrency()
+	 * @see #getIDestructor()
+	 * @generated
+	 */
+	EAttribute getIDestructor_Concurrency();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IDestructor#getProtection <em>Protection</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Protection</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IDestructor#getProtection()
+	 * @see #getIDestructor()
+	 * @generated
+	 */
+	EAttribute getIDestructor_Protection();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IDestructor#getStatic <em>Static</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Static</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IDestructor#getStatic()
+	 * @see #getIDestructor()
+	 * @generated
+	 */
+	EAttribute getIDestructor_Static();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IDestructor#getConstant <em>Constant</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Constant</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IDestructor#getConstant()
+	 * @see #getIDestructor()
+	 * @generated
+	 */
+	EAttribute getIDestructor_Constant();
+
+	/**
+	 * Returns the meta object for the containment reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IDestructor#getItsBody <em>Its Body</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference '<em>Its Body</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IDestructor#getItsBody()
+	 * @see #getIDestructor()
+	 * @generated
+	 */
+	EReference getIDestructor_ItsBody();
+
+	/**
+	 * Returns the meta object for the attribute list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IDestructor#getModifiedTimeWeak <em>Modified Time Weak</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute list '<em>Modified Time Weak</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IDestructor#getModifiedTimeWeak()
+	 * @see #getIDestructor()
+	 * @generated
+	 */
+	EAttribute getIDestructor_ModifiedTimeWeak();
+
+	/**
+	 * Returns the meta object for the containment reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IDestructor#getDescription <em>Description</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference '<em>Description</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IDestructor#getDescription()
+	 * @see #getIDestructor()
+	 * @generated
+	 */
+	EReference getIDestructor_Description();
+
+	/**
+	 * Returns the meta object for the containment reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IDestructor#getProperties <em>Properties</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference '<em>Properties</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IDestructor#getProperties()
+	 * @see #getIDestructor()
+	 * @generated
+	 */
+	EReference getIDestructor_Properties();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IDestructor#getMyState <em>My State</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>My State</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IDestructor#getMyState()
+	 * @see #getIDestructor()
+	 * @generated
+	 */
+	EAttribute getIDestructor_MyState();
+
+	/**
+	 * Returns the meta object for the reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IDestructor#getReturnType <em>Return Type</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the reference '<em>Return Type</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IDestructor#getReturnType()
+	 * @see #getIDestructor()
+	 * @generated
+	 */
+	EReference getIDestructor_ReturnType();
+
+	/**
+	 * Returns the meta object for class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IDiagram <em>IDiagram</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for class '<em>IDiagram</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IDiagram
+	 * @generated
+	 */
+	EClass getIDiagram();
+
+	/**
+	 * Returns the meta object for the containment reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IDiagram#getProperties <em>Properties</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference '<em>Properties</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IDiagram#getProperties()
+	 * @see #getIDiagram()
+	 * @generated
+	 */
+	EReference getIDiagram_Properties();
+
+	/**
+	 * Returns the meta object for the reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IDiagram#getStereotypes <em>Stereotypes</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the reference '<em>Stereotypes</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IDiagram#getStereotypes()
+	 * @see #getIDiagram()
+	 * @generated
+	 */
+	EReference getIDiagram_Stereotypes();
+
+	/**
+	 * Returns the meta object for the attribute list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IDiagram#getModifiedTimeWeak <em>Modified Time Weak</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute list '<em>Modified Time Weak</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IDiagram#getModifiedTimeWeak()
+	 * @see #getIDiagram()
+	 * @generated
+	 */
+	EAttribute getIDiagram_ModifiedTimeWeak();
+
+	/**
+	 * Returns the meta object for the containment reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IDiagram#getGraphicChart <em>Graphic Chart</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference '<em>Graphic Chart</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IDiagram#getGraphicChart()
+	 * @see #getIDiagram()
+	 * @generated
+	 */
+	EReference getIDiagram_GraphicChart();
+
+	/**
+	 * Returns the meta object for the containment reference list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IDiagram#getAnnotations <em>Annotations</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference list '<em>Annotations</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IDiagram#getAnnotations()
+	 * @see #getIDiagram()
+	 * @generated
+	 */
+	EReference getIDiagram_Annotations();
+
+	/**
+	 * Returns the meta object for the attribute list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IDiagram#getCodeUpdateCGTime <em>Code Update CG Time</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute list '<em>Code Update CG Time</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IDiagram#getCodeUpdateCGTime()
+	 * @see #getIDiagram()
+	 * @generated
+	 */
+	EAttribute getIDiagram_CodeUpdateCGTime();
+
+	/**
+	 * Returns the meta object for the containment reference list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IDiagram#getHyperLinks <em>Hyper Links</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference list '<em>Hyper Links</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IDiagram#getHyperLinks()
+	 * @see #getIDiagram()
+	 * @generated
+	 */
+	EReference getIDiagram_HyperLinks();
+
+	/**
+	 * Returns the meta object for class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IEmbededFile <em>IEmbeded File</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for class '<em>IEmbeded File</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IEmbededFile
+	 * @generated
+	 */
+	EClass getIEmbededFile();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IEmbededFile#getId <em>Id</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Id</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IEmbededFile#getId()
+	 * @see #getIEmbededFile()
+	 * @generated
+	 */
+	EAttribute getIEmbededFile_Id();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IEmbededFile#getName <em>Name</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Name</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IEmbededFile#getName()
+	 * @see #getIEmbededFile()
+	 * @generated
+	 */
+	EAttribute getIEmbededFile_Name();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IEmbededFile#getModifiedTimeWeak <em>Modified Time Weak</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Modified Time Weak</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IEmbededFile#getModifiedTimeWeak()
+	 * @see #getIEmbededFile()
+	 * @generated
+	 */
+	EAttribute getIEmbededFile_ModifiedTimeWeak();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IEmbededFile#getMayNeedToRelocate <em>May Need To Relocate</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>May Need To Relocate</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IEmbededFile#getMayNeedToRelocate()
+	 * @see #getIEmbededFile()
+	 * @generated
+	 */
+	EAttribute getIEmbededFile_MayNeedToRelocate();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IEmbededFile#getLastKnownFullPath <em>Last Known Full Path</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Last Known Full Path</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IEmbededFile#getLastKnownFullPath()
+	 * @see #getIEmbededFile()
+	 * @generated
+	 */
+	EAttribute getIEmbededFile_LastKnownFullPath();
+
+	/**
+	 * Returns the meta object for the reference list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IEmbededFile#getStereotypes <em>Stereotypes</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the reference list '<em>Stereotypes</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IEmbededFile#getStereotypes()
+	 * @see #getIEmbededFile()
+	 * @generated
+	 */
+	EReference getIEmbededFile_Stereotypes();
+
+	/**
+	 * Returns the meta object for the containment reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IEmbededFile#getTags <em>Tags</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference '<em>Tags</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IEmbededFile#getTags()
+	 * @see #getIEmbededFile()
+	 * @generated
+	 */
+	EReference getIEmbededFile_Tags();
+
+	/**
+	 * Returns the meta object for class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IEnumerationLiteral <em>IEnumeration Literal</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for class '<em>IEnumeration Literal</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IEnumerationLiteral
+	 * @generated
+	 */
+	EClass getIEnumerationLiteral();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IEnumerationLiteral#getId <em>Id</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Id</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IEnumerationLiteral#getId()
+	 * @see #getIEnumerationLiteral()
+	 * @generated
+	 */
+	EAttribute getIEnumerationLiteral_Id();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IEnumerationLiteral#getName <em>Name</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Name</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IEnumerationLiteral#getName()
+	 * @see #getIEnumerationLiteral()
+	 * @generated
+	 */
+	EAttribute getIEnumerationLiteral_Name();
+
+	/**
+	 * Returns the meta object for the attribute list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IEnumerationLiteral#getModifiedTimeWeak <em>Modified Time Weak</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute list '<em>Modified Time Weak</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IEnumerationLiteral#getModifiedTimeWeak()
+	 * @see #getIEnumerationLiteral()
+	 * @generated
+	 */
+	EAttribute getIEnumerationLiteral_ModifiedTimeWeak();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IEnumerationLiteral#getValue <em>Value</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Value</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IEnumerationLiteral#getValue()
+	 * @see #getIEnumerationLiteral()
+	 * @generated
+	 */
+	EAttribute getIEnumerationLiteral_Value();
+
+	/**
+	 * Returns the meta object for the containment reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IEnumerationLiteral#getProperties <em>Properties</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference '<em>Properties</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IEnumerationLiteral#getProperties()
+	 * @see #getIEnumerationLiteral()
+	 * @generated
+	 */
+	EReference getIEnumerationLiteral_Properties();
+
+	/**
+	 * Returns the meta object for the containment reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IEnumerationLiteral#getTags <em>Tags</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference '<em>Tags</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IEnumerationLiteral#getTags()
+	 * @see #getIEnumerationLiteral()
+	 * @generated
+	 */
+	EReference getIEnumerationLiteral_Tags();
+
+	/**
+	 * Returns the meta object for the attribute list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IEnumerationLiteral#getCodeUpdateCGTime <em>Code Update CG Time</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute list '<em>Code Update CG Time</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IEnumerationLiteral#getCodeUpdateCGTime()
+	 * @see #getIEnumerationLiteral()
+	 * @generated
+	 */
+	EAttribute getIEnumerationLiteral_CodeUpdateCGTime();
+
+	/**
+	 * Returns the meta object for the containment reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IEnumerationLiteral#getDescription <em>Description</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference '<em>Description</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IEnumerationLiteral#getDescription()
+	 * @see #getIEnumerationLiteral()
+	 * @generated
+	 */
+	EReference getIEnumerationLiteral_Description();
+
+	/**
+	 * Returns the meta object for class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IEvent <em>IEvent</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for class '<em>IEvent</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IEvent
+	 * @generated
+	 */
+	EClass getIEvent();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IEvent#getId <em>Id</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Id</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IEvent#getId()
+	 * @see #getIEvent()
+	 * @generated
+	 */
+	EAttribute getIEvent_Id();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IEvent#getMyState <em>My State</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>My State</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IEvent#getMyState()
+	 * @see #getIEvent()
+	 * @generated
+	 */
+	EAttribute getIEvent_MyState();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IEvent#getName <em>Name</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Name</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IEvent#getName()
+	 * @see #getIEvent()
+	 * @generated
+	 */
+	EAttribute getIEvent_Name();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IEvent#getVirtual <em>Virtual</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Virtual</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IEvent#getVirtual()
+	 * @see #getIEvent()
+	 * @generated
+	 */
+	EAttribute getIEvent_Virtual();
+
+	/**
+	 * Returns the meta object for the attribute list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IEvent#getModifiedTimeWeak <em>Modified Time Weak</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute list '<em>Modified Time Weak</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IEvent#getModifiedTimeWeak()
+	 * @see #getIEvent()
+	 * @generated
+	 */
+	EAttribute getIEvent_ModifiedTimeWeak();
+
+	/**
+	 * Returns the meta object for the containment reference list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IEvent#getArgs <em>Args</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference list '<em>Args</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IEvent#getArgs()
+	 * @see #getIEvent()
+	 * @generated
+	 */
+	EReference getIEvent_Args();
+
+	/**
+	 * Returns the meta object for the reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IEvent#getStereotypes <em>Stereotypes</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the reference '<em>Stereotypes</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IEvent#getStereotypes()
+	 * @see #getIEvent()
+	 * @generated
+	 */
+	EReference getIEvent_Stereotypes();
+
+	/**
+	 * Returns the meta object for the containment reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IEvent#getDescription <em>Description</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference '<em>Description</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IEvent#getDescription()
+	 * @see #getIEvent()
+	 * @generated
+	 */
+	EReference getIEvent_Description();
+
+	/**
+	 * Returns the meta object for the containment reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IEvent#getProperties <em>Properties</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference '<em>Properties</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IEvent#getProperties()
+	 * @see #getIEvent()
+	 * @generated
+	 */
+	EReference getIEvent_Properties();
+
+	/**
+	 * Returns the meta object for the containment reference list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IEvent#getDependencies <em>Dependencies</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference list '<em>Dependencies</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IEvent#getDependencies()
+	 * @see #getIEvent()
+	 * @generated
+	 */
+	EReference getIEvent_Dependencies();
+
+	/**
+	 * Returns the meta object for the containment reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IEvent#getTags <em>Tags</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference '<em>Tags</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IEvent#getTags()
+	 * @see #getIEvent()
+	 * @generated
+	 */
+	EReference getIEvent_Tags();
+
+	/**
+	 * Returns the meta object for the reference list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IEvent#getSuperEvent <em>Super Event</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the reference list '<em>Super Event</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IEvent#getSuperEvent()
+	 * @see #getIEvent()
+	 * @generated
+	 */
+	EReference getIEvent_SuperEvent();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IEvent#getRequiremenTracabilityHandle <em>Requiremen Tracability Handle</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Requiremen Tracability Handle</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IEvent#getRequiremenTracabilityHandle()
+	 * @see #getIEvent()
+	 * @generated
+	 */
+	EAttribute getIEvent_RequiremenTracabilityHandle();
+
+	/**
+	 * Returns the meta object for the containment reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IEvent#getAnnotations <em>Annotations</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference '<em>Annotations</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IEvent#getAnnotations()
+	 * @see #getIEvent()
+	 * @generated
+	 */
+	EReference getIEvent_Annotations();
+
+	/**
+	 * Returns the meta object for class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IEventHandle <em>IEvent Handle</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for class '<em>IEvent Handle</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IEventHandle
+	 * @generated
+	 */
+	EClass getIEventHandle();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IEventHandle#getM2Class <em>M2 Class</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>M2 Class</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IEventHandle#getM2Class()
+	 * @see #getIEventHandle()
+	 * @generated
+	 */
+	EAttribute getIEventHandle_M2Class();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IEventHandle#getFilename <em>Filename</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Filename</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IEventHandle#getFilename()
+	 * @see #getIEventHandle()
+	 * @generated
+	 */
+	EAttribute getIEventHandle_Filename();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IEventHandle#getSubsystem <em>Subsystem</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Subsystem</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IEventHandle#getSubsystem()
+	 * @see #getIEventHandle()
+	 * @generated
+	 */
+	EAttribute getIEventHandle_Subsystem();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IEventHandle#getClass_ <em>Class</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Class</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IEventHandle#getClass_()
+	 * @see #getIEventHandle()
+	 * @generated
+	 */
+	EAttribute getIEventHandle_Class();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IEventHandle#getName <em>Name</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Name</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IEventHandle#getName()
+	 * @see #getIEventHandle()
+	 * @generated
+	 */
+	EAttribute getIEventHandle_Name();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IEventHandle#getId <em>Id</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Id</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IEventHandle#getId()
+	 * @see #getIEventHandle()
+	 * @generated
+	 */
+	EAttribute getIEventHandle_Id();
+
+	/**
+	 * Returns the meta object for class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IEventReception <em>IEvent Reception</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for class '<em>IEvent Reception</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IEventReception
+	 * @generated
+	 */
+	EClass getIEventReception();
+
+	/**
+	 * Returns the meta object for class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IExecutionOccurrence <em>IExecution Occurrence</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for class '<em>IExecution Occurrence</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IExecutionOccurrence
+	 * @generated
+	 */
+	EClass getIExecutionOccurrence();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IExecutionOccurrence#getId <em>Id</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Id</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IExecutionOccurrence#getId()
+	 * @see #getIExecutionOccurrence()
+	 * @generated
+	 */
+	EAttribute getIExecutionOccurrence_Id();
+
+	/**
+	 * Returns the meta object for the reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IExecutionOccurrence#getM_startMessage <em>Mstart Message</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the reference '<em>Mstart Message</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IExecutionOccurrence#getM_startMessage()
+	 * @see #getIExecutionOccurrence()
+	 * @generated
+	 */
+	EReference getIExecutionOccurrence_M_startMessage();
+
+	/**
+	 * Returns the meta object for the reference list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IExecutionOccurrence#getM_endMessage <em>Mend Message</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the reference list '<em>Mend Message</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IExecutionOccurrence#getM_endMessage()
+	 * @see #getIExecutionOccurrence()
+	 * @generated
+	 */
+	EReference getIExecutionOccurrence_M_endMessage();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IExecutionOccurrence#getM_length <em>Mlength</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Mlength</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IExecutionOccurrence#getM_length()
+	 * @see #getIExecutionOccurrence()
+	 * @generated
+	 */
+	EAttribute getIExecutionOccurrence_M_length();
+
+	/**
+	 * Returns the meta object for class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IExternalHyperlink <em>IExternal Hyperlink</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for class '<em>IExternal Hyperlink</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IExternalHyperlink
+	 * @generated
+	 */
+	EClass getIExternalHyperlink();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IExternalHyperlink#getTarget <em>Target</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Target</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IExternalHyperlink#getTarget()
+	 * @see #getIExternalHyperlink()
+	 * @generated
+	 */
+	EAttribute getIExternalHyperlink_Target();
+
+	/**
+	 * Returns the meta object for class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IFile <em>IFile</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for class '<em>IFile</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IFile
+	 * @generated
+	 */
+	EClass getIFile();
+
+	/**
+	 * Returns the meta object for the containment reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IFile#getProperties <em>Properties</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference '<em>Properties</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IFile#getProperties()
+	 * @see #getIFile()
+	 * @generated
+	 */
+	EReference getIFile_Properties();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IFile#getM_type <em>Mtype</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Mtype</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IFile#getM_type()
+	 * @see #getIFile()
+	 * @generated
+	 */
+	EAttribute getIFile_M_type();
+
+	/**
+	 * Returns the meta object for the containment reference list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IFile#getFragments <em>Fragments</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference list '<em>Fragments</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IFile#getFragments()
+	 * @see #getIFile()
+	 * @generated
+	 */
+	EReference getIFile_Fragments();
+
+	/**
+	 * Returns the meta object for the containment reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IFile#getDescription <em>Description</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference '<em>Description</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IFile#getDescription()
+	 * @see #getIFile()
+	 * @generated
+	 */
+	EReference getIFile_Description();
+
+	/**
+	 * Returns the meta object for the containment reference list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IFile#getDependencies <em>Dependencies</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference list '<em>Dependencies</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IFile#getDependencies()
+	 * @see #getIFile()
+	 * @generated
+	 */
+	EReference getIFile_Dependencies();
+
+	/**
+	 * Returns the meta object for class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IFileFragment <em>IFile Fragment</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for class '<em>IFile Fragment</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IFileFragment
+	 * @generated
+	 */
+	EClass getIFileFragment();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IFileFragment#getId <em>Id</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Id</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IFileFragment#getId()
+	 * @see #getIFileFragment()
+	 * @generated
+	 */
+	EAttribute getIFileFragment_Id();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IFileFragment#getName <em>Name</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Name</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IFileFragment#getName()
+	 * @see #getIFileFragment()
+	 * @generated
+	 */
+	EAttribute getIFileFragment_Name();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IFileFragment#getM_type <em>Mtype</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Mtype</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IFileFragment#getM_type()
+	 * @see #getIFileFragment()
+	 * @generated
+	 */
+	EAttribute getIFileFragment_M_type();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IFileFragment#getM_text <em>Mtext</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Mtext</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IFileFragment#getM_text()
+	 * @see #getIFileFragment()
+	 * @generated
+	 */
+	EAttribute getIFileFragment_M_text();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IFileFragment#getM_startRow <em>Mstart Row</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Mstart Row</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IFileFragment#getM_startRow()
+	 * @see #getIFileFragment()
+	 * @generated
+	 */
+	EAttribute getIFileFragment_M_startRow();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IFileFragment#getM_startCol <em>Mstart Col</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Mstart Col</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IFileFragment#getM_startCol()
+	 * @see #getIFileFragment()
+	 * @generated
+	 */
+	EAttribute getIFileFragment_M_startCol();
+
+	/**
+	 * Returns the meta object for the containment reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IFileFragment#getDescription <em>Description</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference '<em>Description</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IFileFragment#getDescription()
+	 * @see #getIFileFragment()
+	 * @generated
+	 */
+	EReference getIFileFragment_Description();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IFileFragment#getM_startCol_Short <em>Mstart Col Short</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Mstart Col Short</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IFileFragment#getM_startCol_Short()
+	 * @see #getIFileFragment()
+	 * @generated
+	 */
+	EAttribute getIFileFragment_M_startCol_Short();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IFileFragment#getM_endRow <em>Mend Row</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Mend Row</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IFileFragment#getM_endRow()
+	 * @see #getIFileFragment()
+	 * @generated
+	 */
+	EAttribute getIFileFragment_M_endRow();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IFileFragment#getM_endCol_Short <em>Mend Col Short</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Mend Col Short</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IFileFragment#getM_endCol_Short()
+	 * @see #getIFileFragment()
+	 * @generated
+	 */
+	EAttribute getIFileFragment_M_endCol_Short();
+
+	/**
+	 * Returns the meta object for the reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IFileFragment#getM_subject <em>Msubject</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the reference '<em>Msubject</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IFileFragment#getM_subject()
+	 * @see #getIFileFragment()
+	 * @generated
+	 */
+	EReference getIFileFragment_M_subject();
+
+	/**
+	 * Returns the meta object for the containment reference list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IFileFragment#getTags <em>Tags</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference list '<em>Tags</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IFileFragment#getTags()
+	 * @see #getIFileFragment()
+	 * @generated
+	 */
+	EReference getIFileFragment_Tags();
+
+	/**
+	 * Returns the meta object for the containment reference list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IFileFragment#getFragments <em>Fragments</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference list '<em>Fragments</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IFileFragment#getFragments()
+	 * @see #getIFileFragment()
+	 * @generated
+	 */
+	EReference getIFileFragment_Fragments();
+
+	/**
+	 * Returns the meta object for the attribute list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IFileFragment#getModifiedTimeWeak <em>Modified Time Weak</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute list '<em>Modified Time Weak</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IFileFragment#getModifiedTimeWeak()
+	 * @see #getIFileFragment()
+	 * @generated
+	 */
+	EAttribute getIFileFragment_ModifiedTimeWeak();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IFileFragment#getObjectCreation <em>Object Creation</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Object Creation</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IFileFragment#getObjectCreation()
+	 * @see #getIFileFragment()
+	 * @generated
+	 */
+	EAttribute getIFileFragment_ObjectCreation();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IFileFragment#getUmlDependencyID <em>Uml Dependency ID</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Uml Dependency ID</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IFileFragment#getUmlDependencyID()
+	 * @see #getIFileFragment()
+	 * @generated
+	 */
+	EAttribute getIFileFragment_UmlDependencyID();
+
+	/**
+	 * Returns the meta object for class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IFlow <em>IFlow</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for class '<em>IFlow</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IFlow
+	 * @generated
+	 */
+	EClass getIFlow();
+
+	/**
+	 * Returns the meta object for class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IFlowItem <em>IFlow Item</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for class '<em>IFlow Item</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IFlowItem
+	 * @generated
+	 */
+	EClass getIFlowItem();
+
+	/**
+	 * Returns the meta object for class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IFlowchart <em>IFlowchart</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for class '<em>IFlowchart</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IFlowchart
+	 * @generated
+	 */
+	EClass getIFlowchart();
+
+	/**
+	 * Returns the meta object for class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IFolder <em>IFolder</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for class '<em>IFolder</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IFolder
+	 * @generated
+	 */
+	EClass getIFolder();
+
+	/**
+	 * Returns the meta object for the reference list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IFolder#getElements <em>Elements</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the reference list '<em>Elements</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IFolder#getElements()
+	 * @see #getIFolder()
+	 * @generated
+	 */
+	EReference getIFolder_Elements();
+
+	/**
+	 * Returns the meta object for the containment reference list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IFolder#getFiles <em>Files</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference list '<em>Files</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IFolder#getFiles()
+	 * @see #getIFolder()
+	 * @generated
+	 */
+	EReference getIFolder_Files();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IFolder#getRequiremenTracabilityHandle <em>Requiremen Tracability Handle</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Requiremen Tracability Handle</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IFolder#getRequiremenTracabilityHandle()
+	 * @see #getIFolder()
+	 * @generated
+	 */
+	EAttribute getIFolder_RequiremenTracabilityHandle();
+
+	/**
+	 * Returns the meta object for the attribute list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IFolder#getCodeUpdateCGTime <em>Code Update CG Time</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute list '<em>Code Update CG Time</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IFolder#getCodeUpdateCGTime()
+	 * @see #getIFolder()
+	 * @generated
+	 */
+	EAttribute getIFolder_CodeUpdateCGTime();
+
+	/**
+	 * Returns the meta object for class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IFork <em>IFork</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for class '<em>IFork</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IFork
+	 * @generated
+	 */
+	EClass getIFork();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IFork#getId <em>Id</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Id</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IFork#getId()
+	 * @see #getIFork()
+	 * @generated
+	 */
+	EAttribute getIFork_Id();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IFork#getMyState <em>My State</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>My State</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IFork#getMyState()
+	 * @see #getIFork()
+	 * @generated
+	 */
+	EAttribute getIFork_MyState();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IFork#getName <em>Name</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Name</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IFork#getName()
+	 * @see #getIFork()
+	 * @generated
+	 */
+	EAttribute getIFork_Name();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IFork#getModifiedTimeWeak <em>Modified Time Weak</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Modified Time Weak</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IFork#getModifiedTimeWeak()
+	 * @see #getIFork()
+	 * @generated
+	 */
+	EAttribute getIFork_ModifiedTimeWeak();
+
+	/**
+	 * Returns the meta object for the containment reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IFork#getDescription <em>Description</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference '<em>Description</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IFork#getDescription()
+	 * @see #getIFork()
+	 * @generated
+	 */
+	EReference getIFork_Description();
+
+	/**
+	 * Returns the meta object for the reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IFork#getParent <em>Parent</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the reference '<em>Parent</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IFork#getParent()
+	 * @see #getIFork()
+	 * @generated
+	 */
+	EReference getIFork_Parent();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IFork#getConnectorType <em>Connector Type</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Connector Type</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IFork#getConnectorType()
+	 * @see #getIFork()
+	 * @generated
+	 */
+	EAttribute getIFork_ConnectorType();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IFork#getObjectCreation <em>Object Creation</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Object Creation</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IFork#getObjectCreation()
+	 * @see #getIFork()
+	 * @generated
+	 */
+	EAttribute getIFork_ObjectCreation();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IFork#getUmlDependencyID <em>Uml Dependency ID</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Uml Dependency ID</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IFork#getUmlDependencyID()
+	 * @see #getIFork()
+	 * @generated
+	 */
+	EAttribute getIFork_UmlDependencyID();
+
+	/**
+	 * Returns the meta object for class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IGeneralization <em>IGeneralization</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for class '<em>IGeneralization</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IGeneralization
+	 * @generated
+	 */
+	EClass getIGeneralization();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IGeneralization#getId <em>Id</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Id</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IGeneralization#getId()
+	 * @see #getIGeneralization()
+	 * @generated
+	 */
+	EAttribute getIGeneralization_Id();
+
+	/**
+	 * Returns the meta object for the attribute list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IGeneralization#getModifiedTimeWeak <em>Modified Time Weak</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute list '<em>Modified Time Weak</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IGeneralization#getModifiedTimeWeak()
+	 * @see #getIGeneralization()
+	 * @generated
+	 */
+	EAttribute getIGeneralization_ModifiedTimeWeak();
+
+	/**
+	 * Returns the meta object for the reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IGeneralization#getDependsOn <em>Depends On</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the reference '<em>Depends On</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IGeneralization#getDependsOn()
+	 * @see #getIGeneralization()
+	 * @generated
+	 */
+	EReference getIGeneralization_DependsOn();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IGeneralization#getInheritanceType <em>Inheritance Type</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Inheritance Type</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IGeneralization#getInheritanceType()
+	 * @see #getIGeneralization()
+	 * @generated
+	 */
+	EAttribute getIGeneralization_InheritanceType();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IGeneralization#getIsVirtual <em>Is Virtual</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Is Virtual</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IGeneralization#getIsVirtual()
+	 * @see #getIGeneralization()
+	 * @generated
+	 */
+	EAttribute getIGeneralization_IsVirtual();
+
+	/**
+	 * Returns the meta object for the reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IGeneralization#getStereotypes <em>Stereotypes</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the reference '<em>Stereotypes</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IGeneralization#getStereotypes()
+	 * @see #getIGeneralization()
+	 * @generated
+	 */
+	EReference getIGeneralization_Stereotypes();
+
+	/**
+	 * Returns the meta object for the containment reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IGeneralization#getDescription <em>Description</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference '<em>Description</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IGeneralization#getDescription()
+	 * @see #getIGeneralization()
+	 * @generated
+	 */
+	EReference getIGeneralization_Description();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IGeneralization#getObjectCreation <em>Object Creation</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Object Creation</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IGeneralization#getObjectCreation()
+	 * @see #getIGeneralization()
+	 * @generated
+	 */
+	EAttribute getIGeneralization_ObjectCreation();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IGeneralization#getUmlDependencyID <em>Uml Dependency ID</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Uml Dependency ID</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IGeneralization#getUmlDependencyID()
+	 * @see #getIGeneralization()
+	 * @generated
+	 */
+	EAttribute getIGeneralization_UmlDependencyID();
+
+	/**
+	 * Returns the meta object for the containment reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IGeneralization#getTi <em>Ti</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference '<em>Ti</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IGeneralization#getTi()
+	 * @see #getIGeneralization()
+	 * @generated
+	 */
+	EReference getIGeneralization_Ti();
+
+	/**
+	 * Returns the meta object for the containment reference list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IGeneralization#getAnnotations <em>Annotations</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference list '<em>Annotations</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IGeneralization#getAnnotations()
+	 * @see #getIGeneralization()
+	 * @generated
+	 */
+	EReference getIGeneralization_Annotations();
+
+	/**
+	 * Returns the meta object for class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IGuard <em>IGuard</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for class '<em>IGuard</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IGuard
+	 * @generated
+	 */
+	EClass getIGuard();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IGuard#getId <em>Id</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Id</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IGuard#getId()
+	 * @see #getIGuard()
+	 * @generated
+	 */
+	EAttribute getIGuard_Id();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IGuard#getBody <em>Body</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Body</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IGuard#getBody()
+	 * @see #getIGuard()
+	 * @generated
+	 */
+	EAttribute getIGuard_Body();
+
+	/**
+	 * Returns the meta object for the attribute list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IGuard#getModifiedTimeWeak <em>Modified Time Weak</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute list '<em>Modified Time Weak</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IGuard#getModifiedTimeWeak()
+	 * @see #getIGuard()
+	 * @generated
+	 */
+	EAttribute getIGuard_ModifiedTimeWeak();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IGuard#getObjectCreation <em>Object Creation</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Object Creation</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IGuard#getObjectCreation()
+	 * @see #getIGuard()
+	 * @generated
+	 */
+	EAttribute getIGuard_ObjectCreation();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IGuard#getUmlDependencyID <em>Uml Dependency ID</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Uml Dependency ID</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IGuard#getUmlDependencyID()
+	 * @see #getIGuard()
+	 * @generated
+	 */
+	EAttribute getIGuard_UmlDependencyID();
+
+	/**
+	 * Returns the meta object for class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IHandleWithData <em>IHandle With Data</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for class '<em>IHandle With Data</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IHandleWithData
+	 * @generated
+	 */
+	EClass getIHandleWithData();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IHandleWithData#getM2Class <em>M2 Class</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>M2 Class</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IHandleWithData#getM2Class()
+	 * @see #getIHandleWithData()
+	 * @generated
+	 */
+	EAttribute getIHandleWithData_M2Class();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IHandleWithData#getFilename <em>Filename</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Filename</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IHandleWithData#getFilename()
+	 * @see #getIHandleWithData()
+	 * @generated
+	 */
+	EAttribute getIHandleWithData_Filename();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IHandleWithData#getSubsystem <em>Subsystem</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Subsystem</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IHandleWithData#getSubsystem()
+	 * @see #getIHandleWithData()
+	 * @generated
+	 */
+	EAttribute getIHandleWithData_Subsystem();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IHandleWithData#getClass_ <em>Class</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Class</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IHandleWithData#getClass_()
+	 * @see #getIHandleWithData()
+	 * @generated
+	 */
+	EAttribute getIHandleWithData_Class();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IHandleWithData#getName <em>Name</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Name</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IHandleWithData#getName()
+	 * @see #getIHandleWithData()
+	 * @generated
+	 */
+	EAttribute getIHandleWithData_Name();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IHandleWithData#getId <em>Id</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Id</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IHandleWithData#getId()
+	 * @see #getIHandleWithData()
+	 * @generated
+	 */
+	EAttribute getIHandleWithData_Id();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IHandleWithData#getData <em>Data</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Data</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IHandleWithData#getData()
+	 * @see #getIHandleWithData()
+	 * @generated
+	 */
+	EAttribute getIHandleWithData_Data();
+
+	/**
+	 * Returns the meta object for class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IHistoryConnector <em>IHistory Connector</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for class '<em>IHistory Connector</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IHistoryConnector
+	 * @generated
+	 */
+	EClass getIHistoryConnector();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IHistoryConnector#getId <em>Id</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Id</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IHistoryConnector#getId()
+	 * @see #getIHistoryConnector()
+	 * @generated
+	 */
+	EAttribute getIHistoryConnector_Id();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IHistoryConnector#getName <em>Name</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Name</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IHistoryConnector#getName()
+	 * @see #getIHistoryConnector()
+	 * @generated
+	 */
+	EAttribute getIHistoryConnector_Name();
+
+	/**
+	 * Returns the meta object for the reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IHistoryConnector#getParent <em>Parent</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the reference '<em>Parent</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IHistoryConnector#getParent()
+	 * @see #getIHistoryConnector()
+	 * @generated
+	 */
+	EReference getIHistoryConnector_Parent();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IHistoryConnector#getConnectorType <em>Connector Type</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Connector Type</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IHistoryConnector#getConnectorType()
+	 * @see #getIHistoryConnector()
+	 * @generated
+	 */
+	EAttribute getIHistoryConnector_ConnectorType();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IHistoryConnector#getMyState <em>My State</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>My State</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IHistoryConnector#getMyState()
+	 * @see #getIHistoryConnector()
+	 * @generated
+	 */
+	EAttribute getIHistoryConnector_MyState();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IHistoryConnector#getModifiedTimeWeak <em>Modified Time Weak</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Modified Time Weak</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IHistoryConnector#getModifiedTimeWeak()
+	 * @see #getIHistoryConnector()
+	 * @generated
+	 */
+	EAttribute getIHistoryConnector_ModifiedTimeWeak();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IHistoryConnector#getObjectCreation <em>Object Creation</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Object Creation</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IHistoryConnector#getObjectCreation()
+	 * @see #getIHistoryConnector()
+	 * @generated
+	 */
+	EAttribute getIHistoryConnector_ObjectCreation();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IHistoryConnector#getUmlDependencyID <em>Uml Dependency ID</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Uml Dependency ID</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IHistoryConnector#getUmlDependencyID()
+	 * @see #getIHistoryConnector()
+	 * @generated
+	 */
+	EAttribute getIHistoryConnector_UmlDependencyID();
+
+	/**
+	 * Returns the meta object for class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IHyperLink <em>IHyper Link</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for class '<em>IHyper Link</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IHyperLink
+	 * @generated
+	 */
+	EClass getIHyperLink();
+
+	/**
+	 * Returns the meta object for class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IInformationFlow <em>IInformation Flow</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for class '<em>IInformation Flow</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IInformationFlow
+	 * @generated
+	 */
+	EClass getIInformationFlow();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IInformationFlow#getId <em>Id</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Id</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IInformationFlow#getId()
+	 * @see #getIInformationFlow()
+	 * @generated
+	 */
+	EAttribute getIInformationFlow_Id();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IInformationFlow#getMyState <em>My State</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>My State</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IInformationFlow#getMyState()
+	 * @see #getIInformationFlow()
+	 * @generated
+	 */
+	EAttribute getIInformationFlow_MyState();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IInformationFlow#getName <em>Name</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Name</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IInformationFlow#getName()
+	 * @see #getIInformationFlow()
+	 * @generated
+	 */
+	EAttribute getIInformationFlow_Name();
+
+	/**
+	 * Returns the meta object for the reference list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IInformationFlow#getConveyed <em>Conveyed</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the reference list '<em>Conveyed</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IInformationFlow#getConveyed()
+	 * @see #getIInformationFlow()
+	 * @generated
+	 */
+	EReference getIInformationFlow_Conveyed();
+
+	/**
+	 * Returns the meta object for the reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IInformationFlow#getEnd1_ <em>End1 </em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the reference '<em>End1 </em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IInformationFlow#getEnd1_()
+	 * @see #getIInformationFlow()
+	 * @generated
+	 */
+	EReference getIInformationFlow_End1_();
+
+	/**
+	 * Returns the meta object for the reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IInformationFlow#getEnd2_ <em>End2 </em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the reference '<em>End2 </em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IInformationFlow#getEnd2_()
+	 * @see #getIInformationFlow()
+	 * @generated
+	 */
+	EReference getIInformationFlow_End2_();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IInformationFlow#getDirection_ <em>Direction </em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Direction </em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IInformationFlow#getDirection_()
+	 * @see #getIInformationFlow()
+	 * @generated
+	 */
+	EAttribute getIInformationFlow_Direction_();
+
+	/**
+	 * Returns the meta object for the attribute list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IInformationFlow#getModifiedTimeWeak <em>Modified Time Weak</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute list '<em>Modified Time Weak</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IInformationFlow#getModifiedTimeWeak()
+	 * @see #getIInformationFlow()
+	 * @generated
+	 */
+	EAttribute getIInformationFlow_ModifiedTimeWeak();
+
+	/**
+	 * Returns the meta object for the containment reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IInformationFlow#getDescription <em>Description</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference '<em>Description</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IInformationFlow#getDescription()
+	 * @see #getIInformationFlow()
+	 * @generated
+	 */
+	EReference getIInformationFlow_Description();
+
+	/**
+	 * Returns the meta object for the reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IInformationFlow#getEnd1ObjectPort_ <em>End1 Object Port </em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the reference '<em>End1 Object Port </em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IInformationFlow#getEnd1ObjectPort_()
+	 * @see #getIInformationFlow()
+	 * @generated
+	 */
+	EReference getIInformationFlow_End1ObjectPort_();
+
+	/**
+	 * Returns the meta object for the reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IInformationFlow#getEnd2ObjectPort_ <em>End2 Object Port </em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the reference '<em>End2 Object Port </em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IInformationFlow#getEnd2ObjectPort_()
+	 * @see #getIInformationFlow()
+	 * @generated
+	 */
+	EReference getIInformationFlow_End2ObjectPort_();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IInformationFlow#getRequiremenTracabilityHandle <em>Requiremen Tracability Handle</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Requiremen Tracability Handle</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IInformationFlow#getRequiremenTracabilityHandle()
+	 * @see #getIInformationFlow()
+	 * @generated
+	 */
+	EAttribute getIInformationFlow_RequiremenTracabilityHandle();
+
+	/**
+	 * Returns the meta object for the containment reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IInformationFlow#getHyperLinks <em>Hyper Links</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference '<em>Hyper Links</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IInformationFlow#getHyperLinks()
+	 * @see #getIInformationFlow()
+	 * @generated
+	 */
+	EReference getIInformationFlow_HyperLinks();
+
+	/**
+	 * Returns the meta object for the containment reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IInformationFlow#getDependencies <em>Dependencies</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference '<em>Dependencies</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IInformationFlow#getDependencies()
+	 * @see #getIInformationFlow()
+	 * @generated
+	 */
+	EReference getIInformationFlow_Dependencies();
+
+	/**
+	 * Returns the meta object for the containment reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IInformationFlow#getAnnotations <em>Annotations</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference '<em>Annotations</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IInformationFlow#getAnnotations()
+	 * @see #getIInformationFlow()
+	 * @generated
+	 */
+	EReference getIInformationFlow_Annotations();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IInformationFlow#getObjectCreation <em>Object Creation</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Object Creation</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IInformationFlow#getObjectCreation()
+	 * @see #getIInformationFlow()
+	 * @generated
+	 */
+	EAttribute getIInformationFlow_ObjectCreation();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IInformationFlow#getUmlDependencyID <em>Uml Dependency ID</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Uml Dependency ID</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IInformationFlow#getUmlDependencyID()
+	 * @see #getIInformationFlow()
+	 * @generated
+	 */
+	EAttribute getIInformationFlow_UmlDependencyID();
+
+	/**
+	 * Returns the meta object for the reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IInformationFlow#getStereotypes <em>Stereotypes</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the reference '<em>Stereotypes</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IInformationFlow#getStereotypes()
+	 * @see #getIInformationFlow()
+	 * @generated
+	 */
+	EReference getIInformationFlow_Stereotypes();
+
+	/**
+	 * Returns the meta object for the containment reference list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IInformationFlow#getTags <em>Tags</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference list '<em>Tags</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IInformationFlow#getTags()
+	 * @see #getIInformationFlow()
+	 * @generated
+	 */
+	EReference getIInformationFlow_Tags();
+
+	/**
+	 * Returns the meta object for class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IInformationItem <em>IInformation Item</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for class '<em>IInformation Item</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IInformationItem
+	 * @generated
+	 */
+	EClass getIInformationItem();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IInformationItem#getId <em>Id</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Id</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IInformationItem#getId()
+	 * @see #getIInformationItem()
+	 * @generated
+	 */
+	EAttribute getIInformationItem_Id();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IInformationItem#getMyState <em>My State</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>My State</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IInformationItem#getMyState()
+	 * @see #getIInformationItem()
+	 * @generated
+	 */
+	EAttribute getIInformationItem_MyState();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IInformationItem#getName <em>Name</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Name</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IInformationItem#getName()
+	 * @see #getIInformationItem()
+	 * @generated
+	 */
+	EAttribute getIInformationItem_Name();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IInformationItem#getRequiremenTracabilityHandle <em>Requiremen Tracability Handle</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Requiremen Tracability Handle</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IInformationItem#getRequiremenTracabilityHandle()
+	 * @see #getIInformationItem()
+	 * @generated
+	 */
+	EAttribute getIInformationItem_RequiremenTracabilityHandle();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IInformationItem#getModifiedTimeWeak <em>Modified Time Weak</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Modified Time Weak</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IInformationItem#getModifiedTimeWeak()
+	 * @see #getIInformationItem()
+	 * @generated
+	 */
+	EAttribute getIInformationItem_ModifiedTimeWeak();
+
+	/**
+	 * Returns the meta object for the containment reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IInformationItem#getDescription <em>Description</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference '<em>Description</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IInformationItem#getDescription()
+	 * @see #getIInformationItem()
+	 * @generated
+	 */
+	EReference getIInformationItem_Description();
+
+	/**
+	 * Returns the meta object for the reference list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IInformationItem#getRepresented <em>Represented</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the reference list '<em>Represented</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IInformationItem#getRepresented()
+	 * @see #getIInformationItem()
+	 * @generated
+	 */
+	EReference getIInformationItem_Represented();
+
+	/**
+	 * Returns the meta object for the containment reference list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IInformationItem#getAnnotations <em>Annotations</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference list '<em>Annotations</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IInformationItem#getAnnotations()
+	 * @see #getIInformationItem()
+	 * @generated
+	 */
+	EReference getIInformationItem_Annotations();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IInformationItem#getObjectCreation <em>Object Creation</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Object Creation</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IInformationItem#getObjectCreation()
+	 * @see #getIInformationItem()
+	 * @generated
+	 */
+	EAttribute getIInformationItem_ObjectCreation();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IInformationItem#getUmlDependencyID <em>Uml Dependency ID</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Uml Dependency ID</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IInformationItem#getUmlDependencyID()
+	 * @see #getIInformationItem()
+	 * @generated
+	 */
+	EAttribute getIInformationItem_UmlDependencyID();
+
+	/**
+	 * Returns the meta object for class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IInstance <em>IInstance</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for class '<em>IInstance</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IInstance
+	 * @generated
+	 */
+	EClass getIInstance();
+
+	/**
+	 * Returns the meta object for the attribute list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IInstance#getModifiedTimeWeak <em>Modified Time Weak</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute list '<em>Modified Time Weak</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IInstance#getModifiedTimeWeak()
+	 * @see #getIInstance()
+	 * @generated
+	 */
+	EAttribute getIInstance_ModifiedTimeWeak();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IInstance#getId <em>Id</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Id</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IInstance#getId()
+	 * @see #getIInstance()
+	 * @generated
+	 */
+	EAttribute getIInstance_Id();
+
+	/**
+	 * Returns the meta object for the reference list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IInstance#getInverse <em>Inverse</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the reference list '<em>Inverse</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IInstance#getInverse()
+	 * @see #getIInstance()
+	 * @generated
+	 */
+	EReference getIInstance_Inverse();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IInstance#getMyState <em>My State</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>My State</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IInstance#getMyState()
+	 * @see #getIInstance()
+	 * @generated
+	 */
+	EAttribute getIInstance_MyState();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IInstance#getName <em>Name</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Name</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IInstance#getName()
+	 * @see #getIInstance()
+	 * @generated
+	 */
+	EAttribute getIInstance_Name();
+
+	/**
+	 * Returns the meta object for class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IInstanceSlot <em>IInstance Slot</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for class '<em>IInstance Slot</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IInstanceSlot
+	 * @generated
+	 */
+	EClass getIInstanceSlot();
+
+	/**
+	 * Returns the meta object for class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IInstanceSpecification <em>IInstance Specification</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for class '<em>IInstance Specification</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IInstanceSpecification
+	 * @generated
+	 */
+	EClass getIInstanceSpecification();
+
+	/**
+	 * Returns the meta object for class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IInstanceValue <em>IInstance Value</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for class '<em>IInstance Value</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IInstanceValue
+	 * @generated
+	 */
+	EClass getIInstanceValue();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IInstanceValue#getId <em>Id</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Id</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IInstanceValue#getId()
+	 * @see #getIInstanceValue()
+	 * @generated
+	 */
+	EAttribute getIInstanceValue_Id();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IInstanceValue#getModifiedTimeWeak <em>Modified Time Weak</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Modified Time Weak</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IInstanceValue#getModifiedTimeWeak()
+	 * @see #getIInstanceValue()
+	 * @generated
+	 */
+	EAttribute getIInstanceValue_ModifiedTimeWeak();
+
+	/**
+	 * Returns the meta object for the reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IInstanceValue#getValue <em>Value</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the reference '<em>Value</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IInstanceValue#getValue()
+	 * @see #getIInstanceValue()
+	 * @generated
+	 */
+	EReference getIInstanceValue_Value();
+
+	/**
+	 * Returns the meta object for class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IInteractionOccurrence <em>IInteraction Occurrence</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for class '<em>IInteraction Occurrence</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IInteractionOccurrence
+	 * @generated
+	 */
+	EClass getIInteractionOccurrence();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IInteractionOccurrence#getId <em>Id</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Id</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IInteractionOccurrence#getId()
+	 * @see #getIInteractionOccurrence()
+	 * @generated
+	 */
+	EAttribute getIInteractionOccurrence_Id();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IInteractionOccurrence#getName <em>Name</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Name</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IInteractionOccurrence#getName()
+	 * @see #getIInteractionOccurrence()
+	 * @generated
+	 */
+	EAttribute getIInteractionOccurrence_Name();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IInteractionOccurrence#getModifiedTimeWeak <em>Modified Time Weak</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Modified Time Weak</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IInteractionOccurrence#getModifiedTimeWeak()
+	 * @see #getIInteractionOccurrence()
+	 * @generated
+	 */
+	EAttribute getIInteractionOccurrence_ModifiedTimeWeak();
+
+	/**
+	 * Returns the meta object for the reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IInteractionOccurrence#getM_pRefSD <em>MpRef SD</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the reference '<em>MpRef SD</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IInteractionOccurrence#getM_pRefSD()
+	 * @see #getIInteractionOccurrence()
+	 * @generated
+	 */
+	EReference getIInteractionOccurrence_M_pRefSD();
+
+	/**
+	 * Returns the meta object for the reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IInteractionOccurrence#getStereotypes <em>Stereotypes</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the reference '<em>Stereotypes</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IInteractionOccurrence#getStereotypes()
+	 * @see #getIInteractionOccurrence()
+	 * @generated
+	 */
+	EReference getIInteractionOccurrence_Stereotypes();
+
+	/**
+	 * Returns the meta object for the containment reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IInteractionOccurrence#getTags <em>Tags</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference '<em>Tags</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IInteractionOccurrence#getTags()
+	 * @see #getIInteractionOccurrence()
+	 * @generated
+	 */
+	EReference getIInteractionOccurrence_Tags();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IInteractionOccurrence#getObjectCreation <em>Object Creation</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Object Creation</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IInteractionOccurrence#getObjectCreation()
+	 * @see #getIInteractionOccurrence()
+	 * @generated
+	 */
+	EAttribute getIInteractionOccurrence_ObjectCreation();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IInteractionOccurrence#getUmlDependencyID <em>Uml Dependency ID</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Uml Dependency ID</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IInteractionOccurrence#getUmlDependencyID()
+	 * @see #getIInteractionOccurrence()
+	 * @generated
+	 */
+	EAttribute getIInteractionOccurrence_UmlDependencyID();
+
+	/**
+	 * Returns the meta object for class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IInteractionOperand <em>IInteraction Operand</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for class '<em>IInteraction Operand</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IInteractionOperand
+	 * @generated
+	 */
+	EClass getIInteractionOperand();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IInteractionOperand#getMyState <em>My State</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>My State</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IInteractionOperand#getMyState()
+	 * @see #getIInteractionOperand()
+	 * @generated
+	 */
+	EAttribute getIInteractionOperand_MyState();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IInteractionOperand#getName <em>Name</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Name</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IInteractionOperand#getName()
+	 * @see #getIInteractionOperand()
+	 * @generated
+	 */
+	EAttribute getIInteractionOperand_Name();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IInteractionOperand#getInteractionConstraint <em>Interaction Constraint</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Interaction Constraint</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IInteractionOperand#getInteractionConstraint()
+	 * @see #getIInteractionOperand()
+	 * @generated
+	 */
+	EAttribute getIInteractionOperand_InteractionConstraint();
+
+	/**
+	 * Returns the meta object for class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IInteractionOperator <em>IInteraction Operator</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for class '<em>IInteraction Operator</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IInteractionOperator
+	 * @generated
+	 */
+	EClass getIInteractionOperator();
+
+	/**
+	 * Returns the meta object for class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IInterfaceItem <em>IInterface Item</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for class '<em>IInterface Item</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IInterfaceItem
+	 * @generated
+	 */
+	EClass getIInterfaceItem();
+
+	/**
+	 * Returns the meta object for class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IInterfaceItemTrigger <em>IInterface Item Trigger</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for class '<em>IInterface Item Trigger</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IInterfaceItemTrigger
+	 * @generated
+	 */
+	EClass getIInterfaceItemTrigger();
+
+	/**
+	 * Returns the meta object for the reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IInterfaceItemTrigger#getItsInterfaceItem <em>Its Interface Item</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the reference '<em>Its Interface Item</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IInterfaceItemTrigger#getItsInterfaceItem()
+	 * @see #getIInterfaceItemTrigger()
+	 * @generated
+	 */
+	EReference getIInterfaceItemTrigger_ItsInterfaceItem();
+
+	/**
+	 * Returns the meta object for the reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IInterfaceItemTrigger#getInheritsFromHandle <em>Inherits From Handle</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the reference '<em>Inherits From Handle</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IInterfaceItemTrigger#getInheritsFromHandle()
+	 * @see #getIInterfaceItemTrigger()
+	 * @generated
+	 */
+	EReference getIInterfaceItemTrigger_InheritsFromHandle();
+
+	/**
+	 * Returns the meta object for class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IInternalHyperlink <em>IInternal Hyperlink</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for class '<em>IInternal Hyperlink</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IInternalHyperlink
+	 * @generated
+	 */
+	EClass getIInternalHyperlink();
+
+	/**
+	 * Returns the meta object for the reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IInternalHyperlink#getTarget <em>Target</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the reference '<em>Target</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IInternalHyperlink#getTarget()
+	 * @see #getIInternalHyperlink()
+	 * @generated
+	 */
+	EReference getIInternalHyperlink_Target();
+
+	/**
+	 * Returns the meta object for class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ILabel <em>ILabel</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for class '<em>ILabel</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ILabel
+	 * @generated
+	 */
+	EClass getILabel();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ILabel#getId <em>Id</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Id</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ILabel#getId()
+	 * @see #getILabel()
+	 * @generated
+	 */
+	EAttribute getILabel_Id();
+
+	/**
+	 * Returns the meta object for the containment reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ILabel#getItsTrigger <em>Its Trigger</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference '<em>Its Trigger</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ILabel#getItsTrigger()
+	 * @see #getILabel()
+	 * @generated
+	 */
+	EReference getILabel_ItsTrigger();
+
+	/**
+	 * Returns the meta object for the containment reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ILabel#getItsAction <em>Its Action</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference '<em>Its Action</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ILabel#getItsAction()
+	 * @see #getILabel()
+	 * @generated
+	 */
+	EReference getILabel_ItsAction();
+
+	/**
+	 * Returns the meta object for the containment reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ILabel#getItsGuard <em>Its Guard</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference '<em>Its Guard</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ILabel#getItsGuard()
+	 * @see #getILabel()
+	 * @generated
+	 */
+	EReference getILabel_ItsGuard();
+
+	/**
+	 * Returns the meta object for the attribute list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ILabel#getModifiedTimeWeak <em>Modified Time Weak</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute list '<em>Modified Time Weak</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ILabel#getModifiedTimeWeak()
+	 * @see #getILabel()
+	 * @generated
+	 */
+	EAttribute getILabel_ModifiedTimeWeak();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ILabel#getMyState <em>My State</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>My State</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ILabel#getMyState()
+	 * @see #getILabel()
+	 * @generated
+	 */
+	EAttribute getILabel_MyState();
+
+	/**
+	 * Returns the meta object for the reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ILabel#getInheritsFromHandle <em>Inherits From Handle</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the reference '<em>Inherits From Handle</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ILabel#getInheritsFromHandle()
+	 * @see #getILabel()
+	 * @generated
+	 */
+	EReference getILabel_InheritsFromHandle();
+
+	/**
+	 * Returns the meta object for the attribute list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ILabel#getCodeUpdateCGTime <em>Code Update CG Time</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute list '<em>Code Update CG Time</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ILabel#getCodeUpdateCGTime()
+	 * @see #getILabel()
+	 * @generated
+	 */
+	EAttribute getILabel_CodeUpdateCGTime();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ILabel#getObjectCreation <em>Object Creation</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Object Creation</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ILabel#getObjectCreation()
+	 * @see #getILabel()
+	 * @generated
+	 */
+	EAttribute getILabel_ObjectCreation();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ILabel#getUmlDependencyID <em>Uml Dependency ID</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Uml Dependency ID</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ILabel#getUmlDependencyID()
+	 * @see #getILabel()
+	 * @generated
+	 */
+	EAttribute getILabel_UmlDependencyID();
+
+	/**
+	 * Returns the meta object for class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ILink <em>ILink</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for class '<em>ILink</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ILink
+	 * @generated
+	 */
+	EClass getILink();
+
+	/**
+	 * Returns the meta object for the reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ILink#getInverse <em>Inverse</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the reference '<em>Inverse</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ILink#getInverse()
+	 * @see #getILink()
+	 * @generated
+	 */
+	EReference getILink_Inverse();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ILink#getLinkName <em>Link Name</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Link Name</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ILink#getLinkName()
+	 * @see #getILink()
+	 * @generated
+	 */
+	EAttribute getILink_LinkName();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ILink#getLinkType <em>Link Type</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Link Type</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ILink#getLinkType()
+	 * @see #getILink()
+	 * @generated
+	 */
+	EAttribute getILink_LinkType();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ILink#getMyState <em>My State</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>My State</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ILink#getMyState()
+	 * @see #getILink()
+	 * @generated
+	 */
+	EAttribute getILink_MyState();
+
+	/**
+	 * Returns the meta object for class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ILinkInstance <em>ILink Instance</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for class '<em>ILink Instance</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ILinkInstance
+	 * @generated
+	 */
+	EClass getILinkInstance();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ILinkInstance#getId <em>Id</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Id</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ILinkInstance#getId()
+	 * @see #getILinkInstance()
+	 * @generated
+	 */
+	EAttribute getILinkInstance_Id();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ILinkInstance#getName <em>Name</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Name</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ILinkInstance#getName()
+	 * @see #getILinkInstance()
+	 * @generated
+	 */
+	EAttribute getILinkInstance_Name();
+
+	/**
+	 * Returns the meta object for the reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ILinkInstance#getToLink <em>To Link</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the reference '<em>To Link</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ILinkInstance#getToLink()
+	 * @see #getILinkInstance()
+	 * @generated
+	 */
+	EReference getILinkInstance_ToLink();
+
+	/**
+	 * Returns the meta object for the reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ILinkInstance#getFromLink <em>From Link</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the reference '<em>From Link</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ILinkInstance#getFromLink()
+	 * @see #getILinkInstance()
+	 * @generated
+	 */
+	EReference getILinkInstance_FromLink();
+
+	/**
+	 * Returns the meta object for the containment reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ILinkInstance#getInstantiates <em>Instantiates</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference '<em>Instantiates</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ILinkInstance#getInstantiates()
+	 * @see #getILinkInstance()
+	 * @generated
+	 */
+	EReference getILinkInstance_Instantiates();
+
+	/**
+	 * Returns the meta object for class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ILiteralSpecification <em>ILiteral Specification</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for class '<em>ILiteral Specification</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ILiteralSpecification
+	 * @generated
+	 */
+	EClass getILiteralSpecification();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ILiteralSpecification#getId <em>Id</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Id</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ILiteralSpecification#getId()
+	 * @see #getILiteralSpecification()
+	 * @generated
+	 */
+	EAttribute getILiteralSpecification_Id();
+
+	/**
+	 * Returns the meta object for the attribute list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ILiteralSpecification#getModifiedTimeWeak <em>Modified Time Weak</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute list '<em>Modified Time Weak</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ILiteralSpecification#getModifiedTimeWeak()
+	 * @see #getILiteralSpecification()
+	 * @generated
+	 */
+	EAttribute getILiteralSpecification_ModifiedTimeWeak();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ILiteralSpecification#getValue <em>Value</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Value</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ILiteralSpecification#getValue()
+	 * @see #getILiteralSpecification()
+	 * @generated
+	 */
+	EAttribute getILiteralSpecification_Value();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ILiteralSpecification#getMyState <em>My State</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>My State</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ILiteralSpecification#getMyState()
+	 * @see #getILiteralSpecification()
+	 * @generated
+	 */
+	EAttribute getILiteralSpecification_MyState();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ILiteralSpecification#getName <em>Name</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Name</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ILiteralSpecification#getName()
+	 * @see #getILiteralSpecification()
+	 * @generated
+	 */
+	EAttribute getILiteralSpecification_Name();
+
+	/**
+	 * Returns the meta object for the attribute list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ILiteralSpecification#getCodeUpdateCGTime <em>Code Update CG Time</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute list '<em>Code Update CG Time</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ILiteralSpecification#getCodeUpdateCGTime()
+	 * @see #getILiteralSpecification()
+	 * @generated
+	 */
+	EAttribute getILiteralSpecification_CodeUpdateCGTime();
+
+	/**
+	 * Returns the meta object for class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMHyperLink <em>IM Hyper Link</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for class '<em>IM Hyper Link</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMHyperLink
+	 * @generated
+	 */
+	EClass getIMHyperLink();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMHyperLink#getId <em>Id</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Id</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMHyperLink#getId()
+	 * @see #getIMHyperLink()
+	 * @generated
+	 */
+	EAttribute getIMHyperLink_Id();
+
+	/**
+	 * Returns the meta object for the containment reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMHyperLink#getProperties <em>Properties</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference '<em>Properties</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMHyperLink#getProperties()
+	 * @see #getIMHyperLink()
+	 * @generated
+	 */
+	EReference getIMHyperLink_Properties();
+
+	/**
+	 * Returns the meta object for the attribute list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMHyperLink#getModifiedTimeWeak <em>Modified Time Weak</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute list '<em>Modified Time Weak</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMHyperLink#getModifiedTimeWeak()
+	 * @see #getIMHyperLink()
+	 * @generated
+	 */
+	EAttribute getIMHyperLink_ModifiedTimeWeak();
+
+	/**
+	 * Returns the meta object for the reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMHyperLink#getDependsOn <em>Depends On</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the reference '<em>Depends On</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMHyperLink#getDependsOn()
+	 * @see #getIMHyperLink()
+	 * @generated
+	 */
+	EReference getIMHyperLink_DependsOn();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMHyperLink#getLinkDispName <em>Link Disp Name</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Link Disp Name</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMHyperLink#getLinkDispName()
+	 * @see #getIMHyperLink()
+	 * @generated
+	 */
+	EAttribute getIMHyperLink_LinkDispName();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMHyperLink#getLinkType <em>Link Type</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Link Type</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMHyperLink#getLinkType()
+	 * @see #getIMHyperLink()
+	 * @generated
+	 */
+	EAttribute getIMHyperLink_LinkType();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMHyperLink#getIsConfigurationFileHyperLink <em>Is Configuration File Hyper Link</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Is Configuration File Hyper Link</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMHyperLink#getIsConfigurationFileHyperLink()
+	 * @see #getIMHyperLink()
+	 * @generated
+	 */
+	EAttribute getIMHyperLink_IsConfigurationFileHyperLink();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMHyperLink#getLinkTarget <em>Link Target</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Link Target</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMHyperLink#getLinkTarget()
+	 * @see #getIMHyperLink()
+	 * @generated
+	 */
+	EAttribute getIMHyperLink_LinkTarget();
+
+	/**
+	 * Returns the meta object for the containment reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMHyperLink#getDescription <em>Description</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference '<em>Description</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMHyperLink#getDescription()
+	 * @see #getIMHyperLink()
+	 * @generated
+	 */
+	EReference getIMHyperLink_Description();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMHyperLink#getRequiremenTracabilityHandle <em>Requiremen Tracability Handle</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Requiremen Tracability Handle</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMHyperLink#getRequiremenTracabilityHandle()
+	 * @see #getIMHyperLink()
+	 * @generated
+	 */
+	EAttribute getIMHyperLink_RequiremenTracabilityHandle();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMHyperLink#getObjectCreation <em>Object Creation</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Object Creation</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMHyperLink#getObjectCreation()
+	 * @see #getIMHyperLink()
+	 * @generated
+	 */
+	EAttribute getIMHyperLink_ObjectCreation();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMHyperLink#getUmlDependencyID <em>Uml Dependency ID</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Uml Dependency ID</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMHyperLink#getUmlDependencyID()
+	 * @see #getIMHyperLink()
+	 * @generated
+	 */
+	EAttribute getIMHyperLink_UmlDependencyID();
+
+	/**
+	 * Returns the meta object for class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMSC <em>IMSC</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for class '<em>IMSC</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMSC
+	 * @generated
+	 */
+	EClass getIMSC();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMSC#getId <em>Id</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Id</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMSC#getId()
+	 * @see #getIMSC()
+	 * @generated
+	 */
+	EAttribute getIMSC_Id();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMSC#getMyState <em>My State</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>My State</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMSC#getMyState()
+	 * @see #getIMSC()
+	 * @generated
+	 */
+	EAttribute getIMSC_MyState();
+
+	/**
+	 * Returns the meta object for the containment reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMSC#getProperties <em>Properties</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference '<em>Properties</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMSC#getProperties()
+	 * @see #getIMSC()
+	 * @generated
+	 */
+	EReference getIMSC_Properties();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMSC#getName <em>Name</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Name</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMSC#getName()
+	 * @see #getIMSC()
+	 * @generated
+	 */
+	EAttribute getIMSC_Name();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMSC#getLastModifiedTime <em>Last Modified Time</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Last Modified Time</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMSC#getLastModifiedTime()
+	 * @see #getIMSC()
+	 * @generated
+	 */
+	EAttribute getIMSC_LastModifiedTime();
+
+	/**
+	 * Returns the meta object for the containment reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMSC#getGraphicChart <em>Graphic Chart</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference '<em>Graphic Chart</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMSC#getGraphicChart()
+	 * @see #getIMSC()
+	 * @generated
+	 */
+	EReference getIMSC_GraphicChart();
+
+	/**
+	 * Returns the meta object for the reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMSC#getDefaultSubsystem <em>Default Subsystem</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the reference '<em>Default Subsystem</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMSC#getDefaultSubsystem()
+	 * @see #getIMSC()
+	 * @generated
+	 */
+	EReference getIMSC_DefaultSubsystem();
+
+	/**
+	 * Returns the meta object for the containment reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMSC#getM_pICollaboration <em>MpI Collaboration</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference '<em>MpI Collaboration</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMSC#getM_pICollaboration()
+	 * @see #getIMSC()
+	 * @generated
+	 */
+	EReference getIMSC_M_pICollaboration();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMSC#getCmheader <em>Cmheader</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Cmheader</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMSC#getCmheader()
+	 * @see #getIMSC()
+	 * @generated
+	 */
+	EAttribute getIMSC_Cmheader();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMSC#getLastID <em>Last ID</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Last ID</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMSC#getLastID()
+	 * @see #getIMSC()
+	 * @generated
+	 */
+	EAttribute getIMSC_LastID();
+
+	/**
+	 * Returns the meta object for the reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMSC#getOwnerHandle <em>Owner Handle</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the reference '<em>Owner Handle</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMSC#getOwnerHandle()
+	 * @see #getIMSC()
+	 * @generated
+	 */
+	EReference getIMSC_OwnerHandle();
+
+	/**
+	 * Returns the meta object for the containment reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMSC#getDescription <em>Description</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference '<em>Description</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMSC#getDescription()
+	 * @see #getIMSC()
+	 * @generated
+	 */
+	EReference getIMSC_Description();
+
+	/**
+	 * Returns the meta object for the attribute list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMSC#getModifiedTimeWeak <em>Modified Time Weak</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute list '<em>Modified Time Weak</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMSC#getModifiedTimeWeak()
+	 * @see #getIMSC()
+	 * @generated
+	 */
+	EAttribute getIMSC_ModifiedTimeWeak();
+
+	/**
+	 * Returns the meta object for the reference list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMSC#getStereotypes <em>Stereotypes</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the reference list '<em>Stereotypes</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMSC#getStereotypes()
+	 * @see #getIMSC()
+	 * @generated
+	 */
+	EReference getIMSC_Stereotypes();
+
+	/**
+	 * Returns the meta object for the containment reference list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMSC#getTags <em>Tags</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference list '<em>Tags</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMSC#getTags()
+	 * @see #getIMSC()
+	 * @generated
+	 */
+	EReference getIMSC_Tags();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMSC#getRequiremenTracabilityHandle <em>Requiremen Tracability Handle</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Requiremen Tracability Handle</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMSC#getRequiremenTracabilityHandle()
+	 * @see #getIMSC()
+	 * @generated
+	 */
+	EAttribute getIMSC_RequiremenTracabilityHandle();
+
+	/**
+	 * Returns the meta object for the containment reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMSC#getAnnotations <em>Annotations</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference '<em>Annotations</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMSC#getAnnotations()
+	 * @see #getIMSC()
+	 * @generated
+	 */
+	EReference getIMSC_Annotations();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMSC#getObjectCreation <em>Object Creation</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Object Creation</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMSC#getObjectCreation()
+	 * @see #getIMSC()
+	 * @generated
+	 */
+	EAttribute getIMSC_ObjectCreation();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMSC#getUmlDependencyID <em>Uml Dependency ID</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Uml Dependency ID</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMSC#getUmlDependencyID()
+	 * @see #getIMSC()
+	 * @generated
+	 */
+	EAttribute getIMSC_UmlDependencyID();
+
+	/**
+	 * Returns the meta object for class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMatrixInstance <em>IMatrix Instance</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for class '<em>IMatrix Instance</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMatrixInstance
+	 * @generated
+	 */
+	EClass getIMatrixInstance();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMatrixInstance#getId <em>Id</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Id</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMatrixInstance#getId()
+	 * @see #getIMatrixInstance()
+	 * @generated
+	 */
+	EAttribute getIMatrixInstance_Id();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMatrixInstance#getMyState <em>My State</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>My State</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMatrixInstance#getMyState()
+	 * @see #getIMatrixInstance()
+	 * @generated
+	 */
+	EAttribute getIMatrixInstance_MyState();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMatrixInstance#getName <em>Name</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Name</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMatrixInstance#getName()
+	 * @see #getIMatrixInstance()
+	 * @generated
+	 */
+	EAttribute getIMatrixInstance_Name();
+
+	/**
+	 * Returns the meta object for the attribute list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMatrixInstance#getModifiedTimeWeak <em>Modified Time Weak</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute list '<em>Modified Time Weak</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMatrixInstance#getModifiedTimeWeak()
+	 * @see #getIMatrixInstance()
+	 * @generated
+	 */
+	EAttribute getIMatrixInstance_ModifiedTimeWeak();
+
+	/**
+	 * Returns the meta object for the reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMatrixInstance#getLayoutHandle <em>Layout Handle</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the reference '<em>Layout Handle</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMatrixInstance#getLayoutHandle()
+	 * @see #getIMatrixInstance()
+	 * @generated
+	 */
+	EReference getIMatrixInstance_LayoutHandle();
+
+	/**
+	 * Returns the meta object for the reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMatrixInstance#getFromScopeHandles <em>From Scope Handles</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the reference '<em>From Scope Handles</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMatrixInstance#getFromScopeHandles()
+	 * @see #getIMatrixInstance()
+	 * @generated
+	 */
+	EReference getIMatrixInstance_FromScopeHandles();
+
+	/**
+	 * Returns the meta object for the reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMatrixInstance#getToScopeHandles <em>To Scope Handles</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the reference '<em>To Scope Handles</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMatrixInstance#getToScopeHandles()
+	 * @see #getIMatrixInstance()
+	 * @generated
+	 */
+	EReference getIMatrixInstance_ToScopeHandles();
+
+	/**
+	 * Returns the meta object for the reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMatrixInstance#getStereotypes <em>Stereotypes</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the reference '<em>Stereotypes</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMatrixInstance#getStereotypes()
+	 * @see #getIMatrixInstance()
+	 * @generated
+	 */
+	EReference getIMatrixInstance_Stereotypes();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMatrixInstance#getM_IncludeDescendants_to <em>MInclude Descendants to</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>MInclude Descendants to</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMatrixInstance#getM_IncludeDescendants_to()
+	 * @see #getIMatrixInstance()
+	 * @generated
+	 */
+	EAttribute getIMatrixInstance_M_IncludeDescendants_to();
+
+	/**
+	 * Returns the meta object for the containment reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMatrixInstance#getProperties <em>Properties</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference '<em>Properties</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMatrixInstance#getProperties()
+	 * @see #getIMatrixInstance()
+	 * @generated
+	 */
+	EReference getIMatrixInstance_Properties();
+
+	/**
+	 * Returns the meta object for class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMatrixLayout <em>IMatrix Layout</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for class '<em>IMatrix Layout</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMatrixLayout
+	 * @generated
+	 */
+	EClass getIMatrixLayout();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMatrixLayout#getId <em>Id</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Id</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMatrixLayout#getId()
+	 * @see #getIMatrixLayout()
+	 * @generated
+	 */
+	EAttribute getIMatrixLayout_Id();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMatrixLayout#getMyState <em>My State</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>My State</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMatrixLayout#getMyState()
+	 * @see #getIMatrixLayout()
+	 * @generated
+	 */
+	EAttribute getIMatrixLayout_MyState();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMatrixLayout#getName <em>Name</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Name</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMatrixLayout#getName()
+	 * @see #getIMatrixLayout()
+	 * @generated
+	 */
+	EAttribute getIMatrixLayout_Name();
+
+	/**
+	 * Returns the meta object for the attribute list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMatrixLayout#getModifiedTimeWeak <em>Modified Time Weak</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute list '<em>Modified Time Weak</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMatrixLayout#getModifiedTimeWeak()
+	 * @see #getIMatrixLayout()
+	 * @generated
+	 */
+	EAttribute getIMatrixLayout_ModifiedTimeWeak();
+
+	/**
+	 * Returns the meta object for the containment reference list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMatrixLayout#getFromElementTypes <em>From Element Types</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference list '<em>From Element Types</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMatrixLayout#getFromElementTypes()
+	 * @see #getIMatrixLayout()
+	 * @generated
+	 */
+	EReference getIMatrixLayout_FromElementTypes();
+
+	/**
+	 * Returns the meta object for the containment reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMatrixLayout#getToElementTypes <em>To Element Types</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference '<em>To Element Types</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMatrixLayout#getToElementTypes()
+	 * @see #getIMatrixLayout()
+	 * @generated
+	 */
+	EReference getIMatrixLayout_ToElementTypes();
+
+	/**
+	 * Returns the meta object for the containment reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMatrixLayout#getCellElementTypes <em>Cell Element Types</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference '<em>Cell Element Types</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMatrixLayout#getCellElementTypes()
+	 * @see #getIMatrixLayout()
+	 * @generated
+	 */
+	EReference getIMatrixLayout_CellElementTypes();
+
+	/**
+	 * Returns the meta object for the containment reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMatrixLayout#getDescription <em>Description</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference '<em>Description</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMatrixLayout#getDescription()
+	 * @see #getIMatrixLayout()
+	 * @generated
+	 */
+	EReference getIMatrixLayout_Description();
+
+	/**
+	 * Returns the meta object for class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMatrixView <em>IMatrix View</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for class '<em>IMatrix View</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMatrixView
+	 * @generated
+	 */
+	EClass getIMatrixView();
+
+	/**
+	 * Returns the meta object for class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMessage <em>IMessage</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for class '<em>IMessage</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMessage
+	 * @generated
+	 */
+	EClass getIMessage();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMessage#getId <em>Id</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Id</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMessage#getId()
+	 * @see #getIMessage()
+	 * @generated
+	 */
+	EAttribute getIMessage_Id();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMessage#getMyState <em>My State</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>My State</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMessage#getMyState()
+	 * @see #getIMessage()
+	 * @generated
+	 */
+	EAttribute getIMessage_MyState();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMessage#getName <em>Name</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Name</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMessage#getName()
+	 * @see #getIMessage()
+	 * @generated
+	 */
+	EAttribute getIMessage_Name();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMessage#getM_szSequence <em>Msz Sequence</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Msz Sequence</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMessage#getM_szSequence()
+	 * @see #getIMessage()
+	 * @generated
+	 */
+	EAttribute getIMessage_M_szSequence();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMessage#getM_szActualArgs <em>Msz Actual Args</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Msz Actual Args</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMessage#getM_szActualArgs()
+	 * @see #getIMessage()
+	 * @generated
+	 */
+	EAttribute getIMessage_M_szActualArgs();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMessage#getM_szReturnVal <em>Msz Return Val</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Msz Return Val</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMessage#getM_szReturnVal()
+	 * @see #getIMessage()
+	 * @generated
+	 */
+	EAttribute getIMessage_M_szReturnVal();
+
+	/**
+	 * Returns the meta object for the reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMessage#getM_pReceiver <em>MpReceiver</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the reference '<em>MpReceiver</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMessage#getM_pReceiver()
+	 * @see #getIMessage()
+	 * @generated
+	 */
+	EReference getIMessage_M_pReceiver();
+
+	/**
+	 * Returns the meta object for the reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMessage#getM_pSender <em>MpSender</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the reference '<em>MpSender</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMessage#getM_pSender()
+	 * @see #getIMessage()
+	 * @generated
+	 */
+	EReference getIMessage_M_pSender();
+
+	/**
+	 * Returns the meta object for the reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMessage#getM_pFormalMessage <em>MpFormal Message</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the reference '<em>MpFormal Message</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMessage#getM_pFormalMessage()
+	 * @see #getIMessage()
+	 * @generated
+	 */
+	EReference getIMessage_M_pFormalMessage();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMessage#getM_eType <em>MeType</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>MeType</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMessage#getM_eType()
+	 * @see #getIMessage()
+	 * @generated
+	 */
+	EAttribute getIMessage_M_eType();
+
+	/**
+	 * Returns the meta object for the reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMessage#getM_pCommunicationConnection <em>MpCommunication Connection</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the reference '<em>MpCommunication Connection</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMessage#getM_pCommunicationConnection()
+	 * @see #getIMessage()
+	 * @generated
+	 */
+	EReference getIMessage_M_pCommunicationConnection();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMessage#getM_freeText <em>Mfree Text</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Mfree Text</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMessage#getM_freeText()
+	 * @see #getIMessage()
+	 * @generated
+	 */
+	EAttribute getIMessage_M_freeText();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMessage#getModifiedTimeWeak <em>Modified Time Weak</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Modified Time Weak</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMessage#getModifiedTimeWeak()
+	 * @see #getIMessage()
+	 * @generated
+	 */
+	EAttribute getIMessage_ModifiedTimeWeak();
+
+	/**
+	 * Returns the meta object for the reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMessage#getStereotypes <em>Stereotypes</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the reference '<em>Stereotypes</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMessage#getStereotypes()
+	 * @see #getIMessage()
+	 * @generated
+	 */
+	EReference getIMessage_Stereotypes();
+
+	/**
+	 * Returns the meta object for the containment reference list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMessage#getTags <em>Tags</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference list '<em>Tags</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMessage#getTags()
+	 * @see #getIMessage()
+	 * @generated
+	 */
+	EReference getIMessage_Tags();
+
+	/**
+	 * Returns the meta object for the containment reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMessage#getProperties <em>Properties</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference '<em>Properties</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMessage#getProperties()
+	 * @see #getIMessage()
+	 * @generated
+	 */
+	EReference getIMessage_Properties();
+
+	/**
+	 * Returns the meta object for the reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMessage#getM_targetExec <em>Mtarget Exec</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the reference '<em>Mtarget Exec</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMessage#getM_targetExec()
+	 * @see #getIMessage()
+	 * @generated
+	 */
+	EReference getIMessage_M_targetExec();
+
+	/**
+	 * Returns the meta object for the reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMessage#getM_srcExec <em>Msrc Exec</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the reference '<em>Msrc Exec</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMessage#getM_srcExec()
+	 * @see #getIMessage()
+	 * @generated
+	 */
+	EReference getIMessage_M_srcExec();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMessage#getObjectCreation <em>Object Creation</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Object Creation</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMessage#getObjectCreation()
+	 * @see #getIMessage()
+	 * @generated
+	 */
+	EAttribute getIMessage_ObjectCreation();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMessage#getUmlDependencyID <em>Uml Dependency ID</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Uml Dependency ID</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMessage#getUmlDependencyID()
+	 * @see #getIMessage()
+	 * @generated
+	 */
+	EAttribute getIMessage_UmlDependencyID();
+
+	/**
+	 * Returns the meta object for class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMessagePoint <em>IMessage Point</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for class '<em>IMessage Point</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMessagePoint
+	 * @generated
+	 */
+	EClass getIMessagePoint();
+
+	/**
+	 * Returns the meta object for class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMetaLinkHandle <em>IMeta Link Handle</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for class '<em>IMeta Link Handle</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMetaLinkHandle
+	 * @generated
+	 */
+	EClass getIMetaLinkHandle();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMetaLinkHandle#getM2Class <em>M2 Class</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>M2 Class</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMetaLinkHandle#getM2Class()
+	 * @see #getIMetaLinkHandle()
+	 * @generated
+	 */
+	EAttribute getIMetaLinkHandle_M2Class();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMetaLinkHandle#getFilename <em>Filename</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Filename</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMetaLinkHandle#getFilename()
+	 * @see #getIMetaLinkHandle()
+	 * @generated
+	 */
+	EAttribute getIMetaLinkHandle_Filename();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMetaLinkHandle#getSubsystem <em>Subsystem</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Subsystem</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMetaLinkHandle#getSubsystem()
+	 * @see #getIMetaLinkHandle()
+	 * @generated
+	 */
+	EAttribute getIMetaLinkHandle_Subsystem();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMetaLinkHandle#getClass_ <em>Class</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Class</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMetaLinkHandle#getClass_()
+	 * @see #getIMetaLinkHandle()
+	 * @generated
+	 */
+	EAttribute getIMetaLinkHandle_Class();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMetaLinkHandle#getName <em>Name</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Name</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMetaLinkHandle#getName()
+	 * @see #getIMetaLinkHandle()
+	 * @generated
+	 */
+	EAttribute getIMetaLinkHandle_Name();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMetaLinkHandle#getId <em>Id</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Id</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMetaLinkHandle#getId()
+	 * @see #getIMetaLinkHandle()
+	 * @generated
+	 */
+	EAttribute getIMetaLinkHandle_Id();
+
+	/**
+	 * Returns the meta object for class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IModelElement <em>IModel Element</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for class '<em>IModel Element</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IModelElement
+	 * @generated
+	 */
+	EClass getIModelElement();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IModelElement#getDisplayName <em>Display Name</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Display Name</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IModelElement#getDisplayName()
+	 * @see #getIModelElement()
+	 * @generated
+	 */
+	EAttribute getIModelElement_DisplayName();
+
+	/**
+	 * Returns the meta object for class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IModule <em>IModule</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for class '<em>IModule</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IModule
+	 * @generated
+	 */
+	EClass getIModule();
+
+	/**
+	 * Returns the meta object for the reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IModule#getStereotypes <em>Stereotypes</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the reference '<em>Stereotypes</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IModule#getStereotypes()
+	 * @see #getIModule()
+	 * @generated
+	 */
+	EReference getIModule_Stereotypes();
+
+	/**
+	 * Returns the meta object for the containment reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IModule#getDescription <em>Description</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference '<em>Description</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IModule#getDescription()
+	 * @see #getIModule()
+	 * @generated
+	 */
+	EReference getIModule_Description();
+
+	/**
+	 * Returns the meta object for the containment reference list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IModule#getHyperLinks <em>Hyper Links</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference list '<em>Hyper Links</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IModule#getHyperLinks()
+	 * @see #getIModule()
+	 * @generated
+	 */
+	EReference getIModule_HyperLinks();
+
+	/**
+	 * Returns the meta object for the reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IModule#getOtherClass <em>Other Class</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the reference '<em>Other Class</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IModule#getOtherClass()
+	 * @see #getIModule()
+	 * @generated
+	 */
+	EReference getIModule_OtherClass();
+
+	/**
+	 * Returns the meta object for the containment reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IModule#getImplicitClass <em>Implicit Class</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference '<em>Implicit Class</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IModule#getImplicitClass()
+	 * @see #getIModule()
+	 * @generated
+	 */
+	EReference getIModule_ImplicitClass();
+
+	/**
+	 * Returns the meta object for the containment reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IModule#getProperties <em>Properties</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference '<em>Properties</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IModule#getProperties()
+	 * @see #getIModule()
+	 * @generated
+	 */
+	EReference getIModule_Properties();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IModule#getRequiremenTracabilityHandle <em>Requiremen Tracability Handle</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Requiremen Tracability Handle</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IModule#getRequiremenTracabilityHandle()
+	 * @see #getIModule()
+	 * @generated
+	 */
+	EAttribute getIModule_RequiremenTracabilityHandle();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IModule#getPartKind <em>Part Kind</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Part Kind</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IModule#getPartKind()
+	 * @see #getIModule()
+	 * @generated
+	 */
+	EAttribute getIModule_PartKind();
+
+	/**
+	 * Returns the meta object for class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMultiplicityItem <em>IMultiplicity Item</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for class '<em>IMultiplicity Item</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMultiplicityItem
+	 * @generated
+	 */
+	EClass getIMultiplicityItem();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMultiplicityItem#getName <em>Name</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Name</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMultiplicityItem#getName()
+	 * @see #getIMultiplicityItem()
+	 * @generated
+	 */
+	EAttribute getIMultiplicityItem_Name();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMultiplicityItem#getCount <em>Count</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Count</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMultiplicityItem#getCount()
+	 * @see #getIMultiplicityItem()
+	 * @generated
+	 */
+	EAttribute getIMultiplicityItem_Count();
+
+	/**
+	 * Returns the meta object for class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.INode <em>INode</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for class '<em>INode</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.INode
+	 * @generated
+	 */
+	EClass getINode();
+
+	/**
+	 * Returns the meta object for class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IObjectLink <em>IObject Link</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for class '<em>IObject Link</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IObjectLink
+	 * @generated
+	 */
+	EClass getIObjectLink();
+
+	/**
+	 * Returns the meta object for the reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IObjectLink#getStereotypes <em>Stereotypes</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the reference '<em>Stereotypes</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IObjectLink#getStereotypes()
+	 * @see #getIObjectLink()
+	 * @generated
+	 */
+	EReference getIObjectLink_Stereotypes();
+
+	/**
+	 * Returns the meta object for the containment reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IObjectLink#getTags <em>Tags</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference '<em>Tags</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IObjectLink#getTags()
+	 * @see #getIObjectLink()
+	 * @generated
+	 */
+	EReference getIObjectLink_Tags();
+
+	/**
+	 * Returns the meta object for the reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IObjectLink#getToLink <em>To Link</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the reference '<em>To Link</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IObjectLink#getToLink()
+	 * @see #getIObjectLink()
+	 * @generated
+	 */
+	EReference getIObjectLink_ToLink();
+
+	/**
+	 * Returns the meta object for the reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IObjectLink#getFromLink <em>From Link</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the reference '<em>From Link</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IObjectLink#getFromLink()
+	 * @see #getIObjectLink()
+	 * @generated
+	 */
+	EReference getIObjectLink_FromLink();
+
+	/**
+	 * Returns the meta object for the containment reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IObjectLink#getInstantiates <em>Instantiates</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference '<em>Instantiates</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IObjectLink#getInstantiates()
+	 * @see #getIObjectLink()
+	 * @generated
+	 */
+	EReference getIObjectLink_Instantiates();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IObjectLink#getEnd1Multiplicity <em>End1 Multiplicity</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>End1 Multiplicity</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IObjectLink#getEnd1Multiplicity()
+	 * @see #getIObjectLink()
+	 * @generated
+	 */
+	EAttribute getIObjectLink_End1Multiplicity();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IObjectLink#getEnd2Multiplicity <em>End2 Multiplicity</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>End2 Multiplicity</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IObjectLink#getEnd2Multiplicity()
+	 * @see #getIObjectLink()
+	 * @generated
+	 */
+	EAttribute getIObjectLink_End2Multiplicity();
+
+	/**
+	 * Returns the meta object for the reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IObjectLink#getToPort <em>To Port</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the reference '<em>To Port</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IObjectLink#getToPort()
+	 * @see #getIObjectLink()
+	 * @generated
+	 */
+	EReference getIObjectLink_ToPort();
+
+	/**
+	 * Returns the meta object for the reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IObjectLink#getFromPort <em>From Port</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the reference '<em>From Port</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IObjectLink#getFromPort()
+	 * @see #getIObjectLink()
+	 * @generated
+	 */
+	EReference getIObjectLink_FromPort();
+
+	/**
+	 * Returns the meta object for the containment reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IObjectLink#getDescription <em>Description</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference '<em>Description</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IObjectLink#getDescription()
+	 * @see #getIObjectLink()
+	 * @generated
+	 */
+	EReference getIObjectLink_Description();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IObjectLink#getRequiremenTracabilityHandle <em>Requiremen Tracability Handle</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Requiremen Tracability Handle</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IObjectLink#getRequiremenTracabilityHandle()
+	 * @see #getIObjectLink()
+	 * @generated
+	 */
+	EAttribute getIObjectLink_RequiremenTracabilityHandle();
+
+	/**
+	 * Returns the meta object for the attribute list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IObjectLink#getCodeUpdateCGTime <em>Code Update CG Time</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute list '<em>Code Update CG Time</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IObjectLink#getCodeUpdateCGTime()
+	 * @see #getIObjectLink()
+	 * @generated
+	 */
+	EAttribute getIObjectLink_CodeUpdateCGTime();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IObjectLink#getObjectCreation <em>Object Creation</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Object Creation</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IObjectLink#getObjectCreation()
+	 * @see #getIObjectLink()
+	 * @generated
+	 */
+	EAttribute getIObjectLink_ObjectCreation();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IObjectLink#getUmlDependencyID <em>Uml Dependency ID</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Uml Dependency ID</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IObjectLink#getUmlDependencyID()
+	 * @see #getIObjectLink()
+	 * @generated
+	 */
+	EAttribute getIObjectLink_UmlDependencyID();
+
+	/**
+	 * Returns the meta object for class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IObjectLinkHandle <em>IObject Link Handle</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for class '<em>IObject Link Handle</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IObjectLinkHandle
+	 * @generated
+	 */
+	EClass getIObjectLinkHandle();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IObjectLinkHandle#getM2Class <em>M2 Class</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>M2 Class</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IObjectLinkHandle#getM2Class()
+	 * @see #getIObjectLinkHandle()
+	 * @generated
+	 */
+	EAttribute getIObjectLinkHandle_M2Class();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IObjectLinkHandle#getFilename <em>Filename</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Filename</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IObjectLinkHandle#getFilename()
+	 * @see #getIObjectLinkHandle()
+	 * @generated
+	 */
+	EAttribute getIObjectLinkHandle_Filename();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IObjectLinkHandle#getSubsystem <em>Subsystem</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Subsystem</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IObjectLinkHandle#getSubsystem()
+	 * @see #getIObjectLinkHandle()
+	 * @generated
+	 */
+	EAttribute getIObjectLinkHandle_Subsystem();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IObjectLinkHandle#getClass_ <em>Class</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Class</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IObjectLinkHandle#getClass_()
+	 * @see #getIObjectLinkHandle()
+	 * @generated
+	 */
+	EAttribute getIObjectLinkHandle_Class();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IObjectLinkHandle#getName <em>Name</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Name</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IObjectLinkHandle#getName()
+	 * @see #getIObjectLinkHandle()
+	 * @generated
+	 */
+	EAttribute getIObjectLinkHandle_Name();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IObjectLinkHandle#getId <em>Id</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Id</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IObjectLinkHandle#getId()
+	 * @see #getIObjectLinkHandle()
+	 * @generated
+	 */
+	EAttribute getIObjectLinkHandle_Id();
+
+	/**
+	 * Returns the meta object for class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IObjectModelDiagram <em>IObject Model Diagram</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for class '<em>IObject Model Diagram</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IObjectModelDiagram
+	 * @generated
+	 */
+	EClass getIObjectModelDiagram();
+
+	/**
+	 * Returns the meta object for class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IObjectNode <em>IObject Node</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for class '<em>IObject Node</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IObjectNode
+	 * @generated
+	 */
+	EClass getIObjectNode();
+
+	/**
+	 * Returns the meta object for the reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IObjectNode#getRepresents <em>Represents</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the reference '<em>Represents</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IObjectNode#getRepresents()
+	 * @see #getIObjectNode()
+	 * @generated
+	 */
+	EReference getIObjectNode_Represents();
+
+	/**
+	 * Returns the meta object for the reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IObjectNode#getTheInState <em>The In State</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the reference '<em>The In State</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IObjectNode#getTheInState()
+	 * @see #getIObjectNode()
+	 * @generated
+	 */
+	EReference getIObjectNode_TheInState();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IObjectNode#getInState <em>In State</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>In State</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IObjectNode#getInState()
+	 * @see #getIObjectNode()
+	 * @generated
+	 */
+	EAttribute getIObjectNode_InState();
+
+	/**
+	 * Returns the meta object for class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IOperation <em>IOperation</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for class '<em>IOperation</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IOperation
+	 * @generated
+	 */
+	EClass getIOperation();
+
+	/**
+	 * Returns the meta object for class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IPackage <em>IPackage</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for class '<em>IPackage</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IPackage
+	 * @generated
+	 */
+	EClass getIPackage();
+
+	/**
+	 * Returns the meta object for the attribute list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IPackage#getModifiedTimeWeak <em>Modified Time Weak</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute list '<em>Modified Time Weak</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IPackage#getModifiedTimeWeak()
+	 * @see #getIPackage()
+	 * @generated
+	 */
+	EAttribute getIPackage_ModifiedTimeWeak();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IPackage#getId <em>Id</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Id</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IPackage#getId()
+	 * @see #getIPackage()
+	 * @generated
+	 */
+	EAttribute getIPackage_Id();
+
+	/**
+	 * Returns the meta object for the containment reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IPackage#getDescription <em>Description</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference '<em>Description</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IPackage#getDescription()
+	 * @see #getIPackage()
+	 * @generated
+	 */
+	EReference getIPackage_Description();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IPackage#getUmlDependencyID <em>Uml Dependency ID</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Uml Dependency ID</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IPackage#getUmlDependencyID()
+	 * @see #getIPackage()
+	 * @generated
+	 */
+	EAttribute getIPackage_UmlDependencyID();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IPackage#getLastID <em>Last ID</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Last ID</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IPackage#getLastID()
+	 * @see #getIPackage()
+	 * @generated
+	 */
+	EAttribute getIPackage_LastID();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IPackage#getMyState <em>My State</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>My State</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IPackage#getMyState()
+	 * @see #getIPackage()
+	 * @generated
+	 */
+	EAttribute getIPackage_MyState();
+
+	/**
+	 * Returns the meta object for the containment reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IPackage#getAnnotations <em>Annotations</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference '<em>Annotations</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IPackage#getAnnotations()
+	 * @see #getIPackage()
+	 * @generated
+	 */
+	EReference getIPackage_Annotations();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IPackage#getObjectCreation <em>Object Creation</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Object Creation</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IPackage#getObjectCreation()
+	 * @see #getIPackage()
+	 * @generated
+	 */
+	EAttribute getIPackage_ObjectCreation();
+
+	/**
+	 * Returns the meta object for the reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IPackage#getStereotypes <em>Stereotypes</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the reference '<em>Stereotypes</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IPackage#getStereotypes()
+	 * @see #getIPackage()
+	 * @generated
+	 */
+	EReference getIPackage_Stereotypes();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IPackage#getName <em>Name</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Name</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IPackage#getName()
+	 * @see #getIPackage()
+	 * @generated
+	 */
+	EAttribute getIPackage_Name();
+
+	/**
+	 * Returns the meta object for the containment reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IPackage#getProperties <em>Properties</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference '<em>Properties</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IPackage#getProperties()
+	 * @see #getIPackage()
+	 * @generated
+	 */
+	EReference getIPackage_Properties();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IPackage#getCmheader <em>Cmheader</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Cmheader</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IPackage#getCmheader()
+	 * @see #getIPackage()
+	 * @generated
+	 */
+	EAttribute getIPackage_Cmheader();
+
+	/**
+	 * Returns the meta object for class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IPanelDiagram <em>IPanel Diagram</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for class '<em>IPanel Diagram</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IPanelDiagram
+	 * @generated
+	 */
+	EClass getIPanelDiagram();
+
+	/**
+	 * Returns the meta object for class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IPart <em>IPart</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for class '<em>IPart</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IPart
+	 * @generated
+	 */
+	EClass getIPart();
+
+	/**
+	 * Returns the meta object for the reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IPart#getStereotypes <em>Stereotypes</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the reference '<em>Stereotypes</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IPart#getStereotypes()
+	 * @see #getIPart()
+	 * @generated
+	 */
+	EReference getIPart_Stereotypes();
+
+	/**
+	 * Returns the meta object for the reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IPart#getOtherClass <em>Other Class</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the reference '<em>Other Class</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IPart#getOtherClass()
+	 * @see #getIPart()
+	 * @generated
+	 */
+	EReference getIPart_OtherClass();
+
+	/**
+	 * Returns the meta object for the reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IPart#getInverse <em>Inverse</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the reference '<em>Inverse</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IPart#getInverse()
+	 * @see #getIPart()
+	 * @generated
+	 */
+	EReference getIPart_Inverse();
+
+	/**
+	 * Returns the meta object for the containment reference list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IPart#getDependencies <em>Dependencies</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference list '<em>Dependencies</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IPart#getDependencies()
+	 * @see #getIPart()
+	 * @generated
+	 */
+	EReference getIPart_Dependencies();
+
+	/**
+	 * Returns the meta object for the containment reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IPart#getTags <em>Tags</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference '<em>Tags</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IPart#getTags()
+	 * @see #getIPart()
+	 * @generated
+	 */
+	EReference getIPart_Tags();
+
+	/**
+	 * Returns the meta object for the containment reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IPart#getInitialCallAction <em>Initial Call Action</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference '<em>Initial Call Action</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IPart#getInitialCallAction()
+	 * @see #getIPart()
+	 * @generated
+	 */
+	EReference getIPart_InitialCallAction();
+
+	/**
+	 * Returns the meta object for the attribute list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IPart#getCodeUpdateCGTime <em>Code Update CG Time</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute list '<em>Code Update CG Time</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IPart#getCodeUpdateCGTime()
+	 * @see #getIPart()
+	 * @generated
+	 */
+	EAttribute getIPart_CodeUpdateCGTime();
+
+	/**
+	 * Returns the meta object for the reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IPart#getTheMainDiagram <em>The Main Diagram</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the reference '<em>The Main Diagram</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IPart#getTheMainDiagram()
+	 * @see #getIPart()
+	 * @generated
+	 */
+	EReference getIPart_TheMainDiagram();
+
+	/**
+	 * Returns the meta object for the containment reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IPart#getSlots <em>Slots</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference '<em>Slots</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IPart#getSlots()
+	 * @see #getIPart()
+	 * @generated
+	 */
+	EReference getIPart_Slots();
+
+	/**
+	 * Returns the meta object for the containment reference list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IPart#getHyperLinks <em>Hyper Links</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference list '<em>Hyper Links</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IPart#getHyperLinks()
+	 * @see #getIPart()
+	 * @generated
+	 */
+	EReference getIPart_HyperLinks();
+
+	/**
+	 * Returns the meta object for class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IPin <em>IPin</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for class '<em>IPin</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IPin
+	 * @generated
+	 */
+	EClass getIPin();
+
+	/**
+	 * Returns the meta object for the reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IPin#getM_type <em>Mtype</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the reference '<em>Mtype</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IPin#getM_type()
+	 * @see #getIPin()
+	 * @generated
+	 */
+	EReference getIPin_M_type();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IPin#getM_isParameterPin <em>Mis Parameter Pin</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Mis Parameter Pin</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IPin#getM_isParameterPin()
+	 * @see #getIPin()
+	 * @generated
+	 */
+	EAttribute getIPin_M_isParameterPin();
+
+	/**
+	 * Returns the meta object for the reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IPin#getM_corePin <em>Mcore Pin</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the reference '<em>Mcore Pin</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IPin#getM_corePin()
+	 * @see #getIPin()
+	 * @generated
+	 */
+	EReference getIPin_M_corePin();
+
+	/**
+	 * Returns the meta object for class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IPort <em>IPort</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for class '<em>IPort</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IPort
+	 * @generated
+	 */
+	EClass getIPort();
+
+	/**
+	 * Returns the meta object for the reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IPort#getOtherClass <em>Other Class</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the reference '<em>Other Class</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IPort#getOtherClass()
+	 * @see #getIPort()
+	 * @generated
+	 */
+	EReference getIPort_OtherClass();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IPort#getBehavioral <em>Behavioral</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Behavioral</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IPort#getBehavioral()
+	 * @see #getIPort()
+	 * @generated
+	 */
+	EAttribute getIPort_Behavioral();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IPort#getReversed <em>Reversed</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Reversed</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IPort#getReversed()
+	 * @see #getIPort()
+	 * @generated
+	 */
+	EAttribute getIPort_Reversed();
+
+	/**
+	 * Returns the meta object for the reference list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IPort#getStereotypes <em>Stereotypes</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the reference list '<em>Stereotypes</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IPort#getStereotypes()
+	 * @see #getIPort()
+	 * @generated
+	 */
+	EReference getIPort_Stereotypes();
+
+	/**
+	 * Returns the meta object for the containment reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IPort#getTags <em>Tags</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference '<em>Tags</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IPort#getTags()
+	 * @see #getIPort()
+	 * @generated
+	 */
+	EReference getIPort_Tags();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IPort#getObjectCreation <em>Object Creation</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Object Creation</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IPort#getObjectCreation()
+	 * @see #getIPort()
+	 * @generated
+	 */
+	EAttribute getIPort_ObjectCreation();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IPort#getUmlDependencyID <em>Uml Dependency ID</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Uml Dependency ID</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IPort#getUmlDependencyID()
+	 * @see #getIPort()
+	 * @generated
+	 */
+	EAttribute getIPort_UmlDependencyID();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IPort#getLastID <em>Last ID</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Last ID</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IPort#getLastID()
+	 * @see #getIPort()
+	 * @generated
+	 */
+	EAttribute getIPort_LastID();
+
+	/**
+	 * Returns the meta object for the containment reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IPort#getDependencies <em>Dependencies</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference '<em>Dependencies</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IPort#getDependencies()
+	 * @see #getIPort()
+	 * @generated
+	 */
+	EReference getIPort_Dependencies();
+
+	/**
+	 * Returns the meta object for the containment reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IPort#getAnnotations <em>Annotations</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference '<em>Annotations</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IPort#getAnnotations()
+	 * @see #getIPort()
+	 * @generated
+	 */
+	EReference getIPort_Annotations();
+
+	/**
+	 * Returns the meta object for class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IPrimitiveOperation <em>IPrimitive Operation</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for class '<em>IPrimitive Operation</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IPrimitiveOperation
+	 * @generated
+	 */
+	EClass getIPrimitiveOperation();
+
+	/**
+	 * Returns the meta object for the containment reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IPrimitiveOperation#getProperties <em>Properties</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference '<em>Properties</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IPrimitiveOperation#getProperties()
+	 * @see #getIPrimitiveOperation()
+	 * @generated
+	 */
+	EReference getIPrimitiveOperation_Properties();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IPrimitiveOperation#getLastID <em>Last ID</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Last ID</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IPrimitiveOperation#getLastID()
+	 * @see #getIPrimitiveOperation()
+	 * @generated
+	 */
+	EAttribute getIPrimitiveOperation_LastID();
+
+	/**
+	 * Returns the meta object for the containment reference list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IPrimitiveOperation#getArgs <em>Args</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference list '<em>Args</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IPrimitiveOperation#getArgs()
+	 * @see #getIPrimitiveOperation()
+	 * @generated
+	 */
+	EReference getIPrimitiveOperation_Args();
+
+	/**
+	 * Returns the meta object for the reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IPrimitiveOperation#getReturnType <em>Return Type</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the reference '<em>Return Type</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IPrimitiveOperation#getReturnType()
+	 * @see #getIPrimitiveOperation()
+	 * @generated
+	 */
+	EReference getIPrimitiveOperation_ReturnType();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IPrimitiveOperation#getAbstract <em>Abstract</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Abstract</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IPrimitiveOperation#getAbstract()
+	 * @see #getIPrimitiveOperation()
+	 * @generated
+	 */
+	EAttribute getIPrimitiveOperation_Abstract();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IPrimitiveOperation#getFinal <em>Final</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Final</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IPrimitiveOperation#getFinal()
+	 * @see #getIPrimitiveOperation()
+	 * @generated
+	 */
+	EAttribute getIPrimitiveOperation_Final();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IPrimitiveOperation#getConcurrency <em>Concurrency</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Concurrency</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IPrimitiveOperation#getConcurrency()
+	 * @see #getIPrimitiveOperation()
+	 * @generated
+	 */
+	EAttribute getIPrimitiveOperation_Concurrency();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IPrimitiveOperation#getProtection <em>Protection</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Protection</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IPrimitiveOperation#getProtection()
+	 * @see #getIPrimitiveOperation()
+	 * @generated
+	 */
+	EAttribute getIPrimitiveOperation_Protection();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IPrimitiveOperation#getStatic <em>Static</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Static</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IPrimitiveOperation#getStatic()
+	 * @see #getIPrimitiveOperation()
+	 * @generated
+	 */
+	EAttribute getIPrimitiveOperation_Static();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IPrimitiveOperation#getConstant <em>Constant</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Constant</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IPrimitiveOperation#getConstant()
+	 * @see #getIPrimitiveOperation()
+	 * @generated
+	 */
+	EAttribute getIPrimitiveOperation_Constant();
+
+	/**
+	 * Returns the meta object for the containment reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IPrimitiveOperation#getItsBody <em>Its Body</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference '<em>Its Body</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IPrimitiveOperation#getItsBody()
+	 * @see #getIPrimitiveOperation()
+	 * @generated
+	 */
+	EReference getIPrimitiveOperation_ItsBody();
+
+	/**
+	 * Returns the meta object for the containment reference list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IPrimitiveOperation#getTags <em>Tags</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference list '<em>Tags</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IPrimitiveOperation#getTags()
+	 * @see #getIPrimitiveOperation()
+	 * @generated
+	 */
+	EReference getIPrimitiveOperation_Tags();
+
+	/**
+	 * Returns the meta object for the containment reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IPrimitiveOperation#getAnnotations <em>Annotations</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference '<em>Annotations</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IPrimitiveOperation#getAnnotations()
+	 * @see #getIPrimitiveOperation()
+	 * @generated
+	 */
+	EReference getIPrimitiveOperation_Annotations();
+
+	/**
+	 * Returns the meta object for the containment reference list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IPrimitiveOperation#getDependencies <em>Dependencies</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference list '<em>Dependencies</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IPrimitiveOperation#getDependencies()
+	 * @see #getIPrimitiveOperation()
+	 * @generated
+	 */
+	EReference getIPrimitiveOperation_Dependencies();
+
+	/**
+	 * Returns the meta object for the reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IPrimitiveOperation#getStereotypes <em>Stereotypes</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the reference '<em>Stereotypes</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IPrimitiveOperation#getStereotypes()
+	 * @see #getIPrimitiveOperation()
+	 * @generated
+	 */
+	EReference getIPrimitiveOperation_Stereotypes();
+
+	/**
+	 * Returns the meta object for the containment reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IPrimitiveOperation#getMyReturnType <em>My Return Type</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference '<em>My Return Type</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IPrimitiveOperation#getMyReturnType()
+	 * @see #getIPrimitiveOperation()
+	 * @generated
+	 */
+	EReference getIPrimitiveOperation_MyReturnType();
+
+	/**
+	 * Returns the meta object for the containment reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IPrimitiveOperation#getDescription <em>Description</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference '<em>Description</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IPrimitiveOperation#getDescription()
+	 * @see #getIPrimitiveOperation()
+	 * @generated
+	 */
+	EReference getIPrimitiveOperation_Description();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IPrimitiveOperation#getRequiremenTracabilityHandle <em>Requiremen Tracability Handle</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Requiremen Tracability Handle</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IPrimitiveOperation#getRequiremenTracabilityHandle()
+	 * @see #getIPrimitiveOperation()
+	 * @generated
+	 */
+	EAttribute getIPrimitiveOperation_RequiremenTracabilityHandle();
+
+	/**
+	 * Returns the meta object for the containment reference list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IPrimitiveOperation#getDeclaratives <em>Declaratives</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference list '<em>Declaratives</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IPrimitiveOperation#getDeclaratives()
+	 * @see #getIPrimitiveOperation()
+	 * @generated
+	 */
+	EReference getIPrimitiveOperation_Declaratives();
+
+	/**
+	 * Returns the meta object for the containment reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IPrimitiveOperation#getItsActivityGraph <em>Its Activity Graph</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference '<em>Its Activity Graph</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IPrimitiveOperation#getItsActivityGraph()
+	 * @see #getIPrimitiveOperation()
+	 * @generated
+	 */
+	EReference getIPrimitiveOperation_ItsActivityGraph();
+
+	/**
+	 * Returns the meta object for the containment reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IPrimitiveOperation#getEmbededFiles <em>Embeded Files</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference '<em>Embeded Files</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IPrimitiveOperation#getEmbededFiles()
+	 * @see #getIPrimitiveOperation()
+	 * @generated
+	 */
+	EReference getIPrimitiveOperation_EmbededFiles();
+
+	/**
+	 * Returns the meta object for the attribute list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IPrimitiveOperation#getCodeUpdateCGTime <em>Code Update CG Time</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute list '<em>Code Update CG Time</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IPrimitiveOperation#getCodeUpdateCGTime()
+	 * @see #getIPrimitiveOperation()
+	 * @generated
+	 */
+	EAttribute getIPrimitiveOperation_CodeUpdateCGTime();
+
+	/**
+	 * Returns the meta object for the containment reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IPrimitiveOperation#getTemplateParameters <em>Template Parameters</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference '<em>Template Parameters</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IPrimitiveOperation#getTemplateParameters()
+	 * @see #getIPrimitiveOperation()
+	 * @generated
+	 */
+	EReference getIPrimitiveOperation_TemplateParameters();
+
+	/**
+	 * Returns the meta object for class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IProfile <em>IProfile</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for class '<em>IProfile</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IProfile
+	 * @generated
+	 */
+	EClass getIProfile();
+
+	/**
+	 * Returns the meta object for the containment reference list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IProfile#getDeclaratives <em>Declaratives</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference list '<em>Declaratives</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IProfile#getDeclaratives()
+	 * @see #getIProfile()
+	 * @generated
+	 */
+	EReference getIProfile_Declaratives();
+
+	/**
+	 * Returns the meta object for the reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IProfile#getDefaultComposite <em>Default Composite</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the reference '<em>Default Composite</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IProfile#getDefaultComposite()
+	 * @see #getIProfile()
+	 * @generated
+	 */
+	EReference getIProfile_DefaultComposite();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IProfile#getEventsBaseID <em>Events Base ID</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Events Base ID</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IProfile#getEventsBaseID()
+	 * @see #getIProfile()
+	 * @generated
+	 */
+	EAttribute getIProfile_EventsBaseID();
+
+	/**
+	 * Returns the meta object for the containment reference list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IProfile#getClasses <em>Classes</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference list '<em>Classes</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IProfile#getClasses()
+	 * @see #getIProfile()
+	 * @generated
+	 */
+	EReference getIProfile_Classes();
+
+	/**
+	 * Returns the meta object for the attribute list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IProfile#getConfigurationRelatedTime <em>Configuration Related Time</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute list '<em>Configuration Related Time</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IProfile#getConfigurationRelatedTime()
+	 * @see #getIProfile()
+	 * @generated
+	 */
+	EAttribute getIProfile_ConfigurationRelatedTime();
+
+	/**
+	 * Returns the meta object for the containment reference list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IProfile#getTags <em>Tags</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference list '<em>Tags</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IProfile#getTags()
+	 * @see #getIProfile()
+	 * @generated
+	 */
+	EReference getIProfile_Tags();
+
+	/**
+	 * Returns the meta object for the containment reference list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IProfile#getTypes <em>Types</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference list '<em>Types</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IProfile#getTypes()
+	 * @see #getIProfile()
+	 * @generated
+	 */
+	EReference getIProfile_Types();
+
+	/**
+	 * Returns the meta object for the containment reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IProfile#getMatrixLayouts <em>Matrix Layouts</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference '<em>Matrix Layouts</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IProfile#getMatrixLayouts()
+	 * @see #getIProfile()
+	 * @generated
+	 */
+	EReference getIProfile_MatrixLayouts();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IProfile#getLicense <em>License</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>License</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IProfile#getLicense()
+	 * @see #getIProfile()
+	 * @generated
+	 */
+	EAttribute getIProfile_License();
+
+	/**
+	 * Returns the meta object for class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IProject <em>IProject</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for class '<em>IProject</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IProject
+	 * @generated
+	 */
+	EClass getIProject();
+
+	/**
+	 * Returns the meta object for the attribute list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IProject#getUserColors <em>User Colors</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute list '<em>User Colors</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IProject#getUserColors()
+	 * @see #getIProject()
+	 * @generated
+	 */
+	EAttribute getIProject_UserColors();
+
+	/**
+	 * Returns the meta object for the reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IProject#getDefaultSubsystem <em>Default Subsystem</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the reference '<em>Default Subsystem</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IProject#getDefaultSubsystem()
+	 * @see #getIProject()
+	 * @generated
+	 */
+	EReference getIProject_DefaultSubsystem();
+
+	/**
+	 * Returns the meta object for the reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IProject#getComponent <em>Component</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the reference '<em>Component</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IProject#getComponent()
+	 * @see #getIProject()
+	 * @generated
+	 */
+	EReference getIProject_Component();
+
+	/**
+	 * Returns the meta object for the containment reference list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IProject#getMultiplicities <em>Multiplicities</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference list '<em>Multiplicities</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IProject#getMultiplicities()
+	 * @see #getIProject()
+	 * @generated
+	 */
+	EReference getIProject_Multiplicities();
+
+	/**
+	 * Returns the meta object for the containment reference list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IProject#getSubsystems <em>Subsystems</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference list '<em>Subsystems</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IProject#getSubsystems()
+	 * @see #getIProject()
+	 * @generated
+	 */
+	EReference getIProject_Subsystems();
+
+	/**
+	 * Returns the meta object for the containment reference list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IProject#getDiagrams <em>Diagrams</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference list '<em>Diagrams</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IProject#getDiagrams()
+	 * @see #getIProject()
+	 * @generated
+	 */
+	EReference getIProject_Diagrams();
+
+	/**
+	 * Returns the meta object for the containment reference list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IProject#getComponents <em>Components</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference list '<em>Components</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IProject#getComponents()
+	 * @see #getIProject()
+	 * @generated
+	 */
+	EReference getIProject_Components();
+
+	/**
+	 * Returns the meta object for the containment reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IProject#getPanelDiagrams <em>Panel Diagrams</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference '<em>Panel Diagrams</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IProject#getPanelDiagrams()
+	 * @see #getIProject()
+	 * @generated
+	 */
+	EReference getIProject_PanelDiagrams();
+
+	/**
+	 * Returns the meta object for the containment reference list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IProject#getHyperLinks <em>Hyper Links</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference list '<em>Hyper Links</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IProject#getHyperLinks()
+	 * @see #getIProject()
+	 * @generated
+	 */
+	EReference getIProject_HyperLinks();
+
+	/**
+	 * Returns the meta object for the containment reference list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IProject#getMSCS <em>MSCS</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference list '<em>MSCS</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IProject#getMSCS()
+	 * @see #getIProject()
+	 * @generated
+	 */
+	EReference getIProject_MSCS();
+
+	/**
+	 * Returns the meta object for the containment reference list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IProject#getUCDiagrams <em>UC Diagrams</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference list '<em>UC Diagrams</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IProject#getUCDiagrams()
+	 * @see #getIProject()
+	 * @generated
+	 */
+	EReference getIProject_UCDiagrams();
+
+	/**
+	 * Returns the meta object for the containment reference list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IProject#getCollaborationDiagrams <em>Collaboration Diagrams</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference list '<em>Collaboration Diagrams</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IProject#getCollaborationDiagrams()
+	 * @see #getIProject()
+	 * @generated
+	 */
+	EReference getIProject_CollaborationDiagrams();
+
+	/**
+	 * Returns the meta object for the containment reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IProject#getDeclaratives <em>Declaratives</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference '<em>Declaratives</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IProject#getDeclaratives()
+	 * @see #getIProject()
+	 * @generated
+	 */
+	EReference getIProject_Declaratives();
+
+	/**
+	 * Returns the meta object for the containment reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IProject#getComponentDiagrams <em>Component Diagrams</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference '<em>Component Diagrams</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IProject#getComponentDiagrams()
+	 * @see #getIProject()
+	 * @generated
+	 */
+	EReference getIProject_ComponentDiagrams();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IProject#getUnitSccProjName <em>Unit Scc Proj Name</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Unit Scc Proj Name</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IProject#getUnitSccProjName()
+	 * @see #getIProject()
+	 * @generated
+	 */
+	EAttribute getIProject_UnitSccProjName();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IProject#getUnitSccProjPath <em>Unit Scc Proj Path</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Unit Scc Proj Path</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IProject#getUnitSccProjPath()
+	 * @see #getIProject()
+	 * @generated
+	 */
+	EAttribute getIProject_UnitSccProjPath();
+
+	/**
+	 * Returns the meta object for the containment reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IProject#getDependencies <em>Dependencies</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference '<em>Dependencies</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IProject#getDependencies()
+	 * @see #getIProject()
+	 * @generated
+	 */
+	EReference getIProject_Dependencies();
+
+	/**
+	 * Returns the meta object for the attribute list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IProject#getCodeUpdateCGTime <em>Code Update CG Time</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute list '<em>Code Update CG Time</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IProject#getCodeUpdateCGTime()
+	 * @see #getIProject()
+	 * @generated
+	 */
+	EAttribute getIProject_CodeUpdateCGTime();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IProject#getVersion <em>Version</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Version</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IProject#getVersion()
+	 * @see #getIProject()
+	 * @generated
+	 */
+	EAttribute getIProject_Version();
+
+	/**
+	 * Returns the meta object for class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IProperty <em>IProperty</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for class '<em>IProperty</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IProperty
+	 * @generated
+	 */
+	EClass getIProperty();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IProperty#getName <em>Name</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Name</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IProperty#getName()
+	 * @see #getIProperty()
+	 * @generated
+	 */
+	EAttribute getIProperty_Name();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IProperty#getValue <em>Value</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Value</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IProperty#getValue()
+	 * @see #getIProperty()
+	 * @generated
+	 */
+	EAttribute getIProperty_Value();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IProperty#getType <em>Type</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Type</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IProperty#getType()
+	 * @see #getIProperty()
+	 * @generated
+	 */
+	EAttribute getIProperty_Type();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IProperty#getExtraTypeInfo <em>Extra Type Info</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Extra Type Info</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IProperty#getExtraTypeInfo()
+	 * @see #getIProperty()
+	 * @generated
+	 */
+	EAttribute getIProperty_ExtraTypeInfo();
+
+	/**
+	 * Returns the meta object for class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IPropertyContainer <em>IProperty Container</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for class '<em>IProperty Container</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IPropertyContainer
+	 * @generated
+	 */
+	EClass getIPropertyContainer();
+
+	/**
+	 * Returns the meta object for the containment reference list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IPropertyContainer#getSubjects <em>Subjects</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference list '<em>Subjects</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IPropertyContainer#getSubjects()
+	 * @see #getIPropertyContainer()
+	 * @generated
+	 */
+	EReference getIPropertyContainer_Subjects();
+
+	/**
+	 * Returns the meta object for class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IPropertyMetaclass <em>IProperty Metaclass</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for class '<em>IProperty Metaclass</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IPropertyMetaclass
+	 * @generated
+	 */
+	EClass getIPropertyMetaclass();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IPropertyMetaclass#getName <em>Name</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Name</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IPropertyMetaclass#getName()
+	 * @see #getIPropertyMetaclass()
+	 * @generated
+	 */
+	EAttribute getIPropertyMetaclass_Name();
+
+	/**
+	 * Returns the meta object for the containment reference list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IPropertyMetaclass#getProperties <em>Properties</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference list '<em>Properties</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IPropertyMetaclass#getProperties()
+	 * @see #getIPropertyMetaclass()
+	 * @generated
+	 */
+	EReference getIPropertyMetaclass_Properties();
+
+	/**
+	 * Returns the meta object for class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IPropertySubject <em>IProperty Subject</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for class '<em>IProperty Subject</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IPropertySubject
+	 * @generated
+	 */
+	EClass getIPropertySubject();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IPropertySubject#getName <em>Name</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Name</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IPropertySubject#getName()
+	 * @see #getIPropertySubject()
+	 * @generated
+	 */
+	EAttribute getIPropertySubject_Name();
+
+	/**
+	 * Returns the meta object for the containment reference list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IPropertySubject#getMetaclasses <em>Metaclasses</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference list '<em>Metaclasses</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IPropertySubject#getMetaclasses()
+	 * @see #getIPropertySubject()
+	 * @generated
+	 */
+	EReference getIPropertySubject_Metaclasses();
+
+	/**
+	 * Returns the meta object for class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IReception <em>IReception</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for class '<em>IReception</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IReception
+	 * @generated
+	 */
+	EClass getIReception();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IReception#getId <em>Id</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Id</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IReception#getId()
+	 * @see #getIReception()
+	 * @generated
+	 */
+	EAttribute getIReception_Id();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IReception#getMyState <em>My State</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>My State</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IReception#getMyState()
+	 * @see #getIReception()
+	 * @generated
+	 */
+	EAttribute getIReception_MyState();
+
+	/**
+	 * Returns the meta object for the reference list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IReception#getArgs <em>Args</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the reference list '<em>Args</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IReception#getArgs()
+	 * @see #getIReception()
+	 * @generated
+	 */
+	EReference getIReception_Args();
+
+	/**
+	 * Returns the meta object for the reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IReception#getEvent <em>Event</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the reference '<em>Event</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IReception#getEvent()
+	 * @see #getIReception()
+	 * @generated
+	 */
+	EReference getIReception_Event();
+
+	/**
+	 * Returns the meta object for the attribute list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IReception#getModifiedTimeWeak <em>Modified Time Weak</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute list '<em>Modified Time Weak</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IReception#getModifiedTimeWeak()
+	 * @see #getIReception()
+	 * @generated
+	 */
+	EAttribute getIReception_ModifiedTimeWeak();
+
+	/**
+	 * Returns the meta object for the containment reference list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IReception#getDependencies <em>Dependencies</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference list '<em>Dependencies</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IReception#getDependencies()
+	 * @see #getIReception()
+	 * @generated
+	 */
+	EReference getIReception_Dependencies();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IReception#getLastID <em>Last ID</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Last ID</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IReception#getLastID()
+	 * @see #getIReception()
+	 * @generated
+	 */
+	EAttribute getIReception_LastID();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IReception#getRequiremenTracabilityHandle <em>Requiremen Tracability Handle</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Requiremen Tracability Handle</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IReception#getRequiremenTracabilityHandle()
+	 * @see #getIReception()
+	 * @generated
+	 */
+	EAttribute getIReception_RequiremenTracabilityHandle();
+
+	/**
+	 * Returns the meta object for the containment reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IReception#getDescription <em>Description</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference '<em>Description</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IReception#getDescription()
+	 * @see #getIReception()
+	 * @generated
+	 */
+	EReference getIReception_Description();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IReception#getObjectCreation <em>Object Creation</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Object Creation</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IReception#getObjectCreation()
+	 * @see #getIReception()
+	 * @generated
+	 */
+	EAttribute getIReception_ObjectCreation();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IReception#getUmlDependencyID <em>Uml Dependency ID</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Uml Dependency ID</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IReception#getUmlDependencyID()
+	 * @see #getIReception()
+	 * @generated
+	 */
+	EAttribute getIReception_UmlDependencyID();
+
+	/**
+	 * Returns the meta object for class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IReferenceActivity <em>IReference Activity</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for class '<em>IReference Activity</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IReferenceActivity
+	 * @generated
+	 */
+	EClass getIReferenceActivity();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IReferenceActivity#getId <em>Id</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Id</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IReferenceActivity#getId()
+	 * @see #getIReferenceActivity()
+	 * @generated
+	 */
+	EAttribute getIReferenceActivity_Id();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IReferenceActivity#getName <em>Name</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Name</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IReferenceActivity#getName()
+	 * @see #getIReferenceActivity()
+	 * @generated
+	 */
+	EAttribute getIReferenceActivity_Name();
+
+	/**
+	 * Returns the meta object for the reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IReferenceActivity#getStereotypes <em>Stereotypes</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the reference '<em>Stereotypes</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IReferenceActivity#getStereotypes()
+	 * @see #getIReferenceActivity()
+	 * @generated
+	 */
+	EReference getIReferenceActivity_Stereotypes();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IReferenceActivity#getModifiedTimeWeak <em>Modified Time Weak</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Modified Time Weak</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IReferenceActivity#getModifiedTimeWeak()
+	 * @see #getIReferenceActivity()
+	 * @generated
+	 */
+	EAttribute getIReferenceActivity_ModifiedTimeWeak();
+
+	/**
+	 * Returns the meta object for the reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IReferenceActivity#getParent <em>Parent</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the reference '<em>Parent</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IReferenceActivity#getParent()
+	 * @see #getIReferenceActivity()
+	 * @generated
+	 */
+	EReference getIReferenceActivity_Parent();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IReferenceActivity#getStateType <em>State Type</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>State Type</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IReferenceActivity#getStateType()
+	 * @see #getIReferenceActivity()
+	 * @generated
+	 */
+	EAttribute getIReferenceActivity_StateType();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IReferenceActivity#getDefaultTrans <em>Default Trans</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Default Trans</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IReferenceActivity#getDefaultTrans()
+	 * @see #getIReferenceActivity()
+	 * @generated
+	 */
+	EAttribute getIReferenceActivity_DefaultTrans();
+
+	/**
+	 * Returns the meta object for the reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IReferenceActivity#getSwimlane <em>Swimlane</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the reference '<em>Swimlane</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IReferenceActivity#getSwimlane()
+	 * @see #getIReferenceActivity()
+	 * @generated
+	 */
+	EReference getIReferenceActivity_Swimlane();
+
+	/**
+	 * Returns the meta object for the reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IReferenceActivity#getReferencedActivity <em>Referenced Activity</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the reference '<em>Referenced Activity</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IReferenceActivity#getReferencedActivity()
+	 * @see #getIReferenceActivity()
+	 * @generated
+	 */
+	EReference getIReferenceActivity_ReferencedActivity();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IReferenceActivity#getMyState <em>My State</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>My State</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IReferenceActivity#getMyState()
+	 * @see #getIReferenceActivity()
+	 * @generated
+	 */
+	EAttribute getIReferenceActivity_MyState();
+
+	/**
+	 * Returns the meta object for class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IRelation <em>IRelation</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for class '<em>IRelation</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IRelation
+	 * @generated
+	 */
+	EClass getIRelation();
+
+	/**
+	 * Returns the meta object for class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IRequirement <em>IRequirement</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for class '<em>IRequirement</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IRequirement
+	 * @generated
+	 */
+	EClass getIRequirement();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IRequirement#getId <em>Id</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Id</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IRequirement#getId()
+	 * @see #getIRequirement()
+	 * @generated
+	 */
+	EAttribute getIRequirement_Id();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IRequirement#getName <em>Name</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Name</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IRequirement#getName()
+	 * @see #getIRequirement()
+	 * @generated
+	 */
+	EAttribute getIRequirement_Name();
+
+	/**
+	 * Returns the meta object for the containment reference list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IRequirement#getAnnotations <em>Annotations</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference list '<em>Annotations</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IRequirement#getAnnotations()
+	 * @see #getIRequirement()
+	 * @generated
+	 */
+	EReference getIRequirement_Annotations();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IRequirement#getMyState <em>My State</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>My State</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IRequirement#getMyState()
+	 * @see #getIRequirement()
+	 * @generated
+	 */
+	EAttribute getIRequirement_MyState();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IRequirement#getLastID <em>Last ID</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Last ID</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IRequirement#getLastID()
+	 * @see #getIRequirement()
+	 * @generated
+	 */
+	EAttribute getIRequirement_LastID();
+
+	/**
+	 * Returns the meta object for the reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IRequirement#getStereotypes <em>Stereotypes</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the reference '<em>Stereotypes</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IRequirement#getStereotypes()
+	 * @see #getIRequirement()
+	 * @generated
+	 */
+	EReference getIRequirement_Stereotypes();
+
+	/**
+	 * Returns the meta object for the attribute list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IRequirement#getModifiedTimeWeak <em>Modified Time Weak</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute list '<em>Modified Time Weak</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IRequirement#getModifiedTimeWeak()
+	 * @see #getIRequirement()
+	 * @generated
+	 */
+	EAttribute getIRequirement_ModifiedTimeWeak();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IRequirement#getReqID <em>Req ID</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Req ID</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IRequirement#getReqID()
+	 * @see #getIRequirement()
+	 * @generated
+	 */
+	EAttribute getIRequirement_ReqID();
+
+	/**
+	 * Returns the meta object for the containment reference list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IRequirement#getDependencies <em>Dependencies</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference list '<em>Dependencies</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IRequirement#getDependencies()
+	 * @see #getIRequirement()
+	 * @generated
+	 */
+	EReference getIRequirement_Dependencies();
+
+	/**
+	 * Returns the meta object for the containment reference list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IRequirement#getAnchors <em>Anchors</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference list '<em>Anchors</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IRequirement#getAnchors()
+	 * @see #getIRequirement()
+	 * @generated
+	 */
+	EReference getIRequirement_Anchors();
+
+	/**
+	 * Returns the meta object for the containment reference list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IRequirement#getHyperLinks <em>Hyper Links</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference list '<em>Hyper Links</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IRequirement#getHyperLinks()
+	 * @see #getIRequirement()
+	 * @generated
+	 */
+	EReference getIRequirement_HyperLinks();
+
+	/**
+	 * Returns the meta object for the reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IRequirement#getTheMainDiagram <em>The Main Diagram</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the reference '<em>The Main Diagram</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IRequirement#getTheMainDiagram()
+	 * @see #getIRequirement()
+	 * @generated
+	 */
+	EReference getIRequirement_TheMainDiagram();
+
+	/**
+	 * Returns the meta object for class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ISendAction <em>ISend Action</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for class '<em>ISend Action</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ISendAction
+	 * @generated
+	 */
+	EClass getISendAction();
+
+	/**
+	 * Returns the meta object for the reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ISendAction#getM_hTarget <em>MhTarget</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the reference '<em>MhTarget</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ISendAction#getM_hTarget()
+	 * @see #getISendAction()
+	 * @generated
+	 */
+	EReference getISendAction_M_hTarget();
+
+	/**
+	 * Returns the meta object for the containment reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ISendAction#getM_hEvent <em>MhEvent</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference '<em>MhEvent</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ISendAction#getM_hEvent()
+	 * @see #getISendAction()
+	 * @generated
+	 */
+	EReference getISendAction_M_hEvent();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ISendAction#getArgValCount <em>Arg Val Count</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Arg Val Count</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ISendAction#getArgValCount()
+	 * @see #getISendAction()
+	 * @generated
+	 */
+	EAttribute getISendAction_ArgValCount();
+
+	/**
+	 * Returns the meta object for the containment reference list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ISendAction#getGraphElements <em>Graph Elements</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference list '<em>Graph Elements</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ISendAction#getGraphElements()
+	 * @see #getISendAction()
+	 * @generated
+	 */
+	EReference getISendAction_GraphElements();
+
+	/**
+	 * Returns the meta object for class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ISequenceDiagram <em>ISequence Diagram</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for class '<em>ISequence Diagram</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ISequenceDiagram
+	 * @generated
+	 */
+	EClass getISequenceDiagram();
+
+	/**
+	 * Returns the meta object for class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ISlot <em>ISlot</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for class '<em>ISlot</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ISlot
+	 * @generated
+	 */
+	EClass getISlot();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ISlot#getId <em>Id</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Id</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ISlot#getId()
+	 * @see #getISlot()
+	 * @generated
+	 */
+	EAttribute getISlot_Id();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ISlot#getName <em>Name</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Name</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ISlot#getName()
+	 * @see #getISlot()
+	 * @generated
+	 */
+	EAttribute getISlot_Name();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ISlot#getValue <em>Value</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Value</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ISlot#getValue()
+	 * @see #getISlot()
+	 * @generated
+	 */
+	EAttribute getISlot_Value();
+
+	/**
+	 * Returns the meta object for the reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ISlot#getDefiningVar <em>Defining Var</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the reference '<em>Defining Var</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ISlot#getDefiningVar()
+	 * @see #getISlot()
+	 * @generated
+	 */
+	EReference getISlot_DefiningVar();
+
+	/**
+	 * Returns the meta object for class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IState <em>IState</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for class '<em>IState</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IState
+	 * @generated
+	 */
+	EClass getIState();
+
+	/**
+	 * Returns the meta object for the reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IState#getParent <em>Parent</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the reference '<em>Parent</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IState#getParent()
+	 * @see #getIState()
+	 * @generated
+	 */
+	EReference getIState_Parent();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IState#getStateType <em>State Type</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>State Type</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IState#getStateType()
+	 * @see #getIState()
+	 * @generated
+	 */
+	EAttribute getIState_StateType();
+
+	/**
+	 * Returns the meta object for the reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IState#getDefaultTrans <em>Default Trans</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the reference '<em>Default Trans</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IState#getDefaultTrans()
+	 * @see #getIState()
+	 * @generated
+	 */
+	EReference getIState_DefaultTrans();
+
+	/**
+	 * Returns the meta object for the containment reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IState#getEntryAction <em>Entry Action</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference '<em>Entry Action</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IState#getEntryAction()
+	 * @see #getIState()
+	 * @generated
+	 */
+	EReference getIState_EntryAction();
+
+	/**
+	 * Returns the meta object for the reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IState#getInheritsFromHandle <em>Inherits From Handle</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the reference '<em>Inherits From Handle</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IState#getInheritsFromHandle()
+	 * @see #getIState()
+	 * @generated
+	 */
+	EReference getIState_InheritsFromHandle();
+
+	/**
+	 * Returns the meta object for the containment reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IState#getExitAction <em>Exit Action</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference '<em>Exit Action</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IState#getExitAction()
+	 * @see #getIState()
+	 * @generated
+	 */
+	EReference getIState_ExitAction();
+
+	/**
+	 * Returns the meta object for the containment reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IState#getNestedStateChart <em>Nested State Chart</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference '<em>Nested State Chart</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IState#getNestedStateChart()
+	 * @see #getIState()
+	 * @generated
+	 */
+	EReference getIState_NestedStateChart();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IState#getRequiremenTracabilityHandle <em>Requiremen Tracability Handle</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Requiremen Tracability Handle</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IState#getRequiremenTracabilityHandle()
+	 * @see #getIState()
+	 * @generated
+	 */
+	EAttribute getIState_RequiremenTracabilityHandle();
+
+	/**
+	 * Returns the meta object for the containment reference list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IState#getAnnotations <em>Annotations</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference list '<em>Annotations</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IState#getAnnotations()
+	 * @see #getIState()
+	 * @generated
+	 */
+	EReference getIState_Annotations();
+
+	/**
+	 * Returns the meta object for the containment reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IState#getDependencies <em>Dependencies</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference '<em>Dependencies</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IState#getDependencies()
+	 * @see #getIState()
+	 * @generated
+	 */
+	EReference getIState_Dependencies();
+
+	/**
+	 * Returns the meta object for the reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IState#getTheMainDiagram <em>The Main Diagram</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the reference '<em>The Main Diagram</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IState#getTheMainDiagram()
+	 * @see #getIState()
+	 * @generated
+	 */
+	EReference getIState_TheMainDiagram();
+
+	/**
+	 * Returns the meta object for the reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IState#getSwimlane <em>Swimlane</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the reference '<em>Swimlane</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IState#getSwimlane()
+	 * @see #getIState()
+	 * @generated
+	 */
+	EReference getIState_Swimlane();
+
+	/**
+	 * Returns the meta object for the attribute list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IState#getCodeUpdateCGTime <em>Code Update CG Time</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute list '<em>Code Update CG Time</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IState#getCodeUpdateCGTime()
+	 * @see #getIState()
+	 * @generated
+	 */
+	EAttribute getIState_CodeUpdateCGTime();
+
+	/**
+	 * Returns the meta object for class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IStateChart <em>IState Chart</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for class '<em>IState Chart</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IStateChart
+	 * @generated
+	 */
+	EClass getIStateChart();
+
+	/**
+	 * Returns the meta object for the containment reference list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IStateChart#getStates <em>States</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference list '<em>States</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IStateChart#getStates()
+	 * @see #getIStateChart()
+	 * @generated
+	 */
+	EReference getIStateChart_States();
+
+	/**
+	 * Returns the meta object for the attribute list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IStateChart#getBaseVersion <em>Base Version</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute list '<em>Base Version</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IStateChart#getBaseVersion()
+	 * @see #getIStateChart()
+	 * @generated
+	 */
+	EAttribute getIStateChart_BaseVersion();
+
+	/**
+	 * Returns the meta object for the containment reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IStateChart#getDiagram <em>Diagram</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference '<em>Diagram</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IStateChart#getDiagram()
+	 * @see #getIStateChart()
+	 * @generated
+	 */
+	EReference getIStateChart_Diagram();
+
+	/**
+	 * Returns the meta object for the containment reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IStateChart#getViews <em>Views</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference '<em>Views</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IStateChart#getViews()
+	 * @see #getIStateChart()
+	 * @generated
+	 */
+	EReference getIStateChart_Views();
+
+	/**
+	 * Returns the meta object for the reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IStateChart#getInheritsFromHandle <em>Inherits From Handle</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the reference '<em>Inherits From Handle</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IStateChart#getInheritsFromHandle()
+	 * @see #getIStateChart()
+	 * @generated
+	 */
+	EReference getIStateChart_InheritsFromHandle();
+
+	/**
+	 * Returns the meta object for class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IStateChartDiagram <em>IState Chart Diagram</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for class '<em>IState Chart Diagram</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IStateChartDiagram
+	 * @generated
+	 */
+	EClass getIStateChartDiagram();
+
+	/**
+	 * Returns the meta object for class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IStateVertex <em>IState Vertex</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for class '<em>IState Vertex</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IStateVertex
+	 * @generated
+	 */
+	EClass getIStateVertex();
+
+	/**
+	 * Returns the meta object for the attribute list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IStateVertex#getModifiedTimeWeak <em>Modified Time Weak</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute list '<em>Modified Time Weak</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IStateVertex#getModifiedTimeWeak()
+	 * @see #getIStateVertex()
+	 * @generated
+	 */
+	EAttribute getIStateVertex_ModifiedTimeWeak();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IStateVertex#getId <em>Id</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Id</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IStateVertex#getId()
+	 * @see #getIStateVertex()
+	 * @generated
+	 */
+	EAttribute getIStateVertex_Id();
+
+	/**
+	 * Returns the meta object for the containment reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IStateVertex#getDescription <em>Description</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference '<em>Description</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IStateVertex#getDescription()
+	 * @see #getIStateVertex()
+	 * @generated
+	 */
+	EReference getIStateVertex_Description();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IStateVertex#getUmlDependencyID <em>Uml Dependency ID</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Uml Dependency ID</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IStateVertex#getUmlDependencyID()
+	 * @see #getIStateVertex()
+	 * @generated
+	 */
+	EAttribute getIStateVertex_UmlDependencyID();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IStateVertex#getMyState <em>My State</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>My State</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IStateVertex#getMyState()
+	 * @see #getIStateVertex()
+	 * @generated
+	 */
+	EAttribute getIStateVertex_MyState();
+
+	/**
+	 * Returns the meta object for the reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IStateVertex#getStereotypes <em>Stereotypes</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the reference '<em>Stereotypes</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IStateVertex#getStereotypes()
+	 * @see #getIStateVertex()
+	 * @generated
+	 */
+	EReference getIStateVertex_Stereotypes();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IStateVertex#getObjectCreation <em>Object Creation</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Object Creation</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IStateVertex#getObjectCreation()
+	 * @see #getIStateVertex()
+	 * @generated
+	 */
+	EAttribute getIStateVertex_ObjectCreation();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IStateVertex#getName <em>Name</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Name</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IStateVertex#getName()
+	 * @see #getIStateVertex()
+	 * @generated
+	 */
+	EAttribute getIStateVertex_Name();
+
+	/**
+	 * Returns the meta object for class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IStereotype <em>IStereotype</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for class '<em>IStereotype</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IStereotype
+	 * @generated
+	 */
+	EClass getIStereotype();
+
+	/**
+	 * Returns the meta object for the containment reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IStereotype#getProperties <em>Properties</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference '<em>Properties</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IStereotype#getProperties()
+	 * @see #getIStereotype()
+	 * @generated
+	 */
+	EReference getIStereotype_Properties();
+
+	/**
+	 * Returns the meta object for the attribute list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IStereotype#getM2Classes <em>M2 Classes</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute list '<em>M2 Classes</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IStereotype#getM2Classes()
+	 * @see #getIStereotype()
+	 * @generated
+	 */
+	EAttribute getIStereotype_M2Classes();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IStereotype#getNewTerm <em>New Term</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>New Term</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IStereotype#getNewTerm()
+	 * @see #getIStereotype()
+	 * @generated
+	 */
+	EAttribute getIStereotype_NewTerm();
+
+	/**
+	 * Returns the meta object for the containment reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IStereotype#getDescription <em>Description</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference '<em>Description</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IStereotype#getDescription()
+	 * @see #getIStereotype()
+	 * @generated
+	 */
+	EReference getIStereotype_Description();
+
+	/**
+	 * Returns the meta object for the containment reference list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IStereotype#getTags <em>Tags</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference list '<em>Tags</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IStereotype#getTags()
+	 * @see #getIStereotype()
+	 * @generated
+	 */
+	EReference getIStereotype_Tags();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IStereotype#getLastID <em>Last ID</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Last ID</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IStereotype#getLastID()
+	 * @see #getIStereotype()
+	 * @generated
+	 */
+	EAttribute getIStereotype_LastID();
+
+	/**
+	 * Returns the meta object for the containment reference list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IStereotype#getInheritances <em>Inheritances</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference list '<em>Inheritances</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IStereotype#getInheritances()
+	 * @see #getIStereotype()
+	 * @generated
+	 */
+	EReference getIStereotype_Inheritances();
+
+	/**
+	 * Returns the meta object for the containment reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IStereotype#getDependencies <em>Dependencies</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference '<em>Dependencies</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IStereotype#getDependencies()
+	 * @see #getIStereotype()
+	 * @generated
+	 */
+	EReference getIStereotype_Dependencies();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IStereotype#getRequiremenTracabilityHandle <em>Requiremen Tracability Handle</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Requiremen Tracability Handle</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IStereotype#getRequiremenTracabilityHandle()
+	 * @see #getIStereotype()
+	 * @generated
+	 */
+	EAttribute getIStereotype_RequiremenTracabilityHandle();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IStereotype#getObjectCreation <em>Object Creation</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Object Creation</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IStereotype#getObjectCreation()
+	 * @see #getIStereotype()
+	 * @generated
+	 */
+	EAttribute getIStereotype_ObjectCreation();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IStereotype#getUmlDependencyID <em>Uml Dependency ID</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Uml Dependency ID</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IStereotype#getUmlDependencyID()
+	 * @see #getIStereotype()
+	 * @generated
+	 */
+	EAttribute getIStereotype_UmlDependencyID();
+
+	/**
+	 * Returns the meta object for the reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IStereotype#getTheMainDiagram <em>The Main Diagram</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the reference '<em>The Main Diagram</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IStereotype#getTheMainDiagram()
+	 * @see #getIStereotype()
+	 * @generated
+	 */
+	EReference getIStereotype_TheMainDiagram();
+
+	/**
+	 * Returns the meta object for the containment reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IStereotype#getAnnotations <em>Annotations</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference '<em>Annotations</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IStereotype#getAnnotations()
+	 * @see #getIStereotype()
+	 * @generated
+	 */
+	EReference getIStereotype_Annotations();
+
+	/**
+	 * Returns the meta object for class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IStructureDiagram <em>IStructure Diagram</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for class '<em>IStructure Diagram</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IStructureDiagram
+	 * @generated
+	 */
+	EClass getIStructureDiagram();
+
+	/**
+	 * Returns the meta object for class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ISubsystem <em>ISubsystem</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for class '<em>ISubsystem</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ISubsystem
+	 * @generated
+	 */
+	EClass getISubsystem();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ISubsystem#getId <em>Id</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Id</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ISubsystem#getId()
+	 * @see #getISubsystem()
+	 * @generated
+	 */
+	EAttribute getISubsystem_Id();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ISubsystem#getMyState <em>My State</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>My State</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ISubsystem#getMyState()
+	 * @see #getISubsystem()
+	 * @generated
+	 */
+	EAttribute getISubsystem_MyState();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ISubsystem#getName <em>Name</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Name</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ISubsystem#getName()
+	 * @see #getISubsystem()
+	 * @generated
+	 */
+	EAttribute getISubsystem_Name();
+
+	/**
+	 * Returns the meta object for the attribute list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ISubsystem#getModifiedTimeWeak <em>Modified Time Weak</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute list '<em>Modified Time Weak</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ISubsystem#getModifiedTimeWeak()
+	 * @see #getISubsystem()
+	 * @generated
+	 */
+	EAttribute getISubsystem_ModifiedTimeWeak();
+
+	/**
+	 * Returns the meta object for the reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ISubsystem#getDefaultComposite <em>Default Composite</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the reference '<em>Default Composite</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ISubsystem#getDefaultComposite()
+	 * @see #getISubsystem()
+	 * @generated
+	 */
+	EReference getISubsystem_DefaultComposite();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ISubsystem#getEventsBaseID <em>Events Base ID</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Events Base ID</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ISubsystem#getEventsBaseID()
+	 * @see #getISubsystem()
+	 * @generated
+	 */
+	EAttribute getISubsystem_EventsBaseID();
+
+	/**
+	 * Returns the meta object for the containment reference list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ISubsystem#getClasses <em>Classes</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference list '<em>Classes</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ISubsystem#getClasses()
+	 * @see #getISubsystem()
+	 * @generated
+	 */
+	EReference getISubsystem_Classes();
+
+	/**
+	 * Returns the meta object for the attribute list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ISubsystem#getConfigurationRelatedTime <em>Configuration Related Time</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute list '<em>Configuration Related Time</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ISubsystem#getConfigurationRelatedTime()
+	 * @see #getISubsystem()
+	 * @generated
+	 */
+	EAttribute getISubsystem_ConfigurationRelatedTime();
+
+	/**
+	 * Returns the meta object for the containment reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ISubsystem#getProperties <em>Properties</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference '<em>Properties</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ISubsystem#getProperties()
+	 * @see #getISubsystem()
+	 * @generated
+	 */
+	EReference getISubsystem_Properties();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ISubsystem#getLastID <em>Last ID</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Last ID</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ISubsystem#getLastID()
+	 * @see #getISubsystem()
+	 * @generated
+	 */
+	EAttribute getISubsystem_LastID();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ISubsystem#getCmheader <em>Cmheader</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Cmheader</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ISubsystem#getCmheader()
+	 * @see #getISubsystem()
+	 * @generated
+	 */
+	EAttribute getISubsystem_Cmheader();
+
+	/**
+	 * Returns the meta object for the containment reference list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ISubsystem#getDeclaratives <em>Declaratives</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference list '<em>Declaratives</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ISubsystem#getDeclaratives()
+	 * @see #getISubsystem()
+	 * @generated
+	 */
+	EReference getISubsystem_Declaratives();
+
+	/**
+	 * Returns the meta object for the containment reference list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ISubsystem#getTypes <em>Types</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference list '<em>Types</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ISubsystem#getTypes()
+	 * @see #getISubsystem()
+	 * @generated
+	 */
+	EReference getISubsystem_Types();
+
+	/**
+	 * Returns the meta object for the reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ISubsystem#getStereotypes <em>Stereotypes</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the reference '<em>Stereotypes</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ISubsystem#getStereotypes()
+	 * @see #getISubsystem()
+	 * @generated
+	 */
+	EReference getISubsystem_Stereotypes();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ISubsystem#getPredefinedTypes <em>Predefined Types</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Predefined Types</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ISubsystem#getPredefinedTypes()
+	 * @see #getISubsystem()
+	 * @generated
+	 */
+	EAttribute getISubsystem_PredefinedTypes();
+
+	/**
+	 * Returns the meta object for the containment reference list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ISubsystem#getEvents <em>Events</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference list '<em>Events</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ISubsystem#getEvents()
+	 * @see #getISubsystem()
+	 * @generated
+	 */
+	EReference getISubsystem_Events();
+
+	/**
+	 * Returns the meta object for the containment reference list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ISubsystem#getAnnotations <em>Annotations</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference list '<em>Annotations</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ISubsystem#getAnnotations()
+	 * @see #getISubsystem()
+	 * @generated
+	 */
+	EReference getISubsystem_Annotations();
+
+	/**
+	 * Returns the meta object for the containment reference list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ISubsystem#getUseCases <em>Use Cases</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference list '<em>Use Cases</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ISubsystem#getUseCases()
+	 * @see #getISubsystem()
+	 * @generated
+	 */
+	EReference getISubsystem_UseCases();
+
+	/**
+	 * Returns the meta object for the containment reference list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ISubsystem#getActors <em>Actors</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference list '<em>Actors</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ISubsystem#getActors()
+	 * @see #getISubsystem()
+	 * @generated
+	 */
+	EReference getISubsystem_Actors();
+
+	/**
+	 * Returns the meta object for the containment reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ISubsystem#getDescription <em>Description</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference '<em>Description</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ISubsystem#getDescription()
+	 * @see #getISubsystem()
+	 * @generated
+	 */
+	EReference getISubsystem_Description();
+
+	/**
+	 * Returns the meta object for the containment reference list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ISubsystem#getTags <em>Tags</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference list '<em>Tags</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ISubsystem#getTags()
+	 * @see #getISubsystem()
+	 * @generated
+	 */
+	EReference getISubsystem_Tags();
+
+	/**
+	 * Returns the meta object for the containment reference list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ISubsystem#getDependencies <em>Dependencies</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference list '<em>Dependencies</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ISubsystem#getDependencies()
+	 * @see #getISubsystem()
+	 * @generated
+	 */
+	EReference getISubsystem_Dependencies();
+
+	/**
+	 * Returns the meta object for the reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ISubsystem#getOwnerHandle <em>Owner Handle</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the reference '<em>Owner Handle</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ISubsystem#getOwnerHandle()
+	 * @see #getISubsystem()
+	 * @generated
+	 */
+	EReference getISubsystem_OwnerHandle();
+
+	/**
+	 * Returns the meta object for the reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ISubsystem#getTheMainDiagram <em>The Main Diagram</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the reference '<em>The Main Diagram</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ISubsystem#getTheMainDiagram()
+	 * @see #getISubsystem()
+	 * @generated
+	 */
+	EReference getISubsystem_TheMainDiagram();
+
+	/**
+	 * Returns the meta object for the containment reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ISubsystem#getHyperLinks <em>Hyper Links</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference '<em>Hyper Links</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ISubsystem#getHyperLinks()
+	 * @see #getISubsystem()
+	 * @generated
+	 */
+	EReference getISubsystem_HyperLinks();
+
+	/**
+	 * Returns the meta object for the containment reference list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ISubsystem#getTableLayouts <em>Table Layouts</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference list '<em>Table Layouts</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ISubsystem#getTableLayouts()
+	 * @see #getISubsystem()
+	 * @generated
+	 */
+	EReference getISubsystem_TableLayouts();
+
+	/**
+	 * Returns the meta object for the containment reference list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ISubsystem#getMatrixLayouts <em>Matrix Layouts</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference list '<em>Matrix Layouts</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ISubsystem#getMatrixLayouts()
+	 * @see #getISubsystem()
+	 * @generated
+	 */
+	EReference getISubsystem_MatrixLayouts();
+
+	/**
+	 * Returns the meta object for the containment reference list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ISubsystem#getTableInstances <em>Table Instances</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference list '<em>Table Instances</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ISubsystem#getTableInstances()
+	 * @see #getISubsystem()
+	 * @generated
+	 */
+	EReference getISubsystem_TableInstances();
+
+	/**
+	 * Returns the meta object for the containment reference list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ISubsystem#getMatrixInstances <em>Matrix Instances</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference list '<em>Matrix Instances</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ISubsystem#getMatrixInstances()
+	 * @see #getISubsystem()
+	 * @generated
+	 */
+	EReference getISubsystem_MatrixInstances();
+
+	/**
+	 * Returns the meta object for the containment reference list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ISubsystem#getEmbededFiles <em>Embeded Files</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference list '<em>Embeded Files</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ISubsystem#getEmbededFiles()
+	 * @see #getISubsystem()
+	 * @generated
+	 */
+	EReference getISubsystem_EmbededFiles();
+
+	/**
+	 * Returns the meta object for the containment reference list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ISubsystem#getComponentFiles <em>Component Files</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference list '<em>Component Files</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ISubsystem#getComponentFiles()
+	 * @see #getISubsystem()
+	 * @generated
+	 */
+	EReference getISubsystem_ComponentFiles();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ISubsystem#getRequiremenTracabilityHandle <em>Requiremen Tracability Handle</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Requiremen Tracability Handle</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ISubsystem#getRequiremenTracabilityHandle()
+	 * @see #getISubsystem()
+	 * @generated
+	 */
+	EAttribute getISubsystem_RequiremenTracabilityHandle();
+
+	/**
+	 * Returns the meta object for the attribute list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ISubsystem#getCodeUpdateCGTime <em>Code Update CG Time</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute list '<em>Code Update CG Time</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ISubsystem#getCodeUpdateCGTime()
+	 * @see #getISubsystem()
+	 * @generated
+	 */
+	EAttribute getISubsystem_CodeUpdateCGTime();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ISubsystem#getObjectCreation <em>Object Creation</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Object Creation</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ISubsystem#getObjectCreation()
+	 * @see #getISubsystem()
+	 * @generated
+	 */
+	EAttribute getISubsystem_ObjectCreation();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ISubsystem#getUmlDependencyID <em>Uml Dependency ID</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Uml Dependency ID</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ISubsystem#getUmlDependencyID()
+	 * @see #getISubsystem()
+	 * @generated
+	 */
+	EAttribute getISubsystem_UmlDependencyID();
+
+	/**
+	 * Returns the meta object for the containment reference list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ISubsystem#getAssociationElements <em>Association Elements</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference list '<em>Association Elements</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ISubsystem#getAssociationElements()
+	 * @see #getISubsystem()
+	 * @generated
+	 */
+	EReference getISubsystem_AssociationElements();
+
+	/**
+	 * Returns the meta object for class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ISwimlane <em>ISwimlane</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for class '<em>ISwimlane</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ISwimlane
+	 * @generated
+	 */
+	EClass getISwimlane();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ISwimlane#getId <em>Id</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Id</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ISwimlane#getId()
+	 * @see #getISwimlane()
+	 * @generated
+	 */
+	EAttribute getISwimlane_Id();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ISwimlane#getName <em>Name</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Name</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ISwimlane#getName()
+	 * @see #getISwimlane()
+	 * @generated
+	 */
+	EAttribute getISwimlane_Name();
+
+	/**
+	 * Returns the meta object for the attribute list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ISwimlane#getModifiedTimeWeak <em>Modified Time Weak</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute list '<em>Modified Time Weak</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ISwimlane#getModifiedTimeWeak()
+	 * @see #getISwimlane()
+	 * @generated
+	 */
+	EAttribute getISwimlane_ModifiedTimeWeak();
+
+	/**
+	 * Returns the meta object for the containment reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ISwimlane#getDescription <em>Description</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference '<em>Description</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ISwimlane#getDescription()
+	 * @see #getISwimlane()
+	 * @generated
+	 */
+	EReference getISwimlane_Description();
+
+	/**
+	 * Returns the meta object for the reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ISwimlane#getRepresents <em>Represents</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the reference '<em>Represents</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ISwimlane#getRepresents()
+	 * @see #getISwimlane()
+	 * @generated
+	 */
+	EReference getISwimlane_Represents();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ISwimlane#getMyState <em>My State</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>My State</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ISwimlane#getMyState()
+	 * @see #getISwimlane()
+	 * @generated
+	 */
+	EAttribute getISwimlane_MyState();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ISwimlane#getObjectCreation <em>Object Creation</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Object Creation</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ISwimlane#getObjectCreation()
+	 * @see #getISwimlane()
+	 * @generated
+	 */
+	EAttribute getISwimlane_ObjectCreation();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ISwimlane#getUmlDependencyID <em>Uml Dependency ID</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Uml Dependency ID</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ISwimlane#getUmlDependencyID()
+	 * @see #getISwimlane()
+	 * @generated
+	 */
+	EAttribute getISwimlane_UmlDependencyID();
+
+	/**
+	 * Returns the meta object for the containment reference list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ISwimlane#getSwimlanes <em>Swimlanes</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference list '<em>Swimlanes</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ISwimlane#getSwimlanes()
+	 * @see #getISwimlane()
+	 * @generated
+	 */
+	EReference getISwimlane_Swimlanes();
+
+	/**
+	 * Returns the meta object for the reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ISwimlane#getStereotypes <em>Stereotypes</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the reference '<em>Stereotypes</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ISwimlane#getStereotypes()
+	 * @see #getISwimlane()
+	 * @generated
+	 */
+	EReference getISwimlane_Stereotypes();
+
+	/**
+	 * Returns the meta object for class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ISysMLPort <em>ISys ML Port</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for class '<em>ISys ML Port</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ISysMLPort
+	 * @generated
+	 */
+	EClass getISysMLPort();
+
+	/**
+	 * Returns the meta object for the containment reference list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ISysMLPort#getDependencies <em>Dependencies</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference list '<em>Dependencies</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ISysMLPort#getDependencies()
+	 * @see #getISysMLPort()
+	 * @generated
+	 */
+	EReference getISysMLPort_Dependencies();
+
+	/**
+	 * Returns the meta object for the reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ISysMLPort#getStereotypes <em>Stereotypes</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the reference '<em>Stereotypes</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ISysMLPort#getStereotypes()
+	 * @see #getISysMLPort()
+	 * @generated
+	 */
+	EReference getISysMLPort_Stereotypes();
+
+	/**
+	 * Returns the meta object for the containment reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ISysMLPort#getTags <em>Tags</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference '<em>Tags</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ISysMLPort#getTags()
+	 * @see #getISysMLPort()
+	 * @generated
+	 */
+	EReference getISysMLPort_Tags();
+
+	/**
+	 * Returns the meta object for the reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ISysMLPort#getOtherClass <em>Other Class</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the reference '<em>Other Class</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ISysMLPort#getOtherClass()
+	 * @see #getISysMLPort()
+	 * @generated
+	 */
+	EReference getISysMLPort_OtherClass();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ISysMLPort#getDirection <em>Direction</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Direction</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ISysMLPort#getDirection()
+	 * @see #getISysMLPort()
+	 * @generated
+	 */
+	EAttribute getISysMLPort_Direction();
+
+	/**
+	 * Returns the meta object for the containment reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ISysMLPort#getDescription <em>Description</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference '<em>Description</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ISysMLPort#getDescription()
+	 * @see #getISysMLPort()
+	 * @generated
+	 */
+	EReference getISysMLPort_Description();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ISysMLPort#getLastID <em>Last ID</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Last ID</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ISysMLPort#getLastID()
+	 * @see #getISysMLPort()
+	 * @generated
+	 */
+	EAttribute getISysMLPort_LastID();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ISysMLPort#getReversed <em>Reversed</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Reversed</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ISysMLPort#getReversed()
+	 * @see #getISysMLPort()
+	 * @generated
+	 */
+	EAttribute getISysMLPort_Reversed();
+
+	/**
+	 * Returns the meta object for class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITableInstance <em>ITable Instance</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for class '<em>ITable Instance</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITableInstance
+	 * @generated
+	 */
+	EClass getITableInstance();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITableInstance#getId <em>Id</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Id</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITableInstance#getId()
+	 * @see #getITableInstance()
+	 * @generated
+	 */
+	EAttribute getITableInstance_Id();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITableInstance#getMyState <em>My State</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>My State</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITableInstance#getMyState()
+	 * @see #getITableInstance()
+	 * @generated
+	 */
+	EAttribute getITableInstance_MyState();
+
+	/**
+	 * Returns the meta object for the containment reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITableInstance#getProperties <em>Properties</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference '<em>Properties</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITableInstance#getProperties()
+	 * @see #getITableInstance()
+	 * @generated
+	 */
+	EReference getITableInstance_Properties();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITableInstance#getName <em>Name</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Name</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITableInstance#getName()
+	 * @see #getITableInstance()
+	 * @generated
+	 */
+	EAttribute getITableInstance_Name();
+
+	/**
+	 * Returns the meta object for the attribute list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITableInstance#getModifiedTimeWeak <em>Modified Time Weak</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute list '<em>Modified Time Weak</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITableInstance#getModifiedTimeWeak()
+	 * @see #getITableInstance()
+	 * @generated
+	 */
+	EAttribute getITableInstance_ModifiedTimeWeak();
+
+	/**
+	 * Returns the meta object for the reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITableInstance#getLayoutHandle <em>Layout Handle</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the reference '<em>Layout Handle</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITableInstance#getLayoutHandle()
+	 * @see #getITableInstance()
+	 * @generated
+	 */
+	EReference getITableInstance_LayoutHandle();
+
+	/**
+	 * Returns the meta object for the reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITableInstance#getScopeHandles <em>Scope Handles</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the reference '<em>Scope Handles</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITableInstance#getScopeHandles()
+	 * @see #getITableInstance()
+	 * @generated
+	 */
+	EReference getITableInstance_ScopeHandles();
+
+	/**
+	 * Returns the meta object for the reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITableInstance#getStereotypes <em>Stereotypes</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the reference '<em>Stereotypes</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITableInstance#getStereotypes()
+	 * @see #getITableInstance()
+	 * @generated
+	 */
+	EReference getITableInstance_Stereotypes();
+
+	/**
+	 * Returns the meta object for class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITableLayout <em>ITable Layout</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for class '<em>ITable Layout</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITableLayout
+	 * @generated
+	 */
+	EClass getITableLayout();
+
+	/**
+	 * Returns the meta object for the containment reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITableLayout#getProperties <em>Properties</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference '<em>Properties</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITableLayout#getProperties()
+	 * @see #getITableLayout()
+	 * @generated
+	 */
+	EReference getITableLayout_Properties();
+
+	/**
+	 * Returns the meta object for the reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITableLayout#getStereotypes <em>Stereotypes</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the reference '<em>Stereotypes</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITableLayout#getStereotypes()
+	 * @see #getITableLayout()
+	 * @generated
+	 */
+	EReference getITableLayout_Stereotypes();
+
+	/**
+	 * Returns the meta object for the containment reference list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITableLayout#getTags <em>Tags</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference list '<em>Tags</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITableLayout#getTags()
+	 * @see #getITableLayout()
+	 * @generated
+	 */
+	EReference getITableLayout_Tags();
+
+	/**
+	 * Returns the meta object for the containment reference list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITableLayout#getTableElementTypes <em>Table Element Types</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference list '<em>Table Element Types</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITableLayout#getTableElementTypes()
+	 * @see #getITableLayout()
+	 * @generated
+	 */
+	EReference getITableLayout_TableElementTypes();
+
+	/**
+	 * Returns the meta object for the containment reference list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITableLayout#getDataColumns <em>Data Columns</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference list '<em>Data Columns</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITableLayout#getDataColumns()
+	 * @see #getITableLayout()
+	 * @generated
+	 */
+	EReference getITableLayout_DataColumns();
+
+	/**
+	 * Returns the meta object for the containment reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITableLayout#getDescription <em>Description</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference '<em>Description</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITableLayout#getDescription()
+	 * @see #getITableLayout()
+	 * @generated
+	 */
+	EReference getITableLayout_Description();
+
+	/**
+	 * Returns the meta object for class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITableView <em>ITable View</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for class '<em>ITable View</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITableView
+	 * @generated
+	 */
+	EClass getITableView();
+
+	/**
+	 * Returns the meta object for class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITag <em>ITag</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for class '<em>ITag</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITag
+	 * @generated
+	 */
+	EClass getITag();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITag#getId <em>Id</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Id</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITag#getId()
+	 * @see #getITag()
+	 * @generated
+	 */
+	EAttribute getITag_Id();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITag#getName <em>Name</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Name</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITag#getName()
+	 * @see #getITag()
+	 * @generated
+	 */
+	EAttribute getITag_Name();
+
+	/**
+	 * Returns the meta object for the attribute list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITag#getModifiedTimeWeak <em>Modified Time Weak</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute list '<em>Modified Time Weak</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITag#getModifiedTimeWeak()
+	 * @see #getITag()
+	 * @generated
+	 */
+	EAttribute getITag_ModifiedTimeWeak();
+
+	/**
+	 * Returns the meta object for the containment reference list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITag#getValueSpecifications <em>Value Specifications</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference list '<em>Value Specifications</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITag#getValueSpecifications()
+	 * @see #getITag()
+	 * @generated
+	 */
+	EReference getITag_ValueSpecifications();
+
+	/**
+	 * Returns the meta object for the reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITag#getTypeOf <em>Type Of</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the reference '<em>Type Of</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITag#getTypeOf()
+	 * @see #getITag()
+	 * @generated
+	 */
+	EReference getITag_TypeOf();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITag#getMyState <em>My State</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>My State</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITag#getMyState()
+	 * @see #getITag()
+	 * @generated
+	 */
+	EAttribute getITag_MyState();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITag#getMultiplicity <em>Multiplicity</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Multiplicity</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITag#getMultiplicity()
+	 * @see #getITag()
+	 * @generated
+	 */
+	EAttribute getITag_Multiplicity();
+
+	/**
+	 * Returns the meta object for the containment reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITag#getProperties <em>Properties</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference '<em>Properties</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITag#getProperties()
+	 * @see #getITag()
+	 * @generated
+	 */
+	EReference getITag_Properties();
+
+	/**
+	 * Returns the meta object for the containment reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITag#getDescription <em>Description</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference '<em>Description</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITag#getDescription()
+	 * @see #getITag()
+	 * @generated
+	 */
+	EReference getITag_Description();
+
+	/**
+	 * Returns the meta object for the containment reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITag#getHyperLinks <em>Hyper Links</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference '<em>Hyper Links</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITag#getHyperLinks()
+	 * @see #getITag()
+	 * @generated
+	 */
+	EReference getITag_HyperLinks();
+
+	/**
+	 * Returns the meta object for the reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITag#getBase <em>Base</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the reference '<em>Base</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITag#getBase()
+	 * @see #getITag()
+	 * @generated
+	 */
+	EReference getITag_Base();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITag#getMetaClass <em>Meta Class</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Meta Class</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITag#getMetaClass()
+	 * @see #getITag()
+	 * @generated
+	 */
+	EAttribute getITag_MetaClass();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITag#getDefaultValue <em>Default Value</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Default Value</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITag#getDefaultValue()
+	 * @see #getITag()
+	 * @generated
+	 */
+	EAttribute getITag_DefaultValue();
+
+	/**
+	 * Returns the meta object for the attribute list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITag#getCodeUpdateCGTime <em>Code Update CG Time</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute list '<em>Code Update CG Time</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITag#getCodeUpdateCGTime()
+	 * @see #getITag()
+	 * @generated
+	 */
+	EAttribute getITag_CodeUpdateCGTime();
+
+	/**
+	 * Returns the meta object for class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITemplateInst <em>ITemplate Inst</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for class '<em>ITemplate Inst</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITemplateInst
+	 * @generated
+	 */
+	EClass getITemplateInst();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITemplateInst#getId <em>Id</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Id</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITemplateInst#getId()
+	 * @see #getITemplateInst()
+	 * @generated
+	 */
+	EAttribute getITemplateInst_Id();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITemplateInst#getModifiedTimeWeak <em>Modified Time Weak</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Modified Time Weak</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITemplateInst#getModifiedTimeWeak()
+	 * @see #getITemplateInst()
+	 * @generated
+	 */
+	EAttribute getITemplateInst_ModifiedTimeWeak();
+
+	/**
+	 * Returns the meta object for the containment reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITemplateInst#getTemplateInstParams <em>Template Inst Params</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference '<em>Template Inst Params</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITemplateInst#getTemplateInstParams()
+	 * @see #getITemplateInst()
+	 * @generated
+	 */
+	EReference getITemplateInst_TemplateInstParams();
+
+	/**
+	 * Returns the meta object for the reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITemplateInst#getOfTemplate <em>Of Template</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the reference '<em>Of Template</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITemplateInst#getOfTemplate()
+	 * @see #getITemplateInst()
+	 * @generated
+	 */
+	EReference getITemplateInst_OfTemplate();
+
+	/**
+	 * Returns the meta object for class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITemplateInstParam <em>ITemplate Inst Param</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for class '<em>ITemplate Inst Param</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITemplateInstParam
+	 * @generated
+	 */
+	EClass getITemplateInstParam();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITemplateInstParam#getId <em>Id</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Id</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITemplateInstParam#getId()
+	 * @see #getITemplateInstParam()
+	 * @generated
+	 */
+	EAttribute getITemplateInstParam_Id();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITemplateInstParam#getName <em>Name</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Name</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITemplateInstParam#getName()
+	 * @see #getITemplateInstParam()
+	 * @generated
+	 */
+	EAttribute getITemplateInstParam_Name();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITemplateInstParam#getModifiedTimeWeak <em>Modified Time Weak</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Modified Time Weak</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITemplateInstParam#getModifiedTimeWeak()
+	 * @see #getITemplateInstParam()
+	 * @generated
+	 */
+	EAttribute getITemplateInstParam_ModifiedTimeWeak();
+
+	/**
+	 * Returns the meta object for the reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITemplateInstParam#getValue <em>Value</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the reference '<em>Value</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITemplateInstParam#getValue()
+	 * @see #getITemplateInstParam()
+	 * @generated
+	 */
+	EReference getITemplateInstParam_Value();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITemplateInstParam#getArgValue <em>Arg Value</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Arg Value</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITemplateInstParam#getArgValue()
+	 * @see #getITemplateInstParam()
+	 * @generated
+	 */
+	EAttribute getITemplateInstParam_ArgValue();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITemplateInstParam#getOnTheFlyValue <em>On The Fly Value</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>On The Fly Value</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITemplateInstParam#getOnTheFlyValue()
+	 * @see #getITemplateInstParam()
+	 * @generated
+	 */
+	EAttribute getITemplateInstParam_OnTheFlyValue();
+
+	/**
+	 * Returns the meta object for class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITemplateInstantiation <em>ITemplate Instantiation</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for class '<em>ITemplate Instantiation</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITemplateInstantiation
+	 * @generated
+	 */
+	EClass getITemplateInstantiation();
+
+	/**
+	 * Returns the meta object for class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITemplateInstantiationParameter <em>ITemplate Instantiation Parameter</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for class '<em>ITemplate Instantiation Parameter</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITemplateInstantiationParameter
+	 * @generated
+	 */
+	EClass getITemplateInstantiationParameter();
+
+	/**
+	 * Returns the meta object for class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITemplateParameter <em>ITemplate Parameter</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for class '<em>ITemplate Parameter</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITemplateParameter
+	 * @generated
+	 */
+	EClass getITemplateParameter();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITemplateParameter#getId <em>Id</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Id</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITemplateParameter#getId()
+	 * @see #getITemplateParameter()
+	 * @generated
+	 */
+	EAttribute getITemplateParameter_Id();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITemplateParameter#getName <em>Name</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Name</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITemplateParameter#getName()
+	 * @see #getITemplateParameter()
+	 * @generated
+	 */
+	EAttribute getITemplateParameter_Name();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITemplateParameter#getMyState <em>My State</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>My State</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITemplateParameter#getMyState()
+	 * @see #getITemplateParameter()
+	 * @generated
+	 */
+	EAttribute getITemplateParameter_MyState();
+
+	/**
+	 * Returns the meta object for the attribute list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITemplateParameter#getModifiedTimeWeak <em>Modified Time Weak</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute list '<em>Modified Time Weak</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITemplateParameter#getModifiedTimeWeak()
+	 * @see #getITemplateParameter()
+	 * @generated
+	 */
+	EAttribute getITemplateParameter_ModifiedTimeWeak();
+
+	/**
+	 * Returns the meta object for the reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITemplateParameter#getRepresentative <em>Representative</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the reference '<em>Representative</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITemplateParameter#getRepresentative()
+	 * @see #getITemplateParameter()
+	 * @generated
+	 */
+	EReference getITemplateParameter_Representative();
+
+	/**
+	 * Returns the meta object for class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITimeEvent <em>ITime Event</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for class '<em>ITime Event</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITimeEvent
+	 * @generated
+	 */
+	EClass getITimeEvent();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITimeEvent#getId <em>Id</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Id</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITimeEvent#getId()
+	 * @see #getITimeEvent()
+	 * @generated
+	 */
+	EAttribute getITimeEvent_Id();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITimeEvent#getMyState <em>My State</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>My State</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITimeEvent#getMyState()
+	 * @see #getITimeEvent()
+	 * @generated
+	 */
+	EAttribute getITimeEvent_MyState();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITimeEvent#getName <em>Name</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Name</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITimeEvent#getName()
+	 * @see #getITimeEvent()
+	 * @generated
+	 */
+	EAttribute getITimeEvent_Name();
+
+	/**
+	 * Returns the meta object for the attribute list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITimeEvent#getModifiedTimeWeak <em>Modified Time Weak</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute list '<em>Modified Time Weak</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITimeEvent#getModifiedTimeWeak()
+	 * @see #getITimeEvent()
+	 * @generated
+	 */
+	EAttribute getITimeEvent_ModifiedTimeWeak();
+
+	/**
+	 * Returns the meta object for the reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITimeEvent#getParent <em>Parent</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the reference '<em>Parent</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITimeEvent#getParent()
+	 * @see #getITimeEvent()
+	 * @generated
+	 */
+	EReference getITimeEvent_Parent();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITimeEvent#getStateType <em>State Type</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>State Type</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITimeEvent#getStateType()
+	 * @see #getITimeEvent()
+	 * @generated
+	 */
+	EAttribute getITimeEvent_StateType();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITimeEvent#getDefaultTrans <em>Default Trans</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Default Trans</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITimeEvent#getDefaultTrans()
+	 * @see #getITimeEvent()
+	 * @generated
+	 */
+	EAttribute getITimeEvent_DefaultTrans();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITimeEvent#getDurationTime <em>Duration Time</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Duration Time</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITimeEvent#getDurationTime()
+	 * @see #getITimeEvent()
+	 * @generated
+	 */
+	EAttribute getITimeEvent_DurationTime();
+
+	/**
+	 * Returns the meta object for the reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITimeEvent#getSwimlane <em>Swimlane</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the reference '<em>Swimlane</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITimeEvent#getSwimlane()
+	 * @see #getITimeEvent()
+	 * @generated
+	 */
+	EReference getITimeEvent_Swimlane();
+
+	/**
+	 * Returns the meta object for class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITimeout <em>ITimeout</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for class '<em>ITimeout</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITimeout
+	 * @generated
+	 */
+	EClass getITimeout();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITimeout#getTime <em>Time</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Time</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITimeout#getTime()
+	 * @see #getITimeout()
+	 * @generated
+	 */
+	EAttribute getITimeout_Time();
+
+	/**
+	 * Returns the meta object for the reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITimeout#getInheritsFromHandle <em>Inherits From Handle</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the reference '<em>Inherits From Handle</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITimeout#getInheritsFromHandle()
+	 * @see #getITimeout()
+	 * @generated
+	 */
+	EReference getITimeout_InheritsFromHandle();
+
+	/**
+	 * Returns the meta object for class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITransition <em>ITransition</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for class '<em>ITransition</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITransition
+	 * @generated
+	 */
+	EClass getITransition();
+
+	/**
+	 * Returns the meta object for the reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITransition#getItsSource <em>Its Source</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the reference '<em>Its Source</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITransition#getItsSource()
+	 * @see #getITransition()
+	 * @generated
+	 */
+	EReference getITransition_ItsSource();
+
+	/**
+	 * Returns the meta object for the reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITransition#getInheritsFromHandle <em>Inherits From Handle</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the reference '<em>Inherits From Handle</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITransition#getInheritsFromHandle()
+	 * @see #getITransition()
+	 * @generated
+	 */
+	EReference getITransition_InheritsFromHandle();
+
+	/**
+	 * Returns the meta object for the containment reference list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITransition#getDependencies <em>Dependencies</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference list '<em>Dependencies</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITransition#getDependencies()
+	 * @see #getITransition()
+	 * @generated
+	 */
+	EReference getITransition_Dependencies();
+
+	/**
+	 * Returns the meta object for the reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITransition#getStereotypes <em>Stereotypes</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the reference '<em>Stereotypes</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITransition#getStereotypes()
+	 * @see #getITransition()
+	 * @generated
+	 */
+	EReference getITransition_Stereotypes();
+
+	/**
+	 * Returns the meta object for class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITrigger <em>ITrigger</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for class '<em>ITrigger</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITrigger
+	 * @generated
+	 */
+	EClass getITrigger();
+
+	/**
+	 * Returns the meta object for class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITriggered <em>ITriggered</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for class '<em>ITriggered</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITriggered
+	 * @generated
+	 */
+	EClass getITriggered();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITriggered#getId <em>Id</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Id</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITriggered#getId()
+	 * @see #getITriggered()
+	 * @generated
+	 */
+	EAttribute getITriggered_Id();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITriggered#getName <em>Name</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Name</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITriggered#getName()
+	 * @see #getITriggered()
+	 * @generated
+	 */
+	EAttribute getITriggered_Name();
+
+	/**
+	 * Returns the meta object for the containment reference list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITriggered#getArgs <em>Args</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference list '<em>Args</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITriggered#getArgs()
+	 * @see #getITriggered()
+	 * @generated
+	 */
+	EReference getITriggered_Args();
+
+	/**
+	 * Returns the meta object for the reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITriggered#getReturnType <em>Return Type</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the reference '<em>Return Type</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITriggered#getReturnType()
+	 * @see #getITriggered()
+	 * @generated
+	 */
+	EReference getITriggered_ReturnType();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITriggered#getAbstract <em>Abstract</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Abstract</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITriggered#getAbstract()
+	 * @see #getITriggered()
+	 * @generated
+	 */
+	EAttribute getITriggered_Abstract();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITriggered#getFinal <em>Final</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Final</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITriggered#getFinal()
+	 * @see #getITriggered()
+	 * @generated
+	 */
+	EAttribute getITriggered_Final();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITriggered#getConcurrency <em>Concurrency</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Concurrency</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITriggered#getConcurrency()
+	 * @see #getITriggered()
+	 * @generated
+	 */
+	EAttribute getITriggered_Concurrency();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITriggered#getProtection <em>Protection</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Protection</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITriggered#getProtection()
+	 * @see #getITriggered()
+	 * @generated
+	 */
+	EAttribute getITriggered_Protection();
+
+	/**
+	 * Returns the meta object for the attribute list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITriggered#getModifiedTimeWeak <em>Modified Time Weak</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute list '<em>Modified Time Weak</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITriggered#getModifiedTimeWeak()
+	 * @see #getITriggered()
+	 * @generated
+	 */
+	EAttribute getITriggered_ModifiedTimeWeak();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITriggered#getMyState <em>My State</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>My State</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITriggered#getMyState()
+	 * @see #getITriggered()
+	 * @generated
+	 */
+	EAttribute getITriggered_MyState();
+
+	/**
+	 * Returns the meta object for class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IType <em>IType</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for class '<em>IType</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IType
+	 * @generated
+	 */
+	EClass getIType();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IType#getLastID <em>Last ID</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Last ID</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IType#getLastID()
+	 * @see #getIType()
+	 * @generated
+	 */
+	EAttribute getIType_LastID();
+
+	/**
+	 * Returns the meta object for the containment reference list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IType#getLiterals <em>Literals</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference list '<em>Literals</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IType#getLiterals()
+	 * @see #getIType()
+	 * @generated
+	 */
+	EReference getIType_Literals();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IType#getKind <em>Kind</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Kind</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IType#getKind()
+	 * @see #getIType()
+	 * @generated
+	 */
+	EAttribute getIType_Kind();
+
+	/**
+	 * Returns the meta object for the containment reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IType#getProperties <em>Properties</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference '<em>Properties</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IType#getProperties()
+	 * @see #getIType()
+	 * @generated
+	 */
+	EReference getIType_Properties();
+
+	/**
+	 * Returns the meta object for the containment reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IType#getDescription <em>Description</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference '<em>Description</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IType#getDescription()
+	 * @see #getIType()
+	 * @generated
+	 */
+	EReference getIType_Description();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IType#getDeclaration <em>Declaration</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Declaration</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IType#getDeclaration()
+	 * @see #getIType()
+	 * @generated
+	 */
+	EAttribute getIType_Declaration();
+
+	/**
+	 * Returns the meta object for the reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IType#getStereotypes <em>Stereotypes</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the reference '<em>Stereotypes</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IType#getStereotypes()
+	 * @see #getIType()
+	 * @generated
+	 */
+	EReference getIType_Stereotypes();
+
+	/**
+	 * Returns the meta object for the containment reference list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IType#getAttrs <em>Attrs</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference list '<em>Attrs</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IType#getAttrs()
+	 * @see #getIType()
+	 * @generated
+	 */
+	EReference getIType_Attrs();
+
+	/**
+	 * Returns the meta object for the reference list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IType#getAssociationElements <em>Association Elements</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the reference list '<em>Association Elements</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IType#getAssociationElements()
+	 * @see #getIType()
+	 * @generated
+	 */
+	EReference getIType_AssociationElements();
+
+	/**
+	 * Returns the meta object for the containment reference list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IType#getTags <em>Tags</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference list '<em>Tags</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IType#getTags()
+	 * @see #getIType()
+	 * @generated
+	 */
+	EReference getIType_Tags();
+
+	/**
+	 * Returns the meta object for the reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IType#getTypedefBaseType <em>Typedef Base Type</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the reference '<em>Typedef Base Type</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IType#getTypedefBaseType()
+	 * @see #getIType()
+	 * @generated
+	 */
+	EReference getIType_TypedefBaseType();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IType#getTypedefMultiplicity <em>Typedef Multiplicity</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Typedef Multiplicity</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IType#getTypedefMultiplicity()
+	 * @see #getIType()
+	 * @generated
+	 */
+	EAttribute getIType_TypedefMultiplicity();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IType#getTypedefIsOrdered <em>Typedef Is Ordered</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Typedef Is Ordered</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IType#getTypedefIsOrdered()
+	 * @see #getIType()
+	 * @generated
+	 */
+	EAttribute getIType_TypedefIsOrdered();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IType#getTypedefIsReference <em>Typedef Is Reference</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Typedef Is Reference</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IType#getTypedefIsReference()
+	 * @see #getIType()
+	 * @generated
+	 */
+	EAttribute getIType_TypedefIsReference();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IType#getTypedefIsConstant <em>Typedef Is Constant</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Typedef Is Constant</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IType#getTypedefIsConstant()
+	 * @see #getIType()
+	 * @generated
+	 */
+	EAttribute getIType_TypedefIsConstant();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IType#getRequiremenTracabilityHandle <em>Requiremen Tracability Handle</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Requiremen Tracability Handle</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IType#getRequiremenTracabilityHandle()
+	 * @see #getIType()
+	 * @generated
+	 */
+	EAttribute getIType_RequiremenTracabilityHandle();
+
+	/**
+	 * Returns the meta object for the attribute list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IType#getCodeUpdateCGTime <em>Code Update CG Time</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute list '<em>Code Update CG Time</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IType#getCodeUpdateCGTime()
+	 * @see #getIType()
+	 * @generated
+	 */
+	EAttribute getIType_CodeUpdateCGTime();
+
+	/**
+	 * Returns the meta object for the reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IType#getTheMainDiagram <em>The Main Diagram</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the reference '<em>The Main Diagram</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IType#getTheMainDiagram()
+	 * @see #getIType()
+	 * @generated
+	 */
+	EReference getIType_TheMainDiagram();
+
+	/**
+	 * Returns the meta object for class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IUCDiagram <em>IUC Diagram</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for class '<em>IUC Diagram</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IUCDiagram
+	 * @generated
+	 */
+	EClass getIUCDiagram();
+
+	/**
+	 * Returns the meta object for the containment reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IUCDiagram#getProperties <em>Properties</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference '<em>Properties</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IUCDiagram#getProperties()
+	 * @see #getIUCDiagram()
+	 * @generated
+	 */
+	EReference getIUCDiagram_Properties();
+
+	/**
+	 * Returns the meta object for the containment reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IUCDiagram#getGraphicChart <em>Graphic Chart</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference '<em>Graphic Chart</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IUCDiagram#getGraphicChart()
+	 * @see #getIUCDiagram()
+	 * @generated
+	 */
+	EReference getIUCDiagram_GraphicChart();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IUCDiagram#getModifiedTimeWeak <em>Modified Time Weak</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Modified Time Weak</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IUCDiagram#getModifiedTimeWeak()
+	 * @see #getIUCDiagram()
+	 * @generated
+	 */
+	EAttribute getIUCDiagram_ModifiedTimeWeak();
+
+	/**
+	 * Returns the meta object for class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IUnit <em>IUnit</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for class '<em>IUnit</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IUnit
+	 * @generated
+	 */
+	EClass getIUnit();
+
+	/**
+	 * Returns the meta object for class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IUseCase <em>IUse Case</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for class '<em>IUse Case</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IUseCase
+	 * @generated
+	 */
+	EClass getIUseCase();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IUseCase#getId <em>Id</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Id</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IUseCase#getId()
+	 * @see #getIUseCase()
+	 * @generated
+	 */
+	EAttribute getIUseCase_Id();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IUseCase#getMyState <em>My State</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>My State</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IUseCase#getMyState()
+	 * @see #getIUseCase()
+	 * @generated
+	 */
+	EAttribute getIUseCase_MyState();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IUseCase#getName <em>Name</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Name</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IUseCase#getName()
+	 * @see #getIUseCase()
+	 * @generated
+	 */
+	EAttribute getIUseCase_Name();
+
+	/**
+	 * Returns the meta object for the reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IUseCase#getTheMainDiagram <em>The Main Diagram</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the reference '<em>The Main Diagram</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IUseCase#getTheMainDiagram()
+	 * @see #getIUseCase()
+	 * @generated
+	 */
+	EReference getIUseCase_TheMainDiagram();
+
+	/**
+	 * Returns the meta object for the containment reference list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IUseCase#getHyperLinks <em>Hyper Links</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference list '<em>Hyper Links</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IUseCase#getHyperLinks()
+	 * @see #getIUseCase()
+	 * @generated
+	 */
+	EReference getIUseCase_HyperLinks();
+
+	/**
+	 * Returns the meta object for the attribute list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IUseCase#getWeakCGTime <em>Weak CG Time</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute list '<em>Weak CG Time</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IUseCase#getWeakCGTime()
+	 * @see #getIUseCase()
+	 * @generated
+	 */
+	EAttribute getIUseCase_WeakCGTime();
+
+	/**
+	 * Returns the meta object for the attribute list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IUseCase#getStrongCGTime <em>Strong CG Time</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute list '<em>Strong CG Time</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IUseCase#getStrongCGTime()
+	 * @see #getIUseCase()
+	 * @generated
+	 */
+	EAttribute getIUseCase_StrongCGTime();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IUseCase#getClassModifier <em>Class Modifier</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Class Modifier</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IUseCase#getClassModifier()
+	 * @see #getIUseCase()
+	 * @generated
+	 */
+	EAttribute getIUseCase_ClassModifier();
+
+	/**
+	 * Returns the meta object for the containment reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IUseCase#getDescription <em>Description</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference '<em>Description</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IUseCase#getDescription()
+	 * @see #getIUseCase()
+	 * @generated
+	 */
+	EReference getIUseCase_Description();
+
+	/**
+	 * Returns the meta object for the containment reference list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IUseCase#getInheritances <em>Inheritances</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference list '<em>Inheritances</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IUseCase#getInheritances()
+	 * @see #getIUseCase()
+	 * @generated
+	 */
+	EReference getIUseCase_Inheritances();
+
+	/**
+	 * Returns the meta object for the containment reference list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IUseCase#getAssociations <em>Associations</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference list '<em>Associations</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IUseCase#getAssociations()
+	 * @see #getIUseCase()
+	 * @generated
+	 */
+	EReference getIUseCase_Associations();
+
+	/**
+	 * Returns the meta object for the containment reference list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IUseCase#getUseCaseStereoTypes <em>Use Case Stereo Types</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference list '<em>Use Case Stereo Types</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IUseCase#getUseCaseStereoTypes()
+	 * @see #getIUseCase()
+	 * @generated
+	 */
+	EReference getIUseCase_UseCaseStereoTypes();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IUseCase#getEntryPoints <em>Entry Points</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Entry Points</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IUseCase#getEntryPoints()
+	 * @see #getIUseCase()
+	 * @generated
+	 */
+	EAttribute getIUseCase_EntryPoints();
+
+	/**
+	 * Returns the meta object for the containment reference list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IUseCase#getDependencies <em>Dependencies</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference list '<em>Dependencies</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IUseCase#getDependencies()
+	 * @see #getIUseCase()
+	 * @generated
+	 */
+	EReference getIUseCase_Dependencies();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IUseCase#getLastID <em>Last ID</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Last ID</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IUseCase#getLastID()
+	 * @see #getIUseCase()
+	 * @generated
+	 */
+	EAttribute getIUseCase_LastID();
+
+	/**
+	 * Returns the meta object for the reference list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IUseCase#getDiagrams <em>Diagrams</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the reference list '<em>Diagrams</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IUseCase#getDiagrams()
+	 * @see #getIUseCase()
+	 * @generated
+	 */
+	EReference getIUseCase_Diagrams();
+
+	/**
+	 * Returns the meta object for the attribute list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IUseCase#getModifiedTimeWeak <em>Modified Time Weak</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute list '<em>Modified Time Weak</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IUseCase#getModifiedTimeWeak()
+	 * @see #getIUseCase()
+	 * @generated
+	 */
+	EAttribute getIUseCase_ModifiedTimeWeak();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IUseCase#getRequiremenTracabilityHandle <em>Requiremen Tracability Handle</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Requiremen Tracability Handle</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IUseCase#getRequiremenTracabilityHandle()
+	 * @see #getIUseCase()
+	 * @generated
+	 */
+	EAttribute getIUseCase_RequiremenTracabilityHandle();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IUseCase#getCmheader <em>Cmheader</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Cmheader</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IUseCase#getCmheader()
+	 * @see #getIUseCase()
+	 * @generated
+	 */
+	EAttribute getIUseCase_Cmheader();
+
+	/**
+	 * Returns the meta object for the reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IUseCase#getOwnerHandle <em>Owner Handle</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the reference '<em>Owner Handle</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IUseCase#getOwnerHandle()
+	 * @see #getIUseCase()
+	 * @generated
+	 */
+	EReference getIUseCase_OwnerHandle();
+
+	/**
+	 * Returns the meta object for the containment reference list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IUseCase#getDeclaratives <em>Declaratives</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference list '<em>Declaratives</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IUseCase#getDeclaratives()
+	 * @see #getIUseCase()
+	 * @generated
+	 */
+	EReference getIUseCase_Declaratives();
+
+	/**
+	 * Returns the meta object for the containment reference list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IUseCase#getOperations <em>Operations</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference list '<em>Operations</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IUseCase#getOperations()
+	 * @see #getIUseCase()
+	 * @generated
+	 */
+	EReference getIUseCase_Operations();
+
+	/**
+	 * Returns the meta object for the containment reference list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IUseCase#getStateCharts <em>State Charts</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference list '<em>State Charts</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IUseCase#getStateCharts()
+	 * @see #getIUseCase()
+	 * @generated
+	 */
+	EReference getIUseCase_StateCharts();
+
+	/**
+	 * Returns the meta object for the reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IUseCase#getItsStateChart <em>Its State Chart</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the reference '<em>Its State Chart</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IUseCase#getItsStateChart()
+	 * @see #getIUseCase()
+	 * @generated
+	 */
+	EReference getIUseCase_ItsStateChart();
+
+	/**
+	 * Returns the meta object for the containment reference list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IUseCase#getAttrs <em>Attrs</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference list '<em>Attrs</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IUseCase#getAttrs()
+	 * @see #getIUseCase()
+	 * @generated
+	 */
+	EReference getIUseCase_Attrs();
+
+	/**
+	 * Returns the meta object for the containment reference list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IUseCase#getAnnotations <em>Annotations</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference list '<em>Annotations</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IUseCase#getAnnotations()
+	 * @see #getIUseCase()
+	 * @generated
+	 */
+	EReference getIUseCase_Annotations();
+
+	/**
+	 * Returns the meta object for the containment reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IUseCase#getEmbededFiles <em>Embeded Files</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference '<em>Embeded Files</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IUseCase#getEmbededFiles()
+	 * @see #getIUseCase()
+	 * @generated
+	 */
+	EReference getIUseCase_EmbededFiles();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IUseCase#getObjectCreation <em>Object Creation</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Object Creation</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IUseCase#getObjectCreation()
+	 * @see #getIUseCase()
+	 * @generated
+	 */
+	EAttribute getIUseCase_ObjectCreation();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IUseCase#getUmlDependencyID <em>Uml Dependency ID</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Uml Dependency ID</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IUseCase#getUmlDependencyID()
+	 * @see #getIUseCase()
+	 * @generated
+	 */
+	EAttribute getIUseCase_UmlDependencyID();
+
+	/**
+	 * Returns the meta object for the containment reference list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IUseCase#getObjectLinks <em>Object Links</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference list '<em>Object Links</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IUseCase#getObjectLinks()
+	 * @see #getIUseCase()
+	 * @generated
+	 */
+	EReference getIUseCase_ObjectLinks();
+
+	/**
+	 * Returns the meta object for the containment reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IUseCase#getProperties <em>Properties</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference '<em>Properties</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IUseCase#getProperties()
+	 * @see #getIUseCase()
+	 * @generated
+	 */
+	EReference getIUseCase_Properties();
+
+	/**
+	 * Returns the meta object for class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IUseCaseDiagram <em>IUse Case Diagram</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for class '<em>IUse Case Diagram</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IUseCaseDiagram
+	 * @generated
+	 */
+	EClass getIUseCaseDiagram();
+
+	/**
+	 * Returns the meta object for class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IUseCaseStereoType <em>IUse Case Stereo Type</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for class '<em>IUse Case Stereo Type</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IUseCaseStereoType
+	 * @generated
+	 */
+	EClass getIUseCaseStereoType();
+
+	/**
+	 * Returns the meta object for the reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IUseCaseStereoType#getUseCase <em>Use Case</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the reference '<em>Use Case</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IUseCaseStereoType#getUseCase()
+	 * @see #getIUseCaseStereoType()
+	 * @generated
+	 */
+	EReference getIUseCaseStereoType_UseCase();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IUseCaseStereoType#getStereoType <em>Stereo Type</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Stereo Type</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IUseCaseStereoType#getStereoType()
+	 * @see #getIUseCaseStereoType()
+	 * @generated
+	 */
+	EAttribute getIUseCaseStereoType_StereoType();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IUseCaseStereoType#getEntryPoint <em>Entry Point</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Entry Point</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IUseCaseStereoType#getEntryPoint()
+	 * @see #getIUseCaseStereoType()
+	 * @generated
+	 */
+	EAttribute getIUseCaseStereoType_EntryPoint();
+
+	/**
+	 * Returns the meta object for class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IValueSpecification <em>IValue Specification</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for class '<em>IValue Specification</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IValueSpecification
+	 * @generated
+	 */
+	EClass getIValueSpecification();
+
+	/**
+	 * Returns the meta object for class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IVariable <em>IVariable</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for class '<em>IVariable</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IVariable
+	 * @generated
+	 */
+	EClass getIVariable();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IVariable#getIsOrdered <em>Is Ordered</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Is Ordered</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IVariable#getIsOrdered()
+	 * @see #getIVariable()
+	 * @generated
+	 */
+	EAttribute getIVariable_IsOrdered();
+
+	/**
+	 * Returns the meta object for the containment reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IVariable#getMyTypeOf <em>My Type Of</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference '<em>My Type Of</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IVariable#getMyTypeOf()
+	 * @see #getIVariable()
+	 * @generated
+	 */
+	EReference getIVariable_MyTypeOf();
+
+	/**
+	 * Returns the meta object for class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.InverseType <em>Inverse Type</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for class '<em>Inverse Type</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.InverseType
+	 * @generated
+	 */
+	EClass getInverseType();
+
+	/**
+	 * Returns the meta object for class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ItemsType <em>Items Type</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for class '<em>Items Type</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ItemsType
+	 * @generated
+	 */
+	EClass getItemsType();
+
+	/**
+	 * Returns the meta object for class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ItsLabelType <em>Its Label Type</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for class '<em>Its Label Type</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ItsLabelType
+	 * @generated
+	 */
+	EClass getItsLabelType();
+
+	/**
+	 * Returns the meta object for class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ItsStateChartType <em>Its State Chart Type</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for class '<em>Its State Chart Type</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ItsStateChartType
+	 * @generated
+	 */
+	EClass getItsStateChartType();
+
+	/**
+	 * Returns the meta object for class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ItsTargetType <em>Its Target Type</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for class '<em>Its Target Type</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ItsTargetType
+	 * @generated
+	 */
+	EClass getItsTargetType();
+
+	/**
+	 * Returns the meta object for class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ItsTriggerType <em>Its Trigger Type</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for class '<em>Its Trigger Type</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ItsTriggerType
+	 * @generated
+	 */
+	EClass getItsTriggerType();
+
+	/**
+	 * Returns the meta object for the attribute list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ItsTriggerType#getModifiedTimeWeak <em>Modified Time Weak</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute list '<em>Modified Time Weak</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ItsTriggerType#getModifiedTimeWeak()
+	 * @see #getItsTriggerType()
+	 * @generated
+	 */
+	EAttribute getItsTriggerType_ModifiedTimeWeak();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ItsTriggerType#getId <em>Id</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Id</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ItsTriggerType#getId()
+	 * @see #getItsTriggerType()
+	 * @generated
+	 */
+	EAttribute getItsTriggerType_Id();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ItsTriggerType#getInfo <em>Info</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Info</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ItsTriggerType#getInfo()
+	 * @see #getItsTriggerType()
+	 * @generated
+	 */
+	EAttribute getItsTriggerType_Info();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ItsTriggerType#getUmlDependencyID <em>Uml Dependency ID</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Uml Dependency ID</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ItsTriggerType#getUmlDependencyID()
+	 * @see #getItsTriggerType()
+	 * @generated
+	 */
+	EAttribute getItsTriggerType_UmlDependencyID();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ItsTriggerType#getMyState <em>My State</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>My State</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ItsTriggerType#getMyState()
+	 * @see #getItsTriggerType()
+	 * @generated
+	 */
+	EAttribute getItsTriggerType_MyState();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ItsTriggerType#getObjectCreation <em>Object Creation</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Object Creation</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ItsTriggerType#getObjectCreation()
+	 * @see #getItsTriggerType()
+	 * @generated
+	 */
+	EAttribute getItsTriggerType_ObjectCreation();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ItsTriggerType#getBody <em>Body</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Body</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ItsTriggerType#getBody()
+	 * @see #getItsTriggerType()
+	 * @generated
+	 */
+	EAttribute getItsTriggerType_Body();
+
+	/**
+	 * Returns the meta object for class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.LinksType <em>Links Type</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for class '<em>Links Type</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.LinksType
+	 * @generated
+	 */
+	EClass getLinksType();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.LinksType#getId <em>Id</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Id</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.LinksType#getId()
+	 * @see #getLinksType()
+	 * @generated
+	 */
+	EAttribute getLinksType_Id();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.LinksType#getMultiplicity <em>Multiplicity</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Multiplicity</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.LinksType#getMultiplicity()
+	 * @see #getLinksType()
+	 * @generated
+	 */
+	EAttribute getLinksType_Multiplicity();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.LinksType#getName <em>Name</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Name</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.LinksType#getName()
+	 * @see #getLinksType()
+	 * @generated
+	 */
+	EAttribute getLinksType_Name();
+
+	/**
+	 * Returns the meta object for the containment reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.LinksType#getOtherClass <em>Other Class</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference '<em>Other Class</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.LinksType#getOtherClass()
+	 * @see #getLinksType()
+	 * @generated
+	 */
+	EReference getLinksType_OtherClass();
+
+	/**
+	 * Returns the meta object for class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.M_hTargetType <em>MhTarget Type</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for class '<em>MhTarget Type</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.M_hTargetType
+	 * @generated
+	 */
+	EClass getM_hTargetType();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.M_hTargetType#getRequiremenTracabilityHandle <em>Requiremen Tracability Handle</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Requiremen Tracability Handle</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.M_hTargetType#getRequiremenTracabilityHandle()
+	 * @see #getM_hTargetType()
+	 * @generated
+	 */
+	EAttribute getM_hTargetType_RequiremenTracabilityHandle();
+
+	/**
+	 * Returns the meta object for the containment reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.M_hTargetType#getDescription <em>Description</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference '<em>Description</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.M_hTargetType#getDescription()
+	 * @see #getM_hTargetType()
+	 * @generated
+	 */
+	EReference getM_hTargetType_Description();
+
+	/**
+	 * Returns the meta object for the containment reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.M_hTargetType#getProperties <em>Properties</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference '<em>Properties</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.M_hTargetType#getProperties()
+	 * @see #getM_hTargetType()
+	 * @generated
+	 */
+	EReference getM_hTargetType_Properties();
+
+	/**
+	 * Returns the meta object for class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.M_pBaseType <em>MpBase Type</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for class '<em>MpBase Type</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.M_pBaseType
+	 * @generated
+	 */
+	EClass getM_pBaseType();
+
+	/**
+	 * Returns the meta object for class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.M_pFormalMessageType <em>MpFormal Message Type</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for class '<em>MpFormal Message Type</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.M_pFormalMessageType
+	 * @generated
+	 */
+	EClass getM_pFormalMessageType();
+
+	/**
+	 * Returns the meta object for class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.M_pModelObjectType <em>MpModel Object Type</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for class '<em>MpModel Object Type</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.M_pModelObjectType
+	 * @generated
+	 */
+	EClass getM_pModelObjectType();
+
+	/**
+	 * Returns the meta object for class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.M_pRootType <em>MpRoot Type</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for class '<em>MpRoot Type</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.M_pRootType
+	 * @generated
+	 */
+	EClass getM_pRootType();
+
+	/**
+	 * Returns the meta object for class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.M_subjectType <em>Msubject Type</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for class '<em>Msubject Type</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.M_subjectType
+	 * @generated
+	 */
+	EClass getM_subjectType();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.M_subjectType#getUmlDependencyID <em>Uml Dependency ID</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Uml Dependency ID</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.M_subjectType#getUmlDependencyID()
+	 * @see #getM_subjectType()
+	 * @generated
+	 */
+	EAttribute getM_subjectType_UmlDependencyID();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.M_subjectType#getObjectCreation <em>Object Creation</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Object Creation</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.M_subjectType#getObjectCreation()
+	 * @see #getM_subjectType()
+	 * @generated
+	 */
+	EAttribute getM_subjectType_ObjectCreation();
+
+	/**
+	 * Returns the meta object for class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.MatrixInstancesType <em>Matrix Instances Type</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for class '<em>Matrix Instances Type</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.MatrixInstancesType
+	 * @generated
+	 */
+	EClass getMatrixInstancesType();
+
+	/**
+	 * Returns the meta object for class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.NestedStateChartType <em>Nested State Chart Type</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for class '<em>Nested State Chart Type</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.NestedStateChartType
+	 * @generated
+	 */
+	EClass getNestedStateChartType();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.NestedStateChartType#getDefNumber <em>Def Number</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Def Number</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.NestedStateChartType#getDefNumber()
+	 * @see #getNestedStateChartType()
+	 * @generated
+	 */
+	EAttribute getNestedStateChartType_DefNumber();
+
+	/**
+	 * Returns the meta object for the containment reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.NestedStateChartType#getGraphicChart <em>Graphic Chart</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference '<em>Graphic Chart</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.NestedStateChartType#getGraphicChart()
+	 * @see #getNestedStateChartType()
+	 * @generated
+	 */
+	EReference getNestedStateChartType_GraphicChart();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.NestedStateChartType#getLastModifiedTime <em>Last Modified Time</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Last Modified Time</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.NestedStateChartType#getLastModifiedTime()
+	 * @see #getNestedStateChartType()
+	 * @generated
+	 */
+	EAttribute getNestedStateChartType_LastModifiedTime();
+
+	/**
+	 * Returns the meta object for the containment reference list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.NestedStateChartType#getTransitions <em>Transitions</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference list '<em>Transitions</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.NestedStateChartType#getTransitions()
+	 * @see #getNestedStateChartType()
+	 * @generated
+	 */
+	EReference getNestedStateChartType_Transitions();
+
+	/**
+	 * Returns the meta object for the containment reference list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.NestedStateChartType#getConnectors <em>Connectors</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference list '<em>Connectors</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.NestedStateChartType#getConnectors()
+	 * @see #getNestedStateChartType()
+	 * @generated
+	 */
+	EReference getNestedStateChartType_Connectors();
+
+	/**
+	 * Returns the meta object for the attribute list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.NestedStateChartType#getVersion <em>Version</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute list '<em>Version</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.NestedStateChartType#getVersion()
+	 * @see #getNestedStateChartType()
+	 * @generated
+	 */
+	EAttribute getNestedStateChartType_Version();
+
+	/**
+	 * Returns the meta object for class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ObjectLinksType <em>Object Links Type</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for class '<em>Object Links Type</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ObjectLinksType
+	 * @generated
+	 */
+	EClass getObjectLinksType();
+
+	/**
+	 * Returns the meta object for class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.OperationsType <em>Operations Type</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for class '<em>Operations Type</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.OperationsType
+	 * @generated
+	 */
+	EClass getOperationsType();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.OperationsType#getVirtual <em>Virtual</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Virtual</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.OperationsType#getVirtual()
+	 * @see #getOperationsType()
+	 * @generated
+	 */
+	EAttribute getOperationsType_Virtual();
+
+	/**
+	 * Returns the meta object for class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.OwnerHandleType <em>Owner Handle Type</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for class '<em>Owner Handle Type</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.OwnerHandleType
+	 * @generated
+	 */
+	EClass getOwnerHandleType();
+
+	/**
+	 * Returns the meta object for the attribute list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.OwnerHandleType#getWeakCGTime <em>Weak CG Time</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute list '<em>Weak CG Time</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.OwnerHandleType#getWeakCGTime()
+	 * @see #getOwnerHandleType()
+	 * @generated
+	 */
+	EAttribute getOwnerHandleType_WeakCGTime();
+
+	/**
+	 * Returns the meta object for the attribute list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.OwnerHandleType#getStrongCGTime <em>Strong CG Time</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute list '<em>Strong CG Time</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.OwnerHandleType#getStrongCGTime()
+	 * @see #getOwnerHandleType()
+	 * @generated
+	 */
+	EAttribute getOwnerHandleType_StrongCGTime();
+
+	/**
+	 * Returns the meta object for class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.P_MessageHandlerType <em>PMessage Handler Type</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for class '<em>PMessage Handler Type</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.P_MessageHandlerType
+	 * @generated
+	 */
+	EClass getP_MessageHandlerType();
+
+	/**
+	 * Returns the meta object for class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ParentType <em>Parent Type</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for class '<em>Parent Type</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ParentType
+	 * @generated
+	 */
+	EClass getParentType();
+
+	/**
+	 * Returns the meta object for class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.PropertiesType <em>Properties Type</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for class '<em>Properties Type</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.PropertiesType
+	 * @generated
+	 */
+	EClass getPropertiesType();
+
+	/**
+	 * Returns the meta object for class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.TableDataDefinition <em>Table Data Definition</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for class '<em>Table Data Definition</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.TableDataDefinition
+	 * @generated
+	 */
+	EClass getTableDataDefinition();
+
+	/**
+	 * Returns the meta object for the reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.TableDataDefinition#getMyTable <em>My Table</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the reference '<em>My Table</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.TableDataDefinition#getMyTable()
+	 * @see #getTableDataDefinition()
+	 * @generated
+	 */
+	EReference getTableDataDefinition_MyTable();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.TableDataDefinition#getName <em>Name</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Name</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.TableDataDefinition#getName()
+	 * @see #getTableDataDefinition()
+	 * @generated
+	 */
+	EAttribute getTableDataDefinition_Name();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.TableDataDefinition#getDataType <em>Data Type</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Data Type</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.TableDataDefinition#getDataType()
+	 * @see #getTableDataDefinition()
+	 * @generated
+	 */
+	EAttribute getTableDataDefinition_DataType();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.TableDataDefinition#getColumnName <em>Column Name</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Column Name</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.TableDataDefinition#getColumnName()
+	 * @see #getTableDataDefinition()
+	 * @generated
+	 */
+	EAttribute getTableDataDefinition_ColumnName();
+
+	/**
+	 * Returns the meta object for the reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.TableDataDefinition#getModelElement <em>Model Element</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the reference '<em>Model Element</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.TableDataDefinition#getModelElement()
+	 * @see #getTableDataDefinition()
+	 * @generated
+	 */
+	EReference getTableDataDefinition_ModelElement();
+
+	/**
+	 * Returns the meta object for class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.TableInstancesType <em>Table Instances Type</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for class '<em>Table Instances Type</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.TableInstancesType
+	 * @generated
+	 */
+	EClass getTableInstancesType();
+
+	/**
+	 * Returns the meta object for class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.TargetType <em>Target Type</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for class '<em>Target Type</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.TargetType
+	 * @generated
+	 */
+	EClass getTargetType();
+
+	/**
+	 * Returns the meta object for class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.TheMainDiagramType <em>The Main Diagram Type</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for class '<em>The Main Diagram Type</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.TheMainDiagramType
+	 * @generated
+	 */
+	EClass getTheMainDiagramType();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.TheMainDiagramType#getId <em>Id</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Id</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.TheMainDiagramType#getId()
+	 * @see #getTheMainDiagramType()
+	 * @generated
+	 */
+	EAttribute getTheMainDiagramType_Id();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.TheMainDiagramType#getLastModifiedTime <em>Last Modified Time</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Last Modified Time</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.TheMainDiagramType#getLastModifiedTime()
+	 * @see #getTheMainDiagramType()
+	 * @generated
+	 */
+	EAttribute getTheMainDiagramType_LastModifiedTime();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.TheMainDiagramType#getRequiremenTracabilityHandle <em>Requiremen Tracability Handle</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Requiremen Tracability Handle</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.TheMainDiagramType#getRequiremenTracabilityHandle()
+	 * @see #getTheMainDiagramType()
+	 * @generated
+	 */
+	EAttribute getTheMainDiagramType_RequiremenTracabilityHandle();
+
+	/**
+	 * Returns the meta object for the reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.TheMainDiagramType#getDefaultSubsystem <em>Default Subsystem</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the reference '<em>Default Subsystem</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.TheMainDiagramType#getDefaultSubsystem()
+	 * @see #getTheMainDiagramType()
+	 * @generated
+	 */
+	EReference getTheMainDiagramType_DefaultSubsystem();
+
+	/**
+	 * Returns the meta object for the containment reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.TheMainDiagramType#getDescription <em>Description</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference '<em>Description</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.TheMainDiagramType#getDescription()
+	 * @see #getTheMainDiagramType()
+	 * @generated
+	 */
+	EReference getTheMainDiagramType_Description();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.TheMainDiagramType#getUmlDependencyID <em>Uml Dependency ID</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Uml Dependency ID</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.TheMainDiagramType#getUmlDependencyID()
+	 * @see #getTheMainDiagramType()
+	 * @generated
+	 */
+	EAttribute getTheMainDiagramType_UmlDependencyID();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.TheMainDiagramType#getLastID <em>Last ID</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Last ID</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.TheMainDiagramType#getLastID()
+	 * @see #getTheMainDiagramType()
+	 * @generated
+	 */
+	EAttribute getTheMainDiagramType_LastID();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.TheMainDiagramType#getMyState <em>My State</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>My State</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.TheMainDiagramType#getMyState()
+	 * @see #getTheMainDiagramType()
+	 * @generated
+	 */
+	EAttribute getTheMainDiagramType_MyState();
+
+	/**
+	 * Returns the meta object for the reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.TheMainDiagramType#getOwnerHandle <em>Owner Handle</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the reference '<em>Owner Handle</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.TheMainDiagramType#getOwnerHandle()
+	 * @see #getTheMainDiagramType()
+	 * @generated
+	 */
+	EReference getTheMainDiagramType_OwnerHandle();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.TheMainDiagramType#getObjectCreation <em>Object Creation</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Object Creation</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.TheMainDiagramType#getObjectCreation()
+	 * @see #getTheMainDiagramType()
+	 * @generated
+	 */
+	EAttribute getTheMainDiagramType_ObjectCreation();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.TheMainDiagramType#getName <em>Name</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Name</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.TheMainDiagramType#getName()
+	 * @see #getTheMainDiagramType()
+	 * @generated
+	 */
+	EAttribute getTheMainDiagramType_Name();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.TheMainDiagramType#getCmheader <em>Cmheader</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Cmheader</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.TheMainDiagramType#getCmheader()
+	 * @see #getTheMainDiagramType()
+	 * @generated
+	 */
+	EAttribute getTheMainDiagramType_Cmheader();
+
+	/**
+	 * Returns the meta object for class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ToLinkType <em>To Link Type</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for class '<em>To Link Type</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ToLinkType
+	 * @generated
+	 */
+	EClass getToLinkType();
+
+	/**
+	 * Returns the meta object for the containment reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ToLinkType#getImplicitClass <em>Implicit Class</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference '<em>Implicit Class</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ToLinkType#getImplicitClass()
+	 * @see #getToLinkType()
+	 * @generated
+	 */
+	EReference getToLinkType_ImplicitClass();
+
+	/**
+	 * Returns the meta object for class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.TransitionsType <em>Transitions Type</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for class '<em>Transitions Type</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.TransitionsType
+	 * @generated
+	 */
+	EClass getTransitionsType();
+
+	/**
+	 * Returns the meta object for the attribute list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.TransitionsType#getModifiedTimeWeak <em>Modified Time Weak</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute list '<em>Modified Time Weak</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.TransitionsType#getModifiedTimeWeak()
+	 * @see #getTransitionsType()
+	 * @generated
+	 */
+	EAttribute getTransitionsType_ModifiedTimeWeak();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.TransitionsType#getStaticReaction <em>Static Reaction</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Static Reaction</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.TransitionsType#getStaticReaction()
+	 * @see #getTransitionsType()
+	 * @generated
+	 */
+	EAttribute getTransitionsType_StaticReaction();
+
+	/**
+	 * Returns the meta object for the reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.TransitionsType#getItsTarget <em>Its Target</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the reference '<em>Its Target</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.TransitionsType#getItsTarget()
+	 * @see #getTransitionsType()
+	 * @generated
+	 */
+	EReference getTransitionsType_ItsTarget();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.TransitionsType#getId <em>Id</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Id</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.TransitionsType#getId()
+	 * @see #getTransitionsType()
+	 * @generated
+	 */
+	EAttribute getTransitionsType_Id();
+
+	/**
+	 * Returns the meta object for the attribute list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.TransitionsType#getCodeUpdateCGTime <em>Code Update CG Time</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute list '<em>Code Update CG Time</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.TransitionsType#getCodeUpdateCGTime()
+	 * @see #getTransitionsType()
+	 * @generated
+	 */
+	EAttribute getTransitionsType_CodeUpdateCGTime();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.TransitionsType#getRequiremenTracabilityHandle <em>Requiremen Tracability Handle</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Requiremen Tracability Handle</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.TransitionsType#getRequiremenTracabilityHandle()
+	 * @see #getTransitionsType()
+	 * @generated
+	 */
+	EAttribute getTransitionsType_RequiremenTracabilityHandle();
+
+	/**
+	 * Returns the meta object for the containment reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.TransitionsType#getDescription <em>Description</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference '<em>Description</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.TransitionsType#getDescription()
+	 * @see #getTransitionsType()
+	 * @generated
+	 */
+	EReference getTransitionsType_Description();
+
+	/**
+	 * Returns the meta object for the containment reference '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.TransitionsType#getItsLabel <em>Its Label</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference '<em>Its Label</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.TransitionsType#getItsLabel()
+	 * @see #getTransitionsType()
+	 * @generated
+	 */
+	EReference getTransitionsType_ItsLabel();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.TransitionsType#getUmlDependencyID <em>Uml Dependency ID</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Uml Dependency ID</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.TransitionsType#getUmlDependencyID()
+	 * @see #getTransitionsType()
+	 * @generated
+	 */
+	EAttribute getTransitionsType_UmlDependencyID();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.TransitionsType#getMyState <em>My State</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>My State</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.TransitionsType#getMyState()
+	 * @see #getTransitionsType()
+	 * @generated
+	 */
+	EAttribute getTransitionsType_MyState();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.TransitionsType#getObjectCreation <em>Object Creation</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Object Creation</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.TransitionsType#getObjectCreation()
+	 * @see #getTransitionsType()
+	 * @generated
+	 */
+	EAttribute getTransitionsType_ObjectCreation();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.TransitionsType#getName <em>Name</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Name</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.TransitionsType#getName()
+	 * @see #getTransitionsType()
+	 * @generated
+	 */
+	EAttribute getTransitionsType_Name();
+
+	/**
+	 * Returns the meta object for class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UnknownType <em>Unknown Type</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for class '<em>Unknown Type</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UnknownType
+	 * @generated
+	 */
+	EClass getUnknownType();
+
+	/**
+	 * Returns the meta object for class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ValueType <em>Value Type</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for class '<em>Value Type</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ValueType
+	 * @generated
+	 */
+	EClass getValueType();
+
+	/**
+	 * Returns the meta object for the attribute list '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ValueType#getModifiedTimeWeak <em>Modified Time Weak</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute list '<em>Modified Time Weak</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ValueType#getModifiedTimeWeak()
+	 * @see #getValueType()
+	 * @generated
+	 */
+	EAttribute getValueType_ModifiedTimeWeak();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ValueType#getId <em>Id</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Id</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ValueType#getId()
+	 * @see #getValueType()
+	 * @generated
+	 */
+	EAttribute getValueType_Id();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ValueType#getMyState <em>My State</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>My State</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ValueType#getMyState()
+	 * @see #getValueType()
+	 * @generated
+	 */
+	EAttribute getValueType_MyState();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ValueType#getName <em>Name</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Name</em>'.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ValueType#getName()
+	 * @see #getValueType()
+	 * @generated
+	 */
+	EAttribute getValueType_Name();
+
+	/**
+	 * Returns the factory that creates the instances of the model.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the factory that creates the instances of the model.
+	 * @generated
+	 */
+	UMLRpyFactory getUMLRpyFactory();
+
+} //UMLRpyPackage
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/UnknownType.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/UnknownType.java
new file mode 100755
index 0000000..ba6ca41
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/UnknownType.java
@@ -0,0 +1,28 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel;
+
+import org.eclipse.emf.ecore.EObject;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Unknown Type</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ *
+ * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getUnknownType()
+ * @model
+ * @generated
+ */
+public interface UnknownType extends EObject {
+} // UnknownType
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/ValueType.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/ValueType.java
new file mode 100755
index 0000000..dfc3aa1
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/ValueType.java
@@ -0,0 +1,133 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel;
+
+import org.eclipse.emf.common.util.EList;
+
+import org.eclipse.emf.ecore.EObject;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Value Type</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * </p>
+ * <ul>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ValueType#getModifiedTimeWeak <em>Modified Time Weak</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ValueType#getId <em>Id</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ValueType#getMyState <em>My State</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ValueType#getName <em>Name</em>}</li>
+ * </ul>
+ *
+ * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getValueType()
+ * @model abstract="true"
+ * @generated
+ */
+public interface ValueType extends EObject {
+	/**
+	 * Returns the value of the '<em><b>Modified Time Weak</b></em>' attribute list.
+	 * The list contents are of type {@link java.lang.String}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Modified Time Weak</em>' attribute list isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Modified Time Weak</em>' attribute list.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getValueType_ModifiedTimeWeak()
+	 * @model unique="false"
+	 * @generated
+	 */
+	EList<String> getModifiedTimeWeak();
+
+	/**
+	 * Returns the value of the '<em><b>Id</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Id</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Id</em>' attribute.
+	 * @see #setId(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getValueType_Id()
+	 * @model
+	 * @generated
+	 */
+	String getId();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ValueType#getId <em>Id</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Id</em>' attribute.
+	 * @see #getId()
+	 * @generated
+	 */
+	void setId(String value);
+
+	/**
+	 * Returns the value of the '<em><b>My State</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>My State</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>My State</em>' attribute.
+	 * @see #setMyState(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getValueType_MyState()
+	 * @model
+	 * @generated
+	 */
+	String getMyState();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ValueType#getMyState <em>My State</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>My State</em>' attribute.
+	 * @see #getMyState()
+	 * @generated
+	 */
+	void setMyState(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Name</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Name</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Name</em>' attribute.
+	 * @see #setName(String)
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#getValueType_Name()
+	 * @model
+	 * @generated
+	 */
+	String getName();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ValueType#getName <em>Name</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Name</em>' attribute.
+	 * @see #getName()
+	 * @generated
+	 */
+	void setName(String value);
+
+} // ValueType
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/AssociationsTypeImpl.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/AssociationsTypeImpl.java
new file mode 100755
index 0000000..06f14e8
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/AssociationsTypeImpl.java
@@ -0,0 +1,47 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl;
+
+import org.eclipse.emf.ecore.EClass;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.AssociationsType;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Associations Type</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+public abstract class AssociationsTypeImpl extends InverseTypeImpl implements AssociationsType {
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected AssociationsTypeImpl() {
+		super();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EClass eStaticClass() {
+		return UMLRpyPackage.eINSTANCE.getAssociationsType();
+	}
+
+} //AssociationsTypeImpl
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/CCollaborationChartImpl.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/CCollaborationChartImpl.java
new file mode 100755
index 0000000..3a42544
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/CCollaborationChartImpl.java
@@ -0,0 +1,227 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.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.interoperability.rpy.rpymetamodel.CCollaborationChart;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIBox;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ICollaboration;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>CCollaboration Chart</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * </p>
+ * <ul>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CCollaborationChartImpl#getM_pModelObject <em>MpModel Object</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CCollaborationChartImpl#getM_pRoot <em>MpRoot</em>}</li>
+ * </ul>
+ *
+ * @generated
+ */
+public class CCollaborationChartImpl extends GraphicChartTypeImpl implements CCollaborationChart {
+	/**
+	 * The cached value of the '{@link #getM_pModelObject() <em>MpModel Object</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_pModelObject()
+	 * @generated
+	 * @ordered
+	 */
+	protected ICollaboration m_pModelObject;
+
+	/**
+	 * The cached value of the '{@link #getM_pRoot() <em>MpRoot</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_pRoot()
+	 * @generated
+	 * @ordered
+	 */
+	protected CGIBox m_pRoot;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected CCollaborationChartImpl() {
+		super();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EClass eStaticClass() {
+		return UMLRpyPackage.eINSTANCE.getCCollaborationChart();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public ICollaboration getM_pModelObject() {
+		if (m_pModelObject != null && m_pModelObject.eIsProxy()) {
+			InternalEObject oldM_pModelObject = (InternalEObject)m_pModelObject;
+			m_pModelObject = (ICollaboration)eResolveProxy(oldM_pModelObject);
+			if (m_pModelObject != oldM_pModelObject) {
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.CCOLLABORATION_CHART__MPMODEL_OBJECT, oldM_pModelObject, m_pModelObject));
+			}
+		}
+		return m_pModelObject;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public ICollaboration basicGetM_pModelObject() {
+		return m_pModelObject;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_pModelObject(ICollaboration newM_pModelObject) {
+		ICollaboration oldM_pModelObject = m_pModelObject;
+		m_pModelObject = newM_pModelObject;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CCOLLABORATION_CHART__MPMODEL_OBJECT, oldM_pModelObject, m_pModelObject));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public CGIBox getM_pRoot() {
+		if (m_pRoot != null && m_pRoot.eIsProxy()) {
+			InternalEObject oldM_pRoot = (InternalEObject)m_pRoot;
+			m_pRoot = (CGIBox)eResolveProxy(oldM_pRoot);
+			if (m_pRoot != oldM_pRoot) {
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.CCOLLABORATION_CHART__MPROOT, oldM_pRoot, m_pRoot));
+			}
+		}
+		return m_pRoot;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public CGIBox basicGetM_pRoot() {
+		return m_pRoot;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_pRoot(CGIBox newM_pRoot) {
+		CGIBox oldM_pRoot = m_pRoot;
+		m_pRoot = newM_pRoot;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CCOLLABORATION_CHART__MPROOT, oldM_pRoot, m_pRoot));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object eGet(int featureID, boolean resolve, boolean coreType) {
+		switch (featureID) {
+			case UMLRpyPackage.CCOLLABORATION_CHART__MPMODEL_OBJECT:
+				if (resolve) return getM_pModelObject();
+				return basicGetM_pModelObject();
+			case UMLRpyPackage.CCOLLABORATION_CHART__MPROOT:
+				if (resolve) return getM_pRoot();
+				return basicGetM_pRoot();
+		}
+		return super.eGet(featureID, resolve, coreType);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void eSet(int featureID, Object newValue) {
+		switch (featureID) {
+			case UMLRpyPackage.CCOLLABORATION_CHART__MPMODEL_OBJECT:
+				setM_pModelObject((ICollaboration)newValue);
+				return;
+			case UMLRpyPackage.CCOLLABORATION_CHART__MPROOT:
+				setM_pRoot((CGIBox)newValue);
+				return;
+		}
+		super.eSet(featureID, newValue);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void eUnset(int featureID) {
+		switch (featureID) {
+			case UMLRpyPackage.CCOLLABORATION_CHART__MPMODEL_OBJECT:
+				setM_pModelObject((ICollaboration)null);
+				return;
+			case UMLRpyPackage.CCOLLABORATION_CHART__MPROOT:
+				setM_pRoot((CGIBox)null);
+				return;
+		}
+		super.eUnset(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public boolean eIsSet(int featureID) {
+		switch (featureID) {
+			case UMLRpyPackage.CCOLLABORATION_CHART__MPMODEL_OBJECT:
+				return m_pModelObject != null;
+			case UMLRpyPackage.CCOLLABORATION_CHART__MPROOT:
+				return m_pRoot != null;
+		}
+		return super.eIsSet(featureID);
+	}
+
+} //CCollaborationChartImpl
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/CGIActionStateImpl.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/CGIActionStateImpl.java
new file mode 100755
index 0000000..a0773ac
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/CGIActionStateImpl.java
@@ -0,0 +1,1017 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl;
+
+import java.util.Collection;
+
+import org.eclipse.emf.common.notify.Notification;
+import org.eclipse.emf.common.notify.NotificationChain;
+
+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.EDataTypeEList;
+import org.eclipse.emf.ecore.util.EObjectResolvingEList;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIActionState;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIText;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.GraphElementsType;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IPropertyContainer;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IStateVertex;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UnknownType;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>CGI Action State</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * </p>
+ * <ul>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIActionStateImpl#getProperties <em>Properties</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIActionStateImpl#getM_pModelObject <em>MpModel Object</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIActionStateImpl#getM_pParent <em>MpParent</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIActionStateImpl#getM_transform <em>Mtransform</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIActionStateImpl#getM_AdditionalLabel <em>MAdditional Label</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIActionStateImpl#getM_polygon <em>Mpolygon</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIActionStateImpl#getM_nNameFormat <em>MnName Format</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIActionStateImpl#getM_nIsNameFormat <em>MnIs Name Format</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIActionStateImpl#getCompartments <em>Compartments</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIActionStateImpl#getNAndLineCount <em>NAnd Line Count</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIActionStateImpl#getM_pInheritsFrom <em>MpInherits From</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIActionStateImpl#getM_nInheritanceMask <em>MnInheritance Mask</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIActionStateImpl#getM_pDefaultComponentRelation <em>MpDefault Component Relation</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIActionStateImpl#getM_NameDisplayMode <em>MName Display Mode</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIActionStateImpl#getM_ActDescLablDiaplayMode <em>MAct Desc Labl Diaplay Mode</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIActionStateImpl#getM_moveAndLineTimeStamp <em>Mmove And Line Time Stamp</em>}</li>
+ * </ul>
+ *
+ * @generated
+ */
+public class CGIActionStateImpl extends GraphElementsTypeImpl implements CGIActionState {
+	/**
+	 * The cached value of the '{@link #getProperties() <em>Properties</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getProperties()
+	 * @generated
+	 * @ordered
+	 */
+	protected IPropertyContainer properties;
+
+	/**
+	 * The cached value of the '{@link #getM_pModelObject() <em>MpModel Object</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_pModelObject()
+	 * @generated
+	 * @ordered
+	 */
+	protected IStateVertex m_pModelObject;
+
+	/**
+	 * The cached value of the '{@link #getM_pParent() <em>MpParent</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_pParent()
+	 * @generated
+	 * @ordered
+	 */
+	protected GraphElementsType m_pParent;
+
+	/**
+	 * The cached value of the '{@link #getM_transform() <em>Mtransform</em>}' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_transform()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<String> m_transform;
+
+	/**
+	 * The cached value of the '{@link #getM_AdditionalLabel() <em>MAdditional Label</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_AdditionalLabel()
+	 * @generated
+	 * @ordered
+	 */
+	protected CGIText m_AdditionalLabel;
+
+	/**
+	 * The cached value of the '{@link #getM_polygon() <em>Mpolygon</em>}' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_polygon()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<String> m_polygon;
+
+	/**
+	 * The default value of the '{@link #getM_nNameFormat() <em>MnName Format</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_nNameFormat()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String MNNAME_FORMAT_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getM_nNameFormat() <em>MnName Format</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_nNameFormat()
+	 * @generated
+	 * @ordered
+	 */
+	protected String m_nNameFormat = MNNAME_FORMAT_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getM_nIsNameFormat() <em>MnIs Name Format</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_nIsNameFormat()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String MNIS_NAME_FORMAT_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getM_nIsNameFormat() <em>MnIs Name Format</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_nIsNameFormat()
+	 * @generated
+	 * @ordered
+	 */
+	protected String m_nIsNameFormat = MNIS_NAME_FORMAT_EDEFAULT;
+
+	/**
+	 * The cached value of the '{@link #getCompartments() <em>Compartments</em>}' reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getCompartments()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<UnknownType> compartments;
+
+	/**
+	 * The default value of the '{@link #getNAndLineCount() <em>NAnd Line Count</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getNAndLineCount()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String NAND_LINE_COUNT_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getNAndLineCount() <em>NAnd Line Count</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getNAndLineCount()
+	 * @generated
+	 * @ordered
+	 */
+	protected String nAndLineCount = NAND_LINE_COUNT_EDEFAULT;
+
+	/**
+	 * The cached value of the '{@link #getM_pInheritsFrom() <em>MpInherits From</em>}' reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_pInheritsFrom()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<UnknownType> m_pInheritsFrom;
+
+	/**
+	 * The default value of the '{@link #getM_nInheritanceMask() <em>MnInheritance Mask</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_nInheritanceMask()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String MNINHERITANCE_MASK_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getM_nInheritanceMask() <em>MnInheritance Mask</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_nInheritanceMask()
+	 * @generated
+	 * @ordered
+	 */
+	protected String m_nInheritanceMask = MNINHERITANCE_MASK_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getM_pDefaultComponentRelation() <em>MpDefault Component Relation</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_pDefaultComponentRelation()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String MPDEFAULT_COMPONENT_RELATION_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getM_pDefaultComponentRelation() <em>MpDefault Component Relation</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_pDefaultComponentRelation()
+	 * @generated
+	 * @ordered
+	 */
+	protected String m_pDefaultComponentRelation = MPDEFAULT_COMPONENT_RELATION_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getM_NameDisplayMode() <em>MName Display Mode</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_NameDisplayMode()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String MNAME_DISPLAY_MODE_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getM_NameDisplayMode() <em>MName Display Mode</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_NameDisplayMode()
+	 * @generated
+	 * @ordered
+	 */
+	protected String m_NameDisplayMode = MNAME_DISPLAY_MODE_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getM_ActDescLablDiaplayMode() <em>MAct Desc Labl Diaplay Mode</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_ActDescLablDiaplayMode()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String MACT_DESC_LABL_DIAPLAY_MODE_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getM_ActDescLablDiaplayMode() <em>MAct Desc Labl Diaplay Mode</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_ActDescLablDiaplayMode()
+	 * @generated
+	 * @ordered
+	 */
+	protected String m_ActDescLablDiaplayMode = MACT_DESC_LABL_DIAPLAY_MODE_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getM_moveAndLineTimeStamp() <em>Mmove And Line Time Stamp</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_moveAndLineTimeStamp()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String MMOVE_AND_LINE_TIME_STAMP_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getM_moveAndLineTimeStamp() <em>Mmove And Line Time Stamp</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_moveAndLineTimeStamp()
+	 * @generated
+	 * @ordered
+	 */
+	protected String m_moveAndLineTimeStamp = MMOVE_AND_LINE_TIME_STAMP_EDEFAULT;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected CGIActionStateImpl() {
+		super();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EClass eStaticClass() {
+		return UMLRpyPackage.eINSTANCE.getCGIActionState();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IPropertyContainer getProperties() {
+		if (properties != null && properties.eIsProxy()) {
+			InternalEObject oldProperties = (InternalEObject)properties;
+			properties = (IPropertyContainer)eResolveProxy(oldProperties);
+			if (properties != oldProperties) {
+				InternalEObject newProperties = (InternalEObject)properties;
+				NotificationChain msgs = oldProperties.eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.CGI_ACTION_STATE__PROPERTIES, null, null);
+				if (newProperties.eInternalContainer() == null) {
+					msgs = newProperties.eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.CGI_ACTION_STATE__PROPERTIES, null, msgs);
+				}
+				if (msgs != null) msgs.dispatch();
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.CGI_ACTION_STATE__PROPERTIES, oldProperties, properties));
+			}
+		}
+		return properties;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IPropertyContainer basicGetProperties() {
+		return properties;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public NotificationChain basicSetProperties(IPropertyContainer newProperties, NotificationChain msgs) {
+		IPropertyContainer oldProperties = properties;
+		properties = newProperties;
+		if (eNotificationRequired()) {
+			ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_ACTION_STATE__PROPERTIES, oldProperties, newProperties);
+			if (msgs == null) msgs = notification; else msgs.add(notification);
+		}
+		return msgs;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setProperties(IPropertyContainer newProperties) {
+		if (newProperties != properties) {
+			NotificationChain msgs = null;
+			if (properties != null)
+				msgs = ((InternalEObject)properties).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.CGI_ACTION_STATE__PROPERTIES, null, msgs);
+			if (newProperties != null)
+				msgs = ((InternalEObject)newProperties).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.CGI_ACTION_STATE__PROPERTIES, null, msgs);
+			msgs = basicSetProperties(newProperties, msgs);
+			if (msgs != null) msgs.dispatch();
+		}
+		else if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_ACTION_STATE__PROPERTIES, newProperties, newProperties));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IStateVertex getM_pModelObject() {
+		if (m_pModelObject != null && m_pModelObject.eIsProxy()) {
+			InternalEObject oldM_pModelObject = (InternalEObject)m_pModelObject;
+			m_pModelObject = (IStateVertex)eResolveProxy(oldM_pModelObject);
+			if (m_pModelObject != oldM_pModelObject) {
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.CGI_ACTION_STATE__MPMODEL_OBJECT, oldM_pModelObject, m_pModelObject));
+			}
+		}
+		return m_pModelObject;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IStateVertex basicGetM_pModelObject() {
+		return m_pModelObject;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_pModelObject(IStateVertex newM_pModelObject) {
+		IStateVertex oldM_pModelObject = m_pModelObject;
+		m_pModelObject = newM_pModelObject;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_ACTION_STATE__MPMODEL_OBJECT, oldM_pModelObject, m_pModelObject));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public GraphElementsType getM_pParent() {
+		if (m_pParent != null && m_pParent.eIsProxy()) {
+			InternalEObject oldM_pParent = (InternalEObject)m_pParent;
+			m_pParent = (GraphElementsType)eResolveProxy(oldM_pParent);
+			if (m_pParent != oldM_pParent) {
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.CGI_ACTION_STATE__MPPARENT, oldM_pParent, m_pParent));
+			}
+		}
+		return m_pParent;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public GraphElementsType basicGetM_pParent() {
+		return m_pParent;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_pParent(GraphElementsType newM_pParent) {
+		GraphElementsType oldM_pParent = m_pParent;
+		m_pParent = newM_pParent;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_ACTION_STATE__MPPARENT, oldM_pParent, m_pParent));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<String> getM_transform() {
+		if (m_transform == null) {
+			m_transform = new EDataTypeEList<String>(String.class, this, UMLRpyPackage.CGI_ACTION_STATE__MTRANSFORM);
+		}
+		return m_transform;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public CGIText getM_AdditionalLabel() {
+		if (m_AdditionalLabel != null && m_AdditionalLabel.eIsProxy()) {
+			InternalEObject oldM_AdditionalLabel = (InternalEObject)m_AdditionalLabel;
+			m_AdditionalLabel = (CGIText)eResolveProxy(oldM_AdditionalLabel);
+			if (m_AdditionalLabel != oldM_AdditionalLabel) {
+				InternalEObject newM_AdditionalLabel = (InternalEObject)m_AdditionalLabel;
+				NotificationChain msgs = oldM_AdditionalLabel.eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.CGI_ACTION_STATE__MADDITIONAL_LABEL, null, null);
+				if (newM_AdditionalLabel.eInternalContainer() == null) {
+					msgs = newM_AdditionalLabel.eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.CGI_ACTION_STATE__MADDITIONAL_LABEL, null, msgs);
+				}
+				if (msgs != null) msgs.dispatch();
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.CGI_ACTION_STATE__MADDITIONAL_LABEL, oldM_AdditionalLabel, m_AdditionalLabel));
+			}
+		}
+		return m_AdditionalLabel;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public CGIText basicGetM_AdditionalLabel() {
+		return m_AdditionalLabel;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public NotificationChain basicSetM_AdditionalLabel(CGIText newM_AdditionalLabel, NotificationChain msgs) {
+		CGIText oldM_AdditionalLabel = m_AdditionalLabel;
+		m_AdditionalLabel = newM_AdditionalLabel;
+		if (eNotificationRequired()) {
+			ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_ACTION_STATE__MADDITIONAL_LABEL, oldM_AdditionalLabel, newM_AdditionalLabel);
+			if (msgs == null) msgs = notification; else msgs.add(notification);
+		}
+		return msgs;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_AdditionalLabel(CGIText newM_AdditionalLabel) {
+		if (newM_AdditionalLabel != m_AdditionalLabel) {
+			NotificationChain msgs = null;
+			if (m_AdditionalLabel != null)
+				msgs = ((InternalEObject)m_AdditionalLabel).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.CGI_ACTION_STATE__MADDITIONAL_LABEL, null, msgs);
+			if (newM_AdditionalLabel != null)
+				msgs = ((InternalEObject)newM_AdditionalLabel).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.CGI_ACTION_STATE__MADDITIONAL_LABEL, null, msgs);
+			msgs = basicSetM_AdditionalLabel(newM_AdditionalLabel, msgs);
+			if (msgs != null) msgs.dispatch();
+		}
+		else if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_ACTION_STATE__MADDITIONAL_LABEL, newM_AdditionalLabel, newM_AdditionalLabel));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<String> getM_polygon() {
+		if (m_polygon == null) {
+			m_polygon = new EDataTypeEList<String>(String.class, this, UMLRpyPackage.CGI_ACTION_STATE__MPOLYGON);
+		}
+		return m_polygon;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getM_nNameFormat() {
+		return m_nNameFormat;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_nNameFormat(String newM_nNameFormat) {
+		String oldM_nNameFormat = m_nNameFormat;
+		m_nNameFormat = newM_nNameFormat;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_ACTION_STATE__MNNAME_FORMAT, oldM_nNameFormat, m_nNameFormat));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getM_nIsNameFormat() {
+		return m_nIsNameFormat;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_nIsNameFormat(String newM_nIsNameFormat) {
+		String oldM_nIsNameFormat = m_nIsNameFormat;
+		m_nIsNameFormat = newM_nIsNameFormat;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_ACTION_STATE__MNIS_NAME_FORMAT, oldM_nIsNameFormat, m_nIsNameFormat));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<UnknownType> getCompartments() {
+		if (compartments == null) {
+			compartments = new EObjectResolvingEList<UnknownType>(UnknownType.class, this, UMLRpyPackage.CGI_ACTION_STATE__COMPARTMENTS);
+		}
+		return compartments;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getNAndLineCount() {
+		return nAndLineCount;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setNAndLineCount(String newNAndLineCount) {
+		String oldNAndLineCount = nAndLineCount;
+		nAndLineCount = newNAndLineCount;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_ACTION_STATE__NAND_LINE_COUNT, oldNAndLineCount, nAndLineCount));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<UnknownType> getM_pInheritsFrom() {
+		if (m_pInheritsFrom == null) {
+			m_pInheritsFrom = new EObjectResolvingEList<UnknownType>(UnknownType.class, this, UMLRpyPackage.CGI_ACTION_STATE__MPINHERITS_FROM);
+		}
+		return m_pInheritsFrom;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getM_nInheritanceMask() {
+		return m_nInheritanceMask;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_nInheritanceMask(String newM_nInheritanceMask) {
+		String oldM_nInheritanceMask = m_nInheritanceMask;
+		m_nInheritanceMask = newM_nInheritanceMask;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_ACTION_STATE__MNINHERITANCE_MASK, oldM_nInheritanceMask, m_nInheritanceMask));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getM_pDefaultComponentRelation() {
+		return m_pDefaultComponentRelation;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_pDefaultComponentRelation(String newM_pDefaultComponentRelation) {
+		String oldM_pDefaultComponentRelation = m_pDefaultComponentRelation;
+		m_pDefaultComponentRelation = newM_pDefaultComponentRelation;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_ACTION_STATE__MPDEFAULT_COMPONENT_RELATION, oldM_pDefaultComponentRelation, m_pDefaultComponentRelation));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getM_NameDisplayMode() {
+		return m_NameDisplayMode;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_NameDisplayMode(String newM_NameDisplayMode) {
+		String oldM_NameDisplayMode = m_NameDisplayMode;
+		m_NameDisplayMode = newM_NameDisplayMode;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_ACTION_STATE__MNAME_DISPLAY_MODE, oldM_NameDisplayMode, m_NameDisplayMode));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getM_ActDescLablDiaplayMode() {
+		return m_ActDescLablDiaplayMode;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_ActDescLablDiaplayMode(String newM_ActDescLablDiaplayMode) {
+		String oldM_ActDescLablDiaplayMode = m_ActDescLablDiaplayMode;
+		m_ActDescLablDiaplayMode = newM_ActDescLablDiaplayMode;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_ACTION_STATE__MACT_DESC_LABL_DIAPLAY_MODE, oldM_ActDescLablDiaplayMode, m_ActDescLablDiaplayMode));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getM_moveAndLineTimeStamp() {
+		return m_moveAndLineTimeStamp;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_moveAndLineTimeStamp(String newM_moveAndLineTimeStamp) {
+		String oldM_moveAndLineTimeStamp = m_moveAndLineTimeStamp;
+		m_moveAndLineTimeStamp = newM_moveAndLineTimeStamp;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_ACTION_STATE__MMOVE_AND_LINE_TIME_STAMP, oldM_moveAndLineTimeStamp, m_moveAndLineTimeStamp));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
+		switch (featureID) {
+			case UMLRpyPackage.CGI_ACTION_STATE__PROPERTIES:
+				return basicSetProperties(null, msgs);
+			case UMLRpyPackage.CGI_ACTION_STATE__MADDITIONAL_LABEL:
+				return basicSetM_AdditionalLabel(null, msgs);
+		}
+		return super.eInverseRemove(otherEnd, featureID, msgs);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object eGet(int featureID, boolean resolve, boolean coreType) {
+		switch (featureID) {
+			case UMLRpyPackage.CGI_ACTION_STATE__PROPERTIES:
+				if (resolve) return getProperties();
+				return basicGetProperties();
+			case UMLRpyPackage.CGI_ACTION_STATE__MPMODEL_OBJECT:
+				if (resolve) return getM_pModelObject();
+				return basicGetM_pModelObject();
+			case UMLRpyPackage.CGI_ACTION_STATE__MPPARENT:
+				if (resolve) return getM_pParent();
+				return basicGetM_pParent();
+			case UMLRpyPackage.CGI_ACTION_STATE__MTRANSFORM:
+				return getM_transform();
+			case UMLRpyPackage.CGI_ACTION_STATE__MADDITIONAL_LABEL:
+				if (resolve) return getM_AdditionalLabel();
+				return basicGetM_AdditionalLabel();
+			case UMLRpyPackage.CGI_ACTION_STATE__MPOLYGON:
+				return getM_polygon();
+			case UMLRpyPackage.CGI_ACTION_STATE__MNNAME_FORMAT:
+				return getM_nNameFormat();
+			case UMLRpyPackage.CGI_ACTION_STATE__MNIS_NAME_FORMAT:
+				return getM_nIsNameFormat();
+			case UMLRpyPackage.CGI_ACTION_STATE__COMPARTMENTS:
+				return getCompartments();
+			case UMLRpyPackage.CGI_ACTION_STATE__NAND_LINE_COUNT:
+				return getNAndLineCount();
+			case UMLRpyPackage.CGI_ACTION_STATE__MPINHERITS_FROM:
+				return getM_pInheritsFrom();
+			case UMLRpyPackage.CGI_ACTION_STATE__MNINHERITANCE_MASK:
+				return getM_nInheritanceMask();
+			case UMLRpyPackage.CGI_ACTION_STATE__MPDEFAULT_COMPONENT_RELATION:
+				return getM_pDefaultComponentRelation();
+			case UMLRpyPackage.CGI_ACTION_STATE__MNAME_DISPLAY_MODE:
+				return getM_NameDisplayMode();
+			case UMLRpyPackage.CGI_ACTION_STATE__MACT_DESC_LABL_DIAPLAY_MODE:
+				return getM_ActDescLablDiaplayMode();
+			case UMLRpyPackage.CGI_ACTION_STATE__MMOVE_AND_LINE_TIME_STAMP:
+				return getM_moveAndLineTimeStamp();
+		}
+		return super.eGet(featureID, resolve, coreType);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@SuppressWarnings("unchecked")
+	@Override
+	public void eSet(int featureID, Object newValue) {
+		switch (featureID) {
+			case UMLRpyPackage.CGI_ACTION_STATE__PROPERTIES:
+				setProperties((IPropertyContainer)newValue);
+				return;
+			case UMLRpyPackage.CGI_ACTION_STATE__MPMODEL_OBJECT:
+				setM_pModelObject((IStateVertex)newValue);
+				return;
+			case UMLRpyPackage.CGI_ACTION_STATE__MPPARENT:
+				setM_pParent((GraphElementsType)newValue);
+				return;
+			case UMLRpyPackage.CGI_ACTION_STATE__MTRANSFORM:
+				getM_transform().clear();
+				getM_transform().addAll((Collection<? extends String>)newValue);
+				return;
+			case UMLRpyPackage.CGI_ACTION_STATE__MADDITIONAL_LABEL:
+				setM_AdditionalLabel((CGIText)newValue);
+				return;
+			case UMLRpyPackage.CGI_ACTION_STATE__MPOLYGON:
+				getM_polygon().clear();
+				getM_polygon().addAll((Collection<? extends String>)newValue);
+				return;
+			case UMLRpyPackage.CGI_ACTION_STATE__MNNAME_FORMAT:
+				setM_nNameFormat((String)newValue);
+				return;
+			case UMLRpyPackage.CGI_ACTION_STATE__MNIS_NAME_FORMAT:
+				setM_nIsNameFormat((String)newValue);
+				return;
+			case UMLRpyPackage.CGI_ACTION_STATE__COMPARTMENTS:
+				getCompartments().clear();
+				getCompartments().addAll((Collection<? extends UnknownType>)newValue);
+				return;
+			case UMLRpyPackage.CGI_ACTION_STATE__NAND_LINE_COUNT:
+				setNAndLineCount((String)newValue);
+				return;
+			case UMLRpyPackage.CGI_ACTION_STATE__MPINHERITS_FROM:
+				getM_pInheritsFrom().clear();
+				getM_pInheritsFrom().addAll((Collection<? extends UnknownType>)newValue);
+				return;
+			case UMLRpyPackage.CGI_ACTION_STATE__MNINHERITANCE_MASK:
+				setM_nInheritanceMask((String)newValue);
+				return;
+			case UMLRpyPackage.CGI_ACTION_STATE__MPDEFAULT_COMPONENT_RELATION:
+				setM_pDefaultComponentRelation((String)newValue);
+				return;
+			case UMLRpyPackage.CGI_ACTION_STATE__MNAME_DISPLAY_MODE:
+				setM_NameDisplayMode((String)newValue);
+				return;
+			case UMLRpyPackage.CGI_ACTION_STATE__MACT_DESC_LABL_DIAPLAY_MODE:
+				setM_ActDescLablDiaplayMode((String)newValue);
+				return;
+			case UMLRpyPackage.CGI_ACTION_STATE__MMOVE_AND_LINE_TIME_STAMP:
+				setM_moveAndLineTimeStamp((String)newValue);
+				return;
+		}
+		super.eSet(featureID, newValue);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void eUnset(int featureID) {
+		switch (featureID) {
+			case UMLRpyPackage.CGI_ACTION_STATE__PROPERTIES:
+				setProperties((IPropertyContainer)null);
+				return;
+			case UMLRpyPackage.CGI_ACTION_STATE__MPMODEL_OBJECT:
+				setM_pModelObject((IStateVertex)null);
+				return;
+			case UMLRpyPackage.CGI_ACTION_STATE__MPPARENT:
+				setM_pParent((GraphElementsType)null);
+				return;
+			case UMLRpyPackage.CGI_ACTION_STATE__MTRANSFORM:
+				getM_transform().clear();
+				return;
+			case UMLRpyPackage.CGI_ACTION_STATE__MADDITIONAL_LABEL:
+				setM_AdditionalLabel((CGIText)null);
+				return;
+			case UMLRpyPackage.CGI_ACTION_STATE__MPOLYGON:
+				getM_polygon().clear();
+				return;
+			case UMLRpyPackage.CGI_ACTION_STATE__MNNAME_FORMAT:
+				setM_nNameFormat(MNNAME_FORMAT_EDEFAULT);
+				return;
+			case UMLRpyPackage.CGI_ACTION_STATE__MNIS_NAME_FORMAT:
+				setM_nIsNameFormat(MNIS_NAME_FORMAT_EDEFAULT);
+				return;
+			case UMLRpyPackage.CGI_ACTION_STATE__COMPARTMENTS:
+				getCompartments().clear();
+				return;
+			case UMLRpyPackage.CGI_ACTION_STATE__NAND_LINE_COUNT:
+				setNAndLineCount(NAND_LINE_COUNT_EDEFAULT);
+				return;
+			case UMLRpyPackage.CGI_ACTION_STATE__MPINHERITS_FROM:
+				getM_pInheritsFrom().clear();
+				return;
+			case UMLRpyPackage.CGI_ACTION_STATE__MNINHERITANCE_MASK:
+				setM_nInheritanceMask(MNINHERITANCE_MASK_EDEFAULT);
+				return;
+			case UMLRpyPackage.CGI_ACTION_STATE__MPDEFAULT_COMPONENT_RELATION:
+				setM_pDefaultComponentRelation(MPDEFAULT_COMPONENT_RELATION_EDEFAULT);
+				return;
+			case UMLRpyPackage.CGI_ACTION_STATE__MNAME_DISPLAY_MODE:
+				setM_NameDisplayMode(MNAME_DISPLAY_MODE_EDEFAULT);
+				return;
+			case UMLRpyPackage.CGI_ACTION_STATE__MACT_DESC_LABL_DIAPLAY_MODE:
+				setM_ActDescLablDiaplayMode(MACT_DESC_LABL_DIAPLAY_MODE_EDEFAULT);
+				return;
+			case UMLRpyPackage.CGI_ACTION_STATE__MMOVE_AND_LINE_TIME_STAMP:
+				setM_moveAndLineTimeStamp(MMOVE_AND_LINE_TIME_STAMP_EDEFAULT);
+				return;
+		}
+		super.eUnset(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public boolean eIsSet(int featureID) {
+		switch (featureID) {
+			case UMLRpyPackage.CGI_ACTION_STATE__PROPERTIES:
+				return properties != null;
+			case UMLRpyPackage.CGI_ACTION_STATE__MPMODEL_OBJECT:
+				return m_pModelObject != null;
+			case UMLRpyPackage.CGI_ACTION_STATE__MPPARENT:
+				return m_pParent != null;
+			case UMLRpyPackage.CGI_ACTION_STATE__MTRANSFORM:
+				return m_transform != null && !m_transform.isEmpty();
+			case UMLRpyPackage.CGI_ACTION_STATE__MADDITIONAL_LABEL:
+				return m_AdditionalLabel != null;
+			case UMLRpyPackage.CGI_ACTION_STATE__MPOLYGON:
+				return m_polygon != null && !m_polygon.isEmpty();
+			case UMLRpyPackage.CGI_ACTION_STATE__MNNAME_FORMAT:
+				return MNNAME_FORMAT_EDEFAULT == null ? m_nNameFormat != null : !MNNAME_FORMAT_EDEFAULT.equals(m_nNameFormat);
+			case UMLRpyPackage.CGI_ACTION_STATE__MNIS_NAME_FORMAT:
+				return MNIS_NAME_FORMAT_EDEFAULT == null ? m_nIsNameFormat != null : !MNIS_NAME_FORMAT_EDEFAULT.equals(m_nIsNameFormat);
+			case UMLRpyPackage.CGI_ACTION_STATE__COMPARTMENTS:
+				return compartments != null && !compartments.isEmpty();
+			case UMLRpyPackage.CGI_ACTION_STATE__NAND_LINE_COUNT:
+				return NAND_LINE_COUNT_EDEFAULT == null ? nAndLineCount != null : !NAND_LINE_COUNT_EDEFAULT.equals(nAndLineCount);
+			case UMLRpyPackage.CGI_ACTION_STATE__MPINHERITS_FROM:
+				return m_pInheritsFrom != null && !m_pInheritsFrom.isEmpty();
+			case UMLRpyPackage.CGI_ACTION_STATE__MNINHERITANCE_MASK:
+				return MNINHERITANCE_MASK_EDEFAULT == null ? m_nInheritanceMask != null : !MNINHERITANCE_MASK_EDEFAULT.equals(m_nInheritanceMask);
+			case UMLRpyPackage.CGI_ACTION_STATE__MPDEFAULT_COMPONENT_RELATION:
+				return MPDEFAULT_COMPONENT_RELATION_EDEFAULT == null ? m_pDefaultComponentRelation != null : !MPDEFAULT_COMPONENT_RELATION_EDEFAULT.equals(m_pDefaultComponentRelation);
+			case UMLRpyPackage.CGI_ACTION_STATE__MNAME_DISPLAY_MODE:
+				return MNAME_DISPLAY_MODE_EDEFAULT == null ? m_NameDisplayMode != null : !MNAME_DISPLAY_MODE_EDEFAULT.equals(m_NameDisplayMode);
+			case UMLRpyPackage.CGI_ACTION_STATE__MACT_DESC_LABL_DIAPLAY_MODE:
+				return MACT_DESC_LABL_DIAPLAY_MODE_EDEFAULT == null ? m_ActDescLablDiaplayMode != null : !MACT_DESC_LABL_DIAPLAY_MODE_EDEFAULT.equals(m_ActDescLablDiaplayMode);
+			case UMLRpyPackage.CGI_ACTION_STATE__MMOVE_AND_LINE_TIME_STAMP:
+				return MMOVE_AND_LINE_TIME_STAMP_EDEFAULT == null ? m_moveAndLineTimeStamp != null : !MMOVE_AND_LINE_TIME_STAMP_EDEFAULT.equals(m_moveAndLineTimeStamp);
+		}
+		return super.eIsSet(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String toString() {
+		if (eIsProxy()) return super.toString();
+
+		StringBuffer result = new StringBuffer(super.toString());
+		result.append(" (m_transform: "); //$NON-NLS-1$
+		result.append(m_transform);
+		result.append(", m_polygon: "); //$NON-NLS-1$
+		result.append(m_polygon);
+		result.append(", m_nNameFormat: "); //$NON-NLS-1$
+		result.append(m_nNameFormat);
+		result.append(", m_nIsNameFormat: "); //$NON-NLS-1$
+		result.append(m_nIsNameFormat);
+		result.append(", nAndLineCount: "); //$NON-NLS-1$
+		result.append(nAndLineCount);
+		result.append(", m_nInheritanceMask: "); //$NON-NLS-1$
+		result.append(m_nInheritanceMask);
+		result.append(", m_pDefaultComponentRelation: "); //$NON-NLS-1$
+		result.append(m_pDefaultComponentRelation);
+		result.append(", m_NameDisplayMode: "); //$NON-NLS-1$
+		result.append(m_NameDisplayMode);
+		result.append(", m_ActDescLablDiaplayMode: "); //$NON-NLS-1$
+		result.append(m_ActDescLablDiaplayMode);
+		result.append(", m_moveAndLineTimeStamp: "); //$NON-NLS-1$
+		result.append(m_moveAndLineTimeStamp);
+		result.append(')');
+		return result.toString();
+	}
+
+} //CGIActionStateImpl
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/CGIActiveXImpl.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/CGIActiveXImpl.java
new file mode 100755
index 0000000..9fa5bb1
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/CGIActiveXImpl.java
@@ -0,0 +1,711 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl;
+
+import java.util.Collection;
+
+import org.eclipse.emf.common.notify.Notification;
+import org.eclipse.emf.common.notify.NotificationChain;
+
+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.EDataTypeEList;
+import org.eclipse.emf.ecore.util.EObjectResolvingEList;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIActiveX;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.DependsOnType;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.GraphElementsType;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IPropertyContainer;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.M_pModelObjectType;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UnknownType;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>CGI Active X</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * </p>
+ * <ul>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIActiveXImpl#getProperties <em>Properties</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIActiveXImpl#getM_pModelObject <em>MpModel Object</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIActiveXImpl#getM_pParent <em>MpParent</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIActiveXImpl#getM_transform <em>Mtransform</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIActiveXImpl#getM_polygon <em>Mpolygon</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIActiveXImpl#getM_nNameFormat <em>MnName Format</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIActiveXImpl#getM_nIsNameFormat <em>MnIs Name Format</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIActiveXImpl#getCompartments <em>Compartments</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIActiveXImpl#getM_csModelObjPath <em>Mcs Model Obj Path</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIActiveXImpl#getM_csName <em>Mcs Name</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIActiveXImpl#getM_PartsArray <em>MParts Array</em>}</li>
+ * </ul>
+ *
+ * @generated
+ */
+public class CGIActiveXImpl extends GraphElementsTypeImpl implements CGIActiveX {
+	/**
+	 * The cached value of the '{@link #getProperties() <em>Properties</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getProperties()
+	 * @generated
+	 * @ordered
+	 */
+	protected IPropertyContainer properties;
+
+	/**
+	 * The cached value of the '{@link #getM_pModelObject() <em>MpModel Object</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_pModelObject()
+	 * @generated
+	 * @ordered
+	 */
+	protected M_pModelObjectType m_pModelObject;
+
+	/**
+	 * The cached value of the '{@link #getM_pParent() <em>MpParent</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_pParent()
+	 * @generated
+	 * @ordered
+	 */
+	protected GraphElementsType m_pParent;
+
+	/**
+	 * The cached value of the '{@link #getM_transform() <em>Mtransform</em>}' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_transform()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<String> m_transform;
+
+	/**
+	 * The cached value of the '{@link #getM_polygon() <em>Mpolygon</em>}' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_polygon()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<String> m_polygon;
+
+	/**
+	 * The default value of the '{@link #getM_nNameFormat() <em>MnName Format</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_nNameFormat()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String MNNAME_FORMAT_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getM_nNameFormat() <em>MnName Format</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_nNameFormat()
+	 * @generated
+	 * @ordered
+	 */
+	protected String m_nNameFormat = MNNAME_FORMAT_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getM_nIsNameFormat() <em>MnIs Name Format</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_nIsNameFormat()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String MNIS_NAME_FORMAT_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getM_nIsNameFormat() <em>MnIs Name Format</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_nIsNameFormat()
+	 * @generated
+	 * @ordered
+	 */
+	protected String m_nIsNameFormat = MNIS_NAME_FORMAT_EDEFAULT;
+
+	/**
+	 * The cached value of the '{@link #getCompartments() <em>Compartments</em>}' reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getCompartments()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<UnknownType> compartments;
+
+	/**
+	 * The default value of the '{@link #getM_csModelObjPath() <em>Mcs Model Obj Path</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_csModelObjPath()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String MCS_MODEL_OBJ_PATH_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getM_csModelObjPath() <em>Mcs Model Obj Path</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_csModelObjPath()
+	 * @generated
+	 * @ordered
+	 */
+	protected String m_csModelObjPath = MCS_MODEL_OBJ_PATH_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getM_csName() <em>Mcs Name</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_csName()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String MCS_NAME_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getM_csName() <em>Mcs Name</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_csName()
+	 * @generated
+	 * @ordered
+	 */
+	protected String m_csName = MCS_NAME_EDEFAULT;
+
+	/**
+	 * The cached value of the '{@link #getM_PartsArray() <em>MParts Array</em>}' reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_PartsArray()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<DependsOnType> m_PartsArray;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected CGIActiveXImpl() {
+		super();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EClass eStaticClass() {
+		return UMLRpyPackage.eINSTANCE.getCGIActiveX();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IPropertyContainer getProperties() {
+		if (properties != null && properties.eIsProxy()) {
+			InternalEObject oldProperties = (InternalEObject)properties;
+			properties = (IPropertyContainer)eResolveProxy(oldProperties);
+			if (properties != oldProperties) {
+				InternalEObject newProperties = (InternalEObject)properties;
+				NotificationChain msgs = oldProperties.eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.CGI_ACTIVE_X__PROPERTIES, null, null);
+				if (newProperties.eInternalContainer() == null) {
+					msgs = newProperties.eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.CGI_ACTIVE_X__PROPERTIES, null, msgs);
+				}
+				if (msgs != null) msgs.dispatch();
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.CGI_ACTIVE_X__PROPERTIES, oldProperties, properties));
+			}
+		}
+		return properties;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IPropertyContainer basicGetProperties() {
+		return properties;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public NotificationChain basicSetProperties(IPropertyContainer newProperties, NotificationChain msgs) {
+		IPropertyContainer oldProperties = properties;
+		properties = newProperties;
+		if (eNotificationRequired()) {
+			ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_ACTIVE_X__PROPERTIES, oldProperties, newProperties);
+			if (msgs == null) msgs = notification; else msgs.add(notification);
+		}
+		return msgs;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setProperties(IPropertyContainer newProperties) {
+		if (newProperties != properties) {
+			NotificationChain msgs = null;
+			if (properties != null)
+				msgs = ((InternalEObject)properties).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.CGI_ACTIVE_X__PROPERTIES, null, msgs);
+			if (newProperties != null)
+				msgs = ((InternalEObject)newProperties).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.CGI_ACTIVE_X__PROPERTIES, null, msgs);
+			msgs = basicSetProperties(newProperties, msgs);
+			if (msgs != null) msgs.dispatch();
+		}
+		else if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_ACTIVE_X__PROPERTIES, newProperties, newProperties));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public M_pModelObjectType getM_pModelObject() {
+		if (m_pModelObject != null && m_pModelObject.eIsProxy()) {
+			InternalEObject oldM_pModelObject = (InternalEObject)m_pModelObject;
+			m_pModelObject = (M_pModelObjectType)eResolveProxy(oldM_pModelObject);
+			if (m_pModelObject != oldM_pModelObject) {
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.CGI_ACTIVE_X__MPMODEL_OBJECT, oldM_pModelObject, m_pModelObject));
+			}
+		}
+		return m_pModelObject;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public M_pModelObjectType basicGetM_pModelObject() {
+		return m_pModelObject;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_pModelObject(M_pModelObjectType newM_pModelObject) {
+		M_pModelObjectType oldM_pModelObject = m_pModelObject;
+		m_pModelObject = newM_pModelObject;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_ACTIVE_X__MPMODEL_OBJECT, oldM_pModelObject, m_pModelObject));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public GraphElementsType getM_pParent() {
+		if (m_pParent != null && m_pParent.eIsProxy()) {
+			InternalEObject oldM_pParent = (InternalEObject)m_pParent;
+			m_pParent = (GraphElementsType)eResolveProxy(oldM_pParent);
+			if (m_pParent != oldM_pParent) {
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.CGI_ACTIVE_X__MPPARENT, oldM_pParent, m_pParent));
+			}
+		}
+		return m_pParent;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public GraphElementsType basicGetM_pParent() {
+		return m_pParent;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_pParent(GraphElementsType newM_pParent) {
+		GraphElementsType oldM_pParent = m_pParent;
+		m_pParent = newM_pParent;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_ACTIVE_X__MPPARENT, oldM_pParent, m_pParent));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<String> getM_transform() {
+		if (m_transform == null) {
+			m_transform = new EDataTypeEList<String>(String.class, this, UMLRpyPackage.CGI_ACTIVE_X__MTRANSFORM);
+		}
+		return m_transform;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<String> getM_polygon() {
+		if (m_polygon == null) {
+			m_polygon = new EDataTypeEList<String>(String.class, this, UMLRpyPackage.CGI_ACTIVE_X__MPOLYGON);
+		}
+		return m_polygon;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getM_nNameFormat() {
+		return m_nNameFormat;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_nNameFormat(String newM_nNameFormat) {
+		String oldM_nNameFormat = m_nNameFormat;
+		m_nNameFormat = newM_nNameFormat;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_ACTIVE_X__MNNAME_FORMAT, oldM_nNameFormat, m_nNameFormat));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getM_nIsNameFormat() {
+		return m_nIsNameFormat;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_nIsNameFormat(String newM_nIsNameFormat) {
+		String oldM_nIsNameFormat = m_nIsNameFormat;
+		m_nIsNameFormat = newM_nIsNameFormat;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_ACTIVE_X__MNIS_NAME_FORMAT, oldM_nIsNameFormat, m_nIsNameFormat));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<UnknownType> getCompartments() {
+		if (compartments == null) {
+			compartments = new EObjectResolvingEList<UnknownType>(UnknownType.class, this, UMLRpyPackage.CGI_ACTIVE_X__COMPARTMENTS);
+		}
+		return compartments;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getM_csModelObjPath() {
+		return m_csModelObjPath;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_csModelObjPath(String newM_csModelObjPath) {
+		String oldM_csModelObjPath = m_csModelObjPath;
+		m_csModelObjPath = newM_csModelObjPath;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_ACTIVE_X__MCS_MODEL_OBJ_PATH, oldM_csModelObjPath, m_csModelObjPath));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getM_csName() {
+		return m_csName;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_csName(String newM_csName) {
+		String oldM_csName = m_csName;
+		m_csName = newM_csName;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_ACTIVE_X__MCS_NAME, oldM_csName, m_csName));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<DependsOnType> getM_PartsArray() {
+		if (m_PartsArray == null) {
+			m_PartsArray = new EObjectResolvingEList<DependsOnType>(DependsOnType.class, this, UMLRpyPackage.CGI_ACTIVE_X__MPARTS_ARRAY);
+		}
+		return m_PartsArray;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
+		switch (featureID) {
+			case UMLRpyPackage.CGI_ACTIVE_X__PROPERTIES:
+				return basicSetProperties(null, msgs);
+		}
+		return super.eInverseRemove(otherEnd, featureID, msgs);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object eGet(int featureID, boolean resolve, boolean coreType) {
+		switch (featureID) {
+			case UMLRpyPackage.CGI_ACTIVE_X__PROPERTIES:
+				if (resolve) return getProperties();
+				return basicGetProperties();
+			case UMLRpyPackage.CGI_ACTIVE_X__MPMODEL_OBJECT:
+				if (resolve) return getM_pModelObject();
+				return basicGetM_pModelObject();
+			case UMLRpyPackage.CGI_ACTIVE_X__MPPARENT:
+				if (resolve) return getM_pParent();
+				return basicGetM_pParent();
+			case UMLRpyPackage.CGI_ACTIVE_X__MTRANSFORM:
+				return getM_transform();
+			case UMLRpyPackage.CGI_ACTIVE_X__MPOLYGON:
+				return getM_polygon();
+			case UMLRpyPackage.CGI_ACTIVE_X__MNNAME_FORMAT:
+				return getM_nNameFormat();
+			case UMLRpyPackage.CGI_ACTIVE_X__MNIS_NAME_FORMAT:
+				return getM_nIsNameFormat();
+			case UMLRpyPackage.CGI_ACTIVE_X__COMPARTMENTS:
+				return getCompartments();
+			case UMLRpyPackage.CGI_ACTIVE_X__MCS_MODEL_OBJ_PATH:
+				return getM_csModelObjPath();
+			case UMLRpyPackage.CGI_ACTIVE_X__MCS_NAME:
+				return getM_csName();
+			case UMLRpyPackage.CGI_ACTIVE_X__MPARTS_ARRAY:
+				return getM_PartsArray();
+		}
+		return super.eGet(featureID, resolve, coreType);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@SuppressWarnings("unchecked")
+	@Override
+	public void eSet(int featureID, Object newValue) {
+		switch (featureID) {
+			case UMLRpyPackage.CGI_ACTIVE_X__PROPERTIES:
+				setProperties((IPropertyContainer)newValue);
+				return;
+			case UMLRpyPackage.CGI_ACTIVE_X__MPMODEL_OBJECT:
+				setM_pModelObject((M_pModelObjectType)newValue);
+				return;
+			case UMLRpyPackage.CGI_ACTIVE_X__MPPARENT:
+				setM_pParent((GraphElementsType)newValue);
+				return;
+			case UMLRpyPackage.CGI_ACTIVE_X__MTRANSFORM:
+				getM_transform().clear();
+				getM_transform().addAll((Collection<? extends String>)newValue);
+				return;
+			case UMLRpyPackage.CGI_ACTIVE_X__MPOLYGON:
+				getM_polygon().clear();
+				getM_polygon().addAll((Collection<? extends String>)newValue);
+				return;
+			case UMLRpyPackage.CGI_ACTIVE_X__MNNAME_FORMAT:
+				setM_nNameFormat((String)newValue);
+				return;
+			case UMLRpyPackage.CGI_ACTIVE_X__MNIS_NAME_FORMAT:
+				setM_nIsNameFormat((String)newValue);
+				return;
+			case UMLRpyPackage.CGI_ACTIVE_X__COMPARTMENTS:
+				getCompartments().clear();
+				getCompartments().addAll((Collection<? extends UnknownType>)newValue);
+				return;
+			case UMLRpyPackage.CGI_ACTIVE_X__MCS_MODEL_OBJ_PATH:
+				setM_csModelObjPath((String)newValue);
+				return;
+			case UMLRpyPackage.CGI_ACTIVE_X__MCS_NAME:
+				setM_csName((String)newValue);
+				return;
+			case UMLRpyPackage.CGI_ACTIVE_X__MPARTS_ARRAY:
+				getM_PartsArray().clear();
+				getM_PartsArray().addAll((Collection<? extends DependsOnType>)newValue);
+				return;
+		}
+		super.eSet(featureID, newValue);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void eUnset(int featureID) {
+		switch (featureID) {
+			case UMLRpyPackage.CGI_ACTIVE_X__PROPERTIES:
+				setProperties((IPropertyContainer)null);
+				return;
+			case UMLRpyPackage.CGI_ACTIVE_X__MPMODEL_OBJECT:
+				setM_pModelObject((M_pModelObjectType)null);
+				return;
+			case UMLRpyPackage.CGI_ACTIVE_X__MPPARENT:
+				setM_pParent((GraphElementsType)null);
+				return;
+			case UMLRpyPackage.CGI_ACTIVE_X__MTRANSFORM:
+				getM_transform().clear();
+				return;
+			case UMLRpyPackage.CGI_ACTIVE_X__MPOLYGON:
+				getM_polygon().clear();
+				return;
+			case UMLRpyPackage.CGI_ACTIVE_X__MNNAME_FORMAT:
+				setM_nNameFormat(MNNAME_FORMAT_EDEFAULT);
+				return;
+			case UMLRpyPackage.CGI_ACTIVE_X__MNIS_NAME_FORMAT:
+				setM_nIsNameFormat(MNIS_NAME_FORMAT_EDEFAULT);
+				return;
+			case UMLRpyPackage.CGI_ACTIVE_X__COMPARTMENTS:
+				getCompartments().clear();
+				return;
+			case UMLRpyPackage.CGI_ACTIVE_X__MCS_MODEL_OBJ_PATH:
+				setM_csModelObjPath(MCS_MODEL_OBJ_PATH_EDEFAULT);
+				return;
+			case UMLRpyPackage.CGI_ACTIVE_X__MCS_NAME:
+				setM_csName(MCS_NAME_EDEFAULT);
+				return;
+			case UMLRpyPackage.CGI_ACTIVE_X__MPARTS_ARRAY:
+				getM_PartsArray().clear();
+				return;
+		}
+		super.eUnset(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public boolean eIsSet(int featureID) {
+		switch (featureID) {
+			case UMLRpyPackage.CGI_ACTIVE_X__PROPERTIES:
+				return properties != null;
+			case UMLRpyPackage.CGI_ACTIVE_X__MPMODEL_OBJECT:
+				return m_pModelObject != null;
+			case UMLRpyPackage.CGI_ACTIVE_X__MPPARENT:
+				return m_pParent != null;
+			case UMLRpyPackage.CGI_ACTIVE_X__MTRANSFORM:
+				return m_transform != null && !m_transform.isEmpty();
+			case UMLRpyPackage.CGI_ACTIVE_X__MPOLYGON:
+				return m_polygon != null && !m_polygon.isEmpty();
+			case UMLRpyPackage.CGI_ACTIVE_X__MNNAME_FORMAT:
+				return MNNAME_FORMAT_EDEFAULT == null ? m_nNameFormat != null : !MNNAME_FORMAT_EDEFAULT.equals(m_nNameFormat);
+			case UMLRpyPackage.CGI_ACTIVE_X__MNIS_NAME_FORMAT:
+				return MNIS_NAME_FORMAT_EDEFAULT == null ? m_nIsNameFormat != null : !MNIS_NAME_FORMAT_EDEFAULT.equals(m_nIsNameFormat);
+			case UMLRpyPackage.CGI_ACTIVE_X__COMPARTMENTS:
+				return compartments != null && !compartments.isEmpty();
+			case UMLRpyPackage.CGI_ACTIVE_X__MCS_MODEL_OBJ_PATH:
+				return MCS_MODEL_OBJ_PATH_EDEFAULT == null ? m_csModelObjPath != null : !MCS_MODEL_OBJ_PATH_EDEFAULT.equals(m_csModelObjPath);
+			case UMLRpyPackage.CGI_ACTIVE_X__MCS_NAME:
+				return MCS_NAME_EDEFAULT == null ? m_csName != null : !MCS_NAME_EDEFAULT.equals(m_csName);
+			case UMLRpyPackage.CGI_ACTIVE_X__MPARTS_ARRAY:
+				return m_PartsArray != null && !m_PartsArray.isEmpty();
+		}
+		return super.eIsSet(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String toString() {
+		if (eIsProxy()) return super.toString();
+
+		StringBuffer result = new StringBuffer(super.toString());
+		result.append(" (m_transform: "); //$NON-NLS-1$
+		result.append(m_transform);
+		result.append(", m_polygon: "); //$NON-NLS-1$
+		result.append(m_polygon);
+		result.append(", m_nNameFormat: "); //$NON-NLS-1$
+		result.append(m_nNameFormat);
+		result.append(", m_nIsNameFormat: "); //$NON-NLS-1$
+		result.append(m_nIsNameFormat);
+		result.append(", m_csModelObjPath: "); //$NON-NLS-1$
+		result.append(m_csModelObjPath);
+		result.append(", m_csName: "); //$NON-NLS-1$
+		result.append(m_csName);
+		result.append(')');
+		return result.toString();
+	}
+
+} //CGIActiveXImpl
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/CGIAnchorImpl.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/CGIAnchorImpl.java
new file mode 100755
index 0000000..110338b
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/CGIAnchorImpl.java
@@ -0,0 +1,1098 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl;
+
+import java.util.Collection;
+
+import org.eclipse.emf.common.notify.Notification;
+import org.eclipse.emf.common.notify.NotificationChain;
+
+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.EDataTypeEList;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIAnchor;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIText;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IColor;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IPropertyContainer;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.M_pModelObjectType;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.M_pRootType;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>CGI Anchor</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * </p>
+ * <ul>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIAnchorImpl#getM_pModelObject <em>MpModel Object</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIAnchorImpl#getM_pParent <em>MpParent</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIAnchorImpl#getM_pSource <em>MpSource</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIAnchorImpl#getM_sourceType <em>Msource Type</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIAnchorImpl#getM_pTarget <em>MpTarget</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIAnchorImpl#getM_targetType <em>Mtarget Type</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIAnchorImpl#getM_direction <em>Mdirection</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIAnchorImpl#getM_rpn <em>Mrpn</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIAnchorImpl#getM_anglePoint1 <em>Mangle Point1</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIAnchorImpl#getM_anglePoint2 <em>Mangle Point2</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIAnchorImpl#getM_line_style <em>Mline style</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIAnchorImpl#getM_SourcePort <em>MSource Port</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIAnchorImpl#getM_TargetPort <em>MTarget Port</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIAnchorImpl#getProperties <em>Properties</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIAnchorImpl#getM_color <em>Mcolor</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIAnchorImpl#getM_lineWidth <em>Mline Width</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIAnchorImpl#getM_arrow <em>Marrow</em>}</li>
+ * </ul>
+ *
+ * @generated
+ */
+public class CGIAnchorImpl extends GraphElementsTypeImpl implements CGIAnchor {
+	/**
+	 * The cached value of the '{@link #getM_pModelObject() <em>MpModel Object</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_pModelObject()
+	 * @generated
+	 * @ordered
+	 */
+	protected M_pModelObjectType m_pModelObject;
+
+	/**
+	 * The default value of the '{@link #getM_pParent() <em>MpParent</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_pParent()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String MPPARENT_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getM_pParent() <em>MpParent</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_pParent()
+	 * @generated
+	 * @ordered
+	 */
+	protected String m_pParent = MPPARENT_EDEFAULT;
+
+	/**
+	 * The cached value of the '{@link #getM_pSource() <em>MpSource</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_pSource()
+	 * @generated
+	 * @ordered
+	 */
+	protected M_pRootType m_pSource;
+
+	/**
+	 * The default value of the '{@link #getM_sourceType() <em>Msource Type</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_sourceType()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String MSOURCE_TYPE_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getM_sourceType() <em>Msource Type</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_sourceType()
+	 * @generated
+	 * @ordered
+	 */
+	protected String m_sourceType = MSOURCE_TYPE_EDEFAULT;
+
+	/**
+	 * The cached value of the '{@link #getM_pTarget() <em>MpTarget</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_pTarget()
+	 * @generated
+	 * @ordered
+	 */
+	protected M_pRootType m_pTarget;
+
+	/**
+	 * The default value of the '{@link #getM_targetType() <em>Mtarget Type</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_targetType()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String MTARGET_TYPE_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getM_targetType() <em>Mtarget Type</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_targetType()
+	 * @generated
+	 * @ordered
+	 */
+	protected String m_targetType = MTARGET_TYPE_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getM_direction() <em>Mdirection</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_direction()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String MDIRECTION_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getM_direction() <em>Mdirection</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_direction()
+	 * @generated
+	 * @ordered
+	 */
+	protected String m_direction = MDIRECTION_EDEFAULT;
+
+	/**
+	 * The cached value of the '{@link #getM_rpn() <em>Mrpn</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_rpn()
+	 * @generated
+	 * @ordered
+	 */
+	protected CGIText m_rpn;
+
+	/**
+	 * The cached value of the '{@link #getM_anglePoint1() <em>Mangle Point1</em>}' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_anglePoint1()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<String> m_anglePoint1;
+
+	/**
+	 * The cached value of the '{@link #getM_anglePoint2() <em>Mangle Point2</em>}' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_anglePoint2()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<String> m_anglePoint2;
+
+	/**
+	 * The default value of the '{@link #getM_line_style() <em>Mline style</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_line_style()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String MLINE_STYLE_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getM_line_style() <em>Mline style</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_line_style()
+	 * @generated
+	 * @ordered
+	 */
+	protected String m_line_style = MLINE_STYLE_EDEFAULT;
+
+	/**
+	 * The cached value of the '{@link #getM_SourcePort() <em>MSource Port</em>}' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_SourcePort()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<String> m_SourcePort;
+
+	/**
+	 * The cached value of the '{@link #getM_TargetPort() <em>MTarget Port</em>}' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_TargetPort()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<String> m_TargetPort;
+
+	/**
+	 * The cached value of the '{@link #getProperties() <em>Properties</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getProperties()
+	 * @generated
+	 * @ordered
+	 */
+	protected IPropertyContainer properties;
+
+	/**
+	 * The cached value of the '{@link #getM_color() <em>Mcolor</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_color()
+	 * @generated
+	 * @ordered
+	 */
+	protected IColor m_color;
+
+	/**
+	 * The default value of the '{@link #getM_lineWidth() <em>Mline Width</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_lineWidth()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String MLINE_WIDTH_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getM_lineWidth() <em>Mline Width</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_lineWidth()
+	 * @generated
+	 * @ordered
+	 */
+	protected String m_lineWidth = MLINE_WIDTH_EDEFAULT;
+
+	/**
+	 * The cached value of the '{@link #getM_arrow() <em>Marrow</em>}' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_arrow()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<String> m_arrow;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected CGIAnchorImpl() {
+		super();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EClass eStaticClass() {
+		return UMLRpyPackage.eINSTANCE.getCGIAnchor();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public M_pModelObjectType getM_pModelObject() {
+		if (m_pModelObject != null && m_pModelObject.eIsProxy()) {
+			InternalEObject oldM_pModelObject = (InternalEObject)m_pModelObject;
+			m_pModelObject = (M_pModelObjectType)eResolveProxy(oldM_pModelObject);
+			if (m_pModelObject != oldM_pModelObject) {
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.CGI_ANCHOR__MPMODEL_OBJECT, oldM_pModelObject, m_pModelObject));
+			}
+		}
+		return m_pModelObject;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public M_pModelObjectType basicGetM_pModelObject() {
+		return m_pModelObject;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_pModelObject(M_pModelObjectType newM_pModelObject) {
+		M_pModelObjectType oldM_pModelObject = m_pModelObject;
+		m_pModelObject = newM_pModelObject;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_ANCHOR__MPMODEL_OBJECT, oldM_pModelObject, m_pModelObject));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getM_pParent() {
+		return m_pParent;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_pParent(String newM_pParent) {
+		String oldM_pParent = m_pParent;
+		m_pParent = newM_pParent;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_ANCHOR__MPPARENT, oldM_pParent, m_pParent));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public M_pRootType getM_pSource() {
+		if (m_pSource != null && m_pSource.eIsProxy()) {
+			InternalEObject oldM_pSource = (InternalEObject)m_pSource;
+			m_pSource = (M_pRootType)eResolveProxy(oldM_pSource);
+			if (m_pSource != oldM_pSource) {
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.CGI_ANCHOR__MPSOURCE, oldM_pSource, m_pSource));
+			}
+		}
+		return m_pSource;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public M_pRootType basicGetM_pSource() {
+		return m_pSource;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_pSource(M_pRootType newM_pSource) {
+		M_pRootType oldM_pSource = m_pSource;
+		m_pSource = newM_pSource;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_ANCHOR__MPSOURCE, oldM_pSource, m_pSource));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getM_sourceType() {
+		return m_sourceType;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_sourceType(String newM_sourceType) {
+		String oldM_sourceType = m_sourceType;
+		m_sourceType = newM_sourceType;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_ANCHOR__MSOURCE_TYPE, oldM_sourceType, m_sourceType));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public M_pRootType getM_pTarget() {
+		if (m_pTarget != null && m_pTarget.eIsProxy()) {
+			InternalEObject oldM_pTarget = (InternalEObject)m_pTarget;
+			m_pTarget = (M_pRootType)eResolveProxy(oldM_pTarget);
+			if (m_pTarget != oldM_pTarget) {
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.CGI_ANCHOR__MPTARGET, oldM_pTarget, m_pTarget));
+			}
+		}
+		return m_pTarget;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public M_pRootType basicGetM_pTarget() {
+		return m_pTarget;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_pTarget(M_pRootType newM_pTarget) {
+		M_pRootType oldM_pTarget = m_pTarget;
+		m_pTarget = newM_pTarget;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_ANCHOR__MPTARGET, oldM_pTarget, m_pTarget));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getM_targetType() {
+		return m_targetType;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_targetType(String newM_targetType) {
+		String oldM_targetType = m_targetType;
+		m_targetType = newM_targetType;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_ANCHOR__MTARGET_TYPE, oldM_targetType, m_targetType));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getM_direction() {
+		return m_direction;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_direction(String newM_direction) {
+		String oldM_direction = m_direction;
+		m_direction = newM_direction;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_ANCHOR__MDIRECTION, oldM_direction, m_direction));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public CGIText getM_rpn() {
+		if (m_rpn != null && m_rpn.eIsProxy()) {
+			InternalEObject oldM_rpn = (InternalEObject)m_rpn;
+			m_rpn = (CGIText)eResolveProxy(oldM_rpn);
+			if (m_rpn != oldM_rpn) {
+				InternalEObject newM_rpn = (InternalEObject)m_rpn;
+				NotificationChain msgs = oldM_rpn.eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.CGI_ANCHOR__MRPN, null, null);
+				if (newM_rpn.eInternalContainer() == null) {
+					msgs = newM_rpn.eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.CGI_ANCHOR__MRPN, null, msgs);
+				}
+				if (msgs != null) msgs.dispatch();
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.CGI_ANCHOR__MRPN, oldM_rpn, m_rpn));
+			}
+		}
+		return m_rpn;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public CGIText basicGetM_rpn() {
+		return m_rpn;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public NotificationChain basicSetM_rpn(CGIText newM_rpn, NotificationChain msgs) {
+		CGIText oldM_rpn = m_rpn;
+		m_rpn = newM_rpn;
+		if (eNotificationRequired()) {
+			ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_ANCHOR__MRPN, oldM_rpn, newM_rpn);
+			if (msgs == null) msgs = notification; else msgs.add(notification);
+		}
+		return msgs;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_rpn(CGIText newM_rpn) {
+		if (newM_rpn != m_rpn) {
+			NotificationChain msgs = null;
+			if (m_rpn != null)
+				msgs = ((InternalEObject)m_rpn).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.CGI_ANCHOR__MRPN, null, msgs);
+			if (newM_rpn != null)
+				msgs = ((InternalEObject)newM_rpn).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.CGI_ANCHOR__MRPN, null, msgs);
+			msgs = basicSetM_rpn(newM_rpn, msgs);
+			if (msgs != null) msgs.dispatch();
+		}
+		else if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_ANCHOR__MRPN, newM_rpn, newM_rpn));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<String> getM_anglePoint1() {
+		if (m_anglePoint1 == null) {
+			m_anglePoint1 = new EDataTypeEList<String>(String.class, this, UMLRpyPackage.CGI_ANCHOR__MANGLE_POINT1);
+		}
+		return m_anglePoint1;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<String> getM_anglePoint2() {
+		if (m_anglePoint2 == null) {
+			m_anglePoint2 = new EDataTypeEList<String>(String.class, this, UMLRpyPackage.CGI_ANCHOR__MANGLE_POINT2);
+		}
+		return m_anglePoint2;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getM_line_style() {
+		return m_line_style;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_line_style(String newM_line_style) {
+		String oldM_line_style = m_line_style;
+		m_line_style = newM_line_style;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_ANCHOR__MLINE_STYLE, oldM_line_style, m_line_style));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<String> getM_SourcePort() {
+		if (m_SourcePort == null) {
+			m_SourcePort = new EDataTypeEList<String>(String.class, this, UMLRpyPackage.CGI_ANCHOR__MSOURCE_PORT);
+		}
+		return m_SourcePort;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<String> getM_TargetPort() {
+		if (m_TargetPort == null) {
+			m_TargetPort = new EDataTypeEList<String>(String.class, this, UMLRpyPackage.CGI_ANCHOR__MTARGET_PORT);
+		}
+		return m_TargetPort;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IPropertyContainer getProperties() {
+		if (properties != null && properties.eIsProxy()) {
+			InternalEObject oldProperties = (InternalEObject)properties;
+			properties = (IPropertyContainer)eResolveProxy(oldProperties);
+			if (properties != oldProperties) {
+				InternalEObject newProperties = (InternalEObject)properties;
+				NotificationChain msgs = oldProperties.eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.CGI_ANCHOR__PROPERTIES, null, null);
+				if (newProperties.eInternalContainer() == null) {
+					msgs = newProperties.eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.CGI_ANCHOR__PROPERTIES, null, msgs);
+				}
+				if (msgs != null) msgs.dispatch();
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.CGI_ANCHOR__PROPERTIES, oldProperties, properties));
+			}
+		}
+		return properties;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IPropertyContainer basicGetProperties() {
+		return properties;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public NotificationChain basicSetProperties(IPropertyContainer newProperties, NotificationChain msgs) {
+		IPropertyContainer oldProperties = properties;
+		properties = newProperties;
+		if (eNotificationRequired()) {
+			ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_ANCHOR__PROPERTIES, oldProperties, newProperties);
+			if (msgs == null) msgs = notification; else msgs.add(notification);
+		}
+		return msgs;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setProperties(IPropertyContainer newProperties) {
+		if (newProperties != properties) {
+			NotificationChain msgs = null;
+			if (properties != null)
+				msgs = ((InternalEObject)properties).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.CGI_ANCHOR__PROPERTIES, null, msgs);
+			if (newProperties != null)
+				msgs = ((InternalEObject)newProperties).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.CGI_ANCHOR__PROPERTIES, null, msgs);
+			msgs = basicSetProperties(newProperties, msgs);
+			if (msgs != null) msgs.dispatch();
+		}
+		else if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_ANCHOR__PROPERTIES, newProperties, newProperties));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IColor getM_color() {
+		if (m_color != null && m_color.eIsProxy()) {
+			InternalEObject oldM_color = (InternalEObject)m_color;
+			m_color = (IColor)eResolveProxy(oldM_color);
+			if (m_color != oldM_color) {
+				InternalEObject newM_color = (InternalEObject)m_color;
+				NotificationChain msgs = oldM_color.eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.CGI_ANCHOR__MCOLOR, null, null);
+				if (newM_color.eInternalContainer() == null) {
+					msgs = newM_color.eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.CGI_ANCHOR__MCOLOR, null, msgs);
+				}
+				if (msgs != null) msgs.dispatch();
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.CGI_ANCHOR__MCOLOR, oldM_color, m_color));
+			}
+		}
+		return m_color;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IColor basicGetM_color() {
+		return m_color;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public NotificationChain basicSetM_color(IColor newM_color, NotificationChain msgs) {
+		IColor oldM_color = m_color;
+		m_color = newM_color;
+		if (eNotificationRequired()) {
+			ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_ANCHOR__MCOLOR, oldM_color, newM_color);
+			if (msgs == null) msgs = notification; else msgs.add(notification);
+		}
+		return msgs;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_color(IColor newM_color) {
+		if (newM_color != m_color) {
+			NotificationChain msgs = null;
+			if (m_color != null)
+				msgs = ((InternalEObject)m_color).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.CGI_ANCHOR__MCOLOR, null, msgs);
+			if (newM_color != null)
+				msgs = ((InternalEObject)newM_color).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.CGI_ANCHOR__MCOLOR, null, msgs);
+			msgs = basicSetM_color(newM_color, msgs);
+			if (msgs != null) msgs.dispatch();
+		}
+		else if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_ANCHOR__MCOLOR, newM_color, newM_color));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getM_lineWidth() {
+		return m_lineWidth;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_lineWidth(String newM_lineWidth) {
+		String oldM_lineWidth = m_lineWidth;
+		m_lineWidth = newM_lineWidth;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_ANCHOR__MLINE_WIDTH, oldM_lineWidth, m_lineWidth));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<String> getM_arrow() {
+		if (m_arrow == null) {
+			m_arrow = new EDataTypeEList<String>(String.class, this, UMLRpyPackage.CGI_ANCHOR__MARROW);
+		}
+		return m_arrow;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
+		switch (featureID) {
+			case UMLRpyPackage.CGI_ANCHOR__MRPN:
+				return basicSetM_rpn(null, msgs);
+			case UMLRpyPackage.CGI_ANCHOR__PROPERTIES:
+				return basicSetProperties(null, msgs);
+			case UMLRpyPackage.CGI_ANCHOR__MCOLOR:
+				return basicSetM_color(null, msgs);
+		}
+		return super.eInverseRemove(otherEnd, featureID, msgs);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object eGet(int featureID, boolean resolve, boolean coreType) {
+		switch (featureID) {
+			case UMLRpyPackage.CGI_ANCHOR__MPMODEL_OBJECT:
+				if (resolve) return getM_pModelObject();
+				return basicGetM_pModelObject();
+			case UMLRpyPackage.CGI_ANCHOR__MPPARENT:
+				return getM_pParent();
+			case UMLRpyPackage.CGI_ANCHOR__MPSOURCE:
+				if (resolve) return getM_pSource();
+				return basicGetM_pSource();
+			case UMLRpyPackage.CGI_ANCHOR__MSOURCE_TYPE:
+				return getM_sourceType();
+			case UMLRpyPackage.CGI_ANCHOR__MPTARGET:
+				if (resolve) return getM_pTarget();
+				return basicGetM_pTarget();
+			case UMLRpyPackage.CGI_ANCHOR__MTARGET_TYPE:
+				return getM_targetType();
+			case UMLRpyPackage.CGI_ANCHOR__MDIRECTION:
+				return getM_direction();
+			case UMLRpyPackage.CGI_ANCHOR__MRPN:
+				if (resolve) return getM_rpn();
+				return basicGetM_rpn();
+			case UMLRpyPackage.CGI_ANCHOR__MANGLE_POINT1:
+				return getM_anglePoint1();
+			case UMLRpyPackage.CGI_ANCHOR__MANGLE_POINT2:
+				return getM_anglePoint2();
+			case UMLRpyPackage.CGI_ANCHOR__MLINE_STYLE:
+				return getM_line_style();
+			case UMLRpyPackage.CGI_ANCHOR__MSOURCE_PORT:
+				return getM_SourcePort();
+			case UMLRpyPackage.CGI_ANCHOR__MTARGET_PORT:
+				return getM_TargetPort();
+			case UMLRpyPackage.CGI_ANCHOR__PROPERTIES:
+				if (resolve) return getProperties();
+				return basicGetProperties();
+			case UMLRpyPackage.CGI_ANCHOR__MCOLOR:
+				if (resolve) return getM_color();
+				return basicGetM_color();
+			case UMLRpyPackage.CGI_ANCHOR__MLINE_WIDTH:
+				return getM_lineWidth();
+			case UMLRpyPackage.CGI_ANCHOR__MARROW:
+				return getM_arrow();
+		}
+		return super.eGet(featureID, resolve, coreType);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@SuppressWarnings("unchecked")
+	@Override
+	public void eSet(int featureID, Object newValue) {
+		switch (featureID) {
+			case UMLRpyPackage.CGI_ANCHOR__MPMODEL_OBJECT:
+				setM_pModelObject((M_pModelObjectType)newValue);
+				return;
+			case UMLRpyPackage.CGI_ANCHOR__MPPARENT:
+				setM_pParent((String)newValue);
+				return;
+			case UMLRpyPackage.CGI_ANCHOR__MPSOURCE:
+				setM_pSource((M_pRootType)newValue);
+				return;
+			case UMLRpyPackage.CGI_ANCHOR__MSOURCE_TYPE:
+				setM_sourceType((String)newValue);
+				return;
+			case UMLRpyPackage.CGI_ANCHOR__MPTARGET:
+				setM_pTarget((M_pRootType)newValue);
+				return;
+			case UMLRpyPackage.CGI_ANCHOR__MTARGET_TYPE:
+				setM_targetType((String)newValue);
+				return;
+			case UMLRpyPackage.CGI_ANCHOR__MDIRECTION:
+				setM_direction((String)newValue);
+				return;
+			case UMLRpyPackage.CGI_ANCHOR__MRPN:
+				setM_rpn((CGIText)newValue);
+				return;
+			case UMLRpyPackage.CGI_ANCHOR__MANGLE_POINT1:
+				getM_anglePoint1().clear();
+				getM_anglePoint1().addAll((Collection<? extends String>)newValue);
+				return;
+			case UMLRpyPackage.CGI_ANCHOR__MANGLE_POINT2:
+				getM_anglePoint2().clear();
+				getM_anglePoint2().addAll((Collection<? extends String>)newValue);
+				return;
+			case UMLRpyPackage.CGI_ANCHOR__MLINE_STYLE:
+				setM_line_style((String)newValue);
+				return;
+			case UMLRpyPackage.CGI_ANCHOR__MSOURCE_PORT:
+				getM_SourcePort().clear();
+				getM_SourcePort().addAll((Collection<? extends String>)newValue);
+				return;
+			case UMLRpyPackage.CGI_ANCHOR__MTARGET_PORT:
+				getM_TargetPort().clear();
+				getM_TargetPort().addAll((Collection<? extends String>)newValue);
+				return;
+			case UMLRpyPackage.CGI_ANCHOR__PROPERTIES:
+				setProperties((IPropertyContainer)newValue);
+				return;
+			case UMLRpyPackage.CGI_ANCHOR__MCOLOR:
+				setM_color((IColor)newValue);
+				return;
+			case UMLRpyPackage.CGI_ANCHOR__MLINE_WIDTH:
+				setM_lineWidth((String)newValue);
+				return;
+			case UMLRpyPackage.CGI_ANCHOR__MARROW:
+				getM_arrow().clear();
+				getM_arrow().addAll((Collection<? extends String>)newValue);
+				return;
+		}
+		super.eSet(featureID, newValue);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void eUnset(int featureID) {
+		switch (featureID) {
+			case UMLRpyPackage.CGI_ANCHOR__MPMODEL_OBJECT:
+				setM_pModelObject((M_pModelObjectType)null);
+				return;
+			case UMLRpyPackage.CGI_ANCHOR__MPPARENT:
+				setM_pParent(MPPARENT_EDEFAULT);
+				return;
+			case UMLRpyPackage.CGI_ANCHOR__MPSOURCE:
+				setM_pSource((M_pRootType)null);
+				return;
+			case UMLRpyPackage.CGI_ANCHOR__MSOURCE_TYPE:
+				setM_sourceType(MSOURCE_TYPE_EDEFAULT);
+				return;
+			case UMLRpyPackage.CGI_ANCHOR__MPTARGET:
+				setM_pTarget((M_pRootType)null);
+				return;
+			case UMLRpyPackage.CGI_ANCHOR__MTARGET_TYPE:
+				setM_targetType(MTARGET_TYPE_EDEFAULT);
+				return;
+			case UMLRpyPackage.CGI_ANCHOR__MDIRECTION:
+				setM_direction(MDIRECTION_EDEFAULT);
+				return;
+			case UMLRpyPackage.CGI_ANCHOR__MRPN:
+				setM_rpn((CGIText)null);
+				return;
+			case UMLRpyPackage.CGI_ANCHOR__MANGLE_POINT1:
+				getM_anglePoint1().clear();
+				return;
+			case UMLRpyPackage.CGI_ANCHOR__MANGLE_POINT2:
+				getM_anglePoint2().clear();
+				return;
+			case UMLRpyPackage.CGI_ANCHOR__MLINE_STYLE:
+				setM_line_style(MLINE_STYLE_EDEFAULT);
+				return;
+			case UMLRpyPackage.CGI_ANCHOR__MSOURCE_PORT:
+				getM_SourcePort().clear();
+				return;
+			case UMLRpyPackage.CGI_ANCHOR__MTARGET_PORT:
+				getM_TargetPort().clear();
+				return;
+			case UMLRpyPackage.CGI_ANCHOR__PROPERTIES:
+				setProperties((IPropertyContainer)null);
+				return;
+			case UMLRpyPackage.CGI_ANCHOR__MCOLOR:
+				setM_color((IColor)null);
+				return;
+			case UMLRpyPackage.CGI_ANCHOR__MLINE_WIDTH:
+				setM_lineWidth(MLINE_WIDTH_EDEFAULT);
+				return;
+			case UMLRpyPackage.CGI_ANCHOR__MARROW:
+				getM_arrow().clear();
+				return;
+		}
+		super.eUnset(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public boolean eIsSet(int featureID) {
+		switch (featureID) {
+			case UMLRpyPackage.CGI_ANCHOR__MPMODEL_OBJECT:
+				return m_pModelObject != null;
+			case UMLRpyPackage.CGI_ANCHOR__MPPARENT:
+				return MPPARENT_EDEFAULT == null ? m_pParent != null : !MPPARENT_EDEFAULT.equals(m_pParent);
+			case UMLRpyPackage.CGI_ANCHOR__MPSOURCE:
+				return m_pSource != null;
+			case UMLRpyPackage.CGI_ANCHOR__MSOURCE_TYPE:
+				return MSOURCE_TYPE_EDEFAULT == null ? m_sourceType != null : !MSOURCE_TYPE_EDEFAULT.equals(m_sourceType);
+			case UMLRpyPackage.CGI_ANCHOR__MPTARGET:
+				return m_pTarget != null;
+			case UMLRpyPackage.CGI_ANCHOR__MTARGET_TYPE:
+				return MTARGET_TYPE_EDEFAULT == null ? m_targetType != null : !MTARGET_TYPE_EDEFAULT.equals(m_targetType);
+			case UMLRpyPackage.CGI_ANCHOR__MDIRECTION:
+				return MDIRECTION_EDEFAULT == null ? m_direction != null : !MDIRECTION_EDEFAULT.equals(m_direction);
+			case UMLRpyPackage.CGI_ANCHOR__MRPN:
+				return m_rpn != null;
+			case UMLRpyPackage.CGI_ANCHOR__MANGLE_POINT1:
+				return m_anglePoint1 != null && !m_anglePoint1.isEmpty();
+			case UMLRpyPackage.CGI_ANCHOR__MANGLE_POINT2:
+				return m_anglePoint2 != null && !m_anglePoint2.isEmpty();
+			case UMLRpyPackage.CGI_ANCHOR__MLINE_STYLE:
+				return MLINE_STYLE_EDEFAULT == null ? m_line_style != null : !MLINE_STYLE_EDEFAULT.equals(m_line_style);
+			case UMLRpyPackage.CGI_ANCHOR__MSOURCE_PORT:
+				return m_SourcePort != null && !m_SourcePort.isEmpty();
+			case UMLRpyPackage.CGI_ANCHOR__MTARGET_PORT:
+				return m_TargetPort != null && !m_TargetPort.isEmpty();
+			case UMLRpyPackage.CGI_ANCHOR__PROPERTIES:
+				return properties != null;
+			case UMLRpyPackage.CGI_ANCHOR__MCOLOR:
+				return m_color != null;
+			case UMLRpyPackage.CGI_ANCHOR__MLINE_WIDTH:
+				return MLINE_WIDTH_EDEFAULT == null ? m_lineWidth != null : !MLINE_WIDTH_EDEFAULT.equals(m_lineWidth);
+			case UMLRpyPackage.CGI_ANCHOR__MARROW:
+				return m_arrow != null && !m_arrow.isEmpty();
+		}
+		return super.eIsSet(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String toString() {
+		if (eIsProxy()) return super.toString();
+
+		StringBuffer result = new StringBuffer(super.toString());
+		result.append(" (m_pParent: "); //$NON-NLS-1$
+		result.append(m_pParent);
+		result.append(", m_sourceType: "); //$NON-NLS-1$
+		result.append(m_sourceType);
+		result.append(", m_targetType: "); //$NON-NLS-1$
+		result.append(m_targetType);
+		result.append(", m_direction: "); //$NON-NLS-1$
+		result.append(m_direction);
+		result.append(", m_anglePoint1: "); //$NON-NLS-1$
+		result.append(m_anglePoint1);
+		result.append(", m_anglePoint2: "); //$NON-NLS-1$
+		result.append(m_anglePoint2);
+		result.append(", m_line_style: "); //$NON-NLS-1$
+		result.append(m_line_style);
+		result.append(", m_SourcePort: "); //$NON-NLS-1$
+		result.append(m_SourcePort);
+		result.append(", m_TargetPort: "); //$NON-NLS-1$
+		result.append(m_TargetPort);
+		result.append(", m_lineWidth: "); //$NON-NLS-1$
+		result.append(m_lineWidth);
+		result.append(", m_arrow: "); //$NON-NLS-1$
+		result.append(m_arrow);
+		result.append(')');
+		return result.toString();
+	}
+
+} //CGIAnchorImpl
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/CGIAnnotationImpl.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/CGIAnnotationImpl.java
new file mode 100755
index 0000000..408a67a
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/CGIAnnotationImpl.java
@@ -0,0 +1,1129 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl;
+
+import java.util.Collection;
+
+import org.eclipse.emf.common.notify.Notification;
+import org.eclipse.emf.common.notify.NotificationChain;
+
+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.EDataTypeEList;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIAnnotation;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIText;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CompartmentsType;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IColor;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IPropertyContainer;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IUnit;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.M_pRootType;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>CGI Annotation</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * </p>
+ * <ul>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIAnnotationImpl#getProperties <em>Properties</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIAnnotationImpl#getM_pParent <em>MpParent</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIAnnotationImpl#getM_transform <em>Mtransform</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIAnnotationImpl#getM_AdditionalLabel <em>MAdditional Label</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIAnnotationImpl#getM_polygon <em>Mpolygon</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIAnnotationImpl#getM_nNameFormat <em>MnName Format</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIAnnotationImpl#getM_nIsNameFormat <em>MnIs Name Format</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIAnnotationImpl#getITempdisplayTextFlag <em>ITempdisplay Text Flag</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIAnnotationImpl#getM_bIsBoxStyle <em>MbIs Box Style</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIAnnotationImpl#getM_pModelObject <em>MpModel Object</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIAnnotationImpl#getM_color <em>Mcolor</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIAnnotationImpl#getM_lineWidth <em>Mline Width</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIAnnotationImpl#getFrameset <em>Frameset</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIAnnotationImpl#getCompartments <em>Compartments</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIAnnotationImpl#getM_bIsStructured <em>MbIs Structured</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIAnnotationImpl#getM_bFramesetModified <em>MbFrameset Modified</em>}</li>
+ * </ul>
+ *
+ * @generated
+ */
+public class CGIAnnotationImpl extends GraphElementsTypeImpl implements CGIAnnotation {
+	/**
+	 * The cached value of the '{@link #getProperties() <em>Properties</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getProperties()
+	 * @generated
+	 * @ordered
+	 */
+	protected IPropertyContainer properties;
+
+	/**
+	 * The cached value of the '{@link #getM_pParent() <em>MpParent</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_pParent()
+	 * @generated
+	 * @ordered
+	 */
+	protected M_pRootType m_pParent;
+
+	/**
+	 * The cached value of the '{@link #getM_transform() <em>Mtransform</em>}' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_transform()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<String> m_transform;
+
+	/**
+	 * The cached value of the '{@link #getM_AdditionalLabel() <em>MAdditional Label</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_AdditionalLabel()
+	 * @generated
+	 * @ordered
+	 */
+	protected CGIText m_AdditionalLabel;
+
+	/**
+	 * The cached value of the '{@link #getM_polygon() <em>Mpolygon</em>}' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_polygon()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<String> m_polygon;
+
+	/**
+	 * The default value of the '{@link #getM_nNameFormat() <em>MnName Format</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_nNameFormat()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String MNNAME_FORMAT_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getM_nNameFormat() <em>MnName Format</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_nNameFormat()
+	 * @generated
+	 * @ordered
+	 */
+	protected String m_nNameFormat = MNNAME_FORMAT_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getM_nIsNameFormat() <em>MnIs Name Format</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_nIsNameFormat()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String MNIS_NAME_FORMAT_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getM_nIsNameFormat() <em>MnIs Name Format</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_nIsNameFormat()
+	 * @generated
+	 * @ordered
+	 */
+	protected String m_nIsNameFormat = MNIS_NAME_FORMAT_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getITempdisplayTextFlag() <em>ITempdisplay Text Flag</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getITempdisplayTextFlag()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String ITEMPDISPLAY_TEXT_FLAG_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getITempdisplayTextFlag() <em>ITempdisplay Text Flag</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getITempdisplayTextFlag()
+	 * @generated
+	 * @ordered
+	 */
+	protected String iTempdisplayTextFlag = ITEMPDISPLAY_TEXT_FLAG_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getM_bIsBoxStyle() <em>MbIs Box Style</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_bIsBoxStyle()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String MBIS_BOX_STYLE_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getM_bIsBoxStyle() <em>MbIs Box Style</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_bIsBoxStyle()
+	 * @generated
+	 * @ordered
+	 */
+	protected String m_bIsBoxStyle = MBIS_BOX_STYLE_EDEFAULT;
+
+	/**
+	 * The cached value of the '{@link #getM_pModelObject() <em>MpModel Object</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_pModelObject()
+	 * @generated
+	 * @ordered
+	 */
+	protected IUnit m_pModelObject;
+
+	/**
+	 * The cached value of the '{@link #getM_color() <em>Mcolor</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_color()
+	 * @generated
+	 * @ordered
+	 */
+	protected IColor m_color;
+
+	/**
+	 * The default value of the '{@link #getM_lineWidth() <em>Mline Width</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_lineWidth()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String MLINE_WIDTH_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getM_lineWidth() <em>Mline Width</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_lineWidth()
+	 * @generated
+	 * @ordered
+	 */
+	protected String m_lineWidth = MLINE_WIDTH_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getFrameset() <em>Frameset</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getFrameset()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String FRAMESET_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getFrameset() <em>Frameset</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getFrameset()
+	 * @generated
+	 * @ordered
+	 */
+	protected String frameset = FRAMESET_EDEFAULT;
+
+	/**
+	 * The cached value of the '{@link #getCompartments() <em>Compartments</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getCompartments()
+	 * @generated
+	 * @ordered
+	 */
+	protected CompartmentsType compartments;
+
+	/**
+	 * The default value of the '{@link #getM_bIsStructured() <em>MbIs Structured</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_bIsStructured()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String MBIS_STRUCTURED_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getM_bIsStructured() <em>MbIs Structured</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_bIsStructured()
+	 * @generated
+	 * @ordered
+	 */
+	protected String m_bIsStructured = MBIS_STRUCTURED_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getM_bFramesetModified() <em>MbFrameset Modified</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_bFramesetModified()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String MBFRAMESET_MODIFIED_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getM_bFramesetModified() <em>MbFrameset Modified</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_bFramesetModified()
+	 * @generated
+	 * @ordered
+	 */
+	protected String m_bFramesetModified = MBFRAMESET_MODIFIED_EDEFAULT;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected CGIAnnotationImpl() {
+		super();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EClass eStaticClass() {
+		return UMLRpyPackage.eINSTANCE.getCGIAnnotation();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IPropertyContainer getProperties() {
+		if (properties != null && properties.eIsProxy()) {
+			InternalEObject oldProperties = (InternalEObject)properties;
+			properties = (IPropertyContainer)eResolveProxy(oldProperties);
+			if (properties != oldProperties) {
+				InternalEObject newProperties = (InternalEObject)properties;
+				NotificationChain msgs = oldProperties.eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.CGI_ANNOTATION__PROPERTIES, null, null);
+				if (newProperties.eInternalContainer() == null) {
+					msgs = newProperties.eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.CGI_ANNOTATION__PROPERTIES, null, msgs);
+				}
+				if (msgs != null) msgs.dispatch();
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.CGI_ANNOTATION__PROPERTIES, oldProperties, properties));
+			}
+		}
+		return properties;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IPropertyContainer basicGetProperties() {
+		return properties;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public NotificationChain basicSetProperties(IPropertyContainer newProperties, NotificationChain msgs) {
+		IPropertyContainer oldProperties = properties;
+		properties = newProperties;
+		if (eNotificationRequired()) {
+			ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_ANNOTATION__PROPERTIES, oldProperties, newProperties);
+			if (msgs == null) msgs = notification; else msgs.add(notification);
+		}
+		return msgs;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setProperties(IPropertyContainer newProperties) {
+		if (newProperties != properties) {
+			NotificationChain msgs = null;
+			if (properties != null)
+				msgs = ((InternalEObject)properties).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.CGI_ANNOTATION__PROPERTIES, null, msgs);
+			if (newProperties != null)
+				msgs = ((InternalEObject)newProperties).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.CGI_ANNOTATION__PROPERTIES, null, msgs);
+			msgs = basicSetProperties(newProperties, msgs);
+			if (msgs != null) msgs.dispatch();
+		}
+		else if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_ANNOTATION__PROPERTIES, newProperties, newProperties));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public M_pRootType getM_pParent() {
+		if (m_pParent != null && m_pParent.eIsProxy()) {
+			InternalEObject oldM_pParent = (InternalEObject)m_pParent;
+			m_pParent = (M_pRootType)eResolveProxy(oldM_pParent);
+			if (m_pParent != oldM_pParent) {
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.CGI_ANNOTATION__MPPARENT, oldM_pParent, m_pParent));
+			}
+		}
+		return m_pParent;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public M_pRootType basicGetM_pParent() {
+		return m_pParent;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_pParent(M_pRootType newM_pParent) {
+		M_pRootType oldM_pParent = m_pParent;
+		m_pParent = newM_pParent;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_ANNOTATION__MPPARENT, oldM_pParent, m_pParent));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<String> getM_transform() {
+		if (m_transform == null) {
+			m_transform = new EDataTypeEList<String>(String.class, this, UMLRpyPackage.CGI_ANNOTATION__MTRANSFORM);
+		}
+		return m_transform;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public CGIText getM_AdditionalLabel() {
+		if (m_AdditionalLabel != null && m_AdditionalLabel.eIsProxy()) {
+			InternalEObject oldM_AdditionalLabel = (InternalEObject)m_AdditionalLabel;
+			m_AdditionalLabel = (CGIText)eResolveProxy(oldM_AdditionalLabel);
+			if (m_AdditionalLabel != oldM_AdditionalLabel) {
+				InternalEObject newM_AdditionalLabel = (InternalEObject)m_AdditionalLabel;
+				NotificationChain msgs = oldM_AdditionalLabel.eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.CGI_ANNOTATION__MADDITIONAL_LABEL, null, null);
+				if (newM_AdditionalLabel.eInternalContainer() == null) {
+					msgs = newM_AdditionalLabel.eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.CGI_ANNOTATION__MADDITIONAL_LABEL, null, msgs);
+				}
+				if (msgs != null) msgs.dispatch();
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.CGI_ANNOTATION__MADDITIONAL_LABEL, oldM_AdditionalLabel, m_AdditionalLabel));
+			}
+		}
+		return m_AdditionalLabel;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public CGIText basicGetM_AdditionalLabel() {
+		return m_AdditionalLabel;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public NotificationChain basicSetM_AdditionalLabel(CGIText newM_AdditionalLabel, NotificationChain msgs) {
+		CGIText oldM_AdditionalLabel = m_AdditionalLabel;
+		m_AdditionalLabel = newM_AdditionalLabel;
+		if (eNotificationRequired()) {
+			ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_ANNOTATION__MADDITIONAL_LABEL, oldM_AdditionalLabel, newM_AdditionalLabel);
+			if (msgs == null) msgs = notification; else msgs.add(notification);
+		}
+		return msgs;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_AdditionalLabel(CGIText newM_AdditionalLabel) {
+		if (newM_AdditionalLabel != m_AdditionalLabel) {
+			NotificationChain msgs = null;
+			if (m_AdditionalLabel != null)
+				msgs = ((InternalEObject)m_AdditionalLabel).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.CGI_ANNOTATION__MADDITIONAL_LABEL, null, msgs);
+			if (newM_AdditionalLabel != null)
+				msgs = ((InternalEObject)newM_AdditionalLabel).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.CGI_ANNOTATION__MADDITIONAL_LABEL, null, msgs);
+			msgs = basicSetM_AdditionalLabel(newM_AdditionalLabel, msgs);
+			if (msgs != null) msgs.dispatch();
+		}
+		else if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_ANNOTATION__MADDITIONAL_LABEL, newM_AdditionalLabel, newM_AdditionalLabel));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<String> getM_polygon() {
+		if (m_polygon == null) {
+			m_polygon = new EDataTypeEList<String>(String.class, this, UMLRpyPackage.CGI_ANNOTATION__MPOLYGON);
+		}
+		return m_polygon;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getM_nNameFormat() {
+		return m_nNameFormat;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_nNameFormat(String newM_nNameFormat) {
+		String oldM_nNameFormat = m_nNameFormat;
+		m_nNameFormat = newM_nNameFormat;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_ANNOTATION__MNNAME_FORMAT, oldM_nNameFormat, m_nNameFormat));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getM_nIsNameFormat() {
+		return m_nIsNameFormat;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_nIsNameFormat(String newM_nIsNameFormat) {
+		String oldM_nIsNameFormat = m_nIsNameFormat;
+		m_nIsNameFormat = newM_nIsNameFormat;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_ANNOTATION__MNIS_NAME_FORMAT, oldM_nIsNameFormat, m_nIsNameFormat));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getITempdisplayTextFlag() {
+		return iTempdisplayTextFlag;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setITempdisplayTextFlag(String newITempdisplayTextFlag) {
+		String oldITempdisplayTextFlag = iTempdisplayTextFlag;
+		iTempdisplayTextFlag = newITempdisplayTextFlag;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_ANNOTATION__ITEMPDISPLAY_TEXT_FLAG, oldITempdisplayTextFlag, iTempdisplayTextFlag));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getM_bIsBoxStyle() {
+		return m_bIsBoxStyle;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_bIsBoxStyle(String newM_bIsBoxStyle) {
+		String oldM_bIsBoxStyle = m_bIsBoxStyle;
+		m_bIsBoxStyle = newM_bIsBoxStyle;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_ANNOTATION__MBIS_BOX_STYLE, oldM_bIsBoxStyle, m_bIsBoxStyle));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IUnit getM_pModelObject() {
+		if (m_pModelObject != null && m_pModelObject.eIsProxy()) {
+			InternalEObject oldM_pModelObject = (InternalEObject)m_pModelObject;
+			m_pModelObject = (IUnit)eResolveProxy(oldM_pModelObject);
+			if (m_pModelObject != oldM_pModelObject) {
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.CGI_ANNOTATION__MPMODEL_OBJECT, oldM_pModelObject, m_pModelObject));
+			}
+		}
+		return m_pModelObject;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IUnit basicGetM_pModelObject() {
+		return m_pModelObject;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_pModelObject(IUnit newM_pModelObject) {
+		IUnit oldM_pModelObject = m_pModelObject;
+		m_pModelObject = newM_pModelObject;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_ANNOTATION__MPMODEL_OBJECT, oldM_pModelObject, m_pModelObject));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IColor getM_color() {
+		if (m_color != null && m_color.eIsProxy()) {
+			InternalEObject oldM_color = (InternalEObject)m_color;
+			m_color = (IColor)eResolveProxy(oldM_color);
+			if (m_color != oldM_color) {
+				InternalEObject newM_color = (InternalEObject)m_color;
+				NotificationChain msgs = oldM_color.eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.CGI_ANNOTATION__MCOLOR, null, null);
+				if (newM_color.eInternalContainer() == null) {
+					msgs = newM_color.eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.CGI_ANNOTATION__MCOLOR, null, msgs);
+				}
+				if (msgs != null) msgs.dispatch();
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.CGI_ANNOTATION__MCOLOR, oldM_color, m_color));
+			}
+		}
+		return m_color;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IColor basicGetM_color() {
+		return m_color;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public NotificationChain basicSetM_color(IColor newM_color, NotificationChain msgs) {
+		IColor oldM_color = m_color;
+		m_color = newM_color;
+		if (eNotificationRequired()) {
+			ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_ANNOTATION__MCOLOR, oldM_color, newM_color);
+			if (msgs == null) msgs = notification; else msgs.add(notification);
+		}
+		return msgs;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_color(IColor newM_color) {
+		if (newM_color != m_color) {
+			NotificationChain msgs = null;
+			if (m_color != null)
+				msgs = ((InternalEObject)m_color).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.CGI_ANNOTATION__MCOLOR, null, msgs);
+			if (newM_color != null)
+				msgs = ((InternalEObject)newM_color).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.CGI_ANNOTATION__MCOLOR, null, msgs);
+			msgs = basicSetM_color(newM_color, msgs);
+			if (msgs != null) msgs.dispatch();
+		}
+		else if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_ANNOTATION__MCOLOR, newM_color, newM_color));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getM_lineWidth() {
+		return m_lineWidth;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_lineWidth(String newM_lineWidth) {
+		String oldM_lineWidth = m_lineWidth;
+		m_lineWidth = newM_lineWidth;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_ANNOTATION__MLINE_WIDTH, oldM_lineWidth, m_lineWidth));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getFrameset() {
+		return frameset;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setFrameset(String newFrameset) {
+		String oldFrameset = frameset;
+		frameset = newFrameset;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_ANNOTATION__FRAMESET, oldFrameset, frameset));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public CompartmentsType getCompartments() {
+		if (compartments != null && compartments.eIsProxy()) {
+			InternalEObject oldCompartments = (InternalEObject)compartments;
+			compartments = (CompartmentsType)eResolveProxy(oldCompartments);
+			if (compartments != oldCompartments) {
+				InternalEObject newCompartments = (InternalEObject)compartments;
+				NotificationChain msgs = oldCompartments.eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.CGI_ANNOTATION__COMPARTMENTS, null, null);
+				if (newCompartments.eInternalContainer() == null) {
+					msgs = newCompartments.eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.CGI_ANNOTATION__COMPARTMENTS, null, msgs);
+				}
+				if (msgs != null) msgs.dispatch();
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.CGI_ANNOTATION__COMPARTMENTS, oldCompartments, compartments));
+			}
+		}
+		return compartments;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public CompartmentsType basicGetCompartments() {
+		return compartments;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public NotificationChain basicSetCompartments(CompartmentsType newCompartments, NotificationChain msgs) {
+		CompartmentsType oldCompartments = compartments;
+		compartments = newCompartments;
+		if (eNotificationRequired()) {
+			ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_ANNOTATION__COMPARTMENTS, oldCompartments, newCompartments);
+			if (msgs == null) msgs = notification; else msgs.add(notification);
+		}
+		return msgs;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setCompartments(CompartmentsType newCompartments) {
+		if (newCompartments != compartments) {
+			NotificationChain msgs = null;
+			if (compartments != null)
+				msgs = ((InternalEObject)compartments).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.CGI_ANNOTATION__COMPARTMENTS, null, msgs);
+			if (newCompartments != null)
+				msgs = ((InternalEObject)newCompartments).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.CGI_ANNOTATION__COMPARTMENTS, null, msgs);
+			msgs = basicSetCompartments(newCompartments, msgs);
+			if (msgs != null) msgs.dispatch();
+		}
+		else if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_ANNOTATION__COMPARTMENTS, newCompartments, newCompartments));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getM_bIsStructured() {
+		return m_bIsStructured;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_bIsStructured(String newM_bIsStructured) {
+		String oldM_bIsStructured = m_bIsStructured;
+		m_bIsStructured = newM_bIsStructured;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_ANNOTATION__MBIS_STRUCTURED, oldM_bIsStructured, m_bIsStructured));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getM_bFramesetModified() {
+		return m_bFramesetModified;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_bFramesetModified(String newM_bFramesetModified) {
+		String oldM_bFramesetModified = m_bFramesetModified;
+		m_bFramesetModified = newM_bFramesetModified;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_ANNOTATION__MBFRAMESET_MODIFIED, oldM_bFramesetModified, m_bFramesetModified));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
+		switch (featureID) {
+			case UMLRpyPackage.CGI_ANNOTATION__PROPERTIES:
+				return basicSetProperties(null, msgs);
+			case UMLRpyPackage.CGI_ANNOTATION__MADDITIONAL_LABEL:
+				return basicSetM_AdditionalLabel(null, msgs);
+			case UMLRpyPackage.CGI_ANNOTATION__MCOLOR:
+				return basicSetM_color(null, msgs);
+			case UMLRpyPackage.CGI_ANNOTATION__COMPARTMENTS:
+				return basicSetCompartments(null, msgs);
+		}
+		return super.eInverseRemove(otherEnd, featureID, msgs);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object eGet(int featureID, boolean resolve, boolean coreType) {
+		switch (featureID) {
+			case UMLRpyPackage.CGI_ANNOTATION__PROPERTIES:
+				if (resolve) return getProperties();
+				return basicGetProperties();
+			case UMLRpyPackage.CGI_ANNOTATION__MPPARENT:
+				if (resolve) return getM_pParent();
+				return basicGetM_pParent();
+			case UMLRpyPackage.CGI_ANNOTATION__MTRANSFORM:
+				return getM_transform();
+			case UMLRpyPackage.CGI_ANNOTATION__MADDITIONAL_LABEL:
+				if (resolve) return getM_AdditionalLabel();
+				return basicGetM_AdditionalLabel();
+			case UMLRpyPackage.CGI_ANNOTATION__MPOLYGON:
+				return getM_polygon();
+			case UMLRpyPackage.CGI_ANNOTATION__MNNAME_FORMAT:
+				return getM_nNameFormat();
+			case UMLRpyPackage.CGI_ANNOTATION__MNIS_NAME_FORMAT:
+				return getM_nIsNameFormat();
+			case UMLRpyPackage.CGI_ANNOTATION__ITEMPDISPLAY_TEXT_FLAG:
+				return getITempdisplayTextFlag();
+			case UMLRpyPackage.CGI_ANNOTATION__MBIS_BOX_STYLE:
+				return getM_bIsBoxStyle();
+			case UMLRpyPackage.CGI_ANNOTATION__MPMODEL_OBJECT:
+				if (resolve) return getM_pModelObject();
+				return basicGetM_pModelObject();
+			case UMLRpyPackage.CGI_ANNOTATION__MCOLOR:
+				if (resolve) return getM_color();
+				return basicGetM_color();
+			case UMLRpyPackage.CGI_ANNOTATION__MLINE_WIDTH:
+				return getM_lineWidth();
+			case UMLRpyPackage.CGI_ANNOTATION__FRAMESET:
+				return getFrameset();
+			case UMLRpyPackage.CGI_ANNOTATION__COMPARTMENTS:
+				if (resolve) return getCompartments();
+				return basicGetCompartments();
+			case UMLRpyPackage.CGI_ANNOTATION__MBIS_STRUCTURED:
+				return getM_bIsStructured();
+			case UMLRpyPackage.CGI_ANNOTATION__MBFRAMESET_MODIFIED:
+				return getM_bFramesetModified();
+		}
+		return super.eGet(featureID, resolve, coreType);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@SuppressWarnings("unchecked")
+	@Override
+	public void eSet(int featureID, Object newValue) {
+		switch (featureID) {
+			case UMLRpyPackage.CGI_ANNOTATION__PROPERTIES:
+				setProperties((IPropertyContainer)newValue);
+				return;
+			case UMLRpyPackage.CGI_ANNOTATION__MPPARENT:
+				setM_pParent((M_pRootType)newValue);
+				return;
+			case UMLRpyPackage.CGI_ANNOTATION__MTRANSFORM:
+				getM_transform().clear();
+				getM_transform().addAll((Collection<? extends String>)newValue);
+				return;
+			case UMLRpyPackage.CGI_ANNOTATION__MADDITIONAL_LABEL:
+				setM_AdditionalLabel((CGIText)newValue);
+				return;
+			case UMLRpyPackage.CGI_ANNOTATION__MPOLYGON:
+				getM_polygon().clear();
+				getM_polygon().addAll((Collection<? extends String>)newValue);
+				return;
+			case UMLRpyPackage.CGI_ANNOTATION__MNNAME_FORMAT:
+				setM_nNameFormat((String)newValue);
+				return;
+			case UMLRpyPackage.CGI_ANNOTATION__MNIS_NAME_FORMAT:
+				setM_nIsNameFormat((String)newValue);
+				return;
+			case UMLRpyPackage.CGI_ANNOTATION__ITEMPDISPLAY_TEXT_FLAG:
+				setITempdisplayTextFlag((String)newValue);
+				return;
+			case UMLRpyPackage.CGI_ANNOTATION__MBIS_BOX_STYLE:
+				setM_bIsBoxStyle((String)newValue);
+				return;
+			case UMLRpyPackage.CGI_ANNOTATION__MPMODEL_OBJECT:
+				setM_pModelObject((IUnit)newValue);
+				return;
+			case UMLRpyPackage.CGI_ANNOTATION__MCOLOR:
+				setM_color((IColor)newValue);
+				return;
+			case UMLRpyPackage.CGI_ANNOTATION__MLINE_WIDTH:
+				setM_lineWidth((String)newValue);
+				return;
+			case UMLRpyPackage.CGI_ANNOTATION__FRAMESET:
+				setFrameset((String)newValue);
+				return;
+			case UMLRpyPackage.CGI_ANNOTATION__COMPARTMENTS:
+				setCompartments((CompartmentsType)newValue);
+				return;
+			case UMLRpyPackage.CGI_ANNOTATION__MBIS_STRUCTURED:
+				setM_bIsStructured((String)newValue);
+				return;
+			case UMLRpyPackage.CGI_ANNOTATION__MBFRAMESET_MODIFIED:
+				setM_bFramesetModified((String)newValue);
+				return;
+		}
+		super.eSet(featureID, newValue);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void eUnset(int featureID) {
+		switch (featureID) {
+			case UMLRpyPackage.CGI_ANNOTATION__PROPERTIES:
+				setProperties((IPropertyContainer)null);
+				return;
+			case UMLRpyPackage.CGI_ANNOTATION__MPPARENT:
+				setM_pParent((M_pRootType)null);
+				return;
+			case UMLRpyPackage.CGI_ANNOTATION__MTRANSFORM:
+				getM_transform().clear();
+				return;
+			case UMLRpyPackage.CGI_ANNOTATION__MADDITIONAL_LABEL:
+				setM_AdditionalLabel((CGIText)null);
+				return;
+			case UMLRpyPackage.CGI_ANNOTATION__MPOLYGON:
+				getM_polygon().clear();
+				return;
+			case UMLRpyPackage.CGI_ANNOTATION__MNNAME_FORMAT:
+				setM_nNameFormat(MNNAME_FORMAT_EDEFAULT);
+				return;
+			case UMLRpyPackage.CGI_ANNOTATION__MNIS_NAME_FORMAT:
+				setM_nIsNameFormat(MNIS_NAME_FORMAT_EDEFAULT);
+				return;
+			case UMLRpyPackage.CGI_ANNOTATION__ITEMPDISPLAY_TEXT_FLAG:
+				setITempdisplayTextFlag(ITEMPDISPLAY_TEXT_FLAG_EDEFAULT);
+				return;
+			case UMLRpyPackage.CGI_ANNOTATION__MBIS_BOX_STYLE:
+				setM_bIsBoxStyle(MBIS_BOX_STYLE_EDEFAULT);
+				return;
+			case UMLRpyPackage.CGI_ANNOTATION__MPMODEL_OBJECT:
+				setM_pModelObject((IUnit)null);
+				return;
+			case UMLRpyPackage.CGI_ANNOTATION__MCOLOR:
+				setM_color((IColor)null);
+				return;
+			case UMLRpyPackage.CGI_ANNOTATION__MLINE_WIDTH:
+				setM_lineWidth(MLINE_WIDTH_EDEFAULT);
+				return;
+			case UMLRpyPackage.CGI_ANNOTATION__FRAMESET:
+				setFrameset(FRAMESET_EDEFAULT);
+				return;
+			case UMLRpyPackage.CGI_ANNOTATION__COMPARTMENTS:
+				setCompartments((CompartmentsType)null);
+				return;
+			case UMLRpyPackage.CGI_ANNOTATION__MBIS_STRUCTURED:
+				setM_bIsStructured(MBIS_STRUCTURED_EDEFAULT);
+				return;
+			case UMLRpyPackage.CGI_ANNOTATION__MBFRAMESET_MODIFIED:
+				setM_bFramesetModified(MBFRAMESET_MODIFIED_EDEFAULT);
+				return;
+		}
+		super.eUnset(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public boolean eIsSet(int featureID) {
+		switch (featureID) {
+			case UMLRpyPackage.CGI_ANNOTATION__PROPERTIES:
+				return properties != null;
+			case UMLRpyPackage.CGI_ANNOTATION__MPPARENT:
+				return m_pParent != null;
+			case UMLRpyPackage.CGI_ANNOTATION__MTRANSFORM:
+				return m_transform != null && !m_transform.isEmpty();
+			case UMLRpyPackage.CGI_ANNOTATION__MADDITIONAL_LABEL:
+				return m_AdditionalLabel != null;
+			case UMLRpyPackage.CGI_ANNOTATION__MPOLYGON:
+				return m_polygon != null && !m_polygon.isEmpty();
+			case UMLRpyPackage.CGI_ANNOTATION__MNNAME_FORMAT:
+				return MNNAME_FORMAT_EDEFAULT == null ? m_nNameFormat != null : !MNNAME_FORMAT_EDEFAULT.equals(m_nNameFormat);
+			case UMLRpyPackage.CGI_ANNOTATION__MNIS_NAME_FORMAT:
+				return MNIS_NAME_FORMAT_EDEFAULT == null ? m_nIsNameFormat != null : !MNIS_NAME_FORMAT_EDEFAULT.equals(m_nIsNameFormat);
+			case UMLRpyPackage.CGI_ANNOTATION__ITEMPDISPLAY_TEXT_FLAG:
+				return ITEMPDISPLAY_TEXT_FLAG_EDEFAULT == null ? iTempdisplayTextFlag != null : !ITEMPDISPLAY_TEXT_FLAG_EDEFAULT.equals(iTempdisplayTextFlag);
+			case UMLRpyPackage.CGI_ANNOTATION__MBIS_BOX_STYLE:
+				return MBIS_BOX_STYLE_EDEFAULT == null ? m_bIsBoxStyle != null : !MBIS_BOX_STYLE_EDEFAULT.equals(m_bIsBoxStyle);
+			case UMLRpyPackage.CGI_ANNOTATION__MPMODEL_OBJECT:
+				return m_pModelObject != null;
+			case UMLRpyPackage.CGI_ANNOTATION__MCOLOR:
+				return m_color != null;
+			case UMLRpyPackage.CGI_ANNOTATION__MLINE_WIDTH:
+				return MLINE_WIDTH_EDEFAULT == null ? m_lineWidth != null : !MLINE_WIDTH_EDEFAULT.equals(m_lineWidth);
+			case UMLRpyPackage.CGI_ANNOTATION__FRAMESET:
+				return FRAMESET_EDEFAULT == null ? frameset != null : !FRAMESET_EDEFAULT.equals(frameset);
+			case UMLRpyPackage.CGI_ANNOTATION__COMPARTMENTS:
+				return compartments != null;
+			case UMLRpyPackage.CGI_ANNOTATION__MBIS_STRUCTURED:
+				return MBIS_STRUCTURED_EDEFAULT == null ? m_bIsStructured != null : !MBIS_STRUCTURED_EDEFAULT.equals(m_bIsStructured);
+			case UMLRpyPackage.CGI_ANNOTATION__MBFRAMESET_MODIFIED:
+				return MBFRAMESET_MODIFIED_EDEFAULT == null ? m_bFramesetModified != null : !MBFRAMESET_MODIFIED_EDEFAULT.equals(m_bFramesetModified);
+		}
+		return super.eIsSet(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String toString() {
+		if (eIsProxy()) return super.toString();
+
+		StringBuffer result = new StringBuffer(super.toString());
+		result.append(" (m_transform: "); //$NON-NLS-1$
+		result.append(m_transform);
+		result.append(", m_polygon: "); //$NON-NLS-1$
+		result.append(m_polygon);
+		result.append(", m_nNameFormat: "); //$NON-NLS-1$
+		result.append(m_nNameFormat);
+		result.append(", m_nIsNameFormat: "); //$NON-NLS-1$
+		result.append(m_nIsNameFormat);
+		result.append(", iTempdisplayTextFlag: "); //$NON-NLS-1$
+		result.append(iTempdisplayTextFlag);
+		result.append(", m_bIsBoxStyle: "); //$NON-NLS-1$
+		result.append(m_bIsBoxStyle);
+		result.append(", m_lineWidth: "); //$NON-NLS-1$
+		result.append(m_lineWidth);
+		result.append(", frameset: "); //$NON-NLS-1$
+		result.append(frameset);
+		result.append(", m_bIsStructured: "); //$NON-NLS-1$
+		result.append(m_bIsStructured);
+		result.append(", m_bFramesetModified: "); //$NON-NLS-1$
+		result.append(m_bFramesetModified);
+		result.append(')');
+		return result.toString();
+	}
+
+} //CGIAnnotationImpl
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/CGIArrowImpl.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/CGIArrowImpl.java
new file mode 100755
index 0000000..89a936b
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/CGIArrowImpl.java
@@ -0,0 +1,801 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl;
+
+import java.util.Collection;
+
+import org.eclipse.emf.common.notify.Notification;
+import org.eclipse.emf.common.notify.NotificationChain;
+
+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.EDataTypeEList;
+import org.eclipse.emf.ecore.util.EObjectResolvingEList;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIArrow;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIComponent;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIText;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UnknownType;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>CGI Arrow</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * </p>
+ * <ul>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIArrowImpl#getM_pModelObject <em>MpModel Object</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIArrowImpl#getM_pParent <em>MpParent</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIArrowImpl#getM_pSource <em>MpSource</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIArrowImpl#getM_sourceType <em>Msource Type</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIArrowImpl#getM_pTarget <em>MpTarget</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIArrowImpl#getM_targetType <em>Mtarget Type</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIArrowImpl#getM_direction <em>Mdirection</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIArrowImpl#getM_rpn <em>Mrpn</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIArrowImpl#getM_anglePoint1 <em>Mangle Point1</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIArrowImpl#getM_anglePoint2 <em>Mangle Point2</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIArrowImpl#getM_line_style <em>Mline style</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIArrowImpl#getM_SourcePort <em>MSource Port</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIArrowImpl#getM_TargetPort <em>MTarget Port</em>}</li>
+ * </ul>
+ *
+ * @generated
+ */
+public class CGIArrowImpl extends GraphElementsTypeImpl implements CGIArrow {
+	/**
+	 * The cached value of the '{@link #getM_pModelObject() <em>MpModel Object</em>}' reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_pModelObject()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<UnknownType> m_pModelObject;
+
+	/**
+	 * The default value of the '{@link #getM_pParent() <em>MpParent</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_pParent()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String MPPARENT_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getM_pParent() <em>MpParent</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_pParent()
+	 * @generated
+	 * @ordered
+	 */
+	protected String m_pParent = MPPARENT_EDEFAULT;
+
+	/**
+	 * The cached value of the '{@link #getM_pSource() <em>MpSource</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_pSource()
+	 * @generated
+	 * @ordered
+	 */
+	protected CGIComponent m_pSource;
+
+	/**
+	 * The default value of the '{@link #getM_sourceType() <em>Msource Type</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_sourceType()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String MSOURCE_TYPE_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getM_sourceType() <em>Msource Type</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_sourceType()
+	 * @generated
+	 * @ordered
+	 */
+	protected String m_sourceType = MSOURCE_TYPE_EDEFAULT;
+
+	/**
+	 * The cached value of the '{@link #getM_pTarget() <em>MpTarget</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_pTarget()
+	 * @generated
+	 * @ordered
+	 */
+	protected CGIComponent m_pTarget;
+
+	/**
+	 * The default value of the '{@link #getM_targetType() <em>Mtarget Type</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_targetType()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String MTARGET_TYPE_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getM_targetType() <em>Mtarget Type</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_targetType()
+	 * @generated
+	 * @ordered
+	 */
+	protected String m_targetType = MTARGET_TYPE_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getM_direction() <em>Mdirection</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_direction()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String MDIRECTION_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getM_direction() <em>Mdirection</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_direction()
+	 * @generated
+	 * @ordered
+	 */
+	protected String m_direction = MDIRECTION_EDEFAULT;
+
+	/**
+	 * The cached value of the '{@link #getM_rpn() <em>Mrpn</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_rpn()
+	 * @generated
+	 * @ordered
+	 */
+	protected CGIText m_rpn;
+
+	/**
+	 * The cached value of the '{@link #getM_anglePoint1() <em>Mangle Point1</em>}' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_anglePoint1()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<String> m_anglePoint1;
+
+	/**
+	 * The cached value of the '{@link #getM_anglePoint2() <em>Mangle Point2</em>}' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_anglePoint2()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<String> m_anglePoint2;
+
+	/**
+	 * The default value of the '{@link #getM_line_style() <em>Mline style</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_line_style()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String MLINE_STYLE_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getM_line_style() <em>Mline style</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_line_style()
+	 * @generated
+	 * @ordered
+	 */
+	protected String m_line_style = MLINE_STYLE_EDEFAULT;
+
+	/**
+	 * The cached value of the '{@link #getM_SourcePort() <em>MSource Port</em>}' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_SourcePort()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<String> m_SourcePort;
+
+	/**
+	 * The cached value of the '{@link #getM_TargetPort() <em>MTarget Port</em>}' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_TargetPort()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<String> m_TargetPort;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected CGIArrowImpl() {
+		super();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EClass eStaticClass() {
+		return UMLRpyPackage.eINSTANCE.getCGIArrow();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<UnknownType> getM_pModelObject() {
+		if (m_pModelObject == null) {
+			m_pModelObject = new EObjectResolvingEList<UnknownType>(UnknownType.class, this, UMLRpyPackage.CGI_ARROW__MPMODEL_OBJECT);
+		}
+		return m_pModelObject;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getM_pParent() {
+		return m_pParent;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_pParent(String newM_pParent) {
+		String oldM_pParent = m_pParent;
+		m_pParent = newM_pParent;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_ARROW__MPPARENT, oldM_pParent, m_pParent));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public CGIComponent getM_pSource() {
+		if (m_pSource != null && m_pSource.eIsProxy()) {
+			InternalEObject oldM_pSource = (InternalEObject)m_pSource;
+			m_pSource = (CGIComponent)eResolveProxy(oldM_pSource);
+			if (m_pSource != oldM_pSource) {
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.CGI_ARROW__MPSOURCE, oldM_pSource, m_pSource));
+			}
+		}
+		return m_pSource;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public CGIComponent basicGetM_pSource() {
+		return m_pSource;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_pSource(CGIComponent newM_pSource) {
+		CGIComponent oldM_pSource = m_pSource;
+		m_pSource = newM_pSource;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_ARROW__MPSOURCE, oldM_pSource, m_pSource));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getM_sourceType() {
+		return m_sourceType;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_sourceType(String newM_sourceType) {
+		String oldM_sourceType = m_sourceType;
+		m_sourceType = newM_sourceType;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_ARROW__MSOURCE_TYPE, oldM_sourceType, m_sourceType));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public CGIComponent getM_pTarget() {
+		if (m_pTarget != null && m_pTarget.eIsProxy()) {
+			InternalEObject oldM_pTarget = (InternalEObject)m_pTarget;
+			m_pTarget = (CGIComponent)eResolveProxy(oldM_pTarget);
+			if (m_pTarget != oldM_pTarget) {
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.CGI_ARROW__MPTARGET, oldM_pTarget, m_pTarget));
+			}
+		}
+		return m_pTarget;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public CGIComponent basicGetM_pTarget() {
+		return m_pTarget;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_pTarget(CGIComponent newM_pTarget) {
+		CGIComponent oldM_pTarget = m_pTarget;
+		m_pTarget = newM_pTarget;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_ARROW__MPTARGET, oldM_pTarget, m_pTarget));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getM_targetType() {
+		return m_targetType;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_targetType(String newM_targetType) {
+		String oldM_targetType = m_targetType;
+		m_targetType = newM_targetType;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_ARROW__MTARGET_TYPE, oldM_targetType, m_targetType));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getM_direction() {
+		return m_direction;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_direction(String newM_direction) {
+		String oldM_direction = m_direction;
+		m_direction = newM_direction;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_ARROW__MDIRECTION, oldM_direction, m_direction));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public CGIText getM_rpn() {
+		if (m_rpn != null && m_rpn.eIsProxy()) {
+			InternalEObject oldM_rpn = (InternalEObject)m_rpn;
+			m_rpn = (CGIText)eResolveProxy(oldM_rpn);
+			if (m_rpn != oldM_rpn) {
+				InternalEObject newM_rpn = (InternalEObject)m_rpn;
+				NotificationChain msgs = oldM_rpn.eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.CGI_ARROW__MRPN, null, null);
+				if (newM_rpn.eInternalContainer() == null) {
+					msgs = newM_rpn.eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.CGI_ARROW__MRPN, null, msgs);
+				}
+				if (msgs != null) msgs.dispatch();
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.CGI_ARROW__MRPN, oldM_rpn, m_rpn));
+			}
+		}
+		return m_rpn;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public CGIText basicGetM_rpn() {
+		return m_rpn;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public NotificationChain basicSetM_rpn(CGIText newM_rpn, NotificationChain msgs) {
+		CGIText oldM_rpn = m_rpn;
+		m_rpn = newM_rpn;
+		if (eNotificationRequired()) {
+			ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_ARROW__MRPN, oldM_rpn, newM_rpn);
+			if (msgs == null) msgs = notification; else msgs.add(notification);
+		}
+		return msgs;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_rpn(CGIText newM_rpn) {
+		if (newM_rpn != m_rpn) {
+			NotificationChain msgs = null;
+			if (m_rpn != null)
+				msgs = ((InternalEObject)m_rpn).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.CGI_ARROW__MRPN, null, msgs);
+			if (newM_rpn != null)
+				msgs = ((InternalEObject)newM_rpn).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.CGI_ARROW__MRPN, null, msgs);
+			msgs = basicSetM_rpn(newM_rpn, msgs);
+			if (msgs != null) msgs.dispatch();
+		}
+		else if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_ARROW__MRPN, newM_rpn, newM_rpn));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<String> getM_anglePoint1() {
+		if (m_anglePoint1 == null) {
+			m_anglePoint1 = new EDataTypeEList<String>(String.class, this, UMLRpyPackage.CGI_ARROW__MANGLE_POINT1);
+		}
+		return m_anglePoint1;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<String> getM_anglePoint2() {
+		if (m_anglePoint2 == null) {
+			m_anglePoint2 = new EDataTypeEList<String>(String.class, this, UMLRpyPackage.CGI_ARROW__MANGLE_POINT2);
+		}
+		return m_anglePoint2;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getM_line_style() {
+		return m_line_style;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_line_style(String newM_line_style) {
+		String oldM_line_style = m_line_style;
+		m_line_style = newM_line_style;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_ARROW__MLINE_STYLE, oldM_line_style, m_line_style));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<String> getM_SourcePort() {
+		if (m_SourcePort == null) {
+			m_SourcePort = new EDataTypeEList<String>(String.class, this, UMLRpyPackage.CGI_ARROW__MSOURCE_PORT);
+		}
+		return m_SourcePort;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<String> getM_TargetPort() {
+		if (m_TargetPort == null) {
+			m_TargetPort = new EDataTypeEList<String>(String.class, this, UMLRpyPackage.CGI_ARROW__MTARGET_PORT);
+		}
+		return m_TargetPort;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
+		switch (featureID) {
+			case UMLRpyPackage.CGI_ARROW__MRPN:
+				return basicSetM_rpn(null, msgs);
+		}
+		return super.eInverseRemove(otherEnd, featureID, msgs);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object eGet(int featureID, boolean resolve, boolean coreType) {
+		switch (featureID) {
+			case UMLRpyPackage.CGI_ARROW__MPMODEL_OBJECT:
+				return getM_pModelObject();
+			case UMLRpyPackage.CGI_ARROW__MPPARENT:
+				return getM_pParent();
+			case UMLRpyPackage.CGI_ARROW__MPSOURCE:
+				if (resolve) return getM_pSource();
+				return basicGetM_pSource();
+			case UMLRpyPackage.CGI_ARROW__MSOURCE_TYPE:
+				return getM_sourceType();
+			case UMLRpyPackage.CGI_ARROW__MPTARGET:
+				if (resolve) return getM_pTarget();
+				return basicGetM_pTarget();
+			case UMLRpyPackage.CGI_ARROW__MTARGET_TYPE:
+				return getM_targetType();
+			case UMLRpyPackage.CGI_ARROW__MDIRECTION:
+				return getM_direction();
+			case UMLRpyPackage.CGI_ARROW__MRPN:
+				if (resolve) return getM_rpn();
+				return basicGetM_rpn();
+			case UMLRpyPackage.CGI_ARROW__MANGLE_POINT1:
+				return getM_anglePoint1();
+			case UMLRpyPackage.CGI_ARROW__MANGLE_POINT2:
+				return getM_anglePoint2();
+			case UMLRpyPackage.CGI_ARROW__MLINE_STYLE:
+				return getM_line_style();
+			case UMLRpyPackage.CGI_ARROW__MSOURCE_PORT:
+				return getM_SourcePort();
+			case UMLRpyPackage.CGI_ARROW__MTARGET_PORT:
+				return getM_TargetPort();
+		}
+		return super.eGet(featureID, resolve, coreType);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@SuppressWarnings("unchecked")
+	@Override
+	public void eSet(int featureID, Object newValue) {
+		switch (featureID) {
+			case UMLRpyPackage.CGI_ARROW__MPMODEL_OBJECT:
+				getM_pModelObject().clear();
+				getM_pModelObject().addAll((Collection<? extends UnknownType>)newValue);
+				return;
+			case UMLRpyPackage.CGI_ARROW__MPPARENT:
+				setM_pParent((String)newValue);
+				return;
+			case UMLRpyPackage.CGI_ARROW__MPSOURCE:
+				setM_pSource((CGIComponent)newValue);
+				return;
+			case UMLRpyPackage.CGI_ARROW__MSOURCE_TYPE:
+				setM_sourceType((String)newValue);
+				return;
+			case UMLRpyPackage.CGI_ARROW__MPTARGET:
+				setM_pTarget((CGIComponent)newValue);
+				return;
+			case UMLRpyPackage.CGI_ARROW__MTARGET_TYPE:
+				setM_targetType((String)newValue);
+				return;
+			case UMLRpyPackage.CGI_ARROW__MDIRECTION:
+				setM_direction((String)newValue);
+				return;
+			case UMLRpyPackage.CGI_ARROW__MRPN:
+				setM_rpn((CGIText)newValue);
+				return;
+			case UMLRpyPackage.CGI_ARROW__MANGLE_POINT1:
+				getM_anglePoint1().clear();
+				getM_anglePoint1().addAll((Collection<? extends String>)newValue);
+				return;
+			case UMLRpyPackage.CGI_ARROW__MANGLE_POINT2:
+				getM_anglePoint2().clear();
+				getM_anglePoint2().addAll((Collection<? extends String>)newValue);
+				return;
+			case UMLRpyPackage.CGI_ARROW__MLINE_STYLE:
+				setM_line_style((String)newValue);
+				return;
+			case UMLRpyPackage.CGI_ARROW__MSOURCE_PORT:
+				getM_SourcePort().clear();
+				getM_SourcePort().addAll((Collection<? extends String>)newValue);
+				return;
+			case UMLRpyPackage.CGI_ARROW__MTARGET_PORT:
+				getM_TargetPort().clear();
+				getM_TargetPort().addAll((Collection<? extends String>)newValue);
+				return;
+		}
+		super.eSet(featureID, newValue);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void eUnset(int featureID) {
+		switch (featureID) {
+			case UMLRpyPackage.CGI_ARROW__MPMODEL_OBJECT:
+				getM_pModelObject().clear();
+				return;
+			case UMLRpyPackage.CGI_ARROW__MPPARENT:
+				setM_pParent(MPPARENT_EDEFAULT);
+				return;
+			case UMLRpyPackage.CGI_ARROW__MPSOURCE:
+				setM_pSource((CGIComponent)null);
+				return;
+			case UMLRpyPackage.CGI_ARROW__MSOURCE_TYPE:
+				setM_sourceType(MSOURCE_TYPE_EDEFAULT);
+				return;
+			case UMLRpyPackage.CGI_ARROW__MPTARGET:
+				setM_pTarget((CGIComponent)null);
+				return;
+			case UMLRpyPackage.CGI_ARROW__MTARGET_TYPE:
+				setM_targetType(MTARGET_TYPE_EDEFAULT);
+				return;
+			case UMLRpyPackage.CGI_ARROW__MDIRECTION:
+				setM_direction(MDIRECTION_EDEFAULT);
+				return;
+			case UMLRpyPackage.CGI_ARROW__MRPN:
+				setM_rpn((CGIText)null);
+				return;
+			case UMLRpyPackage.CGI_ARROW__MANGLE_POINT1:
+				getM_anglePoint1().clear();
+				return;
+			case UMLRpyPackage.CGI_ARROW__MANGLE_POINT2:
+				getM_anglePoint2().clear();
+				return;
+			case UMLRpyPackage.CGI_ARROW__MLINE_STYLE:
+				setM_line_style(MLINE_STYLE_EDEFAULT);
+				return;
+			case UMLRpyPackage.CGI_ARROW__MSOURCE_PORT:
+				getM_SourcePort().clear();
+				return;
+			case UMLRpyPackage.CGI_ARROW__MTARGET_PORT:
+				getM_TargetPort().clear();
+				return;
+		}
+		super.eUnset(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public boolean eIsSet(int featureID) {
+		switch (featureID) {
+			case UMLRpyPackage.CGI_ARROW__MPMODEL_OBJECT:
+				return m_pModelObject != null && !m_pModelObject.isEmpty();
+			case UMLRpyPackage.CGI_ARROW__MPPARENT:
+				return MPPARENT_EDEFAULT == null ? m_pParent != null : !MPPARENT_EDEFAULT.equals(m_pParent);
+			case UMLRpyPackage.CGI_ARROW__MPSOURCE:
+				return m_pSource != null;
+			case UMLRpyPackage.CGI_ARROW__MSOURCE_TYPE:
+				return MSOURCE_TYPE_EDEFAULT == null ? m_sourceType != null : !MSOURCE_TYPE_EDEFAULT.equals(m_sourceType);
+			case UMLRpyPackage.CGI_ARROW__MPTARGET:
+				return m_pTarget != null;
+			case UMLRpyPackage.CGI_ARROW__MTARGET_TYPE:
+				return MTARGET_TYPE_EDEFAULT == null ? m_targetType != null : !MTARGET_TYPE_EDEFAULT.equals(m_targetType);
+			case UMLRpyPackage.CGI_ARROW__MDIRECTION:
+				return MDIRECTION_EDEFAULT == null ? m_direction != null : !MDIRECTION_EDEFAULT.equals(m_direction);
+			case UMLRpyPackage.CGI_ARROW__MRPN:
+				return m_rpn != null;
+			case UMLRpyPackage.CGI_ARROW__MANGLE_POINT1:
+				return m_anglePoint1 != null && !m_anglePoint1.isEmpty();
+			case UMLRpyPackage.CGI_ARROW__MANGLE_POINT2:
+				return m_anglePoint2 != null && !m_anglePoint2.isEmpty();
+			case UMLRpyPackage.CGI_ARROW__MLINE_STYLE:
+				return MLINE_STYLE_EDEFAULT == null ? m_line_style != null : !MLINE_STYLE_EDEFAULT.equals(m_line_style);
+			case UMLRpyPackage.CGI_ARROW__MSOURCE_PORT:
+				return m_SourcePort != null && !m_SourcePort.isEmpty();
+			case UMLRpyPackage.CGI_ARROW__MTARGET_PORT:
+				return m_TargetPort != null && !m_TargetPort.isEmpty();
+		}
+		return super.eIsSet(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String toString() {
+		if (eIsProxy()) return super.toString();
+
+		StringBuffer result = new StringBuffer(super.toString());
+		result.append(" (m_pParent: "); //$NON-NLS-1$
+		result.append(m_pParent);
+		result.append(", m_sourceType: "); //$NON-NLS-1$
+		result.append(m_sourceType);
+		result.append(", m_targetType: "); //$NON-NLS-1$
+		result.append(m_targetType);
+		result.append(", m_direction: "); //$NON-NLS-1$
+		result.append(m_direction);
+		result.append(", m_anglePoint1: "); //$NON-NLS-1$
+		result.append(m_anglePoint1);
+		result.append(", m_anglePoint2: "); //$NON-NLS-1$
+		result.append(m_anglePoint2);
+		result.append(", m_line_style: "); //$NON-NLS-1$
+		result.append(m_line_style);
+		result.append(", m_SourcePort: "); //$NON-NLS-1$
+		result.append(m_SourcePort);
+		result.append(", m_TargetPort: "); //$NON-NLS-1$
+		result.append(m_TargetPort);
+		result.append(')');
+		return result.toString();
+	}
+
+} //CGIArrowImpl
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/CGIAssociationEndImpl.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/CGIAssociationEndImpl.java
new file mode 100755
index 0000000..33b76c2
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/CGIAssociationEndImpl.java
@@ -0,0 +1,2305 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl;
+
+import java.util.Collection;
+
+import org.eclipse.emf.common.notify.Notification;
+import org.eclipse.emf.common.notify.NotificationChain;
+
+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.EDataTypeEList;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIAssociationEnd;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIText;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IAssociationEndHandle;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IObjectLinkHandle;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IPropertyContainer;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.M_pModelObjectType;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.M_pRootType;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>CGI Association End</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * </p>
+ * <ul>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIAssociationEndImpl#getProperties <em>Properties</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIAssociationEndImpl#getM_pModelObject <em>MpModel Object</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIAssociationEndImpl#getM_pParent <em>MpParent</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIAssociationEndImpl#getM_pSource <em>MpSource</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIAssociationEndImpl#getM_sourceType <em>Msource Type</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIAssociationEndImpl#getM_pTarget <em>MpTarget</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIAssociationEndImpl#getM_targetType <em>Mtarget Type</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIAssociationEndImpl#getM_direction <em>Mdirection</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIAssociationEndImpl#getM_rpn <em>Mrpn</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIAssociationEndImpl#getM_anglePoint1 <em>Mangle Point1</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIAssociationEndImpl#getM_anglePoint2 <em>Mangle Point2</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIAssociationEndImpl#getM_line_style <em>Mline style</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIAssociationEndImpl#getM_SourcePort <em>MSource Port</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIAssociationEndImpl#getM_TargetPort <em>MTarget Port</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIAssociationEndImpl#getM_pInverseModelObject <em>MpInverse Model Object</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIAssociationEndImpl#getM_pInstance <em>MpInstance</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIAssociationEndImpl#getM_pInverseInstance <em>MpInverse Instance</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIAssociationEndImpl#getM_bShowSourceMultiplicity <em>MbShow Source Multiplicity</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIAssociationEndImpl#getM_bShowSourceRole <em>MbShow Source Role</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIAssociationEndImpl#getM_bShowTargetMultiplicity <em>MbShow Target Multiplicity</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIAssociationEndImpl#getM_bShowTargetRole <em>MbShow Target Role</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIAssociationEndImpl#getM_bShowLinkName <em>MbShow Link Name</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIAssociationEndImpl#getM_bShowSpecificType <em>MbShow Specific Type</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIAssociationEndImpl#getM_bInstance <em>MbInstance</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIAssociationEndImpl#getM_bShowQualifier1 <em>MbShow Qualifier1</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIAssociationEndImpl#getM_bShowQualifier2 <em>MbShow Qualifier2</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIAssociationEndImpl#getM_sourceRole <em>Msource Role</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIAssociationEndImpl#getM_targetRole <em>Mtarget Role</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIAssociationEndImpl#getM_sourceMultiplicity <em>Msource Multiplicity</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIAssociationEndImpl#getM_targetMultiplicity <em>Mtarget Multiplicity</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIAssociationEndImpl#getM_sourceQualifier <em>Msource Qualifier</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIAssociationEndImpl#getM_targetQualifier <em>Mtarget Qualifier</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIAssociationEndImpl#getM_specificType <em>Mspecific Type</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIAssociationEndImpl#getM_arrow <em>Marrow</em>}</li>
+ * </ul>
+ *
+ * @generated
+ */
+public class CGIAssociationEndImpl extends GraphElementsTypeImpl implements CGIAssociationEnd {
+	/**
+	 * The cached value of the '{@link #getProperties() <em>Properties</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getProperties()
+	 * @generated
+	 * @ordered
+	 */
+	protected IPropertyContainer properties;
+
+	/**
+	 * The cached value of the '{@link #getM_pModelObject() <em>MpModel Object</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_pModelObject()
+	 * @generated
+	 * @ordered
+	 */
+	protected M_pModelObjectType m_pModelObject;
+
+	/**
+	 * The default value of the '{@link #getM_pParent() <em>MpParent</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_pParent()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String MPPARENT_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getM_pParent() <em>MpParent</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_pParent()
+	 * @generated
+	 * @ordered
+	 */
+	protected String m_pParent = MPPARENT_EDEFAULT;
+
+	/**
+	 * The cached value of the '{@link #getM_pSource() <em>MpSource</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_pSource()
+	 * @generated
+	 * @ordered
+	 */
+	protected M_pRootType m_pSource;
+
+	/**
+	 * The default value of the '{@link #getM_sourceType() <em>Msource Type</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_sourceType()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String MSOURCE_TYPE_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getM_sourceType() <em>Msource Type</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_sourceType()
+	 * @generated
+	 * @ordered
+	 */
+	protected String m_sourceType = MSOURCE_TYPE_EDEFAULT;
+
+	/**
+	 * The cached value of the '{@link #getM_pTarget() <em>MpTarget</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_pTarget()
+	 * @generated
+	 * @ordered
+	 */
+	protected M_pRootType m_pTarget;
+
+	/**
+	 * The default value of the '{@link #getM_targetType() <em>Mtarget Type</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_targetType()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String MTARGET_TYPE_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getM_targetType() <em>Mtarget Type</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_targetType()
+	 * @generated
+	 * @ordered
+	 */
+	protected String m_targetType = MTARGET_TYPE_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getM_direction() <em>Mdirection</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_direction()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String MDIRECTION_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getM_direction() <em>Mdirection</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_direction()
+	 * @generated
+	 * @ordered
+	 */
+	protected String m_direction = MDIRECTION_EDEFAULT;
+
+	/**
+	 * The cached value of the '{@link #getM_rpn() <em>Mrpn</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_rpn()
+	 * @generated
+	 * @ordered
+	 */
+	protected CGIText m_rpn;
+
+	/**
+	 * The cached value of the '{@link #getM_anglePoint1() <em>Mangle Point1</em>}' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_anglePoint1()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<String> m_anglePoint1;
+
+	/**
+	 * The cached value of the '{@link #getM_anglePoint2() <em>Mangle Point2</em>}' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_anglePoint2()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<String> m_anglePoint2;
+
+	/**
+	 * The default value of the '{@link #getM_line_style() <em>Mline style</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_line_style()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String MLINE_STYLE_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getM_line_style() <em>Mline style</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_line_style()
+	 * @generated
+	 * @ordered
+	 */
+	protected String m_line_style = MLINE_STYLE_EDEFAULT;
+
+	/**
+	 * The cached value of the '{@link #getM_SourcePort() <em>MSource Port</em>}' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_SourcePort()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<String> m_SourcePort;
+
+	/**
+	 * The cached value of the '{@link #getM_TargetPort() <em>MTarget Port</em>}' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_TargetPort()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<String> m_TargetPort;
+
+	/**
+	 * The cached value of the '{@link #getM_pInverseModelObject() <em>MpInverse Model Object</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_pInverseModelObject()
+	 * @generated
+	 * @ordered
+	 */
+	protected IAssociationEndHandle m_pInverseModelObject;
+
+	/**
+	 * The cached value of the '{@link #getM_pInstance() <em>MpInstance</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_pInstance()
+	 * @generated
+	 * @ordered
+	 */
+	protected IObjectLinkHandle m_pInstance;
+
+	/**
+	 * The cached value of the '{@link #getM_pInverseInstance() <em>MpInverse Instance</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_pInverseInstance()
+	 * @generated
+	 * @ordered
+	 */
+	protected IObjectLinkHandle m_pInverseInstance;
+
+	/**
+	 * The default value of the '{@link #getM_bShowSourceMultiplicity() <em>MbShow Source Multiplicity</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_bShowSourceMultiplicity()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String MBSHOW_SOURCE_MULTIPLICITY_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getM_bShowSourceMultiplicity() <em>MbShow Source Multiplicity</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_bShowSourceMultiplicity()
+	 * @generated
+	 * @ordered
+	 */
+	protected String m_bShowSourceMultiplicity = MBSHOW_SOURCE_MULTIPLICITY_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getM_bShowSourceRole() <em>MbShow Source Role</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_bShowSourceRole()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String MBSHOW_SOURCE_ROLE_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getM_bShowSourceRole() <em>MbShow Source Role</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_bShowSourceRole()
+	 * @generated
+	 * @ordered
+	 */
+	protected String m_bShowSourceRole = MBSHOW_SOURCE_ROLE_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getM_bShowTargetMultiplicity() <em>MbShow Target Multiplicity</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_bShowTargetMultiplicity()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String MBSHOW_TARGET_MULTIPLICITY_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getM_bShowTargetMultiplicity() <em>MbShow Target Multiplicity</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_bShowTargetMultiplicity()
+	 * @generated
+	 * @ordered
+	 */
+	protected String m_bShowTargetMultiplicity = MBSHOW_TARGET_MULTIPLICITY_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getM_bShowTargetRole() <em>MbShow Target Role</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_bShowTargetRole()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String MBSHOW_TARGET_ROLE_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getM_bShowTargetRole() <em>MbShow Target Role</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_bShowTargetRole()
+	 * @generated
+	 * @ordered
+	 */
+	protected String m_bShowTargetRole = MBSHOW_TARGET_ROLE_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getM_bShowLinkName() <em>MbShow Link Name</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_bShowLinkName()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String MBSHOW_LINK_NAME_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getM_bShowLinkName() <em>MbShow Link Name</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_bShowLinkName()
+	 * @generated
+	 * @ordered
+	 */
+	protected String m_bShowLinkName = MBSHOW_LINK_NAME_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getM_bShowSpecificType() <em>MbShow Specific Type</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_bShowSpecificType()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String MBSHOW_SPECIFIC_TYPE_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getM_bShowSpecificType() <em>MbShow Specific Type</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_bShowSpecificType()
+	 * @generated
+	 * @ordered
+	 */
+	protected String m_bShowSpecificType = MBSHOW_SPECIFIC_TYPE_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getM_bInstance() <em>MbInstance</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_bInstance()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String MBINSTANCE_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getM_bInstance() <em>MbInstance</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_bInstance()
+	 * @generated
+	 * @ordered
+	 */
+	protected String m_bInstance = MBINSTANCE_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getM_bShowQualifier1() <em>MbShow Qualifier1</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_bShowQualifier1()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String MBSHOW_QUALIFIER1_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getM_bShowQualifier1() <em>MbShow Qualifier1</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_bShowQualifier1()
+	 * @generated
+	 * @ordered
+	 */
+	protected String m_bShowQualifier1 = MBSHOW_QUALIFIER1_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getM_bShowQualifier2() <em>MbShow Qualifier2</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_bShowQualifier2()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String MBSHOW_QUALIFIER2_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getM_bShowQualifier2() <em>MbShow Qualifier2</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_bShowQualifier2()
+	 * @generated
+	 * @ordered
+	 */
+	protected String m_bShowQualifier2 = MBSHOW_QUALIFIER2_EDEFAULT;
+
+	/**
+	 * The cached value of the '{@link #getM_sourceRole() <em>Msource Role</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_sourceRole()
+	 * @generated
+	 * @ordered
+	 */
+	protected CGIText m_sourceRole;
+
+	/**
+	 * The cached value of the '{@link #getM_targetRole() <em>Mtarget Role</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_targetRole()
+	 * @generated
+	 * @ordered
+	 */
+	protected CGIText m_targetRole;
+
+	/**
+	 * The cached value of the '{@link #getM_sourceMultiplicity() <em>Msource Multiplicity</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_sourceMultiplicity()
+	 * @generated
+	 * @ordered
+	 */
+	protected CGIText m_sourceMultiplicity;
+
+	/**
+	 * The cached value of the '{@link #getM_targetMultiplicity() <em>Mtarget Multiplicity</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_targetMultiplicity()
+	 * @generated
+	 * @ordered
+	 */
+	protected CGIText m_targetMultiplicity;
+
+	/**
+	 * The cached value of the '{@link #getM_sourceQualifier() <em>Msource Qualifier</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_sourceQualifier()
+	 * @generated
+	 * @ordered
+	 */
+	protected CGIText m_sourceQualifier;
+
+	/**
+	 * The cached value of the '{@link #getM_targetQualifier() <em>Mtarget Qualifier</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_targetQualifier()
+	 * @generated
+	 * @ordered
+	 */
+	protected CGIText m_targetQualifier;
+
+	/**
+	 * The default value of the '{@link #getM_specificType() <em>Mspecific Type</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_specificType()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String MSPECIFIC_TYPE_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getM_specificType() <em>Mspecific Type</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_specificType()
+	 * @generated
+	 * @ordered
+	 */
+	protected String m_specificType = MSPECIFIC_TYPE_EDEFAULT;
+
+	/**
+	 * The cached value of the '{@link #getM_arrow() <em>Marrow</em>}' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_arrow()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<String> m_arrow;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected CGIAssociationEndImpl() {
+		super();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EClass eStaticClass() {
+		return UMLRpyPackage.eINSTANCE.getCGIAssociationEnd();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IPropertyContainer getProperties() {
+		if (properties != null && properties.eIsProxy()) {
+			InternalEObject oldProperties = (InternalEObject)properties;
+			properties = (IPropertyContainer)eResolveProxy(oldProperties);
+			if (properties != oldProperties) {
+				InternalEObject newProperties = (InternalEObject)properties;
+				NotificationChain msgs = oldProperties.eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.CGI_ASSOCIATION_END__PROPERTIES, null, null);
+				if (newProperties.eInternalContainer() == null) {
+					msgs = newProperties.eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.CGI_ASSOCIATION_END__PROPERTIES, null, msgs);
+				}
+				if (msgs != null) msgs.dispatch();
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.CGI_ASSOCIATION_END__PROPERTIES, oldProperties, properties));
+			}
+		}
+		return properties;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IPropertyContainer basicGetProperties() {
+		return properties;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public NotificationChain basicSetProperties(IPropertyContainer newProperties, NotificationChain msgs) {
+		IPropertyContainer oldProperties = properties;
+		properties = newProperties;
+		if (eNotificationRequired()) {
+			ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_ASSOCIATION_END__PROPERTIES, oldProperties, newProperties);
+			if (msgs == null) msgs = notification; else msgs.add(notification);
+		}
+		return msgs;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setProperties(IPropertyContainer newProperties) {
+		if (newProperties != properties) {
+			NotificationChain msgs = null;
+			if (properties != null)
+				msgs = ((InternalEObject)properties).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.CGI_ASSOCIATION_END__PROPERTIES, null, msgs);
+			if (newProperties != null)
+				msgs = ((InternalEObject)newProperties).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.CGI_ASSOCIATION_END__PROPERTIES, null, msgs);
+			msgs = basicSetProperties(newProperties, msgs);
+			if (msgs != null) msgs.dispatch();
+		}
+		else if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_ASSOCIATION_END__PROPERTIES, newProperties, newProperties));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public M_pModelObjectType getM_pModelObject() {
+		if (m_pModelObject != null && m_pModelObject.eIsProxy()) {
+			InternalEObject oldM_pModelObject = (InternalEObject)m_pModelObject;
+			m_pModelObject = (M_pModelObjectType)eResolveProxy(oldM_pModelObject);
+			if (m_pModelObject != oldM_pModelObject) {
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.CGI_ASSOCIATION_END__MPMODEL_OBJECT, oldM_pModelObject, m_pModelObject));
+			}
+		}
+		return m_pModelObject;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public M_pModelObjectType basicGetM_pModelObject() {
+		return m_pModelObject;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_pModelObject(M_pModelObjectType newM_pModelObject) {
+		M_pModelObjectType oldM_pModelObject = m_pModelObject;
+		m_pModelObject = newM_pModelObject;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_ASSOCIATION_END__MPMODEL_OBJECT, oldM_pModelObject, m_pModelObject));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getM_pParent() {
+		return m_pParent;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_pParent(String newM_pParent) {
+		String oldM_pParent = m_pParent;
+		m_pParent = newM_pParent;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_ASSOCIATION_END__MPPARENT, oldM_pParent, m_pParent));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public M_pRootType getM_pSource() {
+		if (m_pSource != null && m_pSource.eIsProxy()) {
+			InternalEObject oldM_pSource = (InternalEObject)m_pSource;
+			m_pSource = (M_pRootType)eResolveProxy(oldM_pSource);
+			if (m_pSource != oldM_pSource) {
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.CGI_ASSOCIATION_END__MPSOURCE, oldM_pSource, m_pSource));
+			}
+		}
+		return m_pSource;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public M_pRootType basicGetM_pSource() {
+		return m_pSource;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_pSource(M_pRootType newM_pSource) {
+		M_pRootType oldM_pSource = m_pSource;
+		m_pSource = newM_pSource;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_ASSOCIATION_END__MPSOURCE, oldM_pSource, m_pSource));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getM_sourceType() {
+		return m_sourceType;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_sourceType(String newM_sourceType) {
+		String oldM_sourceType = m_sourceType;
+		m_sourceType = newM_sourceType;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_ASSOCIATION_END__MSOURCE_TYPE, oldM_sourceType, m_sourceType));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public M_pRootType getM_pTarget() {
+		if (m_pTarget != null && m_pTarget.eIsProxy()) {
+			InternalEObject oldM_pTarget = (InternalEObject)m_pTarget;
+			m_pTarget = (M_pRootType)eResolveProxy(oldM_pTarget);
+			if (m_pTarget != oldM_pTarget) {
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.CGI_ASSOCIATION_END__MPTARGET, oldM_pTarget, m_pTarget));
+			}
+		}
+		return m_pTarget;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public M_pRootType basicGetM_pTarget() {
+		return m_pTarget;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_pTarget(M_pRootType newM_pTarget) {
+		M_pRootType oldM_pTarget = m_pTarget;
+		m_pTarget = newM_pTarget;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_ASSOCIATION_END__MPTARGET, oldM_pTarget, m_pTarget));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getM_targetType() {
+		return m_targetType;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_targetType(String newM_targetType) {
+		String oldM_targetType = m_targetType;
+		m_targetType = newM_targetType;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_ASSOCIATION_END__MTARGET_TYPE, oldM_targetType, m_targetType));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getM_direction() {
+		return m_direction;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_direction(String newM_direction) {
+		String oldM_direction = m_direction;
+		m_direction = newM_direction;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_ASSOCIATION_END__MDIRECTION, oldM_direction, m_direction));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public CGIText getM_rpn() {
+		if (m_rpn != null && m_rpn.eIsProxy()) {
+			InternalEObject oldM_rpn = (InternalEObject)m_rpn;
+			m_rpn = (CGIText)eResolveProxy(oldM_rpn);
+			if (m_rpn != oldM_rpn) {
+				InternalEObject newM_rpn = (InternalEObject)m_rpn;
+				NotificationChain msgs = oldM_rpn.eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.CGI_ASSOCIATION_END__MRPN, null, null);
+				if (newM_rpn.eInternalContainer() == null) {
+					msgs = newM_rpn.eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.CGI_ASSOCIATION_END__MRPN, null, msgs);
+				}
+				if (msgs != null) msgs.dispatch();
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.CGI_ASSOCIATION_END__MRPN, oldM_rpn, m_rpn));
+			}
+		}
+		return m_rpn;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public CGIText basicGetM_rpn() {
+		return m_rpn;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public NotificationChain basicSetM_rpn(CGIText newM_rpn, NotificationChain msgs) {
+		CGIText oldM_rpn = m_rpn;
+		m_rpn = newM_rpn;
+		if (eNotificationRequired()) {
+			ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_ASSOCIATION_END__MRPN, oldM_rpn, newM_rpn);
+			if (msgs == null) msgs = notification; else msgs.add(notification);
+		}
+		return msgs;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_rpn(CGIText newM_rpn) {
+		if (newM_rpn != m_rpn) {
+			NotificationChain msgs = null;
+			if (m_rpn != null)
+				msgs = ((InternalEObject)m_rpn).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.CGI_ASSOCIATION_END__MRPN, null, msgs);
+			if (newM_rpn != null)
+				msgs = ((InternalEObject)newM_rpn).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.CGI_ASSOCIATION_END__MRPN, null, msgs);
+			msgs = basicSetM_rpn(newM_rpn, msgs);
+			if (msgs != null) msgs.dispatch();
+		}
+		else if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_ASSOCIATION_END__MRPN, newM_rpn, newM_rpn));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<String> getM_anglePoint1() {
+		if (m_anglePoint1 == null) {
+			m_anglePoint1 = new EDataTypeEList<String>(String.class, this, UMLRpyPackage.CGI_ASSOCIATION_END__MANGLE_POINT1);
+		}
+		return m_anglePoint1;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<String> getM_anglePoint2() {
+		if (m_anglePoint2 == null) {
+			m_anglePoint2 = new EDataTypeEList<String>(String.class, this, UMLRpyPackage.CGI_ASSOCIATION_END__MANGLE_POINT2);
+		}
+		return m_anglePoint2;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getM_line_style() {
+		return m_line_style;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_line_style(String newM_line_style) {
+		String oldM_line_style = m_line_style;
+		m_line_style = newM_line_style;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_ASSOCIATION_END__MLINE_STYLE, oldM_line_style, m_line_style));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<String> getM_SourcePort() {
+		if (m_SourcePort == null) {
+			m_SourcePort = new EDataTypeEList<String>(String.class, this, UMLRpyPackage.CGI_ASSOCIATION_END__MSOURCE_PORT);
+		}
+		return m_SourcePort;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<String> getM_TargetPort() {
+		if (m_TargetPort == null) {
+			m_TargetPort = new EDataTypeEList<String>(String.class, this, UMLRpyPackage.CGI_ASSOCIATION_END__MTARGET_PORT);
+		}
+		return m_TargetPort;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IAssociationEndHandle getM_pInverseModelObject() {
+		if (m_pInverseModelObject != null && m_pInverseModelObject.eIsProxy()) {
+			InternalEObject oldM_pInverseModelObject = (InternalEObject)m_pInverseModelObject;
+			m_pInverseModelObject = (IAssociationEndHandle)eResolveProxy(oldM_pInverseModelObject);
+			if (m_pInverseModelObject != oldM_pInverseModelObject) {
+				InternalEObject newM_pInverseModelObject = (InternalEObject)m_pInverseModelObject;
+				NotificationChain msgs = oldM_pInverseModelObject.eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.CGI_ASSOCIATION_END__MPINVERSE_MODEL_OBJECT, null, null);
+				if (newM_pInverseModelObject.eInternalContainer() == null) {
+					msgs = newM_pInverseModelObject.eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.CGI_ASSOCIATION_END__MPINVERSE_MODEL_OBJECT, null, msgs);
+				}
+				if (msgs != null) msgs.dispatch();
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.CGI_ASSOCIATION_END__MPINVERSE_MODEL_OBJECT, oldM_pInverseModelObject, m_pInverseModelObject));
+			}
+		}
+		return m_pInverseModelObject;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IAssociationEndHandle basicGetM_pInverseModelObject() {
+		return m_pInverseModelObject;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public NotificationChain basicSetM_pInverseModelObject(IAssociationEndHandle newM_pInverseModelObject, NotificationChain msgs) {
+		IAssociationEndHandle oldM_pInverseModelObject = m_pInverseModelObject;
+		m_pInverseModelObject = newM_pInverseModelObject;
+		if (eNotificationRequired()) {
+			ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_ASSOCIATION_END__MPINVERSE_MODEL_OBJECT, oldM_pInverseModelObject, newM_pInverseModelObject);
+			if (msgs == null) msgs = notification; else msgs.add(notification);
+		}
+		return msgs;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_pInverseModelObject(IAssociationEndHandle newM_pInverseModelObject) {
+		if (newM_pInverseModelObject != m_pInverseModelObject) {
+			NotificationChain msgs = null;
+			if (m_pInverseModelObject != null)
+				msgs = ((InternalEObject)m_pInverseModelObject).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.CGI_ASSOCIATION_END__MPINVERSE_MODEL_OBJECT, null, msgs);
+			if (newM_pInverseModelObject != null)
+				msgs = ((InternalEObject)newM_pInverseModelObject).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.CGI_ASSOCIATION_END__MPINVERSE_MODEL_OBJECT, null, msgs);
+			msgs = basicSetM_pInverseModelObject(newM_pInverseModelObject, msgs);
+			if (msgs != null) msgs.dispatch();
+		}
+		else if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_ASSOCIATION_END__MPINVERSE_MODEL_OBJECT, newM_pInverseModelObject, newM_pInverseModelObject));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IObjectLinkHandle getM_pInstance() {
+		if (m_pInstance != null && m_pInstance.eIsProxy()) {
+			InternalEObject oldM_pInstance = (InternalEObject)m_pInstance;
+			m_pInstance = (IObjectLinkHandle)eResolveProxy(oldM_pInstance);
+			if (m_pInstance != oldM_pInstance) {
+				InternalEObject newM_pInstance = (InternalEObject)m_pInstance;
+				NotificationChain msgs = oldM_pInstance.eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.CGI_ASSOCIATION_END__MPINSTANCE, null, null);
+				if (newM_pInstance.eInternalContainer() == null) {
+					msgs = newM_pInstance.eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.CGI_ASSOCIATION_END__MPINSTANCE, null, msgs);
+				}
+				if (msgs != null) msgs.dispatch();
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.CGI_ASSOCIATION_END__MPINSTANCE, oldM_pInstance, m_pInstance));
+			}
+		}
+		return m_pInstance;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IObjectLinkHandle basicGetM_pInstance() {
+		return m_pInstance;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public NotificationChain basicSetM_pInstance(IObjectLinkHandle newM_pInstance, NotificationChain msgs) {
+		IObjectLinkHandle oldM_pInstance = m_pInstance;
+		m_pInstance = newM_pInstance;
+		if (eNotificationRequired()) {
+			ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_ASSOCIATION_END__MPINSTANCE, oldM_pInstance, newM_pInstance);
+			if (msgs == null) msgs = notification; else msgs.add(notification);
+		}
+		return msgs;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_pInstance(IObjectLinkHandle newM_pInstance) {
+		if (newM_pInstance != m_pInstance) {
+			NotificationChain msgs = null;
+			if (m_pInstance != null)
+				msgs = ((InternalEObject)m_pInstance).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.CGI_ASSOCIATION_END__MPINSTANCE, null, msgs);
+			if (newM_pInstance != null)
+				msgs = ((InternalEObject)newM_pInstance).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.CGI_ASSOCIATION_END__MPINSTANCE, null, msgs);
+			msgs = basicSetM_pInstance(newM_pInstance, msgs);
+			if (msgs != null) msgs.dispatch();
+		}
+		else if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_ASSOCIATION_END__MPINSTANCE, newM_pInstance, newM_pInstance));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IObjectLinkHandle getM_pInverseInstance() {
+		if (m_pInverseInstance != null && m_pInverseInstance.eIsProxy()) {
+			InternalEObject oldM_pInverseInstance = (InternalEObject)m_pInverseInstance;
+			m_pInverseInstance = (IObjectLinkHandle)eResolveProxy(oldM_pInverseInstance);
+			if (m_pInverseInstance != oldM_pInverseInstance) {
+				InternalEObject newM_pInverseInstance = (InternalEObject)m_pInverseInstance;
+				NotificationChain msgs = oldM_pInverseInstance.eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.CGI_ASSOCIATION_END__MPINVERSE_INSTANCE, null, null);
+				if (newM_pInverseInstance.eInternalContainer() == null) {
+					msgs = newM_pInverseInstance.eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.CGI_ASSOCIATION_END__MPINVERSE_INSTANCE, null, msgs);
+				}
+				if (msgs != null) msgs.dispatch();
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.CGI_ASSOCIATION_END__MPINVERSE_INSTANCE, oldM_pInverseInstance, m_pInverseInstance));
+			}
+		}
+		return m_pInverseInstance;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IObjectLinkHandle basicGetM_pInverseInstance() {
+		return m_pInverseInstance;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public NotificationChain basicSetM_pInverseInstance(IObjectLinkHandle newM_pInverseInstance, NotificationChain msgs) {
+		IObjectLinkHandle oldM_pInverseInstance = m_pInverseInstance;
+		m_pInverseInstance = newM_pInverseInstance;
+		if (eNotificationRequired()) {
+			ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_ASSOCIATION_END__MPINVERSE_INSTANCE, oldM_pInverseInstance, newM_pInverseInstance);
+			if (msgs == null) msgs = notification; else msgs.add(notification);
+		}
+		return msgs;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_pInverseInstance(IObjectLinkHandle newM_pInverseInstance) {
+		if (newM_pInverseInstance != m_pInverseInstance) {
+			NotificationChain msgs = null;
+			if (m_pInverseInstance != null)
+				msgs = ((InternalEObject)m_pInverseInstance).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.CGI_ASSOCIATION_END__MPINVERSE_INSTANCE, null, msgs);
+			if (newM_pInverseInstance != null)
+				msgs = ((InternalEObject)newM_pInverseInstance).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.CGI_ASSOCIATION_END__MPINVERSE_INSTANCE, null, msgs);
+			msgs = basicSetM_pInverseInstance(newM_pInverseInstance, msgs);
+			if (msgs != null) msgs.dispatch();
+		}
+		else if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_ASSOCIATION_END__MPINVERSE_INSTANCE, newM_pInverseInstance, newM_pInverseInstance));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getM_bShowSourceMultiplicity() {
+		return m_bShowSourceMultiplicity;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_bShowSourceMultiplicity(String newM_bShowSourceMultiplicity) {
+		String oldM_bShowSourceMultiplicity = m_bShowSourceMultiplicity;
+		m_bShowSourceMultiplicity = newM_bShowSourceMultiplicity;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_ASSOCIATION_END__MBSHOW_SOURCE_MULTIPLICITY, oldM_bShowSourceMultiplicity, m_bShowSourceMultiplicity));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getM_bShowSourceRole() {
+		return m_bShowSourceRole;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_bShowSourceRole(String newM_bShowSourceRole) {
+		String oldM_bShowSourceRole = m_bShowSourceRole;
+		m_bShowSourceRole = newM_bShowSourceRole;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_ASSOCIATION_END__MBSHOW_SOURCE_ROLE, oldM_bShowSourceRole, m_bShowSourceRole));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getM_bShowTargetMultiplicity() {
+		return m_bShowTargetMultiplicity;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_bShowTargetMultiplicity(String newM_bShowTargetMultiplicity) {
+		String oldM_bShowTargetMultiplicity = m_bShowTargetMultiplicity;
+		m_bShowTargetMultiplicity = newM_bShowTargetMultiplicity;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_ASSOCIATION_END__MBSHOW_TARGET_MULTIPLICITY, oldM_bShowTargetMultiplicity, m_bShowTargetMultiplicity));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getM_bShowTargetRole() {
+		return m_bShowTargetRole;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_bShowTargetRole(String newM_bShowTargetRole) {
+		String oldM_bShowTargetRole = m_bShowTargetRole;
+		m_bShowTargetRole = newM_bShowTargetRole;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_ASSOCIATION_END__MBSHOW_TARGET_ROLE, oldM_bShowTargetRole, m_bShowTargetRole));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getM_bShowLinkName() {
+		return m_bShowLinkName;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_bShowLinkName(String newM_bShowLinkName) {
+		String oldM_bShowLinkName = m_bShowLinkName;
+		m_bShowLinkName = newM_bShowLinkName;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_ASSOCIATION_END__MBSHOW_LINK_NAME, oldM_bShowLinkName, m_bShowLinkName));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getM_bShowSpecificType() {
+		return m_bShowSpecificType;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_bShowSpecificType(String newM_bShowSpecificType) {
+		String oldM_bShowSpecificType = m_bShowSpecificType;
+		m_bShowSpecificType = newM_bShowSpecificType;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_ASSOCIATION_END__MBSHOW_SPECIFIC_TYPE, oldM_bShowSpecificType, m_bShowSpecificType));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getM_bInstance() {
+		return m_bInstance;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_bInstance(String newM_bInstance) {
+		String oldM_bInstance = m_bInstance;
+		m_bInstance = newM_bInstance;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_ASSOCIATION_END__MBINSTANCE, oldM_bInstance, m_bInstance));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getM_bShowQualifier1() {
+		return m_bShowQualifier1;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_bShowQualifier1(String newM_bShowQualifier1) {
+		String oldM_bShowQualifier1 = m_bShowQualifier1;
+		m_bShowQualifier1 = newM_bShowQualifier1;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_ASSOCIATION_END__MBSHOW_QUALIFIER1, oldM_bShowQualifier1, m_bShowQualifier1));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getM_bShowQualifier2() {
+		return m_bShowQualifier2;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_bShowQualifier2(String newM_bShowQualifier2) {
+		String oldM_bShowQualifier2 = m_bShowQualifier2;
+		m_bShowQualifier2 = newM_bShowQualifier2;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_ASSOCIATION_END__MBSHOW_QUALIFIER2, oldM_bShowQualifier2, m_bShowQualifier2));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public CGIText getM_sourceRole() {
+		if (m_sourceRole != null && m_sourceRole.eIsProxy()) {
+			InternalEObject oldM_sourceRole = (InternalEObject)m_sourceRole;
+			m_sourceRole = (CGIText)eResolveProxy(oldM_sourceRole);
+			if (m_sourceRole != oldM_sourceRole) {
+				InternalEObject newM_sourceRole = (InternalEObject)m_sourceRole;
+				NotificationChain msgs = oldM_sourceRole.eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.CGI_ASSOCIATION_END__MSOURCE_ROLE, null, null);
+				if (newM_sourceRole.eInternalContainer() == null) {
+					msgs = newM_sourceRole.eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.CGI_ASSOCIATION_END__MSOURCE_ROLE, null, msgs);
+				}
+				if (msgs != null) msgs.dispatch();
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.CGI_ASSOCIATION_END__MSOURCE_ROLE, oldM_sourceRole, m_sourceRole));
+			}
+		}
+		return m_sourceRole;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public CGIText basicGetM_sourceRole() {
+		return m_sourceRole;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public NotificationChain basicSetM_sourceRole(CGIText newM_sourceRole, NotificationChain msgs) {
+		CGIText oldM_sourceRole = m_sourceRole;
+		m_sourceRole = newM_sourceRole;
+		if (eNotificationRequired()) {
+			ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_ASSOCIATION_END__MSOURCE_ROLE, oldM_sourceRole, newM_sourceRole);
+			if (msgs == null) msgs = notification; else msgs.add(notification);
+		}
+		return msgs;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_sourceRole(CGIText newM_sourceRole) {
+		if (newM_sourceRole != m_sourceRole) {
+			NotificationChain msgs = null;
+			if (m_sourceRole != null)
+				msgs = ((InternalEObject)m_sourceRole).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.CGI_ASSOCIATION_END__MSOURCE_ROLE, null, msgs);
+			if (newM_sourceRole != null)
+				msgs = ((InternalEObject)newM_sourceRole).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.CGI_ASSOCIATION_END__MSOURCE_ROLE, null, msgs);
+			msgs = basicSetM_sourceRole(newM_sourceRole, msgs);
+			if (msgs != null) msgs.dispatch();
+		}
+		else if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_ASSOCIATION_END__MSOURCE_ROLE, newM_sourceRole, newM_sourceRole));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public CGIText getM_targetRole() {
+		if (m_targetRole != null && m_targetRole.eIsProxy()) {
+			InternalEObject oldM_targetRole = (InternalEObject)m_targetRole;
+			m_targetRole = (CGIText)eResolveProxy(oldM_targetRole);
+			if (m_targetRole != oldM_targetRole) {
+				InternalEObject newM_targetRole = (InternalEObject)m_targetRole;
+				NotificationChain msgs = oldM_targetRole.eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.CGI_ASSOCIATION_END__MTARGET_ROLE, null, null);
+				if (newM_targetRole.eInternalContainer() == null) {
+					msgs = newM_targetRole.eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.CGI_ASSOCIATION_END__MTARGET_ROLE, null, msgs);
+				}
+				if (msgs != null) msgs.dispatch();
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.CGI_ASSOCIATION_END__MTARGET_ROLE, oldM_targetRole, m_targetRole));
+			}
+		}
+		return m_targetRole;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public CGIText basicGetM_targetRole() {
+		return m_targetRole;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public NotificationChain basicSetM_targetRole(CGIText newM_targetRole, NotificationChain msgs) {
+		CGIText oldM_targetRole = m_targetRole;
+		m_targetRole = newM_targetRole;
+		if (eNotificationRequired()) {
+			ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_ASSOCIATION_END__MTARGET_ROLE, oldM_targetRole, newM_targetRole);
+			if (msgs == null) msgs = notification; else msgs.add(notification);
+		}
+		return msgs;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_targetRole(CGIText newM_targetRole) {
+		if (newM_targetRole != m_targetRole) {
+			NotificationChain msgs = null;
+			if (m_targetRole != null)
+				msgs = ((InternalEObject)m_targetRole).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.CGI_ASSOCIATION_END__MTARGET_ROLE, null, msgs);
+			if (newM_targetRole != null)
+				msgs = ((InternalEObject)newM_targetRole).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.CGI_ASSOCIATION_END__MTARGET_ROLE, null, msgs);
+			msgs = basicSetM_targetRole(newM_targetRole, msgs);
+			if (msgs != null) msgs.dispatch();
+		}
+		else if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_ASSOCIATION_END__MTARGET_ROLE, newM_targetRole, newM_targetRole));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public CGIText getM_sourceMultiplicity() {
+		if (m_sourceMultiplicity != null && m_sourceMultiplicity.eIsProxy()) {
+			InternalEObject oldM_sourceMultiplicity = (InternalEObject)m_sourceMultiplicity;
+			m_sourceMultiplicity = (CGIText)eResolveProxy(oldM_sourceMultiplicity);
+			if (m_sourceMultiplicity != oldM_sourceMultiplicity) {
+				InternalEObject newM_sourceMultiplicity = (InternalEObject)m_sourceMultiplicity;
+				NotificationChain msgs = oldM_sourceMultiplicity.eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.CGI_ASSOCIATION_END__MSOURCE_MULTIPLICITY, null, null);
+				if (newM_sourceMultiplicity.eInternalContainer() == null) {
+					msgs = newM_sourceMultiplicity.eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.CGI_ASSOCIATION_END__MSOURCE_MULTIPLICITY, null, msgs);
+				}
+				if (msgs != null) msgs.dispatch();
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.CGI_ASSOCIATION_END__MSOURCE_MULTIPLICITY, oldM_sourceMultiplicity, m_sourceMultiplicity));
+			}
+		}
+		return m_sourceMultiplicity;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public CGIText basicGetM_sourceMultiplicity() {
+		return m_sourceMultiplicity;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public NotificationChain basicSetM_sourceMultiplicity(CGIText newM_sourceMultiplicity, NotificationChain msgs) {
+		CGIText oldM_sourceMultiplicity = m_sourceMultiplicity;
+		m_sourceMultiplicity = newM_sourceMultiplicity;
+		if (eNotificationRequired()) {
+			ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_ASSOCIATION_END__MSOURCE_MULTIPLICITY, oldM_sourceMultiplicity, newM_sourceMultiplicity);
+			if (msgs == null) msgs = notification; else msgs.add(notification);
+		}
+		return msgs;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_sourceMultiplicity(CGIText newM_sourceMultiplicity) {
+		if (newM_sourceMultiplicity != m_sourceMultiplicity) {
+			NotificationChain msgs = null;
+			if (m_sourceMultiplicity != null)
+				msgs = ((InternalEObject)m_sourceMultiplicity).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.CGI_ASSOCIATION_END__MSOURCE_MULTIPLICITY, null, msgs);
+			if (newM_sourceMultiplicity != null)
+				msgs = ((InternalEObject)newM_sourceMultiplicity).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.CGI_ASSOCIATION_END__MSOURCE_MULTIPLICITY, null, msgs);
+			msgs = basicSetM_sourceMultiplicity(newM_sourceMultiplicity, msgs);
+			if (msgs != null) msgs.dispatch();
+		}
+		else if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_ASSOCIATION_END__MSOURCE_MULTIPLICITY, newM_sourceMultiplicity, newM_sourceMultiplicity));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public CGIText getM_targetMultiplicity() {
+		if (m_targetMultiplicity != null && m_targetMultiplicity.eIsProxy()) {
+			InternalEObject oldM_targetMultiplicity = (InternalEObject)m_targetMultiplicity;
+			m_targetMultiplicity = (CGIText)eResolveProxy(oldM_targetMultiplicity);
+			if (m_targetMultiplicity != oldM_targetMultiplicity) {
+				InternalEObject newM_targetMultiplicity = (InternalEObject)m_targetMultiplicity;
+				NotificationChain msgs = oldM_targetMultiplicity.eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.CGI_ASSOCIATION_END__MTARGET_MULTIPLICITY, null, null);
+				if (newM_targetMultiplicity.eInternalContainer() == null) {
+					msgs = newM_targetMultiplicity.eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.CGI_ASSOCIATION_END__MTARGET_MULTIPLICITY, null, msgs);
+				}
+				if (msgs != null) msgs.dispatch();
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.CGI_ASSOCIATION_END__MTARGET_MULTIPLICITY, oldM_targetMultiplicity, m_targetMultiplicity));
+			}
+		}
+		return m_targetMultiplicity;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public CGIText basicGetM_targetMultiplicity() {
+		return m_targetMultiplicity;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public NotificationChain basicSetM_targetMultiplicity(CGIText newM_targetMultiplicity, NotificationChain msgs) {
+		CGIText oldM_targetMultiplicity = m_targetMultiplicity;
+		m_targetMultiplicity = newM_targetMultiplicity;
+		if (eNotificationRequired()) {
+			ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_ASSOCIATION_END__MTARGET_MULTIPLICITY, oldM_targetMultiplicity, newM_targetMultiplicity);
+			if (msgs == null) msgs = notification; else msgs.add(notification);
+		}
+		return msgs;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_targetMultiplicity(CGIText newM_targetMultiplicity) {
+		if (newM_targetMultiplicity != m_targetMultiplicity) {
+			NotificationChain msgs = null;
+			if (m_targetMultiplicity != null)
+				msgs = ((InternalEObject)m_targetMultiplicity).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.CGI_ASSOCIATION_END__MTARGET_MULTIPLICITY, null, msgs);
+			if (newM_targetMultiplicity != null)
+				msgs = ((InternalEObject)newM_targetMultiplicity).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.CGI_ASSOCIATION_END__MTARGET_MULTIPLICITY, null, msgs);
+			msgs = basicSetM_targetMultiplicity(newM_targetMultiplicity, msgs);
+			if (msgs != null) msgs.dispatch();
+		}
+		else if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_ASSOCIATION_END__MTARGET_MULTIPLICITY, newM_targetMultiplicity, newM_targetMultiplicity));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public CGIText getM_sourceQualifier() {
+		if (m_sourceQualifier != null && m_sourceQualifier.eIsProxy()) {
+			InternalEObject oldM_sourceQualifier = (InternalEObject)m_sourceQualifier;
+			m_sourceQualifier = (CGIText)eResolveProxy(oldM_sourceQualifier);
+			if (m_sourceQualifier != oldM_sourceQualifier) {
+				InternalEObject newM_sourceQualifier = (InternalEObject)m_sourceQualifier;
+				NotificationChain msgs = oldM_sourceQualifier.eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.CGI_ASSOCIATION_END__MSOURCE_QUALIFIER, null, null);
+				if (newM_sourceQualifier.eInternalContainer() == null) {
+					msgs = newM_sourceQualifier.eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.CGI_ASSOCIATION_END__MSOURCE_QUALIFIER, null, msgs);
+				}
+				if (msgs != null) msgs.dispatch();
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.CGI_ASSOCIATION_END__MSOURCE_QUALIFIER, oldM_sourceQualifier, m_sourceQualifier));
+			}
+		}
+		return m_sourceQualifier;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public CGIText basicGetM_sourceQualifier() {
+		return m_sourceQualifier;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public NotificationChain basicSetM_sourceQualifier(CGIText newM_sourceQualifier, NotificationChain msgs) {
+		CGIText oldM_sourceQualifier = m_sourceQualifier;
+		m_sourceQualifier = newM_sourceQualifier;
+		if (eNotificationRequired()) {
+			ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_ASSOCIATION_END__MSOURCE_QUALIFIER, oldM_sourceQualifier, newM_sourceQualifier);
+			if (msgs == null) msgs = notification; else msgs.add(notification);
+		}
+		return msgs;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_sourceQualifier(CGIText newM_sourceQualifier) {
+		if (newM_sourceQualifier != m_sourceQualifier) {
+			NotificationChain msgs = null;
+			if (m_sourceQualifier != null)
+				msgs = ((InternalEObject)m_sourceQualifier).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.CGI_ASSOCIATION_END__MSOURCE_QUALIFIER, null, msgs);
+			if (newM_sourceQualifier != null)
+				msgs = ((InternalEObject)newM_sourceQualifier).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.CGI_ASSOCIATION_END__MSOURCE_QUALIFIER, null, msgs);
+			msgs = basicSetM_sourceQualifier(newM_sourceQualifier, msgs);
+			if (msgs != null) msgs.dispatch();
+		}
+		else if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_ASSOCIATION_END__MSOURCE_QUALIFIER, newM_sourceQualifier, newM_sourceQualifier));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public CGIText getM_targetQualifier() {
+		if (m_targetQualifier != null && m_targetQualifier.eIsProxy()) {
+			InternalEObject oldM_targetQualifier = (InternalEObject)m_targetQualifier;
+			m_targetQualifier = (CGIText)eResolveProxy(oldM_targetQualifier);
+			if (m_targetQualifier != oldM_targetQualifier) {
+				InternalEObject newM_targetQualifier = (InternalEObject)m_targetQualifier;
+				NotificationChain msgs = oldM_targetQualifier.eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.CGI_ASSOCIATION_END__MTARGET_QUALIFIER, null, null);
+				if (newM_targetQualifier.eInternalContainer() == null) {
+					msgs = newM_targetQualifier.eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.CGI_ASSOCIATION_END__MTARGET_QUALIFIER, null, msgs);
+				}
+				if (msgs != null) msgs.dispatch();
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.CGI_ASSOCIATION_END__MTARGET_QUALIFIER, oldM_targetQualifier, m_targetQualifier));
+			}
+		}
+		return m_targetQualifier;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public CGIText basicGetM_targetQualifier() {
+		return m_targetQualifier;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public NotificationChain basicSetM_targetQualifier(CGIText newM_targetQualifier, NotificationChain msgs) {
+		CGIText oldM_targetQualifier = m_targetQualifier;
+		m_targetQualifier = newM_targetQualifier;
+		if (eNotificationRequired()) {
+			ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_ASSOCIATION_END__MTARGET_QUALIFIER, oldM_targetQualifier, newM_targetQualifier);
+			if (msgs == null) msgs = notification; else msgs.add(notification);
+		}
+		return msgs;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_targetQualifier(CGIText newM_targetQualifier) {
+		if (newM_targetQualifier != m_targetQualifier) {
+			NotificationChain msgs = null;
+			if (m_targetQualifier != null)
+				msgs = ((InternalEObject)m_targetQualifier).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.CGI_ASSOCIATION_END__MTARGET_QUALIFIER, null, msgs);
+			if (newM_targetQualifier != null)
+				msgs = ((InternalEObject)newM_targetQualifier).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.CGI_ASSOCIATION_END__MTARGET_QUALIFIER, null, msgs);
+			msgs = basicSetM_targetQualifier(newM_targetQualifier, msgs);
+			if (msgs != null) msgs.dispatch();
+		}
+		else if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_ASSOCIATION_END__MTARGET_QUALIFIER, newM_targetQualifier, newM_targetQualifier));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getM_specificType() {
+		return m_specificType;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_specificType(String newM_specificType) {
+		String oldM_specificType = m_specificType;
+		m_specificType = newM_specificType;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_ASSOCIATION_END__MSPECIFIC_TYPE, oldM_specificType, m_specificType));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<String> getM_arrow() {
+		if (m_arrow == null) {
+			m_arrow = new EDataTypeEList<String>(String.class, this, UMLRpyPackage.CGI_ASSOCIATION_END__MARROW);
+		}
+		return m_arrow;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
+		switch (featureID) {
+			case UMLRpyPackage.CGI_ASSOCIATION_END__PROPERTIES:
+				return basicSetProperties(null, msgs);
+			case UMLRpyPackage.CGI_ASSOCIATION_END__MRPN:
+				return basicSetM_rpn(null, msgs);
+			case UMLRpyPackage.CGI_ASSOCIATION_END__MPINVERSE_MODEL_OBJECT:
+				return basicSetM_pInverseModelObject(null, msgs);
+			case UMLRpyPackage.CGI_ASSOCIATION_END__MPINSTANCE:
+				return basicSetM_pInstance(null, msgs);
+			case UMLRpyPackage.CGI_ASSOCIATION_END__MPINVERSE_INSTANCE:
+				return basicSetM_pInverseInstance(null, msgs);
+			case UMLRpyPackage.CGI_ASSOCIATION_END__MSOURCE_ROLE:
+				return basicSetM_sourceRole(null, msgs);
+			case UMLRpyPackage.CGI_ASSOCIATION_END__MTARGET_ROLE:
+				return basicSetM_targetRole(null, msgs);
+			case UMLRpyPackage.CGI_ASSOCIATION_END__MSOURCE_MULTIPLICITY:
+				return basicSetM_sourceMultiplicity(null, msgs);
+			case UMLRpyPackage.CGI_ASSOCIATION_END__MTARGET_MULTIPLICITY:
+				return basicSetM_targetMultiplicity(null, msgs);
+			case UMLRpyPackage.CGI_ASSOCIATION_END__MSOURCE_QUALIFIER:
+				return basicSetM_sourceQualifier(null, msgs);
+			case UMLRpyPackage.CGI_ASSOCIATION_END__MTARGET_QUALIFIER:
+				return basicSetM_targetQualifier(null, msgs);
+		}
+		return super.eInverseRemove(otherEnd, featureID, msgs);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object eGet(int featureID, boolean resolve, boolean coreType) {
+		switch (featureID) {
+			case UMLRpyPackage.CGI_ASSOCIATION_END__PROPERTIES:
+				if (resolve) return getProperties();
+				return basicGetProperties();
+			case UMLRpyPackage.CGI_ASSOCIATION_END__MPMODEL_OBJECT:
+				if (resolve) return getM_pModelObject();
+				return basicGetM_pModelObject();
+			case UMLRpyPackage.CGI_ASSOCIATION_END__MPPARENT:
+				return getM_pParent();
+			case UMLRpyPackage.CGI_ASSOCIATION_END__MPSOURCE:
+				if (resolve) return getM_pSource();
+				return basicGetM_pSource();
+			case UMLRpyPackage.CGI_ASSOCIATION_END__MSOURCE_TYPE:
+				return getM_sourceType();
+			case UMLRpyPackage.CGI_ASSOCIATION_END__MPTARGET:
+				if (resolve) return getM_pTarget();
+				return basicGetM_pTarget();
+			case UMLRpyPackage.CGI_ASSOCIATION_END__MTARGET_TYPE:
+				return getM_targetType();
+			case UMLRpyPackage.CGI_ASSOCIATION_END__MDIRECTION:
+				return getM_direction();
+			case UMLRpyPackage.CGI_ASSOCIATION_END__MRPN:
+				if (resolve) return getM_rpn();
+				return basicGetM_rpn();
+			case UMLRpyPackage.CGI_ASSOCIATION_END__MANGLE_POINT1:
+				return getM_anglePoint1();
+			case UMLRpyPackage.CGI_ASSOCIATION_END__MANGLE_POINT2:
+				return getM_anglePoint2();
+			case UMLRpyPackage.CGI_ASSOCIATION_END__MLINE_STYLE:
+				return getM_line_style();
+			case UMLRpyPackage.CGI_ASSOCIATION_END__MSOURCE_PORT:
+				return getM_SourcePort();
+			case UMLRpyPackage.CGI_ASSOCIATION_END__MTARGET_PORT:
+				return getM_TargetPort();
+			case UMLRpyPackage.CGI_ASSOCIATION_END__MPINVERSE_MODEL_OBJECT:
+				if (resolve) return getM_pInverseModelObject();
+				return basicGetM_pInverseModelObject();
+			case UMLRpyPackage.CGI_ASSOCIATION_END__MPINSTANCE:
+				if (resolve) return getM_pInstance();
+				return basicGetM_pInstance();
+			case UMLRpyPackage.CGI_ASSOCIATION_END__MPINVERSE_INSTANCE:
+				if (resolve) return getM_pInverseInstance();
+				return basicGetM_pInverseInstance();
+			case UMLRpyPackage.CGI_ASSOCIATION_END__MBSHOW_SOURCE_MULTIPLICITY:
+				return getM_bShowSourceMultiplicity();
+			case UMLRpyPackage.CGI_ASSOCIATION_END__MBSHOW_SOURCE_ROLE:
+				return getM_bShowSourceRole();
+			case UMLRpyPackage.CGI_ASSOCIATION_END__MBSHOW_TARGET_MULTIPLICITY:
+				return getM_bShowTargetMultiplicity();
+			case UMLRpyPackage.CGI_ASSOCIATION_END__MBSHOW_TARGET_ROLE:
+				return getM_bShowTargetRole();
+			case UMLRpyPackage.CGI_ASSOCIATION_END__MBSHOW_LINK_NAME:
+				return getM_bShowLinkName();
+			case UMLRpyPackage.CGI_ASSOCIATION_END__MBSHOW_SPECIFIC_TYPE:
+				return getM_bShowSpecificType();
+			case UMLRpyPackage.CGI_ASSOCIATION_END__MBINSTANCE:
+				return getM_bInstance();
+			case UMLRpyPackage.CGI_ASSOCIATION_END__MBSHOW_QUALIFIER1:
+				return getM_bShowQualifier1();
+			case UMLRpyPackage.CGI_ASSOCIATION_END__MBSHOW_QUALIFIER2:
+				return getM_bShowQualifier2();
+			case UMLRpyPackage.CGI_ASSOCIATION_END__MSOURCE_ROLE:
+				if (resolve) return getM_sourceRole();
+				return basicGetM_sourceRole();
+			case UMLRpyPackage.CGI_ASSOCIATION_END__MTARGET_ROLE:
+				if (resolve) return getM_targetRole();
+				return basicGetM_targetRole();
+			case UMLRpyPackage.CGI_ASSOCIATION_END__MSOURCE_MULTIPLICITY:
+				if (resolve) return getM_sourceMultiplicity();
+				return basicGetM_sourceMultiplicity();
+			case UMLRpyPackage.CGI_ASSOCIATION_END__MTARGET_MULTIPLICITY:
+				if (resolve) return getM_targetMultiplicity();
+				return basicGetM_targetMultiplicity();
+			case UMLRpyPackage.CGI_ASSOCIATION_END__MSOURCE_QUALIFIER:
+				if (resolve) return getM_sourceQualifier();
+				return basicGetM_sourceQualifier();
+			case UMLRpyPackage.CGI_ASSOCIATION_END__MTARGET_QUALIFIER:
+				if (resolve) return getM_targetQualifier();
+				return basicGetM_targetQualifier();
+			case UMLRpyPackage.CGI_ASSOCIATION_END__MSPECIFIC_TYPE:
+				return getM_specificType();
+			case UMLRpyPackage.CGI_ASSOCIATION_END__MARROW:
+				return getM_arrow();
+		}
+		return super.eGet(featureID, resolve, coreType);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@SuppressWarnings("unchecked")
+	@Override
+	public void eSet(int featureID, Object newValue) {
+		switch (featureID) {
+			case UMLRpyPackage.CGI_ASSOCIATION_END__PROPERTIES:
+				setProperties((IPropertyContainer)newValue);
+				return;
+			case UMLRpyPackage.CGI_ASSOCIATION_END__MPMODEL_OBJECT:
+				setM_pModelObject((M_pModelObjectType)newValue);
+				return;
+			case UMLRpyPackage.CGI_ASSOCIATION_END__MPPARENT:
+				setM_pParent((String)newValue);
+				return;
+			case UMLRpyPackage.CGI_ASSOCIATION_END__MPSOURCE:
+				setM_pSource((M_pRootType)newValue);
+				return;
+			case UMLRpyPackage.CGI_ASSOCIATION_END__MSOURCE_TYPE:
+				setM_sourceType((String)newValue);
+				return;
+			case UMLRpyPackage.CGI_ASSOCIATION_END__MPTARGET:
+				setM_pTarget((M_pRootType)newValue);
+				return;
+			case UMLRpyPackage.CGI_ASSOCIATION_END__MTARGET_TYPE:
+				setM_targetType((String)newValue);
+				return;
+			case UMLRpyPackage.CGI_ASSOCIATION_END__MDIRECTION:
+				setM_direction((String)newValue);
+				return;
+			case UMLRpyPackage.CGI_ASSOCIATION_END__MRPN:
+				setM_rpn((CGIText)newValue);
+				return;
+			case UMLRpyPackage.CGI_ASSOCIATION_END__MANGLE_POINT1:
+				getM_anglePoint1().clear();
+				getM_anglePoint1().addAll((Collection<? extends String>)newValue);
+				return;
+			case UMLRpyPackage.CGI_ASSOCIATION_END__MANGLE_POINT2:
+				getM_anglePoint2().clear();
+				getM_anglePoint2().addAll((Collection<? extends String>)newValue);
+				return;
+			case UMLRpyPackage.CGI_ASSOCIATION_END__MLINE_STYLE:
+				setM_line_style((String)newValue);
+				return;
+			case UMLRpyPackage.CGI_ASSOCIATION_END__MSOURCE_PORT:
+				getM_SourcePort().clear();
+				getM_SourcePort().addAll((Collection<? extends String>)newValue);
+				return;
+			case UMLRpyPackage.CGI_ASSOCIATION_END__MTARGET_PORT:
+				getM_TargetPort().clear();
+				getM_TargetPort().addAll((Collection<? extends String>)newValue);
+				return;
+			case UMLRpyPackage.CGI_ASSOCIATION_END__MPINVERSE_MODEL_OBJECT:
+				setM_pInverseModelObject((IAssociationEndHandle)newValue);
+				return;
+			case UMLRpyPackage.CGI_ASSOCIATION_END__MPINSTANCE:
+				setM_pInstance((IObjectLinkHandle)newValue);
+				return;
+			case UMLRpyPackage.CGI_ASSOCIATION_END__MPINVERSE_INSTANCE:
+				setM_pInverseInstance((IObjectLinkHandle)newValue);
+				return;
+			case UMLRpyPackage.CGI_ASSOCIATION_END__MBSHOW_SOURCE_MULTIPLICITY:
+				setM_bShowSourceMultiplicity((String)newValue);
+				return;
+			case UMLRpyPackage.CGI_ASSOCIATION_END__MBSHOW_SOURCE_ROLE:
+				setM_bShowSourceRole((String)newValue);
+				return;
+			case UMLRpyPackage.CGI_ASSOCIATION_END__MBSHOW_TARGET_MULTIPLICITY:
+				setM_bShowTargetMultiplicity((String)newValue);
+				return;
+			case UMLRpyPackage.CGI_ASSOCIATION_END__MBSHOW_TARGET_ROLE:
+				setM_bShowTargetRole((String)newValue);
+				return;
+			case UMLRpyPackage.CGI_ASSOCIATION_END__MBSHOW_LINK_NAME:
+				setM_bShowLinkName((String)newValue);
+				return;
+			case UMLRpyPackage.CGI_ASSOCIATION_END__MBSHOW_SPECIFIC_TYPE:
+				setM_bShowSpecificType((String)newValue);
+				return;
+			case UMLRpyPackage.CGI_ASSOCIATION_END__MBINSTANCE:
+				setM_bInstance((String)newValue);
+				return;
+			case UMLRpyPackage.CGI_ASSOCIATION_END__MBSHOW_QUALIFIER1:
+				setM_bShowQualifier1((String)newValue);
+				return;
+			case UMLRpyPackage.CGI_ASSOCIATION_END__MBSHOW_QUALIFIER2:
+				setM_bShowQualifier2((String)newValue);
+				return;
+			case UMLRpyPackage.CGI_ASSOCIATION_END__MSOURCE_ROLE:
+				setM_sourceRole((CGIText)newValue);
+				return;
+			case UMLRpyPackage.CGI_ASSOCIATION_END__MTARGET_ROLE:
+				setM_targetRole((CGIText)newValue);
+				return;
+			case UMLRpyPackage.CGI_ASSOCIATION_END__MSOURCE_MULTIPLICITY:
+				setM_sourceMultiplicity((CGIText)newValue);
+				return;
+			case UMLRpyPackage.CGI_ASSOCIATION_END__MTARGET_MULTIPLICITY:
+				setM_targetMultiplicity((CGIText)newValue);
+				return;
+			case UMLRpyPackage.CGI_ASSOCIATION_END__MSOURCE_QUALIFIER:
+				setM_sourceQualifier((CGIText)newValue);
+				return;
+			case UMLRpyPackage.CGI_ASSOCIATION_END__MTARGET_QUALIFIER:
+				setM_targetQualifier((CGIText)newValue);
+				return;
+			case UMLRpyPackage.CGI_ASSOCIATION_END__MSPECIFIC_TYPE:
+				setM_specificType((String)newValue);
+				return;
+			case UMLRpyPackage.CGI_ASSOCIATION_END__MARROW:
+				getM_arrow().clear();
+				getM_arrow().addAll((Collection<? extends String>)newValue);
+				return;
+		}
+		super.eSet(featureID, newValue);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void eUnset(int featureID) {
+		switch (featureID) {
+			case UMLRpyPackage.CGI_ASSOCIATION_END__PROPERTIES:
+				setProperties((IPropertyContainer)null);
+				return;
+			case UMLRpyPackage.CGI_ASSOCIATION_END__MPMODEL_OBJECT:
+				setM_pModelObject((M_pModelObjectType)null);
+				return;
+			case UMLRpyPackage.CGI_ASSOCIATION_END__MPPARENT:
+				setM_pParent(MPPARENT_EDEFAULT);
+				return;
+			case UMLRpyPackage.CGI_ASSOCIATION_END__MPSOURCE:
+				setM_pSource((M_pRootType)null);
+				return;
+			case UMLRpyPackage.CGI_ASSOCIATION_END__MSOURCE_TYPE:
+				setM_sourceType(MSOURCE_TYPE_EDEFAULT);
+				return;
+			case UMLRpyPackage.CGI_ASSOCIATION_END__MPTARGET:
+				setM_pTarget((M_pRootType)null);
+				return;
+			case UMLRpyPackage.CGI_ASSOCIATION_END__MTARGET_TYPE:
+				setM_targetType(MTARGET_TYPE_EDEFAULT);
+				return;
+			case UMLRpyPackage.CGI_ASSOCIATION_END__MDIRECTION:
+				setM_direction(MDIRECTION_EDEFAULT);
+				return;
+			case UMLRpyPackage.CGI_ASSOCIATION_END__MRPN:
+				setM_rpn((CGIText)null);
+				return;
+			case UMLRpyPackage.CGI_ASSOCIATION_END__MANGLE_POINT1:
+				getM_anglePoint1().clear();
+				return;
+			case UMLRpyPackage.CGI_ASSOCIATION_END__MANGLE_POINT2:
+				getM_anglePoint2().clear();
+				return;
+			case UMLRpyPackage.CGI_ASSOCIATION_END__MLINE_STYLE:
+				setM_line_style(MLINE_STYLE_EDEFAULT);
+				return;
+			case UMLRpyPackage.CGI_ASSOCIATION_END__MSOURCE_PORT:
+				getM_SourcePort().clear();
+				return;
+			case UMLRpyPackage.CGI_ASSOCIATION_END__MTARGET_PORT:
+				getM_TargetPort().clear();
+				return;
+			case UMLRpyPackage.CGI_ASSOCIATION_END__MPINVERSE_MODEL_OBJECT:
+				setM_pInverseModelObject((IAssociationEndHandle)null);
+				return;
+			case UMLRpyPackage.CGI_ASSOCIATION_END__MPINSTANCE:
+				setM_pInstance((IObjectLinkHandle)null);
+				return;
+			case UMLRpyPackage.CGI_ASSOCIATION_END__MPINVERSE_INSTANCE:
+				setM_pInverseInstance((IObjectLinkHandle)null);
+				return;
+			case UMLRpyPackage.CGI_ASSOCIATION_END__MBSHOW_SOURCE_MULTIPLICITY:
+				setM_bShowSourceMultiplicity(MBSHOW_SOURCE_MULTIPLICITY_EDEFAULT);
+				return;
+			case UMLRpyPackage.CGI_ASSOCIATION_END__MBSHOW_SOURCE_ROLE:
+				setM_bShowSourceRole(MBSHOW_SOURCE_ROLE_EDEFAULT);
+				return;
+			case UMLRpyPackage.CGI_ASSOCIATION_END__MBSHOW_TARGET_MULTIPLICITY:
+				setM_bShowTargetMultiplicity(MBSHOW_TARGET_MULTIPLICITY_EDEFAULT);
+				return;
+			case UMLRpyPackage.CGI_ASSOCIATION_END__MBSHOW_TARGET_ROLE:
+				setM_bShowTargetRole(MBSHOW_TARGET_ROLE_EDEFAULT);
+				return;
+			case UMLRpyPackage.CGI_ASSOCIATION_END__MBSHOW_LINK_NAME:
+				setM_bShowLinkName(MBSHOW_LINK_NAME_EDEFAULT);
+				return;
+			case UMLRpyPackage.CGI_ASSOCIATION_END__MBSHOW_SPECIFIC_TYPE:
+				setM_bShowSpecificType(MBSHOW_SPECIFIC_TYPE_EDEFAULT);
+				return;
+			case UMLRpyPackage.CGI_ASSOCIATION_END__MBINSTANCE:
+				setM_bInstance(MBINSTANCE_EDEFAULT);
+				return;
+			case UMLRpyPackage.CGI_ASSOCIATION_END__MBSHOW_QUALIFIER1:
+				setM_bShowQualifier1(MBSHOW_QUALIFIER1_EDEFAULT);
+				return;
+			case UMLRpyPackage.CGI_ASSOCIATION_END__MBSHOW_QUALIFIER2:
+				setM_bShowQualifier2(MBSHOW_QUALIFIER2_EDEFAULT);
+				return;
+			case UMLRpyPackage.CGI_ASSOCIATION_END__MSOURCE_ROLE:
+				setM_sourceRole((CGIText)null);
+				return;
+			case UMLRpyPackage.CGI_ASSOCIATION_END__MTARGET_ROLE:
+				setM_targetRole((CGIText)null);
+				return;
+			case UMLRpyPackage.CGI_ASSOCIATION_END__MSOURCE_MULTIPLICITY:
+				setM_sourceMultiplicity((CGIText)null);
+				return;
+			case UMLRpyPackage.CGI_ASSOCIATION_END__MTARGET_MULTIPLICITY:
+				setM_targetMultiplicity((CGIText)null);
+				return;
+			case UMLRpyPackage.CGI_ASSOCIATION_END__MSOURCE_QUALIFIER:
+				setM_sourceQualifier((CGIText)null);
+				return;
+			case UMLRpyPackage.CGI_ASSOCIATION_END__MTARGET_QUALIFIER:
+				setM_targetQualifier((CGIText)null);
+				return;
+			case UMLRpyPackage.CGI_ASSOCIATION_END__MSPECIFIC_TYPE:
+				setM_specificType(MSPECIFIC_TYPE_EDEFAULT);
+				return;
+			case UMLRpyPackage.CGI_ASSOCIATION_END__MARROW:
+				getM_arrow().clear();
+				return;
+		}
+		super.eUnset(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public boolean eIsSet(int featureID) {
+		switch (featureID) {
+			case UMLRpyPackage.CGI_ASSOCIATION_END__PROPERTIES:
+				return properties != null;
+			case UMLRpyPackage.CGI_ASSOCIATION_END__MPMODEL_OBJECT:
+				return m_pModelObject != null;
+			case UMLRpyPackage.CGI_ASSOCIATION_END__MPPARENT:
+				return MPPARENT_EDEFAULT == null ? m_pParent != null : !MPPARENT_EDEFAULT.equals(m_pParent);
+			case UMLRpyPackage.CGI_ASSOCIATION_END__MPSOURCE:
+				return m_pSource != null;
+			case UMLRpyPackage.CGI_ASSOCIATION_END__MSOURCE_TYPE:
+				return MSOURCE_TYPE_EDEFAULT == null ? m_sourceType != null : !MSOURCE_TYPE_EDEFAULT.equals(m_sourceType);
+			case UMLRpyPackage.CGI_ASSOCIATION_END__MPTARGET:
+				return m_pTarget != null;
+			case UMLRpyPackage.CGI_ASSOCIATION_END__MTARGET_TYPE:
+				return MTARGET_TYPE_EDEFAULT == null ? m_targetType != null : !MTARGET_TYPE_EDEFAULT.equals(m_targetType);
+			case UMLRpyPackage.CGI_ASSOCIATION_END__MDIRECTION:
+				return MDIRECTION_EDEFAULT == null ? m_direction != null : !MDIRECTION_EDEFAULT.equals(m_direction);
+			case UMLRpyPackage.CGI_ASSOCIATION_END__MRPN:
+				return m_rpn != null;
+			case UMLRpyPackage.CGI_ASSOCIATION_END__MANGLE_POINT1:
+				return m_anglePoint1 != null && !m_anglePoint1.isEmpty();
+			case UMLRpyPackage.CGI_ASSOCIATION_END__MANGLE_POINT2:
+				return m_anglePoint2 != null && !m_anglePoint2.isEmpty();
+			case UMLRpyPackage.CGI_ASSOCIATION_END__MLINE_STYLE:
+				return MLINE_STYLE_EDEFAULT == null ? m_line_style != null : !MLINE_STYLE_EDEFAULT.equals(m_line_style);
+			case UMLRpyPackage.CGI_ASSOCIATION_END__MSOURCE_PORT:
+				return m_SourcePort != null && !m_SourcePort.isEmpty();
+			case UMLRpyPackage.CGI_ASSOCIATION_END__MTARGET_PORT:
+				return m_TargetPort != null && !m_TargetPort.isEmpty();
+			case UMLRpyPackage.CGI_ASSOCIATION_END__MPINVERSE_MODEL_OBJECT:
+				return m_pInverseModelObject != null;
+			case UMLRpyPackage.CGI_ASSOCIATION_END__MPINSTANCE:
+				return m_pInstance != null;
+			case UMLRpyPackage.CGI_ASSOCIATION_END__MPINVERSE_INSTANCE:
+				return m_pInverseInstance != null;
+			case UMLRpyPackage.CGI_ASSOCIATION_END__MBSHOW_SOURCE_MULTIPLICITY:
+				return MBSHOW_SOURCE_MULTIPLICITY_EDEFAULT == null ? m_bShowSourceMultiplicity != null : !MBSHOW_SOURCE_MULTIPLICITY_EDEFAULT.equals(m_bShowSourceMultiplicity);
+			case UMLRpyPackage.CGI_ASSOCIATION_END__MBSHOW_SOURCE_ROLE:
+				return MBSHOW_SOURCE_ROLE_EDEFAULT == null ? m_bShowSourceRole != null : !MBSHOW_SOURCE_ROLE_EDEFAULT.equals(m_bShowSourceRole);
+			case UMLRpyPackage.CGI_ASSOCIATION_END__MBSHOW_TARGET_MULTIPLICITY:
+				return MBSHOW_TARGET_MULTIPLICITY_EDEFAULT == null ? m_bShowTargetMultiplicity != null : !MBSHOW_TARGET_MULTIPLICITY_EDEFAULT.equals(m_bShowTargetMultiplicity);
+			case UMLRpyPackage.CGI_ASSOCIATION_END__MBSHOW_TARGET_ROLE:
+				return MBSHOW_TARGET_ROLE_EDEFAULT == null ? m_bShowTargetRole != null : !MBSHOW_TARGET_ROLE_EDEFAULT.equals(m_bShowTargetRole);
+			case UMLRpyPackage.CGI_ASSOCIATION_END__MBSHOW_LINK_NAME:
+				return MBSHOW_LINK_NAME_EDEFAULT == null ? m_bShowLinkName != null : !MBSHOW_LINK_NAME_EDEFAULT.equals(m_bShowLinkName);
+			case UMLRpyPackage.CGI_ASSOCIATION_END__MBSHOW_SPECIFIC_TYPE:
+				return MBSHOW_SPECIFIC_TYPE_EDEFAULT == null ? m_bShowSpecificType != null : !MBSHOW_SPECIFIC_TYPE_EDEFAULT.equals(m_bShowSpecificType);
+			case UMLRpyPackage.CGI_ASSOCIATION_END__MBINSTANCE:
+				return MBINSTANCE_EDEFAULT == null ? m_bInstance != null : !MBINSTANCE_EDEFAULT.equals(m_bInstance);
+			case UMLRpyPackage.CGI_ASSOCIATION_END__MBSHOW_QUALIFIER1:
+				return MBSHOW_QUALIFIER1_EDEFAULT == null ? m_bShowQualifier1 != null : !MBSHOW_QUALIFIER1_EDEFAULT.equals(m_bShowQualifier1);
+			case UMLRpyPackage.CGI_ASSOCIATION_END__MBSHOW_QUALIFIER2:
+				return MBSHOW_QUALIFIER2_EDEFAULT == null ? m_bShowQualifier2 != null : !MBSHOW_QUALIFIER2_EDEFAULT.equals(m_bShowQualifier2);
+			case UMLRpyPackage.CGI_ASSOCIATION_END__MSOURCE_ROLE:
+				return m_sourceRole != null;
+			case UMLRpyPackage.CGI_ASSOCIATION_END__MTARGET_ROLE:
+				return m_targetRole != null;
+			case UMLRpyPackage.CGI_ASSOCIATION_END__MSOURCE_MULTIPLICITY:
+				return m_sourceMultiplicity != null;
+			case UMLRpyPackage.CGI_ASSOCIATION_END__MTARGET_MULTIPLICITY:
+				return m_targetMultiplicity != null;
+			case UMLRpyPackage.CGI_ASSOCIATION_END__MSOURCE_QUALIFIER:
+				return m_sourceQualifier != null;
+			case UMLRpyPackage.CGI_ASSOCIATION_END__MTARGET_QUALIFIER:
+				return m_targetQualifier != null;
+			case UMLRpyPackage.CGI_ASSOCIATION_END__MSPECIFIC_TYPE:
+				return MSPECIFIC_TYPE_EDEFAULT == null ? m_specificType != null : !MSPECIFIC_TYPE_EDEFAULT.equals(m_specificType);
+			case UMLRpyPackage.CGI_ASSOCIATION_END__MARROW:
+				return m_arrow != null && !m_arrow.isEmpty();
+		}
+		return super.eIsSet(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String toString() {
+		if (eIsProxy()) return super.toString();
+
+		StringBuffer result = new StringBuffer(super.toString());
+		result.append(" (m_pParent: "); //$NON-NLS-1$
+		result.append(m_pParent);
+		result.append(", m_sourceType: "); //$NON-NLS-1$
+		result.append(m_sourceType);
+		result.append(", m_targetType: "); //$NON-NLS-1$
+		result.append(m_targetType);
+		result.append(", m_direction: "); //$NON-NLS-1$
+		result.append(m_direction);
+		result.append(", m_anglePoint1: "); //$NON-NLS-1$
+		result.append(m_anglePoint1);
+		result.append(", m_anglePoint2: "); //$NON-NLS-1$
+		result.append(m_anglePoint2);
+		result.append(", m_line_style: "); //$NON-NLS-1$
+		result.append(m_line_style);
+		result.append(", m_SourcePort: "); //$NON-NLS-1$
+		result.append(m_SourcePort);
+		result.append(", m_TargetPort: "); //$NON-NLS-1$
+		result.append(m_TargetPort);
+		result.append(", m_bShowSourceMultiplicity: "); //$NON-NLS-1$
+		result.append(m_bShowSourceMultiplicity);
+		result.append(", m_bShowSourceRole: "); //$NON-NLS-1$
+		result.append(m_bShowSourceRole);
+		result.append(", m_bShowTargetMultiplicity: "); //$NON-NLS-1$
+		result.append(m_bShowTargetMultiplicity);
+		result.append(", m_bShowTargetRole: "); //$NON-NLS-1$
+		result.append(m_bShowTargetRole);
+		result.append(", m_bShowLinkName: "); //$NON-NLS-1$
+		result.append(m_bShowLinkName);
+		result.append(", m_bShowSpecificType: "); //$NON-NLS-1$
+		result.append(m_bShowSpecificType);
+		result.append(", m_bInstance: "); //$NON-NLS-1$
+		result.append(m_bInstance);
+		result.append(", m_bShowQualifier1: "); //$NON-NLS-1$
+		result.append(m_bShowQualifier1);
+		result.append(", m_bShowQualifier2: "); //$NON-NLS-1$
+		result.append(m_bShowQualifier2);
+		result.append(", m_specificType: "); //$NON-NLS-1$
+		result.append(m_specificType);
+		result.append(", m_arrow: "); //$NON-NLS-1$
+		result.append(m_arrow);
+		result.append(')');
+		return result.toString();
+	}
+
+} //CGIAssociationEndImpl
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/CGIAssociationRoleImpl.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/CGIAssociationRoleImpl.java
new file mode 100755
index 0000000..3cb4922
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/CGIAssociationRoleImpl.java
@@ -0,0 +1,953 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl;
+
+import java.util.Collection;
+
+import org.eclipse.emf.common.notify.Notification;
+import org.eclipse.emf.common.notify.NotificationChain;
+
+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.EDataTypeEList;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIAssociationRole;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIClassifierRole;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIText;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IAssociationRole;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IPropertyContainer;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>CGI Association Role</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * </p>
+ * <ul>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIAssociationRoleImpl#getM_pModelObject <em>MpModel Object</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIAssociationRoleImpl#getM_pParent <em>MpParent</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIAssociationRoleImpl#getM_pSource <em>MpSource</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIAssociationRoleImpl#getM_sourceType <em>Msource Type</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIAssociationRoleImpl#getM_pTarget <em>MpTarget</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIAssociationRoleImpl#getM_targetType <em>Mtarget Type</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIAssociationRoleImpl#getM_direction <em>Mdirection</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIAssociationRoleImpl#getM_rpn <em>Mrpn</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIAssociationRoleImpl#getM_anglePoint1 <em>Mangle Point1</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIAssociationRoleImpl#getM_anglePoint2 <em>Mangle Point2</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIAssociationRoleImpl#getM_line_style <em>Mline style</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIAssociationRoleImpl#getM_SourcePort <em>MSource Port</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIAssociationRoleImpl#getM_TargetPort <em>MTarget Port</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIAssociationRoleImpl#getM_arrow <em>Marrow</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIAssociationRoleImpl#getProperties <em>Properties</em>}</li>
+ * </ul>
+ *
+ * @generated
+ */
+public class CGIAssociationRoleImpl extends GraphElementsTypeImpl implements CGIAssociationRole {
+	/**
+	 * The cached value of the '{@link #getM_pModelObject() <em>MpModel Object</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_pModelObject()
+	 * @generated
+	 * @ordered
+	 */
+	protected IAssociationRole m_pModelObject;
+
+	/**
+	 * The default value of the '{@link #getM_pParent() <em>MpParent</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_pParent()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String MPPARENT_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getM_pParent() <em>MpParent</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_pParent()
+	 * @generated
+	 * @ordered
+	 */
+	protected String m_pParent = MPPARENT_EDEFAULT;
+
+	/**
+	 * The cached value of the '{@link #getM_pSource() <em>MpSource</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_pSource()
+	 * @generated
+	 * @ordered
+	 */
+	protected CGIClassifierRole m_pSource;
+
+	/**
+	 * The default value of the '{@link #getM_sourceType() <em>Msource Type</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_sourceType()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String MSOURCE_TYPE_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getM_sourceType() <em>Msource Type</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_sourceType()
+	 * @generated
+	 * @ordered
+	 */
+	protected String m_sourceType = MSOURCE_TYPE_EDEFAULT;
+
+	/**
+	 * The cached value of the '{@link #getM_pTarget() <em>MpTarget</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_pTarget()
+	 * @generated
+	 * @ordered
+	 */
+	protected CGIClassifierRole m_pTarget;
+
+	/**
+	 * The default value of the '{@link #getM_targetType() <em>Mtarget Type</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_targetType()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String MTARGET_TYPE_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getM_targetType() <em>Mtarget Type</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_targetType()
+	 * @generated
+	 * @ordered
+	 */
+	protected String m_targetType = MTARGET_TYPE_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getM_direction() <em>Mdirection</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_direction()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String MDIRECTION_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getM_direction() <em>Mdirection</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_direction()
+	 * @generated
+	 * @ordered
+	 */
+	protected String m_direction = MDIRECTION_EDEFAULT;
+
+	/**
+	 * The cached value of the '{@link #getM_rpn() <em>Mrpn</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_rpn()
+	 * @generated
+	 * @ordered
+	 */
+	protected CGIText m_rpn;
+
+	/**
+	 * The cached value of the '{@link #getM_anglePoint1() <em>Mangle Point1</em>}' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_anglePoint1()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<String> m_anglePoint1;
+
+	/**
+	 * The cached value of the '{@link #getM_anglePoint2() <em>Mangle Point2</em>}' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_anglePoint2()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<String> m_anglePoint2;
+
+	/**
+	 * The default value of the '{@link #getM_line_style() <em>Mline style</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_line_style()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String MLINE_STYLE_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getM_line_style() <em>Mline style</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_line_style()
+	 * @generated
+	 * @ordered
+	 */
+	protected String m_line_style = MLINE_STYLE_EDEFAULT;
+
+	/**
+	 * The cached value of the '{@link #getM_SourcePort() <em>MSource Port</em>}' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_SourcePort()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<String> m_SourcePort;
+
+	/**
+	 * The cached value of the '{@link #getM_TargetPort() <em>MTarget Port</em>}' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_TargetPort()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<String> m_TargetPort;
+
+	/**
+	 * The cached value of the '{@link #getM_arrow() <em>Marrow</em>}' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_arrow()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<String> m_arrow;
+
+	/**
+	 * The cached value of the '{@link #getProperties() <em>Properties</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getProperties()
+	 * @generated
+	 * @ordered
+	 */
+	protected IPropertyContainer properties;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected CGIAssociationRoleImpl() {
+		super();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EClass eStaticClass() {
+		return UMLRpyPackage.eINSTANCE.getCGIAssociationRole();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IAssociationRole getM_pModelObject() {
+		if (m_pModelObject != null && m_pModelObject.eIsProxy()) {
+			InternalEObject oldM_pModelObject = (InternalEObject)m_pModelObject;
+			m_pModelObject = (IAssociationRole)eResolveProxy(oldM_pModelObject);
+			if (m_pModelObject != oldM_pModelObject) {
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.CGI_ASSOCIATION_ROLE__MPMODEL_OBJECT, oldM_pModelObject, m_pModelObject));
+			}
+		}
+		return m_pModelObject;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IAssociationRole basicGetM_pModelObject() {
+		return m_pModelObject;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_pModelObject(IAssociationRole newM_pModelObject) {
+		IAssociationRole oldM_pModelObject = m_pModelObject;
+		m_pModelObject = newM_pModelObject;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_ASSOCIATION_ROLE__MPMODEL_OBJECT, oldM_pModelObject, m_pModelObject));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getM_pParent() {
+		return m_pParent;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_pParent(String newM_pParent) {
+		String oldM_pParent = m_pParent;
+		m_pParent = newM_pParent;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_ASSOCIATION_ROLE__MPPARENT, oldM_pParent, m_pParent));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public CGIClassifierRole getM_pSource() {
+		if (m_pSource != null && m_pSource.eIsProxy()) {
+			InternalEObject oldM_pSource = (InternalEObject)m_pSource;
+			m_pSource = (CGIClassifierRole)eResolveProxy(oldM_pSource);
+			if (m_pSource != oldM_pSource) {
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.CGI_ASSOCIATION_ROLE__MPSOURCE, oldM_pSource, m_pSource));
+			}
+		}
+		return m_pSource;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public CGIClassifierRole basicGetM_pSource() {
+		return m_pSource;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_pSource(CGIClassifierRole newM_pSource) {
+		CGIClassifierRole oldM_pSource = m_pSource;
+		m_pSource = newM_pSource;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_ASSOCIATION_ROLE__MPSOURCE, oldM_pSource, m_pSource));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getM_sourceType() {
+		return m_sourceType;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_sourceType(String newM_sourceType) {
+		String oldM_sourceType = m_sourceType;
+		m_sourceType = newM_sourceType;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_ASSOCIATION_ROLE__MSOURCE_TYPE, oldM_sourceType, m_sourceType));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public CGIClassifierRole getM_pTarget() {
+		if (m_pTarget != null && m_pTarget.eIsProxy()) {
+			InternalEObject oldM_pTarget = (InternalEObject)m_pTarget;
+			m_pTarget = (CGIClassifierRole)eResolveProxy(oldM_pTarget);
+			if (m_pTarget != oldM_pTarget) {
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.CGI_ASSOCIATION_ROLE__MPTARGET, oldM_pTarget, m_pTarget));
+			}
+		}
+		return m_pTarget;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public CGIClassifierRole basicGetM_pTarget() {
+		return m_pTarget;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_pTarget(CGIClassifierRole newM_pTarget) {
+		CGIClassifierRole oldM_pTarget = m_pTarget;
+		m_pTarget = newM_pTarget;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_ASSOCIATION_ROLE__MPTARGET, oldM_pTarget, m_pTarget));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getM_targetType() {
+		return m_targetType;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_targetType(String newM_targetType) {
+		String oldM_targetType = m_targetType;
+		m_targetType = newM_targetType;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_ASSOCIATION_ROLE__MTARGET_TYPE, oldM_targetType, m_targetType));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getM_direction() {
+		return m_direction;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_direction(String newM_direction) {
+		String oldM_direction = m_direction;
+		m_direction = newM_direction;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_ASSOCIATION_ROLE__MDIRECTION, oldM_direction, m_direction));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public CGIText getM_rpn() {
+		if (m_rpn != null && m_rpn.eIsProxy()) {
+			InternalEObject oldM_rpn = (InternalEObject)m_rpn;
+			m_rpn = (CGIText)eResolveProxy(oldM_rpn);
+			if (m_rpn != oldM_rpn) {
+				InternalEObject newM_rpn = (InternalEObject)m_rpn;
+				NotificationChain msgs = oldM_rpn.eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.CGI_ASSOCIATION_ROLE__MRPN, null, null);
+				if (newM_rpn.eInternalContainer() == null) {
+					msgs = newM_rpn.eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.CGI_ASSOCIATION_ROLE__MRPN, null, msgs);
+				}
+				if (msgs != null) msgs.dispatch();
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.CGI_ASSOCIATION_ROLE__MRPN, oldM_rpn, m_rpn));
+			}
+		}
+		return m_rpn;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public CGIText basicGetM_rpn() {
+		return m_rpn;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public NotificationChain basicSetM_rpn(CGIText newM_rpn, NotificationChain msgs) {
+		CGIText oldM_rpn = m_rpn;
+		m_rpn = newM_rpn;
+		if (eNotificationRequired()) {
+			ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_ASSOCIATION_ROLE__MRPN, oldM_rpn, newM_rpn);
+			if (msgs == null) msgs = notification; else msgs.add(notification);
+		}
+		return msgs;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_rpn(CGIText newM_rpn) {
+		if (newM_rpn != m_rpn) {
+			NotificationChain msgs = null;
+			if (m_rpn != null)
+				msgs = ((InternalEObject)m_rpn).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.CGI_ASSOCIATION_ROLE__MRPN, null, msgs);
+			if (newM_rpn != null)
+				msgs = ((InternalEObject)newM_rpn).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.CGI_ASSOCIATION_ROLE__MRPN, null, msgs);
+			msgs = basicSetM_rpn(newM_rpn, msgs);
+			if (msgs != null) msgs.dispatch();
+		}
+		else if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_ASSOCIATION_ROLE__MRPN, newM_rpn, newM_rpn));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<String> getM_anglePoint1() {
+		if (m_anglePoint1 == null) {
+			m_anglePoint1 = new EDataTypeEList<String>(String.class, this, UMLRpyPackage.CGI_ASSOCIATION_ROLE__MANGLE_POINT1);
+		}
+		return m_anglePoint1;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<String> getM_anglePoint2() {
+		if (m_anglePoint2 == null) {
+			m_anglePoint2 = new EDataTypeEList<String>(String.class, this, UMLRpyPackage.CGI_ASSOCIATION_ROLE__MANGLE_POINT2);
+		}
+		return m_anglePoint2;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getM_line_style() {
+		return m_line_style;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_line_style(String newM_line_style) {
+		String oldM_line_style = m_line_style;
+		m_line_style = newM_line_style;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_ASSOCIATION_ROLE__MLINE_STYLE, oldM_line_style, m_line_style));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<String> getM_SourcePort() {
+		if (m_SourcePort == null) {
+			m_SourcePort = new EDataTypeEList<String>(String.class, this, UMLRpyPackage.CGI_ASSOCIATION_ROLE__MSOURCE_PORT);
+		}
+		return m_SourcePort;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<String> getM_TargetPort() {
+		if (m_TargetPort == null) {
+			m_TargetPort = new EDataTypeEList<String>(String.class, this, UMLRpyPackage.CGI_ASSOCIATION_ROLE__MTARGET_PORT);
+		}
+		return m_TargetPort;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<String> getM_arrow() {
+		if (m_arrow == null) {
+			m_arrow = new EDataTypeEList<String>(String.class, this, UMLRpyPackage.CGI_ASSOCIATION_ROLE__MARROW);
+		}
+		return m_arrow;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IPropertyContainer getProperties() {
+		if (properties != null && properties.eIsProxy()) {
+			InternalEObject oldProperties = (InternalEObject)properties;
+			properties = (IPropertyContainer)eResolveProxy(oldProperties);
+			if (properties != oldProperties) {
+				InternalEObject newProperties = (InternalEObject)properties;
+				NotificationChain msgs = oldProperties.eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.CGI_ASSOCIATION_ROLE__PROPERTIES, null, null);
+				if (newProperties.eInternalContainer() == null) {
+					msgs = newProperties.eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.CGI_ASSOCIATION_ROLE__PROPERTIES, null, msgs);
+				}
+				if (msgs != null) msgs.dispatch();
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.CGI_ASSOCIATION_ROLE__PROPERTIES, oldProperties, properties));
+			}
+		}
+		return properties;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IPropertyContainer basicGetProperties() {
+		return properties;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public NotificationChain basicSetProperties(IPropertyContainer newProperties, NotificationChain msgs) {
+		IPropertyContainer oldProperties = properties;
+		properties = newProperties;
+		if (eNotificationRequired()) {
+			ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_ASSOCIATION_ROLE__PROPERTIES, oldProperties, newProperties);
+			if (msgs == null) msgs = notification; else msgs.add(notification);
+		}
+		return msgs;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setProperties(IPropertyContainer newProperties) {
+		if (newProperties != properties) {
+			NotificationChain msgs = null;
+			if (properties != null)
+				msgs = ((InternalEObject)properties).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.CGI_ASSOCIATION_ROLE__PROPERTIES, null, msgs);
+			if (newProperties != null)
+				msgs = ((InternalEObject)newProperties).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.CGI_ASSOCIATION_ROLE__PROPERTIES, null, msgs);
+			msgs = basicSetProperties(newProperties, msgs);
+			if (msgs != null) msgs.dispatch();
+		}
+		else if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_ASSOCIATION_ROLE__PROPERTIES, newProperties, newProperties));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
+		switch (featureID) {
+			case UMLRpyPackage.CGI_ASSOCIATION_ROLE__MRPN:
+				return basicSetM_rpn(null, msgs);
+			case UMLRpyPackage.CGI_ASSOCIATION_ROLE__PROPERTIES:
+				return basicSetProperties(null, msgs);
+		}
+		return super.eInverseRemove(otherEnd, featureID, msgs);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object eGet(int featureID, boolean resolve, boolean coreType) {
+		switch (featureID) {
+			case UMLRpyPackage.CGI_ASSOCIATION_ROLE__MPMODEL_OBJECT:
+				if (resolve) return getM_pModelObject();
+				return basicGetM_pModelObject();
+			case UMLRpyPackage.CGI_ASSOCIATION_ROLE__MPPARENT:
+				return getM_pParent();
+			case UMLRpyPackage.CGI_ASSOCIATION_ROLE__MPSOURCE:
+				if (resolve) return getM_pSource();
+				return basicGetM_pSource();
+			case UMLRpyPackage.CGI_ASSOCIATION_ROLE__MSOURCE_TYPE:
+				return getM_sourceType();
+			case UMLRpyPackage.CGI_ASSOCIATION_ROLE__MPTARGET:
+				if (resolve) return getM_pTarget();
+				return basicGetM_pTarget();
+			case UMLRpyPackage.CGI_ASSOCIATION_ROLE__MTARGET_TYPE:
+				return getM_targetType();
+			case UMLRpyPackage.CGI_ASSOCIATION_ROLE__MDIRECTION:
+				return getM_direction();
+			case UMLRpyPackage.CGI_ASSOCIATION_ROLE__MRPN:
+				if (resolve) return getM_rpn();
+				return basicGetM_rpn();
+			case UMLRpyPackage.CGI_ASSOCIATION_ROLE__MANGLE_POINT1:
+				return getM_anglePoint1();
+			case UMLRpyPackage.CGI_ASSOCIATION_ROLE__MANGLE_POINT2:
+				return getM_anglePoint2();
+			case UMLRpyPackage.CGI_ASSOCIATION_ROLE__MLINE_STYLE:
+				return getM_line_style();
+			case UMLRpyPackage.CGI_ASSOCIATION_ROLE__MSOURCE_PORT:
+				return getM_SourcePort();
+			case UMLRpyPackage.CGI_ASSOCIATION_ROLE__MTARGET_PORT:
+				return getM_TargetPort();
+			case UMLRpyPackage.CGI_ASSOCIATION_ROLE__MARROW:
+				return getM_arrow();
+			case UMLRpyPackage.CGI_ASSOCIATION_ROLE__PROPERTIES:
+				if (resolve) return getProperties();
+				return basicGetProperties();
+		}
+		return super.eGet(featureID, resolve, coreType);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@SuppressWarnings("unchecked")
+	@Override
+	public void eSet(int featureID, Object newValue) {
+		switch (featureID) {
+			case UMLRpyPackage.CGI_ASSOCIATION_ROLE__MPMODEL_OBJECT:
+				setM_pModelObject((IAssociationRole)newValue);
+				return;
+			case UMLRpyPackage.CGI_ASSOCIATION_ROLE__MPPARENT:
+				setM_pParent((String)newValue);
+				return;
+			case UMLRpyPackage.CGI_ASSOCIATION_ROLE__MPSOURCE:
+				setM_pSource((CGIClassifierRole)newValue);
+				return;
+			case UMLRpyPackage.CGI_ASSOCIATION_ROLE__MSOURCE_TYPE:
+				setM_sourceType((String)newValue);
+				return;
+			case UMLRpyPackage.CGI_ASSOCIATION_ROLE__MPTARGET:
+				setM_pTarget((CGIClassifierRole)newValue);
+				return;
+			case UMLRpyPackage.CGI_ASSOCIATION_ROLE__MTARGET_TYPE:
+				setM_targetType((String)newValue);
+				return;
+			case UMLRpyPackage.CGI_ASSOCIATION_ROLE__MDIRECTION:
+				setM_direction((String)newValue);
+				return;
+			case UMLRpyPackage.CGI_ASSOCIATION_ROLE__MRPN:
+				setM_rpn((CGIText)newValue);
+				return;
+			case UMLRpyPackage.CGI_ASSOCIATION_ROLE__MANGLE_POINT1:
+				getM_anglePoint1().clear();
+				getM_anglePoint1().addAll((Collection<? extends String>)newValue);
+				return;
+			case UMLRpyPackage.CGI_ASSOCIATION_ROLE__MANGLE_POINT2:
+				getM_anglePoint2().clear();
+				getM_anglePoint2().addAll((Collection<? extends String>)newValue);
+				return;
+			case UMLRpyPackage.CGI_ASSOCIATION_ROLE__MLINE_STYLE:
+				setM_line_style((String)newValue);
+				return;
+			case UMLRpyPackage.CGI_ASSOCIATION_ROLE__MSOURCE_PORT:
+				getM_SourcePort().clear();
+				getM_SourcePort().addAll((Collection<? extends String>)newValue);
+				return;
+			case UMLRpyPackage.CGI_ASSOCIATION_ROLE__MTARGET_PORT:
+				getM_TargetPort().clear();
+				getM_TargetPort().addAll((Collection<? extends String>)newValue);
+				return;
+			case UMLRpyPackage.CGI_ASSOCIATION_ROLE__MARROW:
+				getM_arrow().clear();
+				getM_arrow().addAll((Collection<? extends String>)newValue);
+				return;
+			case UMLRpyPackage.CGI_ASSOCIATION_ROLE__PROPERTIES:
+				setProperties((IPropertyContainer)newValue);
+				return;
+		}
+		super.eSet(featureID, newValue);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void eUnset(int featureID) {
+		switch (featureID) {
+			case UMLRpyPackage.CGI_ASSOCIATION_ROLE__MPMODEL_OBJECT:
+				setM_pModelObject((IAssociationRole)null);
+				return;
+			case UMLRpyPackage.CGI_ASSOCIATION_ROLE__MPPARENT:
+				setM_pParent(MPPARENT_EDEFAULT);
+				return;
+			case UMLRpyPackage.CGI_ASSOCIATION_ROLE__MPSOURCE:
+				setM_pSource((CGIClassifierRole)null);
+				return;
+			case UMLRpyPackage.CGI_ASSOCIATION_ROLE__MSOURCE_TYPE:
+				setM_sourceType(MSOURCE_TYPE_EDEFAULT);
+				return;
+			case UMLRpyPackage.CGI_ASSOCIATION_ROLE__MPTARGET:
+				setM_pTarget((CGIClassifierRole)null);
+				return;
+			case UMLRpyPackage.CGI_ASSOCIATION_ROLE__MTARGET_TYPE:
+				setM_targetType(MTARGET_TYPE_EDEFAULT);
+				return;
+			case UMLRpyPackage.CGI_ASSOCIATION_ROLE__MDIRECTION:
+				setM_direction(MDIRECTION_EDEFAULT);
+				return;
+			case UMLRpyPackage.CGI_ASSOCIATION_ROLE__MRPN:
+				setM_rpn((CGIText)null);
+				return;
+			case UMLRpyPackage.CGI_ASSOCIATION_ROLE__MANGLE_POINT1:
+				getM_anglePoint1().clear();
+				return;
+			case UMLRpyPackage.CGI_ASSOCIATION_ROLE__MANGLE_POINT2:
+				getM_anglePoint2().clear();
+				return;
+			case UMLRpyPackage.CGI_ASSOCIATION_ROLE__MLINE_STYLE:
+				setM_line_style(MLINE_STYLE_EDEFAULT);
+				return;
+			case UMLRpyPackage.CGI_ASSOCIATION_ROLE__MSOURCE_PORT:
+				getM_SourcePort().clear();
+				return;
+			case UMLRpyPackage.CGI_ASSOCIATION_ROLE__MTARGET_PORT:
+				getM_TargetPort().clear();
+				return;
+			case UMLRpyPackage.CGI_ASSOCIATION_ROLE__MARROW:
+				getM_arrow().clear();
+				return;
+			case UMLRpyPackage.CGI_ASSOCIATION_ROLE__PROPERTIES:
+				setProperties((IPropertyContainer)null);
+				return;
+		}
+		super.eUnset(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public boolean eIsSet(int featureID) {
+		switch (featureID) {
+			case UMLRpyPackage.CGI_ASSOCIATION_ROLE__MPMODEL_OBJECT:
+				return m_pModelObject != null;
+			case UMLRpyPackage.CGI_ASSOCIATION_ROLE__MPPARENT:
+				return MPPARENT_EDEFAULT == null ? m_pParent != null : !MPPARENT_EDEFAULT.equals(m_pParent);
+			case UMLRpyPackage.CGI_ASSOCIATION_ROLE__MPSOURCE:
+				return m_pSource != null;
+			case UMLRpyPackage.CGI_ASSOCIATION_ROLE__MSOURCE_TYPE:
+				return MSOURCE_TYPE_EDEFAULT == null ? m_sourceType != null : !MSOURCE_TYPE_EDEFAULT.equals(m_sourceType);
+			case UMLRpyPackage.CGI_ASSOCIATION_ROLE__MPTARGET:
+				return m_pTarget != null;
+			case UMLRpyPackage.CGI_ASSOCIATION_ROLE__MTARGET_TYPE:
+				return MTARGET_TYPE_EDEFAULT == null ? m_targetType != null : !MTARGET_TYPE_EDEFAULT.equals(m_targetType);
+			case UMLRpyPackage.CGI_ASSOCIATION_ROLE__MDIRECTION:
+				return MDIRECTION_EDEFAULT == null ? m_direction != null : !MDIRECTION_EDEFAULT.equals(m_direction);
+			case UMLRpyPackage.CGI_ASSOCIATION_ROLE__MRPN:
+				return m_rpn != null;
+			case UMLRpyPackage.CGI_ASSOCIATION_ROLE__MANGLE_POINT1:
+				return m_anglePoint1 != null && !m_anglePoint1.isEmpty();
+			case UMLRpyPackage.CGI_ASSOCIATION_ROLE__MANGLE_POINT2:
+				return m_anglePoint2 != null && !m_anglePoint2.isEmpty();
+			case UMLRpyPackage.CGI_ASSOCIATION_ROLE__MLINE_STYLE:
+				return MLINE_STYLE_EDEFAULT == null ? m_line_style != null : !MLINE_STYLE_EDEFAULT.equals(m_line_style);
+			case UMLRpyPackage.CGI_ASSOCIATION_ROLE__MSOURCE_PORT:
+				return m_SourcePort != null && !m_SourcePort.isEmpty();
+			case UMLRpyPackage.CGI_ASSOCIATION_ROLE__MTARGET_PORT:
+				return m_TargetPort != null && !m_TargetPort.isEmpty();
+			case UMLRpyPackage.CGI_ASSOCIATION_ROLE__MARROW:
+				return m_arrow != null && !m_arrow.isEmpty();
+			case UMLRpyPackage.CGI_ASSOCIATION_ROLE__PROPERTIES:
+				return properties != null;
+		}
+		return super.eIsSet(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String toString() {
+		if (eIsProxy()) return super.toString();
+
+		StringBuffer result = new StringBuffer(super.toString());
+		result.append(" (m_pParent: "); //$NON-NLS-1$
+		result.append(m_pParent);
+		result.append(", m_sourceType: "); //$NON-NLS-1$
+		result.append(m_sourceType);
+		result.append(", m_targetType: "); //$NON-NLS-1$
+		result.append(m_targetType);
+		result.append(", m_direction: "); //$NON-NLS-1$
+		result.append(m_direction);
+		result.append(", m_anglePoint1: "); //$NON-NLS-1$
+		result.append(m_anglePoint1);
+		result.append(", m_anglePoint2: "); //$NON-NLS-1$
+		result.append(m_anglePoint2);
+		result.append(", m_line_style: "); //$NON-NLS-1$
+		result.append(m_line_style);
+		result.append(", m_SourcePort: "); //$NON-NLS-1$
+		result.append(m_SourcePort);
+		result.append(", m_TargetPort: "); //$NON-NLS-1$
+		result.append(m_TargetPort);
+		result.append(", m_arrow: "); //$NON-NLS-1$
+		result.append(m_arrow);
+		result.append(')');
+		return result.toString();
+	}
+
+} //CGIAssociationRoleImpl
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/CGIBasicClassImpl.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/CGIBasicClassImpl.java
new file mode 100755
index 0000000..4a7058c
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/CGIBasicClassImpl.java
@@ -0,0 +1,720 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl;
+
+import java.util.Collection;
+
+import org.eclipse.emf.common.notify.Notification;
+import org.eclipse.emf.common.notify.NotificationChain;
+
+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.EDataTypeEList;
+import org.eclipse.emf.ecore.util.EObjectResolvingEList;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIBasicClass;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIImageData;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIText;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.GraphElementsType;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IClassifier;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IPropertyContainer;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UnknownType;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>CGI Basic Class</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * </p>
+ * <ul>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIBasicClassImpl#getM_pModelObject <em>MpModel Object</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIBasicClassImpl#getM_pParent <em>MpParent</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIBasicClassImpl#getM_transform <em>Mtransform</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIBasicClassImpl#getM_AdditionalLabel <em>MAdditional Label</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIBasicClassImpl#getM_polygon <em>Mpolygon</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIBasicClassImpl#getM_nNameFormat <em>MnName Format</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIBasicClassImpl#getM_nIsNameFormat <em>MnIs Name Format</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIBasicClassImpl#getCompartments <em>Compartments</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIBasicClassImpl#getProperties <em>Properties</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIBasicClassImpl#getM_pImageViewData <em>MpImage View Data</em>}</li>
+ * </ul>
+ *
+ * @generated
+ */
+public class CGIBasicClassImpl extends GraphElementsTypeImpl implements CGIBasicClass {
+	/**
+	 * The cached value of the '{@link #getM_pModelObject() <em>MpModel Object</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_pModelObject()
+	 * @generated
+	 * @ordered
+	 */
+	protected IClassifier m_pModelObject;
+
+	/**
+	 * The cached value of the '{@link #getM_pParent() <em>MpParent</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_pParent()
+	 * @generated
+	 * @ordered
+	 */
+	protected GraphElementsType m_pParent;
+
+	/**
+	 * The cached value of the '{@link #getM_transform() <em>Mtransform</em>}' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_transform()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<String> m_transform;
+
+	/**
+	 * The cached value of the '{@link #getM_AdditionalLabel() <em>MAdditional Label</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_AdditionalLabel()
+	 * @generated
+	 * @ordered
+	 */
+	protected CGIText m_AdditionalLabel;
+
+	/**
+	 * The cached value of the '{@link #getM_polygon() <em>Mpolygon</em>}' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_polygon()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<String> m_polygon;
+
+	/**
+	 * The default value of the '{@link #getM_nNameFormat() <em>MnName Format</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_nNameFormat()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String MNNAME_FORMAT_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getM_nNameFormat() <em>MnName Format</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_nNameFormat()
+	 * @generated
+	 * @ordered
+	 */
+	protected String m_nNameFormat = MNNAME_FORMAT_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getM_nIsNameFormat() <em>MnIs Name Format</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_nIsNameFormat()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String MNIS_NAME_FORMAT_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getM_nIsNameFormat() <em>MnIs Name Format</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_nIsNameFormat()
+	 * @generated
+	 * @ordered
+	 */
+	protected String m_nIsNameFormat = MNIS_NAME_FORMAT_EDEFAULT;
+
+	/**
+	 * The cached value of the '{@link #getCompartments() <em>Compartments</em>}' reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getCompartments()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<UnknownType> compartments;
+
+	/**
+	 * The cached value of the '{@link #getProperties() <em>Properties</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getProperties()
+	 * @generated
+	 * @ordered
+	 */
+	protected IPropertyContainer properties;
+
+	/**
+	 * The cached value of the '{@link #getM_pImageViewData() <em>MpImage View Data</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_pImageViewData()
+	 * @generated
+	 * @ordered
+	 */
+	protected CGIImageData m_pImageViewData;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected CGIBasicClassImpl() {
+		super();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EClass eStaticClass() {
+		return UMLRpyPackage.eINSTANCE.getCGIBasicClass();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IClassifier getM_pModelObject() {
+		if (m_pModelObject != null && m_pModelObject.eIsProxy()) {
+			InternalEObject oldM_pModelObject = (InternalEObject)m_pModelObject;
+			m_pModelObject = (IClassifier)eResolveProxy(oldM_pModelObject);
+			if (m_pModelObject != oldM_pModelObject) {
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.CGI_BASIC_CLASS__MPMODEL_OBJECT, oldM_pModelObject, m_pModelObject));
+			}
+		}
+		return m_pModelObject;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IClassifier basicGetM_pModelObject() {
+		return m_pModelObject;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_pModelObject(IClassifier newM_pModelObject) {
+		IClassifier oldM_pModelObject = m_pModelObject;
+		m_pModelObject = newM_pModelObject;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_BASIC_CLASS__MPMODEL_OBJECT, oldM_pModelObject, m_pModelObject));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public GraphElementsType getM_pParent() {
+		if (m_pParent != null && m_pParent.eIsProxy()) {
+			InternalEObject oldM_pParent = (InternalEObject)m_pParent;
+			m_pParent = (GraphElementsType)eResolveProxy(oldM_pParent);
+			if (m_pParent != oldM_pParent) {
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.CGI_BASIC_CLASS__MPPARENT, oldM_pParent, m_pParent));
+			}
+		}
+		return m_pParent;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public GraphElementsType basicGetM_pParent() {
+		return m_pParent;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_pParent(GraphElementsType newM_pParent) {
+		GraphElementsType oldM_pParent = m_pParent;
+		m_pParent = newM_pParent;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_BASIC_CLASS__MPPARENT, oldM_pParent, m_pParent));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<String> getM_transform() {
+		if (m_transform == null) {
+			m_transform = new EDataTypeEList<String>(String.class, this, UMLRpyPackage.CGI_BASIC_CLASS__MTRANSFORM);
+		}
+		return m_transform;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public CGIText getM_AdditionalLabel() {
+		if (m_AdditionalLabel != null && m_AdditionalLabel.eIsProxy()) {
+			InternalEObject oldM_AdditionalLabel = (InternalEObject)m_AdditionalLabel;
+			m_AdditionalLabel = (CGIText)eResolveProxy(oldM_AdditionalLabel);
+			if (m_AdditionalLabel != oldM_AdditionalLabel) {
+				InternalEObject newM_AdditionalLabel = (InternalEObject)m_AdditionalLabel;
+				NotificationChain msgs = oldM_AdditionalLabel.eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.CGI_BASIC_CLASS__MADDITIONAL_LABEL, null, null);
+				if (newM_AdditionalLabel.eInternalContainer() == null) {
+					msgs = newM_AdditionalLabel.eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.CGI_BASIC_CLASS__MADDITIONAL_LABEL, null, msgs);
+				}
+				if (msgs != null) msgs.dispatch();
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.CGI_BASIC_CLASS__MADDITIONAL_LABEL, oldM_AdditionalLabel, m_AdditionalLabel));
+			}
+		}
+		return m_AdditionalLabel;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public CGIText basicGetM_AdditionalLabel() {
+		return m_AdditionalLabel;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public NotificationChain basicSetM_AdditionalLabel(CGIText newM_AdditionalLabel, NotificationChain msgs) {
+		CGIText oldM_AdditionalLabel = m_AdditionalLabel;
+		m_AdditionalLabel = newM_AdditionalLabel;
+		if (eNotificationRequired()) {
+			ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_BASIC_CLASS__MADDITIONAL_LABEL, oldM_AdditionalLabel, newM_AdditionalLabel);
+			if (msgs == null) msgs = notification; else msgs.add(notification);
+		}
+		return msgs;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_AdditionalLabel(CGIText newM_AdditionalLabel) {
+		if (newM_AdditionalLabel != m_AdditionalLabel) {
+			NotificationChain msgs = null;
+			if (m_AdditionalLabel != null)
+				msgs = ((InternalEObject)m_AdditionalLabel).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.CGI_BASIC_CLASS__MADDITIONAL_LABEL, null, msgs);
+			if (newM_AdditionalLabel != null)
+				msgs = ((InternalEObject)newM_AdditionalLabel).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.CGI_BASIC_CLASS__MADDITIONAL_LABEL, null, msgs);
+			msgs = basicSetM_AdditionalLabel(newM_AdditionalLabel, msgs);
+			if (msgs != null) msgs.dispatch();
+		}
+		else if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_BASIC_CLASS__MADDITIONAL_LABEL, newM_AdditionalLabel, newM_AdditionalLabel));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<String> getM_polygon() {
+		if (m_polygon == null) {
+			m_polygon = new EDataTypeEList<String>(String.class, this, UMLRpyPackage.CGI_BASIC_CLASS__MPOLYGON);
+		}
+		return m_polygon;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getM_nNameFormat() {
+		return m_nNameFormat;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_nNameFormat(String newM_nNameFormat) {
+		String oldM_nNameFormat = m_nNameFormat;
+		m_nNameFormat = newM_nNameFormat;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_BASIC_CLASS__MNNAME_FORMAT, oldM_nNameFormat, m_nNameFormat));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getM_nIsNameFormat() {
+		return m_nIsNameFormat;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_nIsNameFormat(String newM_nIsNameFormat) {
+		String oldM_nIsNameFormat = m_nIsNameFormat;
+		m_nIsNameFormat = newM_nIsNameFormat;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_BASIC_CLASS__MNIS_NAME_FORMAT, oldM_nIsNameFormat, m_nIsNameFormat));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<UnknownType> getCompartments() {
+		if (compartments == null) {
+			compartments = new EObjectResolvingEList<UnknownType>(UnknownType.class, this, UMLRpyPackage.CGI_BASIC_CLASS__COMPARTMENTS);
+		}
+		return compartments;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IPropertyContainer getProperties() {
+		if (properties != null && properties.eIsProxy()) {
+			InternalEObject oldProperties = (InternalEObject)properties;
+			properties = (IPropertyContainer)eResolveProxy(oldProperties);
+			if (properties != oldProperties) {
+				InternalEObject newProperties = (InternalEObject)properties;
+				NotificationChain msgs = oldProperties.eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.CGI_BASIC_CLASS__PROPERTIES, null, null);
+				if (newProperties.eInternalContainer() == null) {
+					msgs = newProperties.eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.CGI_BASIC_CLASS__PROPERTIES, null, msgs);
+				}
+				if (msgs != null) msgs.dispatch();
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.CGI_BASIC_CLASS__PROPERTIES, oldProperties, properties));
+			}
+		}
+		return properties;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IPropertyContainer basicGetProperties() {
+		return properties;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public NotificationChain basicSetProperties(IPropertyContainer newProperties, NotificationChain msgs) {
+		IPropertyContainer oldProperties = properties;
+		properties = newProperties;
+		if (eNotificationRequired()) {
+			ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_BASIC_CLASS__PROPERTIES, oldProperties, newProperties);
+			if (msgs == null) msgs = notification; else msgs.add(notification);
+		}
+		return msgs;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setProperties(IPropertyContainer newProperties) {
+		if (newProperties != properties) {
+			NotificationChain msgs = null;
+			if (properties != null)
+				msgs = ((InternalEObject)properties).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.CGI_BASIC_CLASS__PROPERTIES, null, msgs);
+			if (newProperties != null)
+				msgs = ((InternalEObject)newProperties).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.CGI_BASIC_CLASS__PROPERTIES, null, msgs);
+			msgs = basicSetProperties(newProperties, msgs);
+			if (msgs != null) msgs.dispatch();
+		}
+		else if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_BASIC_CLASS__PROPERTIES, newProperties, newProperties));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public CGIImageData getM_pImageViewData() {
+		if (m_pImageViewData != null && m_pImageViewData.eIsProxy()) {
+			InternalEObject oldM_pImageViewData = (InternalEObject)m_pImageViewData;
+			m_pImageViewData = (CGIImageData)eResolveProxy(oldM_pImageViewData);
+			if (m_pImageViewData != oldM_pImageViewData) {
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.CGI_BASIC_CLASS__MPIMAGE_VIEW_DATA, oldM_pImageViewData, m_pImageViewData));
+			}
+		}
+		return m_pImageViewData;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public CGIImageData basicGetM_pImageViewData() {
+		return m_pImageViewData;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_pImageViewData(CGIImageData newM_pImageViewData) {
+		CGIImageData oldM_pImageViewData = m_pImageViewData;
+		m_pImageViewData = newM_pImageViewData;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_BASIC_CLASS__MPIMAGE_VIEW_DATA, oldM_pImageViewData, m_pImageViewData));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
+		switch (featureID) {
+			case UMLRpyPackage.CGI_BASIC_CLASS__MADDITIONAL_LABEL:
+				return basicSetM_AdditionalLabel(null, msgs);
+			case UMLRpyPackage.CGI_BASIC_CLASS__PROPERTIES:
+				return basicSetProperties(null, msgs);
+		}
+		return super.eInverseRemove(otherEnd, featureID, msgs);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object eGet(int featureID, boolean resolve, boolean coreType) {
+		switch (featureID) {
+			case UMLRpyPackage.CGI_BASIC_CLASS__MPMODEL_OBJECT:
+				if (resolve) return getM_pModelObject();
+				return basicGetM_pModelObject();
+			case UMLRpyPackage.CGI_BASIC_CLASS__MPPARENT:
+				if (resolve) return getM_pParent();
+				return basicGetM_pParent();
+			case UMLRpyPackage.CGI_BASIC_CLASS__MTRANSFORM:
+				return getM_transform();
+			case UMLRpyPackage.CGI_BASIC_CLASS__MADDITIONAL_LABEL:
+				if (resolve) return getM_AdditionalLabel();
+				return basicGetM_AdditionalLabel();
+			case UMLRpyPackage.CGI_BASIC_CLASS__MPOLYGON:
+				return getM_polygon();
+			case UMLRpyPackage.CGI_BASIC_CLASS__MNNAME_FORMAT:
+				return getM_nNameFormat();
+			case UMLRpyPackage.CGI_BASIC_CLASS__MNIS_NAME_FORMAT:
+				return getM_nIsNameFormat();
+			case UMLRpyPackage.CGI_BASIC_CLASS__COMPARTMENTS:
+				return getCompartments();
+			case UMLRpyPackage.CGI_BASIC_CLASS__PROPERTIES:
+				if (resolve) return getProperties();
+				return basicGetProperties();
+			case UMLRpyPackage.CGI_BASIC_CLASS__MPIMAGE_VIEW_DATA:
+				if (resolve) return getM_pImageViewData();
+				return basicGetM_pImageViewData();
+		}
+		return super.eGet(featureID, resolve, coreType);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@SuppressWarnings("unchecked")
+	@Override
+	public void eSet(int featureID, Object newValue) {
+		switch (featureID) {
+			case UMLRpyPackage.CGI_BASIC_CLASS__MPMODEL_OBJECT:
+				setM_pModelObject((IClassifier)newValue);
+				return;
+			case UMLRpyPackage.CGI_BASIC_CLASS__MPPARENT:
+				setM_pParent((GraphElementsType)newValue);
+				return;
+			case UMLRpyPackage.CGI_BASIC_CLASS__MTRANSFORM:
+				getM_transform().clear();
+				getM_transform().addAll((Collection<? extends String>)newValue);
+				return;
+			case UMLRpyPackage.CGI_BASIC_CLASS__MADDITIONAL_LABEL:
+				setM_AdditionalLabel((CGIText)newValue);
+				return;
+			case UMLRpyPackage.CGI_BASIC_CLASS__MPOLYGON:
+				getM_polygon().clear();
+				getM_polygon().addAll((Collection<? extends String>)newValue);
+				return;
+			case UMLRpyPackage.CGI_BASIC_CLASS__MNNAME_FORMAT:
+				setM_nNameFormat((String)newValue);
+				return;
+			case UMLRpyPackage.CGI_BASIC_CLASS__MNIS_NAME_FORMAT:
+				setM_nIsNameFormat((String)newValue);
+				return;
+			case UMLRpyPackage.CGI_BASIC_CLASS__COMPARTMENTS:
+				getCompartments().clear();
+				getCompartments().addAll((Collection<? extends UnknownType>)newValue);
+				return;
+			case UMLRpyPackage.CGI_BASIC_CLASS__PROPERTIES:
+				setProperties((IPropertyContainer)newValue);
+				return;
+			case UMLRpyPackage.CGI_BASIC_CLASS__MPIMAGE_VIEW_DATA:
+				setM_pImageViewData((CGIImageData)newValue);
+				return;
+		}
+		super.eSet(featureID, newValue);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void eUnset(int featureID) {
+		switch (featureID) {
+			case UMLRpyPackage.CGI_BASIC_CLASS__MPMODEL_OBJECT:
+				setM_pModelObject((IClassifier)null);
+				return;
+			case UMLRpyPackage.CGI_BASIC_CLASS__MPPARENT:
+				setM_pParent((GraphElementsType)null);
+				return;
+			case UMLRpyPackage.CGI_BASIC_CLASS__MTRANSFORM:
+				getM_transform().clear();
+				return;
+			case UMLRpyPackage.CGI_BASIC_CLASS__MADDITIONAL_LABEL:
+				setM_AdditionalLabel((CGIText)null);
+				return;
+			case UMLRpyPackage.CGI_BASIC_CLASS__MPOLYGON:
+				getM_polygon().clear();
+				return;
+			case UMLRpyPackage.CGI_BASIC_CLASS__MNNAME_FORMAT:
+				setM_nNameFormat(MNNAME_FORMAT_EDEFAULT);
+				return;
+			case UMLRpyPackage.CGI_BASIC_CLASS__MNIS_NAME_FORMAT:
+				setM_nIsNameFormat(MNIS_NAME_FORMAT_EDEFAULT);
+				return;
+			case UMLRpyPackage.CGI_BASIC_CLASS__COMPARTMENTS:
+				getCompartments().clear();
+				return;
+			case UMLRpyPackage.CGI_BASIC_CLASS__PROPERTIES:
+				setProperties((IPropertyContainer)null);
+				return;
+			case UMLRpyPackage.CGI_BASIC_CLASS__MPIMAGE_VIEW_DATA:
+				setM_pImageViewData((CGIImageData)null);
+				return;
+		}
+		super.eUnset(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public boolean eIsSet(int featureID) {
+		switch (featureID) {
+			case UMLRpyPackage.CGI_BASIC_CLASS__MPMODEL_OBJECT:
+				return m_pModelObject != null;
+			case UMLRpyPackage.CGI_BASIC_CLASS__MPPARENT:
+				return m_pParent != null;
+			case UMLRpyPackage.CGI_BASIC_CLASS__MTRANSFORM:
+				return m_transform != null && !m_transform.isEmpty();
+			case UMLRpyPackage.CGI_BASIC_CLASS__MADDITIONAL_LABEL:
+				return m_AdditionalLabel != null;
+			case UMLRpyPackage.CGI_BASIC_CLASS__MPOLYGON:
+				return m_polygon != null && !m_polygon.isEmpty();
+			case UMLRpyPackage.CGI_BASIC_CLASS__MNNAME_FORMAT:
+				return MNNAME_FORMAT_EDEFAULT == null ? m_nNameFormat != null : !MNNAME_FORMAT_EDEFAULT.equals(m_nNameFormat);
+			case UMLRpyPackage.CGI_BASIC_CLASS__MNIS_NAME_FORMAT:
+				return MNIS_NAME_FORMAT_EDEFAULT == null ? m_nIsNameFormat != null : !MNIS_NAME_FORMAT_EDEFAULT.equals(m_nIsNameFormat);
+			case UMLRpyPackage.CGI_BASIC_CLASS__COMPARTMENTS:
+				return compartments != null && !compartments.isEmpty();
+			case UMLRpyPackage.CGI_BASIC_CLASS__PROPERTIES:
+				return properties != null;
+			case UMLRpyPackage.CGI_BASIC_CLASS__MPIMAGE_VIEW_DATA:
+				return m_pImageViewData != null;
+		}
+		return super.eIsSet(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String toString() {
+		if (eIsProxy()) return super.toString();
+
+		StringBuffer result = new StringBuffer(super.toString());
+		result.append(" (m_transform: "); //$NON-NLS-1$
+		result.append(m_transform);
+		result.append(", m_polygon: "); //$NON-NLS-1$
+		result.append(m_polygon);
+		result.append(", m_nNameFormat: "); //$NON-NLS-1$
+		result.append(m_nNameFormat);
+		result.append(", m_nIsNameFormat: "); //$NON-NLS-1$
+		result.append(m_nIsNameFormat);
+		result.append(')');
+		return result.toString();
+	}
+
+} //CGIBasicClassImpl
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/CGIBlockStateImpl.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/CGIBlockStateImpl.java
new file mode 100755
index 0000000..6753ffe
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/CGIBlockStateImpl.java
@@ -0,0 +1,1128 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl;
+
+import java.util.Collection;
+
+import org.eclipse.emf.common.notify.Notification;
+import org.eclipse.emf.common.notify.NotificationChain;
+
+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.EDataTypeEList;
+import org.eclipse.emf.ecore.util.EObjectResolvingEList;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIBlockState;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIText;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CompartmentsType;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.GraphElementsType;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IPropertyContainer;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ItsTargetType;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UnknownType;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>CGI Block State</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * </p>
+ * <ul>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIBlockStateImpl#getM_pModelObject <em>MpModel Object</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIBlockStateImpl#getM_pParent <em>MpParent</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIBlockStateImpl#getM_transform <em>Mtransform</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIBlockStateImpl#getM_polygon <em>Mpolygon</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIBlockStateImpl#getM_nNameFormat <em>MnName Format</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIBlockStateImpl#getM_nIsNameFormat <em>MnIs Name Format</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIBlockStateImpl#getNAndLineCount <em>NAnd Line Count</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIBlockStateImpl#getM_pInheritsFrom <em>MpInherits From</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIBlockStateImpl#getM_nInheritanceMask <em>MnInheritance Mask</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIBlockStateImpl#getM_pDefaultComponentRelation <em>MpDefault Component Relation</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIBlockStateImpl#getM_NameDisplayMode <em>MName Display Mode</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIBlockStateImpl#getM_ActDescLablDiaplayMode <em>MAct Desc Labl Diaplay Mode</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIBlockStateImpl#getProperties <em>Properties</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIBlockStateImpl#getM_AdditionalLabel <em>MAdditional Label</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIBlockStateImpl#getM_moveAndLineTimeStamp <em>Mmove And Line Time Stamp</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIBlockStateImpl#getCompartments <em>Compartments</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIBlockStateImpl#getFrameset <em>Frameset</em>}</li>
+ * </ul>
+ *
+ * @generated
+ */
+public class CGIBlockStateImpl extends GraphElementsTypeImpl implements CGIBlockState {
+	/**
+	 * The cached value of the '{@link #getM_pModelObject() <em>MpModel Object</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_pModelObject()
+	 * @generated
+	 * @ordered
+	 */
+	protected ItsTargetType m_pModelObject;
+
+	/**
+	 * The cached value of the '{@link #getM_pParent() <em>MpParent</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_pParent()
+	 * @generated
+	 * @ordered
+	 */
+	protected GraphElementsType m_pParent;
+
+	/**
+	 * The cached value of the '{@link #getM_transform() <em>Mtransform</em>}' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_transform()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<String> m_transform;
+
+	/**
+	 * The cached value of the '{@link #getM_polygon() <em>Mpolygon</em>}' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_polygon()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<String> m_polygon;
+
+	/**
+	 * The default value of the '{@link #getM_nNameFormat() <em>MnName Format</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_nNameFormat()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String MNNAME_FORMAT_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getM_nNameFormat() <em>MnName Format</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_nNameFormat()
+	 * @generated
+	 * @ordered
+	 */
+	protected String m_nNameFormat = MNNAME_FORMAT_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getM_nIsNameFormat() <em>MnIs Name Format</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_nIsNameFormat()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String MNIS_NAME_FORMAT_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getM_nIsNameFormat() <em>MnIs Name Format</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_nIsNameFormat()
+	 * @generated
+	 * @ordered
+	 */
+	protected String m_nIsNameFormat = MNIS_NAME_FORMAT_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getNAndLineCount() <em>NAnd Line Count</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getNAndLineCount()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String NAND_LINE_COUNT_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getNAndLineCount() <em>NAnd Line Count</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getNAndLineCount()
+	 * @generated
+	 * @ordered
+	 */
+	protected String nAndLineCount = NAND_LINE_COUNT_EDEFAULT;
+
+	/**
+	 * The cached value of the '{@link #getM_pInheritsFrom() <em>MpInherits From</em>}' reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_pInheritsFrom()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<UnknownType> m_pInheritsFrom;
+
+	/**
+	 * The default value of the '{@link #getM_nInheritanceMask() <em>MnInheritance Mask</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_nInheritanceMask()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String MNINHERITANCE_MASK_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getM_nInheritanceMask() <em>MnInheritance Mask</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_nInheritanceMask()
+	 * @generated
+	 * @ordered
+	 */
+	protected String m_nInheritanceMask = MNINHERITANCE_MASK_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getM_pDefaultComponentRelation() <em>MpDefault Component Relation</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_pDefaultComponentRelation()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String MPDEFAULT_COMPONENT_RELATION_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getM_pDefaultComponentRelation() <em>MpDefault Component Relation</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_pDefaultComponentRelation()
+	 * @generated
+	 * @ordered
+	 */
+	protected String m_pDefaultComponentRelation = MPDEFAULT_COMPONENT_RELATION_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getM_NameDisplayMode() <em>MName Display Mode</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_NameDisplayMode()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String MNAME_DISPLAY_MODE_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getM_NameDisplayMode() <em>MName Display Mode</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_NameDisplayMode()
+	 * @generated
+	 * @ordered
+	 */
+	protected String m_NameDisplayMode = MNAME_DISPLAY_MODE_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getM_ActDescLablDiaplayMode() <em>MAct Desc Labl Diaplay Mode</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_ActDescLablDiaplayMode()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String MACT_DESC_LABL_DIAPLAY_MODE_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getM_ActDescLablDiaplayMode() <em>MAct Desc Labl Diaplay Mode</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_ActDescLablDiaplayMode()
+	 * @generated
+	 * @ordered
+	 */
+	protected String m_ActDescLablDiaplayMode = MACT_DESC_LABL_DIAPLAY_MODE_EDEFAULT;
+
+	/**
+	 * The cached value of the '{@link #getProperties() <em>Properties</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getProperties()
+	 * @generated
+	 * @ordered
+	 */
+	protected IPropertyContainer properties;
+
+	/**
+	 * The cached value of the '{@link #getM_AdditionalLabel() <em>MAdditional Label</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_AdditionalLabel()
+	 * @generated
+	 * @ordered
+	 */
+	protected CGIText m_AdditionalLabel;
+
+	/**
+	 * The default value of the '{@link #getM_moveAndLineTimeStamp() <em>Mmove And Line Time Stamp</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_moveAndLineTimeStamp()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String MMOVE_AND_LINE_TIME_STAMP_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getM_moveAndLineTimeStamp() <em>Mmove And Line Time Stamp</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_moveAndLineTimeStamp()
+	 * @generated
+	 * @ordered
+	 */
+	protected String m_moveAndLineTimeStamp = MMOVE_AND_LINE_TIME_STAMP_EDEFAULT;
+
+	/**
+	 * The cached value of the '{@link #getCompartments() <em>Compartments</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getCompartments()
+	 * @generated
+	 * @ordered
+	 */
+	protected CompartmentsType compartments;
+
+	/**
+	 * The default value of the '{@link #getFrameset() <em>Frameset</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getFrameset()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String FRAMESET_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getFrameset() <em>Frameset</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getFrameset()
+	 * @generated
+	 * @ordered
+	 */
+	protected String frameset = FRAMESET_EDEFAULT;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected CGIBlockStateImpl() {
+		super();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EClass eStaticClass() {
+		return UMLRpyPackage.eINSTANCE.getCGIBlockState();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public ItsTargetType getM_pModelObject() {
+		if (m_pModelObject != null && m_pModelObject.eIsProxy()) {
+			InternalEObject oldM_pModelObject = (InternalEObject)m_pModelObject;
+			m_pModelObject = (ItsTargetType)eResolveProxy(oldM_pModelObject);
+			if (m_pModelObject != oldM_pModelObject) {
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.CGI_BLOCK_STATE__MPMODEL_OBJECT, oldM_pModelObject, m_pModelObject));
+			}
+		}
+		return m_pModelObject;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public ItsTargetType basicGetM_pModelObject() {
+		return m_pModelObject;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_pModelObject(ItsTargetType newM_pModelObject) {
+		ItsTargetType oldM_pModelObject = m_pModelObject;
+		m_pModelObject = newM_pModelObject;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_BLOCK_STATE__MPMODEL_OBJECT, oldM_pModelObject, m_pModelObject));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public GraphElementsType getM_pParent() {
+		if (m_pParent != null && m_pParent.eIsProxy()) {
+			InternalEObject oldM_pParent = (InternalEObject)m_pParent;
+			m_pParent = (GraphElementsType)eResolveProxy(oldM_pParent);
+			if (m_pParent != oldM_pParent) {
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.CGI_BLOCK_STATE__MPPARENT, oldM_pParent, m_pParent));
+			}
+		}
+		return m_pParent;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public GraphElementsType basicGetM_pParent() {
+		return m_pParent;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_pParent(GraphElementsType newM_pParent) {
+		GraphElementsType oldM_pParent = m_pParent;
+		m_pParent = newM_pParent;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_BLOCK_STATE__MPPARENT, oldM_pParent, m_pParent));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<String> getM_transform() {
+		if (m_transform == null) {
+			m_transform = new EDataTypeEList<String>(String.class, this, UMLRpyPackage.CGI_BLOCK_STATE__MTRANSFORM);
+		}
+		return m_transform;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<String> getM_polygon() {
+		if (m_polygon == null) {
+			m_polygon = new EDataTypeEList<String>(String.class, this, UMLRpyPackage.CGI_BLOCK_STATE__MPOLYGON);
+		}
+		return m_polygon;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getM_nNameFormat() {
+		return m_nNameFormat;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_nNameFormat(String newM_nNameFormat) {
+		String oldM_nNameFormat = m_nNameFormat;
+		m_nNameFormat = newM_nNameFormat;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_BLOCK_STATE__MNNAME_FORMAT, oldM_nNameFormat, m_nNameFormat));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getM_nIsNameFormat() {
+		return m_nIsNameFormat;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_nIsNameFormat(String newM_nIsNameFormat) {
+		String oldM_nIsNameFormat = m_nIsNameFormat;
+		m_nIsNameFormat = newM_nIsNameFormat;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_BLOCK_STATE__MNIS_NAME_FORMAT, oldM_nIsNameFormat, m_nIsNameFormat));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getNAndLineCount() {
+		return nAndLineCount;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setNAndLineCount(String newNAndLineCount) {
+		String oldNAndLineCount = nAndLineCount;
+		nAndLineCount = newNAndLineCount;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_BLOCK_STATE__NAND_LINE_COUNT, oldNAndLineCount, nAndLineCount));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<UnknownType> getM_pInheritsFrom() {
+		if (m_pInheritsFrom == null) {
+			m_pInheritsFrom = new EObjectResolvingEList<UnknownType>(UnknownType.class, this, UMLRpyPackage.CGI_BLOCK_STATE__MPINHERITS_FROM);
+		}
+		return m_pInheritsFrom;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getM_nInheritanceMask() {
+		return m_nInheritanceMask;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_nInheritanceMask(String newM_nInheritanceMask) {
+		String oldM_nInheritanceMask = m_nInheritanceMask;
+		m_nInheritanceMask = newM_nInheritanceMask;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_BLOCK_STATE__MNINHERITANCE_MASK, oldM_nInheritanceMask, m_nInheritanceMask));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getM_pDefaultComponentRelation() {
+		return m_pDefaultComponentRelation;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_pDefaultComponentRelation(String newM_pDefaultComponentRelation) {
+		String oldM_pDefaultComponentRelation = m_pDefaultComponentRelation;
+		m_pDefaultComponentRelation = newM_pDefaultComponentRelation;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_BLOCK_STATE__MPDEFAULT_COMPONENT_RELATION, oldM_pDefaultComponentRelation, m_pDefaultComponentRelation));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getM_NameDisplayMode() {
+		return m_NameDisplayMode;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_NameDisplayMode(String newM_NameDisplayMode) {
+		String oldM_NameDisplayMode = m_NameDisplayMode;
+		m_NameDisplayMode = newM_NameDisplayMode;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_BLOCK_STATE__MNAME_DISPLAY_MODE, oldM_NameDisplayMode, m_NameDisplayMode));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getM_ActDescLablDiaplayMode() {
+		return m_ActDescLablDiaplayMode;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_ActDescLablDiaplayMode(String newM_ActDescLablDiaplayMode) {
+		String oldM_ActDescLablDiaplayMode = m_ActDescLablDiaplayMode;
+		m_ActDescLablDiaplayMode = newM_ActDescLablDiaplayMode;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_BLOCK_STATE__MACT_DESC_LABL_DIAPLAY_MODE, oldM_ActDescLablDiaplayMode, m_ActDescLablDiaplayMode));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IPropertyContainer getProperties() {
+		if (properties != null && properties.eIsProxy()) {
+			InternalEObject oldProperties = (InternalEObject)properties;
+			properties = (IPropertyContainer)eResolveProxy(oldProperties);
+			if (properties != oldProperties) {
+				InternalEObject newProperties = (InternalEObject)properties;
+				NotificationChain msgs = oldProperties.eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.CGI_BLOCK_STATE__PROPERTIES, null, null);
+				if (newProperties.eInternalContainer() == null) {
+					msgs = newProperties.eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.CGI_BLOCK_STATE__PROPERTIES, null, msgs);
+				}
+				if (msgs != null) msgs.dispatch();
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.CGI_BLOCK_STATE__PROPERTIES, oldProperties, properties));
+			}
+		}
+		return properties;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IPropertyContainer basicGetProperties() {
+		return properties;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public NotificationChain basicSetProperties(IPropertyContainer newProperties, NotificationChain msgs) {
+		IPropertyContainer oldProperties = properties;
+		properties = newProperties;
+		if (eNotificationRequired()) {
+			ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_BLOCK_STATE__PROPERTIES, oldProperties, newProperties);
+			if (msgs == null) msgs = notification; else msgs.add(notification);
+		}
+		return msgs;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setProperties(IPropertyContainer newProperties) {
+		if (newProperties != properties) {
+			NotificationChain msgs = null;
+			if (properties != null)
+				msgs = ((InternalEObject)properties).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.CGI_BLOCK_STATE__PROPERTIES, null, msgs);
+			if (newProperties != null)
+				msgs = ((InternalEObject)newProperties).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.CGI_BLOCK_STATE__PROPERTIES, null, msgs);
+			msgs = basicSetProperties(newProperties, msgs);
+			if (msgs != null) msgs.dispatch();
+		}
+		else if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_BLOCK_STATE__PROPERTIES, newProperties, newProperties));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public CGIText getM_AdditionalLabel() {
+		if (m_AdditionalLabel != null && m_AdditionalLabel.eIsProxy()) {
+			InternalEObject oldM_AdditionalLabel = (InternalEObject)m_AdditionalLabel;
+			m_AdditionalLabel = (CGIText)eResolveProxy(oldM_AdditionalLabel);
+			if (m_AdditionalLabel != oldM_AdditionalLabel) {
+				InternalEObject newM_AdditionalLabel = (InternalEObject)m_AdditionalLabel;
+				NotificationChain msgs = oldM_AdditionalLabel.eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.CGI_BLOCK_STATE__MADDITIONAL_LABEL, null, null);
+				if (newM_AdditionalLabel.eInternalContainer() == null) {
+					msgs = newM_AdditionalLabel.eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.CGI_BLOCK_STATE__MADDITIONAL_LABEL, null, msgs);
+				}
+				if (msgs != null) msgs.dispatch();
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.CGI_BLOCK_STATE__MADDITIONAL_LABEL, oldM_AdditionalLabel, m_AdditionalLabel));
+			}
+		}
+		return m_AdditionalLabel;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public CGIText basicGetM_AdditionalLabel() {
+		return m_AdditionalLabel;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public NotificationChain basicSetM_AdditionalLabel(CGIText newM_AdditionalLabel, NotificationChain msgs) {
+		CGIText oldM_AdditionalLabel = m_AdditionalLabel;
+		m_AdditionalLabel = newM_AdditionalLabel;
+		if (eNotificationRequired()) {
+			ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_BLOCK_STATE__MADDITIONAL_LABEL, oldM_AdditionalLabel, newM_AdditionalLabel);
+			if (msgs == null) msgs = notification; else msgs.add(notification);
+		}
+		return msgs;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_AdditionalLabel(CGIText newM_AdditionalLabel) {
+		if (newM_AdditionalLabel != m_AdditionalLabel) {
+			NotificationChain msgs = null;
+			if (m_AdditionalLabel != null)
+				msgs = ((InternalEObject)m_AdditionalLabel).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.CGI_BLOCK_STATE__MADDITIONAL_LABEL, null, msgs);
+			if (newM_AdditionalLabel != null)
+				msgs = ((InternalEObject)newM_AdditionalLabel).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.CGI_BLOCK_STATE__MADDITIONAL_LABEL, null, msgs);
+			msgs = basicSetM_AdditionalLabel(newM_AdditionalLabel, msgs);
+			if (msgs != null) msgs.dispatch();
+		}
+		else if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_BLOCK_STATE__MADDITIONAL_LABEL, newM_AdditionalLabel, newM_AdditionalLabel));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getM_moveAndLineTimeStamp() {
+		return m_moveAndLineTimeStamp;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_moveAndLineTimeStamp(String newM_moveAndLineTimeStamp) {
+		String oldM_moveAndLineTimeStamp = m_moveAndLineTimeStamp;
+		m_moveAndLineTimeStamp = newM_moveAndLineTimeStamp;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_BLOCK_STATE__MMOVE_AND_LINE_TIME_STAMP, oldM_moveAndLineTimeStamp, m_moveAndLineTimeStamp));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public CompartmentsType getCompartments() {
+		if (compartments != null && compartments.eIsProxy()) {
+			InternalEObject oldCompartments = (InternalEObject)compartments;
+			compartments = (CompartmentsType)eResolveProxy(oldCompartments);
+			if (compartments != oldCompartments) {
+				InternalEObject newCompartments = (InternalEObject)compartments;
+				NotificationChain msgs = oldCompartments.eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.CGI_BLOCK_STATE__COMPARTMENTS, null, null);
+				if (newCompartments.eInternalContainer() == null) {
+					msgs = newCompartments.eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.CGI_BLOCK_STATE__COMPARTMENTS, null, msgs);
+				}
+				if (msgs != null) msgs.dispatch();
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.CGI_BLOCK_STATE__COMPARTMENTS, oldCompartments, compartments));
+			}
+		}
+		return compartments;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public CompartmentsType basicGetCompartments() {
+		return compartments;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public NotificationChain basicSetCompartments(CompartmentsType newCompartments, NotificationChain msgs) {
+		CompartmentsType oldCompartments = compartments;
+		compartments = newCompartments;
+		if (eNotificationRequired()) {
+			ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_BLOCK_STATE__COMPARTMENTS, oldCompartments, newCompartments);
+			if (msgs == null) msgs = notification; else msgs.add(notification);
+		}
+		return msgs;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setCompartments(CompartmentsType newCompartments) {
+		if (newCompartments != compartments) {
+			NotificationChain msgs = null;
+			if (compartments != null)
+				msgs = ((InternalEObject)compartments).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.CGI_BLOCK_STATE__COMPARTMENTS, null, msgs);
+			if (newCompartments != null)
+				msgs = ((InternalEObject)newCompartments).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.CGI_BLOCK_STATE__COMPARTMENTS, null, msgs);
+			msgs = basicSetCompartments(newCompartments, msgs);
+			if (msgs != null) msgs.dispatch();
+		}
+		else if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_BLOCK_STATE__COMPARTMENTS, newCompartments, newCompartments));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getFrameset() {
+		return frameset;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setFrameset(String newFrameset) {
+		String oldFrameset = frameset;
+		frameset = newFrameset;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_BLOCK_STATE__FRAMESET, oldFrameset, frameset));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
+		switch (featureID) {
+			case UMLRpyPackage.CGI_BLOCK_STATE__PROPERTIES:
+				return basicSetProperties(null, msgs);
+			case UMLRpyPackage.CGI_BLOCK_STATE__MADDITIONAL_LABEL:
+				return basicSetM_AdditionalLabel(null, msgs);
+			case UMLRpyPackage.CGI_BLOCK_STATE__COMPARTMENTS:
+				return basicSetCompartments(null, msgs);
+		}
+		return super.eInverseRemove(otherEnd, featureID, msgs);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object eGet(int featureID, boolean resolve, boolean coreType) {
+		switch (featureID) {
+			case UMLRpyPackage.CGI_BLOCK_STATE__MPMODEL_OBJECT:
+				if (resolve) return getM_pModelObject();
+				return basicGetM_pModelObject();
+			case UMLRpyPackage.CGI_BLOCK_STATE__MPPARENT:
+				if (resolve) return getM_pParent();
+				return basicGetM_pParent();
+			case UMLRpyPackage.CGI_BLOCK_STATE__MTRANSFORM:
+				return getM_transform();
+			case UMLRpyPackage.CGI_BLOCK_STATE__MPOLYGON:
+				return getM_polygon();
+			case UMLRpyPackage.CGI_BLOCK_STATE__MNNAME_FORMAT:
+				return getM_nNameFormat();
+			case UMLRpyPackage.CGI_BLOCK_STATE__MNIS_NAME_FORMAT:
+				return getM_nIsNameFormat();
+			case UMLRpyPackage.CGI_BLOCK_STATE__NAND_LINE_COUNT:
+				return getNAndLineCount();
+			case UMLRpyPackage.CGI_BLOCK_STATE__MPINHERITS_FROM:
+				return getM_pInheritsFrom();
+			case UMLRpyPackage.CGI_BLOCK_STATE__MNINHERITANCE_MASK:
+				return getM_nInheritanceMask();
+			case UMLRpyPackage.CGI_BLOCK_STATE__MPDEFAULT_COMPONENT_RELATION:
+				return getM_pDefaultComponentRelation();
+			case UMLRpyPackage.CGI_BLOCK_STATE__MNAME_DISPLAY_MODE:
+				return getM_NameDisplayMode();
+			case UMLRpyPackage.CGI_BLOCK_STATE__MACT_DESC_LABL_DIAPLAY_MODE:
+				return getM_ActDescLablDiaplayMode();
+			case UMLRpyPackage.CGI_BLOCK_STATE__PROPERTIES:
+				if (resolve) return getProperties();
+				return basicGetProperties();
+			case UMLRpyPackage.CGI_BLOCK_STATE__MADDITIONAL_LABEL:
+				if (resolve) return getM_AdditionalLabel();
+				return basicGetM_AdditionalLabel();
+			case UMLRpyPackage.CGI_BLOCK_STATE__MMOVE_AND_LINE_TIME_STAMP:
+				return getM_moveAndLineTimeStamp();
+			case UMLRpyPackage.CGI_BLOCK_STATE__COMPARTMENTS:
+				if (resolve) return getCompartments();
+				return basicGetCompartments();
+			case UMLRpyPackage.CGI_BLOCK_STATE__FRAMESET:
+				return getFrameset();
+		}
+		return super.eGet(featureID, resolve, coreType);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@SuppressWarnings("unchecked")
+	@Override
+	public void eSet(int featureID, Object newValue) {
+		switch (featureID) {
+			case UMLRpyPackage.CGI_BLOCK_STATE__MPMODEL_OBJECT:
+				setM_pModelObject((ItsTargetType)newValue);
+				return;
+			case UMLRpyPackage.CGI_BLOCK_STATE__MPPARENT:
+				setM_pParent((GraphElementsType)newValue);
+				return;
+			case UMLRpyPackage.CGI_BLOCK_STATE__MTRANSFORM:
+				getM_transform().clear();
+				getM_transform().addAll((Collection<? extends String>)newValue);
+				return;
+			case UMLRpyPackage.CGI_BLOCK_STATE__MPOLYGON:
+				getM_polygon().clear();
+				getM_polygon().addAll((Collection<? extends String>)newValue);
+				return;
+			case UMLRpyPackage.CGI_BLOCK_STATE__MNNAME_FORMAT:
+				setM_nNameFormat((String)newValue);
+				return;
+			case UMLRpyPackage.CGI_BLOCK_STATE__MNIS_NAME_FORMAT:
+				setM_nIsNameFormat((String)newValue);
+				return;
+			case UMLRpyPackage.CGI_BLOCK_STATE__NAND_LINE_COUNT:
+				setNAndLineCount((String)newValue);
+				return;
+			case UMLRpyPackage.CGI_BLOCK_STATE__MPINHERITS_FROM:
+				getM_pInheritsFrom().clear();
+				getM_pInheritsFrom().addAll((Collection<? extends UnknownType>)newValue);
+				return;
+			case UMLRpyPackage.CGI_BLOCK_STATE__MNINHERITANCE_MASK:
+				setM_nInheritanceMask((String)newValue);
+				return;
+			case UMLRpyPackage.CGI_BLOCK_STATE__MPDEFAULT_COMPONENT_RELATION:
+				setM_pDefaultComponentRelation((String)newValue);
+				return;
+			case UMLRpyPackage.CGI_BLOCK_STATE__MNAME_DISPLAY_MODE:
+				setM_NameDisplayMode((String)newValue);
+				return;
+			case UMLRpyPackage.CGI_BLOCK_STATE__MACT_DESC_LABL_DIAPLAY_MODE:
+				setM_ActDescLablDiaplayMode((String)newValue);
+				return;
+			case UMLRpyPackage.CGI_BLOCK_STATE__PROPERTIES:
+				setProperties((IPropertyContainer)newValue);
+				return;
+			case UMLRpyPackage.CGI_BLOCK_STATE__MADDITIONAL_LABEL:
+				setM_AdditionalLabel((CGIText)newValue);
+				return;
+			case UMLRpyPackage.CGI_BLOCK_STATE__MMOVE_AND_LINE_TIME_STAMP:
+				setM_moveAndLineTimeStamp((String)newValue);
+				return;
+			case UMLRpyPackage.CGI_BLOCK_STATE__COMPARTMENTS:
+				setCompartments((CompartmentsType)newValue);
+				return;
+			case UMLRpyPackage.CGI_BLOCK_STATE__FRAMESET:
+				setFrameset((String)newValue);
+				return;
+		}
+		super.eSet(featureID, newValue);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void eUnset(int featureID) {
+		switch (featureID) {
+			case UMLRpyPackage.CGI_BLOCK_STATE__MPMODEL_OBJECT:
+				setM_pModelObject((ItsTargetType)null);
+				return;
+			case UMLRpyPackage.CGI_BLOCK_STATE__MPPARENT:
+				setM_pParent((GraphElementsType)null);
+				return;
+			case UMLRpyPackage.CGI_BLOCK_STATE__MTRANSFORM:
+				getM_transform().clear();
+				return;
+			case UMLRpyPackage.CGI_BLOCK_STATE__MPOLYGON:
+				getM_polygon().clear();
+				return;
+			case UMLRpyPackage.CGI_BLOCK_STATE__MNNAME_FORMAT:
+				setM_nNameFormat(MNNAME_FORMAT_EDEFAULT);
+				return;
+			case UMLRpyPackage.CGI_BLOCK_STATE__MNIS_NAME_FORMAT:
+				setM_nIsNameFormat(MNIS_NAME_FORMAT_EDEFAULT);
+				return;
+			case UMLRpyPackage.CGI_BLOCK_STATE__NAND_LINE_COUNT:
+				setNAndLineCount(NAND_LINE_COUNT_EDEFAULT);
+				return;
+			case UMLRpyPackage.CGI_BLOCK_STATE__MPINHERITS_FROM:
+				getM_pInheritsFrom().clear();
+				return;
+			case UMLRpyPackage.CGI_BLOCK_STATE__MNINHERITANCE_MASK:
+				setM_nInheritanceMask(MNINHERITANCE_MASK_EDEFAULT);
+				return;
+			case UMLRpyPackage.CGI_BLOCK_STATE__MPDEFAULT_COMPONENT_RELATION:
+				setM_pDefaultComponentRelation(MPDEFAULT_COMPONENT_RELATION_EDEFAULT);
+				return;
+			case UMLRpyPackage.CGI_BLOCK_STATE__MNAME_DISPLAY_MODE:
+				setM_NameDisplayMode(MNAME_DISPLAY_MODE_EDEFAULT);
+				return;
+			case UMLRpyPackage.CGI_BLOCK_STATE__MACT_DESC_LABL_DIAPLAY_MODE:
+				setM_ActDescLablDiaplayMode(MACT_DESC_LABL_DIAPLAY_MODE_EDEFAULT);
+				return;
+			case UMLRpyPackage.CGI_BLOCK_STATE__PROPERTIES:
+				setProperties((IPropertyContainer)null);
+				return;
+			case UMLRpyPackage.CGI_BLOCK_STATE__MADDITIONAL_LABEL:
+				setM_AdditionalLabel((CGIText)null);
+				return;
+			case UMLRpyPackage.CGI_BLOCK_STATE__MMOVE_AND_LINE_TIME_STAMP:
+				setM_moveAndLineTimeStamp(MMOVE_AND_LINE_TIME_STAMP_EDEFAULT);
+				return;
+			case UMLRpyPackage.CGI_BLOCK_STATE__COMPARTMENTS:
+				setCompartments((CompartmentsType)null);
+				return;
+			case UMLRpyPackage.CGI_BLOCK_STATE__FRAMESET:
+				setFrameset(FRAMESET_EDEFAULT);
+				return;
+		}
+		super.eUnset(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public boolean eIsSet(int featureID) {
+		switch (featureID) {
+			case UMLRpyPackage.CGI_BLOCK_STATE__MPMODEL_OBJECT:
+				return m_pModelObject != null;
+			case UMLRpyPackage.CGI_BLOCK_STATE__MPPARENT:
+				return m_pParent != null;
+			case UMLRpyPackage.CGI_BLOCK_STATE__MTRANSFORM:
+				return m_transform != null && !m_transform.isEmpty();
+			case UMLRpyPackage.CGI_BLOCK_STATE__MPOLYGON:
+				return m_polygon != null && !m_polygon.isEmpty();
+			case UMLRpyPackage.CGI_BLOCK_STATE__MNNAME_FORMAT:
+				return MNNAME_FORMAT_EDEFAULT == null ? m_nNameFormat != null : !MNNAME_FORMAT_EDEFAULT.equals(m_nNameFormat);
+			case UMLRpyPackage.CGI_BLOCK_STATE__MNIS_NAME_FORMAT:
+				return MNIS_NAME_FORMAT_EDEFAULT == null ? m_nIsNameFormat != null : !MNIS_NAME_FORMAT_EDEFAULT.equals(m_nIsNameFormat);
+			case UMLRpyPackage.CGI_BLOCK_STATE__NAND_LINE_COUNT:
+				return NAND_LINE_COUNT_EDEFAULT == null ? nAndLineCount != null : !NAND_LINE_COUNT_EDEFAULT.equals(nAndLineCount);
+			case UMLRpyPackage.CGI_BLOCK_STATE__MPINHERITS_FROM:
+				return m_pInheritsFrom != null && !m_pInheritsFrom.isEmpty();
+			case UMLRpyPackage.CGI_BLOCK_STATE__MNINHERITANCE_MASK:
+				return MNINHERITANCE_MASK_EDEFAULT == null ? m_nInheritanceMask != null : !MNINHERITANCE_MASK_EDEFAULT.equals(m_nInheritanceMask);
+			case UMLRpyPackage.CGI_BLOCK_STATE__MPDEFAULT_COMPONENT_RELATION:
+				return MPDEFAULT_COMPONENT_RELATION_EDEFAULT == null ? m_pDefaultComponentRelation != null : !MPDEFAULT_COMPONENT_RELATION_EDEFAULT.equals(m_pDefaultComponentRelation);
+			case UMLRpyPackage.CGI_BLOCK_STATE__MNAME_DISPLAY_MODE:
+				return MNAME_DISPLAY_MODE_EDEFAULT == null ? m_NameDisplayMode != null : !MNAME_DISPLAY_MODE_EDEFAULT.equals(m_NameDisplayMode);
+			case UMLRpyPackage.CGI_BLOCK_STATE__MACT_DESC_LABL_DIAPLAY_MODE:
+				return MACT_DESC_LABL_DIAPLAY_MODE_EDEFAULT == null ? m_ActDescLablDiaplayMode != null : !MACT_DESC_LABL_DIAPLAY_MODE_EDEFAULT.equals(m_ActDescLablDiaplayMode);
+			case UMLRpyPackage.CGI_BLOCK_STATE__PROPERTIES:
+				return properties != null;
+			case UMLRpyPackage.CGI_BLOCK_STATE__MADDITIONAL_LABEL:
+				return m_AdditionalLabel != null;
+			case UMLRpyPackage.CGI_BLOCK_STATE__MMOVE_AND_LINE_TIME_STAMP:
+				return MMOVE_AND_LINE_TIME_STAMP_EDEFAULT == null ? m_moveAndLineTimeStamp != null : !MMOVE_AND_LINE_TIME_STAMP_EDEFAULT.equals(m_moveAndLineTimeStamp);
+			case UMLRpyPackage.CGI_BLOCK_STATE__COMPARTMENTS:
+				return compartments != null;
+			case UMLRpyPackage.CGI_BLOCK_STATE__FRAMESET:
+				return FRAMESET_EDEFAULT == null ? frameset != null : !FRAMESET_EDEFAULT.equals(frameset);
+		}
+		return super.eIsSet(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String toString() {
+		if (eIsProxy()) return super.toString();
+
+		StringBuffer result = new StringBuffer(super.toString());
+		result.append(" (m_transform: "); //$NON-NLS-1$
+		result.append(m_transform);
+		result.append(", m_polygon: "); //$NON-NLS-1$
+		result.append(m_polygon);
+		result.append(", m_nNameFormat: "); //$NON-NLS-1$
+		result.append(m_nNameFormat);
+		result.append(", m_nIsNameFormat: "); //$NON-NLS-1$
+		result.append(m_nIsNameFormat);
+		result.append(", nAndLineCount: "); //$NON-NLS-1$
+		result.append(nAndLineCount);
+		result.append(", m_nInheritanceMask: "); //$NON-NLS-1$
+		result.append(m_nInheritanceMask);
+		result.append(", m_pDefaultComponentRelation: "); //$NON-NLS-1$
+		result.append(m_pDefaultComponentRelation);
+		result.append(", m_NameDisplayMode: "); //$NON-NLS-1$
+		result.append(m_NameDisplayMode);
+		result.append(", m_ActDescLablDiaplayMode: "); //$NON-NLS-1$
+		result.append(m_ActDescLablDiaplayMode);
+		result.append(", m_moveAndLineTimeStamp: "); //$NON-NLS-1$
+		result.append(m_moveAndLineTimeStamp);
+		result.append(", frameset: "); //$NON-NLS-1$
+		result.append(frameset);
+		result.append(')');
+		return result.toString();
+	}
+
+} //CGIBlockStateImpl
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/CGIBoxImpl.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/CGIBoxImpl.java
new file mode 100755
index 0000000..342c84f
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/CGIBoxImpl.java
@@ -0,0 +1,568 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl;
+
+import java.util.Collection;
+
+import org.eclipse.emf.common.notify.Notification;
+import org.eclipse.emf.common.notify.NotificationChain;
+
+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.EDataTypeEList;
+import org.eclipse.emf.ecore.util.EObjectResolvingEList;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIBox;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.GraphElementsType;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IPropertyContainer;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.M_pModelObjectType;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UnknownType;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>CGI Box</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * </p>
+ * <ul>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIBoxImpl#getM_pModelObject <em>MpModel Object</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIBoxImpl#getM_polygon <em>Mpolygon</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIBoxImpl#getM_nNameFormat <em>MnName Format</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIBoxImpl#getM_nIsNameFormat <em>MnIs Name Format</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIBoxImpl#getCompartments <em>Compartments</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIBoxImpl#getM_pParent <em>MpParent</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIBoxImpl#getM_transform <em>Mtransform</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIBoxImpl#getProperties <em>Properties</em>}</li>
+ * </ul>
+ *
+ * @generated
+ */
+public class CGIBoxImpl extends GraphElementsTypeImpl implements CGIBox {
+	/**
+	 * The cached value of the '{@link #getM_pModelObject() <em>MpModel Object</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_pModelObject()
+	 * @generated
+	 * @ordered
+	 */
+	protected M_pModelObjectType m_pModelObject;
+
+	/**
+	 * The cached value of the '{@link #getM_polygon() <em>Mpolygon</em>}' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_polygon()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<String> m_polygon;
+
+	/**
+	 * The default value of the '{@link #getM_nNameFormat() <em>MnName Format</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_nNameFormat()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String MNNAME_FORMAT_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getM_nNameFormat() <em>MnName Format</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_nNameFormat()
+	 * @generated
+	 * @ordered
+	 */
+	protected String m_nNameFormat = MNNAME_FORMAT_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getM_nIsNameFormat() <em>MnIs Name Format</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_nIsNameFormat()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String MNIS_NAME_FORMAT_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getM_nIsNameFormat() <em>MnIs Name Format</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_nIsNameFormat()
+	 * @generated
+	 * @ordered
+	 */
+	protected String m_nIsNameFormat = MNIS_NAME_FORMAT_EDEFAULT;
+
+	/**
+	 * The cached value of the '{@link #getCompartments() <em>Compartments</em>}' reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getCompartments()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<UnknownType> compartments;
+
+	/**
+	 * The cached value of the '{@link #getM_pParent() <em>MpParent</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_pParent()
+	 * @generated
+	 * @ordered
+	 */
+	protected GraphElementsType m_pParent;
+
+	/**
+	 * The cached value of the '{@link #getM_transform() <em>Mtransform</em>}' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_transform()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<String> m_transform;
+
+	/**
+	 * The cached value of the '{@link #getProperties() <em>Properties</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getProperties()
+	 * @generated
+	 * @ordered
+	 */
+	protected IPropertyContainer properties;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected CGIBoxImpl() {
+		super();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EClass eStaticClass() {
+		return UMLRpyPackage.eINSTANCE.getCGIBox();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public M_pModelObjectType getM_pModelObject() {
+		if (m_pModelObject != null && m_pModelObject.eIsProxy()) {
+			InternalEObject oldM_pModelObject = (InternalEObject)m_pModelObject;
+			m_pModelObject = (M_pModelObjectType)eResolveProxy(oldM_pModelObject);
+			if (m_pModelObject != oldM_pModelObject) {
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.CGI_BOX__MPMODEL_OBJECT, oldM_pModelObject, m_pModelObject));
+			}
+		}
+		return m_pModelObject;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public M_pModelObjectType basicGetM_pModelObject() {
+		return m_pModelObject;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_pModelObject(M_pModelObjectType newM_pModelObject) {
+		M_pModelObjectType oldM_pModelObject = m_pModelObject;
+		m_pModelObject = newM_pModelObject;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_BOX__MPMODEL_OBJECT, oldM_pModelObject, m_pModelObject));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<String> getM_polygon() {
+		if (m_polygon == null) {
+			m_polygon = new EDataTypeEList<String>(String.class, this, UMLRpyPackage.CGI_BOX__MPOLYGON);
+		}
+		return m_polygon;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getM_nNameFormat() {
+		return m_nNameFormat;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_nNameFormat(String newM_nNameFormat) {
+		String oldM_nNameFormat = m_nNameFormat;
+		m_nNameFormat = newM_nNameFormat;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_BOX__MNNAME_FORMAT, oldM_nNameFormat, m_nNameFormat));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getM_nIsNameFormat() {
+		return m_nIsNameFormat;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_nIsNameFormat(String newM_nIsNameFormat) {
+		String oldM_nIsNameFormat = m_nIsNameFormat;
+		m_nIsNameFormat = newM_nIsNameFormat;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_BOX__MNIS_NAME_FORMAT, oldM_nIsNameFormat, m_nIsNameFormat));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<UnknownType> getCompartments() {
+		if (compartments == null) {
+			compartments = new EObjectResolvingEList<UnknownType>(UnknownType.class, this, UMLRpyPackage.CGI_BOX__COMPARTMENTS);
+		}
+		return compartments;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public GraphElementsType getM_pParent() {
+		if (m_pParent != null && m_pParent.eIsProxy()) {
+			InternalEObject oldM_pParent = (InternalEObject)m_pParent;
+			m_pParent = (GraphElementsType)eResolveProxy(oldM_pParent);
+			if (m_pParent != oldM_pParent) {
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.CGI_BOX__MPPARENT, oldM_pParent, m_pParent));
+			}
+		}
+		return m_pParent;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public GraphElementsType basicGetM_pParent() {
+		return m_pParent;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_pParent(GraphElementsType newM_pParent) {
+		GraphElementsType oldM_pParent = m_pParent;
+		m_pParent = newM_pParent;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_BOX__MPPARENT, oldM_pParent, m_pParent));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<String> getM_transform() {
+		if (m_transform == null) {
+			m_transform = new EDataTypeEList<String>(String.class, this, UMLRpyPackage.CGI_BOX__MTRANSFORM);
+		}
+		return m_transform;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IPropertyContainer getProperties() {
+		if (properties != null && properties.eIsProxy()) {
+			InternalEObject oldProperties = (InternalEObject)properties;
+			properties = (IPropertyContainer)eResolveProxy(oldProperties);
+			if (properties != oldProperties) {
+				InternalEObject newProperties = (InternalEObject)properties;
+				NotificationChain msgs = oldProperties.eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.CGI_BOX__PROPERTIES, null, null);
+				if (newProperties.eInternalContainer() == null) {
+					msgs = newProperties.eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.CGI_BOX__PROPERTIES, null, msgs);
+				}
+				if (msgs != null) msgs.dispatch();
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.CGI_BOX__PROPERTIES, oldProperties, properties));
+			}
+		}
+		return properties;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IPropertyContainer basicGetProperties() {
+		return properties;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public NotificationChain basicSetProperties(IPropertyContainer newProperties, NotificationChain msgs) {
+		IPropertyContainer oldProperties = properties;
+		properties = newProperties;
+		if (eNotificationRequired()) {
+			ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_BOX__PROPERTIES, oldProperties, newProperties);
+			if (msgs == null) msgs = notification; else msgs.add(notification);
+		}
+		return msgs;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setProperties(IPropertyContainer newProperties) {
+		if (newProperties != properties) {
+			NotificationChain msgs = null;
+			if (properties != null)
+				msgs = ((InternalEObject)properties).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.CGI_BOX__PROPERTIES, null, msgs);
+			if (newProperties != null)
+				msgs = ((InternalEObject)newProperties).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.CGI_BOX__PROPERTIES, null, msgs);
+			msgs = basicSetProperties(newProperties, msgs);
+			if (msgs != null) msgs.dispatch();
+		}
+		else if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_BOX__PROPERTIES, newProperties, newProperties));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
+		switch (featureID) {
+			case UMLRpyPackage.CGI_BOX__PROPERTIES:
+				return basicSetProperties(null, msgs);
+		}
+		return super.eInverseRemove(otherEnd, featureID, msgs);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object eGet(int featureID, boolean resolve, boolean coreType) {
+		switch (featureID) {
+			case UMLRpyPackage.CGI_BOX__MPMODEL_OBJECT:
+				if (resolve) return getM_pModelObject();
+				return basicGetM_pModelObject();
+			case UMLRpyPackage.CGI_BOX__MPOLYGON:
+				return getM_polygon();
+			case UMLRpyPackage.CGI_BOX__MNNAME_FORMAT:
+				return getM_nNameFormat();
+			case UMLRpyPackage.CGI_BOX__MNIS_NAME_FORMAT:
+				return getM_nIsNameFormat();
+			case UMLRpyPackage.CGI_BOX__COMPARTMENTS:
+				return getCompartments();
+			case UMLRpyPackage.CGI_BOX__MPPARENT:
+				if (resolve) return getM_pParent();
+				return basicGetM_pParent();
+			case UMLRpyPackage.CGI_BOX__MTRANSFORM:
+				return getM_transform();
+			case UMLRpyPackage.CGI_BOX__PROPERTIES:
+				if (resolve) return getProperties();
+				return basicGetProperties();
+		}
+		return super.eGet(featureID, resolve, coreType);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@SuppressWarnings("unchecked")
+	@Override
+	public void eSet(int featureID, Object newValue) {
+		switch (featureID) {
+			case UMLRpyPackage.CGI_BOX__MPMODEL_OBJECT:
+				setM_pModelObject((M_pModelObjectType)newValue);
+				return;
+			case UMLRpyPackage.CGI_BOX__MPOLYGON:
+				getM_polygon().clear();
+				getM_polygon().addAll((Collection<? extends String>)newValue);
+				return;
+			case UMLRpyPackage.CGI_BOX__MNNAME_FORMAT:
+				setM_nNameFormat((String)newValue);
+				return;
+			case UMLRpyPackage.CGI_BOX__MNIS_NAME_FORMAT:
+				setM_nIsNameFormat((String)newValue);
+				return;
+			case UMLRpyPackage.CGI_BOX__COMPARTMENTS:
+				getCompartments().clear();
+				getCompartments().addAll((Collection<? extends UnknownType>)newValue);
+				return;
+			case UMLRpyPackage.CGI_BOX__MPPARENT:
+				setM_pParent((GraphElementsType)newValue);
+				return;
+			case UMLRpyPackage.CGI_BOX__MTRANSFORM:
+				getM_transform().clear();
+				getM_transform().addAll((Collection<? extends String>)newValue);
+				return;
+			case UMLRpyPackage.CGI_BOX__PROPERTIES:
+				setProperties((IPropertyContainer)newValue);
+				return;
+		}
+		super.eSet(featureID, newValue);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void eUnset(int featureID) {
+		switch (featureID) {
+			case UMLRpyPackage.CGI_BOX__MPMODEL_OBJECT:
+				setM_pModelObject((M_pModelObjectType)null);
+				return;
+			case UMLRpyPackage.CGI_BOX__MPOLYGON:
+				getM_polygon().clear();
+				return;
+			case UMLRpyPackage.CGI_BOX__MNNAME_FORMAT:
+				setM_nNameFormat(MNNAME_FORMAT_EDEFAULT);
+				return;
+			case UMLRpyPackage.CGI_BOX__MNIS_NAME_FORMAT:
+				setM_nIsNameFormat(MNIS_NAME_FORMAT_EDEFAULT);
+				return;
+			case UMLRpyPackage.CGI_BOX__COMPARTMENTS:
+				getCompartments().clear();
+				return;
+			case UMLRpyPackage.CGI_BOX__MPPARENT:
+				setM_pParent((GraphElementsType)null);
+				return;
+			case UMLRpyPackage.CGI_BOX__MTRANSFORM:
+				getM_transform().clear();
+				return;
+			case UMLRpyPackage.CGI_BOX__PROPERTIES:
+				setProperties((IPropertyContainer)null);
+				return;
+		}
+		super.eUnset(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public boolean eIsSet(int featureID) {
+		switch (featureID) {
+			case UMLRpyPackage.CGI_BOX__MPMODEL_OBJECT:
+				return m_pModelObject != null;
+			case UMLRpyPackage.CGI_BOX__MPOLYGON:
+				return m_polygon != null && !m_polygon.isEmpty();
+			case UMLRpyPackage.CGI_BOX__MNNAME_FORMAT:
+				return MNNAME_FORMAT_EDEFAULT == null ? m_nNameFormat != null : !MNNAME_FORMAT_EDEFAULT.equals(m_nNameFormat);
+			case UMLRpyPackage.CGI_BOX__MNIS_NAME_FORMAT:
+				return MNIS_NAME_FORMAT_EDEFAULT == null ? m_nIsNameFormat != null : !MNIS_NAME_FORMAT_EDEFAULT.equals(m_nIsNameFormat);
+			case UMLRpyPackage.CGI_BOX__COMPARTMENTS:
+				return compartments != null && !compartments.isEmpty();
+			case UMLRpyPackage.CGI_BOX__MPPARENT:
+				return m_pParent != null;
+			case UMLRpyPackage.CGI_BOX__MTRANSFORM:
+				return m_transform != null && !m_transform.isEmpty();
+			case UMLRpyPackage.CGI_BOX__PROPERTIES:
+				return properties != null;
+		}
+		return super.eIsSet(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String toString() {
+		if (eIsProxy()) return super.toString();
+
+		StringBuffer result = new StringBuffer(super.toString());
+		result.append(" (m_polygon: "); //$NON-NLS-1$
+		result.append(m_polygon);
+		result.append(", m_nNameFormat: "); //$NON-NLS-1$
+		result.append(m_nNameFormat);
+		result.append(", m_nIsNameFormat: "); //$NON-NLS-1$
+		result.append(m_nIsNameFormat);
+		result.append(", m_transform: "); //$NON-NLS-1$
+		result.append(m_transform);
+		result.append(')');
+		return result.toString();
+	}
+
+} //CGIBoxImpl
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/CGIButtonArrayImpl.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/CGIButtonArrayImpl.java
new file mode 100755
index 0000000..ef568c1
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/CGIButtonArrayImpl.java
@@ -0,0 +1,841 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl;
+
+import java.util.Collection;
+
+import org.eclipse.emf.common.notify.Notification;
+import org.eclipse.emf.common.notify.NotificationChain;
+
+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.EDataTypeEList;
+import org.eclipse.emf.ecore.util.EObjectContainmentEList;
+import org.eclipse.emf.ecore.util.EObjectResolvingEList;
+import org.eclipse.emf.ecore.util.InternalEList;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIButtonArray;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGICompartment;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.DependsOnType;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.GraphElementsType;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IAttribute;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IPropertyContainer;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>CGI Button Array</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * </p>
+ * <ul>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIButtonArrayImpl#getProperties <em>Properties</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIButtonArrayImpl#getM_pModelObject <em>MpModel Object</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIButtonArrayImpl#getM_pParent <em>MpParent</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIButtonArrayImpl#getM_transform <em>Mtransform</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIButtonArrayImpl#getM_polygon <em>Mpolygon</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIButtonArrayImpl#getM_nNameFormat <em>MnName Format</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIButtonArrayImpl#getM_nIsNameFormat <em>MnIs Name Format</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIButtonArrayImpl#getFrameset <em>Frameset</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIButtonArrayImpl#getCompartments <em>Compartments</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIButtonArrayImpl#getM_csModelObjPath <em>Mcs Model Obj Path</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIButtonArrayImpl#getM_csName <em>Mcs Name</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIButtonArrayImpl#getM_PartsArray <em>MParts Array</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIButtonArrayImpl#getM_liButtonNames <em>Mli Button Names</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIButtonArrayImpl#getM_liButtonValues <em>Mli Button Values</em>}</li>
+ * </ul>
+ *
+ * @generated
+ */
+public class CGIButtonArrayImpl extends GraphElementsTypeImpl implements CGIButtonArray {
+	/**
+	 * The cached value of the '{@link #getProperties() <em>Properties</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getProperties()
+	 * @generated
+	 * @ordered
+	 */
+	protected IPropertyContainer properties;
+
+	/**
+	 * The cached value of the '{@link #getM_pModelObject() <em>MpModel Object</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_pModelObject()
+	 * @generated
+	 * @ordered
+	 */
+	protected IAttribute m_pModelObject;
+
+	/**
+	 * The cached value of the '{@link #getM_pParent() <em>MpParent</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_pParent()
+	 * @generated
+	 * @ordered
+	 */
+	protected GraphElementsType m_pParent;
+
+	/**
+	 * The cached value of the '{@link #getM_transform() <em>Mtransform</em>}' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_transform()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<String> m_transform;
+
+	/**
+	 * The cached value of the '{@link #getM_polygon() <em>Mpolygon</em>}' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_polygon()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<String> m_polygon;
+
+	/**
+	 * The default value of the '{@link #getM_nNameFormat() <em>MnName Format</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_nNameFormat()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String MNNAME_FORMAT_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getM_nNameFormat() <em>MnName Format</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_nNameFormat()
+	 * @generated
+	 * @ordered
+	 */
+	protected String m_nNameFormat = MNNAME_FORMAT_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getM_nIsNameFormat() <em>MnIs Name Format</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_nIsNameFormat()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String MNIS_NAME_FORMAT_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getM_nIsNameFormat() <em>MnIs Name Format</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_nIsNameFormat()
+	 * @generated
+	 * @ordered
+	 */
+	protected String m_nIsNameFormat = MNIS_NAME_FORMAT_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getFrameset() <em>Frameset</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getFrameset()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String FRAMESET_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getFrameset() <em>Frameset</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getFrameset()
+	 * @generated
+	 * @ordered
+	 */
+	protected String frameset = FRAMESET_EDEFAULT;
+
+	/**
+	 * The cached value of the '{@link #getCompartments() <em>Compartments</em>}' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getCompartments()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<CGICompartment> compartments;
+
+	/**
+	 * The default value of the '{@link #getM_csModelObjPath() <em>Mcs Model Obj Path</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_csModelObjPath()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String MCS_MODEL_OBJ_PATH_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getM_csModelObjPath() <em>Mcs Model Obj Path</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_csModelObjPath()
+	 * @generated
+	 * @ordered
+	 */
+	protected String m_csModelObjPath = MCS_MODEL_OBJ_PATH_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getM_csName() <em>Mcs Name</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_csName()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String MCS_NAME_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getM_csName() <em>Mcs Name</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_csName()
+	 * @generated
+	 * @ordered
+	 */
+	protected String m_csName = MCS_NAME_EDEFAULT;
+
+	/**
+	 * The cached value of the '{@link #getM_PartsArray() <em>MParts Array</em>}' reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_PartsArray()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<DependsOnType> m_PartsArray;
+
+	/**
+	 * The cached value of the '{@link #getM_liButtonNames() <em>Mli Button Names</em>}' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_liButtonNames()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<String> m_liButtonNames;
+
+	/**
+	 * The cached value of the '{@link #getM_liButtonValues() <em>Mli Button Values</em>}' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_liButtonValues()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<String> m_liButtonValues;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected CGIButtonArrayImpl() {
+		super();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EClass eStaticClass() {
+		return UMLRpyPackage.eINSTANCE.getCGIButtonArray();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IPropertyContainer getProperties() {
+		if (properties != null && properties.eIsProxy()) {
+			InternalEObject oldProperties = (InternalEObject)properties;
+			properties = (IPropertyContainer)eResolveProxy(oldProperties);
+			if (properties != oldProperties) {
+				InternalEObject newProperties = (InternalEObject)properties;
+				NotificationChain msgs = oldProperties.eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.CGI_BUTTON_ARRAY__PROPERTIES, null, null);
+				if (newProperties.eInternalContainer() == null) {
+					msgs = newProperties.eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.CGI_BUTTON_ARRAY__PROPERTIES, null, msgs);
+				}
+				if (msgs != null) msgs.dispatch();
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.CGI_BUTTON_ARRAY__PROPERTIES, oldProperties, properties));
+			}
+		}
+		return properties;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IPropertyContainer basicGetProperties() {
+		return properties;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public NotificationChain basicSetProperties(IPropertyContainer newProperties, NotificationChain msgs) {
+		IPropertyContainer oldProperties = properties;
+		properties = newProperties;
+		if (eNotificationRequired()) {
+			ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_BUTTON_ARRAY__PROPERTIES, oldProperties, newProperties);
+			if (msgs == null) msgs = notification; else msgs.add(notification);
+		}
+		return msgs;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setProperties(IPropertyContainer newProperties) {
+		if (newProperties != properties) {
+			NotificationChain msgs = null;
+			if (properties != null)
+				msgs = ((InternalEObject)properties).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.CGI_BUTTON_ARRAY__PROPERTIES, null, msgs);
+			if (newProperties != null)
+				msgs = ((InternalEObject)newProperties).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.CGI_BUTTON_ARRAY__PROPERTIES, null, msgs);
+			msgs = basicSetProperties(newProperties, msgs);
+			if (msgs != null) msgs.dispatch();
+		}
+		else if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_BUTTON_ARRAY__PROPERTIES, newProperties, newProperties));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IAttribute getM_pModelObject() {
+		if (m_pModelObject != null && m_pModelObject.eIsProxy()) {
+			InternalEObject oldM_pModelObject = (InternalEObject)m_pModelObject;
+			m_pModelObject = (IAttribute)eResolveProxy(oldM_pModelObject);
+			if (m_pModelObject != oldM_pModelObject) {
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.CGI_BUTTON_ARRAY__MPMODEL_OBJECT, oldM_pModelObject, m_pModelObject));
+			}
+		}
+		return m_pModelObject;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IAttribute basicGetM_pModelObject() {
+		return m_pModelObject;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_pModelObject(IAttribute newM_pModelObject) {
+		IAttribute oldM_pModelObject = m_pModelObject;
+		m_pModelObject = newM_pModelObject;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_BUTTON_ARRAY__MPMODEL_OBJECT, oldM_pModelObject, m_pModelObject));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public GraphElementsType getM_pParent() {
+		if (m_pParent != null && m_pParent.eIsProxy()) {
+			InternalEObject oldM_pParent = (InternalEObject)m_pParent;
+			m_pParent = (GraphElementsType)eResolveProxy(oldM_pParent);
+			if (m_pParent != oldM_pParent) {
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.CGI_BUTTON_ARRAY__MPPARENT, oldM_pParent, m_pParent));
+			}
+		}
+		return m_pParent;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public GraphElementsType basicGetM_pParent() {
+		return m_pParent;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_pParent(GraphElementsType newM_pParent) {
+		GraphElementsType oldM_pParent = m_pParent;
+		m_pParent = newM_pParent;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_BUTTON_ARRAY__MPPARENT, oldM_pParent, m_pParent));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<String> getM_transform() {
+		if (m_transform == null) {
+			m_transform = new EDataTypeEList<String>(String.class, this, UMLRpyPackage.CGI_BUTTON_ARRAY__MTRANSFORM);
+		}
+		return m_transform;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<String> getM_polygon() {
+		if (m_polygon == null) {
+			m_polygon = new EDataTypeEList<String>(String.class, this, UMLRpyPackage.CGI_BUTTON_ARRAY__MPOLYGON);
+		}
+		return m_polygon;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getM_nNameFormat() {
+		return m_nNameFormat;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_nNameFormat(String newM_nNameFormat) {
+		String oldM_nNameFormat = m_nNameFormat;
+		m_nNameFormat = newM_nNameFormat;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_BUTTON_ARRAY__MNNAME_FORMAT, oldM_nNameFormat, m_nNameFormat));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getM_nIsNameFormat() {
+		return m_nIsNameFormat;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_nIsNameFormat(String newM_nIsNameFormat) {
+		String oldM_nIsNameFormat = m_nIsNameFormat;
+		m_nIsNameFormat = newM_nIsNameFormat;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_BUTTON_ARRAY__MNIS_NAME_FORMAT, oldM_nIsNameFormat, m_nIsNameFormat));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getFrameset() {
+		return frameset;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setFrameset(String newFrameset) {
+		String oldFrameset = frameset;
+		frameset = newFrameset;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_BUTTON_ARRAY__FRAMESET, oldFrameset, frameset));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<CGICompartment> getCompartments() {
+		if (compartments == null) {
+			compartments = new EObjectContainmentEList.Resolving<CGICompartment>(CGICompartment.class, this, UMLRpyPackage.CGI_BUTTON_ARRAY__COMPARTMENTS);
+		}
+		return compartments;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getM_csModelObjPath() {
+		return m_csModelObjPath;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_csModelObjPath(String newM_csModelObjPath) {
+		String oldM_csModelObjPath = m_csModelObjPath;
+		m_csModelObjPath = newM_csModelObjPath;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_BUTTON_ARRAY__MCS_MODEL_OBJ_PATH, oldM_csModelObjPath, m_csModelObjPath));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getM_csName() {
+		return m_csName;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_csName(String newM_csName) {
+		String oldM_csName = m_csName;
+		m_csName = newM_csName;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_BUTTON_ARRAY__MCS_NAME, oldM_csName, m_csName));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<DependsOnType> getM_PartsArray() {
+		if (m_PartsArray == null) {
+			m_PartsArray = new EObjectResolvingEList<DependsOnType>(DependsOnType.class, this, UMLRpyPackage.CGI_BUTTON_ARRAY__MPARTS_ARRAY);
+		}
+		return m_PartsArray;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<String> getM_liButtonNames() {
+		if (m_liButtonNames == null) {
+			m_liButtonNames = new EDataTypeEList<String>(String.class, this, UMLRpyPackage.CGI_BUTTON_ARRAY__MLI_BUTTON_NAMES);
+		}
+		return m_liButtonNames;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<String> getM_liButtonValues() {
+		if (m_liButtonValues == null) {
+			m_liButtonValues = new EDataTypeEList<String>(String.class, this, UMLRpyPackage.CGI_BUTTON_ARRAY__MLI_BUTTON_VALUES);
+		}
+		return m_liButtonValues;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
+		switch (featureID) {
+			case UMLRpyPackage.CGI_BUTTON_ARRAY__PROPERTIES:
+				return basicSetProperties(null, msgs);
+			case UMLRpyPackage.CGI_BUTTON_ARRAY__COMPARTMENTS:
+				return ((InternalEList<?>)getCompartments()).basicRemove(otherEnd, msgs);
+		}
+		return super.eInverseRemove(otherEnd, featureID, msgs);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object eGet(int featureID, boolean resolve, boolean coreType) {
+		switch (featureID) {
+			case UMLRpyPackage.CGI_BUTTON_ARRAY__PROPERTIES:
+				if (resolve) return getProperties();
+				return basicGetProperties();
+			case UMLRpyPackage.CGI_BUTTON_ARRAY__MPMODEL_OBJECT:
+				if (resolve) return getM_pModelObject();
+				return basicGetM_pModelObject();
+			case UMLRpyPackage.CGI_BUTTON_ARRAY__MPPARENT:
+				if (resolve) return getM_pParent();
+				return basicGetM_pParent();
+			case UMLRpyPackage.CGI_BUTTON_ARRAY__MTRANSFORM:
+				return getM_transform();
+			case UMLRpyPackage.CGI_BUTTON_ARRAY__MPOLYGON:
+				return getM_polygon();
+			case UMLRpyPackage.CGI_BUTTON_ARRAY__MNNAME_FORMAT:
+				return getM_nNameFormat();
+			case UMLRpyPackage.CGI_BUTTON_ARRAY__MNIS_NAME_FORMAT:
+				return getM_nIsNameFormat();
+			case UMLRpyPackage.CGI_BUTTON_ARRAY__FRAMESET:
+				return getFrameset();
+			case UMLRpyPackage.CGI_BUTTON_ARRAY__COMPARTMENTS:
+				return getCompartments();
+			case UMLRpyPackage.CGI_BUTTON_ARRAY__MCS_MODEL_OBJ_PATH:
+				return getM_csModelObjPath();
+			case UMLRpyPackage.CGI_BUTTON_ARRAY__MCS_NAME:
+				return getM_csName();
+			case UMLRpyPackage.CGI_BUTTON_ARRAY__MPARTS_ARRAY:
+				return getM_PartsArray();
+			case UMLRpyPackage.CGI_BUTTON_ARRAY__MLI_BUTTON_NAMES:
+				return getM_liButtonNames();
+			case UMLRpyPackage.CGI_BUTTON_ARRAY__MLI_BUTTON_VALUES:
+				return getM_liButtonValues();
+		}
+		return super.eGet(featureID, resolve, coreType);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@SuppressWarnings("unchecked")
+	@Override
+	public void eSet(int featureID, Object newValue) {
+		switch (featureID) {
+			case UMLRpyPackage.CGI_BUTTON_ARRAY__PROPERTIES:
+				setProperties((IPropertyContainer)newValue);
+				return;
+			case UMLRpyPackage.CGI_BUTTON_ARRAY__MPMODEL_OBJECT:
+				setM_pModelObject((IAttribute)newValue);
+				return;
+			case UMLRpyPackage.CGI_BUTTON_ARRAY__MPPARENT:
+				setM_pParent((GraphElementsType)newValue);
+				return;
+			case UMLRpyPackage.CGI_BUTTON_ARRAY__MTRANSFORM:
+				getM_transform().clear();
+				getM_transform().addAll((Collection<? extends String>)newValue);
+				return;
+			case UMLRpyPackage.CGI_BUTTON_ARRAY__MPOLYGON:
+				getM_polygon().clear();
+				getM_polygon().addAll((Collection<? extends String>)newValue);
+				return;
+			case UMLRpyPackage.CGI_BUTTON_ARRAY__MNNAME_FORMAT:
+				setM_nNameFormat((String)newValue);
+				return;
+			case UMLRpyPackage.CGI_BUTTON_ARRAY__MNIS_NAME_FORMAT:
+				setM_nIsNameFormat((String)newValue);
+				return;
+			case UMLRpyPackage.CGI_BUTTON_ARRAY__FRAMESET:
+				setFrameset((String)newValue);
+				return;
+			case UMLRpyPackage.CGI_BUTTON_ARRAY__COMPARTMENTS:
+				getCompartments().clear();
+				getCompartments().addAll((Collection<? extends CGICompartment>)newValue);
+				return;
+			case UMLRpyPackage.CGI_BUTTON_ARRAY__MCS_MODEL_OBJ_PATH:
+				setM_csModelObjPath((String)newValue);
+				return;
+			case UMLRpyPackage.CGI_BUTTON_ARRAY__MCS_NAME:
+				setM_csName((String)newValue);
+				return;
+			case UMLRpyPackage.CGI_BUTTON_ARRAY__MPARTS_ARRAY:
+				getM_PartsArray().clear();
+				getM_PartsArray().addAll((Collection<? extends DependsOnType>)newValue);
+				return;
+			case UMLRpyPackage.CGI_BUTTON_ARRAY__MLI_BUTTON_NAMES:
+				getM_liButtonNames().clear();
+				getM_liButtonNames().addAll((Collection<? extends String>)newValue);
+				return;
+			case UMLRpyPackage.CGI_BUTTON_ARRAY__MLI_BUTTON_VALUES:
+				getM_liButtonValues().clear();
+				getM_liButtonValues().addAll((Collection<? extends String>)newValue);
+				return;
+		}
+		super.eSet(featureID, newValue);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void eUnset(int featureID) {
+		switch (featureID) {
+			case UMLRpyPackage.CGI_BUTTON_ARRAY__PROPERTIES:
+				setProperties((IPropertyContainer)null);
+				return;
+			case UMLRpyPackage.CGI_BUTTON_ARRAY__MPMODEL_OBJECT:
+				setM_pModelObject((IAttribute)null);
+				return;
+			case UMLRpyPackage.CGI_BUTTON_ARRAY__MPPARENT:
+				setM_pParent((GraphElementsType)null);
+				return;
+			case UMLRpyPackage.CGI_BUTTON_ARRAY__MTRANSFORM:
+				getM_transform().clear();
+				return;
+			case UMLRpyPackage.CGI_BUTTON_ARRAY__MPOLYGON:
+				getM_polygon().clear();
+				return;
+			case UMLRpyPackage.CGI_BUTTON_ARRAY__MNNAME_FORMAT:
+				setM_nNameFormat(MNNAME_FORMAT_EDEFAULT);
+				return;
+			case UMLRpyPackage.CGI_BUTTON_ARRAY__MNIS_NAME_FORMAT:
+				setM_nIsNameFormat(MNIS_NAME_FORMAT_EDEFAULT);
+				return;
+			case UMLRpyPackage.CGI_BUTTON_ARRAY__FRAMESET:
+				setFrameset(FRAMESET_EDEFAULT);
+				return;
+			case UMLRpyPackage.CGI_BUTTON_ARRAY__COMPARTMENTS:
+				getCompartments().clear();
+				return;
+			case UMLRpyPackage.CGI_BUTTON_ARRAY__MCS_MODEL_OBJ_PATH:
+				setM_csModelObjPath(MCS_MODEL_OBJ_PATH_EDEFAULT);
+				return;
+			case UMLRpyPackage.CGI_BUTTON_ARRAY__MCS_NAME:
+				setM_csName(MCS_NAME_EDEFAULT);
+				return;
+			case UMLRpyPackage.CGI_BUTTON_ARRAY__MPARTS_ARRAY:
+				getM_PartsArray().clear();
+				return;
+			case UMLRpyPackage.CGI_BUTTON_ARRAY__MLI_BUTTON_NAMES:
+				getM_liButtonNames().clear();
+				return;
+			case UMLRpyPackage.CGI_BUTTON_ARRAY__MLI_BUTTON_VALUES:
+				getM_liButtonValues().clear();
+				return;
+		}
+		super.eUnset(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public boolean eIsSet(int featureID) {
+		switch (featureID) {
+			case UMLRpyPackage.CGI_BUTTON_ARRAY__PROPERTIES:
+				return properties != null;
+			case UMLRpyPackage.CGI_BUTTON_ARRAY__MPMODEL_OBJECT:
+				return m_pModelObject != null;
+			case UMLRpyPackage.CGI_BUTTON_ARRAY__MPPARENT:
+				return m_pParent != null;
+			case UMLRpyPackage.CGI_BUTTON_ARRAY__MTRANSFORM:
+				return m_transform != null && !m_transform.isEmpty();
+			case UMLRpyPackage.CGI_BUTTON_ARRAY__MPOLYGON:
+				return m_polygon != null && !m_polygon.isEmpty();
+			case UMLRpyPackage.CGI_BUTTON_ARRAY__MNNAME_FORMAT:
+				return MNNAME_FORMAT_EDEFAULT == null ? m_nNameFormat != null : !MNNAME_FORMAT_EDEFAULT.equals(m_nNameFormat);
+			case UMLRpyPackage.CGI_BUTTON_ARRAY__MNIS_NAME_FORMAT:
+				return MNIS_NAME_FORMAT_EDEFAULT == null ? m_nIsNameFormat != null : !MNIS_NAME_FORMAT_EDEFAULT.equals(m_nIsNameFormat);
+			case UMLRpyPackage.CGI_BUTTON_ARRAY__FRAMESET:
+				return FRAMESET_EDEFAULT == null ? frameset != null : !FRAMESET_EDEFAULT.equals(frameset);
+			case UMLRpyPackage.CGI_BUTTON_ARRAY__COMPARTMENTS:
+				return compartments != null && !compartments.isEmpty();
+			case UMLRpyPackage.CGI_BUTTON_ARRAY__MCS_MODEL_OBJ_PATH:
+				return MCS_MODEL_OBJ_PATH_EDEFAULT == null ? m_csModelObjPath != null : !MCS_MODEL_OBJ_PATH_EDEFAULT.equals(m_csModelObjPath);
+			case UMLRpyPackage.CGI_BUTTON_ARRAY__MCS_NAME:
+				return MCS_NAME_EDEFAULT == null ? m_csName != null : !MCS_NAME_EDEFAULT.equals(m_csName);
+			case UMLRpyPackage.CGI_BUTTON_ARRAY__MPARTS_ARRAY:
+				return m_PartsArray != null && !m_PartsArray.isEmpty();
+			case UMLRpyPackage.CGI_BUTTON_ARRAY__MLI_BUTTON_NAMES:
+				return m_liButtonNames != null && !m_liButtonNames.isEmpty();
+			case UMLRpyPackage.CGI_BUTTON_ARRAY__MLI_BUTTON_VALUES:
+				return m_liButtonValues != null && !m_liButtonValues.isEmpty();
+		}
+		return super.eIsSet(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String toString() {
+		if (eIsProxy()) return super.toString();
+
+		StringBuffer result = new StringBuffer(super.toString());
+		result.append(" (m_transform: "); //$NON-NLS-1$
+		result.append(m_transform);
+		result.append(", m_polygon: "); //$NON-NLS-1$
+		result.append(m_polygon);
+		result.append(", m_nNameFormat: "); //$NON-NLS-1$
+		result.append(m_nNameFormat);
+		result.append(", m_nIsNameFormat: "); //$NON-NLS-1$
+		result.append(m_nIsNameFormat);
+		result.append(", frameset: "); //$NON-NLS-1$
+		result.append(frameset);
+		result.append(", m_csModelObjPath: "); //$NON-NLS-1$
+		result.append(m_csModelObjPath);
+		result.append(", m_csName: "); //$NON-NLS-1$
+		result.append(m_csName);
+		result.append(", m_liButtonNames: "); //$NON-NLS-1$
+		result.append(m_liButtonNames);
+		result.append(", m_liButtonValues: "); //$NON-NLS-1$
+		result.append(m_liButtonValues);
+		result.append(')');
+		return result.toString();
+	}
+
+} //CGIButtonArrayImpl
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/CGIClassChartImpl.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/CGIClassChartImpl.java
new file mode 100755
index 0000000..e0496df
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/CGIClassChartImpl.java
@@ -0,0 +1,227 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.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.interoperability.rpy.rpymetamodel.CGIClassChart;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.M_pModelObjectType;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.M_pRootType;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>CGI Class Chart</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * </p>
+ * <ul>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIClassChartImpl#getM_pModelObject <em>MpModel Object</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIClassChartImpl#getM_pRoot <em>MpRoot</em>}</li>
+ * </ul>
+ *
+ * @generated
+ */
+public class CGIClassChartImpl extends GraphicChartTypeImpl implements CGIClassChart {
+	/**
+	 * The cached value of the '{@link #getM_pModelObject() <em>MpModel Object</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_pModelObject()
+	 * @generated
+	 * @ordered
+	 */
+	protected M_pModelObjectType m_pModelObject;
+
+	/**
+	 * The cached value of the '{@link #getM_pRoot() <em>MpRoot</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_pRoot()
+	 * @generated
+	 * @ordered
+	 */
+	protected M_pRootType m_pRoot;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected CGIClassChartImpl() {
+		super();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EClass eStaticClass() {
+		return UMLRpyPackage.eINSTANCE.getCGIClassChart();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public M_pModelObjectType getM_pModelObject() {
+		if (m_pModelObject != null && m_pModelObject.eIsProxy()) {
+			InternalEObject oldM_pModelObject = (InternalEObject)m_pModelObject;
+			m_pModelObject = (M_pModelObjectType)eResolveProxy(oldM_pModelObject);
+			if (m_pModelObject != oldM_pModelObject) {
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.CGI_CLASS_CHART__MPMODEL_OBJECT, oldM_pModelObject, m_pModelObject));
+			}
+		}
+		return m_pModelObject;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public M_pModelObjectType basicGetM_pModelObject() {
+		return m_pModelObject;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_pModelObject(M_pModelObjectType newM_pModelObject) {
+		M_pModelObjectType oldM_pModelObject = m_pModelObject;
+		m_pModelObject = newM_pModelObject;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_CLASS_CHART__MPMODEL_OBJECT, oldM_pModelObject, m_pModelObject));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public M_pRootType getM_pRoot() {
+		if (m_pRoot != null && m_pRoot.eIsProxy()) {
+			InternalEObject oldM_pRoot = (InternalEObject)m_pRoot;
+			m_pRoot = (M_pRootType)eResolveProxy(oldM_pRoot);
+			if (m_pRoot != oldM_pRoot) {
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.CGI_CLASS_CHART__MPROOT, oldM_pRoot, m_pRoot));
+			}
+		}
+		return m_pRoot;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public M_pRootType basicGetM_pRoot() {
+		return m_pRoot;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_pRoot(M_pRootType newM_pRoot) {
+		M_pRootType oldM_pRoot = m_pRoot;
+		m_pRoot = newM_pRoot;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_CLASS_CHART__MPROOT, oldM_pRoot, m_pRoot));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object eGet(int featureID, boolean resolve, boolean coreType) {
+		switch (featureID) {
+			case UMLRpyPackage.CGI_CLASS_CHART__MPMODEL_OBJECT:
+				if (resolve) return getM_pModelObject();
+				return basicGetM_pModelObject();
+			case UMLRpyPackage.CGI_CLASS_CHART__MPROOT:
+				if (resolve) return getM_pRoot();
+				return basicGetM_pRoot();
+		}
+		return super.eGet(featureID, resolve, coreType);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void eSet(int featureID, Object newValue) {
+		switch (featureID) {
+			case UMLRpyPackage.CGI_CLASS_CHART__MPMODEL_OBJECT:
+				setM_pModelObject((M_pModelObjectType)newValue);
+				return;
+			case UMLRpyPackage.CGI_CLASS_CHART__MPROOT:
+				setM_pRoot((M_pRootType)newValue);
+				return;
+		}
+		super.eSet(featureID, newValue);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void eUnset(int featureID) {
+		switch (featureID) {
+			case UMLRpyPackage.CGI_CLASS_CHART__MPMODEL_OBJECT:
+				setM_pModelObject((M_pModelObjectType)null);
+				return;
+			case UMLRpyPackage.CGI_CLASS_CHART__MPROOT:
+				setM_pRoot((M_pRootType)null);
+				return;
+		}
+		super.eUnset(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public boolean eIsSet(int featureID) {
+		switch (featureID) {
+			case UMLRpyPackage.CGI_CLASS_CHART__MPMODEL_OBJECT:
+				return m_pModelObject != null;
+			case UMLRpyPackage.CGI_CLASS_CHART__MPROOT:
+				return m_pRoot != null;
+		}
+		return super.eIsSet(featureID);
+	}
+
+} //CGIClassChartImpl
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/CGIClassImpl.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/CGIClassImpl.java
new file mode 100755
index 0000000..b09a5c7
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/CGIClassImpl.java
@@ -0,0 +1,1155 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl;
+
+import java.util.Collection;
+
+import org.eclipse.emf.common.notify.Notification;
+import org.eclipse.emf.common.notify.NotificationChain;
+
+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.EDataTypeEList;
+import org.eclipse.emf.ecore.util.EObjectContainmentEList;
+import org.eclipse.emf.ecore.util.EObjectResolvingEList;
+import org.eclipse.emf.ecore.util.InternalEList;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIClass;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIImageData;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIText;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CompartmentsType;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IColor;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IPropertyContainer;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IUnit;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.M_pModelObjectType;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.M_pRootType;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.OperationsType;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>CGI Class</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * </p>
+ * <ul>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIClassImpl#getM_pModelObject <em>MpModel Object</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIClassImpl#getM_AdditionalLabel <em>MAdditional Label</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIClassImpl#getM_polygon <em>Mpolygon</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIClassImpl#getM_nNameFormat <em>MnName Format</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIClassImpl#getM_nIsNameFormat <em>MnIs Name Format</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIClassImpl#getCompartments <em>Compartments</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIClassImpl#getM_pParent <em>MpParent</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIClassImpl#getM_transform <em>Mtransform</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIClassImpl#getFrameset <em>Frameset</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIClassImpl#getProperties <em>Properties</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIClassImpl#getAttrs <em>Attrs</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIClassImpl#getOperations <em>Operations</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIClassImpl#getM_color <em>Mcolor</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIClassImpl#getM_lineWidth <em>Mline Width</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIClassImpl#getM_dSeparatorPosition <em>MdSeparator Position</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIClassImpl#getM_bIsMisplaced <em>MbIs Misplaced</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIClassImpl#getM_pImageViewData <em>MpImage View Data</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIClassImpl#getM_bFramesetModified <em>MbFrameset Modified</em>}</li>
+ * </ul>
+ *
+ * @generated
+ */
+public class CGIClassImpl extends GraphElementsTypeImpl implements CGIClass {
+	/**
+	 * The cached value of the '{@link #getM_pModelObject() <em>MpModel Object</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_pModelObject()
+	 * @generated
+	 * @ordered
+	 */
+	protected M_pModelObjectType m_pModelObject;
+
+	/**
+	 * The cached value of the '{@link #getM_AdditionalLabel() <em>MAdditional Label</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_AdditionalLabel()
+	 * @generated
+	 * @ordered
+	 */
+	protected CGIText m_AdditionalLabel;
+
+	/**
+	 * The cached value of the '{@link #getM_polygon() <em>Mpolygon</em>}' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_polygon()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<String> m_polygon;
+
+	/**
+	 * The default value of the '{@link #getM_nNameFormat() <em>MnName Format</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_nNameFormat()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String MNNAME_FORMAT_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getM_nNameFormat() <em>MnName Format</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_nNameFormat()
+	 * @generated
+	 * @ordered
+	 */
+	protected String m_nNameFormat = MNNAME_FORMAT_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getM_nIsNameFormat() <em>MnIs Name Format</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_nIsNameFormat()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String MNIS_NAME_FORMAT_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getM_nIsNameFormat() <em>MnIs Name Format</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_nIsNameFormat()
+	 * @generated
+	 * @ordered
+	 */
+	protected String m_nIsNameFormat = MNIS_NAME_FORMAT_EDEFAULT;
+
+	/**
+	 * The cached value of the '{@link #getCompartments() <em>Compartments</em>}' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getCompartments()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<CompartmentsType> compartments;
+
+	/**
+	 * The cached value of the '{@link #getM_pParent() <em>MpParent</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_pParent()
+	 * @generated
+	 * @ordered
+	 */
+	protected M_pRootType m_pParent;
+
+	/**
+	 * The cached value of the '{@link #getM_transform() <em>Mtransform</em>}' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_transform()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<String> m_transform;
+
+	/**
+	 * The default value of the '{@link #getFrameset() <em>Frameset</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getFrameset()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String FRAMESET_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getFrameset() <em>Frameset</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getFrameset()
+	 * @generated
+	 * @ordered
+	 */
+	protected String frameset = FRAMESET_EDEFAULT;
+
+	/**
+	 * The cached value of the '{@link #getProperties() <em>Properties</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getProperties()
+	 * @generated
+	 * @ordered
+	 */
+	protected IPropertyContainer properties;
+
+	/**
+	 * The cached value of the '{@link #getAttrs() <em>Attrs</em>}' reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getAttrs()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<IUnit> attrs;
+
+	/**
+	 * The cached value of the '{@link #getOperations() <em>Operations</em>}' reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getOperations()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<OperationsType> operations;
+
+	/**
+	 * The cached value of the '{@link #getM_color() <em>Mcolor</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_color()
+	 * @generated
+	 * @ordered
+	 */
+	protected IColor m_color;
+
+	/**
+	 * The default value of the '{@link #getM_lineWidth() <em>Mline Width</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_lineWidth()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String MLINE_WIDTH_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getM_lineWidth() <em>Mline Width</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_lineWidth()
+	 * @generated
+	 * @ordered
+	 */
+	protected String m_lineWidth = MLINE_WIDTH_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getM_dSeparatorPosition() <em>MdSeparator Position</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_dSeparatorPosition()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String MDSEPARATOR_POSITION_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getM_dSeparatorPosition() <em>MdSeparator Position</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_dSeparatorPosition()
+	 * @generated
+	 * @ordered
+	 */
+	protected String m_dSeparatorPosition = MDSEPARATOR_POSITION_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getM_bIsMisplaced() <em>MbIs Misplaced</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_bIsMisplaced()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String MBIS_MISPLACED_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getM_bIsMisplaced() <em>MbIs Misplaced</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_bIsMisplaced()
+	 * @generated
+	 * @ordered
+	 */
+	protected String m_bIsMisplaced = MBIS_MISPLACED_EDEFAULT;
+
+	/**
+	 * The cached value of the '{@link #getM_pImageViewData() <em>MpImage View Data</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_pImageViewData()
+	 * @generated
+	 * @ordered
+	 */
+	protected CGIImageData m_pImageViewData;
+
+	/**
+	 * The default value of the '{@link #getM_bFramesetModified() <em>MbFrameset Modified</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_bFramesetModified()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String MBFRAMESET_MODIFIED_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getM_bFramesetModified() <em>MbFrameset Modified</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_bFramesetModified()
+	 * @generated
+	 * @ordered
+	 */
+	protected String m_bFramesetModified = MBFRAMESET_MODIFIED_EDEFAULT;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected CGIClassImpl() {
+		super();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EClass eStaticClass() {
+		return UMLRpyPackage.eINSTANCE.getCGIClass();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public M_pModelObjectType getM_pModelObject() {
+		if (m_pModelObject != null && m_pModelObject.eIsProxy()) {
+			InternalEObject oldM_pModelObject = (InternalEObject)m_pModelObject;
+			m_pModelObject = (M_pModelObjectType)eResolveProxy(oldM_pModelObject);
+			if (m_pModelObject != oldM_pModelObject) {
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.CGI_CLASS__MPMODEL_OBJECT, oldM_pModelObject, m_pModelObject));
+			}
+		}
+		return m_pModelObject;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public M_pModelObjectType basicGetM_pModelObject() {
+		return m_pModelObject;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_pModelObject(M_pModelObjectType newM_pModelObject) {
+		M_pModelObjectType oldM_pModelObject = m_pModelObject;
+		m_pModelObject = newM_pModelObject;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_CLASS__MPMODEL_OBJECT, oldM_pModelObject, m_pModelObject));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public CGIText getM_AdditionalLabel() {
+		if (m_AdditionalLabel != null && m_AdditionalLabel.eIsProxy()) {
+			InternalEObject oldM_AdditionalLabel = (InternalEObject)m_AdditionalLabel;
+			m_AdditionalLabel = (CGIText)eResolveProxy(oldM_AdditionalLabel);
+			if (m_AdditionalLabel != oldM_AdditionalLabel) {
+				InternalEObject newM_AdditionalLabel = (InternalEObject)m_AdditionalLabel;
+				NotificationChain msgs = oldM_AdditionalLabel.eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.CGI_CLASS__MADDITIONAL_LABEL, null, null);
+				if (newM_AdditionalLabel.eInternalContainer() == null) {
+					msgs = newM_AdditionalLabel.eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.CGI_CLASS__MADDITIONAL_LABEL, null, msgs);
+				}
+				if (msgs != null) msgs.dispatch();
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.CGI_CLASS__MADDITIONAL_LABEL, oldM_AdditionalLabel, m_AdditionalLabel));
+			}
+		}
+		return m_AdditionalLabel;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public CGIText basicGetM_AdditionalLabel() {
+		return m_AdditionalLabel;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public NotificationChain basicSetM_AdditionalLabel(CGIText newM_AdditionalLabel, NotificationChain msgs) {
+		CGIText oldM_AdditionalLabel = m_AdditionalLabel;
+		m_AdditionalLabel = newM_AdditionalLabel;
+		if (eNotificationRequired()) {
+			ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_CLASS__MADDITIONAL_LABEL, oldM_AdditionalLabel, newM_AdditionalLabel);
+			if (msgs == null) msgs = notification; else msgs.add(notification);
+		}
+		return msgs;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_AdditionalLabel(CGIText newM_AdditionalLabel) {
+		if (newM_AdditionalLabel != m_AdditionalLabel) {
+			NotificationChain msgs = null;
+			if (m_AdditionalLabel != null)
+				msgs = ((InternalEObject)m_AdditionalLabel).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.CGI_CLASS__MADDITIONAL_LABEL, null, msgs);
+			if (newM_AdditionalLabel != null)
+				msgs = ((InternalEObject)newM_AdditionalLabel).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.CGI_CLASS__MADDITIONAL_LABEL, null, msgs);
+			msgs = basicSetM_AdditionalLabel(newM_AdditionalLabel, msgs);
+			if (msgs != null) msgs.dispatch();
+		}
+		else if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_CLASS__MADDITIONAL_LABEL, newM_AdditionalLabel, newM_AdditionalLabel));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<String> getM_polygon() {
+		if (m_polygon == null) {
+			m_polygon = new EDataTypeEList<String>(String.class, this, UMLRpyPackage.CGI_CLASS__MPOLYGON);
+		}
+		return m_polygon;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getM_nNameFormat() {
+		return m_nNameFormat;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_nNameFormat(String newM_nNameFormat) {
+		String oldM_nNameFormat = m_nNameFormat;
+		m_nNameFormat = newM_nNameFormat;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_CLASS__MNNAME_FORMAT, oldM_nNameFormat, m_nNameFormat));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getM_nIsNameFormat() {
+		return m_nIsNameFormat;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_nIsNameFormat(String newM_nIsNameFormat) {
+		String oldM_nIsNameFormat = m_nIsNameFormat;
+		m_nIsNameFormat = newM_nIsNameFormat;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_CLASS__MNIS_NAME_FORMAT, oldM_nIsNameFormat, m_nIsNameFormat));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<CompartmentsType> getCompartments() {
+		if (compartments == null) {
+			compartments = new EObjectContainmentEList.Resolving<CompartmentsType>(CompartmentsType.class, this, UMLRpyPackage.CGI_CLASS__COMPARTMENTS);
+		}
+		return compartments;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public M_pRootType getM_pParent() {
+		if (m_pParent != null && m_pParent.eIsProxy()) {
+			InternalEObject oldM_pParent = (InternalEObject)m_pParent;
+			m_pParent = (M_pRootType)eResolveProxy(oldM_pParent);
+			if (m_pParent != oldM_pParent) {
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.CGI_CLASS__MPPARENT, oldM_pParent, m_pParent));
+			}
+		}
+		return m_pParent;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public M_pRootType basicGetM_pParent() {
+		return m_pParent;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_pParent(M_pRootType newM_pParent) {
+		M_pRootType oldM_pParent = m_pParent;
+		m_pParent = newM_pParent;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_CLASS__MPPARENT, oldM_pParent, m_pParent));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<String> getM_transform() {
+		if (m_transform == null) {
+			m_transform = new EDataTypeEList<String>(String.class, this, UMLRpyPackage.CGI_CLASS__MTRANSFORM);
+		}
+		return m_transform;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getFrameset() {
+		return frameset;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setFrameset(String newFrameset) {
+		String oldFrameset = frameset;
+		frameset = newFrameset;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_CLASS__FRAMESET, oldFrameset, frameset));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IPropertyContainer getProperties() {
+		if (properties != null && properties.eIsProxy()) {
+			InternalEObject oldProperties = (InternalEObject)properties;
+			properties = (IPropertyContainer)eResolveProxy(oldProperties);
+			if (properties != oldProperties) {
+				InternalEObject newProperties = (InternalEObject)properties;
+				NotificationChain msgs = oldProperties.eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.CGI_CLASS__PROPERTIES, null, null);
+				if (newProperties.eInternalContainer() == null) {
+					msgs = newProperties.eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.CGI_CLASS__PROPERTIES, null, msgs);
+				}
+				if (msgs != null) msgs.dispatch();
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.CGI_CLASS__PROPERTIES, oldProperties, properties));
+			}
+		}
+		return properties;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IPropertyContainer basicGetProperties() {
+		return properties;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public NotificationChain basicSetProperties(IPropertyContainer newProperties, NotificationChain msgs) {
+		IPropertyContainer oldProperties = properties;
+		properties = newProperties;
+		if (eNotificationRequired()) {
+			ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_CLASS__PROPERTIES, oldProperties, newProperties);
+			if (msgs == null) msgs = notification; else msgs.add(notification);
+		}
+		return msgs;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setProperties(IPropertyContainer newProperties) {
+		if (newProperties != properties) {
+			NotificationChain msgs = null;
+			if (properties != null)
+				msgs = ((InternalEObject)properties).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.CGI_CLASS__PROPERTIES, null, msgs);
+			if (newProperties != null)
+				msgs = ((InternalEObject)newProperties).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.CGI_CLASS__PROPERTIES, null, msgs);
+			msgs = basicSetProperties(newProperties, msgs);
+			if (msgs != null) msgs.dispatch();
+		}
+		else if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_CLASS__PROPERTIES, newProperties, newProperties));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<IUnit> getAttrs() {
+		if (attrs == null) {
+			attrs = new EObjectResolvingEList<IUnit>(IUnit.class, this, UMLRpyPackage.CGI_CLASS__ATTRS);
+		}
+		return attrs;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<OperationsType> getOperations() {
+		if (operations == null) {
+			operations = new EObjectResolvingEList<OperationsType>(OperationsType.class, this, UMLRpyPackage.CGI_CLASS__OPERATIONS);
+		}
+		return operations;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IColor getM_color() {
+		if (m_color != null && m_color.eIsProxy()) {
+			InternalEObject oldM_color = (InternalEObject)m_color;
+			m_color = (IColor)eResolveProxy(oldM_color);
+			if (m_color != oldM_color) {
+				InternalEObject newM_color = (InternalEObject)m_color;
+				NotificationChain msgs = oldM_color.eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.CGI_CLASS__MCOLOR, null, null);
+				if (newM_color.eInternalContainer() == null) {
+					msgs = newM_color.eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.CGI_CLASS__MCOLOR, null, msgs);
+				}
+				if (msgs != null) msgs.dispatch();
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.CGI_CLASS__MCOLOR, oldM_color, m_color));
+			}
+		}
+		return m_color;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IColor basicGetM_color() {
+		return m_color;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public NotificationChain basicSetM_color(IColor newM_color, NotificationChain msgs) {
+		IColor oldM_color = m_color;
+		m_color = newM_color;
+		if (eNotificationRequired()) {
+			ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_CLASS__MCOLOR, oldM_color, newM_color);
+			if (msgs == null) msgs = notification; else msgs.add(notification);
+		}
+		return msgs;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_color(IColor newM_color) {
+		if (newM_color != m_color) {
+			NotificationChain msgs = null;
+			if (m_color != null)
+				msgs = ((InternalEObject)m_color).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.CGI_CLASS__MCOLOR, null, msgs);
+			if (newM_color != null)
+				msgs = ((InternalEObject)newM_color).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.CGI_CLASS__MCOLOR, null, msgs);
+			msgs = basicSetM_color(newM_color, msgs);
+			if (msgs != null) msgs.dispatch();
+		}
+		else if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_CLASS__MCOLOR, newM_color, newM_color));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getM_lineWidth() {
+		return m_lineWidth;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_lineWidth(String newM_lineWidth) {
+		String oldM_lineWidth = m_lineWidth;
+		m_lineWidth = newM_lineWidth;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_CLASS__MLINE_WIDTH, oldM_lineWidth, m_lineWidth));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getM_dSeparatorPosition() {
+		return m_dSeparatorPosition;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_dSeparatorPosition(String newM_dSeparatorPosition) {
+		String oldM_dSeparatorPosition = m_dSeparatorPosition;
+		m_dSeparatorPosition = newM_dSeparatorPosition;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_CLASS__MDSEPARATOR_POSITION, oldM_dSeparatorPosition, m_dSeparatorPosition));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getM_bIsMisplaced() {
+		return m_bIsMisplaced;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_bIsMisplaced(String newM_bIsMisplaced) {
+		String oldM_bIsMisplaced = m_bIsMisplaced;
+		m_bIsMisplaced = newM_bIsMisplaced;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_CLASS__MBIS_MISPLACED, oldM_bIsMisplaced, m_bIsMisplaced));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public CGIImageData getM_pImageViewData() {
+		if (m_pImageViewData != null && m_pImageViewData.eIsProxy()) {
+			InternalEObject oldM_pImageViewData = (InternalEObject)m_pImageViewData;
+			m_pImageViewData = (CGIImageData)eResolveProxy(oldM_pImageViewData);
+			if (m_pImageViewData != oldM_pImageViewData) {
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.CGI_CLASS__MPIMAGE_VIEW_DATA, oldM_pImageViewData, m_pImageViewData));
+			}
+		}
+		return m_pImageViewData;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public CGIImageData basicGetM_pImageViewData() {
+		return m_pImageViewData;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_pImageViewData(CGIImageData newM_pImageViewData) {
+		CGIImageData oldM_pImageViewData = m_pImageViewData;
+		m_pImageViewData = newM_pImageViewData;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_CLASS__MPIMAGE_VIEW_DATA, oldM_pImageViewData, m_pImageViewData));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getM_bFramesetModified() {
+		return m_bFramesetModified;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_bFramesetModified(String newM_bFramesetModified) {
+		String oldM_bFramesetModified = m_bFramesetModified;
+		m_bFramesetModified = newM_bFramesetModified;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_CLASS__MBFRAMESET_MODIFIED, oldM_bFramesetModified, m_bFramesetModified));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
+		switch (featureID) {
+			case UMLRpyPackage.CGI_CLASS__MADDITIONAL_LABEL:
+				return basicSetM_AdditionalLabel(null, msgs);
+			case UMLRpyPackage.CGI_CLASS__COMPARTMENTS:
+				return ((InternalEList<?>)getCompartments()).basicRemove(otherEnd, msgs);
+			case UMLRpyPackage.CGI_CLASS__PROPERTIES:
+				return basicSetProperties(null, msgs);
+			case UMLRpyPackage.CGI_CLASS__MCOLOR:
+				return basicSetM_color(null, msgs);
+		}
+		return super.eInverseRemove(otherEnd, featureID, msgs);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object eGet(int featureID, boolean resolve, boolean coreType) {
+		switch (featureID) {
+			case UMLRpyPackage.CGI_CLASS__MPMODEL_OBJECT:
+				if (resolve) return getM_pModelObject();
+				return basicGetM_pModelObject();
+			case UMLRpyPackage.CGI_CLASS__MADDITIONAL_LABEL:
+				if (resolve) return getM_AdditionalLabel();
+				return basicGetM_AdditionalLabel();
+			case UMLRpyPackage.CGI_CLASS__MPOLYGON:
+				return getM_polygon();
+			case UMLRpyPackage.CGI_CLASS__MNNAME_FORMAT:
+				return getM_nNameFormat();
+			case UMLRpyPackage.CGI_CLASS__MNIS_NAME_FORMAT:
+				return getM_nIsNameFormat();
+			case UMLRpyPackage.CGI_CLASS__COMPARTMENTS:
+				return getCompartments();
+			case UMLRpyPackage.CGI_CLASS__MPPARENT:
+				if (resolve) return getM_pParent();
+				return basicGetM_pParent();
+			case UMLRpyPackage.CGI_CLASS__MTRANSFORM:
+				return getM_transform();
+			case UMLRpyPackage.CGI_CLASS__FRAMESET:
+				return getFrameset();
+			case UMLRpyPackage.CGI_CLASS__PROPERTIES:
+				if (resolve) return getProperties();
+				return basicGetProperties();
+			case UMLRpyPackage.CGI_CLASS__ATTRS:
+				return getAttrs();
+			case UMLRpyPackage.CGI_CLASS__OPERATIONS:
+				return getOperations();
+			case UMLRpyPackage.CGI_CLASS__MCOLOR:
+				if (resolve) return getM_color();
+				return basicGetM_color();
+			case UMLRpyPackage.CGI_CLASS__MLINE_WIDTH:
+				return getM_lineWidth();
+			case UMLRpyPackage.CGI_CLASS__MDSEPARATOR_POSITION:
+				return getM_dSeparatorPosition();
+			case UMLRpyPackage.CGI_CLASS__MBIS_MISPLACED:
+				return getM_bIsMisplaced();
+			case UMLRpyPackage.CGI_CLASS__MPIMAGE_VIEW_DATA:
+				if (resolve) return getM_pImageViewData();
+				return basicGetM_pImageViewData();
+			case UMLRpyPackage.CGI_CLASS__MBFRAMESET_MODIFIED:
+				return getM_bFramesetModified();
+		}
+		return super.eGet(featureID, resolve, coreType);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@SuppressWarnings("unchecked")
+	@Override
+	public void eSet(int featureID, Object newValue) {
+		switch (featureID) {
+			case UMLRpyPackage.CGI_CLASS__MPMODEL_OBJECT:
+				setM_pModelObject((M_pModelObjectType)newValue);
+				return;
+			case UMLRpyPackage.CGI_CLASS__MADDITIONAL_LABEL:
+				setM_AdditionalLabel((CGIText)newValue);
+				return;
+			case UMLRpyPackage.CGI_CLASS__MPOLYGON:
+				getM_polygon().clear();
+				getM_polygon().addAll((Collection<? extends String>)newValue);
+				return;
+			case UMLRpyPackage.CGI_CLASS__MNNAME_FORMAT:
+				setM_nNameFormat((String)newValue);
+				return;
+			case UMLRpyPackage.CGI_CLASS__MNIS_NAME_FORMAT:
+				setM_nIsNameFormat((String)newValue);
+				return;
+			case UMLRpyPackage.CGI_CLASS__COMPARTMENTS:
+				getCompartments().clear();
+				getCompartments().addAll((Collection<? extends CompartmentsType>)newValue);
+				return;
+			case UMLRpyPackage.CGI_CLASS__MPPARENT:
+				setM_pParent((M_pRootType)newValue);
+				return;
+			case UMLRpyPackage.CGI_CLASS__MTRANSFORM:
+				getM_transform().clear();
+				getM_transform().addAll((Collection<? extends String>)newValue);
+				return;
+			case UMLRpyPackage.CGI_CLASS__FRAMESET:
+				setFrameset((String)newValue);
+				return;
+			case UMLRpyPackage.CGI_CLASS__PROPERTIES:
+				setProperties((IPropertyContainer)newValue);
+				return;
+			case UMLRpyPackage.CGI_CLASS__ATTRS:
+				getAttrs().clear();
+				getAttrs().addAll((Collection<? extends IUnit>)newValue);
+				return;
+			case UMLRpyPackage.CGI_CLASS__OPERATIONS:
+				getOperations().clear();
+				getOperations().addAll((Collection<? extends OperationsType>)newValue);
+				return;
+			case UMLRpyPackage.CGI_CLASS__MCOLOR:
+				setM_color((IColor)newValue);
+				return;
+			case UMLRpyPackage.CGI_CLASS__MLINE_WIDTH:
+				setM_lineWidth((String)newValue);
+				return;
+			case UMLRpyPackage.CGI_CLASS__MDSEPARATOR_POSITION:
+				setM_dSeparatorPosition((String)newValue);
+				return;
+			case UMLRpyPackage.CGI_CLASS__MBIS_MISPLACED:
+				setM_bIsMisplaced((String)newValue);
+				return;
+			case UMLRpyPackage.CGI_CLASS__MPIMAGE_VIEW_DATA:
+				setM_pImageViewData((CGIImageData)newValue);
+				return;
+			case UMLRpyPackage.CGI_CLASS__MBFRAMESET_MODIFIED:
+				setM_bFramesetModified((String)newValue);
+				return;
+		}
+		super.eSet(featureID, newValue);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void eUnset(int featureID) {
+		switch (featureID) {
+			case UMLRpyPackage.CGI_CLASS__MPMODEL_OBJECT:
+				setM_pModelObject((M_pModelObjectType)null);
+				return;
+			case UMLRpyPackage.CGI_CLASS__MADDITIONAL_LABEL:
+				setM_AdditionalLabel((CGIText)null);
+				return;
+			case UMLRpyPackage.CGI_CLASS__MPOLYGON:
+				getM_polygon().clear();
+				return;
+			case UMLRpyPackage.CGI_CLASS__MNNAME_FORMAT:
+				setM_nNameFormat(MNNAME_FORMAT_EDEFAULT);
+				return;
+			case UMLRpyPackage.CGI_CLASS__MNIS_NAME_FORMAT:
+				setM_nIsNameFormat(MNIS_NAME_FORMAT_EDEFAULT);
+				return;
+			case UMLRpyPackage.CGI_CLASS__COMPARTMENTS:
+				getCompartments().clear();
+				return;
+			case UMLRpyPackage.CGI_CLASS__MPPARENT:
+				setM_pParent((M_pRootType)null);
+				return;
+			case UMLRpyPackage.CGI_CLASS__MTRANSFORM:
+				getM_transform().clear();
+				return;
+			case UMLRpyPackage.CGI_CLASS__FRAMESET:
+				setFrameset(FRAMESET_EDEFAULT);
+				return;
+			case UMLRpyPackage.CGI_CLASS__PROPERTIES:
+				setProperties((IPropertyContainer)null);
+				return;
+			case UMLRpyPackage.CGI_CLASS__ATTRS:
+				getAttrs().clear();
+				return;
+			case UMLRpyPackage.CGI_CLASS__OPERATIONS:
+				getOperations().clear();
+				return;
+			case UMLRpyPackage.CGI_CLASS__MCOLOR:
+				setM_color((IColor)null);
+				return;
+			case UMLRpyPackage.CGI_CLASS__MLINE_WIDTH:
+				setM_lineWidth(MLINE_WIDTH_EDEFAULT);
+				return;
+			case UMLRpyPackage.CGI_CLASS__MDSEPARATOR_POSITION:
+				setM_dSeparatorPosition(MDSEPARATOR_POSITION_EDEFAULT);
+				return;
+			case UMLRpyPackage.CGI_CLASS__MBIS_MISPLACED:
+				setM_bIsMisplaced(MBIS_MISPLACED_EDEFAULT);
+				return;
+			case UMLRpyPackage.CGI_CLASS__MPIMAGE_VIEW_DATA:
+				setM_pImageViewData((CGIImageData)null);
+				return;
+			case UMLRpyPackage.CGI_CLASS__MBFRAMESET_MODIFIED:
+				setM_bFramesetModified(MBFRAMESET_MODIFIED_EDEFAULT);
+				return;
+		}
+		super.eUnset(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public boolean eIsSet(int featureID) {
+		switch (featureID) {
+			case UMLRpyPackage.CGI_CLASS__MPMODEL_OBJECT:
+				return m_pModelObject != null;
+			case UMLRpyPackage.CGI_CLASS__MADDITIONAL_LABEL:
+				return m_AdditionalLabel != null;
+			case UMLRpyPackage.CGI_CLASS__MPOLYGON:
+				return m_polygon != null && !m_polygon.isEmpty();
+			case UMLRpyPackage.CGI_CLASS__MNNAME_FORMAT:
+				return MNNAME_FORMAT_EDEFAULT == null ? m_nNameFormat != null : !MNNAME_FORMAT_EDEFAULT.equals(m_nNameFormat);
+			case UMLRpyPackage.CGI_CLASS__MNIS_NAME_FORMAT:
+				return MNIS_NAME_FORMAT_EDEFAULT == null ? m_nIsNameFormat != null : !MNIS_NAME_FORMAT_EDEFAULT.equals(m_nIsNameFormat);
+			case UMLRpyPackage.CGI_CLASS__COMPARTMENTS:
+				return compartments != null && !compartments.isEmpty();
+			case UMLRpyPackage.CGI_CLASS__MPPARENT:
+				return m_pParent != null;
+			case UMLRpyPackage.CGI_CLASS__MTRANSFORM:
+				return m_transform != null && !m_transform.isEmpty();
+			case UMLRpyPackage.CGI_CLASS__FRAMESET:
+				return FRAMESET_EDEFAULT == null ? frameset != null : !FRAMESET_EDEFAULT.equals(frameset);
+			case UMLRpyPackage.CGI_CLASS__PROPERTIES:
+				return properties != null;
+			case UMLRpyPackage.CGI_CLASS__ATTRS:
+				return attrs != null && !attrs.isEmpty();
+			case UMLRpyPackage.CGI_CLASS__OPERATIONS:
+				return operations != null && !operations.isEmpty();
+			case UMLRpyPackage.CGI_CLASS__MCOLOR:
+				return m_color != null;
+			case UMLRpyPackage.CGI_CLASS__MLINE_WIDTH:
+				return MLINE_WIDTH_EDEFAULT == null ? m_lineWidth != null : !MLINE_WIDTH_EDEFAULT.equals(m_lineWidth);
+			case UMLRpyPackage.CGI_CLASS__MDSEPARATOR_POSITION:
+				return MDSEPARATOR_POSITION_EDEFAULT == null ? m_dSeparatorPosition != null : !MDSEPARATOR_POSITION_EDEFAULT.equals(m_dSeparatorPosition);
+			case UMLRpyPackage.CGI_CLASS__MBIS_MISPLACED:
+				return MBIS_MISPLACED_EDEFAULT == null ? m_bIsMisplaced != null : !MBIS_MISPLACED_EDEFAULT.equals(m_bIsMisplaced);
+			case UMLRpyPackage.CGI_CLASS__MPIMAGE_VIEW_DATA:
+				return m_pImageViewData != null;
+			case UMLRpyPackage.CGI_CLASS__MBFRAMESET_MODIFIED:
+				return MBFRAMESET_MODIFIED_EDEFAULT == null ? m_bFramesetModified != null : !MBFRAMESET_MODIFIED_EDEFAULT.equals(m_bFramesetModified);
+		}
+		return super.eIsSet(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String toString() {
+		if (eIsProxy()) return super.toString();
+
+		StringBuffer result = new StringBuffer(super.toString());
+		result.append(" (m_polygon: "); //$NON-NLS-1$
+		result.append(m_polygon);
+		result.append(", m_nNameFormat: "); //$NON-NLS-1$
+		result.append(m_nNameFormat);
+		result.append(", m_nIsNameFormat: "); //$NON-NLS-1$
+		result.append(m_nIsNameFormat);
+		result.append(", m_transform: "); //$NON-NLS-1$
+		result.append(m_transform);
+		result.append(", frameset: "); //$NON-NLS-1$
+		result.append(frameset);
+		result.append(", m_lineWidth: "); //$NON-NLS-1$
+		result.append(m_lineWidth);
+		result.append(", m_dSeparatorPosition: "); //$NON-NLS-1$
+		result.append(m_dSeparatorPosition);
+		result.append(", m_bIsMisplaced: "); //$NON-NLS-1$
+		result.append(m_bIsMisplaced);
+		result.append(", m_bFramesetModified: "); //$NON-NLS-1$
+		result.append(m_bFramesetModified);
+		result.append(')');
+		return result.toString();
+	}
+
+} //CGIClassImpl
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/CGIClassifierRoleImpl.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/CGIClassifierRoleImpl.java
new file mode 100755
index 0000000..4d516b3
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/CGIClassifierRoleImpl.java
@@ -0,0 +1,568 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl;
+
+import java.util.Collection;
+
+import org.eclipse.emf.common.notify.Notification;
+import org.eclipse.emf.common.notify.NotificationChain;
+
+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.EDataTypeEList;
+import org.eclipse.emf.ecore.util.EObjectResolvingEList;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIBox;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIClassifierRole;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IClassifierRole;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IPropertyContainer;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UnknownType;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>CGI Classifier Role</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * </p>
+ * <ul>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIClassifierRoleImpl#getM_pModelObject <em>MpModel Object</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIClassifierRoleImpl#getM_pParent <em>MpParent</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIClassifierRoleImpl#getM_transform <em>Mtransform</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIClassifierRoleImpl#getM_polygon <em>Mpolygon</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIClassifierRoleImpl#getM_nNameFormat <em>MnName Format</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIClassifierRoleImpl#getM_nIsNameFormat <em>MnIs Name Format</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIClassifierRoleImpl#getCompartments <em>Compartments</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIClassifierRoleImpl#getProperties <em>Properties</em>}</li>
+ * </ul>
+ *
+ * @generated
+ */
+public class CGIClassifierRoleImpl extends GraphElementsTypeImpl implements CGIClassifierRole {
+	/**
+	 * The cached value of the '{@link #getM_pModelObject() <em>MpModel Object</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_pModelObject()
+	 * @generated
+	 * @ordered
+	 */
+	protected IClassifierRole m_pModelObject;
+
+	/**
+	 * The cached value of the '{@link #getM_pParent() <em>MpParent</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_pParent()
+	 * @generated
+	 * @ordered
+	 */
+	protected CGIBox m_pParent;
+
+	/**
+	 * The cached value of the '{@link #getM_transform() <em>Mtransform</em>}' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_transform()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<String> m_transform;
+
+	/**
+	 * The cached value of the '{@link #getM_polygon() <em>Mpolygon</em>}' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_polygon()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<String> m_polygon;
+
+	/**
+	 * The default value of the '{@link #getM_nNameFormat() <em>MnName Format</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_nNameFormat()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String MNNAME_FORMAT_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getM_nNameFormat() <em>MnName Format</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_nNameFormat()
+	 * @generated
+	 * @ordered
+	 */
+	protected String m_nNameFormat = MNNAME_FORMAT_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getM_nIsNameFormat() <em>MnIs Name Format</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_nIsNameFormat()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String MNIS_NAME_FORMAT_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getM_nIsNameFormat() <em>MnIs Name Format</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_nIsNameFormat()
+	 * @generated
+	 * @ordered
+	 */
+	protected String m_nIsNameFormat = MNIS_NAME_FORMAT_EDEFAULT;
+
+	/**
+	 * The cached value of the '{@link #getCompartments() <em>Compartments</em>}' reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getCompartments()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<UnknownType> compartments;
+
+	/**
+	 * The cached value of the '{@link #getProperties() <em>Properties</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getProperties()
+	 * @generated
+	 * @ordered
+	 */
+	protected IPropertyContainer properties;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected CGIClassifierRoleImpl() {
+		super();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EClass eStaticClass() {
+		return UMLRpyPackage.eINSTANCE.getCGIClassifierRole();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IClassifierRole getM_pModelObject() {
+		if (m_pModelObject != null && m_pModelObject.eIsProxy()) {
+			InternalEObject oldM_pModelObject = (InternalEObject)m_pModelObject;
+			m_pModelObject = (IClassifierRole)eResolveProxy(oldM_pModelObject);
+			if (m_pModelObject != oldM_pModelObject) {
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.CGI_CLASSIFIER_ROLE__MPMODEL_OBJECT, oldM_pModelObject, m_pModelObject));
+			}
+		}
+		return m_pModelObject;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IClassifierRole basicGetM_pModelObject() {
+		return m_pModelObject;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_pModelObject(IClassifierRole newM_pModelObject) {
+		IClassifierRole oldM_pModelObject = m_pModelObject;
+		m_pModelObject = newM_pModelObject;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_CLASSIFIER_ROLE__MPMODEL_OBJECT, oldM_pModelObject, m_pModelObject));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public CGIBox getM_pParent() {
+		if (m_pParent != null && m_pParent.eIsProxy()) {
+			InternalEObject oldM_pParent = (InternalEObject)m_pParent;
+			m_pParent = (CGIBox)eResolveProxy(oldM_pParent);
+			if (m_pParent != oldM_pParent) {
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.CGI_CLASSIFIER_ROLE__MPPARENT, oldM_pParent, m_pParent));
+			}
+		}
+		return m_pParent;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public CGIBox basicGetM_pParent() {
+		return m_pParent;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_pParent(CGIBox newM_pParent) {
+		CGIBox oldM_pParent = m_pParent;
+		m_pParent = newM_pParent;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_CLASSIFIER_ROLE__MPPARENT, oldM_pParent, m_pParent));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<String> getM_transform() {
+		if (m_transform == null) {
+			m_transform = new EDataTypeEList<String>(String.class, this, UMLRpyPackage.CGI_CLASSIFIER_ROLE__MTRANSFORM);
+		}
+		return m_transform;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<String> getM_polygon() {
+		if (m_polygon == null) {
+			m_polygon = new EDataTypeEList<String>(String.class, this, UMLRpyPackage.CGI_CLASSIFIER_ROLE__MPOLYGON);
+		}
+		return m_polygon;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getM_nNameFormat() {
+		return m_nNameFormat;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_nNameFormat(String newM_nNameFormat) {
+		String oldM_nNameFormat = m_nNameFormat;
+		m_nNameFormat = newM_nNameFormat;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_CLASSIFIER_ROLE__MNNAME_FORMAT, oldM_nNameFormat, m_nNameFormat));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getM_nIsNameFormat() {
+		return m_nIsNameFormat;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_nIsNameFormat(String newM_nIsNameFormat) {
+		String oldM_nIsNameFormat = m_nIsNameFormat;
+		m_nIsNameFormat = newM_nIsNameFormat;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_CLASSIFIER_ROLE__MNIS_NAME_FORMAT, oldM_nIsNameFormat, m_nIsNameFormat));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<UnknownType> getCompartments() {
+		if (compartments == null) {
+			compartments = new EObjectResolvingEList<UnknownType>(UnknownType.class, this, UMLRpyPackage.CGI_CLASSIFIER_ROLE__COMPARTMENTS);
+		}
+		return compartments;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IPropertyContainer getProperties() {
+		if (properties != null && properties.eIsProxy()) {
+			InternalEObject oldProperties = (InternalEObject)properties;
+			properties = (IPropertyContainer)eResolveProxy(oldProperties);
+			if (properties != oldProperties) {
+				InternalEObject newProperties = (InternalEObject)properties;
+				NotificationChain msgs = oldProperties.eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.CGI_CLASSIFIER_ROLE__PROPERTIES, null, null);
+				if (newProperties.eInternalContainer() == null) {
+					msgs = newProperties.eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.CGI_CLASSIFIER_ROLE__PROPERTIES, null, msgs);
+				}
+				if (msgs != null) msgs.dispatch();
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.CGI_CLASSIFIER_ROLE__PROPERTIES, oldProperties, properties));
+			}
+		}
+		return properties;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IPropertyContainer basicGetProperties() {
+		return properties;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public NotificationChain basicSetProperties(IPropertyContainer newProperties, NotificationChain msgs) {
+		IPropertyContainer oldProperties = properties;
+		properties = newProperties;
+		if (eNotificationRequired()) {
+			ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_CLASSIFIER_ROLE__PROPERTIES, oldProperties, newProperties);
+			if (msgs == null) msgs = notification; else msgs.add(notification);
+		}
+		return msgs;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setProperties(IPropertyContainer newProperties) {
+		if (newProperties != properties) {
+			NotificationChain msgs = null;
+			if (properties != null)
+				msgs = ((InternalEObject)properties).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.CGI_CLASSIFIER_ROLE__PROPERTIES, null, msgs);
+			if (newProperties != null)
+				msgs = ((InternalEObject)newProperties).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.CGI_CLASSIFIER_ROLE__PROPERTIES, null, msgs);
+			msgs = basicSetProperties(newProperties, msgs);
+			if (msgs != null) msgs.dispatch();
+		}
+		else if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_CLASSIFIER_ROLE__PROPERTIES, newProperties, newProperties));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
+		switch (featureID) {
+			case UMLRpyPackage.CGI_CLASSIFIER_ROLE__PROPERTIES:
+				return basicSetProperties(null, msgs);
+		}
+		return super.eInverseRemove(otherEnd, featureID, msgs);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object eGet(int featureID, boolean resolve, boolean coreType) {
+		switch (featureID) {
+			case UMLRpyPackage.CGI_CLASSIFIER_ROLE__MPMODEL_OBJECT:
+				if (resolve) return getM_pModelObject();
+				return basicGetM_pModelObject();
+			case UMLRpyPackage.CGI_CLASSIFIER_ROLE__MPPARENT:
+				if (resolve) return getM_pParent();
+				return basicGetM_pParent();
+			case UMLRpyPackage.CGI_CLASSIFIER_ROLE__MTRANSFORM:
+				return getM_transform();
+			case UMLRpyPackage.CGI_CLASSIFIER_ROLE__MPOLYGON:
+				return getM_polygon();
+			case UMLRpyPackage.CGI_CLASSIFIER_ROLE__MNNAME_FORMAT:
+				return getM_nNameFormat();
+			case UMLRpyPackage.CGI_CLASSIFIER_ROLE__MNIS_NAME_FORMAT:
+				return getM_nIsNameFormat();
+			case UMLRpyPackage.CGI_CLASSIFIER_ROLE__COMPARTMENTS:
+				return getCompartments();
+			case UMLRpyPackage.CGI_CLASSIFIER_ROLE__PROPERTIES:
+				if (resolve) return getProperties();
+				return basicGetProperties();
+		}
+		return super.eGet(featureID, resolve, coreType);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@SuppressWarnings("unchecked")
+	@Override
+	public void eSet(int featureID, Object newValue) {
+		switch (featureID) {
+			case UMLRpyPackage.CGI_CLASSIFIER_ROLE__MPMODEL_OBJECT:
+				setM_pModelObject((IClassifierRole)newValue);
+				return;
+			case UMLRpyPackage.CGI_CLASSIFIER_ROLE__MPPARENT:
+				setM_pParent((CGIBox)newValue);
+				return;
+			case UMLRpyPackage.CGI_CLASSIFIER_ROLE__MTRANSFORM:
+				getM_transform().clear();
+				getM_transform().addAll((Collection<? extends String>)newValue);
+				return;
+			case UMLRpyPackage.CGI_CLASSIFIER_ROLE__MPOLYGON:
+				getM_polygon().clear();
+				getM_polygon().addAll((Collection<? extends String>)newValue);
+				return;
+			case UMLRpyPackage.CGI_CLASSIFIER_ROLE__MNNAME_FORMAT:
+				setM_nNameFormat((String)newValue);
+				return;
+			case UMLRpyPackage.CGI_CLASSIFIER_ROLE__MNIS_NAME_FORMAT:
+				setM_nIsNameFormat((String)newValue);
+				return;
+			case UMLRpyPackage.CGI_CLASSIFIER_ROLE__COMPARTMENTS:
+				getCompartments().clear();
+				getCompartments().addAll((Collection<? extends UnknownType>)newValue);
+				return;
+			case UMLRpyPackage.CGI_CLASSIFIER_ROLE__PROPERTIES:
+				setProperties((IPropertyContainer)newValue);
+				return;
+		}
+		super.eSet(featureID, newValue);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void eUnset(int featureID) {
+		switch (featureID) {
+			case UMLRpyPackage.CGI_CLASSIFIER_ROLE__MPMODEL_OBJECT:
+				setM_pModelObject((IClassifierRole)null);
+				return;
+			case UMLRpyPackage.CGI_CLASSIFIER_ROLE__MPPARENT:
+				setM_pParent((CGIBox)null);
+				return;
+			case UMLRpyPackage.CGI_CLASSIFIER_ROLE__MTRANSFORM:
+				getM_transform().clear();
+				return;
+			case UMLRpyPackage.CGI_CLASSIFIER_ROLE__MPOLYGON:
+				getM_polygon().clear();
+				return;
+			case UMLRpyPackage.CGI_CLASSIFIER_ROLE__MNNAME_FORMAT:
+				setM_nNameFormat(MNNAME_FORMAT_EDEFAULT);
+				return;
+			case UMLRpyPackage.CGI_CLASSIFIER_ROLE__MNIS_NAME_FORMAT:
+				setM_nIsNameFormat(MNIS_NAME_FORMAT_EDEFAULT);
+				return;
+			case UMLRpyPackage.CGI_CLASSIFIER_ROLE__COMPARTMENTS:
+				getCompartments().clear();
+				return;
+			case UMLRpyPackage.CGI_CLASSIFIER_ROLE__PROPERTIES:
+				setProperties((IPropertyContainer)null);
+				return;
+		}
+		super.eUnset(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public boolean eIsSet(int featureID) {
+		switch (featureID) {
+			case UMLRpyPackage.CGI_CLASSIFIER_ROLE__MPMODEL_OBJECT:
+				return m_pModelObject != null;
+			case UMLRpyPackage.CGI_CLASSIFIER_ROLE__MPPARENT:
+				return m_pParent != null;
+			case UMLRpyPackage.CGI_CLASSIFIER_ROLE__MTRANSFORM:
+				return m_transform != null && !m_transform.isEmpty();
+			case UMLRpyPackage.CGI_CLASSIFIER_ROLE__MPOLYGON:
+				return m_polygon != null && !m_polygon.isEmpty();
+			case UMLRpyPackage.CGI_CLASSIFIER_ROLE__MNNAME_FORMAT:
+				return MNNAME_FORMAT_EDEFAULT == null ? m_nNameFormat != null : !MNNAME_FORMAT_EDEFAULT.equals(m_nNameFormat);
+			case UMLRpyPackage.CGI_CLASSIFIER_ROLE__MNIS_NAME_FORMAT:
+				return MNIS_NAME_FORMAT_EDEFAULT == null ? m_nIsNameFormat != null : !MNIS_NAME_FORMAT_EDEFAULT.equals(m_nIsNameFormat);
+			case UMLRpyPackage.CGI_CLASSIFIER_ROLE__COMPARTMENTS:
+				return compartments != null && !compartments.isEmpty();
+			case UMLRpyPackage.CGI_CLASSIFIER_ROLE__PROPERTIES:
+				return properties != null;
+		}
+		return super.eIsSet(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String toString() {
+		if (eIsProxy()) return super.toString();
+
+		StringBuffer result = new StringBuffer(super.toString());
+		result.append(" (m_transform: "); //$NON-NLS-1$
+		result.append(m_transform);
+		result.append(", m_polygon: "); //$NON-NLS-1$
+		result.append(m_polygon);
+		result.append(", m_nNameFormat: "); //$NON-NLS-1$
+		result.append(m_nNameFormat);
+		result.append(", m_nIsNameFormat: "); //$NON-NLS-1$
+		result.append(m_nIsNameFormat);
+		result.append(')');
+		return result.toString();
+	}
+
+} //CGIClassifierRoleImpl
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/CGICompartmentImpl.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/CGICompartmentImpl.java
new file mode 100755
index 0000000..107af59
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/CGICompartmentImpl.java
@@ -0,0 +1,430 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl;
+
+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.impl.ENotificationImpl;
+
+import org.eclipse.emf.ecore.util.EObjectResolvingEList;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGICompartment;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ItemsType;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>CGI Compartment</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * </p>
+ * <ul>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGICompartmentImpl#getId <em>Id</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGICompartmentImpl#getM_name <em>Mname</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGICompartmentImpl#getM_displayOption <em>Mdisplay Option</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGICompartmentImpl#getM_bShowInherited <em>MbShow Inherited</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGICompartmentImpl#getM_bOrdered <em>MbOrdered</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGICompartmentImpl#getItems <em>Items</em>}</li>
+ * </ul>
+ *
+ * @generated
+ */
+public class CGICompartmentImpl extends CompartmentsTypeImpl implements CGICompartment {
+	/**
+	 * The default value of the '{@link #getId() <em>Id</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getId()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String ID_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getId() <em>Id</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getId()
+	 * @generated
+	 * @ordered
+	 */
+	protected String id = ID_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getM_name() <em>Mname</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_name()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String MNAME_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getM_name() <em>Mname</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_name()
+	 * @generated
+	 * @ordered
+	 */
+	protected String m_name = MNAME_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getM_displayOption() <em>Mdisplay Option</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_displayOption()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String MDISPLAY_OPTION_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getM_displayOption() <em>Mdisplay Option</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_displayOption()
+	 * @generated
+	 * @ordered
+	 */
+	protected String m_displayOption = MDISPLAY_OPTION_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getM_bShowInherited() <em>MbShow Inherited</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_bShowInherited()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String MBSHOW_INHERITED_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getM_bShowInherited() <em>MbShow Inherited</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_bShowInherited()
+	 * @generated
+	 * @ordered
+	 */
+	protected String m_bShowInherited = MBSHOW_INHERITED_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getM_bOrdered() <em>MbOrdered</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_bOrdered()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String MBORDERED_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getM_bOrdered() <em>MbOrdered</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_bOrdered()
+	 * @generated
+	 * @ordered
+	 */
+	protected String m_bOrdered = MBORDERED_EDEFAULT;
+
+	/**
+	 * The cached value of the '{@link #getItems() <em>Items</em>}' reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getItems()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<ItemsType> items;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected CGICompartmentImpl() {
+		super();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EClass eStaticClass() {
+		return UMLRpyPackage.eINSTANCE.getCGICompartment();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getId() {
+		return id;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setId(String newId) {
+		String oldId = id;
+		id = newId;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_COMPARTMENT__ID, oldId, id));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getM_name() {
+		return m_name;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_name(String newM_name) {
+		String oldM_name = m_name;
+		m_name = newM_name;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_COMPARTMENT__MNAME, oldM_name, m_name));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getM_displayOption() {
+		return m_displayOption;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_displayOption(String newM_displayOption) {
+		String oldM_displayOption = m_displayOption;
+		m_displayOption = newM_displayOption;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_COMPARTMENT__MDISPLAY_OPTION, oldM_displayOption, m_displayOption));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getM_bShowInherited() {
+		return m_bShowInherited;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_bShowInherited(String newM_bShowInherited) {
+		String oldM_bShowInherited = m_bShowInherited;
+		m_bShowInherited = newM_bShowInherited;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_COMPARTMENT__MBSHOW_INHERITED, oldM_bShowInherited, m_bShowInherited));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getM_bOrdered() {
+		return m_bOrdered;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_bOrdered(String newM_bOrdered) {
+		String oldM_bOrdered = m_bOrdered;
+		m_bOrdered = newM_bOrdered;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_COMPARTMENT__MBORDERED, oldM_bOrdered, m_bOrdered));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<ItemsType> getItems() {
+		if (items == null) {
+			items = new EObjectResolvingEList<ItemsType>(ItemsType.class, this, UMLRpyPackage.CGI_COMPARTMENT__ITEMS);
+		}
+		return items;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object eGet(int featureID, boolean resolve, boolean coreType) {
+		switch (featureID) {
+			case UMLRpyPackage.CGI_COMPARTMENT__ID:
+				return getId();
+			case UMLRpyPackage.CGI_COMPARTMENT__MNAME:
+				return getM_name();
+			case UMLRpyPackage.CGI_COMPARTMENT__MDISPLAY_OPTION:
+				return getM_displayOption();
+			case UMLRpyPackage.CGI_COMPARTMENT__MBSHOW_INHERITED:
+				return getM_bShowInherited();
+			case UMLRpyPackage.CGI_COMPARTMENT__MBORDERED:
+				return getM_bOrdered();
+			case UMLRpyPackage.CGI_COMPARTMENT__ITEMS:
+				return getItems();
+		}
+		return super.eGet(featureID, resolve, coreType);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@SuppressWarnings("unchecked")
+	@Override
+	public void eSet(int featureID, Object newValue) {
+		switch (featureID) {
+			case UMLRpyPackage.CGI_COMPARTMENT__ID:
+				setId((String)newValue);
+				return;
+			case UMLRpyPackage.CGI_COMPARTMENT__MNAME:
+				setM_name((String)newValue);
+				return;
+			case UMLRpyPackage.CGI_COMPARTMENT__MDISPLAY_OPTION:
+				setM_displayOption((String)newValue);
+				return;
+			case UMLRpyPackage.CGI_COMPARTMENT__MBSHOW_INHERITED:
+				setM_bShowInherited((String)newValue);
+				return;
+			case UMLRpyPackage.CGI_COMPARTMENT__MBORDERED:
+				setM_bOrdered((String)newValue);
+				return;
+			case UMLRpyPackage.CGI_COMPARTMENT__ITEMS:
+				getItems().clear();
+				getItems().addAll((Collection<? extends ItemsType>)newValue);
+				return;
+		}
+		super.eSet(featureID, newValue);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void eUnset(int featureID) {
+		switch (featureID) {
+			case UMLRpyPackage.CGI_COMPARTMENT__ID:
+				setId(ID_EDEFAULT);
+				return;
+			case UMLRpyPackage.CGI_COMPARTMENT__MNAME:
+				setM_name(MNAME_EDEFAULT);
+				return;
+			case UMLRpyPackage.CGI_COMPARTMENT__MDISPLAY_OPTION:
+				setM_displayOption(MDISPLAY_OPTION_EDEFAULT);
+				return;
+			case UMLRpyPackage.CGI_COMPARTMENT__MBSHOW_INHERITED:
+				setM_bShowInherited(MBSHOW_INHERITED_EDEFAULT);
+				return;
+			case UMLRpyPackage.CGI_COMPARTMENT__MBORDERED:
+				setM_bOrdered(MBORDERED_EDEFAULT);
+				return;
+			case UMLRpyPackage.CGI_COMPARTMENT__ITEMS:
+				getItems().clear();
+				return;
+		}
+		super.eUnset(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public boolean eIsSet(int featureID) {
+		switch (featureID) {
+			case UMLRpyPackage.CGI_COMPARTMENT__ID:
+				return ID_EDEFAULT == null ? id != null : !ID_EDEFAULT.equals(id);
+			case UMLRpyPackage.CGI_COMPARTMENT__MNAME:
+				return MNAME_EDEFAULT == null ? m_name != null : !MNAME_EDEFAULT.equals(m_name);
+			case UMLRpyPackage.CGI_COMPARTMENT__MDISPLAY_OPTION:
+				return MDISPLAY_OPTION_EDEFAULT == null ? m_displayOption != null : !MDISPLAY_OPTION_EDEFAULT.equals(m_displayOption);
+			case UMLRpyPackage.CGI_COMPARTMENT__MBSHOW_INHERITED:
+				return MBSHOW_INHERITED_EDEFAULT == null ? m_bShowInherited != null : !MBSHOW_INHERITED_EDEFAULT.equals(m_bShowInherited);
+			case UMLRpyPackage.CGI_COMPARTMENT__MBORDERED:
+				return MBORDERED_EDEFAULT == null ? m_bOrdered != null : !MBORDERED_EDEFAULT.equals(m_bOrdered);
+			case UMLRpyPackage.CGI_COMPARTMENT__ITEMS:
+				return items != null && !items.isEmpty();
+		}
+		return super.eIsSet(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String toString() {
+		if (eIsProxy()) return super.toString();
+
+		StringBuffer result = new StringBuffer(super.toString());
+		result.append(" (id: "); //$NON-NLS-1$
+		result.append(id);
+		result.append(", m_name: "); //$NON-NLS-1$
+		result.append(m_name);
+		result.append(", m_displayOption: "); //$NON-NLS-1$
+		result.append(m_displayOption);
+		result.append(", m_bShowInherited: "); //$NON-NLS-1$
+		result.append(m_bShowInherited);
+		result.append(", m_bOrdered: "); //$NON-NLS-1$
+		result.append(m_bOrdered);
+		result.append(')');
+		return result.toString();
+	}
+
+} //CGICompartmentImpl
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/CGIComponentImpl.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/CGIComponentImpl.java
new file mode 100755
index 0000000..af9a1a0
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/CGIComponentImpl.java
@@ -0,0 +1,659 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl;
+
+import java.util.Collection;
+
+import org.eclipse.emf.common.notify.Notification;
+import org.eclipse.emf.common.notify.NotificationChain;
+
+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.EDataTypeEList;
+import org.eclipse.emf.ecore.util.EObjectResolvingEList;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIComponent;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIText;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.GraphElementsType;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IComponent;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IPropertyContainer;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UnknownType;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>CGI Component</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * </p>
+ * <ul>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIComponentImpl#getM_pModelObject <em>MpModel Object</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIComponentImpl#getM_pParent <em>MpParent</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIComponentImpl#getM_transform <em>Mtransform</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIComponentImpl#getM_polygon <em>Mpolygon</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIComponentImpl#getM_nNameFormat <em>MnName Format</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIComponentImpl#getM_nIsNameFormat <em>MnIs Name Format</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIComponentImpl#getCompartments <em>Compartments</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIComponentImpl#getProperties <em>Properties</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIComponentImpl#getM_AdditionalLabel <em>MAdditional Label</em>}</li>
+ * </ul>
+ *
+ * @generated
+ */
+public class CGIComponentImpl extends GraphElementsTypeImpl implements CGIComponent {
+	/**
+	 * The cached value of the '{@link #getM_pModelObject() <em>MpModel Object</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_pModelObject()
+	 * @generated
+	 * @ordered
+	 */
+	protected IComponent m_pModelObject;
+
+	/**
+	 * The cached value of the '{@link #getM_pParent() <em>MpParent</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_pParent()
+	 * @generated
+	 * @ordered
+	 */
+	protected GraphElementsType m_pParent;
+
+	/**
+	 * The cached value of the '{@link #getM_transform() <em>Mtransform</em>}' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_transform()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<String> m_transform;
+
+	/**
+	 * The cached value of the '{@link #getM_polygon() <em>Mpolygon</em>}' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_polygon()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<String> m_polygon;
+
+	/**
+	 * The default value of the '{@link #getM_nNameFormat() <em>MnName Format</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_nNameFormat()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String MNNAME_FORMAT_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getM_nNameFormat() <em>MnName Format</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_nNameFormat()
+	 * @generated
+	 * @ordered
+	 */
+	protected String m_nNameFormat = MNNAME_FORMAT_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getM_nIsNameFormat() <em>MnIs Name Format</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_nIsNameFormat()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String MNIS_NAME_FORMAT_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getM_nIsNameFormat() <em>MnIs Name Format</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_nIsNameFormat()
+	 * @generated
+	 * @ordered
+	 */
+	protected String m_nIsNameFormat = MNIS_NAME_FORMAT_EDEFAULT;
+
+	/**
+	 * The cached value of the '{@link #getCompartments() <em>Compartments</em>}' reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getCompartments()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<UnknownType> compartments;
+
+	/**
+	 * The cached value of the '{@link #getProperties() <em>Properties</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getProperties()
+	 * @generated
+	 * @ordered
+	 */
+	protected IPropertyContainer properties;
+
+	/**
+	 * The cached value of the '{@link #getM_AdditionalLabel() <em>MAdditional Label</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_AdditionalLabel()
+	 * @generated
+	 * @ordered
+	 */
+	protected CGIText m_AdditionalLabel;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected CGIComponentImpl() {
+		super();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EClass eStaticClass() {
+		return UMLRpyPackage.eINSTANCE.getCGIComponent();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IComponent getM_pModelObject() {
+		if (m_pModelObject != null && m_pModelObject.eIsProxy()) {
+			InternalEObject oldM_pModelObject = (InternalEObject)m_pModelObject;
+			m_pModelObject = (IComponent)eResolveProxy(oldM_pModelObject);
+			if (m_pModelObject != oldM_pModelObject) {
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.CGI_COMPONENT__MPMODEL_OBJECT, oldM_pModelObject, m_pModelObject));
+			}
+		}
+		return m_pModelObject;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IComponent basicGetM_pModelObject() {
+		return m_pModelObject;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_pModelObject(IComponent newM_pModelObject) {
+		IComponent oldM_pModelObject = m_pModelObject;
+		m_pModelObject = newM_pModelObject;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_COMPONENT__MPMODEL_OBJECT, oldM_pModelObject, m_pModelObject));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public GraphElementsType getM_pParent() {
+		if (m_pParent != null && m_pParent.eIsProxy()) {
+			InternalEObject oldM_pParent = (InternalEObject)m_pParent;
+			m_pParent = (GraphElementsType)eResolveProxy(oldM_pParent);
+			if (m_pParent != oldM_pParent) {
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.CGI_COMPONENT__MPPARENT, oldM_pParent, m_pParent));
+			}
+		}
+		return m_pParent;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public GraphElementsType basicGetM_pParent() {
+		return m_pParent;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_pParent(GraphElementsType newM_pParent) {
+		GraphElementsType oldM_pParent = m_pParent;
+		m_pParent = newM_pParent;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_COMPONENT__MPPARENT, oldM_pParent, m_pParent));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<String> getM_transform() {
+		if (m_transform == null) {
+			m_transform = new EDataTypeEList<String>(String.class, this, UMLRpyPackage.CGI_COMPONENT__MTRANSFORM);
+		}
+		return m_transform;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<String> getM_polygon() {
+		if (m_polygon == null) {
+			m_polygon = new EDataTypeEList<String>(String.class, this, UMLRpyPackage.CGI_COMPONENT__MPOLYGON);
+		}
+		return m_polygon;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getM_nNameFormat() {
+		return m_nNameFormat;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_nNameFormat(String newM_nNameFormat) {
+		String oldM_nNameFormat = m_nNameFormat;
+		m_nNameFormat = newM_nNameFormat;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_COMPONENT__MNNAME_FORMAT, oldM_nNameFormat, m_nNameFormat));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getM_nIsNameFormat() {
+		return m_nIsNameFormat;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_nIsNameFormat(String newM_nIsNameFormat) {
+		String oldM_nIsNameFormat = m_nIsNameFormat;
+		m_nIsNameFormat = newM_nIsNameFormat;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_COMPONENT__MNIS_NAME_FORMAT, oldM_nIsNameFormat, m_nIsNameFormat));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<UnknownType> getCompartments() {
+		if (compartments == null) {
+			compartments = new EObjectResolvingEList<UnknownType>(UnknownType.class, this, UMLRpyPackage.CGI_COMPONENT__COMPARTMENTS);
+		}
+		return compartments;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IPropertyContainer getProperties() {
+		if (properties != null && properties.eIsProxy()) {
+			InternalEObject oldProperties = (InternalEObject)properties;
+			properties = (IPropertyContainer)eResolveProxy(oldProperties);
+			if (properties != oldProperties) {
+				InternalEObject newProperties = (InternalEObject)properties;
+				NotificationChain msgs = oldProperties.eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.CGI_COMPONENT__PROPERTIES, null, null);
+				if (newProperties.eInternalContainer() == null) {
+					msgs = newProperties.eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.CGI_COMPONENT__PROPERTIES, null, msgs);
+				}
+				if (msgs != null) msgs.dispatch();
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.CGI_COMPONENT__PROPERTIES, oldProperties, properties));
+			}
+		}
+		return properties;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IPropertyContainer basicGetProperties() {
+		return properties;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public NotificationChain basicSetProperties(IPropertyContainer newProperties, NotificationChain msgs) {
+		IPropertyContainer oldProperties = properties;
+		properties = newProperties;
+		if (eNotificationRequired()) {
+			ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_COMPONENT__PROPERTIES, oldProperties, newProperties);
+			if (msgs == null) msgs = notification; else msgs.add(notification);
+		}
+		return msgs;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setProperties(IPropertyContainer newProperties) {
+		if (newProperties != properties) {
+			NotificationChain msgs = null;
+			if (properties != null)
+				msgs = ((InternalEObject)properties).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.CGI_COMPONENT__PROPERTIES, null, msgs);
+			if (newProperties != null)
+				msgs = ((InternalEObject)newProperties).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.CGI_COMPONENT__PROPERTIES, null, msgs);
+			msgs = basicSetProperties(newProperties, msgs);
+			if (msgs != null) msgs.dispatch();
+		}
+		else if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_COMPONENT__PROPERTIES, newProperties, newProperties));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public CGIText getM_AdditionalLabel() {
+		if (m_AdditionalLabel != null && m_AdditionalLabel.eIsProxy()) {
+			InternalEObject oldM_AdditionalLabel = (InternalEObject)m_AdditionalLabel;
+			m_AdditionalLabel = (CGIText)eResolveProxy(oldM_AdditionalLabel);
+			if (m_AdditionalLabel != oldM_AdditionalLabel) {
+				InternalEObject newM_AdditionalLabel = (InternalEObject)m_AdditionalLabel;
+				NotificationChain msgs = oldM_AdditionalLabel.eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.CGI_COMPONENT__MADDITIONAL_LABEL, null, null);
+				if (newM_AdditionalLabel.eInternalContainer() == null) {
+					msgs = newM_AdditionalLabel.eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.CGI_COMPONENT__MADDITIONAL_LABEL, null, msgs);
+				}
+				if (msgs != null) msgs.dispatch();
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.CGI_COMPONENT__MADDITIONAL_LABEL, oldM_AdditionalLabel, m_AdditionalLabel));
+			}
+		}
+		return m_AdditionalLabel;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public CGIText basicGetM_AdditionalLabel() {
+		return m_AdditionalLabel;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public NotificationChain basicSetM_AdditionalLabel(CGIText newM_AdditionalLabel, NotificationChain msgs) {
+		CGIText oldM_AdditionalLabel = m_AdditionalLabel;
+		m_AdditionalLabel = newM_AdditionalLabel;
+		if (eNotificationRequired()) {
+			ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_COMPONENT__MADDITIONAL_LABEL, oldM_AdditionalLabel, newM_AdditionalLabel);
+			if (msgs == null) msgs = notification; else msgs.add(notification);
+		}
+		return msgs;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_AdditionalLabel(CGIText newM_AdditionalLabel) {
+		if (newM_AdditionalLabel != m_AdditionalLabel) {
+			NotificationChain msgs = null;
+			if (m_AdditionalLabel != null)
+				msgs = ((InternalEObject)m_AdditionalLabel).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.CGI_COMPONENT__MADDITIONAL_LABEL, null, msgs);
+			if (newM_AdditionalLabel != null)
+				msgs = ((InternalEObject)newM_AdditionalLabel).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.CGI_COMPONENT__MADDITIONAL_LABEL, null, msgs);
+			msgs = basicSetM_AdditionalLabel(newM_AdditionalLabel, msgs);
+			if (msgs != null) msgs.dispatch();
+		}
+		else if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_COMPONENT__MADDITIONAL_LABEL, newM_AdditionalLabel, newM_AdditionalLabel));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
+		switch (featureID) {
+			case UMLRpyPackage.CGI_COMPONENT__PROPERTIES:
+				return basicSetProperties(null, msgs);
+			case UMLRpyPackage.CGI_COMPONENT__MADDITIONAL_LABEL:
+				return basicSetM_AdditionalLabel(null, msgs);
+		}
+		return super.eInverseRemove(otherEnd, featureID, msgs);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object eGet(int featureID, boolean resolve, boolean coreType) {
+		switch (featureID) {
+			case UMLRpyPackage.CGI_COMPONENT__MPMODEL_OBJECT:
+				if (resolve) return getM_pModelObject();
+				return basicGetM_pModelObject();
+			case UMLRpyPackage.CGI_COMPONENT__MPPARENT:
+				if (resolve) return getM_pParent();
+				return basicGetM_pParent();
+			case UMLRpyPackage.CGI_COMPONENT__MTRANSFORM:
+				return getM_transform();
+			case UMLRpyPackage.CGI_COMPONENT__MPOLYGON:
+				return getM_polygon();
+			case UMLRpyPackage.CGI_COMPONENT__MNNAME_FORMAT:
+				return getM_nNameFormat();
+			case UMLRpyPackage.CGI_COMPONENT__MNIS_NAME_FORMAT:
+				return getM_nIsNameFormat();
+			case UMLRpyPackage.CGI_COMPONENT__COMPARTMENTS:
+				return getCompartments();
+			case UMLRpyPackage.CGI_COMPONENT__PROPERTIES:
+				if (resolve) return getProperties();
+				return basicGetProperties();
+			case UMLRpyPackage.CGI_COMPONENT__MADDITIONAL_LABEL:
+				if (resolve) return getM_AdditionalLabel();
+				return basicGetM_AdditionalLabel();
+		}
+		return super.eGet(featureID, resolve, coreType);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@SuppressWarnings("unchecked")
+	@Override
+	public void eSet(int featureID, Object newValue) {
+		switch (featureID) {
+			case UMLRpyPackage.CGI_COMPONENT__MPMODEL_OBJECT:
+				setM_pModelObject((IComponent)newValue);
+				return;
+			case UMLRpyPackage.CGI_COMPONENT__MPPARENT:
+				setM_pParent((GraphElementsType)newValue);
+				return;
+			case UMLRpyPackage.CGI_COMPONENT__MTRANSFORM:
+				getM_transform().clear();
+				getM_transform().addAll((Collection<? extends String>)newValue);
+				return;
+			case UMLRpyPackage.CGI_COMPONENT__MPOLYGON:
+				getM_polygon().clear();
+				getM_polygon().addAll((Collection<? extends String>)newValue);
+				return;
+			case UMLRpyPackage.CGI_COMPONENT__MNNAME_FORMAT:
+				setM_nNameFormat((String)newValue);
+				return;
+			case UMLRpyPackage.CGI_COMPONENT__MNIS_NAME_FORMAT:
+				setM_nIsNameFormat((String)newValue);
+				return;
+			case UMLRpyPackage.CGI_COMPONENT__COMPARTMENTS:
+				getCompartments().clear();
+				getCompartments().addAll((Collection<? extends UnknownType>)newValue);
+				return;
+			case UMLRpyPackage.CGI_COMPONENT__PROPERTIES:
+				setProperties((IPropertyContainer)newValue);
+				return;
+			case UMLRpyPackage.CGI_COMPONENT__MADDITIONAL_LABEL:
+				setM_AdditionalLabel((CGIText)newValue);
+				return;
+		}
+		super.eSet(featureID, newValue);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void eUnset(int featureID) {
+		switch (featureID) {
+			case UMLRpyPackage.CGI_COMPONENT__MPMODEL_OBJECT:
+				setM_pModelObject((IComponent)null);
+				return;
+			case UMLRpyPackage.CGI_COMPONENT__MPPARENT:
+				setM_pParent((GraphElementsType)null);
+				return;
+			case UMLRpyPackage.CGI_COMPONENT__MTRANSFORM:
+				getM_transform().clear();
+				return;
+			case UMLRpyPackage.CGI_COMPONENT__MPOLYGON:
+				getM_polygon().clear();
+				return;
+			case UMLRpyPackage.CGI_COMPONENT__MNNAME_FORMAT:
+				setM_nNameFormat(MNNAME_FORMAT_EDEFAULT);
+				return;
+			case UMLRpyPackage.CGI_COMPONENT__MNIS_NAME_FORMAT:
+				setM_nIsNameFormat(MNIS_NAME_FORMAT_EDEFAULT);
+				return;
+			case UMLRpyPackage.CGI_COMPONENT__COMPARTMENTS:
+				getCompartments().clear();
+				return;
+			case UMLRpyPackage.CGI_COMPONENT__PROPERTIES:
+				setProperties((IPropertyContainer)null);
+				return;
+			case UMLRpyPackage.CGI_COMPONENT__MADDITIONAL_LABEL:
+				setM_AdditionalLabel((CGIText)null);
+				return;
+		}
+		super.eUnset(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public boolean eIsSet(int featureID) {
+		switch (featureID) {
+			case UMLRpyPackage.CGI_COMPONENT__MPMODEL_OBJECT:
+				return m_pModelObject != null;
+			case UMLRpyPackage.CGI_COMPONENT__MPPARENT:
+				return m_pParent != null;
+			case UMLRpyPackage.CGI_COMPONENT__MTRANSFORM:
+				return m_transform != null && !m_transform.isEmpty();
+			case UMLRpyPackage.CGI_COMPONENT__MPOLYGON:
+				return m_polygon != null && !m_polygon.isEmpty();
+			case UMLRpyPackage.CGI_COMPONENT__MNNAME_FORMAT:
+				return MNNAME_FORMAT_EDEFAULT == null ? m_nNameFormat != null : !MNNAME_FORMAT_EDEFAULT.equals(m_nNameFormat);
+			case UMLRpyPackage.CGI_COMPONENT__MNIS_NAME_FORMAT:
+				return MNIS_NAME_FORMAT_EDEFAULT == null ? m_nIsNameFormat != null : !MNIS_NAME_FORMAT_EDEFAULT.equals(m_nIsNameFormat);
+			case UMLRpyPackage.CGI_COMPONENT__COMPARTMENTS:
+				return compartments != null && !compartments.isEmpty();
+			case UMLRpyPackage.CGI_COMPONENT__PROPERTIES:
+				return properties != null;
+			case UMLRpyPackage.CGI_COMPONENT__MADDITIONAL_LABEL:
+				return m_AdditionalLabel != null;
+		}
+		return super.eIsSet(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String toString() {
+		if (eIsProxy()) return super.toString();
+
+		StringBuffer result = new StringBuffer(super.toString());
+		result.append(" (m_transform: "); //$NON-NLS-1$
+		result.append(m_transform);
+		result.append(", m_polygon: "); //$NON-NLS-1$
+		result.append(m_polygon);
+		result.append(", m_nNameFormat: "); //$NON-NLS-1$
+		result.append(m_nNameFormat);
+		result.append(", m_nIsNameFormat: "); //$NON-NLS-1$
+		result.append(m_nIsNameFormat);
+		result.append(')');
+		return result.toString();
+	}
+
+} //CGIComponentImpl
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/CGICompositeClassImpl.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/CGICompositeClassImpl.java
new file mode 100755
index 0000000..1396cae
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/CGICompositeClassImpl.java
@@ -0,0 +1,761 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl;
+
+import java.util.Collection;
+
+import org.eclipse.emf.common.notify.Notification;
+import org.eclipse.emf.common.notify.NotificationChain;
+
+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.EDataTypeEList;
+import org.eclipse.emf.ecore.util.EObjectResolvingEList;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGICompositeClass;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIText;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IClassifier;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IColor;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IPropertyContainer;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UnknownType;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>CGI Composite Class</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * </p>
+ * <ul>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGICompositeClassImpl#getM_pModelObject <em>MpModel Object</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGICompositeClassImpl#getM_pParent <em>MpParent</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGICompositeClassImpl#getM_AdditionalLabel <em>MAdditional Label</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGICompositeClassImpl#getM_polygon <em>Mpolygon</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGICompositeClassImpl#getM_nNameFormat <em>MnName Format</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGICompositeClassImpl#getM_nIsNameFormat <em>MnIs Name Format</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGICompositeClassImpl#getCompartments <em>Compartments</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGICompositeClassImpl#getProperties <em>Properties</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGICompositeClassImpl#getM_color <em>Mcolor</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGICompositeClassImpl#getM_lineWidth <em>Mline Width</em>}</li>
+ * </ul>
+ *
+ * @generated
+ */
+public class CGICompositeClassImpl extends GraphElementsTypeImpl implements CGICompositeClass {
+	/**
+	 * The cached value of the '{@link #getM_pModelObject() <em>MpModel Object</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_pModelObject()
+	 * @generated
+	 * @ordered
+	 */
+	protected IClassifier m_pModelObject;
+
+	/**
+	 * The default value of the '{@link #getM_pParent() <em>MpParent</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_pParent()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String MPPARENT_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getM_pParent() <em>MpParent</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_pParent()
+	 * @generated
+	 * @ordered
+	 */
+	protected String m_pParent = MPPARENT_EDEFAULT;
+
+	/**
+	 * The cached value of the '{@link #getM_AdditionalLabel() <em>MAdditional Label</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_AdditionalLabel()
+	 * @generated
+	 * @ordered
+	 */
+	protected CGIText m_AdditionalLabel;
+
+	/**
+	 * The cached value of the '{@link #getM_polygon() <em>Mpolygon</em>}' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_polygon()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<String> m_polygon;
+
+	/**
+	 * The default value of the '{@link #getM_nNameFormat() <em>MnName Format</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_nNameFormat()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String MNNAME_FORMAT_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getM_nNameFormat() <em>MnName Format</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_nNameFormat()
+	 * @generated
+	 * @ordered
+	 */
+	protected String m_nNameFormat = MNNAME_FORMAT_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getM_nIsNameFormat() <em>MnIs Name Format</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_nIsNameFormat()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String MNIS_NAME_FORMAT_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getM_nIsNameFormat() <em>MnIs Name Format</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_nIsNameFormat()
+	 * @generated
+	 * @ordered
+	 */
+	protected String m_nIsNameFormat = MNIS_NAME_FORMAT_EDEFAULT;
+
+	/**
+	 * The cached value of the '{@link #getCompartments() <em>Compartments</em>}' reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getCompartments()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<UnknownType> compartments;
+
+	/**
+	 * The cached value of the '{@link #getProperties() <em>Properties</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getProperties()
+	 * @generated
+	 * @ordered
+	 */
+	protected IPropertyContainer properties;
+
+	/**
+	 * The cached value of the '{@link #getM_color() <em>Mcolor</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_color()
+	 * @generated
+	 * @ordered
+	 */
+	protected IColor m_color;
+
+	/**
+	 * The default value of the '{@link #getM_lineWidth() <em>Mline Width</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_lineWidth()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String MLINE_WIDTH_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getM_lineWidth() <em>Mline Width</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_lineWidth()
+	 * @generated
+	 * @ordered
+	 */
+	protected String m_lineWidth = MLINE_WIDTH_EDEFAULT;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected CGICompositeClassImpl() {
+		super();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EClass eStaticClass() {
+		return UMLRpyPackage.eINSTANCE.getCGICompositeClass();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IClassifier getM_pModelObject() {
+		if (m_pModelObject != null && m_pModelObject.eIsProxy()) {
+			InternalEObject oldM_pModelObject = (InternalEObject)m_pModelObject;
+			m_pModelObject = (IClassifier)eResolveProxy(oldM_pModelObject);
+			if (m_pModelObject != oldM_pModelObject) {
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.CGI_COMPOSITE_CLASS__MPMODEL_OBJECT, oldM_pModelObject, m_pModelObject));
+			}
+		}
+		return m_pModelObject;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IClassifier basicGetM_pModelObject() {
+		return m_pModelObject;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_pModelObject(IClassifier newM_pModelObject) {
+		IClassifier oldM_pModelObject = m_pModelObject;
+		m_pModelObject = newM_pModelObject;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_COMPOSITE_CLASS__MPMODEL_OBJECT, oldM_pModelObject, m_pModelObject));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getM_pParent() {
+		return m_pParent;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_pParent(String newM_pParent) {
+		String oldM_pParent = m_pParent;
+		m_pParent = newM_pParent;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_COMPOSITE_CLASS__MPPARENT, oldM_pParent, m_pParent));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public CGIText getM_AdditionalLabel() {
+		if (m_AdditionalLabel != null && m_AdditionalLabel.eIsProxy()) {
+			InternalEObject oldM_AdditionalLabel = (InternalEObject)m_AdditionalLabel;
+			m_AdditionalLabel = (CGIText)eResolveProxy(oldM_AdditionalLabel);
+			if (m_AdditionalLabel != oldM_AdditionalLabel) {
+				InternalEObject newM_AdditionalLabel = (InternalEObject)m_AdditionalLabel;
+				NotificationChain msgs = oldM_AdditionalLabel.eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.CGI_COMPOSITE_CLASS__MADDITIONAL_LABEL, null, null);
+				if (newM_AdditionalLabel.eInternalContainer() == null) {
+					msgs = newM_AdditionalLabel.eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.CGI_COMPOSITE_CLASS__MADDITIONAL_LABEL, null, msgs);
+				}
+				if (msgs != null) msgs.dispatch();
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.CGI_COMPOSITE_CLASS__MADDITIONAL_LABEL, oldM_AdditionalLabel, m_AdditionalLabel));
+			}
+		}
+		return m_AdditionalLabel;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public CGIText basicGetM_AdditionalLabel() {
+		return m_AdditionalLabel;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public NotificationChain basicSetM_AdditionalLabel(CGIText newM_AdditionalLabel, NotificationChain msgs) {
+		CGIText oldM_AdditionalLabel = m_AdditionalLabel;
+		m_AdditionalLabel = newM_AdditionalLabel;
+		if (eNotificationRequired()) {
+			ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_COMPOSITE_CLASS__MADDITIONAL_LABEL, oldM_AdditionalLabel, newM_AdditionalLabel);
+			if (msgs == null) msgs = notification; else msgs.add(notification);
+		}
+		return msgs;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_AdditionalLabel(CGIText newM_AdditionalLabel) {
+		if (newM_AdditionalLabel != m_AdditionalLabel) {
+			NotificationChain msgs = null;
+			if (m_AdditionalLabel != null)
+				msgs = ((InternalEObject)m_AdditionalLabel).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.CGI_COMPOSITE_CLASS__MADDITIONAL_LABEL, null, msgs);
+			if (newM_AdditionalLabel != null)
+				msgs = ((InternalEObject)newM_AdditionalLabel).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.CGI_COMPOSITE_CLASS__MADDITIONAL_LABEL, null, msgs);
+			msgs = basicSetM_AdditionalLabel(newM_AdditionalLabel, msgs);
+			if (msgs != null) msgs.dispatch();
+		}
+		else if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_COMPOSITE_CLASS__MADDITIONAL_LABEL, newM_AdditionalLabel, newM_AdditionalLabel));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<String> getM_polygon() {
+		if (m_polygon == null) {
+			m_polygon = new EDataTypeEList<String>(String.class, this, UMLRpyPackage.CGI_COMPOSITE_CLASS__MPOLYGON);
+		}
+		return m_polygon;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getM_nNameFormat() {
+		return m_nNameFormat;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_nNameFormat(String newM_nNameFormat) {
+		String oldM_nNameFormat = m_nNameFormat;
+		m_nNameFormat = newM_nNameFormat;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_COMPOSITE_CLASS__MNNAME_FORMAT, oldM_nNameFormat, m_nNameFormat));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getM_nIsNameFormat() {
+		return m_nIsNameFormat;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_nIsNameFormat(String newM_nIsNameFormat) {
+		String oldM_nIsNameFormat = m_nIsNameFormat;
+		m_nIsNameFormat = newM_nIsNameFormat;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_COMPOSITE_CLASS__MNIS_NAME_FORMAT, oldM_nIsNameFormat, m_nIsNameFormat));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<UnknownType> getCompartments() {
+		if (compartments == null) {
+			compartments = new EObjectResolvingEList<UnknownType>(UnknownType.class, this, UMLRpyPackage.CGI_COMPOSITE_CLASS__COMPARTMENTS);
+		}
+		return compartments;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IPropertyContainer getProperties() {
+		if (properties != null && properties.eIsProxy()) {
+			InternalEObject oldProperties = (InternalEObject)properties;
+			properties = (IPropertyContainer)eResolveProxy(oldProperties);
+			if (properties != oldProperties) {
+				InternalEObject newProperties = (InternalEObject)properties;
+				NotificationChain msgs = oldProperties.eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.CGI_COMPOSITE_CLASS__PROPERTIES, null, null);
+				if (newProperties.eInternalContainer() == null) {
+					msgs = newProperties.eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.CGI_COMPOSITE_CLASS__PROPERTIES, null, msgs);
+				}
+				if (msgs != null) msgs.dispatch();
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.CGI_COMPOSITE_CLASS__PROPERTIES, oldProperties, properties));
+			}
+		}
+		return properties;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IPropertyContainer basicGetProperties() {
+		return properties;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public NotificationChain basicSetProperties(IPropertyContainer newProperties, NotificationChain msgs) {
+		IPropertyContainer oldProperties = properties;
+		properties = newProperties;
+		if (eNotificationRequired()) {
+			ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_COMPOSITE_CLASS__PROPERTIES, oldProperties, newProperties);
+			if (msgs == null) msgs = notification; else msgs.add(notification);
+		}
+		return msgs;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setProperties(IPropertyContainer newProperties) {
+		if (newProperties != properties) {
+			NotificationChain msgs = null;
+			if (properties != null)
+				msgs = ((InternalEObject)properties).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.CGI_COMPOSITE_CLASS__PROPERTIES, null, msgs);
+			if (newProperties != null)
+				msgs = ((InternalEObject)newProperties).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.CGI_COMPOSITE_CLASS__PROPERTIES, null, msgs);
+			msgs = basicSetProperties(newProperties, msgs);
+			if (msgs != null) msgs.dispatch();
+		}
+		else if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_COMPOSITE_CLASS__PROPERTIES, newProperties, newProperties));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IColor getM_color() {
+		if (m_color != null && m_color.eIsProxy()) {
+			InternalEObject oldM_color = (InternalEObject)m_color;
+			m_color = (IColor)eResolveProxy(oldM_color);
+			if (m_color != oldM_color) {
+				InternalEObject newM_color = (InternalEObject)m_color;
+				NotificationChain msgs = oldM_color.eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.CGI_COMPOSITE_CLASS__MCOLOR, null, null);
+				if (newM_color.eInternalContainer() == null) {
+					msgs = newM_color.eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.CGI_COMPOSITE_CLASS__MCOLOR, null, msgs);
+				}
+				if (msgs != null) msgs.dispatch();
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.CGI_COMPOSITE_CLASS__MCOLOR, oldM_color, m_color));
+			}
+		}
+		return m_color;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IColor basicGetM_color() {
+		return m_color;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public NotificationChain basicSetM_color(IColor newM_color, NotificationChain msgs) {
+		IColor oldM_color = m_color;
+		m_color = newM_color;
+		if (eNotificationRequired()) {
+			ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_COMPOSITE_CLASS__MCOLOR, oldM_color, newM_color);
+			if (msgs == null) msgs = notification; else msgs.add(notification);
+		}
+		return msgs;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_color(IColor newM_color) {
+		if (newM_color != m_color) {
+			NotificationChain msgs = null;
+			if (m_color != null)
+				msgs = ((InternalEObject)m_color).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.CGI_COMPOSITE_CLASS__MCOLOR, null, msgs);
+			if (newM_color != null)
+				msgs = ((InternalEObject)newM_color).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.CGI_COMPOSITE_CLASS__MCOLOR, null, msgs);
+			msgs = basicSetM_color(newM_color, msgs);
+			if (msgs != null) msgs.dispatch();
+		}
+		else if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_COMPOSITE_CLASS__MCOLOR, newM_color, newM_color));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getM_lineWidth() {
+		return m_lineWidth;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_lineWidth(String newM_lineWidth) {
+		String oldM_lineWidth = m_lineWidth;
+		m_lineWidth = newM_lineWidth;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_COMPOSITE_CLASS__MLINE_WIDTH, oldM_lineWidth, m_lineWidth));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
+		switch (featureID) {
+			case UMLRpyPackage.CGI_COMPOSITE_CLASS__MADDITIONAL_LABEL:
+				return basicSetM_AdditionalLabel(null, msgs);
+			case UMLRpyPackage.CGI_COMPOSITE_CLASS__PROPERTIES:
+				return basicSetProperties(null, msgs);
+			case UMLRpyPackage.CGI_COMPOSITE_CLASS__MCOLOR:
+				return basicSetM_color(null, msgs);
+		}
+		return super.eInverseRemove(otherEnd, featureID, msgs);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object eGet(int featureID, boolean resolve, boolean coreType) {
+		switch (featureID) {
+			case UMLRpyPackage.CGI_COMPOSITE_CLASS__MPMODEL_OBJECT:
+				if (resolve) return getM_pModelObject();
+				return basicGetM_pModelObject();
+			case UMLRpyPackage.CGI_COMPOSITE_CLASS__MPPARENT:
+				return getM_pParent();
+			case UMLRpyPackage.CGI_COMPOSITE_CLASS__MADDITIONAL_LABEL:
+				if (resolve) return getM_AdditionalLabel();
+				return basicGetM_AdditionalLabel();
+			case UMLRpyPackage.CGI_COMPOSITE_CLASS__MPOLYGON:
+				return getM_polygon();
+			case UMLRpyPackage.CGI_COMPOSITE_CLASS__MNNAME_FORMAT:
+				return getM_nNameFormat();
+			case UMLRpyPackage.CGI_COMPOSITE_CLASS__MNIS_NAME_FORMAT:
+				return getM_nIsNameFormat();
+			case UMLRpyPackage.CGI_COMPOSITE_CLASS__COMPARTMENTS:
+				return getCompartments();
+			case UMLRpyPackage.CGI_COMPOSITE_CLASS__PROPERTIES:
+				if (resolve) return getProperties();
+				return basicGetProperties();
+			case UMLRpyPackage.CGI_COMPOSITE_CLASS__MCOLOR:
+				if (resolve) return getM_color();
+				return basicGetM_color();
+			case UMLRpyPackage.CGI_COMPOSITE_CLASS__MLINE_WIDTH:
+				return getM_lineWidth();
+		}
+		return super.eGet(featureID, resolve, coreType);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@SuppressWarnings("unchecked")
+	@Override
+	public void eSet(int featureID, Object newValue) {
+		switch (featureID) {
+			case UMLRpyPackage.CGI_COMPOSITE_CLASS__MPMODEL_OBJECT:
+				setM_pModelObject((IClassifier)newValue);
+				return;
+			case UMLRpyPackage.CGI_COMPOSITE_CLASS__MPPARENT:
+				setM_pParent((String)newValue);
+				return;
+			case UMLRpyPackage.CGI_COMPOSITE_CLASS__MADDITIONAL_LABEL:
+				setM_AdditionalLabel((CGIText)newValue);
+				return;
+			case UMLRpyPackage.CGI_COMPOSITE_CLASS__MPOLYGON:
+				getM_polygon().clear();
+				getM_polygon().addAll((Collection<? extends String>)newValue);
+				return;
+			case UMLRpyPackage.CGI_COMPOSITE_CLASS__MNNAME_FORMAT:
+				setM_nNameFormat((String)newValue);
+				return;
+			case UMLRpyPackage.CGI_COMPOSITE_CLASS__MNIS_NAME_FORMAT:
+				setM_nIsNameFormat((String)newValue);
+				return;
+			case UMLRpyPackage.CGI_COMPOSITE_CLASS__COMPARTMENTS:
+				getCompartments().clear();
+				getCompartments().addAll((Collection<? extends UnknownType>)newValue);
+				return;
+			case UMLRpyPackage.CGI_COMPOSITE_CLASS__PROPERTIES:
+				setProperties((IPropertyContainer)newValue);
+				return;
+			case UMLRpyPackage.CGI_COMPOSITE_CLASS__MCOLOR:
+				setM_color((IColor)newValue);
+				return;
+			case UMLRpyPackage.CGI_COMPOSITE_CLASS__MLINE_WIDTH:
+				setM_lineWidth((String)newValue);
+				return;
+		}
+		super.eSet(featureID, newValue);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void eUnset(int featureID) {
+		switch (featureID) {
+			case UMLRpyPackage.CGI_COMPOSITE_CLASS__MPMODEL_OBJECT:
+				setM_pModelObject((IClassifier)null);
+				return;
+			case UMLRpyPackage.CGI_COMPOSITE_CLASS__MPPARENT:
+				setM_pParent(MPPARENT_EDEFAULT);
+				return;
+			case UMLRpyPackage.CGI_COMPOSITE_CLASS__MADDITIONAL_LABEL:
+				setM_AdditionalLabel((CGIText)null);
+				return;
+			case UMLRpyPackage.CGI_COMPOSITE_CLASS__MPOLYGON:
+				getM_polygon().clear();
+				return;
+			case UMLRpyPackage.CGI_COMPOSITE_CLASS__MNNAME_FORMAT:
+				setM_nNameFormat(MNNAME_FORMAT_EDEFAULT);
+				return;
+			case UMLRpyPackage.CGI_COMPOSITE_CLASS__MNIS_NAME_FORMAT:
+				setM_nIsNameFormat(MNIS_NAME_FORMAT_EDEFAULT);
+				return;
+			case UMLRpyPackage.CGI_COMPOSITE_CLASS__COMPARTMENTS:
+				getCompartments().clear();
+				return;
+			case UMLRpyPackage.CGI_COMPOSITE_CLASS__PROPERTIES:
+				setProperties((IPropertyContainer)null);
+				return;
+			case UMLRpyPackage.CGI_COMPOSITE_CLASS__MCOLOR:
+				setM_color((IColor)null);
+				return;
+			case UMLRpyPackage.CGI_COMPOSITE_CLASS__MLINE_WIDTH:
+				setM_lineWidth(MLINE_WIDTH_EDEFAULT);
+				return;
+		}
+		super.eUnset(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public boolean eIsSet(int featureID) {
+		switch (featureID) {
+			case UMLRpyPackage.CGI_COMPOSITE_CLASS__MPMODEL_OBJECT:
+				return m_pModelObject != null;
+			case UMLRpyPackage.CGI_COMPOSITE_CLASS__MPPARENT:
+				return MPPARENT_EDEFAULT == null ? m_pParent != null : !MPPARENT_EDEFAULT.equals(m_pParent);
+			case UMLRpyPackage.CGI_COMPOSITE_CLASS__MADDITIONAL_LABEL:
+				return m_AdditionalLabel != null;
+			case UMLRpyPackage.CGI_COMPOSITE_CLASS__MPOLYGON:
+				return m_polygon != null && !m_polygon.isEmpty();
+			case UMLRpyPackage.CGI_COMPOSITE_CLASS__MNNAME_FORMAT:
+				return MNNAME_FORMAT_EDEFAULT == null ? m_nNameFormat != null : !MNNAME_FORMAT_EDEFAULT.equals(m_nNameFormat);
+			case UMLRpyPackage.CGI_COMPOSITE_CLASS__MNIS_NAME_FORMAT:
+				return MNIS_NAME_FORMAT_EDEFAULT == null ? m_nIsNameFormat != null : !MNIS_NAME_FORMAT_EDEFAULT.equals(m_nIsNameFormat);
+			case UMLRpyPackage.CGI_COMPOSITE_CLASS__COMPARTMENTS:
+				return compartments != null && !compartments.isEmpty();
+			case UMLRpyPackage.CGI_COMPOSITE_CLASS__PROPERTIES:
+				return properties != null;
+			case UMLRpyPackage.CGI_COMPOSITE_CLASS__MCOLOR:
+				return m_color != null;
+			case UMLRpyPackage.CGI_COMPOSITE_CLASS__MLINE_WIDTH:
+				return MLINE_WIDTH_EDEFAULT == null ? m_lineWidth != null : !MLINE_WIDTH_EDEFAULT.equals(m_lineWidth);
+		}
+		return super.eIsSet(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String toString() {
+		if (eIsProxy()) return super.toString();
+
+		StringBuffer result = new StringBuffer(super.toString());
+		result.append(" (m_pParent: "); //$NON-NLS-1$
+		result.append(m_pParent);
+		result.append(", m_polygon: "); //$NON-NLS-1$
+		result.append(m_polygon);
+		result.append(", m_nNameFormat: "); //$NON-NLS-1$
+		result.append(m_nNameFormat);
+		result.append(", m_nIsNameFormat: "); //$NON-NLS-1$
+		result.append(m_nIsNameFormat);
+		result.append(", m_lineWidth: "); //$NON-NLS-1$
+		result.append(m_lineWidth);
+		result.append(')');
+		return result.toString();
+	}
+
+} //CGICompositeClassImpl
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/CGIConnectorImpl.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/CGIConnectorImpl.java
new file mode 100755
index 0000000..ac8a8bf
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/CGIConnectorImpl.java
@@ -0,0 +1,737 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl;
+
+import java.util.Collection;
+
+import org.eclipse.emf.common.notify.Notification;
+import org.eclipse.emf.common.notify.NotificationChain;
+
+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.EDataTypeEList;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIConnector;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIText;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.GraphElementsType;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IPropertyContainer;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ItsTargetType;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>CGI Connector</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * </p>
+ * <ul>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIConnectorImpl#getM_pModelObject <em>MpModel Object</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIConnectorImpl#getM_pParent <em>MpParent</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIConnectorImpl#getM_transform <em>Mtransform</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIConnectorImpl#getM_position <em>Mposition</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIConnectorImpl#getM_nInheritanceMask <em>MnInheritance Mask</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIConnectorImpl#getM_SubType <em>MSub Type</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIConnectorImpl#getProperties <em>Properties</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIConnectorImpl#getM_AdditionalLabel <em>MAdditional Label</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIConnectorImpl#getMyState <em>My State</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIConnectorImpl#getM_pInheritsFrom <em>MpInherits From</em>}</li>
+ * </ul>
+ *
+ * @generated
+ */
+public class CGIConnectorImpl extends GraphElementsTypeImpl implements CGIConnector {
+	/**
+	 * The cached value of the '{@link #getM_pModelObject() <em>MpModel Object</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_pModelObject()
+	 * @generated
+	 * @ordered
+	 */
+	protected ItsTargetType m_pModelObject;
+
+	/**
+	 * The cached value of the '{@link #getM_pParent() <em>MpParent</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_pParent()
+	 * @generated
+	 * @ordered
+	 */
+	protected GraphElementsType m_pParent;
+
+	/**
+	 * The cached value of the '{@link #getM_transform() <em>Mtransform</em>}' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_transform()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<String> m_transform;
+
+	/**
+	 * The cached value of the '{@link #getM_position() <em>Mposition</em>}' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_position()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<String> m_position;
+
+	/**
+	 * The default value of the '{@link #getM_nInheritanceMask() <em>MnInheritance Mask</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_nInheritanceMask()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String MNINHERITANCE_MASK_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getM_nInheritanceMask() <em>MnInheritance Mask</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_nInheritanceMask()
+	 * @generated
+	 * @ordered
+	 */
+	protected String m_nInheritanceMask = MNINHERITANCE_MASK_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getM_SubType() <em>MSub Type</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_SubType()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String MSUB_TYPE_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getM_SubType() <em>MSub Type</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_SubType()
+	 * @generated
+	 * @ordered
+	 */
+	protected String m_SubType = MSUB_TYPE_EDEFAULT;
+
+	/**
+	 * The cached value of the '{@link #getProperties() <em>Properties</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getProperties()
+	 * @generated
+	 * @ordered
+	 */
+	protected IPropertyContainer properties;
+
+	/**
+	 * The cached value of the '{@link #getM_AdditionalLabel() <em>MAdditional Label</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_AdditionalLabel()
+	 * @generated
+	 * @ordered
+	 */
+	protected CGIText m_AdditionalLabel;
+
+	/**
+	 * The default value of the '{@link #getMyState() <em>My State</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getMyState()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String MY_STATE_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getMyState() <em>My State</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getMyState()
+	 * @generated
+	 * @ordered
+	 */
+	protected String myState = MY_STATE_EDEFAULT;
+
+	/**
+	 * The cached value of the '{@link #getM_pInheritsFrom() <em>MpInherits From</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_pInheritsFrom()
+	 * @generated
+	 * @ordered
+	 */
+	protected GraphElementsType m_pInheritsFrom;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected CGIConnectorImpl() {
+		super();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EClass eStaticClass() {
+		return UMLRpyPackage.eINSTANCE.getCGIConnector();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public ItsTargetType getM_pModelObject() {
+		if (m_pModelObject != null && m_pModelObject.eIsProxy()) {
+			InternalEObject oldM_pModelObject = (InternalEObject)m_pModelObject;
+			m_pModelObject = (ItsTargetType)eResolveProxy(oldM_pModelObject);
+			if (m_pModelObject != oldM_pModelObject) {
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.CGI_CONNECTOR__MPMODEL_OBJECT, oldM_pModelObject, m_pModelObject));
+			}
+		}
+		return m_pModelObject;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public ItsTargetType basicGetM_pModelObject() {
+		return m_pModelObject;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_pModelObject(ItsTargetType newM_pModelObject) {
+		ItsTargetType oldM_pModelObject = m_pModelObject;
+		m_pModelObject = newM_pModelObject;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_CONNECTOR__MPMODEL_OBJECT, oldM_pModelObject, m_pModelObject));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public GraphElementsType getM_pParent() {
+		if (m_pParent != null && m_pParent.eIsProxy()) {
+			InternalEObject oldM_pParent = (InternalEObject)m_pParent;
+			m_pParent = (GraphElementsType)eResolveProxy(oldM_pParent);
+			if (m_pParent != oldM_pParent) {
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.CGI_CONNECTOR__MPPARENT, oldM_pParent, m_pParent));
+			}
+		}
+		return m_pParent;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public GraphElementsType basicGetM_pParent() {
+		return m_pParent;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_pParent(GraphElementsType newM_pParent) {
+		GraphElementsType oldM_pParent = m_pParent;
+		m_pParent = newM_pParent;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_CONNECTOR__MPPARENT, oldM_pParent, m_pParent));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<String> getM_transform() {
+		if (m_transform == null) {
+			m_transform = new EDataTypeEList<String>(String.class, this, UMLRpyPackage.CGI_CONNECTOR__MTRANSFORM);
+		}
+		return m_transform;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<String> getM_position() {
+		if (m_position == null) {
+			m_position = new EDataTypeEList<String>(String.class, this, UMLRpyPackage.CGI_CONNECTOR__MPOSITION);
+		}
+		return m_position;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getM_nInheritanceMask() {
+		return m_nInheritanceMask;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_nInheritanceMask(String newM_nInheritanceMask) {
+		String oldM_nInheritanceMask = m_nInheritanceMask;
+		m_nInheritanceMask = newM_nInheritanceMask;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_CONNECTOR__MNINHERITANCE_MASK, oldM_nInheritanceMask, m_nInheritanceMask));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getM_SubType() {
+		return m_SubType;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_SubType(String newM_SubType) {
+		String oldM_SubType = m_SubType;
+		m_SubType = newM_SubType;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_CONNECTOR__MSUB_TYPE, oldM_SubType, m_SubType));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IPropertyContainer getProperties() {
+		if (properties != null && properties.eIsProxy()) {
+			InternalEObject oldProperties = (InternalEObject)properties;
+			properties = (IPropertyContainer)eResolveProxy(oldProperties);
+			if (properties != oldProperties) {
+				InternalEObject newProperties = (InternalEObject)properties;
+				NotificationChain msgs = oldProperties.eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.CGI_CONNECTOR__PROPERTIES, null, null);
+				if (newProperties.eInternalContainer() == null) {
+					msgs = newProperties.eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.CGI_CONNECTOR__PROPERTIES, null, msgs);
+				}
+				if (msgs != null) msgs.dispatch();
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.CGI_CONNECTOR__PROPERTIES, oldProperties, properties));
+			}
+		}
+		return properties;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IPropertyContainer basicGetProperties() {
+		return properties;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public NotificationChain basicSetProperties(IPropertyContainer newProperties, NotificationChain msgs) {
+		IPropertyContainer oldProperties = properties;
+		properties = newProperties;
+		if (eNotificationRequired()) {
+			ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_CONNECTOR__PROPERTIES, oldProperties, newProperties);
+			if (msgs == null) msgs = notification; else msgs.add(notification);
+		}
+		return msgs;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setProperties(IPropertyContainer newProperties) {
+		if (newProperties != properties) {
+			NotificationChain msgs = null;
+			if (properties != null)
+				msgs = ((InternalEObject)properties).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.CGI_CONNECTOR__PROPERTIES, null, msgs);
+			if (newProperties != null)
+				msgs = ((InternalEObject)newProperties).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.CGI_CONNECTOR__PROPERTIES, null, msgs);
+			msgs = basicSetProperties(newProperties, msgs);
+			if (msgs != null) msgs.dispatch();
+		}
+		else if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_CONNECTOR__PROPERTIES, newProperties, newProperties));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public CGIText getM_AdditionalLabel() {
+		if (m_AdditionalLabel != null && m_AdditionalLabel.eIsProxy()) {
+			InternalEObject oldM_AdditionalLabel = (InternalEObject)m_AdditionalLabel;
+			m_AdditionalLabel = (CGIText)eResolveProxy(oldM_AdditionalLabel);
+			if (m_AdditionalLabel != oldM_AdditionalLabel) {
+				InternalEObject newM_AdditionalLabel = (InternalEObject)m_AdditionalLabel;
+				NotificationChain msgs = oldM_AdditionalLabel.eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.CGI_CONNECTOR__MADDITIONAL_LABEL, null, null);
+				if (newM_AdditionalLabel.eInternalContainer() == null) {
+					msgs = newM_AdditionalLabel.eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.CGI_CONNECTOR__MADDITIONAL_LABEL, null, msgs);
+				}
+				if (msgs != null) msgs.dispatch();
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.CGI_CONNECTOR__MADDITIONAL_LABEL, oldM_AdditionalLabel, m_AdditionalLabel));
+			}
+		}
+		return m_AdditionalLabel;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public CGIText basicGetM_AdditionalLabel() {
+		return m_AdditionalLabel;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public NotificationChain basicSetM_AdditionalLabel(CGIText newM_AdditionalLabel, NotificationChain msgs) {
+		CGIText oldM_AdditionalLabel = m_AdditionalLabel;
+		m_AdditionalLabel = newM_AdditionalLabel;
+		if (eNotificationRequired()) {
+			ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_CONNECTOR__MADDITIONAL_LABEL, oldM_AdditionalLabel, newM_AdditionalLabel);
+			if (msgs == null) msgs = notification; else msgs.add(notification);
+		}
+		return msgs;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_AdditionalLabel(CGIText newM_AdditionalLabel) {
+		if (newM_AdditionalLabel != m_AdditionalLabel) {
+			NotificationChain msgs = null;
+			if (m_AdditionalLabel != null)
+				msgs = ((InternalEObject)m_AdditionalLabel).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.CGI_CONNECTOR__MADDITIONAL_LABEL, null, msgs);
+			if (newM_AdditionalLabel != null)
+				msgs = ((InternalEObject)newM_AdditionalLabel).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.CGI_CONNECTOR__MADDITIONAL_LABEL, null, msgs);
+			msgs = basicSetM_AdditionalLabel(newM_AdditionalLabel, msgs);
+			if (msgs != null) msgs.dispatch();
+		}
+		else if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_CONNECTOR__MADDITIONAL_LABEL, newM_AdditionalLabel, newM_AdditionalLabel));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getMyState() {
+		return myState;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setMyState(String newMyState) {
+		String oldMyState = myState;
+		myState = newMyState;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_CONNECTOR__MY_STATE, oldMyState, myState));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public GraphElementsType getM_pInheritsFrom() {
+		if (m_pInheritsFrom != null && m_pInheritsFrom.eIsProxy()) {
+			InternalEObject oldM_pInheritsFrom = (InternalEObject)m_pInheritsFrom;
+			m_pInheritsFrom = (GraphElementsType)eResolveProxy(oldM_pInheritsFrom);
+			if (m_pInheritsFrom != oldM_pInheritsFrom) {
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.CGI_CONNECTOR__MPINHERITS_FROM, oldM_pInheritsFrom, m_pInheritsFrom));
+			}
+		}
+		return m_pInheritsFrom;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public GraphElementsType basicGetM_pInheritsFrom() {
+		return m_pInheritsFrom;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_pInheritsFrom(GraphElementsType newM_pInheritsFrom) {
+		GraphElementsType oldM_pInheritsFrom = m_pInheritsFrom;
+		m_pInheritsFrom = newM_pInheritsFrom;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_CONNECTOR__MPINHERITS_FROM, oldM_pInheritsFrom, m_pInheritsFrom));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
+		switch (featureID) {
+			case UMLRpyPackage.CGI_CONNECTOR__PROPERTIES:
+				return basicSetProperties(null, msgs);
+			case UMLRpyPackage.CGI_CONNECTOR__MADDITIONAL_LABEL:
+				return basicSetM_AdditionalLabel(null, msgs);
+		}
+		return super.eInverseRemove(otherEnd, featureID, msgs);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object eGet(int featureID, boolean resolve, boolean coreType) {
+		switch (featureID) {
+			case UMLRpyPackage.CGI_CONNECTOR__MPMODEL_OBJECT:
+				if (resolve) return getM_pModelObject();
+				return basicGetM_pModelObject();
+			case UMLRpyPackage.CGI_CONNECTOR__MPPARENT:
+				if (resolve) return getM_pParent();
+				return basicGetM_pParent();
+			case UMLRpyPackage.CGI_CONNECTOR__MTRANSFORM:
+				return getM_transform();
+			case UMLRpyPackage.CGI_CONNECTOR__MPOSITION:
+				return getM_position();
+			case UMLRpyPackage.CGI_CONNECTOR__MNINHERITANCE_MASK:
+				return getM_nInheritanceMask();
+			case UMLRpyPackage.CGI_CONNECTOR__MSUB_TYPE:
+				return getM_SubType();
+			case UMLRpyPackage.CGI_CONNECTOR__PROPERTIES:
+				if (resolve) return getProperties();
+				return basicGetProperties();
+			case UMLRpyPackage.CGI_CONNECTOR__MADDITIONAL_LABEL:
+				if (resolve) return getM_AdditionalLabel();
+				return basicGetM_AdditionalLabel();
+			case UMLRpyPackage.CGI_CONNECTOR__MY_STATE:
+				return getMyState();
+			case UMLRpyPackage.CGI_CONNECTOR__MPINHERITS_FROM:
+				if (resolve) return getM_pInheritsFrom();
+				return basicGetM_pInheritsFrom();
+		}
+		return super.eGet(featureID, resolve, coreType);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@SuppressWarnings("unchecked")
+	@Override
+	public void eSet(int featureID, Object newValue) {
+		switch (featureID) {
+			case UMLRpyPackage.CGI_CONNECTOR__MPMODEL_OBJECT:
+				setM_pModelObject((ItsTargetType)newValue);
+				return;
+			case UMLRpyPackage.CGI_CONNECTOR__MPPARENT:
+				setM_pParent((GraphElementsType)newValue);
+				return;
+			case UMLRpyPackage.CGI_CONNECTOR__MTRANSFORM:
+				getM_transform().clear();
+				getM_transform().addAll((Collection<? extends String>)newValue);
+				return;
+			case UMLRpyPackage.CGI_CONNECTOR__MPOSITION:
+				getM_position().clear();
+				getM_position().addAll((Collection<? extends String>)newValue);
+				return;
+			case UMLRpyPackage.CGI_CONNECTOR__MNINHERITANCE_MASK:
+				setM_nInheritanceMask((String)newValue);
+				return;
+			case UMLRpyPackage.CGI_CONNECTOR__MSUB_TYPE:
+				setM_SubType((String)newValue);
+				return;
+			case UMLRpyPackage.CGI_CONNECTOR__PROPERTIES:
+				setProperties((IPropertyContainer)newValue);
+				return;
+			case UMLRpyPackage.CGI_CONNECTOR__MADDITIONAL_LABEL:
+				setM_AdditionalLabel((CGIText)newValue);
+				return;
+			case UMLRpyPackage.CGI_CONNECTOR__MY_STATE:
+				setMyState((String)newValue);
+				return;
+			case UMLRpyPackage.CGI_CONNECTOR__MPINHERITS_FROM:
+				setM_pInheritsFrom((GraphElementsType)newValue);
+				return;
+		}
+		super.eSet(featureID, newValue);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void eUnset(int featureID) {
+		switch (featureID) {
+			case UMLRpyPackage.CGI_CONNECTOR__MPMODEL_OBJECT:
+				setM_pModelObject((ItsTargetType)null);
+				return;
+			case UMLRpyPackage.CGI_CONNECTOR__MPPARENT:
+				setM_pParent((GraphElementsType)null);
+				return;
+			case UMLRpyPackage.CGI_CONNECTOR__MTRANSFORM:
+				getM_transform().clear();
+				return;
+			case UMLRpyPackage.CGI_CONNECTOR__MPOSITION:
+				getM_position().clear();
+				return;
+			case UMLRpyPackage.CGI_CONNECTOR__MNINHERITANCE_MASK:
+				setM_nInheritanceMask(MNINHERITANCE_MASK_EDEFAULT);
+				return;
+			case UMLRpyPackage.CGI_CONNECTOR__MSUB_TYPE:
+				setM_SubType(MSUB_TYPE_EDEFAULT);
+				return;
+			case UMLRpyPackage.CGI_CONNECTOR__PROPERTIES:
+				setProperties((IPropertyContainer)null);
+				return;
+			case UMLRpyPackage.CGI_CONNECTOR__MADDITIONAL_LABEL:
+				setM_AdditionalLabel((CGIText)null);
+				return;
+			case UMLRpyPackage.CGI_CONNECTOR__MY_STATE:
+				setMyState(MY_STATE_EDEFAULT);
+				return;
+			case UMLRpyPackage.CGI_CONNECTOR__MPINHERITS_FROM:
+				setM_pInheritsFrom((GraphElementsType)null);
+				return;
+		}
+		super.eUnset(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public boolean eIsSet(int featureID) {
+		switch (featureID) {
+			case UMLRpyPackage.CGI_CONNECTOR__MPMODEL_OBJECT:
+				return m_pModelObject != null;
+			case UMLRpyPackage.CGI_CONNECTOR__MPPARENT:
+				return m_pParent != null;
+			case UMLRpyPackage.CGI_CONNECTOR__MTRANSFORM:
+				return m_transform != null && !m_transform.isEmpty();
+			case UMLRpyPackage.CGI_CONNECTOR__MPOSITION:
+				return m_position != null && !m_position.isEmpty();
+			case UMLRpyPackage.CGI_CONNECTOR__MNINHERITANCE_MASK:
+				return MNINHERITANCE_MASK_EDEFAULT == null ? m_nInheritanceMask != null : !MNINHERITANCE_MASK_EDEFAULT.equals(m_nInheritanceMask);
+			case UMLRpyPackage.CGI_CONNECTOR__MSUB_TYPE:
+				return MSUB_TYPE_EDEFAULT == null ? m_SubType != null : !MSUB_TYPE_EDEFAULT.equals(m_SubType);
+			case UMLRpyPackage.CGI_CONNECTOR__PROPERTIES:
+				return properties != null;
+			case UMLRpyPackage.CGI_CONNECTOR__MADDITIONAL_LABEL:
+				return m_AdditionalLabel != null;
+			case UMLRpyPackage.CGI_CONNECTOR__MY_STATE:
+				return MY_STATE_EDEFAULT == null ? myState != null : !MY_STATE_EDEFAULT.equals(myState);
+			case UMLRpyPackage.CGI_CONNECTOR__MPINHERITS_FROM:
+				return m_pInheritsFrom != null;
+		}
+		return super.eIsSet(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String toString() {
+		if (eIsProxy()) return super.toString();
+
+		StringBuffer result = new StringBuffer(super.toString());
+		result.append(" (m_transform: "); //$NON-NLS-1$
+		result.append(m_transform);
+		result.append(", m_position: "); //$NON-NLS-1$
+		result.append(m_position);
+		result.append(", m_nInheritanceMask: "); //$NON-NLS-1$
+		result.append(m_nInheritanceMask);
+		result.append(", m_SubType: "); //$NON-NLS-1$
+		result.append(m_SubType);
+		result.append(", myState: "); //$NON-NLS-1$
+		result.append(myState);
+		result.append(')');
+		return result.toString();
+	}
+
+} //CGIConnectorImpl
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/CGIContainArrowImpl.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/CGIContainArrowImpl.java
new file mode 100755
index 0000000..818a719
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/CGIContainArrowImpl.java
@@ -0,0 +1,837 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl;
+
+import java.util.Collection;
+
+import org.eclipse.emf.common.notify.Notification;
+import org.eclipse.emf.common.notify.NotificationChain;
+
+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.EDataTypeEList;
+import org.eclipse.emf.ecore.util.EObjectResolvingEList;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIContainArrow;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIText;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.GraphElementsType;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UnknownType;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>CGI Contain Arrow</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * </p>
+ * <ul>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIContainArrowImpl#getM_pModelObject <em>MpModel Object</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIContainArrowImpl#getM_pParent <em>MpParent</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIContainArrowImpl#getM_pSource <em>MpSource</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIContainArrowImpl#getM_sourceType <em>Msource Type</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIContainArrowImpl#getM_pTarget <em>MpTarget</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIContainArrowImpl#getM_targetType <em>Mtarget Type</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIContainArrowImpl#getM_direction <em>Mdirection</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIContainArrowImpl#getM_rpn <em>Mrpn</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIContainArrowImpl#getM_arrow <em>Marrow</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIContainArrowImpl#getM_anglePoint1 <em>Mangle Point1</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIContainArrowImpl#getM_anglePoint2 <em>Mangle Point2</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIContainArrowImpl#getM_line_style <em>Mline style</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIContainArrowImpl#getM_SourcePort <em>MSource Port</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIContainArrowImpl#getM_TargetPort <em>MTarget Port</em>}</li>
+ * </ul>
+ *
+ * @generated
+ */
+public class CGIContainArrowImpl extends GraphElementsTypeImpl implements CGIContainArrow {
+	/**
+	 * The cached value of the '{@link #getM_pModelObject() <em>MpModel Object</em>}' reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_pModelObject()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<UnknownType> m_pModelObject;
+
+	/**
+	 * The default value of the '{@link #getM_pParent() <em>MpParent</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_pParent()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String MPPARENT_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getM_pParent() <em>MpParent</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_pParent()
+	 * @generated
+	 * @ordered
+	 */
+	protected String m_pParent = MPPARENT_EDEFAULT;
+
+	/**
+	 * The cached value of the '{@link #getM_pSource() <em>MpSource</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_pSource()
+	 * @generated
+	 * @ordered
+	 */
+	protected GraphElementsType m_pSource;
+
+	/**
+	 * The default value of the '{@link #getM_sourceType() <em>Msource Type</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_sourceType()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String MSOURCE_TYPE_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getM_sourceType() <em>Msource Type</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_sourceType()
+	 * @generated
+	 * @ordered
+	 */
+	protected String m_sourceType = MSOURCE_TYPE_EDEFAULT;
+
+	/**
+	 * The cached value of the '{@link #getM_pTarget() <em>MpTarget</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_pTarget()
+	 * @generated
+	 * @ordered
+	 */
+	protected GraphElementsType m_pTarget;
+
+	/**
+	 * The default value of the '{@link #getM_targetType() <em>Mtarget Type</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_targetType()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String MTARGET_TYPE_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getM_targetType() <em>Mtarget Type</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_targetType()
+	 * @generated
+	 * @ordered
+	 */
+	protected String m_targetType = MTARGET_TYPE_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getM_direction() <em>Mdirection</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_direction()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String MDIRECTION_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getM_direction() <em>Mdirection</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_direction()
+	 * @generated
+	 * @ordered
+	 */
+	protected String m_direction = MDIRECTION_EDEFAULT;
+
+	/**
+	 * The cached value of the '{@link #getM_rpn() <em>Mrpn</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_rpn()
+	 * @generated
+	 * @ordered
+	 */
+	protected CGIText m_rpn;
+
+	/**
+	 * The cached value of the '{@link #getM_arrow() <em>Marrow</em>}' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_arrow()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<String> m_arrow;
+
+	/**
+	 * The cached value of the '{@link #getM_anglePoint1() <em>Mangle Point1</em>}' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_anglePoint1()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<String> m_anglePoint1;
+
+	/**
+	 * The cached value of the '{@link #getM_anglePoint2() <em>Mangle Point2</em>}' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_anglePoint2()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<String> m_anglePoint2;
+
+	/**
+	 * The default value of the '{@link #getM_line_style() <em>Mline style</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_line_style()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String MLINE_STYLE_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getM_line_style() <em>Mline style</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_line_style()
+	 * @generated
+	 * @ordered
+	 */
+	protected String m_line_style = MLINE_STYLE_EDEFAULT;
+
+	/**
+	 * The cached value of the '{@link #getM_SourcePort() <em>MSource Port</em>}' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_SourcePort()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<String> m_SourcePort;
+
+	/**
+	 * The cached value of the '{@link #getM_TargetPort() <em>MTarget Port</em>}' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_TargetPort()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<String> m_TargetPort;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected CGIContainArrowImpl() {
+		super();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EClass eStaticClass() {
+		return UMLRpyPackage.eINSTANCE.getCGIContainArrow();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<UnknownType> getM_pModelObject() {
+		if (m_pModelObject == null) {
+			m_pModelObject = new EObjectResolvingEList<UnknownType>(UnknownType.class, this, UMLRpyPackage.CGI_CONTAIN_ARROW__MPMODEL_OBJECT);
+		}
+		return m_pModelObject;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getM_pParent() {
+		return m_pParent;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_pParent(String newM_pParent) {
+		String oldM_pParent = m_pParent;
+		m_pParent = newM_pParent;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_CONTAIN_ARROW__MPPARENT, oldM_pParent, m_pParent));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public GraphElementsType getM_pSource() {
+		if (m_pSource != null && m_pSource.eIsProxy()) {
+			InternalEObject oldM_pSource = (InternalEObject)m_pSource;
+			m_pSource = (GraphElementsType)eResolveProxy(oldM_pSource);
+			if (m_pSource != oldM_pSource) {
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.CGI_CONTAIN_ARROW__MPSOURCE, oldM_pSource, m_pSource));
+			}
+		}
+		return m_pSource;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public GraphElementsType basicGetM_pSource() {
+		return m_pSource;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_pSource(GraphElementsType newM_pSource) {
+		GraphElementsType oldM_pSource = m_pSource;
+		m_pSource = newM_pSource;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_CONTAIN_ARROW__MPSOURCE, oldM_pSource, m_pSource));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getM_sourceType() {
+		return m_sourceType;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_sourceType(String newM_sourceType) {
+		String oldM_sourceType = m_sourceType;
+		m_sourceType = newM_sourceType;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_CONTAIN_ARROW__MSOURCE_TYPE, oldM_sourceType, m_sourceType));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public GraphElementsType getM_pTarget() {
+		if (m_pTarget != null && m_pTarget.eIsProxy()) {
+			InternalEObject oldM_pTarget = (InternalEObject)m_pTarget;
+			m_pTarget = (GraphElementsType)eResolveProxy(oldM_pTarget);
+			if (m_pTarget != oldM_pTarget) {
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.CGI_CONTAIN_ARROW__MPTARGET, oldM_pTarget, m_pTarget));
+			}
+		}
+		return m_pTarget;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public GraphElementsType basicGetM_pTarget() {
+		return m_pTarget;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_pTarget(GraphElementsType newM_pTarget) {
+		GraphElementsType oldM_pTarget = m_pTarget;
+		m_pTarget = newM_pTarget;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_CONTAIN_ARROW__MPTARGET, oldM_pTarget, m_pTarget));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getM_targetType() {
+		return m_targetType;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_targetType(String newM_targetType) {
+		String oldM_targetType = m_targetType;
+		m_targetType = newM_targetType;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_CONTAIN_ARROW__MTARGET_TYPE, oldM_targetType, m_targetType));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getM_direction() {
+		return m_direction;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_direction(String newM_direction) {
+		String oldM_direction = m_direction;
+		m_direction = newM_direction;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_CONTAIN_ARROW__MDIRECTION, oldM_direction, m_direction));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public CGIText getM_rpn() {
+		if (m_rpn != null && m_rpn.eIsProxy()) {
+			InternalEObject oldM_rpn = (InternalEObject)m_rpn;
+			m_rpn = (CGIText)eResolveProxy(oldM_rpn);
+			if (m_rpn != oldM_rpn) {
+				InternalEObject newM_rpn = (InternalEObject)m_rpn;
+				NotificationChain msgs = oldM_rpn.eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.CGI_CONTAIN_ARROW__MRPN, null, null);
+				if (newM_rpn.eInternalContainer() == null) {
+					msgs = newM_rpn.eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.CGI_CONTAIN_ARROW__MRPN, null, msgs);
+				}
+				if (msgs != null) msgs.dispatch();
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.CGI_CONTAIN_ARROW__MRPN, oldM_rpn, m_rpn));
+			}
+		}
+		return m_rpn;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public CGIText basicGetM_rpn() {
+		return m_rpn;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public NotificationChain basicSetM_rpn(CGIText newM_rpn, NotificationChain msgs) {
+		CGIText oldM_rpn = m_rpn;
+		m_rpn = newM_rpn;
+		if (eNotificationRequired()) {
+			ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_CONTAIN_ARROW__MRPN, oldM_rpn, newM_rpn);
+			if (msgs == null) msgs = notification; else msgs.add(notification);
+		}
+		return msgs;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_rpn(CGIText newM_rpn) {
+		if (newM_rpn != m_rpn) {
+			NotificationChain msgs = null;
+			if (m_rpn != null)
+				msgs = ((InternalEObject)m_rpn).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.CGI_CONTAIN_ARROW__MRPN, null, msgs);
+			if (newM_rpn != null)
+				msgs = ((InternalEObject)newM_rpn).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.CGI_CONTAIN_ARROW__MRPN, null, msgs);
+			msgs = basicSetM_rpn(newM_rpn, msgs);
+			if (msgs != null) msgs.dispatch();
+		}
+		else if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_CONTAIN_ARROW__MRPN, newM_rpn, newM_rpn));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<String> getM_arrow() {
+		if (m_arrow == null) {
+			m_arrow = new EDataTypeEList<String>(String.class, this, UMLRpyPackage.CGI_CONTAIN_ARROW__MARROW);
+		}
+		return m_arrow;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<String> getM_anglePoint1() {
+		if (m_anglePoint1 == null) {
+			m_anglePoint1 = new EDataTypeEList<String>(String.class, this, UMLRpyPackage.CGI_CONTAIN_ARROW__MANGLE_POINT1);
+		}
+		return m_anglePoint1;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<String> getM_anglePoint2() {
+		if (m_anglePoint2 == null) {
+			m_anglePoint2 = new EDataTypeEList<String>(String.class, this, UMLRpyPackage.CGI_CONTAIN_ARROW__MANGLE_POINT2);
+		}
+		return m_anglePoint2;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getM_line_style() {
+		return m_line_style;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_line_style(String newM_line_style) {
+		String oldM_line_style = m_line_style;
+		m_line_style = newM_line_style;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_CONTAIN_ARROW__MLINE_STYLE, oldM_line_style, m_line_style));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<String> getM_SourcePort() {
+		if (m_SourcePort == null) {
+			m_SourcePort = new EDataTypeEList<String>(String.class, this, UMLRpyPackage.CGI_CONTAIN_ARROW__MSOURCE_PORT);
+		}
+		return m_SourcePort;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<String> getM_TargetPort() {
+		if (m_TargetPort == null) {
+			m_TargetPort = new EDataTypeEList<String>(String.class, this, UMLRpyPackage.CGI_CONTAIN_ARROW__MTARGET_PORT);
+		}
+		return m_TargetPort;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
+		switch (featureID) {
+			case UMLRpyPackage.CGI_CONTAIN_ARROW__MRPN:
+				return basicSetM_rpn(null, msgs);
+		}
+		return super.eInverseRemove(otherEnd, featureID, msgs);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object eGet(int featureID, boolean resolve, boolean coreType) {
+		switch (featureID) {
+			case UMLRpyPackage.CGI_CONTAIN_ARROW__MPMODEL_OBJECT:
+				return getM_pModelObject();
+			case UMLRpyPackage.CGI_CONTAIN_ARROW__MPPARENT:
+				return getM_pParent();
+			case UMLRpyPackage.CGI_CONTAIN_ARROW__MPSOURCE:
+				if (resolve) return getM_pSource();
+				return basicGetM_pSource();
+			case UMLRpyPackage.CGI_CONTAIN_ARROW__MSOURCE_TYPE:
+				return getM_sourceType();
+			case UMLRpyPackage.CGI_CONTAIN_ARROW__MPTARGET:
+				if (resolve) return getM_pTarget();
+				return basicGetM_pTarget();
+			case UMLRpyPackage.CGI_CONTAIN_ARROW__MTARGET_TYPE:
+				return getM_targetType();
+			case UMLRpyPackage.CGI_CONTAIN_ARROW__MDIRECTION:
+				return getM_direction();
+			case UMLRpyPackage.CGI_CONTAIN_ARROW__MRPN:
+				if (resolve) return getM_rpn();
+				return basicGetM_rpn();
+			case UMLRpyPackage.CGI_CONTAIN_ARROW__MARROW:
+				return getM_arrow();
+			case UMLRpyPackage.CGI_CONTAIN_ARROW__MANGLE_POINT1:
+				return getM_anglePoint1();
+			case UMLRpyPackage.CGI_CONTAIN_ARROW__MANGLE_POINT2:
+				return getM_anglePoint2();
+			case UMLRpyPackage.CGI_CONTAIN_ARROW__MLINE_STYLE:
+				return getM_line_style();
+			case UMLRpyPackage.CGI_CONTAIN_ARROW__MSOURCE_PORT:
+				return getM_SourcePort();
+			case UMLRpyPackage.CGI_CONTAIN_ARROW__MTARGET_PORT:
+				return getM_TargetPort();
+		}
+		return super.eGet(featureID, resolve, coreType);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@SuppressWarnings("unchecked")
+	@Override
+	public void eSet(int featureID, Object newValue) {
+		switch (featureID) {
+			case UMLRpyPackage.CGI_CONTAIN_ARROW__MPMODEL_OBJECT:
+				getM_pModelObject().clear();
+				getM_pModelObject().addAll((Collection<? extends UnknownType>)newValue);
+				return;
+			case UMLRpyPackage.CGI_CONTAIN_ARROW__MPPARENT:
+				setM_pParent((String)newValue);
+				return;
+			case UMLRpyPackage.CGI_CONTAIN_ARROW__MPSOURCE:
+				setM_pSource((GraphElementsType)newValue);
+				return;
+			case UMLRpyPackage.CGI_CONTAIN_ARROW__MSOURCE_TYPE:
+				setM_sourceType((String)newValue);
+				return;
+			case UMLRpyPackage.CGI_CONTAIN_ARROW__MPTARGET:
+				setM_pTarget((GraphElementsType)newValue);
+				return;
+			case UMLRpyPackage.CGI_CONTAIN_ARROW__MTARGET_TYPE:
+				setM_targetType((String)newValue);
+				return;
+			case UMLRpyPackage.CGI_CONTAIN_ARROW__MDIRECTION:
+				setM_direction((String)newValue);
+				return;
+			case UMLRpyPackage.CGI_CONTAIN_ARROW__MRPN:
+				setM_rpn((CGIText)newValue);
+				return;
+			case UMLRpyPackage.CGI_CONTAIN_ARROW__MARROW:
+				getM_arrow().clear();
+				getM_arrow().addAll((Collection<? extends String>)newValue);
+				return;
+			case UMLRpyPackage.CGI_CONTAIN_ARROW__MANGLE_POINT1:
+				getM_anglePoint1().clear();
+				getM_anglePoint1().addAll((Collection<? extends String>)newValue);
+				return;
+			case UMLRpyPackage.CGI_CONTAIN_ARROW__MANGLE_POINT2:
+				getM_anglePoint2().clear();
+				getM_anglePoint2().addAll((Collection<? extends String>)newValue);
+				return;
+			case UMLRpyPackage.CGI_CONTAIN_ARROW__MLINE_STYLE:
+				setM_line_style((String)newValue);
+				return;
+			case UMLRpyPackage.CGI_CONTAIN_ARROW__MSOURCE_PORT:
+				getM_SourcePort().clear();
+				getM_SourcePort().addAll((Collection<? extends String>)newValue);
+				return;
+			case UMLRpyPackage.CGI_CONTAIN_ARROW__MTARGET_PORT:
+				getM_TargetPort().clear();
+				getM_TargetPort().addAll((Collection<? extends String>)newValue);
+				return;
+		}
+		super.eSet(featureID, newValue);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void eUnset(int featureID) {
+		switch (featureID) {
+			case UMLRpyPackage.CGI_CONTAIN_ARROW__MPMODEL_OBJECT:
+				getM_pModelObject().clear();
+				return;
+			case UMLRpyPackage.CGI_CONTAIN_ARROW__MPPARENT:
+				setM_pParent(MPPARENT_EDEFAULT);
+				return;
+			case UMLRpyPackage.CGI_CONTAIN_ARROW__MPSOURCE:
+				setM_pSource((GraphElementsType)null);
+				return;
+			case UMLRpyPackage.CGI_CONTAIN_ARROW__MSOURCE_TYPE:
+				setM_sourceType(MSOURCE_TYPE_EDEFAULT);
+				return;
+			case UMLRpyPackage.CGI_CONTAIN_ARROW__MPTARGET:
+				setM_pTarget((GraphElementsType)null);
+				return;
+			case UMLRpyPackage.CGI_CONTAIN_ARROW__MTARGET_TYPE:
+				setM_targetType(MTARGET_TYPE_EDEFAULT);
+				return;
+			case UMLRpyPackage.CGI_CONTAIN_ARROW__MDIRECTION:
+				setM_direction(MDIRECTION_EDEFAULT);
+				return;
+			case UMLRpyPackage.CGI_CONTAIN_ARROW__MRPN:
+				setM_rpn((CGIText)null);
+				return;
+			case UMLRpyPackage.CGI_CONTAIN_ARROW__MARROW:
+				getM_arrow().clear();
+				return;
+			case UMLRpyPackage.CGI_CONTAIN_ARROW__MANGLE_POINT1:
+				getM_anglePoint1().clear();
+				return;
+			case UMLRpyPackage.CGI_CONTAIN_ARROW__MANGLE_POINT2:
+				getM_anglePoint2().clear();
+				return;
+			case UMLRpyPackage.CGI_CONTAIN_ARROW__MLINE_STYLE:
+				setM_line_style(MLINE_STYLE_EDEFAULT);
+				return;
+			case UMLRpyPackage.CGI_CONTAIN_ARROW__MSOURCE_PORT:
+				getM_SourcePort().clear();
+				return;
+			case UMLRpyPackage.CGI_CONTAIN_ARROW__MTARGET_PORT:
+				getM_TargetPort().clear();
+				return;
+		}
+		super.eUnset(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public boolean eIsSet(int featureID) {
+		switch (featureID) {
+			case UMLRpyPackage.CGI_CONTAIN_ARROW__MPMODEL_OBJECT:
+				return m_pModelObject != null && !m_pModelObject.isEmpty();
+			case UMLRpyPackage.CGI_CONTAIN_ARROW__MPPARENT:
+				return MPPARENT_EDEFAULT == null ? m_pParent != null : !MPPARENT_EDEFAULT.equals(m_pParent);
+			case UMLRpyPackage.CGI_CONTAIN_ARROW__MPSOURCE:
+				return m_pSource != null;
+			case UMLRpyPackage.CGI_CONTAIN_ARROW__MSOURCE_TYPE:
+				return MSOURCE_TYPE_EDEFAULT == null ? m_sourceType != null : !MSOURCE_TYPE_EDEFAULT.equals(m_sourceType);
+			case UMLRpyPackage.CGI_CONTAIN_ARROW__MPTARGET:
+				return m_pTarget != null;
+			case UMLRpyPackage.CGI_CONTAIN_ARROW__MTARGET_TYPE:
+				return MTARGET_TYPE_EDEFAULT == null ? m_targetType != null : !MTARGET_TYPE_EDEFAULT.equals(m_targetType);
+			case UMLRpyPackage.CGI_CONTAIN_ARROW__MDIRECTION:
+				return MDIRECTION_EDEFAULT == null ? m_direction != null : !MDIRECTION_EDEFAULT.equals(m_direction);
+			case UMLRpyPackage.CGI_CONTAIN_ARROW__MRPN:
+				return m_rpn != null;
+			case UMLRpyPackage.CGI_CONTAIN_ARROW__MARROW:
+				return m_arrow != null && !m_arrow.isEmpty();
+			case UMLRpyPackage.CGI_CONTAIN_ARROW__MANGLE_POINT1:
+				return m_anglePoint1 != null && !m_anglePoint1.isEmpty();
+			case UMLRpyPackage.CGI_CONTAIN_ARROW__MANGLE_POINT2:
+				return m_anglePoint2 != null && !m_anglePoint2.isEmpty();
+			case UMLRpyPackage.CGI_CONTAIN_ARROW__MLINE_STYLE:
+				return MLINE_STYLE_EDEFAULT == null ? m_line_style != null : !MLINE_STYLE_EDEFAULT.equals(m_line_style);
+			case UMLRpyPackage.CGI_CONTAIN_ARROW__MSOURCE_PORT:
+				return m_SourcePort != null && !m_SourcePort.isEmpty();
+			case UMLRpyPackage.CGI_CONTAIN_ARROW__MTARGET_PORT:
+				return m_TargetPort != null && !m_TargetPort.isEmpty();
+		}
+		return super.eIsSet(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String toString() {
+		if (eIsProxy()) return super.toString();
+
+		StringBuffer result = new StringBuffer(super.toString());
+		result.append(" (m_pParent: "); //$NON-NLS-1$
+		result.append(m_pParent);
+		result.append(", m_sourceType: "); //$NON-NLS-1$
+		result.append(m_sourceType);
+		result.append(", m_targetType: "); //$NON-NLS-1$
+		result.append(m_targetType);
+		result.append(", m_direction: "); //$NON-NLS-1$
+		result.append(m_direction);
+		result.append(", m_arrow: "); //$NON-NLS-1$
+		result.append(m_arrow);
+		result.append(", m_anglePoint1: "); //$NON-NLS-1$
+		result.append(m_anglePoint1);
+		result.append(", m_anglePoint2: "); //$NON-NLS-1$
+		result.append(m_anglePoint2);
+		result.append(", m_line_style: "); //$NON-NLS-1$
+		result.append(m_line_style);
+		result.append(", m_SourcePort: "); //$NON-NLS-1$
+		result.append(m_SourcePort);
+		result.append(", m_TargetPort: "); //$NON-NLS-1$
+		result.append(m_TargetPort);
+		result.append(')');
+		return result.toString();
+	}
+
+} //CGIContainArrowImpl
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/CGIDiagramFrameImpl.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/CGIDiagramFrameImpl.java
new file mode 100755
index 0000000..cd4e93b
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/CGIDiagramFrameImpl.java
@@ -0,0 +1,706 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl;
+
+import java.util.Collection;
+
+import org.eclipse.emf.common.notify.Notification;
+import org.eclipse.emf.common.notify.NotificationChain;
+
+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.EDataTypeEList;
+import org.eclipse.emf.ecore.util.EObjectResolvingEList;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIDiagramFrame;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIText;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CompartmentsType;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.M_pRootType;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UnknownType;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>CGI Diagram Frame</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * </p>
+ * <ul>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIDiagramFrameImpl#getM_pModelObject <em>MpModel Object</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIDiagramFrameImpl#getM_pParent <em>MpParent</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIDiagramFrameImpl#getM_transform <em>Mtransform</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIDiagramFrameImpl#getM_AdditionalLabel <em>MAdditional Label</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIDiagramFrameImpl#getM_polygon <em>Mpolygon</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIDiagramFrameImpl#getM_nNameFormat <em>MnName Format</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIDiagramFrameImpl#getM_nIsNameFormat <em>MnIs Name Format</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIDiagramFrameImpl#getM_bVisible <em>MbVisible</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIDiagramFrameImpl#getFrameset <em>Frameset</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIDiagramFrameImpl#getCompartments <em>Compartments</em>}</li>
+ * </ul>
+ *
+ * @generated
+ */
+public class CGIDiagramFrameImpl extends GraphElementsTypeImpl implements CGIDiagramFrame {
+	/**
+	 * The cached value of the '{@link #getM_pModelObject() <em>MpModel Object</em>}' reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_pModelObject()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<UnknownType> m_pModelObject;
+
+	/**
+	 * The cached value of the '{@link #getM_pParent() <em>MpParent</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_pParent()
+	 * @generated
+	 * @ordered
+	 */
+	protected M_pRootType m_pParent;
+
+	/**
+	 * The cached value of the '{@link #getM_transform() <em>Mtransform</em>}' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_transform()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<String> m_transform;
+
+	/**
+	 * The cached value of the '{@link #getM_AdditionalLabel() <em>MAdditional Label</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_AdditionalLabel()
+	 * @generated
+	 * @ordered
+	 */
+	protected CGIText m_AdditionalLabel;
+
+	/**
+	 * The cached value of the '{@link #getM_polygon() <em>Mpolygon</em>}' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_polygon()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<String> m_polygon;
+
+	/**
+	 * The default value of the '{@link #getM_nNameFormat() <em>MnName Format</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_nNameFormat()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String MNNAME_FORMAT_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getM_nNameFormat() <em>MnName Format</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_nNameFormat()
+	 * @generated
+	 * @ordered
+	 */
+	protected String m_nNameFormat = MNNAME_FORMAT_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getM_nIsNameFormat() <em>MnIs Name Format</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_nIsNameFormat()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String MNIS_NAME_FORMAT_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getM_nIsNameFormat() <em>MnIs Name Format</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_nIsNameFormat()
+	 * @generated
+	 * @ordered
+	 */
+	protected String m_nIsNameFormat = MNIS_NAME_FORMAT_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getM_bVisible() <em>MbVisible</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_bVisible()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String MBVISIBLE_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getM_bVisible() <em>MbVisible</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_bVisible()
+	 * @generated
+	 * @ordered
+	 */
+	protected String m_bVisible = MBVISIBLE_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getFrameset() <em>Frameset</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getFrameset()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String FRAMESET_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getFrameset() <em>Frameset</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getFrameset()
+	 * @generated
+	 * @ordered
+	 */
+	protected String frameset = FRAMESET_EDEFAULT;
+
+	/**
+	 * The cached value of the '{@link #getCompartments() <em>Compartments</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getCompartments()
+	 * @generated
+	 * @ordered
+	 */
+	protected CompartmentsType compartments;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected CGIDiagramFrameImpl() {
+		super();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EClass eStaticClass() {
+		return UMLRpyPackage.eINSTANCE.getCGIDiagramFrame();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<UnknownType> getM_pModelObject() {
+		if (m_pModelObject == null) {
+			m_pModelObject = new EObjectResolvingEList<UnknownType>(UnknownType.class, this, UMLRpyPackage.CGI_DIAGRAM_FRAME__MPMODEL_OBJECT);
+		}
+		return m_pModelObject;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public M_pRootType getM_pParent() {
+		if (m_pParent != null && m_pParent.eIsProxy()) {
+			InternalEObject oldM_pParent = (InternalEObject)m_pParent;
+			m_pParent = (M_pRootType)eResolveProxy(oldM_pParent);
+			if (m_pParent != oldM_pParent) {
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.CGI_DIAGRAM_FRAME__MPPARENT, oldM_pParent, m_pParent));
+			}
+		}
+		return m_pParent;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public M_pRootType basicGetM_pParent() {
+		return m_pParent;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_pParent(M_pRootType newM_pParent) {
+		M_pRootType oldM_pParent = m_pParent;
+		m_pParent = newM_pParent;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_DIAGRAM_FRAME__MPPARENT, oldM_pParent, m_pParent));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<String> getM_transform() {
+		if (m_transform == null) {
+			m_transform = new EDataTypeEList<String>(String.class, this, UMLRpyPackage.CGI_DIAGRAM_FRAME__MTRANSFORM);
+		}
+		return m_transform;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public CGIText getM_AdditionalLabel() {
+		if (m_AdditionalLabel != null && m_AdditionalLabel.eIsProxy()) {
+			InternalEObject oldM_AdditionalLabel = (InternalEObject)m_AdditionalLabel;
+			m_AdditionalLabel = (CGIText)eResolveProxy(oldM_AdditionalLabel);
+			if (m_AdditionalLabel != oldM_AdditionalLabel) {
+				InternalEObject newM_AdditionalLabel = (InternalEObject)m_AdditionalLabel;
+				NotificationChain msgs = oldM_AdditionalLabel.eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.CGI_DIAGRAM_FRAME__MADDITIONAL_LABEL, null, null);
+				if (newM_AdditionalLabel.eInternalContainer() == null) {
+					msgs = newM_AdditionalLabel.eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.CGI_DIAGRAM_FRAME__MADDITIONAL_LABEL, null, msgs);
+				}
+				if (msgs != null) msgs.dispatch();
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.CGI_DIAGRAM_FRAME__MADDITIONAL_LABEL, oldM_AdditionalLabel, m_AdditionalLabel));
+			}
+		}
+		return m_AdditionalLabel;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public CGIText basicGetM_AdditionalLabel() {
+		return m_AdditionalLabel;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public NotificationChain basicSetM_AdditionalLabel(CGIText newM_AdditionalLabel, NotificationChain msgs) {
+		CGIText oldM_AdditionalLabel = m_AdditionalLabel;
+		m_AdditionalLabel = newM_AdditionalLabel;
+		if (eNotificationRequired()) {
+			ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_DIAGRAM_FRAME__MADDITIONAL_LABEL, oldM_AdditionalLabel, newM_AdditionalLabel);
+			if (msgs == null) msgs = notification; else msgs.add(notification);
+		}
+		return msgs;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_AdditionalLabel(CGIText newM_AdditionalLabel) {
+		if (newM_AdditionalLabel != m_AdditionalLabel) {
+			NotificationChain msgs = null;
+			if (m_AdditionalLabel != null)
+				msgs = ((InternalEObject)m_AdditionalLabel).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.CGI_DIAGRAM_FRAME__MADDITIONAL_LABEL, null, msgs);
+			if (newM_AdditionalLabel != null)
+				msgs = ((InternalEObject)newM_AdditionalLabel).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.CGI_DIAGRAM_FRAME__MADDITIONAL_LABEL, null, msgs);
+			msgs = basicSetM_AdditionalLabel(newM_AdditionalLabel, msgs);
+			if (msgs != null) msgs.dispatch();
+		}
+		else if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_DIAGRAM_FRAME__MADDITIONAL_LABEL, newM_AdditionalLabel, newM_AdditionalLabel));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<String> getM_polygon() {
+		if (m_polygon == null) {
+			m_polygon = new EDataTypeEList<String>(String.class, this, UMLRpyPackage.CGI_DIAGRAM_FRAME__MPOLYGON);
+		}
+		return m_polygon;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getM_nNameFormat() {
+		return m_nNameFormat;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_nNameFormat(String newM_nNameFormat) {
+		String oldM_nNameFormat = m_nNameFormat;
+		m_nNameFormat = newM_nNameFormat;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_DIAGRAM_FRAME__MNNAME_FORMAT, oldM_nNameFormat, m_nNameFormat));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getM_nIsNameFormat() {
+		return m_nIsNameFormat;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_nIsNameFormat(String newM_nIsNameFormat) {
+		String oldM_nIsNameFormat = m_nIsNameFormat;
+		m_nIsNameFormat = newM_nIsNameFormat;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_DIAGRAM_FRAME__MNIS_NAME_FORMAT, oldM_nIsNameFormat, m_nIsNameFormat));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getM_bVisible() {
+		return m_bVisible;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_bVisible(String newM_bVisible) {
+		String oldM_bVisible = m_bVisible;
+		m_bVisible = newM_bVisible;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_DIAGRAM_FRAME__MBVISIBLE, oldM_bVisible, m_bVisible));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getFrameset() {
+		return frameset;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setFrameset(String newFrameset) {
+		String oldFrameset = frameset;
+		frameset = newFrameset;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_DIAGRAM_FRAME__FRAMESET, oldFrameset, frameset));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public CompartmentsType getCompartments() {
+		if (compartments != null && compartments.eIsProxy()) {
+			InternalEObject oldCompartments = (InternalEObject)compartments;
+			compartments = (CompartmentsType)eResolveProxy(oldCompartments);
+			if (compartments != oldCompartments) {
+				InternalEObject newCompartments = (InternalEObject)compartments;
+				NotificationChain msgs = oldCompartments.eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.CGI_DIAGRAM_FRAME__COMPARTMENTS, null, null);
+				if (newCompartments.eInternalContainer() == null) {
+					msgs = newCompartments.eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.CGI_DIAGRAM_FRAME__COMPARTMENTS, null, msgs);
+				}
+				if (msgs != null) msgs.dispatch();
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.CGI_DIAGRAM_FRAME__COMPARTMENTS, oldCompartments, compartments));
+			}
+		}
+		return compartments;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public CompartmentsType basicGetCompartments() {
+		return compartments;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public NotificationChain basicSetCompartments(CompartmentsType newCompartments, NotificationChain msgs) {
+		CompartmentsType oldCompartments = compartments;
+		compartments = newCompartments;
+		if (eNotificationRequired()) {
+			ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_DIAGRAM_FRAME__COMPARTMENTS, oldCompartments, newCompartments);
+			if (msgs == null) msgs = notification; else msgs.add(notification);
+		}
+		return msgs;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setCompartments(CompartmentsType newCompartments) {
+		if (newCompartments != compartments) {
+			NotificationChain msgs = null;
+			if (compartments != null)
+				msgs = ((InternalEObject)compartments).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.CGI_DIAGRAM_FRAME__COMPARTMENTS, null, msgs);
+			if (newCompartments != null)
+				msgs = ((InternalEObject)newCompartments).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.CGI_DIAGRAM_FRAME__COMPARTMENTS, null, msgs);
+			msgs = basicSetCompartments(newCompartments, msgs);
+			if (msgs != null) msgs.dispatch();
+		}
+		else if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_DIAGRAM_FRAME__COMPARTMENTS, newCompartments, newCompartments));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
+		switch (featureID) {
+			case UMLRpyPackage.CGI_DIAGRAM_FRAME__MADDITIONAL_LABEL:
+				return basicSetM_AdditionalLabel(null, msgs);
+			case UMLRpyPackage.CGI_DIAGRAM_FRAME__COMPARTMENTS:
+				return basicSetCompartments(null, msgs);
+		}
+		return super.eInverseRemove(otherEnd, featureID, msgs);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object eGet(int featureID, boolean resolve, boolean coreType) {
+		switch (featureID) {
+			case UMLRpyPackage.CGI_DIAGRAM_FRAME__MPMODEL_OBJECT:
+				return getM_pModelObject();
+			case UMLRpyPackage.CGI_DIAGRAM_FRAME__MPPARENT:
+				if (resolve) return getM_pParent();
+				return basicGetM_pParent();
+			case UMLRpyPackage.CGI_DIAGRAM_FRAME__MTRANSFORM:
+				return getM_transform();
+			case UMLRpyPackage.CGI_DIAGRAM_FRAME__MADDITIONAL_LABEL:
+				if (resolve) return getM_AdditionalLabel();
+				return basicGetM_AdditionalLabel();
+			case UMLRpyPackage.CGI_DIAGRAM_FRAME__MPOLYGON:
+				return getM_polygon();
+			case UMLRpyPackage.CGI_DIAGRAM_FRAME__MNNAME_FORMAT:
+				return getM_nNameFormat();
+			case UMLRpyPackage.CGI_DIAGRAM_FRAME__MNIS_NAME_FORMAT:
+				return getM_nIsNameFormat();
+			case UMLRpyPackage.CGI_DIAGRAM_FRAME__MBVISIBLE:
+				return getM_bVisible();
+			case UMLRpyPackage.CGI_DIAGRAM_FRAME__FRAMESET:
+				return getFrameset();
+			case UMLRpyPackage.CGI_DIAGRAM_FRAME__COMPARTMENTS:
+				if (resolve) return getCompartments();
+				return basicGetCompartments();
+		}
+		return super.eGet(featureID, resolve, coreType);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@SuppressWarnings("unchecked")
+	@Override
+	public void eSet(int featureID, Object newValue) {
+		switch (featureID) {
+			case UMLRpyPackage.CGI_DIAGRAM_FRAME__MPMODEL_OBJECT:
+				getM_pModelObject().clear();
+				getM_pModelObject().addAll((Collection<? extends UnknownType>)newValue);
+				return;
+			case UMLRpyPackage.CGI_DIAGRAM_FRAME__MPPARENT:
+				setM_pParent((M_pRootType)newValue);
+				return;
+			case UMLRpyPackage.CGI_DIAGRAM_FRAME__MTRANSFORM:
+				getM_transform().clear();
+				getM_transform().addAll((Collection<? extends String>)newValue);
+				return;
+			case UMLRpyPackage.CGI_DIAGRAM_FRAME__MADDITIONAL_LABEL:
+				setM_AdditionalLabel((CGIText)newValue);
+				return;
+			case UMLRpyPackage.CGI_DIAGRAM_FRAME__MPOLYGON:
+				getM_polygon().clear();
+				getM_polygon().addAll((Collection<? extends String>)newValue);
+				return;
+			case UMLRpyPackage.CGI_DIAGRAM_FRAME__MNNAME_FORMAT:
+				setM_nNameFormat((String)newValue);
+				return;
+			case UMLRpyPackage.CGI_DIAGRAM_FRAME__MNIS_NAME_FORMAT:
+				setM_nIsNameFormat((String)newValue);
+				return;
+			case UMLRpyPackage.CGI_DIAGRAM_FRAME__MBVISIBLE:
+				setM_bVisible((String)newValue);
+				return;
+			case UMLRpyPackage.CGI_DIAGRAM_FRAME__FRAMESET:
+				setFrameset((String)newValue);
+				return;
+			case UMLRpyPackage.CGI_DIAGRAM_FRAME__COMPARTMENTS:
+				setCompartments((CompartmentsType)newValue);
+				return;
+		}
+		super.eSet(featureID, newValue);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void eUnset(int featureID) {
+		switch (featureID) {
+			case UMLRpyPackage.CGI_DIAGRAM_FRAME__MPMODEL_OBJECT:
+				getM_pModelObject().clear();
+				return;
+			case UMLRpyPackage.CGI_DIAGRAM_FRAME__MPPARENT:
+				setM_pParent((M_pRootType)null);
+				return;
+			case UMLRpyPackage.CGI_DIAGRAM_FRAME__MTRANSFORM:
+				getM_transform().clear();
+				return;
+			case UMLRpyPackage.CGI_DIAGRAM_FRAME__MADDITIONAL_LABEL:
+				setM_AdditionalLabel((CGIText)null);
+				return;
+			case UMLRpyPackage.CGI_DIAGRAM_FRAME__MPOLYGON:
+				getM_polygon().clear();
+				return;
+			case UMLRpyPackage.CGI_DIAGRAM_FRAME__MNNAME_FORMAT:
+				setM_nNameFormat(MNNAME_FORMAT_EDEFAULT);
+				return;
+			case UMLRpyPackage.CGI_DIAGRAM_FRAME__MNIS_NAME_FORMAT:
+				setM_nIsNameFormat(MNIS_NAME_FORMAT_EDEFAULT);
+				return;
+			case UMLRpyPackage.CGI_DIAGRAM_FRAME__MBVISIBLE:
+				setM_bVisible(MBVISIBLE_EDEFAULT);
+				return;
+			case UMLRpyPackage.CGI_DIAGRAM_FRAME__FRAMESET:
+				setFrameset(FRAMESET_EDEFAULT);
+				return;
+			case UMLRpyPackage.CGI_DIAGRAM_FRAME__COMPARTMENTS:
+				setCompartments((CompartmentsType)null);
+				return;
+		}
+		super.eUnset(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public boolean eIsSet(int featureID) {
+		switch (featureID) {
+			case UMLRpyPackage.CGI_DIAGRAM_FRAME__MPMODEL_OBJECT:
+				return m_pModelObject != null && !m_pModelObject.isEmpty();
+			case UMLRpyPackage.CGI_DIAGRAM_FRAME__MPPARENT:
+				return m_pParent != null;
+			case UMLRpyPackage.CGI_DIAGRAM_FRAME__MTRANSFORM:
+				return m_transform != null && !m_transform.isEmpty();
+			case UMLRpyPackage.CGI_DIAGRAM_FRAME__MADDITIONAL_LABEL:
+				return m_AdditionalLabel != null;
+			case UMLRpyPackage.CGI_DIAGRAM_FRAME__MPOLYGON:
+				return m_polygon != null && !m_polygon.isEmpty();
+			case UMLRpyPackage.CGI_DIAGRAM_FRAME__MNNAME_FORMAT:
+				return MNNAME_FORMAT_EDEFAULT == null ? m_nNameFormat != null : !MNNAME_FORMAT_EDEFAULT.equals(m_nNameFormat);
+			case UMLRpyPackage.CGI_DIAGRAM_FRAME__MNIS_NAME_FORMAT:
+				return MNIS_NAME_FORMAT_EDEFAULT == null ? m_nIsNameFormat != null : !MNIS_NAME_FORMAT_EDEFAULT.equals(m_nIsNameFormat);
+			case UMLRpyPackage.CGI_DIAGRAM_FRAME__MBVISIBLE:
+				return MBVISIBLE_EDEFAULT == null ? m_bVisible != null : !MBVISIBLE_EDEFAULT.equals(m_bVisible);
+			case UMLRpyPackage.CGI_DIAGRAM_FRAME__FRAMESET:
+				return FRAMESET_EDEFAULT == null ? frameset != null : !FRAMESET_EDEFAULT.equals(frameset);
+			case UMLRpyPackage.CGI_DIAGRAM_FRAME__COMPARTMENTS:
+				return compartments != null;
+		}
+		return super.eIsSet(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String toString() {
+		if (eIsProxy()) return super.toString();
+
+		StringBuffer result = new StringBuffer(super.toString());
+		result.append(" (m_transform: "); //$NON-NLS-1$
+		result.append(m_transform);
+		result.append(", m_polygon: "); //$NON-NLS-1$
+		result.append(m_polygon);
+		result.append(", m_nNameFormat: "); //$NON-NLS-1$
+		result.append(m_nNameFormat);
+		result.append(", m_nIsNameFormat: "); //$NON-NLS-1$
+		result.append(m_nIsNameFormat);
+		result.append(", m_bVisible: "); //$NON-NLS-1$
+		result.append(m_bVisible);
+		result.append(", frameset: "); //$NON-NLS-1$
+		result.append(frameset);
+		result.append(')');
+		return result.toString();
+	}
+
+} //CGIDiagramFrameImpl
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/CGIFreeShapeImpl.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/CGIFreeShapeImpl.java
new file mode 100755
index 0000000..187fda5
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/CGIFreeShapeImpl.java
@@ -0,0 +1,399 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl;
+
+import java.util.Collection;
+
+import org.eclipse.emf.common.notify.Notification;
+import org.eclipse.emf.common.notify.NotificationChain;
+
+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.EDataTypeEList;
+import org.eclipse.emf.ecore.util.EObjectResolvingEList;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIFreeShape;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.GraphElementsType;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IPropertyContainer;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UnknownType;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>CGI Free Shape</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * </p>
+ * <ul>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIFreeShapeImpl#getProperties <em>Properties</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIFreeShapeImpl#getM_pModelObject <em>MpModel Object</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIFreeShapeImpl#getM_pParent <em>MpParent</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIFreeShapeImpl#getM_transform <em>Mtransform</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIFreeShapeImpl#getM_points <em>Mpoints</em>}</li>
+ * </ul>
+ *
+ * @generated
+ */
+public class CGIFreeShapeImpl extends GraphElementsTypeImpl implements CGIFreeShape {
+	/**
+	 * The cached value of the '{@link #getProperties() <em>Properties</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getProperties()
+	 * @generated
+	 * @ordered
+	 */
+	protected IPropertyContainer properties;
+
+	/**
+	 * The cached value of the '{@link #getM_pModelObject() <em>MpModel Object</em>}' reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_pModelObject()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<UnknownType> m_pModelObject;
+
+	/**
+	 * The cached value of the '{@link #getM_pParent() <em>MpParent</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_pParent()
+	 * @generated
+	 * @ordered
+	 */
+	protected GraphElementsType m_pParent;
+
+	/**
+	 * The cached value of the '{@link #getM_transform() <em>Mtransform</em>}' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_transform()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<String> m_transform;
+
+	/**
+	 * The cached value of the '{@link #getM_points() <em>Mpoints</em>}' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_points()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<String> m_points;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected CGIFreeShapeImpl() {
+		super();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EClass eStaticClass() {
+		return UMLRpyPackage.eINSTANCE.getCGIFreeShape();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IPropertyContainer getProperties() {
+		if (properties != null && properties.eIsProxy()) {
+			InternalEObject oldProperties = (InternalEObject)properties;
+			properties = (IPropertyContainer)eResolveProxy(oldProperties);
+			if (properties != oldProperties) {
+				InternalEObject newProperties = (InternalEObject)properties;
+				NotificationChain msgs = oldProperties.eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.CGI_FREE_SHAPE__PROPERTIES, null, null);
+				if (newProperties.eInternalContainer() == null) {
+					msgs = newProperties.eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.CGI_FREE_SHAPE__PROPERTIES, null, msgs);
+				}
+				if (msgs != null) msgs.dispatch();
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.CGI_FREE_SHAPE__PROPERTIES, oldProperties, properties));
+			}
+		}
+		return properties;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IPropertyContainer basicGetProperties() {
+		return properties;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public NotificationChain basicSetProperties(IPropertyContainer newProperties, NotificationChain msgs) {
+		IPropertyContainer oldProperties = properties;
+		properties = newProperties;
+		if (eNotificationRequired()) {
+			ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_FREE_SHAPE__PROPERTIES, oldProperties, newProperties);
+			if (msgs == null) msgs = notification; else msgs.add(notification);
+		}
+		return msgs;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setProperties(IPropertyContainer newProperties) {
+		if (newProperties != properties) {
+			NotificationChain msgs = null;
+			if (properties != null)
+				msgs = ((InternalEObject)properties).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.CGI_FREE_SHAPE__PROPERTIES, null, msgs);
+			if (newProperties != null)
+				msgs = ((InternalEObject)newProperties).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.CGI_FREE_SHAPE__PROPERTIES, null, msgs);
+			msgs = basicSetProperties(newProperties, msgs);
+			if (msgs != null) msgs.dispatch();
+		}
+		else if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_FREE_SHAPE__PROPERTIES, newProperties, newProperties));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<UnknownType> getM_pModelObject() {
+		if (m_pModelObject == null) {
+			m_pModelObject = new EObjectResolvingEList<UnknownType>(UnknownType.class, this, UMLRpyPackage.CGI_FREE_SHAPE__MPMODEL_OBJECT);
+		}
+		return m_pModelObject;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public GraphElementsType getM_pParent() {
+		if (m_pParent != null && m_pParent.eIsProxy()) {
+			InternalEObject oldM_pParent = (InternalEObject)m_pParent;
+			m_pParent = (GraphElementsType)eResolveProxy(oldM_pParent);
+			if (m_pParent != oldM_pParent) {
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.CGI_FREE_SHAPE__MPPARENT, oldM_pParent, m_pParent));
+			}
+		}
+		return m_pParent;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public GraphElementsType basicGetM_pParent() {
+		return m_pParent;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_pParent(GraphElementsType newM_pParent) {
+		GraphElementsType oldM_pParent = m_pParent;
+		m_pParent = newM_pParent;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_FREE_SHAPE__MPPARENT, oldM_pParent, m_pParent));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<String> getM_transform() {
+		if (m_transform == null) {
+			m_transform = new EDataTypeEList<String>(String.class, this, UMLRpyPackage.CGI_FREE_SHAPE__MTRANSFORM);
+		}
+		return m_transform;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<String> getM_points() {
+		if (m_points == null) {
+			m_points = new EDataTypeEList<String>(String.class, this, UMLRpyPackage.CGI_FREE_SHAPE__MPOINTS);
+		}
+		return m_points;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
+		switch (featureID) {
+			case UMLRpyPackage.CGI_FREE_SHAPE__PROPERTIES:
+				return basicSetProperties(null, msgs);
+		}
+		return super.eInverseRemove(otherEnd, featureID, msgs);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object eGet(int featureID, boolean resolve, boolean coreType) {
+		switch (featureID) {
+			case UMLRpyPackage.CGI_FREE_SHAPE__PROPERTIES:
+				if (resolve) return getProperties();
+				return basicGetProperties();
+			case UMLRpyPackage.CGI_FREE_SHAPE__MPMODEL_OBJECT:
+				return getM_pModelObject();
+			case UMLRpyPackage.CGI_FREE_SHAPE__MPPARENT:
+				if (resolve) return getM_pParent();
+				return basicGetM_pParent();
+			case UMLRpyPackage.CGI_FREE_SHAPE__MTRANSFORM:
+				return getM_transform();
+			case UMLRpyPackage.CGI_FREE_SHAPE__MPOINTS:
+				return getM_points();
+		}
+		return super.eGet(featureID, resolve, coreType);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@SuppressWarnings("unchecked")
+	@Override
+	public void eSet(int featureID, Object newValue) {
+		switch (featureID) {
+			case UMLRpyPackage.CGI_FREE_SHAPE__PROPERTIES:
+				setProperties((IPropertyContainer)newValue);
+				return;
+			case UMLRpyPackage.CGI_FREE_SHAPE__MPMODEL_OBJECT:
+				getM_pModelObject().clear();
+				getM_pModelObject().addAll((Collection<? extends UnknownType>)newValue);
+				return;
+			case UMLRpyPackage.CGI_FREE_SHAPE__MPPARENT:
+				setM_pParent((GraphElementsType)newValue);
+				return;
+			case UMLRpyPackage.CGI_FREE_SHAPE__MTRANSFORM:
+				getM_transform().clear();
+				getM_transform().addAll((Collection<? extends String>)newValue);
+				return;
+			case UMLRpyPackage.CGI_FREE_SHAPE__MPOINTS:
+				getM_points().clear();
+				getM_points().addAll((Collection<? extends String>)newValue);
+				return;
+		}
+		super.eSet(featureID, newValue);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void eUnset(int featureID) {
+		switch (featureID) {
+			case UMLRpyPackage.CGI_FREE_SHAPE__PROPERTIES:
+				setProperties((IPropertyContainer)null);
+				return;
+			case UMLRpyPackage.CGI_FREE_SHAPE__MPMODEL_OBJECT:
+				getM_pModelObject().clear();
+				return;
+			case UMLRpyPackage.CGI_FREE_SHAPE__MPPARENT:
+				setM_pParent((GraphElementsType)null);
+				return;
+			case UMLRpyPackage.CGI_FREE_SHAPE__MTRANSFORM:
+				getM_transform().clear();
+				return;
+			case UMLRpyPackage.CGI_FREE_SHAPE__MPOINTS:
+				getM_points().clear();
+				return;
+		}
+		super.eUnset(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public boolean eIsSet(int featureID) {
+		switch (featureID) {
+			case UMLRpyPackage.CGI_FREE_SHAPE__PROPERTIES:
+				return properties != null;
+			case UMLRpyPackage.CGI_FREE_SHAPE__MPMODEL_OBJECT:
+				return m_pModelObject != null && !m_pModelObject.isEmpty();
+			case UMLRpyPackage.CGI_FREE_SHAPE__MPPARENT:
+				return m_pParent != null;
+			case UMLRpyPackage.CGI_FREE_SHAPE__MTRANSFORM:
+				return m_transform != null && !m_transform.isEmpty();
+			case UMLRpyPackage.CGI_FREE_SHAPE__MPOINTS:
+				return m_points != null && !m_points.isEmpty();
+		}
+		return super.eIsSet(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String toString() {
+		if (eIsProxy()) return super.toString();
+
+		StringBuffer result = new StringBuffer(super.toString());
+		result.append(" (m_transform: "); //$NON-NLS-1$
+		result.append(m_transform);
+		result.append(", m_points: "); //$NON-NLS-1$
+		result.append(m_points);
+		result.append(')');
+		return result.toString();
+	}
+
+} //CGIFreeShapeImpl
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/CGIFreeTextImpl.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/CGIFreeTextImpl.java
new file mode 100755
index 0000000..20bbad0
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/CGIFreeTextImpl.java
@@ -0,0 +1,453 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl;
+
+import java.util.Collection;
+
+import org.eclipse.emf.common.notify.Notification;
+import org.eclipse.emf.common.notify.NotificationChain;
+
+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.EDataTypeEList;
+import org.eclipse.emf.ecore.util.EObjectResolvingEList;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIFreeText;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.GraphElementsType;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IPropertyContainer;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UnknownType;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>CGI Free Text</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * </p>
+ * <ul>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIFreeTextImpl#getM_pModelObject <em>MpModel Object</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIFreeTextImpl#getM_pParent <em>MpParent</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIFreeTextImpl#getM_transform <em>Mtransform</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIFreeTextImpl#getM_points <em>Mpoints</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIFreeTextImpl#getM_text <em>Mtext</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIFreeTextImpl#getProperties <em>Properties</em>}</li>
+ * </ul>
+ *
+ * @generated
+ */
+public class CGIFreeTextImpl extends GraphElementsTypeImpl implements CGIFreeText {
+	/**
+	 * The cached value of the '{@link #getM_pModelObject() <em>MpModel Object</em>}' reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_pModelObject()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<UnknownType> m_pModelObject;
+
+	/**
+	 * The cached value of the '{@link #getM_pParent() <em>MpParent</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_pParent()
+	 * @generated
+	 * @ordered
+	 */
+	protected GraphElementsType m_pParent;
+
+	/**
+	 * The cached value of the '{@link #getM_transform() <em>Mtransform</em>}' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_transform()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<String> m_transform;
+
+	/**
+	 * The cached value of the '{@link #getM_points() <em>Mpoints</em>}' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_points()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<String> m_points;
+
+	/**
+	 * The default value of the '{@link #getM_text() <em>Mtext</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_text()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String MTEXT_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getM_text() <em>Mtext</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_text()
+	 * @generated
+	 * @ordered
+	 */
+	protected String m_text = MTEXT_EDEFAULT;
+
+	/**
+	 * The cached value of the '{@link #getProperties() <em>Properties</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getProperties()
+	 * @generated
+	 * @ordered
+	 */
+	protected IPropertyContainer properties;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected CGIFreeTextImpl() {
+		super();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EClass eStaticClass() {
+		return UMLRpyPackage.eINSTANCE.getCGIFreeText();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<UnknownType> getM_pModelObject() {
+		if (m_pModelObject == null) {
+			m_pModelObject = new EObjectResolvingEList<UnknownType>(UnknownType.class, this, UMLRpyPackage.CGI_FREE_TEXT__MPMODEL_OBJECT);
+		}
+		return m_pModelObject;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public GraphElementsType getM_pParent() {
+		if (m_pParent != null && m_pParent.eIsProxy()) {
+			InternalEObject oldM_pParent = (InternalEObject)m_pParent;
+			m_pParent = (GraphElementsType)eResolveProxy(oldM_pParent);
+			if (m_pParent != oldM_pParent) {
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.CGI_FREE_TEXT__MPPARENT, oldM_pParent, m_pParent));
+			}
+		}
+		return m_pParent;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public GraphElementsType basicGetM_pParent() {
+		return m_pParent;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_pParent(GraphElementsType newM_pParent) {
+		GraphElementsType oldM_pParent = m_pParent;
+		m_pParent = newM_pParent;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_FREE_TEXT__MPPARENT, oldM_pParent, m_pParent));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<String> getM_transform() {
+		if (m_transform == null) {
+			m_transform = new EDataTypeEList<String>(String.class, this, UMLRpyPackage.CGI_FREE_TEXT__MTRANSFORM);
+		}
+		return m_transform;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<String> getM_points() {
+		if (m_points == null) {
+			m_points = new EDataTypeEList<String>(String.class, this, UMLRpyPackage.CGI_FREE_TEXT__MPOINTS);
+		}
+		return m_points;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getM_text() {
+		return m_text;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_text(String newM_text) {
+		String oldM_text = m_text;
+		m_text = newM_text;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_FREE_TEXT__MTEXT, oldM_text, m_text));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IPropertyContainer getProperties() {
+		if (properties != null && properties.eIsProxy()) {
+			InternalEObject oldProperties = (InternalEObject)properties;
+			properties = (IPropertyContainer)eResolveProxy(oldProperties);
+			if (properties != oldProperties) {
+				InternalEObject newProperties = (InternalEObject)properties;
+				NotificationChain msgs = oldProperties.eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.CGI_FREE_TEXT__PROPERTIES, null, null);
+				if (newProperties.eInternalContainer() == null) {
+					msgs = newProperties.eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.CGI_FREE_TEXT__PROPERTIES, null, msgs);
+				}
+				if (msgs != null) msgs.dispatch();
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.CGI_FREE_TEXT__PROPERTIES, oldProperties, properties));
+			}
+		}
+		return properties;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IPropertyContainer basicGetProperties() {
+		return properties;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public NotificationChain basicSetProperties(IPropertyContainer newProperties, NotificationChain msgs) {
+		IPropertyContainer oldProperties = properties;
+		properties = newProperties;
+		if (eNotificationRequired()) {
+			ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_FREE_TEXT__PROPERTIES, oldProperties, newProperties);
+			if (msgs == null) msgs = notification; else msgs.add(notification);
+		}
+		return msgs;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setProperties(IPropertyContainer newProperties) {
+		if (newProperties != properties) {
+			NotificationChain msgs = null;
+			if (properties != null)
+				msgs = ((InternalEObject)properties).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.CGI_FREE_TEXT__PROPERTIES, null, msgs);
+			if (newProperties != null)
+				msgs = ((InternalEObject)newProperties).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.CGI_FREE_TEXT__PROPERTIES, null, msgs);
+			msgs = basicSetProperties(newProperties, msgs);
+			if (msgs != null) msgs.dispatch();
+		}
+		else if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_FREE_TEXT__PROPERTIES, newProperties, newProperties));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
+		switch (featureID) {
+			case UMLRpyPackage.CGI_FREE_TEXT__PROPERTIES:
+				return basicSetProperties(null, msgs);
+		}
+		return super.eInverseRemove(otherEnd, featureID, msgs);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object eGet(int featureID, boolean resolve, boolean coreType) {
+		switch (featureID) {
+			case UMLRpyPackage.CGI_FREE_TEXT__MPMODEL_OBJECT:
+				return getM_pModelObject();
+			case UMLRpyPackage.CGI_FREE_TEXT__MPPARENT:
+				if (resolve) return getM_pParent();
+				return basicGetM_pParent();
+			case UMLRpyPackage.CGI_FREE_TEXT__MTRANSFORM:
+				return getM_transform();
+			case UMLRpyPackage.CGI_FREE_TEXT__MPOINTS:
+				return getM_points();
+			case UMLRpyPackage.CGI_FREE_TEXT__MTEXT:
+				return getM_text();
+			case UMLRpyPackage.CGI_FREE_TEXT__PROPERTIES:
+				if (resolve) return getProperties();
+				return basicGetProperties();
+		}
+		return super.eGet(featureID, resolve, coreType);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@SuppressWarnings("unchecked")
+	@Override
+	public void eSet(int featureID, Object newValue) {
+		switch (featureID) {
+			case UMLRpyPackage.CGI_FREE_TEXT__MPMODEL_OBJECT:
+				getM_pModelObject().clear();
+				getM_pModelObject().addAll((Collection<? extends UnknownType>)newValue);
+				return;
+			case UMLRpyPackage.CGI_FREE_TEXT__MPPARENT:
+				setM_pParent((GraphElementsType)newValue);
+				return;
+			case UMLRpyPackage.CGI_FREE_TEXT__MTRANSFORM:
+				getM_transform().clear();
+				getM_transform().addAll((Collection<? extends String>)newValue);
+				return;
+			case UMLRpyPackage.CGI_FREE_TEXT__MPOINTS:
+				getM_points().clear();
+				getM_points().addAll((Collection<? extends String>)newValue);
+				return;
+			case UMLRpyPackage.CGI_FREE_TEXT__MTEXT:
+				setM_text((String)newValue);
+				return;
+			case UMLRpyPackage.CGI_FREE_TEXT__PROPERTIES:
+				setProperties((IPropertyContainer)newValue);
+				return;
+		}
+		super.eSet(featureID, newValue);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void eUnset(int featureID) {
+		switch (featureID) {
+			case UMLRpyPackage.CGI_FREE_TEXT__MPMODEL_OBJECT:
+				getM_pModelObject().clear();
+				return;
+			case UMLRpyPackage.CGI_FREE_TEXT__MPPARENT:
+				setM_pParent((GraphElementsType)null);
+				return;
+			case UMLRpyPackage.CGI_FREE_TEXT__MTRANSFORM:
+				getM_transform().clear();
+				return;
+			case UMLRpyPackage.CGI_FREE_TEXT__MPOINTS:
+				getM_points().clear();
+				return;
+			case UMLRpyPackage.CGI_FREE_TEXT__MTEXT:
+				setM_text(MTEXT_EDEFAULT);
+				return;
+			case UMLRpyPackage.CGI_FREE_TEXT__PROPERTIES:
+				setProperties((IPropertyContainer)null);
+				return;
+		}
+		super.eUnset(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public boolean eIsSet(int featureID) {
+		switch (featureID) {
+			case UMLRpyPackage.CGI_FREE_TEXT__MPMODEL_OBJECT:
+				return m_pModelObject != null && !m_pModelObject.isEmpty();
+			case UMLRpyPackage.CGI_FREE_TEXT__MPPARENT:
+				return m_pParent != null;
+			case UMLRpyPackage.CGI_FREE_TEXT__MTRANSFORM:
+				return m_transform != null && !m_transform.isEmpty();
+			case UMLRpyPackage.CGI_FREE_TEXT__MPOINTS:
+				return m_points != null && !m_points.isEmpty();
+			case UMLRpyPackage.CGI_FREE_TEXT__MTEXT:
+				return MTEXT_EDEFAULT == null ? m_text != null : !MTEXT_EDEFAULT.equals(m_text);
+			case UMLRpyPackage.CGI_FREE_TEXT__PROPERTIES:
+				return properties != null;
+		}
+		return super.eIsSet(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String toString() {
+		if (eIsProxy()) return super.toString();
+
+		StringBuffer result = new StringBuffer(super.toString());
+		result.append(" (m_transform: "); //$NON-NLS-1$
+		result.append(m_transform);
+		result.append(", m_points: "); //$NON-NLS-1$
+		result.append(m_points);
+		result.append(", m_text: "); //$NON-NLS-1$
+		result.append(m_text);
+		result.append(')');
+		return result.toString();
+	}
+
+} //CGIFreeTextImpl
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/CGIGenericElementImpl.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/CGIGenericElementImpl.java
new file mode 100755
index 0000000..242d0ec
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/CGIGenericElementImpl.java
@@ -0,0 +1,991 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl;
+
+import java.util.Collection;
+
+import org.eclipse.emf.common.notify.Notification;
+import org.eclipse.emf.common.notify.NotificationChain;
+
+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.EDataTypeEList;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIGenericElement;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIImageData;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIText;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CompartmentsType;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IPropertyContainer;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.M_pModelObjectType;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.M_pRootType;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>CGI Generic Element</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * </p>
+ * <ul>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIGenericElementImpl#getM_pModelObject <em>MpModel Object</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIGenericElementImpl#getM_pParent <em>MpParent</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIGenericElementImpl#getM_transform <em>Mtransform</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIGenericElementImpl#getM_AdditionalLabel <em>MAdditional Label</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIGenericElementImpl#getM_polygon <em>Mpolygon</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIGenericElementImpl#getM_nNameFormat <em>MnName Format</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIGenericElementImpl#getM_nIsNameFormat <em>MnIs Name Format</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIGenericElementImpl#getFrameset <em>Frameset</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIGenericElementImpl#getCompartments <em>Compartments</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIGenericElementImpl#getProperties <em>Properties</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIGenericElementImpl#getM_pImageViewData <em>MpImage View Data</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIGenericElementImpl#getM_csContext <em>Mcs Context</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIGenericElementImpl#getM_csPartsArray <em>Mcs Parts Array</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIGenericElementImpl#getM_bIsStructured <em>MbIs Structured</em>}</li>
+ * </ul>
+ *
+ * @generated
+ */
+public class CGIGenericElementImpl extends GraphElementsTypeImpl implements CGIGenericElement {
+	/**
+	 * The cached value of the '{@link #getM_pModelObject() <em>MpModel Object</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_pModelObject()
+	 * @generated
+	 * @ordered
+	 */
+	protected M_pModelObjectType m_pModelObject;
+
+	/**
+	 * The cached value of the '{@link #getM_pParent() <em>MpParent</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_pParent()
+	 * @generated
+	 * @ordered
+	 */
+	protected M_pRootType m_pParent;
+
+	/**
+	 * The cached value of the '{@link #getM_transform() <em>Mtransform</em>}' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_transform()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<String> m_transform;
+
+	/**
+	 * The cached value of the '{@link #getM_AdditionalLabel() <em>MAdditional Label</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_AdditionalLabel()
+	 * @generated
+	 * @ordered
+	 */
+	protected CGIText m_AdditionalLabel;
+
+	/**
+	 * The cached value of the '{@link #getM_polygon() <em>Mpolygon</em>}' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_polygon()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<String> m_polygon;
+
+	/**
+	 * The default value of the '{@link #getM_nNameFormat() <em>MnName Format</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_nNameFormat()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String MNNAME_FORMAT_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getM_nNameFormat() <em>MnName Format</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_nNameFormat()
+	 * @generated
+	 * @ordered
+	 */
+	protected String m_nNameFormat = MNNAME_FORMAT_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getM_nIsNameFormat() <em>MnIs Name Format</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_nIsNameFormat()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String MNIS_NAME_FORMAT_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getM_nIsNameFormat() <em>MnIs Name Format</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_nIsNameFormat()
+	 * @generated
+	 * @ordered
+	 */
+	protected String m_nIsNameFormat = MNIS_NAME_FORMAT_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getFrameset() <em>Frameset</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getFrameset()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String FRAMESET_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getFrameset() <em>Frameset</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getFrameset()
+	 * @generated
+	 * @ordered
+	 */
+	protected String frameset = FRAMESET_EDEFAULT;
+
+	/**
+	 * The cached value of the '{@link #getCompartments() <em>Compartments</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getCompartments()
+	 * @generated
+	 * @ordered
+	 */
+	protected CompartmentsType compartments;
+
+	/**
+	 * The cached value of the '{@link #getProperties() <em>Properties</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getProperties()
+	 * @generated
+	 * @ordered
+	 */
+	protected IPropertyContainer properties;
+
+	/**
+	 * The cached value of the '{@link #getM_pImageViewData() <em>MpImage View Data</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_pImageViewData()
+	 * @generated
+	 * @ordered
+	 */
+	protected CGIImageData m_pImageViewData;
+
+	/**
+	 * The default value of the '{@link #getM_csContext() <em>Mcs Context</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_csContext()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String MCS_CONTEXT_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getM_csContext() <em>Mcs Context</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_csContext()
+	 * @generated
+	 * @ordered
+	 */
+	protected String m_csContext = MCS_CONTEXT_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getM_csPartsArray() <em>Mcs Parts Array</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_csPartsArray()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String MCS_PARTS_ARRAY_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getM_csPartsArray() <em>Mcs Parts Array</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_csPartsArray()
+	 * @generated
+	 * @ordered
+	 */
+	protected String m_csPartsArray = MCS_PARTS_ARRAY_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getM_bIsStructured() <em>MbIs Structured</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_bIsStructured()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String MBIS_STRUCTURED_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getM_bIsStructured() <em>MbIs Structured</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_bIsStructured()
+	 * @generated
+	 * @ordered
+	 */
+	protected String m_bIsStructured = MBIS_STRUCTURED_EDEFAULT;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected CGIGenericElementImpl() {
+		super();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EClass eStaticClass() {
+		return UMLRpyPackage.eINSTANCE.getCGIGenericElement();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public M_pModelObjectType getM_pModelObject() {
+		if (m_pModelObject != null && m_pModelObject.eIsProxy()) {
+			InternalEObject oldM_pModelObject = (InternalEObject)m_pModelObject;
+			m_pModelObject = (M_pModelObjectType)eResolveProxy(oldM_pModelObject);
+			if (m_pModelObject != oldM_pModelObject) {
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.CGI_GENERIC_ELEMENT__MPMODEL_OBJECT, oldM_pModelObject, m_pModelObject));
+			}
+		}
+		return m_pModelObject;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public M_pModelObjectType basicGetM_pModelObject() {
+		return m_pModelObject;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_pModelObject(M_pModelObjectType newM_pModelObject) {
+		M_pModelObjectType oldM_pModelObject = m_pModelObject;
+		m_pModelObject = newM_pModelObject;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_GENERIC_ELEMENT__MPMODEL_OBJECT, oldM_pModelObject, m_pModelObject));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public M_pRootType getM_pParent() {
+		if (m_pParent != null && m_pParent.eIsProxy()) {
+			InternalEObject oldM_pParent = (InternalEObject)m_pParent;
+			m_pParent = (M_pRootType)eResolveProxy(oldM_pParent);
+			if (m_pParent != oldM_pParent) {
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.CGI_GENERIC_ELEMENT__MPPARENT, oldM_pParent, m_pParent));
+			}
+		}
+		return m_pParent;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public M_pRootType basicGetM_pParent() {
+		return m_pParent;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_pParent(M_pRootType newM_pParent) {
+		M_pRootType oldM_pParent = m_pParent;
+		m_pParent = newM_pParent;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_GENERIC_ELEMENT__MPPARENT, oldM_pParent, m_pParent));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<String> getM_transform() {
+		if (m_transform == null) {
+			m_transform = new EDataTypeEList<String>(String.class, this, UMLRpyPackage.CGI_GENERIC_ELEMENT__MTRANSFORM);
+		}
+		return m_transform;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public CGIText getM_AdditionalLabel() {
+		if (m_AdditionalLabel != null && m_AdditionalLabel.eIsProxy()) {
+			InternalEObject oldM_AdditionalLabel = (InternalEObject)m_AdditionalLabel;
+			m_AdditionalLabel = (CGIText)eResolveProxy(oldM_AdditionalLabel);
+			if (m_AdditionalLabel != oldM_AdditionalLabel) {
+				InternalEObject newM_AdditionalLabel = (InternalEObject)m_AdditionalLabel;
+				NotificationChain msgs = oldM_AdditionalLabel.eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.CGI_GENERIC_ELEMENT__MADDITIONAL_LABEL, null, null);
+				if (newM_AdditionalLabel.eInternalContainer() == null) {
+					msgs = newM_AdditionalLabel.eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.CGI_GENERIC_ELEMENT__MADDITIONAL_LABEL, null, msgs);
+				}
+				if (msgs != null) msgs.dispatch();
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.CGI_GENERIC_ELEMENT__MADDITIONAL_LABEL, oldM_AdditionalLabel, m_AdditionalLabel));
+			}
+		}
+		return m_AdditionalLabel;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public CGIText basicGetM_AdditionalLabel() {
+		return m_AdditionalLabel;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public NotificationChain basicSetM_AdditionalLabel(CGIText newM_AdditionalLabel, NotificationChain msgs) {
+		CGIText oldM_AdditionalLabel = m_AdditionalLabel;
+		m_AdditionalLabel = newM_AdditionalLabel;
+		if (eNotificationRequired()) {
+			ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_GENERIC_ELEMENT__MADDITIONAL_LABEL, oldM_AdditionalLabel, newM_AdditionalLabel);
+			if (msgs == null) msgs = notification; else msgs.add(notification);
+		}
+		return msgs;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_AdditionalLabel(CGIText newM_AdditionalLabel) {
+		if (newM_AdditionalLabel != m_AdditionalLabel) {
+			NotificationChain msgs = null;
+			if (m_AdditionalLabel != null)
+				msgs = ((InternalEObject)m_AdditionalLabel).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.CGI_GENERIC_ELEMENT__MADDITIONAL_LABEL, null, msgs);
+			if (newM_AdditionalLabel != null)
+				msgs = ((InternalEObject)newM_AdditionalLabel).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.CGI_GENERIC_ELEMENT__MADDITIONAL_LABEL, null, msgs);
+			msgs = basicSetM_AdditionalLabel(newM_AdditionalLabel, msgs);
+			if (msgs != null) msgs.dispatch();
+		}
+		else if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_GENERIC_ELEMENT__MADDITIONAL_LABEL, newM_AdditionalLabel, newM_AdditionalLabel));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<String> getM_polygon() {
+		if (m_polygon == null) {
+			m_polygon = new EDataTypeEList<String>(String.class, this, UMLRpyPackage.CGI_GENERIC_ELEMENT__MPOLYGON);
+		}
+		return m_polygon;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getM_nNameFormat() {
+		return m_nNameFormat;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_nNameFormat(String newM_nNameFormat) {
+		String oldM_nNameFormat = m_nNameFormat;
+		m_nNameFormat = newM_nNameFormat;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_GENERIC_ELEMENT__MNNAME_FORMAT, oldM_nNameFormat, m_nNameFormat));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getM_nIsNameFormat() {
+		return m_nIsNameFormat;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_nIsNameFormat(String newM_nIsNameFormat) {
+		String oldM_nIsNameFormat = m_nIsNameFormat;
+		m_nIsNameFormat = newM_nIsNameFormat;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_GENERIC_ELEMENT__MNIS_NAME_FORMAT, oldM_nIsNameFormat, m_nIsNameFormat));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getFrameset() {
+		return frameset;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setFrameset(String newFrameset) {
+		String oldFrameset = frameset;
+		frameset = newFrameset;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_GENERIC_ELEMENT__FRAMESET, oldFrameset, frameset));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public CompartmentsType getCompartments() {
+		if (compartments != null && compartments.eIsProxy()) {
+			InternalEObject oldCompartments = (InternalEObject)compartments;
+			compartments = (CompartmentsType)eResolveProxy(oldCompartments);
+			if (compartments != oldCompartments) {
+				InternalEObject newCompartments = (InternalEObject)compartments;
+				NotificationChain msgs = oldCompartments.eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.CGI_GENERIC_ELEMENT__COMPARTMENTS, null, null);
+				if (newCompartments.eInternalContainer() == null) {
+					msgs = newCompartments.eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.CGI_GENERIC_ELEMENT__COMPARTMENTS, null, msgs);
+				}
+				if (msgs != null) msgs.dispatch();
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.CGI_GENERIC_ELEMENT__COMPARTMENTS, oldCompartments, compartments));
+			}
+		}
+		return compartments;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public CompartmentsType basicGetCompartments() {
+		return compartments;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public NotificationChain basicSetCompartments(CompartmentsType newCompartments, NotificationChain msgs) {
+		CompartmentsType oldCompartments = compartments;
+		compartments = newCompartments;
+		if (eNotificationRequired()) {
+			ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_GENERIC_ELEMENT__COMPARTMENTS, oldCompartments, newCompartments);
+			if (msgs == null) msgs = notification; else msgs.add(notification);
+		}
+		return msgs;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setCompartments(CompartmentsType newCompartments) {
+		if (newCompartments != compartments) {
+			NotificationChain msgs = null;
+			if (compartments != null)
+				msgs = ((InternalEObject)compartments).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.CGI_GENERIC_ELEMENT__COMPARTMENTS, null, msgs);
+			if (newCompartments != null)
+				msgs = ((InternalEObject)newCompartments).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.CGI_GENERIC_ELEMENT__COMPARTMENTS, null, msgs);
+			msgs = basicSetCompartments(newCompartments, msgs);
+			if (msgs != null) msgs.dispatch();
+		}
+		else if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_GENERIC_ELEMENT__COMPARTMENTS, newCompartments, newCompartments));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IPropertyContainer getProperties() {
+		if (properties != null && properties.eIsProxy()) {
+			InternalEObject oldProperties = (InternalEObject)properties;
+			properties = (IPropertyContainer)eResolveProxy(oldProperties);
+			if (properties != oldProperties) {
+				InternalEObject newProperties = (InternalEObject)properties;
+				NotificationChain msgs = oldProperties.eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.CGI_GENERIC_ELEMENT__PROPERTIES, null, null);
+				if (newProperties.eInternalContainer() == null) {
+					msgs = newProperties.eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.CGI_GENERIC_ELEMENT__PROPERTIES, null, msgs);
+				}
+				if (msgs != null) msgs.dispatch();
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.CGI_GENERIC_ELEMENT__PROPERTIES, oldProperties, properties));
+			}
+		}
+		return properties;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IPropertyContainer basicGetProperties() {
+		return properties;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public NotificationChain basicSetProperties(IPropertyContainer newProperties, NotificationChain msgs) {
+		IPropertyContainer oldProperties = properties;
+		properties = newProperties;
+		if (eNotificationRequired()) {
+			ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_GENERIC_ELEMENT__PROPERTIES, oldProperties, newProperties);
+			if (msgs == null) msgs = notification; else msgs.add(notification);
+		}
+		return msgs;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setProperties(IPropertyContainer newProperties) {
+		if (newProperties != properties) {
+			NotificationChain msgs = null;
+			if (properties != null)
+				msgs = ((InternalEObject)properties).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.CGI_GENERIC_ELEMENT__PROPERTIES, null, msgs);
+			if (newProperties != null)
+				msgs = ((InternalEObject)newProperties).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.CGI_GENERIC_ELEMENT__PROPERTIES, null, msgs);
+			msgs = basicSetProperties(newProperties, msgs);
+			if (msgs != null) msgs.dispatch();
+		}
+		else if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_GENERIC_ELEMENT__PROPERTIES, newProperties, newProperties));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public CGIImageData getM_pImageViewData() {
+		if (m_pImageViewData != null && m_pImageViewData.eIsProxy()) {
+			InternalEObject oldM_pImageViewData = (InternalEObject)m_pImageViewData;
+			m_pImageViewData = (CGIImageData)eResolveProxy(oldM_pImageViewData);
+			if (m_pImageViewData != oldM_pImageViewData) {
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.CGI_GENERIC_ELEMENT__MPIMAGE_VIEW_DATA, oldM_pImageViewData, m_pImageViewData));
+			}
+		}
+		return m_pImageViewData;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public CGIImageData basicGetM_pImageViewData() {
+		return m_pImageViewData;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_pImageViewData(CGIImageData newM_pImageViewData) {
+		CGIImageData oldM_pImageViewData = m_pImageViewData;
+		m_pImageViewData = newM_pImageViewData;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_GENERIC_ELEMENT__MPIMAGE_VIEW_DATA, oldM_pImageViewData, m_pImageViewData));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getM_csContext() {
+		return m_csContext;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_csContext(String newM_csContext) {
+		String oldM_csContext = m_csContext;
+		m_csContext = newM_csContext;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_GENERIC_ELEMENT__MCS_CONTEXT, oldM_csContext, m_csContext));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getM_csPartsArray() {
+		return m_csPartsArray;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_csPartsArray(String newM_csPartsArray) {
+		String oldM_csPartsArray = m_csPartsArray;
+		m_csPartsArray = newM_csPartsArray;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_GENERIC_ELEMENT__MCS_PARTS_ARRAY, oldM_csPartsArray, m_csPartsArray));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getM_bIsStructured() {
+		return m_bIsStructured;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_bIsStructured(String newM_bIsStructured) {
+		String oldM_bIsStructured = m_bIsStructured;
+		m_bIsStructured = newM_bIsStructured;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_GENERIC_ELEMENT__MBIS_STRUCTURED, oldM_bIsStructured, m_bIsStructured));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
+		switch (featureID) {
+			case UMLRpyPackage.CGI_GENERIC_ELEMENT__MADDITIONAL_LABEL:
+				return basicSetM_AdditionalLabel(null, msgs);
+			case UMLRpyPackage.CGI_GENERIC_ELEMENT__COMPARTMENTS:
+				return basicSetCompartments(null, msgs);
+			case UMLRpyPackage.CGI_GENERIC_ELEMENT__PROPERTIES:
+				return basicSetProperties(null, msgs);
+		}
+		return super.eInverseRemove(otherEnd, featureID, msgs);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object eGet(int featureID, boolean resolve, boolean coreType) {
+		switch (featureID) {
+			case UMLRpyPackage.CGI_GENERIC_ELEMENT__MPMODEL_OBJECT:
+				if (resolve) return getM_pModelObject();
+				return basicGetM_pModelObject();
+			case UMLRpyPackage.CGI_GENERIC_ELEMENT__MPPARENT:
+				if (resolve) return getM_pParent();
+				return basicGetM_pParent();
+			case UMLRpyPackage.CGI_GENERIC_ELEMENT__MTRANSFORM:
+				return getM_transform();
+			case UMLRpyPackage.CGI_GENERIC_ELEMENT__MADDITIONAL_LABEL:
+				if (resolve) return getM_AdditionalLabel();
+				return basicGetM_AdditionalLabel();
+			case UMLRpyPackage.CGI_GENERIC_ELEMENT__MPOLYGON:
+				return getM_polygon();
+			case UMLRpyPackage.CGI_GENERIC_ELEMENT__MNNAME_FORMAT:
+				return getM_nNameFormat();
+			case UMLRpyPackage.CGI_GENERIC_ELEMENT__MNIS_NAME_FORMAT:
+				return getM_nIsNameFormat();
+			case UMLRpyPackage.CGI_GENERIC_ELEMENT__FRAMESET:
+				return getFrameset();
+			case UMLRpyPackage.CGI_GENERIC_ELEMENT__COMPARTMENTS:
+				if (resolve) return getCompartments();
+				return basicGetCompartments();
+			case UMLRpyPackage.CGI_GENERIC_ELEMENT__PROPERTIES:
+				if (resolve) return getProperties();
+				return basicGetProperties();
+			case UMLRpyPackage.CGI_GENERIC_ELEMENT__MPIMAGE_VIEW_DATA:
+				if (resolve) return getM_pImageViewData();
+				return basicGetM_pImageViewData();
+			case UMLRpyPackage.CGI_GENERIC_ELEMENT__MCS_CONTEXT:
+				return getM_csContext();
+			case UMLRpyPackage.CGI_GENERIC_ELEMENT__MCS_PARTS_ARRAY:
+				return getM_csPartsArray();
+			case UMLRpyPackage.CGI_GENERIC_ELEMENT__MBIS_STRUCTURED:
+				return getM_bIsStructured();
+		}
+		return super.eGet(featureID, resolve, coreType);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@SuppressWarnings("unchecked")
+	@Override
+	public void eSet(int featureID, Object newValue) {
+		switch (featureID) {
+			case UMLRpyPackage.CGI_GENERIC_ELEMENT__MPMODEL_OBJECT:
+				setM_pModelObject((M_pModelObjectType)newValue);
+				return;
+			case UMLRpyPackage.CGI_GENERIC_ELEMENT__MPPARENT:
+				setM_pParent((M_pRootType)newValue);
+				return;
+			case UMLRpyPackage.CGI_GENERIC_ELEMENT__MTRANSFORM:
+				getM_transform().clear();
+				getM_transform().addAll((Collection<? extends String>)newValue);
+				return;
+			case UMLRpyPackage.CGI_GENERIC_ELEMENT__MADDITIONAL_LABEL:
+				setM_AdditionalLabel((CGIText)newValue);
+				return;
+			case UMLRpyPackage.CGI_GENERIC_ELEMENT__MPOLYGON:
+				getM_polygon().clear();
+				getM_polygon().addAll((Collection<? extends String>)newValue);
+				return;
+			case UMLRpyPackage.CGI_GENERIC_ELEMENT__MNNAME_FORMAT:
+				setM_nNameFormat((String)newValue);
+				return;
+			case UMLRpyPackage.CGI_GENERIC_ELEMENT__MNIS_NAME_FORMAT:
+				setM_nIsNameFormat((String)newValue);
+				return;
+			case UMLRpyPackage.CGI_GENERIC_ELEMENT__FRAMESET:
+				setFrameset((String)newValue);
+				return;
+			case UMLRpyPackage.CGI_GENERIC_ELEMENT__COMPARTMENTS:
+				setCompartments((CompartmentsType)newValue);
+				return;
+			case UMLRpyPackage.CGI_GENERIC_ELEMENT__PROPERTIES:
+				setProperties((IPropertyContainer)newValue);
+				return;
+			case UMLRpyPackage.CGI_GENERIC_ELEMENT__MPIMAGE_VIEW_DATA:
+				setM_pImageViewData((CGIImageData)newValue);
+				return;
+			case UMLRpyPackage.CGI_GENERIC_ELEMENT__MCS_CONTEXT:
+				setM_csContext((String)newValue);
+				return;
+			case UMLRpyPackage.CGI_GENERIC_ELEMENT__MCS_PARTS_ARRAY:
+				setM_csPartsArray((String)newValue);
+				return;
+			case UMLRpyPackage.CGI_GENERIC_ELEMENT__MBIS_STRUCTURED:
+				setM_bIsStructured((String)newValue);
+				return;
+		}
+		super.eSet(featureID, newValue);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void eUnset(int featureID) {
+		switch (featureID) {
+			case UMLRpyPackage.CGI_GENERIC_ELEMENT__MPMODEL_OBJECT:
+				setM_pModelObject((M_pModelObjectType)null);
+				return;
+			case UMLRpyPackage.CGI_GENERIC_ELEMENT__MPPARENT:
+				setM_pParent((M_pRootType)null);
+				return;
+			case UMLRpyPackage.CGI_GENERIC_ELEMENT__MTRANSFORM:
+				getM_transform().clear();
+				return;
+			case UMLRpyPackage.CGI_GENERIC_ELEMENT__MADDITIONAL_LABEL:
+				setM_AdditionalLabel((CGIText)null);
+				return;
+			case UMLRpyPackage.CGI_GENERIC_ELEMENT__MPOLYGON:
+				getM_polygon().clear();
+				return;
+			case UMLRpyPackage.CGI_GENERIC_ELEMENT__MNNAME_FORMAT:
+				setM_nNameFormat(MNNAME_FORMAT_EDEFAULT);
+				return;
+			case UMLRpyPackage.CGI_GENERIC_ELEMENT__MNIS_NAME_FORMAT:
+				setM_nIsNameFormat(MNIS_NAME_FORMAT_EDEFAULT);
+				return;
+			case UMLRpyPackage.CGI_GENERIC_ELEMENT__FRAMESET:
+				setFrameset(FRAMESET_EDEFAULT);
+				return;
+			case UMLRpyPackage.CGI_GENERIC_ELEMENT__COMPARTMENTS:
+				setCompartments((CompartmentsType)null);
+				return;
+			case UMLRpyPackage.CGI_GENERIC_ELEMENT__PROPERTIES:
+				setProperties((IPropertyContainer)null);
+				return;
+			case UMLRpyPackage.CGI_GENERIC_ELEMENT__MPIMAGE_VIEW_DATA:
+				setM_pImageViewData((CGIImageData)null);
+				return;
+			case UMLRpyPackage.CGI_GENERIC_ELEMENT__MCS_CONTEXT:
+				setM_csContext(MCS_CONTEXT_EDEFAULT);
+				return;
+			case UMLRpyPackage.CGI_GENERIC_ELEMENT__MCS_PARTS_ARRAY:
+				setM_csPartsArray(MCS_PARTS_ARRAY_EDEFAULT);
+				return;
+			case UMLRpyPackage.CGI_GENERIC_ELEMENT__MBIS_STRUCTURED:
+				setM_bIsStructured(MBIS_STRUCTURED_EDEFAULT);
+				return;
+		}
+		super.eUnset(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public boolean eIsSet(int featureID) {
+		switch (featureID) {
+			case UMLRpyPackage.CGI_GENERIC_ELEMENT__MPMODEL_OBJECT:
+				return m_pModelObject != null;
+			case UMLRpyPackage.CGI_GENERIC_ELEMENT__MPPARENT:
+				return m_pParent != null;
+			case UMLRpyPackage.CGI_GENERIC_ELEMENT__MTRANSFORM:
+				return m_transform != null && !m_transform.isEmpty();
+			case UMLRpyPackage.CGI_GENERIC_ELEMENT__MADDITIONAL_LABEL:
+				return m_AdditionalLabel != null;
+			case UMLRpyPackage.CGI_GENERIC_ELEMENT__MPOLYGON:
+				return m_polygon != null && !m_polygon.isEmpty();
+			case UMLRpyPackage.CGI_GENERIC_ELEMENT__MNNAME_FORMAT:
+				return MNNAME_FORMAT_EDEFAULT == null ? m_nNameFormat != null : !MNNAME_FORMAT_EDEFAULT.equals(m_nNameFormat);
+			case UMLRpyPackage.CGI_GENERIC_ELEMENT__MNIS_NAME_FORMAT:
+				return MNIS_NAME_FORMAT_EDEFAULT == null ? m_nIsNameFormat != null : !MNIS_NAME_FORMAT_EDEFAULT.equals(m_nIsNameFormat);
+			case UMLRpyPackage.CGI_GENERIC_ELEMENT__FRAMESET:
+				return FRAMESET_EDEFAULT == null ? frameset != null : !FRAMESET_EDEFAULT.equals(frameset);
+			case UMLRpyPackage.CGI_GENERIC_ELEMENT__COMPARTMENTS:
+				return compartments != null;
+			case UMLRpyPackage.CGI_GENERIC_ELEMENT__PROPERTIES:
+				return properties != null;
+			case UMLRpyPackage.CGI_GENERIC_ELEMENT__MPIMAGE_VIEW_DATA:
+				return m_pImageViewData != null;
+			case UMLRpyPackage.CGI_GENERIC_ELEMENT__MCS_CONTEXT:
+				return MCS_CONTEXT_EDEFAULT == null ? m_csContext != null : !MCS_CONTEXT_EDEFAULT.equals(m_csContext);
+			case UMLRpyPackage.CGI_GENERIC_ELEMENT__MCS_PARTS_ARRAY:
+				return MCS_PARTS_ARRAY_EDEFAULT == null ? m_csPartsArray != null : !MCS_PARTS_ARRAY_EDEFAULT.equals(m_csPartsArray);
+			case UMLRpyPackage.CGI_GENERIC_ELEMENT__MBIS_STRUCTURED:
+				return MBIS_STRUCTURED_EDEFAULT == null ? m_bIsStructured != null : !MBIS_STRUCTURED_EDEFAULT.equals(m_bIsStructured);
+		}
+		return super.eIsSet(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String toString() {
+		if (eIsProxy()) return super.toString();
+
+		StringBuffer result = new StringBuffer(super.toString());
+		result.append(" (m_transform: "); //$NON-NLS-1$
+		result.append(m_transform);
+		result.append(", m_polygon: "); //$NON-NLS-1$
+		result.append(m_polygon);
+		result.append(", m_nNameFormat: "); //$NON-NLS-1$
+		result.append(m_nNameFormat);
+		result.append(", m_nIsNameFormat: "); //$NON-NLS-1$
+		result.append(m_nIsNameFormat);
+		result.append(", frameset: "); //$NON-NLS-1$
+		result.append(frameset);
+		result.append(", m_csContext: "); //$NON-NLS-1$
+		result.append(m_csContext);
+		result.append(", m_csPartsArray: "); //$NON-NLS-1$
+		result.append(m_csPartsArray);
+		result.append(", m_bIsStructured: "); //$NON-NLS-1$
+		result.append(m_bIsStructured);
+		result.append(')');
+		return result.toString();
+	}
+
+} //CGIGenericElementImpl
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/CGIImageDataImpl.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/CGIImageDataImpl.java
new file mode 100755
index 0000000..564212b
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/CGIImageDataImpl.java
@@ -0,0 +1,421 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl;
+
+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.EDataTypeEList;
+import org.eclipse.emf.ecore.util.EObjectResolvingEList;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIImageData;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.GraphElementsType;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UnknownType;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>CGI Image Data</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * </p>
+ * <ul>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIImageDataImpl#getM_pModelObject <em>MpModel Object</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIImageDataImpl#getM_pParent <em>MpParent</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIImageDataImpl#getM_dataSize <em>Mdata Size</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIImageDataImpl#getM_data <em>Mdata</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIImageDataImpl#getM_srcFile <em>Msrc File</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIImageDataImpl#getM_fileModifiedTime <em>Mfile Modified Time</em>}</li>
+ * </ul>
+ *
+ * @generated
+ */
+public class CGIImageDataImpl extends GraphElementsTypeImpl implements CGIImageData {
+	/**
+	 * The cached value of the '{@link #getM_pModelObject() <em>MpModel Object</em>}' reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_pModelObject()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<UnknownType> m_pModelObject;
+
+	/**
+	 * The cached value of the '{@link #getM_pParent() <em>MpParent</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_pParent()
+	 * @generated
+	 * @ordered
+	 */
+	protected GraphElementsType m_pParent;
+
+	/**
+	 * The default value of the '{@link #getM_dataSize() <em>Mdata Size</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_dataSize()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String MDATA_SIZE_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getM_dataSize() <em>Mdata Size</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_dataSize()
+	 * @generated
+	 * @ordered
+	 */
+	protected String m_dataSize = MDATA_SIZE_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getM_data() <em>Mdata</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_data()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String MDATA_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getM_data() <em>Mdata</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_data()
+	 * @generated
+	 * @ordered
+	 */
+	protected String m_data = MDATA_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getM_srcFile() <em>Msrc File</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_srcFile()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String MSRC_FILE_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getM_srcFile() <em>Msrc File</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_srcFile()
+	 * @generated
+	 * @ordered
+	 */
+	protected String m_srcFile = MSRC_FILE_EDEFAULT;
+
+	/**
+	 * The cached value of the '{@link #getM_fileModifiedTime() <em>Mfile Modified Time</em>}' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_fileModifiedTime()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<String> m_fileModifiedTime;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected CGIImageDataImpl() {
+		super();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EClass eStaticClass() {
+		return UMLRpyPackage.eINSTANCE.getCGIImageData();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<UnknownType> getM_pModelObject() {
+		if (m_pModelObject == null) {
+			m_pModelObject = new EObjectResolvingEList<UnknownType>(UnknownType.class, this, UMLRpyPackage.CGI_IMAGE_DATA__MPMODEL_OBJECT);
+		}
+		return m_pModelObject;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public GraphElementsType getM_pParent() {
+		if (m_pParent != null && m_pParent.eIsProxy()) {
+			InternalEObject oldM_pParent = (InternalEObject)m_pParent;
+			m_pParent = (GraphElementsType)eResolveProxy(oldM_pParent);
+			if (m_pParent != oldM_pParent) {
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.CGI_IMAGE_DATA__MPPARENT, oldM_pParent, m_pParent));
+			}
+		}
+		return m_pParent;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public GraphElementsType basicGetM_pParent() {
+		return m_pParent;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_pParent(GraphElementsType newM_pParent) {
+		GraphElementsType oldM_pParent = m_pParent;
+		m_pParent = newM_pParent;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_IMAGE_DATA__MPPARENT, oldM_pParent, m_pParent));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getM_dataSize() {
+		return m_dataSize;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_dataSize(String newM_dataSize) {
+		String oldM_dataSize = m_dataSize;
+		m_dataSize = newM_dataSize;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_IMAGE_DATA__MDATA_SIZE, oldM_dataSize, m_dataSize));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getM_data() {
+		return m_data;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_data(String newM_data) {
+		String oldM_data = m_data;
+		m_data = newM_data;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_IMAGE_DATA__MDATA, oldM_data, m_data));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getM_srcFile() {
+		return m_srcFile;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_srcFile(String newM_srcFile) {
+		String oldM_srcFile = m_srcFile;
+		m_srcFile = newM_srcFile;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_IMAGE_DATA__MSRC_FILE, oldM_srcFile, m_srcFile));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<String> getM_fileModifiedTime() {
+		if (m_fileModifiedTime == null) {
+			m_fileModifiedTime = new EDataTypeEList<String>(String.class, this, UMLRpyPackage.CGI_IMAGE_DATA__MFILE_MODIFIED_TIME);
+		}
+		return m_fileModifiedTime;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object eGet(int featureID, boolean resolve, boolean coreType) {
+		switch (featureID) {
+			case UMLRpyPackage.CGI_IMAGE_DATA__MPMODEL_OBJECT:
+				return getM_pModelObject();
+			case UMLRpyPackage.CGI_IMAGE_DATA__MPPARENT:
+				if (resolve) return getM_pParent();
+				return basicGetM_pParent();
+			case UMLRpyPackage.CGI_IMAGE_DATA__MDATA_SIZE:
+				return getM_dataSize();
+			case UMLRpyPackage.CGI_IMAGE_DATA__MDATA:
+				return getM_data();
+			case UMLRpyPackage.CGI_IMAGE_DATA__MSRC_FILE:
+				return getM_srcFile();
+			case UMLRpyPackage.CGI_IMAGE_DATA__MFILE_MODIFIED_TIME:
+				return getM_fileModifiedTime();
+		}
+		return super.eGet(featureID, resolve, coreType);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@SuppressWarnings("unchecked")
+	@Override
+	public void eSet(int featureID, Object newValue) {
+		switch (featureID) {
+			case UMLRpyPackage.CGI_IMAGE_DATA__MPMODEL_OBJECT:
+				getM_pModelObject().clear();
+				getM_pModelObject().addAll((Collection<? extends UnknownType>)newValue);
+				return;
+			case UMLRpyPackage.CGI_IMAGE_DATA__MPPARENT:
+				setM_pParent((GraphElementsType)newValue);
+				return;
+			case UMLRpyPackage.CGI_IMAGE_DATA__MDATA_SIZE:
+				setM_dataSize((String)newValue);
+				return;
+			case UMLRpyPackage.CGI_IMAGE_DATA__MDATA:
+				setM_data((String)newValue);
+				return;
+			case UMLRpyPackage.CGI_IMAGE_DATA__MSRC_FILE:
+				setM_srcFile((String)newValue);
+				return;
+			case UMLRpyPackage.CGI_IMAGE_DATA__MFILE_MODIFIED_TIME:
+				getM_fileModifiedTime().clear();
+				getM_fileModifiedTime().addAll((Collection<? extends String>)newValue);
+				return;
+		}
+		super.eSet(featureID, newValue);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void eUnset(int featureID) {
+		switch (featureID) {
+			case UMLRpyPackage.CGI_IMAGE_DATA__MPMODEL_OBJECT:
+				getM_pModelObject().clear();
+				return;
+			case UMLRpyPackage.CGI_IMAGE_DATA__MPPARENT:
+				setM_pParent((GraphElementsType)null);
+				return;
+			case UMLRpyPackage.CGI_IMAGE_DATA__MDATA_SIZE:
+				setM_dataSize(MDATA_SIZE_EDEFAULT);
+				return;
+			case UMLRpyPackage.CGI_IMAGE_DATA__MDATA:
+				setM_data(MDATA_EDEFAULT);
+				return;
+			case UMLRpyPackage.CGI_IMAGE_DATA__MSRC_FILE:
+				setM_srcFile(MSRC_FILE_EDEFAULT);
+				return;
+			case UMLRpyPackage.CGI_IMAGE_DATA__MFILE_MODIFIED_TIME:
+				getM_fileModifiedTime().clear();
+				return;
+		}
+		super.eUnset(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public boolean eIsSet(int featureID) {
+		switch (featureID) {
+			case UMLRpyPackage.CGI_IMAGE_DATA__MPMODEL_OBJECT:
+				return m_pModelObject != null && !m_pModelObject.isEmpty();
+			case UMLRpyPackage.CGI_IMAGE_DATA__MPPARENT:
+				return m_pParent != null;
+			case UMLRpyPackage.CGI_IMAGE_DATA__MDATA_SIZE:
+				return MDATA_SIZE_EDEFAULT == null ? m_dataSize != null : !MDATA_SIZE_EDEFAULT.equals(m_dataSize);
+			case UMLRpyPackage.CGI_IMAGE_DATA__MDATA:
+				return MDATA_EDEFAULT == null ? m_data != null : !MDATA_EDEFAULT.equals(m_data);
+			case UMLRpyPackage.CGI_IMAGE_DATA__MSRC_FILE:
+				return MSRC_FILE_EDEFAULT == null ? m_srcFile != null : !MSRC_FILE_EDEFAULT.equals(m_srcFile);
+			case UMLRpyPackage.CGI_IMAGE_DATA__MFILE_MODIFIED_TIME:
+				return m_fileModifiedTime != null && !m_fileModifiedTime.isEmpty();
+		}
+		return super.eIsSet(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String toString() {
+		if (eIsProxy()) return super.toString();
+
+		StringBuffer result = new StringBuffer(super.toString());
+		result.append(" (m_dataSize: "); //$NON-NLS-1$
+		result.append(m_dataSize);
+		result.append(", m_data: "); //$NON-NLS-1$
+		result.append(m_data);
+		result.append(", m_srcFile: "); //$NON-NLS-1$
+		result.append(m_srcFile);
+		result.append(", m_fileModifiedTime: "); //$NON-NLS-1$
+		result.append(m_fileModifiedTime);
+		result.append(')');
+		return result.toString();
+	}
+
+} //CGIImageDataImpl
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/CGIImageImpl.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/CGIImageImpl.java
new file mode 100755
index 0000000..6b7c106
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/CGIImageImpl.java
@@ -0,0 +1,356 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl;
+
+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.EDataTypeEList;
+import org.eclipse.emf.ecore.util.EObjectResolvingEList;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIImage;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIImageData;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.GraphElementsType;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UnknownType;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>CGI Image</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * </p>
+ * <ul>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIImageImpl#getM_pModelObject <em>MpModel Object</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIImageImpl#getM_pParent <em>MpParent</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIImageImpl#getM_transform <em>Mtransform</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIImageImpl#getM_pImageViewData <em>MpImage View Data</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIImageImpl#getM_points <em>Mpoints</em>}</li>
+ * </ul>
+ *
+ * @generated
+ */
+public class CGIImageImpl extends GraphElementsTypeImpl implements CGIImage {
+	/**
+	 * The cached value of the '{@link #getM_pModelObject() <em>MpModel Object</em>}' reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_pModelObject()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<UnknownType> m_pModelObject;
+
+	/**
+	 * The cached value of the '{@link #getM_pParent() <em>MpParent</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_pParent()
+	 * @generated
+	 * @ordered
+	 */
+	protected GraphElementsType m_pParent;
+
+	/**
+	 * The cached value of the '{@link #getM_transform() <em>Mtransform</em>}' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_transform()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<String> m_transform;
+
+	/**
+	 * The cached value of the '{@link #getM_pImageViewData() <em>MpImage View Data</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_pImageViewData()
+	 * @generated
+	 * @ordered
+	 */
+	protected CGIImageData m_pImageViewData;
+
+	/**
+	 * The cached value of the '{@link #getM_points() <em>Mpoints</em>}' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_points()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<String> m_points;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected CGIImageImpl() {
+		super();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EClass eStaticClass() {
+		return UMLRpyPackage.eINSTANCE.getCGIImage();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<UnknownType> getM_pModelObject() {
+		if (m_pModelObject == null) {
+			m_pModelObject = new EObjectResolvingEList<UnknownType>(UnknownType.class, this, UMLRpyPackage.CGI_IMAGE__MPMODEL_OBJECT);
+		}
+		return m_pModelObject;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public GraphElementsType getM_pParent() {
+		if (m_pParent != null && m_pParent.eIsProxy()) {
+			InternalEObject oldM_pParent = (InternalEObject)m_pParent;
+			m_pParent = (GraphElementsType)eResolveProxy(oldM_pParent);
+			if (m_pParent != oldM_pParent) {
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.CGI_IMAGE__MPPARENT, oldM_pParent, m_pParent));
+			}
+		}
+		return m_pParent;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public GraphElementsType basicGetM_pParent() {
+		return m_pParent;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_pParent(GraphElementsType newM_pParent) {
+		GraphElementsType oldM_pParent = m_pParent;
+		m_pParent = newM_pParent;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_IMAGE__MPPARENT, oldM_pParent, m_pParent));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<String> getM_transform() {
+		if (m_transform == null) {
+			m_transform = new EDataTypeEList<String>(String.class, this, UMLRpyPackage.CGI_IMAGE__MTRANSFORM);
+		}
+		return m_transform;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public CGIImageData getM_pImageViewData() {
+		if (m_pImageViewData != null && m_pImageViewData.eIsProxy()) {
+			InternalEObject oldM_pImageViewData = (InternalEObject)m_pImageViewData;
+			m_pImageViewData = (CGIImageData)eResolveProxy(oldM_pImageViewData);
+			if (m_pImageViewData != oldM_pImageViewData) {
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.CGI_IMAGE__MPIMAGE_VIEW_DATA, oldM_pImageViewData, m_pImageViewData));
+			}
+		}
+		return m_pImageViewData;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public CGIImageData basicGetM_pImageViewData() {
+		return m_pImageViewData;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_pImageViewData(CGIImageData newM_pImageViewData) {
+		CGIImageData oldM_pImageViewData = m_pImageViewData;
+		m_pImageViewData = newM_pImageViewData;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_IMAGE__MPIMAGE_VIEW_DATA, oldM_pImageViewData, m_pImageViewData));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<String> getM_points() {
+		if (m_points == null) {
+			m_points = new EDataTypeEList<String>(String.class, this, UMLRpyPackage.CGI_IMAGE__MPOINTS);
+		}
+		return m_points;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object eGet(int featureID, boolean resolve, boolean coreType) {
+		switch (featureID) {
+			case UMLRpyPackage.CGI_IMAGE__MPMODEL_OBJECT:
+				return getM_pModelObject();
+			case UMLRpyPackage.CGI_IMAGE__MPPARENT:
+				if (resolve) return getM_pParent();
+				return basicGetM_pParent();
+			case UMLRpyPackage.CGI_IMAGE__MTRANSFORM:
+				return getM_transform();
+			case UMLRpyPackage.CGI_IMAGE__MPIMAGE_VIEW_DATA:
+				if (resolve) return getM_pImageViewData();
+				return basicGetM_pImageViewData();
+			case UMLRpyPackage.CGI_IMAGE__MPOINTS:
+				return getM_points();
+		}
+		return super.eGet(featureID, resolve, coreType);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@SuppressWarnings("unchecked")
+	@Override
+	public void eSet(int featureID, Object newValue) {
+		switch (featureID) {
+			case UMLRpyPackage.CGI_IMAGE__MPMODEL_OBJECT:
+				getM_pModelObject().clear();
+				getM_pModelObject().addAll((Collection<? extends UnknownType>)newValue);
+				return;
+			case UMLRpyPackage.CGI_IMAGE__MPPARENT:
+				setM_pParent((GraphElementsType)newValue);
+				return;
+			case UMLRpyPackage.CGI_IMAGE__MTRANSFORM:
+				getM_transform().clear();
+				getM_transform().addAll((Collection<? extends String>)newValue);
+				return;
+			case UMLRpyPackage.CGI_IMAGE__MPIMAGE_VIEW_DATA:
+				setM_pImageViewData((CGIImageData)newValue);
+				return;
+			case UMLRpyPackage.CGI_IMAGE__MPOINTS:
+				getM_points().clear();
+				getM_points().addAll((Collection<? extends String>)newValue);
+				return;
+		}
+		super.eSet(featureID, newValue);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void eUnset(int featureID) {
+		switch (featureID) {
+			case UMLRpyPackage.CGI_IMAGE__MPMODEL_OBJECT:
+				getM_pModelObject().clear();
+				return;
+			case UMLRpyPackage.CGI_IMAGE__MPPARENT:
+				setM_pParent((GraphElementsType)null);
+				return;
+			case UMLRpyPackage.CGI_IMAGE__MTRANSFORM:
+				getM_transform().clear();
+				return;
+			case UMLRpyPackage.CGI_IMAGE__MPIMAGE_VIEW_DATA:
+				setM_pImageViewData((CGIImageData)null);
+				return;
+			case UMLRpyPackage.CGI_IMAGE__MPOINTS:
+				getM_points().clear();
+				return;
+		}
+		super.eUnset(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public boolean eIsSet(int featureID) {
+		switch (featureID) {
+			case UMLRpyPackage.CGI_IMAGE__MPMODEL_OBJECT:
+				return m_pModelObject != null && !m_pModelObject.isEmpty();
+			case UMLRpyPackage.CGI_IMAGE__MPPARENT:
+				return m_pParent != null;
+			case UMLRpyPackage.CGI_IMAGE__MTRANSFORM:
+				return m_transform != null && !m_transform.isEmpty();
+			case UMLRpyPackage.CGI_IMAGE__MPIMAGE_VIEW_DATA:
+				return m_pImageViewData != null;
+			case UMLRpyPackage.CGI_IMAGE__MPOINTS:
+				return m_points != null && !m_points.isEmpty();
+		}
+		return super.eIsSet(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String toString() {
+		if (eIsProxy()) return super.toString();
+
+		StringBuffer result = new StringBuffer(super.toString());
+		result.append(" (m_transform: "); //$NON-NLS-1$
+		result.append(m_transform);
+		result.append(", m_points: "); //$NON-NLS-1$
+		result.append(m_points);
+		result.append(')');
+		return result.toString();
+	}
+
+} //CGIImageImpl
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/CGIInformationFlowImpl.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/CGIInformationFlowImpl.java
new file mode 100755
index 0000000..3bb29c2
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/CGIInformationFlowImpl.java
@@ -0,0 +1,1241 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl;
+
+import java.util.Collection;
+
+import org.eclipse.emf.common.notify.Notification;
+import org.eclipse.emf.common.notify.NotificationChain;
+
+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.EDataTypeEList;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIInformationFlow;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIText;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IInformationFlow;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IPropertyContainer;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.M_pRootType;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>CGI Information Flow</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * </p>
+ * <ul>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIInformationFlowImpl#getM_pModelObject <em>MpModel Object</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIInformationFlowImpl#getM_pParent <em>MpParent</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIInformationFlowImpl#getM_pSource <em>MpSource</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIInformationFlowImpl#getM_sourceType <em>Msource Type</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIInformationFlowImpl#getM_pTarget <em>MpTarget</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIInformationFlowImpl#getM_targetType <em>Mtarget Type</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIInformationFlowImpl#getM_direction <em>Mdirection</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIInformationFlowImpl#getM_rpn <em>Mrpn</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIInformationFlowImpl#getM_anglePoint1 <em>Mangle Point1</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIInformationFlowImpl#getM_anglePoint2 <em>Mangle Point2</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIInformationFlowImpl#getM_line_style <em>Mline style</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIInformationFlowImpl#getM_SourcePort <em>MSource Port</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIInformationFlowImpl#getM_TargetPort <em>MTarget Port</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIInformationFlowImpl#getM_bShowKeyword <em>MbShow Keyword</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIInformationFlowImpl#getM_showConveyed <em>Mshow Conveyed</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIInformationFlowImpl#getM_keyword <em>Mkeyword</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIInformationFlowImpl#getM_conveyed <em>Mconveyed</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIInformationFlowImpl#getM_arrow <em>Marrow</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIInformationFlowImpl#getProperties <em>Properties</em>}</li>
+ * </ul>
+ *
+ * @generated
+ */
+public class CGIInformationFlowImpl extends GraphElementsTypeImpl implements CGIInformationFlow {
+	/**
+	 * The cached value of the '{@link #getM_pModelObject() <em>MpModel Object</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_pModelObject()
+	 * @generated
+	 * @ordered
+	 */
+	protected IInformationFlow m_pModelObject;
+
+	/**
+	 * The default value of the '{@link #getM_pParent() <em>MpParent</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_pParent()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String MPPARENT_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getM_pParent() <em>MpParent</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_pParent()
+	 * @generated
+	 * @ordered
+	 */
+	protected String m_pParent = MPPARENT_EDEFAULT;
+
+	/**
+	 * The cached value of the '{@link #getM_pSource() <em>MpSource</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_pSource()
+	 * @generated
+	 * @ordered
+	 */
+	protected M_pRootType m_pSource;
+
+	/**
+	 * The default value of the '{@link #getM_sourceType() <em>Msource Type</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_sourceType()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String MSOURCE_TYPE_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getM_sourceType() <em>Msource Type</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_sourceType()
+	 * @generated
+	 * @ordered
+	 */
+	protected String m_sourceType = MSOURCE_TYPE_EDEFAULT;
+
+	/**
+	 * The cached value of the '{@link #getM_pTarget() <em>MpTarget</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_pTarget()
+	 * @generated
+	 * @ordered
+	 */
+	protected M_pRootType m_pTarget;
+
+	/**
+	 * The default value of the '{@link #getM_targetType() <em>Mtarget Type</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_targetType()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String MTARGET_TYPE_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getM_targetType() <em>Mtarget Type</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_targetType()
+	 * @generated
+	 * @ordered
+	 */
+	protected String m_targetType = MTARGET_TYPE_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getM_direction() <em>Mdirection</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_direction()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String MDIRECTION_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getM_direction() <em>Mdirection</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_direction()
+	 * @generated
+	 * @ordered
+	 */
+	protected String m_direction = MDIRECTION_EDEFAULT;
+
+	/**
+	 * The cached value of the '{@link #getM_rpn() <em>Mrpn</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_rpn()
+	 * @generated
+	 * @ordered
+	 */
+	protected CGIText m_rpn;
+
+	/**
+	 * The cached value of the '{@link #getM_anglePoint1() <em>Mangle Point1</em>}' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_anglePoint1()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<String> m_anglePoint1;
+
+	/**
+	 * The cached value of the '{@link #getM_anglePoint2() <em>Mangle Point2</em>}' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_anglePoint2()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<String> m_anglePoint2;
+
+	/**
+	 * The default value of the '{@link #getM_line_style() <em>Mline style</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_line_style()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String MLINE_STYLE_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getM_line_style() <em>Mline style</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_line_style()
+	 * @generated
+	 * @ordered
+	 */
+	protected String m_line_style = MLINE_STYLE_EDEFAULT;
+
+	/**
+	 * The cached value of the '{@link #getM_SourcePort() <em>MSource Port</em>}' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_SourcePort()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<String> m_SourcePort;
+
+	/**
+	 * The cached value of the '{@link #getM_TargetPort() <em>MTarget Port</em>}' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_TargetPort()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<String> m_TargetPort;
+
+	/**
+	 * The default value of the '{@link #getM_bShowKeyword() <em>MbShow Keyword</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_bShowKeyword()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String MBSHOW_KEYWORD_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getM_bShowKeyword() <em>MbShow Keyword</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_bShowKeyword()
+	 * @generated
+	 * @ordered
+	 */
+	protected String m_bShowKeyword = MBSHOW_KEYWORD_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getM_showConveyed() <em>Mshow Conveyed</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_showConveyed()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String MSHOW_CONVEYED_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getM_showConveyed() <em>Mshow Conveyed</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_showConveyed()
+	 * @generated
+	 * @ordered
+	 */
+	protected String m_showConveyed = MSHOW_CONVEYED_EDEFAULT;
+
+	/**
+	 * The cached value of the '{@link #getM_keyword() <em>Mkeyword</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_keyword()
+	 * @generated
+	 * @ordered
+	 */
+	protected CGIText m_keyword;
+
+	/**
+	 * The cached value of the '{@link #getM_conveyed() <em>Mconveyed</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_conveyed()
+	 * @generated
+	 * @ordered
+	 */
+	protected CGIText m_conveyed;
+
+	/**
+	 * The cached value of the '{@link #getM_arrow() <em>Marrow</em>}' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_arrow()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<String> m_arrow;
+
+	/**
+	 * The cached value of the '{@link #getProperties() <em>Properties</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getProperties()
+	 * @generated
+	 * @ordered
+	 */
+	protected IPropertyContainer properties;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected CGIInformationFlowImpl() {
+		super();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EClass eStaticClass() {
+		return UMLRpyPackage.eINSTANCE.getCGIInformationFlow();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IInformationFlow getM_pModelObject() {
+		if (m_pModelObject != null && m_pModelObject.eIsProxy()) {
+			InternalEObject oldM_pModelObject = (InternalEObject)m_pModelObject;
+			m_pModelObject = (IInformationFlow)eResolveProxy(oldM_pModelObject);
+			if (m_pModelObject != oldM_pModelObject) {
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.CGI_INFORMATION_FLOW__MPMODEL_OBJECT, oldM_pModelObject, m_pModelObject));
+			}
+		}
+		return m_pModelObject;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IInformationFlow basicGetM_pModelObject() {
+		return m_pModelObject;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_pModelObject(IInformationFlow newM_pModelObject) {
+		IInformationFlow oldM_pModelObject = m_pModelObject;
+		m_pModelObject = newM_pModelObject;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_INFORMATION_FLOW__MPMODEL_OBJECT, oldM_pModelObject, m_pModelObject));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getM_pParent() {
+		return m_pParent;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_pParent(String newM_pParent) {
+		String oldM_pParent = m_pParent;
+		m_pParent = newM_pParent;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_INFORMATION_FLOW__MPPARENT, oldM_pParent, m_pParent));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public M_pRootType getM_pSource() {
+		if (m_pSource != null && m_pSource.eIsProxy()) {
+			InternalEObject oldM_pSource = (InternalEObject)m_pSource;
+			m_pSource = (M_pRootType)eResolveProxy(oldM_pSource);
+			if (m_pSource != oldM_pSource) {
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.CGI_INFORMATION_FLOW__MPSOURCE, oldM_pSource, m_pSource));
+			}
+		}
+		return m_pSource;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public M_pRootType basicGetM_pSource() {
+		return m_pSource;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_pSource(M_pRootType newM_pSource) {
+		M_pRootType oldM_pSource = m_pSource;
+		m_pSource = newM_pSource;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_INFORMATION_FLOW__MPSOURCE, oldM_pSource, m_pSource));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getM_sourceType() {
+		return m_sourceType;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_sourceType(String newM_sourceType) {
+		String oldM_sourceType = m_sourceType;
+		m_sourceType = newM_sourceType;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_INFORMATION_FLOW__MSOURCE_TYPE, oldM_sourceType, m_sourceType));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public M_pRootType getM_pTarget() {
+		if (m_pTarget != null && m_pTarget.eIsProxy()) {
+			InternalEObject oldM_pTarget = (InternalEObject)m_pTarget;
+			m_pTarget = (M_pRootType)eResolveProxy(oldM_pTarget);
+			if (m_pTarget != oldM_pTarget) {
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.CGI_INFORMATION_FLOW__MPTARGET, oldM_pTarget, m_pTarget));
+			}
+		}
+		return m_pTarget;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public M_pRootType basicGetM_pTarget() {
+		return m_pTarget;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_pTarget(M_pRootType newM_pTarget) {
+		M_pRootType oldM_pTarget = m_pTarget;
+		m_pTarget = newM_pTarget;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_INFORMATION_FLOW__MPTARGET, oldM_pTarget, m_pTarget));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getM_targetType() {
+		return m_targetType;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_targetType(String newM_targetType) {
+		String oldM_targetType = m_targetType;
+		m_targetType = newM_targetType;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_INFORMATION_FLOW__MTARGET_TYPE, oldM_targetType, m_targetType));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getM_direction() {
+		return m_direction;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_direction(String newM_direction) {
+		String oldM_direction = m_direction;
+		m_direction = newM_direction;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_INFORMATION_FLOW__MDIRECTION, oldM_direction, m_direction));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public CGIText getM_rpn() {
+		if (m_rpn != null && m_rpn.eIsProxy()) {
+			InternalEObject oldM_rpn = (InternalEObject)m_rpn;
+			m_rpn = (CGIText)eResolveProxy(oldM_rpn);
+			if (m_rpn != oldM_rpn) {
+				InternalEObject newM_rpn = (InternalEObject)m_rpn;
+				NotificationChain msgs = oldM_rpn.eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.CGI_INFORMATION_FLOW__MRPN, null, null);
+				if (newM_rpn.eInternalContainer() == null) {
+					msgs = newM_rpn.eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.CGI_INFORMATION_FLOW__MRPN, null, msgs);
+				}
+				if (msgs != null) msgs.dispatch();
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.CGI_INFORMATION_FLOW__MRPN, oldM_rpn, m_rpn));
+			}
+		}
+		return m_rpn;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public CGIText basicGetM_rpn() {
+		return m_rpn;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public NotificationChain basicSetM_rpn(CGIText newM_rpn, NotificationChain msgs) {
+		CGIText oldM_rpn = m_rpn;
+		m_rpn = newM_rpn;
+		if (eNotificationRequired()) {
+			ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_INFORMATION_FLOW__MRPN, oldM_rpn, newM_rpn);
+			if (msgs == null) msgs = notification; else msgs.add(notification);
+		}
+		return msgs;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_rpn(CGIText newM_rpn) {
+		if (newM_rpn != m_rpn) {
+			NotificationChain msgs = null;
+			if (m_rpn != null)
+				msgs = ((InternalEObject)m_rpn).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.CGI_INFORMATION_FLOW__MRPN, null, msgs);
+			if (newM_rpn != null)
+				msgs = ((InternalEObject)newM_rpn).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.CGI_INFORMATION_FLOW__MRPN, null, msgs);
+			msgs = basicSetM_rpn(newM_rpn, msgs);
+			if (msgs != null) msgs.dispatch();
+		}
+		else if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_INFORMATION_FLOW__MRPN, newM_rpn, newM_rpn));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<String> getM_anglePoint1() {
+		if (m_anglePoint1 == null) {
+			m_anglePoint1 = new EDataTypeEList<String>(String.class, this, UMLRpyPackage.CGI_INFORMATION_FLOW__MANGLE_POINT1);
+		}
+		return m_anglePoint1;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<String> getM_anglePoint2() {
+		if (m_anglePoint2 == null) {
+			m_anglePoint2 = new EDataTypeEList<String>(String.class, this, UMLRpyPackage.CGI_INFORMATION_FLOW__MANGLE_POINT2);
+		}
+		return m_anglePoint2;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getM_line_style() {
+		return m_line_style;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_line_style(String newM_line_style) {
+		String oldM_line_style = m_line_style;
+		m_line_style = newM_line_style;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_INFORMATION_FLOW__MLINE_STYLE, oldM_line_style, m_line_style));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<String> getM_SourcePort() {
+		if (m_SourcePort == null) {
+			m_SourcePort = new EDataTypeEList<String>(String.class, this, UMLRpyPackage.CGI_INFORMATION_FLOW__MSOURCE_PORT);
+		}
+		return m_SourcePort;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<String> getM_TargetPort() {
+		if (m_TargetPort == null) {
+			m_TargetPort = new EDataTypeEList<String>(String.class, this, UMLRpyPackage.CGI_INFORMATION_FLOW__MTARGET_PORT);
+		}
+		return m_TargetPort;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getM_bShowKeyword() {
+		return m_bShowKeyword;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_bShowKeyword(String newM_bShowKeyword) {
+		String oldM_bShowKeyword = m_bShowKeyword;
+		m_bShowKeyword = newM_bShowKeyword;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_INFORMATION_FLOW__MBSHOW_KEYWORD, oldM_bShowKeyword, m_bShowKeyword));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getM_showConveyed() {
+		return m_showConveyed;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_showConveyed(String newM_showConveyed) {
+		String oldM_showConveyed = m_showConveyed;
+		m_showConveyed = newM_showConveyed;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_INFORMATION_FLOW__MSHOW_CONVEYED, oldM_showConveyed, m_showConveyed));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public CGIText getM_keyword() {
+		if (m_keyword != null && m_keyword.eIsProxy()) {
+			InternalEObject oldM_keyword = (InternalEObject)m_keyword;
+			m_keyword = (CGIText)eResolveProxy(oldM_keyword);
+			if (m_keyword != oldM_keyword) {
+				InternalEObject newM_keyword = (InternalEObject)m_keyword;
+				NotificationChain msgs = oldM_keyword.eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.CGI_INFORMATION_FLOW__MKEYWORD, null, null);
+				if (newM_keyword.eInternalContainer() == null) {
+					msgs = newM_keyword.eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.CGI_INFORMATION_FLOW__MKEYWORD, null, msgs);
+				}
+				if (msgs != null) msgs.dispatch();
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.CGI_INFORMATION_FLOW__MKEYWORD, oldM_keyword, m_keyword));
+			}
+		}
+		return m_keyword;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public CGIText basicGetM_keyword() {
+		return m_keyword;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public NotificationChain basicSetM_keyword(CGIText newM_keyword, NotificationChain msgs) {
+		CGIText oldM_keyword = m_keyword;
+		m_keyword = newM_keyword;
+		if (eNotificationRequired()) {
+			ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_INFORMATION_FLOW__MKEYWORD, oldM_keyword, newM_keyword);
+			if (msgs == null) msgs = notification; else msgs.add(notification);
+		}
+		return msgs;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_keyword(CGIText newM_keyword) {
+		if (newM_keyword != m_keyword) {
+			NotificationChain msgs = null;
+			if (m_keyword != null)
+				msgs = ((InternalEObject)m_keyword).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.CGI_INFORMATION_FLOW__MKEYWORD, null, msgs);
+			if (newM_keyword != null)
+				msgs = ((InternalEObject)newM_keyword).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.CGI_INFORMATION_FLOW__MKEYWORD, null, msgs);
+			msgs = basicSetM_keyword(newM_keyword, msgs);
+			if (msgs != null) msgs.dispatch();
+		}
+		else if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_INFORMATION_FLOW__MKEYWORD, newM_keyword, newM_keyword));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public CGIText getM_conveyed() {
+		if (m_conveyed != null && m_conveyed.eIsProxy()) {
+			InternalEObject oldM_conveyed = (InternalEObject)m_conveyed;
+			m_conveyed = (CGIText)eResolveProxy(oldM_conveyed);
+			if (m_conveyed != oldM_conveyed) {
+				InternalEObject newM_conveyed = (InternalEObject)m_conveyed;
+				NotificationChain msgs = oldM_conveyed.eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.CGI_INFORMATION_FLOW__MCONVEYED, null, null);
+				if (newM_conveyed.eInternalContainer() == null) {
+					msgs = newM_conveyed.eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.CGI_INFORMATION_FLOW__MCONVEYED, null, msgs);
+				}
+				if (msgs != null) msgs.dispatch();
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.CGI_INFORMATION_FLOW__MCONVEYED, oldM_conveyed, m_conveyed));
+			}
+		}
+		return m_conveyed;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public CGIText basicGetM_conveyed() {
+		return m_conveyed;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public NotificationChain basicSetM_conveyed(CGIText newM_conveyed, NotificationChain msgs) {
+		CGIText oldM_conveyed = m_conveyed;
+		m_conveyed = newM_conveyed;
+		if (eNotificationRequired()) {
+			ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_INFORMATION_FLOW__MCONVEYED, oldM_conveyed, newM_conveyed);
+			if (msgs == null) msgs = notification; else msgs.add(notification);
+		}
+		return msgs;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_conveyed(CGIText newM_conveyed) {
+		if (newM_conveyed != m_conveyed) {
+			NotificationChain msgs = null;
+			if (m_conveyed != null)
+				msgs = ((InternalEObject)m_conveyed).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.CGI_INFORMATION_FLOW__MCONVEYED, null, msgs);
+			if (newM_conveyed != null)
+				msgs = ((InternalEObject)newM_conveyed).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.CGI_INFORMATION_FLOW__MCONVEYED, null, msgs);
+			msgs = basicSetM_conveyed(newM_conveyed, msgs);
+			if (msgs != null) msgs.dispatch();
+		}
+		else if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_INFORMATION_FLOW__MCONVEYED, newM_conveyed, newM_conveyed));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<String> getM_arrow() {
+		if (m_arrow == null) {
+			m_arrow = new EDataTypeEList<String>(String.class, this, UMLRpyPackage.CGI_INFORMATION_FLOW__MARROW);
+		}
+		return m_arrow;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IPropertyContainer getProperties() {
+		if (properties != null && properties.eIsProxy()) {
+			InternalEObject oldProperties = (InternalEObject)properties;
+			properties = (IPropertyContainer)eResolveProxy(oldProperties);
+			if (properties != oldProperties) {
+				InternalEObject newProperties = (InternalEObject)properties;
+				NotificationChain msgs = oldProperties.eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.CGI_INFORMATION_FLOW__PROPERTIES, null, null);
+				if (newProperties.eInternalContainer() == null) {
+					msgs = newProperties.eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.CGI_INFORMATION_FLOW__PROPERTIES, null, msgs);
+				}
+				if (msgs != null) msgs.dispatch();
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.CGI_INFORMATION_FLOW__PROPERTIES, oldProperties, properties));
+			}
+		}
+		return properties;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IPropertyContainer basicGetProperties() {
+		return properties;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public NotificationChain basicSetProperties(IPropertyContainer newProperties, NotificationChain msgs) {
+		IPropertyContainer oldProperties = properties;
+		properties = newProperties;
+		if (eNotificationRequired()) {
+			ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_INFORMATION_FLOW__PROPERTIES, oldProperties, newProperties);
+			if (msgs == null) msgs = notification; else msgs.add(notification);
+		}
+		return msgs;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setProperties(IPropertyContainer newProperties) {
+		if (newProperties != properties) {
+			NotificationChain msgs = null;
+			if (properties != null)
+				msgs = ((InternalEObject)properties).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.CGI_INFORMATION_FLOW__PROPERTIES, null, msgs);
+			if (newProperties != null)
+				msgs = ((InternalEObject)newProperties).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.CGI_INFORMATION_FLOW__PROPERTIES, null, msgs);
+			msgs = basicSetProperties(newProperties, msgs);
+			if (msgs != null) msgs.dispatch();
+		}
+		else if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_INFORMATION_FLOW__PROPERTIES, newProperties, newProperties));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
+		switch (featureID) {
+			case UMLRpyPackage.CGI_INFORMATION_FLOW__MRPN:
+				return basicSetM_rpn(null, msgs);
+			case UMLRpyPackage.CGI_INFORMATION_FLOW__MKEYWORD:
+				return basicSetM_keyword(null, msgs);
+			case UMLRpyPackage.CGI_INFORMATION_FLOW__MCONVEYED:
+				return basicSetM_conveyed(null, msgs);
+			case UMLRpyPackage.CGI_INFORMATION_FLOW__PROPERTIES:
+				return basicSetProperties(null, msgs);
+		}
+		return super.eInverseRemove(otherEnd, featureID, msgs);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object eGet(int featureID, boolean resolve, boolean coreType) {
+		switch (featureID) {
+			case UMLRpyPackage.CGI_INFORMATION_FLOW__MPMODEL_OBJECT:
+				if (resolve) return getM_pModelObject();
+				return basicGetM_pModelObject();
+			case UMLRpyPackage.CGI_INFORMATION_FLOW__MPPARENT:
+				return getM_pParent();
+			case UMLRpyPackage.CGI_INFORMATION_FLOW__MPSOURCE:
+				if (resolve) return getM_pSource();
+				return basicGetM_pSource();
+			case UMLRpyPackage.CGI_INFORMATION_FLOW__MSOURCE_TYPE:
+				return getM_sourceType();
+			case UMLRpyPackage.CGI_INFORMATION_FLOW__MPTARGET:
+				if (resolve) return getM_pTarget();
+				return basicGetM_pTarget();
+			case UMLRpyPackage.CGI_INFORMATION_FLOW__MTARGET_TYPE:
+				return getM_targetType();
+			case UMLRpyPackage.CGI_INFORMATION_FLOW__MDIRECTION:
+				return getM_direction();
+			case UMLRpyPackage.CGI_INFORMATION_FLOW__MRPN:
+				if (resolve) return getM_rpn();
+				return basicGetM_rpn();
+			case UMLRpyPackage.CGI_INFORMATION_FLOW__MANGLE_POINT1:
+				return getM_anglePoint1();
+			case UMLRpyPackage.CGI_INFORMATION_FLOW__MANGLE_POINT2:
+				return getM_anglePoint2();
+			case UMLRpyPackage.CGI_INFORMATION_FLOW__MLINE_STYLE:
+				return getM_line_style();
+			case UMLRpyPackage.CGI_INFORMATION_FLOW__MSOURCE_PORT:
+				return getM_SourcePort();
+			case UMLRpyPackage.CGI_INFORMATION_FLOW__MTARGET_PORT:
+				return getM_TargetPort();
+			case UMLRpyPackage.CGI_INFORMATION_FLOW__MBSHOW_KEYWORD:
+				return getM_bShowKeyword();
+			case UMLRpyPackage.CGI_INFORMATION_FLOW__MSHOW_CONVEYED:
+				return getM_showConveyed();
+			case UMLRpyPackage.CGI_INFORMATION_FLOW__MKEYWORD:
+				if (resolve) return getM_keyword();
+				return basicGetM_keyword();
+			case UMLRpyPackage.CGI_INFORMATION_FLOW__MCONVEYED:
+				if (resolve) return getM_conveyed();
+				return basicGetM_conveyed();
+			case UMLRpyPackage.CGI_INFORMATION_FLOW__MARROW:
+				return getM_arrow();
+			case UMLRpyPackage.CGI_INFORMATION_FLOW__PROPERTIES:
+				if (resolve) return getProperties();
+				return basicGetProperties();
+		}
+		return super.eGet(featureID, resolve, coreType);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@SuppressWarnings("unchecked")
+	@Override
+	public void eSet(int featureID, Object newValue) {
+		switch (featureID) {
+			case UMLRpyPackage.CGI_INFORMATION_FLOW__MPMODEL_OBJECT:
+				setM_pModelObject((IInformationFlow)newValue);
+				return;
+			case UMLRpyPackage.CGI_INFORMATION_FLOW__MPPARENT:
+				setM_pParent((String)newValue);
+				return;
+			case UMLRpyPackage.CGI_INFORMATION_FLOW__MPSOURCE:
+				setM_pSource((M_pRootType)newValue);
+				return;
+			case UMLRpyPackage.CGI_INFORMATION_FLOW__MSOURCE_TYPE:
+				setM_sourceType((String)newValue);
+				return;
+			case UMLRpyPackage.CGI_INFORMATION_FLOW__MPTARGET:
+				setM_pTarget((M_pRootType)newValue);
+				return;
+			case UMLRpyPackage.CGI_INFORMATION_FLOW__MTARGET_TYPE:
+				setM_targetType((String)newValue);
+				return;
+			case UMLRpyPackage.CGI_INFORMATION_FLOW__MDIRECTION:
+				setM_direction((String)newValue);
+				return;
+			case UMLRpyPackage.CGI_INFORMATION_FLOW__MRPN:
+				setM_rpn((CGIText)newValue);
+				return;
+			case UMLRpyPackage.CGI_INFORMATION_FLOW__MANGLE_POINT1:
+				getM_anglePoint1().clear();
+				getM_anglePoint1().addAll((Collection<? extends String>)newValue);
+				return;
+			case UMLRpyPackage.CGI_INFORMATION_FLOW__MANGLE_POINT2:
+				getM_anglePoint2().clear();
+				getM_anglePoint2().addAll((Collection<? extends String>)newValue);
+				return;
+			case UMLRpyPackage.CGI_INFORMATION_FLOW__MLINE_STYLE:
+				setM_line_style((String)newValue);
+				return;
+			case UMLRpyPackage.CGI_INFORMATION_FLOW__MSOURCE_PORT:
+				getM_SourcePort().clear();
+				getM_SourcePort().addAll((Collection<? extends String>)newValue);
+				return;
+			case UMLRpyPackage.CGI_INFORMATION_FLOW__MTARGET_PORT:
+				getM_TargetPort().clear();
+				getM_TargetPort().addAll((Collection<? extends String>)newValue);
+				return;
+			case UMLRpyPackage.CGI_INFORMATION_FLOW__MBSHOW_KEYWORD:
+				setM_bShowKeyword((String)newValue);
+				return;
+			case UMLRpyPackage.CGI_INFORMATION_FLOW__MSHOW_CONVEYED:
+				setM_showConveyed((String)newValue);
+				return;
+			case UMLRpyPackage.CGI_INFORMATION_FLOW__MKEYWORD:
+				setM_keyword((CGIText)newValue);
+				return;
+			case UMLRpyPackage.CGI_INFORMATION_FLOW__MCONVEYED:
+				setM_conveyed((CGIText)newValue);
+				return;
+			case UMLRpyPackage.CGI_INFORMATION_FLOW__MARROW:
+				getM_arrow().clear();
+				getM_arrow().addAll((Collection<? extends String>)newValue);
+				return;
+			case UMLRpyPackage.CGI_INFORMATION_FLOW__PROPERTIES:
+				setProperties((IPropertyContainer)newValue);
+				return;
+		}
+		super.eSet(featureID, newValue);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void eUnset(int featureID) {
+		switch (featureID) {
+			case UMLRpyPackage.CGI_INFORMATION_FLOW__MPMODEL_OBJECT:
+				setM_pModelObject((IInformationFlow)null);
+				return;
+			case UMLRpyPackage.CGI_INFORMATION_FLOW__MPPARENT:
+				setM_pParent(MPPARENT_EDEFAULT);
+				return;
+			case UMLRpyPackage.CGI_INFORMATION_FLOW__MPSOURCE:
+				setM_pSource((M_pRootType)null);
+				return;
+			case UMLRpyPackage.CGI_INFORMATION_FLOW__MSOURCE_TYPE:
+				setM_sourceType(MSOURCE_TYPE_EDEFAULT);
+				return;
+			case UMLRpyPackage.CGI_INFORMATION_FLOW__MPTARGET:
+				setM_pTarget((M_pRootType)null);
+				return;
+			case UMLRpyPackage.CGI_INFORMATION_FLOW__MTARGET_TYPE:
+				setM_targetType(MTARGET_TYPE_EDEFAULT);
+				return;
+			case UMLRpyPackage.CGI_INFORMATION_FLOW__MDIRECTION:
+				setM_direction(MDIRECTION_EDEFAULT);
+				return;
+			case UMLRpyPackage.CGI_INFORMATION_FLOW__MRPN:
+				setM_rpn((CGIText)null);
+				return;
+			case UMLRpyPackage.CGI_INFORMATION_FLOW__MANGLE_POINT1:
+				getM_anglePoint1().clear();
+				return;
+			case UMLRpyPackage.CGI_INFORMATION_FLOW__MANGLE_POINT2:
+				getM_anglePoint2().clear();
+				return;
+			case UMLRpyPackage.CGI_INFORMATION_FLOW__MLINE_STYLE:
+				setM_line_style(MLINE_STYLE_EDEFAULT);
+				return;
+			case UMLRpyPackage.CGI_INFORMATION_FLOW__MSOURCE_PORT:
+				getM_SourcePort().clear();
+				return;
+			case UMLRpyPackage.CGI_INFORMATION_FLOW__MTARGET_PORT:
+				getM_TargetPort().clear();
+				return;
+			case UMLRpyPackage.CGI_INFORMATION_FLOW__MBSHOW_KEYWORD:
+				setM_bShowKeyword(MBSHOW_KEYWORD_EDEFAULT);
+				return;
+			case UMLRpyPackage.CGI_INFORMATION_FLOW__MSHOW_CONVEYED:
+				setM_showConveyed(MSHOW_CONVEYED_EDEFAULT);
+				return;
+			case UMLRpyPackage.CGI_INFORMATION_FLOW__MKEYWORD:
+				setM_keyword((CGIText)null);
+				return;
+			case UMLRpyPackage.CGI_INFORMATION_FLOW__MCONVEYED:
+				setM_conveyed((CGIText)null);
+				return;
+			case UMLRpyPackage.CGI_INFORMATION_FLOW__MARROW:
+				getM_arrow().clear();
+				return;
+			case UMLRpyPackage.CGI_INFORMATION_FLOW__PROPERTIES:
+				setProperties((IPropertyContainer)null);
+				return;
+		}
+		super.eUnset(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public boolean eIsSet(int featureID) {
+		switch (featureID) {
+			case UMLRpyPackage.CGI_INFORMATION_FLOW__MPMODEL_OBJECT:
+				return m_pModelObject != null;
+			case UMLRpyPackage.CGI_INFORMATION_FLOW__MPPARENT:
+				return MPPARENT_EDEFAULT == null ? m_pParent != null : !MPPARENT_EDEFAULT.equals(m_pParent);
+			case UMLRpyPackage.CGI_INFORMATION_FLOW__MPSOURCE:
+				return m_pSource != null;
+			case UMLRpyPackage.CGI_INFORMATION_FLOW__MSOURCE_TYPE:
+				return MSOURCE_TYPE_EDEFAULT == null ? m_sourceType != null : !MSOURCE_TYPE_EDEFAULT.equals(m_sourceType);
+			case UMLRpyPackage.CGI_INFORMATION_FLOW__MPTARGET:
+				return m_pTarget != null;
+			case UMLRpyPackage.CGI_INFORMATION_FLOW__MTARGET_TYPE:
+				return MTARGET_TYPE_EDEFAULT == null ? m_targetType != null : !MTARGET_TYPE_EDEFAULT.equals(m_targetType);
+			case UMLRpyPackage.CGI_INFORMATION_FLOW__MDIRECTION:
+				return MDIRECTION_EDEFAULT == null ? m_direction != null : !MDIRECTION_EDEFAULT.equals(m_direction);
+			case UMLRpyPackage.CGI_INFORMATION_FLOW__MRPN:
+				return m_rpn != null;
+			case UMLRpyPackage.CGI_INFORMATION_FLOW__MANGLE_POINT1:
+				return m_anglePoint1 != null && !m_anglePoint1.isEmpty();
+			case UMLRpyPackage.CGI_INFORMATION_FLOW__MANGLE_POINT2:
+				return m_anglePoint2 != null && !m_anglePoint2.isEmpty();
+			case UMLRpyPackage.CGI_INFORMATION_FLOW__MLINE_STYLE:
+				return MLINE_STYLE_EDEFAULT == null ? m_line_style != null : !MLINE_STYLE_EDEFAULT.equals(m_line_style);
+			case UMLRpyPackage.CGI_INFORMATION_FLOW__MSOURCE_PORT:
+				return m_SourcePort != null && !m_SourcePort.isEmpty();
+			case UMLRpyPackage.CGI_INFORMATION_FLOW__MTARGET_PORT:
+				return m_TargetPort != null && !m_TargetPort.isEmpty();
+			case UMLRpyPackage.CGI_INFORMATION_FLOW__MBSHOW_KEYWORD:
+				return MBSHOW_KEYWORD_EDEFAULT == null ? m_bShowKeyword != null : !MBSHOW_KEYWORD_EDEFAULT.equals(m_bShowKeyword);
+			case UMLRpyPackage.CGI_INFORMATION_FLOW__MSHOW_CONVEYED:
+				return MSHOW_CONVEYED_EDEFAULT == null ? m_showConveyed != null : !MSHOW_CONVEYED_EDEFAULT.equals(m_showConveyed);
+			case UMLRpyPackage.CGI_INFORMATION_FLOW__MKEYWORD:
+				return m_keyword != null;
+			case UMLRpyPackage.CGI_INFORMATION_FLOW__MCONVEYED:
+				return m_conveyed != null;
+			case UMLRpyPackage.CGI_INFORMATION_FLOW__MARROW:
+				return m_arrow != null && !m_arrow.isEmpty();
+			case UMLRpyPackage.CGI_INFORMATION_FLOW__PROPERTIES:
+				return properties != null;
+		}
+		return super.eIsSet(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String toString() {
+		if (eIsProxy()) return super.toString();
+
+		StringBuffer result = new StringBuffer(super.toString());
+		result.append(" (m_pParent: "); //$NON-NLS-1$
+		result.append(m_pParent);
+		result.append(", m_sourceType: "); //$NON-NLS-1$
+		result.append(m_sourceType);
+		result.append(", m_targetType: "); //$NON-NLS-1$
+		result.append(m_targetType);
+		result.append(", m_direction: "); //$NON-NLS-1$
+		result.append(m_direction);
+		result.append(", m_anglePoint1: "); //$NON-NLS-1$
+		result.append(m_anglePoint1);
+		result.append(", m_anglePoint2: "); //$NON-NLS-1$
+		result.append(m_anglePoint2);
+		result.append(", m_line_style: "); //$NON-NLS-1$
+		result.append(m_line_style);
+		result.append(", m_SourcePort: "); //$NON-NLS-1$
+		result.append(m_SourcePort);
+		result.append(", m_TargetPort: "); //$NON-NLS-1$
+		result.append(m_TargetPort);
+		result.append(", m_bShowKeyword: "); //$NON-NLS-1$
+		result.append(m_bShowKeyword);
+		result.append(", m_showConveyed: "); //$NON-NLS-1$
+		result.append(m_showConveyed);
+		result.append(", m_arrow: "); //$NON-NLS-1$
+		result.append(m_arrow);
+		result.append(')');
+		return result.toString();
+	}
+
+} //CGIInformationFlowImpl
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/CGIInheritanceImpl.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/CGIInheritanceImpl.java
new file mode 100755
index 0000000..92ef722
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/CGIInheritanceImpl.java
@@ -0,0 +1,1206 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl;
+
+import java.util.Collection;
+
+import org.eclipse.emf.common.notify.Notification;
+import org.eclipse.emf.common.notify.NotificationChain;
+
+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.EDataTypeEList;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIInheritance;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIText;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.GraphElementsType;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IColor;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IModelElement;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IPropertyContainer;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>CGI Inheritance</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * </p>
+ * <ul>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIInheritanceImpl#getM_pModelObject <em>MpModel Object</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIInheritanceImpl#getM_pParent <em>MpParent</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIInheritanceImpl#getM_pSource <em>MpSource</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIInheritanceImpl#getM_sourceType <em>Msource Type</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIInheritanceImpl#getM_pTarget <em>MpTarget</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIInheritanceImpl#getM_targetType <em>Mtarget Type</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIInheritanceImpl#getM_direction <em>Mdirection</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIInheritanceImpl#getM_rpn <em>Mrpn</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIInheritanceImpl#getM_anglePoint1 <em>Mangle Point1</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIInheritanceImpl#getM_anglePoint2 <em>Mangle Point2</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIInheritanceImpl#getM_line_style <em>Mline style</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIInheritanceImpl#getM_SourcePort <em>MSource Port</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIInheritanceImpl#getM_TargetPort <em>MTarget Port</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIInheritanceImpl#getM_ShowName <em>MShow Name</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIInheritanceImpl#getM_ShowStereotype <em>MShow Stereotype</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIInheritanceImpl#getProperties <em>Properties</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIInheritanceImpl#getM_color <em>Mcolor</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIInheritanceImpl#getM_lineWidth <em>Mline Width</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIInheritanceImpl#getM_arrow <em>Marrow</em>}</li>
+ * </ul>
+ *
+ * @generated
+ */
+public class CGIInheritanceImpl extends GraphElementsTypeImpl implements CGIInheritance {
+	/**
+	 * The cached value of the '{@link #getM_pModelObject() <em>MpModel Object</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_pModelObject()
+	 * @generated
+	 * @ordered
+	 */
+	protected IModelElement m_pModelObject;
+
+	/**
+	 * The default value of the '{@link #getM_pParent() <em>MpParent</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_pParent()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String MPPARENT_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getM_pParent() <em>MpParent</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_pParent()
+	 * @generated
+	 * @ordered
+	 */
+	protected String m_pParent = MPPARENT_EDEFAULT;
+
+	/**
+	 * The cached value of the '{@link #getM_pSource() <em>MpSource</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_pSource()
+	 * @generated
+	 * @ordered
+	 */
+	protected GraphElementsType m_pSource;
+
+	/**
+	 * The default value of the '{@link #getM_sourceType() <em>Msource Type</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_sourceType()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String MSOURCE_TYPE_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getM_sourceType() <em>Msource Type</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_sourceType()
+	 * @generated
+	 * @ordered
+	 */
+	protected String m_sourceType = MSOURCE_TYPE_EDEFAULT;
+
+	/**
+	 * The cached value of the '{@link #getM_pTarget() <em>MpTarget</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_pTarget()
+	 * @generated
+	 * @ordered
+	 */
+	protected GraphElementsType m_pTarget;
+
+	/**
+	 * The default value of the '{@link #getM_targetType() <em>Mtarget Type</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_targetType()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String MTARGET_TYPE_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getM_targetType() <em>Mtarget Type</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_targetType()
+	 * @generated
+	 * @ordered
+	 */
+	protected String m_targetType = MTARGET_TYPE_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getM_direction() <em>Mdirection</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_direction()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String MDIRECTION_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getM_direction() <em>Mdirection</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_direction()
+	 * @generated
+	 * @ordered
+	 */
+	protected String m_direction = MDIRECTION_EDEFAULT;
+
+	/**
+	 * The cached value of the '{@link #getM_rpn() <em>Mrpn</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_rpn()
+	 * @generated
+	 * @ordered
+	 */
+	protected CGIText m_rpn;
+
+	/**
+	 * The cached value of the '{@link #getM_anglePoint1() <em>Mangle Point1</em>}' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_anglePoint1()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<String> m_anglePoint1;
+
+	/**
+	 * The cached value of the '{@link #getM_anglePoint2() <em>Mangle Point2</em>}' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_anglePoint2()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<String> m_anglePoint2;
+
+	/**
+	 * The default value of the '{@link #getM_line_style() <em>Mline style</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_line_style()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String MLINE_STYLE_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getM_line_style() <em>Mline style</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_line_style()
+	 * @generated
+	 * @ordered
+	 */
+	protected String m_line_style = MLINE_STYLE_EDEFAULT;
+
+	/**
+	 * The cached value of the '{@link #getM_SourcePort() <em>MSource Port</em>}' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_SourcePort()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<String> m_SourcePort;
+
+	/**
+	 * The cached value of the '{@link #getM_TargetPort() <em>MTarget Port</em>}' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_TargetPort()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<String> m_TargetPort;
+
+	/**
+	 * The default value of the '{@link #getM_ShowName() <em>MShow Name</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_ShowName()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String MSHOW_NAME_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getM_ShowName() <em>MShow Name</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_ShowName()
+	 * @generated
+	 * @ordered
+	 */
+	protected String m_ShowName = MSHOW_NAME_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getM_ShowStereotype() <em>MShow Stereotype</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_ShowStereotype()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String MSHOW_STEREOTYPE_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getM_ShowStereotype() <em>MShow Stereotype</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_ShowStereotype()
+	 * @generated
+	 * @ordered
+	 */
+	protected String m_ShowStereotype = MSHOW_STEREOTYPE_EDEFAULT;
+
+	/**
+	 * The cached value of the '{@link #getProperties() <em>Properties</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getProperties()
+	 * @generated
+	 * @ordered
+	 */
+	protected IPropertyContainer properties;
+
+	/**
+	 * The cached value of the '{@link #getM_color() <em>Mcolor</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_color()
+	 * @generated
+	 * @ordered
+	 */
+	protected IColor m_color;
+
+	/**
+	 * The default value of the '{@link #getM_lineWidth() <em>Mline Width</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_lineWidth()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String MLINE_WIDTH_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getM_lineWidth() <em>Mline Width</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_lineWidth()
+	 * @generated
+	 * @ordered
+	 */
+	protected String m_lineWidth = MLINE_WIDTH_EDEFAULT;
+
+	/**
+	 * The cached value of the '{@link #getM_arrow() <em>Marrow</em>}' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_arrow()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<String> m_arrow;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected CGIInheritanceImpl() {
+		super();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EClass eStaticClass() {
+		return UMLRpyPackage.eINSTANCE.getCGIInheritance();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IModelElement getM_pModelObject() {
+		if (m_pModelObject != null && m_pModelObject.eIsProxy()) {
+			InternalEObject oldM_pModelObject = (InternalEObject)m_pModelObject;
+			m_pModelObject = (IModelElement)eResolveProxy(oldM_pModelObject);
+			if (m_pModelObject != oldM_pModelObject) {
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.CGI_INHERITANCE__MPMODEL_OBJECT, oldM_pModelObject, m_pModelObject));
+			}
+		}
+		return m_pModelObject;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IModelElement basicGetM_pModelObject() {
+		return m_pModelObject;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_pModelObject(IModelElement newM_pModelObject) {
+		IModelElement oldM_pModelObject = m_pModelObject;
+		m_pModelObject = newM_pModelObject;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_INHERITANCE__MPMODEL_OBJECT, oldM_pModelObject, m_pModelObject));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getM_pParent() {
+		return m_pParent;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_pParent(String newM_pParent) {
+		String oldM_pParent = m_pParent;
+		m_pParent = newM_pParent;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_INHERITANCE__MPPARENT, oldM_pParent, m_pParent));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public GraphElementsType getM_pSource() {
+		if (m_pSource != null && m_pSource.eIsProxy()) {
+			InternalEObject oldM_pSource = (InternalEObject)m_pSource;
+			m_pSource = (GraphElementsType)eResolveProxy(oldM_pSource);
+			if (m_pSource != oldM_pSource) {
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.CGI_INHERITANCE__MPSOURCE, oldM_pSource, m_pSource));
+			}
+		}
+		return m_pSource;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public GraphElementsType basicGetM_pSource() {
+		return m_pSource;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_pSource(GraphElementsType newM_pSource) {
+		GraphElementsType oldM_pSource = m_pSource;
+		m_pSource = newM_pSource;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_INHERITANCE__MPSOURCE, oldM_pSource, m_pSource));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getM_sourceType() {
+		return m_sourceType;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_sourceType(String newM_sourceType) {
+		String oldM_sourceType = m_sourceType;
+		m_sourceType = newM_sourceType;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_INHERITANCE__MSOURCE_TYPE, oldM_sourceType, m_sourceType));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public GraphElementsType getM_pTarget() {
+		if (m_pTarget != null && m_pTarget.eIsProxy()) {
+			InternalEObject oldM_pTarget = (InternalEObject)m_pTarget;
+			m_pTarget = (GraphElementsType)eResolveProxy(oldM_pTarget);
+			if (m_pTarget != oldM_pTarget) {
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.CGI_INHERITANCE__MPTARGET, oldM_pTarget, m_pTarget));
+			}
+		}
+		return m_pTarget;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public GraphElementsType basicGetM_pTarget() {
+		return m_pTarget;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_pTarget(GraphElementsType newM_pTarget) {
+		GraphElementsType oldM_pTarget = m_pTarget;
+		m_pTarget = newM_pTarget;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_INHERITANCE__MPTARGET, oldM_pTarget, m_pTarget));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getM_targetType() {
+		return m_targetType;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_targetType(String newM_targetType) {
+		String oldM_targetType = m_targetType;
+		m_targetType = newM_targetType;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_INHERITANCE__MTARGET_TYPE, oldM_targetType, m_targetType));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getM_direction() {
+		return m_direction;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_direction(String newM_direction) {
+		String oldM_direction = m_direction;
+		m_direction = newM_direction;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_INHERITANCE__MDIRECTION, oldM_direction, m_direction));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public CGIText getM_rpn() {
+		if (m_rpn != null && m_rpn.eIsProxy()) {
+			InternalEObject oldM_rpn = (InternalEObject)m_rpn;
+			m_rpn = (CGIText)eResolveProxy(oldM_rpn);
+			if (m_rpn != oldM_rpn) {
+				InternalEObject newM_rpn = (InternalEObject)m_rpn;
+				NotificationChain msgs = oldM_rpn.eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.CGI_INHERITANCE__MRPN, null, null);
+				if (newM_rpn.eInternalContainer() == null) {
+					msgs = newM_rpn.eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.CGI_INHERITANCE__MRPN, null, msgs);
+				}
+				if (msgs != null) msgs.dispatch();
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.CGI_INHERITANCE__MRPN, oldM_rpn, m_rpn));
+			}
+		}
+		return m_rpn;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public CGIText basicGetM_rpn() {
+		return m_rpn;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public NotificationChain basicSetM_rpn(CGIText newM_rpn, NotificationChain msgs) {
+		CGIText oldM_rpn = m_rpn;
+		m_rpn = newM_rpn;
+		if (eNotificationRequired()) {
+			ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_INHERITANCE__MRPN, oldM_rpn, newM_rpn);
+			if (msgs == null) msgs = notification; else msgs.add(notification);
+		}
+		return msgs;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_rpn(CGIText newM_rpn) {
+		if (newM_rpn != m_rpn) {
+			NotificationChain msgs = null;
+			if (m_rpn != null)
+				msgs = ((InternalEObject)m_rpn).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.CGI_INHERITANCE__MRPN, null, msgs);
+			if (newM_rpn != null)
+				msgs = ((InternalEObject)newM_rpn).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.CGI_INHERITANCE__MRPN, null, msgs);
+			msgs = basicSetM_rpn(newM_rpn, msgs);
+			if (msgs != null) msgs.dispatch();
+		}
+		else if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_INHERITANCE__MRPN, newM_rpn, newM_rpn));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<String> getM_anglePoint1() {
+		if (m_anglePoint1 == null) {
+			m_anglePoint1 = new EDataTypeEList<String>(String.class, this, UMLRpyPackage.CGI_INHERITANCE__MANGLE_POINT1);
+		}
+		return m_anglePoint1;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<String> getM_anglePoint2() {
+		if (m_anglePoint2 == null) {
+			m_anglePoint2 = new EDataTypeEList<String>(String.class, this, UMLRpyPackage.CGI_INHERITANCE__MANGLE_POINT2);
+		}
+		return m_anglePoint2;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getM_line_style() {
+		return m_line_style;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_line_style(String newM_line_style) {
+		String oldM_line_style = m_line_style;
+		m_line_style = newM_line_style;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_INHERITANCE__MLINE_STYLE, oldM_line_style, m_line_style));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<String> getM_SourcePort() {
+		if (m_SourcePort == null) {
+			m_SourcePort = new EDataTypeEList<String>(String.class, this, UMLRpyPackage.CGI_INHERITANCE__MSOURCE_PORT);
+		}
+		return m_SourcePort;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<String> getM_TargetPort() {
+		if (m_TargetPort == null) {
+			m_TargetPort = new EDataTypeEList<String>(String.class, this, UMLRpyPackage.CGI_INHERITANCE__MTARGET_PORT);
+		}
+		return m_TargetPort;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getM_ShowName() {
+		return m_ShowName;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_ShowName(String newM_ShowName) {
+		String oldM_ShowName = m_ShowName;
+		m_ShowName = newM_ShowName;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_INHERITANCE__MSHOW_NAME, oldM_ShowName, m_ShowName));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getM_ShowStereotype() {
+		return m_ShowStereotype;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_ShowStereotype(String newM_ShowStereotype) {
+		String oldM_ShowStereotype = m_ShowStereotype;
+		m_ShowStereotype = newM_ShowStereotype;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_INHERITANCE__MSHOW_STEREOTYPE, oldM_ShowStereotype, m_ShowStereotype));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IPropertyContainer getProperties() {
+		if (properties != null && properties.eIsProxy()) {
+			InternalEObject oldProperties = (InternalEObject)properties;
+			properties = (IPropertyContainer)eResolveProxy(oldProperties);
+			if (properties != oldProperties) {
+				InternalEObject newProperties = (InternalEObject)properties;
+				NotificationChain msgs = oldProperties.eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.CGI_INHERITANCE__PROPERTIES, null, null);
+				if (newProperties.eInternalContainer() == null) {
+					msgs = newProperties.eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.CGI_INHERITANCE__PROPERTIES, null, msgs);
+				}
+				if (msgs != null) msgs.dispatch();
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.CGI_INHERITANCE__PROPERTIES, oldProperties, properties));
+			}
+		}
+		return properties;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IPropertyContainer basicGetProperties() {
+		return properties;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public NotificationChain basicSetProperties(IPropertyContainer newProperties, NotificationChain msgs) {
+		IPropertyContainer oldProperties = properties;
+		properties = newProperties;
+		if (eNotificationRequired()) {
+			ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_INHERITANCE__PROPERTIES, oldProperties, newProperties);
+			if (msgs == null) msgs = notification; else msgs.add(notification);
+		}
+		return msgs;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setProperties(IPropertyContainer newProperties) {
+		if (newProperties != properties) {
+			NotificationChain msgs = null;
+			if (properties != null)
+				msgs = ((InternalEObject)properties).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.CGI_INHERITANCE__PROPERTIES, null, msgs);
+			if (newProperties != null)
+				msgs = ((InternalEObject)newProperties).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.CGI_INHERITANCE__PROPERTIES, null, msgs);
+			msgs = basicSetProperties(newProperties, msgs);
+			if (msgs != null) msgs.dispatch();
+		}
+		else if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_INHERITANCE__PROPERTIES, newProperties, newProperties));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IColor getM_color() {
+		if (m_color != null && m_color.eIsProxy()) {
+			InternalEObject oldM_color = (InternalEObject)m_color;
+			m_color = (IColor)eResolveProxy(oldM_color);
+			if (m_color != oldM_color) {
+				InternalEObject newM_color = (InternalEObject)m_color;
+				NotificationChain msgs = oldM_color.eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.CGI_INHERITANCE__MCOLOR, null, null);
+				if (newM_color.eInternalContainer() == null) {
+					msgs = newM_color.eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.CGI_INHERITANCE__MCOLOR, null, msgs);
+				}
+				if (msgs != null) msgs.dispatch();
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.CGI_INHERITANCE__MCOLOR, oldM_color, m_color));
+			}
+		}
+		return m_color;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IColor basicGetM_color() {
+		return m_color;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public NotificationChain basicSetM_color(IColor newM_color, NotificationChain msgs) {
+		IColor oldM_color = m_color;
+		m_color = newM_color;
+		if (eNotificationRequired()) {
+			ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_INHERITANCE__MCOLOR, oldM_color, newM_color);
+			if (msgs == null) msgs = notification; else msgs.add(notification);
+		}
+		return msgs;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_color(IColor newM_color) {
+		if (newM_color != m_color) {
+			NotificationChain msgs = null;
+			if (m_color != null)
+				msgs = ((InternalEObject)m_color).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.CGI_INHERITANCE__MCOLOR, null, msgs);
+			if (newM_color != null)
+				msgs = ((InternalEObject)newM_color).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.CGI_INHERITANCE__MCOLOR, null, msgs);
+			msgs = basicSetM_color(newM_color, msgs);
+			if (msgs != null) msgs.dispatch();
+		}
+		else if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_INHERITANCE__MCOLOR, newM_color, newM_color));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getM_lineWidth() {
+		return m_lineWidth;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_lineWidth(String newM_lineWidth) {
+		String oldM_lineWidth = m_lineWidth;
+		m_lineWidth = newM_lineWidth;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_INHERITANCE__MLINE_WIDTH, oldM_lineWidth, m_lineWidth));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<String> getM_arrow() {
+		if (m_arrow == null) {
+			m_arrow = new EDataTypeEList<String>(String.class, this, UMLRpyPackage.CGI_INHERITANCE__MARROW);
+		}
+		return m_arrow;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
+		switch (featureID) {
+			case UMLRpyPackage.CGI_INHERITANCE__MRPN:
+				return basicSetM_rpn(null, msgs);
+			case UMLRpyPackage.CGI_INHERITANCE__PROPERTIES:
+				return basicSetProperties(null, msgs);
+			case UMLRpyPackage.CGI_INHERITANCE__MCOLOR:
+				return basicSetM_color(null, msgs);
+		}
+		return super.eInverseRemove(otherEnd, featureID, msgs);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object eGet(int featureID, boolean resolve, boolean coreType) {
+		switch (featureID) {
+			case UMLRpyPackage.CGI_INHERITANCE__MPMODEL_OBJECT:
+				if (resolve) return getM_pModelObject();
+				return basicGetM_pModelObject();
+			case UMLRpyPackage.CGI_INHERITANCE__MPPARENT:
+				return getM_pParent();
+			case UMLRpyPackage.CGI_INHERITANCE__MPSOURCE:
+				if (resolve) return getM_pSource();
+				return basicGetM_pSource();
+			case UMLRpyPackage.CGI_INHERITANCE__MSOURCE_TYPE:
+				return getM_sourceType();
+			case UMLRpyPackage.CGI_INHERITANCE__MPTARGET:
+				if (resolve) return getM_pTarget();
+				return basicGetM_pTarget();
+			case UMLRpyPackage.CGI_INHERITANCE__MTARGET_TYPE:
+				return getM_targetType();
+			case UMLRpyPackage.CGI_INHERITANCE__MDIRECTION:
+				return getM_direction();
+			case UMLRpyPackage.CGI_INHERITANCE__MRPN:
+				if (resolve) return getM_rpn();
+				return basicGetM_rpn();
+			case UMLRpyPackage.CGI_INHERITANCE__MANGLE_POINT1:
+				return getM_anglePoint1();
+			case UMLRpyPackage.CGI_INHERITANCE__MANGLE_POINT2:
+				return getM_anglePoint2();
+			case UMLRpyPackage.CGI_INHERITANCE__MLINE_STYLE:
+				return getM_line_style();
+			case UMLRpyPackage.CGI_INHERITANCE__MSOURCE_PORT:
+				return getM_SourcePort();
+			case UMLRpyPackage.CGI_INHERITANCE__MTARGET_PORT:
+				return getM_TargetPort();
+			case UMLRpyPackage.CGI_INHERITANCE__MSHOW_NAME:
+				return getM_ShowName();
+			case UMLRpyPackage.CGI_INHERITANCE__MSHOW_STEREOTYPE:
+				return getM_ShowStereotype();
+			case UMLRpyPackage.CGI_INHERITANCE__PROPERTIES:
+				if (resolve) return getProperties();
+				return basicGetProperties();
+			case UMLRpyPackage.CGI_INHERITANCE__MCOLOR:
+				if (resolve) return getM_color();
+				return basicGetM_color();
+			case UMLRpyPackage.CGI_INHERITANCE__MLINE_WIDTH:
+				return getM_lineWidth();
+			case UMLRpyPackage.CGI_INHERITANCE__MARROW:
+				return getM_arrow();
+		}
+		return super.eGet(featureID, resolve, coreType);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@SuppressWarnings("unchecked")
+	@Override
+	public void eSet(int featureID, Object newValue) {
+		switch (featureID) {
+			case UMLRpyPackage.CGI_INHERITANCE__MPMODEL_OBJECT:
+				setM_pModelObject((IModelElement)newValue);
+				return;
+			case UMLRpyPackage.CGI_INHERITANCE__MPPARENT:
+				setM_pParent((String)newValue);
+				return;
+			case UMLRpyPackage.CGI_INHERITANCE__MPSOURCE:
+				setM_pSource((GraphElementsType)newValue);
+				return;
+			case UMLRpyPackage.CGI_INHERITANCE__MSOURCE_TYPE:
+				setM_sourceType((String)newValue);
+				return;
+			case UMLRpyPackage.CGI_INHERITANCE__MPTARGET:
+				setM_pTarget((GraphElementsType)newValue);
+				return;
+			case UMLRpyPackage.CGI_INHERITANCE__MTARGET_TYPE:
+				setM_targetType((String)newValue);
+				return;
+			case UMLRpyPackage.CGI_INHERITANCE__MDIRECTION:
+				setM_direction((String)newValue);
+				return;
+			case UMLRpyPackage.CGI_INHERITANCE__MRPN:
+				setM_rpn((CGIText)newValue);
+				return;
+			case UMLRpyPackage.CGI_INHERITANCE__MANGLE_POINT1:
+				getM_anglePoint1().clear();
+				getM_anglePoint1().addAll((Collection<? extends String>)newValue);
+				return;
+			case UMLRpyPackage.CGI_INHERITANCE__MANGLE_POINT2:
+				getM_anglePoint2().clear();
+				getM_anglePoint2().addAll((Collection<? extends String>)newValue);
+				return;
+			case UMLRpyPackage.CGI_INHERITANCE__MLINE_STYLE:
+				setM_line_style((String)newValue);
+				return;
+			case UMLRpyPackage.CGI_INHERITANCE__MSOURCE_PORT:
+				getM_SourcePort().clear();
+				getM_SourcePort().addAll((Collection<? extends String>)newValue);
+				return;
+			case UMLRpyPackage.CGI_INHERITANCE__MTARGET_PORT:
+				getM_TargetPort().clear();
+				getM_TargetPort().addAll((Collection<? extends String>)newValue);
+				return;
+			case UMLRpyPackage.CGI_INHERITANCE__MSHOW_NAME:
+				setM_ShowName((String)newValue);
+				return;
+			case UMLRpyPackage.CGI_INHERITANCE__MSHOW_STEREOTYPE:
+				setM_ShowStereotype((String)newValue);
+				return;
+			case UMLRpyPackage.CGI_INHERITANCE__PROPERTIES:
+				setProperties((IPropertyContainer)newValue);
+				return;
+			case UMLRpyPackage.CGI_INHERITANCE__MCOLOR:
+				setM_color((IColor)newValue);
+				return;
+			case UMLRpyPackage.CGI_INHERITANCE__MLINE_WIDTH:
+				setM_lineWidth((String)newValue);
+				return;
+			case UMLRpyPackage.CGI_INHERITANCE__MARROW:
+				getM_arrow().clear();
+				getM_arrow().addAll((Collection<? extends String>)newValue);
+				return;
+		}
+		super.eSet(featureID, newValue);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void eUnset(int featureID) {
+		switch (featureID) {
+			case UMLRpyPackage.CGI_INHERITANCE__MPMODEL_OBJECT:
+				setM_pModelObject((IModelElement)null);
+				return;
+			case UMLRpyPackage.CGI_INHERITANCE__MPPARENT:
+				setM_pParent(MPPARENT_EDEFAULT);
+				return;
+			case UMLRpyPackage.CGI_INHERITANCE__MPSOURCE:
+				setM_pSource((GraphElementsType)null);
+				return;
+			case UMLRpyPackage.CGI_INHERITANCE__MSOURCE_TYPE:
+				setM_sourceType(MSOURCE_TYPE_EDEFAULT);
+				return;
+			case UMLRpyPackage.CGI_INHERITANCE__MPTARGET:
+				setM_pTarget((GraphElementsType)null);
+				return;
+			case UMLRpyPackage.CGI_INHERITANCE__MTARGET_TYPE:
+				setM_targetType(MTARGET_TYPE_EDEFAULT);
+				return;
+			case UMLRpyPackage.CGI_INHERITANCE__MDIRECTION:
+				setM_direction(MDIRECTION_EDEFAULT);
+				return;
+			case UMLRpyPackage.CGI_INHERITANCE__MRPN:
+				setM_rpn((CGIText)null);
+				return;
+			case UMLRpyPackage.CGI_INHERITANCE__MANGLE_POINT1:
+				getM_anglePoint1().clear();
+				return;
+			case UMLRpyPackage.CGI_INHERITANCE__MANGLE_POINT2:
+				getM_anglePoint2().clear();
+				return;
+			case UMLRpyPackage.CGI_INHERITANCE__MLINE_STYLE:
+				setM_line_style(MLINE_STYLE_EDEFAULT);
+				return;
+			case UMLRpyPackage.CGI_INHERITANCE__MSOURCE_PORT:
+				getM_SourcePort().clear();
+				return;
+			case UMLRpyPackage.CGI_INHERITANCE__MTARGET_PORT:
+				getM_TargetPort().clear();
+				return;
+			case UMLRpyPackage.CGI_INHERITANCE__MSHOW_NAME:
+				setM_ShowName(MSHOW_NAME_EDEFAULT);
+				return;
+			case UMLRpyPackage.CGI_INHERITANCE__MSHOW_STEREOTYPE:
+				setM_ShowStereotype(MSHOW_STEREOTYPE_EDEFAULT);
+				return;
+			case UMLRpyPackage.CGI_INHERITANCE__PROPERTIES:
+				setProperties((IPropertyContainer)null);
+				return;
+			case UMLRpyPackage.CGI_INHERITANCE__MCOLOR:
+				setM_color((IColor)null);
+				return;
+			case UMLRpyPackage.CGI_INHERITANCE__MLINE_WIDTH:
+				setM_lineWidth(MLINE_WIDTH_EDEFAULT);
+				return;
+			case UMLRpyPackage.CGI_INHERITANCE__MARROW:
+				getM_arrow().clear();
+				return;
+		}
+		super.eUnset(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public boolean eIsSet(int featureID) {
+		switch (featureID) {
+			case UMLRpyPackage.CGI_INHERITANCE__MPMODEL_OBJECT:
+				return m_pModelObject != null;
+			case UMLRpyPackage.CGI_INHERITANCE__MPPARENT:
+				return MPPARENT_EDEFAULT == null ? m_pParent != null : !MPPARENT_EDEFAULT.equals(m_pParent);
+			case UMLRpyPackage.CGI_INHERITANCE__MPSOURCE:
+				return m_pSource != null;
+			case UMLRpyPackage.CGI_INHERITANCE__MSOURCE_TYPE:
+				return MSOURCE_TYPE_EDEFAULT == null ? m_sourceType != null : !MSOURCE_TYPE_EDEFAULT.equals(m_sourceType);
+			case UMLRpyPackage.CGI_INHERITANCE__MPTARGET:
+				return m_pTarget != null;
+			case UMLRpyPackage.CGI_INHERITANCE__MTARGET_TYPE:
+				return MTARGET_TYPE_EDEFAULT == null ? m_targetType != null : !MTARGET_TYPE_EDEFAULT.equals(m_targetType);
+			case UMLRpyPackage.CGI_INHERITANCE__MDIRECTION:
+				return MDIRECTION_EDEFAULT == null ? m_direction != null : !MDIRECTION_EDEFAULT.equals(m_direction);
+			case UMLRpyPackage.CGI_INHERITANCE__MRPN:
+				return m_rpn != null;
+			case UMLRpyPackage.CGI_INHERITANCE__MANGLE_POINT1:
+				return m_anglePoint1 != null && !m_anglePoint1.isEmpty();
+			case UMLRpyPackage.CGI_INHERITANCE__MANGLE_POINT2:
+				return m_anglePoint2 != null && !m_anglePoint2.isEmpty();
+			case UMLRpyPackage.CGI_INHERITANCE__MLINE_STYLE:
+				return MLINE_STYLE_EDEFAULT == null ? m_line_style != null : !MLINE_STYLE_EDEFAULT.equals(m_line_style);
+			case UMLRpyPackage.CGI_INHERITANCE__MSOURCE_PORT:
+				return m_SourcePort != null && !m_SourcePort.isEmpty();
+			case UMLRpyPackage.CGI_INHERITANCE__MTARGET_PORT:
+				return m_TargetPort != null && !m_TargetPort.isEmpty();
+			case UMLRpyPackage.CGI_INHERITANCE__MSHOW_NAME:
+				return MSHOW_NAME_EDEFAULT == null ? m_ShowName != null : !MSHOW_NAME_EDEFAULT.equals(m_ShowName);
+			case UMLRpyPackage.CGI_INHERITANCE__MSHOW_STEREOTYPE:
+				return MSHOW_STEREOTYPE_EDEFAULT == null ? m_ShowStereotype != null : !MSHOW_STEREOTYPE_EDEFAULT.equals(m_ShowStereotype);
+			case UMLRpyPackage.CGI_INHERITANCE__PROPERTIES:
+				return properties != null;
+			case UMLRpyPackage.CGI_INHERITANCE__MCOLOR:
+				return m_color != null;
+			case UMLRpyPackage.CGI_INHERITANCE__MLINE_WIDTH:
+				return MLINE_WIDTH_EDEFAULT == null ? m_lineWidth != null : !MLINE_WIDTH_EDEFAULT.equals(m_lineWidth);
+			case UMLRpyPackage.CGI_INHERITANCE__MARROW:
+				return m_arrow != null && !m_arrow.isEmpty();
+		}
+		return super.eIsSet(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String toString() {
+		if (eIsProxy()) return super.toString();
+
+		StringBuffer result = new StringBuffer(super.toString());
+		result.append(" (m_pParent: "); //$NON-NLS-1$
+		result.append(m_pParent);
+		result.append(", m_sourceType: "); //$NON-NLS-1$
+		result.append(m_sourceType);
+		result.append(", m_targetType: "); //$NON-NLS-1$
+		result.append(m_targetType);
+		result.append(", m_direction: "); //$NON-NLS-1$
+		result.append(m_direction);
+		result.append(", m_anglePoint1: "); //$NON-NLS-1$
+		result.append(m_anglePoint1);
+		result.append(", m_anglePoint2: "); //$NON-NLS-1$
+		result.append(m_anglePoint2);
+		result.append(", m_line_style: "); //$NON-NLS-1$
+		result.append(m_line_style);
+		result.append(", m_SourcePort: "); //$NON-NLS-1$
+		result.append(m_SourcePort);
+		result.append(", m_TargetPort: "); //$NON-NLS-1$
+		result.append(m_TargetPort);
+		result.append(", m_ShowName: "); //$NON-NLS-1$
+		result.append(m_ShowName);
+		result.append(", m_ShowStereotype: "); //$NON-NLS-1$
+		result.append(m_ShowStereotype);
+		result.append(", m_lineWidth: "); //$NON-NLS-1$
+		result.append(m_lineWidth);
+		result.append(", m_arrow: "); //$NON-NLS-1$
+		result.append(m_arrow);
+		result.append(')');
+		return result.toString();
+	}
+
+} //CGIInheritanceImpl
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/CGIMFCCtrlImpl.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/CGIMFCCtrlImpl.java
new file mode 100755
index 0000000..4a6a8ea
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/CGIMFCCtrlImpl.java
@@ -0,0 +1,765 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl;
+
+import java.util.Collection;
+
+import org.eclipse.emf.common.notify.Notification;
+import org.eclipse.emf.common.notify.NotificationChain;
+
+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.EDataTypeEList;
+import org.eclipse.emf.ecore.util.EObjectResolvingEList;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMFCCtrl;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.DependsOnType;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.GraphElementsType;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IPropertyContainer;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IReception;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UnknownType;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>CGIMFC Ctrl</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * </p>
+ * <ul>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIMFCCtrlImpl#getProperties <em>Properties</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIMFCCtrlImpl#getM_pModelObject <em>MpModel Object</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIMFCCtrlImpl#getM_pParent <em>MpParent</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIMFCCtrlImpl#getM_transform <em>Mtransform</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIMFCCtrlImpl#getM_polygon <em>Mpolygon</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIMFCCtrlImpl#getM_nNameFormat <em>MnName Format</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIMFCCtrlImpl#getM_nIsNameFormat <em>MnIs Name Format</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIMFCCtrlImpl#getCompartments <em>Compartments</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIMFCCtrlImpl#getM_csModelObjPath <em>Mcs Model Obj Path</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIMFCCtrlImpl#getM_csName <em>Mcs Name</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIMFCCtrlImpl#getM_PartsArray <em>MParts Array</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIMFCCtrlImpl#getM_csButtonCaption <em>Mcs Button Caption</em>}</li>
+ * </ul>
+ *
+ * @generated
+ */
+public class CGIMFCCtrlImpl extends GraphElementsTypeImpl implements CGIMFCCtrl {
+	/**
+	 * The cached value of the '{@link #getProperties() <em>Properties</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getProperties()
+	 * @generated
+	 * @ordered
+	 */
+	protected IPropertyContainer properties;
+
+	/**
+	 * The cached value of the '{@link #getM_pModelObject() <em>MpModel Object</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_pModelObject()
+	 * @generated
+	 * @ordered
+	 */
+	protected IReception m_pModelObject;
+
+	/**
+	 * The cached value of the '{@link #getM_pParent() <em>MpParent</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_pParent()
+	 * @generated
+	 * @ordered
+	 */
+	protected GraphElementsType m_pParent;
+
+	/**
+	 * The cached value of the '{@link #getM_transform() <em>Mtransform</em>}' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_transform()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<String> m_transform;
+
+	/**
+	 * The cached value of the '{@link #getM_polygon() <em>Mpolygon</em>}' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_polygon()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<String> m_polygon;
+
+	/**
+	 * The default value of the '{@link #getM_nNameFormat() <em>MnName Format</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_nNameFormat()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String MNNAME_FORMAT_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getM_nNameFormat() <em>MnName Format</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_nNameFormat()
+	 * @generated
+	 * @ordered
+	 */
+	protected String m_nNameFormat = MNNAME_FORMAT_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getM_nIsNameFormat() <em>MnIs Name Format</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_nIsNameFormat()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String MNIS_NAME_FORMAT_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getM_nIsNameFormat() <em>MnIs Name Format</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_nIsNameFormat()
+	 * @generated
+	 * @ordered
+	 */
+	protected String m_nIsNameFormat = MNIS_NAME_FORMAT_EDEFAULT;
+
+	/**
+	 * The cached value of the '{@link #getCompartments() <em>Compartments</em>}' reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getCompartments()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<UnknownType> compartments;
+
+	/**
+	 * The default value of the '{@link #getM_csModelObjPath() <em>Mcs Model Obj Path</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_csModelObjPath()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String MCS_MODEL_OBJ_PATH_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getM_csModelObjPath() <em>Mcs Model Obj Path</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_csModelObjPath()
+	 * @generated
+	 * @ordered
+	 */
+	protected String m_csModelObjPath = MCS_MODEL_OBJ_PATH_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getM_csName() <em>Mcs Name</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_csName()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String MCS_NAME_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getM_csName() <em>Mcs Name</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_csName()
+	 * @generated
+	 * @ordered
+	 */
+	protected String m_csName = MCS_NAME_EDEFAULT;
+
+	/**
+	 * The cached value of the '{@link #getM_PartsArray() <em>MParts Array</em>}' reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_PartsArray()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<DependsOnType> m_PartsArray;
+
+	/**
+	 * The default value of the '{@link #getM_csButtonCaption() <em>Mcs Button Caption</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_csButtonCaption()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String MCS_BUTTON_CAPTION_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getM_csButtonCaption() <em>Mcs Button Caption</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_csButtonCaption()
+	 * @generated
+	 * @ordered
+	 */
+	protected String m_csButtonCaption = MCS_BUTTON_CAPTION_EDEFAULT;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected CGIMFCCtrlImpl() {
+		super();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EClass eStaticClass() {
+		return UMLRpyPackage.eINSTANCE.getCGIMFCCtrl();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IPropertyContainer getProperties() {
+		if (properties != null && properties.eIsProxy()) {
+			InternalEObject oldProperties = (InternalEObject)properties;
+			properties = (IPropertyContainer)eResolveProxy(oldProperties);
+			if (properties != oldProperties) {
+				InternalEObject newProperties = (InternalEObject)properties;
+				NotificationChain msgs = oldProperties.eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.CGIMFC_CTRL__PROPERTIES, null, null);
+				if (newProperties.eInternalContainer() == null) {
+					msgs = newProperties.eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.CGIMFC_CTRL__PROPERTIES, null, msgs);
+				}
+				if (msgs != null) msgs.dispatch();
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.CGIMFC_CTRL__PROPERTIES, oldProperties, properties));
+			}
+		}
+		return properties;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IPropertyContainer basicGetProperties() {
+		return properties;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public NotificationChain basicSetProperties(IPropertyContainer newProperties, NotificationChain msgs) {
+		IPropertyContainer oldProperties = properties;
+		properties = newProperties;
+		if (eNotificationRequired()) {
+			ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGIMFC_CTRL__PROPERTIES, oldProperties, newProperties);
+			if (msgs == null) msgs = notification; else msgs.add(notification);
+		}
+		return msgs;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setProperties(IPropertyContainer newProperties) {
+		if (newProperties != properties) {
+			NotificationChain msgs = null;
+			if (properties != null)
+				msgs = ((InternalEObject)properties).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.CGIMFC_CTRL__PROPERTIES, null, msgs);
+			if (newProperties != null)
+				msgs = ((InternalEObject)newProperties).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.CGIMFC_CTRL__PROPERTIES, null, msgs);
+			msgs = basicSetProperties(newProperties, msgs);
+			if (msgs != null) msgs.dispatch();
+		}
+		else if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGIMFC_CTRL__PROPERTIES, newProperties, newProperties));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IReception getM_pModelObject() {
+		if (m_pModelObject != null && m_pModelObject.eIsProxy()) {
+			InternalEObject oldM_pModelObject = (InternalEObject)m_pModelObject;
+			m_pModelObject = (IReception)eResolveProxy(oldM_pModelObject);
+			if (m_pModelObject != oldM_pModelObject) {
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.CGIMFC_CTRL__MPMODEL_OBJECT, oldM_pModelObject, m_pModelObject));
+			}
+		}
+		return m_pModelObject;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IReception basicGetM_pModelObject() {
+		return m_pModelObject;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_pModelObject(IReception newM_pModelObject) {
+		IReception oldM_pModelObject = m_pModelObject;
+		m_pModelObject = newM_pModelObject;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGIMFC_CTRL__MPMODEL_OBJECT, oldM_pModelObject, m_pModelObject));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public GraphElementsType getM_pParent() {
+		if (m_pParent != null && m_pParent.eIsProxy()) {
+			InternalEObject oldM_pParent = (InternalEObject)m_pParent;
+			m_pParent = (GraphElementsType)eResolveProxy(oldM_pParent);
+			if (m_pParent != oldM_pParent) {
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.CGIMFC_CTRL__MPPARENT, oldM_pParent, m_pParent));
+			}
+		}
+		return m_pParent;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public GraphElementsType basicGetM_pParent() {
+		return m_pParent;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_pParent(GraphElementsType newM_pParent) {
+		GraphElementsType oldM_pParent = m_pParent;
+		m_pParent = newM_pParent;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGIMFC_CTRL__MPPARENT, oldM_pParent, m_pParent));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<String> getM_transform() {
+		if (m_transform == null) {
+			m_transform = new EDataTypeEList<String>(String.class, this, UMLRpyPackage.CGIMFC_CTRL__MTRANSFORM);
+		}
+		return m_transform;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<String> getM_polygon() {
+		if (m_polygon == null) {
+			m_polygon = new EDataTypeEList<String>(String.class, this, UMLRpyPackage.CGIMFC_CTRL__MPOLYGON);
+		}
+		return m_polygon;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getM_nNameFormat() {
+		return m_nNameFormat;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_nNameFormat(String newM_nNameFormat) {
+		String oldM_nNameFormat = m_nNameFormat;
+		m_nNameFormat = newM_nNameFormat;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGIMFC_CTRL__MNNAME_FORMAT, oldM_nNameFormat, m_nNameFormat));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getM_nIsNameFormat() {
+		return m_nIsNameFormat;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_nIsNameFormat(String newM_nIsNameFormat) {
+		String oldM_nIsNameFormat = m_nIsNameFormat;
+		m_nIsNameFormat = newM_nIsNameFormat;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGIMFC_CTRL__MNIS_NAME_FORMAT, oldM_nIsNameFormat, m_nIsNameFormat));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<UnknownType> getCompartments() {
+		if (compartments == null) {
+			compartments = new EObjectResolvingEList<UnknownType>(UnknownType.class, this, UMLRpyPackage.CGIMFC_CTRL__COMPARTMENTS);
+		}
+		return compartments;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getM_csModelObjPath() {
+		return m_csModelObjPath;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_csModelObjPath(String newM_csModelObjPath) {
+		String oldM_csModelObjPath = m_csModelObjPath;
+		m_csModelObjPath = newM_csModelObjPath;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGIMFC_CTRL__MCS_MODEL_OBJ_PATH, oldM_csModelObjPath, m_csModelObjPath));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getM_csName() {
+		return m_csName;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_csName(String newM_csName) {
+		String oldM_csName = m_csName;
+		m_csName = newM_csName;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGIMFC_CTRL__MCS_NAME, oldM_csName, m_csName));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<DependsOnType> getM_PartsArray() {
+		if (m_PartsArray == null) {
+			m_PartsArray = new EObjectResolvingEList<DependsOnType>(DependsOnType.class, this, UMLRpyPackage.CGIMFC_CTRL__MPARTS_ARRAY);
+		}
+		return m_PartsArray;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getM_csButtonCaption() {
+		return m_csButtonCaption;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_csButtonCaption(String newM_csButtonCaption) {
+		String oldM_csButtonCaption = m_csButtonCaption;
+		m_csButtonCaption = newM_csButtonCaption;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGIMFC_CTRL__MCS_BUTTON_CAPTION, oldM_csButtonCaption, m_csButtonCaption));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
+		switch (featureID) {
+			case UMLRpyPackage.CGIMFC_CTRL__PROPERTIES:
+				return basicSetProperties(null, msgs);
+		}
+		return super.eInverseRemove(otherEnd, featureID, msgs);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object eGet(int featureID, boolean resolve, boolean coreType) {
+		switch (featureID) {
+			case UMLRpyPackage.CGIMFC_CTRL__PROPERTIES:
+				if (resolve) return getProperties();
+				return basicGetProperties();
+			case UMLRpyPackage.CGIMFC_CTRL__MPMODEL_OBJECT:
+				if (resolve) return getM_pModelObject();
+				return basicGetM_pModelObject();
+			case UMLRpyPackage.CGIMFC_CTRL__MPPARENT:
+				if (resolve) return getM_pParent();
+				return basicGetM_pParent();
+			case UMLRpyPackage.CGIMFC_CTRL__MTRANSFORM:
+				return getM_transform();
+			case UMLRpyPackage.CGIMFC_CTRL__MPOLYGON:
+				return getM_polygon();
+			case UMLRpyPackage.CGIMFC_CTRL__MNNAME_FORMAT:
+				return getM_nNameFormat();
+			case UMLRpyPackage.CGIMFC_CTRL__MNIS_NAME_FORMAT:
+				return getM_nIsNameFormat();
+			case UMLRpyPackage.CGIMFC_CTRL__COMPARTMENTS:
+				return getCompartments();
+			case UMLRpyPackage.CGIMFC_CTRL__MCS_MODEL_OBJ_PATH:
+				return getM_csModelObjPath();
+			case UMLRpyPackage.CGIMFC_CTRL__MCS_NAME:
+				return getM_csName();
+			case UMLRpyPackage.CGIMFC_CTRL__MPARTS_ARRAY:
+				return getM_PartsArray();
+			case UMLRpyPackage.CGIMFC_CTRL__MCS_BUTTON_CAPTION:
+				return getM_csButtonCaption();
+		}
+		return super.eGet(featureID, resolve, coreType);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@SuppressWarnings("unchecked")
+	@Override
+	public void eSet(int featureID, Object newValue) {
+		switch (featureID) {
+			case UMLRpyPackage.CGIMFC_CTRL__PROPERTIES:
+				setProperties((IPropertyContainer)newValue);
+				return;
+			case UMLRpyPackage.CGIMFC_CTRL__MPMODEL_OBJECT:
+				setM_pModelObject((IReception)newValue);
+				return;
+			case UMLRpyPackage.CGIMFC_CTRL__MPPARENT:
+				setM_pParent((GraphElementsType)newValue);
+				return;
+			case UMLRpyPackage.CGIMFC_CTRL__MTRANSFORM:
+				getM_transform().clear();
+				getM_transform().addAll((Collection<? extends String>)newValue);
+				return;
+			case UMLRpyPackage.CGIMFC_CTRL__MPOLYGON:
+				getM_polygon().clear();
+				getM_polygon().addAll((Collection<? extends String>)newValue);
+				return;
+			case UMLRpyPackage.CGIMFC_CTRL__MNNAME_FORMAT:
+				setM_nNameFormat((String)newValue);
+				return;
+			case UMLRpyPackage.CGIMFC_CTRL__MNIS_NAME_FORMAT:
+				setM_nIsNameFormat((String)newValue);
+				return;
+			case UMLRpyPackage.CGIMFC_CTRL__COMPARTMENTS:
+				getCompartments().clear();
+				getCompartments().addAll((Collection<? extends UnknownType>)newValue);
+				return;
+			case UMLRpyPackage.CGIMFC_CTRL__MCS_MODEL_OBJ_PATH:
+				setM_csModelObjPath((String)newValue);
+				return;
+			case UMLRpyPackage.CGIMFC_CTRL__MCS_NAME:
+				setM_csName((String)newValue);
+				return;
+			case UMLRpyPackage.CGIMFC_CTRL__MPARTS_ARRAY:
+				getM_PartsArray().clear();
+				getM_PartsArray().addAll((Collection<? extends DependsOnType>)newValue);
+				return;
+			case UMLRpyPackage.CGIMFC_CTRL__MCS_BUTTON_CAPTION:
+				setM_csButtonCaption((String)newValue);
+				return;
+		}
+		super.eSet(featureID, newValue);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void eUnset(int featureID) {
+		switch (featureID) {
+			case UMLRpyPackage.CGIMFC_CTRL__PROPERTIES:
+				setProperties((IPropertyContainer)null);
+				return;
+			case UMLRpyPackage.CGIMFC_CTRL__MPMODEL_OBJECT:
+				setM_pModelObject((IReception)null);
+				return;
+			case UMLRpyPackage.CGIMFC_CTRL__MPPARENT:
+				setM_pParent((GraphElementsType)null);
+				return;
+			case UMLRpyPackage.CGIMFC_CTRL__MTRANSFORM:
+				getM_transform().clear();
+				return;
+			case UMLRpyPackage.CGIMFC_CTRL__MPOLYGON:
+				getM_polygon().clear();
+				return;
+			case UMLRpyPackage.CGIMFC_CTRL__MNNAME_FORMAT:
+				setM_nNameFormat(MNNAME_FORMAT_EDEFAULT);
+				return;
+			case UMLRpyPackage.CGIMFC_CTRL__MNIS_NAME_FORMAT:
+				setM_nIsNameFormat(MNIS_NAME_FORMAT_EDEFAULT);
+				return;
+			case UMLRpyPackage.CGIMFC_CTRL__COMPARTMENTS:
+				getCompartments().clear();
+				return;
+			case UMLRpyPackage.CGIMFC_CTRL__MCS_MODEL_OBJ_PATH:
+				setM_csModelObjPath(MCS_MODEL_OBJ_PATH_EDEFAULT);
+				return;
+			case UMLRpyPackage.CGIMFC_CTRL__MCS_NAME:
+				setM_csName(MCS_NAME_EDEFAULT);
+				return;
+			case UMLRpyPackage.CGIMFC_CTRL__MPARTS_ARRAY:
+				getM_PartsArray().clear();
+				return;
+			case UMLRpyPackage.CGIMFC_CTRL__MCS_BUTTON_CAPTION:
+				setM_csButtonCaption(MCS_BUTTON_CAPTION_EDEFAULT);
+				return;
+		}
+		super.eUnset(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public boolean eIsSet(int featureID) {
+		switch (featureID) {
+			case UMLRpyPackage.CGIMFC_CTRL__PROPERTIES:
+				return properties != null;
+			case UMLRpyPackage.CGIMFC_CTRL__MPMODEL_OBJECT:
+				return m_pModelObject != null;
+			case UMLRpyPackage.CGIMFC_CTRL__MPPARENT:
+				return m_pParent != null;
+			case UMLRpyPackage.CGIMFC_CTRL__MTRANSFORM:
+				return m_transform != null && !m_transform.isEmpty();
+			case UMLRpyPackage.CGIMFC_CTRL__MPOLYGON:
+				return m_polygon != null && !m_polygon.isEmpty();
+			case UMLRpyPackage.CGIMFC_CTRL__MNNAME_FORMAT:
+				return MNNAME_FORMAT_EDEFAULT == null ? m_nNameFormat != null : !MNNAME_FORMAT_EDEFAULT.equals(m_nNameFormat);
+			case UMLRpyPackage.CGIMFC_CTRL__MNIS_NAME_FORMAT:
+				return MNIS_NAME_FORMAT_EDEFAULT == null ? m_nIsNameFormat != null : !MNIS_NAME_FORMAT_EDEFAULT.equals(m_nIsNameFormat);
+			case UMLRpyPackage.CGIMFC_CTRL__COMPARTMENTS:
+				return compartments != null && !compartments.isEmpty();
+			case UMLRpyPackage.CGIMFC_CTRL__MCS_MODEL_OBJ_PATH:
+				return MCS_MODEL_OBJ_PATH_EDEFAULT == null ? m_csModelObjPath != null : !MCS_MODEL_OBJ_PATH_EDEFAULT.equals(m_csModelObjPath);
+			case UMLRpyPackage.CGIMFC_CTRL__MCS_NAME:
+				return MCS_NAME_EDEFAULT == null ? m_csName != null : !MCS_NAME_EDEFAULT.equals(m_csName);
+			case UMLRpyPackage.CGIMFC_CTRL__MPARTS_ARRAY:
+				return m_PartsArray != null && !m_PartsArray.isEmpty();
+			case UMLRpyPackage.CGIMFC_CTRL__MCS_BUTTON_CAPTION:
+				return MCS_BUTTON_CAPTION_EDEFAULT == null ? m_csButtonCaption != null : !MCS_BUTTON_CAPTION_EDEFAULT.equals(m_csButtonCaption);
+		}
+		return super.eIsSet(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String toString() {
+		if (eIsProxy()) return super.toString();
+
+		StringBuffer result = new StringBuffer(super.toString());
+		result.append(" (m_transform: "); //$NON-NLS-1$
+		result.append(m_transform);
+		result.append(", m_polygon: "); //$NON-NLS-1$
+		result.append(m_polygon);
+		result.append(", m_nNameFormat: "); //$NON-NLS-1$
+		result.append(m_nNameFormat);
+		result.append(", m_nIsNameFormat: "); //$NON-NLS-1$
+		result.append(m_nIsNameFormat);
+		result.append(", m_csModelObjPath: "); //$NON-NLS-1$
+		result.append(m_csModelObjPath);
+		result.append(", m_csName: "); //$NON-NLS-1$
+		result.append(m_csName);
+		result.append(", m_csButtonCaption: "); //$NON-NLS-1$
+		result.append(m_csButtonCaption);
+		result.append(')');
+		return result.toString();
+	}
+
+} //CGIMFCCtrlImpl
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/CGIMessageLabelImpl.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/CGIMessageLabelImpl.java
new file mode 100755
index 0000000..8afcb90
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/CGIMessageLabelImpl.java
@@ -0,0 +1,349 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.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.interoperability.rpy.rpymetamodel.CGIAssociationRole;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMessageLabel;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMessage;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>CGI Message Label</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * </p>
+ * <ul>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIMessageLabelImpl#getM_pModelObject <em>MpModel Object</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIMessageLabelImpl#getM_pParent <em>MpParent</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIMessageLabelImpl#getM_pCommunicationConnection <em>MpCommunication Connection</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIMessageLabelImpl#getPercent <em>Percent</em>}</li>
+ * </ul>
+ *
+ * @generated
+ */
+public class CGIMessageLabelImpl extends GraphElementsTypeImpl implements CGIMessageLabel {
+	/**
+	 * The cached value of the '{@link #getM_pModelObject() <em>MpModel Object</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_pModelObject()
+	 * @generated
+	 * @ordered
+	 */
+	protected IMessage m_pModelObject;
+
+	/**
+	 * The default value of the '{@link #getM_pParent() <em>MpParent</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_pParent()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String MPPARENT_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getM_pParent() <em>MpParent</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_pParent()
+	 * @generated
+	 * @ordered
+	 */
+	protected String m_pParent = MPPARENT_EDEFAULT;
+
+	/**
+	 * The cached value of the '{@link #getM_pCommunicationConnection() <em>MpCommunication Connection</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_pCommunicationConnection()
+	 * @generated
+	 * @ordered
+	 */
+	protected CGIAssociationRole m_pCommunicationConnection;
+
+	/**
+	 * The default value of the '{@link #getPercent() <em>Percent</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getPercent()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String PERCENT_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getPercent() <em>Percent</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getPercent()
+	 * @generated
+	 * @ordered
+	 */
+	protected String percent = PERCENT_EDEFAULT;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected CGIMessageLabelImpl() {
+		super();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EClass eStaticClass() {
+		return UMLRpyPackage.eINSTANCE.getCGIMessageLabel();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IMessage getM_pModelObject() {
+		if (m_pModelObject != null && m_pModelObject.eIsProxy()) {
+			InternalEObject oldM_pModelObject = (InternalEObject)m_pModelObject;
+			m_pModelObject = (IMessage)eResolveProxy(oldM_pModelObject);
+			if (m_pModelObject != oldM_pModelObject) {
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.CGI_MESSAGE_LABEL__MPMODEL_OBJECT, oldM_pModelObject, m_pModelObject));
+			}
+		}
+		return m_pModelObject;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IMessage basicGetM_pModelObject() {
+		return m_pModelObject;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_pModelObject(IMessage newM_pModelObject) {
+		IMessage oldM_pModelObject = m_pModelObject;
+		m_pModelObject = newM_pModelObject;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_MESSAGE_LABEL__MPMODEL_OBJECT, oldM_pModelObject, m_pModelObject));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getM_pParent() {
+		return m_pParent;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_pParent(String newM_pParent) {
+		String oldM_pParent = m_pParent;
+		m_pParent = newM_pParent;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_MESSAGE_LABEL__MPPARENT, oldM_pParent, m_pParent));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public CGIAssociationRole getM_pCommunicationConnection() {
+		if (m_pCommunicationConnection != null && m_pCommunicationConnection.eIsProxy()) {
+			InternalEObject oldM_pCommunicationConnection = (InternalEObject)m_pCommunicationConnection;
+			m_pCommunicationConnection = (CGIAssociationRole)eResolveProxy(oldM_pCommunicationConnection);
+			if (m_pCommunicationConnection != oldM_pCommunicationConnection) {
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.CGI_MESSAGE_LABEL__MPCOMMUNICATION_CONNECTION, oldM_pCommunicationConnection, m_pCommunicationConnection));
+			}
+		}
+		return m_pCommunicationConnection;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public CGIAssociationRole basicGetM_pCommunicationConnection() {
+		return m_pCommunicationConnection;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_pCommunicationConnection(CGIAssociationRole newM_pCommunicationConnection) {
+		CGIAssociationRole oldM_pCommunicationConnection = m_pCommunicationConnection;
+		m_pCommunicationConnection = newM_pCommunicationConnection;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_MESSAGE_LABEL__MPCOMMUNICATION_CONNECTION, oldM_pCommunicationConnection, m_pCommunicationConnection));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getPercent() {
+		return percent;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setPercent(String newPercent) {
+		String oldPercent = percent;
+		percent = newPercent;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_MESSAGE_LABEL__PERCENT, oldPercent, percent));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object eGet(int featureID, boolean resolve, boolean coreType) {
+		switch (featureID) {
+			case UMLRpyPackage.CGI_MESSAGE_LABEL__MPMODEL_OBJECT:
+				if (resolve) return getM_pModelObject();
+				return basicGetM_pModelObject();
+			case UMLRpyPackage.CGI_MESSAGE_LABEL__MPPARENT:
+				return getM_pParent();
+			case UMLRpyPackage.CGI_MESSAGE_LABEL__MPCOMMUNICATION_CONNECTION:
+				if (resolve) return getM_pCommunicationConnection();
+				return basicGetM_pCommunicationConnection();
+			case UMLRpyPackage.CGI_MESSAGE_LABEL__PERCENT:
+				return getPercent();
+		}
+		return super.eGet(featureID, resolve, coreType);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void eSet(int featureID, Object newValue) {
+		switch (featureID) {
+			case UMLRpyPackage.CGI_MESSAGE_LABEL__MPMODEL_OBJECT:
+				setM_pModelObject((IMessage)newValue);
+				return;
+			case UMLRpyPackage.CGI_MESSAGE_LABEL__MPPARENT:
+				setM_pParent((String)newValue);
+				return;
+			case UMLRpyPackage.CGI_MESSAGE_LABEL__MPCOMMUNICATION_CONNECTION:
+				setM_pCommunicationConnection((CGIAssociationRole)newValue);
+				return;
+			case UMLRpyPackage.CGI_MESSAGE_LABEL__PERCENT:
+				setPercent((String)newValue);
+				return;
+		}
+		super.eSet(featureID, newValue);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void eUnset(int featureID) {
+		switch (featureID) {
+			case UMLRpyPackage.CGI_MESSAGE_LABEL__MPMODEL_OBJECT:
+				setM_pModelObject((IMessage)null);
+				return;
+			case UMLRpyPackage.CGI_MESSAGE_LABEL__MPPARENT:
+				setM_pParent(MPPARENT_EDEFAULT);
+				return;
+			case UMLRpyPackage.CGI_MESSAGE_LABEL__MPCOMMUNICATION_CONNECTION:
+				setM_pCommunicationConnection((CGIAssociationRole)null);
+				return;
+			case UMLRpyPackage.CGI_MESSAGE_LABEL__PERCENT:
+				setPercent(PERCENT_EDEFAULT);
+				return;
+		}
+		super.eUnset(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public boolean eIsSet(int featureID) {
+		switch (featureID) {
+			case UMLRpyPackage.CGI_MESSAGE_LABEL__MPMODEL_OBJECT:
+				return m_pModelObject != null;
+			case UMLRpyPackage.CGI_MESSAGE_LABEL__MPPARENT:
+				return MPPARENT_EDEFAULT == null ? m_pParent != null : !MPPARENT_EDEFAULT.equals(m_pParent);
+			case UMLRpyPackage.CGI_MESSAGE_LABEL__MPCOMMUNICATION_CONNECTION:
+				return m_pCommunicationConnection != null;
+			case UMLRpyPackage.CGI_MESSAGE_LABEL__PERCENT:
+				return PERCENT_EDEFAULT == null ? percent != null : !PERCENT_EDEFAULT.equals(percent);
+		}
+		return super.eIsSet(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String toString() {
+		if (eIsProxy()) return super.toString();
+
+		StringBuffer result = new StringBuffer(super.toString());
+		result.append(" (m_pParent: "); //$NON-NLS-1$
+		result.append(m_pParent);
+		result.append(", percent: "); //$NON-NLS-1$
+		result.append(percent);
+		result.append(')');
+		return result.toString();
+	}
+
+} //CGIMessageLabelImpl
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/CGIMscChartImpl.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/CGIMscChartImpl.java
new file mode 100755
index 0000000..4ae91fa
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/CGIMscChartImpl.java
@@ -0,0 +1,1328 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl;
+
+import java.util.Collection;
+
+import org.eclipse.emf.common.notify.Notification;
+import org.eclipse.emf.common.notify.NotificationChain;
+
+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.impl.MinimalEObjectImpl;
+
+import org.eclipse.emf.ecore.util.EDataTypeEList;
+import org.eclipse.emf.ecore.util.EObjectContainmentEList;
+import org.eclipse.emf.ecore.util.InternalEList;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIBox;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscChart;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIText;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.GraphElementsType;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMSC;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>CGI Msc Chart</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * </p>
+ * <ul>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIMscChartImpl#getVLadderMargin <em>VLadder Margin</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIMscChartImpl#getM_usingActivationBar <em>Musing Activation Bar</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIMscChartImpl#getId <em>Id</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIMscChartImpl#getM_type <em>Mtype</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIMscChartImpl#getM_pModelObject <em>MpModel Object</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIMscChartImpl#getM_pParent <em>MpParent</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIMscChartImpl#getM_name <em>Mname</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIMscChartImpl#getM_drawBehavior <em>Mdraw Behavior</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIMscChartImpl#getM_bIsPreferencesInitialized <em>MbIs Preferences Initialized</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIMscChartImpl#getElementList <em>Element List</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIMscChartImpl#getGraphElements <em>Graph Elements</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIMscChartImpl#getM_access <em>Maccess</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIMscChartImpl#getM_modified <em>Mmodified</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIMscChartImpl#getM_fileVersion <em>Mfile Version</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIMscChartImpl#getM_nModifyDate <em>MnModify Date</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIMscChartImpl#getM_nCreateDate <em>MnCreate Date</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIMscChartImpl#getM_creator <em>Mcreator</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIMscChartImpl#getM_bScaleWithZoom <em>MbScale With Zoom</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIMscChartImpl#getM_arrowStyle <em>Marrow Style</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIMscChartImpl#getM_pRoot <em>MpRoot</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIMscChartImpl#getM_currentLeftTop <em>Mcurrent Left Top</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIMscChartImpl#getM_currentRightBottom <em>Mcurrent Right Bottom</em>}</li>
+ * </ul>
+ *
+ * @generated
+ */
+public class CGIMscChartImpl extends MinimalEObjectImpl.Container implements CGIMscChart {
+	/**
+	 * The default value of the '{@link #getVLadderMargin() <em>VLadder Margin</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getVLadderMargin()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String VLADDER_MARGIN_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getVLadderMargin() <em>VLadder Margin</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getVLadderMargin()
+	 * @generated
+	 * @ordered
+	 */
+	protected String vLadderMargin = VLADDER_MARGIN_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getM_usingActivationBar() <em>Musing Activation Bar</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_usingActivationBar()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String MUSING_ACTIVATION_BAR_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getM_usingActivationBar() <em>Musing Activation Bar</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_usingActivationBar()
+	 * @generated
+	 * @ordered
+	 */
+	protected String m_usingActivationBar = MUSING_ACTIVATION_BAR_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getId() <em>Id</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getId()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String ID_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getId() <em>Id</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getId()
+	 * @generated
+	 * @ordered
+	 */
+	protected String id = ID_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getM_type() <em>Mtype</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_type()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String MTYPE_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getM_type() <em>Mtype</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_type()
+	 * @generated
+	 * @ordered
+	 */
+	protected String m_type = MTYPE_EDEFAULT;
+
+	/**
+	 * The cached value of the '{@link #getM_pModelObject() <em>MpModel Object</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_pModelObject()
+	 * @generated
+	 * @ordered
+	 */
+	protected IMSC m_pModelObject;
+
+	/**
+	 * The default value of the '{@link #getM_pParent() <em>MpParent</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_pParent()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String MPPARENT_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getM_pParent() <em>MpParent</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_pParent()
+	 * @generated
+	 * @ordered
+	 */
+	protected String m_pParent = MPPARENT_EDEFAULT;
+
+	/**
+	 * The cached value of the '{@link #getM_name() <em>Mname</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_name()
+	 * @generated
+	 * @ordered
+	 */
+	protected CGIText m_name;
+
+	/**
+	 * The default value of the '{@link #getM_drawBehavior() <em>Mdraw Behavior</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_drawBehavior()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String MDRAW_BEHAVIOR_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getM_drawBehavior() <em>Mdraw Behavior</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_drawBehavior()
+	 * @generated
+	 * @ordered
+	 */
+	protected String m_drawBehavior = MDRAW_BEHAVIOR_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getM_bIsPreferencesInitialized() <em>MbIs Preferences Initialized</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_bIsPreferencesInitialized()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String MBIS_PREFERENCES_INITIALIZED_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getM_bIsPreferencesInitialized() <em>MbIs Preferences Initialized</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_bIsPreferencesInitialized()
+	 * @generated
+	 * @ordered
+	 */
+	protected String m_bIsPreferencesInitialized = MBIS_PREFERENCES_INITIALIZED_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getElementList() <em>Element List</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getElementList()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String ELEMENT_LIST_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getElementList() <em>Element List</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getElementList()
+	 * @generated
+	 * @ordered
+	 */
+	protected String elementList = ELEMENT_LIST_EDEFAULT;
+
+	/**
+	 * The cached value of the '{@link #getGraphElements() <em>Graph Elements</em>}' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getGraphElements()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<GraphElementsType> graphElements;
+
+	/**
+	 * The default value of the '{@link #getM_access() <em>Maccess</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_access()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String MACCESS_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getM_access() <em>Maccess</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_access()
+	 * @generated
+	 * @ordered
+	 */
+	protected String m_access = MACCESS_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getM_modified() <em>Mmodified</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_modified()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String MMODIFIED_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getM_modified() <em>Mmodified</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_modified()
+	 * @generated
+	 * @ordered
+	 */
+	protected String m_modified = MMODIFIED_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getM_fileVersion() <em>Mfile Version</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_fileVersion()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String MFILE_VERSION_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getM_fileVersion() <em>Mfile Version</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_fileVersion()
+	 * @generated
+	 * @ordered
+	 */
+	protected String m_fileVersion = MFILE_VERSION_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getM_nModifyDate() <em>MnModify Date</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_nModifyDate()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String MNMODIFY_DATE_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getM_nModifyDate() <em>MnModify Date</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_nModifyDate()
+	 * @generated
+	 * @ordered
+	 */
+	protected String m_nModifyDate = MNMODIFY_DATE_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getM_nCreateDate() <em>MnCreate Date</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_nCreateDate()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String MNCREATE_DATE_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getM_nCreateDate() <em>MnCreate Date</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_nCreateDate()
+	 * @generated
+	 * @ordered
+	 */
+	protected String m_nCreateDate = MNCREATE_DATE_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getM_creator() <em>Mcreator</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_creator()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String MCREATOR_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getM_creator() <em>Mcreator</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_creator()
+	 * @generated
+	 * @ordered
+	 */
+	protected String m_creator = MCREATOR_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getM_bScaleWithZoom() <em>MbScale With Zoom</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_bScaleWithZoom()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String MBSCALE_WITH_ZOOM_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getM_bScaleWithZoom() <em>MbScale With Zoom</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_bScaleWithZoom()
+	 * @generated
+	 * @ordered
+	 */
+	protected String m_bScaleWithZoom = MBSCALE_WITH_ZOOM_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getM_arrowStyle() <em>Marrow Style</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_arrowStyle()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String MARROW_STYLE_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getM_arrowStyle() <em>Marrow Style</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_arrowStyle()
+	 * @generated
+	 * @ordered
+	 */
+	protected String m_arrowStyle = MARROW_STYLE_EDEFAULT;
+
+	/**
+	 * The cached value of the '{@link #getM_pRoot() <em>MpRoot</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_pRoot()
+	 * @generated
+	 * @ordered
+	 */
+	protected CGIBox m_pRoot;
+
+	/**
+	 * The cached value of the '{@link #getM_currentLeftTop() <em>Mcurrent Left Top</em>}' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_currentLeftTop()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<String> m_currentLeftTop;
+
+	/**
+	 * The cached value of the '{@link #getM_currentRightBottom() <em>Mcurrent Right Bottom</em>}' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_currentRightBottom()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<String> m_currentRightBottom;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected CGIMscChartImpl() {
+		super();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EClass eStaticClass() {
+		return UMLRpyPackage.eINSTANCE.getCGIMscChart();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getVLadderMargin() {
+		return vLadderMargin;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setVLadderMargin(String newVLadderMargin) {
+		String oldVLadderMargin = vLadderMargin;
+		vLadderMargin = newVLadderMargin;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_MSC_CHART__VLADDER_MARGIN, oldVLadderMargin, vLadderMargin));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getM_usingActivationBar() {
+		return m_usingActivationBar;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_usingActivationBar(String newM_usingActivationBar) {
+		String oldM_usingActivationBar = m_usingActivationBar;
+		m_usingActivationBar = newM_usingActivationBar;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_MSC_CHART__MUSING_ACTIVATION_BAR, oldM_usingActivationBar, m_usingActivationBar));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getId() {
+		return id;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setId(String newId) {
+		String oldId = id;
+		id = newId;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_MSC_CHART__ID, oldId, id));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getM_type() {
+		return m_type;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_type(String newM_type) {
+		String oldM_type = m_type;
+		m_type = newM_type;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_MSC_CHART__MTYPE, oldM_type, m_type));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IMSC getM_pModelObject() {
+		if (m_pModelObject != null && m_pModelObject.eIsProxy()) {
+			InternalEObject oldM_pModelObject = (InternalEObject)m_pModelObject;
+			m_pModelObject = (IMSC)eResolveProxy(oldM_pModelObject);
+			if (m_pModelObject != oldM_pModelObject) {
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.CGI_MSC_CHART__MPMODEL_OBJECT, oldM_pModelObject, m_pModelObject));
+			}
+		}
+		return m_pModelObject;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IMSC basicGetM_pModelObject() {
+		return m_pModelObject;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_pModelObject(IMSC newM_pModelObject) {
+		IMSC oldM_pModelObject = m_pModelObject;
+		m_pModelObject = newM_pModelObject;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_MSC_CHART__MPMODEL_OBJECT, oldM_pModelObject, m_pModelObject));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getM_pParent() {
+		return m_pParent;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_pParent(String newM_pParent) {
+		String oldM_pParent = m_pParent;
+		m_pParent = newM_pParent;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_MSC_CHART__MPPARENT, oldM_pParent, m_pParent));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public CGIText getM_name() {
+		if (m_name != null && m_name.eIsProxy()) {
+			InternalEObject oldM_name = (InternalEObject)m_name;
+			m_name = (CGIText)eResolveProxy(oldM_name);
+			if (m_name != oldM_name) {
+				InternalEObject newM_name = (InternalEObject)m_name;
+				NotificationChain msgs = oldM_name.eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.CGI_MSC_CHART__MNAME, null, null);
+				if (newM_name.eInternalContainer() == null) {
+					msgs = newM_name.eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.CGI_MSC_CHART__MNAME, null, msgs);
+				}
+				if (msgs != null) msgs.dispatch();
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.CGI_MSC_CHART__MNAME, oldM_name, m_name));
+			}
+		}
+		return m_name;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public CGIText basicGetM_name() {
+		return m_name;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public NotificationChain basicSetM_name(CGIText newM_name, NotificationChain msgs) {
+		CGIText oldM_name = m_name;
+		m_name = newM_name;
+		if (eNotificationRequired()) {
+			ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_MSC_CHART__MNAME, oldM_name, newM_name);
+			if (msgs == null) msgs = notification; else msgs.add(notification);
+		}
+		return msgs;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_name(CGIText newM_name) {
+		if (newM_name != m_name) {
+			NotificationChain msgs = null;
+			if (m_name != null)
+				msgs = ((InternalEObject)m_name).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.CGI_MSC_CHART__MNAME, null, msgs);
+			if (newM_name != null)
+				msgs = ((InternalEObject)newM_name).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.CGI_MSC_CHART__MNAME, null, msgs);
+			msgs = basicSetM_name(newM_name, msgs);
+			if (msgs != null) msgs.dispatch();
+		}
+		else if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_MSC_CHART__MNAME, newM_name, newM_name));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getM_drawBehavior() {
+		return m_drawBehavior;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_drawBehavior(String newM_drawBehavior) {
+		String oldM_drawBehavior = m_drawBehavior;
+		m_drawBehavior = newM_drawBehavior;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_MSC_CHART__MDRAW_BEHAVIOR, oldM_drawBehavior, m_drawBehavior));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getM_bIsPreferencesInitialized() {
+		return m_bIsPreferencesInitialized;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_bIsPreferencesInitialized(String newM_bIsPreferencesInitialized) {
+		String oldM_bIsPreferencesInitialized = m_bIsPreferencesInitialized;
+		m_bIsPreferencesInitialized = newM_bIsPreferencesInitialized;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_MSC_CHART__MBIS_PREFERENCES_INITIALIZED, oldM_bIsPreferencesInitialized, m_bIsPreferencesInitialized));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getElementList() {
+		return elementList;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setElementList(String newElementList) {
+		String oldElementList = elementList;
+		elementList = newElementList;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_MSC_CHART__ELEMENT_LIST, oldElementList, elementList));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<GraphElementsType> getGraphElements() {
+		if (graphElements == null) {
+			graphElements = new EObjectContainmentEList.Resolving<GraphElementsType>(GraphElementsType.class, this, UMLRpyPackage.CGI_MSC_CHART__GRAPH_ELEMENTS);
+		}
+		return graphElements;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getM_access() {
+		return m_access;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_access(String newM_access) {
+		String oldM_access = m_access;
+		m_access = newM_access;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_MSC_CHART__MACCESS, oldM_access, m_access));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getM_modified() {
+		return m_modified;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_modified(String newM_modified) {
+		String oldM_modified = m_modified;
+		m_modified = newM_modified;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_MSC_CHART__MMODIFIED, oldM_modified, m_modified));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getM_fileVersion() {
+		return m_fileVersion;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_fileVersion(String newM_fileVersion) {
+		String oldM_fileVersion = m_fileVersion;
+		m_fileVersion = newM_fileVersion;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_MSC_CHART__MFILE_VERSION, oldM_fileVersion, m_fileVersion));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getM_nModifyDate() {
+		return m_nModifyDate;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_nModifyDate(String newM_nModifyDate) {
+		String oldM_nModifyDate = m_nModifyDate;
+		m_nModifyDate = newM_nModifyDate;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_MSC_CHART__MNMODIFY_DATE, oldM_nModifyDate, m_nModifyDate));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getM_nCreateDate() {
+		return m_nCreateDate;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_nCreateDate(String newM_nCreateDate) {
+		String oldM_nCreateDate = m_nCreateDate;
+		m_nCreateDate = newM_nCreateDate;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_MSC_CHART__MNCREATE_DATE, oldM_nCreateDate, m_nCreateDate));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getM_creator() {
+		return m_creator;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_creator(String newM_creator) {
+		String oldM_creator = m_creator;
+		m_creator = newM_creator;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_MSC_CHART__MCREATOR, oldM_creator, m_creator));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getM_bScaleWithZoom() {
+		return m_bScaleWithZoom;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_bScaleWithZoom(String newM_bScaleWithZoom) {
+		String oldM_bScaleWithZoom = m_bScaleWithZoom;
+		m_bScaleWithZoom = newM_bScaleWithZoom;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_MSC_CHART__MBSCALE_WITH_ZOOM, oldM_bScaleWithZoom, m_bScaleWithZoom));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getM_arrowStyle() {
+		return m_arrowStyle;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_arrowStyle(String newM_arrowStyle) {
+		String oldM_arrowStyle = m_arrowStyle;
+		m_arrowStyle = newM_arrowStyle;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_MSC_CHART__MARROW_STYLE, oldM_arrowStyle, m_arrowStyle));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public CGIBox getM_pRoot() {
+		if (m_pRoot != null && m_pRoot.eIsProxy()) {
+			InternalEObject oldM_pRoot = (InternalEObject)m_pRoot;
+			m_pRoot = (CGIBox)eResolveProxy(oldM_pRoot);
+			if (m_pRoot != oldM_pRoot) {
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.CGI_MSC_CHART__MPROOT, oldM_pRoot, m_pRoot));
+			}
+		}
+		return m_pRoot;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public CGIBox basicGetM_pRoot() {
+		return m_pRoot;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_pRoot(CGIBox newM_pRoot) {
+		CGIBox oldM_pRoot = m_pRoot;
+		m_pRoot = newM_pRoot;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_MSC_CHART__MPROOT, oldM_pRoot, m_pRoot));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<String> getM_currentLeftTop() {
+		if (m_currentLeftTop == null) {
+			m_currentLeftTop = new EDataTypeEList<String>(String.class, this, UMLRpyPackage.CGI_MSC_CHART__MCURRENT_LEFT_TOP);
+		}
+		return m_currentLeftTop;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<String> getM_currentRightBottom() {
+		if (m_currentRightBottom == null) {
+			m_currentRightBottom = new EDataTypeEList<String>(String.class, this, UMLRpyPackage.CGI_MSC_CHART__MCURRENT_RIGHT_BOTTOM);
+		}
+		return m_currentRightBottom;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
+		switch (featureID) {
+			case UMLRpyPackage.CGI_MSC_CHART__MNAME:
+				return basicSetM_name(null, msgs);
+			case UMLRpyPackage.CGI_MSC_CHART__GRAPH_ELEMENTS:
+				return ((InternalEList<?>)getGraphElements()).basicRemove(otherEnd, msgs);
+		}
+		return super.eInverseRemove(otherEnd, featureID, msgs);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object eGet(int featureID, boolean resolve, boolean coreType) {
+		switch (featureID) {
+			case UMLRpyPackage.CGI_MSC_CHART__VLADDER_MARGIN:
+				return getVLadderMargin();
+			case UMLRpyPackage.CGI_MSC_CHART__MUSING_ACTIVATION_BAR:
+				return getM_usingActivationBar();
+			case UMLRpyPackage.CGI_MSC_CHART__ID:
+				return getId();
+			case UMLRpyPackage.CGI_MSC_CHART__MTYPE:
+				return getM_type();
+			case UMLRpyPackage.CGI_MSC_CHART__MPMODEL_OBJECT:
+				if (resolve) return getM_pModelObject();
+				return basicGetM_pModelObject();
+			case UMLRpyPackage.CGI_MSC_CHART__MPPARENT:
+				return getM_pParent();
+			case UMLRpyPackage.CGI_MSC_CHART__MNAME:
+				if (resolve) return getM_name();
+				return basicGetM_name();
+			case UMLRpyPackage.CGI_MSC_CHART__MDRAW_BEHAVIOR:
+				return getM_drawBehavior();
+			case UMLRpyPackage.CGI_MSC_CHART__MBIS_PREFERENCES_INITIALIZED:
+				return getM_bIsPreferencesInitialized();
+			case UMLRpyPackage.CGI_MSC_CHART__ELEMENT_LIST:
+				return getElementList();
+			case UMLRpyPackage.CGI_MSC_CHART__GRAPH_ELEMENTS:
+				return getGraphElements();
+			case UMLRpyPackage.CGI_MSC_CHART__MACCESS:
+				return getM_access();
+			case UMLRpyPackage.CGI_MSC_CHART__MMODIFIED:
+				return getM_modified();
+			case UMLRpyPackage.CGI_MSC_CHART__MFILE_VERSION:
+				return getM_fileVersion();
+			case UMLRpyPackage.CGI_MSC_CHART__MNMODIFY_DATE:
+				return getM_nModifyDate();
+			case UMLRpyPackage.CGI_MSC_CHART__MNCREATE_DATE:
+				return getM_nCreateDate();
+			case UMLRpyPackage.CGI_MSC_CHART__MCREATOR:
+				return getM_creator();
+			case UMLRpyPackage.CGI_MSC_CHART__MBSCALE_WITH_ZOOM:
+				return getM_bScaleWithZoom();
+			case UMLRpyPackage.CGI_MSC_CHART__MARROW_STYLE:
+				return getM_arrowStyle();
+			case UMLRpyPackage.CGI_MSC_CHART__MPROOT:
+				if (resolve) return getM_pRoot();
+				return basicGetM_pRoot();
+			case UMLRpyPackage.CGI_MSC_CHART__MCURRENT_LEFT_TOP:
+				return getM_currentLeftTop();
+			case UMLRpyPackage.CGI_MSC_CHART__MCURRENT_RIGHT_BOTTOM:
+				return getM_currentRightBottom();
+		}
+		return super.eGet(featureID, resolve, coreType);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@SuppressWarnings("unchecked")
+	@Override
+	public void eSet(int featureID, Object newValue) {
+		switch (featureID) {
+			case UMLRpyPackage.CGI_MSC_CHART__VLADDER_MARGIN:
+				setVLadderMargin((String)newValue);
+				return;
+			case UMLRpyPackage.CGI_MSC_CHART__MUSING_ACTIVATION_BAR:
+				setM_usingActivationBar((String)newValue);
+				return;
+			case UMLRpyPackage.CGI_MSC_CHART__ID:
+				setId((String)newValue);
+				return;
+			case UMLRpyPackage.CGI_MSC_CHART__MTYPE:
+				setM_type((String)newValue);
+				return;
+			case UMLRpyPackage.CGI_MSC_CHART__MPMODEL_OBJECT:
+				setM_pModelObject((IMSC)newValue);
+				return;
+			case UMLRpyPackage.CGI_MSC_CHART__MPPARENT:
+				setM_pParent((String)newValue);
+				return;
+			case UMLRpyPackage.CGI_MSC_CHART__MNAME:
+				setM_name((CGIText)newValue);
+				return;
+			case UMLRpyPackage.CGI_MSC_CHART__MDRAW_BEHAVIOR:
+				setM_drawBehavior((String)newValue);
+				return;
+			case UMLRpyPackage.CGI_MSC_CHART__MBIS_PREFERENCES_INITIALIZED:
+				setM_bIsPreferencesInitialized((String)newValue);
+				return;
+			case UMLRpyPackage.CGI_MSC_CHART__ELEMENT_LIST:
+				setElementList((String)newValue);
+				return;
+			case UMLRpyPackage.CGI_MSC_CHART__GRAPH_ELEMENTS:
+				getGraphElements().clear();
+				getGraphElements().addAll((Collection<? extends GraphElementsType>)newValue);
+				return;
+			case UMLRpyPackage.CGI_MSC_CHART__MACCESS:
+				setM_access((String)newValue);
+				return;
+			case UMLRpyPackage.CGI_MSC_CHART__MMODIFIED:
+				setM_modified((String)newValue);
+				return;
+			case UMLRpyPackage.CGI_MSC_CHART__MFILE_VERSION:
+				setM_fileVersion((String)newValue);
+				return;
+			case UMLRpyPackage.CGI_MSC_CHART__MNMODIFY_DATE:
+				setM_nModifyDate((String)newValue);
+				return;
+			case UMLRpyPackage.CGI_MSC_CHART__MNCREATE_DATE:
+				setM_nCreateDate((String)newValue);
+				return;
+			case UMLRpyPackage.CGI_MSC_CHART__MCREATOR:
+				setM_creator((String)newValue);
+				return;
+			case UMLRpyPackage.CGI_MSC_CHART__MBSCALE_WITH_ZOOM:
+				setM_bScaleWithZoom((String)newValue);
+				return;
+			case UMLRpyPackage.CGI_MSC_CHART__MARROW_STYLE:
+				setM_arrowStyle((String)newValue);
+				return;
+			case UMLRpyPackage.CGI_MSC_CHART__MPROOT:
+				setM_pRoot((CGIBox)newValue);
+				return;
+			case UMLRpyPackage.CGI_MSC_CHART__MCURRENT_LEFT_TOP:
+				getM_currentLeftTop().clear();
+				getM_currentLeftTop().addAll((Collection<? extends String>)newValue);
+				return;
+			case UMLRpyPackage.CGI_MSC_CHART__MCURRENT_RIGHT_BOTTOM:
+				getM_currentRightBottom().clear();
+				getM_currentRightBottom().addAll((Collection<? extends String>)newValue);
+				return;
+		}
+		super.eSet(featureID, newValue);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void eUnset(int featureID) {
+		switch (featureID) {
+			case UMLRpyPackage.CGI_MSC_CHART__VLADDER_MARGIN:
+				setVLadderMargin(VLADDER_MARGIN_EDEFAULT);
+				return;
+			case UMLRpyPackage.CGI_MSC_CHART__MUSING_ACTIVATION_BAR:
+				setM_usingActivationBar(MUSING_ACTIVATION_BAR_EDEFAULT);
+				return;
+			case UMLRpyPackage.CGI_MSC_CHART__ID:
+				setId(ID_EDEFAULT);
+				return;
+			case UMLRpyPackage.CGI_MSC_CHART__MTYPE:
+				setM_type(MTYPE_EDEFAULT);
+				return;
+			case UMLRpyPackage.CGI_MSC_CHART__MPMODEL_OBJECT:
+				setM_pModelObject((IMSC)null);
+				return;
+			case UMLRpyPackage.CGI_MSC_CHART__MPPARENT:
+				setM_pParent(MPPARENT_EDEFAULT);
+				return;
+			case UMLRpyPackage.CGI_MSC_CHART__MNAME:
+				setM_name((CGIText)null);
+				return;
+			case UMLRpyPackage.CGI_MSC_CHART__MDRAW_BEHAVIOR:
+				setM_drawBehavior(MDRAW_BEHAVIOR_EDEFAULT);
+				return;
+			case UMLRpyPackage.CGI_MSC_CHART__MBIS_PREFERENCES_INITIALIZED:
+				setM_bIsPreferencesInitialized(MBIS_PREFERENCES_INITIALIZED_EDEFAULT);
+				return;
+			case UMLRpyPackage.CGI_MSC_CHART__ELEMENT_LIST:
+				setElementList(ELEMENT_LIST_EDEFAULT);
+				return;
+			case UMLRpyPackage.CGI_MSC_CHART__GRAPH_ELEMENTS:
+				getGraphElements().clear();
+				return;
+			case UMLRpyPackage.CGI_MSC_CHART__MACCESS:
+				setM_access(MACCESS_EDEFAULT);
+				return;
+			case UMLRpyPackage.CGI_MSC_CHART__MMODIFIED:
+				setM_modified(MMODIFIED_EDEFAULT);
+				return;
+			case UMLRpyPackage.CGI_MSC_CHART__MFILE_VERSION:
+				setM_fileVersion(MFILE_VERSION_EDEFAULT);
+				return;
+			case UMLRpyPackage.CGI_MSC_CHART__MNMODIFY_DATE:
+				setM_nModifyDate(MNMODIFY_DATE_EDEFAULT);
+				return;
+			case UMLRpyPackage.CGI_MSC_CHART__MNCREATE_DATE:
+				setM_nCreateDate(MNCREATE_DATE_EDEFAULT);
+				return;
+			case UMLRpyPackage.CGI_MSC_CHART__MCREATOR:
+				setM_creator(MCREATOR_EDEFAULT);
+				return;
+			case UMLRpyPackage.CGI_MSC_CHART__MBSCALE_WITH_ZOOM:
+				setM_bScaleWithZoom(MBSCALE_WITH_ZOOM_EDEFAULT);
+				return;
+			case UMLRpyPackage.CGI_MSC_CHART__MARROW_STYLE:
+				setM_arrowStyle(MARROW_STYLE_EDEFAULT);
+				return;
+			case UMLRpyPackage.CGI_MSC_CHART__MPROOT:
+				setM_pRoot((CGIBox)null);
+				return;
+			case UMLRpyPackage.CGI_MSC_CHART__MCURRENT_LEFT_TOP:
+				getM_currentLeftTop().clear();
+				return;
+			case UMLRpyPackage.CGI_MSC_CHART__MCURRENT_RIGHT_BOTTOM:
+				getM_currentRightBottom().clear();
+				return;
+		}
+		super.eUnset(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public boolean eIsSet(int featureID) {
+		switch (featureID) {
+			case UMLRpyPackage.CGI_MSC_CHART__VLADDER_MARGIN:
+				return VLADDER_MARGIN_EDEFAULT == null ? vLadderMargin != null : !VLADDER_MARGIN_EDEFAULT.equals(vLadderMargin);
+			case UMLRpyPackage.CGI_MSC_CHART__MUSING_ACTIVATION_BAR:
+				return MUSING_ACTIVATION_BAR_EDEFAULT == null ? m_usingActivationBar != null : !MUSING_ACTIVATION_BAR_EDEFAULT.equals(m_usingActivationBar);
+			case UMLRpyPackage.CGI_MSC_CHART__ID:
+				return ID_EDEFAULT == null ? id != null : !ID_EDEFAULT.equals(id);
+			case UMLRpyPackage.CGI_MSC_CHART__MTYPE:
+				return MTYPE_EDEFAULT == null ? m_type != null : !MTYPE_EDEFAULT.equals(m_type);
+			case UMLRpyPackage.CGI_MSC_CHART__MPMODEL_OBJECT:
+				return m_pModelObject != null;
+			case UMLRpyPackage.CGI_MSC_CHART__MPPARENT:
+				return MPPARENT_EDEFAULT == null ? m_pParent != null : !MPPARENT_EDEFAULT.equals(m_pParent);
+			case UMLRpyPackage.CGI_MSC_CHART__MNAME:
+				return m_name != null;
+			case UMLRpyPackage.CGI_MSC_CHART__MDRAW_BEHAVIOR:
+				return MDRAW_BEHAVIOR_EDEFAULT == null ? m_drawBehavior != null : !MDRAW_BEHAVIOR_EDEFAULT.equals(m_drawBehavior);
+			case UMLRpyPackage.CGI_MSC_CHART__MBIS_PREFERENCES_INITIALIZED:
+				return MBIS_PREFERENCES_INITIALIZED_EDEFAULT == null ? m_bIsPreferencesInitialized != null : !MBIS_PREFERENCES_INITIALIZED_EDEFAULT.equals(m_bIsPreferencesInitialized);
+			case UMLRpyPackage.CGI_MSC_CHART__ELEMENT_LIST:
+				return ELEMENT_LIST_EDEFAULT == null ? elementList != null : !ELEMENT_LIST_EDEFAULT.equals(elementList);
+			case UMLRpyPackage.CGI_MSC_CHART__GRAPH_ELEMENTS:
+				return graphElements != null && !graphElements.isEmpty();
+			case UMLRpyPackage.CGI_MSC_CHART__MACCESS:
+				return MACCESS_EDEFAULT == null ? m_access != null : !MACCESS_EDEFAULT.equals(m_access);
+			case UMLRpyPackage.CGI_MSC_CHART__MMODIFIED:
+				return MMODIFIED_EDEFAULT == null ? m_modified != null : !MMODIFIED_EDEFAULT.equals(m_modified);
+			case UMLRpyPackage.CGI_MSC_CHART__MFILE_VERSION:
+				return MFILE_VERSION_EDEFAULT == null ? m_fileVersion != null : !MFILE_VERSION_EDEFAULT.equals(m_fileVersion);
+			case UMLRpyPackage.CGI_MSC_CHART__MNMODIFY_DATE:
+				return MNMODIFY_DATE_EDEFAULT == null ? m_nModifyDate != null : !MNMODIFY_DATE_EDEFAULT.equals(m_nModifyDate);
+			case UMLRpyPackage.CGI_MSC_CHART__MNCREATE_DATE:
+				return MNCREATE_DATE_EDEFAULT == null ? m_nCreateDate != null : !MNCREATE_DATE_EDEFAULT.equals(m_nCreateDate);
+			case UMLRpyPackage.CGI_MSC_CHART__MCREATOR:
+				return MCREATOR_EDEFAULT == null ? m_creator != null : !MCREATOR_EDEFAULT.equals(m_creator);
+			case UMLRpyPackage.CGI_MSC_CHART__MBSCALE_WITH_ZOOM:
+				return MBSCALE_WITH_ZOOM_EDEFAULT == null ? m_bScaleWithZoom != null : !MBSCALE_WITH_ZOOM_EDEFAULT.equals(m_bScaleWithZoom);
+			case UMLRpyPackage.CGI_MSC_CHART__MARROW_STYLE:
+				return MARROW_STYLE_EDEFAULT == null ? m_arrowStyle != null : !MARROW_STYLE_EDEFAULT.equals(m_arrowStyle);
+			case UMLRpyPackage.CGI_MSC_CHART__MPROOT:
+				return m_pRoot != null;
+			case UMLRpyPackage.CGI_MSC_CHART__MCURRENT_LEFT_TOP:
+				return m_currentLeftTop != null && !m_currentLeftTop.isEmpty();
+			case UMLRpyPackage.CGI_MSC_CHART__MCURRENT_RIGHT_BOTTOM:
+				return m_currentRightBottom != null && !m_currentRightBottom.isEmpty();
+		}
+		return super.eIsSet(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String toString() {
+		if (eIsProxy()) return super.toString();
+
+		StringBuffer result = new StringBuffer(super.toString());
+		result.append(" (vLadderMargin: "); //$NON-NLS-1$
+		result.append(vLadderMargin);
+		result.append(", m_usingActivationBar: "); //$NON-NLS-1$
+		result.append(m_usingActivationBar);
+		result.append(", id: "); //$NON-NLS-1$
+		result.append(id);
+		result.append(", m_type: "); //$NON-NLS-1$
+		result.append(m_type);
+		result.append(", m_pParent: "); //$NON-NLS-1$
+		result.append(m_pParent);
+		result.append(", m_drawBehavior: "); //$NON-NLS-1$
+		result.append(m_drawBehavior);
+		result.append(", m_bIsPreferencesInitialized: "); //$NON-NLS-1$
+		result.append(m_bIsPreferencesInitialized);
+		result.append(", elementList: "); //$NON-NLS-1$
+		result.append(elementList);
+		result.append(", m_access: "); //$NON-NLS-1$
+		result.append(m_access);
+		result.append(", m_modified: "); //$NON-NLS-1$
+		result.append(m_modified);
+		result.append(", m_fileVersion: "); //$NON-NLS-1$
+		result.append(m_fileVersion);
+		result.append(", m_nModifyDate: "); //$NON-NLS-1$
+		result.append(m_nModifyDate);
+		result.append(", m_nCreateDate: "); //$NON-NLS-1$
+		result.append(m_nCreateDate);
+		result.append(", m_creator: "); //$NON-NLS-1$
+		result.append(m_creator);
+		result.append(", m_bScaleWithZoom: "); //$NON-NLS-1$
+		result.append(m_bScaleWithZoom);
+		result.append(", m_arrowStyle: "); //$NON-NLS-1$
+		result.append(m_arrowStyle);
+		result.append(", m_currentLeftTop: "); //$NON-NLS-1$
+		result.append(m_currentLeftTop);
+		result.append(", m_currentRightBottom: "); //$NON-NLS-1$
+		result.append(m_currentRightBottom);
+		result.append(')');
+		return result.toString();
+	}
+
+} //CGIMscChartImpl
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/CGIMscColumnCRImpl.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/CGIMscColumnCRImpl.java
new file mode 100755
index 0000000..7579bf9
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/CGIMscColumnCRImpl.java
@@ -0,0 +1,659 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl;
+
+import java.util.Collection;
+
+import org.eclipse.emf.common.notify.Notification;
+import org.eclipse.emf.common.notify.NotificationChain;
+
+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.EDataTypeEList;
+import org.eclipse.emf.ecore.util.EObjectResolvingEList;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIBox;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscColumnCR;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIText;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IModelElement;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IPropertyContainer;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UnknownType;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>CGI Msc Column CR</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * </p>
+ * <ul>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIMscColumnCRImpl#getM_pModelObject <em>MpModel Object</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIMscColumnCRImpl#getM_pParent <em>MpParent</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIMscColumnCRImpl#getM_transform <em>Mtransform</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIMscColumnCRImpl#getM_AdditionalLabel <em>MAdditional Label</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIMscColumnCRImpl#getM_position <em>Mposition</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIMscColumnCRImpl#getM_pInheritsFrom <em>MpInherits From</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIMscColumnCRImpl#getM_nInheritanceMask <em>MnInheritance Mask</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIMscColumnCRImpl#getM_SubType <em>MSub Type</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIMscColumnCRImpl#getProperties <em>Properties</em>}</li>
+ * </ul>
+ *
+ * @generated
+ */
+public class CGIMscColumnCRImpl extends GraphElementsTypeImpl implements CGIMscColumnCR {
+	/**
+	 * The cached value of the '{@link #getM_pModelObject() <em>MpModel Object</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_pModelObject()
+	 * @generated
+	 * @ordered
+	 */
+	protected IModelElement m_pModelObject;
+
+	/**
+	 * The cached value of the '{@link #getM_pParent() <em>MpParent</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_pParent()
+	 * @generated
+	 * @ordered
+	 */
+	protected CGIBox m_pParent;
+
+	/**
+	 * The cached value of the '{@link #getM_transform() <em>Mtransform</em>}' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_transform()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<String> m_transform;
+
+	/**
+	 * The cached value of the '{@link #getM_AdditionalLabel() <em>MAdditional Label</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_AdditionalLabel()
+	 * @generated
+	 * @ordered
+	 */
+	protected CGIText m_AdditionalLabel;
+
+	/**
+	 * The cached value of the '{@link #getM_position() <em>Mposition</em>}' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_position()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<String> m_position;
+
+	/**
+	 * The cached value of the '{@link #getM_pInheritsFrom() <em>MpInherits From</em>}' reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_pInheritsFrom()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<UnknownType> m_pInheritsFrom;
+
+	/**
+	 * The default value of the '{@link #getM_nInheritanceMask() <em>MnInheritance Mask</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_nInheritanceMask()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String MNINHERITANCE_MASK_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getM_nInheritanceMask() <em>MnInheritance Mask</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_nInheritanceMask()
+	 * @generated
+	 * @ordered
+	 */
+	protected String m_nInheritanceMask = MNINHERITANCE_MASK_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getM_SubType() <em>MSub Type</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_SubType()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String MSUB_TYPE_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getM_SubType() <em>MSub Type</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_SubType()
+	 * @generated
+	 * @ordered
+	 */
+	protected String m_SubType = MSUB_TYPE_EDEFAULT;
+
+	/**
+	 * The cached value of the '{@link #getProperties() <em>Properties</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getProperties()
+	 * @generated
+	 * @ordered
+	 */
+	protected IPropertyContainer properties;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected CGIMscColumnCRImpl() {
+		super();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EClass eStaticClass() {
+		return UMLRpyPackage.eINSTANCE.getCGIMscColumnCR();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IModelElement getM_pModelObject() {
+		if (m_pModelObject != null && m_pModelObject.eIsProxy()) {
+			InternalEObject oldM_pModelObject = (InternalEObject)m_pModelObject;
+			m_pModelObject = (IModelElement)eResolveProxy(oldM_pModelObject);
+			if (m_pModelObject != oldM_pModelObject) {
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.CGI_MSC_COLUMN_CR__MPMODEL_OBJECT, oldM_pModelObject, m_pModelObject));
+			}
+		}
+		return m_pModelObject;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IModelElement basicGetM_pModelObject() {
+		return m_pModelObject;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_pModelObject(IModelElement newM_pModelObject) {
+		IModelElement oldM_pModelObject = m_pModelObject;
+		m_pModelObject = newM_pModelObject;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_MSC_COLUMN_CR__MPMODEL_OBJECT, oldM_pModelObject, m_pModelObject));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public CGIBox getM_pParent() {
+		if (m_pParent != null && m_pParent.eIsProxy()) {
+			InternalEObject oldM_pParent = (InternalEObject)m_pParent;
+			m_pParent = (CGIBox)eResolveProxy(oldM_pParent);
+			if (m_pParent != oldM_pParent) {
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.CGI_MSC_COLUMN_CR__MPPARENT, oldM_pParent, m_pParent));
+			}
+		}
+		return m_pParent;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public CGIBox basicGetM_pParent() {
+		return m_pParent;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_pParent(CGIBox newM_pParent) {
+		CGIBox oldM_pParent = m_pParent;
+		m_pParent = newM_pParent;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_MSC_COLUMN_CR__MPPARENT, oldM_pParent, m_pParent));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<String> getM_transform() {
+		if (m_transform == null) {
+			m_transform = new EDataTypeEList<String>(String.class, this, UMLRpyPackage.CGI_MSC_COLUMN_CR__MTRANSFORM);
+		}
+		return m_transform;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public CGIText getM_AdditionalLabel() {
+		if (m_AdditionalLabel != null && m_AdditionalLabel.eIsProxy()) {
+			InternalEObject oldM_AdditionalLabel = (InternalEObject)m_AdditionalLabel;
+			m_AdditionalLabel = (CGIText)eResolveProxy(oldM_AdditionalLabel);
+			if (m_AdditionalLabel != oldM_AdditionalLabel) {
+				InternalEObject newM_AdditionalLabel = (InternalEObject)m_AdditionalLabel;
+				NotificationChain msgs = oldM_AdditionalLabel.eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.CGI_MSC_COLUMN_CR__MADDITIONAL_LABEL, null, null);
+				if (newM_AdditionalLabel.eInternalContainer() == null) {
+					msgs = newM_AdditionalLabel.eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.CGI_MSC_COLUMN_CR__MADDITIONAL_LABEL, null, msgs);
+				}
+				if (msgs != null) msgs.dispatch();
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.CGI_MSC_COLUMN_CR__MADDITIONAL_LABEL, oldM_AdditionalLabel, m_AdditionalLabel));
+			}
+		}
+		return m_AdditionalLabel;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public CGIText basicGetM_AdditionalLabel() {
+		return m_AdditionalLabel;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public NotificationChain basicSetM_AdditionalLabel(CGIText newM_AdditionalLabel, NotificationChain msgs) {
+		CGIText oldM_AdditionalLabel = m_AdditionalLabel;
+		m_AdditionalLabel = newM_AdditionalLabel;
+		if (eNotificationRequired()) {
+			ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_MSC_COLUMN_CR__MADDITIONAL_LABEL, oldM_AdditionalLabel, newM_AdditionalLabel);
+			if (msgs == null) msgs = notification; else msgs.add(notification);
+		}
+		return msgs;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_AdditionalLabel(CGIText newM_AdditionalLabel) {
+		if (newM_AdditionalLabel != m_AdditionalLabel) {
+			NotificationChain msgs = null;
+			if (m_AdditionalLabel != null)
+				msgs = ((InternalEObject)m_AdditionalLabel).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.CGI_MSC_COLUMN_CR__MADDITIONAL_LABEL, null, msgs);
+			if (newM_AdditionalLabel != null)
+				msgs = ((InternalEObject)newM_AdditionalLabel).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.CGI_MSC_COLUMN_CR__MADDITIONAL_LABEL, null, msgs);
+			msgs = basicSetM_AdditionalLabel(newM_AdditionalLabel, msgs);
+			if (msgs != null) msgs.dispatch();
+		}
+		else if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_MSC_COLUMN_CR__MADDITIONAL_LABEL, newM_AdditionalLabel, newM_AdditionalLabel));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<String> getM_position() {
+		if (m_position == null) {
+			m_position = new EDataTypeEList<String>(String.class, this, UMLRpyPackage.CGI_MSC_COLUMN_CR__MPOSITION);
+		}
+		return m_position;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<UnknownType> getM_pInheritsFrom() {
+		if (m_pInheritsFrom == null) {
+			m_pInheritsFrom = new EObjectResolvingEList<UnknownType>(UnknownType.class, this, UMLRpyPackage.CGI_MSC_COLUMN_CR__MPINHERITS_FROM);
+		}
+		return m_pInheritsFrom;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getM_nInheritanceMask() {
+		return m_nInheritanceMask;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_nInheritanceMask(String newM_nInheritanceMask) {
+		String oldM_nInheritanceMask = m_nInheritanceMask;
+		m_nInheritanceMask = newM_nInheritanceMask;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_MSC_COLUMN_CR__MNINHERITANCE_MASK, oldM_nInheritanceMask, m_nInheritanceMask));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getM_SubType() {
+		return m_SubType;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_SubType(String newM_SubType) {
+		String oldM_SubType = m_SubType;
+		m_SubType = newM_SubType;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_MSC_COLUMN_CR__MSUB_TYPE, oldM_SubType, m_SubType));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IPropertyContainer getProperties() {
+		if (properties != null && properties.eIsProxy()) {
+			InternalEObject oldProperties = (InternalEObject)properties;
+			properties = (IPropertyContainer)eResolveProxy(oldProperties);
+			if (properties != oldProperties) {
+				InternalEObject newProperties = (InternalEObject)properties;
+				NotificationChain msgs = oldProperties.eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.CGI_MSC_COLUMN_CR__PROPERTIES, null, null);
+				if (newProperties.eInternalContainer() == null) {
+					msgs = newProperties.eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.CGI_MSC_COLUMN_CR__PROPERTIES, null, msgs);
+				}
+				if (msgs != null) msgs.dispatch();
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.CGI_MSC_COLUMN_CR__PROPERTIES, oldProperties, properties));
+			}
+		}
+		return properties;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IPropertyContainer basicGetProperties() {
+		return properties;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public NotificationChain basicSetProperties(IPropertyContainer newProperties, NotificationChain msgs) {
+		IPropertyContainer oldProperties = properties;
+		properties = newProperties;
+		if (eNotificationRequired()) {
+			ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_MSC_COLUMN_CR__PROPERTIES, oldProperties, newProperties);
+			if (msgs == null) msgs = notification; else msgs.add(notification);
+		}
+		return msgs;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setProperties(IPropertyContainer newProperties) {
+		if (newProperties != properties) {
+			NotificationChain msgs = null;
+			if (properties != null)
+				msgs = ((InternalEObject)properties).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.CGI_MSC_COLUMN_CR__PROPERTIES, null, msgs);
+			if (newProperties != null)
+				msgs = ((InternalEObject)newProperties).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.CGI_MSC_COLUMN_CR__PROPERTIES, null, msgs);
+			msgs = basicSetProperties(newProperties, msgs);
+			if (msgs != null) msgs.dispatch();
+		}
+		else if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_MSC_COLUMN_CR__PROPERTIES, newProperties, newProperties));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
+		switch (featureID) {
+			case UMLRpyPackage.CGI_MSC_COLUMN_CR__MADDITIONAL_LABEL:
+				return basicSetM_AdditionalLabel(null, msgs);
+			case UMLRpyPackage.CGI_MSC_COLUMN_CR__PROPERTIES:
+				return basicSetProperties(null, msgs);
+		}
+		return super.eInverseRemove(otherEnd, featureID, msgs);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object eGet(int featureID, boolean resolve, boolean coreType) {
+		switch (featureID) {
+			case UMLRpyPackage.CGI_MSC_COLUMN_CR__MPMODEL_OBJECT:
+				if (resolve) return getM_pModelObject();
+				return basicGetM_pModelObject();
+			case UMLRpyPackage.CGI_MSC_COLUMN_CR__MPPARENT:
+				if (resolve) return getM_pParent();
+				return basicGetM_pParent();
+			case UMLRpyPackage.CGI_MSC_COLUMN_CR__MTRANSFORM:
+				return getM_transform();
+			case UMLRpyPackage.CGI_MSC_COLUMN_CR__MADDITIONAL_LABEL:
+				if (resolve) return getM_AdditionalLabel();
+				return basicGetM_AdditionalLabel();
+			case UMLRpyPackage.CGI_MSC_COLUMN_CR__MPOSITION:
+				return getM_position();
+			case UMLRpyPackage.CGI_MSC_COLUMN_CR__MPINHERITS_FROM:
+				return getM_pInheritsFrom();
+			case UMLRpyPackage.CGI_MSC_COLUMN_CR__MNINHERITANCE_MASK:
+				return getM_nInheritanceMask();
+			case UMLRpyPackage.CGI_MSC_COLUMN_CR__MSUB_TYPE:
+				return getM_SubType();
+			case UMLRpyPackage.CGI_MSC_COLUMN_CR__PROPERTIES:
+				if (resolve) return getProperties();
+				return basicGetProperties();
+		}
+		return super.eGet(featureID, resolve, coreType);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@SuppressWarnings("unchecked")
+	@Override
+	public void eSet(int featureID, Object newValue) {
+		switch (featureID) {
+			case UMLRpyPackage.CGI_MSC_COLUMN_CR__MPMODEL_OBJECT:
+				setM_pModelObject((IModelElement)newValue);
+				return;
+			case UMLRpyPackage.CGI_MSC_COLUMN_CR__MPPARENT:
+				setM_pParent((CGIBox)newValue);
+				return;
+			case UMLRpyPackage.CGI_MSC_COLUMN_CR__MTRANSFORM:
+				getM_transform().clear();
+				getM_transform().addAll((Collection<? extends String>)newValue);
+				return;
+			case UMLRpyPackage.CGI_MSC_COLUMN_CR__MADDITIONAL_LABEL:
+				setM_AdditionalLabel((CGIText)newValue);
+				return;
+			case UMLRpyPackage.CGI_MSC_COLUMN_CR__MPOSITION:
+				getM_position().clear();
+				getM_position().addAll((Collection<? extends String>)newValue);
+				return;
+			case UMLRpyPackage.CGI_MSC_COLUMN_CR__MPINHERITS_FROM:
+				getM_pInheritsFrom().clear();
+				getM_pInheritsFrom().addAll((Collection<? extends UnknownType>)newValue);
+				return;
+			case UMLRpyPackage.CGI_MSC_COLUMN_CR__MNINHERITANCE_MASK:
+				setM_nInheritanceMask((String)newValue);
+				return;
+			case UMLRpyPackage.CGI_MSC_COLUMN_CR__MSUB_TYPE:
+				setM_SubType((String)newValue);
+				return;
+			case UMLRpyPackage.CGI_MSC_COLUMN_CR__PROPERTIES:
+				setProperties((IPropertyContainer)newValue);
+				return;
+		}
+		super.eSet(featureID, newValue);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void eUnset(int featureID) {
+		switch (featureID) {
+			case UMLRpyPackage.CGI_MSC_COLUMN_CR__MPMODEL_OBJECT:
+				setM_pModelObject((IModelElement)null);
+				return;
+			case UMLRpyPackage.CGI_MSC_COLUMN_CR__MPPARENT:
+				setM_pParent((CGIBox)null);
+				return;
+			case UMLRpyPackage.CGI_MSC_COLUMN_CR__MTRANSFORM:
+				getM_transform().clear();
+				return;
+			case UMLRpyPackage.CGI_MSC_COLUMN_CR__MADDITIONAL_LABEL:
+				setM_AdditionalLabel((CGIText)null);
+				return;
+			case UMLRpyPackage.CGI_MSC_COLUMN_CR__MPOSITION:
+				getM_position().clear();
+				return;
+			case UMLRpyPackage.CGI_MSC_COLUMN_CR__MPINHERITS_FROM:
+				getM_pInheritsFrom().clear();
+				return;
+			case UMLRpyPackage.CGI_MSC_COLUMN_CR__MNINHERITANCE_MASK:
+				setM_nInheritanceMask(MNINHERITANCE_MASK_EDEFAULT);
+				return;
+			case UMLRpyPackage.CGI_MSC_COLUMN_CR__MSUB_TYPE:
+				setM_SubType(MSUB_TYPE_EDEFAULT);
+				return;
+			case UMLRpyPackage.CGI_MSC_COLUMN_CR__PROPERTIES:
+				setProperties((IPropertyContainer)null);
+				return;
+		}
+		super.eUnset(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public boolean eIsSet(int featureID) {
+		switch (featureID) {
+			case UMLRpyPackage.CGI_MSC_COLUMN_CR__MPMODEL_OBJECT:
+				return m_pModelObject != null;
+			case UMLRpyPackage.CGI_MSC_COLUMN_CR__MPPARENT:
+				return m_pParent != null;
+			case UMLRpyPackage.CGI_MSC_COLUMN_CR__MTRANSFORM:
+				return m_transform != null && !m_transform.isEmpty();
+			case UMLRpyPackage.CGI_MSC_COLUMN_CR__MADDITIONAL_LABEL:
+				return m_AdditionalLabel != null;
+			case UMLRpyPackage.CGI_MSC_COLUMN_CR__MPOSITION:
+				return m_position != null && !m_position.isEmpty();
+			case UMLRpyPackage.CGI_MSC_COLUMN_CR__MPINHERITS_FROM:
+				return m_pInheritsFrom != null && !m_pInheritsFrom.isEmpty();
+			case UMLRpyPackage.CGI_MSC_COLUMN_CR__MNINHERITANCE_MASK:
+				return MNINHERITANCE_MASK_EDEFAULT == null ? m_nInheritanceMask != null : !MNINHERITANCE_MASK_EDEFAULT.equals(m_nInheritanceMask);
+			case UMLRpyPackage.CGI_MSC_COLUMN_CR__MSUB_TYPE:
+				return MSUB_TYPE_EDEFAULT == null ? m_SubType != null : !MSUB_TYPE_EDEFAULT.equals(m_SubType);
+			case UMLRpyPackage.CGI_MSC_COLUMN_CR__PROPERTIES:
+				return properties != null;
+		}
+		return super.eIsSet(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String toString() {
+		if (eIsProxy()) return super.toString();
+
+		StringBuffer result = new StringBuffer(super.toString());
+		result.append(" (m_transform: "); //$NON-NLS-1$
+		result.append(m_transform);
+		result.append(", m_position: "); //$NON-NLS-1$
+		result.append(m_position);
+		result.append(", m_nInheritanceMask: "); //$NON-NLS-1$
+		result.append(m_nInheritanceMask);
+		result.append(", m_SubType: "); //$NON-NLS-1$
+		result.append(m_SubType);
+		result.append(')');
+		return result.toString();
+	}
+
+} //CGIMscColumnCRImpl
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/CGIMscConditionMarkImpl.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/CGIMscConditionMarkImpl.java
new file mode 100755
index 0000000..59a0c9a
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/CGIMscConditionMarkImpl.java
@@ -0,0 +1,568 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl;
+
+import java.util.Collection;
+
+import org.eclipse.emf.common.notify.Notification;
+import org.eclipse.emf.common.notify.NotificationChain;
+
+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.EDataTypeEList;
+import org.eclipse.emf.ecore.util.EObjectResolvingEList;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscColumnCR;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscConditionMark;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMessage;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IPropertyContainer;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UnknownType;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>CGI Msc Condition Mark</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * </p>
+ * <ul>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIMscConditionMarkImpl#getProperties <em>Properties</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIMscConditionMarkImpl#getM_pModelObject <em>MpModel Object</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIMscConditionMarkImpl#getM_pParent <em>MpParent</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIMscConditionMarkImpl#getM_transform <em>Mtransform</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIMscConditionMarkImpl#getM_polygon <em>Mpolygon</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIMscConditionMarkImpl#getM_nNameFormat <em>MnName Format</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIMscConditionMarkImpl#getM_nIsNameFormat <em>MnIs Name Format</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIMscConditionMarkImpl#getCompartments <em>Compartments</em>}</li>
+ * </ul>
+ *
+ * @generated
+ */
+public class CGIMscConditionMarkImpl extends GraphElementsTypeImpl implements CGIMscConditionMark {
+	/**
+	 * The cached value of the '{@link #getProperties() <em>Properties</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getProperties()
+	 * @generated
+	 * @ordered
+	 */
+	protected IPropertyContainer properties;
+
+	/**
+	 * The cached value of the '{@link #getM_pModelObject() <em>MpModel Object</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_pModelObject()
+	 * @generated
+	 * @ordered
+	 */
+	protected IMessage m_pModelObject;
+
+	/**
+	 * The cached value of the '{@link #getM_pParent() <em>MpParent</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_pParent()
+	 * @generated
+	 * @ordered
+	 */
+	protected CGIMscColumnCR m_pParent;
+
+	/**
+	 * The cached value of the '{@link #getM_transform() <em>Mtransform</em>}' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_transform()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<String> m_transform;
+
+	/**
+	 * The cached value of the '{@link #getM_polygon() <em>Mpolygon</em>}' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_polygon()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<String> m_polygon;
+
+	/**
+	 * The default value of the '{@link #getM_nNameFormat() <em>MnName Format</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_nNameFormat()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String MNNAME_FORMAT_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getM_nNameFormat() <em>MnName Format</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_nNameFormat()
+	 * @generated
+	 * @ordered
+	 */
+	protected String m_nNameFormat = MNNAME_FORMAT_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getM_nIsNameFormat() <em>MnIs Name Format</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_nIsNameFormat()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String MNIS_NAME_FORMAT_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getM_nIsNameFormat() <em>MnIs Name Format</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_nIsNameFormat()
+	 * @generated
+	 * @ordered
+	 */
+	protected String m_nIsNameFormat = MNIS_NAME_FORMAT_EDEFAULT;
+
+	/**
+	 * The cached value of the '{@link #getCompartments() <em>Compartments</em>}' reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getCompartments()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<UnknownType> compartments;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected CGIMscConditionMarkImpl() {
+		super();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EClass eStaticClass() {
+		return UMLRpyPackage.eINSTANCE.getCGIMscConditionMark();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IPropertyContainer getProperties() {
+		if (properties != null && properties.eIsProxy()) {
+			InternalEObject oldProperties = (InternalEObject)properties;
+			properties = (IPropertyContainer)eResolveProxy(oldProperties);
+			if (properties != oldProperties) {
+				InternalEObject newProperties = (InternalEObject)properties;
+				NotificationChain msgs = oldProperties.eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.CGI_MSC_CONDITION_MARK__PROPERTIES, null, null);
+				if (newProperties.eInternalContainer() == null) {
+					msgs = newProperties.eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.CGI_MSC_CONDITION_MARK__PROPERTIES, null, msgs);
+				}
+				if (msgs != null) msgs.dispatch();
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.CGI_MSC_CONDITION_MARK__PROPERTIES, oldProperties, properties));
+			}
+		}
+		return properties;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IPropertyContainer basicGetProperties() {
+		return properties;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public NotificationChain basicSetProperties(IPropertyContainer newProperties, NotificationChain msgs) {
+		IPropertyContainer oldProperties = properties;
+		properties = newProperties;
+		if (eNotificationRequired()) {
+			ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_MSC_CONDITION_MARK__PROPERTIES, oldProperties, newProperties);
+			if (msgs == null) msgs = notification; else msgs.add(notification);
+		}
+		return msgs;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setProperties(IPropertyContainer newProperties) {
+		if (newProperties != properties) {
+			NotificationChain msgs = null;
+			if (properties != null)
+				msgs = ((InternalEObject)properties).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.CGI_MSC_CONDITION_MARK__PROPERTIES, null, msgs);
+			if (newProperties != null)
+				msgs = ((InternalEObject)newProperties).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.CGI_MSC_CONDITION_MARK__PROPERTIES, null, msgs);
+			msgs = basicSetProperties(newProperties, msgs);
+			if (msgs != null) msgs.dispatch();
+		}
+		else if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_MSC_CONDITION_MARK__PROPERTIES, newProperties, newProperties));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IMessage getM_pModelObject() {
+		if (m_pModelObject != null && m_pModelObject.eIsProxy()) {
+			InternalEObject oldM_pModelObject = (InternalEObject)m_pModelObject;
+			m_pModelObject = (IMessage)eResolveProxy(oldM_pModelObject);
+			if (m_pModelObject != oldM_pModelObject) {
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.CGI_MSC_CONDITION_MARK__MPMODEL_OBJECT, oldM_pModelObject, m_pModelObject));
+			}
+		}
+		return m_pModelObject;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IMessage basicGetM_pModelObject() {
+		return m_pModelObject;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_pModelObject(IMessage newM_pModelObject) {
+		IMessage oldM_pModelObject = m_pModelObject;
+		m_pModelObject = newM_pModelObject;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_MSC_CONDITION_MARK__MPMODEL_OBJECT, oldM_pModelObject, m_pModelObject));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public CGIMscColumnCR getM_pParent() {
+		if (m_pParent != null && m_pParent.eIsProxy()) {
+			InternalEObject oldM_pParent = (InternalEObject)m_pParent;
+			m_pParent = (CGIMscColumnCR)eResolveProxy(oldM_pParent);
+			if (m_pParent != oldM_pParent) {
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.CGI_MSC_CONDITION_MARK__MPPARENT, oldM_pParent, m_pParent));
+			}
+		}
+		return m_pParent;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public CGIMscColumnCR basicGetM_pParent() {
+		return m_pParent;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_pParent(CGIMscColumnCR newM_pParent) {
+		CGIMscColumnCR oldM_pParent = m_pParent;
+		m_pParent = newM_pParent;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_MSC_CONDITION_MARK__MPPARENT, oldM_pParent, m_pParent));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<String> getM_transform() {
+		if (m_transform == null) {
+			m_transform = new EDataTypeEList<String>(String.class, this, UMLRpyPackage.CGI_MSC_CONDITION_MARK__MTRANSFORM);
+		}
+		return m_transform;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<String> getM_polygon() {
+		if (m_polygon == null) {
+			m_polygon = new EDataTypeEList<String>(String.class, this, UMLRpyPackage.CGI_MSC_CONDITION_MARK__MPOLYGON);
+		}
+		return m_polygon;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getM_nNameFormat() {
+		return m_nNameFormat;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_nNameFormat(String newM_nNameFormat) {
+		String oldM_nNameFormat = m_nNameFormat;
+		m_nNameFormat = newM_nNameFormat;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_MSC_CONDITION_MARK__MNNAME_FORMAT, oldM_nNameFormat, m_nNameFormat));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getM_nIsNameFormat() {
+		return m_nIsNameFormat;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_nIsNameFormat(String newM_nIsNameFormat) {
+		String oldM_nIsNameFormat = m_nIsNameFormat;
+		m_nIsNameFormat = newM_nIsNameFormat;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_MSC_CONDITION_MARK__MNIS_NAME_FORMAT, oldM_nIsNameFormat, m_nIsNameFormat));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<UnknownType> getCompartments() {
+		if (compartments == null) {
+			compartments = new EObjectResolvingEList<UnknownType>(UnknownType.class, this, UMLRpyPackage.CGI_MSC_CONDITION_MARK__COMPARTMENTS);
+		}
+		return compartments;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
+		switch (featureID) {
+			case UMLRpyPackage.CGI_MSC_CONDITION_MARK__PROPERTIES:
+				return basicSetProperties(null, msgs);
+		}
+		return super.eInverseRemove(otherEnd, featureID, msgs);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object eGet(int featureID, boolean resolve, boolean coreType) {
+		switch (featureID) {
+			case UMLRpyPackage.CGI_MSC_CONDITION_MARK__PROPERTIES:
+				if (resolve) return getProperties();
+				return basicGetProperties();
+			case UMLRpyPackage.CGI_MSC_CONDITION_MARK__MPMODEL_OBJECT:
+				if (resolve) return getM_pModelObject();
+				return basicGetM_pModelObject();
+			case UMLRpyPackage.CGI_MSC_CONDITION_MARK__MPPARENT:
+				if (resolve) return getM_pParent();
+				return basicGetM_pParent();
+			case UMLRpyPackage.CGI_MSC_CONDITION_MARK__MTRANSFORM:
+				return getM_transform();
+			case UMLRpyPackage.CGI_MSC_CONDITION_MARK__MPOLYGON:
+				return getM_polygon();
+			case UMLRpyPackage.CGI_MSC_CONDITION_MARK__MNNAME_FORMAT:
+				return getM_nNameFormat();
+			case UMLRpyPackage.CGI_MSC_CONDITION_MARK__MNIS_NAME_FORMAT:
+				return getM_nIsNameFormat();
+			case UMLRpyPackage.CGI_MSC_CONDITION_MARK__COMPARTMENTS:
+				return getCompartments();
+		}
+		return super.eGet(featureID, resolve, coreType);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@SuppressWarnings("unchecked")
+	@Override
+	public void eSet(int featureID, Object newValue) {
+		switch (featureID) {
+			case UMLRpyPackage.CGI_MSC_CONDITION_MARK__PROPERTIES:
+				setProperties((IPropertyContainer)newValue);
+				return;
+			case UMLRpyPackage.CGI_MSC_CONDITION_MARK__MPMODEL_OBJECT:
+				setM_pModelObject((IMessage)newValue);
+				return;
+			case UMLRpyPackage.CGI_MSC_CONDITION_MARK__MPPARENT:
+				setM_pParent((CGIMscColumnCR)newValue);
+				return;
+			case UMLRpyPackage.CGI_MSC_CONDITION_MARK__MTRANSFORM:
+				getM_transform().clear();
+				getM_transform().addAll((Collection<? extends String>)newValue);
+				return;
+			case UMLRpyPackage.CGI_MSC_CONDITION_MARK__MPOLYGON:
+				getM_polygon().clear();
+				getM_polygon().addAll((Collection<? extends String>)newValue);
+				return;
+			case UMLRpyPackage.CGI_MSC_CONDITION_MARK__MNNAME_FORMAT:
+				setM_nNameFormat((String)newValue);
+				return;
+			case UMLRpyPackage.CGI_MSC_CONDITION_MARK__MNIS_NAME_FORMAT:
+				setM_nIsNameFormat((String)newValue);
+				return;
+			case UMLRpyPackage.CGI_MSC_CONDITION_MARK__COMPARTMENTS:
+				getCompartments().clear();
+				getCompartments().addAll((Collection<? extends UnknownType>)newValue);
+				return;
+		}
+		super.eSet(featureID, newValue);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void eUnset(int featureID) {
+		switch (featureID) {
+			case UMLRpyPackage.CGI_MSC_CONDITION_MARK__PROPERTIES:
+				setProperties((IPropertyContainer)null);
+				return;
+			case UMLRpyPackage.CGI_MSC_CONDITION_MARK__MPMODEL_OBJECT:
+				setM_pModelObject((IMessage)null);
+				return;
+			case UMLRpyPackage.CGI_MSC_CONDITION_MARK__MPPARENT:
+				setM_pParent((CGIMscColumnCR)null);
+				return;
+			case UMLRpyPackage.CGI_MSC_CONDITION_MARK__MTRANSFORM:
+				getM_transform().clear();
+				return;
+			case UMLRpyPackage.CGI_MSC_CONDITION_MARK__MPOLYGON:
+				getM_polygon().clear();
+				return;
+			case UMLRpyPackage.CGI_MSC_CONDITION_MARK__MNNAME_FORMAT:
+				setM_nNameFormat(MNNAME_FORMAT_EDEFAULT);
+				return;
+			case UMLRpyPackage.CGI_MSC_CONDITION_MARK__MNIS_NAME_FORMAT:
+				setM_nIsNameFormat(MNIS_NAME_FORMAT_EDEFAULT);
+				return;
+			case UMLRpyPackage.CGI_MSC_CONDITION_MARK__COMPARTMENTS:
+				getCompartments().clear();
+				return;
+		}
+		super.eUnset(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public boolean eIsSet(int featureID) {
+		switch (featureID) {
+			case UMLRpyPackage.CGI_MSC_CONDITION_MARK__PROPERTIES:
+				return properties != null;
+			case UMLRpyPackage.CGI_MSC_CONDITION_MARK__MPMODEL_OBJECT:
+				return m_pModelObject != null;
+			case UMLRpyPackage.CGI_MSC_CONDITION_MARK__MPPARENT:
+				return m_pParent != null;
+			case UMLRpyPackage.CGI_MSC_CONDITION_MARK__MTRANSFORM:
+				return m_transform != null && !m_transform.isEmpty();
+			case UMLRpyPackage.CGI_MSC_CONDITION_MARK__MPOLYGON:
+				return m_polygon != null && !m_polygon.isEmpty();
+			case UMLRpyPackage.CGI_MSC_CONDITION_MARK__MNNAME_FORMAT:
+				return MNNAME_FORMAT_EDEFAULT == null ? m_nNameFormat != null : !MNNAME_FORMAT_EDEFAULT.equals(m_nNameFormat);
+			case UMLRpyPackage.CGI_MSC_CONDITION_MARK__MNIS_NAME_FORMAT:
+				return MNIS_NAME_FORMAT_EDEFAULT == null ? m_nIsNameFormat != null : !MNIS_NAME_FORMAT_EDEFAULT.equals(m_nIsNameFormat);
+			case UMLRpyPackage.CGI_MSC_CONDITION_MARK__COMPARTMENTS:
+				return compartments != null && !compartments.isEmpty();
+		}
+		return super.eIsSet(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String toString() {
+		if (eIsProxy()) return super.toString();
+
+		StringBuffer result = new StringBuffer(super.toString());
+		result.append(" (m_transform: "); //$NON-NLS-1$
+		result.append(m_transform);
+		result.append(", m_polygon: "); //$NON-NLS-1$
+		result.append(m_polygon);
+		result.append(", m_nNameFormat: "); //$NON-NLS-1$
+		result.append(m_nNameFormat);
+		result.append(", m_nIsNameFormat: "); //$NON-NLS-1$
+		result.append(m_nIsNameFormat);
+		result.append(')');
+		return result.toString();
+	}
+
+} //CGIMscConditionMarkImpl
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/CGIMscExecutionOccurrenceImpl.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/CGIMscExecutionOccurrenceImpl.java
new file mode 100755
index 0000000..5c78671
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/CGIMscExecutionOccurrenceImpl.java
@@ -0,0 +1,525 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl;
+
+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.EDataTypeEList;
+import org.eclipse.emf.ecore.util.EObjectResolvingEList;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscColumnCR;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscExecutionOccurrence;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscMessage;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IExecutionOccurrence;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UnknownType;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>CGI Msc Execution Occurrence</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * </p>
+ * <ul>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIMscExecutionOccurrenceImpl#getM_pModelObject <em>MpModel Object</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIMscExecutionOccurrenceImpl#getM_pParent <em>MpParent</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIMscExecutionOccurrenceImpl#getM_transform <em>Mtransform</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIMscExecutionOccurrenceImpl#getM_position <em>Mposition</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIMscExecutionOccurrenceImpl#getM_pInheritsFrom <em>MpInherits From</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIMscExecutionOccurrenceImpl#getM_nInheritanceMask <em>MnInheritance Mask</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIMscExecutionOccurrenceImpl#getM_SubType <em>MSub Type</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIMscExecutionOccurrenceImpl#getM_pStartMessage <em>MpStart Message</em>}</li>
+ * </ul>
+ *
+ * @generated
+ */
+public class CGIMscExecutionOccurrenceImpl extends GraphElementsTypeImpl implements CGIMscExecutionOccurrence {
+	/**
+	 * The cached value of the '{@link #getM_pModelObject() <em>MpModel Object</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_pModelObject()
+	 * @generated
+	 * @ordered
+	 */
+	protected IExecutionOccurrence m_pModelObject;
+
+	/**
+	 * The cached value of the '{@link #getM_pParent() <em>MpParent</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_pParent()
+	 * @generated
+	 * @ordered
+	 */
+	protected CGIMscColumnCR m_pParent;
+
+	/**
+	 * The cached value of the '{@link #getM_transform() <em>Mtransform</em>}' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_transform()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<String> m_transform;
+
+	/**
+	 * The cached value of the '{@link #getM_position() <em>Mposition</em>}' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_position()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<String> m_position;
+
+	/**
+	 * The cached value of the '{@link #getM_pInheritsFrom() <em>MpInherits From</em>}' reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_pInheritsFrom()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<UnknownType> m_pInheritsFrom;
+
+	/**
+	 * The default value of the '{@link #getM_nInheritanceMask() <em>MnInheritance Mask</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_nInheritanceMask()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String MNINHERITANCE_MASK_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getM_nInheritanceMask() <em>MnInheritance Mask</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_nInheritanceMask()
+	 * @generated
+	 * @ordered
+	 */
+	protected String m_nInheritanceMask = MNINHERITANCE_MASK_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getM_SubType() <em>MSub Type</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_SubType()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String MSUB_TYPE_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getM_SubType() <em>MSub Type</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_SubType()
+	 * @generated
+	 * @ordered
+	 */
+	protected String m_SubType = MSUB_TYPE_EDEFAULT;
+
+	/**
+	 * The cached value of the '{@link #getM_pStartMessage() <em>MpStart Message</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_pStartMessage()
+	 * @generated
+	 * @ordered
+	 */
+	protected CGIMscMessage m_pStartMessage;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected CGIMscExecutionOccurrenceImpl() {
+		super();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EClass eStaticClass() {
+		return UMLRpyPackage.eINSTANCE.getCGIMscExecutionOccurrence();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IExecutionOccurrence getM_pModelObject() {
+		if (m_pModelObject != null && m_pModelObject.eIsProxy()) {
+			InternalEObject oldM_pModelObject = (InternalEObject)m_pModelObject;
+			m_pModelObject = (IExecutionOccurrence)eResolveProxy(oldM_pModelObject);
+			if (m_pModelObject != oldM_pModelObject) {
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.CGI_MSC_EXECUTION_OCCURRENCE__MPMODEL_OBJECT, oldM_pModelObject, m_pModelObject));
+			}
+		}
+		return m_pModelObject;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IExecutionOccurrence basicGetM_pModelObject() {
+		return m_pModelObject;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_pModelObject(IExecutionOccurrence newM_pModelObject) {
+		IExecutionOccurrence oldM_pModelObject = m_pModelObject;
+		m_pModelObject = newM_pModelObject;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_MSC_EXECUTION_OCCURRENCE__MPMODEL_OBJECT, oldM_pModelObject, m_pModelObject));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public CGIMscColumnCR getM_pParent() {
+		if (m_pParent != null && m_pParent.eIsProxy()) {
+			InternalEObject oldM_pParent = (InternalEObject)m_pParent;
+			m_pParent = (CGIMscColumnCR)eResolveProxy(oldM_pParent);
+			if (m_pParent != oldM_pParent) {
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.CGI_MSC_EXECUTION_OCCURRENCE__MPPARENT, oldM_pParent, m_pParent));
+			}
+		}
+		return m_pParent;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public CGIMscColumnCR basicGetM_pParent() {
+		return m_pParent;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_pParent(CGIMscColumnCR newM_pParent) {
+		CGIMscColumnCR oldM_pParent = m_pParent;
+		m_pParent = newM_pParent;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_MSC_EXECUTION_OCCURRENCE__MPPARENT, oldM_pParent, m_pParent));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<String> getM_transform() {
+		if (m_transform == null) {
+			m_transform = new EDataTypeEList<String>(String.class, this, UMLRpyPackage.CGI_MSC_EXECUTION_OCCURRENCE__MTRANSFORM);
+		}
+		return m_transform;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<String> getM_position() {
+		if (m_position == null) {
+			m_position = new EDataTypeEList<String>(String.class, this, UMLRpyPackage.CGI_MSC_EXECUTION_OCCURRENCE__MPOSITION);
+		}
+		return m_position;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<UnknownType> getM_pInheritsFrom() {
+		if (m_pInheritsFrom == null) {
+			m_pInheritsFrom = new EObjectResolvingEList<UnknownType>(UnknownType.class, this, UMLRpyPackage.CGI_MSC_EXECUTION_OCCURRENCE__MPINHERITS_FROM);
+		}
+		return m_pInheritsFrom;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getM_nInheritanceMask() {
+		return m_nInheritanceMask;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_nInheritanceMask(String newM_nInheritanceMask) {
+		String oldM_nInheritanceMask = m_nInheritanceMask;
+		m_nInheritanceMask = newM_nInheritanceMask;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_MSC_EXECUTION_OCCURRENCE__MNINHERITANCE_MASK, oldM_nInheritanceMask, m_nInheritanceMask));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getM_SubType() {
+		return m_SubType;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_SubType(String newM_SubType) {
+		String oldM_SubType = m_SubType;
+		m_SubType = newM_SubType;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_MSC_EXECUTION_OCCURRENCE__MSUB_TYPE, oldM_SubType, m_SubType));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public CGIMscMessage getM_pStartMessage() {
+		if (m_pStartMessage != null && m_pStartMessage.eIsProxy()) {
+			InternalEObject oldM_pStartMessage = (InternalEObject)m_pStartMessage;
+			m_pStartMessage = (CGIMscMessage)eResolveProxy(oldM_pStartMessage);
+			if (m_pStartMessage != oldM_pStartMessage) {
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.CGI_MSC_EXECUTION_OCCURRENCE__MPSTART_MESSAGE, oldM_pStartMessage, m_pStartMessage));
+			}
+		}
+		return m_pStartMessage;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public CGIMscMessage basicGetM_pStartMessage() {
+		return m_pStartMessage;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_pStartMessage(CGIMscMessage newM_pStartMessage) {
+		CGIMscMessage oldM_pStartMessage = m_pStartMessage;
+		m_pStartMessage = newM_pStartMessage;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_MSC_EXECUTION_OCCURRENCE__MPSTART_MESSAGE, oldM_pStartMessage, m_pStartMessage));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object eGet(int featureID, boolean resolve, boolean coreType) {
+		switch (featureID) {
+			case UMLRpyPackage.CGI_MSC_EXECUTION_OCCURRENCE__MPMODEL_OBJECT:
+				if (resolve) return getM_pModelObject();
+				return basicGetM_pModelObject();
+			case UMLRpyPackage.CGI_MSC_EXECUTION_OCCURRENCE__MPPARENT:
+				if (resolve) return getM_pParent();
+				return basicGetM_pParent();
+			case UMLRpyPackage.CGI_MSC_EXECUTION_OCCURRENCE__MTRANSFORM:
+				return getM_transform();
+			case UMLRpyPackage.CGI_MSC_EXECUTION_OCCURRENCE__MPOSITION:
+				return getM_position();
+			case UMLRpyPackage.CGI_MSC_EXECUTION_OCCURRENCE__MPINHERITS_FROM:
+				return getM_pInheritsFrom();
+			case UMLRpyPackage.CGI_MSC_EXECUTION_OCCURRENCE__MNINHERITANCE_MASK:
+				return getM_nInheritanceMask();
+			case UMLRpyPackage.CGI_MSC_EXECUTION_OCCURRENCE__MSUB_TYPE:
+				return getM_SubType();
+			case UMLRpyPackage.CGI_MSC_EXECUTION_OCCURRENCE__MPSTART_MESSAGE:
+				if (resolve) return getM_pStartMessage();
+				return basicGetM_pStartMessage();
+		}
+		return super.eGet(featureID, resolve, coreType);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@SuppressWarnings("unchecked")
+	@Override
+	public void eSet(int featureID, Object newValue) {
+		switch (featureID) {
+			case UMLRpyPackage.CGI_MSC_EXECUTION_OCCURRENCE__MPMODEL_OBJECT:
+				setM_pModelObject((IExecutionOccurrence)newValue);
+				return;
+			case UMLRpyPackage.CGI_MSC_EXECUTION_OCCURRENCE__MPPARENT:
+				setM_pParent((CGIMscColumnCR)newValue);
+				return;
+			case UMLRpyPackage.CGI_MSC_EXECUTION_OCCURRENCE__MTRANSFORM:
+				getM_transform().clear();
+				getM_transform().addAll((Collection<? extends String>)newValue);
+				return;
+			case UMLRpyPackage.CGI_MSC_EXECUTION_OCCURRENCE__MPOSITION:
+				getM_position().clear();
+				getM_position().addAll((Collection<? extends String>)newValue);
+				return;
+			case UMLRpyPackage.CGI_MSC_EXECUTION_OCCURRENCE__MPINHERITS_FROM:
+				getM_pInheritsFrom().clear();
+				getM_pInheritsFrom().addAll((Collection<? extends UnknownType>)newValue);
+				return;
+			case UMLRpyPackage.CGI_MSC_EXECUTION_OCCURRENCE__MNINHERITANCE_MASK:
+				setM_nInheritanceMask((String)newValue);
+				return;
+			case UMLRpyPackage.CGI_MSC_EXECUTION_OCCURRENCE__MSUB_TYPE:
+				setM_SubType((String)newValue);
+				return;
+			case UMLRpyPackage.CGI_MSC_EXECUTION_OCCURRENCE__MPSTART_MESSAGE:
+				setM_pStartMessage((CGIMscMessage)newValue);
+				return;
+		}
+		super.eSet(featureID, newValue);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void eUnset(int featureID) {
+		switch (featureID) {
+			case UMLRpyPackage.CGI_MSC_EXECUTION_OCCURRENCE__MPMODEL_OBJECT:
+				setM_pModelObject((IExecutionOccurrence)null);
+				return;
+			case UMLRpyPackage.CGI_MSC_EXECUTION_OCCURRENCE__MPPARENT:
+				setM_pParent((CGIMscColumnCR)null);
+				return;
+			case UMLRpyPackage.CGI_MSC_EXECUTION_OCCURRENCE__MTRANSFORM:
+				getM_transform().clear();
+				return;
+			case UMLRpyPackage.CGI_MSC_EXECUTION_OCCURRENCE__MPOSITION:
+				getM_position().clear();
+				return;
+			case UMLRpyPackage.CGI_MSC_EXECUTION_OCCURRENCE__MPINHERITS_FROM:
+				getM_pInheritsFrom().clear();
+				return;
+			case UMLRpyPackage.CGI_MSC_EXECUTION_OCCURRENCE__MNINHERITANCE_MASK:
+				setM_nInheritanceMask(MNINHERITANCE_MASK_EDEFAULT);
+				return;
+			case UMLRpyPackage.CGI_MSC_EXECUTION_OCCURRENCE__MSUB_TYPE:
+				setM_SubType(MSUB_TYPE_EDEFAULT);
+				return;
+			case UMLRpyPackage.CGI_MSC_EXECUTION_OCCURRENCE__MPSTART_MESSAGE:
+				setM_pStartMessage((CGIMscMessage)null);
+				return;
+		}
+		super.eUnset(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public boolean eIsSet(int featureID) {
+		switch (featureID) {
+			case UMLRpyPackage.CGI_MSC_EXECUTION_OCCURRENCE__MPMODEL_OBJECT:
+				return m_pModelObject != null;
+			case UMLRpyPackage.CGI_MSC_EXECUTION_OCCURRENCE__MPPARENT:
+				return m_pParent != null;
+			case UMLRpyPackage.CGI_MSC_EXECUTION_OCCURRENCE__MTRANSFORM:
+				return m_transform != null && !m_transform.isEmpty();
+			case UMLRpyPackage.CGI_MSC_EXECUTION_OCCURRENCE__MPOSITION:
+				return m_position != null && !m_position.isEmpty();
+			case UMLRpyPackage.CGI_MSC_EXECUTION_OCCURRENCE__MPINHERITS_FROM:
+				return m_pInheritsFrom != null && !m_pInheritsFrom.isEmpty();
+			case UMLRpyPackage.CGI_MSC_EXECUTION_OCCURRENCE__MNINHERITANCE_MASK:
+				return MNINHERITANCE_MASK_EDEFAULT == null ? m_nInheritanceMask != null : !MNINHERITANCE_MASK_EDEFAULT.equals(m_nInheritanceMask);
+			case UMLRpyPackage.CGI_MSC_EXECUTION_OCCURRENCE__MSUB_TYPE:
+				return MSUB_TYPE_EDEFAULT == null ? m_SubType != null : !MSUB_TYPE_EDEFAULT.equals(m_SubType);
+			case UMLRpyPackage.CGI_MSC_EXECUTION_OCCURRENCE__MPSTART_MESSAGE:
+				return m_pStartMessage != null;
+		}
+		return super.eIsSet(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String toString() {
+		if (eIsProxy()) return super.toString();
+
+		StringBuffer result = new StringBuffer(super.toString());
+		result.append(" (m_transform: "); //$NON-NLS-1$
+		result.append(m_transform);
+		result.append(", m_position: "); //$NON-NLS-1$
+		result.append(m_position);
+		result.append(", m_nInheritanceMask: "); //$NON-NLS-1$
+		result.append(m_nInheritanceMask);
+		result.append(", m_SubType: "); //$NON-NLS-1$
+		result.append(m_SubType);
+		result.append(')');
+		return result.toString();
+	}
+
+} //CGIMscExecutionOccurrenceImpl
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/CGIMscInteractionOccurrenceImpl.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/CGIMscInteractionOccurrenceImpl.java
new file mode 100755
index 0000000..2bb3415
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/CGIMscInteractionOccurrenceImpl.java
@@ -0,0 +1,568 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl;
+
+import java.util.Collection;
+
+import org.eclipse.emf.common.notify.Notification;
+import org.eclipse.emf.common.notify.NotificationChain;
+
+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.EDataTypeEList;
+import org.eclipse.emf.ecore.util.EObjectResolvingEList;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIBox;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscInteractionOccurrence;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IInteractionOccurrence;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IPropertyContainer;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UnknownType;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>CGI Msc Interaction Occurrence</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * </p>
+ * <ul>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIMscInteractionOccurrenceImpl#getM_pModelObject <em>MpModel Object</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIMscInteractionOccurrenceImpl#getM_pParent <em>MpParent</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIMscInteractionOccurrenceImpl#getM_transform <em>Mtransform</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIMscInteractionOccurrenceImpl#getM_polygon <em>Mpolygon</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIMscInteractionOccurrenceImpl#getM_nNameFormat <em>MnName Format</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIMscInteractionOccurrenceImpl#getM_nIsNameFormat <em>MnIs Name Format</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIMscInteractionOccurrenceImpl#getCompartments <em>Compartments</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIMscInteractionOccurrenceImpl#getProperties <em>Properties</em>}</li>
+ * </ul>
+ *
+ * @generated
+ */
+public class CGIMscInteractionOccurrenceImpl extends GraphElementsTypeImpl implements CGIMscInteractionOccurrence {
+	/**
+	 * The cached value of the '{@link #getM_pModelObject() <em>MpModel Object</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_pModelObject()
+	 * @generated
+	 * @ordered
+	 */
+	protected IInteractionOccurrence m_pModelObject;
+
+	/**
+	 * The cached value of the '{@link #getM_pParent() <em>MpParent</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_pParent()
+	 * @generated
+	 * @ordered
+	 */
+	protected CGIBox m_pParent;
+
+	/**
+	 * The cached value of the '{@link #getM_transform() <em>Mtransform</em>}' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_transform()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<String> m_transform;
+
+	/**
+	 * The cached value of the '{@link #getM_polygon() <em>Mpolygon</em>}' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_polygon()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<String> m_polygon;
+
+	/**
+	 * The default value of the '{@link #getM_nNameFormat() <em>MnName Format</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_nNameFormat()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String MNNAME_FORMAT_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getM_nNameFormat() <em>MnName Format</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_nNameFormat()
+	 * @generated
+	 * @ordered
+	 */
+	protected String m_nNameFormat = MNNAME_FORMAT_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getM_nIsNameFormat() <em>MnIs Name Format</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_nIsNameFormat()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String MNIS_NAME_FORMAT_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getM_nIsNameFormat() <em>MnIs Name Format</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_nIsNameFormat()
+	 * @generated
+	 * @ordered
+	 */
+	protected String m_nIsNameFormat = MNIS_NAME_FORMAT_EDEFAULT;
+
+	/**
+	 * The cached value of the '{@link #getCompartments() <em>Compartments</em>}' reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getCompartments()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<UnknownType> compartments;
+
+	/**
+	 * The cached value of the '{@link #getProperties() <em>Properties</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getProperties()
+	 * @generated
+	 * @ordered
+	 */
+	protected IPropertyContainer properties;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected CGIMscInteractionOccurrenceImpl() {
+		super();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EClass eStaticClass() {
+		return UMLRpyPackage.eINSTANCE.getCGIMscInteractionOccurrence();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IInteractionOccurrence getM_pModelObject() {
+		if (m_pModelObject != null && m_pModelObject.eIsProxy()) {
+			InternalEObject oldM_pModelObject = (InternalEObject)m_pModelObject;
+			m_pModelObject = (IInteractionOccurrence)eResolveProxy(oldM_pModelObject);
+			if (m_pModelObject != oldM_pModelObject) {
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.CGI_MSC_INTERACTION_OCCURRENCE__MPMODEL_OBJECT, oldM_pModelObject, m_pModelObject));
+			}
+		}
+		return m_pModelObject;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IInteractionOccurrence basicGetM_pModelObject() {
+		return m_pModelObject;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_pModelObject(IInteractionOccurrence newM_pModelObject) {
+		IInteractionOccurrence oldM_pModelObject = m_pModelObject;
+		m_pModelObject = newM_pModelObject;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_MSC_INTERACTION_OCCURRENCE__MPMODEL_OBJECT, oldM_pModelObject, m_pModelObject));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public CGIBox getM_pParent() {
+		if (m_pParent != null && m_pParent.eIsProxy()) {
+			InternalEObject oldM_pParent = (InternalEObject)m_pParent;
+			m_pParent = (CGIBox)eResolveProxy(oldM_pParent);
+			if (m_pParent != oldM_pParent) {
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.CGI_MSC_INTERACTION_OCCURRENCE__MPPARENT, oldM_pParent, m_pParent));
+			}
+		}
+		return m_pParent;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public CGIBox basicGetM_pParent() {
+		return m_pParent;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_pParent(CGIBox newM_pParent) {
+		CGIBox oldM_pParent = m_pParent;
+		m_pParent = newM_pParent;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_MSC_INTERACTION_OCCURRENCE__MPPARENT, oldM_pParent, m_pParent));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<String> getM_transform() {
+		if (m_transform == null) {
+			m_transform = new EDataTypeEList<String>(String.class, this, UMLRpyPackage.CGI_MSC_INTERACTION_OCCURRENCE__MTRANSFORM);
+		}
+		return m_transform;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<String> getM_polygon() {
+		if (m_polygon == null) {
+			m_polygon = new EDataTypeEList<String>(String.class, this, UMLRpyPackage.CGI_MSC_INTERACTION_OCCURRENCE__MPOLYGON);
+		}
+		return m_polygon;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getM_nNameFormat() {
+		return m_nNameFormat;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_nNameFormat(String newM_nNameFormat) {
+		String oldM_nNameFormat = m_nNameFormat;
+		m_nNameFormat = newM_nNameFormat;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_MSC_INTERACTION_OCCURRENCE__MNNAME_FORMAT, oldM_nNameFormat, m_nNameFormat));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getM_nIsNameFormat() {
+		return m_nIsNameFormat;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_nIsNameFormat(String newM_nIsNameFormat) {
+		String oldM_nIsNameFormat = m_nIsNameFormat;
+		m_nIsNameFormat = newM_nIsNameFormat;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_MSC_INTERACTION_OCCURRENCE__MNIS_NAME_FORMAT, oldM_nIsNameFormat, m_nIsNameFormat));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<UnknownType> getCompartments() {
+		if (compartments == null) {
+			compartments = new EObjectResolvingEList<UnknownType>(UnknownType.class, this, UMLRpyPackage.CGI_MSC_INTERACTION_OCCURRENCE__COMPARTMENTS);
+		}
+		return compartments;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IPropertyContainer getProperties() {
+		if (properties != null && properties.eIsProxy()) {
+			InternalEObject oldProperties = (InternalEObject)properties;
+			properties = (IPropertyContainer)eResolveProxy(oldProperties);
+			if (properties != oldProperties) {
+				InternalEObject newProperties = (InternalEObject)properties;
+				NotificationChain msgs = oldProperties.eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.CGI_MSC_INTERACTION_OCCURRENCE__PROPERTIES, null, null);
+				if (newProperties.eInternalContainer() == null) {
+					msgs = newProperties.eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.CGI_MSC_INTERACTION_OCCURRENCE__PROPERTIES, null, msgs);
+				}
+				if (msgs != null) msgs.dispatch();
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.CGI_MSC_INTERACTION_OCCURRENCE__PROPERTIES, oldProperties, properties));
+			}
+		}
+		return properties;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IPropertyContainer basicGetProperties() {
+		return properties;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public NotificationChain basicSetProperties(IPropertyContainer newProperties, NotificationChain msgs) {
+		IPropertyContainer oldProperties = properties;
+		properties = newProperties;
+		if (eNotificationRequired()) {
+			ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_MSC_INTERACTION_OCCURRENCE__PROPERTIES, oldProperties, newProperties);
+			if (msgs == null) msgs = notification; else msgs.add(notification);
+		}
+		return msgs;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setProperties(IPropertyContainer newProperties) {
+		if (newProperties != properties) {
+			NotificationChain msgs = null;
+			if (properties != null)
+				msgs = ((InternalEObject)properties).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.CGI_MSC_INTERACTION_OCCURRENCE__PROPERTIES, null, msgs);
+			if (newProperties != null)
+				msgs = ((InternalEObject)newProperties).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.CGI_MSC_INTERACTION_OCCURRENCE__PROPERTIES, null, msgs);
+			msgs = basicSetProperties(newProperties, msgs);
+			if (msgs != null) msgs.dispatch();
+		}
+		else if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_MSC_INTERACTION_OCCURRENCE__PROPERTIES, newProperties, newProperties));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
+		switch (featureID) {
+			case UMLRpyPackage.CGI_MSC_INTERACTION_OCCURRENCE__PROPERTIES:
+				return basicSetProperties(null, msgs);
+		}
+		return super.eInverseRemove(otherEnd, featureID, msgs);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object eGet(int featureID, boolean resolve, boolean coreType) {
+		switch (featureID) {
+			case UMLRpyPackage.CGI_MSC_INTERACTION_OCCURRENCE__MPMODEL_OBJECT:
+				if (resolve) return getM_pModelObject();
+				return basicGetM_pModelObject();
+			case UMLRpyPackage.CGI_MSC_INTERACTION_OCCURRENCE__MPPARENT:
+				if (resolve) return getM_pParent();
+				return basicGetM_pParent();
+			case UMLRpyPackage.CGI_MSC_INTERACTION_OCCURRENCE__MTRANSFORM:
+				return getM_transform();
+			case UMLRpyPackage.CGI_MSC_INTERACTION_OCCURRENCE__MPOLYGON:
+				return getM_polygon();
+			case UMLRpyPackage.CGI_MSC_INTERACTION_OCCURRENCE__MNNAME_FORMAT:
+				return getM_nNameFormat();
+			case UMLRpyPackage.CGI_MSC_INTERACTION_OCCURRENCE__MNIS_NAME_FORMAT:
+				return getM_nIsNameFormat();
+			case UMLRpyPackage.CGI_MSC_INTERACTION_OCCURRENCE__COMPARTMENTS:
+				return getCompartments();
+			case UMLRpyPackage.CGI_MSC_INTERACTION_OCCURRENCE__PROPERTIES:
+				if (resolve) return getProperties();
+				return basicGetProperties();
+		}
+		return super.eGet(featureID, resolve, coreType);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@SuppressWarnings("unchecked")
+	@Override
+	public void eSet(int featureID, Object newValue) {
+		switch (featureID) {
+			case UMLRpyPackage.CGI_MSC_INTERACTION_OCCURRENCE__MPMODEL_OBJECT:
+				setM_pModelObject((IInteractionOccurrence)newValue);
+				return;
+			case UMLRpyPackage.CGI_MSC_INTERACTION_OCCURRENCE__MPPARENT:
+				setM_pParent((CGIBox)newValue);
+				return;
+			case UMLRpyPackage.CGI_MSC_INTERACTION_OCCURRENCE__MTRANSFORM:
+				getM_transform().clear();
+				getM_transform().addAll((Collection<? extends String>)newValue);
+				return;
+			case UMLRpyPackage.CGI_MSC_INTERACTION_OCCURRENCE__MPOLYGON:
+				getM_polygon().clear();
+				getM_polygon().addAll((Collection<? extends String>)newValue);
+				return;
+			case UMLRpyPackage.CGI_MSC_INTERACTION_OCCURRENCE__MNNAME_FORMAT:
+				setM_nNameFormat((String)newValue);
+				return;
+			case UMLRpyPackage.CGI_MSC_INTERACTION_OCCURRENCE__MNIS_NAME_FORMAT:
+				setM_nIsNameFormat((String)newValue);
+				return;
+			case UMLRpyPackage.CGI_MSC_INTERACTION_OCCURRENCE__COMPARTMENTS:
+				getCompartments().clear();
+				getCompartments().addAll((Collection<? extends UnknownType>)newValue);
+				return;
+			case UMLRpyPackage.CGI_MSC_INTERACTION_OCCURRENCE__PROPERTIES:
+				setProperties((IPropertyContainer)newValue);
+				return;
+		}
+		super.eSet(featureID, newValue);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void eUnset(int featureID) {
+		switch (featureID) {
+			case UMLRpyPackage.CGI_MSC_INTERACTION_OCCURRENCE__MPMODEL_OBJECT:
+				setM_pModelObject((IInteractionOccurrence)null);
+				return;
+			case UMLRpyPackage.CGI_MSC_INTERACTION_OCCURRENCE__MPPARENT:
+				setM_pParent((CGIBox)null);
+				return;
+			case UMLRpyPackage.CGI_MSC_INTERACTION_OCCURRENCE__MTRANSFORM:
+				getM_transform().clear();
+				return;
+			case UMLRpyPackage.CGI_MSC_INTERACTION_OCCURRENCE__MPOLYGON:
+				getM_polygon().clear();
+				return;
+			case UMLRpyPackage.CGI_MSC_INTERACTION_OCCURRENCE__MNNAME_FORMAT:
+				setM_nNameFormat(MNNAME_FORMAT_EDEFAULT);
+				return;
+			case UMLRpyPackage.CGI_MSC_INTERACTION_OCCURRENCE__MNIS_NAME_FORMAT:
+				setM_nIsNameFormat(MNIS_NAME_FORMAT_EDEFAULT);
+				return;
+			case UMLRpyPackage.CGI_MSC_INTERACTION_OCCURRENCE__COMPARTMENTS:
+				getCompartments().clear();
+				return;
+			case UMLRpyPackage.CGI_MSC_INTERACTION_OCCURRENCE__PROPERTIES:
+				setProperties((IPropertyContainer)null);
+				return;
+		}
+		super.eUnset(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public boolean eIsSet(int featureID) {
+		switch (featureID) {
+			case UMLRpyPackage.CGI_MSC_INTERACTION_OCCURRENCE__MPMODEL_OBJECT:
+				return m_pModelObject != null;
+			case UMLRpyPackage.CGI_MSC_INTERACTION_OCCURRENCE__MPPARENT:
+				return m_pParent != null;
+			case UMLRpyPackage.CGI_MSC_INTERACTION_OCCURRENCE__MTRANSFORM:
+				return m_transform != null && !m_transform.isEmpty();
+			case UMLRpyPackage.CGI_MSC_INTERACTION_OCCURRENCE__MPOLYGON:
+				return m_polygon != null && !m_polygon.isEmpty();
+			case UMLRpyPackage.CGI_MSC_INTERACTION_OCCURRENCE__MNNAME_FORMAT:
+				return MNNAME_FORMAT_EDEFAULT == null ? m_nNameFormat != null : !MNNAME_FORMAT_EDEFAULT.equals(m_nNameFormat);
+			case UMLRpyPackage.CGI_MSC_INTERACTION_OCCURRENCE__MNIS_NAME_FORMAT:
+				return MNIS_NAME_FORMAT_EDEFAULT == null ? m_nIsNameFormat != null : !MNIS_NAME_FORMAT_EDEFAULT.equals(m_nIsNameFormat);
+			case UMLRpyPackage.CGI_MSC_INTERACTION_OCCURRENCE__COMPARTMENTS:
+				return compartments != null && !compartments.isEmpty();
+			case UMLRpyPackage.CGI_MSC_INTERACTION_OCCURRENCE__PROPERTIES:
+				return properties != null;
+		}
+		return super.eIsSet(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String toString() {
+		if (eIsProxy()) return super.toString();
+
+		StringBuffer result = new StringBuffer(super.toString());
+		result.append(" (m_transform: "); //$NON-NLS-1$
+		result.append(m_transform);
+		result.append(", m_polygon: "); //$NON-NLS-1$
+		result.append(m_polygon);
+		result.append(", m_nNameFormat: "); //$NON-NLS-1$
+		result.append(m_nNameFormat);
+		result.append(", m_nIsNameFormat: "); //$NON-NLS-1$
+		result.append(m_nIsNameFormat);
+		result.append(')');
+		return result.toString();
+	}
+
+} //CGIMscInteractionOccurrenceImpl
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/CGIMscInteractionOperandImpl.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/CGIMscInteractionOperandImpl.java
new file mode 100755
index 0000000..f3f51ad
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/CGIMscInteractionOperandImpl.java
@@ -0,0 +1,659 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl;
+
+import java.util.Collection;
+
+import org.eclipse.emf.common.notify.Notification;
+import org.eclipse.emf.common.notify.NotificationChain;
+
+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.EDataTypeEList;
+import org.eclipse.emf.ecore.util.EObjectResolvingEList;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscInteractionOperand;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscInteractionOperator;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIText;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IInteractionOperand;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IPropertyContainer;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UnknownType;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>CGI Msc Interaction Operand</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * </p>
+ * <ul>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIMscInteractionOperandImpl#getProperties <em>Properties</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIMscInteractionOperandImpl#getM_pModelObject <em>MpModel Object</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIMscInteractionOperandImpl#getM_pParent <em>MpParent</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIMscInteractionOperandImpl#getM_AdditionalLabel <em>MAdditional Label</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIMscInteractionOperandImpl#getM_polygon <em>Mpolygon</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIMscInteractionOperandImpl#getM_nNameFormat <em>MnName Format</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIMscInteractionOperandImpl#getM_nIsNameFormat <em>MnIs Name Format</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIMscInteractionOperandImpl#getCompartments <em>Compartments</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIMscInteractionOperandImpl#getM_transform <em>Mtransform</em>}</li>
+ * </ul>
+ *
+ * @generated
+ */
+public class CGIMscInteractionOperandImpl extends GraphElementsTypeImpl implements CGIMscInteractionOperand {
+	/**
+	 * The cached value of the '{@link #getProperties() <em>Properties</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getProperties()
+	 * @generated
+	 * @ordered
+	 */
+	protected IPropertyContainer properties;
+
+	/**
+	 * The cached value of the '{@link #getM_pModelObject() <em>MpModel Object</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_pModelObject()
+	 * @generated
+	 * @ordered
+	 */
+	protected IInteractionOperand m_pModelObject;
+
+	/**
+	 * The cached value of the '{@link #getM_pParent() <em>MpParent</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_pParent()
+	 * @generated
+	 * @ordered
+	 */
+	protected CGIMscInteractionOperator m_pParent;
+
+	/**
+	 * The cached value of the '{@link #getM_AdditionalLabel() <em>MAdditional Label</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_AdditionalLabel()
+	 * @generated
+	 * @ordered
+	 */
+	protected CGIText m_AdditionalLabel;
+
+	/**
+	 * The cached value of the '{@link #getM_polygon() <em>Mpolygon</em>}' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_polygon()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<String> m_polygon;
+
+	/**
+	 * The default value of the '{@link #getM_nNameFormat() <em>MnName Format</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_nNameFormat()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String MNNAME_FORMAT_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getM_nNameFormat() <em>MnName Format</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_nNameFormat()
+	 * @generated
+	 * @ordered
+	 */
+	protected String m_nNameFormat = MNNAME_FORMAT_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getM_nIsNameFormat() <em>MnIs Name Format</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_nIsNameFormat()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String MNIS_NAME_FORMAT_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getM_nIsNameFormat() <em>MnIs Name Format</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_nIsNameFormat()
+	 * @generated
+	 * @ordered
+	 */
+	protected String m_nIsNameFormat = MNIS_NAME_FORMAT_EDEFAULT;
+
+	/**
+	 * The cached value of the '{@link #getCompartments() <em>Compartments</em>}' reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getCompartments()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<UnknownType> compartments;
+
+	/**
+	 * The cached value of the '{@link #getM_transform() <em>Mtransform</em>}' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_transform()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<String> m_transform;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected CGIMscInteractionOperandImpl() {
+		super();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EClass eStaticClass() {
+		return UMLRpyPackage.eINSTANCE.getCGIMscInteractionOperand();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IPropertyContainer getProperties() {
+		if (properties != null && properties.eIsProxy()) {
+			InternalEObject oldProperties = (InternalEObject)properties;
+			properties = (IPropertyContainer)eResolveProxy(oldProperties);
+			if (properties != oldProperties) {
+				InternalEObject newProperties = (InternalEObject)properties;
+				NotificationChain msgs = oldProperties.eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.CGI_MSC_INTERACTION_OPERAND__PROPERTIES, null, null);
+				if (newProperties.eInternalContainer() == null) {
+					msgs = newProperties.eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.CGI_MSC_INTERACTION_OPERAND__PROPERTIES, null, msgs);
+				}
+				if (msgs != null) msgs.dispatch();
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.CGI_MSC_INTERACTION_OPERAND__PROPERTIES, oldProperties, properties));
+			}
+		}
+		return properties;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IPropertyContainer basicGetProperties() {
+		return properties;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public NotificationChain basicSetProperties(IPropertyContainer newProperties, NotificationChain msgs) {
+		IPropertyContainer oldProperties = properties;
+		properties = newProperties;
+		if (eNotificationRequired()) {
+			ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_MSC_INTERACTION_OPERAND__PROPERTIES, oldProperties, newProperties);
+			if (msgs == null) msgs = notification; else msgs.add(notification);
+		}
+		return msgs;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setProperties(IPropertyContainer newProperties) {
+		if (newProperties != properties) {
+			NotificationChain msgs = null;
+			if (properties != null)
+				msgs = ((InternalEObject)properties).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.CGI_MSC_INTERACTION_OPERAND__PROPERTIES, null, msgs);
+			if (newProperties != null)
+				msgs = ((InternalEObject)newProperties).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.CGI_MSC_INTERACTION_OPERAND__PROPERTIES, null, msgs);
+			msgs = basicSetProperties(newProperties, msgs);
+			if (msgs != null) msgs.dispatch();
+		}
+		else if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_MSC_INTERACTION_OPERAND__PROPERTIES, newProperties, newProperties));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IInteractionOperand getM_pModelObject() {
+		if (m_pModelObject != null && m_pModelObject.eIsProxy()) {
+			InternalEObject oldM_pModelObject = (InternalEObject)m_pModelObject;
+			m_pModelObject = (IInteractionOperand)eResolveProxy(oldM_pModelObject);
+			if (m_pModelObject != oldM_pModelObject) {
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.CGI_MSC_INTERACTION_OPERAND__MPMODEL_OBJECT, oldM_pModelObject, m_pModelObject));
+			}
+		}
+		return m_pModelObject;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IInteractionOperand basicGetM_pModelObject() {
+		return m_pModelObject;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_pModelObject(IInteractionOperand newM_pModelObject) {
+		IInteractionOperand oldM_pModelObject = m_pModelObject;
+		m_pModelObject = newM_pModelObject;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_MSC_INTERACTION_OPERAND__MPMODEL_OBJECT, oldM_pModelObject, m_pModelObject));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public CGIMscInteractionOperator getM_pParent() {
+		if (m_pParent != null && m_pParent.eIsProxy()) {
+			InternalEObject oldM_pParent = (InternalEObject)m_pParent;
+			m_pParent = (CGIMscInteractionOperator)eResolveProxy(oldM_pParent);
+			if (m_pParent != oldM_pParent) {
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.CGI_MSC_INTERACTION_OPERAND__MPPARENT, oldM_pParent, m_pParent));
+			}
+		}
+		return m_pParent;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public CGIMscInteractionOperator basicGetM_pParent() {
+		return m_pParent;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_pParent(CGIMscInteractionOperator newM_pParent) {
+		CGIMscInteractionOperator oldM_pParent = m_pParent;
+		m_pParent = newM_pParent;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_MSC_INTERACTION_OPERAND__MPPARENT, oldM_pParent, m_pParent));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public CGIText getM_AdditionalLabel() {
+		if (m_AdditionalLabel != null && m_AdditionalLabel.eIsProxy()) {
+			InternalEObject oldM_AdditionalLabel = (InternalEObject)m_AdditionalLabel;
+			m_AdditionalLabel = (CGIText)eResolveProxy(oldM_AdditionalLabel);
+			if (m_AdditionalLabel != oldM_AdditionalLabel) {
+				InternalEObject newM_AdditionalLabel = (InternalEObject)m_AdditionalLabel;
+				NotificationChain msgs = oldM_AdditionalLabel.eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.CGI_MSC_INTERACTION_OPERAND__MADDITIONAL_LABEL, null, null);
+				if (newM_AdditionalLabel.eInternalContainer() == null) {
+					msgs = newM_AdditionalLabel.eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.CGI_MSC_INTERACTION_OPERAND__MADDITIONAL_LABEL, null, msgs);
+				}
+				if (msgs != null) msgs.dispatch();
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.CGI_MSC_INTERACTION_OPERAND__MADDITIONAL_LABEL, oldM_AdditionalLabel, m_AdditionalLabel));
+			}
+		}
+		return m_AdditionalLabel;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public CGIText basicGetM_AdditionalLabel() {
+		return m_AdditionalLabel;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public NotificationChain basicSetM_AdditionalLabel(CGIText newM_AdditionalLabel, NotificationChain msgs) {
+		CGIText oldM_AdditionalLabel = m_AdditionalLabel;
+		m_AdditionalLabel = newM_AdditionalLabel;
+		if (eNotificationRequired()) {
+			ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_MSC_INTERACTION_OPERAND__MADDITIONAL_LABEL, oldM_AdditionalLabel, newM_AdditionalLabel);
+			if (msgs == null) msgs = notification; else msgs.add(notification);
+		}
+		return msgs;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_AdditionalLabel(CGIText newM_AdditionalLabel) {
+		if (newM_AdditionalLabel != m_AdditionalLabel) {
+			NotificationChain msgs = null;
+			if (m_AdditionalLabel != null)
+				msgs = ((InternalEObject)m_AdditionalLabel).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.CGI_MSC_INTERACTION_OPERAND__MADDITIONAL_LABEL, null, msgs);
+			if (newM_AdditionalLabel != null)
+				msgs = ((InternalEObject)newM_AdditionalLabel).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.CGI_MSC_INTERACTION_OPERAND__MADDITIONAL_LABEL, null, msgs);
+			msgs = basicSetM_AdditionalLabel(newM_AdditionalLabel, msgs);
+			if (msgs != null) msgs.dispatch();
+		}
+		else if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_MSC_INTERACTION_OPERAND__MADDITIONAL_LABEL, newM_AdditionalLabel, newM_AdditionalLabel));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<String> getM_polygon() {
+		if (m_polygon == null) {
+			m_polygon = new EDataTypeEList<String>(String.class, this, UMLRpyPackage.CGI_MSC_INTERACTION_OPERAND__MPOLYGON);
+		}
+		return m_polygon;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getM_nNameFormat() {
+		return m_nNameFormat;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_nNameFormat(String newM_nNameFormat) {
+		String oldM_nNameFormat = m_nNameFormat;
+		m_nNameFormat = newM_nNameFormat;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_MSC_INTERACTION_OPERAND__MNNAME_FORMAT, oldM_nNameFormat, m_nNameFormat));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getM_nIsNameFormat() {
+		return m_nIsNameFormat;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_nIsNameFormat(String newM_nIsNameFormat) {
+		String oldM_nIsNameFormat = m_nIsNameFormat;
+		m_nIsNameFormat = newM_nIsNameFormat;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_MSC_INTERACTION_OPERAND__MNIS_NAME_FORMAT, oldM_nIsNameFormat, m_nIsNameFormat));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<UnknownType> getCompartments() {
+		if (compartments == null) {
+			compartments = new EObjectResolvingEList<UnknownType>(UnknownType.class, this, UMLRpyPackage.CGI_MSC_INTERACTION_OPERAND__COMPARTMENTS);
+		}
+		return compartments;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<String> getM_transform() {
+		if (m_transform == null) {
+			m_transform = new EDataTypeEList<String>(String.class, this, UMLRpyPackage.CGI_MSC_INTERACTION_OPERAND__MTRANSFORM);
+		}
+		return m_transform;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
+		switch (featureID) {
+			case UMLRpyPackage.CGI_MSC_INTERACTION_OPERAND__PROPERTIES:
+				return basicSetProperties(null, msgs);
+			case UMLRpyPackage.CGI_MSC_INTERACTION_OPERAND__MADDITIONAL_LABEL:
+				return basicSetM_AdditionalLabel(null, msgs);
+		}
+		return super.eInverseRemove(otherEnd, featureID, msgs);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object eGet(int featureID, boolean resolve, boolean coreType) {
+		switch (featureID) {
+			case UMLRpyPackage.CGI_MSC_INTERACTION_OPERAND__PROPERTIES:
+				if (resolve) return getProperties();
+				return basicGetProperties();
+			case UMLRpyPackage.CGI_MSC_INTERACTION_OPERAND__MPMODEL_OBJECT:
+				if (resolve) return getM_pModelObject();
+				return basicGetM_pModelObject();
+			case UMLRpyPackage.CGI_MSC_INTERACTION_OPERAND__MPPARENT:
+				if (resolve) return getM_pParent();
+				return basicGetM_pParent();
+			case UMLRpyPackage.CGI_MSC_INTERACTION_OPERAND__MADDITIONAL_LABEL:
+				if (resolve) return getM_AdditionalLabel();
+				return basicGetM_AdditionalLabel();
+			case UMLRpyPackage.CGI_MSC_INTERACTION_OPERAND__MPOLYGON:
+				return getM_polygon();
+			case UMLRpyPackage.CGI_MSC_INTERACTION_OPERAND__MNNAME_FORMAT:
+				return getM_nNameFormat();
+			case UMLRpyPackage.CGI_MSC_INTERACTION_OPERAND__MNIS_NAME_FORMAT:
+				return getM_nIsNameFormat();
+			case UMLRpyPackage.CGI_MSC_INTERACTION_OPERAND__COMPARTMENTS:
+				return getCompartments();
+			case UMLRpyPackage.CGI_MSC_INTERACTION_OPERAND__MTRANSFORM:
+				return getM_transform();
+		}
+		return super.eGet(featureID, resolve, coreType);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@SuppressWarnings("unchecked")
+	@Override
+	public void eSet(int featureID, Object newValue) {
+		switch (featureID) {
+			case UMLRpyPackage.CGI_MSC_INTERACTION_OPERAND__PROPERTIES:
+				setProperties((IPropertyContainer)newValue);
+				return;
+			case UMLRpyPackage.CGI_MSC_INTERACTION_OPERAND__MPMODEL_OBJECT:
+				setM_pModelObject((IInteractionOperand)newValue);
+				return;
+			case UMLRpyPackage.CGI_MSC_INTERACTION_OPERAND__MPPARENT:
+				setM_pParent((CGIMscInteractionOperator)newValue);
+				return;
+			case UMLRpyPackage.CGI_MSC_INTERACTION_OPERAND__MADDITIONAL_LABEL:
+				setM_AdditionalLabel((CGIText)newValue);
+				return;
+			case UMLRpyPackage.CGI_MSC_INTERACTION_OPERAND__MPOLYGON:
+				getM_polygon().clear();
+				getM_polygon().addAll((Collection<? extends String>)newValue);
+				return;
+			case UMLRpyPackage.CGI_MSC_INTERACTION_OPERAND__MNNAME_FORMAT:
+				setM_nNameFormat((String)newValue);
+				return;
+			case UMLRpyPackage.CGI_MSC_INTERACTION_OPERAND__MNIS_NAME_FORMAT:
+				setM_nIsNameFormat((String)newValue);
+				return;
+			case UMLRpyPackage.CGI_MSC_INTERACTION_OPERAND__COMPARTMENTS:
+				getCompartments().clear();
+				getCompartments().addAll((Collection<? extends UnknownType>)newValue);
+				return;
+			case UMLRpyPackage.CGI_MSC_INTERACTION_OPERAND__MTRANSFORM:
+				getM_transform().clear();
+				getM_transform().addAll((Collection<? extends String>)newValue);
+				return;
+		}
+		super.eSet(featureID, newValue);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void eUnset(int featureID) {
+		switch (featureID) {
+			case UMLRpyPackage.CGI_MSC_INTERACTION_OPERAND__PROPERTIES:
+				setProperties((IPropertyContainer)null);
+				return;
+			case UMLRpyPackage.CGI_MSC_INTERACTION_OPERAND__MPMODEL_OBJECT:
+				setM_pModelObject((IInteractionOperand)null);
+				return;
+			case UMLRpyPackage.CGI_MSC_INTERACTION_OPERAND__MPPARENT:
+				setM_pParent((CGIMscInteractionOperator)null);
+				return;
+			case UMLRpyPackage.CGI_MSC_INTERACTION_OPERAND__MADDITIONAL_LABEL:
+				setM_AdditionalLabel((CGIText)null);
+				return;
+			case UMLRpyPackage.CGI_MSC_INTERACTION_OPERAND__MPOLYGON:
+				getM_polygon().clear();
+				return;
+			case UMLRpyPackage.CGI_MSC_INTERACTION_OPERAND__MNNAME_FORMAT:
+				setM_nNameFormat(MNNAME_FORMAT_EDEFAULT);
+				return;
+			case UMLRpyPackage.CGI_MSC_INTERACTION_OPERAND__MNIS_NAME_FORMAT:
+				setM_nIsNameFormat(MNIS_NAME_FORMAT_EDEFAULT);
+				return;
+			case UMLRpyPackage.CGI_MSC_INTERACTION_OPERAND__COMPARTMENTS:
+				getCompartments().clear();
+				return;
+			case UMLRpyPackage.CGI_MSC_INTERACTION_OPERAND__MTRANSFORM:
+				getM_transform().clear();
+				return;
+		}
+		super.eUnset(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public boolean eIsSet(int featureID) {
+		switch (featureID) {
+			case UMLRpyPackage.CGI_MSC_INTERACTION_OPERAND__PROPERTIES:
+				return properties != null;
+			case UMLRpyPackage.CGI_MSC_INTERACTION_OPERAND__MPMODEL_OBJECT:
+				return m_pModelObject != null;
+			case UMLRpyPackage.CGI_MSC_INTERACTION_OPERAND__MPPARENT:
+				return m_pParent != null;
+			case UMLRpyPackage.CGI_MSC_INTERACTION_OPERAND__MADDITIONAL_LABEL:
+				return m_AdditionalLabel != null;
+			case UMLRpyPackage.CGI_MSC_INTERACTION_OPERAND__MPOLYGON:
+				return m_polygon != null && !m_polygon.isEmpty();
+			case UMLRpyPackage.CGI_MSC_INTERACTION_OPERAND__MNNAME_FORMAT:
+				return MNNAME_FORMAT_EDEFAULT == null ? m_nNameFormat != null : !MNNAME_FORMAT_EDEFAULT.equals(m_nNameFormat);
+			case UMLRpyPackage.CGI_MSC_INTERACTION_OPERAND__MNIS_NAME_FORMAT:
+				return MNIS_NAME_FORMAT_EDEFAULT == null ? m_nIsNameFormat != null : !MNIS_NAME_FORMAT_EDEFAULT.equals(m_nIsNameFormat);
+			case UMLRpyPackage.CGI_MSC_INTERACTION_OPERAND__COMPARTMENTS:
+				return compartments != null && !compartments.isEmpty();
+			case UMLRpyPackage.CGI_MSC_INTERACTION_OPERAND__MTRANSFORM:
+				return m_transform != null && !m_transform.isEmpty();
+		}
+		return super.eIsSet(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String toString() {
+		if (eIsProxy()) return super.toString();
+
+		StringBuffer result = new StringBuffer(super.toString());
+		result.append(" (m_polygon: "); //$NON-NLS-1$
+		result.append(m_polygon);
+		result.append(", m_nNameFormat: "); //$NON-NLS-1$
+		result.append(m_nNameFormat);
+		result.append(", m_nIsNameFormat: "); //$NON-NLS-1$
+		result.append(m_nIsNameFormat);
+		result.append(", m_transform: "); //$NON-NLS-1$
+		result.append(m_transform);
+		result.append(')');
+		return result.toString();
+	}
+
+} //CGIMscInteractionOperandImpl
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/CGIMscInteractionOperatorImpl.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/CGIMscInteractionOperatorImpl.java
new file mode 100755
index 0000000..69e8953
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/CGIMscInteractionOperatorImpl.java
@@ -0,0 +1,730 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl;
+
+import java.util.Collection;
+
+import org.eclipse.emf.common.notify.Notification;
+import org.eclipse.emf.common.notify.NotificationChain;
+
+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.EDataTypeEList;
+import org.eclipse.emf.ecore.util.EObjectResolvingEList;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscInteractionOperator;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.GraphElementsType;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ICombinedFragment;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IPropertyContainer;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UnknownType;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>CGI Msc Interaction Operator</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * </p>
+ * <ul>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIMscInteractionOperatorImpl#getM_operatorType <em>Moperator Type</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIMscInteractionOperatorImpl#getProperties <em>Properties</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIMscInteractionOperatorImpl#getM_pModelObject <em>MpModel Object</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIMscInteractionOperatorImpl#getM_pParent <em>MpParent</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIMscInteractionOperatorImpl#getM_transform <em>Mtransform</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIMscInteractionOperatorImpl#getM_polygon <em>Mpolygon</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIMscInteractionOperatorImpl#getM_nNameFormat <em>MnName Format</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIMscInteractionOperatorImpl#getM_nIsNameFormat <em>MnIs Name Format</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIMscInteractionOperatorImpl#getFrameset <em>Frameset</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIMscInteractionOperatorImpl#getCompartments <em>Compartments</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIMscInteractionOperatorImpl#getM_bFramesetModified <em>MbFrameset Modified</em>}</li>
+ * </ul>
+ *
+ * @generated
+ */
+public class CGIMscInteractionOperatorImpl extends GraphElementsTypeImpl implements CGIMscInteractionOperator {
+	/**
+	 * The default value of the '{@link #getM_operatorType() <em>Moperator Type</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_operatorType()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String MOPERATOR_TYPE_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getM_operatorType() <em>Moperator Type</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_operatorType()
+	 * @generated
+	 * @ordered
+	 */
+	protected String m_operatorType = MOPERATOR_TYPE_EDEFAULT;
+
+	/**
+	 * The cached value of the '{@link #getProperties() <em>Properties</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getProperties()
+	 * @generated
+	 * @ordered
+	 */
+	protected IPropertyContainer properties;
+
+	/**
+	 * The cached value of the '{@link #getM_pModelObject() <em>MpModel Object</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_pModelObject()
+	 * @generated
+	 * @ordered
+	 */
+	protected ICombinedFragment m_pModelObject;
+
+	/**
+	 * The cached value of the '{@link #getM_pParent() <em>MpParent</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_pParent()
+	 * @generated
+	 * @ordered
+	 */
+	protected GraphElementsType m_pParent;
+
+	/**
+	 * The cached value of the '{@link #getM_transform() <em>Mtransform</em>}' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_transform()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<String> m_transform;
+
+	/**
+	 * The cached value of the '{@link #getM_polygon() <em>Mpolygon</em>}' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_polygon()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<String> m_polygon;
+
+	/**
+	 * The default value of the '{@link #getM_nNameFormat() <em>MnName Format</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_nNameFormat()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String MNNAME_FORMAT_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getM_nNameFormat() <em>MnName Format</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_nNameFormat()
+	 * @generated
+	 * @ordered
+	 */
+	protected String m_nNameFormat = MNNAME_FORMAT_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getM_nIsNameFormat() <em>MnIs Name Format</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_nIsNameFormat()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String MNIS_NAME_FORMAT_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getM_nIsNameFormat() <em>MnIs Name Format</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_nIsNameFormat()
+	 * @generated
+	 * @ordered
+	 */
+	protected String m_nIsNameFormat = MNIS_NAME_FORMAT_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getFrameset() <em>Frameset</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getFrameset()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String FRAMESET_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getFrameset() <em>Frameset</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getFrameset()
+	 * @generated
+	 * @ordered
+	 */
+	protected String frameset = FRAMESET_EDEFAULT;
+
+	/**
+	 * The cached value of the '{@link #getCompartments() <em>Compartments</em>}' reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getCompartments()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<UnknownType> compartments;
+
+	/**
+	 * The default value of the '{@link #getM_bFramesetModified() <em>MbFrameset Modified</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_bFramesetModified()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String MBFRAMESET_MODIFIED_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getM_bFramesetModified() <em>MbFrameset Modified</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_bFramesetModified()
+	 * @generated
+	 * @ordered
+	 */
+	protected String m_bFramesetModified = MBFRAMESET_MODIFIED_EDEFAULT;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected CGIMscInteractionOperatorImpl() {
+		super();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EClass eStaticClass() {
+		return UMLRpyPackage.eINSTANCE.getCGIMscInteractionOperator();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getM_operatorType() {
+		return m_operatorType;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_operatorType(String newM_operatorType) {
+		String oldM_operatorType = m_operatorType;
+		m_operatorType = newM_operatorType;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_MSC_INTERACTION_OPERATOR__MOPERATOR_TYPE, oldM_operatorType, m_operatorType));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IPropertyContainer getProperties() {
+		if (properties != null && properties.eIsProxy()) {
+			InternalEObject oldProperties = (InternalEObject)properties;
+			properties = (IPropertyContainer)eResolveProxy(oldProperties);
+			if (properties != oldProperties) {
+				InternalEObject newProperties = (InternalEObject)properties;
+				NotificationChain msgs = oldProperties.eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.CGI_MSC_INTERACTION_OPERATOR__PROPERTIES, null, null);
+				if (newProperties.eInternalContainer() == null) {
+					msgs = newProperties.eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.CGI_MSC_INTERACTION_OPERATOR__PROPERTIES, null, msgs);
+				}
+				if (msgs != null) msgs.dispatch();
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.CGI_MSC_INTERACTION_OPERATOR__PROPERTIES, oldProperties, properties));
+			}
+		}
+		return properties;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IPropertyContainer basicGetProperties() {
+		return properties;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public NotificationChain basicSetProperties(IPropertyContainer newProperties, NotificationChain msgs) {
+		IPropertyContainer oldProperties = properties;
+		properties = newProperties;
+		if (eNotificationRequired()) {
+			ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_MSC_INTERACTION_OPERATOR__PROPERTIES, oldProperties, newProperties);
+			if (msgs == null) msgs = notification; else msgs.add(notification);
+		}
+		return msgs;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setProperties(IPropertyContainer newProperties) {
+		if (newProperties != properties) {
+			NotificationChain msgs = null;
+			if (properties != null)
+				msgs = ((InternalEObject)properties).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.CGI_MSC_INTERACTION_OPERATOR__PROPERTIES, null, msgs);
+			if (newProperties != null)
+				msgs = ((InternalEObject)newProperties).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.CGI_MSC_INTERACTION_OPERATOR__PROPERTIES, null, msgs);
+			msgs = basicSetProperties(newProperties, msgs);
+			if (msgs != null) msgs.dispatch();
+		}
+		else if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_MSC_INTERACTION_OPERATOR__PROPERTIES, newProperties, newProperties));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public ICombinedFragment getM_pModelObject() {
+		if (m_pModelObject != null && m_pModelObject.eIsProxy()) {
+			InternalEObject oldM_pModelObject = (InternalEObject)m_pModelObject;
+			m_pModelObject = (ICombinedFragment)eResolveProxy(oldM_pModelObject);
+			if (m_pModelObject != oldM_pModelObject) {
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.CGI_MSC_INTERACTION_OPERATOR__MPMODEL_OBJECT, oldM_pModelObject, m_pModelObject));
+			}
+		}
+		return m_pModelObject;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public ICombinedFragment basicGetM_pModelObject() {
+		return m_pModelObject;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_pModelObject(ICombinedFragment newM_pModelObject) {
+		ICombinedFragment oldM_pModelObject = m_pModelObject;
+		m_pModelObject = newM_pModelObject;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_MSC_INTERACTION_OPERATOR__MPMODEL_OBJECT, oldM_pModelObject, m_pModelObject));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public GraphElementsType getM_pParent() {
+		if (m_pParent != null && m_pParent.eIsProxy()) {
+			InternalEObject oldM_pParent = (InternalEObject)m_pParent;
+			m_pParent = (GraphElementsType)eResolveProxy(oldM_pParent);
+			if (m_pParent != oldM_pParent) {
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.CGI_MSC_INTERACTION_OPERATOR__MPPARENT, oldM_pParent, m_pParent));
+			}
+		}
+		return m_pParent;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public GraphElementsType basicGetM_pParent() {
+		return m_pParent;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_pParent(GraphElementsType newM_pParent) {
+		GraphElementsType oldM_pParent = m_pParent;
+		m_pParent = newM_pParent;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_MSC_INTERACTION_OPERATOR__MPPARENT, oldM_pParent, m_pParent));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<String> getM_transform() {
+		if (m_transform == null) {
+			m_transform = new EDataTypeEList<String>(String.class, this, UMLRpyPackage.CGI_MSC_INTERACTION_OPERATOR__MTRANSFORM);
+		}
+		return m_transform;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<String> getM_polygon() {
+		if (m_polygon == null) {
+			m_polygon = new EDataTypeEList<String>(String.class, this, UMLRpyPackage.CGI_MSC_INTERACTION_OPERATOR__MPOLYGON);
+		}
+		return m_polygon;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getM_nNameFormat() {
+		return m_nNameFormat;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_nNameFormat(String newM_nNameFormat) {
+		String oldM_nNameFormat = m_nNameFormat;
+		m_nNameFormat = newM_nNameFormat;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_MSC_INTERACTION_OPERATOR__MNNAME_FORMAT, oldM_nNameFormat, m_nNameFormat));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getM_nIsNameFormat() {
+		return m_nIsNameFormat;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_nIsNameFormat(String newM_nIsNameFormat) {
+		String oldM_nIsNameFormat = m_nIsNameFormat;
+		m_nIsNameFormat = newM_nIsNameFormat;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_MSC_INTERACTION_OPERATOR__MNIS_NAME_FORMAT, oldM_nIsNameFormat, m_nIsNameFormat));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getFrameset() {
+		return frameset;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setFrameset(String newFrameset) {
+		String oldFrameset = frameset;
+		frameset = newFrameset;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_MSC_INTERACTION_OPERATOR__FRAMESET, oldFrameset, frameset));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<UnknownType> getCompartments() {
+		if (compartments == null) {
+			compartments = new EObjectResolvingEList<UnknownType>(UnknownType.class, this, UMLRpyPackage.CGI_MSC_INTERACTION_OPERATOR__COMPARTMENTS);
+		}
+		return compartments;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getM_bFramesetModified() {
+		return m_bFramesetModified;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_bFramesetModified(String newM_bFramesetModified) {
+		String oldM_bFramesetModified = m_bFramesetModified;
+		m_bFramesetModified = newM_bFramesetModified;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_MSC_INTERACTION_OPERATOR__MBFRAMESET_MODIFIED, oldM_bFramesetModified, m_bFramesetModified));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
+		switch (featureID) {
+			case UMLRpyPackage.CGI_MSC_INTERACTION_OPERATOR__PROPERTIES:
+				return basicSetProperties(null, msgs);
+		}
+		return super.eInverseRemove(otherEnd, featureID, msgs);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object eGet(int featureID, boolean resolve, boolean coreType) {
+		switch (featureID) {
+			case UMLRpyPackage.CGI_MSC_INTERACTION_OPERATOR__MOPERATOR_TYPE:
+				return getM_operatorType();
+			case UMLRpyPackage.CGI_MSC_INTERACTION_OPERATOR__PROPERTIES:
+				if (resolve) return getProperties();
+				return basicGetProperties();
+			case UMLRpyPackage.CGI_MSC_INTERACTION_OPERATOR__MPMODEL_OBJECT:
+				if (resolve) return getM_pModelObject();
+				return basicGetM_pModelObject();
+			case UMLRpyPackage.CGI_MSC_INTERACTION_OPERATOR__MPPARENT:
+				if (resolve) return getM_pParent();
+				return basicGetM_pParent();
+			case UMLRpyPackage.CGI_MSC_INTERACTION_OPERATOR__MTRANSFORM:
+				return getM_transform();
+			case UMLRpyPackage.CGI_MSC_INTERACTION_OPERATOR__MPOLYGON:
+				return getM_polygon();
+			case UMLRpyPackage.CGI_MSC_INTERACTION_OPERATOR__MNNAME_FORMAT:
+				return getM_nNameFormat();
+			case UMLRpyPackage.CGI_MSC_INTERACTION_OPERATOR__MNIS_NAME_FORMAT:
+				return getM_nIsNameFormat();
+			case UMLRpyPackage.CGI_MSC_INTERACTION_OPERATOR__FRAMESET:
+				return getFrameset();
+			case UMLRpyPackage.CGI_MSC_INTERACTION_OPERATOR__COMPARTMENTS:
+				return getCompartments();
+			case UMLRpyPackage.CGI_MSC_INTERACTION_OPERATOR__MBFRAMESET_MODIFIED:
+				return getM_bFramesetModified();
+		}
+		return super.eGet(featureID, resolve, coreType);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@SuppressWarnings("unchecked")
+	@Override
+	public void eSet(int featureID, Object newValue) {
+		switch (featureID) {
+			case UMLRpyPackage.CGI_MSC_INTERACTION_OPERATOR__MOPERATOR_TYPE:
+				setM_operatorType((String)newValue);
+				return;
+			case UMLRpyPackage.CGI_MSC_INTERACTION_OPERATOR__PROPERTIES:
+				setProperties((IPropertyContainer)newValue);
+				return;
+			case UMLRpyPackage.CGI_MSC_INTERACTION_OPERATOR__MPMODEL_OBJECT:
+				setM_pModelObject((ICombinedFragment)newValue);
+				return;
+			case UMLRpyPackage.CGI_MSC_INTERACTION_OPERATOR__MPPARENT:
+				setM_pParent((GraphElementsType)newValue);
+				return;
+			case UMLRpyPackage.CGI_MSC_INTERACTION_OPERATOR__MTRANSFORM:
+				getM_transform().clear();
+				getM_transform().addAll((Collection<? extends String>)newValue);
+				return;
+			case UMLRpyPackage.CGI_MSC_INTERACTION_OPERATOR__MPOLYGON:
+				getM_polygon().clear();
+				getM_polygon().addAll((Collection<? extends String>)newValue);
+				return;
+			case UMLRpyPackage.CGI_MSC_INTERACTION_OPERATOR__MNNAME_FORMAT:
+				setM_nNameFormat((String)newValue);
+				return;
+			case UMLRpyPackage.CGI_MSC_INTERACTION_OPERATOR__MNIS_NAME_FORMAT:
+				setM_nIsNameFormat((String)newValue);
+				return;
+			case UMLRpyPackage.CGI_MSC_INTERACTION_OPERATOR__FRAMESET:
+				setFrameset((String)newValue);
+				return;
+			case UMLRpyPackage.CGI_MSC_INTERACTION_OPERATOR__COMPARTMENTS:
+				getCompartments().clear();
+				getCompartments().addAll((Collection<? extends UnknownType>)newValue);
+				return;
+			case UMLRpyPackage.CGI_MSC_INTERACTION_OPERATOR__MBFRAMESET_MODIFIED:
+				setM_bFramesetModified((String)newValue);
+				return;
+		}
+		super.eSet(featureID, newValue);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void eUnset(int featureID) {
+		switch (featureID) {
+			case UMLRpyPackage.CGI_MSC_INTERACTION_OPERATOR__MOPERATOR_TYPE:
+				setM_operatorType(MOPERATOR_TYPE_EDEFAULT);
+				return;
+			case UMLRpyPackage.CGI_MSC_INTERACTION_OPERATOR__PROPERTIES:
+				setProperties((IPropertyContainer)null);
+				return;
+			case UMLRpyPackage.CGI_MSC_INTERACTION_OPERATOR__MPMODEL_OBJECT:
+				setM_pModelObject((ICombinedFragment)null);
+				return;
+			case UMLRpyPackage.CGI_MSC_INTERACTION_OPERATOR__MPPARENT:
+				setM_pParent((GraphElementsType)null);
+				return;
+			case UMLRpyPackage.CGI_MSC_INTERACTION_OPERATOR__MTRANSFORM:
+				getM_transform().clear();
+				return;
+			case UMLRpyPackage.CGI_MSC_INTERACTION_OPERATOR__MPOLYGON:
+				getM_polygon().clear();
+				return;
+			case UMLRpyPackage.CGI_MSC_INTERACTION_OPERATOR__MNNAME_FORMAT:
+				setM_nNameFormat(MNNAME_FORMAT_EDEFAULT);
+				return;
+			case UMLRpyPackage.CGI_MSC_INTERACTION_OPERATOR__MNIS_NAME_FORMAT:
+				setM_nIsNameFormat(MNIS_NAME_FORMAT_EDEFAULT);
+				return;
+			case UMLRpyPackage.CGI_MSC_INTERACTION_OPERATOR__FRAMESET:
+				setFrameset(FRAMESET_EDEFAULT);
+				return;
+			case UMLRpyPackage.CGI_MSC_INTERACTION_OPERATOR__COMPARTMENTS:
+				getCompartments().clear();
+				return;
+			case UMLRpyPackage.CGI_MSC_INTERACTION_OPERATOR__MBFRAMESET_MODIFIED:
+				setM_bFramesetModified(MBFRAMESET_MODIFIED_EDEFAULT);
+				return;
+		}
+		super.eUnset(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public boolean eIsSet(int featureID) {
+		switch (featureID) {
+			case UMLRpyPackage.CGI_MSC_INTERACTION_OPERATOR__MOPERATOR_TYPE:
+				return MOPERATOR_TYPE_EDEFAULT == null ? m_operatorType != null : !MOPERATOR_TYPE_EDEFAULT.equals(m_operatorType);
+			case UMLRpyPackage.CGI_MSC_INTERACTION_OPERATOR__PROPERTIES:
+				return properties != null;
+			case UMLRpyPackage.CGI_MSC_INTERACTION_OPERATOR__MPMODEL_OBJECT:
+				return m_pModelObject != null;
+			case UMLRpyPackage.CGI_MSC_INTERACTION_OPERATOR__MPPARENT:
+				return m_pParent != null;
+			case UMLRpyPackage.CGI_MSC_INTERACTION_OPERATOR__MTRANSFORM:
+				return m_transform != null && !m_transform.isEmpty();
+			case UMLRpyPackage.CGI_MSC_INTERACTION_OPERATOR__MPOLYGON:
+				return m_polygon != null && !m_polygon.isEmpty();
+			case UMLRpyPackage.CGI_MSC_INTERACTION_OPERATOR__MNNAME_FORMAT:
+				return MNNAME_FORMAT_EDEFAULT == null ? m_nNameFormat != null : !MNNAME_FORMAT_EDEFAULT.equals(m_nNameFormat);
+			case UMLRpyPackage.CGI_MSC_INTERACTION_OPERATOR__MNIS_NAME_FORMAT:
+				return MNIS_NAME_FORMAT_EDEFAULT == null ? m_nIsNameFormat != null : !MNIS_NAME_FORMAT_EDEFAULT.equals(m_nIsNameFormat);
+			case UMLRpyPackage.CGI_MSC_INTERACTION_OPERATOR__FRAMESET:
+				return FRAMESET_EDEFAULT == null ? frameset != null : !FRAMESET_EDEFAULT.equals(frameset);
+			case UMLRpyPackage.CGI_MSC_INTERACTION_OPERATOR__COMPARTMENTS:
+				return compartments != null && !compartments.isEmpty();
+			case UMLRpyPackage.CGI_MSC_INTERACTION_OPERATOR__MBFRAMESET_MODIFIED:
+				return MBFRAMESET_MODIFIED_EDEFAULT == null ? m_bFramesetModified != null : !MBFRAMESET_MODIFIED_EDEFAULT.equals(m_bFramesetModified);
+		}
+		return super.eIsSet(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String toString() {
+		if (eIsProxy()) return super.toString();
+
+		StringBuffer result = new StringBuffer(super.toString());
+		result.append(" (m_operatorType: "); //$NON-NLS-1$
+		result.append(m_operatorType);
+		result.append(", m_transform: "); //$NON-NLS-1$
+		result.append(m_transform);
+		result.append(", m_polygon: "); //$NON-NLS-1$
+		result.append(m_polygon);
+		result.append(", m_nNameFormat: "); //$NON-NLS-1$
+		result.append(m_nNameFormat);
+		result.append(", m_nIsNameFormat: "); //$NON-NLS-1$
+		result.append(m_nIsNameFormat);
+		result.append(", frameset: "); //$NON-NLS-1$
+		result.append(frameset);
+		result.append(", m_bFramesetModified: "); //$NON-NLS-1$
+		result.append(m_bFramesetModified);
+		result.append(')');
+		return result.toString();
+	}
+
+} //CGIMscInteractionOperatorImpl
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/CGIMscMessageImpl.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/CGIMscMessageImpl.java
new file mode 100755
index 0000000..bf4cab5
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/CGIMscMessageImpl.java
@@ -0,0 +1,1182 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl;
+
+import java.util.Collection;
+
+import org.eclipse.emf.common.notify.Notification;
+import org.eclipse.emf.common.notify.NotificationChain;
+
+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.EDataTypeEList;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscColumnCR;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscExecutionOccurrence;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscMessage;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIText;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMessage;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IPropertyContainer;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>CGI Msc Message</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * </p>
+ * <ul>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIMscMessageImpl#getM_pModelObject <em>MpModel Object</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIMscMessageImpl#getM_pParent <em>MpParent</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIMscMessageImpl#getM_pSource <em>MpSource</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIMscMessageImpl#getM_sourceType <em>Msource Type</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIMscMessageImpl#getM_pTarget <em>MpTarget</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIMscMessageImpl#getM_targetType <em>Mtarget Type</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIMscMessageImpl#getM_direction <em>Mdirection</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIMscMessageImpl#getM_rpn <em>Mrpn</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIMscMessageImpl#getM_anglePoint1 <em>Mangle Point1</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIMscMessageImpl#getM_anglePoint2 <em>Mangle Point2</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIMscMessageImpl#getM_line_style <em>Mline style</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIMscMessageImpl#getM_SourcePort <em>MSource Port</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIMscMessageImpl#getM_TargetPort <em>MTarget Port</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIMscMessageImpl#getM_bLeft <em>MbLeft</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIMscMessageImpl#getM_arrow <em>Marrow</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIMscMessageImpl#getProperties <em>Properties</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIMscMessageImpl#getMyState <em>My State</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIMscMessageImpl#getM_pSourceExec <em>MpSource Exec</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIMscMessageImpl#getM_pTargetExec <em>MpTarget Exec</em>}</li>
+ * </ul>
+ *
+ * @generated
+ */
+public class CGIMscMessageImpl extends GraphElementsTypeImpl implements CGIMscMessage {
+	/**
+	 * The cached value of the '{@link #getM_pModelObject() <em>MpModel Object</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_pModelObject()
+	 * @generated
+	 * @ordered
+	 */
+	protected IMessage m_pModelObject;
+
+	/**
+	 * The default value of the '{@link #getM_pParent() <em>MpParent</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_pParent()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String MPPARENT_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getM_pParent() <em>MpParent</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_pParent()
+	 * @generated
+	 * @ordered
+	 */
+	protected String m_pParent = MPPARENT_EDEFAULT;
+
+	/**
+	 * The cached value of the '{@link #getM_pSource() <em>MpSource</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_pSource()
+	 * @generated
+	 * @ordered
+	 */
+	protected CGIMscColumnCR m_pSource;
+
+	/**
+	 * The default value of the '{@link #getM_sourceType() <em>Msource Type</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_sourceType()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String MSOURCE_TYPE_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getM_sourceType() <em>Msource Type</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_sourceType()
+	 * @generated
+	 * @ordered
+	 */
+	protected String m_sourceType = MSOURCE_TYPE_EDEFAULT;
+
+	/**
+	 * The cached value of the '{@link #getM_pTarget() <em>MpTarget</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_pTarget()
+	 * @generated
+	 * @ordered
+	 */
+	protected CGIMscColumnCR m_pTarget;
+
+	/**
+	 * The default value of the '{@link #getM_targetType() <em>Mtarget Type</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_targetType()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String MTARGET_TYPE_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getM_targetType() <em>Mtarget Type</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_targetType()
+	 * @generated
+	 * @ordered
+	 */
+	protected String m_targetType = MTARGET_TYPE_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getM_direction() <em>Mdirection</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_direction()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String MDIRECTION_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getM_direction() <em>Mdirection</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_direction()
+	 * @generated
+	 * @ordered
+	 */
+	protected String m_direction = MDIRECTION_EDEFAULT;
+
+	/**
+	 * The cached value of the '{@link #getM_rpn() <em>Mrpn</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_rpn()
+	 * @generated
+	 * @ordered
+	 */
+	protected CGIText m_rpn;
+
+	/**
+	 * The cached value of the '{@link #getM_anglePoint1() <em>Mangle Point1</em>}' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_anglePoint1()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<String> m_anglePoint1;
+
+	/**
+	 * The cached value of the '{@link #getM_anglePoint2() <em>Mangle Point2</em>}' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_anglePoint2()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<String> m_anglePoint2;
+
+	/**
+	 * The default value of the '{@link #getM_line_style() <em>Mline style</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_line_style()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String MLINE_STYLE_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getM_line_style() <em>Mline style</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_line_style()
+	 * @generated
+	 * @ordered
+	 */
+	protected String m_line_style = MLINE_STYLE_EDEFAULT;
+
+	/**
+	 * The cached value of the '{@link #getM_SourcePort() <em>MSource Port</em>}' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_SourcePort()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<String> m_SourcePort;
+
+	/**
+	 * The cached value of the '{@link #getM_TargetPort() <em>MTarget Port</em>}' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_TargetPort()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<String> m_TargetPort;
+
+	/**
+	 * The default value of the '{@link #getM_bLeft() <em>MbLeft</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_bLeft()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String MBLEFT_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getM_bLeft() <em>MbLeft</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_bLeft()
+	 * @generated
+	 * @ordered
+	 */
+	protected String m_bLeft = MBLEFT_EDEFAULT;
+
+	/**
+	 * The cached value of the '{@link #getM_arrow() <em>Marrow</em>}' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_arrow()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<String> m_arrow;
+
+	/**
+	 * The cached value of the '{@link #getProperties() <em>Properties</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getProperties()
+	 * @generated
+	 * @ordered
+	 */
+	protected IPropertyContainer properties;
+
+	/**
+	 * The default value of the '{@link #getMyState() <em>My State</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getMyState()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String MY_STATE_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getMyState() <em>My State</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getMyState()
+	 * @generated
+	 * @ordered
+	 */
+	protected String myState = MY_STATE_EDEFAULT;
+
+	/**
+	 * The cached value of the '{@link #getM_pSourceExec() <em>MpSource Exec</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_pSourceExec()
+	 * @generated
+	 * @ordered
+	 */
+	protected CGIMscExecutionOccurrence m_pSourceExec;
+
+	/**
+	 * The cached value of the '{@link #getM_pTargetExec() <em>MpTarget Exec</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_pTargetExec()
+	 * @generated
+	 * @ordered
+	 */
+	protected CGIMscExecutionOccurrence m_pTargetExec;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected CGIMscMessageImpl() {
+		super();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EClass eStaticClass() {
+		return UMLRpyPackage.eINSTANCE.getCGIMscMessage();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IMessage getM_pModelObject() {
+		if (m_pModelObject != null && m_pModelObject.eIsProxy()) {
+			InternalEObject oldM_pModelObject = (InternalEObject)m_pModelObject;
+			m_pModelObject = (IMessage)eResolveProxy(oldM_pModelObject);
+			if (m_pModelObject != oldM_pModelObject) {
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.CGI_MSC_MESSAGE__MPMODEL_OBJECT, oldM_pModelObject, m_pModelObject));
+			}
+		}
+		return m_pModelObject;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IMessage basicGetM_pModelObject() {
+		return m_pModelObject;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_pModelObject(IMessage newM_pModelObject) {
+		IMessage oldM_pModelObject = m_pModelObject;
+		m_pModelObject = newM_pModelObject;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_MSC_MESSAGE__MPMODEL_OBJECT, oldM_pModelObject, m_pModelObject));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getM_pParent() {
+		return m_pParent;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_pParent(String newM_pParent) {
+		String oldM_pParent = m_pParent;
+		m_pParent = newM_pParent;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_MSC_MESSAGE__MPPARENT, oldM_pParent, m_pParent));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public CGIMscColumnCR getM_pSource() {
+		if (m_pSource != null && m_pSource.eIsProxy()) {
+			InternalEObject oldM_pSource = (InternalEObject)m_pSource;
+			m_pSource = (CGIMscColumnCR)eResolveProxy(oldM_pSource);
+			if (m_pSource != oldM_pSource) {
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.CGI_MSC_MESSAGE__MPSOURCE, oldM_pSource, m_pSource));
+			}
+		}
+		return m_pSource;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public CGIMscColumnCR basicGetM_pSource() {
+		return m_pSource;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_pSource(CGIMscColumnCR newM_pSource) {
+		CGIMscColumnCR oldM_pSource = m_pSource;
+		m_pSource = newM_pSource;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_MSC_MESSAGE__MPSOURCE, oldM_pSource, m_pSource));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getM_sourceType() {
+		return m_sourceType;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_sourceType(String newM_sourceType) {
+		String oldM_sourceType = m_sourceType;
+		m_sourceType = newM_sourceType;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_MSC_MESSAGE__MSOURCE_TYPE, oldM_sourceType, m_sourceType));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public CGIMscColumnCR getM_pTarget() {
+		if (m_pTarget != null && m_pTarget.eIsProxy()) {
+			InternalEObject oldM_pTarget = (InternalEObject)m_pTarget;
+			m_pTarget = (CGIMscColumnCR)eResolveProxy(oldM_pTarget);
+			if (m_pTarget != oldM_pTarget) {
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.CGI_MSC_MESSAGE__MPTARGET, oldM_pTarget, m_pTarget));
+			}
+		}
+		return m_pTarget;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public CGIMscColumnCR basicGetM_pTarget() {
+		return m_pTarget;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_pTarget(CGIMscColumnCR newM_pTarget) {
+		CGIMscColumnCR oldM_pTarget = m_pTarget;
+		m_pTarget = newM_pTarget;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_MSC_MESSAGE__MPTARGET, oldM_pTarget, m_pTarget));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getM_targetType() {
+		return m_targetType;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_targetType(String newM_targetType) {
+		String oldM_targetType = m_targetType;
+		m_targetType = newM_targetType;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_MSC_MESSAGE__MTARGET_TYPE, oldM_targetType, m_targetType));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getM_direction() {
+		return m_direction;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_direction(String newM_direction) {
+		String oldM_direction = m_direction;
+		m_direction = newM_direction;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_MSC_MESSAGE__MDIRECTION, oldM_direction, m_direction));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public CGIText getM_rpn() {
+		if (m_rpn != null && m_rpn.eIsProxy()) {
+			InternalEObject oldM_rpn = (InternalEObject)m_rpn;
+			m_rpn = (CGIText)eResolveProxy(oldM_rpn);
+			if (m_rpn != oldM_rpn) {
+				InternalEObject newM_rpn = (InternalEObject)m_rpn;
+				NotificationChain msgs = oldM_rpn.eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.CGI_MSC_MESSAGE__MRPN, null, null);
+				if (newM_rpn.eInternalContainer() == null) {
+					msgs = newM_rpn.eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.CGI_MSC_MESSAGE__MRPN, null, msgs);
+				}
+				if (msgs != null) msgs.dispatch();
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.CGI_MSC_MESSAGE__MRPN, oldM_rpn, m_rpn));
+			}
+		}
+		return m_rpn;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public CGIText basicGetM_rpn() {
+		return m_rpn;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public NotificationChain basicSetM_rpn(CGIText newM_rpn, NotificationChain msgs) {
+		CGIText oldM_rpn = m_rpn;
+		m_rpn = newM_rpn;
+		if (eNotificationRequired()) {
+			ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_MSC_MESSAGE__MRPN, oldM_rpn, newM_rpn);
+			if (msgs == null) msgs = notification; else msgs.add(notification);
+		}
+		return msgs;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_rpn(CGIText newM_rpn) {
+		if (newM_rpn != m_rpn) {
+			NotificationChain msgs = null;
+			if (m_rpn != null)
+				msgs = ((InternalEObject)m_rpn).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.CGI_MSC_MESSAGE__MRPN, null, msgs);
+			if (newM_rpn != null)
+				msgs = ((InternalEObject)newM_rpn).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.CGI_MSC_MESSAGE__MRPN, null, msgs);
+			msgs = basicSetM_rpn(newM_rpn, msgs);
+			if (msgs != null) msgs.dispatch();
+		}
+		else if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_MSC_MESSAGE__MRPN, newM_rpn, newM_rpn));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<String> getM_anglePoint1() {
+		if (m_anglePoint1 == null) {
+			m_anglePoint1 = new EDataTypeEList<String>(String.class, this, UMLRpyPackage.CGI_MSC_MESSAGE__MANGLE_POINT1);
+		}
+		return m_anglePoint1;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<String> getM_anglePoint2() {
+		if (m_anglePoint2 == null) {
+			m_anglePoint2 = new EDataTypeEList<String>(String.class, this, UMLRpyPackage.CGI_MSC_MESSAGE__MANGLE_POINT2);
+		}
+		return m_anglePoint2;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getM_line_style() {
+		return m_line_style;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_line_style(String newM_line_style) {
+		String oldM_line_style = m_line_style;
+		m_line_style = newM_line_style;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_MSC_MESSAGE__MLINE_STYLE, oldM_line_style, m_line_style));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<String> getM_SourcePort() {
+		if (m_SourcePort == null) {
+			m_SourcePort = new EDataTypeEList<String>(String.class, this, UMLRpyPackage.CGI_MSC_MESSAGE__MSOURCE_PORT);
+		}
+		return m_SourcePort;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<String> getM_TargetPort() {
+		if (m_TargetPort == null) {
+			m_TargetPort = new EDataTypeEList<String>(String.class, this, UMLRpyPackage.CGI_MSC_MESSAGE__MTARGET_PORT);
+		}
+		return m_TargetPort;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getM_bLeft() {
+		return m_bLeft;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_bLeft(String newM_bLeft) {
+		String oldM_bLeft = m_bLeft;
+		m_bLeft = newM_bLeft;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_MSC_MESSAGE__MBLEFT, oldM_bLeft, m_bLeft));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<String> getM_arrow() {
+		if (m_arrow == null) {
+			m_arrow = new EDataTypeEList<String>(String.class, this, UMLRpyPackage.CGI_MSC_MESSAGE__MARROW);
+		}
+		return m_arrow;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IPropertyContainer getProperties() {
+		if (properties != null && properties.eIsProxy()) {
+			InternalEObject oldProperties = (InternalEObject)properties;
+			properties = (IPropertyContainer)eResolveProxy(oldProperties);
+			if (properties != oldProperties) {
+				InternalEObject newProperties = (InternalEObject)properties;
+				NotificationChain msgs = oldProperties.eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.CGI_MSC_MESSAGE__PROPERTIES, null, null);
+				if (newProperties.eInternalContainer() == null) {
+					msgs = newProperties.eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.CGI_MSC_MESSAGE__PROPERTIES, null, msgs);
+				}
+				if (msgs != null) msgs.dispatch();
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.CGI_MSC_MESSAGE__PROPERTIES, oldProperties, properties));
+			}
+		}
+		return properties;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IPropertyContainer basicGetProperties() {
+		return properties;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public NotificationChain basicSetProperties(IPropertyContainer newProperties, NotificationChain msgs) {
+		IPropertyContainer oldProperties = properties;
+		properties = newProperties;
+		if (eNotificationRequired()) {
+			ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_MSC_MESSAGE__PROPERTIES, oldProperties, newProperties);
+			if (msgs == null) msgs = notification; else msgs.add(notification);
+		}
+		return msgs;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setProperties(IPropertyContainer newProperties) {
+		if (newProperties != properties) {
+			NotificationChain msgs = null;
+			if (properties != null)
+				msgs = ((InternalEObject)properties).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.CGI_MSC_MESSAGE__PROPERTIES, null, msgs);
+			if (newProperties != null)
+				msgs = ((InternalEObject)newProperties).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.CGI_MSC_MESSAGE__PROPERTIES, null, msgs);
+			msgs = basicSetProperties(newProperties, msgs);
+			if (msgs != null) msgs.dispatch();
+		}
+		else if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_MSC_MESSAGE__PROPERTIES, newProperties, newProperties));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getMyState() {
+		return myState;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setMyState(String newMyState) {
+		String oldMyState = myState;
+		myState = newMyState;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_MSC_MESSAGE__MY_STATE, oldMyState, myState));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public CGIMscExecutionOccurrence getM_pSourceExec() {
+		if (m_pSourceExec != null && m_pSourceExec.eIsProxy()) {
+			InternalEObject oldM_pSourceExec = (InternalEObject)m_pSourceExec;
+			m_pSourceExec = (CGIMscExecutionOccurrence)eResolveProxy(oldM_pSourceExec);
+			if (m_pSourceExec != oldM_pSourceExec) {
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.CGI_MSC_MESSAGE__MPSOURCE_EXEC, oldM_pSourceExec, m_pSourceExec));
+			}
+		}
+		return m_pSourceExec;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public CGIMscExecutionOccurrence basicGetM_pSourceExec() {
+		return m_pSourceExec;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_pSourceExec(CGIMscExecutionOccurrence newM_pSourceExec) {
+		CGIMscExecutionOccurrence oldM_pSourceExec = m_pSourceExec;
+		m_pSourceExec = newM_pSourceExec;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_MSC_MESSAGE__MPSOURCE_EXEC, oldM_pSourceExec, m_pSourceExec));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public CGIMscExecutionOccurrence getM_pTargetExec() {
+		if (m_pTargetExec != null && m_pTargetExec.eIsProxy()) {
+			InternalEObject oldM_pTargetExec = (InternalEObject)m_pTargetExec;
+			m_pTargetExec = (CGIMscExecutionOccurrence)eResolveProxy(oldM_pTargetExec);
+			if (m_pTargetExec != oldM_pTargetExec) {
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.CGI_MSC_MESSAGE__MPTARGET_EXEC, oldM_pTargetExec, m_pTargetExec));
+			}
+		}
+		return m_pTargetExec;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public CGIMscExecutionOccurrence basicGetM_pTargetExec() {
+		return m_pTargetExec;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_pTargetExec(CGIMscExecutionOccurrence newM_pTargetExec) {
+		CGIMscExecutionOccurrence oldM_pTargetExec = m_pTargetExec;
+		m_pTargetExec = newM_pTargetExec;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_MSC_MESSAGE__MPTARGET_EXEC, oldM_pTargetExec, m_pTargetExec));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
+		switch (featureID) {
+			case UMLRpyPackage.CGI_MSC_MESSAGE__MRPN:
+				return basicSetM_rpn(null, msgs);
+			case UMLRpyPackage.CGI_MSC_MESSAGE__PROPERTIES:
+				return basicSetProperties(null, msgs);
+		}
+		return super.eInverseRemove(otherEnd, featureID, msgs);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object eGet(int featureID, boolean resolve, boolean coreType) {
+		switch (featureID) {
+			case UMLRpyPackage.CGI_MSC_MESSAGE__MPMODEL_OBJECT:
+				if (resolve) return getM_pModelObject();
+				return basicGetM_pModelObject();
+			case UMLRpyPackage.CGI_MSC_MESSAGE__MPPARENT:
+				return getM_pParent();
+			case UMLRpyPackage.CGI_MSC_MESSAGE__MPSOURCE:
+				if (resolve) return getM_pSource();
+				return basicGetM_pSource();
+			case UMLRpyPackage.CGI_MSC_MESSAGE__MSOURCE_TYPE:
+				return getM_sourceType();
+			case UMLRpyPackage.CGI_MSC_MESSAGE__MPTARGET:
+				if (resolve) return getM_pTarget();
+				return basicGetM_pTarget();
+			case UMLRpyPackage.CGI_MSC_MESSAGE__MTARGET_TYPE:
+				return getM_targetType();
+			case UMLRpyPackage.CGI_MSC_MESSAGE__MDIRECTION:
+				return getM_direction();
+			case UMLRpyPackage.CGI_MSC_MESSAGE__MRPN:
+				if (resolve) return getM_rpn();
+				return basicGetM_rpn();
+			case UMLRpyPackage.CGI_MSC_MESSAGE__MANGLE_POINT1:
+				return getM_anglePoint1();
+			case UMLRpyPackage.CGI_MSC_MESSAGE__MANGLE_POINT2:
+				return getM_anglePoint2();
+			case UMLRpyPackage.CGI_MSC_MESSAGE__MLINE_STYLE:
+				return getM_line_style();
+			case UMLRpyPackage.CGI_MSC_MESSAGE__MSOURCE_PORT:
+				return getM_SourcePort();
+			case UMLRpyPackage.CGI_MSC_MESSAGE__MTARGET_PORT:
+				return getM_TargetPort();
+			case UMLRpyPackage.CGI_MSC_MESSAGE__MBLEFT:
+				return getM_bLeft();
+			case UMLRpyPackage.CGI_MSC_MESSAGE__MARROW:
+				return getM_arrow();
+			case UMLRpyPackage.CGI_MSC_MESSAGE__PROPERTIES:
+				if (resolve) return getProperties();
+				return basicGetProperties();
+			case UMLRpyPackage.CGI_MSC_MESSAGE__MY_STATE:
+				return getMyState();
+			case UMLRpyPackage.CGI_MSC_MESSAGE__MPSOURCE_EXEC:
+				if (resolve) return getM_pSourceExec();
+				return basicGetM_pSourceExec();
+			case UMLRpyPackage.CGI_MSC_MESSAGE__MPTARGET_EXEC:
+				if (resolve) return getM_pTargetExec();
+				return basicGetM_pTargetExec();
+		}
+		return super.eGet(featureID, resolve, coreType);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@SuppressWarnings("unchecked")
+	@Override
+	public void eSet(int featureID, Object newValue) {
+		switch (featureID) {
+			case UMLRpyPackage.CGI_MSC_MESSAGE__MPMODEL_OBJECT:
+				setM_pModelObject((IMessage)newValue);
+				return;
+			case UMLRpyPackage.CGI_MSC_MESSAGE__MPPARENT:
+				setM_pParent((String)newValue);
+				return;
+			case UMLRpyPackage.CGI_MSC_MESSAGE__MPSOURCE:
+				setM_pSource((CGIMscColumnCR)newValue);
+				return;
+			case UMLRpyPackage.CGI_MSC_MESSAGE__MSOURCE_TYPE:
+				setM_sourceType((String)newValue);
+				return;
+			case UMLRpyPackage.CGI_MSC_MESSAGE__MPTARGET:
+				setM_pTarget((CGIMscColumnCR)newValue);
+				return;
+			case UMLRpyPackage.CGI_MSC_MESSAGE__MTARGET_TYPE:
+				setM_targetType((String)newValue);
+				return;
+			case UMLRpyPackage.CGI_MSC_MESSAGE__MDIRECTION:
+				setM_direction((String)newValue);
+				return;
+			case UMLRpyPackage.CGI_MSC_MESSAGE__MRPN:
+				setM_rpn((CGIText)newValue);
+				return;
+			case UMLRpyPackage.CGI_MSC_MESSAGE__MANGLE_POINT1:
+				getM_anglePoint1().clear();
+				getM_anglePoint1().addAll((Collection<? extends String>)newValue);
+				return;
+			case UMLRpyPackage.CGI_MSC_MESSAGE__MANGLE_POINT2:
+				getM_anglePoint2().clear();
+				getM_anglePoint2().addAll((Collection<? extends String>)newValue);
+				return;
+			case UMLRpyPackage.CGI_MSC_MESSAGE__MLINE_STYLE:
+				setM_line_style((String)newValue);
+				return;
+			case UMLRpyPackage.CGI_MSC_MESSAGE__MSOURCE_PORT:
+				getM_SourcePort().clear();
+				getM_SourcePort().addAll((Collection<? extends String>)newValue);
+				return;
+			case UMLRpyPackage.CGI_MSC_MESSAGE__MTARGET_PORT:
+				getM_TargetPort().clear();
+				getM_TargetPort().addAll((Collection<? extends String>)newValue);
+				return;
+			case UMLRpyPackage.CGI_MSC_MESSAGE__MBLEFT:
+				setM_bLeft((String)newValue);
+				return;
+			case UMLRpyPackage.CGI_MSC_MESSAGE__MARROW:
+				getM_arrow().clear();
+				getM_arrow().addAll((Collection<? extends String>)newValue);
+				return;
+			case UMLRpyPackage.CGI_MSC_MESSAGE__PROPERTIES:
+				setProperties((IPropertyContainer)newValue);
+				return;
+			case UMLRpyPackage.CGI_MSC_MESSAGE__MY_STATE:
+				setMyState((String)newValue);
+				return;
+			case UMLRpyPackage.CGI_MSC_MESSAGE__MPSOURCE_EXEC:
+				setM_pSourceExec((CGIMscExecutionOccurrence)newValue);
+				return;
+			case UMLRpyPackage.CGI_MSC_MESSAGE__MPTARGET_EXEC:
+				setM_pTargetExec((CGIMscExecutionOccurrence)newValue);
+				return;
+		}
+		super.eSet(featureID, newValue);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void eUnset(int featureID) {
+		switch (featureID) {
+			case UMLRpyPackage.CGI_MSC_MESSAGE__MPMODEL_OBJECT:
+				setM_pModelObject((IMessage)null);
+				return;
+			case UMLRpyPackage.CGI_MSC_MESSAGE__MPPARENT:
+				setM_pParent(MPPARENT_EDEFAULT);
+				return;
+			case UMLRpyPackage.CGI_MSC_MESSAGE__MPSOURCE:
+				setM_pSource((CGIMscColumnCR)null);
+				return;
+			case UMLRpyPackage.CGI_MSC_MESSAGE__MSOURCE_TYPE:
+				setM_sourceType(MSOURCE_TYPE_EDEFAULT);
+				return;
+			case UMLRpyPackage.CGI_MSC_MESSAGE__MPTARGET:
+				setM_pTarget((CGIMscColumnCR)null);
+				return;
+			case UMLRpyPackage.CGI_MSC_MESSAGE__MTARGET_TYPE:
+				setM_targetType(MTARGET_TYPE_EDEFAULT);
+				return;
+			case UMLRpyPackage.CGI_MSC_MESSAGE__MDIRECTION:
+				setM_direction(MDIRECTION_EDEFAULT);
+				return;
+			case UMLRpyPackage.CGI_MSC_MESSAGE__MRPN:
+				setM_rpn((CGIText)null);
+				return;
+			case UMLRpyPackage.CGI_MSC_MESSAGE__MANGLE_POINT1:
+				getM_anglePoint1().clear();
+				return;
+			case UMLRpyPackage.CGI_MSC_MESSAGE__MANGLE_POINT2:
+				getM_anglePoint2().clear();
+				return;
+			case UMLRpyPackage.CGI_MSC_MESSAGE__MLINE_STYLE:
+				setM_line_style(MLINE_STYLE_EDEFAULT);
+				return;
+			case UMLRpyPackage.CGI_MSC_MESSAGE__MSOURCE_PORT:
+				getM_SourcePort().clear();
+				return;
+			case UMLRpyPackage.CGI_MSC_MESSAGE__MTARGET_PORT:
+				getM_TargetPort().clear();
+				return;
+			case UMLRpyPackage.CGI_MSC_MESSAGE__MBLEFT:
+				setM_bLeft(MBLEFT_EDEFAULT);
+				return;
+			case UMLRpyPackage.CGI_MSC_MESSAGE__MARROW:
+				getM_arrow().clear();
+				return;
+			case UMLRpyPackage.CGI_MSC_MESSAGE__PROPERTIES:
+				setProperties((IPropertyContainer)null);
+				return;
+			case UMLRpyPackage.CGI_MSC_MESSAGE__MY_STATE:
+				setMyState(MY_STATE_EDEFAULT);
+				return;
+			case UMLRpyPackage.CGI_MSC_MESSAGE__MPSOURCE_EXEC:
+				setM_pSourceExec((CGIMscExecutionOccurrence)null);
+				return;
+			case UMLRpyPackage.CGI_MSC_MESSAGE__MPTARGET_EXEC:
+				setM_pTargetExec((CGIMscExecutionOccurrence)null);
+				return;
+		}
+		super.eUnset(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public boolean eIsSet(int featureID) {
+		switch (featureID) {
+			case UMLRpyPackage.CGI_MSC_MESSAGE__MPMODEL_OBJECT:
+				return m_pModelObject != null;
+			case UMLRpyPackage.CGI_MSC_MESSAGE__MPPARENT:
+				return MPPARENT_EDEFAULT == null ? m_pParent != null : !MPPARENT_EDEFAULT.equals(m_pParent);
+			case UMLRpyPackage.CGI_MSC_MESSAGE__MPSOURCE:
+				return m_pSource != null;
+			case UMLRpyPackage.CGI_MSC_MESSAGE__MSOURCE_TYPE:
+				return MSOURCE_TYPE_EDEFAULT == null ? m_sourceType != null : !MSOURCE_TYPE_EDEFAULT.equals(m_sourceType);
+			case UMLRpyPackage.CGI_MSC_MESSAGE__MPTARGET:
+				return m_pTarget != null;
+			case UMLRpyPackage.CGI_MSC_MESSAGE__MTARGET_TYPE:
+				return MTARGET_TYPE_EDEFAULT == null ? m_targetType != null : !MTARGET_TYPE_EDEFAULT.equals(m_targetType);
+			case UMLRpyPackage.CGI_MSC_MESSAGE__MDIRECTION:
+				return MDIRECTION_EDEFAULT == null ? m_direction != null : !MDIRECTION_EDEFAULT.equals(m_direction);
+			case UMLRpyPackage.CGI_MSC_MESSAGE__MRPN:
+				return m_rpn != null;
+			case UMLRpyPackage.CGI_MSC_MESSAGE__MANGLE_POINT1:
+				return m_anglePoint1 != null && !m_anglePoint1.isEmpty();
+			case UMLRpyPackage.CGI_MSC_MESSAGE__MANGLE_POINT2:
+				return m_anglePoint2 != null && !m_anglePoint2.isEmpty();
+			case UMLRpyPackage.CGI_MSC_MESSAGE__MLINE_STYLE:
+				return MLINE_STYLE_EDEFAULT == null ? m_line_style != null : !MLINE_STYLE_EDEFAULT.equals(m_line_style);
+			case UMLRpyPackage.CGI_MSC_MESSAGE__MSOURCE_PORT:
+				return m_SourcePort != null && !m_SourcePort.isEmpty();
+			case UMLRpyPackage.CGI_MSC_MESSAGE__MTARGET_PORT:
+				return m_TargetPort != null && !m_TargetPort.isEmpty();
+			case UMLRpyPackage.CGI_MSC_MESSAGE__MBLEFT:
+				return MBLEFT_EDEFAULT == null ? m_bLeft != null : !MBLEFT_EDEFAULT.equals(m_bLeft);
+			case UMLRpyPackage.CGI_MSC_MESSAGE__MARROW:
+				return m_arrow != null && !m_arrow.isEmpty();
+			case UMLRpyPackage.CGI_MSC_MESSAGE__PROPERTIES:
+				return properties != null;
+			case UMLRpyPackage.CGI_MSC_MESSAGE__MY_STATE:
+				return MY_STATE_EDEFAULT == null ? myState != null : !MY_STATE_EDEFAULT.equals(myState);
+			case UMLRpyPackage.CGI_MSC_MESSAGE__MPSOURCE_EXEC:
+				return m_pSourceExec != null;
+			case UMLRpyPackage.CGI_MSC_MESSAGE__MPTARGET_EXEC:
+				return m_pTargetExec != null;
+		}
+		return super.eIsSet(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String toString() {
+		if (eIsProxy()) return super.toString();
+
+		StringBuffer result = new StringBuffer(super.toString());
+		result.append(" (m_pParent: "); //$NON-NLS-1$
+		result.append(m_pParent);
+		result.append(", m_sourceType: "); //$NON-NLS-1$
+		result.append(m_sourceType);
+		result.append(", m_targetType: "); //$NON-NLS-1$
+		result.append(m_targetType);
+		result.append(", m_direction: "); //$NON-NLS-1$
+		result.append(m_direction);
+		result.append(", m_anglePoint1: "); //$NON-NLS-1$
+		result.append(m_anglePoint1);
+		result.append(", m_anglePoint2: "); //$NON-NLS-1$
+		result.append(m_anglePoint2);
+		result.append(", m_line_style: "); //$NON-NLS-1$
+		result.append(m_line_style);
+		result.append(", m_SourcePort: "); //$NON-NLS-1$
+		result.append(m_SourcePort);
+		result.append(", m_TargetPort: "); //$NON-NLS-1$
+		result.append(m_TargetPort);
+		result.append(", m_bLeft: "); //$NON-NLS-1$
+		result.append(m_bLeft);
+		result.append(", m_arrow: "); //$NON-NLS-1$
+		result.append(m_arrow);
+		result.append(", myState: "); //$NON-NLS-1$
+		result.append(myState);
+		result.append(')');
+		return result.toString();
+	}
+
+} //CGIMscMessageImpl
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/CGIObjectInstanceImpl.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/CGIObjectInstanceImpl.java
new file mode 100755
index 0000000..8a818b2
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/CGIObjectInstanceImpl.java
@@ -0,0 +1,1046 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl;
+
+import java.util.Collection;
+
+import org.eclipse.emf.common.notify.Notification;
+import org.eclipse.emf.common.notify.NotificationChain;
+
+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.EDataTypeEList;
+import org.eclipse.emf.ecore.util.EObjectContainmentEList;
+import org.eclipse.emf.ecore.util.EObjectResolvingEList;
+import org.eclipse.emf.ecore.util.InternalEList;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIImageData;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIObjectInstance;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIText;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CompartmentsType;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IPropertyContainer;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IUnit;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.M_pModelObjectType;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.M_pRootType;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.OperationsType;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>CGI Object Instance</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * </p>
+ * <ul>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIObjectInstanceImpl#getM_pModelObject <em>MpModel Object</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIObjectInstanceImpl#getM_pParent <em>MpParent</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIObjectInstanceImpl#getM_transform <em>Mtransform</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIObjectInstanceImpl#getM_AdditionalLabel <em>MAdditional Label</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIObjectInstanceImpl#getM_polygon <em>Mpolygon</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIObjectInstanceImpl#getM_nNameFormat <em>MnName Format</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIObjectInstanceImpl#getM_nIsNameFormat <em>MnIs Name Format</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIObjectInstanceImpl#getFrameset <em>Frameset</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIObjectInstanceImpl#getCompartments <em>Compartments</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIObjectInstanceImpl#getM_multiplicity <em>Mmultiplicity</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIObjectInstanceImpl#getProperties <em>Properties</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIObjectInstanceImpl#getOperations <em>Operations</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIObjectInstanceImpl#getAttrs <em>Attrs</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIObjectInstanceImpl#getM_bFramesetModified <em>MbFrameset Modified</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIObjectInstanceImpl#getM_pImageViewData <em>MpImage View Data</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIObjectInstanceImpl#getM_bIsMisplaced <em>MbIs Misplaced</em>}</li>
+ * </ul>
+ *
+ * @generated
+ */
+public class CGIObjectInstanceImpl extends GraphElementsTypeImpl implements CGIObjectInstance {
+	/**
+	 * The cached value of the '{@link #getM_pModelObject() <em>MpModel Object</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_pModelObject()
+	 * @generated
+	 * @ordered
+	 */
+	protected M_pModelObjectType m_pModelObject;
+
+	/**
+	 * The cached value of the '{@link #getM_pParent() <em>MpParent</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_pParent()
+	 * @generated
+	 * @ordered
+	 */
+	protected M_pRootType m_pParent;
+
+	/**
+	 * The cached value of the '{@link #getM_transform() <em>Mtransform</em>}' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_transform()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<String> m_transform;
+
+	/**
+	 * The cached value of the '{@link #getM_AdditionalLabel() <em>MAdditional Label</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_AdditionalLabel()
+	 * @generated
+	 * @ordered
+	 */
+	protected CGIText m_AdditionalLabel;
+
+	/**
+	 * The cached value of the '{@link #getM_polygon() <em>Mpolygon</em>}' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_polygon()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<String> m_polygon;
+
+	/**
+	 * The default value of the '{@link #getM_nNameFormat() <em>MnName Format</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_nNameFormat()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String MNNAME_FORMAT_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getM_nNameFormat() <em>MnName Format</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_nNameFormat()
+	 * @generated
+	 * @ordered
+	 */
+	protected String m_nNameFormat = MNNAME_FORMAT_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getM_nIsNameFormat() <em>MnIs Name Format</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_nIsNameFormat()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String MNIS_NAME_FORMAT_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getM_nIsNameFormat() <em>MnIs Name Format</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_nIsNameFormat()
+	 * @generated
+	 * @ordered
+	 */
+	protected String m_nIsNameFormat = MNIS_NAME_FORMAT_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getFrameset() <em>Frameset</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getFrameset()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String FRAMESET_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getFrameset() <em>Frameset</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getFrameset()
+	 * @generated
+	 * @ordered
+	 */
+	protected String frameset = FRAMESET_EDEFAULT;
+
+	/**
+	 * The cached value of the '{@link #getCompartments() <em>Compartments</em>}' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getCompartments()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<CompartmentsType> compartments;
+
+	/**
+	 * The cached value of the '{@link #getM_multiplicity() <em>Mmultiplicity</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_multiplicity()
+	 * @generated
+	 * @ordered
+	 */
+	protected CGIText m_multiplicity;
+
+	/**
+	 * The cached value of the '{@link #getProperties() <em>Properties</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getProperties()
+	 * @generated
+	 * @ordered
+	 */
+	protected IPropertyContainer properties;
+
+	/**
+	 * The cached value of the '{@link #getOperations() <em>Operations</em>}' reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getOperations()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<OperationsType> operations;
+
+	/**
+	 * The cached value of the '{@link #getAttrs() <em>Attrs</em>}' reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getAttrs()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<IUnit> attrs;
+
+	/**
+	 * The default value of the '{@link #getM_bFramesetModified() <em>MbFrameset Modified</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_bFramesetModified()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String MBFRAMESET_MODIFIED_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getM_bFramesetModified() <em>MbFrameset Modified</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_bFramesetModified()
+	 * @generated
+	 * @ordered
+	 */
+	protected String m_bFramesetModified = MBFRAMESET_MODIFIED_EDEFAULT;
+
+	/**
+	 * The cached value of the '{@link #getM_pImageViewData() <em>MpImage View Data</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_pImageViewData()
+	 * @generated
+	 * @ordered
+	 */
+	protected CGIImageData m_pImageViewData;
+
+	/**
+	 * The default value of the '{@link #getM_bIsMisplaced() <em>MbIs Misplaced</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_bIsMisplaced()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String MBIS_MISPLACED_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getM_bIsMisplaced() <em>MbIs Misplaced</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_bIsMisplaced()
+	 * @generated
+	 * @ordered
+	 */
+	protected String m_bIsMisplaced = MBIS_MISPLACED_EDEFAULT;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected CGIObjectInstanceImpl() {
+		super();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EClass eStaticClass() {
+		return UMLRpyPackage.eINSTANCE.getCGIObjectInstance();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public M_pModelObjectType getM_pModelObject() {
+		if (m_pModelObject != null && m_pModelObject.eIsProxy()) {
+			InternalEObject oldM_pModelObject = (InternalEObject)m_pModelObject;
+			m_pModelObject = (M_pModelObjectType)eResolveProxy(oldM_pModelObject);
+			if (m_pModelObject != oldM_pModelObject) {
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.CGI_OBJECT_INSTANCE__MPMODEL_OBJECT, oldM_pModelObject, m_pModelObject));
+			}
+		}
+		return m_pModelObject;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public M_pModelObjectType basicGetM_pModelObject() {
+		return m_pModelObject;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_pModelObject(M_pModelObjectType newM_pModelObject) {
+		M_pModelObjectType oldM_pModelObject = m_pModelObject;
+		m_pModelObject = newM_pModelObject;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_OBJECT_INSTANCE__MPMODEL_OBJECT, oldM_pModelObject, m_pModelObject));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public M_pRootType getM_pParent() {
+		if (m_pParent != null && m_pParent.eIsProxy()) {
+			InternalEObject oldM_pParent = (InternalEObject)m_pParent;
+			m_pParent = (M_pRootType)eResolveProxy(oldM_pParent);
+			if (m_pParent != oldM_pParent) {
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.CGI_OBJECT_INSTANCE__MPPARENT, oldM_pParent, m_pParent));
+			}
+		}
+		return m_pParent;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public M_pRootType basicGetM_pParent() {
+		return m_pParent;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_pParent(M_pRootType newM_pParent) {
+		M_pRootType oldM_pParent = m_pParent;
+		m_pParent = newM_pParent;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_OBJECT_INSTANCE__MPPARENT, oldM_pParent, m_pParent));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<String> getM_transform() {
+		if (m_transform == null) {
+			m_transform = new EDataTypeEList<String>(String.class, this, UMLRpyPackage.CGI_OBJECT_INSTANCE__MTRANSFORM);
+		}
+		return m_transform;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public CGIText getM_AdditionalLabel() {
+		if (m_AdditionalLabel != null && m_AdditionalLabel.eIsProxy()) {
+			InternalEObject oldM_AdditionalLabel = (InternalEObject)m_AdditionalLabel;
+			m_AdditionalLabel = (CGIText)eResolveProxy(oldM_AdditionalLabel);
+			if (m_AdditionalLabel != oldM_AdditionalLabel) {
+				InternalEObject newM_AdditionalLabel = (InternalEObject)m_AdditionalLabel;
+				NotificationChain msgs = oldM_AdditionalLabel.eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.CGI_OBJECT_INSTANCE__MADDITIONAL_LABEL, null, null);
+				if (newM_AdditionalLabel.eInternalContainer() == null) {
+					msgs = newM_AdditionalLabel.eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.CGI_OBJECT_INSTANCE__MADDITIONAL_LABEL, null, msgs);
+				}
+				if (msgs != null) msgs.dispatch();
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.CGI_OBJECT_INSTANCE__MADDITIONAL_LABEL, oldM_AdditionalLabel, m_AdditionalLabel));
+			}
+		}
+		return m_AdditionalLabel;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public CGIText basicGetM_AdditionalLabel() {
+		return m_AdditionalLabel;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public NotificationChain basicSetM_AdditionalLabel(CGIText newM_AdditionalLabel, NotificationChain msgs) {
+		CGIText oldM_AdditionalLabel = m_AdditionalLabel;
+		m_AdditionalLabel = newM_AdditionalLabel;
+		if (eNotificationRequired()) {
+			ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_OBJECT_INSTANCE__MADDITIONAL_LABEL, oldM_AdditionalLabel, newM_AdditionalLabel);
+			if (msgs == null) msgs = notification; else msgs.add(notification);
+		}
+		return msgs;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_AdditionalLabel(CGIText newM_AdditionalLabel) {
+		if (newM_AdditionalLabel != m_AdditionalLabel) {
+			NotificationChain msgs = null;
+			if (m_AdditionalLabel != null)
+				msgs = ((InternalEObject)m_AdditionalLabel).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.CGI_OBJECT_INSTANCE__MADDITIONAL_LABEL, null, msgs);
+			if (newM_AdditionalLabel != null)
+				msgs = ((InternalEObject)newM_AdditionalLabel).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.CGI_OBJECT_INSTANCE__MADDITIONAL_LABEL, null, msgs);
+			msgs = basicSetM_AdditionalLabel(newM_AdditionalLabel, msgs);
+			if (msgs != null) msgs.dispatch();
+		}
+		else if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_OBJECT_INSTANCE__MADDITIONAL_LABEL, newM_AdditionalLabel, newM_AdditionalLabel));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<String> getM_polygon() {
+		if (m_polygon == null) {
+			m_polygon = new EDataTypeEList<String>(String.class, this, UMLRpyPackage.CGI_OBJECT_INSTANCE__MPOLYGON);
+		}
+		return m_polygon;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getM_nNameFormat() {
+		return m_nNameFormat;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_nNameFormat(String newM_nNameFormat) {
+		String oldM_nNameFormat = m_nNameFormat;
+		m_nNameFormat = newM_nNameFormat;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_OBJECT_INSTANCE__MNNAME_FORMAT, oldM_nNameFormat, m_nNameFormat));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getM_nIsNameFormat() {
+		return m_nIsNameFormat;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_nIsNameFormat(String newM_nIsNameFormat) {
+		String oldM_nIsNameFormat = m_nIsNameFormat;
+		m_nIsNameFormat = newM_nIsNameFormat;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_OBJECT_INSTANCE__MNIS_NAME_FORMAT, oldM_nIsNameFormat, m_nIsNameFormat));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getFrameset() {
+		return frameset;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setFrameset(String newFrameset) {
+		String oldFrameset = frameset;
+		frameset = newFrameset;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_OBJECT_INSTANCE__FRAMESET, oldFrameset, frameset));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<CompartmentsType> getCompartments() {
+		if (compartments == null) {
+			compartments = new EObjectContainmentEList.Resolving<CompartmentsType>(CompartmentsType.class, this, UMLRpyPackage.CGI_OBJECT_INSTANCE__COMPARTMENTS);
+		}
+		return compartments;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public CGIText getM_multiplicity() {
+		if (m_multiplicity != null && m_multiplicity.eIsProxy()) {
+			InternalEObject oldM_multiplicity = (InternalEObject)m_multiplicity;
+			m_multiplicity = (CGIText)eResolveProxy(oldM_multiplicity);
+			if (m_multiplicity != oldM_multiplicity) {
+				InternalEObject newM_multiplicity = (InternalEObject)m_multiplicity;
+				NotificationChain msgs = oldM_multiplicity.eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.CGI_OBJECT_INSTANCE__MMULTIPLICITY, null, null);
+				if (newM_multiplicity.eInternalContainer() == null) {
+					msgs = newM_multiplicity.eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.CGI_OBJECT_INSTANCE__MMULTIPLICITY, null, msgs);
+				}
+				if (msgs != null) msgs.dispatch();
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.CGI_OBJECT_INSTANCE__MMULTIPLICITY, oldM_multiplicity, m_multiplicity));
+			}
+		}
+		return m_multiplicity;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public CGIText basicGetM_multiplicity() {
+		return m_multiplicity;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public NotificationChain basicSetM_multiplicity(CGIText newM_multiplicity, NotificationChain msgs) {
+		CGIText oldM_multiplicity = m_multiplicity;
+		m_multiplicity = newM_multiplicity;
+		if (eNotificationRequired()) {
+			ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_OBJECT_INSTANCE__MMULTIPLICITY, oldM_multiplicity, newM_multiplicity);
+			if (msgs == null) msgs = notification; else msgs.add(notification);
+		}
+		return msgs;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_multiplicity(CGIText newM_multiplicity) {
+		if (newM_multiplicity != m_multiplicity) {
+			NotificationChain msgs = null;
+			if (m_multiplicity != null)
+				msgs = ((InternalEObject)m_multiplicity).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.CGI_OBJECT_INSTANCE__MMULTIPLICITY, null, msgs);
+			if (newM_multiplicity != null)
+				msgs = ((InternalEObject)newM_multiplicity).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.CGI_OBJECT_INSTANCE__MMULTIPLICITY, null, msgs);
+			msgs = basicSetM_multiplicity(newM_multiplicity, msgs);
+			if (msgs != null) msgs.dispatch();
+		}
+		else if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_OBJECT_INSTANCE__MMULTIPLICITY, newM_multiplicity, newM_multiplicity));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IPropertyContainer getProperties() {
+		if (properties != null && properties.eIsProxy()) {
+			InternalEObject oldProperties = (InternalEObject)properties;
+			properties = (IPropertyContainer)eResolveProxy(oldProperties);
+			if (properties != oldProperties) {
+				InternalEObject newProperties = (InternalEObject)properties;
+				NotificationChain msgs = oldProperties.eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.CGI_OBJECT_INSTANCE__PROPERTIES, null, null);
+				if (newProperties.eInternalContainer() == null) {
+					msgs = newProperties.eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.CGI_OBJECT_INSTANCE__PROPERTIES, null, msgs);
+				}
+				if (msgs != null) msgs.dispatch();
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.CGI_OBJECT_INSTANCE__PROPERTIES, oldProperties, properties));
+			}
+		}
+		return properties;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IPropertyContainer basicGetProperties() {
+		return properties;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public NotificationChain basicSetProperties(IPropertyContainer newProperties, NotificationChain msgs) {
+		IPropertyContainer oldProperties = properties;
+		properties = newProperties;
+		if (eNotificationRequired()) {
+			ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_OBJECT_INSTANCE__PROPERTIES, oldProperties, newProperties);
+			if (msgs == null) msgs = notification; else msgs.add(notification);
+		}
+		return msgs;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setProperties(IPropertyContainer newProperties) {
+		if (newProperties != properties) {
+			NotificationChain msgs = null;
+			if (properties != null)
+				msgs = ((InternalEObject)properties).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.CGI_OBJECT_INSTANCE__PROPERTIES, null, msgs);
+			if (newProperties != null)
+				msgs = ((InternalEObject)newProperties).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.CGI_OBJECT_INSTANCE__PROPERTIES, null, msgs);
+			msgs = basicSetProperties(newProperties, msgs);
+			if (msgs != null) msgs.dispatch();
+		}
+		else if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_OBJECT_INSTANCE__PROPERTIES, newProperties, newProperties));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<OperationsType> getOperations() {
+		if (operations == null) {
+			operations = new EObjectResolvingEList<OperationsType>(OperationsType.class, this, UMLRpyPackage.CGI_OBJECT_INSTANCE__OPERATIONS);
+		}
+		return operations;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<IUnit> getAttrs() {
+		if (attrs == null) {
+			attrs = new EObjectResolvingEList<IUnit>(IUnit.class, this, UMLRpyPackage.CGI_OBJECT_INSTANCE__ATTRS);
+		}
+		return attrs;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getM_bFramesetModified() {
+		return m_bFramesetModified;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_bFramesetModified(String newM_bFramesetModified) {
+		String oldM_bFramesetModified = m_bFramesetModified;
+		m_bFramesetModified = newM_bFramesetModified;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_OBJECT_INSTANCE__MBFRAMESET_MODIFIED, oldM_bFramesetModified, m_bFramesetModified));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public CGIImageData getM_pImageViewData() {
+		if (m_pImageViewData != null && m_pImageViewData.eIsProxy()) {
+			InternalEObject oldM_pImageViewData = (InternalEObject)m_pImageViewData;
+			m_pImageViewData = (CGIImageData)eResolveProxy(oldM_pImageViewData);
+			if (m_pImageViewData != oldM_pImageViewData) {
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.CGI_OBJECT_INSTANCE__MPIMAGE_VIEW_DATA, oldM_pImageViewData, m_pImageViewData));
+			}
+		}
+		return m_pImageViewData;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public CGIImageData basicGetM_pImageViewData() {
+		return m_pImageViewData;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_pImageViewData(CGIImageData newM_pImageViewData) {
+		CGIImageData oldM_pImageViewData = m_pImageViewData;
+		m_pImageViewData = newM_pImageViewData;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_OBJECT_INSTANCE__MPIMAGE_VIEW_DATA, oldM_pImageViewData, m_pImageViewData));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getM_bIsMisplaced() {
+		return m_bIsMisplaced;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_bIsMisplaced(String newM_bIsMisplaced) {
+		String oldM_bIsMisplaced = m_bIsMisplaced;
+		m_bIsMisplaced = newM_bIsMisplaced;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_OBJECT_INSTANCE__MBIS_MISPLACED, oldM_bIsMisplaced, m_bIsMisplaced));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
+		switch (featureID) {
+			case UMLRpyPackage.CGI_OBJECT_INSTANCE__MADDITIONAL_LABEL:
+				return basicSetM_AdditionalLabel(null, msgs);
+			case UMLRpyPackage.CGI_OBJECT_INSTANCE__COMPARTMENTS:
+				return ((InternalEList<?>)getCompartments()).basicRemove(otherEnd, msgs);
+			case UMLRpyPackage.CGI_OBJECT_INSTANCE__MMULTIPLICITY:
+				return basicSetM_multiplicity(null, msgs);
+			case UMLRpyPackage.CGI_OBJECT_INSTANCE__PROPERTIES:
+				return basicSetProperties(null, msgs);
+		}
+		return super.eInverseRemove(otherEnd, featureID, msgs);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object eGet(int featureID, boolean resolve, boolean coreType) {
+		switch (featureID) {
+			case UMLRpyPackage.CGI_OBJECT_INSTANCE__MPMODEL_OBJECT:
+				if (resolve) return getM_pModelObject();
+				return basicGetM_pModelObject();
+			case UMLRpyPackage.CGI_OBJECT_INSTANCE__MPPARENT:
+				if (resolve) return getM_pParent();
+				return basicGetM_pParent();
+			case UMLRpyPackage.CGI_OBJECT_INSTANCE__MTRANSFORM:
+				return getM_transform();
+			case UMLRpyPackage.CGI_OBJECT_INSTANCE__MADDITIONAL_LABEL:
+				if (resolve) return getM_AdditionalLabel();
+				return basicGetM_AdditionalLabel();
+			case UMLRpyPackage.CGI_OBJECT_INSTANCE__MPOLYGON:
+				return getM_polygon();
+			case UMLRpyPackage.CGI_OBJECT_INSTANCE__MNNAME_FORMAT:
+				return getM_nNameFormat();
+			case UMLRpyPackage.CGI_OBJECT_INSTANCE__MNIS_NAME_FORMAT:
+				return getM_nIsNameFormat();
+			case UMLRpyPackage.CGI_OBJECT_INSTANCE__FRAMESET:
+				return getFrameset();
+			case UMLRpyPackage.CGI_OBJECT_INSTANCE__COMPARTMENTS:
+				return getCompartments();
+			case UMLRpyPackage.CGI_OBJECT_INSTANCE__MMULTIPLICITY:
+				if (resolve) return getM_multiplicity();
+				return basicGetM_multiplicity();
+			case UMLRpyPackage.CGI_OBJECT_INSTANCE__PROPERTIES:
+				if (resolve) return getProperties();
+				return basicGetProperties();
+			case UMLRpyPackage.CGI_OBJECT_INSTANCE__OPERATIONS:
+				return getOperations();
+			case UMLRpyPackage.CGI_OBJECT_INSTANCE__ATTRS:
+				return getAttrs();
+			case UMLRpyPackage.CGI_OBJECT_INSTANCE__MBFRAMESET_MODIFIED:
+				return getM_bFramesetModified();
+			case UMLRpyPackage.CGI_OBJECT_INSTANCE__MPIMAGE_VIEW_DATA:
+				if (resolve) return getM_pImageViewData();
+				return basicGetM_pImageViewData();
+			case UMLRpyPackage.CGI_OBJECT_INSTANCE__MBIS_MISPLACED:
+				return getM_bIsMisplaced();
+		}
+		return super.eGet(featureID, resolve, coreType);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@SuppressWarnings("unchecked")
+	@Override
+	public void eSet(int featureID, Object newValue) {
+		switch (featureID) {
+			case UMLRpyPackage.CGI_OBJECT_INSTANCE__MPMODEL_OBJECT:
+				setM_pModelObject((M_pModelObjectType)newValue);
+				return;
+			case UMLRpyPackage.CGI_OBJECT_INSTANCE__MPPARENT:
+				setM_pParent((M_pRootType)newValue);
+				return;
+			case UMLRpyPackage.CGI_OBJECT_INSTANCE__MTRANSFORM:
+				getM_transform().clear();
+				getM_transform().addAll((Collection<? extends String>)newValue);
+				return;
+			case UMLRpyPackage.CGI_OBJECT_INSTANCE__MADDITIONAL_LABEL:
+				setM_AdditionalLabel((CGIText)newValue);
+				return;
+			case UMLRpyPackage.CGI_OBJECT_INSTANCE__MPOLYGON:
+				getM_polygon().clear();
+				getM_polygon().addAll((Collection<? extends String>)newValue);
+				return;
+			case UMLRpyPackage.CGI_OBJECT_INSTANCE__MNNAME_FORMAT:
+				setM_nNameFormat((String)newValue);
+				return;
+			case UMLRpyPackage.CGI_OBJECT_INSTANCE__MNIS_NAME_FORMAT:
+				setM_nIsNameFormat((String)newValue);
+				return;
+			case UMLRpyPackage.CGI_OBJECT_INSTANCE__FRAMESET:
+				setFrameset((String)newValue);
+				return;
+			case UMLRpyPackage.CGI_OBJECT_INSTANCE__COMPARTMENTS:
+				getCompartments().clear();
+				getCompartments().addAll((Collection<? extends CompartmentsType>)newValue);
+				return;
+			case UMLRpyPackage.CGI_OBJECT_INSTANCE__MMULTIPLICITY:
+				setM_multiplicity((CGIText)newValue);
+				return;
+			case UMLRpyPackage.CGI_OBJECT_INSTANCE__PROPERTIES:
+				setProperties((IPropertyContainer)newValue);
+				return;
+			case UMLRpyPackage.CGI_OBJECT_INSTANCE__OPERATIONS:
+				getOperations().clear();
+				getOperations().addAll((Collection<? extends OperationsType>)newValue);
+				return;
+			case UMLRpyPackage.CGI_OBJECT_INSTANCE__ATTRS:
+				getAttrs().clear();
+				getAttrs().addAll((Collection<? extends IUnit>)newValue);
+				return;
+			case UMLRpyPackage.CGI_OBJECT_INSTANCE__MBFRAMESET_MODIFIED:
+				setM_bFramesetModified((String)newValue);
+				return;
+			case UMLRpyPackage.CGI_OBJECT_INSTANCE__MPIMAGE_VIEW_DATA:
+				setM_pImageViewData((CGIImageData)newValue);
+				return;
+			case UMLRpyPackage.CGI_OBJECT_INSTANCE__MBIS_MISPLACED:
+				setM_bIsMisplaced((String)newValue);
+				return;
+		}
+		super.eSet(featureID, newValue);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void eUnset(int featureID) {
+		switch (featureID) {
+			case UMLRpyPackage.CGI_OBJECT_INSTANCE__MPMODEL_OBJECT:
+				setM_pModelObject((M_pModelObjectType)null);
+				return;
+			case UMLRpyPackage.CGI_OBJECT_INSTANCE__MPPARENT:
+				setM_pParent((M_pRootType)null);
+				return;
+			case UMLRpyPackage.CGI_OBJECT_INSTANCE__MTRANSFORM:
+				getM_transform().clear();
+				return;
+			case UMLRpyPackage.CGI_OBJECT_INSTANCE__MADDITIONAL_LABEL:
+				setM_AdditionalLabel((CGIText)null);
+				return;
+			case UMLRpyPackage.CGI_OBJECT_INSTANCE__MPOLYGON:
+				getM_polygon().clear();
+				return;
+			case UMLRpyPackage.CGI_OBJECT_INSTANCE__MNNAME_FORMAT:
+				setM_nNameFormat(MNNAME_FORMAT_EDEFAULT);
+				return;
+			case UMLRpyPackage.CGI_OBJECT_INSTANCE__MNIS_NAME_FORMAT:
+				setM_nIsNameFormat(MNIS_NAME_FORMAT_EDEFAULT);
+				return;
+			case UMLRpyPackage.CGI_OBJECT_INSTANCE__FRAMESET:
+				setFrameset(FRAMESET_EDEFAULT);
+				return;
+			case UMLRpyPackage.CGI_OBJECT_INSTANCE__COMPARTMENTS:
+				getCompartments().clear();
+				return;
+			case UMLRpyPackage.CGI_OBJECT_INSTANCE__MMULTIPLICITY:
+				setM_multiplicity((CGIText)null);
+				return;
+			case UMLRpyPackage.CGI_OBJECT_INSTANCE__PROPERTIES:
+				setProperties((IPropertyContainer)null);
+				return;
+			case UMLRpyPackage.CGI_OBJECT_INSTANCE__OPERATIONS:
+				getOperations().clear();
+				return;
+			case UMLRpyPackage.CGI_OBJECT_INSTANCE__ATTRS:
+				getAttrs().clear();
+				return;
+			case UMLRpyPackage.CGI_OBJECT_INSTANCE__MBFRAMESET_MODIFIED:
+				setM_bFramesetModified(MBFRAMESET_MODIFIED_EDEFAULT);
+				return;
+			case UMLRpyPackage.CGI_OBJECT_INSTANCE__MPIMAGE_VIEW_DATA:
+				setM_pImageViewData((CGIImageData)null);
+				return;
+			case UMLRpyPackage.CGI_OBJECT_INSTANCE__MBIS_MISPLACED:
+				setM_bIsMisplaced(MBIS_MISPLACED_EDEFAULT);
+				return;
+		}
+		super.eUnset(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public boolean eIsSet(int featureID) {
+		switch (featureID) {
+			case UMLRpyPackage.CGI_OBJECT_INSTANCE__MPMODEL_OBJECT:
+				return m_pModelObject != null;
+			case UMLRpyPackage.CGI_OBJECT_INSTANCE__MPPARENT:
+				return m_pParent != null;
+			case UMLRpyPackage.CGI_OBJECT_INSTANCE__MTRANSFORM:
+				return m_transform != null && !m_transform.isEmpty();
+			case UMLRpyPackage.CGI_OBJECT_INSTANCE__MADDITIONAL_LABEL:
+				return m_AdditionalLabel != null;
+			case UMLRpyPackage.CGI_OBJECT_INSTANCE__MPOLYGON:
+				return m_polygon != null && !m_polygon.isEmpty();
+			case UMLRpyPackage.CGI_OBJECT_INSTANCE__MNNAME_FORMAT:
+				return MNNAME_FORMAT_EDEFAULT == null ? m_nNameFormat != null : !MNNAME_FORMAT_EDEFAULT.equals(m_nNameFormat);
+			case UMLRpyPackage.CGI_OBJECT_INSTANCE__MNIS_NAME_FORMAT:
+				return MNIS_NAME_FORMAT_EDEFAULT == null ? m_nIsNameFormat != null : !MNIS_NAME_FORMAT_EDEFAULT.equals(m_nIsNameFormat);
+			case UMLRpyPackage.CGI_OBJECT_INSTANCE__FRAMESET:
+				return FRAMESET_EDEFAULT == null ? frameset != null : !FRAMESET_EDEFAULT.equals(frameset);
+			case UMLRpyPackage.CGI_OBJECT_INSTANCE__COMPARTMENTS:
+				return compartments != null && !compartments.isEmpty();
+			case UMLRpyPackage.CGI_OBJECT_INSTANCE__MMULTIPLICITY:
+				return m_multiplicity != null;
+			case UMLRpyPackage.CGI_OBJECT_INSTANCE__PROPERTIES:
+				return properties != null;
+			case UMLRpyPackage.CGI_OBJECT_INSTANCE__OPERATIONS:
+				return operations != null && !operations.isEmpty();
+			case UMLRpyPackage.CGI_OBJECT_INSTANCE__ATTRS:
+				return attrs != null && !attrs.isEmpty();
+			case UMLRpyPackage.CGI_OBJECT_INSTANCE__MBFRAMESET_MODIFIED:
+				return MBFRAMESET_MODIFIED_EDEFAULT == null ? m_bFramesetModified != null : !MBFRAMESET_MODIFIED_EDEFAULT.equals(m_bFramesetModified);
+			case UMLRpyPackage.CGI_OBJECT_INSTANCE__MPIMAGE_VIEW_DATA:
+				return m_pImageViewData != null;
+			case UMLRpyPackage.CGI_OBJECT_INSTANCE__MBIS_MISPLACED:
+				return MBIS_MISPLACED_EDEFAULT == null ? m_bIsMisplaced != null : !MBIS_MISPLACED_EDEFAULT.equals(m_bIsMisplaced);
+		}
+		return super.eIsSet(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String toString() {
+		if (eIsProxy()) return super.toString();
+
+		StringBuffer result = new StringBuffer(super.toString());
+		result.append(" (m_transform: "); //$NON-NLS-1$
+		result.append(m_transform);
+		result.append(", m_polygon: "); //$NON-NLS-1$
+		result.append(m_polygon);
+		result.append(", m_nNameFormat: "); //$NON-NLS-1$
+		result.append(m_nNameFormat);
+		result.append(", m_nIsNameFormat: "); //$NON-NLS-1$
+		result.append(m_nIsNameFormat);
+		result.append(", frameset: "); //$NON-NLS-1$
+		result.append(frameset);
+		result.append(", m_bFramesetModified: "); //$NON-NLS-1$
+		result.append(m_bFramesetModified);
+		result.append(", m_bIsMisplaced: "); //$NON-NLS-1$
+		result.append(m_bIsMisplaced);
+		result.append(')');
+		return result.toString();
+	}
+
+} //CGIObjectInstanceImpl
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/CGIObjectLinkImpl.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/CGIObjectLinkImpl.java
new file mode 100755
index 0000000..9557532
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/CGIObjectLinkImpl.java
@@ -0,0 +1,1583 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl;
+
+import java.util.Collection;
+
+import org.eclipse.emf.common.notify.Notification;
+import org.eclipse.emf.common.notify.NotificationChain;
+
+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.EDataTypeEList;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIObjectLink;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIText;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IPropertyContainer;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.M_pModelObjectType;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.M_pRootType;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>CGI Object Link</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * </p>
+ * <ul>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIObjectLinkImpl#getProperties <em>Properties</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIObjectLinkImpl#getM_pModelObject <em>MpModel Object</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIObjectLinkImpl#getM_pParent <em>MpParent</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIObjectLinkImpl#getM_pSource <em>MpSource</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIObjectLinkImpl#getM_sourceType <em>Msource Type</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIObjectLinkImpl#getM_pTarget <em>MpTarget</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIObjectLinkImpl#getM_targetType <em>Mtarget Type</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIObjectLinkImpl#getM_direction <em>Mdirection</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIObjectLinkImpl#getM_rpn <em>Mrpn</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIObjectLinkImpl#getM_arrow <em>Marrow</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIObjectLinkImpl#getM_anglePoint1 <em>Mangle Point1</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIObjectLinkImpl#getM_anglePoint2 <em>Mangle Point2</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIObjectLinkImpl#getM_line_style <em>Mline style</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIObjectLinkImpl#getM_SourcePort <em>MSource Port</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIObjectLinkImpl#getM_TargetPort <em>MTarget Port</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIObjectLinkImpl#getM_bShowSourceMultiplicity <em>MbShow Source Multiplicity</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIObjectLinkImpl#getM_bShowSourceRole <em>MbShow Source Role</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIObjectLinkImpl#getM_bShowTargetMultiplicity <em>MbShow Target Multiplicity</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIObjectLinkImpl#getM_bShowTargetRole <em>MbShow Target Role</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIObjectLinkImpl#getM_bShowLinkName <em>MbShow Link Name</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIObjectLinkImpl#getM_sourceRole <em>Msource Role</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIObjectLinkImpl#getM_targetRole <em>Mtarget Role</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIObjectLinkImpl#getM_sourceMultiplicity <em>Msource Multiplicity</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIObjectLinkImpl#getM_targetMultiplicity <em>Mtarget Multiplicity</em>}</li>
+ * </ul>
+ *
+ * @generated
+ */
+public class CGIObjectLinkImpl extends GraphElementsTypeImpl implements CGIObjectLink {
+	/**
+	 * The cached value of the '{@link #getProperties() <em>Properties</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getProperties()
+	 * @generated
+	 * @ordered
+	 */
+	protected IPropertyContainer properties;
+
+	/**
+	 * The cached value of the '{@link #getM_pModelObject() <em>MpModel Object</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_pModelObject()
+	 * @generated
+	 * @ordered
+	 */
+	protected M_pModelObjectType m_pModelObject;
+
+	/**
+	 * The default value of the '{@link #getM_pParent() <em>MpParent</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_pParent()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String MPPARENT_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getM_pParent() <em>MpParent</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_pParent()
+	 * @generated
+	 * @ordered
+	 */
+	protected String m_pParent = MPPARENT_EDEFAULT;
+
+	/**
+	 * The cached value of the '{@link #getM_pSource() <em>MpSource</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_pSource()
+	 * @generated
+	 * @ordered
+	 */
+	protected M_pRootType m_pSource;
+
+	/**
+	 * The default value of the '{@link #getM_sourceType() <em>Msource Type</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_sourceType()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String MSOURCE_TYPE_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getM_sourceType() <em>Msource Type</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_sourceType()
+	 * @generated
+	 * @ordered
+	 */
+	protected String m_sourceType = MSOURCE_TYPE_EDEFAULT;
+
+	/**
+	 * The cached value of the '{@link #getM_pTarget() <em>MpTarget</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_pTarget()
+	 * @generated
+	 * @ordered
+	 */
+	protected M_pRootType m_pTarget;
+
+	/**
+	 * The default value of the '{@link #getM_targetType() <em>Mtarget Type</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_targetType()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String MTARGET_TYPE_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getM_targetType() <em>Mtarget Type</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_targetType()
+	 * @generated
+	 * @ordered
+	 */
+	protected String m_targetType = MTARGET_TYPE_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getM_direction() <em>Mdirection</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_direction()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String MDIRECTION_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getM_direction() <em>Mdirection</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_direction()
+	 * @generated
+	 * @ordered
+	 */
+	protected String m_direction = MDIRECTION_EDEFAULT;
+
+	/**
+	 * The cached value of the '{@link #getM_rpn() <em>Mrpn</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_rpn()
+	 * @generated
+	 * @ordered
+	 */
+	protected CGIText m_rpn;
+
+	/**
+	 * The cached value of the '{@link #getM_arrow() <em>Marrow</em>}' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_arrow()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<String> m_arrow;
+
+	/**
+	 * The cached value of the '{@link #getM_anglePoint1() <em>Mangle Point1</em>}' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_anglePoint1()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<String> m_anglePoint1;
+
+	/**
+	 * The cached value of the '{@link #getM_anglePoint2() <em>Mangle Point2</em>}' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_anglePoint2()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<String> m_anglePoint2;
+
+	/**
+	 * The default value of the '{@link #getM_line_style() <em>Mline style</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_line_style()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String MLINE_STYLE_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getM_line_style() <em>Mline style</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_line_style()
+	 * @generated
+	 * @ordered
+	 */
+	protected String m_line_style = MLINE_STYLE_EDEFAULT;
+
+	/**
+	 * The cached value of the '{@link #getM_SourcePort() <em>MSource Port</em>}' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_SourcePort()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<String> m_SourcePort;
+
+	/**
+	 * The cached value of the '{@link #getM_TargetPort() <em>MTarget Port</em>}' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_TargetPort()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<String> m_TargetPort;
+
+	/**
+	 * The default value of the '{@link #getM_bShowSourceMultiplicity() <em>MbShow Source Multiplicity</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_bShowSourceMultiplicity()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String MBSHOW_SOURCE_MULTIPLICITY_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getM_bShowSourceMultiplicity() <em>MbShow Source Multiplicity</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_bShowSourceMultiplicity()
+	 * @generated
+	 * @ordered
+	 */
+	protected String m_bShowSourceMultiplicity = MBSHOW_SOURCE_MULTIPLICITY_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getM_bShowSourceRole() <em>MbShow Source Role</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_bShowSourceRole()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String MBSHOW_SOURCE_ROLE_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getM_bShowSourceRole() <em>MbShow Source Role</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_bShowSourceRole()
+	 * @generated
+	 * @ordered
+	 */
+	protected String m_bShowSourceRole = MBSHOW_SOURCE_ROLE_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getM_bShowTargetMultiplicity() <em>MbShow Target Multiplicity</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_bShowTargetMultiplicity()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String MBSHOW_TARGET_MULTIPLICITY_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getM_bShowTargetMultiplicity() <em>MbShow Target Multiplicity</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_bShowTargetMultiplicity()
+	 * @generated
+	 * @ordered
+	 */
+	protected String m_bShowTargetMultiplicity = MBSHOW_TARGET_MULTIPLICITY_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getM_bShowTargetRole() <em>MbShow Target Role</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_bShowTargetRole()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String MBSHOW_TARGET_ROLE_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getM_bShowTargetRole() <em>MbShow Target Role</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_bShowTargetRole()
+	 * @generated
+	 * @ordered
+	 */
+	protected String m_bShowTargetRole = MBSHOW_TARGET_ROLE_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getM_bShowLinkName() <em>MbShow Link Name</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_bShowLinkName()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String MBSHOW_LINK_NAME_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getM_bShowLinkName() <em>MbShow Link Name</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_bShowLinkName()
+	 * @generated
+	 * @ordered
+	 */
+	protected String m_bShowLinkName = MBSHOW_LINK_NAME_EDEFAULT;
+
+	/**
+	 * The cached value of the '{@link #getM_sourceRole() <em>Msource Role</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_sourceRole()
+	 * @generated
+	 * @ordered
+	 */
+	protected CGIText m_sourceRole;
+
+	/**
+	 * The cached value of the '{@link #getM_targetRole() <em>Mtarget Role</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_targetRole()
+	 * @generated
+	 * @ordered
+	 */
+	protected CGIText m_targetRole;
+
+	/**
+	 * The cached value of the '{@link #getM_sourceMultiplicity() <em>Msource Multiplicity</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_sourceMultiplicity()
+	 * @generated
+	 * @ordered
+	 */
+	protected CGIText m_sourceMultiplicity;
+
+	/**
+	 * The cached value of the '{@link #getM_targetMultiplicity() <em>Mtarget Multiplicity</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_targetMultiplicity()
+	 * @generated
+	 * @ordered
+	 */
+	protected CGIText m_targetMultiplicity;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected CGIObjectLinkImpl() {
+		super();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EClass eStaticClass() {
+		return UMLRpyPackage.eINSTANCE.getCGIObjectLink();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IPropertyContainer getProperties() {
+		if (properties != null && properties.eIsProxy()) {
+			InternalEObject oldProperties = (InternalEObject)properties;
+			properties = (IPropertyContainer)eResolveProxy(oldProperties);
+			if (properties != oldProperties) {
+				InternalEObject newProperties = (InternalEObject)properties;
+				NotificationChain msgs = oldProperties.eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.CGI_OBJECT_LINK__PROPERTIES, null, null);
+				if (newProperties.eInternalContainer() == null) {
+					msgs = newProperties.eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.CGI_OBJECT_LINK__PROPERTIES, null, msgs);
+				}
+				if (msgs != null) msgs.dispatch();
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.CGI_OBJECT_LINK__PROPERTIES, oldProperties, properties));
+			}
+		}
+		return properties;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IPropertyContainer basicGetProperties() {
+		return properties;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public NotificationChain basicSetProperties(IPropertyContainer newProperties, NotificationChain msgs) {
+		IPropertyContainer oldProperties = properties;
+		properties = newProperties;
+		if (eNotificationRequired()) {
+			ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_OBJECT_LINK__PROPERTIES, oldProperties, newProperties);
+			if (msgs == null) msgs = notification; else msgs.add(notification);
+		}
+		return msgs;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setProperties(IPropertyContainer newProperties) {
+		if (newProperties != properties) {
+			NotificationChain msgs = null;
+			if (properties != null)
+				msgs = ((InternalEObject)properties).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.CGI_OBJECT_LINK__PROPERTIES, null, msgs);
+			if (newProperties != null)
+				msgs = ((InternalEObject)newProperties).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.CGI_OBJECT_LINK__PROPERTIES, null, msgs);
+			msgs = basicSetProperties(newProperties, msgs);
+			if (msgs != null) msgs.dispatch();
+		}
+		else if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_OBJECT_LINK__PROPERTIES, newProperties, newProperties));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public M_pModelObjectType getM_pModelObject() {
+		if (m_pModelObject != null && m_pModelObject.eIsProxy()) {
+			InternalEObject oldM_pModelObject = (InternalEObject)m_pModelObject;
+			m_pModelObject = (M_pModelObjectType)eResolveProxy(oldM_pModelObject);
+			if (m_pModelObject != oldM_pModelObject) {
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.CGI_OBJECT_LINK__MPMODEL_OBJECT, oldM_pModelObject, m_pModelObject));
+			}
+		}
+		return m_pModelObject;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public M_pModelObjectType basicGetM_pModelObject() {
+		return m_pModelObject;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_pModelObject(M_pModelObjectType newM_pModelObject) {
+		M_pModelObjectType oldM_pModelObject = m_pModelObject;
+		m_pModelObject = newM_pModelObject;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_OBJECT_LINK__MPMODEL_OBJECT, oldM_pModelObject, m_pModelObject));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getM_pParent() {
+		return m_pParent;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_pParent(String newM_pParent) {
+		String oldM_pParent = m_pParent;
+		m_pParent = newM_pParent;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_OBJECT_LINK__MPPARENT, oldM_pParent, m_pParent));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public M_pRootType getM_pSource() {
+		if (m_pSource != null && m_pSource.eIsProxy()) {
+			InternalEObject oldM_pSource = (InternalEObject)m_pSource;
+			m_pSource = (M_pRootType)eResolveProxy(oldM_pSource);
+			if (m_pSource != oldM_pSource) {
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.CGI_OBJECT_LINK__MPSOURCE, oldM_pSource, m_pSource));
+			}
+		}
+		return m_pSource;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public M_pRootType basicGetM_pSource() {
+		return m_pSource;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_pSource(M_pRootType newM_pSource) {
+		M_pRootType oldM_pSource = m_pSource;
+		m_pSource = newM_pSource;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_OBJECT_LINK__MPSOURCE, oldM_pSource, m_pSource));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getM_sourceType() {
+		return m_sourceType;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_sourceType(String newM_sourceType) {
+		String oldM_sourceType = m_sourceType;
+		m_sourceType = newM_sourceType;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_OBJECT_LINK__MSOURCE_TYPE, oldM_sourceType, m_sourceType));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public M_pRootType getM_pTarget() {
+		if (m_pTarget != null && m_pTarget.eIsProxy()) {
+			InternalEObject oldM_pTarget = (InternalEObject)m_pTarget;
+			m_pTarget = (M_pRootType)eResolveProxy(oldM_pTarget);
+			if (m_pTarget != oldM_pTarget) {
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.CGI_OBJECT_LINK__MPTARGET, oldM_pTarget, m_pTarget));
+			}
+		}
+		return m_pTarget;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public M_pRootType basicGetM_pTarget() {
+		return m_pTarget;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_pTarget(M_pRootType newM_pTarget) {
+		M_pRootType oldM_pTarget = m_pTarget;
+		m_pTarget = newM_pTarget;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_OBJECT_LINK__MPTARGET, oldM_pTarget, m_pTarget));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getM_targetType() {
+		return m_targetType;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_targetType(String newM_targetType) {
+		String oldM_targetType = m_targetType;
+		m_targetType = newM_targetType;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_OBJECT_LINK__MTARGET_TYPE, oldM_targetType, m_targetType));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getM_direction() {
+		return m_direction;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_direction(String newM_direction) {
+		String oldM_direction = m_direction;
+		m_direction = newM_direction;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_OBJECT_LINK__MDIRECTION, oldM_direction, m_direction));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public CGIText getM_rpn() {
+		if (m_rpn != null && m_rpn.eIsProxy()) {
+			InternalEObject oldM_rpn = (InternalEObject)m_rpn;
+			m_rpn = (CGIText)eResolveProxy(oldM_rpn);
+			if (m_rpn != oldM_rpn) {
+				InternalEObject newM_rpn = (InternalEObject)m_rpn;
+				NotificationChain msgs = oldM_rpn.eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.CGI_OBJECT_LINK__MRPN, null, null);
+				if (newM_rpn.eInternalContainer() == null) {
+					msgs = newM_rpn.eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.CGI_OBJECT_LINK__MRPN, null, msgs);
+				}
+				if (msgs != null) msgs.dispatch();
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.CGI_OBJECT_LINK__MRPN, oldM_rpn, m_rpn));
+			}
+		}
+		return m_rpn;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public CGIText basicGetM_rpn() {
+		return m_rpn;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public NotificationChain basicSetM_rpn(CGIText newM_rpn, NotificationChain msgs) {
+		CGIText oldM_rpn = m_rpn;
+		m_rpn = newM_rpn;
+		if (eNotificationRequired()) {
+			ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_OBJECT_LINK__MRPN, oldM_rpn, newM_rpn);
+			if (msgs == null) msgs = notification; else msgs.add(notification);
+		}
+		return msgs;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_rpn(CGIText newM_rpn) {
+		if (newM_rpn != m_rpn) {
+			NotificationChain msgs = null;
+			if (m_rpn != null)
+				msgs = ((InternalEObject)m_rpn).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.CGI_OBJECT_LINK__MRPN, null, msgs);
+			if (newM_rpn != null)
+				msgs = ((InternalEObject)newM_rpn).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.CGI_OBJECT_LINK__MRPN, null, msgs);
+			msgs = basicSetM_rpn(newM_rpn, msgs);
+			if (msgs != null) msgs.dispatch();
+		}
+		else if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_OBJECT_LINK__MRPN, newM_rpn, newM_rpn));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<String> getM_arrow() {
+		if (m_arrow == null) {
+			m_arrow = new EDataTypeEList<String>(String.class, this, UMLRpyPackage.CGI_OBJECT_LINK__MARROW);
+		}
+		return m_arrow;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<String> getM_anglePoint1() {
+		if (m_anglePoint1 == null) {
+			m_anglePoint1 = new EDataTypeEList<String>(String.class, this, UMLRpyPackage.CGI_OBJECT_LINK__MANGLE_POINT1);
+		}
+		return m_anglePoint1;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<String> getM_anglePoint2() {
+		if (m_anglePoint2 == null) {
+			m_anglePoint2 = new EDataTypeEList<String>(String.class, this, UMLRpyPackage.CGI_OBJECT_LINK__MANGLE_POINT2);
+		}
+		return m_anglePoint2;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getM_line_style() {
+		return m_line_style;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_line_style(String newM_line_style) {
+		String oldM_line_style = m_line_style;
+		m_line_style = newM_line_style;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_OBJECT_LINK__MLINE_STYLE, oldM_line_style, m_line_style));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<String> getM_SourcePort() {
+		if (m_SourcePort == null) {
+			m_SourcePort = new EDataTypeEList<String>(String.class, this, UMLRpyPackage.CGI_OBJECT_LINK__MSOURCE_PORT);
+		}
+		return m_SourcePort;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<String> getM_TargetPort() {
+		if (m_TargetPort == null) {
+			m_TargetPort = new EDataTypeEList<String>(String.class, this, UMLRpyPackage.CGI_OBJECT_LINK__MTARGET_PORT);
+		}
+		return m_TargetPort;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getM_bShowSourceMultiplicity() {
+		return m_bShowSourceMultiplicity;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_bShowSourceMultiplicity(String newM_bShowSourceMultiplicity) {
+		String oldM_bShowSourceMultiplicity = m_bShowSourceMultiplicity;
+		m_bShowSourceMultiplicity = newM_bShowSourceMultiplicity;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_OBJECT_LINK__MBSHOW_SOURCE_MULTIPLICITY, oldM_bShowSourceMultiplicity, m_bShowSourceMultiplicity));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getM_bShowSourceRole() {
+		return m_bShowSourceRole;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_bShowSourceRole(String newM_bShowSourceRole) {
+		String oldM_bShowSourceRole = m_bShowSourceRole;
+		m_bShowSourceRole = newM_bShowSourceRole;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_OBJECT_LINK__MBSHOW_SOURCE_ROLE, oldM_bShowSourceRole, m_bShowSourceRole));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getM_bShowTargetMultiplicity() {
+		return m_bShowTargetMultiplicity;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_bShowTargetMultiplicity(String newM_bShowTargetMultiplicity) {
+		String oldM_bShowTargetMultiplicity = m_bShowTargetMultiplicity;
+		m_bShowTargetMultiplicity = newM_bShowTargetMultiplicity;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_OBJECT_LINK__MBSHOW_TARGET_MULTIPLICITY, oldM_bShowTargetMultiplicity, m_bShowTargetMultiplicity));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getM_bShowTargetRole() {
+		return m_bShowTargetRole;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_bShowTargetRole(String newM_bShowTargetRole) {
+		String oldM_bShowTargetRole = m_bShowTargetRole;
+		m_bShowTargetRole = newM_bShowTargetRole;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_OBJECT_LINK__MBSHOW_TARGET_ROLE, oldM_bShowTargetRole, m_bShowTargetRole));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getM_bShowLinkName() {
+		return m_bShowLinkName;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_bShowLinkName(String newM_bShowLinkName) {
+		String oldM_bShowLinkName = m_bShowLinkName;
+		m_bShowLinkName = newM_bShowLinkName;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_OBJECT_LINK__MBSHOW_LINK_NAME, oldM_bShowLinkName, m_bShowLinkName));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public CGIText getM_sourceRole() {
+		if (m_sourceRole != null && m_sourceRole.eIsProxy()) {
+			InternalEObject oldM_sourceRole = (InternalEObject)m_sourceRole;
+			m_sourceRole = (CGIText)eResolveProxy(oldM_sourceRole);
+			if (m_sourceRole != oldM_sourceRole) {
+				InternalEObject newM_sourceRole = (InternalEObject)m_sourceRole;
+				NotificationChain msgs = oldM_sourceRole.eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.CGI_OBJECT_LINK__MSOURCE_ROLE, null, null);
+				if (newM_sourceRole.eInternalContainer() == null) {
+					msgs = newM_sourceRole.eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.CGI_OBJECT_LINK__MSOURCE_ROLE, null, msgs);
+				}
+				if (msgs != null) msgs.dispatch();
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.CGI_OBJECT_LINK__MSOURCE_ROLE, oldM_sourceRole, m_sourceRole));
+			}
+		}
+		return m_sourceRole;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public CGIText basicGetM_sourceRole() {
+		return m_sourceRole;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public NotificationChain basicSetM_sourceRole(CGIText newM_sourceRole, NotificationChain msgs) {
+		CGIText oldM_sourceRole = m_sourceRole;
+		m_sourceRole = newM_sourceRole;
+		if (eNotificationRequired()) {
+			ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_OBJECT_LINK__MSOURCE_ROLE, oldM_sourceRole, newM_sourceRole);
+			if (msgs == null) msgs = notification; else msgs.add(notification);
+		}
+		return msgs;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_sourceRole(CGIText newM_sourceRole) {
+		if (newM_sourceRole != m_sourceRole) {
+			NotificationChain msgs = null;
+			if (m_sourceRole != null)
+				msgs = ((InternalEObject)m_sourceRole).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.CGI_OBJECT_LINK__MSOURCE_ROLE, null, msgs);
+			if (newM_sourceRole != null)
+				msgs = ((InternalEObject)newM_sourceRole).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.CGI_OBJECT_LINK__MSOURCE_ROLE, null, msgs);
+			msgs = basicSetM_sourceRole(newM_sourceRole, msgs);
+			if (msgs != null) msgs.dispatch();
+		}
+		else if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_OBJECT_LINK__MSOURCE_ROLE, newM_sourceRole, newM_sourceRole));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public CGIText getM_targetRole() {
+		if (m_targetRole != null && m_targetRole.eIsProxy()) {
+			InternalEObject oldM_targetRole = (InternalEObject)m_targetRole;
+			m_targetRole = (CGIText)eResolveProxy(oldM_targetRole);
+			if (m_targetRole != oldM_targetRole) {
+				InternalEObject newM_targetRole = (InternalEObject)m_targetRole;
+				NotificationChain msgs = oldM_targetRole.eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.CGI_OBJECT_LINK__MTARGET_ROLE, null, null);
+				if (newM_targetRole.eInternalContainer() == null) {
+					msgs = newM_targetRole.eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.CGI_OBJECT_LINK__MTARGET_ROLE, null, msgs);
+				}
+				if (msgs != null) msgs.dispatch();
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.CGI_OBJECT_LINK__MTARGET_ROLE, oldM_targetRole, m_targetRole));
+			}
+		}
+		return m_targetRole;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public CGIText basicGetM_targetRole() {
+		return m_targetRole;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public NotificationChain basicSetM_targetRole(CGIText newM_targetRole, NotificationChain msgs) {
+		CGIText oldM_targetRole = m_targetRole;
+		m_targetRole = newM_targetRole;
+		if (eNotificationRequired()) {
+			ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_OBJECT_LINK__MTARGET_ROLE, oldM_targetRole, newM_targetRole);
+			if (msgs == null) msgs = notification; else msgs.add(notification);
+		}
+		return msgs;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_targetRole(CGIText newM_targetRole) {
+		if (newM_targetRole != m_targetRole) {
+			NotificationChain msgs = null;
+			if (m_targetRole != null)
+				msgs = ((InternalEObject)m_targetRole).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.CGI_OBJECT_LINK__MTARGET_ROLE, null, msgs);
+			if (newM_targetRole != null)
+				msgs = ((InternalEObject)newM_targetRole).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.CGI_OBJECT_LINK__MTARGET_ROLE, null, msgs);
+			msgs = basicSetM_targetRole(newM_targetRole, msgs);
+			if (msgs != null) msgs.dispatch();
+		}
+		else if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_OBJECT_LINK__MTARGET_ROLE, newM_targetRole, newM_targetRole));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public CGIText getM_sourceMultiplicity() {
+		if (m_sourceMultiplicity != null && m_sourceMultiplicity.eIsProxy()) {
+			InternalEObject oldM_sourceMultiplicity = (InternalEObject)m_sourceMultiplicity;
+			m_sourceMultiplicity = (CGIText)eResolveProxy(oldM_sourceMultiplicity);
+			if (m_sourceMultiplicity != oldM_sourceMultiplicity) {
+				InternalEObject newM_sourceMultiplicity = (InternalEObject)m_sourceMultiplicity;
+				NotificationChain msgs = oldM_sourceMultiplicity.eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.CGI_OBJECT_LINK__MSOURCE_MULTIPLICITY, null, null);
+				if (newM_sourceMultiplicity.eInternalContainer() == null) {
+					msgs = newM_sourceMultiplicity.eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.CGI_OBJECT_LINK__MSOURCE_MULTIPLICITY, null, msgs);
+				}
+				if (msgs != null) msgs.dispatch();
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.CGI_OBJECT_LINK__MSOURCE_MULTIPLICITY, oldM_sourceMultiplicity, m_sourceMultiplicity));
+			}
+		}
+		return m_sourceMultiplicity;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public CGIText basicGetM_sourceMultiplicity() {
+		return m_sourceMultiplicity;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public NotificationChain basicSetM_sourceMultiplicity(CGIText newM_sourceMultiplicity, NotificationChain msgs) {
+		CGIText oldM_sourceMultiplicity = m_sourceMultiplicity;
+		m_sourceMultiplicity = newM_sourceMultiplicity;
+		if (eNotificationRequired()) {
+			ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_OBJECT_LINK__MSOURCE_MULTIPLICITY, oldM_sourceMultiplicity, newM_sourceMultiplicity);
+			if (msgs == null) msgs = notification; else msgs.add(notification);
+		}
+		return msgs;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_sourceMultiplicity(CGIText newM_sourceMultiplicity) {
+		if (newM_sourceMultiplicity != m_sourceMultiplicity) {
+			NotificationChain msgs = null;
+			if (m_sourceMultiplicity != null)
+				msgs = ((InternalEObject)m_sourceMultiplicity).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.CGI_OBJECT_LINK__MSOURCE_MULTIPLICITY, null, msgs);
+			if (newM_sourceMultiplicity != null)
+				msgs = ((InternalEObject)newM_sourceMultiplicity).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.CGI_OBJECT_LINK__MSOURCE_MULTIPLICITY, null, msgs);
+			msgs = basicSetM_sourceMultiplicity(newM_sourceMultiplicity, msgs);
+			if (msgs != null) msgs.dispatch();
+		}
+		else if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_OBJECT_LINK__MSOURCE_MULTIPLICITY, newM_sourceMultiplicity, newM_sourceMultiplicity));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public CGIText getM_targetMultiplicity() {
+		if (m_targetMultiplicity != null && m_targetMultiplicity.eIsProxy()) {
+			InternalEObject oldM_targetMultiplicity = (InternalEObject)m_targetMultiplicity;
+			m_targetMultiplicity = (CGIText)eResolveProxy(oldM_targetMultiplicity);
+			if (m_targetMultiplicity != oldM_targetMultiplicity) {
+				InternalEObject newM_targetMultiplicity = (InternalEObject)m_targetMultiplicity;
+				NotificationChain msgs = oldM_targetMultiplicity.eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.CGI_OBJECT_LINK__MTARGET_MULTIPLICITY, null, null);
+				if (newM_targetMultiplicity.eInternalContainer() == null) {
+					msgs = newM_targetMultiplicity.eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.CGI_OBJECT_LINK__MTARGET_MULTIPLICITY, null, msgs);
+				}
+				if (msgs != null) msgs.dispatch();
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.CGI_OBJECT_LINK__MTARGET_MULTIPLICITY, oldM_targetMultiplicity, m_targetMultiplicity));
+			}
+		}
+		return m_targetMultiplicity;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public CGIText basicGetM_targetMultiplicity() {
+		return m_targetMultiplicity;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public NotificationChain basicSetM_targetMultiplicity(CGIText newM_targetMultiplicity, NotificationChain msgs) {
+		CGIText oldM_targetMultiplicity = m_targetMultiplicity;
+		m_targetMultiplicity = newM_targetMultiplicity;
+		if (eNotificationRequired()) {
+			ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_OBJECT_LINK__MTARGET_MULTIPLICITY, oldM_targetMultiplicity, newM_targetMultiplicity);
+			if (msgs == null) msgs = notification; else msgs.add(notification);
+		}
+		return msgs;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_targetMultiplicity(CGIText newM_targetMultiplicity) {
+		if (newM_targetMultiplicity != m_targetMultiplicity) {
+			NotificationChain msgs = null;
+			if (m_targetMultiplicity != null)
+				msgs = ((InternalEObject)m_targetMultiplicity).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.CGI_OBJECT_LINK__MTARGET_MULTIPLICITY, null, msgs);
+			if (newM_targetMultiplicity != null)
+				msgs = ((InternalEObject)newM_targetMultiplicity).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.CGI_OBJECT_LINK__MTARGET_MULTIPLICITY, null, msgs);
+			msgs = basicSetM_targetMultiplicity(newM_targetMultiplicity, msgs);
+			if (msgs != null) msgs.dispatch();
+		}
+		else if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_OBJECT_LINK__MTARGET_MULTIPLICITY, newM_targetMultiplicity, newM_targetMultiplicity));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
+		switch (featureID) {
+			case UMLRpyPackage.CGI_OBJECT_LINK__PROPERTIES:
+				return basicSetProperties(null, msgs);
+			case UMLRpyPackage.CGI_OBJECT_LINK__MRPN:
+				return basicSetM_rpn(null, msgs);
+			case UMLRpyPackage.CGI_OBJECT_LINK__MSOURCE_ROLE:
+				return basicSetM_sourceRole(null, msgs);
+			case UMLRpyPackage.CGI_OBJECT_LINK__MTARGET_ROLE:
+				return basicSetM_targetRole(null, msgs);
+			case UMLRpyPackage.CGI_OBJECT_LINK__MSOURCE_MULTIPLICITY:
+				return basicSetM_sourceMultiplicity(null, msgs);
+			case UMLRpyPackage.CGI_OBJECT_LINK__MTARGET_MULTIPLICITY:
+				return basicSetM_targetMultiplicity(null, msgs);
+		}
+		return super.eInverseRemove(otherEnd, featureID, msgs);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object eGet(int featureID, boolean resolve, boolean coreType) {
+		switch (featureID) {
+			case UMLRpyPackage.CGI_OBJECT_LINK__PROPERTIES:
+				if (resolve) return getProperties();
+				return basicGetProperties();
+			case UMLRpyPackage.CGI_OBJECT_LINK__MPMODEL_OBJECT:
+				if (resolve) return getM_pModelObject();
+				return basicGetM_pModelObject();
+			case UMLRpyPackage.CGI_OBJECT_LINK__MPPARENT:
+				return getM_pParent();
+			case UMLRpyPackage.CGI_OBJECT_LINK__MPSOURCE:
+				if (resolve) return getM_pSource();
+				return basicGetM_pSource();
+			case UMLRpyPackage.CGI_OBJECT_LINK__MSOURCE_TYPE:
+				return getM_sourceType();
+			case UMLRpyPackage.CGI_OBJECT_LINK__MPTARGET:
+				if (resolve) return getM_pTarget();
+				return basicGetM_pTarget();
+			case UMLRpyPackage.CGI_OBJECT_LINK__MTARGET_TYPE:
+				return getM_targetType();
+			case UMLRpyPackage.CGI_OBJECT_LINK__MDIRECTION:
+				return getM_direction();
+			case UMLRpyPackage.CGI_OBJECT_LINK__MRPN:
+				if (resolve) return getM_rpn();
+				return basicGetM_rpn();
+			case UMLRpyPackage.CGI_OBJECT_LINK__MARROW:
+				return getM_arrow();
+			case UMLRpyPackage.CGI_OBJECT_LINK__MANGLE_POINT1:
+				return getM_anglePoint1();
+			case UMLRpyPackage.CGI_OBJECT_LINK__MANGLE_POINT2:
+				return getM_anglePoint2();
+			case UMLRpyPackage.CGI_OBJECT_LINK__MLINE_STYLE:
+				return getM_line_style();
+			case UMLRpyPackage.CGI_OBJECT_LINK__MSOURCE_PORT:
+				return getM_SourcePort();
+			case UMLRpyPackage.CGI_OBJECT_LINK__MTARGET_PORT:
+				return getM_TargetPort();
+			case UMLRpyPackage.CGI_OBJECT_LINK__MBSHOW_SOURCE_MULTIPLICITY:
+				return getM_bShowSourceMultiplicity();
+			case UMLRpyPackage.CGI_OBJECT_LINK__MBSHOW_SOURCE_ROLE:
+				return getM_bShowSourceRole();
+			case UMLRpyPackage.CGI_OBJECT_LINK__MBSHOW_TARGET_MULTIPLICITY:
+				return getM_bShowTargetMultiplicity();
+			case UMLRpyPackage.CGI_OBJECT_LINK__MBSHOW_TARGET_ROLE:
+				return getM_bShowTargetRole();
+			case UMLRpyPackage.CGI_OBJECT_LINK__MBSHOW_LINK_NAME:
+				return getM_bShowLinkName();
+			case UMLRpyPackage.CGI_OBJECT_LINK__MSOURCE_ROLE:
+				if (resolve) return getM_sourceRole();
+				return basicGetM_sourceRole();
+			case UMLRpyPackage.CGI_OBJECT_LINK__MTARGET_ROLE:
+				if (resolve) return getM_targetRole();
+				return basicGetM_targetRole();
+			case UMLRpyPackage.CGI_OBJECT_LINK__MSOURCE_MULTIPLICITY:
+				if (resolve) return getM_sourceMultiplicity();
+				return basicGetM_sourceMultiplicity();
+			case UMLRpyPackage.CGI_OBJECT_LINK__MTARGET_MULTIPLICITY:
+				if (resolve) return getM_targetMultiplicity();
+				return basicGetM_targetMultiplicity();
+		}
+		return super.eGet(featureID, resolve, coreType);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@SuppressWarnings("unchecked")
+	@Override
+	public void eSet(int featureID, Object newValue) {
+		switch (featureID) {
+			case UMLRpyPackage.CGI_OBJECT_LINK__PROPERTIES:
+				setProperties((IPropertyContainer)newValue);
+				return;
+			case UMLRpyPackage.CGI_OBJECT_LINK__MPMODEL_OBJECT:
+				setM_pModelObject((M_pModelObjectType)newValue);
+				return;
+			case UMLRpyPackage.CGI_OBJECT_LINK__MPPARENT:
+				setM_pParent((String)newValue);
+				return;
+			case UMLRpyPackage.CGI_OBJECT_LINK__MPSOURCE:
+				setM_pSource((M_pRootType)newValue);
+				return;
+			case UMLRpyPackage.CGI_OBJECT_LINK__MSOURCE_TYPE:
+				setM_sourceType((String)newValue);
+				return;
+			case UMLRpyPackage.CGI_OBJECT_LINK__MPTARGET:
+				setM_pTarget((M_pRootType)newValue);
+				return;
+			case UMLRpyPackage.CGI_OBJECT_LINK__MTARGET_TYPE:
+				setM_targetType((String)newValue);
+				return;
+			case UMLRpyPackage.CGI_OBJECT_LINK__MDIRECTION:
+				setM_direction((String)newValue);
+				return;
+			case UMLRpyPackage.CGI_OBJECT_LINK__MRPN:
+				setM_rpn((CGIText)newValue);
+				return;
+			case UMLRpyPackage.CGI_OBJECT_LINK__MARROW:
+				getM_arrow().clear();
+				getM_arrow().addAll((Collection<? extends String>)newValue);
+				return;
+			case UMLRpyPackage.CGI_OBJECT_LINK__MANGLE_POINT1:
+				getM_anglePoint1().clear();
+				getM_anglePoint1().addAll((Collection<? extends String>)newValue);
+				return;
+			case UMLRpyPackage.CGI_OBJECT_LINK__MANGLE_POINT2:
+				getM_anglePoint2().clear();
+				getM_anglePoint2().addAll((Collection<? extends String>)newValue);
+				return;
+			case UMLRpyPackage.CGI_OBJECT_LINK__MLINE_STYLE:
+				setM_line_style((String)newValue);
+				return;
+			case UMLRpyPackage.CGI_OBJECT_LINK__MSOURCE_PORT:
+				getM_SourcePort().clear();
+				getM_SourcePort().addAll((Collection<? extends String>)newValue);
+				return;
+			case UMLRpyPackage.CGI_OBJECT_LINK__MTARGET_PORT:
+				getM_TargetPort().clear();
+				getM_TargetPort().addAll((Collection<? extends String>)newValue);
+				return;
+			case UMLRpyPackage.CGI_OBJECT_LINK__MBSHOW_SOURCE_MULTIPLICITY:
+				setM_bShowSourceMultiplicity((String)newValue);
+				return;
+			case UMLRpyPackage.CGI_OBJECT_LINK__MBSHOW_SOURCE_ROLE:
+				setM_bShowSourceRole((String)newValue);
+				return;
+			case UMLRpyPackage.CGI_OBJECT_LINK__MBSHOW_TARGET_MULTIPLICITY:
+				setM_bShowTargetMultiplicity((String)newValue);
+				return;
+			case UMLRpyPackage.CGI_OBJECT_LINK__MBSHOW_TARGET_ROLE:
+				setM_bShowTargetRole((String)newValue);
+				return;
+			case UMLRpyPackage.CGI_OBJECT_LINK__MBSHOW_LINK_NAME:
+				setM_bShowLinkName((String)newValue);
+				return;
+			case UMLRpyPackage.CGI_OBJECT_LINK__MSOURCE_ROLE:
+				setM_sourceRole((CGIText)newValue);
+				return;
+			case UMLRpyPackage.CGI_OBJECT_LINK__MTARGET_ROLE:
+				setM_targetRole((CGIText)newValue);
+				return;
+			case UMLRpyPackage.CGI_OBJECT_LINK__MSOURCE_MULTIPLICITY:
+				setM_sourceMultiplicity((CGIText)newValue);
+				return;
+			case UMLRpyPackage.CGI_OBJECT_LINK__MTARGET_MULTIPLICITY:
+				setM_targetMultiplicity((CGIText)newValue);
+				return;
+		}
+		super.eSet(featureID, newValue);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void eUnset(int featureID) {
+		switch (featureID) {
+			case UMLRpyPackage.CGI_OBJECT_LINK__PROPERTIES:
+				setProperties((IPropertyContainer)null);
+				return;
+			case UMLRpyPackage.CGI_OBJECT_LINK__MPMODEL_OBJECT:
+				setM_pModelObject((M_pModelObjectType)null);
+				return;
+			case UMLRpyPackage.CGI_OBJECT_LINK__MPPARENT:
+				setM_pParent(MPPARENT_EDEFAULT);
+				return;
+			case UMLRpyPackage.CGI_OBJECT_LINK__MPSOURCE:
+				setM_pSource((M_pRootType)null);
+				return;
+			case UMLRpyPackage.CGI_OBJECT_LINK__MSOURCE_TYPE:
+				setM_sourceType(MSOURCE_TYPE_EDEFAULT);
+				return;
+			case UMLRpyPackage.CGI_OBJECT_LINK__MPTARGET:
+				setM_pTarget((M_pRootType)null);
+				return;
+			case UMLRpyPackage.CGI_OBJECT_LINK__MTARGET_TYPE:
+				setM_targetType(MTARGET_TYPE_EDEFAULT);
+				return;
+			case UMLRpyPackage.CGI_OBJECT_LINK__MDIRECTION:
+				setM_direction(MDIRECTION_EDEFAULT);
+				return;
+			case UMLRpyPackage.CGI_OBJECT_LINK__MRPN:
+				setM_rpn((CGIText)null);
+				return;
+			case UMLRpyPackage.CGI_OBJECT_LINK__MARROW:
+				getM_arrow().clear();
+				return;
+			case UMLRpyPackage.CGI_OBJECT_LINK__MANGLE_POINT1:
+				getM_anglePoint1().clear();
+				return;
+			case UMLRpyPackage.CGI_OBJECT_LINK__MANGLE_POINT2:
+				getM_anglePoint2().clear();
+				return;
+			case UMLRpyPackage.CGI_OBJECT_LINK__MLINE_STYLE:
+				setM_line_style(MLINE_STYLE_EDEFAULT);
+				return;
+			case UMLRpyPackage.CGI_OBJECT_LINK__MSOURCE_PORT:
+				getM_SourcePort().clear();
+				return;
+			case UMLRpyPackage.CGI_OBJECT_LINK__MTARGET_PORT:
+				getM_TargetPort().clear();
+				return;
+			case UMLRpyPackage.CGI_OBJECT_LINK__MBSHOW_SOURCE_MULTIPLICITY:
+				setM_bShowSourceMultiplicity(MBSHOW_SOURCE_MULTIPLICITY_EDEFAULT);
+				return;
+			case UMLRpyPackage.CGI_OBJECT_LINK__MBSHOW_SOURCE_ROLE:
+				setM_bShowSourceRole(MBSHOW_SOURCE_ROLE_EDEFAULT);
+				return;
+			case UMLRpyPackage.CGI_OBJECT_LINK__MBSHOW_TARGET_MULTIPLICITY:
+				setM_bShowTargetMultiplicity(MBSHOW_TARGET_MULTIPLICITY_EDEFAULT);
+				return;
+			case UMLRpyPackage.CGI_OBJECT_LINK__MBSHOW_TARGET_ROLE:
+				setM_bShowTargetRole(MBSHOW_TARGET_ROLE_EDEFAULT);
+				return;
+			case UMLRpyPackage.CGI_OBJECT_LINK__MBSHOW_LINK_NAME:
+				setM_bShowLinkName(MBSHOW_LINK_NAME_EDEFAULT);
+				return;
+			case UMLRpyPackage.CGI_OBJECT_LINK__MSOURCE_ROLE:
+				setM_sourceRole((CGIText)null);
+				return;
+			case UMLRpyPackage.CGI_OBJECT_LINK__MTARGET_ROLE:
+				setM_targetRole((CGIText)null);
+				return;
+			case UMLRpyPackage.CGI_OBJECT_LINK__MSOURCE_MULTIPLICITY:
+				setM_sourceMultiplicity((CGIText)null);
+				return;
+			case UMLRpyPackage.CGI_OBJECT_LINK__MTARGET_MULTIPLICITY:
+				setM_targetMultiplicity((CGIText)null);
+				return;
+		}
+		super.eUnset(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public boolean eIsSet(int featureID) {
+		switch (featureID) {
+			case UMLRpyPackage.CGI_OBJECT_LINK__PROPERTIES:
+				return properties != null;
+			case UMLRpyPackage.CGI_OBJECT_LINK__MPMODEL_OBJECT:
+				return m_pModelObject != null;
+			case UMLRpyPackage.CGI_OBJECT_LINK__MPPARENT:
+				return MPPARENT_EDEFAULT == null ? m_pParent != null : !MPPARENT_EDEFAULT.equals(m_pParent);
+			case UMLRpyPackage.CGI_OBJECT_LINK__MPSOURCE:
+				return m_pSource != null;
+			case UMLRpyPackage.CGI_OBJECT_LINK__MSOURCE_TYPE:
+				return MSOURCE_TYPE_EDEFAULT == null ? m_sourceType != null : !MSOURCE_TYPE_EDEFAULT.equals(m_sourceType);
+			case UMLRpyPackage.CGI_OBJECT_LINK__MPTARGET:
+				return m_pTarget != null;
+			case UMLRpyPackage.CGI_OBJECT_LINK__MTARGET_TYPE:
+				return MTARGET_TYPE_EDEFAULT == null ? m_targetType != null : !MTARGET_TYPE_EDEFAULT.equals(m_targetType);
+			case UMLRpyPackage.CGI_OBJECT_LINK__MDIRECTION:
+				return MDIRECTION_EDEFAULT == null ? m_direction != null : !MDIRECTION_EDEFAULT.equals(m_direction);
+			case UMLRpyPackage.CGI_OBJECT_LINK__MRPN:
+				return m_rpn != null;
+			case UMLRpyPackage.CGI_OBJECT_LINK__MARROW:
+				return m_arrow != null && !m_arrow.isEmpty();
+			case UMLRpyPackage.CGI_OBJECT_LINK__MANGLE_POINT1:
+				return m_anglePoint1 != null && !m_anglePoint1.isEmpty();
+			case UMLRpyPackage.CGI_OBJECT_LINK__MANGLE_POINT2:
+				return m_anglePoint2 != null && !m_anglePoint2.isEmpty();
+			case UMLRpyPackage.CGI_OBJECT_LINK__MLINE_STYLE:
+				return MLINE_STYLE_EDEFAULT == null ? m_line_style != null : !MLINE_STYLE_EDEFAULT.equals(m_line_style);
+			case UMLRpyPackage.CGI_OBJECT_LINK__MSOURCE_PORT:
+				return m_SourcePort != null && !m_SourcePort.isEmpty();
+			case UMLRpyPackage.CGI_OBJECT_LINK__MTARGET_PORT:
+				return m_TargetPort != null && !m_TargetPort.isEmpty();
+			case UMLRpyPackage.CGI_OBJECT_LINK__MBSHOW_SOURCE_MULTIPLICITY:
+				return MBSHOW_SOURCE_MULTIPLICITY_EDEFAULT == null ? m_bShowSourceMultiplicity != null : !MBSHOW_SOURCE_MULTIPLICITY_EDEFAULT.equals(m_bShowSourceMultiplicity);
+			case UMLRpyPackage.CGI_OBJECT_LINK__MBSHOW_SOURCE_ROLE:
+				return MBSHOW_SOURCE_ROLE_EDEFAULT == null ? m_bShowSourceRole != null : !MBSHOW_SOURCE_ROLE_EDEFAULT.equals(m_bShowSourceRole);
+			case UMLRpyPackage.CGI_OBJECT_LINK__MBSHOW_TARGET_MULTIPLICITY:
+				return MBSHOW_TARGET_MULTIPLICITY_EDEFAULT == null ? m_bShowTargetMultiplicity != null : !MBSHOW_TARGET_MULTIPLICITY_EDEFAULT.equals(m_bShowTargetMultiplicity);
+			case UMLRpyPackage.CGI_OBJECT_LINK__MBSHOW_TARGET_ROLE:
+				return MBSHOW_TARGET_ROLE_EDEFAULT == null ? m_bShowTargetRole != null : !MBSHOW_TARGET_ROLE_EDEFAULT.equals(m_bShowTargetRole);
+			case UMLRpyPackage.CGI_OBJECT_LINK__MBSHOW_LINK_NAME:
+				return MBSHOW_LINK_NAME_EDEFAULT == null ? m_bShowLinkName != null : !MBSHOW_LINK_NAME_EDEFAULT.equals(m_bShowLinkName);
+			case UMLRpyPackage.CGI_OBJECT_LINK__MSOURCE_ROLE:
+				return m_sourceRole != null;
+			case UMLRpyPackage.CGI_OBJECT_LINK__MTARGET_ROLE:
+				return m_targetRole != null;
+			case UMLRpyPackage.CGI_OBJECT_LINK__MSOURCE_MULTIPLICITY:
+				return m_sourceMultiplicity != null;
+			case UMLRpyPackage.CGI_OBJECT_LINK__MTARGET_MULTIPLICITY:
+				return m_targetMultiplicity != null;
+		}
+		return super.eIsSet(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String toString() {
+		if (eIsProxy()) return super.toString();
+
+		StringBuffer result = new StringBuffer(super.toString());
+		result.append(" (m_pParent: "); //$NON-NLS-1$
+		result.append(m_pParent);
+		result.append(", m_sourceType: "); //$NON-NLS-1$
+		result.append(m_sourceType);
+		result.append(", m_targetType: "); //$NON-NLS-1$
+		result.append(m_targetType);
+		result.append(", m_direction: "); //$NON-NLS-1$
+		result.append(m_direction);
+		result.append(", m_arrow: "); //$NON-NLS-1$
+		result.append(m_arrow);
+		result.append(", m_anglePoint1: "); //$NON-NLS-1$
+		result.append(m_anglePoint1);
+		result.append(", m_anglePoint2: "); //$NON-NLS-1$
+		result.append(m_anglePoint2);
+		result.append(", m_line_style: "); //$NON-NLS-1$
+		result.append(m_line_style);
+		result.append(", m_SourcePort: "); //$NON-NLS-1$
+		result.append(m_SourcePort);
+		result.append(", m_TargetPort: "); //$NON-NLS-1$
+		result.append(m_TargetPort);
+		result.append(", m_bShowSourceMultiplicity: "); //$NON-NLS-1$
+		result.append(m_bShowSourceMultiplicity);
+		result.append(", m_bShowSourceRole: "); //$NON-NLS-1$
+		result.append(m_bShowSourceRole);
+		result.append(", m_bShowTargetMultiplicity: "); //$NON-NLS-1$
+		result.append(m_bShowTargetMultiplicity);
+		result.append(", m_bShowTargetRole: "); //$NON-NLS-1$
+		result.append(m_bShowTargetRole);
+		result.append(", m_bShowLinkName: "); //$NON-NLS-1$
+		result.append(m_bShowLinkName);
+		result.append(')');
+		return result.toString();
+	}
+
+} //CGIObjectLinkImpl
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/CGIPackageImpl.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/CGIPackageImpl.java
new file mode 100755
index 0000000..6c7a868
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/CGIPackageImpl.java
@@ -0,0 +1,912 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl;
+
+import java.util.Collection;
+
+import org.eclipse.emf.common.notify.Notification;
+import org.eclipse.emf.common.notify.NotificationChain;
+
+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.EDataTypeEList;
+import org.eclipse.emf.ecore.util.EObjectResolvingEList;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIPackage;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIText;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.DefaultSubsystemType;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IColor;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IPropertyContainer;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.M_pRootType;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UnknownType;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>CGI Package</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * </p>
+ * <ul>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIPackageImpl#getM_pModelObject <em>MpModel Object</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIPackageImpl#getM_pParent <em>MpParent</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIPackageImpl#getM_transform <em>Mtransform</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIPackageImpl#getM_polygon <em>Mpolygon</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIPackageImpl#getM_nNameFormat <em>MnName Format</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIPackageImpl#getM_nIsNameFormat <em>MnIs Name Format</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIPackageImpl#getCompartments <em>Compartments</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIPackageImpl#getProperties <em>Properties</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIPackageImpl#getM_color <em>Mcolor</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIPackageImpl#getM_lineWidth <em>Mline Width</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIPackageImpl#getM_AdditionalLabel <em>MAdditional Label</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIPackageImpl#getFrameset <em>Frameset</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIPackageImpl#getM_bIsStructured <em>MbIs Structured</em>}</li>
+ * </ul>
+ *
+ * @generated
+ */
+public class CGIPackageImpl extends GraphElementsTypeImpl implements CGIPackage {
+	/**
+	 * The cached value of the '{@link #getM_pModelObject() <em>MpModel Object</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_pModelObject()
+	 * @generated
+	 * @ordered
+	 */
+	protected DefaultSubsystemType m_pModelObject;
+
+	/**
+	 * The cached value of the '{@link #getM_pParent() <em>MpParent</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_pParent()
+	 * @generated
+	 * @ordered
+	 */
+	protected M_pRootType m_pParent;
+
+	/**
+	 * The cached value of the '{@link #getM_transform() <em>Mtransform</em>}' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_transform()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<String> m_transform;
+
+	/**
+	 * The cached value of the '{@link #getM_polygon() <em>Mpolygon</em>}' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_polygon()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<String> m_polygon;
+
+	/**
+	 * The default value of the '{@link #getM_nNameFormat() <em>MnName Format</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_nNameFormat()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String MNNAME_FORMAT_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getM_nNameFormat() <em>MnName Format</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_nNameFormat()
+	 * @generated
+	 * @ordered
+	 */
+	protected String m_nNameFormat = MNNAME_FORMAT_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getM_nIsNameFormat() <em>MnIs Name Format</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_nIsNameFormat()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String MNIS_NAME_FORMAT_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getM_nIsNameFormat() <em>MnIs Name Format</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_nIsNameFormat()
+	 * @generated
+	 * @ordered
+	 */
+	protected String m_nIsNameFormat = MNIS_NAME_FORMAT_EDEFAULT;
+
+	/**
+	 * The cached value of the '{@link #getCompartments() <em>Compartments</em>}' reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getCompartments()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<UnknownType> compartments;
+
+	/**
+	 * The cached value of the '{@link #getProperties() <em>Properties</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getProperties()
+	 * @generated
+	 * @ordered
+	 */
+	protected IPropertyContainer properties;
+
+	/**
+	 * The cached value of the '{@link #getM_color() <em>Mcolor</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_color()
+	 * @generated
+	 * @ordered
+	 */
+	protected IColor m_color;
+
+	/**
+	 * The default value of the '{@link #getM_lineWidth() <em>Mline Width</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_lineWidth()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String MLINE_WIDTH_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getM_lineWidth() <em>Mline Width</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_lineWidth()
+	 * @generated
+	 * @ordered
+	 */
+	protected String m_lineWidth = MLINE_WIDTH_EDEFAULT;
+
+	/**
+	 * The cached value of the '{@link #getM_AdditionalLabel() <em>MAdditional Label</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_AdditionalLabel()
+	 * @generated
+	 * @ordered
+	 */
+	protected CGIText m_AdditionalLabel;
+
+	/**
+	 * The default value of the '{@link #getFrameset() <em>Frameset</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getFrameset()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String FRAMESET_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getFrameset() <em>Frameset</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getFrameset()
+	 * @generated
+	 * @ordered
+	 */
+	protected String frameset = FRAMESET_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getM_bIsStructured() <em>MbIs Structured</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_bIsStructured()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String MBIS_STRUCTURED_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getM_bIsStructured() <em>MbIs Structured</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_bIsStructured()
+	 * @generated
+	 * @ordered
+	 */
+	protected String m_bIsStructured = MBIS_STRUCTURED_EDEFAULT;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected CGIPackageImpl() {
+		super();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EClass eStaticClass() {
+		return UMLRpyPackage.eINSTANCE.getCGIPackage();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public DefaultSubsystemType getM_pModelObject() {
+		if (m_pModelObject != null && m_pModelObject.eIsProxy()) {
+			InternalEObject oldM_pModelObject = (InternalEObject)m_pModelObject;
+			m_pModelObject = (DefaultSubsystemType)eResolveProxy(oldM_pModelObject);
+			if (m_pModelObject != oldM_pModelObject) {
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.CGI_PACKAGE__MPMODEL_OBJECT, oldM_pModelObject, m_pModelObject));
+			}
+		}
+		return m_pModelObject;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public DefaultSubsystemType basicGetM_pModelObject() {
+		return m_pModelObject;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_pModelObject(DefaultSubsystemType newM_pModelObject) {
+		DefaultSubsystemType oldM_pModelObject = m_pModelObject;
+		m_pModelObject = newM_pModelObject;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_PACKAGE__MPMODEL_OBJECT, oldM_pModelObject, m_pModelObject));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public M_pRootType getM_pParent() {
+		if (m_pParent != null && m_pParent.eIsProxy()) {
+			InternalEObject oldM_pParent = (InternalEObject)m_pParent;
+			m_pParent = (M_pRootType)eResolveProxy(oldM_pParent);
+			if (m_pParent != oldM_pParent) {
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.CGI_PACKAGE__MPPARENT, oldM_pParent, m_pParent));
+			}
+		}
+		return m_pParent;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public M_pRootType basicGetM_pParent() {
+		return m_pParent;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_pParent(M_pRootType newM_pParent) {
+		M_pRootType oldM_pParent = m_pParent;
+		m_pParent = newM_pParent;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_PACKAGE__MPPARENT, oldM_pParent, m_pParent));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<String> getM_transform() {
+		if (m_transform == null) {
+			m_transform = new EDataTypeEList<String>(String.class, this, UMLRpyPackage.CGI_PACKAGE__MTRANSFORM);
+		}
+		return m_transform;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<String> getM_polygon() {
+		if (m_polygon == null) {
+			m_polygon = new EDataTypeEList<String>(String.class, this, UMLRpyPackage.CGI_PACKAGE__MPOLYGON);
+		}
+		return m_polygon;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getM_nNameFormat() {
+		return m_nNameFormat;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_nNameFormat(String newM_nNameFormat) {
+		String oldM_nNameFormat = m_nNameFormat;
+		m_nNameFormat = newM_nNameFormat;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_PACKAGE__MNNAME_FORMAT, oldM_nNameFormat, m_nNameFormat));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getM_nIsNameFormat() {
+		return m_nIsNameFormat;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_nIsNameFormat(String newM_nIsNameFormat) {
+		String oldM_nIsNameFormat = m_nIsNameFormat;
+		m_nIsNameFormat = newM_nIsNameFormat;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_PACKAGE__MNIS_NAME_FORMAT, oldM_nIsNameFormat, m_nIsNameFormat));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<UnknownType> getCompartments() {
+		if (compartments == null) {
+			compartments = new EObjectResolvingEList<UnknownType>(UnknownType.class, this, UMLRpyPackage.CGI_PACKAGE__COMPARTMENTS);
+		}
+		return compartments;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IPropertyContainer getProperties() {
+		if (properties != null && properties.eIsProxy()) {
+			InternalEObject oldProperties = (InternalEObject)properties;
+			properties = (IPropertyContainer)eResolveProxy(oldProperties);
+			if (properties != oldProperties) {
+				InternalEObject newProperties = (InternalEObject)properties;
+				NotificationChain msgs = oldProperties.eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.CGI_PACKAGE__PROPERTIES, null, null);
+				if (newProperties.eInternalContainer() == null) {
+					msgs = newProperties.eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.CGI_PACKAGE__PROPERTIES, null, msgs);
+				}
+				if (msgs != null) msgs.dispatch();
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.CGI_PACKAGE__PROPERTIES, oldProperties, properties));
+			}
+		}
+		return properties;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IPropertyContainer basicGetProperties() {
+		return properties;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public NotificationChain basicSetProperties(IPropertyContainer newProperties, NotificationChain msgs) {
+		IPropertyContainer oldProperties = properties;
+		properties = newProperties;
+		if (eNotificationRequired()) {
+			ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_PACKAGE__PROPERTIES, oldProperties, newProperties);
+			if (msgs == null) msgs = notification; else msgs.add(notification);
+		}
+		return msgs;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setProperties(IPropertyContainer newProperties) {
+		if (newProperties != properties) {
+			NotificationChain msgs = null;
+			if (properties != null)
+				msgs = ((InternalEObject)properties).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.CGI_PACKAGE__PROPERTIES, null, msgs);
+			if (newProperties != null)
+				msgs = ((InternalEObject)newProperties).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.CGI_PACKAGE__PROPERTIES, null, msgs);
+			msgs = basicSetProperties(newProperties, msgs);
+			if (msgs != null) msgs.dispatch();
+		}
+		else if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_PACKAGE__PROPERTIES, newProperties, newProperties));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IColor getM_color() {
+		if (m_color != null && m_color.eIsProxy()) {
+			InternalEObject oldM_color = (InternalEObject)m_color;
+			m_color = (IColor)eResolveProxy(oldM_color);
+			if (m_color != oldM_color) {
+				InternalEObject newM_color = (InternalEObject)m_color;
+				NotificationChain msgs = oldM_color.eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.CGI_PACKAGE__MCOLOR, null, null);
+				if (newM_color.eInternalContainer() == null) {
+					msgs = newM_color.eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.CGI_PACKAGE__MCOLOR, null, msgs);
+				}
+				if (msgs != null) msgs.dispatch();
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.CGI_PACKAGE__MCOLOR, oldM_color, m_color));
+			}
+		}
+		return m_color;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IColor basicGetM_color() {
+		return m_color;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public NotificationChain basicSetM_color(IColor newM_color, NotificationChain msgs) {
+		IColor oldM_color = m_color;
+		m_color = newM_color;
+		if (eNotificationRequired()) {
+			ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_PACKAGE__MCOLOR, oldM_color, newM_color);
+			if (msgs == null) msgs = notification; else msgs.add(notification);
+		}
+		return msgs;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_color(IColor newM_color) {
+		if (newM_color != m_color) {
+			NotificationChain msgs = null;
+			if (m_color != null)
+				msgs = ((InternalEObject)m_color).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.CGI_PACKAGE__MCOLOR, null, msgs);
+			if (newM_color != null)
+				msgs = ((InternalEObject)newM_color).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.CGI_PACKAGE__MCOLOR, null, msgs);
+			msgs = basicSetM_color(newM_color, msgs);
+			if (msgs != null) msgs.dispatch();
+		}
+		else if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_PACKAGE__MCOLOR, newM_color, newM_color));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getM_lineWidth() {
+		return m_lineWidth;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_lineWidth(String newM_lineWidth) {
+		String oldM_lineWidth = m_lineWidth;
+		m_lineWidth = newM_lineWidth;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_PACKAGE__MLINE_WIDTH, oldM_lineWidth, m_lineWidth));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public CGIText getM_AdditionalLabel() {
+		if (m_AdditionalLabel != null && m_AdditionalLabel.eIsProxy()) {
+			InternalEObject oldM_AdditionalLabel = (InternalEObject)m_AdditionalLabel;
+			m_AdditionalLabel = (CGIText)eResolveProxy(oldM_AdditionalLabel);
+			if (m_AdditionalLabel != oldM_AdditionalLabel) {
+				InternalEObject newM_AdditionalLabel = (InternalEObject)m_AdditionalLabel;
+				NotificationChain msgs = oldM_AdditionalLabel.eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.CGI_PACKAGE__MADDITIONAL_LABEL, null, null);
+				if (newM_AdditionalLabel.eInternalContainer() == null) {
+					msgs = newM_AdditionalLabel.eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.CGI_PACKAGE__MADDITIONAL_LABEL, null, msgs);
+				}
+				if (msgs != null) msgs.dispatch();
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.CGI_PACKAGE__MADDITIONAL_LABEL, oldM_AdditionalLabel, m_AdditionalLabel));
+			}
+		}
+		return m_AdditionalLabel;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public CGIText basicGetM_AdditionalLabel() {
+		return m_AdditionalLabel;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public NotificationChain basicSetM_AdditionalLabel(CGIText newM_AdditionalLabel, NotificationChain msgs) {
+		CGIText oldM_AdditionalLabel = m_AdditionalLabel;
+		m_AdditionalLabel = newM_AdditionalLabel;
+		if (eNotificationRequired()) {
+			ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_PACKAGE__MADDITIONAL_LABEL, oldM_AdditionalLabel, newM_AdditionalLabel);
+			if (msgs == null) msgs = notification; else msgs.add(notification);
+		}
+		return msgs;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_AdditionalLabel(CGIText newM_AdditionalLabel) {
+		if (newM_AdditionalLabel != m_AdditionalLabel) {
+			NotificationChain msgs = null;
+			if (m_AdditionalLabel != null)
+				msgs = ((InternalEObject)m_AdditionalLabel).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.CGI_PACKAGE__MADDITIONAL_LABEL, null, msgs);
+			if (newM_AdditionalLabel != null)
+				msgs = ((InternalEObject)newM_AdditionalLabel).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.CGI_PACKAGE__MADDITIONAL_LABEL, null, msgs);
+			msgs = basicSetM_AdditionalLabel(newM_AdditionalLabel, msgs);
+			if (msgs != null) msgs.dispatch();
+		}
+		else if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_PACKAGE__MADDITIONAL_LABEL, newM_AdditionalLabel, newM_AdditionalLabel));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getFrameset() {
+		return frameset;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setFrameset(String newFrameset) {
+		String oldFrameset = frameset;
+		frameset = newFrameset;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_PACKAGE__FRAMESET, oldFrameset, frameset));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getM_bIsStructured() {
+		return m_bIsStructured;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_bIsStructured(String newM_bIsStructured) {
+		String oldM_bIsStructured = m_bIsStructured;
+		m_bIsStructured = newM_bIsStructured;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_PACKAGE__MBIS_STRUCTURED, oldM_bIsStructured, m_bIsStructured));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
+		switch (featureID) {
+			case UMLRpyPackage.CGI_PACKAGE__PROPERTIES:
+				return basicSetProperties(null, msgs);
+			case UMLRpyPackage.CGI_PACKAGE__MCOLOR:
+				return basicSetM_color(null, msgs);
+			case UMLRpyPackage.CGI_PACKAGE__MADDITIONAL_LABEL:
+				return basicSetM_AdditionalLabel(null, msgs);
+		}
+		return super.eInverseRemove(otherEnd, featureID, msgs);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object eGet(int featureID, boolean resolve, boolean coreType) {
+		switch (featureID) {
+			case UMLRpyPackage.CGI_PACKAGE__MPMODEL_OBJECT:
+				if (resolve) return getM_pModelObject();
+				return basicGetM_pModelObject();
+			case UMLRpyPackage.CGI_PACKAGE__MPPARENT:
+				if (resolve) return getM_pParent();
+				return basicGetM_pParent();
+			case UMLRpyPackage.CGI_PACKAGE__MTRANSFORM:
+				return getM_transform();
+			case UMLRpyPackage.CGI_PACKAGE__MPOLYGON:
+				return getM_polygon();
+			case UMLRpyPackage.CGI_PACKAGE__MNNAME_FORMAT:
+				return getM_nNameFormat();
+			case UMLRpyPackage.CGI_PACKAGE__MNIS_NAME_FORMAT:
+				return getM_nIsNameFormat();
+			case UMLRpyPackage.CGI_PACKAGE__COMPARTMENTS:
+				return getCompartments();
+			case UMLRpyPackage.CGI_PACKAGE__PROPERTIES:
+				if (resolve) return getProperties();
+				return basicGetProperties();
+			case UMLRpyPackage.CGI_PACKAGE__MCOLOR:
+				if (resolve) return getM_color();
+				return basicGetM_color();
+			case UMLRpyPackage.CGI_PACKAGE__MLINE_WIDTH:
+				return getM_lineWidth();
+			case UMLRpyPackage.CGI_PACKAGE__MADDITIONAL_LABEL:
+				if (resolve) return getM_AdditionalLabel();
+				return basicGetM_AdditionalLabel();
+			case UMLRpyPackage.CGI_PACKAGE__FRAMESET:
+				return getFrameset();
+			case UMLRpyPackage.CGI_PACKAGE__MBIS_STRUCTURED:
+				return getM_bIsStructured();
+		}
+		return super.eGet(featureID, resolve, coreType);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@SuppressWarnings("unchecked")
+	@Override
+	public void eSet(int featureID, Object newValue) {
+		switch (featureID) {
+			case UMLRpyPackage.CGI_PACKAGE__MPMODEL_OBJECT:
+				setM_pModelObject((DefaultSubsystemType)newValue);
+				return;
+			case UMLRpyPackage.CGI_PACKAGE__MPPARENT:
+				setM_pParent((M_pRootType)newValue);
+				return;
+			case UMLRpyPackage.CGI_PACKAGE__MTRANSFORM:
+				getM_transform().clear();
+				getM_transform().addAll((Collection<? extends String>)newValue);
+				return;
+			case UMLRpyPackage.CGI_PACKAGE__MPOLYGON:
+				getM_polygon().clear();
+				getM_polygon().addAll((Collection<? extends String>)newValue);
+				return;
+			case UMLRpyPackage.CGI_PACKAGE__MNNAME_FORMAT:
+				setM_nNameFormat((String)newValue);
+				return;
+			case UMLRpyPackage.CGI_PACKAGE__MNIS_NAME_FORMAT:
+				setM_nIsNameFormat((String)newValue);
+				return;
+			case UMLRpyPackage.CGI_PACKAGE__COMPARTMENTS:
+				getCompartments().clear();
+				getCompartments().addAll((Collection<? extends UnknownType>)newValue);
+				return;
+			case UMLRpyPackage.CGI_PACKAGE__PROPERTIES:
+				setProperties((IPropertyContainer)newValue);
+				return;
+			case UMLRpyPackage.CGI_PACKAGE__MCOLOR:
+				setM_color((IColor)newValue);
+				return;
+			case UMLRpyPackage.CGI_PACKAGE__MLINE_WIDTH:
+				setM_lineWidth((String)newValue);
+				return;
+			case UMLRpyPackage.CGI_PACKAGE__MADDITIONAL_LABEL:
+				setM_AdditionalLabel((CGIText)newValue);
+				return;
+			case UMLRpyPackage.CGI_PACKAGE__FRAMESET:
+				setFrameset((String)newValue);
+				return;
+			case UMLRpyPackage.CGI_PACKAGE__MBIS_STRUCTURED:
+				setM_bIsStructured((String)newValue);
+				return;
+		}
+		super.eSet(featureID, newValue);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void eUnset(int featureID) {
+		switch (featureID) {
+			case UMLRpyPackage.CGI_PACKAGE__MPMODEL_OBJECT:
+				setM_pModelObject((DefaultSubsystemType)null);
+				return;
+			case UMLRpyPackage.CGI_PACKAGE__MPPARENT:
+				setM_pParent((M_pRootType)null);
+				return;
+			case UMLRpyPackage.CGI_PACKAGE__MTRANSFORM:
+				getM_transform().clear();
+				return;
+			case UMLRpyPackage.CGI_PACKAGE__MPOLYGON:
+				getM_polygon().clear();
+				return;
+			case UMLRpyPackage.CGI_PACKAGE__MNNAME_FORMAT:
+				setM_nNameFormat(MNNAME_FORMAT_EDEFAULT);
+				return;
+			case UMLRpyPackage.CGI_PACKAGE__MNIS_NAME_FORMAT:
+				setM_nIsNameFormat(MNIS_NAME_FORMAT_EDEFAULT);
+				return;
+			case UMLRpyPackage.CGI_PACKAGE__COMPARTMENTS:
+				getCompartments().clear();
+				return;
+			case UMLRpyPackage.CGI_PACKAGE__PROPERTIES:
+				setProperties((IPropertyContainer)null);
+				return;
+			case UMLRpyPackage.CGI_PACKAGE__MCOLOR:
+				setM_color((IColor)null);
+				return;
+			case UMLRpyPackage.CGI_PACKAGE__MLINE_WIDTH:
+				setM_lineWidth(MLINE_WIDTH_EDEFAULT);
+				return;
+			case UMLRpyPackage.CGI_PACKAGE__MADDITIONAL_LABEL:
+				setM_AdditionalLabel((CGIText)null);
+				return;
+			case UMLRpyPackage.CGI_PACKAGE__FRAMESET:
+				setFrameset(FRAMESET_EDEFAULT);
+				return;
+			case UMLRpyPackage.CGI_PACKAGE__MBIS_STRUCTURED:
+				setM_bIsStructured(MBIS_STRUCTURED_EDEFAULT);
+				return;
+		}
+		super.eUnset(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public boolean eIsSet(int featureID) {
+		switch (featureID) {
+			case UMLRpyPackage.CGI_PACKAGE__MPMODEL_OBJECT:
+				return m_pModelObject != null;
+			case UMLRpyPackage.CGI_PACKAGE__MPPARENT:
+				return m_pParent != null;
+			case UMLRpyPackage.CGI_PACKAGE__MTRANSFORM:
+				return m_transform != null && !m_transform.isEmpty();
+			case UMLRpyPackage.CGI_PACKAGE__MPOLYGON:
+				return m_polygon != null && !m_polygon.isEmpty();
+			case UMLRpyPackage.CGI_PACKAGE__MNNAME_FORMAT:
+				return MNNAME_FORMAT_EDEFAULT == null ? m_nNameFormat != null : !MNNAME_FORMAT_EDEFAULT.equals(m_nNameFormat);
+			case UMLRpyPackage.CGI_PACKAGE__MNIS_NAME_FORMAT:
+				return MNIS_NAME_FORMAT_EDEFAULT == null ? m_nIsNameFormat != null : !MNIS_NAME_FORMAT_EDEFAULT.equals(m_nIsNameFormat);
+			case UMLRpyPackage.CGI_PACKAGE__COMPARTMENTS:
+				return compartments != null && !compartments.isEmpty();
+			case UMLRpyPackage.CGI_PACKAGE__PROPERTIES:
+				return properties != null;
+			case UMLRpyPackage.CGI_PACKAGE__MCOLOR:
+				return m_color != null;
+			case UMLRpyPackage.CGI_PACKAGE__MLINE_WIDTH:
+				return MLINE_WIDTH_EDEFAULT == null ? m_lineWidth != null : !MLINE_WIDTH_EDEFAULT.equals(m_lineWidth);
+			case UMLRpyPackage.CGI_PACKAGE__MADDITIONAL_LABEL:
+				return m_AdditionalLabel != null;
+			case UMLRpyPackage.CGI_PACKAGE__FRAMESET:
+				return FRAMESET_EDEFAULT == null ? frameset != null : !FRAMESET_EDEFAULT.equals(frameset);
+			case UMLRpyPackage.CGI_PACKAGE__MBIS_STRUCTURED:
+				return MBIS_STRUCTURED_EDEFAULT == null ? m_bIsStructured != null : !MBIS_STRUCTURED_EDEFAULT.equals(m_bIsStructured);
+		}
+		return super.eIsSet(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String toString() {
+		if (eIsProxy()) return super.toString();
+
+		StringBuffer result = new StringBuffer(super.toString());
+		result.append(" (m_transform: "); //$NON-NLS-1$
+		result.append(m_transform);
+		result.append(", m_polygon: "); //$NON-NLS-1$
+		result.append(m_polygon);
+		result.append(", m_nNameFormat: "); //$NON-NLS-1$
+		result.append(m_nNameFormat);
+		result.append(", m_nIsNameFormat: "); //$NON-NLS-1$
+		result.append(m_nIsNameFormat);
+		result.append(", m_lineWidth: "); //$NON-NLS-1$
+		result.append(m_lineWidth);
+		result.append(", frameset: "); //$NON-NLS-1$
+		result.append(frameset);
+		result.append(", m_bIsStructured: "); //$NON-NLS-1$
+		result.append(m_bIsStructured);
+		result.append(')');
+		return result.toString();
+	}
+
+} //CGIPackageImpl
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/CGIPartitionImpl.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/CGIPartitionImpl.java
new file mode 100755
index 0000000..d6a2750
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/CGIPartitionImpl.java
@@ -0,0 +1,732 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl;
+
+import java.util.Collection;
+
+import org.eclipse.emf.common.notify.Notification;
+import org.eclipse.emf.common.notify.NotificationChain;
+
+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.EDataTypeEList;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIPartition;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGISwimlaneFrame;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIText;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CompartmentsType;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IPropertyContainer;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ISwimlane;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>CGI Partition</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * </p>
+ * <ul>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIPartitionImpl#getM_pModelObject <em>MpModel Object</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIPartitionImpl#getM_pParent <em>MpParent</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIPartitionImpl#getM_polygon <em>Mpolygon</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIPartitionImpl#getM_nNameFormat <em>MnName Format</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIPartitionImpl#getM_nIsNameFormat <em>MnIs Name Format</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIPartitionImpl#getFrameset <em>Frameset</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIPartitionImpl#getM_AdditionalLabel <em>MAdditional Label</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIPartitionImpl#getProperties <em>Properties</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIPartitionImpl#getCompartments <em>Compartments</em>}</li>
+ * </ul>
+ *
+ * @generated
+ */
+public class CGIPartitionImpl extends GraphElementsTypeImpl implements CGIPartition {
+	/**
+	 * The cached value of the '{@link #getM_pModelObject() <em>MpModel Object</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_pModelObject()
+	 * @generated
+	 * @ordered
+	 */
+	protected ISwimlane m_pModelObject;
+
+	/**
+	 * The cached value of the '{@link #getM_pParent() <em>MpParent</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_pParent()
+	 * @generated
+	 * @ordered
+	 */
+	protected CGISwimlaneFrame m_pParent;
+
+	/**
+	 * The cached value of the '{@link #getM_polygon() <em>Mpolygon</em>}' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_polygon()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<String> m_polygon;
+
+	/**
+	 * The default value of the '{@link #getM_nNameFormat() <em>MnName Format</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_nNameFormat()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String MNNAME_FORMAT_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getM_nNameFormat() <em>MnName Format</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_nNameFormat()
+	 * @generated
+	 * @ordered
+	 */
+	protected String m_nNameFormat = MNNAME_FORMAT_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getM_nIsNameFormat() <em>MnIs Name Format</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_nIsNameFormat()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String MNIS_NAME_FORMAT_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getM_nIsNameFormat() <em>MnIs Name Format</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_nIsNameFormat()
+	 * @generated
+	 * @ordered
+	 */
+	protected String m_nIsNameFormat = MNIS_NAME_FORMAT_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getFrameset() <em>Frameset</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getFrameset()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String FRAMESET_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getFrameset() <em>Frameset</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getFrameset()
+	 * @generated
+	 * @ordered
+	 */
+	protected String frameset = FRAMESET_EDEFAULT;
+
+	/**
+	 * The cached value of the '{@link #getM_AdditionalLabel() <em>MAdditional Label</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_AdditionalLabel()
+	 * @generated
+	 * @ordered
+	 */
+	protected CGIText m_AdditionalLabel;
+
+	/**
+	 * The cached value of the '{@link #getProperties() <em>Properties</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getProperties()
+	 * @generated
+	 * @ordered
+	 */
+	protected IPropertyContainer properties;
+
+	/**
+	 * The cached value of the '{@link #getCompartments() <em>Compartments</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getCompartments()
+	 * @generated
+	 * @ordered
+	 */
+	protected CompartmentsType compartments;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected CGIPartitionImpl() {
+		super();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EClass eStaticClass() {
+		return UMLRpyPackage.eINSTANCE.getCGIPartition();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public ISwimlane getM_pModelObject() {
+		if (m_pModelObject != null && m_pModelObject.eIsProxy()) {
+			InternalEObject oldM_pModelObject = (InternalEObject)m_pModelObject;
+			m_pModelObject = (ISwimlane)eResolveProxy(oldM_pModelObject);
+			if (m_pModelObject != oldM_pModelObject) {
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.CGI_PARTITION__MPMODEL_OBJECT, oldM_pModelObject, m_pModelObject));
+			}
+		}
+		return m_pModelObject;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public ISwimlane basicGetM_pModelObject() {
+		return m_pModelObject;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_pModelObject(ISwimlane newM_pModelObject) {
+		ISwimlane oldM_pModelObject = m_pModelObject;
+		m_pModelObject = newM_pModelObject;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_PARTITION__MPMODEL_OBJECT, oldM_pModelObject, m_pModelObject));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public CGISwimlaneFrame getM_pParent() {
+		if (m_pParent != null && m_pParent.eIsProxy()) {
+			InternalEObject oldM_pParent = (InternalEObject)m_pParent;
+			m_pParent = (CGISwimlaneFrame)eResolveProxy(oldM_pParent);
+			if (m_pParent != oldM_pParent) {
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.CGI_PARTITION__MPPARENT, oldM_pParent, m_pParent));
+			}
+		}
+		return m_pParent;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public CGISwimlaneFrame basicGetM_pParent() {
+		return m_pParent;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_pParent(CGISwimlaneFrame newM_pParent) {
+		CGISwimlaneFrame oldM_pParent = m_pParent;
+		m_pParent = newM_pParent;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_PARTITION__MPPARENT, oldM_pParent, m_pParent));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<String> getM_polygon() {
+		if (m_polygon == null) {
+			m_polygon = new EDataTypeEList<String>(String.class, this, UMLRpyPackage.CGI_PARTITION__MPOLYGON);
+		}
+		return m_polygon;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getM_nNameFormat() {
+		return m_nNameFormat;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_nNameFormat(String newM_nNameFormat) {
+		String oldM_nNameFormat = m_nNameFormat;
+		m_nNameFormat = newM_nNameFormat;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_PARTITION__MNNAME_FORMAT, oldM_nNameFormat, m_nNameFormat));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getM_nIsNameFormat() {
+		return m_nIsNameFormat;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_nIsNameFormat(String newM_nIsNameFormat) {
+		String oldM_nIsNameFormat = m_nIsNameFormat;
+		m_nIsNameFormat = newM_nIsNameFormat;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_PARTITION__MNIS_NAME_FORMAT, oldM_nIsNameFormat, m_nIsNameFormat));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getFrameset() {
+		return frameset;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setFrameset(String newFrameset) {
+		String oldFrameset = frameset;
+		frameset = newFrameset;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_PARTITION__FRAMESET, oldFrameset, frameset));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public CGIText getM_AdditionalLabel() {
+		if (m_AdditionalLabel != null && m_AdditionalLabel.eIsProxy()) {
+			InternalEObject oldM_AdditionalLabel = (InternalEObject)m_AdditionalLabel;
+			m_AdditionalLabel = (CGIText)eResolveProxy(oldM_AdditionalLabel);
+			if (m_AdditionalLabel != oldM_AdditionalLabel) {
+				InternalEObject newM_AdditionalLabel = (InternalEObject)m_AdditionalLabel;
+				NotificationChain msgs = oldM_AdditionalLabel.eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.CGI_PARTITION__MADDITIONAL_LABEL, null, null);
+				if (newM_AdditionalLabel.eInternalContainer() == null) {
+					msgs = newM_AdditionalLabel.eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.CGI_PARTITION__MADDITIONAL_LABEL, null, msgs);
+				}
+				if (msgs != null) msgs.dispatch();
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.CGI_PARTITION__MADDITIONAL_LABEL, oldM_AdditionalLabel, m_AdditionalLabel));
+			}
+		}
+		return m_AdditionalLabel;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public CGIText basicGetM_AdditionalLabel() {
+		return m_AdditionalLabel;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public NotificationChain basicSetM_AdditionalLabel(CGIText newM_AdditionalLabel, NotificationChain msgs) {
+		CGIText oldM_AdditionalLabel = m_AdditionalLabel;
+		m_AdditionalLabel = newM_AdditionalLabel;
+		if (eNotificationRequired()) {
+			ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_PARTITION__MADDITIONAL_LABEL, oldM_AdditionalLabel, newM_AdditionalLabel);
+			if (msgs == null) msgs = notification; else msgs.add(notification);
+		}
+		return msgs;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_AdditionalLabel(CGIText newM_AdditionalLabel) {
+		if (newM_AdditionalLabel != m_AdditionalLabel) {
+			NotificationChain msgs = null;
+			if (m_AdditionalLabel != null)
+				msgs = ((InternalEObject)m_AdditionalLabel).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.CGI_PARTITION__MADDITIONAL_LABEL, null, msgs);
+			if (newM_AdditionalLabel != null)
+				msgs = ((InternalEObject)newM_AdditionalLabel).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.CGI_PARTITION__MADDITIONAL_LABEL, null, msgs);
+			msgs = basicSetM_AdditionalLabel(newM_AdditionalLabel, msgs);
+			if (msgs != null) msgs.dispatch();
+		}
+		else if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_PARTITION__MADDITIONAL_LABEL, newM_AdditionalLabel, newM_AdditionalLabel));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IPropertyContainer getProperties() {
+		if (properties != null && properties.eIsProxy()) {
+			InternalEObject oldProperties = (InternalEObject)properties;
+			properties = (IPropertyContainer)eResolveProxy(oldProperties);
+			if (properties != oldProperties) {
+				InternalEObject newProperties = (InternalEObject)properties;
+				NotificationChain msgs = oldProperties.eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.CGI_PARTITION__PROPERTIES, null, null);
+				if (newProperties.eInternalContainer() == null) {
+					msgs = newProperties.eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.CGI_PARTITION__PROPERTIES, null, msgs);
+				}
+				if (msgs != null) msgs.dispatch();
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.CGI_PARTITION__PROPERTIES, oldProperties, properties));
+			}
+		}
+		return properties;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IPropertyContainer basicGetProperties() {
+		return properties;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public NotificationChain basicSetProperties(IPropertyContainer newProperties, NotificationChain msgs) {
+		IPropertyContainer oldProperties = properties;
+		properties = newProperties;
+		if (eNotificationRequired()) {
+			ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_PARTITION__PROPERTIES, oldProperties, newProperties);
+			if (msgs == null) msgs = notification; else msgs.add(notification);
+		}
+		return msgs;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setProperties(IPropertyContainer newProperties) {
+		if (newProperties != properties) {
+			NotificationChain msgs = null;
+			if (properties != null)
+				msgs = ((InternalEObject)properties).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.CGI_PARTITION__PROPERTIES, null, msgs);
+			if (newProperties != null)
+				msgs = ((InternalEObject)newProperties).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.CGI_PARTITION__PROPERTIES, null, msgs);
+			msgs = basicSetProperties(newProperties, msgs);
+			if (msgs != null) msgs.dispatch();
+		}
+		else if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_PARTITION__PROPERTIES, newProperties, newProperties));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public CompartmentsType getCompartments() {
+		if (compartments != null && compartments.eIsProxy()) {
+			InternalEObject oldCompartments = (InternalEObject)compartments;
+			compartments = (CompartmentsType)eResolveProxy(oldCompartments);
+			if (compartments != oldCompartments) {
+				InternalEObject newCompartments = (InternalEObject)compartments;
+				NotificationChain msgs = oldCompartments.eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.CGI_PARTITION__COMPARTMENTS, null, null);
+				if (newCompartments.eInternalContainer() == null) {
+					msgs = newCompartments.eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.CGI_PARTITION__COMPARTMENTS, null, msgs);
+				}
+				if (msgs != null) msgs.dispatch();
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.CGI_PARTITION__COMPARTMENTS, oldCompartments, compartments));
+			}
+		}
+		return compartments;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public CompartmentsType basicGetCompartments() {
+		return compartments;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public NotificationChain basicSetCompartments(CompartmentsType newCompartments, NotificationChain msgs) {
+		CompartmentsType oldCompartments = compartments;
+		compartments = newCompartments;
+		if (eNotificationRequired()) {
+			ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_PARTITION__COMPARTMENTS, oldCompartments, newCompartments);
+			if (msgs == null) msgs = notification; else msgs.add(notification);
+		}
+		return msgs;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setCompartments(CompartmentsType newCompartments) {
+		if (newCompartments != compartments) {
+			NotificationChain msgs = null;
+			if (compartments != null)
+				msgs = ((InternalEObject)compartments).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.CGI_PARTITION__COMPARTMENTS, null, msgs);
+			if (newCompartments != null)
+				msgs = ((InternalEObject)newCompartments).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.CGI_PARTITION__COMPARTMENTS, null, msgs);
+			msgs = basicSetCompartments(newCompartments, msgs);
+			if (msgs != null) msgs.dispatch();
+		}
+		else if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_PARTITION__COMPARTMENTS, newCompartments, newCompartments));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
+		switch (featureID) {
+			case UMLRpyPackage.CGI_PARTITION__MADDITIONAL_LABEL:
+				return basicSetM_AdditionalLabel(null, msgs);
+			case UMLRpyPackage.CGI_PARTITION__PROPERTIES:
+				return basicSetProperties(null, msgs);
+			case UMLRpyPackage.CGI_PARTITION__COMPARTMENTS:
+				return basicSetCompartments(null, msgs);
+		}
+		return super.eInverseRemove(otherEnd, featureID, msgs);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object eGet(int featureID, boolean resolve, boolean coreType) {
+		switch (featureID) {
+			case UMLRpyPackage.CGI_PARTITION__MPMODEL_OBJECT:
+				if (resolve) return getM_pModelObject();
+				return basicGetM_pModelObject();
+			case UMLRpyPackage.CGI_PARTITION__MPPARENT:
+				if (resolve) return getM_pParent();
+				return basicGetM_pParent();
+			case UMLRpyPackage.CGI_PARTITION__MPOLYGON:
+				return getM_polygon();
+			case UMLRpyPackage.CGI_PARTITION__MNNAME_FORMAT:
+				return getM_nNameFormat();
+			case UMLRpyPackage.CGI_PARTITION__MNIS_NAME_FORMAT:
+				return getM_nIsNameFormat();
+			case UMLRpyPackage.CGI_PARTITION__FRAMESET:
+				return getFrameset();
+			case UMLRpyPackage.CGI_PARTITION__MADDITIONAL_LABEL:
+				if (resolve) return getM_AdditionalLabel();
+				return basicGetM_AdditionalLabel();
+			case UMLRpyPackage.CGI_PARTITION__PROPERTIES:
+				if (resolve) return getProperties();
+				return basicGetProperties();
+			case UMLRpyPackage.CGI_PARTITION__COMPARTMENTS:
+				if (resolve) return getCompartments();
+				return basicGetCompartments();
+		}
+		return super.eGet(featureID, resolve, coreType);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@SuppressWarnings("unchecked")
+	@Override
+	public void eSet(int featureID, Object newValue) {
+		switch (featureID) {
+			case UMLRpyPackage.CGI_PARTITION__MPMODEL_OBJECT:
+				setM_pModelObject((ISwimlane)newValue);
+				return;
+			case UMLRpyPackage.CGI_PARTITION__MPPARENT:
+				setM_pParent((CGISwimlaneFrame)newValue);
+				return;
+			case UMLRpyPackage.CGI_PARTITION__MPOLYGON:
+				getM_polygon().clear();
+				getM_polygon().addAll((Collection<? extends String>)newValue);
+				return;
+			case UMLRpyPackage.CGI_PARTITION__MNNAME_FORMAT:
+				setM_nNameFormat((String)newValue);
+				return;
+			case UMLRpyPackage.CGI_PARTITION__MNIS_NAME_FORMAT:
+				setM_nIsNameFormat((String)newValue);
+				return;
+			case UMLRpyPackage.CGI_PARTITION__FRAMESET:
+				setFrameset((String)newValue);
+				return;
+			case UMLRpyPackage.CGI_PARTITION__MADDITIONAL_LABEL:
+				setM_AdditionalLabel((CGIText)newValue);
+				return;
+			case UMLRpyPackage.CGI_PARTITION__PROPERTIES:
+				setProperties((IPropertyContainer)newValue);
+				return;
+			case UMLRpyPackage.CGI_PARTITION__COMPARTMENTS:
+				setCompartments((CompartmentsType)newValue);
+				return;
+		}
+		super.eSet(featureID, newValue);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void eUnset(int featureID) {
+		switch (featureID) {
+			case UMLRpyPackage.CGI_PARTITION__MPMODEL_OBJECT:
+				setM_pModelObject((ISwimlane)null);
+				return;
+			case UMLRpyPackage.CGI_PARTITION__MPPARENT:
+				setM_pParent((CGISwimlaneFrame)null);
+				return;
+			case UMLRpyPackage.CGI_PARTITION__MPOLYGON:
+				getM_polygon().clear();
+				return;
+			case UMLRpyPackage.CGI_PARTITION__MNNAME_FORMAT:
+				setM_nNameFormat(MNNAME_FORMAT_EDEFAULT);
+				return;
+			case UMLRpyPackage.CGI_PARTITION__MNIS_NAME_FORMAT:
+				setM_nIsNameFormat(MNIS_NAME_FORMAT_EDEFAULT);
+				return;
+			case UMLRpyPackage.CGI_PARTITION__FRAMESET:
+				setFrameset(FRAMESET_EDEFAULT);
+				return;
+			case UMLRpyPackage.CGI_PARTITION__MADDITIONAL_LABEL:
+				setM_AdditionalLabel((CGIText)null);
+				return;
+			case UMLRpyPackage.CGI_PARTITION__PROPERTIES:
+				setProperties((IPropertyContainer)null);
+				return;
+			case UMLRpyPackage.CGI_PARTITION__COMPARTMENTS:
+				setCompartments((CompartmentsType)null);
+				return;
+		}
+		super.eUnset(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public boolean eIsSet(int featureID) {
+		switch (featureID) {
+			case UMLRpyPackage.CGI_PARTITION__MPMODEL_OBJECT:
+				return m_pModelObject != null;
+			case UMLRpyPackage.CGI_PARTITION__MPPARENT:
+				return m_pParent != null;
+			case UMLRpyPackage.CGI_PARTITION__MPOLYGON:
+				return m_polygon != null && !m_polygon.isEmpty();
+			case UMLRpyPackage.CGI_PARTITION__MNNAME_FORMAT:
+				return MNNAME_FORMAT_EDEFAULT == null ? m_nNameFormat != null : !MNNAME_FORMAT_EDEFAULT.equals(m_nNameFormat);
+			case UMLRpyPackage.CGI_PARTITION__MNIS_NAME_FORMAT:
+				return MNIS_NAME_FORMAT_EDEFAULT == null ? m_nIsNameFormat != null : !MNIS_NAME_FORMAT_EDEFAULT.equals(m_nIsNameFormat);
+			case UMLRpyPackage.CGI_PARTITION__FRAMESET:
+				return FRAMESET_EDEFAULT == null ? frameset != null : !FRAMESET_EDEFAULT.equals(frameset);
+			case UMLRpyPackage.CGI_PARTITION__MADDITIONAL_LABEL:
+				return m_AdditionalLabel != null;
+			case UMLRpyPackage.CGI_PARTITION__PROPERTIES:
+				return properties != null;
+			case UMLRpyPackage.CGI_PARTITION__COMPARTMENTS:
+				return compartments != null;
+		}
+		return super.eIsSet(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String toString() {
+		if (eIsProxy()) return super.toString();
+
+		StringBuffer result = new StringBuffer(super.toString());
+		result.append(" (m_polygon: "); //$NON-NLS-1$
+		result.append(m_polygon);
+		result.append(", m_nNameFormat: "); //$NON-NLS-1$
+		result.append(m_nNameFormat);
+		result.append(", m_nIsNameFormat: "); //$NON-NLS-1$
+		result.append(m_nIsNameFormat);
+		result.append(", frameset: "); //$NON-NLS-1$
+		result.append(frameset);
+		result.append(')');
+		return result.toString();
+	}
+
+} //CGIPartitionImpl
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/CGIPortConnectorImpl.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/CGIPortConnectorImpl.java
new file mode 100755
index 0000000..05c0628
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/CGIPortConnectorImpl.java
@@ -0,0 +1,947 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl;
+
+import java.util.Collection;
+
+import org.eclipse.emf.common.notify.Notification;
+import org.eclipse.emf.common.notify.NotificationChain;
+
+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.EDataTypeEList;
+import org.eclipse.emf.ecore.util.EObjectResolvingEList;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIPortConnector;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIText;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IPropertyContainer;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IRelation;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.M_pRootType;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UnknownType;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>CGI Port Connector</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * </p>
+ * <ul>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIPortConnectorImpl#getM_pModelObject <em>MpModel Object</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIPortConnectorImpl#getM_pParent <em>MpParent</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIPortConnectorImpl#getM_transform <em>Mtransform</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIPortConnectorImpl#getM_AdditionalLabel <em>MAdditional Label</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIPortConnectorImpl#getM_position <em>Mposition</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIPortConnectorImpl#getM_pInheritsFrom <em>MpInherits From</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIPortConnectorImpl#getM_nInheritanceMask <em>MnInheritance Mask</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIPortConnectorImpl#getM_SubType <em>MSub Type</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIPortConnectorImpl#getM_providedInterfaceLabel <em>Mprovided Interface Label</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIPortConnectorImpl#getM_requiredInterfaceLabel <em>Mrequired Interface Label</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIPortConnectorImpl#getProperties <em>Properties</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIPortConnectorImpl#getM_bVisible <em>MbVisible</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIPortConnectorImpl#getM_nAngle <em>MnAngle</em>}</li>
+ * </ul>
+ *
+ * @generated
+ */
+public class CGIPortConnectorImpl extends GraphElementsTypeImpl implements CGIPortConnector {
+	/**
+	 * The cached value of the '{@link #getM_pModelObject() <em>MpModel Object</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_pModelObject()
+	 * @generated
+	 * @ordered
+	 */
+	protected IRelation m_pModelObject;
+
+	/**
+	 * The cached value of the '{@link #getM_pParent() <em>MpParent</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_pParent()
+	 * @generated
+	 * @ordered
+	 */
+	protected M_pRootType m_pParent;
+
+	/**
+	 * The cached value of the '{@link #getM_transform() <em>Mtransform</em>}' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_transform()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<String> m_transform;
+
+	/**
+	 * The cached value of the '{@link #getM_AdditionalLabel() <em>MAdditional Label</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_AdditionalLabel()
+	 * @generated
+	 * @ordered
+	 */
+	protected CGIText m_AdditionalLabel;
+
+	/**
+	 * The cached value of the '{@link #getM_position() <em>Mposition</em>}' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_position()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<String> m_position;
+
+	/**
+	 * The cached value of the '{@link #getM_pInheritsFrom() <em>MpInherits From</em>}' reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_pInheritsFrom()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<UnknownType> m_pInheritsFrom;
+
+	/**
+	 * The default value of the '{@link #getM_nInheritanceMask() <em>MnInheritance Mask</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_nInheritanceMask()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String MNINHERITANCE_MASK_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getM_nInheritanceMask() <em>MnInheritance Mask</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_nInheritanceMask()
+	 * @generated
+	 * @ordered
+	 */
+	protected String m_nInheritanceMask = MNINHERITANCE_MASK_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getM_SubType() <em>MSub Type</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_SubType()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String MSUB_TYPE_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getM_SubType() <em>MSub Type</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_SubType()
+	 * @generated
+	 * @ordered
+	 */
+	protected String m_SubType = MSUB_TYPE_EDEFAULT;
+
+	/**
+	 * The cached value of the '{@link #getM_providedInterfaceLabel() <em>Mprovided Interface Label</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_providedInterfaceLabel()
+	 * @generated
+	 * @ordered
+	 */
+	protected CGIText m_providedInterfaceLabel;
+
+	/**
+	 * The cached value of the '{@link #getM_requiredInterfaceLabel() <em>Mrequired Interface Label</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_requiredInterfaceLabel()
+	 * @generated
+	 * @ordered
+	 */
+	protected CGIText m_requiredInterfaceLabel;
+
+	/**
+	 * The cached value of the '{@link #getProperties() <em>Properties</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getProperties()
+	 * @generated
+	 * @ordered
+	 */
+	protected IPropertyContainer properties;
+
+	/**
+	 * The default value of the '{@link #getM_bVisible() <em>MbVisible</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_bVisible()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String MBVISIBLE_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getM_bVisible() <em>MbVisible</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_bVisible()
+	 * @generated
+	 * @ordered
+	 */
+	protected String m_bVisible = MBVISIBLE_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getM_nAngle() <em>MnAngle</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_nAngle()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String MNANGLE_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getM_nAngle() <em>MnAngle</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_nAngle()
+	 * @generated
+	 * @ordered
+	 */
+	protected String m_nAngle = MNANGLE_EDEFAULT;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected CGIPortConnectorImpl() {
+		super();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EClass eStaticClass() {
+		return UMLRpyPackage.eINSTANCE.getCGIPortConnector();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IRelation getM_pModelObject() {
+		if (m_pModelObject != null && m_pModelObject.eIsProxy()) {
+			InternalEObject oldM_pModelObject = (InternalEObject)m_pModelObject;
+			m_pModelObject = (IRelation)eResolveProxy(oldM_pModelObject);
+			if (m_pModelObject != oldM_pModelObject) {
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.CGI_PORT_CONNECTOR__MPMODEL_OBJECT, oldM_pModelObject, m_pModelObject));
+			}
+		}
+		return m_pModelObject;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IRelation basicGetM_pModelObject() {
+		return m_pModelObject;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_pModelObject(IRelation newM_pModelObject) {
+		IRelation oldM_pModelObject = m_pModelObject;
+		m_pModelObject = newM_pModelObject;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_PORT_CONNECTOR__MPMODEL_OBJECT, oldM_pModelObject, m_pModelObject));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public M_pRootType getM_pParent() {
+		if (m_pParent != null && m_pParent.eIsProxy()) {
+			InternalEObject oldM_pParent = (InternalEObject)m_pParent;
+			m_pParent = (M_pRootType)eResolveProxy(oldM_pParent);
+			if (m_pParent != oldM_pParent) {
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.CGI_PORT_CONNECTOR__MPPARENT, oldM_pParent, m_pParent));
+			}
+		}
+		return m_pParent;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public M_pRootType basicGetM_pParent() {
+		return m_pParent;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_pParent(M_pRootType newM_pParent) {
+		M_pRootType oldM_pParent = m_pParent;
+		m_pParent = newM_pParent;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_PORT_CONNECTOR__MPPARENT, oldM_pParent, m_pParent));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<String> getM_transform() {
+		if (m_transform == null) {
+			m_transform = new EDataTypeEList<String>(String.class, this, UMLRpyPackage.CGI_PORT_CONNECTOR__MTRANSFORM);
+		}
+		return m_transform;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public CGIText getM_AdditionalLabel() {
+		if (m_AdditionalLabel != null && m_AdditionalLabel.eIsProxy()) {
+			InternalEObject oldM_AdditionalLabel = (InternalEObject)m_AdditionalLabel;
+			m_AdditionalLabel = (CGIText)eResolveProxy(oldM_AdditionalLabel);
+			if (m_AdditionalLabel != oldM_AdditionalLabel) {
+				InternalEObject newM_AdditionalLabel = (InternalEObject)m_AdditionalLabel;
+				NotificationChain msgs = oldM_AdditionalLabel.eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.CGI_PORT_CONNECTOR__MADDITIONAL_LABEL, null, null);
+				if (newM_AdditionalLabel.eInternalContainer() == null) {
+					msgs = newM_AdditionalLabel.eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.CGI_PORT_CONNECTOR__MADDITIONAL_LABEL, null, msgs);
+				}
+				if (msgs != null) msgs.dispatch();
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.CGI_PORT_CONNECTOR__MADDITIONAL_LABEL, oldM_AdditionalLabel, m_AdditionalLabel));
+			}
+		}
+		return m_AdditionalLabel;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public CGIText basicGetM_AdditionalLabel() {
+		return m_AdditionalLabel;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public NotificationChain basicSetM_AdditionalLabel(CGIText newM_AdditionalLabel, NotificationChain msgs) {
+		CGIText oldM_AdditionalLabel = m_AdditionalLabel;
+		m_AdditionalLabel = newM_AdditionalLabel;
+		if (eNotificationRequired()) {
+			ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_PORT_CONNECTOR__MADDITIONAL_LABEL, oldM_AdditionalLabel, newM_AdditionalLabel);
+			if (msgs == null) msgs = notification; else msgs.add(notification);
+		}
+		return msgs;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_AdditionalLabel(CGIText newM_AdditionalLabel) {
+		if (newM_AdditionalLabel != m_AdditionalLabel) {
+			NotificationChain msgs = null;
+			if (m_AdditionalLabel != null)
+				msgs = ((InternalEObject)m_AdditionalLabel).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.CGI_PORT_CONNECTOR__MADDITIONAL_LABEL, null, msgs);
+			if (newM_AdditionalLabel != null)
+				msgs = ((InternalEObject)newM_AdditionalLabel).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.CGI_PORT_CONNECTOR__MADDITIONAL_LABEL, null, msgs);
+			msgs = basicSetM_AdditionalLabel(newM_AdditionalLabel, msgs);
+			if (msgs != null) msgs.dispatch();
+		}
+		else if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_PORT_CONNECTOR__MADDITIONAL_LABEL, newM_AdditionalLabel, newM_AdditionalLabel));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<String> getM_position() {
+		if (m_position == null) {
+			m_position = new EDataTypeEList<String>(String.class, this, UMLRpyPackage.CGI_PORT_CONNECTOR__MPOSITION);
+		}
+		return m_position;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<UnknownType> getM_pInheritsFrom() {
+		if (m_pInheritsFrom == null) {
+			m_pInheritsFrom = new EObjectResolvingEList<UnknownType>(UnknownType.class, this, UMLRpyPackage.CGI_PORT_CONNECTOR__MPINHERITS_FROM);
+		}
+		return m_pInheritsFrom;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getM_nInheritanceMask() {
+		return m_nInheritanceMask;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_nInheritanceMask(String newM_nInheritanceMask) {
+		String oldM_nInheritanceMask = m_nInheritanceMask;
+		m_nInheritanceMask = newM_nInheritanceMask;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_PORT_CONNECTOR__MNINHERITANCE_MASK, oldM_nInheritanceMask, m_nInheritanceMask));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getM_SubType() {
+		return m_SubType;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_SubType(String newM_SubType) {
+		String oldM_SubType = m_SubType;
+		m_SubType = newM_SubType;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_PORT_CONNECTOR__MSUB_TYPE, oldM_SubType, m_SubType));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public CGIText getM_providedInterfaceLabel() {
+		if (m_providedInterfaceLabel != null && m_providedInterfaceLabel.eIsProxy()) {
+			InternalEObject oldM_providedInterfaceLabel = (InternalEObject)m_providedInterfaceLabel;
+			m_providedInterfaceLabel = (CGIText)eResolveProxy(oldM_providedInterfaceLabel);
+			if (m_providedInterfaceLabel != oldM_providedInterfaceLabel) {
+				InternalEObject newM_providedInterfaceLabel = (InternalEObject)m_providedInterfaceLabel;
+				NotificationChain msgs = oldM_providedInterfaceLabel.eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.CGI_PORT_CONNECTOR__MPROVIDED_INTERFACE_LABEL, null, null);
+				if (newM_providedInterfaceLabel.eInternalContainer() == null) {
+					msgs = newM_providedInterfaceLabel.eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.CGI_PORT_CONNECTOR__MPROVIDED_INTERFACE_LABEL, null, msgs);
+				}
+				if (msgs != null) msgs.dispatch();
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.CGI_PORT_CONNECTOR__MPROVIDED_INTERFACE_LABEL, oldM_providedInterfaceLabel, m_providedInterfaceLabel));
+			}
+		}
+		return m_providedInterfaceLabel;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public CGIText basicGetM_providedInterfaceLabel() {
+		return m_providedInterfaceLabel;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public NotificationChain basicSetM_providedInterfaceLabel(CGIText newM_providedInterfaceLabel, NotificationChain msgs) {
+		CGIText oldM_providedInterfaceLabel = m_providedInterfaceLabel;
+		m_providedInterfaceLabel = newM_providedInterfaceLabel;
+		if (eNotificationRequired()) {
+			ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_PORT_CONNECTOR__MPROVIDED_INTERFACE_LABEL, oldM_providedInterfaceLabel, newM_providedInterfaceLabel);
+			if (msgs == null) msgs = notification; else msgs.add(notification);
+		}
+		return msgs;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_providedInterfaceLabel(CGIText newM_providedInterfaceLabel) {
+		if (newM_providedInterfaceLabel != m_providedInterfaceLabel) {
+			NotificationChain msgs = null;
+			if (m_providedInterfaceLabel != null)
+				msgs = ((InternalEObject)m_providedInterfaceLabel).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.CGI_PORT_CONNECTOR__MPROVIDED_INTERFACE_LABEL, null, msgs);
+			if (newM_providedInterfaceLabel != null)
+				msgs = ((InternalEObject)newM_providedInterfaceLabel).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.CGI_PORT_CONNECTOR__MPROVIDED_INTERFACE_LABEL, null, msgs);
+			msgs = basicSetM_providedInterfaceLabel(newM_providedInterfaceLabel, msgs);
+			if (msgs != null) msgs.dispatch();
+		}
+		else if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_PORT_CONNECTOR__MPROVIDED_INTERFACE_LABEL, newM_providedInterfaceLabel, newM_providedInterfaceLabel));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public CGIText getM_requiredInterfaceLabel() {
+		if (m_requiredInterfaceLabel != null && m_requiredInterfaceLabel.eIsProxy()) {
+			InternalEObject oldM_requiredInterfaceLabel = (InternalEObject)m_requiredInterfaceLabel;
+			m_requiredInterfaceLabel = (CGIText)eResolveProxy(oldM_requiredInterfaceLabel);
+			if (m_requiredInterfaceLabel != oldM_requiredInterfaceLabel) {
+				InternalEObject newM_requiredInterfaceLabel = (InternalEObject)m_requiredInterfaceLabel;
+				NotificationChain msgs = oldM_requiredInterfaceLabel.eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.CGI_PORT_CONNECTOR__MREQUIRED_INTERFACE_LABEL, null, null);
+				if (newM_requiredInterfaceLabel.eInternalContainer() == null) {
+					msgs = newM_requiredInterfaceLabel.eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.CGI_PORT_CONNECTOR__MREQUIRED_INTERFACE_LABEL, null, msgs);
+				}
+				if (msgs != null) msgs.dispatch();
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.CGI_PORT_CONNECTOR__MREQUIRED_INTERFACE_LABEL, oldM_requiredInterfaceLabel, m_requiredInterfaceLabel));
+			}
+		}
+		return m_requiredInterfaceLabel;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public CGIText basicGetM_requiredInterfaceLabel() {
+		return m_requiredInterfaceLabel;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public NotificationChain basicSetM_requiredInterfaceLabel(CGIText newM_requiredInterfaceLabel, NotificationChain msgs) {
+		CGIText oldM_requiredInterfaceLabel = m_requiredInterfaceLabel;
+		m_requiredInterfaceLabel = newM_requiredInterfaceLabel;
+		if (eNotificationRequired()) {
+			ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_PORT_CONNECTOR__MREQUIRED_INTERFACE_LABEL, oldM_requiredInterfaceLabel, newM_requiredInterfaceLabel);
+			if (msgs == null) msgs = notification; else msgs.add(notification);
+		}
+		return msgs;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_requiredInterfaceLabel(CGIText newM_requiredInterfaceLabel) {
+		if (newM_requiredInterfaceLabel != m_requiredInterfaceLabel) {
+			NotificationChain msgs = null;
+			if (m_requiredInterfaceLabel != null)
+				msgs = ((InternalEObject)m_requiredInterfaceLabel).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.CGI_PORT_CONNECTOR__MREQUIRED_INTERFACE_LABEL, null, msgs);
+			if (newM_requiredInterfaceLabel != null)
+				msgs = ((InternalEObject)newM_requiredInterfaceLabel).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.CGI_PORT_CONNECTOR__MREQUIRED_INTERFACE_LABEL, null, msgs);
+			msgs = basicSetM_requiredInterfaceLabel(newM_requiredInterfaceLabel, msgs);
+			if (msgs != null) msgs.dispatch();
+		}
+		else if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_PORT_CONNECTOR__MREQUIRED_INTERFACE_LABEL, newM_requiredInterfaceLabel, newM_requiredInterfaceLabel));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IPropertyContainer getProperties() {
+		if (properties != null && properties.eIsProxy()) {
+			InternalEObject oldProperties = (InternalEObject)properties;
+			properties = (IPropertyContainer)eResolveProxy(oldProperties);
+			if (properties != oldProperties) {
+				InternalEObject newProperties = (InternalEObject)properties;
+				NotificationChain msgs = oldProperties.eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.CGI_PORT_CONNECTOR__PROPERTIES, null, null);
+				if (newProperties.eInternalContainer() == null) {
+					msgs = newProperties.eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.CGI_PORT_CONNECTOR__PROPERTIES, null, msgs);
+				}
+				if (msgs != null) msgs.dispatch();
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.CGI_PORT_CONNECTOR__PROPERTIES, oldProperties, properties));
+			}
+		}
+		return properties;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IPropertyContainer basicGetProperties() {
+		return properties;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public NotificationChain basicSetProperties(IPropertyContainer newProperties, NotificationChain msgs) {
+		IPropertyContainer oldProperties = properties;
+		properties = newProperties;
+		if (eNotificationRequired()) {
+			ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_PORT_CONNECTOR__PROPERTIES, oldProperties, newProperties);
+			if (msgs == null) msgs = notification; else msgs.add(notification);
+		}
+		return msgs;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setProperties(IPropertyContainer newProperties) {
+		if (newProperties != properties) {
+			NotificationChain msgs = null;
+			if (properties != null)
+				msgs = ((InternalEObject)properties).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.CGI_PORT_CONNECTOR__PROPERTIES, null, msgs);
+			if (newProperties != null)
+				msgs = ((InternalEObject)newProperties).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.CGI_PORT_CONNECTOR__PROPERTIES, null, msgs);
+			msgs = basicSetProperties(newProperties, msgs);
+			if (msgs != null) msgs.dispatch();
+		}
+		else if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_PORT_CONNECTOR__PROPERTIES, newProperties, newProperties));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getM_bVisible() {
+		return m_bVisible;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_bVisible(String newM_bVisible) {
+		String oldM_bVisible = m_bVisible;
+		m_bVisible = newM_bVisible;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_PORT_CONNECTOR__MBVISIBLE, oldM_bVisible, m_bVisible));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getM_nAngle() {
+		return m_nAngle;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_nAngle(String newM_nAngle) {
+		String oldM_nAngle = m_nAngle;
+		m_nAngle = newM_nAngle;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_PORT_CONNECTOR__MNANGLE, oldM_nAngle, m_nAngle));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
+		switch (featureID) {
+			case UMLRpyPackage.CGI_PORT_CONNECTOR__MADDITIONAL_LABEL:
+				return basicSetM_AdditionalLabel(null, msgs);
+			case UMLRpyPackage.CGI_PORT_CONNECTOR__MPROVIDED_INTERFACE_LABEL:
+				return basicSetM_providedInterfaceLabel(null, msgs);
+			case UMLRpyPackage.CGI_PORT_CONNECTOR__MREQUIRED_INTERFACE_LABEL:
+				return basicSetM_requiredInterfaceLabel(null, msgs);
+			case UMLRpyPackage.CGI_PORT_CONNECTOR__PROPERTIES:
+				return basicSetProperties(null, msgs);
+		}
+		return super.eInverseRemove(otherEnd, featureID, msgs);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object eGet(int featureID, boolean resolve, boolean coreType) {
+		switch (featureID) {
+			case UMLRpyPackage.CGI_PORT_CONNECTOR__MPMODEL_OBJECT:
+				if (resolve) return getM_pModelObject();
+				return basicGetM_pModelObject();
+			case UMLRpyPackage.CGI_PORT_CONNECTOR__MPPARENT:
+				if (resolve) return getM_pParent();
+				return basicGetM_pParent();
+			case UMLRpyPackage.CGI_PORT_CONNECTOR__MTRANSFORM:
+				return getM_transform();
+			case UMLRpyPackage.CGI_PORT_CONNECTOR__MADDITIONAL_LABEL:
+				if (resolve) return getM_AdditionalLabel();
+				return basicGetM_AdditionalLabel();
+			case UMLRpyPackage.CGI_PORT_CONNECTOR__MPOSITION:
+				return getM_position();
+			case UMLRpyPackage.CGI_PORT_CONNECTOR__MPINHERITS_FROM:
+				return getM_pInheritsFrom();
+			case UMLRpyPackage.CGI_PORT_CONNECTOR__MNINHERITANCE_MASK:
+				return getM_nInheritanceMask();
+			case UMLRpyPackage.CGI_PORT_CONNECTOR__MSUB_TYPE:
+				return getM_SubType();
+			case UMLRpyPackage.CGI_PORT_CONNECTOR__MPROVIDED_INTERFACE_LABEL:
+				if (resolve) return getM_providedInterfaceLabel();
+				return basicGetM_providedInterfaceLabel();
+			case UMLRpyPackage.CGI_PORT_CONNECTOR__MREQUIRED_INTERFACE_LABEL:
+				if (resolve) return getM_requiredInterfaceLabel();
+				return basicGetM_requiredInterfaceLabel();
+			case UMLRpyPackage.CGI_PORT_CONNECTOR__PROPERTIES:
+				if (resolve) return getProperties();
+				return basicGetProperties();
+			case UMLRpyPackage.CGI_PORT_CONNECTOR__MBVISIBLE:
+				return getM_bVisible();
+			case UMLRpyPackage.CGI_PORT_CONNECTOR__MNANGLE:
+				return getM_nAngle();
+		}
+		return super.eGet(featureID, resolve, coreType);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@SuppressWarnings("unchecked")
+	@Override
+	public void eSet(int featureID, Object newValue) {
+		switch (featureID) {
+			case UMLRpyPackage.CGI_PORT_CONNECTOR__MPMODEL_OBJECT:
+				setM_pModelObject((IRelation)newValue);
+				return;
+			case UMLRpyPackage.CGI_PORT_CONNECTOR__MPPARENT:
+				setM_pParent((M_pRootType)newValue);
+				return;
+			case UMLRpyPackage.CGI_PORT_CONNECTOR__MTRANSFORM:
+				getM_transform().clear();
+				getM_transform().addAll((Collection<? extends String>)newValue);
+				return;
+			case UMLRpyPackage.CGI_PORT_CONNECTOR__MADDITIONAL_LABEL:
+				setM_AdditionalLabel((CGIText)newValue);
+				return;
+			case UMLRpyPackage.CGI_PORT_CONNECTOR__MPOSITION:
+				getM_position().clear();
+				getM_position().addAll((Collection<? extends String>)newValue);
+				return;
+			case UMLRpyPackage.CGI_PORT_CONNECTOR__MPINHERITS_FROM:
+				getM_pInheritsFrom().clear();
+				getM_pInheritsFrom().addAll((Collection<? extends UnknownType>)newValue);
+				return;
+			case UMLRpyPackage.CGI_PORT_CONNECTOR__MNINHERITANCE_MASK:
+				setM_nInheritanceMask((String)newValue);
+				return;
+			case UMLRpyPackage.CGI_PORT_CONNECTOR__MSUB_TYPE:
+				setM_SubType((String)newValue);
+				return;
+			case UMLRpyPackage.CGI_PORT_CONNECTOR__MPROVIDED_INTERFACE_LABEL:
+				setM_providedInterfaceLabel((CGIText)newValue);
+				return;
+			case UMLRpyPackage.CGI_PORT_CONNECTOR__MREQUIRED_INTERFACE_LABEL:
+				setM_requiredInterfaceLabel((CGIText)newValue);
+				return;
+			case UMLRpyPackage.CGI_PORT_CONNECTOR__PROPERTIES:
+				setProperties((IPropertyContainer)newValue);
+				return;
+			case UMLRpyPackage.CGI_PORT_CONNECTOR__MBVISIBLE:
+				setM_bVisible((String)newValue);
+				return;
+			case UMLRpyPackage.CGI_PORT_CONNECTOR__MNANGLE:
+				setM_nAngle((String)newValue);
+				return;
+		}
+		super.eSet(featureID, newValue);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void eUnset(int featureID) {
+		switch (featureID) {
+			case UMLRpyPackage.CGI_PORT_CONNECTOR__MPMODEL_OBJECT:
+				setM_pModelObject((IRelation)null);
+				return;
+			case UMLRpyPackage.CGI_PORT_CONNECTOR__MPPARENT:
+				setM_pParent((M_pRootType)null);
+				return;
+			case UMLRpyPackage.CGI_PORT_CONNECTOR__MTRANSFORM:
+				getM_transform().clear();
+				return;
+			case UMLRpyPackage.CGI_PORT_CONNECTOR__MADDITIONAL_LABEL:
+				setM_AdditionalLabel((CGIText)null);
+				return;
+			case UMLRpyPackage.CGI_PORT_CONNECTOR__MPOSITION:
+				getM_position().clear();
+				return;
+			case UMLRpyPackage.CGI_PORT_CONNECTOR__MPINHERITS_FROM:
+				getM_pInheritsFrom().clear();
+				return;
+			case UMLRpyPackage.CGI_PORT_CONNECTOR__MNINHERITANCE_MASK:
+				setM_nInheritanceMask(MNINHERITANCE_MASK_EDEFAULT);
+				return;
+			case UMLRpyPackage.CGI_PORT_CONNECTOR__MSUB_TYPE:
+				setM_SubType(MSUB_TYPE_EDEFAULT);
+				return;
+			case UMLRpyPackage.CGI_PORT_CONNECTOR__MPROVIDED_INTERFACE_LABEL:
+				setM_providedInterfaceLabel((CGIText)null);
+				return;
+			case UMLRpyPackage.CGI_PORT_CONNECTOR__MREQUIRED_INTERFACE_LABEL:
+				setM_requiredInterfaceLabel((CGIText)null);
+				return;
+			case UMLRpyPackage.CGI_PORT_CONNECTOR__PROPERTIES:
+				setProperties((IPropertyContainer)null);
+				return;
+			case UMLRpyPackage.CGI_PORT_CONNECTOR__MBVISIBLE:
+				setM_bVisible(MBVISIBLE_EDEFAULT);
+				return;
+			case UMLRpyPackage.CGI_PORT_CONNECTOR__MNANGLE:
+				setM_nAngle(MNANGLE_EDEFAULT);
+				return;
+		}
+		super.eUnset(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public boolean eIsSet(int featureID) {
+		switch (featureID) {
+			case UMLRpyPackage.CGI_PORT_CONNECTOR__MPMODEL_OBJECT:
+				return m_pModelObject != null;
+			case UMLRpyPackage.CGI_PORT_CONNECTOR__MPPARENT:
+				return m_pParent != null;
+			case UMLRpyPackage.CGI_PORT_CONNECTOR__MTRANSFORM:
+				return m_transform != null && !m_transform.isEmpty();
+			case UMLRpyPackage.CGI_PORT_CONNECTOR__MADDITIONAL_LABEL:
+				return m_AdditionalLabel != null;
+			case UMLRpyPackage.CGI_PORT_CONNECTOR__MPOSITION:
+				return m_position != null && !m_position.isEmpty();
+			case UMLRpyPackage.CGI_PORT_CONNECTOR__MPINHERITS_FROM:
+				return m_pInheritsFrom != null && !m_pInheritsFrom.isEmpty();
+			case UMLRpyPackage.CGI_PORT_CONNECTOR__MNINHERITANCE_MASK:
+				return MNINHERITANCE_MASK_EDEFAULT == null ? m_nInheritanceMask != null : !MNINHERITANCE_MASK_EDEFAULT.equals(m_nInheritanceMask);
+			case UMLRpyPackage.CGI_PORT_CONNECTOR__MSUB_TYPE:
+				return MSUB_TYPE_EDEFAULT == null ? m_SubType != null : !MSUB_TYPE_EDEFAULT.equals(m_SubType);
+			case UMLRpyPackage.CGI_PORT_CONNECTOR__MPROVIDED_INTERFACE_LABEL:
+				return m_providedInterfaceLabel != null;
+			case UMLRpyPackage.CGI_PORT_CONNECTOR__MREQUIRED_INTERFACE_LABEL:
+				return m_requiredInterfaceLabel != null;
+			case UMLRpyPackage.CGI_PORT_CONNECTOR__PROPERTIES:
+				return properties != null;
+			case UMLRpyPackage.CGI_PORT_CONNECTOR__MBVISIBLE:
+				return MBVISIBLE_EDEFAULT == null ? m_bVisible != null : !MBVISIBLE_EDEFAULT.equals(m_bVisible);
+			case UMLRpyPackage.CGI_PORT_CONNECTOR__MNANGLE:
+				return MNANGLE_EDEFAULT == null ? m_nAngle != null : !MNANGLE_EDEFAULT.equals(m_nAngle);
+		}
+		return super.eIsSet(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String toString() {
+		if (eIsProxy()) return super.toString();
+
+		StringBuffer result = new StringBuffer(super.toString());
+		result.append(" (m_transform: "); //$NON-NLS-1$
+		result.append(m_transform);
+		result.append(", m_position: "); //$NON-NLS-1$
+		result.append(m_position);
+		result.append(", m_nInheritanceMask: "); //$NON-NLS-1$
+		result.append(m_nInheritanceMask);
+		result.append(", m_SubType: "); //$NON-NLS-1$
+		result.append(m_SubType);
+		result.append(", m_bVisible: "); //$NON-NLS-1$
+		result.append(m_bVisible);
+		result.append(", m_nAngle: "); //$NON-NLS-1$
+		result.append(m_nAngle);
+		result.append(')');
+		return result.toString();
+	}
+
+} //CGIPortConnectorImpl
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/CGIStateChartImpl.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/CGIStateChartImpl.java
new file mode 100755
index 0000000..b7a3865
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/CGIStateChartImpl.java
@@ -0,0 +1,502 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl;
+
+import java.util.Collection;
+
+import org.eclipse.emf.common.notify.Notification;
+import org.eclipse.emf.common.notify.NotificationChain;
+
+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.interoperability.rpy.rpymetamodel.CGIState;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIStateChart;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.GraphicChartType;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IPropertyContainer;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.NestedStateChartType;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UnknownType;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>CGI State Chart</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * </p>
+ * <ul>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIStateChartImpl#getM_pModelObject <em>MpModel Object</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIStateChartImpl#getM_pRoot <em>MpRoot</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIStateChartImpl#getMyState <em>My State</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIStateChartImpl#getM_pInheritsFrom <em>MpInherits From</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIStateChartImpl#getDiagramList <em>Diagram List</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIStateChartImpl#getProperties <em>Properties</em>}</li>
+ * </ul>
+ *
+ * @generated
+ */
+public class CGIStateChartImpl extends GraphicChartTypeImpl implements CGIStateChart {
+	/**
+	 * The cached value of the '{@link #getM_pModelObject() <em>MpModel Object</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_pModelObject()
+	 * @generated
+	 * @ordered
+	 */
+	protected NestedStateChartType m_pModelObject;
+
+	/**
+	 * The cached value of the '{@link #getM_pRoot() <em>MpRoot</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_pRoot()
+	 * @generated
+	 * @ordered
+	 */
+	protected CGIState m_pRoot;
+
+	/**
+	 * The default value of the '{@link #getMyState() <em>My State</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getMyState()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String MY_STATE_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getMyState() <em>My State</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getMyState()
+	 * @generated
+	 * @ordered
+	 */
+	protected String myState = MY_STATE_EDEFAULT;
+
+	/**
+	 * The cached value of the '{@link #getM_pInheritsFrom() <em>MpInherits From</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_pInheritsFrom()
+	 * @generated
+	 * @ordered
+	 */
+	protected GraphicChartType m_pInheritsFrom;
+
+	/**
+	 * The cached value of the '{@link #getDiagramList() <em>Diagram List</em>}' reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getDiagramList()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<UnknownType> diagramList;
+
+	/**
+	 * The cached value of the '{@link #getProperties() <em>Properties</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getProperties()
+	 * @generated
+	 * @ordered
+	 */
+	protected IPropertyContainer properties;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected CGIStateChartImpl() {
+		super();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EClass eStaticClass() {
+		return UMLRpyPackage.eINSTANCE.getCGIStateChart();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public NestedStateChartType getM_pModelObject() {
+		if (m_pModelObject != null && m_pModelObject.eIsProxy()) {
+			InternalEObject oldM_pModelObject = (InternalEObject)m_pModelObject;
+			m_pModelObject = (NestedStateChartType)eResolveProxy(oldM_pModelObject);
+			if (m_pModelObject != oldM_pModelObject) {
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.CGI_STATE_CHART__MPMODEL_OBJECT, oldM_pModelObject, m_pModelObject));
+			}
+		}
+		return m_pModelObject;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public NestedStateChartType basicGetM_pModelObject() {
+		return m_pModelObject;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_pModelObject(NestedStateChartType newM_pModelObject) {
+		NestedStateChartType oldM_pModelObject = m_pModelObject;
+		m_pModelObject = newM_pModelObject;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_STATE_CHART__MPMODEL_OBJECT, oldM_pModelObject, m_pModelObject));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public CGIState getM_pRoot() {
+		if (m_pRoot != null && m_pRoot.eIsProxy()) {
+			InternalEObject oldM_pRoot = (InternalEObject)m_pRoot;
+			m_pRoot = (CGIState)eResolveProxy(oldM_pRoot);
+			if (m_pRoot != oldM_pRoot) {
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.CGI_STATE_CHART__MPROOT, oldM_pRoot, m_pRoot));
+			}
+		}
+		return m_pRoot;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public CGIState basicGetM_pRoot() {
+		return m_pRoot;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_pRoot(CGIState newM_pRoot) {
+		CGIState oldM_pRoot = m_pRoot;
+		m_pRoot = newM_pRoot;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_STATE_CHART__MPROOT, oldM_pRoot, m_pRoot));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getMyState() {
+		return myState;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setMyState(String newMyState) {
+		String oldMyState = myState;
+		myState = newMyState;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_STATE_CHART__MY_STATE, oldMyState, myState));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public GraphicChartType getM_pInheritsFrom() {
+		if (m_pInheritsFrom != null && m_pInheritsFrom.eIsProxy()) {
+			InternalEObject oldM_pInheritsFrom = (InternalEObject)m_pInheritsFrom;
+			m_pInheritsFrom = (GraphicChartType)eResolveProxy(oldM_pInheritsFrom);
+			if (m_pInheritsFrom != oldM_pInheritsFrom) {
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.CGI_STATE_CHART__MPINHERITS_FROM, oldM_pInheritsFrom, m_pInheritsFrom));
+			}
+		}
+		return m_pInheritsFrom;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public GraphicChartType basicGetM_pInheritsFrom() {
+		return m_pInheritsFrom;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_pInheritsFrom(GraphicChartType newM_pInheritsFrom) {
+		GraphicChartType oldM_pInheritsFrom = m_pInheritsFrom;
+		m_pInheritsFrom = newM_pInheritsFrom;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_STATE_CHART__MPINHERITS_FROM, oldM_pInheritsFrom, m_pInheritsFrom));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<UnknownType> getDiagramList() {
+		if (diagramList == null) {
+			diagramList = new EObjectResolvingEList<UnknownType>(UnknownType.class, this, UMLRpyPackage.CGI_STATE_CHART__DIAGRAM_LIST);
+		}
+		return diagramList;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IPropertyContainer getProperties() {
+		if (properties != null && properties.eIsProxy()) {
+			InternalEObject oldProperties = (InternalEObject)properties;
+			properties = (IPropertyContainer)eResolveProxy(oldProperties);
+			if (properties != oldProperties) {
+				InternalEObject newProperties = (InternalEObject)properties;
+				NotificationChain msgs = oldProperties.eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.CGI_STATE_CHART__PROPERTIES, null, null);
+				if (newProperties.eInternalContainer() == null) {
+					msgs = newProperties.eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.CGI_STATE_CHART__PROPERTIES, null, msgs);
+				}
+				if (msgs != null) msgs.dispatch();
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.CGI_STATE_CHART__PROPERTIES, oldProperties, properties));
+			}
+		}
+		return properties;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IPropertyContainer basicGetProperties() {
+		return properties;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public NotificationChain basicSetProperties(IPropertyContainer newProperties, NotificationChain msgs) {
+		IPropertyContainer oldProperties = properties;
+		properties = newProperties;
+		if (eNotificationRequired()) {
+			ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_STATE_CHART__PROPERTIES, oldProperties, newProperties);
+			if (msgs == null) msgs = notification; else msgs.add(notification);
+		}
+		return msgs;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setProperties(IPropertyContainer newProperties) {
+		if (newProperties != properties) {
+			NotificationChain msgs = null;
+			if (properties != null)
+				msgs = ((InternalEObject)properties).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.CGI_STATE_CHART__PROPERTIES, null, msgs);
+			if (newProperties != null)
+				msgs = ((InternalEObject)newProperties).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.CGI_STATE_CHART__PROPERTIES, null, msgs);
+			msgs = basicSetProperties(newProperties, msgs);
+			if (msgs != null) msgs.dispatch();
+		}
+		else if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_STATE_CHART__PROPERTIES, newProperties, newProperties));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
+		switch (featureID) {
+			case UMLRpyPackage.CGI_STATE_CHART__PROPERTIES:
+				return basicSetProperties(null, msgs);
+		}
+		return super.eInverseRemove(otherEnd, featureID, msgs);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object eGet(int featureID, boolean resolve, boolean coreType) {
+		switch (featureID) {
+			case UMLRpyPackage.CGI_STATE_CHART__MPMODEL_OBJECT:
+				if (resolve) return getM_pModelObject();
+				return basicGetM_pModelObject();
+			case UMLRpyPackage.CGI_STATE_CHART__MPROOT:
+				if (resolve) return getM_pRoot();
+				return basicGetM_pRoot();
+			case UMLRpyPackage.CGI_STATE_CHART__MY_STATE:
+				return getMyState();
+			case UMLRpyPackage.CGI_STATE_CHART__MPINHERITS_FROM:
+				if (resolve) return getM_pInheritsFrom();
+				return basicGetM_pInheritsFrom();
+			case UMLRpyPackage.CGI_STATE_CHART__DIAGRAM_LIST:
+				return getDiagramList();
+			case UMLRpyPackage.CGI_STATE_CHART__PROPERTIES:
+				if (resolve) return getProperties();
+				return basicGetProperties();
+		}
+		return super.eGet(featureID, resolve, coreType);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@SuppressWarnings("unchecked")
+	@Override
+	public void eSet(int featureID, Object newValue) {
+		switch (featureID) {
+			case UMLRpyPackage.CGI_STATE_CHART__MPMODEL_OBJECT:
+				setM_pModelObject((NestedStateChartType)newValue);
+				return;
+			case UMLRpyPackage.CGI_STATE_CHART__MPROOT:
+				setM_pRoot((CGIState)newValue);
+				return;
+			case UMLRpyPackage.CGI_STATE_CHART__MY_STATE:
+				setMyState((String)newValue);
+				return;
+			case UMLRpyPackage.CGI_STATE_CHART__MPINHERITS_FROM:
+				setM_pInheritsFrom((GraphicChartType)newValue);
+				return;
+			case UMLRpyPackage.CGI_STATE_CHART__DIAGRAM_LIST:
+				getDiagramList().clear();
+				getDiagramList().addAll((Collection<? extends UnknownType>)newValue);
+				return;
+			case UMLRpyPackage.CGI_STATE_CHART__PROPERTIES:
+				setProperties((IPropertyContainer)newValue);
+				return;
+		}
+		super.eSet(featureID, newValue);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void eUnset(int featureID) {
+		switch (featureID) {
+			case UMLRpyPackage.CGI_STATE_CHART__MPMODEL_OBJECT:
+				setM_pModelObject((NestedStateChartType)null);
+				return;
+			case UMLRpyPackage.CGI_STATE_CHART__MPROOT:
+				setM_pRoot((CGIState)null);
+				return;
+			case UMLRpyPackage.CGI_STATE_CHART__MY_STATE:
+				setMyState(MY_STATE_EDEFAULT);
+				return;
+			case UMLRpyPackage.CGI_STATE_CHART__MPINHERITS_FROM:
+				setM_pInheritsFrom((GraphicChartType)null);
+				return;
+			case UMLRpyPackage.CGI_STATE_CHART__DIAGRAM_LIST:
+				getDiagramList().clear();
+				return;
+			case UMLRpyPackage.CGI_STATE_CHART__PROPERTIES:
+				setProperties((IPropertyContainer)null);
+				return;
+		}
+		super.eUnset(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public boolean eIsSet(int featureID) {
+		switch (featureID) {
+			case UMLRpyPackage.CGI_STATE_CHART__MPMODEL_OBJECT:
+				return m_pModelObject != null;
+			case UMLRpyPackage.CGI_STATE_CHART__MPROOT:
+				return m_pRoot != null;
+			case UMLRpyPackage.CGI_STATE_CHART__MY_STATE:
+				return MY_STATE_EDEFAULT == null ? myState != null : !MY_STATE_EDEFAULT.equals(myState);
+			case UMLRpyPackage.CGI_STATE_CHART__MPINHERITS_FROM:
+				return m_pInheritsFrom != null;
+			case UMLRpyPackage.CGI_STATE_CHART__DIAGRAM_LIST:
+				return diagramList != null && !diagramList.isEmpty();
+			case UMLRpyPackage.CGI_STATE_CHART__PROPERTIES:
+				return properties != null;
+		}
+		return super.eIsSet(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String toString() {
+		if (eIsProxy()) return super.toString();
+
+		StringBuffer result = new StringBuffer(super.toString());
+		result.append(" (myState: "); //$NON-NLS-1$
+		result.append(myState);
+		result.append(')');
+		return result.toString();
+	}
+
+} //CGIStateChartImpl
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/CGIStateImpl.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/CGIStateImpl.java
new file mode 100755
index 0000000..d0e523d
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/CGIStateImpl.java
@@ -0,0 +1,1429 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl;
+
+import java.util.Collection;
+
+import org.eclipse.emf.common.notify.Notification;
+import org.eclipse.emf.common.notify.NotificationChain;
+
+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.EDataTypeEList;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIState;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIText;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CompartmentsType;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.GraphElementsType;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IColor;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IPropertyContainer;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ItsTargetType;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>CGI State</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * </p>
+ * <ul>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIStateImpl#getM_pModelObject <em>MpModel Object</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIStateImpl#getM_AdditionalLabel <em>MAdditional Label</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIStateImpl#getM_polygon <em>Mpolygon</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIStateImpl#getM_nNameFormat <em>MnName Format</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIStateImpl#getM_nIsNameFormat <em>MnIs Name Format</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIStateImpl#getNAndLineCount <em>NAnd Line Count</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIStateImpl#getM_nInheritanceMask <em>MnInheritance Mask</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIStateImpl#getM_pDefaultComponentRelation <em>MpDefault Component Relation</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIStateImpl#getProperties <em>Properties</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIStateImpl#getM_pParent <em>MpParent</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIStateImpl#getM_transform <em>Mtransform</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIStateImpl#getAndLinePoly <em>And Line Poly</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIStateImpl#getM_pVirtualParent <em>MpVirtual Parent</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIStateImpl#getM_moveAndLineTimeStamp <em>Mmove And Line Time Stamp</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIStateImpl#getMyState <em>My State</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIStateImpl#getM_pInheritsFrom <em>MpInherits From</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIStateImpl#getFrameset <em>Frameset</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIStateImpl#getM_bFramesetModified <em>MbFrameset Modified</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIStateImpl#getM_bIsMisplaced <em>MbIs Misplaced</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIStateImpl#getM_color <em>Mcolor</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIStateImpl#getM_lineWidth <em>Mline Width</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGIStateImpl#getCompartments <em>Compartments</em>}</li>
+ * </ul>
+ *
+ * @generated
+ */
+public class CGIStateImpl extends GraphElementsTypeImpl implements CGIState {
+	/**
+	 * The cached value of the '{@link #getM_pModelObject() <em>MpModel Object</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_pModelObject()
+	 * @generated
+	 * @ordered
+	 */
+	protected ItsTargetType m_pModelObject;
+
+	/**
+	 * The cached value of the '{@link #getM_AdditionalLabel() <em>MAdditional Label</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_AdditionalLabel()
+	 * @generated
+	 * @ordered
+	 */
+	protected CGIText m_AdditionalLabel;
+
+	/**
+	 * The cached value of the '{@link #getM_polygon() <em>Mpolygon</em>}' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_polygon()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<String> m_polygon;
+
+	/**
+	 * The default value of the '{@link #getM_nNameFormat() <em>MnName Format</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_nNameFormat()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String MNNAME_FORMAT_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getM_nNameFormat() <em>MnName Format</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_nNameFormat()
+	 * @generated
+	 * @ordered
+	 */
+	protected String m_nNameFormat = MNNAME_FORMAT_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getM_nIsNameFormat() <em>MnIs Name Format</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_nIsNameFormat()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String MNIS_NAME_FORMAT_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getM_nIsNameFormat() <em>MnIs Name Format</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_nIsNameFormat()
+	 * @generated
+	 * @ordered
+	 */
+	protected String m_nIsNameFormat = MNIS_NAME_FORMAT_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getNAndLineCount() <em>NAnd Line Count</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getNAndLineCount()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String NAND_LINE_COUNT_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getNAndLineCount() <em>NAnd Line Count</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getNAndLineCount()
+	 * @generated
+	 * @ordered
+	 */
+	protected String nAndLineCount = NAND_LINE_COUNT_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getM_nInheritanceMask() <em>MnInheritance Mask</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_nInheritanceMask()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String MNINHERITANCE_MASK_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getM_nInheritanceMask() <em>MnInheritance Mask</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_nInheritanceMask()
+	 * @generated
+	 * @ordered
+	 */
+	protected String m_nInheritanceMask = MNINHERITANCE_MASK_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getM_pDefaultComponentRelation() <em>MpDefault Component Relation</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_pDefaultComponentRelation()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String MPDEFAULT_COMPONENT_RELATION_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getM_pDefaultComponentRelation() <em>MpDefault Component Relation</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_pDefaultComponentRelation()
+	 * @generated
+	 * @ordered
+	 */
+	protected String m_pDefaultComponentRelation = MPDEFAULT_COMPONENT_RELATION_EDEFAULT;
+
+	/**
+	 * The cached value of the '{@link #getProperties() <em>Properties</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getProperties()
+	 * @generated
+	 * @ordered
+	 */
+	protected IPropertyContainer properties;
+
+	/**
+	 * The cached value of the '{@link #getM_pParent() <em>MpParent</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_pParent()
+	 * @generated
+	 * @ordered
+	 */
+	protected GraphElementsType m_pParent;
+
+	/**
+	 * The cached value of the '{@link #getM_transform() <em>Mtransform</em>}' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_transform()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<String> m_transform;
+
+	/**
+	 * The cached value of the '{@link #getAndLinePoly() <em>And Line Poly</em>}' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getAndLinePoly()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<String> andLinePoly;
+
+	/**
+	 * The cached value of the '{@link #getM_pVirtualParent() <em>MpVirtual Parent</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_pVirtualParent()
+	 * @generated
+	 * @ordered
+	 */
+	protected GraphElementsType m_pVirtualParent;
+
+	/**
+	 * The cached value of the '{@link #getM_moveAndLineTimeStamp() <em>Mmove And Line Time Stamp</em>}' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_moveAndLineTimeStamp()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<String> m_moveAndLineTimeStamp;
+
+	/**
+	 * The default value of the '{@link #getMyState() <em>My State</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getMyState()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String MY_STATE_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getMyState() <em>My State</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getMyState()
+	 * @generated
+	 * @ordered
+	 */
+	protected String myState = MY_STATE_EDEFAULT;
+
+	/**
+	 * The cached value of the '{@link #getM_pInheritsFrom() <em>MpInherits From</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_pInheritsFrom()
+	 * @generated
+	 * @ordered
+	 */
+	protected GraphElementsType m_pInheritsFrom;
+
+	/**
+	 * The default value of the '{@link #getFrameset() <em>Frameset</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getFrameset()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String FRAMESET_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getFrameset() <em>Frameset</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getFrameset()
+	 * @generated
+	 * @ordered
+	 */
+	protected String frameset = FRAMESET_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getM_bFramesetModified() <em>MbFrameset Modified</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_bFramesetModified()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String MBFRAMESET_MODIFIED_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getM_bFramesetModified() <em>MbFrameset Modified</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_bFramesetModified()
+	 * @generated
+	 * @ordered
+	 */
+	protected String m_bFramesetModified = MBFRAMESET_MODIFIED_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getM_bIsMisplaced() <em>MbIs Misplaced</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_bIsMisplaced()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String MBIS_MISPLACED_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getM_bIsMisplaced() <em>MbIs Misplaced</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_bIsMisplaced()
+	 * @generated
+	 * @ordered
+	 */
+	protected String m_bIsMisplaced = MBIS_MISPLACED_EDEFAULT;
+
+	/**
+	 * The cached value of the '{@link #getM_color() <em>Mcolor</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_color()
+	 * @generated
+	 * @ordered
+	 */
+	protected IColor m_color;
+
+	/**
+	 * The default value of the '{@link #getM_lineWidth() <em>Mline Width</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_lineWidth()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String MLINE_WIDTH_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getM_lineWidth() <em>Mline Width</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_lineWidth()
+	 * @generated
+	 * @ordered
+	 */
+	protected String m_lineWidth = MLINE_WIDTH_EDEFAULT;
+
+	/**
+	 * The cached value of the '{@link #getCompartments() <em>Compartments</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getCompartments()
+	 * @generated
+	 * @ordered
+	 */
+	protected CompartmentsType compartments;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected CGIStateImpl() {
+		super();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EClass eStaticClass() {
+		return UMLRpyPackage.eINSTANCE.getCGIState();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public ItsTargetType getM_pModelObject() {
+		if (m_pModelObject != null && m_pModelObject.eIsProxy()) {
+			InternalEObject oldM_pModelObject = (InternalEObject)m_pModelObject;
+			m_pModelObject = (ItsTargetType)eResolveProxy(oldM_pModelObject);
+			if (m_pModelObject != oldM_pModelObject) {
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.CGI_STATE__MPMODEL_OBJECT, oldM_pModelObject, m_pModelObject));
+			}
+		}
+		return m_pModelObject;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public ItsTargetType basicGetM_pModelObject() {
+		return m_pModelObject;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_pModelObject(ItsTargetType newM_pModelObject) {
+		ItsTargetType oldM_pModelObject = m_pModelObject;
+		m_pModelObject = newM_pModelObject;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_STATE__MPMODEL_OBJECT, oldM_pModelObject, m_pModelObject));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public CGIText getM_AdditionalLabel() {
+		if (m_AdditionalLabel != null && m_AdditionalLabel.eIsProxy()) {
+			InternalEObject oldM_AdditionalLabel = (InternalEObject)m_AdditionalLabel;
+			m_AdditionalLabel = (CGIText)eResolveProxy(oldM_AdditionalLabel);
+			if (m_AdditionalLabel != oldM_AdditionalLabel) {
+				InternalEObject newM_AdditionalLabel = (InternalEObject)m_AdditionalLabel;
+				NotificationChain msgs = oldM_AdditionalLabel.eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.CGI_STATE__MADDITIONAL_LABEL, null, null);
+				if (newM_AdditionalLabel.eInternalContainer() == null) {
+					msgs = newM_AdditionalLabel.eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.CGI_STATE__MADDITIONAL_LABEL, null, msgs);
+				}
+				if (msgs != null) msgs.dispatch();
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.CGI_STATE__MADDITIONAL_LABEL, oldM_AdditionalLabel, m_AdditionalLabel));
+			}
+		}
+		return m_AdditionalLabel;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public CGIText basicGetM_AdditionalLabel() {
+		return m_AdditionalLabel;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public NotificationChain basicSetM_AdditionalLabel(CGIText newM_AdditionalLabel, NotificationChain msgs) {
+		CGIText oldM_AdditionalLabel = m_AdditionalLabel;
+		m_AdditionalLabel = newM_AdditionalLabel;
+		if (eNotificationRequired()) {
+			ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_STATE__MADDITIONAL_LABEL, oldM_AdditionalLabel, newM_AdditionalLabel);
+			if (msgs == null) msgs = notification; else msgs.add(notification);
+		}
+		return msgs;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_AdditionalLabel(CGIText newM_AdditionalLabel) {
+		if (newM_AdditionalLabel != m_AdditionalLabel) {
+			NotificationChain msgs = null;
+			if (m_AdditionalLabel != null)
+				msgs = ((InternalEObject)m_AdditionalLabel).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.CGI_STATE__MADDITIONAL_LABEL, null, msgs);
+			if (newM_AdditionalLabel != null)
+				msgs = ((InternalEObject)newM_AdditionalLabel).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.CGI_STATE__MADDITIONAL_LABEL, null, msgs);
+			msgs = basicSetM_AdditionalLabel(newM_AdditionalLabel, msgs);
+			if (msgs != null) msgs.dispatch();
+		}
+		else if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_STATE__MADDITIONAL_LABEL, newM_AdditionalLabel, newM_AdditionalLabel));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<String> getM_polygon() {
+		if (m_polygon == null) {
+			m_polygon = new EDataTypeEList<String>(String.class, this, UMLRpyPackage.CGI_STATE__MPOLYGON);
+		}
+		return m_polygon;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getM_nNameFormat() {
+		return m_nNameFormat;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_nNameFormat(String newM_nNameFormat) {
+		String oldM_nNameFormat = m_nNameFormat;
+		m_nNameFormat = newM_nNameFormat;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_STATE__MNNAME_FORMAT, oldM_nNameFormat, m_nNameFormat));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getM_nIsNameFormat() {
+		return m_nIsNameFormat;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_nIsNameFormat(String newM_nIsNameFormat) {
+		String oldM_nIsNameFormat = m_nIsNameFormat;
+		m_nIsNameFormat = newM_nIsNameFormat;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_STATE__MNIS_NAME_FORMAT, oldM_nIsNameFormat, m_nIsNameFormat));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getNAndLineCount() {
+		return nAndLineCount;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setNAndLineCount(String newNAndLineCount) {
+		String oldNAndLineCount = nAndLineCount;
+		nAndLineCount = newNAndLineCount;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_STATE__NAND_LINE_COUNT, oldNAndLineCount, nAndLineCount));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getM_nInheritanceMask() {
+		return m_nInheritanceMask;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_nInheritanceMask(String newM_nInheritanceMask) {
+		String oldM_nInheritanceMask = m_nInheritanceMask;
+		m_nInheritanceMask = newM_nInheritanceMask;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_STATE__MNINHERITANCE_MASK, oldM_nInheritanceMask, m_nInheritanceMask));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getM_pDefaultComponentRelation() {
+		return m_pDefaultComponentRelation;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_pDefaultComponentRelation(String newM_pDefaultComponentRelation) {
+		String oldM_pDefaultComponentRelation = m_pDefaultComponentRelation;
+		m_pDefaultComponentRelation = newM_pDefaultComponentRelation;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_STATE__MPDEFAULT_COMPONENT_RELATION, oldM_pDefaultComponentRelation, m_pDefaultComponentRelation));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IPropertyContainer getProperties() {
+		if (properties != null && properties.eIsProxy()) {
+			InternalEObject oldProperties = (InternalEObject)properties;
+			properties = (IPropertyContainer)eResolveProxy(oldProperties);
+			if (properties != oldProperties) {
+				InternalEObject newProperties = (InternalEObject)properties;
+				NotificationChain msgs = oldProperties.eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.CGI_STATE__PROPERTIES, null, null);
+				if (newProperties.eInternalContainer() == null) {
+					msgs = newProperties.eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.CGI_STATE__PROPERTIES, null, msgs);
+				}
+				if (msgs != null) msgs.dispatch();
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.CGI_STATE__PROPERTIES, oldProperties, properties));
+			}
+		}
+		return properties;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IPropertyContainer basicGetProperties() {
+		return properties;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public NotificationChain basicSetProperties(IPropertyContainer newProperties, NotificationChain msgs) {
+		IPropertyContainer oldProperties = properties;
+		properties = newProperties;
+		if (eNotificationRequired()) {
+			ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_STATE__PROPERTIES, oldProperties, newProperties);
+			if (msgs == null) msgs = notification; else msgs.add(notification);
+		}
+		return msgs;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setProperties(IPropertyContainer newProperties) {
+		if (newProperties != properties) {
+			NotificationChain msgs = null;
+			if (properties != null)
+				msgs = ((InternalEObject)properties).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.CGI_STATE__PROPERTIES, null, msgs);
+			if (newProperties != null)
+				msgs = ((InternalEObject)newProperties).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.CGI_STATE__PROPERTIES, null, msgs);
+			msgs = basicSetProperties(newProperties, msgs);
+			if (msgs != null) msgs.dispatch();
+		}
+		else if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_STATE__PROPERTIES, newProperties, newProperties));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public GraphElementsType getM_pParent() {
+		if (m_pParent != null && m_pParent.eIsProxy()) {
+			InternalEObject oldM_pParent = (InternalEObject)m_pParent;
+			m_pParent = (GraphElementsType)eResolveProxy(oldM_pParent);
+			if (m_pParent != oldM_pParent) {
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.CGI_STATE__MPPARENT, oldM_pParent, m_pParent));
+			}
+		}
+		return m_pParent;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public GraphElementsType basicGetM_pParent() {
+		return m_pParent;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_pParent(GraphElementsType newM_pParent) {
+		GraphElementsType oldM_pParent = m_pParent;
+		m_pParent = newM_pParent;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_STATE__MPPARENT, oldM_pParent, m_pParent));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<String> getM_transform() {
+		if (m_transform == null) {
+			m_transform = new EDataTypeEList<String>(String.class, this, UMLRpyPackage.CGI_STATE__MTRANSFORM);
+		}
+		return m_transform;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<String> getAndLinePoly() {
+		if (andLinePoly == null) {
+			andLinePoly = new EDataTypeEList<String>(String.class, this, UMLRpyPackage.CGI_STATE__AND_LINE_POLY);
+		}
+		return andLinePoly;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public GraphElementsType getM_pVirtualParent() {
+		if (m_pVirtualParent != null && m_pVirtualParent.eIsProxy()) {
+			InternalEObject oldM_pVirtualParent = (InternalEObject)m_pVirtualParent;
+			m_pVirtualParent = (GraphElementsType)eResolveProxy(oldM_pVirtualParent);
+			if (m_pVirtualParent != oldM_pVirtualParent) {
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.CGI_STATE__MPVIRTUAL_PARENT, oldM_pVirtualParent, m_pVirtualParent));
+			}
+		}
+		return m_pVirtualParent;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public GraphElementsType basicGetM_pVirtualParent() {
+		return m_pVirtualParent;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_pVirtualParent(GraphElementsType newM_pVirtualParent) {
+		GraphElementsType oldM_pVirtualParent = m_pVirtualParent;
+		m_pVirtualParent = newM_pVirtualParent;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_STATE__MPVIRTUAL_PARENT, oldM_pVirtualParent, m_pVirtualParent));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<String> getM_moveAndLineTimeStamp() {
+		if (m_moveAndLineTimeStamp == null) {
+			m_moveAndLineTimeStamp = new EDataTypeEList<String>(String.class, this, UMLRpyPackage.CGI_STATE__MMOVE_AND_LINE_TIME_STAMP);
+		}
+		return m_moveAndLineTimeStamp;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getMyState() {
+		return myState;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setMyState(String newMyState) {
+		String oldMyState = myState;
+		myState = newMyState;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_STATE__MY_STATE, oldMyState, myState));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public GraphElementsType getM_pInheritsFrom() {
+		if (m_pInheritsFrom != null && m_pInheritsFrom.eIsProxy()) {
+			InternalEObject oldM_pInheritsFrom = (InternalEObject)m_pInheritsFrom;
+			m_pInheritsFrom = (GraphElementsType)eResolveProxy(oldM_pInheritsFrom);
+			if (m_pInheritsFrom != oldM_pInheritsFrom) {
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.CGI_STATE__MPINHERITS_FROM, oldM_pInheritsFrom, m_pInheritsFrom));
+			}
+		}
+		return m_pInheritsFrom;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public GraphElementsType basicGetM_pInheritsFrom() {
+		return m_pInheritsFrom;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_pInheritsFrom(GraphElementsType newM_pInheritsFrom) {
+		GraphElementsType oldM_pInheritsFrom = m_pInheritsFrom;
+		m_pInheritsFrom = newM_pInheritsFrom;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_STATE__MPINHERITS_FROM, oldM_pInheritsFrom, m_pInheritsFrom));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getFrameset() {
+		return frameset;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setFrameset(String newFrameset) {
+		String oldFrameset = frameset;
+		frameset = newFrameset;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_STATE__FRAMESET, oldFrameset, frameset));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getM_bFramesetModified() {
+		return m_bFramesetModified;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_bFramesetModified(String newM_bFramesetModified) {
+		String oldM_bFramesetModified = m_bFramesetModified;
+		m_bFramesetModified = newM_bFramesetModified;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_STATE__MBFRAMESET_MODIFIED, oldM_bFramesetModified, m_bFramesetModified));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getM_bIsMisplaced() {
+		return m_bIsMisplaced;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_bIsMisplaced(String newM_bIsMisplaced) {
+		String oldM_bIsMisplaced = m_bIsMisplaced;
+		m_bIsMisplaced = newM_bIsMisplaced;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_STATE__MBIS_MISPLACED, oldM_bIsMisplaced, m_bIsMisplaced));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IColor getM_color() {
+		if (m_color != null && m_color.eIsProxy()) {
+			InternalEObject oldM_color = (InternalEObject)m_color;
+			m_color = (IColor)eResolveProxy(oldM_color);
+			if (m_color != oldM_color) {
+				InternalEObject newM_color = (InternalEObject)m_color;
+				NotificationChain msgs = oldM_color.eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.CGI_STATE__MCOLOR, null, null);
+				if (newM_color.eInternalContainer() == null) {
+					msgs = newM_color.eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.CGI_STATE__MCOLOR, null, msgs);
+				}
+				if (msgs != null) msgs.dispatch();
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.CGI_STATE__MCOLOR, oldM_color, m_color));
+			}
+		}
+		return m_color;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IColor basicGetM_color() {
+		return m_color;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public NotificationChain basicSetM_color(IColor newM_color, NotificationChain msgs) {
+		IColor oldM_color = m_color;
+		m_color = newM_color;
+		if (eNotificationRequired()) {
+			ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_STATE__MCOLOR, oldM_color, newM_color);
+			if (msgs == null) msgs = notification; else msgs.add(notification);
+		}
+		return msgs;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_color(IColor newM_color) {
+		if (newM_color != m_color) {
+			NotificationChain msgs = null;
+			if (m_color != null)
+				msgs = ((InternalEObject)m_color).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.CGI_STATE__MCOLOR, null, msgs);
+			if (newM_color != null)
+				msgs = ((InternalEObject)newM_color).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.CGI_STATE__MCOLOR, null, msgs);
+			msgs = basicSetM_color(newM_color, msgs);
+			if (msgs != null) msgs.dispatch();
+		}
+		else if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_STATE__MCOLOR, newM_color, newM_color));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getM_lineWidth() {
+		return m_lineWidth;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_lineWidth(String newM_lineWidth) {
+		String oldM_lineWidth = m_lineWidth;
+		m_lineWidth = newM_lineWidth;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_STATE__MLINE_WIDTH, oldM_lineWidth, m_lineWidth));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public CompartmentsType getCompartments() {
+		if (compartments != null && compartments.eIsProxy()) {
+			InternalEObject oldCompartments = (InternalEObject)compartments;
+			compartments = (CompartmentsType)eResolveProxy(oldCompartments);
+			if (compartments != oldCompartments) {
+				InternalEObject newCompartments = (InternalEObject)compartments;
+				NotificationChain msgs = oldCompartments.eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.CGI_STATE__COMPARTMENTS, null, null);
+				if (newCompartments.eInternalContainer() == null) {
+					msgs = newCompartments.eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.CGI_STATE__COMPARTMENTS, null, msgs);
+				}
+				if (msgs != null) msgs.dispatch();
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.CGI_STATE__COMPARTMENTS, oldCompartments, compartments));
+			}
+		}
+		return compartments;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public CompartmentsType basicGetCompartments() {
+		return compartments;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public NotificationChain basicSetCompartments(CompartmentsType newCompartments, NotificationChain msgs) {
+		CompartmentsType oldCompartments = compartments;
+		compartments = newCompartments;
+		if (eNotificationRequired()) {
+			ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_STATE__COMPARTMENTS, oldCompartments, newCompartments);
+			if (msgs == null) msgs = notification; else msgs.add(notification);
+		}
+		return msgs;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setCompartments(CompartmentsType newCompartments) {
+		if (newCompartments != compartments) {
+			NotificationChain msgs = null;
+			if (compartments != null)
+				msgs = ((InternalEObject)compartments).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.CGI_STATE__COMPARTMENTS, null, msgs);
+			if (newCompartments != null)
+				msgs = ((InternalEObject)newCompartments).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.CGI_STATE__COMPARTMENTS, null, msgs);
+			msgs = basicSetCompartments(newCompartments, msgs);
+			if (msgs != null) msgs.dispatch();
+		}
+		else if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_STATE__COMPARTMENTS, newCompartments, newCompartments));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
+		switch (featureID) {
+			case UMLRpyPackage.CGI_STATE__MADDITIONAL_LABEL:
+				return basicSetM_AdditionalLabel(null, msgs);
+			case UMLRpyPackage.CGI_STATE__PROPERTIES:
+				return basicSetProperties(null, msgs);
+			case UMLRpyPackage.CGI_STATE__MCOLOR:
+				return basicSetM_color(null, msgs);
+			case UMLRpyPackage.CGI_STATE__COMPARTMENTS:
+				return basicSetCompartments(null, msgs);
+		}
+		return super.eInverseRemove(otherEnd, featureID, msgs);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object eGet(int featureID, boolean resolve, boolean coreType) {
+		switch (featureID) {
+			case UMLRpyPackage.CGI_STATE__MPMODEL_OBJECT:
+				if (resolve) return getM_pModelObject();
+				return basicGetM_pModelObject();
+			case UMLRpyPackage.CGI_STATE__MADDITIONAL_LABEL:
+				if (resolve) return getM_AdditionalLabel();
+				return basicGetM_AdditionalLabel();
+			case UMLRpyPackage.CGI_STATE__MPOLYGON:
+				return getM_polygon();
+			case UMLRpyPackage.CGI_STATE__MNNAME_FORMAT:
+				return getM_nNameFormat();
+			case UMLRpyPackage.CGI_STATE__MNIS_NAME_FORMAT:
+				return getM_nIsNameFormat();
+			case UMLRpyPackage.CGI_STATE__NAND_LINE_COUNT:
+				return getNAndLineCount();
+			case UMLRpyPackage.CGI_STATE__MNINHERITANCE_MASK:
+				return getM_nInheritanceMask();
+			case UMLRpyPackage.CGI_STATE__MPDEFAULT_COMPONENT_RELATION:
+				return getM_pDefaultComponentRelation();
+			case UMLRpyPackage.CGI_STATE__PROPERTIES:
+				if (resolve) return getProperties();
+				return basicGetProperties();
+			case UMLRpyPackage.CGI_STATE__MPPARENT:
+				if (resolve) return getM_pParent();
+				return basicGetM_pParent();
+			case UMLRpyPackage.CGI_STATE__MTRANSFORM:
+				return getM_transform();
+			case UMLRpyPackage.CGI_STATE__AND_LINE_POLY:
+				return getAndLinePoly();
+			case UMLRpyPackage.CGI_STATE__MPVIRTUAL_PARENT:
+				if (resolve) return getM_pVirtualParent();
+				return basicGetM_pVirtualParent();
+			case UMLRpyPackage.CGI_STATE__MMOVE_AND_LINE_TIME_STAMP:
+				return getM_moveAndLineTimeStamp();
+			case UMLRpyPackage.CGI_STATE__MY_STATE:
+				return getMyState();
+			case UMLRpyPackage.CGI_STATE__MPINHERITS_FROM:
+				if (resolve) return getM_pInheritsFrom();
+				return basicGetM_pInheritsFrom();
+			case UMLRpyPackage.CGI_STATE__FRAMESET:
+				return getFrameset();
+			case UMLRpyPackage.CGI_STATE__MBFRAMESET_MODIFIED:
+				return getM_bFramesetModified();
+			case UMLRpyPackage.CGI_STATE__MBIS_MISPLACED:
+				return getM_bIsMisplaced();
+			case UMLRpyPackage.CGI_STATE__MCOLOR:
+				if (resolve) return getM_color();
+				return basicGetM_color();
+			case UMLRpyPackage.CGI_STATE__MLINE_WIDTH:
+				return getM_lineWidth();
+			case UMLRpyPackage.CGI_STATE__COMPARTMENTS:
+				if (resolve) return getCompartments();
+				return basicGetCompartments();
+		}
+		return super.eGet(featureID, resolve, coreType);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@SuppressWarnings("unchecked")
+	@Override
+	public void eSet(int featureID, Object newValue) {
+		switch (featureID) {
+			case UMLRpyPackage.CGI_STATE__MPMODEL_OBJECT:
+				setM_pModelObject((ItsTargetType)newValue);
+				return;
+			case UMLRpyPackage.CGI_STATE__MADDITIONAL_LABEL:
+				setM_AdditionalLabel((CGIText)newValue);
+				return;
+			case UMLRpyPackage.CGI_STATE__MPOLYGON:
+				getM_polygon().clear();
+				getM_polygon().addAll((Collection<? extends String>)newValue);
+				return;
+			case UMLRpyPackage.CGI_STATE__MNNAME_FORMAT:
+				setM_nNameFormat((String)newValue);
+				return;
+			case UMLRpyPackage.CGI_STATE__MNIS_NAME_FORMAT:
+				setM_nIsNameFormat((String)newValue);
+				return;
+			case UMLRpyPackage.CGI_STATE__NAND_LINE_COUNT:
+				setNAndLineCount((String)newValue);
+				return;
+			case UMLRpyPackage.CGI_STATE__MNINHERITANCE_MASK:
+				setM_nInheritanceMask((String)newValue);
+				return;
+			case UMLRpyPackage.CGI_STATE__MPDEFAULT_COMPONENT_RELATION:
+				setM_pDefaultComponentRelation((String)newValue);
+				return;
+			case UMLRpyPackage.CGI_STATE__PROPERTIES:
+				setProperties((IPropertyContainer)newValue);
+				return;
+			case UMLRpyPackage.CGI_STATE__MPPARENT:
+				setM_pParent((GraphElementsType)newValue);
+				return;
+			case UMLRpyPackage.CGI_STATE__MTRANSFORM:
+				getM_transform().clear();
+				getM_transform().addAll((Collection<? extends String>)newValue);
+				return;
+			case UMLRpyPackage.CGI_STATE__AND_LINE_POLY:
+				getAndLinePoly().clear();
+				getAndLinePoly().addAll((Collection<? extends String>)newValue);
+				return;
+			case UMLRpyPackage.CGI_STATE__MPVIRTUAL_PARENT:
+				setM_pVirtualParent((GraphElementsType)newValue);
+				return;
+			case UMLRpyPackage.CGI_STATE__MMOVE_AND_LINE_TIME_STAMP:
+				getM_moveAndLineTimeStamp().clear();
+				getM_moveAndLineTimeStamp().addAll((Collection<? extends String>)newValue);
+				return;
+			case UMLRpyPackage.CGI_STATE__MY_STATE:
+				setMyState((String)newValue);
+				return;
+			case UMLRpyPackage.CGI_STATE__MPINHERITS_FROM:
+				setM_pInheritsFrom((GraphElementsType)newValue);
+				return;
+			case UMLRpyPackage.CGI_STATE__FRAMESET:
+				setFrameset((String)newValue);
+				return;
+			case UMLRpyPackage.CGI_STATE__MBFRAMESET_MODIFIED:
+				setM_bFramesetModified((String)newValue);
+				return;
+			case UMLRpyPackage.CGI_STATE__MBIS_MISPLACED:
+				setM_bIsMisplaced((String)newValue);
+				return;
+			case UMLRpyPackage.CGI_STATE__MCOLOR:
+				setM_color((IColor)newValue);
+				return;
+			case UMLRpyPackage.CGI_STATE__MLINE_WIDTH:
+				setM_lineWidth((String)newValue);
+				return;
+			case UMLRpyPackage.CGI_STATE__COMPARTMENTS:
+				setCompartments((CompartmentsType)newValue);
+				return;
+		}
+		super.eSet(featureID, newValue);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void eUnset(int featureID) {
+		switch (featureID) {
+			case UMLRpyPackage.CGI_STATE__MPMODEL_OBJECT:
+				setM_pModelObject((ItsTargetType)null);
+				return;
+			case UMLRpyPackage.CGI_STATE__MADDITIONAL_LABEL:
+				setM_AdditionalLabel((CGIText)null);
+				return;
+			case UMLRpyPackage.CGI_STATE__MPOLYGON:
+				getM_polygon().clear();
+				return;
+			case UMLRpyPackage.CGI_STATE__MNNAME_FORMAT:
+				setM_nNameFormat(MNNAME_FORMAT_EDEFAULT);
+				return;
+			case UMLRpyPackage.CGI_STATE__MNIS_NAME_FORMAT:
+				setM_nIsNameFormat(MNIS_NAME_FORMAT_EDEFAULT);
+				return;
+			case UMLRpyPackage.CGI_STATE__NAND_LINE_COUNT:
+				setNAndLineCount(NAND_LINE_COUNT_EDEFAULT);
+				return;
+			case UMLRpyPackage.CGI_STATE__MNINHERITANCE_MASK:
+				setM_nInheritanceMask(MNINHERITANCE_MASK_EDEFAULT);
+				return;
+			case UMLRpyPackage.CGI_STATE__MPDEFAULT_COMPONENT_RELATION:
+				setM_pDefaultComponentRelation(MPDEFAULT_COMPONENT_RELATION_EDEFAULT);
+				return;
+			case UMLRpyPackage.CGI_STATE__PROPERTIES:
+				setProperties((IPropertyContainer)null);
+				return;
+			case UMLRpyPackage.CGI_STATE__MPPARENT:
+				setM_pParent((GraphElementsType)null);
+				return;
+			case UMLRpyPackage.CGI_STATE__MTRANSFORM:
+				getM_transform().clear();
+				return;
+			case UMLRpyPackage.CGI_STATE__AND_LINE_POLY:
+				getAndLinePoly().clear();
+				return;
+			case UMLRpyPackage.CGI_STATE__MPVIRTUAL_PARENT:
+				setM_pVirtualParent((GraphElementsType)null);
+				return;
+			case UMLRpyPackage.CGI_STATE__MMOVE_AND_LINE_TIME_STAMP:
+				getM_moveAndLineTimeStamp().clear();
+				return;
+			case UMLRpyPackage.CGI_STATE__MY_STATE:
+				setMyState(MY_STATE_EDEFAULT);
+				return;
+			case UMLRpyPackage.CGI_STATE__MPINHERITS_FROM:
+				setM_pInheritsFrom((GraphElementsType)null);
+				return;
+			case UMLRpyPackage.CGI_STATE__FRAMESET:
+				setFrameset(FRAMESET_EDEFAULT);
+				return;
+			case UMLRpyPackage.CGI_STATE__MBFRAMESET_MODIFIED:
+				setM_bFramesetModified(MBFRAMESET_MODIFIED_EDEFAULT);
+				return;
+			case UMLRpyPackage.CGI_STATE__MBIS_MISPLACED:
+				setM_bIsMisplaced(MBIS_MISPLACED_EDEFAULT);
+				return;
+			case UMLRpyPackage.CGI_STATE__MCOLOR:
+				setM_color((IColor)null);
+				return;
+			case UMLRpyPackage.CGI_STATE__MLINE_WIDTH:
+				setM_lineWidth(MLINE_WIDTH_EDEFAULT);
+				return;
+			case UMLRpyPackage.CGI_STATE__COMPARTMENTS:
+				setCompartments((CompartmentsType)null);
+				return;
+		}
+		super.eUnset(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public boolean eIsSet(int featureID) {
+		switch (featureID) {
+			case UMLRpyPackage.CGI_STATE__MPMODEL_OBJECT:
+				return m_pModelObject != null;
+			case UMLRpyPackage.CGI_STATE__MADDITIONAL_LABEL:
+				return m_AdditionalLabel != null;
+			case UMLRpyPackage.CGI_STATE__MPOLYGON:
+				return m_polygon != null && !m_polygon.isEmpty();
+			case UMLRpyPackage.CGI_STATE__MNNAME_FORMAT:
+				return MNNAME_FORMAT_EDEFAULT == null ? m_nNameFormat != null : !MNNAME_FORMAT_EDEFAULT.equals(m_nNameFormat);
+			case UMLRpyPackage.CGI_STATE__MNIS_NAME_FORMAT:
+				return MNIS_NAME_FORMAT_EDEFAULT == null ? m_nIsNameFormat != null : !MNIS_NAME_FORMAT_EDEFAULT.equals(m_nIsNameFormat);
+			case UMLRpyPackage.CGI_STATE__NAND_LINE_COUNT:
+				return NAND_LINE_COUNT_EDEFAULT == null ? nAndLineCount != null : !NAND_LINE_COUNT_EDEFAULT.equals(nAndLineCount);
+			case UMLRpyPackage.CGI_STATE__MNINHERITANCE_MASK:
+				return MNINHERITANCE_MASK_EDEFAULT == null ? m_nInheritanceMask != null : !MNINHERITANCE_MASK_EDEFAULT.equals(m_nInheritanceMask);
+			case UMLRpyPackage.CGI_STATE__MPDEFAULT_COMPONENT_RELATION:
+				return MPDEFAULT_COMPONENT_RELATION_EDEFAULT == null ? m_pDefaultComponentRelation != null : !MPDEFAULT_COMPONENT_RELATION_EDEFAULT.equals(m_pDefaultComponentRelation);
+			case UMLRpyPackage.CGI_STATE__PROPERTIES:
+				return properties != null;
+			case UMLRpyPackage.CGI_STATE__MPPARENT:
+				return m_pParent != null;
+			case UMLRpyPackage.CGI_STATE__MTRANSFORM:
+				return m_transform != null && !m_transform.isEmpty();
+			case UMLRpyPackage.CGI_STATE__AND_LINE_POLY:
+				return andLinePoly != null && !andLinePoly.isEmpty();
+			case UMLRpyPackage.CGI_STATE__MPVIRTUAL_PARENT:
+				return m_pVirtualParent != null;
+			case UMLRpyPackage.CGI_STATE__MMOVE_AND_LINE_TIME_STAMP:
+				return m_moveAndLineTimeStamp != null && !m_moveAndLineTimeStamp.isEmpty();
+			case UMLRpyPackage.CGI_STATE__MY_STATE:
+				return MY_STATE_EDEFAULT == null ? myState != null : !MY_STATE_EDEFAULT.equals(myState);
+			case UMLRpyPackage.CGI_STATE__MPINHERITS_FROM:
+				return m_pInheritsFrom != null;
+			case UMLRpyPackage.CGI_STATE__FRAMESET:
+				return FRAMESET_EDEFAULT == null ? frameset != null : !FRAMESET_EDEFAULT.equals(frameset);
+			case UMLRpyPackage.CGI_STATE__MBFRAMESET_MODIFIED:
+				return MBFRAMESET_MODIFIED_EDEFAULT == null ? m_bFramesetModified != null : !MBFRAMESET_MODIFIED_EDEFAULT.equals(m_bFramesetModified);
+			case UMLRpyPackage.CGI_STATE__MBIS_MISPLACED:
+				return MBIS_MISPLACED_EDEFAULT == null ? m_bIsMisplaced != null : !MBIS_MISPLACED_EDEFAULT.equals(m_bIsMisplaced);
+			case UMLRpyPackage.CGI_STATE__MCOLOR:
+				return m_color != null;
+			case UMLRpyPackage.CGI_STATE__MLINE_WIDTH:
+				return MLINE_WIDTH_EDEFAULT == null ? m_lineWidth != null : !MLINE_WIDTH_EDEFAULT.equals(m_lineWidth);
+			case UMLRpyPackage.CGI_STATE__COMPARTMENTS:
+				return compartments != null;
+		}
+		return super.eIsSet(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String toString() {
+		if (eIsProxy()) return super.toString();
+
+		StringBuffer result = new StringBuffer(super.toString());
+		result.append(" (m_polygon: "); //$NON-NLS-1$
+		result.append(m_polygon);
+		result.append(", m_nNameFormat: "); //$NON-NLS-1$
+		result.append(m_nNameFormat);
+		result.append(", m_nIsNameFormat: "); //$NON-NLS-1$
+		result.append(m_nIsNameFormat);
+		result.append(", nAndLineCount: "); //$NON-NLS-1$
+		result.append(nAndLineCount);
+		result.append(", m_nInheritanceMask: "); //$NON-NLS-1$
+		result.append(m_nInheritanceMask);
+		result.append(", m_pDefaultComponentRelation: "); //$NON-NLS-1$
+		result.append(m_pDefaultComponentRelation);
+		result.append(", m_transform: "); //$NON-NLS-1$
+		result.append(m_transform);
+		result.append(", andLinePoly: "); //$NON-NLS-1$
+		result.append(andLinePoly);
+		result.append(", m_moveAndLineTimeStamp: "); //$NON-NLS-1$
+		result.append(m_moveAndLineTimeStamp);
+		result.append(", myState: "); //$NON-NLS-1$
+		result.append(myState);
+		result.append(", frameset: "); //$NON-NLS-1$
+		result.append(frameset);
+		result.append(", m_bFramesetModified: "); //$NON-NLS-1$
+		result.append(m_bFramesetModified);
+		result.append(", m_bIsMisplaced: "); //$NON-NLS-1$
+		result.append(m_bIsMisplaced);
+		result.append(", m_lineWidth: "); //$NON-NLS-1$
+		result.append(m_lineWidth);
+		result.append(')');
+		return result.toString();
+	}
+
+} //CGIStateImpl
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/CGISwimlaneFrameImpl.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/CGISwimlaneFrameImpl.java
new file mode 100755
index 0000000..073ab20
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/CGISwimlaneFrameImpl.java
@@ -0,0 +1,615 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl;
+
+import java.util.Collection;
+
+import org.eclipse.emf.common.notify.Notification;
+import org.eclipse.emf.common.notify.NotificationChain;
+
+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.EDataTypeEList;
+import org.eclipse.emf.ecore.util.EObjectResolvingEList;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGISwimlaneFrame;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CompartmentsType;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.GraphElementsType;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UnknownType;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>CGI Swimlane Frame</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * </p>
+ * <ul>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGISwimlaneFrameImpl#getM_pModelObject <em>MpModel Object</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGISwimlaneFrameImpl#getM_pParent <em>MpParent</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGISwimlaneFrameImpl#getM_polygon <em>Mpolygon</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGISwimlaneFrameImpl#getM_nNameFormat <em>MnName Format</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGISwimlaneFrameImpl#getM_nIsNameFormat <em>MnIs Name Format</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGISwimlaneFrameImpl#getFrameset <em>Frameset</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGISwimlaneFrameImpl#getM_transform <em>Mtransform</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGISwimlaneFrameImpl#getM_bFramesetModified <em>MbFrameset Modified</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGISwimlaneFrameImpl#getCompartments <em>Compartments</em>}</li>
+ * </ul>
+ *
+ * @generated
+ */
+public class CGISwimlaneFrameImpl extends GraphElementsTypeImpl implements CGISwimlaneFrame {
+	/**
+	 * The cached value of the '{@link #getM_pModelObject() <em>MpModel Object</em>}' reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_pModelObject()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<UnknownType> m_pModelObject;
+
+	/**
+	 * The cached value of the '{@link #getM_pParent() <em>MpParent</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_pParent()
+	 * @generated
+	 * @ordered
+	 */
+	protected GraphElementsType m_pParent;
+
+	/**
+	 * The cached value of the '{@link #getM_polygon() <em>Mpolygon</em>}' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_polygon()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<String> m_polygon;
+
+	/**
+	 * The default value of the '{@link #getM_nNameFormat() <em>MnName Format</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_nNameFormat()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String MNNAME_FORMAT_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getM_nNameFormat() <em>MnName Format</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_nNameFormat()
+	 * @generated
+	 * @ordered
+	 */
+	protected String m_nNameFormat = MNNAME_FORMAT_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getM_nIsNameFormat() <em>MnIs Name Format</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_nIsNameFormat()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String MNIS_NAME_FORMAT_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getM_nIsNameFormat() <em>MnIs Name Format</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_nIsNameFormat()
+	 * @generated
+	 * @ordered
+	 */
+	protected String m_nIsNameFormat = MNIS_NAME_FORMAT_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getFrameset() <em>Frameset</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getFrameset()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String FRAMESET_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getFrameset() <em>Frameset</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getFrameset()
+	 * @generated
+	 * @ordered
+	 */
+	protected String frameset = FRAMESET_EDEFAULT;
+
+	/**
+	 * The cached value of the '{@link #getM_transform() <em>Mtransform</em>}' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_transform()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<String> m_transform;
+
+	/**
+	 * The default value of the '{@link #getM_bFramesetModified() <em>MbFrameset Modified</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_bFramesetModified()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String MBFRAMESET_MODIFIED_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getM_bFramesetModified() <em>MbFrameset Modified</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_bFramesetModified()
+	 * @generated
+	 * @ordered
+	 */
+	protected String m_bFramesetModified = MBFRAMESET_MODIFIED_EDEFAULT;
+
+	/**
+	 * The cached value of the '{@link #getCompartments() <em>Compartments</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getCompartments()
+	 * @generated
+	 * @ordered
+	 */
+	protected CompartmentsType compartments;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected CGISwimlaneFrameImpl() {
+		super();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EClass eStaticClass() {
+		return UMLRpyPackage.eINSTANCE.getCGISwimlaneFrame();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<UnknownType> getM_pModelObject() {
+		if (m_pModelObject == null) {
+			m_pModelObject = new EObjectResolvingEList<UnknownType>(UnknownType.class, this, UMLRpyPackage.CGI_SWIMLANE_FRAME__MPMODEL_OBJECT);
+		}
+		return m_pModelObject;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public GraphElementsType getM_pParent() {
+		if (m_pParent != null && m_pParent.eIsProxy()) {
+			InternalEObject oldM_pParent = (InternalEObject)m_pParent;
+			m_pParent = (GraphElementsType)eResolveProxy(oldM_pParent);
+			if (m_pParent != oldM_pParent) {
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.CGI_SWIMLANE_FRAME__MPPARENT, oldM_pParent, m_pParent));
+			}
+		}
+		return m_pParent;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public GraphElementsType basicGetM_pParent() {
+		return m_pParent;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_pParent(GraphElementsType newM_pParent) {
+		GraphElementsType oldM_pParent = m_pParent;
+		m_pParent = newM_pParent;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_SWIMLANE_FRAME__MPPARENT, oldM_pParent, m_pParent));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<String> getM_polygon() {
+		if (m_polygon == null) {
+			m_polygon = new EDataTypeEList<String>(String.class, this, UMLRpyPackage.CGI_SWIMLANE_FRAME__MPOLYGON);
+		}
+		return m_polygon;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getM_nNameFormat() {
+		return m_nNameFormat;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_nNameFormat(String newM_nNameFormat) {
+		String oldM_nNameFormat = m_nNameFormat;
+		m_nNameFormat = newM_nNameFormat;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_SWIMLANE_FRAME__MNNAME_FORMAT, oldM_nNameFormat, m_nNameFormat));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getM_nIsNameFormat() {
+		return m_nIsNameFormat;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_nIsNameFormat(String newM_nIsNameFormat) {
+		String oldM_nIsNameFormat = m_nIsNameFormat;
+		m_nIsNameFormat = newM_nIsNameFormat;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_SWIMLANE_FRAME__MNIS_NAME_FORMAT, oldM_nIsNameFormat, m_nIsNameFormat));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getFrameset() {
+		return frameset;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setFrameset(String newFrameset) {
+		String oldFrameset = frameset;
+		frameset = newFrameset;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_SWIMLANE_FRAME__FRAMESET, oldFrameset, frameset));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<String> getM_transform() {
+		if (m_transform == null) {
+			m_transform = new EDataTypeEList<String>(String.class, this, UMLRpyPackage.CGI_SWIMLANE_FRAME__MTRANSFORM);
+		}
+		return m_transform;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getM_bFramesetModified() {
+		return m_bFramesetModified;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_bFramesetModified(String newM_bFramesetModified) {
+		String oldM_bFramesetModified = m_bFramesetModified;
+		m_bFramesetModified = newM_bFramesetModified;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_SWIMLANE_FRAME__MBFRAMESET_MODIFIED, oldM_bFramesetModified, m_bFramesetModified));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public CompartmentsType getCompartments() {
+		if (compartments != null && compartments.eIsProxy()) {
+			InternalEObject oldCompartments = (InternalEObject)compartments;
+			compartments = (CompartmentsType)eResolveProxy(oldCompartments);
+			if (compartments != oldCompartments) {
+				InternalEObject newCompartments = (InternalEObject)compartments;
+				NotificationChain msgs = oldCompartments.eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.CGI_SWIMLANE_FRAME__COMPARTMENTS, null, null);
+				if (newCompartments.eInternalContainer() == null) {
+					msgs = newCompartments.eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.CGI_SWIMLANE_FRAME__COMPARTMENTS, null, msgs);
+				}
+				if (msgs != null) msgs.dispatch();
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.CGI_SWIMLANE_FRAME__COMPARTMENTS, oldCompartments, compartments));
+			}
+		}
+		return compartments;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public CompartmentsType basicGetCompartments() {
+		return compartments;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public NotificationChain basicSetCompartments(CompartmentsType newCompartments, NotificationChain msgs) {
+		CompartmentsType oldCompartments = compartments;
+		compartments = newCompartments;
+		if (eNotificationRequired()) {
+			ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_SWIMLANE_FRAME__COMPARTMENTS, oldCompartments, newCompartments);
+			if (msgs == null) msgs = notification; else msgs.add(notification);
+		}
+		return msgs;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setCompartments(CompartmentsType newCompartments) {
+		if (newCompartments != compartments) {
+			NotificationChain msgs = null;
+			if (compartments != null)
+				msgs = ((InternalEObject)compartments).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.CGI_SWIMLANE_FRAME__COMPARTMENTS, null, msgs);
+			if (newCompartments != null)
+				msgs = ((InternalEObject)newCompartments).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.CGI_SWIMLANE_FRAME__COMPARTMENTS, null, msgs);
+			msgs = basicSetCompartments(newCompartments, msgs);
+			if (msgs != null) msgs.dispatch();
+		}
+		else if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_SWIMLANE_FRAME__COMPARTMENTS, newCompartments, newCompartments));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
+		switch (featureID) {
+			case UMLRpyPackage.CGI_SWIMLANE_FRAME__COMPARTMENTS:
+				return basicSetCompartments(null, msgs);
+		}
+		return super.eInverseRemove(otherEnd, featureID, msgs);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object eGet(int featureID, boolean resolve, boolean coreType) {
+		switch (featureID) {
+			case UMLRpyPackage.CGI_SWIMLANE_FRAME__MPMODEL_OBJECT:
+				return getM_pModelObject();
+			case UMLRpyPackage.CGI_SWIMLANE_FRAME__MPPARENT:
+				if (resolve) return getM_pParent();
+				return basicGetM_pParent();
+			case UMLRpyPackage.CGI_SWIMLANE_FRAME__MPOLYGON:
+				return getM_polygon();
+			case UMLRpyPackage.CGI_SWIMLANE_FRAME__MNNAME_FORMAT:
+				return getM_nNameFormat();
+			case UMLRpyPackage.CGI_SWIMLANE_FRAME__MNIS_NAME_FORMAT:
+				return getM_nIsNameFormat();
+			case UMLRpyPackage.CGI_SWIMLANE_FRAME__FRAMESET:
+				return getFrameset();
+			case UMLRpyPackage.CGI_SWIMLANE_FRAME__MTRANSFORM:
+				return getM_transform();
+			case UMLRpyPackage.CGI_SWIMLANE_FRAME__MBFRAMESET_MODIFIED:
+				return getM_bFramesetModified();
+			case UMLRpyPackage.CGI_SWIMLANE_FRAME__COMPARTMENTS:
+				if (resolve) return getCompartments();
+				return basicGetCompartments();
+		}
+		return super.eGet(featureID, resolve, coreType);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@SuppressWarnings("unchecked")
+	@Override
+	public void eSet(int featureID, Object newValue) {
+		switch (featureID) {
+			case UMLRpyPackage.CGI_SWIMLANE_FRAME__MPMODEL_OBJECT:
+				getM_pModelObject().clear();
+				getM_pModelObject().addAll((Collection<? extends UnknownType>)newValue);
+				return;
+			case UMLRpyPackage.CGI_SWIMLANE_FRAME__MPPARENT:
+				setM_pParent((GraphElementsType)newValue);
+				return;
+			case UMLRpyPackage.CGI_SWIMLANE_FRAME__MPOLYGON:
+				getM_polygon().clear();
+				getM_polygon().addAll((Collection<? extends String>)newValue);
+				return;
+			case UMLRpyPackage.CGI_SWIMLANE_FRAME__MNNAME_FORMAT:
+				setM_nNameFormat((String)newValue);
+				return;
+			case UMLRpyPackage.CGI_SWIMLANE_FRAME__MNIS_NAME_FORMAT:
+				setM_nIsNameFormat((String)newValue);
+				return;
+			case UMLRpyPackage.CGI_SWIMLANE_FRAME__FRAMESET:
+				setFrameset((String)newValue);
+				return;
+			case UMLRpyPackage.CGI_SWIMLANE_FRAME__MTRANSFORM:
+				getM_transform().clear();
+				getM_transform().addAll((Collection<? extends String>)newValue);
+				return;
+			case UMLRpyPackage.CGI_SWIMLANE_FRAME__MBFRAMESET_MODIFIED:
+				setM_bFramesetModified((String)newValue);
+				return;
+			case UMLRpyPackage.CGI_SWIMLANE_FRAME__COMPARTMENTS:
+				setCompartments((CompartmentsType)newValue);
+				return;
+		}
+		super.eSet(featureID, newValue);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void eUnset(int featureID) {
+		switch (featureID) {
+			case UMLRpyPackage.CGI_SWIMLANE_FRAME__MPMODEL_OBJECT:
+				getM_pModelObject().clear();
+				return;
+			case UMLRpyPackage.CGI_SWIMLANE_FRAME__MPPARENT:
+				setM_pParent((GraphElementsType)null);
+				return;
+			case UMLRpyPackage.CGI_SWIMLANE_FRAME__MPOLYGON:
+				getM_polygon().clear();
+				return;
+			case UMLRpyPackage.CGI_SWIMLANE_FRAME__MNNAME_FORMAT:
+				setM_nNameFormat(MNNAME_FORMAT_EDEFAULT);
+				return;
+			case UMLRpyPackage.CGI_SWIMLANE_FRAME__MNIS_NAME_FORMAT:
+				setM_nIsNameFormat(MNIS_NAME_FORMAT_EDEFAULT);
+				return;
+			case UMLRpyPackage.CGI_SWIMLANE_FRAME__FRAMESET:
+				setFrameset(FRAMESET_EDEFAULT);
+				return;
+			case UMLRpyPackage.CGI_SWIMLANE_FRAME__MTRANSFORM:
+				getM_transform().clear();
+				return;
+			case UMLRpyPackage.CGI_SWIMLANE_FRAME__MBFRAMESET_MODIFIED:
+				setM_bFramesetModified(MBFRAMESET_MODIFIED_EDEFAULT);
+				return;
+			case UMLRpyPackage.CGI_SWIMLANE_FRAME__COMPARTMENTS:
+				setCompartments((CompartmentsType)null);
+				return;
+		}
+		super.eUnset(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public boolean eIsSet(int featureID) {
+		switch (featureID) {
+			case UMLRpyPackage.CGI_SWIMLANE_FRAME__MPMODEL_OBJECT:
+				return m_pModelObject != null && !m_pModelObject.isEmpty();
+			case UMLRpyPackage.CGI_SWIMLANE_FRAME__MPPARENT:
+				return m_pParent != null;
+			case UMLRpyPackage.CGI_SWIMLANE_FRAME__MPOLYGON:
+				return m_polygon != null && !m_polygon.isEmpty();
+			case UMLRpyPackage.CGI_SWIMLANE_FRAME__MNNAME_FORMAT:
+				return MNNAME_FORMAT_EDEFAULT == null ? m_nNameFormat != null : !MNNAME_FORMAT_EDEFAULT.equals(m_nNameFormat);
+			case UMLRpyPackage.CGI_SWIMLANE_FRAME__MNIS_NAME_FORMAT:
+				return MNIS_NAME_FORMAT_EDEFAULT == null ? m_nIsNameFormat != null : !MNIS_NAME_FORMAT_EDEFAULT.equals(m_nIsNameFormat);
+			case UMLRpyPackage.CGI_SWIMLANE_FRAME__FRAMESET:
+				return FRAMESET_EDEFAULT == null ? frameset != null : !FRAMESET_EDEFAULT.equals(frameset);
+			case UMLRpyPackage.CGI_SWIMLANE_FRAME__MTRANSFORM:
+				return m_transform != null && !m_transform.isEmpty();
+			case UMLRpyPackage.CGI_SWIMLANE_FRAME__MBFRAMESET_MODIFIED:
+				return MBFRAMESET_MODIFIED_EDEFAULT == null ? m_bFramesetModified != null : !MBFRAMESET_MODIFIED_EDEFAULT.equals(m_bFramesetModified);
+			case UMLRpyPackage.CGI_SWIMLANE_FRAME__COMPARTMENTS:
+				return compartments != null;
+		}
+		return super.eIsSet(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String toString() {
+		if (eIsProxy()) return super.toString();
+
+		StringBuffer result = new StringBuffer(super.toString());
+		result.append(" (m_polygon: "); //$NON-NLS-1$
+		result.append(m_polygon);
+		result.append(", m_nNameFormat: "); //$NON-NLS-1$
+		result.append(m_nNameFormat);
+		result.append(", m_nIsNameFormat: "); //$NON-NLS-1$
+		result.append(m_nIsNameFormat);
+		result.append(", frameset: "); //$NON-NLS-1$
+		result.append(frameset);
+		result.append(", m_transform: "); //$NON-NLS-1$
+		result.append(m_transform);
+		result.append(", m_bFramesetModified: "); //$NON-NLS-1$
+		result.append(m_bFramesetModified);
+		result.append(')');
+		return result.toString();
+	}
+
+} //CGISwimlaneFrameImpl
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/CGITextBoxImpl.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/CGITextBoxImpl.java
new file mode 100755
index 0000000..fa8ff0f
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/CGITextBoxImpl.java
@@ -0,0 +1,711 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl;
+
+import java.util.Collection;
+
+import org.eclipse.emf.common.notify.Notification;
+import org.eclipse.emf.common.notify.NotificationChain;
+
+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.EDataTypeEList;
+import org.eclipse.emf.ecore.util.EObjectResolvingEList;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGITextBox;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.DependsOnType;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.GraphElementsType;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IAttribute;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IPropertyContainer;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UnknownType;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>CGI Text Box</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * </p>
+ * <ul>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGITextBoxImpl#getProperties <em>Properties</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGITextBoxImpl#getM_pModelObject <em>MpModel Object</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGITextBoxImpl#getM_pParent <em>MpParent</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGITextBoxImpl#getM_transform <em>Mtransform</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGITextBoxImpl#getM_polygon <em>Mpolygon</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGITextBoxImpl#getM_nNameFormat <em>MnName Format</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGITextBoxImpl#getM_nIsNameFormat <em>MnIs Name Format</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGITextBoxImpl#getCompartments <em>Compartments</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGITextBoxImpl#getM_csModelObjPath <em>Mcs Model Obj Path</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGITextBoxImpl#getM_csName <em>Mcs Name</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGITextBoxImpl#getM_PartsArray <em>MParts Array</em>}</li>
+ * </ul>
+ *
+ * @generated
+ */
+public class CGITextBoxImpl extends GraphElementsTypeImpl implements CGITextBox {
+	/**
+	 * The cached value of the '{@link #getProperties() <em>Properties</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getProperties()
+	 * @generated
+	 * @ordered
+	 */
+	protected IPropertyContainer properties;
+
+	/**
+	 * The cached value of the '{@link #getM_pModelObject() <em>MpModel Object</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_pModelObject()
+	 * @generated
+	 * @ordered
+	 */
+	protected IAttribute m_pModelObject;
+
+	/**
+	 * The cached value of the '{@link #getM_pParent() <em>MpParent</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_pParent()
+	 * @generated
+	 * @ordered
+	 */
+	protected GraphElementsType m_pParent;
+
+	/**
+	 * The cached value of the '{@link #getM_transform() <em>Mtransform</em>}' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_transform()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<String> m_transform;
+
+	/**
+	 * The cached value of the '{@link #getM_polygon() <em>Mpolygon</em>}' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_polygon()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<String> m_polygon;
+
+	/**
+	 * The default value of the '{@link #getM_nNameFormat() <em>MnName Format</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_nNameFormat()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String MNNAME_FORMAT_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getM_nNameFormat() <em>MnName Format</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_nNameFormat()
+	 * @generated
+	 * @ordered
+	 */
+	protected String m_nNameFormat = MNNAME_FORMAT_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getM_nIsNameFormat() <em>MnIs Name Format</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_nIsNameFormat()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String MNIS_NAME_FORMAT_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getM_nIsNameFormat() <em>MnIs Name Format</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_nIsNameFormat()
+	 * @generated
+	 * @ordered
+	 */
+	protected String m_nIsNameFormat = MNIS_NAME_FORMAT_EDEFAULT;
+
+	/**
+	 * The cached value of the '{@link #getCompartments() <em>Compartments</em>}' reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getCompartments()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<UnknownType> compartments;
+
+	/**
+	 * The default value of the '{@link #getM_csModelObjPath() <em>Mcs Model Obj Path</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_csModelObjPath()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String MCS_MODEL_OBJ_PATH_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getM_csModelObjPath() <em>Mcs Model Obj Path</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_csModelObjPath()
+	 * @generated
+	 * @ordered
+	 */
+	protected String m_csModelObjPath = MCS_MODEL_OBJ_PATH_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getM_csName() <em>Mcs Name</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_csName()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String MCS_NAME_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getM_csName() <em>Mcs Name</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_csName()
+	 * @generated
+	 * @ordered
+	 */
+	protected String m_csName = MCS_NAME_EDEFAULT;
+
+	/**
+	 * The cached value of the '{@link #getM_PartsArray() <em>MParts Array</em>}' reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_PartsArray()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<DependsOnType> m_PartsArray;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected CGITextBoxImpl() {
+		super();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EClass eStaticClass() {
+		return UMLRpyPackage.eINSTANCE.getCGITextBox();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IPropertyContainer getProperties() {
+		if (properties != null && properties.eIsProxy()) {
+			InternalEObject oldProperties = (InternalEObject)properties;
+			properties = (IPropertyContainer)eResolveProxy(oldProperties);
+			if (properties != oldProperties) {
+				InternalEObject newProperties = (InternalEObject)properties;
+				NotificationChain msgs = oldProperties.eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.CGI_TEXT_BOX__PROPERTIES, null, null);
+				if (newProperties.eInternalContainer() == null) {
+					msgs = newProperties.eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.CGI_TEXT_BOX__PROPERTIES, null, msgs);
+				}
+				if (msgs != null) msgs.dispatch();
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.CGI_TEXT_BOX__PROPERTIES, oldProperties, properties));
+			}
+		}
+		return properties;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IPropertyContainer basicGetProperties() {
+		return properties;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public NotificationChain basicSetProperties(IPropertyContainer newProperties, NotificationChain msgs) {
+		IPropertyContainer oldProperties = properties;
+		properties = newProperties;
+		if (eNotificationRequired()) {
+			ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_TEXT_BOX__PROPERTIES, oldProperties, newProperties);
+			if (msgs == null) msgs = notification; else msgs.add(notification);
+		}
+		return msgs;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setProperties(IPropertyContainer newProperties) {
+		if (newProperties != properties) {
+			NotificationChain msgs = null;
+			if (properties != null)
+				msgs = ((InternalEObject)properties).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.CGI_TEXT_BOX__PROPERTIES, null, msgs);
+			if (newProperties != null)
+				msgs = ((InternalEObject)newProperties).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.CGI_TEXT_BOX__PROPERTIES, null, msgs);
+			msgs = basicSetProperties(newProperties, msgs);
+			if (msgs != null) msgs.dispatch();
+		}
+		else if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_TEXT_BOX__PROPERTIES, newProperties, newProperties));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IAttribute getM_pModelObject() {
+		if (m_pModelObject != null && m_pModelObject.eIsProxy()) {
+			InternalEObject oldM_pModelObject = (InternalEObject)m_pModelObject;
+			m_pModelObject = (IAttribute)eResolveProxy(oldM_pModelObject);
+			if (m_pModelObject != oldM_pModelObject) {
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.CGI_TEXT_BOX__MPMODEL_OBJECT, oldM_pModelObject, m_pModelObject));
+			}
+		}
+		return m_pModelObject;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IAttribute basicGetM_pModelObject() {
+		return m_pModelObject;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_pModelObject(IAttribute newM_pModelObject) {
+		IAttribute oldM_pModelObject = m_pModelObject;
+		m_pModelObject = newM_pModelObject;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_TEXT_BOX__MPMODEL_OBJECT, oldM_pModelObject, m_pModelObject));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public GraphElementsType getM_pParent() {
+		if (m_pParent != null && m_pParent.eIsProxy()) {
+			InternalEObject oldM_pParent = (InternalEObject)m_pParent;
+			m_pParent = (GraphElementsType)eResolveProxy(oldM_pParent);
+			if (m_pParent != oldM_pParent) {
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.CGI_TEXT_BOX__MPPARENT, oldM_pParent, m_pParent));
+			}
+		}
+		return m_pParent;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public GraphElementsType basicGetM_pParent() {
+		return m_pParent;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_pParent(GraphElementsType newM_pParent) {
+		GraphElementsType oldM_pParent = m_pParent;
+		m_pParent = newM_pParent;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_TEXT_BOX__MPPARENT, oldM_pParent, m_pParent));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<String> getM_transform() {
+		if (m_transform == null) {
+			m_transform = new EDataTypeEList<String>(String.class, this, UMLRpyPackage.CGI_TEXT_BOX__MTRANSFORM);
+		}
+		return m_transform;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<String> getM_polygon() {
+		if (m_polygon == null) {
+			m_polygon = new EDataTypeEList<String>(String.class, this, UMLRpyPackage.CGI_TEXT_BOX__MPOLYGON);
+		}
+		return m_polygon;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getM_nNameFormat() {
+		return m_nNameFormat;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_nNameFormat(String newM_nNameFormat) {
+		String oldM_nNameFormat = m_nNameFormat;
+		m_nNameFormat = newM_nNameFormat;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_TEXT_BOX__MNNAME_FORMAT, oldM_nNameFormat, m_nNameFormat));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getM_nIsNameFormat() {
+		return m_nIsNameFormat;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_nIsNameFormat(String newM_nIsNameFormat) {
+		String oldM_nIsNameFormat = m_nIsNameFormat;
+		m_nIsNameFormat = newM_nIsNameFormat;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_TEXT_BOX__MNIS_NAME_FORMAT, oldM_nIsNameFormat, m_nIsNameFormat));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<UnknownType> getCompartments() {
+		if (compartments == null) {
+			compartments = new EObjectResolvingEList<UnknownType>(UnknownType.class, this, UMLRpyPackage.CGI_TEXT_BOX__COMPARTMENTS);
+		}
+		return compartments;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getM_csModelObjPath() {
+		return m_csModelObjPath;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_csModelObjPath(String newM_csModelObjPath) {
+		String oldM_csModelObjPath = m_csModelObjPath;
+		m_csModelObjPath = newM_csModelObjPath;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_TEXT_BOX__MCS_MODEL_OBJ_PATH, oldM_csModelObjPath, m_csModelObjPath));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getM_csName() {
+		return m_csName;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_csName(String newM_csName) {
+		String oldM_csName = m_csName;
+		m_csName = newM_csName;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_TEXT_BOX__MCS_NAME, oldM_csName, m_csName));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<DependsOnType> getM_PartsArray() {
+		if (m_PartsArray == null) {
+			m_PartsArray = new EObjectResolvingEList<DependsOnType>(DependsOnType.class, this, UMLRpyPackage.CGI_TEXT_BOX__MPARTS_ARRAY);
+		}
+		return m_PartsArray;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
+		switch (featureID) {
+			case UMLRpyPackage.CGI_TEXT_BOX__PROPERTIES:
+				return basicSetProperties(null, msgs);
+		}
+		return super.eInverseRemove(otherEnd, featureID, msgs);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object eGet(int featureID, boolean resolve, boolean coreType) {
+		switch (featureID) {
+			case UMLRpyPackage.CGI_TEXT_BOX__PROPERTIES:
+				if (resolve) return getProperties();
+				return basicGetProperties();
+			case UMLRpyPackage.CGI_TEXT_BOX__MPMODEL_OBJECT:
+				if (resolve) return getM_pModelObject();
+				return basicGetM_pModelObject();
+			case UMLRpyPackage.CGI_TEXT_BOX__MPPARENT:
+				if (resolve) return getM_pParent();
+				return basicGetM_pParent();
+			case UMLRpyPackage.CGI_TEXT_BOX__MTRANSFORM:
+				return getM_transform();
+			case UMLRpyPackage.CGI_TEXT_BOX__MPOLYGON:
+				return getM_polygon();
+			case UMLRpyPackage.CGI_TEXT_BOX__MNNAME_FORMAT:
+				return getM_nNameFormat();
+			case UMLRpyPackage.CGI_TEXT_BOX__MNIS_NAME_FORMAT:
+				return getM_nIsNameFormat();
+			case UMLRpyPackage.CGI_TEXT_BOX__COMPARTMENTS:
+				return getCompartments();
+			case UMLRpyPackage.CGI_TEXT_BOX__MCS_MODEL_OBJ_PATH:
+				return getM_csModelObjPath();
+			case UMLRpyPackage.CGI_TEXT_BOX__MCS_NAME:
+				return getM_csName();
+			case UMLRpyPackage.CGI_TEXT_BOX__MPARTS_ARRAY:
+				return getM_PartsArray();
+		}
+		return super.eGet(featureID, resolve, coreType);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@SuppressWarnings("unchecked")
+	@Override
+	public void eSet(int featureID, Object newValue) {
+		switch (featureID) {
+			case UMLRpyPackage.CGI_TEXT_BOX__PROPERTIES:
+				setProperties((IPropertyContainer)newValue);
+				return;
+			case UMLRpyPackage.CGI_TEXT_BOX__MPMODEL_OBJECT:
+				setM_pModelObject((IAttribute)newValue);
+				return;
+			case UMLRpyPackage.CGI_TEXT_BOX__MPPARENT:
+				setM_pParent((GraphElementsType)newValue);
+				return;
+			case UMLRpyPackage.CGI_TEXT_BOX__MTRANSFORM:
+				getM_transform().clear();
+				getM_transform().addAll((Collection<? extends String>)newValue);
+				return;
+			case UMLRpyPackage.CGI_TEXT_BOX__MPOLYGON:
+				getM_polygon().clear();
+				getM_polygon().addAll((Collection<? extends String>)newValue);
+				return;
+			case UMLRpyPackage.CGI_TEXT_BOX__MNNAME_FORMAT:
+				setM_nNameFormat((String)newValue);
+				return;
+			case UMLRpyPackage.CGI_TEXT_BOX__MNIS_NAME_FORMAT:
+				setM_nIsNameFormat((String)newValue);
+				return;
+			case UMLRpyPackage.CGI_TEXT_BOX__COMPARTMENTS:
+				getCompartments().clear();
+				getCompartments().addAll((Collection<? extends UnknownType>)newValue);
+				return;
+			case UMLRpyPackage.CGI_TEXT_BOX__MCS_MODEL_OBJ_PATH:
+				setM_csModelObjPath((String)newValue);
+				return;
+			case UMLRpyPackage.CGI_TEXT_BOX__MCS_NAME:
+				setM_csName((String)newValue);
+				return;
+			case UMLRpyPackage.CGI_TEXT_BOX__MPARTS_ARRAY:
+				getM_PartsArray().clear();
+				getM_PartsArray().addAll((Collection<? extends DependsOnType>)newValue);
+				return;
+		}
+		super.eSet(featureID, newValue);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void eUnset(int featureID) {
+		switch (featureID) {
+			case UMLRpyPackage.CGI_TEXT_BOX__PROPERTIES:
+				setProperties((IPropertyContainer)null);
+				return;
+			case UMLRpyPackage.CGI_TEXT_BOX__MPMODEL_OBJECT:
+				setM_pModelObject((IAttribute)null);
+				return;
+			case UMLRpyPackage.CGI_TEXT_BOX__MPPARENT:
+				setM_pParent((GraphElementsType)null);
+				return;
+			case UMLRpyPackage.CGI_TEXT_BOX__MTRANSFORM:
+				getM_transform().clear();
+				return;
+			case UMLRpyPackage.CGI_TEXT_BOX__MPOLYGON:
+				getM_polygon().clear();
+				return;
+			case UMLRpyPackage.CGI_TEXT_BOX__MNNAME_FORMAT:
+				setM_nNameFormat(MNNAME_FORMAT_EDEFAULT);
+				return;
+			case UMLRpyPackage.CGI_TEXT_BOX__MNIS_NAME_FORMAT:
+				setM_nIsNameFormat(MNIS_NAME_FORMAT_EDEFAULT);
+				return;
+			case UMLRpyPackage.CGI_TEXT_BOX__COMPARTMENTS:
+				getCompartments().clear();
+				return;
+			case UMLRpyPackage.CGI_TEXT_BOX__MCS_MODEL_OBJ_PATH:
+				setM_csModelObjPath(MCS_MODEL_OBJ_PATH_EDEFAULT);
+				return;
+			case UMLRpyPackage.CGI_TEXT_BOX__MCS_NAME:
+				setM_csName(MCS_NAME_EDEFAULT);
+				return;
+			case UMLRpyPackage.CGI_TEXT_BOX__MPARTS_ARRAY:
+				getM_PartsArray().clear();
+				return;
+		}
+		super.eUnset(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public boolean eIsSet(int featureID) {
+		switch (featureID) {
+			case UMLRpyPackage.CGI_TEXT_BOX__PROPERTIES:
+				return properties != null;
+			case UMLRpyPackage.CGI_TEXT_BOX__MPMODEL_OBJECT:
+				return m_pModelObject != null;
+			case UMLRpyPackage.CGI_TEXT_BOX__MPPARENT:
+				return m_pParent != null;
+			case UMLRpyPackage.CGI_TEXT_BOX__MTRANSFORM:
+				return m_transform != null && !m_transform.isEmpty();
+			case UMLRpyPackage.CGI_TEXT_BOX__MPOLYGON:
+				return m_polygon != null && !m_polygon.isEmpty();
+			case UMLRpyPackage.CGI_TEXT_BOX__MNNAME_FORMAT:
+				return MNNAME_FORMAT_EDEFAULT == null ? m_nNameFormat != null : !MNNAME_FORMAT_EDEFAULT.equals(m_nNameFormat);
+			case UMLRpyPackage.CGI_TEXT_BOX__MNIS_NAME_FORMAT:
+				return MNIS_NAME_FORMAT_EDEFAULT == null ? m_nIsNameFormat != null : !MNIS_NAME_FORMAT_EDEFAULT.equals(m_nIsNameFormat);
+			case UMLRpyPackage.CGI_TEXT_BOX__COMPARTMENTS:
+				return compartments != null && !compartments.isEmpty();
+			case UMLRpyPackage.CGI_TEXT_BOX__MCS_MODEL_OBJ_PATH:
+				return MCS_MODEL_OBJ_PATH_EDEFAULT == null ? m_csModelObjPath != null : !MCS_MODEL_OBJ_PATH_EDEFAULT.equals(m_csModelObjPath);
+			case UMLRpyPackage.CGI_TEXT_BOX__MCS_NAME:
+				return MCS_NAME_EDEFAULT == null ? m_csName != null : !MCS_NAME_EDEFAULT.equals(m_csName);
+			case UMLRpyPackage.CGI_TEXT_BOX__MPARTS_ARRAY:
+				return m_PartsArray != null && !m_PartsArray.isEmpty();
+		}
+		return super.eIsSet(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String toString() {
+		if (eIsProxy()) return super.toString();
+
+		StringBuffer result = new StringBuffer(super.toString());
+		result.append(" (m_transform: "); //$NON-NLS-1$
+		result.append(m_transform);
+		result.append(", m_polygon: "); //$NON-NLS-1$
+		result.append(m_polygon);
+		result.append(", m_nNameFormat: "); //$NON-NLS-1$
+		result.append(m_nNameFormat);
+		result.append(", m_nIsNameFormat: "); //$NON-NLS-1$
+		result.append(m_nIsNameFormat);
+		result.append(", m_csModelObjPath: "); //$NON-NLS-1$
+		result.append(m_csModelObjPath);
+		result.append(", m_csName: "); //$NON-NLS-1$
+		result.append(m_csName);
+		result.append(')');
+		return result.toString();
+	}
+
+} //CGITextBoxImpl
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/CGITextImpl.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/CGITextImpl.java
new file mode 100755
index 0000000..eea82da
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/CGITextImpl.java
@@ -0,0 +1,663 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl;
+
+import java.util.Collection;
+
+import org.eclipse.emf.common.notify.Notification;
+import org.eclipse.emf.common.notify.NotificationChain;
+
+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.impl.MinimalEObjectImpl;
+
+import org.eclipse.emf.ecore.util.EDataTypeEList;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIText;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IColor;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>CGI Text</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * </p>
+ * <ul>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGITextImpl#getM_str <em>Mstr</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGITextImpl#getM_style <em>Mstyle</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGITextImpl#getM_color <em>Mcolor</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGITextImpl#getM_position <em>Mposition</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGITextImpl#getM_nIdent <em>MnIdent</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGITextImpl#getM_bImplicitSetRectPoints <em>MbImplicit Set Rect Points</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGITextImpl#getM_nOrientationCtrlPt <em>MnOrientation Ctrl Pt</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGITextImpl#getM_nVerticalSpacing <em>MnVertical Spacing</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGITextImpl#getM_nHorizontalSpacing <em>MnHorizontal Spacing</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGITextImpl#getM_transform <em>Mtransform</em>}</li>
+ * </ul>
+ *
+ * @generated
+ */
+public class CGITextImpl extends MinimalEObjectImpl.Container implements CGIText {
+	/**
+	 * The default value of the '{@link #getM_str() <em>Mstr</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_str()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String MSTR_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getM_str() <em>Mstr</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_str()
+	 * @generated
+	 * @ordered
+	 */
+	protected String m_str = MSTR_EDEFAULT;
+
+	/**
+	 * The cached value of the '{@link #getM_style() <em>Mstyle</em>}' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_style()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<String> m_style;
+
+	/**
+	 * The cached value of the '{@link #getM_color() <em>Mcolor</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_color()
+	 * @generated
+	 * @ordered
+	 */
+	protected IColor m_color;
+
+	/**
+	 * The cached value of the '{@link #getM_position() <em>Mposition</em>}' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_position()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<String> m_position;
+
+	/**
+	 * The default value of the '{@link #getM_nIdent() <em>MnIdent</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_nIdent()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String MNIDENT_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getM_nIdent() <em>MnIdent</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_nIdent()
+	 * @generated
+	 * @ordered
+	 */
+	protected String m_nIdent = MNIDENT_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getM_bImplicitSetRectPoints() <em>MbImplicit Set Rect Points</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_bImplicitSetRectPoints()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String MBIMPLICIT_SET_RECT_POINTS_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getM_bImplicitSetRectPoints() <em>MbImplicit Set Rect Points</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_bImplicitSetRectPoints()
+	 * @generated
+	 * @ordered
+	 */
+	protected String m_bImplicitSetRectPoints = MBIMPLICIT_SET_RECT_POINTS_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getM_nOrientationCtrlPt() <em>MnOrientation Ctrl Pt</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_nOrientationCtrlPt()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String MNORIENTATION_CTRL_PT_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getM_nOrientationCtrlPt() <em>MnOrientation Ctrl Pt</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_nOrientationCtrlPt()
+	 * @generated
+	 * @ordered
+	 */
+	protected String m_nOrientationCtrlPt = MNORIENTATION_CTRL_PT_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getM_nVerticalSpacing() <em>MnVertical Spacing</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_nVerticalSpacing()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String MNVERTICAL_SPACING_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getM_nVerticalSpacing() <em>MnVertical Spacing</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_nVerticalSpacing()
+	 * @generated
+	 * @ordered
+	 */
+	protected String m_nVerticalSpacing = MNVERTICAL_SPACING_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getM_nHorizontalSpacing() <em>MnHorizontal Spacing</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_nHorizontalSpacing()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String MNHORIZONTAL_SPACING_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getM_nHorizontalSpacing() <em>MnHorizontal Spacing</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_nHorizontalSpacing()
+	 * @generated
+	 * @ordered
+	 */
+	protected String m_nHorizontalSpacing = MNHORIZONTAL_SPACING_EDEFAULT;
+
+	/**
+	 * The cached value of the '{@link #getM_transform() <em>Mtransform</em>}' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_transform()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<String> m_transform;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected CGITextImpl() {
+		super();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EClass eStaticClass() {
+		return UMLRpyPackage.eINSTANCE.getCGIText();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getM_str() {
+		return m_str;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_str(String newM_str) {
+		String oldM_str = m_str;
+		m_str = newM_str;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_TEXT__MSTR, oldM_str, m_str));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<String> getM_style() {
+		if (m_style == null) {
+			m_style = new EDataTypeEList<String>(String.class, this, UMLRpyPackage.CGI_TEXT__MSTYLE);
+		}
+		return m_style;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IColor getM_color() {
+		if (m_color != null && m_color.eIsProxy()) {
+			InternalEObject oldM_color = (InternalEObject)m_color;
+			m_color = (IColor)eResolveProxy(oldM_color);
+			if (m_color != oldM_color) {
+				InternalEObject newM_color = (InternalEObject)m_color;
+				NotificationChain msgs = oldM_color.eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.CGI_TEXT__MCOLOR, null, null);
+				if (newM_color.eInternalContainer() == null) {
+					msgs = newM_color.eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.CGI_TEXT__MCOLOR, null, msgs);
+				}
+				if (msgs != null) msgs.dispatch();
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.CGI_TEXT__MCOLOR, oldM_color, m_color));
+			}
+		}
+		return m_color;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IColor basicGetM_color() {
+		return m_color;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public NotificationChain basicSetM_color(IColor newM_color, NotificationChain msgs) {
+		IColor oldM_color = m_color;
+		m_color = newM_color;
+		if (eNotificationRequired()) {
+			ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_TEXT__MCOLOR, oldM_color, newM_color);
+			if (msgs == null) msgs = notification; else msgs.add(notification);
+		}
+		return msgs;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_color(IColor newM_color) {
+		if (newM_color != m_color) {
+			NotificationChain msgs = null;
+			if (m_color != null)
+				msgs = ((InternalEObject)m_color).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.CGI_TEXT__MCOLOR, null, msgs);
+			if (newM_color != null)
+				msgs = ((InternalEObject)newM_color).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.CGI_TEXT__MCOLOR, null, msgs);
+			msgs = basicSetM_color(newM_color, msgs);
+			if (msgs != null) msgs.dispatch();
+		}
+		else if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_TEXT__MCOLOR, newM_color, newM_color));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<String> getM_position() {
+		if (m_position == null) {
+			m_position = new EDataTypeEList<String>(String.class, this, UMLRpyPackage.CGI_TEXT__MPOSITION);
+		}
+		return m_position;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getM_nIdent() {
+		return m_nIdent;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_nIdent(String newM_nIdent) {
+		String oldM_nIdent = m_nIdent;
+		m_nIdent = newM_nIdent;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_TEXT__MNIDENT, oldM_nIdent, m_nIdent));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getM_bImplicitSetRectPoints() {
+		return m_bImplicitSetRectPoints;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_bImplicitSetRectPoints(String newM_bImplicitSetRectPoints) {
+		String oldM_bImplicitSetRectPoints = m_bImplicitSetRectPoints;
+		m_bImplicitSetRectPoints = newM_bImplicitSetRectPoints;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_TEXT__MBIMPLICIT_SET_RECT_POINTS, oldM_bImplicitSetRectPoints, m_bImplicitSetRectPoints));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getM_nOrientationCtrlPt() {
+		return m_nOrientationCtrlPt;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_nOrientationCtrlPt(String newM_nOrientationCtrlPt) {
+		String oldM_nOrientationCtrlPt = m_nOrientationCtrlPt;
+		m_nOrientationCtrlPt = newM_nOrientationCtrlPt;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_TEXT__MNORIENTATION_CTRL_PT, oldM_nOrientationCtrlPt, m_nOrientationCtrlPt));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getM_nVerticalSpacing() {
+		return m_nVerticalSpacing;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_nVerticalSpacing(String newM_nVerticalSpacing) {
+		String oldM_nVerticalSpacing = m_nVerticalSpacing;
+		m_nVerticalSpacing = newM_nVerticalSpacing;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_TEXT__MNVERTICAL_SPACING, oldM_nVerticalSpacing, m_nVerticalSpacing));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getM_nHorizontalSpacing() {
+		return m_nHorizontalSpacing;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_nHorizontalSpacing(String newM_nHorizontalSpacing) {
+		String oldM_nHorizontalSpacing = m_nHorizontalSpacing;
+		m_nHorizontalSpacing = newM_nHorizontalSpacing;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_TEXT__MNHORIZONTAL_SPACING, oldM_nHorizontalSpacing, m_nHorizontalSpacing));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<String> getM_transform() {
+		if (m_transform == null) {
+			m_transform = new EDataTypeEList<String>(String.class, this, UMLRpyPackage.CGI_TEXT__MTRANSFORM);
+		}
+		return m_transform;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
+		switch (featureID) {
+			case UMLRpyPackage.CGI_TEXT__MCOLOR:
+				return basicSetM_color(null, msgs);
+		}
+		return super.eInverseRemove(otherEnd, featureID, msgs);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object eGet(int featureID, boolean resolve, boolean coreType) {
+		switch (featureID) {
+			case UMLRpyPackage.CGI_TEXT__MSTR:
+				return getM_str();
+			case UMLRpyPackage.CGI_TEXT__MSTYLE:
+				return getM_style();
+			case UMLRpyPackage.CGI_TEXT__MCOLOR:
+				if (resolve) return getM_color();
+				return basicGetM_color();
+			case UMLRpyPackage.CGI_TEXT__MPOSITION:
+				return getM_position();
+			case UMLRpyPackage.CGI_TEXT__MNIDENT:
+				return getM_nIdent();
+			case UMLRpyPackage.CGI_TEXT__MBIMPLICIT_SET_RECT_POINTS:
+				return getM_bImplicitSetRectPoints();
+			case UMLRpyPackage.CGI_TEXT__MNORIENTATION_CTRL_PT:
+				return getM_nOrientationCtrlPt();
+			case UMLRpyPackage.CGI_TEXT__MNVERTICAL_SPACING:
+				return getM_nVerticalSpacing();
+			case UMLRpyPackage.CGI_TEXT__MNHORIZONTAL_SPACING:
+				return getM_nHorizontalSpacing();
+			case UMLRpyPackage.CGI_TEXT__MTRANSFORM:
+				return getM_transform();
+		}
+		return super.eGet(featureID, resolve, coreType);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@SuppressWarnings("unchecked")
+	@Override
+	public void eSet(int featureID, Object newValue) {
+		switch (featureID) {
+			case UMLRpyPackage.CGI_TEXT__MSTR:
+				setM_str((String)newValue);
+				return;
+			case UMLRpyPackage.CGI_TEXT__MSTYLE:
+				getM_style().clear();
+				getM_style().addAll((Collection<? extends String>)newValue);
+				return;
+			case UMLRpyPackage.CGI_TEXT__MCOLOR:
+				setM_color((IColor)newValue);
+				return;
+			case UMLRpyPackage.CGI_TEXT__MPOSITION:
+				getM_position().clear();
+				getM_position().addAll((Collection<? extends String>)newValue);
+				return;
+			case UMLRpyPackage.CGI_TEXT__MNIDENT:
+				setM_nIdent((String)newValue);
+				return;
+			case UMLRpyPackage.CGI_TEXT__MBIMPLICIT_SET_RECT_POINTS:
+				setM_bImplicitSetRectPoints((String)newValue);
+				return;
+			case UMLRpyPackage.CGI_TEXT__MNORIENTATION_CTRL_PT:
+				setM_nOrientationCtrlPt((String)newValue);
+				return;
+			case UMLRpyPackage.CGI_TEXT__MNVERTICAL_SPACING:
+				setM_nVerticalSpacing((String)newValue);
+				return;
+			case UMLRpyPackage.CGI_TEXT__MNHORIZONTAL_SPACING:
+				setM_nHorizontalSpacing((String)newValue);
+				return;
+			case UMLRpyPackage.CGI_TEXT__MTRANSFORM:
+				getM_transform().clear();
+				getM_transform().addAll((Collection<? extends String>)newValue);
+				return;
+		}
+		super.eSet(featureID, newValue);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void eUnset(int featureID) {
+		switch (featureID) {
+			case UMLRpyPackage.CGI_TEXT__MSTR:
+				setM_str(MSTR_EDEFAULT);
+				return;
+			case UMLRpyPackage.CGI_TEXT__MSTYLE:
+				getM_style().clear();
+				return;
+			case UMLRpyPackage.CGI_TEXT__MCOLOR:
+				setM_color((IColor)null);
+				return;
+			case UMLRpyPackage.CGI_TEXT__MPOSITION:
+				getM_position().clear();
+				return;
+			case UMLRpyPackage.CGI_TEXT__MNIDENT:
+				setM_nIdent(MNIDENT_EDEFAULT);
+				return;
+			case UMLRpyPackage.CGI_TEXT__MBIMPLICIT_SET_RECT_POINTS:
+				setM_bImplicitSetRectPoints(MBIMPLICIT_SET_RECT_POINTS_EDEFAULT);
+				return;
+			case UMLRpyPackage.CGI_TEXT__MNORIENTATION_CTRL_PT:
+				setM_nOrientationCtrlPt(MNORIENTATION_CTRL_PT_EDEFAULT);
+				return;
+			case UMLRpyPackage.CGI_TEXT__MNVERTICAL_SPACING:
+				setM_nVerticalSpacing(MNVERTICAL_SPACING_EDEFAULT);
+				return;
+			case UMLRpyPackage.CGI_TEXT__MNHORIZONTAL_SPACING:
+				setM_nHorizontalSpacing(MNHORIZONTAL_SPACING_EDEFAULT);
+				return;
+			case UMLRpyPackage.CGI_TEXT__MTRANSFORM:
+				getM_transform().clear();
+				return;
+		}
+		super.eUnset(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public boolean eIsSet(int featureID) {
+		switch (featureID) {
+			case UMLRpyPackage.CGI_TEXT__MSTR:
+				return MSTR_EDEFAULT == null ? m_str != null : !MSTR_EDEFAULT.equals(m_str);
+			case UMLRpyPackage.CGI_TEXT__MSTYLE:
+				return m_style != null && !m_style.isEmpty();
+			case UMLRpyPackage.CGI_TEXT__MCOLOR:
+				return m_color != null;
+			case UMLRpyPackage.CGI_TEXT__MPOSITION:
+				return m_position != null && !m_position.isEmpty();
+			case UMLRpyPackage.CGI_TEXT__MNIDENT:
+				return MNIDENT_EDEFAULT == null ? m_nIdent != null : !MNIDENT_EDEFAULT.equals(m_nIdent);
+			case UMLRpyPackage.CGI_TEXT__MBIMPLICIT_SET_RECT_POINTS:
+				return MBIMPLICIT_SET_RECT_POINTS_EDEFAULT == null ? m_bImplicitSetRectPoints != null : !MBIMPLICIT_SET_RECT_POINTS_EDEFAULT.equals(m_bImplicitSetRectPoints);
+			case UMLRpyPackage.CGI_TEXT__MNORIENTATION_CTRL_PT:
+				return MNORIENTATION_CTRL_PT_EDEFAULT == null ? m_nOrientationCtrlPt != null : !MNORIENTATION_CTRL_PT_EDEFAULT.equals(m_nOrientationCtrlPt);
+			case UMLRpyPackage.CGI_TEXT__MNVERTICAL_SPACING:
+				return MNVERTICAL_SPACING_EDEFAULT == null ? m_nVerticalSpacing != null : !MNVERTICAL_SPACING_EDEFAULT.equals(m_nVerticalSpacing);
+			case UMLRpyPackage.CGI_TEXT__MNHORIZONTAL_SPACING:
+				return MNHORIZONTAL_SPACING_EDEFAULT == null ? m_nHorizontalSpacing != null : !MNHORIZONTAL_SPACING_EDEFAULT.equals(m_nHorizontalSpacing);
+			case UMLRpyPackage.CGI_TEXT__MTRANSFORM:
+				return m_transform != null && !m_transform.isEmpty();
+		}
+		return super.eIsSet(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String toString() {
+		if (eIsProxy()) return super.toString();
+
+		StringBuffer result = new StringBuffer(super.toString());
+		result.append(" (m_str: "); //$NON-NLS-1$
+		result.append(m_str);
+		result.append(", m_style: "); //$NON-NLS-1$
+		result.append(m_style);
+		result.append(", m_position: "); //$NON-NLS-1$
+		result.append(m_position);
+		result.append(", m_nIdent: "); //$NON-NLS-1$
+		result.append(m_nIdent);
+		result.append(", m_bImplicitSetRectPoints: "); //$NON-NLS-1$
+		result.append(m_bImplicitSetRectPoints);
+		result.append(", m_nOrientationCtrlPt: "); //$NON-NLS-1$
+		result.append(m_nOrientationCtrlPt);
+		result.append(", m_nVerticalSpacing: "); //$NON-NLS-1$
+		result.append(m_nVerticalSpacing);
+		result.append(", m_nHorizontalSpacing: "); //$NON-NLS-1$
+		result.append(m_nHorizontalSpacing);
+		result.append(", m_transform: "); //$NON-NLS-1$
+		result.append(m_transform);
+		result.append(')');
+		return result.toString();
+	}
+
+} //CGITextImpl
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/CGITransImpl.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/CGITransImpl.java
new file mode 100755
index 0000000..73ea889
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/CGITransImpl.java
@@ -0,0 +1,1320 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl;
+
+import java.util.Collection;
+
+import org.eclipse.emf.common.notify.Notification;
+import org.eclipse.emf.common.notify.NotificationChain;
+
+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.EDataTypeEList;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIText;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGITrans;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.GraphElementsType;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IColor;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IPropertyContainer;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.TransitionsType;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>CGI Trans</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * </p>
+ * <ul>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGITransImpl#getProperties <em>Properties</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGITransImpl#getM_pModelObject <em>MpModel Object</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGITransImpl#getM_pParent <em>MpParent</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGITransImpl#getM_pSource <em>MpSource</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGITransImpl#getM_sourceType <em>Msource Type</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGITransImpl#getM_pTarget <em>MpTarget</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGITransImpl#getM_targetType <em>Mtarget Type</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGITransImpl#getM_direction <em>Mdirection</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGITransImpl#getM_rpn <em>Mrpn</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGITransImpl#getM_anglePoint1 <em>Mangle Point1</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGITransImpl#getM_anglePoint2 <em>Mangle Point2</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGITransImpl#getM_line_style <em>Mline style</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGITransImpl#getM_SourcePort <em>MSource Port</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGITransImpl#getM_TargetPort <em>MTarget Port</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGITransImpl#getM_nInheritanceMask <em>MnInheritance Mask</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGITransImpl#getM_bShowName <em>MbShow Name</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGITransImpl#getM_arrow <em>Marrow</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGITransImpl#getMyState <em>My State</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGITransImpl#getM_pInheritsFrom <em>MpInherits From</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGITransImpl#getM_color <em>Mcolor</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CGITransImpl#getM_lineWidth <em>Mline Width</em>}</li>
+ * </ul>
+ *
+ * @generated
+ */
+public class CGITransImpl extends GraphElementsTypeImpl implements CGITrans {
+	/**
+	 * The cached value of the '{@link #getProperties() <em>Properties</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getProperties()
+	 * @generated
+	 * @ordered
+	 */
+	protected IPropertyContainer properties;
+
+	/**
+	 * The cached value of the '{@link #getM_pModelObject() <em>MpModel Object</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_pModelObject()
+	 * @generated
+	 * @ordered
+	 */
+	protected TransitionsType m_pModelObject;
+
+	/**
+	 * The default value of the '{@link #getM_pParent() <em>MpParent</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_pParent()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String MPPARENT_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getM_pParent() <em>MpParent</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_pParent()
+	 * @generated
+	 * @ordered
+	 */
+	protected String m_pParent = MPPARENT_EDEFAULT;
+
+	/**
+	 * The cached value of the '{@link #getM_pSource() <em>MpSource</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_pSource()
+	 * @generated
+	 * @ordered
+	 */
+	protected GraphElementsType m_pSource;
+
+	/**
+	 * The default value of the '{@link #getM_sourceType() <em>Msource Type</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_sourceType()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String MSOURCE_TYPE_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getM_sourceType() <em>Msource Type</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_sourceType()
+	 * @generated
+	 * @ordered
+	 */
+	protected String m_sourceType = MSOURCE_TYPE_EDEFAULT;
+
+	/**
+	 * The cached value of the '{@link #getM_pTarget() <em>MpTarget</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_pTarget()
+	 * @generated
+	 * @ordered
+	 */
+	protected GraphElementsType m_pTarget;
+
+	/**
+	 * The default value of the '{@link #getM_targetType() <em>Mtarget Type</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_targetType()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String MTARGET_TYPE_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getM_targetType() <em>Mtarget Type</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_targetType()
+	 * @generated
+	 * @ordered
+	 */
+	protected String m_targetType = MTARGET_TYPE_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getM_direction() <em>Mdirection</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_direction()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String MDIRECTION_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getM_direction() <em>Mdirection</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_direction()
+	 * @generated
+	 * @ordered
+	 */
+	protected String m_direction = MDIRECTION_EDEFAULT;
+
+	/**
+	 * The cached value of the '{@link #getM_rpn() <em>Mrpn</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_rpn()
+	 * @generated
+	 * @ordered
+	 */
+	protected CGIText m_rpn;
+
+	/**
+	 * The cached value of the '{@link #getM_anglePoint1() <em>Mangle Point1</em>}' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_anglePoint1()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<String> m_anglePoint1;
+
+	/**
+	 * The cached value of the '{@link #getM_anglePoint2() <em>Mangle Point2</em>}' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_anglePoint2()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<String> m_anglePoint2;
+
+	/**
+	 * The default value of the '{@link #getM_line_style() <em>Mline style</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_line_style()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String MLINE_STYLE_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getM_line_style() <em>Mline style</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_line_style()
+	 * @generated
+	 * @ordered
+	 */
+	protected String m_line_style = MLINE_STYLE_EDEFAULT;
+
+	/**
+	 * The cached value of the '{@link #getM_SourcePort() <em>MSource Port</em>}' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_SourcePort()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<String> m_SourcePort;
+
+	/**
+	 * The cached value of the '{@link #getM_TargetPort() <em>MTarget Port</em>}' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_TargetPort()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<String> m_TargetPort;
+
+	/**
+	 * The default value of the '{@link #getM_nInheritanceMask() <em>MnInheritance Mask</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_nInheritanceMask()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String MNINHERITANCE_MASK_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getM_nInheritanceMask() <em>MnInheritance Mask</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_nInheritanceMask()
+	 * @generated
+	 * @ordered
+	 */
+	protected String m_nInheritanceMask = MNINHERITANCE_MASK_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getM_bShowName() <em>MbShow Name</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_bShowName()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String MBSHOW_NAME_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getM_bShowName() <em>MbShow Name</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_bShowName()
+	 * @generated
+	 * @ordered
+	 */
+	protected String m_bShowName = MBSHOW_NAME_EDEFAULT;
+
+	/**
+	 * The cached value of the '{@link #getM_arrow() <em>Marrow</em>}' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_arrow()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<String> m_arrow;
+
+	/**
+	 * The default value of the '{@link #getMyState() <em>My State</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getMyState()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String MY_STATE_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getMyState() <em>My State</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getMyState()
+	 * @generated
+	 * @ordered
+	 */
+	protected String myState = MY_STATE_EDEFAULT;
+
+	/**
+	 * The cached value of the '{@link #getM_pInheritsFrom() <em>MpInherits From</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_pInheritsFrom()
+	 * @generated
+	 * @ordered
+	 */
+	protected GraphElementsType m_pInheritsFrom;
+
+	/**
+	 * The cached value of the '{@link #getM_color() <em>Mcolor</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_color()
+	 * @generated
+	 * @ordered
+	 */
+	protected IColor m_color;
+
+	/**
+	 * The default value of the '{@link #getM_lineWidth() <em>Mline Width</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_lineWidth()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String MLINE_WIDTH_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getM_lineWidth() <em>Mline Width</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_lineWidth()
+	 * @generated
+	 * @ordered
+	 */
+	protected String m_lineWidth = MLINE_WIDTH_EDEFAULT;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected CGITransImpl() {
+		super();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EClass eStaticClass() {
+		return UMLRpyPackage.eINSTANCE.getCGITrans();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IPropertyContainer getProperties() {
+		if (properties != null && properties.eIsProxy()) {
+			InternalEObject oldProperties = (InternalEObject)properties;
+			properties = (IPropertyContainer)eResolveProxy(oldProperties);
+			if (properties != oldProperties) {
+				InternalEObject newProperties = (InternalEObject)properties;
+				NotificationChain msgs = oldProperties.eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.CGI_TRANS__PROPERTIES, null, null);
+				if (newProperties.eInternalContainer() == null) {
+					msgs = newProperties.eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.CGI_TRANS__PROPERTIES, null, msgs);
+				}
+				if (msgs != null) msgs.dispatch();
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.CGI_TRANS__PROPERTIES, oldProperties, properties));
+			}
+		}
+		return properties;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IPropertyContainer basicGetProperties() {
+		return properties;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public NotificationChain basicSetProperties(IPropertyContainer newProperties, NotificationChain msgs) {
+		IPropertyContainer oldProperties = properties;
+		properties = newProperties;
+		if (eNotificationRequired()) {
+			ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_TRANS__PROPERTIES, oldProperties, newProperties);
+			if (msgs == null) msgs = notification; else msgs.add(notification);
+		}
+		return msgs;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setProperties(IPropertyContainer newProperties) {
+		if (newProperties != properties) {
+			NotificationChain msgs = null;
+			if (properties != null)
+				msgs = ((InternalEObject)properties).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.CGI_TRANS__PROPERTIES, null, msgs);
+			if (newProperties != null)
+				msgs = ((InternalEObject)newProperties).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.CGI_TRANS__PROPERTIES, null, msgs);
+			msgs = basicSetProperties(newProperties, msgs);
+			if (msgs != null) msgs.dispatch();
+		}
+		else if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_TRANS__PROPERTIES, newProperties, newProperties));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public TransitionsType getM_pModelObject() {
+		if (m_pModelObject != null && m_pModelObject.eIsProxy()) {
+			InternalEObject oldM_pModelObject = (InternalEObject)m_pModelObject;
+			m_pModelObject = (TransitionsType)eResolveProxy(oldM_pModelObject);
+			if (m_pModelObject != oldM_pModelObject) {
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.CGI_TRANS__MPMODEL_OBJECT, oldM_pModelObject, m_pModelObject));
+			}
+		}
+		return m_pModelObject;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public TransitionsType basicGetM_pModelObject() {
+		return m_pModelObject;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_pModelObject(TransitionsType newM_pModelObject) {
+		TransitionsType oldM_pModelObject = m_pModelObject;
+		m_pModelObject = newM_pModelObject;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_TRANS__MPMODEL_OBJECT, oldM_pModelObject, m_pModelObject));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getM_pParent() {
+		return m_pParent;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_pParent(String newM_pParent) {
+		String oldM_pParent = m_pParent;
+		m_pParent = newM_pParent;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_TRANS__MPPARENT, oldM_pParent, m_pParent));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public GraphElementsType getM_pSource() {
+		if (m_pSource != null && m_pSource.eIsProxy()) {
+			InternalEObject oldM_pSource = (InternalEObject)m_pSource;
+			m_pSource = (GraphElementsType)eResolveProxy(oldM_pSource);
+			if (m_pSource != oldM_pSource) {
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.CGI_TRANS__MPSOURCE, oldM_pSource, m_pSource));
+			}
+		}
+		return m_pSource;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public GraphElementsType basicGetM_pSource() {
+		return m_pSource;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_pSource(GraphElementsType newM_pSource) {
+		GraphElementsType oldM_pSource = m_pSource;
+		m_pSource = newM_pSource;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_TRANS__MPSOURCE, oldM_pSource, m_pSource));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getM_sourceType() {
+		return m_sourceType;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_sourceType(String newM_sourceType) {
+		String oldM_sourceType = m_sourceType;
+		m_sourceType = newM_sourceType;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_TRANS__MSOURCE_TYPE, oldM_sourceType, m_sourceType));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public GraphElementsType getM_pTarget() {
+		if (m_pTarget != null && m_pTarget.eIsProxy()) {
+			InternalEObject oldM_pTarget = (InternalEObject)m_pTarget;
+			m_pTarget = (GraphElementsType)eResolveProxy(oldM_pTarget);
+			if (m_pTarget != oldM_pTarget) {
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.CGI_TRANS__MPTARGET, oldM_pTarget, m_pTarget));
+			}
+		}
+		return m_pTarget;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public GraphElementsType basicGetM_pTarget() {
+		return m_pTarget;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_pTarget(GraphElementsType newM_pTarget) {
+		GraphElementsType oldM_pTarget = m_pTarget;
+		m_pTarget = newM_pTarget;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_TRANS__MPTARGET, oldM_pTarget, m_pTarget));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getM_targetType() {
+		return m_targetType;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_targetType(String newM_targetType) {
+		String oldM_targetType = m_targetType;
+		m_targetType = newM_targetType;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_TRANS__MTARGET_TYPE, oldM_targetType, m_targetType));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getM_direction() {
+		return m_direction;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_direction(String newM_direction) {
+		String oldM_direction = m_direction;
+		m_direction = newM_direction;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_TRANS__MDIRECTION, oldM_direction, m_direction));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public CGIText getM_rpn() {
+		if (m_rpn != null && m_rpn.eIsProxy()) {
+			InternalEObject oldM_rpn = (InternalEObject)m_rpn;
+			m_rpn = (CGIText)eResolveProxy(oldM_rpn);
+			if (m_rpn != oldM_rpn) {
+				InternalEObject newM_rpn = (InternalEObject)m_rpn;
+				NotificationChain msgs = oldM_rpn.eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.CGI_TRANS__MRPN, null, null);
+				if (newM_rpn.eInternalContainer() == null) {
+					msgs = newM_rpn.eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.CGI_TRANS__MRPN, null, msgs);
+				}
+				if (msgs != null) msgs.dispatch();
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.CGI_TRANS__MRPN, oldM_rpn, m_rpn));
+			}
+		}
+		return m_rpn;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public CGIText basicGetM_rpn() {
+		return m_rpn;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public NotificationChain basicSetM_rpn(CGIText newM_rpn, NotificationChain msgs) {
+		CGIText oldM_rpn = m_rpn;
+		m_rpn = newM_rpn;
+		if (eNotificationRequired()) {
+			ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_TRANS__MRPN, oldM_rpn, newM_rpn);
+			if (msgs == null) msgs = notification; else msgs.add(notification);
+		}
+		return msgs;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_rpn(CGIText newM_rpn) {
+		if (newM_rpn != m_rpn) {
+			NotificationChain msgs = null;
+			if (m_rpn != null)
+				msgs = ((InternalEObject)m_rpn).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.CGI_TRANS__MRPN, null, msgs);
+			if (newM_rpn != null)
+				msgs = ((InternalEObject)newM_rpn).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.CGI_TRANS__MRPN, null, msgs);
+			msgs = basicSetM_rpn(newM_rpn, msgs);
+			if (msgs != null) msgs.dispatch();
+		}
+		else if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_TRANS__MRPN, newM_rpn, newM_rpn));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<String> getM_anglePoint1() {
+		if (m_anglePoint1 == null) {
+			m_anglePoint1 = new EDataTypeEList<String>(String.class, this, UMLRpyPackage.CGI_TRANS__MANGLE_POINT1);
+		}
+		return m_anglePoint1;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<String> getM_anglePoint2() {
+		if (m_anglePoint2 == null) {
+			m_anglePoint2 = new EDataTypeEList<String>(String.class, this, UMLRpyPackage.CGI_TRANS__MANGLE_POINT2);
+		}
+		return m_anglePoint2;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getM_line_style() {
+		return m_line_style;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_line_style(String newM_line_style) {
+		String oldM_line_style = m_line_style;
+		m_line_style = newM_line_style;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_TRANS__MLINE_STYLE, oldM_line_style, m_line_style));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<String> getM_SourcePort() {
+		if (m_SourcePort == null) {
+			m_SourcePort = new EDataTypeEList<String>(String.class, this, UMLRpyPackage.CGI_TRANS__MSOURCE_PORT);
+		}
+		return m_SourcePort;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<String> getM_TargetPort() {
+		if (m_TargetPort == null) {
+			m_TargetPort = new EDataTypeEList<String>(String.class, this, UMLRpyPackage.CGI_TRANS__MTARGET_PORT);
+		}
+		return m_TargetPort;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getM_nInheritanceMask() {
+		return m_nInheritanceMask;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_nInheritanceMask(String newM_nInheritanceMask) {
+		String oldM_nInheritanceMask = m_nInheritanceMask;
+		m_nInheritanceMask = newM_nInheritanceMask;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_TRANS__MNINHERITANCE_MASK, oldM_nInheritanceMask, m_nInheritanceMask));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getM_bShowName() {
+		return m_bShowName;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_bShowName(String newM_bShowName) {
+		String oldM_bShowName = m_bShowName;
+		m_bShowName = newM_bShowName;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_TRANS__MBSHOW_NAME, oldM_bShowName, m_bShowName));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<String> getM_arrow() {
+		if (m_arrow == null) {
+			m_arrow = new EDataTypeEList<String>(String.class, this, UMLRpyPackage.CGI_TRANS__MARROW);
+		}
+		return m_arrow;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getMyState() {
+		return myState;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setMyState(String newMyState) {
+		String oldMyState = myState;
+		myState = newMyState;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_TRANS__MY_STATE, oldMyState, myState));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public GraphElementsType getM_pInheritsFrom() {
+		if (m_pInheritsFrom != null && m_pInheritsFrom.eIsProxy()) {
+			InternalEObject oldM_pInheritsFrom = (InternalEObject)m_pInheritsFrom;
+			m_pInheritsFrom = (GraphElementsType)eResolveProxy(oldM_pInheritsFrom);
+			if (m_pInheritsFrom != oldM_pInheritsFrom) {
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.CGI_TRANS__MPINHERITS_FROM, oldM_pInheritsFrom, m_pInheritsFrom));
+			}
+		}
+		return m_pInheritsFrom;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public GraphElementsType basicGetM_pInheritsFrom() {
+		return m_pInheritsFrom;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_pInheritsFrom(GraphElementsType newM_pInheritsFrom) {
+		GraphElementsType oldM_pInheritsFrom = m_pInheritsFrom;
+		m_pInheritsFrom = newM_pInheritsFrom;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_TRANS__MPINHERITS_FROM, oldM_pInheritsFrom, m_pInheritsFrom));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IColor getM_color() {
+		if (m_color != null && m_color.eIsProxy()) {
+			InternalEObject oldM_color = (InternalEObject)m_color;
+			m_color = (IColor)eResolveProxy(oldM_color);
+			if (m_color != oldM_color) {
+				InternalEObject newM_color = (InternalEObject)m_color;
+				NotificationChain msgs = oldM_color.eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.CGI_TRANS__MCOLOR, null, null);
+				if (newM_color.eInternalContainer() == null) {
+					msgs = newM_color.eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.CGI_TRANS__MCOLOR, null, msgs);
+				}
+				if (msgs != null) msgs.dispatch();
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.CGI_TRANS__MCOLOR, oldM_color, m_color));
+			}
+		}
+		return m_color;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IColor basicGetM_color() {
+		return m_color;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public NotificationChain basicSetM_color(IColor newM_color, NotificationChain msgs) {
+		IColor oldM_color = m_color;
+		m_color = newM_color;
+		if (eNotificationRequired()) {
+			ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_TRANS__MCOLOR, oldM_color, newM_color);
+			if (msgs == null) msgs = notification; else msgs.add(notification);
+		}
+		return msgs;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_color(IColor newM_color) {
+		if (newM_color != m_color) {
+			NotificationChain msgs = null;
+			if (m_color != null)
+				msgs = ((InternalEObject)m_color).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.CGI_TRANS__MCOLOR, null, msgs);
+			if (newM_color != null)
+				msgs = ((InternalEObject)newM_color).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.CGI_TRANS__MCOLOR, null, msgs);
+			msgs = basicSetM_color(newM_color, msgs);
+			if (msgs != null) msgs.dispatch();
+		}
+		else if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_TRANS__MCOLOR, newM_color, newM_color));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getM_lineWidth() {
+		return m_lineWidth;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_lineWidth(String newM_lineWidth) {
+		String oldM_lineWidth = m_lineWidth;
+		m_lineWidth = newM_lineWidth;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CGI_TRANS__MLINE_WIDTH, oldM_lineWidth, m_lineWidth));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
+		switch (featureID) {
+			case UMLRpyPackage.CGI_TRANS__PROPERTIES:
+				return basicSetProperties(null, msgs);
+			case UMLRpyPackage.CGI_TRANS__MRPN:
+				return basicSetM_rpn(null, msgs);
+			case UMLRpyPackage.CGI_TRANS__MCOLOR:
+				return basicSetM_color(null, msgs);
+		}
+		return super.eInverseRemove(otherEnd, featureID, msgs);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object eGet(int featureID, boolean resolve, boolean coreType) {
+		switch (featureID) {
+			case UMLRpyPackage.CGI_TRANS__PROPERTIES:
+				if (resolve) return getProperties();
+				return basicGetProperties();
+			case UMLRpyPackage.CGI_TRANS__MPMODEL_OBJECT:
+				if (resolve) return getM_pModelObject();
+				return basicGetM_pModelObject();
+			case UMLRpyPackage.CGI_TRANS__MPPARENT:
+				return getM_pParent();
+			case UMLRpyPackage.CGI_TRANS__MPSOURCE:
+				if (resolve) return getM_pSource();
+				return basicGetM_pSource();
+			case UMLRpyPackage.CGI_TRANS__MSOURCE_TYPE:
+				return getM_sourceType();
+			case UMLRpyPackage.CGI_TRANS__MPTARGET:
+				if (resolve) return getM_pTarget();
+				return basicGetM_pTarget();
+			case UMLRpyPackage.CGI_TRANS__MTARGET_TYPE:
+				return getM_targetType();
+			case UMLRpyPackage.CGI_TRANS__MDIRECTION:
+				return getM_direction();
+			case UMLRpyPackage.CGI_TRANS__MRPN:
+				if (resolve) return getM_rpn();
+				return basicGetM_rpn();
+			case UMLRpyPackage.CGI_TRANS__MANGLE_POINT1:
+				return getM_anglePoint1();
+			case UMLRpyPackage.CGI_TRANS__MANGLE_POINT2:
+				return getM_anglePoint2();
+			case UMLRpyPackage.CGI_TRANS__MLINE_STYLE:
+				return getM_line_style();
+			case UMLRpyPackage.CGI_TRANS__MSOURCE_PORT:
+				return getM_SourcePort();
+			case UMLRpyPackage.CGI_TRANS__MTARGET_PORT:
+				return getM_TargetPort();
+			case UMLRpyPackage.CGI_TRANS__MNINHERITANCE_MASK:
+				return getM_nInheritanceMask();
+			case UMLRpyPackage.CGI_TRANS__MBSHOW_NAME:
+				return getM_bShowName();
+			case UMLRpyPackage.CGI_TRANS__MARROW:
+				return getM_arrow();
+			case UMLRpyPackage.CGI_TRANS__MY_STATE:
+				return getMyState();
+			case UMLRpyPackage.CGI_TRANS__MPINHERITS_FROM:
+				if (resolve) return getM_pInheritsFrom();
+				return basicGetM_pInheritsFrom();
+			case UMLRpyPackage.CGI_TRANS__MCOLOR:
+				if (resolve) return getM_color();
+				return basicGetM_color();
+			case UMLRpyPackage.CGI_TRANS__MLINE_WIDTH:
+				return getM_lineWidth();
+		}
+		return super.eGet(featureID, resolve, coreType);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@SuppressWarnings("unchecked")
+	@Override
+	public void eSet(int featureID, Object newValue) {
+		switch (featureID) {
+			case UMLRpyPackage.CGI_TRANS__PROPERTIES:
+				setProperties((IPropertyContainer)newValue);
+				return;
+			case UMLRpyPackage.CGI_TRANS__MPMODEL_OBJECT:
+				setM_pModelObject((TransitionsType)newValue);
+				return;
+			case UMLRpyPackage.CGI_TRANS__MPPARENT:
+				setM_pParent((String)newValue);
+				return;
+			case UMLRpyPackage.CGI_TRANS__MPSOURCE:
+				setM_pSource((GraphElementsType)newValue);
+				return;
+			case UMLRpyPackage.CGI_TRANS__MSOURCE_TYPE:
+				setM_sourceType((String)newValue);
+				return;
+			case UMLRpyPackage.CGI_TRANS__MPTARGET:
+				setM_pTarget((GraphElementsType)newValue);
+				return;
+			case UMLRpyPackage.CGI_TRANS__MTARGET_TYPE:
+				setM_targetType((String)newValue);
+				return;
+			case UMLRpyPackage.CGI_TRANS__MDIRECTION:
+				setM_direction((String)newValue);
+				return;
+			case UMLRpyPackage.CGI_TRANS__MRPN:
+				setM_rpn((CGIText)newValue);
+				return;
+			case UMLRpyPackage.CGI_TRANS__MANGLE_POINT1:
+				getM_anglePoint1().clear();
+				getM_anglePoint1().addAll((Collection<? extends String>)newValue);
+				return;
+			case UMLRpyPackage.CGI_TRANS__MANGLE_POINT2:
+				getM_anglePoint2().clear();
+				getM_anglePoint2().addAll((Collection<? extends String>)newValue);
+				return;
+			case UMLRpyPackage.CGI_TRANS__MLINE_STYLE:
+				setM_line_style((String)newValue);
+				return;
+			case UMLRpyPackage.CGI_TRANS__MSOURCE_PORT:
+				getM_SourcePort().clear();
+				getM_SourcePort().addAll((Collection<? extends String>)newValue);
+				return;
+			case UMLRpyPackage.CGI_TRANS__MTARGET_PORT:
+				getM_TargetPort().clear();
+				getM_TargetPort().addAll((Collection<? extends String>)newValue);
+				return;
+			case UMLRpyPackage.CGI_TRANS__MNINHERITANCE_MASK:
+				setM_nInheritanceMask((String)newValue);
+				return;
+			case UMLRpyPackage.CGI_TRANS__MBSHOW_NAME:
+				setM_bShowName((String)newValue);
+				return;
+			case UMLRpyPackage.CGI_TRANS__MARROW:
+				getM_arrow().clear();
+				getM_arrow().addAll((Collection<? extends String>)newValue);
+				return;
+			case UMLRpyPackage.CGI_TRANS__MY_STATE:
+				setMyState((String)newValue);
+				return;
+			case UMLRpyPackage.CGI_TRANS__MPINHERITS_FROM:
+				setM_pInheritsFrom((GraphElementsType)newValue);
+				return;
+			case UMLRpyPackage.CGI_TRANS__MCOLOR:
+				setM_color((IColor)newValue);
+				return;
+			case UMLRpyPackage.CGI_TRANS__MLINE_WIDTH:
+				setM_lineWidth((String)newValue);
+				return;
+		}
+		super.eSet(featureID, newValue);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void eUnset(int featureID) {
+		switch (featureID) {
+			case UMLRpyPackage.CGI_TRANS__PROPERTIES:
+				setProperties((IPropertyContainer)null);
+				return;
+			case UMLRpyPackage.CGI_TRANS__MPMODEL_OBJECT:
+				setM_pModelObject((TransitionsType)null);
+				return;
+			case UMLRpyPackage.CGI_TRANS__MPPARENT:
+				setM_pParent(MPPARENT_EDEFAULT);
+				return;
+			case UMLRpyPackage.CGI_TRANS__MPSOURCE:
+				setM_pSource((GraphElementsType)null);
+				return;
+			case UMLRpyPackage.CGI_TRANS__MSOURCE_TYPE:
+				setM_sourceType(MSOURCE_TYPE_EDEFAULT);
+				return;
+			case UMLRpyPackage.CGI_TRANS__MPTARGET:
+				setM_pTarget((GraphElementsType)null);
+				return;
+			case UMLRpyPackage.CGI_TRANS__MTARGET_TYPE:
+				setM_targetType(MTARGET_TYPE_EDEFAULT);
+				return;
+			case UMLRpyPackage.CGI_TRANS__MDIRECTION:
+				setM_direction(MDIRECTION_EDEFAULT);
+				return;
+			case UMLRpyPackage.CGI_TRANS__MRPN:
+				setM_rpn((CGIText)null);
+				return;
+			case UMLRpyPackage.CGI_TRANS__MANGLE_POINT1:
+				getM_anglePoint1().clear();
+				return;
+			case UMLRpyPackage.CGI_TRANS__MANGLE_POINT2:
+				getM_anglePoint2().clear();
+				return;
+			case UMLRpyPackage.CGI_TRANS__MLINE_STYLE:
+				setM_line_style(MLINE_STYLE_EDEFAULT);
+				return;
+			case UMLRpyPackage.CGI_TRANS__MSOURCE_PORT:
+				getM_SourcePort().clear();
+				return;
+			case UMLRpyPackage.CGI_TRANS__MTARGET_PORT:
+				getM_TargetPort().clear();
+				return;
+			case UMLRpyPackage.CGI_TRANS__MNINHERITANCE_MASK:
+				setM_nInheritanceMask(MNINHERITANCE_MASK_EDEFAULT);
+				return;
+			case UMLRpyPackage.CGI_TRANS__MBSHOW_NAME:
+				setM_bShowName(MBSHOW_NAME_EDEFAULT);
+				return;
+			case UMLRpyPackage.CGI_TRANS__MARROW:
+				getM_arrow().clear();
+				return;
+			case UMLRpyPackage.CGI_TRANS__MY_STATE:
+				setMyState(MY_STATE_EDEFAULT);
+				return;
+			case UMLRpyPackage.CGI_TRANS__MPINHERITS_FROM:
+				setM_pInheritsFrom((GraphElementsType)null);
+				return;
+			case UMLRpyPackage.CGI_TRANS__MCOLOR:
+				setM_color((IColor)null);
+				return;
+			case UMLRpyPackage.CGI_TRANS__MLINE_WIDTH:
+				setM_lineWidth(MLINE_WIDTH_EDEFAULT);
+				return;
+		}
+		super.eUnset(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public boolean eIsSet(int featureID) {
+		switch (featureID) {
+			case UMLRpyPackage.CGI_TRANS__PROPERTIES:
+				return properties != null;
+			case UMLRpyPackage.CGI_TRANS__MPMODEL_OBJECT:
+				return m_pModelObject != null;
+			case UMLRpyPackage.CGI_TRANS__MPPARENT:
+				return MPPARENT_EDEFAULT == null ? m_pParent != null : !MPPARENT_EDEFAULT.equals(m_pParent);
+			case UMLRpyPackage.CGI_TRANS__MPSOURCE:
+				return m_pSource != null;
+			case UMLRpyPackage.CGI_TRANS__MSOURCE_TYPE:
+				return MSOURCE_TYPE_EDEFAULT == null ? m_sourceType != null : !MSOURCE_TYPE_EDEFAULT.equals(m_sourceType);
+			case UMLRpyPackage.CGI_TRANS__MPTARGET:
+				return m_pTarget != null;
+			case UMLRpyPackage.CGI_TRANS__MTARGET_TYPE:
+				return MTARGET_TYPE_EDEFAULT == null ? m_targetType != null : !MTARGET_TYPE_EDEFAULT.equals(m_targetType);
+			case UMLRpyPackage.CGI_TRANS__MDIRECTION:
+				return MDIRECTION_EDEFAULT == null ? m_direction != null : !MDIRECTION_EDEFAULT.equals(m_direction);
+			case UMLRpyPackage.CGI_TRANS__MRPN:
+				return m_rpn != null;
+			case UMLRpyPackage.CGI_TRANS__MANGLE_POINT1:
+				return m_anglePoint1 != null && !m_anglePoint1.isEmpty();
+			case UMLRpyPackage.CGI_TRANS__MANGLE_POINT2:
+				return m_anglePoint2 != null && !m_anglePoint2.isEmpty();
+			case UMLRpyPackage.CGI_TRANS__MLINE_STYLE:
+				return MLINE_STYLE_EDEFAULT == null ? m_line_style != null : !MLINE_STYLE_EDEFAULT.equals(m_line_style);
+			case UMLRpyPackage.CGI_TRANS__MSOURCE_PORT:
+				return m_SourcePort != null && !m_SourcePort.isEmpty();
+			case UMLRpyPackage.CGI_TRANS__MTARGET_PORT:
+				return m_TargetPort != null && !m_TargetPort.isEmpty();
+			case UMLRpyPackage.CGI_TRANS__MNINHERITANCE_MASK:
+				return MNINHERITANCE_MASK_EDEFAULT == null ? m_nInheritanceMask != null : !MNINHERITANCE_MASK_EDEFAULT.equals(m_nInheritanceMask);
+			case UMLRpyPackage.CGI_TRANS__MBSHOW_NAME:
+				return MBSHOW_NAME_EDEFAULT == null ? m_bShowName != null : !MBSHOW_NAME_EDEFAULT.equals(m_bShowName);
+			case UMLRpyPackage.CGI_TRANS__MARROW:
+				return m_arrow != null && !m_arrow.isEmpty();
+			case UMLRpyPackage.CGI_TRANS__MY_STATE:
+				return MY_STATE_EDEFAULT == null ? myState != null : !MY_STATE_EDEFAULT.equals(myState);
+			case UMLRpyPackage.CGI_TRANS__MPINHERITS_FROM:
+				return m_pInheritsFrom != null;
+			case UMLRpyPackage.CGI_TRANS__MCOLOR:
+				return m_color != null;
+			case UMLRpyPackage.CGI_TRANS__MLINE_WIDTH:
+				return MLINE_WIDTH_EDEFAULT == null ? m_lineWidth != null : !MLINE_WIDTH_EDEFAULT.equals(m_lineWidth);
+		}
+		return super.eIsSet(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String toString() {
+		if (eIsProxy()) return super.toString();
+
+		StringBuffer result = new StringBuffer(super.toString());
+		result.append(" (m_pParent: "); //$NON-NLS-1$
+		result.append(m_pParent);
+		result.append(", m_sourceType: "); //$NON-NLS-1$
+		result.append(m_sourceType);
+		result.append(", m_targetType: "); //$NON-NLS-1$
+		result.append(m_targetType);
+		result.append(", m_direction: "); //$NON-NLS-1$
+		result.append(m_direction);
+		result.append(", m_anglePoint1: "); //$NON-NLS-1$
+		result.append(m_anglePoint1);
+		result.append(", m_anglePoint2: "); //$NON-NLS-1$
+		result.append(m_anglePoint2);
+		result.append(", m_line_style: "); //$NON-NLS-1$
+		result.append(m_line_style);
+		result.append(", m_SourcePort: "); //$NON-NLS-1$
+		result.append(m_SourcePort);
+		result.append(", m_TargetPort: "); //$NON-NLS-1$
+		result.append(m_TargetPort);
+		result.append(", m_nInheritanceMask: "); //$NON-NLS-1$
+		result.append(m_nInheritanceMask);
+		result.append(", m_bShowName: "); //$NON-NLS-1$
+		result.append(m_bShowName);
+		result.append(", m_arrow: "); //$NON-NLS-1$
+		result.append(m_arrow);
+		result.append(", myState: "); //$NON-NLS-1$
+		result.append(myState);
+		result.append(", m_lineWidth: "); //$NON-NLS-1$
+		result.append(m_lineWidth);
+		result.append(')');
+		return result.toString();
+	}
+
+} //CGITransImpl
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/CollEventImpl.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/CollEventImpl.java
new file mode 100755
index 0000000..a1afddc
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/CollEventImpl.java
@@ -0,0 +1,396 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.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.interoperability.rpy.rpymetamodel.CollEvent;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMessage;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Coll Event</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * </p>
+ * <ul>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CollEventImpl#getId <em>Id</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CollEventImpl#getFirst <em>First</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CollEventImpl#getSecond <em>Second</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CollEventImpl#getObjectCreation <em>Object Creation</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.CollEventImpl#getUmlDependencyID <em>Uml Dependency ID</em>}</li>
+ * </ul>
+ *
+ * @generated
+ */
+public class CollEventImpl extends P_MessageHandlerTypeImpl implements CollEvent {
+	/**
+	 * The default value of the '{@link #getId() <em>Id</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getId()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String ID_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getId() <em>Id</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getId()
+	 * @generated
+	 * @ordered
+	 */
+	protected String id = ID_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getFirst() <em>First</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getFirst()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String FIRST_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getFirst() <em>First</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getFirst()
+	 * @generated
+	 * @ordered
+	 */
+	protected String first = FIRST_EDEFAULT;
+
+	/**
+	 * The cached value of the '{@link #getSecond() <em>Second</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getSecond()
+	 * @generated
+	 * @ordered
+	 */
+	protected IMessage second;
+
+	/**
+	 * The default value of the '{@link #getObjectCreation() <em>Object Creation</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getObjectCreation()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String OBJECT_CREATION_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getObjectCreation() <em>Object Creation</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getObjectCreation()
+	 * @generated
+	 * @ordered
+	 */
+	protected String objectCreation = OBJECT_CREATION_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getUmlDependencyID() <em>Uml Dependency ID</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getUmlDependencyID()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String UML_DEPENDENCY_ID_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getUmlDependencyID() <em>Uml Dependency ID</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getUmlDependencyID()
+	 * @generated
+	 * @ordered
+	 */
+	protected String umlDependencyID = UML_DEPENDENCY_ID_EDEFAULT;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected CollEventImpl() {
+		super();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EClass eStaticClass() {
+		return UMLRpyPackage.eINSTANCE.getCollEvent();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getId() {
+		return id;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setId(String newId) {
+		String oldId = id;
+		id = newId;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.COLL_EVENT__ID, oldId, id));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getFirst() {
+		return first;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setFirst(String newFirst) {
+		String oldFirst = first;
+		first = newFirst;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.COLL_EVENT__FIRST, oldFirst, first));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IMessage getSecond() {
+		if (second != null && second.eIsProxy()) {
+			InternalEObject oldSecond = (InternalEObject)second;
+			second = (IMessage)eResolveProxy(oldSecond);
+			if (second != oldSecond) {
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.COLL_EVENT__SECOND, oldSecond, second));
+			}
+		}
+		return second;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IMessage basicGetSecond() {
+		return second;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setSecond(IMessage newSecond) {
+		IMessage oldSecond = second;
+		second = newSecond;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.COLL_EVENT__SECOND, oldSecond, second));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getObjectCreation() {
+		return objectCreation;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setObjectCreation(String newObjectCreation) {
+		String oldObjectCreation = objectCreation;
+		objectCreation = newObjectCreation;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.COLL_EVENT__OBJECT_CREATION, oldObjectCreation, objectCreation));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getUmlDependencyID() {
+		return umlDependencyID;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setUmlDependencyID(String newUmlDependencyID) {
+		String oldUmlDependencyID = umlDependencyID;
+		umlDependencyID = newUmlDependencyID;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.COLL_EVENT__UML_DEPENDENCY_ID, oldUmlDependencyID, umlDependencyID));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object eGet(int featureID, boolean resolve, boolean coreType) {
+		switch (featureID) {
+			case UMLRpyPackage.COLL_EVENT__ID:
+				return getId();
+			case UMLRpyPackage.COLL_EVENT__FIRST:
+				return getFirst();
+			case UMLRpyPackage.COLL_EVENT__SECOND:
+				if (resolve) return getSecond();
+				return basicGetSecond();
+			case UMLRpyPackage.COLL_EVENT__OBJECT_CREATION:
+				return getObjectCreation();
+			case UMLRpyPackage.COLL_EVENT__UML_DEPENDENCY_ID:
+				return getUmlDependencyID();
+		}
+		return super.eGet(featureID, resolve, coreType);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void eSet(int featureID, Object newValue) {
+		switch (featureID) {
+			case UMLRpyPackage.COLL_EVENT__ID:
+				setId((String)newValue);
+				return;
+			case UMLRpyPackage.COLL_EVENT__FIRST:
+				setFirst((String)newValue);
+				return;
+			case UMLRpyPackage.COLL_EVENT__SECOND:
+				setSecond((IMessage)newValue);
+				return;
+			case UMLRpyPackage.COLL_EVENT__OBJECT_CREATION:
+				setObjectCreation((String)newValue);
+				return;
+			case UMLRpyPackage.COLL_EVENT__UML_DEPENDENCY_ID:
+				setUmlDependencyID((String)newValue);
+				return;
+		}
+		super.eSet(featureID, newValue);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void eUnset(int featureID) {
+		switch (featureID) {
+			case UMLRpyPackage.COLL_EVENT__ID:
+				setId(ID_EDEFAULT);
+				return;
+			case UMLRpyPackage.COLL_EVENT__FIRST:
+				setFirst(FIRST_EDEFAULT);
+				return;
+			case UMLRpyPackage.COLL_EVENT__SECOND:
+				setSecond((IMessage)null);
+				return;
+			case UMLRpyPackage.COLL_EVENT__OBJECT_CREATION:
+				setObjectCreation(OBJECT_CREATION_EDEFAULT);
+				return;
+			case UMLRpyPackage.COLL_EVENT__UML_DEPENDENCY_ID:
+				setUmlDependencyID(UML_DEPENDENCY_ID_EDEFAULT);
+				return;
+		}
+		super.eUnset(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public boolean eIsSet(int featureID) {
+		switch (featureID) {
+			case UMLRpyPackage.COLL_EVENT__ID:
+				return ID_EDEFAULT == null ? id != null : !ID_EDEFAULT.equals(id);
+			case UMLRpyPackage.COLL_EVENT__FIRST:
+				return FIRST_EDEFAULT == null ? first != null : !FIRST_EDEFAULT.equals(first);
+			case UMLRpyPackage.COLL_EVENT__SECOND:
+				return second != null;
+			case UMLRpyPackage.COLL_EVENT__OBJECT_CREATION:
+				return OBJECT_CREATION_EDEFAULT == null ? objectCreation != null : !OBJECT_CREATION_EDEFAULT.equals(objectCreation);
+			case UMLRpyPackage.COLL_EVENT__UML_DEPENDENCY_ID:
+				return UML_DEPENDENCY_ID_EDEFAULT == null ? umlDependencyID != null : !UML_DEPENDENCY_ID_EDEFAULT.equals(umlDependencyID);
+		}
+		return super.eIsSet(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String toString() {
+		if (eIsProxy()) return super.toString();
+
+		StringBuffer result = new StringBuffer(super.toString());
+		result.append(" (id: "); //$NON-NLS-1$
+		result.append(id);
+		result.append(", first: "); //$NON-NLS-1$
+		result.append(first);
+		result.append(", objectCreation: "); //$NON-NLS-1$
+		result.append(objectCreation);
+		result.append(", umlDependencyID: "); //$NON-NLS-1$
+		result.append(umlDependencyID);
+		result.append(')');
+		return result.toString();
+	}
+
+} //CollEventImpl
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/CompartmentsTypeImpl.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/CompartmentsTypeImpl.java
new file mode 100755
index 0000000..08001a8
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/CompartmentsTypeImpl.java
@@ -0,0 +1,49 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl;
+
+import org.eclipse.emf.ecore.EClass;
+
+import org.eclipse.emf.ecore.impl.MinimalEObjectImpl;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CompartmentsType;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Compartments Type</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+public abstract class CompartmentsTypeImpl extends MinimalEObjectImpl.Container implements CompartmentsType {
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected CompartmentsTypeImpl() {
+		super();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EClass eStaticClass() {
+		return UMLRpyPackage.eINSTANCE.getCompartmentsType();
+	}
+
+} //CompartmentsTypeImpl
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/ComponentsTypeImpl.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/ComponentsTypeImpl.java
new file mode 100755
index 0000000..5e05344
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/ComponentsTypeImpl.java
@@ -0,0 +1,49 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl;
+
+import org.eclipse.emf.ecore.EClass;
+
+import org.eclipse.emf.ecore.impl.MinimalEObjectImpl;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ComponentsType;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Components Type</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+public abstract class ComponentsTypeImpl extends MinimalEObjectImpl.Container implements ComponentsType {
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected ComponentsTypeImpl() {
+		super();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EClass eStaticClass() {
+		return UMLRpyPackage.eINSTANCE.getComponentsType();
+	}
+
+} //ComponentsTypeImpl
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/ConveyedTypeImpl.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/ConveyedTypeImpl.java
new file mode 100755
index 0000000..0503b80
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/ConveyedTypeImpl.java
@@ -0,0 +1,173 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl;
+
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.ecore.EClass;
+
+import org.eclipse.emf.ecore.impl.ENotificationImpl;
+import org.eclipse.emf.ecore.impl.MinimalEObjectImpl;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ConveyedType;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Conveyed Type</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * </p>
+ * <ul>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.ConveyedTypeImpl#getLastID <em>Last ID</em>}</li>
+ * </ul>
+ *
+ * @generated
+ */
+public abstract class ConveyedTypeImpl extends MinimalEObjectImpl.Container implements ConveyedType {
+	/**
+	 * The default value of the '{@link #getLastID() <em>Last ID</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getLastID()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String LAST_ID_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getLastID() <em>Last ID</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getLastID()
+	 * @generated
+	 * @ordered
+	 */
+	protected String lastID = LAST_ID_EDEFAULT;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected ConveyedTypeImpl() {
+		super();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EClass eStaticClass() {
+		return UMLRpyPackage.eINSTANCE.getConveyedType();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getLastID() {
+		return lastID;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setLastID(String newLastID) {
+		String oldLastID = lastID;
+		lastID = newLastID;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.CONVEYED_TYPE__LAST_ID, oldLastID, lastID));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object eGet(int featureID, boolean resolve, boolean coreType) {
+		switch (featureID) {
+			case UMLRpyPackage.CONVEYED_TYPE__LAST_ID:
+				return getLastID();
+		}
+		return super.eGet(featureID, resolve, coreType);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void eSet(int featureID, Object newValue) {
+		switch (featureID) {
+			case UMLRpyPackage.CONVEYED_TYPE__LAST_ID:
+				setLastID((String)newValue);
+				return;
+		}
+		super.eSet(featureID, newValue);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void eUnset(int featureID) {
+		switch (featureID) {
+			case UMLRpyPackage.CONVEYED_TYPE__LAST_ID:
+				setLastID(LAST_ID_EDEFAULT);
+				return;
+		}
+		super.eUnset(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public boolean eIsSet(int featureID) {
+		switch (featureID) {
+			case UMLRpyPackage.CONVEYED_TYPE__LAST_ID:
+				return LAST_ID_EDEFAULT == null ? lastID != null : !LAST_ID_EDEFAULT.equals(lastID);
+		}
+		return super.eIsSet(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String toString() {
+		if (eIsProxy()) return super.toString();
+
+		StringBuffer result = new StringBuffer(super.toString());
+		result.append(" (lastID: "); //$NON-NLS-1$
+		result.append(lastID);
+		result.append(')');
+		return result.toString();
+	}
+
+} //ConveyedTypeImpl
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/DeclarativesTypeImpl.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/DeclarativesTypeImpl.java
new file mode 100755
index 0000000..d7491ec
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/DeclarativesTypeImpl.java
@@ -0,0 +1,49 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl;
+
+import org.eclipse.emf.ecore.EClass;
+
+import org.eclipse.emf.ecore.impl.MinimalEObjectImpl;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.DeclarativesType;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Declaratives Type</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+public abstract class DeclarativesTypeImpl extends MinimalEObjectImpl.Container implements DeclarativesType {
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected DeclarativesTypeImpl() {
+		super();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EClass eStaticClass() {
+		return UMLRpyPackage.eINSTANCE.getDeclarativesType();
+	}
+
+} //DeclarativesTypeImpl
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/DefaultSubsystemTypeImpl.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/DefaultSubsystemTypeImpl.java
new file mode 100755
index 0000000..b0e0290
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/DefaultSubsystemTypeImpl.java
@@ -0,0 +1,47 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl;
+
+import org.eclipse.emf.ecore.EClass;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.DefaultSubsystemType;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Default Subsystem Type</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+public abstract class DefaultSubsystemTypeImpl extends IModelElementImpl implements DefaultSubsystemType {
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected DefaultSubsystemTypeImpl() {
+		super();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EClass eStaticClass() {
+		return UMLRpyPackage.eINSTANCE.getDefaultSubsystemType();
+	}
+
+} //DefaultSubsystemTypeImpl
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/DefaultTransTypeImpl.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/DefaultTransTypeImpl.java
new file mode 100755
index 0000000..263dcd6
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/DefaultTransTypeImpl.java
@@ -0,0 +1,49 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl;
+
+import org.eclipse.emf.ecore.EClass;
+
+import org.eclipse.emf.ecore.impl.MinimalEObjectImpl;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.DefaultTransType;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Default Trans Type</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+public abstract class DefaultTransTypeImpl extends MinimalEObjectImpl.Container implements DefaultTransType {
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected DefaultTransTypeImpl() {
+		super();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EClass eStaticClass() {
+		return UMLRpyPackage.eINSTANCE.getDefaultTransType();
+	}
+
+} //DefaultTransTypeImpl
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/DependsOnTypeImpl.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/DependsOnTypeImpl.java
new file mode 100755
index 0000000..bfc6e9d
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/DependsOnTypeImpl.java
@@ -0,0 +1,47 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl;
+
+import org.eclipse.emf.ecore.EClass;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.DependsOnType;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Depends On Type</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+public abstract class DependsOnTypeImpl extends ElementsTypeImpl implements DependsOnType {
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected DependsOnTypeImpl() {
+		super();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EClass eStaticClass() {
+		return UMLRpyPackage.eINSTANCE.getDependsOnType();
+	}
+
+} //DependsOnTypeImpl
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/DescriptionTypeImpl.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/DescriptionTypeImpl.java
new file mode 100755
index 0000000..6bde166
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/DescriptionTypeImpl.java
@@ -0,0 +1,49 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl;
+
+import org.eclipse.emf.ecore.EClass;
+
+import org.eclipse.emf.ecore.impl.MinimalEObjectImpl;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.DescriptionType;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Description Type</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+public abstract class DescriptionTypeImpl extends MinimalEObjectImpl.Container implements DescriptionType {
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected DescriptionTypeImpl() {
+		super();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EClass eStaticClass() {
+		return UMLRpyPackage.eINSTANCE.getDescriptionType();
+	}
+
+} //DescriptionTypeImpl
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/ElementsTypeImpl.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/ElementsTypeImpl.java
new file mode 100755
index 0000000..ca66655
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/ElementsTypeImpl.java
@@ -0,0 +1,49 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl;
+
+import org.eclipse.emf.ecore.EClass;
+
+import org.eclipse.emf.ecore.impl.MinimalEObjectImpl;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ElementsType;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Elements Type</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+public abstract class ElementsTypeImpl extends MinimalEObjectImpl.Container implements ElementsType {
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected ElementsTypeImpl() {
+		super();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EClass eStaticClass() {
+		return UMLRpyPackage.eINSTANCE.getElementsType();
+	}
+
+} //ElementsTypeImpl
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/EmbededFilesTypeImpl.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/EmbededFilesTypeImpl.java
new file mode 100755
index 0000000..80e111f
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/EmbededFilesTypeImpl.java
@@ -0,0 +1,49 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl;
+
+import org.eclipse.emf.ecore.EClass;
+
+import org.eclipse.emf.ecore.impl.MinimalEObjectImpl;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.EmbededFilesType;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Embeded Files Type</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+public abstract class EmbededFilesTypeImpl extends MinimalEObjectImpl.Container implements EmbededFilesType {
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected EmbededFilesTypeImpl() {
+		super();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EClass eStaticClass() {
+		return UMLRpyPackage.eINSTANCE.getEmbededFilesType();
+	}
+
+} //EmbededFilesTypeImpl
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/End1_TypeImpl.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/End1_TypeImpl.java
new file mode 100755
index 0000000..5ecd588
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/End1_TypeImpl.java
@@ -0,0 +1,49 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl;
+
+import org.eclipse.emf.ecore.EClass;
+
+import org.eclipse.emf.ecore.impl.MinimalEObjectImpl;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.End1_Type;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>End1 Type</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+public abstract class End1_TypeImpl extends MinimalEObjectImpl.Container implements End1_Type {
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected End1_TypeImpl() {
+		super();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EClass eStaticClass() {
+		return UMLRpyPackage.eINSTANCE.getEnd1_Type();
+	}
+
+} //End1_TypeImpl
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/End2_TypeImpl.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/End2_TypeImpl.java
new file mode 100755
index 0000000..9964c83
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/End2_TypeImpl.java
@@ -0,0 +1,172 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl;
+
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.ecore.EClass;
+
+import org.eclipse.emf.ecore.impl.ENotificationImpl;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.End2_Type;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>End2 Type</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * </p>
+ * <ul>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.End2_TypeImpl#getMultiplicity <em>Multiplicity</em>}</li>
+ * </ul>
+ *
+ * @generated
+ */
+public abstract class End2_TypeImpl extends End1_TypeImpl implements End2_Type {
+	/**
+	 * The default value of the '{@link #getMultiplicity() <em>Multiplicity</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getMultiplicity()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String MULTIPLICITY_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getMultiplicity() <em>Multiplicity</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getMultiplicity()
+	 * @generated
+	 * @ordered
+	 */
+	protected String multiplicity = MULTIPLICITY_EDEFAULT;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected End2_TypeImpl() {
+		super();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EClass eStaticClass() {
+		return UMLRpyPackage.eINSTANCE.getEnd2_Type();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getMultiplicity() {
+		return multiplicity;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setMultiplicity(String newMultiplicity) {
+		String oldMultiplicity = multiplicity;
+		multiplicity = newMultiplicity;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.END2_TYPE__MULTIPLICITY, oldMultiplicity, multiplicity));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object eGet(int featureID, boolean resolve, boolean coreType) {
+		switch (featureID) {
+			case UMLRpyPackage.END2_TYPE__MULTIPLICITY:
+				return getMultiplicity();
+		}
+		return super.eGet(featureID, resolve, coreType);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void eSet(int featureID, Object newValue) {
+		switch (featureID) {
+			case UMLRpyPackage.END2_TYPE__MULTIPLICITY:
+				setMultiplicity((String)newValue);
+				return;
+		}
+		super.eSet(featureID, newValue);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void eUnset(int featureID) {
+		switch (featureID) {
+			case UMLRpyPackage.END2_TYPE__MULTIPLICITY:
+				setMultiplicity(MULTIPLICITY_EDEFAULT);
+				return;
+		}
+		super.eUnset(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public boolean eIsSet(int featureID) {
+		switch (featureID) {
+			case UMLRpyPackage.END2_TYPE__MULTIPLICITY:
+				return MULTIPLICITY_EDEFAULT == null ? multiplicity != null : !MULTIPLICITY_EDEFAULT.equals(multiplicity);
+		}
+		return super.eIsSet(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String toString() {
+		if (eIsProxy()) return super.toString();
+
+		StringBuffer result = new StringBuffer(super.toString());
+		result.append(" (multiplicity: "); //$NON-NLS-1$
+		result.append(multiplicity);
+		result.append(')');
+		return result.toString();
+	}
+
+} //End2_TypeImpl
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/FilesTypeImpl.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/FilesTypeImpl.java
new file mode 100755
index 0000000..5203072
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/FilesTypeImpl.java
@@ -0,0 +1,540 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl;
+
+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.impl.ENotificationImpl;
+import org.eclipse.emf.ecore.impl.MinimalEObjectImpl;
+
+import org.eclipse.emf.ecore.util.EDataTypeEList;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.FilesType;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Files Type</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * </p>
+ * <ul>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.FilesTypeImpl#getModifiedTimeWeak <em>Modified Time Weak</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.FilesTypeImpl#getId <em>Id</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.FilesTypeImpl#getUmlDependencyID <em>Uml Dependency ID</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.FilesTypeImpl#getLastID <em>Last ID</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.FilesTypeImpl#getMyState <em>My State</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.FilesTypeImpl#getM_path <em>Mpath</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.FilesTypeImpl#getObjectCreation <em>Object Creation</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.FilesTypeImpl#getName <em>Name</em>}</li>
+ * </ul>
+ *
+ * @generated
+ */
+public abstract class FilesTypeImpl extends MinimalEObjectImpl.Container implements FilesType {
+	/**
+	 * The cached value of the '{@link #getModifiedTimeWeak() <em>Modified Time Weak</em>}' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getModifiedTimeWeak()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<String> modifiedTimeWeak;
+
+	/**
+	 * The default value of the '{@link #getId() <em>Id</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getId()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String ID_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getId() <em>Id</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getId()
+	 * @generated
+	 * @ordered
+	 */
+	protected String id = ID_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getUmlDependencyID() <em>Uml Dependency ID</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getUmlDependencyID()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String UML_DEPENDENCY_ID_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getUmlDependencyID() <em>Uml Dependency ID</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getUmlDependencyID()
+	 * @generated
+	 * @ordered
+	 */
+	protected String umlDependencyID = UML_DEPENDENCY_ID_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getLastID() <em>Last ID</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getLastID()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String LAST_ID_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getLastID() <em>Last ID</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getLastID()
+	 * @generated
+	 * @ordered
+	 */
+	protected String lastID = LAST_ID_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getMyState() <em>My State</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getMyState()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String MY_STATE_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getMyState() <em>My State</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getMyState()
+	 * @generated
+	 * @ordered
+	 */
+	protected String myState = MY_STATE_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getM_path() <em>Mpath</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_path()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String MPATH_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getM_path() <em>Mpath</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_path()
+	 * @generated
+	 * @ordered
+	 */
+	protected String m_path = MPATH_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getObjectCreation() <em>Object Creation</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getObjectCreation()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String OBJECT_CREATION_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getObjectCreation() <em>Object Creation</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getObjectCreation()
+	 * @generated
+	 * @ordered
+	 */
+	protected String objectCreation = OBJECT_CREATION_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getName() <em>Name</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getName()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String NAME_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getName() <em>Name</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getName()
+	 * @generated
+	 * @ordered
+	 */
+	protected String name = NAME_EDEFAULT;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected FilesTypeImpl() {
+		super();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EClass eStaticClass() {
+		return UMLRpyPackage.eINSTANCE.getFilesType();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<String> getModifiedTimeWeak() {
+		if (modifiedTimeWeak == null) {
+			modifiedTimeWeak = new EDataTypeEList<String>(String.class, this, UMLRpyPackage.FILES_TYPE__MODIFIED_TIME_WEAK);
+		}
+		return modifiedTimeWeak;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getId() {
+		return id;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setId(String newId) {
+		String oldId = id;
+		id = newId;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.FILES_TYPE__ID, oldId, id));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getUmlDependencyID() {
+		return umlDependencyID;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setUmlDependencyID(String newUmlDependencyID) {
+		String oldUmlDependencyID = umlDependencyID;
+		umlDependencyID = newUmlDependencyID;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.FILES_TYPE__UML_DEPENDENCY_ID, oldUmlDependencyID, umlDependencyID));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getLastID() {
+		return lastID;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setLastID(String newLastID) {
+		String oldLastID = lastID;
+		lastID = newLastID;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.FILES_TYPE__LAST_ID, oldLastID, lastID));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getMyState() {
+		return myState;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setMyState(String newMyState) {
+		String oldMyState = myState;
+		myState = newMyState;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.FILES_TYPE__MY_STATE, oldMyState, myState));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getM_path() {
+		return m_path;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_path(String newM_path) {
+		String oldM_path = m_path;
+		m_path = newM_path;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.FILES_TYPE__MPATH, oldM_path, m_path));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getObjectCreation() {
+		return objectCreation;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setObjectCreation(String newObjectCreation) {
+		String oldObjectCreation = objectCreation;
+		objectCreation = newObjectCreation;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.FILES_TYPE__OBJECT_CREATION, oldObjectCreation, objectCreation));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getName() {
+		return name;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setName(String newName) {
+		String oldName = name;
+		name = newName;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.FILES_TYPE__NAME, oldName, name));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object eGet(int featureID, boolean resolve, boolean coreType) {
+		switch (featureID) {
+			case UMLRpyPackage.FILES_TYPE__MODIFIED_TIME_WEAK:
+				return getModifiedTimeWeak();
+			case UMLRpyPackage.FILES_TYPE__ID:
+				return getId();
+			case UMLRpyPackage.FILES_TYPE__UML_DEPENDENCY_ID:
+				return getUmlDependencyID();
+			case UMLRpyPackage.FILES_TYPE__LAST_ID:
+				return getLastID();
+			case UMLRpyPackage.FILES_TYPE__MY_STATE:
+				return getMyState();
+			case UMLRpyPackage.FILES_TYPE__MPATH:
+				return getM_path();
+			case UMLRpyPackage.FILES_TYPE__OBJECT_CREATION:
+				return getObjectCreation();
+			case UMLRpyPackage.FILES_TYPE__NAME:
+				return getName();
+		}
+		return super.eGet(featureID, resolve, coreType);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@SuppressWarnings("unchecked")
+	@Override
+	public void eSet(int featureID, Object newValue) {
+		switch (featureID) {
+			case UMLRpyPackage.FILES_TYPE__MODIFIED_TIME_WEAK:
+				getModifiedTimeWeak().clear();
+				getModifiedTimeWeak().addAll((Collection<? extends String>)newValue);
+				return;
+			case UMLRpyPackage.FILES_TYPE__ID:
+				setId((String)newValue);
+				return;
+			case UMLRpyPackage.FILES_TYPE__UML_DEPENDENCY_ID:
+				setUmlDependencyID((String)newValue);
+				return;
+			case UMLRpyPackage.FILES_TYPE__LAST_ID:
+				setLastID((String)newValue);
+				return;
+			case UMLRpyPackage.FILES_TYPE__MY_STATE:
+				setMyState((String)newValue);
+				return;
+			case UMLRpyPackage.FILES_TYPE__MPATH:
+				setM_path((String)newValue);
+				return;
+			case UMLRpyPackage.FILES_TYPE__OBJECT_CREATION:
+				setObjectCreation((String)newValue);
+				return;
+			case UMLRpyPackage.FILES_TYPE__NAME:
+				setName((String)newValue);
+				return;
+		}
+		super.eSet(featureID, newValue);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void eUnset(int featureID) {
+		switch (featureID) {
+			case UMLRpyPackage.FILES_TYPE__MODIFIED_TIME_WEAK:
+				getModifiedTimeWeak().clear();
+				return;
+			case UMLRpyPackage.FILES_TYPE__ID:
+				setId(ID_EDEFAULT);
+				return;
+			case UMLRpyPackage.FILES_TYPE__UML_DEPENDENCY_ID:
+				setUmlDependencyID(UML_DEPENDENCY_ID_EDEFAULT);
+				return;
+			case UMLRpyPackage.FILES_TYPE__LAST_ID:
+				setLastID(LAST_ID_EDEFAULT);
+				return;
+			case UMLRpyPackage.FILES_TYPE__MY_STATE:
+				setMyState(MY_STATE_EDEFAULT);
+				return;
+			case UMLRpyPackage.FILES_TYPE__MPATH:
+				setM_path(MPATH_EDEFAULT);
+				return;
+			case UMLRpyPackage.FILES_TYPE__OBJECT_CREATION:
+				setObjectCreation(OBJECT_CREATION_EDEFAULT);
+				return;
+			case UMLRpyPackage.FILES_TYPE__NAME:
+				setName(NAME_EDEFAULT);
+				return;
+		}
+		super.eUnset(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public boolean eIsSet(int featureID) {
+		switch (featureID) {
+			case UMLRpyPackage.FILES_TYPE__MODIFIED_TIME_WEAK:
+				return modifiedTimeWeak != null && !modifiedTimeWeak.isEmpty();
+			case UMLRpyPackage.FILES_TYPE__ID:
+				return ID_EDEFAULT == null ? id != null : !ID_EDEFAULT.equals(id);
+			case UMLRpyPackage.FILES_TYPE__UML_DEPENDENCY_ID:
+				return UML_DEPENDENCY_ID_EDEFAULT == null ? umlDependencyID != null : !UML_DEPENDENCY_ID_EDEFAULT.equals(umlDependencyID);
+			case UMLRpyPackage.FILES_TYPE__LAST_ID:
+				return LAST_ID_EDEFAULT == null ? lastID != null : !LAST_ID_EDEFAULT.equals(lastID);
+			case UMLRpyPackage.FILES_TYPE__MY_STATE:
+				return MY_STATE_EDEFAULT == null ? myState != null : !MY_STATE_EDEFAULT.equals(myState);
+			case UMLRpyPackage.FILES_TYPE__MPATH:
+				return MPATH_EDEFAULT == null ? m_path != null : !MPATH_EDEFAULT.equals(m_path);
+			case UMLRpyPackage.FILES_TYPE__OBJECT_CREATION:
+				return OBJECT_CREATION_EDEFAULT == null ? objectCreation != null : !OBJECT_CREATION_EDEFAULT.equals(objectCreation);
+			case UMLRpyPackage.FILES_TYPE__NAME:
+				return NAME_EDEFAULT == null ? name != null : !NAME_EDEFAULT.equals(name);
+		}
+		return super.eIsSet(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String toString() {
+		if (eIsProxy()) return super.toString();
+
+		StringBuffer result = new StringBuffer(super.toString());
+		result.append(" (modifiedTimeWeak: "); //$NON-NLS-1$
+		result.append(modifiedTimeWeak);
+		result.append(", id: "); //$NON-NLS-1$
+		result.append(id);
+		result.append(", umlDependencyID: "); //$NON-NLS-1$
+		result.append(umlDependencyID);
+		result.append(", lastID: "); //$NON-NLS-1$
+		result.append(lastID);
+		result.append(", myState: "); //$NON-NLS-1$
+		result.append(myState);
+		result.append(", m_path: "); //$NON-NLS-1$
+		result.append(m_path);
+		result.append(", objectCreation: "); //$NON-NLS-1$
+		result.append(objectCreation);
+		result.append(", name: "); //$NON-NLS-1$
+		result.append(name);
+		result.append(')');
+		return result.toString();
+	}
+
+} //FilesTypeImpl
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/FromLinkTypeImpl.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/FromLinkTypeImpl.java
new file mode 100755
index 0000000..f7ab2a6
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/FromLinkTypeImpl.java
@@ -0,0 +1,49 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl;
+
+import org.eclipse.emf.ecore.EClass;
+
+import org.eclipse.emf.ecore.impl.MinimalEObjectImpl;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.FromLinkType;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>From Link Type</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+public abstract class FromLinkTypeImpl extends MinimalEObjectImpl.Container implements FromLinkType {
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected FromLinkTypeImpl() {
+		super();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EClass eStaticClass() {
+		return UMLRpyPackage.eINSTANCE.getFromLinkType();
+	}
+
+} //FromLinkTypeImpl
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/GraphElementsTypeImpl.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/GraphElementsTypeImpl.java
new file mode 100755
index 0000000..a1b2b11
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/GraphElementsTypeImpl.java
@@ -0,0 +1,439 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl;
+
+import org.eclipse.emf.common.notify.Notification;
+import org.eclipse.emf.common.notify.NotificationChain;
+
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.InternalEObject;
+
+import org.eclipse.emf.ecore.impl.ENotificationImpl;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIText;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.GraphElementsType;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Graph Elements Type</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * </p>
+ * <ul>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.GraphElementsTypeImpl#getId <em>Id</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.GraphElementsTypeImpl#getM_drawBehavior <em>Mdraw Behavior</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.GraphElementsTypeImpl#getM_type <em>Mtype</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.GraphElementsTypeImpl#getM_name <em>Mname</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.GraphElementsTypeImpl#getM_bIsPreferencesInitialized <em>MbIs Preferences Initialized</em>}</li>
+ * </ul>
+ *
+ * @generated
+ */
+public abstract class GraphElementsTypeImpl extends M_pRootTypeImpl implements GraphElementsType {
+	/**
+	 * The default value of the '{@link #getId() <em>Id</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getId()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String ID_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getId() <em>Id</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getId()
+	 * @generated
+	 * @ordered
+	 */
+	protected String id = ID_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getM_drawBehavior() <em>Mdraw Behavior</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_drawBehavior()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String MDRAW_BEHAVIOR_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getM_drawBehavior() <em>Mdraw Behavior</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_drawBehavior()
+	 * @generated
+	 * @ordered
+	 */
+	protected String m_drawBehavior = MDRAW_BEHAVIOR_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getM_type() <em>Mtype</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_type()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String MTYPE_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getM_type() <em>Mtype</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_type()
+	 * @generated
+	 * @ordered
+	 */
+	protected String m_type = MTYPE_EDEFAULT;
+
+	/**
+	 * The cached value of the '{@link #getM_name() <em>Mname</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_name()
+	 * @generated
+	 * @ordered
+	 */
+	protected CGIText m_name;
+
+	/**
+	 * The default value of the '{@link #getM_bIsPreferencesInitialized() <em>MbIs Preferences Initialized</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_bIsPreferencesInitialized()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String MBIS_PREFERENCES_INITIALIZED_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getM_bIsPreferencesInitialized() <em>MbIs Preferences Initialized</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_bIsPreferencesInitialized()
+	 * @generated
+	 * @ordered
+	 */
+	protected String m_bIsPreferencesInitialized = MBIS_PREFERENCES_INITIALIZED_EDEFAULT;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected GraphElementsTypeImpl() {
+		super();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EClass eStaticClass() {
+		return UMLRpyPackage.eINSTANCE.getGraphElementsType();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getId() {
+		return id;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setId(String newId) {
+		String oldId = id;
+		id = newId;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.GRAPH_ELEMENTS_TYPE__ID, oldId, id));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getM_drawBehavior() {
+		return m_drawBehavior;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_drawBehavior(String newM_drawBehavior) {
+		String oldM_drawBehavior = m_drawBehavior;
+		m_drawBehavior = newM_drawBehavior;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.GRAPH_ELEMENTS_TYPE__MDRAW_BEHAVIOR, oldM_drawBehavior, m_drawBehavior));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getM_type() {
+		return m_type;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_type(String newM_type) {
+		String oldM_type = m_type;
+		m_type = newM_type;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.GRAPH_ELEMENTS_TYPE__MTYPE, oldM_type, m_type));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public CGIText getM_name() {
+		if (m_name != null && m_name.eIsProxy()) {
+			InternalEObject oldM_name = (InternalEObject)m_name;
+			m_name = (CGIText)eResolveProxy(oldM_name);
+			if (m_name != oldM_name) {
+				InternalEObject newM_name = (InternalEObject)m_name;
+				NotificationChain msgs = oldM_name.eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.GRAPH_ELEMENTS_TYPE__MNAME, null, null);
+				if (newM_name.eInternalContainer() == null) {
+					msgs = newM_name.eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.GRAPH_ELEMENTS_TYPE__MNAME, null, msgs);
+				}
+				if (msgs != null) msgs.dispatch();
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.GRAPH_ELEMENTS_TYPE__MNAME, oldM_name, m_name));
+			}
+		}
+		return m_name;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public CGIText basicGetM_name() {
+		return m_name;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public NotificationChain basicSetM_name(CGIText newM_name, NotificationChain msgs) {
+		CGIText oldM_name = m_name;
+		m_name = newM_name;
+		if (eNotificationRequired()) {
+			ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, UMLRpyPackage.GRAPH_ELEMENTS_TYPE__MNAME, oldM_name, newM_name);
+			if (msgs == null) msgs = notification; else msgs.add(notification);
+		}
+		return msgs;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_name(CGIText newM_name) {
+		if (newM_name != m_name) {
+			NotificationChain msgs = null;
+			if (m_name != null)
+				msgs = ((InternalEObject)m_name).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.GRAPH_ELEMENTS_TYPE__MNAME, null, msgs);
+			if (newM_name != null)
+				msgs = ((InternalEObject)newM_name).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.GRAPH_ELEMENTS_TYPE__MNAME, null, msgs);
+			msgs = basicSetM_name(newM_name, msgs);
+			if (msgs != null) msgs.dispatch();
+		}
+		else if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.GRAPH_ELEMENTS_TYPE__MNAME, newM_name, newM_name));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getM_bIsPreferencesInitialized() {
+		return m_bIsPreferencesInitialized;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_bIsPreferencesInitialized(String newM_bIsPreferencesInitialized) {
+		String oldM_bIsPreferencesInitialized = m_bIsPreferencesInitialized;
+		m_bIsPreferencesInitialized = newM_bIsPreferencesInitialized;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.GRAPH_ELEMENTS_TYPE__MBIS_PREFERENCES_INITIALIZED, oldM_bIsPreferencesInitialized, m_bIsPreferencesInitialized));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
+		switch (featureID) {
+			case UMLRpyPackage.GRAPH_ELEMENTS_TYPE__MNAME:
+				return basicSetM_name(null, msgs);
+		}
+		return super.eInverseRemove(otherEnd, featureID, msgs);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object eGet(int featureID, boolean resolve, boolean coreType) {
+		switch (featureID) {
+			case UMLRpyPackage.GRAPH_ELEMENTS_TYPE__ID:
+				return getId();
+			case UMLRpyPackage.GRAPH_ELEMENTS_TYPE__MDRAW_BEHAVIOR:
+				return getM_drawBehavior();
+			case UMLRpyPackage.GRAPH_ELEMENTS_TYPE__MTYPE:
+				return getM_type();
+			case UMLRpyPackage.GRAPH_ELEMENTS_TYPE__MNAME:
+				if (resolve) return getM_name();
+				return basicGetM_name();
+			case UMLRpyPackage.GRAPH_ELEMENTS_TYPE__MBIS_PREFERENCES_INITIALIZED:
+				return getM_bIsPreferencesInitialized();
+		}
+		return super.eGet(featureID, resolve, coreType);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void eSet(int featureID, Object newValue) {
+		switch (featureID) {
+			case UMLRpyPackage.GRAPH_ELEMENTS_TYPE__ID:
+				setId((String)newValue);
+				return;
+			case UMLRpyPackage.GRAPH_ELEMENTS_TYPE__MDRAW_BEHAVIOR:
+				setM_drawBehavior((String)newValue);
+				return;
+			case UMLRpyPackage.GRAPH_ELEMENTS_TYPE__MTYPE:
+				setM_type((String)newValue);
+				return;
+			case UMLRpyPackage.GRAPH_ELEMENTS_TYPE__MNAME:
+				setM_name((CGIText)newValue);
+				return;
+			case UMLRpyPackage.GRAPH_ELEMENTS_TYPE__MBIS_PREFERENCES_INITIALIZED:
+				setM_bIsPreferencesInitialized((String)newValue);
+				return;
+		}
+		super.eSet(featureID, newValue);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void eUnset(int featureID) {
+		switch (featureID) {
+			case UMLRpyPackage.GRAPH_ELEMENTS_TYPE__ID:
+				setId(ID_EDEFAULT);
+				return;
+			case UMLRpyPackage.GRAPH_ELEMENTS_TYPE__MDRAW_BEHAVIOR:
+				setM_drawBehavior(MDRAW_BEHAVIOR_EDEFAULT);
+				return;
+			case UMLRpyPackage.GRAPH_ELEMENTS_TYPE__MTYPE:
+				setM_type(MTYPE_EDEFAULT);
+				return;
+			case UMLRpyPackage.GRAPH_ELEMENTS_TYPE__MNAME:
+				setM_name((CGIText)null);
+				return;
+			case UMLRpyPackage.GRAPH_ELEMENTS_TYPE__MBIS_PREFERENCES_INITIALIZED:
+				setM_bIsPreferencesInitialized(MBIS_PREFERENCES_INITIALIZED_EDEFAULT);
+				return;
+		}
+		super.eUnset(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public boolean eIsSet(int featureID) {
+		switch (featureID) {
+			case UMLRpyPackage.GRAPH_ELEMENTS_TYPE__ID:
+				return ID_EDEFAULT == null ? id != null : !ID_EDEFAULT.equals(id);
+			case UMLRpyPackage.GRAPH_ELEMENTS_TYPE__MDRAW_BEHAVIOR:
+				return MDRAW_BEHAVIOR_EDEFAULT == null ? m_drawBehavior != null : !MDRAW_BEHAVIOR_EDEFAULT.equals(m_drawBehavior);
+			case UMLRpyPackage.GRAPH_ELEMENTS_TYPE__MTYPE:
+				return MTYPE_EDEFAULT == null ? m_type != null : !MTYPE_EDEFAULT.equals(m_type);
+			case UMLRpyPackage.GRAPH_ELEMENTS_TYPE__MNAME:
+				return m_name != null;
+			case UMLRpyPackage.GRAPH_ELEMENTS_TYPE__MBIS_PREFERENCES_INITIALIZED:
+				return MBIS_PREFERENCES_INITIALIZED_EDEFAULT == null ? m_bIsPreferencesInitialized != null : !MBIS_PREFERENCES_INITIALIZED_EDEFAULT.equals(m_bIsPreferencesInitialized);
+		}
+		return super.eIsSet(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String toString() {
+		if (eIsProxy()) return super.toString();
+
+		StringBuffer result = new StringBuffer(super.toString());
+		result.append(" (id: "); //$NON-NLS-1$
+		result.append(id);
+		result.append(", m_drawBehavior: "); //$NON-NLS-1$
+		result.append(m_drawBehavior);
+		result.append(", m_type: "); //$NON-NLS-1$
+		result.append(m_type);
+		result.append(", m_bIsPreferencesInitialized: "); //$NON-NLS-1$
+		result.append(m_bIsPreferencesInitialized);
+		result.append(')');
+		return result.toString();
+	}
+
+} //GraphElementsTypeImpl
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/GraphicChartTypeImpl.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/GraphicChartTypeImpl.java
new file mode 100755
index 0000000..72966e0
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/GraphicChartTypeImpl.java
@@ -0,0 +1,1098 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl;
+
+import java.util.Collection;
+
+import org.eclipse.emf.common.notify.Notification;
+import org.eclipse.emf.common.notify.NotificationChain;
+
+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.impl.MinimalEObjectImpl;
+
+import org.eclipse.emf.ecore.util.EDataTypeEList;
+import org.eclipse.emf.ecore.util.EObjectContainmentEList;
+import org.eclipse.emf.ecore.util.InternalEList;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIText;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.GraphElementsType;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.GraphicChartType;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Graphic Chart Type</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * </p>
+ * <ul>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.GraphicChartTypeImpl#getId <em>Id</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.GraphicChartTypeImpl#getM_access <em>Maccess</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.GraphicChartTypeImpl#getElementList <em>Element List</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.GraphicChartTypeImpl#getM_nModifyDate <em>MnModify Date</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.GraphicChartTypeImpl#getM_currentLeftTop <em>Mcurrent Left Top</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.GraphicChartTypeImpl#getM_modified <em>Mmodified</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.GraphicChartTypeImpl#getM_nCreateDate <em>MnCreate Date</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.GraphicChartTypeImpl#getM_pParent <em>MpParent</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.GraphicChartTypeImpl#getM_arrowStyle <em>Marrow Style</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.GraphicChartTypeImpl#getM_drawBehavior <em>Mdraw Behavior</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.GraphicChartTypeImpl#getM_currentRightBottom <em>Mcurrent Right Bottom</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.GraphicChartTypeImpl#getM_creator <em>Mcreator</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.GraphicChartTypeImpl#getM_bScaleWithZoom <em>MbScale With Zoom</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.GraphicChartTypeImpl#getM_type <em>Mtype</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.GraphicChartTypeImpl#getGraphElements <em>Graph Elements</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.GraphicChartTypeImpl#getM_name <em>Mname</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.GraphicChartTypeImpl#getM_fileVersion <em>Mfile Version</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.GraphicChartTypeImpl#getM_bIsPreferencesInitialized <em>MbIs Preferences Initialized</em>}</li>
+ * </ul>
+ *
+ * @generated
+ */
+public abstract class GraphicChartTypeImpl extends MinimalEObjectImpl.Container implements GraphicChartType {
+	/**
+	 * The default value of the '{@link #getId() <em>Id</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getId()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String ID_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getId() <em>Id</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getId()
+	 * @generated
+	 * @ordered
+	 */
+	protected String id = ID_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getM_access() <em>Maccess</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_access()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String MACCESS_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getM_access() <em>Maccess</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_access()
+	 * @generated
+	 * @ordered
+	 */
+	protected String m_access = MACCESS_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getElementList() <em>Element List</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getElementList()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String ELEMENT_LIST_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getElementList() <em>Element List</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getElementList()
+	 * @generated
+	 * @ordered
+	 */
+	protected String elementList = ELEMENT_LIST_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getM_nModifyDate() <em>MnModify Date</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_nModifyDate()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String MNMODIFY_DATE_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getM_nModifyDate() <em>MnModify Date</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_nModifyDate()
+	 * @generated
+	 * @ordered
+	 */
+	protected String m_nModifyDate = MNMODIFY_DATE_EDEFAULT;
+
+	/**
+	 * The cached value of the '{@link #getM_currentLeftTop() <em>Mcurrent Left Top</em>}' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_currentLeftTop()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<String> m_currentLeftTop;
+
+	/**
+	 * The default value of the '{@link #getM_modified() <em>Mmodified</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_modified()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String MMODIFIED_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getM_modified() <em>Mmodified</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_modified()
+	 * @generated
+	 * @ordered
+	 */
+	protected String m_modified = MMODIFIED_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getM_nCreateDate() <em>MnCreate Date</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_nCreateDate()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String MNCREATE_DATE_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getM_nCreateDate() <em>MnCreate Date</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_nCreateDate()
+	 * @generated
+	 * @ordered
+	 */
+	protected String m_nCreateDate = MNCREATE_DATE_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getM_pParent() <em>MpParent</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_pParent()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String MPPARENT_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getM_pParent() <em>MpParent</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_pParent()
+	 * @generated
+	 * @ordered
+	 */
+	protected String m_pParent = MPPARENT_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getM_arrowStyle() <em>Marrow Style</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_arrowStyle()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String MARROW_STYLE_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getM_arrowStyle() <em>Marrow Style</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_arrowStyle()
+	 * @generated
+	 * @ordered
+	 */
+	protected String m_arrowStyle = MARROW_STYLE_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getM_drawBehavior() <em>Mdraw Behavior</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_drawBehavior()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String MDRAW_BEHAVIOR_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getM_drawBehavior() <em>Mdraw Behavior</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_drawBehavior()
+	 * @generated
+	 * @ordered
+	 */
+	protected String m_drawBehavior = MDRAW_BEHAVIOR_EDEFAULT;
+
+	/**
+	 * The cached value of the '{@link #getM_currentRightBottom() <em>Mcurrent Right Bottom</em>}' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_currentRightBottom()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<String> m_currentRightBottom;
+
+	/**
+	 * The default value of the '{@link #getM_creator() <em>Mcreator</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_creator()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String MCREATOR_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getM_creator() <em>Mcreator</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_creator()
+	 * @generated
+	 * @ordered
+	 */
+	protected String m_creator = MCREATOR_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getM_bScaleWithZoom() <em>MbScale With Zoom</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_bScaleWithZoom()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String MBSCALE_WITH_ZOOM_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getM_bScaleWithZoom() <em>MbScale With Zoom</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_bScaleWithZoom()
+	 * @generated
+	 * @ordered
+	 */
+	protected String m_bScaleWithZoom = MBSCALE_WITH_ZOOM_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getM_type() <em>Mtype</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_type()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String MTYPE_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getM_type() <em>Mtype</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_type()
+	 * @generated
+	 * @ordered
+	 */
+	protected String m_type = MTYPE_EDEFAULT;
+
+	/**
+	 * The cached value of the '{@link #getGraphElements() <em>Graph Elements</em>}' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getGraphElements()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<GraphElementsType> graphElements;
+
+	/**
+	 * The cached value of the '{@link #getM_name() <em>Mname</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_name()
+	 * @generated
+	 * @ordered
+	 */
+	protected CGIText m_name;
+
+	/**
+	 * The default value of the '{@link #getM_fileVersion() <em>Mfile Version</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_fileVersion()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String MFILE_VERSION_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getM_fileVersion() <em>Mfile Version</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_fileVersion()
+	 * @generated
+	 * @ordered
+	 */
+	protected String m_fileVersion = MFILE_VERSION_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getM_bIsPreferencesInitialized() <em>MbIs Preferences Initialized</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_bIsPreferencesInitialized()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String MBIS_PREFERENCES_INITIALIZED_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getM_bIsPreferencesInitialized() <em>MbIs Preferences Initialized</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_bIsPreferencesInitialized()
+	 * @generated
+	 * @ordered
+	 */
+	protected String m_bIsPreferencesInitialized = MBIS_PREFERENCES_INITIALIZED_EDEFAULT;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected GraphicChartTypeImpl() {
+		super();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EClass eStaticClass() {
+		return UMLRpyPackage.eINSTANCE.getGraphicChartType();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getId() {
+		return id;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setId(String newId) {
+		String oldId = id;
+		id = newId;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.GRAPHIC_CHART_TYPE__ID, oldId, id));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getM_access() {
+		return m_access;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_access(String newM_access) {
+		String oldM_access = m_access;
+		m_access = newM_access;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.GRAPHIC_CHART_TYPE__MACCESS, oldM_access, m_access));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getElementList() {
+		return elementList;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setElementList(String newElementList) {
+		String oldElementList = elementList;
+		elementList = newElementList;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.GRAPHIC_CHART_TYPE__ELEMENT_LIST, oldElementList, elementList));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getM_nModifyDate() {
+		return m_nModifyDate;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_nModifyDate(String newM_nModifyDate) {
+		String oldM_nModifyDate = m_nModifyDate;
+		m_nModifyDate = newM_nModifyDate;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.GRAPHIC_CHART_TYPE__MNMODIFY_DATE, oldM_nModifyDate, m_nModifyDate));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<String> getM_currentLeftTop() {
+		if (m_currentLeftTop == null) {
+			m_currentLeftTop = new EDataTypeEList<String>(String.class, this, UMLRpyPackage.GRAPHIC_CHART_TYPE__MCURRENT_LEFT_TOP);
+		}
+		return m_currentLeftTop;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getM_modified() {
+		return m_modified;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_modified(String newM_modified) {
+		String oldM_modified = m_modified;
+		m_modified = newM_modified;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.GRAPHIC_CHART_TYPE__MMODIFIED, oldM_modified, m_modified));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getM_nCreateDate() {
+		return m_nCreateDate;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_nCreateDate(String newM_nCreateDate) {
+		String oldM_nCreateDate = m_nCreateDate;
+		m_nCreateDate = newM_nCreateDate;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.GRAPHIC_CHART_TYPE__MNCREATE_DATE, oldM_nCreateDate, m_nCreateDate));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getM_pParent() {
+		return m_pParent;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_pParent(String newM_pParent) {
+		String oldM_pParent = m_pParent;
+		m_pParent = newM_pParent;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.GRAPHIC_CHART_TYPE__MPPARENT, oldM_pParent, m_pParent));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getM_arrowStyle() {
+		return m_arrowStyle;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_arrowStyle(String newM_arrowStyle) {
+		String oldM_arrowStyle = m_arrowStyle;
+		m_arrowStyle = newM_arrowStyle;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.GRAPHIC_CHART_TYPE__MARROW_STYLE, oldM_arrowStyle, m_arrowStyle));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getM_drawBehavior() {
+		return m_drawBehavior;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_drawBehavior(String newM_drawBehavior) {
+		String oldM_drawBehavior = m_drawBehavior;
+		m_drawBehavior = newM_drawBehavior;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.GRAPHIC_CHART_TYPE__MDRAW_BEHAVIOR, oldM_drawBehavior, m_drawBehavior));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<String> getM_currentRightBottom() {
+		if (m_currentRightBottom == null) {
+			m_currentRightBottom = new EDataTypeEList<String>(String.class, this, UMLRpyPackage.GRAPHIC_CHART_TYPE__MCURRENT_RIGHT_BOTTOM);
+		}
+		return m_currentRightBottom;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getM_creator() {
+		return m_creator;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_creator(String newM_creator) {
+		String oldM_creator = m_creator;
+		m_creator = newM_creator;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.GRAPHIC_CHART_TYPE__MCREATOR, oldM_creator, m_creator));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getM_bScaleWithZoom() {
+		return m_bScaleWithZoom;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_bScaleWithZoom(String newM_bScaleWithZoom) {
+		String oldM_bScaleWithZoom = m_bScaleWithZoom;
+		m_bScaleWithZoom = newM_bScaleWithZoom;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.GRAPHIC_CHART_TYPE__MBSCALE_WITH_ZOOM, oldM_bScaleWithZoom, m_bScaleWithZoom));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getM_type() {
+		return m_type;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_type(String newM_type) {
+		String oldM_type = m_type;
+		m_type = newM_type;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.GRAPHIC_CHART_TYPE__MTYPE, oldM_type, m_type));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<GraphElementsType> getGraphElements() {
+		if (graphElements == null) {
+			graphElements = new EObjectContainmentEList.Resolving<GraphElementsType>(GraphElementsType.class, this, UMLRpyPackage.GRAPHIC_CHART_TYPE__GRAPH_ELEMENTS);
+		}
+		return graphElements;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public CGIText getM_name() {
+		if (m_name != null && m_name.eIsProxy()) {
+			InternalEObject oldM_name = (InternalEObject)m_name;
+			m_name = (CGIText)eResolveProxy(oldM_name);
+			if (m_name != oldM_name) {
+				InternalEObject newM_name = (InternalEObject)m_name;
+				NotificationChain msgs = oldM_name.eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.GRAPHIC_CHART_TYPE__MNAME, null, null);
+				if (newM_name.eInternalContainer() == null) {
+					msgs = newM_name.eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.GRAPHIC_CHART_TYPE__MNAME, null, msgs);
+				}
+				if (msgs != null) msgs.dispatch();
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.GRAPHIC_CHART_TYPE__MNAME, oldM_name, m_name));
+			}
+		}
+		return m_name;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public CGIText basicGetM_name() {
+		return m_name;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public NotificationChain basicSetM_name(CGIText newM_name, NotificationChain msgs) {
+		CGIText oldM_name = m_name;
+		m_name = newM_name;
+		if (eNotificationRequired()) {
+			ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, UMLRpyPackage.GRAPHIC_CHART_TYPE__MNAME, oldM_name, newM_name);
+			if (msgs == null) msgs = notification; else msgs.add(notification);
+		}
+		return msgs;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_name(CGIText newM_name) {
+		if (newM_name != m_name) {
+			NotificationChain msgs = null;
+			if (m_name != null)
+				msgs = ((InternalEObject)m_name).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.GRAPHIC_CHART_TYPE__MNAME, null, msgs);
+			if (newM_name != null)
+				msgs = ((InternalEObject)newM_name).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.GRAPHIC_CHART_TYPE__MNAME, null, msgs);
+			msgs = basicSetM_name(newM_name, msgs);
+			if (msgs != null) msgs.dispatch();
+		}
+		else if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.GRAPHIC_CHART_TYPE__MNAME, newM_name, newM_name));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getM_fileVersion() {
+		return m_fileVersion;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_fileVersion(String newM_fileVersion) {
+		String oldM_fileVersion = m_fileVersion;
+		m_fileVersion = newM_fileVersion;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.GRAPHIC_CHART_TYPE__MFILE_VERSION, oldM_fileVersion, m_fileVersion));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getM_bIsPreferencesInitialized() {
+		return m_bIsPreferencesInitialized;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_bIsPreferencesInitialized(String newM_bIsPreferencesInitialized) {
+		String oldM_bIsPreferencesInitialized = m_bIsPreferencesInitialized;
+		m_bIsPreferencesInitialized = newM_bIsPreferencesInitialized;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.GRAPHIC_CHART_TYPE__MBIS_PREFERENCES_INITIALIZED, oldM_bIsPreferencesInitialized, m_bIsPreferencesInitialized));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
+		switch (featureID) {
+			case UMLRpyPackage.GRAPHIC_CHART_TYPE__GRAPH_ELEMENTS:
+				return ((InternalEList<?>)getGraphElements()).basicRemove(otherEnd, msgs);
+			case UMLRpyPackage.GRAPHIC_CHART_TYPE__MNAME:
+				return basicSetM_name(null, msgs);
+		}
+		return super.eInverseRemove(otherEnd, featureID, msgs);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object eGet(int featureID, boolean resolve, boolean coreType) {
+		switch (featureID) {
+			case UMLRpyPackage.GRAPHIC_CHART_TYPE__ID:
+				return getId();
+			case UMLRpyPackage.GRAPHIC_CHART_TYPE__MACCESS:
+				return getM_access();
+			case UMLRpyPackage.GRAPHIC_CHART_TYPE__ELEMENT_LIST:
+				return getElementList();
+			case UMLRpyPackage.GRAPHIC_CHART_TYPE__MNMODIFY_DATE:
+				return getM_nModifyDate();
+			case UMLRpyPackage.GRAPHIC_CHART_TYPE__MCURRENT_LEFT_TOP:
+				return getM_currentLeftTop();
+			case UMLRpyPackage.GRAPHIC_CHART_TYPE__MMODIFIED:
+				return getM_modified();
+			case UMLRpyPackage.GRAPHIC_CHART_TYPE__MNCREATE_DATE:
+				return getM_nCreateDate();
+			case UMLRpyPackage.GRAPHIC_CHART_TYPE__MPPARENT:
+				return getM_pParent();
+			case UMLRpyPackage.GRAPHIC_CHART_TYPE__MARROW_STYLE:
+				return getM_arrowStyle();
+			case UMLRpyPackage.GRAPHIC_CHART_TYPE__MDRAW_BEHAVIOR:
+				return getM_drawBehavior();
+			case UMLRpyPackage.GRAPHIC_CHART_TYPE__MCURRENT_RIGHT_BOTTOM:
+				return getM_currentRightBottom();
+			case UMLRpyPackage.GRAPHIC_CHART_TYPE__MCREATOR:
+				return getM_creator();
+			case UMLRpyPackage.GRAPHIC_CHART_TYPE__MBSCALE_WITH_ZOOM:
+				return getM_bScaleWithZoom();
+			case UMLRpyPackage.GRAPHIC_CHART_TYPE__MTYPE:
+				return getM_type();
+			case UMLRpyPackage.GRAPHIC_CHART_TYPE__GRAPH_ELEMENTS:
+				return getGraphElements();
+			case UMLRpyPackage.GRAPHIC_CHART_TYPE__MNAME:
+				if (resolve) return getM_name();
+				return basicGetM_name();
+			case UMLRpyPackage.GRAPHIC_CHART_TYPE__MFILE_VERSION:
+				return getM_fileVersion();
+			case UMLRpyPackage.GRAPHIC_CHART_TYPE__MBIS_PREFERENCES_INITIALIZED:
+				return getM_bIsPreferencesInitialized();
+		}
+		return super.eGet(featureID, resolve, coreType);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@SuppressWarnings("unchecked")
+	@Override
+	public void eSet(int featureID, Object newValue) {
+		switch (featureID) {
+			case UMLRpyPackage.GRAPHIC_CHART_TYPE__ID:
+				setId((String)newValue);
+				return;
+			case UMLRpyPackage.GRAPHIC_CHART_TYPE__MACCESS:
+				setM_access((String)newValue);
+				return;
+			case UMLRpyPackage.GRAPHIC_CHART_TYPE__ELEMENT_LIST:
+				setElementList((String)newValue);
+				return;
+			case UMLRpyPackage.GRAPHIC_CHART_TYPE__MNMODIFY_DATE:
+				setM_nModifyDate((String)newValue);
+				return;
+			case UMLRpyPackage.GRAPHIC_CHART_TYPE__MCURRENT_LEFT_TOP:
+				getM_currentLeftTop().clear();
+				getM_currentLeftTop().addAll((Collection<? extends String>)newValue);
+				return;
+			case UMLRpyPackage.GRAPHIC_CHART_TYPE__MMODIFIED:
+				setM_modified((String)newValue);
+				return;
+			case UMLRpyPackage.GRAPHIC_CHART_TYPE__MNCREATE_DATE:
+				setM_nCreateDate((String)newValue);
+				return;
+			case UMLRpyPackage.GRAPHIC_CHART_TYPE__MPPARENT:
+				setM_pParent((String)newValue);
+				return;
+			case UMLRpyPackage.GRAPHIC_CHART_TYPE__MARROW_STYLE:
+				setM_arrowStyle((String)newValue);
+				return;
+			case UMLRpyPackage.GRAPHIC_CHART_TYPE__MDRAW_BEHAVIOR:
+				setM_drawBehavior((String)newValue);
+				return;
+			case UMLRpyPackage.GRAPHIC_CHART_TYPE__MCURRENT_RIGHT_BOTTOM:
+				getM_currentRightBottom().clear();
+				getM_currentRightBottom().addAll((Collection<? extends String>)newValue);
+				return;
+			case UMLRpyPackage.GRAPHIC_CHART_TYPE__MCREATOR:
+				setM_creator((String)newValue);
+				return;
+			case UMLRpyPackage.GRAPHIC_CHART_TYPE__MBSCALE_WITH_ZOOM:
+				setM_bScaleWithZoom((String)newValue);
+				return;
+			case UMLRpyPackage.GRAPHIC_CHART_TYPE__MTYPE:
+				setM_type((String)newValue);
+				return;
+			case UMLRpyPackage.GRAPHIC_CHART_TYPE__GRAPH_ELEMENTS:
+				getGraphElements().clear();
+				getGraphElements().addAll((Collection<? extends GraphElementsType>)newValue);
+				return;
+			case UMLRpyPackage.GRAPHIC_CHART_TYPE__MNAME:
+				setM_name((CGIText)newValue);
+				return;
+			case UMLRpyPackage.GRAPHIC_CHART_TYPE__MFILE_VERSION:
+				setM_fileVersion((String)newValue);
+				return;
+			case UMLRpyPackage.GRAPHIC_CHART_TYPE__MBIS_PREFERENCES_INITIALIZED:
+				setM_bIsPreferencesInitialized((String)newValue);
+				return;
+		}
+		super.eSet(featureID, newValue);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void eUnset(int featureID) {
+		switch (featureID) {
+			case UMLRpyPackage.GRAPHIC_CHART_TYPE__ID:
+				setId(ID_EDEFAULT);
+				return;
+			case UMLRpyPackage.GRAPHIC_CHART_TYPE__MACCESS:
+				setM_access(MACCESS_EDEFAULT);
+				return;
+			case UMLRpyPackage.GRAPHIC_CHART_TYPE__ELEMENT_LIST:
+				setElementList(ELEMENT_LIST_EDEFAULT);
+				return;
+			case UMLRpyPackage.GRAPHIC_CHART_TYPE__MNMODIFY_DATE:
+				setM_nModifyDate(MNMODIFY_DATE_EDEFAULT);
+				return;
+			case UMLRpyPackage.GRAPHIC_CHART_TYPE__MCURRENT_LEFT_TOP:
+				getM_currentLeftTop().clear();
+				return;
+			case UMLRpyPackage.GRAPHIC_CHART_TYPE__MMODIFIED:
+				setM_modified(MMODIFIED_EDEFAULT);
+				return;
+			case UMLRpyPackage.GRAPHIC_CHART_TYPE__MNCREATE_DATE:
+				setM_nCreateDate(MNCREATE_DATE_EDEFAULT);
+				return;
+			case UMLRpyPackage.GRAPHIC_CHART_TYPE__MPPARENT:
+				setM_pParent(MPPARENT_EDEFAULT);
+				return;
+			case UMLRpyPackage.GRAPHIC_CHART_TYPE__MARROW_STYLE:
+				setM_arrowStyle(MARROW_STYLE_EDEFAULT);
+				return;
+			case UMLRpyPackage.GRAPHIC_CHART_TYPE__MDRAW_BEHAVIOR:
+				setM_drawBehavior(MDRAW_BEHAVIOR_EDEFAULT);
+				return;
+			case UMLRpyPackage.GRAPHIC_CHART_TYPE__MCURRENT_RIGHT_BOTTOM:
+				getM_currentRightBottom().clear();
+				return;
+			case UMLRpyPackage.GRAPHIC_CHART_TYPE__MCREATOR:
+				setM_creator(MCREATOR_EDEFAULT);
+				return;
+			case UMLRpyPackage.GRAPHIC_CHART_TYPE__MBSCALE_WITH_ZOOM:
+				setM_bScaleWithZoom(MBSCALE_WITH_ZOOM_EDEFAULT);
+				return;
+			case UMLRpyPackage.GRAPHIC_CHART_TYPE__MTYPE:
+				setM_type(MTYPE_EDEFAULT);
+				return;
+			case UMLRpyPackage.GRAPHIC_CHART_TYPE__GRAPH_ELEMENTS:
+				getGraphElements().clear();
+				return;
+			case UMLRpyPackage.GRAPHIC_CHART_TYPE__MNAME:
+				setM_name((CGIText)null);
+				return;
+			case UMLRpyPackage.GRAPHIC_CHART_TYPE__MFILE_VERSION:
+				setM_fileVersion(MFILE_VERSION_EDEFAULT);
+				return;
+			case UMLRpyPackage.GRAPHIC_CHART_TYPE__MBIS_PREFERENCES_INITIALIZED:
+				setM_bIsPreferencesInitialized(MBIS_PREFERENCES_INITIALIZED_EDEFAULT);
+				return;
+		}
+		super.eUnset(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public boolean eIsSet(int featureID) {
+		switch (featureID) {
+			case UMLRpyPackage.GRAPHIC_CHART_TYPE__ID:
+				return ID_EDEFAULT == null ? id != null : !ID_EDEFAULT.equals(id);
+			case UMLRpyPackage.GRAPHIC_CHART_TYPE__MACCESS:
+				return MACCESS_EDEFAULT == null ? m_access != null : !MACCESS_EDEFAULT.equals(m_access);
+			case UMLRpyPackage.GRAPHIC_CHART_TYPE__ELEMENT_LIST:
+				return ELEMENT_LIST_EDEFAULT == null ? elementList != null : !ELEMENT_LIST_EDEFAULT.equals(elementList);
+			case UMLRpyPackage.GRAPHIC_CHART_TYPE__MNMODIFY_DATE:
+				return MNMODIFY_DATE_EDEFAULT == null ? m_nModifyDate != null : !MNMODIFY_DATE_EDEFAULT.equals(m_nModifyDate);
+			case UMLRpyPackage.GRAPHIC_CHART_TYPE__MCURRENT_LEFT_TOP:
+				return m_currentLeftTop != null && !m_currentLeftTop.isEmpty();
+			case UMLRpyPackage.GRAPHIC_CHART_TYPE__MMODIFIED:
+				return MMODIFIED_EDEFAULT == null ? m_modified != null : !MMODIFIED_EDEFAULT.equals(m_modified);
+			case UMLRpyPackage.GRAPHIC_CHART_TYPE__MNCREATE_DATE:
+				return MNCREATE_DATE_EDEFAULT == null ? m_nCreateDate != null : !MNCREATE_DATE_EDEFAULT.equals(m_nCreateDate);
+			case UMLRpyPackage.GRAPHIC_CHART_TYPE__MPPARENT:
+				return MPPARENT_EDEFAULT == null ? m_pParent != null : !MPPARENT_EDEFAULT.equals(m_pParent);
+			case UMLRpyPackage.GRAPHIC_CHART_TYPE__MARROW_STYLE:
+				return MARROW_STYLE_EDEFAULT == null ? m_arrowStyle != null : !MARROW_STYLE_EDEFAULT.equals(m_arrowStyle);
+			case UMLRpyPackage.GRAPHIC_CHART_TYPE__MDRAW_BEHAVIOR:
+				return MDRAW_BEHAVIOR_EDEFAULT == null ? m_drawBehavior != null : !MDRAW_BEHAVIOR_EDEFAULT.equals(m_drawBehavior);
+			case UMLRpyPackage.GRAPHIC_CHART_TYPE__MCURRENT_RIGHT_BOTTOM:
+				return m_currentRightBottom != null && !m_currentRightBottom.isEmpty();
+			case UMLRpyPackage.GRAPHIC_CHART_TYPE__MCREATOR:
+				return MCREATOR_EDEFAULT == null ? m_creator != null : !MCREATOR_EDEFAULT.equals(m_creator);
+			case UMLRpyPackage.GRAPHIC_CHART_TYPE__MBSCALE_WITH_ZOOM:
+				return MBSCALE_WITH_ZOOM_EDEFAULT == null ? m_bScaleWithZoom != null : !MBSCALE_WITH_ZOOM_EDEFAULT.equals(m_bScaleWithZoom);
+			case UMLRpyPackage.GRAPHIC_CHART_TYPE__MTYPE:
+				return MTYPE_EDEFAULT == null ? m_type != null : !MTYPE_EDEFAULT.equals(m_type);
+			case UMLRpyPackage.GRAPHIC_CHART_TYPE__GRAPH_ELEMENTS:
+				return graphElements != null && !graphElements.isEmpty();
+			case UMLRpyPackage.GRAPHIC_CHART_TYPE__MNAME:
+				return m_name != null;
+			case UMLRpyPackage.GRAPHIC_CHART_TYPE__MFILE_VERSION:
+				return MFILE_VERSION_EDEFAULT == null ? m_fileVersion != null : !MFILE_VERSION_EDEFAULT.equals(m_fileVersion);
+			case UMLRpyPackage.GRAPHIC_CHART_TYPE__MBIS_PREFERENCES_INITIALIZED:
+				return MBIS_PREFERENCES_INITIALIZED_EDEFAULT == null ? m_bIsPreferencesInitialized != null : !MBIS_PREFERENCES_INITIALIZED_EDEFAULT.equals(m_bIsPreferencesInitialized);
+		}
+		return super.eIsSet(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String toString() {
+		if (eIsProxy()) return super.toString();
+
+		StringBuffer result = new StringBuffer(super.toString());
+		result.append(" (id: "); //$NON-NLS-1$
+		result.append(id);
+		result.append(", m_access: "); //$NON-NLS-1$
+		result.append(m_access);
+		result.append(", elementList: "); //$NON-NLS-1$
+		result.append(elementList);
+		result.append(", m_nModifyDate: "); //$NON-NLS-1$
+		result.append(m_nModifyDate);
+		result.append(", m_currentLeftTop: "); //$NON-NLS-1$
+		result.append(m_currentLeftTop);
+		result.append(", m_modified: "); //$NON-NLS-1$
+		result.append(m_modified);
+		result.append(", m_nCreateDate: "); //$NON-NLS-1$
+		result.append(m_nCreateDate);
+		result.append(", m_pParent: "); //$NON-NLS-1$
+		result.append(m_pParent);
+		result.append(", m_arrowStyle: "); //$NON-NLS-1$
+		result.append(m_arrowStyle);
+		result.append(", m_drawBehavior: "); //$NON-NLS-1$
+		result.append(m_drawBehavior);
+		result.append(", m_currentRightBottom: "); //$NON-NLS-1$
+		result.append(m_currentRightBottom);
+		result.append(", m_creator: "); //$NON-NLS-1$
+		result.append(m_creator);
+		result.append(", m_bScaleWithZoom: "); //$NON-NLS-1$
+		result.append(m_bScaleWithZoom);
+		result.append(", m_type: "); //$NON-NLS-1$
+		result.append(m_type);
+		result.append(", m_fileVersion: "); //$NON-NLS-1$
+		result.append(m_fileVersion);
+		result.append(", m_bIsPreferencesInitialized: "); //$NON-NLS-1$
+		result.append(m_bIsPreferencesInitialized);
+		result.append(')');
+		return result.toString();
+	}
+
+} //GraphicChartTypeImpl
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/HyperLinksTypeImpl.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/HyperLinksTypeImpl.java
new file mode 100755
index 0000000..d710eba
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/HyperLinksTypeImpl.java
@@ -0,0 +1,47 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl;
+
+import org.eclipse.emf.ecore.EClass;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.HyperLinksType;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Hyper Links Type</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+public abstract class HyperLinksTypeImpl extends IModelElementImpl implements HyperLinksType {
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected HyperLinksTypeImpl() {
+		super();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EClass eStaticClass() {
+		return UMLRpyPackage.eINSTANCE.getHyperLinksType();
+	}
+
+} //HyperLinksTypeImpl
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/IAcceptEventActionImpl.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/IAcceptEventActionImpl.java
new file mode 100755
index 0000000..7f04593
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/IAcceptEventActionImpl.java
@@ -0,0 +1,166 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.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.interoperability.rpy.rpymetamodel.IAcceptEventAction;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IEvent;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>IAccept Event Action</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * </p>
+ * <ul>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IAcceptEventActionImpl#getEvent <em>Event</em>}</li>
+ * </ul>
+ *
+ * @generated
+ */
+public class IAcceptEventActionImpl extends IStateImpl implements IAcceptEventAction {
+	/**
+	 * The cached value of the '{@link #getEvent() <em>Event</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getEvent()
+	 * @generated
+	 * @ordered
+	 */
+	protected IEvent event;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected IAcceptEventActionImpl() {
+		super();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EClass eStaticClass() {
+		return UMLRpyPackage.eINSTANCE.getIAcceptEventAction();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IEvent getEvent() {
+		if (event != null && event.eIsProxy()) {
+			InternalEObject oldEvent = (InternalEObject)event;
+			event = (IEvent)eResolveProxy(oldEvent);
+			if (event != oldEvent) {
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.IACCEPT_EVENT_ACTION__EVENT, oldEvent, event));
+			}
+		}
+		return event;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IEvent basicGetEvent() {
+		return event;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setEvent(IEvent newEvent) {
+		IEvent oldEvent = event;
+		event = newEvent;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IACCEPT_EVENT_ACTION__EVENT, oldEvent, event));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object eGet(int featureID, boolean resolve, boolean coreType) {
+		switch (featureID) {
+			case UMLRpyPackage.IACCEPT_EVENT_ACTION__EVENT:
+				if (resolve) return getEvent();
+				return basicGetEvent();
+		}
+		return super.eGet(featureID, resolve, coreType);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void eSet(int featureID, Object newValue) {
+		switch (featureID) {
+			case UMLRpyPackage.IACCEPT_EVENT_ACTION__EVENT:
+				setEvent((IEvent)newValue);
+				return;
+		}
+		super.eSet(featureID, newValue);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void eUnset(int featureID) {
+		switch (featureID) {
+			case UMLRpyPackage.IACCEPT_EVENT_ACTION__EVENT:
+				setEvent((IEvent)null);
+				return;
+		}
+		super.eUnset(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public boolean eIsSet(int featureID) {
+		switch (featureID) {
+			case UMLRpyPackage.IACCEPT_EVENT_ACTION__EVENT:
+				return event != null;
+		}
+		return super.eIsSet(featureID);
+	}
+
+} //IAcceptEventActionImpl
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/IAcceptTimeEventImpl.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/IAcceptTimeEventImpl.java
new file mode 100755
index 0000000..987baa0
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/IAcceptTimeEventImpl.java
@@ -0,0 +1,47 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl;
+
+import org.eclipse.emf.ecore.EClass;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IAcceptTimeEvent;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>IAccept Time Event</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+public class IAcceptTimeEventImpl extends IStateImpl implements IAcceptTimeEvent {
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected IAcceptTimeEventImpl() {
+		super();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EClass eStaticClass() {
+		return UMLRpyPackage.eINSTANCE.getIAcceptTimeEvent();
+	}
+
+} //IAcceptTimeEventImpl
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/IActionImpl.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/IActionImpl.java
new file mode 100755
index 0000000..65280ec
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/IActionImpl.java
@@ -0,0 +1,431 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl;
+
+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.impl.ENotificationImpl;
+
+import org.eclipse.emf.ecore.util.EDataTypeEList;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IAction;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>IAction</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * </p>
+ * <ul>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IActionImpl#getId <em>Id</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IActionImpl#getMyState <em>My State</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IActionImpl#getBody <em>Body</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IActionImpl#getModifiedTimeWeak <em>Modified Time Weak</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IActionImpl#getObjectCreation <em>Object Creation</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IActionImpl#getUmlDependencyID <em>Uml Dependency ID</em>}</li>
+ * </ul>
+ *
+ * @generated
+ */
+public class IActionImpl extends IModelElementImpl implements IAction {
+	/**
+	 * The default value of the '{@link #getId() <em>Id</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getId()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String ID_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getId() <em>Id</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getId()
+	 * @generated
+	 * @ordered
+	 */
+	protected String id = ID_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getMyState() <em>My State</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getMyState()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String MY_STATE_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getMyState() <em>My State</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getMyState()
+	 * @generated
+	 * @ordered
+	 */
+	protected String myState = MY_STATE_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getBody() <em>Body</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getBody()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String BODY_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getBody() <em>Body</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getBody()
+	 * @generated
+	 * @ordered
+	 */
+	protected String body = BODY_EDEFAULT;
+
+	/**
+	 * The cached value of the '{@link #getModifiedTimeWeak() <em>Modified Time Weak</em>}' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getModifiedTimeWeak()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<String> modifiedTimeWeak;
+
+	/**
+	 * The default value of the '{@link #getObjectCreation() <em>Object Creation</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getObjectCreation()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String OBJECT_CREATION_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getObjectCreation() <em>Object Creation</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getObjectCreation()
+	 * @generated
+	 * @ordered
+	 */
+	protected String objectCreation = OBJECT_CREATION_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getUmlDependencyID() <em>Uml Dependency ID</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getUmlDependencyID()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String UML_DEPENDENCY_ID_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getUmlDependencyID() <em>Uml Dependency ID</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getUmlDependencyID()
+	 * @generated
+	 * @ordered
+	 */
+	protected String umlDependencyID = UML_DEPENDENCY_ID_EDEFAULT;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected IActionImpl() {
+		super();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EClass eStaticClass() {
+		return UMLRpyPackage.eINSTANCE.getIAction();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getId() {
+		return id;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setId(String newId) {
+		String oldId = id;
+		id = newId;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IACTION__ID, oldId, id));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getMyState() {
+		return myState;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setMyState(String newMyState) {
+		String oldMyState = myState;
+		myState = newMyState;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IACTION__MY_STATE, oldMyState, myState));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getBody() {
+		return body;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setBody(String newBody) {
+		String oldBody = body;
+		body = newBody;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IACTION__BODY, oldBody, body));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<String> getModifiedTimeWeak() {
+		if (modifiedTimeWeak == null) {
+			modifiedTimeWeak = new EDataTypeEList<String>(String.class, this, UMLRpyPackage.IACTION__MODIFIED_TIME_WEAK);
+		}
+		return modifiedTimeWeak;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getObjectCreation() {
+		return objectCreation;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setObjectCreation(String newObjectCreation) {
+		String oldObjectCreation = objectCreation;
+		objectCreation = newObjectCreation;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IACTION__OBJECT_CREATION, oldObjectCreation, objectCreation));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getUmlDependencyID() {
+		return umlDependencyID;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setUmlDependencyID(String newUmlDependencyID) {
+		String oldUmlDependencyID = umlDependencyID;
+		umlDependencyID = newUmlDependencyID;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IACTION__UML_DEPENDENCY_ID, oldUmlDependencyID, umlDependencyID));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object eGet(int featureID, boolean resolve, boolean coreType) {
+		switch (featureID) {
+			case UMLRpyPackage.IACTION__ID:
+				return getId();
+			case UMLRpyPackage.IACTION__MY_STATE:
+				return getMyState();
+			case UMLRpyPackage.IACTION__BODY:
+				return getBody();
+			case UMLRpyPackage.IACTION__MODIFIED_TIME_WEAK:
+				return getModifiedTimeWeak();
+			case UMLRpyPackage.IACTION__OBJECT_CREATION:
+				return getObjectCreation();
+			case UMLRpyPackage.IACTION__UML_DEPENDENCY_ID:
+				return getUmlDependencyID();
+		}
+		return super.eGet(featureID, resolve, coreType);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@SuppressWarnings("unchecked")
+	@Override
+	public void eSet(int featureID, Object newValue) {
+		switch (featureID) {
+			case UMLRpyPackage.IACTION__ID:
+				setId((String)newValue);
+				return;
+			case UMLRpyPackage.IACTION__MY_STATE:
+				setMyState((String)newValue);
+				return;
+			case UMLRpyPackage.IACTION__BODY:
+				setBody((String)newValue);
+				return;
+			case UMLRpyPackage.IACTION__MODIFIED_TIME_WEAK:
+				getModifiedTimeWeak().clear();
+				getModifiedTimeWeak().addAll((Collection<? extends String>)newValue);
+				return;
+			case UMLRpyPackage.IACTION__OBJECT_CREATION:
+				setObjectCreation((String)newValue);
+				return;
+			case UMLRpyPackage.IACTION__UML_DEPENDENCY_ID:
+				setUmlDependencyID((String)newValue);
+				return;
+		}
+		super.eSet(featureID, newValue);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void eUnset(int featureID) {
+		switch (featureID) {
+			case UMLRpyPackage.IACTION__ID:
+				setId(ID_EDEFAULT);
+				return;
+			case UMLRpyPackage.IACTION__MY_STATE:
+				setMyState(MY_STATE_EDEFAULT);
+				return;
+			case UMLRpyPackage.IACTION__BODY:
+				setBody(BODY_EDEFAULT);
+				return;
+			case UMLRpyPackage.IACTION__MODIFIED_TIME_WEAK:
+				getModifiedTimeWeak().clear();
+				return;
+			case UMLRpyPackage.IACTION__OBJECT_CREATION:
+				setObjectCreation(OBJECT_CREATION_EDEFAULT);
+				return;
+			case UMLRpyPackage.IACTION__UML_DEPENDENCY_ID:
+				setUmlDependencyID(UML_DEPENDENCY_ID_EDEFAULT);
+				return;
+		}
+		super.eUnset(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public boolean eIsSet(int featureID) {
+		switch (featureID) {
+			case UMLRpyPackage.IACTION__ID:
+				return ID_EDEFAULT == null ? id != null : !ID_EDEFAULT.equals(id);
+			case UMLRpyPackage.IACTION__MY_STATE:
+				return MY_STATE_EDEFAULT == null ? myState != null : !MY_STATE_EDEFAULT.equals(myState);
+			case UMLRpyPackage.IACTION__BODY:
+				return BODY_EDEFAULT == null ? body != null : !BODY_EDEFAULT.equals(body);
+			case UMLRpyPackage.IACTION__MODIFIED_TIME_WEAK:
+				return modifiedTimeWeak != null && !modifiedTimeWeak.isEmpty();
+			case UMLRpyPackage.IACTION__OBJECT_CREATION:
+				return OBJECT_CREATION_EDEFAULT == null ? objectCreation != null : !OBJECT_CREATION_EDEFAULT.equals(objectCreation);
+			case UMLRpyPackage.IACTION__UML_DEPENDENCY_ID:
+				return UML_DEPENDENCY_ID_EDEFAULT == null ? umlDependencyID != null : !UML_DEPENDENCY_ID_EDEFAULT.equals(umlDependencyID);
+		}
+		return super.eIsSet(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String toString() {
+		if (eIsProxy()) return super.toString();
+
+		StringBuffer result = new StringBuffer(super.toString());
+		result.append(" (id: "); //$NON-NLS-1$
+		result.append(id);
+		result.append(", myState: "); //$NON-NLS-1$
+		result.append(myState);
+		result.append(", body: "); //$NON-NLS-1$
+		result.append(body);
+		result.append(", modifiedTimeWeak: "); //$NON-NLS-1$
+		result.append(modifiedTimeWeak);
+		result.append(", objectCreation: "); //$NON-NLS-1$
+		result.append(objectCreation);
+		result.append(", umlDependencyID: "); //$NON-NLS-1$
+		result.append(umlDependencyID);
+		result.append(')');
+		return result.toString();
+	}
+
+} //IActionImpl
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/IActivityDiagramImpl.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/IActivityDiagramImpl.java
new file mode 100755
index 0000000..7884629
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/IActivityDiagramImpl.java
@@ -0,0 +1,266 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl;
+
+import java.util.Collection;
+
+import org.eclipse.emf.common.notify.Notification;
+import org.eclipse.emf.common.notify.NotificationChain;
+
+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.EDataTypeEList;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIStateChart;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IActivityDiagram;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>IActivity Diagram</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * </p>
+ * <ul>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IActivityDiagramImpl#getGraphicChart <em>Graphic Chart</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IActivityDiagramImpl#getCodeUpdateCGTime <em>Code Update CG Time</em>}</li>
+ * </ul>
+ *
+ * @generated
+ */
+public class IActivityDiagramImpl extends DependsOnTypeImpl implements IActivityDiagram {
+	/**
+	 * The cached value of the '{@link #getGraphicChart() <em>Graphic Chart</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getGraphicChart()
+	 * @generated
+	 * @ordered
+	 */
+	protected CGIStateChart graphicChart;
+
+	/**
+	 * The cached value of the '{@link #getCodeUpdateCGTime() <em>Code Update CG Time</em>}' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getCodeUpdateCGTime()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<String> codeUpdateCGTime;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected IActivityDiagramImpl() {
+		super();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EClass eStaticClass() {
+		return UMLRpyPackage.eINSTANCE.getIActivityDiagram();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public CGIStateChart getGraphicChart() {
+		if (graphicChart != null && graphicChart.eIsProxy()) {
+			InternalEObject oldGraphicChart = (InternalEObject)graphicChart;
+			graphicChart = (CGIStateChart)eResolveProxy(oldGraphicChart);
+			if (graphicChart != oldGraphicChart) {
+				InternalEObject newGraphicChart = (InternalEObject)graphicChart;
+				NotificationChain msgs = oldGraphicChart.eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IACTIVITY_DIAGRAM__GRAPHIC_CHART, null, null);
+				if (newGraphicChart.eInternalContainer() == null) {
+					msgs = newGraphicChart.eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IACTIVITY_DIAGRAM__GRAPHIC_CHART, null, msgs);
+				}
+				if (msgs != null) msgs.dispatch();
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.IACTIVITY_DIAGRAM__GRAPHIC_CHART, oldGraphicChart, graphicChart));
+			}
+		}
+		return graphicChart;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public CGIStateChart basicGetGraphicChart() {
+		return graphicChart;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public NotificationChain basicSetGraphicChart(CGIStateChart newGraphicChart, NotificationChain msgs) {
+		CGIStateChart oldGraphicChart = graphicChart;
+		graphicChart = newGraphicChart;
+		if (eNotificationRequired()) {
+			ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IACTIVITY_DIAGRAM__GRAPHIC_CHART, oldGraphicChart, newGraphicChart);
+			if (msgs == null) msgs = notification; else msgs.add(notification);
+		}
+		return msgs;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setGraphicChart(CGIStateChart newGraphicChart) {
+		if (newGraphicChart != graphicChart) {
+			NotificationChain msgs = null;
+			if (graphicChart != null)
+				msgs = ((InternalEObject)graphicChart).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IACTIVITY_DIAGRAM__GRAPHIC_CHART, null, msgs);
+			if (newGraphicChart != null)
+				msgs = ((InternalEObject)newGraphicChart).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IACTIVITY_DIAGRAM__GRAPHIC_CHART, null, msgs);
+			msgs = basicSetGraphicChart(newGraphicChart, msgs);
+			if (msgs != null) msgs.dispatch();
+		}
+		else if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IACTIVITY_DIAGRAM__GRAPHIC_CHART, newGraphicChart, newGraphicChart));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<String> getCodeUpdateCGTime() {
+		if (codeUpdateCGTime == null) {
+			codeUpdateCGTime = new EDataTypeEList<String>(String.class, this, UMLRpyPackage.IACTIVITY_DIAGRAM__CODE_UPDATE_CG_TIME);
+		}
+		return codeUpdateCGTime;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
+		switch (featureID) {
+			case UMLRpyPackage.IACTIVITY_DIAGRAM__GRAPHIC_CHART:
+				return basicSetGraphicChart(null, msgs);
+		}
+		return super.eInverseRemove(otherEnd, featureID, msgs);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object eGet(int featureID, boolean resolve, boolean coreType) {
+		switch (featureID) {
+			case UMLRpyPackage.IACTIVITY_DIAGRAM__GRAPHIC_CHART:
+				if (resolve) return getGraphicChart();
+				return basicGetGraphicChart();
+			case UMLRpyPackage.IACTIVITY_DIAGRAM__CODE_UPDATE_CG_TIME:
+				return getCodeUpdateCGTime();
+		}
+		return super.eGet(featureID, resolve, coreType);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@SuppressWarnings("unchecked")
+	@Override
+	public void eSet(int featureID, Object newValue) {
+		switch (featureID) {
+			case UMLRpyPackage.IACTIVITY_DIAGRAM__GRAPHIC_CHART:
+				setGraphicChart((CGIStateChart)newValue);
+				return;
+			case UMLRpyPackage.IACTIVITY_DIAGRAM__CODE_UPDATE_CG_TIME:
+				getCodeUpdateCGTime().clear();
+				getCodeUpdateCGTime().addAll((Collection<? extends String>)newValue);
+				return;
+		}
+		super.eSet(featureID, newValue);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void eUnset(int featureID) {
+		switch (featureID) {
+			case UMLRpyPackage.IACTIVITY_DIAGRAM__GRAPHIC_CHART:
+				setGraphicChart((CGIStateChart)null);
+				return;
+			case UMLRpyPackage.IACTIVITY_DIAGRAM__CODE_UPDATE_CG_TIME:
+				getCodeUpdateCGTime().clear();
+				return;
+		}
+		super.eUnset(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public boolean eIsSet(int featureID) {
+		switch (featureID) {
+			case UMLRpyPackage.IACTIVITY_DIAGRAM__GRAPHIC_CHART:
+				return graphicChart != null;
+			case UMLRpyPackage.IACTIVITY_DIAGRAM__CODE_UPDATE_CG_TIME:
+				return codeUpdateCGTime != null && !codeUpdateCGTime.isEmpty();
+		}
+		return super.eIsSet(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String toString() {
+		if (eIsProxy()) return super.toString();
+
+		StringBuffer result = new StringBuffer(super.toString());
+		result.append(" (codeUpdateCGTime: "); //$NON-NLS-1$
+		result.append(codeUpdateCGTime);
+		result.append(')');
+		return result.toString();
+	}
+
+} //IActivityDiagramImpl
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/IActivityGraphImpl.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/IActivityGraphImpl.java
new file mode 100755
index 0000000..63968e5
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/IActivityGraphImpl.java
@@ -0,0 +1,2079 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl;
+
+import java.lang.reflect.InvocationTargetException;
+import java.util.Collection;
+
+import org.eclipse.emf.common.notify.Notification;
+import org.eclipse.emf.common.notify.NotificationChain;
+
+import org.eclipse.emf.common.util.EList;
+import org.eclipse.emf.ecore.EAnnotation;
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.EModelElement;
+import org.eclipse.emf.ecore.EcorePackage;
+import org.eclipse.emf.ecore.InternalEObject;
+
+import org.eclipse.emf.ecore.impl.ENotificationImpl;
+
+import org.eclipse.emf.ecore.util.EDataTypeEList;
+import org.eclipse.emf.ecore.util.EObjectContainmentEList;
+import org.eclipse.emf.ecore.util.EObjectContainmentWithInverseEList;
+import org.eclipse.emf.ecore.util.EObjectResolvingEList;
+import org.eclipse.emf.ecore.util.InternalEList;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.DependsOnType;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ElementsType;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IActivityDiagram;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IActivityGraph;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IAssociationEnd;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IClassifier;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IComment;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IDependency;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IDescription;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IDiagram;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMHyperLink;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IModelElement;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IPropertyContainer;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ISwimlane;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITag;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ItsTargetType;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.M_pModelObjectType;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.TargetType;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UnknownType;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ValueType;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>IActivity Graph</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * </p>
+ * <ul>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IActivityGraphImpl#getModifiedTimeWeak <em>Modified Time Weak</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IActivityGraphImpl#getId <em>Id</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IActivityGraphImpl#getMyState <em>My State</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IActivityGraphImpl#getName <em>Name</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IActivityGraphImpl#getEAnnotations <em>EAnnotations</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IActivityGraphImpl#getDisplayName <em>Display Name</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IActivityGraphImpl#getLastID <em>Last ID</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IActivityGraphImpl#getWeakCGTime <em>Weak CG Time</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IActivityGraphImpl#getStrongCGTime <em>Strong CG Time</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IActivityGraphImpl#getMultiplicity <em>Multiplicity</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IActivityGraphImpl#getItsStateChart <em>Its State Chart</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IActivityGraphImpl#getClassModifier <em>Class Modifier</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IActivityGraphImpl#getStates <em>States</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IActivityGraphImpl#getBaseVersion <em>Base Version</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IActivityGraphImpl#getDiagram <em>Diagram</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IActivityGraphImpl#getViews <em>Views</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IActivityGraphImpl#getProperties <em>Properties</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IActivityGraphImpl#getRequiremenTracabilityHandle <em>Requiremen Tracability Handle</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IActivityGraphImpl#getDescription <em>Description</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IActivityGraphImpl#getSwimlanes <em>Swimlanes</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IActivityGraphImpl#getStereotypes <em>Stereotypes</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IActivityGraphImpl#getAnalysisMode <em>Analysis Mode</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IActivityGraphImpl#getAnnotations <em>Annotations</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IActivityGraphImpl#getCodeUpdateCGTime <em>Code Update CG Time</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IActivityGraphImpl#getObjectCreation <em>Object Creation</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IActivityGraphImpl#getUmlDependencyID <em>Uml Dependency ID</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IActivityGraphImpl#getHyperLinks <em>Hyper Links</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IActivityGraphImpl#getDependencies <em>Dependencies</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IActivityGraphImpl#getTheMainDiagram <em>The Main Diagram</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IActivityGraphImpl#getAssociations <em>Associations</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IActivityGraphImpl#getTags <em>Tags</em>}</li>
+ * </ul>
+ *
+ * @generated
+ */
+public class IActivityGraphImpl extends NestedStateChartTypeImpl implements IActivityGraph {
+	/**
+	 * The cached value of the '{@link #getModifiedTimeWeak() <em>Modified Time Weak</em>}' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getModifiedTimeWeak()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<String> modifiedTimeWeak;
+
+	/**
+	 * The default value of the '{@link #getId() <em>Id</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getId()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String ID_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getId() <em>Id</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getId()
+	 * @generated
+	 * @ordered
+	 */
+	protected String id = ID_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getMyState() <em>My State</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getMyState()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String MY_STATE_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getMyState() <em>My State</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getMyState()
+	 * @generated
+	 * @ordered
+	 */
+	protected String myState = MY_STATE_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getName() <em>Name</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getName()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String NAME_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getName() <em>Name</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getName()
+	 * @generated
+	 * @ordered
+	 */
+	protected String name = NAME_EDEFAULT;
+
+	/**
+	 * The cached value of the '{@link #getEAnnotations() <em>EAnnotations</em>}' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getEAnnotations()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<EAnnotation> eAnnotations;
+
+	/**
+	 * The default value of the '{@link #getDisplayName() <em>Display Name</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getDisplayName()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String DISPLAY_NAME_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getDisplayName() <em>Display Name</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getDisplayName()
+	 * @generated
+	 * @ordered
+	 */
+	protected String displayName = DISPLAY_NAME_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getLastID() <em>Last ID</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getLastID()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String LAST_ID_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getLastID() <em>Last ID</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getLastID()
+	 * @generated
+	 * @ordered
+	 */
+	protected String lastID = LAST_ID_EDEFAULT;
+
+	/**
+	 * The cached value of the '{@link #getWeakCGTime() <em>Weak CG Time</em>}' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getWeakCGTime()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<String> weakCGTime;
+
+	/**
+	 * The cached value of the '{@link #getStrongCGTime() <em>Strong CG Time</em>}' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getStrongCGTime()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<String> strongCGTime;
+
+	/**
+	 * The default value of the '{@link #getMultiplicity() <em>Multiplicity</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getMultiplicity()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String MULTIPLICITY_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getMultiplicity() <em>Multiplicity</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getMultiplicity()
+	 * @generated
+	 * @ordered
+	 */
+	protected String multiplicity = MULTIPLICITY_EDEFAULT;
+
+	/**
+	 * The cached value of the '{@link #getItsStateChart() <em>Its State Chart</em>}' reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getItsStateChart()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<UnknownType> itsStateChart;
+
+	/**
+	 * The default value of the '{@link #getClassModifier() <em>Class Modifier</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getClassModifier()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String CLASS_MODIFIER_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getClassModifier() <em>Class Modifier</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getClassModifier()
+	 * @generated
+	 * @ordered
+	 */
+	protected String classModifier = CLASS_MODIFIER_EDEFAULT;
+
+	/**
+	 * The cached value of the '{@link #getStates() <em>States</em>}' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getStates()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<ItsTargetType> states;
+
+	/**
+	 * The default value of the '{@link #getBaseVersion() <em>Base Version</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getBaseVersion()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String BASE_VERSION_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getBaseVersion() <em>Base Version</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getBaseVersion()
+	 * @generated
+	 * @ordered
+	 */
+	protected String baseVersion = BASE_VERSION_EDEFAULT;
+
+	/**
+	 * The cached value of the '{@link #getDiagram() <em>Diagram</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getDiagram()
+	 * @generated
+	 * @ordered
+	 */
+	protected IActivityDiagram diagram;
+
+	/**
+	 * The cached value of the '{@link #getViews() <em>Views</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getViews()
+	 * @generated
+	 * @ordered
+	 */
+	protected IActivityDiagram views;
+
+	/**
+	 * The cached value of the '{@link #getProperties() <em>Properties</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getProperties()
+	 * @generated
+	 * @ordered
+	 */
+	protected IPropertyContainer properties;
+
+	/**
+	 * The default value of the '{@link #getRequiremenTracabilityHandle() <em>Requiremen Tracability Handle</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getRequiremenTracabilityHandle()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String REQUIREMEN_TRACABILITY_HANDLE_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getRequiremenTracabilityHandle() <em>Requiremen Tracability Handle</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getRequiremenTracabilityHandle()
+	 * @generated
+	 * @ordered
+	 */
+	protected String requiremenTracabilityHandle = REQUIREMEN_TRACABILITY_HANDLE_EDEFAULT;
+
+	/**
+	 * The cached value of the '{@link #getDescription() <em>Description</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getDescription()
+	 * @generated
+	 * @ordered
+	 */
+	protected IDescription description;
+
+	/**
+	 * The cached value of the '{@link #getSwimlanes() <em>Swimlanes</em>}' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getSwimlanes()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<ISwimlane> swimlanes;
+
+	/**
+	 * The cached value of the '{@link #getStereotypes() <em>Stereotypes</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getStereotypes()
+	 * @generated
+	 * @ordered
+	 */
+	protected IClassifier stereotypes;
+
+	/**
+	 * The default value of the '{@link #getAnalysisMode() <em>Analysis Mode</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getAnalysisMode()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String ANALYSIS_MODE_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getAnalysisMode() <em>Analysis Mode</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getAnalysisMode()
+	 * @generated
+	 * @ordered
+	 */
+	protected String analysisMode = ANALYSIS_MODE_EDEFAULT;
+
+	/**
+	 * The cached value of the '{@link #getAnnotations() <em>Annotations</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getAnnotations()
+	 * @generated
+	 * @ordered
+	 */
+	protected IComment annotations;
+
+	/**
+	 * The cached value of the '{@link #getCodeUpdateCGTime() <em>Code Update CG Time</em>}' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getCodeUpdateCGTime()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<String> codeUpdateCGTime;
+
+	/**
+	 * The default value of the '{@link #getObjectCreation() <em>Object Creation</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getObjectCreation()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String OBJECT_CREATION_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getObjectCreation() <em>Object Creation</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getObjectCreation()
+	 * @generated
+	 * @ordered
+	 */
+	protected String objectCreation = OBJECT_CREATION_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getUmlDependencyID() <em>Uml Dependency ID</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getUmlDependencyID()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String UML_DEPENDENCY_ID_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getUmlDependencyID() <em>Uml Dependency ID</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getUmlDependencyID()
+	 * @generated
+	 * @ordered
+	 */
+	protected String umlDependencyID = UML_DEPENDENCY_ID_EDEFAULT;
+
+	/**
+	 * The cached value of the '{@link #getHyperLinks() <em>Hyper Links</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getHyperLinks()
+	 * @generated
+	 * @ordered
+	 */
+	protected IMHyperLink hyperLinks;
+
+	/**
+	 * The cached value of the '{@link #getDependencies() <em>Dependencies</em>}' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getDependencies()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<IDependency> dependencies;
+
+	/**
+	 * The cached value of the '{@link #getTheMainDiagram() <em>The Main Diagram</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getTheMainDiagram()
+	 * @generated
+	 * @ordered
+	 */
+	protected IDiagram theMainDiagram;
+
+	/**
+	 * The cached value of the '{@link #getAssociations() <em>Associations</em>}' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getAssociations()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<IAssociationEnd> associations;
+
+	/**
+	 * The cached value of the '{@link #getTags() <em>Tags</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getTags()
+	 * @generated
+	 * @ordered
+	 */
+	protected ITag tags;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected IActivityGraphImpl() {
+		super();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EClass eStaticClass() {
+		return UMLRpyPackage.eINSTANCE.getIActivityGraph();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<String> getModifiedTimeWeak() {
+		if (modifiedTimeWeak == null) {
+			modifiedTimeWeak = new EDataTypeEList<String>(String.class, this, UMLRpyPackage.IACTIVITY_GRAPH__MODIFIED_TIME_WEAK);
+		}
+		return modifiedTimeWeak;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getId() {
+		return id;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setId(String newId) {
+		String oldId = id;
+		id = newId;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IACTIVITY_GRAPH__ID, oldId, id));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getMyState() {
+		return myState;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setMyState(String newMyState) {
+		String oldMyState = myState;
+		myState = newMyState;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IACTIVITY_GRAPH__MY_STATE, oldMyState, myState));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getName() {
+		return name;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setName(String newName) {
+		String oldName = name;
+		name = newName;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IACTIVITY_GRAPH__NAME, oldName, name));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<EAnnotation> getEAnnotations() {
+		if (eAnnotations == null) {
+			eAnnotations = new EObjectContainmentWithInverseEList<EAnnotation>(EAnnotation.class, this, UMLRpyPackage.IACTIVITY_GRAPH__EANNOTATIONS, EcorePackage.EANNOTATION__EMODEL_ELEMENT);
+		}
+		return eAnnotations;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getDisplayName() {
+		return displayName;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setDisplayName(String newDisplayName) {
+		String oldDisplayName = displayName;
+		displayName = newDisplayName;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IACTIVITY_GRAPH__DISPLAY_NAME, oldDisplayName, displayName));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getLastID() {
+		return lastID;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setLastID(String newLastID) {
+		String oldLastID = lastID;
+		lastID = newLastID;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IACTIVITY_GRAPH__LAST_ID, oldLastID, lastID));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<String> getWeakCGTime() {
+		if (weakCGTime == null) {
+			weakCGTime = new EDataTypeEList<String>(String.class, this, UMLRpyPackage.IACTIVITY_GRAPH__WEAK_CG_TIME);
+		}
+		return weakCGTime;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<String> getStrongCGTime() {
+		if (strongCGTime == null) {
+			strongCGTime = new EDataTypeEList<String>(String.class, this, UMLRpyPackage.IACTIVITY_GRAPH__STRONG_CG_TIME);
+		}
+		return strongCGTime;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getMultiplicity() {
+		return multiplicity;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setMultiplicity(String newMultiplicity) {
+		String oldMultiplicity = multiplicity;
+		multiplicity = newMultiplicity;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IACTIVITY_GRAPH__MULTIPLICITY, oldMultiplicity, multiplicity));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<UnknownType> getItsStateChart() {
+		if (itsStateChart == null) {
+			itsStateChart = new EObjectResolvingEList<UnknownType>(UnknownType.class, this, UMLRpyPackage.IACTIVITY_GRAPH__ITS_STATE_CHART);
+		}
+		return itsStateChart;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getClassModifier() {
+		return classModifier;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setClassModifier(String newClassModifier) {
+		String oldClassModifier = classModifier;
+		classModifier = newClassModifier;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IACTIVITY_GRAPH__CLASS_MODIFIER, oldClassModifier, classModifier));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<ItsTargetType> getStates() {
+		if (states == null) {
+			states = new EObjectContainmentEList.Resolving<ItsTargetType>(ItsTargetType.class, this, UMLRpyPackage.IACTIVITY_GRAPH__STATES);
+		}
+		return states;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getBaseVersion() {
+		return baseVersion;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setBaseVersion(String newBaseVersion) {
+		String oldBaseVersion = baseVersion;
+		baseVersion = newBaseVersion;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IACTIVITY_GRAPH__BASE_VERSION, oldBaseVersion, baseVersion));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IActivityDiagram getDiagram() {
+		if (diagram != null && diagram.eIsProxy()) {
+			InternalEObject oldDiagram = (InternalEObject)diagram;
+			diagram = (IActivityDiagram)eResolveProxy(oldDiagram);
+			if (diagram != oldDiagram) {
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.IACTIVITY_GRAPH__DIAGRAM, oldDiagram, diagram));
+			}
+		}
+		return diagram;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IActivityDiagram basicGetDiagram() {
+		return diagram;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setDiagram(IActivityDiagram newDiagram) {
+		IActivityDiagram oldDiagram = diagram;
+		diagram = newDiagram;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IACTIVITY_GRAPH__DIAGRAM, oldDiagram, diagram));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IActivityDiagram getViews() {
+		if (views != null && views.eIsProxy()) {
+			InternalEObject oldViews = (InternalEObject)views;
+			views = (IActivityDiagram)eResolveProxy(oldViews);
+			if (views != oldViews) {
+				InternalEObject newViews = (InternalEObject)views;
+				NotificationChain msgs = oldViews.eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IACTIVITY_GRAPH__VIEWS, null, null);
+				if (newViews.eInternalContainer() == null) {
+					msgs = newViews.eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IACTIVITY_GRAPH__VIEWS, null, msgs);
+				}
+				if (msgs != null) msgs.dispatch();
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.IACTIVITY_GRAPH__VIEWS, oldViews, views));
+			}
+		}
+		return views;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IActivityDiagram basicGetViews() {
+		return views;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public NotificationChain basicSetViews(IActivityDiagram newViews, NotificationChain msgs) {
+		IActivityDiagram oldViews = views;
+		views = newViews;
+		if (eNotificationRequired()) {
+			ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IACTIVITY_GRAPH__VIEWS, oldViews, newViews);
+			if (msgs == null) msgs = notification; else msgs.add(notification);
+		}
+		return msgs;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setViews(IActivityDiagram newViews) {
+		if (newViews != views) {
+			NotificationChain msgs = null;
+			if (views != null)
+				msgs = ((InternalEObject)views).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IACTIVITY_GRAPH__VIEWS, null, msgs);
+			if (newViews != null)
+				msgs = ((InternalEObject)newViews).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IACTIVITY_GRAPH__VIEWS, null, msgs);
+			msgs = basicSetViews(newViews, msgs);
+			if (msgs != null) msgs.dispatch();
+		}
+		else if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IACTIVITY_GRAPH__VIEWS, newViews, newViews));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IPropertyContainer getProperties() {
+		if (properties != null && properties.eIsProxy()) {
+			InternalEObject oldProperties = (InternalEObject)properties;
+			properties = (IPropertyContainer)eResolveProxy(oldProperties);
+			if (properties != oldProperties) {
+				InternalEObject newProperties = (InternalEObject)properties;
+				NotificationChain msgs = oldProperties.eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IACTIVITY_GRAPH__PROPERTIES, null, null);
+				if (newProperties.eInternalContainer() == null) {
+					msgs = newProperties.eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IACTIVITY_GRAPH__PROPERTIES, null, msgs);
+				}
+				if (msgs != null) msgs.dispatch();
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.IACTIVITY_GRAPH__PROPERTIES, oldProperties, properties));
+			}
+		}
+		return properties;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IPropertyContainer basicGetProperties() {
+		return properties;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public NotificationChain basicSetProperties(IPropertyContainer newProperties, NotificationChain msgs) {
+		IPropertyContainer oldProperties = properties;
+		properties = newProperties;
+		if (eNotificationRequired()) {
+			ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IACTIVITY_GRAPH__PROPERTIES, oldProperties, newProperties);
+			if (msgs == null) msgs = notification; else msgs.add(notification);
+		}
+		return msgs;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setProperties(IPropertyContainer newProperties) {
+		if (newProperties != properties) {
+			NotificationChain msgs = null;
+			if (properties != null)
+				msgs = ((InternalEObject)properties).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IACTIVITY_GRAPH__PROPERTIES, null, msgs);
+			if (newProperties != null)
+				msgs = ((InternalEObject)newProperties).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IACTIVITY_GRAPH__PROPERTIES, null, msgs);
+			msgs = basicSetProperties(newProperties, msgs);
+			if (msgs != null) msgs.dispatch();
+		}
+		else if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IACTIVITY_GRAPH__PROPERTIES, newProperties, newProperties));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getRequiremenTracabilityHandle() {
+		return requiremenTracabilityHandle;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setRequiremenTracabilityHandle(String newRequiremenTracabilityHandle) {
+		String oldRequiremenTracabilityHandle = requiremenTracabilityHandle;
+		requiremenTracabilityHandle = newRequiremenTracabilityHandle;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IACTIVITY_GRAPH__REQUIREMEN_TRACABILITY_HANDLE, oldRequiremenTracabilityHandle, requiremenTracabilityHandle));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IDescription getDescription() {
+		if (description != null && description.eIsProxy()) {
+			InternalEObject oldDescription = (InternalEObject)description;
+			description = (IDescription)eResolveProxy(oldDescription);
+			if (description != oldDescription) {
+				InternalEObject newDescription = (InternalEObject)description;
+				NotificationChain msgs = oldDescription.eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IACTIVITY_GRAPH__DESCRIPTION, null, null);
+				if (newDescription.eInternalContainer() == null) {
+					msgs = newDescription.eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IACTIVITY_GRAPH__DESCRIPTION, null, msgs);
+				}
+				if (msgs != null) msgs.dispatch();
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.IACTIVITY_GRAPH__DESCRIPTION, oldDescription, description));
+			}
+		}
+		return description;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IDescription basicGetDescription() {
+		return description;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public NotificationChain basicSetDescription(IDescription newDescription, NotificationChain msgs) {
+		IDescription oldDescription = description;
+		description = newDescription;
+		if (eNotificationRequired()) {
+			ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IACTIVITY_GRAPH__DESCRIPTION, oldDescription, newDescription);
+			if (msgs == null) msgs = notification; else msgs.add(notification);
+		}
+		return msgs;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setDescription(IDescription newDescription) {
+		if (newDescription != description) {
+			NotificationChain msgs = null;
+			if (description != null)
+				msgs = ((InternalEObject)description).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IACTIVITY_GRAPH__DESCRIPTION, null, msgs);
+			if (newDescription != null)
+				msgs = ((InternalEObject)newDescription).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IACTIVITY_GRAPH__DESCRIPTION, null, msgs);
+			msgs = basicSetDescription(newDescription, msgs);
+			if (msgs != null) msgs.dispatch();
+		}
+		else if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IACTIVITY_GRAPH__DESCRIPTION, newDescription, newDescription));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<ISwimlane> getSwimlanes() {
+		if (swimlanes == null) {
+			swimlanes = new EObjectContainmentEList.Resolving<ISwimlane>(ISwimlane.class, this, UMLRpyPackage.IACTIVITY_GRAPH__SWIMLANES);
+		}
+		return swimlanes;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IClassifier getStereotypes() {
+		if (stereotypes != null && stereotypes.eIsProxy()) {
+			InternalEObject oldStereotypes = (InternalEObject)stereotypes;
+			stereotypes = (IClassifier)eResolveProxy(oldStereotypes);
+			if (stereotypes != oldStereotypes) {
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.IACTIVITY_GRAPH__STEREOTYPES, oldStereotypes, stereotypes));
+			}
+		}
+		return stereotypes;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IClassifier basicGetStereotypes() {
+		return stereotypes;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setStereotypes(IClassifier newStereotypes) {
+		IClassifier oldStereotypes = stereotypes;
+		stereotypes = newStereotypes;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IACTIVITY_GRAPH__STEREOTYPES, oldStereotypes, stereotypes));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getAnalysisMode() {
+		return analysisMode;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setAnalysisMode(String newAnalysisMode) {
+		String oldAnalysisMode = analysisMode;
+		analysisMode = newAnalysisMode;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IACTIVITY_GRAPH__ANALYSIS_MODE, oldAnalysisMode, analysisMode));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IComment getAnnotations() {
+		if (annotations != null && annotations.eIsProxy()) {
+			InternalEObject oldAnnotations = (InternalEObject)annotations;
+			annotations = (IComment)eResolveProxy(oldAnnotations);
+			if (annotations != oldAnnotations) {
+				InternalEObject newAnnotations = (InternalEObject)annotations;
+				NotificationChain msgs = oldAnnotations.eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IACTIVITY_GRAPH__ANNOTATIONS, null, null);
+				if (newAnnotations.eInternalContainer() == null) {
+					msgs = newAnnotations.eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IACTIVITY_GRAPH__ANNOTATIONS, null, msgs);
+				}
+				if (msgs != null) msgs.dispatch();
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.IACTIVITY_GRAPH__ANNOTATIONS, oldAnnotations, annotations));
+			}
+		}
+		return annotations;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IComment basicGetAnnotations() {
+		return annotations;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public NotificationChain basicSetAnnotations(IComment newAnnotations, NotificationChain msgs) {
+		IComment oldAnnotations = annotations;
+		annotations = newAnnotations;
+		if (eNotificationRequired()) {
+			ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IACTIVITY_GRAPH__ANNOTATIONS, oldAnnotations, newAnnotations);
+			if (msgs == null) msgs = notification; else msgs.add(notification);
+		}
+		return msgs;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setAnnotations(IComment newAnnotations) {
+		if (newAnnotations != annotations) {
+			NotificationChain msgs = null;
+			if (annotations != null)
+				msgs = ((InternalEObject)annotations).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IACTIVITY_GRAPH__ANNOTATIONS, null, msgs);
+			if (newAnnotations != null)
+				msgs = ((InternalEObject)newAnnotations).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IACTIVITY_GRAPH__ANNOTATIONS, null, msgs);
+			msgs = basicSetAnnotations(newAnnotations, msgs);
+			if (msgs != null) msgs.dispatch();
+		}
+		else if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IACTIVITY_GRAPH__ANNOTATIONS, newAnnotations, newAnnotations));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<String> getCodeUpdateCGTime() {
+		if (codeUpdateCGTime == null) {
+			codeUpdateCGTime = new EDataTypeEList<String>(String.class, this, UMLRpyPackage.IACTIVITY_GRAPH__CODE_UPDATE_CG_TIME);
+		}
+		return codeUpdateCGTime;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getObjectCreation() {
+		return objectCreation;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setObjectCreation(String newObjectCreation) {
+		String oldObjectCreation = objectCreation;
+		objectCreation = newObjectCreation;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IACTIVITY_GRAPH__OBJECT_CREATION, oldObjectCreation, objectCreation));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getUmlDependencyID() {
+		return umlDependencyID;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setUmlDependencyID(String newUmlDependencyID) {
+		String oldUmlDependencyID = umlDependencyID;
+		umlDependencyID = newUmlDependencyID;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IACTIVITY_GRAPH__UML_DEPENDENCY_ID, oldUmlDependencyID, umlDependencyID));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IMHyperLink getHyperLinks() {
+		if (hyperLinks != null && hyperLinks.eIsProxy()) {
+			InternalEObject oldHyperLinks = (InternalEObject)hyperLinks;
+			hyperLinks = (IMHyperLink)eResolveProxy(oldHyperLinks);
+			if (hyperLinks != oldHyperLinks) {
+				InternalEObject newHyperLinks = (InternalEObject)hyperLinks;
+				NotificationChain msgs = oldHyperLinks.eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IACTIVITY_GRAPH__HYPER_LINKS, null, null);
+				if (newHyperLinks.eInternalContainer() == null) {
+					msgs = newHyperLinks.eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IACTIVITY_GRAPH__HYPER_LINKS, null, msgs);
+				}
+				if (msgs != null) msgs.dispatch();
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.IACTIVITY_GRAPH__HYPER_LINKS, oldHyperLinks, hyperLinks));
+			}
+		}
+		return hyperLinks;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IMHyperLink basicGetHyperLinks() {
+		return hyperLinks;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public NotificationChain basicSetHyperLinks(IMHyperLink newHyperLinks, NotificationChain msgs) {
+		IMHyperLink oldHyperLinks = hyperLinks;
+		hyperLinks = newHyperLinks;
+		if (eNotificationRequired()) {
+			ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IACTIVITY_GRAPH__HYPER_LINKS, oldHyperLinks, newHyperLinks);
+			if (msgs == null) msgs = notification; else msgs.add(notification);
+		}
+		return msgs;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setHyperLinks(IMHyperLink newHyperLinks) {
+		if (newHyperLinks != hyperLinks) {
+			NotificationChain msgs = null;
+			if (hyperLinks != null)
+				msgs = ((InternalEObject)hyperLinks).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IACTIVITY_GRAPH__HYPER_LINKS, null, msgs);
+			if (newHyperLinks != null)
+				msgs = ((InternalEObject)newHyperLinks).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IACTIVITY_GRAPH__HYPER_LINKS, null, msgs);
+			msgs = basicSetHyperLinks(newHyperLinks, msgs);
+			if (msgs != null) msgs.dispatch();
+		}
+		else if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IACTIVITY_GRAPH__HYPER_LINKS, newHyperLinks, newHyperLinks));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<IDependency> getDependencies() {
+		if (dependencies == null) {
+			dependencies = new EObjectContainmentEList.Resolving<IDependency>(IDependency.class, this, UMLRpyPackage.IACTIVITY_GRAPH__DEPENDENCIES);
+		}
+		return dependencies;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IDiagram getTheMainDiagram() {
+		if (theMainDiagram != null && theMainDiagram.eIsProxy()) {
+			InternalEObject oldTheMainDiagram = (InternalEObject)theMainDiagram;
+			theMainDiagram = (IDiagram)eResolveProxy(oldTheMainDiagram);
+			if (theMainDiagram != oldTheMainDiagram) {
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.IACTIVITY_GRAPH__THE_MAIN_DIAGRAM, oldTheMainDiagram, theMainDiagram));
+			}
+		}
+		return theMainDiagram;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IDiagram basicGetTheMainDiagram() {
+		return theMainDiagram;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setTheMainDiagram(IDiagram newTheMainDiagram) {
+		IDiagram oldTheMainDiagram = theMainDiagram;
+		theMainDiagram = newTheMainDiagram;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IACTIVITY_GRAPH__THE_MAIN_DIAGRAM, oldTheMainDiagram, theMainDiagram));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<IAssociationEnd> getAssociations() {
+		if (associations == null) {
+			associations = new EObjectContainmentEList.Resolving<IAssociationEnd>(IAssociationEnd.class, this, UMLRpyPackage.IACTIVITY_GRAPH__ASSOCIATIONS);
+		}
+		return associations;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public ITag getTags() {
+		if (tags != null && tags.eIsProxy()) {
+			InternalEObject oldTags = (InternalEObject)tags;
+			tags = (ITag)eResolveProxy(oldTags);
+			if (tags != oldTags) {
+				InternalEObject newTags = (InternalEObject)tags;
+				NotificationChain msgs = oldTags.eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IACTIVITY_GRAPH__TAGS, null, null);
+				if (newTags.eInternalContainer() == null) {
+					msgs = newTags.eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IACTIVITY_GRAPH__TAGS, null, msgs);
+				}
+				if (msgs != null) msgs.dispatch();
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.IACTIVITY_GRAPH__TAGS, oldTags, tags));
+			}
+		}
+		return tags;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public ITag basicGetTags() {
+		return tags;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public NotificationChain basicSetTags(ITag newTags, NotificationChain msgs) {
+		ITag oldTags = tags;
+		tags = newTags;
+		if (eNotificationRequired()) {
+			ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IACTIVITY_GRAPH__TAGS, oldTags, newTags);
+			if (msgs == null) msgs = notification; else msgs.add(notification);
+		}
+		return msgs;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setTags(ITag newTags) {
+		if (newTags != tags) {
+			NotificationChain msgs = null;
+			if (tags != null)
+				msgs = ((InternalEObject)tags).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IACTIVITY_GRAPH__TAGS, null, msgs);
+			if (newTags != null)
+				msgs = ((InternalEObject)newTags).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IACTIVITY_GRAPH__TAGS, null, msgs);
+			msgs = basicSetTags(newTags, msgs);
+			if (msgs != null) msgs.dispatch();
+		}
+		else if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IACTIVITY_GRAPH__TAGS, newTags, newTags));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAnnotation getEAnnotation(String source) {
+		// TODO: implement this method
+		// Ensure that you remove @generated or mark it @generated NOT
+		throw new UnsupportedOperationException();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@SuppressWarnings("unchecked")
+	@Override
+	public NotificationChain eInverseAdd(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
+		switch (featureID) {
+			case UMLRpyPackage.IACTIVITY_GRAPH__EANNOTATIONS:
+				return ((InternalEList<InternalEObject>)(InternalEList<?>)getEAnnotations()).basicAdd(otherEnd, msgs);
+		}
+		return super.eInverseAdd(otherEnd, featureID, msgs);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
+		switch (featureID) {
+			case UMLRpyPackage.IACTIVITY_GRAPH__EANNOTATIONS:
+				return ((InternalEList<?>)getEAnnotations()).basicRemove(otherEnd, msgs);
+			case UMLRpyPackage.IACTIVITY_GRAPH__STATES:
+				return ((InternalEList<?>)getStates()).basicRemove(otherEnd, msgs);
+			case UMLRpyPackage.IACTIVITY_GRAPH__VIEWS:
+				return basicSetViews(null, msgs);
+			case UMLRpyPackage.IACTIVITY_GRAPH__PROPERTIES:
+				return basicSetProperties(null, msgs);
+			case UMLRpyPackage.IACTIVITY_GRAPH__DESCRIPTION:
+				return basicSetDescription(null, msgs);
+			case UMLRpyPackage.IACTIVITY_GRAPH__SWIMLANES:
+				return ((InternalEList<?>)getSwimlanes()).basicRemove(otherEnd, msgs);
+			case UMLRpyPackage.IACTIVITY_GRAPH__ANNOTATIONS:
+				return basicSetAnnotations(null, msgs);
+			case UMLRpyPackage.IACTIVITY_GRAPH__HYPER_LINKS:
+				return basicSetHyperLinks(null, msgs);
+			case UMLRpyPackage.IACTIVITY_GRAPH__DEPENDENCIES:
+				return ((InternalEList<?>)getDependencies()).basicRemove(otherEnd, msgs);
+			case UMLRpyPackage.IACTIVITY_GRAPH__ASSOCIATIONS:
+				return ((InternalEList<?>)getAssociations()).basicRemove(otherEnd, msgs);
+			case UMLRpyPackage.IACTIVITY_GRAPH__TAGS:
+				return basicSetTags(null, msgs);
+		}
+		return super.eInverseRemove(otherEnd, featureID, msgs);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object eGet(int featureID, boolean resolve, boolean coreType) {
+		switch (featureID) {
+			case UMLRpyPackage.IACTIVITY_GRAPH__MODIFIED_TIME_WEAK:
+				return getModifiedTimeWeak();
+			case UMLRpyPackage.IACTIVITY_GRAPH__ID:
+				return getId();
+			case UMLRpyPackage.IACTIVITY_GRAPH__MY_STATE:
+				return getMyState();
+			case UMLRpyPackage.IACTIVITY_GRAPH__NAME:
+				return getName();
+			case UMLRpyPackage.IACTIVITY_GRAPH__EANNOTATIONS:
+				return getEAnnotations();
+			case UMLRpyPackage.IACTIVITY_GRAPH__DISPLAY_NAME:
+				return getDisplayName();
+			case UMLRpyPackage.IACTIVITY_GRAPH__LAST_ID:
+				return getLastID();
+			case UMLRpyPackage.IACTIVITY_GRAPH__WEAK_CG_TIME:
+				return getWeakCGTime();
+			case UMLRpyPackage.IACTIVITY_GRAPH__STRONG_CG_TIME:
+				return getStrongCGTime();
+			case UMLRpyPackage.IACTIVITY_GRAPH__MULTIPLICITY:
+				return getMultiplicity();
+			case UMLRpyPackage.IACTIVITY_GRAPH__ITS_STATE_CHART:
+				return getItsStateChart();
+			case UMLRpyPackage.IACTIVITY_GRAPH__CLASS_MODIFIER:
+				return getClassModifier();
+			case UMLRpyPackage.IACTIVITY_GRAPH__STATES:
+				return getStates();
+			case UMLRpyPackage.IACTIVITY_GRAPH__BASE_VERSION:
+				return getBaseVersion();
+			case UMLRpyPackage.IACTIVITY_GRAPH__DIAGRAM:
+				if (resolve) return getDiagram();
+				return basicGetDiagram();
+			case UMLRpyPackage.IACTIVITY_GRAPH__VIEWS:
+				if (resolve) return getViews();
+				return basicGetViews();
+			case UMLRpyPackage.IACTIVITY_GRAPH__PROPERTIES:
+				if (resolve) return getProperties();
+				return basicGetProperties();
+			case UMLRpyPackage.IACTIVITY_GRAPH__REQUIREMEN_TRACABILITY_HANDLE:
+				return getRequiremenTracabilityHandle();
+			case UMLRpyPackage.IACTIVITY_GRAPH__DESCRIPTION:
+				if (resolve) return getDescription();
+				return basicGetDescription();
+			case UMLRpyPackage.IACTIVITY_GRAPH__SWIMLANES:
+				return getSwimlanes();
+			case UMLRpyPackage.IACTIVITY_GRAPH__STEREOTYPES:
+				if (resolve) return getStereotypes();
+				return basicGetStereotypes();
+			case UMLRpyPackage.IACTIVITY_GRAPH__ANALYSIS_MODE:
+				return getAnalysisMode();
+			case UMLRpyPackage.IACTIVITY_GRAPH__ANNOTATIONS:
+				if (resolve) return getAnnotations();
+				return basicGetAnnotations();
+			case UMLRpyPackage.IACTIVITY_GRAPH__CODE_UPDATE_CG_TIME:
+				return getCodeUpdateCGTime();
+			case UMLRpyPackage.IACTIVITY_GRAPH__OBJECT_CREATION:
+				return getObjectCreation();
+			case UMLRpyPackage.IACTIVITY_GRAPH__UML_DEPENDENCY_ID:
+				return getUmlDependencyID();
+			case UMLRpyPackage.IACTIVITY_GRAPH__HYPER_LINKS:
+				if (resolve) return getHyperLinks();
+				return basicGetHyperLinks();
+			case UMLRpyPackage.IACTIVITY_GRAPH__DEPENDENCIES:
+				return getDependencies();
+			case UMLRpyPackage.IACTIVITY_GRAPH__THE_MAIN_DIAGRAM:
+				if (resolve) return getTheMainDiagram();
+				return basicGetTheMainDiagram();
+			case UMLRpyPackage.IACTIVITY_GRAPH__ASSOCIATIONS:
+				return getAssociations();
+			case UMLRpyPackage.IACTIVITY_GRAPH__TAGS:
+				if (resolve) return getTags();
+				return basicGetTags();
+		}
+		return super.eGet(featureID, resolve, coreType);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@SuppressWarnings("unchecked")
+	@Override
+	public void eSet(int featureID, Object newValue) {
+		switch (featureID) {
+			case UMLRpyPackage.IACTIVITY_GRAPH__MODIFIED_TIME_WEAK:
+				getModifiedTimeWeak().clear();
+				getModifiedTimeWeak().addAll((Collection<? extends String>)newValue);
+				return;
+			case UMLRpyPackage.IACTIVITY_GRAPH__ID:
+				setId((String)newValue);
+				return;
+			case UMLRpyPackage.IACTIVITY_GRAPH__MY_STATE:
+				setMyState((String)newValue);
+				return;
+			case UMLRpyPackage.IACTIVITY_GRAPH__NAME:
+				setName((String)newValue);
+				return;
+			case UMLRpyPackage.IACTIVITY_GRAPH__EANNOTATIONS:
+				getEAnnotations().clear();
+				getEAnnotations().addAll((Collection<? extends EAnnotation>)newValue);
+				return;
+			case UMLRpyPackage.IACTIVITY_GRAPH__DISPLAY_NAME:
+				setDisplayName((String)newValue);
+				return;
+			case UMLRpyPackage.IACTIVITY_GRAPH__LAST_ID:
+				setLastID((String)newValue);
+				return;
+			case UMLRpyPackage.IACTIVITY_GRAPH__WEAK_CG_TIME:
+				getWeakCGTime().clear();
+				getWeakCGTime().addAll((Collection<? extends String>)newValue);
+				return;
+			case UMLRpyPackage.IACTIVITY_GRAPH__STRONG_CG_TIME:
+				getStrongCGTime().clear();
+				getStrongCGTime().addAll((Collection<? extends String>)newValue);
+				return;
+			case UMLRpyPackage.IACTIVITY_GRAPH__MULTIPLICITY:
+				setMultiplicity((String)newValue);
+				return;
+			case UMLRpyPackage.IACTIVITY_GRAPH__ITS_STATE_CHART:
+				getItsStateChart().clear();
+				getItsStateChart().addAll((Collection<? extends UnknownType>)newValue);
+				return;
+			case UMLRpyPackage.IACTIVITY_GRAPH__CLASS_MODIFIER:
+				setClassModifier((String)newValue);
+				return;
+			case UMLRpyPackage.IACTIVITY_GRAPH__STATES:
+				getStates().clear();
+				getStates().addAll((Collection<? extends ItsTargetType>)newValue);
+				return;
+			case UMLRpyPackage.IACTIVITY_GRAPH__BASE_VERSION:
+				setBaseVersion((String)newValue);
+				return;
+			case UMLRpyPackage.IACTIVITY_GRAPH__DIAGRAM:
+				setDiagram((IActivityDiagram)newValue);
+				return;
+			case UMLRpyPackage.IACTIVITY_GRAPH__VIEWS:
+				setViews((IActivityDiagram)newValue);
+				return;
+			case UMLRpyPackage.IACTIVITY_GRAPH__PROPERTIES:
+				setProperties((IPropertyContainer)newValue);
+				return;
+			case UMLRpyPackage.IACTIVITY_GRAPH__REQUIREMEN_TRACABILITY_HANDLE:
+				setRequiremenTracabilityHandle((String)newValue);
+				return;
+			case UMLRpyPackage.IACTIVITY_GRAPH__DESCRIPTION:
+				setDescription((IDescription)newValue);
+				return;
+			case UMLRpyPackage.IACTIVITY_GRAPH__SWIMLANES:
+				getSwimlanes().clear();
+				getSwimlanes().addAll((Collection<? extends ISwimlane>)newValue);
+				return;
+			case UMLRpyPackage.IACTIVITY_GRAPH__STEREOTYPES:
+				setStereotypes((IClassifier)newValue);
+				return;
+			case UMLRpyPackage.IACTIVITY_GRAPH__ANALYSIS_MODE:
+				setAnalysisMode((String)newValue);
+				return;
+			case UMLRpyPackage.IACTIVITY_GRAPH__ANNOTATIONS:
+				setAnnotations((IComment)newValue);
+				return;
+			case UMLRpyPackage.IACTIVITY_GRAPH__CODE_UPDATE_CG_TIME:
+				getCodeUpdateCGTime().clear();
+				getCodeUpdateCGTime().addAll((Collection<? extends String>)newValue);
+				return;
+			case UMLRpyPackage.IACTIVITY_GRAPH__OBJECT_CREATION:
+				setObjectCreation((String)newValue);
+				return;
+			case UMLRpyPackage.IACTIVITY_GRAPH__UML_DEPENDENCY_ID:
+				setUmlDependencyID((String)newValue);
+				return;
+			case UMLRpyPackage.IACTIVITY_GRAPH__HYPER_LINKS:
+				setHyperLinks((IMHyperLink)newValue);
+				return;
+			case UMLRpyPackage.IACTIVITY_GRAPH__DEPENDENCIES:
+				getDependencies().clear();
+				getDependencies().addAll((Collection<? extends IDependency>)newValue);
+				return;
+			case UMLRpyPackage.IACTIVITY_GRAPH__THE_MAIN_DIAGRAM:
+				setTheMainDiagram((IDiagram)newValue);
+				return;
+			case UMLRpyPackage.IACTIVITY_GRAPH__ASSOCIATIONS:
+				getAssociations().clear();
+				getAssociations().addAll((Collection<? extends IAssociationEnd>)newValue);
+				return;
+			case UMLRpyPackage.IACTIVITY_GRAPH__TAGS:
+				setTags((ITag)newValue);
+				return;
+		}
+		super.eSet(featureID, newValue);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void eUnset(int featureID) {
+		switch (featureID) {
+			case UMLRpyPackage.IACTIVITY_GRAPH__MODIFIED_TIME_WEAK:
+				getModifiedTimeWeak().clear();
+				return;
+			case UMLRpyPackage.IACTIVITY_GRAPH__ID:
+				setId(ID_EDEFAULT);
+				return;
+			case UMLRpyPackage.IACTIVITY_GRAPH__MY_STATE:
+				setMyState(MY_STATE_EDEFAULT);
+				return;
+			case UMLRpyPackage.IACTIVITY_GRAPH__NAME:
+				setName(NAME_EDEFAULT);
+				return;
+			case UMLRpyPackage.IACTIVITY_GRAPH__EANNOTATIONS:
+				getEAnnotations().clear();
+				return;
+			case UMLRpyPackage.IACTIVITY_GRAPH__DISPLAY_NAME:
+				setDisplayName(DISPLAY_NAME_EDEFAULT);
+				return;
+			case UMLRpyPackage.IACTIVITY_GRAPH__LAST_ID:
+				setLastID(LAST_ID_EDEFAULT);
+				return;
+			case UMLRpyPackage.IACTIVITY_GRAPH__WEAK_CG_TIME:
+				getWeakCGTime().clear();
+				return;
+			case UMLRpyPackage.IACTIVITY_GRAPH__STRONG_CG_TIME:
+				getStrongCGTime().clear();
+				return;
+			case UMLRpyPackage.IACTIVITY_GRAPH__MULTIPLICITY:
+				setMultiplicity(MULTIPLICITY_EDEFAULT);
+				return;
+			case UMLRpyPackage.IACTIVITY_GRAPH__ITS_STATE_CHART:
+				getItsStateChart().clear();
+				return;
+			case UMLRpyPackage.IACTIVITY_GRAPH__CLASS_MODIFIER:
+				setClassModifier(CLASS_MODIFIER_EDEFAULT);
+				return;
+			case UMLRpyPackage.IACTIVITY_GRAPH__STATES:
+				getStates().clear();
+				return;
+			case UMLRpyPackage.IACTIVITY_GRAPH__BASE_VERSION:
+				setBaseVersion(BASE_VERSION_EDEFAULT);
+				return;
+			case UMLRpyPackage.IACTIVITY_GRAPH__DIAGRAM:
+				setDiagram((IActivityDiagram)null);
+				return;
+			case UMLRpyPackage.IACTIVITY_GRAPH__VIEWS:
+				setViews((IActivityDiagram)null);
+				return;
+			case UMLRpyPackage.IACTIVITY_GRAPH__PROPERTIES:
+				setProperties((IPropertyContainer)null);
+				return;
+			case UMLRpyPackage.IACTIVITY_GRAPH__REQUIREMEN_TRACABILITY_HANDLE:
+				setRequiremenTracabilityHandle(REQUIREMEN_TRACABILITY_HANDLE_EDEFAULT);
+				return;
+			case UMLRpyPackage.IACTIVITY_GRAPH__DESCRIPTION:
+				setDescription((IDescription)null);
+				return;
+			case UMLRpyPackage.IACTIVITY_GRAPH__SWIMLANES:
+				getSwimlanes().clear();
+				return;
+			case UMLRpyPackage.IACTIVITY_GRAPH__STEREOTYPES:
+				setStereotypes((IClassifier)null);
+				return;
+			case UMLRpyPackage.IACTIVITY_GRAPH__ANALYSIS_MODE:
+				setAnalysisMode(ANALYSIS_MODE_EDEFAULT);
+				return;
+			case UMLRpyPackage.IACTIVITY_GRAPH__ANNOTATIONS:
+				setAnnotations((IComment)null);
+				return;
+			case UMLRpyPackage.IACTIVITY_GRAPH__CODE_UPDATE_CG_TIME:
+				getCodeUpdateCGTime().clear();
+				return;
+			case UMLRpyPackage.IACTIVITY_GRAPH__OBJECT_CREATION:
+				setObjectCreation(OBJECT_CREATION_EDEFAULT);
+				return;
+			case UMLRpyPackage.IACTIVITY_GRAPH__UML_DEPENDENCY_ID:
+				setUmlDependencyID(UML_DEPENDENCY_ID_EDEFAULT);
+				return;
+			case UMLRpyPackage.IACTIVITY_GRAPH__HYPER_LINKS:
+				setHyperLinks((IMHyperLink)null);
+				return;
+			case UMLRpyPackage.IACTIVITY_GRAPH__DEPENDENCIES:
+				getDependencies().clear();
+				return;
+			case UMLRpyPackage.IACTIVITY_GRAPH__THE_MAIN_DIAGRAM:
+				setTheMainDiagram((IDiagram)null);
+				return;
+			case UMLRpyPackage.IACTIVITY_GRAPH__ASSOCIATIONS:
+				getAssociations().clear();
+				return;
+			case UMLRpyPackage.IACTIVITY_GRAPH__TAGS:
+				setTags((ITag)null);
+				return;
+		}
+		super.eUnset(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public boolean eIsSet(int featureID) {
+		switch (featureID) {
+			case UMLRpyPackage.IACTIVITY_GRAPH__MODIFIED_TIME_WEAK:
+				return modifiedTimeWeak != null && !modifiedTimeWeak.isEmpty();
+			case UMLRpyPackage.IACTIVITY_GRAPH__ID:
+				return ID_EDEFAULT == null ? id != null : !ID_EDEFAULT.equals(id);
+			case UMLRpyPackage.IACTIVITY_GRAPH__MY_STATE:
+				return MY_STATE_EDEFAULT == null ? myState != null : !MY_STATE_EDEFAULT.equals(myState);
+			case UMLRpyPackage.IACTIVITY_GRAPH__NAME:
+				return NAME_EDEFAULT == null ? name != null : !NAME_EDEFAULT.equals(name);
+			case UMLRpyPackage.IACTIVITY_GRAPH__EANNOTATIONS:
+				return eAnnotations != null && !eAnnotations.isEmpty();
+			case UMLRpyPackage.IACTIVITY_GRAPH__DISPLAY_NAME:
+				return DISPLAY_NAME_EDEFAULT == null ? displayName != null : !DISPLAY_NAME_EDEFAULT.equals(displayName);
+			case UMLRpyPackage.IACTIVITY_GRAPH__LAST_ID:
+				return LAST_ID_EDEFAULT == null ? lastID != null : !LAST_ID_EDEFAULT.equals(lastID);
+			case UMLRpyPackage.IACTIVITY_GRAPH__WEAK_CG_TIME:
+				return weakCGTime != null && !weakCGTime.isEmpty();
+			case UMLRpyPackage.IACTIVITY_GRAPH__STRONG_CG_TIME:
+				return strongCGTime != null && !strongCGTime.isEmpty();
+			case UMLRpyPackage.IACTIVITY_GRAPH__MULTIPLICITY:
+				return MULTIPLICITY_EDEFAULT == null ? multiplicity != null : !MULTIPLICITY_EDEFAULT.equals(multiplicity);
+			case UMLRpyPackage.IACTIVITY_GRAPH__ITS_STATE_CHART:
+				return itsStateChart != null && !itsStateChart.isEmpty();
+			case UMLRpyPackage.IACTIVITY_GRAPH__CLASS_MODIFIER:
+				return CLASS_MODIFIER_EDEFAULT == null ? classModifier != null : !CLASS_MODIFIER_EDEFAULT.equals(classModifier);
+			case UMLRpyPackage.IACTIVITY_GRAPH__STATES:
+				return states != null && !states.isEmpty();
+			case UMLRpyPackage.IACTIVITY_GRAPH__BASE_VERSION:
+				return BASE_VERSION_EDEFAULT == null ? baseVersion != null : !BASE_VERSION_EDEFAULT.equals(baseVersion);
+			case UMLRpyPackage.IACTIVITY_GRAPH__DIAGRAM:
+				return diagram != null;
+			case UMLRpyPackage.IACTIVITY_GRAPH__VIEWS:
+				return views != null;
+			case UMLRpyPackage.IACTIVITY_GRAPH__PROPERTIES:
+				return properties != null;
+			case UMLRpyPackage.IACTIVITY_GRAPH__REQUIREMEN_TRACABILITY_HANDLE:
+				return REQUIREMEN_TRACABILITY_HANDLE_EDEFAULT == null ? requiremenTracabilityHandle != null : !REQUIREMEN_TRACABILITY_HANDLE_EDEFAULT.equals(requiremenTracabilityHandle);
+			case UMLRpyPackage.IACTIVITY_GRAPH__DESCRIPTION:
+				return description != null;
+			case UMLRpyPackage.IACTIVITY_GRAPH__SWIMLANES:
+				return swimlanes != null && !swimlanes.isEmpty();
+			case UMLRpyPackage.IACTIVITY_GRAPH__STEREOTYPES:
+				return stereotypes != null;
+			case UMLRpyPackage.IACTIVITY_GRAPH__ANALYSIS_MODE:
+				return ANALYSIS_MODE_EDEFAULT == null ? analysisMode != null : !ANALYSIS_MODE_EDEFAULT.equals(analysisMode);
+			case UMLRpyPackage.IACTIVITY_GRAPH__ANNOTATIONS:
+				return annotations != null;
+			case UMLRpyPackage.IACTIVITY_GRAPH__CODE_UPDATE_CG_TIME:
+				return codeUpdateCGTime != null && !codeUpdateCGTime.isEmpty();
+			case UMLRpyPackage.IACTIVITY_GRAPH__OBJECT_CREATION:
+				return OBJECT_CREATION_EDEFAULT == null ? objectCreation != null : !OBJECT_CREATION_EDEFAULT.equals(objectCreation);
+			case UMLRpyPackage.IACTIVITY_GRAPH__UML_DEPENDENCY_ID:
+				return UML_DEPENDENCY_ID_EDEFAULT == null ? umlDependencyID != null : !UML_DEPENDENCY_ID_EDEFAULT.equals(umlDependencyID);
+			case UMLRpyPackage.IACTIVITY_GRAPH__HYPER_LINKS:
+				return hyperLinks != null;
+			case UMLRpyPackage.IACTIVITY_GRAPH__DEPENDENCIES:
+				return dependencies != null && !dependencies.isEmpty();
+			case UMLRpyPackage.IACTIVITY_GRAPH__THE_MAIN_DIAGRAM:
+				return theMainDiagram != null;
+			case UMLRpyPackage.IACTIVITY_GRAPH__ASSOCIATIONS:
+				return associations != null && !associations.isEmpty();
+			case UMLRpyPackage.IACTIVITY_GRAPH__TAGS:
+				return tags != null;
+		}
+		return super.eIsSet(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public int eBaseStructuralFeatureID(int derivedFeatureID, Class<?> baseClass) {
+		if (baseClass == ElementsType.class) {
+			switch (derivedFeatureID) {
+				default: return -1;
+			}
+		}
+		if (baseClass == DependsOnType.class) {
+			switch (derivedFeatureID) {
+				default: return -1;
+			}
+		}
+		if (baseClass == ValueType.class) {
+			switch (derivedFeatureID) {
+				case UMLRpyPackage.IACTIVITY_GRAPH__MODIFIED_TIME_WEAK: return UMLRpyPackage.VALUE_TYPE__MODIFIED_TIME_WEAK;
+				case UMLRpyPackage.IACTIVITY_GRAPH__ID: return UMLRpyPackage.VALUE_TYPE__ID;
+				case UMLRpyPackage.IACTIVITY_GRAPH__MY_STATE: return UMLRpyPackage.VALUE_TYPE__MY_STATE;
+				case UMLRpyPackage.IACTIVITY_GRAPH__NAME: return UMLRpyPackage.VALUE_TYPE__NAME;
+				default: return -1;
+			}
+		}
+		if (baseClass == TargetType.class) {
+			switch (derivedFeatureID) {
+				default: return -1;
+			}
+		}
+		if (baseClass == M_pModelObjectType.class) {
+			switch (derivedFeatureID) {
+				default: return -1;
+			}
+		}
+		if (baseClass == EModelElement.class) {
+			switch (derivedFeatureID) {
+				case UMLRpyPackage.IACTIVITY_GRAPH__EANNOTATIONS: return EcorePackage.EMODEL_ELEMENT__EANNOTATIONS;
+				default: return -1;
+			}
+		}
+		if (baseClass == IModelElement.class) {
+			switch (derivedFeatureID) {
+				case UMLRpyPackage.IACTIVITY_GRAPH__DISPLAY_NAME: return UMLRpyPackage.IMODEL_ELEMENT__DISPLAY_NAME;
+				default: return -1;
+			}
+		}
+		return super.eBaseStructuralFeatureID(derivedFeatureID, baseClass);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public int eDerivedStructuralFeatureID(int baseFeatureID, Class<?> baseClass) {
+		if (baseClass == ElementsType.class) {
+			switch (baseFeatureID) {
+				default: return -1;
+			}
+		}
+		if (baseClass == DependsOnType.class) {
+			switch (baseFeatureID) {
+				default: return -1;
+			}
+		}
+		if (baseClass == ValueType.class) {
+			switch (baseFeatureID) {
+				case UMLRpyPackage.VALUE_TYPE__MODIFIED_TIME_WEAK: return UMLRpyPackage.IACTIVITY_GRAPH__MODIFIED_TIME_WEAK;
+				case UMLRpyPackage.VALUE_TYPE__ID: return UMLRpyPackage.IACTIVITY_GRAPH__ID;
+				case UMLRpyPackage.VALUE_TYPE__MY_STATE: return UMLRpyPackage.IACTIVITY_GRAPH__MY_STATE;
+				case UMLRpyPackage.VALUE_TYPE__NAME: return UMLRpyPackage.IACTIVITY_GRAPH__NAME;
+				default: return -1;
+			}
+		}
+		if (baseClass == TargetType.class) {
+			switch (baseFeatureID) {
+				default: return -1;
+			}
+		}
+		if (baseClass == M_pModelObjectType.class) {
+			switch (baseFeatureID) {
+				default: return -1;
+			}
+		}
+		if (baseClass == EModelElement.class) {
+			switch (baseFeatureID) {
+				case EcorePackage.EMODEL_ELEMENT__EANNOTATIONS: return UMLRpyPackage.IACTIVITY_GRAPH__EANNOTATIONS;
+				default: return -1;
+			}
+		}
+		if (baseClass == IModelElement.class) {
+			switch (baseFeatureID) {
+				case UMLRpyPackage.IMODEL_ELEMENT__DISPLAY_NAME: return UMLRpyPackage.IACTIVITY_GRAPH__DISPLAY_NAME;
+				default: return -1;
+			}
+		}
+		return super.eDerivedStructuralFeatureID(baseFeatureID, baseClass);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public int eDerivedOperationID(int baseOperationID, Class<?> baseClass) {
+		if (baseClass == ElementsType.class) {
+			switch (baseOperationID) {
+				default: return -1;
+			}
+		}
+		if (baseClass == DependsOnType.class) {
+			switch (baseOperationID) {
+				default: return -1;
+			}
+		}
+		if (baseClass == ValueType.class) {
+			switch (baseOperationID) {
+				default: return -1;
+			}
+		}
+		if (baseClass == TargetType.class) {
+			switch (baseOperationID) {
+				default: return -1;
+			}
+		}
+		if (baseClass == M_pModelObjectType.class) {
+			switch (baseOperationID) {
+				default: return -1;
+			}
+		}
+		if (baseClass == EModelElement.class) {
+			switch (baseOperationID) {
+				case EcorePackage.EMODEL_ELEMENT___GET_EANNOTATION__STRING: return UMLRpyPackage.IACTIVITY_GRAPH___GET_EANNOTATION__STRING;
+				default: return -1;
+			}
+		}
+		if (baseClass == IModelElement.class) {
+			switch (baseOperationID) {
+				default: return -1;
+			}
+		}
+		return super.eDerivedOperationID(baseOperationID, baseClass);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object eInvoke(int operationID, EList<?> arguments) throws InvocationTargetException {
+		switch (operationID) {
+			case UMLRpyPackage.IACTIVITY_GRAPH___GET_EANNOTATION__STRING:
+				return getEAnnotation((String)arguments.get(0));
+		}
+		return super.eInvoke(operationID, arguments);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String toString() {
+		if (eIsProxy()) return super.toString();
+
+		StringBuffer result = new StringBuffer(super.toString());
+		result.append(" (modifiedTimeWeak: "); //$NON-NLS-1$
+		result.append(modifiedTimeWeak);
+		result.append(", id: "); //$NON-NLS-1$
+		result.append(id);
+		result.append(", myState: "); //$NON-NLS-1$
+		result.append(myState);
+		result.append(", name: "); //$NON-NLS-1$
+		result.append(name);
+		result.append(", displayName: "); //$NON-NLS-1$
+		result.append(displayName);
+		result.append(", lastID: "); //$NON-NLS-1$
+		result.append(lastID);
+		result.append(", weakCGTime: "); //$NON-NLS-1$
+		result.append(weakCGTime);
+		result.append(", strongCGTime: "); //$NON-NLS-1$
+		result.append(strongCGTime);
+		result.append(", multiplicity: "); //$NON-NLS-1$
+		result.append(multiplicity);
+		result.append(", classModifier: "); //$NON-NLS-1$
+		result.append(classModifier);
+		result.append(", baseVersion: "); //$NON-NLS-1$
+		result.append(baseVersion);
+		result.append(", requiremenTracabilityHandle: "); //$NON-NLS-1$
+		result.append(requiremenTracabilityHandle);
+		result.append(", AnalysisMode: "); //$NON-NLS-1$
+		result.append(analysisMode);
+		result.append(", codeUpdateCGTime: "); //$NON-NLS-1$
+		result.append(codeUpdateCGTime);
+		result.append(", objectCreation: "); //$NON-NLS-1$
+		result.append(objectCreation);
+		result.append(", umlDependencyID: "); //$NON-NLS-1$
+		result.append(umlDependencyID);
+		result.append(')');
+		return result.toString();
+	}
+
+} //IActivityGraphImpl
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/IActorImpl.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/IActorImpl.java
new file mode 100755
index 0000000..b596c37
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/IActorImpl.java
@@ -0,0 +1,1728 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl;
+
+import java.util.Collection;
+
+import org.eclipse.emf.common.notify.Notification;
+import org.eclipse.emf.common.notify.NotificationChain;
+
+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.EDataTypeEList;
+import org.eclipse.emf.ecore.util.EObjectContainmentEList;
+import org.eclipse.emf.ecore.util.InternalEList;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.DependsOnType;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ElementsType;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.End1_Type;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.End2_Type;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IActor;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IAssociationEnd;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IAttribute;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IClass;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IDependency;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IDescription;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IFile;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IGeneralization;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMHyperLink;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IPort;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IPropertyContainer;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IRequirement;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IStateChart;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.M_pBaseType;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.M_pModelObjectType;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.M_subjectType;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.OperationsType;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.TheMainDiagramType;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>IActor</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * </p>
+ * <ul>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IActorImpl#getUmlDependencyID <em>Uml Dependency ID</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IActorImpl#getObjectCreation <em>Object Creation</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IActorImpl#getMultiplicity <em>Multiplicity</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IActorImpl#getId <em>Id</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IActorImpl#getMyState <em>My State</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IActorImpl#getName <em>Name</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IActorImpl#getTheMainDiagram <em>The Main Diagram</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IActorImpl#getDependencies <em>Dependencies</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IActorImpl#getLastID <em>Last ID</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IActorImpl#getWeakCGTime <em>Weak CG Time</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IActorImpl#getStrongCGTime <em>Strong CG Time</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IActorImpl#getOperations <em>Operations</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IActorImpl#getStateCharts <em>State Charts</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IActorImpl#getItsStateChart <em>Its State Chart</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IActorImpl#getAssociations <em>Associations</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IActorImpl#getClassModifier <em>Class Modifier</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IActorImpl#getHyperLinks <em>Hyper Links</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IActorImpl#getModifiedTimeWeak <em>Modified Time Weak</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IActorImpl#getPorts <em>Ports</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IActorImpl#getInheritances <em>Inheritances</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IActorImpl#getAttrs <em>Attrs</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IActorImpl#getRequiremenTracabilityHandle <em>Requiremen Tracability Handle</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IActorImpl#getDescription <em>Description</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IActorImpl#getAnnotations <em>Annotations</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IActorImpl#getComponentFiles <em>Component Files</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IActorImpl#getProperties <em>Properties</em>}</li>
+ * </ul>
+ *
+ * @generated
+ */
+public class IActorImpl extends IClassifierImpl implements IActor {
+	/**
+	 * The default value of the '{@link #getUmlDependencyID() <em>Uml Dependency ID</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getUmlDependencyID()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String UML_DEPENDENCY_ID_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getUmlDependencyID() <em>Uml Dependency ID</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getUmlDependencyID()
+	 * @generated
+	 * @ordered
+	 */
+	protected String umlDependencyID = UML_DEPENDENCY_ID_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getObjectCreation() <em>Object Creation</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getObjectCreation()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String OBJECT_CREATION_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getObjectCreation() <em>Object Creation</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getObjectCreation()
+	 * @generated
+	 * @ordered
+	 */
+	protected String objectCreation = OBJECT_CREATION_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getMultiplicity() <em>Multiplicity</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getMultiplicity()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String MULTIPLICITY_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getMultiplicity() <em>Multiplicity</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getMultiplicity()
+	 * @generated
+	 * @ordered
+	 */
+	protected String multiplicity = MULTIPLICITY_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getId() <em>Id</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getId()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String ID_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getId() <em>Id</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getId()
+	 * @generated
+	 * @ordered
+	 */
+	protected String id = ID_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getMyState() <em>My State</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getMyState()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String MY_STATE_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getMyState() <em>My State</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getMyState()
+	 * @generated
+	 * @ordered
+	 */
+	protected String myState = MY_STATE_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getName() <em>Name</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getName()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String NAME_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getName() <em>Name</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getName()
+	 * @generated
+	 * @ordered
+	 */
+	protected String name = NAME_EDEFAULT;
+
+	/**
+	 * The cached value of the '{@link #getTheMainDiagram() <em>The Main Diagram</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getTheMainDiagram()
+	 * @generated
+	 * @ordered
+	 */
+	protected TheMainDiagramType theMainDiagram;
+
+	/**
+	 * The cached value of the '{@link #getDependencies() <em>Dependencies</em>}' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getDependencies()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<IDependency> dependencies;
+
+	/**
+	 * The default value of the '{@link #getLastID() <em>Last ID</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getLastID()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String LAST_ID_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getLastID() <em>Last ID</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getLastID()
+	 * @generated
+	 * @ordered
+	 */
+	protected String lastID = LAST_ID_EDEFAULT;
+
+	/**
+	 * The cached value of the '{@link #getWeakCGTime() <em>Weak CG Time</em>}' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getWeakCGTime()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<String> weakCGTime;
+
+	/**
+	 * The cached value of the '{@link #getStrongCGTime() <em>Strong CG Time</em>}' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getStrongCGTime()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<String> strongCGTime;
+
+	/**
+	 * The cached value of the '{@link #getOperations() <em>Operations</em>}' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getOperations()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<OperationsType> operations;
+
+	/**
+	 * The cached value of the '{@link #getStateCharts() <em>State Charts</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getStateCharts()
+	 * @generated
+	 * @ordered
+	 */
+	protected IStateChart stateCharts;
+
+	/**
+	 * The cached value of the '{@link #getItsStateChart() <em>Its State Chart</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getItsStateChart()
+	 * @generated
+	 * @ordered
+	 */
+	protected IClass itsStateChart;
+
+	/**
+	 * The cached value of the '{@link #getAssociations() <em>Associations</em>}' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getAssociations()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<IAssociationEnd> associations;
+
+	/**
+	 * The default value of the '{@link #getClassModifier() <em>Class Modifier</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getClassModifier()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String CLASS_MODIFIER_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getClassModifier() <em>Class Modifier</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getClassModifier()
+	 * @generated
+	 * @ordered
+	 */
+	protected String classModifier = CLASS_MODIFIER_EDEFAULT;
+
+	/**
+	 * The cached value of the '{@link #getHyperLinks() <em>Hyper Links</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getHyperLinks()
+	 * @generated
+	 * @ordered
+	 */
+	protected IMHyperLink hyperLinks;
+
+	/**
+	 * The cached value of the '{@link #getModifiedTimeWeak() <em>Modified Time Weak</em>}' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getModifiedTimeWeak()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<String> modifiedTimeWeak;
+
+	/**
+	 * The cached value of the '{@link #getPorts() <em>Ports</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getPorts()
+	 * @generated
+	 * @ordered
+	 */
+	protected IPort ports;
+
+	/**
+	 * The cached value of the '{@link #getInheritances() <em>Inheritances</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getInheritances()
+	 * @generated
+	 * @ordered
+	 */
+	protected IGeneralization inheritances;
+
+	/**
+	 * The cached value of the '{@link #getAttrs() <em>Attrs</em>}' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getAttrs()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<IAttribute> attrs;
+
+	/**
+	 * The default value of the '{@link #getRequiremenTracabilityHandle() <em>Requiremen Tracability Handle</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getRequiremenTracabilityHandle()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String REQUIREMEN_TRACABILITY_HANDLE_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getRequiremenTracabilityHandle() <em>Requiremen Tracability Handle</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getRequiremenTracabilityHandle()
+	 * @generated
+	 * @ordered
+	 */
+	protected String requiremenTracabilityHandle = REQUIREMEN_TRACABILITY_HANDLE_EDEFAULT;
+
+	/**
+	 * The cached value of the '{@link #getDescription() <em>Description</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getDescription()
+	 * @generated
+	 * @ordered
+	 */
+	protected IDescription description;
+
+	/**
+	 * The cached value of the '{@link #getAnnotations() <em>Annotations</em>}' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getAnnotations()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<IRequirement> annotations;
+
+	/**
+	 * The cached value of the '{@link #getComponentFiles() <em>Component Files</em>}' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getComponentFiles()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<IFile> componentFiles;
+
+	/**
+	 * The cached value of the '{@link #getProperties() <em>Properties</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getProperties()
+	 * @generated
+	 * @ordered
+	 */
+	protected IPropertyContainer properties;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected IActorImpl() {
+		super();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EClass eStaticClass() {
+		return UMLRpyPackage.eINSTANCE.getIActor();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getUmlDependencyID() {
+		return umlDependencyID;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setUmlDependencyID(String newUmlDependencyID) {
+		String oldUmlDependencyID = umlDependencyID;
+		umlDependencyID = newUmlDependencyID;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IACTOR__UML_DEPENDENCY_ID, oldUmlDependencyID, umlDependencyID));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getObjectCreation() {
+		return objectCreation;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setObjectCreation(String newObjectCreation) {
+		String oldObjectCreation = objectCreation;
+		objectCreation = newObjectCreation;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IACTOR__OBJECT_CREATION, oldObjectCreation, objectCreation));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getMultiplicity() {
+		return multiplicity;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setMultiplicity(String newMultiplicity) {
+		String oldMultiplicity = multiplicity;
+		multiplicity = newMultiplicity;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IACTOR__MULTIPLICITY, oldMultiplicity, multiplicity));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getId() {
+		return id;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setId(String newId) {
+		String oldId = id;
+		id = newId;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IACTOR__ID, oldId, id));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getMyState() {
+		return myState;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setMyState(String newMyState) {
+		String oldMyState = myState;
+		myState = newMyState;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IACTOR__MY_STATE, oldMyState, myState));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getName() {
+		return name;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setName(String newName) {
+		String oldName = name;
+		name = newName;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IACTOR__NAME, oldName, name));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public TheMainDiagramType getTheMainDiagram() {
+		if (theMainDiagram != null && theMainDiagram.eIsProxy()) {
+			InternalEObject oldTheMainDiagram = (InternalEObject)theMainDiagram;
+			theMainDiagram = (TheMainDiagramType)eResolveProxy(oldTheMainDiagram);
+			if (theMainDiagram != oldTheMainDiagram) {
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.IACTOR__THE_MAIN_DIAGRAM, oldTheMainDiagram, theMainDiagram));
+			}
+		}
+		return theMainDiagram;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public TheMainDiagramType basicGetTheMainDiagram() {
+		return theMainDiagram;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setTheMainDiagram(TheMainDiagramType newTheMainDiagram) {
+		TheMainDiagramType oldTheMainDiagram = theMainDiagram;
+		theMainDiagram = newTheMainDiagram;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IACTOR__THE_MAIN_DIAGRAM, oldTheMainDiagram, theMainDiagram));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<IDependency> getDependencies() {
+		if (dependencies == null) {
+			dependencies = new EObjectContainmentEList.Resolving<IDependency>(IDependency.class, this, UMLRpyPackage.IACTOR__DEPENDENCIES);
+		}
+		return dependencies;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getLastID() {
+		return lastID;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setLastID(String newLastID) {
+		String oldLastID = lastID;
+		lastID = newLastID;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IACTOR__LAST_ID, oldLastID, lastID));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<String> getWeakCGTime() {
+		if (weakCGTime == null) {
+			weakCGTime = new EDataTypeEList<String>(String.class, this, UMLRpyPackage.IACTOR__WEAK_CG_TIME);
+		}
+		return weakCGTime;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<String> getStrongCGTime() {
+		if (strongCGTime == null) {
+			strongCGTime = new EDataTypeEList<String>(String.class, this, UMLRpyPackage.IACTOR__STRONG_CG_TIME);
+		}
+		return strongCGTime;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<OperationsType> getOperations() {
+		if (operations == null) {
+			operations = new EObjectContainmentEList.Resolving<OperationsType>(OperationsType.class, this, UMLRpyPackage.IACTOR__OPERATIONS);
+		}
+		return operations;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IStateChart getStateCharts() {
+		if (stateCharts != null && stateCharts.eIsProxy()) {
+			InternalEObject oldStateCharts = (InternalEObject)stateCharts;
+			stateCharts = (IStateChart)eResolveProxy(oldStateCharts);
+			if (stateCharts != oldStateCharts) {
+				InternalEObject newStateCharts = (InternalEObject)stateCharts;
+				NotificationChain msgs = oldStateCharts.eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IACTOR__STATE_CHARTS, null, null);
+				if (newStateCharts.eInternalContainer() == null) {
+					msgs = newStateCharts.eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IACTOR__STATE_CHARTS, null, msgs);
+				}
+				if (msgs != null) msgs.dispatch();
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.IACTOR__STATE_CHARTS, oldStateCharts, stateCharts));
+			}
+		}
+		return stateCharts;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IStateChart basicGetStateCharts() {
+		return stateCharts;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public NotificationChain basicSetStateCharts(IStateChart newStateCharts, NotificationChain msgs) {
+		IStateChart oldStateCharts = stateCharts;
+		stateCharts = newStateCharts;
+		if (eNotificationRequired()) {
+			ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IACTOR__STATE_CHARTS, oldStateCharts, newStateCharts);
+			if (msgs == null) msgs = notification; else msgs.add(notification);
+		}
+		return msgs;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setStateCharts(IStateChart newStateCharts) {
+		if (newStateCharts != stateCharts) {
+			NotificationChain msgs = null;
+			if (stateCharts != null)
+				msgs = ((InternalEObject)stateCharts).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IACTOR__STATE_CHARTS, null, msgs);
+			if (newStateCharts != null)
+				msgs = ((InternalEObject)newStateCharts).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IACTOR__STATE_CHARTS, null, msgs);
+			msgs = basicSetStateCharts(newStateCharts, msgs);
+			if (msgs != null) msgs.dispatch();
+		}
+		else if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IACTOR__STATE_CHARTS, newStateCharts, newStateCharts));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IClass getItsStateChart() {
+		if (itsStateChart != null && itsStateChart.eIsProxy()) {
+			InternalEObject oldItsStateChart = (InternalEObject)itsStateChart;
+			itsStateChart = (IClass)eResolveProxy(oldItsStateChart);
+			if (itsStateChart != oldItsStateChart) {
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.IACTOR__ITS_STATE_CHART, oldItsStateChart, itsStateChart));
+			}
+		}
+		return itsStateChart;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IClass basicGetItsStateChart() {
+		return itsStateChart;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setItsStateChart(IClass newItsStateChart) {
+		IClass oldItsStateChart = itsStateChart;
+		itsStateChart = newItsStateChart;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IACTOR__ITS_STATE_CHART, oldItsStateChart, itsStateChart));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<IAssociationEnd> getAssociations() {
+		if (associations == null) {
+			associations = new EObjectContainmentEList.Resolving<IAssociationEnd>(IAssociationEnd.class, this, UMLRpyPackage.IACTOR__ASSOCIATIONS);
+		}
+		return associations;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getClassModifier() {
+		return classModifier;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setClassModifier(String newClassModifier) {
+		String oldClassModifier = classModifier;
+		classModifier = newClassModifier;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IACTOR__CLASS_MODIFIER, oldClassModifier, classModifier));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IMHyperLink getHyperLinks() {
+		if (hyperLinks != null && hyperLinks.eIsProxy()) {
+			InternalEObject oldHyperLinks = (InternalEObject)hyperLinks;
+			hyperLinks = (IMHyperLink)eResolveProxy(oldHyperLinks);
+			if (hyperLinks != oldHyperLinks) {
+				InternalEObject newHyperLinks = (InternalEObject)hyperLinks;
+				NotificationChain msgs = oldHyperLinks.eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IACTOR__HYPER_LINKS, null, null);
+				if (newHyperLinks.eInternalContainer() == null) {
+					msgs = newHyperLinks.eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IACTOR__HYPER_LINKS, null, msgs);
+				}
+				if (msgs != null) msgs.dispatch();
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.IACTOR__HYPER_LINKS, oldHyperLinks, hyperLinks));
+			}
+		}
+		return hyperLinks;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IMHyperLink basicGetHyperLinks() {
+		return hyperLinks;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public NotificationChain basicSetHyperLinks(IMHyperLink newHyperLinks, NotificationChain msgs) {
+		IMHyperLink oldHyperLinks = hyperLinks;
+		hyperLinks = newHyperLinks;
+		if (eNotificationRequired()) {
+			ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IACTOR__HYPER_LINKS, oldHyperLinks, newHyperLinks);
+			if (msgs == null) msgs = notification; else msgs.add(notification);
+		}
+		return msgs;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setHyperLinks(IMHyperLink newHyperLinks) {
+		if (newHyperLinks != hyperLinks) {
+			NotificationChain msgs = null;
+			if (hyperLinks != null)
+				msgs = ((InternalEObject)hyperLinks).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IACTOR__HYPER_LINKS, null, msgs);
+			if (newHyperLinks != null)
+				msgs = ((InternalEObject)newHyperLinks).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IACTOR__HYPER_LINKS, null, msgs);
+			msgs = basicSetHyperLinks(newHyperLinks, msgs);
+			if (msgs != null) msgs.dispatch();
+		}
+		else if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IACTOR__HYPER_LINKS, newHyperLinks, newHyperLinks));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<String> getModifiedTimeWeak() {
+		if (modifiedTimeWeak == null) {
+			modifiedTimeWeak = new EDataTypeEList<String>(String.class, this, UMLRpyPackage.IACTOR__MODIFIED_TIME_WEAK);
+		}
+		return modifiedTimeWeak;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IPort getPorts() {
+		if (ports != null && ports.eIsProxy()) {
+			InternalEObject oldPorts = (InternalEObject)ports;
+			ports = (IPort)eResolveProxy(oldPorts);
+			if (ports != oldPorts) {
+				InternalEObject newPorts = (InternalEObject)ports;
+				NotificationChain msgs = oldPorts.eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IACTOR__PORTS, null, null);
+				if (newPorts.eInternalContainer() == null) {
+					msgs = newPorts.eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IACTOR__PORTS, null, msgs);
+				}
+				if (msgs != null) msgs.dispatch();
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.IACTOR__PORTS, oldPorts, ports));
+			}
+		}
+		return ports;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IPort basicGetPorts() {
+		return ports;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public NotificationChain basicSetPorts(IPort newPorts, NotificationChain msgs) {
+		IPort oldPorts = ports;
+		ports = newPorts;
+		if (eNotificationRequired()) {
+			ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IACTOR__PORTS, oldPorts, newPorts);
+			if (msgs == null) msgs = notification; else msgs.add(notification);
+		}
+		return msgs;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setPorts(IPort newPorts) {
+		if (newPorts != ports) {
+			NotificationChain msgs = null;
+			if (ports != null)
+				msgs = ((InternalEObject)ports).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IACTOR__PORTS, null, msgs);
+			if (newPorts != null)
+				msgs = ((InternalEObject)newPorts).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IACTOR__PORTS, null, msgs);
+			msgs = basicSetPorts(newPorts, msgs);
+			if (msgs != null) msgs.dispatch();
+		}
+		else if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IACTOR__PORTS, newPorts, newPorts));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IGeneralization getInheritances() {
+		if (inheritances != null && inheritances.eIsProxy()) {
+			InternalEObject oldInheritances = (InternalEObject)inheritances;
+			inheritances = (IGeneralization)eResolveProxy(oldInheritances);
+			if (inheritances != oldInheritances) {
+				InternalEObject newInheritances = (InternalEObject)inheritances;
+				NotificationChain msgs = oldInheritances.eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IACTOR__INHERITANCES, null, null);
+				if (newInheritances.eInternalContainer() == null) {
+					msgs = newInheritances.eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IACTOR__INHERITANCES, null, msgs);
+				}
+				if (msgs != null) msgs.dispatch();
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.IACTOR__INHERITANCES, oldInheritances, inheritances));
+			}
+		}
+		return inheritances;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IGeneralization basicGetInheritances() {
+		return inheritances;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public NotificationChain basicSetInheritances(IGeneralization newInheritances, NotificationChain msgs) {
+		IGeneralization oldInheritances = inheritances;
+		inheritances = newInheritances;
+		if (eNotificationRequired()) {
+			ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IACTOR__INHERITANCES, oldInheritances, newInheritances);
+			if (msgs == null) msgs = notification; else msgs.add(notification);
+		}
+		return msgs;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setInheritances(IGeneralization newInheritances) {
+		if (newInheritances != inheritances) {
+			NotificationChain msgs = null;
+			if (inheritances != null)
+				msgs = ((InternalEObject)inheritances).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IACTOR__INHERITANCES, null, msgs);
+			if (newInheritances != null)
+				msgs = ((InternalEObject)newInheritances).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IACTOR__INHERITANCES, null, msgs);
+			msgs = basicSetInheritances(newInheritances, msgs);
+			if (msgs != null) msgs.dispatch();
+		}
+		else if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IACTOR__INHERITANCES, newInheritances, newInheritances));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<IAttribute> getAttrs() {
+		if (attrs == null) {
+			attrs = new EObjectContainmentEList.Resolving<IAttribute>(IAttribute.class, this, UMLRpyPackage.IACTOR__ATTRS);
+		}
+		return attrs;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getRequiremenTracabilityHandle() {
+		return requiremenTracabilityHandle;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setRequiremenTracabilityHandle(String newRequiremenTracabilityHandle) {
+		String oldRequiremenTracabilityHandle = requiremenTracabilityHandle;
+		requiremenTracabilityHandle = newRequiremenTracabilityHandle;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IACTOR__REQUIREMEN_TRACABILITY_HANDLE, oldRequiremenTracabilityHandle, requiremenTracabilityHandle));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IDescription getDescription() {
+		if (description != null && description.eIsProxy()) {
+			InternalEObject oldDescription = (InternalEObject)description;
+			description = (IDescription)eResolveProxy(oldDescription);
+			if (description != oldDescription) {
+				InternalEObject newDescription = (InternalEObject)description;
+				NotificationChain msgs = oldDescription.eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IACTOR__DESCRIPTION, null, null);
+				if (newDescription.eInternalContainer() == null) {
+					msgs = newDescription.eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IACTOR__DESCRIPTION, null, msgs);
+				}
+				if (msgs != null) msgs.dispatch();
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.IACTOR__DESCRIPTION, oldDescription, description));
+			}
+		}
+		return description;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IDescription basicGetDescription() {
+		return description;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public NotificationChain basicSetDescription(IDescription newDescription, NotificationChain msgs) {
+		IDescription oldDescription = description;
+		description = newDescription;
+		if (eNotificationRequired()) {
+			ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IACTOR__DESCRIPTION, oldDescription, newDescription);
+			if (msgs == null) msgs = notification; else msgs.add(notification);
+		}
+		return msgs;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setDescription(IDescription newDescription) {
+		if (newDescription != description) {
+			NotificationChain msgs = null;
+			if (description != null)
+				msgs = ((InternalEObject)description).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IACTOR__DESCRIPTION, null, msgs);
+			if (newDescription != null)
+				msgs = ((InternalEObject)newDescription).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IACTOR__DESCRIPTION, null, msgs);
+			msgs = basicSetDescription(newDescription, msgs);
+			if (msgs != null) msgs.dispatch();
+		}
+		else if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IACTOR__DESCRIPTION, newDescription, newDescription));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<IRequirement> getAnnotations() {
+		if (annotations == null) {
+			annotations = new EObjectContainmentEList.Resolving<IRequirement>(IRequirement.class, this, UMLRpyPackage.IACTOR__ANNOTATIONS);
+		}
+		return annotations;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<IFile> getComponentFiles() {
+		if (componentFiles == null) {
+			componentFiles = new EObjectContainmentEList.Resolving<IFile>(IFile.class, this, UMLRpyPackage.IACTOR__COMPONENT_FILES);
+		}
+		return componentFiles;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IPropertyContainer getProperties() {
+		if (properties != null && properties.eIsProxy()) {
+			InternalEObject oldProperties = (InternalEObject)properties;
+			properties = (IPropertyContainer)eResolveProxy(oldProperties);
+			if (properties != oldProperties) {
+				InternalEObject newProperties = (InternalEObject)properties;
+				NotificationChain msgs = oldProperties.eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IACTOR__PROPERTIES, null, null);
+				if (newProperties.eInternalContainer() == null) {
+					msgs = newProperties.eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IACTOR__PROPERTIES, null, msgs);
+				}
+				if (msgs != null) msgs.dispatch();
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.IACTOR__PROPERTIES, oldProperties, properties));
+			}
+		}
+		return properties;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IPropertyContainer basicGetProperties() {
+		return properties;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public NotificationChain basicSetProperties(IPropertyContainer newProperties, NotificationChain msgs) {
+		IPropertyContainer oldProperties = properties;
+		properties = newProperties;
+		if (eNotificationRequired()) {
+			ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IACTOR__PROPERTIES, oldProperties, newProperties);
+			if (msgs == null) msgs = notification; else msgs.add(notification);
+		}
+		return msgs;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setProperties(IPropertyContainer newProperties) {
+		if (newProperties != properties) {
+			NotificationChain msgs = null;
+			if (properties != null)
+				msgs = ((InternalEObject)properties).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IACTOR__PROPERTIES, null, msgs);
+			if (newProperties != null)
+				msgs = ((InternalEObject)newProperties).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IACTOR__PROPERTIES, null, msgs);
+			msgs = basicSetProperties(newProperties, msgs);
+			if (msgs != null) msgs.dispatch();
+		}
+		else if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IACTOR__PROPERTIES, newProperties, newProperties));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
+		switch (featureID) {
+			case UMLRpyPackage.IACTOR__DEPENDENCIES:
+				return ((InternalEList<?>)getDependencies()).basicRemove(otherEnd, msgs);
+			case UMLRpyPackage.IACTOR__OPERATIONS:
+				return ((InternalEList<?>)getOperations()).basicRemove(otherEnd, msgs);
+			case UMLRpyPackage.IACTOR__STATE_CHARTS:
+				return basicSetStateCharts(null, msgs);
+			case UMLRpyPackage.IACTOR__ASSOCIATIONS:
+				return ((InternalEList<?>)getAssociations()).basicRemove(otherEnd, msgs);
+			case UMLRpyPackage.IACTOR__HYPER_LINKS:
+				return basicSetHyperLinks(null, msgs);
+			case UMLRpyPackage.IACTOR__PORTS:
+				return basicSetPorts(null, msgs);
+			case UMLRpyPackage.IACTOR__INHERITANCES:
+				return basicSetInheritances(null, msgs);
+			case UMLRpyPackage.IACTOR__ATTRS:
+				return ((InternalEList<?>)getAttrs()).basicRemove(otherEnd, msgs);
+			case UMLRpyPackage.IACTOR__DESCRIPTION:
+				return basicSetDescription(null, msgs);
+			case UMLRpyPackage.IACTOR__ANNOTATIONS:
+				return ((InternalEList<?>)getAnnotations()).basicRemove(otherEnd, msgs);
+			case UMLRpyPackage.IACTOR__COMPONENT_FILES:
+				return ((InternalEList<?>)getComponentFiles()).basicRemove(otherEnd, msgs);
+			case UMLRpyPackage.IACTOR__PROPERTIES:
+				return basicSetProperties(null, msgs);
+		}
+		return super.eInverseRemove(otherEnd, featureID, msgs);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object eGet(int featureID, boolean resolve, boolean coreType) {
+		switch (featureID) {
+			case UMLRpyPackage.IACTOR__UML_DEPENDENCY_ID:
+				return getUmlDependencyID();
+			case UMLRpyPackage.IACTOR__OBJECT_CREATION:
+				return getObjectCreation();
+			case UMLRpyPackage.IACTOR__MULTIPLICITY:
+				return getMultiplicity();
+			case UMLRpyPackage.IACTOR__ID:
+				return getId();
+			case UMLRpyPackage.IACTOR__MY_STATE:
+				return getMyState();
+			case UMLRpyPackage.IACTOR__NAME:
+				return getName();
+			case UMLRpyPackage.IACTOR__THE_MAIN_DIAGRAM:
+				if (resolve) return getTheMainDiagram();
+				return basicGetTheMainDiagram();
+			case UMLRpyPackage.IACTOR__DEPENDENCIES:
+				return getDependencies();
+			case UMLRpyPackage.IACTOR__LAST_ID:
+				return getLastID();
+			case UMLRpyPackage.IACTOR__WEAK_CG_TIME:
+				return getWeakCGTime();
+			case UMLRpyPackage.IACTOR__STRONG_CG_TIME:
+				return getStrongCGTime();
+			case UMLRpyPackage.IACTOR__OPERATIONS:
+				return getOperations();
+			case UMLRpyPackage.IACTOR__STATE_CHARTS:
+				if (resolve) return getStateCharts();
+				return basicGetStateCharts();
+			case UMLRpyPackage.IACTOR__ITS_STATE_CHART:
+				if (resolve) return getItsStateChart();
+				return basicGetItsStateChart();
+			case UMLRpyPackage.IACTOR__ASSOCIATIONS:
+				return getAssociations();
+			case UMLRpyPackage.IACTOR__CLASS_MODIFIER:
+				return getClassModifier();
+			case UMLRpyPackage.IACTOR__HYPER_LINKS:
+				if (resolve) return getHyperLinks();
+				return basicGetHyperLinks();
+			case UMLRpyPackage.IACTOR__MODIFIED_TIME_WEAK:
+				return getModifiedTimeWeak();
+			case UMLRpyPackage.IACTOR__PORTS:
+				if (resolve) return getPorts();
+				return basicGetPorts();
+			case UMLRpyPackage.IACTOR__INHERITANCES:
+				if (resolve) return getInheritances();
+				return basicGetInheritances();
+			case UMLRpyPackage.IACTOR__ATTRS:
+				return getAttrs();
+			case UMLRpyPackage.IACTOR__REQUIREMEN_TRACABILITY_HANDLE:
+				return getRequiremenTracabilityHandle();
+			case UMLRpyPackage.IACTOR__DESCRIPTION:
+				if (resolve) return getDescription();
+				return basicGetDescription();
+			case UMLRpyPackage.IACTOR__ANNOTATIONS:
+				return getAnnotations();
+			case UMLRpyPackage.IACTOR__COMPONENT_FILES:
+				return getComponentFiles();
+			case UMLRpyPackage.IACTOR__PROPERTIES:
+				if (resolve) return getProperties();
+				return basicGetProperties();
+		}
+		return super.eGet(featureID, resolve, coreType);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@SuppressWarnings("unchecked")
+	@Override
+	public void eSet(int featureID, Object newValue) {
+		switch (featureID) {
+			case UMLRpyPackage.IACTOR__UML_DEPENDENCY_ID:
+				setUmlDependencyID((String)newValue);
+				return;
+			case UMLRpyPackage.IACTOR__OBJECT_CREATION:
+				setObjectCreation((String)newValue);
+				return;
+			case UMLRpyPackage.IACTOR__MULTIPLICITY:
+				setMultiplicity((String)newValue);
+				return;
+			case UMLRpyPackage.IACTOR__ID:
+				setId((String)newValue);
+				return;
+			case UMLRpyPackage.IACTOR__MY_STATE:
+				setMyState((String)newValue);
+				return;
+			case UMLRpyPackage.IACTOR__NAME:
+				setName((String)newValue);
+				return;
+			case UMLRpyPackage.IACTOR__THE_MAIN_DIAGRAM:
+				setTheMainDiagram((TheMainDiagramType)newValue);
+				return;
+			case UMLRpyPackage.IACTOR__DEPENDENCIES:
+				getDependencies().clear();
+				getDependencies().addAll((Collection<? extends IDependency>)newValue);
+				return;
+			case UMLRpyPackage.IACTOR__LAST_ID:
+				setLastID((String)newValue);
+				return;
+			case UMLRpyPackage.IACTOR__WEAK_CG_TIME:
+				getWeakCGTime().clear();
+				getWeakCGTime().addAll((Collection<? extends String>)newValue);
+				return;
+			case UMLRpyPackage.IACTOR__STRONG_CG_TIME:
+				getStrongCGTime().clear();
+				getStrongCGTime().addAll((Collection<? extends String>)newValue);
+				return;
+			case UMLRpyPackage.IACTOR__OPERATIONS:
+				getOperations().clear();
+				getOperations().addAll((Collection<? extends OperationsType>)newValue);
+				return;
+			case UMLRpyPackage.IACTOR__STATE_CHARTS:
+				setStateCharts((IStateChart)newValue);
+				return;
+			case UMLRpyPackage.IACTOR__ITS_STATE_CHART:
+				setItsStateChart((IClass)newValue);
+				return;
+			case UMLRpyPackage.IACTOR__ASSOCIATIONS:
+				getAssociations().clear();
+				getAssociations().addAll((Collection<? extends IAssociationEnd>)newValue);
+				return;
+			case UMLRpyPackage.IACTOR__CLASS_MODIFIER:
+				setClassModifier((String)newValue);
+				return;
+			case UMLRpyPackage.IACTOR__HYPER_LINKS:
+				setHyperLinks((IMHyperLink)newValue);
+				return;
+			case UMLRpyPackage.IACTOR__MODIFIED_TIME_WEAK:
+				getModifiedTimeWeak().clear();
+				getModifiedTimeWeak().addAll((Collection<? extends String>)newValue);
+				return;
+			case UMLRpyPackage.IACTOR__PORTS:
+				setPorts((IPort)newValue);
+				return;
+			case UMLRpyPackage.IACTOR__INHERITANCES:
+				setInheritances((IGeneralization)newValue);
+				return;
+			case UMLRpyPackage.IACTOR__ATTRS:
+				getAttrs().clear();
+				getAttrs().addAll((Collection<? extends IAttribute>)newValue);
+				return;
+			case UMLRpyPackage.IACTOR__REQUIREMEN_TRACABILITY_HANDLE:
+				setRequiremenTracabilityHandle((String)newValue);
+				return;
+			case UMLRpyPackage.IACTOR__DESCRIPTION:
+				setDescription((IDescription)newValue);
+				return;
+			case UMLRpyPackage.IACTOR__ANNOTATIONS:
+				getAnnotations().clear();
+				getAnnotations().addAll((Collection<? extends IRequirement>)newValue);
+				return;
+			case UMLRpyPackage.IACTOR__COMPONENT_FILES:
+				getComponentFiles().clear();
+				getComponentFiles().addAll((Collection<? extends IFile>)newValue);
+				return;
+			case UMLRpyPackage.IACTOR__PROPERTIES:
+				setProperties((IPropertyContainer)newValue);
+				return;
+		}
+		super.eSet(featureID, newValue);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void eUnset(int featureID) {
+		switch (featureID) {
+			case UMLRpyPackage.IACTOR__UML_DEPENDENCY_ID:
+				setUmlDependencyID(UML_DEPENDENCY_ID_EDEFAULT);
+				return;
+			case UMLRpyPackage.IACTOR__OBJECT_CREATION:
+				setObjectCreation(OBJECT_CREATION_EDEFAULT);
+				return;
+			case UMLRpyPackage.IACTOR__MULTIPLICITY:
+				setMultiplicity(MULTIPLICITY_EDEFAULT);
+				return;
+			case UMLRpyPackage.IACTOR__ID:
+				setId(ID_EDEFAULT);
+				return;
+			case UMLRpyPackage.IACTOR__MY_STATE:
+				setMyState(MY_STATE_EDEFAULT);
+				return;
+			case UMLRpyPackage.IACTOR__NAME:
+				setName(NAME_EDEFAULT);
+				return;
+			case UMLRpyPackage.IACTOR__THE_MAIN_DIAGRAM:
+				setTheMainDiagram((TheMainDiagramType)null);
+				return;
+			case UMLRpyPackage.IACTOR__DEPENDENCIES:
+				getDependencies().clear();
+				return;
+			case UMLRpyPackage.IACTOR__LAST_ID:
+				setLastID(LAST_ID_EDEFAULT);
+				return;
+			case UMLRpyPackage.IACTOR__WEAK_CG_TIME:
+				getWeakCGTime().clear();
+				return;
+			case UMLRpyPackage.IACTOR__STRONG_CG_TIME:
+				getStrongCGTime().clear();
+				return;
+			case UMLRpyPackage.IACTOR__OPERATIONS:
+				getOperations().clear();
+				return;
+			case UMLRpyPackage.IACTOR__STATE_CHARTS:
+				setStateCharts((IStateChart)null);
+				return;
+			case UMLRpyPackage.IACTOR__ITS_STATE_CHART:
+				setItsStateChart((IClass)null);
+				return;
+			case UMLRpyPackage.IACTOR__ASSOCIATIONS:
+				getAssociations().clear();
+				return;
+			case UMLRpyPackage.IACTOR__CLASS_MODIFIER:
+				setClassModifier(CLASS_MODIFIER_EDEFAULT);
+				return;
+			case UMLRpyPackage.IACTOR__HYPER_LINKS:
+				setHyperLinks((IMHyperLink)null);
+				return;
+			case UMLRpyPackage.IACTOR__MODIFIED_TIME_WEAK:
+				getModifiedTimeWeak().clear();
+				return;
+			case UMLRpyPackage.IACTOR__PORTS:
+				setPorts((IPort)null);
+				return;
+			case UMLRpyPackage.IACTOR__INHERITANCES:
+				setInheritances((IGeneralization)null);
+				return;
+			case UMLRpyPackage.IACTOR__ATTRS:
+				getAttrs().clear();
+				return;
+			case UMLRpyPackage.IACTOR__REQUIREMEN_TRACABILITY_HANDLE:
+				setRequiremenTracabilityHandle(REQUIREMEN_TRACABILITY_HANDLE_EDEFAULT);
+				return;
+			case UMLRpyPackage.IACTOR__DESCRIPTION:
+				setDescription((IDescription)null);
+				return;
+			case UMLRpyPackage.IACTOR__ANNOTATIONS:
+				getAnnotations().clear();
+				return;
+			case UMLRpyPackage.IACTOR__COMPONENT_FILES:
+				getComponentFiles().clear();
+				return;
+			case UMLRpyPackage.IACTOR__PROPERTIES:
+				setProperties((IPropertyContainer)null);
+				return;
+		}
+		super.eUnset(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public boolean eIsSet(int featureID) {
+		switch (featureID) {
+			case UMLRpyPackage.IACTOR__UML_DEPENDENCY_ID:
+				return UML_DEPENDENCY_ID_EDEFAULT == null ? umlDependencyID != null : !UML_DEPENDENCY_ID_EDEFAULT.equals(umlDependencyID);
+			case UMLRpyPackage.IACTOR__OBJECT_CREATION:
+				return OBJECT_CREATION_EDEFAULT == null ? objectCreation != null : !OBJECT_CREATION_EDEFAULT.equals(objectCreation);
+			case UMLRpyPackage.IACTOR__MULTIPLICITY:
+				return MULTIPLICITY_EDEFAULT == null ? multiplicity != null : !MULTIPLICITY_EDEFAULT.equals(multiplicity);
+			case UMLRpyPackage.IACTOR__ID:
+				return ID_EDEFAULT == null ? id != null : !ID_EDEFAULT.equals(id);
+			case UMLRpyPackage.IACTOR__MY_STATE:
+				return MY_STATE_EDEFAULT == null ? myState != null : !MY_STATE_EDEFAULT.equals(myState);
+			case UMLRpyPackage.IACTOR__NAME:
+				return NAME_EDEFAULT == null ? name != null : !NAME_EDEFAULT.equals(name);
+			case UMLRpyPackage.IACTOR__THE_MAIN_DIAGRAM:
+				return theMainDiagram != null;
+			case UMLRpyPackage.IACTOR__DEPENDENCIES:
+				return dependencies != null && !dependencies.isEmpty();
+			case UMLRpyPackage.IACTOR__LAST_ID:
+				return LAST_ID_EDEFAULT == null ? lastID != null : !LAST_ID_EDEFAULT.equals(lastID);
+			case UMLRpyPackage.IACTOR__WEAK_CG_TIME:
+				return weakCGTime != null && !weakCGTime.isEmpty();
+			case UMLRpyPackage.IACTOR__STRONG_CG_TIME:
+				return strongCGTime != null && !strongCGTime.isEmpty();
+			case UMLRpyPackage.IACTOR__OPERATIONS:
+				return operations != null && !operations.isEmpty();
+			case UMLRpyPackage.IACTOR__STATE_CHARTS:
+				return stateCharts != null;
+			case UMLRpyPackage.IACTOR__ITS_STATE_CHART:
+				return itsStateChart != null;
+			case UMLRpyPackage.IACTOR__ASSOCIATIONS:
+				return associations != null && !associations.isEmpty();
+			case UMLRpyPackage.IACTOR__CLASS_MODIFIER:
+				return CLASS_MODIFIER_EDEFAULT == null ? classModifier != null : !CLASS_MODIFIER_EDEFAULT.equals(classModifier);
+			case UMLRpyPackage.IACTOR__HYPER_LINKS:
+				return hyperLinks != null;
+			case UMLRpyPackage.IACTOR__MODIFIED_TIME_WEAK:
+				return modifiedTimeWeak != null && !modifiedTimeWeak.isEmpty();
+			case UMLRpyPackage.IACTOR__PORTS:
+				return ports != null;
+			case UMLRpyPackage.IACTOR__INHERITANCES:
+				return inheritances != null;
+			case UMLRpyPackage.IACTOR__ATTRS:
+				return attrs != null && !attrs.isEmpty();
+			case UMLRpyPackage.IACTOR__REQUIREMEN_TRACABILITY_HANDLE:
+				return REQUIREMEN_TRACABILITY_HANDLE_EDEFAULT == null ? requiremenTracabilityHandle != null : !REQUIREMEN_TRACABILITY_HANDLE_EDEFAULT.equals(requiremenTracabilityHandle);
+			case UMLRpyPackage.IACTOR__DESCRIPTION:
+				return description != null;
+			case UMLRpyPackage.IACTOR__ANNOTATIONS:
+				return annotations != null && !annotations.isEmpty();
+			case UMLRpyPackage.IACTOR__COMPONENT_FILES:
+				return componentFiles != null && !componentFiles.isEmpty();
+			case UMLRpyPackage.IACTOR__PROPERTIES:
+				return properties != null;
+		}
+		return super.eIsSet(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public int eBaseStructuralFeatureID(int derivedFeatureID, Class<?> baseClass) {
+		if (baseClass == M_pModelObjectType.class) {
+			switch (derivedFeatureID) {
+				default: return -1;
+			}
+		}
+		if (baseClass == M_pBaseType.class) {
+			switch (derivedFeatureID) {
+				default: return -1;
+			}
+		}
+		if (baseClass == ElementsType.class) {
+			switch (derivedFeatureID) {
+				default: return -1;
+			}
+		}
+		if (baseClass == DependsOnType.class) {
+			switch (derivedFeatureID) {
+				default: return -1;
+			}
+		}
+		if (baseClass == M_subjectType.class) {
+			switch (derivedFeatureID) {
+				case UMLRpyPackage.IACTOR__UML_DEPENDENCY_ID: return UMLRpyPackage.MSUBJECT_TYPE__UML_DEPENDENCY_ID;
+				case UMLRpyPackage.IACTOR__OBJECT_CREATION: return UMLRpyPackage.MSUBJECT_TYPE__OBJECT_CREATION;
+				default: return -1;
+			}
+		}
+		if (baseClass == End1_Type.class) {
+			switch (derivedFeatureID) {
+				default: return -1;
+			}
+		}
+		if (baseClass == End2_Type.class) {
+			switch (derivedFeatureID) {
+				case UMLRpyPackage.IACTOR__MULTIPLICITY: return UMLRpyPackage.END2_TYPE__MULTIPLICITY;
+				default: return -1;
+			}
+		}
+		return super.eBaseStructuralFeatureID(derivedFeatureID, baseClass);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public int eDerivedStructuralFeatureID(int baseFeatureID, Class<?> baseClass) {
+		if (baseClass == M_pModelObjectType.class) {
+			switch (baseFeatureID) {
+				default: return -1;
+			}
+		}
+		if (baseClass == M_pBaseType.class) {
+			switch (baseFeatureID) {
+				default: return -1;
+			}
+		}
+		if (baseClass == ElementsType.class) {
+			switch (baseFeatureID) {
+				default: return -1;
+			}
+		}
+		if (baseClass == DependsOnType.class) {
+			switch (baseFeatureID) {
+				default: return -1;
+			}
+		}
+		if (baseClass == M_subjectType.class) {
+			switch (baseFeatureID) {
+				case UMLRpyPackage.MSUBJECT_TYPE__UML_DEPENDENCY_ID: return UMLRpyPackage.IACTOR__UML_DEPENDENCY_ID;
+				case UMLRpyPackage.MSUBJECT_TYPE__OBJECT_CREATION: return UMLRpyPackage.IACTOR__OBJECT_CREATION;
+				default: return -1;
+			}
+		}
+		if (baseClass == End1_Type.class) {
+			switch (baseFeatureID) {
+				default: return -1;
+			}
+		}
+		if (baseClass == End2_Type.class) {
+			switch (baseFeatureID) {
+				case UMLRpyPackage.END2_TYPE__MULTIPLICITY: return UMLRpyPackage.IACTOR__MULTIPLICITY;
+				default: return -1;
+			}
+		}
+		return super.eDerivedStructuralFeatureID(baseFeatureID, baseClass);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String toString() {
+		if (eIsProxy()) return super.toString();
+
+		StringBuffer result = new StringBuffer(super.toString());
+		result.append(" (umlDependencyID: "); //$NON-NLS-1$
+		result.append(umlDependencyID);
+		result.append(", objectCreation: "); //$NON-NLS-1$
+		result.append(objectCreation);
+		result.append(", multiplicity: "); //$NON-NLS-1$
+		result.append(multiplicity);
+		result.append(", id: "); //$NON-NLS-1$
+		result.append(id);
+		result.append(", myState: "); //$NON-NLS-1$
+		result.append(myState);
+		result.append(", name: "); //$NON-NLS-1$
+		result.append(name);
+		result.append(", lastID: "); //$NON-NLS-1$
+		result.append(lastID);
+		result.append(", weakCGTime: "); //$NON-NLS-1$
+		result.append(weakCGTime);
+		result.append(", strongCGTime: "); //$NON-NLS-1$
+		result.append(strongCGTime);
+		result.append(", classModifier: "); //$NON-NLS-1$
+		result.append(classModifier);
+		result.append(", modifiedTimeWeak: "); //$NON-NLS-1$
+		result.append(modifiedTimeWeak);
+		result.append(", requiremenTracabilityHandle: "); //$NON-NLS-1$
+		result.append(requiremenTracabilityHandle);
+		result.append(')');
+		return result.toString();
+	}
+
+} //IActorImpl
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/IAnchorImpl.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/IAnchorImpl.java
new file mode 100755
index 0000000..c915a78
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/IAnchorImpl.java
@@ -0,0 +1,385 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl;
+
+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.EDataTypeEList;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.DependsOnType;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IAnchor;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>IAnchor</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * </p>
+ * <ul>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IAnchorImpl#getId <em>Id</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IAnchorImpl#getMyState <em>My State</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IAnchorImpl#getName <em>Name</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IAnchorImpl#getDependsOn <em>Depends On</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IAnchorImpl#getModifiedTimeWeak <em>Modified Time Weak</em>}</li>
+ * </ul>
+ *
+ * @generated
+ */
+public class IAnchorImpl extends M_pModelObjectTypeImpl implements IAnchor {
+	/**
+	 * The default value of the '{@link #getId() <em>Id</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getId()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String ID_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getId() <em>Id</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getId()
+	 * @generated
+	 * @ordered
+	 */
+	protected String id = ID_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getMyState() <em>My State</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getMyState()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String MY_STATE_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getMyState() <em>My State</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getMyState()
+	 * @generated
+	 * @ordered
+	 */
+	protected String myState = MY_STATE_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getName() <em>Name</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getName()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String NAME_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getName() <em>Name</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getName()
+	 * @generated
+	 * @ordered
+	 */
+	protected String name = NAME_EDEFAULT;
+
+	/**
+	 * The cached value of the '{@link #getDependsOn() <em>Depends On</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getDependsOn()
+	 * @generated
+	 * @ordered
+	 */
+	protected DependsOnType dependsOn;
+
+	/**
+	 * The cached value of the '{@link #getModifiedTimeWeak() <em>Modified Time Weak</em>}' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getModifiedTimeWeak()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<String> modifiedTimeWeak;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected IAnchorImpl() {
+		super();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EClass eStaticClass() {
+		return UMLRpyPackage.eINSTANCE.getIAnchor();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getId() {
+		return id;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setId(String newId) {
+		String oldId = id;
+		id = newId;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IANCHOR__ID, oldId, id));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getMyState() {
+		return myState;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setMyState(String newMyState) {
+		String oldMyState = myState;
+		myState = newMyState;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IANCHOR__MY_STATE, oldMyState, myState));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getName() {
+		return name;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setName(String newName) {
+		String oldName = name;
+		name = newName;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IANCHOR__NAME, oldName, name));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public DependsOnType getDependsOn() {
+		if (dependsOn != null && dependsOn.eIsProxy()) {
+			InternalEObject oldDependsOn = (InternalEObject)dependsOn;
+			dependsOn = (DependsOnType)eResolveProxy(oldDependsOn);
+			if (dependsOn != oldDependsOn) {
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.IANCHOR__DEPENDS_ON, oldDependsOn, dependsOn));
+			}
+		}
+		return dependsOn;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public DependsOnType basicGetDependsOn() {
+		return dependsOn;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setDependsOn(DependsOnType newDependsOn) {
+		DependsOnType oldDependsOn = dependsOn;
+		dependsOn = newDependsOn;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IANCHOR__DEPENDS_ON, oldDependsOn, dependsOn));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<String> getModifiedTimeWeak() {
+		if (modifiedTimeWeak == null) {
+			modifiedTimeWeak = new EDataTypeEList<String>(String.class, this, UMLRpyPackage.IANCHOR__MODIFIED_TIME_WEAK);
+		}
+		return modifiedTimeWeak;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object eGet(int featureID, boolean resolve, boolean coreType) {
+		switch (featureID) {
+			case UMLRpyPackage.IANCHOR__ID:
+				return getId();
+			case UMLRpyPackage.IANCHOR__MY_STATE:
+				return getMyState();
+			case UMLRpyPackage.IANCHOR__NAME:
+				return getName();
+			case UMLRpyPackage.IANCHOR__DEPENDS_ON:
+				if (resolve) return getDependsOn();
+				return basicGetDependsOn();
+			case UMLRpyPackage.IANCHOR__MODIFIED_TIME_WEAK:
+				return getModifiedTimeWeak();
+		}
+		return super.eGet(featureID, resolve, coreType);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@SuppressWarnings("unchecked")
+	@Override
+	public void eSet(int featureID, Object newValue) {
+		switch (featureID) {
+			case UMLRpyPackage.IANCHOR__ID:
+				setId((String)newValue);
+				return;
+			case UMLRpyPackage.IANCHOR__MY_STATE:
+				setMyState((String)newValue);
+				return;
+			case UMLRpyPackage.IANCHOR__NAME:
+				setName((String)newValue);
+				return;
+			case UMLRpyPackage.IANCHOR__DEPENDS_ON:
+				setDependsOn((DependsOnType)newValue);
+				return;
+			case UMLRpyPackage.IANCHOR__MODIFIED_TIME_WEAK:
+				getModifiedTimeWeak().clear();
+				getModifiedTimeWeak().addAll((Collection<? extends String>)newValue);
+				return;
+		}
+		super.eSet(featureID, newValue);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void eUnset(int featureID) {
+		switch (featureID) {
+			case UMLRpyPackage.IANCHOR__ID:
+				setId(ID_EDEFAULT);
+				return;
+			case UMLRpyPackage.IANCHOR__MY_STATE:
+				setMyState(MY_STATE_EDEFAULT);
+				return;
+			case UMLRpyPackage.IANCHOR__NAME:
+				setName(NAME_EDEFAULT);
+				return;
+			case UMLRpyPackage.IANCHOR__DEPENDS_ON:
+				setDependsOn((DependsOnType)null);
+				return;
+			case UMLRpyPackage.IANCHOR__MODIFIED_TIME_WEAK:
+				getModifiedTimeWeak().clear();
+				return;
+		}
+		super.eUnset(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public boolean eIsSet(int featureID) {
+		switch (featureID) {
+			case UMLRpyPackage.IANCHOR__ID:
+				return ID_EDEFAULT == null ? id != null : !ID_EDEFAULT.equals(id);
+			case UMLRpyPackage.IANCHOR__MY_STATE:
+				return MY_STATE_EDEFAULT == null ? myState != null : !MY_STATE_EDEFAULT.equals(myState);
+			case UMLRpyPackage.IANCHOR__NAME:
+				return NAME_EDEFAULT == null ? name != null : !NAME_EDEFAULT.equals(name);
+			case UMLRpyPackage.IANCHOR__DEPENDS_ON:
+				return dependsOn != null;
+			case UMLRpyPackage.IANCHOR__MODIFIED_TIME_WEAK:
+				return modifiedTimeWeak != null && !modifiedTimeWeak.isEmpty();
+		}
+		return super.eIsSet(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String toString() {
+		if (eIsProxy()) return super.toString();
+
+		StringBuffer result = new StringBuffer(super.toString());
+		result.append(" (id: "); //$NON-NLS-1$
+		result.append(id);
+		result.append(", myState: "); //$NON-NLS-1$
+		result.append(myState);
+		result.append(", name: "); //$NON-NLS-1$
+		result.append(name);
+		result.append(", modifiedTimeWeak: "); //$NON-NLS-1$
+		result.append(modifiedTimeWeak);
+		result.append(')');
+		return result.toString();
+	}
+
+} //IAnchorImpl
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/IAnnotationImpl.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/IAnnotationImpl.java
new file mode 100755
index 0000000..74fa328
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/IAnnotationImpl.java
@@ -0,0 +1,484 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl;
+
+import java.util.Collection;
+
+import org.eclipse.emf.common.notify.Notification;
+import org.eclipse.emf.common.notify.NotificationChain;
+
+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.EObjectContainmentEList;
+import org.eclipse.emf.ecore.util.InternalEList;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IAnnotation;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IDescription;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITag;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>IAnnotation</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * </p>
+ * <ul>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IAnnotationImpl#getRequiremenTracabilityHandle <em>Requiremen Tracability Handle</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IAnnotationImpl#getDescription <em>Description</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IAnnotationImpl#getUmlDependencyID <em>Uml Dependency ID</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IAnnotationImpl#getObjectCreation <em>Object Creation</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IAnnotationImpl#getTags <em>Tags</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IAnnotationImpl#getBody <em>Body</em>}</li>
+ * </ul>
+ *
+ * @generated
+ */
+public class IAnnotationImpl extends IUnitImpl implements IAnnotation {
+	/**
+	 * The default value of the '{@link #getRequiremenTracabilityHandle() <em>Requiremen Tracability Handle</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getRequiremenTracabilityHandle()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String REQUIREMEN_TRACABILITY_HANDLE_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getRequiremenTracabilityHandle() <em>Requiremen Tracability Handle</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getRequiremenTracabilityHandle()
+	 * @generated
+	 * @ordered
+	 */
+	protected String requiremenTracabilityHandle = REQUIREMEN_TRACABILITY_HANDLE_EDEFAULT;
+
+	/**
+	 * The cached value of the '{@link #getDescription() <em>Description</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getDescription()
+	 * @generated
+	 * @ordered
+	 */
+	protected IDescription description;
+
+	/**
+	 * The default value of the '{@link #getUmlDependencyID() <em>Uml Dependency ID</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getUmlDependencyID()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String UML_DEPENDENCY_ID_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getUmlDependencyID() <em>Uml Dependency ID</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getUmlDependencyID()
+	 * @generated
+	 * @ordered
+	 */
+	protected String umlDependencyID = UML_DEPENDENCY_ID_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getObjectCreation() <em>Object Creation</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getObjectCreation()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String OBJECT_CREATION_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getObjectCreation() <em>Object Creation</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getObjectCreation()
+	 * @generated
+	 * @ordered
+	 */
+	protected String objectCreation = OBJECT_CREATION_EDEFAULT;
+
+	/**
+	 * The cached value of the '{@link #getTags() <em>Tags</em>}' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getTags()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<ITag> tags;
+
+	/**
+	 * The default value of the '{@link #getBody() <em>Body</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getBody()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String BODY_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getBody() <em>Body</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getBody()
+	 * @generated
+	 * @ordered
+	 */
+	protected String body = BODY_EDEFAULT;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected IAnnotationImpl() {
+		super();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EClass eStaticClass() {
+		return UMLRpyPackage.eINSTANCE.getIAnnotation();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getRequiremenTracabilityHandle() {
+		return requiremenTracabilityHandle;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setRequiremenTracabilityHandle(String newRequiremenTracabilityHandle) {
+		String oldRequiremenTracabilityHandle = requiremenTracabilityHandle;
+		requiremenTracabilityHandle = newRequiremenTracabilityHandle;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IANNOTATION__REQUIREMEN_TRACABILITY_HANDLE, oldRequiremenTracabilityHandle, requiremenTracabilityHandle));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IDescription getDescription() {
+		if (description != null && description.eIsProxy()) {
+			InternalEObject oldDescription = (InternalEObject)description;
+			description = (IDescription)eResolveProxy(oldDescription);
+			if (description != oldDescription) {
+				InternalEObject newDescription = (InternalEObject)description;
+				NotificationChain msgs = oldDescription.eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IANNOTATION__DESCRIPTION, null, null);
+				if (newDescription.eInternalContainer() == null) {
+					msgs = newDescription.eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IANNOTATION__DESCRIPTION, null, msgs);
+				}
+				if (msgs != null) msgs.dispatch();
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.IANNOTATION__DESCRIPTION, oldDescription, description));
+			}
+		}
+		return description;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IDescription basicGetDescription() {
+		return description;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public NotificationChain basicSetDescription(IDescription newDescription, NotificationChain msgs) {
+		IDescription oldDescription = description;
+		description = newDescription;
+		if (eNotificationRequired()) {
+			ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IANNOTATION__DESCRIPTION, oldDescription, newDescription);
+			if (msgs == null) msgs = notification; else msgs.add(notification);
+		}
+		return msgs;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setDescription(IDescription newDescription) {
+		if (newDescription != description) {
+			NotificationChain msgs = null;
+			if (description != null)
+				msgs = ((InternalEObject)description).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IANNOTATION__DESCRIPTION, null, msgs);
+			if (newDescription != null)
+				msgs = ((InternalEObject)newDescription).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IANNOTATION__DESCRIPTION, null, msgs);
+			msgs = basicSetDescription(newDescription, msgs);
+			if (msgs != null) msgs.dispatch();
+		}
+		else if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IANNOTATION__DESCRIPTION, newDescription, newDescription));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getUmlDependencyID() {
+		return umlDependencyID;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setUmlDependencyID(String newUmlDependencyID) {
+		String oldUmlDependencyID = umlDependencyID;
+		umlDependencyID = newUmlDependencyID;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IANNOTATION__UML_DEPENDENCY_ID, oldUmlDependencyID, umlDependencyID));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getObjectCreation() {
+		return objectCreation;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setObjectCreation(String newObjectCreation) {
+		String oldObjectCreation = objectCreation;
+		objectCreation = newObjectCreation;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IANNOTATION__OBJECT_CREATION, oldObjectCreation, objectCreation));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<ITag> getTags() {
+		if (tags == null) {
+			tags = new EObjectContainmentEList.Resolving<ITag>(ITag.class, this, UMLRpyPackage.IANNOTATION__TAGS);
+		}
+		return tags;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getBody() {
+		return body;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setBody(String newBody) {
+		String oldBody = body;
+		body = newBody;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IANNOTATION__BODY, oldBody, body));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
+		switch (featureID) {
+			case UMLRpyPackage.IANNOTATION__DESCRIPTION:
+				return basicSetDescription(null, msgs);
+			case UMLRpyPackage.IANNOTATION__TAGS:
+				return ((InternalEList<?>)getTags()).basicRemove(otherEnd, msgs);
+		}
+		return super.eInverseRemove(otherEnd, featureID, msgs);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object eGet(int featureID, boolean resolve, boolean coreType) {
+		switch (featureID) {
+			case UMLRpyPackage.IANNOTATION__REQUIREMEN_TRACABILITY_HANDLE:
+				return getRequiremenTracabilityHandle();
+			case UMLRpyPackage.IANNOTATION__DESCRIPTION:
+				if (resolve) return getDescription();
+				return basicGetDescription();
+			case UMLRpyPackage.IANNOTATION__UML_DEPENDENCY_ID:
+				return getUmlDependencyID();
+			case UMLRpyPackage.IANNOTATION__OBJECT_CREATION:
+				return getObjectCreation();
+			case UMLRpyPackage.IANNOTATION__TAGS:
+				return getTags();
+			case UMLRpyPackage.IANNOTATION__BODY:
+				return getBody();
+		}
+		return super.eGet(featureID, resolve, coreType);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@SuppressWarnings("unchecked")
+	@Override
+	public void eSet(int featureID, Object newValue) {
+		switch (featureID) {
+			case UMLRpyPackage.IANNOTATION__REQUIREMEN_TRACABILITY_HANDLE:
+				setRequiremenTracabilityHandle((String)newValue);
+				return;
+			case UMLRpyPackage.IANNOTATION__DESCRIPTION:
+				setDescription((IDescription)newValue);
+				return;
+			case UMLRpyPackage.IANNOTATION__UML_DEPENDENCY_ID:
+				setUmlDependencyID((String)newValue);
+				return;
+			case UMLRpyPackage.IANNOTATION__OBJECT_CREATION:
+				setObjectCreation((String)newValue);
+				return;
+			case UMLRpyPackage.IANNOTATION__TAGS:
+				getTags().clear();
+				getTags().addAll((Collection<? extends ITag>)newValue);
+				return;
+			case UMLRpyPackage.IANNOTATION__BODY:
+				setBody((String)newValue);
+				return;
+		}
+		super.eSet(featureID, newValue);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void eUnset(int featureID) {
+		switch (featureID) {
+			case UMLRpyPackage.IANNOTATION__REQUIREMEN_TRACABILITY_HANDLE:
+				setRequiremenTracabilityHandle(REQUIREMEN_TRACABILITY_HANDLE_EDEFAULT);
+				return;
+			case UMLRpyPackage.IANNOTATION__DESCRIPTION:
+				setDescription((IDescription)null);
+				return;
+			case UMLRpyPackage.IANNOTATION__UML_DEPENDENCY_ID:
+				setUmlDependencyID(UML_DEPENDENCY_ID_EDEFAULT);
+				return;
+			case UMLRpyPackage.IANNOTATION__OBJECT_CREATION:
+				setObjectCreation(OBJECT_CREATION_EDEFAULT);
+				return;
+			case UMLRpyPackage.IANNOTATION__TAGS:
+				getTags().clear();
+				return;
+			case UMLRpyPackage.IANNOTATION__BODY:
+				setBody(BODY_EDEFAULT);
+				return;
+		}
+		super.eUnset(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public boolean eIsSet(int featureID) {
+		switch (featureID) {
+			case UMLRpyPackage.IANNOTATION__REQUIREMEN_TRACABILITY_HANDLE:
+				return REQUIREMEN_TRACABILITY_HANDLE_EDEFAULT == null ? requiremenTracabilityHandle != null : !REQUIREMEN_TRACABILITY_HANDLE_EDEFAULT.equals(requiremenTracabilityHandle);
+			case UMLRpyPackage.IANNOTATION__DESCRIPTION:
+				return description != null;
+			case UMLRpyPackage.IANNOTATION__UML_DEPENDENCY_ID:
+				return UML_DEPENDENCY_ID_EDEFAULT == null ? umlDependencyID != null : !UML_DEPENDENCY_ID_EDEFAULT.equals(umlDependencyID);
+			case UMLRpyPackage.IANNOTATION__OBJECT_CREATION:
+				return OBJECT_CREATION_EDEFAULT == null ? objectCreation != null : !OBJECT_CREATION_EDEFAULT.equals(objectCreation);
+			case UMLRpyPackage.IANNOTATION__TAGS:
+				return tags != null && !tags.isEmpty();
+			case UMLRpyPackage.IANNOTATION__BODY:
+				return BODY_EDEFAULT == null ? body != null : !BODY_EDEFAULT.equals(body);
+		}
+		return super.eIsSet(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String toString() {
+		if (eIsProxy()) return super.toString();
+
+		StringBuffer result = new StringBuffer(super.toString());
+		result.append(" (requiremenTracabilityHandle: "); //$NON-NLS-1$
+		result.append(requiremenTracabilityHandle);
+		result.append(", umlDependencyID: "); //$NON-NLS-1$
+		result.append(umlDependencyID);
+		result.append(", objectCreation: "); //$NON-NLS-1$
+		result.append(objectCreation);
+		result.append(", body: "); //$NON-NLS-1$
+		result.append(body);
+		result.append(')');
+		return result.toString();
+	}
+
+} //IAnnotationImpl
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/IArgumentImpl.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/IArgumentImpl.java
new file mode 100755
index 0000000..60a1c41
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/IArgumentImpl.java
@@ -0,0 +1,923 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl;
+
+import java.util.Collection;
+
+import org.eclipse.emf.common.notify.Notification;
+import org.eclipse.emf.common.notify.NotificationChain;
+
+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.EDataTypeEList;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IArgument;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IClassifier;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IDescription;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ILiteralSpecification;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IPropertyContainer;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>IArgument</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * </p>
+ * <ul>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IArgumentImpl#getId <em>Id</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IArgumentImpl#getMyState <em>My State</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IArgumentImpl#getProperties <em>Properties</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IArgumentImpl#getName <em>Name</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IArgumentImpl#getModifiedTimeWeak <em>Modified Time Weak</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IArgumentImpl#getTypeOf <em>Type Of</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IArgumentImpl#getArgumentDirection <em>Argument Direction</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IArgumentImpl#getDefaultValue <em>Default Value</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IArgumentImpl#getValueSpecifications <em>Value Specifications</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IArgumentImpl#getDescription <em>Description</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IArgumentImpl#getCodeUpdateCGTime <em>Code Update CG Time</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IArgumentImpl#getObjectCreation <em>Object Creation</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IArgumentImpl#getUmlDependencyID <em>Uml Dependency ID</em>}</li>
+ * </ul>
+ *
+ * @generated
+ */
+public class IArgumentImpl extends IVariableImpl implements IArgument {
+	/**
+	 * The default value of the '{@link #getId() <em>Id</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getId()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String ID_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getId() <em>Id</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getId()
+	 * @generated
+	 * @ordered
+	 */
+	protected String id = ID_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getMyState() <em>My State</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getMyState()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String MY_STATE_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getMyState() <em>My State</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getMyState()
+	 * @generated
+	 * @ordered
+	 */
+	protected String myState = MY_STATE_EDEFAULT;
+
+	/**
+	 * The cached value of the '{@link #getProperties() <em>Properties</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getProperties()
+	 * @generated
+	 * @ordered
+	 */
+	protected IPropertyContainer properties;
+
+	/**
+	 * The default value of the '{@link #getName() <em>Name</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getName()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String NAME_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getName() <em>Name</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getName()
+	 * @generated
+	 * @ordered
+	 */
+	protected String name = NAME_EDEFAULT;
+
+	/**
+	 * The cached value of the '{@link #getModifiedTimeWeak() <em>Modified Time Weak</em>}' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getModifiedTimeWeak()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<String> modifiedTimeWeak;
+
+	/**
+	 * The cached value of the '{@link #getTypeOf() <em>Type Of</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getTypeOf()
+	 * @generated
+	 * @ordered
+	 */
+	protected IClassifier typeOf;
+
+	/**
+	 * The default value of the '{@link #getArgumentDirection() <em>Argument Direction</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getArgumentDirection()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String ARGUMENT_DIRECTION_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getArgumentDirection() <em>Argument Direction</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getArgumentDirection()
+	 * @generated
+	 * @ordered
+	 */
+	protected String argumentDirection = ARGUMENT_DIRECTION_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getDefaultValue() <em>Default Value</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getDefaultValue()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String DEFAULT_VALUE_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getDefaultValue() <em>Default Value</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getDefaultValue()
+	 * @generated
+	 * @ordered
+	 */
+	protected String defaultValue = DEFAULT_VALUE_EDEFAULT;
+
+	/**
+	 * The cached value of the '{@link #getValueSpecifications() <em>Value Specifications</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getValueSpecifications()
+	 * @generated
+	 * @ordered
+	 */
+	protected ILiteralSpecification valueSpecifications;
+
+	/**
+	 * The cached value of the '{@link #getDescription() <em>Description</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getDescription()
+	 * @generated
+	 * @ordered
+	 */
+	protected IDescription description;
+
+	/**
+	 * The cached value of the '{@link #getCodeUpdateCGTime() <em>Code Update CG Time</em>}' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getCodeUpdateCGTime()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<String> codeUpdateCGTime;
+
+	/**
+	 * The default value of the '{@link #getObjectCreation() <em>Object Creation</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getObjectCreation()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String OBJECT_CREATION_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getObjectCreation() <em>Object Creation</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getObjectCreation()
+	 * @generated
+	 * @ordered
+	 */
+	protected String objectCreation = OBJECT_CREATION_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getUmlDependencyID() <em>Uml Dependency ID</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getUmlDependencyID()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String UML_DEPENDENCY_ID_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getUmlDependencyID() <em>Uml Dependency ID</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getUmlDependencyID()
+	 * @generated
+	 * @ordered
+	 */
+	protected String umlDependencyID = UML_DEPENDENCY_ID_EDEFAULT;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected IArgumentImpl() {
+		super();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EClass eStaticClass() {
+		return UMLRpyPackage.eINSTANCE.getIArgument();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getId() {
+		return id;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setId(String newId) {
+		String oldId = id;
+		id = newId;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IARGUMENT__ID, oldId, id));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getMyState() {
+		return myState;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setMyState(String newMyState) {
+		String oldMyState = myState;
+		myState = newMyState;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IARGUMENT__MY_STATE, oldMyState, myState));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IPropertyContainer getProperties() {
+		if (properties != null && properties.eIsProxy()) {
+			InternalEObject oldProperties = (InternalEObject)properties;
+			properties = (IPropertyContainer)eResolveProxy(oldProperties);
+			if (properties != oldProperties) {
+				InternalEObject newProperties = (InternalEObject)properties;
+				NotificationChain msgs = oldProperties.eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IARGUMENT__PROPERTIES, null, null);
+				if (newProperties.eInternalContainer() == null) {
+					msgs = newProperties.eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IARGUMENT__PROPERTIES, null, msgs);
+				}
+				if (msgs != null) msgs.dispatch();
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.IARGUMENT__PROPERTIES, oldProperties, properties));
+			}
+		}
+		return properties;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IPropertyContainer basicGetProperties() {
+		return properties;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public NotificationChain basicSetProperties(IPropertyContainer newProperties, NotificationChain msgs) {
+		IPropertyContainer oldProperties = properties;
+		properties = newProperties;
+		if (eNotificationRequired()) {
+			ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IARGUMENT__PROPERTIES, oldProperties, newProperties);
+			if (msgs == null) msgs = notification; else msgs.add(notification);
+		}
+		return msgs;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setProperties(IPropertyContainer newProperties) {
+		if (newProperties != properties) {
+			NotificationChain msgs = null;
+			if (properties != null)
+				msgs = ((InternalEObject)properties).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IARGUMENT__PROPERTIES, null, msgs);
+			if (newProperties != null)
+				msgs = ((InternalEObject)newProperties).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IARGUMENT__PROPERTIES, null, msgs);
+			msgs = basicSetProperties(newProperties, msgs);
+			if (msgs != null) msgs.dispatch();
+		}
+		else if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IARGUMENT__PROPERTIES, newProperties, newProperties));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getName() {
+		return name;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setName(String newName) {
+		String oldName = name;
+		name = newName;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IARGUMENT__NAME, oldName, name));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<String> getModifiedTimeWeak() {
+		if (modifiedTimeWeak == null) {
+			modifiedTimeWeak = new EDataTypeEList<String>(String.class, this, UMLRpyPackage.IARGUMENT__MODIFIED_TIME_WEAK);
+		}
+		return modifiedTimeWeak;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IClassifier getTypeOf() {
+		if (typeOf != null && typeOf.eIsProxy()) {
+			InternalEObject oldTypeOf = (InternalEObject)typeOf;
+			typeOf = (IClassifier)eResolveProxy(oldTypeOf);
+			if (typeOf != oldTypeOf) {
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.IARGUMENT__TYPE_OF, oldTypeOf, typeOf));
+			}
+		}
+		return typeOf;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IClassifier basicGetTypeOf() {
+		return typeOf;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setTypeOf(IClassifier newTypeOf) {
+		IClassifier oldTypeOf = typeOf;
+		typeOf = newTypeOf;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IARGUMENT__TYPE_OF, oldTypeOf, typeOf));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getArgumentDirection() {
+		return argumentDirection;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setArgumentDirection(String newArgumentDirection) {
+		String oldArgumentDirection = argumentDirection;
+		argumentDirection = newArgumentDirection;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IARGUMENT__ARGUMENT_DIRECTION, oldArgumentDirection, argumentDirection));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getDefaultValue() {
+		return defaultValue;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setDefaultValue(String newDefaultValue) {
+		String oldDefaultValue = defaultValue;
+		defaultValue = newDefaultValue;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IARGUMENT__DEFAULT_VALUE, oldDefaultValue, defaultValue));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public ILiteralSpecification getValueSpecifications() {
+		if (valueSpecifications != null && valueSpecifications.eIsProxy()) {
+			InternalEObject oldValueSpecifications = (InternalEObject)valueSpecifications;
+			valueSpecifications = (ILiteralSpecification)eResolveProxy(oldValueSpecifications);
+			if (valueSpecifications != oldValueSpecifications) {
+				InternalEObject newValueSpecifications = (InternalEObject)valueSpecifications;
+				NotificationChain msgs = oldValueSpecifications.eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IARGUMENT__VALUE_SPECIFICATIONS, null, null);
+				if (newValueSpecifications.eInternalContainer() == null) {
+					msgs = newValueSpecifications.eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IARGUMENT__VALUE_SPECIFICATIONS, null, msgs);
+				}
+				if (msgs != null) msgs.dispatch();
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.IARGUMENT__VALUE_SPECIFICATIONS, oldValueSpecifications, valueSpecifications));
+			}
+		}
+		return valueSpecifications;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public ILiteralSpecification basicGetValueSpecifications() {
+		return valueSpecifications;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public NotificationChain basicSetValueSpecifications(ILiteralSpecification newValueSpecifications, NotificationChain msgs) {
+		ILiteralSpecification oldValueSpecifications = valueSpecifications;
+		valueSpecifications = newValueSpecifications;
+		if (eNotificationRequired()) {
+			ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IARGUMENT__VALUE_SPECIFICATIONS, oldValueSpecifications, newValueSpecifications);
+			if (msgs == null) msgs = notification; else msgs.add(notification);
+		}
+		return msgs;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setValueSpecifications(ILiteralSpecification newValueSpecifications) {
+		if (newValueSpecifications != valueSpecifications) {
+			NotificationChain msgs = null;
+			if (valueSpecifications != null)
+				msgs = ((InternalEObject)valueSpecifications).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IARGUMENT__VALUE_SPECIFICATIONS, null, msgs);
+			if (newValueSpecifications != null)
+				msgs = ((InternalEObject)newValueSpecifications).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IARGUMENT__VALUE_SPECIFICATIONS, null, msgs);
+			msgs = basicSetValueSpecifications(newValueSpecifications, msgs);
+			if (msgs != null) msgs.dispatch();
+		}
+		else if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IARGUMENT__VALUE_SPECIFICATIONS, newValueSpecifications, newValueSpecifications));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IDescription getDescription() {
+		if (description != null && description.eIsProxy()) {
+			InternalEObject oldDescription = (InternalEObject)description;
+			description = (IDescription)eResolveProxy(oldDescription);
+			if (description != oldDescription) {
+				InternalEObject newDescription = (InternalEObject)description;
+				NotificationChain msgs = oldDescription.eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IARGUMENT__DESCRIPTION, null, null);
+				if (newDescription.eInternalContainer() == null) {
+					msgs = newDescription.eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IARGUMENT__DESCRIPTION, null, msgs);
+				}
+				if (msgs != null) msgs.dispatch();
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.IARGUMENT__DESCRIPTION, oldDescription, description));
+			}
+		}
+		return description;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IDescription basicGetDescription() {
+		return description;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public NotificationChain basicSetDescription(IDescription newDescription, NotificationChain msgs) {
+		IDescription oldDescription = description;
+		description = newDescription;
+		if (eNotificationRequired()) {
+			ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IARGUMENT__DESCRIPTION, oldDescription, newDescription);
+			if (msgs == null) msgs = notification; else msgs.add(notification);
+		}
+		return msgs;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setDescription(IDescription newDescription) {
+		if (newDescription != description) {
+			NotificationChain msgs = null;
+			if (description != null)
+				msgs = ((InternalEObject)description).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IARGUMENT__DESCRIPTION, null, msgs);
+			if (newDescription != null)
+				msgs = ((InternalEObject)newDescription).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IARGUMENT__DESCRIPTION, null, msgs);
+			msgs = basicSetDescription(newDescription, msgs);
+			if (msgs != null) msgs.dispatch();
+		}
+		else if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IARGUMENT__DESCRIPTION, newDescription, newDescription));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<String> getCodeUpdateCGTime() {
+		if (codeUpdateCGTime == null) {
+			codeUpdateCGTime = new EDataTypeEList<String>(String.class, this, UMLRpyPackage.IARGUMENT__CODE_UPDATE_CG_TIME);
+		}
+		return codeUpdateCGTime;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getObjectCreation() {
+		return objectCreation;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setObjectCreation(String newObjectCreation) {
+		String oldObjectCreation = objectCreation;
+		objectCreation = newObjectCreation;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IARGUMENT__OBJECT_CREATION, oldObjectCreation, objectCreation));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getUmlDependencyID() {
+		return umlDependencyID;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setUmlDependencyID(String newUmlDependencyID) {
+		String oldUmlDependencyID = umlDependencyID;
+		umlDependencyID = newUmlDependencyID;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IARGUMENT__UML_DEPENDENCY_ID, oldUmlDependencyID, umlDependencyID));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
+		switch (featureID) {
+			case UMLRpyPackage.IARGUMENT__PROPERTIES:
+				return basicSetProperties(null, msgs);
+			case UMLRpyPackage.IARGUMENT__VALUE_SPECIFICATIONS:
+				return basicSetValueSpecifications(null, msgs);
+			case UMLRpyPackage.IARGUMENT__DESCRIPTION:
+				return basicSetDescription(null, msgs);
+		}
+		return super.eInverseRemove(otherEnd, featureID, msgs);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object eGet(int featureID, boolean resolve, boolean coreType) {
+		switch (featureID) {
+			case UMLRpyPackage.IARGUMENT__ID:
+				return getId();
+			case UMLRpyPackage.IARGUMENT__MY_STATE:
+				return getMyState();
+			case UMLRpyPackage.IARGUMENT__PROPERTIES:
+				if (resolve) return getProperties();
+				return basicGetProperties();
+			case UMLRpyPackage.IARGUMENT__NAME:
+				return getName();
+			case UMLRpyPackage.IARGUMENT__MODIFIED_TIME_WEAK:
+				return getModifiedTimeWeak();
+			case UMLRpyPackage.IARGUMENT__TYPE_OF:
+				if (resolve) return getTypeOf();
+				return basicGetTypeOf();
+			case UMLRpyPackage.IARGUMENT__ARGUMENT_DIRECTION:
+				return getArgumentDirection();
+			case UMLRpyPackage.IARGUMENT__DEFAULT_VALUE:
+				return getDefaultValue();
+			case UMLRpyPackage.IARGUMENT__VALUE_SPECIFICATIONS:
+				if (resolve) return getValueSpecifications();
+				return basicGetValueSpecifications();
+			case UMLRpyPackage.IARGUMENT__DESCRIPTION:
+				if (resolve) return getDescription();
+				return basicGetDescription();
+			case UMLRpyPackage.IARGUMENT__CODE_UPDATE_CG_TIME:
+				return getCodeUpdateCGTime();
+			case UMLRpyPackage.IARGUMENT__OBJECT_CREATION:
+				return getObjectCreation();
+			case UMLRpyPackage.IARGUMENT__UML_DEPENDENCY_ID:
+				return getUmlDependencyID();
+		}
+		return super.eGet(featureID, resolve, coreType);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@SuppressWarnings("unchecked")
+	@Override
+	public void eSet(int featureID, Object newValue) {
+		switch (featureID) {
+			case UMLRpyPackage.IARGUMENT__ID:
+				setId((String)newValue);
+				return;
+			case UMLRpyPackage.IARGUMENT__MY_STATE:
+				setMyState((String)newValue);
+				return;
+			case UMLRpyPackage.IARGUMENT__PROPERTIES:
+				setProperties((IPropertyContainer)newValue);
+				return;
+			case UMLRpyPackage.IARGUMENT__NAME:
+				setName((String)newValue);
+				return;
+			case UMLRpyPackage.IARGUMENT__MODIFIED_TIME_WEAK:
+				getModifiedTimeWeak().clear();
+				getModifiedTimeWeak().addAll((Collection<? extends String>)newValue);
+				return;
+			case UMLRpyPackage.IARGUMENT__TYPE_OF:
+				setTypeOf((IClassifier)newValue);
+				return;
+			case UMLRpyPackage.IARGUMENT__ARGUMENT_DIRECTION:
+				setArgumentDirection((String)newValue);
+				return;
+			case UMLRpyPackage.IARGUMENT__DEFAULT_VALUE:
+				setDefaultValue((String)newValue);
+				return;
+			case UMLRpyPackage.IARGUMENT__VALUE_SPECIFICATIONS:
+				setValueSpecifications((ILiteralSpecification)newValue);
+				return;
+			case UMLRpyPackage.IARGUMENT__DESCRIPTION:
+				setDescription((IDescription)newValue);
+				return;
+			case UMLRpyPackage.IARGUMENT__CODE_UPDATE_CG_TIME:
+				getCodeUpdateCGTime().clear();
+				getCodeUpdateCGTime().addAll((Collection<? extends String>)newValue);
+				return;
+			case UMLRpyPackage.IARGUMENT__OBJECT_CREATION:
+				setObjectCreation((String)newValue);
+				return;
+			case UMLRpyPackage.IARGUMENT__UML_DEPENDENCY_ID:
+				setUmlDependencyID((String)newValue);
+				return;
+		}
+		super.eSet(featureID, newValue);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void eUnset(int featureID) {
+		switch (featureID) {
+			case UMLRpyPackage.IARGUMENT__ID:
+				setId(ID_EDEFAULT);
+				return;
+			case UMLRpyPackage.IARGUMENT__MY_STATE:
+				setMyState(MY_STATE_EDEFAULT);
+				return;
+			case UMLRpyPackage.IARGUMENT__PROPERTIES:
+				setProperties((IPropertyContainer)null);
+				return;
+			case UMLRpyPackage.IARGUMENT__NAME:
+				setName(NAME_EDEFAULT);
+				return;
+			case UMLRpyPackage.IARGUMENT__MODIFIED_TIME_WEAK:
+				getModifiedTimeWeak().clear();
+				return;
+			case UMLRpyPackage.IARGUMENT__TYPE_OF:
+				setTypeOf((IClassifier)null);
+				return;
+			case UMLRpyPackage.IARGUMENT__ARGUMENT_DIRECTION:
+				setArgumentDirection(ARGUMENT_DIRECTION_EDEFAULT);
+				return;
+			case UMLRpyPackage.IARGUMENT__DEFAULT_VALUE:
+				setDefaultValue(DEFAULT_VALUE_EDEFAULT);
+				return;
+			case UMLRpyPackage.IARGUMENT__VALUE_SPECIFICATIONS:
+				setValueSpecifications((ILiteralSpecification)null);
+				return;
+			case UMLRpyPackage.IARGUMENT__DESCRIPTION:
+				setDescription((IDescription)null);
+				return;
+			case UMLRpyPackage.IARGUMENT__CODE_UPDATE_CG_TIME:
+				getCodeUpdateCGTime().clear();
+				return;
+			case UMLRpyPackage.IARGUMENT__OBJECT_CREATION:
+				setObjectCreation(OBJECT_CREATION_EDEFAULT);
+				return;
+			case UMLRpyPackage.IARGUMENT__UML_DEPENDENCY_ID:
+				setUmlDependencyID(UML_DEPENDENCY_ID_EDEFAULT);
+				return;
+		}
+		super.eUnset(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public boolean eIsSet(int featureID) {
+		switch (featureID) {
+			case UMLRpyPackage.IARGUMENT__ID:
+				return ID_EDEFAULT == null ? id != null : !ID_EDEFAULT.equals(id);
+			case UMLRpyPackage.IARGUMENT__MY_STATE:
+				return MY_STATE_EDEFAULT == null ? myState != null : !MY_STATE_EDEFAULT.equals(myState);
+			case UMLRpyPackage.IARGUMENT__PROPERTIES:
+				return properties != null;
+			case UMLRpyPackage.IARGUMENT__NAME:
+				return NAME_EDEFAULT == null ? name != null : !NAME_EDEFAULT.equals(name);
+			case UMLRpyPackage.IARGUMENT__MODIFIED_TIME_WEAK:
+				return modifiedTimeWeak != null && !modifiedTimeWeak.isEmpty();
+			case UMLRpyPackage.IARGUMENT__TYPE_OF:
+				return typeOf != null;
+			case UMLRpyPackage.IARGUMENT__ARGUMENT_DIRECTION:
+				return ARGUMENT_DIRECTION_EDEFAULT == null ? argumentDirection != null : !ARGUMENT_DIRECTION_EDEFAULT.equals(argumentDirection);
+			case UMLRpyPackage.IARGUMENT__DEFAULT_VALUE:
+				return DEFAULT_VALUE_EDEFAULT == null ? defaultValue != null : !DEFAULT_VALUE_EDEFAULT.equals(defaultValue);
+			case UMLRpyPackage.IARGUMENT__VALUE_SPECIFICATIONS:
+				return valueSpecifications != null;
+			case UMLRpyPackage.IARGUMENT__DESCRIPTION:
+				return description != null;
+			case UMLRpyPackage.IARGUMENT__CODE_UPDATE_CG_TIME:
+				return codeUpdateCGTime != null && !codeUpdateCGTime.isEmpty();
+			case UMLRpyPackage.IARGUMENT__OBJECT_CREATION:
+				return OBJECT_CREATION_EDEFAULT == null ? objectCreation != null : !OBJECT_CREATION_EDEFAULT.equals(objectCreation);
+			case UMLRpyPackage.IARGUMENT__UML_DEPENDENCY_ID:
+				return UML_DEPENDENCY_ID_EDEFAULT == null ? umlDependencyID != null : !UML_DEPENDENCY_ID_EDEFAULT.equals(umlDependencyID);
+		}
+		return super.eIsSet(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String toString() {
+		if (eIsProxy()) return super.toString();
+
+		StringBuffer result = new StringBuffer(super.toString());
+		result.append(" (id: "); //$NON-NLS-1$
+		result.append(id);
+		result.append(", myState: "); //$NON-NLS-1$
+		result.append(myState);
+		result.append(", name: "); //$NON-NLS-1$
+		result.append(name);
+		result.append(", modifiedTimeWeak: "); //$NON-NLS-1$
+		result.append(modifiedTimeWeak);
+		result.append(", argumentDirection: "); //$NON-NLS-1$
+		result.append(argumentDirection);
+		result.append(", defaultValue: "); //$NON-NLS-1$
+		result.append(defaultValue);
+		result.append(", codeUpdateCGTime: "); //$NON-NLS-1$
+		result.append(codeUpdateCGTime);
+		result.append(", objectCreation: "); //$NON-NLS-1$
+		result.append(objectCreation);
+		result.append(", umlDependencyID: "); //$NON-NLS-1$
+		result.append(umlDependencyID);
+		result.append(')');
+		return result.toString();
+	}
+
+} //IArgumentImpl
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/IAssociationClassImpl.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/IAssociationClassImpl.java
new file mode 100755
index 0000000..ee45386
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/IAssociationClassImpl.java
@@ -0,0 +1,294 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.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.interoperability.rpy.rpymetamodel.IAssociationClass;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IAssociationEnd;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>IAssociation Class</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * </p>
+ * <ul>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IAssociationClassImpl#getIsClass <em>Is Class</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IAssociationClassImpl#getM_end1 <em>Mend1</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IAssociationClassImpl#getM_end2 <em>Mend2</em>}</li>
+ * </ul>
+ *
+ * @generated
+ */
+public class IAssociationClassImpl extends IClassImpl implements IAssociationClass {
+	/**
+	 * The default value of the '{@link #getIsClass() <em>Is Class</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getIsClass()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String IS_CLASS_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getIsClass() <em>Is Class</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getIsClass()
+	 * @generated
+	 * @ordered
+	 */
+	protected String isClass = IS_CLASS_EDEFAULT;
+
+	/**
+	 * The cached value of the '{@link #getM_end1() <em>Mend1</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_end1()
+	 * @generated
+	 * @ordered
+	 */
+	protected IAssociationEnd m_end1;
+
+	/**
+	 * The cached value of the '{@link #getM_end2() <em>Mend2</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_end2()
+	 * @generated
+	 * @ordered
+	 */
+	protected IAssociationEnd m_end2;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected IAssociationClassImpl() {
+		super();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EClass eStaticClass() {
+		return UMLRpyPackage.eINSTANCE.getIAssociationClass();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getIsClass() {
+		return isClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setIsClass(String newIsClass) {
+		String oldIsClass = isClass;
+		isClass = newIsClass;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IASSOCIATION_CLASS__IS_CLASS, oldIsClass, isClass));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IAssociationEnd getM_end1() {
+		if (m_end1 != null && m_end1.eIsProxy()) {
+			InternalEObject oldM_end1 = (InternalEObject)m_end1;
+			m_end1 = (IAssociationEnd)eResolveProxy(oldM_end1);
+			if (m_end1 != oldM_end1) {
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.IASSOCIATION_CLASS__MEND1, oldM_end1, m_end1));
+			}
+		}
+		return m_end1;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IAssociationEnd basicGetM_end1() {
+		return m_end1;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_end1(IAssociationEnd newM_end1) {
+		IAssociationEnd oldM_end1 = m_end1;
+		m_end1 = newM_end1;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IASSOCIATION_CLASS__MEND1, oldM_end1, m_end1));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IAssociationEnd getM_end2() {
+		if (m_end2 != null && m_end2.eIsProxy()) {
+			InternalEObject oldM_end2 = (InternalEObject)m_end2;
+			m_end2 = (IAssociationEnd)eResolveProxy(oldM_end2);
+			if (m_end2 != oldM_end2) {
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.IASSOCIATION_CLASS__MEND2, oldM_end2, m_end2));
+			}
+		}
+		return m_end2;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IAssociationEnd basicGetM_end2() {
+		return m_end2;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_end2(IAssociationEnd newM_end2) {
+		IAssociationEnd oldM_end2 = m_end2;
+		m_end2 = newM_end2;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IASSOCIATION_CLASS__MEND2, oldM_end2, m_end2));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object eGet(int featureID, boolean resolve, boolean coreType) {
+		switch (featureID) {
+			case UMLRpyPackage.IASSOCIATION_CLASS__IS_CLASS:
+				return getIsClass();
+			case UMLRpyPackage.IASSOCIATION_CLASS__MEND1:
+				if (resolve) return getM_end1();
+				return basicGetM_end1();
+			case UMLRpyPackage.IASSOCIATION_CLASS__MEND2:
+				if (resolve) return getM_end2();
+				return basicGetM_end2();
+		}
+		return super.eGet(featureID, resolve, coreType);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void eSet(int featureID, Object newValue) {
+		switch (featureID) {
+			case UMLRpyPackage.IASSOCIATION_CLASS__IS_CLASS:
+				setIsClass((String)newValue);
+				return;
+			case UMLRpyPackage.IASSOCIATION_CLASS__MEND1:
+				setM_end1((IAssociationEnd)newValue);
+				return;
+			case UMLRpyPackage.IASSOCIATION_CLASS__MEND2:
+				setM_end2((IAssociationEnd)newValue);
+				return;
+		}
+		super.eSet(featureID, newValue);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void eUnset(int featureID) {
+		switch (featureID) {
+			case UMLRpyPackage.IASSOCIATION_CLASS__IS_CLASS:
+				setIsClass(IS_CLASS_EDEFAULT);
+				return;
+			case UMLRpyPackage.IASSOCIATION_CLASS__MEND1:
+				setM_end1((IAssociationEnd)null);
+				return;
+			case UMLRpyPackage.IASSOCIATION_CLASS__MEND2:
+				setM_end2((IAssociationEnd)null);
+				return;
+		}
+		super.eUnset(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public boolean eIsSet(int featureID) {
+		switch (featureID) {
+			case UMLRpyPackage.IASSOCIATION_CLASS__IS_CLASS:
+				return IS_CLASS_EDEFAULT == null ? isClass != null : !IS_CLASS_EDEFAULT.equals(isClass);
+			case UMLRpyPackage.IASSOCIATION_CLASS__MEND1:
+				return m_end1 != null;
+			case UMLRpyPackage.IASSOCIATION_CLASS__MEND2:
+				return m_end2 != null;
+		}
+		return super.eIsSet(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String toString() {
+		if (eIsProxy()) return super.toString();
+
+		StringBuffer result = new StringBuffer(super.toString());
+		result.append(" (isClass: "); //$NON-NLS-1$
+		result.append(isClass);
+		result.append(')');
+		return result.toString();
+	}
+
+} //IAssociationClassImpl
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/IAssociationEndHandleImpl.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/IAssociationEndHandleImpl.java
new file mode 100755
index 0000000..f1dbf09
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/IAssociationEndHandleImpl.java
@@ -0,0 +1,443 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl;
+
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.ecore.EClass;
+
+import org.eclipse.emf.ecore.impl.ENotificationImpl;
+import org.eclipse.emf.ecore.impl.MinimalEObjectImpl;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IAssociationEndHandle;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>IAssociation End Handle</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * </p>
+ * <ul>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IAssociationEndHandleImpl#getM2Class <em>M2 Class</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IAssociationEndHandleImpl#getFilename <em>Filename</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IAssociationEndHandleImpl#getSubsystem <em>Subsystem</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IAssociationEndHandleImpl#getClass_ <em>Class</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IAssociationEndHandleImpl#getName <em>Name</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IAssociationEndHandleImpl#getId <em>Id</em>}</li>
+ * </ul>
+ *
+ * @generated
+ */
+public class IAssociationEndHandleImpl extends MinimalEObjectImpl.Container implements IAssociationEndHandle {
+	/**
+	 * The default value of the '{@link #getM2Class() <em>M2 Class</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM2Class()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String M2_CLASS_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getM2Class() <em>M2 Class</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM2Class()
+	 * @generated
+	 * @ordered
+	 */
+	protected String m2Class = M2_CLASS_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getFilename() <em>Filename</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getFilename()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String FILENAME_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getFilename() <em>Filename</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getFilename()
+	 * @generated
+	 * @ordered
+	 */
+	protected String filename = FILENAME_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getSubsystem() <em>Subsystem</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getSubsystem()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String SUBSYSTEM_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getSubsystem() <em>Subsystem</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getSubsystem()
+	 * @generated
+	 * @ordered
+	 */
+	protected String subsystem = SUBSYSTEM_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getClass_() <em>Class</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getClass_()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String CLASS_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getClass_() <em>Class</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getClass_()
+	 * @generated
+	 * @ordered
+	 */
+	protected String class_ = CLASS_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getName() <em>Name</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getName()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String NAME_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getName() <em>Name</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getName()
+	 * @generated
+	 * @ordered
+	 */
+	protected String name = NAME_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getId() <em>Id</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getId()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String ID_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getId() <em>Id</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getId()
+	 * @generated
+	 * @ordered
+	 */
+	protected String id = ID_EDEFAULT;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected IAssociationEndHandleImpl() {
+		super();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EClass eStaticClass() {
+		return UMLRpyPackage.eINSTANCE.getIAssociationEndHandle();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getM2Class() {
+		return m2Class;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM2Class(String newM2Class) {
+		String oldM2Class = m2Class;
+		m2Class = newM2Class;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IASSOCIATION_END_HANDLE__M2_CLASS, oldM2Class, m2Class));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getFilename() {
+		return filename;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setFilename(String newFilename) {
+		String oldFilename = filename;
+		filename = newFilename;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IASSOCIATION_END_HANDLE__FILENAME, oldFilename, filename));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getSubsystem() {
+		return subsystem;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setSubsystem(String newSubsystem) {
+		String oldSubsystem = subsystem;
+		subsystem = newSubsystem;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IASSOCIATION_END_HANDLE__SUBSYSTEM, oldSubsystem, subsystem));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getClass_() {
+		return class_;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setClass(String newClass) {
+		String oldClass = class_;
+		class_ = newClass;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IASSOCIATION_END_HANDLE__CLASS, oldClass, class_));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getName() {
+		return name;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setName(String newName) {
+		String oldName = name;
+		name = newName;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IASSOCIATION_END_HANDLE__NAME, oldName, name));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getId() {
+		return id;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setId(String newId) {
+		String oldId = id;
+		id = newId;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IASSOCIATION_END_HANDLE__ID, oldId, id));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object eGet(int featureID, boolean resolve, boolean coreType) {
+		switch (featureID) {
+			case UMLRpyPackage.IASSOCIATION_END_HANDLE__M2_CLASS:
+				return getM2Class();
+			case UMLRpyPackage.IASSOCIATION_END_HANDLE__FILENAME:
+				return getFilename();
+			case UMLRpyPackage.IASSOCIATION_END_HANDLE__SUBSYSTEM:
+				return getSubsystem();
+			case UMLRpyPackage.IASSOCIATION_END_HANDLE__CLASS:
+				return getClass_();
+			case UMLRpyPackage.IASSOCIATION_END_HANDLE__NAME:
+				return getName();
+			case UMLRpyPackage.IASSOCIATION_END_HANDLE__ID:
+				return getId();
+		}
+		return super.eGet(featureID, resolve, coreType);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void eSet(int featureID, Object newValue) {
+		switch (featureID) {
+			case UMLRpyPackage.IASSOCIATION_END_HANDLE__M2_CLASS:
+				setM2Class((String)newValue);
+				return;
+			case UMLRpyPackage.IASSOCIATION_END_HANDLE__FILENAME:
+				setFilename((String)newValue);
+				return;
+			case UMLRpyPackage.IASSOCIATION_END_HANDLE__SUBSYSTEM:
+				setSubsystem((String)newValue);
+				return;
+			case UMLRpyPackage.IASSOCIATION_END_HANDLE__CLASS:
+				setClass((String)newValue);
+				return;
+			case UMLRpyPackage.IASSOCIATION_END_HANDLE__NAME:
+				setName((String)newValue);
+				return;
+			case UMLRpyPackage.IASSOCIATION_END_HANDLE__ID:
+				setId((String)newValue);
+				return;
+		}
+		super.eSet(featureID, newValue);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void eUnset(int featureID) {
+		switch (featureID) {
+			case UMLRpyPackage.IASSOCIATION_END_HANDLE__M2_CLASS:
+				setM2Class(M2_CLASS_EDEFAULT);
+				return;
+			case UMLRpyPackage.IASSOCIATION_END_HANDLE__FILENAME:
+				setFilename(FILENAME_EDEFAULT);
+				return;
+			case UMLRpyPackage.IASSOCIATION_END_HANDLE__SUBSYSTEM:
+				setSubsystem(SUBSYSTEM_EDEFAULT);
+				return;
+			case UMLRpyPackage.IASSOCIATION_END_HANDLE__CLASS:
+				setClass(CLASS_EDEFAULT);
+				return;
+			case UMLRpyPackage.IASSOCIATION_END_HANDLE__NAME:
+				setName(NAME_EDEFAULT);
+				return;
+			case UMLRpyPackage.IASSOCIATION_END_HANDLE__ID:
+				setId(ID_EDEFAULT);
+				return;
+		}
+		super.eUnset(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public boolean eIsSet(int featureID) {
+		switch (featureID) {
+			case UMLRpyPackage.IASSOCIATION_END_HANDLE__M2_CLASS:
+				return M2_CLASS_EDEFAULT == null ? m2Class != null : !M2_CLASS_EDEFAULT.equals(m2Class);
+			case UMLRpyPackage.IASSOCIATION_END_HANDLE__FILENAME:
+				return FILENAME_EDEFAULT == null ? filename != null : !FILENAME_EDEFAULT.equals(filename);
+			case UMLRpyPackage.IASSOCIATION_END_HANDLE__SUBSYSTEM:
+				return SUBSYSTEM_EDEFAULT == null ? subsystem != null : !SUBSYSTEM_EDEFAULT.equals(subsystem);
+			case UMLRpyPackage.IASSOCIATION_END_HANDLE__CLASS:
+				return CLASS_EDEFAULT == null ? class_ != null : !CLASS_EDEFAULT.equals(class_);
+			case UMLRpyPackage.IASSOCIATION_END_HANDLE__NAME:
+				return NAME_EDEFAULT == null ? name != null : !NAME_EDEFAULT.equals(name);
+			case UMLRpyPackage.IASSOCIATION_END_HANDLE__ID:
+				return ID_EDEFAULT == null ? id != null : !ID_EDEFAULT.equals(id);
+		}
+		return super.eIsSet(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String toString() {
+		if (eIsProxy()) return super.toString();
+
+		StringBuffer result = new StringBuffer(super.toString());
+		result.append(" (m2Class: "); //$NON-NLS-1$
+		result.append(m2Class);
+		result.append(", filename: "); //$NON-NLS-1$
+		result.append(filename);
+		result.append(", subsystem: "); //$NON-NLS-1$
+		result.append(subsystem);
+		result.append(", class: "); //$NON-NLS-1$
+		result.append(class_);
+		result.append(", name: "); //$NON-NLS-1$
+		result.append(name);
+		result.append(", id: "); //$NON-NLS-1$
+		result.append(id);
+		result.append(')');
+		return result.toString();
+	}
+
+} //IAssociationEndHandleImpl
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/IAssociationEndImpl.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/IAssociationEndImpl.java
new file mode 100755
index 0000000..0cc86cc
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/IAssociationEndImpl.java
@@ -0,0 +1,1682 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl;
+
+import java.lang.reflect.InvocationTargetException;
+import java.util.Collection;
+
+import org.eclipse.emf.common.notify.Notification;
+import org.eclipse.emf.common.notify.NotificationChain;
+
+import org.eclipse.emf.common.util.EList;
+import org.eclipse.emf.ecore.EAnnotation;
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.EModelElement;
+import org.eclipse.emf.ecore.EcorePackage;
+import org.eclipse.emf.ecore.InternalEObject;
+
+import org.eclipse.emf.ecore.impl.ENotificationImpl;
+
+import org.eclipse.emf.ecore.util.EDataTypeEList;
+import org.eclipse.emf.ecore.util.EObjectContainmentWithInverseEList;
+import org.eclipse.emf.ecore.util.InternalEList;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ElementsType;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.FromLinkType;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IAssociationClass;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IAssociationEnd;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IAttribute;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IClass;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IDescription;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IModelElement;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IPropertyContainer;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IStereotype;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IType;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.InverseType;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.M_hTargetType;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.M_pModelObjectType;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.M_subjectType;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ToLinkType;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>IAssociation End</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * </p>
+ * <ul>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IAssociationEndImpl#getUmlDependencyID <em>Uml Dependency ID</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IAssociationEndImpl#getObjectCreation <em>Object Creation</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IAssociationEndImpl#getRequiremenTracabilityHandle <em>Requiremen Tracability Handle</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IAssociationEndImpl#getDescription <em>Description</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IAssociationEndImpl#getProperties <em>Properties</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IAssociationEndImpl#getImplicitClass <em>Implicit Class</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IAssociationEndImpl#getEAnnotations <em>EAnnotations</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IAssociationEndImpl#getDisplayName <em>Display Name</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IAssociationEndImpl#getId <em>Id</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IAssociationEndImpl#getMyState <em>My State</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IAssociationEndImpl#getName <em>Name</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IAssociationEndImpl#getMultiplicity <em>Multiplicity</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IAssociationEndImpl#getOtherClass <em>Other Class</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IAssociationEndImpl#getLinkName <em>Link Name</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IAssociationEndImpl#getLinkType <em>Link Type</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IAssociationEndImpl#getNavigability <em>Navigability</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IAssociationEndImpl#getInverse <em>Inverse</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IAssociationEndImpl#getModifiedTimeWeak <em>Modified Time Weak</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IAssociationEndImpl#getQualifiers <em>Qualifiers</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IAssociationEndImpl#getStereotypes <em>Stereotypes</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IAssociationEndImpl#getCodeUpdateCGTime <em>Code Update CG Time</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IAssociationEndImpl#getQualifierType <em>Qualifier Type</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IAssociationEndImpl#getM_associationClass <em>Massociation Class</em>}</li>
+ * </ul>
+ *
+ * @generated
+ */
+public class IAssociationEndImpl extends AssociationsTypeImpl implements IAssociationEnd {
+	/**
+	 * The default value of the '{@link #getUmlDependencyID() <em>Uml Dependency ID</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getUmlDependencyID()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String UML_DEPENDENCY_ID_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getUmlDependencyID() <em>Uml Dependency ID</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getUmlDependencyID()
+	 * @generated
+	 * @ordered
+	 */
+	protected String umlDependencyID = UML_DEPENDENCY_ID_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getObjectCreation() <em>Object Creation</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getObjectCreation()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String OBJECT_CREATION_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getObjectCreation() <em>Object Creation</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getObjectCreation()
+	 * @generated
+	 * @ordered
+	 */
+	protected String objectCreation = OBJECT_CREATION_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getRequiremenTracabilityHandle() <em>Requiremen Tracability Handle</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getRequiremenTracabilityHandle()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String REQUIREMEN_TRACABILITY_HANDLE_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getRequiremenTracabilityHandle() <em>Requiremen Tracability Handle</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getRequiremenTracabilityHandle()
+	 * @generated
+	 * @ordered
+	 */
+	protected String requiremenTracabilityHandle = REQUIREMEN_TRACABILITY_HANDLE_EDEFAULT;
+
+	/**
+	 * The cached value of the '{@link #getDescription() <em>Description</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getDescription()
+	 * @generated
+	 * @ordered
+	 */
+	protected IDescription description;
+
+	/**
+	 * The cached value of the '{@link #getProperties() <em>Properties</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getProperties()
+	 * @generated
+	 * @ordered
+	 */
+	protected IPropertyContainer properties;
+
+	/**
+	 * The cached value of the '{@link #getImplicitClass() <em>Implicit Class</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getImplicitClass()
+	 * @generated
+	 * @ordered
+	 */
+	protected IClass implicitClass;
+
+	/**
+	 * The cached value of the '{@link #getEAnnotations() <em>EAnnotations</em>}' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getEAnnotations()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<EAnnotation> eAnnotations;
+
+	/**
+	 * The default value of the '{@link #getDisplayName() <em>Display Name</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getDisplayName()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String DISPLAY_NAME_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getDisplayName() <em>Display Name</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getDisplayName()
+	 * @generated
+	 * @ordered
+	 */
+	protected String displayName = DISPLAY_NAME_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getId() <em>Id</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getId()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String ID_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getId() <em>Id</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getId()
+	 * @generated
+	 * @ordered
+	 */
+	protected String id = ID_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getMyState() <em>My State</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getMyState()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String MY_STATE_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getMyState() <em>My State</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getMyState()
+	 * @generated
+	 * @ordered
+	 */
+	protected String myState = MY_STATE_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getName() <em>Name</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getName()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String NAME_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getName() <em>Name</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getName()
+	 * @generated
+	 * @ordered
+	 */
+	protected String name = NAME_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getMultiplicity() <em>Multiplicity</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getMultiplicity()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String MULTIPLICITY_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getMultiplicity() <em>Multiplicity</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getMultiplicity()
+	 * @generated
+	 * @ordered
+	 */
+	protected String multiplicity = MULTIPLICITY_EDEFAULT;
+
+	/**
+	 * The cached value of the '{@link #getOtherClass() <em>Other Class</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getOtherClass()
+	 * @generated
+	 * @ordered
+	 */
+	protected ElementsType otherClass;
+
+	/**
+	 * The default value of the '{@link #getLinkName() <em>Link Name</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getLinkName()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String LINK_NAME_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getLinkName() <em>Link Name</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getLinkName()
+	 * @generated
+	 * @ordered
+	 */
+	protected String linkName = LINK_NAME_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getLinkType() <em>Link Type</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getLinkType()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String LINK_TYPE_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getLinkType() <em>Link Type</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getLinkType()
+	 * @generated
+	 * @ordered
+	 */
+	protected String linkType = LINK_TYPE_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getNavigability() <em>Navigability</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getNavigability()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String NAVIGABILITY_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getNavigability() <em>Navigability</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getNavigability()
+	 * @generated
+	 * @ordered
+	 */
+	protected String navigability = NAVIGABILITY_EDEFAULT;
+
+	/**
+	 * The cached value of the '{@link #getInverse() <em>Inverse</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getInverse()
+	 * @generated
+	 * @ordered
+	 */
+	protected InverseType inverse;
+
+	/**
+	 * The cached value of the '{@link #getModifiedTimeWeak() <em>Modified Time Weak</em>}' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getModifiedTimeWeak()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<String> modifiedTimeWeak;
+
+	/**
+	 * The cached value of the '{@link #getQualifiers() <em>Qualifiers</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getQualifiers()
+	 * @generated
+	 * @ordered
+	 */
+	protected IAttribute qualifiers;
+
+	/**
+	 * The cached value of the '{@link #getStereotypes() <em>Stereotypes</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getStereotypes()
+	 * @generated
+	 * @ordered
+	 */
+	protected IStereotype stereotypes;
+
+	/**
+	 * The cached value of the '{@link #getCodeUpdateCGTime() <em>Code Update CG Time</em>}' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getCodeUpdateCGTime()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<String> codeUpdateCGTime;
+
+	/**
+	 * The cached value of the '{@link #getQualifierType() <em>Qualifier Type</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getQualifierType()
+	 * @generated
+	 * @ordered
+	 */
+	protected IType qualifierType;
+
+	/**
+	 * The cached value of the '{@link #getM_associationClass() <em>Massociation Class</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_associationClass()
+	 * @generated
+	 * @ordered
+	 */
+	protected IAssociationClass m_associationClass;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected IAssociationEndImpl() {
+		super();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EClass eStaticClass() {
+		return UMLRpyPackage.eINSTANCE.getIAssociationEnd();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getUmlDependencyID() {
+		return umlDependencyID;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setUmlDependencyID(String newUmlDependencyID) {
+		String oldUmlDependencyID = umlDependencyID;
+		umlDependencyID = newUmlDependencyID;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IASSOCIATION_END__UML_DEPENDENCY_ID, oldUmlDependencyID, umlDependencyID));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getObjectCreation() {
+		return objectCreation;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setObjectCreation(String newObjectCreation) {
+		String oldObjectCreation = objectCreation;
+		objectCreation = newObjectCreation;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IASSOCIATION_END__OBJECT_CREATION, oldObjectCreation, objectCreation));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getRequiremenTracabilityHandle() {
+		return requiremenTracabilityHandle;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setRequiremenTracabilityHandle(String newRequiremenTracabilityHandle) {
+		String oldRequiremenTracabilityHandle = requiremenTracabilityHandle;
+		requiremenTracabilityHandle = newRequiremenTracabilityHandle;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IASSOCIATION_END__REQUIREMEN_TRACABILITY_HANDLE, oldRequiremenTracabilityHandle, requiremenTracabilityHandle));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IDescription getDescription() {
+		if (description != null && description.eIsProxy()) {
+			InternalEObject oldDescription = (InternalEObject)description;
+			description = (IDescription)eResolveProxy(oldDescription);
+			if (description != oldDescription) {
+				InternalEObject newDescription = (InternalEObject)description;
+				NotificationChain msgs = oldDescription.eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IASSOCIATION_END__DESCRIPTION, null, null);
+				if (newDescription.eInternalContainer() == null) {
+					msgs = newDescription.eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IASSOCIATION_END__DESCRIPTION, null, msgs);
+				}
+				if (msgs != null) msgs.dispatch();
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.IASSOCIATION_END__DESCRIPTION, oldDescription, description));
+			}
+		}
+		return description;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IDescription basicGetDescription() {
+		return description;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public NotificationChain basicSetDescription(IDescription newDescription, NotificationChain msgs) {
+		IDescription oldDescription = description;
+		description = newDescription;
+		if (eNotificationRequired()) {
+			ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IASSOCIATION_END__DESCRIPTION, oldDescription, newDescription);
+			if (msgs == null) msgs = notification; else msgs.add(notification);
+		}
+		return msgs;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setDescription(IDescription newDescription) {
+		if (newDescription != description) {
+			NotificationChain msgs = null;
+			if (description != null)
+				msgs = ((InternalEObject)description).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IASSOCIATION_END__DESCRIPTION, null, msgs);
+			if (newDescription != null)
+				msgs = ((InternalEObject)newDescription).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IASSOCIATION_END__DESCRIPTION, null, msgs);
+			msgs = basicSetDescription(newDescription, msgs);
+			if (msgs != null) msgs.dispatch();
+		}
+		else if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IASSOCIATION_END__DESCRIPTION, newDescription, newDescription));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IPropertyContainer getProperties() {
+		if (properties != null && properties.eIsProxy()) {
+			InternalEObject oldProperties = (InternalEObject)properties;
+			properties = (IPropertyContainer)eResolveProxy(oldProperties);
+			if (properties != oldProperties) {
+				InternalEObject newProperties = (InternalEObject)properties;
+				NotificationChain msgs = oldProperties.eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IASSOCIATION_END__PROPERTIES, null, null);
+				if (newProperties.eInternalContainer() == null) {
+					msgs = newProperties.eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IASSOCIATION_END__PROPERTIES, null, msgs);
+				}
+				if (msgs != null) msgs.dispatch();
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.IASSOCIATION_END__PROPERTIES, oldProperties, properties));
+			}
+		}
+		return properties;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IPropertyContainer basicGetProperties() {
+		return properties;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public NotificationChain basicSetProperties(IPropertyContainer newProperties, NotificationChain msgs) {
+		IPropertyContainer oldProperties = properties;
+		properties = newProperties;
+		if (eNotificationRequired()) {
+			ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IASSOCIATION_END__PROPERTIES, oldProperties, newProperties);
+			if (msgs == null) msgs = notification; else msgs.add(notification);
+		}
+		return msgs;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setProperties(IPropertyContainer newProperties) {
+		if (newProperties != properties) {
+			NotificationChain msgs = null;
+			if (properties != null)
+				msgs = ((InternalEObject)properties).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IASSOCIATION_END__PROPERTIES, null, msgs);
+			if (newProperties != null)
+				msgs = ((InternalEObject)newProperties).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IASSOCIATION_END__PROPERTIES, null, msgs);
+			msgs = basicSetProperties(newProperties, msgs);
+			if (msgs != null) msgs.dispatch();
+		}
+		else if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IASSOCIATION_END__PROPERTIES, newProperties, newProperties));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IClass getImplicitClass() {
+		if (implicitClass != null && implicitClass.eIsProxy()) {
+			InternalEObject oldImplicitClass = (InternalEObject)implicitClass;
+			implicitClass = (IClass)eResolveProxy(oldImplicitClass);
+			if (implicitClass != oldImplicitClass) {
+				InternalEObject newImplicitClass = (InternalEObject)implicitClass;
+				NotificationChain msgs = oldImplicitClass.eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IASSOCIATION_END__IMPLICIT_CLASS, null, null);
+				if (newImplicitClass.eInternalContainer() == null) {
+					msgs = newImplicitClass.eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IASSOCIATION_END__IMPLICIT_CLASS, null, msgs);
+				}
+				if (msgs != null) msgs.dispatch();
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.IASSOCIATION_END__IMPLICIT_CLASS, oldImplicitClass, implicitClass));
+			}
+		}
+		return implicitClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IClass basicGetImplicitClass() {
+		return implicitClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public NotificationChain basicSetImplicitClass(IClass newImplicitClass, NotificationChain msgs) {
+		IClass oldImplicitClass = implicitClass;
+		implicitClass = newImplicitClass;
+		if (eNotificationRequired()) {
+			ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IASSOCIATION_END__IMPLICIT_CLASS, oldImplicitClass, newImplicitClass);
+			if (msgs == null) msgs = notification; else msgs.add(notification);
+		}
+		return msgs;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setImplicitClass(IClass newImplicitClass) {
+		if (newImplicitClass != implicitClass) {
+			NotificationChain msgs = null;
+			if (implicitClass != null)
+				msgs = ((InternalEObject)implicitClass).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IASSOCIATION_END__IMPLICIT_CLASS, null, msgs);
+			if (newImplicitClass != null)
+				msgs = ((InternalEObject)newImplicitClass).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IASSOCIATION_END__IMPLICIT_CLASS, null, msgs);
+			msgs = basicSetImplicitClass(newImplicitClass, msgs);
+			if (msgs != null) msgs.dispatch();
+		}
+		else if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IASSOCIATION_END__IMPLICIT_CLASS, newImplicitClass, newImplicitClass));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<EAnnotation> getEAnnotations() {
+		if (eAnnotations == null) {
+			eAnnotations = new EObjectContainmentWithInverseEList<EAnnotation>(EAnnotation.class, this, UMLRpyPackage.IASSOCIATION_END__EANNOTATIONS, EcorePackage.EANNOTATION__EMODEL_ELEMENT);
+		}
+		return eAnnotations;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getDisplayName() {
+		return displayName;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setDisplayName(String newDisplayName) {
+		String oldDisplayName = displayName;
+		displayName = newDisplayName;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IASSOCIATION_END__DISPLAY_NAME, oldDisplayName, displayName));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getId() {
+		return id;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setId(String newId) {
+		String oldId = id;
+		id = newId;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IASSOCIATION_END__ID, oldId, id));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getMyState() {
+		return myState;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setMyState(String newMyState) {
+		String oldMyState = myState;
+		myState = newMyState;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IASSOCIATION_END__MY_STATE, oldMyState, myState));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getName() {
+		return name;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setName(String newName) {
+		String oldName = name;
+		name = newName;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IASSOCIATION_END__NAME, oldName, name));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getMultiplicity() {
+		return multiplicity;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setMultiplicity(String newMultiplicity) {
+		String oldMultiplicity = multiplicity;
+		multiplicity = newMultiplicity;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IASSOCIATION_END__MULTIPLICITY, oldMultiplicity, multiplicity));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public ElementsType getOtherClass() {
+		if (otherClass != null && otherClass.eIsProxy()) {
+			InternalEObject oldOtherClass = (InternalEObject)otherClass;
+			otherClass = (ElementsType)eResolveProxy(oldOtherClass);
+			if (otherClass != oldOtherClass) {
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.IASSOCIATION_END__OTHER_CLASS, oldOtherClass, otherClass));
+			}
+		}
+		return otherClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public ElementsType basicGetOtherClass() {
+		return otherClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setOtherClass(ElementsType newOtherClass) {
+		ElementsType oldOtherClass = otherClass;
+		otherClass = newOtherClass;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IASSOCIATION_END__OTHER_CLASS, oldOtherClass, otherClass));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getLinkName() {
+		return linkName;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setLinkName(String newLinkName) {
+		String oldLinkName = linkName;
+		linkName = newLinkName;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IASSOCIATION_END__LINK_NAME, oldLinkName, linkName));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getLinkType() {
+		return linkType;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setLinkType(String newLinkType) {
+		String oldLinkType = linkType;
+		linkType = newLinkType;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IASSOCIATION_END__LINK_TYPE, oldLinkType, linkType));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getNavigability() {
+		return navigability;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setNavigability(String newNavigability) {
+		String oldNavigability = navigability;
+		navigability = newNavigability;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IASSOCIATION_END__NAVIGABILITY, oldNavigability, navigability));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public InverseType getInverse() {
+		if (inverse != null && inverse.eIsProxy()) {
+			InternalEObject oldInverse = (InternalEObject)inverse;
+			inverse = (InverseType)eResolveProxy(oldInverse);
+			if (inverse != oldInverse) {
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.IASSOCIATION_END__INVERSE, oldInverse, inverse));
+			}
+		}
+		return inverse;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public InverseType basicGetInverse() {
+		return inverse;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setInverse(InverseType newInverse) {
+		InverseType oldInverse = inverse;
+		inverse = newInverse;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IASSOCIATION_END__INVERSE, oldInverse, inverse));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<String> getModifiedTimeWeak() {
+		if (modifiedTimeWeak == null) {
+			modifiedTimeWeak = new EDataTypeEList<String>(String.class, this, UMLRpyPackage.IASSOCIATION_END__MODIFIED_TIME_WEAK);
+		}
+		return modifiedTimeWeak;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IAttribute getQualifiers() {
+		if (qualifiers != null && qualifiers.eIsProxy()) {
+			InternalEObject oldQualifiers = (InternalEObject)qualifiers;
+			qualifiers = (IAttribute)eResolveProxy(oldQualifiers);
+			if (qualifiers != oldQualifiers) {
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.IASSOCIATION_END__QUALIFIERS, oldQualifiers, qualifiers));
+			}
+		}
+		return qualifiers;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IAttribute basicGetQualifiers() {
+		return qualifiers;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setQualifiers(IAttribute newQualifiers) {
+		IAttribute oldQualifiers = qualifiers;
+		qualifiers = newQualifiers;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IASSOCIATION_END__QUALIFIERS, oldQualifiers, qualifiers));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IStereotype getStereotypes() {
+		if (stereotypes != null && stereotypes.eIsProxy()) {
+			InternalEObject oldStereotypes = (InternalEObject)stereotypes;
+			stereotypes = (IStereotype)eResolveProxy(oldStereotypes);
+			if (stereotypes != oldStereotypes) {
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.IASSOCIATION_END__STEREOTYPES, oldStereotypes, stereotypes));
+			}
+		}
+		return stereotypes;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IStereotype basicGetStereotypes() {
+		return stereotypes;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setStereotypes(IStereotype newStereotypes) {
+		IStereotype oldStereotypes = stereotypes;
+		stereotypes = newStereotypes;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IASSOCIATION_END__STEREOTYPES, oldStereotypes, stereotypes));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<String> getCodeUpdateCGTime() {
+		if (codeUpdateCGTime == null) {
+			codeUpdateCGTime = new EDataTypeEList<String>(String.class, this, UMLRpyPackage.IASSOCIATION_END__CODE_UPDATE_CG_TIME);
+		}
+		return codeUpdateCGTime;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IType getQualifierType() {
+		if (qualifierType != null && qualifierType.eIsProxy()) {
+			InternalEObject oldQualifierType = (InternalEObject)qualifierType;
+			qualifierType = (IType)eResolveProxy(oldQualifierType);
+			if (qualifierType != oldQualifierType) {
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.IASSOCIATION_END__QUALIFIER_TYPE, oldQualifierType, qualifierType));
+			}
+		}
+		return qualifierType;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IType basicGetQualifierType() {
+		return qualifierType;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setQualifierType(IType newQualifierType) {
+		IType oldQualifierType = qualifierType;
+		qualifierType = newQualifierType;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IASSOCIATION_END__QUALIFIER_TYPE, oldQualifierType, qualifierType));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IAssociationClass getM_associationClass() {
+		if (m_associationClass != null && m_associationClass.eIsProxy()) {
+			InternalEObject oldM_associationClass = (InternalEObject)m_associationClass;
+			m_associationClass = (IAssociationClass)eResolveProxy(oldM_associationClass);
+			if (m_associationClass != oldM_associationClass) {
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.IASSOCIATION_END__MASSOCIATION_CLASS, oldM_associationClass, m_associationClass));
+			}
+		}
+		return m_associationClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IAssociationClass basicGetM_associationClass() {
+		return m_associationClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_associationClass(IAssociationClass newM_associationClass) {
+		IAssociationClass oldM_associationClass = m_associationClass;
+		m_associationClass = newM_associationClass;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IASSOCIATION_END__MASSOCIATION_CLASS, oldM_associationClass, m_associationClass));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAnnotation getEAnnotation(String source) {
+		// TODO: implement this method
+		// Ensure that you remove @generated or mark it @generated NOT
+		throw new UnsupportedOperationException();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@SuppressWarnings("unchecked")
+	@Override
+	public NotificationChain eInverseAdd(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
+		switch (featureID) {
+			case UMLRpyPackage.IASSOCIATION_END__EANNOTATIONS:
+				return ((InternalEList<InternalEObject>)(InternalEList<?>)getEAnnotations()).basicAdd(otherEnd, msgs);
+		}
+		return super.eInverseAdd(otherEnd, featureID, msgs);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
+		switch (featureID) {
+			case UMLRpyPackage.IASSOCIATION_END__DESCRIPTION:
+				return basicSetDescription(null, msgs);
+			case UMLRpyPackage.IASSOCIATION_END__PROPERTIES:
+				return basicSetProperties(null, msgs);
+			case UMLRpyPackage.IASSOCIATION_END__IMPLICIT_CLASS:
+				return basicSetImplicitClass(null, msgs);
+			case UMLRpyPackage.IASSOCIATION_END__EANNOTATIONS:
+				return ((InternalEList<?>)getEAnnotations()).basicRemove(otherEnd, msgs);
+		}
+		return super.eInverseRemove(otherEnd, featureID, msgs);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object eGet(int featureID, boolean resolve, boolean coreType) {
+		switch (featureID) {
+			case UMLRpyPackage.IASSOCIATION_END__UML_DEPENDENCY_ID:
+				return getUmlDependencyID();
+			case UMLRpyPackage.IASSOCIATION_END__OBJECT_CREATION:
+				return getObjectCreation();
+			case UMLRpyPackage.IASSOCIATION_END__REQUIREMEN_TRACABILITY_HANDLE:
+				return getRequiremenTracabilityHandle();
+			case UMLRpyPackage.IASSOCIATION_END__DESCRIPTION:
+				if (resolve) return getDescription();
+				return basicGetDescription();
+			case UMLRpyPackage.IASSOCIATION_END__PROPERTIES:
+				if (resolve) return getProperties();
+				return basicGetProperties();
+			case UMLRpyPackage.IASSOCIATION_END__IMPLICIT_CLASS:
+				if (resolve) return getImplicitClass();
+				return basicGetImplicitClass();
+			case UMLRpyPackage.IASSOCIATION_END__EANNOTATIONS:
+				return getEAnnotations();
+			case UMLRpyPackage.IASSOCIATION_END__DISPLAY_NAME:
+				return getDisplayName();
+			case UMLRpyPackage.IASSOCIATION_END__ID:
+				return getId();
+			case UMLRpyPackage.IASSOCIATION_END__MY_STATE:
+				return getMyState();
+			case UMLRpyPackage.IASSOCIATION_END__NAME:
+				return getName();
+			case UMLRpyPackage.IASSOCIATION_END__MULTIPLICITY:
+				return getMultiplicity();
+			case UMLRpyPackage.IASSOCIATION_END__OTHER_CLASS:
+				if (resolve) return getOtherClass();
+				return basicGetOtherClass();
+			case UMLRpyPackage.IASSOCIATION_END__LINK_NAME:
+				return getLinkName();
+			case UMLRpyPackage.IASSOCIATION_END__LINK_TYPE:
+				return getLinkType();
+			case UMLRpyPackage.IASSOCIATION_END__NAVIGABILITY:
+				return getNavigability();
+			case UMLRpyPackage.IASSOCIATION_END__INVERSE:
+				if (resolve) return getInverse();
+				return basicGetInverse();
+			case UMLRpyPackage.IASSOCIATION_END__MODIFIED_TIME_WEAK:
+				return getModifiedTimeWeak();
+			case UMLRpyPackage.IASSOCIATION_END__QUALIFIERS:
+				if (resolve) return getQualifiers();
+				return basicGetQualifiers();
+			case UMLRpyPackage.IASSOCIATION_END__STEREOTYPES:
+				if (resolve) return getStereotypes();
+				return basicGetStereotypes();
+			case UMLRpyPackage.IASSOCIATION_END__CODE_UPDATE_CG_TIME:
+				return getCodeUpdateCGTime();
+			case UMLRpyPackage.IASSOCIATION_END__QUALIFIER_TYPE:
+				if (resolve) return getQualifierType();
+				return basicGetQualifierType();
+			case UMLRpyPackage.IASSOCIATION_END__MASSOCIATION_CLASS:
+				if (resolve) return getM_associationClass();
+				return basicGetM_associationClass();
+		}
+		return super.eGet(featureID, resolve, coreType);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@SuppressWarnings("unchecked")
+	@Override
+	public void eSet(int featureID, Object newValue) {
+		switch (featureID) {
+			case UMLRpyPackage.IASSOCIATION_END__UML_DEPENDENCY_ID:
+				setUmlDependencyID((String)newValue);
+				return;
+			case UMLRpyPackage.IASSOCIATION_END__OBJECT_CREATION:
+				setObjectCreation((String)newValue);
+				return;
+			case UMLRpyPackage.IASSOCIATION_END__REQUIREMEN_TRACABILITY_HANDLE:
+				setRequiremenTracabilityHandle((String)newValue);
+				return;
+			case UMLRpyPackage.IASSOCIATION_END__DESCRIPTION:
+				setDescription((IDescription)newValue);
+				return;
+			case UMLRpyPackage.IASSOCIATION_END__PROPERTIES:
+				setProperties((IPropertyContainer)newValue);
+				return;
+			case UMLRpyPackage.IASSOCIATION_END__IMPLICIT_CLASS:
+				setImplicitClass((IClass)newValue);
+				return;
+			case UMLRpyPackage.IASSOCIATION_END__EANNOTATIONS:
+				getEAnnotations().clear();
+				getEAnnotations().addAll((Collection<? extends EAnnotation>)newValue);
+				return;
+			case UMLRpyPackage.IASSOCIATION_END__DISPLAY_NAME:
+				setDisplayName((String)newValue);
+				return;
+			case UMLRpyPackage.IASSOCIATION_END__ID:
+				setId((String)newValue);
+				return;
+			case UMLRpyPackage.IASSOCIATION_END__MY_STATE:
+				setMyState((String)newValue);
+				return;
+			case UMLRpyPackage.IASSOCIATION_END__NAME:
+				setName((String)newValue);
+				return;
+			case UMLRpyPackage.IASSOCIATION_END__MULTIPLICITY:
+				setMultiplicity((String)newValue);
+				return;
+			case UMLRpyPackage.IASSOCIATION_END__OTHER_CLASS:
+				setOtherClass((ElementsType)newValue);
+				return;
+			case UMLRpyPackage.IASSOCIATION_END__LINK_NAME:
+				setLinkName((String)newValue);
+				return;
+			case UMLRpyPackage.IASSOCIATION_END__LINK_TYPE:
+				setLinkType((String)newValue);
+				return;
+			case UMLRpyPackage.IASSOCIATION_END__NAVIGABILITY:
+				setNavigability((String)newValue);
+				return;
+			case UMLRpyPackage.IASSOCIATION_END__INVERSE:
+				setInverse((InverseType)newValue);
+				return;
+			case UMLRpyPackage.IASSOCIATION_END__MODIFIED_TIME_WEAK:
+				getModifiedTimeWeak().clear();
+				getModifiedTimeWeak().addAll((Collection<? extends String>)newValue);
+				return;
+			case UMLRpyPackage.IASSOCIATION_END__QUALIFIERS:
+				setQualifiers((IAttribute)newValue);
+				return;
+			case UMLRpyPackage.IASSOCIATION_END__STEREOTYPES:
+				setStereotypes((IStereotype)newValue);
+				return;
+			case UMLRpyPackage.IASSOCIATION_END__CODE_UPDATE_CG_TIME:
+				getCodeUpdateCGTime().clear();
+				getCodeUpdateCGTime().addAll((Collection<? extends String>)newValue);
+				return;
+			case UMLRpyPackage.IASSOCIATION_END__QUALIFIER_TYPE:
+				setQualifierType((IType)newValue);
+				return;
+			case UMLRpyPackage.IASSOCIATION_END__MASSOCIATION_CLASS:
+				setM_associationClass((IAssociationClass)newValue);
+				return;
+		}
+		super.eSet(featureID, newValue);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void eUnset(int featureID) {
+		switch (featureID) {
+			case UMLRpyPackage.IASSOCIATION_END__UML_DEPENDENCY_ID:
+				setUmlDependencyID(UML_DEPENDENCY_ID_EDEFAULT);
+				return;
+			case UMLRpyPackage.IASSOCIATION_END__OBJECT_CREATION:
+				setObjectCreation(OBJECT_CREATION_EDEFAULT);
+				return;
+			case UMLRpyPackage.IASSOCIATION_END__REQUIREMEN_TRACABILITY_HANDLE:
+				setRequiremenTracabilityHandle(REQUIREMEN_TRACABILITY_HANDLE_EDEFAULT);
+				return;
+			case UMLRpyPackage.IASSOCIATION_END__DESCRIPTION:
+				setDescription((IDescription)null);
+				return;
+			case UMLRpyPackage.IASSOCIATION_END__PROPERTIES:
+				setProperties((IPropertyContainer)null);
+				return;
+			case UMLRpyPackage.IASSOCIATION_END__IMPLICIT_CLASS:
+				setImplicitClass((IClass)null);
+				return;
+			case UMLRpyPackage.IASSOCIATION_END__EANNOTATIONS:
+				getEAnnotations().clear();
+				return;
+			case UMLRpyPackage.IASSOCIATION_END__DISPLAY_NAME:
+				setDisplayName(DISPLAY_NAME_EDEFAULT);
+				return;
+			case UMLRpyPackage.IASSOCIATION_END__ID:
+				setId(ID_EDEFAULT);
+				return;
+			case UMLRpyPackage.IASSOCIATION_END__MY_STATE:
+				setMyState(MY_STATE_EDEFAULT);
+				return;
+			case UMLRpyPackage.IASSOCIATION_END__NAME:
+				setName(NAME_EDEFAULT);
+				return;
+			case UMLRpyPackage.IASSOCIATION_END__MULTIPLICITY:
+				setMultiplicity(MULTIPLICITY_EDEFAULT);
+				return;
+			case UMLRpyPackage.IASSOCIATION_END__OTHER_CLASS:
+				setOtherClass((ElementsType)null);
+				return;
+			case UMLRpyPackage.IASSOCIATION_END__LINK_NAME:
+				setLinkName(LINK_NAME_EDEFAULT);
+				return;
+			case UMLRpyPackage.IASSOCIATION_END__LINK_TYPE:
+				setLinkType(LINK_TYPE_EDEFAULT);
+				return;
+			case UMLRpyPackage.IASSOCIATION_END__NAVIGABILITY:
+				setNavigability(NAVIGABILITY_EDEFAULT);
+				return;
+			case UMLRpyPackage.IASSOCIATION_END__INVERSE:
+				setInverse((InverseType)null);
+				return;
+			case UMLRpyPackage.IASSOCIATION_END__MODIFIED_TIME_WEAK:
+				getModifiedTimeWeak().clear();
+				return;
+			case UMLRpyPackage.IASSOCIATION_END__QUALIFIERS:
+				setQualifiers((IAttribute)null);
+				return;
+			case UMLRpyPackage.IASSOCIATION_END__STEREOTYPES:
+				setStereotypes((IStereotype)null);
+				return;
+			case UMLRpyPackage.IASSOCIATION_END__CODE_UPDATE_CG_TIME:
+				getCodeUpdateCGTime().clear();
+				return;
+			case UMLRpyPackage.IASSOCIATION_END__QUALIFIER_TYPE:
+				setQualifierType((IType)null);
+				return;
+			case UMLRpyPackage.IASSOCIATION_END__MASSOCIATION_CLASS:
+				setM_associationClass((IAssociationClass)null);
+				return;
+		}
+		super.eUnset(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public boolean eIsSet(int featureID) {
+		switch (featureID) {
+			case UMLRpyPackage.IASSOCIATION_END__UML_DEPENDENCY_ID:
+				return UML_DEPENDENCY_ID_EDEFAULT == null ? umlDependencyID != null : !UML_DEPENDENCY_ID_EDEFAULT.equals(umlDependencyID);
+			case UMLRpyPackage.IASSOCIATION_END__OBJECT_CREATION:
+				return OBJECT_CREATION_EDEFAULT == null ? objectCreation != null : !OBJECT_CREATION_EDEFAULT.equals(objectCreation);
+			case UMLRpyPackage.IASSOCIATION_END__REQUIREMEN_TRACABILITY_HANDLE:
+				return REQUIREMEN_TRACABILITY_HANDLE_EDEFAULT == null ? requiremenTracabilityHandle != null : !REQUIREMEN_TRACABILITY_HANDLE_EDEFAULT.equals(requiremenTracabilityHandle);
+			case UMLRpyPackage.IASSOCIATION_END__DESCRIPTION:
+				return description != null;
+			case UMLRpyPackage.IASSOCIATION_END__PROPERTIES:
+				return properties != null;
+			case UMLRpyPackage.IASSOCIATION_END__IMPLICIT_CLASS:
+				return implicitClass != null;
+			case UMLRpyPackage.IASSOCIATION_END__EANNOTATIONS:
+				return eAnnotations != null && !eAnnotations.isEmpty();
+			case UMLRpyPackage.IASSOCIATION_END__DISPLAY_NAME:
+				return DISPLAY_NAME_EDEFAULT == null ? displayName != null : !DISPLAY_NAME_EDEFAULT.equals(displayName);
+			case UMLRpyPackage.IASSOCIATION_END__ID:
+				return ID_EDEFAULT == null ? id != null : !ID_EDEFAULT.equals(id);
+			case UMLRpyPackage.IASSOCIATION_END__MY_STATE:
+				return MY_STATE_EDEFAULT == null ? myState != null : !MY_STATE_EDEFAULT.equals(myState);
+			case UMLRpyPackage.IASSOCIATION_END__NAME:
+				return NAME_EDEFAULT == null ? name != null : !NAME_EDEFAULT.equals(name);
+			case UMLRpyPackage.IASSOCIATION_END__MULTIPLICITY:
+				return MULTIPLICITY_EDEFAULT == null ? multiplicity != null : !MULTIPLICITY_EDEFAULT.equals(multiplicity);
+			case UMLRpyPackage.IASSOCIATION_END__OTHER_CLASS:
+				return otherClass != null;
+			case UMLRpyPackage.IASSOCIATION_END__LINK_NAME:
+				return LINK_NAME_EDEFAULT == null ? linkName != null : !LINK_NAME_EDEFAULT.equals(linkName);
+			case UMLRpyPackage.IASSOCIATION_END__LINK_TYPE:
+				return LINK_TYPE_EDEFAULT == null ? linkType != null : !LINK_TYPE_EDEFAULT.equals(linkType);
+			case UMLRpyPackage.IASSOCIATION_END__NAVIGABILITY:
+				return NAVIGABILITY_EDEFAULT == null ? navigability != null : !NAVIGABILITY_EDEFAULT.equals(navigability);
+			case UMLRpyPackage.IASSOCIATION_END__INVERSE:
+				return inverse != null;
+			case UMLRpyPackage.IASSOCIATION_END__MODIFIED_TIME_WEAK:
+				return modifiedTimeWeak != null && !modifiedTimeWeak.isEmpty();
+			case UMLRpyPackage.IASSOCIATION_END__QUALIFIERS:
+				return qualifiers != null;
+			case UMLRpyPackage.IASSOCIATION_END__STEREOTYPES:
+				return stereotypes != null;
+			case UMLRpyPackage.IASSOCIATION_END__CODE_UPDATE_CG_TIME:
+				return codeUpdateCGTime != null && !codeUpdateCGTime.isEmpty();
+			case UMLRpyPackage.IASSOCIATION_END__QUALIFIER_TYPE:
+				return qualifierType != null;
+			case UMLRpyPackage.IASSOCIATION_END__MASSOCIATION_CLASS:
+				return m_associationClass != null;
+		}
+		return super.eIsSet(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public int eBaseStructuralFeatureID(int derivedFeatureID, Class<?> baseClass) {
+		if (baseClass == M_subjectType.class) {
+			switch (derivedFeatureID) {
+				case UMLRpyPackage.IASSOCIATION_END__UML_DEPENDENCY_ID: return UMLRpyPackage.MSUBJECT_TYPE__UML_DEPENDENCY_ID;
+				case UMLRpyPackage.IASSOCIATION_END__OBJECT_CREATION: return UMLRpyPackage.MSUBJECT_TYPE__OBJECT_CREATION;
+				default: return -1;
+			}
+		}
+		if (baseClass == M_hTargetType.class) {
+			switch (derivedFeatureID) {
+				case UMLRpyPackage.IASSOCIATION_END__REQUIREMEN_TRACABILITY_HANDLE: return UMLRpyPackage.MHTARGET_TYPE__REQUIREMEN_TRACABILITY_HANDLE;
+				case UMLRpyPackage.IASSOCIATION_END__DESCRIPTION: return UMLRpyPackage.MHTARGET_TYPE__DESCRIPTION;
+				case UMLRpyPackage.IASSOCIATION_END__PROPERTIES: return UMLRpyPackage.MHTARGET_TYPE__PROPERTIES;
+				default: return -1;
+			}
+		}
+		if (baseClass == M_pModelObjectType.class) {
+			switch (derivedFeatureID) {
+				default: return -1;
+			}
+		}
+		if (baseClass == FromLinkType.class) {
+			switch (derivedFeatureID) {
+				default: return -1;
+			}
+		}
+		if (baseClass == ToLinkType.class) {
+			switch (derivedFeatureID) {
+				case UMLRpyPackage.IASSOCIATION_END__IMPLICIT_CLASS: return UMLRpyPackage.TO_LINK_TYPE__IMPLICIT_CLASS;
+				default: return -1;
+			}
+		}
+		if (baseClass == EModelElement.class) {
+			switch (derivedFeatureID) {
+				case UMLRpyPackage.IASSOCIATION_END__EANNOTATIONS: return EcorePackage.EMODEL_ELEMENT__EANNOTATIONS;
+				default: return -1;
+			}
+		}
+		if (baseClass == IModelElement.class) {
+			switch (derivedFeatureID) {
+				case UMLRpyPackage.IASSOCIATION_END__DISPLAY_NAME: return UMLRpyPackage.IMODEL_ELEMENT__DISPLAY_NAME;
+				default: return -1;
+			}
+		}
+		return super.eBaseStructuralFeatureID(derivedFeatureID, baseClass);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public int eDerivedStructuralFeatureID(int baseFeatureID, Class<?> baseClass) {
+		if (baseClass == M_subjectType.class) {
+			switch (baseFeatureID) {
+				case UMLRpyPackage.MSUBJECT_TYPE__UML_DEPENDENCY_ID: return UMLRpyPackage.IASSOCIATION_END__UML_DEPENDENCY_ID;
+				case UMLRpyPackage.MSUBJECT_TYPE__OBJECT_CREATION: return UMLRpyPackage.IASSOCIATION_END__OBJECT_CREATION;
+				default: return -1;
+			}
+		}
+		if (baseClass == M_hTargetType.class) {
+			switch (baseFeatureID) {
+				case UMLRpyPackage.MHTARGET_TYPE__REQUIREMEN_TRACABILITY_HANDLE: return UMLRpyPackage.IASSOCIATION_END__REQUIREMEN_TRACABILITY_HANDLE;
+				case UMLRpyPackage.MHTARGET_TYPE__DESCRIPTION: return UMLRpyPackage.IASSOCIATION_END__DESCRIPTION;
+				case UMLRpyPackage.MHTARGET_TYPE__PROPERTIES: return UMLRpyPackage.IASSOCIATION_END__PROPERTIES;
+				default: return -1;
+			}
+		}
+		if (baseClass == M_pModelObjectType.class) {
+			switch (baseFeatureID) {
+				default: return -1;
+			}
+		}
+		if (baseClass == FromLinkType.class) {
+			switch (baseFeatureID) {
+				default: return -1;
+			}
+		}
+		if (baseClass == ToLinkType.class) {
+			switch (baseFeatureID) {
+				case UMLRpyPackage.TO_LINK_TYPE__IMPLICIT_CLASS: return UMLRpyPackage.IASSOCIATION_END__IMPLICIT_CLASS;
+				default: return -1;
+			}
+		}
+		if (baseClass == EModelElement.class) {
+			switch (baseFeatureID) {
+				case EcorePackage.EMODEL_ELEMENT__EANNOTATIONS: return UMLRpyPackage.IASSOCIATION_END__EANNOTATIONS;
+				default: return -1;
+			}
+		}
+		if (baseClass == IModelElement.class) {
+			switch (baseFeatureID) {
+				case UMLRpyPackage.IMODEL_ELEMENT__DISPLAY_NAME: return UMLRpyPackage.IASSOCIATION_END__DISPLAY_NAME;
+				default: return -1;
+			}
+		}
+		return super.eDerivedStructuralFeatureID(baseFeatureID, baseClass);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public int eDerivedOperationID(int baseOperationID, Class<?> baseClass) {
+		if (baseClass == M_subjectType.class) {
+			switch (baseOperationID) {
+				default: return -1;
+			}
+		}
+		if (baseClass == M_hTargetType.class) {
+			switch (baseOperationID) {
+				default: return -1;
+			}
+		}
+		if (baseClass == M_pModelObjectType.class) {
+			switch (baseOperationID) {
+				default: return -1;
+			}
+		}
+		if (baseClass == FromLinkType.class) {
+			switch (baseOperationID) {
+				default: return -1;
+			}
+		}
+		if (baseClass == ToLinkType.class) {
+			switch (baseOperationID) {
+				default: return -1;
+			}
+		}
+		if (baseClass == EModelElement.class) {
+			switch (baseOperationID) {
+				case EcorePackage.EMODEL_ELEMENT___GET_EANNOTATION__STRING: return UMLRpyPackage.IASSOCIATION_END___GET_EANNOTATION__STRING;
+				default: return -1;
+			}
+		}
+		if (baseClass == IModelElement.class) {
+			switch (baseOperationID) {
+				default: return -1;
+			}
+		}
+		return super.eDerivedOperationID(baseOperationID, baseClass);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object eInvoke(int operationID, EList<?> arguments) throws InvocationTargetException {
+		switch (operationID) {
+			case UMLRpyPackage.IASSOCIATION_END___GET_EANNOTATION__STRING:
+				return getEAnnotation((String)arguments.get(0));
+		}
+		return super.eInvoke(operationID, arguments);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String toString() {
+		if (eIsProxy()) return super.toString();
+
+		StringBuffer result = new StringBuffer(super.toString());
+		result.append(" (umlDependencyID: "); //$NON-NLS-1$
+		result.append(umlDependencyID);
+		result.append(", objectCreation: "); //$NON-NLS-1$
+		result.append(objectCreation);
+		result.append(", requiremenTracabilityHandle: "); //$NON-NLS-1$
+		result.append(requiremenTracabilityHandle);
+		result.append(", displayName: "); //$NON-NLS-1$
+		result.append(displayName);
+		result.append(", id: "); //$NON-NLS-1$
+		result.append(id);
+		result.append(", myState: "); //$NON-NLS-1$
+		result.append(myState);
+		result.append(", name: "); //$NON-NLS-1$
+		result.append(name);
+		result.append(", multiplicity: "); //$NON-NLS-1$
+		result.append(multiplicity);
+		result.append(", linkName: "); //$NON-NLS-1$
+		result.append(linkName);
+		result.append(", linkType: "); //$NON-NLS-1$
+		result.append(linkType);
+		result.append(", navigability: "); //$NON-NLS-1$
+		result.append(navigability);
+		result.append(", modifiedTimeWeak: "); //$NON-NLS-1$
+		result.append(modifiedTimeWeak);
+		result.append(", codeUpdateCGTime: "); //$NON-NLS-1$
+		result.append(codeUpdateCGTime);
+		result.append(')');
+		return result.toString();
+	}
+
+} //IAssociationEndImpl
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/IAssociationRoleImpl.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/IAssociationRoleImpl.java
new file mode 100755
index 0000000..3173d4f
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/IAssociationRoleImpl.java
@@ -0,0 +1,782 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl;
+
+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.EDataTypeEList;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.AssociationsType;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IAssociationRole;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IClassifierRole;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>IAssociation Role</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * </p>
+ * <ul>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IAssociationRoleImpl#getId <em>Id</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IAssociationRoleImpl#getMyState <em>My State</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IAssociationRoleImpl#getM_fAssocType1 <em>MfAssoc Type1</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IAssociationRoleImpl#getM_fAssocType2 <em>MfAssoc Type2</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IAssociationRoleImpl#getM_pSource <em>MpSource</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IAssociationRoleImpl#getM_pTarget <em>MpTarget</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IAssociationRoleImpl#getM_pFormalAssoc1 <em>MpFormal Assoc1</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IAssociationRoleImpl#getM_pFormalAssoc2 <em>MpFormal Assoc2</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IAssociationRoleImpl#getName <em>Name</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IAssociationRoleImpl#getModifiedTimeWeak <em>Modified Time Weak</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IAssociationRoleImpl#getObjectCreation <em>Object Creation</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IAssociationRoleImpl#getUmlDependencyID <em>Uml Dependency ID</em>}</li>
+ * </ul>
+ *
+ * @generated
+ */
+public class IAssociationRoleImpl extends IModelElementImpl implements IAssociationRole {
+	/**
+	 * The default value of the '{@link #getId() <em>Id</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getId()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String ID_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getId() <em>Id</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getId()
+	 * @generated
+	 * @ordered
+	 */
+	protected String id = ID_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getMyState() <em>My State</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getMyState()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String MY_STATE_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getMyState() <em>My State</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getMyState()
+	 * @generated
+	 * @ordered
+	 */
+	protected String myState = MY_STATE_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getM_fAssocType1() <em>MfAssoc Type1</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_fAssocType1()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String MFASSOC_TYPE1_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getM_fAssocType1() <em>MfAssoc Type1</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_fAssocType1()
+	 * @generated
+	 * @ordered
+	 */
+	protected String m_fAssocType1 = MFASSOC_TYPE1_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getM_fAssocType2() <em>MfAssoc Type2</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_fAssocType2()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String MFASSOC_TYPE2_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getM_fAssocType2() <em>MfAssoc Type2</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_fAssocType2()
+	 * @generated
+	 * @ordered
+	 */
+	protected String m_fAssocType2 = MFASSOC_TYPE2_EDEFAULT;
+
+	/**
+	 * The cached value of the '{@link #getM_pSource() <em>MpSource</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_pSource()
+	 * @generated
+	 * @ordered
+	 */
+	protected IClassifierRole m_pSource;
+
+	/**
+	 * The cached value of the '{@link #getM_pTarget() <em>MpTarget</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_pTarget()
+	 * @generated
+	 * @ordered
+	 */
+	protected IClassifierRole m_pTarget;
+
+	/**
+	 * The cached value of the '{@link #getM_pFormalAssoc1() <em>MpFormal Assoc1</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_pFormalAssoc1()
+	 * @generated
+	 * @ordered
+	 */
+	protected AssociationsType m_pFormalAssoc1;
+
+	/**
+	 * The cached value of the '{@link #getM_pFormalAssoc2() <em>MpFormal Assoc2</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_pFormalAssoc2()
+	 * @generated
+	 * @ordered
+	 */
+	protected AssociationsType m_pFormalAssoc2;
+
+	/**
+	 * The default value of the '{@link #getName() <em>Name</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getName()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String NAME_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getName() <em>Name</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getName()
+	 * @generated
+	 * @ordered
+	 */
+	protected String name = NAME_EDEFAULT;
+
+	/**
+	 * The cached value of the '{@link #getModifiedTimeWeak() <em>Modified Time Weak</em>}' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getModifiedTimeWeak()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<String> modifiedTimeWeak;
+
+	/**
+	 * The default value of the '{@link #getObjectCreation() <em>Object Creation</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getObjectCreation()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String OBJECT_CREATION_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getObjectCreation() <em>Object Creation</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getObjectCreation()
+	 * @generated
+	 * @ordered
+	 */
+	protected String objectCreation = OBJECT_CREATION_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getUmlDependencyID() <em>Uml Dependency ID</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getUmlDependencyID()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String UML_DEPENDENCY_ID_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getUmlDependencyID() <em>Uml Dependency ID</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getUmlDependencyID()
+	 * @generated
+	 * @ordered
+	 */
+	protected String umlDependencyID = UML_DEPENDENCY_ID_EDEFAULT;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected IAssociationRoleImpl() {
+		super();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EClass eStaticClass() {
+		return UMLRpyPackage.eINSTANCE.getIAssociationRole();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getId() {
+		return id;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setId(String newId) {
+		String oldId = id;
+		id = newId;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IASSOCIATION_ROLE__ID, oldId, id));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getMyState() {
+		return myState;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setMyState(String newMyState) {
+		String oldMyState = myState;
+		myState = newMyState;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IASSOCIATION_ROLE__MY_STATE, oldMyState, myState));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getM_fAssocType1() {
+		return m_fAssocType1;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_fAssocType1(String newM_fAssocType1) {
+		String oldM_fAssocType1 = m_fAssocType1;
+		m_fAssocType1 = newM_fAssocType1;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IASSOCIATION_ROLE__MFASSOC_TYPE1, oldM_fAssocType1, m_fAssocType1));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getM_fAssocType2() {
+		return m_fAssocType2;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_fAssocType2(String newM_fAssocType2) {
+		String oldM_fAssocType2 = m_fAssocType2;
+		m_fAssocType2 = newM_fAssocType2;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IASSOCIATION_ROLE__MFASSOC_TYPE2, oldM_fAssocType2, m_fAssocType2));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IClassifierRole getM_pSource() {
+		if (m_pSource != null && m_pSource.eIsProxy()) {
+			InternalEObject oldM_pSource = (InternalEObject)m_pSource;
+			m_pSource = (IClassifierRole)eResolveProxy(oldM_pSource);
+			if (m_pSource != oldM_pSource) {
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.IASSOCIATION_ROLE__MPSOURCE, oldM_pSource, m_pSource));
+			}
+		}
+		return m_pSource;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IClassifierRole basicGetM_pSource() {
+		return m_pSource;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_pSource(IClassifierRole newM_pSource) {
+		IClassifierRole oldM_pSource = m_pSource;
+		m_pSource = newM_pSource;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IASSOCIATION_ROLE__MPSOURCE, oldM_pSource, m_pSource));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IClassifierRole getM_pTarget() {
+		if (m_pTarget != null && m_pTarget.eIsProxy()) {
+			InternalEObject oldM_pTarget = (InternalEObject)m_pTarget;
+			m_pTarget = (IClassifierRole)eResolveProxy(oldM_pTarget);
+			if (m_pTarget != oldM_pTarget) {
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.IASSOCIATION_ROLE__MPTARGET, oldM_pTarget, m_pTarget));
+			}
+		}
+		return m_pTarget;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IClassifierRole basicGetM_pTarget() {
+		return m_pTarget;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_pTarget(IClassifierRole newM_pTarget) {
+		IClassifierRole oldM_pTarget = m_pTarget;
+		m_pTarget = newM_pTarget;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IASSOCIATION_ROLE__MPTARGET, oldM_pTarget, m_pTarget));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public AssociationsType getM_pFormalAssoc1() {
+		if (m_pFormalAssoc1 != null && m_pFormalAssoc1.eIsProxy()) {
+			InternalEObject oldM_pFormalAssoc1 = (InternalEObject)m_pFormalAssoc1;
+			m_pFormalAssoc1 = (AssociationsType)eResolveProxy(oldM_pFormalAssoc1);
+			if (m_pFormalAssoc1 != oldM_pFormalAssoc1) {
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.IASSOCIATION_ROLE__MPFORMAL_ASSOC1, oldM_pFormalAssoc1, m_pFormalAssoc1));
+			}
+		}
+		return m_pFormalAssoc1;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public AssociationsType basicGetM_pFormalAssoc1() {
+		return m_pFormalAssoc1;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_pFormalAssoc1(AssociationsType newM_pFormalAssoc1) {
+		AssociationsType oldM_pFormalAssoc1 = m_pFormalAssoc1;
+		m_pFormalAssoc1 = newM_pFormalAssoc1;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IASSOCIATION_ROLE__MPFORMAL_ASSOC1, oldM_pFormalAssoc1, m_pFormalAssoc1));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public AssociationsType getM_pFormalAssoc2() {
+		if (m_pFormalAssoc2 != null && m_pFormalAssoc2.eIsProxy()) {
+			InternalEObject oldM_pFormalAssoc2 = (InternalEObject)m_pFormalAssoc2;
+			m_pFormalAssoc2 = (AssociationsType)eResolveProxy(oldM_pFormalAssoc2);
+			if (m_pFormalAssoc2 != oldM_pFormalAssoc2) {
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.IASSOCIATION_ROLE__MPFORMAL_ASSOC2, oldM_pFormalAssoc2, m_pFormalAssoc2));
+			}
+		}
+		return m_pFormalAssoc2;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public AssociationsType basicGetM_pFormalAssoc2() {
+		return m_pFormalAssoc2;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_pFormalAssoc2(AssociationsType newM_pFormalAssoc2) {
+		AssociationsType oldM_pFormalAssoc2 = m_pFormalAssoc2;
+		m_pFormalAssoc2 = newM_pFormalAssoc2;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IASSOCIATION_ROLE__MPFORMAL_ASSOC2, oldM_pFormalAssoc2, m_pFormalAssoc2));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getName() {
+		return name;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setName(String newName) {
+		String oldName = name;
+		name = newName;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IASSOCIATION_ROLE__NAME, oldName, name));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<String> getModifiedTimeWeak() {
+		if (modifiedTimeWeak == null) {
+			modifiedTimeWeak = new EDataTypeEList<String>(String.class, this, UMLRpyPackage.IASSOCIATION_ROLE__MODIFIED_TIME_WEAK);
+		}
+		return modifiedTimeWeak;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getObjectCreation() {
+		return objectCreation;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setObjectCreation(String newObjectCreation) {
+		String oldObjectCreation = objectCreation;
+		objectCreation = newObjectCreation;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IASSOCIATION_ROLE__OBJECT_CREATION, oldObjectCreation, objectCreation));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getUmlDependencyID() {
+		return umlDependencyID;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setUmlDependencyID(String newUmlDependencyID) {
+		String oldUmlDependencyID = umlDependencyID;
+		umlDependencyID = newUmlDependencyID;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IASSOCIATION_ROLE__UML_DEPENDENCY_ID, oldUmlDependencyID, umlDependencyID));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object eGet(int featureID, boolean resolve, boolean coreType) {
+		switch (featureID) {
+			case UMLRpyPackage.IASSOCIATION_ROLE__ID:
+				return getId();
+			case UMLRpyPackage.IASSOCIATION_ROLE__MY_STATE:
+				return getMyState();
+			case UMLRpyPackage.IASSOCIATION_ROLE__MFASSOC_TYPE1:
+				return getM_fAssocType1();
+			case UMLRpyPackage.IASSOCIATION_ROLE__MFASSOC_TYPE2:
+				return getM_fAssocType2();
+			case UMLRpyPackage.IASSOCIATION_ROLE__MPSOURCE:
+				if (resolve) return getM_pSource();
+				return basicGetM_pSource();
+			case UMLRpyPackage.IASSOCIATION_ROLE__MPTARGET:
+				if (resolve) return getM_pTarget();
+				return basicGetM_pTarget();
+			case UMLRpyPackage.IASSOCIATION_ROLE__MPFORMAL_ASSOC1:
+				if (resolve) return getM_pFormalAssoc1();
+				return basicGetM_pFormalAssoc1();
+			case UMLRpyPackage.IASSOCIATION_ROLE__MPFORMAL_ASSOC2:
+				if (resolve) return getM_pFormalAssoc2();
+				return basicGetM_pFormalAssoc2();
+			case UMLRpyPackage.IASSOCIATION_ROLE__NAME:
+				return getName();
+			case UMLRpyPackage.IASSOCIATION_ROLE__MODIFIED_TIME_WEAK:
+				return getModifiedTimeWeak();
+			case UMLRpyPackage.IASSOCIATION_ROLE__OBJECT_CREATION:
+				return getObjectCreation();
+			case UMLRpyPackage.IASSOCIATION_ROLE__UML_DEPENDENCY_ID:
+				return getUmlDependencyID();
+		}
+		return super.eGet(featureID, resolve, coreType);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@SuppressWarnings("unchecked")
+	@Override
+	public void eSet(int featureID, Object newValue) {
+		switch (featureID) {
+			case UMLRpyPackage.IASSOCIATION_ROLE__ID:
+				setId((String)newValue);
+				return;
+			case UMLRpyPackage.IASSOCIATION_ROLE__MY_STATE:
+				setMyState((String)newValue);
+				return;
+			case UMLRpyPackage.IASSOCIATION_ROLE__MFASSOC_TYPE1:
+				setM_fAssocType1((String)newValue);
+				return;
+			case UMLRpyPackage.IASSOCIATION_ROLE__MFASSOC_TYPE2:
+				setM_fAssocType2((String)newValue);
+				return;
+			case UMLRpyPackage.IASSOCIATION_ROLE__MPSOURCE:
+				setM_pSource((IClassifierRole)newValue);
+				return;
+			case UMLRpyPackage.IASSOCIATION_ROLE__MPTARGET:
+				setM_pTarget((IClassifierRole)newValue);
+				return;
+			case UMLRpyPackage.IASSOCIATION_ROLE__MPFORMAL_ASSOC1:
+				setM_pFormalAssoc1((AssociationsType)newValue);
+				return;
+			case UMLRpyPackage.IASSOCIATION_ROLE__MPFORMAL_ASSOC2:
+				setM_pFormalAssoc2((AssociationsType)newValue);
+				return;
+			case UMLRpyPackage.IASSOCIATION_ROLE__NAME:
+				setName((String)newValue);
+				return;
+			case UMLRpyPackage.IASSOCIATION_ROLE__MODIFIED_TIME_WEAK:
+				getModifiedTimeWeak().clear();
+				getModifiedTimeWeak().addAll((Collection<? extends String>)newValue);
+				return;
+			case UMLRpyPackage.IASSOCIATION_ROLE__OBJECT_CREATION:
+				setObjectCreation((String)newValue);
+				return;
+			case UMLRpyPackage.IASSOCIATION_ROLE__UML_DEPENDENCY_ID:
+				setUmlDependencyID((String)newValue);
+				return;
+		}
+		super.eSet(featureID, newValue);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void eUnset(int featureID) {
+		switch (featureID) {
+			case UMLRpyPackage.IASSOCIATION_ROLE__ID:
+				setId(ID_EDEFAULT);
+				return;
+			case UMLRpyPackage.IASSOCIATION_ROLE__MY_STATE:
+				setMyState(MY_STATE_EDEFAULT);
+				return;
+			case UMLRpyPackage.IASSOCIATION_ROLE__MFASSOC_TYPE1:
+				setM_fAssocType1(MFASSOC_TYPE1_EDEFAULT);
+				return;
+			case UMLRpyPackage.IASSOCIATION_ROLE__MFASSOC_TYPE2:
+				setM_fAssocType2(MFASSOC_TYPE2_EDEFAULT);
+				return;
+			case UMLRpyPackage.IASSOCIATION_ROLE__MPSOURCE:
+				setM_pSource((IClassifierRole)null);
+				return;
+			case UMLRpyPackage.IASSOCIATION_ROLE__MPTARGET:
+				setM_pTarget((IClassifierRole)null);
+				return;
+			case UMLRpyPackage.IASSOCIATION_ROLE__MPFORMAL_ASSOC1:
+				setM_pFormalAssoc1((AssociationsType)null);
+				return;
+			case UMLRpyPackage.IASSOCIATION_ROLE__MPFORMAL_ASSOC2:
+				setM_pFormalAssoc2((AssociationsType)null);
+				return;
+			case UMLRpyPackage.IASSOCIATION_ROLE__NAME:
+				setName(NAME_EDEFAULT);
+				return;
+			case UMLRpyPackage.IASSOCIATION_ROLE__MODIFIED_TIME_WEAK:
+				getModifiedTimeWeak().clear();
+				return;
+			case UMLRpyPackage.IASSOCIATION_ROLE__OBJECT_CREATION:
+				setObjectCreation(OBJECT_CREATION_EDEFAULT);
+				return;
+			case UMLRpyPackage.IASSOCIATION_ROLE__UML_DEPENDENCY_ID:
+				setUmlDependencyID(UML_DEPENDENCY_ID_EDEFAULT);
+				return;
+		}
+		super.eUnset(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public boolean eIsSet(int featureID) {
+		switch (featureID) {
+			case UMLRpyPackage.IASSOCIATION_ROLE__ID:
+				return ID_EDEFAULT == null ? id != null : !ID_EDEFAULT.equals(id);
+			case UMLRpyPackage.IASSOCIATION_ROLE__MY_STATE:
+				return MY_STATE_EDEFAULT == null ? myState != null : !MY_STATE_EDEFAULT.equals(myState);
+			case UMLRpyPackage.IASSOCIATION_ROLE__MFASSOC_TYPE1:
+				return MFASSOC_TYPE1_EDEFAULT == null ? m_fAssocType1 != null : !MFASSOC_TYPE1_EDEFAULT.equals(m_fAssocType1);
+			case UMLRpyPackage.IASSOCIATION_ROLE__MFASSOC_TYPE2:
+				return MFASSOC_TYPE2_EDEFAULT == null ? m_fAssocType2 != null : !MFASSOC_TYPE2_EDEFAULT.equals(m_fAssocType2);
+			case UMLRpyPackage.IASSOCIATION_ROLE__MPSOURCE:
+				return m_pSource != null;
+			case UMLRpyPackage.IASSOCIATION_ROLE__MPTARGET:
+				return m_pTarget != null;
+			case UMLRpyPackage.IASSOCIATION_ROLE__MPFORMAL_ASSOC1:
+				return m_pFormalAssoc1 != null;
+			case UMLRpyPackage.IASSOCIATION_ROLE__MPFORMAL_ASSOC2:
+				return m_pFormalAssoc2 != null;
+			case UMLRpyPackage.IASSOCIATION_ROLE__NAME:
+				return NAME_EDEFAULT == null ? name != null : !NAME_EDEFAULT.equals(name);
+			case UMLRpyPackage.IASSOCIATION_ROLE__MODIFIED_TIME_WEAK:
+				return modifiedTimeWeak != null && !modifiedTimeWeak.isEmpty();
+			case UMLRpyPackage.IASSOCIATION_ROLE__OBJECT_CREATION:
+				return OBJECT_CREATION_EDEFAULT == null ? objectCreation != null : !OBJECT_CREATION_EDEFAULT.equals(objectCreation);
+			case UMLRpyPackage.IASSOCIATION_ROLE__UML_DEPENDENCY_ID:
+				return UML_DEPENDENCY_ID_EDEFAULT == null ? umlDependencyID != null : !UML_DEPENDENCY_ID_EDEFAULT.equals(umlDependencyID);
+		}
+		return super.eIsSet(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String toString() {
+		if (eIsProxy()) return super.toString();
+
+		StringBuffer result = new StringBuffer(super.toString());
+		result.append(" (id: "); //$NON-NLS-1$
+		result.append(id);
+		result.append(", myState: "); //$NON-NLS-1$
+		result.append(myState);
+		result.append(", m_fAssocType1: "); //$NON-NLS-1$
+		result.append(m_fAssocType1);
+		result.append(", m_fAssocType2: "); //$NON-NLS-1$
+		result.append(m_fAssocType2);
+		result.append(", name: "); //$NON-NLS-1$
+		result.append(name);
+		result.append(", modifiedTimeWeak: "); //$NON-NLS-1$
+		result.append(modifiedTimeWeak);
+		result.append(", objectCreation: "); //$NON-NLS-1$
+		result.append(objectCreation);
+		result.append(", umlDependencyID: "); //$NON-NLS-1$
+		result.append(umlDependencyID);
+		result.append(')');
+		return result.toString();
+	}
+
+} //IAssociationRoleImpl
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/IAttributeImpl.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/IAttributeImpl.java
new file mode 100755
index 0000000..d46e625
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/IAttributeImpl.java
@@ -0,0 +1,1657 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl;
+
+import java.util.Collection;
+
+import org.eclipse.emf.common.notify.Notification;
+import org.eclipse.emf.common.notify.NotificationChain;
+
+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.EDataTypeEList;
+import org.eclipse.emf.ecore.util.EObjectContainmentEList;
+import org.eclipse.emf.ecore.util.InternalEList;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.DependsOnType;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ElementsType;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.End1_Type;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.End2_Type;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IAttribute;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IComment;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IDependency;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IDescription;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IDiagram;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ILiteralSpecification;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IPropertyContainer;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITag;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IUnit;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ItemsType;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.M_pModelObjectType;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.M_subjectType;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ValueType;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>IAttribute</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * </p>
+ * <ul>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IAttributeImpl#getUmlDependencyID <em>Uml Dependency ID</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IAttributeImpl#getObjectCreation <em>Object Creation</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IAttributeImpl#getModifiedTimeWeak <em>Modified Time Weak</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IAttributeImpl#getId <em>Id</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IAttributeImpl#getMyState <em>My State</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IAttributeImpl#getName <em>Name</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IAttributeImpl#getMultiplicity <em>Multiplicity</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IAttributeImpl#getTypeOf <em>Type Of</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IAttributeImpl#getProtection <em>Protection</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IAttributeImpl#getStatic <em>Static</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IAttributeImpl#getIsReference <em>Is Reference</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IAttributeImpl#getIsConstant <em>Is Constant</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IAttributeImpl#getStereotypes <em>Stereotypes</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IAttributeImpl#getValueSpecifications <em>Value Specifications</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IAttributeImpl#getProperties <em>Properties</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IAttributeImpl#getDescription <em>Description</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IAttributeImpl#getTags <em>Tags</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IAttributeImpl#getDefaultValue <em>Default Value</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IAttributeImpl#getDependencies <em>Dependencies</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IAttributeImpl#getLastID <em>Last ID</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IAttributeImpl#getAnnotations <em>Annotations</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IAttributeImpl#getRequiremenTracabilityHandle <em>Requiremen Tracability Handle</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IAttributeImpl#getCodeUpdateCGTime <em>Code Update CG Time</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IAttributeImpl#getTheMainDiagram <em>The Main Diagram</em>}</li>
+ * </ul>
+ *
+ * @generated
+ */
+public class IAttributeImpl extends IVariableImpl implements IAttribute {
+	/**
+	 * The default value of the '{@link #getUmlDependencyID() <em>Uml Dependency ID</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getUmlDependencyID()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String UML_DEPENDENCY_ID_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getUmlDependencyID() <em>Uml Dependency ID</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getUmlDependencyID()
+	 * @generated
+	 * @ordered
+	 */
+	protected String umlDependencyID = UML_DEPENDENCY_ID_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getObjectCreation() <em>Object Creation</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getObjectCreation()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String OBJECT_CREATION_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getObjectCreation() <em>Object Creation</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getObjectCreation()
+	 * @generated
+	 * @ordered
+	 */
+	protected String objectCreation = OBJECT_CREATION_EDEFAULT;
+
+	/**
+	 * The cached value of the '{@link #getModifiedTimeWeak() <em>Modified Time Weak</em>}' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getModifiedTimeWeak()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<String> modifiedTimeWeak;
+
+	/**
+	 * The default value of the '{@link #getId() <em>Id</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getId()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String ID_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getId() <em>Id</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getId()
+	 * @generated
+	 * @ordered
+	 */
+	protected String id = ID_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getMyState() <em>My State</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getMyState()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String MY_STATE_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getMyState() <em>My State</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getMyState()
+	 * @generated
+	 * @ordered
+	 */
+	protected String myState = MY_STATE_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getName() <em>Name</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getName()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String NAME_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getName() <em>Name</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getName()
+	 * @generated
+	 * @ordered
+	 */
+	protected String name = NAME_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getMultiplicity() <em>Multiplicity</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getMultiplicity()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String MULTIPLICITY_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getMultiplicity() <em>Multiplicity</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getMultiplicity()
+	 * @generated
+	 * @ordered
+	 */
+	protected String multiplicity = MULTIPLICITY_EDEFAULT;
+
+	/**
+	 * The cached value of the '{@link #getTypeOf() <em>Type Of</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getTypeOf()
+	 * @generated
+	 * @ordered
+	 */
+	protected IUnit typeOf;
+
+	/**
+	 * The default value of the '{@link #getProtection() <em>Protection</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getProtection()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String PROTECTION_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getProtection() <em>Protection</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getProtection()
+	 * @generated
+	 * @ordered
+	 */
+	protected String protection = PROTECTION_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getStatic() <em>Static</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getStatic()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String STATIC_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getStatic() <em>Static</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getStatic()
+	 * @generated
+	 * @ordered
+	 */
+	protected String static_ = STATIC_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getIsReference() <em>Is Reference</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getIsReference()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String IS_REFERENCE_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getIsReference() <em>Is Reference</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getIsReference()
+	 * @generated
+	 * @ordered
+	 */
+	protected String isReference = IS_REFERENCE_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getIsConstant() <em>Is Constant</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getIsConstant()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String IS_CONSTANT_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getIsConstant() <em>Is Constant</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getIsConstant()
+	 * @generated
+	 * @ordered
+	 */
+	protected String isConstant = IS_CONSTANT_EDEFAULT;
+
+	/**
+	 * The cached value of the '{@link #getStereotypes() <em>Stereotypes</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getStereotypes()
+	 * @generated
+	 * @ordered
+	 */
+	protected IUnit stereotypes;
+
+	/**
+	 * The cached value of the '{@link #getValueSpecifications() <em>Value Specifications</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getValueSpecifications()
+	 * @generated
+	 * @ordered
+	 */
+	protected ILiteralSpecification valueSpecifications;
+
+	/**
+	 * The cached value of the '{@link #getProperties() <em>Properties</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getProperties()
+	 * @generated
+	 * @ordered
+	 */
+	protected IPropertyContainer properties;
+
+	/**
+	 * The cached value of the '{@link #getDescription() <em>Description</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getDescription()
+	 * @generated
+	 * @ordered
+	 */
+	protected IDescription description;
+
+	/**
+	 * The cached value of the '{@link #getTags() <em>Tags</em>}' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getTags()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<ITag> tags;
+
+	/**
+	 * The default value of the '{@link #getDefaultValue() <em>Default Value</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getDefaultValue()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String DEFAULT_VALUE_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getDefaultValue() <em>Default Value</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getDefaultValue()
+	 * @generated
+	 * @ordered
+	 */
+	protected String defaultValue = DEFAULT_VALUE_EDEFAULT;
+
+	/**
+	 * The cached value of the '{@link #getDependencies() <em>Dependencies</em>}' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getDependencies()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<IDependency> dependencies;
+
+	/**
+	 * The default value of the '{@link #getLastID() <em>Last ID</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getLastID()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String LAST_ID_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getLastID() <em>Last ID</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getLastID()
+	 * @generated
+	 * @ordered
+	 */
+	protected String lastID = LAST_ID_EDEFAULT;
+
+	/**
+	 * The cached value of the '{@link #getAnnotations() <em>Annotations</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getAnnotations()
+	 * @generated
+	 * @ordered
+	 */
+	protected IComment annotations;
+
+	/**
+	 * The default value of the '{@link #getRequiremenTracabilityHandle() <em>Requiremen Tracability Handle</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getRequiremenTracabilityHandle()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String REQUIREMEN_TRACABILITY_HANDLE_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getRequiremenTracabilityHandle() <em>Requiremen Tracability Handle</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getRequiremenTracabilityHandle()
+	 * @generated
+	 * @ordered
+	 */
+	protected String requiremenTracabilityHandle = REQUIREMEN_TRACABILITY_HANDLE_EDEFAULT;
+
+	/**
+	 * The cached value of the '{@link #getCodeUpdateCGTime() <em>Code Update CG Time</em>}' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getCodeUpdateCGTime()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<String> codeUpdateCGTime;
+
+	/**
+	 * The cached value of the '{@link #getTheMainDiagram() <em>The Main Diagram</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getTheMainDiagram()
+	 * @generated
+	 * @ordered
+	 */
+	protected IDiagram theMainDiagram;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected IAttributeImpl() {
+		super();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EClass eStaticClass() {
+		return UMLRpyPackage.eINSTANCE.getIAttribute();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getUmlDependencyID() {
+		return umlDependencyID;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setUmlDependencyID(String newUmlDependencyID) {
+		String oldUmlDependencyID = umlDependencyID;
+		umlDependencyID = newUmlDependencyID;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IATTRIBUTE__UML_DEPENDENCY_ID, oldUmlDependencyID, umlDependencyID));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getObjectCreation() {
+		return objectCreation;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setObjectCreation(String newObjectCreation) {
+		String oldObjectCreation = objectCreation;
+		objectCreation = newObjectCreation;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IATTRIBUTE__OBJECT_CREATION, oldObjectCreation, objectCreation));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<String> getModifiedTimeWeak() {
+		if (modifiedTimeWeak == null) {
+			modifiedTimeWeak = new EDataTypeEList<String>(String.class, this, UMLRpyPackage.IATTRIBUTE__MODIFIED_TIME_WEAK);
+		}
+		return modifiedTimeWeak;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getId() {
+		return id;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setId(String newId) {
+		String oldId = id;
+		id = newId;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IATTRIBUTE__ID, oldId, id));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getMyState() {
+		return myState;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setMyState(String newMyState) {
+		String oldMyState = myState;
+		myState = newMyState;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IATTRIBUTE__MY_STATE, oldMyState, myState));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getName() {
+		return name;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setName(String newName) {
+		String oldName = name;
+		name = newName;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IATTRIBUTE__NAME, oldName, name));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getMultiplicity() {
+		return multiplicity;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setMultiplicity(String newMultiplicity) {
+		String oldMultiplicity = multiplicity;
+		multiplicity = newMultiplicity;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IATTRIBUTE__MULTIPLICITY, oldMultiplicity, multiplicity));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IUnit getTypeOf() {
+		if (typeOf != null && typeOf.eIsProxy()) {
+			InternalEObject oldTypeOf = (InternalEObject)typeOf;
+			typeOf = (IUnit)eResolveProxy(oldTypeOf);
+			if (typeOf != oldTypeOf) {
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.IATTRIBUTE__TYPE_OF, oldTypeOf, typeOf));
+			}
+		}
+		return typeOf;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IUnit basicGetTypeOf() {
+		return typeOf;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setTypeOf(IUnit newTypeOf) {
+		IUnit oldTypeOf = typeOf;
+		typeOf = newTypeOf;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IATTRIBUTE__TYPE_OF, oldTypeOf, typeOf));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getProtection() {
+		return protection;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setProtection(String newProtection) {
+		String oldProtection = protection;
+		protection = newProtection;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IATTRIBUTE__PROTECTION, oldProtection, protection));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getStatic() {
+		return static_;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setStatic(String newStatic) {
+		String oldStatic = static_;
+		static_ = newStatic;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IATTRIBUTE__STATIC, oldStatic, static_));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getIsReference() {
+		return isReference;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setIsReference(String newIsReference) {
+		String oldIsReference = isReference;
+		isReference = newIsReference;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IATTRIBUTE__IS_REFERENCE, oldIsReference, isReference));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getIsConstant() {
+		return isConstant;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setIsConstant(String newIsConstant) {
+		String oldIsConstant = isConstant;
+		isConstant = newIsConstant;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IATTRIBUTE__IS_CONSTANT, oldIsConstant, isConstant));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IUnit getStereotypes() {
+		if (stereotypes != null && stereotypes.eIsProxy()) {
+			InternalEObject oldStereotypes = (InternalEObject)stereotypes;
+			stereotypes = (IUnit)eResolveProxy(oldStereotypes);
+			if (stereotypes != oldStereotypes) {
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.IATTRIBUTE__STEREOTYPES, oldStereotypes, stereotypes));
+			}
+		}
+		return stereotypes;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IUnit basicGetStereotypes() {
+		return stereotypes;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setStereotypes(IUnit newStereotypes) {
+		IUnit oldStereotypes = stereotypes;
+		stereotypes = newStereotypes;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IATTRIBUTE__STEREOTYPES, oldStereotypes, stereotypes));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public ILiteralSpecification getValueSpecifications() {
+		if (valueSpecifications != null && valueSpecifications.eIsProxy()) {
+			InternalEObject oldValueSpecifications = (InternalEObject)valueSpecifications;
+			valueSpecifications = (ILiteralSpecification)eResolveProxy(oldValueSpecifications);
+			if (valueSpecifications != oldValueSpecifications) {
+				InternalEObject newValueSpecifications = (InternalEObject)valueSpecifications;
+				NotificationChain msgs = oldValueSpecifications.eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IATTRIBUTE__VALUE_SPECIFICATIONS, null, null);
+				if (newValueSpecifications.eInternalContainer() == null) {
+					msgs = newValueSpecifications.eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IATTRIBUTE__VALUE_SPECIFICATIONS, null, msgs);
+				}
+				if (msgs != null) msgs.dispatch();
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.IATTRIBUTE__VALUE_SPECIFICATIONS, oldValueSpecifications, valueSpecifications));
+			}
+		}
+		return valueSpecifications;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public ILiteralSpecification basicGetValueSpecifications() {
+		return valueSpecifications;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public NotificationChain basicSetValueSpecifications(ILiteralSpecification newValueSpecifications, NotificationChain msgs) {
+		ILiteralSpecification oldValueSpecifications = valueSpecifications;
+		valueSpecifications = newValueSpecifications;
+		if (eNotificationRequired()) {
+			ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IATTRIBUTE__VALUE_SPECIFICATIONS, oldValueSpecifications, newValueSpecifications);
+			if (msgs == null) msgs = notification; else msgs.add(notification);
+		}
+		return msgs;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setValueSpecifications(ILiteralSpecification newValueSpecifications) {
+		if (newValueSpecifications != valueSpecifications) {
+			NotificationChain msgs = null;
+			if (valueSpecifications != null)
+				msgs = ((InternalEObject)valueSpecifications).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IATTRIBUTE__VALUE_SPECIFICATIONS, null, msgs);
+			if (newValueSpecifications != null)
+				msgs = ((InternalEObject)newValueSpecifications).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IATTRIBUTE__VALUE_SPECIFICATIONS, null, msgs);
+			msgs = basicSetValueSpecifications(newValueSpecifications, msgs);
+			if (msgs != null) msgs.dispatch();
+		}
+		else if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IATTRIBUTE__VALUE_SPECIFICATIONS, newValueSpecifications, newValueSpecifications));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IPropertyContainer getProperties() {
+		if (properties != null && properties.eIsProxy()) {
+			InternalEObject oldProperties = (InternalEObject)properties;
+			properties = (IPropertyContainer)eResolveProxy(oldProperties);
+			if (properties != oldProperties) {
+				InternalEObject newProperties = (InternalEObject)properties;
+				NotificationChain msgs = oldProperties.eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IATTRIBUTE__PROPERTIES, null, null);
+				if (newProperties.eInternalContainer() == null) {
+					msgs = newProperties.eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IATTRIBUTE__PROPERTIES, null, msgs);
+				}
+				if (msgs != null) msgs.dispatch();
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.IATTRIBUTE__PROPERTIES, oldProperties, properties));
+			}
+		}
+		return properties;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IPropertyContainer basicGetProperties() {
+		return properties;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public NotificationChain basicSetProperties(IPropertyContainer newProperties, NotificationChain msgs) {
+		IPropertyContainer oldProperties = properties;
+		properties = newProperties;
+		if (eNotificationRequired()) {
+			ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IATTRIBUTE__PROPERTIES, oldProperties, newProperties);
+			if (msgs == null) msgs = notification; else msgs.add(notification);
+		}
+		return msgs;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setProperties(IPropertyContainer newProperties) {
+		if (newProperties != properties) {
+			NotificationChain msgs = null;
+			if (properties != null)
+				msgs = ((InternalEObject)properties).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IATTRIBUTE__PROPERTIES, null, msgs);
+			if (newProperties != null)
+				msgs = ((InternalEObject)newProperties).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IATTRIBUTE__PROPERTIES, null, msgs);
+			msgs = basicSetProperties(newProperties, msgs);
+			if (msgs != null) msgs.dispatch();
+		}
+		else if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IATTRIBUTE__PROPERTIES, newProperties, newProperties));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IDescription getDescription() {
+		if (description != null && description.eIsProxy()) {
+			InternalEObject oldDescription = (InternalEObject)description;
+			description = (IDescription)eResolveProxy(oldDescription);
+			if (description != oldDescription) {
+				InternalEObject newDescription = (InternalEObject)description;
+				NotificationChain msgs = oldDescription.eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IATTRIBUTE__DESCRIPTION, null, null);
+				if (newDescription.eInternalContainer() == null) {
+					msgs = newDescription.eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IATTRIBUTE__DESCRIPTION, null, msgs);
+				}
+				if (msgs != null) msgs.dispatch();
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.IATTRIBUTE__DESCRIPTION, oldDescription, description));
+			}
+		}
+		return description;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IDescription basicGetDescription() {
+		return description;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public NotificationChain basicSetDescription(IDescription newDescription, NotificationChain msgs) {
+		IDescription oldDescription = description;
+		description = newDescription;
+		if (eNotificationRequired()) {
+			ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IATTRIBUTE__DESCRIPTION, oldDescription, newDescription);
+			if (msgs == null) msgs = notification; else msgs.add(notification);
+		}
+		return msgs;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setDescription(IDescription newDescription) {
+		if (newDescription != description) {
+			NotificationChain msgs = null;
+			if (description != null)
+				msgs = ((InternalEObject)description).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IATTRIBUTE__DESCRIPTION, null, msgs);
+			if (newDescription != null)
+				msgs = ((InternalEObject)newDescription).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IATTRIBUTE__DESCRIPTION, null, msgs);
+			msgs = basicSetDescription(newDescription, msgs);
+			if (msgs != null) msgs.dispatch();
+		}
+		else if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IATTRIBUTE__DESCRIPTION, newDescription, newDescription));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<ITag> getTags() {
+		if (tags == null) {
+			tags = new EObjectContainmentEList.Resolving<ITag>(ITag.class, this, UMLRpyPackage.IATTRIBUTE__TAGS);
+		}
+		return tags;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getDefaultValue() {
+		return defaultValue;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setDefaultValue(String newDefaultValue) {
+		String oldDefaultValue = defaultValue;
+		defaultValue = newDefaultValue;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IATTRIBUTE__DEFAULT_VALUE, oldDefaultValue, defaultValue));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<IDependency> getDependencies() {
+		if (dependencies == null) {
+			dependencies = new EObjectContainmentEList.Resolving<IDependency>(IDependency.class, this, UMLRpyPackage.IATTRIBUTE__DEPENDENCIES);
+		}
+		return dependencies;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getLastID() {
+		return lastID;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setLastID(String newLastID) {
+		String oldLastID = lastID;
+		lastID = newLastID;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IATTRIBUTE__LAST_ID, oldLastID, lastID));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IComment getAnnotations() {
+		if (annotations != null && annotations.eIsProxy()) {
+			InternalEObject oldAnnotations = (InternalEObject)annotations;
+			annotations = (IComment)eResolveProxy(oldAnnotations);
+			if (annotations != oldAnnotations) {
+				InternalEObject newAnnotations = (InternalEObject)annotations;
+				NotificationChain msgs = oldAnnotations.eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IATTRIBUTE__ANNOTATIONS, null, null);
+				if (newAnnotations.eInternalContainer() == null) {
+					msgs = newAnnotations.eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IATTRIBUTE__ANNOTATIONS, null, msgs);
+				}
+				if (msgs != null) msgs.dispatch();
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.IATTRIBUTE__ANNOTATIONS, oldAnnotations, annotations));
+			}
+		}
+		return annotations;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IComment basicGetAnnotations() {
+		return annotations;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public NotificationChain basicSetAnnotations(IComment newAnnotations, NotificationChain msgs) {
+		IComment oldAnnotations = annotations;
+		annotations = newAnnotations;
+		if (eNotificationRequired()) {
+			ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IATTRIBUTE__ANNOTATIONS, oldAnnotations, newAnnotations);
+			if (msgs == null) msgs = notification; else msgs.add(notification);
+		}
+		return msgs;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setAnnotations(IComment newAnnotations) {
+		if (newAnnotations != annotations) {
+			NotificationChain msgs = null;
+			if (annotations != null)
+				msgs = ((InternalEObject)annotations).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IATTRIBUTE__ANNOTATIONS, null, msgs);
+			if (newAnnotations != null)
+				msgs = ((InternalEObject)newAnnotations).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IATTRIBUTE__ANNOTATIONS, null, msgs);
+			msgs = basicSetAnnotations(newAnnotations, msgs);
+			if (msgs != null) msgs.dispatch();
+		}
+		else if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IATTRIBUTE__ANNOTATIONS, newAnnotations, newAnnotations));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getRequiremenTracabilityHandle() {
+		return requiremenTracabilityHandle;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setRequiremenTracabilityHandle(String newRequiremenTracabilityHandle) {
+		String oldRequiremenTracabilityHandle = requiremenTracabilityHandle;
+		requiremenTracabilityHandle = newRequiremenTracabilityHandle;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IATTRIBUTE__REQUIREMEN_TRACABILITY_HANDLE, oldRequiremenTracabilityHandle, requiremenTracabilityHandle));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<String> getCodeUpdateCGTime() {
+		if (codeUpdateCGTime == null) {
+			codeUpdateCGTime = new EDataTypeEList<String>(String.class, this, UMLRpyPackage.IATTRIBUTE__CODE_UPDATE_CG_TIME);
+		}
+		return codeUpdateCGTime;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IDiagram getTheMainDiagram() {
+		if (theMainDiagram != null && theMainDiagram.eIsProxy()) {
+			InternalEObject oldTheMainDiagram = (InternalEObject)theMainDiagram;
+			theMainDiagram = (IDiagram)eResolveProxy(oldTheMainDiagram);
+			if (theMainDiagram != oldTheMainDiagram) {
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.IATTRIBUTE__THE_MAIN_DIAGRAM, oldTheMainDiagram, theMainDiagram));
+			}
+		}
+		return theMainDiagram;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IDiagram basicGetTheMainDiagram() {
+		return theMainDiagram;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setTheMainDiagram(IDiagram newTheMainDiagram) {
+		IDiagram oldTheMainDiagram = theMainDiagram;
+		theMainDiagram = newTheMainDiagram;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IATTRIBUTE__THE_MAIN_DIAGRAM, oldTheMainDiagram, theMainDiagram));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
+		switch (featureID) {
+			case UMLRpyPackage.IATTRIBUTE__VALUE_SPECIFICATIONS:
+				return basicSetValueSpecifications(null, msgs);
+			case UMLRpyPackage.IATTRIBUTE__PROPERTIES:
+				return basicSetProperties(null, msgs);
+			case UMLRpyPackage.IATTRIBUTE__DESCRIPTION:
+				return basicSetDescription(null, msgs);
+			case UMLRpyPackage.IATTRIBUTE__TAGS:
+				return ((InternalEList<?>)getTags()).basicRemove(otherEnd, msgs);
+			case UMLRpyPackage.IATTRIBUTE__DEPENDENCIES:
+				return ((InternalEList<?>)getDependencies()).basicRemove(otherEnd, msgs);
+			case UMLRpyPackage.IATTRIBUTE__ANNOTATIONS:
+				return basicSetAnnotations(null, msgs);
+		}
+		return super.eInverseRemove(otherEnd, featureID, msgs);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object eGet(int featureID, boolean resolve, boolean coreType) {
+		switch (featureID) {
+			case UMLRpyPackage.IATTRIBUTE__UML_DEPENDENCY_ID:
+				return getUmlDependencyID();
+			case UMLRpyPackage.IATTRIBUTE__OBJECT_CREATION:
+				return getObjectCreation();
+			case UMLRpyPackage.IATTRIBUTE__MODIFIED_TIME_WEAK:
+				return getModifiedTimeWeak();
+			case UMLRpyPackage.IATTRIBUTE__ID:
+				return getId();
+			case UMLRpyPackage.IATTRIBUTE__MY_STATE:
+				return getMyState();
+			case UMLRpyPackage.IATTRIBUTE__NAME:
+				return getName();
+			case UMLRpyPackage.IATTRIBUTE__MULTIPLICITY:
+				return getMultiplicity();
+			case UMLRpyPackage.IATTRIBUTE__TYPE_OF:
+				if (resolve) return getTypeOf();
+				return basicGetTypeOf();
+			case UMLRpyPackage.IATTRIBUTE__PROTECTION:
+				return getProtection();
+			case UMLRpyPackage.IATTRIBUTE__STATIC:
+				return getStatic();
+			case UMLRpyPackage.IATTRIBUTE__IS_REFERENCE:
+				return getIsReference();
+			case UMLRpyPackage.IATTRIBUTE__IS_CONSTANT:
+				return getIsConstant();
+			case UMLRpyPackage.IATTRIBUTE__STEREOTYPES:
+				if (resolve) return getStereotypes();
+				return basicGetStereotypes();
+			case UMLRpyPackage.IATTRIBUTE__VALUE_SPECIFICATIONS:
+				if (resolve) return getValueSpecifications();
+				return basicGetValueSpecifications();
+			case UMLRpyPackage.IATTRIBUTE__PROPERTIES:
+				if (resolve) return getProperties();
+				return basicGetProperties();
+			case UMLRpyPackage.IATTRIBUTE__DESCRIPTION:
+				if (resolve) return getDescription();
+				return basicGetDescription();
+			case UMLRpyPackage.IATTRIBUTE__TAGS:
+				return getTags();
+			case UMLRpyPackage.IATTRIBUTE__DEFAULT_VALUE:
+				return getDefaultValue();
+			case UMLRpyPackage.IATTRIBUTE__DEPENDENCIES:
+				return getDependencies();
+			case UMLRpyPackage.IATTRIBUTE__LAST_ID:
+				return getLastID();
+			case UMLRpyPackage.IATTRIBUTE__ANNOTATIONS:
+				if (resolve) return getAnnotations();
+				return basicGetAnnotations();
+			case UMLRpyPackage.IATTRIBUTE__REQUIREMEN_TRACABILITY_HANDLE:
+				return getRequiremenTracabilityHandle();
+			case UMLRpyPackage.IATTRIBUTE__CODE_UPDATE_CG_TIME:
+				return getCodeUpdateCGTime();
+			case UMLRpyPackage.IATTRIBUTE__THE_MAIN_DIAGRAM:
+				if (resolve) return getTheMainDiagram();
+				return basicGetTheMainDiagram();
+		}
+		return super.eGet(featureID, resolve, coreType);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@SuppressWarnings("unchecked")
+	@Override
+	public void eSet(int featureID, Object newValue) {
+		switch (featureID) {
+			case UMLRpyPackage.IATTRIBUTE__UML_DEPENDENCY_ID:
+				setUmlDependencyID((String)newValue);
+				return;
+			case UMLRpyPackage.IATTRIBUTE__OBJECT_CREATION:
+				setObjectCreation((String)newValue);
+				return;
+			case UMLRpyPackage.IATTRIBUTE__MODIFIED_TIME_WEAK:
+				getModifiedTimeWeak().clear();
+				getModifiedTimeWeak().addAll((Collection<? extends String>)newValue);
+				return;
+			case UMLRpyPackage.IATTRIBUTE__ID:
+				setId((String)newValue);
+				return;
+			case UMLRpyPackage.IATTRIBUTE__MY_STATE:
+				setMyState((String)newValue);
+				return;
+			case UMLRpyPackage.IATTRIBUTE__NAME:
+				setName((String)newValue);
+				return;
+			case UMLRpyPackage.IATTRIBUTE__MULTIPLICITY:
+				setMultiplicity((String)newValue);
+				return;
+			case UMLRpyPackage.IATTRIBUTE__TYPE_OF:
+				setTypeOf((IUnit)newValue);
+				return;
+			case UMLRpyPackage.IATTRIBUTE__PROTECTION:
+				setProtection((String)newValue);
+				return;
+			case UMLRpyPackage.IATTRIBUTE__STATIC:
+				setStatic((String)newValue);
+				return;
+			case UMLRpyPackage.IATTRIBUTE__IS_REFERENCE:
+				setIsReference((String)newValue);
+				return;
+			case UMLRpyPackage.IATTRIBUTE__IS_CONSTANT:
+				setIsConstant((String)newValue);
+				return;
+			case UMLRpyPackage.IATTRIBUTE__STEREOTYPES:
+				setStereotypes((IUnit)newValue);
+				return;
+			case UMLRpyPackage.IATTRIBUTE__VALUE_SPECIFICATIONS:
+				setValueSpecifications((ILiteralSpecification)newValue);
+				return;
+			case UMLRpyPackage.IATTRIBUTE__PROPERTIES:
+				setProperties((IPropertyContainer)newValue);
+				return;
+			case UMLRpyPackage.IATTRIBUTE__DESCRIPTION:
+				setDescription((IDescription)newValue);
+				return;
+			case UMLRpyPackage.IATTRIBUTE__TAGS:
+				getTags().clear();
+				getTags().addAll((Collection<? extends ITag>)newValue);
+				return;
+			case UMLRpyPackage.IATTRIBUTE__DEFAULT_VALUE:
+				setDefaultValue((String)newValue);
+				return;
+			case UMLRpyPackage.IATTRIBUTE__DEPENDENCIES:
+				getDependencies().clear();
+				getDependencies().addAll((Collection<? extends IDependency>)newValue);
+				return;
+			case UMLRpyPackage.IATTRIBUTE__LAST_ID:
+				setLastID((String)newValue);
+				return;
+			case UMLRpyPackage.IATTRIBUTE__ANNOTATIONS:
+				setAnnotations((IComment)newValue);
+				return;
+			case UMLRpyPackage.IATTRIBUTE__REQUIREMEN_TRACABILITY_HANDLE:
+				setRequiremenTracabilityHandle((String)newValue);
+				return;
+			case UMLRpyPackage.IATTRIBUTE__CODE_UPDATE_CG_TIME:
+				getCodeUpdateCGTime().clear();
+				getCodeUpdateCGTime().addAll((Collection<? extends String>)newValue);
+				return;
+			case UMLRpyPackage.IATTRIBUTE__THE_MAIN_DIAGRAM:
+				setTheMainDiagram((IDiagram)newValue);
+				return;
+		}
+		super.eSet(featureID, newValue);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void eUnset(int featureID) {
+		switch (featureID) {
+			case UMLRpyPackage.IATTRIBUTE__UML_DEPENDENCY_ID:
+				setUmlDependencyID(UML_DEPENDENCY_ID_EDEFAULT);
+				return;
+			case UMLRpyPackage.IATTRIBUTE__OBJECT_CREATION:
+				setObjectCreation(OBJECT_CREATION_EDEFAULT);
+				return;
+			case UMLRpyPackage.IATTRIBUTE__MODIFIED_TIME_WEAK:
+				getModifiedTimeWeak().clear();
+				return;
+			case UMLRpyPackage.IATTRIBUTE__ID:
+				setId(ID_EDEFAULT);
+				return;
+			case UMLRpyPackage.IATTRIBUTE__MY_STATE:
+				setMyState(MY_STATE_EDEFAULT);
+				return;
+			case UMLRpyPackage.IATTRIBUTE__NAME:
+				setName(NAME_EDEFAULT);
+				return;
+			case UMLRpyPackage.IATTRIBUTE__MULTIPLICITY:
+				setMultiplicity(MULTIPLICITY_EDEFAULT);
+				return;
+			case UMLRpyPackage.IATTRIBUTE__TYPE_OF:
+				setTypeOf((IUnit)null);
+				return;
+			case UMLRpyPackage.IATTRIBUTE__PROTECTION:
+				setProtection(PROTECTION_EDEFAULT);
+				return;
+			case UMLRpyPackage.IATTRIBUTE__STATIC:
+				setStatic(STATIC_EDEFAULT);
+				return;
+			case UMLRpyPackage.IATTRIBUTE__IS_REFERENCE:
+				setIsReference(IS_REFERENCE_EDEFAULT);
+				return;
+			case UMLRpyPackage.IATTRIBUTE__IS_CONSTANT:
+				setIsConstant(IS_CONSTANT_EDEFAULT);
+				return;
+			case UMLRpyPackage.IATTRIBUTE__STEREOTYPES:
+				setStereotypes((IUnit)null);
+				return;
+			case UMLRpyPackage.IATTRIBUTE__VALUE_SPECIFICATIONS:
+				setValueSpecifications((ILiteralSpecification)null);
+				return;
+			case UMLRpyPackage.IATTRIBUTE__PROPERTIES:
+				setProperties((IPropertyContainer)null);
+				return;
+			case UMLRpyPackage.IATTRIBUTE__DESCRIPTION:
+				setDescription((IDescription)null);
+				return;
+			case UMLRpyPackage.IATTRIBUTE__TAGS:
+				getTags().clear();
+				return;
+			case UMLRpyPackage.IATTRIBUTE__DEFAULT_VALUE:
+				setDefaultValue(DEFAULT_VALUE_EDEFAULT);
+				return;
+			case UMLRpyPackage.IATTRIBUTE__DEPENDENCIES:
+				getDependencies().clear();
+				return;
+			case UMLRpyPackage.IATTRIBUTE__LAST_ID:
+				setLastID(LAST_ID_EDEFAULT);
+				return;
+			case UMLRpyPackage.IATTRIBUTE__ANNOTATIONS:
+				setAnnotations((IComment)null);
+				return;
+			case UMLRpyPackage.IATTRIBUTE__REQUIREMEN_TRACABILITY_HANDLE:
+				setRequiremenTracabilityHandle(REQUIREMEN_TRACABILITY_HANDLE_EDEFAULT);
+				return;
+			case UMLRpyPackage.IATTRIBUTE__CODE_UPDATE_CG_TIME:
+				getCodeUpdateCGTime().clear();
+				return;
+			case UMLRpyPackage.IATTRIBUTE__THE_MAIN_DIAGRAM:
+				setTheMainDiagram((IDiagram)null);
+				return;
+		}
+		super.eUnset(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public boolean eIsSet(int featureID) {
+		switch (featureID) {
+			case UMLRpyPackage.IATTRIBUTE__UML_DEPENDENCY_ID:
+				return UML_DEPENDENCY_ID_EDEFAULT == null ? umlDependencyID != null : !UML_DEPENDENCY_ID_EDEFAULT.equals(umlDependencyID);
+			case UMLRpyPackage.IATTRIBUTE__OBJECT_CREATION:
+				return OBJECT_CREATION_EDEFAULT == null ? objectCreation != null : !OBJECT_CREATION_EDEFAULT.equals(objectCreation);
+			case UMLRpyPackage.IATTRIBUTE__MODIFIED_TIME_WEAK:
+				return modifiedTimeWeak != null && !modifiedTimeWeak.isEmpty();
+			case UMLRpyPackage.IATTRIBUTE__ID:
+				return ID_EDEFAULT == null ? id != null : !ID_EDEFAULT.equals(id);
+			case UMLRpyPackage.IATTRIBUTE__MY_STATE:
+				return MY_STATE_EDEFAULT == null ? myState != null : !MY_STATE_EDEFAULT.equals(myState);
+			case UMLRpyPackage.IATTRIBUTE__NAME:
+				return NAME_EDEFAULT == null ? name != null : !NAME_EDEFAULT.equals(name);
+			case UMLRpyPackage.IATTRIBUTE__MULTIPLICITY:
+				return MULTIPLICITY_EDEFAULT == null ? multiplicity != null : !MULTIPLICITY_EDEFAULT.equals(multiplicity);
+			case UMLRpyPackage.IATTRIBUTE__TYPE_OF:
+				return typeOf != null;
+			case UMLRpyPackage.IATTRIBUTE__PROTECTION:
+				return PROTECTION_EDEFAULT == null ? protection != null : !PROTECTION_EDEFAULT.equals(protection);
+			case UMLRpyPackage.IATTRIBUTE__STATIC:
+				return STATIC_EDEFAULT == null ? static_ != null : !STATIC_EDEFAULT.equals(static_);
+			case UMLRpyPackage.IATTRIBUTE__IS_REFERENCE:
+				return IS_REFERENCE_EDEFAULT == null ? isReference != null : !IS_REFERENCE_EDEFAULT.equals(isReference);
+			case UMLRpyPackage.IATTRIBUTE__IS_CONSTANT:
+				return IS_CONSTANT_EDEFAULT == null ? isConstant != null : !IS_CONSTANT_EDEFAULT.equals(isConstant);
+			case UMLRpyPackage.IATTRIBUTE__STEREOTYPES:
+				return stereotypes != null;
+			case UMLRpyPackage.IATTRIBUTE__VALUE_SPECIFICATIONS:
+				return valueSpecifications != null;
+			case UMLRpyPackage.IATTRIBUTE__PROPERTIES:
+				return properties != null;
+			case UMLRpyPackage.IATTRIBUTE__DESCRIPTION:
+				return description != null;
+			case UMLRpyPackage.IATTRIBUTE__TAGS:
+				return tags != null && !tags.isEmpty();
+			case UMLRpyPackage.IATTRIBUTE__DEFAULT_VALUE:
+				return DEFAULT_VALUE_EDEFAULT == null ? defaultValue != null : !DEFAULT_VALUE_EDEFAULT.equals(defaultValue);
+			case UMLRpyPackage.IATTRIBUTE__DEPENDENCIES:
+				return dependencies != null && !dependencies.isEmpty();
+			case UMLRpyPackage.IATTRIBUTE__LAST_ID:
+				return LAST_ID_EDEFAULT == null ? lastID != null : !LAST_ID_EDEFAULT.equals(lastID);
+			case UMLRpyPackage.IATTRIBUTE__ANNOTATIONS:
+				return annotations != null;
+			case UMLRpyPackage.IATTRIBUTE__REQUIREMEN_TRACABILITY_HANDLE:
+				return REQUIREMEN_TRACABILITY_HANDLE_EDEFAULT == null ? requiremenTracabilityHandle != null : !REQUIREMEN_TRACABILITY_HANDLE_EDEFAULT.equals(requiremenTracabilityHandle);
+			case UMLRpyPackage.IATTRIBUTE__CODE_UPDATE_CG_TIME:
+				return codeUpdateCGTime != null && !codeUpdateCGTime.isEmpty();
+			case UMLRpyPackage.IATTRIBUTE__THE_MAIN_DIAGRAM:
+				return theMainDiagram != null;
+		}
+		return super.eIsSet(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public int eBaseStructuralFeatureID(int derivedFeatureID, Class<?> baseClass) {
+		if (baseClass == ElementsType.class) {
+			switch (derivedFeatureID) {
+				default: return -1;
+			}
+		}
+		if (baseClass == DependsOnType.class) {
+			switch (derivedFeatureID) {
+				default: return -1;
+			}
+		}
+		if (baseClass == M_subjectType.class) {
+			switch (derivedFeatureID) {
+				case UMLRpyPackage.IATTRIBUTE__UML_DEPENDENCY_ID: return UMLRpyPackage.MSUBJECT_TYPE__UML_DEPENDENCY_ID;
+				case UMLRpyPackage.IATTRIBUTE__OBJECT_CREATION: return UMLRpyPackage.MSUBJECT_TYPE__OBJECT_CREATION;
+				default: return -1;
+			}
+		}
+		if (baseClass == ValueType.class) {
+			switch (derivedFeatureID) {
+				case UMLRpyPackage.IATTRIBUTE__MODIFIED_TIME_WEAK: return UMLRpyPackage.VALUE_TYPE__MODIFIED_TIME_WEAK;
+				case UMLRpyPackage.IATTRIBUTE__ID: return UMLRpyPackage.VALUE_TYPE__ID;
+				case UMLRpyPackage.IATTRIBUTE__MY_STATE: return UMLRpyPackage.VALUE_TYPE__MY_STATE;
+				case UMLRpyPackage.IATTRIBUTE__NAME: return UMLRpyPackage.VALUE_TYPE__NAME;
+				default: return -1;
+			}
+		}
+		if (baseClass == ItemsType.class) {
+			switch (derivedFeatureID) {
+				default: return -1;
+			}
+		}
+		if (baseClass == M_pModelObjectType.class) {
+			switch (derivedFeatureID) {
+				default: return -1;
+			}
+		}
+		if (baseClass == End1_Type.class) {
+			switch (derivedFeatureID) {
+				default: return -1;
+			}
+		}
+		if (baseClass == End2_Type.class) {
+			switch (derivedFeatureID) {
+				case UMLRpyPackage.IATTRIBUTE__MULTIPLICITY: return UMLRpyPackage.END2_TYPE__MULTIPLICITY;
+				default: return -1;
+			}
+		}
+		return super.eBaseStructuralFeatureID(derivedFeatureID, baseClass);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public int eDerivedStructuralFeatureID(int baseFeatureID, Class<?> baseClass) {
+		if (baseClass == ElementsType.class) {
+			switch (baseFeatureID) {
+				default: return -1;
+			}
+		}
+		if (baseClass == DependsOnType.class) {
+			switch (baseFeatureID) {
+				default: return -1;
+			}
+		}
+		if (baseClass == M_subjectType.class) {
+			switch (baseFeatureID) {
+				case UMLRpyPackage.MSUBJECT_TYPE__UML_DEPENDENCY_ID: return UMLRpyPackage.IATTRIBUTE__UML_DEPENDENCY_ID;
+				case UMLRpyPackage.MSUBJECT_TYPE__OBJECT_CREATION: return UMLRpyPackage.IATTRIBUTE__OBJECT_CREATION;
+				default: return -1;
+			}
+		}
+		if (baseClass == ValueType.class) {
+			switch (baseFeatureID) {
+				case UMLRpyPackage.VALUE_TYPE__MODIFIED_TIME_WEAK: return UMLRpyPackage.IATTRIBUTE__MODIFIED_TIME_WEAK;
+				case UMLRpyPackage.VALUE_TYPE__ID: return UMLRpyPackage.IATTRIBUTE__ID;
+				case UMLRpyPackage.VALUE_TYPE__MY_STATE: return UMLRpyPackage.IATTRIBUTE__MY_STATE;
+				case UMLRpyPackage.VALUE_TYPE__NAME: return UMLRpyPackage.IATTRIBUTE__NAME;
+				default: return -1;
+			}
+		}
+		if (baseClass == ItemsType.class) {
+			switch (baseFeatureID) {
+				default: return -1;
+			}
+		}
+		if (baseClass == M_pModelObjectType.class) {
+			switch (baseFeatureID) {
+				default: return -1;
+			}
+		}
+		if (baseClass == End1_Type.class) {
+			switch (baseFeatureID) {
+				default: return -1;
+			}
+		}
+		if (baseClass == End2_Type.class) {
+			switch (baseFeatureID) {
+				case UMLRpyPackage.END2_TYPE__MULTIPLICITY: return UMLRpyPackage.IATTRIBUTE__MULTIPLICITY;
+				default: return -1;
+			}
+		}
+		return super.eDerivedStructuralFeatureID(baseFeatureID, baseClass);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String toString() {
+		if (eIsProxy()) return super.toString();
+
+		StringBuffer result = new StringBuffer(super.toString());
+		result.append(" (umlDependencyID: "); //$NON-NLS-1$
+		result.append(umlDependencyID);
+		result.append(", objectCreation: "); //$NON-NLS-1$
+		result.append(objectCreation);
+		result.append(", modifiedTimeWeak: "); //$NON-NLS-1$
+		result.append(modifiedTimeWeak);
+		result.append(", id: "); //$NON-NLS-1$
+		result.append(id);
+		result.append(", myState: "); //$NON-NLS-1$
+		result.append(myState);
+		result.append(", name: "); //$NON-NLS-1$
+		result.append(name);
+		result.append(", multiplicity: "); //$NON-NLS-1$
+		result.append(multiplicity);
+		result.append(", protection: "); //$NON-NLS-1$
+		result.append(protection);
+		result.append(", static: "); //$NON-NLS-1$
+		result.append(static_);
+		result.append(", isReference: "); //$NON-NLS-1$
+		result.append(isReference);
+		result.append(", isConstant: "); //$NON-NLS-1$
+		result.append(isConstant);
+		result.append(", defaultValue: "); //$NON-NLS-1$
+		result.append(defaultValue);
+		result.append(", lastID: "); //$NON-NLS-1$
+		result.append(lastID);
+		result.append(", requiremenTracabilityHandle: "); //$NON-NLS-1$
+		result.append(requiremenTracabilityHandle);
+		result.append(", codeUpdateCGTime: "); //$NON-NLS-1$
+		result.append(codeUpdateCGTime);
+		result.append(')');
+		return result.toString();
+	}
+
+} //IAttributeImpl
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/IBlockImpl.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/IBlockImpl.java
new file mode 100755
index 0000000..6c1e4e7
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/IBlockImpl.java
@@ -0,0 +1,782 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl;
+
+import java.util.Collection;
+
+import org.eclipse.emf.common.notify.Notification;
+import org.eclipse.emf.common.notify.NotificationChain;
+
+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.interoperability.rpy.rpymetamodel.End1_Type;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.End2_Type;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.FromLinkType;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IBlock;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IClass;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.M_pModelObjectType;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ToLinkType;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UnknownType;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>IBlock</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * </p>
+ * <ul>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IBlockImpl#getImplicitClass <em>Implicit Class</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IBlockImpl#getMultiplicity <em>Multiplicity</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IBlockImpl#getId <em>Id</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IBlockImpl#getMyState <em>My State</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IBlockImpl#getName <em>Name</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IBlockImpl#getObjectCreation <em>Object Creation</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IBlockImpl#getUmlDependencyID <em>Uml Dependency ID</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IBlockImpl#getOtherClass <em>Other Class</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IBlockImpl#getInverse <em>Inverse</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IBlockImpl#getPartKind <em>Part Kind</em>}</li>
+ * </ul>
+ *
+ * @generated
+ */
+public class IBlockImpl extends AssociationsTypeImpl implements IBlock {
+	/**
+	 * The cached value of the '{@link #getImplicitClass() <em>Implicit Class</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getImplicitClass()
+	 * @generated
+	 * @ordered
+	 */
+	protected IClass implicitClass;
+
+	/**
+	 * The default value of the '{@link #getMultiplicity() <em>Multiplicity</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getMultiplicity()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String MULTIPLICITY_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getMultiplicity() <em>Multiplicity</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getMultiplicity()
+	 * @generated
+	 * @ordered
+	 */
+	protected String multiplicity = MULTIPLICITY_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getId() <em>Id</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getId()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String ID_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getId() <em>Id</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getId()
+	 * @generated
+	 * @ordered
+	 */
+	protected String id = ID_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getMyState() <em>My State</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getMyState()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String MY_STATE_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getMyState() <em>My State</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getMyState()
+	 * @generated
+	 * @ordered
+	 */
+	protected String myState = MY_STATE_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getName() <em>Name</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getName()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String NAME_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getName() <em>Name</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getName()
+	 * @generated
+	 * @ordered
+	 */
+	protected String name = NAME_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getObjectCreation() <em>Object Creation</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getObjectCreation()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String OBJECT_CREATION_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getObjectCreation() <em>Object Creation</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getObjectCreation()
+	 * @generated
+	 * @ordered
+	 */
+	protected String objectCreation = OBJECT_CREATION_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getUmlDependencyID() <em>Uml Dependency ID</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getUmlDependencyID()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String UML_DEPENDENCY_ID_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getUmlDependencyID() <em>Uml Dependency ID</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getUmlDependencyID()
+	 * @generated
+	 * @ordered
+	 */
+	protected String umlDependencyID = UML_DEPENDENCY_ID_EDEFAULT;
+
+	/**
+	 * The cached value of the '{@link #getOtherClass() <em>Other Class</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getOtherClass()
+	 * @generated
+	 * @ordered
+	 */
+	protected IClass otherClass;
+
+	/**
+	 * The cached value of the '{@link #getInverse() <em>Inverse</em>}' reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getInverse()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<UnknownType> inverse;
+
+	/**
+	 * The default value of the '{@link #getPartKind() <em>Part Kind</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getPartKind()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String PART_KIND_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getPartKind() <em>Part Kind</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getPartKind()
+	 * @generated
+	 * @ordered
+	 */
+	protected String partKind = PART_KIND_EDEFAULT;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected IBlockImpl() {
+		super();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EClass eStaticClass() {
+		return UMLRpyPackage.eINSTANCE.getIBlock();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IClass getImplicitClass() {
+		if (implicitClass != null && implicitClass.eIsProxy()) {
+			InternalEObject oldImplicitClass = (InternalEObject)implicitClass;
+			implicitClass = (IClass)eResolveProxy(oldImplicitClass);
+			if (implicitClass != oldImplicitClass) {
+				InternalEObject newImplicitClass = (InternalEObject)implicitClass;
+				NotificationChain msgs = oldImplicitClass.eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IBLOCK__IMPLICIT_CLASS, null, null);
+				if (newImplicitClass.eInternalContainer() == null) {
+					msgs = newImplicitClass.eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IBLOCK__IMPLICIT_CLASS, null, msgs);
+				}
+				if (msgs != null) msgs.dispatch();
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.IBLOCK__IMPLICIT_CLASS, oldImplicitClass, implicitClass));
+			}
+		}
+		return implicitClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IClass basicGetImplicitClass() {
+		return implicitClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public NotificationChain basicSetImplicitClass(IClass newImplicitClass, NotificationChain msgs) {
+		IClass oldImplicitClass = implicitClass;
+		implicitClass = newImplicitClass;
+		if (eNotificationRequired()) {
+			ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IBLOCK__IMPLICIT_CLASS, oldImplicitClass, newImplicitClass);
+			if (msgs == null) msgs = notification; else msgs.add(notification);
+		}
+		return msgs;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setImplicitClass(IClass newImplicitClass) {
+		if (newImplicitClass != implicitClass) {
+			NotificationChain msgs = null;
+			if (implicitClass != null)
+				msgs = ((InternalEObject)implicitClass).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IBLOCK__IMPLICIT_CLASS, null, msgs);
+			if (newImplicitClass != null)
+				msgs = ((InternalEObject)newImplicitClass).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IBLOCK__IMPLICIT_CLASS, null, msgs);
+			msgs = basicSetImplicitClass(newImplicitClass, msgs);
+			if (msgs != null) msgs.dispatch();
+		}
+		else if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IBLOCK__IMPLICIT_CLASS, newImplicitClass, newImplicitClass));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getMultiplicity() {
+		return multiplicity;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setMultiplicity(String newMultiplicity) {
+		String oldMultiplicity = multiplicity;
+		multiplicity = newMultiplicity;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IBLOCK__MULTIPLICITY, oldMultiplicity, multiplicity));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getId() {
+		return id;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setId(String newId) {
+		String oldId = id;
+		id = newId;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IBLOCK__ID, oldId, id));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getMyState() {
+		return myState;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setMyState(String newMyState) {
+		String oldMyState = myState;
+		myState = newMyState;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IBLOCK__MY_STATE, oldMyState, myState));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getName() {
+		return name;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setName(String newName) {
+		String oldName = name;
+		name = newName;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IBLOCK__NAME, oldName, name));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getObjectCreation() {
+		return objectCreation;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setObjectCreation(String newObjectCreation) {
+		String oldObjectCreation = objectCreation;
+		objectCreation = newObjectCreation;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IBLOCK__OBJECT_CREATION, oldObjectCreation, objectCreation));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getUmlDependencyID() {
+		return umlDependencyID;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setUmlDependencyID(String newUmlDependencyID) {
+		String oldUmlDependencyID = umlDependencyID;
+		umlDependencyID = newUmlDependencyID;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IBLOCK__UML_DEPENDENCY_ID, oldUmlDependencyID, umlDependencyID));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IClass getOtherClass() {
+		if (otherClass != null && otherClass.eIsProxy()) {
+			InternalEObject oldOtherClass = (InternalEObject)otherClass;
+			otherClass = (IClass)eResolveProxy(oldOtherClass);
+			if (otherClass != oldOtherClass) {
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.IBLOCK__OTHER_CLASS, oldOtherClass, otherClass));
+			}
+		}
+		return otherClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IClass basicGetOtherClass() {
+		return otherClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setOtherClass(IClass newOtherClass) {
+		IClass oldOtherClass = otherClass;
+		otherClass = newOtherClass;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IBLOCK__OTHER_CLASS, oldOtherClass, otherClass));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<UnknownType> getInverse() {
+		if (inverse == null) {
+			inverse = new EObjectResolvingEList<UnknownType>(UnknownType.class, this, UMLRpyPackage.IBLOCK__INVERSE);
+		}
+		return inverse;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getPartKind() {
+		return partKind;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setPartKind(String newPartKind) {
+		String oldPartKind = partKind;
+		partKind = newPartKind;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IBLOCK__PART_KIND, oldPartKind, partKind));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
+		switch (featureID) {
+			case UMLRpyPackage.IBLOCK__IMPLICIT_CLASS:
+				return basicSetImplicitClass(null, msgs);
+		}
+		return super.eInverseRemove(otherEnd, featureID, msgs);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object eGet(int featureID, boolean resolve, boolean coreType) {
+		switch (featureID) {
+			case UMLRpyPackage.IBLOCK__IMPLICIT_CLASS:
+				if (resolve) return getImplicitClass();
+				return basicGetImplicitClass();
+			case UMLRpyPackage.IBLOCK__MULTIPLICITY:
+				return getMultiplicity();
+			case UMLRpyPackage.IBLOCK__ID:
+				return getId();
+			case UMLRpyPackage.IBLOCK__MY_STATE:
+				return getMyState();
+			case UMLRpyPackage.IBLOCK__NAME:
+				return getName();
+			case UMLRpyPackage.IBLOCK__OBJECT_CREATION:
+				return getObjectCreation();
+			case UMLRpyPackage.IBLOCK__UML_DEPENDENCY_ID:
+				return getUmlDependencyID();
+			case UMLRpyPackage.IBLOCK__OTHER_CLASS:
+				if (resolve) return getOtherClass();
+				return basicGetOtherClass();
+			case UMLRpyPackage.IBLOCK__INVERSE:
+				return getInverse();
+			case UMLRpyPackage.IBLOCK__PART_KIND:
+				return getPartKind();
+		}
+		return super.eGet(featureID, resolve, coreType);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@SuppressWarnings("unchecked")
+	@Override
+	public void eSet(int featureID, Object newValue) {
+		switch (featureID) {
+			case UMLRpyPackage.IBLOCK__IMPLICIT_CLASS:
+				setImplicitClass((IClass)newValue);
+				return;
+			case UMLRpyPackage.IBLOCK__MULTIPLICITY:
+				setMultiplicity((String)newValue);
+				return;
+			case UMLRpyPackage.IBLOCK__ID:
+				setId((String)newValue);
+				return;
+			case UMLRpyPackage.IBLOCK__MY_STATE:
+				setMyState((String)newValue);
+				return;
+			case UMLRpyPackage.IBLOCK__NAME:
+				setName((String)newValue);
+				return;
+			case UMLRpyPackage.IBLOCK__OBJECT_CREATION:
+				setObjectCreation((String)newValue);
+				return;
+			case UMLRpyPackage.IBLOCK__UML_DEPENDENCY_ID:
+				setUmlDependencyID((String)newValue);
+				return;
+			case UMLRpyPackage.IBLOCK__OTHER_CLASS:
+				setOtherClass((IClass)newValue);
+				return;
+			case UMLRpyPackage.IBLOCK__INVERSE:
+				getInverse().clear();
+				getInverse().addAll((Collection<? extends UnknownType>)newValue);
+				return;
+			case UMLRpyPackage.IBLOCK__PART_KIND:
+				setPartKind((String)newValue);
+				return;
+		}
+		super.eSet(featureID, newValue);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void eUnset(int featureID) {
+		switch (featureID) {
+			case UMLRpyPackage.IBLOCK__IMPLICIT_CLASS:
+				setImplicitClass((IClass)null);
+				return;
+			case UMLRpyPackage.IBLOCK__MULTIPLICITY:
+				setMultiplicity(MULTIPLICITY_EDEFAULT);
+				return;
+			case UMLRpyPackage.IBLOCK__ID:
+				setId(ID_EDEFAULT);
+				return;
+			case UMLRpyPackage.IBLOCK__MY_STATE:
+				setMyState(MY_STATE_EDEFAULT);
+				return;
+			case UMLRpyPackage.IBLOCK__NAME:
+				setName(NAME_EDEFAULT);
+				return;
+			case UMLRpyPackage.IBLOCK__OBJECT_CREATION:
+				setObjectCreation(OBJECT_CREATION_EDEFAULT);
+				return;
+			case UMLRpyPackage.IBLOCK__UML_DEPENDENCY_ID:
+				setUmlDependencyID(UML_DEPENDENCY_ID_EDEFAULT);
+				return;
+			case UMLRpyPackage.IBLOCK__OTHER_CLASS:
+				setOtherClass((IClass)null);
+				return;
+			case UMLRpyPackage.IBLOCK__INVERSE:
+				getInverse().clear();
+				return;
+			case UMLRpyPackage.IBLOCK__PART_KIND:
+				setPartKind(PART_KIND_EDEFAULT);
+				return;
+		}
+		super.eUnset(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public boolean eIsSet(int featureID) {
+		switch (featureID) {
+			case UMLRpyPackage.IBLOCK__IMPLICIT_CLASS:
+				return implicitClass != null;
+			case UMLRpyPackage.IBLOCK__MULTIPLICITY:
+				return MULTIPLICITY_EDEFAULT == null ? multiplicity != null : !MULTIPLICITY_EDEFAULT.equals(multiplicity);
+			case UMLRpyPackage.IBLOCK__ID:
+				return ID_EDEFAULT == null ? id != null : !ID_EDEFAULT.equals(id);
+			case UMLRpyPackage.IBLOCK__MY_STATE:
+				return MY_STATE_EDEFAULT == null ? myState != null : !MY_STATE_EDEFAULT.equals(myState);
+			case UMLRpyPackage.IBLOCK__NAME:
+				return NAME_EDEFAULT == null ? name != null : !NAME_EDEFAULT.equals(name);
+			case UMLRpyPackage.IBLOCK__OBJECT_CREATION:
+				return OBJECT_CREATION_EDEFAULT == null ? objectCreation != null : !OBJECT_CREATION_EDEFAULT.equals(objectCreation);
+			case UMLRpyPackage.IBLOCK__UML_DEPENDENCY_ID:
+				return UML_DEPENDENCY_ID_EDEFAULT == null ? umlDependencyID != null : !UML_DEPENDENCY_ID_EDEFAULT.equals(umlDependencyID);
+			case UMLRpyPackage.IBLOCK__OTHER_CLASS:
+				return otherClass != null;
+			case UMLRpyPackage.IBLOCK__INVERSE:
+				return inverse != null && !inverse.isEmpty();
+			case UMLRpyPackage.IBLOCK__PART_KIND:
+				return PART_KIND_EDEFAULT == null ? partKind != null : !PART_KIND_EDEFAULT.equals(partKind);
+		}
+		return super.eIsSet(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public int eBaseStructuralFeatureID(int derivedFeatureID, Class<?> baseClass) {
+		if (baseClass == M_pModelObjectType.class) {
+			switch (derivedFeatureID) {
+				default: return -1;
+			}
+		}
+		if (baseClass == FromLinkType.class) {
+			switch (derivedFeatureID) {
+				default: return -1;
+			}
+		}
+		if (baseClass == ToLinkType.class) {
+			switch (derivedFeatureID) {
+				case UMLRpyPackage.IBLOCK__IMPLICIT_CLASS: return UMLRpyPackage.TO_LINK_TYPE__IMPLICIT_CLASS;
+				default: return -1;
+			}
+		}
+		if (baseClass == End1_Type.class) {
+			switch (derivedFeatureID) {
+				default: return -1;
+			}
+		}
+		if (baseClass == End2_Type.class) {
+			switch (derivedFeatureID) {
+				case UMLRpyPackage.IBLOCK__MULTIPLICITY: return UMLRpyPackage.END2_TYPE__MULTIPLICITY;
+				default: return -1;
+			}
+		}
+		return super.eBaseStructuralFeatureID(derivedFeatureID, baseClass);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public int eDerivedStructuralFeatureID(int baseFeatureID, Class<?> baseClass) {
+		if (baseClass == M_pModelObjectType.class) {
+			switch (baseFeatureID) {
+				default: return -1;
+			}
+		}
+		if (baseClass == FromLinkType.class) {
+			switch (baseFeatureID) {
+				default: return -1;
+			}
+		}
+		if (baseClass == ToLinkType.class) {
+			switch (baseFeatureID) {
+				case UMLRpyPackage.TO_LINK_TYPE__IMPLICIT_CLASS: return UMLRpyPackage.IBLOCK__IMPLICIT_CLASS;
+				default: return -1;
+			}
+		}
+		if (baseClass == End1_Type.class) {
+			switch (baseFeatureID) {
+				default: return -1;
+			}
+		}
+		if (baseClass == End2_Type.class) {
+			switch (baseFeatureID) {
+				case UMLRpyPackage.END2_TYPE__MULTIPLICITY: return UMLRpyPackage.IBLOCK__MULTIPLICITY;
+				default: return -1;
+			}
+		}
+		return super.eDerivedStructuralFeatureID(baseFeatureID, baseClass);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String toString() {
+		if (eIsProxy()) return super.toString();
+
+		StringBuffer result = new StringBuffer(super.toString());
+		result.append(" (multiplicity: "); //$NON-NLS-1$
+		result.append(multiplicity);
+		result.append(", id: "); //$NON-NLS-1$
+		result.append(id);
+		result.append(", myState: "); //$NON-NLS-1$
+		result.append(myState);
+		result.append(", name: "); //$NON-NLS-1$
+		result.append(name);
+		result.append(", objectCreation: "); //$NON-NLS-1$
+		result.append(objectCreation);
+		result.append(", umlDependencyID: "); //$NON-NLS-1$
+		result.append(umlDependencyID);
+		result.append(", partKind: "); //$NON-NLS-1$
+		result.append(partKind);
+		result.append(')');
+		return result.toString();
+	}
+
+} //IBlockImpl
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/IBodyImpl.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/IBodyImpl.java
new file mode 100755
index 0000000..efe9037
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/IBodyImpl.java
@@ -0,0 +1,173 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl;
+
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.ecore.EClass;
+
+import org.eclipse.emf.ecore.impl.ENotificationImpl;
+import org.eclipse.emf.ecore.impl.MinimalEObjectImpl;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IBody;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>IBody</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * </p>
+ * <ul>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IBodyImpl#getBodyData <em>Body Data</em>}</li>
+ * </ul>
+ *
+ * @generated
+ */
+public class IBodyImpl extends MinimalEObjectImpl.Container implements IBody {
+	/**
+	 * The default value of the '{@link #getBodyData() <em>Body Data</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getBodyData()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String BODY_DATA_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getBodyData() <em>Body Data</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getBodyData()
+	 * @generated
+	 * @ordered
+	 */
+	protected String bodyData = BODY_DATA_EDEFAULT;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected IBodyImpl() {
+		super();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EClass eStaticClass() {
+		return UMLRpyPackage.eINSTANCE.getIBody();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getBodyData() {
+		return bodyData;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setBodyData(String newBodyData) {
+		String oldBodyData = bodyData;
+		bodyData = newBodyData;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IBODY__BODY_DATA, oldBodyData, bodyData));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object eGet(int featureID, boolean resolve, boolean coreType) {
+		switch (featureID) {
+			case UMLRpyPackage.IBODY__BODY_DATA:
+				return getBodyData();
+		}
+		return super.eGet(featureID, resolve, coreType);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void eSet(int featureID, Object newValue) {
+		switch (featureID) {
+			case UMLRpyPackage.IBODY__BODY_DATA:
+				setBodyData((String)newValue);
+				return;
+		}
+		super.eSet(featureID, newValue);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void eUnset(int featureID) {
+		switch (featureID) {
+			case UMLRpyPackage.IBODY__BODY_DATA:
+				setBodyData(BODY_DATA_EDEFAULT);
+				return;
+		}
+		super.eUnset(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public boolean eIsSet(int featureID) {
+		switch (featureID) {
+			case UMLRpyPackage.IBODY__BODY_DATA:
+				return BODY_DATA_EDEFAULT == null ? bodyData != null : !BODY_DATA_EDEFAULT.equals(bodyData);
+		}
+		return super.eIsSet(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String toString() {
+		if (eIsProxy()) return super.toString();
+
+		StringBuffer result = new StringBuffer(super.toString());
+		result.append(" (bodyData: "); //$NON-NLS-1$
+		result.append(bodyData);
+		result.append(')');
+		return result.toString();
+	}
+
+} //IBodyImpl
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/IBranchImpl.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/IBranchImpl.java
new file mode 100755
index 0000000..bc6b4bf
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/IBranchImpl.java
@@ -0,0 +1,644 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl;
+
+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.EDataTypeEList;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IBranch;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IStateVertex;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IStereotype;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>IBranch</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * </p>
+ * <ul>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IBranchImpl#getId <em>Id</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IBranchImpl#getName <em>Name</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IBranchImpl#getModifiedTimeWeak <em>Modified Time Weak</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IBranchImpl#getParent <em>Parent</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IBranchImpl#getConnectorType <em>Connector Type</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IBranchImpl#getMyState <em>My State</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IBranchImpl#getStereotypes <em>Stereotypes</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IBranchImpl#getCodeUpdateCGTime <em>Code Update CG Time</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IBranchImpl#getObjectCreation <em>Object Creation</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IBranchImpl#getUmlDependencyID <em>Uml Dependency ID</em>}</li>
+ * </ul>
+ *
+ * @generated
+ */
+public class IBranchImpl extends ItsTargetTypeImpl implements IBranch {
+	/**
+	 * The default value of the '{@link #getId() <em>Id</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getId()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String ID_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getId() <em>Id</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getId()
+	 * @generated
+	 * @ordered
+	 */
+	protected String id = ID_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getName() <em>Name</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getName()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String NAME_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getName() <em>Name</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getName()
+	 * @generated
+	 * @ordered
+	 */
+	protected String name = NAME_EDEFAULT;
+
+	/**
+	 * The cached value of the '{@link #getModifiedTimeWeak() <em>Modified Time Weak</em>}' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getModifiedTimeWeak()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<String> modifiedTimeWeak;
+
+	/**
+	 * The cached value of the '{@link #getParent() <em>Parent</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getParent()
+	 * @generated
+	 * @ordered
+	 */
+	protected IStateVertex parent;
+
+	/**
+	 * The default value of the '{@link #getConnectorType() <em>Connector Type</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getConnectorType()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String CONNECTOR_TYPE_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getConnectorType() <em>Connector Type</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getConnectorType()
+	 * @generated
+	 * @ordered
+	 */
+	protected String connectorType = CONNECTOR_TYPE_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getMyState() <em>My State</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getMyState()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String MY_STATE_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getMyState() <em>My State</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getMyState()
+	 * @generated
+	 * @ordered
+	 */
+	protected String myState = MY_STATE_EDEFAULT;
+
+	/**
+	 * The cached value of the '{@link #getStereotypes() <em>Stereotypes</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getStereotypes()
+	 * @generated
+	 * @ordered
+	 */
+	protected IStereotype stereotypes;
+
+	/**
+	 * The cached value of the '{@link #getCodeUpdateCGTime() <em>Code Update CG Time</em>}' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getCodeUpdateCGTime()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<String> codeUpdateCGTime;
+
+	/**
+	 * The default value of the '{@link #getObjectCreation() <em>Object Creation</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getObjectCreation()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String OBJECT_CREATION_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getObjectCreation() <em>Object Creation</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getObjectCreation()
+	 * @generated
+	 * @ordered
+	 */
+	protected String objectCreation = OBJECT_CREATION_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getUmlDependencyID() <em>Uml Dependency ID</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getUmlDependencyID()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String UML_DEPENDENCY_ID_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getUmlDependencyID() <em>Uml Dependency ID</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getUmlDependencyID()
+	 * @generated
+	 * @ordered
+	 */
+	protected String umlDependencyID = UML_DEPENDENCY_ID_EDEFAULT;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected IBranchImpl() {
+		super();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EClass eStaticClass() {
+		return UMLRpyPackage.eINSTANCE.getIBranch();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getId() {
+		return id;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setId(String newId) {
+		String oldId = id;
+		id = newId;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IBRANCH__ID, oldId, id));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getName() {
+		return name;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setName(String newName) {
+		String oldName = name;
+		name = newName;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IBRANCH__NAME, oldName, name));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<String> getModifiedTimeWeak() {
+		if (modifiedTimeWeak == null) {
+			modifiedTimeWeak = new EDataTypeEList<String>(String.class, this, UMLRpyPackage.IBRANCH__MODIFIED_TIME_WEAK);
+		}
+		return modifiedTimeWeak;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IStateVertex getParent() {
+		if (parent != null && parent.eIsProxy()) {
+			InternalEObject oldParent = (InternalEObject)parent;
+			parent = (IStateVertex)eResolveProxy(oldParent);
+			if (parent != oldParent) {
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.IBRANCH__PARENT, oldParent, parent));
+			}
+		}
+		return parent;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IStateVertex basicGetParent() {
+		return parent;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setParent(IStateVertex newParent) {
+		IStateVertex oldParent = parent;
+		parent = newParent;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IBRANCH__PARENT, oldParent, parent));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getConnectorType() {
+		return connectorType;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setConnectorType(String newConnectorType) {
+		String oldConnectorType = connectorType;
+		connectorType = newConnectorType;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IBRANCH__CONNECTOR_TYPE, oldConnectorType, connectorType));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getMyState() {
+		return myState;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setMyState(String newMyState) {
+		String oldMyState = myState;
+		myState = newMyState;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IBRANCH__MY_STATE, oldMyState, myState));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IStereotype getStereotypes() {
+		if (stereotypes != null && stereotypes.eIsProxy()) {
+			InternalEObject oldStereotypes = (InternalEObject)stereotypes;
+			stereotypes = (IStereotype)eResolveProxy(oldStereotypes);
+			if (stereotypes != oldStereotypes) {
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.IBRANCH__STEREOTYPES, oldStereotypes, stereotypes));
+			}
+		}
+		return stereotypes;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IStereotype basicGetStereotypes() {
+		return stereotypes;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setStereotypes(IStereotype newStereotypes) {
+		IStereotype oldStereotypes = stereotypes;
+		stereotypes = newStereotypes;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IBRANCH__STEREOTYPES, oldStereotypes, stereotypes));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<String> getCodeUpdateCGTime() {
+		if (codeUpdateCGTime == null) {
+			codeUpdateCGTime = new EDataTypeEList<String>(String.class, this, UMLRpyPackage.IBRANCH__CODE_UPDATE_CG_TIME);
+		}
+		return codeUpdateCGTime;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getObjectCreation() {
+		return objectCreation;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setObjectCreation(String newObjectCreation) {
+		String oldObjectCreation = objectCreation;
+		objectCreation = newObjectCreation;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IBRANCH__OBJECT_CREATION, oldObjectCreation, objectCreation));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getUmlDependencyID() {
+		return umlDependencyID;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setUmlDependencyID(String newUmlDependencyID) {
+		String oldUmlDependencyID = umlDependencyID;
+		umlDependencyID = newUmlDependencyID;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IBRANCH__UML_DEPENDENCY_ID, oldUmlDependencyID, umlDependencyID));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object eGet(int featureID, boolean resolve, boolean coreType) {
+		switch (featureID) {
+			case UMLRpyPackage.IBRANCH__ID:
+				return getId();
+			case UMLRpyPackage.IBRANCH__NAME:
+				return getName();
+			case UMLRpyPackage.IBRANCH__MODIFIED_TIME_WEAK:
+				return getModifiedTimeWeak();
+			case UMLRpyPackage.IBRANCH__PARENT:
+				if (resolve) return getParent();
+				return basicGetParent();
+			case UMLRpyPackage.IBRANCH__CONNECTOR_TYPE:
+				return getConnectorType();
+			case UMLRpyPackage.IBRANCH__MY_STATE:
+				return getMyState();
+			case UMLRpyPackage.IBRANCH__STEREOTYPES:
+				if (resolve) return getStereotypes();
+				return basicGetStereotypes();
+			case UMLRpyPackage.IBRANCH__CODE_UPDATE_CG_TIME:
+				return getCodeUpdateCGTime();
+			case UMLRpyPackage.IBRANCH__OBJECT_CREATION:
+				return getObjectCreation();
+			case UMLRpyPackage.IBRANCH__UML_DEPENDENCY_ID:
+				return getUmlDependencyID();
+		}
+		return super.eGet(featureID, resolve, coreType);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@SuppressWarnings("unchecked")
+	@Override
+	public void eSet(int featureID, Object newValue) {
+		switch (featureID) {
+			case UMLRpyPackage.IBRANCH__ID:
+				setId((String)newValue);
+				return;
+			case UMLRpyPackage.IBRANCH__NAME:
+				setName((String)newValue);
+				return;
+			case UMLRpyPackage.IBRANCH__MODIFIED_TIME_WEAK:
+				getModifiedTimeWeak().clear();
+				getModifiedTimeWeak().addAll((Collection<? extends String>)newValue);
+				return;
+			case UMLRpyPackage.IBRANCH__PARENT:
+				setParent((IStateVertex)newValue);
+				return;
+			case UMLRpyPackage.IBRANCH__CONNECTOR_TYPE:
+				setConnectorType((String)newValue);
+				return;
+			case UMLRpyPackage.IBRANCH__MY_STATE:
+				setMyState((String)newValue);
+				return;
+			case UMLRpyPackage.IBRANCH__STEREOTYPES:
+				setStereotypes((IStereotype)newValue);
+				return;
+			case UMLRpyPackage.IBRANCH__CODE_UPDATE_CG_TIME:
+				getCodeUpdateCGTime().clear();
+				getCodeUpdateCGTime().addAll((Collection<? extends String>)newValue);
+				return;
+			case UMLRpyPackage.IBRANCH__OBJECT_CREATION:
+				setObjectCreation((String)newValue);
+				return;
+			case UMLRpyPackage.IBRANCH__UML_DEPENDENCY_ID:
+				setUmlDependencyID((String)newValue);
+				return;
+		}
+		super.eSet(featureID, newValue);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void eUnset(int featureID) {
+		switch (featureID) {
+			case UMLRpyPackage.IBRANCH__ID:
+				setId(ID_EDEFAULT);
+				return;
+			case UMLRpyPackage.IBRANCH__NAME:
+				setName(NAME_EDEFAULT);
+				return;
+			case UMLRpyPackage.IBRANCH__MODIFIED_TIME_WEAK:
+				getModifiedTimeWeak().clear();
+				return;
+			case UMLRpyPackage.IBRANCH__PARENT:
+				setParent((IStateVertex)null);
+				return;
+			case UMLRpyPackage.IBRANCH__CONNECTOR_TYPE:
+				setConnectorType(CONNECTOR_TYPE_EDEFAULT);
+				return;
+			case UMLRpyPackage.IBRANCH__MY_STATE:
+				setMyState(MY_STATE_EDEFAULT);
+				return;
+			case UMLRpyPackage.IBRANCH__STEREOTYPES:
+				setStereotypes((IStereotype)null);
+				return;
+			case UMLRpyPackage.IBRANCH__CODE_UPDATE_CG_TIME:
+				getCodeUpdateCGTime().clear();
+				return;
+			case UMLRpyPackage.IBRANCH__OBJECT_CREATION:
+				setObjectCreation(OBJECT_CREATION_EDEFAULT);
+				return;
+			case UMLRpyPackage.IBRANCH__UML_DEPENDENCY_ID:
+				setUmlDependencyID(UML_DEPENDENCY_ID_EDEFAULT);
+				return;
+		}
+		super.eUnset(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public boolean eIsSet(int featureID) {
+		switch (featureID) {
+			case UMLRpyPackage.IBRANCH__ID:
+				return ID_EDEFAULT == null ? id != null : !ID_EDEFAULT.equals(id);
+			case UMLRpyPackage.IBRANCH__NAME:
+				return NAME_EDEFAULT == null ? name != null : !NAME_EDEFAULT.equals(name);
+			case UMLRpyPackage.IBRANCH__MODIFIED_TIME_WEAK:
+				return modifiedTimeWeak != null && !modifiedTimeWeak.isEmpty();
+			case UMLRpyPackage.IBRANCH__PARENT:
+				return parent != null;
+			case UMLRpyPackage.IBRANCH__CONNECTOR_TYPE:
+				return CONNECTOR_TYPE_EDEFAULT == null ? connectorType != null : !CONNECTOR_TYPE_EDEFAULT.equals(connectorType);
+			case UMLRpyPackage.IBRANCH__MY_STATE:
+				return MY_STATE_EDEFAULT == null ? myState != null : !MY_STATE_EDEFAULT.equals(myState);
+			case UMLRpyPackage.IBRANCH__STEREOTYPES:
+				return stereotypes != null;
+			case UMLRpyPackage.IBRANCH__CODE_UPDATE_CG_TIME:
+				return codeUpdateCGTime != null && !codeUpdateCGTime.isEmpty();
+			case UMLRpyPackage.IBRANCH__OBJECT_CREATION:
+				return OBJECT_CREATION_EDEFAULT == null ? objectCreation != null : !OBJECT_CREATION_EDEFAULT.equals(objectCreation);
+			case UMLRpyPackage.IBRANCH__UML_DEPENDENCY_ID:
+				return UML_DEPENDENCY_ID_EDEFAULT == null ? umlDependencyID != null : !UML_DEPENDENCY_ID_EDEFAULT.equals(umlDependencyID);
+		}
+		return super.eIsSet(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String toString() {
+		if (eIsProxy()) return super.toString();
+
+		StringBuffer result = new StringBuffer(super.toString());
+		result.append(" (id: "); //$NON-NLS-1$
+		result.append(id);
+		result.append(", name: "); //$NON-NLS-1$
+		result.append(name);
+		result.append(", modifiedTimeWeak: "); //$NON-NLS-1$
+		result.append(modifiedTimeWeak);
+		result.append(", connectorType: "); //$NON-NLS-1$
+		result.append(connectorType);
+		result.append(", myState: "); //$NON-NLS-1$
+		result.append(myState);
+		result.append(", codeUpdateCGTime: "); //$NON-NLS-1$
+		result.append(codeUpdateCGTime);
+		result.append(", objectCreation: "); //$NON-NLS-1$
+		result.append(objectCreation);
+		result.append(", umlDependencyID: "); //$NON-NLS-1$
+		result.append(umlDependencyID);
+		result.append(')');
+		return result.toString();
+	}
+
+} //IBranchImpl
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/ICallActionImpl.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/ICallActionImpl.java
new file mode 100755
index 0000000..69995e6
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/ICallActionImpl.java
@@ -0,0 +1,397 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.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.emf.ecore.impl.MinimalEObjectImpl;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ICallAction;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IConstructor;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>ICall Action</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * </p>
+ * <ul>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.ICallActionImpl#getId <em>Id</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.ICallActionImpl#getModifiedTimeWeak <em>Modified Time Weak</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.ICallActionImpl#getInterfaceItem <em>Interface Item</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.ICallActionImpl#getArgumentNames <em>Argument Names</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.ICallActionImpl#getArgumentValues <em>Argument Values</em>}</li>
+ * </ul>
+ *
+ * @generated
+ */
+public class ICallActionImpl extends MinimalEObjectImpl.Container implements ICallAction {
+	/**
+	 * The default value of the '{@link #getId() <em>Id</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getId()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String ID_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getId() <em>Id</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getId()
+	 * @generated
+	 * @ordered
+	 */
+	protected String id = ID_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getModifiedTimeWeak() <em>Modified Time Weak</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getModifiedTimeWeak()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String MODIFIED_TIME_WEAK_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getModifiedTimeWeak() <em>Modified Time Weak</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getModifiedTimeWeak()
+	 * @generated
+	 * @ordered
+	 */
+	protected String modifiedTimeWeak = MODIFIED_TIME_WEAK_EDEFAULT;
+
+	/**
+	 * The cached value of the '{@link #getInterfaceItem() <em>Interface Item</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getInterfaceItem()
+	 * @generated
+	 * @ordered
+	 */
+	protected IConstructor interfaceItem;
+
+	/**
+	 * The default value of the '{@link #getArgumentNames() <em>Argument Names</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getArgumentNames()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String ARGUMENT_NAMES_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getArgumentNames() <em>Argument Names</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getArgumentNames()
+	 * @generated
+	 * @ordered
+	 */
+	protected String argumentNames = ARGUMENT_NAMES_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getArgumentValues() <em>Argument Values</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getArgumentValues()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String ARGUMENT_VALUES_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getArgumentValues() <em>Argument Values</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getArgumentValues()
+	 * @generated
+	 * @ordered
+	 */
+	protected String argumentValues = ARGUMENT_VALUES_EDEFAULT;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected ICallActionImpl() {
+		super();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EClass eStaticClass() {
+		return UMLRpyPackage.eINSTANCE.getICallAction();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getId() {
+		return id;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setId(String newId) {
+		String oldId = id;
+		id = newId;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.ICALL_ACTION__ID, oldId, id));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getModifiedTimeWeak() {
+		return modifiedTimeWeak;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setModifiedTimeWeak(String newModifiedTimeWeak) {
+		String oldModifiedTimeWeak = modifiedTimeWeak;
+		modifiedTimeWeak = newModifiedTimeWeak;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.ICALL_ACTION__MODIFIED_TIME_WEAK, oldModifiedTimeWeak, modifiedTimeWeak));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IConstructor getInterfaceItem() {
+		if (interfaceItem != null && interfaceItem.eIsProxy()) {
+			InternalEObject oldInterfaceItem = (InternalEObject)interfaceItem;
+			interfaceItem = (IConstructor)eResolveProxy(oldInterfaceItem);
+			if (interfaceItem != oldInterfaceItem) {
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.ICALL_ACTION__INTERFACE_ITEM, oldInterfaceItem, interfaceItem));
+			}
+		}
+		return interfaceItem;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IConstructor basicGetInterfaceItem() {
+		return interfaceItem;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setInterfaceItem(IConstructor newInterfaceItem) {
+		IConstructor oldInterfaceItem = interfaceItem;
+		interfaceItem = newInterfaceItem;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.ICALL_ACTION__INTERFACE_ITEM, oldInterfaceItem, interfaceItem));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getArgumentNames() {
+		return argumentNames;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setArgumentNames(String newArgumentNames) {
+		String oldArgumentNames = argumentNames;
+		argumentNames = newArgumentNames;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.ICALL_ACTION__ARGUMENT_NAMES, oldArgumentNames, argumentNames));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getArgumentValues() {
+		return argumentValues;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setArgumentValues(String newArgumentValues) {
+		String oldArgumentValues = argumentValues;
+		argumentValues = newArgumentValues;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.ICALL_ACTION__ARGUMENT_VALUES, oldArgumentValues, argumentValues));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object eGet(int featureID, boolean resolve, boolean coreType) {
+		switch (featureID) {
+			case UMLRpyPackage.ICALL_ACTION__ID:
+				return getId();
+			case UMLRpyPackage.ICALL_ACTION__MODIFIED_TIME_WEAK:
+				return getModifiedTimeWeak();
+			case UMLRpyPackage.ICALL_ACTION__INTERFACE_ITEM:
+				if (resolve) return getInterfaceItem();
+				return basicGetInterfaceItem();
+			case UMLRpyPackage.ICALL_ACTION__ARGUMENT_NAMES:
+				return getArgumentNames();
+			case UMLRpyPackage.ICALL_ACTION__ARGUMENT_VALUES:
+				return getArgumentValues();
+		}
+		return super.eGet(featureID, resolve, coreType);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void eSet(int featureID, Object newValue) {
+		switch (featureID) {
+			case UMLRpyPackage.ICALL_ACTION__ID:
+				setId((String)newValue);
+				return;
+			case UMLRpyPackage.ICALL_ACTION__MODIFIED_TIME_WEAK:
+				setModifiedTimeWeak((String)newValue);
+				return;
+			case UMLRpyPackage.ICALL_ACTION__INTERFACE_ITEM:
+				setInterfaceItem((IConstructor)newValue);
+				return;
+			case UMLRpyPackage.ICALL_ACTION__ARGUMENT_NAMES:
+				setArgumentNames((String)newValue);
+				return;
+			case UMLRpyPackage.ICALL_ACTION__ARGUMENT_VALUES:
+				setArgumentValues((String)newValue);
+				return;
+		}
+		super.eSet(featureID, newValue);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void eUnset(int featureID) {
+		switch (featureID) {
+			case UMLRpyPackage.ICALL_ACTION__ID:
+				setId(ID_EDEFAULT);
+				return;
+			case UMLRpyPackage.ICALL_ACTION__MODIFIED_TIME_WEAK:
+				setModifiedTimeWeak(MODIFIED_TIME_WEAK_EDEFAULT);
+				return;
+			case UMLRpyPackage.ICALL_ACTION__INTERFACE_ITEM:
+				setInterfaceItem((IConstructor)null);
+				return;
+			case UMLRpyPackage.ICALL_ACTION__ARGUMENT_NAMES:
+				setArgumentNames(ARGUMENT_NAMES_EDEFAULT);
+				return;
+			case UMLRpyPackage.ICALL_ACTION__ARGUMENT_VALUES:
+				setArgumentValues(ARGUMENT_VALUES_EDEFAULT);
+				return;
+		}
+		super.eUnset(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public boolean eIsSet(int featureID) {
+		switch (featureID) {
+			case UMLRpyPackage.ICALL_ACTION__ID:
+				return ID_EDEFAULT == null ? id != null : !ID_EDEFAULT.equals(id);
+			case UMLRpyPackage.ICALL_ACTION__MODIFIED_TIME_WEAK:
+				return MODIFIED_TIME_WEAK_EDEFAULT == null ? modifiedTimeWeak != null : !MODIFIED_TIME_WEAK_EDEFAULT.equals(modifiedTimeWeak);
+			case UMLRpyPackage.ICALL_ACTION__INTERFACE_ITEM:
+				return interfaceItem != null;
+			case UMLRpyPackage.ICALL_ACTION__ARGUMENT_NAMES:
+				return ARGUMENT_NAMES_EDEFAULT == null ? argumentNames != null : !ARGUMENT_NAMES_EDEFAULT.equals(argumentNames);
+			case UMLRpyPackage.ICALL_ACTION__ARGUMENT_VALUES:
+				return ARGUMENT_VALUES_EDEFAULT == null ? argumentValues != null : !ARGUMENT_VALUES_EDEFAULT.equals(argumentValues);
+		}
+		return super.eIsSet(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String toString() {
+		if (eIsProxy()) return super.toString();
+
+		StringBuffer result = new StringBuffer(super.toString());
+		result.append(" (id: "); //$NON-NLS-1$
+		result.append(id);
+		result.append(", modifiedTimeWeak: "); //$NON-NLS-1$
+		result.append(modifiedTimeWeak);
+		result.append(", argumentNames: "); //$NON-NLS-1$
+		result.append(argumentNames);
+		result.append(", argumentValues: "); //$NON-NLS-1$
+		result.append(argumentValues);
+		result.append(')');
+		return result.toString();
+	}
+
+} //ICallActionImpl
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/ICallOperationImpl.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/ICallOperationImpl.java
new file mode 100755
index 0000000..3f67810
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/ICallOperationImpl.java
@@ -0,0 +1,227 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.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.interoperability.rpy.rpymetamodel.AssociationsType;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ICallOperation;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.OperationsType;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>ICall Operation</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * </p>
+ * <ul>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.ICallOperationImpl#getOperation <em>Operation</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.ICallOperationImpl#getTarget <em>Target</em>}</li>
+ * </ul>
+ *
+ * @generated
+ */
+public class ICallOperationImpl extends IStateImpl implements ICallOperation {
+	/**
+	 * The cached value of the '{@link #getOperation() <em>Operation</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getOperation()
+	 * @generated
+	 * @ordered
+	 */
+	protected OperationsType operation;
+
+	/**
+	 * The cached value of the '{@link #getTarget() <em>Target</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getTarget()
+	 * @generated
+	 * @ordered
+	 */
+	protected AssociationsType target;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected ICallOperationImpl() {
+		super();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EClass eStaticClass() {
+		return UMLRpyPackage.eINSTANCE.getICallOperation();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public OperationsType getOperation() {
+		if (operation != null && operation.eIsProxy()) {
+			InternalEObject oldOperation = (InternalEObject)operation;
+			operation = (OperationsType)eResolveProxy(oldOperation);
+			if (operation != oldOperation) {
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.ICALL_OPERATION__OPERATION, oldOperation, operation));
+			}
+		}
+		return operation;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public OperationsType basicGetOperation() {
+		return operation;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setOperation(OperationsType newOperation) {
+		OperationsType oldOperation = operation;
+		operation = newOperation;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.ICALL_OPERATION__OPERATION, oldOperation, operation));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public AssociationsType getTarget() {
+		if (target != null && target.eIsProxy()) {
+			InternalEObject oldTarget = (InternalEObject)target;
+			target = (AssociationsType)eResolveProxy(oldTarget);
+			if (target != oldTarget) {
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.ICALL_OPERATION__TARGET, oldTarget, target));
+			}
+		}
+		return target;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public AssociationsType basicGetTarget() {
+		return target;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setTarget(AssociationsType newTarget) {
+		AssociationsType oldTarget = target;
+		target = newTarget;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.ICALL_OPERATION__TARGET, oldTarget, target));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object eGet(int featureID, boolean resolve, boolean coreType) {
+		switch (featureID) {
+			case UMLRpyPackage.ICALL_OPERATION__OPERATION:
+				if (resolve) return getOperation();
+				return basicGetOperation();
+			case UMLRpyPackage.ICALL_OPERATION__TARGET:
+				if (resolve) return getTarget();
+				return basicGetTarget();
+		}
+		return super.eGet(featureID, resolve, coreType);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void eSet(int featureID, Object newValue) {
+		switch (featureID) {
+			case UMLRpyPackage.ICALL_OPERATION__OPERATION:
+				setOperation((OperationsType)newValue);
+				return;
+			case UMLRpyPackage.ICALL_OPERATION__TARGET:
+				setTarget((AssociationsType)newValue);
+				return;
+		}
+		super.eSet(featureID, newValue);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void eUnset(int featureID) {
+		switch (featureID) {
+			case UMLRpyPackage.ICALL_OPERATION__OPERATION:
+				setOperation((OperationsType)null);
+				return;
+			case UMLRpyPackage.ICALL_OPERATION__TARGET:
+				setTarget((AssociationsType)null);
+				return;
+		}
+		super.eUnset(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public boolean eIsSet(int featureID) {
+		switch (featureID) {
+			case UMLRpyPackage.ICALL_OPERATION__OPERATION:
+				return operation != null;
+			case UMLRpyPackage.ICALL_OPERATION__TARGET:
+				return target != null;
+		}
+		return super.eIsSet(featureID);
+	}
+
+} //ICallOperationImpl
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/IClassHandleImpl.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/IClassHandleImpl.java
new file mode 100755
index 0000000..703633c
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/IClassHandleImpl.java
@@ -0,0 +1,442 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl;
+
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.ecore.EClass;
+
+import org.eclipse.emf.ecore.impl.ENotificationImpl;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IClassHandle;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>IClass Handle</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * </p>
+ * <ul>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IClassHandleImpl#getM2Class <em>M2 Class</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IClassHandleImpl#getId <em>Id</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IClassHandleImpl#getFilename <em>Filename</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IClassHandleImpl#getSubsystem <em>Subsystem</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IClassHandleImpl#getClass_ <em>Class</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IClassHandleImpl#getName <em>Name</em>}</li>
+ * </ul>
+ *
+ * @generated
+ */
+public class IClassHandleImpl extends M_pBaseTypeImpl implements IClassHandle {
+	/**
+	 * The default value of the '{@link #getM2Class() <em>M2 Class</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM2Class()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String M2_CLASS_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getM2Class() <em>M2 Class</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM2Class()
+	 * @generated
+	 * @ordered
+	 */
+	protected String m2Class = M2_CLASS_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getId() <em>Id</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getId()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String ID_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getId() <em>Id</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getId()
+	 * @generated
+	 * @ordered
+	 */
+	protected String id = ID_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getFilename() <em>Filename</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getFilename()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String FILENAME_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getFilename() <em>Filename</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getFilename()
+	 * @generated
+	 * @ordered
+	 */
+	protected String filename = FILENAME_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getSubsystem() <em>Subsystem</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getSubsystem()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String SUBSYSTEM_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getSubsystem() <em>Subsystem</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getSubsystem()
+	 * @generated
+	 * @ordered
+	 */
+	protected String subsystem = SUBSYSTEM_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getClass_() <em>Class</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getClass_()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String CLASS_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getClass_() <em>Class</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getClass_()
+	 * @generated
+	 * @ordered
+	 */
+	protected String class_ = CLASS_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getName() <em>Name</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getName()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String NAME_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getName() <em>Name</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getName()
+	 * @generated
+	 * @ordered
+	 */
+	protected String name = NAME_EDEFAULT;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected IClassHandleImpl() {
+		super();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EClass eStaticClass() {
+		return UMLRpyPackage.eINSTANCE.getIClassHandle();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getM2Class() {
+		return m2Class;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM2Class(String newM2Class) {
+		String oldM2Class = m2Class;
+		m2Class = newM2Class;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.ICLASS_HANDLE__M2_CLASS, oldM2Class, m2Class));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getId() {
+		return id;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setId(String newId) {
+		String oldId = id;
+		id = newId;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.ICLASS_HANDLE__ID, oldId, id));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getFilename() {
+		return filename;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setFilename(String newFilename) {
+		String oldFilename = filename;
+		filename = newFilename;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.ICLASS_HANDLE__FILENAME, oldFilename, filename));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getSubsystem() {
+		return subsystem;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setSubsystem(String newSubsystem) {
+		String oldSubsystem = subsystem;
+		subsystem = newSubsystem;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.ICLASS_HANDLE__SUBSYSTEM, oldSubsystem, subsystem));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getClass_() {
+		return class_;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setClass(String newClass) {
+		String oldClass = class_;
+		class_ = newClass;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.ICLASS_HANDLE__CLASS, oldClass, class_));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getName() {
+		return name;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setName(String newName) {
+		String oldName = name;
+		name = newName;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.ICLASS_HANDLE__NAME, oldName, name));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object eGet(int featureID, boolean resolve, boolean coreType) {
+		switch (featureID) {
+			case UMLRpyPackage.ICLASS_HANDLE__M2_CLASS:
+				return getM2Class();
+			case UMLRpyPackage.ICLASS_HANDLE__ID:
+				return getId();
+			case UMLRpyPackage.ICLASS_HANDLE__FILENAME:
+				return getFilename();
+			case UMLRpyPackage.ICLASS_HANDLE__SUBSYSTEM:
+				return getSubsystem();
+			case UMLRpyPackage.ICLASS_HANDLE__CLASS:
+				return getClass_();
+			case UMLRpyPackage.ICLASS_HANDLE__NAME:
+				return getName();
+		}
+		return super.eGet(featureID, resolve, coreType);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void eSet(int featureID, Object newValue) {
+		switch (featureID) {
+			case UMLRpyPackage.ICLASS_HANDLE__M2_CLASS:
+				setM2Class((String)newValue);
+				return;
+			case UMLRpyPackage.ICLASS_HANDLE__ID:
+				setId((String)newValue);
+				return;
+			case UMLRpyPackage.ICLASS_HANDLE__FILENAME:
+				setFilename((String)newValue);
+				return;
+			case UMLRpyPackage.ICLASS_HANDLE__SUBSYSTEM:
+				setSubsystem((String)newValue);
+				return;
+			case UMLRpyPackage.ICLASS_HANDLE__CLASS:
+				setClass((String)newValue);
+				return;
+			case UMLRpyPackage.ICLASS_HANDLE__NAME:
+				setName((String)newValue);
+				return;
+		}
+		super.eSet(featureID, newValue);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void eUnset(int featureID) {
+		switch (featureID) {
+			case UMLRpyPackage.ICLASS_HANDLE__M2_CLASS:
+				setM2Class(M2_CLASS_EDEFAULT);
+				return;
+			case UMLRpyPackage.ICLASS_HANDLE__ID:
+				setId(ID_EDEFAULT);
+				return;
+			case UMLRpyPackage.ICLASS_HANDLE__FILENAME:
+				setFilename(FILENAME_EDEFAULT);
+				return;
+			case UMLRpyPackage.ICLASS_HANDLE__SUBSYSTEM:
+				setSubsystem(SUBSYSTEM_EDEFAULT);
+				return;
+			case UMLRpyPackage.ICLASS_HANDLE__CLASS:
+				setClass(CLASS_EDEFAULT);
+				return;
+			case UMLRpyPackage.ICLASS_HANDLE__NAME:
+				setName(NAME_EDEFAULT);
+				return;
+		}
+		super.eUnset(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public boolean eIsSet(int featureID) {
+		switch (featureID) {
+			case UMLRpyPackage.ICLASS_HANDLE__M2_CLASS:
+				return M2_CLASS_EDEFAULT == null ? m2Class != null : !M2_CLASS_EDEFAULT.equals(m2Class);
+			case UMLRpyPackage.ICLASS_HANDLE__ID:
+				return ID_EDEFAULT == null ? id != null : !ID_EDEFAULT.equals(id);
+			case UMLRpyPackage.ICLASS_HANDLE__FILENAME:
+				return FILENAME_EDEFAULT == null ? filename != null : !FILENAME_EDEFAULT.equals(filename);
+			case UMLRpyPackage.ICLASS_HANDLE__SUBSYSTEM:
+				return SUBSYSTEM_EDEFAULT == null ? subsystem != null : !SUBSYSTEM_EDEFAULT.equals(subsystem);
+			case UMLRpyPackage.ICLASS_HANDLE__CLASS:
+				return CLASS_EDEFAULT == null ? class_ != null : !CLASS_EDEFAULT.equals(class_);
+			case UMLRpyPackage.ICLASS_HANDLE__NAME:
+				return NAME_EDEFAULT == null ? name != null : !NAME_EDEFAULT.equals(name);
+		}
+		return super.eIsSet(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String toString() {
+		if (eIsProxy()) return super.toString();
+
+		StringBuffer result = new StringBuffer(super.toString());
+		result.append(" (m2Class: "); //$NON-NLS-1$
+		result.append(m2Class);
+		result.append(", id: "); //$NON-NLS-1$
+		result.append(id);
+		result.append(", filename: "); //$NON-NLS-1$
+		result.append(filename);
+		result.append(", subsystem: "); //$NON-NLS-1$
+		result.append(subsystem);
+		result.append(", class: "); //$NON-NLS-1$
+		result.append(class_);
+		result.append(", name: "); //$NON-NLS-1$
+		result.append(name);
+		result.append(')');
+		return result.toString();
+	}
+
+} //IClassHandleImpl
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/IClassImpl.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/IClassImpl.java
new file mode 100755
index 0000000..1773f67
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/IClassImpl.java
@@ -0,0 +1,2148 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl;
+
+import java.util.Collection;
+
+import org.eclipse.emf.common.notify.Notification;
+import org.eclipse.emf.common.notify.NotificationChain;
+
+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.EDataTypeEList;
+import org.eclipse.emf.ecore.util.EObjectContainmentEList;
+import org.eclipse.emf.ecore.util.EObjectResolvingEList;
+import org.eclipse.emf.ecore.util.InternalEList;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.AssociationsType;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ComponentsType;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ConveyedType;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.DeclarativesType;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.DependsOnType;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.DescriptionType;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ElementsType;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IClass;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IDependency;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IFile;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IInterfaceItem;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMHyperLink;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IModelElement;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IRelation;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ISubsystem;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITag;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITemplateParameter;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IUnit;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ItsStateChartType;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.LinksType;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.M_pBaseType;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.M_pModelObjectType;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.M_subjectType;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.NestedStateChartType;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ObjectLinksType;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.OperationsType;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.PropertiesType;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.TargetType;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.TheMainDiagramType;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UnknownType;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ValueType;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>IClass</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * </p>
+ * <ul>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IClassImpl#getUmlDependencyID <em>Uml Dependency ID</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IClassImpl#getObjectCreation <em>Object Creation</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IClassImpl#getModifiedTimeWeak <em>Modified Time Weak</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IClassImpl#getId <em>Id</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IClassImpl#getMyState <em>My State</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IClassImpl#getName <em>Name</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IClassImpl#getLastID <em>Last ID</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IClassImpl#getWeakCGTime <em>Weak CG Time</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IClassImpl#getStrongCGTime <em>Strong CG Time</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IClassImpl#getMultiplicity <em>Multiplicity</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IClassImpl#getClassModifier <em>Class Modifier</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IClassImpl#getProperties <em>Properties</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IClassImpl#getStereotypes <em>Stereotypes</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IClassImpl#getOperations <em>Operations</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IClassImpl#getInheritances <em>Inheritances</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IClassImpl#getTheMainDiagram <em>The Main Diagram</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IClassImpl#getAttrs <em>Attrs</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IClassImpl#getTags <em>Tags</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IClassImpl#getAssociations <em>Associations</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IClassImpl#getDependencies <em>Dependencies</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IClassImpl#getPorts <em>Ports</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IClassImpl#getObjectLinks <em>Object Links</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IClassImpl#getStateCharts <em>State Charts</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IClassImpl#getItsStateChart <em>Its State Chart</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IClassImpl#getTriggeredOperations <em>Triggered Operations</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IClassImpl#getReceptions <em>Receptions</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IClassImpl#getPrimitiveOperations <em>Primitive Operations</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IClassImpl#getAnnotations <em>Annotations</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IClassImpl#getDescription <em>Description</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IClassImpl#getDeclaratives <em>Declaratives</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IClassImpl#getAssociationElements <em>Association Elements</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IClassImpl#getOwnerHandle <em>Owner Handle</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IClassImpl#getHyperLinks <em>Hyper Links</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IClassImpl#getRequiremenTracabilityHandle <em>Requiremen Tracability Handle</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IClassImpl#getComponentFiles <em>Component Files</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IClassImpl#getLinks <em>Links</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IClassImpl#getComponents <em>Components</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IClassImpl#getEventHandles <em>Event Handles</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IClassImpl#getTemplateParameters <em>Template Parameters</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IClassImpl#getCodeUpdateCGTime <em>Code Update CG Time</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IClassImpl#getCmheader <em>Cmheader</em>}</li>
+ * </ul>
+ *
+ * @generated
+ */
+public class IClassImpl extends IClassifierImpl implements IClass {
+	/**
+	 * The default value of the '{@link #getUmlDependencyID() <em>Uml Dependency ID</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getUmlDependencyID()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String UML_DEPENDENCY_ID_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getUmlDependencyID() <em>Uml Dependency ID</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getUmlDependencyID()
+	 * @generated
+	 * @ordered
+	 */
+	protected String umlDependencyID = UML_DEPENDENCY_ID_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getObjectCreation() <em>Object Creation</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getObjectCreation()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String OBJECT_CREATION_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getObjectCreation() <em>Object Creation</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getObjectCreation()
+	 * @generated
+	 * @ordered
+	 */
+	protected String objectCreation = OBJECT_CREATION_EDEFAULT;
+
+	/**
+	 * The cached value of the '{@link #getModifiedTimeWeak() <em>Modified Time Weak</em>}' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getModifiedTimeWeak()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<String> modifiedTimeWeak;
+
+	/**
+	 * The default value of the '{@link #getId() <em>Id</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getId()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String ID_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getId() <em>Id</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getId()
+	 * @generated
+	 * @ordered
+	 */
+	protected String id = ID_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getMyState() <em>My State</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getMyState()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String MY_STATE_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getMyState() <em>My State</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getMyState()
+	 * @generated
+	 * @ordered
+	 */
+	protected String myState = MY_STATE_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getName() <em>Name</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getName()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String NAME_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getName() <em>Name</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getName()
+	 * @generated
+	 * @ordered
+	 */
+	protected String name = NAME_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getLastID() <em>Last ID</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getLastID()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String LAST_ID_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getLastID() <em>Last ID</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getLastID()
+	 * @generated
+	 * @ordered
+	 */
+	protected String lastID = LAST_ID_EDEFAULT;
+
+	/**
+	 * The cached value of the '{@link #getWeakCGTime() <em>Weak CG Time</em>}' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getWeakCGTime()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<String> weakCGTime;
+
+	/**
+	 * The cached value of the '{@link #getStrongCGTime() <em>Strong CG Time</em>}' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getStrongCGTime()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<String> strongCGTime;
+
+	/**
+	 * The default value of the '{@link #getMultiplicity() <em>Multiplicity</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getMultiplicity()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String MULTIPLICITY_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getMultiplicity() <em>Multiplicity</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getMultiplicity()
+	 * @generated
+	 * @ordered
+	 */
+	protected String multiplicity = MULTIPLICITY_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getClassModifier() <em>Class Modifier</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getClassModifier()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String CLASS_MODIFIER_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getClassModifier() <em>Class Modifier</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getClassModifier()
+	 * @generated
+	 * @ordered
+	 */
+	protected String classModifier = CLASS_MODIFIER_EDEFAULT;
+
+	/**
+	 * The cached value of the '{@link #getProperties() <em>Properties</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getProperties()
+	 * @generated
+	 * @ordered
+	 */
+	protected PropertiesType properties;
+
+	/**
+	 * The cached value of the '{@link #getStereotypes() <em>Stereotypes</em>}' reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getStereotypes()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<IUnit> stereotypes;
+
+	/**
+	 * The cached value of the '{@link #getOperations() <em>Operations</em>}' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getOperations()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<OperationsType> operations;
+
+	/**
+	 * The cached value of the '{@link #getInheritances() <em>Inheritances</em>}' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getInheritances()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<IModelElement> inheritances;
+
+	/**
+	 * The cached value of the '{@link #getTheMainDiagram() <em>The Main Diagram</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getTheMainDiagram()
+	 * @generated
+	 * @ordered
+	 */
+	protected TheMainDiagramType theMainDiagram;
+
+	/**
+	 * The cached value of the '{@link #getAttrs() <em>Attrs</em>}' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getAttrs()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<IUnit> attrs;
+
+	/**
+	 * The cached value of the '{@link #getTags() <em>Tags</em>}' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getTags()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<ITag> tags;
+
+	/**
+	 * The cached value of the '{@link #getAssociations() <em>Associations</em>}' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getAssociations()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<AssociationsType> associations;
+
+	/**
+	 * The cached value of the '{@link #getDependencies() <em>Dependencies</em>}' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getDependencies()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<IDependency> dependencies;
+
+	/**
+	 * The cached value of the '{@link #getPorts() <em>Ports</em>}' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getPorts()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<IRelation> ports;
+
+	/**
+	 * The cached value of the '{@link #getObjectLinks() <em>Object Links</em>}' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getObjectLinks()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<ObjectLinksType> objectLinks;
+
+	/**
+	 * The cached value of the '{@link #getStateCharts() <em>State Charts</em>}' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getStateCharts()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<NestedStateChartType> stateCharts;
+
+	/**
+	 * The cached value of the '{@link #getItsStateChart() <em>Its State Chart</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getItsStateChart()
+	 * @generated
+	 * @ordered
+	 */
+	protected ItsStateChartType itsStateChart;
+
+	/**
+	 * The cached value of the '{@link #getTriggeredOperations() <em>Triggered Operations</em>}' reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getTriggeredOperations()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<UnknownType> triggeredOperations;
+
+	/**
+	 * The cached value of the '{@link #getReceptions() <em>Receptions</em>}' reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getReceptions()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<UnknownType> receptions;
+
+	/**
+	 * The cached value of the '{@link #getPrimitiveOperations() <em>Primitive Operations</em>}' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getPrimitiveOperations()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<OperationsType> primitiveOperations;
+
+	/**
+	 * The cached value of the '{@link #getAnnotations() <em>Annotations</em>}' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getAnnotations()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<IUnit> annotations;
+
+	/**
+	 * The cached value of the '{@link #getDescription() <em>Description</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getDescription()
+	 * @generated
+	 * @ordered
+	 */
+	protected DescriptionType description;
+
+	/**
+	 * The cached value of the '{@link #getDeclaratives() <em>Declaratives</em>}' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getDeclaratives()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<DeclarativesType> declaratives;
+
+	/**
+	 * The cached value of the '{@link #getAssociationElements() <em>Association Elements</em>}' reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getAssociationElements()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<UnknownType> associationElements;
+
+	/**
+	 * The cached value of the '{@link #getOwnerHandle() <em>Owner Handle</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getOwnerHandle()
+	 * @generated
+	 * @ordered
+	 */
+	protected ISubsystem ownerHandle;
+
+	/**
+	 * The cached value of the '{@link #getHyperLinks() <em>Hyper Links</em>}' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getHyperLinks()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<IMHyperLink> hyperLinks;
+
+	/**
+	 * The default value of the '{@link #getRequiremenTracabilityHandle() <em>Requiremen Tracability Handle</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getRequiremenTracabilityHandle()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String REQUIREMEN_TRACABILITY_HANDLE_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getRequiremenTracabilityHandle() <em>Requiremen Tracability Handle</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getRequiremenTracabilityHandle()
+	 * @generated
+	 * @ordered
+	 */
+	protected String requiremenTracabilityHandle = REQUIREMEN_TRACABILITY_HANDLE_EDEFAULT;
+
+	/**
+	 * The cached value of the '{@link #getComponentFiles() <em>Component Files</em>}' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getComponentFiles()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<IFile> componentFiles;
+
+	/**
+	 * The cached value of the '{@link #getLinks() <em>Links</em>}' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getLinks()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<LinksType> links;
+
+	/**
+	 * The cached value of the '{@link #getComponents() <em>Components</em>}' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getComponents()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<ComponentsType> components;
+
+	/**
+	 * The cached value of the '{@link #getEventHandles() <em>Event Handles</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getEventHandles()
+	 * @generated
+	 * @ordered
+	 */
+	protected IInterfaceItem eventHandles;
+
+	/**
+	 * The cached value of the '{@link #getTemplateParameters() <em>Template Parameters</em>}' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getTemplateParameters()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<ITemplateParameter> templateParameters;
+
+	/**
+	 * The cached value of the '{@link #getCodeUpdateCGTime() <em>Code Update CG Time</em>}' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getCodeUpdateCGTime()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<String> codeUpdateCGTime;
+
+	/**
+	 * The default value of the '{@link #getCmheader() <em>Cmheader</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getCmheader()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String CMHEADER_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getCmheader() <em>Cmheader</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getCmheader()
+	 * @generated
+	 * @ordered
+	 */
+	protected String cmheader = CMHEADER_EDEFAULT;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected IClassImpl() {
+		super();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EClass eStaticClass() {
+		return UMLRpyPackage.eINSTANCE.getIClass();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getUmlDependencyID() {
+		return umlDependencyID;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setUmlDependencyID(String newUmlDependencyID) {
+		String oldUmlDependencyID = umlDependencyID;
+		umlDependencyID = newUmlDependencyID;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.ICLASS__UML_DEPENDENCY_ID, oldUmlDependencyID, umlDependencyID));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getObjectCreation() {
+		return objectCreation;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setObjectCreation(String newObjectCreation) {
+		String oldObjectCreation = objectCreation;
+		objectCreation = newObjectCreation;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.ICLASS__OBJECT_CREATION, oldObjectCreation, objectCreation));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<String> getModifiedTimeWeak() {
+		if (modifiedTimeWeak == null) {
+			modifiedTimeWeak = new EDataTypeEList<String>(String.class, this, UMLRpyPackage.ICLASS__MODIFIED_TIME_WEAK);
+		}
+		return modifiedTimeWeak;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getId() {
+		return id;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setId(String newId) {
+		String oldId = id;
+		id = newId;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.ICLASS__ID, oldId, id));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getMyState() {
+		return myState;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setMyState(String newMyState) {
+		String oldMyState = myState;
+		myState = newMyState;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.ICLASS__MY_STATE, oldMyState, myState));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getName() {
+		return name;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setName(String newName) {
+		String oldName = name;
+		name = newName;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.ICLASS__NAME, oldName, name));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getLastID() {
+		return lastID;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setLastID(String newLastID) {
+		String oldLastID = lastID;
+		lastID = newLastID;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.ICLASS__LAST_ID, oldLastID, lastID));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<String> getWeakCGTime() {
+		if (weakCGTime == null) {
+			weakCGTime = new EDataTypeEList<String>(String.class, this, UMLRpyPackage.ICLASS__WEAK_CG_TIME);
+		}
+		return weakCGTime;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<String> getStrongCGTime() {
+		if (strongCGTime == null) {
+			strongCGTime = new EDataTypeEList<String>(String.class, this, UMLRpyPackage.ICLASS__STRONG_CG_TIME);
+		}
+		return strongCGTime;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getMultiplicity() {
+		return multiplicity;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setMultiplicity(String newMultiplicity) {
+		String oldMultiplicity = multiplicity;
+		multiplicity = newMultiplicity;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.ICLASS__MULTIPLICITY, oldMultiplicity, multiplicity));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getClassModifier() {
+		return classModifier;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setClassModifier(String newClassModifier) {
+		String oldClassModifier = classModifier;
+		classModifier = newClassModifier;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.ICLASS__CLASS_MODIFIER, oldClassModifier, classModifier));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public PropertiesType getProperties() {
+		if (properties != null && properties.eIsProxy()) {
+			InternalEObject oldProperties = (InternalEObject)properties;
+			properties = (PropertiesType)eResolveProxy(oldProperties);
+			if (properties != oldProperties) {
+				InternalEObject newProperties = (InternalEObject)properties;
+				NotificationChain msgs = oldProperties.eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.ICLASS__PROPERTIES, null, null);
+				if (newProperties.eInternalContainer() == null) {
+					msgs = newProperties.eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.ICLASS__PROPERTIES, null, msgs);
+				}
+				if (msgs != null) msgs.dispatch();
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.ICLASS__PROPERTIES, oldProperties, properties));
+			}
+		}
+		return properties;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public PropertiesType basicGetProperties() {
+		return properties;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public NotificationChain basicSetProperties(PropertiesType newProperties, NotificationChain msgs) {
+		PropertiesType oldProperties = properties;
+		properties = newProperties;
+		if (eNotificationRequired()) {
+			ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, UMLRpyPackage.ICLASS__PROPERTIES, oldProperties, newProperties);
+			if (msgs == null) msgs = notification; else msgs.add(notification);
+		}
+		return msgs;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setProperties(PropertiesType newProperties) {
+		if (newProperties != properties) {
+			NotificationChain msgs = null;
+			if (properties != null)
+				msgs = ((InternalEObject)properties).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.ICLASS__PROPERTIES, null, msgs);
+			if (newProperties != null)
+				msgs = ((InternalEObject)newProperties).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.ICLASS__PROPERTIES, null, msgs);
+			msgs = basicSetProperties(newProperties, msgs);
+			if (msgs != null) msgs.dispatch();
+		}
+		else if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.ICLASS__PROPERTIES, newProperties, newProperties));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<IUnit> getStereotypes() {
+		if (stereotypes == null) {
+			stereotypes = new EObjectResolvingEList<IUnit>(IUnit.class, this, UMLRpyPackage.ICLASS__STEREOTYPES);
+		}
+		return stereotypes;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<OperationsType> getOperations() {
+		if (operations == null) {
+			operations = new EObjectContainmentEList.Resolving<OperationsType>(OperationsType.class, this, UMLRpyPackage.ICLASS__OPERATIONS);
+		}
+		return operations;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<IModelElement> getInheritances() {
+		if (inheritances == null) {
+			inheritances = new EObjectContainmentEList.Resolving<IModelElement>(IModelElement.class, this, UMLRpyPackage.ICLASS__INHERITANCES);
+		}
+		return inheritances;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public TheMainDiagramType getTheMainDiagram() {
+		if (theMainDiagram != null && theMainDiagram.eIsProxy()) {
+			InternalEObject oldTheMainDiagram = (InternalEObject)theMainDiagram;
+			theMainDiagram = (TheMainDiagramType)eResolveProxy(oldTheMainDiagram);
+			if (theMainDiagram != oldTheMainDiagram) {
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.ICLASS__THE_MAIN_DIAGRAM, oldTheMainDiagram, theMainDiagram));
+			}
+		}
+		return theMainDiagram;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public TheMainDiagramType basicGetTheMainDiagram() {
+		return theMainDiagram;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setTheMainDiagram(TheMainDiagramType newTheMainDiagram) {
+		TheMainDiagramType oldTheMainDiagram = theMainDiagram;
+		theMainDiagram = newTheMainDiagram;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.ICLASS__THE_MAIN_DIAGRAM, oldTheMainDiagram, theMainDiagram));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<IUnit> getAttrs() {
+		if (attrs == null) {
+			attrs = new EObjectContainmentEList.Resolving<IUnit>(IUnit.class, this, UMLRpyPackage.ICLASS__ATTRS);
+		}
+		return attrs;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<ITag> getTags() {
+		if (tags == null) {
+			tags = new EObjectContainmentEList.Resolving<ITag>(ITag.class, this, UMLRpyPackage.ICLASS__TAGS);
+		}
+		return tags;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<AssociationsType> getAssociations() {
+		if (associations == null) {
+			associations = new EObjectContainmentEList.Resolving<AssociationsType>(AssociationsType.class, this, UMLRpyPackage.ICLASS__ASSOCIATIONS);
+		}
+		return associations;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<IDependency> getDependencies() {
+		if (dependencies == null) {
+			dependencies = new EObjectContainmentEList.Resolving<IDependency>(IDependency.class, this, UMLRpyPackage.ICLASS__DEPENDENCIES);
+		}
+		return dependencies;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<IRelation> getPorts() {
+		if (ports == null) {
+			ports = new EObjectContainmentEList.Resolving<IRelation>(IRelation.class, this, UMLRpyPackage.ICLASS__PORTS);
+		}
+		return ports;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<ObjectLinksType> getObjectLinks() {
+		if (objectLinks == null) {
+			objectLinks = new EObjectContainmentEList.Resolving<ObjectLinksType>(ObjectLinksType.class, this, UMLRpyPackage.ICLASS__OBJECT_LINKS);
+		}
+		return objectLinks;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<NestedStateChartType> getStateCharts() {
+		if (stateCharts == null) {
+			stateCharts = new EObjectContainmentEList.Resolving<NestedStateChartType>(NestedStateChartType.class, this, UMLRpyPackage.ICLASS__STATE_CHARTS);
+		}
+		return stateCharts;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public ItsStateChartType getItsStateChart() {
+		if (itsStateChart != null && itsStateChart.eIsProxy()) {
+			InternalEObject oldItsStateChart = (InternalEObject)itsStateChart;
+			itsStateChart = (ItsStateChartType)eResolveProxy(oldItsStateChart);
+			if (itsStateChart != oldItsStateChart) {
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.ICLASS__ITS_STATE_CHART, oldItsStateChart, itsStateChart));
+			}
+		}
+		return itsStateChart;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public ItsStateChartType basicGetItsStateChart() {
+		return itsStateChart;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setItsStateChart(ItsStateChartType newItsStateChart) {
+		ItsStateChartType oldItsStateChart = itsStateChart;
+		itsStateChart = newItsStateChart;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.ICLASS__ITS_STATE_CHART, oldItsStateChart, itsStateChart));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<UnknownType> getTriggeredOperations() {
+		if (triggeredOperations == null) {
+			triggeredOperations = new EObjectResolvingEList<UnknownType>(UnknownType.class, this, UMLRpyPackage.ICLASS__TRIGGERED_OPERATIONS);
+		}
+		return triggeredOperations;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<UnknownType> getReceptions() {
+		if (receptions == null) {
+			receptions = new EObjectResolvingEList<UnknownType>(UnknownType.class, this, UMLRpyPackage.ICLASS__RECEPTIONS);
+		}
+		return receptions;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<OperationsType> getPrimitiveOperations() {
+		if (primitiveOperations == null) {
+			primitiveOperations = new EObjectContainmentEList.Resolving<OperationsType>(OperationsType.class, this, UMLRpyPackage.ICLASS__PRIMITIVE_OPERATIONS);
+		}
+		return primitiveOperations;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<IUnit> getAnnotations() {
+		if (annotations == null) {
+			annotations = new EObjectContainmentEList.Resolving<IUnit>(IUnit.class, this, UMLRpyPackage.ICLASS__ANNOTATIONS);
+		}
+		return annotations;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public DescriptionType getDescription() {
+		if (description != null && description.eIsProxy()) {
+			InternalEObject oldDescription = (InternalEObject)description;
+			description = (DescriptionType)eResolveProxy(oldDescription);
+			if (description != oldDescription) {
+				InternalEObject newDescription = (InternalEObject)description;
+				NotificationChain msgs = oldDescription.eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.ICLASS__DESCRIPTION, null, null);
+				if (newDescription.eInternalContainer() == null) {
+					msgs = newDescription.eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.ICLASS__DESCRIPTION, null, msgs);
+				}
+				if (msgs != null) msgs.dispatch();
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.ICLASS__DESCRIPTION, oldDescription, description));
+			}
+		}
+		return description;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public DescriptionType basicGetDescription() {
+		return description;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public NotificationChain basicSetDescription(DescriptionType newDescription, NotificationChain msgs) {
+		DescriptionType oldDescription = description;
+		description = newDescription;
+		if (eNotificationRequired()) {
+			ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, UMLRpyPackage.ICLASS__DESCRIPTION, oldDescription, newDescription);
+			if (msgs == null) msgs = notification; else msgs.add(notification);
+		}
+		return msgs;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setDescription(DescriptionType newDescription) {
+		if (newDescription != description) {
+			NotificationChain msgs = null;
+			if (description != null)
+				msgs = ((InternalEObject)description).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.ICLASS__DESCRIPTION, null, msgs);
+			if (newDescription != null)
+				msgs = ((InternalEObject)newDescription).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.ICLASS__DESCRIPTION, null, msgs);
+			msgs = basicSetDescription(newDescription, msgs);
+			if (msgs != null) msgs.dispatch();
+		}
+		else if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.ICLASS__DESCRIPTION, newDescription, newDescription));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<DeclarativesType> getDeclaratives() {
+		if (declaratives == null) {
+			declaratives = new EObjectContainmentEList.Resolving<DeclarativesType>(DeclarativesType.class, this, UMLRpyPackage.ICLASS__DECLARATIVES);
+		}
+		return declaratives;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<UnknownType> getAssociationElements() {
+		if (associationElements == null) {
+			associationElements = new EObjectResolvingEList<UnknownType>(UnknownType.class, this, UMLRpyPackage.ICLASS__ASSOCIATION_ELEMENTS);
+		}
+		return associationElements;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public ISubsystem getOwnerHandle() {
+		if (ownerHandle != null && ownerHandle.eIsProxy()) {
+			InternalEObject oldOwnerHandle = (InternalEObject)ownerHandle;
+			ownerHandle = (ISubsystem)eResolveProxy(oldOwnerHandle);
+			if (ownerHandle != oldOwnerHandle) {
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.ICLASS__OWNER_HANDLE, oldOwnerHandle, ownerHandle));
+			}
+		}
+		return ownerHandle;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public ISubsystem basicGetOwnerHandle() {
+		return ownerHandle;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setOwnerHandle(ISubsystem newOwnerHandle) {
+		ISubsystem oldOwnerHandle = ownerHandle;
+		ownerHandle = newOwnerHandle;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.ICLASS__OWNER_HANDLE, oldOwnerHandle, ownerHandle));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<IMHyperLink> getHyperLinks() {
+		if (hyperLinks == null) {
+			hyperLinks = new EObjectContainmentEList.Resolving<IMHyperLink>(IMHyperLink.class, this, UMLRpyPackage.ICLASS__HYPER_LINKS);
+		}
+		return hyperLinks;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getRequiremenTracabilityHandle() {
+		return requiremenTracabilityHandle;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setRequiremenTracabilityHandle(String newRequiremenTracabilityHandle) {
+		String oldRequiremenTracabilityHandle = requiremenTracabilityHandle;
+		requiremenTracabilityHandle = newRequiremenTracabilityHandle;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.ICLASS__REQUIREMEN_TRACABILITY_HANDLE, oldRequiremenTracabilityHandle, requiremenTracabilityHandle));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<IFile> getComponentFiles() {
+		if (componentFiles == null) {
+			componentFiles = new EObjectContainmentEList.Resolving<IFile>(IFile.class, this, UMLRpyPackage.ICLASS__COMPONENT_FILES);
+		}
+		return componentFiles;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<LinksType> getLinks() {
+		if (links == null) {
+			links = new EObjectContainmentEList.Resolving<LinksType>(LinksType.class, this, UMLRpyPackage.ICLASS__LINKS);
+		}
+		return links;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<ComponentsType> getComponents() {
+		if (components == null) {
+			components = new EObjectContainmentEList.Resolving<ComponentsType>(ComponentsType.class, this, UMLRpyPackage.ICLASS__COMPONENTS);
+		}
+		return components;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IInterfaceItem getEventHandles() {
+		if (eventHandles != null && eventHandles.eIsProxy()) {
+			InternalEObject oldEventHandles = (InternalEObject)eventHandles;
+			eventHandles = (IInterfaceItem)eResolveProxy(oldEventHandles);
+			if (eventHandles != oldEventHandles) {
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.ICLASS__EVENT_HANDLES, oldEventHandles, eventHandles));
+			}
+		}
+		return eventHandles;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IInterfaceItem basicGetEventHandles() {
+		return eventHandles;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setEventHandles(IInterfaceItem newEventHandles) {
+		IInterfaceItem oldEventHandles = eventHandles;
+		eventHandles = newEventHandles;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.ICLASS__EVENT_HANDLES, oldEventHandles, eventHandles));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<ITemplateParameter> getTemplateParameters() {
+		if (templateParameters == null) {
+			templateParameters = new EObjectContainmentEList.Resolving<ITemplateParameter>(ITemplateParameter.class, this, UMLRpyPackage.ICLASS__TEMPLATE_PARAMETERS);
+		}
+		return templateParameters;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<String> getCodeUpdateCGTime() {
+		if (codeUpdateCGTime == null) {
+			codeUpdateCGTime = new EDataTypeEList<String>(String.class, this, UMLRpyPackage.ICLASS__CODE_UPDATE_CG_TIME);
+		}
+		return codeUpdateCGTime;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getCmheader() {
+		return cmheader;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setCmheader(String newCmheader) {
+		String oldCmheader = cmheader;
+		cmheader = newCmheader;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.ICLASS__CMHEADER, oldCmheader, cmheader));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
+		switch (featureID) {
+			case UMLRpyPackage.ICLASS__PROPERTIES:
+				return basicSetProperties(null, msgs);
+			case UMLRpyPackage.ICLASS__OPERATIONS:
+				return ((InternalEList<?>)getOperations()).basicRemove(otherEnd, msgs);
+			case UMLRpyPackage.ICLASS__INHERITANCES:
+				return ((InternalEList<?>)getInheritances()).basicRemove(otherEnd, msgs);
+			case UMLRpyPackage.ICLASS__ATTRS:
+				return ((InternalEList<?>)getAttrs()).basicRemove(otherEnd, msgs);
+			case UMLRpyPackage.ICLASS__TAGS:
+				return ((InternalEList<?>)getTags()).basicRemove(otherEnd, msgs);
+			case UMLRpyPackage.ICLASS__ASSOCIATIONS:
+				return ((InternalEList<?>)getAssociations()).basicRemove(otherEnd, msgs);
+			case UMLRpyPackage.ICLASS__DEPENDENCIES:
+				return ((InternalEList<?>)getDependencies()).basicRemove(otherEnd, msgs);
+			case UMLRpyPackage.ICLASS__PORTS:
+				return ((InternalEList<?>)getPorts()).basicRemove(otherEnd, msgs);
+			case UMLRpyPackage.ICLASS__OBJECT_LINKS:
+				return ((InternalEList<?>)getObjectLinks()).basicRemove(otherEnd, msgs);
+			case UMLRpyPackage.ICLASS__STATE_CHARTS:
+				return ((InternalEList<?>)getStateCharts()).basicRemove(otherEnd, msgs);
+			case UMLRpyPackage.ICLASS__PRIMITIVE_OPERATIONS:
+				return ((InternalEList<?>)getPrimitiveOperations()).basicRemove(otherEnd, msgs);
+			case UMLRpyPackage.ICLASS__ANNOTATIONS:
+				return ((InternalEList<?>)getAnnotations()).basicRemove(otherEnd, msgs);
+			case UMLRpyPackage.ICLASS__DESCRIPTION:
+				return basicSetDescription(null, msgs);
+			case UMLRpyPackage.ICLASS__DECLARATIVES:
+				return ((InternalEList<?>)getDeclaratives()).basicRemove(otherEnd, msgs);
+			case UMLRpyPackage.ICLASS__HYPER_LINKS:
+				return ((InternalEList<?>)getHyperLinks()).basicRemove(otherEnd, msgs);
+			case UMLRpyPackage.ICLASS__COMPONENT_FILES:
+				return ((InternalEList<?>)getComponentFiles()).basicRemove(otherEnd, msgs);
+			case UMLRpyPackage.ICLASS__LINKS:
+				return ((InternalEList<?>)getLinks()).basicRemove(otherEnd, msgs);
+			case UMLRpyPackage.ICLASS__COMPONENTS:
+				return ((InternalEList<?>)getComponents()).basicRemove(otherEnd, msgs);
+			case UMLRpyPackage.ICLASS__TEMPLATE_PARAMETERS:
+				return ((InternalEList<?>)getTemplateParameters()).basicRemove(otherEnd, msgs);
+		}
+		return super.eInverseRemove(otherEnd, featureID, msgs);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object eGet(int featureID, boolean resolve, boolean coreType) {
+		switch (featureID) {
+			case UMLRpyPackage.ICLASS__UML_DEPENDENCY_ID:
+				return getUmlDependencyID();
+			case UMLRpyPackage.ICLASS__OBJECT_CREATION:
+				return getObjectCreation();
+			case UMLRpyPackage.ICLASS__MODIFIED_TIME_WEAK:
+				return getModifiedTimeWeak();
+			case UMLRpyPackage.ICLASS__ID:
+				return getId();
+			case UMLRpyPackage.ICLASS__MY_STATE:
+				return getMyState();
+			case UMLRpyPackage.ICLASS__NAME:
+				return getName();
+			case UMLRpyPackage.ICLASS__LAST_ID:
+				return getLastID();
+			case UMLRpyPackage.ICLASS__WEAK_CG_TIME:
+				return getWeakCGTime();
+			case UMLRpyPackage.ICLASS__STRONG_CG_TIME:
+				return getStrongCGTime();
+			case UMLRpyPackage.ICLASS__MULTIPLICITY:
+				return getMultiplicity();
+			case UMLRpyPackage.ICLASS__CLASS_MODIFIER:
+				return getClassModifier();
+			case UMLRpyPackage.ICLASS__PROPERTIES:
+				if (resolve) return getProperties();
+				return basicGetProperties();
+			case UMLRpyPackage.ICLASS__STEREOTYPES:
+				return getStereotypes();
+			case UMLRpyPackage.ICLASS__OPERATIONS:
+				return getOperations();
+			case UMLRpyPackage.ICLASS__INHERITANCES:
+				return getInheritances();
+			case UMLRpyPackage.ICLASS__THE_MAIN_DIAGRAM:
+				if (resolve) return getTheMainDiagram();
+				return basicGetTheMainDiagram();
+			case UMLRpyPackage.ICLASS__ATTRS:
+				return getAttrs();
+			case UMLRpyPackage.ICLASS__TAGS:
+				return getTags();
+			case UMLRpyPackage.ICLASS__ASSOCIATIONS:
+				return getAssociations();
+			case UMLRpyPackage.ICLASS__DEPENDENCIES:
+				return getDependencies();
+			case UMLRpyPackage.ICLASS__PORTS:
+				return getPorts();
+			case UMLRpyPackage.ICLASS__OBJECT_LINKS:
+				return getObjectLinks();
+			case UMLRpyPackage.ICLASS__STATE_CHARTS:
+				return getStateCharts();
+			case UMLRpyPackage.ICLASS__ITS_STATE_CHART:
+				if (resolve) return getItsStateChart();
+				return basicGetItsStateChart();
+			case UMLRpyPackage.ICLASS__TRIGGERED_OPERATIONS:
+				return getTriggeredOperations();
+			case UMLRpyPackage.ICLASS__RECEPTIONS:
+				return getReceptions();
+			case UMLRpyPackage.ICLASS__PRIMITIVE_OPERATIONS:
+				return getPrimitiveOperations();
+			case UMLRpyPackage.ICLASS__ANNOTATIONS:
+				return getAnnotations();
+			case UMLRpyPackage.ICLASS__DESCRIPTION:
+				if (resolve) return getDescription();
+				return basicGetDescription();
+			case UMLRpyPackage.ICLASS__DECLARATIVES:
+				return getDeclaratives();
+			case UMLRpyPackage.ICLASS__ASSOCIATION_ELEMENTS:
+				return getAssociationElements();
+			case UMLRpyPackage.ICLASS__OWNER_HANDLE:
+				if (resolve) return getOwnerHandle();
+				return basicGetOwnerHandle();
+			case UMLRpyPackage.ICLASS__HYPER_LINKS:
+				return getHyperLinks();
+			case UMLRpyPackage.ICLASS__REQUIREMEN_TRACABILITY_HANDLE:
+				return getRequiremenTracabilityHandle();
+			case UMLRpyPackage.ICLASS__COMPONENT_FILES:
+				return getComponentFiles();
+			case UMLRpyPackage.ICLASS__LINKS:
+				return getLinks();
+			case UMLRpyPackage.ICLASS__COMPONENTS:
+				return getComponents();
+			case UMLRpyPackage.ICLASS__EVENT_HANDLES:
+				if (resolve) return getEventHandles();
+				return basicGetEventHandles();
+			case UMLRpyPackage.ICLASS__TEMPLATE_PARAMETERS:
+				return getTemplateParameters();
+			case UMLRpyPackage.ICLASS__CODE_UPDATE_CG_TIME:
+				return getCodeUpdateCGTime();
+			case UMLRpyPackage.ICLASS__CMHEADER:
+				return getCmheader();
+		}
+		return super.eGet(featureID, resolve, coreType);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@SuppressWarnings("unchecked")
+	@Override
+	public void eSet(int featureID, Object newValue) {
+		switch (featureID) {
+			case UMLRpyPackage.ICLASS__UML_DEPENDENCY_ID:
+				setUmlDependencyID((String)newValue);
+				return;
+			case UMLRpyPackage.ICLASS__OBJECT_CREATION:
+				setObjectCreation((String)newValue);
+				return;
+			case UMLRpyPackage.ICLASS__MODIFIED_TIME_WEAK:
+				getModifiedTimeWeak().clear();
+				getModifiedTimeWeak().addAll((Collection<? extends String>)newValue);
+				return;
+			case UMLRpyPackage.ICLASS__ID:
+				setId((String)newValue);
+				return;
+			case UMLRpyPackage.ICLASS__MY_STATE:
+				setMyState((String)newValue);
+				return;
+			case UMLRpyPackage.ICLASS__NAME:
+				setName((String)newValue);
+				return;
+			case UMLRpyPackage.ICLASS__LAST_ID:
+				setLastID((String)newValue);
+				return;
+			case UMLRpyPackage.ICLASS__WEAK_CG_TIME:
+				getWeakCGTime().clear();
+				getWeakCGTime().addAll((Collection<? extends String>)newValue);
+				return;
+			case UMLRpyPackage.ICLASS__STRONG_CG_TIME:
+				getStrongCGTime().clear();
+				getStrongCGTime().addAll((Collection<? extends String>)newValue);
+				return;
+			case UMLRpyPackage.ICLASS__MULTIPLICITY:
+				setMultiplicity((String)newValue);
+				return;
+			case UMLRpyPackage.ICLASS__CLASS_MODIFIER:
+				setClassModifier((String)newValue);
+				return;
+			case UMLRpyPackage.ICLASS__PROPERTIES:
+				setProperties((PropertiesType)newValue);
+				return;
+			case UMLRpyPackage.ICLASS__STEREOTYPES:
+				getStereotypes().clear();
+				getStereotypes().addAll((Collection<? extends IUnit>)newValue);
+				return;
+			case UMLRpyPackage.ICLASS__OPERATIONS:
+				getOperations().clear();
+				getOperations().addAll((Collection<? extends OperationsType>)newValue);
+				return;
+			case UMLRpyPackage.ICLASS__INHERITANCES:
+				getInheritances().clear();
+				getInheritances().addAll((Collection<? extends IModelElement>)newValue);
+				return;
+			case UMLRpyPackage.ICLASS__THE_MAIN_DIAGRAM:
+				setTheMainDiagram((TheMainDiagramType)newValue);
+				return;
+			case UMLRpyPackage.ICLASS__ATTRS:
+				getAttrs().clear();
+				getAttrs().addAll((Collection<? extends IUnit>)newValue);
+				return;
+			case UMLRpyPackage.ICLASS__TAGS:
+				getTags().clear();
+				getTags().addAll((Collection<? extends ITag>)newValue);
+				return;
+			case UMLRpyPackage.ICLASS__ASSOCIATIONS:
+				getAssociations().clear();
+				getAssociations().addAll((Collection<? extends AssociationsType>)newValue);
+				return;
+			case UMLRpyPackage.ICLASS__DEPENDENCIES:
+				getDependencies().clear();
+				getDependencies().addAll((Collection<? extends IDependency>)newValue);
+				return;
+			case UMLRpyPackage.ICLASS__PORTS:
+				getPorts().clear();
+				getPorts().addAll((Collection<? extends IRelation>)newValue);
+				return;
+			case UMLRpyPackage.ICLASS__OBJECT_LINKS:
+				getObjectLinks().clear();
+				getObjectLinks().addAll((Collection<? extends ObjectLinksType>)newValue);
+				return;
+			case UMLRpyPackage.ICLASS__STATE_CHARTS:
+				getStateCharts().clear();
+				getStateCharts().addAll((Collection<? extends NestedStateChartType>)newValue);
+				return;
+			case UMLRpyPackage.ICLASS__ITS_STATE_CHART:
+				setItsStateChart((ItsStateChartType)newValue);
+				return;
+			case UMLRpyPackage.ICLASS__TRIGGERED_OPERATIONS:
+				getTriggeredOperations().clear();
+				getTriggeredOperations().addAll((Collection<? extends UnknownType>)newValue);
+				return;
+			case UMLRpyPackage.ICLASS__RECEPTIONS:
+				getReceptions().clear();
+				getReceptions().addAll((Collection<? extends UnknownType>)newValue);
+				return;
+			case UMLRpyPackage.ICLASS__PRIMITIVE_OPERATIONS:
+				getPrimitiveOperations().clear();
+				getPrimitiveOperations().addAll((Collection<? extends OperationsType>)newValue);
+				return;
+			case UMLRpyPackage.ICLASS__ANNOTATIONS:
+				getAnnotations().clear();
+				getAnnotations().addAll((Collection<? extends IUnit>)newValue);
+				return;
+			case UMLRpyPackage.ICLASS__DESCRIPTION:
+				setDescription((DescriptionType)newValue);
+				return;
+			case UMLRpyPackage.ICLASS__DECLARATIVES:
+				getDeclaratives().clear();
+				getDeclaratives().addAll((Collection<? extends DeclarativesType>)newValue);
+				return;
+			case UMLRpyPackage.ICLASS__ASSOCIATION_ELEMENTS:
+				getAssociationElements().clear();
+				getAssociationElements().addAll((Collection<? extends UnknownType>)newValue);
+				return;
+			case UMLRpyPackage.ICLASS__OWNER_HANDLE:
+				setOwnerHandle((ISubsystem)newValue);
+				return;
+			case UMLRpyPackage.ICLASS__HYPER_LINKS:
+				getHyperLinks().clear();
+				getHyperLinks().addAll((Collection<? extends IMHyperLink>)newValue);
+				return;
+			case UMLRpyPackage.ICLASS__REQUIREMEN_TRACABILITY_HANDLE:
+				setRequiremenTracabilityHandle((String)newValue);
+				return;
+			case UMLRpyPackage.ICLASS__COMPONENT_FILES:
+				getComponentFiles().clear();
+				getComponentFiles().addAll((Collection<? extends IFile>)newValue);
+				return;
+			case UMLRpyPackage.ICLASS__LINKS:
+				getLinks().clear();
+				getLinks().addAll((Collection<? extends LinksType>)newValue);
+				return;
+			case UMLRpyPackage.ICLASS__COMPONENTS:
+				getComponents().clear();
+				getComponents().addAll((Collection<? extends ComponentsType>)newValue);
+				return;
+			case UMLRpyPackage.ICLASS__EVENT_HANDLES:
+				setEventHandles((IInterfaceItem)newValue);
+				return;
+			case UMLRpyPackage.ICLASS__TEMPLATE_PARAMETERS:
+				getTemplateParameters().clear();
+				getTemplateParameters().addAll((Collection<? extends ITemplateParameter>)newValue);
+				return;
+			case UMLRpyPackage.ICLASS__CODE_UPDATE_CG_TIME:
+				getCodeUpdateCGTime().clear();
+				getCodeUpdateCGTime().addAll((Collection<? extends String>)newValue);
+				return;
+			case UMLRpyPackage.ICLASS__CMHEADER:
+				setCmheader((String)newValue);
+				return;
+		}
+		super.eSet(featureID, newValue);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void eUnset(int featureID) {
+		switch (featureID) {
+			case UMLRpyPackage.ICLASS__UML_DEPENDENCY_ID:
+				setUmlDependencyID(UML_DEPENDENCY_ID_EDEFAULT);
+				return;
+			case UMLRpyPackage.ICLASS__OBJECT_CREATION:
+				setObjectCreation(OBJECT_CREATION_EDEFAULT);
+				return;
+			case UMLRpyPackage.ICLASS__MODIFIED_TIME_WEAK:
+				getModifiedTimeWeak().clear();
+				return;
+			case UMLRpyPackage.ICLASS__ID:
+				setId(ID_EDEFAULT);
+				return;
+			case UMLRpyPackage.ICLASS__MY_STATE:
+				setMyState(MY_STATE_EDEFAULT);
+				return;
+			case UMLRpyPackage.ICLASS__NAME:
+				setName(NAME_EDEFAULT);
+				return;
+			case UMLRpyPackage.ICLASS__LAST_ID:
+				setLastID(LAST_ID_EDEFAULT);
+				return;
+			case UMLRpyPackage.ICLASS__WEAK_CG_TIME:
+				getWeakCGTime().clear();
+				return;
+			case UMLRpyPackage.ICLASS__STRONG_CG_TIME:
+				getStrongCGTime().clear();
+				return;
+			case UMLRpyPackage.ICLASS__MULTIPLICITY:
+				setMultiplicity(MULTIPLICITY_EDEFAULT);
+				return;
+			case UMLRpyPackage.ICLASS__CLASS_MODIFIER:
+				setClassModifier(CLASS_MODIFIER_EDEFAULT);
+				return;
+			case UMLRpyPackage.ICLASS__PROPERTIES:
+				setProperties((PropertiesType)null);
+				return;
+			case UMLRpyPackage.ICLASS__STEREOTYPES:
+				getStereotypes().clear();
+				return;
+			case UMLRpyPackage.ICLASS__OPERATIONS:
+				getOperations().clear();
+				return;
+			case UMLRpyPackage.ICLASS__INHERITANCES:
+				getInheritances().clear();
+				return;
+			case UMLRpyPackage.ICLASS__THE_MAIN_DIAGRAM:
+				setTheMainDiagram((TheMainDiagramType)null);
+				return;
+			case UMLRpyPackage.ICLASS__ATTRS:
+				getAttrs().clear();
+				return;
+			case UMLRpyPackage.ICLASS__TAGS:
+				getTags().clear();
+				return;
+			case UMLRpyPackage.ICLASS__ASSOCIATIONS:
+				getAssociations().clear();
+				return;
+			case UMLRpyPackage.ICLASS__DEPENDENCIES:
+				getDependencies().clear();
+				return;
+			case UMLRpyPackage.ICLASS__PORTS:
+				getPorts().clear();
+				return;
+			case UMLRpyPackage.ICLASS__OBJECT_LINKS:
+				getObjectLinks().clear();
+				return;
+			case UMLRpyPackage.ICLASS__STATE_CHARTS:
+				getStateCharts().clear();
+				return;
+			case UMLRpyPackage.ICLASS__ITS_STATE_CHART:
+				setItsStateChart((ItsStateChartType)null);
+				return;
+			case UMLRpyPackage.ICLASS__TRIGGERED_OPERATIONS:
+				getTriggeredOperations().clear();
+				return;
+			case UMLRpyPackage.ICLASS__RECEPTIONS:
+				getReceptions().clear();
+				return;
+			case UMLRpyPackage.ICLASS__PRIMITIVE_OPERATIONS:
+				getPrimitiveOperations().clear();
+				return;
+			case UMLRpyPackage.ICLASS__ANNOTATIONS:
+				getAnnotations().clear();
+				return;
+			case UMLRpyPackage.ICLASS__DESCRIPTION:
+				setDescription((DescriptionType)null);
+				return;
+			case UMLRpyPackage.ICLASS__DECLARATIVES:
+				getDeclaratives().clear();
+				return;
+			case UMLRpyPackage.ICLASS__ASSOCIATION_ELEMENTS:
+				getAssociationElements().clear();
+				return;
+			case UMLRpyPackage.ICLASS__OWNER_HANDLE:
+				setOwnerHandle((ISubsystem)null);
+				return;
+			case UMLRpyPackage.ICLASS__HYPER_LINKS:
+				getHyperLinks().clear();
+				return;
+			case UMLRpyPackage.ICLASS__REQUIREMEN_TRACABILITY_HANDLE:
+				setRequiremenTracabilityHandle(REQUIREMEN_TRACABILITY_HANDLE_EDEFAULT);
+				return;
+			case UMLRpyPackage.ICLASS__COMPONENT_FILES:
+				getComponentFiles().clear();
+				return;
+			case UMLRpyPackage.ICLASS__LINKS:
+				getLinks().clear();
+				return;
+			case UMLRpyPackage.ICLASS__COMPONENTS:
+				getComponents().clear();
+				return;
+			case UMLRpyPackage.ICLASS__EVENT_HANDLES:
+				setEventHandles((IInterfaceItem)null);
+				return;
+			case UMLRpyPackage.ICLASS__TEMPLATE_PARAMETERS:
+				getTemplateParameters().clear();
+				return;
+			case UMLRpyPackage.ICLASS__CODE_UPDATE_CG_TIME:
+				getCodeUpdateCGTime().clear();
+				return;
+			case UMLRpyPackage.ICLASS__CMHEADER:
+				setCmheader(CMHEADER_EDEFAULT);
+				return;
+		}
+		super.eUnset(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public boolean eIsSet(int featureID) {
+		switch (featureID) {
+			case UMLRpyPackage.ICLASS__UML_DEPENDENCY_ID:
+				return UML_DEPENDENCY_ID_EDEFAULT == null ? umlDependencyID != null : !UML_DEPENDENCY_ID_EDEFAULT.equals(umlDependencyID);
+			case UMLRpyPackage.ICLASS__OBJECT_CREATION:
+				return OBJECT_CREATION_EDEFAULT == null ? objectCreation != null : !OBJECT_CREATION_EDEFAULT.equals(objectCreation);
+			case UMLRpyPackage.ICLASS__MODIFIED_TIME_WEAK:
+				return modifiedTimeWeak != null && !modifiedTimeWeak.isEmpty();
+			case UMLRpyPackage.ICLASS__ID:
+				return ID_EDEFAULT == null ? id != null : !ID_EDEFAULT.equals(id);
+			case UMLRpyPackage.ICLASS__MY_STATE:
+				return MY_STATE_EDEFAULT == null ? myState != null : !MY_STATE_EDEFAULT.equals(myState);
+			case UMLRpyPackage.ICLASS__NAME:
+				return NAME_EDEFAULT == null ? name != null : !NAME_EDEFAULT.equals(name);
+			case UMLRpyPackage.ICLASS__LAST_ID:
+				return LAST_ID_EDEFAULT == null ? lastID != null : !LAST_ID_EDEFAULT.equals(lastID);
+			case UMLRpyPackage.ICLASS__WEAK_CG_TIME:
+				return weakCGTime != null && !weakCGTime.isEmpty();
+			case UMLRpyPackage.ICLASS__STRONG_CG_TIME:
+				return strongCGTime != null && !strongCGTime.isEmpty();
+			case UMLRpyPackage.ICLASS__MULTIPLICITY:
+				return MULTIPLICITY_EDEFAULT == null ? multiplicity != null : !MULTIPLICITY_EDEFAULT.equals(multiplicity);
+			case UMLRpyPackage.ICLASS__CLASS_MODIFIER:
+				return CLASS_MODIFIER_EDEFAULT == null ? classModifier != null : !CLASS_MODIFIER_EDEFAULT.equals(classModifier);
+			case UMLRpyPackage.ICLASS__PROPERTIES:
+				return properties != null;
+			case UMLRpyPackage.ICLASS__STEREOTYPES:
+				return stereotypes != null && !stereotypes.isEmpty();
+			case UMLRpyPackage.ICLASS__OPERATIONS:
+				return operations != null && !operations.isEmpty();
+			case UMLRpyPackage.ICLASS__INHERITANCES:
+				return inheritances != null && !inheritances.isEmpty();
+			case UMLRpyPackage.ICLASS__THE_MAIN_DIAGRAM:
+				return theMainDiagram != null;
+			case UMLRpyPackage.ICLASS__ATTRS:
+				return attrs != null && !attrs.isEmpty();
+			case UMLRpyPackage.ICLASS__TAGS:
+				return tags != null && !tags.isEmpty();
+			case UMLRpyPackage.ICLASS__ASSOCIATIONS:
+				return associations != null && !associations.isEmpty();
+			case UMLRpyPackage.ICLASS__DEPENDENCIES:
+				return dependencies != null && !dependencies.isEmpty();
+			case UMLRpyPackage.ICLASS__PORTS:
+				return ports != null && !ports.isEmpty();
+			case UMLRpyPackage.ICLASS__OBJECT_LINKS:
+				return objectLinks != null && !objectLinks.isEmpty();
+			case UMLRpyPackage.ICLASS__STATE_CHARTS:
+				return stateCharts != null && !stateCharts.isEmpty();
+			case UMLRpyPackage.ICLASS__ITS_STATE_CHART:
+				return itsStateChart != null;
+			case UMLRpyPackage.ICLASS__TRIGGERED_OPERATIONS:
+				return triggeredOperations != null && !triggeredOperations.isEmpty();
+			case UMLRpyPackage.ICLASS__RECEPTIONS:
+				return receptions != null && !receptions.isEmpty();
+			case UMLRpyPackage.ICLASS__PRIMITIVE_OPERATIONS:
+				return primitiveOperations != null && !primitiveOperations.isEmpty();
+			case UMLRpyPackage.ICLASS__ANNOTATIONS:
+				return annotations != null && !annotations.isEmpty();
+			case UMLRpyPackage.ICLASS__DESCRIPTION:
+				return description != null;
+			case UMLRpyPackage.ICLASS__DECLARATIVES:
+				return declaratives != null && !declaratives.isEmpty();
+			case UMLRpyPackage.ICLASS__ASSOCIATION_ELEMENTS:
+				return associationElements != null && !associationElements.isEmpty();
+			case UMLRpyPackage.ICLASS__OWNER_HANDLE:
+				return ownerHandle != null;
+			case UMLRpyPackage.ICLASS__HYPER_LINKS:
+				return hyperLinks != null && !hyperLinks.isEmpty();
+			case UMLRpyPackage.ICLASS__REQUIREMEN_TRACABILITY_HANDLE:
+				return REQUIREMEN_TRACABILITY_HANDLE_EDEFAULT == null ? requiremenTracabilityHandle != null : !REQUIREMEN_TRACABILITY_HANDLE_EDEFAULT.equals(requiremenTracabilityHandle);
+			case UMLRpyPackage.ICLASS__COMPONENT_FILES:
+				return componentFiles != null && !componentFiles.isEmpty();
+			case UMLRpyPackage.ICLASS__LINKS:
+				return links != null && !links.isEmpty();
+			case UMLRpyPackage.ICLASS__COMPONENTS:
+				return components != null && !components.isEmpty();
+			case UMLRpyPackage.ICLASS__EVENT_HANDLES:
+				return eventHandles != null;
+			case UMLRpyPackage.ICLASS__TEMPLATE_PARAMETERS:
+				return templateParameters != null && !templateParameters.isEmpty();
+			case UMLRpyPackage.ICLASS__CODE_UPDATE_CG_TIME:
+				return codeUpdateCGTime != null && !codeUpdateCGTime.isEmpty();
+			case UMLRpyPackage.ICLASS__CMHEADER:
+				return CMHEADER_EDEFAULT == null ? cmheader != null : !CMHEADER_EDEFAULT.equals(cmheader);
+		}
+		return super.eIsSet(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public int eBaseStructuralFeatureID(int derivedFeatureID, Class<?> baseClass) {
+		if (baseClass == DeclarativesType.class) {
+			switch (derivedFeatureID) {
+				default: return -1;
+			}
+		}
+		if (baseClass == M_pModelObjectType.class) {
+			switch (derivedFeatureID) {
+				default: return -1;
+			}
+		}
+		if (baseClass == M_pBaseType.class) {
+			switch (derivedFeatureID) {
+				default: return -1;
+			}
+		}
+		if (baseClass == ElementsType.class) {
+			switch (derivedFeatureID) {
+				default: return -1;
+			}
+		}
+		if (baseClass == DependsOnType.class) {
+			switch (derivedFeatureID) {
+				default: return -1;
+			}
+		}
+		if (baseClass == M_subjectType.class) {
+			switch (derivedFeatureID) {
+				case UMLRpyPackage.ICLASS__UML_DEPENDENCY_ID: return UMLRpyPackage.MSUBJECT_TYPE__UML_DEPENDENCY_ID;
+				case UMLRpyPackage.ICLASS__OBJECT_CREATION: return UMLRpyPackage.MSUBJECT_TYPE__OBJECT_CREATION;
+				default: return -1;
+			}
+		}
+		if (baseClass == ValueType.class) {
+			switch (derivedFeatureID) {
+				case UMLRpyPackage.ICLASS__MODIFIED_TIME_WEAK: return UMLRpyPackage.VALUE_TYPE__MODIFIED_TIME_WEAK;
+				case UMLRpyPackage.ICLASS__ID: return UMLRpyPackage.VALUE_TYPE__ID;
+				case UMLRpyPackage.ICLASS__MY_STATE: return UMLRpyPackage.VALUE_TYPE__MY_STATE;
+				case UMLRpyPackage.ICLASS__NAME: return UMLRpyPackage.VALUE_TYPE__NAME;
+				default: return -1;
+			}
+		}
+		if (baseClass == ConveyedType.class) {
+			switch (derivedFeatureID) {
+				case UMLRpyPackage.ICLASS__LAST_ID: return UMLRpyPackage.CONVEYED_TYPE__LAST_ID;
+				default: return -1;
+			}
+		}
+		if (baseClass == TargetType.class) {
+			switch (derivedFeatureID) {
+				default: return -1;
+			}
+		}
+		return super.eBaseStructuralFeatureID(derivedFeatureID, baseClass);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public int eDerivedStructuralFeatureID(int baseFeatureID, Class<?> baseClass) {
+		if (baseClass == DeclarativesType.class) {
+			switch (baseFeatureID) {
+				default: return -1;
+			}
+		}
+		if (baseClass == M_pModelObjectType.class) {
+			switch (baseFeatureID) {
+				default: return -1;
+			}
+		}
+		if (baseClass == M_pBaseType.class) {
+			switch (baseFeatureID) {
+				default: return -1;
+			}
+		}
+		if (baseClass == ElementsType.class) {
+			switch (baseFeatureID) {
+				default: return -1;
+			}
+		}
+		if (baseClass == DependsOnType.class) {
+			switch (baseFeatureID) {
+				default: return -1;
+			}
+		}
+		if (baseClass == M_subjectType.class) {
+			switch (baseFeatureID) {
+				case UMLRpyPackage.MSUBJECT_TYPE__UML_DEPENDENCY_ID: return UMLRpyPackage.ICLASS__UML_DEPENDENCY_ID;
+				case UMLRpyPackage.MSUBJECT_TYPE__OBJECT_CREATION: return UMLRpyPackage.ICLASS__OBJECT_CREATION;
+				default: return -1;
+			}
+		}
+		if (baseClass == ValueType.class) {
+			switch (baseFeatureID) {
+				case UMLRpyPackage.VALUE_TYPE__MODIFIED_TIME_WEAK: return UMLRpyPackage.ICLASS__MODIFIED_TIME_WEAK;
+				case UMLRpyPackage.VALUE_TYPE__ID: return UMLRpyPackage.ICLASS__ID;
+				case UMLRpyPackage.VALUE_TYPE__MY_STATE: return UMLRpyPackage.ICLASS__MY_STATE;
+				case UMLRpyPackage.VALUE_TYPE__NAME: return UMLRpyPackage.ICLASS__NAME;
+				default: return -1;
+			}
+		}
+		if (baseClass == ConveyedType.class) {
+			switch (baseFeatureID) {
+				case UMLRpyPackage.CONVEYED_TYPE__LAST_ID: return UMLRpyPackage.ICLASS__LAST_ID;
+				default: return -1;
+			}
+		}
+		if (baseClass == TargetType.class) {
+			switch (baseFeatureID) {
+				default: return -1;
+			}
+		}
+		return super.eDerivedStructuralFeatureID(baseFeatureID, baseClass);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String toString() {
+		if (eIsProxy()) return super.toString();
+
+		StringBuffer result = new StringBuffer(super.toString());
+		result.append(" (umlDependencyID: "); //$NON-NLS-1$
+		result.append(umlDependencyID);
+		result.append(", objectCreation: "); //$NON-NLS-1$
+		result.append(objectCreation);
+		result.append(", modifiedTimeWeak: "); //$NON-NLS-1$
+		result.append(modifiedTimeWeak);
+		result.append(", id: "); //$NON-NLS-1$
+		result.append(id);
+		result.append(", myState: "); //$NON-NLS-1$
+		result.append(myState);
+		result.append(", name: "); //$NON-NLS-1$
+		result.append(name);
+		result.append(", lastID: "); //$NON-NLS-1$
+		result.append(lastID);
+		result.append(", weakCGTime: "); //$NON-NLS-1$
+		result.append(weakCGTime);
+		result.append(", strongCGTime: "); //$NON-NLS-1$
+		result.append(strongCGTime);
+		result.append(", multiplicity: "); //$NON-NLS-1$
+		result.append(multiplicity);
+		result.append(", classModifier: "); //$NON-NLS-1$
+		result.append(classModifier);
+		result.append(", requiremenTracabilityHandle: "); //$NON-NLS-1$
+		result.append(requiremenTracabilityHandle);
+		result.append(", codeUpdateCGTime: "); //$NON-NLS-1$
+		result.append(codeUpdateCGTime);
+		result.append(", cmheader: "); //$NON-NLS-1$
+		result.append(cmheader);
+		result.append(')');
+		return result.toString();
+	}
+
+} //IClassImpl
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/IClassInstanceImpl.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/IClassInstanceImpl.java
new file mode 100755
index 0000000..1c164cd
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/IClassInstanceImpl.java
@@ -0,0 +1,142 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl;
+
+import java.util.Collection;
+
+import org.eclipse.emf.common.util.EList;
+
+import org.eclipse.emf.ecore.EClass;
+
+import org.eclipse.emf.ecore.util.EObjectResolvingEList;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IClassInstance;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UnknownType;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>IClass Instance</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * </p>
+ * <ul>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IClassInstanceImpl#getInverse <em>Inverse</em>}</li>
+ * </ul>
+ *
+ * @generated
+ */
+public class IClassInstanceImpl extends LinksTypeImpl implements IClassInstance {
+	/**
+	 * The cached value of the '{@link #getInverse() <em>Inverse</em>}' reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getInverse()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<UnknownType> inverse;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected IClassInstanceImpl() {
+		super();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EClass eStaticClass() {
+		return UMLRpyPackage.eINSTANCE.getIClassInstance();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<UnknownType> getInverse() {
+		if (inverse == null) {
+			inverse = new EObjectResolvingEList<UnknownType>(UnknownType.class, this, UMLRpyPackage.ICLASS_INSTANCE__INVERSE);
+		}
+		return inverse;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object eGet(int featureID, boolean resolve, boolean coreType) {
+		switch (featureID) {
+			case UMLRpyPackage.ICLASS_INSTANCE__INVERSE:
+				return getInverse();
+		}
+		return super.eGet(featureID, resolve, coreType);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@SuppressWarnings("unchecked")
+	@Override
+	public void eSet(int featureID, Object newValue) {
+		switch (featureID) {
+			case UMLRpyPackage.ICLASS_INSTANCE__INVERSE:
+				getInverse().clear();
+				getInverse().addAll((Collection<? extends UnknownType>)newValue);
+				return;
+		}
+		super.eSet(featureID, newValue);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void eUnset(int featureID) {
+		switch (featureID) {
+			case UMLRpyPackage.ICLASS_INSTANCE__INVERSE:
+				getInverse().clear();
+				return;
+		}
+		super.eUnset(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public boolean eIsSet(int featureID) {
+		switch (featureID) {
+			case UMLRpyPackage.ICLASS_INSTANCE__INVERSE:
+				return inverse != null && !inverse.isEmpty();
+		}
+		return super.eIsSet(featureID);
+	}
+
+} //IClassInstanceImpl
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/IClassifierImpl.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/IClassifierImpl.java
new file mode 100755
index 0000000..63eb427
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/IClassifierImpl.java
@@ -0,0 +1,47 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl;
+
+import org.eclipse.emf.ecore.EClass;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IClassifier;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>IClassifier</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+public class IClassifierImpl extends IUnitImpl implements IClassifier {
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected IClassifierImpl() {
+		super();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EClass eStaticClass() {
+		return UMLRpyPackage.eINSTANCE.getIClassifier();
+	}
+
+} //IClassifierImpl
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/IClassifierRoleImpl.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/IClassifierRoleImpl.java
new file mode 100755
index 0000000..fc352eb
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/IClassifierRoleImpl.java
@@ -0,0 +1,870 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl;
+
+import java.util.Collection;
+
+import org.eclipse.emf.common.notify.Notification;
+import org.eclipse.emf.common.notify.NotificationChain;
+
+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.EDataTypeEList;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.AssociationsType;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IClassifierRole;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMSC;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IPropertyContainer;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IStereotype;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.M_pBaseType;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>IClassifier Role</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * </p>
+ * <ul>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IClassifierRoleImpl#getId <em>Id</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IClassifierRoleImpl#getName <em>Name</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IClassifierRoleImpl#getM_eRoleType <em>MeRole Type</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IClassifierRoleImpl#getMyState <em>My State</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IClassifierRoleImpl#getM_pBase <em>MpBase</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IClassifierRoleImpl#getM_instance <em>Minstance</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IClassifierRoleImpl#getProperties <em>Properties</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IClassifierRoleImpl#getModifiedTimeWeak <em>Modified Time Weak</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IClassifierRoleImpl#getM_pRefSD <em>MpRef SD</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IClassifierRoleImpl#getCodeUpdateCGTime <em>Code Update CG Time</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IClassifierRoleImpl#getStereotypes <em>Stereotypes</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IClassifierRoleImpl#getObjectCreation <em>Object Creation</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IClassifierRoleImpl#getUmlDependencyID <em>Uml Dependency ID</em>}</li>
+ * </ul>
+ *
+ * @generated
+ */
+public class IClassifierRoleImpl extends IModelElementImpl implements IClassifierRole {
+	/**
+	 * The default value of the '{@link #getId() <em>Id</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getId()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String ID_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getId() <em>Id</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getId()
+	 * @generated
+	 * @ordered
+	 */
+	protected String id = ID_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getName() <em>Name</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getName()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String NAME_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getName() <em>Name</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getName()
+	 * @generated
+	 * @ordered
+	 */
+	protected String name = NAME_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getM_eRoleType() <em>MeRole Type</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_eRoleType()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String MEROLE_TYPE_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getM_eRoleType() <em>MeRole Type</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_eRoleType()
+	 * @generated
+	 * @ordered
+	 */
+	protected String m_eRoleType = MEROLE_TYPE_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getMyState() <em>My State</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getMyState()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String MY_STATE_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getMyState() <em>My State</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getMyState()
+	 * @generated
+	 * @ordered
+	 */
+	protected String myState = MY_STATE_EDEFAULT;
+
+	/**
+	 * The cached value of the '{@link #getM_pBase() <em>MpBase</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_pBase()
+	 * @generated
+	 * @ordered
+	 */
+	protected M_pBaseType m_pBase;
+
+	/**
+	 * The cached value of the '{@link #getM_instance() <em>Minstance</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_instance()
+	 * @generated
+	 * @ordered
+	 */
+	protected AssociationsType m_instance;
+
+	/**
+	 * The cached value of the '{@link #getProperties() <em>Properties</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getProperties()
+	 * @generated
+	 * @ordered
+	 */
+	protected IPropertyContainer properties;
+
+	/**
+	 * The cached value of the '{@link #getModifiedTimeWeak() <em>Modified Time Weak</em>}' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getModifiedTimeWeak()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<String> modifiedTimeWeak;
+
+	/**
+	 * The cached value of the '{@link #getM_pRefSD() <em>MpRef SD</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_pRefSD()
+	 * @generated
+	 * @ordered
+	 */
+	protected IMSC m_pRefSD;
+
+	/**
+	 * The cached value of the '{@link #getCodeUpdateCGTime() <em>Code Update CG Time</em>}' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getCodeUpdateCGTime()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<String> codeUpdateCGTime;
+
+	/**
+	 * The cached value of the '{@link #getStereotypes() <em>Stereotypes</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getStereotypes()
+	 * @generated
+	 * @ordered
+	 */
+	protected IStereotype stereotypes;
+
+	/**
+	 * The default value of the '{@link #getObjectCreation() <em>Object Creation</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getObjectCreation()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String OBJECT_CREATION_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getObjectCreation() <em>Object Creation</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getObjectCreation()
+	 * @generated
+	 * @ordered
+	 */
+	protected String objectCreation = OBJECT_CREATION_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getUmlDependencyID() <em>Uml Dependency ID</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getUmlDependencyID()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String UML_DEPENDENCY_ID_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getUmlDependencyID() <em>Uml Dependency ID</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getUmlDependencyID()
+	 * @generated
+	 * @ordered
+	 */
+	protected String umlDependencyID = UML_DEPENDENCY_ID_EDEFAULT;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected IClassifierRoleImpl() {
+		super();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EClass eStaticClass() {
+		return UMLRpyPackage.eINSTANCE.getIClassifierRole();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getId() {
+		return id;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setId(String newId) {
+		String oldId = id;
+		id = newId;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.ICLASSIFIER_ROLE__ID, oldId, id));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getName() {
+		return name;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setName(String newName) {
+		String oldName = name;
+		name = newName;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.ICLASSIFIER_ROLE__NAME, oldName, name));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getM_eRoleType() {
+		return m_eRoleType;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_eRoleType(String newM_eRoleType) {
+		String oldM_eRoleType = m_eRoleType;
+		m_eRoleType = newM_eRoleType;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.ICLASSIFIER_ROLE__MEROLE_TYPE, oldM_eRoleType, m_eRoleType));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getMyState() {
+		return myState;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setMyState(String newMyState) {
+		String oldMyState = myState;
+		myState = newMyState;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.ICLASSIFIER_ROLE__MY_STATE, oldMyState, myState));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public M_pBaseType getM_pBase() {
+		if (m_pBase != null && m_pBase.eIsProxy()) {
+			InternalEObject oldM_pBase = (InternalEObject)m_pBase;
+			m_pBase = (M_pBaseType)eResolveProxy(oldM_pBase);
+			if (m_pBase != oldM_pBase) {
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.ICLASSIFIER_ROLE__MPBASE, oldM_pBase, m_pBase));
+			}
+		}
+		return m_pBase;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public M_pBaseType basicGetM_pBase() {
+		return m_pBase;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_pBase(M_pBaseType newM_pBase) {
+		M_pBaseType oldM_pBase = m_pBase;
+		m_pBase = newM_pBase;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.ICLASSIFIER_ROLE__MPBASE, oldM_pBase, m_pBase));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public AssociationsType getM_instance() {
+		if (m_instance != null && m_instance.eIsProxy()) {
+			InternalEObject oldM_instance = (InternalEObject)m_instance;
+			m_instance = (AssociationsType)eResolveProxy(oldM_instance);
+			if (m_instance != oldM_instance) {
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.ICLASSIFIER_ROLE__MINSTANCE, oldM_instance, m_instance));
+			}
+		}
+		return m_instance;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public AssociationsType basicGetM_instance() {
+		return m_instance;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_instance(AssociationsType newM_instance) {
+		AssociationsType oldM_instance = m_instance;
+		m_instance = newM_instance;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.ICLASSIFIER_ROLE__MINSTANCE, oldM_instance, m_instance));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IPropertyContainer getProperties() {
+		if (properties != null && properties.eIsProxy()) {
+			InternalEObject oldProperties = (InternalEObject)properties;
+			properties = (IPropertyContainer)eResolveProxy(oldProperties);
+			if (properties != oldProperties) {
+				InternalEObject newProperties = (InternalEObject)properties;
+				NotificationChain msgs = oldProperties.eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.ICLASSIFIER_ROLE__PROPERTIES, null, null);
+				if (newProperties.eInternalContainer() == null) {
+					msgs = newProperties.eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.ICLASSIFIER_ROLE__PROPERTIES, null, msgs);
+				}
+				if (msgs != null) msgs.dispatch();
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.ICLASSIFIER_ROLE__PROPERTIES, oldProperties, properties));
+			}
+		}
+		return properties;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IPropertyContainer basicGetProperties() {
+		return properties;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public NotificationChain basicSetProperties(IPropertyContainer newProperties, NotificationChain msgs) {
+		IPropertyContainer oldProperties = properties;
+		properties = newProperties;
+		if (eNotificationRequired()) {
+			ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, UMLRpyPackage.ICLASSIFIER_ROLE__PROPERTIES, oldProperties, newProperties);
+			if (msgs == null) msgs = notification; else msgs.add(notification);
+		}
+		return msgs;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setProperties(IPropertyContainer newProperties) {
+		if (newProperties != properties) {
+			NotificationChain msgs = null;
+			if (properties != null)
+				msgs = ((InternalEObject)properties).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.ICLASSIFIER_ROLE__PROPERTIES, null, msgs);
+			if (newProperties != null)
+				msgs = ((InternalEObject)newProperties).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.ICLASSIFIER_ROLE__PROPERTIES, null, msgs);
+			msgs = basicSetProperties(newProperties, msgs);
+			if (msgs != null) msgs.dispatch();
+		}
+		else if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.ICLASSIFIER_ROLE__PROPERTIES, newProperties, newProperties));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<String> getModifiedTimeWeak() {
+		if (modifiedTimeWeak == null) {
+			modifiedTimeWeak = new EDataTypeEList<String>(String.class, this, UMLRpyPackage.ICLASSIFIER_ROLE__MODIFIED_TIME_WEAK);
+		}
+		return modifiedTimeWeak;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IMSC getM_pRefSD() {
+		if (m_pRefSD != null && m_pRefSD.eIsProxy()) {
+			InternalEObject oldM_pRefSD = (InternalEObject)m_pRefSD;
+			m_pRefSD = (IMSC)eResolveProxy(oldM_pRefSD);
+			if (m_pRefSD != oldM_pRefSD) {
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.ICLASSIFIER_ROLE__MPREF_SD, oldM_pRefSD, m_pRefSD));
+			}
+		}
+		return m_pRefSD;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IMSC basicGetM_pRefSD() {
+		return m_pRefSD;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_pRefSD(IMSC newM_pRefSD) {
+		IMSC oldM_pRefSD = m_pRefSD;
+		m_pRefSD = newM_pRefSD;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.ICLASSIFIER_ROLE__MPREF_SD, oldM_pRefSD, m_pRefSD));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<String> getCodeUpdateCGTime() {
+		if (codeUpdateCGTime == null) {
+			codeUpdateCGTime = new EDataTypeEList<String>(String.class, this, UMLRpyPackage.ICLASSIFIER_ROLE__CODE_UPDATE_CG_TIME);
+		}
+		return codeUpdateCGTime;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IStereotype getStereotypes() {
+		if (stereotypes != null && stereotypes.eIsProxy()) {
+			InternalEObject oldStereotypes = (InternalEObject)stereotypes;
+			stereotypes = (IStereotype)eResolveProxy(oldStereotypes);
+			if (stereotypes != oldStereotypes) {
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.ICLASSIFIER_ROLE__STEREOTYPES, oldStereotypes, stereotypes));
+			}
+		}
+		return stereotypes;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IStereotype basicGetStereotypes() {
+		return stereotypes;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setStereotypes(IStereotype newStereotypes) {
+		IStereotype oldStereotypes = stereotypes;
+		stereotypes = newStereotypes;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.ICLASSIFIER_ROLE__STEREOTYPES, oldStereotypes, stereotypes));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getObjectCreation() {
+		return objectCreation;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setObjectCreation(String newObjectCreation) {
+		String oldObjectCreation = objectCreation;
+		objectCreation = newObjectCreation;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.ICLASSIFIER_ROLE__OBJECT_CREATION, oldObjectCreation, objectCreation));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getUmlDependencyID() {
+		return umlDependencyID;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setUmlDependencyID(String newUmlDependencyID) {
+		String oldUmlDependencyID = umlDependencyID;
+		umlDependencyID = newUmlDependencyID;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.ICLASSIFIER_ROLE__UML_DEPENDENCY_ID, oldUmlDependencyID, umlDependencyID));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
+		switch (featureID) {
+			case UMLRpyPackage.ICLASSIFIER_ROLE__PROPERTIES:
+				return basicSetProperties(null, msgs);
+		}
+		return super.eInverseRemove(otherEnd, featureID, msgs);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object eGet(int featureID, boolean resolve, boolean coreType) {
+		switch (featureID) {
+			case UMLRpyPackage.ICLASSIFIER_ROLE__ID:
+				return getId();
+			case UMLRpyPackage.ICLASSIFIER_ROLE__NAME:
+				return getName();
+			case UMLRpyPackage.ICLASSIFIER_ROLE__MEROLE_TYPE:
+				return getM_eRoleType();
+			case UMLRpyPackage.ICLASSIFIER_ROLE__MY_STATE:
+				return getMyState();
+			case UMLRpyPackage.ICLASSIFIER_ROLE__MPBASE:
+				if (resolve) return getM_pBase();
+				return basicGetM_pBase();
+			case UMLRpyPackage.ICLASSIFIER_ROLE__MINSTANCE:
+				if (resolve) return getM_instance();
+				return basicGetM_instance();
+			case UMLRpyPackage.ICLASSIFIER_ROLE__PROPERTIES:
+				if (resolve) return getProperties();
+				return basicGetProperties();
+			case UMLRpyPackage.ICLASSIFIER_ROLE__MODIFIED_TIME_WEAK:
+				return getModifiedTimeWeak();
+			case UMLRpyPackage.ICLASSIFIER_ROLE__MPREF_SD:
+				if (resolve) return getM_pRefSD();
+				return basicGetM_pRefSD();
+			case UMLRpyPackage.ICLASSIFIER_ROLE__CODE_UPDATE_CG_TIME:
+				return getCodeUpdateCGTime();
+			case UMLRpyPackage.ICLASSIFIER_ROLE__STEREOTYPES:
+				if (resolve) return getStereotypes();
+				return basicGetStereotypes();
+			case UMLRpyPackage.ICLASSIFIER_ROLE__OBJECT_CREATION:
+				return getObjectCreation();
+			case UMLRpyPackage.ICLASSIFIER_ROLE__UML_DEPENDENCY_ID:
+				return getUmlDependencyID();
+		}
+		return super.eGet(featureID, resolve, coreType);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@SuppressWarnings("unchecked")
+	@Override
+	public void eSet(int featureID, Object newValue) {
+		switch (featureID) {
+			case UMLRpyPackage.ICLASSIFIER_ROLE__ID:
+				setId((String)newValue);
+				return;
+			case UMLRpyPackage.ICLASSIFIER_ROLE__NAME:
+				setName((String)newValue);
+				return;
+			case UMLRpyPackage.ICLASSIFIER_ROLE__MEROLE_TYPE:
+				setM_eRoleType((String)newValue);
+				return;
+			case UMLRpyPackage.ICLASSIFIER_ROLE__MY_STATE:
+				setMyState((String)newValue);
+				return;
+			case UMLRpyPackage.ICLASSIFIER_ROLE__MPBASE:
+				setM_pBase((M_pBaseType)newValue);
+				return;
+			case UMLRpyPackage.ICLASSIFIER_ROLE__MINSTANCE:
+				setM_instance((AssociationsType)newValue);
+				return;
+			case UMLRpyPackage.ICLASSIFIER_ROLE__PROPERTIES:
+				setProperties((IPropertyContainer)newValue);
+				return;
+			case UMLRpyPackage.ICLASSIFIER_ROLE__MODIFIED_TIME_WEAK:
+				getModifiedTimeWeak().clear();
+				getModifiedTimeWeak().addAll((Collection<? extends String>)newValue);
+				return;
+			case UMLRpyPackage.ICLASSIFIER_ROLE__MPREF_SD:
+				setM_pRefSD((IMSC)newValue);
+				return;
+			case UMLRpyPackage.ICLASSIFIER_ROLE__CODE_UPDATE_CG_TIME:
+				getCodeUpdateCGTime().clear();
+				getCodeUpdateCGTime().addAll((Collection<? extends String>)newValue);
+				return;
+			case UMLRpyPackage.ICLASSIFIER_ROLE__STEREOTYPES:
+				setStereotypes((IStereotype)newValue);
+				return;
+			case UMLRpyPackage.ICLASSIFIER_ROLE__OBJECT_CREATION:
+				setObjectCreation((String)newValue);
+				return;
+			case UMLRpyPackage.ICLASSIFIER_ROLE__UML_DEPENDENCY_ID:
+				setUmlDependencyID((String)newValue);
+				return;
+		}
+		super.eSet(featureID, newValue);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void eUnset(int featureID) {
+		switch (featureID) {
+			case UMLRpyPackage.ICLASSIFIER_ROLE__ID:
+				setId(ID_EDEFAULT);
+				return;
+			case UMLRpyPackage.ICLASSIFIER_ROLE__NAME:
+				setName(NAME_EDEFAULT);
+				return;
+			case UMLRpyPackage.ICLASSIFIER_ROLE__MEROLE_TYPE:
+				setM_eRoleType(MEROLE_TYPE_EDEFAULT);
+				return;
+			case UMLRpyPackage.ICLASSIFIER_ROLE__MY_STATE:
+				setMyState(MY_STATE_EDEFAULT);
+				return;
+			case UMLRpyPackage.ICLASSIFIER_ROLE__MPBASE:
+				setM_pBase((M_pBaseType)null);
+				return;
+			case UMLRpyPackage.ICLASSIFIER_ROLE__MINSTANCE:
+				setM_instance((AssociationsType)null);
+				return;
+			case UMLRpyPackage.ICLASSIFIER_ROLE__PROPERTIES:
+				setProperties((IPropertyContainer)null);
+				return;
+			case UMLRpyPackage.ICLASSIFIER_ROLE__MODIFIED_TIME_WEAK:
+				getModifiedTimeWeak().clear();
+				return;
+			case UMLRpyPackage.ICLASSIFIER_ROLE__MPREF_SD:
+				setM_pRefSD((IMSC)null);
+				return;
+			case UMLRpyPackage.ICLASSIFIER_ROLE__CODE_UPDATE_CG_TIME:
+				getCodeUpdateCGTime().clear();
+				return;
+			case UMLRpyPackage.ICLASSIFIER_ROLE__STEREOTYPES:
+				setStereotypes((IStereotype)null);
+				return;
+			case UMLRpyPackage.ICLASSIFIER_ROLE__OBJECT_CREATION:
+				setObjectCreation(OBJECT_CREATION_EDEFAULT);
+				return;
+			case UMLRpyPackage.ICLASSIFIER_ROLE__UML_DEPENDENCY_ID:
+				setUmlDependencyID(UML_DEPENDENCY_ID_EDEFAULT);
+				return;
+		}
+		super.eUnset(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public boolean eIsSet(int featureID) {
+		switch (featureID) {
+			case UMLRpyPackage.ICLASSIFIER_ROLE__ID:
+				return ID_EDEFAULT == null ? id != null : !ID_EDEFAULT.equals(id);
+			case UMLRpyPackage.ICLASSIFIER_ROLE__NAME:
+				return NAME_EDEFAULT == null ? name != null : !NAME_EDEFAULT.equals(name);
+			case UMLRpyPackage.ICLASSIFIER_ROLE__MEROLE_TYPE:
+				return MEROLE_TYPE_EDEFAULT == null ? m_eRoleType != null : !MEROLE_TYPE_EDEFAULT.equals(m_eRoleType);
+			case UMLRpyPackage.ICLASSIFIER_ROLE__MY_STATE:
+				return MY_STATE_EDEFAULT == null ? myState != null : !MY_STATE_EDEFAULT.equals(myState);
+			case UMLRpyPackage.ICLASSIFIER_ROLE__MPBASE:
+				return m_pBase != null;
+			case UMLRpyPackage.ICLASSIFIER_ROLE__MINSTANCE:
+				return m_instance != null;
+			case UMLRpyPackage.ICLASSIFIER_ROLE__PROPERTIES:
+				return properties != null;
+			case UMLRpyPackage.ICLASSIFIER_ROLE__MODIFIED_TIME_WEAK:
+				return modifiedTimeWeak != null && !modifiedTimeWeak.isEmpty();
+			case UMLRpyPackage.ICLASSIFIER_ROLE__MPREF_SD:
+				return m_pRefSD != null;
+			case UMLRpyPackage.ICLASSIFIER_ROLE__CODE_UPDATE_CG_TIME:
+				return codeUpdateCGTime != null && !codeUpdateCGTime.isEmpty();
+			case UMLRpyPackage.ICLASSIFIER_ROLE__STEREOTYPES:
+				return stereotypes != null;
+			case UMLRpyPackage.ICLASSIFIER_ROLE__OBJECT_CREATION:
+				return OBJECT_CREATION_EDEFAULT == null ? objectCreation != null : !OBJECT_CREATION_EDEFAULT.equals(objectCreation);
+			case UMLRpyPackage.ICLASSIFIER_ROLE__UML_DEPENDENCY_ID:
+				return UML_DEPENDENCY_ID_EDEFAULT == null ? umlDependencyID != null : !UML_DEPENDENCY_ID_EDEFAULT.equals(umlDependencyID);
+		}
+		return super.eIsSet(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String toString() {
+		if (eIsProxy()) return super.toString();
+
+		StringBuffer result = new StringBuffer(super.toString());
+		result.append(" (id: "); //$NON-NLS-1$
+		result.append(id);
+		result.append(", name: "); //$NON-NLS-1$
+		result.append(name);
+		result.append(", m_eRoleType: "); //$NON-NLS-1$
+		result.append(m_eRoleType);
+		result.append(", myState: "); //$NON-NLS-1$
+		result.append(myState);
+		result.append(", modifiedTimeWeak: "); //$NON-NLS-1$
+		result.append(modifiedTimeWeak);
+		result.append(", codeUpdateCGTime: "); //$NON-NLS-1$
+		result.append(codeUpdateCGTime);
+		result.append(", objectCreation: "); //$NON-NLS-1$
+		result.append(objectCreation);
+		result.append(", umlDependencyID: "); //$NON-NLS-1$
+		result.append(umlDependencyID);
+		result.append(')');
+		return result.toString();
+	}
+
+} //IClassifierRoleImpl
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/ICodeGenConfigInfoHandleImpl.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/ICodeGenConfigInfoHandleImpl.java
new file mode 100755
index 0000000..1cd0fa1
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/ICodeGenConfigInfoHandleImpl.java
@@ -0,0 +1,227 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl;
+
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.ecore.EClass;
+
+import org.eclipse.emf.ecore.impl.ENotificationImpl;
+import org.eclipse.emf.ecore.impl.MinimalEObjectImpl;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ICodeGenConfigInfoHandle;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>ICode Gen Config Info Handle</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * </p>
+ * <ul>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.ICodeGenConfigInfoHandleImpl#getM2Class <em>M2 Class</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.ICodeGenConfigInfoHandleImpl#getId <em>Id</em>}</li>
+ * </ul>
+ *
+ * @generated
+ */
+public class ICodeGenConfigInfoHandleImpl extends MinimalEObjectImpl.Container implements ICodeGenConfigInfoHandle {
+	/**
+	 * The default value of the '{@link #getM2Class() <em>M2 Class</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM2Class()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String M2_CLASS_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getM2Class() <em>M2 Class</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM2Class()
+	 * @generated
+	 * @ordered
+	 */
+	protected String m2Class = M2_CLASS_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getId() <em>Id</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getId()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String ID_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getId() <em>Id</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getId()
+	 * @generated
+	 * @ordered
+	 */
+	protected String id = ID_EDEFAULT;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected ICodeGenConfigInfoHandleImpl() {
+		super();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EClass eStaticClass() {
+		return UMLRpyPackage.eINSTANCE.getICodeGenConfigInfoHandle();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getM2Class() {
+		return m2Class;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM2Class(String newM2Class) {
+		String oldM2Class = m2Class;
+		m2Class = newM2Class;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.ICODE_GEN_CONFIG_INFO_HANDLE__M2_CLASS, oldM2Class, m2Class));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getId() {
+		return id;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setId(String newId) {
+		String oldId = id;
+		id = newId;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.ICODE_GEN_CONFIG_INFO_HANDLE__ID, oldId, id));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object eGet(int featureID, boolean resolve, boolean coreType) {
+		switch (featureID) {
+			case UMLRpyPackage.ICODE_GEN_CONFIG_INFO_HANDLE__M2_CLASS:
+				return getM2Class();
+			case UMLRpyPackage.ICODE_GEN_CONFIG_INFO_HANDLE__ID:
+				return getId();
+		}
+		return super.eGet(featureID, resolve, coreType);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void eSet(int featureID, Object newValue) {
+		switch (featureID) {
+			case UMLRpyPackage.ICODE_GEN_CONFIG_INFO_HANDLE__M2_CLASS:
+				setM2Class((String)newValue);
+				return;
+			case UMLRpyPackage.ICODE_GEN_CONFIG_INFO_HANDLE__ID:
+				setId((String)newValue);
+				return;
+		}
+		super.eSet(featureID, newValue);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void eUnset(int featureID) {
+		switch (featureID) {
+			case UMLRpyPackage.ICODE_GEN_CONFIG_INFO_HANDLE__M2_CLASS:
+				setM2Class(M2_CLASS_EDEFAULT);
+				return;
+			case UMLRpyPackage.ICODE_GEN_CONFIG_INFO_HANDLE__ID:
+				setId(ID_EDEFAULT);
+				return;
+		}
+		super.eUnset(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public boolean eIsSet(int featureID) {
+		switch (featureID) {
+			case UMLRpyPackage.ICODE_GEN_CONFIG_INFO_HANDLE__M2_CLASS:
+				return M2_CLASS_EDEFAULT == null ? m2Class != null : !M2_CLASS_EDEFAULT.equals(m2Class);
+			case UMLRpyPackage.ICODE_GEN_CONFIG_INFO_HANDLE__ID:
+				return ID_EDEFAULT == null ? id != null : !ID_EDEFAULT.equals(id);
+		}
+		return super.eIsSet(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String toString() {
+		if (eIsProxy()) return super.toString();
+
+		StringBuffer result = new StringBuffer(super.toString());
+		result.append(" (m2Class: "); //$NON-NLS-1$
+		result.append(m2Class);
+		result.append(", id: "); //$NON-NLS-1$
+		result.append(id);
+		result.append(')');
+		return result.toString();
+	}
+
+} //ICodeGenConfigInfoHandleImpl
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/ICodeGenConfigInfoImpl.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/ICodeGenConfigInfoImpl.java
new file mode 100755
index 0000000..e9ac528
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/ICodeGenConfigInfoImpl.java
@@ -0,0 +1,2216 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl;
+
+import java.util.Collection;
+
+import org.eclipse.emf.common.notify.Notification;
+import org.eclipse.emf.common.notify.NotificationChain;
+
+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.EDataTypeEList;
+import org.eclipse.emf.ecore.util.EObjectContainmentEList;
+import org.eclipse.emf.ecore.util.EObjectResolvingEList;
+import org.eclipse.emf.ecore.util.InternalEList;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ElementsType;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IClassifier;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ICodeGenConfigInfo;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IComment;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IDependency;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IDescription;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IEmbededFile;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IFolder;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMHyperLink;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IPropertyContainer;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITag;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IUnit;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UnknownType;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>ICode Gen Config Info</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * </p>
+ * <ul>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.ICodeGenConfigInfoImpl#getId <em>Id</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.ICodeGenConfigInfoImpl#getMyState <em>My State</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.ICodeGenConfigInfoImpl#getName <em>Name</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.ICodeGenConfigInfoImpl#getModifiedTimeWeak <em>Modified Time Weak</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.ICodeGenConfigInfoImpl#getHyperLinks <em>Hyper Links</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.ICodeGenConfigInfoImpl#getScopeType <em>Scope Type</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.ICodeGenConfigInfoImpl#getLibraries <em>Libraries</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.ICodeGenConfigInfoImpl#getAdditionalSources <em>Additional Sources</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.ICodeGenConfigInfoImpl#getStandardHeaders <em>Standard Headers</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.ICodeGenConfigInfoImpl#getIncludePath <em>Include Path</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.ICodeGenConfigInfoImpl#getTargetMain <em>Target Main</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.ICodeGenConfigInfoImpl#getInstrumentation <em>Instrumentation</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.ICodeGenConfigInfoImpl#getTimeModel <em>Time Model</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.ICodeGenConfigInfoImpl#getM_generateActors <em>Mgenerate Actors</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.ICodeGenConfigInfoImpl#getStatechartImplementation <em>Statechart Implementation</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.ICodeGenConfigInfoImpl#getInitializationCode <em>Initialization Code</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.ICodeGenConfigInfoImpl#getChecksList <em>Checks List</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.ICodeGenConfigInfoImpl#getScopeElements <em>Scope Elements</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.ICodeGenConfigInfoImpl#getRoot <em>Root</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.ICodeGenConfigInfoImpl#getWeakCGTime <em>Weak CG Time</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.ICodeGenConfigInfoImpl#getStrongCGTime <em>Strong CG Time</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.ICodeGenConfigInfoImpl#getM_allInAnimScope <em>Mall In Anim Scope</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.ICodeGenConfigInfoImpl#getM_generateUsecases <em>Mgenerate Usecases</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.ICodeGenConfigInfoImpl#getDependencies <em>Dependencies</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.ICodeGenConfigInfoImpl#getInitialInstances <em>Initial Instances</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.ICodeGenConfigInfoImpl#getProperties <em>Properties</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.ICodeGenConfigInfoImpl#getAnnotations <em>Annotations</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.ICodeGenConfigInfoImpl#getLastID <em>Last ID</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.ICodeGenConfigInfoImpl#getDescription <em>Description</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.ICodeGenConfigInfoImpl#getTags <em>Tags</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.ICodeGenConfigInfoImpl#getCmheader <em>Cmheader</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.ICodeGenConfigInfoImpl#getRequiremenTracabilityHandle <em>Requiremen Tracability Handle</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.ICodeGenConfigInfoImpl#getStereotypes <em>Stereotypes</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.ICodeGenConfigInfoImpl#getCodeUpdateCGTime <em>Code Update CG Time</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.ICodeGenConfigInfoImpl#getAnimScopeElements <em>Anim Scope Elements</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.ICodeGenConfigInfoImpl#getEmbededFiles <em>Embeded Files</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.ICodeGenConfigInfoImpl#getObjectCreation <em>Object Creation</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.ICodeGenConfigInfoImpl#getUmlDependencyID <em>Uml Dependency ID</em>}</li>
+ * </ul>
+ *
+ * @generated
+ */
+public class ICodeGenConfigInfoImpl extends DependsOnTypeImpl implements ICodeGenConfigInfo {
+	/**
+	 * The default value of the '{@link #getId() <em>Id</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getId()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String ID_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getId() <em>Id</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getId()
+	 * @generated
+	 * @ordered
+	 */
+	protected String id = ID_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getMyState() <em>My State</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getMyState()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String MY_STATE_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getMyState() <em>My State</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getMyState()
+	 * @generated
+	 * @ordered
+	 */
+	protected String myState = MY_STATE_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getName() <em>Name</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getName()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String NAME_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getName() <em>Name</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getName()
+	 * @generated
+	 * @ordered
+	 */
+	protected String name = NAME_EDEFAULT;
+
+	/**
+	 * The cached value of the '{@link #getModifiedTimeWeak() <em>Modified Time Weak</em>}' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getModifiedTimeWeak()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<String> modifiedTimeWeak;
+
+	/**
+	 * The cached value of the '{@link #getHyperLinks() <em>Hyper Links</em>}' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getHyperLinks()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<IMHyperLink> hyperLinks;
+
+	/**
+	 * The default value of the '{@link #getScopeType() <em>Scope Type</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getScopeType()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String SCOPE_TYPE_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getScopeType() <em>Scope Type</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getScopeType()
+	 * @generated
+	 * @ordered
+	 */
+	protected String scopeType = SCOPE_TYPE_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getLibraries() <em>Libraries</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getLibraries()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String LIBRARIES_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getLibraries() <em>Libraries</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getLibraries()
+	 * @generated
+	 * @ordered
+	 */
+	protected String libraries = LIBRARIES_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getAdditionalSources() <em>Additional Sources</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getAdditionalSources()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String ADDITIONAL_SOURCES_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getAdditionalSources() <em>Additional Sources</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getAdditionalSources()
+	 * @generated
+	 * @ordered
+	 */
+	protected String additionalSources = ADDITIONAL_SOURCES_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getStandardHeaders() <em>Standard Headers</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getStandardHeaders()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String STANDARD_HEADERS_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getStandardHeaders() <em>Standard Headers</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getStandardHeaders()
+	 * @generated
+	 * @ordered
+	 */
+	protected String standardHeaders = STANDARD_HEADERS_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getIncludePath() <em>Include Path</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getIncludePath()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String INCLUDE_PATH_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getIncludePath() <em>Include Path</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getIncludePath()
+	 * @generated
+	 * @ordered
+	 */
+	protected String includePath = INCLUDE_PATH_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getTargetMain() <em>Target Main</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getTargetMain()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String TARGET_MAIN_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getTargetMain() <em>Target Main</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getTargetMain()
+	 * @generated
+	 * @ordered
+	 */
+	protected String targetMain = TARGET_MAIN_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getInstrumentation() <em>Instrumentation</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getInstrumentation()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String INSTRUMENTATION_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getInstrumentation() <em>Instrumentation</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getInstrumentation()
+	 * @generated
+	 * @ordered
+	 */
+	protected String instrumentation = INSTRUMENTATION_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getTimeModel() <em>Time Model</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getTimeModel()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String TIME_MODEL_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getTimeModel() <em>Time Model</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getTimeModel()
+	 * @generated
+	 * @ordered
+	 */
+	protected String timeModel = TIME_MODEL_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getM_generateActors() <em>Mgenerate Actors</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_generateActors()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String MGENERATE_ACTORS_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getM_generateActors() <em>Mgenerate Actors</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_generateActors()
+	 * @generated
+	 * @ordered
+	 */
+	protected String m_generateActors = MGENERATE_ACTORS_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getStatechartImplementation() <em>Statechart Implementation</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getStatechartImplementation()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String STATECHART_IMPLEMENTATION_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getStatechartImplementation() <em>Statechart Implementation</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getStatechartImplementation()
+	 * @generated
+	 * @ordered
+	 */
+	protected String statechartImplementation = STATECHART_IMPLEMENTATION_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getInitializationCode() <em>Initialization Code</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getInitializationCode()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String INITIALIZATION_CODE_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getInitializationCode() <em>Initialization Code</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getInitializationCode()
+	 * @generated
+	 * @ordered
+	 */
+	protected String initializationCode = INITIALIZATION_CODE_EDEFAULT;
+
+	/**
+	 * The cached value of the '{@link #getChecksList() <em>Checks List</em>}' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getChecksList()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<String> checksList;
+
+	/**
+	 * The cached value of the '{@link #getScopeElements() <em>Scope Elements</em>}' reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getScopeElements()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<UnknownType> scopeElements;
+
+	/**
+	 * The cached value of the '{@link #getRoot() <em>Root</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getRoot()
+	 * @generated
+	 * @ordered
+	 */
+	protected IFolder root;
+
+	/**
+	 * The cached value of the '{@link #getWeakCGTime() <em>Weak CG Time</em>}' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getWeakCGTime()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<String> weakCGTime;
+
+	/**
+	 * The cached value of the '{@link #getStrongCGTime() <em>Strong CG Time</em>}' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getStrongCGTime()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<String> strongCGTime;
+
+	/**
+	 * The default value of the '{@link #getM_allInAnimScope() <em>Mall In Anim Scope</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_allInAnimScope()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String MALL_IN_ANIM_SCOPE_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getM_allInAnimScope() <em>Mall In Anim Scope</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_allInAnimScope()
+	 * @generated
+	 * @ordered
+	 */
+	protected String m_allInAnimScope = MALL_IN_ANIM_SCOPE_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getM_generateUsecases() <em>Mgenerate Usecases</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_generateUsecases()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String MGENERATE_USECASES_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getM_generateUsecases() <em>Mgenerate Usecases</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_generateUsecases()
+	 * @generated
+	 * @ordered
+	 */
+	protected String m_generateUsecases = MGENERATE_USECASES_EDEFAULT;
+
+	/**
+	 * The cached value of the '{@link #getDependencies() <em>Dependencies</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getDependencies()
+	 * @generated
+	 * @ordered
+	 */
+	protected IDependency dependencies;
+
+	/**
+	 * The cached value of the '{@link #getInitialInstances() <em>Initial Instances</em>}' reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getInitialInstances()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<IUnit> initialInstances;
+
+	/**
+	 * The cached value of the '{@link #getProperties() <em>Properties</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getProperties()
+	 * @generated
+	 * @ordered
+	 */
+	protected IPropertyContainer properties;
+
+	/**
+	 * The cached value of the '{@link #getAnnotations() <em>Annotations</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getAnnotations()
+	 * @generated
+	 * @ordered
+	 */
+	protected IComment annotations;
+
+	/**
+	 * The default value of the '{@link #getLastID() <em>Last ID</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getLastID()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String LAST_ID_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getLastID() <em>Last ID</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getLastID()
+	 * @generated
+	 * @ordered
+	 */
+	protected String lastID = LAST_ID_EDEFAULT;
+
+	/**
+	 * The cached value of the '{@link #getDescription() <em>Description</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getDescription()
+	 * @generated
+	 * @ordered
+	 */
+	protected IDescription description;
+
+	/**
+	 * The cached value of the '{@link #getTags() <em>Tags</em>}' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getTags()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<ITag> tags;
+
+	/**
+	 * The default value of the '{@link #getCmheader() <em>Cmheader</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getCmheader()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String CMHEADER_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getCmheader() <em>Cmheader</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getCmheader()
+	 * @generated
+	 * @ordered
+	 */
+	protected String cmheader = CMHEADER_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getRequiremenTracabilityHandle() <em>Requiremen Tracability Handle</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getRequiremenTracabilityHandle()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String REQUIREMEN_TRACABILITY_HANDLE_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getRequiremenTracabilityHandle() <em>Requiremen Tracability Handle</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getRequiremenTracabilityHandle()
+	 * @generated
+	 * @ordered
+	 */
+	protected String requiremenTracabilityHandle = REQUIREMEN_TRACABILITY_HANDLE_EDEFAULT;
+
+	/**
+	 * The cached value of the '{@link #getStereotypes() <em>Stereotypes</em>}' reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getStereotypes()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<IClassifier> stereotypes;
+
+	/**
+	 * The cached value of the '{@link #getCodeUpdateCGTime() <em>Code Update CG Time</em>}' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getCodeUpdateCGTime()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<String> codeUpdateCGTime;
+
+	/**
+	 * The cached value of the '{@link #getAnimScopeElements() <em>Anim Scope Elements</em>}' reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getAnimScopeElements()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<ElementsType> animScopeElements;
+
+	/**
+	 * The cached value of the '{@link #getEmbededFiles() <em>Embeded Files</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getEmbededFiles()
+	 * @generated
+	 * @ordered
+	 */
+	protected IEmbededFile embededFiles;
+
+	/**
+	 * The default value of the '{@link #getObjectCreation() <em>Object Creation</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getObjectCreation()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String OBJECT_CREATION_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getObjectCreation() <em>Object Creation</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getObjectCreation()
+	 * @generated
+	 * @ordered
+	 */
+	protected String objectCreation = OBJECT_CREATION_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getUmlDependencyID() <em>Uml Dependency ID</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getUmlDependencyID()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String UML_DEPENDENCY_ID_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getUmlDependencyID() <em>Uml Dependency ID</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getUmlDependencyID()
+	 * @generated
+	 * @ordered
+	 */
+	protected String umlDependencyID = UML_DEPENDENCY_ID_EDEFAULT;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected ICodeGenConfigInfoImpl() {
+		super();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EClass eStaticClass() {
+		return UMLRpyPackage.eINSTANCE.getICodeGenConfigInfo();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getId() {
+		return id;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setId(String newId) {
+		String oldId = id;
+		id = newId;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.ICODE_GEN_CONFIG_INFO__ID, oldId, id));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getMyState() {
+		return myState;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setMyState(String newMyState) {
+		String oldMyState = myState;
+		myState = newMyState;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.ICODE_GEN_CONFIG_INFO__MY_STATE, oldMyState, myState));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getName() {
+		return name;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setName(String newName) {
+		String oldName = name;
+		name = newName;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.ICODE_GEN_CONFIG_INFO__NAME, oldName, name));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<String> getModifiedTimeWeak() {
+		if (modifiedTimeWeak == null) {
+			modifiedTimeWeak = new EDataTypeEList<String>(String.class, this, UMLRpyPackage.ICODE_GEN_CONFIG_INFO__MODIFIED_TIME_WEAK);
+		}
+		return modifiedTimeWeak;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<IMHyperLink> getHyperLinks() {
+		if (hyperLinks == null) {
+			hyperLinks = new EObjectContainmentEList.Resolving<IMHyperLink>(IMHyperLink.class, this, UMLRpyPackage.ICODE_GEN_CONFIG_INFO__HYPER_LINKS);
+		}
+		return hyperLinks;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getScopeType() {
+		return scopeType;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setScopeType(String newScopeType) {
+		String oldScopeType = scopeType;
+		scopeType = newScopeType;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.ICODE_GEN_CONFIG_INFO__SCOPE_TYPE, oldScopeType, scopeType));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getLibraries() {
+		return libraries;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setLibraries(String newLibraries) {
+		String oldLibraries = libraries;
+		libraries = newLibraries;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.ICODE_GEN_CONFIG_INFO__LIBRARIES, oldLibraries, libraries));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getAdditionalSources() {
+		return additionalSources;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setAdditionalSources(String newAdditionalSources) {
+		String oldAdditionalSources = additionalSources;
+		additionalSources = newAdditionalSources;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.ICODE_GEN_CONFIG_INFO__ADDITIONAL_SOURCES, oldAdditionalSources, additionalSources));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getStandardHeaders() {
+		return standardHeaders;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setStandardHeaders(String newStandardHeaders) {
+		String oldStandardHeaders = standardHeaders;
+		standardHeaders = newStandardHeaders;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.ICODE_GEN_CONFIG_INFO__STANDARD_HEADERS, oldStandardHeaders, standardHeaders));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getIncludePath() {
+		return includePath;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setIncludePath(String newIncludePath) {
+		String oldIncludePath = includePath;
+		includePath = newIncludePath;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.ICODE_GEN_CONFIG_INFO__INCLUDE_PATH, oldIncludePath, includePath));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getTargetMain() {
+		return targetMain;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setTargetMain(String newTargetMain) {
+		String oldTargetMain = targetMain;
+		targetMain = newTargetMain;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.ICODE_GEN_CONFIG_INFO__TARGET_MAIN, oldTargetMain, targetMain));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getInstrumentation() {
+		return instrumentation;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setInstrumentation(String newInstrumentation) {
+		String oldInstrumentation = instrumentation;
+		instrumentation = newInstrumentation;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.ICODE_GEN_CONFIG_INFO__INSTRUMENTATION, oldInstrumentation, instrumentation));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getTimeModel() {
+		return timeModel;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setTimeModel(String newTimeModel) {
+		String oldTimeModel = timeModel;
+		timeModel = newTimeModel;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.ICODE_GEN_CONFIG_INFO__TIME_MODEL, oldTimeModel, timeModel));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getM_generateActors() {
+		return m_generateActors;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_generateActors(String newM_generateActors) {
+		String oldM_generateActors = m_generateActors;
+		m_generateActors = newM_generateActors;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.ICODE_GEN_CONFIG_INFO__MGENERATE_ACTORS, oldM_generateActors, m_generateActors));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getStatechartImplementation() {
+		return statechartImplementation;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setStatechartImplementation(String newStatechartImplementation) {
+		String oldStatechartImplementation = statechartImplementation;
+		statechartImplementation = newStatechartImplementation;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.ICODE_GEN_CONFIG_INFO__STATECHART_IMPLEMENTATION, oldStatechartImplementation, statechartImplementation));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getInitializationCode() {
+		return initializationCode;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setInitializationCode(String newInitializationCode) {
+		String oldInitializationCode = initializationCode;
+		initializationCode = newInitializationCode;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.ICODE_GEN_CONFIG_INFO__INITIALIZATION_CODE, oldInitializationCode, initializationCode));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<String> getChecksList() {
+		if (checksList == null) {
+			checksList = new EDataTypeEList<String>(String.class, this, UMLRpyPackage.ICODE_GEN_CONFIG_INFO__CHECKS_LIST);
+		}
+		return checksList;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<UnknownType> getScopeElements() {
+		if (scopeElements == null) {
+			scopeElements = new EObjectResolvingEList<UnknownType>(UnknownType.class, this, UMLRpyPackage.ICODE_GEN_CONFIG_INFO__SCOPE_ELEMENTS);
+		}
+		return scopeElements;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IFolder getRoot() {
+		if (root != null && root.eIsProxy()) {
+			InternalEObject oldRoot = (InternalEObject)root;
+			root = (IFolder)eResolveProxy(oldRoot);
+			if (root != oldRoot) {
+				InternalEObject newRoot = (InternalEObject)root;
+				NotificationChain msgs = oldRoot.eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.ICODE_GEN_CONFIG_INFO__ROOT, null, null);
+				if (newRoot.eInternalContainer() == null) {
+					msgs = newRoot.eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.ICODE_GEN_CONFIG_INFO__ROOT, null, msgs);
+				}
+				if (msgs != null) msgs.dispatch();
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.ICODE_GEN_CONFIG_INFO__ROOT, oldRoot, root));
+			}
+		}
+		return root;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IFolder basicGetRoot() {
+		return root;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public NotificationChain basicSetRoot(IFolder newRoot, NotificationChain msgs) {
+		IFolder oldRoot = root;
+		root = newRoot;
+		if (eNotificationRequired()) {
+			ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, UMLRpyPackage.ICODE_GEN_CONFIG_INFO__ROOT, oldRoot, newRoot);
+			if (msgs == null) msgs = notification; else msgs.add(notification);
+		}
+		return msgs;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setRoot(IFolder newRoot) {
+		if (newRoot != root) {
+			NotificationChain msgs = null;
+			if (root != null)
+				msgs = ((InternalEObject)root).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.ICODE_GEN_CONFIG_INFO__ROOT, null, msgs);
+			if (newRoot != null)
+				msgs = ((InternalEObject)newRoot).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.ICODE_GEN_CONFIG_INFO__ROOT, null, msgs);
+			msgs = basicSetRoot(newRoot, msgs);
+			if (msgs != null) msgs.dispatch();
+		}
+		else if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.ICODE_GEN_CONFIG_INFO__ROOT, newRoot, newRoot));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<String> getWeakCGTime() {
+		if (weakCGTime == null) {
+			weakCGTime = new EDataTypeEList<String>(String.class, this, UMLRpyPackage.ICODE_GEN_CONFIG_INFO__WEAK_CG_TIME);
+		}
+		return weakCGTime;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<String> getStrongCGTime() {
+		if (strongCGTime == null) {
+			strongCGTime = new EDataTypeEList<String>(String.class, this, UMLRpyPackage.ICODE_GEN_CONFIG_INFO__STRONG_CG_TIME);
+		}
+		return strongCGTime;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getM_allInAnimScope() {
+		return m_allInAnimScope;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_allInAnimScope(String newM_allInAnimScope) {
+		String oldM_allInAnimScope = m_allInAnimScope;
+		m_allInAnimScope = newM_allInAnimScope;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.ICODE_GEN_CONFIG_INFO__MALL_IN_ANIM_SCOPE, oldM_allInAnimScope, m_allInAnimScope));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getM_generateUsecases() {
+		return m_generateUsecases;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_generateUsecases(String newM_generateUsecases) {
+		String oldM_generateUsecases = m_generateUsecases;
+		m_generateUsecases = newM_generateUsecases;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.ICODE_GEN_CONFIG_INFO__MGENERATE_USECASES, oldM_generateUsecases, m_generateUsecases));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IDependency getDependencies() {
+		if (dependencies != null && dependencies.eIsProxy()) {
+			InternalEObject oldDependencies = (InternalEObject)dependencies;
+			dependencies = (IDependency)eResolveProxy(oldDependencies);
+			if (dependencies != oldDependencies) {
+				InternalEObject newDependencies = (InternalEObject)dependencies;
+				NotificationChain msgs = oldDependencies.eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.ICODE_GEN_CONFIG_INFO__DEPENDENCIES, null, null);
+				if (newDependencies.eInternalContainer() == null) {
+					msgs = newDependencies.eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.ICODE_GEN_CONFIG_INFO__DEPENDENCIES, null, msgs);
+				}
+				if (msgs != null) msgs.dispatch();
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.ICODE_GEN_CONFIG_INFO__DEPENDENCIES, oldDependencies, dependencies));
+			}
+		}
+		return dependencies;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IDependency basicGetDependencies() {
+		return dependencies;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public NotificationChain basicSetDependencies(IDependency newDependencies, NotificationChain msgs) {
+		IDependency oldDependencies = dependencies;
+		dependencies = newDependencies;
+		if (eNotificationRequired()) {
+			ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, UMLRpyPackage.ICODE_GEN_CONFIG_INFO__DEPENDENCIES, oldDependencies, newDependencies);
+			if (msgs == null) msgs = notification; else msgs.add(notification);
+		}
+		return msgs;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setDependencies(IDependency newDependencies) {
+		if (newDependencies != dependencies) {
+			NotificationChain msgs = null;
+			if (dependencies != null)
+				msgs = ((InternalEObject)dependencies).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.ICODE_GEN_CONFIG_INFO__DEPENDENCIES, null, msgs);
+			if (newDependencies != null)
+				msgs = ((InternalEObject)newDependencies).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.ICODE_GEN_CONFIG_INFO__DEPENDENCIES, null, msgs);
+			msgs = basicSetDependencies(newDependencies, msgs);
+			if (msgs != null) msgs.dispatch();
+		}
+		else if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.ICODE_GEN_CONFIG_INFO__DEPENDENCIES, newDependencies, newDependencies));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<IUnit> getInitialInstances() {
+		if (initialInstances == null) {
+			initialInstances = new EObjectResolvingEList<IUnit>(IUnit.class, this, UMLRpyPackage.ICODE_GEN_CONFIG_INFO__INITIAL_INSTANCES);
+		}
+		return initialInstances;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IPropertyContainer getProperties() {
+		if (properties != null && properties.eIsProxy()) {
+			InternalEObject oldProperties = (InternalEObject)properties;
+			properties = (IPropertyContainer)eResolveProxy(oldProperties);
+			if (properties != oldProperties) {
+				InternalEObject newProperties = (InternalEObject)properties;
+				NotificationChain msgs = oldProperties.eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.ICODE_GEN_CONFIG_INFO__PROPERTIES, null, null);
+				if (newProperties.eInternalContainer() == null) {
+					msgs = newProperties.eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.ICODE_GEN_CONFIG_INFO__PROPERTIES, null, msgs);
+				}
+				if (msgs != null) msgs.dispatch();
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.ICODE_GEN_CONFIG_INFO__PROPERTIES, oldProperties, properties));
+			}
+		}
+		return properties;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IPropertyContainer basicGetProperties() {
+		return properties;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public NotificationChain basicSetProperties(IPropertyContainer newProperties, NotificationChain msgs) {
+		IPropertyContainer oldProperties = properties;
+		properties = newProperties;
+		if (eNotificationRequired()) {
+			ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, UMLRpyPackage.ICODE_GEN_CONFIG_INFO__PROPERTIES, oldProperties, newProperties);
+			if (msgs == null) msgs = notification; else msgs.add(notification);
+		}
+		return msgs;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setProperties(IPropertyContainer newProperties) {
+		if (newProperties != properties) {
+			NotificationChain msgs = null;
+			if (properties != null)
+				msgs = ((InternalEObject)properties).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.ICODE_GEN_CONFIG_INFO__PROPERTIES, null, msgs);
+			if (newProperties != null)
+				msgs = ((InternalEObject)newProperties).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.ICODE_GEN_CONFIG_INFO__PROPERTIES, null, msgs);
+			msgs = basicSetProperties(newProperties, msgs);
+			if (msgs != null) msgs.dispatch();
+		}
+		else if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.ICODE_GEN_CONFIG_INFO__PROPERTIES, newProperties, newProperties));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IComment getAnnotations() {
+		if (annotations != null && annotations.eIsProxy()) {
+			InternalEObject oldAnnotations = (InternalEObject)annotations;
+			annotations = (IComment)eResolveProxy(oldAnnotations);
+			if (annotations != oldAnnotations) {
+				InternalEObject newAnnotations = (InternalEObject)annotations;
+				NotificationChain msgs = oldAnnotations.eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.ICODE_GEN_CONFIG_INFO__ANNOTATIONS, null, null);
+				if (newAnnotations.eInternalContainer() == null) {
+					msgs = newAnnotations.eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.ICODE_GEN_CONFIG_INFO__ANNOTATIONS, null, msgs);
+				}
+				if (msgs != null) msgs.dispatch();
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.ICODE_GEN_CONFIG_INFO__ANNOTATIONS, oldAnnotations, annotations));
+			}
+		}
+		return annotations;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IComment basicGetAnnotations() {
+		return annotations;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public NotificationChain basicSetAnnotations(IComment newAnnotations, NotificationChain msgs) {
+		IComment oldAnnotations = annotations;
+		annotations = newAnnotations;
+		if (eNotificationRequired()) {
+			ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, UMLRpyPackage.ICODE_GEN_CONFIG_INFO__ANNOTATIONS, oldAnnotations, newAnnotations);
+			if (msgs == null) msgs = notification; else msgs.add(notification);
+		}
+		return msgs;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setAnnotations(IComment newAnnotations) {
+		if (newAnnotations != annotations) {
+			NotificationChain msgs = null;
+			if (annotations != null)
+				msgs = ((InternalEObject)annotations).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.ICODE_GEN_CONFIG_INFO__ANNOTATIONS, null, msgs);
+			if (newAnnotations != null)
+				msgs = ((InternalEObject)newAnnotations).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.ICODE_GEN_CONFIG_INFO__ANNOTATIONS, null, msgs);
+			msgs = basicSetAnnotations(newAnnotations, msgs);
+			if (msgs != null) msgs.dispatch();
+		}
+		else if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.ICODE_GEN_CONFIG_INFO__ANNOTATIONS, newAnnotations, newAnnotations));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getLastID() {
+		return lastID;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setLastID(String newLastID) {
+		String oldLastID = lastID;
+		lastID = newLastID;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.ICODE_GEN_CONFIG_INFO__LAST_ID, oldLastID, lastID));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IDescription getDescription() {
+		if (description != null && description.eIsProxy()) {
+			InternalEObject oldDescription = (InternalEObject)description;
+			description = (IDescription)eResolveProxy(oldDescription);
+			if (description != oldDescription) {
+				InternalEObject newDescription = (InternalEObject)description;
+				NotificationChain msgs = oldDescription.eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.ICODE_GEN_CONFIG_INFO__DESCRIPTION, null, null);
+				if (newDescription.eInternalContainer() == null) {
+					msgs = newDescription.eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.ICODE_GEN_CONFIG_INFO__DESCRIPTION, null, msgs);
+				}
+				if (msgs != null) msgs.dispatch();
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.ICODE_GEN_CONFIG_INFO__DESCRIPTION, oldDescription, description));
+			}
+		}
+		return description;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IDescription basicGetDescription() {
+		return description;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public NotificationChain basicSetDescription(IDescription newDescription, NotificationChain msgs) {
+		IDescription oldDescription = description;
+		description = newDescription;
+		if (eNotificationRequired()) {
+			ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, UMLRpyPackage.ICODE_GEN_CONFIG_INFO__DESCRIPTION, oldDescription, newDescription);
+			if (msgs == null) msgs = notification; else msgs.add(notification);
+		}
+		return msgs;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setDescription(IDescription newDescription) {
+		if (newDescription != description) {
+			NotificationChain msgs = null;
+			if (description != null)
+				msgs = ((InternalEObject)description).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.ICODE_GEN_CONFIG_INFO__DESCRIPTION, null, msgs);
+			if (newDescription != null)
+				msgs = ((InternalEObject)newDescription).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.ICODE_GEN_CONFIG_INFO__DESCRIPTION, null, msgs);
+			msgs = basicSetDescription(newDescription, msgs);
+			if (msgs != null) msgs.dispatch();
+		}
+		else if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.ICODE_GEN_CONFIG_INFO__DESCRIPTION, newDescription, newDescription));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<ITag> getTags() {
+		if (tags == null) {
+			tags = new EObjectContainmentEList.Resolving<ITag>(ITag.class, this, UMLRpyPackage.ICODE_GEN_CONFIG_INFO__TAGS);
+		}
+		return tags;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getCmheader() {
+		return cmheader;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setCmheader(String newCmheader) {
+		String oldCmheader = cmheader;
+		cmheader = newCmheader;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.ICODE_GEN_CONFIG_INFO__CMHEADER, oldCmheader, cmheader));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getRequiremenTracabilityHandle() {
+		return requiremenTracabilityHandle;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setRequiremenTracabilityHandle(String newRequiremenTracabilityHandle) {
+		String oldRequiremenTracabilityHandle = requiremenTracabilityHandle;
+		requiremenTracabilityHandle = newRequiremenTracabilityHandle;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.ICODE_GEN_CONFIG_INFO__REQUIREMEN_TRACABILITY_HANDLE, oldRequiremenTracabilityHandle, requiremenTracabilityHandle));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<IClassifier> getStereotypes() {
+		if (stereotypes == null) {
+			stereotypes = new EObjectResolvingEList<IClassifier>(IClassifier.class, this, UMLRpyPackage.ICODE_GEN_CONFIG_INFO__STEREOTYPES);
+		}
+		return stereotypes;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<String> getCodeUpdateCGTime() {
+		if (codeUpdateCGTime == null) {
+			codeUpdateCGTime = new EDataTypeEList<String>(String.class, this, UMLRpyPackage.ICODE_GEN_CONFIG_INFO__CODE_UPDATE_CG_TIME);
+		}
+		return codeUpdateCGTime;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<ElementsType> getAnimScopeElements() {
+		if (animScopeElements == null) {
+			animScopeElements = new EObjectResolvingEList<ElementsType>(ElementsType.class, this, UMLRpyPackage.ICODE_GEN_CONFIG_INFO__ANIM_SCOPE_ELEMENTS);
+		}
+		return animScopeElements;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IEmbededFile getEmbededFiles() {
+		if (embededFiles != null && embededFiles.eIsProxy()) {
+			InternalEObject oldEmbededFiles = (InternalEObject)embededFiles;
+			embededFiles = (IEmbededFile)eResolveProxy(oldEmbededFiles);
+			if (embededFiles != oldEmbededFiles) {
+				InternalEObject newEmbededFiles = (InternalEObject)embededFiles;
+				NotificationChain msgs = oldEmbededFiles.eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.ICODE_GEN_CONFIG_INFO__EMBEDED_FILES, null, null);
+				if (newEmbededFiles.eInternalContainer() == null) {
+					msgs = newEmbededFiles.eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.ICODE_GEN_CONFIG_INFO__EMBEDED_FILES, null, msgs);
+				}
+				if (msgs != null) msgs.dispatch();
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.ICODE_GEN_CONFIG_INFO__EMBEDED_FILES, oldEmbededFiles, embededFiles));
+			}
+		}
+		return embededFiles;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IEmbededFile basicGetEmbededFiles() {
+		return embededFiles;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public NotificationChain basicSetEmbededFiles(IEmbededFile newEmbededFiles, NotificationChain msgs) {
+		IEmbededFile oldEmbededFiles = embededFiles;
+		embededFiles = newEmbededFiles;
+		if (eNotificationRequired()) {
+			ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, UMLRpyPackage.ICODE_GEN_CONFIG_INFO__EMBEDED_FILES, oldEmbededFiles, newEmbededFiles);
+			if (msgs == null) msgs = notification; else msgs.add(notification);
+		}
+		return msgs;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setEmbededFiles(IEmbededFile newEmbededFiles) {
+		if (newEmbededFiles != embededFiles) {
+			NotificationChain msgs = null;
+			if (embededFiles != null)
+				msgs = ((InternalEObject)embededFiles).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.ICODE_GEN_CONFIG_INFO__EMBEDED_FILES, null, msgs);
+			if (newEmbededFiles != null)
+				msgs = ((InternalEObject)newEmbededFiles).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.ICODE_GEN_CONFIG_INFO__EMBEDED_FILES, null, msgs);
+			msgs = basicSetEmbededFiles(newEmbededFiles, msgs);
+			if (msgs != null) msgs.dispatch();
+		}
+		else if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.ICODE_GEN_CONFIG_INFO__EMBEDED_FILES, newEmbededFiles, newEmbededFiles));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getObjectCreation() {
+		return objectCreation;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setObjectCreation(String newObjectCreation) {
+		String oldObjectCreation = objectCreation;
+		objectCreation = newObjectCreation;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.ICODE_GEN_CONFIG_INFO__OBJECT_CREATION, oldObjectCreation, objectCreation));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getUmlDependencyID() {
+		return umlDependencyID;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setUmlDependencyID(String newUmlDependencyID) {
+		String oldUmlDependencyID = umlDependencyID;
+		umlDependencyID = newUmlDependencyID;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.ICODE_GEN_CONFIG_INFO__UML_DEPENDENCY_ID, oldUmlDependencyID, umlDependencyID));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
+		switch (featureID) {
+			case UMLRpyPackage.ICODE_GEN_CONFIG_INFO__HYPER_LINKS:
+				return ((InternalEList<?>)getHyperLinks()).basicRemove(otherEnd, msgs);
+			case UMLRpyPackage.ICODE_GEN_CONFIG_INFO__ROOT:
+				return basicSetRoot(null, msgs);
+			case UMLRpyPackage.ICODE_GEN_CONFIG_INFO__DEPENDENCIES:
+				return basicSetDependencies(null, msgs);
+			case UMLRpyPackage.ICODE_GEN_CONFIG_INFO__PROPERTIES:
+				return basicSetProperties(null, msgs);
+			case UMLRpyPackage.ICODE_GEN_CONFIG_INFO__ANNOTATIONS:
+				return basicSetAnnotations(null, msgs);
+			case UMLRpyPackage.ICODE_GEN_CONFIG_INFO__DESCRIPTION:
+				return basicSetDescription(null, msgs);
+			case UMLRpyPackage.ICODE_GEN_CONFIG_INFO__TAGS:
+				return ((InternalEList<?>)getTags()).basicRemove(otherEnd, msgs);
+			case UMLRpyPackage.ICODE_GEN_CONFIG_INFO__EMBEDED_FILES:
+				return basicSetEmbededFiles(null, msgs);
+		}
+		return super.eInverseRemove(otherEnd, featureID, msgs);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object eGet(int featureID, boolean resolve, boolean coreType) {
+		switch (featureID) {
+			case UMLRpyPackage.ICODE_GEN_CONFIG_INFO__ID:
+				return getId();
+			case UMLRpyPackage.ICODE_GEN_CONFIG_INFO__MY_STATE:
+				return getMyState();
+			case UMLRpyPackage.ICODE_GEN_CONFIG_INFO__NAME:
+				return getName();
+			case UMLRpyPackage.ICODE_GEN_CONFIG_INFO__MODIFIED_TIME_WEAK:
+				return getModifiedTimeWeak();
+			case UMLRpyPackage.ICODE_GEN_CONFIG_INFO__HYPER_LINKS:
+				return getHyperLinks();
+			case UMLRpyPackage.ICODE_GEN_CONFIG_INFO__SCOPE_TYPE:
+				return getScopeType();
+			case UMLRpyPackage.ICODE_GEN_CONFIG_INFO__LIBRARIES:
+				return getLibraries();
+			case UMLRpyPackage.ICODE_GEN_CONFIG_INFO__ADDITIONAL_SOURCES:
+				return getAdditionalSources();
+			case UMLRpyPackage.ICODE_GEN_CONFIG_INFO__STANDARD_HEADERS:
+				return getStandardHeaders();
+			case UMLRpyPackage.ICODE_GEN_CONFIG_INFO__INCLUDE_PATH:
+				return getIncludePath();
+			case UMLRpyPackage.ICODE_GEN_CONFIG_INFO__TARGET_MAIN:
+				return getTargetMain();
+			case UMLRpyPackage.ICODE_GEN_CONFIG_INFO__INSTRUMENTATION:
+				return getInstrumentation();
+			case UMLRpyPackage.ICODE_GEN_CONFIG_INFO__TIME_MODEL:
+				return getTimeModel();
+			case UMLRpyPackage.ICODE_GEN_CONFIG_INFO__MGENERATE_ACTORS:
+				return getM_generateActors();
+			case UMLRpyPackage.ICODE_GEN_CONFIG_INFO__STATECHART_IMPLEMENTATION:
+				return getStatechartImplementation();
+			case UMLRpyPackage.ICODE_GEN_CONFIG_INFO__INITIALIZATION_CODE:
+				return getInitializationCode();
+			case UMLRpyPackage.ICODE_GEN_CONFIG_INFO__CHECKS_LIST:
+				return getChecksList();
+			case UMLRpyPackage.ICODE_GEN_CONFIG_INFO__SCOPE_ELEMENTS:
+				return getScopeElements();
+			case UMLRpyPackage.ICODE_GEN_CONFIG_INFO__ROOT:
+				if (resolve) return getRoot();
+				return basicGetRoot();
+			case UMLRpyPackage.ICODE_GEN_CONFIG_INFO__WEAK_CG_TIME:
+				return getWeakCGTime();
+			case UMLRpyPackage.ICODE_GEN_CONFIG_INFO__STRONG_CG_TIME:
+				return getStrongCGTime();
+			case UMLRpyPackage.ICODE_GEN_CONFIG_INFO__MALL_IN_ANIM_SCOPE:
+				return getM_allInAnimScope();
+			case UMLRpyPackage.ICODE_GEN_CONFIG_INFO__MGENERATE_USECASES:
+				return getM_generateUsecases();
+			case UMLRpyPackage.ICODE_GEN_CONFIG_INFO__DEPENDENCIES:
+				if (resolve) return getDependencies();
+				return basicGetDependencies();
+			case UMLRpyPackage.ICODE_GEN_CONFIG_INFO__INITIAL_INSTANCES:
+				return getInitialInstances();
+			case UMLRpyPackage.ICODE_GEN_CONFIG_INFO__PROPERTIES:
+				if (resolve) return getProperties();
+				return basicGetProperties();
+			case UMLRpyPackage.ICODE_GEN_CONFIG_INFO__ANNOTATIONS:
+				if (resolve) return getAnnotations();
+				return basicGetAnnotations();
+			case UMLRpyPackage.ICODE_GEN_CONFIG_INFO__LAST_ID:
+				return getLastID();
+			case UMLRpyPackage.ICODE_GEN_CONFIG_INFO__DESCRIPTION:
+				if (resolve) return getDescription();
+				return basicGetDescription();
+			case UMLRpyPackage.ICODE_GEN_CONFIG_INFO__TAGS:
+				return getTags();
+			case UMLRpyPackage.ICODE_GEN_CONFIG_INFO__CMHEADER:
+				return getCmheader();
+			case UMLRpyPackage.ICODE_GEN_CONFIG_INFO__REQUIREMEN_TRACABILITY_HANDLE:
+				return getRequiremenTracabilityHandle();
+			case UMLRpyPackage.ICODE_GEN_CONFIG_INFO__STEREOTYPES:
+				return getStereotypes();
+			case UMLRpyPackage.ICODE_GEN_CONFIG_INFO__CODE_UPDATE_CG_TIME:
+				return getCodeUpdateCGTime();
+			case UMLRpyPackage.ICODE_GEN_CONFIG_INFO__ANIM_SCOPE_ELEMENTS:
+				return getAnimScopeElements();
+			case UMLRpyPackage.ICODE_GEN_CONFIG_INFO__EMBEDED_FILES:
+				if (resolve) return getEmbededFiles();
+				return basicGetEmbededFiles();
+			case UMLRpyPackage.ICODE_GEN_CONFIG_INFO__OBJECT_CREATION:
+				return getObjectCreation();
+			case UMLRpyPackage.ICODE_GEN_CONFIG_INFO__UML_DEPENDENCY_ID:
+				return getUmlDependencyID();
+		}
+		return super.eGet(featureID, resolve, coreType);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@SuppressWarnings("unchecked")
+	@Override
+	public void eSet(int featureID, Object newValue) {
+		switch (featureID) {
+			case UMLRpyPackage.ICODE_GEN_CONFIG_INFO__ID:
+				setId((String)newValue);
+				return;
+			case UMLRpyPackage.ICODE_GEN_CONFIG_INFO__MY_STATE:
+				setMyState((String)newValue);
+				return;
+			case UMLRpyPackage.ICODE_GEN_CONFIG_INFO__NAME:
+				setName((String)newValue);
+				return;
+			case UMLRpyPackage.ICODE_GEN_CONFIG_INFO__MODIFIED_TIME_WEAK:
+				getModifiedTimeWeak().clear();
+				getModifiedTimeWeak().addAll((Collection<? extends String>)newValue);
+				return;
+			case UMLRpyPackage.ICODE_GEN_CONFIG_INFO__HYPER_LINKS:
+				getHyperLinks().clear();
+				getHyperLinks().addAll((Collection<? extends IMHyperLink>)newValue);
+				return;
+			case UMLRpyPackage.ICODE_GEN_CONFIG_INFO__SCOPE_TYPE:
+				setScopeType((String)newValue);
+				return;
+			case UMLRpyPackage.ICODE_GEN_CONFIG_INFO__LIBRARIES:
+				setLibraries((String)newValue);
+				return;
+			case UMLRpyPackage.ICODE_GEN_CONFIG_INFO__ADDITIONAL_SOURCES:
+				setAdditionalSources((String)newValue);
+				return;
+			case UMLRpyPackage.ICODE_GEN_CONFIG_INFO__STANDARD_HEADERS:
+				setStandardHeaders((String)newValue);
+				return;
+			case UMLRpyPackage.ICODE_GEN_CONFIG_INFO__INCLUDE_PATH:
+				setIncludePath((String)newValue);
+				return;
+			case UMLRpyPackage.ICODE_GEN_CONFIG_INFO__TARGET_MAIN:
+				setTargetMain((String)newValue);
+				return;
+			case UMLRpyPackage.ICODE_GEN_CONFIG_INFO__INSTRUMENTATION:
+				setInstrumentation((String)newValue);
+				return;
+			case UMLRpyPackage.ICODE_GEN_CONFIG_INFO__TIME_MODEL:
+				setTimeModel((String)newValue);
+				return;
+			case UMLRpyPackage.ICODE_GEN_CONFIG_INFO__MGENERATE_ACTORS:
+				setM_generateActors((String)newValue);
+				return;
+			case UMLRpyPackage.ICODE_GEN_CONFIG_INFO__STATECHART_IMPLEMENTATION:
+				setStatechartImplementation((String)newValue);
+				return;
+			case UMLRpyPackage.ICODE_GEN_CONFIG_INFO__INITIALIZATION_CODE:
+				setInitializationCode((String)newValue);
+				return;
+			case UMLRpyPackage.ICODE_GEN_CONFIG_INFO__CHECKS_LIST:
+				getChecksList().clear();
+				getChecksList().addAll((Collection<? extends String>)newValue);
+				return;
+			case UMLRpyPackage.ICODE_GEN_CONFIG_INFO__SCOPE_ELEMENTS:
+				getScopeElements().clear();
+				getScopeElements().addAll((Collection<? extends UnknownType>)newValue);
+				return;
+			case UMLRpyPackage.ICODE_GEN_CONFIG_INFO__ROOT:
+				setRoot((IFolder)newValue);
+				return;
+			case UMLRpyPackage.ICODE_GEN_CONFIG_INFO__WEAK_CG_TIME:
+				getWeakCGTime().clear();
+				getWeakCGTime().addAll((Collection<? extends String>)newValue);
+				return;
+			case UMLRpyPackage.ICODE_GEN_CONFIG_INFO__STRONG_CG_TIME:
+				getStrongCGTime().clear();
+				getStrongCGTime().addAll((Collection<? extends String>)newValue);
+				return;
+			case UMLRpyPackage.ICODE_GEN_CONFIG_INFO__MALL_IN_ANIM_SCOPE:
+				setM_allInAnimScope((String)newValue);
+				return;
+			case UMLRpyPackage.ICODE_GEN_CONFIG_INFO__MGENERATE_USECASES:
+				setM_generateUsecases((String)newValue);
+				return;
+			case UMLRpyPackage.ICODE_GEN_CONFIG_INFO__DEPENDENCIES:
+				setDependencies((IDependency)newValue);
+				return;
+			case UMLRpyPackage.ICODE_GEN_CONFIG_INFO__INITIAL_INSTANCES:
+				getInitialInstances().clear();
+				getInitialInstances().addAll((Collection<? extends IUnit>)newValue);
+				return;
+			case UMLRpyPackage.ICODE_GEN_CONFIG_INFO__PROPERTIES:
+				setProperties((IPropertyContainer)newValue);
+				return;
+			case UMLRpyPackage.ICODE_GEN_CONFIG_INFO__ANNOTATIONS:
+				setAnnotations((IComment)newValue);
+				return;
+			case UMLRpyPackage.ICODE_GEN_CONFIG_INFO__LAST_ID:
+				setLastID((String)newValue);
+				return;
+			case UMLRpyPackage.ICODE_GEN_CONFIG_INFO__DESCRIPTION:
+				setDescription((IDescription)newValue);
+				return;
+			case UMLRpyPackage.ICODE_GEN_CONFIG_INFO__TAGS:
+				getTags().clear();
+				getTags().addAll((Collection<? extends ITag>)newValue);
+				return;
+			case UMLRpyPackage.ICODE_GEN_CONFIG_INFO__CMHEADER:
+				setCmheader((String)newValue);
+				return;
+			case UMLRpyPackage.ICODE_GEN_CONFIG_INFO__REQUIREMEN_TRACABILITY_HANDLE:
+				setRequiremenTracabilityHandle((String)newValue);
+				return;
+			case UMLRpyPackage.ICODE_GEN_CONFIG_INFO__STEREOTYPES:
+				getStereotypes().clear();
+				getStereotypes().addAll((Collection<? extends IClassifier>)newValue);
+				return;
+			case UMLRpyPackage.ICODE_GEN_CONFIG_INFO__CODE_UPDATE_CG_TIME:
+				getCodeUpdateCGTime().clear();
+				getCodeUpdateCGTime().addAll((Collection<? extends String>)newValue);
+				return;
+			case UMLRpyPackage.ICODE_GEN_CONFIG_INFO__ANIM_SCOPE_ELEMENTS:
+				getAnimScopeElements().clear();
+				getAnimScopeElements().addAll((Collection<? extends ElementsType>)newValue);
+				return;
+			case UMLRpyPackage.ICODE_GEN_CONFIG_INFO__EMBEDED_FILES:
+				setEmbededFiles((IEmbededFile)newValue);
+				return;
+			case UMLRpyPackage.ICODE_GEN_CONFIG_INFO__OBJECT_CREATION:
+				setObjectCreation((String)newValue);
+				return;
+			case UMLRpyPackage.ICODE_GEN_CONFIG_INFO__UML_DEPENDENCY_ID:
+				setUmlDependencyID((String)newValue);
+				return;
+		}
+		super.eSet(featureID, newValue);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void eUnset(int featureID) {
+		switch (featureID) {
+			case UMLRpyPackage.ICODE_GEN_CONFIG_INFO__ID:
+				setId(ID_EDEFAULT);
+				return;
+			case UMLRpyPackage.ICODE_GEN_CONFIG_INFO__MY_STATE:
+				setMyState(MY_STATE_EDEFAULT);
+				return;
+			case UMLRpyPackage.ICODE_GEN_CONFIG_INFO__NAME:
+				setName(NAME_EDEFAULT);
+				return;
+			case UMLRpyPackage.ICODE_GEN_CONFIG_INFO__MODIFIED_TIME_WEAK:
+				getModifiedTimeWeak().clear();
+				return;
+			case UMLRpyPackage.ICODE_GEN_CONFIG_INFO__HYPER_LINKS:
+				getHyperLinks().clear();
+				return;
+			case UMLRpyPackage.ICODE_GEN_CONFIG_INFO__SCOPE_TYPE:
+				setScopeType(SCOPE_TYPE_EDEFAULT);
+				return;
+			case UMLRpyPackage.ICODE_GEN_CONFIG_INFO__LIBRARIES:
+				setLibraries(LIBRARIES_EDEFAULT);
+				return;
+			case UMLRpyPackage.ICODE_GEN_CONFIG_INFO__ADDITIONAL_SOURCES:
+				setAdditionalSources(ADDITIONAL_SOURCES_EDEFAULT);
+				return;
+			case UMLRpyPackage.ICODE_GEN_CONFIG_INFO__STANDARD_HEADERS:
+				setStandardHeaders(STANDARD_HEADERS_EDEFAULT);
+				return;
+			case UMLRpyPackage.ICODE_GEN_CONFIG_INFO__INCLUDE_PATH:
+				setIncludePath(INCLUDE_PATH_EDEFAULT);
+				return;
+			case UMLRpyPackage.ICODE_GEN_CONFIG_INFO__TARGET_MAIN:
+				setTargetMain(TARGET_MAIN_EDEFAULT);
+				return;
+			case UMLRpyPackage.ICODE_GEN_CONFIG_INFO__INSTRUMENTATION:
+				setInstrumentation(INSTRUMENTATION_EDEFAULT);
+				return;
+			case UMLRpyPackage.ICODE_GEN_CONFIG_INFO__TIME_MODEL:
+				setTimeModel(TIME_MODEL_EDEFAULT);
+				return;
+			case UMLRpyPackage.ICODE_GEN_CONFIG_INFO__MGENERATE_ACTORS:
+				setM_generateActors(MGENERATE_ACTORS_EDEFAULT);
+				return;
+			case UMLRpyPackage.ICODE_GEN_CONFIG_INFO__STATECHART_IMPLEMENTATION:
+				setStatechartImplementation(STATECHART_IMPLEMENTATION_EDEFAULT);
+				return;
+			case UMLRpyPackage.ICODE_GEN_CONFIG_INFO__INITIALIZATION_CODE:
+				setInitializationCode(INITIALIZATION_CODE_EDEFAULT);
+				return;
+			case UMLRpyPackage.ICODE_GEN_CONFIG_INFO__CHECKS_LIST:
+				getChecksList().clear();
+				return;
+			case UMLRpyPackage.ICODE_GEN_CONFIG_INFO__SCOPE_ELEMENTS:
+				getScopeElements().clear();
+				return;
+			case UMLRpyPackage.ICODE_GEN_CONFIG_INFO__ROOT:
+				setRoot((IFolder)null);
+				return;
+			case UMLRpyPackage.ICODE_GEN_CONFIG_INFO__WEAK_CG_TIME:
+				getWeakCGTime().clear();
+				return;
+			case UMLRpyPackage.ICODE_GEN_CONFIG_INFO__STRONG_CG_TIME:
+				getStrongCGTime().clear();
+				return;
+			case UMLRpyPackage.ICODE_GEN_CONFIG_INFO__MALL_IN_ANIM_SCOPE:
+				setM_allInAnimScope(MALL_IN_ANIM_SCOPE_EDEFAULT);
+				return;
+			case UMLRpyPackage.ICODE_GEN_CONFIG_INFO__MGENERATE_USECASES:
+				setM_generateUsecases(MGENERATE_USECASES_EDEFAULT);
+				return;
+			case UMLRpyPackage.ICODE_GEN_CONFIG_INFO__DEPENDENCIES:
+				setDependencies((IDependency)null);
+				return;
+			case UMLRpyPackage.ICODE_GEN_CONFIG_INFO__INITIAL_INSTANCES:
+				getInitialInstances().clear();
+				return;
+			case UMLRpyPackage.ICODE_GEN_CONFIG_INFO__PROPERTIES:
+				setProperties((IPropertyContainer)null);
+				return;
+			case UMLRpyPackage.ICODE_GEN_CONFIG_INFO__ANNOTATIONS:
+				setAnnotations((IComment)null);
+				return;
+			case UMLRpyPackage.ICODE_GEN_CONFIG_INFO__LAST_ID:
+				setLastID(LAST_ID_EDEFAULT);
+				return;
+			case UMLRpyPackage.ICODE_GEN_CONFIG_INFO__DESCRIPTION:
+				setDescription((IDescription)null);
+				return;
+			case UMLRpyPackage.ICODE_GEN_CONFIG_INFO__TAGS:
+				getTags().clear();
+				return;
+			case UMLRpyPackage.ICODE_GEN_CONFIG_INFO__CMHEADER:
+				setCmheader(CMHEADER_EDEFAULT);
+				return;
+			case UMLRpyPackage.ICODE_GEN_CONFIG_INFO__REQUIREMEN_TRACABILITY_HANDLE:
+				setRequiremenTracabilityHandle(REQUIREMEN_TRACABILITY_HANDLE_EDEFAULT);
+				return;
+			case UMLRpyPackage.ICODE_GEN_CONFIG_INFO__STEREOTYPES:
+				getStereotypes().clear();
+				return;
+			case UMLRpyPackage.ICODE_GEN_CONFIG_INFO__CODE_UPDATE_CG_TIME:
+				getCodeUpdateCGTime().clear();
+				return;
+			case UMLRpyPackage.ICODE_GEN_CONFIG_INFO__ANIM_SCOPE_ELEMENTS:
+				getAnimScopeElements().clear();
+				return;
+			case UMLRpyPackage.ICODE_GEN_CONFIG_INFO__EMBEDED_FILES:
+				setEmbededFiles((IEmbededFile)null);
+				return;
+			case UMLRpyPackage.ICODE_GEN_CONFIG_INFO__OBJECT_CREATION:
+				setObjectCreation(OBJECT_CREATION_EDEFAULT);
+				return;
+			case UMLRpyPackage.ICODE_GEN_CONFIG_INFO__UML_DEPENDENCY_ID:
+				setUmlDependencyID(UML_DEPENDENCY_ID_EDEFAULT);
+				return;
+		}
+		super.eUnset(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public boolean eIsSet(int featureID) {
+		switch (featureID) {
+			case UMLRpyPackage.ICODE_GEN_CONFIG_INFO__ID:
+				return ID_EDEFAULT == null ? id != null : !ID_EDEFAULT.equals(id);
+			case UMLRpyPackage.ICODE_GEN_CONFIG_INFO__MY_STATE:
+				return MY_STATE_EDEFAULT == null ? myState != null : !MY_STATE_EDEFAULT.equals(myState);
+			case UMLRpyPackage.ICODE_GEN_CONFIG_INFO__NAME:
+				return NAME_EDEFAULT == null ? name != null : !NAME_EDEFAULT.equals(name);
+			case UMLRpyPackage.ICODE_GEN_CONFIG_INFO__MODIFIED_TIME_WEAK:
+				return modifiedTimeWeak != null && !modifiedTimeWeak.isEmpty();
+			case UMLRpyPackage.ICODE_GEN_CONFIG_INFO__HYPER_LINKS:
+				return hyperLinks != null && !hyperLinks.isEmpty();
+			case UMLRpyPackage.ICODE_GEN_CONFIG_INFO__SCOPE_TYPE:
+				return SCOPE_TYPE_EDEFAULT == null ? scopeType != null : !SCOPE_TYPE_EDEFAULT.equals(scopeType);
+			case UMLRpyPackage.ICODE_GEN_CONFIG_INFO__LIBRARIES:
+				return LIBRARIES_EDEFAULT == null ? libraries != null : !LIBRARIES_EDEFAULT.equals(libraries);
+			case UMLRpyPackage.ICODE_GEN_CONFIG_INFO__ADDITIONAL_SOURCES:
+				return ADDITIONAL_SOURCES_EDEFAULT == null ? additionalSources != null : !ADDITIONAL_SOURCES_EDEFAULT.equals(additionalSources);
+			case UMLRpyPackage.ICODE_GEN_CONFIG_INFO__STANDARD_HEADERS:
+				return STANDARD_HEADERS_EDEFAULT == null ? standardHeaders != null : !STANDARD_HEADERS_EDEFAULT.equals(standardHeaders);
+			case UMLRpyPackage.ICODE_GEN_CONFIG_INFO__INCLUDE_PATH:
+				return INCLUDE_PATH_EDEFAULT == null ? includePath != null : !INCLUDE_PATH_EDEFAULT.equals(includePath);
+			case UMLRpyPackage.ICODE_GEN_CONFIG_INFO__TARGET_MAIN:
+				return TARGET_MAIN_EDEFAULT == null ? targetMain != null : !TARGET_MAIN_EDEFAULT.equals(targetMain);
+			case UMLRpyPackage.ICODE_GEN_CONFIG_INFO__INSTRUMENTATION:
+				return INSTRUMENTATION_EDEFAULT == null ? instrumentation != null : !INSTRUMENTATION_EDEFAULT.equals(instrumentation);
+			case UMLRpyPackage.ICODE_GEN_CONFIG_INFO__TIME_MODEL:
+				return TIME_MODEL_EDEFAULT == null ? timeModel != null : !TIME_MODEL_EDEFAULT.equals(timeModel);
+			case UMLRpyPackage.ICODE_GEN_CONFIG_INFO__MGENERATE_ACTORS:
+				return MGENERATE_ACTORS_EDEFAULT == null ? m_generateActors != null : !MGENERATE_ACTORS_EDEFAULT.equals(m_generateActors);
+			case UMLRpyPackage.ICODE_GEN_CONFIG_INFO__STATECHART_IMPLEMENTATION:
+				return STATECHART_IMPLEMENTATION_EDEFAULT == null ? statechartImplementation != null : !STATECHART_IMPLEMENTATION_EDEFAULT.equals(statechartImplementation);
+			case UMLRpyPackage.ICODE_GEN_CONFIG_INFO__INITIALIZATION_CODE:
+				return INITIALIZATION_CODE_EDEFAULT == null ? initializationCode != null : !INITIALIZATION_CODE_EDEFAULT.equals(initializationCode);
+			case UMLRpyPackage.ICODE_GEN_CONFIG_INFO__CHECKS_LIST:
+				return checksList != null && !checksList.isEmpty();
+			case UMLRpyPackage.ICODE_GEN_CONFIG_INFO__SCOPE_ELEMENTS:
+				return scopeElements != null && !scopeElements.isEmpty();
+			case UMLRpyPackage.ICODE_GEN_CONFIG_INFO__ROOT:
+				return root != null;
+			case UMLRpyPackage.ICODE_GEN_CONFIG_INFO__WEAK_CG_TIME:
+				return weakCGTime != null && !weakCGTime.isEmpty();
+			case UMLRpyPackage.ICODE_GEN_CONFIG_INFO__STRONG_CG_TIME:
+				return strongCGTime != null && !strongCGTime.isEmpty();
+			case UMLRpyPackage.ICODE_GEN_CONFIG_INFO__MALL_IN_ANIM_SCOPE:
+				return MALL_IN_ANIM_SCOPE_EDEFAULT == null ? m_allInAnimScope != null : !MALL_IN_ANIM_SCOPE_EDEFAULT.equals(m_allInAnimScope);
+			case UMLRpyPackage.ICODE_GEN_CONFIG_INFO__MGENERATE_USECASES:
+				return MGENERATE_USECASES_EDEFAULT == null ? m_generateUsecases != null : !MGENERATE_USECASES_EDEFAULT.equals(m_generateUsecases);
+			case UMLRpyPackage.ICODE_GEN_CONFIG_INFO__DEPENDENCIES:
+				return dependencies != null;
+			case UMLRpyPackage.ICODE_GEN_CONFIG_INFO__INITIAL_INSTANCES:
+				return initialInstances != null && !initialInstances.isEmpty();
+			case UMLRpyPackage.ICODE_GEN_CONFIG_INFO__PROPERTIES:
+				return properties != null;
+			case UMLRpyPackage.ICODE_GEN_CONFIG_INFO__ANNOTATIONS:
+				return annotations != null;
+			case UMLRpyPackage.ICODE_GEN_CONFIG_INFO__LAST_ID:
+				return LAST_ID_EDEFAULT == null ? lastID != null : !LAST_ID_EDEFAULT.equals(lastID);
+			case UMLRpyPackage.ICODE_GEN_CONFIG_INFO__DESCRIPTION:
+				return description != null;
+			case UMLRpyPackage.ICODE_GEN_CONFIG_INFO__TAGS:
+				return tags != null && !tags.isEmpty();
+			case UMLRpyPackage.ICODE_GEN_CONFIG_INFO__CMHEADER:
+				return CMHEADER_EDEFAULT == null ? cmheader != null : !CMHEADER_EDEFAULT.equals(cmheader);
+			case UMLRpyPackage.ICODE_GEN_CONFIG_INFO__REQUIREMEN_TRACABILITY_HANDLE:
+				return REQUIREMEN_TRACABILITY_HANDLE_EDEFAULT == null ? requiremenTracabilityHandle != null : !REQUIREMEN_TRACABILITY_HANDLE_EDEFAULT.equals(requiremenTracabilityHandle);
+			case UMLRpyPackage.ICODE_GEN_CONFIG_INFO__STEREOTYPES:
+				return stereotypes != null && !stereotypes.isEmpty();
+			case UMLRpyPackage.ICODE_GEN_CONFIG_INFO__CODE_UPDATE_CG_TIME:
+				return codeUpdateCGTime != null && !codeUpdateCGTime.isEmpty();
+			case UMLRpyPackage.ICODE_GEN_CONFIG_INFO__ANIM_SCOPE_ELEMENTS:
+				return animScopeElements != null && !animScopeElements.isEmpty();
+			case UMLRpyPackage.ICODE_GEN_CONFIG_INFO__EMBEDED_FILES:
+				return embededFiles != null;
+			case UMLRpyPackage.ICODE_GEN_CONFIG_INFO__OBJECT_CREATION:
+				return OBJECT_CREATION_EDEFAULT == null ? objectCreation != null : !OBJECT_CREATION_EDEFAULT.equals(objectCreation);
+			case UMLRpyPackage.ICODE_GEN_CONFIG_INFO__UML_DEPENDENCY_ID:
+				return UML_DEPENDENCY_ID_EDEFAULT == null ? umlDependencyID != null : !UML_DEPENDENCY_ID_EDEFAULT.equals(umlDependencyID);
+		}
+		return super.eIsSet(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String toString() {
+		if (eIsProxy()) return super.toString();
+
+		StringBuffer result = new StringBuffer(super.toString());
+		result.append(" (id: "); //$NON-NLS-1$
+		result.append(id);
+		result.append(", myState: "); //$NON-NLS-1$
+		result.append(myState);
+		result.append(", name: "); //$NON-NLS-1$
+		result.append(name);
+		result.append(", modifiedTimeWeak: "); //$NON-NLS-1$
+		result.append(modifiedTimeWeak);
+		result.append(", scopeType: "); //$NON-NLS-1$
+		result.append(scopeType);
+		result.append(", libraries: "); //$NON-NLS-1$
+		result.append(libraries);
+		result.append(", additionalSources: "); //$NON-NLS-1$
+		result.append(additionalSources);
+		result.append(", standardHeaders: "); //$NON-NLS-1$
+		result.append(standardHeaders);
+		result.append(", includePath: "); //$NON-NLS-1$
+		result.append(includePath);
+		result.append(", targetMain: "); //$NON-NLS-1$
+		result.append(targetMain);
+		result.append(", instrumentation: "); //$NON-NLS-1$
+		result.append(instrumentation);
+		result.append(", timeModel: "); //$NON-NLS-1$
+		result.append(timeModel);
+		result.append(", m_generateActors: "); //$NON-NLS-1$
+		result.append(m_generateActors);
+		result.append(", statechartImplementation: "); //$NON-NLS-1$
+		result.append(statechartImplementation);
+		result.append(", initializationCode: "); //$NON-NLS-1$
+		result.append(initializationCode);
+		result.append(", checksList: "); //$NON-NLS-1$
+		result.append(checksList);
+		result.append(", weakCGTime: "); //$NON-NLS-1$
+		result.append(weakCGTime);
+		result.append(", strongCGTime: "); //$NON-NLS-1$
+		result.append(strongCGTime);
+		result.append(", m_allInAnimScope: "); //$NON-NLS-1$
+		result.append(m_allInAnimScope);
+		result.append(", m_generateUsecases: "); //$NON-NLS-1$
+		result.append(m_generateUsecases);
+		result.append(", lastID: "); //$NON-NLS-1$
+		result.append(lastID);
+		result.append(", cmheader: "); //$NON-NLS-1$
+		result.append(cmheader);
+		result.append(", requiremenTracabilityHandle: "); //$NON-NLS-1$
+		result.append(requiremenTracabilityHandle);
+		result.append(", codeUpdateCGTime: "); //$NON-NLS-1$
+		result.append(codeUpdateCGTime);
+		result.append(", objectCreation: "); //$NON-NLS-1$
+		result.append(objectCreation);
+		result.append(", umlDependencyID: "); //$NON-NLS-1$
+		result.append(umlDependencyID);
+		result.append(')');
+		return result.toString();
+	}
+
+} //ICodeGenConfigInfoImpl
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/ICollaborationDiagramImpl.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/ICollaborationDiagramImpl.java
new file mode 100755
index 0000000..d40e556
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/ICollaborationDiagramImpl.java
@@ -0,0 +1,209 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl;
+
+import org.eclipse.emf.common.notify.Notification;
+import org.eclipse.emf.common.notify.NotificationChain;
+
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.InternalEObject;
+
+import org.eclipse.emf.ecore.impl.ENotificationImpl;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ICollaboration;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ICollaborationDiagram;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>ICollaboration Diagram</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * </p>
+ * <ul>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.ICollaborationDiagramImpl#getM_pICollaboration <em>MpI Collaboration</em>}</li>
+ * </ul>
+ *
+ * @generated
+ */
+public class ICollaborationDiagramImpl extends IDiagramImpl implements ICollaborationDiagram {
+	/**
+	 * The cached value of the '{@link #getM_pICollaboration() <em>MpI Collaboration</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_pICollaboration()
+	 * @generated
+	 * @ordered
+	 */
+	protected ICollaboration m_pICollaboration;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected ICollaborationDiagramImpl() {
+		super();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EClass eStaticClass() {
+		return UMLRpyPackage.eINSTANCE.getICollaborationDiagram();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public ICollaboration getM_pICollaboration() {
+		if (m_pICollaboration != null && m_pICollaboration.eIsProxy()) {
+			InternalEObject oldM_pICollaboration = (InternalEObject)m_pICollaboration;
+			m_pICollaboration = (ICollaboration)eResolveProxy(oldM_pICollaboration);
+			if (m_pICollaboration != oldM_pICollaboration) {
+				InternalEObject newM_pICollaboration = (InternalEObject)m_pICollaboration;
+				NotificationChain msgs = oldM_pICollaboration.eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.ICOLLABORATION_DIAGRAM__MPI_COLLABORATION, null, null);
+				if (newM_pICollaboration.eInternalContainer() == null) {
+					msgs = newM_pICollaboration.eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.ICOLLABORATION_DIAGRAM__MPI_COLLABORATION, null, msgs);
+				}
+				if (msgs != null) msgs.dispatch();
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.ICOLLABORATION_DIAGRAM__MPI_COLLABORATION, oldM_pICollaboration, m_pICollaboration));
+			}
+		}
+		return m_pICollaboration;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public ICollaboration basicGetM_pICollaboration() {
+		return m_pICollaboration;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public NotificationChain basicSetM_pICollaboration(ICollaboration newM_pICollaboration, NotificationChain msgs) {
+		ICollaboration oldM_pICollaboration = m_pICollaboration;
+		m_pICollaboration = newM_pICollaboration;
+		if (eNotificationRequired()) {
+			ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, UMLRpyPackage.ICOLLABORATION_DIAGRAM__MPI_COLLABORATION, oldM_pICollaboration, newM_pICollaboration);
+			if (msgs == null) msgs = notification; else msgs.add(notification);
+		}
+		return msgs;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_pICollaboration(ICollaboration newM_pICollaboration) {
+		if (newM_pICollaboration != m_pICollaboration) {
+			NotificationChain msgs = null;
+			if (m_pICollaboration != null)
+				msgs = ((InternalEObject)m_pICollaboration).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.ICOLLABORATION_DIAGRAM__MPI_COLLABORATION, null, msgs);
+			if (newM_pICollaboration != null)
+				msgs = ((InternalEObject)newM_pICollaboration).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.ICOLLABORATION_DIAGRAM__MPI_COLLABORATION, null, msgs);
+			msgs = basicSetM_pICollaboration(newM_pICollaboration, msgs);
+			if (msgs != null) msgs.dispatch();
+		}
+		else if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.ICOLLABORATION_DIAGRAM__MPI_COLLABORATION, newM_pICollaboration, newM_pICollaboration));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
+		switch (featureID) {
+			case UMLRpyPackage.ICOLLABORATION_DIAGRAM__MPI_COLLABORATION:
+				return basicSetM_pICollaboration(null, msgs);
+		}
+		return super.eInverseRemove(otherEnd, featureID, msgs);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object eGet(int featureID, boolean resolve, boolean coreType) {
+		switch (featureID) {
+			case UMLRpyPackage.ICOLLABORATION_DIAGRAM__MPI_COLLABORATION:
+				if (resolve) return getM_pICollaboration();
+				return basicGetM_pICollaboration();
+		}
+		return super.eGet(featureID, resolve, coreType);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void eSet(int featureID, Object newValue) {
+		switch (featureID) {
+			case UMLRpyPackage.ICOLLABORATION_DIAGRAM__MPI_COLLABORATION:
+				setM_pICollaboration((ICollaboration)newValue);
+				return;
+		}
+		super.eSet(featureID, newValue);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void eUnset(int featureID) {
+		switch (featureID) {
+			case UMLRpyPackage.ICOLLABORATION_DIAGRAM__MPI_COLLABORATION:
+				setM_pICollaboration((ICollaboration)null);
+				return;
+		}
+		super.eUnset(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public boolean eIsSet(int featureID) {
+		switch (featureID) {
+			case UMLRpyPackage.ICOLLABORATION_DIAGRAM__MPI_COLLABORATION:
+				return m_pICollaboration != null;
+		}
+		return super.eIsSet(featureID);
+	}
+
+} //ICollaborationDiagramImpl
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/ICollaborationImpl.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/ICollaborationImpl.java
new file mode 100755
index 0000000..a9bad02
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/ICollaborationImpl.java
@@ -0,0 +1,760 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl;
+
+import java.util.Collection;
+
+import org.eclipse.emf.common.notify.Notification;
+import org.eclipse.emf.common.notify.NotificationChain;
+
+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.EObjectContainmentEList;
+import org.eclipse.emf.ecore.util.InternalEList;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IAssociationRole;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IClassifierRole;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ICollaboration;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ICombinedFragment;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IConstraint;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IExecutionOccurrence;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IInteractionOccurrence;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMessage;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.P_MessageHandlerType;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>ICollaboration</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * </p>
+ * <ul>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.ICollaborationImpl#getId <em>Id</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.ICollaborationImpl#getClassifierRoles <em>Classifier Roles</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.ICollaborationImpl#getMessages <em>Messages</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.ICollaborationImpl#getAnnotations <em>Annotations</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.ICollaborationImpl#getAssociationRoles <em>Association Roles</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.ICollaborationImpl#getModifiedTimeWeak <em>Modified Time Weak</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.ICollaborationImpl#getCombinedFragments <em>Combined Fragments</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.ICollaborationImpl#getP_MessageHandler <em>PMessage Handler</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.ICollaborationImpl#getInteractionOccurrences <em>Interaction Occurrences</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.ICollaborationImpl#getExecutionOccurrences <em>Execution Occurrences</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.ICollaborationImpl#getObjectCreation <em>Object Creation</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.ICollaborationImpl#getUmlDependencyID <em>Uml Dependency ID</em>}</li>
+ * </ul>
+ *
+ * @generated
+ */
+public class ICollaborationImpl extends IModelElementImpl implements ICollaboration {
+	/**
+	 * The default value of the '{@link #getId() <em>Id</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getId()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String ID_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getId() <em>Id</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getId()
+	 * @generated
+	 * @ordered
+	 */
+	protected String id = ID_EDEFAULT;
+
+	/**
+	 * The cached value of the '{@link #getClassifierRoles() <em>Classifier Roles</em>}' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getClassifierRoles()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<IClassifierRole> classifierRoles;
+
+	/**
+	 * The cached value of the '{@link #getMessages() <em>Messages</em>}' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getMessages()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<IMessage> messages;
+
+	/**
+	 * The cached value of the '{@link #getAnnotations() <em>Annotations</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getAnnotations()
+	 * @generated
+	 * @ordered
+	 */
+	protected IConstraint annotations;
+
+	/**
+	 * The cached value of the '{@link #getAssociationRoles() <em>Association Roles</em>}' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getAssociationRoles()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<IAssociationRole> associationRoles;
+
+	/**
+	 * The default value of the '{@link #getModifiedTimeWeak() <em>Modified Time Weak</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getModifiedTimeWeak()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String MODIFIED_TIME_WEAK_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getModifiedTimeWeak() <em>Modified Time Weak</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getModifiedTimeWeak()
+	 * @generated
+	 * @ordered
+	 */
+	protected String modifiedTimeWeak = MODIFIED_TIME_WEAK_EDEFAULT;
+
+	/**
+	 * The cached value of the '{@link #getCombinedFragments() <em>Combined Fragments</em>}' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getCombinedFragments()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<ICombinedFragment> combinedFragments;
+
+	/**
+	 * The cached value of the '{@link #getP_MessageHandler() <em>PMessage Handler</em>}' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getP_MessageHandler()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<P_MessageHandlerType> p_MessageHandler;
+
+	/**
+	 * The cached value of the '{@link #getInteractionOccurrences() <em>Interaction Occurrences</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getInteractionOccurrences()
+	 * @generated
+	 * @ordered
+	 */
+	protected IInteractionOccurrence interactionOccurrences;
+
+	/**
+	 * The cached value of the '{@link #getExecutionOccurrences() <em>Execution Occurrences</em>}' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getExecutionOccurrences()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<IExecutionOccurrence> executionOccurrences;
+
+	/**
+	 * The default value of the '{@link #getObjectCreation() <em>Object Creation</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getObjectCreation()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String OBJECT_CREATION_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getObjectCreation() <em>Object Creation</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getObjectCreation()
+	 * @generated
+	 * @ordered
+	 */
+	protected String objectCreation = OBJECT_CREATION_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getUmlDependencyID() <em>Uml Dependency ID</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getUmlDependencyID()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String UML_DEPENDENCY_ID_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getUmlDependencyID() <em>Uml Dependency ID</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getUmlDependencyID()
+	 * @generated
+	 * @ordered
+	 */
+	protected String umlDependencyID = UML_DEPENDENCY_ID_EDEFAULT;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected ICollaborationImpl() {
+		super();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EClass eStaticClass() {
+		return UMLRpyPackage.eINSTANCE.getICollaboration();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getId() {
+		return id;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setId(String newId) {
+		String oldId = id;
+		id = newId;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.ICOLLABORATION__ID, oldId, id));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<IClassifierRole> getClassifierRoles() {
+		if (classifierRoles == null) {
+			classifierRoles = new EObjectContainmentEList.Resolving<IClassifierRole>(IClassifierRole.class, this, UMLRpyPackage.ICOLLABORATION__CLASSIFIER_ROLES);
+		}
+		return classifierRoles;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<IMessage> getMessages() {
+		if (messages == null) {
+			messages = new EObjectContainmentEList.Resolving<IMessage>(IMessage.class, this, UMLRpyPackage.ICOLLABORATION__MESSAGES);
+		}
+		return messages;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IConstraint getAnnotations() {
+		if (annotations != null && annotations.eIsProxy()) {
+			InternalEObject oldAnnotations = (InternalEObject)annotations;
+			annotations = (IConstraint)eResolveProxy(oldAnnotations);
+			if (annotations != oldAnnotations) {
+				InternalEObject newAnnotations = (InternalEObject)annotations;
+				NotificationChain msgs = oldAnnotations.eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.ICOLLABORATION__ANNOTATIONS, null, null);
+				if (newAnnotations.eInternalContainer() == null) {
+					msgs = newAnnotations.eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.ICOLLABORATION__ANNOTATIONS, null, msgs);
+				}
+				if (msgs != null) msgs.dispatch();
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.ICOLLABORATION__ANNOTATIONS, oldAnnotations, annotations));
+			}
+		}
+		return annotations;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IConstraint basicGetAnnotations() {
+		return annotations;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public NotificationChain basicSetAnnotations(IConstraint newAnnotations, NotificationChain msgs) {
+		IConstraint oldAnnotations = annotations;
+		annotations = newAnnotations;
+		if (eNotificationRequired()) {
+			ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, UMLRpyPackage.ICOLLABORATION__ANNOTATIONS, oldAnnotations, newAnnotations);
+			if (msgs == null) msgs = notification; else msgs.add(notification);
+		}
+		return msgs;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setAnnotations(IConstraint newAnnotations) {
+		if (newAnnotations != annotations) {
+			NotificationChain msgs = null;
+			if (annotations != null)
+				msgs = ((InternalEObject)annotations).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.ICOLLABORATION__ANNOTATIONS, null, msgs);
+			if (newAnnotations != null)
+				msgs = ((InternalEObject)newAnnotations).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.ICOLLABORATION__ANNOTATIONS, null, msgs);
+			msgs = basicSetAnnotations(newAnnotations, msgs);
+			if (msgs != null) msgs.dispatch();
+		}
+		else if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.ICOLLABORATION__ANNOTATIONS, newAnnotations, newAnnotations));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<IAssociationRole> getAssociationRoles() {
+		if (associationRoles == null) {
+			associationRoles = new EObjectContainmentEList.Resolving<IAssociationRole>(IAssociationRole.class, this, UMLRpyPackage.ICOLLABORATION__ASSOCIATION_ROLES);
+		}
+		return associationRoles;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getModifiedTimeWeak() {
+		return modifiedTimeWeak;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setModifiedTimeWeak(String newModifiedTimeWeak) {
+		String oldModifiedTimeWeak = modifiedTimeWeak;
+		modifiedTimeWeak = newModifiedTimeWeak;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.ICOLLABORATION__MODIFIED_TIME_WEAK, oldModifiedTimeWeak, modifiedTimeWeak));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<ICombinedFragment> getCombinedFragments() {
+		if (combinedFragments == null) {
+			combinedFragments = new EObjectContainmentEList.Resolving<ICombinedFragment>(ICombinedFragment.class, this, UMLRpyPackage.ICOLLABORATION__COMBINED_FRAGMENTS);
+		}
+		return combinedFragments;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<P_MessageHandlerType> getP_MessageHandler() {
+		if (p_MessageHandler == null) {
+			p_MessageHandler = new EObjectContainmentEList.Resolving<P_MessageHandlerType>(P_MessageHandlerType.class, this, UMLRpyPackage.ICOLLABORATION__PMESSAGE_HANDLER);
+		}
+		return p_MessageHandler;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IInteractionOccurrence getInteractionOccurrences() {
+		if (interactionOccurrences != null && interactionOccurrences.eIsProxy()) {
+			InternalEObject oldInteractionOccurrences = (InternalEObject)interactionOccurrences;
+			interactionOccurrences = (IInteractionOccurrence)eResolveProxy(oldInteractionOccurrences);
+			if (interactionOccurrences != oldInteractionOccurrences) {
+				InternalEObject newInteractionOccurrences = (InternalEObject)interactionOccurrences;
+				NotificationChain msgs = oldInteractionOccurrences.eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.ICOLLABORATION__INTERACTION_OCCURRENCES, null, null);
+				if (newInteractionOccurrences.eInternalContainer() == null) {
+					msgs = newInteractionOccurrences.eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.ICOLLABORATION__INTERACTION_OCCURRENCES, null, msgs);
+				}
+				if (msgs != null) msgs.dispatch();
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.ICOLLABORATION__INTERACTION_OCCURRENCES, oldInteractionOccurrences, interactionOccurrences));
+			}
+		}
+		return interactionOccurrences;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IInteractionOccurrence basicGetInteractionOccurrences() {
+		return interactionOccurrences;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public NotificationChain basicSetInteractionOccurrences(IInteractionOccurrence newInteractionOccurrences, NotificationChain msgs) {
+		IInteractionOccurrence oldInteractionOccurrences = interactionOccurrences;
+		interactionOccurrences = newInteractionOccurrences;
+		if (eNotificationRequired()) {
+			ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, UMLRpyPackage.ICOLLABORATION__INTERACTION_OCCURRENCES, oldInteractionOccurrences, newInteractionOccurrences);
+			if (msgs == null) msgs = notification; else msgs.add(notification);
+		}
+		return msgs;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setInteractionOccurrences(IInteractionOccurrence newInteractionOccurrences) {
+		if (newInteractionOccurrences != interactionOccurrences) {
+			NotificationChain msgs = null;
+			if (interactionOccurrences != null)
+				msgs = ((InternalEObject)interactionOccurrences).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.ICOLLABORATION__INTERACTION_OCCURRENCES, null, msgs);
+			if (newInteractionOccurrences != null)
+				msgs = ((InternalEObject)newInteractionOccurrences).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.ICOLLABORATION__INTERACTION_OCCURRENCES, null, msgs);
+			msgs = basicSetInteractionOccurrences(newInteractionOccurrences, msgs);
+			if (msgs != null) msgs.dispatch();
+		}
+		else if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.ICOLLABORATION__INTERACTION_OCCURRENCES, newInteractionOccurrences, newInteractionOccurrences));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<IExecutionOccurrence> getExecutionOccurrences() {
+		if (executionOccurrences == null) {
+			executionOccurrences = new EObjectContainmentEList.Resolving<IExecutionOccurrence>(IExecutionOccurrence.class, this, UMLRpyPackage.ICOLLABORATION__EXECUTION_OCCURRENCES);
+		}
+		return executionOccurrences;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getObjectCreation() {
+		return objectCreation;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setObjectCreation(String newObjectCreation) {
+		String oldObjectCreation = objectCreation;
+		objectCreation = newObjectCreation;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.ICOLLABORATION__OBJECT_CREATION, oldObjectCreation, objectCreation));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getUmlDependencyID() {
+		return umlDependencyID;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setUmlDependencyID(String newUmlDependencyID) {
+		String oldUmlDependencyID = umlDependencyID;
+		umlDependencyID = newUmlDependencyID;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.ICOLLABORATION__UML_DEPENDENCY_ID, oldUmlDependencyID, umlDependencyID));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
+		switch (featureID) {
+			case UMLRpyPackage.ICOLLABORATION__CLASSIFIER_ROLES:
+				return ((InternalEList<?>)getClassifierRoles()).basicRemove(otherEnd, msgs);
+			case UMLRpyPackage.ICOLLABORATION__MESSAGES:
+				return ((InternalEList<?>)getMessages()).basicRemove(otherEnd, msgs);
+			case UMLRpyPackage.ICOLLABORATION__ANNOTATIONS:
+				return basicSetAnnotations(null, msgs);
+			case UMLRpyPackage.ICOLLABORATION__ASSOCIATION_ROLES:
+				return ((InternalEList<?>)getAssociationRoles()).basicRemove(otherEnd, msgs);
+			case UMLRpyPackage.ICOLLABORATION__COMBINED_FRAGMENTS:
+				return ((InternalEList<?>)getCombinedFragments()).basicRemove(otherEnd, msgs);
+			case UMLRpyPackage.ICOLLABORATION__PMESSAGE_HANDLER:
+				return ((InternalEList<?>)getP_MessageHandler()).basicRemove(otherEnd, msgs);
+			case UMLRpyPackage.ICOLLABORATION__INTERACTION_OCCURRENCES:
+				return basicSetInteractionOccurrences(null, msgs);
+			case UMLRpyPackage.ICOLLABORATION__EXECUTION_OCCURRENCES:
+				return ((InternalEList<?>)getExecutionOccurrences()).basicRemove(otherEnd, msgs);
+		}
+		return super.eInverseRemove(otherEnd, featureID, msgs);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object eGet(int featureID, boolean resolve, boolean coreType) {
+		switch (featureID) {
+			case UMLRpyPackage.ICOLLABORATION__ID:
+				return getId();
+			case UMLRpyPackage.ICOLLABORATION__CLASSIFIER_ROLES:
+				return getClassifierRoles();
+			case UMLRpyPackage.ICOLLABORATION__MESSAGES:
+				return getMessages();
+			case UMLRpyPackage.ICOLLABORATION__ANNOTATIONS:
+				if (resolve) return getAnnotations();
+				return basicGetAnnotations();
+			case UMLRpyPackage.ICOLLABORATION__ASSOCIATION_ROLES:
+				return getAssociationRoles();
+			case UMLRpyPackage.ICOLLABORATION__MODIFIED_TIME_WEAK:
+				return getModifiedTimeWeak();
+			case UMLRpyPackage.ICOLLABORATION__COMBINED_FRAGMENTS:
+				return getCombinedFragments();
+			case UMLRpyPackage.ICOLLABORATION__PMESSAGE_HANDLER:
+				return getP_MessageHandler();
+			case UMLRpyPackage.ICOLLABORATION__INTERACTION_OCCURRENCES:
+				if (resolve) return getInteractionOccurrences();
+				return basicGetInteractionOccurrences();
+			case UMLRpyPackage.ICOLLABORATION__EXECUTION_OCCURRENCES:
+				return getExecutionOccurrences();
+			case UMLRpyPackage.ICOLLABORATION__OBJECT_CREATION:
+				return getObjectCreation();
+			case UMLRpyPackage.ICOLLABORATION__UML_DEPENDENCY_ID:
+				return getUmlDependencyID();
+		}
+		return super.eGet(featureID, resolve, coreType);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@SuppressWarnings("unchecked")
+	@Override
+	public void eSet(int featureID, Object newValue) {
+		switch (featureID) {
+			case UMLRpyPackage.ICOLLABORATION__ID:
+				setId((String)newValue);
+				return;
+			case UMLRpyPackage.ICOLLABORATION__CLASSIFIER_ROLES:
+				getClassifierRoles().clear();
+				getClassifierRoles().addAll((Collection<? extends IClassifierRole>)newValue);
+				return;
+			case UMLRpyPackage.ICOLLABORATION__MESSAGES:
+				getMessages().clear();
+				getMessages().addAll((Collection<? extends IMessage>)newValue);
+				return;
+			case UMLRpyPackage.ICOLLABORATION__ANNOTATIONS:
+				setAnnotations((IConstraint)newValue);
+				return;
+			case UMLRpyPackage.ICOLLABORATION__ASSOCIATION_ROLES:
+				getAssociationRoles().clear();
+				getAssociationRoles().addAll((Collection<? extends IAssociationRole>)newValue);
+				return;
+			case UMLRpyPackage.ICOLLABORATION__MODIFIED_TIME_WEAK:
+				setModifiedTimeWeak((String)newValue);
+				return;
+			case UMLRpyPackage.ICOLLABORATION__COMBINED_FRAGMENTS:
+				getCombinedFragments().clear();
+				getCombinedFragments().addAll((Collection<? extends ICombinedFragment>)newValue);
+				return;
+			case UMLRpyPackage.ICOLLABORATION__PMESSAGE_HANDLER:
+				getP_MessageHandler().clear();
+				getP_MessageHandler().addAll((Collection<? extends P_MessageHandlerType>)newValue);
+				return;
+			case UMLRpyPackage.ICOLLABORATION__INTERACTION_OCCURRENCES:
+				setInteractionOccurrences((IInteractionOccurrence)newValue);
+				return;
+			case UMLRpyPackage.ICOLLABORATION__EXECUTION_OCCURRENCES:
+				getExecutionOccurrences().clear();
+				getExecutionOccurrences().addAll((Collection<? extends IExecutionOccurrence>)newValue);
+				return;
+			case UMLRpyPackage.ICOLLABORATION__OBJECT_CREATION:
+				setObjectCreation((String)newValue);
+				return;
+			case UMLRpyPackage.ICOLLABORATION__UML_DEPENDENCY_ID:
+				setUmlDependencyID((String)newValue);
+				return;
+		}
+		super.eSet(featureID, newValue);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void eUnset(int featureID) {
+		switch (featureID) {
+			case UMLRpyPackage.ICOLLABORATION__ID:
+				setId(ID_EDEFAULT);
+				return;
+			case UMLRpyPackage.ICOLLABORATION__CLASSIFIER_ROLES:
+				getClassifierRoles().clear();
+				return;
+			case UMLRpyPackage.ICOLLABORATION__MESSAGES:
+				getMessages().clear();
+				return;
+			case UMLRpyPackage.ICOLLABORATION__ANNOTATIONS:
+				setAnnotations((IConstraint)null);
+				return;
+			case UMLRpyPackage.ICOLLABORATION__ASSOCIATION_ROLES:
+				getAssociationRoles().clear();
+				return;
+			case UMLRpyPackage.ICOLLABORATION__MODIFIED_TIME_WEAK:
+				setModifiedTimeWeak(MODIFIED_TIME_WEAK_EDEFAULT);
+				return;
+			case UMLRpyPackage.ICOLLABORATION__COMBINED_FRAGMENTS:
+				getCombinedFragments().clear();
+				return;
+			case UMLRpyPackage.ICOLLABORATION__PMESSAGE_HANDLER:
+				getP_MessageHandler().clear();
+				return;
+			case UMLRpyPackage.ICOLLABORATION__INTERACTION_OCCURRENCES:
+				setInteractionOccurrences((IInteractionOccurrence)null);
+				return;
+			case UMLRpyPackage.ICOLLABORATION__EXECUTION_OCCURRENCES:
+				getExecutionOccurrences().clear();
+				return;
+			case UMLRpyPackage.ICOLLABORATION__OBJECT_CREATION:
+				setObjectCreation(OBJECT_CREATION_EDEFAULT);
+				return;
+			case UMLRpyPackage.ICOLLABORATION__UML_DEPENDENCY_ID:
+				setUmlDependencyID(UML_DEPENDENCY_ID_EDEFAULT);
+				return;
+		}
+		super.eUnset(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public boolean eIsSet(int featureID) {
+		switch (featureID) {
+			case UMLRpyPackage.ICOLLABORATION__ID:
+				return ID_EDEFAULT == null ? id != null : !ID_EDEFAULT.equals(id);
+			case UMLRpyPackage.ICOLLABORATION__CLASSIFIER_ROLES:
+				return classifierRoles != null && !classifierRoles.isEmpty();
+			case UMLRpyPackage.ICOLLABORATION__MESSAGES:
+				return messages != null && !messages.isEmpty();
+			case UMLRpyPackage.ICOLLABORATION__ANNOTATIONS:
+				return annotations != null;
+			case UMLRpyPackage.ICOLLABORATION__ASSOCIATION_ROLES:
+				return associationRoles != null && !associationRoles.isEmpty();
+			case UMLRpyPackage.ICOLLABORATION__MODIFIED_TIME_WEAK:
+				return MODIFIED_TIME_WEAK_EDEFAULT == null ? modifiedTimeWeak != null : !MODIFIED_TIME_WEAK_EDEFAULT.equals(modifiedTimeWeak);
+			case UMLRpyPackage.ICOLLABORATION__COMBINED_FRAGMENTS:
+				return combinedFragments != null && !combinedFragments.isEmpty();
+			case UMLRpyPackage.ICOLLABORATION__PMESSAGE_HANDLER:
+				return p_MessageHandler != null && !p_MessageHandler.isEmpty();
+			case UMLRpyPackage.ICOLLABORATION__INTERACTION_OCCURRENCES:
+				return interactionOccurrences != null;
+			case UMLRpyPackage.ICOLLABORATION__EXECUTION_OCCURRENCES:
+				return executionOccurrences != null && !executionOccurrences.isEmpty();
+			case UMLRpyPackage.ICOLLABORATION__OBJECT_CREATION:
+				return OBJECT_CREATION_EDEFAULT == null ? objectCreation != null : !OBJECT_CREATION_EDEFAULT.equals(objectCreation);
+			case UMLRpyPackage.ICOLLABORATION__UML_DEPENDENCY_ID:
+				return UML_DEPENDENCY_ID_EDEFAULT == null ? umlDependencyID != null : !UML_DEPENDENCY_ID_EDEFAULT.equals(umlDependencyID);
+		}
+		return super.eIsSet(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String toString() {
+		if (eIsProxy()) return super.toString();
+
+		StringBuffer result = new StringBuffer(super.toString());
+		result.append(" (id: "); //$NON-NLS-1$
+		result.append(id);
+		result.append(", modifiedTimeWeak: "); //$NON-NLS-1$
+		result.append(modifiedTimeWeak);
+		result.append(", objectCreation: "); //$NON-NLS-1$
+		result.append(objectCreation);
+		result.append(", umlDependencyID: "); //$NON-NLS-1$
+		result.append(umlDependencyID);
+		result.append(')');
+		return result.toString();
+	}
+
+} //ICollaborationImpl
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/IColorImpl.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/IColorImpl.java
new file mode 100755
index 0000000..46abcd6
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/IColorImpl.java
@@ -0,0 +1,281 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl;
+
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.ecore.EClass;
+
+import org.eclipse.emf.ecore.impl.ENotificationImpl;
+import org.eclipse.emf.ecore.impl.MinimalEObjectImpl;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IColor;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>IColor</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * </p>
+ * <ul>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IColorImpl#getM_fgColor <em>Mfg Color</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IColorImpl#getM_bgColor <em>Mbg Color</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IColorImpl#getM_bgFlag <em>Mbg Flag</em>}</li>
+ * </ul>
+ *
+ * @generated
+ */
+public class IColorImpl extends MinimalEObjectImpl.Container implements IColor {
+	/**
+	 * The default value of the '{@link #getM_fgColor() <em>Mfg Color</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_fgColor()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String MFG_COLOR_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getM_fgColor() <em>Mfg Color</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_fgColor()
+	 * @generated
+	 * @ordered
+	 */
+	protected String m_fgColor = MFG_COLOR_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getM_bgColor() <em>Mbg Color</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_bgColor()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String MBG_COLOR_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getM_bgColor() <em>Mbg Color</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_bgColor()
+	 * @generated
+	 * @ordered
+	 */
+	protected String m_bgColor = MBG_COLOR_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getM_bgFlag() <em>Mbg Flag</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_bgFlag()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String MBG_FLAG_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getM_bgFlag() <em>Mbg Flag</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_bgFlag()
+	 * @generated
+	 * @ordered
+	 */
+	protected String m_bgFlag = MBG_FLAG_EDEFAULT;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected IColorImpl() {
+		super();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EClass eStaticClass() {
+		return UMLRpyPackage.eINSTANCE.getIColor();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getM_fgColor() {
+		return m_fgColor;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_fgColor(String newM_fgColor) {
+		String oldM_fgColor = m_fgColor;
+		m_fgColor = newM_fgColor;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.ICOLOR__MFG_COLOR, oldM_fgColor, m_fgColor));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getM_bgColor() {
+		return m_bgColor;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_bgColor(String newM_bgColor) {
+		String oldM_bgColor = m_bgColor;
+		m_bgColor = newM_bgColor;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.ICOLOR__MBG_COLOR, oldM_bgColor, m_bgColor));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getM_bgFlag() {
+		return m_bgFlag;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_bgFlag(String newM_bgFlag) {
+		String oldM_bgFlag = m_bgFlag;
+		m_bgFlag = newM_bgFlag;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.ICOLOR__MBG_FLAG, oldM_bgFlag, m_bgFlag));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object eGet(int featureID, boolean resolve, boolean coreType) {
+		switch (featureID) {
+			case UMLRpyPackage.ICOLOR__MFG_COLOR:
+				return getM_fgColor();
+			case UMLRpyPackage.ICOLOR__MBG_COLOR:
+				return getM_bgColor();
+			case UMLRpyPackage.ICOLOR__MBG_FLAG:
+				return getM_bgFlag();
+		}
+		return super.eGet(featureID, resolve, coreType);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void eSet(int featureID, Object newValue) {
+		switch (featureID) {
+			case UMLRpyPackage.ICOLOR__MFG_COLOR:
+				setM_fgColor((String)newValue);
+				return;
+			case UMLRpyPackage.ICOLOR__MBG_COLOR:
+				setM_bgColor((String)newValue);
+				return;
+			case UMLRpyPackage.ICOLOR__MBG_FLAG:
+				setM_bgFlag((String)newValue);
+				return;
+		}
+		super.eSet(featureID, newValue);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void eUnset(int featureID) {
+		switch (featureID) {
+			case UMLRpyPackage.ICOLOR__MFG_COLOR:
+				setM_fgColor(MFG_COLOR_EDEFAULT);
+				return;
+			case UMLRpyPackage.ICOLOR__MBG_COLOR:
+				setM_bgColor(MBG_COLOR_EDEFAULT);
+				return;
+			case UMLRpyPackage.ICOLOR__MBG_FLAG:
+				setM_bgFlag(MBG_FLAG_EDEFAULT);
+				return;
+		}
+		super.eUnset(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public boolean eIsSet(int featureID) {
+		switch (featureID) {
+			case UMLRpyPackage.ICOLOR__MFG_COLOR:
+				return MFG_COLOR_EDEFAULT == null ? m_fgColor != null : !MFG_COLOR_EDEFAULT.equals(m_fgColor);
+			case UMLRpyPackage.ICOLOR__MBG_COLOR:
+				return MBG_COLOR_EDEFAULT == null ? m_bgColor != null : !MBG_COLOR_EDEFAULT.equals(m_bgColor);
+			case UMLRpyPackage.ICOLOR__MBG_FLAG:
+				return MBG_FLAG_EDEFAULT == null ? m_bgFlag != null : !MBG_FLAG_EDEFAULT.equals(m_bgFlag);
+		}
+		return super.eIsSet(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String toString() {
+		if (eIsProxy()) return super.toString();
+
+		StringBuffer result = new StringBuffer(super.toString());
+		result.append(" (m_fgColor: "); //$NON-NLS-1$
+		result.append(m_fgColor);
+		result.append(", m_bgColor: "); //$NON-NLS-1$
+		result.append(m_bgColor);
+		result.append(", m_bgFlag: "); //$NON-NLS-1$
+		result.append(m_bgFlag);
+		result.append(')');
+		return result.toString();
+	}
+
+} //IColorImpl
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/ICombinedFragmentImpl.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/ICombinedFragmentImpl.java
new file mode 100755
index 0000000..72d7aaa
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/ICombinedFragmentImpl.java
@@ -0,0 +1,600 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl;
+
+import java.util.Collection;
+
+import org.eclipse.emf.common.notify.Notification;
+import org.eclipse.emf.common.notify.NotificationChain;
+
+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.impl.MinimalEObjectImpl;
+
+import org.eclipse.emf.ecore.util.EObjectContainmentEList;
+import org.eclipse.emf.ecore.util.InternalEList;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ICombinedFragment;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IInteractionOperand;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IStereotype;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITag;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>ICombined Fragment</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * </p>
+ * <ul>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.ICombinedFragmentImpl#getId <em>Id</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.ICombinedFragmentImpl#getMyState <em>My State</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.ICombinedFragmentImpl#getName <em>Name</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.ICombinedFragmentImpl#getModifiedTimeWeak <em>Modified Time Weak</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.ICombinedFragmentImpl#getInteractionOperator <em>Interaction Operator</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.ICombinedFragmentImpl#getInteractionOperands <em>Interaction Operands</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.ICombinedFragmentImpl#getStereotypes <em>Stereotypes</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.ICombinedFragmentImpl#getTags <em>Tags</em>}</li>
+ * </ul>
+ *
+ * @generated
+ */
+public class ICombinedFragmentImpl extends MinimalEObjectImpl.Container implements ICombinedFragment {
+	/**
+	 * The default value of the '{@link #getId() <em>Id</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getId()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String ID_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getId() <em>Id</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getId()
+	 * @generated
+	 * @ordered
+	 */
+	protected String id = ID_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getMyState() <em>My State</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getMyState()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String MY_STATE_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getMyState() <em>My State</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getMyState()
+	 * @generated
+	 * @ordered
+	 */
+	protected String myState = MY_STATE_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getName() <em>Name</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getName()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String NAME_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getName() <em>Name</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getName()
+	 * @generated
+	 * @ordered
+	 */
+	protected String name = NAME_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getModifiedTimeWeak() <em>Modified Time Weak</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getModifiedTimeWeak()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String MODIFIED_TIME_WEAK_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getModifiedTimeWeak() <em>Modified Time Weak</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getModifiedTimeWeak()
+	 * @generated
+	 * @ordered
+	 */
+	protected String modifiedTimeWeak = MODIFIED_TIME_WEAK_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getInteractionOperator() <em>Interaction Operator</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getInteractionOperator()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String INTERACTION_OPERATOR_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getInteractionOperator() <em>Interaction Operator</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getInteractionOperator()
+	 * @generated
+	 * @ordered
+	 */
+	protected String interactionOperator = INTERACTION_OPERATOR_EDEFAULT;
+
+	/**
+	 * The cached value of the '{@link #getInteractionOperands() <em>Interaction Operands</em>}' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getInteractionOperands()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<IInteractionOperand> interactionOperands;
+
+	/**
+	 * The cached value of the '{@link #getStereotypes() <em>Stereotypes</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getStereotypes()
+	 * @generated
+	 * @ordered
+	 */
+	protected IStereotype stereotypes;
+
+	/**
+	 * The cached value of the '{@link #getTags() <em>Tags</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getTags()
+	 * @generated
+	 * @ordered
+	 */
+	protected ITag tags;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected ICombinedFragmentImpl() {
+		super();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EClass eStaticClass() {
+		return UMLRpyPackage.eINSTANCE.getICombinedFragment();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getId() {
+		return id;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setId(String newId) {
+		String oldId = id;
+		id = newId;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.ICOMBINED_FRAGMENT__ID, oldId, id));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getMyState() {
+		return myState;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setMyState(String newMyState) {
+		String oldMyState = myState;
+		myState = newMyState;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.ICOMBINED_FRAGMENT__MY_STATE, oldMyState, myState));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getName() {
+		return name;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setName(String newName) {
+		String oldName = name;
+		name = newName;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.ICOMBINED_FRAGMENT__NAME, oldName, name));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getModifiedTimeWeak() {
+		return modifiedTimeWeak;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setModifiedTimeWeak(String newModifiedTimeWeak) {
+		String oldModifiedTimeWeak = modifiedTimeWeak;
+		modifiedTimeWeak = newModifiedTimeWeak;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.ICOMBINED_FRAGMENT__MODIFIED_TIME_WEAK, oldModifiedTimeWeak, modifiedTimeWeak));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getInteractionOperator() {
+		return interactionOperator;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setInteractionOperator(String newInteractionOperator) {
+		String oldInteractionOperator = interactionOperator;
+		interactionOperator = newInteractionOperator;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.ICOMBINED_FRAGMENT__INTERACTION_OPERATOR, oldInteractionOperator, interactionOperator));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<IInteractionOperand> getInteractionOperands() {
+		if (interactionOperands == null) {
+			interactionOperands = new EObjectContainmentEList.Resolving<IInteractionOperand>(IInteractionOperand.class, this, UMLRpyPackage.ICOMBINED_FRAGMENT__INTERACTION_OPERANDS);
+		}
+		return interactionOperands;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IStereotype getStereotypes() {
+		if (stereotypes != null && stereotypes.eIsProxy()) {
+			InternalEObject oldStereotypes = (InternalEObject)stereotypes;
+			stereotypes = (IStereotype)eResolveProxy(oldStereotypes);
+			if (stereotypes != oldStereotypes) {
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.ICOMBINED_FRAGMENT__STEREOTYPES, oldStereotypes, stereotypes));
+			}
+		}
+		return stereotypes;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IStereotype basicGetStereotypes() {
+		return stereotypes;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setStereotypes(IStereotype newStereotypes) {
+		IStereotype oldStereotypes = stereotypes;
+		stereotypes = newStereotypes;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.ICOMBINED_FRAGMENT__STEREOTYPES, oldStereotypes, stereotypes));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public ITag getTags() {
+		if (tags != null && tags.eIsProxy()) {
+			InternalEObject oldTags = (InternalEObject)tags;
+			tags = (ITag)eResolveProxy(oldTags);
+			if (tags != oldTags) {
+				InternalEObject newTags = (InternalEObject)tags;
+				NotificationChain msgs = oldTags.eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.ICOMBINED_FRAGMENT__TAGS, null, null);
+				if (newTags.eInternalContainer() == null) {
+					msgs = newTags.eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.ICOMBINED_FRAGMENT__TAGS, null, msgs);
+				}
+				if (msgs != null) msgs.dispatch();
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.ICOMBINED_FRAGMENT__TAGS, oldTags, tags));
+			}
+		}
+		return tags;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public ITag basicGetTags() {
+		return tags;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public NotificationChain basicSetTags(ITag newTags, NotificationChain msgs) {
+		ITag oldTags = tags;
+		tags = newTags;
+		if (eNotificationRequired()) {
+			ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, UMLRpyPackage.ICOMBINED_FRAGMENT__TAGS, oldTags, newTags);
+			if (msgs == null) msgs = notification; else msgs.add(notification);
+		}
+		return msgs;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setTags(ITag newTags) {
+		if (newTags != tags) {
+			NotificationChain msgs = null;
+			if (tags != null)
+				msgs = ((InternalEObject)tags).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.ICOMBINED_FRAGMENT__TAGS, null, msgs);
+			if (newTags != null)
+				msgs = ((InternalEObject)newTags).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.ICOMBINED_FRAGMENT__TAGS, null, msgs);
+			msgs = basicSetTags(newTags, msgs);
+			if (msgs != null) msgs.dispatch();
+		}
+		else if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.ICOMBINED_FRAGMENT__TAGS, newTags, newTags));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
+		switch (featureID) {
+			case UMLRpyPackage.ICOMBINED_FRAGMENT__INTERACTION_OPERANDS:
+				return ((InternalEList<?>)getInteractionOperands()).basicRemove(otherEnd, msgs);
+			case UMLRpyPackage.ICOMBINED_FRAGMENT__TAGS:
+				return basicSetTags(null, msgs);
+		}
+		return super.eInverseRemove(otherEnd, featureID, msgs);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object eGet(int featureID, boolean resolve, boolean coreType) {
+		switch (featureID) {
+			case UMLRpyPackage.ICOMBINED_FRAGMENT__ID:
+				return getId();
+			case UMLRpyPackage.ICOMBINED_FRAGMENT__MY_STATE:
+				return getMyState();
+			case UMLRpyPackage.ICOMBINED_FRAGMENT__NAME:
+				return getName();
+			case UMLRpyPackage.ICOMBINED_FRAGMENT__MODIFIED_TIME_WEAK:
+				return getModifiedTimeWeak();
+			case UMLRpyPackage.ICOMBINED_FRAGMENT__INTERACTION_OPERATOR:
+				return getInteractionOperator();
+			case UMLRpyPackage.ICOMBINED_FRAGMENT__INTERACTION_OPERANDS:
+				return getInteractionOperands();
+			case UMLRpyPackage.ICOMBINED_FRAGMENT__STEREOTYPES:
+				if (resolve) return getStereotypes();
+				return basicGetStereotypes();
+			case UMLRpyPackage.ICOMBINED_FRAGMENT__TAGS:
+				if (resolve) return getTags();
+				return basicGetTags();
+		}
+		return super.eGet(featureID, resolve, coreType);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@SuppressWarnings("unchecked")
+	@Override
+	public void eSet(int featureID, Object newValue) {
+		switch (featureID) {
+			case UMLRpyPackage.ICOMBINED_FRAGMENT__ID:
+				setId((String)newValue);
+				return;
+			case UMLRpyPackage.ICOMBINED_FRAGMENT__MY_STATE:
+				setMyState((String)newValue);
+				return;
+			case UMLRpyPackage.ICOMBINED_FRAGMENT__NAME:
+				setName((String)newValue);
+				return;
+			case UMLRpyPackage.ICOMBINED_FRAGMENT__MODIFIED_TIME_WEAK:
+				setModifiedTimeWeak((String)newValue);
+				return;
+			case UMLRpyPackage.ICOMBINED_FRAGMENT__INTERACTION_OPERATOR:
+				setInteractionOperator((String)newValue);
+				return;
+			case UMLRpyPackage.ICOMBINED_FRAGMENT__INTERACTION_OPERANDS:
+				getInteractionOperands().clear();
+				getInteractionOperands().addAll((Collection<? extends IInteractionOperand>)newValue);
+				return;
+			case UMLRpyPackage.ICOMBINED_FRAGMENT__STEREOTYPES:
+				setStereotypes((IStereotype)newValue);
+				return;
+			case UMLRpyPackage.ICOMBINED_FRAGMENT__TAGS:
+				setTags((ITag)newValue);
+				return;
+		}
+		super.eSet(featureID, newValue);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void eUnset(int featureID) {
+		switch (featureID) {
+			case UMLRpyPackage.ICOMBINED_FRAGMENT__ID:
+				setId(ID_EDEFAULT);
+				return;
+			case UMLRpyPackage.ICOMBINED_FRAGMENT__MY_STATE:
+				setMyState(MY_STATE_EDEFAULT);
+				return;
+			case UMLRpyPackage.ICOMBINED_FRAGMENT__NAME:
+				setName(NAME_EDEFAULT);
+				return;
+			case UMLRpyPackage.ICOMBINED_FRAGMENT__MODIFIED_TIME_WEAK:
+				setModifiedTimeWeak(MODIFIED_TIME_WEAK_EDEFAULT);
+				return;
+			case UMLRpyPackage.ICOMBINED_FRAGMENT__INTERACTION_OPERATOR:
+				setInteractionOperator(INTERACTION_OPERATOR_EDEFAULT);
+				return;
+			case UMLRpyPackage.ICOMBINED_FRAGMENT__INTERACTION_OPERANDS:
+				getInteractionOperands().clear();
+				return;
+			case UMLRpyPackage.ICOMBINED_FRAGMENT__STEREOTYPES:
+				setStereotypes((IStereotype)null);
+				return;
+			case UMLRpyPackage.ICOMBINED_FRAGMENT__TAGS:
+				setTags((ITag)null);
+				return;
+		}
+		super.eUnset(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public boolean eIsSet(int featureID) {
+		switch (featureID) {
+			case UMLRpyPackage.ICOMBINED_FRAGMENT__ID:
+				return ID_EDEFAULT == null ? id != null : !ID_EDEFAULT.equals(id);
+			case UMLRpyPackage.ICOMBINED_FRAGMENT__MY_STATE:
+				return MY_STATE_EDEFAULT == null ? myState != null : !MY_STATE_EDEFAULT.equals(myState);
+			case UMLRpyPackage.ICOMBINED_FRAGMENT__NAME:
+				return NAME_EDEFAULT == null ? name != null : !NAME_EDEFAULT.equals(name);
+			case UMLRpyPackage.ICOMBINED_FRAGMENT__MODIFIED_TIME_WEAK:
+				return MODIFIED_TIME_WEAK_EDEFAULT == null ? modifiedTimeWeak != null : !MODIFIED_TIME_WEAK_EDEFAULT.equals(modifiedTimeWeak);
+			case UMLRpyPackage.ICOMBINED_FRAGMENT__INTERACTION_OPERATOR:
+				return INTERACTION_OPERATOR_EDEFAULT == null ? interactionOperator != null : !INTERACTION_OPERATOR_EDEFAULT.equals(interactionOperator);
+			case UMLRpyPackage.ICOMBINED_FRAGMENT__INTERACTION_OPERANDS:
+				return interactionOperands != null && !interactionOperands.isEmpty();
+			case UMLRpyPackage.ICOMBINED_FRAGMENT__STEREOTYPES:
+				return stereotypes != null;
+			case UMLRpyPackage.ICOMBINED_FRAGMENT__TAGS:
+				return tags != null;
+		}
+		return super.eIsSet(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String toString() {
+		if (eIsProxy()) return super.toString();
+
+		StringBuffer result = new StringBuffer(super.toString());
+		result.append(" (id: "); //$NON-NLS-1$
+		result.append(id);
+		result.append(", myState: "); //$NON-NLS-1$
+		result.append(myState);
+		result.append(", name: "); //$NON-NLS-1$
+		result.append(name);
+		result.append(", modifiedTimeWeak: "); //$NON-NLS-1$
+		result.append(modifiedTimeWeak);
+		result.append(", interactionOperator: "); //$NON-NLS-1$
+		result.append(interactionOperator);
+		result.append(')');
+		return result.toString();
+	}
+
+} //ICombinedFragmentImpl
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/ICommentImpl.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/ICommentImpl.java
new file mode 100755
index 0000000..17f38bc
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/ICommentImpl.java
@@ -0,0 +1,792 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl;
+
+import java.util.Collection;
+
+import org.eclipse.emf.common.notify.Notification;
+import org.eclipse.emf.common.notify.NotificationChain;
+
+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.EDataTypeEList;
+import org.eclipse.emf.ecore.util.EObjectContainmentEList;
+import org.eclipse.emf.ecore.util.InternalEList;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IAnchor;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IClassifier;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IComment;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IDependency;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IDiagram;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMHyperLink;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IPropertyContainer;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ValueType;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>IComment</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * </p>
+ * <ul>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.ICommentImpl#getModifiedTimeWeak <em>Modified Time Weak</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.ICommentImpl#getId <em>Id</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.ICommentImpl#getMyState <em>My State</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.ICommentImpl#getName <em>Name</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.ICommentImpl#getHyperLinks <em>Hyper Links</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.ICommentImpl#getAnchors <em>Anchors</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.ICommentImpl#getDependencies <em>Dependencies</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.ICommentImpl#getStereotypes <em>Stereotypes</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.ICommentImpl#getLastID <em>Last ID</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.ICommentImpl#getCodeUpdateCGTime <em>Code Update CG Time</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.ICommentImpl#getTheMainDiagram <em>The Main Diagram</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.ICommentImpl#getProperties <em>Properties</em>}</li>
+ * </ul>
+ *
+ * @generated
+ */
+public class ICommentImpl extends IAnnotationImpl implements IComment {
+	/**
+	 * The cached value of the '{@link #getModifiedTimeWeak() <em>Modified Time Weak</em>}' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getModifiedTimeWeak()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<String> modifiedTimeWeak;
+
+	/**
+	 * The default value of the '{@link #getId() <em>Id</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getId()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String ID_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getId() <em>Id</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getId()
+	 * @generated
+	 * @ordered
+	 */
+	protected String id = ID_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getMyState() <em>My State</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getMyState()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String MY_STATE_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getMyState() <em>My State</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getMyState()
+	 * @generated
+	 * @ordered
+	 */
+	protected String myState = MY_STATE_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getName() <em>Name</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getName()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String NAME_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getName() <em>Name</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getName()
+	 * @generated
+	 * @ordered
+	 */
+	protected String name = NAME_EDEFAULT;
+
+	/**
+	 * The cached value of the '{@link #getHyperLinks() <em>Hyper Links</em>}' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getHyperLinks()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<IMHyperLink> hyperLinks;
+
+	/**
+	 * The cached value of the '{@link #getAnchors() <em>Anchors</em>}' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getAnchors()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<IAnchor> anchors;
+
+	/**
+	 * The cached value of the '{@link #getDependencies() <em>Dependencies</em>}' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getDependencies()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<IDependency> dependencies;
+
+	/**
+	 * The cached value of the '{@link #getStereotypes() <em>Stereotypes</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getStereotypes()
+	 * @generated
+	 * @ordered
+	 */
+	protected IClassifier stereotypes;
+
+	/**
+	 * The default value of the '{@link #getLastID() <em>Last ID</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getLastID()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String LAST_ID_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getLastID() <em>Last ID</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getLastID()
+	 * @generated
+	 * @ordered
+	 */
+	protected String lastID = LAST_ID_EDEFAULT;
+
+	/**
+	 * The cached value of the '{@link #getCodeUpdateCGTime() <em>Code Update CG Time</em>}' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getCodeUpdateCGTime()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<String> codeUpdateCGTime;
+
+	/**
+	 * The cached value of the '{@link #getTheMainDiagram() <em>The Main Diagram</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getTheMainDiagram()
+	 * @generated
+	 * @ordered
+	 */
+	protected IDiagram theMainDiagram;
+
+	/**
+	 * The cached value of the '{@link #getProperties() <em>Properties</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getProperties()
+	 * @generated
+	 * @ordered
+	 */
+	protected IPropertyContainer properties;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected ICommentImpl() {
+		super();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EClass eStaticClass() {
+		return UMLRpyPackage.eINSTANCE.getIComment();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<String> getModifiedTimeWeak() {
+		if (modifiedTimeWeak == null) {
+			modifiedTimeWeak = new EDataTypeEList<String>(String.class, this, UMLRpyPackage.ICOMMENT__MODIFIED_TIME_WEAK);
+		}
+		return modifiedTimeWeak;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getId() {
+		return id;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setId(String newId) {
+		String oldId = id;
+		id = newId;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.ICOMMENT__ID, oldId, id));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getMyState() {
+		return myState;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setMyState(String newMyState) {
+		String oldMyState = myState;
+		myState = newMyState;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.ICOMMENT__MY_STATE, oldMyState, myState));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getName() {
+		return name;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setName(String newName) {
+		String oldName = name;
+		name = newName;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.ICOMMENT__NAME, oldName, name));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<IMHyperLink> getHyperLinks() {
+		if (hyperLinks == null) {
+			hyperLinks = new EObjectContainmentEList.Resolving<IMHyperLink>(IMHyperLink.class, this, UMLRpyPackage.ICOMMENT__HYPER_LINKS);
+		}
+		return hyperLinks;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<IAnchor> getAnchors() {
+		if (anchors == null) {
+			anchors = new EObjectContainmentEList.Resolving<IAnchor>(IAnchor.class, this, UMLRpyPackage.ICOMMENT__ANCHORS);
+		}
+		return anchors;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<IDependency> getDependencies() {
+		if (dependencies == null) {
+			dependencies = new EObjectContainmentEList.Resolving<IDependency>(IDependency.class, this, UMLRpyPackage.ICOMMENT__DEPENDENCIES);
+		}
+		return dependencies;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IClassifier getStereotypes() {
+		if (stereotypes != null && stereotypes.eIsProxy()) {
+			InternalEObject oldStereotypes = (InternalEObject)stereotypes;
+			stereotypes = (IClassifier)eResolveProxy(oldStereotypes);
+			if (stereotypes != oldStereotypes) {
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.ICOMMENT__STEREOTYPES, oldStereotypes, stereotypes));
+			}
+		}
+		return stereotypes;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IClassifier basicGetStereotypes() {
+		return stereotypes;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setStereotypes(IClassifier newStereotypes) {
+		IClassifier oldStereotypes = stereotypes;
+		stereotypes = newStereotypes;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.ICOMMENT__STEREOTYPES, oldStereotypes, stereotypes));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getLastID() {
+		return lastID;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setLastID(String newLastID) {
+		String oldLastID = lastID;
+		lastID = newLastID;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.ICOMMENT__LAST_ID, oldLastID, lastID));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<String> getCodeUpdateCGTime() {
+		if (codeUpdateCGTime == null) {
+			codeUpdateCGTime = new EDataTypeEList<String>(String.class, this, UMLRpyPackage.ICOMMENT__CODE_UPDATE_CG_TIME);
+		}
+		return codeUpdateCGTime;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IDiagram getTheMainDiagram() {
+		if (theMainDiagram != null && theMainDiagram.eIsProxy()) {
+			InternalEObject oldTheMainDiagram = (InternalEObject)theMainDiagram;
+			theMainDiagram = (IDiagram)eResolveProxy(oldTheMainDiagram);
+			if (theMainDiagram != oldTheMainDiagram) {
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.ICOMMENT__THE_MAIN_DIAGRAM, oldTheMainDiagram, theMainDiagram));
+			}
+		}
+		return theMainDiagram;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IDiagram basicGetTheMainDiagram() {
+		return theMainDiagram;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setTheMainDiagram(IDiagram newTheMainDiagram) {
+		IDiagram oldTheMainDiagram = theMainDiagram;
+		theMainDiagram = newTheMainDiagram;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.ICOMMENT__THE_MAIN_DIAGRAM, oldTheMainDiagram, theMainDiagram));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IPropertyContainer getProperties() {
+		if (properties != null && properties.eIsProxy()) {
+			InternalEObject oldProperties = (InternalEObject)properties;
+			properties = (IPropertyContainer)eResolveProxy(oldProperties);
+			if (properties != oldProperties) {
+				InternalEObject newProperties = (InternalEObject)properties;
+				NotificationChain msgs = oldProperties.eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.ICOMMENT__PROPERTIES, null, null);
+				if (newProperties.eInternalContainer() == null) {
+					msgs = newProperties.eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.ICOMMENT__PROPERTIES, null, msgs);
+				}
+				if (msgs != null) msgs.dispatch();
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.ICOMMENT__PROPERTIES, oldProperties, properties));
+			}
+		}
+		return properties;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IPropertyContainer basicGetProperties() {
+		return properties;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public NotificationChain basicSetProperties(IPropertyContainer newProperties, NotificationChain msgs) {
+		IPropertyContainer oldProperties = properties;
+		properties = newProperties;
+		if (eNotificationRequired()) {
+			ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, UMLRpyPackage.ICOMMENT__PROPERTIES, oldProperties, newProperties);
+			if (msgs == null) msgs = notification; else msgs.add(notification);
+		}
+		return msgs;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setProperties(IPropertyContainer newProperties) {
+		if (newProperties != properties) {
+			NotificationChain msgs = null;
+			if (properties != null)
+				msgs = ((InternalEObject)properties).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.ICOMMENT__PROPERTIES, null, msgs);
+			if (newProperties != null)
+				msgs = ((InternalEObject)newProperties).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.ICOMMENT__PROPERTIES, null, msgs);
+			msgs = basicSetProperties(newProperties, msgs);
+			if (msgs != null) msgs.dispatch();
+		}
+		else if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.ICOMMENT__PROPERTIES, newProperties, newProperties));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
+		switch (featureID) {
+			case UMLRpyPackage.ICOMMENT__HYPER_LINKS:
+				return ((InternalEList<?>)getHyperLinks()).basicRemove(otherEnd, msgs);
+			case UMLRpyPackage.ICOMMENT__ANCHORS:
+				return ((InternalEList<?>)getAnchors()).basicRemove(otherEnd, msgs);
+			case UMLRpyPackage.ICOMMENT__DEPENDENCIES:
+				return ((InternalEList<?>)getDependencies()).basicRemove(otherEnd, msgs);
+			case UMLRpyPackage.ICOMMENT__PROPERTIES:
+				return basicSetProperties(null, msgs);
+		}
+		return super.eInverseRemove(otherEnd, featureID, msgs);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object eGet(int featureID, boolean resolve, boolean coreType) {
+		switch (featureID) {
+			case UMLRpyPackage.ICOMMENT__MODIFIED_TIME_WEAK:
+				return getModifiedTimeWeak();
+			case UMLRpyPackage.ICOMMENT__ID:
+				return getId();
+			case UMLRpyPackage.ICOMMENT__MY_STATE:
+				return getMyState();
+			case UMLRpyPackage.ICOMMENT__NAME:
+				return getName();
+			case UMLRpyPackage.ICOMMENT__HYPER_LINKS:
+				return getHyperLinks();
+			case UMLRpyPackage.ICOMMENT__ANCHORS:
+				return getAnchors();
+			case UMLRpyPackage.ICOMMENT__DEPENDENCIES:
+				return getDependencies();
+			case UMLRpyPackage.ICOMMENT__STEREOTYPES:
+				if (resolve) return getStereotypes();
+				return basicGetStereotypes();
+			case UMLRpyPackage.ICOMMENT__LAST_ID:
+				return getLastID();
+			case UMLRpyPackage.ICOMMENT__CODE_UPDATE_CG_TIME:
+				return getCodeUpdateCGTime();
+			case UMLRpyPackage.ICOMMENT__THE_MAIN_DIAGRAM:
+				if (resolve) return getTheMainDiagram();
+				return basicGetTheMainDiagram();
+			case UMLRpyPackage.ICOMMENT__PROPERTIES:
+				if (resolve) return getProperties();
+				return basicGetProperties();
+		}
+		return super.eGet(featureID, resolve, coreType);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@SuppressWarnings("unchecked")
+	@Override
+	public void eSet(int featureID, Object newValue) {
+		switch (featureID) {
+			case UMLRpyPackage.ICOMMENT__MODIFIED_TIME_WEAK:
+				getModifiedTimeWeak().clear();
+				getModifiedTimeWeak().addAll((Collection<? extends String>)newValue);
+				return;
+			case UMLRpyPackage.ICOMMENT__ID:
+				setId((String)newValue);
+				return;
+			case UMLRpyPackage.ICOMMENT__MY_STATE:
+				setMyState((String)newValue);
+				return;
+			case UMLRpyPackage.ICOMMENT__NAME:
+				setName((String)newValue);
+				return;
+			case UMLRpyPackage.ICOMMENT__HYPER_LINKS:
+				getHyperLinks().clear();
+				getHyperLinks().addAll((Collection<? extends IMHyperLink>)newValue);
+				return;
+			case UMLRpyPackage.ICOMMENT__ANCHORS:
+				getAnchors().clear();
+				getAnchors().addAll((Collection<? extends IAnchor>)newValue);
+				return;
+			case UMLRpyPackage.ICOMMENT__DEPENDENCIES:
+				getDependencies().clear();
+				getDependencies().addAll((Collection<? extends IDependency>)newValue);
+				return;
+			case UMLRpyPackage.ICOMMENT__STEREOTYPES:
+				setStereotypes((IClassifier)newValue);
+				return;
+			case UMLRpyPackage.ICOMMENT__LAST_ID:
+				setLastID((String)newValue);
+				return;
+			case UMLRpyPackage.ICOMMENT__CODE_UPDATE_CG_TIME:
+				getCodeUpdateCGTime().clear();
+				getCodeUpdateCGTime().addAll((Collection<? extends String>)newValue);
+				return;
+			case UMLRpyPackage.ICOMMENT__THE_MAIN_DIAGRAM:
+				setTheMainDiagram((IDiagram)newValue);
+				return;
+			case UMLRpyPackage.ICOMMENT__PROPERTIES:
+				setProperties((IPropertyContainer)newValue);
+				return;
+		}
+		super.eSet(featureID, newValue);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void eUnset(int featureID) {
+		switch (featureID) {
+			case UMLRpyPackage.ICOMMENT__MODIFIED_TIME_WEAK:
+				getModifiedTimeWeak().clear();
+				return;
+			case UMLRpyPackage.ICOMMENT__ID:
+				setId(ID_EDEFAULT);
+				return;
+			case UMLRpyPackage.ICOMMENT__MY_STATE:
+				setMyState(MY_STATE_EDEFAULT);
+				return;
+			case UMLRpyPackage.ICOMMENT__NAME:
+				setName(NAME_EDEFAULT);
+				return;
+			case UMLRpyPackage.ICOMMENT__HYPER_LINKS:
+				getHyperLinks().clear();
+				return;
+			case UMLRpyPackage.ICOMMENT__ANCHORS:
+				getAnchors().clear();
+				return;
+			case UMLRpyPackage.ICOMMENT__DEPENDENCIES:
+				getDependencies().clear();
+				return;
+			case UMLRpyPackage.ICOMMENT__STEREOTYPES:
+				setStereotypes((IClassifier)null);
+				return;
+			case UMLRpyPackage.ICOMMENT__LAST_ID:
+				setLastID(LAST_ID_EDEFAULT);
+				return;
+			case UMLRpyPackage.ICOMMENT__CODE_UPDATE_CG_TIME:
+				getCodeUpdateCGTime().clear();
+				return;
+			case UMLRpyPackage.ICOMMENT__THE_MAIN_DIAGRAM:
+				setTheMainDiagram((IDiagram)null);
+				return;
+			case UMLRpyPackage.ICOMMENT__PROPERTIES:
+				setProperties((IPropertyContainer)null);
+				return;
+		}
+		super.eUnset(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public boolean eIsSet(int featureID) {
+		switch (featureID) {
+			case UMLRpyPackage.ICOMMENT__MODIFIED_TIME_WEAK:
+				return modifiedTimeWeak != null && !modifiedTimeWeak.isEmpty();
+			case UMLRpyPackage.ICOMMENT__ID:
+				return ID_EDEFAULT == null ? id != null : !ID_EDEFAULT.equals(id);
+			case UMLRpyPackage.ICOMMENT__MY_STATE:
+				return MY_STATE_EDEFAULT == null ? myState != null : !MY_STATE_EDEFAULT.equals(myState);
+			case UMLRpyPackage.ICOMMENT__NAME:
+				return NAME_EDEFAULT == null ? name != null : !NAME_EDEFAULT.equals(name);
+			case UMLRpyPackage.ICOMMENT__HYPER_LINKS:
+				return hyperLinks != null && !hyperLinks.isEmpty();
+			case UMLRpyPackage.ICOMMENT__ANCHORS:
+				return anchors != null && !anchors.isEmpty();
+			case UMLRpyPackage.ICOMMENT__DEPENDENCIES:
+				return dependencies != null && !dependencies.isEmpty();
+			case UMLRpyPackage.ICOMMENT__STEREOTYPES:
+				return stereotypes != null;
+			case UMLRpyPackage.ICOMMENT__LAST_ID:
+				return LAST_ID_EDEFAULT == null ? lastID != null : !LAST_ID_EDEFAULT.equals(lastID);
+			case UMLRpyPackage.ICOMMENT__CODE_UPDATE_CG_TIME:
+				return codeUpdateCGTime != null && !codeUpdateCGTime.isEmpty();
+			case UMLRpyPackage.ICOMMENT__THE_MAIN_DIAGRAM:
+				return theMainDiagram != null;
+			case UMLRpyPackage.ICOMMENT__PROPERTIES:
+				return properties != null;
+		}
+		return super.eIsSet(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public int eBaseStructuralFeatureID(int derivedFeatureID, Class<?> baseClass) {
+		if (baseClass == ValueType.class) {
+			switch (derivedFeatureID) {
+				case UMLRpyPackage.ICOMMENT__MODIFIED_TIME_WEAK: return UMLRpyPackage.VALUE_TYPE__MODIFIED_TIME_WEAK;
+				case UMLRpyPackage.ICOMMENT__ID: return UMLRpyPackage.VALUE_TYPE__ID;
+				case UMLRpyPackage.ICOMMENT__MY_STATE: return UMLRpyPackage.VALUE_TYPE__MY_STATE;
+				case UMLRpyPackage.ICOMMENT__NAME: return UMLRpyPackage.VALUE_TYPE__NAME;
+				default: return -1;
+			}
+		}
+		return super.eBaseStructuralFeatureID(derivedFeatureID, baseClass);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public int eDerivedStructuralFeatureID(int baseFeatureID, Class<?> baseClass) {
+		if (baseClass == ValueType.class) {
+			switch (baseFeatureID) {
+				case UMLRpyPackage.VALUE_TYPE__MODIFIED_TIME_WEAK: return UMLRpyPackage.ICOMMENT__MODIFIED_TIME_WEAK;
+				case UMLRpyPackage.VALUE_TYPE__ID: return UMLRpyPackage.ICOMMENT__ID;
+				case UMLRpyPackage.VALUE_TYPE__MY_STATE: return UMLRpyPackage.ICOMMENT__MY_STATE;
+				case UMLRpyPackage.VALUE_TYPE__NAME: return UMLRpyPackage.ICOMMENT__NAME;
+				default: return -1;
+			}
+		}
+		return super.eDerivedStructuralFeatureID(baseFeatureID, baseClass);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String toString() {
+		if (eIsProxy()) return super.toString();
+
+		StringBuffer result = new StringBuffer(super.toString());
+		result.append(" (modifiedTimeWeak: "); //$NON-NLS-1$
+		result.append(modifiedTimeWeak);
+		result.append(", id: "); //$NON-NLS-1$
+		result.append(id);
+		result.append(", myState: "); //$NON-NLS-1$
+		result.append(myState);
+		result.append(", name: "); //$NON-NLS-1$
+		result.append(name);
+		result.append(", lastID: "); //$NON-NLS-1$
+		result.append(lastID);
+		result.append(", codeUpdateCGTime: "); //$NON-NLS-1$
+		result.append(codeUpdateCGTime);
+		result.append(')');
+		return result.toString();
+	}
+
+} //ICommentImpl
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/IComponentDiagramImpl.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/IComponentDiagramImpl.java
new file mode 100755
index 0000000..dc47f23
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/IComponentDiagramImpl.java
@@ -0,0 +1,47 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl;
+
+import org.eclipse.emf.ecore.EClass;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IComponentDiagram;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>IComponent Diagram</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+public class IComponentDiagramImpl extends IDiagramImpl implements IComponentDiagram {
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected IComponentDiagramImpl() {
+		super();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EClass eStaticClass() {
+		return UMLRpyPackage.eINSTANCE.getIComponentDiagram();
+	}
+
+} //IComponentDiagramImpl
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/IComponentImpl.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/IComponentImpl.java
new file mode 100755
index 0000000..045f1fe
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/IComponentImpl.java
@@ -0,0 +1,1947 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl;
+
+import java.util.Collection;
+
+import org.eclipse.emf.common.notify.Notification;
+import org.eclipse.emf.common.notify.NotificationChain;
+
+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.EDataTypeEList;
+import org.eclipse.emf.ecore.util.EObjectContainmentEList;
+import org.eclipse.emf.ecore.util.EObjectResolvingEList;
+import org.eclipse.emf.ecore.util.InternalEList;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.DeclarativesType;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.DefaultSubsystemType;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.DependsOnType;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ElementsType;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IClassifier;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ICodeGenConfigInfo;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ICodeGenConfigInfoHandle;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IComponent;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IDependency;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IDescription;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IFolder;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMHyperLink;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IPropertyContainer;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IUnit;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.M_pModelObjectType;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.OwnerHandleType;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>IComponent</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * </p>
+ * <ul>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IComponentImpl#getWeakCGTime <em>Weak CG Time</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IComponentImpl#getStrongCGTime <em>Strong CG Time</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IComponentImpl#getOwnerHandle <em>Owner Handle</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IComponentImpl#getId <em>Id</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IComponentImpl#getMyState <em>My State</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IComponentImpl#getName <em>Name</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IComponentImpl#getStereotypes <em>Stereotypes</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IComponentImpl#getModifiedTimeWeak <em>Modified Time Weak</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IComponentImpl#getM_buildType <em>Mbuild Type</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IComponentImpl#getM_libraries <em>Mlibraries</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IComponentImpl#getM_additionalSources <em>Madditional Sources</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IComponentImpl#getM_standardHeaders <em>Mstandard Headers</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IComponentImpl#getM_includePath <em>Minclude Path</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IComponentImpl#getM_initializationCode <em>Minitialization Code</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IComponentImpl#getM_folder <em>Mfolder</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IComponentImpl#getM_configActive <em>Mconfig Active</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IComponentImpl#getConfigs <em>Configs</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IComponentImpl#getDependencies <em>Dependencies</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IComponentImpl#getHandlesInMe <em>Handles In Me</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IComponentImpl#getProperties <em>Properties</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IComponentImpl#getLastID <em>Last ID</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IComponentImpl#getDescription <em>Description</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IComponentImpl#getRequiremenTracabilityHandle <em>Requiremen Tracability Handle</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IComponentImpl#getHyperLinks <em>Hyper Links</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IComponentImpl#getCodeUpdateCGTime <em>Code Update CG Time</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IComponentImpl#getDeclaratives <em>Declaratives</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IComponentImpl#getVariationPoints <em>Variation Points</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IComponentImpl#getSelectedVariants <em>Selected Variants</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IComponentImpl#getObjectCreation <em>Object Creation</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IComponentImpl#getUmlDependencyID <em>Uml Dependency ID</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IComponentImpl#getCmheader <em>Cmheader</em>}</li>
+ * </ul>
+ *
+ * @generated
+ */
+public class IComponentImpl extends IUnitImpl implements IComponent {
+	/**
+	 * The cached value of the '{@link #getWeakCGTime() <em>Weak CG Time</em>}' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getWeakCGTime()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<String> weakCGTime;
+
+	/**
+	 * The cached value of the '{@link #getStrongCGTime() <em>Strong CG Time</em>}' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getStrongCGTime()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<String> strongCGTime;
+
+	/**
+	 * The cached value of the '{@link #getOwnerHandle() <em>Owner Handle</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getOwnerHandle()
+	 * @generated
+	 * @ordered
+	 */
+	protected OwnerHandleType ownerHandle;
+
+	/**
+	 * The default value of the '{@link #getId() <em>Id</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getId()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String ID_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getId() <em>Id</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getId()
+	 * @generated
+	 * @ordered
+	 */
+	protected String id = ID_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getMyState() <em>My State</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getMyState()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String MY_STATE_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getMyState() <em>My State</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getMyState()
+	 * @generated
+	 * @ordered
+	 */
+	protected String myState = MY_STATE_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getName() <em>Name</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getName()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String NAME_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getName() <em>Name</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getName()
+	 * @generated
+	 * @ordered
+	 */
+	protected String name = NAME_EDEFAULT;
+
+	/**
+	 * The cached value of the '{@link #getStereotypes() <em>Stereotypes</em>}' reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getStereotypes()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<IClassifier> stereotypes;
+
+	/**
+	 * The cached value of the '{@link #getModifiedTimeWeak() <em>Modified Time Weak</em>}' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getModifiedTimeWeak()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<String> modifiedTimeWeak;
+
+	/**
+	 * The default value of the '{@link #getM_buildType() <em>Mbuild Type</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_buildType()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String MBUILD_TYPE_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getM_buildType() <em>Mbuild Type</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_buildType()
+	 * @generated
+	 * @ordered
+	 */
+	protected String m_buildType = MBUILD_TYPE_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getM_libraries() <em>Mlibraries</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_libraries()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String MLIBRARIES_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getM_libraries() <em>Mlibraries</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_libraries()
+	 * @generated
+	 * @ordered
+	 */
+	protected String m_libraries = MLIBRARIES_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getM_additionalSources() <em>Madditional Sources</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_additionalSources()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String MADDITIONAL_SOURCES_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getM_additionalSources() <em>Madditional Sources</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_additionalSources()
+	 * @generated
+	 * @ordered
+	 */
+	protected String m_additionalSources = MADDITIONAL_SOURCES_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getM_standardHeaders() <em>Mstandard Headers</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_standardHeaders()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String MSTANDARD_HEADERS_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getM_standardHeaders() <em>Mstandard Headers</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_standardHeaders()
+	 * @generated
+	 * @ordered
+	 */
+	protected String m_standardHeaders = MSTANDARD_HEADERS_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getM_includePath() <em>Minclude Path</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_includePath()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String MINCLUDE_PATH_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getM_includePath() <em>Minclude Path</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_includePath()
+	 * @generated
+	 * @ordered
+	 */
+	protected String m_includePath = MINCLUDE_PATH_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getM_initializationCode() <em>Minitialization Code</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_initializationCode()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String MINITIALIZATION_CODE_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getM_initializationCode() <em>Minitialization Code</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_initializationCode()
+	 * @generated
+	 * @ordered
+	 */
+	protected String m_initializationCode = MINITIALIZATION_CODE_EDEFAULT;
+
+	/**
+	 * The cached value of the '{@link #getM_folder() <em>Mfolder</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_folder()
+	 * @generated
+	 * @ordered
+	 */
+	protected IFolder m_folder;
+
+	/**
+	 * The cached value of the '{@link #getM_configActive() <em>Mconfig Active</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_configActive()
+	 * @generated
+	 * @ordered
+	 */
+	protected ICodeGenConfigInfoHandle m_configActive;
+
+	/**
+	 * The cached value of the '{@link #getConfigs() <em>Configs</em>}' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getConfigs()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<ICodeGenConfigInfo> configs;
+
+	/**
+	 * The cached value of the '{@link #getDependencies() <em>Dependencies</em>}' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getDependencies()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<IDependency> dependencies;
+
+	/**
+	 * The cached value of the '{@link #getHandlesInMe() <em>Handles In Me</em>}' reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getHandlesInMe()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<DefaultSubsystemType> handlesInMe;
+
+	/**
+	 * The cached value of the '{@link #getProperties() <em>Properties</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getProperties()
+	 * @generated
+	 * @ordered
+	 */
+	protected IPropertyContainer properties;
+
+	/**
+	 * The default value of the '{@link #getLastID() <em>Last ID</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getLastID()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String LAST_ID_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getLastID() <em>Last ID</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getLastID()
+	 * @generated
+	 * @ordered
+	 */
+	protected String lastID = LAST_ID_EDEFAULT;
+
+	/**
+	 * The cached value of the '{@link #getDescription() <em>Description</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getDescription()
+	 * @generated
+	 * @ordered
+	 */
+	protected IDescription description;
+
+	/**
+	 * The default value of the '{@link #getRequiremenTracabilityHandle() <em>Requiremen Tracability Handle</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getRequiremenTracabilityHandle()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String REQUIREMEN_TRACABILITY_HANDLE_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getRequiremenTracabilityHandle() <em>Requiremen Tracability Handle</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getRequiremenTracabilityHandle()
+	 * @generated
+	 * @ordered
+	 */
+	protected String requiremenTracabilityHandle = REQUIREMEN_TRACABILITY_HANDLE_EDEFAULT;
+
+	/**
+	 * The cached value of the '{@link #getHyperLinks() <em>Hyper Links</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getHyperLinks()
+	 * @generated
+	 * @ordered
+	 */
+	protected IMHyperLink hyperLinks;
+
+	/**
+	 * The cached value of the '{@link #getCodeUpdateCGTime() <em>Code Update CG Time</em>}' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getCodeUpdateCGTime()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<String> codeUpdateCGTime;
+
+	/**
+	 * The cached value of the '{@link #getDeclaratives() <em>Declaratives</em>}' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getDeclaratives()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<IUnit> declaratives;
+
+	/**
+	 * The cached value of the '{@link #getVariationPoints() <em>Variation Points</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getVariationPoints()
+	 * @generated
+	 * @ordered
+	 */
+	protected IUnit variationPoints;
+
+	/**
+	 * The cached value of the '{@link #getSelectedVariants() <em>Selected Variants</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getSelectedVariants()
+	 * @generated
+	 * @ordered
+	 */
+	protected IUnit selectedVariants;
+
+	/**
+	 * The default value of the '{@link #getObjectCreation() <em>Object Creation</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getObjectCreation()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String OBJECT_CREATION_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getObjectCreation() <em>Object Creation</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getObjectCreation()
+	 * @generated
+	 * @ordered
+	 */
+	protected String objectCreation = OBJECT_CREATION_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getUmlDependencyID() <em>Uml Dependency ID</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getUmlDependencyID()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String UML_DEPENDENCY_ID_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getUmlDependencyID() <em>Uml Dependency ID</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getUmlDependencyID()
+	 * @generated
+	 * @ordered
+	 */
+	protected String umlDependencyID = UML_DEPENDENCY_ID_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getCmheader() <em>Cmheader</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getCmheader()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String CMHEADER_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getCmheader() <em>Cmheader</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getCmheader()
+	 * @generated
+	 * @ordered
+	 */
+	protected String cmheader = CMHEADER_EDEFAULT;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected IComponentImpl() {
+		super();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EClass eStaticClass() {
+		return UMLRpyPackage.eINSTANCE.getIComponent();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<String> getWeakCGTime() {
+		if (weakCGTime == null) {
+			weakCGTime = new EDataTypeEList<String>(String.class, this, UMLRpyPackage.ICOMPONENT__WEAK_CG_TIME);
+		}
+		return weakCGTime;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<String> getStrongCGTime() {
+		if (strongCGTime == null) {
+			strongCGTime = new EDataTypeEList<String>(String.class, this, UMLRpyPackage.ICOMPONENT__STRONG_CG_TIME);
+		}
+		return strongCGTime;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public OwnerHandleType getOwnerHandle() {
+		if (ownerHandle != null && ownerHandle.eIsProxy()) {
+			InternalEObject oldOwnerHandle = (InternalEObject)ownerHandle;
+			ownerHandle = (OwnerHandleType)eResolveProxy(oldOwnerHandle);
+			if (ownerHandle != oldOwnerHandle) {
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.ICOMPONENT__OWNER_HANDLE, oldOwnerHandle, ownerHandle));
+			}
+		}
+		return ownerHandle;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public OwnerHandleType basicGetOwnerHandle() {
+		return ownerHandle;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setOwnerHandle(OwnerHandleType newOwnerHandle) {
+		OwnerHandleType oldOwnerHandle = ownerHandle;
+		ownerHandle = newOwnerHandle;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.ICOMPONENT__OWNER_HANDLE, oldOwnerHandle, ownerHandle));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getId() {
+		return id;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setId(String newId) {
+		String oldId = id;
+		id = newId;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.ICOMPONENT__ID, oldId, id));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getMyState() {
+		return myState;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setMyState(String newMyState) {
+		String oldMyState = myState;
+		myState = newMyState;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.ICOMPONENT__MY_STATE, oldMyState, myState));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getName() {
+		return name;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setName(String newName) {
+		String oldName = name;
+		name = newName;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.ICOMPONENT__NAME, oldName, name));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<IClassifier> getStereotypes() {
+		if (stereotypes == null) {
+			stereotypes = new EObjectResolvingEList<IClassifier>(IClassifier.class, this, UMLRpyPackage.ICOMPONENT__STEREOTYPES);
+		}
+		return stereotypes;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<String> getModifiedTimeWeak() {
+		if (modifiedTimeWeak == null) {
+			modifiedTimeWeak = new EDataTypeEList<String>(String.class, this, UMLRpyPackage.ICOMPONENT__MODIFIED_TIME_WEAK);
+		}
+		return modifiedTimeWeak;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getM_buildType() {
+		return m_buildType;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_buildType(String newM_buildType) {
+		String oldM_buildType = m_buildType;
+		m_buildType = newM_buildType;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.ICOMPONENT__MBUILD_TYPE, oldM_buildType, m_buildType));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getM_libraries() {
+		return m_libraries;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_libraries(String newM_libraries) {
+		String oldM_libraries = m_libraries;
+		m_libraries = newM_libraries;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.ICOMPONENT__MLIBRARIES, oldM_libraries, m_libraries));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getM_additionalSources() {
+		return m_additionalSources;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_additionalSources(String newM_additionalSources) {
+		String oldM_additionalSources = m_additionalSources;
+		m_additionalSources = newM_additionalSources;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.ICOMPONENT__MADDITIONAL_SOURCES, oldM_additionalSources, m_additionalSources));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getM_standardHeaders() {
+		return m_standardHeaders;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_standardHeaders(String newM_standardHeaders) {
+		String oldM_standardHeaders = m_standardHeaders;
+		m_standardHeaders = newM_standardHeaders;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.ICOMPONENT__MSTANDARD_HEADERS, oldM_standardHeaders, m_standardHeaders));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getM_includePath() {
+		return m_includePath;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_includePath(String newM_includePath) {
+		String oldM_includePath = m_includePath;
+		m_includePath = newM_includePath;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.ICOMPONENT__MINCLUDE_PATH, oldM_includePath, m_includePath));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getM_initializationCode() {
+		return m_initializationCode;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_initializationCode(String newM_initializationCode) {
+		String oldM_initializationCode = m_initializationCode;
+		m_initializationCode = newM_initializationCode;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.ICOMPONENT__MINITIALIZATION_CODE, oldM_initializationCode, m_initializationCode));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IFolder getM_folder() {
+		if (m_folder != null && m_folder.eIsProxy()) {
+			InternalEObject oldM_folder = (InternalEObject)m_folder;
+			m_folder = (IFolder)eResolveProxy(oldM_folder);
+			if (m_folder != oldM_folder) {
+				InternalEObject newM_folder = (InternalEObject)m_folder;
+				NotificationChain msgs = oldM_folder.eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.ICOMPONENT__MFOLDER, null, null);
+				if (newM_folder.eInternalContainer() == null) {
+					msgs = newM_folder.eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.ICOMPONENT__MFOLDER, null, msgs);
+				}
+				if (msgs != null) msgs.dispatch();
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.ICOMPONENT__MFOLDER, oldM_folder, m_folder));
+			}
+		}
+		return m_folder;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IFolder basicGetM_folder() {
+		return m_folder;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public NotificationChain basicSetM_folder(IFolder newM_folder, NotificationChain msgs) {
+		IFolder oldM_folder = m_folder;
+		m_folder = newM_folder;
+		if (eNotificationRequired()) {
+			ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, UMLRpyPackage.ICOMPONENT__MFOLDER, oldM_folder, newM_folder);
+			if (msgs == null) msgs = notification; else msgs.add(notification);
+		}
+		return msgs;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_folder(IFolder newM_folder) {
+		if (newM_folder != m_folder) {
+			NotificationChain msgs = null;
+			if (m_folder != null)
+				msgs = ((InternalEObject)m_folder).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.ICOMPONENT__MFOLDER, null, msgs);
+			if (newM_folder != null)
+				msgs = ((InternalEObject)newM_folder).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.ICOMPONENT__MFOLDER, null, msgs);
+			msgs = basicSetM_folder(newM_folder, msgs);
+			if (msgs != null) msgs.dispatch();
+		}
+		else if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.ICOMPONENT__MFOLDER, newM_folder, newM_folder));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public ICodeGenConfigInfoHandle getM_configActive() {
+		if (m_configActive != null && m_configActive.eIsProxy()) {
+			InternalEObject oldM_configActive = (InternalEObject)m_configActive;
+			m_configActive = (ICodeGenConfigInfoHandle)eResolveProxy(oldM_configActive);
+			if (m_configActive != oldM_configActive) {
+				InternalEObject newM_configActive = (InternalEObject)m_configActive;
+				NotificationChain msgs = oldM_configActive.eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.ICOMPONENT__MCONFIG_ACTIVE, null, null);
+				if (newM_configActive.eInternalContainer() == null) {
+					msgs = newM_configActive.eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.ICOMPONENT__MCONFIG_ACTIVE, null, msgs);
+				}
+				if (msgs != null) msgs.dispatch();
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.ICOMPONENT__MCONFIG_ACTIVE, oldM_configActive, m_configActive));
+			}
+		}
+		return m_configActive;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public ICodeGenConfigInfoHandle basicGetM_configActive() {
+		return m_configActive;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public NotificationChain basicSetM_configActive(ICodeGenConfigInfoHandle newM_configActive, NotificationChain msgs) {
+		ICodeGenConfigInfoHandle oldM_configActive = m_configActive;
+		m_configActive = newM_configActive;
+		if (eNotificationRequired()) {
+			ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, UMLRpyPackage.ICOMPONENT__MCONFIG_ACTIVE, oldM_configActive, newM_configActive);
+			if (msgs == null) msgs = notification; else msgs.add(notification);
+		}
+		return msgs;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_configActive(ICodeGenConfigInfoHandle newM_configActive) {
+		if (newM_configActive != m_configActive) {
+			NotificationChain msgs = null;
+			if (m_configActive != null)
+				msgs = ((InternalEObject)m_configActive).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.ICOMPONENT__MCONFIG_ACTIVE, null, msgs);
+			if (newM_configActive != null)
+				msgs = ((InternalEObject)newM_configActive).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.ICOMPONENT__MCONFIG_ACTIVE, null, msgs);
+			msgs = basicSetM_configActive(newM_configActive, msgs);
+			if (msgs != null) msgs.dispatch();
+		}
+		else if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.ICOMPONENT__MCONFIG_ACTIVE, newM_configActive, newM_configActive));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<ICodeGenConfigInfo> getConfigs() {
+		if (configs == null) {
+			configs = new EObjectContainmentEList.Resolving<ICodeGenConfigInfo>(ICodeGenConfigInfo.class, this, UMLRpyPackage.ICOMPONENT__CONFIGS);
+		}
+		return configs;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<IDependency> getDependencies() {
+		if (dependencies == null) {
+			dependencies = new EObjectContainmentEList.Resolving<IDependency>(IDependency.class, this, UMLRpyPackage.ICOMPONENT__DEPENDENCIES);
+		}
+		return dependencies;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<DefaultSubsystemType> getHandlesInMe() {
+		if (handlesInMe == null) {
+			handlesInMe = new EObjectResolvingEList<DefaultSubsystemType>(DefaultSubsystemType.class, this, UMLRpyPackage.ICOMPONENT__HANDLES_IN_ME);
+		}
+		return handlesInMe;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IPropertyContainer getProperties() {
+		if (properties != null && properties.eIsProxy()) {
+			InternalEObject oldProperties = (InternalEObject)properties;
+			properties = (IPropertyContainer)eResolveProxy(oldProperties);
+			if (properties != oldProperties) {
+				InternalEObject newProperties = (InternalEObject)properties;
+				NotificationChain msgs = oldProperties.eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.ICOMPONENT__PROPERTIES, null, null);
+				if (newProperties.eInternalContainer() == null) {
+					msgs = newProperties.eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.ICOMPONENT__PROPERTIES, null, msgs);
+				}
+				if (msgs != null) msgs.dispatch();
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.ICOMPONENT__PROPERTIES, oldProperties, properties));
+			}
+		}
+		return properties;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IPropertyContainer basicGetProperties() {
+		return properties;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public NotificationChain basicSetProperties(IPropertyContainer newProperties, NotificationChain msgs) {
+		IPropertyContainer oldProperties = properties;
+		properties = newProperties;
+		if (eNotificationRequired()) {
+			ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, UMLRpyPackage.ICOMPONENT__PROPERTIES, oldProperties, newProperties);
+			if (msgs == null) msgs = notification; else msgs.add(notification);
+		}
+		return msgs;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setProperties(IPropertyContainer newProperties) {
+		if (newProperties != properties) {
+			NotificationChain msgs = null;
+			if (properties != null)
+				msgs = ((InternalEObject)properties).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.ICOMPONENT__PROPERTIES, null, msgs);
+			if (newProperties != null)
+				msgs = ((InternalEObject)newProperties).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.ICOMPONENT__PROPERTIES, null, msgs);
+			msgs = basicSetProperties(newProperties, msgs);
+			if (msgs != null) msgs.dispatch();
+		}
+		else if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.ICOMPONENT__PROPERTIES, newProperties, newProperties));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getLastID() {
+		return lastID;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setLastID(String newLastID) {
+		String oldLastID = lastID;
+		lastID = newLastID;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.ICOMPONENT__LAST_ID, oldLastID, lastID));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IDescription getDescription() {
+		if (description != null && description.eIsProxy()) {
+			InternalEObject oldDescription = (InternalEObject)description;
+			description = (IDescription)eResolveProxy(oldDescription);
+			if (description != oldDescription) {
+				InternalEObject newDescription = (InternalEObject)description;
+				NotificationChain msgs = oldDescription.eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.ICOMPONENT__DESCRIPTION, null, null);
+				if (newDescription.eInternalContainer() == null) {
+					msgs = newDescription.eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.ICOMPONENT__DESCRIPTION, null, msgs);
+				}
+				if (msgs != null) msgs.dispatch();
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.ICOMPONENT__DESCRIPTION, oldDescription, description));
+			}
+		}
+		return description;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IDescription basicGetDescription() {
+		return description;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public NotificationChain basicSetDescription(IDescription newDescription, NotificationChain msgs) {
+		IDescription oldDescription = description;
+		description = newDescription;
+		if (eNotificationRequired()) {
+			ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, UMLRpyPackage.ICOMPONENT__DESCRIPTION, oldDescription, newDescription);
+			if (msgs == null) msgs = notification; else msgs.add(notification);
+		}
+		return msgs;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setDescription(IDescription newDescription) {
+		if (newDescription != description) {
+			NotificationChain msgs = null;
+			if (description != null)
+				msgs = ((InternalEObject)description).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.ICOMPONENT__DESCRIPTION, null, msgs);
+			if (newDescription != null)
+				msgs = ((InternalEObject)newDescription).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.ICOMPONENT__DESCRIPTION, null, msgs);
+			msgs = basicSetDescription(newDescription, msgs);
+			if (msgs != null) msgs.dispatch();
+		}
+		else if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.ICOMPONENT__DESCRIPTION, newDescription, newDescription));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getRequiremenTracabilityHandle() {
+		return requiremenTracabilityHandle;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setRequiremenTracabilityHandle(String newRequiremenTracabilityHandle) {
+		String oldRequiremenTracabilityHandle = requiremenTracabilityHandle;
+		requiremenTracabilityHandle = newRequiremenTracabilityHandle;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.ICOMPONENT__REQUIREMEN_TRACABILITY_HANDLE, oldRequiremenTracabilityHandle, requiremenTracabilityHandle));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IMHyperLink getHyperLinks() {
+		if (hyperLinks != null && hyperLinks.eIsProxy()) {
+			InternalEObject oldHyperLinks = (InternalEObject)hyperLinks;
+			hyperLinks = (IMHyperLink)eResolveProxy(oldHyperLinks);
+			if (hyperLinks != oldHyperLinks) {
+				InternalEObject newHyperLinks = (InternalEObject)hyperLinks;
+				NotificationChain msgs = oldHyperLinks.eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.ICOMPONENT__HYPER_LINKS, null, null);
+				if (newHyperLinks.eInternalContainer() == null) {
+					msgs = newHyperLinks.eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.ICOMPONENT__HYPER_LINKS, null, msgs);
+				}
+				if (msgs != null) msgs.dispatch();
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.ICOMPONENT__HYPER_LINKS, oldHyperLinks, hyperLinks));
+			}
+		}
+		return hyperLinks;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IMHyperLink basicGetHyperLinks() {
+		return hyperLinks;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public NotificationChain basicSetHyperLinks(IMHyperLink newHyperLinks, NotificationChain msgs) {
+		IMHyperLink oldHyperLinks = hyperLinks;
+		hyperLinks = newHyperLinks;
+		if (eNotificationRequired()) {
+			ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, UMLRpyPackage.ICOMPONENT__HYPER_LINKS, oldHyperLinks, newHyperLinks);
+			if (msgs == null) msgs = notification; else msgs.add(notification);
+		}
+		return msgs;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setHyperLinks(IMHyperLink newHyperLinks) {
+		if (newHyperLinks != hyperLinks) {
+			NotificationChain msgs = null;
+			if (hyperLinks != null)
+				msgs = ((InternalEObject)hyperLinks).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.ICOMPONENT__HYPER_LINKS, null, msgs);
+			if (newHyperLinks != null)
+				msgs = ((InternalEObject)newHyperLinks).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.ICOMPONENT__HYPER_LINKS, null, msgs);
+			msgs = basicSetHyperLinks(newHyperLinks, msgs);
+			if (msgs != null) msgs.dispatch();
+		}
+		else if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.ICOMPONENT__HYPER_LINKS, newHyperLinks, newHyperLinks));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<String> getCodeUpdateCGTime() {
+		if (codeUpdateCGTime == null) {
+			codeUpdateCGTime = new EDataTypeEList<String>(String.class, this, UMLRpyPackage.ICOMPONENT__CODE_UPDATE_CG_TIME);
+		}
+		return codeUpdateCGTime;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<IUnit> getDeclaratives() {
+		if (declaratives == null) {
+			declaratives = new EObjectContainmentEList.Resolving<IUnit>(IUnit.class, this, UMLRpyPackage.ICOMPONENT__DECLARATIVES);
+		}
+		return declaratives;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IUnit getVariationPoints() {
+		if (variationPoints != null && variationPoints.eIsProxy()) {
+			InternalEObject oldVariationPoints = (InternalEObject)variationPoints;
+			variationPoints = (IUnit)eResolveProxy(oldVariationPoints);
+			if (variationPoints != oldVariationPoints) {
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.ICOMPONENT__VARIATION_POINTS, oldVariationPoints, variationPoints));
+			}
+		}
+		return variationPoints;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IUnit basicGetVariationPoints() {
+		return variationPoints;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setVariationPoints(IUnit newVariationPoints) {
+		IUnit oldVariationPoints = variationPoints;
+		variationPoints = newVariationPoints;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.ICOMPONENT__VARIATION_POINTS, oldVariationPoints, variationPoints));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IUnit getSelectedVariants() {
+		if (selectedVariants != null && selectedVariants.eIsProxy()) {
+			InternalEObject oldSelectedVariants = (InternalEObject)selectedVariants;
+			selectedVariants = (IUnit)eResolveProxy(oldSelectedVariants);
+			if (selectedVariants != oldSelectedVariants) {
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.ICOMPONENT__SELECTED_VARIANTS, oldSelectedVariants, selectedVariants));
+			}
+		}
+		return selectedVariants;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IUnit basicGetSelectedVariants() {
+		return selectedVariants;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setSelectedVariants(IUnit newSelectedVariants) {
+		IUnit oldSelectedVariants = selectedVariants;
+		selectedVariants = newSelectedVariants;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.ICOMPONENT__SELECTED_VARIANTS, oldSelectedVariants, selectedVariants));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getObjectCreation() {
+		return objectCreation;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setObjectCreation(String newObjectCreation) {
+		String oldObjectCreation = objectCreation;
+		objectCreation = newObjectCreation;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.ICOMPONENT__OBJECT_CREATION, oldObjectCreation, objectCreation));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getUmlDependencyID() {
+		return umlDependencyID;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setUmlDependencyID(String newUmlDependencyID) {
+		String oldUmlDependencyID = umlDependencyID;
+		umlDependencyID = newUmlDependencyID;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.ICOMPONENT__UML_DEPENDENCY_ID, oldUmlDependencyID, umlDependencyID));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getCmheader() {
+		return cmheader;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setCmheader(String newCmheader) {
+		String oldCmheader = cmheader;
+		cmheader = newCmheader;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.ICOMPONENT__CMHEADER, oldCmheader, cmheader));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
+		switch (featureID) {
+			case UMLRpyPackage.ICOMPONENT__MFOLDER:
+				return basicSetM_folder(null, msgs);
+			case UMLRpyPackage.ICOMPONENT__MCONFIG_ACTIVE:
+				return basicSetM_configActive(null, msgs);
+			case UMLRpyPackage.ICOMPONENT__CONFIGS:
+				return ((InternalEList<?>)getConfigs()).basicRemove(otherEnd, msgs);
+			case UMLRpyPackage.ICOMPONENT__DEPENDENCIES:
+				return ((InternalEList<?>)getDependencies()).basicRemove(otherEnd, msgs);
+			case UMLRpyPackage.ICOMPONENT__PROPERTIES:
+				return basicSetProperties(null, msgs);
+			case UMLRpyPackage.ICOMPONENT__DESCRIPTION:
+				return basicSetDescription(null, msgs);
+			case UMLRpyPackage.ICOMPONENT__HYPER_LINKS:
+				return basicSetHyperLinks(null, msgs);
+			case UMLRpyPackage.ICOMPONENT__DECLARATIVES:
+				return ((InternalEList<?>)getDeclaratives()).basicRemove(otherEnd, msgs);
+		}
+		return super.eInverseRemove(otherEnd, featureID, msgs);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object eGet(int featureID, boolean resolve, boolean coreType) {
+		switch (featureID) {
+			case UMLRpyPackage.ICOMPONENT__WEAK_CG_TIME:
+				return getWeakCGTime();
+			case UMLRpyPackage.ICOMPONENT__STRONG_CG_TIME:
+				return getStrongCGTime();
+			case UMLRpyPackage.ICOMPONENT__OWNER_HANDLE:
+				if (resolve) return getOwnerHandle();
+				return basicGetOwnerHandle();
+			case UMLRpyPackage.ICOMPONENT__ID:
+				return getId();
+			case UMLRpyPackage.ICOMPONENT__MY_STATE:
+				return getMyState();
+			case UMLRpyPackage.ICOMPONENT__NAME:
+				return getName();
+			case UMLRpyPackage.ICOMPONENT__STEREOTYPES:
+				return getStereotypes();
+			case UMLRpyPackage.ICOMPONENT__MODIFIED_TIME_WEAK:
+				return getModifiedTimeWeak();
+			case UMLRpyPackage.ICOMPONENT__MBUILD_TYPE:
+				return getM_buildType();
+			case UMLRpyPackage.ICOMPONENT__MLIBRARIES:
+				return getM_libraries();
+			case UMLRpyPackage.ICOMPONENT__MADDITIONAL_SOURCES:
+				return getM_additionalSources();
+			case UMLRpyPackage.ICOMPONENT__MSTANDARD_HEADERS:
+				return getM_standardHeaders();
+			case UMLRpyPackage.ICOMPONENT__MINCLUDE_PATH:
+				return getM_includePath();
+			case UMLRpyPackage.ICOMPONENT__MINITIALIZATION_CODE:
+				return getM_initializationCode();
+			case UMLRpyPackage.ICOMPONENT__MFOLDER:
+				if (resolve) return getM_folder();
+				return basicGetM_folder();
+			case UMLRpyPackage.ICOMPONENT__MCONFIG_ACTIVE:
+				if (resolve) return getM_configActive();
+				return basicGetM_configActive();
+			case UMLRpyPackage.ICOMPONENT__CONFIGS:
+				return getConfigs();
+			case UMLRpyPackage.ICOMPONENT__DEPENDENCIES:
+				return getDependencies();
+			case UMLRpyPackage.ICOMPONENT__HANDLES_IN_ME:
+				return getHandlesInMe();
+			case UMLRpyPackage.ICOMPONENT__PROPERTIES:
+				if (resolve) return getProperties();
+				return basicGetProperties();
+			case UMLRpyPackage.ICOMPONENT__LAST_ID:
+				return getLastID();
+			case UMLRpyPackage.ICOMPONENT__DESCRIPTION:
+				if (resolve) return getDescription();
+				return basicGetDescription();
+			case UMLRpyPackage.ICOMPONENT__REQUIREMEN_TRACABILITY_HANDLE:
+				return getRequiremenTracabilityHandle();
+			case UMLRpyPackage.ICOMPONENT__HYPER_LINKS:
+				if (resolve) return getHyperLinks();
+				return basicGetHyperLinks();
+			case UMLRpyPackage.ICOMPONENT__CODE_UPDATE_CG_TIME:
+				return getCodeUpdateCGTime();
+			case UMLRpyPackage.ICOMPONENT__DECLARATIVES:
+				return getDeclaratives();
+			case UMLRpyPackage.ICOMPONENT__VARIATION_POINTS:
+				if (resolve) return getVariationPoints();
+				return basicGetVariationPoints();
+			case UMLRpyPackage.ICOMPONENT__SELECTED_VARIANTS:
+				if (resolve) return getSelectedVariants();
+				return basicGetSelectedVariants();
+			case UMLRpyPackage.ICOMPONENT__OBJECT_CREATION:
+				return getObjectCreation();
+			case UMLRpyPackage.ICOMPONENT__UML_DEPENDENCY_ID:
+				return getUmlDependencyID();
+			case UMLRpyPackage.ICOMPONENT__CMHEADER:
+				return getCmheader();
+		}
+		return super.eGet(featureID, resolve, coreType);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@SuppressWarnings("unchecked")
+	@Override
+	public void eSet(int featureID, Object newValue) {
+		switch (featureID) {
+			case UMLRpyPackage.ICOMPONENT__WEAK_CG_TIME:
+				getWeakCGTime().clear();
+				getWeakCGTime().addAll((Collection<? extends String>)newValue);
+				return;
+			case UMLRpyPackage.ICOMPONENT__STRONG_CG_TIME:
+				getStrongCGTime().clear();
+				getStrongCGTime().addAll((Collection<? extends String>)newValue);
+				return;
+			case UMLRpyPackage.ICOMPONENT__OWNER_HANDLE:
+				setOwnerHandle((OwnerHandleType)newValue);
+				return;
+			case UMLRpyPackage.ICOMPONENT__ID:
+				setId((String)newValue);
+				return;
+			case UMLRpyPackage.ICOMPONENT__MY_STATE:
+				setMyState((String)newValue);
+				return;
+			case UMLRpyPackage.ICOMPONENT__NAME:
+				setName((String)newValue);
+				return;
+			case UMLRpyPackage.ICOMPONENT__STEREOTYPES:
+				getStereotypes().clear();
+				getStereotypes().addAll((Collection<? extends IClassifier>)newValue);
+				return;
+			case UMLRpyPackage.ICOMPONENT__MODIFIED_TIME_WEAK:
+				getModifiedTimeWeak().clear();
+				getModifiedTimeWeak().addAll((Collection<? extends String>)newValue);
+				return;
+			case UMLRpyPackage.ICOMPONENT__MBUILD_TYPE:
+				setM_buildType((String)newValue);
+				return;
+			case UMLRpyPackage.ICOMPONENT__MLIBRARIES:
+				setM_libraries((String)newValue);
+				return;
+			case UMLRpyPackage.ICOMPONENT__MADDITIONAL_SOURCES:
+				setM_additionalSources((String)newValue);
+				return;
+			case UMLRpyPackage.ICOMPONENT__MSTANDARD_HEADERS:
+				setM_standardHeaders((String)newValue);
+				return;
+			case UMLRpyPackage.ICOMPONENT__MINCLUDE_PATH:
+				setM_includePath((String)newValue);
+				return;
+			case UMLRpyPackage.ICOMPONENT__MINITIALIZATION_CODE:
+				setM_initializationCode((String)newValue);
+				return;
+			case UMLRpyPackage.ICOMPONENT__MFOLDER:
+				setM_folder((IFolder)newValue);
+				return;
+			case UMLRpyPackage.ICOMPONENT__MCONFIG_ACTIVE:
+				setM_configActive((ICodeGenConfigInfoHandle)newValue);
+				return;
+			case UMLRpyPackage.ICOMPONENT__CONFIGS:
+				getConfigs().clear();
+				getConfigs().addAll((Collection<? extends ICodeGenConfigInfo>)newValue);
+				return;
+			case UMLRpyPackage.ICOMPONENT__DEPENDENCIES:
+				getDependencies().clear();
+				getDependencies().addAll((Collection<? extends IDependency>)newValue);
+				return;
+			case UMLRpyPackage.ICOMPONENT__HANDLES_IN_ME:
+				getHandlesInMe().clear();
+				getHandlesInMe().addAll((Collection<? extends DefaultSubsystemType>)newValue);
+				return;
+			case UMLRpyPackage.ICOMPONENT__PROPERTIES:
+				setProperties((IPropertyContainer)newValue);
+				return;
+			case UMLRpyPackage.ICOMPONENT__LAST_ID:
+				setLastID((String)newValue);
+				return;
+			case UMLRpyPackage.ICOMPONENT__DESCRIPTION:
+				setDescription((IDescription)newValue);
+				return;
+			case UMLRpyPackage.ICOMPONENT__REQUIREMEN_TRACABILITY_HANDLE:
+				setRequiremenTracabilityHandle((String)newValue);
+				return;
+			case UMLRpyPackage.ICOMPONENT__HYPER_LINKS:
+				setHyperLinks((IMHyperLink)newValue);
+				return;
+			case UMLRpyPackage.ICOMPONENT__CODE_UPDATE_CG_TIME:
+				getCodeUpdateCGTime().clear();
+				getCodeUpdateCGTime().addAll((Collection<? extends String>)newValue);
+				return;
+			case UMLRpyPackage.ICOMPONENT__DECLARATIVES:
+				getDeclaratives().clear();
+				getDeclaratives().addAll((Collection<? extends IUnit>)newValue);
+				return;
+			case UMLRpyPackage.ICOMPONENT__VARIATION_POINTS:
+				setVariationPoints((IUnit)newValue);
+				return;
+			case UMLRpyPackage.ICOMPONENT__SELECTED_VARIANTS:
+				setSelectedVariants((IUnit)newValue);
+				return;
+			case UMLRpyPackage.ICOMPONENT__OBJECT_CREATION:
+				setObjectCreation((String)newValue);
+				return;
+			case UMLRpyPackage.ICOMPONENT__UML_DEPENDENCY_ID:
+				setUmlDependencyID((String)newValue);
+				return;
+			case UMLRpyPackage.ICOMPONENT__CMHEADER:
+				setCmheader((String)newValue);
+				return;
+		}
+		super.eSet(featureID, newValue);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void eUnset(int featureID) {
+		switch (featureID) {
+			case UMLRpyPackage.ICOMPONENT__WEAK_CG_TIME:
+				getWeakCGTime().clear();
+				return;
+			case UMLRpyPackage.ICOMPONENT__STRONG_CG_TIME:
+				getStrongCGTime().clear();
+				return;
+			case UMLRpyPackage.ICOMPONENT__OWNER_HANDLE:
+				setOwnerHandle((OwnerHandleType)null);
+				return;
+			case UMLRpyPackage.ICOMPONENT__ID:
+				setId(ID_EDEFAULT);
+				return;
+			case UMLRpyPackage.ICOMPONENT__MY_STATE:
+				setMyState(MY_STATE_EDEFAULT);
+				return;
+			case UMLRpyPackage.ICOMPONENT__NAME:
+				setName(NAME_EDEFAULT);
+				return;
+			case UMLRpyPackage.ICOMPONENT__STEREOTYPES:
+				getStereotypes().clear();
+				return;
+			case UMLRpyPackage.ICOMPONENT__MODIFIED_TIME_WEAK:
+				getModifiedTimeWeak().clear();
+				return;
+			case UMLRpyPackage.ICOMPONENT__MBUILD_TYPE:
+				setM_buildType(MBUILD_TYPE_EDEFAULT);
+				return;
+			case UMLRpyPackage.ICOMPONENT__MLIBRARIES:
+				setM_libraries(MLIBRARIES_EDEFAULT);
+				return;
+			case UMLRpyPackage.ICOMPONENT__MADDITIONAL_SOURCES:
+				setM_additionalSources(MADDITIONAL_SOURCES_EDEFAULT);
+				return;
+			case UMLRpyPackage.ICOMPONENT__MSTANDARD_HEADERS:
+				setM_standardHeaders(MSTANDARD_HEADERS_EDEFAULT);
+				return;
+			case UMLRpyPackage.ICOMPONENT__MINCLUDE_PATH:
+				setM_includePath(MINCLUDE_PATH_EDEFAULT);
+				return;
+			case UMLRpyPackage.ICOMPONENT__MINITIALIZATION_CODE:
+				setM_initializationCode(MINITIALIZATION_CODE_EDEFAULT);
+				return;
+			case UMLRpyPackage.ICOMPONENT__MFOLDER:
+				setM_folder((IFolder)null);
+				return;
+			case UMLRpyPackage.ICOMPONENT__MCONFIG_ACTIVE:
+				setM_configActive((ICodeGenConfigInfoHandle)null);
+				return;
+			case UMLRpyPackage.ICOMPONENT__CONFIGS:
+				getConfigs().clear();
+				return;
+			case UMLRpyPackage.ICOMPONENT__DEPENDENCIES:
+				getDependencies().clear();
+				return;
+			case UMLRpyPackage.ICOMPONENT__HANDLES_IN_ME:
+				getHandlesInMe().clear();
+				return;
+			case UMLRpyPackage.ICOMPONENT__PROPERTIES:
+				setProperties((IPropertyContainer)null);
+				return;
+			case UMLRpyPackage.ICOMPONENT__LAST_ID:
+				setLastID(LAST_ID_EDEFAULT);
+				return;
+			case UMLRpyPackage.ICOMPONENT__DESCRIPTION:
+				setDescription((IDescription)null);
+				return;
+			case UMLRpyPackage.ICOMPONENT__REQUIREMEN_TRACABILITY_HANDLE:
+				setRequiremenTracabilityHandle(REQUIREMEN_TRACABILITY_HANDLE_EDEFAULT);
+				return;
+			case UMLRpyPackage.ICOMPONENT__HYPER_LINKS:
+				setHyperLinks((IMHyperLink)null);
+				return;
+			case UMLRpyPackage.ICOMPONENT__CODE_UPDATE_CG_TIME:
+				getCodeUpdateCGTime().clear();
+				return;
+			case UMLRpyPackage.ICOMPONENT__DECLARATIVES:
+				getDeclaratives().clear();
+				return;
+			case UMLRpyPackage.ICOMPONENT__VARIATION_POINTS:
+				setVariationPoints((IUnit)null);
+				return;
+			case UMLRpyPackage.ICOMPONENT__SELECTED_VARIANTS:
+				setSelectedVariants((IUnit)null);
+				return;
+			case UMLRpyPackage.ICOMPONENT__OBJECT_CREATION:
+				setObjectCreation(OBJECT_CREATION_EDEFAULT);
+				return;
+			case UMLRpyPackage.ICOMPONENT__UML_DEPENDENCY_ID:
+				setUmlDependencyID(UML_DEPENDENCY_ID_EDEFAULT);
+				return;
+			case UMLRpyPackage.ICOMPONENT__CMHEADER:
+				setCmheader(CMHEADER_EDEFAULT);
+				return;
+		}
+		super.eUnset(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public boolean eIsSet(int featureID) {
+		switch (featureID) {
+			case UMLRpyPackage.ICOMPONENT__WEAK_CG_TIME:
+				return weakCGTime != null && !weakCGTime.isEmpty();
+			case UMLRpyPackage.ICOMPONENT__STRONG_CG_TIME:
+				return strongCGTime != null && !strongCGTime.isEmpty();
+			case UMLRpyPackage.ICOMPONENT__OWNER_HANDLE:
+				return ownerHandle != null;
+			case UMLRpyPackage.ICOMPONENT__ID:
+				return ID_EDEFAULT == null ? id != null : !ID_EDEFAULT.equals(id);
+			case UMLRpyPackage.ICOMPONENT__MY_STATE:
+				return MY_STATE_EDEFAULT == null ? myState != null : !MY_STATE_EDEFAULT.equals(myState);
+			case UMLRpyPackage.ICOMPONENT__NAME:
+				return NAME_EDEFAULT == null ? name != null : !NAME_EDEFAULT.equals(name);
+			case UMLRpyPackage.ICOMPONENT__STEREOTYPES:
+				return stereotypes != null && !stereotypes.isEmpty();
+			case UMLRpyPackage.ICOMPONENT__MODIFIED_TIME_WEAK:
+				return modifiedTimeWeak != null && !modifiedTimeWeak.isEmpty();
+			case UMLRpyPackage.ICOMPONENT__MBUILD_TYPE:
+				return MBUILD_TYPE_EDEFAULT == null ? m_buildType != null : !MBUILD_TYPE_EDEFAULT.equals(m_buildType);
+			case UMLRpyPackage.ICOMPONENT__MLIBRARIES:
+				return MLIBRARIES_EDEFAULT == null ? m_libraries != null : !MLIBRARIES_EDEFAULT.equals(m_libraries);
+			case UMLRpyPackage.ICOMPONENT__MADDITIONAL_SOURCES:
+				return MADDITIONAL_SOURCES_EDEFAULT == null ? m_additionalSources != null : !MADDITIONAL_SOURCES_EDEFAULT.equals(m_additionalSources);
+			case UMLRpyPackage.ICOMPONENT__MSTANDARD_HEADERS:
+				return MSTANDARD_HEADERS_EDEFAULT == null ? m_standardHeaders != null : !MSTANDARD_HEADERS_EDEFAULT.equals(m_standardHeaders);
+			case UMLRpyPackage.ICOMPONENT__MINCLUDE_PATH:
+				return MINCLUDE_PATH_EDEFAULT == null ? m_includePath != null : !MINCLUDE_PATH_EDEFAULT.equals(m_includePath);
+			case UMLRpyPackage.ICOMPONENT__MINITIALIZATION_CODE:
+				return MINITIALIZATION_CODE_EDEFAULT == null ? m_initializationCode != null : !MINITIALIZATION_CODE_EDEFAULT.equals(m_initializationCode);
+			case UMLRpyPackage.ICOMPONENT__MFOLDER:
+				return m_folder != null;
+			case UMLRpyPackage.ICOMPONENT__MCONFIG_ACTIVE:
+				return m_configActive != null;
+			case UMLRpyPackage.ICOMPONENT__CONFIGS:
+				return configs != null && !configs.isEmpty();
+			case UMLRpyPackage.ICOMPONENT__DEPENDENCIES:
+				return dependencies != null && !dependencies.isEmpty();
+			case UMLRpyPackage.ICOMPONENT__HANDLES_IN_ME:
+				return handlesInMe != null && !handlesInMe.isEmpty();
+			case UMLRpyPackage.ICOMPONENT__PROPERTIES:
+				return properties != null;
+			case UMLRpyPackage.ICOMPONENT__LAST_ID:
+				return LAST_ID_EDEFAULT == null ? lastID != null : !LAST_ID_EDEFAULT.equals(lastID);
+			case UMLRpyPackage.ICOMPONENT__DESCRIPTION:
+				return description != null;
+			case UMLRpyPackage.ICOMPONENT__REQUIREMEN_TRACABILITY_HANDLE:
+				return REQUIREMEN_TRACABILITY_HANDLE_EDEFAULT == null ? requiremenTracabilityHandle != null : !REQUIREMEN_TRACABILITY_HANDLE_EDEFAULT.equals(requiremenTracabilityHandle);
+			case UMLRpyPackage.ICOMPONENT__HYPER_LINKS:
+				return hyperLinks != null;
+			case UMLRpyPackage.ICOMPONENT__CODE_UPDATE_CG_TIME:
+				return codeUpdateCGTime != null && !codeUpdateCGTime.isEmpty();
+			case UMLRpyPackage.ICOMPONENT__DECLARATIVES:
+				return declaratives != null && !declaratives.isEmpty();
+			case UMLRpyPackage.ICOMPONENT__VARIATION_POINTS:
+				return variationPoints != null;
+			case UMLRpyPackage.ICOMPONENT__SELECTED_VARIANTS:
+				return selectedVariants != null;
+			case UMLRpyPackage.ICOMPONENT__OBJECT_CREATION:
+				return OBJECT_CREATION_EDEFAULT == null ? objectCreation != null : !OBJECT_CREATION_EDEFAULT.equals(objectCreation);
+			case UMLRpyPackage.ICOMPONENT__UML_DEPENDENCY_ID:
+				return UML_DEPENDENCY_ID_EDEFAULT == null ? umlDependencyID != null : !UML_DEPENDENCY_ID_EDEFAULT.equals(umlDependencyID);
+			case UMLRpyPackage.ICOMPONENT__CMHEADER:
+				return CMHEADER_EDEFAULT == null ? cmheader != null : !CMHEADER_EDEFAULT.equals(cmheader);
+		}
+		return super.eIsSet(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public int eBaseStructuralFeatureID(int derivedFeatureID, Class<?> baseClass) {
+		if (baseClass == DefaultSubsystemType.class) {
+			switch (derivedFeatureID) {
+				default: return -1;
+			}
+		}
+		if (baseClass == OwnerHandleType.class) {
+			switch (derivedFeatureID) {
+				case UMLRpyPackage.ICOMPONENT__WEAK_CG_TIME: return UMLRpyPackage.OWNER_HANDLE_TYPE__WEAK_CG_TIME;
+				case UMLRpyPackage.ICOMPONENT__STRONG_CG_TIME: return UMLRpyPackage.OWNER_HANDLE_TYPE__STRONG_CG_TIME;
+				default: return -1;
+			}
+		}
+		if (baseClass == ElementsType.class) {
+			switch (derivedFeatureID) {
+				default: return -1;
+			}
+		}
+		if (baseClass == DependsOnType.class) {
+			switch (derivedFeatureID) {
+				default: return -1;
+			}
+		}
+		if (baseClass == DeclarativesType.class) {
+			switch (derivedFeatureID) {
+				default: return -1;
+			}
+		}
+		if (baseClass == M_pModelObjectType.class) {
+			switch (derivedFeatureID) {
+				default: return -1;
+			}
+		}
+		return super.eBaseStructuralFeatureID(derivedFeatureID, baseClass);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public int eDerivedStructuralFeatureID(int baseFeatureID, Class<?> baseClass) {
+		if (baseClass == DefaultSubsystemType.class) {
+			switch (baseFeatureID) {
+				default: return -1;
+			}
+		}
+		if (baseClass == OwnerHandleType.class) {
+			switch (baseFeatureID) {
+				case UMLRpyPackage.OWNER_HANDLE_TYPE__WEAK_CG_TIME: return UMLRpyPackage.ICOMPONENT__WEAK_CG_TIME;
+				case UMLRpyPackage.OWNER_HANDLE_TYPE__STRONG_CG_TIME: return UMLRpyPackage.ICOMPONENT__STRONG_CG_TIME;
+				default: return -1;
+			}
+		}
+		if (baseClass == ElementsType.class) {
+			switch (baseFeatureID) {
+				default: return -1;
+			}
+		}
+		if (baseClass == DependsOnType.class) {
+			switch (baseFeatureID) {
+				default: return -1;
+			}
+		}
+		if (baseClass == DeclarativesType.class) {
+			switch (baseFeatureID) {
+				default: return -1;
+			}
+		}
+		if (baseClass == M_pModelObjectType.class) {
+			switch (baseFeatureID) {
+				default: return -1;
+			}
+		}
+		return super.eDerivedStructuralFeatureID(baseFeatureID, baseClass);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String toString() {
+		if (eIsProxy()) return super.toString();
+
+		StringBuffer result = new StringBuffer(super.toString());
+		result.append(" (weakCGTime: "); //$NON-NLS-1$
+		result.append(weakCGTime);
+		result.append(", strongCGTime: "); //$NON-NLS-1$
+		result.append(strongCGTime);
+		result.append(", id: "); //$NON-NLS-1$
+		result.append(id);
+		result.append(", myState: "); //$NON-NLS-1$
+		result.append(myState);
+		result.append(", name: "); //$NON-NLS-1$
+		result.append(name);
+		result.append(", modifiedTimeWeak: "); //$NON-NLS-1$
+		result.append(modifiedTimeWeak);
+		result.append(", m_buildType: "); //$NON-NLS-1$
+		result.append(m_buildType);
+		result.append(", m_libraries: "); //$NON-NLS-1$
+		result.append(m_libraries);
+		result.append(", m_additionalSources: "); //$NON-NLS-1$
+		result.append(m_additionalSources);
+		result.append(", m_standardHeaders: "); //$NON-NLS-1$
+		result.append(m_standardHeaders);
+		result.append(", m_includePath: "); //$NON-NLS-1$
+		result.append(m_includePath);
+		result.append(", m_initializationCode: "); //$NON-NLS-1$
+		result.append(m_initializationCode);
+		result.append(", lastID: "); //$NON-NLS-1$
+		result.append(lastID);
+		result.append(", requiremenTracabilityHandle: "); //$NON-NLS-1$
+		result.append(requiremenTracabilityHandle);
+		result.append(", codeUpdateCGTime: "); //$NON-NLS-1$
+		result.append(codeUpdateCGTime);
+		result.append(", objectCreation: "); //$NON-NLS-1$
+		result.append(objectCreation);
+		result.append(", umlDependencyID: "); //$NON-NLS-1$
+		result.append(umlDependencyID);
+		result.append(", cmheader: "); //$NON-NLS-1$
+		result.append(cmheader);
+		result.append(')');
+		return result.toString();
+	}
+
+} //IComponentImpl
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/IComponentInstanceImpl.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/IComponentInstanceImpl.java
new file mode 100755
index 0000000..2139656
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/IComponentInstanceImpl.java
@@ -0,0 +1,47 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl;
+
+import org.eclipse.emf.ecore.EClass;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IComponentInstance;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>IComponent Instance</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+public class IComponentInstanceImpl extends IModelElementImpl implements IComponentInstance {
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected IComponentInstanceImpl() {
+		super();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EClass eStaticClass() {
+		return UMLRpyPackage.eINSTANCE.getIComponentInstance();
+	}
+
+} //IComponentInstanceImpl
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/IConfigurationImpl.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/IConfigurationImpl.java
new file mode 100755
index 0000000..daf8128
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/IConfigurationImpl.java
@@ -0,0 +1,47 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl;
+
+import org.eclipse.emf.ecore.EClass;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IConfiguration;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>IConfiguration</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+public class IConfigurationImpl extends IModelElementImpl implements IConfiguration {
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected IConfigurationImpl() {
+		super();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EClass eStaticClass() {
+		return UMLRpyPackage.eINSTANCE.getIConfiguration();
+	}
+
+} //IConfigurationImpl
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/IConnectorImpl.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/IConnectorImpl.java
new file mode 100755
index 0000000..fc2bd93
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/IConnectorImpl.java
@@ -0,0 +1,234 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.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.interoperability.rpy.rpymetamodel.IConnector;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ParentType;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>IConnector</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * </p>
+ * <ul>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IConnectorImpl#getParent <em>Parent</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IConnectorImpl#getConnectorType <em>Connector Type</em>}</li>
+ * </ul>
+ *
+ * @generated
+ */
+public class IConnectorImpl extends IStateVertexImpl implements IConnector {
+	/**
+	 * The cached value of the '{@link #getParent() <em>Parent</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getParent()
+	 * @generated
+	 * @ordered
+	 */
+	protected ParentType parent;
+
+	/**
+	 * The default value of the '{@link #getConnectorType() <em>Connector Type</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getConnectorType()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String CONNECTOR_TYPE_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getConnectorType() <em>Connector Type</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getConnectorType()
+	 * @generated
+	 * @ordered
+	 */
+	protected String connectorType = CONNECTOR_TYPE_EDEFAULT;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected IConnectorImpl() {
+		super();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EClass eStaticClass() {
+		return UMLRpyPackage.eINSTANCE.getIConnector();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public ParentType getParent() {
+		if (parent != null && parent.eIsProxy()) {
+			InternalEObject oldParent = (InternalEObject)parent;
+			parent = (ParentType)eResolveProxy(oldParent);
+			if (parent != oldParent) {
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.ICONNECTOR__PARENT, oldParent, parent));
+			}
+		}
+		return parent;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public ParentType basicGetParent() {
+		return parent;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setParent(ParentType newParent) {
+		ParentType oldParent = parent;
+		parent = newParent;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.ICONNECTOR__PARENT, oldParent, parent));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getConnectorType() {
+		return connectorType;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setConnectorType(String newConnectorType) {
+		String oldConnectorType = connectorType;
+		connectorType = newConnectorType;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.ICONNECTOR__CONNECTOR_TYPE, oldConnectorType, connectorType));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object eGet(int featureID, boolean resolve, boolean coreType) {
+		switch (featureID) {
+			case UMLRpyPackage.ICONNECTOR__PARENT:
+				if (resolve) return getParent();
+				return basicGetParent();
+			case UMLRpyPackage.ICONNECTOR__CONNECTOR_TYPE:
+				return getConnectorType();
+		}
+		return super.eGet(featureID, resolve, coreType);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void eSet(int featureID, Object newValue) {
+		switch (featureID) {
+			case UMLRpyPackage.ICONNECTOR__PARENT:
+				setParent((ParentType)newValue);
+				return;
+			case UMLRpyPackage.ICONNECTOR__CONNECTOR_TYPE:
+				setConnectorType((String)newValue);
+				return;
+		}
+		super.eSet(featureID, newValue);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void eUnset(int featureID) {
+		switch (featureID) {
+			case UMLRpyPackage.ICONNECTOR__PARENT:
+				setParent((ParentType)null);
+				return;
+			case UMLRpyPackage.ICONNECTOR__CONNECTOR_TYPE:
+				setConnectorType(CONNECTOR_TYPE_EDEFAULT);
+				return;
+		}
+		super.eUnset(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public boolean eIsSet(int featureID) {
+		switch (featureID) {
+			case UMLRpyPackage.ICONNECTOR__PARENT:
+				return parent != null;
+			case UMLRpyPackage.ICONNECTOR__CONNECTOR_TYPE:
+				return CONNECTOR_TYPE_EDEFAULT == null ? connectorType != null : !CONNECTOR_TYPE_EDEFAULT.equals(connectorType);
+		}
+		return super.eIsSet(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String toString() {
+		if (eIsProxy()) return super.toString();
+
+		StringBuffer result = new StringBuffer(super.toString());
+		result.append(" (connectorType: "); //$NON-NLS-1$
+		result.append(connectorType);
+		result.append(')');
+		return result.toString();
+	}
+
+} //IConnectorImpl
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/IConstraintImpl.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/IConstraintImpl.java
new file mode 100755
index 0000000..99bdc4d
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/IConstraintImpl.java
@@ -0,0 +1,591 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl;
+
+import org.eclipse.emf.common.notify.Notification;
+import org.eclipse.emf.common.notify.NotificationChain;
+
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.InternalEObject;
+
+import org.eclipse.emf.ecore.impl.ENotificationImpl;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IAnchor;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IClassifier;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IConstraint;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IPropertyContainer;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>IConstraint</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * </p>
+ * <ul>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IConstraintImpl#getId <em>Id</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IConstraintImpl#getMyState <em>My State</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IConstraintImpl#getName <em>Name</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IConstraintImpl#getModifiedTimeWeak <em>Modified Time Weak</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IConstraintImpl#getStereotypes <em>Stereotypes</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IConstraintImpl#getProperties <em>Properties</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IConstraintImpl#getAnchors <em>Anchors</em>}</li>
+ * </ul>
+ *
+ * @generated
+ */
+public class IConstraintImpl extends IAnnotationImpl implements IConstraint {
+	/**
+	 * The default value of the '{@link #getId() <em>Id</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getId()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String ID_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getId() <em>Id</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getId()
+	 * @generated
+	 * @ordered
+	 */
+	protected String id = ID_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getMyState() <em>My State</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getMyState()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String MY_STATE_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getMyState() <em>My State</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getMyState()
+	 * @generated
+	 * @ordered
+	 */
+	protected String myState = MY_STATE_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getName() <em>Name</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getName()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String NAME_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getName() <em>Name</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getName()
+	 * @generated
+	 * @ordered
+	 */
+	protected String name = NAME_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getModifiedTimeWeak() <em>Modified Time Weak</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getModifiedTimeWeak()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String MODIFIED_TIME_WEAK_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getModifiedTimeWeak() <em>Modified Time Weak</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getModifiedTimeWeak()
+	 * @generated
+	 * @ordered
+	 */
+	protected String modifiedTimeWeak = MODIFIED_TIME_WEAK_EDEFAULT;
+
+	/**
+	 * The cached value of the '{@link #getStereotypes() <em>Stereotypes</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getStereotypes()
+	 * @generated
+	 * @ordered
+	 */
+	protected IClassifier stereotypes;
+
+	/**
+	 * The cached value of the '{@link #getProperties() <em>Properties</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getProperties()
+	 * @generated
+	 * @ordered
+	 */
+	protected IPropertyContainer properties;
+
+	/**
+	 * The cached value of the '{@link #getAnchors() <em>Anchors</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getAnchors()
+	 * @generated
+	 * @ordered
+	 */
+	protected IAnchor anchors;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected IConstraintImpl() {
+		super();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EClass eStaticClass() {
+		return UMLRpyPackage.eINSTANCE.getIConstraint();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getId() {
+		return id;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setId(String newId) {
+		String oldId = id;
+		id = newId;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.ICONSTRAINT__ID, oldId, id));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getMyState() {
+		return myState;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setMyState(String newMyState) {
+		String oldMyState = myState;
+		myState = newMyState;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.ICONSTRAINT__MY_STATE, oldMyState, myState));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getName() {
+		return name;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setName(String newName) {
+		String oldName = name;
+		name = newName;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.ICONSTRAINT__NAME, oldName, name));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getModifiedTimeWeak() {
+		return modifiedTimeWeak;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setModifiedTimeWeak(String newModifiedTimeWeak) {
+		String oldModifiedTimeWeak = modifiedTimeWeak;
+		modifiedTimeWeak = newModifiedTimeWeak;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.ICONSTRAINT__MODIFIED_TIME_WEAK, oldModifiedTimeWeak, modifiedTimeWeak));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IClassifier getStereotypes() {
+		if (stereotypes != null && stereotypes.eIsProxy()) {
+			InternalEObject oldStereotypes = (InternalEObject)stereotypes;
+			stereotypes = (IClassifier)eResolveProxy(oldStereotypes);
+			if (stereotypes != oldStereotypes) {
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.ICONSTRAINT__STEREOTYPES, oldStereotypes, stereotypes));
+			}
+		}
+		return stereotypes;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IClassifier basicGetStereotypes() {
+		return stereotypes;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setStereotypes(IClassifier newStereotypes) {
+		IClassifier oldStereotypes = stereotypes;
+		stereotypes = newStereotypes;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.ICONSTRAINT__STEREOTYPES, oldStereotypes, stereotypes));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IPropertyContainer getProperties() {
+		if (properties != null && properties.eIsProxy()) {
+			InternalEObject oldProperties = (InternalEObject)properties;
+			properties = (IPropertyContainer)eResolveProxy(oldProperties);
+			if (properties != oldProperties) {
+				InternalEObject newProperties = (InternalEObject)properties;
+				NotificationChain msgs = oldProperties.eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.ICONSTRAINT__PROPERTIES, null, null);
+				if (newProperties.eInternalContainer() == null) {
+					msgs = newProperties.eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.ICONSTRAINT__PROPERTIES, null, msgs);
+				}
+				if (msgs != null) msgs.dispatch();
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.ICONSTRAINT__PROPERTIES, oldProperties, properties));
+			}
+		}
+		return properties;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IPropertyContainer basicGetProperties() {
+		return properties;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public NotificationChain basicSetProperties(IPropertyContainer newProperties, NotificationChain msgs) {
+		IPropertyContainer oldProperties = properties;
+		properties = newProperties;
+		if (eNotificationRequired()) {
+			ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, UMLRpyPackage.ICONSTRAINT__PROPERTIES, oldProperties, newProperties);
+			if (msgs == null) msgs = notification; else msgs.add(notification);
+		}
+		return msgs;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setProperties(IPropertyContainer newProperties) {
+		if (newProperties != properties) {
+			NotificationChain msgs = null;
+			if (properties != null)
+				msgs = ((InternalEObject)properties).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.ICONSTRAINT__PROPERTIES, null, msgs);
+			if (newProperties != null)
+				msgs = ((InternalEObject)newProperties).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.ICONSTRAINT__PROPERTIES, null, msgs);
+			msgs = basicSetProperties(newProperties, msgs);
+			if (msgs != null) msgs.dispatch();
+		}
+		else if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.ICONSTRAINT__PROPERTIES, newProperties, newProperties));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IAnchor getAnchors() {
+		if (anchors != null && anchors.eIsProxy()) {
+			InternalEObject oldAnchors = (InternalEObject)anchors;
+			anchors = (IAnchor)eResolveProxy(oldAnchors);
+			if (anchors != oldAnchors) {
+				InternalEObject newAnchors = (InternalEObject)anchors;
+				NotificationChain msgs = oldAnchors.eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.ICONSTRAINT__ANCHORS, null, null);
+				if (newAnchors.eInternalContainer() == null) {
+					msgs = newAnchors.eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.ICONSTRAINT__ANCHORS, null, msgs);
+				}
+				if (msgs != null) msgs.dispatch();
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.ICONSTRAINT__ANCHORS, oldAnchors, anchors));
+			}
+		}
+		return anchors;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IAnchor basicGetAnchors() {
+		return anchors;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public NotificationChain basicSetAnchors(IAnchor newAnchors, NotificationChain msgs) {
+		IAnchor oldAnchors = anchors;
+		anchors = newAnchors;
+		if (eNotificationRequired()) {
+			ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, UMLRpyPackage.ICONSTRAINT__ANCHORS, oldAnchors, newAnchors);
+			if (msgs == null) msgs = notification; else msgs.add(notification);
+		}
+		return msgs;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setAnchors(IAnchor newAnchors) {
+		if (newAnchors != anchors) {
+			NotificationChain msgs = null;
+			if (anchors != null)
+				msgs = ((InternalEObject)anchors).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.ICONSTRAINT__ANCHORS, null, msgs);
+			if (newAnchors != null)
+				msgs = ((InternalEObject)newAnchors).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.ICONSTRAINT__ANCHORS, null, msgs);
+			msgs = basicSetAnchors(newAnchors, msgs);
+			if (msgs != null) msgs.dispatch();
+		}
+		else if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.ICONSTRAINT__ANCHORS, newAnchors, newAnchors));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
+		switch (featureID) {
+			case UMLRpyPackage.ICONSTRAINT__PROPERTIES:
+				return basicSetProperties(null, msgs);
+			case UMLRpyPackage.ICONSTRAINT__ANCHORS:
+				return basicSetAnchors(null, msgs);
+		}
+		return super.eInverseRemove(otherEnd, featureID, msgs);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object eGet(int featureID, boolean resolve, boolean coreType) {
+		switch (featureID) {
+			case UMLRpyPackage.ICONSTRAINT__ID:
+				return getId();
+			case UMLRpyPackage.ICONSTRAINT__MY_STATE:
+				return getMyState();
+			case UMLRpyPackage.ICONSTRAINT__NAME:
+				return getName();
+			case UMLRpyPackage.ICONSTRAINT__MODIFIED_TIME_WEAK:
+				return getModifiedTimeWeak();
+			case UMLRpyPackage.ICONSTRAINT__STEREOTYPES:
+				if (resolve) return getStereotypes();
+				return basicGetStereotypes();
+			case UMLRpyPackage.ICONSTRAINT__PROPERTIES:
+				if (resolve) return getProperties();
+				return basicGetProperties();
+			case UMLRpyPackage.ICONSTRAINT__ANCHORS:
+				if (resolve) return getAnchors();
+				return basicGetAnchors();
+		}
+		return super.eGet(featureID, resolve, coreType);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void eSet(int featureID, Object newValue) {
+		switch (featureID) {
+			case UMLRpyPackage.ICONSTRAINT__ID:
+				setId((String)newValue);
+				return;
+			case UMLRpyPackage.ICONSTRAINT__MY_STATE:
+				setMyState((String)newValue);
+				return;
+			case UMLRpyPackage.ICONSTRAINT__NAME:
+				setName((String)newValue);
+				return;
+			case UMLRpyPackage.ICONSTRAINT__MODIFIED_TIME_WEAK:
+				setModifiedTimeWeak((String)newValue);
+				return;
+			case UMLRpyPackage.ICONSTRAINT__STEREOTYPES:
+				setStereotypes((IClassifier)newValue);
+				return;
+			case UMLRpyPackage.ICONSTRAINT__PROPERTIES:
+				setProperties((IPropertyContainer)newValue);
+				return;
+			case UMLRpyPackage.ICONSTRAINT__ANCHORS:
+				setAnchors((IAnchor)newValue);
+				return;
+		}
+		super.eSet(featureID, newValue);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void eUnset(int featureID) {
+		switch (featureID) {
+			case UMLRpyPackage.ICONSTRAINT__ID:
+				setId(ID_EDEFAULT);
+				return;
+			case UMLRpyPackage.ICONSTRAINT__MY_STATE:
+				setMyState(MY_STATE_EDEFAULT);
+				return;
+			case UMLRpyPackage.ICONSTRAINT__NAME:
+				setName(NAME_EDEFAULT);
+				return;
+			case UMLRpyPackage.ICONSTRAINT__MODIFIED_TIME_WEAK:
+				setModifiedTimeWeak(MODIFIED_TIME_WEAK_EDEFAULT);
+				return;
+			case UMLRpyPackage.ICONSTRAINT__STEREOTYPES:
+				setStereotypes((IClassifier)null);
+				return;
+			case UMLRpyPackage.ICONSTRAINT__PROPERTIES:
+				setProperties((IPropertyContainer)null);
+				return;
+			case UMLRpyPackage.ICONSTRAINT__ANCHORS:
+				setAnchors((IAnchor)null);
+				return;
+		}
+		super.eUnset(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public boolean eIsSet(int featureID) {
+		switch (featureID) {
+			case UMLRpyPackage.ICONSTRAINT__ID:
+				return ID_EDEFAULT == null ? id != null : !ID_EDEFAULT.equals(id);
+			case UMLRpyPackage.ICONSTRAINT__MY_STATE:
+				return MY_STATE_EDEFAULT == null ? myState != null : !MY_STATE_EDEFAULT.equals(myState);
+			case UMLRpyPackage.ICONSTRAINT__NAME:
+				return NAME_EDEFAULT == null ? name != null : !NAME_EDEFAULT.equals(name);
+			case UMLRpyPackage.ICONSTRAINT__MODIFIED_TIME_WEAK:
+				return MODIFIED_TIME_WEAK_EDEFAULT == null ? modifiedTimeWeak != null : !MODIFIED_TIME_WEAK_EDEFAULT.equals(modifiedTimeWeak);
+			case UMLRpyPackage.ICONSTRAINT__STEREOTYPES:
+				return stereotypes != null;
+			case UMLRpyPackage.ICONSTRAINT__PROPERTIES:
+				return properties != null;
+			case UMLRpyPackage.ICONSTRAINT__ANCHORS:
+				return anchors != null;
+		}
+		return super.eIsSet(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String toString() {
+		if (eIsProxy()) return super.toString();
+
+		StringBuffer result = new StringBuffer(super.toString());
+		result.append(" (id: "); //$NON-NLS-1$
+		result.append(id);
+		result.append(", myState: "); //$NON-NLS-1$
+		result.append(myState);
+		result.append(", name: "); //$NON-NLS-1$
+		result.append(name);
+		result.append(", modifiedTimeWeak: "); //$NON-NLS-1$
+		result.append(modifiedTimeWeak);
+		result.append(')');
+		return result.toString();
+	}
+
+} //IConstraintImpl
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/IConstructorImpl.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/IConstructorImpl.java
new file mode 100755
index 0000000..aaf7af2
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/IConstructorImpl.java
@@ -0,0 +1,1361 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl;
+
+import java.util.Collection;
+
+import org.eclipse.emf.common.notify.Notification;
+import org.eclipse.emf.common.notify.NotificationChain;
+
+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.EDataTypeEList;
+import org.eclipse.emf.ecore.util.EObjectContainmentEList;
+import org.eclipse.emf.ecore.util.EObjectResolvingEList;
+import org.eclipse.emf.ecore.util.InternalEList;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IBody;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IConstructor;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IDescription;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITag;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IVariable;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ItemsType;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.M_subjectType;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UnknownType;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>IConstructor</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * </p>
+ * <ul>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IConstructorImpl#getUmlDependencyID <em>Uml Dependency ID</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IConstructorImpl#getObjectCreation <em>Object Creation</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IConstructorImpl#getId <em>Id</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IConstructorImpl#getMyState <em>My State</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IConstructorImpl#getModifiedTimeWeak <em>Modified Time Weak</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IConstructorImpl#getReturnType <em>Return Type</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IConstructorImpl#getAbstract <em>Abstract</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IConstructorImpl#getFinal <em>Final</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IConstructorImpl#getConcurrency <em>Concurrency</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IConstructorImpl#getProtection <em>Protection</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IConstructorImpl#getStatic <em>Static</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IConstructorImpl#getConstant <em>Constant</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IConstructorImpl#getItsBody <em>Its Body</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IConstructorImpl#getInitializer <em>Initializer</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IConstructorImpl#getArgs <em>Args</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IConstructorImpl#getName <em>Name</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IConstructorImpl#getDescription <em>Description</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IConstructorImpl#getRequiremenTracabilityHandle <em>Requiremen Tracability Handle</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IConstructorImpl#getCodeUpdateCGTime <em>Code Update CG Time</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IConstructorImpl#getTags <em>Tags</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IConstructorImpl#getLastID <em>Last ID</em>}</li>
+ * </ul>
+ *
+ * @generated
+ */
+public class IConstructorImpl extends OperationsTypeImpl implements IConstructor {
+	/**
+	 * The default value of the '{@link #getUmlDependencyID() <em>Uml Dependency ID</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getUmlDependencyID()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String UML_DEPENDENCY_ID_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getUmlDependencyID() <em>Uml Dependency ID</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getUmlDependencyID()
+	 * @generated
+	 * @ordered
+	 */
+	protected String umlDependencyID = UML_DEPENDENCY_ID_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getObjectCreation() <em>Object Creation</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getObjectCreation()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String OBJECT_CREATION_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getObjectCreation() <em>Object Creation</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getObjectCreation()
+	 * @generated
+	 * @ordered
+	 */
+	protected String objectCreation = OBJECT_CREATION_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getId() <em>Id</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getId()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String ID_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getId() <em>Id</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getId()
+	 * @generated
+	 * @ordered
+	 */
+	protected String id = ID_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getMyState() <em>My State</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getMyState()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String MY_STATE_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getMyState() <em>My State</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getMyState()
+	 * @generated
+	 * @ordered
+	 */
+	protected String myState = MY_STATE_EDEFAULT;
+
+	/**
+	 * The cached value of the '{@link #getModifiedTimeWeak() <em>Modified Time Weak</em>}' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getModifiedTimeWeak()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<String> modifiedTimeWeak;
+
+	/**
+	 * The cached value of the '{@link #getReturnType() <em>Return Type</em>}' reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getReturnType()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<UnknownType> returnType;
+
+	/**
+	 * The default value of the '{@link #getAbstract() <em>Abstract</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getAbstract()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String ABSTRACT_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getAbstract() <em>Abstract</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getAbstract()
+	 * @generated
+	 * @ordered
+	 */
+	protected String abstract_ = ABSTRACT_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getFinal() <em>Final</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getFinal()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String FINAL_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getFinal() <em>Final</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getFinal()
+	 * @generated
+	 * @ordered
+	 */
+	protected String final_ = FINAL_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getConcurrency() <em>Concurrency</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getConcurrency()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String CONCURRENCY_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getConcurrency() <em>Concurrency</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getConcurrency()
+	 * @generated
+	 * @ordered
+	 */
+	protected String concurrency = CONCURRENCY_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getProtection() <em>Protection</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getProtection()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String PROTECTION_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getProtection() <em>Protection</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getProtection()
+	 * @generated
+	 * @ordered
+	 */
+	protected String protection = PROTECTION_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getStatic() <em>Static</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getStatic()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String STATIC_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getStatic() <em>Static</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getStatic()
+	 * @generated
+	 * @ordered
+	 */
+	protected String static_ = STATIC_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getConstant() <em>Constant</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getConstant()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String CONSTANT_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getConstant() <em>Constant</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getConstant()
+	 * @generated
+	 * @ordered
+	 */
+	protected String constant = CONSTANT_EDEFAULT;
+
+	/**
+	 * The cached value of the '{@link #getItsBody() <em>Its Body</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getItsBody()
+	 * @generated
+	 * @ordered
+	 */
+	protected IBody itsBody;
+
+	/**
+	 * The default value of the '{@link #getInitializer() <em>Initializer</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getInitializer()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String INITIALIZER_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getInitializer() <em>Initializer</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getInitializer()
+	 * @generated
+	 * @ordered
+	 */
+	protected String initializer = INITIALIZER_EDEFAULT;
+
+	/**
+	 * The cached value of the '{@link #getArgs() <em>Args</em>}' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getArgs()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<IVariable> args;
+
+	/**
+	 * The default value of the '{@link #getName() <em>Name</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getName()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String NAME_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getName() <em>Name</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getName()
+	 * @generated
+	 * @ordered
+	 */
+	protected String name = NAME_EDEFAULT;
+
+	/**
+	 * The cached value of the '{@link #getDescription() <em>Description</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getDescription()
+	 * @generated
+	 * @ordered
+	 */
+	protected IDescription description;
+
+	/**
+	 * The default value of the '{@link #getRequiremenTracabilityHandle() <em>Requiremen Tracability Handle</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getRequiremenTracabilityHandle()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String REQUIREMEN_TRACABILITY_HANDLE_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getRequiremenTracabilityHandle() <em>Requiremen Tracability Handle</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getRequiremenTracabilityHandle()
+	 * @generated
+	 * @ordered
+	 */
+	protected String requiremenTracabilityHandle = REQUIREMEN_TRACABILITY_HANDLE_EDEFAULT;
+
+	/**
+	 * The cached value of the '{@link #getCodeUpdateCGTime() <em>Code Update CG Time</em>}' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getCodeUpdateCGTime()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<String> codeUpdateCGTime;
+
+	/**
+	 * The cached value of the '{@link #getTags() <em>Tags</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getTags()
+	 * @generated
+	 * @ordered
+	 */
+	protected ITag tags;
+
+	/**
+	 * The default value of the '{@link #getLastID() <em>Last ID</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getLastID()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String LAST_ID_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getLastID() <em>Last ID</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getLastID()
+	 * @generated
+	 * @ordered
+	 */
+	protected String lastID = LAST_ID_EDEFAULT;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected IConstructorImpl() {
+		super();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EClass eStaticClass() {
+		return UMLRpyPackage.eINSTANCE.getIConstructor();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getUmlDependencyID() {
+		return umlDependencyID;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setUmlDependencyID(String newUmlDependencyID) {
+		String oldUmlDependencyID = umlDependencyID;
+		umlDependencyID = newUmlDependencyID;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.ICONSTRUCTOR__UML_DEPENDENCY_ID, oldUmlDependencyID, umlDependencyID));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getObjectCreation() {
+		return objectCreation;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setObjectCreation(String newObjectCreation) {
+		String oldObjectCreation = objectCreation;
+		objectCreation = newObjectCreation;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.ICONSTRUCTOR__OBJECT_CREATION, oldObjectCreation, objectCreation));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getId() {
+		return id;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setId(String newId) {
+		String oldId = id;
+		id = newId;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.ICONSTRUCTOR__ID, oldId, id));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getMyState() {
+		return myState;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setMyState(String newMyState) {
+		String oldMyState = myState;
+		myState = newMyState;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.ICONSTRUCTOR__MY_STATE, oldMyState, myState));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<String> getModifiedTimeWeak() {
+		if (modifiedTimeWeak == null) {
+			modifiedTimeWeak = new EDataTypeEList<String>(String.class, this, UMLRpyPackage.ICONSTRUCTOR__MODIFIED_TIME_WEAK);
+		}
+		return modifiedTimeWeak;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<UnknownType> getReturnType() {
+		if (returnType == null) {
+			returnType = new EObjectResolvingEList<UnknownType>(UnknownType.class, this, UMLRpyPackage.ICONSTRUCTOR__RETURN_TYPE);
+		}
+		return returnType;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getAbstract() {
+		return abstract_;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setAbstract(String newAbstract) {
+		String oldAbstract = abstract_;
+		abstract_ = newAbstract;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.ICONSTRUCTOR__ABSTRACT, oldAbstract, abstract_));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getFinal() {
+		return final_;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setFinal(String newFinal) {
+		String oldFinal = final_;
+		final_ = newFinal;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.ICONSTRUCTOR__FINAL, oldFinal, final_));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getConcurrency() {
+		return concurrency;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setConcurrency(String newConcurrency) {
+		String oldConcurrency = concurrency;
+		concurrency = newConcurrency;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.ICONSTRUCTOR__CONCURRENCY, oldConcurrency, concurrency));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getProtection() {
+		return protection;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setProtection(String newProtection) {
+		String oldProtection = protection;
+		protection = newProtection;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.ICONSTRUCTOR__PROTECTION, oldProtection, protection));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getStatic() {
+		return static_;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setStatic(String newStatic) {
+		String oldStatic = static_;
+		static_ = newStatic;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.ICONSTRUCTOR__STATIC, oldStatic, static_));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getConstant() {
+		return constant;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setConstant(String newConstant) {
+		String oldConstant = constant;
+		constant = newConstant;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.ICONSTRUCTOR__CONSTANT, oldConstant, constant));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IBody getItsBody() {
+		if (itsBody != null && itsBody.eIsProxy()) {
+			InternalEObject oldItsBody = (InternalEObject)itsBody;
+			itsBody = (IBody)eResolveProxy(oldItsBody);
+			if (itsBody != oldItsBody) {
+				InternalEObject newItsBody = (InternalEObject)itsBody;
+				NotificationChain msgs = oldItsBody.eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.ICONSTRUCTOR__ITS_BODY, null, null);
+				if (newItsBody.eInternalContainer() == null) {
+					msgs = newItsBody.eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.ICONSTRUCTOR__ITS_BODY, null, msgs);
+				}
+				if (msgs != null) msgs.dispatch();
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.ICONSTRUCTOR__ITS_BODY, oldItsBody, itsBody));
+			}
+		}
+		return itsBody;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IBody basicGetItsBody() {
+		return itsBody;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public NotificationChain basicSetItsBody(IBody newItsBody, NotificationChain msgs) {
+		IBody oldItsBody = itsBody;
+		itsBody = newItsBody;
+		if (eNotificationRequired()) {
+			ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, UMLRpyPackage.ICONSTRUCTOR__ITS_BODY, oldItsBody, newItsBody);
+			if (msgs == null) msgs = notification; else msgs.add(notification);
+		}
+		return msgs;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setItsBody(IBody newItsBody) {
+		if (newItsBody != itsBody) {
+			NotificationChain msgs = null;
+			if (itsBody != null)
+				msgs = ((InternalEObject)itsBody).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.ICONSTRUCTOR__ITS_BODY, null, msgs);
+			if (newItsBody != null)
+				msgs = ((InternalEObject)newItsBody).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.ICONSTRUCTOR__ITS_BODY, null, msgs);
+			msgs = basicSetItsBody(newItsBody, msgs);
+			if (msgs != null) msgs.dispatch();
+		}
+		else if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.ICONSTRUCTOR__ITS_BODY, newItsBody, newItsBody));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getInitializer() {
+		return initializer;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setInitializer(String newInitializer) {
+		String oldInitializer = initializer;
+		initializer = newInitializer;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.ICONSTRUCTOR__INITIALIZER, oldInitializer, initializer));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<IVariable> getArgs() {
+		if (args == null) {
+			args = new EObjectContainmentEList.Resolving<IVariable>(IVariable.class, this, UMLRpyPackage.ICONSTRUCTOR__ARGS);
+		}
+		return args;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getName() {
+		return name;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setName(String newName) {
+		String oldName = name;
+		name = newName;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.ICONSTRUCTOR__NAME, oldName, name));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IDescription getDescription() {
+		if (description != null && description.eIsProxy()) {
+			InternalEObject oldDescription = (InternalEObject)description;
+			description = (IDescription)eResolveProxy(oldDescription);
+			if (description != oldDescription) {
+				InternalEObject newDescription = (InternalEObject)description;
+				NotificationChain msgs = oldDescription.eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.ICONSTRUCTOR__DESCRIPTION, null, null);
+				if (newDescription.eInternalContainer() == null) {
+					msgs = newDescription.eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.ICONSTRUCTOR__DESCRIPTION, null, msgs);
+				}
+				if (msgs != null) msgs.dispatch();
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.ICONSTRUCTOR__DESCRIPTION, oldDescription, description));
+			}
+		}
+		return description;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IDescription basicGetDescription() {
+		return description;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public NotificationChain basicSetDescription(IDescription newDescription, NotificationChain msgs) {
+		IDescription oldDescription = description;
+		description = newDescription;
+		if (eNotificationRequired()) {
+			ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, UMLRpyPackage.ICONSTRUCTOR__DESCRIPTION, oldDescription, newDescription);
+			if (msgs == null) msgs = notification; else msgs.add(notification);
+		}
+		return msgs;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setDescription(IDescription newDescription) {
+		if (newDescription != description) {
+			NotificationChain msgs = null;
+			if (description != null)
+				msgs = ((InternalEObject)description).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.ICONSTRUCTOR__DESCRIPTION, null, msgs);
+			if (newDescription != null)
+				msgs = ((InternalEObject)newDescription).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.ICONSTRUCTOR__DESCRIPTION, null, msgs);
+			msgs = basicSetDescription(newDescription, msgs);
+			if (msgs != null) msgs.dispatch();
+		}
+		else if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.ICONSTRUCTOR__DESCRIPTION, newDescription, newDescription));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getRequiremenTracabilityHandle() {
+		return requiremenTracabilityHandle;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setRequiremenTracabilityHandle(String newRequiremenTracabilityHandle) {
+		String oldRequiremenTracabilityHandle = requiremenTracabilityHandle;
+		requiremenTracabilityHandle = newRequiremenTracabilityHandle;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.ICONSTRUCTOR__REQUIREMEN_TRACABILITY_HANDLE, oldRequiremenTracabilityHandle, requiremenTracabilityHandle));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<String> getCodeUpdateCGTime() {
+		if (codeUpdateCGTime == null) {
+			codeUpdateCGTime = new EDataTypeEList<String>(String.class, this, UMLRpyPackage.ICONSTRUCTOR__CODE_UPDATE_CG_TIME);
+		}
+		return codeUpdateCGTime;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public ITag getTags() {
+		if (tags != null && tags.eIsProxy()) {
+			InternalEObject oldTags = (InternalEObject)tags;
+			tags = (ITag)eResolveProxy(oldTags);
+			if (tags != oldTags) {
+				InternalEObject newTags = (InternalEObject)tags;
+				NotificationChain msgs = oldTags.eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.ICONSTRUCTOR__TAGS, null, null);
+				if (newTags.eInternalContainer() == null) {
+					msgs = newTags.eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.ICONSTRUCTOR__TAGS, null, msgs);
+				}
+				if (msgs != null) msgs.dispatch();
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.ICONSTRUCTOR__TAGS, oldTags, tags));
+			}
+		}
+		return tags;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public ITag basicGetTags() {
+		return tags;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public NotificationChain basicSetTags(ITag newTags, NotificationChain msgs) {
+		ITag oldTags = tags;
+		tags = newTags;
+		if (eNotificationRequired()) {
+			ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, UMLRpyPackage.ICONSTRUCTOR__TAGS, oldTags, newTags);
+			if (msgs == null) msgs = notification; else msgs.add(notification);
+		}
+		return msgs;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setTags(ITag newTags) {
+		if (newTags != tags) {
+			NotificationChain msgs = null;
+			if (tags != null)
+				msgs = ((InternalEObject)tags).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.ICONSTRUCTOR__TAGS, null, msgs);
+			if (newTags != null)
+				msgs = ((InternalEObject)newTags).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.ICONSTRUCTOR__TAGS, null, msgs);
+			msgs = basicSetTags(newTags, msgs);
+			if (msgs != null) msgs.dispatch();
+		}
+		else if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.ICONSTRUCTOR__TAGS, newTags, newTags));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getLastID() {
+		return lastID;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setLastID(String newLastID) {
+		String oldLastID = lastID;
+		lastID = newLastID;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.ICONSTRUCTOR__LAST_ID, oldLastID, lastID));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
+		switch (featureID) {
+			case UMLRpyPackage.ICONSTRUCTOR__ITS_BODY:
+				return basicSetItsBody(null, msgs);
+			case UMLRpyPackage.ICONSTRUCTOR__ARGS:
+				return ((InternalEList<?>)getArgs()).basicRemove(otherEnd, msgs);
+			case UMLRpyPackage.ICONSTRUCTOR__DESCRIPTION:
+				return basicSetDescription(null, msgs);
+			case UMLRpyPackage.ICONSTRUCTOR__TAGS:
+				return basicSetTags(null, msgs);
+		}
+		return super.eInverseRemove(otherEnd, featureID, msgs);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object eGet(int featureID, boolean resolve, boolean coreType) {
+		switch (featureID) {
+			case UMLRpyPackage.ICONSTRUCTOR__UML_DEPENDENCY_ID:
+				return getUmlDependencyID();
+			case UMLRpyPackage.ICONSTRUCTOR__OBJECT_CREATION:
+				return getObjectCreation();
+			case UMLRpyPackage.ICONSTRUCTOR__ID:
+				return getId();
+			case UMLRpyPackage.ICONSTRUCTOR__MY_STATE:
+				return getMyState();
+			case UMLRpyPackage.ICONSTRUCTOR__MODIFIED_TIME_WEAK:
+				return getModifiedTimeWeak();
+			case UMLRpyPackage.ICONSTRUCTOR__RETURN_TYPE:
+				return getReturnType();
+			case UMLRpyPackage.ICONSTRUCTOR__ABSTRACT:
+				return getAbstract();
+			case UMLRpyPackage.ICONSTRUCTOR__FINAL:
+				return getFinal();
+			case UMLRpyPackage.ICONSTRUCTOR__CONCURRENCY:
+				return getConcurrency();
+			case UMLRpyPackage.ICONSTRUCTOR__PROTECTION:
+				return getProtection();
+			case UMLRpyPackage.ICONSTRUCTOR__STATIC:
+				return getStatic();
+			case UMLRpyPackage.ICONSTRUCTOR__CONSTANT:
+				return getConstant();
+			case UMLRpyPackage.ICONSTRUCTOR__ITS_BODY:
+				if (resolve) return getItsBody();
+				return basicGetItsBody();
+			case UMLRpyPackage.ICONSTRUCTOR__INITIALIZER:
+				return getInitializer();
+			case UMLRpyPackage.ICONSTRUCTOR__ARGS:
+				return getArgs();
+			case UMLRpyPackage.ICONSTRUCTOR__NAME:
+				return getName();
+			case UMLRpyPackage.ICONSTRUCTOR__DESCRIPTION:
+				if (resolve) return getDescription();
+				return basicGetDescription();
+			case UMLRpyPackage.ICONSTRUCTOR__REQUIREMEN_TRACABILITY_HANDLE:
+				return getRequiremenTracabilityHandle();
+			case UMLRpyPackage.ICONSTRUCTOR__CODE_UPDATE_CG_TIME:
+				return getCodeUpdateCGTime();
+			case UMLRpyPackage.ICONSTRUCTOR__TAGS:
+				if (resolve) return getTags();
+				return basicGetTags();
+			case UMLRpyPackage.ICONSTRUCTOR__LAST_ID:
+				return getLastID();
+		}
+		return super.eGet(featureID, resolve, coreType);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@SuppressWarnings("unchecked")
+	@Override
+	public void eSet(int featureID, Object newValue) {
+		switch (featureID) {
+			case UMLRpyPackage.ICONSTRUCTOR__UML_DEPENDENCY_ID:
+				setUmlDependencyID((String)newValue);
+				return;
+			case UMLRpyPackage.ICONSTRUCTOR__OBJECT_CREATION:
+				setObjectCreation((String)newValue);
+				return;
+			case UMLRpyPackage.ICONSTRUCTOR__ID:
+				setId((String)newValue);
+				return;
+			case UMLRpyPackage.ICONSTRUCTOR__MY_STATE:
+				setMyState((String)newValue);
+				return;
+			case UMLRpyPackage.ICONSTRUCTOR__MODIFIED_TIME_WEAK:
+				getModifiedTimeWeak().clear();
+				getModifiedTimeWeak().addAll((Collection<? extends String>)newValue);
+				return;
+			case UMLRpyPackage.ICONSTRUCTOR__RETURN_TYPE:
+				getReturnType().clear();
+				getReturnType().addAll((Collection<? extends UnknownType>)newValue);
+				return;
+			case UMLRpyPackage.ICONSTRUCTOR__ABSTRACT:
+				setAbstract((String)newValue);
+				return;
+			case UMLRpyPackage.ICONSTRUCTOR__FINAL:
+				setFinal((String)newValue);
+				return;
+			case UMLRpyPackage.ICONSTRUCTOR__CONCURRENCY:
+				setConcurrency((String)newValue);
+				return;
+			case UMLRpyPackage.ICONSTRUCTOR__PROTECTION:
+				setProtection((String)newValue);
+				return;
+			case UMLRpyPackage.ICONSTRUCTOR__STATIC:
+				setStatic((String)newValue);
+				return;
+			case UMLRpyPackage.ICONSTRUCTOR__CONSTANT:
+				setConstant((String)newValue);
+				return;
+			case UMLRpyPackage.ICONSTRUCTOR__ITS_BODY:
+				setItsBody((IBody)newValue);
+				return;
+			case UMLRpyPackage.ICONSTRUCTOR__INITIALIZER:
+				setInitializer((String)newValue);
+				return;
+			case UMLRpyPackage.ICONSTRUCTOR__ARGS:
+				getArgs().clear();
+				getArgs().addAll((Collection<? extends IVariable>)newValue);
+				return;
+			case UMLRpyPackage.ICONSTRUCTOR__NAME:
+				setName((String)newValue);
+				return;
+			case UMLRpyPackage.ICONSTRUCTOR__DESCRIPTION:
+				setDescription((IDescription)newValue);
+				return;
+			case UMLRpyPackage.ICONSTRUCTOR__REQUIREMEN_TRACABILITY_HANDLE:
+				setRequiremenTracabilityHandle((String)newValue);
+				return;
+			case UMLRpyPackage.ICONSTRUCTOR__CODE_UPDATE_CG_TIME:
+				getCodeUpdateCGTime().clear();
+				getCodeUpdateCGTime().addAll((Collection<? extends String>)newValue);
+				return;
+			case UMLRpyPackage.ICONSTRUCTOR__TAGS:
+				setTags((ITag)newValue);
+				return;
+			case UMLRpyPackage.ICONSTRUCTOR__LAST_ID:
+				setLastID((String)newValue);
+				return;
+		}
+		super.eSet(featureID, newValue);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void eUnset(int featureID) {
+		switch (featureID) {
+			case UMLRpyPackage.ICONSTRUCTOR__UML_DEPENDENCY_ID:
+				setUmlDependencyID(UML_DEPENDENCY_ID_EDEFAULT);
+				return;
+			case UMLRpyPackage.ICONSTRUCTOR__OBJECT_CREATION:
+				setObjectCreation(OBJECT_CREATION_EDEFAULT);
+				return;
+			case UMLRpyPackage.ICONSTRUCTOR__ID:
+				setId(ID_EDEFAULT);
+				return;
+			case UMLRpyPackage.ICONSTRUCTOR__MY_STATE:
+				setMyState(MY_STATE_EDEFAULT);
+				return;
+			case UMLRpyPackage.ICONSTRUCTOR__MODIFIED_TIME_WEAK:
+				getModifiedTimeWeak().clear();
+				return;
+			case UMLRpyPackage.ICONSTRUCTOR__RETURN_TYPE:
+				getReturnType().clear();
+				return;
+			case UMLRpyPackage.ICONSTRUCTOR__ABSTRACT:
+				setAbstract(ABSTRACT_EDEFAULT);
+				return;
+			case UMLRpyPackage.ICONSTRUCTOR__FINAL:
+				setFinal(FINAL_EDEFAULT);
+				return;
+			case UMLRpyPackage.ICONSTRUCTOR__CONCURRENCY:
+				setConcurrency(CONCURRENCY_EDEFAULT);
+				return;
+			case UMLRpyPackage.ICONSTRUCTOR__PROTECTION:
+				setProtection(PROTECTION_EDEFAULT);
+				return;
+			case UMLRpyPackage.ICONSTRUCTOR__STATIC:
+				setStatic(STATIC_EDEFAULT);
+				return;
+			case UMLRpyPackage.ICONSTRUCTOR__CONSTANT:
+				setConstant(CONSTANT_EDEFAULT);
+				return;
+			case UMLRpyPackage.ICONSTRUCTOR__ITS_BODY:
+				setItsBody((IBody)null);
+				return;
+			case UMLRpyPackage.ICONSTRUCTOR__INITIALIZER:
+				setInitializer(INITIALIZER_EDEFAULT);
+				return;
+			case UMLRpyPackage.ICONSTRUCTOR__ARGS:
+				getArgs().clear();
+				return;
+			case UMLRpyPackage.ICONSTRUCTOR__NAME:
+				setName(NAME_EDEFAULT);
+				return;
+			case UMLRpyPackage.ICONSTRUCTOR__DESCRIPTION:
+				setDescription((IDescription)null);
+				return;
+			case UMLRpyPackage.ICONSTRUCTOR__REQUIREMEN_TRACABILITY_HANDLE:
+				setRequiremenTracabilityHandle(REQUIREMEN_TRACABILITY_HANDLE_EDEFAULT);
+				return;
+			case UMLRpyPackage.ICONSTRUCTOR__CODE_UPDATE_CG_TIME:
+				getCodeUpdateCGTime().clear();
+				return;
+			case UMLRpyPackage.ICONSTRUCTOR__TAGS:
+				setTags((ITag)null);
+				return;
+			case UMLRpyPackage.ICONSTRUCTOR__LAST_ID:
+				setLastID(LAST_ID_EDEFAULT);
+				return;
+		}
+		super.eUnset(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public boolean eIsSet(int featureID) {
+		switch (featureID) {
+			case UMLRpyPackage.ICONSTRUCTOR__UML_DEPENDENCY_ID:
+				return UML_DEPENDENCY_ID_EDEFAULT == null ? umlDependencyID != null : !UML_DEPENDENCY_ID_EDEFAULT.equals(umlDependencyID);
+			case UMLRpyPackage.ICONSTRUCTOR__OBJECT_CREATION:
+				return OBJECT_CREATION_EDEFAULT == null ? objectCreation != null : !OBJECT_CREATION_EDEFAULT.equals(objectCreation);
+			case UMLRpyPackage.ICONSTRUCTOR__ID:
+				return ID_EDEFAULT == null ? id != null : !ID_EDEFAULT.equals(id);
+			case UMLRpyPackage.ICONSTRUCTOR__MY_STATE:
+				return MY_STATE_EDEFAULT == null ? myState != null : !MY_STATE_EDEFAULT.equals(myState);
+			case UMLRpyPackage.ICONSTRUCTOR__MODIFIED_TIME_WEAK:
+				return modifiedTimeWeak != null && !modifiedTimeWeak.isEmpty();
+			case UMLRpyPackage.ICONSTRUCTOR__RETURN_TYPE:
+				return returnType != null && !returnType.isEmpty();
+			case UMLRpyPackage.ICONSTRUCTOR__ABSTRACT:
+				return ABSTRACT_EDEFAULT == null ? abstract_ != null : !ABSTRACT_EDEFAULT.equals(abstract_);
+			case UMLRpyPackage.ICONSTRUCTOR__FINAL:
+				return FINAL_EDEFAULT == null ? final_ != null : !FINAL_EDEFAULT.equals(final_);
+			case UMLRpyPackage.ICONSTRUCTOR__CONCURRENCY:
+				return CONCURRENCY_EDEFAULT == null ? concurrency != null : !CONCURRENCY_EDEFAULT.equals(concurrency);
+			case UMLRpyPackage.ICONSTRUCTOR__PROTECTION:
+				return PROTECTION_EDEFAULT == null ? protection != null : !PROTECTION_EDEFAULT.equals(protection);
+			case UMLRpyPackage.ICONSTRUCTOR__STATIC:
+				return STATIC_EDEFAULT == null ? static_ != null : !STATIC_EDEFAULT.equals(static_);
+			case UMLRpyPackage.ICONSTRUCTOR__CONSTANT:
+				return CONSTANT_EDEFAULT == null ? constant != null : !CONSTANT_EDEFAULT.equals(constant);
+			case UMLRpyPackage.ICONSTRUCTOR__ITS_BODY:
+				return itsBody != null;
+			case UMLRpyPackage.ICONSTRUCTOR__INITIALIZER:
+				return INITIALIZER_EDEFAULT == null ? initializer != null : !INITIALIZER_EDEFAULT.equals(initializer);
+			case UMLRpyPackage.ICONSTRUCTOR__ARGS:
+				return args != null && !args.isEmpty();
+			case UMLRpyPackage.ICONSTRUCTOR__NAME:
+				return NAME_EDEFAULT == null ? name != null : !NAME_EDEFAULT.equals(name);
+			case UMLRpyPackage.ICONSTRUCTOR__DESCRIPTION:
+				return description != null;
+			case UMLRpyPackage.ICONSTRUCTOR__REQUIREMEN_TRACABILITY_HANDLE:
+				return REQUIREMEN_TRACABILITY_HANDLE_EDEFAULT == null ? requiremenTracabilityHandle != null : !REQUIREMEN_TRACABILITY_HANDLE_EDEFAULT.equals(requiremenTracabilityHandle);
+			case UMLRpyPackage.ICONSTRUCTOR__CODE_UPDATE_CG_TIME:
+				return codeUpdateCGTime != null && !codeUpdateCGTime.isEmpty();
+			case UMLRpyPackage.ICONSTRUCTOR__TAGS:
+				return tags != null;
+			case UMLRpyPackage.ICONSTRUCTOR__LAST_ID:
+				return LAST_ID_EDEFAULT == null ? lastID != null : !LAST_ID_EDEFAULT.equals(lastID);
+		}
+		return super.eIsSet(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public int eBaseStructuralFeatureID(int derivedFeatureID, Class<?> baseClass) {
+		if (baseClass == M_subjectType.class) {
+			switch (derivedFeatureID) {
+				case UMLRpyPackage.ICONSTRUCTOR__UML_DEPENDENCY_ID: return UMLRpyPackage.MSUBJECT_TYPE__UML_DEPENDENCY_ID;
+				case UMLRpyPackage.ICONSTRUCTOR__OBJECT_CREATION: return UMLRpyPackage.MSUBJECT_TYPE__OBJECT_CREATION;
+				default: return -1;
+			}
+		}
+		if (baseClass == ItemsType.class) {
+			switch (derivedFeatureID) {
+				default: return -1;
+			}
+		}
+		return super.eBaseStructuralFeatureID(derivedFeatureID, baseClass);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public int eDerivedStructuralFeatureID(int baseFeatureID, Class<?> baseClass) {
+		if (baseClass == M_subjectType.class) {
+			switch (baseFeatureID) {
+				case UMLRpyPackage.MSUBJECT_TYPE__UML_DEPENDENCY_ID: return UMLRpyPackage.ICONSTRUCTOR__UML_DEPENDENCY_ID;
+				case UMLRpyPackage.MSUBJECT_TYPE__OBJECT_CREATION: return UMLRpyPackage.ICONSTRUCTOR__OBJECT_CREATION;
+				default: return -1;
+			}
+		}
+		if (baseClass == ItemsType.class) {
+			switch (baseFeatureID) {
+				default: return -1;
+			}
+		}
+		return super.eDerivedStructuralFeatureID(baseFeatureID, baseClass);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String toString() {
+		if (eIsProxy()) return super.toString();
+
+		StringBuffer result = new StringBuffer(super.toString());
+		result.append(" (umlDependencyID: "); //$NON-NLS-1$
+		result.append(umlDependencyID);
+		result.append(", objectCreation: "); //$NON-NLS-1$
+		result.append(objectCreation);
+		result.append(", id: "); //$NON-NLS-1$
+		result.append(id);
+		result.append(", myState: "); //$NON-NLS-1$
+		result.append(myState);
+		result.append(", modifiedTimeWeak: "); //$NON-NLS-1$
+		result.append(modifiedTimeWeak);
+		result.append(", abstract: "); //$NON-NLS-1$
+		result.append(abstract_);
+		result.append(", final: "); //$NON-NLS-1$
+		result.append(final_);
+		result.append(", concurrency: "); //$NON-NLS-1$
+		result.append(concurrency);
+		result.append(", protection: "); //$NON-NLS-1$
+		result.append(protection);
+		result.append(", static: "); //$NON-NLS-1$
+		result.append(static_);
+		result.append(", constant: "); //$NON-NLS-1$
+		result.append(constant);
+		result.append(", initializer: "); //$NON-NLS-1$
+		result.append(initializer);
+		result.append(", name: "); //$NON-NLS-1$
+		result.append(name);
+		result.append(", requiremenTracabilityHandle: "); //$NON-NLS-1$
+		result.append(requiremenTracabilityHandle);
+		result.append(", codeUpdateCGTime: "); //$NON-NLS-1$
+		result.append(codeUpdateCGTime);
+		result.append(", lastID: "); //$NON-NLS-1$
+		result.append(lastID);
+		result.append(')');
+		return result.toString();
+	}
+
+} //IConstructorImpl
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/IContextSpecificationImpl.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/IContextSpecificationImpl.java
new file mode 100755
index 0000000..e8b81ff
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/IContextSpecificationImpl.java
@@ -0,0 +1,47 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl;
+
+import org.eclipse.emf.ecore.EClass;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IContextSpecification;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>IContext Specification</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+public class IContextSpecificationImpl extends IValueSpecificationImpl implements IContextSpecification {
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected IContextSpecificationImpl() {
+		super();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EClass eStaticClass() {
+		return UMLRpyPackage.eINSTANCE.getIContextSpecification();
+	}
+
+} //IContextSpecificationImpl
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/IControlledFileImpl.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/IControlledFileImpl.java
new file mode 100755
index 0000000..e9fc782
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/IControlledFileImpl.java
@@ -0,0 +1,47 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl;
+
+import org.eclipse.emf.ecore.EClass;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IControlledFile;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>IControlled File</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+public class IControlledFileImpl extends IUnitImpl implements IControlledFile {
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected IControlledFileImpl() {
+		super();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EClass eStaticClass() {
+		return UMLRpyPackage.eINSTANCE.getIControlledFile();
+	}
+
+} //IControlledFileImpl
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/IDefaultDrvdTransImpl.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/IDefaultDrvdTransImpl.java
new file mode 100755
index 0000000..cfcfa02
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/IDefaultDrvdTransImpl.java
@@ -0,0 +1,1290 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl;
+
+import java.util.Collection;
+
+import org.eclipse.emf.common.notify.Notification;
+import org.eclipse.emf.common.notify.NotificationChain;
+
+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.EDataTypeEList;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.DependsOnType;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ElementsType;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IDefaultDrvdTrans;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IDescription;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IRequirement;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IState;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IStereotype;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ItsLabelType;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ItsTargetType;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.TransitionsType;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>IDefault Drvd Trans</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * </p>
+ * <ul>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IDefaultDrvdTransImpl#getModifiedTimeWeak <em>Modified Time Weak</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IDefaultDrvdTransImpl#getStaticReaction <em>Static Reaction</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IDefaultDrvdTransImpl#getItsTarget <em>Its Target</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IDefaultDrvdTransImpl#getId <em>Id</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IDefaultDrvdTransImpl#getCodeUpdateCGTime <em>Code Update CG Time</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IDefaultDrvdTransImpl#getRequiremenTracabilityHandle <em>Requiremen Tracability Handle</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IDefaultDrvdTransImpl#getDescription <em>Description</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IDefaultDrvdTransImpl#getItsLabel <em>Its Label</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IDefaultDrvdTransImpl#getUmlDependencyID <em>Uml Dependency ID</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IDefaultDrvdTransImpl#getMyState <em>My State</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IDefaultDrvdTransImpl#getObjectCreation <em>Object Creation</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IDefaultDrvdTransImpl#getName <em>Name</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IDefaultDrvdTransImpl#getItsSource <em>Its Source</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IDefaultDrvdTransImpl#getOfState <em>Of State</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IDefaultDrvdTransImpl#getErrorStatus <em>Error Status</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IDefaultDrvdTransImpl#getInheritsFromHandle <em>Inherits From Handle</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IDefaultDrvdTransImpl#getAnnotations <em>Annotations</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IDefaultDrvdTransImpl#getStereotypes <em>Stereotypes</em>}</li>
+ * </ul>
+ *
+ * @generated
+ */
+public class IDefaultDrvdTransImpl extends DefaultTransTypeImpl implements IDefaultDrvdTrans {
+	/**
+	 * The cached value of the '{@link #getModifiedTimeWeak() <em>Modified Time Weak</em>}' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getModifiedTimeWeak()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<String> modifiedTimeWeak;
+
+	/**
+	 * The default value of the '{@link #getStaticReaction() <em>Static Reaction</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getStaticReaction()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String STATIC_REACTION_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getStaticReaction() <em>Static Reaction</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getStaticReaction()
+	 * @generated
+	 * @ordered
+	 */
+	protected String staticReaction = STATIC_REACTION_EDEFAULT;
+
+	/**
+	 * The cached value of the '{@link #getItsTarget() <em>Its Target</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getItsTarget()
+	 * @generated
+	 * @ordered
+	 */
+	protected ItsTargetType itsTarget;
+
+	/**
+	 * The default value of the '{@link #getId() <em>Id</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getId()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String ID_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getId() <em>Id</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getId()
+	 * @generated
+	 * @ordered
+	 */
+	protected String id = ID_EDEFAULT;
+
+	/**
+	 * The cached value of the '{@link #getCodeUpdateCGTime() <em>Code Update CG Time</em>}' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getCodeUpdateCGTime()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<String> codeUpdateCGTime;
+
+	/**
+	 * The default value of the '{@link #getRequiremenTracabilityHandle() <em>Requiremen Tracability Handle</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getRequiremenTracabilityHandle()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String REQUIREMEN_TRACABILITY_HANDLE_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getRequiremenTracabilityHandle() <em>Requiremen Tracability Handle</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getRequiremenTracabilityHandle()
+	 * @generated
+	 * @ordered
+	 */
+	protected String requiremenTracabilityHandle = REQUIREMEN_TRACABILITY_HANDLE_EDEFAULT;
+
+	/**
+	 * The cached value of the '{@link #getDescription() <em>Description</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getDescription()
+	 * @generated
+	 * @ordered
+	 */
+	protected IDescription description;
+
+	/**
+	 * The cached value of the '{@link #getItsLabel() <em>Its Label</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getItsLabel()
+	 * @generated
+	 * @ordered
+	 */
+	protected ItsLabelType itsLabel;
+
+	/**
+	 * The default value of the '{@link #getUmlDependencyID() <em>Uml Dependency ID</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getUmlDependencyID()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String UML_DEPENDENCY_ID_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getUmlDependencyID() <em>Uml Dependency ID</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getUmlDependencyID()
+	 * @generated
+	 * @ordered
+	 */
+	protected String umlDependencyID = UML_DEPENDENCY_ID_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getMyState() <em>My State</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getMyState()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String MY_STATE_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getMyState() <em>My State</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getMyState()
+	 * @generated
+	 * @ordered
+	 */
+	protected String myState = MY_STATE_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getObjectCreation() <em>Object Creation</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getObjectCreation()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String OBJECT_CREATION_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getObjectCreation() <em>Object Creation</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getObjectCreation()
+	 * @generated
+	 * @ordered
+	 */
+	protected String objectCreation = OBJECT_CREATION_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getName() <em>Name</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getName()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String NAME_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getName() <em>Name</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getName()
+	 * @generated
+	 * @ordered
+	 */
+	protected String name = NAME_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getItsSource() <em>Its Source</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getItsSource()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String ITS_SOURCE_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getItsSource() <em>Its Source</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getItsSource()
+	 * @generated
+	 * @ordered
+	 */
+	protected String itsSource = ITS_SOURCE_EDEFAULT;
+
+	/**
+	 * The cached value of the '{@link #getOfState() <em>Of State</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getOfState()
+	 * @generated
+	 * @ordered
+	 */
+	protected IState ofState;
+
+	/**
+	 * The default value of the '{@link #getErrorStatus() <em>Error Status</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getErrorStatus()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String ERROR_STATUS_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getErrorStatus() <em>Error Status</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getErrorStatus()
+	 * @generated
+	 * @ordered
+	 */
+	protected String errorStatus = ERROR_STATUS_EDEFAULT;
+
+	/**
+	 * The cached value of the '{@link #getInheritsFromHandle() <em>Inherits From Handle</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getInheritsFromHandle()
+	 * @generated
+	 * @ordered
+	 */
+	protected IDefaultDrvdTrans inheritsFromHandle;
+
+	/**
+	 * The cached value of the '{@link #getAnnotations() <em>Annotations</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getAnnotations()
+	 * @generated
+	 * @ordered
+	 */
+	protected IRequirement annotations;
+
+	/**
+	 * The cached value of the '{@link #getStereotypes() <em>Stereotypes</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getStereotypes()
+	 * @generated
+	 * @ordered
+	 */
+	protected IStereotype stereotypes;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected IDefaultDrvdTransImpl() {
+		super();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EClass eStaticClass() {
+		return UMLRpyPackage.eINSTANCE.getIDefaultDrvdTrans();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<String> getModifiedTimeWeak() {
+		if (modifiedTimeWeak == null) {
+			modifiedTimeWeak = new EDataTypeEList<String>(String.class, this, UMLRpyPackage.IDEFAULT_DRVD_TRANS__MODIFIED_TIME_WEAK);
+		}
+		return modifiedTimeWeak;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getStaticReaction() {
+		return staticReaction;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setStaticReaction(String newStaticReaction) {
+		String oldStaticReaction = staticReaction;
+		staticReaction = newStaticReaction;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IDEFAULT_DRVD_TRANS__STATIC_REACTION, oldStaticReaction, staticReaction));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public ItsTargetType getItsTarget() {
+		if (itsTarget != null && itsTarget.eIsProxy()) {
+			InternalEObject oldItsTarget = (InternalEObject)itsTarget;
+			itsTarget = (ItsTargetType)eResolveProxy(oldItsTarget);
+			if (itsTarget != oldItsTarget) {
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.IDEFAULT_DRVD_TRANS__ITS_TARGET, oldItsTarget, itsTarget));
+			}
+		}
+		return itsTarget;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public ItsTargetType basicGetItsTarget() {
+		return itsTarget;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setItsTarget(ItsTargetType newItsTarget) {
+		ItsTargetType oldItsTarget = itsTarget;
+		itsTarget = newItsTarget;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IDEFAULT_DRVD_TRANS__ITS_TARGET, oldItsTarget, itsTarget));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getId() {
+		return id;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setId(String newId) {
+		String oldId = id;
+		id = newId;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IDEFAULT_DRVD_TRANS__ID, oldId, id));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<String> getCodeUpdateCGTime() {
+		if (codeUpdateCGTime == null) {
+			codeUpdateCGTime = new EDataTypeEList<String>(String.class, this, UMLRpyPackage.IDEFAULT_DRVD_TRANS__CODE_UPDATE_CG_TIME);
+		}
+		return codeUpdateCGTime;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getRequiremenTracabilityHandle() {
+		return requiremenTracabilityHandle;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setRequiremenTracabilityHandle(String newRequiremenTracabilityHandle) {
+		String oldRequiremenTracabilityHandle = requiremenTracabilityHandle;
+		requiremenTracabilityHandle = newRequiremenTracabilityHandle;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IDEFAULT_DRVD_TRANS__REQUIREMEN_TRACABILITY_HANDLE, oldRequiremenTracabilityHandle, requiremenTracabilityHandle));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IDescription getDescription() {
+		if (description != null && description.eIsProxy()) {
+			InternalEObject oldDescription = (InternalEObject)description;
+			description = (IDescription)eResolveProxy(oldDescription);
+			if (description != oldDescription) {
+				InternalEObject newDescription = (InternalEObject)description;
+				NotificationChain msgs = oldDescription.eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IDEFAULT_DRVD_TRANS__DESCRIPTION, null, null);
+				if (newDescription.eInternalContainer() == null) {
+					msgs = newDescription.eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IDEFAULT_DRVD_TRANS__DESCRIPTION, null, msgs);
+				}
+				if (msgs != null) msgs.dispatch();
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.IDEFAULT_DRVD_TRANS__DESCRIPTION, oldDescription, description));
+			}
+		}
+		return description;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IDescription basicGetDescription() {
+		return description;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public NotificationChain basicSetDescription(IDescription newDescription, NotificationChain msgs) {
+		IDescription oldDescription = description;
+		description = newDescription;
+		if (eNotificationRequired()) {
+			ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IDEFAULT_DRVD_TRANS__DESCRIPTION, oldDescription, newDescription);
+			if (msgs == null) msgs = notification; else msgs.add(notification);
+		}
+		return msgs;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setDescription(IDescription newDescription) {
+		if (newDescription != description) {
+			NotificationChain msgs = null;
+			if (description != null)
+				msgs = ((InternalEObject)description).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IDEFAULT_DRVD_TRANS__DESCRIPTION, null, msgs);
+			if (newDescription != null)
+				msgs = ((InternalEObject)newDescription).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IDEFAULT_DRVD_TRANS__DESCRIPTION, null, msgs);
+			msgs = basicSetDescription(newDescription, msgs);
+			if (msgs != null) msgs.dispatch();
+		}
+		else if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IDEFAULT_DRVD_TRANS__DESCRIPTION, newDescription, newDescription));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public ItsLabelType getItsLabel() {
+		if (itsLabel != null && itsLabel.eIsProxy()) {
+			InternalEObject oldItsLabel = (InternalEObject)itsLabel;
+			itsLabel = (ItsLabelType)eResolveProxy(oldItsLabel);
+			if (itsLabel != oldItsLabel) {
+				InternalEObject newItsLabel = (InternalEObject)itsLabel;
+				NotificationChain msgs = oldItsLabel.eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IDEFAULT_DRVD_TRANS__ITS_LABEL, null, null);
+				if (newItsLabel.eInternalContainer() == null) {
+					msgs = newItsLabel.eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IDEFAULT_DRVD_TRANS__ITS_LABEL, null, msgs);
+				}
+				if (msgs != null) msgs.dispatch();
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.IDEFAULT_DRVD_TRANS__ITS_LABEL, oldItsLabel, itsLabel));
+			}
+		}
+		return itsLabel;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public ItsLabelType basicGetItsLabel() {
+		return itsLabel;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public NotificationChain basicSetItsLabel(ItsLabelType newItsLabel, NotificationChain msgs) {
+		ItsLabelType oldItsLabel = itsLabel;
+		itsLabel = newItsLabel;
+		if (eNotificationRequired()) {
+			ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IDEFAULT_DRVD_TRANS__ITS_LABEL, oldItsLabel, newItsLabel);
+			if (msgs == null) msgs = notification; else msgs.add(notification);
+		}
+		return msgs;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setItsLabel(ItsLabelType newItsLabel) {
+		if (newItsLabel != itsLabel) {
+			NotificationChain msgs = null;
+			if (itsLabel != null)
+				msgs = ((InternalEObject)itsLabel).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IDEFAULT_DRVD_TRANS__ITS_LABEL, null, msgs);
+			if (newItsLabel != null)
+				msgs = ((InternalEObject)newItsLabel).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IDEFAULT_DRVD_TRANS__ITS_LABEL, null, msgs);
+			msgs = basicSetItsLabel(newItsLabel, msgs);
+			if (msgs != null) msgs.dispatch();
+		}
+		else if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IDEFAULT_DRVD_TRANS__ITS_LABEL, newItsLabel, newItsLabel));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getUmlDependencyID() {
+		return umlDependencyID;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setUmlDependencyID(String newUmlDependencyID) {
+		String oldUmlDependencyID = umlDependencyID;
+		umlDependencyID = newUmlDependencyID;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IDEFAULT_DRVD_TRANS__UML_DEPENDENCY_ID, oldUmlDependencyID, umlDependencyID));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getMyState() {
+		return myState;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setMyState(String newMyState) {
+		String oldMyState = myState;
+		myState = newMyState;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IDEFAULT_DRVD_TRANS__MY_STATE, oldMyState, myState));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getObjectCreation() {
+		return objectCreation;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setObjectCreation(String newObjectCreation) {
+		String oldObjectCreation = objectCreation;
+		objectCreation = newObjectCreation;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IDEFAULT_DRVD_TRANS__OBJECT_CREATION, oldObjectCreation, objectCreation));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getName() {
+		return name;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setName(String newName) {
+		String oldName = name;
+		name = newName;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IDEFAULT_DRVD_TRANS__NAME, oldName, name));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getItsSource() {
+		return itsSource;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setItsSource(String newItsSource) {
+		String oldItsSource = itsSource;
+		itsSource = newItsSource;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IDEFAULT_DRVD_TRANS__ITS_SOURCE, oldItsSource, itsSource));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IState getOfState() {
+		if (ofState != null && ofState.eIsProxy()) {
+			InternalEObject oldOfState = (InternalEObject)ofState;
+			ofState = (IState)eResolveProxy(oldOfState);
+			if (ofState != oldOfState) {
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.IDEFAULT_DRVD_TRANS__OF_STATE, oldOfState, ofState));
+			}
+		}
+		return ofState;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IState basicGetOfState() {
+		return ofState;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setOfState(IState newOfState) {
+		IState oldOfState = ofState;
+		ofState = newOfState;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IDEFAULT_DRVD_TRANS__OF_STATE, oldOfState, ofState));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getErrorStatus() {
+		return errorStatus;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setErrorStatus(String newErrorStatus) {
+		String oldErrorStatus = errorStatus;
+		errorStatus = newErrorStatus;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IDEFAULT_DRVD_TRANS__ERROR_STATUS, oldErrorStatus, errorStatus));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IDefaultDrvdTrans getInheritsFromHandle() {
+		if (inheritsFromHandle != null && inheritsFromHandle.eIsProxy()) {
+			InternalEObject oldInheritsFromHandle = (InternalEObject)inheritsFromHandle;
+			inheritsFromHandle = (IDefaultDrvdTrans)eResolveProxy(oldInheritsFromHandle);
+			if (inheritsFromHandle != oldInheritsFromHandle) {
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.IDEFAULT_DRVD_TRANS__INHERITS_FROM_HANDLE, oldInheritsFromHandle, inheritsFromHandle));
+			}
+		}
+		return inheritsFromHandle;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IDefaultDrvdTrans basicGetInheritsFromHandle() {
+		return inheritsFromHandle;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setInheritsFromHandle(IDefaultDrvdTrans newInheritsFromHandle) {
+		IDefaultDrvdTrans oldInheritsFromHandle = inheritsFromHandle;
+		inheritsFromHandle = newInheritsFromHandle;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IDEFAULT_DRVD_TRANS__INHERITS_FROM_HANDLE, oldInheritsFromHandle, inheritsFromHandle));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IRequirement getAnnotations() {
+		if (annotations != null && annotations.eIsProxy()) {
+			InternalEObject oldAnnotations = (InternalEObject)annotations;
+			annotations = (IRequirement)eResolveProxy(oldAnnotations);
+			if (annotations != oldAnnotations) {
+				InternalEObject newAnnotations = (InternalEObject)annotations;
+				NotificationChain msgs = oldAnnotations.eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IDEFAULT_DRVD_TRANS__ANNOTATIONS, null, null);
+				if (newAnnotations.eInternalContainer() == null) {
+					msgs = newAnnotations.eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IDEFAULT_DRVD_TRANS__ANNOTATIONS, null, msgs);
+				}
+				if (msgs != null) msgs.dispatch();
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.IDEFAULT_DRVD_TRANS__ANNOTATIONS, oldAnnotations, annotations));
+			}
+		}
+		return annotations;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IRequirement basicGetAnnotations() {
+		return annotations;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public NotificationChain basicSetAnnotations(IRequirement newAnnotations, NotificationChain msgs) {
+		IRequirement oldAnnotations = annotations;
+		annotations = newAnnotations;
+		if (eNotificationRequired()) {
+			ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IDEFAULT_DRVD_TRANS__ANNOTATIONS, oldAnnotations, newAnnotations);
+			if (msgs == null) msgs = notification; else msgs.add(notification);
+		}
+		return msgs;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setAnnotations(IRequirement newAnnotations) {
+		if (newAnnotations != annotations) {
+			NotificationChain msgs = null;
+			if (annotations != null)
+				msgs = ((InternalEObject)annotations).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IDEFAULT_DRVD_TRANS__ANNOTATIONS, null, msgs);
+			if (newAnnotations != null)
+				msgs = ((InternalEObject)newAnnotations).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IDEFAULT_DRVD_TRANS__ANNOTATIONS, null, msgs);
+			msgs = basicSetAnnotations(newAnnotations, msgs);
+			if (msgs != null) msgs.dispatch();
+		}
+		else if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IDEFAULT_DRVD_TRANS__ANNOTATIONS, newAnnotations, newAnnotations));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IStereotype getStereotypes() {
+		if (stereotypes != null && stereotypes.eIsProxy()) {
+			InternalEObject oldStereotypes = (InternalEObject)stereotypes;
+			stereotypes = (IStereotype)eResolveProxy(oldStereotypes);
+			if (stereotypes != oldStereotypes) {
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.IDEFAULT_DRVD_TRANS__STEREOTYPES, oldStereotypes, stereotypes));
+			}
+		}
+		return stereotypes;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IStereotype basicGetStereotypes() {
+		return stereotypes;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setStereotypes(IStereotype newStereotypes) {
+		IStereotype oldStereotypes = stereotypes;
+		stereotypes = newStereotypes;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IDEFAULT_DRVD_TRANS__STEREOTYPES, oldStereotypes, stereotypes));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
+		switch (featureID) {
+			case UMLRpyPackage.IDEFAULT_DRVD_TRANS__DESCRIPTION:
+				return basicSetDescription(null, msgs);
+			case UMLRpyPackage.IDEFAULT_DRVD_TRANS__ITS_LABEL:
+				return basicSetItsLabel(null, msgs);
+			case UMLRpyPackage.IDEFAULT_DRVD_TRANS__ANNOTATIONS:
+				return basicSetAnnotations(null, msgs);
+		}
+		return super.eInverseRemove(otherEnd, featureID, msgs);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object eGet(int featureID, boolean resolve, boolean coreType) {
+		switch (featureID) {
+			case UMLRpyPackage.IDEFAULT_DRVD_TRANS__MODIFIED_TIME_WEAK:
+				return getModifiedTimeWeak();
+			case UMLRpyPackage.IDEFAULT_DRVD_TRANS__STATIC_REACTION:
+				return getStaticReaction();
+			case UMLRpyPackage.IDEFAULT_DRVD_TRANS__ITS_TARGET:
+				if (resolve) return getItsTarget();
+				return basicGetItsTarget();
+			case UMLRpyPackage.IDEFAULT_DRVD_TRANS__ID:
+				return getId();
+			case UMLRpyPackage.IDEFAULT_DRVD_TRANS__CODE_UPDATE_CG_TIME:
+				return getCodeUpdateCGTime();
+			case UMLRpyPackage.IDEFAULT_DRVD_TRANS__REQUIREMEN_TRACABILITY_HANDLE:
+				return getRequiremenTracabilityHandle();
+			case UMLRpyPackage.IDEFAULT_DRVD_TRANS__DESCRIPTION:
+				if (resolve) return getDescription();
+				return basicGetDescription();
+			case UMLRpyPackage.IDEFAULT_DRVD_TRANS__ITS_LABEL:
+				if (resolve) return getItsLabel();
+				return basicGetItsLabel();
+			case UMLRpyPackage.IDEFAULT_DRVD_TRANS__UML_DEPENDENCY_ID:
+				return getUmlDependencyID();
+			case UMLRpyPackage.IDEFAULT_DRVD_TRANS__MY_STATE:
+				return getMyState();
+			case UMLRpyPackage.IDEFAULT_DRVD_TRANS__OBJECT_CREATION:
+				return getObjectCreation();
+			case UMLRpyPackage.IDEFAULT_DRVD_TRANS__NAME:
+				return getName();
+			case UMLRpyPackage.IDEFAULT_DRVD_TRANS__ITS_SOURCE:
+				return getItsSource();
+			case UMLRpyPackage.IDEFAULT_DRVD_TRANS__OF_STATE:
+				if (resolve) return getOfState();
+				return basicGetOfState();
+			case UMLRpyPackage.IDEFAULT_DRVD_TRANS__ERROR_STATUS:
+				return getErrorStatus();
+			case UMLRpyPackage.IDEFAULT_DRVD_TRANS__INHERITS_FROM_HANDLE:
+				if (resolve) return getInheritsFromHandle();
+				return basicGetInheritsFromHandle();
+			case UMLRpyPackage.IDEFAULT_DRVD_TRANS__ANNOTATIONS:
+				if (resolve) return getAnnotations();
+				return basicGetAnnotations();
+			case UMLRpyPackage.IDEFAULT_DRVD_TRANS__STEREOTYPES:
+				if (resolve) return getStereotypes();
+				return basicGetStereotypes();
+		}
+		return super.eGet(featureID, resolve, coreType);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@SuppressWarnings("unchecked")
+	@Override
+	public void eSet(int featureID, Object newValue) {
+		switch (featureID) {
+			case UMLRpyPackage.IDEFAULT_DRVD_TRANS__MODIFIED_TIME_WEAK:
+				getModifiedTimeWeak().clear();
+				getModifiedTimeWeak().addAll((Collection<? extends String>)newValue);
+				return;
+			case UMLRpyPackage.IDEFAULT_DRVD_TRANS__STATIC_REACTION:
+				setStaticReaction((String)newValue);
+				return;
+			case UMLRpyPackage.IDEFAULT_DRVD_TRANS__ITS_TARGET:
+				setItsTarget((ItsTargetType)newValue);
+				return;
+			case UMLRpyPackage.IDEFAULT_DRVD_TRANS__ID:
+				setId((String)newValue);
+				return;
+			case UMLRpyPackage.IDEFAULT_DRVD_TRANS__CODE_UPDATE_CG_TIME:
+				getCodeUpdateCGTime().clear();
+				getCodeUpdateCGTime().addAll((Collection<? extends String>)newValue);
+				return;
+			case UMLRpyPackage.IDEFAULT_DRVD_TRANS__REQUIREMEN_TRACABILITY_HANDLE:
+				setRequiremenTracabilityHandle((String)newValue);
+				return;
+			case UMLRpyPackage.IDEFAULT_DRVD_TRANS__DESCRIPTION:
+				setDescription((IDescription)newValue);
+				return;
+			case UMLRpyPackage.IDEFAULT_DRVD_TRANS__ITS_LABEL:
+				setItsLabel((ItsLabelType)newValue);
+				return;
+			case UMLRpyPackage.IDEFAULT_DRVD_TRANS__UML_DEPENDENCY_ID:
+				setUmlDependencyID((String)newValue);
+				return;
+			case UMLRpyPackage.IDEFAULT_DRVD_TRANS__MY_STATE:
+				setMyState((String)newValue);
+				return;
+			case UMLRpyPackage.IDEFAULT_DRVD_TRANS__OBJECT_CREATION:
+				setObjectCreation((String)newValue);
+				return;
+			case UMLRpyPackage.IDEFAULT_DRVD_TRANS__NAME:
+				setName((String)newValue);
+				return;
+			case UMLRpyPackage.IDEFAULT_DRVD_TRANS__ITS_SOURCE:
+				setItsSource((String)newValue);
+				return;
+			case UMLRpyPackage.IDEFAULT_DRVD_TRANS__OF_STATE:
+				setOfState((IState)newValue);
+				return;
+			case UMLRpyPackage.IDEFAULT_DRVD_TRANS__ERROR_STATUS:
+				setErrorStatus((String)newValue);
+				return;
+			case UMLRpyPackage.IDEFAULT_DRVD_TRANS__INHERITS_FROM_HANDLE:
+				setInheritsFromHandle((IDefaultDrvdTrans)newValue);
+				return;
+			case UMLRpyPackage.IDEFAULT_DRVD_TRANS__ANNOTATIONS:
+				setAnnotations((IRequirement)newValue);
+				return;
+			case UMLRpyPackage.IDEFAULT_DRVD_TRANS__STEREOTYPES:
+				setStereotypes((IStereotype)newValue);
+				return;
+		}
+		super.eSet(featureID, newValue);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void eUnset(int featureID) {
+		switch (featureID) {
+			case UMLRpyPackage.IDEFAULT_DRVD_TRANS__MODIFIED_TIME_WEAK:
+				getModifiedTimeWeak().clear();
+				return;
+			case UMLRpyPackage.IDEFAULT_DRVD_TRANS__STATIC_REACTION:
+				setStaticReaction(STATIC_REACTION_EDEFAULT);
+				return;
+			case UMLRpyPackage.IDEFAULT_DRVD_TRANS__ITS_TARGET:
+				setItsTarget((ItsTargetType)null);
+				return;
+			case UMLRpyPackage.IDEFAULT_DRVD_TRANS__ID:
+				setId(ID_EDEFAULT);
+				return;
+			case UMLRpyPackage.IDEFAULT_DRVD_TRANS__CODE_UPDATE_CG_TIME:
+				getCodeUpdateCGTime().clear();
+				return;
+			case UMLRpyPackage.IDEFAULT_DRVD_TRANS__REQUIREMEN_TRACABILITY_HANDLE:
+				setRequiremenTracabilityHandle(REQUIREMEN_TRACABILITY_HANDLE_EDEFAULT);
+				return;
+			case UMLRpyPackage.IDEFAULT_DRVD_TRANS__DESCRIPTION:
+				setDescription((IDescription)null);
+				return;
+			case UMLRpyPackage.IDEFAULT_DRVD_TRANS__ITS_LABEL:
+				setItsLabel((ItsLabelType)null);
+				return;
+			case UMLRpyPackage.IDEFAULT_DRVD_TRANS__UML_DEPENDENCY_ID:
+				setUmlDependencyID(UML_DEPENDENCY_ID_EDEFAULT);
+				return;
+			case UMLRpyPackage.IDEFAULT_DRVD_TRANS__MY_STATE:
+				setMyState(MY_STATE_EDEFAULT);
+				return;
+			case UMLRpyPackage.IDEFAULT_DRVD_TRANS__OBJECT_CREATION:
+				setObjectCreation(OBJECT_CREATION_EDEFAULT);
+				return;
+			case UMLRpyPackage.IDEFAULT_DRVD_TRANS__NAME:
+				setName(NAME_EDEFAULT);
+				return;
+			case UMLRpyPackage.IDEFAULT_DRVD_TRANS__ITS_SOURCE:
+				setItsSource(ITS_SOURCE_EDEFAULT);
+				return;
+			case UMLRpyPackage.IDEFAULT_DRVD_TRANS__OF_STATE:
+				setOfState((IState)null);
+				return;
+			case UMLRpyPackage.IDEFAULT_DRVD_TRANS__ERROR_STATUS:
+				setErrorStatus(ERROR_STATUS_EDEFAULT);
+				return;
+			case UMLRpyPackage.IDEFAULT_DRVD_TRANS__INHERITS_FROM_HANDLE:
+				setInheritsFromHandle((IDefaultDrvdTrans)null);
+				return;
+			case UMLRpyPackage.IDEFAULT_DRVD_TRANS__ANNOTATIONS:
+				setAnnotations((IRequirement)null);
+				return;
+			case UMLRpyPackage.IDEFAULT_DRVD_TRANS__STEREOTYPES:
+				setStereotypes((IStereotype)null);
+				return;
+		}
+		super.eUnset(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public boolean eIsSet(int featureID) {
+		switch (featureID) {
+			case UMLRpyPackage.IDEFAULT_DRVD_TRANS__MODIFIED_TIME_WEAK:
+				return modifiedTimeWeak != null && !modifiedTimeWeak.isEmpty();
+			case UMLRpyPackage.IDEFAULT_DRVD_TRANS__STATIC_REACTION:
+				return STATIC_REACTION_EDEFAULT == null ? staticReaction != null : !STATIC_REACTION_EDEFAULT.equals(staticReaction);
+			case UMLRpyPackage.IDEFAULT_DRVD_TRANS__ITS_TARGET:
+				return itsTarget != null;
+			case UMLRpyPackage.IDEFAULT_DRVD_TRANS__ID:
+				return ID_EDEFAULT == null ? id != null : !ID_EDEFAULT.equals(id);
+			case UMLRpyPackage.IDEFAULT_DRVD_TRANS__CODE_UPDATE_CG_TIME:
+				return codeUpdateCGTime != null && !codeUpdateCGTime.isEmpty();
+			case UMLRpyPackage.IDEFAULT_DRVD_TRANS__REQUIREMEN_TRACABILITY_HANDLE:
+				return REQUIREMEN_TRACABILITY_HANDLE_EDEFAULT == null ? requiremenTracabilityHandle != null : !REQUIREMEN_TRACABILITY_HANDLE_EDEFAULT.equals(requiremenTracabilityHandle);
+			case UMLRpyPackage.IDEFAULT_DRVD_TRANS__DESCRIPTION:
+				return description != null;
+			case UMLRpyPackage.IDEFAULT_DRVD_TRANS__ITS_LABEL:
+				return itsLabel != null;
+			case UMLRpyPackage.IDEFAULT_DRVD_TRANS__UML_DEPENDENCY_ID:
+				return UML_DEPENDENCY_ID_EDEFAULT == null ? umlDependencyID != null : !UML_DEPENDENCY_ID_EDEFAULT.equals(umlDependencyID);
+			case UMLRpyPackage.IDEFAULT_DRVD_TRANS__MY_STATE:
+				return MY_STATE_EDEFAULT == null ? myState != null : !MY_STATE_EDEFAULT.equals(myState);
+			case UMLRpyPackage.IDEFAULT_DRVD_TRANS__OBJECT_CREATION:
+				return OBJECT_CREATION_EDEFAULT == null ? objectCreation != null : !OBJECT_CREATION_EDEFAULT.equals(objectCreation);
+			case UMLRpyPackage.IDEFAULT_DRVD_TRANS__NAME:
+				return NAME_EDEFAULT == null ? name != null : !NAME_EDEFAULT.equals(name);
+			case UMLRpyPackage.IDEFAULT_DRVD_TRANS__ITS_SOURCE:
+				return ITS_SOURCE_EDEFAULT == null ? itsSource != null : !ITS_SOURCE_EDEFAULT.equals(itsSource);
+			case UMLRpyPackage.IDEFAULT_DRVD_TRANS__OF_STATE:
+				return ofState != null;
+			case UMLRpyPackage.IDEFAULT_DRVD_TRANS__ERROR_STATUS:
+				return ERROR_STATUS_EDEFAULT == null ? errorStatus != null : !ERROR_STATUS_EDEFAULT.equals(errorStatus);
+			case UMLRpyPackage.IDEFAULT_DRVD_TRANS__INHERITS_FROM_HANDLE:
+				return inheritsFromHandle != null;
+			case UMLRpyPackage.IDEFAULT_DRVD_TRANS__ANNOTATIONS:
+				return annotations != null;
+			case UMLRpyPackage.IDEFAULT_DRVD_TRANS__STEREOTYPES:
+				return stereotypes != null;
+		}
+		return super.eIsSet(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public int eBaseStructuralFeatureID(int derivedFeatureID, Class<?> baseClass) {
+		if (baseClass == TransitionsType.class) {
+			switch (derivedFeatureID) {
+				case UMLRpyPackage.IDEFAULT_DRVD_TRANS__MODIFIED_TIME_WEAK: return UMLRpyPackage.TRANSITIONS_TYPE__MODIFIED_TIME_WEAK;
+				case UMLRpyPackage.IDEFAULT_DRVD_TRANS__STATIC_REACTION: return UMLRpyPackage.TRANSITIONS_TYPE__STATIC_REACTION;
+				case UMLRpyPackage.IDEFAULT_DRVD_TRANS__ITS_TARGET: return UMLRpyPackage.TRANSITIONS_TYPE__ITS_TARGET;
+				case UMLRpyPackage.IDEFAULT_DRVD_TRANS__ID: return UMLRpyPackage.TRANSITIONS_TYPE__ID;
+				case UMLRpyPackage.IDEFAULT_DRVD_TRANS__CODE_UPDATE_CG_TIME: return UMLRpyPackage.TRANSITIONS_TYPE__CODE_UPDATE_CG_TIME;
+				case UMLRpyPackage.IDEFAULT_DRVD_TRANS__REQUIREMEN_TRACABILITY_HANDLE: return UMLRpyPackage.TRANSITIONS_TYPE__REQUIREMEN_TRACABILITY_HANDLE;
+				case UMLRpyPackage.IDEFAULT_DRVD_TRANS__DESCRIPTION: return UMLRpyPackage.TRANSITIONS_TYPE__DESCRIPTION;
+				case UMLRpyPackage.IDEFAULT_DRVD_TRANS__ITS_LABEL: return UMLRpyPackage.TRANSITIONS_TYPE__ITS_LABEL;
+				case UMLRpyPackage.IDEFAULT_DRVD_TRANS__UML_DEPENDENCY_ID: return UMLRpyPackage.TRANSITIONS_TYPE__UML_DEPENDENCY_ID;
+				case UMLRpyPackage.IDEFAULT_DRVD_TRANS__MY_STATE: return UMLRpyPackage.TRANSITIONS_TYPE__MY_STATE;
+				case UMLRpyPackage.IDEFAULT_DRVD_TRANS__OBJECT_CREATION: return UMLRpyPackage.TRANSITIONS_TYPE__OBJECT_CREATION;
+				case UMLRpyPackage.IDEFAULT_DRVD_TRANS__NAME: return UMLRpyPackage.TRANSITIONS_TYPE__NAME;
+				default: return -1;
+			}
+		}
+		if (baseClass == ElementsType.class) {
+			switch (derivedFeatureID) {
+				default: return -1;
+			}
+		}
+		if (baseClass == DependsOnType.class) {
+			switch (derivedFeatureID) {
+				default: return -1;
+			}
+		}
+		return super.eBaseStructuralFeatureID(derivedFeatureID, baseClass);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public int eDerivedStructuralFeatureID(int baseFeatureID, Class<?> baseClass) {
+		if (baseClass == TransitionsType.class) {
+			switch (baseFeatureID) {
+				case UMLRpyPackage.TRANSITIONS_TYPE__MODIFIED_TIME_WEAK: return UMLRpyPackage.IDEFAULT_DRVD_TRANS__MODIFIED_TIME_WEAK;
+				case UMLRpyPackage.TRANSITIONS_TYPE__STATIC_REACTION: return UMLRpyPackage.IDEFAULT_DRVD_TRANS__STATIC_REACTION;
+				case UMLRpyPackage.TRANSITIONS_TYPE__ITS_TARGET: return UMLRpyPackage.IDEFAULT_DRVD_TRANS__ITS_TARGET;
+				case UMLRpyPackage.TRANSITIONS_TYPE__ID: return UMLRpyPackage.IDEFAULT_DRVD_TRANS__ID;
+				case UMLRpyPackage.TRANSITIONS_TYPE__CODE_UPDATE_CG_TIME: return UMLRpyPackage.IDEFAULT_DRVD_TRANS__CODE_UPDATE_CG_TIME;
+				case UMLRpyPackage.TRANSITIONS_TYPE__REQUIREMEN_TRACABILITY_HANDLE: return UMLRpyPackage.IDEFAULT_DRVD_TRANS__REQUIREMEN_TRACABILITY_HANDLE;
+				case UMLRpyPackage.TRANSITIONS_TYPE__DESCRIPTION: return UMLRpyPackage.IDEFAULT_DRVD_TRANS__DESCRIPTION;
+				case UMLRpyPackage.TRANSITIONS_TYPE__ITS_LABEL: return UMLRpyPackage.IDEFAULT_DRVD_TRANS__ITS_LABEL;
+				case UMLRpyPackage.TRANSITIONS_TYPE__UML_DEPENDENCY_ID: return UMLRpyPackage.IDEFAULT_DRVD_TRANS__UML_DEPENDENCY_ID;
+				case UMLRpyPackage.TRANSITIONS_TYPE__MY_STATE: return UMLRpyPackage.IDEFAULT_DRVD_TRANS__MY_STATE;
+				case UMLRpyPackage.TRANSITIONS_TYPE__OBJECT_CREATION: return UMLRpyPackage.IDEFAULT_DRVD_TRANS__OBJECT_CREATION;
+				case UMLRpyPackage.TRANSITIONS_TYPE__NAME: return UMLRpyPackage.IDEFAULT_DRVD_TRANS__NAME;
+				default: return -1;
+			}
+		}
+		if (baseClass == ElementsType.class) {
+			switch (baseFeatureID) {
+				default: return -1;
+			}
+		}
+		if (baseClass == DependsOnType.class) {
+			switch (baseFeatureID) {
+				default: return -1;
+			}
+		}
+		return super.eDerivedStructuralFeatureID(baseFeatureID, baseClass);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String toString() {
+		if (eIsProxy()) return super.toString();
+
+		StringBuffer result = new StringBuffer(super.toString());
+		result.append(" (modifiedTimeWeak: "); //$NON-NLS-1$
+		result.append(modifiedTimeWeak);
+		result.append(", staticReaction: "); //$NON-NLS-1$
+		result.append(staticReaction);
+		result.append(", id: "); //$NON-NLS-1$
+		result.append(id);
+		result.append(", codeUpdateCGTime: "); //$NON-NLS-1$
+		result.append(codeUpdateCGTime);
+		result.append(", requiremenTracabilityHandle: "); //$NON-NLS-1$
+		result.append(requiremenTracabilityHandle);
+		result.append(", umlDependencyID: "); //$NON-NLS-1$
+		result.append(umlDependencyID);
+		result.append(", myState: "); //$NON-NLS-1$
+		result.append(myState);
+		result.append(", objectCreation: "); //$NON-NLS-1$
+		result.append(objectCreation);
+		result.append(", name: "); //$NON-NLS-1$
+		result.append(name);
+		result.append(", itsSource: "); //$NON-NLS-1$
+		result.append(itsSource);
+		result.append(", errorStatus: "); //$NON-NLS-1$
+		result.append(errorStatus);
+		result.append(')');
+		return result.toString();
+	}
+
+} //IDefaultDrvdTransImpl
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/IDependencyImpl.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/IDependencyImpl.java
new file mode 100755
index 0000000..948ff87
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/IDependencyImpl.java
@@ -0,0 +1,1167 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl;
+
+import java.util.Collection;
+
+import org.eclipse.emf.common.notify.Notification;
+import org.eclipse.emf.common.notify.NotificationChain;
+
+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.EDataTypeEList;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.DependsOnType;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ElementsType;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IComment;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IDependency;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IDescription;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IPropertyContainer;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITag;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IUnit;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.M_subjectType;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>IDependency</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * </p>
+ * <ul>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IDependencyImpl#getUmlDependencyID <em>Uml Dependency ID</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IDependencyImpl#getObjectCreation <em>Object Creation</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IDependencyImpl#getId <em>Id</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IDependencyImpl#getMyState <em>My State</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IDependencyImpl#getProperties <em>Properties</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IDependencyImpl#getName <em>Name</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IDependencyImpl#getStereotypes <em>Stereotypes</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IDependencyImpl#getModifiedTimeWeak <em>Modified Time Weak</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IDependencyImpl#getDependsOn <em>Depends On</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IDependencyImpl#getTags <em>Tags</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IDependencyImpl#getAnnotations <em>Annotations</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IDependencyImpl#getDependencies <em>Dependencies</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IDependencyImpl#getDescription <em>Description</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IDependencyImpl#getRequiremenTracabilityHandle <em>Requiremen Tracability Handle</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IDependencyImpl#getCodeUpdateCGTime <em>Code Update CG Time</em>}</li>
+ * </ul>
+ *
+ * @generated
+ */
+public class IDependencyImpl extends IModelElementImpl implements IDependency {
+	/**
+	 * The default value of the '{@link #getUmlDependencyID() <em>Uml Dependency ID</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getUmlDependencyID()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String UML_DEPENDENCY_ID_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getUmlDependencyID() <em>Uml Dependency ID</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getUmlDependencyID()
+	 * @generated
+	 * @ordered
+	 */
+	protected String umlDependencyID = UML_DEPENDENCY_ID_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getObjectCreation() <em>Object Creation</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getObjectCreation()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String OBJECT_CREATION_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getObjectCreation() <em>Object Creation</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getObjectCreation()
+	 * @generated
+	 * @ordered
+	 */
+	protected String objectCreation = OBJECT_CREATION_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getId() <em>Id</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getId()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String ID_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getId() <em>Id</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getId()
+	 * @generated
+	 * @ordered
+	 */
+	protected String id = ID_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getMyState() <em>My State</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getMyState()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String MY_STATE_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getMyState() <em>My State</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getMyState()
+	 * @generated
+	 * @ordered
+	 */
+	protected String myState = MY_STATE_EDEFAULT;
+
+	/**
+	 * The cached value of the '{@link #getProperties() <em>Properties</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getProperties()
+	 * @generated
+	 * @ordered
+	 */
+	protected IPropertyContainer properties;
+
+	/**
+	 * The default value of the '{@link #getName() <em>Name</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getName()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String NAME_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getName() <em>Name</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getName()
+	 * @generated
+	 * @ordered
+	 */
+	protected String name = NAME_EDEFAULT;
+
+	/**
+	 * The cached value of the '{@link #getStereotypes() <em>Stereotypes</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getStereotypes()
+	 * @generated
+	 * @ordered
+	 */
+	protected IUnit stereotypes;
+
+	/**
+	 * The cached value of the '{@link #getModifiedTimeWeak() <em>Modified Time Weak</em>}' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getModifiedTimeWeak()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<String> modifiedTimeWeak;
+
+	/**
+	 * The cached value of the '{@link #getDependsOn() <em>Depends On</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getDependsOn()
+	 * @generated
+	 * @ordered
+	 */
+	protected DependsOnType dependsOn;
+
+	/**
+	 * The cached value of the '{@link #getTags() <em>Tags</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getTags()
+	 * @generated
+	 * @ordered
+	 */
+	protected ITag tags;
+
+	/**
+	 * The cached value of the '{@link #getAnnotations() <em>Annotations</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getAnnotations()
+	 * @generated
+	 * @ordered
+	 */
+	protected IComment annotations;
+
+	/**
+	 * The cached value of the '{@link #getDependencies() <em>Dependencies</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getDependencies()
+	 * @generated
+	 * @ordered
+	 */
+	protected IDependency dependencies;
+
+	/**
+	 * The cached value of the '{@link #getDescription() <em>Description</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getDescription()
+	 * @generated
+	 * @ordered
+	 */
+	protected IDescription description;
+
+	/**
+	 * The default value of the '{@link #getRequiremenTracabilityHandle() <em>Requiremen Tracability Handle</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getRequiremenTracabilityHandle()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String REQUIREMEN_TRACABILITY_HANDLE_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getRequiremenTracabilityHandle() <em>Requiremen Tracability Handle</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getRequiremenTracabilityHandle()
+	 * @generated
+	 * @ordered
+	 */
+	protected String requiremenTracabilityHandle = REQUIREMEN_TRACABILITY_HANDLE_EDEFAULT;
+
+	/**
+	 * The cached value of the '{@link #getCodeUpdateCGTime() <em>Code Update CG Time</em>}' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getCodeUpdateCGTime()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<String> codeUpdateCGTime;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected IDependencyImpl() {
+		super();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EClass eStaticClass() {
+		return UMLRpyPackage.eINSTANCE.getIDependency();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getUmlDependencyID() {
+		return umlDependencyID;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setUmlDependencyID(String newUmlDependencyID) {
+		String oldUmlDependencyID = umlDependencyID;
+		umlDependencyID = newUmlDependencyID;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IDEPENDENCY__UML_DEPENDENCY_ID, oldUmlDependencyID, umlDependencyID));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getObjectCreation() {
+		return objectCreation;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setObjectCreation(String newObjectCreation) {
+		String oldObjectCreation = objectCreation;
+		objectCreation = newObjectCreation;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IDEPENDENCY__OBJECT_CREATION, oldObjectCreation, objectCreation));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getId() {
+		return id;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setId(String newId) {
+		String oldId = id;
+		id = newId;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IDEPENDENCY__ID, oldId, id));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getMyState() {
+		return myState;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setMyState(String newMyState) {
+		String oldMyState = myState;
+		myState = newMyState;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IDEPENDENCY__MY_STATE, oldMyState, myState));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IPropertyContainer getProperties() {
+		if (properties != null && properties.eIsProxy()) {
+			InternalEObject oldProperties = (InternalEObject)properties;
+			properties = (IPropertyContainer)eResolveProxy(oldProperties);
+			if (properties != oldProperties) {
+				InternalEObject newProperties = (InternalEObject)properties;
+				NotificationChain msgs = oldProperties.eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IDEPENDENCY__PROPERTIES, null, null);
+				if (newProperties.eInternalContainer() == null) {
+					msgs = newProperties.eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IDEPENDENCY__PROPERTIES, null, msgs);
+				}
+				if (msgs != null) msgs.dispatch();
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.IDEPENDENCY__PROPERTIES, oldProperties, properties));
+			}
+		}
+		return properties;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IPropertyContainer basicGetProperties() {
+		return properties;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public NotificationChain basicSetProperties(IPropertyContainer newProperties, NotificationChain msgs) {
+		IPropertyContainer oldProperties = properties;
+		properties = newProperties;
+		if (eNotificationRequired()) {
+			ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IDEPENDENCY__PROPERTIES, oldProperties, newProperties);
+			if (msgs == null) msgs = notification; else msgs.add(notification);
+		}
+		return msgs;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setProperties(IPropertyContainer newProperties) {
+		if (newProperties != properties) {
+			NotificationChain msgs = null;
+			if (properties != null)
+				msgs = ((InternalEObject)properties).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IDEPENDENCY__PROPERTIES, null, msgs);
+			if (newProperties != null)
+				msgs = ((InternalEObject)newProperties).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IDEPENDENCY__PROPERTIES, null, msgs);
+			msgs = basicSetProperties(newProperties, msgs);
+			if (msgs != null) msgs.dispatch();
+		}
+		else if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IDEPENDENCY__PROPERTIES, newProperties, newProperties));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getName() {
+		return name;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setName(String newName) {
+		String oldName = name;
+		name = newName;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IDEPENDENCY__NAME, oldName, name));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IUnit getStereotypes() {
+		if (stereotypes != null && stereotypes.eIsProxy()) {
+			InternalEObject oldStereotypes = (InternalEObject)stereotypes;
+			stereotypes = (IUnit)eResolveProxy(oldStereotypes);
+			if (stereotypes != oldStereotypes) {
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.IDEPENDENCY__STEREOTYPES, oldStereotypes, stereotypes));
+			}
+		}
+		return stereotypes;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IUnit basicGetStereotypes() {
+		return stereotypes;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setStereotypes(IUnit newStereotypes) {
+		IUnit oldStereotypes = stereotypes;
+		stereotypes = newStereotypes;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IDEPENDENCY__STEREOTYPES, oldStereotypes, stereotypes));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<String> getModifiedTimeWeak() {
+		if (modifiedTimeWeak == null) {
+			modifiedTimeWeak = new EDataTypeEList<String>(String.class, this, UMLRpyPackage.IDEPENDENCY__MODIFIED_TIME_WEAK);
+		}
+		return modifiedTimeWeak;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public DependsOnType getDependsOn() {
+		if (dependsOn != null && dependsOn.eIsProxy()) {
+			InternalEObject oldDependsOn = (InternalEObject)dependsOn;
+			dependsOn = (DependsOnType)eResolveProxy(oldDependsOn);
+			if (dependsOn != oldDependsOn) {
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.IDEPENDENCY__DEPENDS_ON, oldDependsOn, dependsOn));
+			}
+		}
+		return dependsOn;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public DependsOnType basicGetDependsOn() {
+		return dependsOn;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setDependsOn(DependsOnType newDependsOn) {
+		DependsOnType oldDependsOn = dependsOn;
+		dependsOn = newDependsOn;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IDEPENDENCY__DEPENDS_ON, oldDependsOn, dependsOn));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public ITag getTags() {
+		if (tags != null && tags.eIsProxy()) {
+			InternalEObject oldTags = (InternalEObject)tags;
+			tags = (ITag)eResolveProxy(oldTags);
+			if (tags != oldTags) {
+				InternalEObject newTags = (InternalEObject)tags;
+				NotificationChain msgs = oldTags.eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IDEPENDENCY__TAGS, null, null);
+				if (newTags.eInternalContainer() == null) {
+					msgs = newTags.eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IDEPENDENCY__TAGS, null, msgs);
+				}
+				if (msgs != null) msgs.dispatch();
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.IDEPENDENCY__TAGS, oldTags, tags));
+			}
+		}
+		return tags;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public ITag basicGetTags() {
+		return tags;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public NotificationChain basicSetTags(ITag newTags, NotificationChain msgs) {
+		ITag oldTags = tags;
+		tags = newTags;
+		if (eNotificationRequired()) {
+			ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IDEPENDENCY__TAGS, oldTags, newTags);
+			if (msgs == null) msgs = notification; else msgs.add(notification);
+		}
+		return msgs;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setTags(ITag newTags) {
+		if (newTags != tags) {
+			NotificationChain msgs = null;
+			if (tags != null)
+				msgs = ((InternalEObject)tags).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IDEPENDENCY__TAGS, null, msgs);
+			if (newTags != null)
+				msgs = ((InternalEObject)newTags).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IDEPENDENCY__TAGS, null, msgs);
+			msgs = basicSetTags(newTags, msgs);
+			if (msgs != null) msgs.dispatch();
+		}
+		else if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IDEPENDENCY__TAGS, newTags, newTags));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IComment getAnnotations() {
+		if (annotations != null && annotations.eIsProxy()) {
+			InternalEObject oldAnnotations = (InternalEObject)annotations;
+			annotations = (IComment)eResolveProxy(oldAnnotations);
+			if (annotations != oldAnnotations) {
+				InternalEObject newAnnotations = (InternalEObject)annotations;
+				NotificationChain msgs = oldAnnotations.eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IDEPENDENCY__ANNOTATIONS, null, null);
+				if (newAnnotations.eInternalContainer() == null) {
+					msgs = newAnnotations.eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IDEPENDENCY__ANNOTATIONS, null, msgs);
+				}
+				if (msgs != null) msgs.dispatch();
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.IDEPENDENCY__ANNOTATIONS, oldAnnotations, annotations));
+			}
+		}
+		return annotations;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IComment basicGetAnnotations() {
+		return annotations;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public NotificationChain basicSetAnnotations(IComment newAnnotations, NotificationChain msgs) {
+		IComment oldAnnotations = annotations;
+		annotations = newAnnotations;
+		if (eNotificationRequired()) {
+			ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IDEPENDENCY__ANNOTATIONS, oldAnnotations, newAnnotations);
+			if (msgs == null) msgs = notification; else msgs.add(notification);
+		}
+		return msgs;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setAnnotations(IComment newAnnotations) {
+		if (newAnnotations != annotations) {
+			NotificationChain msgs = null;
+			if (annotations != null)
+				msgs = ((InternalEObject)annotations).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IDEPENDENCY__ANNOTATIONS, null, msgs);
+			if (newAnnotations != null)
+				msgs = ((InternalEObject)newAnnotations).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IDEPENDENCY__ANNOTATIONS, null, msgs);
+			msgs = basicSetAnnotations(newAnnotations, msgs);
+			if (msgs != null) msgs.dispatch();
+		}
+		else if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IDEPENDENCY__ANNOTATIONS, newAnnotations, newAnnotations));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IDependency getDependencies() {
+		if (dependencies != null && dependencies.eIsProxy()) {
+			InternalEObject oldDependencies = (InternalEObject)dependencies;
+			dependencies = (IDependency)eResolveProxy(oldDependencies);
+			if (dependencies != oldDependencies) {
+				InternalEObject newDependencies = (InternalEObject)dependencies;
+				NotificationChain msgs = oldDependencies.eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IDEPENDENCY__DEPENDENCIES, null, null);
+				if (newDependencies.eInternalContainer() == null) {
+					msgs = newDependencies.eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IDEPENDENCY__DEPENDENCIES, null, msgs);
+				}
+				if (msgs != null) msgs.dispatch();
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.IDEPENDENCY__DEPENDENCIES, oldDependencies, dependencies));
+			}
+		}
+		return dependencies;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IDependency basicGetDependencies() {
+		return dependencies;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public NotificationChain basicSetDependencies(IDependency newDependencies, NotificationChain msgs) {
+		IDependency oldDependencies = dependencies;
+		dependencies = newDependencies;
+		if (eNotificationRequired()) {
+			ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IDEPENDENCY__DEPENDENCIES, oldDependencies, newDependencies);
+			if (msgs == null) msgs = notification; else msgs.add(notification);
+		}
+		return msgs;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setDependencies(IDependency newDependencies) {
+		if (newDependencies != dependencies) {
+			NotificationChain msgs = null;
+			if (dependencies != null)
+				msgs = ((InternalEObject)dependencies).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IDEPENDENCY__DEPENDENCIES, null, msgs);
+			if (newDependencies != null)
+				msgs = ((InternalEObject)newDependencies).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IDEPENDENCY__DEPENDENCIES, null, msgs);
+			msgs = basicSetDependencies(newDependencies, msgs);
+			if (msgs != null) msgs.dispatch();
+		}
+		else if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IDEPENDENCY__DEPENDENCIES, newDependencies, newDependencies));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IDescription getDescription() {
+		if (description != null && description.eIsProxy()) {
+			InternalEObject oldDescription = (InternalEObject)description;
+			description = (IDescription)eResolveProxy(oldDescription);
+			if (description != oldDescription) {
+				InternalEObject newDescription = (InternalEObject)description;
+				NotificationChain msgs = oldDescription.eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IDEPENDENCY__DESCRIPTION, null, null);
+				if (newDescription.eInternalContainer() == null) {
+					msgs = newDescription.eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IDEPENDENCY__DESCRIPTION, null, msgs);
+				}
+				if (msgs != null) msgs.dispatch();
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.IDEPENDENCY__DESCRIPTION, oldDescription, description));
+			}
+		}
+		return description;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IDescription basicGetDescription() {
+		return description;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public NotificationChain basicSetDescription(IDescription newDescription, NotificationChain msgs) {
+		IDescription oldDescription = description;
+		description = newDescription;
+		if (eNotificationRequired()) {
+			ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IDEPENDENCY__DESCRIPTION, oldDescription, newDescription);
+			if (msgs == null) msgs = notification; else msgs.add(notification);
+		}
+		return msgs;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setDescription(IDescription newDescription) {
+		if (newDescription != description) {
+			NotificationChain msgs = null;
+			if (description != null)
+				msgs = ((InternalEObject)description).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IDEPENDENCY__DESCRIPTION, null, msgs);
+			if (newDescription != null)
+				msgs = ((InternalEObject)newDescription).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IDEPENDENCY__DESCRIPTION, null, msgs);
+			msgs = basicSetDescription(newDescription, msgs);
+			if (msgs != null) msgs.dispatch();
+		}
+		else if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IDEPENDENCY__DESCRIPTION, newDescription, newDescription));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getRequiremenTracabilityHandle() {
+		return requiremenTracabilityHandle;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setRequiremenTracabilityHandle(String newRequiremenTracabilityHandle) {
+		String oldRequiremenTracabilityHandle = requiremenTracabilityHandle;
+		requiremenTracabilityHandle = newRequiremenTracabilityHandle;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IDEPENDENCY__REQUIREMEN_TRACABILITY_HANDLE, oldRequiremenTracabilityHandle, requiremenTracabilityHandle));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<String> getCodeUpdateCGTime() {
+		if (codeUpdateCGTime == null) {
+			codeUpdateCGTime = new EDataTypeEList<String>(String.class, this, UMLRpyPackage.IDEPENDENCY__CODE_UPDATE_CG_TIME);
+		}
+		return codeUpdateCGTime;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
+		switch (featureID) {
+			case UMLRpyPackage.IDEPENDENCY__PROPERTIES:
+				return basicSetProperties(null, msgs);
+			case UMLRpyPackage.IDEPENDENCY__TAGS:
+				return basicSetTags(null, msgs);
+			case UMLRpyPackage.IDEPENDENCY__ANNOTATIONS:
+				return basicSetAnnotations(null, msgs);
+			case UMLRpyPackage.IDEPENDENCY__DEPENDENCIES:
+				return basicSetDependencies(null, msgs);
+			case UMLRpyPackage.IDEPENDENCY__DESCRIPTION:
+				return basicSetDescription(null, msgs);
+		}
+		return super.eInverseRemove(otherEnd, featureID, msgs);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object eGet(int featureID, boolean resolve, boolean coreType) {
+		switch (featureID) {
+			case UMLRpyPackage.IDEPENDENCY__UML_DEPENDENCY_ID:
+				return getUmlDependencyID();
+			case UMLRpyPackage.IDEPENDENCY__OBJECT_CREATION:
+				return getObjectCreation();
+			case UMLRpyPackage.IDEPENDENCY__ID:
+				return getId();
+			case UMLRpyPackage.IDEPENDENCY__MY_STATE:
+				return getMyState();
+			case UMLRpyPackage.IDEPENDENCY__PROPERTIES:
+				if (resolve) return getProperties();
+				return basicGetProperties();
+			case UMLRpyPackage.IDEPENDENCY__NAME:
+				return getName();
+			case UMLRpyPackage.IDEPENDENCY__STEREOTYPES:
+				if (resolve) return getStereotypes();
+				return basicGetStereotypes();
+			case UMLRpyPackage.IDEPENDENCY__MODIFIED_TIME_WEAK:
+				return getModifiedTimeWeak();
+			case UMLRpyPackage.IDEPENDENCY__DEPENDS_ON:
+				if (resolve) return getDependsOn();
+				return basicGetDependsOn();
+			case UMLRpyPackage.IDEPENDENCY__TAGS:
+				if (resolve) return getTags();
+				return basicGetTags();
+			case UMLRpyPackage.IDEPENDENCY__ANNOTATIONS:
+				if (resolve) return getAnnotations();
+				return basicGetAnnotations();
+			case UMLRpyPackage.IDEPENDENCY__DEPENDENCIES:
+				if (resolve) return getDependencies();
+				return basicGetDependencies();
+			case UMLRpyPackage.IDEPENDENCY__DESCRIPTION:
+				if (resolve) return getDescription();
+				return basicGetDescription();
+			case UMLRpyPackage.IDEPENDENCY__REQUIREMEN_TRACABILITY_HANDLE:
+				return getRequiremenTracabilityHandle();
+			case UMLRpyPackage.IDEPENDENCY__CODE_UPDATE_CG_TIME:
+				return getCodeUpdateCGTime();
+		}
+		return super.eGet(featureID, resolve, coreType);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@SuppressWarnings("unchecked")
+	@Override
+	public void eSet(int featureID, Object newValue) {
+		switch (featureID) {
+			case UMLRpyPackage.IDEPENDENCY__UML_DEPENDENCY_ID:
+				setUmlDependencyID((String)newValue);
+				return;
+			case UMLRpyPackage.IDEPENDENCY__OBJECT_CREATION:
+				setObjectCreation((String)newValue);
+				return;
+			case UMLRpyPackage.IDEPENDENCY__ID:
+				setId((String)newValue);
+				return;
+			case UMLRpyPackage.IDEPENDENCY__MY_STATE:
+				setMyState((String)newValue);
+				return;
+			case UMLRpyPackage.IDEPENDENCY__PROPERTIES:
+				setProperties((IPropertyContainer)newValue);
+				return;
+			case UMLRpyPackage.IDEPENDENCY__NAME:
+				setName((String)newValue);
+				return;
+			case UMLRpyPackage.IDEPENDENCY__STEREOTYPES:
+				setStereotypes((IUnit)newValue);
+				return;
+			case UMLRpyPackage.IDEPENDENCY__MODIFIED_TIME_WEAK:
+				getModifiedTimeWeak().clear();
+				getModifiedTimeWeak().addAll((Collection<? extends String>)newValue);
+				return;
+			case UMLRpyPackage.IDEPENDENCY__DEPENDS_ON:
+				setDependsOn((DependsOnType)newValue);
+				return;
+			case UMLRpyPackage.IDEPENDENCY__TAGS:
+				setTags((ITag)newValue);
+				return;
+			case UMLRpyPackage.IDEPENDENCY__ANNOTATIONS:
+				setAnnotations((IComment)newValue);
+				return;
+			case UMLRpyPackage.IDEPENDENCY__DEPENDENCIES:
+				setDependencies((IDependency)newValue);
+				return;
+			case UMLRpyPackage.IDEPENDENCY__DESCRIPTION:
+				setDescription((IDescription)newValue);
+				return;
+			case UMLRpyPackage.IDEPENDENCY__REQUIREMEN_TRACABILITY_HANDLE:
+				setRequiremenTracabilityHandle((String)newValue);
+				return;
+			case UMLRpyPackage.IDEPENDENCY__CODE_UPDATE_CG_TIME:
+				getCodeUpdateCGTime().clear();
+				getCodeUpdateCGTime().addAll((Collection<? extends String>)newValue);
+				return;
+		}
+		super.eSet(featureID, newValue);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void eUnset(int featureID) {
+		switch (featureID) {
+			case UMLRpyPackage.IDEPENDENCY__UML_DEPENDENCY_ID:
+				setUmlDependencyID(UML_DEPENDENCY_ID_EDEFAULT);
+				return;
+			case UMLRpyPackage.IDEPENDENCY__OBJECT_CREATION:
+				setObjectCreation(OBJECT_CREATION_EDEFAULT);
+				return;
+			case UMLRpyPackage.IDEPENDENCY__ID:
+				setId(ID_EDEFAULT);
+				return;
+			case UMLRpyPackage.IDEPENDENCY__MY_STATE:
+				setMyState(MY_STATE_EDEFAULT);
+				return;
+			case UMLRpyPackage.IDEPENDENCY__PROPERTIES:
+				setProperties((IPropertyContainer)null);
+				return;
+			case UMLRpyPackage.IDEPENDENCY__NAME:
+				setName(NAME_EDEFAULT);
+				return;
+			case UMLRpyPackage.IDEPENDENCY__STEREOTYPES:
+				setStereotypes((IUnit)null);
+				return;
+			case UMLRpyPackage.IDEPENDENCY__MODIFIED_TIME_WEAK:
+				getModifiedTimeWeak().clear();
+				return;
+			case UMLRpyPackage.IDEPENDENCY__DEPENDS_ON:
+				setDependsOn((DependsOnType)null);
+				return;
+			case UMLRpyPackage.IDEPENDENCY__TAGS:
+				setTags((ITag)null);
+				return;
+			case UMLRpyPackage.IDEPENDENCY__ANNOTATIONS:
+				setAnnotations((IComment)null);
+				return;
+			case UMLRpyPackage.IDEPENDENCY__DEPENDENCIES:
+				setDependencies((IDependency)null);
+				return;
+			case UMLRpyPackage.IDEPENDENCY__DESCRIPTION:
+				setDescription((IDescription)null);
+				return;
+			case UMLRpyPackage.IDEPENDENCY__REQUIREMEN_TRACABILITY_HANDLE:
+				setRequiremenTracabilityHandle(REQUIREMEN_TRACABILITY_HANDLE_EDEFAULT);
+				return;
+			case UMLRpyPackage.IDEPENDENCY__CODE_UPDATE_CG_TIME:
+				getCodeUpdateCGTime().clear();
+				return;
+		}
+		super.eUnset(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public boolean eIsSet(int featureID) {
+		switch (featureID) {
+			case UMLRpyPackage.IDEPENDENCY__UML_DEPENDENCY_ID:
+				return UML_DEPENDENCY_ID_EDEFAULT == null ? umlDependencyID != null : !UML_DEPENDENCY_ID_EDEFAULT.equals(umlDependencyID);
+			case UMLRpyPackage.IDEPENDENCY__OBJECT_CREATION:
+				return OBJECT_CREATION_EDEFAULT == null ? objectCreation != null : !OBJECT_CREATION_EDEFAULT.equals(objectCreation);
+			case UMLRpyPackage.IDEPENDENCY__ID:
+				return ID_EDEFAULT == null ? id != null : !ID_EDEFAULT.equals(id);
+			case UMLRpyPackage.IDEPENDENCY__MY_STATE:
+				return MY_STATE_EDEFAULT == null ? myState != null : !MY_STATE_EDEFAULT.equals(myState);
+			case UMLRpyPackage.IDEPENDENCY__PROPERTIES:
+				return properties != null;
+			case UMLRpyPackage.IDEPENDENCY__NAME:
+				return NAME_EDEFAULT == null ? name != null : !NAME_EDEFAULT.equals(name);
+			case UMLRpyPackage.IDEPENDENCY__STEREOTYPES:
+				return stereotypes != null;
+			case UMLRpyPackage.IDEPENDENCY__MODIFIED_TIME_WEAK:
+				return modifiedTimeWeak != null && !modifiedTimeWeak.isEmpty();
+			case UMLRpyPackage.IDEPENDENCY__DEPENDS_ON:
+				return dependsOn != null;
+			case UMLRpyPackage.IDEPENDENCY__TAGS:
+				return tags != null;
+			case UMLRpyPackage.IDEPENDENCY__ANNOTATIONS:
+				return annotations != null;
+			case UMLRpyPackage.IDEPENDENCY__DEPENDENCIES:
+				return dependencies != null;
+			case UMLRpyPackage.IDEPENDENCY__DESCRIPTION:
+				return description != null;
+			case UMLRpyPackage.IDEPENDENCY__REQUIREMEN_TRACABILITY_HANDLE:
+				return REQUIREMEN_TRACABILITY_HANDLE_EDEFAULT == null ? requiremenTracabilityHandle != null : !REQUIREMEN_TRACABILITY_HANDLE_EDEFAULT.equals(requiremenTracabilityHandle);
+			case UMLRpyPackage.IDEPENDENCY__CODE_UPDATE_CG_TIME:
+				return codeUpdateCGTime != null && !codeUpdateCGTime.isEmpty();
+		}
+		return super.eIsSet(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public int eBaseStructuralFeatureID(int derivedFeatureID, Class<?> baseClass) {
+		if (baseClass == ElementsType.class) {
+			switch (derivedFeatureID) {
+				default: return -1;
+			}
+		}
+		if (baseClass == DependsOnType.class) {
+			switch (derivedFeatureID) {
+				default: return -1;
+			}
+		}
+		if (baseClass == M_subjectType.class) {
+			switch (derivedFeatureID) {
+				case UMLRpyPackage.IDEPENDENCY__UML_DEPENDENCY_ID: return UMLRpyPackage.MSUBJECT_TYPE__UML_DEPENDENCY_ID;
+				case UMLRpyPackage.IDEPENDENCY__OBJECT_CREATION: return UMLRpyPackage.MSUBJECT_TYPE__OBJECT_CREATION;
+				default: return -1;
+			}
+		}
+		return super.eBaseStructuralFeatureID(derivedFeatureID, baseClass);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public int eDerivedStructuralFeatureID(int baseFeatureID, Class<?> baseClass) {
+		if (baseClass == ElementsType.class) {
+			switch (baseFeatureID) {
+				default: return -1;
+			}
+		}
+		if (baseClass == DependsOnType.class) {
+			switch (baseFeatureID) {
+				default: return -1;
+			}
+		}
+		if (baseClass == M_subjectType.class) {
+			switch (baseFeatureID) {
+				case UMLRpyPackage.MSUBJECT_TYPE__UML_DEPENDENCY_ID: return UMLRpyPackage.IDEPENDENCY__UML_DEPENDENCY_ID;
+				case UMLRpyPackage.MSUBJECT_TYPE__OBJECT_CREATION: return UMLRpyPackage.IDEPENDENCY__OBJECT_CREATION;
+				default: return -1;
+			}
+		}
+		return super.eDerivedStructuralFeatureID(baseFeatureID, baseClass);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String toString() {
+		if (eIsProxy()) return super.toString();
+
+		StringBuffer result = new StringBuffer(super.toString());
+		result.append(" (umlDependencyID: "); //$NON-NLS-1$
+		result.append(umlDependencyID);
+		result.append(", objectCreation: "); //$NON-NLS-1$
+		result.append(objectCreation);
+		result.append(", id: "); //$NON-NLS-1$
+		result.append(id);
+		result.append(", myState: "); //$NON-NLS-1$
+		result.append(myState);
+		result.append(", name: "); //$NON-NLS-1$
+		result.append(name);
+		result.append(", modifiedTimeWeak: "); //$NON-NLS-1$
+		result.append(modifiedTimeWeak);
+		result.append(", requiremenTracabilityHandle: "); //$NON-NLS-1$
+		result.append(requiremenTracabilityHandle);
+		result.append(", codeUpdateCGTime: "); //$NON-NLS-1$
+		result.append(codeUpdateCGTime);
+		result.append(')');
+		return result.toString();
+	}
+
+} //IDependencyImpl
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/IDeploymentDiagramImpl.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/IDeploymentDiagramImpl.java
new file mode 100755
index 0000000..926d951
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/IDeploymentDiagramImpl.java
@@ -0,0 +1,47 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl;
+
+import org.eclipse.emf.ecore.EClass;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IDeploymentDiagram;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>IDeployment Diagram</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+public class IDeploymentDiagramImpl extends IDiagramImpl implements IDeploymentDiagram {
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected IDeploymentDiagramImpl() {
+		super();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EClass eStaticClass() {
+		return UMLRpyPackage.eINSTANCE.getIDeploymentDiagram();
+	}
+
+} //IDeploymentDiagramImpl
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/IDescriptionImpl.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/IDescriptionImpl.java
new file mode 100755
index 0000000..845ede6
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/IDescriptionImpl.java
@@ -0,0 +1,285 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl;
+
+import java.util.Collection;
+
+import org.eclipse.emf.common.notify.Notification;
+import org.eclipse.emf.common.notify.NotificationChain;
+
+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.EObjectContainmentEList;
+import org.eclipse.emf.ecore.util.InternalEList;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.HyperLinksType;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IDescription;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>IDescription</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * </p>
+ * <ul>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IDescriptionImpl#getTextRTF <em>Text RTF</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IDescriptionImpl#getText <em>Text</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IDescriptionImpl#getHyperlinks <em>Hyperlinks</em>}</li>
+ * </ul>
+ *
+ * @generated
+ */
+public class IDescriptionImpl extends DescriptionTypeImpl implements IDescription {
+	/**
+	 * The default value of the '{@link #getTextRTF() <em>Text RTF</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getTextRTF()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String TEXT_RTF_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getTextRTF() <em>Text RTF</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getTextRTF()
+	 * @generated
+	 * @ordered
+	 */
+	protected String textRTF = TEXT_RTF_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getText() <em>Text</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getText()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String TEXT_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getText() <em>Text</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getText()
+	 * @generated
+	 * @ordered
+	 */
+	protected String text = TEXT_EDEFAULT;
+
+	/**
+	 * The cached value of the '{@link #getHyperlinks() <em>Hyperlinks</em>}' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getHyperlinks()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<HyperLinksType> hyperlinks;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected IDescriptionImpl() {
+		super();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EClass eStaticClass() {
+		return UMLRpyPackage.eINSTANCE.getIDescription();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getTextRTF() {
+		return textRTF;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setTextRTF(String newTextRTF) {
+		String oldTextRTF = textRTF;
+		textRTF = newTextRTF;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IDESCRIPTION__TEXT_RTF, oldTextRTF, textRTF));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getText() {
+		return text;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setText(String newText) {
+		String oldText = text;
+		text = newText;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IDESCRIPTION__TEXT, oldText, text));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<HyperLinksType> getHyperlinks() {
+		if (hyperlinks == null) {
+			hyperlinks = new EObjectContainmentEList.Resolving<HyperLinksType>(HyperLinksType.class, this, UMLRpyPackage.IDESCRIPTION__HYPERLINKS);
+		}
+		return hyperlinks;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
+		switch (featureID) {
+			case UMLRpyPackage.IDESCRIPTION__HYPERLINKS:
+				return ((InternalEList<?>)getHyperlinks()).basicRemove(otherEnd, msgs);
+		}
+		return super.eInverseRemove(otherEnd, featureID, msgs);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object eGet(int featureID, boolean resolve, boolean coreType) {
+		switch (featureID) {
+			case UMLRpyPackage.IDESCRIPTION__TEXT_RTF:
+				return getTextRTF();
+			case UMLRpyPackage.IDESCRIPTION__TEXT:
+				return getText();
+			case UMLRpyPackage.IDESCRIPTION__HYPERLINKS:
+				return getHyperlinks();
+		}
+		return super.eGet(featureID, resolve, coreType);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@SuppressWarnings("unchecked")
+	@Override
+	public void eSet(int featureID, Object newValue) {
+		switch (featureID) {
+			case UMLRpyPackage.IDESCRIPTION__TEXT_RTF:
+				setTextRTF((String)newValue);
+				return;
+			case UMLRpyPackage.IDESCRIPTION__TEXT:
+				setText((String)newValue);
+				return;
+			case UMLRpyPackage.IDESCRIPTION__HYPERLINKS:
+				getHyperlinks().clear();
+				getHyperlinks().addAll((Collection<? extends HyperLinksType>)newValue);
+				return;
+		}
+		super.eSet(featureID, newValue);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void eUnset(int featureID) {
+		switch (featureID) {
+			case UMLRpyPackage.IDESCRIPTION__TEXT_RTF:
+				setTextRTF(TEXT_RTF_EDEFAULT);
+				return;
+			case UMLRpyPackage.IDESCRIPTION__TEXT:
+				setText(TEXT_EDEFAULT);
+				return;
+			case UMLRpyPackage.IDESCRIPTION__HYPERLINKS:
+				getHyperlinks().clear();
+				return;
+		}
+		super.eUnset(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public boolean eIsSet(int featureID) {
+		switch (featureID) {
+			case UMLRpyPackage.IDESCRIPTION__TEXT_RTF:
+				return TEXT_RTF_EDEFAULT == null ? textRTF != null : !TEXT_RTF_EDEFAULT.equals(textRTF);
+			case UMLRpyPackage.IDESCRIPTION__TEXT:
+				return TEXT_EDEFAULT == null ? text != null : !TEXT_EDEFAULT.equals(text);
+			case UMLRpyPackage.IDESCRIPTION__HYPERLINKS:
+				return hyperlinks != null && !hyperlinks.isEmpty();
+		}
+		return super.eIsSet(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String toString() {
+		if (eIsProxy()) return super.toString();
+
+		StringBuffer result = new StringBuffer(super.toString());
+		result.append(" (textRTF: "); //$NON-NLS-1$
+		result.append(textRTF);
+		result.append(", text: "); //$NON-NLS-1$
+		result.append(text);
+		result.append(')');
+		return result.toString();
+	}
+
+} //IDescriptionImpl
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/IDestructorImpl.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/IDestructorImpl.java
new file mode 100755
index 0000000..c703c5a
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/IDestructorImpl.java
@@ -0,0 +1,1174 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl;
+
+import java.util.Collection;
+
+import org.eclipse.emf.common.notify.Notification;
+import org.eclipse.emf.common.notify.NotificationChain;
+
+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.EDataTypeEList;
+import org.eclipse.emf.ecore.util.EObjectResolvingEList;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IBody;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IClassifier;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IDescription;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IDestructor;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IPropertyContainer;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.M_subjectType;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UnknownType;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>IDestructor</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * </p>
+ * <ul>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IDestructorImpl#getUmlDependencyID <em>Uml Dependency ID</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IDestructorImpl#getObjectCreation <em>Object Creation</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IDestructorImpl#getId <em>Id</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IDestructorImpl#getName <em>Name</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IDestructorImpl#getArgs <em>Args</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IDestructorImpl#getAbstract <em>Abstract</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IDestructorImpl#getFinal <em>Final</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IDestructorImpl#getConcurrency <em>Concurrency</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IDestructorImpl#getProtection <em>Protection</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IDestructorImpl#getStatic <em>Static</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IDestructorImpl#getConstant <em>Constant</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IDestructorImpl#getItsBody <em>Its Body</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IDestructorImpl#getModifiedTimeWeak <em>Modified Time Weak</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IDestructorImpl#getDescription <em>Description</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IDestructorImpl#getProperties <em>Properties</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IDestructorImpl#getMyState <em>My State</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IDestructorImpl#getReturnType <em>Return Type</em>}</li>
+ * </ul>
+ *
+ * @generated
+ */
+public class IDestructorImpl extends OperationsTypeImpl implements IDestructor {
+	/**
+	 * The default value of the '{@link #getUmlDependencyID() <em>Uml Dependency ID</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getUmlDependencyID()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String UML_DEPENDENCY_ID_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getUmlDependencyID() <em>Uml Dependency ID</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getUmlDependencyID()
+	 * @generated
+	 * @ordered
+	 */
+	protected String umlDependencyID = UML_DEPENDENCY_ID_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getObjectCreation() <em>Object Creation</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getObjectCreation()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String OBJECT_CREATION_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getObjectCreation() <em>Object Creation</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getObjectCreation()
+	 * @generated
+	 * @ordered
+	 */
+	protected String objectCreation = OBJECT_CREATION_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getId() <em>Id</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getId()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String ID_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getId() <em>Id</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getId()
+	 * @generated
+	 * @ordered
+	 */
+	protected String id = ID_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getName() <em>Name</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getName()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String NAME_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getName() <em>Name</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getName()
+	 * @generated
+	 * @ordered
+	 */
+	protected String name = NAME_EDEFAULT;
+
+	/**
+	 * The cached value of the '{@link #getArgs() <em>Args</em>}' reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getArgs()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<UnknownType> args;
+
+	/**
+	 * The default value of the '{@link #getAbstract() <em>Abstract</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getAbstract()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String ABSTRACT_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getAbstract() <em>Abstract</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getAbstract()
+	 * @generated
+	 * @ordered
+	 */
+	protected String abstract_ = ABSTRACT_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getFinal() <em>Final</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getFinal()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String FINAL_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getFinal() <em>Final</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getFinal()
+	 * @generated
+	 * @ordered
+	 */
+	protected String final_ = FINAL_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getConcurrency() <em>Concurrency</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getConcurrency()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String CONCURRENCY_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getConcurrency() <em>Concurrency</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getConcurrency()
+	 * @generated
+	 * @ordered
+	 */
+	protected String concurrency = CONCURRENCY_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getProtection() <em>Protection</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getProtection()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String PROTECTION_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getProtection() <em>Protection</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getProtection()
+	 * @generated
+	 * @ordered
+	 */
+	protected String protection = PROTECTION_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getStatic() <em>Static</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getStatic()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String STATIC_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getStatic() <em>Static</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getStatic()
+	 * @generated
+	 * @ordered
+	 */
+	protected String static_ = STATIC_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getConstant() <em>Constant</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getConstant()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String CONSTANT_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getConstant() <em>Constant</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getConstant()
+	 * @generated
+	 * @ordered
+	 */
+	protected String constant = CONSTANT_EDEFAULT;
+
+	/**
+	 * The cached value of the '{@link #getItsBody() <em>Its Body</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getItsBody()
+	 * @generated
+	 * @ordered
+	 */
+	protected IBody itsBody;
+
+	/**
+	 * The cached value of the '{@link #getModifiedTimeWeak() <em>Modified Time Weak</em>}' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getModifiedTimeWeak()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<String> modifiedTimeWeak;
+
+	/**
+	 * The cached value of the '{@link #getDescription() <em>Description</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getDescription()
+	 * @generated
+	 * @ordered
+	 */
+	protected IDescription description;
+
+	/**
+	 * The cached value of the '{@link #getProperties() <em>Properties</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getProperties()
+	 * @generated
+	 * @ordered
+	 */
+	protected IPropertyContainer properties;
+
+	/**
+	 * The default value of the '{@link #getMyState() <em>My State</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getMyState()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String MY_STATE_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getMyState() <em>My State</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getMyState()
+	 * @generated
+	 * @ordered
+	 */
+	protected String myState = MY_STATE_EDEFAULT;
+
+	/**
+	 * The cached value of the '{@link #getReturnType() <em>Return Type</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getReturnType()
+	 * @generated
+	 * @ordered
+	 */
+	protected IClassifier returnType;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected IDestructorImpl() {
+		super();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EClass eStaticClass() {
+		return UMLRpyPackage.eINSTANCE.getIDestructor();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getUmlDependencyID() {
+		return umlDependencyID;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setUmlDependencyID(String newUmlDependencyID) {
+		String oldUmlDependencyID = umlDependencyID;
+		umlDependencyID = newUmlDependencyID;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IDESTRUCTOR__UML_DEPENDENCY_ID, oldUmlDependencyID, umlDependencyID));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getObjectCreation() {
+		return objectCreation;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setObjectCreation(String newObjectCreation) {
+		String oldObjectCreation = objectCreation;
+		objectCreation = newObjectCreation;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IDESTRUCTOR__OBJECT_CREATION, oldObjectCreation, objectCreation));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getId() {
+		return id;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setId(String newId) {
+		String oldId = id;
+		id = newId;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IDESTRUCTOR__ID, oldId, id));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getName() {
+		return name;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setName(String newName) {
+		String oldName = name;
+		name = newName;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IDESTRUCTOR__NAME, oldName, name));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<UnknownType> getArgs() {
+		if (args == null) {
+			args = new EObjectResolvingEList<UnknownType>(UnknownType.class, this, UMLRpyPackage.IDESTRUCTOR__ARGS);
+		}
+		return args;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getAbstract() {
+		return abstract_;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setAbstract(String newAbstract) {
+		String oldAbstract = abstract_;
+		abstract_ = newAbstract;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IDESTRUCTOR__ABSTRACT, oldAbstract, abstract_));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getFinal() {
+		return final_;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setFinal(String newFinal) {
+		String oldFinal = final_;
+		final_ = newFinal;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IDESTRUCTOR__FINAL, oldFinal, final_));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getConcurrency() {
+		return concurrency;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setConcurrency(String newConcurrency) {
+		String oldConcurrency = concurrency;
+		concurrency = newConcurrency;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IDESTRUCTOR__CONCURRENCY, oldConcurrency, concurrency));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getProtection() {
+		return protection;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setProtection(String newProtection) {
+		String oldProtection = protection;
+		protection = newProtection;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IDESTRUCTOR__PROTECTION, oldProtection, protection));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getStatic() {
+		return static_;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setStatic(String newStatic) {
+		String oldStatic = static_;
+		static_ = newStatic;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IDESTRUCTOR__STATIC, oldStatic, static_));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getConstant() {
+		return constant;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setConstant(String newConstant) {
+		String oldConstant = constant;
+		constant = newConstant;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IDESTRUCTOR__CONSTANT, oldConstant, constant));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IBody getItsBody() {
+		if (itsBody != null && itsBody.eIsProxy()) {
+			InternalEObject oldItsBody = (InternalEObject)itsBody;
+			itsBody = (IBody)eResolveProxy(oldItsBody);
+			if (itsBody != oldItsBody) {
+				InternalEObject newItsBody = (InternalEObject)itsBody;
+				NotificationChain msgs = oldItsBody.eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IDESTRUCTOR__ITS_BODY, null, null);
+				if (newItsBody.eInternalContainer() == null) {
+					msgs = newItsBody.eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IDESTRUCTOR__ITS_BODY, null, msgs);
+				}
+				if (msgs != null) msgs.dispatch();
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.IDESTRUCTOR__ITS_BODY, oldItsBody, itsBody));
+			}
+		}
+		return itsBody;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IBody basicGetItsBody() {
+		return itsBody;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public NotificationChain basicSetItsBody(IBody newItsBody, NotificationChain msgs) {
+		IBody oldItsBody = itsBody;
+		itsBody = newItsBody;
+		if (eNotificationRequired()) {
+			ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IDESTRUCTOR__ITS_BODY, oldItsBody, newItsBody);
+			if (msgs == null) msgs = notification; else msgs.add(notification);
+		}
+		return msgs;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setItsBody(IBody newItsBody) {
+		if (newItsBody != itsBody) {
+			NotificationChain msgs = null;
+			if (itsBody != null)
+				msgs = ((InternalEObject)itsBody).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IDESTRUCTOR__ITS_BODY, null, msgs);
+			if (newItsBody != null)
+				msgs = ((InternalEObject)newItsBody).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IDESTRUCTOR__ITS_BODY, null, msgs);
+			msgs = basicSetItsBody(newItsBody, msgs);
+			if (msgs != null) msgs.dispatch();
+		}
+		else if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IDESTRUCTOR__ITS_BODY, newItsBody, newItsBody));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<String> getModifiedTimeWeak() {
+		if (modifiedTimeWeak == null) {
+			modifiedTimeWeak = new EDataTypeEList<String>(String.class, this, UMLRpyPackage.IDESTRUCTOR__MODIFIED_TIME_WEAK);
+		}
+		return modifiedTimeWeak;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IDescription getDescription() {
+		if (description != null && description.eIsProxy()) {
+			InternalEObject oldDescription = (InternalEObject)description;
+			description = (IDescription)eResolveProxy(oldDescription);
+			if (description != oldDescription) {
+				InternalEObject newDescription = (InternalEObject)description;
+				NotificationChain msgs = oldDescription.eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IDESTRUCTOR__DESCRIPTION, null, null);
+				if (newDescription.eInternalContainer() == null) {
+					msgs = newDescription.eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IDESTRUCTOR__DESCRIPTION, null, msgs);
+				}
+				if (msgs != null) msgs.dispatch();
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.IDESTRUCTOR__DESCRIPTION, oldDescription, description));
+			}
+		}
+		return description;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IDescription basicGetDescription() {
+		return description;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public NotificationChain basicSetDescription(IDescription newDescription, NotificationChain msgs) {
+		IDescription oldDescription = description;
+		description = newDescription;
+		if (eNotificationRequired()) {
+			ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IDESTRUCTOR__DESCRIPTION, oldDescription, newDescription);
+			if (msgs == null) msgs = notification; else msgs.add(notification);
+		}
+		return msgs;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setDescription(IDescription newDescription) {
+		if (newDescription != description) {
+			NotificationChain msgs = null;
+			if (description != null)
+				msgs = ((InternalEObject)description).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IDESTRUCTOR__DESCRIPTION, null, msgs);
+			if (newDescription != null)
+				msgs = ((InternalEObject)newDescription).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IDESTRUCTOR__DESCRIPTION, null, msgs);
+			msgs = basicSetDescription(newDescription, msgs);
+			if (msgs != null) msgs.dispatch();
+		}
+		else if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IDESTRUCTOR__DESCRIPTION, newDescription, newDescription));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IPropertyContainer getProperties() {
+		if (properties != null && properties.eIsProxy()) {
+			InternalEObject oldProperties = (InternalEObject)properties;
+			properties = (IPropertyContainer)eResolveProxy(oldProperties);
+			if (properties != oldProperties) {
+				InternalEObject newProperties = (InternalEObject)properties;
+				NotificationChain msgs = oldProperties.eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IDESTRUCTOR__PROPERTIES, null, null);
+				if (newProperties.eInternalContainer() == null) {
+					msgs = newProperties.eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IDESTRUCTOR__PROPERTIES, null, msgs);
+				}
+				if (msgs != null) msgs.dispatch();
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.IDESTRUCTOR__PROPERTIES, oldProperties, properties));
+			}
+		}
+		return properties;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IPropertyContainer basicGetProperties() {
+		return properties;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public NotificationChain basicSetProperties(IPropertyContainer newProperties, NotificationChain msgs) {
+		IPropertyContainer oldProperties = properties;
+		properties = newProperties;
+		if (eNotificationRequired()) {
+			ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IDESTRUCTOR__PROPERTIES, oldProperties, newProperties);
+			if (msgs == null) msgs = notification; else msgs.add(notification);
+		}
+		return msgs;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setProperties(IPropertyContainer newProperties) {
+		if (newProperties != properties) {
+			NotificationChain msgs = null;
+			if (properties != null)
+				msgs = ((InternalEObject)properties).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IDESTRUCTOR__PROPERTIES, null, msgs);
+			if (newProperties != null)
+				msgs = ((InternalEObject)newProperties).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IDESTRUCTOR__PROPERTIES, null, msgs);
+			msgs = basicSetProperties(newProperties, msgs);
+			if (msgs != null) msgs.dispatch();
+		}
+		else if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IDESTRUCTOR__PROPERTIES, newProperties, newProperties));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getMyState() {
+		return myState;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setMyState(String newMyState) {
+		String oldMyState = myState;
+		myState = newMyState;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IDESTRUCTOR__MY_STATE, oldMyState, myState));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IClassifier getReturnType() {
+		if (returnType != null && returnType.eIsProxy()) {
+			InternalEObject oldReturnType = (InternalEObject)returnType;
+			returnType = (IClassifier)eResolveProxy(oldReturnType);
+			if (returnType != oldReturnType) {
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.IDESTRUCTOR__RETURN_TYPE, oldReturnType, returnType));
+			}
+		}
+		return returnType;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IClassifier basicGetReturnType() {
+		return returnType;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setReturnType(IClassifier newReturnType) {
+		IClassifier oldReturnType = returnType;
+		returnType = newReturnType;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IDESTRUCTOR__RETURN_TYPE, oldReturnType, returnType));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
+		switch (featureID) {
+			case UMLRpyPackage.IDESTRUCTOR__ITS_BODY:
+				return basicSetItsBody(null, msgs);
+			case UMLRpyPackage.IDESTRUCTOR__DESCRIPTION:
+				return basicSetDescription(null, msgs);
+			case UMLRpyPackage.IDESTRUCTOR__PROPERTIES:
+				return basicSetProperties(null, msgs);
+		}
+		return super.eInverseRemove(otherEnd, featureID, msgs);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object eGet(int featureID, boolean resolve, boolean coreType) {
+		switch (featureID) {
+			case UMLRpyPackage.IDESTRUCTOR__UML_DEPENDENCY_ID:
+				return getUmlDependencyID();
+			case UMLRpyPackage.IDESTRUCTOR__OBJECT_CREATION:
+				return getObjectCreation();
+			case UMLRpyPackage.IDESTRUCTOR__ID:
+				return getId();
+			case UMLRpyPackage.IDESTRUCTOR__NAME:
+				return getName();
+			case UMLRpyPackage.IDESTRUCTOR__ARGS:
+				return getArgs();
+			case UMLRpyPackage.IDESTRUCTOR__ABSTRACT:
+				return getAbstract();
+			case UMLRpyPackage.IDESTRUCTOR__FINAL:
+				return getFinal();
+			case UMLRpyPackage.IDESTRUCTOR__CONCURRENCY:
+				return getConcurrency();
+			case UMLRpyPackage.IDESTRUCTOR__PROTECTION:
+				return getProtection();
+			case UMLRpyPackage.IDESTRUCTOR__STATIC:
+				return getStatic();
+			case UMLRpyPackage.IDESTRUCTOR__CONSTANT:
+				return getConstant();
+			case UMLRpyPackage.IDESTRUCTOR__ITS_BODY:
+				if (resolve) return getItsBody();
+				return basicGetItsBody();
+			case UMLRpyPackage.IDESTRUCTOR__MODIFIED_TIME_WEAK:
+				return getModifiedTimeWeak();
+			case UMLRpyPackage.IDESTRUCTOR__DESCRIPTION:
+				if (resolve) return getDescription();
+				return basicGetDescription();
+			case UMLRpyPackage.IDESTRUCTOR__PROPERTIES:
+				if (resolve) return getProperties();
+				return basicGetProperties();
+			case UMLRpyPackage.IDESTRUCTOR__MY_STATE:
+				return getMyState();
+			case UMLRpyPackage.IDESTRUCTOR__RETURN_TYPE:
+				if (resolve) return getReturnType();
+				return basicGetReturnType();
+		}
+		return super.eGet(featureID, resolve, coreType);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@SuppressWarnings("unchecked")
+	@Override
+	public void eSet(int featureID, Object newValue) {
+		switch (featureID) {
+			case UMLRpyPackage.IDESTRUCTOR__UML_DEPENDENCY_ID:
+				setUmlDependencyID((String)newValue);
+				return;
+			case UMLRpyPackage.IDESTRUCTOR__OBJECT_CREATION:
+				setObjectCreation((String)newValue);
+				return;
+			case UMLRpyPackage.IDESTRUCTOR__ID:
+				setId((String)newValue);
+				return;
+			case UMLRpyPackage.IDESTRUCTOR__NAME:
+				setName((String)newValue);
+				return;
+			case UMLRpyPackage.IDESTRUCTOR__ARGS:
+				getArgs().clear();
+				getArgs().addAll((Collection<? extends UnknownType>)newValue);
+				return;
+			case UMLRpyPackage.IDESTRUCTOR__ABSTRACT:
+				setAbstract((String)newValue);
+				return;
+			case UMLRpyPackage.IDESTRUCTOR__FINAL:
+				setFinal((String)newValue);
+				return;
+			case UMLRpyPackage.IDESTRUCTOR__CONCURRENCY:
+				setConcurrency((String)newValue);
+				return;
+			case UMLRpyPackage.IDESTRUCTOR__PROTECTION:
+				setProtection((String)newValue);
+				return;
+			case UMLRpyPackage.IDESTRUCTOR__STATIC:
+				setStatic((String)newValue);
+				return;
+			case UMLRpyPackage.IDESTRUCTOR__CONSTANT:
+				setConstant((String)newValue);
+				return;
+			case UMLRpyPackage.IDESTRUCTOR__ITS_BODY:
+				setItsBody((IBody)newValue);
+				return;
+			case UMLRpyPackage.IDESTRUCTOR__MODIFIED_TIME_WEAK:
+				getModifiedTimeWeak().clear();
+				getModifiedTimeWeak().addAll((Collection<? extends String>)newValue);
+				return;
+			case UMLRpyPackage.IDESTRUCTOR__DESCRIPTION:
+				setDescription((IDescription)newValue);
+				return;
+			case UMLRpyPackage.IDESTRUCTOR__PROPERTIES:
+				setProperties((IPropertyContainer)newValue);
+				return;
+			case UMLRpyPackage.IDESTRUCTOR__MY_STATE:
+				setMyState((String)newValue);
+				return;
+			case UMLRpyPackage.IDESTRUCTOR__RETURN_TYPE:
+				setReturnType((IClassifier)newValue);
+				return;
+		}
+		super.eSet(featureID, newValue);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void eUnset(int featureID) {
+		switch (featureID) {
+			case UMLRpyPackage.IDESTRUCTOR__UML_DEPENDENCY_ID:
+				setUmlDependencyID(UML_DEPENDENCY_ID_EDEFAULT);
+				return;
+			case UMLRpyPackage.IDESTRUCTOR__OBJECT_CREATION:
+				setObjectCreation(OBJECT_CREATION_EDEFAULT);
+				return;
+			case UMLRpyPackage.IDESTRUCTOR__ID:
+				setId(ID_EDEFAULT);
+				return;
+			case UMLRpyPackage.IDESTRUCTOR__NAME:
+				setName(NAME_EDEFAULT);
+				return;
+			case UMLRpyPackage.IDESTRUCTOR__ARGS:
+				getArgs().clear();
+				return;
+			case UMLRpyPackage.IDESTRUCTOR__ABSTRACT:
+				setAbstract(ABSTRACT_EDEFAULT);
+				return;
+			case UMLRpyPackage.IDESTRUCTOR__FINAL:
+				setFinal(FINAL_EDEFAULT);
+				return;
+			case UMLRpyPackage.IDESTRUCTOR__CONCURRENCY:
+				setConcurrency(CONCURRENCY_EDEFAULT);
+				return;
+			case UMLRpyPackage.IDESTRUCTOR__PROTECTION:
+				setProtection(PROTECTION_EDEFAULT);
+				return;
+			case UMLRpyPackage.IDESTRUCTOR__STATIC:
+				setStatic(STATIC_EDEFAULT);
+				return;
+			case UMLRpyPackage.IDESTRUCTOR__CONSTANT:
+				setConstant(CONSTANT_EDEFAULT);
+				return;
+			case UMLRpyPackage.IDESTRUCTOR__ITS_BODY:
+				setItsBody((IBody)null);
+				return;
+			case UMLRpyPackage.IDESTRUCTOR__MODIFIED_TIME_WEAK:
+				getModifiedTimeWeak().clear();
+				return;
+			case UMLRpyPackage.IDESTRUCTOR__DESCRIPTION:
+				setDescription((IDescription)null);
+				return;
+			case UMLRpyPackage.IDESTRUCTOR__PROPERTIES:
+				setProperties((IPropertyContainer)null);
+				return;
+			case UMLRpyPackage.IDESTRUCTOR__MY_STATE:
+				setMyState(MY_STATE_EDEFAULT);
+				return;
+			case UMLRpyPackage.IDESTRUCTOR__RETURN_TYPE:
+				setReturnType((IClassifier)null);
+				return;
+		}
+		super.eUnset(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public boolean eIsSet(int featureID) {
+		switch (featureID) {
+			case UMLRpyPackage.IDESTRUCTOR__UML_DEPENDENCY_ID:
+				return UML_DEPENDENCY_ID_EDEFAULT == null ? umlDependencyID != null : !UML_DEPENDENCY_ID_EDEFAULT.equals(umlDependencyID);
+			case UMLRpyPackage.IDESTRUCTOR__OBJECT_CREATION:
+				return OBJECT_CREATION_EDEFAULT == null ? objectCreation != null : !OBJECT_CREATION_EDEFAULT.equals(objectCreation);
+			case UMLRpyPackage.IDESTRUCTOR__ID:
+				return ID_EDEFAULT == null ? id != null : !ID_EDEFAULT.equals(id);
+			case UMLRpyPackage.IDESTRUCTOR__NAME:
+				return NAME_EDEFAULT == null ? name != null : !NAME_EDEFAULT.equals(name);
+			case UMLRpyPackage.IDESTRUCTOR__ARGS:
+				return args != null && !args.isEmpty();
+			case UMLRpyPackage.IDESTRUCTOR__ABSTRACT:
+				return ABSTRACT_EDEFAULT == null ? abstract_ != null : !ABSTRACT_EDEFAULT.equals(abstract_);
+			case UMLRpyPackage.IDESTRUCTOR__FINAL:
+				return FINAL_EDEFAULT == null ? final_ != null : !FINAL_EDEFAULT.equals(final_);
+			case UMLRpyPackage.IDESTRUCTOR__CONCURRENCY:
+				return CONCURRENCY_EDEFAULT == null ? concurrency != null : !CONCURRENCY_EDEFAULT.equals(concurrency);
+			case UMLRpyPackage.IDESTRUCTOR__PROTECTION:
+				return PROTECTION_EDEFAULT == null ? protection != null : !PROTECTION_EDEFAULT.equals(protection);
+			case UMLRpyPackage.IDESTRUCTOR__STATIC:
+				return STATIC_EDEFAULT == null ? static_ != null : !STATIC_EDEFAULT.equals(static_);
+			case UMLRpyPackage.IDESTRUCTOR__CONSTANT:
+				return CONSTANT_EDEFAULT == null ? constant != null : !CONSTANT_EDEFAULT.equals(constant);
+			case UMLRpyPackage.IDESTRUCTOR__ITS_BODY:
+				return itsBody != null;
+			case UMLRpyPackage.IDESTRUCTOR__MODIFIED_TIME_WEAK:
+				return modifiedTimeWeak != null && !modifiedTimeWeak.isEmpty();
+			case UMLRpyPackage.IDESTRUCTOR__DESCRIPTION:
+				return description != null;
+			case UMLRpyPackage.IDESTRUCTOR__PROPERTIES:
+				return properties != null;
+			case UMLRpyPackage.IDESTRUCTOR__MY_STATE:
+				return MY_STATE_EDEFAULT == null ? myState != null : !MY_STATE_EDEFAULT.equals(myState);
+			case UMLRpyPackage.IDESTRUCTOR__RETURN_TYPE:
+				return returnType != null;
+		}
+		return super.eIsSet(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public int eBaseStructuralFeatureID(int derivedFeatureID, Class<?> baseClass) {
+		if (baseClass == M_subjectType.class) {
+			switch (derivedFeatureID) {
+				case UMLRpyPackage.IDESTRUCTOR__UML_DEPENDENCY_ID: return UMLRpyPackage.MSUBJECT_TYPE__UML_DEPENDENCY_ID;
+				case UMLRpyPackage.IDESTRUCTOR__OBJECT_CREATION: return UMLRpyPackage.MSUBJECT_TYPE__OBJECT_CREATION;
+				default: return -1;
+			}
+		}
+		return super.eBaseStructuralFeatureID(derivedFeatureID, baseClass);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public int eDerivedStructuralFeatureID(int baseFeatureID, Class<?> baseClass) {
+		if (baseClass == M_subjectType.class) {
+			switch (baseFeatureID) {
+				case UMLRpyPackage.MSUBJECT_TYPE__UML_DEPENDENCY_ID: return UMLRpyPackage.IDESTRUCTOR__UML_DEPENDENCY_ID;
+				case UMLRpyPackage.MSUBJECT_TYPE__OBJECT_CREATION: return UMLRpyPackage.IDESTRUCTOR__OBJECT_CREATION;
+				default: return -1;
+			}
+		}
+		return super.eDerivedStructuralFeatureID(baseFeatureID, baseClass);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String toString() {
+		if (eIsProxy()) return super.toString();
+
+		StringBuffer result = new StringBuffer(super.toString());
+		result.append(" (umlDependencyID: "); //$NON-NLS-1$
+		result.append(umlDependencyID);
+		result.append(", objectCreation: "); //$NON-NLS-1$
+		result.append(objectCreation);
+		result.append(", id: "); //$NON-NLS-1$
+		result.append(id);
+		result.append(", name: "); //$NON-NLS-1$
+		result.append(name);
+		result.append(", abstract: "); //$NON-NLS-1$
+		result.append(abstract_);
+		result.append(", final: "); //$NON-NLS-1$
+		result.append(final_);
+		result.append(", concurrency: "); //$NON-NLS-1$
+		result.append(concurrency);
+		result.append(", protection: "); //$NON-NLS-1$
+		result.append(protection);
+		result.append(", static: "); //$NON-NLS-1$
+		result.append(static_);
+		result.append(", constant: "); //$NON-NLS-1$
+		result.append(constant);
+		result.append(", modifiedTimeWeak: "); //$NON-NLS-1$
+		result.append(modifiedTimeWeak);
+		result.append(", myState: "); //$NON-NLS-1$
+		result.append(myState);
+		result.append(')');
+		return result.toString();
+	}
+
+} //IDestructorImpl
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/IDiagramImpl.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/IDiagramImpl.java
new file mode 100755
index 0000000..4e5dcbc
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/IDiagramImpl.java
@@ -0,0 +1,1339 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl;
+
+import java.util.Collection;
+
+import org.eclipse.emf.common.notify.Notification;
+import org.eclipse.emf.common.notify.NotificationChain;
+
+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.EDataTypeEList;
+import org.eclipse.emf.ecore.util.EObjectContainmentEList;
+import org.eclipse.emf.ecore.util.InternalEList;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.DeclarativesType;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.DefaultSubsystemType;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.DependsOnType;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ElementsType;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.GraphicChartType;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IAnnotation;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IDescription;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IDiagram;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMHyperLink;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IModelElement;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.M_pModelObjectType;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.OwnerHandleType;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.PropertiesType;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.TargetType;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.TheMainDiagramType;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>IDiagram</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * </p>
+ * <ul>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IDiagramImpl#getId <em>Id</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IDiagramImpl#getLastModifiedTime <em>Last Modified Time</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IDiagramImpl#getRequiremenTracabilityHandle <em>Requiremen Tracability Handle</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IDiagramImpl#getDefaultSubsystem <em>Default Subsystem</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IDiagramImpl#getDescription <em>Description</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IDiagramImpl#getUmlDependencyID <em>Uml Dependency ID</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IDiagramImpl#getLastID <em>Last ID</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IDiagramImpl#getMyState <em>My State</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IDiagramImpl#getOwnerHandle <em>Owner Handle</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IDiagramImpl#getObjectCreation <em>Object Creation</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IDiagramImpl#getName <em>Name</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IDiagramImpl#getCmheader <em>Cmheader</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IDiagramImpl#getProperties <em>Properties</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IDiagramImpl#getStereotypes <em>Stereotypes</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IDiagramImpl#getModifiedTimeWeak <em>Modified Time Weak</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IDiagramImpl#getGraphicChart <em>Graphic Chart</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IDiagramImpl#getAnnotations <em>Annotations</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IDiagramImpl#getCodeUpdateCGTime <em>Code Update CG Time</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IDiagramImpl#getHyperLinks <em>Hyper Links</em>}</li>
+ * </ul>
+ *
+ * @generated
+ */
+public class IDiagramImpl extends IUnitImpl implements IDiagram {
+	/**
+	 * The default value of the '{@link #getId() <em>Id</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getId()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String ID_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getId() <em>Id</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getId()
+	 * @generated
+	 * @ordered
+	 */
+	protected String id = ID_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getLastModifiedTime() <em>Last Modified Time</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getLastModifiedTime()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String LAST_MODIFIED_TIME_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getLastModifiedTime() <em>Last Modified Time</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getLastModifiedTime()
+	 * @generated
+	 * @ordered
+	 */
+	protected String lastModifiedTime = LAST_MODIFIED_TIME_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getRequiremenTracabilityHandle() <em>Requiremen Tracability Handle</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getRequiremenTracabilityHandle()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String REQUIREMEN_TRACABILITY_HANDLE_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getRequiremenTracabilityHandle() <em>Requiremen Tracability Handle</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getRequiremenTracabilityHandle()
+	 * @generated
+	 * @ordered
+	 */
+	protected String requiremenTracabilityHandle = REQUIREMEN_TRACABILITY_HANDLE_EDEFAULT;
+
+	/**
+	 * The cached value of the '{@link #getDefaultSubsystem() <em>Default Subsystem</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getDefaultSubsystem()
+	 * @generated
+	 * @ordered
+	 */
+	protected DefaultSubsystemType defaultSubsystem;
+
+	/**
+	 * The cached value of the '{@link #getDescription() <em>Description</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getDescription()
+	 * @generated
+	 * @ordered
+	 */
+	protected IDescription description;
+
+	/**
+	 * The default value of the '{@link #getUmlDependencyID() <em>Uml Dependency ID</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getUmlDependencyID()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String UML_DEPENDENCY_ID_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getUmlDependencyID() <em>Uml Dependency ID</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getUmlDependencyID()
+	 * @generated
+	 * @ordered
+	 */
+	protected String umlDependencyID = UML_DEPENDENCY_ID_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getLastID() <em>Last ID</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getLastID()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String LAST_ID_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getLastID() <em>Last ID</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getLastID()
+	 * @generated
+	 * @ordered
+	 */
+	protected String lastID = LAST_ID_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getMyState() <em>My State</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getMyState()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String MY_STATE_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getMyState() <em>My State</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getMyState()
+	 * @generated
+	 * @ordered
+	 */
+	protected String myState = MY_STATE_EDEFAULT;
+
+	/**
+	 * The cached value of the '{@link #getOwnerHandle() <em>Owner Handle</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getOwnerHandle()
+	 * @generated
+	 * @ordered
+	 */
+	protected OwnerHandleType ownerHandle;
+
+	/**
+	 * The default value of the '{@link #getObjectCreation() <em>Object Creation</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getObjectCreation()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String OBJECT_CREATION_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getObjectCreation() <em>Object Creation</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getObjectCreation()
+	 * @generated
+	 * @ordered
+	 */
+	protected String objectCreation = OBJECT_CREATION_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getName() <em>Name</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getName()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String NAME_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getName() <em>Name</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getName()
+	 * @generated
+	 * @ordered
+	 */
+	protected String name = NAME_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getCmheader() <em>Cmheader</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getCmheader()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String CMHEADER_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getCmheader() <em>Cmheader</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getCmheader()
+	 * @generated
+	 * @ordered
+	 */
+	protected String cmheader = CMHEADER_EDEFAULT;
+
+	/**
+	 * The cached value of the '{@link #getProperties() <em>Properties</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getProperties()
+	 * @generated
+	 * @ordered
+	 */
+	protected PropertiesType properties;
+
+	/**
+	 * The cached value of the '{@link #getStereotypes() <em>Stereotypes</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getStereotypes()
+	 * @generated
+	 * @ordered
+	 */
+	protected IModelElement stereotypes;
+
+	/**
+	 * The cached value of the '{@link #getModifiedTimeWeak() <em>Modified Time Weak</em>}' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getModifiedTimeWeak()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<String> modifiedTimeWeak;
+
+	/**
+	 * The cached value of the '{@link #getGraphicChart() <em>Graphic Chart</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getGraphicChart()
+	 * @generated
+	 * @ordered
+	 */
+	protected GraphicChartType graphicChart;
+
+	/**
+	 * The cached value of the '{@link #getAnnotations() <em>Annotations</em>}' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getAnnotations()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<IAnnotation> annotations;
+
+	/**
+	 * The cached value of the '{@link #getCodeUpdateCGTime() <em>Code Update CG Time</em>}' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getCodeUpdateCGTime()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<String> codeUpdateCGTime;
+
+	/**
+	 * The cached value of the '{@link #getHyperLinks() <em>Hyper Links</em>}' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getHyperLinks()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<IMHyperLink> hyperLinks;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected IDiagramImpl() {
+		super();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EClass eStaticClass() {
+		return UMLRpyPackage.eINSTANCE.getIDiagram();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getId() {
+		return id;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setId(String newId) {
+		String oldId = id;
+		id = newId;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IDIAGRAM__ID, oldId, id));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getLastModifiedTime() {
+		return lastModifiedTime;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setLastModifiedTime(String newLastModifiedTime) {
+		String oldLastModifiedTime = lastModifiedTime;
+		lastModifiedTime = newLastModifiedTime;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IDIAGRAM__LAST_MODIFIED_TIME, oldLastModifiedTime, lastModifiedTime));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getRequiremenTracabilityHandle() {
+		return requiremenTracabilityHandle;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setRequiremenTracabilityHandle(String newRequiremenTracabilityHandle) {
+		String oldRequiremenTracabilityHandle = requiremenTracabilityHandle;
+		requiremenTracabilityHandle = newRequiremenTracabilityHandle;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IDIAGRAM__REQUIREMEN_TRACABILITY_HANDLE, oldRequiremenTracabilityHandle, requiremenTracabilityHandle));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public DefaultSubsystemType getDefaultSubsystem() {
+		if (defaultSubsystem != null && defaultSubsystem.eIsProxy()) {
+			InternalEObject oldDefaultSubsystem = (InternalEObject)defaultSubsystem;
+			defaultSubsystem = (DefaultSubsystemType)eResolveProxy(oldDefaultSubsystem);
+			if (defaultSubsystem != oldDefaultSubsystem) {
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.IDIAGRAM__DEFAULT_SUBSYSTEM, oldDefaultSubsystem, defaultSubsystem));
+			}
+		}
+		return defaultSubsystem;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public DefaultSubsystemType basicGetDefaultSubsystem() {
+		return defaultSubsystem;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setDefaultSubsystem(DefaultSubsystemType newDefaultSubsystem) {
+		DefaultSubsystemType oldDefaultSubsystem = defaultSubsystem;
+		defaultSubsystem = newDefaultSubsystem;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IDIAGRAM__DEFAULT_SUBSYSTEM, oldDefaultSubsystem, defaultSubsystem));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IDescription getDescription() {
+		if (description != null && description.eIsProxy()) {
+			InternalEObject oldDescription = (InternalEObject)description;
+			description = (IDescription)eResolveProxy(oldDescription);
+			if (description != oldDescription) {
+				InternalEObject newDescription = (InternalEObject)description;
+				NotificationChain msgs = oldDescription.eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IDIAGRAM__DESCRIPTION, null, null);
+				if (newDescription.eInternalContainer() == null) {
+					msgs = newDescription.eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IDIAGRAM__DESCRIPTION, null, msgs);
+				}
+				if (msgs != null) msgs.dispatch();
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.IDIAGRAM__DESCRIPTION, oldDescription, description));
+			}
+		}
+		return description;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IDescription basicGetDescription() {
+		return description;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public NotificationChain basicSetDescription(IDescription newDescription, NotificationChain msgs) {
+		IDescription oldDescription = description;
+		description = newDescription;
+		if (eNotificationRequired()) {
+			ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IDIAGRAM__DESCRIPTION, oldDescription, newDescription);
+			if (msgs == null) msgs = notification; else msgs.add(notification);
+		}
+		return msgs;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setDescription(IDescription newDescription) {
+		if (newDescription != description) {
+			NotificationChain msgs = null;
+			if (description != null)
+				msgs = ((InternalEObject)description).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IDIAGRAM__DESCRIPTION, null, msgs);
+			if (newDescription != null)
+				msgs = ((InternalEObject)newDescription).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IDIAGRAM__DESCRIPTION, null, msgs);
+			msgs = basicSetDescription(newDescription, msgs);
+			if (msgs != null) msgs.dispatch();
+		}
+		else if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IDIAGRAM__DESCRIPTION, newDescription, newDescription));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getUmlDependencyID() {
+		return umlDependencyID;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setUmlDependencyID(String newUmlDependencyID) {
+		String oldUmlDependencyID = umlDependencyID;
+		umlDependencyID = newUmlDependencyID;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IDIAGRAM__UML_DEPENDENCY_ID, oldUmlDependencyID, umlDependencyID));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getLastID() {
+		return lastID;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setLastID(String newLastID) {
+		String oldLastID = lastID;
+		lastID = newLastID;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IDIAGRAM__LAST_ID, oldLastID, lastID));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getMyState() {
+		return myState;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setMyState(String newMyState) {
+		String oldMyState = myState;
+		myState = newMyState;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IDIAGRAM__MY_STATE, oldMyState, myState));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public OwnerHandleType getOwnerHandle() {
+		if (ownerHandle != null && ownerHandle.eIsProxy()) {
+			InternalEObject oldOwnerHandle = (InternalEObject)ownerHandle;
+			ownerHandle = (OwnerHandleType)eResolveProxy(oldOwnerHandle);
+			if (ownerHandle != oldOwnerHandle) {
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.IDIAGRAM__OWNER_HANDLE, oldOwnerHandle, ownerHandle));
+			}
+		}
+		return ownerHandle;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public OwnerHandleType basicGetOwnerHandle() {
+		return ownerHandle;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setOwnerHandle(OwnerHandleType newOwnerHandle) {
+		OwnerHandleType oldOwnerHandle = ownerHandle;
+		ownerHandle = newOwnerHandle;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IDIAGRAM__OWNER_HANDLE, oldOwnerHandle, ownerHandle));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getObjectCreation() {
+		return objectCreation;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setObjectCreation(String newObjectCreation) {
+		String oldObjectCreation = objectCreation;
+		objectCreation = newObjectCreation;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IDIAGRAM__OBJECT_CREATION, oldObjectCreation, objectCreation));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getName() {
+		return name;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setName(String newName) {
+		String oldName = name;
+		name = newName;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IDIAGRAM__NAME, oldName, name));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getCmheader() {
+		return cmheader;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setCmheader(String newCmheader) {
+		String oldCmheader = cmheader;
+		cmheader = newCmheader;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IDIAGRAM__CMHEADER, oldCmheader, cmheader));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public PropertiesType getProperties() {
+		if (properties != null && properties.eIsProxy()) {
+			InternalEObject oldProperties = (InternalEObject)properties;
+			properties = (PropertiesType)eResolveProxy(oldProperties);
+			if (properties != oldProperties) {
+				InternalEObject newProperties = (InternalEObject)properties;
+				NotificationChain msgs = oldProperties.eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IDIAGRAM__PROPERTIES, null, null);
+				if (newProperties.eInternalContainer() == null) {
+					msgs = newProperties.eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IDIAGRAM__PROPERTIES, null, msgs);
+				}
+				if (msgs != null) msgs.dispatch();
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.IDIAGRAM__PROPERTIES, oldProperties, properties));
+			}
+		}
+		return properties;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public PropertiesType basicGetProperties() {
+		return properties;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public NotificationChain basicSetProperties(PropertiesType newProperties, NotificationChain msgs) {
+		PropertiesType oldProperties = properties;
+		properties = newProperties;
+		if (eNotificationRequired()) {
+			ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IDIAGRAM__PROPERTIES, oldProperties, newProperties);
+			if (msgs == null) msgs = notification; else msgs.add(notification);
+		}
+		return msgs;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setProperties(PropertiesType newProperties) {
+		if (newProperties != properties) {
+			NotificationChain msgs = null;
+			if (properties != null)
+				msgs = ((InternalEObject)properties).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IDIAGRAM__PROPERTIES, null, msgs);
+			if (newProperties != null)
+				msgs = ((InternalEObject)newProperties).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IDIAGRAM__PROPERTIES, null, msgs);
+			msgs = basicSetProperties(newProperties, msgs);
+			if (msgs != null) msgs.dispatch();
+		}
+		else if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IDIAGRAM__PROPERTIES, newProperties, newProperties));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IModelElement getStereotypes() {
+		if (stereotypes != null && stereotypes.eIsProxy()) {
+			InternalEObject oldStereotypes = (InternalEObject)stereotypes;
+			stereotypes = (IModelElement)eResolveProxy(oldStereotypes);
+			if (stereotypes != oldStereotypes) {
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.IDIAGRAM__STEREOTYPES, oldStereotypes, stereotypes));
+			}
+		}
+		return stereotypes;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IModelElement basicGetStereotypes() {
+		return stereotypes;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setStereotypes(IModelElement newStereotypes) {
+		IModelElement oldStereotypes = stereotypes;
+		stereotypes = newStereotypes;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IDIAGRAM__STEREOTYPES, oldStereotypes, stereotypes));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<String> getModifiedTimeWeak() {
+		if (modifiedTimeWeak == null) {
+			modifiedTimeWeak = new EDataTypeEList<String>(String.class, this, UMLRpyPackage.IDIAGRAM__MODIFIED_TIME_WEAK);
+		}
+		return modifiedTimeWeak;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public GraphicChartType getGraphicChart() {
+		if (graphicChart != null && graphicChart.eIsProxy()) {
+			InternalEObject oldGraphicChart = (InternalEObject)graphicChart;
+			graphicChart = (GraphicChartType)eResolveProxy(oldGraphicChart);
+			if (graphicChart != oldGraphicChart) {
+				InternalEObject newGraphicChart = (InternalEObject)graphicChart;
+				NotificationChain msgs = oldGraphicChart.eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IDIAGRAM__GRAPHIC_CHART, null, null);
+				if (newGraphicChart.eInternalContainer() == null) {
+					msgs = newGraphicChart.eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IDIAGRAM__GRAPHIC_CHART, null, msgs);
+				}
+				if (msgs != null) msgs.dispatch();
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.IDIAGRAM__GRAPHIC_CHART, oldGraphicChart, graphicChart));
+			}
+		}
+		return graphicChart;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public GraphicChartType basicGetGraphicChart() {
+		return graphicChart;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public NotificationChain basicSetGraphicChart(GraphicChartType newGraphicChart, NotificationChain msgs) {
+		GraphicChartType oldGraphicChart = graphicChart;
+		graphicChart = newGraphicChart;
+		if (eNotificationRequired()) {
+			ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IDIAGRAM__GRAPHIC_CHART, oldGraphicChart, newGraphicChart);
+			if (msgs == null) msgs = notification; else msgs.add(notification);
+		}
+		return msgs;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setGraphicChart(GraphicChartType newGraphicChart) {
+		if (newGraphicChart != graphicChart) {
+			NotificationChain msgs = null;
+			if (graphicChart != null)
+				msgs = ((InternalEObject)graphicChart).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IDIAGRAM__GRAPHIC_CHART, null, msgs);
+			if (newGraphicChart != null)
+				msgs = ((InternalEObject)newGraphicChart).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IDIAGRAM__GRAPHIC_CHART, null, msgs);
+			msgs = basicSetGraphicChart(newGraphicChart, msgs);
+			if (msgs != null) msgs.dispatch();
+		}
+		else if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IDIAGRAM__GRAPHIC_CHART, newGraphicChart, newGraphicChart));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<IAnnotation> getAnnotations() {
+		if (annotations == null) {
+			annotations = new EObjectContainmentEList.Resolving<IAnnotation>(IAnnotation.class, this, UMLRpyPackage.IDIAGRAM__ANNOTATIONS);
+		}
+		return annotations;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<String> getCodeUpdateCGTime() {
+		if (codeUpdateCGTime == null) {
+			codeUpdateCGTime = new EDataTypeEList<String>(String.class, this, UMLRpyPackage.IDIAGRAM__CODE_UPDATE_CG_TIME);
+		}
+		return codeUpdateCGTime;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<IMHyperLink> getHyperLinks() {
+		if (hyperLinks == null) {
+			hyperLinks = new EObjectContainmentEList.Resolving<IMHyperLink>(IMHyperLink.class, this, UMLRpyPackage.IDIAGRAM__HYPER_LINKS);
+		}
+		return hyperLinks;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
+		switch (featureID) {
+			case UMLRpyPackage.IDIAGRAM__DESCRIPTION:
+				return basicSetDescription(null, msgs);
+			case UMLRpyPackage.IDIAGRAM__PROPERTIES:
+				return basicSetProperties(null, msgs);
+			case UMLRpyPackage.IDIAGRAM__GRAPHIC_CHART:
+				return basicSetGraphicChart(null, msgs);
+			case UMLRpyPackage.IDIAGRAM__ANNOTATIONS:
+				return ((InternalEList<?>)getAnnotations()).basicRemove(otherEnd, msgs);
+			case UMLRpyPackage.IDIAGRAM__HYPER_LINKS:
+				return ((InternalEList<?>)getHyperLinks()).basicRemove(otherEnd, msgs);
+		}
+		return super.eInverseRemove(otherEnd, featureID, msgs);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object eGet(int featureID, boolean resolve, boolean coreType) {
+		switch (featureID) {
+			case UMLRpyPackage.IDIAGRAM__ID:
+				return getId();
+			case UMLRpyPackage.IDIAGRAM__LAST_MODIFIED_TIME:
+				return getLastModifiedTime();
+			case UMLRpyPackage.IDIAGRAM__REQUIREMEN_TRACABILITY_HANDLE:
+				return getRequiremenTracabilityHandle();
+			case UMLRpyPackage.IDIAGRAM__DEFAULT_SUBSYSTEM:
+				if (resolve) return getDefaultSubsystem();
+				return basicGetDefaultSubsystem();
+			case UMLRpyPackage.IDIAGRAM__DESCRIPTION:
+				if (resolve) return getDescription();
+				return basicGetDescription();
+			case UMLRpyPackage.IDIAGRAM__UML_DEPENDENCY_ID:
+				return getUmlDependencyID();
+			case UMLRpyPackage.IDIAGRAM__LAST_ID:
+				return getLastID();
+			case UMLRpyPackage.IDIAGRAM__MY_STATE:
+				return getMyState();
+			case UMLRpyPackage.IDIAGRAM__OWNER_HANDLE:
+				if (resolve) return getOwnerHandle();
+				return basicGetOwnerHandle();
+			case UMLRpyPackage.IDIAGRAM__OBJECT_CREATION:
+				return getObjectCreation();
+			case UMLRpyPackage.IDIAGRAM__NAME:
+				return getName();
+			case UMLRpyPackage.IDIAGRAM__CMHEADER:
+				return getCmheader();
+			case UMLRpyPackage.IDIAGRAM__PROPERTIES:
+				if (resolve) return getProperties();
+				return basicGetProperties();
+			case UMLRpyPackage.IDIAGRAM__STEREOTYPES:
+				if (resolve) return getStereotypes();
+				return basicGetStereotypes();
+			case UMLRpyPackage.IDIAGRAM__MODIFIED_TIME_WEAK:
+				return getModifiedTimeWeak();
+			case UMLRpyPackage.IDIAGRAM__GRAPHIC_CHART:
+				if (resolve) return getGraphicChart();
+				return basicGetGraphicChart();
+			case UMLRpyPackage.IDIAGRAM__ANNOTATIONS:
+				return getAnnotations();
+			case UMLRpyPackage.IDIAGRAM__CODE_UPDATE_CG_TIME:
+				return getCodeUpdateCGTime();
+			case UMLRpyPackage.IDIAGRAM__HYPER_LINKS:
+				return getHyperLinks();
+		}
+		return super.eGet(featureID, resolve, coreType);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@SuppressWarnings("unchecked")
+	@Override
+	public void eSet(int featureID, Object newValue) {
+		switch (featureID) {
+			case UMLRpyPackage.IDIAGRAM__ID:
+				setId((String)newValue);
+				return;
+			case UMLRpyPackage.IDIAGRAM__LAST_MODIFIED_TIME:
+				setLastModifiedTime((String)newValue);
+				return;
+			case UMLRpyPackage.IDIAGRAM__REQUIREMEN_TRACABILITY_HANDLE:
+				setRequiremenTracabilityHandle((String)newValue);
+				return;
+			case UMLRpyPackage.IDIAGRAM__DEFAULT_SUBSYSTEM:
+				setDefaultSubsystem((DefaultSubsystemType)newValue);
+				return;
+			case UMLRpyPackage.IDIAGRAM__DESCRIPTION:
+				setDescription((IDescription)newValue);
+				return;
+			case UMLRpyPackage.IDIAGRAM__UML_DEPENDENCY_ID:
+				setUmlDependencyID((String)newValue);
+				return;
+			case UMLRpyPackage.IDIAGRAM__LAST_ID:
+				setLastID((String)newValue);
+				return;
+			case UMLRpyPackage.IDIAGRAM__MY_STATE:
+				setMyState((String)newValue);
+				return;
+			case UMLRpyPackage.IDIAGRAM__OWNER_HANDLE:
+				setOwnerHandle((OwnerHandleType)newValue);
+				return;
+			case UMLRpyPackage.IDIAGRAM__OBJECT_CREATION:
+				setObjectCreation((String)newValue);
+				return;
+			case UMLRpyPackage.IDIAGRAM__NAME:
+				setName((String)newValue);
+				return;
+			case UMLRpyPackage.IDIAGRAM__CMHEADER:
+				setCmheader((String)newValue);
+				return;
+			case UMLRpyPackage.IDIAGRAM__PROPERTIES:
+				setProperties((PropertiesType)newValue);
+				return;
+			case UMLRpyPackage.IDIAGRAM__STEREOTYPES:
+				setStereotypes((IModelElement)newValue);
+				return;
+			case UMLRpyPackage.IDIAGRAM__MODIFIED_TIME_WEAK:
+				getModifiedTimeWeak().clear();
+				getModifiedTimeWeak().addAll((Collection<? extends String>)newValue);
+				return;
+			case UMLRpyPackage.IDIAGRAM__GRAPHIC_CHART:
+				setGraphicChart((GraphicChartType)newValue);
+				return;
+			case UMLRpyPackage.IDIAGRAM__ANNOTATIONS:
+				getAnnotations().clear();
+				getAnnotations().addAll((Collection<? extends IAnnotation>)newValue);
+				return;
+			case UMLRpyPackage.IDIAGRAM__CODE_UPDATE_CG_TIME:
+				getCodeUpdateCGTime().clear();
+				getCodeUpdateCGTime().addAll((Collection<? extends String>)newValue);
+				return;
+			case UMLRpyPackage.IDIAGRAM__HYPER_LINKS:
+				getHyperLinks().clear();
+				getHyperLinks().addAll((Collection<? extends IMHyperLink>)newValue);
+				return;
+		}
+		super.eSet(featureID, newValue);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void eUnset(int featureID) {
+		switch (featureID) {
+			case UMLRpyPackage.IDIAGRAM__ID:
+				setId(ID_EDEFAULT);
+				return;
+			case UMLRpyPackage.IDIAGRAM__LAST_MODIFIED_TIME:
+				setLastModifiedTime(LAST_MODIFIED_TIME_EDEFAULT);
+				return;
+			case UMLRpyPackage.IDIAGRAM__REQUIREMEN_TRACABILITY_HANDLE:
+				setRequiremenTracabilityHandle(REQUIREMEN_TRACABILITY_HANDLE_EDEFAULT);
+				return;
+			case UMLRpyPackage.IDIAGRAM__DEFAULT_SUBSYSTEM:
+				setDefaultSubsystem((DefaultSubsystemType)null);
+				return;
+			case UMLRpyPackage.IDIAGRAM__DESCRIPTION:
+				setDescription((IDescription)null);
+				return;
+			case UMLRpyPackage.IDIAGRAM__UML_DEPENDENCY_ID:
+				setUmlDependencyID(UML_DEPENDENCY_ID_EDEFAULT);
+				return;
+			case UMLRpyPackage.IDIAGRAM__LAST_ID:
+				setLastID(LAST_ID_EDEFAULT);
+				return;
+			case UMLRpyPackage.IDIAGRAM__MY_STATE:
+				setMyState(MY_STATE_EDEFAULT);
+				return;
+			case UMLRpyPackage.IDIAGRAM__OWNER_HANDLE:
+				setOwnerHandle((OwnerHandleType)null);
+				return;
+			case UMLRpyPackage.IDIAGRAM__OBJECT_CREATION:
+				setObjectCreation(OBJECT_CREATION_EDEFAULT);
+				return;
+			case UMLRpyPackage.IDIAGRAM__NAME:
+				setName(NAME_EDEFAULT);
+				return;
+			case UMLRpyPackage.IDIAGRAM__CMHEADER:
+				setCmheader(CMHEADER_EDEFAULT);
+				return;
+			case UMLRpyPackage.IDIAGRAM__PROPERTIES:
+				setProperties((PropertiesType)null);
+				return;
+			case UMLRpyPackage.IDIAGRAM__STEREOTYPES:
+				setStereotypes((IModelElement)null);
+				return;
+			case UMLRpyPackage.IDIAGRAM__MODIFIED_TIME_WEAK:
+				getModifiedTimeWeak().clear();
+				return;
+			case UMLRpyPackage.IDIAGRAM__GRAPHIC_CHART:
+				setGraphicChart((GraphicChartType)null);
+				return;
+			case UMLRpyPackage.IDIAGRAM__ANNOTATIONS:
+				getAnnotations().clear();
+				return;
+			case UMLRpyPackage.IDIAGRAM__CODE_UPDATE_CG_TIME:
+				getCodeUpdateCGTime().clear();
+				return;
+			case UMLRpyPackage.IDIAGRAM__HYPER_LINKS:
+				getHyperLinks().clear();
+				return;
+		}
+		super.eUnset(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public boolean eIsSet(int featureID) {
+		switch (featureID) {
+			case UMLRpyPackage.IDIAGRAM__ID:
+				return ID_EDEFAULT == null ? id != null : !ID_EDEFAULT.equals(id);
+			case UMLRpyPackage.IDIAGRAM__LAST_MODIFIED_TIME:
+				return LAST_MODIFIED_TIME_EDEFAULT == null ? lastModifiedTime != null : !LAST_MODIFIED_TIME_EDEFAULT.equals(lastModifiedTime);
+			case UMLRpyPackage.IDIAGRAM__REQUIREMEN_TRACABILITY_HANDLE:
+				return REQUIREMEN_TRACABILITY_HANDLE_EDEFAULT == null ? requiremenTracabilityHandle != null : !REQUIREMEN_TRACABILITY_HANDLE_EDEFAULT.equals(requiremenTracabilityHandle);
+			case UMLRpyPackage.IDIAGRAM__DEFAULT_SUBSYSTEM:
+				return defaultSubsystem != null;
+			case UMLRpyPackage.IDIAGRAM__DESCRIPTION:
+				return description != null;
+			case UMLRpyPackage.IDIAGRAM__UML_DEPENDENCY_ID:
+				return UML_DEPENDENCY_ID_EDEFAULT == null ? umlDependencyID != null : !UML_DEPENDENCY_ID_EDEFAULT.equals(umlDependencyID);
+			case UMLRpyPackage.IDIAGRAM__LAST_ID:
+				return LAST_ID_EDEFAULT == null ? lastID != null : !LAST_ID_EDEFAULT.equals(lastID);
+			case UMLRpyPackage.IDIAGRAM__MY_STATE:
+				return MY_STATE_EDEFAULT == null ? myState != null : !MY_STATE_EDEFAULT.equals(myState);
+			case UMLRpyPackage.IDIAGRAM__OWNER_HANDLE:
+				return ownerHandle != null;
+			case UMLRpyPackage.IDIAGRAM__OBJECT_CREATION:
+				return OBJECT_CREATION_EDEFAULT == null ? objectCreation != null : !OBJECT_CREATION_EDEFAULT.equals(objectCreation);
+			case UMLRpyPackage.IDIAGRAM__NAME:
+				return NAME_EDEFAULT == null ? name != null : !NAME_EDEFAULT.equals(name);
+			case UMLRpyPackage.IDIAGRAM__CMHEADER:
+				return CMHEADER_EDEFAULT == null ? cmheader != null : !CMHEADER_EDEFAULT.equals(cmheader);
+			case UMLRpyPackage.IDIAGRAM__PROPERTIES:
+				return properties != null;
+			case UMLRpyPackage.IDIAGRAM__STEREOTYPES:
+				return stereotypes != null;
+			case UMLRpyPackage.IDIAGRAM__MODIFIED_TIME_WEAK:
+				return modifiedTimeWeak != null && !modifiedTimeWeak.isEmpty();
+			case UMLRpyPackage.IDIAGRAM__GRAPHIC_CHART:
+				return graphicChart != null;
+			case UMLRpyPackage.IDIAGRAM__ANNOTATIONS:
+				return annotations != null && !annotations.isEmpty();
+			case UMLRpyPackage.IDIAGRAM__CODE_UPDATE_CG_TIME:
+				return codeUpdateCGTime != null && !codeUpdateCGTime.isEmpty();
+			case UMLRpyPackage.IDIAGRAM__HYPER_LINKS:
+				return hyperLinks != null && !hyperLinks.isEmpty();
+		}
+		return super.eIsSet(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public int eBaseStructuralFeatureID(int derivedFeatureID, Class<?> baseClass) {
+		if (baseClass == M_pModelObjectType.class) {
+			switch (derivedFeatureID) {
+				default: return -1;
+			}
+		}
+		if (baseClass == TheMainDiagramType.class) {
+			switch (derivedFeatureID) {
+				case UMLRpyPackage.IDIAGRAM__ID: return UMLRpyPackage.THE_MAIN_DIAGRAM_TYPE__ID;
+				case UMLRpyPackage.IDIAGRAM__LAST_MODIFIED_TIME: return UMLRpyPackage.THE_MAIN_DIAGRAM_TYPE__LAST_MODIFIED_TIME;
+				case UMLRpyPackage.IDIAGRAM__REQUIREMEN_TRACABILITY_HANDLE: return UMLRpyPackage.THE_MAIN_DIAGRAM_TYPE__REQUIREMEN_TRACABILITY_HANDLE;
+				case UMLRpyPackage.IDIAGRAM__DEFAULT_SUBSYSTEM: return UMLRpyPackage.THE_MAIN_DIAGRAM_TYPE__DEFAULT_SUBSYSTEM;
+				case UMLRpyPackage.IDIAGRAM__DESCRIPTION: return UMLRpyPackage.THE_MAIN_DIAGRAM_TYPE__DESCRIPTION;
+				case UMLRpyPackage.IDIAGRAM__UML_DEPENDENCY_ID: return UMLRpyPackage.THE_MAIN_DIAGRAM_TYPE__UML_DEPENDENCY_ID;
+				case UMLRpyPackage.IDIAGRAM__LAST_ID: return UMLRpyPackage.THE_MAIN_DIAGRAM_TYPE__LAST_ID;
+				case UMLRpyPackage.IDIAGRAM__MY_STATE: return UMLRpyPackage.THE_MAIN_DIAGRAM_TYPE__MY_STATE;
+				case UMLRpyPackage.IDIAGRAM__OWNER_HANDLE: return UMLRpyPackage.THE_MAIN_DIAGRAM_TYPE__OWNER_HANDLE;
+				case UMLRpyPackage.IDIAGRAM__OBJECT_CREATION: return UMLRpyPackage.THE_MAIN_DIAGRAM_TYPE__OBJECT_CREATION;
+				case UMLRpyPackage.IDIAGRAM__NAME: return UMLRpyPackage.THE_MAIN_DIAGRAM_TYPE__NAME;
+				case UMLRpyPackage.IDIAGRAM__CMHEADER: return UMLRpyPackage.THE_MAIN_DIAGRAM_TYPE__CMHEADER;
+				default: return -1;
+			}
+		}
+		if (baseClass == DeclarativesType.class) {
+			switch (derivedFeatureID) {
+				default: return -1;
+			}
+		}
+		if (baseClass == ElementsType.class) {
+			switch (derivedFeatureID) {
+				default: return -1;
+			}
+		}
+		if (baseClass == DependsOnType.class) {
+			switch (derivedFeatureID) {
+				default: return -1;
+			}
+		}
+		if (baseClass == TargetType.class) {
+			switch (derivedFeatureID) {
+				default: return -1;
+			}
+		}
+		return super.eBaseStructuralFeatureID(derivedFeatureID, baseClass);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public int eDerivedStructuralFeatureID(int baseFeatureID, Class<?> baseClass) {
+		if (baseClass == M_pModelObjectType.class) {
+			switch (baseFeatureID) {
+				default: return -1;
+			}
+		}
+		if (baseClass == TheMainDiagramType.class) {
+			switch (baseFeatureID) {
+				case UMLRpyPackage.THE_MAIN_DIAGRAM_TYPE__ID: return UMLRpyPackage.IDIAGRAM__ID;
+				case UMLRpyPackage.THE_MAIN_DIAGRAM_TYPE__LAST_MODIFIED_TIME: return UMLRpyPackage.IDIAGRAM__LAST_MODIFIED_TIME;
+				case UMLRpyPackage.THE_MAIN_DIAGRAM_TYPE__REQUIREMEN_TRACABILITY_HANDLE: return UMLRpyPackage.IDIAGRAM__REQUIREMEN_TRACABILITY_HANDLE;
+				case UMLRpyPackage.THE_MAIN_DIAGRAM_TYPE__DEFAULT_SUBSYSTEM: return UMLRpyPackage.IDIAGRAM__DEFAULT_SUBSYSTEM;
+				case UMLRpyPackage.THE_MAIN_DIAGRAM_TYPE__DESCRIPTION: return UMLRpyPackage.IDIAGRAM__DESCRIPTION;
+				case UMLRpyPackage.THE_MAIN_DIAGRAM_TYPE__UML_DEPENDENCY_ID: return UMLRpyPackage.IDIAGRAM__UML_DEPENDENCY_ID;
+				case UMLRpyPackage.THE_MAIN_DIAGRAM_TYPE__LAST_ID: return UMLRpyPackage.IDIAGRAM__LAST_ID;
+				case UMLRpyPackage.THE_MAIN_DIAGRAM_TYPE__MY_STATE: return UMLRpyPackage.IDIAGRAM__MY_STATE;
+				case UMLRpyPackage.THE_MAIN_DIAGRAM_TYPE__OWNER_HANDLE: return UMLRpyPackage.IDIAGRAM__OWNER_HANDLE;
+				case UMLRpyPackage.THE_MAIN_DIAGRAM_TYPE__OBJECT_CREATION: return UMLRpyPackage.IDIAGRAM__OBJECT_CREATION;
+				case UMLRpyPackage.THE_MAIN_DIAGRAM_TYPE__NAME: return UMLRpyPackage.IDIAGRAM__NAME;
+				case UMLRpyPackage.THE_MAIN_DIAGRAM_TYPE__CMHEADER: return UMLRpyPackage.IDIAGRAM__CMHEADER;
+				default: return -1;
+			}
+		}
+		if (baseClass == DeclarativesType.class) {
+			switch (baseFeatureID) {
+				default: return -1;
+			}
+		}
+		if (baseClass == ElementsType.class) {
+			switch (baseFeatureID) {
+				default: return -1;
+			}
+		}
+		if (baseClass == DependsOnType.class) {
+			switch (baseFeatureID) {
+				default: return -1;
+			}
+		}
+		if (baseClass == TargetType.class) {
+			switch (baseFeatureID) {
+				default: return -1;
+			}
+		}
+		return super.eDerivedStructuralFeatureID(baseFeatureID, baseClass);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String toString() {
+		if (eIsProxy()) return super.toString();
+
+		StringBuffer result = new StringBuffer(super.toString());
+		result.append(" (id: "); //$NON-NLS-1$
+		result.append(id);
+		result.append(", lastModifiedTime: "); //$NON-NLS-1$
+		result.append(lastModifiedTime);
+		result.append(", requiremenTracabilityHandle: "); //$NON-NLS-1$
+		result.append(requiremenTracabilityHandle);
+		result.append(", umlDependencyID: "); //$NON-NLS-1$
+		result.append(umlDependencyID);
+		result.append(", lastID: "); //$NON-NLS-1$
+		result.append(lastID);
+		result.append(", myState: "); //$NON-NLS-1$
+		result.append(myState);
+		result.append(", objectCreation: "); //$NON-NLS-1$
+		result.append(objectCreation);
+		result.append(", name: "); //$NON-NLS-1$
+		result.append(name);
+		result.append(", cmheader: "); //$NON-NLS-1$
+		result.append(cmheader);
+		result.append(", modifiedTimeWeak: "); //$NON-NLS-1$
+		result.append(modifiedTimeWeak);
+		result.append(", codeUpdateCGTime: "); //$NON-NLS-1$
+		result.append(codeUpdateCGTime);
+		result.append(')');
+		return result.toString();
+	}
+
+} //IDiagramImpl
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/IEmbededFileImpl.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/IEmbededFileImpl.java
new file mode 100755
index 0000000..0db191f
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/IEmbededFileImpl.java
@@ -0,0 +1,535 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl;
+
+import java.util.Collection;
+
+import org.eclipse.emf.common.notify.Notification;
+import org.eclipse.emf.common.notify.NotificationChain;
+
+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.interoperability.rpy.rpymetamodel.IEmbededFile;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITag;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UnknownType;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>IEmbeded File</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * </p>
+ * <ul>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IEmbededFileImpl#getId <em>Id</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IEmbededFileImpl#getName <em>Name</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IEmbededFileImpl#getModifiedTimeWeak <em>Modified Time Weak</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IEmbededFileImpl#getMayNeedToRelocate <em>May Need To Relocate</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IEmbededFileImpl#getLastKnownFullPath <em>Last Known Full Path</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IEmbededFileImpl#getStereotypes <em>Stereotypes</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IEmbededFileImpl#getTags <em>Tags</em>}</li>
+ * </ul>
+ *
+ * @generated
+ */
+public class IEmbededFileImpl extends EmbededFilesTypeImpl implements IEmbededFile {
+	/**
+	 * The default value of the '{@link #getId() <em>Id</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getId()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String ID_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getId() <em>Id</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getId()
+	 * @generated
+	 * @ordered
+	 */
+	protected String id = ID_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getName() <em>Name</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getName()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String NAME_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getName() <em>Name</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getName()
+	 * @generated
+	 * @ordered
+	 */
+	protected String name = NAME_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getModifiedTimeWeak() <em>Modified Time Weak</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getModifiedTimeWeak()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String MODIFIED_TIME_WEAK_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getModifiedTimeWeak() <em>Modified Time Weak</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getModifiedTimeWeak()
+	 * @generated
+	 * @ordered
+	 */
+	protected String modifiedTimeWeak = MODIFIED_TIME_WEAK_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getMayNeedToRelocate() <em>May Need To Relocate</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getMayNeedToRelocate()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String MAY_NEED_TO_RELOCATE_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getMayNeedToRelocate() <em>May Need To Relocate</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getMayNeedToRelocate()
+	 * @generated
+	 * @ordered
+	 */
+	protected String mayNeedToRelocate = MAY_NEED_TO_RELOCATE_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getLastKnownFullPath() <em>Last Known Full Path</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getLastKnownFullPath()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String LAST_KNOWN_FULL_PATH_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getLastKnownFullPath() <em>Last Known Full Path</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getLastKnownFullPath()
+	 * @generated
+	 * @ordered
+	 */
+	protected String lastKnownFullPath = LAST_KNOWN_FULL_PATH_EDEFAULT;
+
+	/**
+	 * The cached value of the '{@link #getStereotypes() <em>Stereotypes</em>}' reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getStereotypes()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<UnknownType> stereotypes;
+
+	/**
+	 * The cached value of the '{@link #getTags() <em>Tags</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getTags()
+	 * @generated
+	 * @ordered
+	 */
+	protected ITag tags;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected IEmbededFileImpl() {
+		super();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EClass eStaticClass() {
+		return UMLRpyPackage.eINSTANCE.getIEmbededFile();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getId() {
+		return id;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setId(String newId) {
+		String oldId = id;
+		id = newId;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IEMBEDED_FILE__ID, oldId, id));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getName() {
+		return name;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setName(String newName) {
+		String oldName = name;
+		name = newName;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IEMBEDED_FILE__NAME, oldName, name));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getModifiedTimeWeak() {
+		return modifiedTimeWeak;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setModifiedTimeWeak(String newModifiedTimeWeak) {
+		String oldModifiedTimeWeak = modifiedTimeWeak;
+		modifiedTimeWeak = newModifiedTimeWeak;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IEMBEDED_FILE__MODIFIED_TIME_WEAK, oldModifiedTimeWeak, modifiedTimeWeak));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getMayNeedToRelocate() {
+		return mayNeedToRelocate;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setMayNeedToRelocate(String newMayNeedToRelocate) {
+		String oldMayNeedToRelocate = mayNeedToRelocate;
+		mayNeedToRelocate = newMayNeedToRelocate;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IEMBEDED_FILE__MAY_NEED_TO_RELOCATE, oldMayNeedToRelocate, mayNeedToRelocate));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getLastKnownFullPath() {
+		return lastKnownFullPath;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setLastKnownFullPath(String newLastKnownFullPath) {
+		String oldLastKnownFullPath = lastKnownFullPath;
+		lastKnownFullPath = newLastKnownFullPath;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IEMBEDED_FILE__LAST_KNOWN_FULL_PATH, oldLastKnownFullPath, lastKnownFullPath));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<UnknownType> getStereotypes() {
+		if (stereotypes == null) {
+			stereotypes = new EObjectResolvingEList<UnknownType>(UnknownType.class, this, UMLRpyPackage.IEMBEDED_FILE__STEREOTYPES);
+		}
+		return stereotypes;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public ITag getTags() {
+		if (tags != null && tags.eIsProxy()) {
+			InternalEObject oldTags = (InternalEObject)tags;
+			tags = (ITag)eResolveProxy(oldTags);
+			if (tags != oldTags) {
+				InternalEObject newTags = (InternalEObject)tags;
+				NotificationChain msgs = oldTags.eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IEMBEDED_FILE__TAGS, null, null);
+				if (newTags.eInternalContainer() == null) {
+					msgs = newTags.eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IEMBEDED_FILE__TAGS, null, msgs);
+				}
+				if (msgs != null) msgs.dispatch();
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.IEMBEDED_FILE__TAGS, oldTags, tags));
+			}
+		}
+		return tags;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public ITag basicGetTags() {
+		return tags;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public NotificationChain basicSetTags(ITag newTags, NotificationChain msgs) {
+		ITag oldTags = tags;
+		tags = newTags;
+		if (eNotificationRequired()) {
+			ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IEMBEDED_FILE__TAGS, oldTags, newTags);
+			if (msgs == null) msgs = notification; else msgs.add(notification);
+		}
+		return msgs;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setTags(ITag newTags) {
+		if (newTags != tags) {
+			NotificationChain msgs = null;
+			if (tags != null)
+				msgs = ((InternalEObject)tags).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IEMBEDED_FILE__TAGS, null, msgs);
+			if (newTags != null)
+				msgs = ((InternalEObject)newTags).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IEMBEDED_FILE__TAGS, null, msgs);
+			msgs = basicSetTags(newTags, msgs);
+			if (msgs != null) msgs.dispatch();
+		}
+		else if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IEMBEDED_FILE__TAGS, newTags, newTags));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
+		switch (featureID) {
+			case UMLRpyPackage.IEMBEDED_FILE__TAGS:
+				return basicSetTags(null, msgs);
+		}
+		return super.eInverseRemove(otherEnd, featureID, msgs);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object eGet(int featureID, boolean resolve, boolean coreType) {
+		switch (featureID) {
+			case UMLRpyPackage.IEMBEDED_FILE__ID:
+				return getId();
+			case UMLRpyPackage.IEMBEDED_FILE__NAME:
+				return getName();
+			case UMLRpyPackage.IEMBEDED_FILE__MODIFIED_TIME_WEAK:
+				return getModifiedTimeWeak();
+			case UMLRpyPackage.IEMBEDED_FILE__MAY_NEED_TO_RELOCATE:
+				return getMayNeedToRelocate();
+			case UMLRpyPackage.IEMBEDED_FILE__LAST_KNOWN_FULL_PATH:
+				return getLastKnownFullPath();
+			case UMLRpyPackage.IEMBEDED_FILE__STEREOTYPES:
+				return getStereotypes();
+			case UMLRpyPackage.IEMBEDED_FILE__TAGS:
+				if (resolve) return getTags();
+				return basicGetTags();
+		}
+		return super.eGet(featureID, resolve, coreType);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@SuppressWarnings("unchecked")
+	@Override
+	public void eSet(int featureID, Object newValue) {
+		switch (featureID) {
+			case UMLRpyPackage.IEMBEDED_FILE__ID:
+				setId((String)newValue);
+				return;
+			case UMLRpyPackage.IEMBEDED_FILE__NAME:
+				setName((String)newValue);
+				return;
+			case UMLRpyPackage.IEMBEDED_FILE__MODIFIED_TIME_WEAK:
+				setModifiedTimeWeak((String)newValue);
+				return;
+			case UMLRpyPackage.IEMBEDED_FILE__MAY_NEED_TO_RELOCATE:
+				setMayNeedToRelocate((String)newValue);
+				return;
+			case UMLRpyPackage.IEMBEDED_FILE__LAST_KNOWN_FULL_PATH:
+				setLastKnownFullPath((String)newValue);
+				return;
+			case UMLRpyPackage.IEMBEDED_FILE__STEREOTYPES:
+				getStereotypes().clear();
+				getStereotypes().addAll((Collection<? extends UnknownType>)newValue);
+				return;
+			case UMLRpyPackage.IEMBEDED_FILE__TAGS:
+				setTags((ITag)newValue);
+				return;
+		}
+		super.eSet(featureID, newValue);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void eUnset(int featureID) {
+		switch (featureID) {
+			case UMLRpyPackage.IEMBEDED_FILE__ID:
+				setId(ID_EDEFAULT);
+				return;
+			case UMLRpyPackage.IEMBEDED_FILE__NAME:
+				setName(NAME_EDEFAULT);
+				return;
+			case UMLRpyPackage.IEMBEDED_FILE__MODIFIED_TIME_WEAK:
+				setModifiedTimeWeak(MODIFIED_TIME_WEAK_EDEFAULT);
+				return;
+			case UMLRpyPackage.IEMBEDED_FILE__MAY_NEED_TO_RELOCATE:
+				setMayNeedToRelocate(MAY_NEED_TO_RELOCATE_EDEFAULT);
+				return;
+			case UMLRpyPackage.IEMBEDED_FILE__LAST_KNOWN_FULL_PATH:
+				setLastKnownFullPath(LAST_KNOWN_FULL_PATH_EDEFAULT);
+				return;
+			case UMLRpyPackage.IEMBEDED_FILE__STEREOTYPES:
+				getStereotypes().clear();
+				return;
+			case UMLRpyPackage.IEMBEDED_FILE__TAGS:
+				setTags((ITag)null);
+				return;
+		}
+		super.eUnset(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public boolean eIsSet(int featureID) {
+		switch (featureID) {
+			case UMLRpyPackage.IEMBEDED_FILE__ID:
+				return ID_EDEFAULT == null ? id != null : !ID_EDEFAULT.equals(id);
+			case UMLRpyPackage.IEMBEDED_FILE__NAME:
+				return NAME_EDEFAULT == null ? name != null : !NAME_EDEFAULT.equals(name);
+			case UMLRpyPackage.IEMBEDED_FILE__MODIFIED_TIME_WEAK:
+				return MODIFIED_TIME_WEAK_EDEFAULT == null ? modifiedTimeWeak != null : !MODIFIED_TIME_WEAK_EDEFAULT.equals(modifiedTimeWeak);
+			case UMLRpyPackage.IEMBEDED_FILE__MAY_NEED_TO_RELOCATE:
+				return MAY_NEED_TO_RELOCATE_EDEFAULT == null ? mayNeedToRelocate != null : !MAY_NEED_TO_RELOCATE_EDEFAULT.equals(mayNeedToRelocate);
+			case UMLRpyPackage.IEMBEDED_FILE__LAST_KNOWN_FULL_PATH:
+				return LAST_KNOWN_FULL_PATH_EDEFAULT == null ? lastKnownFullPath != null : !LAST_KNOWN_FULL_PATH_EDEFAULT.equals(lastKnownFullPath);
+			case UMLRpyPackage.IEMBEDED_FILE__STEREOTYPES:
+				return stereotypes != null && !stereotypes.isEmpty();
+			case UMLRpyPackage.IEMBEDED_FILE__TAGS:
+				return tags != null;
+		}
+		return super.eIsSet(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String toString() {
+		if (eIsProxy()) return super.toString();
+
+		StringBuffer result = new StringBuffer(super.toString());
+		result.append(" (id: "); //$NON-NLS-1$
+		result.append(id);
+		result.append(", name: "); //$NON-NLS-1$
+		result.append(name);
+		result.append(", modifiedTimeWeak: "); //$NON-NLS-1$
+		result.append(modifiedTimeWeak);
+		result.append(", MayNeedToRelocate: "); //$NON-NLS-1$
+		result.append(mayNeedToRelocate);
+		result.append(", LastKnownFullPath: "); //$NON-NLS-1$
+		result.append(lastKnownFullPath);
+		result.append(')');
+		return result.toString();
+	}
+
+} //IEmbededFileImpl
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/IEnumerationLiteralImpl.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/IEnumerationLiteralImpl.java
new file mode 100755
index 0000000..4b467ae
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/IEnumerationLiteralImpl.java
@@ -0,0 +1,646 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl;
+
+import java.util.Collection;
+
+import org.eclipse.emf.common.notify.Notification;
+import org.eclipse.emf.common.notify.NotificationChain;
+
+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.EDataTypeEList;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IDescription;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IEnumerationLiteral;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IPropertyContainer;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITag;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>IEnumeration Literal</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * </p>
+ * <ul>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IEnumerationLiteralImpl#getId <em>Id</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IEnumerationLiteralImpl#getName <em>Name</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IEnumerationLiteralImpl#getModifiedTimeWeak <em>Modified Time Weak</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IEnumerationLiteralImpl#getValue <em>Value</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IEnumerationLiteralImpl#getProperties <em>Properties</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IEnumerationLiteralImpl#getTags <em>Tags</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IEnumerationLiteralImpl#getCodeUpdateCGTime <em>Code Update CG Time</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IEnumerationLiteralImpl#getDescription <em>Description</em>}</li>
+ * </ul>
+ *
+ * @generated
+ */
+public class IEnumerationLiteralImpl extends IModelElementImpl implements IEnumerationLiteral {
+	/**
+	 * The default value of the '{@link #getId() <em>Id</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getId()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String ID_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getId() <em>Id</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getId()
+	 * @generated
+	 * @ordered
+	 */
+	protected String id = ID_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getName() <em>Name</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getName()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String NAME_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getName() <em>Name</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getName()
+	 * @generated
+	 * @ordered
+	 */
+	protected String name = NAME_EDEFAULT;
+
+	/**
+	 * The cached value of the '{@link #getModifiedTimeWeak() <em>Modified Time Weak</em>}' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getModifiedTimeWeak()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<String> modifiedTimeWeak;
+
+	/**
+	 * The default value of the '{@link #getValue() <em>Value</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getValue()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String VALUE_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getValue() <em>Value</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getValue()
+	 * @generated
+	 * @ordered
+	 */
+	protected String value = VALUE_EDEFAULT;
+
+	/**
+	 * The cached value of the '{@link #getProperties() <em>Properties</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getProperties()
+	 * @generated
+	 * @ordered
+	 */
+	protected IPropertyContainer properties;
+
+	/**
+	 * The cached value of the '{@link #getTags() <em>Tags</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getTags()
+	 * @generated
+	 * @ordered
+	 */
+	protected ITag tags;
+
+	/**
+	 * The cached value of the '{@link #getCodeUpdateCGTime() <em>Code Update CG Time</em>}' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getCodeUpdateCGTime()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<String> codeUpdateCGTime;
+
+	/**
+	 * The cached value of the '{@link #getDescription() <em>Description</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getDescription()
+	 * @generated
+	 * @ordered
+	 */
+	protected IDescription description;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected IEnumerationLiteralImpl() {
+		super();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EClass eStaticClass() {
+		return UMLRpyPackage.eINSTANCE.getIEnumerationLiteral();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getId() {
+		return id;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setId(String newId) {
+		String oldId = id;
+		id = newId;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IENUMERATION_LITERAL__ID, oldId, id));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getName() {
+		return name;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setName(String newName) {
+		String oldName = name;
+		name = newName;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IENUMERATION_LITERAL__NAME, oldName, name));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<String> getModifiedTimeWeak() {
+		if (modifiedTimeWeak == null) {
+			modifiedTimeWeak = new EDataTypeEList<String>(String.class, this, UMLRpyPackage.IENUMERATION_LITERAL__MODIFIED_TIME_WEAK);
+		}
+		return modifiedTimeWeak;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getValue() {
+		return value;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setValue(String newValue) {
+		String oldValue = value;
+		value = newValue;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IENUMERATION_LITERAL__VALUE, oldValue, value));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IPropertyContainer getProperties() {
+		if (properties != null && properties.eIsProxy()) {
+			InternalEObject oldProperties = (InternalEObject)properties;
+			properties = (IPropertyContainer)eResolveProxy(oldProperties);
+			if (properties != oldProperties) {
+				InternalEObject newProperties = (InternalEObject)properties;
+				NotificationChain msgs = oldProperties.eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IENUMERATION_LITERAL__PROPERTIES, null, null);
+				if (newProperties.eInternalContainer() == null) {
+					msgs = newProperties.eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IENUMERATION_LITERAL__PROPERTIES, null, msgs);
+				}
+				if (msgs != null) msgs.dispatch();
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.IENUMERATION_LITERAL__PROPERTIES, oldProperties, properties));
+			}
+		}
+		return properties;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IPropertyContainer basicGetProperties() {
+		return properties;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public NotificationChain basicSetProperties(IPropertyContainer newProperties, NotificationChain msgs) {
+		IPropertyContainer oldProperties = properties;
+		properties = newProperties;
+		if (eNotificationRequired()) {
+			ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IENUMERATION_LITERAL__PROPERTIES, oldProperties, newProperties);
+			if (msgs == null) msgs = notification; else msgs.add(notification);
+		}
+		return msgs;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setProperties(IPropertyContainer newProperties) {
+		if (newProperties != properties) {
+			NotificationChain msgs = null;
+			if (properties != null)
+				msgs = ((InternalEObject)properties).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IENUMERATION_LITERAL__PROPERTIES, null, msgs);
+			if (newProperties != null)
+				msgs = ((InternalEObject)newProperties).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IENUMERATION_LITERAL__PROPERTIES, null, msgs);
+			msgs = basicSetProperties(newProperties, msgs);
+			if (msgs != null) msgs.dispatch();
+		}
+		else if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IENUMERATION_LITERAL__PROPERTIES, newProperties, newProperties));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public ITag getTags() {
+		if (tags != null && tags.eIsProxy()) {
+			InternalEObject oldTags = (InternalEObject)tags;
+			tags = (ITag)eResolveProxy(oldTags);
+			if (tags != oldTags) {
+				InternalEObject newTags = (InternalEObject)tags;
+				NotificationChain msgs = oldTags.eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IENUMERATION_LITERAL__TAGS, null, null);
+				if (newTags.eInternalContainer() == null) {
+					msgs = newTags.eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IENUMERATION_LITERAL__TAGS, null, msgs);
+				}
+				if (msgs != null) msgs.dispatch();
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.IENUMERATION_LITERAL__TAGS, oldTags, tags));
+			}
+		}
+		return tags;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public ITag basicGetTags() {
+		return tags;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public NotificationChain basicSetTags(ITag newTags, NotificationChain msgs) {
+		ITag oldTags = tags;
+		tags = newTags;
+		if (eNotificationRequired()) {
+			ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IENUMERATION_LITERAL__TAGS, oldTags, newTags);
+			if (msgs == null) msgs = notification; else msgs.add(notification);
+		}
+		return msgs;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setTags(ITag newTags) {
+		if (newTags != tags) {
+			NotificationChain msgs = null;
+			if (tags != null)
+				msgs = ((InternalEObject)tags).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IENUMERATION_LITERAL__TAGS, null, msgs);
+			if (newTags != null)
+				msgs = ((InternalEObject)newTags).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IENUMERATION_LITERAL__TAGS, null, msgs);
+			msgs = basicSetTags(newTags, msgs);
+			if (msgs != null) msgs.dispatch();
+		}
+		else if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IENUMERATION_LITERAL__TAGS, newTags, newTags));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<String> getCodeUpdateCGTime() {
+		if (codeUpdateCGTime == null) {
+			codeUpdateCGTime = new EDataTypeEList<String>(String.class, this, UMLRpyPackage.IENUMERATION_LITERAL__CODE_UPDATE_CG_TIME);
+		}
+		return codeUpdateCGTime;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IDescription getDescription() {
+		if (description != null && description.eIsProxy()) {
+			InternalEObject oldDescription = (InternalEObject)description;
+			description = (IDescription)eResolveProxy(oldDescription);
+			if (description != oldDescription) {
+				InternalEObject newDescription = (InternalEObject)description;
+				NotificationChain msgs = oldDescription.eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IENUMERATION_LITERAL__DESCRIPTION, null, null);
+				if (newDescription.eInternalContainer() == null) {
+					msgs = newDescription.eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IENUMERATION_LITERAL__DESCRIPTION, null, msgs);
+				}
+				if (msgs != null) msgs.dispatch();
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.IENUMERATION_LITERAL__DESCRIPTION, oldDescription, description));
+			}
+		}
+		return description;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IDescription basicGetDescription() {
+		return description;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public NotificationChain basicSetDescription(IDescription newDescription, NotificationChain msgs) {
+		IDescription oldDescription = description;
+		description = newDescription;
+		if (eNotificationRequired()) {
+			ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IENUMERATION_LITERAL__DESCRIPTION, oldDescription, newDescription);
+			if (msgs == null) msgs = notification; else msgs.add(notification);
+		}
+		return msgs;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setDescription(IDescription newDescription) {
+		if (newDescription != description) {
+			NotificationChain msgs = null;
+			if (description != null)
+				msgs = ((InternalEObject)description).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IENUMERATION_LITERAL__DESCRIPTION, null, msgs);
+			if (newDescription != null)
+				msgs = ((InternalEObject)newDescription).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IENUMERATION_LITERAL__DESCRIPTION, null, msgs);
+			msgs = basicSetDescription(newDescription, msgs);
+			if (msgs != null) msgs.dispatch();
+		}
+		else if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IENUMERATION_LITERAL__DESCRIPTION, newDescription, newDescription));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
+		switch (featureID) {
+			case UMLRpyPackage.IENUMERATION_LITERAL__PROPERTIES:
+				return basicSetProperties(null, msgs);
+			case UMLRpyPackage.IENUMERATION_LITERAL__TAGS:
+				return basicSetTags(null, msgs);
+			case UMLRpyPackage.IENUMERATION_LITERAL__DESCRIPTION:
+				return basicSetDescription(null, msgs);
+		}
+		return super.eInverseRemove(otherEnd, featureID, msgs);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object eGet(int featureID, boolean resolve, boolean coreType) {
+		switch (featureID) {
+			case UMLRpyPackage.IENUMERATION_LITERAL__ID:
+				return getId();
+			case UMLRpyPackage.IENUMERATION_LITERAL__NAME:
+				return getName();
+			case UMLRpyPackage.IENUMERATION_LITERAL__MODIFIED_TIME_WEAK:
+				return getModifiedTimeWeak();
+			case UMLRpyPackage.IENUMERATION_LITERAL__VALUE:
+				return getValue();
+			case UMLRpyPackage.IENUMERATION_LITERAL__PROPERTIES:
+				if (resolve) return getProperties();
+				return basicGetProperties();
+			case UMLRpyPackage.IENUMERATION_LITERAL__TAGS:
+				if (resolve) return getTags();
+				return basicGetTags();
+			case UMLRpyPackage.IENUMERATION_LITERAL__CODE_UPDATE_CG_TIME:
+				return getCodeUpdateCGTime();
+			case UMLRpyPackage.IENUMERATION_LITERAL__DESCRIPTION:
+				if (resolve) return getDescription();
+				return basicGetDescription();
+		}
+		return super.eGet(featureID, resolve, coreType);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@SuppressWarnings("unchecked")
+	@Override
+	public void eSet(int featureID, Object newValue) {
+		switch (featureID) {
+			case UMLRpyPackage.IENUMERATION_LITERAL__ID:
+				setId((String)newValue);
+				return;
+			case UMLRpyPackage.IENUMERATION_LITERAL__NAME:
+				setName((String)newValue);
+				return;
+			case UMLRpyPackage.IENUMERATION_LITERAL__MODIFIED_TIME_WEAK:
+				getModifiedTimeWeak().clear();
+				getModifiedTimeWeak().addAll((Collection<? extends String>)newValue);
+				return;
+			case UMLRpyPackage.IENUMERATION_LITERAL__VALUE:
+				setValue((String)newValue);
+				return;
+			case UMLRpyPackage.IENUMERATION_LITERAL__PROPERTIES:
+				setProperties((IPropertyContainer)newValue);
+				return;
+			case UMLRpyPackage.IENUMERATION_LITERAL__TAGS:
+				setTags((ITag)newValue);
+				return;
+			case UMLRpyPackage.IENUMERATION_LITERAL__CODE_UPDATE_CG_TIME:
+				getCodeUpdateCGTime().clear();
+				getCodeUpdateCGTime().addAll((Collection<? extends String>)newValue);
+				return;
+			case UMLRpyPackage.IENUMERATION_LITERAL__DESCRIPTION:
+				setDescription((IDescription)newValue);
+				return;
+		}
+		super.eSet(featureID, newValue);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void eUnset(int featureID) {
+		switch (featureID) {
+			case UMLRpyPackage.IENUMERATION_LITERAL__ID:
+				setId(ID_EDEFAULT);
+				return;
+			case UMLRpyPackage.IENUMERATION_LITERAL__NAME:
+				setName(NAME_EDEFAULT);
+				return;
+			case UMLRpyPackage.IENUMERATION_LITERAL__MODIFIED_TIME_WEAK:
+				getModifiedTimeWeak().clear();
+				return;
+			case UMLRpyPackage.IENUMERATION_LITERAL__VALUE:
+				setValue(VALUE_EDEFAULT);
+				return;
+			case UMLRpyPackage.IENUMERATION_LITERAL__PROPERTIES:
+				setProperties((IPropertyContainer)null);
+				return;
+			case UMLRpyPackage.IENUMERATION_LITERAL__TAGS:
+				setTags((ITag)null);
+				return;
+			case UMLRpyPackage.IENUMERATION_LITERAL__CODE_UPDATE_CG_TIME:
+				getCodeUpdateCGTime().clear();
+				return;
+			case UMLRpyPackage.IENUMERATION_LITERAL__DESCRIPTION:
+				setDescription((IDescription)null);
+				return;
+		}
+		super.eUnset(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public boolean eIsSet(int featureID) {
+		switch (featureID) {
+			case UMLRpyPackage.IENUMERATION_LITERAL__ID:
+				return ID_EDEFAULT == null ? id != null : !ID_EDEFAULT.equals(id);
+			case UMLRpyPackage.IENUMERATION_LITERAL__NAME:
+				return NAME_EDEFAULT == null ? name != null : !NAME_EDEFAULT.equals(name);
+			case UMLRpyPackage.IENUMERATION_LITERAL__MODIFIED_TIME_WEAK:
+				return modifiedTimeWeak != null && !modifiedTimeWeak.isEmpty();
+			case UMLRpyPackage.IENUMERATION_LITERAL__VALUE:
+				return VALUE_EDEFAULT == null ? value != null : !VALUE_EDEFAULT.equals(value);
+			case UMLRpyPackage.IENUMERATION_LITERAL__PROPERTIES:
+				return properties != null;
+			case UMLRpyPackage.IENUMERATION_LITERAL__TAGS:
+				return tags != null;
+			case UMLRpyPackage.IENUMERATION_LITERAL__CODE_UPDATE_CG_TIME:
+				return codeUpdateCGTime != null && !codeUpdateCGTime.isEmpty();
+			case UMLRpyPackage.IENUMERATION_LITERAL__DESCRIPTION:
+				return description != null;
+		}
+		return super.eIsSet(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String toString() {
+		if (eIsProxy()) return super.toString();
+
+		StringBuffer result = new StringBuffer(super.toString());
+		result.append(" (id: "); //$NON-NLS-1$
+		result.append(id);
+		result.append(", name: "); //$NON-NLS-1$
+		result.append(name);
+		result.append(", modifiedTimeWeak: "); //$NON-NLS-1$
+		result.append(modifiedTimeWeak);
+		result.append(", value: "); //$NON-NLS-1$
+		result.append(value);
+		result.append(", codeUpdateCGTime: "); //$NON-NLS-1$
+		result.append(codeUpdateCGTime);
+		result.append(')');
+		return result.toString();
+	}
+
+} //IEnumerationLiteralImpl
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/IEventHandleImpl.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/IEventHandleImpl.java
new file mode 100755
index 0000000..c43d6c5
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/IEventHandleImpl.java
@@ -0,0 +1,443 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl;
+
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.ecore.EClass;
+
+import org.eclipse.emf.ecore.impl.ENotificationImpl;
+import org.eclipse.emf.ecore.impl.MinimalEObjectImpl;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IEventHandle;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>IEvent Handle</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * </p>
+ * <ul>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IEventHandleImpl#getM2Class <em>M2 Class</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IEventHandleImpl#getFilename <em>Filename</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IEventHandleImpl#getSubsystem <em>Subsystem</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IEventHandleImpl#getClass_ <em>Class</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IEventHandleImpl#getName <em>Name</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IEventHandleImpl#getId <em>Id</em>}</li>
+ * </ul>
+ *
+ * @generated
+ */
+public class IEventHandleImpl extends MinimalEObjectImpl.Container implements IEventHandle {
+	/**
+	 * The default value of the '{@link #getM2Class() <em>M2 Class</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM2Class()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String M2_CLASS_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getM2Class() <em>M2 Class</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM2Class()
+	 * @generated
+	 * @ordered
+	 */
+	protected String m2Class = M2_CLASS_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getFilename() <em>Filename</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getFilename()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String FILENAME_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getFilename() <em>Filename</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getFilename()
+	 * @generated
+	 * @ordered
+	 */
+	protected String filename = FILENAME_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getSubsystem() <em>Subsystem</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getSubsystem()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String SUBSYSTEM_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getSubsystem() <em>Subsystem</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getSubsystem()
+	 * @generated
+	 * @ordered
+	 */
+	protected String subsystem = SUBSYSTEM_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getClass_() <em>Class</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getClass_()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String CLASS_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getClass_() <em>Class</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getClass_()
+	 * @generated
+	 * @ordered
+	 */
+	protected String class_ = CLASS_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getName() <em>Name</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getName()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String NAME_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getName() <em>Name</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getName()
+	 * @generated
+	 * @ordered
+	 */
+	protected String name = NAME_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getId() <em>Id</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getId()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String ID_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getId() <em>Id</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getId()
+	 * @generated
+	 * @ordered
+	 */
+	protected String id = ID_EDEFAULT;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected IEventHandleImpl() {
+		super();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EClass eStaticClass() {
+		return UMLRpyPackage.eINSTANCE.getIEventHandle();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getM2Class() {
+		return m2Class;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM2Class(String newM2Class) {
+		String oldM2Class = m2Class;
+		m2Class = newM2Class;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IEVENT_HANDLE__M2_CLASS, oldM2Class, m2Class));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getFilename() {
+		return filename;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setFilename(String newFilename) {
+		String oldFilename = filename;
+		filename = newFilename;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IEVENT_HANDLE__FILENAME, oldFilename, filename));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getSubsystem() {
+		return subsystem;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setSubsystem(String newSubsystem) {
+		String oldSubsystem = subsystem;
+		subsystem = newSubsystem;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IEVENT_HANDLE__SUBSYSTEM, oldSubsystem, subsystem));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getClass_() {
+		return class_;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setClass(String newClass) {
+		String oldClass = class_;
+		class_ = newClass;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IEVENT_HANDLE__CLASS, oldClass, class_));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getName() {
+		return name;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setName(String newName) {
+		String oldName = name;
+		name = newName;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IEVENT_HANDLE__NAME, oldName, name));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getId() {
+		return id;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setId(String newId) {
+		String oldId = id;
+		id = newId;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IEVENT_HANDLE__ID, oldId, id));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object eGet(int featureID, boolean resolve, boolean coreType) {
+		switch (featureID) {
+			case UMLRpyPackage.IEVENT_HANDLE__M2_CLASS:
+				return getM2Class();
+			case UMLRpyPackage.IEVENT_HANDLE__FILENAME:
+				return getFilename();
+			case UMLRpyPackage.IEVENT_HANDLE__SUBSYSTEM:
+				return getSubsystem();
+			case UMLRpyPackage.IEVENT_HANDLE__CLASS:
+				return getClass_();
+			case UMLRpyPackage.IEVENT_HANDLE__NAME:
+				return getName();
+			case UMLRpyPackage.IEVENT_HANDLE__ID:
+				return getId();
+		}
+		return super.eGet(featureID, resolve, coreType);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void eSet(int featureID, Object newValue) {
+		switch (featureID) {
+			case UMLRpyPackage.IEVENT_HANDLE__M2_CLASS:
+				setM2Class((String)newValue);
+				return;
+			case UMLRpyPackage.IEVENT_HANDLE__FILENAME:
+				setFilename((String)newValue);
+				return;
+			case UMLRpyPackage.IEVENT_HANDLE__SUBSYSTEM:
+				setSubsystem((String)newValue);
+				return;
+			case UMLRpyPackage.IEVENT_HANDLE__CLASS:
+				setClass((String)newValue);
+				return;
+			case UMLRpyPackage.IEVENT_HANDLE__NAME:
+				setName((String)newValue);
+				return;
+			case UMLRpyPackage.IEVENT_HANDLE__ID:
+				setId((String)newValue);
+				return;
+		}
+		super.eSet(featureID, newValue);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void eUnset(int featureID) {
+		switch (featureID) {
+			case UMLRpyPackage.IEVENT_HANDLE__M2_CLASS:
+				setM2Class(M2_CLASS_EDEFAULT);
+				return;
+			case UMLRpyPackage.IEVENT_HANDLE__FILENAME:
+				setFilename(FILENAME_EDEFAULT);
+				return;
+			case UMLRpyPackage.IEVENT_HANDLE__SUBSYSTEM:
+				setSubsystem(SUBSYSTEM_EDEFAULT);
+				return;
+			case UMLRpyPackage.IEVENT_HANDLE__CLASS:
+				setClass(CLASS_EDEFAULT);
+				return;
+			case UMLRpyPackage.IEVENT_HANDLE__NAME:
+				setName(NAME_EDEFAULT);
+				return;
+			case UMLRpyPackage.IEVENT_HANDLE__ID:
+				setId(ID_EDEFAULT);
+				return;
+		}
+		super.eUnset(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public boolean eIsSet(int featureID) {
+		switch (featureID) {
+			case UMLRpyPackage.IEVENT_HANDLE__M2_CLASS:
+				return M2_CLASS_EDEFAULT == null ? m2Class != null : !M2_CLASS_EDEFAULT.equals(m2Class);
+			case UMLRpyPackage.IEVENT_HANDLE__FILENAME:
+				return FILENAME_EDEFAULT == null ? filename != null : !FILENAME_EDEFAULT.equals(filename);
+			case UMLRpyPackage.IEVENT_HANDLE__SUBSYSTEM:
+				return SUBSYSTEM_EDEFAULT == null ? subsystem != null : !SUBSYSTEM_EDEFAULT.equals(subsystem);
+			case UMLRpyPackage.IEVENT_HANDLE__CLASS:
+				return CLASS_EDEFAULT == null ? class_ != null : !CLASS_EDEFAULT.equals(class_);
+			case UMLRpyPackage.IEVENT_HANDLE__NAME:
+				return NAME_EDEFAULT == null ? name != null : !NAME_EDEFAULT.equals(name);
+			case UMLRpyPackage.IEVENT_HANDLE__ID:
+				return ID_EDEFAULT == null ? id != null : !ID_EDEFAULT.equals(id);
+		}
+		return super.eIsSet(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String toString() {
+		if (eIsProxy()) return super.toString();
+
+		StringBuffer result = new StringBuffer(super.toString());
+		result.append(" (m2Class: "); //$NON-NLS-1$
+		result.append(m2Class);
+		result.append(", filename: "); //$NON-NLS-1$
+		result.append(filename);
+		result.append(", subsystem: "); //$NON-NLS-1$
+		result.append(subsystem);
+		result.append(", class: "); //$NON-NLS-1$
+		result.append(class_);
+		result.append(", name: "); //$NON-NLS-1$
+		result.append(name);
+		result.append(", id: "); //$NON-NLS-1$
+		result.append(id);
+		result.append(')');
+		return result.toString();
+	}
+
+} //IEventHandleImpl
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/IEventImpl.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/IEventImpl.java
new file mode 100755
index 0000000..2195365
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/IEventImpl.java
@@ -0,0 +1,1225 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl;
+
+import java.util.Collection;
+
+import org.eclipse.emf.common.notify.Notification;
+import org.eclipse.emf.common.notify.NotificationChain;
+
+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.EDataTypeEList;
+import org.eclipse.emf.ecore.util.EObjectContainmentEList;
+import org.eclipse.emf.ecore.util.EObjectResolvingEList;
+import org.eclipse.emf.ecore.util.InternalEList;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ConveyedType;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IClassifier;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IConstraint;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IDependency;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IDescription;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IEvent;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IPropertyContainer;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITag;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IVariable;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.M_pFormalMessageType;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.M_pModelObjectType;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.M_subjectType;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.TargetType;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UnknownType;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>IEvent</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * </p>
+ * <ul>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IEventImpl#getUmlDependencyID <em>Uml Dependency ID</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IEventImpl#getObjectCreation <em>Object Creation</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IEventImpl#getLastID <em>Last ID</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IEventImpl#getId <em>Id</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IEventImpl#getMyState <em>My State</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IEventImpl#getName <em>Name</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IEventImpl#getVirtual <em>Virtual</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IEventImpl#getModifiedTimeWeak <em>Modified Time Weak</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IEventImpl#getArgs <em>Args</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IEventImpl#getStereotypes <em>Stereotypes</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IEventImpl#getDescription <em>Description</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IEventImpl#getProperties <em>Properties</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IEventImpl#getDependencies <em>Dependencies</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IEventImpl#getTags <em>Tags</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IEventImpl#getSuperEvent <em>Super Event</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IEventImpl#getRequiremenTracabilityHandle <em>Requiremen Tracability Handle</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IEventImpl#getAnnotations <em>Annotations</em>}</li>
+ * </ul>
+ *
+ * @generated
+ */
+public class IEventImpl extends IInterfaceItemImpl implements IEvent {
+	/**
+	 * The default value of the '{@link #getUmlDependencyID() <em>Uml Dependency ID</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getUmlDependencyID()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String UML_DEPENDENCY_ID_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getUmlDependencyID() <em>Uml Dependency ID</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getUmlDependencyID()
+	 * @generated
+	 * @ordered
+	 */
+	protected String umlDependencyID = UML_DEPENDENCY_ID_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getObjectCreation() <em>Object Creation</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getObjectCreation()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String OBJECT_CREATION_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getObjectCreation() <em>Object Creation</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getObjectCreation()
+	 * @generated
+	 * @ordered
+	 */
+	protected String objectCreation = OBJECT_CREATION_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getLastID() <em>Last ID</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getLastID()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String LAST_ID_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getLastID() <em>Last ID</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getLastID()
+	 * @generated
+	 * @ordered
+	 */
+	protected String lastID = LAST_ID_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getId() <em>Id</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getId()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String ID_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getId() <em>Id</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getId()
+	 * @generated
+	 * @ordered
+	 */
+	protected String id = ID_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getMyState() <em>My State</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getMyState()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String MY_STATE_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getMyState() <em>My State</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getMyState()
+	 * @generated
+	 * @ordered
+	 */
+	protected String myState = MY_STATE_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getName() <em>Name</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getName()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String NAME_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getName() <em>Name</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getName()
+	 * @generated
+	 * @ordered
+	 */
+	protected String name = NAME_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getVirtual() <em>Virtual</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getVirtual()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String VIRTUAL_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getVirtual() <em>Virtual</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getVirtual()
+	 * @generated
+	 * @ordered
+	 */
+	protected String virtual = VIRTUAL_EDEFAULT;
+
+	/**
+	 * The cached value of the '{@link #getModifiedTimeWeak() <em>Modified Time Weak</em>}' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getModifiedTimeWeak()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<String> modifiedTimeWeak;
+
+	/**
+	 * The cached value of the '{@link #getArgs() <em>Args</em>}' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getArgs()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<IVariable> args;
+
+	/**
+	 * The cached value of the '{@link #getStereotypes() <em>Stereotypes</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getStereotypes()
+	 * @generated
+	 * @ordered
+	 */
+	protected IClassifier stereotypes;
+
+	/**
+	 * The cached value of the '{@link #getDescription() <em>Description</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getDescription()
+	 * @generated
+	 * @ordered
+	 */
+	protected IDescription description;
+
+	/**
+	 * The cached value of the '{@link #getProperties() <em>Properties</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getProperties()
+	 * @generated
+	 * @ordered
+	 */
+	protected IPropertyContainer properties;
+
+	/**
+	 * The cached value of the '{@link #getDependencies() <em>Dependencies</em>}' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getDependencies()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<IDependency> dependencies;
+
+	/**
+	 * The cached value of the '{@link #getTags() <em>Tags</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getTags()
+	 * @generated
+	 * @ordered
+	 */
+	protected ITag tags;
+
+	/**
+	 * The cached value of the '{@link #getSuperEvent() <em>Super Event</em>}' reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getSuperEvent()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<UnknownType> superEvent;
+
+	/**
+	 * The default value of the '{@link #getRequiremenTracabilityHandle() <em>Requiremen Tracability Handle</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getRequiremenTracabilityHandle()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String REQUIREMEN_TRACABILITY_HANDLE_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getRequiremenTracabilityHandle() <em>Requiremen Tracability Handle</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getRequiremenTracabilityHandle()
+	 * @generated
+	 * @ordered
+	 */
+	protected String requiremenTracabilityHandle = REQUIREMEN_TRACABILITY_HANDLE_EDEFAULT;
+
+	/**
+	 * The cached value of the '{@link #getAnnotations() <em>Annotations</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getAnnotations()
+	 * @generated
+	 * @ordered
+	 */
+	protected IConstraint annotations;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected IEventImpl() {
+		super();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EClass eStaticClass() {
+		return UMLRpyPackage.eINSTANCE.getIEvent();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getUmlDependencyID() {
+		return umlDependencyID;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setUmlDependencyID(String newUmlDependencyID) {
+		String oldUmlDependencyID = umlDependencyID;
+		umlDependencyID = newUmlDependencyID;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IEVENT__UML_DEPENDENCY_ID, oldUmlDependencyID, umlDependencyID));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getObjectCreation() {
+		return objectCreation;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setObjectCreation(String newObjectCreation) {
+		String oldObjectCreation = objectCreation;
+		objectCreation = newObjectCreation;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IEVENT__OBJECT_CREATION, oldObjectCreation, objectCreation));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getLastID() {
+		return lastID;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setLastID(String newLastID) {
+		String oldLastID = lastID;
+		lastID = newLastID;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IEVENT__LAST_ID, oldLastID, lastID));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getId() {
+		return id;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setId(String newId) {
+		String oldId = id;
+		id = newId;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IEVENT__ID, oldId, id));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getMyState() {
+		return myState;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setMyState(String newMyState) {
+		String oldMyState = myState;
+		myState = newMyState;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IEVENT__MY_STATE, oldMyState, myState));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getName() {
+		return name;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setName(String newName) {
+		String oldName = name;
+		name = newName;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IEVENT__NAME, oldName, name));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getVirtual() {
+		return virtual;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setVirtual(String newVirtual) {
+		String oldVirtual = virtual;
+		virtual = newVirtual;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IEVENT__VIRTUAL, oldVirtual, virtual));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<String> getModifiedTimeWeak() {
+		if (modifiedTimeWeak == null) {
+			modifiedTimeWeak = new EDataTypeEList<String>(String.class, this, UMLRpyPackage.IEVENT__MODIFIED_TIME_WEAK);
+		}
+		return modifiedTimeWeak;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<IVariable> getArgs() {
+		if (args == null) {
+			args = new EObjectContainmentEList.Resolving<IVariable>(IVariable.class, this, UMLRpyPackage.IEVENT__ARGS);
+		}
+		return args;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IClassifier getStereotypes() {
+		if (stereotypes != null && stereotypes.eIsProxy()) {
+			InternalEObject oldStereotypes = (InternalEObject)stereotypes;
+			stereotypes = (IClassifier)eResolveProxy(oldStereotypes);
+			if (stereotypes != oldStereotypes) {
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.IEVENT__STEREOTYPES, oldStereotypes, stereotypes));
+			}
+		}
+		return stereotypes;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IClassifier basicGetStereotypes() {
+		return stereotypes;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setStereotypes(IClassifier newStereotypes) {
+		IClassifier oldStereotypes = stereotypes;
+		stereotypes = newStereotypes;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IEVENT__STEREOTYPES, oldStereotypes, stereotypes));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IDescription getDescription() {
+		if (description != null && description.eIsProxy()) {
+			InternalEObject oldDescription = (InternalEObject)description;
+			description = (IDescription)eResolveProxy(oldDescription);
+			if (description != oldDescription) {
+				InternalEObject newDescription = (InternalEObject)description;
+				NotificationChain msgs = oldDescription.eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IEVENT__DESCRIPTION, null, null);
+				if (newDescription.eInternalContainer() == null) {
+					msgs = newDescription.eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IEVENT__DESCRIPTION, null, msgs);
+				}
+				if (msgs != null) msgs.dispatch();
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.IEVENT__DESCRIPTION, oldDescription, description));
+			}
+		}
+		return description;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IDescription basicGetDescription() {
+		return description;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public NotificationChain basicSetDescription(IDescription newDescription, NotificationChain msgs) {
+		IDescription oldDescription = description;
+		description = newDescription;
+		if (eNotificationRequired()) {
+			ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IEVENT__DESCRIPTION, oldDescription, newDescription);
+			if (msgs == null) msgs = notification; else msgs.add(notification);
+		}
+		return msgs;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setDescription(IDescription newDescription) {
+		if (newDescription != description) {
+			NotificationChain msgs = null;
+			if (description != null)
+				msgs = ((InternalEObject)description).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IEVENT__DESCRIPTION, null, msgs);
+			if (newDescription != null)
+				msgs = ((InternalEObject)newDescription).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IEVENT__DESCRIPTION, null, msgs);
+			msgs = basicSetDescription(newDescription, msgs);
+			if (msgs != null) msgs.dispatch();
+		}
+		else if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IEVENT__DESCRIPTION, newDescription, newDescription));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IPropertyContainer getProperties() {
+		if (properties != null && properties.eIsProxy()) {
+			InternalEObject oldProperties = (InternalEObject)properties;
+			properties = (IPropertyContainer)eResolveProxy(oldProperties);
+			if (properties != oldProperties) {
+				InternalEObject newProperties = (InternalEObject)properties;
+				NotificationChain msgs = oldProperties.eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IEVENT__PROPERTIES, null, null);
+				if (newProperties.eInternalContainer() == null) {
+					msgs = newProperties.eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IEVENT__PROPERTIES, null, msgs);
+				}
+				if (msgs != null) msgs.dispatch();
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.IEVENT__PROPERTIES, oldProperties, properties));
+			}
+		}
+		return properties;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IPropertyContainer basicGetProperties() {
+		return properties;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public NotificationChain basicSetProperties(IPropertyContainer newProperties, NotificationChain msgs) {
+		IPropertyContainer oldProperties = properties;
+		properties = newProperties;
+		if (eNotificationRequired()) {
+			ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IEVENT__PROPERTIES, oldProperties, newProperties);
+			if (msgs == null) msgs = notification; else msgs.add(notification);
+		}
+		return msgs;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setProperties(IPropertyContainer newProperties) {
+		if (newProperties != properties) {
+			NotificationChain msgs = null;
+			if (properties != null)
+				msgs = ((InternalEObject)properties).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IEVENT__PROPERTIES, null, msgs);
+			if (newProperties != null)
+				msgs = ((InternalEObject)newProperties).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IEVENT__PROPERTIES, null, msgs);
+			msgs = basicSetProperties(newProperties, msgs);
+			if (msgs != null) msgs.dispatch();
+		}
+		else if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IEVENT__PROPERTIES, newProperties, newProperties));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<IDependency> getDependencies() {
+		if (dependencies == null) {
+			dependencies = new EObjectContainmentEList.Resolving<IDependency>(IDependency.class, this, UMLRpyPackage.IEVENT__DEPENDENCIES);
+		}
+		return dependencies;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public ITag getTags() {
+		if (tags != null && tags.eIsProxy()) {
+			InternalEObject oldTags = (InternalEObject)tags;
+			tags = (ITag)eResolveProxy(oldTags);
+			if (tags != oldTags) {
+				InternalEObject newTags = (InternalEObject)tags;
+				NotificationChain msgs = oldTags.eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IEVENT__TAGS, null, null);
+				if (newTags.eInternalContainer() == null) {
+					msgs = newTags.eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IEVENT__TAGS, null, msgs);
+				}
+				if (msgs != null) msgs.dispatch();
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.IEVENT__TAGS, oldTags, tags));
+			}
+		}
+		return tags;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public ITag basicGetTags() {
+		return tags;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public NotificationChain basicSetTags(ITag newTags, NotificationChain msgs) {
+		ITag oldTags = tags;
+		tags = newTags;
+		if (eNotificationRequired()) {
+			ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IEVENT__TAGS, oldTags, newTags);
+			if (msgs == null) msgs = notification; else msgs.add(notification);
+		}
+		return msgs;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setTags(ITag newTags) {
+		if (newTags != tags) {
+			NotificationChain msgs = null;
+			if (tags != null)
+				msgs = ((InternalEObject)tags).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IEVENT__TAGS, null, msgs);
+			if (newTags != null)
+				msgs = ((InternalEObject)newTags).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IEVENT__TAGS, null, msgs);
+			msgs = basicSetTags(newTags, msgs);
+			if (msgs != null) msgs.dispatch();
+		}
+		else if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IEVENT__TAGS, newTags, newTags));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<UnknownType> getSuperEvent() {
+		if (superEvent == null) {
+			superEvent = new EObjectResolvingEList<UnknownType>(UnknownType.class, this, UMLRpyPackage.IEVENT__SUPER_EVENT);
+		}
+		return superEvent;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getRequiremenTracabilityHandle() {
+		return requiremenTracabilityHandle;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setRequiremenTracabilityHandle(String newRequiremenTracabilityHandle) {
+		String oldRequiremenTracabilityHandle = requiremenTracabilityHandle;
+		requiremenTracabilityHandle = newRequiremenTracabilityHandle;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IEVENT__REQUIREMEN_TRACABILITY_HANDLE, oldRequiremenTracabilityHandle, requiremenTracabilityHandle));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IConstraint getAnnotations() {
+		if (annotations != null && annotations.eIsProxy()) {
+			InternalEObject oldAnnotations = (InternalEObject)annotations;
+			annotations = (IConstraint)eResolveProxy(oldAnnotations);
+			if (annotations != oldAnnotations) {
+				InternalEObject newAnnotations = (InternalEObject)annotations;
+				NotificationChain msgs = oldAnnotations.eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IEVENT__ANNOTATIONS, null, null);
+				if (newAnnotations.eInternalContainer() == null) {
+					msgs = newAnnotations.eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IEVENT__ANNOTATIONS, null, msgs);
+				}
+				if (msgs != null) msgs.dispatch();
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.IEVENT__ANNOTATIONS, oldAnnotations, annotations));
+			}
+		}
+		return annotations;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IConstraint basicGetAnnotations() {
+		return annotations;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public NotificationChain basicSetAnnotations(IConstraint newAnnotations, NotificationChain msgs) {
+		IConstraint oldAnnotations = annotations;
+		annotations = newAnnotations;
+		if (eNotificationRequired()) {
+			ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IEVENT__ANNOTATIONS, oldAnnotations, newAnnotations);
+			if (msgs == null) msgs = notification; else msgs.add(notification);
+		}
+		return msgs;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setAnnotations(IConstraint newAnnotations) {
+		if (newAnnotations != annotations) {
+			NotificationChain msgs = null;
+			if (annotations != null)
+				msgs = ((InternalEObject)annotations).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IEVENT__ANNOTATIONS, null, msgs);
+			if (newAnnotations != null)
+				msgs = ((InternalEObject)newAnnotations).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IEVENT__ANNOTATIONS, null, msgs);
+			msgs = basicSetAnnotations(newAnnotations, msgs);
+			if (msgs != null) msgs.dispatch();
+		}
+		else if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IEVENT__ANNOTATIONS, newAnnotations, newAnnotations));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
+		switch (featureID) {
+			case UMLRpyPackage.IEVENT__ARGS:
+				return ((InternalEList<?>)getArgs()).basicRemove(otherEnd, msgs);
+			case UMLRpyPackage.IEVENT__DESCRIPTION:
+				return basicSetDescription(null, msgs);
+			case UMLRpyPackage.IEVENT__PROPERTIES:
+				return basicSetProperties(null, msgs);
+			case UMLRpyPackage.IEVENT__DEPENDENCIES:
+				return ((InternalEList<?>)getDependencies()).basicRemove(otherEnd, msgs);
+			case UMLRpyPackage.IEVENT__TAGS:
+				return basicSetTags(null, msgs);
+			case UMLRpyPackage.IEVENT__ANNOTATIONS:
+				return basicSetAnnotations(null, msgs);
+		}
+		return super.eInverseRemove(otherEnd, featureID, msgs);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object eGet(int featureID, boolean resolve, boolean coreType) {
+		switch (featureID) {
+			case UMLRpyPackage.IEVENT__UML_DEPENDENCY_ID:
+				return getUmlDependencyID();
+			case UMLRpyPackage.IEVENT__OBJECT_CREATION:
+				return getObjectCreation();
+			case UMLRpyPackage.IEVENT__LAST_ID:
+				return getLastID();
+			case UMLRpyPackage.IEVENT__ID:
+				return getId();
+			case UMLRpyPackage.IEVENT__MY_STATE:
+				return getMyState();
+			case UMLRpyPackage.IEVENT__NAME:
+				return getName();
+			case UMLRpyPackage.IEVENT__VIRTUAL:
+				return getVirtual();
+			case UMLRpyPackage.IEVENT__MODIFIED_TIME_WEAK:
+				return getModifiedTimeWeak();
+			case UMLRpyPackage.IEVENT__ARGS:
+				return getArgs();
+			case UMLRpyPackage.IEVENT__STEREOTYPES:
+				if (resolve) return getStereotypes();
+				return basicGetStereotypes();
+			case UMLRpyPackage.IEVENT__DESCRIPTION:
+				if (resolve) return getDescription();
+				return basicGetDescription();
+			case UMLRpyPackage.IEVENT__PROPERTIES:
+				if (resolve) return getProperties();
+				return basicGetProperties();
+			case UMLRpyPackage.IEVENT__DEPENDENCIES:
+				return getDependencies();
+			case UMLRpyPackage.IEVENT__TAGS:
+				if (resolve) return getTags();
+				return basicGetTags();
+			case UMLRpyPackage.IEVENT__SUPER_EVENT:
+				return getSuperEvent();
+			case UMLRpyPackage.IEVENT__REQUIREMEN_TRACABILITY_HANDLE:
+				return getRequiremenTracabilityHandle();
+			case UMLRpyPackage.IEVENT__ANNOTATIONS:
+				if (resolve) return getAnnotations();
+				return basicGetAnnotations();
+		}
+		return super.eGet(featureID, resolve, coreType);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@SuppressWarnings("unchecked")
+	@Override
+	public void eSet(int featureID, Object newValue) {
+		switch (featureID) {
+			case UMLRpyPackage.IEVENT__UML_DEPENDENCY_ID:
+				setUmlDependencyID((String)newValue);
+				return;
+			case UMLRpyPackage.IEVENT__OBJECT_CREATION:
+				setObjectCreation((String)newValue);
+				return;
+			case UMLRpyPackage.IEVENT__LAST_ID:
+				setLastID((String)newValue);
+				return;
+			case UMLRpyPackage.IEVENT__ID:
+				setId((String)newValue);
+				return;
+			case UMLRpyPackage.IEVENT__MY_STATE:
+				setMyState((String)newValue);
+				return;
+			case UMLRpyPackage.IEVENT__NAME:
+				setName((String)newValue);
+				return;
+			case UMLRpyPackage.IEVENT__VIRTUAL:
+				setVirtual((String)newValue);
+				return;
+			case UMLRpyPackage.IEVENT__MODIFIED_TIME_WEAK:
+				getModifiedTimeWeak().clear();
+				getModifiedTimeWeak().addAll((Collection<? extends String>)newValue);
+				return;
+			case UMLRpyPackage.IEVENT__ARGS:
+				getArgs().clear();
+				getArgs().addAll((Collection<? extends IVariable>)newValue);
+				return;
+			case UMLRpyPackage.IEVENT__STEREOTYPES:
+				setStereotypes((IClassifier)newValue);
+				return;
+			case UMLRpyPackage.IEVENT__DESCRIPTION:
+				setDescription((IDescription)newValue);
+				return;
+			case UMLRpyPackage.IEVENT__PROPERTIES:
+				setProperties((IPropertyContainer)newValue);
+				return;
+			case UMLRpyPackage.IEVENT__DEPENDENCIES:
+				getDependencies().clear();
+				getDependencies().addAll((Collection<? extends IDependency>)newValue);
+				return;
+			case UMLRpyPackage.IEVENT__TAGS:
+				setTags((ITag)newValue);
+				return;
+			case UMLRpyPackage.IEVENT__SUPER_EVENT:
+				getSuperEvent().clear();
+				getSuperEvent().addAll((Collection<? extends UnknownType>)newValue);
+				return;
+			case UMLRpyPackage.IEVENT__REQUIREMEN_TRACABILITY_HANDLE:
+				setRequiremenTracabilityHandle((String)newValue);
+				return;
+			case UMLRpyPackage.IEVENT__ANNOTATIONS:
+				setAnnotations((IConstraint)newValue);
+				return;
+		}
+		super.eSet(featureID, newValue);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void eUnset(int featureID) {
+		switch (featureID) {
+			case UMLRpyPackage.IEVENT__UML_DEPENDENCY_ID:
+				setUmlDependencyID(UML_DEPENDENCY_ID_EDEFAULT);
+				return;
+			case UMLRpyPackage.IEVENT__OBJECT_CREATION:
+				setObjectCreation(OBJECT_CREATION_EDEFAULT);
+				return;
+			case UMLRpyPackage.IEVENT__LAST_ID:
+				setLastID(LAST_ID_EDEFAULT);
+				return;
+			case UMLRpyPackage.IEVENT__ID:
+				setId(ID_EDEFAULT);
+				return;
+			case UMLRpyPackage.IEVENT__MY_STATE:
+				setMyState(MY_STATE_EDEFAULT);
+				return;
+			case UMLRpyPackage.IEVENT__NAME:
+				setName(NAME_EDEFAULT);
+				return;
+			case UMLRpyPackage.IEVENT__VIRTUAL:
+				setVirtual(VIRTUAL_EDEFAULT);
+				return;
+			case UMLRpyPackage.IEVENT__MODIFIED_TIME_WEAK:
+				getModifiedTimeWeak().clear();
+				return;
+			case UMLRpyPackage.IEVENT__ARGS:
+				getArgs().clear();
+				return;
+			case UMLRpyPackage.IEVENT__STEREOTYPES:
+				setStereotypes((IClassifier)null);
+				return;
+			case UMLRpyPackage.IEVENT__DESCRIPTION:
+				setDescription((IDescription)null);
+				return;
+			case UMLRpyPackage.IEVENT__PROPERTIES:
+				setProperties((IPropertyContainer)null);
+				return;
+			case UMLRpyPackage.IEVENT__DEPENDENCIES:
+				getDependencies().clear();
+				return;
+			case UMLRpyPackage.IEVENT__TAGS:
+				setTags((ITag)null);
+				return;
+			case UMLRpyPackage.IEVENT__SUPER_EVENT:
+				getSuperEvent().clear();
+				return;
+			case UMLRpyPackage.IEVENT__REQUIREMEN_TRACABILITY_HANDLE:
+				setRequiremenTracabilityHandle(REQUIREMEN_TRACABILITY_HANDLE_EDEFAULT);
+				return;
+			case UMLRpyPackage.IEVENT__ANNOTATIONS:
+				setAnnotations((IConstraint)null);
+				return;
+		}
+		super.eUnset(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public boolean eIsSet(int featureID) {
+		switch (featureID) {
+			case UMLRpyPackage.IEVENT__UML_DEPENDENCY_ID:
+				return UML_DEPENDENCY_ID_EDEFAULT == null ? umlDependencyID != null : !UML_DEPENDENCY_ID_EDEFAULT.equals(umlDependencyID);
+			case UMLRpyPackage.IEVENT__OBJECT_CREATION:
+				return OBJECT_CREATION_EDEFAULT == null ? objectCreation != null : !OBJECT_CREATION_EDEFAULT.equals(objectCreation);
+			case UMLRpyPackage.IEVENT__LAST_ID:
+				return LAST_ID_EDEFAULT == null ? lastID != null : !LAST_ID_EDEFAULT.equals(lastID);
+			case UMLRpyPackage.IEVENT__ID:
+				return ID_EDEFAULT == null ? id != null : !ID_EDEFAULT.equals(id);
+			case UMLRpyPackage.IEVENT__MY_STATE:
+				return MY_STATE_EDEFAULT == null ? myState != null : !MY_STATE_EDEFAULT.equals(myState);
+			case UMLRpyPackage.IEVENT__NAME:
+				return NAME_EDEFAULT == null ? name != null : !NAME_EDEFAULT.equals(name);
+			case UMLRpyPackage.IEVENT__VIRTUAL:
+				return VIRTUAL_EDEFAULT == null ? virtual != null : !VIRTUAL_EDEFAULT.equals(virtual);
+			case UMLRpyPackage.IEVENT__MODIFIED_TIME_WEAK:
+				return modifiedTimeWeak != null && !modifiedTimeWeak.isEmpty();
+			case UMLRpyPackage.IEVENT__ARGS:
+				return args != null && !args.isEmpty();
+			case UMLRpyPackage.IEVENT__STEREOTYPES:
+				return stereotypes != null;
+			case UMLRpyPackage.IEVENT__DESCRIPTION:
+				return description != null;
+			case UMLRpyPackage.IEVENT__PROPERTIES:
+				return properties != null;
+			case UMLRpyPackage.IEVENT__DEPENDENCIES:
+				return dependencies != null && !dependencies.isEmpty();
+			case UMLRpyPackage.IEVENT__TAGS:
+				return tags != null;
+			case UMLRpyPackage.IEVENT__SUPER_EVENT:
+				return superEvent != null && !superEvent.isEmpty();
+			case UMLRpyPackage.IEVENT__REQUIREMEN_TRACABILITY_HANDLE:
+				return REQUIREMEN_TRACABILITY_HANDLE_EDEFAULT == null ? requiremenTracabilityHandle != null : !REQUIREMEN_TRACABILITY_HANDLE_EDEFAULT.equals(requiremenTracabilityHandle);
+			case UMLRpyPackage.IEVENT__ANNOTATIONS:
+				return annotations != null;
+		}
+		return super.eIsSet(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public int eBaseStructuralFeatureID(int derivedFeatureID, Class<?> baseClass) {
+		if (baseClass == M_subjectType.class) {
+			switch (derivedFeatureID) {
+				case UMLRpyPackage.IEVENT__UML_DEPENDENCY_ID: return UMLRpyPackage.MSUBJECT_TYPE__UML_DEPENDENCY_ID;
+				case UMLRpyPackage.IEVENT__OBJECT_CREATION: return UMLRpyPackage.MSUBJECT_TYPE__OBJECT_CREATION;
+				default: return -1;
+			}
+		}
+		if (baseClass == M_pFormalMessageType.class) {
+			switch (derivedFeatureID) {
+				default: return -1;
+			}
+		}
+		if (baseClass == ConveyedType.class) {
+			switch (derivedFeatureID) {
+				case UMLRpyPackage.IEVENT__LAST_ID: return UMLRpyPackage.CONVEYED_TYPE__LAST_ID;
+				default: return -1;
+			}
+		}
+		if (baseClass == TargetType.class) {
+			switch (derivedFeatureID) {
+				default: return -1;
+			}
+		}
+		if (baseClass == M_pModelObjectType.class) {
+			switch (derivedFeatureID) {
+				default: return -1;
+			}
+		}
+		return super.eBaseStructuralFeatureID(derivedFeatureID, baseClass);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public int eDerivedStructuralFeatureID(int baseFeatureID, Class<?> baseClass) {
+		if (baseClass == M_subjectType.class) {
+			switch (baseFeatureID) {
+				case UMLRpyPackage.MSUBJECT_TYPE__UML_DEPENDENCY_ID: return UMLRpyPackage.IEVENT__UML_DEPENDENCY_ID;
+				case UMLRpyPackage.MSUBJECT_TYPE__OBJECT_CREATION: return UMLRpyPackage.IEVENT__OBJECT_CREATION;
+				default: return -1;
+			}
+		}
+		if (baseClass == M_pFormalMessageType.class) {
+			switch (baseFeatureID) {
+				default: return -1;
+			}
+		}
+		if (baseClass == ConveyedType.class) {
+			switch (baseFeatureID) {
+				case UMLRpyPackage.CONVEYED_TYPE__LAST_ID: return UMLRpyPackage.IEVENT__LAST_ID;
+				default: return -1;
+			}
+		}
+		if (baseClass == TargetType.class) {
+			switch (baseFeatureID) {
+				default: return -1;
+			}
+		}
+		if (baseClass == M_pModelObjectType.class) {
+			switch (baseFeatureID) {
+				default: return -1;
+			}
+		}
+		return super.eDerivedStructuralFeatureID(baseFeatureID, baseClass);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String toString() {
+		if (eIsProxy()) return super.toString();
+
+		StringBuffer result = new StringBuffer(super.toString());
+		result.append(" (umlDependencyID: "); //$NON-NLS-1$
+		result.append(umlDependencyID);
+		result.append(", objectCreation: "); //$NON-NLS-1$
+		result.append(objectCreation);
+		result.append(", lastID: "); //$NON-NLS-1$
+		result.append(lastID);
+		result.append(", id: "); //$NON-NLS-1$
+		result.append(id);
+		result.append(", myState: "); //$NON-NLS-1$
+		result.append(myState);
+		result.append(", name: "); //$NON-NLS-1$
+		result.append(name);
+		result.append(", virtual: "); //$NON-NLS-1$
+		result.append(virtual);
+		result.append(", modifiedTimeWeak: "); //$NON-NLS-1$
+		result.append(modifiedTimeWeak);
+		result.append(", requiremenTracabilityHandle: "); //$NON-NLS-1$
+		result.append(requiremenTracabilityHandle);
+		result.append(')');
+		return result.toString();
+	}
+
+} //IEventImpl
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/IEventReceptionImpl.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/IEventReceptionImpl.java
new file mode 100755
index 0000000..b0a01f8
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/IEventReceptionImpl.java
@@ -0,0 +1,47 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl;
+
+import org.eclipse.emf.ecore.EClass;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IEventReception;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>IEvent Reception</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+public class IEventReceptionImpl extends IInterfaceItemImpl implements IEventReception {
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected IEventReceptionImpl() {
+		super();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EClass eStaticClass() {
+		return UMLRpyPackage.eINSTANCE.getIEventReception();
+	}
+
+} //IEventReceptionImpl
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/IExecutionOccurrenceImpl.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/IExecutionOccurrenceImpl.java
new file mode 100755
index 0000000..cacbef9
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/IExecutionOccurrenceImpl.java
@@ -0,0 +1,330 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl;
+
+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.interoperability.rpy.rpymetamodel.IExecutionOccurrence;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMessage;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UnknownType;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>IExecution Occurrence</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * </p>
+ * <ul>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IExecutionOccurrenceImpl#getId <em>Id</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IExecutionOccurrenceImpl#getM_startMessage <em>Mstart Message</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IExecutionOccurrenceImpl#getM_endMessage <em>Mend Message</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IExecutionOccurrenceImpl#getM_length <em>Mlength</em>}</li>
+ * </ul>
+ *
+ * @generated
+ */
+public class IExecutionOccurrenceImpl extends IModelElementImpl implements IExecutionOccurrence {
+	/**
+	 * The default value of the '{@link #getId() <em>Id</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getId()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String ID_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getId() <em>Id</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getId()
+	 * @generated
+	 * @ordered
+	 */
+	protected String id = ID_EDEFAULT;
+
+	/**
+	 * The cached value of the '{@link #getM_startMessage() <em>Mstart Message</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_startMessage()
+	 * @generated
+	 * @ordered
+	 */
+	protected IMessage m_startMessage;
+
+	/**
+	 * The cached value of the '{@link #getM_endMessage() <em>Mend Message</em>}' reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_endMessage()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<UnknownType> m_endMessage;
+
+	/**
+	 * The default value of the '{@link #getM_length() <em>Mlength</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_length()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String MLENGTH_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getM_length() <em>Mlength</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_length()
+	 * @generated
+	 * @ordered
+	 */
+	protected String m_length = MLENGTH_EDEFAULT;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected IExecutionOccurrenceImpl() {
+		super();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EClass eStaticClass() {
+		return UMLRpyPackage.eINSTANCE.getIExecutionOccurrence();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getId() {
+		return id;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setId(String newId) {
+		String oldId = id;
+		id = newId;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IEXECUTION_OCCURRENCE__ID, oldId, id));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IMessage getM_startMessage() {
+		if (m_startMessage != null && m_startMessage.eIsProxy()) {
+			InternalEObject oldM_startMessage = (InternalEObject)m_startMessage;
+			m_startMessage = (IMessage)eResolveProxy(oldM_startMessage);
+			if (m_startMessage != oldM_startMessage) {
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.IEXECUTION_OCCURRENCE__MSTART_MESSAGE, oldM_startMessage, m_startMessage));
+			}
+		}
+		return m_startMessage;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IMessage basicGetM_startMessage() {
+		return m_startMessage;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_startMessage(IMessage newM_startMessage) {
+		IMessage oldM_startMessage = m_startMessage;
+		m_startMessage = newM_startMessage;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IEXECUTION_OCCURRENCE__MSTART_MESSAGE, oldM_startMessage, m_startMessage));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<UnknownType> getM_endMessage() {
+		if (m_endMessage == null) {
+			m_endMessage = new EObjectResolvingEList<UnknownType>(UnknownType.class, this, UMLRpyPackage.IEXECUTION_OCCURRENCE__MEND_MESSAGE);
+		}
+		return m_endMessage;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getM_length() {
+		return m_length;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_length(String newM_length) {
+		String oldM_length = m_length;
+		m_length = newM_length;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IEXECUTION_OCCURRENCE__MLENGTH, oldM_length, m_length));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object eGet(int featureID, boolean resolve, boolean coreType) {
+		switch (featureID) {
+			case UMLRpyPackage.IEXECUTION_OCCURRENCE__ID:
+				return getId();
+			case UMLRpyPackage.IEXECUTION_OCCURRENCE__MSTART_MESSAGE:
+				if (resolve) return getM_startMessage();
+				return basicGetM_startMessage();
+			case UMLRpyPackage.IEXECUTION_OCCURRENCE__MEND_MESSAGE:
+				return getM_endMessage();
+			case UMLRpyPackage.IEXECUTION_OCCURRENCE__MLENGTH:
+				return getM_length();
+		}
+		return super.eGet(featureID, resolve, coreType);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@SuppressWarnings("unchecked")
+	@Override
+	public void eSet(int featureID, Object newValue) {
+		switch (featureID) {
+			case UMLRpyPackage.IEXECUTION_OCCURRENCE__ID:
+				setId((String)newValue);
+				return;
+			case UMLRpyPackage.IEXECUTION_OCCURRENCE__MSTART_MESSAGE:
+				setM_startMessage((IMessage)newValue);
+				return;
+			case UMLRpyPackage.IEXECUTION_OCCURRENCE__MEND_MESSAGE:
+				getM_endMessage().clear();
+				getM_endMessage().addAll((Collection<? extends UnknownType>)newValue);
+				return;
+			case UMLRpyPackage.IEXECUTION_OCCURRENCE__MLENGTH:
+				setM_length((String)newValue);
+				return;
+		}
+		super.eSet(featureID, newValue);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void eUnset(int featureID) {
+		switch (featureID) {
+			case UMLRpyPackage.IEXECUTION_OCCURRENCE__ID:
+				setId(ID_EDEFAULT);
+				return;
+			case UMLRpyPackage.IEXECUTION_OCCURRENCE__MSTART_MESSAGE:
+				setM_startMessage((IMessage)null);
+				return;
+			case UMLRpyPackage.IEXECUTION_OCCURRENCE__MEND_MESSAGE:
+				getM_endMessage().clear();
+				return;
+			case UMLRpyPackage.IEXECUTION_OCCURRENCE__MLENGTH:
+				setM_length(MLENGTH_EDEFAULT);
+				return;
+		}
+		super.eUnset(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public boolean eIsSet(int featureID) {
+		switch (featureID) {
+			case UMLRpyPackage.IEXECUTION_OCCURRENCE__ID:
+				return ID_EDEFAULT == null ? id != null : !ID_EDEFAULT.equals(id);
+			case UMLRpyPackage.IEXECUTION_OCCURRENCE__MSTART_MESSAGE:
+				return m_startMessage != null;
+			case UMLRpyPackage.IEXECUTION_OCCURRENCE__MEND_MESSAGE:
+				return m_endMessage != null && !m_endMessage.isEmpty();
+			case UMLRpyPackage.IEXECUTION_OCCURRENCE__MLENGTH:
+				return MLENGTH_EDEFAULT == null ? m_length != null : !MLENGTH_EDEFAULT.equals(m_length);
+		}
+		return super.eIsSet(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String toString() {
+		if (eIsProxy()) return super.toString();
+
+		StringBuffer result = new StringBuffer(super.toString());
+		result.append(" (id: "); //$NON-NLS-1$
+		result.append(id);
+		result.append(", m_length: "); //$NON-NLS-1$
+		result.append(m_length);
+		result.append(')');
+		return result.toString();
+	}
+
+} //IExecutionOccurrenceImpl
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/IExternalHyperlinkImpl.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/IExternalHyperlinkImpl.java
new file mode 100755
index 0000000..0f8631d
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/IExternalHyperlinkImpl.java
@@ -0,0 +1,172 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl;
+
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.ecore.EClass;
+
+import org.eclipse.emf.ecore.impl.ENotificationImpl;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IExternalHyperlink;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>IExternal Hyperlink</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * </p>
+ * <ul>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IExternalHyperlinkImpl#getTarget <em>Target</em>}</li>
+ * </ul>
+ *
+ * @generated
+ */
+public class IExternalHyperlinkImpl extends HyperLinksTypeImpl implements IExternalHyperlink {
+	/**
+	 * The default value of the '{@link #getTarget() <em>Target</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getTarget()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String TARGET_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getTarget() <em>Target</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getTarget()
+	 * @generated
+	 * @ordered
+	 */
+	protected String target = TARGET_EDEFAULT;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected IExternalHyperlinkImpl() {
+		super();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EClass eStaticClass() {
+		return UMLRpyPackage.eINSTANCE.getIExternalHyperlink();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getTarget() {
+		return target;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setTarget(String newTarget) {
+		String oldTarget = target;
+		target = newTarget;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IEXTERNAL_HYPERLINK__TARGET, oldTarget, target));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object eGet(int featureID, boolean resolve, boolean coreType) {
+		switch (featureID) {
+			case UMLRpyPackage.IEXTERNAL_HYPERLINK__TARGET:
+				return getTarget();
+		}
+		return super.eGet(featureID, resolve, coreType);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void eSet(int featureID, Object newValue) {
+		switch (featureID) {
+			case UMLRpyPackage.IEXTERNAL_HYPERLINK__TARGET:
+				setTarget((String)newValue);
+				return;
+		}
+		super.eSet(featureID, newValue);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void eUnset(int featureID) {
+		switch (featureID) {
+			case UMLRpyPackage.IEXTERNAL_HYPERLINK__TARGET:
+				setTarget(TARGET_EDEFAULT);
+				return;
+		}
+		super.eUnset(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public boolean eIsSet(int featureID) {
+		switch (featureID) {
+			case UMLRpyPackage.IEXTERNAL_HYPERLINK__TARGET:
+				return TARGET_EDEFAULT == null ? target != null : !TARGET_EDEFAULT.equals(target);
+		}
+		return super.eIsSet(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String toString() {
+		if (eIsProxy()) return super.toString();
+
+		StringBuffer result = new StringBuffer(super.toString());
+		result.append(" (target: "); //$NON-NLS-1$
+		result.append(target);
+		result.append(')');
+		return result.toString();
+	}
+
+} //IExternalHyperlinkImpl
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/IFileFragmentImpl.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/IFileFragmentImpl.java
new file mode 100755
index 0000000..a0e2159
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/IFileFragmentImpl.java
@@ -0,0 +1,996 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl;
+
+import java.util.Collection;
+
+import org.eclipse.emf.common.notify.Notification;
+import org.eclipse.emf.common.notify.NotificationChain;
+
+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.EDataTypeEList;
+import org.eclipse.emf.ecore.util.EObjectContainmentEList;
+import org.eclipse.emf.ecore.util.InternalEList;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IDescription;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IFileFragment;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITag;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.M_subjectType;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>IFile Fragment</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * </p>
+ * <ul>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IFileFragmentImpl#getId <em>Id</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IFileFragmentImpl#getName <em>Name</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IFileFragmentImpl#getM_type <em>Mtype</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IFileFragmentImpl#getM_text <em>Mtext</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IFileFragmentImpl#getM_startRow <em>Mstart Row</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IFileFragmentImpl#getM_startCol <em>Mstart Col</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IFileFragmentImpl#getDescription <em>Description</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IFileFragmentImpl#getM_startCol_Short <em>Mstart Col Short</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IFileFragmentImpl#getM_endRow <em>Mend Row</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IFileFragmentImpl#getM_endCol_Short <em>Mend Col Short</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IFileFragmentImpl#getM_subject <em>Msubject</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IFileFragmentImpl#getTags <em>Tags</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IFileFragmentImpl#getFragments <em>Fragments</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IFileFragmentImpl#getModifiedTimeWeak <em>Modified Time Weak</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IFileFragmentImpl#getObjectCreation <em>Object Creation</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IFileFragmentImpl#getUmlDependencyID <em>Uml Dependency ID</em>}</li>
+ * </ul>
+ *
+ * @generated
+ */
+public class IFileFragmentImpl extends IModelElementImpl implements IFileFragment {
+	/**
+	 * The default value of the '{@link #getId() <em>Id</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getId()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String ID_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getId() <em>Id</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getId()
+	 * @generated
+	 * @ordered
+	 */
+	protected String id = ID_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getName() <em>Name</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getName()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String NAME_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getName() <em>Name</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getName()
+	 * @generated
+	 * @ordered
+	 */
+	protected String name = NAME_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getM_type() <em>Mtype</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_type()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String MTYPE_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getM_type() <em>Mtype</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_type()
+	 * @generated
+	 * @ordered
+	 */
+	protected String m_type = MTYPE_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getM_text() <em>Mtext</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_text()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String MTEXT_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getM_text() <em>Mtext</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_text()
+	 * @generated
+	 * @ordered
+	 */
+	protected String m_text = MTEXT_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getM_startRow() <em>Mstart Row</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_startRow()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String MSTART_ROW_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getM_startRow() <em>Mstart Row</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_startRow()
+	 * @generated
+	 * @ordered
+	 */
+	protected String m_startRow = MSTART_ROW_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getM_startCol() <em>Mstart Col</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_startCol()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String MSTART_COL_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getM_startCol() <em>Mstart Col</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_startCol()
+	 * @generated
+	 * @ordered
+	 */
+	protected String m_startCol = MSTART_COL_EDEFAULT;
+
+	/**
+	 * The cached value of the '{@link #getDescription() <em>Description</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getDescription()
+	 * @generated
+	 * @ordered
+	 */
+	protected IDescription description;
+
+	/**
+	 * The default value of the '{@link #getM_startCol_Short() <em>Mstart Col Short</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_startCol_Short()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String MSTART_COL_SHORT_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getM_startCol_Short() <em>Mstart Col Short</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_startCol_Short()
+	 * @generated
+	 * @ordered
+	 */
+	protected String m_startCol_Short = MSTART_COL_SHORT_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getM_endRow() <em>Mend Row</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_endRow()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String MEND_ROW_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getM_endRow() <em>Mend Row</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_endRow()
+	 * @generated
+	 * @ordered
+	 */
+	protected String m_endRow = MEND_ROW_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getM_endCol_Short() <em>Mend Col Short</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_endCol_Short()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String MEND_COL_SHORT_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getM_endCol_Short() <em>Mend Col Short</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_endCol_Short()
+	 * @generated
+	 * @ordered
+	 */
+	protected String m_endCol_Short = MEND_COL_SHORT_EDEFAULT;
+
+	/**
+	 * The cached value of the '{@link #getM_subject() <em>Msubject</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_subject()
+	 * @generated
+	 * @ordered
+	 */
+	protected M_subjectType m_subject;
+
+	/**
+	 * The cached value of the '{@link #getTags() <em>Tags</em>}' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getTags()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<ITag> tags;
+
+	/**
+	 * The cached value of the '{@link #getFragments() <em>Fragments</em>}' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getFragments()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<IFileFragment> fragments;
+
+	/**
+	 * The cached value of the '{@link #getModifiedTimeWeak() <em>Modified Time Weak</em>}' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getModifiedTimeWeak()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<String> modifiedTimeWeak;
+
+	/**
+	 * The default value of the '{@link #getObjectCreation() <em>Object Creation</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getObjectCreation()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String OBJECT_CREATION_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getObjectCreation() <em>Object Creation</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getObjectCreation()
+	 * @generated
+	 * @ordered
+	 */
+	protected String objectCreation = OBJECT_CREATION_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getUmlDependencyID() <em>Uml Dependency ID</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getUmlDependencyID()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String UML_DEPENDENCY_ID_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getUmlDependencyID() <em>Uml Dependency ID</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getUmlDependencyID()
+	 * @generated
+	 * @ordered
+	 */
+	protected String umlDependencyID = UML_DEPENDENCY_ID_EDEFAULT;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected IFileFragmentImpl() {
+		super();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EClass eStaticClass() {
+		return UMLRpyPackage.eINSTANCE.getIFileFragment();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getId() {
+		return id;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setId(String newId) {
+		String oldId = id;
+		id = newId;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IFILE_FRAGMENT__ID, oldId, id));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getName() {
+		return name;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setName(String newName) {
+		String oldName = name;
+		name = newName;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IFILE_FRAGMENT__NAME, oldName, name));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getM_type() {
+		return m_type;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_type(String newM_type) {
+		String oldM_type = m_type;
+		m_type = newM_type;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IFILE_FRAGMENT__MTYPE, oldM_type, m_type));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getM_text() {
+		return m_text;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_text(String newM_text) {
+		String oldM_text = m_text;
+		m_text = newM_text;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IFILE_FRAGMENT__MTEXT, oldM_text, m_text));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getM_startRow() {
+		return m_startRow;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_startRow(String newM_startRow) {
+		String oldM_startRow = m_startRow;
+		m_startRow = newM_startRow;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IFILE_FRAGMENT__MSTART_ROW, oldM_startRow, m_startRow));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getM_startCol() {
+		return m_startCol;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_startCol(String newM_startCol) {
+		String oldM_startCol = m_startCol;
+		m_startCol = newM_startCol;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IFILE_FRAGMENT__MSTART_COL, oldM_startCol, m_startCol));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IDescription getDescription() {
+		if (description != null && description.eIsProxy()) {
+			InternalEObject oldDescription = (InternalEObject)description;
+			description = (IDescription)eResolveProxy(oldDescription);
+			if (description != oldDescription) {
+				InternalEObject newDescription = (InternalEObject)description;
+				NotificationChain msgs = oldDescription.eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IFILE_FRAGMENT__DESCRIPTION, null, null);
+				if (newDescription.eInternalContainer() == null) {
+					msgs = newDescription.eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IFILE_FRAGMENT__DESCRIPTION, null, msgs);
+				}
+				if (msgs != null) msgs.dispatch();
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.IFILE_FRAGMENT__DESCRIPTION, oldDescription, description));
+			}
+		}
+		return description;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IDescription basicGetDescription() {
+		return description;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public NotificationChain basicSetDescription(IDescription newDescription, NotificationChain msgs) {
+		IDescription oldDescription = description;
+		description = newDescription;
+		if (eNotificationRequired()) {
+			ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IFILE_FRAGMENT__DESCRIPTION, oldDescription, newDescription);
+			if (msgs == null) msgs = notification; else msgs.add(notification);
+		}
+		return msgs;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setDescription(IDescription newDescription) {
+		if (newDescription != description) {
+			NotificationChain msgs = null;
+			if (description != null)
+				msgs = ((InternalEObject)description).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IFILE_FRAGMENT__DESCRIPTION, null, msgs);
+			if (newDescription != null)
+				msgs = ((InternalEObject)newDescription).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IFILE_FRAGMENT__DESCRIPTION, null, msgs);
+			msgs = basicSetDescription(newDescription, msgs);
+			if (msgs != null) msgs.dispatch();
+		}
+		else if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IFILE_FRAGMENT__DESCRIPTION, newDescription, newDescription));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getM_startCol_Short() {
+		return m_startCol_Short;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_startCol_Short(String newM_startCol_Short) {
+		String oldM_startCol_Short = m_startCol_Short;
+		m_startCol_Short = newM_startCol_Short;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IFILE_FRAGMENT__MSTART_COL_SHORT, oldM_startCol_Short, m_startCol_Short));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getM_endRow() {
+		return m_endRow;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_endRow(String newM_endRow) {
+		String oldM_endRow = m_endRow;
+		m_endRow = newM_endRow;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IFILE_FRAGMENT__MEND_ROW, oldM_endRow, m_endRow));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getM_endCol_Short() {
+		return m_endCol_Short;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_endCol_Short(String newM_endCol_Short) {
+		String oldM_endCol_Short = m_endCol_Short;
+		m_endCol_Short = newM_endCol_Short;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IFILE_FRAGMENT__MEND_COL_SHORT, oldM_endCol_Short, m_endCol_Short));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public M_subjectType getM_subject() {
+		if (m_subject != null && m_subject.eIsProxy()) {
+			InternalEObject oldM_subject = (InternalEObject)m_subject;
+			m_subject = (M_subjectType)eResolveProxy(oldM_subject);
+			if (m_subject != oldM_subject) {
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.IFILE_FRAGMENT__MSUBJECT, oldM_subject, m_subject));
+			}
+		}
+		return m_subject;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public M_subjectType basicGetM_subject() {
+		return m_subject;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_subject(M_subjectType newM_subject) {
+		M_subjectType oldM_subject = m_subject;
+		m_subject = newM_subject;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IFILE_FRAGMENT__MSUBJECT, oldM_subject, m_subject));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<ITag> getTags() {
+		if (tags == null) {
+			tags = new EObjectContainmentEList.Resolving<ITag>(ITag.class, this, UMLRpyPackage.IFILE_FRAGMENT__TAGS);
+		}
+		return tags;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<IFileFragment> getFragments() {
+		if (fragments == null) {
+			fragments = new EObjectContainmentEList.Resolving<IFileFragment>(IFileFragment.class, this, UMLRpyPackage.IFILE_FRAGMENT__FRAGMENTS);
+		}
+		return fragments;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<String> getModifiedTimeWeak() {
+		if (modifiedTimeWeak == null) {
+			modifiedTimeWeak = new EDataTypeEList<String>(String.class, this, UMLRpyPackage.IFILE_FRAGMENT__MODIFIED_TIME_WEAK);
+		}
+		return modifiedTimeWeak;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getObjectCreation() {
+		return objectCreation;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setObjectCreation(String newObjectCreation) {
+		String oldObjectCreation = objectCreation;
+		objectCreation = newObjectCreation;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IFILE_FRAGMENT__OBJECT_CREATION, oldObjectCreation, objectCreation));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getUmlDependencyID() {
+		return umlDependencyID;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setUmlDependencyID(String newUmlDependencyID) {
+		String oldUmlDependencyID = umlDependencyID;
+		umlDependencyID = newUmlDependencyID;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IFILE_FRAGMENT__UML_DEPENDENCY_ID, oldUmlDependencyID, umlDependencyID));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
+		switch (featureID) {
+			case UMLRpyPackage.IFILE_FRAGMENT__DESCRIPTION:
+				return basicSetDescription(null, msgs);
+			case UMLRpyPackage.IFILE_FRAGMENT__TAGS:
+				return ((InternalEList<?>)getTags()).basicRemove(otherEnd, msgs);
+			case UMLRpyPackage.IFILE_FRAGMENT__FRAGMENTS:
+				return ((InternalEList<?>)getFragments()).basicRemove(otherEnd, msgs);
+		}
+		return super.eInverseRemove(otherEnd, featureID, msgs);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object eGet(int featureID, boolean resolve, boolean coreType) {
+		switch (featureID) {
+			case UMLRpyPackage.IFILE_FRAGMENT__ID:
+				return getId();
+			case UMLRpyPackage.IFILE_FRAGMENT__NAME:
+				return getName();
+			case UMLRpyPackage.IFILE_FRAGMENT__MTYPE:
+				return getM_type();
+			case UMLRpyPackage.IFILE_FRAGMENT__MTEXT:
+				return getM_text();
+			case UMLRpyPackage.IFILE_FRAGMENT__MSTART_ROW:
+				return getM_startRow();
+			case UMLRpyPackage.IFILE_FRAGMENT__MSTART_COL:
+				return getM_startCol();
+			case UMLRpyPackage.IFILE_FRAGMENT__DESCRIPTION:
+				if (resolve) return getDescription();
+				return basicGetDescription();
+			case UMLRpyPackage.IFILE_FRAGMENT__MSTART_COL_SHORT:
+				return getM_startCol_Short();
+			case UMLRpyPackage.IFILE_FRAGMENT__MEND_ROW:
+				return getM_endRow();
+			case UMLRpyPackage.IFILE_FRAGMENT__MEND_COL_SHORT:
+				return getM_endCol_Short();
+			case UMLRpyPackage.IFILE_FRAGMENT__MSUBJECT:
+				if (resolve) return getM_subject();
+				return basicGetM_subject();
+			case UMLRpyPackage.IFILE_FRAGMENT__TAGS:
+				return getTags();
+			case UMLRpyPackage.IFILE_FRAGMENT__FRAGMENTS:
+				return getFragments();
+			case UMLRpyPackage.IFILE_FRAGMENT__MODIFIED_TIME_WEAK:
+				return getModifiedTimeWeak();
+			case UMLRpyPackage.IFILE_FRAGMENT__OBJECT_CREATION:
+				return getObjectCreation();
+			case UMLRpyPackage.IFILE_FRAGMENT__UML_DEPENDENCY_ID:
+				return getUmlDependencyID();
+		}
+		return super.eGet(featureID, resolve, coreType);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@SuppressWarnings("unchecked")
+	@Override
+	public void eSet(int featureID, Object newValue) {
+		switch (featureID) {
+			case UMLRpyPackage.IFILE_FRAGMENT__ID:
+				setId((String)newValue);
+				return;
+			case UMLRpyPackage.IFILE_FRAGMENT__NAME:
+				setName((String)newValue);
+				return;
+			case UMLRpyPackage.IFILE_FRAGMENT__MTYPE:
+				setM_type((String)newValue);
+				return;
+			case UMLRpyPackage.IFILE_FRAGMENT__MTEXT:
+				setM_text((String)newValue);
+				return;
+			case UMLRpyPackage.IFILE_FRAGMENT__MSTART_ROW:
+				setM_startRow((String)newValue);
+				return;
+			case UMLRpyPackage.IFILE_FRAGMENT__MSTART_COL:
+				setM_startCol((String)newValue);
+				return;
+			case UMLRpyPackage.IFILE_FRAGMENT__DESCRIPTION:
+				setDescription((IDescription)newValue);
+				return;
+			case UMLRpyPackage.IFILE_FRAGMENT__MSTART_COL_SHORT:
+				setM_startCol_Short((String)newValue);
+				return;
+			case UMLRpyPackage.IFILE_FRAGMENT__MEND_ROW:
+				setM_endRow((String)newValue);
+				return;
+			case UMLRpyPackage.IFILE_FRAGMENT__MEND_COL_SHORT:
+				setM_endCol_Short((String)newValue);
+				return;
+			case UMLRpyPackage.IFILE_FRAGMENT__MSUBJECT:
+				setM_subject((M_subjectType)newValue);
+				return;
+			case UMLRpyPackage.IFILE_FRAGMENT__TAGS:
+				getTags().clear();
+				getTags().addAll((Collection<? extends ITag>)newValue);
+				return;
+			case UMLRpyPackage.IFILE_FRAGMENT__FRAGMENTS:
+				getFragments().clear();
+				getFragments().addAll((Collection<? extends IFileFragment>)newValue);
+				return;
+			case UMLRpyPackage.IFILE_FRAGMENT__MODIFIED_TIME_WEAK:
+				getModifiedTimeWeak().clear();
+				getModifiedTimeWeak().addAll((Collection<? extends String>)newValue);
+				return;
+			case UMLRpyPackage.IFILE_FRAGMENT__OBJECT_CREATION:
+				setObjectCreation((String)newValue);
+				return;
+			case UMLRpyPackage.IFILE_FRAGMENT__UML_DEPENDENCY_ID:
+				setUmlDependencyID((String)newValue);
+				return;
+		}
+		super.eSet(featureID, newValue);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void eUnset(int featureID) {
+		switch (featureID) {
+			case UMLRpyPackage.IFILE_FRAGMENT__ID:
+				setId(ID_EDEFAULT);
+				return;
+			case UMLRpyPackage.IFILE_FRAGMENT__NAME:
+				setName(NAME_EDEFAULT);
+				return;
+			case UMLRpyPackage.IFILE_FRAGMENT__MTYPE:
+				setM_type(MTYPE_EDEFAULT);
+				return;
+			case UMLRpyPackage.IFILE_FRAGMENT__MTEXT:
+				setM_text(MTEXT_EDEFAULT);
+				return;
+			case UMLRpyPackage.IFILE_FRAGMENT__MSTART_ROW:
+				setM_startRow(MSTART_ROW_EDEFAULT);
+				return;
+			case UMLRpyPackage.IFILE_FRAGMENT__MSTART_COL:
+				setM_startCol(MSTART_COL_EDEFAULT);
+				return;
+			case UMLRpyPackage.IFILE_FRAGMENT__DESCRIPTION:
+				setDescription((IDescription)null);
+				return;
+			case UMLRpyPackage.IFILE_FRAGMENT__MSTART_COL_SHORT:
+				setM_startCol_Short(MSTART_COL_SHORT_EDEFAULT);
+				return;
+			case UMLRpyPackage.IFILE_FRAGMENT__MEND_ROW:
+				setM_endRow(MEND_ROW_EDEFAULT);
+				return;
+			case UMLRpyPackage.IFILE_FRAGMENT__MEND_COL_SHORT:
+				setM_endCol_Short(MEND_COL_SHORT_EDEFAULT);
+				return;
+			case UMLRpyPackage.IFILE_FRAGMENT__MSUBJECT:
+				setM_subject((M_subjectType)null);
+				return;
+			case UMLRpyPackage.IFILE_FRAGMENT__TAGS:
+				getTags().clear();
+				return;
+			case UMLRpyPackage.IFILE_FRAGMENT__FRAGMENTS:
+				getFragments().clear();
+				return;
+			case UMLRpyPackage.IFILE_FRAGMENT__MODIFIED_TIME_WEAK:
+				getModifiedTimeWeak().clear();
+				return;
+			case UMLRpyPackage.IFILE_FRAGMENT__OBJECT_CREATION:
+				setObjectCreation(OBJECT_CREATION_EDEFAULT);
+				return;
+			case UMLRpyPackage.IFILE_FRAGMENT__UML_DEPENDENCY_ID:
+				setUmlDependencyID(UML_DEPENDENCY_ID_EDEFAULT);
+				return;
+		}
+		super.eUnset(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public boolean eIsSet(int featureID) {
+		switch (featureID) {
+			case UMLRpyPackage.IFILE_FRAGMENT__ID:
+				return ID_EDEFAULT == null ? id != null : !ID_EDEFAULT.equals(id);
+			case UMLRpyPackage.IFILE_FRAGMENT__NAME:
+				return NAME_EDEFAULT == null ? name != null : !NAME_EDEFAULT.equals(name);
+			case UMLRpyPackage.IFILE_FRAGMENT__MTYPE:
+				return MTYPE_EDEFAULT == null ? m_type != null : !MTYPE_EDEFAULT.equals(m_type);
+			case UMLRpyPackage.IFILE_FRAGMENT__MTEXT:
+				return MTEXT_EDEFAULT == null ? m_text != null : !MTEXT_EDEFAULT.equals(m_text);
+			case UMLRpyPackage.IFILE_FRAGMENT__MSTART_ROW:
+				return MSTART_ROW_EDEFAULT == null ? m_startRow != null : !MSTART_ROW_EDEFAULT.equals(m_startRow);
+			case UMLRpyPackage.IFILE_FRAGMENT__MSTART_COL:
+				return MSTART_COL_EDEFAULT == null ? m_startCol != null : !MSTART_COL_EDEFAULT.equals(m_startCol);
+			case UMLRpyPackage.IFILE_FRAGMENT__DESCRIPTION:
+				return description != null;
+			case UMLRpyPackage.IFILE_FRAGMENT__MSTART_COL_SHORT:
+				return MSTART_COL_SHORT_EDEFAULT == null ? m_startCol_Short != null : !MSTART_COL_SHORT_EDEFAULT.equals(m_startCol_Short);
+			case UMLRpyPackage.IFILE_FRAGMENT__MEND_ROW:
+				return MEND_ROW_EDEFAULT == null ? m_endRow != null : !MEND_ROW_EDEFAULT.equals(m_endRow);
+			case UMLRpyPackage.IFILE_FRAGMENT__MEND_COL_SHORT:
+				return MEND_COL_SHORT_EDEFAULT == null ? m_endCol_Short != null : !MEND_COL_SHORT_EDEFAULT.equals(m_endCol_Short);
+			case UMLRpyPackage.IFILE_FRAGMENT__MSUBJECT:
+				return m_subject != null;
+			case UMLRpyPackage.IFILE_FRAGMENT__TAGS:
+				return tags != null && !tags.isEmpty();
+			case UMLRpyPackage.IFILE_FRAGMENT__FRAGMENTS:
+				return fragments != null && !fragments.isEmpty();
+			case UMLRpyPackage.IFILE_FRAGMENT__MODIFIED_TIME_WEAK:
+				return modifiedTimeWeak != null && !modifiedTimeWeak.isEmpty();
+			case UMLRpyPackage.IFILE_FRAGMENT__OBJECT_CREATION:
+				return OBJECT_CREATION_EDEFAULT == null ? objectCreation != null : !OBJECT_CREATION_EDEFAULT.equals(objectCreation);
+			case UMLRpyPackage.IFILE_FRAGMENT__UML_DEPENDENCY_ID:
+				return UML_DEPENDENCY_ID_EDEFAULT == null ? umlDependencyID != null : !UML_DEPENDENCY_ID_EDEFAULT.equals(umlDependencyID);
+		}
+		return super.eIsSet(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String toString() {
+		if (eIsProxy()) return super.toString();
+
+		StringBuffer result = new StringBuffer(super.toString());
+		result.append(" (id: "); //$NON-NLS-1$
+		result.append(id);
+		result.append(", name: "); //$NON-NLS-1$
+		result.append(name);
+		result.append(", m_type: "); //$NON-NLS-1$
+		result.append(m_type);
+		result.append(", m_text: "); //$NON-NLS-1$
+		result.append(m_text);
+		result.append(", m_startRow: "); //$NON-NLS-1$
+		result.append(m_startRow);
+		result.append(", m_startCol: "); //$NON-NLS-1$
+		result.append(m_startCol);
+		result.append(", m_startCol_Short: "); //$NON-NLS-1$
+		result.append(m_startCol_Short);
+		result.append(", m_endRow: "); //$NON-NLS-1$
+		result.append(m_endRow);
+		result.append(", m_endCol_Short: "); //$NON-NLS-1$
+		result.append(m_endCol_Short);
+		result.append(", modifiedTimeWeak: "); //$NON-NLS-1$
+		result.append(modifiedTimeWeak);
+		result.append(", objectCreation: "); //$NON-NLS-1$
+		result.append(objectCreation);
+		result.append(", umlDependencyID: "); //$NON-NLS-1$
+		result.append(umlDependencyID);
+		result.append(')');
+		return result.toString();
+	}
+
+} //IFileFragmentImpl
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/IFileImpl.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/IFileImpl.java
new file mode 100755
index 0000000..36cea4e
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/IFileImpl.java
@@ -0,0 +1,912 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl;
+
+import java.util.Collection;
+
+import org.eclipse.emf.common.notify.Notification;
+import org.eclipse.emf.common.notify.NotificationChain;
+
+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.EDataTypeEList;
+import org.eclipse.emf.ecore.util.EObjectContainmentEList;
+import org.eclipse.emf.ecore.util.InternalEList;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.FilesType;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IDependency;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IDescription;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IFile;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IModelElement;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IPropertyContainer;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>IFile</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * </p>
+ * <ul>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IFileImpl#getModifiedTimeWeak <em>Modified Time Weak</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IFileImpl#getId <em>Id</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IFileImpl#getUmlDependencyID <em>Uml Dependency ID</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IFileImpl#getLastID <em>Last ID</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IFileImpl#getMyState <em>My State</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IFileImpl#getM_path <em>Mpath</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IFileImpl#getObjectCreation <em>Object Creation</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IFileImpl#getName <em>Name</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IFileImpl#getProperties <em>Properties</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IFileImpl#getM_type <em>Mtype</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IFileImpl#getFragments <em>Fragments</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IFileImpl#getDescription <em>Description</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IFileImpl#getDependencies <em>Dependencies</em>}</li>
+ * </ul>
+ *
+ * @generated
+ */
+public class IFileImpl extends IUnitImpl implements IFile {
+	/**
+	 * The cached value of the '{@link #getModifiedTimeWeak() <em>Modified Time Weak</em>}' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getModifiedTimeWeak()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<String> modifiedTimeWeak;
+
+	/**
+	 * The default value of the '{@link #getId() <em>Id</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getId()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String ID_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getId() <em>Id</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getId()
+	 * @generated
+	 * @ordered
+	 */
+	protected String id = ID_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getUmlDependencyID() <em>Uml Dependency ID</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getUmlDependencyID()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String UML_DEPENDENCY_ID_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getUmlDependencyID() <em>Uml Dependency ID</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getUmlDependencyID()
+	 * @generated
+	 * @ordered
+	 */
+	protected String umlDependencyID = UML_DEPENDENCY_ID_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getLastID() <em>Last ID</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getLastID()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String LAST_ID_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getLastID() <em>Last ID</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getLastID()
+	 * @generated
+	 * @ordered
+	 */
+	protected String lastID = LAST_ID_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getMyState() <em>My State</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getMyState()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String MY_STATE_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getMyState() <em>My State</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getMyState()
+	 * @generated
+	 * @ordered
+	 */
+	protected String myState = MY_STATE_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getM_path() <em>Mpath</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_path()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String MPATH_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getM_path() <em>Mpath</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_path()
+	 * @generated
+	 * @ordered
+	 */
+	protected String m_path = MPATH_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getObjectCreation() <em>Object Creation</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getObjectCreation()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String OBJECT_CREATION_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getObjectCreation() <em>Object Creation</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getObjectCreation()
+	 * @generated
+	 * @ordered
+	 */
+	protected String objectCreation = OBJECT_CREATION_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getName() <em>Name</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getName()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String NAME_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getName() <em>Name</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getName()
+	 * @generated
+	 * @ordered
+	 */
+	protected String name = NAME_EDEFAULT;
+
+	/**
+	 * The cached value of the '{@link #getProperties() <em>Properties</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getProperties()
+	 * @generated
+	 * @ordered
+	 */
+	protected IPropertyContainer properties;
+
+	/**
+	 * The default value of the '{@link #getM_type() <em>Mtype</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_type()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String MTYPE_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getM_type() <em>Mtype</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_type()
+	 * @generated
+	 * @ordered
+	 */
+	protected String m_type = MTYPE_EDEFAULT;
+
+	/**
+	 * The cached value of the '{@link #getFragments() <em>Fragments</em>}' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getFragments()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<IModelElement> fragments;
+
+	/**
+	 * The cached value of the '{@link #getDescription() <em>Description</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getDescription()
+	 * @generated
+	 * @ordered
+	 */
+	protected IDescription description;
+
+	/**
+	 * The cached value of the '{@link #getDependencies() <em>Dependencies</em>}' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getDependencies()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<IDependency> dependencies;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected IFileImpl() {
+		super();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EClass eStaticClass() {
+		return UMLRpyPackage.eINSTANCE.getIFile();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<String> getModifiedTimeWeak() {
+		if (modifiedTimeWeak == null) {
+			modifiedTimeWeak = new EDataTypeEList<String>(String.class, this, UMLRpyPackage.IFILE__MODIFIED_TIME_WEAK);
+		}
+		return modifiedTimeWeak;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getId() {
+		return id;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setId(String newId) {
+		String oldId = id;
+		id = newId;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IFILE__ID, oldId, id));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getUmlDependencyID() {
+		return umlDependencyID;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setUmlDependencyID(String newUmlDependencyID) {
+		String oldUmlDependencyID = umlDependencyID;
+		umlDependencyID = newUmlDependencyID;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IFILE__UML_DEPENDENCY_ID, oldUmlDependencyID, umlDependencyID));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getLastID() {
+		return lastID;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setLastID(String newLastID) {
+		String oldLastID = lastID;
+		lastID = newLastID;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IFILE__LAST_ID, oldLastID, lastID));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getMyState() {
+		return myState;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setMyState(String newMyState) {
+		String oldMyState = myState;
+		myState = newMyState;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IFILE__MY_STATE, oldMyState, myState));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getM_path() {
+		return m_path;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_path(String newM_path) {
+		String oldM_path = m_path;
+		m_path = newM_path;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IFILE__MPATH, oldM_path, m_path));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getObjectCreation() {
+		return objectCreation;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setObjectCreation(String newObjectCreation) {
+		String oldObjectCreation = objectCreation;
+		objectCreation = newObjectCreation;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IFILE__OBJECT_CREATION, oldObjectCreation, objectCreation));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getName() {
+		return name;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setName(String newName) {
+		String oldName = name;
+		name = newName;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IFILE__NAME, oldName, name));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IPropertyContainer getProperties() {
+		if (properties != null && properties.eIsProxy()) {
+			InternalEObject oldProperties = (InternalEObject)properties;
+			properties = (IPropertyContainer)eResolveProxy(oldProperties);
+			if (properties != oldProperties) {
+				InternalEObject newProperties = (InternalEObject)properties;
+				NotificationChain msgs = oldProperties.eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IFILE__PROPERTIES, null, null);
+				if (newProperties.eInternalContainer() == null) {
+					msgs = newProperties.eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IFILE__PROPERTIES, null, msgs);
+				}
+				if (msgs != null) msgs.dispatch();
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.IFILE__PROPERTIES, oldProperties, properties));
+			}
+		}
+		return properties;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IPropertyContainer basicGetProperties() {
+		return properties;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public NotificationChain basicSetProperties(IPropertyContainer newProperties, NotificationChain msgs) {
+		IPropertyContainer oldProperties = properties;
+		properties = newProperties;
+		if (eNotificationRequired()) {
+			ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IFILE__PROPERTIES, oldProperties, newProperties);
+			if (msgs == null) msgs = notification; else msgs.add(notification);
+		}
+		return msgs;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setProperties(IPropertyContainer newProperties) {
+		if (newProperties != properties) {
+			NotificationChain msgs = null;
+			if (properties != null)
+				msgs = ((InternalEObject)properties).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IFILE__PROPERTIES, null, msgs);
+			if (newProperties != null)
+				msgs = ((InternalEObject)newProperties).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IFILE__PROPERTIES, null, msgs);
+			msgs = basicSetProperties(newProperties, msgs);
+			if (msgs != null) msgs.dispatch();
+		}
+		else if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IFILE__PROPERTIES, newProperties, newProperties));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getM_type() {
+		return m_type;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_type(String newM_type) {
+		String oldM_type = m_type;
+		m_type = newM_type;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IFILE__MTYPE, oldM_type, m_type));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<IModelElement> getFragments() {
+		if (fragments == null) {
+			fragments = new EObjectContainmentEList.Resolving<IModelElement>(IModelElement.class, this, UMLRpyPackage.IFILE__FRAGMENTS);
+		}
+		return fragments;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IDescription getDescription() {
+		if (description != null && description.eIsProxy()) {
+			InternalEObject oldDescription = (InternalEObject)description;
+			description = (IDescription)eResolveProxy(oldDescription);
+			if (description != oldDescription) {
+				InternalEObject newDescription = (InternalEObject)description;
+				NotificationChain msgs = oldDescription.eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IFILE__DESCRIPTION, null, null);
+				if (newDescription.eInternalContainer() == null) {
+					msgs = newDescription.eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IFILE__DESCRIPTION, null, msgs);
+				}
+				if (msgs != null) msgs.dispatch();
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.IFILE__DESCRIPTION, oldDescription, description));
+			}
+		}
+		return description;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IDescription basicGetDescription() {
+		return description;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public NotificationChain basicSetDescription(IDescription newDescription, NotificationChain msgs) {
+		IDescription oldDescription = description;
+		description = newDescription;
+		if (eNotificationRequired()) {
+			ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IFILE__DESCRIPTION, oldDescription, newDescription);
+			if (msgs == null) msgs = notification; else msgs.add(notification);
+		}
+		return msgs;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setDescription(IDescription newDescription) {
+		if (newDescription != description) {
+			NotificationChain msgs = null;
+			if (description != null)
+				msgs = ((InternalEObject)description).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IFILE__DESCRIPTION, null, msgs);
+			if (newDescription != null)
+				msgs = ((InternalEObject)newDescription).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IFILE__DESCRIPTION, null, msgs);
+			msgs = basicSetDescription(newDescription, msgs);
+			if (msgs != null) msgs.dispatch();
+		}
+		else if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IFILE__DESCRIPTION, newDescription, newDescription));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<IDependency> getDependencies() {
+		if (dependencies == null) {
+			dependencies = new EObjectContainmentEList.Resolving<IDependency>(IDependency.class, this, UMLRpyPackage.IFILE__DEPENDENCIES);
+		}
+		return dependencies;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
+		switch (featureID) {
+			case UMLRpyPackage.IFILE__PROPERTIES:
+				return basicSetProperties(null, msgs);
+			case UMLRpyPackage.IFILE__FRAGMENTS:
+				return ((InternalEList<?>)getFragments()).basicRemove(otherEnd, msgs);
+			case UMLRpyPackage.IFILE__DESCRIPTION:
+				return basicSetDescription(null, msgs);
+			case UMLRpyPackage.IFILE__DEPENDENCIES:
+				return ((InternalEList<?>)getDependencies()).basicRemove(otherEnd, msgs);
+		}
+		return super.eInverseRemove(otherEnd, featureID, msgs);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object eGet(int featureID, boolean resolve, boolean coreType) {
+		switch (featureID) {
+			case UMLRpyPackage.IFILE__MODIFIED_TIME_WEAK:
+				return getModifiedTimeWeak();
+			case UMLRpyPackage.IFILE__ID:
+				return getId();
+			case UMLRpyPackage.IFILE__UML_DEPENDENCY_ID:
+				return getUmlDependencyID();
+			case UMLRpyPackage.IFILE__LAST_ID:
+				return getLastID();
+			case UMLRpyPackage.IFILE__MY_STATE:
+				return getMyState();
+			case UMLRpyPackage.IFILE__MPATH:
+				return getM_path();
+			case UMLRpyPackage.IFILE__OBJECT_CREATION:
+				return getObjectCreation();
+			case UMLRpyPackage.IFILE__NAME:
+				return getName();
+			case UMLRpyPackage.IFILE__PROPERTIES:
+				if (resolve) return getProperties();
+				return basicGetProperties();
+			case UMLRpyPackage.IFILE__MTYPE:
+				return getM_type();
+			case UMLRpyPackage.IFILE__FRAGMENTS:
+				return getFragments();
+			case UMLRpyPackage.IFILE__DESCRIPTION:
+				if (resolve) return getDescription();
+				return basicGetDescription();
+			case UMLRpyPackage.IFILE__DEPENDENCIES:
+				return getDependencies();
+		}
+		return super.eGet(featureID, resolve, coreType);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@SuppressWarnings("unchecked")
+	@Override
+	public void eSet(int featureID, Object newValue) {
+		switch (featureID) {
+			case UMLRpyPackage.IFILE__MODIFIED_TIME_WEAK:
+				getModifiedTimeWeak().clear();
+				getModifiedTimeWeak().addAll((Collection<? extends String>)newValue);
+				return;
+			case UMLRpyPackage.IFILE__ID:
+				setId((String)newValue);
+				return;
+			case UMLRpyPackage.IFILE__UML_DEPENDENCY_ID:
+				setUmlDependencyID((String)newValue);
+				return;
+			case UMLRpyPackage.IFILE__LAST_ID:
+				setLastID((String)newValue);
+				return;
+			case UMLRpyPackage.IFILE__MY_STATE:
+				setMyState((String)newValue);
+				return;
+			case UMLRpyPackage.IFILE__MPATH:
+				setM_path((String)newValue);
+				return;
+			case UMLRpyPackage.IFILE__OBJECT_CREATION:
+				setObjectCreation((String)newValue);
+				return;
+			case UMLRpyPackage.IFILE__NAME:
+				setName((String)newValue);
+				return;
+			case UMLRpyPackage.IFILE__PROPERTIES:
+				setProperties((IPropertyContainer)newValue);
+				return;
+			case UMLRpyPackage.IFILE__MTYPE:
+				setM_type((String)newValue);
+				return;
+			case UMLRpyPackage.IFILE__FRAGMENTS:
+				getFragments().clear();
+				getFragments().addAll((Collection<? extends IModelElement>)newValue);
+				return;
+			case UMLRpyPackage.IFILE__DESCRIPTION:
+				setDescription((IDescription)newValue);
+				return;
+			case UMLRpyPackage.IFILE__DEPENDENCIES:
+				getDependencies().clear();
+				getDependencies().addAll((Collection<? extends IDependency>)newValue);
+				return;
+		}
+		super.eSet(featureID, newValue);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void eUnset(int featureID) {
+		switch (featureID) {
+			case UMLRpyPackage.IFILE__MODIFIED_TIME_WEAK:
+				getModifiedTimeWeak().clear();
+				return;
+			case UMLRpyPackage.IFILE__ID:
+				setId(ID_EDEFAULT);
+				return;
+			case UMLRpyPackage.IFILE__UML_DEPENDENCY_ID:
+				setUmlDependencyID(UML_DEPENDENCY_ID_EDEFAULT);
+				return;
+			case UMLRpyPackage.IFILE__LAST_ID:
+				setLastID(LAST_ID_EDEFAULT);
+				return;
+			case UMLRpyPackage.IFILE__MY_STATE:
+				setMyState(MY_STATE_EDEFAULT);
+				return;
+			case UMLRpyPackage.IFILE__MPATH:
+				setM_path(MPATH_EDEFAULT);
+				return;
+			case UMLRpyPackage.IFILE__OBJECT_CREATION:
+				setObjectCreation(OBJECT_CREATION_EDEFAULT);
+				return;
+			case UMLRpyPackage.IFILE__NAME:
+				setName(NAME_EDEFAULT);
+				return;
+			case UMLRpyPackage.IFILE__PROPERTIES:
+				setProperties((IPropertyContainer)null);
+				return;
+			case UMLRpyPackage.IFILE__MTYPE:
+				setM_type(MTYPE_EDEFAULT);
+				return;
+			case UMLRpyPackage.IFILE__FRAGMENTS:
+				getFragments().clear();
+				return;
+			case UMLRpyPackage.IFILE__DESCRIPTION:
+				setDescription((IDescription)null);
+				return;
+			case UMLRpyPackage.IFILE__DEPENDENCIES:
+				getDependencies().clear();
+				return;
+		}
+		super.eUnset(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public boolean eIsSet(int featureID) {
+		switch (featureID) {
+			case UMLRpyPackage.IFILE__MODIFIED_TIME_WEAK:
+				return modifiedTimeWeak != null && !modifiedTimeWeak.isEmpty();
+			case UMLRpyPackage.IFILE__ID:
+				return ID_EDEFAULT == null ? id != null : !ID_EDEFAULT.equals(id);
+			case UMLRpyPackage.IFILE__UML_DEPENDENCY_ID:
+				return UML_DEPENDENCY_ID_EDEFAULT == null ? umlDependencyID != null : !UML_DEPENDENCY_ID_EDEFAULT.equals(umlDependencyID);
+			case UMLRpyPackage.IFILE__LAST_ID:
+				return LAST_ID_EDEFAULT == null ? lastID != null : !LAST_ID_EDEFAULT.equals(lastID);
+			case UMLRpyPackage.IFILE__MY_STATE:
+				return MY_STATE_EDEFAULT == null ? myState != null : !MY_STATE_EDEFAULT.equals(myState);
+			case UMLRpyPackage.IFILE__MPATH:
+				return MPATH_EDEFAULT == null ? m_path != null : !MPATH_EDEFAULT.equals(m_path);
+			case UMLRpyPackage.IFILE__OBJECT_CREATION:
+				return OBJECT_CREATION_EDEFAULT == null ? objectCreation != null : !OBJECT_CREATION_EDEFAULT.equals(objectCreation);
+			case UMLRpyPackage.IFILE__NAME:
+				return NAME_EDEFAULT == null ? name != null : !NAME_EDEFAULT.equals(name);
+			case UMLRpyPackage.IFILE__PROPERTIES:
+				return properties != null;
+			case UMLRpyPackage.IFILE__MTYPE:
+				return MTYPE_EDEFAULT == null ? m_type != null : !MTYPE_EDEFAULT.equals(m_type);
+			case UMLRpyPackage.IFILE__FRAGMENTS:
+				return fragments != null && !fragments.isEmpty();
+			case UMLRpyPackage.IFILE__DESCRIPTION:
+				return description != null;
+			case UMLRpyPackage.IFILE__DEPENDENCIES:
+				return dependencies != null && !dependencies.isEmpty();
+		}
+		return super.eIsSet(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public int eBaseStructuralFeatureID(int derivedFeatureID, Class<?> baseClass) {
+		if (baseClass == FilesType.class) {
+			switch (derivedFeatureID) {
+				case UMLRpyPackage.IFILE__MODIFIED_TIME_WEAK: return UMLRpyPackage.FILES_TYPE__MODIFIED_TIME_WEAK;
+				case UMLRpyPackage.IFILE__ID: return UMLRpyPackage.FILES_TYPE__ID;
+				case UMLRpyPackage.IFILE__UML_DEPENDENCY_ID: return UMLRpyPackage.FILES_TYPE__UML_DEPENDENCY_ID;
+				case UMLRpyPackage.IFILE__LAST_ID: return UMLRpyPackage.FILES_TYPE__LAST_ID;
+				case UMLRpyPackage.IFILE__MY_STATE: return UMLRpyPackage.FILES_TYPE__MY_STATE;
+				case UMLRpyPackage.IFILE__MPATH: return UMLRpyPackage.FILES_TYPE__MPATH;
+				case UMLRpyPackage.IFILE__OBJECT_CREATION: return UMLRpyPackage.FILES_TYPE__OBJECT_CREATION;
+				case UMLRpyPackage.IFILE__NAME: return UMLRpyPackage.FILES_TYPE__NAME;
+				default: return -1;
+			}
+		}
+		return super.eBaseStructuralFeatureID(derivedFeatureID, baseClass);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public int eDerivedStructuralFeatureID(int baseFeatureID, Class<?> baseClass) {
+		if (baseClass == FilesType.class) {
+			switch (baseFeatureID) {
+				case UMLRpyPackage.FILES_TYPE__MODIFIED_TIME_WEAK: return UMLRpyPackage.IFILE__MODIFIED_TIME_WEAK;
+				case UMLRpyPackage.FILES_TYPE__ID: return UMLRpyPackage.IFILE__ID;
+				case UMLRpyPackage.FILES_TYPE__UML_DEPENDENCY_ID: return UMLRpyPackage.IFILE__UML_DEPENDENCY_ID;
+				case UMLRpyPackage.FILES_TYPE__LAST_ID: return UMLRpyPackage.IFILE__LAST_ID;
+				case UMLRpyPackage.FILES_TYPE__MY_STATE: return UMLRpyPackage.IFILE__MY_STATE;
+				case UMLRpyPackage.FILES_TYPE__MPATH: return UMLRpyPackage.IFILE__MPATH;
+				case UMLRpyPackage.FILES_TYPE__OBJECT_CREATION: return UMLRpyPackage.IFILE__OBJECT_CREATION;
+				case UMLRpyPackage.FILES_TYPE__NAME: return UMLRpyPackage.IFILE__NAME;
+				default: return -1;
+			}
+		}
+		return super.eDerivedStructuralFeatureID(baseFeatureID, baseClass);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String toString() {
+		if (eIsProxy()) return super.toString();
+
+		StringBuffer result = new StringBuffer(super.toString());
+		result.append(" (modifiedTimeWeak: "); //$NON-NLS-1$
+		result.append(modifiedTimeWeak);
+		result.append(", id: "); //$NON-NLS-1$
+		result.append(id);
+		result.append(", umlDependencyID: "); //$NON-NLS-1$
+		result.append(umlDependencyID);
+		result.append(", lastID: "); //$NON-NLS-1$
+		result.append(lastID);
+		result.append(", myState: "); //$NON-NLS-1$
+		result.append(myState);
+		result.append(", m_path: "); //$NON-NLS-1$
+		result.append(m_path);
+		result.append(", objectCreation: "); //$NON-NLS-1$
+		result.append(objectCreation);
+		result.append(", name: "); //$NON-NLS-1$
+		result.append(name);
+		result.append(", m_type: "); //$NON-NLS-1$
+		result.append(m_type);
+		result.append(')');
+		return result.toString();
+	}
+
+} //IFileImpl
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/IFlowImpl.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/IFlowImpl.java
new file mode 100755
index 0000000..f773d0d
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/IFlowImpl.java
@@ -0,0 +1,47 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl;
+
+import org.eclipse.emf.ecore.EClass;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IFlow;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>IFlow</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+public class IFlowImpl extends IModelElementImpl implements IFlow {
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected IFlowImpl() {
+		super();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EClass eStaticClass() {
+		return UMLRpyPackage.eINSTANCE.getIFlow();
+	}
+
+} //IFlowImpl
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/IFlowItemImpl.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/IFlowItemImpl.java
new file mode 100755
index 0000000..66199cb
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/IFlowItemImpl.java
@@ -0,0 +1,47 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl;
+
+import org.eclipse.emf.ecore.EClass;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IFlowItem;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>IFlow Item</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+public class IFlowItemImpl extends IClassifierImpl implements IFlowItem {
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected IFlowItemImpl() {
+		super();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EClass eStaticClass() {
+		return UMLRpyPackage.eINSTANCE.getIFlowItem();
+	}
+
+} //IFlowItemImpl
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/IFlowchartImpl.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/IFlowchartImpl.java
new file mode 100755
index 0000000..e98e01d
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/IFlowchartImpl.java
@@ -0,0 +1,49 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl;
+
+import org.eclipse.emf.ecore.EClass;
+
+import org.eclipse.emf.ecore.impl.MinimalEObjectImpl;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IFlowchart;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>IFlowchart</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+public class IFlowchartImpl extends MinimalEObjectImpl.Container implements IFlowchart {
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected IFlowchartImpl() {
+		super();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EClass eStaticClass() {
+		return UMLRpyPackage.eINSTANCE.getIFlowchart();
+	}
+
+} //IFlowchartImpl
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/IFolderImpl.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/IFolderImpl.java
new file mode 100755
index 0000000..ce0f1f9
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/IFolderImpl.java
@@ -0,0 +1,304 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl;
+
+import java.util.Collection;
+
+import org.eclipse.emf.common.notify.Notification;
+import org.eclipse.emf.common.notify.NotificationChain;
+
+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.EDataTypeEList;
+import org.eclipse.emf.ecore.util.EObjectContainmentEList;
+import org.eclipse.emf.ecore.util.EObjectResolvingEList;
+import org.eclipse.emf.ecore.util.InternalEList;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ElementsType;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.FilesType;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IFolder;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>IFolder</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * </p>
+ * <ul>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IFolderImpl#getElements <em>Elements</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IFolderImpl#getFiles <em>Files</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IFolderImpl#getRequiremenTracabilityHandle <em>Requiremen Tracability Handle</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IFolderImpl#getCodeUpdateCGTime <em>Code Update CG Time</em>}</li>
+ * </ul>
+ *
+ * @generated
+ */
+public class IFolderImpl extends FilesTypeImpl implements IFolder {
+	/**
+	 * The cached value of the '{@link #getElements() <em>Elements</em>}' reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getElements()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<ElementsType> elements;
+
+	/**
+	 * The cached value of the '{@link #getFiles() <em>Files</em>}' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getFiles()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<FilesType> files;
+
+	/**
+	 * The default value of the '{@link #getRequiremenTracabilityHandle() <em>Requiremen Tracability Handle</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getRequiremenTracabilityHandle()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String REQUIREMEN_TRACABILITY_HANDLE_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getRequiremenTracabilityHandle() <em>Requiremen Tracability Handle</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getRequiremenTracabilityHandle()
+	 * @generated
+	 * @ordered
+	 */
+	protected String requiremenTracabilityHandle = REQUIREMEN_TRACABILITY_HANDLE_EDEFAULT;
+
+	/**
+	 * The cached value of the '{@link #getCodeUpdateCGTime() <em>Code Update CG Time</em>}' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getCodeUpdateCGTime()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<String> codeUpdateCGTime;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected IFolderImpl() {
+		super();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EClass eStaticClass() {
+		return UMLRpyPackage.eINSTANCE.getIFolder();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<ElementsType> getElements() {
+		if (elements == null) {
+			elements = new EObjectResolvingEList<ElementsType>(ElementsType.class, this, UMLRpyPackage.IFOLDER__ELEMENTS);
+		}
+		return elements;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<FilesType> getFiles() {
+		if (files == null) {
+			files = new EObjectContainmentEList.Resolving<FilesType>(FilesType.class, this, UMLRpyPackage.IFOLDER__FILES);
+		}
+		return files;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getRequiremenTracabilityHandle() {
+		return requiremenTracabilityHandle;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setRequiremenTracabilityHandle(String newRequiremenTracabilityHandle) {
+		String oldRequiremenTracabilityHandle = requiremenTracabilityHandle;
+		requiremenTracabilityHandle = newRequiremenTracabilityHandle;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IFOLDER__REQUIREMEN_TRACABILITY_HANDLE, oldRequiremenTracabilityHandle, requiremenTracabilityHandle));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<String> getCodeUpdateCGTime() {
+		if (codeUpdateCGTime == null) {
+			codeUpdateCGTime = new EDataTypeEList<String>(String.class, this, UMLRpyPackage.IFOLDER__CODE_UPDATE_CG_TIME);
+		}
+		return codeUpdateCGTime;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
+		switch (featureID) {
+			case UMLRpyPackage.IFOLDER__FILES:
+				return ((InternalEList<?>)getFiles()).basicRemove(otherEnd, msgs);
+		}
+		return super.eInverseRemove(otherEnd, featureID, msgs);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object eGet(int featureID, boolean resolve, boolean coreType) {
+		switch (featureID) {
+			case UMLRpyPackage.IFOLDER__ELEMENTS:
+				return getElements();
+			case UMLRpyPackage.IFOLDER__FILES:
+				return getFiles();
+			case UMLRpyPackage.IFOLDER__REQUIREMEN_TRACABILITY_HANDLE:
+				return getRequiremenTracabilityHandle();
+			case UMLRpyPackage.IFOLDER__CODE_UPDATE_CG_TIME:
+				return getCodeUpdateCGTime();
+		}
+		return super.eGet(featureID, resolve, coreType);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@SuppressWarnings("unchecked")
+	@Override
+	public void eSet(int featureID, Object newValue) {
+		switch (featureID) {
+			case UMLRpyPackage.IFOLDER__ELEMENTS:
+				getElements().clear();
+				getElements().addAll((Collection<? extends ElementsType>)newValue);
+				return;
+			case UMLRpyPackage.IFOLDER__FILES:
+				getFiles().clear();
+				getFiles().addAll((Collection<? extends FilesType>)newValue);
+				return;
+			case UMLRpyPackage.IFOLDER__REQUIREMEN_TRACABILITY_HANDLE:
+				setRequiremenTracabilityHandle((String)newValue);
+				return;
+			case UMLRpyPackage.IFOLDER__CODE_UPDATE_CG_TIME:
+				getCodeUpdateCGTime().clear();
+				getCodeUpdateCGTime().addAll((Collection<? extends String>)newValue);
+				return;
+		}
+		super.eSet(featureID, newValue);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void eUnset(int featureID) {
+		switch (featureID) {
+			case UMLRpyPackage.IFOLDER__ELEMENTS:
+				getElements().clear();
+				return;
+			case UMLRpyPackage.IFOLDER__FILES:
+				getFiles().clear();
+				return;
+			case UMLRpyPackage.IFOLDER__REQUIREMEN_TRACABILITY_HANDLE:
+				setRequiremenTracabilityHandle(REQUIREMEN_TRACABILITY_HANDLE_EDEFAULT);
+				return;
+			case UMLRpyPackage.IFOLDER__CODE_UPDATE_CG_TIME:
+				getCodeUpdateCGTime().clear();
+				return;
+		}
+		super.eUnset(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public boolean eIsSet(int featureID) {
+		switch (featureID) {
+			case UMLRpyPackage.IFOLDER__ELEMENTS:
+				return elements != null && !elements.isEmpty();
+			case UMLRpyPackage.IFOLDER__FILES:
+				return files != null && !files.isEmpty();
+			case UMLRpyPackage.IFOLDER__REQUIREMEN_TRACABILITY_HANDLE:
+				return REQUIREMEN_TRACABILITY_HANDLE_EDEFAULT == null ? requiremenTracabilityHandle != null : !REQUIREMEN_TRACABILITY_HANDLE_EDEFAULT.equals(requiremenTracabilityHandle);
+			case UMLRpyPackage.IFOLDER__CODE_UPDATE_CG_TIME:
+				return codeUpdateCGTime != null && !codeUpdateCGTime.isEmpty();
+		}
+		return super.eIsSet(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String toString() {
+		if (eIsProxy()) return super.toString();
+
+		StringBuffer result = new StringBuffer(super.toString());
+		result.append(" (requiremenTracabilityHandle: "); //$NON-NLS-1$
+		result.append(requiremenTracabilityHandle);
+		result.append(", codeUpdateCGTime: "); //$NON-NLS-1$
+		result.append(codeUpdateCGTime);
+		result.append(')');
+		return result.toString();
+	}
+
+} //IFolderImpl
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/IForkImpl.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/IForkImpl.java
new file mode 100755
index 0000000..376720d
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/IForkImpl.java
@@ -0,0 +1,662 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl;
+
+import org.eclipse.emf.common.notify.Notification;
+import org.eclipse.emf.common.notify.NotificationChain;
+
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.InternalEObject;
+
+import org.eclipse.emf.ecore.impl.ENotificationImpl;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IDescription;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IFork;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IState;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>IFork</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * </p>
+ * <ul>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IForkImpl#getId <em>Id</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IForkImpl#getMyState <em>My State</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IForkImpl#getName <em>Name</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IForkImpl#getModifiedTimeWeak <em>Modified Time Weak</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IForkImpl#getDescription <em>Description</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IForkImpl#getParent <em>Parent</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IForkImpl#getConnectorType <em>Connector Type</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IForkImpl#getObjectCreation <em>Object Creation</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IForkImpl#getUmlDependencyID <em>Uml Dependency ID</em>}</li>
+ * </ul>
+ *
+ * @generated
+ */
+public class IForkImpl extends ItsTargetTypeImpl implements IFork {
+	/**
+	 * The default value of the '{@link #getId() <em>Id</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getId()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String ID_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getId() <em>Id</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getId()
+	 * @generated
+	 * @ordered
+	 */
+	protected String id = ID_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getMyState() <em>My State</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getMyState()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String MY_STATE_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getMyState() <em>My State</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getMyState()
+	 * @generated
+	 * @ordered
+	 */
+	protected String myState = MY_STATE_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getName() <em>Name</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getName()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String NAME_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getName() <em>Name</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getName()
+	 * @generated
+	 * @ordered
+	 */
+	protected String name = NAME_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getModifiedTimeWeak() <em>Modified Time Weak</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getModifiedTimeWeak()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String MODIFIED_TIME_WEAK_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getModifiedTimeWeak() <em>Modified Time Weak</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getModifiedTimeWeak()
+	 * @generated
+	 * @ordered
+	 */
+	protected String modifiedTimeWeak = MODIFIED_TIME_WEAK_EDEFAULT;
+
+	/**
+	 * The cached value of the '{@link #getDescription() <em>Description</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getDescription()
+	 * @generated
+	 * @ordered
+	 */
+	protected IDescription description;
+
+	/**
+	 * The cached value of the '{@link #getParent() <em>Parent</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getParent()
+	 * @generated
+	 * @ordered
+	 */
+	protected IState parent;
+
+	/**
+	 * The default value of the '{@link #getConnectorType() <em>Connector Type</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getConnectorType()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String CONNECTOR_TYPE_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getConnectorType() <em>Connector Type</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getConnectorType()
+	 * @generated
+	 * @ordered
+	 */
+	protected String connectorType = CONNECTOR_TYPE_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getObjectCreation() <em>Object Creation</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getObjectCreation()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String OBJECT_CREATION_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getObjectCreation() <em>Object Creation</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getObjectCreation()
+	 * @generated
+	 * @ordered
+	 */
+	protected String objectCreation = OBJECT_CREATION_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getUmlDependencyID() <em>Uml Dependency ID</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getUmlDependencyID()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String UML_DEPENDENCY_ID_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getUmlDependencyID() <em>Uml Dependency ID</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getUmlDependencyID()
+	 * @generated
+	 * @ordered
+	 */
+	protected String umlDependencyID = UML_DEPENDENCY_ID_EDEFAULT;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected IForkImpl() {
+		super();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EClass eStaticClass() {
+		return UMLRpyPackage.eINSTANCE.getIFork();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getId() {
+		return id;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setId(String newId) {
+		String oldId = id;
+		id = newId;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IFORK__ID, oldId, id));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getMyState() {
+		return myState;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setMyState(String newMyState) {
+		String oldMyState = myState;
+		myState = newMyState;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IFORK__MY_STATE, oldMyState, myState));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getName() {
+		return name;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setName(String newName) {
+		String oldName = name;
+		name = newName;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IFORK__NAME, oldName, name));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getModifiedTimeWeak() {
+		return modifiedTimeWeak;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setModifiedTimeWeak(String newModifiedTimeWeak) {
+		String oldModifiedTimeWeak = modifiedTimeWeak;
+		modifiedTimeWeak = newModifiedTimeWeak;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IFORK__MODIFIED_TIME_WEAK, oldModifiedTimeWeak, modifiedTimeWeak));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IDescription getDescription() {
+		if (description != null && description.eIsProxy()) {
+			InternalEObject oldDescription = (InternalEObject)description;
+			description = (IDescription)eResolveProxy(oldDescription);
+			if (description != oldDescription) {
+				InternalEObject newDescription = (InternalEObject)description;
+				NotificationChain msgs = oldDescription.eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IFORK__DESCRIPTION, null, null);
+				if (newDescription.eInternalContainer() == null) {
+					msgs = newDescription.eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IFORK__DESCRIPTION, null, msgs);
+				}
+				if (msgs != null) msgs.dispatch();
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.IFORK__DESCRIPTION, oldDescription, description));
+			}
+		}
+		return description;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IDescription basicGetDescription() {
+		return description;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public NotificationChain basicSetDescription(IDescription newDescription, NotificationChain msgs) {
+		IDescription oldDescription = description;
+		description = newDescription;
+		if (eNotificationRequired()) {
+			ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IFORK__DESCRIPTION, oldDescription, newDescription);
+			if (msgs == null) msgs = notification; else msgs.add(notification);
+		}
+		return msgs;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setDescription(IDescription newDescription) {
+		if (newDescription != description) {
+			NotificationChain msgs = null;
+			if (description != null)
+				msgs = ((InternalEObject)description).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IFORK__DESCRIPTION, null, msgs);
+			if (newDescription != null)
+				msgs = ((InternalEObject)newDescription).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IFORK__DESCRIPTION, null, msgs);
+			msgs = basicSetDescription(newDescription, msgs);
+			if (msgs != null) msgs.dispatch();
+		}
+		else if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IFORK__DESCRIPTION, newDescription, newDescription));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IState getParent() {
+		if (parent != null && parent.eIsProxy()) {
+			InternalEObject oldParent = (InternalEObject)parent;
+			parent = (IState)eResolveProxy(oldParent);
+			if (parent != oldParent) {
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.IFORK__PARENT, oldParent, parent));
+			}
+		}
+		return parent;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IState basicGetParent() {
+		return parent;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setParent(IState newParent) {
+		IState oldParent = parent;
+		parent = newParent;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IFORK__PARENT, oldParent, parent));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getConnectorType() {
+		return connectorType;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setConnectorType(String newConnectorType) {
+		String oldConnectorType = connectorType;
+		connectorType = newConnectorType;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IFORK__CONNECTOR_TYPE, oldConnectorType, connectorType));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getObjectCreation() {
+		return objectCreation;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setObjectCreation(String newObjectCreation) {
+		String oldObjectCreation = objectCreation;
+		objectCreation = newObjectCreation;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IFORK__OBJECT_CREATION, oldObjectCreation, objectCreation));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getUmlDependencyID() {
+		return umlDependencyID;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setUmlDependencyID(String newUmlDependencyID) {
+		String oldUmlDependencyID = umlDependencyID;
+		umlDependencyID = newUmlDependencyID;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IFORK__UML_DEPENDENCY_ID, oldUmlDependencyID, umlDependencyID));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
+		switch (featureID) {
+			case UMLRpyPackage.IFORK__DESCRIPTION:
+				return basicSetDescription(null, msgs);
+		}
+		return super.eInverseRemove(otherEnd, featureID, msgs);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object eGet(int featureID, boolean resolve, boolean coreType) {
+		switch (featureID) {
+			case UMLRpyPackage.IFORK__ID:
+				return getId();
+			case UMLRpyPackage.IFORK__MY_STATE:
+				return getMyState();
+			case UMLRpyPackage.IFORK__NAME:
+				return getName();
+			case UMLRpyPackage.IFORK__MODIFIED_TIME_WEAK:
+				return getModifiedTimeWeak();
+			case UMLRpyPackage.IFORK__DESCRIPTION:
+				if (resolve) return getDescription();
+				return basicGetDescription();
+			case UMLRpyPackage.IFORK__PARENT:
+				if (resolve) return getParent();
+				return basicGetParent();
+			case UMLRpyPackage.IFORK__CONNECTOR_TYPE:
+				return getConnectorType();
+			case UMLRpyPackage.IFORK__OBJECT_CREATION:
+				return getObjectCreation();
+			case UMLRpyPackage.IFORK__UML_DEPENDENCY_ID:
+				return getUmlDependencyID();
+		}
+		return super.eGet(featureID, resolve, coreType);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void eSet(int featureID, Object newValue) {
+		switch (featureID) {
+			case UMLRpyPackage.IFORK__ID:
+				setId((String)newValue);
+				return;
+			case UMLRpyPackage.IFORK__MY_STATE:
+				setMyState((String)newValue);
+				return;
+			case UMLRpyPackage.IFORK__NAME:
+				setName((String)newValue);
+				return;
+			case UMLRpyPackage.IFORK__MODIFIED_TIME_WEAK:
+				setModifiedTimeWeak((String)newValue);
+				return;
+			case UMLRpyPackage.IFORK__DESCRIPTION:
+				setDescription((IDescription)newValue);
+				return;
+			case UMLRpyPackage.IFORK__PARENT:
+				setParent((IState)newValue);
+				return;
+			case UMLRpyPackage.IFORK__CONNECTOR_TYPE:
+				setConnectorType((String)newValue);
+				return;
+			case UMLRpyPackage.IFORK__OBJECT_CREATION:
+				setObjectCreation((String)newValue);
+				return;
+			case UMLRpyPackage.IFORK__UML_DEPENDENCY_ID:
+				setUmlDependencyID((String)newValue);
+				return;
+		}
+		super.eSet(featureID, newValue);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void eUnset(int featureID) {
+		switch (featureID) {
+			case UMLRpyPackage.IFORK__ID:
+				setId(ID_EDEFAULT);
+				return;
+			case UMLRpyPackage.IFORK__MY_STATE:
+				setMyState(MY_STATE_EDEFAULT);
+				return;
+			case UMLRpyPackage.IFORK__NAME:
+				setName(NAME_EDEFAULT);
+				return;
+			case UMLRpyPackage.IFORK__MODIFIED_TIME_WEAK:
+				setModifiedTimeWeak(MODIFIED_TIME_WEAK_EDEFAULT);
+				return;
+			case UMLRpyPackage.IFORK__DESCRIPTION:
+				setDescription((IDescription)null);
+				return;
+			case UMLRpyPackage.IFORK__PARENT:
+				setParent((IState)null);
+				return;
+			case UMLRpyPackage.IFORK__CONNECTOR_TYPE:
+				setConnectorType(CONNECTOR_TYPE_EDEFAULT);
+				return;
+			case UMLRpyPackage.IFORK__OBJECT_CREATION:
+				setObjectCreation(OBJECT_CREATION_EDEFAULT);
+				return;
+			case UMLRpyPackage.IFORK__UML_DEPENDENCY_ID:
+				setUmlDependencyID(UML_DEPENDENCY_ID_EDEFAULT);
+				return;
+		}
+		super.eUnset(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public boolean eIsSet(int featureID) {
+		switch (featureID) {
+			case UMLRpyPackage.IFORK__ID:
+				return ID_EDEFAULT == null ? id != null : !ID_EDEFAULT.equals(id);
+			case UMLRpyPackage.IFORK__MY_STATE:
+				return MY_STATE_EDEFAULT == null ? myState != null : !MY_STATE_EDEFAULT.equals(myState);
+			case UMLRpyPackage.IFORK__NAME:
+				return NAME_EDEFAULT == null ? name != null : !NAME_EDEFAULT.equals(name);
+			case UMLRpyPackage.IFORK__MODIFIED_TIME_WEAK:
+				return MODIFIED_TIME_WEAK_EDEFAULT == null ? modifiedTimeWeak != null : !MODIFIED_TIME_WEAK_EDEFAULT.equals(modifiedTimeWeak);
+			case UMLRpyPackage.IFORK__DESCRIPTION:
+				return description != null;
+			case UMLRpyPackage.IFORK__PARENT:
+				return parent != null;
+			case UMLRpyPackage.IFORK__CONNECTOR_TYPE:
+				return CONNECTOR_TYPE_EDEFAULT == null ? connectorType != null : !CONNECTOR_TYPE_EDEFAULT.equals(connectorType);
+			case UMLRpyPackage.IFORK__OBJECT_CREATION:
+				return OBJECT_CREATION_EDEFAULT == null ? objectCreation != null : !OBJECT_CREATION_EDEFAULT.equals(objectCreation);
+			case UMLRpyPackage.IFORK__UML_DEPENDENCY_ID:
+				return UML_DEPENDENCY_ID_EDEFAULT == null ? umlDependencyID != null : !UML_DEPENDENCY_ID_EDEFAULT.equals(umlDependencyID);
+		}
+		return super.eIsSet(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String toString() {
+		if (eIsProxy()) return super.toString();
+
+		StringBuffer result = new StringBuffer(super.toString());
+		result.append(" (id: "); //$NON-NLS-1$
+		result.append(id);
+		result.append(", myState: "); //$NON-NLS-1$
+		result.append(myState);
+		result.append(", name: "); //$NON-NLS-1$
+		result.append(name);
+		result.append(", modifiedTimeWeak: "); //$NON-NLS-1$
+		result.append(modifiedTimeWeak);
+		result.append(", connectorType: "); //$NON-NLS-1$
+		result.append(connectorType);
+		result.append(", objectCreation: "); //$NON-NLS-1$
+		result.append(objectCreation);
+		result.append(", umlDependencyID: "); //$NON-NLS-1$
+		result.append(umlDependencyID);
+		result.append(')');
+		return result.toString();
+	}
+
+} //IForkImpl
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/IGeneralizationImpl.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/IGeneralizationImpl.java
new file mode 100755
index 0000000..2132984
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/IGeneralizationImpl.java
@@ -0,0 +1,788 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl;
+
+import java.util.Collection;
+
+import org.eclipse.emf.common.notify.Notification;
+import org.eclipse.emf.common.notify.NotificationChain;
+
+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.EDataTypeEList;
+import org.eclipse.emf.ecore.util.EObjectContainmentEList;
+import org.eclipse.emf.ecore.util.InternalEList;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IConstraint;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IDescription;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IGeneralization;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IStereotype;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITemplateInst;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IUnit;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>IGeneralization</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * </p>
+ * <ul>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IGeneralizationImpl#getId <em>Id</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IGeneralizationImpl#getModifiedTimeWeak <em>Modified Time Weak</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IGeneralizationImpl#getDependsOn <em>Depends On</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IGeneralizationImpl#getInheritanceType <em>Inheritance Type</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IGeneralizationImpl#getIsVirtual <em>Is Virtual</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IGeneralizationImpl#getStereotypes <em>Stereotypes</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IGeneralizationImpl#getDescription <em>Description</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IGeneralizationImpl#getObjectCreation <em>Object Creation</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IGeneralizationImpl#getUmlDependencyID <em>Uml Dependency ID</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IGeneralizationImpl#getTi <em>Ti</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IGeneralizationImpl#getAnnotations <em>Annotations</em>}</li>
+ * </ul>
+ *
+ * @generated
+ */
+public class IGeneralizationImpl extends IModelElementImpl implements IGeneralization {
+	/**
+	 * The default value of the '{@link #getId() <em>Id</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getId()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String ID_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getId() <em>Id</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getId()
+	 * @generated
+	 * @ordered
+	 */
+	protected String id = ID_EDEFAULT;
+
+	/**
+	 * The cached value of the '{@link #getModifiedTimeWeak() <em>Modified Time Weak</em>}' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getModifiedTimeWeak()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<String> modifiedTimeWeak;
+
+	/**
+	 * The cached value of the '{@link #getDependsOn() <em>Depends On</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getDependsOn()
+	 * @generated
+	 * @ordered
+	 */
+	protected IUnit dependsOn;
+
+	/**
+	 * The default value of the '{@link #getInheritanceType() <em>Inheritance Type</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getInheritanceType()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String INHERITANCE_TYPE_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getInheritanceType() <em>Inheritance Type</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getInheritanceType()
+	 * @generated
+	 * @ordered
+	 */
+	protected String inheritanceType = INHERITANCE_TYPE_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getIsVirtual() <em>Is Virtual</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getIsVirtual()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String IS_VIRTUAL_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getIsVirtual() <em>Is Virtual</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getIsVirtual()
+	 * @generated
+	 * @ordered
+	 */
+	protected String isVirtual = IS_VIRTUAL_EDEFAULT;
+
+	/**
+	 * The cached value of the '{@link #getStereotypes() <em>Stereotypes</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getStereotypes()
+	 * @generated
+	 * @ordered
+	 */
+	protected IStereotype stereotypes;
+
+	/**
+	 * The cached value of the '{@link #getDescription() <em>Description</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getDescription()
+	 * @generated
+	 * @ordered
+	 */
+	protected IDescription description;
+
+	/**
+	 * The default value of the '{@link #getObjectCreation() <em>Object Creation</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getObjectCreation()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String OBJECT_CREATION_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getObjectCreation() <em>Object Creation</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getObjectCreation()
+	 * @generated
+	 * @ordered
+	 */
+	protected String objectCreation = OBJECT_CREATION_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getUmlDependencyID() <em>Uml Dependency ID</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getUmlDependencyID()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String UML_DEPENDENCY_ID_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getUmlDependencyID() <em>Uml Dependency ID</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getUmlDependencyID()
+	 * @generated
+	 * @ordered
+	 */
+	protected String umlDependencyID = UML_DEPENDENCY_ID_EDEFAULT;
+
+	/**
+	 * The cached value of the '{@link #getTi() <em>Ti</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getTi()
+	 * @generated
+	 * @ordered
+	 */
+	protected ITemplateInst ti;
+
+	/**
+	 * The cached value of the '{@link #getAnnotations() <em>Annotations</em>}' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getAnnotations()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<IConstraint> annotations;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected IGeneralizationImpl() {
+		super();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EClass eStaticClass() {
+		return UMLRpyPackage.eINSTANCE.getIGeneralization();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getId() {
+		return id;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setId(String newId) {
+		String oldId = id;
+		id = newId;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IGENERALIZATION__ID, oldId, id));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<String> getModifiedTimeWeak() {
+		if (modifiedTimeWeak == null) {
+			modifiedTimeWeak = new EDataTypeEList<String>(String.class, this, UMLRpyPackage.IGENERALIZATION__MODIFIED_TIME_WEAK);
+		}
+		return modifiedTimeWeak;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IUnit getDependsOn() {
+		if (dependsOn != null && dependsOn.eIsProxy()) {
+			InternalEObject oldDependsOn = (InternalEObject)dependsOn;
+			dependsOn = (IUnit)eResolveProxy(oldDependsOn);
+			if (dependsOn != oldDependsOn) {
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.IGENERALIZATION__DEPENDS_ON, oldDependsOn, dependsOn));
+			}
+		}
+		return dependsOn;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IUnit basicGetDependsOn() {
+		return dependsOn;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setDependsOn(IUnit newDependsOn) {
+		IUnit oldDependsOn = dependsOn;
+		dependsOn = newDependsOn;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IGENERALIZATION__DEPENDS_ON, oldDependsOn, dependsOn));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getInheritanceType() {
+		return inheritanceType;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setInheritanceType(String newInheritanceType) {
+		String oldInheritanceType = inheritanceType;
+		inheritanceType = newInheritanceType;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IGENERALIZATION__INHERITANCE_TYPE, oldInheritanceType, inheritanceType));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getIsVirtual() {
+		return isVirtual;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setIsVirtual(String newIsVirtual) {
+		String oldIsVirtual = isVirtual;
+		isVirtual = newIsVirtual;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IGENERALIZATION__IS_VIRTUAL, oldIsVirtual, isVirtual));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IStereotype getStereotypes() {
+		if (stereotypes != null && stereotypes.eIsProxy()) {
+			InternalEObject oldStereotypes = (InternalEObject)stereotypes;
+			stereotypes = (IStereotype)eResolveProxy(oldStereotypes);
+			if (stereotypes != oldStereotypes) {
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.IGENERALIZATION__STEREOTYPES, oldStereotypes, stereotypes));
+			}
+		}
+		return stereotypes;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IStereotype basicGetStereotypes() {
+		return stereotypes;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setStereotypes(IStereotype newStereotypes) {
+		IStereotype oldStereotypes = stereotypes;
+		stereotypes = newStereotypes;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IGENERALIZATION__STEREOTYPES, oldStereotypes, stereotypes));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IDescription getDescription() {
+		if (description != null && description.eIsProxy()) {
+			InternalEObject oldDescription = (InternalEObject)description;
+			description = (IDescription)eResolveProxy(oldDescription);
+			if (description != oldDescription) {
+				InternalEObject newDescription = (InternalEObject)description;
+				NotificationChain msgs = oldDescription.eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IGENERALIZATION__DESCRIPTION, null, null);
+				if (newDescription.eInternalContainer() == null) {
+					msgs = newDescription.eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IGENERALIZATION__DESCRIPTION, null, msgs);
+				}
+				if (msgs != null) msgs.dispatch();
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.IGENERALIZATION__DESCRIPTION, oldDescription, description));
+			}
+		}
+		return description;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IDescription basicGetDescription() {
+		return description;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public NotificationChain basicSetDescription(IDescription newDescription, NotificationChain msgs) {
+		IDescription oldDescription = description;
+		description = newDescription;
+		if (eNotificationRequired()) {
+			ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IGENERALIZATION__DESCRIPTION, oldDescription, newDescription);
+			if (msgs == null) msgs = notification; else msgs.add(notification);
+		}
+		return msgs;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setDescription(IDescription newDescription) {
+		if (newDescription != description) {
+			NotificationChain msgs = null;
+			if (description != null)
+				msgs = ((InternalEObject)description).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IGENERALIZATION__DESCRIPTION, null, msgs);
+			if (newDescription != null)
+				msgs = ((InternalEObject)newDescription).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IGENERALIZATION__DESCRIPTION, null, msgs);
+			msgs = basicSetDescription(newDescription, msgs);
+			if (msgs != null) msgs.dispatch();
+		}
+		else if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IGENERALIZATION__DESCRIPTION, newDescription, newDescription));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getObjectCreation() {
+		return objectCreation;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setObjectCreation(String newObjectCreation) {
+		String oldObjectCreation = objectCreation;
+		objectCreation = newObjectCreation;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IGENERALIZATION__OBJECT_CREATION, oldObjectCreation, objectCreation));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getUmlDependencyID() {
+		return umlDependencyID;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setUmlDependencyID(String newUmlDependencyID) {
+		String oldUmlDependencyID = umlDependencyID;
+		umlDependencyID = newUmlDependencyID;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IGENERALIZATION__UML_DEPENDENCY_ID, oldUmlDependencyID, umlDependencyID));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public ITemplateInst getTi() {
+		if (ti != null && ti.eIsProxy()) {
+			InternalEObject oldTi = (InternalEObject)ti;
+			ti = (ITemplateInst)eResolveProxy(oldTi);
+			if (ti != oldTi) {
+				InternalEObject newTi = (InternalEObject)ti;
+				NotificationChain msgs = oldTi.eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IGENERALIZATION__TI, null, null);
+				if (newTi.eInternalContainer() == null) {
+					msgs = newTi.eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IGENERALIZATION__TI, null, msgs);
+				}
+				if (msgs != null) msgs.dispatch();
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.IGENERALIZATION__TI, oldTi, ti));
+			}
+		}
+		return ti;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public ITemplateInst basicGetTi() {
+		return ti;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public NotificationChain basicSetTi(ITemplateInst newTi, NotificationChain msgs) {
+		ITemplateInst oldTi = ti;
+		ti = newTi;
+		if (eNotificationRequired()) {
+			ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IGENERALIZATION__TI, oldTi, newTi);
+			if (msgs == null) msgs = notification; else msgs.add(notification);
+		}
+		return msgs;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setTi(ITemplateInst newTi) {
+		if (newTi != ti) {
+			NotificationChain msgs = null;
+			if (ti != null)
+				msgs = ((InternalEObject)ti).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IGENERALIZATION__TI, null, msgs);
+			if (newTi != null)
+				msgs = ((InternalEObject)newTi).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IGENERALIZATION__TI, null, msgs);
+			msgs = basicSetTi(newTi, msgs);
+			if (msgs != null) msgs.dispatch();
+		}
+		else if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IGENERALIZATION__TI, newTi, newTi));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<IConstraint> getAnnotations() {
+		if (annotations == null) {
+			annotations = new EObjectContainmentEList.Resolving<IConstraint>(IConstraint.class, this, UMLRpyPackage.IGENERALIZATION__ANNOTATIONS);
+		}
+		return annotations;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
+		switch (featureID) {
+			case UMLRpyPackage.IGENERALIZATION__DESCRIPTION:
+				return basicSetDescription(null, msgs);
+			case UMLRpyPackage.IGENERALIZATION__TI:
+				return basicSetTi(null, msgs);
+			case UMLRpyPackage.IGENERALIZATION__ANNOTATIONS:
+				return ((InternalEList<?>)getAnnotations()).basicRemove(otherEnd, msgs);
+		}
+		return super.eInverseRemove(otherEnd, featureID, msgs);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object eGet(int featureID, boolean resolve, boolean coreType) {
+		switch (featureID) {
+			case UMLRpyPackage.IGENERALIZATION__ID:
+				return getId();
+			case UMLRpyPackage.IGENERALIZATION__MODIFIED_TIME_WEAK:
+				return getModifiedTimeWeak();
+			case UMLRpyPackage.IGENERALIZATION__DEPENDS_ON:
+				if (resolve) return getDependsOn();
+				return basicGetDependsOn();
+			case UMLRpyPackage.IGENERALIZATION__INHERITANCE_TYPE:
+				return getInheritanceType();
+			case UMLRpyPackage.IGENERALIZATION__IS_VIRTUAL:
+				return getIsVirtual();
+			case UMLRpyPackage.IGENERALIZATION__STEREOTYPES:
+				if (resolve) return getStereotypes();
+				return basicGetStereotypes();
+			case UMLRpyPackage.IGENERALIZATION__DESCRIPTION:
+				if (resolve) return getDescription();
+				return basicGetDescription();
+			case UMLRpyPackage.IGENERALIZATION__OBJECT_CREATION:
+				return getObjectCreation();
+			case UMLRpyPackage.IGENERALIZATION__UML_DEPENDENCY_ID:
+				return getUmlDependencyID();
+			case UMLRpyPackage.IGENERALIZATION__TI:
+				if (resolve) return getTi();
+				return basicGetTi();
+			case UMLRpyPackage.IGENERALIZATION__ANNOTATIONS:
+				return getAnnotations();
+		}
+		return super.eGet(featureID, resolve, coreType);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@SuppressWarnings("unchecked")
+	@Override
+	public void eSet(int featureID, Object newValue) {
+		switch (featureID) {
+			case UMLRpyPackage.IGENERALIZATION__ID:
+				setId((String)newValue);
+				return;
+			case UMLRpyPackage.IGENERALIZATION__MODIFIED_TIME_WEAK:
+				getModifiedTimeWeak().clear();
+				getModifiedTimeWeak().addAll((Collection<? extends String>)newValue);
+				return;
+			case UMLRpyPackage.IGENERALIZATION__DEPENDS_ON:
+				setDependsOn((IUnit)newValue);
+				return;
+			case UMLRpyPackage.IGENERALIZATION__INHERITANCE_TYPE:
+				setInheritanceType((String)newValue);
+				return;
+			case UMLRpyPackage.IGENERALIZATION__IS_VIRTUAL:
+				setIsVirtual((String)newValue);
+				return;
+			case UMLRpyPackage.IGENERALIZATION__STEREOTYPES:
+				setStereotypes((IStereotype)newValue);
+				return;
+			case UMLRpyPackage.IGENERALIZATION__DESCRIPTION:
+				setDescription((IDescription)newValue);
+				return;
+			case UMLRpyPackage.IGENERALIZATION__OBJECT_CREATION:
+				setObjectCreation((String)newValue);
+				return;
+			case UMLRpyPackage.IGENERALIZATION__UML_DEPENDENCY_ID:
+				setUmlDependencyID((String)newValue);
+				return;
+			case UMLRpyPackage.IGENERALIZATION__TI:
+				setTi((ITemplateInst)newValue);
+				return;
+			case UMLRpyPackage.IGENERALIZATION__ANNOTATIONS:
+				getAnnotations().clear();
+				getAnnotations().addAll((Collection<? extends IConstraint>)newValue);
+				return;
+		}
+		super.eSet(featureID, newValue);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void eUnset(int featureID) {
+		switch (featureID) {
+			case UMLRpyPackage.IGENERALIZATION__ID:
+				setId(ID_EDEFAULT);
+				return;
+			case UMLRpyPackage.IGENERALIZATION__MODIFIED_TIME_WEAK:
+				getModifiedTimeWeak().clear();
+				return;
+			case UMLRpyPackage.IGENERALIZATION__DEPENDS_ON:
+				setDependsOn((IUnit)null);
+				return;
+			case UMLRpyPackage.IGENERALIZATION__INHERITANCE_TYPE:
+				setInheritanceType(INHERITANCE_TYPE_EDEFAULT);
+				return;
+			case UMLRpyPackage.IGENERALIZATION__IS_VIRTUAL:
+				setIsVirtual(IS_VIRTUAL_EDEFAULT);
+				return;
+			case UMLRpyPackage.IGENERALIZATION__STEREOTYPES:
+				setStereotypes((IStereotype)null);
+				return;
+			case UMLRpyPackage.IGENERALIZATION__DESCRIPTION:
+				setDescription((IDescription)null);
+				return;
+			case UMLRpyPackage.IGENERALIZATION__OBJECT_CREATION:
+				setObjectCreation(OBJECT_CREATION_EDEFAULT);
+				return;
+			case UMLRpyPackage.IGENERALIZATION__UML_DEPENDENCY_ID:
+				setUmlDependencyID(UML_DEPENDENCY_ID_EDEFAULT);
+				return;
+			case UMLRpyPackage.IGENERALIZATION__TI:
+				setTi((ITemplateInst)null);
+				return;
+			case UMLRpyPackage.IGENERALIZATION__ANNOTATIONS:
+				getAnnotations().clear();
+				return;
+		}
+		super.eUnset(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public boolean eIsSet(int featureID) {
+		switch (featureID) {
+			case UMLRpyPackage.IGENERALIZATION__ID:
+				return ID_EDEFAULT == null ? id != null : !ID_EDEFAULT.equals(id);
+			case UMLRpyPackage.IGENERALIZATION__MODIFIED_TIME_WEAK:
+				return modifiedTimeWeak != null && !modifiedTimeWeak.isEmpty();
+			case UMLRpyPackage.IGENERALIZATION__DEPENDS_ON:
+				return dependsOn != null;
+			case UMLRpyPackage.IGENERALIZATION__INHERITANCE_TYPE:
+				return INHERITANCE_TYPE_EDEFAULT == null ? inheritanceType != null : !INHERITANCE_TYPE_EDEFAULT.equals(inheritanceType);
+			case UMLRpyPackage.IGENERALIZATION__IS_VIRTUAL:
+				return IS_VIRTUAL_EDEFAULT == null ? isVirtual != null : !IS_VIRTUAL_EDEFAULT.equals(isVirtual);
+			case UMLRpyPackage.IGENERALIZATION__STEREOTYPES:
+				return stereotypes != null;
+			case UMLRpyPackage.IGENERALIZATION__DESCRIPTION:
+				return description != null;
+			case UMLRpyPackage.IGENERALIZATION__OBJECT_CREATION:
+				return OBJECT_CREATION_EDEFAULT == null ? objectCreation != null : !OBJECT_CREATION_EDEFAULT.equals(objectCreation);
+			case UMLRpyPackage.IGENERALIZATION__UML_DEPENDENCY_ID:
+				return UML_DEPENDENCY_ID_EDEFAULT == null ? umlDependencyID != null : !UML_DEPENDENCY_ID_EDEFAULT.equals(umlDependencyID);
+			case UMLRpyPackage.IGENERALIZATION__TI:
+				return ti != null;
+			case UMLRpyPackage.IGENERALIZATION__ANNOTATIONS:
+				return annotations != null && !annotations.isEmpty();
+		}
+		return super.eIsSet(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String toString() {
+		if (eIsProxy()) return super.toString();
+
+		StringBuffer result = new StringBuffer(super.toString());
+		result.append(" (id: "); //$NON-NLS-1$
+		result.append(id);
+		result.append(", modifiedTimeWeak: "); //$NON-NLS-1$
+		result.append(modifiedTimeWeak);
+		result.append(", inheritanceType: "); //$NON-NLS-1$
+		result.append(inheritanceType);
+		result.append(", isVirtual: "); //$NON-NLS-1$
+		result.append(isVirtual);
+		result.append(", objectCreation: "); //$NON-NLS-1$
+		result.append(objectCreation);
+		result.append(", umlDependencyID: "); //$NON-NLS-1$
+		result.append(umlDependencyID);
+		result.append(')');
+		return result.toString();
+	}
+
+} //IGeneralizationImpl
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/IGuardImpl.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/IGuardImpl.java
new file mode 100755
index 0000000..775b84b
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/IGuardImpl.java
@@ -0,0 +1,377 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl;
+
+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.impl.ENotificationImpl;
+
+import org.eclipse.emf.ecore.util.EDataTypeEList;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IGuard;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>IGuard</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * </p>
+ * <ul>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IGuardImpl#getId <em>Id</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IGuardImpl#getBody <em>Body</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IGuardImpl#getModifiedTimeWeak <em>Modified Time Weak</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IGuardImpl#getObjectCreation <em>Object Creation</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IGuardImpl#getUmlDependencyID <em>Uml Dependency ID</em>}</li>
+ * </ul>
+ *
+ * @generated
+ */
+public class IGuardImpl extends IModelElementImpl implements IGuard {
+	/**
+	 * The default value of the '{@link #getId() <em>Id</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getId()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String ID_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getId() <em>Id</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getId()
+	 * @generated
+	 * @ordered
+	 */
+	protected String id = ID_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getBody() <em>Body</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getBody()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String BODY_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getBody() <em>Body</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getBody()
+	 * @generated
+	 * @ordered
+	 */
+	protected String body = BODY_EDEFAULT;
+
+	/**
+	 * The cached value of the '{@link #getModifiedTimeWeak() <em>Modified Time Weak</em>}' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getModifiedTimeWeak()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<String> modifiedTimeWeak;
+
+	/**
+	 * The default value of the '{@link #getObjectCreation() <em>Object Creation</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getObjectCreation()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String OBJECT_CREATION_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getObjectCreation() <em>Object Creation</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getObjectCreation()
+	 * @generated
+	 * @ordered
+	 */
+	protected String objectCreation = OBJECT_CREATION_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getUmlDependencyID() <em>Uml Dependency ID</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getUmlDependencyID()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String UML_DEPENDENCY_ID_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getUmlDependencyID() <em>Uml Dependency ID</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getUmlDependencyID()
+	 * @generated
+	 * @ordered
+	 */
+	protected String umlDependencyID = UML_DEPENDENCY_ID_EDEFAULT;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected IGuardImpl() {
+		super();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EClass eStaticClass() {
+		return UMLRpyPackage.eINSTANCE.getIGuard();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getId() {
+		return id;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setId(String newId) {
+		String oldId = id;
+		id = newId;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IGUARD__ID, oldId, id));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getBody() {
+		return body;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setBody(String newBody) {
+		String oldBody = body;
+		body = newBody;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IGUARD__BODY, oldBody, body));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<String> getModifiedTimeWeak() {
+		if (modifiedTimeWeak == null) {
+			modifiedTimeWeak = new EDataTypeEList<String>(String.class, this, UMLRpyPackage.IGUARD__MODIFIED_TIME_WEAK);
+		}
+		return modifiedTimeWeak;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getObjectCreation() {
+		return objectCreation;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setObjectCreation(String newObjectCreation) {
+		String oldObjectCreation = objectCreation;
+		objectCreation = newObjectCreation;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IGUARD__OBJECT_CREATION, oldObjectCreation, objectCreation));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getUmlDependencyID() {
+		return umlDependencyID;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setUmlDependencyID(String newUmlDependencyID) {
+		String oldUmlDependencyID = umlDependencyID;
+		umlDependencyID = newUmlDependencyID;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IGUARD__UML_DEPENDENCY_ID, oldUmlDependencyID, umlDependencyID));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object eGet(int featureID, boolean resolve, boolean coreType) {
+		switch (featureID) {
+			case UMLRpyPackage.IGUARD__ID:
+				return getId();
+			case UMLRpyPackage.IGUARD__BODY:
+				return getBody();
+			case UMLRpyPackage.IGUARD__MODIFIED_TIME_WEAK:
+				return getModifiedTimeWeak();
+			case UMLRpyPackage.IGUARD__OBJECT_CREATION:
+				return getObjectCreation();
+			case UMLRpyPackage.IGUARD__UML_DEPENDENCY_ID:
+				return getUmlDependencyID();
+		}
+		return super.eGet(featureID, resolve, coreType);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@SuppressWarnings("unchecked")
+	@Override
+	public void eSet(int featureID, Object newValue) {
+		switch (featureID) {
+			case UMLRpyPackage.IGUARD__ID:
+				setId((String)newValue);
+				return;
+			case UMLRpyPackage.IGUARD__BODY:
+				setBody((String)newValue);
+				return;
+			case UMLRpyPackage.IGUARD__MODIFIED_TIME_WEAK:
+				getModifiedTimeWeak().clear();
+				getModifiedTimeWeak().addAll((Collection<? extends String>)newValue);
+				return;
+			case UMLRpyPackage.IGUARD__OBJECT_CREATION:
+				setObjectCreation((String)newValue);
+				return;
+			case UMLRpyPackage.IGUARD__UML_DEPENDENCY_ID:
+				setUmlDependencyID((String)newValue);
+				return;
+		}
+		super.eSet(featureID, newValue);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void eUnset(int featureID) {
+		switch (featureID) {
+			case UMLRpyPackage.IGUARD__ID:
+				setId(ID_EDEFAULT);
+				return;
+			case UMLRpyPackage.IGUARD__BODY:
+				setBody(BODY_EDEFAULT);
+				return;
+			case UMLRpyPackage.IGUARD__MODIFIED_TIME_WEAK:
+				getModifiedTimeWeak().clear();
+				return;
+			case UMLRpyPackage.IGUARD__OBJECT_CREATION:
+				setObjectCreation(OBJECT_CREATION_EDEFAULT);
+				return;
+			case UMLRpyPackage.IGUARD__UML_DEPENDENCY_ID:
+				setUmlDependencyID(UML_DEPENDENCY_ID_EDEFAULT);
+				return;
+		}
+		super.eUnset(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public boolean eIsSet(int featureID) {
+		switch (featureID) {
+			case UMLRpyPackage.IGUARD__ID:
+				return ID_EDEFAULT == null ? id != null : !ID_EDEFAULT.equals(id);
+			case UMLRpyPackage.IGUARD__BODY:
+				return BODY_EDEFAULT == null ? body != null : !BODY_EDEFAULT.equals(body);
+			case UMLRpyPackage.IGUARD__MODIFIED_TIME_WEAK:
+				return modifiedTimeWeak != null && !modifiedTimeWeak.isEmpty();
+			case UMLRpyPackage.IGUARD__OBJECT_CREATION:
+				return OBJECT_CREATION_EDEFAULT == null ? objectCreation != null : !OBJECT_CREATION_EDEFAULT.equals(objectCreation);
+			case UMLRpyPackage.IGUARD__UML_DEPENDENCY_ID:
+				return UML_DEPENDENCY_ID_EDEFAULT == null ? umlDependencyID != null : !UML_DEPENDENCY_ID_EDEFAULT.equals(umlDependencyID);
+		}
+		return super.eIsSet(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String toString() {
+		if (eIsProxy()) return super.toString();
+
+		StringBuffer result = new StringBuffer(super.toString());
+		result.append(" (id: "); //$NON-NLS-1$
+		result.append(id);
+		result.append(", body: "); //$NON-NLS-1$
+		result.append(body);
+		result.append(", modifiedTimeWeak: "); //$NON-NLS-1$
+		result.append(modifiedTimeWeak);
+		result.append(", objectCreation: "); //$NON-NLS-1$
+		result.append(objectCreation);
+		result.append(", umlDependencyID: "); //$NON-NLS-1$
+		result.append(umlDependencyID);
+		result.append(')');
+		return result.toString();
+	}
+
+} //IGuardImpl
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/IHandleWithDataImpl.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/IHandleWithDataImpl.java
new file mode 100755
index 0000000..c59933b
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/IHandleWithDataImpl.java
@@ -0,0 +1,497 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl;
+
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.ecore.EClass;
+
+import org.eclipse.emf.ecore.impl.ENotificationImpl;
+import org.eclipse.emf.ecore.impl.MinimalEObjectImpl;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IHandleWithData;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>IHandle With Data</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * </p>
+ * <ul>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IHandleWithDataImpl#getM2Class <em>M2 Class</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IHandleWithDataImpl#getFilename <em>Filename</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IHandleWithDataImpl#getSubsystem <em>Subsystem</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IHandleWithDataImpl#getClass_ <em>Class</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IHandleWithDataImpl#getName <em>Name</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IHandleWithDataImpl#getId <em>Id</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IHandleWithDataImpl#getData <em>Data</em>}</li>
+ * </ul>
+ *
+ * @generated
+ */
+public class IHandleWithDataImpl extends MinimalEObjectImpl.Container implements IHandleWithData {
+	/**
+	 * The default value of the '{@link #getM2Class() <em>M2 Class</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM2Class()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String M2_CLASS_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getM2Class() <em>M2 Class</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM2Class()
+	 * @generated
+	 * @ordered
+	 */
+	protected String m2Class = M2_CLASS_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getFilename() <em>Filename</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getFilename()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String FILENAME_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getFilename() <em>Filename</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getFilename()
+	 * @generated
+	 * @ordered
+	 */
+	protected String filename = FILENAME_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getSubsystem() <em>Subsystem</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getSubsystem()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String SUBSYSTEM_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getSubsystem() <em>Subsystem</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getSubsystem()
+	 * @generated
+	 * @ordered
+	 */
+	protected String subsystem = SUBSYSTEM_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getClass_() <em>Class</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getClass_()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String CLASS_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getClass_() <em>Class</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getClass_()
+	 * @generated
+	 * @ordered
+	 */
+	protected String class_ = CLASS_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getName() <em>Name</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getName()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String NAME_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getName() <em>Name</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getName()
+	 * @generated
+	 * @ordered
+	 */
+	protected String name = NAME_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getId() <em>Id</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getId()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String ID_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getId() <em>Id</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getId()
+	 * @generated
+	 * @ordered
+	 */
+	protected String id = ID_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getData() <em>Data</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getData()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String DATA_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getData() <em>Data</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getData()
+	 * @generated
+	 * @ordered
+	 */
+	protected String data = DATA_EDEFAULT;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected IHandleWithDataImpl() {
+		super();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EClass eStaticClass() {
+		return UMLRpyPackage.eINSTANCE.getIHandleWithData();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getM2Class() {
+		return m2Class;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM2Class(String newM2Class) {
+		String oldM2Class = m2Class;
+		m2Class = newM2Class;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IHANDLE_WITH_DATA__M2_CLASS, oldM2Class, m2Class));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getFilename() {
+		return filename;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setFilename(String newFilename) {
+		String oldFilename = filename;
+		filename = newFilename;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IHANDLE_WITH_DATA__FILENAME, oldFilename, filename));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getSubsystem() {
+		return subsystem;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setSubsystem(String newSubsystem) {
+		String oldSubsystem = subsystem;
+		subsystem = newSubsystem;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IHANDLE_WITH_DATA__SUBSYSTEM, oldSubsystem, subsystem));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getClass_() {
+		return class_;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setClass(String newClass) {
+		String oldClass = class_;
+		class_ = newClass;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IHANDLE_WITH_DATA__CLASS, oldClass, class_));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getName() {
+		return name;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setName(String newName) {
+		String oldName = name;
+		name = newName;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IHANDLE_WITH_DATA__NAME, oldName, name));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getId() {
+		return id;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setId(String newId) {
+		String oldId = id;
+		id = newId;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IHANDLE_WITH_DATA__ID, oldId, id));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getData() {
+		return data;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setData(String newData) {
+		String oldData = data;
+		data = newData;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IHANDLE_WITH_DATA__DATA, oldData, data));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object eGet(int featureID, boolean resolve, boolean coreType) {
+		switch (featureID) {
+			case UMLRpyPackage.IHANDLE_WITH_DATA__M2_CLASS:
+				return getM2Class();
+			case UMLRpyPackage.IHANDLE_WITH_DATA__FILENAME:
+				return getFilename();
+			case UMLRpyPackage.IHANDLE_WITH_DATA__SUBSYSTEM:
+				return getSubsystem();
+			case UMLRpyPackage.IHANDLE_WITH_DATA__CLASS:
+				return getClass_();
+			case UMLRpyPackage.IHANDLE_WITH_DATA__NAME:
+				return getName();
+			case UMLRpyPackage.IHANDLE_WITH_DATA__ID:
+				return getId();
+			case UMLRpyPackage.IHANDLE_WITH_DATA__DATA:
+				return getData();
+		}
+		return super.eGet(featureID, resolve, coreType);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void eSet(int featureID, Object newValue) {
+		switch (featureID) {
+			case UMLRpyPackage.IHANDLE_WITH_DATA__M2_CLASS:
+				setM2Class((String)newValue);
+				return;
+			case UMLRpyPackage.IHANDLE_WITH_DATA__FILENAME:
+				setFilename((String)newValue);
+				return;
+			case UMLRpyPackage.IHANDLE_WITH_DATA__SUBSYSTEM:
+				setSubsystem((String)newValue);
+				return;
+			case UMLRpyPackage.IHANDLE_WITH_DATA__CLASS:
+				setClass((String)newValue);
+				return;
+			case UMLRpyPackage.IHANDLE_WITH_DATA__NAME:
+				setName((String)newValue);
+				return;
+			case UMLRpyPackage.IHANDLE_WITH_DATA__ID:
+				setId((String)newValue);
+				return;
+			case UMLRpyPackage.IHANDLE_WITH_DATA__DATA:
+				setData((String)newValue);
+				return;
+		}
+		super.eSet(featureID, newValue);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void eUnset(int featureID) {
+		switch (featureID) {
+			case UMLRpyPackage.IHANDLE_WITH_DATA__M2_CLASS:
+				setM2Class(M2_CLASS_EDEFAULT);
+				return;
+			case UMLRpyPackage.IHANDLE_WITH_DATA__FILENAME:
+				setFilename(FILENAME_EDEFAULT);
+				return;
+			case UMLRpyPackage.IHANDLE_WITH_DATA__SUBSYSTEM:
+				setSubsystem(SUBSYSTEM_EDEFAULT);
+				return;
+			case UMLRpyPackage.IHANDLE_WITH_DATA__CLASS:
+				setClass(CLASS_EDEFAULT);
+				return;
+			case UMLRpyPackage.IHANDLE_WITH_DATA__NAME:
+				setName(NAME_EDEFAULT);
+				return;
+			case UMLRpyPackage.IHANDLE_WITH_DATA__ID:
+				setId(ID_EDEFAULT);
+				return;
+			case UMLRpyPackage.IHANDLE_WITH_DATA__DATA:
+				setData(DATA_EDEFAULT);
+				return;
+		}
+		super.eUnset(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public boolean eIsSet(int featureID) {
+		switch (featureID) {
+			case UMLRpyPackage.IHANDLE_WITH_DATA__M2_CLASS:
+				return M2_CLASS_EDEFAULT == null ? m2Class != null : !M2_CLASS_EDEFAULT.equals(m2Class);
+			case UMLRpyPackage.IHANDLE_WITH_DATA__FILENAME:
+				return FILENAME_EDEFAULT == null ? filename != null : !FILENAME_EDEFAULT.equals(filename);
+			case UMLRpyPackage.IHANDLE_WITH_DATA__SUBSYSTEM:
+				return SUBSYSTEM_EDEFAULT == null ? subsystem != null : !SUBSYSTEM_EDEFAULT.equals(subsystem);
+			case UMLRpyPackage.IHANDLE_WITH_DATA__CLASS:
+				return CLASS_EDEFAULT == null ? class_ != null : !CLASS_EDEFAULT.equals(class_);
+			case UMLRpyPackage.IHANDLE_WITH_DATA__NAME:
+				return NAME_EDEFAULT == null ? name != null : !NAME_EDEFAULT.equals(name);
+			case UMLRpyPackage.IHANDLE_WITH_DATA__ID:
+				return ID_EDEFAULT == null ? id != null : !ID_EDEFAULT.equals(id);
+			case UMLRpyPackage.IHANDLE_WITH_DATA__DATA:
+				return DATA_EDEFAULT == null ? data != null : !DATA_EDEFAULT.equals(data);
+		}
+		return super.eIsSet(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String toString() {
+		if (eIsProxy()) return super.toString();
+
+		StringBuffer result = new StringBuffer(super.toString());
+		result.append(" (m2Class: "); //$NON-NLS-1$
+		result.append(m2Class);
+		result.append(", filename: "); //$NON-NLS-1$
+		result.append(filename);
+		result.append(", subsystem: "); //$NON-NLS-1$
+		result.append(subsystem);
+		result.append(", class: "); //$NON-NLS-1$
+		result.append(class_);
+		result.append(", name: "); //$NON-NLS-1$
+		result.append(name);
+		result.append(", id: "); //$NON-NLS-1$
+		result.append(id);
+		result.append(", data: "); //$NON-NLS-1$
+		result.append(data);
+		result.append(')');
+		return result.toString();
+	}
+
+} //IHandleWithDataImpl
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/IHistoryConnectorImpl.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/IHistoryConnectorImpl.java
new file mode 100755
index 0000000..237e2ad
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/IHistoryConnectorImpl.java
@@ -0,0 +1,558 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.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.interoperability.rpy.rpymetamodel.IHistoryConnector;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IState;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>IHistory Connector</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * </p>
+ * <ul>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IHistoryConnectorImpl#getId <em>Id</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IHistoryConnectorImpl#getName <em>Name</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IHistoryConnectorImpl#getParent <em>Parent</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IHistoryConnectorImpl#getConnectorType <em>Connector Type</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IHistoryConnectorImpl#getMyState <em>My State</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IHistoryConnectorImpl#getModifiedTimeWeak <em>Modified Time Weak</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IHistoryConnectorImpl#getObjectCreation <em>Object Creation</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IHistoryConnectorImpl#getUmlDependencyID <em>Uml Dependency ID</em>}</li>
+ * </ul>
+ *
+ * @generated
+ */
+public class IHistoryConnectorImpl extends ItsTargetTypeImpl implements IHistoryConnector {
+	/**
+	 * The default value of the '{@link #getId() <em>Id</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getId()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String ID_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getId() <em>Id</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getId()
+	 * @generated
+	 * @ordered
+	 */
+	protected String id = ID_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getName() <em>Name</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getName()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String NAME_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getName() <em>Name</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getName()
+	 * @generated
+	 * @ordered
+	 */
+	protected String name = NAME_EDEFAULT;
+
+	/**
+	 * The cached value of the '{@link #getParent() <em>Parent</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getParent()
+	 * @generated
+	 * @ordered
+	 */
+	protected IState parent;
+
+	/**
+	 * The default value of the '{@link #getConnectorType() <em>Connector Type</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getConnectorType()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String CONNECTOR_TYPE_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getConnectorType() <em>Connector Type</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getConnectorType()
+	 * @generated
+	 * @ordered
+	 */
+	protected String connectorType = CONNECTOR_TYPE_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getMyState() <em>My State</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getMyState()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String MY_STATE_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getMyState() <em>My State</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getMyState()
+	 * @generated
+	 * @ordered
+	 */
+	protected String myState = MY_STATE_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getModifiedTimeWeak() <em>Modified Time Weak</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getModifiedTimeWeak()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String MODIFIED_TIME_WEAK_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getModifiedTimeWeak() <em>Modified Time Weak</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getModifiedTimeWeak()
+	 * @generated
+	 * @ordered
+	 */
+	protected String modifiedTimeWeak = MODIFIED_TIME_WEAK_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getObjectCreation() <em>Object Creation</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getObjectCreation()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String OBJECT_CREATION_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getObjectCreation() <em>Object Creation</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getObjectCreation()
+	 * @generated
+	 * @ordered
+	 */
+	protected String objectCreation = OBJECT_CREATION_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getUmlDependencyID() <em>Uml Dependency ID</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getUmlDependencyID()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String UML_DEPENDENCY_ID_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getUmlDependencyID() <em>Uml Dependency ID</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getUmlDependencyID()
+	 * @generated
+	 * @ordered
+	 */
+	protected String umlDependencyID = UML_DEPENDENCY_ID_EDEFAULT;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected IHistoryConnectorImpl() {
+		super();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EClass eStaticClass() {
+		return UMLRpyPackage.eINSTANCE.getIHistoryConnector();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getId() {
+		return id;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setId(String newId) {
+		String oldId = id;
+		id = newId;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IHISTORY_CONNECTOR__ID, oldId, id));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getName() {
+		return name;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setName(String newName) {
+		String oldName = name;
+		name = newName;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IHISTORY_CONNECTOR__NAME, oldName, name));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IState getParent() {
+		if (parent != null && parent.eIsProxy()) {
+			InternalEObject oldParent = (InternalEObject)parent;
+			parent = (IState)eResolveProxy(oldParent);
+			if (parent != oldParent) {
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.IHISTORY_CONNECTOR__PARENT, oldParent, parent));
+			}
+		}
+		return parent;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IState basicGetParent() {
+		return parent;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setParent(IState newParent) {
+		IState oldParent = parent;
+		parent = newParent;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IHISTORY_CONNECTOR__PARENT, oldParent, parent));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getConnectorType() {
+		return connectorType;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setConnectorType(String newConnectorType) {
+		String oldConnectorType = connectorType;
+		connectorType = newConnectorType;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IHISTORY_CONNECTOR__CONNECTOR_TYPE, oldConnectorType, connectorType));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getMyState() {
+		return myState;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setMyState(String newMyState) {
+		String oldMyState = myState;
+		myState = newMyState;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IHISTORY_CONNECTOR__MY_STATE, oldMyState, myState));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getModifiedTimeWeak() {
+		return modifiedTimeWeak;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setModifiedTimeWeak(String newModifiedTimeWeak) {
+		String oldModifiedTimeWeak = modifiedTimeWeak;
+		modifiedTimeWeak = newModifiedTimeWeak;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IHISTORY_CONNECTOR__MODIFIED_TIME_WEAK, oldModifiedTimeWeak, modifiedTimeWeak));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getObjectCreation() {
+		return objectCreation;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setObjectCreation(String newObjectCreation) {
+		String oldObjectCreation = objectCreation;
+		objectCreation = newObjectCreation;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IHISTORY_CONNECTOR__OBJECT_CREATION, oldObjectCreation, objectCreation));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getUmlDependencyID() {
+		return umlDependencyID;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setUmlDependencyID(String newUmlDependencyID) {
+		String oldUmlDependencyID = umlDependencyID;
+		umlDependencyID = newUmlDependencyID;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IHISTORY_CONNECTOR__UML_DEPENDENCY_ID, oldUmlDependencyID, umlDependencyID));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object eGet(int featureID, boolean resolve, boolean coreType) {
+		switch (featureID) {
+			case UMLRpyPackage.IHISTORY_CONNECTOR__ID:
+				return getId();
+			case UMLRpyPackage.IHISTORY_CONNECTOR__NAME:
+				return getName();
+			case UMLRpyPackage.IHISTORY_CONNECTOR__PARENT:
+				if (resolve) return getParent();
+				return basicGetParent();
+			case UMLRpyPackage.IHISTORY_CONNECTOR__CONNECTOR_TYPE:
+				return getConnectorType();
+			case UMLRpyPackage.IHISTORY_CONNECTOR__MY_STATE:
+				return getMyState();
+			case UMLRpyPackage.IHISTORY_CONNECTOR__MODIFIED_TIME_WEAK:
+				return getModifiedTimeWeak();
+			case UMLRpyPackage.IHISTORY_CONNECTOR__OBJECT_CREATION:
+				return getObjectCreation();
+			case UMLRpyPackage.IHISTORY_CONNECTOR__UML_DEPENDENCY_ID:
+				return getUmlDependencyID();
+		}
+		return super.eGet(featureID, resolve, coreType);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void eSet(int featureID, Object newValue) {
+		switch (featureID) {
+			case UMLRpyPackage.IHISTORY_CONNECTOR__ID:
+				setId((String)newValue);
+				return;
+			case UMLRpyPackage.IHISTORY_CONNECTOR__NAME:
+				setName((String)newValue);
+				return;
+			case UMLRpyPackage.IHISTORY_CONNECTOR__PARENT:
+				setParent((IState)newValue);
+				return;
+			case UMLRpyPackage.IHISTORY_CONNECTOR__CONNECTOR_TYPE:
+				setConnectorType((String)newValue);
+				return;
+			case UMLRpyPackage.IHISTORY_CONNECTOR__MY_STATE:
+				setMyState((String)newValue);
+				return;
+			case UMLRpyPackage.IHISTORY_CONNECTOR__MODIFIED_TIME_WEAK:
+				setModifiedTimeWeak((String)newValue);
+				return;
+			case UMLRpyPackage.IHISTORY_CONNECTOR__OBJECT_CREATION:
+				setObjectCreation((String)newValue);
+				return;
+			case UMLRpyPackage.IHISTORY_CONNECTOR__UML_DEPENDENCY_ID:
+				setUmlDependencyID((String)newValue);
+				return;
+		}
+		super.eSet(featureID, newValue);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void eUnset(int featureID) {
+		switch (featureID) {
+			case UMLRpyPackage.IHISTORY_CONNECTOR__ID:
+				setId(ID_EDEFAULT);
+				return;
+			case UMLRpyPackage.IHISTORY_CONNECTOR__NAME:
+				setName(NAME_EDEFAULT);
+				return;
+			case UMLRpyPackage.IHISTORY_CONNECTOR__PARENT:
+				setParent((IState)null);
+				return;
+			case UMLRpyPackage.IHISTORY_CONNECTOR__CONNECTOR_TYPE:
+				setConnectorType(CONNECTOR_TYPE_EDEFAULT);
+				return;
+			case UMLRpyPackage.IHISTORY_CONNECTOR__MY_STATE:
+				setMyState(MY_STATE_EDEFAULT);
+				return;
+			case UMLRpyPackage.IHISTORY_CONNECTOR__MODIFIED_TIME_WEAK:
+				setModifiedTimeWeak(MODIFIED_TIME_WEAK_EDEFAULT);
+				return;
+			case UMLRpyPackage.IHISTORY_CONNECTOR__OBJECT_CREATION:
+				setObjectCreation(OBJECT_CREATION_EDEFAULT);
+				return;
+			case UMLRpyPackage.IHISTORY_CONNECTOR__UML_DEPENDENCY_ID:
+				setUmlDependencyID(UML_DEPENDENCY_ID_EDEFAULT);
+				return;
+		}
+		super.eUnset(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public boolean eIsSet(int featureID) {
+		switch (featureID) {
+			case UMLRpyPackage.IHISTORY_CONNECTOR__ID:
+				return ID_EDEFAULT == null ? id != null : !ID_EDEFAULT.equals(id);
+			case UMLRpyPackage.IHISTORY_CONNECTOR__NAME:
+				return NAME_EDEFAULT == null ? name != null : !NAME_EDEFAULT.equals(name);
+			case UMLRpyPackage.IHISTORY_CONNECTOR__PARENT:
+				return parent != null;
+			case UMLRpyPackage.IHISTORY_CONNECTOR__CONNECTOR_TYPE:
+				return CONNECTOR_TYPE_EDEFAULT == null ? connectorType != null : !CONNECTOR_TYPE_EDEFAULT.equals(connectorType);
+			case UMLRpyPackage.IHISTORY_CONNECTOR__MY_STATE:
+				return MY_STATE_EDEFAULT == null ? myState != null : !MY_STATE_EDEFAULT.equals(myState);
+			case UMLRpyPackage.IHISTORY_CONNECTOR__MODIFIED_TIME_WEAK:
+				return MODIFIED_TIME_WEAK_EDEFAULT == null ? modifiedTimeWeak != null : !MODIFIED_TIME_WEAK_EDEFAULT.equals(modifiedTimeWeak);
+			case UMLRpyPackage.IHISTORY_CONNECTOR__OBJECT_CREATION:
+				return OBJECT_CREATION_EDEFAULT == null ? objectCreation != null : !OBJECT_CREATION_EDEFAULT.equals(objectCreation);
+			case UMLRpyPackage.IHISTORY_CONNECTOR__UML_DEPENDENCY_ID:
+				return UML_DEPENDENCY_ID_EDEFAULT == null ? umlDependencyID != null : !UML_DEPENDENCY_ID_EDEFAULT.equals(umlDependencyID);
+		}
+		return super.eIsSet(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String toString() {
+		if (eIsProxy()) return super.toString();
+
+		StringBuffer result = new StringBuffer(super.toString());
+		result.append(" (id: "); //$NON-NLS-1$
+		result.append(id);
+		result.append(", name: "); //$NON-NLS-1$
+		result.append(name);
+		result.append(", connectorType: "); //$NON-NLS-1$
+		result.append(connectorType);
+		result.append(", myState: "); //$NON-NLS-1$
+		result.append(myState);
+		result.append(", modifiedTimeWeak: "); //$NON-NLS-1$
+		result.append(modifiedTimeWeak);
+		result.append(", objectCreation: "); //$NON-NLS-1$
+		result.append(objectCreation);
+		result.append(", umlDependencyID: "); //$NON-NLS-1$
+		result.append(umlDependencyID);
+		result.append(')');
+		return result.toString();
+	}
+
+} //IHistoryConnectorImpl
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/IHyperLinkImpl.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/IHyperLinkImpl.java
new file mode 100755
index 0000000..ba5cfce
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/IHyperLinkImpl.java
@@ -0,0 +1,47 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl;
+
+import org.eclipse.emf.ecore.EClass;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IHyperLink;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>IHyper Link</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+public class IHyperLinkImpl extends IDependencyImpl implements IHyperLink {
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected IHyperLinkImpl() {
+		super();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EClass eStaticClass() {
+		return UMLRpyPackage.eINSTANCE.getIHyperLink();
+	}
+
+} //IHyperLinkImpl
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/IInformationFlowImpl.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/IInformationFlowImpl.java
new file mode 100755
index 0000000..ea80b4e
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/IInformationFlowImpl.java
@@ -0,0 +1,1528 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl;
+
+import java.lang.reflect.InvocationTargetException;
+import java.util.Collection;
+
+import org.eclipse.emf.common.notify.Notification;
+import org.eclipse.emf.common.notify.NotificationChain;
+
+import org.eclipse.emf.common.util.EList;
+import org.eclipse.emf.ecore.EAnnotation;
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.EModelElement;
+import org.eclipse.emf.ecore.EcorePackage;
+import org.eclipse.emf.ecore.InternalEObject;
+
+import org.eclipse.emf.ecore.impl.ENotificationImpl;
+
+import org.eclipse.emf.ecore.util.EDataTypeEList;
+import org.eclipse.emf.ecore.util.EObjectContainmentEList;
+import org.eclipse.emf.ecore.util.EObjectContainmentWithInverseEList;
+import org.eclipse.emf.ecore.util.EObjectResolvingEList;
+import org.eclipse.emf.ecore.util.InternalEList;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ConveyedType;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.DependsOnType;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ElementsType;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.End1_Type;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.End2_Type;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IDependency;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IDescription;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IInformationFlow;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IInstance;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMHyperLink;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IModelElement;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IRequirement;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITag;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IUnit;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>IInformation Flow</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * </p>
+ * <ul>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IInformationFlowImpl#getEAnnotations <em>EAnnotations</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IInformationFlowImpl#getDisplayName <em>Display Name</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IInformationFlowImpl#getId <em>Id</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IInformationFlowImpl#getMyState <em>My State</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IInformationFlowImpl#getName <em>Name</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IInformationFlowImpl#getConveyed <em>Conveyed</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IInformationFlowImpl#getEnd1_ <em>End1 </em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IInformationFlowImpl#getEnd2_ <em>End2 </em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IInformationFlowImpl#getDirection_ <em>Direction </em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IInformationFlowImpl#getModifiedTimeWeak <em>Modified Time Weak</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IInformationFlowImpl#getDescription <em>Description</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IInformationFlowImpl#getEnd1ObjectPort_ <em>End1 Object Port </em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IInformationFlowImpl#getEnd2ObjectPort_ <em>End2 Object Port </em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IInformationFlowImpl#getRequiremenTracabilityHandle <em>Requiremen Tracability Handle</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IInformationFlowImpl#getHyperLinks <em>Hyper Links</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IInformationFlowImpl#getDependencies <em>Dependencies</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IInformationFlowImpl#getAnnotations <em>Annotations</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IInformationFlowImpl#getObjectCreation <em>Object Creation</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IInformationFlowImpl#getUmlDependencyID <em>Uml Dependency ID</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IInformationFlowImpl#getStereotypes <em>Stereotypes</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IInformationFlowImpl#getTags <em>Tags</em>}</li>
+ * </ul>
+ *
+ * @generated
+ */
+public class IInformationFlowImpl extends DeclarativesTypeImpl implements IInformationFlow {
+	/**
+	 * The cached value of the '{@link #getEAnnotations() <em>EAnnotations</em>}' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getEAnnotations()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<EAnnotation> eAnnotations;
+
+	/**
+	 * The default value of the '{@link #getDisplayName() <em>Display Name</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getDisplayName()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String DISPLAY_NAME_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getDisplayName() <em>Display Name</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getDisplayName()
+	 * @generated
+	 * @ordered
+	 */
+	protected String displayName = DISPLAY_NAME_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getId() <em>Id</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getId()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String ID_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getId() <em>Id</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getId()
+	 * @generated
+	 * @ordered
+	 */
+	protected String id = ID_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getMyState() <em>My State</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getMyState()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String MY_STATE_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getMyState() <em>My State</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getMyState()
+	 * @generated
+	 * @ordered
+	 */
+	protected String myState = MY_STATE_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getName() <em>Name</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getName()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String NAME_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getName() <em>Name</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getName()
+	 * @generated
+	 * @ordered
+	 */
+	protected String name = NAME_EDEFAULT;
+
+	/**
+	 * The cached value of the '{@link #getConveyed() <em>Conveyed</em>}' reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getConveyed()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<ConveyedType> conveyed;
+
+	/**
+	 * The cached value of the '{@link #getEnd1_() <em>End1 </em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getEnd1_()
+	 * @generated
+	 * @ordered
+	 */
+	protected End1_Type end1_;
+
+	/**
+	 * The cached value of the '{@link #getEnd2_() <em>End2 </em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getEnd2_()
+	 * @generated
+	 * @ordered
+	 */
+	protected End2_Type end2_;
+
+	/**
+	 * The default value of the '{@link #getDirection_() <em>Direction </em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getDirection_()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String DIRECTION__EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getDirection_() <em>Direction </em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getDirection_()
+	 * @generated
+	 * @ordered
+	 */
+	protected String direction_ = DIRECTION__EDEFAULT;
+
+	/**
+	 * The cached value of the '{@link #getModifiedTimeWeak() <em>Modified Time Weak</em>}' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getModifiedTimeWeak()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<String> modifiedTimeWeak;
+
+	/**
+	 * The cached value of the '{@link #getDescription() <em>Description</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getDescription()
+	 * @generated
+	 * @ordered
+	 */
+	protected IDescription description;
+
+	/**
+	 * The cached value of the '{@link #getEnd1ObjectPort_() <em>End1 Object Port </em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getEnd1ObjectPort_()
+	 * @generated
+	 * @ordered
+	 */
+	protected IInstance end1ObjectPort_;
+
+	/**
+	 * The cached value of the '{@link #getEnd2ObjectPort_() <em>End2 Object Port </em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getEnd2ObjectPort_()
+	 * @generated
+	 * @ordered
+	 */
+	protected IInstance end2ObjectPort_;
+
+	/**
+	 * The default value of the '{@link #getRequiremenTracabilityHandle() <em>Requiremen Tracability Handle</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getRequiremenTracabilityHandle()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String REQUIREMEN_TRACABILITY_HANDLE_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getRequiremenTracabilityHandle() <em>Requiremen Tracability Handle</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getRequiremenTracabilityHandle()
+	 * @generated
+	 * @ordered
+	 */
+	protected String requiremenTracabilityHandle = REQUIREMEN_TRACABILITY_HANDLE_EDEFAULT;
+
+	/**
+	 * The cached value of the '{@link #getHyperLinks() <em>Hyper Links</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getHyperLinks()
+	 * @generated
+	 * @ordered
+	 */
+	protected IMHyperLink hyperLinks;
+
+	/**
+	 * The cached value of the '{@link #getDependencies() <em>Dependencies</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getDependencies()
+	 * @generated
+	 * @ordered
+	 */
+	protected IDependency dependencies;
+
+	/**
+	 * The cached value of the '{@link #getAnnotations() <em>Annotations</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getAnnotations()
+	 * @generated
+	 * @ordered
+	 */
+	protected IRequirement annotations;
+
+	/**
+	 * The default value of the '{@link #getObjectCreation() <em>Object Creation</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getObjectCreation()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String OBJECT_CREATION_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getObjectCreation() <em>Object Creation</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getObjectCreation()
+	 * @generated
+	 * @ordered
+	 */
+	protected String objectCreation = OBJECT_CREATION_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getUmlDependencyID() <em>Uml Dependency ID</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getUmlDependencyID()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String UML_DEPENDENCY_ID_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getUmlDependencyID() <em>Uml Dependency ID</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getUmlDependencyID()
+	 * @generated
+	 * @ordered
+	 */
+	protected String umlDependencyID = UML_DEPENDENCY_ID_EDEFAULT;
+
+	/**
+	 * The cached value of the '{@link #getStereotypes() <em>Stereotypes</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getStereotypes()
+	 * @generated
+	 * @ordered
+	 */
+	protected IUnit stereotypes;
+
+	/**
+	 * The cached value of the '{@link #getTags() <em>Tags</em>}' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getTags()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<ITag> tags;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected IInformationFlowImpl() {
+		super();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EClass eStaticClass() {
+		return UMLRpyPackage.eINSTANCE.getIInformationFlow();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<EAnnotation> getEAnnotations() {
+		if (eAnnotations == null) {
+			eAnnotations = new EObjectContainmentWithInverseEList<EAnnotation>(EAnnotation.class, this, UMLRpyPackage.IINFORMATION_FLOW__EANNOTATIONS, EcorePackage.EANNOTATION__EMODEL_ELEMENT);
+		}
+		return eAnnotations;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getDisplayName() {
+		return displayName;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setDisplayName(String newDisplayName) {
+		String oldDisplayName = displayName;
+		displayName = newDisplayName;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IINFORMATION_FLOW__DISPLAY_NAME, oldDisplayName, displayName));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getId() {
+		return id;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setId(String newId) {
+		String oldId = id;
+		id = newId;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IINFORMATION_FLOW__ID, oldId, id));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getMyState() {
+		return myState;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setMyState(String newMyState) {
+		String oldMyState = myState;
+		myState = newMyState;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IINFORMATION_FLOW__MY_STATE, oldMyState, myState));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getName() {
+		return name;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setName(String newName) {
+		String oldName = name;
+		name = newName;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IINFORMATION_FLOW__NAME, oldName, name));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<ConveyedType> getConveyed() {
+		if (conveyed == null) {
+			conveyed = new EObjectResolvingEList<ConveyedType>(ConveyedType.class, this, UMLRpyPackage.IINFORMATION_FLOW__CONVEYED);
+		}
+		return conveyed;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public End1_Type getEnd1_() {
+		if (end1_ != null && end1_.eIsProxy()) {
+			InternalEObject oldEnd1_ = (InternalEObject)end1_;
+			end1_ = (End1_Type)eResolveProxy(oldEnd1_);
+			if (end1_ != oldEnd1_) {
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.IINFORMATION_FLOW__END1_, oldEnd1_, end1_));
+			}
+		}
+		return end1_;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public End1_Type basicGetEnd1_() {
+		return end1_;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setEnd1_(End1_Type newEnd1_) {
+		End1_Type oldEnd1_ = end1_;
+		end1_ = newEnd1_;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IINFORMATION_FLOW__END1_, oldEnd1_, end1_));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public End2_Type getEnd2_() {
+		if (end2_ != null && end2_.eIsProxy()) {
+			InternalEObject oldEnd2_ = (InternalEObject)end2_;
+			end2_ = (End2_Type)eResolveProxy(oldEnd2_);
+			if (end2_ != oldEnd2_) {
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.IINFORMATION_FLOW__END2_, oldEnd2_, end2_));
+			}
+		}
+		return end2_;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public End2_Type basicGetEnd2_() {
+		return end2_;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setEnd2_(End2_Type newEnd2_) {
+		End2_Type oldEnd2_ = end2_;
+		end2_ = newEnd2_;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IINFORMATION_FLOW__END2_, oldEnd2_, end2_));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getDirection_() {
+		return direction_;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setDirection_(String newDirection_) {
+		String oldDirection_ = direction_;
+		direction_ = newDirection_;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IINFORMATION_FLOW__DIRECTION_, oldDirection_, direction_));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<String> getModifiedTimeWeak() {
+		if (modifiedTimeWeak == null) {
+			modifiedTimeWeak = new EDataTypeEList<String>(String.class, this, UMLRpyPackage.IINFORMATION_FLOW__MODIFIED_TIME_WEAK);
+		}
+		return modifiedTimeWeak;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IDescription getDescription() {
+		if (description != null && description.eIsProxy()) {
+			InternalEObject oldDescription = (InternalEObject)description;
+			description = (IDescription)eResolveProxy(oldDescription);
+			if (description != oldDescription) {
+				InternalEObject newDescription = (InternalEObject)description;
+				NotificationChain msgs = oldDescription.eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IINFORMATION_FLOW__DESCRIPTION, null, null);
+				if (newDescription.eInternalContainer() == null) {
+					msgs = newDescription.eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IINFORMATION_FLOW__DESCRIPTION, null, msgs);
+				}
+				if (msgs != null) msgs.dispatch();
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.IINFORMATION_FLOW__DESCRIPTION, oldDescription, description));
+			}
+		}
+		return description;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IDescription basicGetDescription() {
+		return description;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public NotificationChain basicSetDescription(IDescription newDescription, NotificationChain msgs) {
+		IDescription oldDescription = description;
+		description = newDescription;
+		if (eNotificationRequired()) {
+			ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IINFORMATION_FLOW__DESCRIPTION, oldDescription, newDescription);
+			if (msgs == null) msgs = notification; else msgs.add(notification);
+		}
+		return msgs;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setDescription(IDescription newDescription) {
+		if (newDescription != description) {
+			NotificationChain msgs = null;
+			if (description != null)
+				msgs = ((InternalEObject)description).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IINFORMATION_FLOW__DESCRIPTION, null, msgs);
+			if (newDescription != null)
+				msgs = ((InternalEObject)newDescription).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IINFORMATION_FLOW__DESCRIPTION, null, msgs);
+			msgs = basicSetDescription(newDescription, msgs);
+			if (msgs != null) msgs.dispatch();
+		}
+		else if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IINFORMATION_FLOW__DESCRIPTION, newDescription, newDescription));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IInstance getEnd1ObjectPort_() {
+		if (end1ObjectPort_ != null && end1ObjectPort_.eIsProxy()) {
+			InternalEObject oldEnd1ObjectPort_ = (InternalEObject)end1ObjectPort_;
+			end1ObjectPort_ = (IInstance)eResolveProxy(oldEnd1ObjectPort_);
+			if (end1ObjectPort_ != oldEnd1ObjectPort_) {
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.IINFORMATION_FLOW__END1_OBJECT_PORT_, oldEnd1ObjectPort_, end1ObjectPort_));
+			}
+		}
+		return end1ObjectPort_;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IInstance basicGetEnd1ObjectPort_() {
+		return end1ObjectPort_;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setEnd1ObjectPort_(IInstance newEnd1ObjectPort_) {
+		IInstance oldEnd1ObjectPort_ = end1ObjectPort_;
+		end1ObjectPort_ = newEnd1ObjectPort_;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IINFORMATION_FLOW__END1_OBJECT_PORT_, oldEnd1ObjectPort_, end1ObjectPort_));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IInstance getEnd2ObjectPort_() {
+		if (end2ObjectPort_ != null && end2ObjectPort_.eIsProxy()) {
+			InternalEObject oldEnd2ObjectPort_ = (InternalEObject)end2ObjectPort_;
+			end2ObjectPort_ = (IInstance)eResolveProxy(oldEnd2ObjectPort_);
+			if (end2ObjectPort_ != oldEnd2ObjectPort_) {
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.IINFORMATION_FLOW__END2_OBJECT_PORT_, oldEnd2ObjectPort_, end2ObjectPort_));
+			}
+		}
+		return end2ObjectPort_;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IInstance basicGetEnd2ObjectPort_() {
+		return end2ObjectPort_;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setEnd2ObjectPort_(IInstance newEnd2ObjectPort_) {
+		IInstance oldEnd2ObjectPort_ = end2ObjectPort_;
+		end2ObjectPort_ = newEnd2ObjectPort_;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IINFORMATION_FLOW__END2_OBJECT_PORT_, oldEnd2ObjectPort_, end2ObjectPort_));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getRequiremenTracabilityHandle() {
+		return requiremenTracabilityHandle;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setRequiremenTracabilityHandle(String newRequiremenTracabilityHandle) {
+		String oldRequiremenTracabilityHandle = requiremenTracabilityHandle;
+		requiremenTracabilityHandle = newRequiremenTracabilityHandle;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IINFORMATION_FLOW__REQUIREMEN_TRACABILITY_HANDLE, oldRequiremenTracabilityHandle, requiremenTracabilityHandle));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IMHyperLink getHyperLinks() {
+		if (hyperLinks != null && hyperLinks.eIsProxy()) {
+			InternalEObject oldHyperLinks = (InternalEObject)hyperLinks;
+			hyperLinks = (IMHyperLink)eResolveProxy(oldHyperLinks);
+			if (hyperLinks != oldHyperLinks) {
+				InternalEObject newHyperLinks = (InternalEObject)hyperLinks;
+				NotificationChain msgs = oldHyperLinks.eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IINFORMATION_FLOW__HYPER_LINKS, null, null);
+				if (newHyperLinks.eInternalContainer() == null) {
+					msgs = newHyperLinks.eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IINFORMATION_FLOW__HYPER_LINKS, null, msgs);
+				}
+				if (msgs != null) msgs.dispatch();
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.IINFORMATION_FLOW__HYPER_LINKS, oldHyperLinks, hyperLinks));
+			}
+		}
+		return hyperLinks;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IMHyperLink basicGetHyperLinks() {
+		return hyperLinks;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public NotificationChain basicSetHyperLinks(IMHyperLink newHyperLinks, NotificationChain msgs) {
+		IMHyperLink oldHyperLinks = hyperLinks;
+		hyperLinks = newHyperLinks;
+		if (eNotificationRequired()) {
+			ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IINFORMATION_FLOW__HYPER_LINKS, oldHyperLinks, newHyperLinks);
+			if (msgs == null) msgs = notification; else msgs.add(notification);
+		}
+		return msgs;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setHyperLinks(IMHyperLink newHyperLinks) {
+		if (newHyperLinks != hyperLinks) {
+			NotificationChain msgs = null;
+			if (hyperLinks != null)
+				msgs = ((InternalEObject)hyperLinks).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IINFORMATION_FLOW__HYPER_LINKS, null, msgs);
+			if (newHyperLinks != null)
+				msgs = ((InternalEObject)newHyperLinks).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IINFORMATION_FLOW__HYPER_LINKS, null, msgs);
+			msgs = basicSetHyperLinks(newHyperLinks, msgs);
+			if (msgs != null) msgs.dispatch();
+		}
+		else if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IINFORMATION_FLOW__HYPER_LINKS, newHyperLinks, newHyperLinks));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IDependency getDependencies() {
+		if (dependencies != null && dependencies.eIsProxy()) {
+			InternalEObject oldDependencies = (InternalEObject)dependencies;
+			dependencies = (IDependency)eResolveProxy(oldDependencies);
+			if (dependencies != oldDependencies) {
+				InternalEObject newDependencies = (InternalEObject)dependencies;
+				NotificationChain msgs = oldDependencies.eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IINFORMATION_FLOW__DEPENDENCIES, null, null);
+				if (newDependencies.eInternalContainer() == null) {
+					msgs = newDependencies.eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IINFORMATION_FLOW__DEPENDENCIES, null, msgs);
+				}
+				if (msgs != null) msgs.dispatch();
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.IINFORMATION_FLOW__DEPENDENCIES, oldDependencies, dependencies));
+			}
+		}
+		return dependencies;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IDependency basicGetDependencies() {
+		return dependencies;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public NotificationChain basicSetDependencies(IDependency newDependencies, NotificationChain msgs) {
+		IDependency oldDependencies = dependencies;
+		dependencies = newDependencies;
+		if (eNotificationRequired()) {
+			ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IINFORMATION_FLOW__DEPENDENCIES, oldDependencies, newDependencies);
+			if (msgs == null) msgs = notification; else msgs.add(notification);
+		}
+		return msgs;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setDependencies(IDependency newDependencies) {
+		if (newDependencies != dependencies) {
+			NotificationChain msgs = null;
+			if (dependencies != null)
+				msgs = ((InternalEObject)dependencies).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IINFORMATION_FLOW__DEPENDENCIES, null, msgs);
+			if (newDependencies != null)
+				msgs = ((InternalEObject)newDependencies).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IINFORMATION_FLOW__DEPENDENCIES, null, msgs);
+			msgs = basicSetDependencies(newDependencies, msgs);
+			if (msgs != null) msgs.dispatch();
+		}
+		else if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IINFORMATION_FLOW__DEPENDENCIES, newDependencies, newDependencies));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IRequirement getAnnotations() {
+		if (annotations != null && annotations.eIsProxy()) {
+			InternalEObject oldAnnotations = (InternalEObject)annotations;
+			annotations = (IRequirement)eResolveProxy(oldAnnotations);
+			if (annotations != oldAnnotations) {
+				InternalEObject newAnnotations = (InternalEObject)annotations;
+				NotificationChain msgs = oldAnnotations.eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IINFORMATION_FLOW__ANNOTATIONS, null, null);
+				if (newAnnotations.eInternalContainer() == null) {
+					msgs = newAnnotations.eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IINFORMATION_FLOW__ANNOTATIONS, null, msgs);
+				}
+				if (msgs != null) msgs.dispatch();
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.IINFORMATION_FLOW__ANNOTATIONS, oldAnnotations, annotations));
+			}
+		}
+		return annotations;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IRequirement basicGetAnnotations() {
+		return annotations;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public NotificationChain basicSetAnnotations(IRequirement newAnnotations, NotificationChain msgs) {
+		IRequirement oldAnnotations = annotations;
+		annotations = newAnnotations;
+		if (eNotificationRequired()) {
+			ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IINFORMATION_FLOW__ANNOTATIONS, oldAnnotations, newAnnotations);
+			if (msgs == null) msgs = notification; else msgs.add(notification);
+		}
+		return msgs;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setAnnotations(IRequirement newAnnotations) {
+		if (newAnnotations != annotations) {
+			NotificationChain msgs = null;
+			if (annotations != null)
+				msgs = ((InternalEObject)annotations).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IINFORMATION_FLOW__ANNOTATIONS, null, msgs);
+			if (newAnnotations != null)
+				msgs = ((InternalEObject)newAnnotations).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IINFORMATION_FLOW__ANNOTATIONS, null, msgs);
+			msgs = basicSetAnnotations(newAnnotations, msgs);
+			if (msgs != null) msgs.dispatch();
+		}
+		else if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IINFORMATION_FLOW__ANNOTATIONS, newAnnotations, newAnnotations));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getObjectCreation() {
+		return objectCreation;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setObjectCreation(String newObjectCreation) {
+		String oldObjectCreation = objectCreation;
+		objectCreation = newObjectCreation;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IINFORMATION_FLOW__OBJECT_CREATION, oldObjectCreation, objectCreation));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getUmlDependencyID() {
+		return umlDependencyID;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setUmlDependencyID(String newUmlDependencyID) {
+		String oldUmlDependencyID = umlDependencyID;
+		umlDependencyID = newUmlDependencyID;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IINFORMATION_FLOW__UML_DEPENDENCY_ID, oldUmlDependencyID, umlDependencyID));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IUnit getStereotypes() {
+		if (stereotypes != null && stereotypes.eIsProxy()) {
+			InternalEObject oldStereotypes = (InternalEObject)stereotypes;
+			stereotypes = (IUnit)eResolveProxy(oldStereotypes);
+			if (stereotypes != oldStereotypes) {
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.IINFORMATION_FLOW__STEREOTYPES, oldStereotypes, stereotypes));
+			}
+		}
+		return stereotypes;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IUnit basicGetStereotypes() {
+		return stereotypes;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setStereotypes(IUnit newStereotypes) {
+		IUnit oldStereotypes = stereotypes;
+		stereotypes = newStereotypes;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IINFORMATION_FLOW__STEREOTYPES, oldStereotypes, stereotypes));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<ITag> getTags() {
+		if (tags == null) {
+			tags = new EObjectContainmentEList.Resolving<ITag>(ITag.class, this, UMLRpyPackage.IINFORMATION_FLOW__TAGS);
+		}
+		return tags;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAnnotation getEAnnotation(String source) {
+		// TODO: implement this method
+		// Ensure that you remove @generated or mark it @generated NOT
+		throw new UnsupportedOperationException();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@SuppressWarnings("unchecked")
+	@Override
+	public NotificationChain eInverseAdd(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
+		switch (featureID) {
+			case UMLRpyPackage.IINFORMATION_FLOW__EANNOTATIONS:
+				return ((InternalEList<InternalEObject>)(InternalEList<?>)getEAnnotations()).basicAdd(otherEnd, msgs);
+		}
+		return super.eInverseAdd(otherEnd, featureID, msgs);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
+		switch (featureID) {
+			case UMLRpyPackage.IINFORMATION_FLOW__EANNOTATIONS:
+				return ((InternalEList<?>)getEAnnotations()).basicRemove(otherEnd, msgs);
+			case UMLRpyPackage.IINFORMATION_FLOW__DESCRIPTION:
+				return basicSetDescription(null, msgs);
+			case UMLRpyPackage.IINFORMATION_FLOW__HYPER_LINKS:
+				return basicSetHyperLinks(null, msgs);
+			case UMLRpyPackage.IINFORMATION_FLOW__DEPENDENCIES:
+				return basicSetDependencies(null, msgs);
+			case UMLRpyPackage.IINFORMATION_FLOW__ANNOTATIONS:
+				return basicSetAnnotations(null, msgs);
+			case UMLRpyPackage.IINFORMATION_FLOW__TAGS:
+				return ((InternalEList<?>)getTags()).basicRemove(otherEnd, msgs);
+		}
+		return super.eInverseRemove(otherEnd, featureID, msgs);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object eGet(int featureID, boolean resolve, boolean coreType) {
+		switch (featureID) {
+			case UMLRpyPackage.IINFORMATION_FLOW__EANNOTATIONS:
+				return getEAnnotations();
+			case UMLRpyPackage.IINFORMATION_FLOW__DISPLAY_NAME:
+				return getDisplayName();
+			case UMLRpyPackage.IINFORMATION_FLOW__ID:
+				return getId();
+			case UMLRpyPackage.IINFORMATION_FLOW__MY_STATE:
+				return getMyState();
+			case UMLRpyPackage.IINFORMATION_FLOW__NAME:
+				return getName();
+			case UMLRpyPackage.IINFORMATION_FLOW__CONVEYED:
+				return getConveyed();
+			case UMLRpyPackage.IINFORMATION_FLOW__END1_:
+				if (resolve) return getEnd1_();
+				return basicGetEnd1_();
+			case UMLRpyPackage.IINFORMATION_FLOW__END2_:
+				if (resolve) return getEnd2_();
+				return basicGetEnd2_();
+			case UMLRpyPackage.IINFORMATION_FLOW__DIRECTION_:
+				return getDirection_();
+			case UMLRpyPackage.IINFORMATION_FLOW__MODIFIED_TIME_WEAK:
+				return getModifiedTimeWeak();
+			case UMLRpyPackage.IINFORMATION_FLOW__DESCRIPTION:
+				if (resolve) return getDescription();
+				return basicGetDescription();
+			case UMLRpyPackage.IINFORMATION_FLOW__END1_OBJECT_PORT_:
+				if (resolve) return getEnd1ObjectPort_();
+				return basicGetEnd1ObjectPort_();
+			case UMLRpyPackage.IINFORMATION_FLOW__END2_OBJECT_PORT_:
+				if (resolve) return getEnd2ObjectPort_();
+				return basicGetEnd2ObjectPort_();
+			case UMLRpyPackage.IINFORMATION_FLOW__REQUIREMEN_TRACABILITY_HANDLE:
+				return getRequiremenTracabilityHandle();
+			case UMLRpyPackage.IINFORMATION_FLOW__HYPER_LINKS:
+				if (resolve) return getHyperLinks();
+				return basicGetHyperLinks();
+			case UMLRpyPackage.IINFORMATION_FLOW__DEPENDENCIES:
+				if (resolve) return getDependencies();
+				return basicGetDependencies();
+			case UMLRpyPackage.IINFORMATION_FLOW__ANNOTATIONS:
+				if (resolve) return getAnnotations();
+				return basicGetAnnotations();
+			case UMLRpyPackage.IINFORMATION_FLOW__OBJECT_CREATION:
+				return getObjectCreation();
+			case UMLRpyPackage.IINFORMATION_FLOW__UML_DEPENDENCY_ID:
+				return getUmlDependencyID();
+			case UMLRpyPackage.IINFORMATION_FLOW__STEREOTYPES:
+				if (resolve) return getStereotypes();
+				return basicGetStereotypes();
+			case UMLRpyPackage.IINFORMATION_FLOW__TAGS:
+				return getTags();
+		}
+		return super.eGet(featureID, resolve, coreType);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@SuppressWarnings("unchecked")
+	@Override
+	public void eSet(int featureID, Object newValue) {
+		switch (featureID) {
+			case UMLRpyPackage.IINFORMATION_FLOW__EANNOTATIONS:
+				getEAnnotations().clear();
+				getEAnnotations().addAll((Collection<? extends EAnnotation>)newValue);
+				return;
+			case UMLRpyPackage.IINFORMATION_FLOW__DISPLAY_NAME:
+				setDisplayName((String)newValue);
+				return;
+			case UMLRpyPackage.IINFORMATION_FLOW__ID:
+				setId((String)newValue);
+				return;
+			case UMLRpyPackage.IINFORMATION_FLOW__MY_STATE:
+				setMyState((String)newValue);
+				return;
+			case UMLRpyPackage.IINFORMATION_FLOW__NAME:
+				setName((String)newValue);
+				return;
+			case UMLRpyPackage.IINFORMATION_FLOW__CONVEYED:
+				getConveyed().clear();
+				getConveyed().addAll((Collection<? extends ConveyedType>)newValue);
+				return;
+			case UMLRpyPackage.IINFORMATION_FLOW__END1_:
+				setEnd1_((End1_Type)newValue);
+				return;
+			case UMLRpyPackage.IINFORMATION_FLOW__END2_:
+				setEnd2_((End2_Type)newValue);
+				return;
+			case UMLRpyPackage.IINFORMATION_FLOW__DIRECTION_:
+				setDirection_((String)newValue);
+				return;
+			case UMLRpyPackage.IINFORMATION_FLOW__MODIFIED_TIME_WEAK:
+				getModifiedTimeWeak().clear();
+				getModifiedTimeWeak().addAll((Collection<? extends String>)newValue);
+				return;
+			case UMLRpyPackage.IINFORMATION_FLOW__DESCRIPTION:
+				setDescription((IDescription)newValue);
+				return;
+			case UMLRpyPackage.IINFORMATION_FLOW__END1_OBJECT_PORT_:
+				setEnd1ObjectPort_((IInstance)newValue);
+				return;
+			case UMLRpyPackage.IINFORMATION_FLOW__END2_OBJECT_PORT_:
+				setEnd2ObjectPort_((IInstance)newValue);
+				return;
+			case UMLRpyPackage.IINFORMATION_FLOW__REQUIREMEN_TRACABILITY_HANDLE:
+				setRequiremenTracabilityHandle((String)newValue);
+				return;
+			case UMLRpyPackage.IINFORMATION_FLOW__HYPER_LINKS:
+				setHyperLinks((IMHyperLink)newValue);
+				return;
+			case UMLRpyPackage.IINFORMATION_FLOW__DEPENDENCIES:
+				setDependencies((IDependency)newValue);
+				return;
+			case UMLRpyPackage.IINFORMATION_FLOW__ANNOTATIONS:
+				setAnnotations((IRequirement)newValue);
+				return;
+			case UMLRpyPackage.IINFORMATION_FLOW__OBJECT_CREATION:
+				setObjectCreation((String)newValue);
+				return;
+			case UMLRpyPackage.IINFORMATION_FLOW__UML_DEPENDENCY_ID:
+				setUmlDependencyID((String)newValue);
+				return;
+			case UMLRpyPackage.IINFORMATION_FLOW__STEREOTYPES:
+				setStereotypes((IUnit)newValue);
+				return;
+			case UMLRpyPackage.IINFORMATION_FLOW__TAGS:
+				getTags().clear();
+				getTags().addAll((Collection<? extends ITag>)newValue);
+				return;
+		}
+		super.eSet(featureID, newValue);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void eUnset(int featureID) {
+		switch (featureID) {
+			case UMLRpyPackage.IINFORMATION_FLOW__EANNOTATIONS:
+				getEAnnotations().clear();
+				return;
+			case UMLRpyPackage.IINFORMATION_FLOW__DISPLAY_NAME:
+				setDisplayName(DISPLAY_NAME_EDEFAULT);
+				return;
+			case UMLRpyPackage.IINFORMATION_FLOW__ID:
+				setId(ID_EDEFAULT);
+				return;
+			case UMLRpyPackage.IINFORMATION_FLOW__MY_STATE:
+				setMyState(MY_STATE_EDEFAULT);
+				return;
+			case UMLRpyPackage.IINFORMATION_FLOW__NAME:
+				setName(NAME_EDEFAULT);
+				return;
+			case UMLRpyPackage.IINFORMATION_FLOW__CONVEYED:
+				getConveyed().clear();
+				return;
+			case UMLRpyPackage.IINFORMATION_FLOW__END1_:
+				setEnd1_((End1_Type)null);
+				return;
+			case UMLRpyPackage.IINFORMATION_FLOW__END2_:
+				setEnd2_((End2_Type)null);
+				return;
+			case UMLRpyPackage.IINFORMATION_FLOW__DIRECTION_:
+				setDirection_(DIRECTION__EDEFAULT);
+				return;
+			case UMLRpyPackage.IINFORMATION_FLOW__MODIFIED_TIME_WEAK:
+				getModifiedTimeWeak().clear();
+				return;
+			case UMLRpyPackage.IINFORMATION_FLOW__DESCRIPTION:
+				setDescription((IDescription)null);
+				return;
+			case UMLRpyPackage.IINFORMATION_FLOW__END1_OBJECT_PORT_:
+				setEnd1ObjectPort_((IInstance)null);
+				return;
+			case UMLRpyPackage.IINFORMATION_FLOW__END2_OBJECT_PORT_:
+				setEnd2ObjectPort_((IInstance)null);
+				return;
+			case UMLRpyPackage.IINFORMATION_FLOW__REQUIREMEN_TRACABILITY_HANDLE:
+				setRequiremenTracabilityHandle(REQUIREMEN_TRACABILITY_HANDLE_EDEFAULT);
+				return;
+			case UMLRpyPackage.IINFORMATION_FLOW__HYPER_LINKS:
+				setHyperLinks((IMHyperLink)null);
+				return;
+			case UMLRpyPackage.IINFORMATION_FLOW__DEPENDENCIES:
+				setDependencies((IDependency)null);
+				return;
+			case UMLRpyPackage.IINFORMATION_FLOW__ANNOTATIONS:
+				setAnnotations((IRequirement)null);
+				return;
+			case UMLRpyPackage.IINFORMATION_FLOW__OBJECT_CREATION:
+				setObjectCreation(OBJECT_CREATION_EDEFAULT);
+				return;
+			case UMLRpyPackage.IINFORMATION_FLOW__UML_DEPENDENCY_ID:
+				setUmlDependencyID(UML_DEPENDENCY_ID_EDEFAULT);
+				return;
+			case UMLRpyPackage.IINFORMATION_FLOW__STEREOTYPES:
+				setStereotypes((IUnit)null);
+				return;
+			case UMLRpyPackage.IINFORMATION_FLOW__TAGS:
+				getTags().clear();
+				return;
+		}
+		super.eUnset(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public boolean eIsSet(int featureID) {
+		switch (featureID) {
+			case UMLRpyPackage.IINFORMATION_FLOW__EANNOTATIONS:
+				return eAnnotations != null && !eAnnotations.isEmpty();
+			case UMLRpyPackage.IINFORMATION_FLOW__DISPLAY_NAME:
+				return DISPLAY_NAME_EDEFAULT == null ? displayName != null : !DISPLAY_NAME_EDEFAULT.equals(displayName);
+			case UMLRpyPackage.IINFORMATION_FLOW__ID:
+				return ID_EDEFAULT == null ? id != null : !ID_EDEFAULT.equals(id);
+			case UMLRpyPackage.IINFORMATION_FLOW__MY_STATE:
+				return MY_STATE_EDEFAULT == null ? myState != null : !MY_STATE_EDEFAULT.equals(myState);
+			case UMLRpyPackage.IINFORMATION_FLOW__NAME:
+				return NAME_EDEFAULT == null ? name != null : !NAME_EDEFAULT.equals(name);
+			case UMLRpyPackage.IINFORMATION_FLOW__CONVEYED:
+				return conveyed != null && !conveyed.isEmpty();
+			case UMLRpyPackage.IINFORMATION_FLOW__END1_:
+				return end1_ != null;
+			case UMLRpyPackage.IINFORMATION_FLOW__END2_:
+				return end2_ != null;
+			case UMLRpyPackage.IINFORMATION_FLOW__DIRECTION_:
+				return DIRECTION__EDEFAULT == null ? direction_ != null : !DIRECTION__EDEFAULT.equals(direction_);
+			case UMLRpyPackage.IINFORMATION_FLOW__MODIFIED_TIME_WEAK:
+				return modifiedTimeWeak != null && !modifiedTimeWeak.isEmpty();
+			case UMLRpyPackage.IINFORMATION_FLOW__DESCRIPTION:
+				return description != null;
+			case UMLRpyPackage.IINFORMATION_FLOW__END1_OBJECT_PORT_:
+				return end1ObjectPort_ != null;
+			case UMLRpyPackage.IINFORMATION_FLOW__END2_OBJECT_PORT_:
+				return end2ObjectPort_ != null;
+			case UMLRpyPackage.IINFORMATION_FLOW__REQUIREMEN_TRACABILITY_HANDLE:
+				return REQUIREMEN_TRACABILITY_HANDLE_EDEFAULT == null ? requiremenTracabilityHandle != null : !REQUIREMEN_TRACABILITY_HANDLE_EDEFAULT.equals(requiremenTracabilityHandle);
+			case UMLRpyPackage.IINFORMATION_FLOW__HYPER_LINKS:
+				return hyperLinks != null;
+			case UMLRpyPackage.IINFORMATION_FLOW__DEPENDENCIES:
+				return dependencies != null;
+			case UMLRpyPackage.IINFORMATION_FLOW__ANNOTATIONS:
+				return annotations != null;
+			case UMLRpyPackage.IINFORMATION_FLOW__OBJECT_CREATION:
+				return OBJECT_CREATION_EDEFAULT == null ? objectCreation != null : !OBJECT_CREATION_EDEFAULT.equals(objectCreation);
+			case UMLRpyPackage.IINFORMATION_FLOW__UML_DEPENDENCY_ID:
+				return UML_DEPENDENCY_ID_EDEFAULT == null ? umlDependencyID != null : !UML_DEPENDENCY_ID_EDEFAULT.equals(umlDependencyID);
+			case UMLRpyPackage.IINFORMATION_FLOW__STEREOTYPES:
+				return stereotypes != null;
+			case UMLRpyPackage.IINFORMATION_FLOW__TAGS:
+				return tags != null && !tags.isEmpty();
+		}
+		return super.eIsSet(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public int eBaseStructuralFeatureID(int derivedFeatureID, Class<?> baseClass) {
+		if (baseClass == ElementsType.class) {
+			switch (derivedFeatureID) {
+				default: return -1;
+			}
+		}
+		if (baseClass == DependsOnType.class) {
+			switch (derivedFeatureID) {
+				default: return -1;
+			}
+		}
+		if (baseClass == EModelElement.class) {
+			switch (derivedFeatureID) {
+				case UMLRpyPackage.IINFORMATION_FLOW__EANNOTATIONS: return EcorePackage.EMODEL_ELEMENT__EANNOTATIONS;
+				default: return -1;
+			}
+		}
+		if (baseClass == IModelElement.class) {
+			switch (derivedFeatureID) {
+				case UMLRpyPackage.IINFORMATION_FLOW__DISPLAY_NAME: return UMLRpyPackage.IMODEL_ELEMENT__DISPLAY_NAME;
+				default: return -1;
+			}
+		}
+		return super.eBaseStructuralFeatureID(derivedFeatureID, baseClass);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public int eDerivedStructuralFeatureID(int baseFeatureID, Class<?> baseClass) {
+		if (baseClass == ElementsType.class) {
+			switch (baseFeatureID) {
+				default: return -1;
+			}
+		}
+		if (baseClass == DependsOnType.class) {
+			switch (baseFeatureID) {
+				default: return -1;
+			}
+		}
+		if (baseClass == EModelElement.class) {
+			switch (baseFeatureID) {
+				case EcorePackage.EMODEL_ELEMENT__EANNOTATIONS: return UMLRpyPackage.IINFORMATION_FLOW__EANNOTATIONS;
+				default: return -1;
+			}
+		}
+		if (baseClass == IModelElement.class) {
+			switch (baseFeatureID) {
+				case UMLRpyPackage.IMODEL_ELEMENT__DISPLAY_NAME: return UMLRpyPackage.IINFORMATION_FLOW__DISPLAY_NAME;
+				default: return -1;
+			}
+		}
+		return super.eDerivedStructuralFeatureID(baseFeatureID, baseClass);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public int eDerivedOperationID(int baseOperationID, Class<?> baseClass) {
+		if (baseClass == ElementsType.class) {
+			switch (baseOperationID) {
+				default: return -1;
+			}
+		}
+		if (baseClass == DependsOnType.class) {
+			switch (baseOperationID) {
+				default: return -1;
+			}
+		}
+		if (baseClass == EModelElement.class) {
+			switch (baseOperationID) {
+				case EcorePackage.EMODEL_ELEMENT___GET_EANNOTATION__STRING: return UMLRpyPackage.IINFORMATION_FLOW___GET_EANNOTATION__STRING;
+				default: return -1;
+			}
+		}
+		if (baseClass == IModelElement.class) {
+			switch (baseOperationID) {
+				default: return -1;
+			}
+		}
+		return super.eDerivedOperationID(baseOperationID, baseClass);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object eInvoke(int operationID, EList<?> arguments) throws InvocationTargetException {
+		switch (operationID) {
+			case UMLRpyPackage.IINFORMATION_FLOW___GET_EANNOTATION__STRING:
+				return getEAnnotation((String)arguments.get(0));
+		}
+		return super.eInvoke(operationID, arguments);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String toString() {
+		if (eIsProxy()) return super.toString();
+
+		StringBuffer result = new StringBuffer(super.toString());
+		result.append(" (displayName: "); //$NON-NLS-1$
+		result.append(displayName);
+		result.append(", id: "); //$NON-NLS-1$
+		result.append(id);
+		result.append(", myState: "); //$NON-NLS-1$
+		result.append(myState);
+		result.append(", name: "); //$NON-NLS-1$
+		result.append(name);
+		result.append(", direction_: "); //$NON-NLS-1$
+		result.append(direction_);
+		result.append(", modifiedTimeWeak: "); //$NON-NLS-1$
+		result.append(modifiedTimeWeak);
+		result.append(", requiremenTracabilityHandle: "); //$NON-NLS-1$
+		result.append(requiremenTracabilityHandle);
+		result.append(", objectCreation: "); //$NON-NLS-1$
+		result.append(objectCreation);
+		result.append(", umlDependencyID: "); //$NON-NLS-1$
+		result.append(umlDependencyID);
+		result.append(')');
+		return result.toString();
+	}
+
+} //IInformationFlowImpl
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/IInformationItemImpl.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/IInformationItemImpl.java
new file mode 100755
index 0000000..bb61fe8
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/IInformationItemImpl.java
@@ -0,0 +1,791 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl;
+
+import java.util.Collection;
+
+import org.eclipse.emf.common.notify.Notification;
+import org.eclipse.emf.common.notify.NotificationChain;
+
+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.EObjectContainmentEList;
+import org.eclipse.emf.ecore.util.EObjectResolvingEList;
+import org.eclipse.emf.ecore.util.InternalEList;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ConveyedType;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.DependsOnType;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ElementsType;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IDescription;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IEvent;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IInformationItem;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IRequirement;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>IInformation Item</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * </p>
+ * <ul>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IInformationItemImpl#getLastID <em>Last ID</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IInformationItemImpl#getId <em>Id</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IInformationItemImpl#getMyState <em>My State</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IInformationItemImpl#getName <em>Name</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IInformationItemImpl#getRequiremenTracabilityHandle <em>Requiremen Tracability Handle</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IInformationItemImpl#getModifiedTimeWeak <em>Modified Time Weak</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IInformationItemImpl#getDescription <em>Description</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IInformationItemImpl#getRepresented <em>Represented</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IInformationItemImpl#getAnnotations <em>Annotations</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IInformationItemImpl#getObjectCreation <em>Object Creation</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IInformationItemImpl#getUmlDependencyID <em>Uml Dependency ID</em>}</li>
+ * </ul>
+ *
+ * @generated
+ */
+public class IInformationItemImpl extends DeclarativesTypeImpl implements IInformationItem {
+	/**
+	 * The default value of the '{@link #getLastID() <em>Last ID</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getLastID()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String LAST_ID_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getLastID() <em>Last ID</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getLastID()
+	 * @generated
+	 * @ordered
+	 */
+	protected String lastID = LAST_ID_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getId() <em>Id</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getId()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String ID_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getId() <em>Id</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getId()
+	 * @generated
+	 * @ordered
+	 */
+	protected String id = ID_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getMyState() <em>My State</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getMyState()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String MY_STATE_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getMyState() <em>My State</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getMyState()
+	 * @generated
+	 * @ordered
+	 */
+	protected String myState = MY_STATE_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getName() <em>Name</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getName()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String NAME_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getName() <em>Name</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getName()
+	 * @generated
+	 * @ordered
+	 */
+	protected String name = NAME_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getRequiremenTracabilityHandle() <em>Requiremen Tracability Handle</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getRequiremenTracabilityHandle()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String REQUIREMEN_TRACABILITY_HANDLE_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getRequiremenTracabilityHandle() <em>Requiremen Tracability Handle</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getRequiremenTracabilityHandle()
+	 * @generated
+	 * @ordered
+	 */
+	protected String requiremenTracabilityHandle = REQUIREMEN_TRACABILITY_HANDLE_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getModifiedTimeWeak() <em>Modified Time Weak</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getModifiedTimeWeak()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String MODIFIED_TIME_WEAK_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getModifiedTimeWeak() <em>Modified Time Weak</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getModifiedTimeWeak()
+	 * @generated
+	 * @ordered
+	 */
+	protected String modifiedTimeWeak = MODIFIED_TIME_WEAK_EDEFAULT;
+
+	/**
+	 * The cached value of the '{@link #getDescription() <em>Description</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getDescription()
+	 * @generated
+	 * @ordered
+	 */
+	protected IDescription description;
+
+	/**
+	 * The cached value of the '{@link #getRepresented() <em>Represented</em>}' reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getRepresented()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<IEvent> represented;
+
+	/**
+	 * The cached value of the '{@link #getAnnotations() <em>Annotations</em>}' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getAnnotations()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<IRequirement> annotations;
+
+	/**
+	 * The default value of the '{@link #getObjectCreation() <em>Object Creation</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getObjectCreation()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String OBJECT_CREATION_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getObjectCreation() <em>Object Creation</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getObjectCreation()
+	 * @generated
+	 * @ordered
+	 */
+	protected String objectCreation = OBJECT_CREATION_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getUmlDependencyID() <em>Uml Dependency ID</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getUmlDependencyID()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String UML_DEPENDENCY_ID_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getUmlDependencyID() <em>Uml Dependency ID</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getUmlDependencyID()
+	 * @generated
+	 * @ordered
+	 */
+	protected String umlDependencyID = UML_DEPENDENCY_ID_EDEFAULT;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected IInformationItemImpl() {
+		super();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EClass eStaticClass() {
+		return UMLRpyPackage.eINSTANCE.getIInformationItem();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getLastID() {
+		return lastID;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setLastID(String newLastID) {
+		String oldLastID = lastID;
+		lastID = newLastID;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IINFORMATION_ITEM__LAST_ID, oldLastID, lastID));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getId() {
+		return id;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setId(String newId) {
+		String oldId = id;
+		id = newId;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IINFORMATION_ITEM__ID, oldId, id));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getMyState() {
+		return myState;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setMyState(String newMyState) {
+		String oldMyState = myState;
+		myState = newMyState;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IINFORMATION_ITEM__MY_STATE, oldMyState, myState));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getName() {
+		return name;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setName(String newName) {
+		String oldName = name;
+		name = newName;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IINFORMATION_ITEM__NAME, oldName, name));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getRequiremenTracabilityHandle() {
+		return requiremenTracabilityHandle;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setRequiremenTracabilityHandle(String newRequiremenTracabilityHandle) {
+		String oldRequiremenTracabilityHandle = requiremenTracabilityHandle;
+		requiremenTracabilityHandle = newRequiremenTracabilityHandle;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IINFORMATION_ITEM__REQUIREMEN_TRACABILITY_HANDLE, oldRequiremenTracabilityHandle, requiremenTracabilityHandle));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getModifiedTimeWeak() {
+		return modifiedTimeWeak;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setModifiedTimeWeak(String newModifiedTimeWeak) {
+		String oldModifiedTimeWeak = modifiedTimeWeak;
+		modifiedTimeWeak = newModifiedTimeWeak;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IINFORMATION_ITEM__MODIFIED_TIME_WEAK, oldModifiedTimeWeak, modifiedTimeWeak));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IDescription getDescription() {
+		if (description != null && description.eIsProxy()) {
+			InternalEObject oldDescription = (InternalEObject)description;
+			description = (IDescription)eResolveProxy(oldDescription);
+			if (description != oldDescription) {
+				InternalEObject newDescription = (InternalEObject)description;
+				NotificationChain msgs = oldDescription.eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IINFORMATION_ITEM__DESCRIPTION, null, null);
+				if (newDescription.eInternalContainer() == null) {
+					msgs = newDescription.eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IINFORMATION_ITEM__DESCRIPTION, null, msgs);
+				}
+				if (msgs != null) msgs.dispatch();
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.IINFORMATION_ITEM__DESCRIPTION, oldDescription, description));
+			}
+		}
+		return description;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IDescription basicGetDescription() {
+		return description;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public NotificationChain basicSetDescription(IDescription newDescription, NotificationChain msgs) {
+		IDescription oldDescription = description;
+		description = newDescription;
+		if (eNotificationRequired()) {
+			ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IINFORMATION_ITEM__DESCRIPTION, oldDescription, newDescription);
+			if (msgs == null) msgs = notification; else msgs.add(notification);
+		}
+		return msgs;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setDescription(IDescription newDescription) {
+		if (newDescription != description) {
+			NotificationChain msgs = null;
+			if (description != null)
+				msgs = ((InternalEObject)description).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IINFORMATION_ITEM__DESCRIPTION, null, msgs);
+			if (newDescription != null)
+				msgs = ((InternalEObject)newDescription).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IINFORMATION_ITEM__DESCRIPTION, null, msgs);
+			msgs = basicSetDescription(newDescription, msgs);
+			if (msgs != null) msgs.dispatch();
+		}
+		else if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IINFORMATION_ITEM__DESCRIPTION, newDescription, newDescription));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<IEvent> getRepresented() {
+		if (represented == null) {
+			represented = new EObjectResolvingEList<IEvent>(IEvent.class, this, UMLRpyPackage.IINFORMATION_ITEM__REPRESENTED);
+		}
+		return represented;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<IRequirement> getAnnotations() {
+		if (annotations == null) {
+			annotations = new EObjectContainmentEList.Resolving<IRequirement>(IRequirement.class, this, UMLRpyPackage.IINFORMATION_ITEM__ANNOTATIONS);
+		}
+		return annotations;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getObjectCreation() {
+		return objectCreation;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setObjectCreation(String newObjectCreation) {
+		String oldObjectCreation = objectCreation;
+		objectCreation = newObjectCreation;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IINFORMATION_ITEM__OBJECT_CREATION, oldObjectCreation, objectCreation));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getUmlDependencyID() {
+		return umlDependencyID;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setUmlDependencyID(String newUmlDependencyID) {
+		String oldUmlDependencyID = umlDependencyID;
+		umlDependencyID = newUmlDependencyID;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IINFORMATION_ITEM__UML_DEPENDENCY_ID, oldUmlDependencyID, umlDependencyID));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
+		switch (featureID) {
+			case UMLRpyPackage.IINFORMATION_ITEM__DESCRIPTION:
+				return basicSetDescription(null, msgs);
+			case UMLRpyPackage.IINFORMATION_ITEM__ANNOTATIONS:
+				return ((InternalEList<?>)getAnnotations()).basicRemove(otherEnd, msgs);
+		}
+		return super.eInverseRemove(otherEnd, featureID, msgs);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object eGet(int featureID, boolean resolve, boolean coreType) {
+		switch (featureID) {
+			case UMLRpyPackage.IINFORMATION_ITEM__LAST_ID:
+				return getLastID();
+			case UMLRpyPackage.IINFORMATION_ITEM__ID:
+				return getId();
+			case UMLRpyPackage.IINFORMATION_ITEM__MY_STATE:
+				return getMyState();
+			case UMLRpyPackage.IINFORMATION_ITEM__NAME:
+				return getName();
+			case UMLRpyPackage.IINFORMATION_ITEM__REQUIREMEN_TRACABILITY_HANDLE:
+				return getRequiremenTracabilityHandle();
+			case UMLRpyPackage.IINFORMATION_ITEM__MODIFIED_TIME_WEAK:
+				return getModifiedTimeWeak();
+			case UMLRpyPackage.IINFORMATION_ITEM__DESCRIPTION:
+				if (resolve) return getDescription();
+				return basicGetDescription();
+			case UMLRpyPackage.IINFORMATION_ITEM__REPRESENTED:
+				return getRepresented();
+			case UMLRpyPackage.IINFORMATION_ITEM__ANNOTATIONS:
+				return getAnnotations();
+			case UMLRpyPackage.IINFORMATION_ITEM__OBJECT_CREATION:
+				return getObjectCreation();
+			case UMLRpyPackage.IINFORMATION_ITEM__UML_DEPENDENCY_ID:
+				return getUmlDependencyID();
+		}
+		return super.eGet(featureID, resolve, coreType);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@SuppressWarnings("unchecked")
+	@Override
+	public void eSet(int featureID, Object newValue) {
+		switch (featureID) {
+			case UMLRpyPackage.IINFORMATION_ITEM__LAST_ID:
+				setLastID((String)newValue);
+				return;
+			case UMLRpyPackage.IINFORMATION_ITEM__ID:
+				setId((String)newValue);
+				return;
+			case UMLRpyPackage.IINFORMATION_ITEM__MY_STATE:
+				setMyState((String)newValue);
+				return;
+			case UMLRpyPackage.IINFORMATION_ITEM__NAME:
+				setName((String)newValue);
+				return;
+			case UMLRpyPackage.IINFORMATION_ITEM__REQUIREMEN_TRACABILITY_HANDLE:
+				setRequiremenTracabilityHandle((String)newValue);
+				return;
+			case UMLRpyPackage.IINFORMATION_ITEM__MODIFIED_TIME_WEAK:
+				setModifiedTimeWeak((String)newValue);
+				return;
+			case UMLRpyPackage.IINFORMATION_ITEM__DESCRIPTION:
+				setDescription((IDescription)newValue);
+				return;
+			case UMLRpyPackage.IINFORMATION_ITEM__REPRESENTED:
+				getRepresented().clear();
+				getRepresented().addAll((Collection<? extends IEvent>)newValue);
+				return;
+			case UMLRpyPackage.IINFORMATION_ITEM__ANNOTATIONS:
+				getAnnotations().clear();
+				getAnnotations().addAll((Collection<? extends IRequirement>)newValue);
+				return;
+			case UMLRpyPackage.IINFORMATION_ITEM__OBJECT_CREATION:
+				setObjectCreation((String)newValue);
+				return;
+			case UMLRpyPackage.IINFORMATION_ITEM__UML_DEPENDENCY_ID:
+				setUmlDependencyID((String)newValue);
+				return;
+		}
+		super.eSet(featureID, newValue);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void eUnset(int featureID) {
+		switch (featureID) {
+			case UMLRpyPackage.IINFORMATION_ITEM__LAST_ID:
+				setLastID(LAST_ID_EDEFAULT);
+				return;
+			case UMLRpyPackage.IINFORMATION_ITEM__ID:
+				setId(ID_EDEFAULT);
+				return;
+			case UMLRpyPackage.IINFORMATION_ITEM__MY_STATE:
+				setMyState(MY_STATE_EDEFAULT);
+				return;
+			case UMLRpyPackage.IINFORMATION_ITEM__NAME:
+				setName(NAME_EDEFAULT);
+				return;
+			case UMLRpyPackage.IINFORMATION_ITEM__REQUIREMEN_TRACABILITY_HANDLE:
+				setRequiremenTracabilityHandle(REQUIREMEN_TRACABILITY_HANDLE_EDEFAULT);
+				return;
+			case UMLRpyPackage.IINFORMATION_ITEM__MODIFIED_TIME_WEAK:
+				setModifiedTimeWeak(MODIFIED_TIME_WEAK_EDEFAULT);
+				return;
+			case UMLRpyPackage.IINFORMATION_ITEM__DESCRIPTION:
+				setDescription((IDescription)null);
+				return;
+			case UMLRpyPackage.IINFORMATION_ITEM__REPRESENTED:
+				getRepresented().clear();
+				return;
+			case UMLRpyPackage.IINFORMATION_ITEM__ANNOTATIONS:
+				getAnnotations().clear();
+				return;
+			case UMLRpyPackage.IINFORMATION_ITEM__OBJECT_CREATION:
+				setObjectCreation(OBJECT_CREATION_EDEFAULT);
+				return;
+			case UMLRpyPackage.IINFORMATION_ITEM__UML_DEPENDENCY_ID:
+				setUmlDependencyID(UML_DEPENDENCY_ID_EDEFAULT);
+				return;
+		}
+		super.eUnset(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public boolean eIsSet(int featureID) {
+		switch (featureID) {
+			case UMLRpyPackage.IINFORMATION_ITEM__LAST_ID:
+				return LAST_ID_EDEFAULT == null ? lastID != null : !LAST_ID_EDEFAULT.equals(lastID);
+			case UMLRpyPackage.IINFORMATION_ITEM__ID:
+				return ID_EDEFAULT == null ? id != null : !ID_EDEFAULT.equals(id);
+			case UMLRpyPackage.IINFORMATION_ITEM__MY_STATE:
+				return MY_STATE_EDEFAULT == null ? myState != null : !MY_STATE_EDEFAULT.equals(myState);
+			case UMLRpyPackage.IINFORMATION_ITEM__NAME:
+				return NAME_EDEFAULT == null ? name != null : !NAME_EDEFAULT.equals(name);
+			case UMLRpyPackage.IINFORMATION_ITEM__REQUIREMEN_TRACABILITY_HANDLE:
+				return REQUIREMEN_TRACABILITY_HANDLE_EDEFAULT == null ? requiremenTracabilityHandle != null : !REQUIREMEN_TRACABILITY_HANDLE_EDEFAULT.equals(requiremenTracabilityHandle);
+			case UMLRpyPackage.IINFORMATION_ITEM__MODIFIED_TIME_WEAK:
+				return MODIFIED_TIME_WEAK_EDEFAULT == null ? modifiedTimeWeak != null : !MODIFIED_TIME_WEAK_EDEFAULT.equals(modifiedTimeWeak);
+			case UMLRpyPackage.IINFORMATION_ITEM__DESCRIPTION:
+				return description != null;
+			case UMLRpyPackage.IINFORMATION_ITEM__REPRESENTED:
+				return represented != null && !represented.isEmpty();
+			case UMLRpyPackage.IINFORMATION_ITEM__ANNOTATIONS:
+				return annotations != null && !annotations.isEmpty();
+			case UMLRpyPackage.IINFORMATION_ITEM__OBJECT_CREATION:
+				return OBJECT_CREATION_EDEFAULT == null ? objectCreation != null : !OBJECT_CREATION_EDEFAULT.equals(objectCreation);
+			case UMLRpyPackage.IINFORMATION_ITEM__UML_DEPENDENCY_ID:
+				return UML_DEPENDENCY_ID_EDEFAULT == null ? umlDependencyID != null : !UML_DEPENDENCY_ID_EDEFAULT.equals(umlDependencyID);
+		}
+		return super.eIsSet(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public int eBaseStructuralFeatureID(int derivedFeatureID, Class<?> baseClass) {
+		if (baseClass == ElementsType.class) {
+			switch (derivedFeatureID) {
+				default: return -1;
+			}
+		}
+		if (baseClass == DependsOnType.class) {
+			switch (derivedFeatureID) {
+				default: return -1;
+			}
+		}
+		if (baseClass == ConveyedType.class) {
+			switch (derivedFeatureID) {
+				case UMLRpyPackage.IINFORMATION_ITEM__LAST_ID: return UMLRpyPackage.CONVEYED_TYPE__LAST_ID;
+				default: return -1;
+			}
+		}
+		return super.eBaseStructuralFeatureID(derivedFeatureID, baseClass);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public int eDerivedStructuralFeatureID(int baseFeatureID, Class<?> baseClass) {
+		if (baseClass == ElementsType.class) {
+			switch (baseFeatureID) {
+				default: return -1;
+			}
+		}
+		if (baseClass == DependsOnType.class) {
+			switch (baseFeatureID) {
+				default: return -1;
+			}
+		}
+		if (baseClass == ConveyedType.class) {
+			switch (baseFeatureID) {
+				case UMLRpyPackage.CONVEYED_TYPE__LAST_ID: return UMLRpyPackage.IINFORMATION_ITEM__LAST_ID;
+				default: return -1;
+			}
+		}
+		return super.eDerivedStructuralFeatureID(baseFeatureID, baseClass);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String toString() {
+		if (eIsProxy()) return super.toString();
+
+		StringBuffer result = new StringBuffer(super.toString());
+		result.append(" (lastID: "); //$NON-NLS-1$
+		result.append(lastID);
+		result.append(", id: "); //$NON-NLS-1$
+		result.append(id);
+		result.append(", myState: "); //$NON-NLS-1$
+		result.append(myState);
+		result.append(", name: "); //$NON-NLS-1$
+		result.append(name);
+		result.append(", requiremenTracabilityHandle: "); //$NON-NLS-1$
+		result.append(requiremenTracabilityHandle);
+		result.append(", modifiedTimeWeak: "); //$NON-NLS-1$
+		result.append(modifiedTimeWeak);
+		result.append(", objectCreation: "); //$NON-NLS-1$
+		result.append(objectCreation);
+		result.append(", umlDependencyID: "); //$NON-NLS-1$
+		result.append(umlDependencyID);
+		result.append(')');
+		return result.toString();
+	}
+
+} //IInformationItemImpl
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/IInstanceImpl.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/IInstanceImpl.java
new file mode 100755
index 0000000..08e5759
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/IInstanceImpl.java
@@ -0,0 +1,359 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl;
+
+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.impl.ENotificationImpl;
+
+import org.eclipse.emf.ecore.util.EDataTypeEList;
+import org.eclipse.emf.ecore.util.EObjectResolvingEList;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IInstance;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UnknownType;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>IInstance</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * </p>
+ * <ul>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IInstanceImpl#getModifiedTimeWeak <em>Modified Time Weak</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IInstanceImpl#getId <em>Id</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IInstanceImpl#getInverse <em>Inverse</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IInstanceImpl#getMyState <em>My State</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IInstanceImpl#getName <em>Name</em>}</li>
+ * </ul>
+ *
+ * @generated
+ */
+public class IInstanceImpl extends IRelationImpl implements IInstance {
+	/**
+	 * The cached value of the '{@link #getModifiedTimeWeak() <em>Modified Time Weak</em>}' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getModifiedTimeWeak()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<String> modifiedTimeWeak;
+
+	/**
+	 * The default value of the '{@link #getId() <em>Id</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getId()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String ID_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getId() <em>Id</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getId()
+	 * @generated
+	 * @ordered
+	 */
+	protected String id = ID_EDEFAULT;
+
+	/**
+	 * The cached value of the '{@link #getInverse() <em>Inverse</em>}' reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getInverse()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<UnknownType> inverse;
+
+	/**
+	 * The default value of the '{@link #getMyState() <em>My State</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getMyState()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String MY_STATE_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getMyState() <em>My State</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getMyState()
+	 * @generated
+	 * @ordered
+	 */
+	protected String myState = MY_STATE_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getName() <em>Name</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getName()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String NAME_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getName() <em>Name</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getName()
+	 * @generated
+	 * @ordered
+	 */
+	protected String name = NAME_EDEFAULT;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected IInstanceImpl() {
+		super();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EClass eStaticClass() {
+		return UMLRpyPackage.eINSTANCE.getIInstance();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<String> getModifiedTimeWeak() {
+		if (modifiedTimeWeak == null) {
+			modifiedTimeWeak = new EDataTypeEList<String>(String.class, this, UMLRpyPackage.IINSTANCE__MODIFIED_TIME_WEAK);
+		}
+		return modifiedTimeWeak;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getId() {
+		return id;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setId(String newId) {
+		String oldId = id;
+		id = newId;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IINSTANCE__ID, oldId, id));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<UnknownType> getInverse() {
+		if (inverse == null) {
+			inverse = new EObjectResolvingEList<UnknownType>(UnknownType.class, this, UMLRpyPackage.IINSTANCE__INVERSE);
+		}
+		return inverse;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getMyState() {
+		return myState;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setMyState(String newMyState) {
+		String oldMyState = myState;
+		myState = newMyState;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IINSTANCE__MY_STATE, oldMyState, myState));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getName() {
+		return name;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setName(String newName) {
+		String oldName = name;
+		name = newName;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IINSTANCE__NAME, oldName, name));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object eGet(int featureID, boolean resolve, boolean coreType) {
+		switch (featureID) {
+			case UMLRpyPackage.IINSTANCE__MODIFIED_TIME_WEAK:
+				return getModifiedTimeWeak();
+			case UMLRpyPackage.IINSTANCE__ID:
+				return getId();
+			case UMLRpyPackage.IINSTANCE__INVERSE:
+				return getInverse();
+			case UMLRpyPackage.IINSTANCE__MY_STATE:
+				return getMyState();
+			case UMLRpyPackage.IINSTANCE__NAME:
+				return getName();
+		}
+		return super.eGet(featureID, resolve, coreType);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@SuppressWarnings("unchecked")
+	@Override
+	public void eSet(int featureID, Object newValue) {
+		switch (featureID) {
+			case UMLRpyPackage.IINSTANCE__MODIFIED_TIME_WEAK:
+				getModifiedTimeWeak().clear();
+				getModifiedTimeWeak().addAll((Collection<? extends String>)newValue);
+				return;
+			case UMLRpyPackage.IINSTANCE__ID:
+				setId((String)newValue);
+				return;
+			case UMLRpyPackage.IINSTANCE__INVERSE:
+				getInverse().clear();
+				getInverse().addAll((Collection<? extends UnknownType>)newValue);
+				return;
+			case UMLRpyPackage.IINSTANCE__MY_STATE:
+				setMyState((String)newValue);
+				return;
+			case UMLRpyPackage.IINSTANCE__NAME:
+				setName((String)newValue);
+				return;
+		}
+		super.eSet(featureID, newValue);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void eUnset(int featureID) {
+		switch (featureID) {
+			case UMLRpyPackage.IINSTANCE__MODIFIED_TIME_WEAK:
+				getModifiedTimeWeak().clear();
+				return;
+			case UMLRpyPackage.IINSTANCE__ID:
+				setId(ID_EDEFAULT);
+				return;
+			case UMLRpyPackage.IINSTANCE__INVERSE:
+				getInverse().clear();
+				return;
+			case UMLRpyPackage.IINSTANCE__MY_STATE:
+				setMyState(MY_STATE_EDEFAULT);
+				return;
+			case UMLRpyPackage.IINSTANCE__NAME:
+				setName(NAME_EDEFAULT);
+				return;
+		}
+		super.eUnset(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public boolean eIsSet(int featureID) {
+		switch (featureID) {
+			case UMLRpyPackage.IINSTANCE__MODIFIED_TIME_WEAK:
+				return modifiedTimeWeak != null && !modifiedTimeWeak.isEmpty();
+			case UMLRpyPackage.IINSTANCE__ID:
+				return ID_EDEFAULT == null ? id != null : !ID_EDEFAULT.equals(id);
+			case UMLRpyPackage.IINSTANCE__INVERSE:
+				return inverse != null && !inverse.isEmpty();
+			case UMLRpyPackage.IINSTANCE__MY_STATE:
+				return MY_STATE_EDEFAULT == null ? myState != null : !MY_STATE_EDEFAULT.equals(myState);
+			case UMLRpyPackage.IINSTANCE__NAME:
+				return NAME_EDEFAULT == null ? name != null : !NAME_EDEFAULT.equals(name);
+		}
+		return super.eIsSet(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String toString() {
+		if (eIsProxy()) return super.toString();
+
+		StringBuffer result = new StringBuffer(super.toString());
+		result.append(" (modifiedTimeWeak: "); //$NON-NLS-1$
+		result.append(modifiedTimeWeak);
+		result.append(", id: "); //$NON-NLS-1$
+		result.append(id);
+		result.append(", myState: "); //$NON-NLS-1$
+		result.append(myState);
+		result.append(", name: "); //$NON-NLS-1$
+		result.append(name);
+		result.append(')');
+		return result.toString();
+	}
+
+} //IInstanceImpl
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/IInstanceSlotImpl.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/IInstanceSlotImpl.java
new file mode 100755
index 0000000..f03fbb5
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/IInstanceSlotImpl.java
@@ -0,0 +1,47 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl;
+
+import org.eclipse.emf.ecore.EClass;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IInstanceSlot;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>IInstance Slot</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+public class IInstanceSlotImpl extends IModelElementImpl implements IInstanceSlot {
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected IInstanceSlotImpl() {
+		super();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EClass eStaticClass() {
+		return UMLRpyPackage.eINSTANCE.getIInstanceSlot();
+	}
+
+} //IInstanceSlotImpl
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/IInstanceSpecificationImpl.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/IInstanceSpecificationImpl.java
new file mode 100755
index 0000000..36e8149
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/IInstanceSpecificationImpl.java
@@ -0,0 +1,47 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl;
+
+import org.eclipse.emf.ecore.EClass;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IInstanceSpecification;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>IInstance Specification</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+public class IInstanceSpecificationImpl extends IModelElementImpl implements IInstanceSpecification {
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected IInstanceSpecificationImpl() {
+		super();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EClass eStaticClass() {
+		return UMLRpyPackage.eINSTANCE.getIInstanceSpecification();
+	}
+
+} //IInstanceSpecificationImpl
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/IInstanceValueImpl.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/IInstanceValueImpl.java
new file mode 100755
index 0000000..14256d7
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/IInstanceValueImpl.java
@@ -0,0 +1,288 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.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.interoperability.rpy.rpymetamodel.IInstanceValue;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ValueType;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>IInstance Value</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * </p>
+ * <ul>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IInstanceValueImpl#getId <em>Id</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IInstanceValueImpl#getModifiedTimeWeak <em>Modified Time Weak</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IInstanceValueImpl#getValue <em>Value</em>}</li>
+ * </ul>
+ *
+ * @generated
+ */
+public class IInstanceValueImpl extends IValueSpecificationImpl implements IInstanceValue {
+	/**
+	 * The default value of the '{@link #getId() <em>Id</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getId()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String ID_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getId() <em>Id</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getId()
+	 * @generated
+	 * @ordered
+	 */
+	protected String id = ID_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getModifiedTimeWeak() <em>Modified Time Weak</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getModifiedTimeWeak()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String MODIFIED_TIME_WEAK_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getModifiedTimeWeak() <em>Modified Time Weak</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getModifiedTimeWeak()
+	 * @generated
+	 * @ordered
+	 */
+	protected String modifiedTimeWeak = MODIFIED_TIME_WEAK_EDEFAULT;
+
+	/**
+	 * The cached value of the '{@link #getValue() <em>Value</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getValue()
+	 * @generated
+	 * @ordered
+	 */
+	protected ValueType value;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected IInstanceValueImpl() {
+		super();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EClass eStaticClass() {
+		return UMLRpyPackage.eINSTANCE.getIInstanceValue();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getId() {
+		return id;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setId(String newId) {
+		String oldId = id;
+		id = newId;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IINSTANCE_VALUE__ID, oldId, id));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getModifiedTimeWeak() {
+		return modifiedTimeWeak;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setModifiedTimeWeak(String newModifiedTimeWeak) {
+		String oldModifiedTimeWeak = modifiedTimeWeak;
+		modifiedTimeWeak = newModifiedTimeWeak;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IINSTANCE_VALUE__MODIFIED_TIME_WEAK, oldModifiedTimeWeak, modifiedTimeWeak));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public ValueType getValue() {
+		if (value != null && value.eIsProxy()) {
+			InternalEObject oldValue = (InternalEObject)value;
+			value = (ValueType)eResolveProxy(oldValue);
+			if (value != oldValue) {
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.IINSTANCE_VALUE__VALUE, oldValue, value));
+			}
+		}
+		return value;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public ValueType basicGetValue() {
+		return value;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setValue(ValueType newValue) {
+		ValueType oldValue = value;
+		value = newValue;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IINSTANCE_VALUE__VALUE, oldValue, value));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object eGet(int featureID, boolean resolve, boolean coreType) {
+		switch (featureID) {
+			case UMLRpyPackage.IINSTANCE_VALUE__ID:
+				return getId();
+			case UMLRpyPackage.IINSTANCE_VALUE__MODIFIED_TIME_WEAK:
+				return getModifiedTimeWeak();
+			case UMLRpyPackage.IINSTANCE_VALUE__VALUE:
+				if (resolve) return getValue();
+				return basicGetValue();
+		}
+		return super.eGet(featureID, resolve, coreType);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void eSet(int featureID, Object newValue) {
+		switch (featureID) {
+			case UMLRpyPackage.IINSTANCE_VALUE__ID:
+				setId((String)newValue);
+				return;
+			case UMLRpyPackage.IINSTANCE_VALUE__MODIFIED_TIME_WEAK:
+				setModifiedTimeWeak((String)newValue);
+				return;
+			case UMLRpyPackage.IINSTANCE_VALUE__VALUE:
+				setValue((ValueType)newValue);
+				return;
+		}
+		super.eSet(featureID, newValue);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void eUnset(int featureID) {
+		switch (featureID) {
+			case UMLRpyPackage.IINSTANCE_VALUE__ID:
+				setId(ID_EDEFAULT);
+				return;
+			case UMLRpyPackage.IINSTANCE_VALUE__MODIFIED_TIME_WEAK:
+				setModifiedTimeWeak(MODIFIED_TIME_WEAK_EDEFAULT);
+				return;
+			case UMLRpyPackage.IINSTANCE_VALUE__VALUE:
+				setValue((ValueType)null);
+				return;
+		}
+		super.eUnset(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public boolean eIsSet(int featureID) {
+		switch (featureID) {
+			case UMLRpyPackage.IINSTANCE_VALUE__ID:
+				return ID_EDEFAULT == null ? id != null : !ID_EDEFAULT.equals(id);
+			case UMLRpyPackage.IINSTANCE_VALUE__MODIFIED_TIME_WEAK:
+				return MODIFIED_TIME_WEAK_EDEFAULT == null ? modifiedTimeWeak != null : !MODIFIED_TIME_WEAK_EDEFAULT.equals(modifiedTimeWeak);
+			case UMLRpyPackage.IINSTANCE_VALUE__VALUE:
+				return value != null;
+		}
+		return super.eIsSet(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String toString() {
+		if (eIsProxy()) return super.toString();
+
+		StringBuffer result = new StringBuffer(super.toString());
+		result.append(" (id: "); //$NON-NLS-1$
+		result.append(id);
+		result.append(", modifiedTimeWeak: "); //$NON-NLS-1$
+		result.append(modifiedTimeWeak);
+		result.append(')');
+		return result.toString();
+	}
+
+} //IInstanceValueImpl
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/IInteractionOccurrenceImpl.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/IInteractionOccurrenceImpl.java
new file mode 100755
index 0000000..8960ef7
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/IInteractionOccurrenceImpl.java
@@ -0,0 +1,615 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl;
+
+import org.eclipse.emf.common.notify.Notification;
+import org.eclipse.emf.common.notify.NotificationChain;
+
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.InternalEObject;
+
+import org.eclipse.emf.ecore.impl.ENotificationImpl;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IInteractionOccurrence;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMSC;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IStereotype;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITag;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>IInteraction Occurrence</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * </p>
+ * <ul>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IInteractionOccurrenceImpl#getId <em>Id</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IInteractionOccurrenceImpl#getName <em>Name</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IInteractionOccurrenceImpl#getModifiedTimeWeak <em>Modified Time Weak</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IInteractionOccurrenceImpl#getM_pRefSD <em>MpRef SD</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IInteractionOccurrenceImpl#getStereotypes <em>Stereotypes</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IInteractionOccurrenceImpl#getTags <em>Tags</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IInteractionOccurrenceImpl#getObjectCreation <em>Object Creation</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IInteractionOccurrenceImpl#getUmlDependencyID <em>Uml Dependency ID</em>}</li>
+ * </ul>
+ *
+ * @generated
+ */
+public class IInteractionOccurrenceImpl extends IModelElementImpl implements IInteractionOccurrence {
+	/**
+	 * The default value of the '{@link #getId() <em>Id</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getId()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String ID_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getId() <em>Id</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getId()
+	 * @generated
+	 * @ordered
+	 */
+	protected String id = ID_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getName() <em>Name</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getName()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String NAME_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getName() <em>Name</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getName()
+	 * @generated
+	 * @ordered
+	 */
+	protected String name = NAME_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getModifiedTimeWeak() <em>Modified Time Weak</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getModifiedTimeWeak()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String MODIFIED_TIME_WEAK_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getModifiedTimeWeak() <em>Modified Time Weak</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getModifiedTimeWeak()
+	 * @generated
+	 * @ordered
+	 */
+	protected String modifiedTimeWeak = MODIFIED_TIME_WEAK_EDEFAULT;
+
+	/**
+	 * The cached value of the '{@link #getM_pRefSD() <em>MpRef SD</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_pRefSD()
+	 * @generated
+	 * @ordered
+	 */
+	protected IMSC m_pRefSD;
+
+	/**
+	 * The cached value of the '{@link #getStereotypes() <em>Stereotypes</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getStereotypes()
+	 * @generated
+	 * @ordered
+	 */
+	protected IStereotype stereotypes;
+
+	/**
+	 * The cached value of the '{@link #getTags() <em>Tags</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getTags()
+	 * @generated
+	 * @ordered
+	 */
+	protected ITag tags;
+
+	/**
+	 * The default value of the '{@link #getObjectCreation() <em>Object Creation</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getObjectCreation()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String OBJECT_CREATION_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getObjectCreation() <em>Object Creation</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getObjectCreation()
+	 * @generated
+	 * @ordered
+	 */
+	protected String objectCreation = OBJECT_CREATION_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getUmlDependencyID() <em>Uml Dependency ID</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getUmlDependencyID()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String UML_DEPENDENCY_ID_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getUmlDependencyID() <em>Uml Dependency ID</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getUmlDependencyID()
+	 * @generated
+	 * @ordered
+	 */
+	protected String umlDependencyID = UML_DEPENDENCY_ID_EDEFAULT;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected IInteractionOccurrenceImpl() {
+		super();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EClass eStaticClass() {
+		return UMLRpyPackage.eINSTANCE.getIInteractionOccurrence();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getId() {
+		return id;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setId(String newId) {
+		String oldId = id;
+		id = newId;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IINTERACTION_OCCURRENCE__ID, oldId, id));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getName() {
+		return name;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setName(String newName) {
+		String oldName = name;
+		name = newName;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IINTERACTION_OCCURRENCE__NAME, oldName, name));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getModifiedTimeWeak() {
+		return modifiedTimeWeak;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setModifiedTimeWeak(String newModifiedTimeWeak) {
+		String oldModifiedTimeWeak = modifiedTimeWeak;
+		modifiedTimeWeak = newModifiedTimeWeak;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IINTERACTION_OCCURRENCE__MODIFIED_TIME_WEAK, oldModifiedTimeWeak, modifiedTimeWeak));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IMSC getM_pRefSD() {
+		if (m_pRefSD != null && m_pRefSD.eIsProxy()) {
+			InternalEObject oldM_pRefSD = (InternalEObject)m_pRefSD;
+			m_pRefSD = (IMSC)eResolveProxy(oldM_pRefSD);
+			if (m_pRefSD != oldM_pRefSD) {
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.IINTERACTION_OCCURRENCE__MPREF_SD, oldM_pRefSD, m_pRefSD));
+			}
+		}
+		return m_pRefSD;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IMSC basicGetM_pRefSD() {
+		return m_pRefSD;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_pRefSD(IMSC newM_pRefSD) {
+		IMSC oldM_pRefSD = m_pRefSD;
+		m_pRefSD = newM_pRefSD;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IINTERACTION_OCCURRENCE__MPREF_SD, oldM_pRefSD, m_pRefSD));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IStereotype getStereotypes() {
+		if (stereotypes != null && stereotypes.eIsProxy()) {
+			InternalEObject oldStereotypes = (InternalEObject)stereotypes;
+			stereotypes = (IStereotype)eResolveProxy(oldStereotypes);
+			if (stereotypes != oldStereotypes) {
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.IINTERACTION_OCCURRENCE__STEREOTYPES, oldStereotypes, stereotypes));
+			}
+		}
+		return stereotypes;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IStereotype basicGetStereotypes() {
+		return stereotypes;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setStereotypes(IStereotype newStereotypes) {
+		IStereotype oldStereotypes = stereotypes;
+		stereotypes = newStereotypes;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IINTERACTION_OCCURRENCE__STEREOTYPES, oldStereotypes, stereotypes));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public ITag getTags() {
+		if (tags != null && tags.eIsProxy()) {
+			InternalEObject oldTags = (InternalEObject)tags;
+			tags = (ITag)eResolveProxy(oldTags);
+			if (tags != oldTags) {
+				InternalEObject newTags = (InternalEObject)tags;
+				NotificationChain msgs = oldTags.eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IINTERACTION_OCCURRENCE__TAGS, null, null);
+				if (newTags.eInternalContainer() == null) {
+					msgs = newTags.eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IINTERACTION_OCCURRENCE__TAGS, null, msgs);
+				}
+				if (msgs != null) msgs.dispatch();
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.IINTERACTION_OCCURRENCE__TAGS, oldTags, tags));
+			}
+		}
+		return tags;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public ITag basicGetTags() {
+		return tags;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public NotificationChain basicSetTags(ITag newTags, NotificationChain msgs) {
+		ITag oldTags = tags;
+		tags = newTags;
+		if (eNotificationRequired()) {
+			ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IINTERACTION_OCCURRENCE__TAGS, oldTags, newTags);
+			if (msgs == null) msgs = notification; else msgs.add(notification);
+		}
+		return msgs;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setTags(ITag newTags) {
+		if (newTags != tags) {
+			NotificationChain msgs = null;
+			if (tags != null)
+				msgs = ((InternalEObject)tags).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IINTERACTION_OCCURRENCE__TAGS, null, msgs);
+			if (newTags != null)
+				msgs = ((InternalEObject)newTags).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IINTERACTION_OCCURRENCE__TAGS, null, msgs);
+			msgs = basicSetTags(newTags, msgs);
+			if (msgs != null) msgs.dispatch();
+		}
+		else if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IINTERACTION_OCCURRENCE__TAGS, newTags, newTags));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getObjectCreation() {
+		return objectCreation;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setObjectCreation(String newObjectCreation) {
+		String oldObjectCreation = objectCreation;
+		objectCreation = newObjectCreation;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IINTERACTION_OCCURRENCE__OBJECT_CREATION, oldObjectCreation, objectCreation));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getUmlDependencyID() {
+		return umlDependencyID;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setUmlDependencyID(String newUmlDependencyID) {
+		String oldUmlDependencyID = umlDependencyID;
+		umlDependencyID = newUmlDependencyID;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IINTERACTION_OCCURRENCE__UML_DEPENDENCY_ID, oldUmlDependencyID, umlDependencyID));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
+		switch (featureID) {
+			case UMLRpyPackage.IINTERACTION_OCCURRENCE__TAGS:
+				return basicSetTags(null, msgs);
+		}
+		return super.eInverseRemove(otherEnd, featureID, msgs);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object eGet(int featureID, boolean resolve, boolean coreType) {
+		switch (featureID) {
+			case UMLRpyPackage.IINTERACTION_OCCURRENCE__ID:
+				return getId();
+			case UMLRpyPackage.IINTERACTION_OCCURRENCE__NAME:
+				return getName();
+			case UMLRpyPackage.IINTERACTION_OCCURRENCE__MODIFIED_TIME_WEAK:
+				return getModifiedTimeWeak();
+			case UMLRpyPackage.IINTERACTION_OCCURRENCE__MPREF_SD:
+				if (resolve) return getM_pRefSD();
+				return basicGetM_pRefSD();
+			case UMLRpyPackage.IINTERACTION_OCCURRENCE__STEREOTYPES:
+				if (resolve) return getStereotypes();
+				return basicGetStereotypes();
+			case UMLRpyPackage.IINTERACTION_OCCURRENCE__TAGS:
+				if (resolve) return getTags();
+				return basicGetTags();
+			case UMLRpyPackage.IINTERACTION_OCCURRENCE__OBJECT_CREATION:
+				return getObjectCreation();
+			case UMLRpyPackage.IINTERACTION_OCCURRENCE__UML_DEPENDENCY_ID:
+				return getUmlDependencyID();
+		}
+		return super.eGet(featureID, resolve, coreType);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void eSet(int featureID, Object newValue) {
+		switch (featureID) {
+			case UMLRpyPackage.IINTERACTION_OCCURRENCE__ID:
+				setId((String)newValue);
+				return;
+			case UMLRpyPackage.IINTERACTION_OCCURRENCE__NAME:
+				setName((String)newValue);
+				return;
+			case UMLRpyPackage.IINTERACTION_OCCURRENCE__MODIFIED_TIME_WEAK:
+				setModifiedTimeWeak((String)newValue);
+				return;
+			case UMLRpyPackage.IINTERACTION_OCCURRENCE__MPREF_SD:
+				setM_pRefSD((IMSC)newValue);
+				return;
+			case UMLRpyPackage.IINTERACTION_OCCURRENCE__STEREOTYPES:
+				setStereotypes((IStereotype)newValue);
+				return;
+			case UMLRpyPackage.IINTERACTION_OCCURRENCE__TAGS:
+				setTags((ITag)newValue);
+				return;
+			case UMLRpyPackage.IINTERACTION_OCCURRENCE__OBJECT_CREATION:
+				setObjectCreation((String)newValue);
+				return;
+			case UMLRpyPackage.IINTERACTION_OCCURRENCE__UML_DEPENDENCY_ID:
+				setUmlDependencyID((String)newValue);
+				return;
+		}
+		super.eSet(featureID, newValue);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void eUnset(int featureID) {
+		switch (featureID) {
+			case UMLRpyPackage.IINTERACTION_OCCURRENCE__ID:
+				setId(ID_EDEFAULT);
+				return;
+			case UMLRpyPackage.IINTERACTION_OCCURRENCE__NAME:
+				setName(NAME_EDEFAULT);
+				return;
+			case UMLRpyPackage.IINTERACTION_OCCURRENCE__MODIFIED_TIME_WEAK:
+				setModifiedTimeWeak(MODIFIED_TIME_WEAK_EDEFAULT);
+				return;
+			case UMLRpyPackage.IINTERACTION_OCCURRENCE__MPREF_SD:
+				setM_pRefSD((IMSC)null);
+				return;
+			case UMLRpyPackage.IINTERACTION_OCCURRENCE__STEREOTYPES:
+				setStereotypes((IStereotype)null);
+				return;
+			case UMLRpyPackage.IINTERACTION_OCCURRENCE__TAGS:
+				setTags((ITag)null);
+				return;
+			case UMLRpyPackage.IINTERACTION_OCCURRENCE__OBJECT_CREATION:
+				setObjectCreation(OBJECT_CREATION_EDEFAULT);
+				return;
+			case UMLRpyPackage.IINTERACTION_OCCURRENCE__UML_DEPENDENCY_ID:
+				setUmlDependencyID(UML_DEPENDENCY_ID_EDEFAULT);
+				return;
+		}
+		super.eUnset(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public boolean eIsSet(int featureID) {
+		switch (featureID) {
+			case UMLRpyPackage.IINTERACTION_OCCURRENCE__ID:
+				return ID_EDEFAULT == null ? id != null : !ID_EDEFAULT.equals(id);
+			case UMLRpyPackage.IINTERACTION_OCCURRENCE__NAME:
+				return NAME_EDEFAULT == null ? name != null : !NAME_EDEFAULT.equals(name);
+			case UMLRpyPackage.IINTERACTION_OCCURRENCE__MODIFIED_TIME_WEAK:
+				return MODIFIED_TIME_WEAK_EDEFAULT == null ? modifiedTimeWeak != null : !MODIFIED_TIME_WEAK_EDEFAULT.equals(modifiedTimeWeak);
+			case UMLRpyPackage.IINTERACTION_OCCURRENCE__MPREF_SD:
+				return m_pRefSD != null;
+			case UMLRpyPackage.IINTERACTION_OCCURRENCE__STEREOTYPES:
+				return stereotypes != null;
+			case UMLRpyPackage.IINTERACTION_OCCURRENCE__TAGS:
+				return tags != null;
+			case UMLRpyPackage.IINTERACTION_OCCURRENCE__OBJECT_CREATION:
+				return OBJECT_CREATION_EDEFAULT == null ? objectCreation != null : !OBJECT_CREATION_EDEFAULT.equals(objectCreation);
+			case UMLRpyPackage.IINTERACTION_OCCURRENCE__UML_DEPENDENCY_ID:
+				return UML_DEPENDENCY_ID_EDEFAULT == null ? umlDependencyID != null : !UML_DEPENDENCY_ID_EDEFAULT.equals(umlDependencyID);
+		}
+		return super.eIsSet(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String toString() {
+		if (eIsProxy()) return super.toString();
+
+		StringBuffer result = new StringBuffer(super.toString());
+		result.append(" (id: "); //$NON-NLS-1$
+		result.append(id);
+		result.append(", name: "); //$NON-NLS-1$
+		result.append(name);
+		result.append(", modifiedTimeWeak: "); //$NON-NLS-1$
+		result.append(modifiedTimeWeak);
+		result.append(", objectCreation: "); //$NON-NLS-1$
+		result.append(objectCreation);
+		result.append(", umlDependencyID: "); //$NON-NLS-1$
+		result.append(umlDependencyID);
+		result.append(')');
+		return result.toString();
+	}
+
+} //IInteractionOccurrenceImpl
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/IInteractionOperandImpl.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/IInteractionOperandImpl.java
new file mode 100755
index 0000000..c933665
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/IInteractionOperandImpl.java
@@ -0,0 +1,280 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl;
+
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.ecore.EClass;
+
+import org.eclipse.emf.ecore.impl.ENotificationImpl;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IInteractionOperand;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>IInteraction Operand</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * </p>
+ * <ul>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IInteractionOperandImpl#getMyState <em>My State</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IInteractionOperandImpl#getName <em>Name</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IInteractionOperandImpl#getInteractionConstraint <em>Interaction Constraint</em>}</li>
+ * </ul>
+ *
+ * @generated
+ */
+public class IInteractionOperandImpl extends ICollaborationImpl implements IInteractionOperand {
+	/**
+	 * The default value of the '{@link #getMyState() <em>My State</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getMyState()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String MY_STATE_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getMyState() <em>My State</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getMyState()
+	 * @generated
+	 * @ordered
+	 */
+	protected String myState = MY_STATE_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getName() <em>Name</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getName()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String NAME_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getName() <em>Name</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getName()
+	 * @generated
+	 * @ordered
+	 */
+	protected String name = NAME_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getInteractionConstraint() <em>Interaction Constraint</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getInteractionConstraint()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String INTERACTION_CONSTRAINT_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getInteractionConstraint() <em>Interaction Constraint</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getInteractionConstraint()
+	 * @generated
+	 * @ordered
+	 */
+	protected String interactionConstraint = INTERACTION_CONSTRAINT_EDEFAULT;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected IInteractionOperandImpl() {
+		super();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EClass eStaticClass() {
+		return UMLRpyPackage.eINSTANCE.getIInteractionOperand();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getMyState() {
+		return myState;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setMyState(String newMyState) {
+		String oldMyState = myState;
+		myState = newMyState;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IINTERACTION_OPERAND__MY_STATE, oldMyState, myState));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getName() {
+		return name;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setName(String newName) {
+		String oldName = name;
+		name = newName;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IINTERACTION_OPERAND__NAME, oldName, name));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getInteractionConstraint() {
+		return interactionConstraint;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setInteractionConstraint(String newInteractionConstraint) {
+		String oldInteractionConstraint = interactionConstraint;
+		interactionConstraint = newInteractionConstraint;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IINTERACTION_OPERAND__INTERACTION_CONSTRAINT, oldInteractionConstraint, interactionConstraint));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object eGet(int featureID, boolean resolve, boolean coreType) {
+		switch (featureID) {
+			case UMLRpyPackage.IINTERACTION_OPERAND__MY_STATE:
+				return getMyState();
+			case UMLRpyPackage.IINTERACTION_OPERAND__NAME:
+				return getName();
+			case UMLRpyPackage.IINTERACTION_OPERAND__INTERACTION_CONSTRAINT:
+				return getInteractionConstraint();
+		}
+		return super.eGet(featureID, resolve, coreType);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void eSet(int featureID, Object newValue) {
+		switch (featureID) {
+			case UMLRpyPackage.IINTERACTION_OPERAND__MY_STATE:
+				setMyState((String)newValue);
+				return;
+			case UMLRpyPackage.IINTERACTION_OPERAND__NAME:
+				setName((String)newValue);
+				return;
+			case UMLRpyPackage.IINTERACTION_OPERAND__INTERACTION_CONSTRAINT:
+				setInteractionConstraint((String)newValue);
+				return;
+		}
+		super.eSet(featureID, newValue);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void eUnset(int featureID) {
+		switch (featureID) {
+			case UMLRpyPackage.IINTERACTION_OPERAND__MY_STATE:
+				setMyState(MY_STATE_EDEFAULT);
+				return;
+			case UMLRpyPackage.IINTERACTION_OPERAND__NAME:
+				setName(NAME_EDEFAULT);
+				return;
+			case UMLRpyPackage.IINTERACTION_OPERAND__INTERACTION_CONSTRAINT:
+				setInteractionConstraint(INTERACTION_CONSTRAINT_EDEFAULT);
+				return;
+		}
+		super.eUnset(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public boolean eIsSet(int featureID) {
+		switch (featureID) {
+			case UMLRpyPackage.IINTERACTION_OPERAND__MY_STATE:
+				return MY_STATE_EDEFAULT == null ? myState != null : !MY_STATE_EDEFAULT.equals(myState);
+			case UMLRpyPackage.IINTERACTION_OPERAND__NAME:
+				return NAME_EDEFAULT == null ? name != null : !NAME_EDEFAULT.equals(name);
+			case UMLRpyPackage.IINTERACTION_OPERAND__INTERACTION_CONSTRAINT:
+				return INTERACTION_CONSTRAINT_EDEFAULT == null ? interactionConstraint != null : !INTERACTION_CONSTRAINT_EDEFAULT.equals(interactionConstraint);
+		}
+		return super.eIsSet(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String toString() {
+		if (eIsProxy()) return super.toString();
+
+		StringBuffer result = new StringBuffer(super.toString());
+		result.append(" (myState: "); //$NON-NLS-1$
+		result.append(myState);
+		result.append(", name: "); //$NON-NLS-1$
+		result.append(name);
+		result.append(", interactionConstraint: "); //$NON-NLS-1$
+		result.append(interactionConstraint);
+		result.append(')');
+		return result.toString();
+	}
+
+} //IInteractionOperandImpl
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/IInteractionOperatorImpl.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/IInteractionOperatorImpl.java
new file mode 100755
index 0000000..fe7f895
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/IInteractionOperatorImpl.java
@@ -0,0 +1,47 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl;
+
+import org.eclipse.emf.ecore.EClass;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IInteractionOperator;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>IInteraction Operator</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+public class IInteractionOperatorImpl extends IModelElementImpl implements IInteractionOperator {
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected IInteractionOperatorImpl() {
+		super();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EClass eStaticClass() {
+		return UMLRpyPackage.eINSTANCE.getIInteractionOperator();
+	}
+
+} //IInteractionOperatorImpl
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/IInterfaceItemImpl.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/IInterfaceItemImpl.java
new file mode 100755
index 0000000..e36145c
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/IInterfaceItemImpl.java
@@ -0,0 +1,47 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl;
+
+import org.eclipse.emf.ecore.EClass;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IInterfaceItem;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>IInterface Item</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+public class IInterfaceItemImpl extends IClassifierImpl implements IInterfaceItem {
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected IInterfaceItemImpl() {
+		super();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EClass eStaticClass() {
+		return UMLRpyPackage.eINSTANCE.getIInterfaceItem();
+	}
+
+} //IInterfaceItemImpl
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/IInterfaceItemTriggerImpl.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/IInterfaceItemTriggerImpl.java
new file mode 100755
index 0000000..82ec3e3
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/IInterfaceItemTriggerImpl.java
@@ -0,0 +1,226 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.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.interoperability.rpy.rpymetamodel.IInterfaceItemTrigger;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.M_pFormalMessageType;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>IInterface Item Trigger</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * </p>
+ * <ul>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IInterfaceItemTriggerImpl#getItsInterfaceItem <em>Its Interface Item</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IInterfaceItemTriggerImpl#getInheritsFromHandle <em>Inherits From Handle</em>}</li>
+ * </ul>
+ *
+ * @generated
+ */
+public class IInterfaceItemTriggerImpl extends ItsTriggerTypeImpl implements IInterfaceItemTrigger {
+	/**
+	 * The cached value of the '{@link #getItsInterfaceItem() <em>Its Interface Item</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getItsInterfaceItem()
+	 * @generated
+	 * @ordered
+	 */
+	protected M_pFormalMessageType itsInterfaceItem;
+
+	/**
+	 * The cached value of the '{@link #getInheritsFromHandle() <em>Inherits From Handle</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getInheritsFromHandle()
+	 * @generated
+	 * @ordered
+	 */
+	protected IInterfaceItemTrigger inheritsFromHandle;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected IInterfaceItemTriggerImpl() {
+		super();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EClass eStaticClass() {
+		return UMLRpyPackage.eINSTANCE.getIInterfaceItemTrigger();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public M_pFormalMessageType getItsInterfaceItem() {
+		if (itsInterfaceItem != null && itsInterfaceItem.eIsProxy()) {
+			InternalEObject oldItsInterfaceItem = (InternalEObject)itsInterfaceItem;
+			itsInterfaceItem = (M_pFormalMessageType)eResolveProxy(oldItsInterfaceItem);
+			if (itsInterfaceItem != oldItsInterfaceItem) {
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.IINTERFACE_ITEM_TRIGGER__ITS_INTERFACE_ITEM, oldItsInterfaceItem, itsInterfaceItem));
+			}
+		}
+		return itsInterfaceItem;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public M_pFormalMessageType basicGetItsInterfaceItem() {
+		return itsInterfaceItem;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setItsInterfaceItem(M_pFormalMessageType newItsInterfaceItem) {
+		M_pFormalMessageType oldItsInterfaceItem = itsInterfaceItem;
+		itsInterfaceItem = newItsInterfaceItem;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IINTERFACE_ITEM_TRIGGER__ITS_INTERFACE_ITEM, oldItsInterfaceItem, itsInterfaceItem));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IInterfaceItemTrigger getInheritsFromHandle() {
+		if (inheritsFromHandle != null && inheritsFromHandle.eIsProxy()) {
+			InternalEObject oldInheritsFromHandle = (InternalEObject)inheritsFromHandle;
+			inheritsFromHandle = (IInterfaceItemTrigger)eResolveProxy(oldInheritsFromHandle);
+			if (inheritsFromHandle != oldInheritsFromHandle) {
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.IINTERFACE_ITEM_TRIGGER__INHERITS_FROM_HANDLE, oldInheritsFromHandle, inheritsFromHandle));
+			}
+		}
+		return inheritsFromHandle;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IInterfaceItemTrigger basicGetInheritsFromHandle() {
+		return inheritsFromHandle;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setInheritsFromHandle(IInterfaceItemTrigger newInheritsFromHandle) {
+		IInterfaceItemTrigger oldInheritsFromHandle = inheritsFromHandle;
+		inheritsFromHandle = newInheritsFromHandle;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IINTERFACE_ITEM_TRIGGER__INHERITS_FROM_HANDLE, oldInheritsFromHandle, inheritsFromHandle));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object eGet(int featureID, boolean resolve, boolean coreType) {
+		switch (featureID) {
+			case UMLRpyPackage.IINTERFACE_ITEM_TRIGGER__ITS_INTERFACE_ITEM:
+				if (resolve) return getItsInterfaceItem();
+				return basicGetItsInterfaceItem();
+			case UMLRpyPackage.IINTERFACE_ITEM_TRIGGER__INHERITS_FROM_HANDLE:
+				if (resolve) return getInheritsFromHandle();
+				return basicGetInheritsFromHandle();
+		}
+		return super.eGet(featureID, resolve, coreType);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void eSet(int featureID, Object newValue) {
+		switch (featureID) {
+			case UMLRpyPackage.IINTERFACE_ITEM_TRIGGER__ITS_INTERFACE_ITEM:
+				setItsInterfaceItem((M_pFormalMessageType)newValue);
+				return;
+			case UMLRpyPackage.IINTERFACE_ITEM_TRIGGER__INHERITS_FROM_HANDLE:
+				setInheritsFromHandle((IInterfaceItemTrigger)newValue);
+				return;
+		}
+		super.eSet(featureID, newValue);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void eUnset(int featureID) {
+		switch (featureID) {
+			case UMLRpyPackage.IINTERFACE_ITEM_TRIGGER__ITS_INTERFACE_ITEM:
+				setItsInterfaceItem((M_pFormalMessageType)null);
+				return;
+			case UMLRpyPackage.IINTERFACE_ITEM_TRIGGER__INHERITS_FROM_HANDLE:
+				setInheritsFromHandle((IInterfaceItemTrigger)null);
+				return;
+		}
+		super.eUnset(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public boolean eIsSet(int featureID) {
+		switch (featureID) {
+			case UMLRpyPackage.IINTERFACE_ITEM_TRIGGER__ITS_INTERFACE_ITEM:
+				return itsInterfaceItem != null;
+			case UMLRpyPackage.IINTERFACE_ITEM_TRIGGER__INHERITS_FROM_HANDLE:
+				return inheritsFromHandle != null;
+		}
+		return super.eIsSet(featureID);
+	}
+
+} //IInterfaceItemTriggerImpl
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/IInternalHyperlinkImpl.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/IInternalHyperlinkImpl.java
new file mode 100755
index 0000000..41ad7ea
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/IInternalHyperlinkImpl.java
@@ -0,0 +1,166 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.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.interoperability.rpy.rpymetamodel.IInternalHyperlink;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.TargetType;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>IInternal Hyperlink</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * </p>
+ * <ul>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IInternalHyperlinkImpl#getTarget <em>Target</em>}</li>
+ * </ul>
+ *
+ * @generated
+ */
+public class IInternalHyperlinkImpl extends HyperLinksTypeImpl implements IInternalHyperlink {
+	/**
+	 * The cached value of the '{@link #getTarget() <em>Target</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getTarget()
+	 * @generated
+	 * @ordered
+	 */
+	protected TargetType target;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected IInternalHyperlinkImpl() {
+		super();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EClass eStaticClass() {
+		return UMLRpyPackage.eINSTANCE.getIInternalHyperlink();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public TargetType getTarget() {
+		if (target != null && target.eIsProxy()) {
+			InternalEObject oldTarget = (InternalEObject)target;
+			target = (TargetType)eResolveProxy(oldTarget);
+			if (target != oldTarget) {
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.IINTERNAL_HYPERLINK__TARGET, oldTarget, target));
+			}
+		}
+		return target;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public TargetType basicGetTarget() {
+		return target;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setTarget(TargetType newTarget) {
+		TargetType oldTarget = target;
+		target = newTarget;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IINTERNAL_HYPERLINK__TARGET, oldTarget, target));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object eGet(int featureID, boolean resolve, boolean coreType) {
+		switch (featureID) {
+			case UMLRpyPackage.IINTERNAL_HYPERLINK__TARGET:
+				if (resolve) return getTarget();
+				return basicGetTarget();
+		}
+		return super.eGet(featureID, resolve, coreType);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void eSet(int featureID, Object newValue) {
+		switch (featureID) {
+			case UMLRpyPackage.IINTERNAL_HYPERLINK__TARGET:
+				setTarget((TargetType)newValue);
+				return;
+		}
+		super.eSet(featureID, newValue);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void eUnset(int featureID) {
+		switch (featureID) {
+			case UMLRpyPackage.IINTERNAL_HYPERLINK__TARGET:
+				setTarget((TargetType)null);
+				return;
+		}
+		super.eUnset(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public boolean eIsSet(int featureID) {
+		switch (featureID) {
+			case UMLRpyPackage.IINTERNAL_HYPERLINK__TARGET:
+				return target != null;
+		}
+		return super.eIsSet(featureID);
+	}
+
+} //IInternalHyperlinkImpl
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/ILabelImpl.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/ILabelImpl.java
new file mode 100755
index 0000000..8c692cc
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/ILabelImpl.java
@@ -0,0 +1,759 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl;
+
+import java.util.Collection;
+
+import org.eclipse.emf.common.notify.Notification;
+import org.eclipse.emf.common.notify.NotificationChain;
+
+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.EDataTypeEList;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ILabel;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IModelElement;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ItsTriggerType;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>ILabel</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * </p>
+ * <ul>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.ILabelImpl#getId <em>Id</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.ILabelImpl#getItsTrigger <em>Its Trigger</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.ILabelImpl#getItsAction <em>Its Action</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.ILabelImpl#getItsGuard <em>Its Guard</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.ILabelImpl#getModifiedTimeWeak <em>Modified Time Weak</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.ILabelImpl#getMyState <em>My State</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.ILabelImpl#getInheritsFromHandle <em>Inherits From Handle</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.ILabelImpl#getCodeUpdateCGTime <em>Code Update CG Time</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.ILabelImpl#getObjectCreation <em>Object Creation</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.ILabelImpl#getUmlDependencyID <em>Uml Dependency ID</em>}</li>
+ * </ul>
+ *
+ * @generated
+ */
+public class ILabelImpl extends ItsLabelTypeImpl implements ILabel {
+	/**
+	 * The default value of the '{@link #getId() <em>Id</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getId()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String ID_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getId() <em>Id</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getId()
+	 * @generated
+	 * @ordered
+	 */
+	protected String id = ID_EDEFAULT;
+
+	/**
+	 * The cached value of the '{@link #getItsTrigger() <em>Its Trigger</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getItsTrigger()
+	 * @generated
+	 * @ordered
+	 */
+	protected ItsTriggerType itsTrigger;
+
+	/**
+	 * The cached value of the '{@link #getItsAction() <em>Its Action</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getItsAction()
+	 * @generated
+	 * @ordered
+	 */
+	protected IModelElement itsAction;
+
+	/**
+	 * The cached value of the '{@link #getItsGuard() <em>Its Guard</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getItsGuard()
+	 * @generated
+	 * @ordered
+	 */
+	protected IModelElement itsGuard;
+
+	/**
+	 * The cached value of the '{@link #getModifiedTimeWeak() <em>Modified Time Weak</em>}' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getModifiedTimeWeak()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<String> modifiedTimeWeak;
+
+	/**
+	 * The default value of the '{@link #getMyState() <em>My State</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getMyState()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String MY_STATE_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getMyState() <em>My State</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getMyState()
+	 * @generated
+	 * @ordered
+	 */
+	protected String myState = MY_STATE_EDEFAULT;
+
+	/**
+	 * The cached value of the '{@link #getInheritsFromHandle() <em>Inherits From Handle</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getInheritsFromHandle()
+	 * @generated
+	 * @ordered
+	 */
+	protected ILabel inheritsFromHandle;
+
+	/**
+	 * The cached value of the '{@link #getCodeUpdateCGTime() <em>Code Update CG Time</em>}' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getCodeUpdateCGTime()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<String> codeUpdateCGTime;
+
+	/**
+	 * The default value of the '{@link #getObjectCreation() <em>Object Creation</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getObjectCreation()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String OBJECT_CREATION_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getObjectCreation() <em>Object Creation</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getObjectCreation()
+	 * @generated
+	 * @ordered
+	 */
+	protected String objectCreation = OBJECT_CREATION_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getUmlDependencyID() <em>Uml Dependency ID</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getUmlDependencyID()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String UML_DEPENDENCY_ID_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getUmlDependencyID() <em>Uml Dependency ID</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getUmlDependencyID()
+	 * @generated
+	 * @ordered
+	 */
+	protected String umlDependencyID = UML_DEPENDENCY_ID_EDEFAULT;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected ILabelImpl() {
+		super();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EClass eStaticClass() {
+		return UMLRpyPackage.eINSTANCE.getILabel();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getId() {
+		return id;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setId(String newId) {
+		String oldId = id;
+		id = newId;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.ILABEL__ID, oldId, id));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public ItsTriggerType getItsTrigger() {
+		if (itsTrigger != null && itsTrigger.eIsProxy()) {
+			InternalEObject oldItsTrigger = (InternalEObject)itsTrigger;
+			itsTrigger = (ItsTriggerType)eResolveProxy(oldItsTrigger);
+			if (itsTrigger != oldItsTrigger) {
+				InternalEObject newItsTrigger = (InternalEObject)itsTrigger;
+				NotificationChain msgs = oldItsTrigger.eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.ILABEL__ITS_TRIGGER, null, null);
+				if (newItsTrigger.eInternalContainer() == null) {
+					msgs = newItsTrigger.eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.ILABEL__ITS_TRIGGER, null, msgs);
+				}
+				if (msgs != null) msgs.dispatch();
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.ILABEL__ITS_TRIGGER, oldItsTrigger, itsTrigger));
+			}
+		}
+		return itsTrigger;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public ItsTriggerType basicGetItsTrigger() {
+		return itsTrigger;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public NotificationChain basicSetItsTrigger(ItsTriggerType newItsTrigger, NotificationChain msgs) {
+		ItsTriggerType oldItsTrigger = itsTrigger;
+		itsTrigger = newItsTrigger;
+		if (eNotificationRequired()) {
+			ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, UMLRpyPackage.ILABEL__ITS_TRIGGER, oldItsTrigger, newItsTrigger);
+			if (msgs == null) msgs = notification; else msgs.add(notification);
+		}
+		return msgs;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setItsTrigger(ItsTriggerType newItsTrigger) {
+		if (newItsTrigger != itsTrigger) {
+			NotificationChain msgs = null;
+			if (itsTrigger != null)
+				msgs = ((InternalEObject)itsTrigger).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.ILABEL__ITS_TRIGGER, null, msgs);
+			if (newItsTrigger != null)
+				msgs = ((InternalEObject)newItsTrigger).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.ILABEL__ITS_TRIGGER, null, msgs);
+			msgs = basicSetItsTrigger(newItsTrigger, msgs);
+			if (msgs != null) msgs.dispatch();
+		}
+		else if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.ILABEL__ITS_TRIGGER, newItsTrigger, newItsTrigger));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IModelElement getItsAction() {
+		if (itsAction != null && itsAction.eIsProxy()) {
+			InternalEObject oldItsAction = (InternalEObject)itsAction;
+			itsAction = (IModelElement)eResolveProxy(oldItsAction);
+			if (itsAction != oldItsAction) {
+				InternalEObject newItsAction = (InternalEObject)itsAction;
+				NotificationChain msgs = oldItsAction.eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.ILABEL__ITS_ACTION, null, null);
+				if (newItsAction.eInternalContainer() == null) {
+					msgs = newItsAction.eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.ILABEL__ITS_ACTION, null, msgs);
+				}
+				if (msgs != null) msgs.dispatch();
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.ILABEL__ITS_ACTION, oldItsAction, itsAction));
+			}
+		}
+		return itsAction;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IModelElement basicGetItsAction() {
+		return itsAction;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public NotificationChain basicSetItsAction(IModelElement newItsAction, NotificationChain msgs) {
+		IModelElement oldItsAction = itsAction;
+		itsAction = newItsAction;
+		if (eNotificationRequired()) {
+			ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, UMLRpyPackage.ILABEL__ITS_ACTION, oldItsAction, newItsAction);
+			if (msgs == null) msgs = notification; else msgs.add(notification);
+		}
+		return msgs;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setItsAction(IModelElement newItsAction) {
+		if (newItsAction != itsAction) {
+			NotificationChain msgs = null;
+			if (itsAction != null)
+				msgs = ((InternalEObject)itsAction).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.ILABEL__ITS_ACTION, null, msgs);
+			if (newItsAction != null)
+				msgs = ((InternalEObject)newItsAction).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.ILABEL__ITS_ACTION, null, msgs);
+			msgs = basicSetItsAction(newItsAction, msgs);
+			if (msgs != null) msgs.dispatch();
+		}
+		else if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.ILABEL__ITS_ACTION, newItsAction, newItsAction));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IModelElement getItsGuard() {
+		if (itsGuard != null && itsGuard.eIsProxy()) {
+			InternalEObject oldItsGuard = (InternalEObject)itsGuard;
+			itsGuard = (IModelElement)eResolveProxy(oldItsGuard);
+			if (itsGuard != oldItsGuard) {
+				InternalEObject newItsGuard = (InternalEObject)itsGuard;
+				NotificationChain msgs = oldItsGuard.eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.ILABEL__ITS_GUARD, null, null);
+				if (newItsGuard.eInternalContainer() == null) {
+					msgs = newItsGuard.eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.ILABEL__ITS_GUARD, null, msgs);
+				}
+				if (msgs != null) msgs.dispatch();
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.ILABEL__ITS_GUARD, oldItsGuard, itsGuard));
+			}
+		}
+		return itsGuard;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IModelElement basicGetItsGuard() {
+		return itsGuard;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public NotificationChain basicSetItsGuard(IModelElement newItsGuard, NotificationChain msgs) {
+		IModelElement oldItsGuard = itsGuard;
+		itsGuard = newItsGuard;
+		if (eNotificationRequired()) {
+			ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, UMLRpyPackage.ILABEL__ITS_GUARD, oldItsGuard, newItsGuard);
+			if (msgs == null) msgs = notification; else msgs.add(notification);
+		}
+		return msgs;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setItsGuard(IModelElement newItsGuard) {
+		if (newItsGuard != itsGuard) {
+			NotificationChain msgs = null;
+			if (itsGuard != null)
+				msgs = ((InternalEObject)itsGuard).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.ILABEL__ITS_GUARD, null, msgs);
+			if (newItsGuard != null)
+				msgs = ((InternalEObject)newItsGuard).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.ILABEL__ITS_GUARD, null, msgs);
+			msgs = basicSetItsGuard(newItsGuard, msgs);
+			if (msgs != null) msgs.dispatch();
+		}
+		else if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.ILABEL__ITS_GUARD, newItsGuard, newItsGuard));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<String> getModifiedTimeWeak() {
+		if (modifiedTimeWeak == null) {
+			modifiedTimeWeak = new EDataTypeEList<String>(String.class, this, UMLRpyPackage.ILABEL__MODIFIED_TIME_WEAK);
+		}
+		return modifiedTimeWeak;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getMyState() {
+		return myState;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setMyState(String newMyState) {
+		String oldMyState = myState;
+		myState = newMyState;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.ILABEL__MY_STATE, oldMyState, myState));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public ILabel getInheritsFromHandle() {
+		if (inheritsFromHandle != null && inheritsFromHandle.eIsProxy()) {
+			InternalEObject oldInheritsFromHandle = (InternalEObject)inheritsFromHandle;
+			inheritsFromHandle = (ILabel)eResolveProxy(oldInheritsFromHandle);
+			if (inheritsFromHandle != oldInheritsFromHandle) {
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.ILABEL__INHERITS_FROM_HANDLE, oldInheritsFromHandle, inheritsFromHandle));
+			}
+		}
+		return inheritsFromHandle;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public ILabel basicGetInheritsFromHandle() {
+		return inheritsFromHandle;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setInheritsFromHandle(ILabel newInheritsFromHandle) {
+		ILabel oldInheritsFromHandle = inheritsFromHandle;
+		inheritsFromHandle = newInheritsFromHandle;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.ILABEL__INHERITS_FROM_HANDLE, oldInheritsFromHandle, inheritsFromHandle));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<String> getCodeUpdateCGTime() {
+		if (codeUpdateCGTime == null) {
+			codeUpdateCGTime = new EDataTypeEList<String>(String.class, this, UMLRpyPackage.ILABEL__CODE_UPDATE_CG_TIME);
+		}
+		return codeUpdateCGTime;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getObjectCreation() {
+		return objectCreation;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setObjectCreation(String newObjectCreation) {
+		String oldObjectCreation = objectCreation;
+		objectCreation = newObjectCreation;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.ILABEL__OBJECT_CREATION, oldObjectCreation, objectCreation));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getUmlDependencyID() {
+		return umlDependencyID;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setUmlDependencyID(String newUmlDependencyID) {
+		String oldUmlDependencyID = umlDependencyID;
+		umlDependencyID = newUmlDependencyID;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.ILABEL__UML_DEPENDENCY_ID, oldUmlDependencyID, umlDependencyID));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
+		switch (featureID) {
+			case UMLRpyPackage.ILABEL__ITS_TRIGGER:
+				return basicSetItsTrigger(null, msgs);
+			case UMLRpyPackage.ILABEL__ITS_ACTION:
+				return basicSetItsAction(null, msgs);
+			case UMLRpyPackage.ILABEL__ITS_GUARD:
+				return basicSetItsGuard(null, msgs);
+		}
+		return super.eInverseRemove(otherEnd, featureID, msgs);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object eGet(int featureID, boolean resolve, boolean coreType) {
+		switch (featureID) {
+			case UMLRpyPackage.ILABEL__ID:
+				return getId();
+			case UMLRpyPackage.ILABEL__ITS_TRIGGER:
+				if (resolve) return getItsTrigger();
+				return basicGetItsTrigger();
+			case UMLRpyPackage.ILABEL__ITS_ACTION:
+				if (resolve) return getItsAction();
+				return basicGetItsAction();
+			case UMLRpyPackage.ILABEL__ITS_GUARD:
+				if (resolve) return getItsGuard();
+				return basicGetItsGuard();
+			case UMLRpyPackage.ILABEL__MODIFIED_TIME_WEAK:
+				return getModifiedTimeWeak();
+			case UMLRpyPackage.ILABEL__MY_STATE:
+				return getMyState();
+			case UMLRpyPackage.ILABEL__INHERITS_FROM_HANDLE:
+				if (resolve) return getInheritsFromHandle();
+				return basicGetInheritsFromHandle();
+			case UMLRpyPackage.ILABEL__CODE_UPDATE_CG_TIME:
+				return getCodeUpdateCGTime();
+			case UMLRpyPackage.ILABEL__OBJECT_CREATION:
+				return getObjectCreation();
+			case UMLRpyPackage.ILABEL__UML_DEPENDENCY_ID:
+				return getUmlDependencyID();
+		}
+		return super.eGet(featureID, resolve, coreType);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@SuppressWarnings("unchecked")
+	@Override
+	public void eSet(int featureID, Object newValue) {
+		switch (featureID) {
+			case UMLRpyPackage.ILABEL__ID:
+				setId((String)newValue);
+				return;
+			case UMLRpyPackage.ILABEL__ITS_TRIGGER:
+				setItsTrigger((ItsTriggerType)newValue);
+				return;
+			case UMLRpyPackage.ILABEL__ITS_ACTION:
+				setItsAction((IModelElement)newValue);
+				return;
+			case UMLRpyPackage.ILABEL__ITS_GUARD:
+				setItsGuard((IModelElement)newValue);
+				return;
+			case UMLRpyPackage.ILABEL__MODIFIED_TIME_WEAK:
+				getModifiedTimeWeak().clear();
+				getModifiedTimeWeak().addAll((Collection<? extends String>)newValue);
+				return;
+			case UMLRpyPackage.ILABEL__MY_STATE:
+				setMyState((String)newValue);
+				return;
+			case UMLRpyPackage.ILABEL__INHERITS_FROM_HANDLE:
+				setInheritsFromHandle((ILabel)newValue);
+				return;
+			case UMLRpyPackage.ILABEL__CODE_UPDATE_CG_TIME:
+				getCodeUpdateCGTime().clear();
+				getCodeUpdateCGTime().addAll((Collection<? extends String>)newValue);
+				return;
+			case UMLRpyPackage.ILABEL__OBJECT_CREATION:
+				setObjectCreation((String)newValue);
+				return;
+			case UMLRpyPackage.ILABEL__UML_DEPENDENCY_ID:
+				setUmlDependencyID((String)newValue);
+				return;
+		}
+		super.eSet(featureID, newValue);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void eUnset(int featureID) {
+		switch (featureID) {
+			case UMLRpyPackage.ILABEL__ID:
+				setId(ID_EDEFAULT);
+				return;
+			case UMLRpyPackage.ILABEL__ITS_TRIGGER:
+				setItsTrigger((ItsTriggerType)null);
+				return;
+			case UMLRpyPackage.ILABEL__ITS_ACTION:
+				setItsAction((IModelElement)null);
+				return;
+			case UMLRpyPackage.ILABEL__ITS_GUARD:
+				setItsGuard((IModelElement)null);
+				return;
+			case UMLRpyPackage.ILABEL__MODIFIED_TIME_WEAK:
+				getModifiedTimeWeak().clear();
+				return;
+			case UMLRpyPackage.ILABEL__MY_STATE:
+				setMyState(MY_STATE_EDEFAULT);
+				return;
+			case UMLRpyPackage.ILABEL__INHERITS_FROM_HANDLE:
+				setInheritsFromHandle((ILabel)null);
+				return;
+			case UMLRpyPackage.ILABEL__CODE_UPDATE_CG_TIME:
+				getCodeUpdateCGTime().clear();
+				return;
+			case UMLRpyPackage.ILABEL__OBJECT_CREATION:
+				setObjectCreation(OBJECT_CREATION_EDEFAULT);
+				return;
+			case UMLRpyPackage.ILABEL__UML_DEPENDENCY_ID:
+				setUmlDependencyID(UML_DEPENDENCY_ID_EDEFAULT);
+				return;
+		}
+		super.eUnset(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public boolean eIsSet(int featureID) {
+		switch (featureID) {
+			case UMLRpyPackage.ILABEL__ID:
+				return ID_EDEFAULT == null ? id != null : !ID_EDEFAULT.equals(id);
+			case UMLRpyPackage.ILABEL__ITS_TRIGGER:
+				return itsTrigger != null;
+			case UMLRpyPackage.ILABEL__ITS_ACTION:
+				return itsAction != null;
+			case UMLRpyPackage.ILABEL__ITS_GUARD:
+				return itsGuard != null;
+			case UMLRpyPackage.ILABEL__MODIFIED_TIME_WEAK:
+				return modifiedTimeWeak != null && !modifiedTimeWeak.isEmpty();
+			case UMLRpyPackage.ILABEL__MY_STATE:
+				return MY_STATE_EDEFAULT == null ? myState != null : !MY_STATE_EDEFAULT.equals(myState);
+			case UMLRpyPackage.ILABEL__INHERITS_FROM_HANDLE:
+				return inheritsFromHandle != null;
+			case UMLRpyPackage.ILABEL__CODE_UPDATE_CG_TIME:
+				return codeUpdateCGTime != null && !codeUpdateCGTime.isEmpty();
+			case UMLRpyPackage.ILABEL__OBJECT_CREATION:
+				return OBJECT_CREATION_EDEFAULT == null ? objectCreation != null : !OBJECT_CREATION_EDEFAULT.equals(objectCreation);
+			case UMLRpyPackage.ILABEL__UML_DEPENDENCY_ID:
+				return UML_DEPENDENCY_ID_EDEFAULT == null ? umlDependencyID != null : !UML_DEPENDENCY_ID_EDEFAULT.equals(umlDependencyID);
+		}
+		return super.eIsSet(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String toString() {
+		if (eIsProxy()) return super.toString();
+
+		StringBuffer result = new StringBuffer(super.toString());
+		result.append(" (id: "); //$NON-NLS-1$
+		result.append(id);
+		result.append(", modifiedTimeWeak: "); //$NON-NLS-1$
+		result.append(modifiedTimeWeak);
+		result.append(", myState: "); //$NON-NLS-1$
+		result.append(myState);
+		result.append(", codeUpdateCGTime: "); //$NON-NLS-1$
+		result.append(codeUpdateCGTime);
+		result.append(", objectCreation: "); //$NON-NLS-1$
+		result.append(objectCreation);
+		result.append(", umlDependencyID: "); //$NON-NLS-1$
+		result.append(umlDependencyID);
+		result.append(')');
+		return result.toString();
+	}
+
+} //ILabelImpl
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/ILinkImpl.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/ILinkImpl.java
new file mode 100755
index 0000000..f9a4fc4
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/ILinkImpl.java
@@ -0,0 +1,658 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl;
+
+import org.eclipse.emf.common.notify.Notification;
+import org.eclipse.emf.common.notify.NotificationChain;
+
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.InternalEObject;
+
+import org.eclipse.emf.ecore.impl.ENotificationImpl;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IClassHandle;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ILink;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IUnit;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.LinksType;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.M_pModelObjectType;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>ILink</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * </p>
+ * <ul>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.ILinkImpl#getId <em>Id</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.ILinkImpl#getMultiplicity <em>Multiplicity</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.ILinkImpl#getName <em>Name</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.ILinkImpl#getOtherClass <em>Other Class</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.ILinkImpl#getInverse <em>Inverse</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.ILinkImpl#getLinkName <em>Link Name</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.ILinkImpl#getLinkType <em>Link Type</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.ILinkImpl#getMyState <em>My State</em>}</li>
+ * </ul>
+ *
+ * @generated
+ */
+public class ILinkImpl extends IUnitImpl implements ILink {
+	/**
+	 * The default value of the '{@link #getId() <em>Id</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getId()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String ID_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getId() <em>Id</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getId()
+	 * @generated
+	 * @ordered
+	 */
+	protected String id = ID_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getMultiplicity() <em>Multiplicity</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getMultiplicity()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String MULTIPLICITY_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getMultiplicity() <em>Multiplicity</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getMultiplicity()
+	 * @generated
+	 * @ordered
+	 */
+	protected String multiplicity = MULTIPLICITY_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getName() <em>Name</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getName()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String NAME_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getName() <em>Name</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getName()
+	 * @generated
+	 * @ordered
+	 */
+	protected String name = NAME_EDEFAULT;
+
+	/**
+	 * The cached value of the '{@link #getOtherClass() <em>Other Class</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getOtherClass()
+	 * @generated
+	 * @ordered
+	 */
+	protected IClassHandle otherClass;
+
+	/**
+	 * The cached value of the '{@link #getInverse() <em>Inverse</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getInverse()
+	 * @generated
+	 * @ordered
+	 */
+	protected IUnit inverse;
+
+	/**
+	 * The default value of the '{@link #getLinkName() <em>Link Name</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getLinkName()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String LINK_NAME_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getLinkName() <em>Link Name</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getLinkName()
+	 * @generated
+	 * @ordered
+	 */
+	protected String linkName = LINK_NAME_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getLinkType() <em>Link Type</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getLinkType()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String LINK_TYPE_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getLinkType() <em>Link Type</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getLinkType()
+	 * @generated
+	 * @ordered
+	 */
+	protected String linkType = LINK_TYPE_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getMyState() <em>My State</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getMyState()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String MY_STATE_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getMyState() <em>My State</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getMyState()
+	 * @generated
+	 * @ordered
+	 */
+	protected String myState = MY_STATE_EDEFAULT;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected ILinkImpl() {
+		super();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EClass eStaticClass() {
+		return UMLRpyPackage.eINSTANCE.getILink();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getId() {
+		return id;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setId(String newId) {
+		String oldId = id;
+		id = newId;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.ILINK__ID, oldId, id));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getMultiplicity() {
+		return multiplicity;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setMultiplicity(String newMultiplicity) {
+		String oldMultiplicity = multiplicity;
+		multiplicity = newMultiplicity;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.ILINK__MULTIPLICITY, oldMultiplicity, multiplicity));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getName() {
+		return name;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setName(String newName) {
+		String oldName = name;
+		name = newName;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.ILINK__NAME, oldName, name));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IClassHandle getOtherClass() {
+		if (otherClass != null && otherClass.eIsProxy()) {
+			InternalEObject oldOtherClass = (InternalEObject)otherClass;
+			otherClass = (IClassHandle)eResolveProxy(oldOtherClass);
+			if (otherClass != oldOtherClass) {
+				InternalEObject newOtherClass = (InternalEObject)otherClass;
+				NotificationChain msgs = oldOtherClass.eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.ILINK__OTHER_CLASS, null, null);
+				if (newOtherClass.eInternalContainer() == null) {
+					msgs = newOtherClass.eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.ILINK__OTHER_CLASS, null, msgs);
+				}
+				if (msgs != null) msgs.dispatch();
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.ILINK__OTHER_CLASS, oldOtherClass, otherClass));
+			}
+		}
+		return otherClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IClassHandle basicGetOtherClass() {
+		return otherClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public NotificationChain basicSetOtherClass(IClassHandle newOtherClass, NotificationChain msgs) {
+		IClassHandle oldOtherClass = otherClass;
+		otherClass = newOtherClass;
+		if (eNotificationRequired()) {
+			ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, UMLRpyPackage.ILINK__OTHER_CLASS, oldOtherClass, newOtherClass);
+			if (msgs == null) msgs = notification; else msgs.add(notification);
+		}
+		return msgs;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setOtherClass(IClassHandle newOtherClass) {
+		if (newOtherClass != otherClass) {
+			NotificationChain msgs = null;
+			if (otherClass != null)
+				msgs = ((InternalEObject)otherClass).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.ILINK__OTHER_CLASS, null, msgs);
+			if (newOtherClass != null)
+				msgs = ((InternalEObject)newOtherClass).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.ILINK__OTHER_CLASS, null, msgs);
+			msgs = basicSetOtherClass(newOtherClass, msgs);
+			if (msgs != null) msgs.dispatch();
+		}
+		else if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.ILINK__OTHER_CLASS, newOtherClass, newOtherClass));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IUnit getInverse() {
+		if (inverse != null && inverse.eIsProxy()) {
+			InternalEObject oldInverse = (InternalEObject)inverse;
+			inverse = (IUnit)eResolveProxy(oldInverse);
+			if (inverse != oldInverse) {
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.ILINK__INVERSE, oldInverse, inverse));
+			}
+		}
+		return inverse;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IUnit basicGetInverse() {
+		return inverse;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setInverse(IUnit newInverse) {
+		IUnit oldInverse = inverse;
+		inverse = newInverse;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.ILINK__INVERSE, oldInverse, inverse));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getLinkName() {
+		return linkName;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setLinkName(String newLinkName) {
+		String oldLinkName = linkName;
+		linkName = newLinkName;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.ILINK__LINK_NAME, oldLinkName, linkName));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getLinkType() {
+		return linkType;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setLinkType(String newLinkType) {
+		String oldLinkType = linkType;
+		linkType = newLinkType;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.ILINK__LINK_TYPE, oldLinkType, linkType));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getMyState() {
+		return myState;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setMyState(String newMyState) {
+		String oldMyState = myState;
+		myState = newMyState;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.ILINK__MY_STATE, oldMyState, myState));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
+		switch (featureID) {
+			case UMLRpyPackage.ILINK__OTHER_CLASS:
+				return basicSetOtherClass(null, msgs);
+		}
+		return super.eInverseRemove(otherEnd, featureID, msgs);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object eGet(int featureID, boolean resolve, boolean coreType) {
+		switch (featureID) {
+			case UMLRpyPackage.ILINK__ID:
+				return getId();
+			case UMLRpyPackage.ILINK__MULTIPLICITY:
+				return getMultiplicity();
+			case UMLRpyPackage.ILINK__NAME:
+				return getName();
+			case UMLRpyPackage.ILINK__OTHER_CLASS:
+				if (resolve) return getOtherClass();
+				return basicGetOtherClass();
+			case UMLRpyPackage.ILINK__INVERSE:
+				if (resolve) return getInverse();
+				return basicGetInverse();
+			case UMLRpyPackage.ILINK__LINK_NAME:
+				return getLinkName();
+			case UMLRpyPackage.ILINK__LINK_TYPE:
+				return getLinkType();
+			case UMLRpyPackage.ILINK__MY_STATE:
+				return getMyState();
+		}
+		return super.eGet(featureID, resolve, coreType);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void eSet(int featureID, Object newValue) {
+		switch (featureID) {
+			case UMLRpyPackage.ILINK__ID:
+				setId((String)newValue);
+				return;
+			case UMLRpyPackage.ILINK__MULTIPLICITY:
+				setMultiplicity((String)newValue);
+				return;
+			case UMLRpyPackage.ILINK__NAME:
+				setName((String)newValue);
+				return;
+			case UMLRpyPackage.ILINK__OTHER_CLASS:
+				setOtherClass((IClassHandle)newValue);
+				return;
+			case UMLRpyPackage.ILINK__INVERSE:
+				setInverse((IUnit)newValue);
+				return;
+			case UMLRpyPackage.ILINK__LINK_NAME:
+				setLinkName((String)newValue);
+				return;
+			case UMLRpyPackage.ILINK__LINK_TYPE:
+				setLinkType((String)newValue);
+				return;
+			case UMLRpyPackage.ILINK__MY_STATE:
+				setMyState((String)newValue);
+				return;
+		}
+		super.eSet(featureID, newValue);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void eUnset(int featureID) {
+		switch (featureID) {
+			case UMLRpyPackage.ILINK__ID:
+				setId(ID_EDEFAULT);
+				return;
+			case UMLRpyPackage.ILINK__MULTIPLICITY:
+				setMultiplicity(MULTIPLICITY_EDEFAULT);
+				return;
+			case UMLRpyPackage.ILINK__NAME:
+				setName(NAME_EDEFAULT);
+				return;
+			case UMLRpyPackage.ILINK__OTHER_CLASS:
+				setOtherClass((IClassHandle)null);
+				return;
+			case UMLRpyPackage.ILINK__INVERSE:
+				setInverse((IUnit)null);
+				return;
+			case UMLRpyPackage.ILINK__LINK_NAME:
+				setLinkName(LINK_NAME_EDEFAULT);
+				return;
+			case UMLRpyPackage.ILINK__LINK_TYPE:
+				setLinkType(LINK_TYPE_EDEFAULT);
+				return;
+			case UMLRpyPackage.ILINK__MY_STATE:
+				setMyState(MY_STATE_EDEFAULT);
+				return;
+		}
+		super.eUnset(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public boolean eIsSet(int featureID) {
+		switch (featureID) {
+			case UMLRpyPackage.ILINK__ID:
+				return ID_EDEFAULT == null ? id != null : !ID_EDEFAULT.equals(id);
+			case UMLRpyPackage.ILINK__MULTIPLICITY:
+				return MULTIPLICITY_EDEFAULT == null ? multiplicity != null : !MULTIPLICITY_EDEFAULT.equals(multiplicity);
+			case UMLRpyPackage.ILINK__NAME:
+				return NAME_EDEFAULT == null ? name != null : !NAME_EDEFAULT.equals(name);
+			case UMLRpyPackage.ILINK__OTHER_CLASS:
+				return otherClass != null;
+			case UMLRpyPackage.ILINK__INVERSE:
+				return inverse != null;
+			case UMLRpyPackage.ILINK__LINK_NAME:
+				return LINK_NAME_EDEFAULT == null ? linkName != null : !LINK_NAME_EDEFAULT.equals(linkName);
+			case UMLRpyPackage.ILINK__LINK_TYPE:
+				return LINK_TYPE_EDEFAULT == null ? linkType != null : !LINK_TYPE_EDEFAULT.equals(linkType);
+			case UMLRpyPackage.ILINK__MY_STATE:
+				return MY_STATE_EDEFAULT == null ? myState != null : !MY_STATE_EDEFAULT.equals(myState);
+		}
+		return super.eIsSet(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public int eBaseStructuralFeatureID(int derivedFeatureID, Class<?> baseClass) {
+		if (baseClass == LinksType.class) {
+			switch (derivedFeatureID) {
+				case UMLRpyPackage.ILINK__ID: return UMLRpyPackage.LINKS_TYPE__ID;
+				case UMLRpyPackage.ILINK__MULTIPLICITY: return UMLRpyPackage.LINKS_TYPE__MULTIPLICITY;
+				case UMLRpyPackage.ILINK__NAME: return UMLRpyPackage.LINKS_TYPE__NAME;
+				case UMLRpyPackage.ILINK__OTHER_CLASS: return UMLRpyPackage.LINKS_TYPE__OTHER_CLASS;
+				default: return -1;
+			}
+		}
+		if (baseClass == M_pModelObjectType.class) {
+			switch (derivedFeatureID) {
+				default: return -1;
+			}
+		}
+		return super.eBaseStructuralFeatureID(derivedFeatureID, baseClass);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public int eDerivedStructuralFeatureID(int baseFeatureID, Class<?> baseClass) {
+		if (baseClass == LinksType.class) {
+			switch (baseFeatureID) {
+				case UMLRpyPackage.LINKS_TYPE__ID: return UMLRpyPackage.ILINK__ID;
+				case UMLRpyPackage.LINKS_TYPE__MULTIPLICITY: return UMLRpyPackage.ILINK__MULTIPLICITY;
+				case UMLRpyPackage.LINKS_TYPE__NAME: return UMLRpyPackage.ILINK__NAME;
+				case UMLRpyPackage.LINKS_TYPE__OTHER_CLASS: return UMLRpyPackage.ILINK__OTHER_CLASS;
+				default: return -1;
+			}
+		}
+		if (baseClass == M_pModelObjectType.class) {
+			switch (baseFeatureID) {
+				default: return -1;
+			}
+		}
+		return super.eDerivedStructuralFeatureID(baseFeatureID, baseClass);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String toString() {
+		if (eIsProxy()) return super.toString();
+
+		StringBuffer result = new StringBuffer(super.toString());
+		result.append(" (id: "); //$NON-NLS-1$
+		result.append(id);
+		result.append(", multiplicity: "); //$NON-NLS-1$
+		result.append(multiplicity);
+		result.append(", name: "); //$NON-NLS-1$
+		result.append(name);
+		result.append(", linkName: "); //$NON-NLS-1$
+		result.append(linkName);
+		result.append(", linkType: "); //$NON-NLS-1$
+		result.append(linkType);
+		result.append(", myState: "); //$NON-NLS-1$
+		result.append(myState);
+		result.append(')');
+		return result.toString();
+	}
+
+} //ILinkImpl
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/ILinkInstanceImpl.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/ILinkInstanceImpl.java
new file mode 100755
index 0000000..24a540d
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/ILinkInstanceImpl.java
@@ -0,0 +1,452 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl;
+
+import org.eclipse.emf.common.notify.Notification;
+import org.eclipse.emf.common.notify.NotificationChain;
+
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.InternalEObject;
+
+import org.eclipse.emf.ecore.impl.ENotificationImpl;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IClassInstance;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ILinkInstance;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMetaLinkHandle;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>ILink Instance</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * </p>
+ * <ul>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.ILinkInstanceImpl#getId <em>Id</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.ILinkInstanceImpl#getName <em>Name</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.ILinkInstanceImpl#getToLink <em>To Link</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.ILinkInstanceImpl#getFromLink <em>From Link</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.ILinkInstanceImpl#getInstantiates <em>Instantiates</em>}</li>
+ * </ul>
+ *
+ * @generated
+ */
+public class ILinkInstanceImpl extends ComponentsTypeImpl implements ILinkInstance {
+	/**
+	 * The default value of the '{@link #getId() <em>Id</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getId()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String ID_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getId() <em>Id</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getId()
+	 * @generated
+	 * @ordered
+	 */
+	protected String id = ID_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getName() <em>Name</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getName()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String NAME_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getName() <em>Name</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getName()
+	 * @generated
+	 * @ordered
+	 */
+	protected String name = NAME_EDEFAULT;
+
+	/**
+	 * The cached value of the '{@link #getToLink() <em>To Link</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getToLink()
+	 * @generated
+	 * @ordered
+	 */
+	protected IClassInstance toLink;
+
+	/**
+	 * The cached value of the '{@link #getFromLink() <em>From Link</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getFromLink()
+	 * @generated
+	 * @ordered
+	 */
+	protected IClassInstance fromLink;
+
+	/**
+	 * The cached value of the '{@link #getInstantiates() <em>Instantiates</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getInstantiates()
+	 * @generated
+	 * @ordered
+	 */
+	protected IMetaLinkHandle instantiates;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected ILinkInstanceImpl() {
+		super();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EClass eStaticClass() {
+		return UMLRpyPackage.eINSTANCE.getILinkInstance();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getId() {
+		return id;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setId(String newId) {
+		String oldId = id;
+		id = newId;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.ILINK_INSTANCE__ID, oldId, id));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getName() {
+		return name;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setName(String newName) {
+		String oldName = name;
+		name = newName;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.ILINK_INSTANCE__NAME, oldName, name));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IClassInstance getToLink() {
+		if (toLink != null && toLink.eIsProxy()) {
+			InternalEObject oldToLink = (InternalEObject)toLink;
+			toLink = (IClassInstance)eResolveProxy(oldToLink);
+			if (toLink != oldToLink) {
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.ILINK_INSTANCE__TO_LINK, oldToLink, toLink));
+			}
+		}
+		return toLink;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IClassInstance basicGetToLink() {
+		return toLink;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setToLink(IClassInstance newToLink) {
+		IClassInstance oldToLink = toLink;
+		toLink = newToLink;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.ILINK_INSTANCE__TO_LINK, oldToLink, toLink));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IClassInstance getFromLink() {
+		if (fromLink != null && fromLink.eIsProxy()) {
+			InternalEObject oldFromLink = (InternalEObject)fromLink;
+			fromLink = (IClassInstance)eResolveProxy(oldFromLink);
+			if (fromLink != oldFromLink) {
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.ILINK_INSTANCE__FROM_LINK, oldFromLink, fromLink));
+			}
+		}
+		return fromLink;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IClassInstance basicGetFromLink() {
+		return fromLink;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setFromLink(IClassInstance newFromLink) {
+		IClassInstance oldFromLink = fromLink;
+		fromLink = newFromLink;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.ILINK_INSTANCE__FROM_LINK, oldFromLink, fromLink));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IMetaLinkHandle getInstantiates() {
+		if (instantiates != null && instantiates.eIsProxy()) {
+			InternalEObject oldInstantiates = (InternalEObject)instantiates;
+			instantiates = (IMetaLinkHandle)eResolveProxy(oldInstantiates);
+			if (instantiates != oldInstantiates) {
+				InternalEObject newInstantiates = (InternalEObject)instantiates;
+				NotificationChain msgs = oldInstantiates.eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.ILINK_INSTANCE__INSTANTIATES, null, null);
+				if (newInstantiates.eInternalContainer() == null) {
+					msgs = newInstantiates.eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.ILINK_INSTANCE__INSTANTIATES, null, msgs);
+				}
+				if (msgs != null) msgs.dispatch();
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.ILINK_INSTANCE__INSTANTIATES, oldInstantiates, instantiates));
+			}
+		}
+		return instantiates;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IMetaLinkHandle basicGetInstantiates() {
+		return instantiates;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public NotificationChain basicSetInstantiates(IMetaLinkHandle newInstantiates, NotificationChain msgs) {
+		IMetaLinkHandle oldInstantiates = instantiates;
+		instantiates = newInstantiates;
+		if (eNotificationRequired()) {
+			ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, UMLRpyPackage.ILINK_INSTANCE__INSTANTIATES, oldInstantiates, newInstantiates);
+			if (msgs == null) msgs = notification; else msgs.add(notification);
+		}
+		return msgs;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setInstantiates(IMetaLinkHandle newInstantiates) {
+		if (newInstantiates != instantiates) {
+			NotificationChain msgs = null;
+			if (instantiates != null)
+				msgs = ((InternalEObject)instantiates).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.ILINK_INSTANCE__INSTANTIATES, null, msgs);
+			if (newInstantiates != null)
+				msgs = ((InternalEObject)newInstantiates).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.ILINK_INSTANCE__INSTANTIATES, null, msgs);
+			msgs = basicSetInstantiates(newInstantiates, msgs);
+			if (msgs != null) msgs.dispatch();
+		}
+		else if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.ILINK_INSTANCE__INSTANTIATES, newInstantiates, newInstantiates));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
+		switch (featureID) {
+			case UMLRpyPackage.ILINK_INSTANCE__INSTANTIATES:
+				return basicSetInstantiates(null, msgs);
+		}
+		return super.eInverseRemove(otherEnd, featureID, msgs);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object eGet(int featureID, boolean resolve, boolean coreType) {
+		switch (featureID) {
+			case UMLRpyPackage.ILINK_INSTANCE__ID:
+				return getId();
+			case UMLRpyPackage.ILINK_INSTANCE__NAME:
+				return getName();
+			case UMLRpyPackage.ILINK_INSTANCE__TO_LINK:
+				if (resolve) return getToLink();
+				return basicGetToLink();
+			case UMLRpyPackage.ILINK_INSTANCE__FROM_LINK:
+				if (resolve) return getFromLink();
+				return basicGetFromLink();
+			case UMLRpyPackage.ILINK_INSTANCE__INSTANTIATES:
+				if (resolve) return getInstantiates();
+				return basicGetInstantiates();
+		}
+		return super.eGet(featureID, resolve, coreType);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void eSet(int featureID, Object newValue) {
+		switch (featureID) {
+			case UMLRpyPackage.ILINK_INSTANCE__ID:
+				setId((String)newValue);
+				return;
+			case UMLRpyPackage.ILINK_INSTANCE__NAME:
+				setName((String)newValue);
+				return;
+			case UMLRpyPackage.ILINK_INSTANCE__TO_LINK:
+				setToLink((IClassInstance)newValue);
+				return;
+			case UMLRpyPackage.ILINK_INSTANCE__FROM_LINK:
+				setFromLink((IClassInstance)newValue);
+				return;
+			case UMLRpyPackage.ILINK_INSTANCE__INSTANTIATES:
+				setInstantiates((IMetaLinkHandle)newValue);
+				return;
+		}
+		super.eSet(featureID, newValue);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void eUnset(int featureID) {
+		switch (featureID) {
+			case UMLRpyPackage.ILINK_INSTANCE__ID:
+				setId(ID_EDEFAULT);
+				return;
+			case UMLRpyPackage.ILINK_INSTANCE__NAME:
+				setName(NAME_EDEFAULT);
+				return;
+			case UMLRpyPackage.ILINK_INSTANCE__TO_LINK:
+				setToLink((IClassInstance)null);
+				return;
+			case UMLRpyPackage.ILINK_INSTANCE__FROM_LINK:
+				setFromLink((IClassInstance)null);
+				return;
+			case UMLRpyPackage.ILINK_INSTANCE__INSTANTIATES:
+				setInstantiates((IMetaLinkHandle)null);
+				return;
+		}
+		super.eUnset(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public boolean eIsSet(int featureID) {
+		switch (featureID) {
+			case UMLRpyPackage.ILINK_INSTANCE__ID:
+				return ID_EDEFAULT == null ? id != null : !ID_EDEFAULT.equals(id);
+			case UMLRpyPackage.ILINK_INSTANCE__NAME:
+				return NAME_EDEFAULT == null ? name != null : !NAME_EDEFAULT.equals(name);
+			case UMLRpyPackage.ILINK_INSTANCE__TO_LINK:
+				return toLink != null;
+			case UMLRpyPackage.ILINK_INSTANCE__FROM_LINK:
+				return fromLink != null;
+			case UMLRpyPackage.ILINK_INSTANCE__INSTANTIATES:
+				return instantiates != null;
+		}
+		return super.eIsSet(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String toString() {
+		if (eIsProxy()) return super.toString();
+
+		StringBuffer result = new StringBuffer(super.toString());
+		result.append(" (id: "); //$NON-NLS-1$
+		result.append(id);
+		result.append(", name: "); //$NON-NLS-1$
+		result.append(name);
+		result.append(')');
+		return result.toString();
+	}
+
+} //ILinkInstanceImpl
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/ILiteralSpecificationImpl.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/ILiteralSpecificationImpl.java
new file mode 100755
index 0000000..52134c4
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/ILiteralSpecificationImpl.java
@@ -0,0 +1,413 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl;
+
+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.impl.ENotificationImpl;
+
+import org.eclipse.emf.ecore.util.EDataTypeEList;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ILiteralSpecification;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>ILiteral Specification</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * </p>
+ * <ul>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.ILiteralSpecificationImpl#getId <em>Id</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.ILiteralSpecificationImpl#getModifiedTimeWeak <em>Modified Time Weak</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.ILiteralSpecificationImpl#getValue <em>Value</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.ILiteralSpecificationImpl#getMyState <em>My State</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.ILiteralSpecificationImpl#getName <em>Name</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.ILiteralSpecificationImpl#getCodeUpdateCGTime <em>Code Update CG Time</em>}</li>
+ * </ul>
+ *
+ * @generated
+ */
+public class ILiteralSpecificationImpl extends IValueSpecificationImpl implements ILiteralSpecification {
+	/**
+	 * The default value of the '{@link #getId() <em>Id</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getId()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String ID_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getId() <em>Id</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getId()
+	 * @generated
+	 * @ordered
+	 */
+	protected String id = ID_EDEFAULT;
+
+	/**
+	 * The cached value of the '{@link #getModifiedTimeWeak() <em>Modified Time Weak</em>}' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getModifiedTimeWeak()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<String> modifiedTimeWeak;
+
+	/**
+	 * The default value of the '{@link #getValue() <em>Value</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getValue()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String VALUE_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getValue() <em>Value</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getValue()
+	 * @generated
+	 * @ordered
+	 */
+	protected String value = VALUE_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getMyState() <em>My State</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getMyState()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String MY_STATE_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getMyState() <em>My State</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getMyState()
+	 * @generated
+	 * @ordered
+	 */
+	protected String myState = MY_STATE_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getName() <em>Name</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getName()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String NAME_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getName() <em>Name</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getName()
+	 * @generated
+	 * @ordered
+	 */
+	protected String name = NAME_EDEFAULT;
+
+	/**
+	 * The cached value of the '{@link #getCodeUpdateCGTime() <em>Code Update CG Time</em>}' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getCodeUpdateCGTime()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<String> codeUpdateCGTime;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected ILiteralSpecificationImpl() {
+		super();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EClass eStaticClass() {
+		return UMLRpyPackage.eINSTANCE.getILiteralSpecification();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getId() {
+		return id;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setId(String newId) {
+		String oldId = id;
+		id = newId;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.ILITERAL_SPECIFICATION__ID, oldId, id));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<String> getModifiedTimeWeak() {
+		if (modifiedTimeWeak == null) {
+			modifiedTimeWeak = new EDataTypeEList<String>(String.class, this, UMLRpyPackage.ILITERAL_SPECIFICATION__MODIFIED_TIME_WEAK);
+		}
+		return modifiedTimeWeak;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getValue() {
+		return value;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setValue(String newValue) {
+		String oldValue = value;
+		value = newValue;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.ILITERAL_SPECIFICATION__VALUE, oldValue, value));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getMyState() {
+		return myState;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setMyState(String newMyState) {
+		String oldMyState = myState;
+		myState = newMyState;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.ILITERAL_SPECIFICATION__MY_STATE, oldMyState, myState));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getName() {
+		return name;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setName(String newName) {
+		String oldName = name;
+		name = newName;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.ILITERAL_SPECIFICATION__NAME, oldName, name));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<String> getCodeUpdateCGTime() {
+		if (codeUpdateCGTime == null) {
+			codeUpdateCGTime = new EDataTypeEList<String>(String.class, this, UMLRpyPackage.ILITERAL_SPECIFICATION__CODE_UPDATE_CG_TIME);
+		}
+		return codeUpdateCGTime;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object eGet(int featureID, boolean resolve, boolean coreType) {
+		switch (featureID) {
+			case UMLRpyPackage.ILITERAL_SPECIFICATION__ID:
+				return getId();
+			case UMLRpyPackage.ILITERAL_SPECIFICATION__MODIFIED_TIME_WEAK:
+				return getModifiedTimeWeak();
+			case UMLRpyPackage.ILITERAL_SPECIFICATION__VALUE:
+				return getValue();
+			case UMLRpyPackage.ILITERAL_SPECIFICATION__MY_STATE:
+				return getMyState();
+			case UMLRpyPackage.ILITERAL_SPECIFICATION__NAME:
+				return getName();
+			case UMLRpyPackage.ILITERAL_SPECIFICATION__CODE_UPDATE_CG_TIME:
+				return getCodeUpdateCGTime();
+		}
+		return super.eGet(featureID, resolve, coreType);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@SuppressWarnings("unchecked")
+	@Override
+	public void eSet(int featureID, Object newValue) {
+		switch (featureID) {
+			case UMLRpyPackage.ILITERAL_SPECIFICATION__ID:
+				setId((String)newValue);
+				return;
+			case UMLRpyPackage.ILITERAL_SPECIFICATION__MODIFIED_TIME_WEAK:
+				getModifiedTimeWeak().clear();
+				getModifiedTimeWeak().addAll((Collection<? extends String>)newValue);
+				return;
+			case UMLRpyPackage.ILITERAL_SPECIFICATION__VALUE:
+				setValue((String)newValue);
+				return;
+			case UMLRpyPackage.ILITERAL_SPECIFICATION__MY_STATE:
+				setMyState((String)newValue);
+				return;
+			case UMLRpyPackage.ILITERAL_SPECIFICATION__NAME:
+				setName((String)newValue);
+				return;
+			case UMLRpyPackage.ILITERAL_SPECIFICATION__CODE_UPDATE_CG_TIME:
+				getCodeUpdateCGTime().clear();
+				getCodeUpdateCGTime().addAll((Collection<? extends String>)newValue);
+				return;
+		}
+		super.eSet(featureID, newValue);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void eUnset(int featureID) {
+		switch (featureID) {
+			case UMLRpyPackage.ILITERAL_SPECIFICATION__ID:
+				setId(ID_EDEFAULT);
+				return;
+			case UMLRpyPackage.ILITERAL_SPECIFICATION__MODIFIED_TIME_WEAK:
+				getModifiedTimeWeak().clear();
+				return;
+			case UMLRpyPackage.ILITERAL_SPECIFICATION__VALUE:
+				setValue(VALUE_EDEFAULT);
+				return;
+			case UMLRpyPackage.ILITERAL_SPECIFICATION__MY_STATE:
+				setMyState(MY_STATE_EDEFAULT);
+				return;
+			case UMLRpyPackage.ILITERAL_SPECIFICATION__NAME:
+				setName(NAME_EDEFAULT);
+				return;
+			case UMLRpyPackage.ILITERAL_SPECIFICATION__CODE_UPDATE_CG_TIME:
+				getCodeUpdateCGTime().clear();
+				return;
+		}
+		super.eUnset(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public boolean eIsSet(int featureID) {
+		switch (featureID) {
+			case UMLRpyPackage.ILITERAL_SPECIFICATION__ID:
+				return ID_EDEFAULT == null ? id != null : !ID_EDEFAULT.equals(id);
+			case UMLRpyPackage.ILITERAL_SPECIFICATION__MODIFIED_TIME_WEAK:
+				return modifiedTimeWeak != null && !modifiedTimeWeak.isEmpty();
+			case UMLRpyPackage.ILITERAL_SPECIFICATION__VALUE:
+				return VALUE_EDEFAULT == null ? value != null : !VALUE_EDEFAULT.equals(value);
+			case UMLRpyPackage.ILITERAL_SPECIFICATION__MY_STATE:
+				return MY_STATE_EDEFAULT == null ? myState != null : !MY_STATE_EDEFAULT.equals(myState);
+			case UMLRpyPackage.ILITERAL_SPECIFICATION__NAME:
+				return NAME_EDEFAULT == null ? name != null : !NAME_EDEFAULT.equals(name);
+			case UMLRpyPackage.ILITERAL_SPECIFICATION__CODE_UPDATE_CG_TIME:
+				return codeUpdateCGTime != null && !codeUpdateCGTime.isEmpty();
+		}
+		return super.eIsSet(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String toString() {
+		if (eIsProxy()) return super.toString();
+
+		StringBuffer result = new StringBuffer(super.toString());
+		result.append(" (id: "); //$NON-NLS-1$
+		result.append(id);
+		result.append(", modifiedTimeWeak: "); //$NON-NLS-1$
+		result.append(modifiedTimeWeak);
+		result.append(", value: "); //$NON-NLS-1$
+		result.append(value);
+		result.append(", myState: "); //$NON-NLS-1$
+		result.append(myState);
+		result.append(", name: "); //$NON-NLS-1$
+		result.append(name);
+		result.append(", codeUpdateCGTime: "); //$NON-NLS-1$
+		result.append(codeUpdateCGTime);
+		result.append(')');
+		return result.toString();
+	}
+
+} //ILiteralSpecificationImpl
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/IMHyperLinkImpl.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/IMHyperLinkImpl.java
new file mode 100755
index 0000000..0b7ae10
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/IMHyperLinkImpl.java
@@ -0,0 +1,850 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl;
+
+import java.util.Collection;
+
+import org.eclipse.emf.common.notify.Notification;
+import org.eclipse.emf.common.notify.NotificationChain;
+
+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.EDataTypeEList;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.DependsOnType;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IDescription;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMHyperLink;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IPropertyContainer;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>IM Hyper Link</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * </p>
+ * <ul>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IMHyperLinkImpl#getId <em>Id</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IMHyperLinkImpl#getProperties <em>Properties</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IMHyperLinkImpl#getModifiedTimeWeak <em>Modified Time Weak</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IMHyperLinkImpl#getDependsOn <em>Depends On</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IMHyperLinkImpl#getLinkDispName <em>Link Disp Name</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IMHyperLinkImpl#getLinkType <em>Link Type</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IMHyperLinkImpl#getIsConfigurationFileHyperLink <em>Is Configuration File Hyper Link</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IMHyperLinkImpl#getLinkTarget <em>Link Target</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IMHyperLinkImpl#getDescription <em>Description</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IMHyperLinkImpl#getRequiremenTracabilityHandle <em>Requiremen Tracability Handle</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IMHyperLinkImpl#getObjectCreation <em>Object Creation</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IMHyperLinkImpl#getUmlDependencyID <em>Uml Dependency ID</em>}</li>
+ * </ul>
+ *
+ * @generated
+ */
+public class IMHyperLinkImpl extends HyperLinksTypeImpl implements IMHyperLink {
+	/**
+	 * The default value of the '{@link #getId() <em>Id</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getId()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String ID_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getId() <em>Id</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getId()
+	 * @generated
+	 * @ordered
+	 */
+	protected String id = ID_EDEFAULT;
+
+	/**
+	 * The cached value of the '{@link #getProperties() <em>Properties</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getProperties()
+	 * @generated
+	 * @ordered
+	 */
+	protected IPropertyContainer properties;
+
+	/**
+	 * The cached value of the '{@link #getModifiedTimeWeak() <em>Modified Time Weak</em>}' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getModifiedTimeWeak()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<String> modifiedTimeWeak;
+
+	/**
+	 * The cached value of the '{@link #getDependsOn() <em>Depends On</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getDependsOn()
+	 * @generated
+	 * @ordered
+	 */
+	protected DependsOnType dependsOn;
+
+	/**
+	 * The default value of the '{@link #getLinkDispName() <em>Link Disp Name</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getLinkDispName()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String LINK_DISP_NAME_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getLinkDispName() <em>Link Disp Name</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getLinkDispName()
+	 * @generated
+	 * @ordered
+	 */
+	protected String linkDispName = LINK_DISP_NAME_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getLinkType() <em>Link Type</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getLinkType()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String LINK_TYPE_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getLinkType() <em>Link Type</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getLinkType()
+	 * @generated
+	 * @ordered
+	 */
+	protected String linkType = LINK_TYPE_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getIsConfigurationFileHyperLink() <em>Is Configuration File Hyper Link</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getIsConfigurationFileHyperLink()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String IS_CONFIGURATION_FILE_HYPER_LINK_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getIsConfigurationFileHyperLink() <em>Is Configuration File Hyper Link</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getIsConfigurationFileHyperLink()
+	 * @generated
+	 * @ordered
+	 */
+	protected String isConfigurationFileHyperLink = IS_CONFIGURATION_FILE_HYPER_LINK_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getLinkTarget() <em>Link Target</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getLinkTarget()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String LINK_TARGET_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getLinkTarget() <em>Link Target</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getLinkTarget()
+	 * @generated
+	 * @ordered
+	 */
+	protected String linkTarget = LINK_TARGET_EDEFAULT;
+
+	/**
+	 * The cached value of the '{@link #getDescription() <em>Description</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getDescription()
+	 * @generated
+	 * @ordered
+	 */
+	protected IDescription description;
+
+	/**
+	 * The default value of the '{@link #getRequiremenTracabilityHandle() <em>Requiremen Tracability Handle</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getRequiremenTracabilityHandle()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String REQUIREMEN_TRACABILITY_HANDLE_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getRequiremenTracabilityHandle() <em>Requiremen Tracability Handle</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getRequiremenTracabilityHandle()
+	 * @generated
+	 * @ordered
+	 */
+	protected String requiremenTracabilityHandle = REQUIREMEN_TRACABILITY_HANDLE_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getObjectCreation() <em>Object Creation</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getObjectCreation()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String OBJECT_CREATION_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getObjectCreation() <em>Object Creation</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getObjectCreation()
+	 * @generated
+	 * @ordered
+	 */
+	protected String objectCreation = OBJECT_CREATION_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getUmlDependencyID() <em>Uml Dependency ID</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getUmlDependencyID()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String UML_DEPENDENCY_ID_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getUmlDependencyID() <em>Uml Dependency ID</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getUmlDependencyID()
+	 * @generated
+	 * @ordered
+	 */
+	protected String umlDependencyID = UML_DEPENDENCY_ID_EDEFAULT;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected IMHyperLinkImpl() {
+		super();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EClass eStaticClass() {
+		return UMLRpyPackage.eINSTANCE.getIMHyperLink();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getId() {
+		return id;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setId(String newId) {
+		String oldId = id;
+		id = newId;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IM_HYPER_LINK__ID, oldId, id));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IPropertyContainer getProperties() {
+		if (properties != null && properties.eIsProxy()) {
+			InternalEObject oldProperties = (InternalEObject)properties;
+			properties = (IPropertyContainer)eResolveProxy(oldProperties);
+			if (properties != oldProperties) {
+				InternalEObject newProperties = (InternalEObject)properties;
+				NotificationChain msgs = oldProperties.eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IM_HYPER_LINK__PROPERTIES, null, null);
+				if (newProperties.eInternalContainer() == null) {
+					msgs = newProperties.eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IM_HYPER_LINK__PROPERTIES, null, msgs);
+				}
+				if (msgs != null) msgs.dispatch();
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.IM_HYPER_LINK__PROPERTIES, oldProperties, properties));
+			}
+		}
+		return properties;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IPropertyContainer basicGetProperties() {
+		return properties;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public NotificationChain basicSetProperties(IPropertyContainer newProperties, NotificationChain msgs) {
+		IPropertyContainer oldProperties = properties;
+		properties = newProperties;
+		if (eNotificationRequired()) {
+			ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IM_HYPER_LINK__PROPERTIES, oldProperties, newProperties);
+			if (msgs == null) msgs = notification; else msgs.add(notification);
+		}
+		return msgs;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setProperties(IPropertyContainer newProperties) {
+		if (newProperties != properties) {
+			NotificationChain msgs = null;
+			if (properties != null)
+				msgs = ((InternalEObject)properties).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IM_HYPER_LINK__PROPERTIES, null, msgs);
+			if (newProperties != null)
+				msgs = ((InternalEObject)newProperties).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IM_HYPER_LINK__PROPERTIES, null, msgs);
+			msgs = basicSetProperties(newProperties, msgs);
+			if (msgs != null) msgs.dispatch();
+		}
+		else if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IM_HYPER_LINK__PROPERTIES, newProperties, newProperties));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<String> getModifiedTimeWeak() {
+		if (modifiedTimeWeak == null) {
+			modifiedTimeWeak = new EDataTypeEList<String>(String.class, this, UMLRpyPackage.IM_HYPER_LINK__MODIFIED_TIME_WEAK);
+		}
+		return modifiedTimeWeak;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public DependsOnType getDependsOn() {
+		if (dependsOn != null && dependsOn.eIsProxy()) {
+			InternalEObject oldDependsOn = (InternalEObject)dependsOn;
+			dependsOn = (DependsOnType)eResolveProxy(oldDependsOn);
+			if (dependsOn != oldDependsOn) {
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.IM_HYPER_LINK__DEPENDS_ON, oldDependsOn, dependsOn));
+			}
+		}
+		return dependsOn;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public DependsOnType basicGetDependsOn() {
+		return dependsOn;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setDependsOn(DependsOnType newDependsOn) {
+		DependsOnType oldDependsOn = dependsOn;
+		dependsOn = newDependsOn;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IM_HYPER_LINK__DEPENDS_ON, oldDependsOn, dependsOn));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getLinkDispName() {
+		return linkDispName;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setLinkDispName(String newLinkDispName) {
+		String oldLinkDispName = linkDispName;
+		linkDispName = newLinkDispName;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IM_HYPER_LINK__LINK_DISP_NAME, oldLinkDispName, linkDispName));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getLinkType() {
+		return linkType;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setLinkType(String newLinkType) {
+		String oldLinkType = linkType;
+		linkType = newLinkType;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IM_HYPER_LINK__LINK_TYPE, oldLinkType, linkType));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getIsConfigurationFileHyperLink() {
+		return isConfigurationFileHyperLink;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setIsConfigurationFileHyperLink(String newIsConfigurationFileHyperLink) {
+		String oldIsConfigurationFileHyperLink = isConfigurationFileHyperLink;
+		isConfigurationFileHyperLink = newIsConfigurationFileHyperLink;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IM_HYPER_LINK__IS_CONFIGURATION_FILE_HYPER_LINK, oldIsConfigurationFileHyperLink, isConfigurationFileHyperLink));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getLinkTarget() {
+		return linkTarget;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setLinkTarget(String newLinkTarget) {
+		String oldLinkTarget = linkTarget;
+		linkTarget = newLinkTarget;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IM_HYPER_LINK__LINK_TARGET, oldLinkTarget, linkTarget));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IDescription getDescription() {
+		if (description != null && description.eIsProxy()) {
+			InternalEObject oldDescription = (InternalEObject)description;
+			description = (IDescription)eResolveProxy(oldDescription);
+			if (description != oldDescription) {
+				InternalEObject newDescription = (InternalEObject)description;
+				NotificationChain msgs = oldDescription.eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IM_HYPER_LINK__DESCRIPTION, null, null);
+				if (newDescription.eInternalContainer() == null) {
+					msgs = newDescription.eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IM_HYPER_LINK__DESCRIPTION, null, msgs);
+				}
+				if (msgs != null) msgs.dispatch();
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.IM_HYPER_LINK__DESCRIPTION, oldDescription, description));
+			}
+		}
+		return description;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IDescription basicGetDescription() {
+		return description;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public NotificationChain basicSetDescription(IDescription newDescription, NotificationChain msgs) {
+		IDescription oldDescription = description;
+		description = newDescription;
+		if (eNotificationRequired()) {
+			ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IM_HYPER_LINK__DESCRIPTION, oldDescription, newDescription);
+			if (msgs == null) msgs = notification; else msgs.add(notification);
+		}
+		return msgs;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setDescription(IDescription newDescription) {
+		if (newDescription != description) {
+			NotificationChain msgs = null;
+			if (description != null)
+				msgs = ((InternalEObject)description).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IM_HYPER_LINK__DESCRIPTION, null, msgs);
+			if (newDescription != null)
+				msgs = ((InternalEObject)newDescription).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IM_HYPER_LINK__DESCRIPTION, null, msgs);
+			msgs = basicSetDescription(newDescription, msgs);
+			if (msgs != null) msgs.dispatch();
+		}
+		else if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IM_HYPER_LINK__DESCRIPTION, newDescription, newDescription));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getRequiremenTracabilityHandle() {
+		return requiremenTracabilityHandle;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setRequiremenTracabilityHandle(String newRequiremenTracabilityHandle) {
+		String oldRequiremenTracabilityHandle = requiremenTracabilityHandle;
+		requiremenTracabilityHandle = newRequiremenTracabilityHandle;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IM_HYPER_LINK__REQUIREMEN_TRACABILITY_HANDLE, oldRequiremenTracabilityHandle, requiremenTracabilityHandle));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getObjectCreation() {
+		return objectCreation;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setObjectCreation(String newObjectCreation) {
+		String oldObjectCreation = objectCreation;
+		objectCreation = newObjectCreation;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IM_HYPER_LINK__OBJECT_CREATION, oldObjectCreation, objectCreation));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getUmlDependencyID() {
+		return umlDependencyID;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setUmlDependencyID(String newUmlDependencyID) {
+		String oldUmlDependencyID = umlDependencyID;
+		umlDependencyID = newUmlDependencyID;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IM_HYPER_LINK__UML_DEPENDENCY_ID, oldUmlDependencyID, umlDependencyID));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
+		switch (featureID) {
+			case UMLRpyPackage.IM_HYPER_LINK__PROPERTIES:
+				return basicSetProperties(null, msgs);
+			case UMLRpyPackage.IM_HYPER_LINK__DESCRIPTION:
+				return basicSetDescription(null, msgs);
+		}
+		return super.eInverseRemove(otherEnd, featureID, msgs);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object eGet(int featureID, boolean resolve, boolean coreType) {
+		switch (featureID) {
+			case UMLRpyPackage.IM_HYPER_LINK__ID:
+				return getId();
+			case UMLRpyPackage.IM_HYPER_LINK__PROPERTIES:
+				if (resolve) return getProperties();
+				return basicGetProperties();
+			case UMLRpyPackage.IM_HYPER_LINK__MODIFIED_TIME_WEAK:
+				return getModifiedTimeWeak();
+			case UMLRpyPackage.IM_HYPER_LINK__DEPENDS_ON:
+				if (resolve) return getDependsOn();
+				return basicGetDependsOn();
+			case UMLRpyPackage.IM_HYPER_LINK__LINK_DISP_NAME:
+				return getLinkDispName();
+			case UMLRpyPackage.IM_HYPER_LINK__LINK_TYPE:
+				return getLinkType();
+			case UMLRpyPackage.IM_HYPER_LINK__IS_CONFIGURATION_FILE_HYPER_LINK:
+				return getIsConfigurationFileHyperLink();
+			case UMLRpyPackage.IM_HYPER_LINK__LINK_TARGET:
+				return getLinkTarget();
+			case UMLRpyPackage.IM_HYPER_LINK__DESCRIPTION:
+				if (resolve) return getDescription();
+				return basicGetDescription();
+			case UMLRpyPackage.IM_HYPER_LINK__REQUIREMEN_TRACABILITY_HANDLE:
+				return getRequiremenTracabilityHandle();
+			case UMLRpyPackage.IM_HYPER_LINK__OBJECT_CREATION:
+				return getObjectCreation();
+			case UMLRpyPackage.IM_HYPER_LINK__UML_DEPENDENCY_ID:
+				return getUmlDependencyID();
+		}
+		return super.eGet(featureID, resolve, coreType);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@SuppressWarnings("unchecked")
+	@Override
+	public void eSet(int featureID, Object newValue) {
+		switch (featureID) {
+			case UMLRpyPackage.IM_HYPER_LINK__ID:
+				setId((String)newValue);
+				return;
+			case UMLRpyPackage.IM_HYPER_LINK__PROPERTIES:
+				setProperties((IPropertyContainer)newValue);
+				return;
+			case UMLRpyPackage.IM_HYPER_LINK__MODIFIED_TIME_WEAK:
+				getModifiedTimeWeak().clear();
+				getModifiedTimeWeak().addAll((Collection<? extends String>)newValue);
+				return;
+			case UMLRpyPackage.IM_HYPER_LINK__DEPENDS_ON:
+				setDependsOn((DependsOnType)newValue);
+				return;
+			case UMLRpyPackage.IM_HYPER_LINK__LINK_DISP_NAME:
+				setLinkDispName((String)newValue);
+				return;
+			case UMLRpyPackage.IM_HYPER_LINK__LINK_TYPE:
+				setLinkType((String)newValue);
+				return;
+			case UMLRpyPackage.IM_HYPER_LINK__IS_CONFIGURATION_FILE_HYPER_LINK:
+				setIsConfigurationFileHyperLink((String)newValue);
+				return;
+			case UMLRpyPackage.IM_HYPER_LINK__LINK_TARGET:
+				setLinkTarget((String)newValue);
+				return;
+			case UMLRpyPackage.IM_HYPER_LINK__DESCRIPTION:
+				setDescription((IDescription)newValue);
+				return;
+			case UMLRpyPackage.IM_HYPER_LINK__REQUIREMEN_TRACABILITY_HANDLE:
+				setRequiremenTracabilityHandle((String)newValue);
+				return;
+			case UMLRpyPackage.IM_HYPER_LINK__OBJECT_CREATION:
+				setObjectCreation((String)newValue);
+				return;
+			case UMLRpyPackage.IM_HYPER_LINK__UML_DEPENDENCY_ID:
+				setUmlDependencyID((String)newValue);
+				return;
+		}
+		super.eSet(featureID, newValue);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void eUnset(int featureID) {
+		switch (featureID) {
+			case UMLRpyPackage.IM_HYPER_LINK__ID:
+				setId(ID_EDEFAULT);
+				return;
+			case UMLRpyPackage.IM_HYPER_LINK__PROPERTIES:
+				setProperties((IPropertyContainer)null);
+				return;
+			case UMLRpyPackage.IM_HYPER_LINK__MODIFIED_TIME_WEAK:
+				getModifiedTimeWeak().clear();
+				return;
+			case UMLRpyPackage.IM_HYPER_LINK__DEPENDS_ON:
+				setDependsOn((DependsOnType)null);
+				return;
+			case UMLRpyPackage.IM_HYPER_LINK__LINK_DISP_NAME:
+				setLinkDispName(LINK_DISP_NAME_EDEFAULT);
+				return;
+			case UMLRpyPackage.IM_HYPER_LINK__LINK_TYPE:
+				setLinkType(LINK_TYPE_EDEFAULT);
+				return;
+			case UMLRpyPackage.IM_HYPER_LINK__IS_CONFIGURATION_FILE_HYPER_LINK:
+				setIsConfigurationFileHyperLink(IS_CONFIGURATION_FILE_HYPER_LINK_EDEFAULT);
+				return;
+			case UMLRpyPackage.IM_HYPER_LINK__LINK_TARGET:
+				setLinkTarget(LINK_TARGET_EDEFAULT);
+				return;
+			case UMLRpyPackage.IM_HYPER_LINK__DESCRIPTION:
+				setDescription((IDescription)null);
+				return;
+			case UMLRpyPackage.IM_HYPER_LINK__REQUIREMEN_TRACABILITY_HANDLE:
+				setRequiremenTracabilityHandle(REQUIREMEN_TRACABILITY_HANDLE_EDEFAULT);
+				return;
+			case UMLRpyPackage.IM_HYPER_LINK__OBJECT_CREATION:
+				setObjectCreation(OBJECT_CREATION_EDEFAULT);
+				return;
+			case UMLRpyPackage.IM_HYPER_LINK__UML_DEPENDENCY_ID:
+				setUmlDependencyID(UML_DEPENDENCY_ID_EDEFAULT);
+				return;
+		}
+		super.eUnset(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public boolean eIsSet(int featureID) {
+		switch (featureID) {
+			case UMLRpyPackage.IM_HYPER_LINK__ID:
+				return ID_EDEFAULT == null ? id != null : !ID_EDEFAULT.equals(id);
+			case UMLRpyPackage.IM_HYPER_LINK__PROPERTIES:
+				return properties != null;
+			case UMLRpyPackage.IM_HYPER_LINK__MODIFIED_TIME_WEAK:
+				return modifiedTimeWeak != null && !modifiedTimeWeak.isEmpty();
+			case UMLRpyPackage.IM_HYPER_LINK__DEPENDS_ON:
+				return dependsOn != null;
+			case UMLRpyPackage.IM_HYPER_LINK__LINK_DISP_NAME:
+				return LINK_DISP_NAME_EDEFAULT == null ? linkDispName != null : !LINK_DISP_NAME_EDEFAULT.equals(linkDispName);
+			case UMLRpyPackage.IM_HYPER_LINK__LINK_TYPE:
+				return LINK_TYPE_EDEFAULT == null ? linkType != null : !LINK_TYPE_EDEFAULT.equals(linkType);
+			case UMLRpyPackage.IM_HYPER_LINK__IS_CONFIGURATION_FILE_HYPER_LINK:
+				return IS_CONFIGURATION_FILE_HYPER_LINK_EDEFAULT == null ? isConfigurationFileHyperLink != null : !IS_CONFIGURATION_FILE_HYPER_LINK_EDEFAULT.equals(isConfigurationFileHyperLink);
+			case UMLRpyPackage.IM_HYPER_LINK__LINK_TARGET:
+				return LINK_TARGET_EDEFAULT == null ? linkTarget != null : !LINK_TARGET_EDEFAULT.equals(linkTarget);
+			case UMLRpyPackage.IM_HYPER_LINK__DESCRIPTION:
+				return description != null;
+			case UMLRpyPackage.IM_HYPER_LINK__REQUIREMEN_TRACABILITY_HANDLE:
+				return REQUIREMEN_TRACABILITY_HANDLE_EDEFAULT == null ? requiremenTracabilityHandle != null : !REQUIREMEN_TRACABILITY_HANDLE_EDEFAULT.equals(requiremenTracabilityHandle);
+			case UMLRpyPackage.IM_HYPER_LINK__OBJECT_CREATION:
+				return OBJECT_CREATION_EDEFAULT == null ? objectCreation != null : !OBJECT_CREATION_EDEFAULT.equals(objectCreation);
+			case UMLRpyPackage.IM_HYPER_LINK__UML_DEPENDENCY_ID:
+				return UML_DEPENDENCY_ID_EDEFAULT == null ? umlDependencyID != null : !UML_DEPENDENCY_ID_EDEFAULT.equals(umlDependencyID);
+		}
+		return super.eIsSet(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String toString() {
+		if (eIsProxy()) return super.toString();
+
+		StringBuffer result = new StringBuffer(super.toString());
+		result.append(" (id: "); //$NON-NLS-1$
+		result.append(id);
+		result.append(", modifiedTimeWeak: "); //$NON-NLS-1$
+		result.append(modifiedTimeWeak);
+		result.append(", linkDispName: "); //$NON-NLS-1$
+		result.append(linkDispName);
+		result.append(", linkType: "); //$NON-NLS-1$
+		result.append(linkType);
+		result.append(", isConfigurationFileHyperLink: "); //$NON-NLS-1$
+		result.append(isConfigurationFileHyperLink);
+		result.append(", linkTarget: "); //$NON-NLS-1$
+		result.append(linkTarget);
+		result.append(", requiremenTracabilityHandle: "); //$NON-NLS-1$
+		result.append(requiremenTracabilityHandle);
+		result.append(", objectCreation: "); //$NON-NLS-1$
+		result.append(objectCreation);
+		result.append(", umlDependencyID: "); //$NON-NLS-1$
+		result.append(umlDependencyID);
+		result.append(')');
+		return result.toString();
+	}
+
+} //IMHyperLinkImpl
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/IMSCImpl.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/IMSCImpl.java
new file mode 100755
index 0000000..562147b
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/IMSCImpl.java
@@ -0,0 +1,1313 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl;
+
+import java.util.Collection;
+
+import org.eclipse.emf.common.notify.Notification;
+import org.eclipse.emf.common.notify.NotificationChain;
+
+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.EDataTypeEList;
+import org.eclipse.emf.ecore.util.EObjectContainmentEList;
+import org.eclipse.emf.ecore.util.EObjectResolvingEList;
+import org.eclipse.emf.ecore.util.InternalEList;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscChart;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IAnnotation;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IClassifier;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ICollaboration;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IDescription;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMSC;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IPropertyContainer;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ISubsystem;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITag;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.OwnerHandleType;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>IMSC</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * </p>
+ * <ul>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IMSCImpl#getId <em>Id</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IMSCImpl#getMyState <em>My State</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IMSCImpl#getProperties <em>Properties</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IMSCImpl#getName <em>Name</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IMSCImpl#getLastModifiedTime <em>Last Modified Time</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IMSCImpl#getGraphicChart <em>Graphic Chart</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IMSCImpl#getDefaultSubsystem <em>Default Subsystem</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IMSCImpl#getM_pICollaboration <em>MpI Collaboration</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IMSCImpl#getCmheader <em>Cmheader</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IMSCImpl#getLastID <em>Last ID</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IMSCImpl#getOwnerHandle <em>Owner Handle</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IMSCImpl#getDescription <em>Description</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IMSCImpl#getModifiedTimeWeak <em>Modified Time Weak</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IMSCImpl#getStereotypes <em>Stereotypes</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IMSCImpl#getTags <em>Tags</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IMSCImpl#getRequiremenTracabilityHandle <em>Requiremen Tracability Handle</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IMSCImpl#getAnnotations <em>Annotations</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IMSCImpl#getObjectCreation <em>Object Creation</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IMSCImpl#getUmlDependencyID <em>Uml Dependency ID</em>}</li>
+ * </ul>
+ *
+ * @generated
+ */
+public class IMSCImpl extends DeclarativesTypeImpl implements IMSC {
+	/**
+	 * The default value of the '{@link #getId() <em>Id</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getId()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String ID_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getId() <em>Id</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getId()
+	 * @generated
+	 * @ordered
+	 */
+	protected String id = ID_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getMyState() <em>My State</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getMyState()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String MY_STATE_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getMyState() <em>My State</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getMyState()
+	 * @generated
+	 * @ordered
+	 */
+	protected String myState = MY_STATE_EDEFAULT;
+
+	/**
+	 * The cached value of the '{@link #getProperties() <em>Properties</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getProperties()
+	 * @generated
+	 * @ordered
+	 */
+	protected IPropertyContainer properties;
+
+	/**
+	 * The default value of the '{@link #getName() <em>Name</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getName()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String NAME_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getName() <em>Name</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getName()
+	 * @generated
+	 * @ordered
+	 */
+	protected String name = NAME_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getLastModifiedTime() <em>Last Modified Time</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getLastModifiedTime()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String LAST_MODIFIED_TIME_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getLastModifiedTime() <em>Last Modified Time</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getLastModifiedTime()
+	 * @generated
+	 * @ordered
+	 */
+	protected String lastModifiedTime = LAST_MODIFIED_TIME_EDEFAULT;
+
+	/**
+	 * The cached value of the '{@link #getGraphicChart() <em>Graphic Chart</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getGraphicChart()
+	 * @generated
+	 * @ordered
+	 */
+	protected CGIMscChart graphicChart;
+
+	/**
+	 * The cached value of the '{@link #getDefaultSubsystem() <em>Default Subsystem</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getDefaultSubsystem()
+	 * @generated
+	 * @ordered
+	 */
+	protected OwnerHandleType defaultSubsystem;
+
+	/**
+	 * The cached value of the '{@link #getM_pICollaboration() <em>MpI Collaboration</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_pICollaboration()
+	 * @generated
+	 * @ordered
+	 */
+	protected ICollaboration m_pICollaboration;
+
+	/**
+	 * The default value of the '{@link #getCmheader() <em>Cmheader</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getCmheader()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String CMHEADER_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getCmheader() <em>Cmheader</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getCmheader()
+	 * @generated
+	 * @ordered
+	 */
+	protected String cmheader = CMHEADER_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getLastID() <em>Last ID</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getLastID()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String LAST_ID_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getLastID() <em>Last ID</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getLastID()
+	 * @generated
+	 * @ordered
+	 */
+	protected String lastID = LAST_ID_EDEFAULT;
+
+	/**
+	 * The cached value of the '{@link #getOwnerHandle() <em>Owner Handle</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getOwnerHandle()
+	 * @generated
+	 * @ordered
+	 */
+	protected ISubsystem ownerHandle;
+
+	/**
+	 * The cached value of the '{@link #getDescription() <em>Description</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getDescription()
+	 * @generated
+	 * @ordered
+	 */
+	protected IDescription description;
+
+	/**
+	 * The cached value of the '{@link #getModifiedTimeWeak() <em>Modified Time Weak</em>}' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getModifiedTimeWeak()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<String> modifiedTimeWeak;
+
+	/**
+	 * The cached value of the '{@link #getStereotypes() <em>Stereotypes</em>}' reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getStereotypes()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<IClassifier> stereotypes;
+
+	/**
+	 * The cached value of the '{@link #getTags() <em>Tags</em>}' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getTags()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<ITag> tags;
+
+	/**
+	 * The default value of the '{@link #getRequiremenTracabilityHandle() <em>Requiremen Tracability Handle</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getRequiremenTracabilityHandle()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String REQUIREMEN_TRACABILITY_HANDLE_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getRequiremenTracabilityHandle() <em>Requiremen Tracability Handle</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getRequiremenTracabilityHandle()
+	 * @generated
+	 * @ordered
+	 */
+	protected String requiremenTracabilityHandle = REQUIREMEN_TRACABILITY_HANDLE_EDEFAULT;
+
+	/**
+	 * The cached value of the '{@link #getAnnotations() <em>Annotations</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getAnnotations()
+	 * @generated
+	 * @ordered
+	 */
+	protected IAnnotation annotations;
+
+	/**
+	 * The default value of the '{@link #getObjectCreation() <em>Object Creation</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getObjectCreation()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String OBJECT_CREATION_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getObjectCreation() <em>Object Creation</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getObjectCreation()
+	 * @generated
+	 * @ordered
+	 */
+	protected String objectCreation = OBJECT_CREATION_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getUmlDependencyID() <em>Uml Dependency ID</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getUmlDependencyID()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String UML_DEPENDENCY_ID_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getUmlDependencyID() <em>Uml Dependency ID</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getUmlDependencyID()
+	 * @generated
+	 * @ordered
+	 */
+	protected String umlDependencyID = UML_DEPENDENCY_ID_EDEFAULT;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected IMSCImpl() {
+		super();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EClass eStaticClass() {
+		return UMLRpyPackage.eINSTANCE.getIMSC();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getId() {
+		return id;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setId(String newId) {
+		String oldId = id;
+		id = newId;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IMSC__ID, oldId, id));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getMyState() {
+		return myState;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setMyState(String newMyState) {
+		String oldMyState = myState;
+		myState = newMyState;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IMSC__MY_STATE, oldMyState, myState));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IPropertyContainer getProperties() {
+		if (properties != null && properties.eIsProxy()) {
+			InternalEObject oldProperties = (InternalEObject)properties;
+			properties = (IPropertyContainer)eResolveProxy(oldProperties);
+			if (properties != oldProperties) {
+				InternalEObject newProperties = (InternalEObject)properties;
+				NotificationChain msgs = oldProperties.eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IMSC__PROPERTIES, null, null);
+				if (newProperties.eInternalContainer() == null) {
+					msgs = newProperties.eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IMSC__PROPERTIES, null, msgs);
+				}
+				if (msgs != null) msgs.dispatch();
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.IMSC__PROPERTIES, oldProperties, properties));
+			}
+		}
+		return properties;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IPropertyContainer basicGetProperties() {
+		return properties;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public NotificationChain basicSetProperties(IPropertyContainer newProperties, NotificationChain msgs) {
+		IPropertyContainer oldProperties = properties;
+		properties = newProperties;
+		if (eNotificationRequired()) {
+			ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IMSC__PROPERTIES, oldProperties, newProperties);
+			if (msgs == null) msgs = notification; else msgs.add(notification);
+		}
+		return msgs;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setProperties(IPropertyContainer newProperties) {
+		if (newProperties != properties) {
+			NotificationChain msgs = null;
+			if (properties != null)
+				msgs = ((InternalEObject)properties).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IMSC__PROPERTIES, null, msgs);
+			if (newProperties != null)
+				msgs = ((InternalEObject)newProperties).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IMSC__PROPERTIES, null, msgs);
+			msgs = basicSetProperties(newProperties, msgs);
+			if (msgs != null) msgs.dispatch();
+		}
+		else if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IMSC__PROPERTIES, newProperties, newProperties));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getName() {
+		return name;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setName(String newName) {
+		String oldName = name;
+		name = newName;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IMSC__NAME, oldName, name));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getLastModifiedTime() {
+		return lastModifiedTime;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setLastModifiedTime(String newLastModifiedTime) {
+		String oldLastModifiedTime = lastModifiedTime;
+		lastModifiedTime = newLastModifiedTime;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IMSC__LAST_MODIFIED_TIME, oldLastModifiedTime, lastModifiedTime));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public CGIMscChart getGraphicChart() {
+		if (graphicChart != null && graphicChart.eIsProxy()) {
+			InternalEObject oldGraphicChart = (InternalEObject)graphicChart;
+			graphicChart = (CGIMscChart)eResolveProxy(oldGraphicChart);
+			if (graphicChart != oldGraphicChart) {
+				InternalEObject newGraphicChart = (InternalEObject)graphicChart;
+				NotificationChain msgs = oldGraphicChart.eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IMSC__GRAPHIC_CHART, null, null);
+				if (newGraphicChart.eInternalContainer() == null) {
+					msgs = newGraphicChart.eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IMSC__GRAPHIC_CHART, null, msgs);
+				}
+				if (msgs != null) msgs.dispatch();
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.IMSC__GRAPHIC_CHART, oldGraphicChart, graphicChart));
+			}
+		}
+		return graphicChart;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public CGIMscChart basicGetGraphicChart() {
+		return graphicChart;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public NotificationChain basicSetGraphicChart(CGIMscChart newGraphicChart, NotificationChain msgs) {
+		CGIMscChart oldGraphicChart = graphicChart;
+		graphicChart = newGraphicChart;
+		if (eNotificationRequired()) {
+			ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IMSC__GRAPHIC_CHART, oldGraphicChart, newGraphicChart);
+			if (msgs == null) msgs = notification; else msgs.add(notification);
+		}
+		return msgs;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setGraphicChart(CGIMscChart newGraphicChart) {
+		if (newGraphicChart != graphicChart) {
+			NotificationChain msgs = null;
+			if (graphicChart != null)
+				msgs = ((InternalEObject)graphicChart).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IMSC__GRAPHIC_CHART, null, msgs);
+			if (newGraphicChart != null)
+				msgs = ((InternalEObject)newGraphicChart).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IMSC__GRAPHIC_CHART, null, msgs);
+			msgs = basicSetGraphicChart(newGraphicChart, msgs);
+			if (msgs != null) msgs.dispatch();
+		}
+		else if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IMSC__GRAPHIC_CHART, newGraphicChart, newGraphicChart));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public OwnerHandleType getDefaultSubsystem() {
+		if (defaultSubsystem != null && defaultSubsystem.eIsProxy()) {
+			InternalEObject oldDefaultSubsystem = (InternalEObject)defaultSubsystem;
+			defaultSubsystem = (OwnerHandleType)eResolveProxy(oldDefaultSubsystem);
+			if (defaultSubsystem != oldDefaultSubsystem) {
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.IMSC__DEFAULT_SUBSYSTEM, oldDefaultSubsystem, defaultSubsystem));
+			}
+		}
+		return defaultSubsystem;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public OwnerHandleType basicGetDefaultSubsystem() {
+		return defaultSubsystem;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setDefaultSubsystem(OwnerHandleType newDefaultSubsystem) {
+		OwnerHandleType oldDefaultSubsystem = defaultSubsystem;
+		defaultSubsystem = newDefaultSubsystem;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IMSC__DEFAULT_SUBSYSTEM, oldDefaultSubsystem, defaultSubsystem));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public ICollaboration getM_pICollaboration() {
+		if (m_pICollaboration != null && m_pICollaboration.eIsProxy()) {
+			InternalEObject oldM_pICollaboration = (InternalEObject)m_pICollaboration;
+			m_pICollaboration = (ICollaboration)eResolveProxy(oldM_pICollaboration);
+			if (m_pICollaboration != oldM_pICollaboration) {
+				InternalEObject newM_pICollaboration = (InternalEObject)m_pICollaboration;
+				NotificationChain msgs = oldM_pICollaboration.eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IMSC__MPI_COLLABORATION, null, null);
+				if (newM_pICollaboration.eInternalContainer() == null) {
+					msgs = newM_pICollaboration.eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IMSC__MPI_COLLABORATION, null, msgs);
+				}
+				if (msgs != null) msgs.dispatch();
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.IMSC__MPI_COLLABORATION, oldM_pICollaboration, m_pICollaboration));
+			}
+		}
+		return m_pICollaboration;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public ICollaboration basicGetM_pICollaboration() {
+		return m_pICollaboration;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public NotificationChain basicSetM_pICollaboration(ICollaboration newM_pICollaboration, NotificationChain msgs) {
+		ICollaboration oldM_pICollaboration = m_pICollaboration;
+		m_pICollaboration = newM_pICollaboration;
+		if (eNotificationRequired()) {
+			ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IMSC__MPI_COLLABORATION, oldM_pICollaboration, newM_pICollaboration);
+			if (msgs == null) msgs = notification; else msgs.add(notification);
+		}
+		return msgs;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_pICollaboration(ICollaboration newM_pICollaboration) {
+		if (newM_pICollaboration != m_pICollaboration) {
+			NotificationChain msgs = null;
+			if (m_pICollaboration != null)
+				msgs = ((InternalEObject)m_pICollaboration).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IMSC__MPI_COLLABORATION, null, msgs);
+			if (newM_pICollaboration != null)
+				msgs = ((InternalEObject)newM_pICollaboration).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IMSC__MPI_COLLABORATION, null, msgs);
+			msgs = basicSetM_pICollaboration(newM_pICollaboration, msgs);
+			if (msgs != null) msgs.dispatch();
+		}
+		else if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IMSC__MPI_COLLABORATION, newM_pICollaboration, newM_pICollaboration));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getCmheader() {
+		return cmheader;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setCmheader(String newCmheader) {
+		String oldCmheader = cmheader;
+		cmheader = newCmheader;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IMSC__CMHEADER, oldCmheader, cmheader));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getLastID() {
+		return lastID;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setLastID(String newLastID) {
+		String oldLastID = lastID;
+		lastID = newLastID;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IMSC__LAST_ID, oldLastID, lastID));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public ISubsystem getOwnerHandle() {
+		if (ownerHandle != null && ownerHandle.eIsProxy()) {
+			InternalEObject oldOwnerHandle = (InternalEObject)ownerHandle;
+			ownerHandle = (ISubsystem)eResolveProxy(oldOwnerHandle);
+			if (ownerHandle != oldOwnerHandle) {
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.IMSC__OWNER_HANDLE, oldOwnerHandle, ownerHandle));
+			}
+		}
+		return ownerHandle;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public ISubsystem basicGetOwnerHandle() {
+		return ownerHandle;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setOwnerHandle(ISubsystem newOwnerHandle) {
+		ISubsystem oldOwnerHandle = ownerHandle;
+		ownerHandle = newOwnerHandle;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IMSC__OWNER_HANDLE, oldOwnerHandle, ownerHandle));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IDescription getDescription() {
+		if (description != null && description.eIsProxy()) {
+			InternalEObject oldDescription = (InternalEObject)description;
+			description = (IDescription)eResolveProxy(oldDescription);
+			if (description != oldDescription) {
+				InternalEObject newDescription = (InternalEObject)description;
+				NotificationChain msgs = oldDescription.eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IMSC__DESCRIPTION, null, null);
+				if (newDescription.eInternalContainer() == null) {
+					msgs = newDescription.eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IMSC__DESCRIPTION, null, msgs);
+				}
+				if (msgs != null) msgs.dispatch();
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.IMSC__DESCRIPTION, oldDescription, description));
+			}
+		}
+		return description;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IDescription basicGetDescription() {
+		return description;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public NotificationChain basicSetDescription(IDescription newDescription, NotificationChain msgs) {
+		IDescription oldDescription = description;
+		description = newDescription;
+		if (eNotificationRequired()) {
+			ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IMSC__DESCRIPTION, oldDescription, newDescription);
+			if (msgs == null) msgs = notification; else msgs.add(notification);
+		}
+		return msgs;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setDescription(IDescription newDescription) {
+		if (newDescription != description) {
+			NotificationChain msgs = null;
+			if (description != null)
+				msgs = ((InternalEObject)description).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IMSC__DESCRIPTION, null, msgs);
+			if (newDescription != null)
+				msgs = ((InternalEObject)newDescription).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IMSC__DESCRIPTION, null, msgs);
+			msgs = basicSetDescription(newDescription, msgs);
+			if (msgs != null) msgs.dispatch();
+		}
+		else if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IMSC__DESCRIPTION, newDescription, newDescription));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<String> getModifiedTimeWeak() {
+		if (modifiedTimeWeak == null) {
+			modifiedTimeWeak = new EDataTypeEList<String>(String.class, this, UMLRpyPackage.IMSC__MODIFIED_TIME_WEAK);
+		}
+		return modifiedTimeWeak;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<IClassifier> getStereotypes() {
+		if (stereotypes == null) {
+			stereotypes = new EObjectResolvingEList<IClassifier>(IClassifier.class, this, UMLRpyPackage.IMSC__STEREOTYPES);
+		}
+		return stereotypes;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<ITag> getTags() {
+		if (tags == null) {
+			tags = new EObjectContainmentEList.Resolving<ITag>(ITag.class, this, UMLRpyPackage.IMSC__TAGS);
+		}
+		return tags;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getRequiremenTracabilityHandle() {
+		return requiremenTracabilityHandle;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setRequiremenTracabilityHandle(String newRequiremenTracabilityHandle) {
+		String oldRequiremenTracabilityHandle = requiremenTracabilityHandle;
+		requiremenTracabilityHandle = newRequiremenTracabilityHandle;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IMSC__REQUIREMEN_TRACABILITY_HANDLE, oldRequiremenTracabilityHandle, requiremenTracabilityHandle));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IAnnotation getAnnotations() {
+		if (annotations != null && annotations.eIsProxy()) {
+			InternalEObject oldAnnotations = (InternalEObject)annotations;
+			annotations = (IAnnotation)eResolveProxy(oldAnnotations);
+			if (annotations != oldAnnotations) {
+				InternalEObject newAnnotations = (InternalEObject)annotations;
+				NotificationChain msgs = oldAnnotations.eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IMSC__ANNOTATIONS, null, null);
+				if (newAnnotations.eInternalContainer() == null) {
+					msgs = newAnnotations.eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IMSC__ANNOTATIONS, null, msgs);
+				}
+				if (msgs != null) msgs.dispatch();
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.IMSC__ANNOTATIONS, oldAnnotations, annotations));
+			}
+		}
+		return annotations;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IAnnotation basicGetAnnotations() {
+		return annotations;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public NotificationChain basicSetAnnotations(IAnnotation newAnnotations, NotificationChain msgs) {
+		IAnnotation oldAnnotations = annotations;
+		annotations = newAnnotations;
+		if (eNotificationRequired()) {
+			ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IMSC__ANNOTATIONS, oldAnnotations, newAnnotations);
+			if (msgs == null) msgs = notification; else msgs.add(notification);
+		}
+		return msgs;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setAnnotations(IAnnotation newAnnotations) {
+		if (newAnnotations != annotations) {
+			NotificationChain msgs = null;
+			if (annotations != null)
+				msgs = ((InternalEObject)annotations).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IMSC__ANNOTATIONS, null, msgs);
+			if (newAnnotations != null)
+				msgs = ((InternalEObject)newAnnotations).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IMSC__ANNOTATIONS, null, msgs);
+			msgs = basicSetAnnotations(newAnnotations, msgs);
+			if (msgs != null) msgs.dispatch();
+		}
+		else if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IMSC__ANNOTATIONS, newAnnotations, newAnnotations));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getObjectCreation() {
+		return objectCreation;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setObjectCreation(String newObjectCreation) {
+		String oldObjectCreation = objectCreation;
+		objectCreation = newObjectCreation;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IMSC__OBJECT_CREATION, oldObjectCreation, objectCreation));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getUmlDependencyID() {
+		return umlDependencyID;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setUmlDependencyID(String newUmlDependencyID) {
+		String oldUmlDependencyID = umlDependencyID;
+		umlDependencyID = newUmlDependencyID;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IMSC__UML_DEPENDENCY_ID, oldUmlDependencyID, umlDependencyID));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
+		switch (featureID) {
+			case UMLRpyPackage.IMSC__PROPERTIES:
+				return basicSetProperties(null, msgs);
+			case UMLRpyPackage.IMSC__GRAPHIC_CHART:
+				return basicSetGraphicChart(null, msgs);
+			case UMLRpyPackage.IMSC__MPI_COLLABORATION:
+				return basicSetM_pICollaboration(null, msgs);
+			case UMLRpyPackage.IMSC__DESCRIPTION:
+				return basicSetDescription(null, msgs);
+			case UMLRpyPackage.IMSC__TAGS:
+				return ((InternalEList<?>)getTags()).basicRemove(otherEnd, msgs);
+			case UMLRpyPackage.IMSC__ANNOTATIONS:
+				return basicSetAnnotations(null, msgs);
+		}
+		return super.eInverseRemove(otherEnd, featureID, msgs);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object eGet(int featureID, boolean resolve, boolean coreType) {
+		switch (featureID) {
+			case UMLRpyPackage.IMSC__ID:
+				return getId();
+			case UMLRpyPackage.IMSC__MY_STATE:
+				return getMyState();
+			case UMLRpyPackage.IMSC__PROPERTIES:
+				if (resolve) return getProperties();
+				return basicGetProperties();
+			case UMLRpyPackage.IMSC__NAME:
+				return getName();
+			case UMLRpyPackage.IMSC__LAST_MODIFIED_TIME:
+				return getLastModifiedTime();
+			case UMLRpyPackage.IMSC__GRAPHIC_CHART:
+				if (resolve) return getGraphicChart();
+				return basicGetGraphicChart();
+			case UMLRpyPackage.IMSC__DEFAULT_SUBSYSTEM:
+				if (resolve) return getDefaultSubsystem();
+				return basicGetDefaultSubsystem();
+			case UMLRpyPackage.IMSC__MPI_COLLABORATION:
+				if (resolve) return getM_pICollaboration();
+				return basicGetM_pICollaboration();
+			case UMLRpyPackage.IMSC__CMHEADER:
+				return getCmheader();
+			case UMLRpyPackage.IMSC__LAST_ID:
+				return getLastID();
+			case UMLRpyPackage.IMSC__OWNER_HANDLE:
+				if (resolve) return getOwnerHandle();
+				return basicGetOwnerHandle();
+			case UMLRpyPackage.IMSC__DESCRIPTION:
+				if (resolve) return getDescription();
+				return basicGetDescription();
+			case UMLRpyPackage.IMSC__MODIFIED_TIME_WEAK:
+				return getModifiedTimeWeak();
+			case UMLRpyPackage.IMSC__STEREOTYPES:
+				return getStereotypes();
+			case UMLRpyPackage.IMSC__TAGS:
+				return getTags();
+			case UMLRpyPackage.IMSC__REQUIREMEN_TRACABILITY_HANDLE:
+				return getRequiremenTracabilityHandle();
+			case UMLRpyPackage.IMSC__ANNOTATIONS:
+				if (resolve) return getAnnotations();
+				return basicGetAnnotations();
+			case UMLRpyPackage.IMSC__OBJECT_CREATION:
+				return getObjectCreation();
+			case UMLRpyPackage.IMSC__UML_DEPENDENCY_ID:
+				return getUmlDependencyID();
+		}
+		return super.eGet(featureID, resolve, coreType);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@SuppressWarnings("unchecked")
+	@Override
+	public void eSet(int featureID, Object newValue) {
+		switch (featureID) {
+			case UMLRpyPackage.IMSC__ID:
+				setId((String)newValue);
+				return;
+			case UMLRpyPackage.IMSC__MY_STATE:
+				setMyState((String)newValue);
+				return;
+			case UMLRpyPackage.IMSC__PROPERTIES:
+				setProperties((IPropertyContainer)newValue);
+				return;
+			case UMLRpyPackage.IMSC__NAME:
+				setName((String)newValue);
+				return;
+			case UMLRpyPackage.IMSC__LAST_MODIFIED_TIME:
+				setLastModifiedTime((String)newValue);
+				return;
+			case UMLRpyPackage.IMSC__GRAPHIC_CHART:
+				setGraphicChart((CGIMscChart)newValue);
+				return;
+			case UMLRpyPackage.IMSC__DEFAULT_SUBSYSTEM:
+				setDefaultSubsystem((OwnerHandleType)newValue);
+				return;
+			case UMLRpyPackage.IMSC__MPI_COLLABORATION:
+				setM_pICollaboration((ICollaboration)newValue);
+				return;
+			case UMLRpyPackage.IMSC__CMHEADER:
+				setCmheader((String)newValue);
+				return;
+			case UMLRpyPackage.IMSC__LAST_ID:
+				setLastID((String)newValue);
+				return;
+			case UMLRpyPackage.IMSC__OWNER_HANDLE:
+				setOwnerHandle((ISubsystem)newValue);
+				return;
+			case UMLRpyPackage.IMSC__DESCRIPTION:
+				setDescription((IDescription)newValue);
+				return;
+			case UMLRpyPackage.IMSC__MODIFIED_TIME_WEAK:
+				getModifiedTimeWeak().clear();
+				getModifiedTimeWeak().addAll((Collection<? extends String>)newValue);
+				return;
+			case UMLRpyPackage.IMSC__STEREOTYPES:
+				getStereotypes().clear();
+				getStereotypes().addAll((Collection<? extends IClassifier>)newValue);
+				return;
+			case UMLRpyPackage.IMSC__TAGS:
+				getTags().clear();
+				getTags().addAll((Collection<? extends ITag>)newValue);
+				return;
+			case UMLRpyPackage.IMSC__REQUIREMEN_TRACABILITY_HANDLE:
+				setRequiremenTracabilityHandle((String)newValue);
+				return;
+			case UMLRpyPackage.IMSC__ANNOTATIONS:
+				setAnnotations((IAnnotation)newValue);
+				return;
+			case UMLRpyPackage.IMSC__OBJECT_CREATION:
+				setObjectCreation((String)newValue);
+				return;
+			case UMLRpyPackage.IMSC__UML_DEPENDENCY_ID:
+				setUmlDependencyID((String)newValue);
+				return;
+		}
+		super.eSet(featureID, newValue);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void eUnset(int featureID) {
+		switch (featureID) {
+			case UMLRpyPackage.IMSC__ID:
+				setId(ID_EDEFAULT);
+				return;
+			case UMLRpyPackage.IMSC__MY_STATE:
+				setMyState(MY_STATE_EDEFAULT);
+				return;
+			case UMLRpyPackage.IMSC__PROPERTIES:
+				setProperties((IPropertyContainer)null);
+				return;
+			case UMLRpyPackage.IMSC__NAME:
+				setName(NAME_EDEFAULT);
+				return;
+			case UMLRpyPackage.IMSC__LAST_MODIFIED_TIME:
+				setLastModifiedTime(LAST_MODIFIED_TIME_EDEFAULT);
+				return;
+			case UMLRpyPackage.IMSC__GRAPHIC_CHART:
+				setGraphicChart((CGIMscChart)null);
+				return;
+			case UMLRpyPackage.IMSC__DEFAULT_SUBSYSTEM:
+				setDefaultSubsystem((OwnerHandleType)null);
+				return;
+			case UMLRpyPackage.IMSC__MPI_COLLABORATION:
+				setM_pICollaboration((ICollaboration)null);
+				return;
+			case UMLRpyPackage.IMSC__CMHEADER:
+				setCmheader(CMHEADER_EDEFAULT);
+				return;
+			case UMLRpyPackage.IMSC__LAST_ID:
+				setLastID(LAST_ID_EDEFAULT);
+				return;
+			case UMLRpyPackage.IMSC__OWNER_HANDLE:
+				setOwnerHandle((ISubsystem)null);
+				return;
+			case UMLRpyPackage.IMSC__DESCRIPTION:
+				setDescription((IDescription)null);
+				return;
+			case UMLRpyPackage.IMSC__MODIFIED_TIME_WEAK:
+				getModifiedTimeWeak().clear();
+				return;
+			case UMLRpyPackage.IMSC__STEREOTYPES:
+				getStereotypes().clear();
+				return;
+			case UMLRpyPackage.IMSC__TAGS:
+				getTags().clear();
+				return;
+			case UMLRpyPackage.IMSC__REQUIREMEN_TRACABILITY_HANDLE:
+				setRequiremenTracabilityHandle(REQUIREMEN_TRACABILITY_HANDLE_EDEFAULT);
+				return;
+			case UMLRpyPackage.IMSC__ANNOTATIONS:
+				setAnnotations((IAnnotation)null);
+				return;
+			case UMLRpyPackage.IMSC__OBJECT_CREATION:
+				setObjectCreation(OBJECT_CREATION_EDEFAULT);
+				return;
+			case UMLRpyPackage.IMSC__UML_DEPENDENCY_ID:
+				setUmlDependencyID(UML_DEPENDENCY_ID_EDEFAULT);
+				return;
+		}
+		super.eUnset(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public boolean eIsSet(int featureID) {
+		switch (featureID) {
+			case UMLRpyPackage.IMSC__ID:
+				return ID_EDEFAULT == null ? id != null : !ID_EDEFAULT.equals(id);
+			case UMLRpyPackage.IMSC__MY_STATE:
+				return MY_STATE_EDEFAULT == null ? myState != null : !MY_STATE_EDEFAULT.equals(myState);
+			case UMLRpyPackage.IMSC__PROPERTIES:
+				return properties != null;
+			case UMLRpyPackage.IMSC__NAME:
+				return NAME_EDEFAULT == null ? name != null : !NAME_EDEFAULT.equals(name);
+			case UMLRpyPackage.IMSC__LAST_MODIFIED_TIME:
+				return LAST_MODIFIED_TIME_EDEFAULT == null ? lastModifiedTime != null : !LAST_MODIFIED_TIME_EDEFAULT.equals(lastModifiedTime);
+			case UMLRpyPackage.IMSC__GRAPHIC_CHART:
+				return graphicChart != null;
+			case UMLRpyPackage.IMSC__DEFAULT_SUBSYSTEM:
+				return defaultSubsystem != null;
+			case UMLRpyPackage.IMSC__MPI_COLLABORATION:
+				return m_pICollaboration != null;
+			case UMLRpyPackage.IMSC__CMHEADER:
+				return CMHEADER_EDEFAULT == null ? cmheader != null : !CMHEADER_EDEFAULT.equals(cmheader);
+			case UMLRpyPackage.IMSC__LAST_ID:
+				return LAST_ID_EDEFAULT == null ? lastID != null : !LAST_ID_EDEFAULT.equals(lastID);
+			case UMLRpyPackage.IMSC__OWNER_HANDLE:
+				return ownerHandle != null;
+			case UMLRpyPackage.IMSC__DESCRIPTION:
+				return description != null;
+			case UMLRpyPackage.IMSC__MODIFIED_TIME_WEAK:
+				return modifiedTimeWeak != null && !modifiedTimeWeak.isEmpty();
+			case UMLRpyPackage.IMSC__STEREOTYPES:
+				return stereotypes != null && !stereotypes.isEmpty();
+			case UMLRpyPackage.IMSC__TAGS:
+				return tags != null && !tags.isEmpty();
+			case UMLRpyPackage.IMSC__REQUIREMEN_TRACABILITY_HANDLE:
+				return REQUIREMEN_TRACABILITY_HANDLE_EDEFAULT == null ? requiremenTracabilityHandle != null : !REQUIREMEN_TRACABILITY_HANDLE_EDEFAULT.equals(requiremenTracabilityHandle);
+			case UMLRpyPackage.IMSC__ANNOTATIONS:
+				return annotations != null;
+			case UMLRpyPackage.IMSC__OBJECT_CREATION:
+				return OBJECT_CREATION_EDEFAULT == null ? objectCreation != null : !OBJECT_CREATION_EDEFAULT.equals(objectCreation);
+			case UMLRpyPackage.IMSC__UML_DEPENDENCY_ID:
+				return UML_DEPENDENCY_ID_EDEFAULT == null ? umlDependencyID != null : !UML_DEPENDENCY_ID_EDEFAULT.equals(umlDependencyID);
+		}
+		return super.eIsSet(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String toString() {
+		if (eIsProxy()) return super.toString();
+
+		StringBuffer result = new StringBuffer(super.toString());
+		result.append(" (id: "); //$NON-NLS-1$
+		result.append(id);
+		result.append(", myState: "); //$NON-NLS-1$
+		result.append(myState);
+		result.append(", name: "); //$NON-NLS-1$
+		result.append(name);
+		result.append(", lastModifiedTime: "); //$NON-NLS-1$
+		result.append(lastModifiedTime);
+		result.append(", cmheader: "); //$NON-NLS-1$
+		result.append(cmheader);
+		result.append(", lastID: "); //$NON-NLS-1$
+		result.append(lastID);
+		result.append(", modifiedTimeWeak: "); //$NON-NLS-1$
+		result.append(modifiedTimeWeak);
+		result.append(", requiremenTracabilityHandle: "); //$NON-NLS-1$
+		result.append(requiremenTracabilityHandle);
+		result.append(", objectCreation: "); //$NON-NLS-1$
+		result.append(objectCreation);
+		result.append(", umlDependencyID: "); //$NON-NLS-1$
+		result.append(umlDependencyID);
+		result.append(')');
+		return result.toString();
+	}
+
+} //IMSCImpl
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/IMatrixInstanceImpl.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/IMatrixInstanceImpl.java
new file mode 100755
index 0000000..a051935
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/IMatrixInstanceImpl.java
@@ -0,0 +1,725 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl;
+
+import java.util.Collection;
+
+import org.eclipse.emf.common.notify.Notification;
+import org.eclipse.emf.common.notify.NotificationChain;
+
+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.EDataTypeEList;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IClassifier;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMatrixInstance;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IPropertyContainer;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IUnit;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.M_pModelObjectType;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>IMatrix Instance</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * </p>
+ * <ul>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IMatrixInstanceImpl#getId <em>Id</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IMatrixInstanceImpl#getMyState <em>My State</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IMatrixInstanceImpl#getName <em>Name</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IMatrixInstanceImpl#getModifiedTimeWeak <em>Modified Time Weak</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IMatrixInstanceImpl#getLayoutHandle <em>Layout Handle</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IMatrixInstanceImpl#getFromScopeHandles <em>From Scope Handles</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IMatrixInstanceImpl#getToScopeHandles <em>To Scope Handles</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IMatrixInstanceImpl#getStereotypes <em>Stereotypes</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IMatrixInstanceImpl#getM_IncludeDescendants_to <em>MInclude Descendants to</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IMatrixInstanceImpl#getProperties <em>Properties</em>}</li>
+ * </ul>
+ *
+ * @generated
+ */
+public class IMatrixInstanceImpl extends MatrixInstancesTypeImpl implements IMatrixInstance {
+	/**
+	 * The default value of the '{@link #getId() <em>Id</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getId()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String ID_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getId() <em>Id</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getId()
+	 * @generated
+	 * @ordered
+	 */
+	protected String id = ID_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getMyState() <em>My State</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getMyState()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String MY_STATE_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getMyState() <em>My State</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getMyState()
+	 * @generated
+	 * @ordered
+	 */
+	protected String myState = MY_STATE_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getName() <em>Name</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getName()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String NAME_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getName() <em>Name</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getName()
+	 * @generated
+	 * @ordered
+	 */
+	protected String name = NAME_EDEFAULT;
+
+	/**
+	 * The cached value of the '{@link #getModifiedTimeWeak() <em>Modified Time Weak</em>}' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getModifiedTimeWeak()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<String> modifiedTimeWeak;
+
+	/**
+	 * The cached value of the '{@link #getLayoutHandle() <em>Layout Handle</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getLayoutHandle()
+	 * @generated
+	 * @ordered
+	 */
+	protected IUnit layoutHandle;
+
+	/**
+	 * The cached value of the '{@link #getFromScopeHandles() <em>From Scope Handles</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getFromScopeHandles()
+	 * @generated
+	 * @ordered
+	 */
+	protected M_pModelObjectType fromScopeHandles;
+
+	/**
+	 * The cached value of the '{@link #getToScopeHandles() <em>To Scope Handles</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getToScopeHandles()
+	 * @generated
+	 * @ordered
+	 */
+	protected M_pModelObjectType toScopeHandles;
+
+	/**
+	 * The cached value of the '{@link #getStereotypes() <em>Stereotypes</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getStereotypes()
+	 * @generated
+	 * @ordered
+	 */
+	protected IClassifier stereotypes;
+
+	/**
+	 * The default value of the '{@link #getM_IncludeDescendants_to() <em>MInclude Descendants to</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_IncludeDescendants_to()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String MINCLUDE_DESCENDANTS_TO_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getM_IncludeDescendants_to() <em>MInclude Descendants to</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_IncludeDescendants_to()
+	 * @generated
+	 * @ordered
+	 */
+	protected String m_IncludeDescendants_to = MINCLUDE_DESCENDANTS_TO_EDEFAULT;
+
+	/**
+	 * The cached value of the '{@link #getProperties() <em>Properties</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getProperties()
+	 * @generated
+	 * @ordered
+	 */
+	protected IPropertyContainer properties;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected IMatrixInstanceImpl() {
+		super();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EClass eStaticClass() {
+		return UMLRpyPackage.eINSTANCE.getIMatrixInstance();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getId() {
+		return id;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setId(String newId) {
+		String oldId = id;
+		id = newId;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IMATRIX_INSTANCE__ID, oldId, id));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getMyState() {
+		return myState;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setMyState(String newMyState) {
+		String oldMyState = myState;
+		myState = newMyState;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IMATRIX_INSTANCE__MY_STATE, oldMyState, myState));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getName() {
+		return name;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setName(String newName) {
+		String oldName = name;
+		name = newName;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IMATRIX_INSTANCE__NAME, oldName, name));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<String> getModifiedTimeWeak() {
+		if (modifiedTimeWeak == null) {
+			modifiedTimeWeak = new EDataTypeEList<String>(String.class, this, UMLRpyPackage.IMATRIX_INSTANCE__MODIFIED_TIME_WEAK);
+		}
+		return modifiedTimeWeak;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IUnit getLayoutHandle() {
+		if (layoutHandle != null && layoutHandle.eIsProxy()) {
+			InternalEObject oldLayoutHandle = (InternalEObject)layoutHandle;
+			layoutHandle = (IUnit)eResolveProxy(oldLayoutHandle);
+			if (layoutHandle != oldLayoutHandle) {
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.IMATRIX_INSTANCE__LAYOUT_HANDLE, oldLayoutHandle, layoutHandle));
+			}
+		}
+		return layoutHandle;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IUnit basicGetLayoutHandle() {
+		return layoutHandle;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setLayoutHandle(IUnit newLayoutHandle) {
+		IUnit oldLayoutHandle = layoutHandle;
+		layoutHandle = newLayoutHandle;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IMATRIX_INSTANCE__LAYOUT_HANDLE, oldLayoutHandle, layoutHandle));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public M_pModelObjectType getFromScopeHandles() {
+		if (fromScopeHandles != null && fromScopeHandles.eIsProxy()) {
+			InternalEObject oldFromScopeHandles = (InternalEObject)fromScopeHandles;
+			fromScopeHandles = (M_pModelObjectType)eResolveProxy(oldFromScopeHandles);
+			if (fromScopeHandles != oldFromScopeHandles) {
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.IMATRIX_INSTANCE__FROM_SCOPE_HANDLES, oldFromScopeHandles, fromScopeHandles));
+			}
+		}
+		return fromScopeHandles;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public M_pModelObjectType basicGetFromScopeHandles() {
+		return fromScopeHandles;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setFromScopeHandles(M_pModelObjectType newFromScopeHandles) {
+		M_pModelObjectType oldFromScopeHandles = fromScopeHandles;
+		fromScopeHandles = newFromScopeHandles;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IMATRIX_INSTANCE__FROM_SCOPE_HANDLES, oldFromScopeHandles, fromScopeHandles));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public M_pModelObjectType getToScopeHandles() {
+		if (toScopeHandles != null && toScopeHandles.eIsProxy()) {
+			InternalEObject oldToScopeHandles = (InternalEObject)toScopeHandles;
+			toScopeHandles = (M_pModelObjectType)eResolveProxy(oldToScopeHandles);
+			if (toScopeHandles != oldToScopeHandles) {
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.IMATRIX_INSTANCE__TO_SCOPE_HANDLES, oldToScopeHandles, toScopeHandles));
+			}
+		}
+		return toScopeHandles;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public M_pModelObjectType basicGetToScopeHandles() {
+		return toScopeHandles;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setToScopeHandles(M_pModelObjectType newToScopeHandles) {
+		M_pModelObjectType oldToScopeHandles = toScopeHandles;
+		toScopeHandles = newToScopeHandles;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IMATRIX_INSTANCE__TO_SCOPE_HANDLES, oldToScopeHandles, toScopeHandles));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IClassifier getStereotypes() {
+		if (stereotypes != null && stereotypes.eIsProxy()) {
+			InternalEObject oldStereotypes = (InternalEObject)stereotypes;
+			stereotypes = (IClassifier)eResolveProxy(oldStereotypes);
+			if (stereotypes != oldStereotypes) {
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.IMATRIX_INSTANCE__STEREOTYPES, oldStereotypes, stereotypes));
+			}
+		}
+		return stereotypes;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IClassifier basicGetStereotypes() {
+		return stereotypes;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setStereotypes(IClassifier newStereotypes) {
+		IClassifier oldStereotypes = stereotypes;
+		stereotypes = newStereotypes;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IMATRIX_INSTANCE__STEREOTYPES, oldStereotypes, stereotypes));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getM_IncludeDescendants_to() {
+		return m_IncludeDescendants_to;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_IncludeDescendants_to(String newM_IncludeDescendants_to) {
+		String oldM_IncludeDescendants_to = m_IncludeDescendants_to;
+		m_IncludeDescendants_to = newM_IncludeDescendants_to;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IMATRIX_INSTANCE__MINCLUDE_DESCENDANTS_TO, oldM_IncludeDescendants_to, m_IncludeDescendants_to));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IPropertyContainer getProperties() {
+		if (properties != null && properties.eIsProxy()) {
+			InternalEObject oldProperties = (InternalEObject)properties;
+			properties = (IPropertyContainer)eResolveProxy(oldProperties);
+			if (properties != oldProperties) {
+				InternalEObject newProperties = (InternalEObject)properties;
+				NotificationChain msgs = oldProperties.eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IMATRIX_INSTANCE__PROPERTIES, null, null);
+				if (newProperties.eInternalContainer() == null) {
+					msgs = newProperties.eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IMATRIX_INSTANCE__PROPERTIES, null, msgs);
+				}
+				if (msgs != null) msgs.dispatch();
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.IMATRIX_INSTANCE__PROPERTIES, oldProperties, properties));
+			}
+		}
+		return properties;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IPropertyContainer basicGetProperties() {
+		return properties;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public NotificationChain basicSetProperties(IPropertyContainer newProperties, NotificationChain msgs) {
+		IPropertyContainer oldProperties = properties;
+		properties = newProperties;
+		if (eNotificationRequired()) {
+			ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IMATRIX_INSTANCE__PROPERTIES, oldProperties, newProperties);
+			if (msgs == null) msgs = notification; else msgs.add(notification);
+		}
+		return msgs;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setProperties(IPropertyContainer newProperties) {
+		if (newProperties != properties) {
+			NotificationChain msgs = null;
+			if (properties != null)
+				msgs = ((InternalEObject)properties).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IMATRIX_INSTANCE__PROPERTIES, null, msgs);
+			if (newProperties != null)
+				msgs = ((InternalEObject)newProperties).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IMATRIX_INSTANCE__PROPERTIES, null, msgs);
+			msgs = basicSetProperties(newProperties, msgs);
+			if (msgs != null) msgs.dispatch();
+		}
+		else if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IMATRIX_INSTANCE__PROPERTIES, newProperties, newProperties));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
+		switch (featureID) {
+			case UMLRpyPackage.IMATRIX_INSTANCE__PROPERTIES:
+				return basicSetProperties(null, msgs);
+		}
+		return super.eInverseRemove(otherEnd, featureID, msgs);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object eGet(int featureID, boolean resolve, boolean coreType) {
+		switch (featureID) {
+			case UMLRpyPackage.IMATRIX_INSTANCE__ID:
+				return getId();
+			case UMLRpyPackage.IMATRIX_INSTANCE__MY_STATE:
+				return getMyState();
+			case UMLRpyPackage.IMATRIX_INSTANCE__NAME:
+				return getName();
+			case UMLRpyPackage.IMATRIX_INSTANCE__MODIFIED_TIME_WEAK:
+				return getModifiedTimeWeak();
+			case UMLRpyPackage.IMATRIX_INSTANCE__LAYOUT_HANDLE:
+				if (resolve) return getLayoutHandle();
+				return basicGetLayoutHandle();
+			case UMLRpyPackage.IMATRIX_INSTANCE__FROM_SCOPE_HANDLES:
+				if (resolve) return getFromScopeHandles();
+				return basicGetFromScopeHandles();
+			case UMLRpyPackage.IMATRIX_INSTANCE__TO_SCOPE_HANDLES:
+				if (resolve) return getToScopeHandles();
+				return basicGetToScopeHandles();
+			case UMLRpyPackage.IMATRIX_INSTANCE__STEREOTYPES:
+				if (resolve) return getStereotypes();
+				return basicGetStereotypes();
+			case UMLRpyPackage.IMATRIX_INSTANCE__MINCLUDE_DESCENDANTS_TO:
+				return getM_IncludeDescendants_to();
+			case UMLRpyPackage.IMATRIX_INSTANCE__PROPERTIES:
+				if (resolve) return getProperties();
+				return basicGetProperties();
+		}
+		return super.eGet(featureID, resolve, coreType);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@SuppressWarnings("unchecked")
+	@Override
+	public void eSet(int featureID, Object newValue) {
+		switch (featureID) {
+			case UMLRpyPackage.IMATRIX_INSTANCE__ID:
+				setId((String)newValue);
+				return;
+			case UMLRpyPackage.IMATRIX_INSTANCE__MY_STATE:
+				setMyState((String)newValue);
+				return;
+			case UMLRpyPackage.IMATRIX_INSTANCE__NAME:
+				setName((String)newValue);
+				return;
+			case UMLRpyPackage.IMATRIX_INSTANCE__MODIFIED_TIME_WEAK:
+				getModifiedTimeWeak().clear();
+				getModifiedTimeWeak().addAll((Collection<? extends String>)newValue);
+				return;
+			case UMLRpyPackage.IMATRIX_INSTANCE__LAYOUT_HANDLE:
+				setLayoutHandle((IUnit)newValue);
+				return;
+			case UMLRpyPackage.IMATRIX_INSTANCE__FROM_SCOPE_HANDLES:
+				setFromScopeHandles((M_pModelObjectType)newValue);
+				return;
+			case UMLRpyPackage.IMATRIX_INSTANCE__TO_SCOPE_HANDLES:
+				setToScopeHandles((M_pModelObjectType)newValue);
+				return;
+			case UMLRpyPackage.IMATRIX_INSTANCE__STEREOTYPES:
+				setStereotypes((IClassifier)newValue);
+				return;
+			case UMLRpyPackage.IMATRIX_INSTANCE__MINCLUDE_DESCENDANTS_TO:
+				setM_IncludeDescendants_to((String)newValue);
+				return;
+			case UMLRpyPackage.IMATRIX_INSTANCE__PROPERTIES:
+				setProperties((IPropertyContainer)newValue);
+				return;
+		}
+		super.eSet(featureID, newValue);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void eUnset(int featureID) {
+		switch (featureID) {
+			case UMLRpyPackage.IMATRIX_INSTANCE__ID:
+				setId(ID_EDEFAULT);
+				return;
+			case UMLRpyPackage.IMATRIX_INSTANCE__MY_STATE:
+				setMyState(MY_STATE_EDEFAULT);
+				return;
+			case UMLRpyPackage.IMATRIX_INSTANCE__NAME:
+				setName(NAME_EDEFAULT);
+				return;
+			case UMLRpyPackage.IMATRIX_INSTANCE__MODIFIED_TIME_WEAK:
+				getModifiedTimeWeak().clear();
+				return;
+			case UMLRpyPackage.IMATRIX_INSTANCE__LAYOUT_HANDLE:
+				setLayoutHandle((IUnit)null);
+				return;
+			case UMLRpyPackage.IMATRIX_INSTANCE__FROM_SCOPE_HANDLES:
+				setFromScopeHandles((M_pModelObjectType)null);
+				return;
+			case UMLRpyPackage.IMATRIX_INSTANCE__TO_SCOPE_HANDLES:
+				setToScopeHandles((M_pModelObjectType)null);
+				return;
+			case UMLRpyPackage.IMATRIX_INSTANCE__STEREOTYPES:
+				setStereotypes((IClassifier)null);
+				return;
+			case UMLRpyPackage.IMATRIX_INSTANCE__MINCLUDE_DESCENDANTS_TO:
+				setM_IncludeDescendants_to(MINCLUDE_DESCENDANTS_TO_EDEFAULT);
+				return;
+			case UMLRpyPackage.IMATRIX_INSTANCE__PROPERTIES:
+				setProperties((IPropertyContainer)null);
+				return;
+		}
+		super.eUnset(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public boolean eIsSet(int featureID) {
+		switch (featureID) {
+			case UMLRpyPackage.IMATRIX_INSTANCE__ID:
+				return ID_EDEFAULT == null ? id != null : !ID_EDEFAULT.equals(id);
+			case UMLRpyPackage.IMATRIX_INSTANCE__MY_STATE:
+				return MY_STATE_EDEFAULT == null ? myState != null : !MY_STATE_EDEFAULT.equals(myState);
+			case UMLRpyPackage.IMATRIX_INSTANCE__NAME:
+				return NAME_EDEFAULT == null ? name != null : !NAME_EDEFAULT.equals(name);
+			case UMLRpyPackage.IMATRIX_INSTANCE__MODIFIED_TIME_WEAK:
+				return modifiedTimeWeak != null && !modifiedTimeWeak.isEmpty();
+			case UMLRpyPackage.IMATRIX_INSTANCE__LAYOUT_HANDLE:
+				return layoutHandle != null;
+			case UMLRpyPackage.IMATRIX_INSTANCE__FROM_SCOPE_HANDLES:
+				return fromScopeHandles != null;
+			case UMLRpyPackage.IMATRIX_INSTANCE__TO_SCOPE_HANDLES:
+				return toScopeHandles != null;
+			case UMLRpyPackage.IMATRIX_INSTANCE__STEREOTYPES:
+				return stereotypes != null;
+			case UMLRpyPackage.IMATRIX_INSTANCE__MINCLUDE_DESCENDANTS_TO:
+				return MINCLUDE_DESCENDANTS_TO_EDEFAULT == null ? m_IncludeDescendants_to != null : !MINCLUDE_DESCENDANTS_TO_EDEFAULT.equals(m_IncludeDescendants_to);
+			case UMLRpyPackage.IMATRIX_INSTANCE__PROPERTIES:
+				return properties != null;
+		}
+		return super.eIsSet(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String toString() {
+		if (eIsProxy()) return super.toString();
+
+		StringBuffer result = new StringBuffer(super.toString());
+		result.append(" (id: "); //$NON-NLS-1$
+		result.append(id);
+		result.append(", myState: "); //$NON-NLS-1$
+		result.append(myState);
+		result.append(", name: "); //$NON-NLS-1$
+		result.append(name);
+		result.append(", modifiedTimeWeak: "); //$NON-NLS-1$
+		result.append(modifiedTimeWeak);
+		result.append(", m_IncludeDescendants_to: "); //$NON-NLS-1$
+		result.append(m_IncludeDescendants_to);
+		result.append(')');
+		return result.toString();
+	}
+
+} //IMatrixInstanceImpl
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/IMatrixLayoutImpl.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/IMatrixLayoutImpl.java
new file mode 100755
index 0000000..9b11e5b
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/IMatrixLayoutImpl.java
@@ -0,0 +1,647 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl;
+
+import java.util.Collection;
+
+import org.eclipse.emf.common.notify.Notification;
+import org.eclipse.emf.common.notify.NotificationChain;
+
+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.EDataTypeEList;
+import org.eclipse.emf.ecore.util.EObjectContainmentEList;
+import org.eclipse.emf.ecore.util.InternalEList;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IDescription;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMatrixLayout;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.TableDataDefinition;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>IMatrix Layout</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * </p>
+ * <ul>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IMatrixLayoutImpl#getId <em>Id</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IMatrixLayoutImpl#getMyState <em>My State</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IMatrixLayoutImpl#getName <em>Name</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IMatrixLayoutImpl#getModifiedTimeWeak <em>Modified Time Weak</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IMatrixLayoutImpl#getFromElementTypes <em>From Element Types</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IMatrixLayoutImpl#getToElementTypes <em>To Element Types</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IMatrixLayoutImpl#getCellElementTypes <em>Cell Element Types</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IMatrixLayoutImpl#getDescription <em>Description</em>}</li>
+ * </ul>
+ *
+ * @generated
+ */
+public class IMatrixLayoutImpl extends IUnitImpl implements IMatrixLayout {
+	/**
+	 * The default value of the '{@link #getId() <em>Id</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getId()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String ID_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getId() <em>Id</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getId()
+	 * @generated
+	 * @ordered
+	 */
+	protected String id = ID_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getMyState() <em>My State</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getMyState()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String MY_STATE_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getMyState() <em>My State</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getMyState()
+	 * @generated
+	 * @ordered
+	 */
+	protected String myState = MY_STATE_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getName() <em>Name</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getName()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String NAME_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getName() <em>Name</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getName()
+	 * @generated
+	 * @ordered
+	 */
+	protected String name = NAME_EDEFAULT;
+
+	/**
+	 * The cached value of the '{@link #getModifiedTimeWeak() <em>Modified Time Weak</em>}' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getModifiedTimeWeak()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<String> modifiedTimeWeak;
+
+	/**
+	 * The cached value of the '{@link #getFromElementTypes() <em>From Element Types</em>}' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getFromElementTypes()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<TableDataDefinition> fromElementTypes;
+
+	/**
+	 * The cached value of the '{@link #getToElementTypes() <em>To Element Types</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getToElementTypes()
+	 * @generated
+	 * @ordered
+	 */
+	protected TableDataDefinition toElementTypes;
+
+	/**
+	 * The cached value of the '{@link #getCellElementTypes() <em>Cell Element Types</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getCellElementTypes()
+	 * @generated
+	 * @ordered
+	 */
+	protected TableDataDefinition cellElementTypes;
+
+	/**
+	 * The cached value of the '{@link #getDescription() <em>Description</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getDescription()
+	 * @generated
+	 * @ordered
+	 */
+	protected IDescription description;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected IMatrixLayoutImpl() {
+		super();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EClass eStaticClass() {
+		return UMLRpyPackage.eINSTANCE.getIMatrixLayout();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getId() {
+		return id;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setId(String newId) {
+		String oldId = id;
+		id = newId;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IMATRIX_LAYOUT__ID, oldId, id));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getMyState() {
+		return myState;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setMyState(String newMyState) {
+		String oldMyState = myState;
+		myState = newMyState;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IMATRIX_LAYOUT__MY_STATE, oldMyState, myState));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getName() {
+		return name;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setName(String newName) {
+		String oldName = name;
+		name = newName;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IMATRIX_LAYOUT__NAME, oldName, name));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<String> getModifiedTimeWeak() {
+		if (modifiedTimeWeak == null) {
+			modifiedTimeWeak = new EDataTypeEList<String>(String.class, this, UMLRpyPackage.IMATRIX_LAYOUT__MODIFIED_TIME_WEAK);
+		}
+		return modifiedTimeWeak;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<TableDataDefinition> getFromElementTypes() {
+		if (fromElementTypes == null) {
+			fromElementTypes = new EObjectContainmentEList.Resolving<TableDataDefinition>(TableDataDefinition.class, this, UMLRpyPackage.IMATRIX_LAYOUT__FROM_ELEMENT_TYPES);
+		}
+		return fromElementTypes;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public TableDataDefinition getToElementTypes() {
+		if (toElementTypes != null && toElementTypes.eIsProxy()) {
+			InternalEObject oldToElementTypes = (InternalEObject)toElementTypes;
+			toElementTypes = (TableDataDefinition)eResolveProxy(oldToElementTypes);
+			if (toElementTypes != oldToElementTypes) {
+				InternalEObject newToElementTypes = (InternalEObject)toElementTypes;
+				NotificationChain msgs = oldToElementTypes.eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IMATRIX_LAYOUT__TO_ELEMENT_TYPES, null, null);
+				if (newToElementTypes.eInternalContainer() == null) {
+					msgs = newToElementTypes.eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IMATRIX_LAYOUT__TO_ELEMENT_TYPES, null, msgs);
+				}
+				if (msgs != null) msgs.dispatch();
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.IMATRIX_LAYOUT__TO_ELEMENT_TYPES, oldToElementTypes, toElementTypes));
+			}
+		}
+		return toElementTypes;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public TableDataDefinition basicGetToElementTypes() {
+		return toElementTypes;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public NotificationChain basicSetToElementTypes(TableDataDefinition newToElementTypes, NotificationChain msgs) {
+		TableDataDefinition oldToElementTypes = toElementTypes;
+		toElementTypes = newToElementTypes;
+		if (eNotificationRequired()) {
+			ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IMATRIX_LAYOUT__TO_ELEMENT_TYPES, oldToElementTypes, newToElementTypes);
+			if (msgs == null) msgs = notification; else msgs.add(notification);
+		}
+		return msgs;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setToElementTypes(TableDataDefinition newToElementTypes) {
+		if (newToElementTypes != toElementTypes) {
+			NotificationChain msgs = null;
+			if (toElementTypes != null)
+				msgs = ((InternalEObject)toElementTypes).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IMATRIX_LAYOUT__TO_ELEMENT_TYPES, null, msgs);
+			if (newToElementTypes != null)
+				msgs = ((InternalEObject)newToElementTypes).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IMATRIX_LAYOUT__TO_ELEMENT_TYPES, null, msgs);
+			msgs = basicSetToElementTypes(newToElementTypes, msgs);
+			if (msgs != null) msgs.dispatch();
+		}
+		else if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IMATRIX_LAYOUT__TO_ELEMENT_TYPES, newToElementTypes, newToElementTypes));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public TableDataDefinition getCellElementTypes() {
+		if (cellElementTypes != null && cellElementTypes.eIsProxy()) {
+			InternalEObject oldCellElementTypes = (InternalEObject)cellElementTypes;
+			cellElementTypes = (TableDataDefinition)eResolveProxy(oldCellElementTypes);
+			if (cellElementTypes != oldCellElementTypes) {
+				InternalEObject newCellElementTypes = (InternalEObject)cellElementTypes;
+				NotificationChain msgs = oldCellElementTypes.eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IMATRIX_LAYOUT__CELL_ELEMENT_TYPES, null, null);
+				if (newCellElementTypes.eInternalContainer() == null) {
+					msgs = newCellElementTypes.eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IMATRIX_LAYOUT__CELL_ELEMENT_TYPES, null, msgs);
+				}
+				if (msgs != null) msgs.dispatch();
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.IMATRIX_LAYOUT__CELL_ELEMENT_TYPES, oldCellElementTypes, cellElementTypes));
+			}
+		}
+		return cellElementTypes;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public TableDataDefinition basicGetCellElementTypes() {
+		return cellElementTypes;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public NotificationChain basicSetCellElementTypes(TableDataDefinition newCellElementTypes, NotificationChain msgs) {
+		TableDataDefinition oldCellElementTypes = cellElementTypes;
+		cellElementTypes = newCellElementTypes;
+		if (eNotificationRequired()) {
+			ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IMATRIX_LAYOUT__CELL_ELEMENT_TYPES, oldCellElementTypes, newCellElementTypes);
+			if (msgs == null) msgs = notification; else msgs.add(notification);
+		}
+		return msgs;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setCellElementTypes(TableDataDefinition newCellElementTypes) {
+		if (newCellElementTypes != cellElementTypes) {
+			NotificationChain msgs = null;
+			if (cellElementTypes != null)
+				msgs = ((InternalEObject)cellElementTypes).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IMATRIX_LAYOUT__CELL_ELEMENT_TYPES, null, msgs);
+			if (newCellElementTypes != null)
+				msgs = ((InternalEObject)newCellElementTypes).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IMATRIX_LAYOUT__CELL_ELEMENT_TYPES, null, msgs);
+			msgs = basicSetCellElementTypes(newCellElementTypes, msgs);
+			if (msgs != null) msgs.dispatch();
+		}
+		else if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IMATRIX_LAYOUT__CELL_ELEMENT_TYPES, newCellElementTypes, newCellElementTypes));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IDescription getDescription() {
+		if (description != null && description.eIsProxy()) {
+			InternalEObject oldDescription = (InternalEObject)description;
+			description = (IDescription)eResolveProxy(oldDescription);
+			if (description != oldDescription) {
+				InternalEObject newDescription = (InternalEObject)description;
+				NotificationChain msgs = oldDescription.eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IMATRIX_LAYOUT__DESCRIPTION, null, null);
+				if (newDescription.eInternalContainer() == null) {
+					msgs = newDescription.eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IMATRIX_LAYOUT__DESCRIPTION, null, msgs);
+				}
+				if (msgs != null) msgs.dispatch();
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.IMATRIX_LAYOUT__DESCRIPTION, oldDescription, description));
+			}
+		}
+		return description;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IDescription basicGetDescription() {
+		return description;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public NotificationChain basicSetDescription(IDescription newDescription, NotificationChain msgs) {
+		IDescription oldDescription = description;
+		description = newDescription;
+		if (eNotificationRequired()) {
+			ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IMATRIX_LAYOUT__DESCRIPTION, oldDescription, newDescription);
+			if (msgs == null) msgs = notification; else msgs.add(notification);
+		}
+		return msgs;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setDescription(IDescription newDescription) {
+		if (newDescription != description) {
+			NotificationChain msgs = null;
+			if (description != null)
+				msgs = ((InternalEObject)description).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IMATRIX_LAYOUT__DESCRIPTION, null, msgs);
+			if (newDescription != null)
+				msgs = ((InternalEObject)newDescription).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IMATRIX_LAYOUT__DESCRIPTION, null, msgs);
+			msgs = basicSetDescription(newDescription, msgs);
+			if (msgs != null) msgs.dispatch();
+		}
+		else if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IMATRIX_LAYOUT__DESCRIPTION, newDescription, newDescription));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
+		switch (featureID) {
+			case UMLRpyPackage.IMATRIX_LAYOUT__FROM_ELEMENT_TYPES:
+				return ((InternalEList<?>)getFromElementTypes()).basicRemove(otherEnd, msgs);
+			case UMLRpyPackage.IMATRIX_LAYOUT__TO_ELEMENT_TYPES:
+				return basicSetToElementTypes(null, msgs);
+			case UMLRpyPackage.IMATRIX_LAYOUT__CELL_ELEMENT_TYPES:
+				return basicSetCellElementTypes(null, msgs);
+			case UMLRpyPackage.IMATRIX_LAYOUT__DESCRIPTION:
+				return basicSetDescription(null, msgs);
+		}
+		return super.eInverseRemove(otherEnd, featureID, msgs);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object eGet(int featureID, boolean resolve, boolean coreType) {
+		switch (featureID) {
+			case UMLRpyPackage.IMATRIX_LAYOUT__ID:
+				return getId();
+			case UMLRpyPackage.IMATRIX_LAYOUT__MY_STATE:
+				return getMyState();
+			case UMLRpyPackage.IMATRIX_LAYOUT__NAME:
+				return getName();
+			case UMLRpyPackage.IMATRIX_LAYOUT__MODIFIED_TIME_WEAK:
+				return getModifiedTimeWeak();
+			case UMLRpyPackage.IMATRIX_LAYOUT__FROM_ELEMENT_TYPES:
+				return getFromElementTypes();
+			case UMLRpyPackage.IMATRIX_LAYOUT__TO_ELEMENT_TYPES:
+				if (resolve) return getToElementTypes();
+				return basicGetToElementTypes();
+			case UMLRpyPackage.IMATRIX_LAYOUT__CELL_ELEMENT_TYPES:
+				if (resolve) return getCellElementTypes();
+				return basicGetCellElementTypes();
+			case UMLRpyPackage.IMATRIX_LAYOUT__DESCRIPTION:
+				if (resolve) return getDescription();
+				return basicGetDescription();
+		}
+		return super.eGet(featureID, resolve, coreType);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@SuppressWarnings("unchecked")
+	@Override
+	public void eSet(int featureID, Object newValue) {
+		switch (featureID) {
+			case UMLRpyPackage.IMATRIX_LAYOUT__ID:
+				setId((String)newValue);
+				return;
+			case UMLRpyPackage.IMATRIX_LAYOUT__MY_STATE:
+				setMyState((String)newValue);
+				return;
+			case UMLRpyPackage.IMATRIX_LAYOUT__NAME:
+				setName((String)newValue);
+				return;
+			case UMLRpyPackage.IMATRIX_LAYOUT__MODIFIED_TIME_WEAK:
+				getModifiedTimeWeak().clear();
+				getModifiedTimeWeak().addAll((Collection<? extends String>)newValue);
+				return;
+			case UMLRpyPackage.IMATRIX_LAYOUT__FROM_ELEMENT_TYPES:
+				getFromElementTypes().clear();
+				getFromElementTypes().addAll((Collection<? extends TableDataDefinition>)newValue);
+				return;
+			case UMLRpyPackage.IMATRIX_LAYOUT__TO_ELEMENT_TYPES:
+				setToElementTypes((TableDataDefinition)newValue);
+				return;
+			case UMLRpyPackage.IMATRIX_LAYOUT__CELL_ELEMENT_TYPES:
+				setCellElementTypes((TableDataDefinition)newValue);
+				return;
+			case UMLRpyPackage.IMATRIX_LAYOUT__DESCRIPTION:
+				setDescription((IDescription)newValue);
+				return;
+		}
+		super.eSet(featureID, newValue);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void eUnset(int featureID) {
+		switch (featureID) {
+			case UMLRpyPackage.IMATRIX_LAYOUT__ID:
+				setId(ID_EDEFAULT);
+				return;
+			case UMLRpyPackage.IMATRIX_LAYOUT__MY_STATE:
+				setMyState(MY_STATE_EDEFAULT);
+				return;
+			case UMLRpyPackage.IMATRIX_LAYOUT__NAME:
+				setName(NAME_EDEFAULT);
+				return;
+			case UMLRpyPackage.IMATRIX_LAYOUT__MODIFIED_TIME_WEAK:
+				getModifiedTimeWeak().clear();
+				return;
+			case UMLRpyPackage.IMATRIX_LAYOUT__FROM_ELEMENT_TYPES:
+				getFromElementTypes().clear();
+				return;
+			case UMLRpyPackage.IMATRIX_LAYOUT__TO_ELEMENT_TYPES:
+				setToElementTypes((TableDataDefinition)null);
+				return;
+			case UMLRpyPackage.IMATRIX_LAYOUT__CELL_ELEMENT_TYPES:
+				setCellElementTypes((TableDataDefinition)null);
+				return;
+			case UMLRpyPackage.IMATRIX_LAYOUT__DESCRIPTION:
+				setDescription((IDescription)null);
+				return;
+		}
+		super.eUnset(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public boolean eIsSet(int featureID) {
+		switch (featureID) {
+			case UMLRpyPackage.IMATRIX_LAYOUT__ID:
+				return ID_EDEFAULT == null ? id != null : !ID_EDEFAULT.equals(id);
+			case UMLRpyPackage.IMATRIX_LAYOUT__MY_STATE:
+				return MY_STATE_EDEFAULT == null ? myState != null : !MY_STATE_EDEFAULT.equals(myState);
+			case UMLRpyPackage.IMATRIX_LAYOUT__NAME:
+				return NAME_EDEFAULT == null ? name != null : !NAME_EDEFAULT.equals(name);
+			case UMLRpyPackage.IMATRIX_LAYOUT__MODIFIED_TIME_WEAK:
+				return modifiedTimeWeak != null && !modifiedTimeWeak.isEmpty();
+			case UMLRpyPackage.IMATRIX_LAYOUT__FROM_ELEMENT_TYPES:
+				return fromElementTypes != null && !fromElementTypes.isEmpty();
+			case UMLRpyPackage.IMATRIX_LAYOUT__TO_ELEMENT_TYPES:
+				return toElementTypes != null;
+			case UMLRpyPackage.IMATRIX_LAYOUT__CELL_ELEMENT_TYPES:
+				return cellElementTypes != null;
+			case UMLRpyPackage.IMATRIX_LAYOUT__DESCRIPTION:
+				return description != null;
+		}
+		return super.eIsSet(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String toString() {
+		if (eIsProxy()) return super.toString();
+
+		StringBuffer result = new StringBuffer(super.toString());
+		result.append(" (id: "); //$NON-NLS-1$
+		result.append(id);
+		result.append(", myState: "); //$NON-NLS-1$
+		result.append(myState);
+		result.append(", name: "); //$NON-NLS-1$
+		result.append(name);
+		result.append(", modifiedTimeWeak: "); //$NON-NLS-1$
+		result.append(modifiedTimeWeak);
+		result.append(')');
+		return result.toString();
+	}
+
+} //IMatrixLayoutImpl
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/IMatrixViewImpl.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/IMatrixViewImpl.java
new file mode 100755
index 0000000..86c7609
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/IMatrixViewImpl.java
@@ -0,0 +1,47 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl;
+
+import org.eclipse.emf.ecore.EClass;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMatrixView;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>IMatrix View</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+public class IMatrixViewImpl extends IUnitImpl implements IMatrixView {
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected IMatrixViewImpl() {
+		super();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EClass eStaticClass() {
+		return UMLRpyPackage.eINSTANCE.getIMatrixView();
+	}
+
+} //IMatrixViewImpl
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/IMessageImpl.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/IMessageImpl.java
new file mode 100755
index 0000000..a31c762
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/IMessageImpl.java
@@ -0,0 +1,1286 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl;
+
+import java.util.Collection;
+
+import org.eclipse.emf.common.notify.Notification;
+import org.eclipse.emf.common.notify.NotificationChain;
+
+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.EObjectContainmentEList;
+import org.eclipse.emf.ecore.util.InternalEList;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IClassifier;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IClassifierRole;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMessage;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IModelElement;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IPropertyContainer;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITag;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.M_pFormalMessageType;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>IMessage</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * </p>
+ * <ul>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IMessageImpl#getId <em>Id</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IMessageImpl#getMyState <em>My State</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IMessageImpl#getName <em>Name</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IMessageImpl#getM_szSequence <em>Msz Sequence</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IMessageImpl#getM_szActualArgs <em>Msz Actual Args</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IMessageImpl#getM_szReturnVal <em>Msz Return Val</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IMessageImpl#getM_pReceiver <em>MpReceiver</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IMessageImpl#getM_pSender <em>MpSender</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IMessageImpl#getM_pFormalMessage <em>MpFormal Message</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IMessageImpl#getM_eType <em>MeType</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IMessageImpl#getM_pCommunicationConnection <em>MpCommunication Connection</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IMessageImpl#getM_freeText <em>Mfree Text</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IMessageImpl#getModifiedTimeWeak <em>Modified Time Weak</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IMessageImpl#getStereotypes <em>Stereotypes</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IMessageImpl#getTags <em>Tags</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IMessageImpl#getProperties <em>Properties</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IMessageImpl#getM_targetExec <em>Mtarget Exec</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IMessageImpl#getM_srcExec <em>Msrc Exec</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IMessageImpl#getObjectCreation <em>Object Creation</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IMessageImpl#getUmlDependencyID <em>Uml Dependency ID</em>}</li>
+ * </ul>
+ *
+ * @generated
+ */
+public class IMessageImpl extends IModelElementImpl implements IMessage {
+	/**
+	 * The default value of the '{@link #getId() <em>Id</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getId()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String ID_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getId() <em>Id</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getId()
+	 * @generated
+	 * @ordered
+	 */
+	protected String id = ID_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getMyState() <em>My State</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getMyState()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String MY_STATE_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getMyState() <em>My State</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getMyState()
+	 * @generated
+	 * @ordered
+	 */
+	protected String myState = MY_STATE_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getName() <em>Name</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getName()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String NAME_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getName() <em>Name</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getName()
+	 * @generated
+	 * @ordered
+	 */
+	protected String name = NAME_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getM_szSequence() <em>Msz Sequence</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_szSequence()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String MSZ_SEQUENCE_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getM_szSequence() <em>Msz Sequence</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_szSequence()
+	 * @generated
+	 * @ordered
+	 */
+	protected String m_szSequence = MSZ_SEQUENCE_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getM_szActualArgs() <em>Msz Actual Args</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_szActualArgs()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String MSZ_ACTUAL_ARGS_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getM_szActualArgs() <em>Msz Actual Args</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_szActualArgs()
+	 * @generated
+	 * @ordered
+	 */
+	protected String m_szActualArgs = MSZ_ACTUAL_ARGS_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getM_szReturnVal() <em>Msz Return Val</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_szReturnVal()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String MSZ_RETURN_VAL_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getM_szReturnVal() <em>Msz Return Val</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_szReturnVal()
+	 * @generated
+	 * @ordered
+	 */
+	protected String m_szReturnVal = MSZ_RETURN_VAL_EDEFAULT;
+
+	/**
+	 * The cached value of the '{@link #getM_pReceiver() <em>MpReceiver</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_pReceiver()
+	 * @generated
+	 * @ordered
+	 */
+	protected IClassifierRole m_pReceiver;
+
+	/**
+	 * The cached value of the '{@link #getM_pSender() <em>MpSender</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_pSender()
+	 * @generated
+	 * @ordered
+	 */
+	protected IClassifierRole m_pSender;
+
+	/**
+	 * The cached value of the '{@link #getM_pFormalMessage() <em>MpFormal Message</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_pFormalMessage()
+	 * @generated
+	 * @ordered
+	 */
+	protected M_pFormalMessageType m_pFormalMessage;
+
+	/**
+	 * The default value of the '{@link #getM_eType() <em>MeType</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_eType()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String METYPE_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getM_eType() <em>MeType</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_eType()
+	 * @generated
+	 * @ordered
+	 */
+	protected String m_eType = METYPE_EDEFAULT;
+
+	/**
+	 * The cached value of the '{@link #getM_pCommunicationConnection() <em>MpCommunication Connection</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_pCommunicationConnection()
+	 * @generated
+	 * @ordered
+	 */
+	protected IModelElement m_pCommunicationConnection;
+
+	/**
+	 * The default value of the '{@link #getM_freeText() <em>Mfree Text</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_freeText()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String MFREE_TEXT_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getM_freeText() <em>Mfree Text</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_freeText()
+	 * @generated
+	 * @ordered
+	 */
+	protected String m_freeText = MFREE_TEXT_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getModifiedTimeWeak() <em>Modified Time Weak</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getModifiedTimeWeak()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String MODIFIED_TIME_WEAK_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getModifiedTimeWeak() <em>Modified Time Weak</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getModifiedTimeWeak()
+	 * @generated
+	 * @ordered
+	 */
+	protected String modifiedTimeWeak = MODIFIED_TIME_WEAK_EDEFAULT;
+
+	/**
+	 * The cached value of the '{@link #getStereotypes() <em>Stereotypes</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getStereotypes()
+	 * @generated
+	 * @ordered
+	 */
+	protected IClassifier stereotypes;
+
+	/**
+	 * The cached value of the '{@link #getTags() <em>Tags</em>}' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getTags()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<ITag> tags;
+
+	/**
+	 * The cached value of the '{@link #getProperties() <em>Properties</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getProperties()
+	 * @generated
+	 * @ordered
+	 */
+	protected IPropertyContainer properties;
+
+	/**
+	 * The cached value of the '{@link #getM_targetExec() <em>Mtarget Exec</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_targetExec()
+	 * @generated
+	 * @ordered
+	 */
+	protected IModelElement m_targetExec;
+
+	/**
+	 * The cached value of the '{@link #getM_srcExec() <em>Msrc Exec</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_srcExec()
+	 * @generated
+	 * @ordered
+	 */
+	protected IModelElement m_srcExec;
+
+	/**
+	 * The default value of the '{@link #getObjectCreation() <em>Object Creation</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getObjectCreation()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String OBJECT_CREATION_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getObjectCreation() <em>Object Creation</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getObjectCreation()
+	 * @generated
+	 * @ordered
+	 */
+	protected String objectCreation = OBJECT_CREATION_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getUmlDependencyID() <em>Uml Dependency ID</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getUmlDependencyID()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String UML_DEPENDENCY_ID_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getUmlDependencyID() <em>Uml Dependency ID</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getUmlDependencyID()
+	 * @generated
+	 * @ordered
+	 */
+	protected String umlDependencyID = UML_DEPENDENCY_ID_EDEFAULT;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected IMessageImpl() {
+		super();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EClass eStaticClass() {
+		return UMLRpyPackage.eINSTANCE.getIMessage();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getId() {
+		return id;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setId(String newId) {
+		String oldId = id;
+		id = newId;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IMESSAGE__ID, oldId, id));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getMyState() {
+		return myState;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setMyState(String newMyState) {
+		String oldMyState = myState;
+		myState = newMyState;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IMESSAGE__MY_STATE, oldMyState, myState));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getName() {
+		return name;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setName(String newName) {
+		String oldName = name;
+		name = newName;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IMESSAGE__NAME, oldName, name));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getM_szSequence() {
+		return m_szSequence;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_szSequence(String newM_szSequence) {
+		String oldM_szSequence = m_szSequence;
+		m_szSequence = newM_szSequence;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IMESSAGE__MSZ_SEQUENCE, oldM_szSequence, m_szSequence));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getM_szActualArgs() {
+		return m_szActualArgs;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_szActualArgs(String newM_szActualArgs) {
+		String oldM_szActualArgs = m_szActualArgs;
+		m_szActualArgs = newM_szActualArgs;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IMESSAGE__MSZ_ACTUAL_ARGS, oldM_szActualArgs, m_szActualArgs));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getM_szReturnVal() {
+		return m_szReturnVal;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_szReturnVal(String newM_szReturnVal) {
+		String oldM_szReturnVal = m_szReturnVal;
+		m_szReturnVal = newM_szReturnVal;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IMESSAGE__MSZ_RETURN_VAL, oldM_szReturnVal, m_szReturnVal));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IClassifierRole getM_pReceiver() {
+		if (m_pReceiver != null && m_pReceiver.eIsProxy()) {
+			InternalEObject oldM_pReceiver = (InternalEObject)m_pReceiver;
+			m_pReceiver = (IClassifierRole)eResolveProxy(oldM_pReceiver);
+			if (m_pReceiver != oldM_pReceiver) {
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.IMESSAGE__MPRECEIVER, oldM_pReceiver, m_pReceiver));
+			}
+		}
+		return m_pReceiver;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IClassifierRole basicGetM_pReceiver() {
+		return m_pReceiver;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_pReceiver(IClassifierRole newM_pReceiver) {
+		IClassifierRole oldM_pReceiver = m_pReceiver;
+		m_pReceiver = newM_pReceiver;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IMESSAGE__MPRECEIVER, oldM_pReceiver, m_pReceiver));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IClassifierRole getM_pSender() {
+		if (m_pSender != null && m_pSender.eIsProxy()) {
+			InternalEObject oldM_pSender = (InternalEObject)m_pSender;
+			m_pSender = (IClassifierRole)eResolveProxy(oldM_pSender);
+			if (m_pSender != oldM_pSender) {
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.IMESSAGE__MPSENDER, oldM_pSender, m_pSender));
+			}
+		}
+		return m_pSender;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IClassifierRole basicGetM_pSender() {
+		return m_pSender;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_pSender(IClassifierRole newM_pSender) {
+		IClassifierRole oldM_pSender = m_pSender;
+		m_pSender = newM_pSender;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IMESSAGE__MPSENDER, oldM_pSender, m_pSender));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public M_pFormalMessageType getM_pFormalMessage() {
+		if (m_pFormalMessage != null && m_pFormalMessage.eIsProxy()) {
+			InternalEObject oldM_pFormalMessage = (InternalEObject)m_pFormalMessage;
+			m_pFormalMessage = (M_pFormalMessageType)eResolveProxy(oldM_pFormalMessage);
+			if (m_pFormalMessage != oldM_pFormalMessage) {
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.IMESSAGE__MPFORMAL_MESSAGE, oldM_pFormalMessage, m_pFormalMessage));
+			}
+		}
+		return m_pFormalMessage;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public M_pFormalMessageType basicGetM_pFormalMessage() {
+		return m_pFormalMessage;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_pFormalMessage(M_pFormalMessageType newM_pFormalMessage) {
+		M_pFormalMessageType oldM_pFormalMessage = m_pFormalMessage;
+		m_pFormalMessage = newM_pFormalMessage;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IMESSAGE__MPFORMAL_MESSAGE, oldM_pFormalMessage, m_pFormalMessage));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getM_eType() {
+		return m_eType;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_eType(String newM_eType) {
+		String oldM_eType = m_eType;
+		m_eType = newM_eType;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IMESSAGE__METYPE, oldM_eType, m_eType));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IModelElement getM_pCommunicationConnection() {
+		if (m_pCommunicationConnection != null && m_pCommunicationConnection.eIsProxy()) {
+			InternalEObject oldM_pCommunicationConnection = (InternalEObject)m_pCommunicationConnection;
+			m_pCommunicationConnection = (IModelElement)eResolveProxy(oldM_pCommunicationConnection);
+			if (m_pCommunicationConnection != oldM_pCommunicationConnection) {
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.IMESSAGE__MPCOMMUNICATION_CONNECTION, oldM_pCommunicationConnection, m_pCommunicationConnection));
+			}
+		}
+		return m_pCommunicationConnection;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IModelElement basicGetM_pCommunicationConnection() {
+		return m_pCommunicationConnection;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_pCommunicationConnection(IModelElement newM_pCommunicationConnection) {
+		IModelElement oldM_pCommunicationConnection = m_pCommunicationConnection;
+		m_pCommunicationConnection = newM_pCommunicationConnection;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IMESSAGE__MPCOMMUNICATION_CONNECTION, oldM_pCommunicationConnection, m_pCommunicationConnection));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getM_freeText() {
+		return m_freeText;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_freeText(String newM_freeText) {
+		String oldM_freeText = m_freeText;
+		m_freeText = newM_freeText;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IMESSAGE__MFREE_TEXT, oldM_freeText, m_freeText));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getModifiedTimeWeak() {
+		return modifiedTimeWeak;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setModifiedTimeWeak(String newModifiedTimeWeak) {
+		String oldModifiedTimeWeak = modifiedTimeWeak;
+		modifiedTimeWeak = newModifiedTimeWeak;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IMESSAGE__MODIFIED_TIME_WEAK, oldModifiedTimeWeak, modifiedTimeWeak));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IClassifier getStereotypes() {
+		if (stereotypes != null && stereotypes.eIsProxy()) {
+			InternalEObject oldStereotypes = (InternalEObject)stereotypes;
+			stereotypes = (IClassifier)eResolveProxy(oldStereotypes);
+			if (stereotypes != oldStereotypes) {
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.IMESSAGE__STEREOTYPES, oldStereotypes, stereotypes));
+			}
+		}
+		return stereotypes;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IClassifier basicGetStereotypes() {
+		return stereotypes;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setStereotypes(IClassifier newStereotypes) {
+		IClassifier oldStereotypes = stereotypes;
+		stereotypes = newStereotypes;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IMESSAGE__STEREOTYPES, oldStereotypes, stereotypes));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<ITag> getTags() {
+		if (tags == null) {
+			tags = new EObjectContainmentEList.Resolving<ITag>(ITag.class, this, UMLRpyPackage.IMESSAGE__TAGS);
+		}
+		return tags;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IPropertyContainer getProperties() {
+		if (properties != null && properties.eIsProxy()) {
+			InternalEObject oldProperties = (InternalEObject)properties;
+			properties = (IPropertyContainer)eResolveProxy(oldProperties);
+			if (properties != oldProperties) {
+				InternalEObject newProperties = (InternalEObject)properties;
+				NotificationChain msgs = oldProperties.eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IMESSAGE__PROPERTIES, null, null);
+				if (newProperties.eInternalContainer() == null) {
+					msgs = newProperties.eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IMESSAGE__PROPERTIES, null, msgs);
+				}
+				if (msgs != null) msgs.dispatch();
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.IMESSAGE__PROPERTIES, oldProperties, properties));
+			}
+		}
+		return properties;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IPropertyContainer basicGetProperties() {
+		return properties;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public NotificationChain basicSetProperties(IPropertyContainer newProperties, NotificationChain msgs) {
+		IPropertyContainer oldProperties = properties;
+		properties = newProperties;
+		if (eNotificationRequired()) {
+			ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IMESSAGE__PROPERTIES, oldProperties, newProperties);
+			if (msgs == null) msgs = notification; else msgs.add(notification);
+		}
+		return msgs;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setProperties(IPropertyContainer newProperties) {
+		if (newProperties != properties) {
+			NotificationChain msgs = null;
+			if (properties != null)
+				msgs = ((InternalEObject)properties).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IMESSAGE__PROPERTIES, null, msgs);
+			if (newProperties != null)
+				msgs = ((InternalEObject)newProperties).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IMESSAGE__PROPERTIES, null, msgs);
+			msgs = basicSetProperties(newProperties, msgs);
+			if (msgs != null) msgs.dispatch();
+		}
+		else if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IMESSAGE__PROPERTIES, newProperties, newProperties));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IModelElement getM_targetExec() {
+		if (m_targetExec != null && m_targetExec.eIsProxy()) {
+			InternalEObject oldM_targetExec = (InternalEObject)m_targetExec;
+			m_targetExec = (IModelElement)eResolveProxy(oldM_targetExec);
+			if (m_targetExec != oldM_targetExec) {
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.IMESSAGE__MTARGET_EXEC, oldM_targetExec, m_targetExec));
+			}
+		}
+		return m_targetExec;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IModelElement basicGetM_targetExec() {
+		return m_targetExec;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_targetExec(IModelElement newM_targetExec) {
+		IModelElement oldM_targetExec = m_targetExec;
+		m_targetExec = newM_targetExec;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IMESSAGE__MTARGET_EXEC, oldM_targetExec, m_targetExec));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IModelElement getM_srcExec() {
+		if (m_srcExec != null && m_srcExec.eIsProxy()) {
+			InternalEObject oldM_srcExec = (InternalEObject)m_srcExec;
+			m_srcExec = (IModelElement)eResolveProxy(oldM_srcExec);
+			if (m_srcExec != oldM_srcExec) {
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.IMESSAGE__MSRC_EXEC, oldM_srcExec, m_srcExec));
+			}
+		}
+		return m_srcExec;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IModelElement basicGetM_srcExec() {
+		return m_srcExec;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_srcExec(IModelElement newM_srcExec) {
+		IModelElement oldM_srcExec = m_srcExec;
+		m_srcExec = newM_srcExec;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IMESSAGE__MSRC_EXEC, oldM_srcExec, m_srcExec));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getObjectCreation() {
+		return objectCreation;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setObjectCreation(String newObjectCreation) {
+		String oldObjectCreation = objectCreation;
+		objectCreation = newObjectCreation;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IMESSAGE__OBJECT_CREATION, oldObjectCreation, objectCreation));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getUmlDependencyID() {
+		return umlDependencyID;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setUmlDependencyID(String newUmlDependencyID) {
+		String oldUmlDependencyID = umlDependencyID;
+		umlDependencyID = newUmlDependencyID;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IMESSAGE__UML_DEPENDENCY_ID, oldUmlDependencyID, umlDependencyID));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
+		switch (featureID) {
+			case UMLRpyPackage.IMESSAGE__TAGS:
+				return ((InternalEList<?>)getTags()).basicRemove(otherEnd, msgs);
+			case UMLRpyPackage.IMESSAGE__PROPERTIES:
+				return basicSetProperties(null, msgs);
+		}
+		return super.eInverseRemove(otherEnd, featureID, msgs);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object eGet(int featureID, boolean resolve, boolean coreType) {
+		switch (featureID) {
+			case UMLRpyPackage.IMESSAGE__ID:
+				return getId();
+			case UMLRpyPackage.IMESSAGE__MY_STATE:
+				return getMyState();
+			case UMLRpyPackage.IMESSAGE__NAME:
+				return getName();
+			case UMLRpyPackage.IMESSAGE__MSZ_SEQUENCE:
+				return getM_szSequence();
+			case UMLRpyPackage.IMESSAGE__MSZ_ACTUAL_ARGS:
+				return getM_szActualArgs();
+			case UMLRpyPackage.IMESSAGE__MSZ_RETURN_VAL:
+				return getM_szReturnVal();
+			case UMLRpyPackage.IMESSAGE__MPRECEIVER:
+				if (resolve) return getM_pReceiver();
+				return basicGetM_pReceiver();
+			case UMLRpyPackage.IMESSAGE__MPSENDER:
+				if (resolve) return getM_pSender();
+				return basicGetM_pSender();
+			case UMLRpyPackage.IMESSAGE__MPFORMAL_MESSAGE:
+				if (resolve) return getM_pFormalMessage();
+				return basicGetM_pFormalMessage();
+			case UMLRpyPackage.IMESSAGE__METYPE:
+				return getM_eType();
+			case UMLRpyPackage.IMESSAGE__MPCOMMUNICATION_CONNECTION:
+				if (resolve) return getM_pCommunicationConnection();
+				return basicGetM_pCommunicationConnection();
+			case UMLRpyPackage.IMESSAGE__MFREE_TEXT:
+				return getM_freeText();
+			case UMLRpyPackage.IMESSAGE__MODIFIED_TIME_WEAK:
+				return getModifiedTimeWeak();
+			case UMLRpyPackage.IMESSAGE__STEREOTYPES:
+				if (resolve) return getStereotypes();
+				return basicGetStereotypes();
+			case UMLRpyPackage.IMESSAGE__TAGS:
+				return getTags();
+			case UMLRpyPackage.IMESSAGE__PROPERTIES:
+				if (resolve) return getProperties();
+				return basicGetProperties();
+			case UMLRpyPackage.IMESSAGE__MTARGET_EXEC:
+				if (resolve) return getM_targetExec();
+				return basicGetM_targetExec();
+			case UMLRpyPackage.IMESSAGE__MSRC_EXEC:
+				if (resolve) return getM_srcExec();
+				return basicGetM_srcExec();
+			case UMLRpyPackage.IMESSAGE__OBJECT_CREATION:
+				return getObjectCreation();
+			case UMLRpyPackage.IMESSAGE__UML_DEPENDENCY_ID:
+				return getUmlDependencyID();
+		}
+		return super.eGet(featureID, resolve, coreType);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@SuppressWarnings("unchecked")
+	@Override
+	public void eSet(int featureID, Object newValue) {
+		switch (featureID) {
+			case UMLRpyPackage.IMESSAGE__ID:
+				setId((String)newValue);
+				return;
+			case UMLRpyPackage.IMESSAGE__MY_STATE:
+				setMyState((String)newValue);
+				return;
+			case UMLRpyPackage.IMESSAGE__NAME:
+				setName((String)newValue);
+				return;
+			case UMLRpyPackage.IMESSAGE__MSZ_SEQUENCE:
+				setM_szSequence((String)newValue);
+				return;
+			case UMLRpyPackage.IMESSAGE__MSZ_ACTUAL_ARGS:
+				setM_szActualArgs((String)newValue);
+				return;
+			case UMLRpyPackage.IMESSAGE__MSZ_RETURN_VAL:
+				setM_szReturnVal((String)newValue);
+				return;
+			case UMLRpyPackage.IMESSAGE__MPRECEIVER:
+				setM_pReceiver((IClassifierRole)newValue);
+				return;
+			case UMLRpyPackage.IMESSAGE__MPSENDER:
+				setM_pSender((IClassifierRole)newValue);
+				return;
+			case UMLRpyPackage.IMESSAGE__MPFORMAL_MESSAGE:
+				setM_pFormalMessage((M_pFormalMessageType)newValue);
+				return;
+			case UMLRpyPackage.IMESSAGE__METYPE:
+				setM_eType((String)newValue);
+				return;
+			case UMLRpyPackage.IMESSAGE__MPCOMMUNICATION_CONNECTION:
+				setM_pCommunicationConnection((IModelElement)newValue);
+				return;
+			case UMLRpyPackage.IMESSAGE__MFREE_TEXT:
+				setM_freeText((String)newValue);
+				return;
+			case UMLRpyPackage.IMESSAGE__MODIFIED_TIME_WEAK:
+				setModifiedTimeWeak((String)newValue);
+				return;
+			case UMLRpyPackage.IMESSAGE__STEREOTYPES:
+				setStereotypes((IClassifier)newValue);
+				return;
+			case UMLRpyPackage.IMESSAGE__TAGS:
+				getTags().clear();
+				getTags().addAll((Collection<? extends ITag>)newValue);
+				return;
+			case UMLRpyPackage.IMESSAGE__PROPERTIES:
+				setProperties((IPropertyContainer)newValue);
+				return;
+			case UMLRpyPackage.IMESSAGE__MTARGET_EXEC:
+				setM_targetExec((IModelElement)newValue);
+				return;
+			case UMLRpyPackage.IMESSAGE__MSRC_EXEC:
+				setM_srcExec((IModelElement)newValue);
+				return;
+			case UMLRpyPackage.IMESSAGE__OBJECT_CREATION:
+				setObjectCreation((String)newValue);
+				return;
+			case UMLRpyPackage.IMESSAGE__UML_DEPENDENCY_ID:
+				setUmlDependencyID((String)newValue);
+				return;
+		}
+		super.eSet(featureID, newValue);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void eUnset(int featureID) {
+		switch (featureID) {
+			case UMLRpyPackage.IMESSAGE__ID:
+				setId(ID_EDEFAULT);
+				return;
+			case UMLRpyPackage.IMESSAGE__MY_STATE:
+				setMyState(MY_STATE_EDEFAULT);
+				return;
+			case UMLRpyPackage.IMESSAGE__NAME:
+				setName(NAME_EDEFAULT);
+				return;
+			case UMLRpyPackage.IMESSAGE__MSZ_SEQUENCE:
+				setM_szSequence(MSZ_SEQUENCE_EDEFAULT);
+				return;
+			case UMLRpyPackage.IMESSAGE__MSZ_ACTUAL_ARGS:
+				setM_szActualArgs(MSZ_ACTUAL_ARGS_EDEFAULT);
+				return;
+			case UMLRpyPackage.IMESSAGE__MSZ_RETURN_VAL:
+				setM_szReturnVal(MSZ_RETURN_VAL_EDEFAULT);
+				return;
+			case UMLRpyPackage.IMESSAGE__MPRECEIVER:
+				setM_pReceiver((IClassifierRole)null);
+				return;
+			case UMLRpyPackage.IMESSAGE__MPSENDER:
+				setM_pSender((IClassifierRole)null);
+				return;
+			case UMLRpyPackage.IMESSAGE__MPFORMAL_MESSAGE:
+				setM_pFormalMessage((M_pFormalMessageType)null);
+				return;
+			case UMLRpyPackage.IMESSAGE__METYPE:
+				setM_eType(METYPE_EDEFAULT);
+				return;
+			case UMLRpyPackage.IMESSAGE__MPCOMMUNICATION_CONNECTION:
+				setM_pCommunicationConnection((IModelElement)null);
+				return;
+			case UMLRpyPackage.IMESSAGE__MFREE_TEXT:
+				setM_freeText(MFREE_TEXT_EDEFAULT);
+				return;
+			case UMLRpyPackage.IMESSAGE__MODIFIED_TIME_WEAK:
+				setModifiedTimeWeak(MODIFIED_TIME_WEAK_EDEFAULT);
+				return;
+			case UMLRpyPackage.IMESSAGE__STEREOTYPES:
+				setStereotypes((IClassifier)null);
+				return;
+			case UMLRpyPackage.IMESSAGE__TAGS:
+				getTags().clear();
+				return;
+			case UMLRpyPackage.IMESSAGE__PROPERTIES:
+				setProperties((IPropertyContainer)null);
+				return;
+			case UMLRpyPackage.IMESSAGE__MTARGET_EXEC:
+				setM_targetExec((IModelElement)null);
+				return;
+			case UMLRpyPackage.IMESSAGE__MSRC_EXEC:
+				setM_srcExec((IModelElement)null);
+				return;
+			case UMLRpyPackage.IMESSAGE__OBJECT_CREATION:
+				setObjectCreation(OBJECT_CREATION_EDEFAULT);
+				return;
+			case UMLRpyPackage.IMESSAGE__UML_DEPENDENCY_ID:
+				setUmlDependencyID(UML_DEPENDENCY_ID_EDEFAULT);
+				return;
+		}
+		super.eUnset(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public boolean eIsSet(int featureID) {
+		switch (featureID) {
+			case UMLRpyPackage.IMESSAGE__ID:
+				return ID_EDEFAULT == null ? id != null : !ID_EDEFAULT.equals(id);
+			case UMLRpyPackage.IMESSAGE__MY_STATE:
+				return MY_STATE_EDEFAULT == null ? myState != null : !MY_STATE_EDEFAULT.equals(myState);
+			case UMLRpyPackage.IMESSAGE__NAME:
+				return NAME_EDEFAULT == null ? name != null : !NAME_EDEFAULT.equals(name);
+			case UMLRpyPackage.IMESSAGE__MSZ_SEQUENCE:
+				return MSZ_SEQUENCE_EDEFAULT == null ? m_szSequence != null : !MSZ_SEQUENCE_EDEFAULT.equals(m_szSequence);
+			case UMLRpyPackage.IMESSAGE__MSZ_ACTUAL_ARGS:
+				return MSZ_ACTUAL_ARGS_EDEFAULT == null ? m_szActualArgs != null : !MSZ_ACTUAL_ARGS_EDEFAULT.equals(m_szActualArgs);
+			case UMLRpyPackage.IMESSAGE__MSZ_RETURN_VAL:
+				return MSZ_RETURN_VAL_EDEFAULT == null ? m_szReturnVal != null : !MSZ_RETURN_VAL_EDEFAULT.equals(m_szReturnVal);
+			case UMLRpyPackage.IMESSAGE__MPRECEIVER:
+				return m_pReceiver != null;
+			case UMLRpyPackage.IMESSAGE__MPSENDER:
+				return m_pSender != null;
+			case UMLRpyPackage.IMESSAGE__MPFORMAL_MESSAGE:
+				return m_pFormalMessage != null;
+			case UMLRpyPackage.IMESSAGE__METYPE:
+				return METYPE_EDEFAULT == null ? m_eType != null : !METYPE_EDEFAULT.equals(m_eType);
+			case UMLRpyPackage.IMESSAGE__MPCOMMUNICATION_CONNECTION:
+				return m_pCommunicationConnection != null;
+			case UMLRpyPackage.IMESSAGE__MFREE_TEXT:
+				return MFREE_TEXT_EDEFAULT == null ? m_freeText != null : !MFREE_TEXT_EDEFAULT.equals(m_freeText);
+			case UMLRpyPackage.IMESSAGE__MODIFIED_TIME_WEAK:
+				return MODIFIED_TIME_WEAK_EDEFAULT == null ? modifiedTimeWeak != null : !MODIFIED_TIME_WEAK_EDEFAULT.equals(modifiedTimeWeak);
+			case UMLRpyPackage.IMESSAGE__STEREOTYPES:
+				return stereotypes != null;
+			case UMLRpyPackage.IMESSAGE__TAGS:
+				return tags != null && !tags.isEmpty();
+			case UMLRpyPackage.IMESSAGE__PROPERTIES:
+				return properties != null;
+			case UMLRpyPackage.IMESSAGE__MTARGET_EXEC:
+				return m_targetExec != null;
+			case UMLRpyPackage.IMESSAGE__MSRC_EXEC:
+				return m_srcExec != null;
+			case UMLRpyPackage.IMESSAGE__OBJECT_CREATION:
+				return OBJECT_CREATION_EDEFAULT == null ? objectCreation != null : !OBJECT_CREATION_EDEFAULT.equals(objectCreation);
+			case UMLRpyPackage.IMESSAGE__UML_DEPENDENCY_ID:
+				return UML_DEPENDENCY_ID_EDEFAULT == null ? umlDependencyID != null : !UML_DEPENDENCY_ID_EDEFAULT.equals(umlDependencyID);
+		}
+		return super.eIsSet(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String toString() {
+		if (eIsProxy()) return super.toString();
+
+		StringBuffer result = new StringBuffer(super.toString());
+		result.append(" (id: "); //$NON-NLS-1$
+		result.append(id);
+		result.append(", myState: "); //$NON-NLS-1$
+		result.append(myState);
+		result.append(", name: "); //$NON-NLS-1$
+		result.append(name);
+		result.append(", m_szSequence: "); //$NON-NLS-1$
+		result.append(m_szSequence);
+		result.append(", m_szActualArgs: "); //$NON-NLS-1$
+		result.append(m_szActualArgs);
+		result.append(", m_szReturnVal: "); //$NON-NLS-1$
+		result.append(m_szReturnVal);
+		result.append(", m_eType: "); //$NON-NLS-1$
+		result.append(m_eType);
+		result.append(", m_freeText: "); //$NON-NLS-1$
+		result.append(m_freeText);
+		result.append(", modifiedTimeWeak: "); //$NON-NLS-1$
+		result.append(modifiedTimeWeak);
+		result.append(", objectCreation: "); //$NON-NLS-1$
+		result.append(objectCreation);
+		result.append(", umlDependencyID: "); //$NON-NLS-1$
+		result.append(umlDependencyID);
+		result.append(')');
+		return result.toString();
+	}
+
+} //IMessageImpl
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/IMessagePointImpl.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/IMessagePointImpl.java
new file mode 100755
index 0000000..5631290
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/IMessagePointImpl.java
@@ -0,0 +1,47 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl;
+
+import org.eclipse.emf.ecore.EClass;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMessagePoint;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>IMessage Point</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+public class IMessagePointImpl extends IModelElementImpl implements IMessagePoint {
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected IMessagePointImpl() {
+		super();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EClass eStaticClass() {
+		return UMLRpyPackage.eINSTANCE.getIMessagePoint();
+	}
+
+} //IMessagePointImpl
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/IMetaLinkHandleImpl.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/IMetaLinkHandleImpl.java
new file mode 100755
index 0000000..d85f5a6
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/IMetaLinkHandleImpl.java
@@ -0,0 +1,442 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl;
+
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.ecore.EClass;
+
+import org.eclipse.emf.ecore.impl.ENotificationImpl;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMetaLinkHandle;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>IMeta Link Handle</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * </p>
+ * <ul>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IMetaLinkHandleImpl#getM2Class <em>M2 Class</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IMetaLinkHandleImpl#getFilename <em>Filename</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IMetaLinkHandleImpl#getSubsystem <em>Subsystem</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IMetaLinkHandleImpl#getClass_ <em>Class</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IMetaLinkHandleImpl#getName <em>Name</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IMetaLinkHandleImpl#getId <em>Id</em>}</li>
+ * </ul>
+ *
+ * @generated
+ */
+public class IMetaLinkHandleImpl extends InverseTypeImpl implements IMetaLinkHandle {
+	/**
+	 * The default value of the '{@link #getM2Class() <em>M2 Class</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM2Class()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String M2_CLASS_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getM2Class() <em>M2 Class</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM2Class()
+	 * @generated
+	 * @ordered
+	 */
+	protected String m2Class = M2_CLASS_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getFilename() <em>Filename</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getFilename()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String FILENAME_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getFilename() <em>Filename</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getFilename()
+	 * @generated
+	 * @ordered
+	 */
+	protected String filename = FILENAME_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getSubsystem() <em>Subsystem</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getSubsystem()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String SUBSYSTEM_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getSubsystem() <em>Subsystem</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getSubsystem()
+	 * @generated
+	 * @ordered
+	 */
+	protected String subsystem = SUBSYSTEM_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getClass_() <em>Class</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getClass_()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String CLASS_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getClass_() <em>Class</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getClass_()
+	 * @generated
+	 * @ordered
+	 */
+	protected String class_ = CLASS_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getName() <em>Name</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getName()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String NAME_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getName() <em>Name</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getName()
+	 * @generated
+	 * @ordered
+	 */
+	protected String name = NAME_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getId() <em>Id</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getId()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String ID_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getId() <em>Id</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getId()
+	 * @generated
+	 * @ordered
+	 */
+	protected String id = ID_EDEFAULT;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected IMetaLinkHandleImpl() {
+		super();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EClass eStaticClass() {
+		return UMLRpyPackage.eINSTANCE.getIMetaLinkHandle();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getM2Class() {
+		return m2Class;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM2Class(String newM2Class) {
+		String oldM2Class = m2Class;
+		m2Class = newM2Class;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IMETA_LINK_HANDLE__M2_CLASS, oldM2Class, m2Class));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getFilename() {
+		return filename;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setFilename(String newFilename) {
+		String oldFilename = filename;
+		filename = newFilename;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IMETA_LINK_HANDLE__FILENAME, oldFilename, filename));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getSubsystem() {
+		return subsystem;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setSubsystem(String newSubsystem) {
+		String oldSubsystem = subsystem;
+		subsystem = newSubsystem;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IMETA_LINK_HANDLE__SUBSYSTEM, oldSubsystem, subsystem));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getClass_() {
+		return class_;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setClass(String newClass) {
+		String oldClass = class_;
+		class_ = newClass;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IMETA_LINK_HANDLE__CLASS, oldClass, class_));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getName() {
+		return name;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setName(String newName) {
+		String oldName = name;
+		name = newName;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IMETA_LINK_HANDLE__NAME, oldName, name));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getId() {
+		return id;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setId(String newId) {
+		String oldId = id;
+		id = newId;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IMETA_LINK_HANDLE__ID, oldId, id));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object eGet(int featureID, boolean resolve, boolean coreType) {
+		switch (featureID) {
+			case UMLRpyPackage.IMETA_LINK_HANDLE__M2_CLASS:
+				return getM2Class();
+			case UMLRpyPackage.IMETA_LINK_HANDLE__FILENAME:
+				return getFilename();
+			case UMLRpyPackage.IMETA_LINK_HANDLE__SUBSYSTEM:
+				return getSubsystem();
+			case UMLRpyPackage.IMETA_LINK_HANDLE__CLASS:
+				return getClass_();
+			case UMLRpyPackage.IMETA_LINK_HANDLE__NAME:
+				return getName();
+			case UMLRpyPackage.IMETA_LINK_HANDLE__ID:
+				return getId();
+		}
+		return super.eGet(featureID, resolve, coreType);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void eSet(int featureID, Object newValue) {
+		switch (featureID) {
+			case UMLRpyPackage.IMETA_LINK_HANDLE__M2_CLASS:
+				setM2Class((String)newValue);
+				return;
+			case UMLRpyPackage.IMETA_LINK_HANDLE__FILENAME:
+				setFilename((String)newValue);
+				return;
+			case UMLRpyPackage.IMETA_LINK_HANDLE__SUBSYSTEM:
+				setSubsystem((String)newValue);
+				return;
+			case UMLRpyPackage.IMETA_LINK_HANDLE__CLASS:
+				setClass((String)newValue);
+				return;
+			case UMLRpyPackage.IMETA_LINK_HANDLE__NAME:
+				setName((String)newValue);
+				return;
+			case UMLRpyPackage.IMETA_LINK_HANDLE__ID:
+				setId((String)newValue);
+				return;
+		}
+		super.eSet(featureID, newValue);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void eUnset(int featureID) {
+		switch (featureID) {
+			case UMLRpyPackage.IMETA_LINK_HANDLE__M2_CLASS:
+				setM2Class(M2_CLASS_EDEFAULT);
+				return;
+			case UMLRpyPackage.IMETA_LINK_HANDLE__FILENAME:
+				setFilename(FILENAME_EDEFAULT);
+				return;
+			case UMLRpyPackage.IMETA_LINK_HANDLE__SUBSYSTEM:
+				setSubsystem(SUBSYSTEM_EDEFAULT);
+				return;
+			case UMLRpyPackage.IMETA_LINK_HANDLE__CLASS:
+				setClass(CLASS_EDEFAULT);
+				return;
+			case UMLRpyPackage.IMETA_LINK_HANDLE__NAME:
+				setName(NAME_EDEFAULT);
+				return;
+			case UMLRpyPackage.IMETA_LINK_HANDLE__ID:
+				setId(ID_EDEFAULT);
+				return;
+		}
+		super.eUnset(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public boolean eIsSet(int featureID) {
+		switch (featureID) {
+			case UMLRpyPackage.IMETA_LINK_HANDLE__M2_CLASS:
+				return M2_CLASS_EDEFAULT == null ? m2Class != null : !M2_CLASS_EDEFAULT.equals(m2Class);
+			case UMLRpyPackage.IMETA_LINK_HANDLE__FILENAME:
+				return FILENAME_EDEFAULT == null ? filename != null : !FILENAME_EDEFAULT.equals(filename);
+			case UMLRpyPackage.IMETA_LINK_HANDLE__SUBSYSTEM:
+				return SUBSYSTEM_EDEFAULT == null ? subsystem != null : !SUBSYSTEM_EDEFAULT.equals(subsystem);
+			case UMLRpyPackage.IMETA_LINK_HANDLE__CLASS:
+				return CLASS_EDEFAULT == null ? class_ != null : !CLASS_EDEFAULT.equals(class_);
+			case UMLRpyPackage.IMETA_LINK_HANDLE__NAME:
+				return NAME_EDEFAULT == null ? name != null : !NAME_EDEFAULT.equals(name);
+			case UMLRpyPackage.IMETA_LINK_HANDLE__ID:
+				return ID_EDEFAULT == null ? id != null : !ID_EDEFAULT.equals(id);
+		}
+		return super.eIsSet(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String toString() {
+		if (eIsProxy()) return super.toString();
+
+		StringBuffer result = new StringBuffer(super.toString());
+		result.append(" (m2Class: "); //$NON-NLS-1$
+		result.append(m2Class);
+		result.append(", filename: "); //$NON-NLS-1$
+		result.append(filename);
+		result.append(", subsystem: "); //$NON-NLS-1$
+		result.append(subsystem);
+		result.append(", class: "); //$NON-NLS-1$
+		result.append(class_);
+		result.append(", name: "); //$NON-NLS-1$
+		result.append(name);
+		result.append(", id: "); //$NON-NLS-1$
+		result.append(id);
+		result.append(')');
+		return result.toString();
+	}
+
+} //IMetaLinkHandleImpl
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/IModelElementImpl.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/IModelElementImpl.java
new file mode 100755
index 0000000..9451491
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/IModelElementImpl.java
@@ -0,0 +1,171 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl;
+
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.impl.EModelElementImpl;
+import org.eclipse.emf.ecore.impl.ENotificationImpl;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IModelElement;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>IModel Element</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * </p>
+ * <ul>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IModelElementImpl#getDisplayName <em>Display Name</em>}</li>
+ * </ul>
+ *
+ * @generated
+ */
+public class IModelElementImpl extends EModelElementImpl implements IModelElement {
+	/**
+	 * The default value of the '{@link #getDisplayName() <em>Display Name</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getDisplayName()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String DISPLAY_NAME_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getDisplayName() <em>Display Name</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getDisplayName()
+	 * @generated
+	 * @ordered
+	 */
+	protected String displayName = DISPLAY_NAME_EDEFAULT;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected IModelElementImpl() {
+		super();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EClass eStaticClass() {
+		return UMLRpyPackage.eINSTANCE.getIModelElement();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getDisplayName() {
+		return displayName;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setDisplayName(String newDisplayName) {
+		String oldDisplayName = displayName;
+		displayName = newDisplayName;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IMODEL_ELEMENT__DISPLAY_NAME, oldDisplayName, displayName));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object eGet(int featureID, boolean resolve, boolean coreType) {
+		switch (featureID) {
+			case UMLRpyPackage.IMODEL_ELEMENT__DISPLAY_NAME:
+				return getDisplayName();
+		}
+		return super.eGet(featureID, resolve, coreType);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void eSet(int featureID, Object newValue) {
+		switch (featureID) {
+			case UMLRpyPackage.IMODEL_ELEMENT__DISPLAY_NAME:
+				setDisplayName((String)newValue);
+				return;
+		}
+		super.eSet(featureID, newValue);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void eUnset(int featureID) {
+		switch (featureID) {
+			case UMLRpyPackage.IMODEL_ELEMENT__DISPLAY_NAME:
+				setDisplayName(DISPLAY_NAME_EDEFAULT);
+				return;
+		}
+		super.eUnset(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public boolean eIsSet(int featureID) {
+		switch (featureID) {
+			case UMLRpyPackage.IMODEL_ELEMENT__DISPLAY_NAME:
+				return DISPLAY_NAME_EDEFAULT == null ? displayName != null : !DISPLAY_NAME_EDEFAULT.equals(displayName);
+		}
+		return super.eIsSet(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String toString() {
+		if (eIsProxy()) return super.toString();
+
+		StringBuffer result = new StringBuffer(super.toString());
+		result.append(" (displayName: "); //$NON-NLS-1$
+		result.append(displayName);
+		result.append(')');
+		return result.toString();
+	}
+
+} //IModelElementImpl
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/IModuleImpl.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/IModuleImpl.java
new file mode 100755
index 0000000..968d879
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/IModuleImpl.java
@@ -0,0 +1,832 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl;
+
+import java.util.Collection;
+
+import org.eclipse.emf.common.notify.Notification;
+import org.eclipse.emf.common.notify.NotificationChain;
+
+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.EObjectContainmentEList;
+import org.eclipse.emf.ecore.util.InternalEList;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.AssociationsType;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.DependsOnType;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ElementsType;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.End1_Type;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.End2_Type;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IClass;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IDescription;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMHyperLink;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IModule;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IPropertyContainer;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IStereotype;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.InverseType;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.M_pModelObjectType;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>IModule</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * </p>
+ * <ul>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IModuleImpl#getMultiplicity <em>Multiplicity</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IModuleImpl#getStereotypes <em>Stereotypes</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IModuleImpl#getDescription <em>Description</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IModuleImpl#getHyperLinks <em>Hyper Links</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IModuleImpl#getOtherClass <em>Other Class</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IModuleImpl#getImplicitClass <em>Implicit Class</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IModuleImpl#getProperties <em>Properties</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IModuleImpl#getRequiremenTracabilityHandle <em>Requiremen Tracability Handle</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IModuleImpl#getPartKind <em>Part Kind</em>}</li>
+ * </ul>
+ *
+ * @generated
+ */
+public class IModuleImpl extends IInstanceImpl implements IModule {
+	/**
+	 * The default value of the '{@link #getMultiplicity() <em>Multiplicity</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getMultiplicity()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String MULTIPLICITY_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getMultiplicity() <em>Multiplicity</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getMultiplicity()
+	 * @generated
+	 * @ordered
+	 */
+	protected String multiplicity = MULTIPLICITY_EDEFAULT;
+
+	/**
+	 * The cached value of the '{@link #getStereotypes() <em>Stereotypes</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getStereotypes()
+	 * @generated
+	 * @ordered
+	 */
+	protected IStereotype stereotypes;
+
+	/**
+	 * The cached value of the '{@link #getDescription() <em>Description</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getDescription()
+	 * @generated
+	 * @ordered
+	 */
+	protected IDescription description;
+
+	/**
+	 * The cached value of the '{@link #getHyperLinks() <em>Hyper Links</em>}' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getHyperLinks()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<IMHyperLink> hyperLinks;
+
+	/**
+	 * The cached value of the '{@link #getOtherClass() <em>Other Class</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getOtherClass()
+	 * @generated
+	 * @ordered
+	 */
+	protected IClass otherClass;
+
+	/**
+	 * The cached value of the '{@link #getImplicitClass() <em>Implicit Class</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getImplicitClass()
+	 * @generated
+	 * @ordered
+	 */
+	protected IClass implicitClass;
+
+	/**
+	 * The cached value of the '{@link #getProperties() <em>Properties</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getProperties()
+	 * @generated
+	 * @ordered
+	 */
+	protected IPropertyContainer properties;
+
+	/**
+	 * The default value of the '{@link #getRequiremenTracabilityHandle() <em>Requiremen Tracability Handle</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getRequiremenTracabilityHandle()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String REQUIREMEN_TRACABILITY_HANDLE_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getRequiremenTracabilityHandle() <em>Requiremen Tracability Handle</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getRequiremenTracabilityHandle()
+	 * @generated
+	 * @ordered
+	 */
+	protected String requiremenTracabilityHandle = REQUIREMEN_TRACABILITY_HANDLE_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getPartKind() <em>Part Kind</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getPartKind()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String PART_KIND_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getPartKind() <em>Part Kind</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getPartKind()
+	 * @generated
+	 * @ordered
+	 */
+	protected String partKind = PART_KIND_EDEFAULT;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected IModuleImpl() {
+		super();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EClass eStaticClass() {
+		return UMLRpyPackage.eINSTANCE.getIModule();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getMultiplicity() {
+		return multiplicity;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setMultiplicity(String newMultiplicity) {
+		String oldMultiplicity = multiplicity;
+		multiplicity = newMultiplicity;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IMODULE__MULTIPLICITY, oldMultiplicity, multiplicity));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IStereotype getStereotypes() {
+		if (stereotypes != null && stereotypes.eIsProxy()) {
+			InternalEObject oldStereotypes = (InternalEObject)stereotypes;
+			stereotypes = (IStereotype)eResolveProxy(oldStereotypes);
+			if (stereotypes != oldStereotypes) {
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.IMODULE__STEREOTYPES, oldStereotypes, stereotypes));
+			}
+		}
+		return stereotypes;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IStereotype basicGetStereotypes() {
+		return stereotypes;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setStereotypes(IStereotype newStereotypes) {
+		IStereotype oldStereotypes = stereotypes;
+		stereotypes = newStereotypes;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IMODULE__STEREOTYPES, oldStereotypes, stereotypes));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IDescription getDescription() {
+		if (description != null && description.eIsProxy()) {
+			InternalEObject oldDescription = (InternalEObject)description;
+			description = (IDescription)eResolveProxy(oldDescription);
+			if (description != oldDescription) {
+				InternalEObject newDescription = (InternalEObject)description;
+				NotificationChain msgs = oldDescription.eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IMODULE__DESCRIPTION, null, null);
+				if (newDescription.eInternalContainer() == null) {
+					msgs = newDescription.eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IMODULE__DESCRIPTION, null, msgs);
+				}
+				if (msgs != null) msgs.dispatch();
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.IMODULE__DESCRIPTION, oldDescription, description));
+			}
+		}
+		return description;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IDescription basicGetDescription() {
+		return description;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public NotificationChain basicSetDescription(IDescription newDescription, NotificationChain msgs) {
+		IDescription oldDescription = description;
+		description = newDescription;
+		if (eNotificationRequired()) {
+			ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IMODULE__DESCRIPTION, oldDescription, newDescription);
+			if (msgs == null) msgs = notification; else msgs.add(notification);
+		}
+		return msgs;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setDescription(IDescription newDescription) {
+		if (newDescription != description) {
+			NotificationChain msgs = null;
+			if (description != null)
+				msgs = ((InternalEObject)description).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IMODULE__DESCRIPTION, null, msgs);
+			if (newDescription != null)
+				msgs = ((InternalEObject)newDescription).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IMODULE__DESCRIPTION, null, msgs);
+			msgs = basicSetDescription(newDescription, msgs);
+			if (msgs != null) msgs.dispatch();
+		}
+		else if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IMODULE__DESCRIPTION, newDescription, newDescription));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<IMHyperLink> getHyperLinks() {
+		if (hyperLinks == null) {
+			hyperLinks = new EObjectContainmentEList.Resolving<IMHyperLink>(IMHyperLink.class, this, UMLRpyPackage.IMODULE__HYPER_LINKS);
+		}
+		return hyperLinks;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IClass getOtherClass() {
+		if (otherClass != null && otherClass.eIsProxy()) {
+			InternalEObject oldOtherClass = (InternalEObject)otherClass;
+			otherClass = (IClass)eResolveProxy(oldOtherClass);
+			if (otherClass != oldOtherClass) {
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.IMODULE__OTHER_CLASS, oldOtherClass, otherClass));
+			}
+		}
+		return otherClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IClass basicGetOtherClass() {
+		return otherClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setOtherClass(IClass newOtherClass) {
+		IClass oldOtherClass = otherClass;
+		otherClass = newOtherClass;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IMODULE__OTHER_CLASS, oldOtherClass, otherClass));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IClass getImplicitClass() {
+		if (implicitClass != null && implicitClass.eIsProxy()) {
+			InternalEObject oldImplicitClass = (InternalEObject)implicitClass;
+			implicitClass = (IClass)eResolveProxy(oldImplicitClass);
+			if (implicitClass != oldImplicitClass) {
+				InternalEObject newImplicitClass = (InternalEObject)implicitClass;
+				NotificationChain msgs = oldImplicitClass.eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IMODULE__IMPLICIT_CLASS, null, null);
+				if (newImplicitClass.eInternalContainer() == null) {
+					msgs = newImplicitClass.eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IMODULE__IMPLICIT_CLASS, null, msgs);
+				}
+				if (msgs != null) msgs.dispatch();
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.IMODULE__IMPLICIT_CLASS, oldImplicitClass, implicitClass));
+			}
+		}
+		return implicitClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IClass basicGetImplicitClass() {
+		return implicitClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public NotificationChain basicSetImplicitClass(IClass newImplicitClass, NotificationChain msgs) {
+		IClass oldImplicitClass = implicitClass;
+		implicitClass = newImplicitClass;
+		if (eNotificationRequired()) {
+			ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IMODULE__IMPLICIT_CLASS, oldImplicitClass, newImplicitClass);
+			if (msgs == null) msgs = notification; else msgs.add(notification);
+		}
+		return msgs;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setImplicitClass(IClass newImplicitClass) {
+		if (newImplicitClass != implicitClass) {
+			NotificationChain msgs = null;
+			if (implicitClass != null)
+				msgs = ((InternalEObject)implicitClass).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IMODULE__IMPLICIT_CLASS, null, msgs);
+			if (newImplicitClass != null)
+				msgs = ((InternalEObject)newImplicitClass).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IMODULE__IMPLICIT_CLASS, null, msgs);
+			msgs = basicSetImplicitClass(newImplicitClass, msgs);
+			if (msgs != null) msgs.dispatch();
+		}
+		else if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IMODULE__IMPLICIT_CLASS, newImplicitClass, newImplicitClass));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IPropertyContainer getProperties() {
+		if (properties != null && properties.eIsProxy()) {
+			InternalEObject oldProperties = (InternalEObject)properties;
+			properties = (IPropertyContainer)eResolveProxy(oldProperties);
+			if (properties != oldProperties) {
+				InternalEObject newProperties = (InternalEObject)properties;
+				NotificationChain msgs = oldProperties.eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IMODULE__PROPERTIES, null, null);
+				if (newProperties.eInternalContainer() == null) {
+					msgs = newProperties.eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IMODULE__PROPERTIES, null, msgs);
+				}
+				if (msgs != null) msgs.dispatch();
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.IMODULE__PROPERTIES, oldProperties, properties));
+			}
+		}
+		return properties;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IPropertyContainer basicGetProperties() {
+		return properties;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public NotificationChain basicSetProperties(IPropertyContainer newProperties, NotificationChain msgs) {
+		IPropertyContainer oldProperties = properties;
+		properties = newProperties;
+		if (eNotificationRequired()) {
+			ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IMODULE__PROPERTIES, oldProperties, newProperties);
+			if (msgs == null) msgs = notification; else msgs.add(notification);
+		}
+		return msgs;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setProperties(IPropertyContainer newProperties) {
+		if (newProperties != properties) {
+			NotificationChain msgs = null;
+			if (properties != null)
+				msgs = ((InternalEObject)properties).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IMODULE__PROPERTIES, null, msgs);
+			if (newProperties != null)
+				msgs = ((InternalEObject)newProperties).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IMODULE__PROPERTIES, null, msgs);
+			msgs = basicSetProperties(newProperties, msgs);
+			if (msgs != null) msgs.dispatch();
+		}
+		else if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IMODULE__PROPERTIES, newProperties, newProperties));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getRequiremenTracabilityHandle() {
+		return requiremenTracabilityHandle;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setRequiremenTracabilityHandle(String newRequiremenTracabilityHandle) {
+		String oldRequiremenTracabilityHandle = requiremenTracabilityHandle;
+		requiremenTracabilityHandle = newRequiremenTracabilityHandle;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IMODULE__REQUIREMEN_TRACABILITY_HANDLE, oldRequiremenTracabilityHandle, requiremenTracabilityHandle));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getPartKind() {
+		return partKind;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setPartKind(String newPartKind) {
+		String oldPartKind = partKind;
+		partKind = newPartKind;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IMODULE__PART_KIND, oldPartKind, partKind));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
+		switch (featureID) {
+			case UMLRpyPackage.IMODULE__DESCRIPTION:
+				return basicSetDescription(null, msgs);
+			case UMLRpyPackage.IMODULE__HYPER_LINKS:
+				return ((InternalEList<?>)getHyperLinks()).basicRemove(otherEnd, msgs);
+			case UMLRpyPackage.IMODULE__IMPLICIT_CLASS:
+				return basicSetImplicitClass(null, msgs);
+			case UMLRpyPackage.IMODULE__PROPERTIES:
+				return basicSetProperties(null, msgs);
+		}
+		return super.eInverseRemove(otherEnd, featureID, msgs);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object eGet(int featureID, boolean resolve, boolean coreType) {
+		switch (featureID) {
+			case UMLRpyPackage.IMODULE__MULTIPLICITY:
+				return getMultiplicity();
+			case UMLRpyPackage.IMODULE__STEREOTYPES:
+				if (resolve) return getStereotypes();
+				return basicGetStereotypes();
+			case UMLRpyPackage.IMODULE__DESCRIPTION:
+				if (resolve) return getDescription();
+				return basicGetDescription();
+			case UMLRpyPackage.IMODULE__HYPER_LINKS:
+				return getHyperLinks();
+			case UMLRpyPackage.IMODULE__OTHER_CLASS:
+				if (resolve) return getOtherClass();
+				return basicGetOtherClass();
+			case UMLRpyPackage.IMODULE__IMPLICIT_CLASS:
+				if (resolve) return getImplicitClass();
+				return basicGetImplicitClass();
+			case UMLRpyPackage.IMODULE__PROPERTIES:
+				if (resolve) return getProperties();
+				return basicGetProperties();
+			case UMLRpyPackage.IMODULE__REQUIREMEN_TRACABILITY_HANDLE:
+				return getRequiremenTracabilityHandle();
+			case UMLRpyPackage.IMODULE__PART_KIND:
+				return getPartKind();
+		}
+		return super.eGet(featureID, resolve, coreType);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@SuppressWarnings("unchecked")
+	@Override
+	public void eSet(int featureID, Object newValue) {
+		switch (featureID) {
+			case UMLRpyPackage.IMODULE__MULTIPLICITY:
+				setMultiplicity((String)newValue);
+				return;
+			case UMLRpyPackage.IMODULE__STEREOTYPES:
+				setStereotypes((IStereotype)newValue);
+				return;
+			case UMLRpyPackage.IMODULE__DESCRIPTION:
+				setDescription((IDescription)newValue);
+				return;
+			case UMLRpyPackage.IMODULE__HYPER_LINKS:
+				getHyperLinks().clear();
+				getHyperLinks().addAll((Collection<? extends IMHyperLink>)newValue);
+				return;
+			case UMLRpyPackage.IMODULE__OTHER_CLASS:
+				setOtherClass((IClass)newValue);
+				return;
+			case UMLRpyPackage.IMODULE__IMPLICIT_CLASS:
+				setImplicitClass((IClass)newValue);
+				return;
+			case UMLRpyPackage.IMODULE__PROPERTIES:
+				setProperties((IPropertyContainer)newValue);
+				return;
+			case UMLRpyPackage.IMODULE__REQUIREMEN_TRACABILITY_HANDLE:
+				setRequiremenTracabilityHandle((String)newValue);
+				return;
+			case UMLRpyPackage.IMODULE__PART_KIND:
+				setPartKind((String)newValue);
+				return;
+		}
+		super.eSet(featureID, newValue);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void eUnset(int featureID) {
+		switch (featureID) {
+			case UMLRpyPackage.IMODULE__MULTIPLICITY:
+				setMultiplicity(MULTIPLICITY_EDEFAULT);
+				return;
+			case UMLRpyPackage.IMODULE__STEREOTYPES:
+				setStereotypes((IStereotype)null);
+				return;
+			case UMLRpyPackage.IMODULE__DESCRIPTION:
+				setDescription((IDescription)null);
+				return;
+			case UMLRpyPackage.IMODULE__HYPER_LINKS:
+				getHyperLinks().clear();
+				return;
+			case UMLRpyPackage.IMODULE__OTHER_CLASS:
+				setOtherClass((IClass)null);
+				return;
+			case UMLRpyPackage.IMODULE__IMPLICIT_CLASS:
+				setImplicitClass((IClass)null);
+				return;
+			case UMLRpyPackage.IMODULE__PROPERTIES:
+				setProperties((IPropertyContainer)null);
+				return;
+			case UMLRpyPackage.IMODULE__REQUIREMEN_TRACABILITY_HANDLE:
+				setRequiremenTracabilityHandle(REQUIREMEN_TRACABILITY_HANDLE_EDEFAULT);
+				return;
+			case UMLRpyPackage.IMODULE__PART_KIND:
+				setPartKind(PART_KIND_EDEFAULT);
+				return;
+		}
+		super.eUnset(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public boolean eIsSet(int featureID) {
+		switch (featureID) {
+			case UMLRpyPackage.IMODULE__MULTIPLICITY:
+				return MULTIPLICITY_EDEFAULT == null ? multiplicity != null : !MULTIPLICITY_EDEFAULT.equals(multiplicity);
+			case UMLRpyPackage.IMODULE__STEREOTYPES:
+				return stereotypes != null;
+			case UMLRpyPackage.IMODULE__DESCRIPTION:
+				return description != null;
+			case UMLRpyPackage.IMODULE__HYPER_LINKS:
+				return hyperLinks != null && !hyperLinks.isEmpty();
+			case UMLRpyPackage.IMODULE__OTHER_CLASS:
+				return otherClass != null;
+			case UMLRpyPackage.IMODULE__IMPLICIT_CLASS:
+				return implicitClass != null;
+			case UMLRpyPackage.IMODULE__PROPERTIES:
+				return properties != null;
+			case UMLRpyPackage.IMODULE__REQUIREMEN_TRACABILITY_HANDLE:
+				return REQUIREMEN_TRACABILITY_HANDLE_EDEFAULT == null ? requiremenTracabilityHandle != null : !REQUIREMEN_TRACABILITY_HANDLE_EDEFAULT.equals(requiremenTracabilityHandle);
+			case UMLRpyPackage.IMODULE__PART_KIND:
+				return PART_KIND_EDEFAULT == null ? partKind != null : !PART_KIND_EDEFAULT.equals(partKind);
+		}
+		return super.eIsSet(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public int eBaseStructuralFeatureID(int derivedFeatureID, Class<?> baseClass) {
+		if (baseClass == InverseType.class) {
+			switch (derivedFeatureID) {
+				default: return -1;
+			}
+		}
+		if (baseClass == AssociationsType.class) {
+			switch (derivedFeatureID) {
+				default: return -1;
+			}
+		}
+		if (baseClass == ElementsType.class) {
+			switch (derivedFeatureID) {
+				default: return -1;
+			}
+		}
+		if (baseClass == DependsOnType.class) {
+			switch (derivedFeatureID) {
+				default: return -1;
+			}
+		}
+		if (baseClass == M_pModelObjectType.class) {
+			switch (derivedFeatureID) {
+				default: return -1;
+			}
+		}
+		if (baseClass == End1_Type.class) {
+			switch (derivedFeatureID) {
+				default: return -1;
+			}
+		}
+		if (baseClass == End2_Type.class) {
+			switch (derivedFeatureID) {
+				case UMLRpyPackage.IMODULE__MULTIPLICITY: return UMLRpyPackage.END2_TYPE__MULTIPLICITY;
+				default: return -1;
+			}
+		}
+		return super.eBaseStructuralFeatureID(derivedFeatureID, baseClass);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public int eDerivedStructuralFeatureID(int baseFeatureID, Class<?> baseClass) {
+		if (baseClass == InverseType.class) {
+			switch (baseFeatureID) {
+				default: return -1;
+			}
+		}
+		if (baseClass == AssociationsType.class) {
+			switch (baseFeatureID) {
+				default: return -1;
+			}
+		}
+		if (baseClass == ElementsType.class) {
+			switch (baseFeatureID) {
+				default: return -1;
+			}
+		}
+		if (baseClass == DependsOnType.class) {
+			switch (baseFeatureID) {
+				default: return -1;
+			}
+		}
+		if (baseClass == M_pModelObjectType.class) {
+			switch (baseFeatureID) {
+				default: return -1;
+			}
+		}
+		if (baseClass == End1_Type.class) {
+			switch (baseFeatureID) {
+				default: return -1;
+			}
+		}
+		if (baseClass == End2_Type.class) {
+			switch (baseFeatureID) {
+				case UMLRpyPackage.END2_TYPE__MULTIPLICITY: return UMLRpyPackage.IMODULE__MULTIPLICITY;
+				default: return -1;
+			}
+		}
+		return super.eDerivedStructuralFeatureID(baseFeatureID, baseClass);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String toString() {
+		if (eIsProxy()) return super.toString();
+
+		StringBuffer result = new StringBuffer(super.toString());
+		result.append(" (multiplicity: "); //$NON-NLS-1$
+		result.append(multiplicity);
+		result.append(", requiremenTracabilityHandle: "); //$NON-NLS-1$
+		result.append(requiremenTracabilityHandle);
+		result.append(", partKind: "); //$NON-NLS-1$
+		result.append(partKind);
+		result.append(')');
+		return result.toString();
+	}
+
+} //IModuleImpl
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/IMultiplicityItemImpl.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/IMultiplicityItemImpl.java
new file mode 100755
index 0000000..7e2cf7c
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/IMultiplicityItemImpl.java
@@ -0,0 +1,227 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl;
+
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.ecore.EClass;
+
+import org.eclipse.emf.ecore.impl.ENotificationImpl;
+import org.eclipse.emf.ecore.impl.MinimalEObjectImpl;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMultiplicityItem;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>IMultiplicity Item</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * </p>
+ * <ul>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IMultiplicityItemImpl#getName <em>Name</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IMultiplicityItemImpl#getCount <em>Count</em>}</li>
+ * </ul>
+ *
+ * @generated
+ */
+public class IMultiplicityItemImpl extends MinimalEObjectImpl.Container implements IMultiplicityItem {
+	/**
+	 * The default value of the '{@link #getName() <em>Name</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getName()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String NAME_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getName() <em>Name</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getName()
+	 * @generated
+	 * @ordered
+	 */
+	protected String name = NAME_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getCount() <em>Count</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getCount()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String COUNT_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getCount() <em>Count</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getCount()
+	 * @generated
+	 * @ordered
+	 */
+	protected String count = COUNT_EDEFAULT;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected IMultiplicityItemImpl() {
+		super();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EClass eStaticClass() {
+		return UMLRpyPackage.eINSTANCE.getIMultiplicityItem();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getName() {
+		return name;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setName(String newName) {
+		String oldName = name;
+		name = newName;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IMULTIPLICITY_ITEM__NAME, oldName, name));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getCount() {
+		return count;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setCount(String newCount) {
+		String oldCount = count;
+		count = newCount;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IMULTIPLICITY_ITEM__COUNT, oldCount, count));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object eGet(int featureID, boolean resolve, boolean coreType) {
+		switch (featureID) {
+			case UMLRpyPackage.IMULTIPLICITY_ITEM__NAME:
+				return getName();
+			case UMLRpyPackage.IMULTIPLICITY_ITEM__COUNT:
+				return getCount();
+		}
+		return super.eGet(featureID, resolve, coreType);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void eSet(int featureID, Object newValue) {
+		switch (featureID) {
+			case UMLRpyPackage.IMULTIPLICITY_ITEM__NAME:
+				setName((String)newValue);
+				return;
+			case UMLRpyPackage.IMULTIPLICITY_ITEM__COUNT:
+				setCount((String)newValue);
+				return;
+		}
+		super.eSet(featureID, newValue);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void eUnset(int featureID) {
+		switch (featureID) {
+			case UMLRpyPackage.IMULTIPLICITY_ITEM__NAME:
+				setName(NAME_EDEFAULT);
+				return;
+			case UMLRpyPackage.IMULTIPLICITY_ITEM__COUNT:
+				setCount(COUNT_EDEFAULT);
+				return;
+		}
+		super.eUnset(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public boolean eIsSet(int featureID) {
+		switch (featureID) {
+			case UMLRpyPackage.IMULTIPLICITY_ITEM__NAME:
+				return NAME_EDEFAULT == null ? name != null : !NAME_EDEFAULT.equals(name);
+			case UMLRpyPackage.IMULTIPLICITY_ITEM__COUNT:
+				return COUNT_EDEFAULT == null ? count != null : !COUNT_EDEFAULT.equals(count);
+		}
+		return super.eIsSet(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String toString() {
+		if (eIsProxy()) return super.toString();
+
+		StringBuffer result = new StringBuffer(super.toString());
+		result.append(" (name: "); //$NON-NLS-1$
+		result.append(name);
+		result.append(", count: "); //$NON-NLS-1$
+		result.append(count);
+		result.append(')');
+		return result.toString();
+	}
+
+} //IMultiplicityItemImpl
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/INodeImpl.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/INodeImpl.java
new file mode 100755
index 0000000..0c29f1a
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/INodeImpl.java
@@ -0,0 +1,47 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl;
+
+import org.eclipse.emf.ecore.EClass;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.INode;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>INode</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+public class INodeImpl extends IClassifierImpl implements INode {
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected INodeImpl() {
+		super();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EClass eStaticClass() {
+		return UMLRpyPackage.eINSTANCE.getINode();
+	}
+
+} //INodeImpl
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/IObjectLinkHandleImpl.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/IObjectLinkHandleImpl.java
new file mode 100755
index 0000000..a6f22f9
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/IObjectLinkHandleImpl.java
@@ -0,0 +1,443 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl;
+
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.ecore.EClass;
+
+import org.eclipse.emf.ecore.impl.ENotificationImpl;
+import org.eclipse.emf.ecore.impl.MinimalEObjectImpl;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IObjectLinkHandle;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>IObject Link Handle</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * </p>
+ * <ul>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IObjectLinkHandleImpl#getM2Class <em>M2 Class</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IObjectLinkHandleImpl#getFilename <em>Filename</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IObjectLinkHandleImpl#getSubsystem <em>Subsystem</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IObjectLinkHandleImpl#getClass_ <em>Class</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IObjectLinkHandleImpl#getName <em>Name</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IObjectLinkHandleImpl#getId <em>Id</em>}</li>
+ * </ul>
+ *
+ * @generated
+ */
+public class IObjectLinkHandleImpl extends MinimalEObjectImpl.Container implements IObjectLinkHandle {
+	/**
+	 * The default value of the '{@link #getM2Class() <em>M2 Class</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM2Class()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String M2_CLASS_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getM2Class() <em>M2 Class</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM2Class()
+	 * @generated
+	 * @ordered
+	 */
+	protected String m2Class = M2_CLASS_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getFilename() <em>Filename</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getFilename()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String FILENAME_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getFilename() <em>Filename</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getFilename()
+	 * @generated
+	 * @ordered
+	 */
+	protected String filename = FILENAME_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getSubsystem() <em>Subsystem</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getSubsystem()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String SUBSYSTEM_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getSubsystem() <em>Subsystem</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getSubsystem()
+	 * @generated
+	 * @ordered
+	 */
+	protected String subsystem = SUBSYSTEM_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getClass_() <em>Class</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getClass_()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String CLASS_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getClass_() <em>Class</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getClass_()
+	 * @generated
+	 * @ordered
+	 */
+	protected String class_ = CLASS_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getName() <em>Name</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getName()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String NAME_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getName() <em>Name</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getName()
+	 * @generated
+	 * @ordered
+	 */
+	protected String name = NAME_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getId() <em>Id</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getId()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String ID_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getId() <em>Id</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getId()
+	 * @generated
+	 * @ordered
+	 */
+	protected String id = ID_EDEFAULT;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected IObjectLinkHandleImpl() {
+		super();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EClass eStaticClass() {
+		return UMLRpyPackage.eINSTANCE.getIObjectLinkHandle();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getM2Class() {
+		return m2Class;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM2Class(String newM2Class) {
+		String oldM2Class = m2Class;
+		m2Class = newM2Class;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IOBJECT_LINK_HANDLE__M2_CLASS, oldM2Class, m2Class));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getFilename() {
+		return filename;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setFilename(String newFilename) {
+		String oldFilename = filename;
+		filename = newFilename;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IOBJECT_LINK_HANDLE__FILENAME, oldFilename, filename));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getSubsystem() {
+		return subsystem;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setSubsystem(String newSubsystem) {
+		String oldSubsystem = subsystem;
+		subsystem = newSubsystem;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IOBJECT_LINK_HANDLE__SUBSYSTEM, oldSubsystem, subsystem));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getClass_() {
+		return class_;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setClass(String newClass) {
+		String oldClass = class_;
+		class_ = newClass;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IOBJECT_LINK_HANDLE__CLASS, oldClass, class_));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getName() {
+		return name;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setName(String newName) {
+		String oldName = name;
+		name = newName;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IOBJECT_LINK_HANDLE__NAME, oldName, name));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getId() {
+		return id;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setId(String newId) {
+		String oldId = id;
+		id = newId;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IOBJECT_LINK_HANDLE__ID, oldId, id));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object eGet(int featureID, boolean resolve, boolean coreType) {
+		switch (featureID) {
+			case UMLRpyPackage.IOBJECT_LINK_HANDLE__M2_CLASS:
+				return getM2Class();
+			case UMLRpyPackage.IOBJECT_LINK_HANDLE__FILENAME:
+				return getFilename();
+			case UMLRpyPackage.IOBJECT_LINK_HANDLE__SUBSYSTEM:
+				return getSubsystem();
+			case UMLRpyPackage.IOBJECT_LINK_HANDLE__CLASS:
+				return getClass_();
+			case UMLRpyPackage.IOBJECT_LINK_HANDLE__NAME:
+				return getName();
+			case UMLRpyPackage.IOBJECT_LINK_HANDLE__ID:
+				return getId();
+		}
+		return super.eGet(featureID, resolve, coreType);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void eSet(int featureID, Object newValue) {
+		switch (featureID) {
+			case UMLRpyPackage.IOBJECT_LINK_HANDLE__M2_CLASS:
+				setM2Class((String)newValue);
+				return;
+			case UMLRpyPackage.IOBJECT_LINK_HANDLE__FILENAME:
+				setFilename((String)newValue);
+				return;
+			case UMLRpyPackage.IOBJECT_LINK_HANDLE__SUBSYSTEM:
+				setSubsystem((String)newValue);
+				return;
+			case UMLRpyPackage.IOBJECT_LINK_HANDLE__CLASS:
+				setClass((String)newValue);
+				return;
+			case UMLRpyPackage.IOBJECT_LINK_HANDLE__NAME:
+				setName((String)newValue);
+				return;
+			case UMLRpyPackage.IOBJECT_LINK_HANDLE__ID:
+				setId((String)newValue);
+				return;
+		}
+		super.eSet(featureID, newValue);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void eUnset(int featureID) {
+		switch (featureID) {
+			case UMLRpyPackage.IOBJECT_LINK_HANDLE__M2_CLASS:
+				setM2Class(M2_CLASS_EDEFAULT);
+				return;
+			case UMLRpyPackage.IOBJECT_LINK_HANDLE__FILENAME:
+				setFilename(FILENAME_EDEFAULT);
+				return;
+			case UMLRpyPackage.IOBJECT_LINK_HANDLE__SUBSYSTEM:
+				setSubsystem(SUBSYSTEM_EDEFAULT);
+				return;
+			case UMLRpyPackage.IOBJECT_LINK_HANDLE__CLASS:
+				setClass(CLASS_EDEFAULT);
+				return;
+			case UMLRpyPackage.IOBJECT_LINK_HANDLE__NAME:
+				setName(NAME_EDEFAULT);
+				return;
+			case UMLRpyPackage.IOBJECT_LINK_HANDLE__ID:
+				setId(ID_EDEFAULT);
+				return;
+		}
+		super.eUnset(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public boolean eIsSet(int featureID) {
+		switch (featureID) {
+			case UMLRpyPackage.IOBJECT_LINK_HANDLE__M2_CLASS:
+				return M2_CLASS_EDEFAULT == null ? m2Class != null : !M2_CLASS_EDEFAULT.equals(m2Class);
+			case UMLRpyPackage.IOBJECT_LINK_HANDLE__FILENAME:
+				return FILENAME_EDEFAULT == null ? filename != null : !FILENAME_EDEFAULT.equals(filename);
+			case UMLRpyPackage.IOBJECT_LINK_HANDLE__SUBSYSTEM:
+				return SUBSYSTEM_EDEFAULT == null ? subsystem != null : !SUBSYSTEM_EDEFAULT.equals(subsystem);
+			case UMLRpyPackage.IOBJECT_LINK_HANDLE__CLASS:
+				return CLASS_EDEFAULT == null ? class_ != null : !CLASS_EDEFAULT.equals(class_);
+			case UMLRpyPackage.IOBJECT_LINK_HANDLE__NAME:
+				return NAME_EDEFAULT == null ? name != null : !NAME_EDEFAULT.equals(name);
+			case UMLRpyPackage.IOBJECT_LINK_HANDLE__ID:
+				return ID_EDEFAULT == null ? id != null : !ID_EDEFAULT.equals(id);
+		}
+		return super.eIsSet(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String toString() {
+		if (eIsProxy()) return super.toString();
+
+		StringBuffer result = new StringBuffer(super.toString());
+		result.append(" (m2Class: "); //$NON-NLS-1$
+		result.append(m2Class);
+		result.append(", filename: "); //$NON-NLS-1$
+		result.append(filename);
+		result.append(", subsystem: "); //$NON-NLS-1$
+		result.append(subsystem);
+		result.append(", class: "); //$NON-NLS-1$
+		result.append(class_);
+		result.append(", name: "); //$NON-NLS-1$
+		result.append(name);
+		result.append(", id: "); //$NON-NLS-1$
+		result.append(id);
+		result.append(')');
+		return result.toString();
+	}
+
+} //IObjectLinkHandleImpl
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/IObjectLinkImpl.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/IObjectLinkImpl.java
new file mode 100755
index 0000000..f493b0e
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/IObjectLinkImpl.java
@@ -0,0 +1,1492 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl;
+
+import java.lang.reflect.InvocationTargetException;
+import java.util.Collection;
+
+import org.eclipse.emf.common.notify.Notification;
+import org.eclipse.emf.common.notify.NotificationChain;
+
+import org.eclipse.emf.common.util.EList;
+import org.eclipse.emf.ecore.EAnnotation;
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.EModelElement;
+import org.eclipse.emf.ecore.EcorePackage;
+import org.eclipse.emf.ecore.InternalEObject;
+
+import org.eclipse.emf.ecore.impl.ENotificationImpl;
+
+import org.eclipse.emf.ecore.util.EDataTypeEList;
+import org.eclipse.emf.ecore.util.EObjectContainmentWithInverseEList;
+import org.eclipse.emf.ecore.util.InternalEList;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.DependsOnType;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ElementsType;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.FromLinkType;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IDescription;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMetaLinkHandle;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IModelElement;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IObjectLink;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IRelation;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITag;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IUnit;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.M_pModelObjectType;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ToLinkType;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ValueType;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>IObject Link</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * </p>
+ * <ul>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IObjectLinkImpl#getModifiedTimeWeak <em>Modified Time Weak</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IObjectLinkImpl#getId <em>Id</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IObjectLinkImpl#getMyState <em>My State</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IObjectLinkImpl#getName <em>Name</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IObjectLinkImpl#getEAnnotations <em>EAnnotations</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IObjectLinkImpl#getDisplayName <em>Display Name</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IObjectLinkImpl#getStereotypes <em>Stereotypes</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IObjectLinkImpl#getTags <em>Tags</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IObjectLinkImpl#getToLink <em>To Link</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IObjectLinkImpl#getFromLink <em>From Link</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IObjectLinkImpl#getInstantiates <em>Instantiates</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IObjectLinkImpl#getEnd1Multiplicity <em>End1 Multiplicity</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IObjectLinkImpl#getEnd2Multiplicity <em>End2 Multiplicity</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IObjectLinkImpl#getToPort <em>To Port</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IObjectLinkImpl#getFromPort <em>From Port</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IObjectLinkImpl#getDescription <em>Description</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IObjectLinkImpl#getRequiremenTracabilityHandle <em>Requiremen Tracability Handle</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IObjectLinkImpl#getCodeUpdateCGTime <em>Code Update CG Time</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IObjectLinkImpl#getObjectCreation <em>Object Creation</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IObjectLinkImpl#getUmlDependencyID <em>Uml Dependency ID</em>}</li>
+ * </ul>
+ *
+ * @generated
+ */
+public class IObjectLinkImpl extends ObjectLinksTypeImpl implements IObjectLink {
+	/**
+	 * The cached value of the '{@link #getModifiedTimeWeak() <em>Modified Time Weak</em>}' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getModifiedTimeWeak()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<String> modifiedTimeWeak;
+
+	/**
+	 * The default value of the '{@link #getId() <em>Id</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getId()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String ID_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getId() <em>Id</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getId()
+	 * @generated
+	 * @ordered
+	 */
+	protected String id = ID_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getMyState() <em>My State</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getMyState()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String MY_STATE_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getMyState() <em>My State</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getMyState()
+	 * @generated
+	 * @ordered
+	 */
+	protected String myState = MY_STATE_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getName() <em>Name</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getName()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String NAME_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getName() <em>Name</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getName()
+	 * @generated
+	 * @ordered
+	 */
+	protected String name = NAME_EDEFAULT;
+
+	/**
+	 * The cached value of the '{@link #getEAnnotations() <em>EAnnotations</em>}' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getEAnnotations()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<EAnnotation> eAnnotations;
+
+	/**
+	 * The default value of the '{@link #getDisplayName() <em>Display Name</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getDisplayName()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String DISPLAY_NAME_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getDisplayName() <em>Display Name</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getDisplayName()
+	 * @generated
+	 * @ordered
+	 */
+	protected String displayName = DISPLAY_NAME_EDEFAULT;
+
+	/**
+	 * The cached value of the '{@link #getStereotypes() <em>Stereotypes</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getStereotypes()
+	 * @generated
+	 * @ordered
+	 */
+	protected IUnit stereotypes;
+
+	/**
+	 * The cached value of the '{@link #getTags() <em>Tags</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getTags()
+	 * @generated
+	 * @ordered
+	 */
+	protected ITag tags;
+
+	/**
+	 * The cached value of the '{@link #getToLink() <em>To Link</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getToLink()
+	 * @generated
+	 * @ordered
+	 */
+	protected ToLinkType toLink;
+
+	/**
+	 * The cached value of the '{@link #getFromLink() <em>From Link</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getFromLink()
+	 * @generated
+	 * @ordered
+	 */
+	protected FromLinkType fromLink;
+
+	/**
+	 * The cached value of the '{@link #getInstantiates() <em>Instantiates</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getInstantiates()
+	 * @generated
+	 * @ordered
+	 */
+	protected IMetaLinkHandle instantiates;
+
+	/**
+	 * The default value of the '{@link #getEnd1Multiplicity() <em>End1 Multiplicity</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getEnd1Multiplicity()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String END1_MULTIPLICITY_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getEnd1Multiplicity() <em>End1 Multiplicity</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getEnd1Multiplicity()
+	 * @generated
+	 * @ordered
+	 */
+	protected String end1Multiplicity = END1_MULTIPLICITY_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getEnd2Multiplicity() <em>End2 Multiplicity</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getEnd2Multiplicity()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String END2_MULTIPLICITY_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getEnd2Multiplicity() <em>End2 Multiplicity</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getEnd2Multiplicity()
+	 * @generated
+	 * @ordered
+	 */
+	protected String end2Multiplicity = END2_MULTIPLICITY_EDEFAULT;
+
+	/**
+	 * The cached value of the '{@link #getToPort() <em>To Port</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getToPort()
+	 * @generated
+	 * @ordered
+	 */
+	protected IRelation toPort;
+
+	/**
+	 * The cached value of the '{@link #getFromPort() <em>From Port</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getFromPort()
+	 * @generated
+	 * @ordered
+	 */
+	protected IRelation fromPort;
+
+	/**
+	 * The cached value of the '{@link #getDescription() <em>Description</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getDescription()
+	 * @generated
+	 * @ordered
+	 */
+	protected IDescription description;
+
+	/**
+	 * The default value of the '{@link #getRequiremenTracabilityHandle() <em>Requiremen Tracability Handle</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getRequiremenTracabilityHandle()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String REQUIREMEN_TRACABILITY_HANDLE_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getRequiremenTracabilityHandle() <em>Requiremen Tracability Handle</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getRequiremenTracabilityHandle()
+	 * @generated
+	 * @ordered
+	 */
+	protected String requiremenTracabilityHandle = REQUIREMEN_TRACABILITY_HANDLE_EDEFAULT;
+
+	/**
+	 * The cached value of the '{@link #getCodeUpdateCGTime() <em>Code Update CG Time</em>}' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getCodeUpdateCGTime()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<String> codeUpdateCGTime;
+
+	/**
+	 * The default value of the '{@link #getObjectCreation() <em>Object Creation</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getObjectCreation()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String OBJECT_CREATION_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getObjectCreation() <em>Object Creation</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getObjectCreation()
+	 * @generated
+	 * @ordered
+	 */
+	protected String objectCreation = OBJECT_CREATION_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getUmlDependencyID() <em>Uml Dependency ID</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getUmlDependencyID()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String UML_DEPENDENCY_ID_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getUmlDependencyID() <em>Uml Dependency ID</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getUmlDependencyID()
+	 * @generated
+	 * @ordered
+	 */
+	protected String umlDependencyID = UML_DEPENDENCY_ID_EDEFAULT;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected IObjectLinkImpl() {
+		super();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EClass eStaticClass() {
+		return UMLRpyPackage.eINSTANCE.getIObjectLink();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<String> getModifiedTimeWeak() {
+		if (modifiedTimeWeak == null) {
+			modifiedTimeWeak = new EDataTypeEList<String>(String.class, this, UMLRpyPackage.IOBJECT_LINK__MODIFIED_TIME_WEAK);
+		}
+		return modifiedTimeWeak;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getId() {
+		return id;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setId(String newId) {
+		String oldId = id;
+		id = newId;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IOBJECT_LINK__ID, oldId, id));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getMyState() {
+		return myState;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setMyState(String newMyState) {
+		String oldMyState = myState;
+		myState = newMyState;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IOBJECT_LINK__MY_STATE, oldMyState, myState));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getName() {
+		return name;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setName(String newName) {
+		String oldName = name;
+		name = newName;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IOBJECT_LINK__NAME, oldName, name));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<EAnnotation> getEAnnotations() {
+		if (eAnnotations == null) {
+			eAnnotations = new EObjectContainmentWithInverseEList<EAnnotation>(EAnnotation.class, this, UMLRpyPackage.IOBJECT_LINK__EANNOTATIONS, EcorePackage.EANNOTATION__EMODEL_ELEMENT);
+		}
+		return eAnnotations;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getDisplayName() {
+		return displayName;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setDisplayName(String newDisplayName) {
+		String oldDisplayName = displayName;
+		displayName = newDisplayName;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IOBJECT_LINK__DISPLAY_NAME, oldDisplayName, displayName));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IUnit getStereotypes() {
+		if (stereotypes != null && stereotypes.eIsProxy()) {
+			InternalEObject oldStereotypes = (InternalEObject)stereotypes;
+			stereotypes = (IUnit)eResolveProxy(oldStereotypes);
+			if (stereotypes != oldStereotypes) {
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.IOBJECT_LINK__STEREOTYPES, oldStereotypes, stereotypes));
+			}
+		}
+		return stereotypes;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IUnit basicGetStereotypes() {
+		return stereotypes;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setStereotypes(IUnit newStereotypes) {
+		IUnit oldStereotypes = stereotypes;
+		stereotypes = newStereotypes;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IOBJECT_LINK__STEREOTYPES, oldStereotypes, stereotypes));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public ITag getTags() {
+		if (tags != null && tags.eIsProxy()) {
+			InternalEObject oldTags = (InternalEObject)tags;
+			tags = (ITag)eResolveProxy(oldTags);
+			if (tags != oldTags) {
+				InternalEObject newTags = (InternalEObject)tags;
+				NotificationChain msgs = oldTags.eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IOBJECT_LINK__TAGS, null, null);
+				if (newTags.eInternalContainer() == null) {
+					msgs = newTags.eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IOBJECT_LINK__TAGS, null, msgs);
+				}
+				if (msgs != null) msgs.dispatch();
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.IOBJECT_LINK__TAGS, oldTags, tags));
+			}
+		}
+		return tags;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public ITag basicGetTags() {
+		return tags;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public NotificationChain basicSetTags(ITag newTags, NotificationChain msgs) {
+		ITag oldTags = tags;
+		tags = newTags;
+		if (eNotificationRequired()) {
+			ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IOBJECT_LINK__TAGS, oldTags, newTags);
+			if (msgs == null) msgs = notification; else msgs.add(notification);
+		}
+		return msgs;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setTags(ITag newTags) {
+		if (newTags != tags) {
+			NotificationChain msgs = null;
+			if (tags != null)
+				msgs = ((InternalEObject)tags).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IOBJECT_LINK__TAGS, null, msgs);
+			if (newTags != null)
+				msgs = ((InternalEObject)newTags).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IOBJECT_LINK__TAGS, null, msgs);
+			msgs = basicSetTags(newTags, msgs);
+			if (msgs != null) msgs.dispatch();
+		}
+		else if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IOBJECT_LINK__TAGS, newTags, newTags));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public ToLinkType getToLink() {
+		if (toLink != null && toLink.eIsProxy()) {
+			InternalEObject oldToLink = (InternalEObject)toLink;
+			toLink = (ToLinkType)eResolveProxy(oldToLink);
+			if (toLink != oldToLink) {
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.IOBJECT_LINK__TO_LINK, oldToLink, toLink));
+			}
+		}
+		return toLink;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public ToLinkType basicGetToLink() {
+		return toLink;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setToLink(ToLinkType newToLink) {
+		ToLinkType oldToLink = toLink;
+		toLink = newToLink;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IOBJECT_LINK__TO_LINK, oldToLink, toLink));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public FromLinkType getFromLink() {
+		if (fromLink != null && fromLink.eIsProxy()) {
+			InternalEObject oldFromLink = (InternalEObject)fromLink;
+			fromLink = (FromLinkType)eResolveProxy(oldFromLink);
+			if (fromLink != oldFromLink) {
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.IOBJECT_LINK__FROM_LINK, oldFromLink, fromLink));
+			}
+		}
+		return fromLink;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public FromLinkType basicGetFromLink() {
+		return fromLink;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setFromLink(FromLinkType newFromLink) {
+		FromLinkType oldFromLink = fromLink;
+		fromLink = newFromLink;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IOBJECT_LINK__FROM_LINK, oldFromLink, fromLink));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IMetaLinkHandle getInstantiates() {
+		if (instantiates != null && instantiates.eIsProxy()) {
+			InternalEObject oldInstantiates = (InternalEObject)instantiates;
+			instantiates = (IMetaLinkHandle)eResolveProxy(oldInstantiates);
+			if (instantiates != oldInstantiates) {
+				InternalEObject newInstantiates = (InternalEObject)instantiates;
+				NotificationChain msgs = oldInstantiates.eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IOBJECT_LINK__INSTANTIATES, null, null);
+				if (newInstantiates.eInternalContainer() == null) {
+					msgs = newInstantiates.eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IOBJECT_LINK__INSTANTIATES, null, msgs);
+				}
+				if (msgs != null) msgs.dispatch();
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.IOBJECT_LINK__INSTANTIATES, oldInstantiates, instantiates));
+			}
+		}
+		return instantiates;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IMetaLinkHandle basicGetInstantiates() {
+		return instantiates;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public NotificationChain basicSetInstantiates(IMetaLinkHandle newInstantiates, NotificationChain msgs) {
+		IMetaLinkHandle oldInstantiates = instantiates;
+		instantiates = newInstantiates;
+		if (eNotificationRequired()) {
+			ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IOBJECT_LINK__INSTANTIATES, oldInstantiates, newInstantiates);
+			if (msgs == null) msgs = notification; else msgs.add(notification);
+		}
+		return msgs;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setInstantiates(IMetaLinkHandle newInstantiates) {
+		if (newInstantiates != instantiates) {
+			NotificationChain msgs = null;
+			if (instantiates != null)
+				msgs = ((InternalEObject)instantiates).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IOBJECT_LINK__INSTANTIATES, null, msgs);
+			if (newInstantiates != null)
+				msgs = ((InternalEObject)newInstantiates).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IOBJECT_LINK__INSTANTIATES, null, msgs);
+			msgs = basicSetInstantiates(newInstantiates, msgs);
+			if (msgs != null) msgs.dispatch();
+		}
+		else if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IOBJECT_LINK__INSTANTIATES, newInstantiates, newInstantiates));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getEnd1Multiplicity() {
+		return end1Multiplicity;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setEnd1Multiplicity(String newEnd1Multiplicity) {
+		String oldEnd1Multiplicity = end1Multiplicity;
+		end1Multiplicity = newEnd1Multiplicity;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IOBJECT_LINK__END1_MULTIPLICITY, oldEnd1Multiplicity, end1Multiplicity));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getEnd2Multiplicity() {
+		return end2Multiplicity;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setEnd2Multiplicity(String newEnd2Multiplicity) {
+		String oldEnd2Multiplicity = end2Multiplicity;
+		end2Multiplicity = newEnd2Multiplicity;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IOBJECT_LINK__END2_MULTIPLICITY, oldEnd2Multiplicity, end2Multiplicity));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IRelation getToPort() {
+		if (toPort != null && toPort.eIsProxy()) {
+			InternalEObject oldToPort = (InternalEObject)toPort;
+			toPort = (IRelation)eResolveProxy(oldToPort);
+			if (toPort != oldToPort) {
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.IOBJECT_LINK__TO_PORT, oldToPort, toPort));
+			}
+		}
+		return toPort;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IRelation basicGetToPort() {
+		return toPort;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setToPort(IRelation newToPort) {
+		IRelation oldToPort = toPort;
+		toPort = newToPort;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IOBJECT_LINK__TO_PORT, oldToPort, toPort));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IRelation getFromPort() {
+		if (fromPort != null && fromPort.eIsProxy()) {
+			InternalEObject oldFromPort = (InternalEObject)fromPort;
+			fromPort = (IRelation)eResolveProxy(oldFromPort);
+			if (fromPort != oldFromPort) {
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.IOBJECT_LINK__FROM_PORT, oldFromPort, fromPort));
+			}
+		}
+		return fromPort;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IRelation basicGetFromPort() {
+		return fromPort;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setFromPort(IRelation newFromPort) {
+		IRelation oldFromPort = fromPort;
+		fromPort = newFromPort;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IOBJECT_LINK__FROM_PORT, oldFromPort, fromPort));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IDescription getDescription() {
+		if (description != null && description.eIsProxy()) {
+			InternalEObject oldDescription = (InternalEObject)description;
+			description = (IDescription)eResolveProxy(oldDescription);
+			if (description != oldDescription) {
+				InternalEObject newDescription = (InternalEObject)description;
+				NotificationChain msgs = oldDescription.eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IOBJECT_LINK__DESCRIPTION, null, null);
+				if (newDescription.eInternalContainer() == null) {
+					msgs = newDescription.eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IOBJECT_LINK__DESCRIPTION, null, msgs);
+				}
+				if (msgs != null) msgs.dispatch();
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.IOBJECT_LINK__DESCRIPTION, oldDescription, description));
+			}
+		}
+		return description;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IDescription basicGetDescription() {
+		return description;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public NotificationChain basicSetDescription(IDescription newDescription, NotificationChain msgs) {
+		IDescription oldDescription = description;
+		description = newDescription;
+		if (eNotificationRequired()) {
+			ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IOBJECT_LINK__DESCRIPTION, oldDescription, newDescription);
+			if (msgs == null) msgs = notification; else msgs.add(notification);
+		}
+		return msgs;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setDescription(IDescription newDescription) {
+		if (newDescription != description) {
+			NotificationChain msgs = null;
+			if (description != null)
+				msgs = ((InternalEObject)description).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IOBJECT_LINK__DESCRIPTION, null, msgs);
+			if (newDescription != null)
+				msgs = ((InternalEObject)newDescription).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IOBJECT_LINK__DESCRIPTION, null, msgs);
+			msgs = basicSetDescription(newDescription, msgs);
+			if (msgs != null) msgs.dispatch();
+		}
+		else if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IOBJECT_LINK__DESCRIPTION, newDescription, newDescription));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getRequiremenTracabilityHandle() {
+		return requiremenTracabilityHandle;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setRequiremenTracabilityHandle(String newRequiremenTracabilityHandle) {
+		String oldRequiremenTracabilityHandle = requiremenTracabilityHandle;
+		requiremenTracabilityHandle = newRequiremenTracabilityHandle;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IOBJECT_LINK__REQUIREMEN_TRACABILITY_HANDLE, oldRequiremenTracabilityHandle, requiremenTracabilityHandle));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<String> getCodeUpdateCGTime() {
+		if (codeUpdateCGTime == null) {
+			codeUpdateCGTime = new EDataTypeEList<String>(String.class, this, UMLRpyPackage.IOBJECT_LINK__CODE_UPDATE_CG_TIME);
+		}
+		return codeUpdateCGTime;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getObjectCreation() {
+		return objectCreation;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setObjectCreation(String newObjectCreation) {
+		String oldObjectCreation = objectCreation;
+		objectCreation = newObjectCreation;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IOBJECT_LINK__OBJECT_CREATION, oldObjectCreation, objectCreation));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getUmlDependencyID() {
+		return umlDependencyID;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setUmlDependencyID(String newUmlDependencyID) {
+		String oldUmlDependencyID = umlDependencyID;
+		umlDependencyID = newUmlDependencyID;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IOBJECT_LINK__UML_DEPENDENCY_ID, oldUmlDependencyID, umlDependencyID));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAnnotation getEAnnotation(String source) {
+		// TODO: implement this method
+		// Ensure that you remove @generated or mark it @generated NOT
+		throw new UnsupportedOperationException();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@SuppressWarnings("unchecked")
+	@Override
+	public NotificationChain eInverseAdd(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
+		switch (featureID) {
+			case UMLRpyPackage.IOBJECT_LINK__EANNOTATIONS:
+				return ((InternalEList<InternalEObject>)(InternalEList<?>)getEAnnotations()).basicAdd(otherEnd, msgs);
+		}
+		return super.eInverseAdd(otherEnd, featureID, msgs);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
+		switch (featureID) {
+			case UMLRpyPackage.IOBJECT_LINK__EANNOTATIONS:
+				return ((InternalEList<?>)getEAnnotations()).basicRemove(otherEnd, msgs);
+			case UMLRpyPackage.IOBJECT_LINK__TAGS:
+				return basicSetTags(null, msgs);
+			case UMLRpyPackage.IOBJECT_LINK__INSTANTIATES:
+				return basicSetInstantiates(null, msgs);
+			case UMLRpyPackage.IOBJECT_LINK__DESCRIPTION:
+				return basicSetDescription(null, msgs);
+		}
+		return super.eInverseRemove(otherEnd, featureID, msgs);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object eGet(int featureID, boolean resolve, boolean coreType) {
+		switch (featureID) {
+			case UMLRpyPackage.IOBJECT_LINK__MODIFIED_TIME_WEAK:
+				return getModifiedTimeWeak();
+			case UMLRpyPackage.IOBJECT_LINK__ID:
+				return getId();
+			case UMLRpyPackage.IOBJECT_LINK__MY_STATE:
+				return getMyState();
+			case UMLRpyPackage.IOBJECT_LINK__NAME:
+				return getName();
+			case UMLRpyPackage.IOBJECT_LINK__EANNOTATIONS:
+				return getEAnnotations();
+			case UMLRpyPackage.IOBJECT_LINK__DISPLAY_NAME:
+				return getDisplayName();
+			case UMLRpyPackage.IOBJECT_LINK__STEREOTYPES:
+				if (resolve) return getStereotypes();
+				return basicGetStereotypes();
+			case UMLRpyPackage.IOBJECT_LINK__TAGS:
+				if (resolve) return getTags();
+				return basicGetTags();
+			case UMLRpyPackage.IOBJECT_LINK__TO_LINK:
+				if (resolve) return getToLink();
+				return basicGetToLink();
+			case UMLRpyPackage.IOBJECT_LINK__FROM_LINK:
+				if (resolve) return getFromLink();
+				return basicGetFromLink();
+			case UMLRpyPackage.IOBJECT_LINK__INSTANTIATES:
+				if (resolve) return getInstantiates();
+				return basicGetInstantiates();
+			case UMLRpyPackage.IOBJECT_LINK__END1_MULTIPLICITY:
+				return getEnd1Multiplicity();
+			case UMLRpyPackage.IOBJECT_LINK__END2_MULTIPLICITY:
+				return getEnd2Multiplicity();
+			case UMLRpyPackage.IOBJECT_LINK__TO_PORT:
+				if (resolve) return getToPort();
+				return basicGetToPort();
+			case UMLRpyPackage.IOBJECT_LINK__FROM_PORT:
+				if (resolve) return getFromPort();
+				return basicGetFromPort();
+			case UMLRpyPackage.IOBJECT_LINK__DESCRIPTION:
+				if (resolve) return getDescription();
+				return basicGetDescription();
+			case UMLRpyPackage.IOBJECT_LINK__REQUIREMEN_TRACABILITY_HANDLE:
+				return getRequiremenTracabilityHandle();
+			case UMLRpyPackage.IOBJECT_LINK__CODE_UPDATE_CG_TIME:
+				return getCodeUpdateCGTime();
+			case UMLRpyPackage.IOBJECT_LINK__OBJECT_CREATION:
+				return getObjectCreation();
+			case UMLRpyPackage.IOBJECT_LINK__UML_DEPENDENCY_ID:
+				return getUmlDependencyID();
+		}
+		return super.eGet(featureID, resolve, coreType);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@SuppressWarnings("unchecked")
+	@Override
+	public void eSet(int featureID, Object newValue) {
+		switch (featureID) {
+			case UMLRpyPackage.IOBJECT_LINK__MODIFIED_TIME_WEAK:
+				getModifiedTimeWeak().clear();
+				getModifiedTimeWeak().addAll((Collection<? extends String>)newValue);
+				return;
+			case UMLRpyPackage.IOBJECT_LINK__ID:
+				setId((String)newValue);
+				return;
+			case UMLRpyPackage.IOBJECT_LINK__MY_STATE:
+				setMyState((String)newValue);
+				return;
+			case UMLRpyPackage.IOBJECT_LINK__NAME:
+				setName((String)newValue);
+				return;
+			case UMLRpyPackage.IOBJECT_LINK__EANNOTATIONS:
+				getEAnnotations().clear();
+				getEAnnotations().addAll((Collection<? extends EAnnotation>)newValue);
+				return;
+			case UMLRpyPackage.IOBJECT_LINK__DISPLAY_NAME:
+				setDisplayName((String)newValue);
+				return;
+			case UMLRpyPackage.IOBJECT_LINK__STEREOTYPES:
+				setStereotypes((IUnit)newValue);
+				return;
+			case UMLRpyPackage.IOBJECT_LINK__TAGS:
+				setTags((ITag)newValue);
+				return;
+			case UMLRpyPackage.IOBJECT_LINK__TO_LINK:
+				setToLink((ToLinkType)newValue);
+				return;
+			case UMLRpyPackage.IOBJECT_LINK__FROM_LINK:
+				setFromLink((FromLinkType)newValue);
+				return;
+			case UMLRpyPackage.IOBJECT_LINK__INSTANTIATES:
+				setInstantiates((IMetaLinkHandle)newValue);
+				return;
+			case UMLRpyPackage.IOBJECT_LINK__END1_MULTIPLICITY:
+				setEnd1Multiplicity((String)newValue);
+				return;
+			case UMLRpyPackage.IOBJECT_LINK__END2_MULTIPLICITY:
+				setEnd2Multiplicity((String)newValue);
+				return;
+			case UMLRpyPackage.IOBJECT_LINK__TO_PORT:
+				setToPort((IRelation)newValue);
+				return;
+			case UMLRpyPackage.IOBJECT_LINK__FROM_PORT:
+				setFromPort((IRelation)newValue);
+				return;
+			case UMLRpyPackage.IOBJECT_LINK__DESCRIPTION:
+				setDescription((IDescription)newValue);
+				return;
+			case UMLRpyPackage.IOBJECT_LINK__REQUIREMEN_TRACABILITY_HANDLE:
+				setRequiremenTracabilityHandle((String)newValue);
+				return;
+			case UMLRpyPackage.IOBJECT_LINK__CODE_UPDATE_CG_TIME:
+				getCodeUpdateCGTime().clear();
+				getCodeUpdateCGTime().addAll((Collection<? extends String>)newValue);
+				return;
+			case UMLRpyPackage.IOBJECT_LINK__OBJECT_CREATION:
+				setObjectCreation((String)newValue);
+				return;
+			case UMLRpyPackage.IOBJECT_LINK__UML_DEPENDENCY_ID:
+				setUmlDependencyID((String)newValue);
+				return;
+		}
+		super.eSet(featureID, newValue);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void eUnset(int featureID) {
+		switch (featureID) {
+			case UMLRpyPackage.IOBJECT_LINK__MODIFIED_TIME_WEAK:
+				getModifiedTimeWeak().clear();
+				return;
+			case UMLRpyPackage.IOBJECT_LINK__ID:
+				setId(ID_EDEFAULT);
+				return;
+			case UMLRpyPackage.IOBJECT_LINK__MY_STATE:
+				setMyState(MY_STATE_EDEFAULT);
+				return;
+			case UMLRpyPackage.IOBJECT_LINK__NAME:
+				setName(NAME_EDEFAULT);
+				return;
+			case UMLRpyPackage.IOBJECT_LINK__EANNOTATIONS:
+				getEAnnotations().clear();
+				return;
+			case UMLRpyPackage.IOBJECT_LINK__DISPLAY_NAME:
+				setDisplayName(DISPLAY_NAME_EDEFAULT);
+				return;
+			case UMLRpyPackage.IOBJECT_LINK__STEREOTYPES:
+				setStereotypes((IUnit)null);
+				return;
+			case UMLRpyPackage.IOBJECT_LINK__TAGS:
+				setTags((ITag)null);
+				return;
+			case UMLRpyPackage.IOBJECT_LINK__TO_LINK:
+				setToLink((ToLinkType)null);
+				return;
+			case UMLRpyPackage.IOBJECT_LINK__FROM_LINK:
+				setFromLink((FromLinkType)null);
+				return;
+			case UMLRpyPackage.IOBJECT_LINK__INSTANTIATES:
+				setInstantiates((IMetaLinkHandle)null);
+				return;
+			case UMLRpyPackage.IOBJECT_LINK__END1_MULTIPLICITY:
+				setEnd1Multiplicity(END1_MULTIPLICITY_EDEFAULT);
+				return;
+			case UMLRpyPackage.IOBJECT_LINK__END2_MULTIPLICITY:
+				setEnd2Multiplicity(END2_MULTIPLICITY_EDEFAULT);
+				return;
+			case UMLRpyPackage.IOBJECT_LINK__TO_PORT:
+				setToPort((IRelation)null);
+				return;
+			case UMLRpyPackage.IOBJECT_LINK__FROM_PORT:
+				setFromPort((IRelation)null);
+				return;
+			case UMLRpyPackage.IOBJECT_LINK__DESCRIPTION:
+				setDescription((IDescription)null);
+				return;
+			case UMLRpyPackage.IOBJECT_LINK__REQUIREMEN_TRACABILITY_HANDLE:
+				setRequiremenTracabilityHandle(REQUIREMEN_TRACABILITY_HANDLE_EDEFAULT);
+				return;
+			case UMLRpyPackage.IOBJECT_LINK__CODE_UPDATE_CG_TIME:
+				getCodeUpdateCGTime().clear();
+				return;
+			case UMLRpyPackage.IOBJECT_LINK__OBJECT_CREATION:
+				setObjectCreation(OBJECT_CREATION_EDEFAULT);
+				return;
+			case UMLRpyPackage.IOBJECT_LINK__UML_DEPENDENCY_ID:
+				setUmlDependencyID(UML_DEPENDENCY_ID_EDEFAULT);
+				return;
+		}
+		super.eUnset(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public boolean eIsSet(int featureID) {
+		switch (featureID) {
+			case UMLRpyPackage.IOBJECT_LINK__MODIFIED_TIME_WEAK:
+				return modifiedTimeWeak != null && !modifiedTimeWeak.isEmpty();
+			case UMLRpyPackage.IOBJECT_LINK__ID:
+				return ID_EDEFAULT == null ? id != null : !ID_EDEFAULT.equals(id);
+			case UMLRpyPackage.IOBJECT_LINK__MY_STATE:
+				return MY_STATE_EDEFAULT == null ? myState != null : !MY_STATE_EDEFAULT.equals(myState);
+			case UMLRpyPackage.IOBJECT_LINK__NAME:
+				return NAME_EDEFAULT == null ? name != null : !NAME_EDEFAULT.equals(name);
+			case UMLRpyPackage.IOBJECT_LINK__EANNOTATIONS:
+				return eAnnotations != null && !eAnnotations.isEmpty();
+			case UMLRpyPackage.IOBJECT_LINK__DISPLAY_NAME:
+				return DISPLAY_NAME_EDEFAULT == null ? displayName != null : !DISPLAY_NAME_EDEFAULT.equals(displayName);
+			case UMLRpyPackage.IOBJECT_LINK__STEREOTYPES:
+				return stereotypes != null;
+			case UMLRpyPackage.IOBJECT_LINK__TAGS:
+				return tags != null;
+			case UMLRpyPackage.IOBJECT_LINK__TO_LINK:
+				return toLink != null;
+			case UMLRpyPackage.IOBJECT_LINK__FROM_LINK:
+				return fromLink != null;
+			case UMLRpyPackage.IOBJECT_LINK__INSTANTIATES:
+				return instantiates != null;
+			case UMLRpyPackage.IOBJECT_LINK__END1_MULTIPLICITY:
+				return END1_MULTIPLICITY_EDEFAULT == null ? end1Multiplicity != null : !END1_MULTIPLICITY_EDEFAULT.equals(end1Multiplicity);
+			case UMLRpyPackage.IOBJECT_LINK__END2_MULTIPLICITY:
+				return END2_MULTIPLICITY_EDEFAULT == null ? end2Multiplicity != null : !END2_MULTIPLICITY_EDEFAULT.equals(end2Multiplicity);
+			case UMLRpyPackage.IOBJECT_LINK__TO_PORT:
+				return toPort != null;
+			case UMLRpyPackage.IOBJECT_LINK__FROM_PORT:
+				return fromPort != null;
+			case UMLRpyPackage.IOBJECT_LINK__DESCRIPTION:
+				return description != null;
+			case UMLRpyPackage.IOBJECT_LINK__REQUIREMEN_TRACABILITY_HANDLE:
+				return REQUIREMEN_TRACABILITY_HANDLE_EDEFAULT == null ? requiremenTracabilityHandle != null : !REQUIREMEN_TRACABILITY_HANDLE_EDEFAULT.equals(requiremenTracabilityHandle);
+			case UMLRpyPackage.IOBJECT_LINK__CODE_UPDATE_CG_TIME:
+				return codeUpdateCGTime != null && !codeUpdateCGTime.isEmpty();
+			case UMLRpyPackage.IOBJECT_LINK__OBJECT_CREATION:
+				return OBJECT_CREATION_EDEFAULT == null ? objectCreation != null : !OBJECT_CREATION_EDEFAULT.equals(objectCreation);
+			case UMLRpyPackage.IOBJECT_LINK__UML_DEPENDENCY_ID:
+				return UML_DEPENDENCY_ID_EDEFAULT == null ? umlDependencyID != null : !UML_DEPENDENCY_ID_EDEFAULT.equals(umlDependencyID);
+		}
+		return super.eIsSet(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public int eBaseStructuralFeatureID(int derivedFeatureID, Class<?> baseClass) {
+		if (baseClass == ValueType.class) {
+			switch (derivedFeatureID) {
+				case UMLRpyPackage.IOBJECT_LINK__MODIFIED_TIME_WEAK: return UMLRpyPackage.VALUE_TYPE__MODIFIED_TIME_WEAK;
+				case UMLRpyPackage.IOBJECT_LINK__ID: return UMLRpyPackage.VALUE_TYPE__ID;
+				case UMLRpyPackage.IOBJECT_LINK__MY_STATE: return UMLRpyPackage.VALUE_TYPE__MY_STATE;
+				case UMLRpyPackage.IOBJECT_LINK__NAME: return UMLRpyPackage.VALUE_TYPE__NAME;
+				default: return -1;
+			}
+		}
+		if (baseClass == M_pModelObjectType.class) {
+			switch (derivedFeatureID) {
+				default: return -1;
+			}
+		}
+		if (baseClass == ElementsType.class) {
+			switch (derivedFeatureID) {
+				default: return -1;
+			}
+		}
+		if (baseClass == DependsOnType.class) {
+			switch (derivedFeatureID) {
+				default: return -1;
+			}
+		}
+		if (baseClass == EModelElement.class) {
+			switch (derivedFeatureID) {
+				case UMLRpyPackage.IOBJECT_LINK__EANNOTATIONS: return EcorePackage.EMODEL_ELEMENT__EANNOTATIONS;
+				default: return -1;
+			}
+		}
+		if (baseClass == IModelElement.class) {
+			switch (derivedFeatureID) {
+				case UMLRpyPackage.IOBJECT_LINK__DISPLAY_NAME: return UMLRpyPackage.IMODEL_ELEMENT__DISPLAY_NAME;
+				default: return -1;
+			}
+		}
+		return super.eBaseStructuralFeatureID(derivedFeatureID, baseClass);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public int eDerivedStructuralFeatureID(int baseFeatureID, Class<?> baseClass) {
+		if (baseClass == ValueType.class) {
+			switch (baseFeatureID) {
+				case UMLRpyPackage.VALUE_TYPE__MODIFIED_TIME_WEAK: return UMLRpyPackage.IOBJECT_LINK__MODIFIED_TIME_WEAK;
+				case UMLRpyPackage.VALUE_TYPE__ID: return UMLRpyPackage.IOBJECT_LINK__ID;
+				case UMLRpyPackage.VALUE_TYPE__MY_STATE: return UMLRpyPackage.IOBJECT_LINK__MY_STATE;
+				case UMLRpyPackage.VALUE_TYPE__NAME: return UMLRpyPackage.IOBJECT_LINK__NAME;
+				default: return -1;
+			}
+		}
+		if (baseClass == M_pModelObjectType.class) {
+			switch (baseFeatureID) {
+				default: return -1;
+			}
+		}
+		if (baseClass == ElementsType.class) {
+			switch (baseFeatureID) {
+				default: return -1;
+			}
+		}
+		if (baseClass == DependsOnType.class) {
+			switch (baseFeatureID) {
+				default: return -1;
+			}
+		}
+		if (baseClass == EModelElement.class) {
+			switch (baseFeatureID) {
+				case EcorePackage.EMODEL_ELEMENT__EANNOTATIONS: return UMLRpyPackage.IOBJECT_LINK__EANNOTATIONS;
+				default: return -1;
+			}
+		}
+		if (baseClass == IModelElement.class) {
+			switch (baseFeatureID) {
+				case UMLRpyPackage.IMODEL_ELEMENT__DISPLAY_NAME: return UMLRpyPackage.IOBJECT_LINK__DISPLAY_NAME;
+				default: return -1;
+			}
+		}
+		return super.eDerivedStructuralFeatureID(baseFeatureID, baseClass);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public int eDerivedOperationID(int baseOperationID, Class<?> baseClass) {
+		if (baseClass == ValueType.class) {
+			switch (baseOperationID) {
+				default: return -1;
+			}
+		}
+		if (baseClass == M_pModelObjectType.class) {
+			switch (baseOperationID) {
+				default: return -1;
+			}
+		}
+		if (baseClass == ElementsType.class) {
+			switch (baseOperationID) {
+				default: return -1;
+			}
+		}
+		if (baseClass == DependsOnType.class) {
+			switch (baseOperationID) {
+				default: return -1;
+			}
+		}
+		if (baseClass == EModelElement.class) {
+			switch (baseOperationID) {
+				case EcorePackage.EMODEL_ELEMENT___GET_EANNOTATION__STRING: return UMLRpyPackage.IOBJECT_LINK___GET_EANNOTATION__STRING;
+				default: return -1;
+			}
+		}
+		if (baseClass == IModelElement.class) {
+			switch (baseOperationID) {
+				default: return -1;
+			}
+		}
+		return super.eDerivedOperationID(baseOperationID, baseClass);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object eInvoke(int operationID, EList<?> arguments) throws InvocationTargetException {
+		switch (operationID) {
+			case UMLRpyPackage.IOBJECT_LINK___GET_EANNOTATION__STRING:
+				return getEAnnotation((String)arguments.get(0));
+		}
+		return super.eInvoke(operationID, arguments);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String toString() {
+		if (eIsProxy()) return super.toString();
+
+		StringBuffer result = new StringBuffer(super.toString());
+		result.append(" (modifiedTimeWeak: "); //$NON-NLS-1$
+		result.append(modifiedTimeWeak);
+		result.append(", id: "); //$NON-NLS-1$
+		result.append(id);
+		result.append(", myState: "); //$NON-NLS-1$
+		result.append(myState);
+		result.append(", name: "); //$NON-NLS-1$
+		result.append(name);
+		result.append(", displayName: "); //$NON-NLS-1$
+		result.append(displayName);
+		result.append(", end1Multiplicity: "); //$NON-NLS-1$
+		result.append(end1Multiplicity);
+		result.append(", end2Multiplicity: "); //$NON-NLS-1$
+		result.append(end2Multiplicity);
+		result.append(", requiremenTracabilityHandle: "); //$NON-NLS-1$
+		result.append(requiremenTracabilityHandle);
+		result.append(", codeUpdateCGTime: "); //$NON-NLS-1$
+		result.append(codeUpdateCGTime);
+		result.append(", objectCreation: "); //$NON-NLS-1$
+		result.append(objectCreation);
+		result.append(", umlDependencyID: "); //$NON-NLS-1$
+		result.append(umlDependencyID);
+		result.append(')');
+		return result.toString();
+	}
+
+} //IObjectLinkImpl
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/IObjectModelDiagramImpl.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/IObjectModelDiagramImpl.java
new file mode 100755
index 0000000..b316454
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/IObjectModelDiagramImpl.java
@@ -0,0 +1,47 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl;
+
+import org.eclipse.emf.ecore.EClass;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IObjectModelDiagram;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>IObject Model Diagram</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+public class IObjectModelDiagramImpl extends IDiagramImpl implements IObjectModelDiagram {
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected IObjectModelDiagramImpl() {
+		super();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EClass eStaticClass() {
+		return UMLRpyPackage.eINSTANCE.getIObjectModelDiagram();
+	}
+
+} //IObjectModelDiagramImpl
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/IObjectNodeImpl.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/IObjectNodeImpl.java
new file mode 100755
index 0000000..b4ff14a
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/IObjectNodeImpl.java
@@ -0,0 +1,295 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.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.interoperability.rpy.rpymetamodel.IClass;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IObjectNode;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IState;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>IObject Node</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * </p>
+ * <ul>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IObjectNodeImpl#getRepresents <em>Represents</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IObjectNodeImpl#getTheInState <em>The In State</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IObjectNodeImpl#getInState <em>In State</em>}</li>
+ * </ul>
+ *
+ * @generated
+ */
+public class IObjectNodeImpl extends IStateImpl implements IObjectNode {
+	/**
+	 * The cached value of the '{@link #getRepresents() <em>Represents</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getRepresents()
+	 * @generated
+	 * @ordered
+	 */
+	protected IClass represents;
+
+	/**
+	 * The cached value of the '{@link #getTheInState() <em>The In State</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getTheInState()
+	 * @generated
+	 * @ordered
+	 */
+	protected IState theInState;
+
+	/**
+	 * The default value of the '{@link #getInState() <em>In State</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getInState()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String IN_STATE_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getInState() <em>In State</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getInState()
+	 * @generated
+	 * @ordered
+	 */
+	protected String inState = IN_STATE_EDEFAULT;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected IObjectNodeImpl() {
+		super();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EClass eStaticClass() {
+		return UMLRpyPackage.eINSTANCE.getIObjectNode();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IClass getRepresents() {
+		if (represents != null && represents.eIsProxy()) {
+			InternalEObject oldRepresents = (InternalEObject)represents;
+			represents = (IClass)eResolveProxy(oldRepresents);
+			if (represents != oldRepresents) {
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.IOBJECT_NODE__REPRESENTS, oldRepresents, represents));
+			}
+		}
+		return represents;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IClass basicGetRepresents() {
+		return represents;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setRepresents(IClass newRepresents) {
+		IClass oldRepresents = represents;
+		represents = newRepresents;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IOBJECT_NODE__REPRESENTS, oldRepresents, represents));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IState getTheInState() {
+		if (theInState != null && theInState.eIsProxy()) {
+			InternalEObject oldTheInState = (InternalEObject)theInState;
+			theInState = (IState)eResolveProxy(oldTheInState);
+			if (theInState != oldTheInState) {
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.IOBJECT_NODE__THE_IN_STATE, oldTheInState, theInState));
+			}
+		}
+		return theInState;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IState basicGetTheInState() {
+		return theInState;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setTheInState(IState newTheInState) {
+		IState oldTheInState = theInState;
+		theInState = newTheInState;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IOBJECT_NODE__THE_IN_STATE, oldTheInState, theInState));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getInState() {
+		return inState;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setInState(String newInState) {
+		String oldInState = inState;
+		inState = newInState;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IOBJECT_NODE__IN_STATE, oldInState, inState));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object eGet(int featureID, boolean resolve, boolean coreType) {
+		switch (featureID) {
+			case UMLRpyPackage.IOBJECT_NODE__REPRESENTS:
+				if (resolve) return getRepresents();
+				return basicGetRepresents();
+			case UMLRpyPackage.IOBJECT_NODE__THE_IN_STATE:
+				if (resolve) return getTheInState();
+				return basicGetTheInState();
+			case UMLRpyPackage.IOBJECT_NODE__IN_STATE:
+				return getInState();
+		}
+		return super.eGet(featureID, resolve, coreType);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void eSet(int featureID, Object newValue) {
+		switch (featureID) {
+			case UMLRpyPackage.IOBJECT_NODE__REPRESENTS:
+				setRepresents((IClass)newValue);
+				return;
+			case UMLRpyPackage.IOBJECT_NODE__THE_IN_STATE:
+				setTheInState((IState)newValue);
+				return;
+			case UMLRpyPackage.IOBJECT_NODE__IN_STATE:
+				setInState((String)newValue);
+				return;
+		}
+		super.eSet(featureID, newValue);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void eUnset(int featureID) {
+		switch (featureID) {
+			case UMLRpyPackage.IOBJECT_NODE__REPRESENTS:
+				setRepresents((IClass)null);
+				return;
+			case UMLRpyPackage.IOBJECT_NODE__THE_IN_STATE:
+				setTheInState((IState)null);
+				return;
+			case UMLRpyPackage.IOBJECT_NODE__IN_STATE:
+				setInState(IN_STATE_EDEFAULT);
+				return;
+		}
+		super.eUnset(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public boolean eIsSet(int featureID) {
+		switch (featureID) {
+			case UMLRpyPackage.IOBJECT_NODE__REPRESENTS:
+				return represents != null;
+			case UMLRpyPackage.IOBJECT_NODE__THE_IN_STATE:
+				return theInState != null;
+			case UMLRpyPackage.IOBJECT_NODE__IN_STATE:
+				return IN_STATE_EDEFAULT == null ? inState != null : !IN_STATE_EDEFAULT.equals(inState);
+		}
+		return super.eIsSet(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String toString() {
+		if (eIsProxy()) return super.toString();
+
+		StringBuffer result = new StringBuffer(super.toString());
+		result.append(" (inState: "); //$NON-NLS-1$
+		result.append(inState);
+		result.append(')');
+		return result.toString();
+	}
+
+} //IObjectNodeImpl
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/IOperationImpl.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/IOperationImpl.java
new file mode 100755
index 0000000..c479ee3
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/IOperationImpl.java
@@ -0,0 +1,47 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl;
+
+import org.eclipse.emf.ecore.EClass;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IOperation;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>IOperation</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+public class IOperationImpl extends IInterfaceItemImpl implements IOperation {
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected IOperationImpl() {
+		super();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EClass eStaticClass() {
+		return UMLRpyPackage.eINSTANCE.getIOperation();
+	}
+
+} //IOperationImpl
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/IPackageImpl.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/IPackageImpl.java
new file mode 100755
index 0000000..f5e2b86
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/IPackageImpl.java
@@ -0,0 +1,887 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl;
+
+import java.util.Collection;
+
+import org.eclipse.emf.common.notify.Notification;
+import org.eclipse.emf.common.notify.NotificationChain;
+
+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.EDataTypeEList;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IComment;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IDescription;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IModelElement;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IPackage;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IPropertyContainer;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>IPackage</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * </p>
+ * <ul>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IPackageImpl#getModifiedTimeWeak <em>Modified Time Weak</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IPackageImpl#getId <em>Id</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IPackageImpl#getDescription <em>Description</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IPackageImpl#getUmlDependencyID <em>Uml Dependency ID</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IPackageImpl#getLastID <em>Last ID</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IPackageImpl#getMyState <em>My State</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IPackageImpl#getAnnotations <em>Annotations</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IPackageImpl#getObjectCreation <em>Object Creation</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IPackageImpl#getStereotypes <em>Stereotypes</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IPackageImpl#getName <em>Name</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IPackageImpl#getProperties <em>Properties</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IPackageImpl#getCmheader <em>Cmheader</em>}</li>
+ * </ul>
+ *
+ * @generated
+ */
+public class IPackageImpl extends IUnitImpl implements IPackage {
+	/**
+	 * The cached value of the '{@link #getModifiedTimeWeak() <em>Modified Time Weak</em>}' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getModifiedTimeWeak()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<String> modifiedTimeWeak;
+
+	/**
+	 * The default value of the '{@link #getId() <em>Id</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getId()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String ID_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getId() <em>Id</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getId()
+	 * @generated
+	 * @ordered
+	 */
+	protected String id = ID_EDEFAULT;
+
+	/**
+	 * The cached value of the '{@link #getDescription() <em>Description</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getDescription()
+	 * @generated
+	 * @ordered
+	 */
+	protected IDescription description;
+
+	/**
+	 * The default value of the '{@link #getUmlDependencyID() <em>Uml Dependency ID</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getUmlDependencyID()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String UML_DEPENDENCY_ID_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getUmlDependencyID() <em>Uml Dependency ID</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getUmlDependencyID()
+	 * @generated
+	 * @ordered
+	 */
+	protected String umlDependencyID = UML_DEPENDENCY_ID_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getLastID() <em>Last ID</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getLastID()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String LAST_ID_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getLastID() <em>Last ID</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getLastID()
+	 * @generated
+	 * @ordered
+	 */
+	protected String lastID = LAST_ID_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getMyState() <em>My State</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getMyState()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String MY_STATE_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getMyState() <em>My State</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getMyState()
+	 * @generated
+	 * @ordered
+	 */
+	protected String myState = MY_STATE_EDEFAULT;
+
+	/**
+	 * The cached value of the '{@link #getAnnotations() <em>Annotations</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getAnnotations()
+	 * @generated
+	 * @ordered
+	 */
+	protected IComment annotations;
+
+	/**
+	 * The default value of the '{@link #getObjectCreation() <em>Object Creation</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getObjectCreation()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String OBJECT_CREATION_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getObjectCreation() <em>Object Creation</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getObjectCreation()
+	 * @generated
+	 * @ordered
+	 */
+	protected String objectCreation = OBJECT_CREATION_EDEFAULT;
+
+	/**
+	 * The cached value of the '{@link #getStereotypes() <em>Stereotypes</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getStereotypes()
+	 * @generated
+	 * @ordered
+	 */
+	protected IModelElement stereotypes;
+
+	/**
+	 * The default value of the '{@link #getName() <em>Name</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getName()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String NAME_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getName() <em>Name</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getName()
+	 * @generated
+	 * @ordered
+	 */
+	protected String name = NAME_EDEFAULT;
+
+	/**
+	 * The cached value of the '{@link #getProperties() <em>Properties</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getProperties()
+	 * @generated
+	 * @ordered
+	 */
+	protected IPropertyContainer properties;
+
+	/**
+	 * The default value of the '{@link #getCmheader() <em>Cmheader</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getCmheader()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String CMHEADER_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getCmheader() <em>Cmheader</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getCmheader()
+	 * @generated
+	 * @ordered
+	 */
+	protected String cmheader = CMHEADER_EDEFAULT;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected IPackageImpl() {
+		super();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EClass eStaticClass() {
+		return UMLRpyPackage.eINSTANCE.getIPackage();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<String> getModifiedTimeWeak() {
+		if (modifiedTimeWeak == null) {
+			modifiedTimeWeak = new EDataTypeEList<String>(String.class, this, UMLRpyPackage.IPACKAGE__MODIFIED_TIME_WEAK);
+		}
+		return modifiedTimeWeak;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getId() {
+		return id;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setId(String newId) {
+		String oldId = id;
+		id = newId;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IPACKAGE__ID, oldId, id));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IDescription getDescription() {
+		if (description != null && description.eIsProxy()) {
+			InternalEObject oldDescription = (InternalEObject)description;
+			description = (IDescription)eResolveProxy(oldDescription);
+			if (description != oldDescription) {
+				InternalEObject newDescription = (InternalEObject)description;
+				NotificationChain msgs = oldDescription.eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IPACKAGE__DESCRIPTION, null, null);
+				if (newDescription.eInternalContainer() == null) {
+					msgs = newDescription.eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IPACKAGE__DESCRIPTION, null, msgs);
+				}
+				if (msgs != null) msgs.dispatch();
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.IPACKAGE__DESCRIPTION, oldDescription, description));
+			}
+		}
+		return description;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IDescription basicGetDescription() {
+		return description;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public NotificationChain basicSetDescription(IDescription newDescription, NotificationChain msgs) {
+		IDescription oldDescription = description;
+		description = newDescription;
+		if (eNotificationRequired()) {
+			ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IPACKAGE__DESCRIPTION, oldDescription, newDescription);
+			if (msgs == null) msgs = notification; else msgs.add(notification);
+		}
+		return msgs;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setDescription(IDescription newDescription) {
+		if (newDescription != description) {
+			NotificationChain msgs = null;
+			if (description != null)
+				msgs = ((InternalEObject)description).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IPACKAGE__DESCRIPTION, null, msgs);
+			if (newDescription != null)
+				msgs = ((InternalEObject)newDescription).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IPACKAGE__DESCRIPTION, null, msgs);
+			msgs = basicSetDescription(newDescription, msgs);
+			if (msgs != null) msgs.dispatch();
+		}
+		else if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IPACKAGE__DESCRIPTION, newDescription, newDescription));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getUmlDependencyID() {
+		return umlDependencyID;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setUmlDependencyID(String newUmlDependencyID) {
+		String oldUmlDependencyID = umlDependencyID;
+		umlDependencyID = newUmlDependencyID;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IPACKAGE__UML_DEPENDENCY_ID, oldUmlDependencyID, umlDependencyID));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getLastID() {
+		return lastID;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setLastID(String newLastID) {
+		String oldLastID = lastID;
+		lastID = newLastID;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IPACKAGE__LAST_ID, oldLastID, lastID));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getMyState() {
+		return myState;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setMyState(String newMyState) {
+		String oldMyState = myState;
+		myState = newMyState;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IPACKAGE__MY_STATE, oldMyState, myState));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IComment getAnnotations() {
+		if (annotations != null && annotations.eIsProxy()) {
+			InternalEObject oldAnnotations = (InternalEObject)annotations;
+			annotations = (IComment)eResolveProxy(oldAnnotations);
+			if (annotations != oldAnnotations) {
+				InternalEObject newAnnotations = (InternalEObject)annotations;
+				NotificationChain msgs = oldAnnotations.eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IPACKAGE__ANNOTATIONS, null, null);
+				if (newAnnotations.eInternalContainer() == null) {
+					msgs = newAnnotations.eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IPACKAGE__ANNOTATIONS, null, msgs);
+				}
+				if (msgs != null) msgs.dispatch();
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.IPACKAGE__ANNOTATIONS, oldAnnotations, annotations));
+			}
+		}
+		return annotations;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IComment basicGetAnnotations() {
+		return annotations;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public NotificationChain basicSetAnnotations(IComment newAnnotations, NotificationChain msgs) {
+		IComment oldAnnotations = annotations;
+		annotations = newAnnotations;
+		if (eNotificationRequired()) {
+			ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IPACKAGE__ANNOTATIONS, oldAnnotations, newAnnotations);
+			if (msgs == null) msgs = notification; else msgs.add(notification);
+		}
+		return msgs;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setAnnotations(IComment newAnnotations) {
+		if (newAnnotations != annotations) {
+			NotificationChain msgs = null;
+			if (annotations != null)
+				msgs = ((InternalEObject)annotations).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IPACKAGE__ANNOTATIONS, null, msgs);
+			if (newAnnotations != null)
+				msgs = ((InternalEObject)newAnnotations).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IPACKAGE__ANNOTATIONS, null, msgs);
+			msgs = basicSetAnnotations(newAnnotations, msgs);
+			if (msgs != null) msgs.dispatch();
+		}
+		else if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IPACKAGE__ANNOTATIONS, newAnnotations, newAnnotations));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getObjectCreation() {
+		return objectCreation;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setObjectCreation(String newObjectCreation) {
+		String oldObjectCreation = objectCreation;
+		objectCreation = newObjectCreation;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IPACKAGE__OBJECT_CREATION, oldObjectCreation, objectCreation));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IModelElement getStereotypes() {
+		if (stereotypes != null && stereotypes.eIsProxy()) {
+			InternalEObject oldStereotypes = (InternalEObject)stereotypes;
+			stereotypes = (IModelElement)eResolveProxy(oldStereotypes);
+			if (stereotypes != oldStereotypes) {
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.IPACKAGE__STEREOTYPES, oldStereotypes, stereotypes));
+			}
+		}
+		return stereotypes;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IModelElement basicGetStereotypes() {
+		return stereotypes;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setStereotypes(IModelElement newStereotypes) {
+		IModelElement oldStereotypes = stereotypes;
+		stereotypes = newStereotypes;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IPACKAGE__STEREOTYPES, oldStereotypes, stereotypes));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getName() {
+		return name;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setName(String newName) {
+		String oldName = name;
+		name = newName;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IPACKAGE__NAME, oldName, name));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IPropertyContainer getProperties() {
+		if (properties != null && properties.eIsProxy()) {
+			InternalEObject oldProperties = (InternalEObject)properties;
+			properties = (IPropertyContainer)eResolveProxy(oldProperties);
+			if (properties != oldProperties) {
+				InternalEObject newProperties = (InternalEObject)properties;
+				NotificationChain msgs = oldProperties.eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IPACKAGE__PROPERTIES, null, null);
+				if (newProperties.eInternalContainer() == null) {
+					msgs = newProperties.eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IPACKAGE__PROPERTIES, null, msgs);
+				}
+				if (msgs != null) msgs.dispatch();
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.IPACKAGE__PROPERTIES, oldProperties, properties));
+			}
+		}
+		return properties;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IPropertyContainer basicGetProperties() {
+		return properties;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public NotificationChain basicSetProperties(IPropertyContainer newProperties, NotificationChain msgs) {
+		IPropertyContainer oldProperties = properties;
+		properties = newProperties;
+		if (eNotificationRequired()) {
+			ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IPACKAGE__PROPERTIES, oldProperties, newProperties);
+			if (msgs == null) msgs = notification; else msgs.add(notification);
+		}
+		return msgs;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setProperties(IPropertyContainer newProperties) {
+		if (newProperties != properties) {
+			NotificationChain msgs = null;
+			if (properties != null)
+				msgs = ((InternalEObject)properties).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IPACKAGE__PROPERTIES, null, msgs);
+			if (newProperties != null)
+				msgs = ((InternalEObject)newProperties).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IPACKAGE__PROPERTIES, null, msgs);
+			msgs = basicSetProperties(newProperties, msgs);
+			if (msgs != null) msgs.dispatch();
+		}
+		else if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IPACKAGE__PROPERTIES, newProperties, newProperties));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getCmheader() {
+		return cmheader;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setCmheader(String newCmheader) {
+		String oldCmheader = cmheader;
+		cmheader = newCmheader;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IPACKAGE__CMHEADER, oldCmheader, cmheader));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
+		switch (featureID) {
+			case UMLRpyPackage.IPACKAGE__DESCRIPTION:
+				return basicSetDescription(null, msgs);
+			case UMLRpyPackage.IPACKAGE__ANNOTATIONS:
+				return basicSetAnnotations(null, msgs);
+			case UMLRpyPackage.IPACKAGE__PROPERTIES:
+				return basicSetProperties(null, msgs);
+		}
+		return super.eInverseRemove(otherEnd, featureID, msgs);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object eGet(int featureID, boolean resolve, boolean coreType) {
+		switch (featureID) {
+			case UMLRpyPackage.IPACKAGE__MODIFIED_TIME_WEAK:
+				return getModifiedTimeWeak();
+			case UMLRpyPackage.IPACKAGE__ID:
+				return getId();
+			case UMLRpyPackage.IPACKAGE__DESCRIPTION:
+				if (resolve) return getDescription();
+				return basicGetDescription();
+			case UMLRpyPackage.IPACKAGE__UML_DEPENDENCY_ID:
+				return getUmlDependencyID();
+			case UMLRpyPackage.IPACKAGE__LAST_ID:
+				return getLastID();
+			case UMLRpyPackage.IPACKAGE__MY_STATE:
+				return getMyState();
+			case UMLRpyPackage.IPACKAGE__ANNOTATIONS:
+				if (resolve) return getAnnotations();
+				return basicGetAnnotations();
+			case UMLRpyPackage.IPACKAGE__OBJECT_CREATION:
+				return getObjectCreation();
+			case UMLRpyPackage.IPACKAGE__STEREOTYPES:
+				if (resolve) return getStereotypes();
+				return basicGetStereotypes();
+			case UMLRpyPackage.IPACKAGE__NAME:
+				return getName();
+			case UMLRpyPackage.IPACKAGE__PROPERTIES:
+				if (resolve) return getProperties();
+				return basicGetProperties();
+			case UMLRpyPackage.IPACKAGE__CMHEADER:
+				return getCmheader();
+		}
+		return super.eGet(featureID, resolve, coreType);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@SuppressWarnings("unchecked")
+	@Override
+	public void eSet(int featureID, Object newValue) {
+		switch (featureID) {
+			case UMLRpyPackage.IPACKAGE__MODIFIED_TIME_WEAK:
+				getModifiedTimeWeak().clear();
+				getModifiedTimeWeak().addAll((Collection<? extends String>)newValue);
+				return;
+			case UMLRpyPackage.IPACKAGE__ID:
+				setId((String)newValue);
+				return;
+			case UMLRpyPackage.IPACKAGE__DESCRIPTION:
+				setDescription((IDescription)newValue);
+				return;
+			case UMLRpyPackage.IPACKAGE__UML_DEPENDENCY_ID:
+				setUmlDependencyID((String)newValue);
+				return;
+			case UMLRpyPackage.IPACKAGE__LAST_ID:
+				setLastID((String)newValue);
+				return;
+			case UMLRpyPackage.IPACKAGE__MY_STATE:
+				setMyState((String)newValue);
+				return;
+			case UMLRpyPackage.IPACKAGE__ANNOTATIONS:
+				setAnnotations((IComment)newValue);
+				return;
+			case UMLRpyPackage.IPACKAGE__OBJECT_CREATION:
+				setObjectCreation((String)newValue);
+				return;
+			case UMLRpyPackage.IPACKAGE__STEREOTYPES:
+				setStereotypes((IModelElement)newValue);
+				return;
+			case UMLRpyPackage.IPACKAGE__NAME:
+				setName((String)newValue);
+				return;
+			case UMLRpyPackage.IPACKAGE__PROPERTIES:
+				setProperties((IPropertyContainer)newValue);
+				return;
+			case UMLRpyPackage.IPACKAGE__CMHEADER:
+				setCmheader((String)newValue);
+				return;
+		}
+		super.eSet(featureID, newValue);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void eUnset(int featureID) {
+		switch (featureID) {
+			case UMLRpyPackage.IPACKAGE__MODIFIED_TIME_WEAK:
+				getModifiedTimeWeak().clear();
+				return;
+			case UMLRpyPackage.IPACKAGE__ID:
+				setId(ID_EDEFAULT);
+				return;
+			case UMLRpyPackage.IPACKAGE__DESCRIPTION:
+				setDescription((IDescription)null);
+				return;
+			case UMLRpyPackage.IPACKAGE__UML_DEPENDENCY_ID:
+				setUmlDependencyID(UML_DEPENDENCY_ID_EDEFAULT);
+				return;
+			case UMLRpyPackage.IPACKAGE__LAST_ID:
+				setLastID(LAST_ID_EDEFAULT);
+				return;
+			case UMLRpyPackage.IPACKAGE__MY_STATE:
+				setMyState(MY_STATE_EDEFAULT);
+				return;
+			case UMLRpyPackage.IPACKAGE__ANNOTATIONS:
+				setAnnotations((IComment)null);
+				return;
+			case UMLRpyPackage.IPACKAGE__OBJECT_CREATION:
+				setObjectCreation(OBJECT_CREATION_EDEFAULT);
+				return;
+			case UMLRpyPackage.IPACKAGE__STEREOTYPES:
+				setStereotypes((IModelElement)null);
+				return;
+			case UMLRpyPackage.IPACKAGE__NAME:
+				setName(NAME_EDEFAULT);
+				return;
+			case UMLRpyPackage.IPACKAGE__PROPERTIES:
+				setProperties((IPropertyContainer)null);
+				return;
+			case UMLRpyPackage.IPACKAGE__CMHEADER:
+				setCmheader(CMHEADER_EDEFAULT);
+				return;
+		}
+		super.eUnset(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public boolean eIsSet(int featureID) {
+		switch (featureID) {
+			case UMLRpyPackage.IPACKAGE__MODIFIED_TIME_WEAK:
+				return modifiedTimeWeak != null && !modifiedTimeWeak.isEmpty();
+			case UMLRpyPackage.IPACKAGE__ID:
+				return ID_EDEFAULT == null ? id != null : !ID_EDEFAULT.equals(id);
+			case UMLRpyPackage.IPACKAGE__DESCRIPTION:
+				return description != null;
+			case UMLRpyPackage.IPACKAGE__UML_DEPENDENCY_ID:
+				return UML_DEPENDENCY_ID_EDEFAULT == null ? umlDependencyID != null : !UML_DEPENDENCY_ID_EDEFAULT.equals(umlDependencyID);
+			case UMLRpyPackage.IPACKAGE__LAST_ID:
+				return LAST_ID_EDEFAULT == null ? lastID != null : !LAST_ID_EDEFAULT.equals(lastID);
+			case UMLRpyPackage.IPACKAGE__MY_STATE:
+				return MY_STATE_EDEFAULT == null ? myState != null : !MY_STATE_EDEFAULT.equals(myState);
+			case UMLRpyPackage.IPACKAGE__ANNOTATIONS:
+				return annotations != null;
+			case UMLRpyPackage.IPACKAGE__OBJECT_CREATION:
+				return OBJECT_CREATION_EDEFAULT == null ? objectCreation != null : !OBJECT_CREATION_EDEFAULT.equals(objectCreation);
+			case UMLRpyPackage.IPACKAGE__STEREOTYPES:
+				return stereotypes != null;
+			case UMLRpyPackage.IPACKAGE__NAME:
+				return NAME_EDEFAULT == null ? name != null : !NAME_EDEFAULT.equals(name);
+			case UMLRpyPackage.IPACKAGE__PROPERTIES:
+				return properties != null;
+			case UMLRpyPackage.IPACKAGE__CMHEADER:
+				return CMHEADER_EDEFAULT == null ? cmheader != null : !CMHEADER_EDEFAULT.equals(cmheader);
+		}
+		return super.eIsSet(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String toString() {
+		if (eIsProxy()) return super.toString();
+
+		StringBuffer result = new StringBuffer(super.toString());
+		result.append(" (modifiedTimeWeak: "); //$NON-NLS-1$
+		result.append(modifiedTimeWeak);
+		result.append(", id: "); //$NON-NLS-1$
+		result.append(id);
+		result.append(", umlDependencyID: "); //$NON-NLS-1$
+		result.append(umlDependencyID);
+		result.append(", lastID: "); //$NON-NLS-1$
+		result.append(lastID);
+		result.append(", myState: "); //$NON-NLS-1$
+		result.append(myState);
+		result.append(", objectCreation: "); //$NON-NLS-1$
+		result.append(objectCreation);
+		result.append(", name: "); //$NON-NLS-1$
+		result.append(name);
+		result.append(", cmheader: "); //$NON-NLS-1$
+		result.append(cmheader);
+		result.append(')');
+		return result.toString();
+	}
+
+} //IPackageImpl
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/IPanelDiagramImpl.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/IPanelDiagramImpl.java
new file mode 100755
index 0000000..71311fc
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/IPanelDiagramImpl.java
@@ -0,0 +1,47 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl;
+
+import org.eclipse.emf.ecore.EClass;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IPanelDiagram;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>IPanel Diagram</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+public class IPanelDiagramImpl extends IDiagramImpl implements IPanelDiagram {
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected IPanelDiagramImpl() {
+		super();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EClass eStaticClass() {
+		return UMLRpyPackage.eINSTANCE.getIPanelDiagram();
+	}
+
+} //IPanelDiagramImpl
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/IPartImpl.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/IPartImpl.java
new file mode 100755
index 0000000..f2b1273
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/IPartImpl.java
@@ -0,0 +1,1923 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl;
+
+import java.lang.reflect.InvocationTargetException;
+import java.util.Collection;
+
+import org.eclipse.emf.common.notify.Notification;
+import org.eclipse.emf.common.notify.NotificationChain;
+
+import org.eclipse.emf.common.util.EList;
+import org.eclipse.emf.ecore.EAnnotation;
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.EModelElement;
+import org.eclipse.emf.ecore.EcorePackage;
+import org.eclipse.emf.ecore.InternalEObject;
+
+import org.eclipse.emf.ecore.impl.ENotificationImpl;
+
+import org.eclipse.emf.ecore.util.EDataTypeEList;
+import org.eclipse.emf.ecore.util.EObjectContainmentEList;
+import org.eclipse.emf.ecore.util.EObjectContainmentWithInverseEList;
+import org.eclipse.emf.ecore.util.InternalEList;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ConveyedType;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.DependsOnType;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ElementsType;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.End1_Type;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.End2_Type;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.FromLinkType;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ICallAction;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IClass;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IDependency;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IDescription;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMHyperLink;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IModelElement;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IPart;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IPropertyContainer;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ISlot;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITag;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IUnit;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.InverseType;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.M_hTargetType;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.M_pModelObjectType;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.M_subjectType;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.TargetType;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ToLinkType;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ValueType;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>IPart</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * </p>
+ * <ul>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IPartImpl#getUmlDependencyID <em>Uml Dependency ID</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IPartImpl#getObjectCreation <em>Object Creation</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IPartImpl#getModifiedTimeWeak <em>Modified Time Weak</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IPartImpl#getId <em>Id</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IPartImpl#getMyState <em>My State</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IPartImpl#getName <em>Name</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IPartImpl#getRequiremenTracabilityHandle <em>Requiremen Tracability Handle</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IPartImpl#getDescription <em>Description</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IPartImpl#getProperties <em>Properties</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IPartImpl#getImplicitClass <em>Implicit Class</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IPartImpl#getLastID <em>Last ID</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IPartImpl#getMultiplicity <em>Multiplicity</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IPartImpl#getEAnnotations <em>EAnnotations</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IPartImpl#getDisplayName <em>Display Name</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IPartImpl#getStereotypes <em>Stereotypes</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IPartImpl#getOtherClass <em>Other Class</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IPartImpl#getInverse <em>Inverse</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IPartImpl#getDependencies <em>Dependencies</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IPartImpl#getTags <em>Tags</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IPartImpl#getInitialCallAction <em>Initial Call Action</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IPartImpl#getCodeUpdateCGTime <em>Code Update CG Time</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IPartImpl#getTheMainDiagram <em>The Main Diagram</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IPartImpl#getSlots <em>Slots</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IPartImpl#getHyperLinks <em>Hyper Links</em>}</li>
+ * </ul>
+ *
+ * @generated
+ */
+public class IPartImpl extends AssociationsTypeImpl implements IPart {
+	/**
+	 * The default value of the '{@link #getUmlDependencyID() <em>Uml Dependency ID</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getUmlDependencyID()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String UML_DEPENDENCY_ID_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getUmlDependencyID() <em>Uml Dependency ID</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getUmlDependencyID()
+	 * @generated
+	 * @ordered
+	 */
+	protected String umlDependencyID = UML_DEPENDENCY_ID_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getObjectCreation() <em>Object Creation</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getObjectCreation()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String OBJECT_CREATION_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getObjectCreation() <em>Object Creation</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getObjectCreation()
+	 * @generated
+	 * @ordered
+	 */
+	protected String objectCreation = OBJECT_CREATION_EDEFAULT;
+
+	/**
+	 * The cached value of the '{@link #getModifiedTimeWeak() <em>Modified Time Weak</em>}' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getModifiedTimeWeak()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<String> modifiedTimeWeak;
+
+	/**
+	 * The default value of the '{@link #getId() <em>Id</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getId()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String ID_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getId() <em>Id</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getId()
+	 * @generated
+	 * @ordered
+	 */
+	protected String id = ID_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getMyState() <em>My State</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getMyState()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String MY_STATE_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getMyState() <em>My State</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getMyState()
+	 * @generated
+	 * @ordered
+	 */
+	protected String myState = MY_STATE_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getName() <em>Name</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getName()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String NAME_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getName() <em>Name</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getName()
+	 * @generated
+	 * @ordered
+	 */
+	protected String name = NAME_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getRequiremenTracabilityHandle() <em>Requiremen Tracability Handle</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getRequiremenTracabilityHandle()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String REQUIREMEN_TRACABILITY_HANDLE_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getRequiremenTracabilityHandle() <em>Requiremen Tracability Handle</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getRequiremenTracabilityHandle()
+	 * @generated
+	 * @ordered
+	 */
+	protected String requiremenTracabilityHandle = REQUIREMEN_TRACABILITY_HANDLE_EDEFAULT;
+
+	/**
+	 * The cached value of the '{@link #getDescription() <em>Description</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getDescription()
+	 * @generated
+	 * @ordered
+	 */
+	protected IDescription description;
+
+	/**
+	 * The cached value of the '{@link #getProperties() <em>Properties</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getProperties()
+	 * @generated
+	 * @ordered
+	 */
+	protected IPropertyContainer properties;
+
+	/**
+	 * The cached value of the '{@link #getImplicitClass() <em>Implicit Class</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getImplicitClass()
+	 * @generated
+	 * @ordered
+	 */
+	protected IClass implicitClass;
+
+	/**
+	 * The default value of the '{@link #getLastID() <em>Last ID</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getLastID()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String LAST_ID_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getLastID() <em>Last ID</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getLastID()
+	 * @generated
+	 * @ordered
+	 */
+	protected String lastID = LAST_ID_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getMultiplicity() <em>Multiplicity</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getMultiplicity()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String MULTIPLICITY_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getMultiplicity() <em>Multiplicity</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getMultiplicity()
+	 * @generated
+	 * @ordered
+	 */
+	protected String multiplicity = MULTIPLICITY_EDEFAULT;
+
+	/**
+	 * The cached value of the '{@link #getEAnnotations() <em>EAnnotations</em>}' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getEAnnotations()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<EAnnotation> eAnnotations;
+
+	/**
+	 * The default value of the '{@link #getDisplayName() <em>Display Name</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getDisplayName()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String DISPLAY_NAME_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getDisplayName() <em>Display Name</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getDisplayName()
+	 * @generated
+	 * @ordered
+	 */
+	protected String displayName = DISPLAY_NAME_EDEFAULT;
+
+	/**
+	 * The cached value of the '{@link #getStereotypes() <em>Stereotypes</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getStereotypes()
+	 * @generated
+	 * @ordered
+	 */
+	protected IUnit stereotypes;
+
+	/**
+	 * The cached value of the '{@link #getOtherClass() <em>Other Class</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getOtherClass()
+	 * @generated
+	 * @ordered
+	 */
+	protected IUnit otherClass;
+
+	/**
+	 * The cached value of the '{@link #getInverse() <em>Inverse</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getInverse()
+	 * @generated
+	 * @ordered
+	 */
+	protected InverseType inverse;
+
+	/**
+	 * The cached value of the '{@link #getDependencies() <em>Dependencies</em>}' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getDependencies()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<IDependency> dependencies;
+
+	/**
+	 * The cached value of the '{@link #getTags() <em>Tags</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getTags()
+	 * @generated
+	 * @ordered
+	 */
+	protected ITag tags;
+
+	/**
+	 * The cached value of the '{@link #getInitialCallAction() <em>Initial Call Action</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getInitialCallAction()
+	 * @generated
+	 * @ordered
+	 */
+	protected ICallAction initialCallAction;
+
+	/**
+	 * The cached value of the '{@link #getCodeUpdateCGTime() <em>Code Update CG Time</em>}' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getCodeUpdateCGTime()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<String> codeUpdateCGTime;
+
+	/**
+	 * The cached value of the '{@link #getTheMainDiagram() <em>The Main Diagram</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getTheMainDiagram()
+	 * @generated
+	 * @ordered
+	 */
+	protected DependsOnType theMainDiagram;
+
+	/**
+	 * The cached value of the '{@link #getSlots() <em>Slots</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getSlots()
+	 * @generated
+	 * @ordered
+	 */
+	protected ISlot slots;
+
+	/**
+	 * The cached value of the '{@link #getHyperLinks() <em>Hyper Links</em>}' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getHyperLinks()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<IMHyperLink> hyperLinks;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected IPartImpl() {
+		super();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EClass eStaticClass() {
+		return UMLRpyPackage.eINSTANCE.getIPart();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getUmlDependencyID() {
+		return umlDependencyID;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setUmlDependencyID(String newUmlDependencyID) {
+		String oldUmlDependencyID = umlDependencyID;
+		umlDependencyID = newUmlDependencyID;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IPART__UML_DEPENDENCY_ID, oldUmlDependencyID, umlDependencyID));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getObjectCreation() {
+		return objectCreation;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setObjectCreation(String newObjectCreation) {
+		String oldObjectCreation = objectCreation;
+		objectCreation = newObjectCreation;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IPART__OBJECT_CREATION, oldObjectCreation, objectCreation));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<String> getModifiedTimeWeak() {
+		if (modifiedTimeWeak == null) {
+			modifiedTimeWeak = new EDataTypeEList<String>(String.class, this, UMLRpyPackage.IPART__MODIFIED_TIME_WEAK);
+		}
+		return modifiedTimeWeak;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getId() {
+		return id;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setId(String newId) {
+		String oldId = id;
+		id = newId;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IPART__ID, oldId, id));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getMyState() {
+		return myState;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setMyState(String newMyState) {
+		String oldMyState = myState;
+		myState = newMyState;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IPART__MY_STATE, oldMyState, myState));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getName() {
+		return name;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setName(String newName) {
+		String oldName = name;
+		name = newName;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IPART__NAME, oldName, name));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getRequiremenTracabilityHandle() {
+		return requiremenTracabilityHandle;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setRequiremenTracabilityHandle(String newRequiremenTracabilityHandle) {
+		String oldRequiremenTracabilityHandle = requiremenTracabilityHandle;
+		requiremenTracabilityHandle = newRequiremenTracabilityHandle;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IPART__REQUIREMEN_TRACABILITY_HANDLE, oldRequiremenTracabilityHandle, requiremenTracabilityHandle));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IDescription getDescription() {
+		if (description != null && description.eIsProxy()) {
+			InternalEObject oldDescription = (InternalEObject)description;
+			description = (IDescription)eResolveProxy(oldDescription);
+			if (description != oldDescription) {
+				InternalEObject newDescription = (InternalEObject)description;
+				NotificationChain msgs = oldDescription.eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IPART__DESCRIPTION, null, null);
+				if (newDescription.eInternalContainer() == null) {
+					msgs = newDescription.eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IPART__DESCRIPTION, null, msgs);
+				}
+				if (msgs != null) msgs.dispatch();
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.IPART__DESCRIPTION, oldDescription, description));
+			}
+		}
+		return description;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IDescription basicGetDescription() {
+		return description;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public NotificationChain basicSetDescription(IDescription newDescription, NotificationChain msgs) {
+		IDescription oldDescription = description;
+		description = newDescription;
+		if (eNotificationRequired()) {
+			ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IPART__DESCRIPTION, oldDescription, newDescription);
+			if (msgs == null) msgs = notification; else msgs.add(notification);
+		}
+		return msgs;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setDescription(IDescription newDescription) {
+		if (newDescription != description) {
+			NotificationChain msgs = null;
+			if (description != null)
+				msgs = ((InternalEObject)description).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IPART__DESCRIPTION, null, msgs);
+			if (newDescription != null)
+				msgs = ((InternalEObject)newDescription).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IPART__DESCRIPTION, null, msgs);
+			msgs = basicSetDescription(newDescription, msgs);
+			if (msgs != null) msgs.dispatch();
+		}
+		else if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IPART__DESCRIPTION, newDescription, newDescription));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IPropertyContainer getProperties() {
+		if (properties != null && properties.eIsProxy()) {
+			InternalEObject oldProperties = (InternalEObject)properties;
+			properties = (IPropertyContainer)eResolveProxy(oldProperties);
+			if (properties != oldProperties) {
+				InternalEObject newProperties = (InternalEObject)properties;
+				NotificationChain msgs = oldProperties.eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IPART__PROPERTIES, null, null);
+				if (newProperties.eInternalContainer() == null) {
+					msgs = newProperties.eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IPART__PROPERTIES, null, msgs);
+				}
+				if (msgs != null) msgs.dispatch();
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.IPART__PROPERTIES, oldProperties, properties));
+			}
+		}
+		return properties;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IPropertyContainer basicGetProperties() {
+		return properties;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public NotificationChain basicSetProperties(IPropertyContainer newProperties, NotificationChain msgs) {
+		IPropertyContainer oldProperties = properties;
+		properties = newProperties;
+		if (eNotificationRequired()) {
+			ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IPART__PROPERTIES, oldProperties, newProperties);
+			if (msgs == null) msgs = notification; else msgs.add(notification);
+		}
+		return msgs;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setProperties(IPropertyContainer newProperties) {
+		if (newProperties != properties) {
+			NotificationChain msgs = null;
+			if (properties != null)
+				msgs = ((InternalEObject)properties).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IPART__PROPERTIES, null, msgs);
+			if (newProperties != null)
+				msgs = ((InternalEObject)newProperties).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IPART__PROPERTIES, null, msgs);
+			msgs = basicSetProperties(newProperties, msgs);
+			if (msgs != null) msgs.dispatch();
+		}
+		else if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IPART__PROPERTIES, newProperties, newProperties));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IClass getImplicitClass() {
+		if (implicitClass != null && implicitClass.eIsProxy()) {
+			InternalEObject oldImplicitClass = (InternalEObject)implicitClass;
+			implicitClass = (IClass)eResolveProxy(oldImplicitClass);
+			if (implicitClass != oldImplicitClass) {
+				InternalEObject newImplicitClass = (InternalEObject)implicitClass;
+				NotificationChain msgs = oldImplicitClass.eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IPART__IMPLICIT_CLASS, null, null);
+				if (newImplicitClass.eInternalContainer() == null) {
+					msgs = newImplicitClass.eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IPART__IMPLICIT_CLASS, null, msgs);
+				}
+				if (msgs != null) msgs.dispatch();
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.IPART__IMPLICIT_CLASS, oldImplicitClass, implicitClass));
+			}
+		}
+		return implicitClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IClass basicGetImplicitClass() {
+		return implicitClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public NotificationChain basicSetImplicitClass(IClass newImplicitClass, NotificationChain msgs) {
+		IClass oldImplicitClass = implicitClass;
+		implicitClass = newImplicitClass;
+		if (eNotificationRequired()) {
+			ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IPART__IMPLICIT_CLASS, oldImplicitClass, newImplicitClass);
+			if (msgs == null) msgs = notification; else msgs.add(notification);
+		}
+		return msgs;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setImplicitClass(IClass newImplicitClass) {
+		if (newImplicitClass != implicitClass) {
+			NotificationChain msgs = null;
+			if (implicitClass != null)
+				msgs = ((InternalEObject)implicitClass).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IPART__IMPLICIT_CLASS, null, msgs);
+			if (newImplicitClass != null)
+				msgs = ((InternalEObject)newImplicitClass).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IPART__IMPLICIT_CLASS, null, msgs);
+			msgs = basicSetImplicitClass(newImplicitClass, msgs);
+			if (msgs != null) msgs.dispatch();
+		}
+		else if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IPART__IMPLICIT_CLASS, newImplicitClass, newImplicitClass));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getLastID() {
+		return lastID;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setLastID(String newLastID) {
+		String oldLastID = lastID;
+		lastID = newLastID;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IPART__LAST_ID, oldLastID, lastID));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getMultiplicity() {
+		return multiplicity;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setMultiplicity(String newMultiplicity) {
+		String oldMultiplicity = multiplicity;
+		multiplicity = newMultiplicity;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IPART__MULTIPLICITY, oldMultiplicity, multiplicity));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<EAnnotation> getEAnnotations() {
+		if (eAnnotations == null) {
+			eAnnotations = new EObjectContainmentWithInverseEList<EAnnotation>(EAnnotation.class, this, UMLRpyPackage.IPART__EANNOTATIONS, EcorePackage.EANNOTATION__EMODEL_ELEMENT);
+		}
+		return eAnnotations;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getDisplayName() {
+		return displayName;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setDisplayName(String newDisplayName) {
+		String oldDisplayName = displayName;
+		displayName = newDisplayName;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IPART__DISPLAY_NAME, oldDisplayName, displayName));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IUnit getStereotypes() {
+		if (stereotypes != null && stereotypes.eIsProxy()) {
+			InternalEObject oldStereotypes = (InternalEObject)stereotypes;
+			stereotypes = (IUnit)eResolveProxy(oldStereotypes);
+			if (stereotypes != oldStereotypes) {
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.IPART__STEREOTYPES, oldStereotypes, stereotypes));
+			}
+		}
+		return stereotypes;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IUnit basicGetStereotypes() {
+		return stereotypes;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setStereotypes(IUnit newStereotypes) {
+		IUnit oldStereotypes = stereotypes;
+		stereotypes = newStereotypes;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IPART__STEREOTYPES, oldStereotypes, stereotypes));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IUnit getOtherClass() {
+		if (otherClass != null && otherClass.eIsProxy()) {
+			InternalEObject oldOtherClass = (InternalEObject)otherClass;
+			otherClass = (IUnit)eResolveProxy(oldOtherClass);
+			if (otherClass != oldOtherClass) {
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.IPART__OTHER_CLASS, oldOtherClass, otherClass));
+			}
+		}
+		return otherClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IUnit basicGetOtherClass() {
+		return otherClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setOtherClass(IUnit newOtherClass) {
+		IUnit oldOtherClass = otherClass;
+		otherClass = newOtherClass;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IPART__OTHER_CLASS, oldOtherClass, otherClass));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public InverseType getInverse() {
+		if (inverse != null && inverse.eIsProxy()) {
+			InternalEObject oldInverse = (InternalEObject)inverse;
+			inverse = (InverseType)eResolveProxy(oldInverse);
+			if (inverse != oldInverse) {
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.IPART__INVERSE, oldInverse, inverse));
+			}
+		}
+		return inverse;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public InverseType basicGetInverse() {
+		return inverse;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setInverse(InverseType newInverse) {
+		InverseType oldInverse = inverse;
+		inverse = newInverse;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IPART__INVERSE, oldInverse, inverse));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<IDependency> getDependencies() {
+		if (dependencies == null) {
+			dependencies = new EObjectContainmentEList.Resolving<IDependency>(IDependency.class, this, UMLRpyPackage.IPART__DEPENDENCIES);
+		}
+		return dependencies;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public ITag getTags() {
+		if (tags != null && tags.eIsProxy()) {
+			InternalEObject oldTags = (InternalEObject)tags;
+			tags = (ITag)eResolveProxy(oldTags);
+			if (tags != oldTags) {
+				InternalEObject newTags = (InternalEObject)tags;
+				NotificationChain msgs = oldTags.eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IPART__TAGS, null, null);
+				if (newTags.eInternalContainer() == null) {
+					msgs = newTags.eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IPART__TAGS, null, msgs);
+				}
+				if (msgs != null) msgs.dispatch();
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.IPART__TAGS, oldTags, tags));
+			}
+		}
+		return tags;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public ITag basicGetTags() {
+		return tags;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public NotificationChain basicSetTags(ITag newTags, NotificationChain msgs) {
+		ITag oldTags = tags;
+		tags = newTags;
+		if (eNotificationRequired()) {
+			ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IPART__TAGS, oldTags, newTags);
+			if (msgs == null) msgs = notification; else msgs.add(notification);
+		}
+		return msgs;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setTags(ITag newTags) {
+		if (newTags != tags) {
+			NotificationChain msgs = null;
+			if (tags != null)
+				msgs = ((InternalEObject)tags).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IPART__TAGS, null, msgs);
+			if (newTags != null)
+				msgs = ((InternalEObject)newTags).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IPART__TAGS, null, msgs);
+			msgs = basicSetTags(newTags, msgs);
+			if (msgs != null) msgs.dispatch();
+		}
+		else if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IPART__TAGS, newTags, newTags));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public ICallAction getInitialCallAction() {
+		if (initialCallAction != null && initialCallAction.eIsProxy()) {
+			InternalEObject oldInitialCallAction = (InternalEObject)initialCallAction;
+			initialCallAction = (ICallAction)eResolveProxy(oldInitialCallAction);
+			if (initialCallAction != oldInitialCallAction) {
+				InternalEObject newInitialCallAction = (InternalEObject)initialCallAction;
+				NotificationChain msgs = oldInitialCallAction.eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IPART__INITIAL_CALL_ACTION, null, null);
+				if (newInitialCallAction.eInternalContainer() == null) {
+					msgs = newInitialCallAction.eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IPART__INITIAL_CALL_ACTION, null, msgs);
+				}
+				if (msgs != null) msgs.dispatch();
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.IPART__INITIAL_CALL_ACTION, oldInitialCallAction, initialCallAction));
+			}
+		}
+		return initialCallAction;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public ICallAction basicGetInitialCallAction() {
+		return initialCallAction;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public NotificationChain basicSetInitialCallAction(ICallAction newInitialCallAction, NotificationChain msgs) {
+		ICallAction oldInitialCallAction = initialCallAction;
+		initialCallAction = newInitialCallAction;
+		if (eNotificationRequired()) {
+			ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IPART__INITIAL_CALL_ACTION, oldInitialCallAction, newInitialCallAction);
+			if (msgs == null) msgs = notification; else msgs.add(notification);
+		}
+		return msgs;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setInitialCallAction(ICallAction newInitialCallAction) {
+		if (newInitialCallAction != initialCallAction) {
+			NotificationChain msgs = null;
+			if (initialCallAction != null)
+				msgs = ((InternalEObject)initialCallAction).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IPART__INITIAL_CALL_ACTION, null, msgs);
+			if (newInitialCallAction != null)
+				msgs = ((InternalEObject)newInitialCallAction).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IPART__INITIAL_CALL_ACTION, null, msgs);
+			msgs = basicSetInitialCallAction(newInitialCallAction, msgs);
+			if (msgs != null) msgs.dispatch();
+		}
+		else if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IPART__INITIAL_CALL_ACTION, newInitialCallAction, newInitialCallAction));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<String> getCodeUpdateCGTime() {
+		if (codeUpdateCGTime == null) {
+			codeUpdateCGTime = new EDataTypeEList<String>(String.class, this, UMLRpyPackage.IPART__CODE_UPDATE_CG_TIME);
+		}
+		return codeUpdateCGTime;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public DependsOnType getTheMainDiagram() {
+		if (theMainDiagram != null && theMainDiagram.eIsProxy()) {
+			InternalEObject oldTheMainDiagram = (InternalEObject)theMainDiagram;
+			theMainDiagram = (DependsOnType)eResolveProxy(oldTheMainDiagram);
+			if (theMainDiagram != oldTheMainDiagram) {
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.IPART__THE_MAIN_DIAGRAM, oldTheMainDiagram, theMainDiagram));
+			}
+		}
+		return theMainDiagram;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public DependsOnType basicGetTheMainDiagram() {
+		return theMainDiagram;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setTheMainDiagram(DependsOnType newTheMainDiagram) {
+		DependsOnType oldTheMainDiagram = theMainDiagram;
+		theMainDiagram = newTheMainDiagram;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IPART__THE_MAIN_DIAGRAM, oldTheMainDiagram, theMainDiagram));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public ISlot getSlots() {
+		if (slots != null && slots.eIsProxy()) {
+			InternalEObject oldSlots = (InternalEObject)slots;
+			slots = (ISlot)eResolveProxy(oldSlots);
+			if (slots != oldSlots) {
+				InternalEObject newSlots = (InternalEObject)slots;
+				NotificationChain msgs = oldSlots.eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IPART__SLOTS, null, null);
+				if (newSlots.eInternalContainer() == null) {
+					msgs = newSlots.eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IPART__SLOTS, null, msgs);
+				}
+				if (msgs != null) msgs.dispatch();
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.IPART__SLOTS, oldSlots, slots));
+			}
+		}
+		return slots;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public ISlot basicGetSlots() {
+		return slots;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public NotificationChain basicSetSlots(ISlot newSlots, NotificationChain msgs) {
+		ISlot oldSlots = slots;
+		slots = newSlots;
+		if (eNotificationRequired()) {
+			ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IPART__SLOTS, oldSlots, newSlots);
+			if (msgs == null) msgs = notification; else msgs.add(notification);
+		}
+		return msgs;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setSlots(ISlot newSlots) {
+		if (newSlots != slots) {
+			NotificationChain msgs = null;
+			if (slots != null)
+				msgs = ((InternalEObject)slots).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IPART__SLOTS, null, msgs);
+			if (newSlots != null)
+				msgs = ((InternalEObject)newSlots).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IPART__SLOTS, null, msgs);
+			msgs = basicSetSlots(newSlots, msgs);
+			if (msgs != null) msgs.dispatch();
+		}
+		else if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IPART__SLOTS, newSlots, newSlots));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<IMHyperLink> getHyperLinks() {
+		if (hyperLinks == null) {
+			hyperLinks = new EObjectContainmentEList.Resolving<IMHyperLink>(IMHyperLink.class, this, UMLRpyPackage.IPART__HYPER_LINKS);
+		}
+		return hyperLinks;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAnnotation getEAnnotation(String source) {
+		// TODO: implement this method
+		// Ensure that you remove @generated or mark it @generated NOT
+		throw new UnsupportedOperationException();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@SuppressWarnings("unchecked")
+	@Override
+	public NotificationChain eInverseAdd(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
+		switch (featureID) {
+			case UMLRpyPackage.IPART__EANNOTATIONS:
+				return ((InternalEList<InternalEObject>)(InternalEList<?>)getEAnnotations()).basicAdd(otherEnd, msgs);
+		}
+		return super.eInverseAdd(otherEnd, featureID, msgs);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
+		switch (featureID) {
+			case UMLRpyPackage.IPART__DESCRIPTION:
+				return basicSetDescription(null, msgs);
+			case UMLRpyPackage.IPART__PROPERTIES:
+				return basicSetProperties(null, msgs);
+			case UMLRpyPackage.IPART__IMPLICIT_CLASS:
+				return basicSetImplicitClass(null, msgs);
+			case UMLRpyPackage.IPART__EANNOTATIONS:
+				return ((InternalEList<?>)getEAnnotations()).basicRemove(otherEnd, msgs);
+			case UMLRpyPackage.IPART__DEPENDENCIES:
+				return ((InternalEList<?>)getDependencies()).basicRemove(otherEnd, msgs);
+			case UMLRpyPackage.IPART__TAGS:
+				return basicSetTags(null, msgs);
+			case UMLRpyPackage.IPART__INITIAL_CALL_ACTION:
+				return basicSetInitialCallAction(null, msgs);
+			case UMLRpyPackage.IPART__SLOTS:
+				return basicSetSlots(null, msgs);
+			case UMLRpyPackage.IPART__HYPER_LINKS:
+				return ((InternalEList<?>)getHyperLinks()).basicRemove(otherEnd, msgs);
+		}
+		return super.eInverseRemove(otherEnd, featureID, msgs);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object eGet(int featureID, boolean resolve, boolean coreType) {
+		switch (featureID) {
+			case UMLRpyPackage.IPART__UML_DEPENDENCY_ID:
+				return getUmlDependencyID();
+			case UMLRpyPackage.IPART__OBJECT_CREATION:
+				return getObjectCreation();
+			case UMLRpyPackage.IPART__MODIFIED_TIME_WEAK:
+				return getModifiedTimeWeak();
+			case UMLRpyPackage.IPART__ID:
+				return getId();
+			case UMLRpyPackage.IPART__MY_STATE:
+				return getMyState();
+			case UMLRpyPackage.IPART__NAME:
+				return getName();
+			case UMLRpyPackage.IPART__REQUIREMEN_TRACABILITY_HANDLE:
+				return getRequiremenTracabilityHandle();
+			case UMLRpyPackage.IPART__DESCRIPTION:
+				if (resolve) return getDescription();
+				return basicGetDescription();
+			case UMLRpyPackage.IPART__PROPERTIES:
+				if (resolve) return getProperties();
+				return basicGetProperties();
+			case UMLRpyPackage.IPART__IMPLICIT_CLASS:
+				if (resolve) return getImplicitClass();
+				return basicGetImplicitClass();
+			case UMLRpyPackage.IPART__LAST_ID:
+				return getLastID();
+			case UMLRpyPackage.IPART__MULTIPLICITY:
+				return getMultiplicity();
+			case UMLRpyPackage.IPART__EANNOTATIONS:
+				return getEAnnotations();
+			case UMLRpyPackage.IPART__DISPLAY_NAME:
+				return getDisplayName();
+			case UMLRpyPackage.IPART__STEREOTYPES:
+				if (resolve) return getStereotypes();
+				return basicGetStereotypes();
+			case UMLRpyPackage.IPART__OTHER_CLASS:
+				if (resolve) return getOtherClass();
+				return basicGetOtherClass();
+			case UMLRpyPackage.IPART__INVERSE:
+				if (resolve) return getInverse();
+				return basicGetInverse();
+			case UMLRpyPackage.IPART__DEPENDENCIES:
+				return getDependencies();
+			case UMLRpyPackage.IPART__TAGS:
+				if (resolve) return getTags();
+				return basicGetTags();
+			case UMLRpyPackage.IPART__INITIAL_CALL_ACTION:
+				if (resolve) return getInitialCallAction();
+				return basicGetInitialCallAction();
+			case UMLRpyPackage.IPART__CODE_UPDATE_CG_TIME:
+				return getCodeUpdateCGTime();
+			case UMLRpyPackage.IPART__THE_MAIN_DIAGRAM:
+				if (resolve) return getTheMainDiagram();
+				return basicGetTheMainDiagram();
+			case UMLRpyPackage.IPART__SLOTS:
+				if (resolve) return getSlots();
+				return basicGetSlots();
+			case UMLRpyPackage.IPART__HYPER_LINKS:
+				return getHyperLinks();
+		}
+		return super.eGet(featureID, resolve, coreType);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@SuppressWarnings("unchecked")
+	@Override
+	public void eSet(int featureID, Object newValue) {
+		switch (featureID) {
+			case UMLRpyPackage.IPART__UML_DEPENDENCY_ID:
+				setUmlDependencyID((String)newValue);
+				return;
+			case UMLRpyPackage.IPART__OBJECT_CREATION:
+				setObjectCreation((String)newValue);
+				return;
+			case UMLRpyPackage.IPART__MODIFIED_TIME_WEAK:
+				getModifiedTimeWeak().clear();
+				getModifiedTimeWeak().addAll((Collection<? extends String>)newValue);
+				return;
+			case UMLRpyPackage.IPART__ID:
+				setId((String)newValue);
+				return;
+			case UMLRpyPackage.IPART__MY_STATE:
+				setMyState((String)newValue);
+				return;
+			case UMLRpyPackage.IPART__NAME:
+				setName((String)newValue);
+				return;
+			case UMLRpyPackage.IPART__REQUIREMEN_TRACABILITY_HANDLE:
+				setRequiremenTracabilityHandle((String)newValue);
+				return;
+			case UMLRpyPackage.IPART__DESCRIPTION:
+				setDescription((IDescription)newValue);
+				return;
+			case UMLRpyPackage.IPART__PROPERTIES:
+				setProperties((IPropertyContainer)newValue);
+				return;
+			case UMLRpyPackage.IPART__IMPLICIT_CLASS:
+				setImplicitClass((IClass)newValue);
+				return;
+			case UMLRpyPackage.IPART__LAST_ID:
+				setLastID((String)newValue);
+				return;
+			case UMLRpyPackage.IPART__MULTIPLICITY:
+				setMultiplicity((String)newValue);
+				return;
+			case UMLRpyPackage.IPART__EANNOTATIONS:
+				getEAnnotations().clear();
+				getEAnnotations().addAll((Collection<? extends EAnnotation>)newValue);
+				return;
+			case UMLRpyPackage.IPART__DISPLAY_NAME:
+				setDisplayName((String)newValue);
+				return;
+			case UMLRpyPackage.IPART__STEREOTYPES:
+				setStereotypes((IUnit)newValue);
+				return;
+			case UMLRpyPackage.IPART__OTHER_CLASS:
+				setOtherClass((IUnit)newValue);
+				return;
+			case UMLRpyPackage.IPART__INVERSE:
+				setInverse((InverseType)newValue);
+				return;
+			case UMLRpyPackage.IPART__DEPENDENCIES:
+				getDependencies().clear();
+				getDependencies().addAll((Collection<? extends IDependency>)newValue);
+				return;
+			case UMLRpyPackage.IPART__TAGS:
+				setTags((ITag)newValue);
+				return;
+			case UMLRpyPackage.IPART__INITIAL_CALL_ACTION:
+				setInitialCallAction((ICallAction)newValue);
+				return;
+			case UMLRpyPackage.IPART__CODE_UPDATE_CG_TIME:
+				getCodeUpdateCGTime().clear();
+				getCodeUpdateCGTime().addAll((Collection<? extends String>)newValue);
+				return;
+			case UMLRpyPackage.IPART__THE_MAIN_DIAGRAM:
+				setTheMainDiagram((DependsOnType)newValue);
+				return;
+			case UMLRpyPackage.IPART__SLOTS:
+				setSlots((ISlot)newValue);
+				return;
+			case UMLRpyPackage.IPART__HYPER_LINKS:
+				getHyperLinks().clear();
+				getHyperLinks().addAll((Collection<? extends IMHyperLink>)newValue);
+				return;
+		}
+		super.eSet(featureID, newValue);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void eUnset(int featureID) {
+		switch (featureID) {
+			case UMLRpyPackage.IPART__UML_DEPENDENCY_ID:
+				setUmlDependencyID(UML_DEPENDENCY_ID_EDEFAULT);
+				return;
+			case UMLRpyPackage.IPART__OBJECT_CREATION:
+				setObjectCreation(OBJECT_CREATION_EDEFAULT);
+				return;
+			case UMLRpyPackage.IPART__MODIFIED_TIME_WEAK:
+				getModifiedTimeWeak().clear();
+				return;
+			case UMLRpyPackage.IPART__ID:
+				setId(ID_EDEFAULT);
+				return;
+			case UMLRpyPackage.IPART__MY_STATE:
+				setMyState(MY_STATE_EDEFAULT);
+				return;
+			case UMLRpyPackage.IPART__NAME:
+				setName(NAME_EDEFAULT);
+				return;
+			case UMLRpyPackage.IPART__REQUIREMEN_TRACABILITY_HANDLE:
+				setRequiremenTracabilityHandle(REQUIREMEN_TRACABILITY_HANDLE_EDEFAULT);
+				return;
+			case UMLRpyPackage.IPART__DESCRIPTION:
+				setDescription((IDescription)null);
+				return;
+			case UMLRpyPackage.IPART__PROPERTIES:
+				setProperties((IPropertyContainer)null);
+				return;
+			case UMLRpyPackage.IPART__IMPLICIT_CLASS:
+				setImplicitClass((IClass)null);
+				return;
+			case UMLRpyPackage.IPART__LAST_ID:
+				setLastID(LAST_ID_EDEFAULT);
+				return;
+			case UMLRpyPackage.IPART__MULTIPLICITY:
+				setMultiplicity(MULTIPLICITY_EDEFAULT);
+				return;
+			case UMLRpyPackage.IPART__EANNOTATIONS:
+				getEAnnotations().clear();
+				return;
+			case UMLRpyPackage.IPART__DISPLAY_NAME:
+				setDisplayName(DISPLAY_NAME_EDEFAULT);
+				return;
+			case UMLRpyPackage.IPART__STEREOTYPES:
+				setStereotypes((IUnit)null);
+				return;
+			case UMLRpyPackage.IPART__OTHER_CLASS:
+				setOtherClass((IUnit)null);
+				return;
+			case UMLRpyPackage.IPART__INVERSE:
+				setInverse((InverseType)null);
+				return;
+			case UMLRpyPackage.IPART__DEPENDENCIES:
+				getDependencies().clear();
+				return;
+			case UMLRpyPackage.IPART__TAGS:
+				setTags((ITag)null);
+				return;
+			case UMLRpyPackage.IPART__INITIAL_CALL_ACTION:
+				setInitialCallAction((ICallAction)null);
+				return;
+			case UMLRpyPackage.IPART__CODE_UPDATE_CG_TIME:
+				getCodeUpdateCGTime().clear();
+				return;
+			case UMLRpyPackage.IPART__THE_MAIN_DIAGRAM:
+				setTheMainDiagram((DependsOnType)null);
+				return;
+			case UMLRpyPackage.IPART__SLOTS:
+				setSlots((ISlot)null);
+				return;
+			case UMLRpyPackage.IPART__HYPER_LINKS:
+				getHyperLinks().clear();
+				return;
+		}
+		super.eUnset(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public boolean eIsSet(int featureID) {
+		switch (featureID) {
+			case UMLRpyPackage.IPART__UML_DEPENDENCY_ID:
+				return UML_DEPENDENCY_ID_EDEFAULT == null ? umlDependencyID != null : !UML_DEPENDENCY_ID_EDEFAULT.equals(umlDependencyID);
+			case UMLRpyPackage.IPART__OBJECT_CREATION:
+				return OBJECT_CREATION_EDEFAULT == null ? objectCreation != null : !OBJECT_CREATION_EDEFAULT.equals(objectCreation);
+			case UMLRpyPackage.IPART__MODIFIED_TIME_WEAK:
+				return modifiedTimeWeak != null && !modifiedTimeWeak.isEmpty();
+			case UMLRpyPackage.IPART__ID:
+				return ID_EDEFAULT == null ? id != null : !ID_EDEFAULT.equals(id);
+			case UMLRpyPackage.IPART__MY_STATE:
+				return MY_STATE_EDEFAULT == null ? myState != null : !MY_STATE_EDEFAULT.equals(myState);
+			case UMLRpyPackage.IPART__NAME:
+				return NAME_EDEFAULT == null ? name != null : !NAME_EDEFAULT.equals(name);
+			case UMLRpyPackage.IPART__REQUIREMEN_TRACABILITY_HANDLE:
+				return REQUIREMEN_TRACABILITY_HANDLE_EDEFAULT == null ? requiremenTracabilityHandle != null : !REQUIREMEN_TRACABILITY_HANDLE_EDEFAULT.equals(requiremenTracabilityHandle);
+			case UMLRpyPackage.IPART__DESCRIPTION:
+				return description != null;
+			case UMLRpyPackage.IPART__PROPERTIES:
+				return properties != null;
+			case UMLRpyPackage.IPART__IMPLICIT_CLASS:
+				return implicitClass != null;
+			case UMLRpyPackage.IPART__LAST_ID:
+				return LAST_ID_EDEFAULT == null ? lastID != null : !LAST_ID_EDEFAULT.equals(lastID);
+			case UMLRpyPackage.IPART__MULTIPLICITY:
+				return MULTIPLICITY_EDEFAULT == null ? multiplicity != null : !MULTIPLICITY_EDEFAULT.equals(multiplicity);
+			case UMLRpyPackage.IPART__EANNOTATIONS:
+				return eAnnotations != null && !eAnnotations.isEmpty();
+			case UMLRpyPackage.IPART__DISPLAY_NAME:
+				return DISPLAY_NAME_EDEFAULT == null ? displayName != null : !DISPLAY_NAME_EDEFAULT.equals(displayName);
+			case UMLRpyPackage.IPART__STEREOTYPES:
+				return stereotypes != null;
+			case UMLRpyPackage.IPART__OTHER_CLASS:
+				return otherClass != null;
+			case UMLRpyPackage.IPART__INVERSE:
+				return inverse != null;
+			case UMLRpyPackage.IPART__DEPENDENCIES:
+				return dependencies != null && !dependencies.isEmpty();
+			case UMLRpyPackage.IPART__TAGS:
+				return tags != null;
+			case UMLRpyPackage.IPART__INITIAL_CALL_ACTION:
+				return initialCallAction != null;
+			case UMLRpyPackage.IPART__CODE_UPDATE_CG_TIME:
+				return codeUpdateCGTime != null && !codeUpdateCGTime.isEmpty();
+			case UMLRpyPackage.IPART__THE_MAIN_DIAGRAM:
+				return theMainDiagram != null;
+			case UMLRpyPackage.IPART__SLOTS:
+				return slots != null;
+			case UMLRpyPackage.IPART__HYPER_LINKS:
+				return hyperLinks != null && !hyperLinks.isEmpty();
+		}
+		return super.eIsSet(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public int eBaseStructuralFeatureID(int derivedFeatureID, Class<?> baseClass) {
+		if (baseClass == ElementsType.class) {
+			switch (derivedFeatureID) {
+				default: return -1;
+			}
+		}
+		if (baseClass == DependsOnType.class) {
+			switch (derivedFeatureID) {
+				default: return -1;
+			}
+		}
+		if (baseClass == M_subjectType.class) {
+			switch (derivedFeatureID) {
+				case UMLRpyPackage.IPART__UML_DEPENDENCY_ID: return UMLRpyPackage.MSUBJECT_TYPE__UML_DEPENDENCY_ID;
+				case UMLRpyPackage.IPART__OBJECT_CREATION: return UMLRpyPackage.MSUBJECT_TYPE__OBJECT_CREATION;
+				default: return -1;
+			}
+		}
+		if (baseClass == ValueType.class) {
+			switch (derivedFeatureID) {
+				case UMLRpyPackage.IPART__MODIFIED_TIME_WEAK: return UMLRpyPackage.VALUE_TYPE__MODIFIED_TIME_WEAK;
+				case UMLRpyPackage.IPART__ID: return UMLRpyPackage.VALUE_TYPE__ID;
+				case UMLRpyPackage.IPART__MY_STATE: return UMLRpyPackage.VALUE_TYPE__MY_STATE;
+				case UMLRpyPackage.IPART__NAME: return UMLRpyPackage.VALUE_TYPE__NAME;
+				default: return -1;
+			}
+		}
+		if (baseClass == M_hTargetType.class) {
+			switch (derivedFeatureID) {
+				case UMLRpyPackage.IPART__REQUIREMEN_TRACABILITY_HANDLE: return UMLRpyPackage.MHTARGET_TYPE__REQUIREMEN_TRACABILITY_HANDLE;
+				case UMLRpyPackage.IPART__DESCRIPTION: return UMLRpyPackage.MHTARGET_TYPE__DESCRIPTION;
+				case UMLRpyPackage.IPART__PROPERTIES: return UMLRpyPackage.MHTARGET_TYPE__PROPERTIES;
+				default: return -1;
+			}
+		}
+		if (baseClass == M_pModelObjectType.class) {
+			switch (derivedFeatureID) {
+				default: return -1;
+			}
+		}
+		if (baseClass == FromLinkType.class) {
+			switch (derivedFeatureID) {
+				default: return -1;
+			}
+		}
+		if (baseClass == ToLinkType.class) {
+			switch (derivedFeatureID) {
+				case UMLRpyPackage.IPART__IMPLICIT_CLASS: return UMLRpyPackage.TO_LINK_TYPE__IMPLICIT_CLASS;
+				default: return -1;
+			}
+		}
+		if (baseClass == ConveyedType.class) {
+			switch (derivedFeatureID) {
+				case UMLRpyPackage.IPART__LAST_ID: return UMLRpyPackage.CONVEYED_TYPE__LAST_ID;
+				default: return -1;
+			}
+		}
+		if (baseClass == End1_Type.class) {
+			switch (derivedFeatureID) {
+				default: return -1;
+			}
+		}
+		if (baseClass == End2_Type.class) {
+			switch (derivedFeatureID) {
+				case UMLRpyPackage.IPART__MULTIPLICITY: return UMLRpyPackage.END2_TYPE__MULTIPLICITY;
+				default: return -1;
+			}
+		}
+		if (baseClass == TargetType.class) {
+			switch (derivedFeatureID) {
+				default: return -1;
+			}
+		}
+		if (baseClass == EModelElement.class) {
+			switch (derivedFeatureID) {
+				case UMLRpyPackage.IPART__EANNOTATIONS: return EcorePackage.EMODEL_ELEMENT__EANNOTATIONS;
+				default: return -1;
+			}
+		}
+		if (baseClass == IModelElement.class) {
+			switch (derivedFeatureID) {
+				case UMLRpyPackage.IPART__DISPLAY_NAME: return UMLRpyPackage.IMODEL_ELEMENT__DISPLAY_NAME;
+				default: return -1;
+			}
+		}
+		return super.eBaseStructuralFeatureID(derivedFeatureID, baseClass);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public int eDerivedStructuralFeatureID(int baseFeatureID, Class<?> baseClass) {
+		if (baseClass == ElementsType.class) {
+			switch (baseFeatureID) {
+				default: return -1;
+			}
+		}
+		if (baseClass == DependsOnType.class) {
+			switch (baseFeatureID) {
+				default: return -1;
+			}
+		}
+		if (baseClass == M_subjectType.class) {
+			switch (baseFeatureID) {
+				case UMLRpyPackage.MSUBJECT_TYPE__UML_DEPENDENCY_ID: return UMLRpyPackage.IPART__UML_DEPENDENCY_ID;
+				case UMLRpyPackage.MSUBJECT_TYPE__OBJECT_CREATION: return UMLRpyPackage.IPART__OBJECT_CREATION;
+				default: return -1;
+			}
+		}
+		if (baseClass == ValueType.class) {
+			switch (baseFeatureID) {
+				case UMLRpyPackage.VALUE_TYPE__MODIFIED_TIME_WEAK: return UMLRpyPackage.IPART__MODIFIED_TIME_WEAK;
+				case UMLRpyPackage.VALUE_TYPE__ID: return UMLRpyPackage.IPART__ID;
+				case UMLRpyPackage.VALUE_TYPE__MY_STATE: return UMLRpyPackage.IPART__MY_STATE;
+				case UMLRpyPackage.VALUE_TYPE__NAME: return UMLRpyPackage.IPART__NAME;
+				default: return -1;
+			}
+		}
+		if (baseClass == M_hTargetType.class) {
+			switch (baseFeatureID) {
+				case UMLRpyPackage.MHTARGET_TYPE__REQUIREMEN_TRACABILITY_HANDLE: return UMLRpyPackage.IPART__REQUIREMEN_TRACABILITY_HANDLE;
+				case UMLRpyPackage.MHTARGET_TYPE__DESCRIPTION: return UMLRpyPackage.IPART__DESCRIPTION;
+				case UMLRpyPackage.MHTARGET_TYPE__PROPERTIES: return UMLRpyPackage.IPART__PROPERTIES;
+				default: return -1;
+			}
+		}
+		if (baseClass == M_pModelObjectType.class) {
+			switch (baseFeatureID) {
+				default: return -1;
+			}
+		}
+		if (baseClass == FromLinkType.class) {
+			switch (baseFeatureID) {
+				default: return -1;
+			}
+		}
+		if (baseClass == ToLinkType.class) {
+			switch (baseFeatureID) {
+				case UMLRpyPackage.TO_LINK_TYPE__IMPLICIT_CLASS: return UMLRpyPackage.IPART__IMPLICIT_CLASS;
+				default: return -1;
+			}
+		}
+		if (baseClass == ConveyedType.class) {
+			switch (baseFeatureID) {
+				case UMLRpyPackage.CONVEYED_TYPE__LAST_ID: return UMLRpyPackage.IPART__LAST_ID;
+				default: return -1;
+			}
+		}
+		if (baseClass == End1_Type.class) {
+			switch (baseFeatureID) {
+				default: return -1;
+			}
+		}
+		if (baseClass == End2_Type.class) {
+			switch (baseFeatureID) {
+				case UMLRpyPackage.END2_TYPE__MULTIPLICITY: return UMLRpyPackage.IPART__MULTIPLICITY;
+				default: return -1;
+			}
+		}
+		if (baseClass == TargetType.class) {
+			switch (baseFeatureID) {
+				default: return -1;
+			}
+		}
+		if (baseClass == EModelElement.class) {
+			switch (baseFeatureID) {
+				case EcorePackage.EMODEL_ELEMENT__EANNOTATIONS: return UMLRpyPackage.IPART__EANNOTATIONS;
+				default: return -1;
+			}
+		}
+		if (baseClass == IModelElement.class) {
+			switch (baseFeatureID) {
+				case UMLRpyPackage.IMODEL_ELEMENT__DISPLAY_NAME: return UMLRpyPackage.IPART__DISPLAY_NAME;
+				default: return -1;
+			}
+		}
+		return super.eDerivedStructuralFeatureID(baseFeatureID, baseClass);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public int eDerivedOperationID(int baseOperationID, Class<?> baseClass) {
+		if (baseClass == ElementsType.class) {
+			switch (baseOperationID) {
+				default: return -1;
+			}
+		}
+		if (baseClass == DependsOnType.class) {
+			switch (baseOperationID) {
+				default: return -1;
+			}
+		}
+		if (baseClass == M_subjectType.class) {
+			switch (baseOperationID) {
+				default: return -1;
+			}
+		}
+		if (baseClass == ValueType.class) {
+			switch (baseOperationID) {
+				default: return -1;
+			}
+		}
+		if (baseClass == M_hTargetType.class) {
+			switch (baseOperationID) {
+				default: return -1;
+			}
+		}
+		if (baseClass == M_pModelObjectType.class) {
+			switch (baseOperationID) {
+				default: return -1;
+			}
+		}
+		if (baseClass == FromLinkType.class) {
+			switch (baseOperationID) {
+				default: return -1;
+			}
+		}
+		if (baseClass == ToLinkType.class) {
+			switch (baseOperationID) {
+				default: return -1;
+			}
+		}
+		if (baseClass == ConveyedType.class) {
+			switch (baseOperationID) {
+				default: return -1;
+			}
+		}
+		if (baseClass == End1_Type.class) {
+			switch (baseOperationID) {
+				default: return -1;
+			}
+		}
+		if (baseClass == End2_Type.class) {
+			switch (baseOperationID) {
+				default: return -1;
+			}
+		}
+		if (baseClass == TargetType.class) {
+			switch (baseOperationID) {
+				default: return -1;
+			}
+		}
+		if (baseClass == EModelElement.class) {
+			switch (baseOperationID) {
+				case EcorePackage.EMODEL_ELEMENT___GET_EANNOTATION__STRING: return UMLRpyPackage.IPART___GET_EANNOTATION__STRING;
+				default: return -1;
+			}
+		}
+		if (baseClass == IModelElement.class) {
+			switch (baseOperationID) {
+				default: return -1;
+			}
+		}
+		return super.eDerivedOperationID(baseOperationID, baseClass);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object eInvoke(int operationID, EList<?> arguments) throws InvocationTargetException {
+		switch (operationID) {
+			case UMLRpyPackage.IPART___GET_EANNOTATION__STRING:
+				return getEAnnotation((String)arguments.get(0));
+		}
+		return super.eInvoke(operationID, arguments);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String toString() {
+		if (eIsProxy()) return super.toString();
+
+		StringBuffer result = new StringBuffer(super.toString());
+		result.append(" (umlDependencyID: "); //$NON-NLS-1$
+		result.append(umlDependencyID);
+		result.append(", objectCreation: "); //$NON-NLS-1$
+		result.append(objectCreation);
+		result.append(", modifiedTimeWeak: "); //$NON-NLS-1$
+		result.append(modifiedTimeWeak);
+		result.append(", id: "); //$NON-NLS-1$
+		result.append(id);
+		result.append(", myState: "); //$NON-NLS-1$
+		result.append(myState);
+		result.append(", name: "); //$NON-NLS-1$
+		result.append(name);
+		result.append(", requiremenTracabilityHandle: "); //$NON-NLS-1$
+		result.append(requiremenTracabilityHandle);
+		result.append(", lastID: "); //$NON-NLS-1$
+		result.append(lastID);
+		result.append(", multiplicity: "); //$NON-NLS-1$
+		result.append(multiplicity);
+		result.append(", displayName: "); //$NON-NLS-1$
+		result.append(displayName);
+		result.append(", codeUpdateCGTime: "); //$NON-NLS-1$
+		result.append(codeUpdateCGTime);
+		result.append(')');
+		return result.toString();
+	}
+
+} //IPartImpl
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/IPinImpl.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/IPinImpl.java
new file mode 100755
index 0000000..3d3c351
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/IPinImpl.java
@@ -0,0 +1,295 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.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.interoperability.rpy.rpymetamodel.IClassifier;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IConnector;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IPin;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>IPin</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * </p>
+ * <ul>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IPinImpl#getM_type <em>Mtype</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IPinImpl#getM_isParameterPin <em>Mis Parameter Pin</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IPinImpl#getM_corePin <em>Mcore Pin</em>}</li>
+ * </ul>
+ *
+ * @generated
+ */
+public class IPinImpl extends IConnectorImpl implements IPin {
+	/**
+	 * The cached value of the '{@link #getM_type() <em>Mtype</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_type()
+	 * @generated
+	 * @ordered
+	 */
+	protected IClassifier m_type;
+
+	/**
+	 * The default value of the '{@link #getM_isParameterPin() <em>Mis Parameter Pin</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_isParameterPin()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String MIS_PARAMETER_PIN_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getM_isParameterPin() <em>Mis Parameter Pin</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_isParameterPin()
+	 * @generated
+	 * @ordered
+	 */
+	protected String m_isParameterPin = MIS_PARAMETER_PIN_EDEFAULT;
+
+	/**
+	 * The cached value of the '{@link #getM_corePin() <em>Mcore Pin</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_corePin()
+	 * @generated
+	 * @ordered
+	 */
+	protected IConnector m_corePin;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected IPinImpl() {
+		super();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EClass eStaticClass() {
+		return UMLRpyPackage.eINSTANCE.getIPin();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IClassifier getM_type() {
+		if (m_type != null && m_type.eIsProxy()) {
+			InternalEObject oldM_type = (InternalEObject)m_type;
+			m_type = (IClassifier)eResolveProxy(oldM_type);
+			if (m_type != oldM_type) {
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.IPIN__MTYPE, oldM_type, m_type));
+			}
+		}
+		return m_type;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IClassifier basicGetM_type() {
+		return m_type;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_type(IClassifier newM_type) {
+		IClassifier oldM_type = m_type;
+		m_type = newM_type;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IPIN__MTYPE, oldM_type, m_type));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getM_isParameterPin() {
+		return m_isParameterPin;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_isParameterPin(String newM_isParameterPin) {
+		String oldM_isParameterPin = m_isParameterPin;
+		m_isParameterPin = newM_isParameterPin;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IPIN__MIS_PARAMETER_PIN, oldM_isParameterPin, m_isParameterPin));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IConnector getM_corePin() {
+		if (m_corePin != null && m_corePin.eIsProxy()) {
+			InternalEObject oldM_corePin = (InternalEObject)m_corePin;
+			m_corePin = (IConnector)eResolveProxy(oldM_corePin);
+			if (m_corePin != oldM_corePin) {
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.IPIN__MCORE_PIN, oldM_corePin, m_corePin));
+			}
+		}
+		return m_corePin;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IConnector basicGetM_corePin() {
+		return m_corePin;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_corePin(IConnector newM_corePin) {
+		IConnector oldM_corePin = m_corePin;
+		m_corePin = newM_corePin;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IPIN__MCORE_PIN, oldM_corePin, m_corePin));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object eGet(int featureID, boolean resolve, boolean coreType) {
+		switch (featureID) {
+			case UMLRpyPackage.IPIN__MTYPE:
+				if (resolve) return getM_type();
+				return basicGetM_type();
+			case UMLRpyPackage.IPIN__MIS_PARAMETER_PIN:
+				return getM_isParameterPin();
+			case UMLRpyPackage.IPIN__MCORE_PIN:
+				if (resolve) return getM_corePin();
+				return basicGetM_corePin();
+		}
+		return super.eGet(featureID, resolve, coreType);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void eSet(int featureID, Object newValue) {
+		switch (featureID) {
+			case UMLRpyPackage.IPIN__MTYPE:
+				setM_type((IClassifier)newValue);
+				return;
+			case UMLRpyPackage.IPIN__MIS_PARAMETER_PIN:
+				setM_isParameterPin((String)newValue);
+				return;
+			case UMLRpyPackage.IPIN__MCORE_PIN:
+				setM_corePin((IConnector)newValue);
+				return;
+		}
+		super.eSet(featureID, newValue);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void eUnset(int featureID) {
+		switch (featureID) {
+			case UMLRpyPackage.IPIN__MTYPE:
+				setM_type((IClassifier)null);
+				return;
+			case UMLRpyPackage.IPIN__MIS_PARAMETER_PIN:
+				setM_isParameterPin(MIS_PARAMETER_PIN_EDEFAULT);
+				return;
+			case UMLRpyPackage.IPIN__MCORE_PIN:
+				setM_corePin((IConnector)null);
+				return;
+		}
+		super.eUnset(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public boolean eIsSet(int featureID) {
+		switch (featureID) {
+			case UMLRpyPackage.IPIN__MTYPE:
+				return m_type != null;
+			case UMLRpyPackage.IPIN__MIS_PARAMETER_PIN:
+				return MIS_PARAMETER_PIN_EDEFAULT == null ? m_isParameterPin != null : !MIS_PARAMETER_PIN_EDEFAULT.equals(m_isParameterPin);
+			case UMLRpyPackage.IPIN__MCORE_PIN:
+				return m_corePin != null;
+		}
+		return super.eIsSet(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String toString() {
+		if (eIsProxy()) return super.toString();
+
+		StringBuffer result = new StringBuffer(super.toString());
+		result.append(" (m_isParameterPin: "); //$NON-NLS-1$
+		result.append(m_isParameterPin);
+		result.append(')');
+		return result.toString();
+	}
+
+} //IPinImpl
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/IPortImpl.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/IPortImpl.java
new file mode 100755
index 0000000..989664f
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/IPortImpl.java
@@ -0,0 +1,1243 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl;
+
+import java.util.Collection;
+
+import org.eclipse.emf.common.notify.Notification;
+import org.eclipse.emf.common.notify.NotificationChain;
+
+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.interoperability.rpy.rpymetamodel.End1_Type;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.End2_Type;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.FromLinkType;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IClass;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IClassifier;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IDependency;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IDescription;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IPort;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IPropertyContainer;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IRequirement;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITag;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.M_hTargetType;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ToLinkType;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>IPort</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * </p>
+ * <ul>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IPortImpl#getRequiremenTracabilityHandle <em>Requiremen Tracability Handle</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IPortImpl#getDescription <em>Description</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IPortImpl#getProperties <em>Properties</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IPortImpl#getImplicitClass <em>Implicit Class</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IPortImpl#getMultiplicity <em>Multiplicity</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IPortImpl#getOtherClass <em>Other Class</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IPortImpl#getBehavioral <em>Behavioral</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IPortImpl#getReversed <em>Reversed</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IPortImpl#getStereotypes <em>Stereotypes</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IPortImpl#getTags <em>Tags</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IPortImpl#getObjectCreation <em>Object Creation</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IPortImpl#getUmlDependencyID <em>Uml Dependency ID</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IPortImpl#getLastID <em>Last ID</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IPortImpl#getDependencies <em>Dependencies</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IPortImpl#getAnnotations <em>Annotations</em>}</li>
+ * </ul>
+ *
+ * @generated
+ */
+public class IPortImpl extends IInstanceImpl implements IPort {
+	/**
+	 * The default value of the '{@link #getRequiremenTracabilityHandle() <em>Requiremen Tracability Handle</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getRequiremenTracabilityHandle()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String REQUIREMEN_TRACABILITY_HANDLE_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getRequiremenTracabilityHandle() <em>Requiremen Tracability Handle</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getRequiremenTracabilityHandle()
+	 * @generated
+	 * @ordered
+	 */
+	protected String requiremenTracabilityHandle = REQUIREMEN_TRACABILITY_HANDLE_EDEFAULT;
+
+	/**
+	 * The cached value of the '{@link #getDescription() <em>Description</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getDescription()
+	 * @generated
+	 * @ordered
+	 */
+	protected IDescription description;
+
+	/**
+	 * The cached value of the '{@link #getProperties() <em>Properties</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getProperties()
+	 * @generated
+	 * @ordered
+	 */
+	protected IPropertyContainer properties;
+
+	/**
+	 * The cached value of the '{@link #getImplicitClass() <em>Implicit Class</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getImplicitClass()
+	 * @generated
+	 * @ordered
+	 */
+	protected IClass implicitClass;
+
+	/**
+	 * The default value of the '{@link #getMultiplicity() <em>Multiplicity</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getMultiplicity()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String MULTIPLICITY_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getMultiplicity() <em>Multiplicity</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getMultiplicity()
+	 * @generated
+	 * @ordered
+	 */
+	protected String multiplicity = MULTIPLICITY_EDEFAULT;
+
+	/**
+	 * The cached value of the '{@link #getOtherClass() <em>Other Class</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getOtherClass()
+	 * @generated
+	 * @ordered
+	 */
+	protected IClass otherClass;
+
+	/**
+	 * The default value of the '{@link #getBehavioral() <em>Behavioral</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getBehavioral()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String BEHAVIORAL_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getBehavioral() <em>Behavioral</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getBehavioral()
+	 * @generated
+	 * @ordered
+	 */
+	protected String behavioral = BEHAVIORAL_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getReversed() <em>Reversed</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getReversed()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String REVERSED_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getReversed() <em>Reversed</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getReversed()
+	 * @generated
+	 * @ordered
+	 */
+	protected String reversed = REVERSED_EDEFAULT;
+
+	/**
+	 * The cached value of the '{@link #getStereotypes() <em>Stereotypes</em>}' reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getStereotypes()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<IClassifier> stereotypes;
+
+	/**
+	 * The cached value of the '{@link #getTags() <em>Tags</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getTags()
+	 * @generated
+	 * @ordered
+	 */
+	protected ITag tags;
+
+	/**
+	 * The default value of the '{@link #getObjectCreation() <em>Object Creation</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getObjectCreation()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String OBJECT_CREATION_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getObjectCreation() <em>Object Creation</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getObjectCreation()
+	 * @generated
+	 * @ordered
+	 */
+	protected String objectCreation = OBJECT_CREATION_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getUmlDependencyID() <em>Uml Dependency ID</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getUmlDependencyID()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String UML_DEPENDENCY_ID_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getUmlDependencyID() <em>Uml Dependency ID</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getUmlDependencyID()
+	 * @generated
+	 * @ordered
+	 */
+	protected String umlDependencyID = UML_DEPENDENCY_ID_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getLastID() <em>Last ID</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getLastID()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String LAST_ID_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getLastID() <em>Last ID</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getLastID()
+	 * @generated
+	 * @ordered
+	 */
+	protected String lastID = LAST_ID_EDEFAULT;
+
+	/**
+	 * The cached value of the '{@link #getDependencies() <em>Dependencies</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getDependencies()
+	 * @generated
+	 * @ordered
+	 */
+	protected IDependency dependencies;
+
+	/**
+	 * The cached value of the '{@link #getAnnotations() <em>Annotations</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getAnnotations()
+	 * @generated
+	 * @ordered
+	 */
+	protected IRequirement annotations;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected IPortImpl() {
+		super();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EClass eStaticClass() {
+		return UMLRpyPackage.eINSTANCE.getIPort();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getRequiremenTracabilityHandle() {
+		return requiremenTracabilityHandle;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setRequiremenTracabilityHandle(String newRequiremenTracabilityHandle) {
+		String oldRequiremenTracabilityHandle = requiremenTracabilityHandle;
+		requiremenTracabilityHandle = newRequiremenTracabilityHandle;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IPORT__REQUIREMEN_TRACABILITY_HANDLE, oldRequiremenTracabilityHandle, requiremenTracabilityHandle));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IDescription getDescription() {
+		if (description != null && description.eIsProxy()) {
+			InternalEObject oldDescription = (InternalEObject)description;
+			description = (IDescription)eResolveProxy(oldDescription);
+			if (description != oldDescription) {
+				InternalEObject newDescription = (InternalEObject)description;
+				NotificationChain msgs = oldDescription.eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IPORT__DESCRIPTION, null, null);
+				if (newDescription.eInternalContainer() == null) {
+					msgs = newDescription.eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IPORT__DESCRIPTION, null, msgs);
+				}
+				if (msgs != null) msgs.dispatch();
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.IPORT__DESCRIPTION, oldDescription, description));
+			}
+		}
+		return description;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IDescription basicGetDescription() {
+		return description;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public NotificationChain basicSetDescription(IDescription newDescription, NotificationChain msgs) {
+		IDescription oldDescription = description;
+		description = newDescription;
+		if (eNotificationRequired()) {
+			ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IPORT__DESCRIPTION, oldDescription, newDescription);
+			if (msgs == null) msgs = notification; else msgs.add(notification);
+		}
+		return msgs;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setDescription(IDescription newDescription) {
+		if (newDescription != description) {
+			NotificationChain msgs = null;
+			if (description != null)
+				msgs = ((InternalEObject)description).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IPORT__DESCRIPTION, null, msgs);
+			if (newDescription != null)
+				msgs = ((InternalEObject)newDescription).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IPORT__DESCRIPTION, null, msgs);
+			msgs = basicSetDescription(newDescription, msgs);
+			if (msgs != null) msgs.dispatch();
+		}
+		else if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IPORT__DESCRIPTION, newDescription, newDescription));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IPropertyContainer getProperties() {
+		if (properties != null && properties.eIsProxy()) {
+			InternalEObject oldProperties = (InternalEObject)properties;
+			properties = (IPropertyContainer)eResolveProxy(oldProperties);
+			if (properties != oldProperties) {
+				InternalEObject newProperties = (InternalEObject)properties;
+				NotificationChain msgs = oldProperties.eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IPORT__PROPERTIES, null, null);
+				if (newProperties.eInternalContainer() == null) {
+					msgs = newProperties.eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IPORT__PROPERTIES, null, msgs);
+				}
+				if (msgs != null) msgs.dispatch();
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.IPORT__PROPERTIES, oldProperties, properties));
+			}
+		}
+		return properties;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IPropertyContainer basicGetProperties() {
+		return properties;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public NotificationChain basicSetProperties(IPropertyContainer newProperties, NotificationChain msgs) {
+		IPropertyContainer oldProperties = properties;
+		properties = newProperties;
+		if (eNotificationRequired()) {
+			ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IPORT__PROPERTIES, oldProperties, newProperties);
+			if (msgs == null) msgs = notification; else msgs.add(notification);
+		}
+		return msgs;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setProperties(IPropertyContainer newProperties) {
+		if (newProperties != properties) {
+			NotificationChain msgs = null;
+			if (properties != null)
+				msgs = ((InternalEObject)properties).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IPORT__PROPERTIES, null, msgs);
+			if (newProperties != null)
+				msgs = ((InternalEObject)newProperties).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IPORT__PROPERTIES, null, msgs);
+			msgs = basicSetProperties(newProperties, msgs);
+			if (msgs != null) msgs.dispatch();
+		}
+		else if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IPORT__PROPERTIES, newProperties, newProperties));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IClass getImplicitClass() {
+		if (implicitClass != null && implicitClass.eIsProxy()) {
+			InternalEObject oldImplicitClass = (InternalEObject)implicitClass;
+			implicitClass = (IClass)eResolveProxy(oldImplicitClass);
+			if (implicitClass != oldImplicitClass) {
+				InternalEObject newImplicitClass = (InternalEObject)implicitClass;
+				NotificationChain msgs = oldImplicitClass.eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IPORT__IMPLICIT_CLASS, null, null);
+				if (newImplicitClass.eInternalContainer() == null) {
+					msgs = newImplicitClass.eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IPORT__IMPLICIT_CLASS, null, msgs);
+				}
+				if (msgs != null) msgs.dispatch();
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.IPORT__IMPLICIT_CLASS, oldImplicitClass, implicitClass));
+			}
+		}
+		return implicitClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IClass basicGetImplicitClass() {
+		return implicitClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public NotificationChain basicSetImplicitClass(IClass newImplicitClass, NotificationChain msgs) {
+		IClass oldImplicitClass = implicitClass;
+		implicitClass = newImplicitClass;
+		if (eNotificationRequired()) {
+			ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IPORT__IMPLICIT_CLASS, oldImplicitClass, newImplicitClass);
+			if (msgs == null) msgs = notification; else msgs.add(notification);
+		}
+		return msgs;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setImplicitClass(IClass newImplicitClass) {
+		if (newImplicitClass != implicitClass) {
+			NotificationChain msgs = null;
+			if (implicitClass != null)
+				msgs = ((InternalEObject)implicitClass).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IPORT__IMPLICIT_CLASS, null, msgs);
+			if (newImplicitClass != null)
+				msgs = ((InternalEObject)newImplicitClass).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IPORT__IMPLICIT_CLASS, null, msgs);
+			msgs = basicSetImplicitClass(newImplicitClass, msgs);
+			if (msgs != null) msgs.dispatch();
+		}
+		else if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IPORT__IMPLICIT_CLASS, newImplicitClass, newImplicitClass));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getMultiplicity() {
+		return multiplicity;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setMultiplicity(String newMultiplicity) {
+		String oldMultiplicity = multiplicity;
+		multiplicity = newMultiplicity;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IPORT__MULTIPLICITY, oldMultiplicity, multiplicity));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IClass getOtherClass() {
+		if (otherClass != null && otherClass.eIsProxy()) {
+			InternalEObject oldOtherClass = (InternalEObject)otherClass;
+			otherClass = (IClass)eResolveProxy(oldOtherClass);
+			if (otherClass != oldOtherClass) {
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.IPORT__OTHER_CLASS, oldOtherClass, otherClass));
+			}
+		}
+		return otherClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IClass basicGetOtherClass() {
+		return otherClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setOtherClass(IClass newOtherClass) {
+		IClass oldOtherClass = otherClass;
+		otherClass = newOtherClass;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IPORT__OTHER_CLASS, oldOtherClass, otherClass));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getBehavioral() {
+		return behavioral;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setBehavioral(String newBehavioral) {
+		String oldBehavioral = behavioral;
+		behavioral = newBehavioral;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IPORT__BEHAVIORAL, oldBehavioral, behavioral));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getReversed() {
+		return reversed;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setReversed(String newReversed) {
+		String oldReversed = reversed;
+		reversed = newReversed;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IPORT__REVERSED, oldReversed, reversed));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<IClassifier> getStereotypes() {
+		if (stereotypes == null) {
+			stereotypes = new EObjectResolvingEList<IClassifier>(IClassifier.class, this, UMLRpyPackage.IPORT__STEREOTYPES);
+		}
+		return stereotypes;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public ITag getTags() {
+		if (tags != null && tags.eIsProxy()) {
+			InternalEObject oldTags = (InternalEObject)tags;
+			tags = (ITag)eResolveProxy(oldTags);
+			if (tags != oldTags) {
+				InternalEObject newTags = (InternalEObject)tags;
+				NotificationChain msgs = oldTags.eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IPORT__TAGS, null, null);
+				if (newTags.eInternalContainer() == null) {
+					msgs = newTags.eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IPORT__TAGS, null, msgs);
+				}
+				if (msgs != null) msgs.dispatch();
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.IPORT__TAGS, oldTags, tags));
+			}
+		}
+		return tags;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public ITag basicGetTags() {
+		return tags;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public NotificationChain basicSetTags(ITag newTags, NotificationChain msgs) {
+		ITag oldTags = tags;
+		tags = newTags;
+		if (eNotificationRequired()) {
+			ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IPORT__TAGS, oldTags, newTags);
+			if (msgs == null) msgs = notification; else msgs.add(notification);
+		}
+		return msgs;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setTags(ITag newTags) {
+		if (newTags != tags) {
+			NotificationChain msgs = null;
+			if (tags != null)
+				msgs = ((InternalEObject)tags).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IPORT__TAGS, null, msgs);
+			if (newTags != null)
+				msgs = ((InternalEObject)newTags).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IPORT__TAGS, null, msgs);
+			msgs = basicSetTags(newTags, msgs);
+			if (msgs != null) msgs.dispatch();
+		}
+		else if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IPORT__TAGS, newTags, newTags));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getObjectCreation() {
+		return objectCreation;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setObjectCreation(String newObjectCreation) {
+		String oldObjectCreation = objectCreation;
+		objectCreation = newObjectCreation;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IPORT__OBJECT_CREATION, oldObjectCreation, objectCreation));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getUmlDependencyID() {
+		return umlDependencyID;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setUmlDependencyID(String newUmlDependencyID) {
+		String oldUmlDependencyID = umlDependencyID;
+		umlDependencyID = newUmlDependencyID;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IPORT__UML_DEPENDENCY_ID, oldUmlDependencyID, umlDependencyID));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getLastID() {
+		return lastID;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setLastID(String newLastID) {
+		String oldLastID = lastID;
+		lastID = newLastID;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IPORT__LAST_ID, oldLastID, lastID));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IDependency getDependencies() {
+		if (dependencies != null && dependencies.eIsProxy()) {
+			InternalEObject oldDependencies = (InternalEObject)dependencies;
+			dependencies = (IDependency)eResolveProxy(oldDependencies);
+			if (dependencies != oldDependencies) {
+				InternalEObject newDependencies = (InternalEObject)dependencies;
+				NotificationChain msgs = oldDependencies.eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IPORT__DEPENDENCIES, null, null);
+				if (newDependencies.eInternalContainer() == null) {
+					msgs = newDependencies.eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IPORT__DEPENDENCIES, null, msgs);
+				}
+				if (msgs != null) msgs.dispatch();
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.IPORT__DEPENDENCIES, oldDependencies, dependencies));
+			}
+		}
+		return dependencies;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IDependency basicGetDependencies() {
+		return dependencies;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public NotificationChain basicSetDependencies(IDependency newDependencies, NotificationChain msgs) {
+		IDependency oldDependencies = dependencies;
+		dependencies = newDependencies;
+		if (eNotificationRequired()) {
+			ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IPORT__DEPENDENCIES, oldDependencies, newDependencies);
+			if (msgs == null) msgs = notification; else msgs.add(notification);
+		}
+		return msgs;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setDependencies(IDependency newDependencies) {
+		if (newDependencies != dependencies) {
+			NotificationChain msgs = null;
+			if (dependencies != null)
+				msgs = ((InternalEObject)dependencies).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IPORT__DEPENDENCIES, null, msgs);
+			if (newDependencies != null)
+				msgs = ((InternalEObject)newDependencies).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IPORT__DEPENDENCIES, null, msgs);
+			msgs = basicSetDependencies(newDependencies, msgs);
+			if (msgs != null) msgs.dispatch();
+		}
+		else if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IPORT__DEPENDENCIES, newDependencies, newDependencies));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IRequirement getAnnotations() {
+		if (annotations != null && annotations.eIsProxy()) {
+			InternalEObject oldAnnotations = (InternalEObject)annotations;
+			annotations = (IRequirement)eResolveProxy(oldAnnotations);
+			if (annotations != oldAnnotations) {
+				InternalEObject newAnnotations = (InternalEObject)annotations;
+				NotificationChain msgs = oldAnnotations.eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IPORT__ANNOTATIONS, null, null);
+				if (newAnnotations.eInternalContainer() == null) {
+					msgs = newAnnotations.eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IPORT__ANNOTATIONS, null, msgs);
+				}
+				if (msgs != null) msgs.dispatch();
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.IPORT__ANNOTATIONS, oldAnnotations, annotations));
+			}
+		}
+		return annotations;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IRequirement basicGetAnnotations() {
+		return annotations;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public NotificationChain basicSetAnnotations(IRequirement newAnnotations, NotificationChain msgs) {
+		IRequirement oldAnnotations = annotations;
+		annotations = newAnnotations;
+		if (eNotificationRequired()) {
+			ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IPORT__ANNOTATIONS, oldAnnotations, newAnnotations);
+			if (msgs == null) msgs = notification; else msgs.add(notification);
+		}
+		return msgs;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setAnnotations(IRequirement newAnnotations) {
+		if (newAnnotations != annotations) {
+			NotificationChain msgs = null;
+			if (annotations != null)
+				msgs = ((InternalEObject)annotations).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IPORT__ANNOTATIONS, null, msgs);
+			if (newAnnotations != null)
+				msgs = ((InternalEObject)newAnnotations).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IPORT__ANNOTATIONS, null, msgs);
+			msgs = basicSetAnnotations(newAnnotations, msgs);
+			if (msgs != null) msgs.dispatch();
+		}
+		else if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IPORT__ANNOTATIONS, newAnnotations, newAnnotations));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
+		switch (featureID) {
+			case UMLRpyPackage.IPORT__DESCRIPTION:
+				return basicSetDescription(null, msgs);
+			case UMLRpyPackage.IPORT__PROPERTIES:
+				return basicSetProperties(null, msgs);
+			case UMLRpyPackage.IPORT__IMPLICIT_CLASS:
+				return basicSetImplicitClass(null, msgs);
+			case UMLRpyPackage.IPORT__TAGS:
+				return basicSetTags(null, msgs);
+			case UMLRpyPackage.IPORT__DEPENDENCIES:
+				return basicSetDependencies(null, msgs);
+			case UMLRpyPackage.IPORT__ANNOTATIONS:
+				return basicSetAnnotations(null, msgs);
+		}
+		return super.eInverseRemove(otherEnd, featureID, msgs);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object eGet(int featureID, boolean resolve, boolean coreType) {
+		switch (featureID) {
+			case UMLRpyPackage.IPORT__REQUIREMEN_TRACABILITY_HANDLE:
+				return getRequiremenTracabilityHandle();
+			case UMLRpyPackage.IPORT__DESCRIPTION:
+				if (resolve) return getDescription();
+				return basicGetDescription();
+			case UMLRpyPackage.IPORT__PROPERTIES:
+				if (resolve) return getProperties();
+				return basicGetProperties();
+			case UMLRpyPackage.IPORT__IMPLICIT_CLASS:
+				if (resolve) return getImplicitClass();
+				return basicGetImplicitClass();
+			case UMLRpyPackage.IPORT__MULTIPLICITY:
+				return getMultiplicity();
+			case UMLRpyPackage.IPORT__OTHER_CLASS:
+				if (resolve) return getOtherClass();
+				return basicGetOtherClass();
+			case UMLRpyPackage.IPORT__BEHAVIORAL:
+				return getBehavioral();
+			case UMLRpyPackage.IPORT__REVERSED:
+				return getReversed();
+			case UMLRpyPackage.IPORT__STEREOTYPES:
+				return getStereotypes();
+			case UMLRpyPackage.IPORT__TAGS:
+				if (resolve) return getTags();
+				return basicGetTags();
+			case UMLRpyPackage.IPORT__OBJECT_CREATION:
+				return getObjectCreation();
+			case UMLRpyPackage.IPORT__UML_DEPENDENCY_ID:
+				return getUmlDependencyID();
+			case UMLRpyPackage.IPORT__LAST_ID:
+				return getLastID();
+			case UMLRpyPackage.IPORT__DEPENDENCIES:
+				if (resolve) return getDependencies();
+				return basicGetDependencies();
+			case UMLRpyPackage.IPORT__ANNOTATIONS:
+				if (resolve) return getAnnotations();
+				return basicGetAnnotations();
+		}
+		return super.eGet(featureID, resolve, coreType);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@SuppressWarnings("unchecked")
+	@Override
+	public void eSet(int featureID, Object newValue) {
+		switch (featureID) {
+			case UMLRpyPackage.IPORT__REQUIREMEN_TRACABILITY_HANDLE:
+				setRequiremenTracabilityHandle((String)newValue);
+				return;
+			case UMLRpyPackage.IPORT__DESCRIPTION:
+				setDescription((IDescription)newValue);
+				return;
+			case UMLRpyPackage.IPORT__PROPERTIES:
+				setProperties((IPropertyContainer)newValue);
+				return;
+			case UMLRpyPackage.IPORT__IMPLICIT_CLASS:
+				setImplicitClass((IClass)newValue);
+				return;
+			case UMLRpyPackage.IPORT__MULTIPLICITY:
+				setMultiplicity((String)newValue);
+				return;
+			case UMLRpyPackage.IPORT__OTHER_CLASS:
+				setOtherClass((IClass)newValue);
+				return;
+			case UMLRpyPackage.IPORT__BEHAVIORAL:
+				setBehavioral((String)newValue);
+				return;
+			case UMLRpyPackage.IPORT__REVERSED:
+				setReversed((String)newValue);
+				return;
+			case UMLRpyPackage.IPORT__STEREOTYPES:
+				getStereotypes().clear();
+				getStereotypes().addAll((Collection<? extends IClassifier>)newValue);
+				return;
+			case UMLRpyPackage.IPORT__TAGS:
+				setTags((ITag)newValue);
+				return;
+			case UMLRpyPackage.IPORT__OBJECT_CREATION:
+				setObjectCreation((String)newValue);
+				return;
+			case UMLRpyPackage.IPORT__UML_DEPENDENCY_ID:
+				setUmlDependencyID((String)newValue);
+				return;
+			case UMLRpyPackage.IPORT__LAST_ID:
+				setLastID((String)newValue);
+				return;
+			case UMLRpyPackage.IPORT__DEPENDENCIES:
+				setDependencies((IDependency)newValue);
+				return;
+			case UMLRpyPackage.IPORT__ANNOTATIONS:
+				setAnnotations((IRequirement)newValue);
+				return;
+		}
+		super.eSet(featureID, newValue);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void eUnset(int featureID) {
+		switch (featureID) {
+			case UMLRpyPackage.IPORT__REQUIREMEN_TRACABILITY_HANDLE:
+				setRequiremenTracabilityHandle(REQUIREMEN_TRACABILITY_HANDLE_EDEFAULT);
+				return;
+			case UMLRpyPackage.IPORT__DESCRIPTION:
+				setDescription((IDescription)null);
+				return;
+			case UMLRpyPackage.IPORT__PROPERTIES:
+				setProperties((IPropertyContainer)null);
+				return;
+			case UMLRpyPackage.IPORT__IMPLICIT_CLASS:
+				setImplicitClass((IClass)null);
+				return;
+			case UMLRpyPackage.IPORT__MULTIPLICITY:
+				setMultiplicity(MULTIPLICITY_EDEFAULT);
+				return;
+			case UMLRpyPackage.IPORT__OTHER_CLASS:
+				setOtherClass((IClass)null);
+				return;
+			case UMLRpyPackage.IPORT__BEHAVIORAL:
+				setBehavioral(BEHAVIORAL_EDEFAULT);
+				return;
+			case UMLRpyPackage.IPORT__REVERSED:
+				setReversed(REVERSED_EDEFAULT);
+				return;
+			case UMLRpyPackage.IPORT__STEREOTYPES:
+				getStereotypes().clear();
+				return;
+			case UMLRpyPackage.IPORT__TAGS:
+				setTags((ITag)null);
+				return;
+			case UMLRpyPackage.IPORT__OBJECT_CREATION:
+				setObjectCreation(OBJECT_CREATION_EDEFAULT);
+				return;
+			case UMLRpyPackage.IPORT__UML_DEPENDENCY_ID:
+				setUmlDependencyID(UML_DEPENDENCY_ID_EDEFAULT);
+				return;
+			case UMLRpyPackage.IPORT__LAST_ID:
+				setLastID(LAST_ID_EDEFAULT);
+				return;
+			case UMLRpyPackage.IPORT__DEPENDENCIES:
+				setDependencies((IDependency)null);
+				return;
+			case UMLRpyPackage.IPORT__ANNOTATIONS:
+				setAnnotations((IRequirement)null);
+				return;
+		}
+		super.eUnset(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public boolean eIsSet(int featureID) {
+		switch (featureID) {
+			case UMLRpyPackage.IPORT__REQUIREMEN_TRACABILITY_HANDLE:
+				return REQUIREMEN_TRACABILITY_HANDLE_EDEFAULT == null ? requiremenTracabilityHandle != null : !REQUIREMEN_TRACABILITY_HANDLE_EDEFAULT.equals(requiremenTracabilityHandle);
+			case UMLRpyPackage.IPORT__DESCRIPTION:
+				return description != null;
+			case UMLRpyPackage.IPORT__PROPERTIES:
+				return properties != null;
+			case UMLRpyPackage.IPORT__IMPLICIT_CLASS:
+				return implicitClass != null;
+			case UMLRpyPackage.IPORT__MULTIPLICITY:
+				return MULTIPLICITY_EDEFAULT == null ? multiplicity != null : !MULTIPLICITY_EDEFAULT.equals(multiplicity);
+			case UMLRpyPackage.IPORT__OTHER_CLASS:
+				return otherClass != null;
+			case UMLRpyPackage.IPORT__BEHAVIORAL:
+				return BEHAVIORAL_EDEFAULT == null ? behavioral != null : !BEHAVIORAL_EDEFAULT.equals(behavioral);
+			case UMLRpyPackage.IPORT__REVERSED:
+				return REVERSED_EDEFAULT == null ? reversed != null : !REVERSED_EDEFAULT.equals(reversed);
+			case UMLRpyPackage.IPORT__STEREOTYPES:
+				return stereotypes != null && !stereotypes.isEmpty();
+			case UMLRpyPackage.IPORT__TAGS:
+				return tags != null;
+			case UMLRpyPackage.IPORT__OBJECT_CREATION:
+				return OBJECT_CREATION_EDEFAULT == null ? objectCreation != null : !OBJECT_CREATION_EDEFAULT.equals(objectCreation);
+			case UMLRpyPackage.IPORT__UML_DEPENDENCY_ID:
+				return UML_DEPENDENCY_ID_EDEFAULT == null ? umlDependencyID != null : !UML_DEPENDENCY_ID_EDEFAULT.equals(umlDependencyID);
+			case UMLRpyPackage.IPORT__LAST_ID:
+				return LAST_ID_EDEFAULT == null ? lastID != null : !LAST_ID_EDEFAULT.equals(lastID);
+			case UMLRpyPackage.IPORT__DEPENDENCIES:
+				return dependencies != null;
+			case UMLRpyPackage.IPORT__ANNOTATIONS:
+				return annotations != null;
+		}
+		return super.eIsSet(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public int eBaseStructuralFeatureID(int derivedFeatureID, Class<?> baseClass) {
+		if (baseClass == M_hTargetType.class) {
+			switch (derivedFeatureID) {
+				case UMLRpyPackage.IPORT__REQUIREMEN_TRACABILITY_HANDLE: return UMLRpyPackage.MHTARGET_TYPE__REQUIREMEN_TRACABILITY_HANDLE;
+				case UMLRpyPackage.IPORT__DESCRIPTION: return UMLRpyPackage.MHTARGET_TYPE__DESCRIPTION;
+				case UMLRpyPackage.IPORT__PROPERTIES: return UMLRpyPackage.MHTARGET_TYPE__PROPERTIES;
+				default: return -1;
+			}
+		}
+		if (baseClass == FromLinkType.class) {
+			switch (derivedFeatureID) {
+				default: return -1;
+			}
+		}
+		if (baseClass == ToLinkType.class) {
+			switch (derivedFeatureID) {
+				case UMLRpyPackage.IPORT__IMPLICIT_CLASS: return UMLRpyPackage.TO_LINK_TYPE__IMPLICIT_CLASS;
+				default: return -1;
+			}
+		}
+		if (baseClass == End1_Type.class) {
+			switch (derivedFeatureID) {
+				default: return -1;
+			}
+		}
+		if (baseClass == End2_Type.class) {
+			switch (derivedFeatureID) {
+				case UMLRpyPackage.IPORT__MULTIPLICITY: return UMLRpyPackage.END2_TYPE__MULTIPLICITY;
+				default: return -1;
+			}
+		}
+		return super.eBaseStructuralFeatureID(derivedFeatureID, baseClass);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public int eDerivedStructuralFeatureID(int baseFeatureID, Class<?> baseClass) {
+		if (baseClass == M_hTargetType.class) {
+			switch (baseFeatureID) {
+				case UMLRpyPackage.MHTARGET_TYPE__REQUIREMEN_TRACABILITY_HANDLE: return UMLRpyPackage.IPORT__REQUIREMEN_TRACABILITY_HANDLE;
+				case UMLRpyPackage.MHTARGET_TYPE__DESCRIPTION: return UMLRpyPackage.IPORT__DESCRIPTION;
+				case UMLRpyPackage.MHTARGET_TYPE__PROPERTIES: return UMLRpyPackage.IPORT__PROPERTIES;
+				default: return -1;
+			}
+		}
+		if (baseClass == FromLinkType.class) {
+			switch (baseFeatureID) {
+				default: return -1;
+			}
+		}
+		if (baseClass == ToLinkType.class) {
+			switch (baseFeatureID) {
+				case UMLRpyPackage.TO_LINK_TYPE__IMPLICIT_CLASS: return UMLRpyPackage.IPORT__IMPLICIT_CLASS;
+				default: return -1;
+			}
+		}
+		if (baseClass == End1_Type.class) {
+			switch (baseFeatureID) {
+				default: return -1;
+			}
+		}
+		if (baseClass == End2_Type.class) {
+			switch (baseFeatureID) {
+				case UMLRpyPackage.END2_TYPE__MULTIPLICITY: return UMLRpyPackage.IPORT__MULTIPLICITY;
+				default: return -1;
+			}
+		}
+		return super.eDerivedStructuralFeatureID(baseFeatureID, baseClass);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String toString() {
+		if (eIsProxy()) return super.toString();
+
+		StringBuffer result = new StringBuffer(super.toString());
+		result.append(" (requiremenTracabilityHandle: "); //$NON-NLS-1$
+		result.append(requiremenTracabilityHandle);
+		result.append(", multiplicity: "); //$NON-NLS-1$
+		result.append(multiplicity);
+		result.append(", behavioral: "); //$NON-NLS-1$
+		result.append(behavioral);
+		result.append(", reversed: "); //$NON-NLS-1$
+		result.append(reversed);
+		result.append(", objectCreation: "); //$NON-NLS-1$
+		result.append(objectCreation);
+		result.append(", umlDependencyID: "); //$NON-NLS-1$
+		result.append(umlDependencyID);
+		result.append(", lastID: "); //$NON-NLS-1$
+		result.append(lastID);
+		result.append(')');
+		return result.toString();
+	}
+
+} //IPortImpl
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/IPrimitiveOperationImpl.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/IPrimitiveOperationImpl.java
new file mode 100755
index 0000000..73f9c24
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/IPrimitiveOperationImpl.java
@@ -0,0 +1,2252 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl;
+
+import java.lang.reflect.InvocationTargetException;
+import java.util.Collection;
+
+import org.eclipse.emf.common.notify.Notification;
+import org.eclipse.emf.common.notify.NotificationChain;
+
+import org.eclipse.emf.common.util.EList;
+import org.eclipse.emf.ecore.EAnnotation;
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.EModelElement;
+import org.eclipse.emf.ecore.EcorePackage;
+import org.eclipse.emf.ecore.InternalEObject;
+
+import org.eclipse.emf.ecore.impl.ENotificationImpl;
+
+import org.eclipse.emf.ecore.util.EDataTypeEList;
+import org.eclipse.emf.ecore.util.EObjectContainmentEList;
+import org.eclipse.emf.ecore.util.EObjectContainmentWithInverseEList;
+import org.eclipse.emf.ecore.util.InternalEList;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.DependsOnType;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ElementsType;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.EmbededFilesType;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IActivityGraph;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IBody;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IClassifier;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IComment;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IDependency;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IDescription;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMSC;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IModelElement;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IPrimitiveOperation;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IPropertyContainer;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITag;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITemplateParameter;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IType;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IVariable;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ItemsType;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.M_pFormalMessageType;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.M_pModelObjectType;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.M_subjectType;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.TargetType;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ValueType;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>IPrimitive Operation</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * </p>
+ * <ul>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IPrimitiveOperationImpl#getUmlDependencyID <em>Uml Dependency ID</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IPrimitiveOperationImpl#getObjectCreation <em>Object Creation</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IPrimitiveOperationImpl#getModifiedTimeWeak <em>Modified Time Weak</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IPrimitiveOperationImpl#getId <em>Id</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IPrimitiveOperationImpl#getMyState <em>My State</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IPrimitiveOperationImpl#getName <em>Name</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IPrimitiveOperationImpl#getEAnnotations <em>EAnnotations</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IPrimitiveOperationImpl#getDisplayName <em>Display Name</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IPrimitiveOperationImpl#getProperties <em>Properties</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IPrimitiveOperationImpl#getLastID <em>Last ID</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IPrimitiveOperationImpl#getArgs <em>Args</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IPrimitiveOperationImpl#getReturnType <em>Return Type</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IPrimitiveOperationImpl#getAbstract <em>Abstract</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IPrimitiveOperationImpl#getFinal <em>Final</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IPrimitiveOperationImpl#getConcurrency <em>Concurrency</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IPrimitiveOperationImpl#getProtection <em>Protection</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IPrimitiveOperationImpl#getStatic <em>Static</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IPrimitiveOperationImpl#getConstant <em>Constant</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IPrimitiveOperationImpl#getItsBody <em>Its Body</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IPrimitiveOperationImpl#getTags <em>Tags</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IPrimitiveOperationImpl#getAnnotations <em>Annotations</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IPrimitiveOperationImpl#getDependencies <em>Dependencies</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IPrimitiveOperationImpl#getStereotypes <em>Stereotypes</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IPrimitiveOperationImpl#getMyReturnType <em>My Return Type</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IPrimitiveOperationImpl#getDescription <em>Description</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IPrimitiveOperationImpl#getRequiremenTracabilityHandle <em>Requiremen Tracability Handle</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IPrimitiveOperationImpl#getDeclaratives <em>Declaratives</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IPrimitiveOperationImpl#getItsActivityGraph <em>Its Activity Graph</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IPrimitiveOperationImpl#getEmbededFiles <em>Embeded Files</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IPrimitiveOperationImpl#getCodeUpdateCGTime <em>Code Update CG Time</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IPrimitiveOperationImpl#getTemplateParameters <em>Template Parameters</em>}</li>
+ * </ul>
+ *
+ * @generated
+ */
+public class IPrimitiveOperationImpl extends OperationsTypeImpl implements IPrimitiveOperation {
+	/**
+	 * The default value of the '{@link #getUmlDependencyID() <em>Uml Dependency ID</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getUmlDependencyID()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String UML_DEPENDENCY_ID_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getUmlDependencyID() <em>Uml Dependency ID</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getUmlDependencyID()
+	 * @generated
+	 * @ordered
+	 */
+	protected String umlDependencyID = UML_DEPENDENCY_ID_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getObjectCreation() <em>Object Creation</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getObjectCreation()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String OBJECT_CREATION_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getObjectCreation() <em>Object Creation</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getObjectCreation()
+	 * @generated
+	 * @ordered
+	 */
+	protected String objectCreation = OBJECT_CREATION_EDEFAULT;
+
+	/**
+	 * The cached value of the '{@link #getModifiedTimeWeak() <em>Modified Time Weak</em>}' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getModifiedTimeWeak()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<String> modifiedTimeWeak;
+
+	/**
+	 * The default value of the '{@link #getId() <em>Id</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getId()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String ID_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getId() <em>Id</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getId()
+	 * @generated
+	 * @ordered
+	 */
+	protected String id = ID_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getMyState() <em>My State</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getMyState()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String MY_STATE_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getMyState() <em>My State</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getMyState()
+	 * @generated
+	 * @ordered
+	 */
+	protected String myState = MY_STATE_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getName() <em>Name</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getName()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String NAME_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getName() <em>Name</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getName()
+	 * @generated
+	 * @ordered
+	 */
+	protected String name = NAME_EDEFAULT;
+
+	/**
+	 * The cached value of the '{@link #getEAnnotations() <em>EAnnotations</em>}' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getEAnnotations()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<EAnnotation> eAnnotations;
+
+	/**
+	 * The default value of the '{@link #getDisplayName() <em>Display Name</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getDisplayName()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String DISPLAY_NAME_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getDisplayName() <em>Display Name</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getDisplayName()
+	 * @generated
+	 * @ordered
+	 */
+	protected String displayName = DISPLAY_NAME_EDEFAULT;
+
+	/**
+	 * The cached value of the '{@link #getProperties() <em>Properties</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getProperties()
+	 * @generated
+	 * @ordered
+	 */
+	protected IPropertyContainer properties;
+
+	/**
+	 * The default value of the '{@link #getLastID() <em>Last ID</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getLastID()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String LAST_ID_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getLastID() <em>Last ID</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getLastID()
+	 * @generated
+	 * @ordered
+	 */
+	protected String lastID = LAST_ID_EDEFAULT;
+
+	/**
+	 * The cached value of the '{@link #getArgs() <em>Args</em>}' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getArgs()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<IVariable> args;
+
+	/**
+	 * The cached value of the '{@link #getReturnType() <em>Return Type</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getReturnType()
+	 * @generated
+	 * @ordered
+	 */
+	protected IClassifier returnType;
+
+	/**
+	 * The default value of the '{@link #getAbstract() <em>Abstract</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getAbstract()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String ABSTRACT_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getAbstract() <em>Abstract</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getAbstract()
+	 * @generated
+	 * @ordered
+	 */
+	protected String abstract_ = ABSTRACT_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getFinal() <em>Final</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getFinal()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String FINAL_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getFinal() <em>Final</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getFinal()
+	 * @generated
+	 * @ordered
+	 */
+	protected String final_ = FINAL_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getConcurrency() <em>Concurrency</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getConcurrency()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String CONCURRENCY_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getConcurrency() <em>Concurrency</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getConcurrency()
+	 * @generated
+	 * @ordered
+	 */
+	protected String concurrency = CONCURRENCY_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getProtection() <em>Protection</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getProtection()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String PROTECTION_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getProtection() <em>Protection</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getProtection()
+	 * @generated
+	 * @ordered
+	 */
+	protected String protection = PROTECTION_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getStatic() <em>Static</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getStatic()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String STATIC_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getStatic() <em>Static</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getStatic()
+	 * @generated
+	 * @ordered
+	 */
+	protected String static_ = STATIC_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getConstant() <em>Constant</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getConstant()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String CONSTANT_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getConstant() <em>Constant</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getConstant()
+	 * @generated
+	 * @ordered
+	 */
+	protected String constant = CONSTANT_EDEFAULT;
+
+	/**
+	 * The cached value of the '{@link #getItsBody() <em>Its Body</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getItsBody()
+	 * @generated
+	 * @ordered
+	 */
+	protected IBody itsBody;
+
+	/**
+	 * The cached value of the '{@link #getTags() <em>Tags</em>}' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getTags()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<ITag> tags;
+
+	/**
+	 * The cached value of the '{@link #getAnnotations() <em>Annotations</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getAnnotations()
+	 * @generated
+	 * @ordered
+	 */
+	protected IComment annotations;
+
+	/**
+	 * The cached value of the '{@link #getDependencies() <em>Dependencies</em>}' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getDependencies()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<IDependency> dependencies;
+
+	/**
+	 * The cached value of the '{@link #getStereotypes() <em>Stereotypes</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getStereotypes()
+	 * @generated
+	 * @ordered
+	 */
+	protected IClassifier stereotypes;
+
+	/**
+	 * The cached value of the '{@link #getMyReturnType() <em>My Return Type</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getMyReturnType()
+	 * @generated
+	 * @ordered
+	 */
+	protected IType myReturnType;
+
+	/**
+	 * The cached value of the '{@link #getDescription() <em>Description</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getDescription()
+	 * @generated
+	 * @ordered
+	 */
+	protected IDescription description;
+
+	/**
+	 * The default value of the '{@link #getRequiremenTracabilityHandle() <em>Requiremen Tracability Handle</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getRequiremenTracabilityHandle()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String REQUIREMEN_TRACABILITY_HANDLE_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getRequiremenTracabilityHandle() <em>Requiremen Tracability Handle</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getRequiremenTracabilityHandle()
+	 * @generated
+	 * @ordered
+	 */
+	protected String requiremenTracabilityHandle = REQUIREMEN_TRACABILITY_HANDLE_EDEFAULT;
+
+	/**
+	 * The cached value of the '{@link #getDeclaratives() <em>Declaratives</em>}' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getDeclaratives()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<IMSC> declaratives;
+
+	/**
+	 * The cached value of the '{@link #getItsActivityGraph() <em>Its Activity Graph</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getItsActivityGraph()
+	 * @generated
+	 * @ordered
+	 */
+	protected IActivityGraph itsActivityGraph;
+
+	/**
+	 * The cached value of the '{@link #getEmbededFiles() <em>Embeded Files</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getEmbededFiles()
+	 * @generated
+	 * @ordered
+	 */
+	protected EmbededFilesType embededFiles;
+
+	/**
+	 * The cached value of the '{@link #getCodeUpdateCGTime() <em>Code Update CG Time</em>}' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getCodeUpdateCGTime()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<String> codeUpdateCGTime;
+
+	/**
+	 * The cached value of the '{@link #getTemplateParameters() <em>Template Parameters</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getTemplateParameters()
+	 * @generated
+	 * @ordered
+	 */
+	protected ITemplateParameter templateParameters;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected IPrimitiveOperationImpl() {
+		super();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EClass eStaticClass() {
+		return UMLRpyPackage.eINSTANCE.getIPrimitiveOperation();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getUmlDependencyID() {
+		return umlDependencyID;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setUmlDependencyID(String newUmlDependencyID) {
+		String oldUmlDependencyID = umlDependencyID;
+		umlDependencyID = newUmlDependencyID;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IPRIMITIVE_OPERATION__UML_DEPENDENCY_ID, oldUmlDependencyID, umlDependencyID));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getObjectCreation() {
+		return objectCreation;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setObjectCreation(String newObjectCreation) {
+		String oldObjectCreation = objectCreation;
+		objectCreation = newObjectCreation;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IPRIMITIVE_OPERATION__OBJECT_CREATION, oldObjectCreation, objectCreation));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<String> getModifiedTimeWeak() {
+		if (modifiedTimeWeak == null) {
+			modifiedTimeWeak = new EDataTypeEList<String>(String.class, this, UMLRpyPackage.IPRIMITIVE_OPERATION__MODIFIED_TIME_WEAK);
+		}
+		return modifiedTimeWeak;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getId() {
+		return id;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setId(String newId) {
+		String oldId = id;
+		id = newId;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IPRIMITIVE_OPERATION__ID, oldId, id));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getMyState() {
+		return myState;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setMyState(String newMyState) {
+		String oldMyState = myState;
+		myState = newMyState;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IPRIMITIVE_OPERATION__MY_STATE, oldMyState, myState));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getName() {
+		return name;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setName(String newName) {
+		String oldName = name;
+		name = newName;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IPRIMITIVE_OPERATION__NAME, oldName, name));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<EAnnotation> getEAnnotations() {
+		if (eAnnotations == null) {
+			eAnnotations = new EObjectContainmentWithInverseEList<EAnnotation>(EAnnotation.class, this, UMLRpyPackage.IPRIMITIVE_OPERATION__EANNOTATIONS, EcorePackage.EANNOTATION__EMODEL_ELEMENT);
+		}
+		return eAnnotations;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getDisplayName() {
+		return displayName;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setDisplayName(String newDisplayName) {
+		String oldDisplayName = displayName;
+		displayName = newDisplayName;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IPRIMITIVE_OPERATION__DISPLAY_NAME, oldDisplayName, displayName));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IPropertyContainer getProperties() {
+		if (properties != null && properties.eIsProxy()) {
+			InternalEObject oldProperties = (InternalEObject)properties;
+			properties = (IPropertyContainer)eResolveProxy(oldProperties);
+			if (properties != oldProperties) {
+				InternalEObject newProperties = (InternalEObject)properties;
+				NotificationChain msgs = oldProperties.eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IPRIMITIVE_OPERATION__PROPERTIES, null, null);
+				if (newProperties.eInternalContainer() == null) {
+					msgs = newProperties.eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IPRIMITIVE_OPERATION__PROPERTIES, null, msgs);
+				}
+				if (msgs != null) msgs.dispatch();
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.IPRIMITIVE_OPERATION__PROPERTIES, oldProperties, properties));
+			}
+		}
+		return properties;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IPropertyContainer basicGetProperties() {
+		return properties;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public NotificationChain basicSetProperties(IPropertyContainer newProperties, NotificationChain msgs) {
+		IPropertyContainer oldProperties = properties;
+		properties = newProperties;
+		if (eNotificationRequired()) {
+			ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IPRIMITIVE_OPERATION__PROPERTIES, oldProperties, newProperties);
+			if (msgs == null) msgs = notification; else msgs.add(notification);
+		}
+		return msgs;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setProperties(IPropertyContainer newProperties) {
+		if (newProperties != properties) {
+			NotificationChain msgs = null;
+			if (properties != null)
+				msgs = ((InternalEObject)properties).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IPRIMITIVE_OPERATION__PROPERTIES, null, msgs);
+			if (newProperties != null)
+				msgs = ((InternalEObject)newProperties).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IPRIMITIVE_OPERATION__PROPERTIES, null, msgs);
+			msgs = basicSetProperties(newProperties, msgs);
+			if (msgs != null) msgs.dispatch();
+		}
+		else if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IPRIMITIVE_OPERATION__PROPERTIES, newProperties, newProperties));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getLastID() {
+		return lastID;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setLastID(String newLastID) {
+		String oldLastID = lastID;
+		lastID = newLastID;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IPRIMITIVE_OPERATION__LAST_ID, oldLastID, lastID));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<IVariable> getArgs() {
+		if (args == null) {
+			args = new EObjectContainmentEList.Resolving<IVariable>(IVariable.class, this, UMLRpyPackage.IPRIMITIVE_OPERATION__ARGS);
+		}
+		return args;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IClassifier getReturnType() {
+		if (returnType != null && returnType.eIsProxy()) {
+			InternalEObject oldReturnType = (InternalEObject)returnType;
+			returnType = (IClassifier)eResolveProxy(oldReturnType);
+			if (returnType != oldReturnType) {
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.IPRIMITIVE_OPERATION__RETURN_TYPE, oldReturnType, returnType));
+			}
+		}
+		return returnType;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IClassifier basicGetReturnType() {
+		return returnType;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setReturnType(IClassifier newReturnType) {
+		IClassifier oldReturnType = returnType;
+		returnType = newReturnType;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IPRIMITIVE_OPERATION__RETURN_TYPE, oldReturnType, returnType));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getAbstract() {
+		return abstract_;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setAbstract(String newAbstract) {
+		String oldAbstract = abstract_;
+		abstract_ = newAbstract;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IPRIMITIVE_OPERATION__ABSTRACT, oldAbstract, abstract_));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getFinal() {
+		return final_;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setFinal(String newFinal) {
+		String oldFinal = final_;
+		final_ = newFinal;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IPRIMITIVE_OPERATION__FINAL, oldFinal, final_));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getConcurrency() {
+		return concurrency;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setConcurrency(String newConcurrency) {
+		String oldConcurrency = concurrency;
+		concurrency = newConcurrency;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IPRIMITIVE_OPERATION__CONCURRENCY, oldConcurrency, concurrency));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getProtection() {
+		return protection;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setProtection(String newProtection) {
+		String oldProtection = protection;
+		protection = newProtection;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IPRIMITIVE_OPERATION__PROTECTION, oldProtection, protection));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getStatic() {
+		return static_;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setStatic(String newStatic) {
+		String oldStatic = static_;
+		static_ = newStatic;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IPRIMITIVE_OPERATION__STATIC, oldStatic, static_));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getConstant() {
+		return constant;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setConstant(String newConstant) {
+		String oldConstant = constant;
+		constant = newConstant;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IPRIMITIVE_OPERATION__CONSTANT, oldConstant, constant));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IBody getItsBody() {
+		if (itsBody != null && itsBody.eIsProxy()) {
+			InternalEObject oldItsBody = (InternalEObject)itsBody;
+			itsBody = (IBody)eResolveProxy(oldItsBody);
+			if (itsBody != oldItsBody) {
+				InternalEObject newItsBody = (InternalEObject)itsBody;
+				NotificationChain msgs = oldItsBody.eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IPRIMITIVE_OPERATION__ITS_BODY, null, null);
+				if (newItsBody.eInternalContainer() == null) {
+					msgs = newItsBody.eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IPRIMITIVE_OPERATION__ITS_BODY, null, msgs);
+				}
+				if (msgs != null) msgs.dispatch();
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.IPRIMITIVE_OPERATION__ITS_BODY, oldItsBody, itsBody));
+			}
+		}
+		return itsBody;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IBody basicGetItsBody() {
+		return itsBody;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public NotificationChain basicSetItsBody(IBody newItsBody, NotificationChain msgs) {
+		IBody oldItsBody = itsBody;
+		itsBody = newItsBody;
+		if (eNotificationRequired()) {
+			ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IPRIMITIVE_OPERATION__ITS_BODY, oldItsBody, newItsBody);
+			if (msgs == null) msgs = notification; else msgs.add(notification);
+		}
+		return msgs;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setItsBody(IBody newItsBody) {
+		if (newItsBody != itsBody) {
+			NotificationChain msgs = null;
+			if (itsBody != null)
+				msgs = ((InternalEObject)itsBody).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IPRIMITIVE_OPERATION__ITS_BODY, null, msgs);
+			if (newItsBody != null)
+				msgs = ((InternalEObject)newItsBody).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IPRIMITIVE_OPERATION__ITS_BODY, null, msgs);
+			msgs = basicSetItsBody(newItsBody, msgs);
+			if (msgs != null) msgs.dispatch();
+		}
+		else if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IPRIMITIVE_OPERATION__ITS_BODY, newItsBody, newItsBody));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<ITag> getTags() {
+		if (tags == null) {
+			tags = new EObjectContainmentEList.Resolving<ITag>(ITag.class, this, UMLRpyPackage.IPRIMITIVE_OPERATION__TAGS);
+		}
+		return tags;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IComment getAnnotations() {
+		if (annotations != null && annotations.eIsProxy()) {
+			InternalEObject oldAnnotations = (InternalEObject)annotations;
+			annotations = (IComment)eResolveProxy(oldAnnotations);
+			if (annotations != oldAnnotations) {
+				InternalEObject newAnnotations = (InternalEObject)annotations;
+				NotificationChain msgs = oldAnnotations.eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IPRIMITIVE_OPERATION__ANNOTATIONS, null, null);
+				if (newAnnotations.eInternalContainer() == null) {
+					msgs = newAnnotations.eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IPRIMITIVE_OPERATION__ANNOTATIONS, null, msgs);
+				}
+				if (msgs != null) msgs.dispatch();
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.IPRIMITIVE_OPERATION__ANNOTATIONS, oldAnnotations, annotations));
+			}
+		}
+		return annotations;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IComment basicGetAnnotations() {
+		return annotations;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public NotificationChain basicSetAnnotations(IComment newAnnotations, NotificationChain msgs) {
+		IComment oldAnnotations = annotations;
+		annotations = newAnnotations;
+		if (eNotificationRequired()) {
+			ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IPRIMITIVE_OPERATION__ANNOTATIONS, oldAnnotations, newAnnotations);
+			if (msgs == null) msgs = notification; else msgs.add(notification);
+		}
+		return msgs;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setAnnotations(IComment newAnnotations) {
+		if (newAnnotations != annotations) {
+			NotificationChain msgs = null;
+			if (annotations != null)
+				msgs = ((InternalEObject)annotations).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IPRIMITIVE_OPERATION__ANNOTATIONS, null, msgs);
+			if (newAnnotations != null)
+				msgs = ((InternalEObject)newAnnotations).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IPRIMITIVE_OPERATION__ANNOTATIONS, null, msgs);
+			msgs = basicSetAnnotations(newAnnotations, msgs);
+			if (msgs != null) msgs.dispatch();
+		}
+		else if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IPRIMITIVE_OPERATION__ANNOTATIONS, newAnnotations, newAnnotations));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<IDependency> getDependencies() {
+		if (dependencies == null) {
+			dependencies = new EObjectContainmentEList.Resolving<IDependency>(IDependency.class, this, UMLRpyPackage.IPRIMITIVE_OPERATION__DEPENDENCIES);
+		}
+		return dependencies;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IClassifier getStereotypes() {
+		if (stereotypes != null && stereotypes.eIsProxy()) {
+			InternalEObject oldStereotypes = (InternalEObject)stereotypes;
+			stereotypes = (IClassifier)eResolveProxy(oldStereotypes);
+			if (stereotypes != oldStereotypes) {
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.IPRIMITIVE_OPERATION__STEREOTYPES, oldStereotypes, stereotypes));
+			}
+		}
+		return stereotypes;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IClassifier basicGetStereotypes() {
+		return stereotypes;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setStereotypes(IClassifier newStereotypes) {
+		IClassifier oldStereotypes = stereotypes;
+		stereotypes = newStereotypes;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IPRIMITIVE_OPERATION__STEREOTYPES, oldStereotypes, stereotypes));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IType getMyReturnType() {
+		if (myReturnType != null && myReturnType.eIsProxy()) {
+			InternalEObject oldMyReturnType = (InternalEObject)myReturnType;
+			myReturnType = (IType)eResolveProxy(oldMyReturnType);
+			if (myReturnType != oldMyReturnType) {
+				InternalEObject newMyReturnType = (InternalEObject)myReturnType;
+				NotificationChain msgs = oldMyReturnType.eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IPRIMITIVE_OPERATION__MY_RETURN_TYPE, null, null);
+				if (newMyReturnType.eInternalContainer() == null) {
+					msgs = newMyReturnType.eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IPRIMITIVE_OPERATION__MY_RETURN_TYPE, null, msgs);
+				}
+				if (msgs != null) msgs.dispatch();
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.IPRIMITIVE_OPERATION__MY_RETURN_TYPE, oldMyReturnType, myReturnType));
+			}
+		}
+		return myReturnType;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IType basicGetMyReturnType() {
+		return myReturnType;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public NotificationChain basicSetMyReturnType(IType newMyReturnType, NotificationChain msgs) {
+		IType oldMyReturnType = myReturnType;
+		myReturnType = newMyReturnType;
+		if (eNotificationRequired()) {
+			ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IPRIMITIVE_OPERATION__MY_RETURN_TYPE, oldMyReturnType, newMyReturnType);
+			if (msgs == null) msgs = notification; else msgs.add(notification);
+		}
+		return msgs;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setMyReturnType(IType newMyReturnType) {
+		if (newMyReturnType != myReturnType) {
+			NotificationChain msgs = null;
+			if (myReturnType != null)
+				msgs = ((InternalEObject)myReturnType).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IPRIMITIVE_OPERATION__MY_RETURN_TYPE, null, msgs);
+			if (newMyReturnType != null)
+				msgs = ((InternalEObject)newMyReturnType).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IPRIMITIVE_OPERATION__MY_RETURN_TYPE, null, msgs);
+			msgs = basicSetMyReturnType(newMyReturnType, msgs);
+			if (msgs != null) msgs.dispatch();
+		}
+		else if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IPRIMITIVE_OPERATION__MY_RETURN_TYPE, newMyReturnType, newMyReturnType));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IDescription getDescription() {
+		if (description != null && description.eIsProxy()) {
+			InternalEObject oldDescription = (InternalEObject)description;
+			description = (IDescription)eResolveProxy(oldDescription);
+			if (description != oldDescription) {
+				InternalEObject newDescription = (InternalEObject)description;
+				NotificationChain msgs = oldDescription.eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IPRIMITIVE_OPERATION__DESCRIPTION, null, null);
+				if (newDescription.eInternalContainer() == null) {
+					msgs = newDescription.eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IPRIMITIVE_OPERATION__DESCRIPTION, null, msgs);
+				}
+				if (msgs != null) msgs.dispatch();
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.IPRIMITIVE_OPERATION__DESCRIPTION, oldDescription, description));
+			}
+		}
+		return description;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IDescription basicGetDescription() {
+		return description;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public NotificationChain basicSetDescription(IDescription newDescription, NotificationChain msgs) {
+		IDescription oldDescription = description;
+		description = newDescription;
+		if (eNotificationRequired()) {
+			ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IPRIMITIVE_OPERATION__DESCRIPTION, oldDescription, newDescription);
+			if (msgs == null) msgs = notification; else msgs.add(notification);
+		}
+		return msgs;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setDescription(IDescription newDescription) {
+		if (newDescription != description) {
+			NotificationChain msgs = null;
+			if (description != null)
+				msgs = ((InternalEObject)description).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IPRIMITIVE_OPERATION__DESCRIPTION, null, msgs);
+			if (newDescription != null)
+				msgs = ((InternalEObject)newDescription).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IPRIMITIVE_OPERATION__DESCRIPTION, null, msgs);
+			msgs = basicSetDescription(newDescription, msgs);
+			if (msgs != null) msgs.dispatch();
+		}
+		else if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IPRIMITIVE_OPERATION__DESCRIPTION, newDescription, newDescription));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getRequiremenTracabilityHandle() {
+		return requiremenTracabilityHandle;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setRequiremenTracabilityHandle(String newRequiremenTracabilityHandle) {
+		String oldRequiremenTracabilityHandle = requiremenTracabilityHandle;
+		requiremenTracabilityHandle = newRequiremenTracabilityHandle;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IPRIMITIVE_OPERATION__REQUIREMEN_TRACABILITY_HANDLE, oldRequiremenTracabilityHandle, requiremenTracabilityHandle));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<IMSC> getDeclaratives() {
+		if (declaratives == null) {
+			declaratives = new EObjectContainmentEList.Resolving<IMSC>(IMSC.class, this, UMLRpyPackage.IPRIMITIVE_OPERATION__DECLARATIVES);
+		}
+		return declaratives;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IActivityGraph getItsActivityGraph() {
+		if (itsActivityGraph != null && itsActivityGraph.eIsProxy()) {
+			InternalEObject oldItsActivityGraph = (InternalEObject)itsActivityGraph;
+			itsActivityGraph = (IActivityGraph)eResolveProxy(oldItsActivityGraph);
+			if (itsActivityGraph != oldItsActivityGraph) {
+				InternalEObject newItsActivityGraph = (InternalEObject)itsActivityGraph;
+				NotificationChain msgs = oldItsActivityGraph.eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IPRIMITIVE_OPERATION__ITS_ACTIVITY_GRAPH, null, null);
+				if (newItsActivityGraph.eInternalContainer() == null) {
+					msgs = newItsActivityGraph.eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IPRIMITIVE_OPERATION__ITS_ACTIVITY_GRAPH, null, msgs);
+				}
+				if (msgs != null) msgs.dispatch();
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.IPRIMITIVE_OPERATION__ITS_ACTIVITY_GRAPH, oldItsActivityGraph, itsActivityGraph));
+			}
+		}
+		return itsActivityGraph;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IActivityGraph basicGetItsActivityGraph() {
+		return itsActivityGraph;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public NotificationChain basicSetItsActivityGraph(IActivityGraph newItsActivityGraph, NotificationChain msgs) {
+		IActivityGraph oldItsActivityGraph = itsActivityGraph;
+		itsActivityGraph = newItsActivityGraph;
+		if (eNotificationRequired()) {
+			ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IPRIMITIVE_OPERATION__ITS_ACTIVITY_GRAPH, oldItsActivityGraph, newItsActivityGraph);
+			if (msgs == null) msgs = notification; else msgs.add(notification);
+		}
+		return msgs;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setItsActivityGraph(IActivityGraph newItsActivityGraph) {
+		if (newItsActivityGraph != itsActivityGraph) {
+			NotificationChain msgs = null;
+			if (itsActivityGraph != null)
+				msgs = ((InternalEObject)itsActivityGraph).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IPRIMITIVE_OPERATION__ITS_ACTIVITY_GRAPH, null, msgs);
+			if (newItsActivityGraph != null)
+				msgs = ((InternalEObject)newItsActivityGraph).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IPRIMITIVE_OPERATION__ITS_ACTIVITY_GRAPH, null, msgs);
+			msgs = basicSetItsActivityGraph(newItsActivityGraph, msgs);
+			if (msgs != null) msgs.dispatch();
+		}
+		else if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IPRIMITIVE_OPERATION__ITS_ACTIVITY_GRAPH, newItsActivityGraph, newItsActivityGraph));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EmbededFilesType getEmbededFiles() {
+		if (embededFiles != null && embededFiles.eIsProxy()) {
+			InternalEObject oldEmbededFiles = (InternalEObject)embededFiles;
+			embededFiles = (EmbededFilesType)eResolveProxy(oldEmbededFiles);
+			if (embededFiles != oldEmbededFiles) {
+				InternalEObject newEmbededFiles = (InternalEObject)embededFiles;
+				NotificationChain msgs = oldEmbededFiles.eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IPRIMITIVE_OPERATION__EMBEDED_FILES, null, null);
+				if (newEmbededFiles.eInternalContainer() == null) {
+					msgs = newEmbededFiles.eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IPRIMITIVE_OPERATION__EMBEDED_FILES, null, msgs);
+				}
+				if (msgs != null) msgs.dispatch();
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.IPRIMITIVE_OPERATION__EMBEDED_FILES, oldEmbededFiles, embededFiles));
+			}
+		}
+		return embededFiles;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EmbededFilesType basicGetEmbededFiles() {
+		return embededFiles;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public NotificationChain basicSetEmbededFiles(EmbededFilesType newEmbededFiles, NotificationChain msgs) {
+		EmbededFilesType oldEmbededFiles = embededFiles;
+		embededFiles = newEmbededFiles;
+		if (eNotificationRequired()) {
+			ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IPRIMITIVE_OPERATION__EMBEDED_FILES, oldEmbededFiles, newEmbededFiles);
+			if (msgs == null) msgs = notification; else msgs.add(notification);
+		}
+		return msgs;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setEmbededFiles(EmbededFilesType newEmbededFiles) {
+		if (newEmbededFiles != embededFiles) {
+			NotificationChain msgs = null;
+			if (embededFiles != null)
+				msgs = ((InternalEObject)embededFiles).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IPRIMITIVE_OPERATION__EMBEDED_FILES, null, msgs);
+			if (newEmbededFiles != null)
+				msgs = ((InternalEObject)newEmbededFiles).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IPRIMITIVE_OPERATION__EMBEDED_FILES, null, msgs);
+			msgs = basicSetEmbededFiles(newEmbededFiles, msgs);
+			if (msgs != null) msgs.dispatch();
+		}
+		else if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IPRIMITIVE_OPERATION__EMBEDED_FILES, newEmbededFiles, newEmbededFiles));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<String> getCodeUpdateCGTime() {
+		if (codeUpdateCGTime == null) {
+			codeUpdateCGTime = new EDataTypeEList<String>(String.class, this, UMLRpyPackage.IPRIMITIVE_OPERATION__CODE_UPDATE_CG_TIME);
+		}
+		return codeUpdateCGTime;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public ITemplateParameter getTemplateParameters() {
+		if (templateParameters != null && templateParameters.eIsProxy()) {
+			InternalEObject oldTemplateParameters = (InternalEObject)templateParameters;
+			templateParameters = (ITemplateParameter)eResolveProxy(oldTemplateParameters);
+			if (templateParameters != oldTemplateParameters) {
+				InternalEObject newTemplateParameters = (InternalEObject)templateParameters;
+				NotificationChain msgs = oldTemplateParameters.eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IPRIMITIVE_OPERATION__TEMPLATE_PARAMETERS, null, null);
+				if (newTemplateParameters.eInternalContainer() == null) {
+					msgs = newTemplateParameters.eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IPRIMITIVE_OPERATION__TEMPLATE_PARAMETERS, null, msgs);
+				}
+				if (msgs != null) msgs.dispatch();
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.IPRIMITIVE_OPERATION__TEMPLATE_PARAMETERS, oldTemplateParameters, templateParameters));
+			}
+		}
+		return templateParameters;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public ITemplateParameter basicGetTemplateParameters() {
+		return templateParameters;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public NotificationChain basicSetTemplateParameters(ITemplateParameter newTemplateParameters, NotificationChain msgs) {
+		ITemplateParameter oldTemplateParameters = templateParameters;
+		templateParameters = newTemplateParameters;
+		if (eNotificationRequired()) {
+			ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IPRIMITIVE_OPERATION__TEMPLATE_PARAMETERS, oldTemplateParameters, newTemplateParameters);
+			if (msgs == null) msgs = notification; else msgs.add(notification);
+		}
+		return msgs;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setTemplateParameters(ITemplateParameter newTemplateParameters) {
+		if (newTemplateParameters != templateParameters) {
+			NotificationChain msgs = null;
+			if (templateParameters != null)
+				msgs = ((InternalEObject)templateParameters).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IPRIMITIVE_OPERATION__TEMPLATE_PARAMETERS, null, msgs);
+			if (newTemplateParameters != null)
+				msgs = ((InternalEObject)newTemplateParameters).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IPRIMITIVE_OPERATION__TEMPLATE_PARAMETERS, null, msgs);
+			msgs = basicSetTemplateParameters(newTemplateParameters, msgs);
+			if (msgs != null) msgs.dispatch();
+		}
+		else if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IPRIMITIVE_OPERATION__TEMPLATE_PARAMETERS, newTemplateParameters, newTemplateParameters));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAnnotation getEAnnotation(String source) {
+		// TODO: implement this method
+		// Ensure that you remove @generated or mark it @generated NOT
+		throw new UnsupportedOperationException();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@SuppressWarnings("unchecked")
+	@Override
+	public NotificationChain eInverseAdd(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
+		switch (featureID) {
+			case UMLRpyPackage.IPRIMITIVE_OPERATION__EANNOTATIONS:
+				return ((InternalEList<InternalEObject>)(InternalEList<?>)getEAnnotations()).basicAdd(otherEnd, msgs);
+		}
+		return super.eInverseAdd(otherEnd, featureID, msgs);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
+		switch (featureID) {
+			case UMLRpyPackage.IPRIMITIVE_OPERATION__EANNOTATIONS:
+				return ((InternalEList<?>)getEAnnotations()).basicRemove(otherEnd, msgs);
+			case UMLRpyPackage.IPRIMITIVE_OPERATION__PROPERTIES:
+				return basicSetProperties(null, msgs);
+			case UMLRpyPackage.IPRIMITIVE_OPERATION__ARGS:
+				return ((InternalEList<?>)getArgs()).basicRemove(otherEnd, msgs);
+			case UMLRpyPackage.IPRIMITIVE_OPERATION__ITS_BODY:
+				return basicSetItsBody(null, msgs);
+			case UMLRpyPackage.IPRIMITIVE_OPERATION__TAGS:
+				return ((InternalEList<?>)getTags()).basicRemove(otherEnd, msgs);
+			case UMLRpyPackage.IPRIMITIVE_OPERATION__ANNOTATIONS:
+				return basicSetAnnotations(null, msgs);
+			case UMLRpyPackage.IPRIMITIVE_OPERATION__DEPENDENCIES:
+				return ((InternalEList<?>)getDependencies()).basicRemove(otherEnd, msgs);
+			case UMLRpyPackage.IPRIMITIVE_OPERATION__MY_RETURN_TYPE:
+				return basicSetMyReturnType(null, msgs);
+			case UMLRpyPackage.IPRIMITIVE_OPERATION__DESCRIPTION:
+				return basicSetDescription(null, msgs);
+			case UMLRpyPackage.IPRIMITIVE_OPERATION__DECLARATIVES:
+				return ((InternalEList<?>)getDeclaratives()).basicRemove(otherEnd, msgs);
+			case UMLRpyPackage.IPRIMITIVE_OPERATION__ITS_ACTIVITY_GRAPH:
+				return basicSetItsActivityGraph(null, msgs);
+			case UMLRpyPackage.IPRIMITIVE_OPERATION__EMBEDED_FILES:
+				return basicSetEmbededFiles(null, msgs);
+			case UMLRpyPackage.IPRIMITIVE_OPERATION__TEMPLATE_PARAMETERS:
+				return basicSetTemplateParameters(null, msgs);
+		}
+		return super.eInverseRemove(otherEnd, featureID, msgs);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object eGet(int featureID, boolean resolve, boolean coreType) {
+		switch (featureID) {
+			case UMLRpyPackage.IPRIMITIVE_OPERATION__UML_DEPENDENCY_ID:
+				return getUmlDependencyID();
+			case UMLRpyPackage.IPRIMITIVE_OPERATION__OBJECT_CREATION:
+				return getObjectCreation();
+			case UMLRpyPackage.IPRIMITIVE_OPERATION__MODIFIED_TIME_WEAK:
+				return getModifiedTimeWeak();
+			case UMLRpyPackage.IPRIMITIVE_OPERATION__ID:
+				return getId();
+			case UMLRpyPackage.IPRIMITIVE_OPERATION__MY_STATE:
+				return getMyState();
+			case UMLRpyPackage.IPRIMITIVE_OPERATION__NAME:
+				return getName();
+			case UMLRpyPackage.IPRIMITIVE_OPERATION__EANNOTATIONS:
+				return getEAnnotations();
+			case UMLRpyPackage.IPRIMITIVE_OPERATION__DISPLAY_NAME:
+				return getDisplayName();
+			case UMLRpyPackage.IPRIMITIVE_OPERATION__PROPERTIES:
+				if (resolve) return getProperties();
+				return basicGetProperties();
+			case UMLRpyPackage.IPRIMITIVE_OPERATION__LAST_ID:
+				return getLastID();
+			case UMLRpyPackage.IPRIMITIVE_OPERATION__ARGS:
+				return getArgs();
+			case UMLRpyPackage.IPRIMITIVE_OPERATION__RETURN_TYPE:
+				if (resolve) return getReturnType();
+				return basicGetReturnType();
+			case UMLRpyPackage.IPRIMITIVE_OPERATION__ABSTRACT:
+				return getAbstract();
+			case UMLRpyPackage.IPRIMITIVE_OPERATION__FINAL:
+				return getFinal();
+			case UMLRpyPackage.IPRIMITIVE_OPERATION__CONCURRENCY:
+				return getConcurrency();
+			case UMLRpyPackage.IPRIMITIVE_OPERATION__PROTECTION:
+				return getProtection();
+			case UMLRpyPackage.IPRIMITIVE_OPERATION__STATIC:
+				return getStatic();
+			case UMLRpyPackage.IPRIMITIVE_OPERATION__CONSTANT:
+				return getConstant();
+			case UMLRpyPackage.IPRIMITIVE_OPERATION__ITS_BODY:
+				if (resolve) return getItsBody();
+				return basicGetItsBody();
+			case UMLRpyPackage.IPRIMITIVE_OPERATION__TAGS:
+				return getTags();
+			case UMLRpyPackage.IPRIMITIVE_OPERATION__ANNOTATIONS:
+				if (resolve) return getAnnotations();
+				return basicGetAnnotations();
+			case UMLRpyPackage.IPRIMITIVE_OPERATION__DEPENDENCIES:
+				return getDependencies();
+			case UMLRpyPackage.IPRIMITIVE_OPERATION__STEREOTYPES:
+				if (resolve) return getStereotypes();
+				return basicGetStereotypes();
+			case UMLRpyPackage.IPRIMITIVE_OPERATION__MY_RETURN_TYPE:
+				if (resolve) return getMyReturnType();
+				return basicGetMyReturnType();
+			case UMLRpyPackage.IPRIMITIVE_OPERATION__DESCRIPTION:
+				if (resolve) return getDescription();
+				return basicGetDescription();
+			case UMLRpyPackage.IPRIMITIVE_OPERATION__REQUIREMEN_TRACABILITY_HANDLE:
+				return getRequiremenTracabilityHandle();
+			case UMLRpyPackage.IPRIMITIVE_OPERATION__DECLARATIVES:
+				return getDeclaratives();
+			case UMLRpyPackage.IPRIMITIVE_OPERATION__ITS_ACTIVITY_GRAPH:
+				if (resolve) return getItsActivityGraph();
+				return basicGetItsActivityGraph();
+			case UMLRpyPackage.IPRIMITIVE_OPERATION__EMBEDED_FILES:
+				if (resolve) return getEmbededFiles();
+				return basicGetEmbededFiles();
+			case UMLRpyPackage.IPRIMITIVE_OPERATION__CODE_UPDATE_CG_TIME:
+				return getCodeUpdateCGTime();
+			case UMLRpyPackage.IPRIMITIVE_OPERATION__TEMPLATE_PARAMETERS:
+				if (resolve) return getTemplateParameters();
+				return basicGetTemplateParameters();
+		}
+		return super.eGet(featureID, resolve, coreType);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@SuppressWarnings("unchecked")
+	@Override
+	public void eSet(int featureID, Object newValue) {
+		switch (featureID) {
+			case UMLRpyPackage.IPRIMITIVE_OPERATION__UML_DEPENDENCY_ID:
+				setUmlDependencyID((String)newValue);
+				return;
+			case UMLRpyPackage.IPRIMITIVE_OPERATION__OBJECT_CREATION:
+				setObjectCreation((String)newValue);
+				return;
+			case UMLRpyPackage.IPRIMITIVE_OPERATION__MODIFIED_TIME_WEAK:
+				getModifiedTimeWeak().clear();
+				getModifiedTimeWeak().addAll((Collection<? extends String>)newValue);
+				return;
+			case UMLRpyPackage.IPRIMITIVE_OPERATION__ID:
+				setId((String)newValue);
+				return;
+			case UMLRpyPackage.IPRIMITIVE_OPERATION__MY_STATE:
+				setMyState((String)newValue);
+				return;
+			case UMLRpyPackage.IPRIMITIVE_OPERATION__NAME:
+				setName((String)newValue);
+				return;
+			case UMLRpyPackage.IPRIMITIVE_OPERATION__EANNOTATIONS:
+				getEAnnotations().clear();
+				getEAnnotations().addAll((Collection<? extends EAnnotation>)newValue);
+				return;
+			case UMLRpyPackage.IPRIMITIVE_OPERATION__DISPLAY_NAME:
+				setDisplayName((String)newValue);
+				return;
+			case UMLRpyPackage.IPRIMITIVE_OPERATION__PROPERTIES:
+				setProperties((IPropertyContainer)newValue);
+				return;
+			case UMLRpyPackage.IPRIMITIVE_OPERATION__LAST_ID:
+				setLastID((String)newValue);
+				return;
+			case UMLRpyPackage.IPRIMITIVE_OPERATION__ARGS:
+				getArgs().clear();
+				getArgs().addAll((Collection<? extends IVariable>)newValue);
+				return;
+			case UMLRpyPackage.IPRIMITIVE_OPERATION__RETURN_TYPE:
+				setReturnType((IClassifier)newValue);
+				return;
+			case UMLRpyPackage.IPRIMITIVE_OPERATION__ABSTRACT:
+				setAbstract((String)newValue);
+				return;
+			case UMLRpyPackage.IPRIMITIVE_OPERATION__FINAL:
+				setFinal((String)newValue);
+				return;
+			case UMLRpyPackage.IPRIMITIVE_OPERATION__CONCURRENCY:
+				setConcurrency((String)newValue);
+				return;
+			case UMLRpyPackage.IPRIMITIVE_OPERATION__PROTECTION:
+				setProtection((String)newValue);
+				return;
+			case UMLRpyPackage.IPRIMITIVE_OPERATION__STATIC:
+				setStatic((String)newValue);
+				return;
+			case UMLRpyPackage.IPRIMITIVE_OPERATION__CONSTANT:
+				setConstant((String)newValue);
+				return;
+			case UMLRpyPackage.IPRIMITIVE_OPERATION__ITS_BODY:
+				setItsBody((IBody)newValue);
+				return;
+			case UMLRpyPackage.IPRIMITIVE_OPERATION__TAGS:
+				getTags().clear();
+				getTags().addAll((Collection<? extends ITag>)newValue);
+				return;
+			case UMLRpyPackage.IPRIMITIVE_OPERATION__ANNOTATIONS:
+				setAnnotations((IComment)newValue);
+				return;
+			case UMLRpyPackage.IPRIMITIVE_OPERATION__DEPENDENCIES:
+				getDependencies().clear();
+				getDependencies().addAll((Collection<? extends IDependency>)newValue);
+				return;
+			case UMLRpyPackage.IPRIMITIVE_OPERATION__STEREOTYPES:
+				setStereotypes((IClassifier)newValue);
+				return;
+			case UMLRpyPackage.IPRIMITIVE_OPERATION__MY_RETURN_TYPE:
+				setMyReturnType((IType)newValue);
+				return;
+			case UMLRpyPackage.IPRIMITIVE_OPERATION__DESCRIPTION:
+				setDescription((IDescription)newValue);
+				return;
+			case UMLRpyPackage.IPRIMITIVE_OPERATION__REQUIREMEN_TRACABILITY_HANDLE:
+				setRequiremenTracabilityHandle((String)newValue);
+				return;
+			case UMLRpyPackage.IPRIMITIVE_OPERATION__DECLARATIVES:
+				getDeclaratives().clear();
+				getDeclaratives().addAll((Collection<? extends IMSC>)newValue);
+				return;
+			case UMLRpyPackage.IPRIMITIVE_OPERATION__ITS_ACTIVITY_GRAPH:
+				setItsActivityGraph((IActivityGraph)newValue);
+				return;
+			case UMLRpyPackage.IPRIMITIVE_OPERATION__EMBEDED_FILES:
+				setEmbededFiles((EmbededFilesType)newValue);
+				return;
+			case UMLRpyPackage.IPRIMITIVE_OPERATION__CODE_UPDATE_CG_TIME:
+				getCodeUpdateCGTime().clear();
+				getCodeUpdateCGTime().addAll((Collection<? extends String>)newValue);
+				return;
+			case UMLRpyPackage.IPRIMITIVE_OPERATION__TEMPLATE_PARAMETERS:
+				setTemplateParameters((ITemplateParameter)newValue);
+				return;
+		}
+		super.eSet(featureID, newValue);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void eUnset(int featureID) {
+		switch (featureID) {
+			case UMLRpyPackage.IPRIMITIVE_OPERATION__UML_DEPENDENCY_ID:
+				setUmlDependencyID(UML_DEPENDENCY_ID_EDEFAULT);
+				return;
+			case UMLRpyPackage.IPRIMITIVE_OPERATION__OBJECT_CREATION:
+				setObjectCreation(OBJECT_CREATION_EDEFAULT);
+				return;
+			case UMLRpyPackage.IPRIMITIVE_OPERATION__MODIFIED_TIME_WEAK:
+				getModifiedTimeWeak().clear();
+				return;
+			case UMLRpyPackage.IPRIMITIVE_OPERATION__ID:
+				setId(ID_EDEFAULT);
+				return;
+			case UMLRpyPackage.IPRIMITIVE_OPERATION__MY_STATE:
+				setMyState(MY_STATE_EDEFAULT);
+				return;
+			case UMLRpyPackage.IPRIMITIVE_OPERATION__NAME:
+				setName(NAME_EDEFAULT);
+				return;
+			case UMLRpyPackage.IPRIMITIVE_OPERATION__EANNOTATIONS:
+				getEAnnotations().clear();
+				return;
+			case UMLRpyPackage.IPRIMITIVE_OPERATION__DISPLAY_NAME:
+				setDisplayName(DISPLAY_NAME_EDEFAULT);
+				return;
+			case UMLRpyPackage.IPRIMITIVE_OPERATION__PROPERTIES:
+				setProperties((IPropertyContainer)null);
+				return;
+			case UMLRpyPackage.IPRIMITIVE_OPERATION__LAST_ID:
+				setLastID(LAST_ID_EDEFAULT);
+				return;
+			case UMLRpyPackage.IPRIMITIVE_OPERATION__ARGS:
+				getArgs().clear();
+				return;
+			case UMLRpyPackage.IPRIMITIVE_OPERATION__RETURN_TYPE:
+				setReturnType((IClassifier)null);
+				return;
+			case UMLRpyPackage.IPRIMITIVE_OPERATION__ABSTRACT:
+				setAbstract(ABSTRACT_EDEFAULT);
+				return;
+			case UMLRpyPackage.IPRIMITIVE_OPERATION__FINAL:
+				setFinal(FINAL_EDEFAULT);
+				return;
+			case UMLRpyPackage.IPRIMITIVE_OPERATION__CONCURRENCY:
+				setConcurrency(CONCURRENCY_EDEFAULT);
+				return;
+			case UMLRpyPackage.IPRIMITIVE_OPERATION__PROTECTION:
+				setProtection(PROTECTION_EDEFAULT);
+				return;
+			case UMLRpyPackage.IPRIMITIVE_OPERATION__STATIC:
+				setStatic(STATIC_EDEFAULT);
+				return;
+			case UMLRpyPackage.IPRIMITIVE_OPERATION__CONSTANT:
+				setConstant(CONSTANT_EDEFAULT);
+				return;
+			case UMLRpyPackage.IPRIMITIVE_OPERATION__ITS_BODY:
+				setItsBody((IBody)null);
+				return;
+			case UMLRpyPackage.IPRIMITIVE_OPERATION__TAGS:
+				getTags().clear();
+				return;
+			case UMLRpyPackage.IPRIMITIVE_OPERATION__ANNOTATIONS:
+				setAnnotations((IComment)null);
+				return;
+			case UMLRpyPackage.IPRIMITIVE_OPERATION__DEPENDENCIES:
+				getDependencies().clear();
+				return;
+			case UMLRpyPackage.IPRIMITIVE_OPERATION__STEREOTYPES:
+				setStereotypes((IClassifier)null);
+				return;
+			case UMLRpyPackage.IPRIMITIVE_OPERATION__MY_RETURN_TYPE:
+				setMyReturnType((IType)null);
+				return;
+			case UMLRpyPackage.IPRIMITIVE_OPERATION__DESCRIPTION:
+				setDescription((IDescription)null);
+				return;
+			case UMLRpyPackage.IPRIMITIVE_OPERATION__REQUIREMEN_TRACABILITY_HANDLE:
+				setRequiremenTracabilityHandle(REQUIREMEN_TRACABILITY_HANDLE_EDEFAULT);
+				return;
+			case UMLRpyPackage.IPRIMITIVE_OPERATION__DECLARATIVES:
+				getDeclaratives().clear();
+				return;
+			case UMLRpyPackage.IPRIMITIVE_OPERATION__ITS_ACTIVITY_GRAPH:
+				setItsActivityGraph((IActivityGraph)null);
+				return;
+			case UMLRpyPackage.IPRIMITIVE_OPERATION__EMBEDED_FILES:
+				setEmbededFiles((EmbededFilesType)null);
+				return;
+			case UMLRpyPackage.IPRIMITIVE_OPERATION__CODE_UPDATE_CG_TIME:
+				getCodeUpdateCGTime().clear();
+				return;
+			case UMLRpyPackage.IPRIMITIVE_OPERATION__TEMPLATE_PARAMETERS:
+				setTemplateParameters((ITemplateParameter)null);
+				return;
+		}
+		super.eUnset(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public boolean eIsSet(int featureID) {
+		switch (featureID) {
+			case UMLRpyPackage.IPRIMITIVE_OPERATION__UML_DEPENDENCY_ID:
+				return UML_DEPENDENCY_ID_EDEFAULT == null ? umlDependencyID != null : !UML_DEPENDENCY_ID_EDEFAULT.equals(umlDependencyID);
+			case UMLRpyPackage.IPRIMITIVE_OPERATION__OBJECT_CREATION:
+				return OBJECT_CREATION_EDEFAULT == null ? objectCreation != null : !OBJECT_CREATION_EDEFAULT.equals(objectCreation);
+			case UMLRpyPackage.IPRIMITIVE_OPERATION__MODIFIED_TIME_WEAK:
+				return modifiedTimeWeak != null && !modifiedTimeWeak.isEmpty();
+			case UMLRpyPackage.IPRIMITIVE_OPERATION__ID:
+				return ID_EDEFAULT == null ? id != null : !ID_EDEFAULT.equals(id);
+			case UMLRpyPackage.IPRIMITIVE_OPERATION__MY_STATE:
+				return MY_STATE_EDEFAULT == null ? myState != null : !MY_STATE_EDEFAULT.equals(myState);
+			case UMLRpyPackage.IPRIMITIVE_OPERATION__NAME:
+				return NAME_EDEFAULT == null ? name != null : !NAME_EDEFAULT.equals(name);
+			case UMLRpyPackage.IPRIMITIVE_OPERATION__EANNOTATIONS:
+				return eAnnotations != null && !eAnnotations.isEmpty();
+			case UMLRpyPackage.IPRIMITIVE_OPERATION__DISPLAY_NAME:
+				return DISPLAY_NAME_EDEFAULT == null ? displayName != null : !DISPLAY_NAME_EDEFAULT.equals(displayName);
+			case UMLRpyPackage.IPRIMITIVE_OPERATION__PROPERTIES:
+				return properties != null;
+			case UMLRpyPackage.IPRIMITIVE_OPERATION__LAST_ID:
+				return LAST_ID_EDEFAULT == null ? lastID != null : !LAST_ID_EDEFAULT.equals(lastID);
+			case UMLRpyPackage.IPRIMITIVE_OPERATION__ARGS:
+				return args != null && !args.isEmpty();
+			case UMLRpyPackage.IPRIMITIVE_OPERATION__RETURN_TYPE:
+				return returnType != null;
+			case UMLRpyPackage.IPRIMITIVE_OPERATION__ABSTRACT:
+				return ABSTRACT_EDEFAULT == null ? abstract_ != null : !ABSTRACT_EDEFAULT.equals(abstract_);
+			case UMLRpyPackage.IPRIMITIVE_OPERATION__FINAL:
+				return FINAL_EDEFAULT == null ? final_ != null : !FINAL_EDEFAULT.equals(final_);
+			case UMLRpyPackage.IPRIMITIVE_OPERATION__CONCURRENCY:
+				return CONCURRENCY_EDEFAULT == null ? concurrency != null : !CONCURRENCY_EDEFAULT.equals(concurrency);
+			case UMLRpyPackage.IPRIMITIVE_OPERATION__PROTECTION:
+				return PROTECTION_EDEFAULT == null ? protection != null : !PROTECTION_EDEFAULT.equals(protection);
+			case UMLRpyPackage.IPRIMITIVE_OPERATION__STATIC:
+				return STATIC_EDEFAULT == null ? static_ != null : !STATIC_EDEFAULT.equals(static_);
+			case UMLRpyPackage.IPRIMITIVE_OPERATION__CONSTANT:
+				return CONSTANT_EDEFAULT == null ? constant != null : !CONSTANT_EDEFAULT.equals(constant);
+			case UMLRpyPackage.IPRIMITIVE_OPERATION__ITS_BODY:
+				return itsBody != null;
+			case UMLRpyPackage.IPRIMITIVE_OPERATION__TAGS:
+				return tags != null && !tags.isEmpty();
+			case UMLRpyPackage.IPRIMITIVE_OPERATION__ANNOTATIONS:
+				return annotations != null;
+			case UMLRpyPackage.IPRIMITIVE_OPERATION__DEPENDENCIES:
+				return dependencies != null && !dependencies.isEmpty();
+			case UMLRpyPackage.IPRIMITIVE_OPERATION__STEREOTYPES:
+				return stereotypes != null;
+			case UMLRpyPackage.IPRIMITIVE_OPERATION__MY_RETURN_TYPE:
+				return myReturnType != null;
+			case UMLRpyPackage.IPRIMITIVE_OPERATION__DESCRIPTION:
+				return description != null;
+			case UMLRpyPackage.IPRIMITIVE_OPERATION__REQUIREMEN_TRACABILITY_HANDLE:
+				return REQUIREMEN_TRACABILITY_HANDLE_EDEFAULT == null ? requiremenTracabilityHandle != null : !REQUIREMEN_TRACABILITY_HANDLE_EDEFAULT.equals(requiremenTracabilityHandle);
+			case UMLRpyPackage.IPRIMITIVE_OPERATION__DECLARATIVES:
+				return declaratives != null && !declaratives.isEmpty();
+			case UMLRpyPackage.IPRIMITIVE_OPERATION__ITS_ACTIVITY_GRAPH:
+				return itsActivityGraph != null;
+			case UMLRpyPackage.IPRIMITIVE_OPERATION__EMBEDED_FILES:
+				return embededFiles != null;
+			case UMLRpyPackage.IPRIMITIVE_OPERATION__CODE_UPDATE_CG_TIME:
+				return codeUpdateCGTime != null && !codeUpdateCGTime.isEmpty();
+			case UMLRpyPackage.IPRIMITIVE_OPERATION__TEMPLATE_PARAMETERS:
+				return templateParameters != null;
+		}
+		return super.eIsSet(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public int eBaseStructuralFeatureID(int derivedFeatureID, Class<?> baseClass) {
+		if (baseClass == ElementsType.class) {
+			switch (derivedFeatureID) {
+				default: return -1;
+			}
+		}
+		if (baseClass == DependsOnType.class) {
+			switch (derivedFeatureID) {
+				default: return -1;
+			}
+		}
+		if (baseClass == M_subjectType.class) {
+			switch (derivedFeatureID) {
+				case UMLRpyPackage.IPRIMITIVE_OPERATION__UML_DEPENDENCY_ID: return UMLRpyPackage.MSUBJECT_TYPE__UML_DEPENDENCY_ID;
+				case UMLRpyPackage.IPRIMITIVE_OPERATION__OBJECT_CREATION: return UMLRpyPackage.MSUBJECT_TYPE__OBJECT_CREATION;
+				default: return -1;
+			}
+		}
+		if (baseClass == ValueType.class) {
+			switch (derivedFeatureID) {
+				case UMLRpyPackage.IPRIMITIVE_OPERATION__MODIFIED_TIME_WEAK: return UMLRpyPackage.VALUE_TYPE__MODIFIED_TIME_WEAK;
+				case UMLRpyPackage.IPRIMITIVE_OPERATION__ID: return UMLRpyPackage.VALUE_TYPE__ID;
+				case UMLRpyPackage.IPRIMITIVE_OPERATION__MY_STATE: return UMLRpyPackage.VALUE_TYPE__MY_STATE;
+				case UMLRpyPackage.IPRIMITIVE_OPERATION__NAME: return UMLRpyPackage.VALUE_TYPE__NAME;
+				default: return -1;
+			}
+		}
+		if (baseClass == M_pFormalMessageType.class) {
+			switch (derivedFeatureID) {
+				default: return -1;
+			}
+		}
+		if (baseClass == ItemsType.class) {
+			switch (derivedFeatureID) {
+				default: return -1;
+			}
+		}
+		if (baseClass == TargetType.class) {
+			switch (derivedFeatureID) {
+				default: return -1;
+			}
+		}
+		if (baseClass == M_pModelObjectType.class) {
+			switch (derivedFeatureID) {
+				default: return -1;
+			}
+		}
+		if (baseClass == EModelElement.class) {
+			switch (derivedFeatureID) {
+				case UMLRpyPackage.IPRIMITIVE_OPERATION__EANNOTATIONS: return EcorePackage.EMODEL_ELEMENT__EANNOTATIONS;
+				default: return -1;
+			}
+		}
+		if (baseClass == IModelElement.class) {
+			switch (derivedFeatureID) {
+				case UMLRpyPackage.IPRIMITIVE_OPERATION__DISPLAY_NAME: return UMLRpyPackage.IMODEL_ELEMENT__DISPLAY_NAME;
+				default: return -1;
+			}
+		}
+		return super.eBaseStructuralFeatureID(derivedFeatureID, baseClass);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public int eDerivedStructuralFeatureID(int baseFeatureID, Class<?> baseClass) {
+		if (baseClass == ElementsType.class) {
+			switch (baseFeatureID) {
+				default: return -1;
+			}
+		}
+		if (baseClass == DependsOnType.class) {
+			switch (baseFeatureID) {
+				default: return -1;
+			}
+		}
+		if (baseClass == M_subjectType.class) {
+			switch (baseFeatureID) {
+				case UMLRpyPackage.MSUBJECT_TYPE__UML_DEPENDENCY_ID: return UMLRpyPackage.IPRIMITIVE_OPERATION__UML_DEPENDENCY_ID;
+				case UMLRpyPackage.MSUBJECT_TYPE__OBJECT_CREATION: return UMLRpyPackage.IPRIMITIVE_OPERATION__OBJECT_CREATION;
+				default: return -1;
+			}
+		}
+		if (baseClass == ValueType.class) {
+			switch (baseFeatureID) {
+				case UMLRpyPackage.VALUE_TYPE__MODIFIED_TIME_WEAK: return UMLRpyPackage.IPRIMITIVE_OPERATION__MODIFIED_TIME_WEAK;
+				case UMLRpyPackage.VALUE_TYPE__ID: return UMLRpyPackage.IPRIMITIVE_OPERATION__ID;
+				case UMLRpyPackage.VALUE_TYPE__MY_STATE: return UMLRpyPackage.IPRIMITIVE_OPERATION__MY_STATE;
+				case UMLRpyPackage.VALUE_TYPE__NAME: return UMLRpyPackage.IPRIMITIVE_OPERATION__NAME;
+				default: return -1;
+			}
+		}
+		if (baseClass == M_pFormalMessageType.class) {
+			switch (baseFeatureID) {
+				default: return -1;
+			}
+		}
+		if (baseClass == ItemsType.class) {
+			switch (baseFeatureID) {
+				default: return -1;
+			}
+		}
+		if (baseClass == TargetType.class) {
+			switch (baseFeatureID) {
+				default: return -1;
+			}
+		}
+		if (baseClass == M_pModelObjectType.class) {
+			switch (baseFeatureID) {
+				default: return -1;
+			}
+		}
+		if (baseClass == EModelElement.class) {
+			switch (baseFeatureID) {
+				case EcorePackage.EMODEL_ELEMENT__EANNOTATIONS: return UMLRpyPackage.IPRIMITIVE_OPERATION__EANNOTATIONS;
+				default: return -1;
+			}
+		}
+		if (baseClass == IModelElement.class) {
+			switch (baseFeatureID) {
+				case UMLRpyPackage.IMODEL_ELEMENT__DISPLAY_NAME: return UMLRpyPackage.IPRIMITIVE_OPERATION__DISPLAY_NAME;
+				default: return -1;
+			}
+		}
+		return super.eDerivedStructuralFeatureID(baseFeatureID, baseClass);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public int eDerivedOperationID(int baseOperationID, Class<?> baseClass) {
+		if (baseClass == ElementsType.class) {
+			switch (baseOperationID) {
+				default: return -1;
+			}
+		}
+		if (baseClass == DependsOnType.class) {
+			switch (baseOperationID) {
+				default: return -1;
+			}
+		}
+		if (baseClass == M_subjectType.class) {
+			switch (baseOperationID) {
+				default: return -1;
+			}
+		}
+		if (baseClass == ValueType.class) {
+			switch (baseOperationID) {
+				default: return -1;
+			}
+		}
+		if (baseClass == M_pFormalMessageType.class) {
+			switch (baseOperationID) {
+				default: return -1;
+			}
+		}
+		if (baseClass == ItemsType.class) {
+			switch (baseOperationID) {
+				default: return -1;
+			}
+		}
+		if (baseClass == TargetType.class) {
+			switch (baseOperationID) {
+				default: return -1;
+			}
+		}
+		if (baseClass == M_pModelObjectType.class) {
+			switch (baseOperationID) {
+				default: return -1;
+			}
+		}
+		if (baseClass == EModelElement.class) {
+			switch (baseOperationID) {
+				case EcorePackage.EMODEL_ELEMENT___GET_EANNOTATION__STRING: return UMLRpyPackage.IPRIMITIVE_OPERATION___GET_EANNOTATION__STRING;
+				default: return -1;
+			}
+		}
+		if (baseClass == IModelElement.class) {
+			switch (baseOperationID) {
+				default: return -1;
+			}
+		}
+		return super.eDerivedOperationID(baseOperationID, baseClass);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object eInvoke(int operationID, EList<?> arguments) throws InvocationTargetException {
+		switch (operationID) {
+			case UMLRpyPackage.IPRIMITIVE_OPERATION___GET_EANNOTATION__STRING:
+				return getEAnnotation((String)arguments.get(0));
+		}
+		return super.eInvoke(operationID, arguments);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String toString() {
+		if (eIsProxy()) return super.toString();
+
+		StringBuffer result = new StringBuffer(super.toString());
+		result.append(" (umlDependencyID: "); //$NON-NLS-1$
+		result.append(umlDependencyID);
+		result.append(", objectCreation: "); //$NON-NLS-1$
+		result.append(objectCreation);
+		result.append(", modifiedTimeWeak: "); //$NON-NLS-1$
+		result.append(modifiedTimeWeak);
+		result.append(", id: "); //$NON-NLS-1$
+		result.append(id);
+		result.append(", myState: "); //$NON-NLS-1$
+		result.append(myState);
+		result.append(", name: "); //$NON-NLS-1$
+		result.append(name);
+		result.append(", displayName: "); //$NON-NLS-1$
+		result.append(displayName);
+		result.append(", lastID: "); //$NON-NLS-1$
+		result.append(lastID);
+		result.append(", abstract: "); //$NON-NLS-1$
+		result.append(abstract_);
+		result.append(", final: "); //$NON-NLS-1$
+		result.append(final_);
+		result.append(", concurrency: "); //$NON-NLS-1$
+		result.append(concurrency);
+		result.append(", protection: "); //$NON-NLS-1$
+		result.append(protection);
+		result.append(", static: "); //$NON-NLS-1$
+		result.append(static_);
+		result.append(", constant: "); //$NON-NLS-1$
+		result.append(constant);
+		result.append(", requiremenTracabilityHandle: "); //$NON-NLS-1$
+		result.append(requiremenTracabilityHandle);
+		result.append(", codeUpdateCGTime: "); //$NON-NLS-1$
+		result.append(codeUpdateCGTime);
+		result.append(')');
+		return result.toString();
+	}
+
+} //IPrimitiveOperationImpl
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/IProfileImpl.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/IProfileImpl.java
new file mode 100755
index 0000000..7169b8b
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/IProfileImpl.java
@@ -0,0 +1,724 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl;
+
+import java.util.Collection;
+
+import org.eclipse.emf.common.notify.Notification;
+import org.eclipse.emf.common.notify.NotificationChain;
+
+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.EDataTypeEList;
+import org.eclipse.emf.ecore.util.EObjectContainmentEList;
+import org.eclipse.emf.ecore.util.InternalEList;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.DeclarativesType;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.DefaultSubsystemType;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.DependsOnType;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ElementsType;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IClass;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMatrixLayout;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IProfile;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITag;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IType;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.OwnerHandleType;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>IProfile</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * </p>
+ * <ul>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IProfileImpl#getWeakCGTime <em>Weak CG Time</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IProfileImpl#getStrongCGTime <em>Strong CG Time</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IProfileImpl#getDeclaratives <em>Declaratives</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IProfileImpl#getDefaultComposite <em>Default Composite</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IProfileImpl#getEventsBaseID <em>Events Base ID</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IProfileImpl#getClasses <em>Classes</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IProfileImpl#getConfigurationRelatedTime <em>Configuration Related Time</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IProfileImpl#getTags <em>Tags</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IProfileImpl#getTypes <em>Types</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IProfileImpl#getMatrixLayouts <em>Matrix Layouts</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IProfileImpl#getLicense <em>License</em>}</li>
+ * </ul>
+ *
+ * @generated
+ */
+public class IProfileImpl extends IPackageImpl implements IProfile {
+	/**
+	 * The cached value of the '{@link #getWeakCGTime() <em>Weak CG Time</em>}' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getWeakCGTime()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<String> weakCGTime;
+
+	/**
+	 * The cached value of the '{@link #getStrongCGTime() <em>Strong CG Time</em>}' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getStrongCGTime()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<String> strongCGTime;
+
+	/**
+	 * The cached value of the '{@link #getDeclaratives() <em>Declaratives</em>}' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getDeclaratives()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<DeclarativesType> declaratives;
+
+	/**
+	 * The cached value of the '{@link #getDefaultComposite() <em>Default Composite</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getDefaultComposite()
+	 * @generated
+	 * @ordered
+	 */
+	protected IClass defaultComposite;
+
+	/**
+	 * The default value of the '{@link #getEventsBaseID() <em>Events Base ID</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getEventsBaseID()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String EVENTS_BASE_ID_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getEventsBaseID() <em>Events Base ID</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getEventsBaseID()
+	 * @generated
+	 * @ordered
+	 */
+	protected String eventsBaseID = EVENTS_BASE_ID_EDEFAULT;
+
+	/**
+	 * The cached value of the '{@link #getClasses() <em>Classes</em>}' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getClasses()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<IClass> classes;
+
+	/**
+	 * The cached value of the '{@link #getConfigurationRelatedTime() <em>Configuration Related Time</em>}' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getConfigurationRelatedTime()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<String> configurationRelatedTime;
+
+	/**
+	 * The cached value of the '{@link #getTags() <em>Tags</em>}' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getTags()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<ITag> tags;
+
+	/**
+	 * The cached value of the '{@link #getTypes() <em>Types</em>}' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getTypes()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<IType> types;
+
+	/**
+	 * The cached value of the '{@link #getMatrixLayouts() <em>Matrix Layouts</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getMatrixLayouts()
+	 * @generated
+	 * @ordered
+	 */
+	protected IMatrixLayout matrixLayouts;
+
+	/**
+	 * The default value of the '{@link #getLicense() <em>License</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getLicense()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String LICENSE_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getLicense() <em>License</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getLicense()
+	 * @generated
+	 * @ordered
+	 */
+	protected String license = LICENSE_EDEFAULT;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected IProfileImpl() {
+		super();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EClass eStaticClass() {
+		return UMLRpyPackage.eINSTANCE.getIProfile();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<String> getWeakCGTime() {
+		if (weakCGTime == null) {
+			weakCGTime = new EDataTypeEList<String>(String.class, this, UMLRpyPackage.IPROFILE__WEAK_CG_TIME);
+		}
+		return weakCGTime;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<String> getStrongCGTime() {
+		if (strongCGTime == null) {
+			strongCGTime = new EDataTypeEList<String>(String.class, this, UMLRpyPackage.IPROFILE__STRONG_CG_TIME);
+		}
+		return strongCGTime;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<DeclarativesType> getDeclaratives() {
+		if (declaratives == null) {
+			declaratives = new EObjectContainmentEList.Resolving<DeclarativesType>(DeclarativesType.class, this, UMLRpyPackage.IPROFILE__DECLARATIVES);
+		}
+		return declaratives;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IClass getDefaultComposite() {
+		if (defaultComposite != null && defaultComposite.eIsProxy()) {
+			InternalEObject oldDefaultComposite = (InternalEObject)defaultComposite;
+			defaultComposite = (IClass)eResolveProxy(oldDefaultComposite);
+			if (defaultComposite != oldDefaultComposite) {
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.IPROFILE__DEFAULT_COMPOSITE, oldDefaultComposite, defaultComposite));
+			}
+		}
+		return defaultComposite;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IClass basicGetDefaultComposite() {
+		return defaultComposite;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setDefaultComposite(IClass newDefaultComposite) {
+		IClass oldDefaultComposite = defaultComposite;
+		defaultComposite = newDefaultComposite;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IPROFILE__DEFAULT_COMPOSITE, oldDefaultComposite, defaultComposite));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getEventsBaseID() {
+		return eventsBaseID;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setEventsBaseID(String newEventsBaseID) {
+		String oldEventsBaseID = eventsBaseID;
+		eventsBaseID = newEventsBaseID;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IPROFILE__EVENTS_BASE_ID, oldEventsBaseID, eventsBaseID));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<IClass> getClasses() {
+		if (classes == null) {
+			classes = new EObjectContainmentEList.Resolving<IClass>(IClass.class, this, UMLRpyPackage.IPROFILE__CLASSES);
+		}
+		return classes;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<String> getConfigurationRelatedTime() {
+		if (configurationRelatedTime == null) {
+			configurationRelatedTime = new EDataTypeEList<String>(String.class, this, UMLRpyPackage.IPROFILE__CONFIGURATION_RELATED_TIME);
+		}
+		return configurationRelatedTime;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<ITag> getTags() {
+		if (tags == null) {
+			tags = new EObjectContainmentEList.Resolving<ITag>(ITag.class, this, UMLRpyPackage.IPROFILE__TAGS);
+		}
+		return tags;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<IType> getTypes() {
+		if (types == null) {
+			types = new EObjectContainmentEList.Resolving<IType>(IType.class, this, UMLRpyPackage.IPROFILE__TYPES);
+		}
+		return types;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IMatrixLayout getMatrixLayouts() {
+		if (matrixLayouts != null && matrixLayouts.eIsProxy()) {
+			InternalEObject oldMatrixLayouts = (InternalEObject)matrixLayouts;
+			matrixLayouts = (IMatrixLayout)eResolveProxy(oldMatrixLayouts);
+			if (matrixLayouts != oldMatrixLayouts) {
+				InternalEObject newMatrixLayouts = (InternalEObject)matrixLayouts;
+				NotificationChain msgs = oldMatrixLayouts.eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IPROFILE__MATRIX_LAYOUTS, null, null);
+				if (newMatrixLayouts.eInternalContainer() == null) {
+					msgs = newMatrixLayouts.eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IPROFILE__MATRIX_LAYOUTS, null, msgs);
+				}
+				if (msgs != null) msgs.dispatch();
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.IPROFILE__MATRIX_LAYOUTS, oldMatrixLayouts, matrixLayouts));
+			}
+		}
+		return matrixLayouts;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IMatrixLayout basicGetMatrixLayouts() {
+		return matrixLayouts;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public NotificationChain basicSetMatrixLayouts(IMatrixLayout newMatrixLayouts, NotificationChain msgs) {
+		IMatrixLayout oldMatrixLayouts = matrixLayouts;
+		matrixLayouts = newMatrixLayouts;
+		if (eNotificationRequired()) {
+			ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IPROFILE__MATRIX_LAYOUTS, oldMatrixLayouts, newMatrixLayouts);
+			if (msgs == null) msgs = notification; else msgs.add(notification);
+		}
+		return msgs;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setMatrixLayouts(IMatrixLayout newMatrixLayouts) {
+		if (newMatrixLayouts != matrixLayouts) {
+			NotificationChain msgs = null;
+			if (matrixLayouts != null)
+				msgs = ((InternalEObject)matrixLayouts).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IPROFILE__MATRIX_LAYOUTS, null, msgs);
+			if (newMatrixLayouts != null)
+				msgs = ((InternalEObject)newMatrixLayouts).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IPROFILE__MATRIX_LAYOUTS, null, msgs);
+			msgs = basicSetMatrixLayouts(newMatrixLayouts, msgs);
+			if (msgs != null) msgs.dispatch();
+		}
+		else if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IPROFILE__MATRIX_LAYOUTS, newMatrixLayouts, newMatrixLayouts));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getLicense() {
+		return license;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setLicense(String newLicense) {
+		String oldLicense = license;
+		license = newLicense;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IPROFILE__LICENSE, oldLicense, license));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
+		switch (featureID) {
+			case UMLRpyPackage.IPROFILE__DECLARATIVES:
+				return ((InternalEList<?>)getDeclaratives()).basicRemove(otherEnd, msgs);
+			case UMLRpyPackage.IPROFILE__CLASSES:
+				return ((InternalEList<?>)getClasses()).basicRemove(otherEnd, msgs);
+			case UMLRpyPackage.IPROFILE__TAGS:
+				return ((InternalEList<?>)getTags()).basicRemove(otherEnd, msgs);
+			case UMLRpyPackage.IPROFILE__TYPES:
+				return ((InternalEList<?>)getTypes()).basicRemove(otherEnd, msgs);
+			case UMLRpyPackage.IPROFILE__MATRIX_LAYOUTS:
+				return basicSetMatrixLayouts(null, msgs);
+		}
+		return super.eInverseRemove(otherEnd, featureID, msgs);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object eGet(int featureID, boolean resolve, boolean coreType) {
+		switch (featureID) {
+			case UMLRpyPackage.IPROFILE__WEAK_CG_TIME:
+				return getWeakCGTime();
+			case UMLRpyPackage.IPROFILE__STRONG_CG_TIME:
+				return getStrongCGTime();
+			case UMLRpyPackage.IPROFILE__DECLARATIVES:
+				return getDeclaratives();
+			case UMLRpyPackage.IPROFILE__DEFAULT_COMPOSITE:
+				if (resolve) return getDefaultComposite();
+				return basicGetDefaultComposite();
+			case UMLRpyPackage.IPROFILE__EVENTS_BASE_ID:
+				return getEventsBaseID();
+			case UMLRpyPackage.IPROFILE__CLASSES:
+				return getClasses();
+			case UMLRpyPackage.IPROFILE__CONFIGURATION_RELATED_TIME:
+				return getConfigurationRelatedTime();
+			case UMLRpyPackage.IPROFILE__TAGS:
+				return getTags();
+			case UMLRpyPackage.IPROFILE__TYPES:
+				return getTypes();
+			case UMLRpyPackage.IPROFILE__MATRIX_LAYOUTS:
+				if (resolve) return getMatrixLayouts();
+				return basicGetMatrixLayouts();
+			case UMLRpyPackage.IPROFILE__LICENSE:
+				return getLicense();
+		}
+		return super.eGet(featureID, resolve, coreType);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@SuppressWarnings("unchecked")
+	@Override
+	public void eSet(int featureID, Object newValue) {
+		switch (featureID) {
+			case UMLRpyPackage.IPROFILE__WEAK_CG_TIME:
+				getWeakCGTime().clear();
+				getWeakCGTime().addAll((Collection<? extends String>)newValue);
+				return;
+			case UMLRpyPackage.IPROFILE__STRONG_CG_TIME:
+				getStrongCGTime().clear();
+				getStrongCGTime().addAll((Collection<? extends String>)newValue);
+				return;
+			case UMLRpyPackage.IPROFILE__DECLARATIVES:
+				getDeclaratives().clear();
+				getDeclaratives().addAll((Collection<? extends DeclarativesType>)newValue);
+				return;
+			case UMLRpyPackage.IPROFILE__DEFAULT_COMPOSITE:
+				setDefaultComposite((IClass)newValue);
+				return;
+			case UMLRpyPackage.IPROFILE__EVENTS_BASE_ID:
+				setEventsBaseID((String)newValue);
+				return;
+			case UMLRpyPackage.IPROFILE__CLASSES:
+				getClasses().clear();
+				getClasses().addAll((Collection<? extends IClass>)newValue);
+				return;
+			case UMLRpyPackage.IPROFILE__CONFIGURATION_RELATED_TIME:
+				getConfigurationRelatedTime().clear();
+				getConfigurationRelatedTime().addAll((Collection<? extends String>)newValue);
+				return;
+			case UMLRpyPackage.IPROFILE__TAGS:
+				getTags().clear();
+				getTags().addAll((Collection<? extends ITag>)newValue);
+				return;
+			case UMLRpyPackage.IPROFILE__TYPES:
+				getTypes().clear();
+				getTypes().addAll((Collection<? extends IType>)newValue);
+				return;
+			case UMLRpyPackage.IPROFILE__MATRIX_LAYOUTS:
+				setMatrixLayouts((IMatrixLayout)newValue);
+				return;
+			case UMLRpyPackage.IPROFILE__LICENSE:
+				setLicense((String)newValue);
+				return;
+		}
+		super.eSet(featureID, newValue);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void eUnset(int featureID) {
+		switch (featureID) {
+			case UMLRpyPackage.IPROFILE__WEAK_CG_TIME:
+				getWeakCGTime().clear();
+				return;
+			case UMLRpyPackage.IPROFILE__STRONG_CG_TIME:
+				getStrongCGTime().clear();
+				return;
+			case UMLRpyPackage.IPROFILE__DECLARATIVES:
+				getDeclaratives().clear();
+				return;
+			case UMLRpyPackage.IPROFILE__DEFAULT_COMPOSITE:
+				setDefaultComposite((IClass)null);
+				return;
+			case UMLRpyPackage.IPROFILE__EVENTS_BASE_ID:
+				setEventsBaseID(EVENTS_BASE_ID_EDEFAULT);
+				return;
+			case UMLRpyPackage.IPROFILE__CLASSES:
+				getClasses().clear();
+				return;
+			case UMLRpyPackage.IPROFILE__CONFIGURATION_RELATED_TIME:
+				getConfigurationRelatedTime().clear();
+				return;
+			case UMLRpyPackage.IPROFILE__TAGS:
+				getTags().clear();
+				return;
+			case UMLRpyPackage.IPROFILE__TYPES:
+				getTypes().clear();
+				return;
+			case UMLRpyPackage.IPROFILE__MATRIX_LAYOUTS:
+				setMatrixLayouts((IMatrixLayout)null);
+				return;
+			case UMLRpyPackage.IPROFILE__LICENSE:
+				setLicense(LICENSE_EDEFAULT);
+				return;
+		}
+		super.eUnset(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public boolean eIsSet(int featureID) {
+		switch (featureID) {
+			case UMLRpyPackage.IPROFILE__WEAK_CG_TIME:
+				return weakCGTime != null && !weakCGTime.isEmpty();
+			case UMLRpyPackage.IPROFILE__STRONG_CG_TIME:
+				return strongCGTime != null && !strongCGTime.isEmpty();
+			case UMLRpyPackage.IPROFILE__DECLARATIVES:
+				return declaratives != null && !declaratives.isEmpty();
+			case UMLRpyPackage.IPROFILE__DEFAULT_COMPOSITE:
+				return defaultComposite != null;
+			case UMLRpyPackage.IPROFILE__EVENTS_BASE_ID:
+				return EVENTS_BASE_ID_EDEFAULT == null ? eventsBaseID != null : !EVENTS_BASE_ID_EDEFAULT.equals(eventsBaseID);
+			case UMLRpyPackage.IPROFILE__CLASSES:
+				return classes != null && !classes.isEmpty();
+			case UMLRpyPackage.IPROFILE__CONFIGURATION_RELATED_TIME:
+				return configurationRelatedTime != null && !configurationRelatedTime.isEmpty();
+			case UMLRpyPackage.IPROFILE__TAGS:
+				return tags != null && !tags.isEmpty();
+			case UMLRpyPackage.IPROFILE__TYPES:
+				return types != null && !types.isEmpty();
+			case UMLRpyPackage.IPROFILE__MATRIX_LAYOUTS:
+				return matrixLayouts != null;
+			case UMLRpyPackage.IPROFILE__LICENSE:
+				return LICENSE_EDEFAULT == null ? license != null : !LICENSE_EDEFAULT.equals(license);
+		}
+		return super.eIsSet(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public int eBaseStructuralFeatureID(int derivedFeatureID, Class<?> baseClass) {
+		if (baseClass == DefaultSubsystemType.class) {
+			switch (derivedFeatureID) {
+				default: return -1;
+			}
+		}
+		if (baseClass == OwnerHandleType.class) {
+			switch (derivedFeatureID) {
+				case UMLRpyPackage.IPROFILE__WEAK_CG_TIME: return UMLRpyPackage.OWNER_HANDLE_TYPE__WEAK_CG_TIME;
+				case UMLRpyPackage.IPROFILE__STRONG_CG_TIME: return UMLRpyPackage.OWNER_HANDLE_TYPE__STRONG_CG_TIME;
+				default: return -1;
+			}
+		}
+		if (baseClass == ElementsType.class) {
+			switch (derivedFeatureID) {
+				default: return -1;
+			}
+		}
+		if (baseClass == DependsOnType.class) {
+			switch (derivedFeatureID) {
+				default: return -1;
+			}
+		}
+		return super.eBaseStructuralFeatureID(derivedFeatureID, baseClass);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public int eDerivedStructuralFeatureID(int baseFeatureID, Class<?> baseClass) {
+		if (baseClass == DefaultSubsystemType.class) {
+			switch (baseFeatureID) {
+				default: return -1;
+			}
+		}
+		if (baseClass == OwnerHandleType.class) {
+			switch (baseFeatureID) {
+				case UMLRpyPackage.OWNER_HANDLE_TYPE__WEAK_CG_TIME: return UMLRpyPackage.IPROFILE__WEAK_CG_TIME;
+				case UMLRpyPackage.OWNER_HANDLE_TYPE__STRONG_CG_TIME: return UMLRpyPackage.IPROFILE__STRONG_CG_TIME;
+				default: return -1;
+			}
+		}
+		if (baseClass == ElementsType.class) {
+			switch (baseFeatureID) {
+				default: return -1;
+			}
+		}
+		if (baseClass == DependsOnType.class) {
+			switch (baseFeatureID) {
+				default: return -1;
+			}
+		}
+		return super.eDerivedStructuralFeatureID(baseFeatureID, baseClass);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String toString() {
+		if (eIsProxy()) return super.toString();
+
+		StringBuffer result = new StringBuffer(super.toString());
+		result.append(" (weakCGTime: "); //$NON-NLS-1$
+		result.append(weakCGTime);
+		result.append(", strongCGTime: "); //$NON-NLS-1$
+		result.append(strongCGTime);
+		result.append(", eventsBaseID: "); //$NON-NLS-1$
+		result.append(eventsBaseID);
+		result.append(", configurationRelatedTime: "); //$NON-NLS-1$
+		result.append(configurationRelatedTime);
+		result.append(", license: "); //$NON-NLS-1$
+		result.append(license);
+		result.append(')');
+		return result.toString();
+	}
+
+} //IProfileImpl
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/IProjectImpl.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/IProjectImpl.java
new file mode 100755
index 0000000..0669f06
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/IProjectImpl.java
@@ -0,0 +1,1155 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl;
+
+import java.util.Collection;
+
+import org.eclipse.emf.common.notify.Notification;
+import org.eclipse.emf.common.notify.NotificationChain;
+
+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.EDataTypeEList;
+import org.eclipse.emf.ecore.util.EObjectContainmentEList;
+import org.eclipse.emf.ecore.util.InternalEList;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.DeclarativesType;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.DefaultSubsystemType;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ICollaborationDiagram;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IComponent;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IComponentDiagram;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IDependency;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMHyperLink;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IModelElement;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMultiplicityItem;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IPanelDiagram;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IProject;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IStereotype;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IUCDiagram;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>IProject</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * </p>
+ * <ul>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IProjectImpl#getUserColors <em>User Colors</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IProjectImpl#getDefaultSubsystem <em>Default Subsystem</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IProjectImpl#getComponent <em>Component</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IProjectImpl#getMultiplicities <em>Multiplicities</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IProjectImpl#getSubsystems <em>Subsystems</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IProjectImpl#getDiagrams <em>Diagrams</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IProjectImpl#getComponents <em>Components</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IProjectImpl#getPanelDiagrams <em>Panel Diagrams</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IProjectImpl#getHyperLinks <em>Hyper Links</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IProjectImpl#getMSCS <em>MSCS</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IProjectImpl#getUCDiagrams <em>UC Diagrams</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IProjectImpl#getCollaborationDiagrams <em>Collaboration Diagrams</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IProjectImpl#getDeclaratives <em>Declaratives</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IProjectImpl#getComponentDiagrams <em>Component Diagrams</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IProjectImpl#getUnitSccProjName <em>Unit Scc Proj Name</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IProjectImpl#getUnitSccProjPath <em>Unit Scc Proj Path</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IProjectImpl#getDependencies <em>Dependencies</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IProjectImpl#getCodeUpdateCGTime <em>Code Update CG Time</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IProjectImpl#getVersion <em>Version</em>}</li>
+ * </ul>
+ *
+ * @generated
+ */
+public class IProjectImpl extends IPackageImpl implements IProject {
+	/**
+	 * The cached value of the '{@link #getUserColors() <em>User Colors</em>}' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getUserColors()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<String> userColors;
+
+	/**
+	 * The cached value of the '{@link #getDefaultSubsystem() <em>Default Subsystem</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getDefaultSubsystem()
+	 * @generated
+	 * @ordered
+	 */
+	protected DefaultSubsystemType defaultSubsystem;
+
+	/**
+	 * The cached value of the '{@link #getComponent() <em>Component</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getComponent()
+	 * @generated
+	 * @ordered
+	 */
+	protected IComponent component;
+
+	/**
+	 * The cached value of the '{@link #getMultiplicities() <em>Multiplicities</em>}' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getMultiplicities()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<IMultiplicityItem> multiplicities;
+
+	/**
+	 * The cached value of the '{@link #getSubsystems() <em>Subsystems</em>}' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getSubsystems()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<DefaultSubsystemType> subsystems;
+
+	/**
+	 * The cached value of the '{@link #getDiagrams() <em>Diagrams</em>}' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getDiagrams()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<IModelElement> diagrams;
+
+	/**
+	 * The cached value of the '{@link #getComponents() <em>Components</em>}' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getComponents()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<IModelElement> components;
+
+	/**
+	 * The cached value of the '{@link #getPanelDiagrams() <em>Panel Diagrams</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getPanelDiagrams()
+	 * @generated
+	 * @ordered
+	 */
+	protected IPanelDiagram panelDiagrams;
+
+	/**
+	 * The cached value of the '{@link #getHyperLinks() <em>Hyper Links</em>}' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getHyperLinks()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<IMHyperLink> hyperLinks;
+
+	/**
+	 * The cached value of the '{@link #getMSCS() <em>MSCS</em>}' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getMSCS()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<DeclarativesType> mscs;
+
+	/**
+	 * The cached value of the '{@link #getUCDiagrams() <em>UC Diagrams</em>}' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getUCDiagrams()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<IUCDiagram> ucDiagrams;
+
+	/**
+	 * The cached value of the '{@link #getCollaborationDiagrams() <em>Collaboration Diagrams</em>}' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getCollaborationDiagrams()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<ICollaborationDiagram> collaborationDiagrams;
+
+	/**
+	 * The cached value of the '{@link #getDeclaratives() <em>Declaratives</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getDeclaratives()
+	 * @generated
+	 * @ordered
+	 */
+	protected IStereotype declaratives;
+
+	/**
+	 * The cached value of the '{@link #getComponentDiagrams() <em>Component Diagrams</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getComponentDiagrams()
+	 * @generated
+	 * @ordered
+	 */
+	protected IComponentDiagram componentDiagrams;
+
+	/**
+	 * The default value of the '{@link #getUnitSccProjName() <em>Unit Scc Proj Name</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getUnitSccProjName()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String UNIT_SCC_PROJ_NAME_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getUnitSccProjName() <em>Unit Scc Proj Name</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getUnitSccProjName()
+	 * @generated
+	 * @ordered
+	 */
+	protected String unitSccProjName = UNIT_SCC_PROJ_NAME_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getUnitSccProjPath() <em>Unit Scc Proj Path</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getUnitSccProjPath()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String UNIT_SCC_PROJ_PATH_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getUnitSccProjPath() <em>Unit Scc Proj Path</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getUnitSccProjPath()
+	 * @generated
+	 * @ordered
+	 */
+	protected String unitSccProjPath = UNIT_SCC_PROJ_PATH_EDEFAULT;
+
+	/**
+	 * The cached value of the '{@link #getDependencies() <em>Dependencies</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getDependencies()
+	 * @generated
+	 * @ordered
+	 */
+	protected IDependency dependencies;
+
+	/**
+	 * The cached value of the '{@link #getCodeUpdateCGTime() <em>Code Update CG Time</em>}' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getCodeUpdateCGTime()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<String> codeUpdateCGTime;
+
+	/**
+	 * The default value of the '{@link #getVersion() <em>Version</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getVersion()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String VERSION_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getVersion() <em>Version</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getVersion()
+	 * @generated
+	 * @ordered
+	 */
+	protected String version = VERSION_EDEFAULT;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected IProjectImpl() {
+		super();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EClass eStaticClass() {
+		return UMLRpyPackage.eINSTANCE.getIProject();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<String> getUserColors() {
+		if (userColors == null) {
+			userColors = new EDataTypeEList<String>(String.class, this, UMLRpyPackage.IPROJECT__USER_COLORS);
+		}
+		return userColors;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public DefaultSubsystemType getDefaultSubsystem() {
+		if (defaultSubsystem != null && defaultSubsystem.eIsProxy()) {
+			InternalEObject oldDefaultSubsystem = (InternalEObject)defaultSubsystem;
+			defaultSubsystem = (DefaultSubsystemType)eResolveProxy(oldDefaultSubsystem);
+			if (defaultSubsystem != oldDefaultSubsystem) {
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.IPROJECT__DEFAULT_SUBSYSTEM, oldDefaultSubsystem, defaultSubsystem));
+			}
+		}
+		return defaultSubsystem;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public DefaultSubsystemType basicGetDefaultSubsystem() {
+		return defaultSubsystem;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setDefaultSubsystem(DefaultSubsystemType newDefaultSubsystem) {
+		DefaultSubsystemType oldDefaultSubsystem = defaultSubsystem;
+		defaultSubsystem = newDefaultSubsystem;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IPROJECT__DEFAULT_SUBSYSTEM, oldDefaultSubsystem, defaultSubsystem));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IComponent getComponent() {
+		if (component != null && component.eIsProxy()) {
+			InternalEObject oldComponent = (InternalEObject)component;
+			component = (IComponent)eResolveProxy(oldComponent);
+			if (component != oldComponent) {
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.IPROJECT__COMPONENT, oldComponent, component));
+			}
+		}
+		return component;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IComponent basicGetComponent() {
+		return component;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setComponent(IComponent newComponent) {
+		IComponent oldComponent = component;
+		component = newComponent;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IPROJECT__COMPONENT, oldComponent, component));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<IMultiplicityItem> getMultiplicities() {
+		if (multiplicities == null) {
+			multiplicities = new EObjectContainmentEList.Resolving<IMultiplicityItem>(IMultiplicityItem.class, this, UMLRpyPackage.IPROJECT__MULTIPLICITIES);
+		}
+		return multiplicities;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<DefaultSubsystemType> getSubsystems() {
+		if (subsystems == null) {
+			subsystems = new EObjectContainmentEList.Resolving<DefaultSubsystemType>(DefaultSubsystemType.class, this, UMLRpyPackage.IPROJECT__SUBSYSTEMS);
+		}
+		return subsystems;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<IModelElement> getDiagrams() {
+		if (diagrams == null) {
+			diagrams = new EObjectContainmentEList.Resolving<IModelElement>(IModelElement.class, this, UMLRpyPackage.IPROJECT__DIAGRAMS);
+		}
+		return diagrams;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<IModelElement> getComponents() {
+		if (components == null) {
+			components = new EObjectContainmentEList.Resolving<IModelElement>(IModelElement.class, this, UMLRpyPackage.IPROJECT__COMPONENTS);
+		}
+		return components;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IPanelDiagram getPanelDiagrams() {
+		if (panelDiagrams != null && panelDiagrams.eIsProxy()) {
+			InternalEObject oldPanelDiagrams = (InternalEObject)panelDiagrams;
+			panelDiagrams = (IPanelDiagram)eResolveProxy(oldPanelDiagrams);
+			if (panelDiagrams != oldPanelDiagrams) {
+				InternalEObject newPanelDiagrams = (InternalEObject)panelDiagrams;
+				NotificationChain msgs = oldPanelDiagrams.eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IPROJECT__PANEL_DIAGRAMS, null, null);
+				if (newPanelDiagrams.eInternalContainer() == null) {
+					msgs = newPanelDiagrams.eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IPROJECT__PANEL_DIAGRAMS, null, msgs);
+				}
+				if (msgs != null) msgs.dispatch();
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.IPROJECT__PANEL_DIAGRAMS, oldPanelDiagrams, panelDiagrams));
+			}
+		}
+		return panelDiagrams;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IPanelDiagram basicGetPanelDiagrams() {
+		return panelDiagrams;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public NotificationChain basicSetPanelDiagrams(IPanelDiagram newPanelDiagrams, NotificationChain msgs) {
+		IPanelDiagram oldPanelDiagrams = panelDiagrams;
+		panelDiagrams = newPanelDiagrams;
+		if (eNotificationRequired()) {
+			ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IPROJECT__PANEL_DIAGRAMS, oldPanelDiagrams, newPanelDiagrams);
+			if (msgs == null) msgs = notification; else msgs.add(notification);
+		}
+		return msgs;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setPanelDiagrams(IPanelDiagram newPanelDiagrams) {
+		if (newPanelDiagrams != panelDiagrams) {
+			NotificationChain msgs = null;
+			if (panelDiagrams != null)
+				msgs = ((InternalEObject)panelDiagrams).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IPROJECT__PANEL_DIAGRAMS, null, msgs);
+			if (newPanelDiagrams != null)
+				msgs = ((InternalEObject)newPanelDiagrams).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IPROJECT__PANEL_DIAGRAMS, null, msgs);
+			msgs = basicSetPanelDiagrams(newPanelDiagrams, msgs);
+			if (msgs != null) msgs.dispatch();
+		}
+		else if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IPROJECT__PANEL_DIAGRAMS, newPanelDiagrams, newPanelDiagrams));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<IMHyperLink> getHyperLinks() {
+		if (hyperLinks == null) {
+			hyperLinks = new EObjectContainmentEList.Resolving<IMHyperLink>(IMHyperLink.class, this, UMLRpyPackage.IPROJECT__HYPER_LINKS);
+		}
+		return hyperLinks;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<DeclarativesType> getMSCS() {
+		if (mscs == null) {
+			mscs = new EObjectContainmentEList.Resolving<DeclarativesType>(DeclarativesType.class, this, UMLRpyPackage.IPROJECT__MSCS);
+		}
+		return mscs;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<IUCDiagram> getUCDiagrams() {
+		if (ucDiagrams == null) {
+			ucDiagrams = new EObjectContainmentEList.Resolving<IUCDiagram>(IUCDiagram.class, this, UMLRpyPackage.IPROJECT__UC_DIAGRAMS);
+		}
+		return ucDiagrams;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<ICollaborationDiagram> getCollaborationDiagrams() {
+		if (collaborationDiagrams == null) {
+			collaborationDiagrams = new EObjectContainmentEList.Resolving<ICollaborationDiagram>(ICollaborationDiagram.class, this, UMLRpyPackage.IPROJECT__COLLABORATION_DIAGRAMS);
+		}
+		return collaborationDiagrams;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IStereotype getDeclaratives() {
+		if (declaratives != null && declaratives.eIsProxy()) {
+			InternalEObject oldDeclaratives = (InternalEObject)declaratives;
+			declaratives = (IStereotype)eResolveProxy(oldDeclaratives);
+			if (declaratives != oldDeclaratives) {
+				InternalEObject newDeclaratives = (InternalEObject)declaratives;
+				NotificationChain msgs = oldDeclaratives.eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IPROJECT__DECLARATIVES, null, null);
+				if (newDeclaratives.eInternalContainer() == null) {
+					msgs = newDeclaratives.eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IPROJECT__DECLARATIVES, null, msgs);
+				}
+				if (msgs != null) msgs.dispatch();
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.IPROJECT__DECLARATIVES, oldDeclaratives, declaratives));
+			}
+		}
+		return declaratives;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IStereotype basicGetDeclaratives() {
+		return declaratives;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public NotificationChain basicSetDeclaratives(IStereotype newDeclaratives, NotificationChain msgs) {
+		IStereotype oldDeclaratives = declaratives;
+		declaratives = newDeclaratives;
+		if (eNotificationRequired()) {
+			ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IPROJECT__DECLARATIVES, oldDeclaratives, newDeclaratives);
+			if (msgs == null) msgs = notification; else msgs.add(notification);
+		}
+		return msgs;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setDeclaratives(IStereotype newDeclaratives) {
+		if (newDeclaratives != declaratives) {
+			NotificationChain msgs = null;
+			if (declaratives != null)
+				msgs = ((InternalEObject)declaratives).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IPROJECT__DECLARATIVES, null, msgs);
+			if (newDeclaratives != null)
+				msgs = ((InternalEObject)newDeclaratives).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IPROJECT__DECLARATIVES, null, msgs);
+			msgs = basicSetDeclaratives(newDeclaratives, msgs);
+			if (msgs != null) msgs.dispatch();
+		}
+		else if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IPROJECT__DECLARATIVES, newDeclaratives, newDeclaratives));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IComponentDiagram getComponentDiagrams() {
+		if (componentDiagrams != null && componentDiagrams.eIsProxy()) {
+			InternalEObject oldComponentDiagrams = (InternalEObject)componentDiagrams;
+			componentDiagrams = (IComponentDiagram)eResolveProxy(oldComponentDiagrams);
+			if (componentDiagrams != oldComponentDiagrams) {
+				InternalEObject newComponentDiagrams = (InternalEObject)componentDiagrams;
+				NotificationChain msgs = oldComponentDiagrams.eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IPROJECT__COMPONENT_DIAGRAMS, null, null);
+				if (newComponentDiagrams.eInternalContainer() == null) {
+					msgs = newComponentDiagrams.eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IPROJECT__COMPONENT_DIAGRAMS, null, msgs);
+				}
+				if (msgs != null) msgs.dispatch();
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.IPROJECT__COMPONENT_DIAGRAMS, oldComponentDiagrams, componentDiagrams));
+			}
+		}
+		return componentDiagrams;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IComponentDiagram basicGetComponentDiagrams() {
+		return componentDiagrams;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public NotificationChain basicSetComponentDiagrams(IComponentDiagram newComponentDiagrams, NotificationChain msgs) {
+		IComponentDiagram oldComponentDiagrams = componentDiagrams;
+		componentDiagrams = newComponentDiagrams;
+		if (eNotificationRequired()) {
+			ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IPROJECT__COMPONENT_DIAGRAMS, oldComponentDiagrams, newComponentDiagrams);
+			if (msgs == null) msgs = notification; else msgs.add(notification);
+		}
+		return msgs;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setComponentDiagrams(IComponentDiagram newComponentDiagrams) {
+		if (newComponentDiagrams != componentDiagrams) {
+			NotificationChain msgs = null;
+			if (componentDiagrams != null)
+				msgs = ((InternalEObject)componentDiagrams).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IPROJECT__COMPONENT_DIAGRAMS, null, msgs);
+			if (newComponentDiagrams != null)
+				msgs = ((InternalEObject)newComponentDiagrams).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IPROJECT__COMPONENT_DIAGRAMS, null, msgs);
+			msgs = basicSetComponentDiagrams(newComponentDiagrams, msgs);
+			if (msgs != null) msgs.dispatch();
+		}
+		else if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IPROJECT__COMPONENT_DIAGRAMS, newComponentDiagrams, newComponentDiagrams));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getUnitSccProjName() {
+		return unitSccProjName;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setUnitSccProjName(String newUnitSccProjName) {
+		String oldUnitSccProjName = unitSccProjName;
+		unitSccProjName = newUnitSccProjName;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IPROJECT__UNIT_SCC_PROJ_NAME, oldUnitSccProjName, unitSccProjName));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getUnitSccProjPath() {
+		return unitSccProjPath;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setUnitSccProjPath(String newUnitSccProjPath) {
+		String oldUnitSccProjPath = unitSccProjPath;
+		unitSccProjPath = newUnitSccProjPath;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IPROJECT__UNIT_SCC_PROJ_PATH, oldUnitSccProjPath, unitSccProjPath));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IDependency getDependencies() {
+		if (dependencies != null && dependencies.eIsProxy()) {
+			InternalEObject oldDependencies = (InternalEObject)dependencies;
+			dependencies = (IDependency)eResolveProxy(oldDependencies);
+			if (dependencies != oldDependencies) {
+				InternalEObject newDependencies = (InternalEObject)dependencies;
+				NotificationChain msgs = oldDependencies.eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IPROJECT__DEPENDENCIES, null, null);
+				if (newDependencies.eInternalContainer() == null) {
+					msgs = newDependencies.eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IPROJECT__DEPENDENCIES, null, msgs);
+				}
+				if (msgs != null) msgs.dispatch();
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.IPROJECT__DEPENDENCIES, oldDependencies, dependencies));
+			}
+		}
+		return dependencies;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IDependency basicGetDependencies() {
+		return dependencies;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public NotificationChain basicSetDependencies(IDependency newDependencies, NotificationChain msgs) {
+		IDependency oldDependencies = dependencies;
+		dependencies = newDependencies;
+		if (eNotificationRequired()) {
+			ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IPROJECT__DEPENDENCIES, oldDependencies, newDependencies);
+			if (msgs == null) msgs = notification; else msgs.add(notification);
+		}
+		return msgs;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setDependencies(IDependency newDependencies) {
+		if (newDependencies != dependencies) {
+			NotificationChain msgs = null;
+			if (dependencies != null)
+				msgs = ((InternalEObject)dependencies).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IPROJECT__DEPENDENCIES, null, msgs);
+			if (newDependencies != null)
+				msgs = ((InternalEObject)newDependencies).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IPROJECT__DEPENDENCIES, null, msgs);
+			msgs = basicSetDependencies(newDependencies, msgs);
+			if (msgs != null) msgs.dispatch();
+		}
+		else if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IPROJECT__DEPENDENCIES, newDependencies, newDependencies));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<String> getCodeUpdateCGTime() {
+		if (codeUpdateCGTime == null) {
+			codeUpdateCGTime = new EDataTypeEList<String>(String.class, this, UMLRpyPackage.IPROJECT__CODE_UPDATE_CG_TIME);
+		}
+		return codeUpdateCGTime;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getVersion() {
+		return version;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setVersion(String newVersion) {
+		String oldVersion = version;
+		version = newVersion;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IPROJECT__VERSION, oldVersion, version));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
+		switch (featureID) {
+			case UMLRpyPackage.IPROJECT__MULTIPLICITIES:
+				return ((InternalEList<?>)getMultiplicities()).basicRemove(otherEnd, msgs);
+			case UMLRpyPackage.IPROJECT__SUBSYSTEMS:
+				return ((InternalEList<?>)getSubsystems()).basicRemove(otherEnd, msgs);
+			case UMLRpyPackage.IPROJECT__DIAGRAMS:
+				return ((InternalEList<?>)getDiagrams()).basicRemove(otherEnd, msgs);
+			case UMLRpyPackage.IPROJECT__COMPONENTS:
+				return ((InternalEList<?>)getComponents()).basicRemove(otherEnd, msgs);
+			case UMLRpyPackage.IPROJECT__PANEL_DIAGRAMS:
+				return basicSetPanelDiagrams(null, msgs);
+			case UMLRpyPackage.IPROJECT__HYPER_LINKS:
+				return ((InternalEList<?>)getHyperLinks()).basicRemove(otherEnd, msgs);
+			case UMLRpyPackage.IPROJECT__MSCS:
+				return ((InternalEList<?>)getMSCS()).basicRemove(otherEnd, msgs);
+			case UMLRpyPackage.IPROJECT__UC_DIAGRAMS:
+				return ((InternalEList<?>)getUCDiagrams()).basicRemove(otherEnd, msgs);
+			case UMLRpyPackage.IPROJECT__COLLABORATION_DIAGRAMS:
+				return ((InternalEList<?>)getCollaborationDiagrams()).basicRemove(otherEnd, msgs);
+			case UMLRpyPackage.IPROJECT__DECLARATIVES:
+				return basicSetDeclaratives(null, msgs);
+			case UMLRpyPackage.IPROJECT__COMPONENT_DIAGRAMS:
+				return basicSetComponentDiagrams(null, msgs);
+			case UMLRpyPackage.IPROJECT__DEPENDENCIES:
+				return basicSetDependencies(null, msgs);
+		}
+		return super.eInverseRemove(otherEnd, featureID, msgs);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object eGet(int featureID, boolean resolve, boolean coreType) {
+		switch (featureID) {
+			case UMLRpyPackage.IPROJECT__USER_COLORS:
+				return getUserColors();
+			case UMLRpyPackage.IPROJECT__DEFAULT_SUBSYSTEM:
+				if (resolve) return getDefaultSubsystem();
+				return basicGetDefaultSubsystem();
+			case UMLRpyPackage.IPROJECT__COMPONENT:
+				if (resolve) return getComponent();
+				return basicGetComponent();
+			case UMLRpyPackage.IPROJECT__MULTIPLICITIES:
+				return getMultiplicities();
+			case UMLRpyPackage.IPROJECT__SUBSYSTEMS:
+				return getSubsystems();
+			case UMLRpyPackage.IPROJECT__DIAGRAMS:
+				return getDiagrams();
+			case UMLRpyPackage.IPROJECT__COMPONENTS:
+				return getComponents();
+			case UMLRpyPackage.IPROJECT__PANEL_DIAGRAMS:
+				if (resolve) return getPanelDiagrams();
+				return basicGetPanelDiagrams();
+			case UMLRpyPackage.IPROJECT__HYPER_LINKS:
+				return getHyperLinks();
+			case UMLRpyPackage.IPROJECT__MSCS:
+				return getMSCS();
+			case UMLRpyPackage.IPROJECT__UC_DIAGRAMS:
+				return getUCDiagrams();
+			case UMLRpyPackage.IPROJECT__COLLABORATION_DIAGRAMS:
+				return getCollaborationDiagrams();
+			case UMLRpyPackage.IPROJECT__DECLARATIVES:
+				if (resolve) return getDeclaratives();
+				return basicGetDeclaratives();
+			case UMLRpyPackage.IPROJECT__COMPONENT_DIAGRAMS:
+				if (resolve) return getComponentDiagrams();
+				return basicGetComponentDiagrams();
+			case UMLRpyPackage.IPROJECT__UNIT_SCC_PROJ_NAME:
+				return getUnitSccProjName();
+			case UMLRpyPackage.IPROJECT__UNIT_SCC_PROJ_PATH:
+				return getUnitSccProjPath();
+			case UMLRpyPackage.IPROJECT__DEPENDENCIES:
+				if (resolve) return getDependencies();
+				return basicGetDependencies();
+			case UMLRpyPackage.IPROJECT__CODE_UPDATE_CG_TIME:
+				return getCodeUpdateCGTime();
+			case UMLRpyPackage.IPROJECT__VERSION:
+				return getVersion();
+		}
+		return super.eGet(featureID, resolve, coreType);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@SuppressWarnings("unchecked")
+	@Override
+	public void eSet(int featureID, Object newValue) {
+		switch (featureID) {
+			case UMLRpyPackage.IPROJECT__USER_COLORS:
+				getUserColors().clear();
+				getUserColors().addAll((Collection<? extends String>)newValue);
+				return;
+			case UMLRpyPackage.IPROJECT__DEFAULT_SUBSYSTEM:
+				setDefaultSubsystem((DefaultSubsystemType)newValue);
+				return;
+			case UMLRpyPackage.IPROJECT__COMPONENT:
+				setComponent((IComponent)newValue);
+				return;
+			case UMLRpyPackage.IPROJECT__MULTIPLICITIES:
+				getMultiplicities().clear();
+				getMultiplicities().addAll((Collection<? extends IMultiplicityItem>)newValue);
+				return;
+			case UMLRpyPackage.IPROJECT__SUBSYSTEMS:
+				getSubsystems().clear();
+				getSubsystems().addAll((Collection<? extends DefaultSubsystemType>)newValue);
+				return;
+			case UMLRpyPackage.IPROJECT__DIAGRAMS:
+				getDiagrams().clear();
+				getDiagrams().addAll((Collection<? extends IModelElement>)newValue);
+				return;
+			case UMLRpyPackage.IPROJECT__COMPONENTS:
+				getComponents().clear();
+				getComponents().addAll((Collection<? extends IModelElement>)newValue);
+				return;
+			case UMLRpyPackage.IPROJECT__PANEL_DIAGRAMS:
+				setPanelDiagrams((IPanelDiagram)newValue);
+				return;
+			case UMLRpyPackage.IPROJECT__HYPER_LINKS:
+				getHyperLinks().clear();
+				getHyperLinks().addAll((Collection<? extends IMHyperLink>)newValue);
+				return;
+			case UMLRpyPackage.IPROJECT__MSCS:
+				getMSCS().clear();
+				getMSCS().addAll((Collection<? extends DeclarativesType>)newValue);
+				return;
+			case UMLRpyPackage.IPROJECT__UC_DIAGRAMS:
+				getUCDiagrams().clear();
+				getUCDiagrams().addAll((Collection<? extends IUCDiagram>)newValue);
+				return;
+			case UMLRpyPackage.IPROJECT__COLLABORATION_DIAGRAMS:
+				getCollaborationDiagrams().clear();
+				getCollaborationDiagrams().addAll((Collection<? extends ICollaborationDiagram>)newValue);
+				return;
+			case UMLRpyPackage.IPROJECT__DECLARATIVES:
+				setDeclaratives((IStereotype)newValue);
+				return;
+			case UMLRpyPackage.IPROJECT__COMPONENT_DIAGRAMS:
+				setComponentDiagrams((IComponentDiagram)newValue);
+				return;
+			case UMLRpyPackage.IPROJECT__UNIT_SCC_PROJ_NAME:
+				setUnitSccProjName((String)newValue);
+				return;
+			case UMLRpyPackage.IPROJECT__UNIT_SCC_PROJ_PATH:
+				setUnitSccProjPath((String)newValue);
+				return;
+			case UMLRpyPackage.IPROJECT__DEPENDENCIES:
+				setDependencies((IDependency)newValue);
+				return;
+			case UMLRpyPackage.IPROJECT__CODE_UPDATE_CG_TIME:
+				getCodeUpdateCGTime().clear();
+				getCodeUpdateCGTime().addAll((Collection<? extends String>)newValue);
+				return;
+			case UMLRpyPackage.IPROJECT__VERSION:
+				setVersion((String)newValue);
+				return;
+		}
+		super.eSet(featureID, newValue);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void eUnset(int featureID) {
+		switch (featureID) {
+			case UMLRpyPackage.IPROJECT__USER_COLORS:
+				getUserColors().clear();
+				return;
+			case UMLRpyPackage.IPROJECT__DEFAULT_SUBSYSTEM:
+				setDefaultSubsystem((DefaultSubsystemType)null);
+				return;
+			case UMLRpyPackage.IPROJECT__COMPONENT:
+				setComponent((IComponent)null);
+				return;
+			case UMLRpyPackage.IPROJECT__MULTIPLICITIES:
+				getMultiplicities().clear();
+				return;
+			case UMLRpyPackage.IPROJECT__SUBSYSTEMS:
+				getSubsystems().clear();
+				return;
+			case UMLRpyPackage.IPROJECT__DIAGRAMS:
+				getDiagrams().clear();
+				return;
+			case UMLRpyPackage.IPROJECT__COMPONENTS:
+				getComponents().clear();
+				return;
+			case UMLRpyPackage.IPROJECT__PANEL_DIAGRAMS:
+				setPanelDiagrams((IPanelDiagram)null);
+				return;
+			case UMLRpyPackage.IPROJECT__HYPER_LINKS:
+				getHyperLinks().clear();
+				return;
+			case UMLRpyPackage.IPROJECT__MSCS:
+				getMSCS().clear();
+				return;
+			case UMLRpyPackage.IPROJECT__UC_DIAGRAMS:
+				getUCDiagrams().clear();
+				return;
+			case UMLRpyPackage.IPROJECT__COLLABORATION_DIAGRAMS:
+				getCollaborationDiagrams().clear();
+				return;
+			case UMLRpyPackage.IPROJECT__DECLARATIVES:
+				setDeclaratives((IStereotype)null);
+				return;
+			case UMLRpyPackage.IPROJECT__COMPONENT_DIAGRAMS:
+				setComponentDiagrams((IComponentDiagram)null);
+				return;
+			case UMLRpyPackage.IPROJECT__UNIT_SCC_PROJ_NAME:
+				setUnitSccProjName(UNIT_SCC_PROJ_NAME_EDEFAULT);
+				return;
+			case UMLRpyPackage.IPROJECT__UNIT_SCC_PROJ_PATH:
+				setUnitSccProjPath(UNIT_SCC_PROJ_PATH_EDEFAULT);
+				return;
+			case UMLRpyPackage.IPROJECT__DEPENDENCIES:
+				setDependencies((IDependency)null);
+				return;
+			case UMLRpyPackage.IPROJECT__CODE_UPDATE_CG_TIME:
+				getCodeUpdateCGTime().clear();
+				return;
+			case UMLRpyPackage.IPROJECT__VERSION:
+				setVersion(VERSION_EDEFAULT);
+				return;
+		}
+		super.eUnset(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public boolean eIsSet(int featureID) {
+		switch (featureID) {
+			case UMLRpyPackage.IPROJECT__USER_COLORS:
+				return userColors != null && !userColors.isEmpty();
+			case UMLRpyPackage.IPROJECT__DEFAULT_SUBSYSTEM:
+				return defaultSubsystem != null;
+			case UMLRpyPackage.IPROJECT__COMPONENT:
+				return component != null;
+			case UMLRpyPackage.IPROJECT__MULTIPLICITIES:
+				return multiplicities != null && !multiplicities.isEmpty();
+			case UMLRpyPackage.IPROJECT__SUBSYSTEMS:
+				return subsystems != null && !subsystems.isEmpty();
+			case UMLRpyPackage.IPROJECT__DIAGRAMS:
+				return diagrams != null && !diagrams.isEmpty();
+			case UMLRpyPackage.IPROJECT__COMPONENTS:
+				return components != null && !components.isEmpty();
+			case UMLRpyPackage.IPROJECT__PANEL_DIAGRAMS:
+				return panelDiagrams != null;
+			case UMLRpyPackage.IPROJECT__HYPER_LINKS:
+				return hyperLinks != null && !hyperLinks.isEmpty();
+			case UMLRpyPackage.IPROJECT__MSCS:
+				return mscs != null && !mscs.isEmpty();
+			case UMLRpyPackage.IPROJECT__UC_DIAGRAMS:
+				return ucDiagrams != null && !ucDiagrams.isEmpty();
+			case UMLRpyPackage.IPROJECT__COLLABORATION_DIAGRAMS:
+				return collaborationDiagrams != null && !collaborationDiagrams.isEmpty();
+			case UMLRpyPackage.IPROJECT__DECLARATIVES:
+				return declaratives != null;
+			case UMLRpyPackage.IPROJECT__COMPONENT_DIAGRAMS:
+				return componentDiagrams != null;
+			case UMLRpyPackage.IPROJECT__UNIT_SCC_PROJ_NAME:
+				return UNIT_SCC_PROJ_NAME_EDEFAULT == null ? unitSccProjName != null : !UNIT_SCC_PROJ_NAME_EDEFAULT.equals(unitSccProjName);
+			case UMLRpyPackage.IPROJECT__UNIT_SCC_PROJ_PATH:
+				return UNIT_SCC_PROJ_PATH_EDEFAULT == null ? unitSccProjPath != null : !UNIT_SCC_PROJ_PATH_EDEFAULT.equals(unitSccProjPath);
+			case UMLRpyPackage.IPROJECT__DEPENDENCIES:
+				return dependencies != null;
+			case UMLRpyPackage.IPROJECT__CODE_UPDATE_CG_TIME:
+				return codeUpdateCGTime != null && !codeUpdateCGTime.isEmpty();
+			case UMLRpyPackage.IPROJECT__VERSION:
+				return VERSION_EDEFAULT == null ? version != null : !VERSION_EDEFAULT.equals(version);
+		}
+		return super.eIsSet(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String toString() {
+		if (eIsProxy()) return super.toString();
+
+		StringBuffer result = new StringBuffer(super.toString());
+		result.append(" (UserColors: "); //$NON-NLS-1$
+		result.append(userColors);
+		result.append(", unitSccProjName: "); //$NON-NLS-1$
+		result.append(unitSccProjName);
+		result.append(", unitSccProjPath: "); //$NON-NLS-1$
+		result.append(unitSccProjPath);
+		result.append(", codeUpdateCGTime: "); //$NON-NLS-1$
+		result.append(codeUpdateCGTime);
+		result.append(", version: "); //$NON-NLS-1$
+		result.append(version);
+		result.append(')');
+		return result.toString();
+	}
+
+} //IProjectImpl
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/IPropertyContainerImpl.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/IPropertyContainerImpl.java
new file mode 100755
index 0000000..3db90f6
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/IPropertyContainerImpl.java
@@ -0,0 +1,160 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl;
+
+import java.util.Collection;
+
+import org.eclipse.emf.common.notify.NotificationChain;
+
+import org.eclipse.emf.common.util.EList;
+
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.InternalEObject;
+
+import org.eclipse.emf.ecore.util.EObjectContainmentEList;
+import org.eclipse.emf.ecore.util.InternalEList;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IPropertyContainer;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IPropertySubject;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>IProperty Container</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * </p>
+ * <ul>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IPropertyContainerImpl#getSubjects <em>Subjects</em>}</li>
+ * </ul>
+ *
+ * @generated
+ */
+public class IPropertyContainerImpl extends PropertiesTypeImpl implements IPropertyContainer {
+	/**
+	 * The cached value of the '{@link #getSubjects() <em>Subjects</em>}' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getSubjects()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<IPropertySubject> subjects;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected IPropertyContainerImpl() {
+		super();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EClass eStaticClass() {
+		return UMLRpyPackage.eINSTANCE.getIPropertyContainer();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<IPropertySubject> getSubjects() {
+		if (subjects == null) {
+			subjects = new EObjectContainmentEList.Resolving<IPropertySubject>(IPropertySubject.class, this, UMLRpyPackage.IPROPERTY_CONTAINER__SUBJECTS);
+		}
+		return subjects;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
+		switch (featureID) {
+			case UMLRpyPackage.IPROPERTY_CONTAINER__SUBJECTS:
+				return ((InternalEList<?>)getSubjects()).basicRemove(otherEnd, msgs);
+		}
+		return super.eInverseRemove(otherEnd, featureID, msgs);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object eGet(int featureID, boolean resolve, boolean coreType) {
+		switch (featureID) {
+			case UMLRpyPackage.IPROPERTY_CONTAINER__SUBJECTS:
+				return getSubjects();
+		}
+		return super.eGet(featureID, resolve, coreType);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@SuppressWarnings("unchecked")
+	@Override
+	public void eSet(int featureID, Object newValue) {
+		switch (featureID) {
+			case UMLRpyPackage.IPROPERTY_CONTAINER__SUBJECTS:
+				getSubjects().clear();
+				getSubjects().addAll((Collection<? extends IPropertySubject>)newValue);
+				return;
+		}
+		super.eSet(featureID, newValue);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void eUnset(int featureID) {
+		switch (featureID) {
+			case UMLRpyPackage.IPROPERTY_CONTAINER__SUBJECTS:
+				getSubjects().clear();
+				return;
+		}
+		super.eUnset(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public boolean eIsSet(int featureID) {
+		switch (featureID) {
+			case UMLRpyPackage.IPROPERTY_CONTAINER__SUBJECTS:
+				return subjects != null && !subjects.isEmpty();
+		}
+		return super.eIsSet(featureID);
+	}
+
+} //IPropertyContainerImpl
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/IPropertyImpl.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/IPropertyImpl.java
new file mode 100755
index 0000000..77d59c0
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/IPropertyImpl.java
@@ -0,0 +1,335 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl;
+
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.ecore.EClass;
+
+import org.eclipse.emf.ecore.impl.ENotificationImpl;
+import org.eclipse.emf.ecore.impl.MinimalEObjectImpl;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IProperty;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>IProperty</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * </p>
+ * <ul>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IPropertyImpl#getName <em>Name</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IPropertyImpl#getValue <em>Value</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IPropertyImpl#getType <em>Type</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IPropertyImpl#getExtraTypeInfo <em>Extra Type Info</em>}</li>
+ * </ul>
+ *
+ * @generated
+ */
+public class IPropertyImpl extends MinimalEObjectImpl.Container implements IProperty {
+	/**
+	 * The default value of the '{@link #getName() <em>Name</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getName()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String NAME_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getName() <em>Name</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getName()
+	 * @generated
+	 * @ordered
+	 */
+	protected String name = NAME_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getValue() <em>Value</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getValue()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String VALUE_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getValue() <em>Value</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getValue()
+	 * @generated
+	 * @ordered
+	 */
+	protected String value = VALUE_EDEFAULT;
+
+	/**
+	 * 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 cached value of the '{@link #getType() <em>Type</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getType()
+	 * @generated
+	 * @ordered
+	 */
+	protected String type = TYPE_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getExtraTypeInfo() <em>Extra Type Info</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getExtraTypeInfo()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String EXTRA_TYPE_INFO_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getExtraTypeInfo() <em>Extra Type Info</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getExtraTypeInfo()
+	 * @generated
+	 * @ordered
+	 */
+	protected String extraTypeInfo = EXTRA_TYPE_INFO_EDEFAULT;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected IPropertyImpl() {
+		super();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EClass eStaticClass() {
+		return UMLRpyPackage.eINSTANCE.getIProperty();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getName() {
+		return name;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setName(String newName) {
+		String oldName = name;
+		name = newName;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IPROPERTY__NAME, oldName, name));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getValue() {
+		return value;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setValue(String newValue) {
+		String oldValue = value;
+		value = newValue;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IPROPERTY__VALUE, oldValue, value));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getType() {
+		return type;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setType(String newType) {
+		String oldType = type;
+		type = newType;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IPROPERTY__TYPE, oldType, type));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getExtraTypeInfo() {
+		return extraTypeInfo;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setExtraTypeInfo(String newExtraTypeInfo) {
+		String oldExtraTypeInfo = extraTypeInfo;
+		extraTypeInfo = newExtraTypeInfo;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IPROPERTY__EXTRA_TYPE_INFO, oldExtraTypeInfo, extraTypeInfo));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object eGet(int featureID, boolean resolve, boolean coreType) {
+		switch (featureID) {
+			case UMLRpyPackage.IPROPERTY__NAME:
+				return getName();
+			case UMLRpyPackage.IPROPERTY__VALUE:
+				return getValue();
+			case UMLRpyPackage.IPROPERTY__TYPE:
+				return getType();
+			case UMLRpyPackage.IPROPERTY__EXTRA_TYPE_INFO:
+				return getExtraTypeInfo();
+		}
+		return super.eGet(featureID, resolve, coreType);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void eSet(int featureID, Object newValue) {
+		switch (featureID) {
+			case UMLRpyPackage.IPROPERTY__NAME:
+				setName((String)newValue);
+				return;
+			case UMLRpyPackage.IPROPERTY__VALUE:
+				setValue((String)newValue);
+				return;
+			case UMLRpyPackage.IPROPERTY__TYPE:
+				setType((String)newValue);
+				return;
+			case UMLRpyPackage.IPROPERTY__EXTRA_TYPE_INFO:
+				setExtraTypeInfo((String)newValue);
+				return;
+		}
+		super.eSet(featureID, newValue);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void eUnset(int featureID) {
+		switch (featureID) {
+			case UMLRpyPackage.IPROPERTY__NAME:
+				setName(NAME_EDEFAULT);
+				return;
+			case UMLRpyPackage.IPROPERTY__VALUE:
+				setValue(VALUE_EDEFAULT);
+				return;
+			case UMLRpyPackage.IPROPERTY__TYPE:
+				setType(TYPE_EDEFAULT);
+				return;
+			case UMLRpyPackage.IPROPERTY__EXTRA_TYPE_INFO:
+				setExtraTypeInfo(EXTRA_TYPE_INFO_EDEFAULT);
+				return;
+		}
+		super.eUnset(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public boolean eIsSet(int featureID) {
+		switch (featureID) {
+			case UMLRpyPackage.IPROPERTY__NAME:
+				return NAME_EDEFAULT == null ? name != null : !NAME_EDEFAULT.equals(name);
+			case UMLRpyPackage.IPROPERTY__VALUE:
+				return VALUE_EDEFAULT == null ? value != null : !VALUE_EDEFAULT.equals(value);
+			case UMLRpyPackage.IPROPERTY__TYPE:
+				return TYPE_EDEFAULT == null ? type != null : !TYPE_EDEFAULT.equals(type);
+			case UMLRpyPackage.IPROPERTY__EXTRA_TYPE_INFO:
+				return EXTRA_TYPE_INFO_EDEFAULT == null ? extraTypeInfo != null : !EXTRA_TYPE_INFO_EDEFAULT.equals(extraTypeInfo);
+		}
+		return super.eIsSet(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String toString() {
+		if (eIsProxy()) return super.toString();
+
+		StringBuffer result = new StringBuffer(super.toString());
+		result.append(" (Name: "); //$NON-NLS-1$
+		result.append(name);
+		result.append(", Value: "); //$NON-NLS-1$
+		result.append(value);
+		result.append(", Type: "); //$NON-NLS-1$
+		result.append(type);
+		result.append(", ExtraTypeInfo: "); //$NON-NLS-1$
+		result.append(extraTypeInfo);
+		result.append(')');
+		return result.toString();
+	}
+
+} //IPropertyImpl
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/IPropertyMetaclassImpl.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/IPropertyMetaclassImpl.java
new file mode 100755
index 0000000..905056f
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/IPropertyMetaclassImpl.java
@@ -0,0 +1,232 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl;
+
+import java.util.Collection;
+
+import org.eclipse.emf.common.notify.Notification;
+import org.eclipse.emf.common.notify.NotificationChain;
+
+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.impl.MinimalEObjectImpl;
+
+import org.eclipse.emf.ecore.util.EObjectContainmentEList;
+import org.eclipse.emf.ecore.util.InternalEList;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IProperty;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IPropertyMetaclass;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>IProperty Metaclass</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * </p>
+ * <ul>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IPropertyMetaclassImpl#getName <em>Name</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IPropertyMetaclassImpl#getProperties <em>Properties</em>}</li>
+ * </ul>
+ *
+ * @generated
+ */
+public class IPropertyMetaclassImpl extends MinimalEObjectImpl.Container implements IPropertyMetaclass {
+	/**
+	 * The default value of the '{@link #getName() <em>Name</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getName()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String NAME_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getName() <em>Name</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getName()
+	 * @generated
+	 * @ordered
+	 */
+	protected String name = NAME_EDEFAULT;
+
+	/**
+	 * The cached value of the '{@link #getProperties() <em>Properties</em>}' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getProperties()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<IProperty> properties;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected IPropertyMetaclassImpl() {
+		super();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EClass eStaticClass() {
+		return UMLRpyPackage.eINSTANCE.getIPropertyMetaclass();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getName() {
+		return name;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setName(String newName) {
+		String oldName = name;
+		name = newName;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IPROPERTY_METACLASS__NAME, oldName, name));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<IProperty> getProperties() {
+		if (properties == null) {
+			properties = new EObjectContainmentEList.Resolving<IProperty>(IProperty.class, this, UMLRpyPackage.IPROPERTY_METACLASS__PROPERTIES);
+		}
+		return properties;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
+		switch (featureID) {
+			case UMLRpyPackage.IPROPERTY_METACLASS__PROPERTIES:
+				return ((InternalEList<?>)getProperties()).basicRemove(otherEnd, msgs);
+		}
+		return super.eInverseRemove(otherEnd, featureID, msgs);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object eGet(int featureID, boolean resolve, boolean coreType) {
+		switch (featureID) {
+			case UMLRpyPackage.IPROPERTY_METACLASS__NAME:
+				return getName();
+			case UMLRpyPackage.IPROPERTY_METACLASS__PROPERTIES:
+				return getProperties();
+		}
+		return super.eGet(featureID, resolve, coreType);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@SuppressWarnings("unchecked")
+	@Override
+	public void eSet(int featureID, Object newValue) {
+		switch (featureID) {
+			case UMLRpyPackage.IPROPERTY_METACLASS__NAME:
+				setName((String)newValue);
+				return;
+			case UMLRpyPackage.IPROPERTY_METACLASS__PROPERTIES:
+				getProperties().clear();
+				getProperties().addAll((Collection<? extends IProperty>)newValue);
+				return;
+		}
+		super.eSet(featureID, newValue);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void eUnset(int featureID) {
+		switch (featureID) {
+			case UMLRpyPackage.IPROPERTY_METACLASS__NAME:
+				setName(NAME_EDEFAULT);
+				return;
+			case UMLRpyPackage.IPROPERTY_METACLASS__PROPERTIES:
+				getProperties().clear();
+				return;
+		}
+		super.eUnset(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public boolean eIsSet(int featureID) {
+		switch (featureID) {
+			case UMLRpyPackage.IPROPERTY_METACLASS__NAME:
+				return NAME_EDEFAULT == null ? name != null : !NAME_EDEFAULT.equals(name);
+			case UMLRpyPackage.IPROPERTY_METACLASS__PROPERTIES:
+				return properties != null && !properties.isEmpty();
+		}
+		return super.eIsSet(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String toString() {
+		if (eIsProxy()) return super.toString();
+
+		StringBuffer result = new StringBuffer(super.toString());
+		result.append(" (Name: "); //$NON-NLS-1$
+		result.append(name);
+		result.append(')');
+		return result.toString();
+	}
+
+} //IPropertyMetaclassImpl
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/IPropertySubjectImpl.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/IPropertySubjectImpl.java
new file mode 100755
index 0000000..38704b9
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/IPropertySubjectImpl.java
@@ -0,0 +1,232 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl;
+
+import java.util.Collection;
+
+import org.eclipse.emf.common.notify.Notification;
+import org.eclipse.emf.common.notify.NotificationChain;
+
+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.impl.MinimalEObjectImpl;
+
+import org.eclipse.emf.ecore.util.EObjectContainmentEList;
+import org.eclipse.emf.ecore.util.InternalEList;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IPropertyMetaclass;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IPropertySubject;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>IProperty Subject</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * </p>
+ * <ul>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IPropertySubjectImpl#getName <em>Name</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IPropertySubjectImpl#getMetaclasses <em>Metaclasses</em>}</li>
+ * </ul>
+ *
+ * @generated
+ */
+public class IPropertySubjectImpl extends MinimalEObjectImpl.Container implements IPropertySubject {
+	/**
+	 * The default value of the '{@link #getName() <em>Name</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getName()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String NAME_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getName() <em>Name</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getName()
+	 * @generated
+	 * @ordered
+	 */
+	protected String name = NAME_EDEFAULT;
+
+	/**
+	 * The cached value of the '{@link #getMetaclasses() <em>Metaclasses</em>}' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getMetaclasses()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<IPropertyMetaclass> metaclasses;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected IPropertySubjectImpl() {
+		super();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EClass eStaticClass() {
+		return UMLRpyPackage.eINSTANCE.getIPropertySubject();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getName() {
+		return name;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setName(String newName) {
+		String oldName = name;
+		name = newName;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IPROPERTY_SUBJECT__NAME, oldName, name));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<IPropertyMetaclass> getMetaclasses() {
+		if (metaclasses == null) {
+			metaclasses = new EObjectContainmentEList.Resolving<IPropertyMetaclass>(IPropertyMetaclass.class, this, UMLRpyPackage.IPROPERTY_SUBJECT__METACLASSES);
+		}
+		return metaclasses;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
+		switch (featureID) {
+			case UMLRpyPackage.IPROPERTY_SUBJECT__METACLASSES:
+				return ((InternalEList<?>)getMetaclasses()).basicRemove(otherEnd, msgs);
+		}
+		return super.eInverseRemove(otherEnd, featureID, msgs);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object eGet(int featureID, boolean resolve, boolean coreType) {
+		switch (featureID) {
+			case UMLRpyPackage.IPROPERTY_SUBJECT__NAME:
+				return getName();
+			case UMLRpyPackage.IPROPERTY_SUBJECT__METACLASSES:
+				return getMetaclasses();
+		}
+		return super.eGet(featureID, resolve, coreType);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@SuppressWarnings("unchecked")
+	@Override
+	public void eSet(int featureID, Object newValue) {
+		switch (featureID) {
+			case UMLRpyPackage.IPROPERTY_SUBJECT__NAME:
+				setName((String)newValue);
+				return;
+			case UMLRpyPackage.IPROPERTY_SUBJECT__METACLASSES:
+				getMetaclasses().clear();
+				getMetaclasses().addAll((Collection<? extends IPropertyMetaclass>)newValue);
+				return;
+		}
+		super.eSet(featureID, newValue);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void eUnset(int featureID) {
+		switch (featureID) {
+			case UMLRpyPackage.IPROPERTY_SUBJECT__NAME:
+				setName(NAME_EDEFAULT);
+				return;
+			case UMLRpyPackage.IPROPERTY_SUBJECT__METACLASSES:
+				getMetaclasses().clear();
+				return;
+		}
+		super.eUnset(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public boolean eIsSet(int featureID) {
+		switch (featureID) {
+			case UMLRpyPackage.IPROPERTY_SUBJECT__NAME:
+				return NAME_EDEFAULT == null ? name != null : !NAME_EDEFAULT.equals(name);
+			case UMLRpyPackage.IPROPERTY_SUBJECT__METACLASSES:
+				return metaclasses != null && !metaclasses.isEmpty();
+		}
+		return super.eIsSet(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String toString() {
+		if (eIsProxy()) return super.toString();
+
+		StringBuffer result = new StringBuffer(super.toString());
+		result.append(" (Name: "); //$NON-NLS-1$
+		result.append(name);
+		result.append(')');
+		return result.toString();
+	}
+
+} //IPropertySubjectImpl
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/IReceptionImpl.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/IReceptionImpl.java
new file mode 100755
index 0000000..0971865
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/IReceptionImpl.java
@@ -0,0 +1,726 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl;
+
+import java.util.Collection;
+
+import org.eclipse.emf.common.notify.Notification;
+import org.eclipse.emf.common.notify.NotificationChain;
+
+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.EDataTypeEList;
+import org.eclipse.emf.ecore.util.EObjectContainmentEList;
+import org.eclipse.emf.ecore.util.EObjectResolvingEList;
+import org.eclipse.emf.ecore.util.InternalEList;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IDependency;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IDescription;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IEvent;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IReception;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UnknownType;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>IReception</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * </p>
+ * <ul>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IReceptionImpl#getId <em>Id</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IReceptionImpl#getMyState <em>My State</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IReceptionImpl#getArgs <em>Args</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IReceptionImpl#getEvent <em>Event</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IReceptionImpl#getModifiedTimeWeak <em>Modified Time Weak</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IReceptionImpl#getDependencies <em>Dependencies</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IReceptionImpl#getLastID <em>Last ID</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IReceptionImpl#getRequiremenTracabilityHandle <em>Requiremen Tracability Handle</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IReceptionImpl#getDescription <em>Description</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IReceptionImpl#getObjectCreation <em>Object Creation</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IReceptionImpl#getUmlDependencyID <em>Uml Dependency ID</em>}</li>
+ * </ul>
+ *
+ * @generated
+ */
+public class IReceptionImpl extends OperationsTypeImpl implements IReception {
+	/**
+	 * The default value of the '{@link #getId() <em>Id</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getId()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String ID_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getId() <em>Id</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getId()
+	 * @generated
+	 * @ordered
+	 */
+	protected String id = ID_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getMyState() <em>My State</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getMyState()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String MY_STATE_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getMyState() <em>My State</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getMyState()
+	 * @generated
+	 * @ordered
+	 */
+	protected String myState = MY_STATE_EDEFAULT;
+
+	/**
+	 * The cached value of the '{@link #getArgs() <em>Args</em>}' reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getArgs()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<UnknownType> args;
+
+	/**
+	 * The cached value of the '{@link #getEvent() <em>Event</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getEvent()
+	 * @generated
+	 * @ordered
+	 */
+	protected IEvent event;
+
+	/**
+	 * The cached value of the '{@link #getModifiedTimeWeak() <em>Modified Time Weak</em>}' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getModifiedTimeWeak()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<String> modifiedTimeWeak;
+
+	/**
+	 * The cached value of the '{@link #getDependencies() <em>Dependencies</em>}' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getDependencies()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<IDependency> dependencies;
+
+	/**
+	 * The default value of the '{@link #getLastID() <em>Last ID</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getLastID()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String LAST_ID_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getLastID() <em>Last ID</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getLastID()
+	 * @generated
+	 * @ordered
+	 */
+	protected String lastID = LAST_ID_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getRequiremenTracabilityHandle() <em>Requiremen Tracability Handle</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getRequiremenTracabilityHandle()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String REQUIREMEN_TRACABILITY_HANDLE_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getRequiremenTracabilityHandle() <em>Requiremen Tracability Handle</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getRequiremenTracabilityHandle()
+	 * @generated
+	 * @ordered
+	 */
+	protected String requiremenTracabilityHandle = REQUIREMEN_TRACABILITY_HANDLE_EDEFAULT;
+
+	/**
+	 * The cached value of the '{@link #getDescription() <em>Description</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getDescription()
+	 * @generated
+	 * @ordered
+	 */
+	protected IDescription description;
+
+	/**
+	 * The default value of the '{@link #getObjectCreation() <em>Object Creation</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getObjectCreation()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String OBJECT_CREATION_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getObjectCreation() <em>Object Creation</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getObjectCreation()
+	 * @generated
+	 * @ordered
+	 */
+	protected String objectCreation = OBJECT_CREATION_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getUmlDependencyID() <em>Uml Dependency ID</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getUmlDependencyID()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String UML_DEPENDENCY_ID_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getUmlDependencyID() <em>Uml Dependency ID</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getUmlDependencyID()
+	 * @generated
+	 * @ordered
+	 */
+	protected String umlDependencyID = UML_DEPENDENCY_ID_EDEFAULT;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected IReceptionImpl() {
+		super();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EClass eStaticClass() {
+		return UMLRpyPackage.eINSTANCE.getIReception();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getId() {
+		return id;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setId(String newId) {
+		String oldId = id;
+		id = newId;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IRECEPTION__ID, oldId, id));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getMyState() {
+		return myState;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setMyState(String newMyState) {
+		String oldMyState = myState;
+		myState = newMyState;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IRECEPTION__MY_STATE, oldMyState, myState));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<UnknownType> getArgs() {
+		if (args == null) {
+			args = new EObjectResolvingEList<UnknownType>(UnknownType.class, this, UMLRpyPackage.IRECEPTION__ARGS);
+		}
+		return args;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IEvent getEvent() {
+		if (event != null && event.eIsProxy()) {
+			InternalEObject oldEvent = (InternalEObject)event;
+			event = (IEvent)eResolveProxy(oldEvent);
+			if (event != oldEvent) {
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.IRECEPTION__EVENT, oldEvent, event));
+			}
+		}
+		return event;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IEvent basicGetEvent() {
+		return event;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setEvent(IEvent newEvent) {
+		IEvent oldEvent = event;
+		event = newEvent;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IRECEPTION__EVENT, oldEvent, event));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<String> getModifiedTimeWeak() {
+		if (modifiedTimeWeak == null) {
+			modifiedTimeWeak = new EDataTypeEList<String>(String.class, this, UMLRpyPackage.IRECEPTION__MODIFIED_TIME_WEAK);
+		}
+		return modifiedTimeWeak;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<IDependency> getDependencies() {
+		if (dependencies == null) {
+			dependencies = new EObjectContainmentEList.Resolving<IDependency>(IDependency.class, this, UMLRpyPackage.IRECEPTION__DEPENDENCIES);
+		}
+		return dependencies;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getLastID() {
+		return lastID;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setLastID(String newLastID) {
+		String oldLastID = lastID;
+		lastID = newLastID;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IRECEPTION__LAST_ID, oldLastID, lastID));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getRequiremenTracabilityHandle() {
+		return requiremenTracabilityHandle;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setRequiremenTracabilityHandle(String newRequiremenTracabilityHandle) {
+		String oldRequiremenTracabilityHandle = requiremenTracabilityHandle;
+		requiremenTracabilityHandle = newRequiremenTracabilityHandle;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IRECEPTION__REQUIREMEN_TRACABILITY_HANDLE, oldRequiremenTracabilityHandle, requiremenTracabilityHandle));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IDescription getDescription() {
+		if (description != null && description.eIsProxy()) {
+			InternalEObject oldDescription = (InternalEObject)description;
+			description = (IDescription)eResolveProxy(oldDescription);
+			if (description != oldDescription) {
+				InternalEObject newDescription = (InternalEObject)description;
+				NotificationChain msgs = oldDescription.eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IRECEPTION__DESCRIPTION, null, null);
+				if (newDescription.eInternalContainer() == null) {
+					msgs = newDescription.eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IRECEPTION__DESCRIPTION, null, msgs);
+				}
+				if (msgs != null) msgs.dispatch();
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.IRECEPTION__DESCRIPTION, oldDescription, description));
+			}
+		}
+		return description;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IDescription basicGetDescription() {
+		return description;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public NotificationChain basicSetDescription(IDescription newDescription, NotificationChain msgs) {
+		IDescription oldDescription = description;
+		description = newDescription;
+		if (eNotificationRequired()) {
+			ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IRECEPTION__DESCRIPTION, oldDescription, newDescription);
+			if (msgs == null) msgs = notification; else msgs.add(notification);
+		}
+		return msgs;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setDescription(IDescription newDescription) {
+		if (newDescription != description) {
+			NotificationChain msgs = null;
+			if (description != null)
+				msgs = ((InternalEObject)description).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IRECEPTION__DESCRIPTION, null, msgs);
+			if (newDescription != null)
+				msgs = ((InternalEObject)newDescription).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IRECEPTION__DESCRIPTION, null, msgs);
+			msgs = basicSetDescription(newDescription, msgs);
+			if (msgs != null) msgs.dispatch();
+		}
+		else if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IRECEPTION__DESCRIPTION, newDescription, newDescription));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getObjectCreation() {
+		return objectCreation;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setObjectCreation(String newObjectCreation) {
+		String oldObjectCreation = objectCreation;
+		objectCreation = newObjectCreation;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IRECEPTION__OBJECT_CREATION, oldObjectCreation, objectCreation));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getUmlDependencyID() {
+		return umlDependencyID;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setUmlDependencyID(String newUmlDependencyID) {
+		String oldUmlDependencyID = umlDependencyID;
+		umlDependencyID = newUmlDependencyID;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IRECEPTION__UML_DEPENDENCY_ID, oldUmlDependencyID, umlDependencyID));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
+		switch (featureID) {
+			case UMLRpyPackage.IRECEPTION__DEPENDENCIES:
+				return ((InternalEList<?>)getDependencies()).basicRemove(otherEnd, msgs);
+			case UMLRpyPackage.IRECEPTION__DESCRIPTION:
+				return basicSetDescription(null, msgs);
+		}
+		return super.eInverseRemove(otherEnd, featureID, msgs);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object eGet(int featureID, boolean resolve, boolean coreType) {
+		switch (featureID) {
+			case UMLRpyPackage.IRECEPTION__ID:
+				return getId();
+			case UMLRpyPackage.IRECEPTION__MY_STATE:
+				return getMyState();
+			case UMLRpyPackage.IRECEPTION__ARGS:
+				return getArgs();
+			case UMLRpyPackage.IRECEPTION__EVENT:
+				if (resolve) return getEvent();
+				return basicGetEvent();
+			case UMLRpyPackage.IRECEPTION__MODIFIED_TIME_WEAK:
+				return getModifiedTimeWeak();
+			case UMLRpyPackage.IRECEPTION__DEPENDENCIES:
+				return getDependencies();
+			case UMLRpyPackage.IRECEPTION__LAST_ID:
+				return getLastID();
+			case UMLRpyPackage.IRECEPTION__REQUIREMEN_TRACABILITY_HANDLE:
+				return getRequiremenTracabilityHandle();
+			case UMLRpyPackage.IRECEPTION__DESCRIPTION:
+				if (resolve) return getDescription();
+				return basicGetDescription();
+			case UMLRpyPackage.IRECEPTION__OBJECT_CREATION:
+				return getObjectCreation();
+			case UMLRpyPackage.IRECEPTION__UML_DEPENDENCY_ID:
+				return getUmlDependencyID();
+		}
+		return super.eGet(featureID, resolve, coreType);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@SuppressWarnings("unchecked")
+	@Override
+	public void eSet(int featureID, Object newValue) {
+		switch (featureID) {
+			case UMLRpyPackage.IRECEPTION__ID:
+				setId((String)newValue);
+				return;
+			case UMLRpyPackage.IRECEPTION__MY_STATE:
+				setMyState((String)newValue);
+				return;
+			case UMLRpyPackage.IRECEPTION__ARGS:
+				getArgs().clear();
+				getArgs().addAll((Collection<? extends UnknownType>)newValue);
+				return;
+			case UMLRpyPackage.IRECEPTION__EVENT:
+				setEvent((IEvent)newValue);
+				return;
+			case UMLRpyPackage.IRECEPTION__MODIFIED_TIME_WEAK:
+				getModifiedTimeWeak().clear();
+				getModifiedTimeWeak().addAll((Collection<? extends String>)newValue);
+				return;
+			case UMLRpyPackage.IRECEPTION__DEPENDENCIES:
+				getDependencies().clear();
+				getDependencies().addAll((Collection<? extends IDependency>)newValue);
+				return;
+			case UMLRpyPackage.IRECEPTION__LAST_ID:
+				setLastID((String)newValue);
+				return;
+			case UMLRpyPackage.IRECEPTION__REQUIREMEN_TRACABILITY_HANDLE:
+				setRequiremenTracabilityHandle((String)newValue);
+				return;
+			case UMLRpyPackage.IRECEPTION__DESCRIPTION:
+				setDescription((IDescription)newValue);
+				return;
+			case UMLRpyPackage.IRECEPTION__OBJECT_CREATION:
+				setObjectCreation((String)newValue);
+				return;
+			case UMLRpyPackage.IRECEPTION__UML_DEPENDENCY_ID:
+				setUmlDependencyID((String)newValue);
+				return;
+		}
+		super.eSet(featureID, newValue);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void eUnset(int featureID) {
+		switch (featureID) {
+			case UMLRpyPackage.IRECEPTION__ID:
+				setId(ID_EDEFAULT);
+				return;
+			case UMLRpyPackage.IRECEPTION__MY_STATE:
+				setMyState(MY_STATE_EDEFAULT);
+				return;
+			case UMLRpyPackage.IRECEPTION__ARGS:
+				getArgs().clear();
+				return;
+			case UMLRpyPackage.IRECEPTION__EVENT:
+				setEvent((IEvent)null);
+				return;
+			case UMLRpyPackage.IRECEPTION__MODIFIED_TIME_WEAK:
+				getModifiedTimeWeak().clear();
+				return;
+			case UMLRpyPackage.IRECEPTION__DEPENDENCIES:
+				getDependencies().clear();
+				return;
+			case UMLRpyPackage.IRECEPTION__LAST_ID:
+				setLastID(LAST_ID_EDEFAULT);
+				return;
+			case UMLRpyPackage.IRECEPTION__REQUIREMEN_TRACABILITY_HANDLE:
+				setRequiremenTracabilityHandle(REQUIREMEN_TRACABILITY_HANDLE_EDEFAULT);
+				return;
+			case UMLRpyPackage.IRECEPTION__DESCRIPTION:
+				setDescription((IDescription)null);
+				return;
+			case UMLRpyPackage.IRECEPTION__OBJECT_CREATION:
+				setObjectCreation(OBJECT_CREATION_EDEFAULT);
+				return;
+			case UMLRpyPackage.IRECEPTION__UML_DEPENDENCY_ID:
+				setUmlDependencyID(UML_DEPENDENCY_ID_EDEFAULT);
+				return;
+		}
+		super.eUnset(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public boolean eIsSet(int featureID) {
+		switch (featureID) {
+			case UMLRpyPackage.IRECEPTION__ID:
+				return ID_EDEFAULT == null ? id != null : !ID_EDEFAULT.equals(id);
+			case UMLRpyPackage.IRECEPTION__MY_STATE:
+				return MY_STATE_EDEFAULT == null ? myState != null : !MY_STATE_EDEFAULT.equals(myState);
+			case UMLRpyPackage.IRECEPTION__ARGS:
+				return args != null && !args.isEmpty();
+			case UMLRpyPackage.IRECEPTION__EVENT:
+				return event != null;
+			case UMLRpyPackage.IRECEPTION__MODIFIED_TIME_WEAK:
+				return modifiedTimeWeak != null && !modifiedTimeWeak.isEmpty();
+			case UMLRpyPackage.IRECEPTION__DEPENDENCIES:
+				return dependencies != null && !dependencies.isEmpty();
+			case UMLRpyPackage.IRECEPTION__LAST_ID:
+				return LAST_ID_EDEFAULT == null ? lastID != null : !LAST_ID_EDEFAULT.equals(lastID);
+			case UMLRpyPackage.IRECEPTION__REQUIREMEN_TRACABILITY_HANDLE:
+				return REQUIREMEN_TRACABILITY_HANDLE_EDEFAULT == null ? requiremenTracabilityHandle != null : !REQUIREMEN_TRACABILITY_HANDLE_EDEFAULT.equals(requiremenTracabilityHandle);
+			case UMLRpyPackage.IRECEPTION__DESCRIPTION:
+				return description != null;
+			case UMLRpyPackage.IRECEPTION__OBJECT_CREATION:
+				return OBJECT_CREATION_EDEFAULT == null ? objectCreation != null : !OBJECT_CREATION_EDEFAULT.equals(objectCreation);
+			case UMLRpyPackage.IRECEPTION__UML_DEPENDENCY_ID:
+				return UML_DEPENDENCY_ID_EDEFAULT == null ? umlDependencyID != null : !UML_DEPENDENCY_ID_EDEFAULT.equals(umlDependencyID);
+		}
+		return super.eIsSet(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String toString() {
+		if (eIsProxy()) return super.toString();
+
+		StringBuffer result = new StringBuffer(super.toString());
+		result.append(" (id: "); //$NON-NLS-1$
+		result.append(id);
+		result.append(", myState: "); //$NON-NLS-1$
+		result.append(myState);
+		result.append(", modifiedTimeWeak: "); //$NON-NLS-1$
+		result.append(modifiedTimeWeak);
+		result.append(", lastID: "); //$NON-NLS-1$
+		result.append(lastID);
+		result.append(", requiremenTracabilityHandle: "); //$NON-NLS-1$
+		result.append(requiremenTracabilityHandle);
+		result.append(", objectCreation: "); //$NON-NLS-1$
+		result.append(objectCreation);
+		result.append(", umlDependencyID: "); //$NON-NLS-1$
+		result.append(umlDependencyID);
+		result.append(')');
+		return result.toString();
+	}
+
+} //IReceptionImpl
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/IReferenceActivityImpl.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/IReferenceActivityImpl.java
new file mode 100755
index 0000000..901d00d
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/IReferenceActivityImpl.java
@@ -0,0 +1,687 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.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.interoperability.rpy.rpymetamodel.IActivityGraph;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IClassifier;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IReferenceActivity;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IState;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ISwimlane;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>IReference Activity</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * </p>
+ * <ul>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IReferenceActivityImpl#getId <em>Id</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IReferenceActivityImpl#getName <em>Name</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IReferenceActivityImpl#getStereotypes <em>Stereotypes</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IReferenceActivityImpl#getModifiedTimeWeak <em>Modified Time Weak</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IReferenceActivityImpl#getParent <em>Parent</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IReferenceActivityImpl#getStateType <em>State Type</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IReferenceActivityImpl#getDefaultTrans <em>Default Trans</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IReferenceActivityImpl#getSwimlane <em>Swimlane</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IReferenceActivityImpl#getReferencedActivity <em>Referenced Activity</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IReferenceActivityImpl#getMyState <em>My State</em>}</li>
+ * </ul>
+ *
+ * @generated
+ */
+public class IReferenceActivityImpl extends DependsOnTypeImpl implements IReferenceActivity {
+	/**
+	 * The default value of the '{@link #getId() <em>Id</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getId()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String ID_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getId() <em>Id</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getId()
+	 * @generated
+	 * @ordered
+	 */
+	protected String id = ID_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getName() <em>Name</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getName()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String NAME_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getName() <em>Name</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getName()
+	 * @generated
+	 * @ordered
+	 */
+	protected String name = NAME_EDEFAULT;
+
+	/**
+	 * The cached value of the '{@link #getStereotypes() <em>Stereotypes</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getStereotypes()
+	 * @generated
+	 * @ordered
+	 */
+	protected IClassifier stereotypes;
+
+	/**
+	 * The default value of the '{@link #getModifiedTimeWeak() <em>Modified Time Weak</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getModifiedTimeWeak()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String MODIFIED_TIME_WEAK_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getModifiedTimeWeak() <em>Modified Time Weak</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getModifiedTimeWeak()
+	 * @generated
+	 * @ordered
+	 */
+	protected String modifiedTimeWeak = MODIFIED_TIME_WEAK_EDEFAULT;
+
+	/**
+	 * The cached value of the '{@link #getParent() <em>Parent</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getParent()
+	 * @generated
+	 * @ordered
+	 */
+	protected IState parent;
+
+	/**
+	 * The default value of the '{@link #getStateType() <em>State Type</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getStateType()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String STATE_TYPE_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getStateType() <em>State Type</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getStateType()
+	 * @generated
+	 * @ordered
+	 */
+	protected String stateType = STATE_TYPE_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getDefaultTrans() <em>Default Trans</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getDefaultTrans()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String DEFAULT_TRANS_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getDefaultTrans() <em>Default Trans</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getDefaultTrans()
+	 * @generated
+	 * @ordered
+	 */
+	protected String defaultTrans = DEFAULT_TRANS_EDEFAULT;
+
+	/**
+	 * The cached value of the '{@link #getSwimlane() <em>Swimlane</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getSwimlane()
+	 * @generated
+	 * @ordered
+	 */
+	protected ISwimlane swimlane;
+
+	/**
+	 * The cached value of the '{@link #getReferencedActivity() <em>Referenced Activity</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getReferencedActivity()
+	 * @generated
+	 * @ordered
+	 */
+	protected IActivityGraph referencedActivity;
+
+	/**
+	 * The default value of the '{@link #getMyState() <em>My State</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getMyState()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String MY_STATE_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getMyState() <em>My State</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getMyState()
+	 * @generated
+	 * @ordered
+	 */
+	protected String myState = MY_STATE_EDEFAULT;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected IReferenceActivityImpl() {
+		super();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EClass eStaticClass() {
+		return UMLRpyPackage.eINSTANCE.getIReferenceActivity();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getId() {
+		return id;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setId(String newId) {
+		String oldId = id;
+		id = newId;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IREFERENCE_ACTIVITY__ID, oldId, id));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getName() {
+		return name;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setName(String newName) {
+		String oldName = name;
+		name = newName;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IREFERENCE_ACTIVITY__NAME, oldName, name));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IClassifier getStereotypes() {
+		if (stereotypes != null && stereotypes.eIsProxy()) {
+			InternalEObject oldStereotypes = (InternalEObject)stereotypes;
+			stereotypes = (IClassifier)eResolveProxy(oldStereotypes);
+			if (stereotypes != oldStereotypes) {
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.IREFERENCE_ACTIVITY__STEREOTYPES, oldStereotypes, stereotypes));
+			}
+		}
+		return stereotypes;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IClassifier basicGetStereotypes() {
+		return stereotypes;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setStereotypes(IClassifier newStereotypes) {
+		IClassifier oldStereotypes = stereotypes;
+		stereotypes = newStereotypes;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IREFERENCE_ACTIVITY__STEREOTYPES, oldStereotypes, stereotypes));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getModifiedTimeWeak() {
+		return modifiedTimeWeak;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setModifiedTimeWeak(String newModifiedTimeWeak) {
+		String oldModifiedTimeWeak = modifiedTimeWeak;
+		modifiedTimeWeak = newModifiedTimeWeak;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IREFERENCE_ACTIVITY__MODIFIED_TIME_WEAK, oldModifiedTimeWeak, modifiedTimeWeak));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IState getParent() {
+		if (parent != null && parent.eIsProxy()) {
+			InternalEObject oldParent = (InternalEObject)parent;
+			parent = (IState)eResolveProxy(oldParent);
+			if (parent != oldParent) {
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.IREFERENCE_ACTIVITY__PARENT, oldParent, parent));
+			}
+		}
+		return parent;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IState basicGetParent() {
+		return parent;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setParent(IState newParent) {
+		IState oldParent = parent;
+		parent = newParent;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IREFERENCE_ACTIVITY__PARENT, oldParent, parent));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getStateType() {
+		return stateType;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setStateType(String newStateType) {
+		String oldStateType = stateType;
+		stateType = newStateType;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IREFERENCE_ACTIVITY__STATE_TYPE, oldStateType, stateType));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getDefaultTrans() {
+		return defaultTrans;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setDefaultTrans(String newDefaultTrans) {
+		String oldDefaultTrans = defaultTrans;
+		defaultTrans = newDefaultTrans;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IREFERENCE_ACTIVITY__DEFAULT_TRANS, oldDefaultTrans, defaultTrans));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public ISwimlane getSwimlane() {
+		if (swimlane != null && swimlane.eIsProxy()) {
+			InternalEObject oldSwimlane = (InternalEObject)swimlane;
+			swimlane = (ISwimlane)eResolveProxy(oldSwimlane);
+			if (swimlane != oldSwimlane) {
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.IREFERENCE_ACTIVITY__SWIMLANE, oldSwimlane, swimlane));
+			}
+		}
+		return swimlane;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public ISwimlane basicGetSwimlane() {
+		return swimlane;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setSwimlane(ISwimlane newSwimlane) {
+		ISwimlane oldSwimlane = swimlane;
+		swimlane = newSwimlane;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IREFERENCE_ACTIVITY__SWIMLANE, oldSwimlane, swimlane));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IActivityGraph getReferencedActivity() {
+		if (referencedActivity != null && referencedActivity.eIsProxy()) {
+			InternalEObject oldReferencedActivity = (InternalEObject)referencedActivity;
+			referencedActivity = (IActivityGraph)eResolveProxy(oldReferencedActivity);
+			if (referencedActivity != oldReferencedActivity) {
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.IREFERENCE_ACTIVITY__REFERENCED_ACTIVITY, oldReferencedActivity, referencedActivity));
+			}
+		}
+		return referencedActivity;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IActivityGraph basicGetReferencedActivity() {
+		return referencedActivity;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setReferencedActivity(IActivityGraph newReferencedActivity) {
+		IActivityGraph oldReferencedActivity = referencedActivity;
+		referencedActivity = newReferencedActivity;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IREFERENCE_ACTIVITY__REFERENCED_ACTIVITY, oldReferencedActivity, referencedActivity));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getMyState() {
+		return myState;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setMyState(String newMyState) {
+		String oldMyState = myState;
+		myState = newMyState;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IREFERENCE_ACTIVITY__MY_STATE, oldMyState, myState));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object eGet(int featureID, boolean resolve, boolean coreType) {
+		switch (featureID) {
+			case UMLRpyPackage.IREFERENCE_ACTIVITY__ID:
+				return getId();
+			case UMLRpyPackage.IREFERENCE_ACTIVITY__NAME:
+				return getName();
+			case UMLRpyPackage.IREFERENCE_ACTIVITY__STEREOTYPES:
+				if (resolve) return getStereotypes();
+				return basicGetStereotypes();
+			case UMLRpyPackage.IREFERENCE_ACTIVITY__MODIFIED_TIME_WEAK:
+				return getModifiedTimeWeak();
+			case UMLRpyPackage.IREFERENCE_ACTIVITY__PARENT:
+				if (resolve) return getParent();
+				return basicGetParent();
+			case UMLRpyPackage.IREFERENCE_ACTIVITY__STATE_TYPE:
+				return getStateType();
+			case UMLRpyPackage.IREFERENCE_ACTIVITY__DEFAULT_TRANS:
+				return getDefaultTrans();
+			case UMLRpyPackage.IREFERENCE_ACTIVITY__SWIMLANE:
+				if (resolve) return getSwimlane();
+				return basicGetSwimlane();
+			case UMLRpyPackage.IREFERENCE_ACTIVITY__REFERENCED_ACTIVITY:
+				if (resolve) return getReferencedActivity();
+				return basicGetReferencedActivity();
+			case UMLRpyPackage.IREFERENCE_ACTIVITY__MY_STATE:
+				return getMyState();
+		}
+		return super.eGet(featureID, resolve, coreType);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void eSet(int featureID, Object newValue) {
+		switch (featureID) {
+			case UMLRpyPackage.IREFERENCE_ACTIVITY__ID:
+				setId((String)newValue);
+				return;
+			case UMLRpyPackage.IREFERENCE_ACTIVITY__NAME:
+				setName((String)newValue);
+				return;
+			case UMLRpyPackage.IREFERENCE_ACTIVITY__STEREOTYPES:
+				setStereotypes((IClassifier)newValue);
+				return;
+			case UMLRpyPackage.IREFERENCE_ACTIVITY__MODIFIED_TIME_WEAK:
+				setModifiedTimeWeak((String)newValue);
+				return;
+			case UMLRpyPackage.IREFERENCE_ACTIVITY__PARENT:
+				setParent((IState)newValue);
+				return;
+			case UMLRpyPackage.IREFERENCE_ACTIVITY__STATE_TYPE:
+				setStateType((String)newValue);
+				return;
+			case UMLRpyPackage.IREFERENCE_ACTIVITY__DEFAULT_TRANS:
+				setDefaultTrans((String)newValue);
+				return;
+			case UMLRpyPackage.IREFERENCE_ACTIVITY__SWIMLANE:
+				setSwimlane((ISwimlane)newValue);
+				return;
+			case UMLRpyPackage.IREFERENCE_ACTIVITY__REFERENCED_ACTIVITY:
+				setReferencedActivity((IActivityGraph)newValue);
+				return;
+			case UMLRpyPackage.IREFERENCE_ACTIVITY__MY_STATE:
+				setMyState((String)newValue);
+				return;
+		}
+		super.eSet(featureID, newValue);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void eUnset(int featureID) {
+		switch (featureID) {
+			case UMLRpyPackage.IREFERENCE_ACTIVITY__ID:
+				setId(ID_EDEFAULT);
+				return;
+			case UMLRpyPackage.IREFERENCE_ACTIVITY__NAME:
+				setName(NAME_EDEFAULT);
+				return;
+			case UMLRpyPackage.IREFERENCE_ACTIVITY__STEREOTYPES:
+				setStereotypes((IClassifier)null);
+				return;
+			case UMLRpyPackage.IREFERENCE_ACTIVITY__MODIFIED_TIME_WEAK:
+				setModifiedTimeWeak(MODIFIED_TIME_WEAK_EDEFAULT);
+				return;
+			case UMLRpyPackage.IREFERENCE_ACTIVITY__PARENT:
+				setParent((IState)null);
+				return;
+			case UMLRpyPackage.IREFERENCE_ACTIVITY__STATE_TYPE:
+				setStateType(STATE_TYPE_EDEFAULT);
+				return;
+			case UMLRpyPackage.IREFERENCE_ACTIVITY__DEFAULT_TRANS:
+				setDefaultTrans(DEFAULT_TRANS_EDEFAULT);
+				return;
+			case UMLRpyPackage.IREFERENCE_ACTIVITY__SWIMLANE:
+				setSwimlane((ISwimlane)null);
+				return;
+			case UMLRpyPackage.IREFERENCE_ACTIVITY__REFERENCED_ACTIVITY:
+				setReferencedActivity((IActivityGraph)null);
+				return;
+			case UMLRpyPackage.IREFERENCE_ACTIVITY__MY_STATE:
+				setMyState(MY_STATE_EDEFAULT);
+				return;
+		}
+		super.eUnset(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public boolean eIsSet(int featureID) {
+		switch (featureID) {
+			case UMLRpyPackage.IREFERENCE_ACTIVITY__ID:
+				return ID_EDEFAULT == null ? id != null : !ID_EDEFAULT.equals(id);
+			case UMLRpyPackage.IREFERENCE_ACTIVITY__NAME:
+				return NAME_EDEFAULT == null ? name != null : !NAME_EDEFAULT.equals(name);
+			case UMLRpyPackage.IREFERENCE_ACTIVITY__STEREOTYPES:
+				return stereotypes != null;
+			case UMLRpyPackage.IREFERENCE_ACTIVITY__MODIFIED_TIME_WEAK:
+				return MODIFIED_TIME_WEAK_EDEFAULT == null ? modifiedTimeWeak != null : !MODIFIED_TIME_WEAK_EDEFAULT.equals(modifiedTimeWeak);
+			case UMLRpyPackage.IREFERENCE_ACTIVITY__PARENT:
+				return parent != null;
+			case UMLRpyPackage.IREFERENCE_ACTIVITY__STATE_TYPE:
+				return STATE_TYPE_EDEFAULT == null ? stateType != null : !STATE_TYPE_EDEFAULT.equals(stateType);
+			case UMLRpyPackage.IREFERENCE_ACTIVITY__DEFAULT_TRANS:
+				return DEFAULT_TRANS_EDEFAULT == null ? defaultTrans != null : !DEFAULT_TRANS_EDEFAULT.equals(defaultTrans);
+			case UMLRpyPackage.IREFERENCE_ACTIVITY__SWIMLANE:
+				return swimlane != null;
+			case UMLRpyPackage.IREFERENCE_ACTIVITY__REFERENCED_ACTIVITY:
+				return referencedActivity != null;
+			case UMLRpyPackage.IREFERENCE_ACTIVITY__MY_STATE:
+				return MY_STATE_EDEFAULT == null ? myState != null : !MY_STATE_EDEFAULT.equals(myState);
+		}
+		return super.eIsSet(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String toString() {
+		if (eIsProxy()) return super.toString();
+
+		StringBuffer result = new StringBuffer(super.toString());
+		result.append(" (id: "); //$NON-NLS-1$
+		result.append(id);
+		result.append(", name: "); //$NON-NLS-1$
+		result.append(name);
+		result.append(", modifiedTimeWeak: "); //$NON-NLS-1$
+		result.append(modifiedTimeWeak);
+		result.append(", stateType: "); //$NON-NLS-1$
+		result.append(stateType);
+		result.append(", defaultTrans: "); //$NON-NLS-1$
+		result.append(defaultTrans);
+		result.append(", myState: "); //$NON-NLS-1$
+		result.append(myState);
+		result.append(')');
+		return result.toString();
+	}
+
+} //IReferenceActivityImpl
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/IRelationImpl.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/IRelationImpl.java
new file mode 100755
index 0000000..9be56b9
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/IRelationImpl.java
@@ -0,0 +1,47 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl;
+
+import org.eclipse.emf.ecore.EClass;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IRelation;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>IRelation</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+public class IRelationImpl extends IUnitImpl implements IRelation {
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected IRelationImpl() {
+		super();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EClass eStaticClass() {
+		return UMLRpyPackage.eINSTANCE.getIRelation();
+	}
+
+} //IRelationImpl
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/IRequirementImpl.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/IRequirementImpl.java
new file mode 100755
index 0000000..e3c883e
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/IRequirementImpl.java
@@ -0,0 +1,716 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl;
+
+import java.util.Collection;
+
+import org.eclipse.emf.common.notify.Notification;
+import org.eclipse.emf.common.notify.NotificationChain;
+
+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.EDataTypeEList;
+import org.eclipse.emf.ecore.util.EObjectContainmentEList;
+import org.eclipse.emf.ecore.util.InternalEList;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IAnchor;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IDependency;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IDiagram;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMHyperLink;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IRequirement;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IStereotype;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>IRequirement</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * </p>
+ * <ul>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IRequirementImpl#getId <em>Id</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IRequirementImpl#getName <em>Name</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IRequirementImpl#getAnnotations <em>Annotations</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IRequirementImpl#getMyState <em>My State</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IRequirementImpl#getLastID <em>Last ID</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IRequirementImpl#getStereotypes <em>Stereotypes</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IRequirementImpl#getModifiedTimeWeak <em>Modified Time Weak</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IRequirementImpl#getReqID <em>Req ID</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IRequirementImpl#getDependencies <em>Dependencies</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IRequirementImpl#getAnchors <em>Anchors</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IRequirementImpl#getHyperLinks <em>Hyper Links</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IRequirementImpl#getTheMainDiagram <em>The Main Diagram</em>}</li>
+ * </ul>
+ *
+ * @generated
+ */
+public class IRequirementImpl extends IAnnotationImpl implements IRequirement {
+	/**
+	 * The default value of the '{@link #getId() <em>Id</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getId()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String ID_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getId() <em>Id</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getId()
+	 * @generated
+	 * @ordered
+	 */
+	protected String id = ID_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getName() <em>Name</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getName()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String NAME_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getName() <em>Name</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getName()
+	 * @generated
+	 * @ordered
+	 */
+	protected String name = NAME_EDEFAULT;
+
+	/**
+	 * The cached value of the '{@link #getAnnotations() <em>Annotations</em>}' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getAnnotations()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<IRequirement> annotations;
+
+	/**
+	 * The default value of the '{@link #getMyState() <em>My State</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getMyState()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String MY_STATE_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getMyState() <em>My State</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getMyState()
+	 * @generated
+	 * @ordered
+	 */
+	protected String myState = MY_STATE_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getLastID() <em>Last ID</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getLastID()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String LAST_ID_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getLastID() <em>Last ID</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getLastID()
+	 * @generated
+	 * @ordered
+	 */
+	protected String lastID = LAST_ID_EDEFAULT;
+
+	/**
+	 * The cached value of the '{@link #getStereotypes() <em>Stereotypes</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getStereotypes()
+	 * @generated
+	 * @ordered
+	 */
+	protected IStereotype stereotypes;
+
+	/**
+	 * The cached value of the '{@link #getModifiedTimeWeak() <em>Modified Time Weak</em>}' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getModifiedTimeWeak()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<String> modifiedTimeWeak;
+
+	/**
+	 * The default value of the '{@link #getReqID() <em>Req ID</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getReqID()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String REQ_ID_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getReqID() <em>Req ID</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getReqID()
+	 * @generated
+	 * @ordered
+	 */
+	protected String reqID = REQ_ID_EDEFAULT;
+
+	/**
+	 * The cached value of the '{@link #getDependencies() <em>Dependencies</em>}' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getDependencies()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<IDependency> dependencies;
+
+	/**
+	 * The cached value of the '{@link #getAnchors() <em>Anchors</em>}' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getAnchors()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<IAnchor> anchors;
+
+	/**
+	 * The cached value of the '{@link #getHyperLinks() <em>Hyper Links</em>}' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getHyperLinks()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<IMHyperLink> hyperLinks;
+
+	/**
+	 * The cached value of the '{@link #getTheMainDiagram() <em>The Main Diagram</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getTheMainDiagram()
+	 * @generated
+	 * @ordered
+	 */
+	protected IDiagram theMainDiagram;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected IRequirementImpl() {
+		super();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EClass eStaticClass() {
+		return UMLRpyPackage.eINSTANCE.getIRequirement();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getId() {
+		return id;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setId(String newId) {
+		String oldId = id;
+		id = newId;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IREQUIREMENT__ID, oldId, id));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getName() {
+		return name;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setName(String newName) {
+		String oldName = name;
+		name = newName;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IREQUIREMENT__NAME, oldName, name));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<IRequirement> getAnnotations() {
+		if (annotations == null) {
+			annotations = new EObjectContainmentEList.Resolving<IRequirement>(IRequirement.class, this, UMLRpyPackage.IREQUIREMENT__ANNOTATIONS);
+		}
+		return annotations;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getMyState() {
+		return myState;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setMyState(String newMyState) {
+		String oldMyState = myState;
+		myState = newMyState;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IREQUIREMENT__MY_STATE, oldMyState, myState));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getLastID() {
+		return lastID;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setLastID(String newLastID) {
+		String oldLastID = lastID;
+		lastID = newLastID;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IREQUIREMENT__LAST_ID, oldLastID, lastID));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IStereotype getStereotypes() {
+		if (stereotypes != null && stereotypes.eIsProxy()) {
+			InternalEObject oldStereotypes = (InternalEObject)stereotypes;
+			stereotypes = (IStereotype)eResolveProxy(oldStereotypes);
+			if (stereotypes != oldStereotypes) {
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.IREQUIREMENT__STEREOTYPES, oldStereotypes, stereotypes));
+			}
+		}
+		return stereotypes;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IStereotype basicGetStereotypes() {
+		return stereotypes;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setStereotypes(IStereotype newStereotypes) {
+		IStereotype oldStereotypes = stereotypes;
+		stereotypes = newStereotypes;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IREQUIREMENT__STEREOTYPES, oldStereotypes, stereotypes));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<String> getModifiedTimeWeak() {
+		if (modifiedTimeWeak == null) {
+			modifiedTimeWeak = new EDataTypeEList<String>(String.class, this, UMLRpyPackage.IREQUIREMENT__MODIFIED_TIME_WEAK);
+		}
+		return modifiedTimeWeak;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getReqID() {
+		return reqID;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setReqID(String newReqID) {
+		String oldReqID = reqID;
+		reqID = newReqID;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IREQUIREMENT__REQ_ID, oldReqID, reqID));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<IDependency> getDependencies() {
+		if (dependencies == null) {
+			dependencies = new EObjectContainmentEList.Resolving<IDependency>(IDependency.class, this, UMLRpyPackage.IREQUIREMENT__DEPENDENCIES);
+		}
+		return dependencies;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<IAnchor> getAnchors() {
+		if (anchors == null) {
+			anchors = new EObjectContainmentEList.Resolving<IAnchor>(IAnchor.class, this, UMLRpyPackage.IREQUIREMENT__ANCHORS);
+		}
+		return anchors;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<IMHyperLink> getHyperLinks() {
+		if (hyperLinks == null) {
+			hyperLinks = new EObjectContainmentEList.Resolving<IMHyperLink>(IMHyperLink.class, this, UMLRpyPackage.IREQUIREMENT__HYPER_LINKS);
+		}
+		return hyperLinks;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IDiagram getTheMainDiagram() {
+		if (theMainDiagram != null && theMainDiagram.eIsProxy()) {
+			InternalEObject oldTheMainDiagram = (InternalEObject)theMainDiagram;
+			theMainDiagram = (IDiagram)eResolveProxy(oldTheMainDiagram);
+			if (theMainDiagram != oldTheMainDiagram) {
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.IREQUIREMENT__THE_MAIN_DIAGRAM, oldTheMainDiagram, theMainDiagram));
+			}
+		}
+		return theMainDiagram;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IDiagram basicGetTheMainDiagram() {
+		return theMainDiagram;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setTheMainDiagram(IDiagram newTheMainDiagram) {
+		IDiagram oldTheMainDiagram = theMainDiagram;
+		theMainDiagram = newTheMainDiagram;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IREQUIREMENT__THE_MAIN_DIAGRAM, oldTheMainDiagram, theMainDiagram));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
+		switch (featureID) {
+			case UMLRpyPackage.IREQUIREMENT__ANNOTATIONS:
+				return ((InternalEList<?>)getAnnotations()).basicRemove(otherEnd, msgs);
+			case UMLRpyPackage.IREQUIREMENT__DEPENDENCIES:
+				return ((InternalEList<?>)getDependencies()).basicRemove(otherEnd, msgs);
+			case UMLRpyPackage.IREQUIREMENT__ANCHORS:
+				return ((InternalEList<?>)getAnchors()).basicRemove(otherEnd, msgs);
+			case UMLRpyPackage.IREQUIREMENT__HYPER_LINKS:
+				return ((InternalEList<?>)getHyperLinks()).basicRemove(otherEnd, msgs);
+		}
+		return super.eInverseRemove(otherEnd, featureID, msgs);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object eGet(int featureID, boolean resolve, boolean coreType) {
+		switch (featureID) {
+			case UMLRpyPackage.IREQUIREMENT__ID:
+				return getId();
+			case UMLRpyPackage.IREQUIREMENT__NAME:
+				return getName();
+			case UMLRpyPackage.IREQUIREMENT__ANNOTATIONS:
+				return getAnnotations();
+			case UMLRpyPackage.IREQUIREMENT__MY_STATE:
+				return getMyState();
+			case UMLRpyPackage.IREQUIREMENT__LAST_ID:
+				return getLastID();
+			case UMLRpyPackage.IREQUIREMENT__STEREOTYPES:
+				if (resolve) return getStereotypes();
+				return basicGetStereotypes();
+			case UMLRpyPackage.IREQUIREMENT__MODIFIED_TIME_WEAK:
+				return getModifiedTimeWeak();
+			case UMLRpyPackage.IREQUIREMENT__REQ_ID:
+				return getReqID();
+			case UMLRpyPackage.IREQUIREMENT__DEPENDENCIES:
+				return getDependencies();
+			case UMLRpyPackage.IREQUIREMENT__ANCHORS:
+				return getAnchors();
+			case UMLRpyPackage.IREQUIREMENT__HYPER_LINKS:
+				return getHyperLinks();
+			case UMLRpyPackage.IREQUIREMENT__THE_MAIN_DIAGRAM:
+				if (resolve) return getTheMainDiagram();
+				return basicGetTheMainDiagram();
+		}
+		return super.eGet(featureID, resolve, coreType);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@SuppressWarnings("unchecked")
+	@Override
+	public void eSet(int featureID, Object newValue) {
+		switch (featureID) {
+			case UMLRpyPackage.IREQUIREMENT__ID:
+				setId((String)newValue);
+				return;
+			case UMLRpyPackage.IREQUIREMENT__NAME:
+				setName((String)newValue);
+				return;
+			case UMLRpyPackage.IREQUIREMENT__ANNOTATIONS:
+				getAnnotations().clear();
+				getAnnotations().addAll((Collection<? extends IRequirement>)newValue);
+				return;
+			case UMLRpyPackage.IREQUIREMENT__MY_STATE:
+				setMyState((String)newValue);
+				return;
+			case UMLRpyPackage.IREQUIREMENT__LAST_ID:
+				setLastID((String)newValue);
+				return;
+			case UMLRpyPackage.IREQUIREMENT__STEREOTYPES:
+				setStereotypes((IStereotype)newValue);
+				return;
+			case UMLRpyPackage.IREQUIREMENT__MODIFIED_TIME_WEAK:
+				getModifiedTimeWeak().clear();
+				getModifiedTimeWeak().addAll((Collection<? extends String>)newValue);
+				return;
+			case UMLRpyPackage.IREQUIREMENT__REQ_ID:
+				setReqID((String)newValue);
+				return;
+			case UMLRpyPackage.IREQUIREMENT__DEPENDENCIES:
+				getDependencies().clear();
+				getDependencies().addAll((Collection<? extends IDependency>)newValue);
+				return;
+			case UMLRpyPackage.IREQUIREMENT__ANCHORS:
+				getAnchors().clear();
+				getAnchors().addAll((Collection<? extends IAnchor>)newValue);
+				return;
+			case UMLRpyPackage.IREQUIREMENT__HYPER_LINKS:
+				getHyperLinks().clear();
+				getHyperLinks().addAll((Collection<? extends IMHyperLink>)newValue);
+				return;
+			case UMLRpyPackage.IREQUIREMENT__THE_MAIN_DIAGRAM:
+				setTheMainDiagram((IDiagram)newValue);
+				return;
+		}
+		super.eSet(featureID, newValue);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void eUnset(int featureID) {
+		switch (featureID) {
+			case UMLRpyPackage.IREQUIREMENT__ID:
+				setId(ID_EDEFAULT);
+				return;
+			case UMLRpyPackage.IREQUIREMENT__NAME:
+				setName(NAME_EDEFAULT);
+				return;
+			case UMLRpyPackage.IREQUIREMENT__ANNOTATIONS:
+				getAnnotations().clear();
+				return;
+			case UMLRpyPackage.IREQUIREMENT__MY_STATE:
+				setMyState(MY_STATE_EDEFAULT);
+				return;
+			case UMLRpyPackage.IREQUIREMENT__LAST_ID:
+				setLastID(LAST_ID_EDEFAULT);
+				return;
+			case UMLRpyPackage.IREQUIREMENT__STEREOTYPES:
+				setStereotypes((IStereotype)null);
+				return;
+			case UMLRpyPackage.IREQUIREMENT__MODIFIED_TIME_WEAK:
+				getModifiedTimeWeak().clear();
+				return;
+			case UMLRpyPackage.IREQUIREMENT__REQ_ID:
+				setReqID(REQ_ID_EDEFAULT);
+				return;
+			case UMLRpyPackage.IREQUIREMENT__DEPENDENCIES:
+				getDependencies().clear();
+				return;
+			case UMLRpyPackage.IREQUIREMENT__ANCHORS:
+				getAnchors().clear();
+				return;
+			case UMLRpyPackage.IREQUIREMENT__HYPER_LINKS:
+				getHyperLinks().clear();
+				return;
+			case UMLRpyPackage.IREQUIREMENT__THE_MAIN_DIAGRAM:
+				setTheMainDiagram((IDiagram)null);
+				return;
+		}
+		super.eUnset(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public boolean eIsSet(int featureID) {
+		switch (featureID) {
+			case UMLRpyPackage.IREQUIREMENT__ID:
+				return ID_EDEFAULT == null ? id != null : !ID_EDEFAULT.equals(id);
+			case UMLRpyPackage.IREQUIREMENT__NAME:
+				return NAME_EDEFAULT == null ? name != null : !NAME_EDEFAULT.equals(name);
+			case UMLRpyPackage.IREQUIREMENT__ANNOTATIONS:
+				return annotations != null && !annotations.isEmpty();
+			case UMLRpyPackage.IREQUIREMENT__MY_STATE:
+				return MY_STATE_EDEFAULT == null ? myState != null : !MY_STATE_EDEFAULT.equals(myState);
+			case UMLRpyPackage.IREQUIREMENT__LAST_ID:
+				return LAST_ID_EDEFAULT == null ? lastID != null : !LAST_ID_EDEFAULT.equals(lastID);
+			case UMLRpyPackage.IREQUIREMENT__STEREOTYPES:
+				return stereotypes != null;
+			case UMLRpyPackage.IREQUIREMENT__MODIFIED_TIME_WEAK:
+				return modifiedTimeWeak != null && !modifiedTimeWeak.isEmpty();
+			case UMLRpyPackage.IREQUIREMENT__REQ_ID:
+				return REQ_ID_EDEFAULT == null ? reqID != null : !REQ_ID_EDEFAULT.equals(reqID);
+			case UMLRpyPackage.IREQUIREMENT__DEPENDENCIES:
+				return dependencies != null && !dependencies.isEmpty();
+			case UMLRpyPackage.IREQUIREMENT__ANCHORS:
+				return anchors != null && !anchors.isEmpty();
+			case UMLRpyPackage.IREQUIREMENT__HYPER_LINKS:
+				return hyperLinks != null && !hyperLinks.isEmpty();
+			case UMLRpyPackage.IREQUIREMENT__THE_MAIN_DIAGRAM:
+				return theMainDiagram != null;
+		}
+		return super.eIsSet(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String toString() {
+		if (eIsProxy()) return super.toString();
+
+		StringBuffer result = new StringBuffer(super.toString());
+		result.append(" (id: "); //$NON-NLS-1$
+		result.append(id);
+		result.append(", name: "); //$NON-NLS-1$
+		result.append(name);
+		result.append(", myState: "); //$NON-NLS-1$
+		result.append(myState);
+		result.append(", lastID: "); //$NON-NLS-1$
+		result.append(lastID);
+		result.append(", modifiedTimeWeak: "); //$NON-NLS-1$
+		result.append(modifiedTimeWeak);
+		result.append(", reqID: "); //$NON-NLS-1$
+		result.append(reqID);
+		result.append(')');
+		return result.toString();
+	}
+
+} //IRequirementImpl
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/ISendActionImpl.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/ISendActionImpl.java
new file mode 100755
index 0000000..c45bb2a
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/ISendActionImpl.java
@@ -0,0 +1,383 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl;
+
+import java.util.Collection;
+
+import org.eclipse.emf.common.notify.Notification;
+import org.eclipse.emf.common.notify.NotificationChain;
+
+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.EObjectContainmentEList;
+import org.eclipse.emf.ecore.util.InternalEList;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IEventHandle;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IHandleWithData;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ISendAction;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.M_hTargetType;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>ISend Action</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * </p>
+ * <ul>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.ISendActionImpl#getM_hTarget <em>MhTarget</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.ISendActionImpl#getM_hEvent <em>MhEvent</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.ISendActionImpl#getArgValCount <em>Arg Val Count</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.ISendActionImpl#getGraphElements <em>Graph Elements</em>}</li>
+ * </ul>
+ *
+ * @generated
+ */
+public class ISendActionImpl extends IActionImpl implements ISendAction {
+	/**
+	 * The cached value of the '{@link #getM_hTarget() <em>MhTarget</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_hTarget()
+	 * @generated
+	 * @ordered
+	 */
+	protected M_hTargetType m_hTarget;
+
+	/**
+	 * The cached value of the '{@link #getM_hEvent() <em>MhEvent</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM_hEvent()
+	 * @generated
+	 * @ordered
+	 */
+	protected IEventHandle m_hEvent;
+
+	/**
+	 * The default value of the '{@link #getArgValCount() <em>Arg Val Count</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getArgValCount()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String ARG_VAL_COUNT_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getArgValCount() <em>Arg Val Count</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getArgValCount()
+	 * @generated
+	 * @ordered
+	 */
+	protected String argValCount = ARG_VAL_COUNT_EDEFAULT;
+
+	/**
+	 * The cached value of the '{@link #getGraphElements() <em>Graph Elements</em>}' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getGraphElements()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<IHandleWithData> graphElements;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected ISendActionImpl() {
+		super();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EClass eStaticClass() {
+		return UMLRpyPackage.eINSTANCE.getISendAction();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public M_hTargetType getM_hTarget() {
+		if (m_hTarget != null && m_hTarget.eIsProxy()) {
+			InternalEObject oldM_hTarget = (InternalEObject)m_hTarget;
+			m_hTarget = (M_hTargetType)eResolveProxy(oldM_hTarget);
+			if (m_hTarget != oldM_hTarget) {
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.ISEND_ACTION__MHTARGET, oldM_hTarget, m_hTarget));
+			}
+		}
+		return m_hTarget;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public M_hTargetType basicGetM_hTarget() {
+		return m_hTarget;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_hTarget(M_hTargetType newM_hTarget) {
+		M_hTargetType oldM_hTarget = m_hTarget;
+		m_hTarget = newM_hTarget;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.ISEND_ACTION__MHTARGET, oldM_hTarget, m_hTarget));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IEventHandle getM_hEvent() {
+		if (m_hEvent != null && m_hEvent.eIsProxy()) {
+			InternalEObject oldM_hEvent = (InternalEObject)m_hEvent;
+			m_hEvent = (IEventHandle)eResolveProxy(oldM_hEvent);
+			if (m_hEvent != oldM_hEvent) {
+				InternalEObject newM_hEvent = (InternalEObject)m_hEvent;
+				NotificationChain msgs = oldM_hEvent.eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.ISEND_ACTION__MHEVENT, null, null);
+				if (newM_hEvent.eInternalContainer() == null) {
+					msgs = newM_hEvent.eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.ISEND_ACTION__MHEVENT, null, msgs);
+				}
+				if (msgs != null) msgs.dispatch();
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.ISEND_ACTION__MHEVENT, oldM_hEvent, m_hEvent));
+			}
+		}
+		return m_hEvent;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IEventHandle basicGetM_hEvent() {
+		return m_hEvent;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public NotificationChain basicSetM_hEvent(IEventHandle newM_hEvent, NotificationChain msgs) {
+		IEventHandle oldM_hEvent = m_hEvent;
+		m_hEvent = newM_hEvent;
+		if (eNotificationRequired()) {
+			ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, UMLRpyPackage.ISEND_ACTION__MHEVENT, oldM_hEvent, newM_hEvent);
+			if (msgs == null) msgs = notification; else msgs.add(notification);
+		}
+		return msgs;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setM_hEvent(IEventHandle newM_hEvent) {
+		if (newM_hEvent != m_hEvent) {
+			NotificationChain msgs = null;
+			if (m_hEvent != null)
+				msgs = ((InternalEObject)m_hEvent).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.ISEND_ACTION__MHEVENT, null, msgs);
+			if (newM_hEvent != null)
+				msgs = ((InternalEObject)newM_hEvent).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.ISEND_ACTION__MHEVENT, null, msgs);
+			msgs = basicSetM_hEvent(newM_hEvent, msgs);
+			if (msgs != null) msgs.dispatch();
+		}
+		else if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.ISEND_ACTION__MHEVENT, newM_hEvent, newM_hEvent));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getArgValCount() {
+		return argValCount;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setArgValCount(String newArgValCount) {
+		String oldArgValCount = argValCount;
+		argValCount = newArgValCount;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.ISEND_ACTION__ARG_VAL_COUNT, oldArgValCount, argValCount));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<IHandleWithData> getGraphElements() {
+		if (graphElements == null) {
+			graphElements = new EObjectContainmentEList.Resolving<IHandleWithData>(IHandleWithData.class, this, UMLRpyPackage.ISEND_ACTION__GRAPH_ELEMENTS);
+		}
+		return graphElements;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
+		switch (featureID) {
+			case UMLRpyPackage.ISEND_ACTION__MHEVENT:
+				return basicSetM_hEvent(null, msgs);
+			case UMLRpyPackage.ISEND_ACTION__GRAPH_ELEMENTS:
+				return ((InternalEList<?>)getGraphElements()).basicRemove(otherEnd, msgs);
+		}
+		return super.eInverseRemove(otherEnd, featureID, msgs);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object eGet(int featureID, boolean resolve, boolean coreType) {
+		switch (featureID) {
+			case UMLRpyPackage.ISEND_ACTION__MHTARGET:
+				if (resolve) return getM_hTarget();
+				return basicGetM_hTarget();
+			case UMLRpyPackage.ISEND_ACTION__MHEVENT:
+				if (resolve) return getM_hEvent();
+				return basicGetM_hEvent();
+			case UMLRpyPackage.ISEND_ACTION__ARG_VAL_COUNT:
+				return getArgValCount();
+			case UMLRpyPackage.ISEND_ACTION__GRAPH_ELEMENTS:
+				return getGraphElements();
+		}
+		return super.eGet(featureID, resolve, coreType);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@SuppressWarnings("unchecked")
+	@Override
+	public void eSet(int featureID, Object newValue) {
+		switch (featureID) {
+			case UMLRpyPackage.ISEND_ACTION__MHTARGET:
+				setM_hTarget((M_hTargetType)newValue);
+				return;
+			case UMLRpyPackage.ISEND_ACTION__MHEVENT:
+				setM_hEvent((IEventHandle)newValue);
+				return;
+			case UMLRpyPackage.ISEND_ACTION__ARG_VAL_COUNT:
+				setArgValCount((String)newValue);
+				return;
+			case UMLRpyPackage.ISEND_ACTION__GRAPH_ELEMENTS:
+				getGraphElements().clear();
+				getGraphElements().addAll((Collection<? extends IHandleWithData>)newValue);
+				return;
+		}
+		super.eSet(featureID, newValue);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void eUnset(int featureID) {
+		switch (featureID) {
+			case UMLRpyPackage.ISEND_ACTION__MHTARGET:
+				setM_hTarget((M_hTargetType)null);
+				return;
+			case UMLRpyPackage.ISEND_ACTION__MHEVENT:
+				setM_hEvent((IEventHandle)null);
+				return;
+			case UMLRpyPackage.ISEND_ACTION__ARG_VAL_COUNT:
+				setArgValCount(ARG_VAL_COUNT_EDEFAULT);
+				return;
+			case UMLRpyPackage.ISEND_ACTION__GRAPH_ELEMENTS:
+				getGraphElements().clear();
+				return;
+		}
+		super.eUnset(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public boolean eIsSet(int featureID) {
+		switch (featureID) {
+			case UMLRpyPackage.ISEND_ACTION__MHTARGET:
+				return m_hTarget != null;
+			case UMLRpyPackage.ISEND_ACTION__MHEVENT:
+				return m_hEvent != null;
+			case UMLRpyPackage.ISEND_ACTION__ARG_VAL_COUNT:
+				return ARG_VAL_COUNT_EDEFAULT == null ? argValCount != null : !ARG_VAL_COUNT_EDEFAULT.equals(argValCount);
+			case UMLRpyPackage.ISEND_ACTION__GRAPH_ELEMENTS:
+				return graphElements != null && !graphElements.isEmpty();
+		}
+		return super.eIsSet(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String toString() {
+		if (eIsProxy()) return super.toString();
+
+		StringBuffer result = new StringBuffer(super.toString());
+		result.append(" (ArgValCount: "); //$NON-NLS-1$
+		result.append(argValCount);
+		result.append(')');
+		return result.toString();
+	}
+
+} //ISendActionImpl
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/ISequenceDiagramImpl.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/ISequenceDiagramImpl.java
new file mode 100755
index 0000000..218828b
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/ISequenceDiagramImpl.java
@@ -0,0 +1,47 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl;
+
+import org.eclipse.emf.ecore.EClass;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ISequenceDiagram;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>ISequence Diagram</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+public class ISequenceDiagramImpl extends IDiagramImpl implements ISequenceDiagram {
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected ISequenceDiagramImpl() {
+		super();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EClass eStaticClass() {
+		return UMLRpyPackage.eINSTANCE.getISequenceDiagram();
+	}
+
+} //ISequenceDiagramImpl
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/ISlotImpl.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/ISlotImpl.java
new file mode 100755
index 0000000..3e0778b
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/ISlotImpl.java
@@ -0,0 +1,343 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.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.emf.ecore.impl.MinimalEObjectImpl;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IAttribute;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ISlot;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>ISlot</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * </p>
+ * <ul>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.ISlotImpl#getId <em>Id</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.ISlotImpl#getName <em>Name</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.ISlotImpl#getValue <em>Value</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.ISlotImpl#getDefiningVar <em>Defining Var</em>}</li>
+ * </ul>
+ *
+ * @generated
+ */
+public class ISlotImpl extends MinimalEObjectImpl.Container implements ISlot {
+	/**
+	 * The default value of the '{@link #getId() <em>Id</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getId()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String ID_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getId() <em>Id</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getId()
+	 * @generated
+	 * @ordered
+	 */
+	protected String id = ID_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getName() <em>Name</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getName()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String NAME_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getName() <em>Name</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getName()
+	 * @generated
+	 * @ordered
+	 */
+	protected String name = NAME_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getValue() <em>Value</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getValue()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String VALUE_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getValue() <em>Value</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getValue()
+	 * @generated
+	 * @ordered
+	 */
+	protected String value = VALUE_EDEFAULT;
+
+	/**
+	 * The cached value of the '{@link #getDefiningVar() <em>Defining Var</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getDefiningVar()
+	 * @generated
+	 * @ordered
+	 */
+	protected IAttribute definingVar;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected ISlotImpl() {
+		super();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EClass eStaticClass() {
+		return UMLRpyPackage.eINSTANCE.getISlot();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getId() {
+		return id;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setId(String newId) {
+		String oldId = id;
+		id = newId;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.ISLOT__ID, oldId, id));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getName() {
+		return name;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setName(String newName) {
+		String oldName = name;
+		name = newName;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.ISLOT__NAME, oldName, name));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getValue() {
+		return value;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setValue(String newValue) {
+		String oldValue = value;
+		value = newValue;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.ISLOT__VALUE, oldValue, value));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IAttribute getDefiningVar() {
+		if (definingVar != null && definingVar.eIsProxy()) {
+			InternalEObject oldDefiningVar = (InternalEObject)definingVar;
+			definingVar = (IAttribute)eResolveProxy(oldDefiningVar);
+			if (definingVar != oldDefiningVar) {
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.ISLOT__DEFINING_VAR, oldDefiningVar, definingVar));
+			}
+		}
+		return definingVar;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IAttribute basicGetDefiningVar() {
+		return definingVar;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setDefiningVar(IAttribute newDefiningVar) {
+		IAttribute oldDefiningVar = definingVar;
+		definingVar = newDefiningVar;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.ISLOT__DEFINING_VAR, oldDefiningVar, definingVar));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object eGet(int featureID, boolean resolve, boolean coreType) {
+		switch (featureID) {
+			case UMLRpyPackage.ISLOT__ID:
+				return getId();
+			case UMLRpyPackage.ISLOT__NAME:
+				return getName();
+			case UMLRpyPackage.ISLOT__VALUE:
+				return getValue();
+			case UMLRpyPackage.ISLOT__DEFINING_VAR:
+				if (resolve) return getDefiningVar();
+				return basicGetDefiningVar();
+		}
+		return super.eGet(featureID, resolve, coreType);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void eSet(int featureID, Object newValue) {
+		switch (featureID) {
+			case UMLRpyPackage.ISLOT__ID:
+				setId((String)newValue);
+				return;
+			case UMLRpyPackage.ISLOT__NAME:
+				setName((String)newValue);
+				return;
+			case UMLRpyPackage.ISLOT__VALUE:
+				setValue((String)newValue);
+				return;
+			case UMLRpyPackage.ISLOT__DEFINING_VAR:
+				setDefiningVar((IAttribute)newValue);
+				return;
+		}
+		super.eSet(featureID, newValue);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void eUnset(int featureID) {
+		switch (featureID) {
+			case UMLRpyPackage.ISLOT__ID:
+				setId(ID_EDEFAULT);
+				return;
+			case UMLRpyPackage.ISLOT__NAME:
+				setName(NAME_EDEFAULT);
+				return;
+			case UMLRpyPackage.ISLOT__VALUE:
+				setValue(VALUE_EDEFAULT);
+				return;
+			case UMLRpyPackage.ISLOT__DEFINING_VAR:
+				setDefiningVar((IAttribute)null);
+				return;
+		}
+		super.eUnset(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public boolean eIsSet(int featureID) {
+		switch (featureID) {
+			case UMLRpyPackage.ISLOT__ID:
+				return ID_EDEFAULT == null ? id != null : !ID_EDEFAULT.equals(id);
+			case UMLRpyPackage.ISLOT__NAME:
+				return NAME_EDEFAULT == null ? name != null : !NAME_EDEFAULT.equals(name);
+			case UMLRpyPackage.ISLOT__VALUE:
+				return VALUE_EDEFAULT == null ? value != null : !VALUE_EDEFAULT.equals(value);
+			case UMLRpyPackage.ISLOT__DEFINING_VAR:
+				return definingVar != null;
+		}
+		return super.eIsSet(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String toString() {
+		if (eIsProxy()) return super.toString();
+
+		StringBuffer result = new StringBuffer(super.toString());
+		result.append(" (id: "); //$NON-NLS-1$
+		result.append(id);
+		result.append(", name: "); //$NON-NLS-1$
+		result.append(name);
+		result.append(", value: "); //$NON-NLS-1$
+		result.append(value);
+		result.append(')');
+		return result.toString();
+	}
+
+} //ISlotImpl
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/IStateChartDiagramImpl.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/IStateChartDiagramImpl.java
new file mode 100755
index 0000000..af23e4e
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/IStateChartDiagramImpl.java
@@ -0,0 +1,47 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl;
+
+import org.eclipse.emf.ecore.EClass;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IStateChartDiagram;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>IState Chart Diagram</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+public class IStateChartDiagramImpl extends IDiagramImpl implements IStateChartDiagram {
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected IStateChartDiagramImpl() {
+		super();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EClass eStaticClass() {
+		return UMLRpyPackage.eINSTANCE.getIStateChartDiagram();
+	}
+
+} //IStateChartDiagramImpl
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/IStateChartImpl.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/IStateChartImpl.java
new file mode 100755
index 0000000..c86c2fe
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/IStateChartImpl.java
@@ -0,0 +1,818 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl;
+
+import java.util.Collection;
+
+import org.eclipse.emf.common.notify.Notification;
+import org.eclipse.emf.common.notify.NotificationChain;
+
+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.EDataTypeEList;
+import org.eclipse.emf.ecore.util.EObjectContainmentEList;
+import org.eclipse.emf.ecore.util.InternalEList;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIStateChart;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IState;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IStateChart;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IStateChartDiagram;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ItsStateChartType;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ItsTargetType;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.NestedStateChartType;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.TransitionsType;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>IState Chart</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * </p>
+ * <ul>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IStateChartImpl#getDefNumber <em>Def Number</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IStateChartImpl#getGraphicChart <em>Graphic Chart</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IStateChartImpl#getLastModifiedTime <em>Last Modified Time</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IStateChartImpl#getTransitions <em>Transitions</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IStateChartImpl#getConnectors <em>Connectors</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IStateChartImpl#getVersion <em>Version</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IStateChartImpl#getStates <em>States</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IStateChartImpl#getBaseVersion <em>Base Version</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IStateChartImpl#getDiagram <em>Diagram</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IStateChartImpl#getViews <em>Views</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IStateChartImpl#getInheritsFromHandle <em>Inherits From Handle</em>}</li>
+ * </ul>
+ *
+ * @generated
+ */
+public class IStateChartImpl extends IClassImpl implements IStateChart {
+	/**
+	 * The default value of the '{@link #getDefNumber() <em>Def Number</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getDefNumber()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String DEF_NUMBER_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getDefNumber() <em>Def Number</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getDefNumber()
+	 * @generated
+	 * @ordered
+	 */
+	protected String defNumber = DEF_NUMBER_EDEFAULT;
+
+	/**
+	 * The cached value of the '{@link #getGraphicChart() <em>Graphic Chart</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getGraphicChart()
+	 * @generated
+	 * @ordered
+	 */
+	protected CGIStateChart graphicChart;
+
+	/**
+	 * The default value of the '{@link #getLastModifiedTime() <em>Last Modified Time</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getLastModifiedTime()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String LAST_MODIFIED_TIME_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getLastModifiedTime() <em>Last Modified Time</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getLastModifiedTime()
+	 * @generated
+	 * @ordered
+	 */
+	protected String lastModifiedTime = LAST_MODIFIED_TIME_EDEFAULT;
+
+	/**
+	 * The cached value of the '{@link #getTransitions() <em>Transitions</em>}' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getTransitions()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<TransitionsType> transitions;
+
+	/**
+	 * The cached value of the '{@link #getConnectors() <em>Connectors</em>}' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getConnectors()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<ItsTargetType> connectors;
+
+	/**
+	 * The cached value of the '{@link #getVersion() <em>Version</em>}' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getVersion()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<String> version;
+
+	/**
+	 * The cached value of the '{@link #getStates() <em>States</em>}' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getStates()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<IState> states;
+
+	/**
+	 * The cached value of the '{@link #getBaseVersion() <em>Base Version</em>}' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getBaseVersion()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<String> baseVersion;
+
+	/**
+	 * The cached value of the '{@link #getDiagram() <em>Diagram</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getDiagram()
+	 * @generated
+	 * @ordered
+	 */
+	protected IStateChartDiagram diagram;
+
+	/**
+	 * The cached value of the '{@link #getViews() <em>Views</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getViews()
+	 * @generated
+	 * @ordered
+	 */
+	protected IStateChartDiagram views;
+
+	/**
+	 * The cached value of the '{@link #getInheritsFromHandle() <em>Inherits From Handle</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getInheritsFromHandle()
+	 * @generated
+	 * @ordered
+	 */
+	protected IStateChart inheritsFromHandle;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected IStateChartImpl() {
+		super();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EClass eStaticClass() {
+		return UMLRpyPackage.eINSTANCE.getIStateChart();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getDefNumber() {
+		return defNumber;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setDefNumber(String newDefNumber) {
+		String oldDefNumber = defNumber;
+		defNumber = newDefNumber;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.ISTATE_CHART__DEF_NUMBER, oldDefNumber, defNumber));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public CGIStateChart getGraphicChart() {
+		if (graphicChart != null && graphicChart.eIsProxy()) {
+			InternalEObject oldGraphicChart = (InternalEObject)graphicChart;
+			graphicChart = (CGIStateChart)eResolveProxy(oldGraphicChart);
+			if (graphicChart != oldGraphicChart) {
+				InternalEObject newGraphicChart = (InternalEObject)graphicChart;
+				NotificationChain msgs = oldGraphicChart.eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.ISTATE_CHART__GRAPHIC_CHART, null, null);
+				if (newGraphicChart.eInternalContainer() == null) {
+					msgs = newGraphicChart.eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.ISTATE_CHART__GRAPHIC_CHART, null, msgs);
+				}
+				if (msgs != null) msgs.dispatch();
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.ISTATE_CHART__GRAPHIC_CHART, oldGraphicChart, graphicChart));
+			}
+		}
+		return graphicChart;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public CGIStateChart basicGetGraphicChart() {
+		return graphicChart;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public NotificationChain basicSetGraphicChart(CGIStateChart newGraphicChart, NotificationChain msgs) {
+		CGIStateChart oldGraphicChart = graphicChart;
+		graphicChart = newGraphicChart;
+		if (eNotificationRequired()) {
+			ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, UMLRpyPackage.ISTATE_CHART__GRAPHIC_CHART, oldGraphicChart, newGraphicChart);
+			if (msgs == null) msgs = notification; else msgs.add(notification);
+		}
+		return msgs;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setGraphicChart(CGIStateChart newGraphicChart) {
+		if (newGraphicChart != graphicChart) {
+			NotificationChain msgs = null;
+			if (graphicChart != null)
+				msgs = ((InternalEObject)graphicChart).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.ISTATE_CHART__GRAPHIC_CHART, null, msgs);
+			if (newGraphicChart != null)
+				msgs = ((InternalEObject)newGraphicChart).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.ISTATE_CHART__GRAPHIC_CHART, null, msgs);
+			msgs = basicSetGraphicChart(newGraphicChart, msgs);
+			if (msgs != null) msgs.dispatch();
+		}
+		else if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.ISTATE_CHART__GRAPHIC_CHART, newGraphicChart, newGraphicChart));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getLastModifiedTime() {
+		return lastModifiedTime;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setLastModifiedTime(String newLastModifiedTime) {
+		String oldLastModifiedTime = lastModifiedTime;
+		lastModifiedTime = newLastModifiedTime;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.ISTATE_CHART__LAST_MODIFIED_TIME, oldLastModifiedTime, lastModifiedTime));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<TransitionsType> getTransitions() {
+		if (transitions == null) {
+			transitions = new EObjectContainmentEList.Resolving<TransitionsType>(TransitionsType.class, this, UMLRpyPackage.ISTATE_CHART__TRANSITIONS);
+		}
+		return transitions;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<ItsTargetType> getConnectors() {
+		if (connectors == null) {
+			connectors = new EObjectContainmentEList.Resolving<ItsTargetType>(ItsTargetType.class, this, UMLRpyPackage.ISTATE_CHART__CONNECTORS);
+		}
+		return connectors;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<String> getVersion() {
+		if (version == null) {
+			version = new EDataTypeEList<String>(String.class, this, UMLRpyPackage.ISTATE_CHART__VERSION);
+		}
+		return version;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<IState> getStates() {
+		if (states == null) {
+			states = new EObjectContainmentEList.Resolving<IState>(IState.class, this, UMLRpyPackage.ISTATE_CHART__STATES);
+		}
+		return states;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<String> getBaseVersion() {
+		if (baseVersion == null) {
+			baseVersion = new EDataTypeEList<String>(String.class, this, UMLRpyPackage.ISTATE_CHART__BASE_VERSION);
+		}
+		return baseVersion;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IStateChartDiagram getDiagram() {
+		if (diagram != null && diagram.eIsProxy()) {
+			InternalEObject oldDiagram = (InternalEObject)diagram;
+			diagram = (IStateChartDiagram)eResolveProxy(oldDiagram);
+			if (diagram != oldDiagram) {
+				InternalEObject newDiagram = (InternalEObject)diagram;
+				NotificationChain msgs = oldDiagram.eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.ISTATE_CHART__DIAGRAM, null, null);
+				if (newDiagram.eInternalContainer() == null) {
+					msgs = newDiagram.eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.ISTATE_CHART__DIAGRAM, null, msgs);
+				}
+				if (msgs != null) msgs.dispatch();
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.ISTATE_CHART__DIAGRAM, oldDiagram, diagram));
+			}
+		}
+		return diagram;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IStateChartDiagram basicGetDiagram() {
+		return diagram;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public NotificationChain basicSetDiagram(IStateChartDiagram newDiagram, NotificationChain msgs) {
+		IStateChartDiagram oldDiagram = diagram;
+		diagram = newDiagram;
+		if (eNotificationRequired()) {
+			ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, UMLRpyPackage.ISTATE_CHART__DIAGRAM, oldDiagram, newDiagram);
+			if (msgs == null) msgs = notification; else msgs.add(notification);
+		}
+		return msgs;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setDiagram(IStateChartDiagram newDiagram) {
+		if (newDiagram != diagram) {
+			NotificationChain msgs = null;
+			if (diagram != null)
+				msgs = ((InternalEObject)diagram).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.ISTATE_CHART__DIAGRAM, null, msgs);
+			if (newDiagram != null)
+				msgs = ((InternalEObject)newDiagram).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.ISTATE_CHART__DIAGRAM, null, msgs);
+			msgs = basicSetDiagram(newDiagram, msgs);
+			if (msgs != null) msgs.dispatch();
+		}
+		else if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.ISTATE_CHART__DIAGRAM, newDiagram, newDiagram));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IStateChartDiagram getViews() {
+		if (views != null && views.eIsProxy()) {
+			InternalEObject oldViews = (InternalEObject)views;
+			views = (IStateChartDiagram)eResolveProxy(oldViews);
+			if (views != oldViews) {
+				InternalEObject newViews = (InternalEObject)views;
+				NotificationChain msgs = oldViews.eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.ISTATE_CHART__VIEWS, null, null);
+				if (newViews.eInternalContainer() == null) {
+					msgs = newViews.eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.ISTATE_CHART__VIEWS, null, msgs);
+				}
+				if (msgs != null) msgs.dispatch();
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.ISTATE_CHART__VIEWS, oldViews, views));
+			}
+		}
+		return views;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IStateChartDiagram basicGetViews() {
+		return views;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public NotificationChain basicSetViews(IStateChartDiagram newViews, NotificationChain msgs) {
+		IStateChartDiagram oldViews = views;
+		views = newViews;
+		if (eNotificationRequired()) {
+			ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, UMLRpyPackage.ISTATE_CHART__VIEWS, oldViews, newViews);
+			if (msgs == null) msgs = notification; else msgs.add(notification);
+		}
+		return msgs;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setViews(IStateChartDiagram newViews) {
+		if (newViews != views) {
+			NotificationChain msgs = null;
+			if (views != null)
+				msgs = ((InternalEObject)views).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.ISTATE_CHART__VIEWS, null, msgs);
+			if (newViews != null)
+				msgs = ((InternalEObject)newViews).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.ISTATE_CHART__VIEWS, null, msgs);
+			msgs = basicSetViews(newViews, msgs);
+			if (msgs != null) msgs.dispatch();
+		}
+		else if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.ISTATE_CHART__VIEWS, newViews, newViews));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IStateChart getInheritsFromHandle() {
+		if (inheritsFromHandle != null && inheritsFromHandle.eIsProxy()) {
+			InternalEObject oldInheritsFromHandle = (InternalEObject)inheritsFromHandle;
+			inheritsFromHandle = (IStateChart)eResolveProxy(oldInheritsFromHandle);
+			if (inheritsFromHandle != oldInheritsFromHandle) {
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.ISTATE_CHART__INHERITS_FROM_HANDLE, oldInheritsFromHandle, inheritsFromHandle));
+			}
+		}
+		return inheritsFromHandle;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IStateChart basicGetInheritsFromHandle() {
+		return inheritsFromHandle;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setInheritsFromHandle(IStateChart newInheritsFromHandle) {
+		IStateChart oldInheritsFromHandle = inheritsFromHandle;
+		inheritsFromHandle = newInheritsFromHandle;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.ISTATE_CHART__INHERITS_FROM_HANDLE, oldInheritsFromHandle, inheritsFromHandle));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
+		switch (featureID) {
+			case UMLRpyPackage.ISTATE_CHART__GRAPHIC_CHART:
+				return basicSetGraphicChart(null, msgs);
+			case UMLRpyPackage.ISTATE_CHART__TRANSITIONS:
+				return ((InternalEList<?>)getTransitions()).basicRemove(otherEnd, msgs);
+			case UMLRpyPackage.ISTATE_CHART__CONNECTORS:
+				return ((InternalEList<?>)getConnectors()).basicRemove(otherEnd, msgs);
+			case UMLRpyPackage.ISTATE_CHART__STATES:
+				return ((InternalEList<?>)getStates()).basicRemove(otherEnd, msgs);
+			case UMLRpyPackage.ISTATE_CHART__DIAGRAM:
+				return basicSetDiagram(null, msgs);
+			case UMLRpyPackage.ISTATE_CHART__VIEWS:
+				return basicSetViews(null, msgs);
+		}
+		return super.eInverseRemove(otherEnd, featureID, msgs);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object eGet(int featureID, boolean resolve, boolean coreType) {
+		switch (featureID) {
+			case UMLRpyPackage.ISTATE_CHART__DEF_NUMBER:
+				return getDefNumber();
+			case UMLRpyPackage.ISTATE_CHART__GRAPHIC_CHART:
+				if (resolve) return getGraphicChart();
+				return basicGetGraphicChart();
+			case UMLRpyPackage.ISTATE_CHART__LAST_MODIFIED_TIME:
+				return getLastModifiedTime();
+			case UMLRpyPackage.ISTATE_CHART__TRANSITIONS:
+				return getTransitions();
+			case UMLRpyPackage.ISTATE_CHART__CONNECTORS:
+				return getConnectors();
+			case UMLRpyPackage.ISTATE_CHART__VERSION:
+				return getVersion();
+			case UMLRpyPackage.ISTATE_CHART__STATES:
+				return getStates();
+			case UMLRpyPackage.ISTATE_CHART__BASE_VERSION:
+				return getBaseVersion();
+			case UMLRpyPackage.ISTATE_CHART__DIAGRAM:
+				if (resolve) return getDiagram();
+				return basicGetDiagram();
+			case UMLRpyPackage.ISTATE_CHART__VIEWS:
+				if (resolve) return getViews();
+				return basicGetViews();
+			case UMLRpyPackage.ISTATE_CHART__INHERITS_FROM_HANDLE:
+				if (resolve) return getInheritsFromHandle();
+				return basicGetInheritsFromHandle();
+		}
+		return super.eGet(featureID, resolve, coreType);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@SuppressWarnings("unchecked")
+	@Override
+	public void eSet(int featureID, Object newValue) {
+		switch (featureID) {
+			case UMLRpyPackage.ISTATE_CHART__DEF_NUMBER:
+				setDefNumber((String)newValue);
+				return;
+			case UMLRpyPackage.ISTATE_CHART__GRAPHIC_CHART:
+				setGraphicChart((CGIStateChart)newValue);
+				return;
+			case UMLRpyPackage.ISTATE_CHART__LAST_MODIFIED_TIME:
+				setLastModifiedTime((String)newValue);
+				return;
+			case UMLRpyPackage.ISTATE_CHART__TRANSITIONS:
+				getTransitions().clear();
+				getTransitions().addAll((Collection<? extends TransitionsType>)newValue);
+				return;
+			case UMLRpyPackage.ISTATE_CHART__CONNECTORS:
+				getConnectors().clear();
+				getConnectors().addAll((Collection<? extends ItsTargetType>)newValue);
+				return;
+			case UMLRpyPackage.ISTATE_CHART__VERSION:
+				getVersion().clear();
+				getVersion().addAll((Collection<? extends String>)newValue);
+				return;
+			case UMLRpyPackage.ISTATE_CHART__STATES:
+				getStates().clear();
+				getStates().addAll((Collection<? extends IState>)newValue);
+				return;
+			case UMLRpyPackage.ISTATE_CHART__BASE_VERSION:
+				getBaseVersion().clear();
+				getBaseVersion().addAll((Collection<? extends String>)newValue);
+				return;
+			case UMLRpyPackage.ISTATE_CHART__DIAGRAM:
+				setDiagram((IStateChartDiagram)newValue);
+				return;
+			case UMLRpyPackage.ISTATE_CHART__VIEWS:
+				setViews((IStateChartDiagram)newValue);
+				return;
+			case UMLRpyPackage.ISTATE_CHART__INHERITS_FROM_HANDLE:
+				setInheritsFromHandle((IStateChart)newValue);
+				return;
+		}
+		super.eSet(featureID, newValue);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void eUnset(int featureID) {
+		switch (featureID) {
+			case UMLRpyPackage.ISTATE_CHART__DEF_NUMBER:
+				setDefNumber(DEF_NUMBER_EDEFAULT);
+				return;
+			case UMLRpyPackage.ISTATE_CHART__GRAPHIC_CHART:
+				setGraphicChart((CGIStateChart)null);
+				return;
+			case UMLRpyPackage.ISTATE_CHART__LAST_MODIFIED_TIME:
+				setLastModifiedTime(LAST_MODIFIED_TIME_EDEFAULT);
+				return;
+			case UMLRpyPackage.ISTATE_CHART__TRANSITIONS:
+				getTransitions().clear();
+				return;
+			case UMLRpyPackage.ISTATE_CHART__CONNECTORS:
+				getConnectors().clear();
+				return;
+			case UMLRpyPackage.ISTATE_CHART__VERSION:
+				getVersion().clear();
+				return;
+			case UMLRpyPackage.ISTATE_CHART__STATES:
+				getStates().clear();
+				return;
+			case UMLRpyPackage.ISTATE_CHART__BASE_VERSION:
+				getBaseVersion().clear();
+				return;
+			case UMLRpyPackage.ISTATE_CHART__DIAGRAM:
+				setDiagram((IStateChartDiagram)null);
+				return;
+			case UMLRpyPackage.ISTATE_CHART__VIEWS:
+				setViews((IStateChartDiagram)null);
+				return;
+			case UMLRpyPackage.ISTATE_CHART__INHERITS_FROM_HANDLE:
+				setInheritsFromHandle((IStateChart)null);
+				return;
+		}
+		super.eUnset(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public boolean eIsSet(int featureID) {
+		switch (featureID) {
+			case UMLRpyPackage.ISTATE_CHART__DEF_NUMBER:
+				return DEF_NUMBER_EDEFAULT == null ? defNumber != null : !DEF_NUMBER_EDEFAULT.equals(defNumber);
+			case UMLRpyPackage.ISTATE_CHART__GRAPHIC_CHART:
+				return graphicChart != null;
+			case UMLRpyPackage.ISTATE_CHART__LAST_MODIFIED_TIME:
+				return LAST_MODIFIED_TIME_EDEFAULT == null ? lastModifiedTime != null : !LAST_MODIFIED_TIME_EDEFAULT.equals(lastModifiedTime);
+			case UMLRpyPackage.ISTATE_CHART__TRANSITIONS:
+				return transitions != null && !transitions.isEmpty();
+			case UMLRpyPackage.ISTATE_CHART__CONNECTORS:
+				return connectors != null && !connectors.isEmpty();
+			case UMLRpyPackage.ISTATE_CHART__VERSION:
+				return version != null && !version.isEmpty();
+			case UMLRpyPackage.ISTATE_CHART__STATES:
+				return states != null && !states.isEmpty();
+			case UMLRpyPackage.ISTATE_CHART__BASE_VERSION:
+				return baseVersion != null && !baseVersion.isEmpty();
+			case UMLRpyPackage.ISTATE_CHART__DIAGRAM:
+				return diagram != null;
+			case UMLRpyPackage.ISTATE_CHART__VIEWS:
+				return views != null;
+			case UMLRpyPackage.ISTATE_CHART__INHERITS_FROM_HANDLE:
+				return inheritsFromHandle != null;
+		}
+		return super.eIsSet(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public int eBaseStructuralFeatureID(int derivedFeatureID, Class<?> baseClass) {
+		if (baseClass == ItsStateChartType.class) {
+			switch (derivedFeatureID) {
+				default: return -1;
+			}
+		}
+		if (baseClass == NestedStateChartType.class) {
+			switch (derivedFeatureID) {
+				case UMLRpyPackage.ISTATE_CHART__DEF_NUMBER: return UMLRpyPackage.NESTED_STATE_CHART_TYPE__DEF_NUMBER;
+				case UMLRpyPackage.ISTATE_CHART__GRAPHIC_CHART: return UMLRpyPackage.NESTED_STATE_CHART_TYPE__GRAPHIC_CHART;
+				case UMLRpyPackage.ISTATE_CHART__LAST_MODIFIED_TIME: return UMLRpyPackage.NESTED_STATE_CHART_TYPE__LAST_MODIFIED_TIME;
+				case UMLRpyPackage.ISTATE_CHART__TRANSITIONS: return UMLRpyPackage.NESTED_STATE_CHART_TYPE__TRANSITIONS;
+				case UMLRpyPackage.ISTATE_CHART__CONNECTORS: return UMLRpyPackage.NESTED_STATE_CHART_TYPE__CONNECTORS;
+				case UMLRpyPackage.ISTATE_CHART__VERSION: return UMLRpyPackage.NESTED_STATE_CHART_TYPE__VERSION;
+				default: return -1;
+			}
+		}
+		return super.eBaseStructuralFeatureID(derivedFeatureID, baseClass);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public int eDerivedStructuralFeatureID(int baseFeatureID, Class<?> baseClass) {
+		if (baseClass == ItsStateChartType.class) {
+			switch (baseFeatureID) {
+				default: return -1;
+			}
+		}
+		if (baseClass == NestedStateChartType.class) {
+			switch (baseFeatureID) {
+				case UMLRpyPackage.NESTED_STATE_CHART_TYPE__DEF_NUMBER: return UMLRpyPackage.ISTATE_CHART__DEF_NUMBER;
+				case UMLRpyPackage.NESTED_STATE_CHART_TYPE__GRAPHIC_CHART: return UMLRpyPackage.ISTATE_CHART__GRAPHIC_CHART;
+				case UMLRpyPackage.NESTED_STATE_CHART_TYPE__LAST_MODIFIED_TIME: return UMLRpyPackage.ISTATE_CHART__LAST_MODIFIED_TIME;
+				case UMLRpyPackage.NESTED_STATE_CHART_TYPE__TRANSITIONS: return UMLRpyPackage.ISTATE_CHART__TRANSITIONS;
+				case UMLRpyPackage.NESTED_STATE_CHART_TYPE__CONNECTORS: return UMLRpyPackage.ISTATE_CHART__CONNECTORS;
+				case UMLRpyPackage.NESTED_STATE_CHART_TYPE__VERSION: return UMLRpyPackage.ISTATE_CHART__VERSION;
+				default: return -1;
+			}
+		}
+		return super.eDerivedStructuralFeatureID(baseFeatureID, baseClass);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String toString() {
+		if (eIsProxy()) return super.toString();
+
+		StringBuffer result = new StringBuffer(super.toString());
+		result.append(" (defNumber: "); //$NON-NLS-1$
+		result.append(defNumber);
+		result.append(", lastModifiedTime: "); //$NON-NLS-1$
+		result.append(lastModifiedTime);
+		result.append(", version: "); //$NON-NLS-1$
+		result.append(version);
+		result.append(", baseVersion: "); //$NON-NLS-1$
+		result.append(baseVersion);
+		result.append(')');
+		return result.toString();
+	}
+
+} //IStateChartImpl
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/IStateImpl.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/IStateImpl.java
new file mode 100755
index 0000000..8638d80
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/IStateImpl.java
@@ -0,0 +1,990 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl;
+
+import java.util.Collection;
+
+import org.eclipse.emf.common.notify.Notification;
+import org.eclipse.emf.common.notify.NotificationChain;
+
+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.EDataTypeEList;
+import org.eclipse.emf.ecore.util.EObjectContainmentEList;
+import org.eclipse.emf.ecore.util.InternalEList;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.DefaultTransType;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IAction;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IAnnotation;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IDependency;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IDiagram;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IModelElement;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IState;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IStateVertex;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ISwimlane;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.NestedStateChartType;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>IState</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * </p>
+ * <ul>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IStateImpl#getParent <em>Parent</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IStateImpl#getStateType <em>State Type</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IStateImpl#getDefaultTrans <em>Default Trans</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IStateImpl#getEntryAction <em>Entry Action</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IStateImpl#getInheritsFromHandle <em>Inherits From Handle</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IStateImpl#getExitAction <em>Exit Action</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IStateImpl#getNestedStateChart <em>Nested State Chart</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IStateImpl#getRequiremenTracabilityHandle <em>Requiremen Tracability Handle</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IStateImpl#getAnnotations <em>Annotations</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IStateImpl#getDependencies <em>Dependencies</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IStateImpl#getTheMainDiagram <em>The Main Diagram</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IStateImpl#getSwimlane <em>Swimlane</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IStateImpl#getCodeUpdateCGTime <em>Code Update CG Time</em>}</li>
+ * </ul>
+ *
+ * @generated
+ */
+public class IStateImpl extends IStateVertexImpl implements IState {
+	/**
+	 * The cached value of the '{@link #getParent() <em>Parent</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getParent()
+	 * @generated
+	 * @ordered
+	 */
+	protected IStateVertex parent;
+
+	/**
+	 * The default value of the '{@link #getStateType() <em>State Type</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getStateType()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String STATE_TYPE_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getStateType() <em>State Type</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getStateType()
+	 * @generated
+	 * @ordered
+	 */
+	protected String stateType = STATE_TYPE_EDEFAULT;
+
+	/**
+	 * The cached value of the '{@link #getDefaultTrans() <em>Default Trans</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getDefaultTrans()
+	 * @generated
+	 * @ordered
+	 */
+	protected DefaultTransType defaultTrans;
+
+	/**
+	 * The cached value of the '{@link #getEntryAction() <em>Entry Action</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getEntryAction()
+	 * @generated
+	 * @ordered
+	 */
+	protected IModelElement entryAction;
+
+	/**
+	 * The cached value of the '{@link #getInheritsFromHandle() <em>Inherits From Handle</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getInheritsFromHandle()
+	 * @generated
+	 * @ordered
+	 */
+	protected IState inheritsFromHandle;
+
+	/**
+	 * The cached value of the '{@link #getExitAction() <em>Exit Action</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getExitAction()
+	 * @generated
+	 * @ordered
+	 */
+	protected IAction exitAction;
+
+	/**
+	 * The cached value of the '{@link #getNestedStateChart() <em>Nested State Chart</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getNestedStateChart()
+	 * @generated
+	 * @ordered
+	 */
+	protected NestedStateChartType nestedStateChart;
+
+	/**
+	 * The default value of the '{@link #getRequiremenTracabilityHandle() <em>Requiremen Tracability Handle</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getRequiremenTracabilityHandle()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String REQUIREMEN_TRACABILITY_HANDLE_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getRequiremenTracabilityHandle() <em>Requiremen Tracability Handle</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getRequiremenTracabilityHandle()
+	 * @generated
+	 * @ordered
+	 */
+	protected String requiremenTracabilityHandle = REQUIREMEN_TRACABILITY_HANDLE_EDEFAULT;
+
+	/**
+	 * The cached value of the '{@link #getAnnotations() <em>Annotations</em>}' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getAnnotations()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<IAnnotation> annotations;
+
+	/**
+	 * The cached value of the '{@link #getDependencies() <em>Dependencies</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getDependencies()
+	 * @generated
+	 * @ordered
+	 */
+	protected IDependency dependencies;
+
+	/**
+	 * The cached value of the '{@link #getTheMainDiagram() <em>The Main Diagram</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getTheMainDiagram()
+	 * @generated
+	 * @ordered
+	 */
+	protected IDiagram theMainDiagram;
+
+	/**
+	 * The cached value of the '{@link #getSwimlane() <em>Swimlane</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getSwimlane()
+	 * @generated
+	 * @ordered
+	 */
+	protected ISwimlane swimlane;
+
+	/**
+	 * The cached value of the '{@link #getCodeUpdateCGTime() <em>Code Update CG Time</em>}' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getCodeUpdateCGTime()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<String> codeUpdateCGTime;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected IStateImpl() {
+		super();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EClass eStaticClass() {
+		return UMLRpyPackage.eINSTANCE.getIState();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IStateVertex getParent() {
+		if (parent != null && parent.eIsProxy()) {
+			InternalEObject oldParent = (InternalEObject)parent;
+			parent = (IStateVertex)eResolveProxy(oldParent);
+			if (parent != oldParent) {
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.ISTATE__PARENT, oldParent, parent));
+			}
+		}
+		return parent;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IStateVertex basicGetParent() {
+		return parent;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setParent(IStateVertex newParent) {
+		IStateVertex oldParent = parent;
+		parent = newParent;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.ISTATE__PARENT, oldParent, parent));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getStateType() {
+		return stateType;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setStateType(String newStateType) {
+		String oldStateType = stateType;
+		stateType = newStateType;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.ISTATE__STATE_TYPE, oldStateType, stateType));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public DefaultTransType getDefaultTrans() {
+		if (defaultTrans != null && defaultTrans.eIsProxy()) {
+			InternalEObject oldDefaultTrans = (InternalEObject)defaultTrans;
+			defaultTrans = (DefaultTransType)eResolveProxy(oldDefaultTrans);
+			if (defaultTrans != oldDefaultTrans) {
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.ISTATE__DEFAULT_TRANS, oldDefaultTrans, defaultTrans));
+			}
+		}
+		return defaultTrans;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public DefaultTransType basicGetDefaultTrans() {
+		return defaultTrans;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setDefaultTrans(DefaultTransType newDefaultTrans) {
+		DefaultTransType oldDefaultTrans = defaultTrans;
+		defaultTrans = newDefaultTrans;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.ISTATE__DEFAULT_TRANS, oldDefaultTrans, defaultTrans));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IModelElement getEntryAction() {
+		if (entryAction != null && entryAction.eIsProxy()) {
+			InternalEObject oldEntryAction = (InternalEObject)entryAction;
+			entryAction = (IModelElement)eResolveProxy(oldEntryAction);
+			if (entryAction != oldEntryAction) {
+				InternalEObject newEntryAction = (InternalEObject)entryAction;
+				NotificationChain msgs = oldEntryAction.eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.ISTATE__ENTRY_ACTION, null, null);
+				if (newEntryAction.eInternalContainer() == null) {
+					msgs = newEntryAction.eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.ISTATE__ENTRY_ACTION, null, msgs);
+				}
+				if (msgs != null) msgs.dispatch();
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.ISTATE__ENTRY_ACTION, oldEntryAction, entryAction));
+			}
+		}
+		return entryAction;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IModelElement basicGetEntryAction() {
+		return entryAction;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public NotificationChain basicSetEntryAction(IModelElement newEntryAction, NotificationChain msgs) {
+		IModelElement oldEntryAction = entryAction;
+		entryAction = newEntryAction;
+		if (eNotificationRequired()) {
+			ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, UMLRpyPackage.ISTATE__ENTRY_ACTION, oldEntryAction, newEntryAction);
+			if (msgs == null) msgs = notification; else msgs.add(notification);
+		}
+		return msgs;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setEntryAction(IModelElement newEntryAction) {
+		if (newEntryAction != entryAction) {
+			NotificationChain msgs = null;
+			if (entryAction != null)
+				msgs = ((InternalEObject)entryAction).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.ISTATE__ENTRY_ACTION, null, msgs);
+			if (newEntryAction != null)
+				msgs = ((InternalEObject)newEntryAction).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.ISTATE__ENTRY_ACTION, null, msgs);
+			msgs = basicSetEntryAction(newEntryAction, msgs);
+			if (msgs != null) msgs.dispatch();
+		}
+		else if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.ISTATE__ENTRY_ACTION, newEntryAction, newEntryAction));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IState getInheritsFromHandle() {
+		if (inheritsFromHandle != null && inheritsFromHandle.eIsProxy()) {
+			InternalEObject oldInheritsFromHandle = (InternalEObject)inheritsFromHandle;
+			inheritsFromHandle = (IState)eResolveProxy(oldInheritsFromHandle);
+			if (inheritsFromHandle != oldInheritsFromHandle) {
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.ISTATE__INHERITS_FROM_HANDLE, oldInheritsFromHandle, inheritsFromHandle));
+			}
+		}
+		return inheritsFromHandle;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IState basicGetInheritsFromHandle() {
+		return inheritsFromHandle;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setInheritsFromHandle(IState newInheritsFromHandle) {
+		IState oldInheritsFromHandle = inheritsFromHandle;
+		inheritsFromHandle = newInheritsFromHandle;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.ISTATE__INHERITS_FROM_HANDLE, oldInheritsFromHandle, inheritsFromHandle));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IAction getExitAction() {
+		if (exitAction != null && exitAction.eIsProxy()) {
+			InternalEObject oldExitAction = (InternalEObject)exitAction;
+			exitAction = (IAction)eResolveProxy(oldExitAction);
+			if (exitAction != oldExitAction) {
+				InternalEObject newExitAction = (InternalEObject)exitAction;
+				NotificationChain msgs = oldExitAction.eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.ISTATE__EXIT_ACTION, null, null);
+				if (newExitAction.eInternalContainer() == null) {
+					msgs = newExitAction.eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.ISTATE__EXIT_ACTION, null, msgs);
+				}
+				if (msgs != null) msgs.dispatch();
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.ISTATE__EXIT_ACTION, oldExitAction, exitAction));
+			}
+		}
+		return exitAction;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IAction basicGetExitAction() {
+		return exitAction;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public NotificationChain basicSetExitAction(IAction newExitAction, NotificationChain msgs) {
+		IAction oldExitAction = exitAction;
+		exitAction = newExitAction;
+		if (eNotificationRequired()) {
+			ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, UMLRpyPackage.ISTATE__EXIT_ACTION, oldExitAction, newExitAction);
+			if (msgs == null) msgs = notification; else msgs.add(notification);
+		}
+		return msgs;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setExitAction(IAction newExitAction) {
+		if (newExitAction != exitAction) {
+			NotificationChain msgs = null;
+			if (exitAction != null)
+				msgs = ((InternalEObject)exitAction).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.ISTATE__EXIT_ACTION, null, msgs);
+			if (newExitAction != null)
+				msgs = ((InternalEObject)newExitAction).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.ISTATE__EXIT_ACTION, null, msgs);
+			msgs = basicSetExitAction(newExitAction, msgs);
+			if (msgs != null) msgs.dispatch();
+		}
+		else if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.ISTATE__EXIT_ACTION, newExitAction, newExitAction));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public NestedStateChartType getNestedStateChart() {
+		if (nestedStateChart != null && nestedStateChart.eIsProxy()) {
+			InternalEObject oldNestedStateChart = (InternalEObject)nestedStateChart;
+			nestedStateChart = (NestedStateChartType)eResolveProxy(oldNestedStateChart);
+			if (nestedStateChart != oldNestedStateChart) {
+				InternalEObject newNestedStateChart = (InternalEObject)nestedStateChart;
+				NotificationChain msgs = oldNestedStateChart.eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.ISTATE__NESTED_STATE_CHART, null, null);
+				if (newNestedStateChart.eInternalContainer() == null) {
+					msgs = newNestedStateChart.eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.ISTATE__NESTED_STATE_CHART, null, msgs);
+				}
+				if (msgs != null) msgs.dispatch();
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.ISTATE__NESTED_STATE_CHART, oldNestedStateChart, nestedStateChart));
+			}
+		}
+		return nestedStateChart;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public NestedStateChartType basicGetNestedStateChart() {
+		return nestedStateChart;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public NotificationChain basicSetNestedStateChart(NestedStateChartType newNestedStateChart, NotificationChain msgs) {
+		NestedStateChartType oldNestedStateChart = nestedStateChart;
+		nestedStateChart = newNestedStateChart;
+		if (eNotificationRequired()) {
+			ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, UMLRpyPackage.ISTATE__NESTED_STATE_CHART, oldNestedStateChart, newNestedStateChart);
+			if (msgs == null) msgs = notification; else msgs.add(notification);
+		}
+		return msgs;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setNestedStateChart(NestedStateChartType newNestedStateChart) {
+		if (newNestedStateChart != nestedStateChart) {
+			NotificationChain msgs = null;
+			if (nestedStateChart != null)
+				msgs = ((InternalEObject)nestedStateChart).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.ISTATE__NESTED_STATE_CHART, null, msgs);
+			if (newNestedStateChart != null)
+				msgs = ((InternalEObject)newNestedStateChart).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.ISTATE__NESTED_STATE_CHART, null, msgs);
+			msgs = basicSetNestedStateChart(newNestedStateChart, msgs);
+			if (msgs != null) msgs.dispatch();
+		}
+		else if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.ISTATE__NESTED_STATE_CHART, newNestedStateChart, newNestedStateChart));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getRequiremenTracabilityHandle() {
+		return requiremenTracabilityHandle;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setRequiremenTracabilityHandle(String newRequiremenTracabilityHandle) {
+		String oldRequiremenTracabilityHandle = requiremenTracabilityHandle;
+		requiremenTracabilityHandle = newRequiremenTracabilityHandle;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.ISTATE__REQUIREMEN_TRACABILITY_HANDLE, oldRequiremenTracabilityHandle, requiremenTracabilityHandle));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<IAnnotation> getAnnotations() {
+		if (annotations == null) {
+			annotations = new EObjectContainmentEList.Resolving<IAnnotation>(IAnnotation.class, this, UMLRpyPackage.ISTATE__ANNOTATIONS);
+		}
+		return annotations;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IDependency getDependencies() {
+		if (dependencies != null && dependencies.eIsProxy()) {
+			InternalEObject oldDependencies = (InternalEObject)dependencies;
+			dependencies = (IDependency)eResolveProxy(oldDependencies);
+			if (dependencies != oldDependencies) {
+				InternalEObject newDependencies = (InternalEObject)dependencies;
+				NotificationChain msgs = oldDependencies.eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.ISTATE__DEPENDENCIES, null, null);
+				if (newDependencies.eInternalContainer() == null) {
+					msgs = newDependencies.eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.ISTATE__DEPENDENCIES, null, msgs);
+				}
+				if (msgs != null) msgs.dispatch();
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.ISTATE__DEPENDENCIES, oldDependencies, dependencies));
+			}
+		}
+		return dependencies;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IDependency basicGetDependencies() {
+		return dependencies;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public NotificationChain basicSetDependencies(IDependency newDependencies, NotificationChain msgs) {
+		IDependency oldDependencies = dependencies;
+		dependencies = newDependencies;
+		if (eNotificationRequired()) {
+			ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, UMLRpyPackage.ISTATE__DEPENDENCIES, oldDependencies, newDependencies);
+			if (msgs == null) msgs = notification; else msgs.add(notification);
+		}
+		return msgs;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setDependencies(IDependency newDependencies) {
+		if (newDependencies != dependencies) {
+			NotificationChain msgs = null;
+			if (dependencies != null)
+				msgs = ((InternalEObject)dependencies).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.ISTATE__DEPENDENCIES, null, msgs);
+			if (newDependencies != null)
+				msgs = ((InternalEObject)newDependencies).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.ISTATE__DEPENDENCIES, null, msgs);
+			msgs = basicSetDependencies(newDependencies, msgs);
+			if (msgs != null) msgs.dispatch();
+		}
+		else if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.ISTATE__DEPENDENCIES, newDependencies, newDependencies));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IDiagram getTheMainDiagram() {
+		if (theMainDiagram != null && theMainDiagram.eIsProxy()) {
+			InternalEObject oldTheMainDiagram = (InternalEObject)theMainDiagram;
+			theMainDiagram = (IDiagram)eResolveProxy(oldTheMainDiagram);
+			if (theMainDiagram != oldTheMainDiagram) {
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.ISTATE__THE_MAIN_DIAGRAM, oldTheMainDiagram, theMainDiagram));
+			}
+		}
+		return theMainDiagram;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IDiagram basicGetTheMainDiagram() {
+		return theMainDiagram;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setTheMainDiagram(IDiagram newTheMainDiagram) {
+		IDiagram oldTheMainDiagram = theMainDiagram;
+		theMainDiagram = newTheMainDiagram;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.ISTATE__THE_MAIN_DIAGRAM, oldTheMainDiagram, theMainDiagram));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public ISwimlane getSwimlane() {
+		if (swimlane != null && swimlane.eIsProxy()) {
+			InternalEObject oldSwimlane = (InternalEObject)swimlane;
+			swimlane = (ISwimlane)eResolveProxy(oldSwimlane);
+			if (swimlane != oldSwimlane) {
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.ISTATE__SWIMLANE, oldSwimlane, swimlane));
+			}
+		}
+		return swimlane;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public ISwimlane basicGetSwimlane() {
+		return swimlane;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setSwimlane(ISwimlane newSwimlane) {
+		ISwimlane oldSwimlane = swimlane;
+		swimlane = newSwimlane;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.ISTATE__SWIMLANE, oldSwimlane, swimlane));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<String> getCodeUpdateCGTime() {
+		if (codeUpdateCGTime == null) {
+			codeUpdateCGTime = new EDataTypeEList<String>(String.class, this, UMLRpyPackage.ISTATE__CODE_UPDATE_CG_TIME);
+		}
+		return codeUpdateCGTime;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
+		switch (featureID) {
+			case UMLRpyPackage.ISTATE__ENTRY_ACTION:
+				return basicSetEntryAction(null, msgs);
+			case UMLRpyPackage.ISTATE__EXIT_ACTION:
+				return basicSetExitAction(null, msgs);
+			case UMLRpyPackage.ISTATE__NESTED_STATE_CHART:
+				return basicSetNestedStateChart(null, msgs);
+			case UMLRpyPackage.ISTATE__ANNOTATIONS:
+				return ((InternalEList<?>)getAnnotations()).basicRemove(otherEnd, msgs);
+			case UMLRpyPackage.ISTATE__DEPENDENCIES:
+				return basicSetDependencies(null, msgs);
+		}
+		return super.eInverseRemove(otherEnd, featureID, msgs);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object eGet(int featureID, boolean resolve, boolean coreType) {
+		switch (featureID) {
+			case UMLRpyPackage.ISTATE__PARENT:
+				if (resolve) return getParent();
+				return basicGetParent();
+			case UMLRpyPackage.ISTATE__STATE_TYPE:
+				return getStateType();
+			case UMLRpyPackage.ISTATE__DEFAULT_TRANS:
+				if (resolve) return getDefaultTrans();
+				return basicGetDefaultTrans();
+			case UMLRpyPackage.ISTATE__ENTRY_ACTION:
+				if (resolve) return getEntryAction();
+				return basicGetEntryAction();
+			case UMLRpyPackage.ISTATE__INHERITS_FROM_HANDLE:
+				if (resolve) return getInheritsFromHandle();
+				return basicGetInheritsFromHandle();
+			case UMLRpyPackage.ISTATE__EXIT_ACTION:
+				if (resolve) return getExitAction();
+				return basicGetExitAction();
+			case UMLRpyPackage.ISTATE__NESTED_STATE_CHART:
+				if (resolve) return getNestedStateChart();
+				return basicGetNestedStateChart();
+			case UMLRpyPackage.ISTATE__REQUIREMEN_TRACABILITY_HANDLE:
+				return getRequiremenTracabilityHandle();
+			case UMLRpyPackage.ISTATE__ANNOTATIONS:
+				return getAnnotations();
+			case UMLRpyPackage.ISTATE__DEPENDENCIES:
+				if (resolve) return getDependencies();
+				return basicGetDependencies();
+			case UMLRpyPackage.ISTATE__THE_MAIN_DIAGRAM:
+				if (resolve) return getTheMainDiagram();
+				return basicGetTheMainDiagram();
+			case UMLRpyPackage.ISTATE__SWIMLANE:
+				if (resolve) return getSwimlane();
+				return basicGetSwimlane();
+			case UMLRpyPackage.ISTATE__CODE_UPDATE_CG_TIME:
+				return getCodeUpdateCGTime();
+		}
+		return super.eGet(featureID, resolve, coreType);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@SuppressWarnings("unchecked")
+	@Override
+	public void eSet(int featureID, Object newValue) {
+		switch (featureID) {
+			case UMLRpyPackage.ISTATE__PARENT:
+				setParent((IStateVertex)newValue);
+				return;
+			case UMLRpyPackage.ISTATE__STATE_TYPE:
+				setStateType((String)newValue);
+				return;
+			case UMLRpyPackage.ISTATE__DEFAULT_TRANS:
+				setDefaultTrans((DefaultTransType)newValue);
+				return;
+			case UMLRpyPackage.ISTATE__ENTRY_ACTION:
+				setEntryAction((IModelElement)newValue);
+				return;
+			case UMLRpyPackage.ISTATE__INHERITS_FROM_HANDLE:
+				setInheritsFromHandle((IState)newValue);
+				return;
+			case UMLRpyPackage.ISTATE__EXIT_ACTION:
+				setExitAction((IAction)newValue);
+				return;
+			case UMLRpyPackage.ISTATE__NESTED_STATE_CHART:
+				setNestedStateChart((NestedStateChartType)newValue);
+				return;
+			case UMLRpyPackage.ISTATE__REQUIREMEN_TRACABILITY_HANDLE:
+				setRequiremenTracabilityHandle((String)newValue);
+				return;
+			case UMLRpyPackage.ISTATE__ANNOTATIONS:
+				getAnnotations().clear();
+				getAnnotations().addAll((Collection<? extends IAnnotation>)newValue);
+				return;
+			case UMLRpyPackage.ISTATE__DEPENDENCIES:
+				setDependencies((IDependency)newValue);
+				return;
+			case UMLRpyPackage.ISTATE__THE_MAIN_DIAGRAM:
+				setTheMainDiagram((IDiagram)newValue);
+				return;
+			case UMLRpyPackage.ISTATE__SWIMLANE:
+				setSwimlane((ISwimlane)newValue);
+				return;
+			case UMLRpyPackage.ISTATE__CODE_UPDATE_CG_TIME:
+				getCodeUpdateCGTime().clear();
+				getCodeUpdateCGTime().addAll((Collection<? extends String>)newValue);
+				return;
+		}
+		super.eSet(featureID, newValue);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void eUnset(int featureID) {
+		switch (featureID) {
+			case UMLRpyPackage.ISTATE__PARENT:
+				setParent((IStateVertex)null);
+				return;
+			case UMLRpyPackage.ISTATE__STATE_TYPE:
+				setStateType(STATE_TYPE_EDEFAULT);
+				return;
+			case UMLRpyPackage.ISTATE__DEFAULT_TRANS:
+				setDefaultTrans((DefaultTransType)null);
+				return;
+			case UMLRpyPackage.ISTATE__ENTRY_ACTION:
+				setEntryAction((IModelElement)null);
+				return;
+			case UMLRpyPackage.ISTATE__INHERITS_FROM_HANDLE:
+				setInheritsFromHandle((IState)null);
+				return;
+			case UMLRpyPackage.ISTATE__EXIT_ACTION:
+				setExitAction((IAction)null);
+				return;
+			case UMLRpyPackage.ISTATE__NESTED_STATE_CHART:
+				setNestedStateChart((NestedStateChartType)null);
+				return;
+			case UMLRpyPackage.ISTATE__REQUIREMEN_TRACABILITY_HANDLE:
+				setRequiremenTracabilityHandle(REQUIREMEN_TRACABILITY_HANDLE_EDEFAULT);
+				return;
+			case UMLRpyPackage.ISTATE__ANNOTATIONS:
+				getAnnotations().clear();
+				return;
+			case UMLRpyPackage.ISTATE__DEPENDENCIES:
+				setDependencies((IDependency)null);
+				return;
+			case UMLRpyPackage.ISTATE__THE_MAIN_DIAGRAM:
+				setTheMainDiagram((IDiagram)null);
+				return;
+			case UMLRpyPackage.ISTATE__SWIMLANE:
+				setSwimlane((ISwimlane)null);
+				return;
+			case UMLRpyPackage.ISTATE__CODE_UPDATE_CG_TIME:
+				getCodeUpdateCGTime().clear();
+				return;
+		}
+		super.eUnset(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public boolean eIsSet(int featureID) {
+		switch (featureID) {
+			case UMLRpyPackage.ISTATE__PARENT:
+				return parent != null;
+			case UMLRpyPackage.ISTATE__STATE_TYPE:
+				return STATE_TYPE_EDEFAULT == null ? stateType != null : !STATE_TYPE_EDEFAULT.equals(stateType);
+			case UMLRpyPackage.ISTATE__DEFAULT_TRANS:
+				return defaultTrans != null;
+			case UMLRpyPackage.ISTATE__ENTRY_ACTION:
+				return entryAction != null;
+			case UMLRpyPackage.ISTATE__INHERITS_FROM_HANDLE:
+				return inheritsFromHandle != null;
+			case UMLRpyPackage.ISTATE__EXIT_ACTION:
+				return exitAction != null;
+			case UMLRpyPackage.ISTATE__NESTED_STATE_CHART:
+				return nestedStateChart != null;
+			case UMLRpyPackage.ISTATE__REQUIREMEN_TRACABILITY_HANDLE:
+				return REQUIREMEN_TRACABILITY_HANDLE_EDEFAULT == null ? requiremenTracabilityHandle != null : !REQUIREMEN_TRACABILITY_HANDLE_EDEFAULT.equals(requiremenTracabilityHandle);
+			case UMLRpyPackage.ISTATE__ANNOTATIONS:
+				return annotations != null && !annotations.isEmpty();
+			case UMLRpyPackage.ISTATE__DEPENDENCIES:
+				return dependencies != null;
+			case UMLRpyPackage.ISTATE__THE_MAIN_DIAGRAM:
+				return theMainDiagram != null;
+			case UMLRpyPackage.ISTATE__SWIMLANE:
+				return swimlane != null;
+			case UMLRpyPackage.ISTATE__CODE_UPDATE_CG_TIME:
+				return codeUpdateCGTime != null && !codeUpdateCGTime.isEmpty();
+		}
+		return super.eIsSet(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String toString() {
+		if (eIsProxy()) return super.toString();
+
+		StringBuffer result = new StringBuffer(super.toString());
+		result.append(" (stateType: "); //$NON-NLS-1$
+		result.append(stateType);
+		result.append(", requiremenTracabilityHandle: "); //$NON-NLS-1$
+		result.append(requiremenTracabilityHandle);
+		result.append(", codeUpdateCGTime: "); //$NON-NLS-1$
+		result.append(codeUpdateCGTime);
+		result.append(')');
+		return result.toString();
+	}
+
+} //IStateImpl
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/IStateVertexImpl.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/IStateVertexImpl.java
new file mode 100755
index 0000000..49b6cf7
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/IStateVertexImpl.java
@@ -0,0 +1,597 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl;
+
+import java.util.Collection;
+
+import org.eclipse.emf.common.notify.Notification;
+import org.eclipse.emf.common.notify.NotificationChain;
+
+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.EDataTypeEList;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IDescription;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IStateVertex;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IStereotype;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>IState Vertex</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * </p>
+ * <ul>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IStateVertexImpl#getModifiedTimeWeak <em>Modified Time Weak</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IStateVertexImpl#getId <em>Id</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IStateVertexImpl#getDescription <em>Description</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IStateVertexImpl#getUmlDependencyID <em>Uml Dependency ID</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IStateVertexImpl#getMyState <em>My State</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IStateVertexImpl#getStereotypes <em>Stereotypes</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IStateVertexImpl#getObjectCreation <em>Object Creation</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IStateVertexImpl#getName <em>Name</em>}</li>
+ * </ul>
+ *
+ * @generated
+ */
+public class IStateVertexImpl extends IModelElementImpl implements IStateVertex {
+	/**
+	 * The cached value of the '{@link #getModifiedTimeWeak() <em>Modified Time Weak</em>}' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getModifiedTimeWeak()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<String> modifiedTimeWeak;
+
+	/**
+	 * The default value of the '{@link #getId() <em>Id</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getId()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String ID_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getId() <em>Id</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getId()
+	 * @generated
+	 * @ordered
+	 */
+	protected String id = ID_EDEFAULT;
+
+	/**
+	 * The cached value of the '{@link #getDescription() <em>Description</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getDescription()
+	 * @generated
+	 * @ordered
+	 */
+	protected IDescription description;
+
+	/**
+	 * The default value of the '{@link #getUmlDependencyID() <em>Uml Dependency ID</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getUmlDependencyID()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String UML_DEPENDENCY_ID_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getUmlDependencyID() <em>Uml Dependency ID</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getUmlDependencyID()
+	 * @generated
+	 * @ordered
+	 */
+	protected String umlDependencyID = UML_DEPENDENCY_ID_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getMyState() <em>My State</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getMyState()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String MY_STATE_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getMyState() <em>My State</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getMyState()
+	 * @generated
+	 * @ordered
+	 */
+	protected String myState = MY_STATE_EDEFAULT;
+
+	/**
+	 * The cached value of the '{@link #getStereotypes() <em>Stereotypes</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getStereotypes()
+	 * @generated
+	 * @ordered
+	 */
+	protected IStereotype stereotypes;
+
+	/**
+	 * The default value of the '{@link #getObjectCreation() <em>Object Creation</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getObjectCreation()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String OBJECT_CREATION_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getObjectCreation() <em>Object Creation</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getObjectCreation()
+	 * @generated
+	 * @ordered
+	 */
+	protected String objectCreation = OBJECT_CREATION_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getName() <em>Name</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getName()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String NAME_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getName() <em>Name</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getName()
+	 * @generated
+	 * @ordered
+	 */
+	protected String name = NAME_EDEFAULT;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected IStateVertexImpl() {
+		super();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EClass eStaticClass() {
+		return UMLRpyPackage.eINSTANCE.getIStateVertex();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<String> getModifiedTimeWeak() {
+		if (modifiedTimeWeak == null) {
+			modifiedTimeWeak = new EDataTypeEList<String>(String.class, this, UMLRpyPackage.ISTATE_VERTEX__MODIFIED_TIME_WEAK);
+		}
+		return modifiedTimeWeak;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getId() {
+		return id;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setId(String newId) {
+		String oldId = id;
+		id = newId;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.ISTATE_VERTEX__ID, oldId, id));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IDescription getDescription() {
+		if (description != null && description.eIsProxy()) {
+			InternalEObject oldDescription = (InternalEObject)description;
+			description = (IDescription)eResolveProxy(oldDescription);
+			if (description != oldDescription) {
+				InternalEObject newDescription = (InternalEObject)description;
+				NotificationChain msgs = oldDescription.eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.ISTATE_VERTEX__DESCRIPTION, null, null);
+				if (newDescription.eInternalContainer() == null) {
+					msgs = newDescription.eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.ISTATE_VERTEX__DESCRIPTION, null, msgs);
+				}
+				if (msgs != null) msgs.dispatch();
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.ISTATE_VERTEX__DESCRIPTION, oldDescription, description));
+			}
+		}
+		return description;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IDescription basicGetDescription() {
+		return description;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public NotificationChain basicSetDescription(IDescription newDescription, NotificationChain msgs) {
+		IDescription oldDescription = description;
+		description = newDescription;
+		if (eNotificationRequired()) {
+			ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, UMLRpyPackage.ISTATE_VERTEX__DESCRIPTION, oldDescription, newDescription);
+			if (msgs == null) msgs = notification; else msgs.add(notification);
+		}
+		return msgs;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setDescription(IDescription newDescription) {
+		if (newDescription != description) {
+			NotificationChain msgs = null;
+			if (description != null)
+				msgs = ((InternalEObject)description).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.ISTATE_VERTEX__DESCRIPTION, null, msgs);
+			if (newDescription != null)
+				msgs = ((InternalEObject)newDescription).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.ISTATE_VERTEX__DESCRIPTION, null, msgs);
+			msgs = basicSetDescription(newDescription, msgs);
+			if (msgs != null) msgs.dispatch();
+		}
+		else if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.ISTATE_VERTEX__DESCRIPTION, newDescription, newDescription));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getUmlDependencyID() {
+		return umlDependencyID;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setUmlDependencyID(String newUmlDependencyID) {
+		String oldUmlDependencyID = umlDependencyID;
+		umlDependencyID = newUmlDependencyID;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.ISTATE_VERTEX__UML_DEPENDENCY_ID, oldUmlDependencyID, umlDependencyID));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getMyState() {
+		return myState;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setMyState(String newMyState) {
+		String oldMyState = myState;
+		myState = newMyState;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.ISTATE_VERTEX__MY_STATE, oldMyState, myState));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IStereotype getStereotypes() {
+		if (stereotypes != null && stereotypes.eIsProxy()) {
+			InternalEObject oldStereotypes = (InternalEObject)stereotypes;
+			stereotypes = (IStereotype)eResolveProxy(oldStereotypes);
+			if (stereotypes != oldStereotypes) {
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.ISTATE_VERTEX__STEREOTYPES, oldStereotypes, stereotypes));
+			}
+		}
+		return stereotypes;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IStereotype basicGetStereotypes() {
+		return stereotypes;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setStereotypes(IStereotype newStereotypes) {
+		IStereotype oldStereotypes = stereotypes;
+		stereotypes = newStereotypes;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.ISTATE_VERTEX__STEREOTYPES, oldStereotypes, stereotypes));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getObjectCreation() {
+		return objectCreation;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setObjectCreation(String newObjectCreation) {
+		String oldObjectCreation = objectCreation;
+		objectCreation = newObjectCreation;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.ISTATE_VERTEX__OBJECT_CREATION, oldObjectCreation, objectCreation));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getName() {
+		return name;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setName(String newName) {
+		String oldName = name;
+		name = newName;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.ISTATE_VERTEX__NAME, oldName, name));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
+		switch (featureID) {
+			case UMLRpyPackage.ISTATE_VERTEX__DESCRIPTION:
+				return basicSetDescription(null, msgs);
+		}
+		return super.eInverseRemove(otherEnd, featureID, msgs);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object eGet(int featureID, boolean resolve, boolean coreType) {
+		switch (featureID) {
+			case UMLRpyPackage.ISTATE_VERTEX__MODIFIED_TIME_WEAK:
+				return getModifiedTimeWeak();
+			case UMLRpyPackage.ISTATE_VERTEX__ID:
+				return getId();
+			case UMLRpyPackage.ISTATE_VERTEX__DESCRIPTION:
+				if (resolve) return getDescription();
+				return basicGetDescription();
+			case UMLRpyPackage.ISTATE_VERTEX__UML_DEPENDENCY_ID:
+				return getUmlDependencyID();
+			case UMLRpyPackage.ISTATE_VERTEX__MY_STATE:
+				return getMyState();
+			case UMLRpyPackage.ISTATE_VERTEX__STEREOTYPES:
+				if (resolve) return getStereotypes();
+				return basicGetStereotypes();
+			case UMLRpyPackage.ISTATE_VERTEX__OBJECT_CREATION:
+				return getObjectCreation();
+			case UMLRpyPackage.ISTATE_VERTEX__NAME:
+				return getName();
+		}
+		return super.eGet(featureID, resolve, coreType);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@SuppressWarnings("unchecked")
+	@Override
+	public void eSet(int featureID, Object newValue) {
+		switch (featureID) {
+			case UMLRpyPackage.ISTATE_VERTEX__MODIFIED_TIME_WEAK:
+				getModifiedTimeWeak().clear();
+				getModifiedTimeWeak().addAll((Collection<? extends String>)newValue);
+				return;
+			case UMLRpyPackage.ISTATE_VERTEX__ID:
+				setId((String)newValue);
+				return;
+			case UMLRpyPackage.ISTATE_VERTEX__DESCRIPTION:
+				setDescription((IDescription)newValue);
+				return;
+			case UMLRpyPackage.ISTATE_VERTEX__UML_DEPENDENCY_ID:
+				setUmlDependencyID((String)newValue);
+				return;
+			case UMLRpyPackage.ISTATE_VERTEX__MY_STATE:
+				setMyState((String)newValue);
+				return;
+			case UMLRpyPackage.ISTATE_VERTEX__STEREOTYPES:
+				setStereotypes((IStereotype)newValue);
+				return;
+			case UMLRpyPackage.ISTATE_VERTEX__OBJECT_CREATION:
+				setObjectCreation((String)newValue);
+				return;
+			case UMLRpyPackage.ISTATE_VERTEX__NAME:
+				setName((String)newValue);
+				return;
+		}
+		super.eSet(featureID, newValue);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void eUnset(int featureID) {
+		switch (featureID) {
+			case UMLRpyPackage.ISTATE_VERTEX__MODIFIED_TIME_WEAK:
+				getModifiedTimeWeak().clear();
+				return;
+			case UMLRpyPackage.ISTATE_VERTEX__ID:
+				setId(ID_EDEFAULT);
+				return;
+			case UMLRpyPackage.ISTATE_VERTEX__DESCRIPTION:
+				setDescription((IDescription)null);
+				return;
+			case UMLRpyPackage.ISTATE_VERTEX__UML_DEPENDENCY_ID:
+				setUmlDependencyID(UML_DEPENDENCY_ID_EDEFAULT);
+				return;
+			case UMLRpyPackage.ISTATE_VERTEX__MY_STATE:
+				setMyState(MY_STATE_EDEFAULT);
+				return;
+			case UMLRpyPackage.ISTATE_VERTEX__STEREOTYPES:
+				setStereotypes((IStereotype)null);
+				return;
+			case UMLRpyPackage.ISTATE_VERTEX__OBJECT_CREATION:
+				setObjectCreation(OBJECT_CREATION_EDEFAULT);
+				return;
+			case UMLRpyPackage.ISTATE_VERTEX__NAME:
+				setName(NAME_EDEFAULT);
+				return;
+		}
+		super.eUnset(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public boolean eIsSet(int featureID) {
+		switch (featureID) {
+			case UMLRpyPackage.ISTATE_VERTEX__MODIFIED_TIME_WEAK:
+				return modifiedTimeWeak != null && !modifiedTimeWeak.isEmpty();
+			case UMLRpyPackage.ISTATE_VERTEX__ID:
+				return ID_EDEFAULT == null ? id != null : !ID_EDEFAULT.equals(id);
+			case UMLRpyPackage.ISTATE_VERTEX__DESCRIPTION:
+				return description != null;
+			case UMLRpyPackage.ISTATE_VERTEX__UML_DEPENDENCY_ID:
+				return UML_DEPENDENCY_ID_EDEFAULT == null ? umlDependencyID != null : !UML_DEPENDENCY_ID_EDEFAULT.equals(umlDependencyID);
+			case UMLRpyPackage.ISTATE_VERTEX__MY_STATE:
+				return MY_STATE_EDEFAULT == null ? myState != null : !MY_STATE_EDEFAULT.equals(myState);
+			case UMLRpyPackage.ISTATE_VERTEX__STEREOTYPES:
+				return stereotypes != null;
+			case UMLRpyPackage.ISTATE_VERTEX__OBJECT_CREATION:
+				return OBJECT_CREATION_EDEFAULT == null ? objectCreation != null : !OBJECT_CREATION_EDEFAULT.equals(objectCreation);
+			case UMLRpyPackage.ISTATE_VERTEX__NAME:
+				return NAME_EDEFAULT == null ? name != null : !NAME_EDEFAULT.equals(name);
+		}
+		return super.eIsSet(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String toString() {
+		if (eIsProxy()) return super.toString();
+
+		StringBuffer result = new StringBuffer(super.toString());
+		result.append(" (modifiedTimeWeak: "); //$NON-NLS-1$
+		result.append(modifiedTimeWeak);
+		result.append(", id: "); //$NON-NLS-1$
+		result.append(id);
+		result.append(", umlDependencyID: "); //$NON-NLS-1$
+		result.append(umlDependencyID);
+		result.append(", myState: "); //$NON-NLS-1$
+		result.append(myState);
+		result.append(", objectCreation: "); //$NON-NLS-1$
+		result.append(objectCreation);
+		result.append(", name: "); //$NON-NLS-1$
+		result.append(name);
+		result.append(')');
+		return result.toString();
+	}
+
+} //IStateVertexImpl
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/IStereotypeImpl.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/IStereotypeImpl.java
new file mode 100755
index 0000000..dd9a209
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/IStereotypeImpl.java
@@ -0,0 +1,1227 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl;
+
+import java.util.Collection;
+
+import org.eclipse.emf.common.notify.Notification;
+import org.eclipse.emf.common.notify.NotificationChain;
+
+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.EDataTypeEList;
+import org.eclipse.emf.ecore.util.EObjectContainmentEList;
+import org.eclipse.emf.ecore.util.InternalEList;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.DeclarativesType;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.DependsOnType;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ElementsType;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IComment;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IDependency;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IDescription;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IGeneralization;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IPropertyContainer;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IStereotype;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITag;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IUnit;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.M_pModelObjectType;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ValueType;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>IStereotype</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * </p>
+ * <ul>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IStereotypeImpl#getModifiedTimeWeak <em>Modified Time Weak</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IStereotypeImpl#getId <em>Id</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IStereotypeImpl#getMyState <em>My State</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IStereotypeImpl#getName <em>Name</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IStereotypeImpl#getProperties <em>Properties</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IStereotypeImpl#getM2Classes <em>M2 Classes</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IStereotypeImpl#getNewTerm <em>New Term</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IStereotypeImpl#getDescription <em>Description</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IStereotypeImpl#getTags <em>Tags</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IStereotypeImpl#getLastID <em>Last ID</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IStereotypeImpl#getInheritances <em>Inheritances</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IStereotypeImpl#getDependencies <em>Dependencies</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IStereotypeImpl#getRequiremenTracabilityHandle <em>Requiremen Tracability Handle</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IStereotypeImpl#getObjectCreation <em>Object Creation</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IStereotypeImpl#getUmlDependencyID <em>Uml Dependency ID</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IStereotypeImpl#getTheMainDiagram <em>The Main Diagram</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IStereotypeImpl#getAnnotations <em>Annotations</em>}</li>
+ * </ul>
+ *
+ * @generated
+ */
+public class IStereotypeImpl extends IClassifierImpl implements IStereotype {
+	/**
+	 * The cached value of the '{@link #getModifiedTimeWeak() <em>Modified Time Weak</em>}' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getModifiedTimeWeak()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<String> modifiedTimeWeak;
+
+	/**
+	 * The default value of the '{@link #getId() <em>Id</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getId()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String ID_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getId() <em>Id</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getId()
+	 * @generated
+	 * @ordered
+	 */
+	protected String id = ID_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getMyState() <em>My State</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getMyState()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String MY_STATE_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getMyState() <em>My State</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getMyState()
+	 * @generated
+	 * @ordered
+	 */
+	protected String myState = MY_STATE_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getName() <em>Name</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getName()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String NAME_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getName() <em>Name</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getName()
+	 * @generated
+	 * @ordered
+	 */
+	protected String name = NAME_EDEFAULT;
+
+	/**
+	 * The cached value of the '{@link #getProperties() <em>Properties</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getProperties()
+	 * @generated
+	 * @ordered
+	 */
+	protected IPropertyContainer properties;
+
+	/**
+	 * The cached value of the '{@link #getM2Classes() <em>M2 Classes</em>}' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getM2Classes()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<String> m2Classes;
+
+	/**
+	 * The default value of the '{@link #getNewTerm() <em>New Term</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getNewTerm()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String NEW_TERM_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getNewTerm() <em>New Term</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getNewTerm()
+	 * @generated
+	 * @ordered
+	 */
+	protected String newTerm = NEW_TERM_EDEFAULT;
+
+	/**
+	 * The cached value of the '{@link #getDescription() <em>Description</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getDescription()
+	 * @generated
+	 * @ordered
+	 */
+	protected IDescription description;
+
+	/**
+	 * The cached value of the '{@link #getTags() <em>Tags</em>}' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getTags()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<ITag> tags;
+
+	/**
+	 * The default value of the '{@link #getLastID() <em>Last ID</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getLastID()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String LAST_ID_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getLastID() <em>Last ID</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getLastID()
+	 * @generated
+	 * @ordered
+	 */
+	protected String lastID = LAST_ID_EDEFAULT;
+
+	/**
+	 * The cached value of the '{@link #getInheritances() <em>Inheritances</em>}' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getInheritances()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<IGeneralization> inheritances;
+
+	/**
+	 * The cached value of the '{@link #getDependencies() <em>Dependencies</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getDependencies()
+	 * @generated
+	 * @ordered
+	 */
+	protected IDependency dependencies;
+
+	/**
+	 * The default value of the '{@link #getRequiremenTracabilityHandle() <em>Requiremen Tracability Handle</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getRequiremenTracabilityHandle()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String REQUIREMEN_TRACABILITY_HANDLE_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getRequiremenTracabilityHandle() <em>Requiremen Tracability Handle</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getRequiremenTracabilityHandle()
+	 * @generated
+	 * @ordered
+	 */
+	protected String requiremenTracabilityHandle = REQUIREMEN_TRACABILITY_HANDLE_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getObjectCreation() <em>Object Creation</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getObjectCreation()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String OBJECT_CREATION_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getObjectCreation() <em>Object Creation</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getObjectCreation()
+	 * @generated
+	 * @ordered
+	 */
+	protected String objectCreation = OBJECT_CREATION_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getUmlDependencyID() <em>Uml Dependency ID</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getUmlDependencyID()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String UML_DEPENDENCY_ID_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getUmlDependencyID() <em>Uml Dependency ID</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getUmlDependencyID()
+	 * @generated
+	 * @ordered
+	 */
+	protected String umlDependencyID = UML_DEPENDENCY_ID_EDEFAULT;
+
+	/**
+	 * The cached value of the '{@link #getTheMainDiagram() <em>The Main Diagram</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getTheMainDiagram()
+	 * @generated
+	 * @ordered
+	 */
+	protected IUnit theMainDiagram;
+
+	/**
+	 * The cached value of the '{@link #getAnnotations() <em>Annotations</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getAnnotations()
+	 * @generated
+	 * @ordered
+	 */
+	protected IComment annotations;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected IStereotypeImpl() {
+		super();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EClass eStaticClass() {
+		return UMLRpyPackage.eINSTANCE.getIStereotype();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<String> getModifiedTimeWeak() {
+		if (modifiedTimeWeak == null) {
+			modifiedTimeWeak = new EDataTypeEList<String>(String.class, this, UMLRpyPackage.ISTEREOTYPE__MODIFIED_TIME_WEAK);
+		}
+		return modifiedTimeWeak;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getId() {
+		return id;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setId(String newId) {
+		String oldId = id;
+		id = newId;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.ISTEREOTYPE__ID, oldId, id));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getMyState() {
+		return myState;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setMyState(String newMyState) {
+		String oldMyState = myState;
+		myState = newMyState;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.ISTEREOTYPE__MY_STATE, oldMyState, myState));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getName() {
+		return name;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setName(String newName) {
+		String oldName = name;
+		name = newName;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.ISTEREOTYPE__NAME, oldName, name));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IPropertyContainer getProperties() {
+		if (properties != null && properties.eIsProxy()) {
+			InternalEObject oldProperties = (InternalEObject)properties;
+			properties = (IPropertyContainer)eResolveProxy(oldProperties);
+			if (properties != oldProperties) {
+				InternalEObject newProperties = (InternalEObject)properties;
+				NotificationChain msgs = oldProperties.eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.ISTEREOTYPE__PROPERTIES, null, null);
+				if (newProperties.eInternalContainer() == null) {
+					msgs = newProperties.eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.ISTEREOTYPE__PROPERTIES, null, msgs);
+				}
+				if (msgs != null) msgs.dispatch();
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.ISTEREOTYPE__PROPERTIES, oldProperties, properties));
+			}
+		}
+		return properties;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IPropertyContainer basicGetProperties() {
+		return properties;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public NotificationChain basicSetProperties(IPropertyContainer newProperties, NotificationChain msgs) {
+		IPropertyContainer oldProperties = properties;
+		properties = newProperties;
+		if (eNotificationRequired()) {
+			ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, UMLRpyPackage.ISTEREOTYPE__PROPERTIES, oldProperties, newProperties);
+			if (msgs == null) msgs = notification; else msgs.add(notification);
+		}
+		return msgs;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setProperties(IPropertyContainer newProperties) {
+		if (newProperties != properties) {
+			NotificationChain msgs = null;
+			if (properties != null)
+				msgs = ((InternalEObject)properties).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.ISTEREOTYPE__PROPERTIES, null, msgs);
+			if (newProperties != null)
+				msgs = ((InternalEObject)newProperties).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.ISTEREOTYPE__PROPERTIES, null, msgs);
+			msgs = basicSetProperties(newProperties, msgs);
+			if (msgs != null) msgs.dispatch();
+		}
+		else if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.ISTEREOTYPE__PROPERTIES, newProperties, newProperties));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<String> getM2Classes() {
+		if (m2Classes == null) {
+			m2Classes = new EDataTypeEList<String>(String.class, this, UMLRpyPackage.ISTEREOTYPE__M2_CLASSES);
+		}
+		return m2Classes;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getNewTerm() {
+		return newTerm;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setNewTerm(String newNewTerm) {
+		String oldNewTerm = newTerm;
+		newTerm = newNewTerm;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.ISTEREOTYPE__NEW_TERM, oldNewTerm, newTerm));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IDescription getDescription() {
+		if (description != null && description.eIsProxy()) {
+			InternalEObject oldDescription = (InternalEObject)description;
+			description = (IDescription)eResolveProxy(oldDescription);
+			if (description != oldDescription) {
+				InternalEObject newDescription = (InternalEObject)description;
+				NotificationChain msgs = oldDescription.eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.ISTEREOTYPE__DESCRIPTION, null, null);
+				if (newDescription.eInternalContainer() == null) {
+					msgs = newDescription.eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.ISTEREOTYPE__DESCRIPTION, null, msgs);
+				}
+				if (msgs != null) msgs.dispatch();
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.ISTEREOTYPE__DESCRIPTION, oldDescription, description));
+			}
+		}
+		return description;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IDescription basicGetDescription() {
+		return description;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public NotificationChain basicSetDescription(IDescription newDescription, NotificationChain msgs) {
+		IDescription oldDescription = description;
+		description = newDescription;
+		if (eNotificationRequired()) {
+			ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, UMLRpyPackage.ISTEREOTYPE__DESCRIPTION, oldDescription, newDescription);
+			if (msgs == null) msgs = notification; else msgs.add(notification);
+		}
+		return msgs;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setDescription(IDescription newDescription) {
+		if (newDescription != description) {
+			NotificationChain msgs = null;
+			if (description != null)
+				msgs = ((InternalEObject)description).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.ISTEREOTYPE__DESCRIPTION, null, msgs);
+			if (newDescription != null)
+				msgs = ((InternalEObject)newDescription).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.ISTEREOTYPE__DESCRIPTION, null, msgs);
+			msgs = basicSetDescription(newDescription, msgs);
+			if (msgs != null) msgs.dispatch();
+		}
+		else if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.ISTEREOTYPE__DESCRIPTION, newDescription, newDescription));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<ITag> getTags() {
+		if (tags == null) {
+			tags = new EObjectContainmentEList.Resolving<ITag>(ITag.class, this, UMLRpyPackage.ISTEREOTYPE__TAGS);
+		}
+		return tags;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getLastID() {
+		return lastID;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setLastID(String newLastID) {
+		String oldLastID = lastID;
+		lastID = newLastID;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.ISTEREOTYPE__LAST_ID, oldLastID, lastID));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<IGeneralization> getInheritances() {
+		if (inheritances == null) {
+			inheritances = new EObjectContainmentEList.Resolving<IGeneralization>(IGeneralization.class, this, UMLRpyPackage.ISTEREOTYPE__INHERITANCES);
+		}
+		return inheritances;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IDependency getDependencies() {
+		if (dependencies != null && dependencies.eIsProxy()) {
+			InternalEObject oldDependencies = (InternalEObject)dependencies;
+			dependencies = (IDependency)eResolveProxy(oldDependencies);
+			if (dependencies != oldDependencies) {
+				InternalEObject newDependencies = (InternalEObject)dependencies;
+				NotificationChain msgs = oldDependencies.eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.ISTEREOTYPE__DEPENDENCIES, null, null);
+				if (newDependencies.eInternalContainer() == null) {
+					msgs = newDependencies.eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.ISTEREOTYPE__DEPENDENCIES, null, msgs);
+				}
+				if (msgs != null) msgs.dispatch();
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.ISTEREOTYPE__DEPENDENCIES, oldDependencies, dependencies));
+			}
+		}
+		return dependencies;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IDependency basicGetDependencies() {
+		return dependencies;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public NotificationChain basicSetDependencies(IDependency newDependencies, NotificationChain msgs) {
+		IDependency oldDependencies = dependencies;
+		dependencies = newDependencies;
+		if (eNotificationRequired()) {
+			ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, UMLRpyPackage.ISTEREOTYPE__DEPENDENCIES, oldDependencies, newDependencies);
+			if (msgs == null) msgs = notification; else msgs.add(notification);
+		}
+		return msgs;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setDependencies(IDependency newDependencies) {
+		if (newDependencies != dependencies) {
+			NotificationChain msgs = null;
+			if (dependencies != null)
+				msgs = ((InternalEObject)dependencies).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.ISTEREOTYPE__DEPENDENCIES, null, msgs);
+			if (newDependencies != null)
+				msgs = ((InternalEObject)newDependencies).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.ISTEREOTYPE__DEPENDENCIES, null, msgs);
+			msgs = basicSetDependencies(newDependencies, msgs);
+			if (msgs != null) msgs.dispatch();
+		}
+		else if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.ISTEREOTYPE__DEPENDENCIES, newDependencies, newDependencies));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getRequiremenTracabilityHandle() {
+		return requiremenTracabilityHandle;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setRequiremenTracabilityHandle(String newRequiremenTracabilityHandle) {
+		String oldRequiremenTracabilityHandle = requiremenTracabilityHandle;
+		requiremenTracabilityHandle = newRequiremenTracabilityHandle;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.ISTEREOTYPE__REQUIREMEN_TRACABILITY_HANDLE, oldRequiremenTracabilityHandle, requiremenTracabilityHandle));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getObjectCreation() {
+		return objectCreation;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setObjectCreation(String newObjectCreation) {
+		String oldObjectCreation = objectCreation;
+		objectCreation = newObjectCreation;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.ISTEREOTYPE__OBJECT_CREATION, oldObjectCreation, objectCreation));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getUmlDependencyID() {
+		return umlDependencyID;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setUmlDependencyID(String newUmlDependencyID) {
+		String oldUmlDependencyID = umlDependencyID;
+		umlDependencyID = newUmlDependencyID;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.ISTEREOTYPE__UML_DEPENDENCY_ID, oldUmlDependencyID, umlDependencyID));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IUnit getTheMainDiagram() {
+		if (theMainDiagram != null && theMainDiagram.eIsProxy()) {
+			InternalEObject oldTheMainDiagram = (InternalEObject)theMainDiagram;
+			theMainDiagram = (IUnit)eResolveProxy(oldTheMainDiagram);
+			if (theMainDiagram != oldTheMainDiagram) {
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.ISTEREOTYPE__THE_MAIN_DIAGRAM, oldTheMainDiagram, theMainDiagram));
+			}
+		}
+		return theMainDiagram;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IUnit basicGetTheMainDiagram() {
+		return theMainDiagram;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setTheMainDiagram(IUnit newTheMainDiagram) {
+		IUnit oldTheMainDiagram = theMainDiagram;
+		theMainDiagram = newTheMainDiagram;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.ISTEREOTYPE__THE_MAIN_DIAGRAM, oldTheMainDiagram, theMainDiagram));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IComment getAnnotations() {
+		if (annotations != null && annotations.eIsProxy()) {
+			InternalEObject oldAnnotations = (InternalEObject)annotations;
+			annotations = (IComment)eResolveProxy(oldAnnotations);
+			if (annotations != oldAnnotations) {
+				InternalEObject newAnnotations = (InternalEObject)annotations;
+				NotificationChain msgs = oldAnnotations.eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.ISTEREOTYPE__ANNOTATIONS, null, null);
+				if (newAnnotations.eInternalContainer() == null) {
+					msgs = newAnnotations.eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.ISTEREOTYPE__ANNOTATIONS, null, msgs);
+				}
+				if (msgs != null) msgs.dispatch();
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.ISTEREOTYPE__ANNOTATIONS, oldAnnotations, annotations));
+			}
+		}
+		return annotations;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IComment basicGetAnnotations() {
+		return annotations;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public NotificationChain basicSetAnnotations(IComment newAnnotations, NotificationChain msgs) {
+		IComment oldAnnotations = annotations;
+		annotations = newAnnotations;
+		if (eNotificationRequired()) {
+			ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, UMLRpyPackage.ISTEREOTYPE__ANNOTATIONS, oldAnnotations, newAnnotations);
+			if (msgs == null) msgs = notification; else msgs.add(notification);
+		}
+		return msgs;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setAnnotations(IComment newAnnotations) {
+		if (newAnnotations != annotations) {
+			NotificationChain msgs = null;
+			if (annotations != null)
+				msgs = ((InternalEObject)annotations).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.ISTEREOTYPE__ANNOTATIONS, null, msgs);
+			if (newAnnotations != null)
+				msgs = ((InternalEObject)newAnnotations).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.ISTEREOTYPE__ANNOTATIONS, null, msgs);
+			msgs = basicSetAnnotations(newAnnotations, msgs);
+			if (msgs != null) msgs.dispatch();
+		}
+		else if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.ISTEREOTYPE__ANNOTATIONS, newAnnotations, newAnnotations));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
+		switch (featureID) {
+			case UMLRpyPackage.ISTEREOTYPE__PROPERTIES:
+				return basicSetProperties(null, msgs);
+			case UMLRpyPackage.ISTEREOTYPE__DESCRIPTION:
+				return basicSetDescription(null, msgs);
+			case UMLRpyPackage.ISTEREOTYPE__TAGS:
+				return ((InternalEList<?>)getTags()).basicRemove(otherEnd, msgs);
+			case UMLRpyPackage.ISTEREOTYPE__INHERITANCES:
+				return ((InternalEList<?>)getInheritances()).basicRemove(otherEnd, msgs);
+			case UMLRpyPackage.ISTEREOTYPE__DEPENDENCIES:
+				return basicSetDependencies(null, msgs);
+			case UMLRpyPackage.ISTEREOTYPE__ANNOTATIONS:
+				return basicSetAnnotations(null, msgs);
+		}
+		return super.eInverseRemove(otherEnd, featureID, msgs);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object eGet(int featureID, boolean resolve, boolean coreType) {
+		switch (featureID) {
+			case UMLRpyPackage.ISTEREOTYPE__MODIFIED_TIME_WEAK:
+				return getModifiedTimeWeak();
+			case UMLRpyPackage.ISTEREOTYPE__ID:
+				return getId();
+			case UMLRpyPackage.ISTEREOTYPE__MY_STATE:
+				return getMyState();
+			case UMLRpyPackage.ISTEREOTYPE__NAME:
+				return getName();
+			case UMLRpyPackage.ISTEREOTYPE__PROPERTIES:
+				if (resolve) return getProperties();
+				return basicGetProperties();
+			case UMLRpyPackage.ISTEREOTYPE__M2_CLASSES:
+				return getM2Classes();
+			case UMLRpyPackage.ISTEREOTYPE__NEW_TERM:
+				return getNewTerm();
+			case UMLRpyPackage.ISTEREOTYPE__DESCRIPTION:
+				if (resolve) return getDescription();
+				return basicGetDescription();
+			case UMLRpyPackage.ISTEREOTYPE__TAGS:
+				return getTags();
+			case UMLRpyPackage.ISTEREOTYPE__LAST_ID:
+				return getLastID();
+			case UMLRpyPackage.ISTEREOTYPE__INHERITANCES:
+				return getInheritances();
+			case UMLRpyPackage.ISTEREOTYPE__DEPENDENCIES:
+				if (resolve) return getDependencies();
+				return basicGetDependencies();
+			case UMLRpyPackage.ISTEREOTYPE__REQUIREMEN_TRACABILITY_HANDLE:
+				return getRequiremenTracabilityHandle();
+			case UMLRpyPackage.ISTEREOTYPE__OBJECT_CREATION:
+				return getObjectCreation();
+			case UMLRpyPackage.ISTEREOTYPE__UML_DEPENDENCY_ID:
+				return getUmlDependencyID();
+			case UMLRpyPackage.ISTEREOTYPE__THE_MAIN_DIAGRAM:
+				if (resolve) return getTheMainDiagram();
+				return basicGetTheMainDiagram();
+			case UMLRpyPackage.ISTEREOTYPE__ANNOTATIONS:
+				if (resolve) return getAnnotations();
+				return basicGetAnnotations();
+		}
+		return super.eGet(featureID, resolve, coreType);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@SuppressWarnings("unchecked")
+	@Override
+	public void eSet(int featureID, Object newValue) {
+		switch (featureID) {
+			case UMLRpyPackage.ISTEREOTYPE__MODIFIED_TIME_WEAK:
+				getModifiedTimeWeak().clear();
+				getModifiedTimeWeak().addAll((Collection<? extends String>)newValue);
+				return;
+			case UMLRpyPackage.ISTEREOTYPE__ID:
+				setId((String)newValue);
+				return;
+			case UMLRpyPackage.ISTEREOTYPE__MY_STATE:
+				setMyState((String)newValue);
+				return;
+			case UMLRpyPackage.ISTEREOTYPE__NAME:
+				setName((String)newValue);
+				return;
+			case UMLRpyPackage.ISTEREOTYPE__PROPERTIES:
+				setProperties((IPropertyContainer)newValue);
+				return;
+			case UMLRpyPackage.ISTEREOTYPE__M2_CLASSES:
+				getM2Classes().clear();
+				getM2Classes().addAll((Collection<? extends String>)newValue);
+				return;
+			case UMLRpyPackage.ISTEREOTYPE__NEW_TERM:
+				setNewTerm((String)newValue);
+				return;
+			case UMLRpyPackage.ISTEREOTYPE__DESCRIPTION:
+				setDescription((IDescription)newValue);
+				return;
+			case UMLRpyPackage.ISTEREOTYPE__TAGS:
+				getTags().clear();
+				getTags().addAll((Collection<? extends ITag>)newValue);
+				return;
+			case UMLRpyPackage.ISTEREOTYPE__LAST_ID:
+				setLastID((String)newValue);
+				return;
+			case UMLRpyPackage.ISTEREOTYPE__INHERITANCES:
+				getInheritances().clear();
+				getInheritances().addAll((Collection<? extends IGeneralization>)newValue);
+				return;
+			case UMLRpyPackage.ISTEREOTYPE__DEPENDENCIES:
+				setDependencies((IDependency)newValue);
+				return;
+			case UMLRpyPackage.ISTEREOTYPE__REQUIREMEN_TRACABILITY_HANDLE:
+				setRequiremenTracabilityHandle((String)newValue);
+				return;
+			case UMLRpyPackage.ISTEREOTYPE__OBJECT_CREATION:
+				setObjectCreation((String)newValue);
+				return;
+			case UMLRpyPackage.ISTEREOTYPE__UML_DEPENDENCY_ID:
+				setUmlDependencyID((String)newValue);
+				return;
+			case UMLRpyPackage.ISTEREOTYPE__THE_MAIN_DIAGRAM:
+				setTheMainDiagram((IUnit)newValue);
+				return;
+			case UMLRpyPackage.ISTEREOTYPE__ANNOTATIONS:
+				setAnnotations((IComment)newValue);
+				return;
+		}
+		super.eSet(featureID, newValue);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void eUnset(int featureID) {
+		switch (featureID) {
+			case UMLRpyPackage.ISTEREOTYPE__MODIFIED_TIME_WEAK:
+				getModifiedTimeWeak().clear();
+				return;
+			case UMLRpyPackage.ISTEREOTYPE__ID:
+				setId(ID_EDEFAULT);
+				return;
+			case UMLRpyPackage.ISTEREOTYPE__MY_STATE:
+				setMyState(MY_STATE_EDEFAULT);
+				return;
+			case UMLRpyPackage.ISTEREOTYPE__NAME:
+				setName(NAME_EDEFAULT);
+				return;
+			case UMLRpyPackage.ISTEREOTYPE__PROPERTIES:
+				setProperties((IPropertyContainer)null);
+				return;
+			case UMLRpyPackage.ISTEREOTYPE__M2_CLASSES:
+				getM2Classes().clear();
+				return;
+			case UMLRpyPackage.ISTEREOTYPE__NEW_TERM:
+				setNewTerm(NEW_TERM_EDEFAULT);
+				return;
+			case UMLRpyPackage.ISTEREOTYPE__DESCRIPTION:
+				setDescription((IDescription)null);
+				return;
+			case UMLRpyPackage.ISTEREOTYPE__TAGS:
+				getTags().clear();
+				return;
+			case UMLRpyPackage.ISTEREOTYPE__LAST_ID:
+				setLastID(LAST_ID_EDEFAULT);
+				return;
+			case UMLRpyPackage.ISTEREOTYPE__INHERITANCES:
+				getInheritances().clear();
+				return;
+			case UMLRpyPackage.ISTEREOTYPE__DEPENDENCIES:
+				setDependencies((IDependency)null);
+				return;
+			case UMLRpyPackage.ISTEREOTYPE__REQUIREMEN_TRACABILITY_HANDLE:
+				setRequiremenTracabilityHandle(REQUIREMEN_TRACABILITY_HANDLE_EDEFAULT);
+				return;
+			case UMLRpyPackage.ISTEREOTYPE__OBJECT_CREATION:
+				setObjectCreation(OBJECT_CREATION_EDEFAULT);
+				return;
+			case UMLRpyPackage.ISTEREOTYPE__UML_DEPENDENCY_ID:
+				setUmlDependencyID(UML_DEPENDENCY_ID_EDEFAULT);
+				return;
+			case UMLRpyPackage.ISTEREOTYPE__THE_MAIN_DIAGRAM:
+				setTheMainDiagram((IUnit)null);
+				return;
+			case UMLRpyPackage.ISTEREOTYPE__ANNOTATIONS:
+				setAnnotations((IComment)null);
+				return;
+		}
+		super.eUnset(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public boolean eIsSet(int featureID) {
+		switch (featureID) {
+			case UMLRpyPackage.ISTEREOTYPE__MODIFIED_TIME_WEAK:
+				return modifiedTimeWeak != null && !modifiedTimeWeak.isEmpty();
+			case UMLRpyPackage.ISTEREOTYPE__ID:
+				return ID_EDEFAULT == null ? id != null : !ID_EDEFAULT.equals(id);
+			case UMLRpyPackage.ISTEREOTYPE__MY_STATE:
+				return MY_STATE_EDEFAULT == null ? myState != null : !MY_STATE_EDEFAULT.equals(myState);
+			case UMLRpyPackage.ISTEREOTYPE__NAME:
+				return NAME_EDEFAULT == null ? name != null : !NAME_EDEFAULT.equals(name);
+			case UMLRpyPackage.ISTEREOTYPE__PROPERTIES:
+				return properties != null;
+			case UMLRpyPackage.ISTEREOTYPE__M2_CLASSES:
+				return m2Classes != null && !m2Classes.isEmpty();
+			case UMLRpyPackage.ISTEREOTYPE__NEW_TERM:
+				return NEW_TERM_EDEFAULT == null ? newTerm != null : !NEW_TERM_EDEFAULT.equals(newTerm);
+			case UMLRpyPackage.ISTEREOTYPE__DESCRIPTION:
+				return description != null;
+			case UMLRpyPackage.ISTEREOTYPE__TAGS:
+				return tags != null && !tags.isEmpty();
+			case UMLRpyPackage.ISTEREOTYPE__LAST_ID:
+				return LAST_ID_EDEFAULT == null ? lastID != null : !LAST_ID_EDEFAULT.equals(lastID);
+			case UMLRpyPackage.ISTEREOTYPE__INHERITANCES:
+				return inheritances != null && !inheritances.isEmpty();
+			case UMLRpyPackage.ISTEREOTYPE__DEPENDENCIES:
+				return dependencies != null;
+			case UMLRpyPackage.ISTEREOTYPE__REQUIREMEN_TRACABILITY_HANDLE:
+				return REQUIREMEN_TRACABILITY_HANDLE_EDEFAULT == null ? requiremenTracabilityHandle != null : !REQUIREMEN_TRACABILITY_HANDLE_EDEFAULT.equals(requiremenTracabilityHandle);
+			case UMLRpyPackage.ISTEREOTYPE__OBJECT_CREATION:
+				return OBJECT_CREATION_EDEFAULT == null ? objectCreation != null : !OBJECT_CREATION_EDEFAULT.equals(objectCreation);
+			case UMLRpyPackage.ISTEREOTYPE__UML_DEPENDENCY_ID:
+				return UML_DEPENDENCY_ID_EDEFAULT == null ? umlDependencyID != null : !UML_DEPENDENCY_ID_EDEFAULT.equals(umlDependencyID);
+			case UMLRpyPackage.ISTEREOTYPE__THE_MAIN_DIAGRAM:
+				return theMainDiagram != null;
+			case UMLRpyPackage.ISTEREOTYPE__ANNOTATIONS:
+				return annotations != null;
+		}
+		return super.eIsSet(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public int eBaseStructuralFeatureID(int derivedFeatureID, Class<?> baseClass) {
+		if (baseClass == ValueType.class) {
+			switch (derivedFeatureID) {
+				case UMLRpyPackage.ISTEREOTYPE__MODIFIED_TIME_WEAK: return UMLRpyPackage.VALUE_TYPE__MODIFIED_TIME_WEAK;
+				case UMLRpyPackage.ISTEREOTYPE__ID: return UMLRpyPackage.VALUE_TYPE__ID;
+				case UMLRpyPackage.ISTEREOTYPE__MY_STATE: return UMLRpyPackage.VALUE_TYPE__MY_STATE;
+				case UMLRpyPackage.ISTEREOTYPE__NAME: return UMLRpyPackage.VALUE_TYPE__NAME;
+				default: return -1;
+			}
+		}
+		if (baseClass == DeclarativesType.class) {
+			switch (derivedFeatureID) {
+				default: return -1;
+			}
+		}
+		if (baseClass == ElementsType.class) {
+			switch (derivedFeatureID) {
+				default: return -1;
+			}
+		}
+		if (baseClass == DependsOnType.class) {
+			switch (derivedFeatureID) {
+				default: return -1;
+			}
+		}
+		if (baseClass == M_pModelObjectType.class) {
+			switch (derivedFeatureID) {
+				default: return -1;
+			}
+		}
+		return super.eBaseStructuralFeatureID(derivedFeatureID, baseClass);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public int eDerivedStructuralFeatureID(int baseFeatureID, Class<?> baseClass) {
+		if (baseClass == ValueType.class) {
+			switch (baseFeatureID) {
+				case UMLRpyPackage.VALUE_TYPE__MODIFIED_TIME_WEAK: return UMLRpyPackage.ISTEREOTYPE__MODIFIED_TIME_WEAK;
+				case UMLRpyPackage.VALUE_TYPE__ID: return UMLRpyPackage.ISTEREOTYPE__ID;
+				case UMLRpyPackage.VALUE_TYPE__MY_STATE: return UMLRpyPackage.ISTEREOTYPE__MY_STATE;
+				case UMLRpyPackage.VALUE_TYPE__NAME: return UMLRpyPackage.ISTEREOTYPE__NAME;
+				default: return -1;
+			}
+		}
+		if (baseClass == DeclarativesType.class) {
+			switch (baseFeatureID) {
+				default: return -1;
+			}
+		}
+		if (baseClass == ElementsType.class) {
+			switch (baseFeatureID) {
+				default: return -1;
+			}
+		}
+		if (baseClass == DependsOnType.class) {
+			switch (baseFeatureID) {
+				default: return -1;
+			}
+		}
+		if (baseClass == M_pModelObjectType.class) {
+			switch (baseFeatureID) {
+				default: return -1;
+			}
+		}
+		return super.eDerivedStructuralFeatureID(baseFeatureID, baseClass);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String toString() {
+		if (eIsProxy()) return super.toString();
+
+		StringBuffer result = new StringBuffer(super.toString());
+		result.append(" (modifiedTimeWeak: "); //$NON-NLS-1$
+		result.append(modifiedTimeWeak);
+		result.append(", id: "); //$NON-NLS-1$
+		result.append(id);
+		result.append(", myState: "); //$NON-NLS-1$
+		result.append(myState);
+		result.append(", name: "); //$NON-NLS-1$
+		result.append(name);
+		result.append(", m2Classes: "); //$NON-NLS-1$
+		result.append(m2Classes);
+		result.append(", newTerm: "); //$NON-NLS-1$
+		result.append(newTerm);
+		result.append(", lastID: "); //$NON-NLS-1$
+		result.append(lastID);
+		result.append(", requiremenTracabilityHandle: "); //$NON-NLS-1$
+		result.append(requiremenTracabilityHandle);
+		result.append(", objectCreation: "); //$NON-NLS-1$
+		result.append(objectCreation);
+		result.append(", umlDependencyID: "); //$NON-NLS-1$
+		result.append(umlDependencyID);
+		result.append(')');
+		return result.toString();
+	}
+
+} //IStereotypeImpl
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/IStructureDiagramImpl.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/IStructureDiagramImpl.java
new file mode 100755
index 0000000..cc04de6
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/IStructureDiagramImpl.java
@@ -0,0 +1,47 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl;
+
+import org.eclipse.emf.ecore.EClass;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IStructureDiagram;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>IStructure Diagram</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+public class IStructureDiagramImpl extends IDiagramImpl implements IStructureDiagram {
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected IStructureDiagramImpl() {
+		super();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EClass eStaticClass() {
+		return UMLRpyPackage.eINSTANCE.getIStructureDiagram();
+	}
+
+} //IStructureDiagramImpl
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/ISubsystemImpl.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/ISubsystemImpl.java
new file mode 100755
index 0000000..70a236f
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/ISubsystemImpl.java
@@ -0,0 +1,1894 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl;
+
+import java.util.Collection;
+
+import org.eclipse.emf.common.notify.Notification;
+import org.eclipse.emf.common.notify.NotificationChain;
+
+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.EDataTypeEList;
+import org.eclipse.emf.ecore.util.EObjectContainmentEList;
+import org.eclipse.emf.ecore.util.InternalEList;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.DeclarativesType;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.EmbededFilesType;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.HyperLinksType;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IAssociationClass;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IClass;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IClassifier;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IDependency;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IDescription;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IFile;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IInterfaceItem;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMatrixLayout;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IModelElement;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IPropertyContainer;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ISubsystem;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITag;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IUnit;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.MatrixInstancesType;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.OwnerHandleType;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.TableInstancesType;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.TheMainDiagramType;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>ISubsystem</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * </p>
+ * <ul>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.ISubsystemImpl#getId <em>Id</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.ISubsystemImpl#getMyState <em>My State</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.ISubsystemImpl#getName <em>Name</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.ISubsystemImpl#getModifiedTimeWeak <em>Modified Time Weak</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.ISubsystemImpl#getDefaultComposite <em>Default Composite</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.ISubsystemImpl#getEventsBaseID <em>Events Base ID</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.ISubsystemImpl#getClasses <em>Classes</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.ISubsystemImpl#getConfigurationRelatedTime <em>Configuration Related Time</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.ISubsystemImpl#getProperties <em>Properties</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.ISubsystemImpl#getLastID <em>Last ID</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.ISubsystemImpl#getCmheader <em>Cmheader</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.ISubsystemImpl#getDeclaratives <em>Declaratives</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.ISubsystemImpl#getTypes <em>Types</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.ISubsystemImpl#getStereotypes <em>Stereotypes</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.ISubsystemImpl#getPredefinedTypes <em>Predefined Types</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.ISubsystemImpl#getEvents <em>Events</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.ISubsystemImpl#getAnnotations <em>Annotations</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.ISubsystemImpl#getUseCases <em>Use Cases</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.ISubsystemImpl#getActors <em>Actors</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.ISubsystemImpl#getDescription <em>Description</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.ISubsystemImpl#getTags <em>Tags</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.ISubsystemImpl#getDependencies <em>Dependencies</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.ISubsystemImpl#getOwnerHandle <em>Owner Handle</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.ISubsystemImpl#getTheMainDiagram <em>The Main Diagram</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.ISubsystemImpl#getHyperLinks <em>Hyper Links</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.ISubsystemImpl#getTableLayouts <em>Table Layouts</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.ISubsystemImpl#getMatrixLayouts <em>Matrix Layouts</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.ISubsystemImpl#getTableInstances <em>Table Instances</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.ISubsystemImpl#getMatrixInstances <em>Matrix Instances</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.ISubsystemImpl#getEmbededFiles <em>Embeded Files</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.ISubsystemImpl#getComponentFiles <em>Component Files</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.ISubsystemImpl#getRequiremenTracabilityHandle <em>Requiremen Tracability Handle</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.ISubsystemImpl#getCodeUpdateCGTime <em>Code Update CG Time</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.ISubsystemImpl#getObjectCreation <em>Object Creation</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.ISubsystemImpl#getUmlDependencyID <em>Uml Dependency ID</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.ISubsystemImpl#getAssociationElements <em>Association Elements</em>}</li>
+ * </ul>
+ *
+ * @generated
+ */
+public class ISubsystemImpl extends OwnerHandleTypeImpl implements ISubsystem {
+	/**
+	 * The default value of the '{@link #getId() <em>Id</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getId()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String ID_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getId() <em>Id</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getId()
+	 * @generated
+	 * @ordered
+	 */
+	protected String id = ID_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getMyState() <em>My State</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getMyState()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String MY_STATE_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getMyState() <em>My State</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getMyState()
+	 * @generated
+	 * @ordered
+	 */
+	protected String myState = MY_STATE_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getName() <em>Name</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getName()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String NAME_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getName() <em>Name</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getName()
+	 * @generated
+	 * @ordered
+	 */
+	protected String name = NAME_EDEFAULT;
+
+	/**
+	 * The cached value of the '{@link #getModifiedTimeWeak() <em>Modified Time Weak</em>}' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getModifiedTimeWeak()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<String> modifiedTimeWeak;
+
+	/**
+	 * The cached value of the '{@link #getDefaultComposite() <em>Default Composite</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getDefaultComposite()
+	 * @generated
+	 * @ordered
+	 */
+	protected IClass defaultComposite;
+
+	/**
+	 * The default value of the '{@link #getEventsBaseID() <em>Events Base ID</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getEventsBaseID()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String EVENTS_BASE_ID_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getEventsBaseID() <em>Events Base ID</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getEventsBaseID()
+	 * @generated
+	 * @ordered
+	 */
+	protected String eventsBaseID = EVENTS_BASE_ID_EDEFAULT;
+
+	/**
+	 * The cached value of the '{@link #getClasses() <em>Classes</em>}' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getClasses()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<IClass> classes;
+
+	/**
+	 * The cached value of the '{@link #getConfigurationRelatedTime() <em>Configuration Related Time</em>}' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getConfigurationRelatedTime()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<String> configurationRelatedTime;
+
+	/**
+	 * The cached value of the '{@link #getProperties() <em>Properties</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getProperties()
+	 * @generated
+	 * @ordered
+	 */
+	protected IPropertyContainer properties;
+
+	/**
+	 * The default value of the '{@link #getLastID() <em>Last ID</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getLastID()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String LAST_ID_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getLastID() <em>Last ID</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getLastID()
+	 * @generated
+	 * @ordered
+	 */
+	protected String lastID = LAST_ID_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getCmheader() <em>Cmheader</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getCmheader()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String CMHEADER_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getCmheader() <em>Cmheader</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getCmheader()
+	 * @generated
+	 * @ordered
+	 */
+	protected String cmheader = CMHEADER_EDEFAULT;
+
+	/**
+	 * The cached value of the '{@link #getDeclaratives() <em>Declaratives</em>}' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getDeclaratives()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<DeclarativesType> declaratives;
+
+	/**
+	 * The cached value of the '{@link #getTypes() <em>Types</em>}' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getTypes()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<IUnit> types;
+
+	/**
+	 * The cached value of the '{@link #getStereotypes() <em>Stereotypes</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getStereotypes()
+	 * @generated
+	 * @ordered
+	 */
+	protected IUnit stereotypes;
+
+	/**
+	 * The default value of the '{@link #getPredefinedTypes() <em>Predefined Types</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getPredefinedTypes()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String PREDEFINED_TYPES_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getPredefinedTypes() <em>Predefined Types</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getPredefinedTypes()
+	 * @generated
+	 * @ordered
+	 */
+	protected String predefinedTypes = PREDEFINED_TYPES_EDEFAULT;
+
+	/**
+	 * The cached value of the '{@link #getEvents() <em>Events</em>}' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getEvents()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<IInterfaceItem> events;
+
+	/**
+	 * The cached value of the '{@link #getAnnotations() <em>Annotations</em>}' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getAnnotations()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<IUnit> annotations;
+
+	/**
+	 * The cached value of the '{@link #getUseCases() <em>Use Cases</em>}' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getUseCases()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<IClassifier> useCases;
+
+	/**
+	 * The cached value of the '{@link #getActors() <em>Actors</em>}' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getActors()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<IClassifier> actors;
+
+	/**
+	 * The cached value of the '{@link #getDescription() <em>Description</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getDescription()
+	 * @generated
+	 * @ordered
+	 */
+	protected IDescription description;
+
+	/**
+	 * The cached value of the '{@link #getTags() <em>Tags</em>}' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getTags()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<ITag> tags;
+
+	/**
+	 * The cached value of the '{@link #getDependencies() <em>Dependencies</em>}' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getDependencies()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<IDependency> dependencies;
+
+	/**
+	 * The cached value of the '{@link #getOwnerHandle() <em>Owner Handle</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getOwnerHandle()
+	 * @generated
+	 * @ordered
+	 */
+	protected OwnerHandleType ownerHandle;
+
+	/**
+	 * The cached value of the '{@link #getTheMainDiagram() <em>The Main Diagram</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getTheMainDiagram()
+	 * @generated
+	 * @ordered
+	 */
+	protected TheMainDiagramType theMainDiagram;
+
+	/**
+	 * The cached value of the '{@link #getHyperLinks() <em>Hyper Links</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getHyperLinks()
+	 * @generated
+	 * @ordered
+	 */
+	protected HyperLinksType hyperLinks;
+
+	/**
+	 * The cached value of the '{@link #getTableLayouts() <em>Table Layouts</em>}' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getTableLayouts()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<IModelElement> tableLayouts;
+
+	/**
+	 * The cached value of the '{@link #getMatrixLayouts() <em>Matrix Layouts</em>}' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getMatrixLayouts()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<IMatrixLayout> matrixLayouts;
+
+	/**
+	 * The cached value of the '{@link #getTableInstances() <em>Table Instances</em>}' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getTableInstances()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<TableInstancesType> tableInstances;
+
+	/**
+	 * The cached value of the '{@link #getMatrixInstances() <em>Matrix Instances</em>}' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getMatrixInstances()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<MatrixInstancesType> matrixInstances;
+
+	/**
+	 * The cached value of the '{@link #getEmbededFiles() <em>Embeded Files</em>}' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getEmbededFiles()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<EmbededFilesType> embededFiles;
+
+	/**
+	 * The cached value of the '{@link #getComponentFiles() <em>Component Files</em>}' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getComponentFiles()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<IFile> componentFiles;
+
+	/**
+	 * The default value of the '{@link #getRequiremenTracabilityHandle() <em>Requiremen Tracability Handle</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getRequiremenTracabilityHandle()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String REQUIREMEN_TRACABILITY_HANDLE_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getRequiremenTracabilityHandle() <em>Requiremen Tracability Handle</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getRequiremenTracabilityHandle()
+	 * @generated
+	 * @ordered
+	 */
+	protected String requiremenTracabilityHandle = REQUIREMEN_TRACABILITY_HANDLE_EDEFAULT;
+
+	/**
+	 * The cached value of the '{@link #getCodeUpdateCGTime() <em>Code Update CG Time</em>}' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getCodeUpdateCGTime()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<String> codeUpdateCGTime;
+
+	/**
+	 * The default value of the '{@link #getObjectCreation() <em>Object Creation</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getObjectCreation()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String OBJECT_CREATION_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getObjectCreation() <em>Object Creation</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getObjectCreation()
+	 * @generated
+	 * @ordered
+	 */
+	protected String objectCreation = OBJECT_CREATION_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getUmlDependencyID() <em>Uml Dependency ID</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getUmlDependencyID()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String UML_DEPENDENCY_ID_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getUmlDependencyID() <em>Uml Dependency ID</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getUmlDependencyID()
+	 * @generated
+	 * @ordered
+	 */
+	protected String umlDependencyID = UML_DEPENDENCY_ID_EDEFAULT;
+
+	/**
+	 * The cached value of the '{@link #getAssociationElements() <em>Association Elements</em>}' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getAssociationElements()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<IAssociationClass> associationElements;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected ISubsystemImpl() {
+		super();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EClass eStaticClass() {
+		return UMLRpyPackage.eINSTANCE.getISubsystem();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getId() {
+		return id;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setId(String newId) {
+		String oldId = id;
+		id = newId;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.ISUBSYSTEM__ID, oldId, id));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getMyState() {
+		return myState;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setMyState(String newMyState) {
+		String oldMyState = myState;
+		myState = newMyState;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.ISUBSYSTEM__MY_STATE, oldMyState, myState));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getName() {
+		return name;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setName(String newName) {
+		String oldName = name;
+		name = newName;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.ISUBSYSTEM__NAME, oldName, name));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<String> getModifiedTimeWeak() {
+		if (modifiedTimeWeak == null) {
+			modifiedTimeWeak = new EDataTypeEList<String>(String.class, this, UMLRpyPackage.ISUBSYSTEM__MODIFIED_TIME_WEAK);
+		}
+		return modifiedTimeWeak;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IClass getDefaultComposite() {
+		if (defaultComposite != null && defaultComposite.eIsProxy()) {
+			InternalEObject oldDefaultComposite = (InternalEObject)defaultComposite;
+			defaultComposite = (IClass)eResolveProxy(oldDefaultComposite);
+			if (defaultComposite != oldDefaultComposite) {
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.ISUBSYSTEM__DEFAULT_COMPOSITE, oldDefaultComposite, defaultComposite));
+			}
+		}
+		return defaultComposite;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IClass basicGetDefaultComposite() {
+		return defaultComposite;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setDefaultComposite(IClass newDefaultComposite) {
+		IClass oldDefaultComposite = defaultComposite;
+		defaultComposite = newDefaultComposite;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.ISUBSYSTEM__DEFAULT_COMPOSITE, oldDefaultComposite, defaultComposite));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getEventsBaseID() {
+		return eventsBaseID;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setEventsBaseID(String newEventsBaseID) {
+		String oldEventsBaseID = eventsBaseID;
+		eventsBaseID = newEventsBaseID;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.ISUBSYSTEM__EVENTS_BASE_ID, oldEventsBaseID, eventsBaseID));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<IClass> getClasses() {
+		if (classes == null) {
+			classes = new EObjectContainmentEList.Resolving<IClass>(IClass.class, this, UMLRpyPackage.ISUBSYSTEM__CLASSES);
+		}
+		return classes;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<String> getConfigurationRelatedTime() {
+		if (configurationRelatedTime == null) {
+			configurationRelatedTime = new EDataTypeEList<String>(String.class, this, UMLRpyPackage.ISUBSYSTEM__CONFIGURATION_RELATED_TIME);
+		}
+		return configurationRelatedTime;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IPropertyContainer getProperties() {
+		if (properties != null && properties.eIsProxy()) {
+			InternalEObject oldProperties = (InternalEObject)properties;
+			properties = (IPropertyContainer)eResolveProxy(oldProperties);
+			if (properties != oldProperties) {
+				InternalEObject newProperties = (InternalEObject)properties;
+				NotificationChain msgs = oldProperties.eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.ISUBSYSTEM__PROPERTIES, null, null);
+				if (newProperties.eInternalContainer() == null) {
+					msgs = newProperties.eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.ISUBSYSTEM__PROPERTIES, null, msgs);
+				}
+				if (msgs != null) msgs.dispatch();
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.ISUBSYSTEM__PROPERTIES, oldProperties, properties));
+			}
+		}
+		return properties;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IPropertyContainer basicGetProperties() {
+		return properties;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public NotificationChain basicSetProperties(IPropertyContainer newProperties, NotificationChain msgs) {
+		IPropertyContainer oldProperties = properties;
+		properties = newProperties;
+		if (eNotificationRequired()) {
+			ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, UMLRpyPackage.ISUBSYSTEM__PROPERTIES, oldProperties, newProperties);
+			if (msgs == null) msgs = notification; else msgs.add(notification);
+		}
+		return msgs;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setProperties(IPropertyContainer newProperties) {
+		if (newProperties != properties) {
+			NotificationChain msgs = null;
+			if (properties != null)
+				msgs = ((InternalEObject)properties).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.ISUBSYSTEM__PROPERTIES, null, msgs);
+			if (newProperties != null)
+				msgs = ((InternalEObject)newProperties).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.ISUBSYSTEM__PROPERTIES, null, msgs);
+			msgs = basicSetProperties(newProperties, msgs);
+			if (msgs != null) msgs.dispatch();
+		}
+		else if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.ISUBSYSTEM__PROPERTIES, newProperties, newProperties));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getLastID() {
+		return lastID;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setLastID(String newLastID) {
+		String oldLastID = lastID;
+		lastID = newLastID;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.ISUBSYSTEM__LAST_ID, oldLastID, lastID));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getCmheader() {
+		return cmheader;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setCmheader(String newCmheader) {
+		String oldCmheader = cmheader;
+		cmheader = newCmheader;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.ISUBSYSTEM__CMHEADER, oldCmheader, cmheader));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<DeclarativesType> getDeclaratives() {
+		if (declaratives == null) {
+			declaratives = new EObjectContainmentEList.Resolving<DeclarativesType>(DeclarativesType.class, this, UMLRpyPackage.ISUBSYSTEM__DECLARATIVES);
+		}
+		return declaratives;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<IUnit> getTypes() {
+		if (types == null) {
+			types = new EObjectContainmentEList.Resolving<IUnit>(IUnit.class, this, UMLRpyPackage.ISUBSYSTEM__TYPES);
+		}
+		return types;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IUnit getStereotypes() {
+		if (stereotypes != null && stereotypes.eIsProxy()) {
+			InternalEObject oldStereotypes = (InternalEObject)stereotypes;
+			stereotypes = (IUnit)eResolveProxy(oldStereotypes);
+			if (stereotypes != oldStereotypes) {
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.ISUBSYSTEM__STEREOTYPES, oldStereotypes, stereotypes));
+			}
+		}
+		return stereotypes;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IUnit basicGetStereotypes() {
+		return stereotypes;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setStereotypes(IUnit newStereotypes) {
+		IUnit oldStereotypes = stereotypes;
+		stereotypes = newStereotypes;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.ISUBSYSTEM__STEREOTYPES, oldStereotypes, stereotypes));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getPredefinedTypes() {
+		return predefinedTypes;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setPredefinedTypes(String newPredefinedTypes) {
+		String oldPredefinedTypes = predefinedTypes;
+		predefinedTypes = newPredefinedTypes;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.ISUBSYSTEM__PREDEFINED_TYPES, oldPredefinedTypes, predefinedTypes));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<IInterfaceItem> getEvents() {
+		if (events == null) {
+			events = new EObjectContainmentEList.Resolving<IInterfaceItem>(IInterfaceItem.class, this, UMLRpyPackage.ISUBSYSTEM__EVENTS);
+		}
+		return events;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<IUnit> getAnnotations() {
+		if (annotations == null) {
+			annotations = new EObjectContainmentEList.Resolving<IUnit>(IUnit.class, this, UMLRpyPackage.ISUBSYSTEM__ANNOTATIONS);
+		}
+		return annotations;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<IClassifier> getUseCases() {
+		if (useCases == null) {
+			useCases = new EObjectContainmentEList.Resolving<IClassifier>(IClassifier.class, this, UMLRpyPackage.ISUBSYSTEM__USE_CASES);
+		}
+		return useCases;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<IClassifier> getActors() {
+		if (actors == null) {
+			actors = new EObjectContainmentEList.Resolving<IClassifier>(IClassifier.class, this, UMLRpyPackage.ISUBSYSTEM__ACTORS);
+		}
+		return actors;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IDescription getDescription() {
+		if (description != null && description.eIsProxy()) {
+			InternalEObject oldDescription = (InternalEObject)description;
+			description = (IDescription)eResolveProxy(oldDescription);
+			if (description != oldDescription) {
+				InternalEObject newDescription = (InternalEObject)description;
+				NotificationChain msgs = oldDescription.eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.ISUBSYSTEM__DESCRIPTION, null, null);
+				if (newDescription.eInternalContainer() == null) {
+					msgs = newDescription.eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.ISUBSYSTEM__DESCRIPTION, null, msgs);
+				}
+				if (msgs != null) msgs.dispatch();
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.ISUBSYSTEM__DESCRIPTION, oldDescription, description));
+			}
+		}
+		return description;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IDescription basicGetDescription() {
+		return description;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public NotificationChain basicSetDescription(IDescription newDescription, NotificationChain msgs) {
+		IDescription oldDescription = description;
+		description = newDescription;
+		if (eNotificationRequired()) {
+			ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, UMLRpyPackage.ISUBSYSTEM__DESCRIPTION, oldDescription, newDescription);
+			if (msgs == null) msgs = notification; else msgs.add(notification);
+		}
+		return msgs;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setDescription(IDescription newDescription) {
+		if (newDescription != description) {
+			NotificationChain msgs = null;
+			if (description != null)
+				msgs = ((InternalEObject)description).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.ISUBSYSTEM__DESCRIPTION, null, msgs);
+			if (newDescription != null)
+				msgs = ((InternalEObject)newDescription).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.ISUBSYSTEM__DESCRIPTION, null, msgs);
+			msgs = basicSetDescription(newDescription, msgs);
+			if (msgs != null) msgs.dispatch();
+		}
+		else if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.ISUBSYSTEM__DESCRIPTION, newDescription, newDescription));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<ITag> getTags() {
+		if (tags == null) {
+			tags = new EObjectContainmentEList.Resolving<ITag>(ITag.class, this, UMLRpyPackage.ISUBSYSTEM__TAGS);
+		}
+		return tags;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<IDependency> getDependencies() {
+		if (dependencies == null) {
+			dependencies = new EObjectContainmentEList.Resolving<IDependency>(IDependency.class, this, UMLRpyPackage.ISUBSYSTEM__DEPENDENCIES);
+		}
+		return dependencies;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public OwnerHandleType getOwnerHandle() {
+		if (ownerHandle != null && ownerHandle.eIsProxy()) {
+			InternalEObject oldOwnerHandle = (InternalEObject)ownerHandle;
+			ownerHandle = (OwnerHandleType)eResolveProxy(oldOwnerHandle);
+			if (ownerHandle != oldOwnerHandle) {
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.ISUBSYSTEM__OWNER_HANDLE, oldOwnerHandle, ownerHandle));
+			}
+		}
+		return ownerHandle;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public OwnerHandleType basicGetOwnerHandle() {
+		return ownerHandle;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setOwnerHandle(OwnerHandleType newOwnerHandle) {
+		OwnerHandleType oldOwnerHandle = ownerHandle;
+		ownerHandle = newOwnerHandle;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.ISUBSYSTEM__OWNER_HANDLE, oldOwnerHandle, ownerHandle));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public TheMainDiagramType getTheMainDiagram() {
+		if (theMainDiagram != null && theMainDiagram.eIsProxy()) {
+			InternalEObject oldTheMainDiagram = (InternalEObject)theMainDiagram;
+			theMainDiagram = (TheMainDiagramType)eResolveProxy(oldTheMainDiagram);
+			if (theMainDiagram != oldTheMainDiagram) {
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.ISUBSYSTEM__THE_MAIN_DIAGRAM, oldTheMainDiagram, theMainDiagram));
+			}
+		}
+		return theMainDiagram;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public TheMainDiagramType basicGetTheMainDiagram() {
+		return theMainDiagram;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setTheMainDiagram(TheMainDiagramType newTheMainDiagram) {
+		TheMainDiagramType oldTheMainDiagram = theMainDiagram;
+		theMainDiagram = newTheMainDiagram;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.ISUBSYSTEM__THE_MAIN_DIAGRAM, oldTheMainDiagram, theMainDiagram));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public HyperLinksType getHyperLinks() {
+		if (hyperLinks != null && hyperLinks.eIsProxy()) {
+			InternalEObject oldHyperLinks = (InternalEObject)hyperLinks;
+			hyperLinks = (HyperLinksType)eResolveProxy(oldHyperLinks);
+			if (hyperLinks != oldHyperLinks) {
+				InternalEObject newHyperLinks = (InternalEObject)hyperLinks;
+				NotificationChain msgs = oldHyperLinks.eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.ISUBSYSTEM__HYPER_LINKS, null, null);
+				if (newHyperLinks.eInternalContainer() == null) {
+					msgs = newHyperLinks.eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.ISUBSYSTEM__HYPER_LINKS, null, msgs);
+				}
+				if (msgs != null) msgs.dispatch();
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.ISUBSYSTEM__HYPER_LINKS, oldHyperLinks, hyperLinks));
+			}
+		}
+		return hyperLinks;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public HyperLinksType basicGetHyperLinks() {
+		return hyperLinks;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public NotificationChain basicSetHyperLinks(HyperLinksType newHyperLinks, NotificationChain msgs) {
+		HyperLinksType oldHyperLinks = hyperLinks;
+		hyperLinks = newHyperLinks;
+		if (eNotificationRequired()) {
+			ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, UMLRpyPackage.ISUBSYSTEM__HYPER_LINKS, oldHyperLinks, newHyperLinks);
+			if (msgs == null) msgs = notification; else msgs.add(notification);
+		}
+		return msgs;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setHyperLinks(HyperLinksType newHyperLinks) {
+		if (newHyperLinks != hyperLinks) {
+			NotificationChain msgs = null;
+			if (hyperLinks != null)
+				msgs = ((InternalEObject)hyperLinks).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.ISUBSYSTEM__HYPER_LINKS, null, msgs);
+			if (newHyperLinks != null)
+				msgs = ((InternalEObject)newHyperLinks).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.ISUBSYSTEM__HYPER_LINKS, null, msgs);
+			msgs = basicSetHyperLinks(newHyperLinks, msgs);
+			if (msgs != null) msgs.dispatch();
+		}
+		else if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.ISUBSYSTEM__HYPER_LINKS, newHyperLinks, newHyperLinks));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<IModelElement> getTableLayouts() {
+		if (tableLayouts == null) {
+			tableLayouts = new EObjectContainmentEList.Resolving<IModelElement>(IModelElement.class, this, UMLRpyPackage.ISUBSYSTEM__TABLE_LAYOUTS);
+		}
+		return tableLayouts;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<IMatrixLayout> getMatrixLayouts() {
+		if (matrixLayouts == null) {
+			matrixLayouts = new EObjectContainmentEList.Resolving<IMatrixLayout>(IMatrixLayout.class, this, UMLRpyPackage.ISUBSYSTEM__MATRIX_LAYOUTS);
+		}
+		return matrixLayouts;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<TableInstancesType> getTableInstances() {
+		if (tableInstances == null) {
+			tableInstances = new EObjectContainmentEList.Resolving<TableInstancesType>(TableInstancesType.class, this, UMLRpyPackage.ISUBSYSTEM__TABLE_INSTANCES);
+		}
+		return tableInstances;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<MatrixInstancesType> getMatrixInstances() {
+		if (matrixInstances == null) {
+			matrixInstances = new EObjectContainmentEList.Resolving<MatrixInstancesType>(MatrixInstancesType.class, this, UMLRpyPackage.ISUBSYSTEM__MATRIX_INSTANCES);
+		}
+		return matrixInstances;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<EmbededFilesType> getEmbededFiles() {
+		if (embededFiles == null) {
+			embededFiles = new EObjectContainmentEList.Resolving<EmbededFilesType>(EmbededFilesType.class, this, UMLRpyPackage.ISUBSYSTEM__EMBEDED_FILES);
+		}
+		return embededFiles;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<IFile> getComponentFiles() {
+		if (componentFiles == null) {
+			componentFiles = new EObjectContainmentEList.Resolving<IFile>(IFile.class, this, UMLRpyPackage.ISUBSYSTEM__COMPONENT_FILES);
+		}
+		return componentFiles;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getRequiremenTracabilityHandle() {
+		return requiremenTracabilityHandle;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setRequiremenTracabilityHandle(String newRequiremenTracabilityHandle) {
+		String oldRequiremenTracabilityHandle = requiremenTracabilityHandle;
+		requiremenTracabilityHandle = newRequiremenTracabilityHandle;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.ISUBSYSTEM__REQUIREMEN_TRACABILITY_HANDLE, oldRequiremenTracabilityHandle, requiremenTracabilityHandle));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<String> getCodeUpdateCGTime() {
+		if (codeUpdateCGTime == null) {
+			codeUpdateCGTime = new EDataTypeEList<String>(String.class, this, UMLRpyPackage.ISUBSYSTEM__CODE_UPDATE_CG_TIME);
+		}
+		return codeUpdateCGTime;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getObjectCreation() {
+		return objectCreation;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setObjectCreation(String newObjectCreation) {
+		String oldObjectCreation = objectCreation;
+		objectCreation = newObjectCreation;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.ISUBSYSTEM__OBJECT_CREATION, oldObjectCreation, objectCreation));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getUmlDependencyID() {
+		return umlDependencyID;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setUmlDependencyID(String newUmlDependencyID) {
+		String oldUmlDependencyID = umlDependencyID;
+		umlDependencyID = newUmlDependencyID;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.ISUBSYSTEM__UML_DEPENDENCY_ID, oldUmlDependencyID, umlDependencyID));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<IAssociationClass> getAssociationElements() {
+		if (associationElements == null) {
+			associationElements = new EObjectContainmentEList.Resolving<IAssociationClass>(IAssociationClass.class, this, UMLRpyPackage.ISUBSYSTEM__ASSOCIATION_ELEMENTS);
+		}
+		return associationElements;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
+		switch (featureID) {
+			case UMLRpyPackage.ISUBSYSTEM__CLASSES:
+				return ((InternalEList<?>)getClasses()).basicRemove(otherEnd, msgs);
+			case UMLRpyPackage.ISUBSYSTEM__PROPERTIES:
+				return basicSetProperties(null, msgs);
+			case UMLRpyPackage.ISUBSYSTEM__DECLARATIVES:
+				return ((InternalEList<?>)getDeclaratives()).basicRemove(otherEnd, msgs);
+			case UMLRpyPackage.ISUBSYSTEM__TYPES:
+				return ((InternalEList<?>)getTypes()).basicRemove(otherEnd, msgs);
+			case UMLRpyPackage.ISUBSYSTEM__EVENTS:
+				return ((InternalEList<?>)getEvents()).basicRemove(otherEnd, msgs);
+			case UMLRpyPackage.ISUBSYSTEM__ANNOTATIONS:
+				return ((InternalEList<?>)getAnnotations()).basicRemove(otherEnd, msgs);
+			case UMLRpyPackage.ISUBSYSTEM__USE_CASES:
+				return ((InternalEList<?>)getUseCases()).basicRemove(otherEnd, msgs);
+			case UMLRpyPackage.ISUBSYSTEM__ACTORS:
+				return ((InternalEList<?>)getActors()).basicRemove(otherEnd, msgs);
+			case UMLRpyPackage.ISUBSYSTEM__DESCRIPTION:
+				return basicSetDescription(null, msgs);
+			case UMLRpyPackage.ISUBSYSTEM__TAGS:
+				return ((InternalEList<?>)getTags()).basicRemove(otherEnd, msgs);
+			case UMLRpyPackage.ISUBSYSTEM__DEPENDENCIES:
+				return ((InternalEList<?>)getDependencies()).basicRemove(otherEnd, msgs);
+			case UMLRpyPackage.ISUBSYSTEM__HYPER_LINKS:
+				return basicSetHyperLinks(null, msgs);
+			case UMLRpyPackage.ISUBSYSTEM__TABLE_LAYOUTS:
+				return ((InternalEList<?>)getTableLayouts()).basicRemove(otherEnd, msgs);
+			case UMLRpyPackage.ISUBSYSTEM__MATRIX_LAYOUTS:
+				return ((InternalEList<?>)getMatrixLayouts()).basicRemove(otherEnd, msgs);
+			case UMLRpyPackage.ISUBSYSTEM__TABLE_INSTANCES:
+				return ((InternalEList<?>)getTableInstances()).basicRemove(otherEnd, msgs);
+			case UMLRpyPackage.ISUBSYSTEM__MATRIX_INSTANCES:
+				return ((InternalEList<?>)getMatrixInstances()).basicRemove(otherEnd, msgs);
+			case UMLRpyPackage.ISUBSYSTEM__EMBEDED_FILES:
+				return ((InternalEList<?>)getEmbededFiles()).basicRemove(otherEnd, msgs);
+			case UMLRpyPackage.ISUBSYSTEM__COMPONENT_FILES:
+				return ((InternalEList<?>)getComponentFiles()).basicRemove(otherEnd, msgs);
+			case UMLRpyPackage.ISUBSYSTEM__ASSOCIATION_ELEMENTS:
+				return ((InternalEList<?>)getAssociationElements()).basicRemove(otherEnd, msgs);
+		}
+		return super.eInverseRemove(otherEnd, featureID, msgs);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object eGet(int featureID, boolean resolve, boolean coreType) {
+		switch (featureID) {
+			case UMLRpyPackage.ISUBSYSTEM__ID:
+				return getId();
+			case UMLRpyPackage.ISUBSYSTEM__MY_STATE:
+				return getMyState();
+			case UMLRpyPackage.ISUBSYSTEM__NAME:
+				return getName();
+			case UMLRpyPackage.ISUBSYSTEM__MODIFIED_TIME_WEAK:
+				return getModifiedTimeWeak();
+			case UMLRpyPackage.ISUBSYSTEM__DEFAULT_COMPOSITE:
+				if (resolve) return getDefaultComposite();
+				return basicGetDefaultComposite();
+			case UMLRpyPackage.ISUBSYSTEM__EVENTS_BASE_ID:
+				return getEventsBaseID();
+			case UMLRpyPackage.ISUBSYSTEM__CLASSES:
+				return getClasses();
+			case UMLRpyPackage.ISUBSYSTEM__CONFIGURATION_RELATED_TIME:
+				return getConfigurationRelatedTime();
+			case UMLRpyPackage.ISUBSYSTEM__PROPERTIES:
+				if (resolve) return getProperties();
+				return basicGetProperties();
+			case UMLRpyPackage.ISUBSYSTEM__LAST_ID:
+				return getLastID();
+			case UMLRpyPackage.ISUBSYSTEM__CMHEADER:
+				return getCmheader();
+			case UMLRpyPackage.ISUBSYSTEM__DECLARATIVES:
+				return getDeclaratives();
+			case UMLRpyPackage.ISUBSYSTEM__TYPES:
+				return getTypes();
+			case UMLRpyPackage.ISUBSYSTEM__STEREOTYPES:
+				if (resolve) return getStereotypes();
+				return basicGetStereotypes();
+			case UMLRpyPackage.ISUBSYSTEM__PREDEFINED_TYPES:
+				return getPredefinedTypes();
+			case UMLRpyPackage.ISUBSYSTEM__EVENTS:
+				return getEvents();
+			case UMLRpyPackage.ISUBSYSTEM__ANNOTATIONS:
+				return getAnnotations();
+			case UMLRpyPackage.ISUBSYSTEM__USE_CASES:
+				return getUseCases();
+			case UMLRpyPackage.ISUBSYSTEM__ACTORS:
+				return getActors();
+			case UMLRpyPackage.ISUBSYSTEM__DESCRIPTION:
+				if (resolve) return getDescription();
+				return basicGetDescription();
+			case UMLRpyPackage.ISUBSYSTEM__TAGS:
+				return getTags();
+			case UMLRpyPackage.ISUBSYSTEM__DEPENDENCIES:
+				return getDependencies();
+			case UMLRpyPackage.ISUBSYSTEM__OWNER_HANDLE:
+				if (resolve) return getOwnerHandle();
+				return basicGetOwnerHandle();
+			case UMLRpyPackage.ISUBSYSTEM__THE_MAIN_DIAGRAM:
+				if (resolve) return getTheMainDiagram();
+				return basicGetTheMainDiagram();
+			case UMLRpyPackage.ISUBSYSTEM__HYPER_LINKS:
+				if (resolve) return getHyperLinks();
+				return basicGetHyperLinks();
+			case UMLRpyPackage.ISUBSYSTEM__TABLE_LAYOUTS:
+				return getTableLayouts();
+			case UMLRpyPackage.ISUBSYSTEM__MATRIX_LAYOUTS:
+				return getMatrixLayouts();
+			case UMLRpyPackage.ISUBSYSTEM__TABLE_INSTANCES:
+				return getTableInstances();
+			case UMLRpyPackage.ISUBSYSTEM__MATRIX_INSTANCES:
+				return getMatrixInstances();
+			case UMLRpyPackage.ISUBSYSTEM__EMBEDED_FILES:
+				return getEmbededFiles();
+			case UMLRpyPackage.ISUBSYSTEM__COMPONENT_FILES:
+				return getComponentFiles();
+			case UMLRpyPackage.ISUBSYSTEM__REQUIREMEN_TRACABILITY_HANDLE:
+				return getRequiremenTracabilityHandle();
+			case UMLRpyPackage.ISUBSYSTEM__CODE_UPDATE_CG_TIME:
+				return getCodeUpdateCGTime();
+			case UMLRpyPackage.ISUBSYSTEM__OBJECT_CREATION:
+				return getObjectCreation();
+			case UMLRpyPackage.ISUBSYSTEM__UML_DEPENDENCY_ID:
+				return getUmlDependencyID();
+			case UMLRpyPackage.ISUBSYSTEM__ASSOCIATION_ELEMENTS:
+				return getAssociationElements();
+		}
+		return super.eGet(featureID, resolve, coreType);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@SuppressWarnings("unchecked")
+	@Override
+	public void eSet(int featureID, Object newValue) {
+		switch (featureID) {
+			case UMLRpyPackage.ISUBSYSTEM__ID:
+				setId((String)newValue);
+				return;
+			case UMLRpyPackage.ISUBSYSTEM__MY_STATE:
+				setMyState((String)newValue);
+				return;
+			case UMLRpyPackage.ISUBSYSTEM__NAME:
+				setName((String)newValue);
+				return;
+			case UMLRpyPackage.ISUBSYSTEM__MODIFIED_TIME_WEAK:
+				getModifiedTimeWeak().clear();
+				getModifiedTimeWeak().addAll((Collection<? extends String>)newValue);
+				return;
+			case UMLRpyPackage.ISUBSYSTEM__DEFAULT_COMPOSITE:
+				setDefaultComposite((IClass)newValue);
+				return;
+			case UMLRpyPackage.ISUBSYSTEM__EVENTS_BASE_ID:
+				setEventsBaseID((String)newValue);
+				return;
+			case UMLRpyPackage.ISUBSYSTEM__CLASSES:
+				getClasses().clear();
+				getClasses().addAll((Collection<? extends IClass>)newValue);
+				return;
+			case UMLRpyPackage.ISUBSYSTEM__CONFIGURATION_RELATED_TIME:
+				getConfigurationRelatedTime().clear();
+				getConfigurationRelatedTime().addAll((Collection<? extends String>)newValue);
+				return;
+			case UMLRpyPackage.ISUBSYSTEM__PROPERTIES:
+				setProperties((IPropertyContainer)newValue);
+				return;
+			case UMLRpyPackage.ISUBSYSTEM__LAST_ID:
+				setLastID((String)newValue);
+				return;
+			case UMLRpyPackage.ISUBSYSTEM__CMHEADER:
+				setCmheader((String)newValue);
+				return;
+			case UMLRpyPackage.ISUBSYSTEM__DECLARATIVES:
+				getDeclaratives().clear();
+				getDeclaratives().addAll((Collection<? extends DeclarativesType>)newValue);
+				return;
+			case UMLRpyPackage.ISUBSYSTEM__TYPES:
+				getTypes().clear();
+				getTypes().addAll((Collection<? extends IUnit>)newValue);
+				return;
+			case UMLRpyPackage.ISUBSYSTEM__STEREOTYPES:
+				setStereotypes((IUnit)newValue);
+				return;
+			case UMLRpyPackage.ISUBSYSTEM__PREDEFINED_TYPES:
+				setPredefinedTypes((String)newValue);
+				return;
+			case UMLRpyPackage.ISUBSYSTEM__EVENTS:
+				getEvents().clear();
+				getEvents().addAll((Collection<? extends IInterfaceItem>)newValue);
+				return;
+			case UMLRpyPackage.ISUBSYSTEM__ANNOTATIONS:
+				getAnnotations().clear();
+				getAnnotations().addAll((Collection<? extends IUnit>)newValue);
+				return;
+			case UMLRpyPackage.ISUBSYSTEM__USE_CASES:
+				getUseCases().clear();
+				getUseCases().addAll((Collection<? extends IClassifier>)newValue);
+				return;
+			case UMLRpyPackage.ISUBSYSTEM__ACTORS:
+				getActors().clear();
+				getActors().addAll((Collection<? extends IClassifier>)newValue);
+				return;
+			case UMLRpyPackage.ISUBSYSTEM__DESCRIPTION:
+				setDescription((IDescription)newValue);
+				return;
+			case UMLRpyPackage.ISUBSYSTEM__TAGS:
+				getTags().clear();
+				getTags().addAll((Collection<? extends ITag>)newValue);
+				return;
+			case UMLRpyPackage.ISUBSYSTEM__DEPENDENCIES:
+				getDependencies().clear();
+				getDependencies().addAll((Collection<? extends IDependency>)newValue);
+				return;
+			case UMLRpyPackage.ISUBSYSTEM__OWNER_HANDLE:
+				setOwnerHandle((OwnerHandleType)newValue);
+				return;
+			case UMLRpyPackage.ISUBSYSTEM__THE_MAIN_DIAGRAM:
+				setTheMainDiagram((TheMainDiagramType)newValue);
+				return;
+			case UMLRpyPackage.ISUBSYSTEM__HYPER_LINKS:
+				setHyperLinks((HyperLinksType)newValue);
+				return;
+			case UMLRpyPackage.ISUBSYSTEM__TABLE_LAYOUTS:
+				getTableLayouts().clear();
+				getTableLayouts().addAll((Collection<? extends IModelElement>)newValue);
+				return;
+			case UMLRpyPackage.ISUBSYSTEM__MATRIX_LAYOUTS:
+				getMatrixLayouts().clear();
+				getMatrixLayouts().addAll((Collection<? extends IMatrixLayout>)newValue);
+				return;
+			case UMLRpyPackage.ISUBSYSTEM__TABLE_INSTANCES:
+				getTableInstances().clear();
+				getTableInstances().addAll((Collection<? extends TableInstancesType>)newValue);
+				return;
+			case UMLRpyPackage.ISUBSYSTEM__MATRIX_INSTANCES:
+				getMatrixInstances().clear();
+				getMatrixInstances().addAll((Collection<? extends MatrixInstancesType>)newValue);
+				return;
+			case UMLRpyPackage.ISUBSYSTEM__EMBEDED_FILES:
+				getEmbededFiles().clear();
+				getEmbededFiles().addAll((Collection<? extends EmbededFilesType>)newValue);
+				return;
+			case UMLRpyPackage.ISUBSYSTEM__COMPONENT_FILES:
+				getComponentFiles().clear();
+				getComponentFiles().addAll((Collection<? extends IFile>)newValue);
+				return;
+			case UMLRpyPackage.ISUBSYSTEM__REQUIREMEN_TRACABILITY_HANDLE:
+				setRequiremenTracabilityHandle((String)newValue);
+				return;
+			case UMLRpyPackage.ISUBSYSTEM__CODE_UPDATE_CG_TIME:
+				getCodeUpdateCGTime().clear();
+				getCodeUpdateCGTime().addAll((Collection<? extends String>)newValue);
+				return;
+			case UMLRpyPackage.ISUBSYSTEM__OBJECT_CREATION:
+				setObjectCreation((String)newValue);
+				return;
+			case UMLRpyPackage.ISUBSYSTEM__UML_DEPENDENCY_ID:
+				setUmlDependencyID((String)newValue);
+				return;
+			case UMLRpyPackage.ISUBSYSTEM__ASSOCIATION_ELEMENTS:
+				getAssociationElements().clear();
+				getAssociationElements().addAll((Collection<? extends IAssociationClass>)newValue);
+				return;
+		}
+		super.eSet(featureID, newValue);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void eUnset(int featureID) {
+		switch (featureID) {
+			case UMLRpyPackage.ISUBSYSTEM__ID:
+				setId(ID_EDEFAULT);
+				return;
+			case UMLRpyPackage.ISUBSYSTEM__MY_STATE:
+				setMyState(MY_STATE_EDEFAULT);
+				return;
+			case UMLRpyPackage.ISUBSYSTEM__NAME:
+				setName(NAME_EDEFAULT);
+				return;
+			case UMLRpyPackage.ISUBSYSTEM__MODIFIED_TIME_WEAK:
+				getModifiedTimeWeak().clear();
+				return;
+			case UMLRpyPackage.ISUBSYSTEM__DEFAULT_COMPOSITE:
+				setDefaultComposite((IClass)null);
+				return;
+			case UMLRpyPackage.ISUBSYSTEM__EVENTS_BASE_ID:
+				setEventsBaseID(EVENTS_BASE_ID_EDEFAULT);
+				return;
+			case UMLRpyPackage.ISUBSYSTEM__CLASSES:
+				getClasses().clear();
+				return;
+			case UMLRpyPackage.ISUBSYSTEM__CONFIGURATION_RELATED_TIME:
+				getConfigurationRelatedTime().clear();
+				return;
+			case UMLRpyPackage.ISUBSYSTEM__PROPERTIES:
+				setProperties((IPropertyContainer)null);
+				return;
+			case UMLRpyPackage.ISUBSYSTEM__LAST_ID:
+				setLastID(LAST_ID_EDEFAULT);
+				return;
+			case UMLRpyPackage.ISUBSYSTEM__CMHEADER:
+				setCmheader(CMHEADER_EDEFAULT);
+				return;
+			case UMLRpyPackage.ISUBSYSTEM__DECLARATIVES:
+				getDeclaratives().clear();
+				return;
+			case UMLRpyPackage.ISUBSYSTEM__TYPES:
+				getTypes().clear();
+				return;
+			case UMLRpyPackage.ISUBSYSTEM__STEREOTYPES:
+				setStereotypes((IUnit)null);
+				return;
+			case UMLRpyPackage.ISUBSYSTEM__PREDEFINED_TYPES:
+				setPredefinedTypes(PREDEFINED_TYPES_EDEFAULT);
+				return;
+			case UMLRpyPackage.ISUBSYSTEM__EVENTS:
+				getEvents().clear();
+				return;
+			case UMLRpyPackage.ISUBSYSTEM__ANNOTATIONS:
+				getAnnotations().clear();
+				return;
+			case UMLRpyPackage.ISUBSYSTEM__USE_CASES:
+				getUseCases().clear();
+				return;
+			case UMLRpyPackage.ISUBSYSTEM__ACTORS:
+				getActors().clear();
+				return;
+			case UMLRpyPackage.ISUBSYSTEM__DESCRIPTION:
+				setDescription((IDescription)null);
+				return;
+			case UMLRpyPackage.ISUBSYSTEM__TAGS:
+				getTags().clear();
+				return;
+			case UMLRpyPackage.ISUBSYSTEM__DEPENDENCIES:
+				getDependencies().clear();
+				return;
+			case UMLRpyPackage.ISUBSYSTEM__OWNER_HANDLE:
+				setOwnerHandle((OwnerHandleType)null);
+				return;
+			case UMLRpyPackage.ISUBSYSTEM__THE_MAIN_DIAGRAM:
+				setTheMainDiagram((TheMainDiagramType)null);
+				return;
+			case UMLRpyPackage.ISUBSYSTEM__HYPER_LINKS:
+				setHyperLinks((HyperLinksType)null);
+				return;
+			case UMLRpyPackage.ISUBSYSTEM__TABLE_LAYOUTS:
+				getTableLayouts().clear();
+				return;
+			case UMLRpyPackage.ISUBSYSTEM__MATRIX_LAYOUTS:
+				getMatrixLayouts().clear();
+				return;
+			case UMLRpyPackage.ISUBSYSTEM__TABLE_INSTANCES:
+				getTableInstances().clear();
+				return;
+			case UMLRpyPackage.ISUBSYSTEM__MATRIX_INSTANCES:
+				getMatrixInstances().clear();
+				return;
+			case UMLRpyPackage.ISUBSYSTEM__EMBEDED_FILES:
+				getEmbededFiles().clear();
+				return;
+			case UMLRpyPackage.ISUBSYSTEM__COMPONENT_FILES:
+				getComponentFiles().clear();
+				return;
+			case UMLRpyPackage.ISUBSYSTEM__REQUIREMEN_TRACABILITY_HANDLE:
+				setRequiremenTracabilityHandle(REQUIREMEN_TRACABILITY_HANDLE_EDEFAULT);
+				return;
+			case UMLRpyPackage.ISUBSYSTEM__CODE_UPDATE_CG_TIME:
+				getCodeUpdateCGTime().clear();
+				return;
+			case UMLRpyPackage.ISUBSYSTEM__OBJECT_CREATION:
+				setObjectCreation(OBJECT_CREATION_EDEFAULT);
+				return;
+			case UMLRpyPackage.ISUBSYSTEM__UML_DEPENDENCY_ID:
+				setUmlDependencyID(UML_DEPENDENCY_ID_EDEFAULT);
+				return;
+			case UMLRpyPackage.ISUBSYSTEM__ASSOCIATION_ELEMENTS:
+				getAssociationElements().clear();
+				return;
+		}
+		super.eUnset(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public boolean eIsSet(int featureID) {
+		switch (featureID) {
+			case UMLRpyPackage.ISUBSYSTEM__ID:
+				return ID_EDEFAULT == null ? id != null : !ID_EDEFAULT.equals(id);
+			case UMLRpyPackage.ISUBSYSTEM__MY_STATE:
+				return MY_STATE_EDEFAULT == null ? myState != null : !MY_STATE_EDEFAULT.equals(myState);
+			case UMLRpyPackage.ISUBSYSTEM__NAME:
+				return NAME_EDEFAULT == null ? name != null : !NAME_EDEFAULT.equals(name);
+			case UMLRpyPackage.ISUBSYSTEM__MODIFIED_TIME_WEAK:
+				return modifiedTimeWeak != null && !modifiedTimeWeak.isEmpty();
+			case UMLRpyPackage.ISUBSYSTEM__DEFAULT_COMPOSITE:
+				return defaultComposite != null;
+			case UMLRpyPackage.ISUBSYSTEM__EVENTS_BASE_ID:
+				return EVENTS_BASE_ID_EDEFAULT == null ? eventsBaseID != null : !EVENTS_BASE_ID_EDEFAULT.equals(eventsBaseID);
+			case UMLRpyPackage.ISUBSYSTEM__CLASSES:
+				return classes != null && !classes.isEmpty();
+			case UMLRpyPackage.ISUBSYSTEM__CONFIGURATION_RELATED_TIME:
+				return configurationRelatedTime != null && !configurationRelatedTime.isEmpty();
+			case UMLRpyPackage.ISUBSYSTEM__PROPERTIES:
+				return properties != null;
+			case UMLRpyPackage.ISUBSYSTEM__LAST_ID:
+				return LAST_ID_EDEFAULT == null ? lastID != null : !LAST_ID_EDEFAULT.equals(lastID);
+			case UMLRpyPackage.ISUBSYSTEM__CMHEADER:
+				return CMHEADER_EDEFAULT == null ? cmheader != null : !CMHEADER_EDEFAULT.equals(cmheader);
+			case UMLRpyPackage.ISUBSYSTEM__DECLARATIVES:
+				return declaratives != null && !declaratives.isEmpty();
+			case UMLRpyPackage.ISUBSYSTEM__TYPES:
+				return types != null && !types.isEmpty();
+			case UMLRpyPackage.ISUBSYSTEM__STEREOTYPES:
+				return stereotypes != null;
+			case UMLRpyPackage.ISUBSYSTEM__PREDEFINED_TYPES:
+				return PREDEFINED_TYPES_EDEFAULT == null ? predefinedTypes != null : !PREDEFINED_TYPES_EDEFAULT.equals(predefinedTypes);
+			case UMLRpyPackage.ISUBSYSTEM__EVENTS:
+				return events != null && !events.isEmpty();
+			case UMLRpyPackage.ISUBSYSTEM__ANNOTATIONS:
+				return annotations != null && !annotations.isEmpty();
+			case UMLRpyPackage.ISUBSYSTEM__USE_CASES:
+				return useCases != null && !useCases.isEmpty();
+			case UMLRpyPackage.ISUBSYSTEM__ACTORS:
+				return actors != null && !actors.isEmpty();
+			case UMLRpyPackage.ISUBSYSTEM__DESCRIPTION:
+				return description != null;
+			case UMLRpyPackage.ISUBSYSTEM__TAGS:
+				return tags != null && !tags.isEmpty();
+			case UMLRpyPackage.ISUBSYSTEM__DEPENDENCIES:
+				return dependencies != null && !dependencies.isEmpty();
+			case UMLRpyPackage.ISUBSYSTEM__OWNER_HANDLE:
+				return ownerHandle != null;
+			case UMLRpyPackage.ISUBSYSTEM__THE_MAIN_DIAGRAM:
+				return theMainDiagram != null;
+			case UMLRpyPackage.ISUBSYSTEM__HYPER_LINKS:
+				return hyperLinks != null;
+			case UMLRpyPackage.ISUBSYSTEM__TABLE_LAYOUTS:
+				return tableLayouts != null && !tableLayouts.isEmpty();
+			case UMLRpyPackage.ISUBSYSTEM__MATRIX_LAYOUTS:
+				return matrixLayouts != null && !matrixLayouts.isEmpty();
+			case UMLRpyPackage.ISUBSYSTEM__TABLE_INSTANCES:
+				return tableInstances != null && !tableInstances.isEmpty();
+			case UMLRpyPackage.ISUBSYSTEM__MATRIX_INSTANCES:
+				return matrixInstances != null && !matrixInstances.isEmpty();
+			case UMLRpyPackage.ISUBSYSTEM__EMBEDED_FILES:
+				return embededFiles != null && !embededFiles.isEmpty();
+			case UMLRpyPackage.ISUBSYSTEM__COMPONENT_FILES:
+				return componentFiles != null && !componentFiles.isEmpty();
+			case UMLRpyPackage.ISUBSYSTEM__REQUIREMEN_TRACABILITY_HANDLE:
+				return REQUIREMEN_TRACABILITY_HANDLE_EDEFAULT == null ? requiremenTracabilityHandle != null : !REQUIREMEN_TRACABILITY_HANDLE_EDEFAULT.equals(requiremenTracabilityHandle);
+			case UMLRpyPackage.ISUBSYSTEM__CODE_UPDATE_CG_TIME:
+				return codeUpdateCGTime != null && !codeUpdateCGTime.isEmpty();
+			case UMLRpyPackage.ISUBSYSTEM__OBJECT_CREATION:
+				return OBJECT_CREATION_EDEFAULT == null ? objectCreation != null : !OBJECT_CREATION_EDEFAULT.equals(objectCreation);
+			case UMLRpyPackage.ISUBSYSTEM__UML_DEPENDENCY_ID:
+				return UML_DEPENDENCY_ID_EDEFAULT == null ? umlDependencyID != null : !UML_DEPENDENCY_ID_EDEFAULT.equals(umlDependencyID);
+			case UMLRpyPackage.ISUBSYSTEM__ASSOCIATION_ELEMENTS:
+				return associationElements != null && !associationElements.isEmpty();
+		}
+		return super.eIsSet(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String toString() {
+		if (eIsProxy()) return super.toString();
+
+		StringBuffer result = new StringBuffer(super.toString());
+		result.append(" (id: "); //$NON-NLS-1$
+		result.append(id);
+		result.append(", myState: "); //$NON-NLS-1$
+		result.append(myState);
+		result.append(", name: "); //$NON-NLS-1$
+		result.append(name);
+		result.append(", modifiedTimeWeak: "); //$NON-NLS-1$
+		result.append(modifiedTimeWeak);
+		result.append(", eventsBaseID: "); //$NON-NLS-1$
+		result.append(eventsBaseID);
+		result.append(", configurationRelatedTime: "); //$NON-NLS-1$
+		result.append(configurationRelatedTime);
+		result.append(", lastID: "); //$NON-NLS-1$
+		result.append(lastID);
+		result.append(", cmheader: "); //$NON-NLS-1$
+		result.append(cmheader);
+		result.append(", PredefinedTypes: "); //$NON-NLS-1$
+		result.append(predefinedTypes);
+		result.append(", requiremenTracabilityHandle: "); //$NON-NLS-1$
+		result.append(requiremenTracabilityHandle);
+		result.append(", codeUpdateCGTime: "); //$NON-NLS-1$
+		result.append(codeUpdateCGTime);
+		result.append(", objectCreation: "); //$NON-NLS-1$
+		result.append(objectCreation);
+		result.append(", umlDependencyID: "); //$NON-NLS-1$
+		result.append(umlDependencyID);
+		result.append(')');
+		return result.toString();
+	}
+
+} //ISubsystemImpl
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/ISwimlaneImpl.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/ISwimlaneImpl.java
new file mode 100755
index 0000000..687ad5d
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/ISwimlaneImpl.java
@@ -0,0 +1,696 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl;
+
+import java.util.Collection;
+
+import org.eclipse.emf.common.notify.Notification;
+import org.eclipse.emf.common.notify.NotificationChain;
+
+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.EDataTypeEList;
+import org.eclipse.emf.ecore.util.EObjectContainmentEList;
+import org.eclipse.emf.ecore.util.InternalEList;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IDescription;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IStereotype;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ISwimlane;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.M_subjectType;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>ISwimlane</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * </p>
+ * <ul>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.ISwimlaneImpl#getId <em>Id</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.ISwimlaneImpl#getName <em>Name</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.ISwimlaneImpl#getModifiedTimeWeak <em>Modified Time Weak</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.ISwimlaneImpl#getDescription <em>Description</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.ISwimlaneImpl#getRepresents <em>Represents</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.ISwimlaneImpl#getMyState <em>My State</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.ISwimlaneImpl#getObjectCreation <em>Object Creation</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.ISwimlaneImpl#getUmlDependencyID <em>Uml Dependency ID</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.ISwimlaneImpl#getSwimlanes <em>Swimlanes</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.ISwimlaneImpl#getStereotypes <em>Stereotypes</em>}</li>
+ * </ul>
+ *
+ * @generated
+ */
+public class ISwimlaneImpl extends IModelElementImpl implements ISwimlane {
+	/**
+	 * The default value of the '{@link #getId() <em>Id</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getId()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String ID_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getId() <em>Id</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getId()
+	 * @generated
+	 * @ordered
+	 */
+	protected String id = ID_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getName() <em>Name</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getName()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String NAME_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getName() <em>Name</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getName()
+	 * @generated
+	 * @ordered
+	 */
+	protected String name = NAME_EDEFAULT;
+
+	/**
+	 * The cached value of the '{@link #getModifiedTimeWeak() <em>Modified Time Weak</em>}' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getModifiedTimeWeak()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<String> modifiedTimeWeak;
+
+	/**
+	 * The cached value of the '{@link #getDescription() <em>Description</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getDescription()
+	 * @generated
+	 * @ordered
+	 */
+	protected IDescription description;
+
+	/**
+	 * The cached value of the '{@link #getRepresents() <em>Represents</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getRepresents()
+	 * @generated
+	 * @ordered
+	 */
+	protected M_subjectType represents;
+
+	/**
+	 * The default value of the '{@link #getMyState() <em>My State</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getMyState()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String MY_STATE_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getMyState() <em>My State</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getMyState()
+	 * @generated
+	 * @ordered
+	 */
+	protected String myState = MY_STATE_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getObjectCreation() <em>Object Creation</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getObjectCreation()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String OBJECT_CREATION_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getObjectCreation() <em>Object Creation</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getObjectCreation()
+	 * @generated
+	 * @ordered
+	 */
+	protected String objectCreation = OBJECT_CREATION_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getUmlDependencyID() <em>Uml Dependency ID</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getUmlDependencyID()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String UML_DEPENDENCY_ID_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getUmlDependencyID() <em>Uml Dependency ID</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getUmlDependencyID()
+	 * @generated
+	 * @ordered
+	 */
+	protected String umlDependencyID = UML_DEPENDENCY_ID_EDEFAULT;
+
+	/**
+	 * The cached value of the '{@link #getSwimlanes() <em>Swimlanes</em>}' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getSwimlanes()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<ISwimlane> swimlanes;
+
+	/**
+	 * The cached value of the '{@link #getStereotypes() <em>Stereotypes</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getStereotypes()
+	 * @generated
+	 * @ordered
+	 */
+	protected IStereotype stereotypes;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected ISwimlaneImpl() {
+		super();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EClass eStaticClass() {
+		return UMLRpyPackage.eINSTANCE.getISwimlane();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getId() {
+		return id;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setId(String newId) {
+		String oldId = id;
+		id = newId;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.ISWIMLANE__ID, oldId, id));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getName() {
+		return name;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setName(String newName) {
+		String oldName = name;
+		name = newName;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.ISWIMLANE__NAME, oldName, name));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<String> getModifiedTimeWeak() {
+		if (modifiedTimeWeak == null) {
+			modifiedTimeWeak = new EDataTypeEList<String>(String.class, this, UMLRpyPackage.ISWIMLANE__MODIFIED_TIME_WEAK);
+		}
+		return modifiedTimeWeak;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IDescription getDescription() {
+		if (description != null && description.eIsProxy()) {
+			InternalEObject oldDescription = (InternalEObject)description;
+			description = (IDescription)eResolveProxy(oldDescription);
+			if (description != oldDescription) {
+				InternalEObject newDescription = (InternalEObject)description;
+				NotificationChain msgs = oldDescription.eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.ISWIMLANE__DESCRIPTION, null, null);
+				if (newDescription.eInternalContainer() == null) {
+					msgs = newDescription.eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.ISWIMLANE__DESCRIPTION, null, msgs);
+				}
+				if (msgs != null) msgs.dispatch();
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.ISWIMLANE__DESCRIPTION, oldDescription, description));
+			}
+		}
+		return description;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IDescription basicGetDescription() {
+		return description;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public NotificationChain basicSetDescription(IDescription newDescription, NotificationChain msgs) {
+		IDescription oldDescription = description;
+		description = newDescription;
+		if (eNotificationRequired()) {
+			ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, UMLRpyPackage.ISWIMLANE__DESCRIPTION, oldDescription, newDescription);
+			if (msgs == null) msgs = notification; else msgs.add(notification);
+		}
+		return msgs;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setDescription(IDescription newDescription) {
+		if (newDescription != description) {
+			NotificationChain msgs = null;
+			if (description != null)
+				msgs = ((InternalEObject)description).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.ISWIMLANE__DESCRIPTION, null, msgs);
+			if (newDescription != null)
+				msgs = ((InternalEObject)newDescription).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.ISWIMLANE__DESCRIPTION, null, msgs);
+			msgs = basicSetDescription(newDescription, msgs);
+			if (msgs != null) msgs.dispatch();
+		}
+		else if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.ISWIMLANE__DESCRIPTION, newDescription, newDescription));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public M_subjectType getRepresents() {
+		if (represents != null && represents.eIsProxy()) {
+			InternalEObject oldRepresents = (InternalEObject)represents;
+			represents = (M_subjectType)eResolveProxy(oldRepresents);
+			if (represents != oldRepresents) {
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.ISWIMLANE__REPRESENTS, oldRepresents, represents));
+			}
+		}
+		return represents;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public M_subjectType basicGetRepresents() {
+		return represents;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setRepresents(M_subjectType newRepresents) {
+		M_subjectType oldRepresents = represents;
+		represents = newRepresents;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.ISWIMLANE__REPRESENTS, oldRepresents, represents));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getMyState() {
+		return myState;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setMyState(String newMyState) {
+		String oldMyState = myState;
+		myState = newMyState;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.ISWIMLANE__MY_STATE, oldMyState, myState));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getObjectCreation() {
+		return objectCreation;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setObjectCreation(String newObjectCreation) {
+		String oldObjectCreation = objectCreation;
+		objectCreation = newObjectCreation;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.ISWIMLANE__OBJECT_CREATION, oldObjectCreation, objectCreation));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getUmlDependencyID() {
+		return umlDependencyID;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setUmlDependencyID(String newUmlDependencyID) {
+		String oldUmlDependencyID = umlDependencyID;
+		umlDependencyID = newUmlDependencyID;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.ISWIMLANE__UML_DEPENDENCY_ID, oldUmlDependencyID, umlDependencyID));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<ISwimlane> getSwimlanes() {
+		if (swimlanes == null) {
+			swimlanes = new EObjectContainmentEList.Resolving<ISwimlane>(ISwimlane.class, this, UMLRpyPackage.ISWIMLANE__SWIMLANES);
+		}
+		return swimlanes;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IStereotype getStereotypes() {
+		if (stereotypes != null && stereotypes.eIsProxy()) {
+			InternalEObject oldStereotypes = (InternalEObject)stereotypes;
+			stereotypes = (IStereotype)eResolveProxy(oldStereotypes);
+			if (stereotypes != oldStereotypes) {
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.ISWIMLANE__STEREOTYPES, oldStereotypes, stereotypes));
+			}
+		}
+		return stereotypes;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IStereotype basicGetStereotypes() {
+		return stereotypes;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setStereotypes(IStereotype newStereotypes) {
+		IStereotype oldStereotypes = stereotypes;
+		stereotypes = newStereotypes;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.ISWIMLANE__STEREOTYPES, oldStereotypes, stereotypes));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
+		switch (featureID) {
+			case UMLRpyPackage.ISWIMLANE__DESCRIPTION:
+				return basicSetDescription(null, msgs);
+			case UMLRpyPackage.ISWIMLANE__SWIMLANES:
+				return ((InternalEList<?>)getSwimlanes()).basicRemove(otherEnd, msgs);
+		}
+		return super.eInverseRemove(otherEnd, featureID, msgs);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object eGet(int featureID, boolean resolve, boolean coreType) {
+		switch (featureID) {
+			case UMLRpyPackage.ISWIMLANE__ID:
+				return getId();
+			case UMLRpyPackage.ISWIMLANE__NAME:
+				return getName();
+			case UMLRpyPackage.ISWIMLANE__MODIFIED_TIME_WEAK:
+				return getModifiedTimeWeak();
+			case UMLRpyPackage.ISWIMLANE__DESCRIPTION:
+				if (resolve) return getDescription();
+				return basicGetDescription();
+			case UMLRpyPackage.ISWIMLANE__REPRESENTS:
+				if (resolve) return getRepresents();
+				return basicGetRepresents();
+			case UMLRpyPackage.ISWIMLANE__MY_STATE:
+				return getMyState();
+			case UMLRpyPackage.ISWIMLANE__OBJECT_CREATION:
+				return getObjectCreation();
+			case UMLRpyPackage.ISWIMLANE__UML_DEPENDENCY_ID:
+				return getUmlDependencyID();
+			case UMLRpyPackage.ISWIMLANE__SWIMLANES:
+				return getSwimlanes();
+			case UMLRpyPackage.ISWIMLANE__STEREOTYPES:
+				if (resolve) return getStereotypes();
+				return basicGetStereotypes();
+		}
+		return super.eGet(featureID, resolve, coreType);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@SuppressWarnings("unchecked")
+	@Override
+	public void eSet(int featureID, Object newValue) {
+		switch (featureID) {
+			case UMLRpyPackage.ISWIMLANE__ID:
+				setId((String)newValue);
+				return;
+			case UMLRpyPackage.ISWIMLANE__NAME:
+				setName((String)newValue);
+				return;
+			case UMLRpyPackage.ISWIMLANE__MODIFIED_TIME_WEAK:
+				getModifiedTimeWeak().clear();
+				getModifiedTimeWeak().addAll((Collection<? extends String>)newValue);
+				return;
+			case UMLRpyPackage.ISWIMLANE__DESCRIPTION:
+				setDescription((IDescription)newValue);
+				return;
+			case UMLRpyPackage.ISWIMLANE__REPRESENTS:
+				setRepresents((M_subjectType)newValue);
+				return;
+			case UMLRpyPackage.ISWIMLANE__MY_STATE:
+				setMyState((String)newValue);
+				return;
+			case UMLRpyPackage.ISWIMLANE__OBJECT_CREATION:
+				setObjectCreation((String)newValue);
+				return;
+			case UMLRpyPackage.ISWIMLANE__UML_DEPENDENCY_ID:
+				setUmlDependencyID((String)newValue);
+				return;
+			case UMLRpyPackage.ISWIMLANE__SWIMLANES:
+				getSwimlanes().clear();
+				getSwimlanes().addAll((Collection<? extends ISwimlane>)newValue);
+				return;
+			case UMLRpyPackage.ISWIMLANE__STEREOTYPES:
+				setStereotypes((IStereotype)newValue);
+				return;
+		}
+		super.eSet(featureID, newValue);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void eUnset(int featureID) {
+		switch (featureID) {
+			case UMLRpyPackage.ISWIMLANE__ID:
+				setId(ID_EDEFAULT);
+				return;
+			case UMLRpyPackage.ISWIMLANE__NAME:
+				setName(NAME_EDEFAULT);
+				return;
+			case UMLRpyPackage.ISWIMLANE__MODIFIED_TIME_WEAK:
+				getModifiedTimeWeak().clear();
+				return;
+			case UMLRpyPackage.ISWIMLANE__DESCRIPTION:
+				setDescription((IDescription)null);
+				return;
+			case UMLRpyPackage.ISWIMLANE__REPRESENTS:
+				setRepresents((M_subjectType)null);
+				return;
+			case UMLRpyPackage.ISWIMLANE__MY_STATE:
+				setMyState(MY_STATE_EDEFAULT);
+				return;
+			case UMLRpyPackage.ISWIMLANE__OBJECT_CREATION:
+				setObjectCreation(OBJECT_CREATION_EDEFAULT);
+				return;
+			case UMLRpyPackage.ISWIMLANE__UML_DEPENDENCY_ID:
+				setUmlDependencyID(UML_DEPENDENCY_ID_EDEFAULT);
+				return;
+			case UMLRpyPackage.ISWIMLANE__SWIMLANES:
+				getSwimlanes().clear();
+				return;
+			case UMLRpyPackage.ISWIMLANE__STEREOTYPES:
+				setStereotypes((IStereotype)null);
+				return;
+		}
+		super.eUnset(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public boolean eIsSet(int featureID) {
+		switch (featureID) {
+			case UMLRpyPackage.ISWIMLANE__ID:
+				return ID_EDEFAULT == null ? id != null : !ID_EDEFAULT.equals(id);
+			case UMLRpyPackage.ISWIMLANE__NAME:
+				return NAME_EDEFAULT == null ? name != null : !NAME_EDEFAULT.equals(name);
+			case UMLRpyPackage.ISWIMLANE__MODIFIED_TIME_WEAK:
+				return modifiedTimeWeak != null && !modifiedTimeWeak.isEmpty();
+			case UMLRpyPackage.ISWIMLANE__DESCRIPTION:
+				return description != null;
+			case UMLRpyPackage.ISWIMLANE__REPRESENTS:
+				return represents != null;
+			case UMLRpyPackage.ISWIMLANE__MY_STATE:
+				return MY_STATE_EDEFAULT == null ? myState != null : !MY_STATE_EDEFAULT.equals(myState);
+			case UMLRpyPackage.ISWIMLANE__OBJECT_CREATION:
+				return OBJECT_CREATION_EDEFAULT == null ? objectCreation != null : !OBJECT_CREATION_EDEFAULT.equals(objectCreation);
+			case UMLRpyPackage.ISWIMLANE__UML_DEPENDENCY_ID:
+				return UML_DEPENDENCY_ID_EDEFAULT == null ? umlDependencyID != null : !UML_DEPENDENCY_ID_EDEFAULT.equals(umlDependencyID);
+			case UMLRpyPackage.ISWIMLANE__SWIMLANES:
+				return swimlanes != null && !swimlanes.isEmpty();
+			case UMLRpyPackage.ISWIMLANE__STEREOTYPES:
+				return stereotypes != null;
+		}
+		return super.eIsSet(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String toString() {
+		if (eIsProxy()) return super.toString();
+
+		StringBuffer result = new StringBuffer(super.toString());
+		result.append(" (id: "); //$NON-NLS-1$
+		result.append(id);
+		result.append(", name: "); //$NON-NLS-1$
+		result.append(name);
+		result.append(", modifiedTimeWeak: "); //$NON-NLS-1$
+		result.append(modifiedTimeWeak);
+		result.append(", myState: "); //$NON-NLS-1$
+		result.append(myState);
+		result.append(", objectCreation: "); //$NON-NLS-1$
+		result.append(objectCreation);
+		result.append(", umlDependencyID: "); //$NON-NLS-1$
+		result.append(umlDependencyID);
+		result.append(')');
+		return result.toString();
+	}
+
+} //ISwimlaneImpl
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/ISysMLPortImpl.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/ISysMLPortImpl.java
new file mode 100755
index 0000000..b6e99f1
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/ISysMLPortImpl.java
@@ -0,0 +1,888 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl;
+
+import java.util.Collection;
+
+import org.eclipse.emf.common.notify.Notification;
+import org.eclipse.emf.common.notify.NotificationChain;
+
+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.EObjectContainmentEList;
+import org.eclipse.emf.ecore.util.InternalEList;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.DependsOnType;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ElementsType;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.End1_Type;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.End2_Type;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.FromLinkType;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IClass;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IDependency;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IDescription;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ISysMLPort;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITag;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IUnit;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.M_pFormalMessageType;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ToLinkType;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>ISys ML Port</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * </p>
+ * <ul>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.ISysMLPortImpl#getImplicitClass <em>Implicit Class</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.ISysMLPortImpl#getMultiplicity <em>Multiplicity</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.ISysMLPortImpl#getDependencies <em>Dependencies</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.ISysMLPortImpl#getStereotypes <em>Stereotypes</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.ISysMLPortImpl#getTags <em>Tags</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.ISysMLPortImpl#getOtherClass <em>Other Class</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.ISysMLPortImpl#getDirection <em>Direction</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.ISysMLPortImpl#getDescription <em>Description</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.ISysMLPortImpl#getLastID <em>Last ID</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.ISysMLPortImpl#getReversed <em>Reversed</em>}</li>
+ * </ul>
+ *
+ * @generated
+ */
+public class ISysMLPortImpl extends IInstanceImpl implements ISysMLPort {
+	/**
+	 * The cached value of the '{@link #getImplicitClass() <em>Implicit Class</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getImplicitClass()
+	 * @generated
+	 * @ordered
+	 */
+	protected IClass implicitClass;
+
+	/**
+	 * The default value of the '{@link #getMultiplicity() <em>Multiplicity</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getMultiplicity()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String MULTIPLICITY_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getMultiplicity() <em>Multiplicity</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getMultiplicity()
+	 * @generated
+	 * @ordered
+	 */
+	protected String multiplicity = MULTIPLICITY_EDEFAULT;
+
+	/**
+	 * The cached value of the '{@link #getDependencies() <em>Dependencies</em>}' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getDependencies()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<IDependency> dependencies;
+
+	/**
+	 * The cached value of the '{@link #getStereotypes() <em>Stereotypes</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getStereotypes()
+	 * @generated
+	 * @ordered
+	 */
+	protected IUnit stereotypes;
+
+	/**
+	 * The cached value of the '{@link #getTags() <em>Tags</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getTags()
+	 * @generated
+	 * @ordered
+	 */
+	protected ITag tags;
+
+	/**
+	 * The cached value of the '{@link #getOtherClass() <em>Other Class</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getOtherClass()
+	 * @generated
+	 * @ordered
+	 */
+	protected IUnit otherClass;
+
+	/**
+	 * The default value of the '{@link #getDirection() <em>Direction</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getDirection()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String DIRECTION_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getDirection() <em>Direction</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getDirection()
+	 * @generated
+	 * @ordered
+	 */
+	protected String direction = DIRECTION_EDEFAULT;
+
+	/**
+	 * The cached value of the '{@link #getDescription() <em>Description</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getDescription()
+	 * @generated
+	 * @ordered
+	 */
+	protected IDescription description;
+
+	/**
+	 * The default value of the '{@link #getLastID() <em>Last ID</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getLastID()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String LAST_ID_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getLastID() <em>Last ID</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getLastID()
+	 * @generated
+	 * @ordered
+	 */
+	protected String lastID = LAST_ID_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getReversed() <em>Reversed</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getReversed()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String REVERSED_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getReversed() <em>Reversed</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getReversed()
+	 * @generated
+	 * @ordered
+	 */
+	protected String reversed = REVERSED_EDEFAULT;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected ISysMLPortImpl() {
+		super();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EClass eStaticClass() {
+		return UMLRpyPackage.eINSTANCE.getISysMLPort();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IClass getImplicitClass() {
+		if (implicitClass != null && implicitClass.eIsProxy()) {
+			InternalEObject oldImplicitClass = (InternalEObject)implicitClass;
+			implicitClass = (IClass)eResolveProxy(oldImplicitClass);
+			if (implicitClass != oldImplicitClass) {
+				InternalEObject newImplicitClass = (InternalEObject)implicitClass;
+				NotificationChain msgs = oldImplicitClass.eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.ISYS_ML_PORT__IMPLICIT_CLASS, null, null);
+				if (newImplicitClass.eInternalContainer() == null) {
+					msgs = newImplicitClass.eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.ISYS_ML_PORT__IMPLICIT_CLASS, null, msgs);
+				}
+				if (msgs != null) msgs.dispatch();
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.ISYS_ML_PORT__IMPLICIT_CLASS, oldImplicitClass, implicitClass));
+			}
+		}
+		return implicitClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IClass basicGetImplicitClass() {
+		return implicitClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public NotificationChain basicSetImplicitClass(IClass newImplicitClass, NotificationChain msgs) {
+		IClass oldImplicitClass = implicitClass;
+		implicitClass = newImplicitClass;
+		if (eNotificationRequired()) {
+			ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, UMLRpyPackage.ISYS_ML_PORT__IMPLICIT_CLASS, oldImplicitClass, newImplicitClass);
+			if (msgs == null) msgs = notification; else msgs.add(notification);
+		}
+		return msgs;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setImplicitClass(IClass newImplicitClass) {
+		if (newImplicitClass != implicitClass) {
+			NotificationChain msgs = null;
+			if (implicitClass != null)
+				msgs = ((InternalEObject)implicitClass).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.ISYS_ML_PORT__IMPLICIT_CLASS, null, msgs);
+			if (newImplicitClass != null)
+				msgs = ((InternalEObject)newImplicitClass).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.ISYS_ML_PORT__IMPLICIT_CLASS, null, msgs);
+			msgs = basicSetImplicitClass(newImplicitClass, msgs);
+			if (msgs != null) msgs.dispatch();
+		}
+		else if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.ISYS_ML_PORT__IMPLICIT_CLASS, newImplicitClass, newImplicitClass));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getMultiplicity() {
+		return multiplicity;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setMultiplicity(String newMultiplicity) {
+		String oldMultiplicity = multiplicity;
+		multiplicity = newMultiplicity;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.ISYS_ML_PORT__MULTIPLICITY, oldMultiplicity, multiplicity));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<IDependency> getDependencies() {
+		if (dependencies == null) {
+			dependencies = new EObjectContainmentEList.Resolving<IDependency>(IDependency.class, this, UMLRpyPackage.ISYS_ML_PORT__DEPENDENCIES);
+		}
+		return dependencies;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IUnit getStereotypes() {
+		if (stereotypes != null && stereotypes.eIsProxy()) {
+			InternalEObject oldStereotypes = (InternalEObject)stereotypes;
+			stereotypes = (IUnit)eResolveProxy(oldStereotypes);
+			if (stereotypes != oldStereotypes) {
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.ISYS_ML_PORT__STEREOTYPES, oldStereotypes, stereotypes));
+			}
+		}
+		return stereotypes;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IUnit basicGetStereotypes() {
+		return stereotypes;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setStereotypes(IUnit newStereotypes) {
+		IUnit oldStereotypes = stereotypes;
+		stereotypes = newStereotypes;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.ISYS_ML_PORT__STEREOTYPES, oldStereotypes, stereotypes));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public ITag getTags() {
+		if (tags != null && tags.eIsProxy()) {
+			InternalEObject oldTags = (InternalEObject)tags;
+			tags = (ITag)eResolveProxy(oldTags);
+			if (tags != oldTags) {
+				InternalEObject newTags = (InternalEObject)tags;
+				NotificationChain msgs = oldTags.eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.ISYS_ML_PORT__TAGS, null, null);
+				if (newTags.eInternalContainer() == null) {
+					msgs = newTags.eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.ISYS_ML_PORT__TAGS, null, msgs);
+				}
+				if (msgs != null) msgs.dispatch();
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.ISYS_ML_PORT__TAGS, oldTags, tags));
+			}
+		}
+		return tags;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public ITag basicGetTags() {
+		return tags;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public NotificationChain basicSetTags(ITag newTags, NotificationChain msgs) {
+		ITag oldTags = tags;
+		tags = newTags;
+		if (eNotificationRequired()) {
+			ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, UMLRpyPackage.ISYS_ML_PORT__TAGS, oldTags, newTags);
+			if (msgs == null) msgs = notification; else msgs.add(notification);
+		}
+		return msgs;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setTags(ITag newTags) {
+		if (newTags != tags) {
+			NotificationChain msgs = null;
+			if (tags != null)
+				msgs = ((InternalEObject)tags).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.ISYS_ML_PORT__TAGS, null, msgs);
+			if (newTags != null)
+				msgs = ((InternalEObject)newTags).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.ISYS_ML_PORT__TAGS, null, msgs);
+			msgs = basicSetTags(newTags, msgs);
+			if (msgs != null) msgs.dispatch();
+		}
+		else if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.ISYS_ML_PORT__TAGS, newTags, newTags));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IUnit getOtherClass() {
+		if (otherClass != null && otherClass.eIsProxy()) {
+			InternalEObject oldOtherClass = (InternalEObject)otherClass;
+			otherClass = (IUnit)eResolveProxy(oldOtherClass);
+			if (otherClass != oldOtherClass) {
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.ISYS_ML_PORT__OTHER_CLASS, oldOtherClass, otherClass));
+			}
+		}
+		return otherClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IUnit basicGetOtherClass() {
+		return otherClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setOtherClass(IUnit newOtherClass) {
+		IUnit oldOtherClass = otherClass;
+		otherClass = newOtherClass;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.ISYS_ML_PORT__OTHER_CLASS, oldOtherClass, otherClass));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getDirection() {
+		return direction;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setDirection(String newDirection) {
+		String oldDirection = direction;
+		direction = newDirection;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.ISYS_ML_PORT__DIRECTION, oldDirection, direction));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IDescription getDescription() {
+		if (description != null && description.eIsProxy()) {
+			InternalEObject oldDescription = (InternalEObject)description;
+			description = (IDescription)eResolveProxy(oldDescription);
+			if (description != oldDescription) {
+				InternalEObject newDescription = (InternalEObject)description;
+				NotificationChain msgs = oldDescription.eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.ISYS_ML_PORT__DESCRIPTION, null, null);
+				if (newDescription.eInternalContainer() == null) {
+					msgs = newDescription.eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.ISYS_ML_PORT__DESCRIPTION, null, msgs);
+				}
+				if (msgs != null) msgs.dispatch();
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.ISYS_ML_PORT__DESCRIPTION, oldDescription, description));
+			}
+		}
+		return description;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IDescription basicGetDescription() {
+		return description;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public NotificationChain basicSetDescription(IDescription newDescription, NotificationChain msgs) {
+		IDescription oldDescription = description;
+		description = newDescription;
+		if (eNotificationRequired()) {
+			ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, UMLRpyPackage.ISYS_ML_PORT__DESCRIPTION, oldDescription, newDescription);
+			if (msgs == null) msgs = notification; else msgs.add(notification);
+		}
+		return msgs;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setDescription(IDescription newDescription) {
+		if (newDescription != description) {
+			NotificationChain msgs = null;
+			if (description != null)
+				msgs = ((InternalEObject)description).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.ISYS_ML_PORT__DESCRIPTION, null, msgs);
+			if (newDescription != null)
+				msgs = ((InternalEObject)newDescription).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.ISYS_ML_PORT__DESCRIPTION, null, msgs);
+			msgs = basicSetDescription(newDescription, msgs);
+			if (msgs != null) msgs.dispatch();
+		}
+		else if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.ISYS_ML_PORT__DESCRIPTION, newDescription, newDescription));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getLastID() {
+		return lastID;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setLastID(String newLastID) {
+		String oldLastID = lastID;
+		lastID = newLastID;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.ISYS_ML_PORT__LAST_ID, oldLastID, lastID));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getReversed() {
+		return reversed;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setReversed(String newReversed) {
+		String oldReversed = reversed;
+		reversed = newReversed;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.ISYS_ML_PORT__REVERSED, oldReversed, reversed));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
+		switch (featureID) {
+			case UMLRpyPackage.ISYS_ML_PORT__IMPLICIT_CLASS:
+				return basicSetImplicitClass(null, msgs);
+			case UMLRpyPackage.ISYS_ML_PORT__DEPENDENCIES:
+				return ((InternalEList<?>)getDependencies()).basicRemove(otherEnd, msgs);
+			case UMLRpyPackage.ISYS_ML_PORT__TAGS:
+				return basicSetTags(null, msgs);
+			case UMLRpyPackage.ISYS_ML_PORT__DESCRIPTION:
+				return basicSetDescription(null, msgs);
+		}
+		return super.eInverseRemove(otherEnd, featureID, msgs);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object eGet(int featureID, boolean resolve, boolean coreType) {
+		switch (featureID) {
+			case UMLRpyPackage.ISYS_ML_PORT__IMPLICIT_CLASS:
+				if (resolve) return getImplicitClass();
+				return basicGetImplicitClass();
+			case UMLRpyPackage.ISYS_ML_PORT__MULTIPLICITY:
+				return getMultiplicity();
+			case UMLRpyPackage.ISYS_ML_PORT__DEPENDENCIES:
+				return getDependencies();
+			case UMLRpyPackage.ISYS_ML_PORT__STEREOTYPES:
+				if (resolve) return getStereotypes();
+				return basicGetStereotypes();
+			case UMLRpyPackage.ISYS_ML_PORT__TAGS:
+				if (resolve) return getTags();
+				return basicGetTags();
+			case UMLRpyPackage.ISYS_ML_PORT__OTHER_CLASS:
+				if (resolve) return getOtherClass();
+				return basicGetOtherClass();
+			case UMLRpyPackage.ISYS_ML_PORT__DIRECTION:
+				return getDirection();
+			case UMLRpyPackage.ISYS_ML_PORT__DESCRIPTION:
+				if (resolve) return getDescription();
+				return basicGetDescription();
+			case UMLRpyPackage.ISYS_ML_PORT__LAST_ID:
+				return getLastID();
+			case UMLRpyPackage.ISYS_ML_PORT__REVERSED:
+				return getReversed();
+		}
+		return super.eGet(featureID, resolve, coreType);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@SuppressWarnings("unchecked")
+	@Override
+	public void eSet(int featureID, Object newValue) {
+		switch (featureID) {
+			case UMLRpyPackage.ISYS_ML_PORT__IMPLICIT_CLASS:
+				setImplicitClass((IClass)newValue);
+				return;
+			case UMLRpyPackage.ISYS_ML_PORT__MULTIPLICITY:
+				setMultiplicity((String)newValue);
+				return;
+			case UMLRpyPackage.ISYS_ML_PORT__DEPENDENCIES:
+				getDependencies().clear();
+				getDependencies().addAll((Collection<? extends IDependency>)newValue);
+				return;
+			case UMLRpyPackage.ISYS_ML_PORT__STEREOTYPES:
+				setStereotypes((IUnit)newValue);
+				return;
+			case UMLRpyPackage.ISYS_ML_PORT__TAGS:
+				setTags((ITag)newValue);
+				return;
+			case UMLRpyPackage.ISYS_ML_PORT__OTHER_CLASS:
+				setOtherClass((IUnit)newValue);
+				return;
+			case UMLRpyPackage.ISYS_ML_PORT__DIRECTION:
+				setDirection((String)newValue);
+				return;
+			case UMLRpyPackage.ISYS_ML_PORT__DESCRIPTION:
+				setDescription((IDescription)newValue);
+				return;
+			case UMLRpyPackage.ISYS_ML_PORT__LAST_ID:
+				setLastID((String)newValue);
+				return;
+			case UMLRpyPackage.ISYS_ML_PORT__REVERSED:
+				setReversed((String)newValue);
+				return;
+		}
+		super.eSet(featureID, newValue);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void eUnset(int featureID) {
+		switch (featureID) {
+			case UMLRpyPackage.ISYS_ML_PORT__IMPLICIT_CLASS:
+				setImplicitClass((IClass)null);
+				return;
+			case UMLRpyPackage.ISYS_ML_PORT__MULTIPLICITY:
+				setMultiplicity(MULTIPLICITY_EDEFAULT);
+				return;
+			case UMLRpyPackage.ISYS_ML_PORT__DEPENDENCIES:
+				getDependencies().clear();
+				return;
+			case UMLRpyPackage.ISYS_ML_PORT__STEREOTYPES:
+				setStereotypes((IUnit)null);
+				return;
+			case UMLRpyPackage.ISYS_ML_PORT__TAGS:
+				setTags((ITag)null);
+				return;
+			case UMLRpyPackage.ISYS_ML_PORT__OTHER_CLASS:
+				setOtherClass((IUnit)null);
+				return;
+			case UMLRpyPackage.ISYS_ML_PORT__DIRECTION:
+				setDirection(DIRECTION_EDEFAULT);
+				return;
+			case UMLRpyPackage.ISYS_ML_PORT__DESCRIPTION:
+				setDescription((IDescription)null);
+				return;
+			case UMLRpyPackage.ISYS_ML_PORT__LAST_ID:
+				setLastID(LAST_ID_EDEFAULT);
+				return;
+			case UMLRpyPackage.ISYS_ML_PORT__REVERSED:
+				setReversed(REVERSED_EDEFAULT);
+				return;
+		}
+		super.eUnset(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public boolean eIsSet(int featureID) {
+		switch (featureID) {
+			case UMLRpyPackage.ISYS_ML_PORT__IMPLICIT_CLASS:
+				return implicitClass != null;
+			case UMLRpyPackage.ISYS_ML_PORT__MULTIPLICITY:
+				return MULTIPLICITY_EDEFAULT == null ? multiplicity != null : !MULTIPLICITY_EDEFAULT.equals(multiplicity);
+			case UMLRpyPackage.ISYS_ML_PORT__DEPENDENCIES:
+				return dependencies != null && !dependencies.isEmpty();
+			case UMLRpyPackage.ISYS_ML_PORT__STEREOTYPES:
+				return stereotypes != null;
+			case UMLRpyPackage.ISYS_ML_PORT__TAGS:
+				return tags != null;
+			case UMLRpyPackage.ISYS_ML_PORT__OTHER_CLASS:
+				return otherClass != null;
+			case UMLRpyPackage.ISYS_ML_PORT__DIRECTION:
+				return DIRECTION_EDEFAULT == null ? direction != null : !DIRECTION_EDEFAULT.equals(direction);
+			case UMLRpyPackage.ISYS_ML_PORT__DESCRIPTION:
+				return description != null;
+			case UMLRpyPackage.ISYS_ML_PORT__LAST_ID:
+				return LAST_ID_EDEFAULT == null ? lastID != null : !LAST_ID_EDEFAULT.equals(lastID);
+			case UMLRpyPackage.ISYS_ML_PORT__REVERSED:
+				return REVERSED_EDEFAULT == null ? reversed != null : !REVERSED_EDEFAULT.equals(reversed);
+		}
+		return super.eIsSet(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public int eBaseStructuralFeatureID(int derivedFeatureID, Class<?> baseClass) {
+		if (baseClass == ElementsType.class) {
+			switch (derivedFeatureID) {
+				default: return -1;
+			}
+		}
+		if (baseClass == DependsOnType.class) {
+			switch (derivedFeatureID) {
+				default: return -1;
+			}
+		}
+		if (baseClass == M_pFormalMessageType.class) {
+			switch (derivedFeatureID) {
+				default: return -1;
+			}
+		}
+		if (baseClass == FromLinkType.class) {
+			switch (derivedFeatureID) {
+				default: return -1;
+			}
+		}
+		if (baseClass == ToLinkType.class) {
+			switch (derivedFeatureID) {
+				case UMLRpyPackage.ISYS_ML_PORT__IMPLICIT_CLASS: return UMLRpyPackage.TO_LINK_TYPE__IMPLICIT_CLASS;
+				default: return -1;
+			}
+		}
+		if (baseClass == End1_Type.class) {
+			switch (derivedFeatureID) {
+				default: return -1;
+			}
+		}
+		if (baseClass == End2_Type.class) {
+			switch (derivedFeatureID) {
+				case UMLRpyPackage.ISYS_ML_PORT__MULTIPLICITY: return UMLRpyPackage.END2_TYPE__MULTIPLICITY;
+				default: return -1;
+			}
+		}
+		return super.eBaseStructuralFeatureID(derivedFeatureID, baseClass);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public int eDerivedStructuralFeatureID(int baseFeatureID, Class<?> baseClass) {
+		if (baseClass == ElementsType.class) {
+			switch (baseFeatureID) {
+				default: return -1;
+			}
+		}
+		if (baseClass == DependsOnType.class) {
+			switch (baseFeatureID) {
+				default: return -1;
+			}
+		}
+		if (baseClass == M_pFormalMessageType.class) {
+			switch (baseFeatureID) {
+				default: return -1;
+			}
+		}
+		if (baseClass == FromLinkType.class) {
+			switch (baseFeatureID) {
+				default: return -1;
+			}
+		}
+		if (baseClass == ToLinkType.class) {
+			switch (baseFeatureID) {
+				case UMLRpyPackage.TO_LINK_TYPE__IMPLICIT_CLASS: return UMLRpyPackage.ISYS_ML_PORT__IMPLICIT_CLASS;
+				default: return -1;
+			}
+		}
+		if (baseClass == End1_Type.class) {
+			switch (baseFeatureID) {
+				default: return -1;
+			}
+		}
+		if (baseClass == End2_Type.class) {
+			switch (baseFeatureID) {
+				case UMLRpyPackage.END2_TYPE__MULTIPLICITY: return UMLRpyPackage.ISYS_ML_PORT__MULTIPLICITY;
+				default: return -1;
+			}
+		}
+		return super.eDerivedStructuralFeatureID(baseFeatureID, baseClass);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String toString() {
+		if (eIsProxy()) return super.toString();
+
+		StringBuffer result = new StringBuffer(super.toString());
+		result.append(" (multiplicity: "); //$NON-NLS-1$
+		result.append(multiplicity);
+		result.append(", direction: "); //$NON-NLS-1$
+		result.append(direction);
+		result.append(", lastID: "); //$NON-NLS-1$
+		result.append(lastID);
+		result.append(", reversed: "); //$NON-NLS-1$
+		result.append(reversed);
+		result.append(')');
+		return result.toString();
+	}
+
+} //ISysMLPortImpl
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/ITableInstanceImpl.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/ITableInstanceImpl.java
new file mode 100755
index 0000000..6cff451
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/ITableInstanceImpl.java
@@ -0,0 +1,611 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl;
+
+import java.util.Collection;
+
+import org.eclipse.emf.common.notify.Notification;
+import org.eclipse.emf.common.notify.NotificationChain;
+
+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.EDataTypeEList;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IClassifier;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IPropertyContainer;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITableInstance;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IUnit;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.M_pModelObjectType;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>ITable Instance</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * </p>
+ * <ul>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.ITableInstanceImpl#getId <em>Id</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.ITableInstanceImpl#getMyState <em>My State</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.ITableInstanceImpl#getProperties <em>Properties</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.ITableInstanceImpl#getName <em>Name</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.ITableInstanceImpl#getModifiedTimeWeak <em>Modified Time Weak</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.ITableInstanceImpl#getLayoutHandle <em>Layout Handle</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.ITableInstanceImpl#getScopeHandles <em>Scope Handles</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.ITableInstanceImpl#getStereotypes <em>Stereotypes</em>}</li>
+ * </ul>
+ *
+ * @generated
+ */
+public class ITableInstanceImpl extends TableInstancesTypeImpl implements ITableInstance {
+	/**
+	 * The default value of the '{@link #getId() <em>Id</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getId()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String ID_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getId() <em>Id</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getId()
+	 * @generated
+	 * @ordered
+	 */
+	protected String id = ID_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getMyState() <em>My State</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getMyState()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String MY_STATE_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getMyState() <em>My State</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getMyState()
+	 * @generated
+	 * @ordered
+	 */
+	protected String myState = MY_STATE_EDEFAULT;
+
+	/**
+	 * The cached value of the '{@link #getProperties() <em>Properties</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getProperties()
+	 * @generated
+	 * @ordered
+	 */
+	protected IPropertyContainer properties;
+
+	/**
+	 * The default value of the '{@link #getName() <em>Name</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getName()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String NAME_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getName() <em>Name</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getName()
+	 * @generated
+	 * @ordered
+	 */
+	protected String name = NAME_EDEFAULT;
+
+	/**
+	 * The cached value of the '{@link #getModifiedTimeWeak() <em>Modified Time Weak</em>}' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getModifiedTimeWeak()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<String> modifiedTimeWeak;
+
+	/**
+	 * The cached value of the '{@link #getLayoutHandle() <em>Layout Handle</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getLayoutHandle()
+	 * @generated
+	 * @ordered
+	 */
+	protected IUnit layoutHandle;
+
+	/**
+	 * The cached value of the '{@link #getScopeHandles() <em>Scope Handles</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getScopeHandles()
+	 * @generated
+	 * @ordered
+	 */
+	protected M_pModelObjectType scopeHandles;
+
+	/**
+	 * The cached value of the '{@link #getStereotypes() <em>Stereotypes</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getStereotypes()
+	 * @generated
+	 * @ordered
+	 */
+	protected IClassifier stereotypes;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected ITableInstanceImpl() {
+		super();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EClass eStaticClass() {
+		return UMLRpyPackage.eINSTANCE.getITableInstance();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getId() {
+		return id;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setId(String newId) {
+		String oldId = id;
+		id = newId;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.ITABLE_INSTANCE__ID, oldId, id));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getMyState() {
+		return myState;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setMyState(String newMyState) {
+		String oldMyState = myState;
+		myState = newMyState;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.ITABLE_INSTANCE__MY_STATE, oldMyState, myState));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IPropertyContainer getProperties() {
+		if (properties != null && properties.eIsProxy()) {
+			InternalEObject oldProperties = (InternalEObject)properties;
+			properties = (IPropertyContainer)eResolveProxy(oldProperties);
+			if (properties != oldProperties) {
+				InternalEObject newProperties = (InternalEObject)properties;
+				NotificationChain msgs = oldProperties.eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.ITABLE_INSTANCE__PROPERTIES, null, null);
+				if (newProperties.eInternalContainer() == null) {
+					msgs = newProperties.eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.ITABLE_INSTANCE__PROPERTIES, null, msgs);
+				}
+				if (msgs != null) msgs.dispatch();
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.ITABLE_INSTANCE__PROPERTIES, oldProperties, properties));
+			}
+		}
+		return properties;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IPropertyContainer basicGetProperties() {
+		return properties;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public NotificationChain basicSetProperties(IPropertyContainer newProperties, NotificationChain msgs) {
+		IPropertyContainer oldProperties = properties;
+		properties = newProperties;
+		if (eNotificationRequired()) {
+			ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, UMLRpyPackage.ITABLE_INSTANCE__PROPERTIES, oldProperties, newProperties);
+			if (msgs == null) msgs = notification; else msgs.add(notification);
+		}
+		return msgs;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setProperties(IPropertyContainer newProperties) {
+		if (newProperties != properties) {
+			NotificationChain msgs = null;
+			if (properties != null)
+				msgs = ((InternalEObject)properties).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.ITABLE_INSTANCE__PROPERTIES, null, msgs);
+			if (newProperties != null)
+				msgs = ((InternalEObject)newProperties).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.ITABLE_INSTANCE__PROPERTIES, null, msgs);
+			msgs = basicSetProperties(newProperties, msgs);
+			if (msgs != null) msgs.dispatch();
+		}
+		else if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.ITABLE_INSTANCE__PROPERTIES, newProperties, newProperties));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getName() {
+		return name;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setName(String newName) {
+		String oldName = name;
+		name = newName;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.ITABLE_INSTANCE__NAME, oldName, name));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<String> getModifiedTimeWeak() {
+		if (modifiedTimeWeak == null) {
+			modifiedTimeWeak = new EDataTypeEList<String>(String.class, this, UMLRpyPackage.ITABLE_INSTANCE__MODIFIED_TIME_WEAK);
+		}
+		return modifiedTimeWeak;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IUnit getLayoutHandle() {
+		if (layoutHandle != null && layoutHandle.eIsProxy()) {
+			InternalEObject oldLayoutHandle = (InternalEObject)layoutHandle;
+			layoutHandle = (IUnit)eResolveProxy(oldLayoutHandle);
+			if (layoutHandle != oldLayoutHandle) {
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.ITABLE_INSTANCE__LAYOUT_HANDLE, oldLayoutHandle, layoutHandle));
+			}
+		}
+		return layoutHandle;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IUnit basicGetLayoutHandle() {
+		return layoutHandle;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setLayoutHandle(IUnit newLayoutHandle) {
+		IUnit oldLayoutHandle = layoutHandle;
+		layoutHandle = newLayoutHandle;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.ITABLE_INSTANCE__LAYOUT_HANDLE, oldLayoutHandle, layoutHandle));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public M_pModelObjectType getScopeHandles() {
+		if (scopeHandles != null && scopeHandles.eIsProxy()) {
+			InternalEObject oldScopeHandles = (InternalEObject)scopeHandles;
+			scopeHandles = (M_pModelObjectType)eResolveProxy(oldScopeHandles);
+			if (scopeHandles != oldScopeHandles) {
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.ITABLE_INSTANCE__SCOPE_HANDLES, oldScopeHandles, scopeHandles));
+			}
+		}
+		return scopeHandles;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public M_pModelObjectType basicGetScopeHandles() {
+		return scopeHandles;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setScopeHandles(M_pModelObjectType newScopeHandles) {
+		M_pModelObjectType oldScopeHandles = scopeHandles;
+		scopeHandles = newScopeHandles;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.ITABLE_INSTANCE__SCOPE_HANDLES, oldScopeHandles, scopeHandles));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IClassifier getStereotypes() {
+		if (stereotypes != null && stereotypes.eIsProxy()) {
+			InternalEObject oldStereotypes = (InternalEObject)stereotypes;
+			stereotypes = (IClassifier)eResolveProxy(oldStereotypes);
+			if (stereotypes != oldStereotypes) {
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.ITABLE_INSTANCE__STEREOTYPES, oldStereotypes, stereotypes));
+			}
+		}
+		return stereotypes;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IClassifier basicGetStereotypes() {
+		return stereotypes;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setStereotypes(IClassifier newStereotypes) {
+		IClassifier oldStereotypes = stereotypes;
+		stereotypes = newStereotypes;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.ITABLE_INSTANCE__STEREOTYPES, oldStereotypes, stereotypes));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
+		switch (featureID) {
+			case UMLRpyPackage.ITABLE_INSTANCE__PROPERTIES:
+				return basicSetProperties(null, msgs);
+		}
+		return super.eInverseRemove(otherEnd, featureID, msgs);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object eGet(int featureID, boolean resolve, boolean coreType) {
+		switch (featureID) {
+			case UMLRpyPackage.ITABLE_INSTANCE__ID:
+				return getId();
+			case UMLRpyPackage.ITABLE_INSTANCE__MY_STATE:
+				return getMyState();
+			case UMLRpyPackage.ITABLE_INSTANCE__PROPERTIES:
+				if (resolve) return getProperties();
+				return basicGetProperties();
+			case UMLRpyPackage.ITABLE_INSTANCE__NAME:
+				return getName();
+			case UMLRpyPackage.ITABLE_INSTANCE__MODIFIED_TIME_WEAK:
+				return getModifiedTimeWeak();
+			case UMLRpyPackage.ITABLE_INSTANCE__LAYOUT_HANDLE:
+				if (resolve) return getLayoutHandle();
+				return basicGetLayoutHandle();
+			case UMLRpyPackage.ITABLE_INSTANCE__SCOPE_HANDLES:
+				if (resolve) return getScopeHandles();
+				return basicGetScopeHandles();
+			case UMLRpyPackage.ITABLE_INSTANCE__STEREOTYPES:
+				if (resolve) return getStereotypes();
+				return basicGetStereotypes();
+		}
+		return super.eGet(featureID, resolve, coreType);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@SuppressWarnings("unchecked")
+	@Override
+	public void eSet(int featureID, Object newValue) {
+		switch (featureID) {
+			case UMLRpyPackage.ITABLE_INSTANCE__ID:
+				setId((String)newValue);
+				return;
+			case UMLRpyPackage.ITABLE_INSTANCE__MY_STATE:
+				setMyState((String)newValue);
+				return;
+			case UMLRpyPackage.ITABLE_INSTANCE__PROPERTIES:
+				setProperties((IPropertyContainer)newValue);
+				return;
+			case UMLRpyPackage.ITABLE_INSTANCE__NAME:
+				setName((String)newValue);
+				return;
+			case UMLRpyPackage.ITABLE_INSTANCE__MODIFIED_TIME_WEAK:
+				getModifiedTimeWeak().clear();
+				getModifiedTimeWeak().addAll((Collection<? extends String>)newValue);
+				return;
+			case UMLRpyPackage.ITABLE_INSTANCE__LAYOUT_HANDLE:
+				setLayoutHandle((IUnit)newValue);
+				return;
+			case UMLRpyPackage.ITABLE_INSTANCE__SCOPE_HANDLES:
+				setScopeHandles((M_pModelObjectType)newValue);
+				return;
+			case UMLRpyPackage.ITABLE_INSTANCE__STEREOTYPES:
+				setStereotypes((IClassifier)newValue);
+				return;
+		}
+		super.eSet(featureID, newValue);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void eUnset(int featureID) {
+		switch (featureID) {
+			case UMLRpyPackage.ITABLE_INSTANCE__ID:
+				setId(ID_EDEFAULT);
+				return;
+			case UMLRpyPackage.ITABLE_INSTANCE__MY_STATE:
+				setMyState(MY_STATE_EDEFAULT);
+				return;
+			case UMLRpyPackage.ITABLE_INSTANCE__PROPERTIES:
+				setProperties((IPropertyContainer)null);
+				return;
+			case UMLRpyPackage.ITABLE_INSTANCE__NAME:
+				setName(NAME_EDEFAULT);
+				return;
+			case UMLRpyPackage.ITABLE_INSTANCE__MODIFIED_TIME_WEAK:
+				getModifiedTimeWeak().clear();
+				return;
+			case UMLRpyPackage.ITABLE_INSTANCE__LAYOUT_HANDLE:
+				setLayoutHandle((IUnit)null);
+				return;
+			case UMLRpyPackage.ITABLE_INSTANCE__SCOPE_HANDLES:
+				setScopeHandles((M_pModelObjectType)null);
+				return;
+			case UMLRpyPackage.ITABLE_INSTANCE__STEREOTYPES:
+				setStereotypes((IClassifier)null);
+				return;
+		}
+		super.eUnset(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public boolean eIsSet(int featureID) {
+		switch (featureID) {
+			case UMLRpyPackage.ITABLE_INSTANCE__ID:
+				return ID_EDEFAULT == null ? id != null : !ID_EDEFAULT.equals(id);
+			case UMLRpyPackage.ITABLE_INSTANCE__MY_STATE:
+				return MY_STATE_EDEFAULT == null ? myState != null : !MY_STATE_EDEFAULT.equals(myState);
+			case UMLRpyPackage.ITABLE_INSTANCE__PROPERTIES:
+				return properties != null;
+			case UMLRpyPackage.ITABLE_INSTANCE__NAME:
+				return NAME_EDEFAULT == null ? name != null : !NAME_EDEFAULT.equals(name);
+			case UMLRpyPackage.ITABLE_INSTANCE__MODIFIED_TIME_WEAK:
+				return modifiedTimeWeak != null && !modifiedTimeWeak.isEmpty();
+			case UMLRpyPackage.ITABLE_INSTANCE__LAYOUT_HANDLE:
+				return layoutHandle != null;
+			case UMLRpyPackage.ITABLE_INSTANCE__SCOPE_HANDLES:
+				return scopeHandles != null;
+			case UMLRpyPackage.ITABLE_INSTANCE__STEREOTYPES:
+				return stereotypes != null;
+		}
+		return super.eIsSet(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String toString() {
+		if (eIsProxy()) return super.toString();
+
+		StringBuffer result = new StringBuffer(super.toString());
+		result.append(" (id: "); //$NON-NLS-1$
+		result.append(id);
+		result.append(", myState: "); //$NON-NLS-1$
+		result.append(myState);
+		result.append(", name: "); //$NON-NLS-1$
+		result.append(name);
+		result.append(", modifiedTimeWeak: "); //$NON-NLS-1$
+		result.append(modifiedTimeWeak);
+		result.append(')');
+		return result.toString();
+	}
+
+} //ITableInstanceImpl
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/ITableLayoutImpl.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/ITableLayoutImpl.java
new file mode 100755
index 0000000..d83fa2f
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/ITableLayoutImpl.java
@@ -0,0 +1,731 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl;
+
+import java.util.Collection;
+
+import org.eclipse.emf.common.notify.Notification;
+import org.eclipse.emf.common.notify.NotificationChain;
+
+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.EDataTypeEList;
+import org.eclipse.emf.ecore.util.EObjectContainmentEList;
+import org.eclipse.emf.ecore.util.InternalEList;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IDescription;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IPropertyContainer;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IStereotype;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITableLayout;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITag;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.TableDataDefinition;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ValueType;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>ITable Layout</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * </p>
+ * <ul>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.ITableLayoutImpl#getModifiedTimeWeak <em>Modified Time Weak</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.ITableLayoutImpl#getId <em>Id</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.ITableLayoutImpl#getMyState <em>My State</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.ITableLayoutImpl#getName <em>Name</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.ITableLayoutImpl#getProperties <em>Properties</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.ITableLayoutImpl#getStereotypes <em>Stereotypes</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.ITableLayoutImpl#getTags <em>Tags</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.ITableLayoutImpl#getTableElementTypes <em>Table Element Types</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.ITableLayoutImpl#getDataColumns <em>Data Columns</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.ITableLayoutImpl#getDescription <em>Description</em>}</li>
+ * </ul>
+ *
+ * @generated
+ */
+public class ITableLayoutImpl extends IUnitImpl implements ITableLayout {
+	/**
+	 * The cached value of the '{@link #getModifiedTimeWeak() <em>Modified Time Weak</em>}' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getModifiedTimeWeak()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<String> modifiedTimeWeak;
+
+	/**
+	 * The default value of the '{@link #getId() <em>Id</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getId()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String ID_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getId() <em>Id</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getId()
+	 * @generated
+	 * @ordered
+	 */
+	protected String id = ID_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getMyState() <em>My State</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getMyState()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String MY_STATE_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getMyState() <em>My State</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getMyState()
+	 * @generated
+	 * @ordered
+	 */
+	protected String myState = MY_STATE_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getName() <em>Name</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getName()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String NAME_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getName() <em>Name</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getName()
+	 * @generated
+	 * @ordered
+	 */
+	protected String name = NAME_EDEFAULT;
+
+	/**
+	 * The cached value of the '{@link #getProperties() <em>Properties</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getProperties()
+	 * @generated
+	 * @ordered
+	 */
+	protected IPropertyContainer properties;
+
+	/**
+	 * The cached value of the '{@link #getStereotypes() <em>Stereotypes</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getStereotypes()
+	 * @generated
+	 * @ordered
+	 */
+	protected IStereotype stereotypes;
+
+	/**
+	 * The cached value of the '{@link #getTags() <em>Tags</em>}' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getTags()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<ITag> tags;
+
+	/**
+	 * The cached value of the '{@link #getTableElementTypes() <em>Table Element Types</em>}' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getTableElementTypes()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<TableDataDefinition> tableElementTypes;
+
+	/**
+	 * The cached value of the '{@link #getDataColumns() <em>Data Columns</em>}' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getDataColumns()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<TableDataDefinition> dataColumns;
+
+	/**
+	 * The cached value of the '{@link #getDescription() <em>Description</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getDescription()
+	 * @generated
+	 * @ordered
+	 */
+	protected IDescription description;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected ITableLayoutImpl() {
+		super();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EClass eStaticClass() {
+		return UMLRpyPackage.eINSTANCE.getITableLayout();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<String> getModifiedTimeWeak() {
+		if (modifiedTimeWeak == null) {
+			modifiedTimeWeak = new EDataTypeEList<String>(String.class, this, UMLRpyPackage.ITABLE_LAYOUT__MODIFIED_TIME_WEAK);
+		}
+		return modifiedTimeWeak;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getId() {
+		return id;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setId(String newId) {
+		String oldId = id;
+		id = newId;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.ITABLE_LAYOUT__ID, oldId, id));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getMyState() {
+		return myState;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setMyState(String newMyState) {
+		String oldMyState = myState;
+		myState = newMyState;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.ITABLE_LAYOUT__MY_STATE, oldMyState, myState));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getName() {
+		return name;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setName(String newName) {
+		String oldName = name;
+		name = newName;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.ITABLE_LAYOUT__NAME, oldName, name));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IPropertyContainer getProperties() {
+		if (properties != null && properties.eIsProxy()) {
+			InternalEObject oldProperties = (InternalEObject)properties;
+			properties = (IPropertyContainer)eResolveProxy(oldProperties);
+			if (properties != oldProperties) {
+				InternalEObject newProperties = (InternalEObject)properties;
+				NotificationChain msgs = oldProperties.eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.ITABLE_LAYOUT__PROPERTIES, null, null);
+				if (newProperties.eInternalContainer() == null) {
+					msgs = newProperties.eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.ITABLE_LAYOUT__PROPERTIES, null, msgs);
+				}
+				if (msgs != null) msgs.dispatch();
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.ITABLE_LAYOUT__PROPERTIES, oldProperties, properties));
+			}
+		}
+		return properties;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IPropertyContainer basicGetProperties() {
+		return properties;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public NotificationChain basicSetProperties(IPropertyContainer newProperties, NotificationChain msgs) {
+		IPropertyContainer oldProperties = properties;
+		properties = newProperties;
+		if (eNotificationRequired()) {
+			ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, UMLRpyPackage.ITABLE_LAYOUT__PROPERTIES, oldProperties, newProperties);
+			if (msgs == null) msgs = notification; else msgs.add(notification);
+		}
+		return msgs;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setProperties(IPropertyContainer newProperties) {
+		if (newProperties != properties) {
+			NotificationChain msgs = null;
+			if (properties != null)
+				msgs = ((InternalEObject)properties).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.ITABLE_LAYOUT__PROPERTIES, null, msgs);
+			if (newProperties != null)
+				msgs = ((InternalEObject)newProperties).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.ITABLE_LAYOUT__PROPERTIES, null, msgs);
+			msgs = basicSetProperties(newProperties, msgs);
+			if (msgs != null) msgs.dispatch();
+		}
+		else if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.ITABLE_LAYOUT__PROPERTIES, newProperties, newProperties));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IStereotype getStereotypes() {
+		if (stereotypes != null && stereotypes.eIsProxy()) {
+			InternalEObject oldStereotypes = (InternalEObject)stereotypes;
+			stereotypes = (IStereotype)eResolveProxy(oldStereotypes);
+			if (stereotypes != oldStereotypes) {
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.ITABLE_LAYOUT__STEREOTYPES, oldStereotypes, stereotypes));
+			}
+		}
+		return stereotypes;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IStereotype basicGetStereotypes() {
+		return stereotypes;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setStereotypes(IStereotype newStereotypes) {
+		IStereotype oldStereotypes = stereotypes;
+		stereotypes = newStereotypes;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.ITABLE_LAYOUT__STEREOTYPES, oldStereotypes, stereotypes));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<ITag> getTags() {
+		if (tags == null) {
+			tags = new EObjectContainmentEList.Resolving<ITag>(ITag.class, this, UMLRpyPackage.ITABLE_LAYOUT__TAGS);
+		}
+		return tags;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<TableDataDefinition> getTableElementTypes() {
+		if (tableElementTypes == null) {
+			tableElementTypes = new EObjectContainmentEList.Resolving<TableDataDefinition>(TableDataDefinition.class, this, UMLRpyPackage.ITABLE_LAYOUT__TABLE_ELEMENT_TYPES);
+		}
+		return tableElementTypes;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<TableDataDefinition> getDataColumns() {
+		if (dataColumns == null) {
+			dataColumns = new EObjectContainmentEList.Resolving<TableDataDefinition>(TableDataDefinition.class, this, UMLRpyPackage.ITABLE_LAYOUT__DATA_COLUMNS);
+		}
+		return dataColumns;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IDescription getDescription() {
+		if (description != null && description.eIsProxy()) {
+			InternalEObject oldDescription = (InternalEObject)description;
+			description = (IDescription)eResolveProxy(oldDescription);
+			if (description != oldDescription) {
+				InternalEObject newDescription = (InternalEObject)description;
+				NotificationChain msgs = oldDescription.eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.ITABLE_LAYOUT__DESCRIPTION, null, null);
+				if (newDescription.eInternalContainer() == null) {
+					msgs = newDescription.eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.ITABLE_LAYOUT__DESCRIPTION, null, msgs);
+				}
+				if (msgs != null) msgs.dispatch();
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.ITABLE_LAYOUT__DESCRIPTION, oldDescription, description));
+			}
+		}
+		return description;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IDescription basicGetDescription() {
+		return description;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public NotificationChain basicSetDescription(IDescription newDescription, NotificationChain msgs) {
+		IDescription oldDescription = description;
+		description = newDescription;
+		if (eNotificationRequired()) {
+			ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, UMLRpyPackage.ITABLE_LAYOUT__DESCRIPTION, oldDescription, newDescription);
+			if (msgs == null) msgs = notification; else msgs.add(notification);
+		}
+		return msgs;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setDescription(IDescription newDescription) {
+		if (newDescription != description) {
+			NotificationChain msgs = null;
+			if (description != null)
+				msgs = ((InternalEObject)description).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.ITABLE_LAYOUT__DESCRIPTION, null, msgs);
+			if (newDescription != null)
+				msgs = ((InternalEObject)newDescription).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.ITABLE_LAYOUT__DESCRIPTION, null, msgs);
+			msgs = basicSetDescription(newDescription, msgs);
+			if (msgs != null) msgs.dispatch();
+		}
+		else if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.ITABLE_LAYOUT__DESCRIPTION, newDescription, newDescription));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
+		switch (featureID) {
+			case UMLRpyPackage.ITABLE_LAYOUT__PROPERTIES:
+				return basicSetProperties(null, msgs);
+			case UMLRpyPackage.ITABLE_LAYOUT__TAGS:
+				return ((InternalEList<?>)getTags()).basicRemove(otherEnd, msgs);
+			case UMLRpyPackage.ITABLE_LAYOUT__TABLE_ELEMENT_TYPES:
+				return ((InternalEList<?>)getTableElementTypes()).basicRemove(otherEnd, msgs);
+			case UMLRpyPackage.ITABLE_LAYOUT__DATA_COLUMNS:
+				return ((InternalEList<?>)getDataColumns()).basicRemove(otherEnd, msgs);
+			case UMLRpyPackage.ITABLE_LAYOUT__DESCRIPTION:
+				return basicSetDescription(null, msgs);
+		}
+		return super.eInverseRemove(otherEnd, featureID, msgs);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object eGet(int featureID, boolean resolve, boolean coreType) {
+		switch (featureID) {
+			case UMLRpyPackage.ITABLE_LAYOUT__MODIFIED_TIME_WEAK:
+				return getModifiedTimeWeak();
+			case UMLRpyPackage.ITABLE_LAYOUT__ID:
+				return getId();
+			case UMLRpyPackage.ITABLE_LAYOUT__MY_STATE:
+				return getMyState();
+			case UMLRpyPackage.ITABLE_LAYOUT__NAME:
+				return getName();
+			case UMLRpyPackage.ITABLE_LAYOUT__PROPERTIES:
+				if (resolve) return getProperties();
+				return basicGetProperties();
+			case UMLRpyPackage.ITABLE_LAYOUT__STEREOTYPES:
+				if (resolve) return getStereotypes();
+				return basicGetStereotypes();
+			case UMLRpyPackage.ITABLE_LAYOUT__TAGS:
+				return getTags();
+			case UMLRpyPackage.ITABLE_LAYOUT__TABLE_ELEMENT_TYPES:
+				return getTableElementTypes();
+			case UMLRpyPackage.ITABLE_LAYOUT__DATA_COLUMNS:
+				return getDataColumns();
+			case UMLRpyPackage.ITABLE_LAYOUT__DESCRIPTION:
+				if (resolve) return getDescription();
+				return basicGetDescription();
+		}
+		return super.eGet(featureID, resolve, coreType);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@SuppressWarnings("unchecked")
+	@Override
+	public void eSet(int featureID, Object newValue) {
+		switch (featureID) {
+			case UMLRpyPackage.ITABLE_LAYOUT__MODIFIED_TIME_WEAK:
+				getModifiedTimeWeak().clear();
+				getModifiedTimeWeak().addAll((Collection<? extends String>)newValue);
+				return;
+			case UMLRpyPackage.ITABLE_LAYOUT__ID:
+				setId((String)newValue);
+				return;
+			case UMLRpyPackage.ITABLE_LAYOUT__MY_STATE:
+				setMyState((String)newValue);
+				return;
+			case UMLRpyPackage.ITABLE_LAYOUT__NAME:
+				setName((String)newValue);
+				return;
+			case UMLRpyPackage.ITABLE_LAYOUT__PROPERTIES:
+				setProperties((IPropertyContainer)newValue);
+				return;
+			case UMLRpyPackage.ITABLE_LAYOUT__STEREOTYPES:
+				setStereotypes((IStereotype)newValue);
+				return;
+			case UMLRpyPackage.ITABLE_LAYOUT__TAGS:
+				getTags().clear();
+				getTags().addAll((Collection<? extends ITag>)newValue);
+				return;
+			case UMLRpyPackage.ITABLE_LAYOUT__TABLE_ELEMENT_TYPES:
+				getTableElementTypes().clear();
+				getTableElementTypes().addAll((Collection<? extends TableDataDefinition>)newValue);
+				return;
+			case UMLRpyPackage.ITABLE_LAYOUT__DATA_COLUMNS:
+				getDataColumns().clear();
+				getDataColumns().addAll((Collection<? extends TableDataDefinition>)newValue);
+				return;
+			case UMLRpyPackage.ITABLE_LAYOUT__DESCRIPTION:
+				setDescription((IDescription)newValue);
+				return;
+		}
+		super.eSet(featureID, newValue);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void eUnset(int featureID) {
+		switch (featureID) {
+			case UMLRpyPackage.ITABLE_LAYOUT__MODIFIED_TIME_WEAK:
+				getModifiedTimeWeak().clear();
+				return;
+			case UMLRpyPackage.ITABLE_LAYOUT__ID:
+				setId(ID_EDEFAULT);
+				return;
+			case UMLRpyPackage.ITABLE_LAYOUT__MY_STATE:
+				setMyState(MY_STATE_EDEFAULT);
+				return;
+			case UMLRpyPackage.ITABLE_LAYOUT__NAME:
+				setName(NAME_EDEFAULT);
+				return;
+			case UMLRpyPackage.ITABLE_LAYOUT__PROPERTIES:
+				setProperties((IPropertyContainer)null);
+				return;
+			case UMLRpyPackage.ITABLE_LAYOUT__STEREOTYPES:
+				setStereotypes((IStereotype)null);
+				return;
+			case UMLRpyPackage.ITABLE_LAYOUT__TAGS:
+				getTags().clear();
+				return;
+			case UMLRpyPackage.ITABLE_LAYOUT__TABLE_ELEMENT_TYPES:
+				getTableElementTypes().clear();
+				return;
+			case UMLRpyPackage.ITABLE_LAYOUT__DATA_COLUMNS:
+				getDataColumns().clear();
+				return;
+			case UMLRpyPackage.ITABLE_LAYOUT__DESCRIPTION:
+				setDescription((IDescription)null);
+				return;
+		}
+		super.eUnset(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public boolean eIsSet(int featureID) {
+		switch (featureID) {
+			case UMLRpyPackage.ITABLE_LAYOUT__MODIFIED_TIME_WEAK:
+				return modifiedTimeWeak != null && !modifiedTimeWeak.isEmpty();
+			case UMLRpyPackage.ITABLE_LAYOUT__ID:
+				return ID_EDEFAULT == null ? id != null : !ID_EDEFAULT.equals(id);
+			case UMLRpyPackage.ITABLE_LAYOUT__MY_STATE:
+				return MY_STATE_EDEFAULT == null ? myState != null : !MY_STATE_EDEFAULT.equals(myState);
+			case UMLRpyPackage.ITABLE_LAYOUT__NAME:
+				return NAME_EDEFAULT == null ? name != null : !NAME_EDEFAULT.equals(name);
+			case UMLRpyPackage.ITABLE_LAYOUT__PROPERTIES:
+				return properties != null;
+			case UMLRpyPackage.ITABLE_LAYOUT__STEREOTYPES:
+				return stereotypes != null;
+			case UMLRpyPackage.ITABLE_LAYOUT__TAGS:
+				return tags != null && !tags.isEmpty();
+			case UMLRpyPackage.ITABLE_LAYOUT__TABLE_ELEMENT_TYPES:
+				return tableElementTypes != null && !tableElementTypes.isEmpty();
+			case UMLRpyPackage.ITABLE_LAYOUT__DATA_COLUMNS:
+				return dataColumns != null && !dataColumns.isEmpty();
+			case UMLRpyPackage.ITABLE_LAYOUT__DESCRIPTION:
+				return description != null;
+		}
+		return super.eIsSet(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public int eBaseStructuralFeatureID(int derivedFeatureID, Class<?> baseClass) {
+		if (baseClass == ValueType.class) {
+			switch (derivedFeatureID) {
+				case UMLRpyPackage.ITABLE_LAYOUT__MODIFIED_TIME_WEAK: return UMLRpyPackage.VALUE_TYPE__MODIFIED_TIME_WEAK;
+				case UMLRpyPackage.ITABLE_LAYOUT__ID: return UMLRpyPackage.VALUE_TYPE__ID;
+				case UMLRpyPackage.ITABLE_LAYOUT__MY_STATE: return UMLRpyPackage.VALUE_TYPE__MY_STATE;
+				case UMLRpyPackage.ITABLE_LAYOUT__NAME: return UMLRpyPackage.VALUE_TYPE__NAME;
+				default: return -1;
+			}
+		}
+		return super.eBaseStructuralFeatureID(derivedFeatureID, baseClass);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public int eDerivedStructuralFeatureID(int baseFeatureID, Class<?> baseClass) {
+		if (baseClass == ValueType.class) {
+			switch (baseFeatureID) {
+				case UMLRpyPackage.VALUE_TYPE__MODIFIED_TIME_WEAK: return UMLRpyPackage.ITABLE_LAYOUT__MODIFIED_TIME_WEAK;
+				case UMLRpyPackage.VALUE_TYPE__ID: return UMLRpyPackage.ITABLE_LAYOUT__ID;
+				case UMLRpyPackage.VALUE_TYPE__MY_STATE: return UMLRpyPackage.ITABLE_LAYOUT__MY_STATE;
+				case UMLRpyPackage.VALUE_TYPE__NAME: return UMLRpyPackage.ITABLE_LAYOUT__NAME;
+				default: return -1;
+			}
+		}
+		return super.eDerivedStructuralFeatureID(baseFeatureID, baseClass);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String toString() {
+		if (eIsProxy()) return super.toString();
+
+		StringBuffer result = new StringBuffer(super.toString());
+		result.append(" (modifiedTimeWeak: "); //$NON-NLS-1$
+		result.append(modifiedTimeWeak);
+		result.append(", id: "); //$NON-NLS-1$
+		result.append(id);
+		result.append(", myState: "); //$NON-NLS-1$
+		result.append(myState);
+		result.append(", name: "); //$NON-NLS-1$
+		result.append(name);
+		result.append(')');
+		return result.toString();
+	}
+
+} //ITableLayoutImpl
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/ITableViewImpl.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/ITableViewImpl.java
new file mode 100755
index 0000000..16932ed
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/ITableViewImpl.java
@@ -0,0 +1,47 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl;
+
+import org.eclipse.emf.ecore.EClass;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITableView;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>ITable View</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+public class ITableViewImpl extends IUnitImpl implements ITableView {
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected ITableViewImpl() {
+		super();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EClass eStaticClass() {
+		return UMLRpyPackage.eINSTANCE.getITableView();
+	}
+
+} //ITableViewImpl
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/ITagImpl.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/ITagImpl.java
new file mode 100755
index 0000000..05a5499
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/ITagImpl.java
@@ -0,0 +1,968 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl;
+
+import java.util.Collection;
+
+import org.eclipse.emf.common.notify.Notification;
+import org.eclipse.emf.common.notify.NotificationChain;
+
+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.EDataTypeEList;
+import org.eclipse.emf.ecore.util.EObjectContainmentEList;
+import org.eclipse.emf.ecore.util.InternalEList;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IDescription;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMHyperLink;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IModelElement;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IPropertyContainer;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITag;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IUnit;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>ITag</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * </p>
+ * <ul>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.ITagImpl#getId <em>Id</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.ITagImpl#getName <em>Name</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.ITagImpl#getModifiedTimeWeak <em>Modified Time Weak</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.ITagImpl#getValueSpecifications <em>Value Specifications</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.ITagImpl#getTypeOf <em>Type Of</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.ITagImpl#getMyState <em>My State</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.ITagImpl#getMultiplicity <em>Multiplicity</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.ITagImpl#getProperties <em>Properties</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.ITagImpl#getDescription <em>Description</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.ITagImpl#getHyperLinks <em>Hyper Links</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.ITagImpl#getBase <em>Base</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.ITagImpl#getMetaClass <em>Meta Class</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.ITagImpl#getDefaultValue <em>Default Value</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.ITagImpl#getCodeUpdateCGTime <em>Code Update CG Time</em>}</li>
+ * </ul>
+ *
+ * @generated
+ */
+public class ITagImpl extends IVariableImpl implements ITag {
+	/**
+	 * The default value of the '{@link #getId() <em>Id</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getId()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String ID_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getId() <em>Id</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getId()
+	 * @generated
+	 * @ordered
+	 */
+	protected String id = ID_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getName() <em>Name</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getName()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String NAME_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getName() <em>Name</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getName()
+	 * @generated
+	 * @ordered
+	 */
+	protected String name = NAME_EDEFAULT;
+
+	/**
+	 * The cached value of the '{@link #getModifiedTimeWeak() <em>Modified Time Weak</em>}' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getModifiedTimeWeak()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<String> modifiedTimeWeak;
+
+	/**
+	 * The cached value of the '{@link #getValueSpecifications() <em>Value Specifications</em>}' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getValueSpecifications()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<IModelElement> valueSpecifications;
+
+	/**
+	 * The cached value of the '{@link #getTypeOf() <em>Type Of</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getTypeOf()
+	 * @generated
+	 * @ordered
+	 */
+	protected IUnit typeOf;
+
+	/**
+	 * The default value of the '{@link #getMyState() <em>My State</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getMyState()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String MY_STATE_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getMyState() <em>My State</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getMyState()
+	 * @generated
+	 * @ordered
+	 */
+	protected String myState = MY_STATE_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getMultiplicity() <em>Multiplicity</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getMultiplicity()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String MULTIPLICITY_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getMultiplicity() <em>Multiplicity</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getMultiplicity()
+	 * @generated
+	 * @ordered
+	 */
+	protected String multiplicity = MULTIPLICITY_EDEFAULT;
+
+	/**
+	 * The cached value of the '{@link #getProperties() <em>Properties</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getProperties()
+	 * @generated
+	 * @ordered
+	 */
+	protected IPropertyContainer properties;
+
+	/**
+	 * The cached value of the '{@link #getDescription() <em>Description</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getDescription()
+	 * @generated
+	 * @ordered
+	 */
+	protected IDescription description;
+
+	/**
+	 * The cached value of the '{@link #getHyperLinks() <em>Hyper Links</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getHyperLinks()
+	 * @generated
+	 * @ordered
+	 */
+	protected IMHyperLink hyperLinks;
+
+	/**
+	 * The cached value of the '{@link #getBase() <em>Base</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getBase()
+	 * @generated
+	 * @ordered
+	 */
+	protected IUnit base;
+
+	/**
+	 * The default value of the '{@link #getMetaClass() <em>Meta Class</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getMetaClass()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String META_CLASS_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getMetaClass() <em>Meta Class</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getMetaClass()
+	 * @generated
+	 * @ordered
+	 */
+	protected String metaClass = META_CLASS_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getDefaultValue() <em>Default Value</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getDefaultValue()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String DEFAULT_VALUE_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getDefaultValue() <em>Default Value</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getDefaultValue()
+	 * @generated
+	 * @ordered
+	 */
+	protected String defaultValue = DEFAULT_VALUE_EDEFAULT;
+
+	/**
+	 * The cached value of the '{@link #getCodeUpdateCGTime() <em>Code Update CG Time</em>}' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getCodeUpdateCGTime()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<String> codeUpdateCGTime;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected ITagImpl() {
+		super();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EClass eStaticClass() {
+		return UMLRpyPackage.eINSTANCE.getITag();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getId() {
+		return id;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setId(String newId) {
+		String oldId = id;
+		id = newId;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.ITAG__ID, oldId, id));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getName() {
+		return name;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setName(String newName) {
+		String oldName = name;
+		name = newName;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.ITAG__NAME, oldName, name));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<String> getModifiedTimeWeak() {
+		if (modifiedTimeWeak == null) {
+			modifiedTimeWeak = new EDataTypeEList<String>(String.class, this, UMLRpyPackage.ITAG__MODIFIED_TIME_WEAK);
+		}
+		return modifiedTimeWeak;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<IModelElement> getValueSpecifications() {
+		if (valueSpecifications == null) {
+			valueSpecifications = new EObjectContainmentEList.Resolving<IModelElement>(IModelElement.class, this, UMLRpyPackage.ITAG__VALUE_SPECIFICATIONS);
+		}
+		return valueSpecifications;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IUnit getTypeOf() {
+		if (typeOf != null && typeOf.eIsProxy()) {
+			InternalEObject oldTypeOf = (InternalEObject)typeOf;
+			typeOf = (IUnit)eResolveProxy(oldTypeOf);
+			if (typeOf != oldTypeOf) {
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.ITAG__TYPE_OF, oldTypeOf, typeOf));
+			}
+		}
+		return typeOf;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IUnit basicGetTypeOf() {
+		return typeOf;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setTypeOf(IUnit newTypeOf) {
+		IUnit oldTypeOf = typeOf;
+		typeOf = newTypeOf;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.ITAG__TYPE_OF, oldTypeOf, typeOf));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getMyState() {
+		return myState;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setMyState(String newMyState) {
+		String oldMyState = myState;
+		myState = newMyState;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.ITAG__MY_STATE, oldMyState, myState));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getMultiplicity() {
+		return multiplicity;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setMultiplicity(String newMultiplicity) {
+		String oldMultiplicity = multiplicity;
+		multiplicity = newMultiplicity;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.ITAG__MULTIPLICITY, oldMultiplicity, multiplicity));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IPropertyContainer getProperties() {
+		if (properties != null && properties.eIsProxy()) {
+			InternalEObject oldProperties = (InternalEObject)properties;
+			properties = (IPropertyContainer)eResolveProxy(oldProperties);
+			if (properties != oldProperties) {
+				InternalEObject newProperties = (InternalEObject)properties;
+				NotificationChain msgs = oldProperties.eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.ITAG__PROPERTIES, null, null);
+				if (newProperties.eInternalContainer() == null) {
+					msgs = newProperties.eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.ITAG__PROPERTIES, null, msgs);
+				}
+				if (msgs != null) msgs.dispatch();
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.ITAG__PROPERTIES, oldProperties, properties));
+			}
+		}
+		return properties;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IPropertyContainer basicGetProperties() {
+		return properties;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public NotificationChain basicSetProperties(IPropertyContainer newProperties, NotificationChain msgs) {
+		IPropertyContainer oldProperties = properties;
+		properties = newProperties;
+		if (eNotificationRequired()) {
+			ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, UMLRpyPackage.ITAG__PROPERTIES, oldProperties, newProperties);
+			if (msgs == null) msgs = notification; else msgs.add(notification);
+		}
+		return msgs;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setProperties(IPropertyContainer newProperties) {
+		if (newProperties != properties) {
+			NotificationChain msgs = null;
+			if (properties != null)
+				msgs = ((InternalEObject)properties).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.ITAG__PROPERTIES, null, msgs);
+			if (newProperties != null)
+				msgs = ((InternalEObject)newProperties).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.ITAG__PROPERTIES, null, msgs);
+			msgs = basicSetProperties(newProperties, msgs);
+			if (msgs != null) msgs.dispatch();
+		}
+		else if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.ITAG__PROPERTIES, newProperties, newProperties));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IDescription getDescription() {
+		if (description != null && description.eIsProxy()) {
+			InternalEObject oldDescription = (InternalEObject)description;
+			description = (IDescription)eResolveProxy(oldDescription);
+			if (description != oldDescription) {
+				InternalEObject newDescription = (InternalEObject)description;
+				NotificationChain msgs = oldDescription.eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.ITAG__DESCRIPTION, null, null);
+				if (newDescription.eInternalContainer() == null) {
+					msgs = newDescription.eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.ITAG__DESCRIPTION, null, msgs);
+				}
+				if (msgs != null) msgs.dispatch();
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.ITAG__DESCRIPTION, oldDescription, description));
+			}
+		}
+		return description;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IDescription basicGetDescription() {
+		return description;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public NotificationChain basicSetDescription(IDescription newDescription, NotificationChain msgs) {
+		IDescription oldDescription = description;
+		description = newDescription;
+		if (eNotificationRequired()) {
+			ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, UMLRpyPackage.ITAG__DESCRIPTION, oldDescription, newDescription);
+			if (msgs == null) msgs = notification; else msgs.add(notification);
+		}
+		return msgs;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setDescription(IDescription newDescription) {
+		if (newDescription != description) {
+			NotificationChain msgs = null;
+			if (description != null)
+				msgs = ((InternalEObject)description).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.ITAG__DESCRIPTION, null, msgs);
+			if (newDescription != null)
+				msgs = ((InternalEObject)newDescription).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.ITAG__DESCRIPTION, null, msgs);
+			msgs = basicSetDescription(newDescription, msgs);
+			if (msgs != null) msgs.dispatch();
+		}
+		else if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.ITAG__DESCRIPTION, newDescription, newDescription));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IMHyperLink getHyperLinks() {
+		if (hyperLinks != null && hyperLinks.eIsProxy()) {
+			InternalEObject oldHyperLinks = (InternalEObject)hyperLinks;
+			hyperLinks = (IMHyperLink)eResolveProxy(oldHyperLinks);
+			if (hyperLinks != oldHyperLinks) {
+				InternalEObject newHyperLinks = (InternalEObject)hyperLinks;
+				NotificationChain msgs = oldHyperLinks.eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.ITAG__HYPER_LINKS, null, null);
+				if (newHyperLinks.eInternalContainer() == null) {
+					msgs = newHyperLinks.eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.ITAG__HYPER_LINKS, null, msgs);
+				}
+				if (msgs != null) msgs.dispatch();
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.ITAG__HYPER_LINKS, oldHyperLinks, hyperLinks));
+			}
+		}
+		return hyperLinks;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IMHyperLink basicGetHyperLinks() {
+		return hyperLinks;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public NotificationChain basicSetHyperLinks(IMHyperLink newHyperLinks, NotificationChain msgs) {
+		IMHyperLink oldHyperLinks = hyperLinks;
+		hyperLinks = newHyperLinks;
+		if (eNotificationRequired()) {
+			ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, UMLRpyPackage.ITAG__HYPER_LINKS, oldHyperLinks, newHyperLinks);
+			if (msgs == null) msgs = notification; else msgs.add(notification);
+		}
+		return msgs;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setHyperLinks(IMHyperLink newHyperLinks) {
+		if (newHyperLinks != hyperLinks) {
+			NotificationChain msgs = null;
+			if (hyperLinks != null)
+				msgs = ((InternalEObject)hyperLinks).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.ITAG__HYPER_LINKS, null, msgs);
+			if (newHyperLinks != null)
+				msgs = ((InternalEObject)newHyperLinks).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.ITAG__HYPER_LINKS, null, msgs);
+			msgs = basicSetHyperLinks(newHyperLinks, msgs);
+			if (msgs != null) msgs.dispatch();
+		}
+		else if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.ITAG__HYPER_LINKS, newHyperLinks, newHyperLinks));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IUnit getBase() {
+		if (base != null && base.eIsProxy()) {
+			InternalEObject oldBase = (InternalEObject)base;
+			base = (IUnit)eResolveProxy(oldBase);
+			if (base != oldBase) {
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.ITAG__BASE, oldBase, base));
+			}
+		}
+		return base;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IUnit basicGetBase() {
+		return base;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setBase(IUnit newBase) {
+		IUnit oldBase = base;
+		base = newBase;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.ITAG__BASE, oldBase, base));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getMetaClass() {
+		return metaClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setMetaClass(String newMetaClass) {
+		String oldMetaClass = metaClass;
+		metaClass = newMetaClass;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.ITAG__META_CLASS, oldMetaClass, metaClass));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getDefaultValue() {
+		return defaultValue;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setDefaultValue(String newDefaultValue) {
+		String oldDefaultValue = defaultValue;
+		defaultValue = newDefaultValue;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.ITAG__DEFAULT_VALUE, oldDefaultValue, defaultValue));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<String> getCodeUpdateCGTime() {
+		if (codeUpdateCGTime == null) {
+			codeUpdateCGTime = new EDataTypeEList<String>(String.class, this, UMLRpyPackage.ITAG__CODE_UPDATE_CG_TIME);
+		}
+		return codeUpdateCGTime;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
+		switch (featureID) {
+			case UMLRpyPackage.ITAG__VALUE_SPECIFICATIONS:
+				return ((InternalEList<?>)getValueSpecifications()).basicRemove(otherEnd, msgs);
+			case UMLRpyPackage.ITAG__PROPERTIES:
+				return basicSetProperties(null, msgs);
+			case UMLRpyPackage.ITAG__DESCRIPTION:
+				return basicSetDescription(null, msgs);
+			case UMLRpyPackage.ITAG__HYPER_LINKS:
+				return basicSetHyperLinks(null, msgs);
+		}
+		return super.eInverseRemove(otherEnd, featureID, msgs);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object eGet(int featureID, boolean resolve, boolean coreType) {
+		switch (featureID) {
+			case UMLRpyPackage.ITAG__ID:
+				return getId();
+			case UMLRpyPackage.ITAG__NAME:
+				return getName();
+			case UMLRpyPackage.ITAG__MODIFIED_TIME_WEAK:
+				return getModifiedTimeWeak();
+			case UMLRpyPackage.ITAG__VALUE_SPECIFICATIONS:
+				return getValueSpecifications();
+			case UMLRpyPackage.ITAG__TYPE_OF:
+				if (resolve) return getTypeOf();
+				return basicGetTypeOf();
+			case UMLRpyPackage.ITAG__MY_STATE:
+				return getMyState();
+			case UMLRpyPackage.ITAG__MULTIPLICITY:
+				return getMultiplicity();
+			case UMLRpyPackage.ITAG__PROPERTIES:
+				if (resolve) return getProperties();
+				return basicGetProperties();
+			case UMLRpyPackage.ITAG__DESCRIPTION:
+				if (resolve) return getDescription();
+				return basicGetDescription();
+			case UMLRpyPackage.ITAG__HYPER_LINKS:
+				if (resolve) return getHyperLinks();
+				return basicGetHyperLinks();
+			case UMLRpyPackage.ITAG__BASE:
+				if (resolve) return getBase();
+				return basicGetBase();
+			case UMLRpyPackage.ITAG__META_CLASS:
+				return getMetaClass();
+			case UMLRpyPackage.ITAG__DEFAULT_VALUE:
+				return getDefaultValue();
+			case UMLRpyPackage.ITAG__CODE_UPDATE_CG_TIME:
+				return getCodeUpdateCGTime();
+		}
+		return super.eGet(featureID, resolve, coreType);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@SuppressWarnings("unchecked")
+	@Override
+	public void eSet(int featureID, Object newValue) {
+		switch (featureID) {
+			case UMLRpyPackage.ITAG__ID:
+				setId((String)newValue);
+				return;
+			case UMLRpyPackage.ITAG__NAME:
+				setName((String)newValue);
+				return;
+			case UMLRpyPackage.ITAG__MODIFIED_TIME_WEAK:
+				getModifiedTimeWeak().clear();
+				getModifiedTimeWeak().addAll((Collection<? extends String>)newValue);
+				return;
+			case UMLRpyPackage.ITAG__VALUE_SPECIFICATIONS:
+				getValueSpecifications().clear();
+				getValueSpecifications().addAll((Collection<? extends IModelElement>)newValue);
+				return;
+			case UMLRpyPackage.ITAG__TYPE_OF:
+				setTypeOf((IUnit)newValue);
+				return;
+			case UMLRpyPackage.ITAG__MY_STATE:
+				setMyState((String)newValue);
+				return;
+			case UMLRpyPackage.ITAG__MULTIPLICITY:
+				setMultiplicity((String)newValue);
+				return;
+			case UMLRpyPackage.ITAG__PROPERTIES:
+				setProperties((IPropertyContainer)newValue);
+				return;
+			case UMLRpyPackage.ITAG__DESCRIPTION:
+				setDescription((IDescription)newValue);
+				return;
+			case UMLRpyPackage.ITAG__HYPER_LINKS:
+				setHyperLinks((IMHyperLink)newValue);
+				return;
+			case UMLRpyPackage.ITAG__BASE:
+				setBase((IUnit)newValue);
+				return;
+			case UMLRpyPackage.ITAG__META_CLASS:
+				setMetaClass((String)newValue);
+				return;
+			case UMLRpyPackage.ITAG__DEFAULT_VALUE:
+				setDefaultValue((String)newValue);
+				return;
+			case UMLRpyPackage.ITAG__CODE_UPDATE_CG_TIME:
+				getCodeUpdateCGTime().clear();
+				getCodeUpdateCGTime().addAll((Collection<? extends String>)newValue);
+				return;
+		}
+		super.eSet(featureID, newValue);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void eUnset(int featureID) {
+		switch (featureID) {
+			case UMLRpyPackage.ITAG__ID:
+				setId(ID_EDEFAULT);
+				return;
+			case UMLRpyPackage.ITAG__NAME:
+				setName(NAME_EDEFAULT);
+				return;
+			case UMLRpyPackage.ITAG__MODIFIED_TIME_WEAK:
+				getModifiedTimeWeak().clear();
+				return;
+			case UMLRpyPackage.ITAG__VALUE_SPECIFICATIONS:
+				getValueSpecifications().clear();
+				return;
+			case UMLRpyPackage.ITAG__TYPE_OF:
+				setTypeOf((IUnit)null);
+				return;
+			case UMLRpyPackage.ITAG__MY_STATE:
+				setMyState(MY_STATE_EDEFAULT);
+				return;
+			case UMLRpyPackage.ITAG__MULTIPLICITY:
+				setMultiplicity(MULTIPLICITY_EDEFAULT);
+				return;
+			case UMLRpyPackage.ITAG__PROPERTIES:
+				setProperties((IPropertyContainer)null);
+				return;
+			case UMLRpyPackage.ITAG__DESCRIPTION:
+				setDescription((IDescription)null);
+				return;
+			case UMLRpyPackage.ITAG__HYPER_LINKS:
+				setHyperLinks((IMHyperLink)null);
+				return;
+			case UMLRpyPackage.ITAG__BASE:
+				setBase((IUnit)null);
+				return;
+			case UMLRpyPackage.ITAG__META_CLASS:
+				setMetaClass(META_CLASS_EDEFAULT);
+				return;
+			case UMLRpyPackage.ITAG__DEFAULT_VALUE:
+				setDefaultValue(DEFAULT_VALUE_EDEFAULT);
+				return;
+			case UMLRpyPackage.ITAG__CODE_UPDATE_CG_TIME:
+				getCodeUpdateCGTime().clear();
+				return;
+		}
+		super.eUnset(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public boolean eIsSet(int featureID) {
+		switch (featureID) {
+			case UMLRpyPackage.ITAG__ID:
+				return ID_EDEFAULT == null ? id != null : !ID_EDEFAULT.equals(id);
+			case UMLRpyPackage.ITAG__NAME:
+				return NAME_EDEFAULT == null ? name != null : !NAME_EDEFAULT.equals(name);
+			case UMLRpyPackage.ITAG__MODIFIED_TIME_WEAK:
+				return modifiedTimeWeak != null && !modifiedTimeWeak.isEmpty();
+			case UMLRpyPackage.ITAG__VALUE_SPECIFICATIONS:
+				return valueSpecifications != null && !valueSpecifications.isEmpty();
+			case UMLRpyPackage.ITAG__TYPE_OF:
+				return typeOf != null;
+			case UMLRpyPackage.ITAG__MY_STATE:
+				return MY_STATE_EDEFAULT == null ? myState != null : !MY_STATE_EDEFAULT.equals(myState);
+			case UMLRpyPackage.ITAG__MULTIPLICITY:
+				return MULTIPLICITY_EDEFAULT == null ? multiplicity != null : !MULTIPLICITY_EDEFAULT.equals(multiplicity);
+			case UMLRpyPackage.ITAG__PROPERTIES:
+				return properties != null;
+			case UMLRpyPackage.ITAG__DESCRIPTION:
+				return description != null;
+			case UMLRpyPackage.ITAG__HYPER_LINKS:
+				return hyperLinks != null;
+			case UMLRpyPackage.ITAG__BASE:
+				return base != null;
+			case UMLRpyPackage.ITAG__META_CLASS:
+				return META_CLASS_EDEFAULT == null ? metaClass != null : !META_CLASS_EDEFAULT.equals(metaClass);
+			case UMLRpyPackage.ITAG__DEFAULT_VALUE:
+				return DEFAULT_VALUE_EDEFAULT == null ? defaultValue != null : !DEFAULT_VALUE_EDEFAULT.equals(defaultValue);
+			case UMLRpyPackage.ITAG__CODE_UPDATE_CG_TIME:
+				return codeUpdateCGTime != null && !codeUpdateCGTime.isEmpty();
+		}
+		return super.eIsSet(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String toString() {
+		if (eIsProxy()) return super.toString();
+
+		StringBuffer result = new StringBuffer(super.toString());
+		result.append(" (id: "); //$NON-NLS-1$
+		result.append(id);
+		result.append(", name: "); //$NON-NLS-1$
+		result.append(name);
+		result.append(", modifiedTimeWeak: "); //$NON-NLS-1$
+		result.append(modifiedTimeWeak);
+		result.append(", myState: "); //$NON-NLS-1$
+		result.append(myState);
+		result.append(", multiplicity: "); //$NON-NLS-1$
+		result.append(multiplicity);
+		result.append(", metaClass: "); //$NON-NLS-1$
+		result.append(metaClass);
+		result.append(", defaultValue: "); //$NON-NLS-1$
+		result.append(defaultValue);
+		result.append(", codeUpdateCGTime: "); //$NON-NLS-1$
+		result.append(codeUpdateCGTime);
+		result.append(')');
+		return result.toString();
+	}
+
+} //ITagImpl
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/ITemplateInstImpl.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/ITemplateInstImpl.java
new file mode 100755
index 0000000..d37a4af
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/ITemplateInstImpl.java
@@ -0,0 +1,393 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl;
+
+import org.eclipse.emf.common.notify.Notification;
+import org.eclipse.emf.common.notify.NotificationChain;
+
+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.papyrus.interoperability.rpy.rpymetamodel.IClass;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITemplateInst;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITemplateInstParam;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>ITemplate Inst</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * </p>
+ * <ul>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.ITemplateInstImpl#getId <em>Id</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.ITemplateInstImpl#getModifiedTimeWeak <em>Modified Time Weak</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.ITemplateInstImpl#getTemplateInstParams <em>Template Inst Params</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.ITemplateInstImpl#getOfTemplate <em>Of Template</em>}</li>
+ * </ul>
+ *
+ * @generated
+ */
+public class ITemplateInstImpl extends MinimalEObjectImpl.Container implements ITemplateInst {
+	/**
+	 * The default value of the '{@link #getId() <em>Id</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getId()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String ID_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getId() <em>Id</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getId()
+	 * @generated
+	 * @ordered
+	 */
+	protected String id = ID_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getModifiedTimeWeak() <em>Modified Time Weak</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getModifiedTimeWeak()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String MODIFIED_TIME_WEAK_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getModifiedTimeWeak() <em>Modified Time Weak</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getModifiedTimeWeak()
+	 * @generated
+	 * @ordered
+	 */
+	protected String modifiedTimeWeak = MODIFIED_TIME_WEAK_EDEFAULT;
+
+	/**
+	 * The cached value of the '{@link #getTemplateInstParams() <em>Template Inst Params</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getTemplateInstParams()
+	 * @generated
+	 * @ordered
+	 */
+	protected ITemplateInstParam templateInstParams;
+
+	/**
+	 * The cached value of the '{@link #getOfTemplate() <em>Of Template</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getOfTemplate()
+	 * @generated
+	 * @ordered
+	 */
+	protected IClass ofTemplate;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected ITemplateInstImpl() {
+		super();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EClass eStaticClass() {
+		return UMLRpyPackage.eINSTANCE.getITemplateInst();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getId() {
+		return id;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setId(String newId) {
+		String oldId = id;
+		id = newId;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.ITEMPLATE_INST__ID, oldId, id));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getModifiedTimeWeak() {
+		return modifiedTimeWeak;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setModifiedTimeWeak(String newModifiedTimeWeak) {
+		String oldModifiedTimeWeak = modifiedTimeWeak;
+		modifiedTimeWeak = newModifiedTimeWeak;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.ITEMPLATE_INST__MODIFIED_TIME_WEAK, oldModifiedTimeWeak, modifiedTimeWeak));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public ITemplateInstParam getTemplateInstParams() {
+		if (templateInstParams != null && templateInstParams.eIsProxy()) {
+			InternalEObject oldTemplateInstParams = (InternalEObject)templateInstParams;
+			templateInstParams = (ITemplateInstParam)eResolveProxy(oldTemplateInstParams);
+			if (templateInstParams != oldTemplateInstParams) {
+				InternalEObject newTemplateInstParams = (InternalEObject)templateInstParams;
+				NotificationChain msgs = oldTemplateInstParams.eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.ITEMPLATE_INST__TEMPLATE_INST_PARAMS, null, null);
+				if (newTemplateInstParams.eInternalContainer() == null) {
+					msgs = newTemplateInstParams.eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.ITEMPLATE_INST__TEMPLATE_INST_PARAMS, null, msgs);
+				}
+				if (msgs != null) msgs.dispatch();
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.ITEMPLATE_INST__TEMPLATE_INST_PARAMS, oldTemplateInstParams, templateInstParams));
+			}
+		}
+		return templateInstParams;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public ITemplateInstParam basicGetTemplateInstParams() {
+		return templateInstParams;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public NotificationChain basicSetTemplateInstParams(ITemplateInstParam newTemplateInstParams, NotificationChain msgs) {
+		ITemplateInstParam oldTemplateInstParams = templateInstParams;
+		templateInstParams = newTemplateInstParams;
+		if (eNotificationRequired()) {
+			ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, UMLRpyPackage.ITEMPLATE_INST__TEMPLATE_INST_PARAMS, oldTemplateInstParams, newTemplateInstParams);
+			if (msgs == null) msgs = notification; else msgs.add(notification);
+		}
+		return msgs;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setTemplateInstParams(ITemplateInstParam newTemplateInstParams) {
+		if (newTemplateInstParams != templateInstParams) {
+			NotificationChain msgs = null;
+			if (templateInstParams != null)
+				msgs = ((InternalEObject)templateInstParams).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.ITEMPLATE_INST__TEMPLATE_INST_PARAMS, null, msgs);
+			if (newTemplateInstParams != null)
+				msgs = ((InternalEObject)newTemplateInstParams).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.ITEMPLATE_INST__TEMPLATE_INST_PARAMS, null, msgs);
+			msgs = basicSetTemplateInstParams(newTemplateInstParams, msgs);
+			if (msgs != null) msgs.dispatch();
+		}
+		else if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.ITEMPLATE_INST__TEMPLATE_INST_PARAMS, newTemplateInstParams, newTemplateInstParams));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IClass getOfTemplate() {
+		if (ofTemplate != null && ofTemplate.eIsProxy()) {
+			InternalEObject oldOfTemplate = (InternalEObject)ofTemplate;
+			ofTemplate = (IClass)eResolveProxy(oldOfTemplate);
+			if (ofTemplate != oldOfTemplate) {
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.ITEMPLATE_INST__OF_TEMPLATE, oldOfTemplate, ofTemplate));
+			}
+		}
+		return ofTemplate;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IClass basicGetOfTemplate() {
+		return ofTemplate;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setOfTemplate(IClass newOfTemplate) {
+		IClass oldOfTemplate = ofTemplate;
+		ofTemplate = newOfTemplate;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.ITEMPLATE_INST__OF_TEMPLATE, oldOfTemplate, ofTemplate));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
+		switch (featureID) {
+			case UMLRpyPackage.ITEMPLATE_INST__TEMPLATE_INST_PARAMS:
+				return basicSetTemplateInstParams(null, msgs);
+		}
+		return super.eInverseRemove(otherEnd, featureID, msgs);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object eGet(int featureID, boolean resolve, boolean coreType) {
+		switch (featureID) {
+			case UMLRpyPackage.ITEMPLATE_INST__ID:
+				return getId();
+			case UMLRpyPackage.ITEMPLATE_INST__MODIFIED_TIME_WEAK:
+				return getModifiedTimeWeak();
+			case UMLRpyPackage.ITEMPLATE_INST__TEMPLATE_INST_PARAMS:
+				if (resolve) return getTemplateInstParams();
+				return basicGetTemplateInstParams();
+			case UMLRpyPackage.ITEMPLATE_INST__OF_TEMPLATE:
+				if (resolve) return getOfTemplate();
+				return basicGetOfTemplate();
+		}
+		return super.eGet(featureID, resolve, coreType);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void eSet(int featureID, Object newValue) {
+		switch (featureID) {
+			case UMLRpyPackage.ITEMPLATE_INST__ID:
+				setId((String)newValue);
+				return;
+			case UMLRpyPackage.ITEMPLATE_INST__MODIFIED_TIME_WEAK:
+				setModifiedTimeWeak((String)newValue);
+				return;
+			case UMLRpyPackage.ITEMPLATE_INST__TEMPLATE_INST_PARAMS:
+				setTemplateInstParams((ITemplateInstParam)newValue);
+				return;
+			case UMLRpyPackage.ITEMPLATE_INST__OF_TEMPLATE:
+				setOfTemplate((IClass)newValue);
+				return;
+		}
+		super.eSet(featureID, newValue);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void eUnset(int featureID) {
+		switch (featureID) {
+			case UMLRpyPackage.ITEMPLATE_INST__ID:
+				setId(ID_EDEFAULT);
+				return;
+			case UMLRpyPackage.ITEMPLATE_INST__MODIFIED_TIME_WEAK:
+				setModifiedTimeWeak(MODIFIED_TIME_WEAK_EDEFAULT);
+				return;
+			case UMLRpyPackage.ITEMPLATE_INST__TEMPLATE_INST_PARAMS:
+				setTemplateInstParams((ITemplateInstParam)null);
+				return;
+			case UMLRpyPackage.ITEMPLATE_INST__OF_TEMPLATE:
+				setOfTemplate((IClass)null);
+				return;
+		}
+		super.eUnset(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public boolean eIsSet(int featureID) {
+		switch (featureID) {
+			case UMLRpyPackage.ITEMPLATE_INST__ID:
+				return ID_EDEFAULT == null ? id != null : !ID_EDEFAULT.equals(id);
+			case UMLRpyPackage.ITEMPLATE_INST__MODIFIED_TIME_WEAK:
+				return MODIFIED_TIME_WEAK_EDEFAULT == null ? modifiedTimeWeak != null : !MODIFIED_TIME_WEAK_EDEFAULT.equals(modifiedTimeWeak);
+			case UMLRpyPackage.ITEMPLATE_INST__TEMPLATE_INST_PARAMS:
+				return templateInstParams != null;
+			case UMLRpyPackage.ITEMPLATE_INST__OF_TEMPLATE:
+				return ofTemplate != null;
+		}
+		return super.eIsSet(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String toString() {
+		if (eIsProxy()) return super.toString();
+
+		StringBuffer result = new StringBuffer(super.toString());
+		result.append(" (id: "); //$NON-NLS-1$
+		result.append(id);
+		result.append(", modifiedTimeWeak: "); //$NON-NLS-1$
+		result.append(modifiedTimeWeak);
+		result.append(')');
+		return result.toString();
+	}
+
+} //ITemplateInstImpl
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/ITemplateInstParamImpl.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/ITemplateInstParamImpl.java
new file mode 100755
index 0000000..d4956fd
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/ITemplateInstParamImpl.java
@@ -0,0 +1,451 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.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.emf.ecore.impl.MinimalEObjectImpl;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IClass;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITemplateInstParam;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>ITemplate Inst Param</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * </p>
+ * <ul>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.ITemplateInstParamImpl#getId <em>Id</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.ITemplateInstParamImpl#getName <em>Name</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.ITemplateInstParamImpl#getModifiedTimeWeak <em>Modified Time Weak</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.ITemplateInstParamImpl#getValue <em>Value</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.ITemplateInstParamImpl#getArgValue <em>Arg Value</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.ITemplateInstParamImpl#getOnTheFlyValue <em>On The Fly Value</em>}</li>
+ * </ul>
+ *
+ * @generated
+ */
+public class ITemplateInstParamImpl extends MinimalEObjectImpl.Container implements ITemplateInstParam {
+	/**
+	 * The default value of the '{@link #getId() <em>Id</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getId()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String ID_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getId() <em>Id</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getId()
+	 * @generated
+	 * @ordered
+	 */
+	protected String id = ID_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getName() <em>Name</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getName()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String NAME_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getName() <em>Name</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getName()
+	 * @generated
+	 * @ordered
+	 */
+	protected String name = NAME_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getModifiedTimeWeak() <em>Modified Time Weak</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getModifiedTimeWeak()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String MODIFIED_TIME_WEAK_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getModifiedTimeWeak() <em>Modified Time Weak</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getModifiedTimeWeak()
+	 * @generated
+	 * @ordered
+	 */
+	protected String modifiedTimeWeak = MODIFIED_TIME_WEAK_EDEFAULT;
+
+	/**
+	 * The cached value of the '{@link #getValue() <em>Value</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getValue()
+	 * @generated
+	 * @ordered
+	 */
+	protected IClass value;
+
+	/**
+	 * The default value of the '{@link #getArgValue() <em>Arg Value</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getArgValue()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String ARG_VALUE_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getArgValue() <em>Arg Value</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getArgValue()
+	 * @generated
+	 * @ordered
+	 */
+	protected String argValue = ARG_VALUE_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getOnTheFlyValue() <em>On The Fly Value</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getOnTheFlyValue()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String ON_THE_FLY_VALUE_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getOnTheFlyValue() <em>On The Fly Value</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getOnTheFlyValue()
+	 * @generated
+	 * @ordered
+	 */
+	protected String onTheFlyValue = ON_THE_FLY_VALUE_EDEFAULT;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected ITemplateInstParamImpl() {
+		super();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EClass eStaticClass() {
+		return UMLRpyPackage.eINSTANCE.getITemplateInstParam();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getId() {
+		return id;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setId(String newId) {
+		String oldId = id;
+		id = newId;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.ITEMPLATE_INST_PARAM__ID, oldId, id));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getName() {
+		return name;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setName(String newName) {
+		String oldName = name;
+		name = newName;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.ITEMPLATE_INST_PARAM__NAME, oldName, name));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getModifiedTimeWeak() {
+		return modifiedTimeWeak;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setModifiedTimeWeak(String newModifiedTimeWeak) {
+		String oldModifiedTimeWeak = modifiedTimeWeak;
+		modifiedTimeWeak = newModifiedTimeWeak;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.ITEMPLATE_INST_PARAM__MODIFIED_TIME_WEAK, oldModifiedTimeWeak, modifiedTimeWeak));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IClass getValue() {
+		if (value != null && value.eIsProxy()) {
+			InternalEObject oldValue = (InternalEObject)value;
+			value = (IClass)eResolveProxy(oldValue);
+			if (value != oldValue) {
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.ITEMPLATE_INST_PARAM__VALUE, oldValue, value));
+			}
+		}
+		return value;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IClass basicGetValue() {
+		return value;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setValue(IClass newValue) {
+		IClass oldValue = value;
+		value = newValue;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.ITEMPLATE_INST_PARAM__VALUE, oldValue, value));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getArgValue() {
+		return argValue;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setArgValue(String newArgValue) {
+		String oldArgValue = argValue;
+		argValue = newArgValue;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.ITEMPLATE_INST_PARAM__ARG_VALUE, oldArgValue, argValue));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getOnTheFlyValue() {
+		return onTheFlyValue;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setOnTheFlyValue(String newOnTheFlyValue) {
+		String oldOnTheFlyValue = onTheFlyValue;
+		onTheFlyValue = newOnTheFlyValue;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.ITEMPLATE_INST_PARAM__ON_THE_FLY_VALUE, oldOnTheFlyValue, onTheFlyValue));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object eGet(int featureID, boolean resolve, boolean coreType) {
+		switch (featureID) {
+			case UMLRpyPackage.ITEMPLATE_INST_PARAM__ID:
+				return getId();
+			case UMLRpyPackage.ITEMPLATE_INST_PARAM__NAME:
+				return getName();
+			case UMLRpyPackage.ITEMPLATE_INST_PARAM__MODIFIED_TIME_WEAK:
+				return getModifiedTimeWeak();
+			case UMLRpyPackage.ITEMPLATE_INST_PARAM__VALUE:
+				if (resolve) return getValue();
+				return basicGetValue();
+			case UMLRpyPackage.ITEMPLATE_INST_PARAM__ARG_VALUE:
+				return getArgValue();
+			case UMLRpyPackage.ITEMPLATE_INST_PARAM__ON_THE_FLY_VALUE:
+				return getOnTheFlyValue();
+		}
+		return super.eGet(featureID, resolve, coreType);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void eSet(int featureID, Object newValue) {
+		switch (featureID) {
+			case UMLRpyPackage.ITEMPLATE_INST_PARAM__ID:
+				setId((String)newValue);
+				return;
+			case UMLRpyPackage.ITEMPLATE_INST_PARAM__NAME:
+				setName((String)newValue);
+				return;
+			case UMLRpyPackage.ITEMPLATE_INST_PARAM__MODIFIED_TIME_WEAK:
+				setModifiedTimeWeak((String)newValue);
+				return;
+			case UMLRpyPackage.ITEMPLATE_INST_PARAM__VALUE:
+				setValue((IClass)newValue);
+				return;
+			case UMLRpyPackage.ITEMPLATE_INST_PARAM__ARG_VALUE:
+				setArgValue((String)newValue);
+				return;
+			case UMLRpyPackage.ITEMPLATE_INST_PARAM__ON_THE_FLY_VALUE:
+				setOnTheFlyValue((String)newValue);
+				return;
+		}
+		super.eSet(featureID, newValue);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void eUnset(int featureID) {
+		switch (featureID) {
+			case UMLRpyPackage.ITEMPLATE_INST_PARAM__ID:
+				setId(ID_EDEFAULT);
+				return;
+			case UMLRpyPackage.ITEMPLATE_INST_PARAM__NAME:
+				setName(NAME_EDEFAULT);
+				return;
+			case UMLRpyPackage.ITEMPLATE_INST_PARAM__MODIFIED_TIME_WEAK:
+				setModifiedTimeWeak(MODIFIED_TIME_WEAK_EDEFAULT);
+				return;
+			case UMLRpyPackage.ITEMPLATE_INST_PARAM__VALUE:
+				setValue((IClass)null);
+				return;
+			case UMLRpyPackage.ITEMPLATE_INST_PARAM__ARG_VALUE:
+				setArgValue(ARG_VALUE_EDEFAULT);
+				return;
+			case UMLRpyPackage.ITEMPLATE_INST_PARAM__ON_THE_FLY_VALUE:
+				setOnTheFlyValue(ON_THE_FLY_VALUE_EDEFAULT);
+				return;
+		}
+		super.eUnset(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public boolean eIsSet(int featureID) {
+		switch (featureID) {
+			case UMLRpyPackage.ITEMPLATE_INST_PARAM__ID:
+				return ID_EDEFAULT == null ? id != null : !ID_EDEFAULT.equals(id);
+			case UMLRpyPackage.ITEMPLATE_INST_PARAM__NAME:
+				return NAME_EDEFAULT == null ? name != null : !NAME_EDEFAULT.equals(name);
+			case UMLRpyPackage.ITEMPLATE_INST_PARAM__MODIFIED_TIME_WEAK:
+				return MODIFIED_TIME_WEAK_EDEFAULT == null ? modifiedTimeWeak != null : !MODIFIED_TIME_WEAK_EDEFAULT.equals(modifiedTimeWeak);
+			case UMLRpyPackage.ITEMPLATE_INST_PARAM__VALUE:
+				return value != null;
+			case UMLRpyPackage.ITEMPLATE_INST_PARAM__ARG_VALUE:
+				return ARG_VALUE_EDEFAULT == null ? argValue != null : !ARG_VALUE_EDEFAULT.equals(argValue);
+			case UMLRpyPackage.ITEMPLATE_INST_PARAM__ON_THE_FLY_VALUE:
+				return ON_THE_FLY_VALUE_EDEFAULT == null ? onTheFlyValue != null : !ON_THE_FLY_VALUE_EDEFAULT.equals(onTheFlyValue);
+		}
+		return super.eIsSet(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String toString() {
+		if (eIsProxy()) return super.toString();
+
+		StringBuffer result = new StringBuffer(super.toString());
+		result.append(" (id: "); //$NON-NLS-1$
+		result.append(id);
+		result.append(", name: "); //$NON-NLS-1$
+		result.append(name);
+		result.append(", modifiedTimeWeak: "); //$NON-NLS-1$
+		result.append(modifiedTimeWeak);
+		result.append(", argValue: "); //$NON-NLS-1$
+		result.append(argValue);
+		result.append(", onTheFlyValue: "); //$NON-NLS-1$
+		result.append(onTheFlyValue);
+		result.append(')');
+		return result.toString();
+	}
+
+} //ITemplateInstParamImpl
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/ITemplateInstantiationImpl.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/ITemplateInstantiationImpl.java
new file mode 100755
index 0000000..6fd2374
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/ITemplateInstantiationImpl.java
@@ -0,0 +1,47 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl;
+
+import org.eclipse.emf.ecore.EClass;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITemplateInstantiation;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>ITemplate Instantiation</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+public class ITemplateInstantiationImpl extends IModelElementImpl implements ITemplateInstantiation {
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected ITemplateInstantiationImpl() {
+		super();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EClass eStaticClass() {
+		return UMLRpyPackage.eINSTANCE.getITemplateInstantiation();
+	}
+
+} //ITemplateInstantiationImpl
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/ITemplateInstantiationParameterImpl.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/ITemplateInstantiationParameterImpl.java
new file mode 100755
index 0000000..832a29a
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/ITemplateInstantiationParameterImpl.java
@@ -0,0 +1,47 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl;
+
+import org.eclipse.emf.ecore.EClass;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITemplateInstantiationParameter;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>ITemplate Instantiation Parameter</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+public class ITemplateInstantiationParameterImpl extends IModelElementImpl implements ITemplateInstantiationParameter {
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected ITemplateInstantiationParameterImpl() {
+		super();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EClass eStaticClass() {
+		return UMLRpyPackage.eINSTANCE.getITemplateInstantiationParameter();
+	}
+
+} //ITemplateInstantiationParameterImpl
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/ITemplateParameterImpl.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/ITemplateParameterImpl.java
new file mode 100755
index 0000000..5d4715c
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/ITemplateParameterImpl.java
@@ -0,0 +1,385 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl;
+
+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.EDataTypeEList;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IClass;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITemplateParameter;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>ITemplate Parameter</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * </p>
+ * <ul>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.ITemplateParameterImpl#getId <em>Id</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.ITemplateParameterImpl#getName <em>Name</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.ITemplateParameterImpl#getMyState <em>My State</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.ITemplateParameterImpl#getModifiedTimeWeak <em>Modified Time Weak</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.ITemplateParameterImpl#getRepresentative <em>Representative</em>}</li>
+ * </ul>
+ *
+ * @generated
+ */
+public class ITemplateParameterImpl extends IVariableImpl implements ITemplateParameter {
+	/**
+	 * The default value of the '{@link #getId() <em>Id</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getId()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String ID_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getId() <em>Id</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getId()
+	 * @generated
+	 * @ordered
+	 */
+	protected String id = ID_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getName() <em>Name</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getName()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String NAME_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getName() <em>Name</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getName()
+	 * @generated
+	 * @ordered
+	 */
+	protected String name = NAME_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getMyState() <em>My State</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getMyState()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String MY_STATE_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getMyState() <em>My State</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getMyState()
+	 * @generated
+	 * @ordered
+	 */
+	protected String myState = MY_STATE_EDEFAULT;
+
+	/**
+	 * The cached value of the '{@link #getModifiedTimeWeak() <em>Modified Time Weak</em>}' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getModifiedTimeWeak()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<String> modifiedTimeWeak;
+
+	/**
+	 * The cached value of the '{@link #getRepresentative() <em>Representative</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getRepresentative()
+	 * @generated
+	 * @ordered
+	 */
+	protected IClass representative;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected ITemplateParameterImpl() {
+		super();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EClass eStaticClass() {
+		return UMLRpyPackage.eINSTANCE.getITemplateParameter();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getId() {
+		return id;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setId(String newId) {
+		String oldId = id;
+		id = newId;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.ITEMPLATE_PARAMETER__ID, oldId, id));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getName() {
+		return name;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setName(String newName) {
+		String oldName = name;
+		name = newName;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.ITEMPLATE_PARAMETER__NAME, oldName, name));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getMyState() {
+		return myState;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setMyState(String newMyState) {
+		String oldMyState = myState;
+		myState = newMyState;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.ITEMPLATE_PARAMETER__MY_STATE, oldMyState, myState));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<String> getModifiedTimeWeak() {
+		if (modifiedTimeWeak == null) {
+			modifiedTimeWeak = new EDataTypeEList<String>(String.class, this, UMLRpyPackage.ITEMPLATE_PARAMETER__MODIFIED_TIME_WEAK);
+		}
+		return modifiedTimeWeak;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IClass getRepresentative() {
+		if (representative != null && representative.eIsProxy()) {
+			InternalEObject oldRepresentative = (InternalEObject)representative;
+			representative = (IClass)eResolveProxy(oldRepresentative);
+			if (representative != oldRepresentative) {
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.ITEMPLATE_PARAMETER__REPRESENTATIVE, oldRepresentative, representative));
+			}
+		}
+		return representative;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IClass basicGetRepresentative() {
+		return representative;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setRepresentative(IClass newRepresentative) {
+		IClass oldRepresentative = representative;
+		representative = newRepresentative;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.ITEMPLATE_PARAMETER__REPRESENTATIVE, oldRepresentative, representative));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object eGet(int featureID, boolean resolve, boolean coreType) {
+		switch (featureID) {
+			case UMLRpyPackage.ITEMPLATE_PARAMETER__ID:
+				return getId();
+			case UMLRpyPackage.ITEMPLATE_PARAMETER__NAME:
+				return getName();
+			case UMLRpyPackage.ITEMPLATE_PARAMETER__MY_STATE:
+				return getMyState();
+			case UMLRpyPackage.ITEMPLATE_PARAMETER__MODIFIED_TIME_WEAK:
+				return getModifiedTimeWeak();
+			case UMLRpyPackage.ITEMPLATE_PARAMETER__REPRESENTATIVE:
+				if (resolve) return getRepresentative();
+				return basicGetRepresentative();
+		}
+		return super.eGet(featureID, resolve, coreType);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@SuppressWarnings("unchecked")
+	@Override
+	public void eSet(int featureID, Object newValue) {
+		switch (featureID) {
+			case UMLRpyPackage.ITEMPLATE_PARAMETER__ID:
+				setId((String)newValue);
+				return;
+			case UMLRpyPackage.ITEMPLATE_PARAMETER__NAME:
+				setName((String)newValue);
+				return;
+			case UMLRpyPackage.ITEMPLATE_PARAMETER__MY_STATE:
+				setMyState((String)newValue);
+				return;
+			case UMLRpyPackage.ITEMPLATE_PARAMETER__MODIFIED_TIME_WEAK:
+				getModifiedTimeWeak().clear();
+				getModifiedTimeWeak().addAll((Collection<? extends String>)newValue);
+				return;
+			case UMLRpyPackage.ITEMPLATE_PARAMETER__REPRESENTATIVE:
+				setRepresentative((IClass)newValue);
+				return;
+		}
+		super.eSet(featureID, newValue);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void eUnset(int featureID) {
+		switch (featureID) {
+			case UMLRpyPackage.ITEMPLATE_PARAMETER__ID:
+				setId(ID_EDEFAULT);
+				return;
+			case UMLRpyPackage.ITEMPLATE_PARAMETER__NAME:
+				setName(NAME_EDEFAULT);
+				return;
+			case UMLRpyPackage.ITEMPLATE_PARAMETER__MY_STATE:
+				setMyState(MY_STATE_EDEFAULT);
+				return;
+			case UMLRpyPackage.ITEMPLATE_PARAMETER__MODIFIED_TIME_WEAK:
+				getModifiedTimeWeak().clear();
+				return;
+			case UMLRpyPackage.ITEMPLATE_PARAMETER__REPRESENTATIVE:
+				setRepresentative((IClass)null);
+				return;
+		}
+		super.eUnset(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public boolean eIsSet(int featureID) {
+		switch (featureID) {
+			case UMLRpyPackage.ITEMPLATE_PARAMETER__ID:
+				return ID_EDEFAULT == null ? id != null : !ID_EDEFAULT.equals(id);
+			case UMLRpyPackage.ITEMPLATE_PARAMETER__NAME:
+				return NAME_EDEFAULT == null ? name != null : !NAME_EDEFAULT.equals(name);
+			case UMLRpyPackage.ITEMPLATE_PARAMETER__MY_STATE:
+				return MY_STATE_EDEFAULT == null ? myState != null : !MY_STATE_EDEFAULT.equals(myState);
+			case UMLRpyPackage.ITEMPLATE_PARAMETER__MODIFIED_TIME_WEAK:
+				return modifiedTimeWeak != null && !modifiedTimeWeak.isEmpty();
+			case UMLRpyPackage.ITEMPLATE_PARAMETER__REPRESENTATIVE:
+				return representative != null;
+		}
+		return super.eIsSet(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String toString() {
+		if (eIsProxy()) return super.toString();
+
+		StringBuffer result = new StringBuffer(super.toString());
+		result.append(" (id: "); //$NON-NLS-1$
+		result.append(id);
+		result.append(", name: "); //$NON-NLS-1$
+		result.append(name);
+		result.append(", myState: "); //$NON-NLS-1$
+		result.append(myState);
+		result.append(", modifiedTimeWeak: "); //$NON-NLS-1$
+		result.append(modifiedTimeWeak);
+		result.append(')');
+		return result.toString();
+	}
+
+} //ITemplateParameterImpl
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/ITimeEventImpl.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/ITimeEventImpl.java
new file mode 100755
index 0000000..587ed4d
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/ITimeEventImpl.java
@@ -0,0 +1,608 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl;
+
+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.EDataTypeEList;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IState;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ISwimlane;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITimeEvent;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>ITime Event</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * </p>
+ * <ul>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.ITimeEventImpl#getId <em>Id</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.ITimeEventImpl#getMyState <em>My State</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.ITimeEventImpl#getName <em>Name</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.ITimeEventImpl#getModifiedTimeWeak <em>Modified Time Weak</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.ITimeEventImpl#getParent <em>Parent</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.ITimeEventImpl#getStateType <em>State Type</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.ITimeEventImpl#getDefaultTrans <em>Default Trans</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.ITimeEventImpl#getDurationTime <em>Duration Time</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.ITimeEventImpl#getSwimlane <em>Swimlane</em>}</li>
+ * </ul>
+ *
+ * @generated
+ */
+public class ITimeEventImpl extends ItsTargetTypeImpl implements ITimeEvent {
+	/**
+	 * The default value of the '{@link #getId() <em>Id</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getId()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String ID_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getId() <em>Id</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getId()
+	 * @generated
+	 * @ordered
+	 */
+	protected String id = ID_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getMyState() <em>My State</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getMyState()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String MY_STATE_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getMyState() <em>My State</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getMyState()
+	 * @generated
+	 * @ordered
+	 */
+	protected String myState = MY_STATE_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getName() <em>Name</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getName()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String NAME_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getName() <em>Name</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getName()
+	 * @generated
+	 * @ordered
+	 */
+	protected String name = NAME_EDEFAULT;
+
+	/**
+	 * The cached value of the '{@link #getModifiedTimeWeak() <em>Modified Time Weak</em>}' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getModifiedTimeWeak()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<String> modifiedTimeWeak;
+
+	/**
+	 * The cached value of the '{@link #getParent() <em>Parent</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getParent()
+	 * @generated
+	 * @ordered
+	 */
+	protected IState parent;
+
+	/**
+	 * The default value of the '{@link #getStateType() <em>State Type</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getStateType()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String STATE_TYPE_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getStateType() <em>State Type</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getStateType()
+	 * @generated
+	 * @ordered
+	 */
+	protected String stateType = STATE_TYPE_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getDefaultTrans() <em>Default Trans</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getDefaultTrans()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String DEFAULT_TRANS_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getDefaultTrans() <em>Default Trans</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getDefaultTrans()
+	 * @generated
+	 * @ordered
+	 */
+	protected String defaultTrans = DEFAULT_TRANS_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getDurationTime() <em>Duration Time</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getDurationTime()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String DURATION_TIME_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getDurationTime() <em>Duration Time</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getDurationTime()
+	 * @generated
+	 * @ordered
+	 */
+	protected String durationTime = DURATION_TIME_EDEFAULT;
+
+	/**
+	 * The cached value of the '{@link #getSwimlane() <em>Swimlane</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getSwimlane()
+	 * @generated
+	 * @ordered
+	 */
+	protected ISwimlane swimlane;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected ITimeEventImpl() {
+		super();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EClass eStaticClass() {
+		return UMLRpyPackage.eINSTANCE.getITimeEvent();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getId() {
+		return id;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setId(String newId) {
+		String oldId = id;
+		id = newId;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.ITIME_EVENT__ID, oldId, id));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getMyState() {
+		return myState;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setMyState(String newMyState) {
+		String oldMyState = myState;
+		myState = newMyState;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.ITIME_EVENT__MY_STATE, oldMyState, myState));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getName() {
+		return name;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setName(String newName) {
+		String oldName = name;
+		name = newName;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.ITIME_EVENT__NAME, oldName, name));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<String> getModifiedTimeWeak() {
+		if (modifiedTimeWeak == null) {
+			modifiedTimeWeak = new EDataTypeEList<String>(String.class, this, UMLRpyPackage.ITIME_EVENT__MODIFIED_TIME_WEAK);
+		}
+		return modifiedTimeWeak;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IState getParent() {
+		if (parent != null && parent.eIsProxy()) {
+			InternalEObject oldParent = (InternalEObject)parent;
+			parent = (IState)eResolveProxy(oldParent);
+			if (parent != oldParent) {
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.ITIME_EVENT__PARENT, oldParent, parent));
+			}
+		}
+		return parent;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IState basicGetParent() {
+		return parent;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setParent(IState newParent) {
+		IState oldParent = parent;
+		parent = newParent;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.ITIME_EVENT__PARENT, oldParent, parent));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getStateType() {
+		return stateType;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setStateType(String newStateType) {
+		String oldStateType = stateType;
+		stateType = newStateType;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.ITIME_EVENT__STATE_TYPE, oldStateType, stateType));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getDefaultTrans() {
+		return defaultTrans;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setDefaultTrans(String newDefaultTrans) {
+		String oldDefaultTrans = defaultTrans;
+		defaultTrans = newDefaultTrans;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.ITIME_EVENT__DEFAULT_TRANS, oldDefaultTrans, defaultTrans));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getDurationTime() {
+		return durationTime;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setDurationTime(String newDurationTime) {
+		String oldDurationTime = durationTime;
+		durationTime = newDurationTime;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.ITIME_EVENT__DURATION_TIME, oldDurationTime, durationTime));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public ISwimlane getSwimlane() {
+		if (swimlane != null && swimlane.eIsProxy()) {
+			InternalEObject oldSwimlane = (InternalEObject)swimlane;
+			swimlane = (ISwimlane)eResolveProxy(oldSwimlane);
+			if (swimlane != oldSwimlane) {
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.ITIME_EVENT__SWIMLANE, oldSwimlane, swimlane));
+			}
+		}
+		return swimlane;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public ISwimlane basicGetSwimlane() {
+		return swimlane;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setSwimlane(ISwimlane newSwimlane) {
+		ISwimlane oldSwimlane = swimlane;
+		swimlane = newSwimlane;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.ITIME_EVENT__SWIMLANE, oldSwimlane, swimlane));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object eGet(int featureID, boolean resolve, boolean coreType) {
+		switch (featureID) {
+			case UMLRpyPackage.ITIME_EVENT__ID:
+				return getId();
+			case UMLRpyPackage.ITIME_EVENT__MY_STATE:
+				return getMyState();
+			case UMLRpyPackage.ITIME_EVENT__NAME:
+				return getName();
+			case UMLRpyPackage.ITIME_EVENT__MODIFIED_TIME_WEAK:
+				return getModifiedTimeWeak();
+			case UMLRpyPackage.ITIME_EVENT__PARENT:
+				if (resolve) return getParent();
+				return basicGetParent();
+			case UMLRpyPackage.ITIME_EVENT__STATE_TYPE:
+				return getStateType();
+			case UMLRpyPackage.ITIME_EVENT__DEFAULT_TRANS:
+				return getDefaultTrans();
+			case UMLRpyPackage.ITIME_EVENT__DURATION_TIME:
+				return getDurationTime();
+			case UMLRpyPackage.ITIME_EVENT__SWIMLANE:
+				if (resolve) return getSwimlane();
+				return basicGetSwimlane();
+		}
+		return super.eGet(featureID, resolve, coreType);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@SuppressWarnings("unchecked")
+	@Override
+	public void eSet(int featureID, Object newValue) {
+		switch (featureID) {
+			case UMLRpyPackage.ITIME_EVENT__ID:
+				setId((String)newValue);
+				return;
+			case UMLRpyPackage.ITIME_EVENT__MY_STATE:
+				setMyState((String)newValue);
+				return;
+			case UMLRpyPackage.ITIME_EVENT__NAME:
+				setName((String)newValue);
+				return;
+			case UMLRpyPackage.ITIME_EVENT__MODIFIED_TIME_WEAK:
+				getModifiedTimeWeak().clear();
+				getModifiedTimeWeak().addAll((Collection<? extends String>)newValue);
+				return;
+			case UMLRpyPackage.ITIME_EVENT__PARENT:
+				setParent((IState)newValue);
+				return;
+			case UMLRpyPackage.ITIME_EVENT__STATE_TYPE:
+				setStateType((String)newValue);
+				return;
+			case UMLRpyPackage.ITIME_EVENT__DEFAULT_TRANS:
+				setDefaultTrans((String)newValue);
+				return;
+			case UMLRpyPackage.ITIME_EVENT__DURATION_TIME:
+				setDurationTime((String)newValue);
+				return;
+			case UMLRpyPackage.ITIME_EVENT__SWIMLANE:
+				setSwimlane((ISwimlane)newValue);
+				return;
+		}
+		super.eSet(featureID, newValue);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void eUnset(int featureID) {
+		switch (featureID) {
+			case UMLRpyPackage.ITIME_EVENT__ID:
+				setId(ID_EDEFAULT);
+				return;
+			case UMLRpyPackage.ITIME_EVENT__MY_STATE:
+				setMyState(MY_STATE_EDEFAULT);
+				return;
+			case UMLRpyPackage.ITIME_EVENT__NAME:
+				setName(NAME_EDEFAULT);
+				return;
+			case UMLRpyPackage.ITIME_EVENT__MODIFIED_TIME_WEAK:
+				getModifiedTimeWeak().clear();
+				return;
+			case UMLRpyPackage.ITIME_EVENT__PARENT:
+				setParent((IState)null);
+				return;
+			case UMLRpyPackage.ITIME_EVENT__STATE_TYPE:
+				setStateType(STATE_TYPE_EDEFAULT);
+				return;
+			case UMLRpyPackage.ITIME_EVENT__DEFAULT_TRANS:
+				setDefaultTrans(DEFAULT_TRANS_EDEFAULT);
+				return;
+			case UMLRpyPackage.ITIME_EVENT__DURATION_TIME:
+				setDurationTime(DURATION_TIME_EDEFAULT);
+				return;
+			case UMLRpyPackage.ITIME_EVENT__SWIMLANE:
+				setSwimlane((ISwimlane)null);
+				return;
+		}
+		super.eUnset(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public boolean eIsSet(int featureID) {
+		switch (featureID) {
+			case UMLRpyPackage.ITIME_EVENT__ID:
+				return ID_EDEFAULT == null ? id != null : !ID_EDEFAULT.equals(id);
+			case UMLRpyPackage.ITIME_EVENT__MY_STATE:
+				return MY_STATE_EDEFAULT == null ? myState != null : !MY_STATE_EDEFAULT.equals(myState);
+			case UMLRpyPackage.ITIME_EVENT__NAME:
+				return NAME_EDEFAULT == null ? name != null : !NAME_EDEFAULT.equals(name);
+			case UMLRpyPackage.ITIME_EVENT__MODIFIED_TIME_WEAK:
+				return modifiedTimeWeak != null && !modifiedTimeWeak.isEmpty();
+			case UMLRpyPackage.ITIME_EVENT__PARENT:
+				return parent != null;
+			case UMLRpyPackage.ITIME_EVENT__STATE_TYPE:
+				return STATE_TYPE_EDEFAULT == null ? stateType != null : !STATE_TYPE_EDEFAULT.equals(stateType);
+			case UMLRpyPackage.ITIME_EVENT__DEFAULT_TRANS:
+				return DEFAULT_TRANS_EDEFAULT == null ? defaultTrans != null : !DEFAULT_TRANS_EDEFAULT.equals(defaultTrans);
+			case UMLRpyPackage.ITIME_EVENT__DURATION_TIME:
+				return DURATION_TIME_EDEFAULT == null ? durationTime != null : !DURATION_TIME_EDEFAULT.equals(durationTime);
+			case UMLRpyPackage.ITIME_EVENT__SWIMLANE:
+				return swimlane != null;
+		}
+		return super.eIsSet(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String toString() {
+		if (eIsProxy()) return super.toString();
+
+		StringBuffer result = new StringBuffer(super.toString());
+		result.append(" (id: "); //$NON-NLS-1$
+		result.append(id);
+		result.append(", myState: "); //$NON-NLS-1$
+		result.append(myState);
+		result.append(", name: "); //$NON-NLS-1$
+		result.append(name);
+		result.append(", modifiedTimeWeak: "); //$NON-NLS-1$
+		result.append(modifiedTimeWeak);
+		result.append(", stateType: "); //$NON-NLS-1$
+		result.append(stateType);
+		result.append(", defaultTrans: "); //$NON-NLS-1$
+		result.append(defaultTrans);
+		result.append(", durationTime: "); //$NON-NLS-1$
+		result.append(durationTime);
+		result.append(')');
+		return result.toString();
+	}
+
+} //ITimeEventImpl
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/ITimeoutImpl.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/ITimeoutImpl.java
new file mode 100755
index 0000000..92f327a
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/ITimeoutImpl.java
@@ -0,0 +1,233 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.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.interoperability.rpy.rpymetamodel.ITimeout;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>ITimeout</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * </p>
+ * <ul>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.ITimeoutImpl#getTime <em>Time</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.ITimeoutImpl#getInheritsFromHandle <em>Inherits From Handle</em>}</li>
+ * </ul>
+ *
+ * @generated
+ */
+public class ITimeoutImpl extends ItsTriggerTypeImpl implements ITimeout {
+	/**
+	 * The default value of the '{@link #getTime() <em>Time</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getTime()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String TIME_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getTime() <em>Time</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getTime()
+	 * @generated
+	 * @ordered
+	 */
+	protected String time = TIME_EDEFAULT;
+
+	/**
+	 * The cached value of the '{@link #getInheritsFromHandle() <em>Inherits From Handle</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getInheritsFromHandle()
+	 * @generated
+	 * @ordered
+	 */
+	protected ITimeout inheritsFromHandle;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected ITimeoutImpl() {
+		super();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EClass eStaticClass() {
+		return UMLRpyPackage.eINSTANCE.getITimeout();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getTime() {
+		return time;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setTime(String newTime) {
+		String oldTime = time;
+		time = newTime;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.ITIMEOUT__TIME, oldTime, time));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public ITimeout getInheritsFromHandle() {
+		if (inheritsFromHandle != null && inheritsFromHandle.eIsProxy()) {
+			InternalEObject oldInheritsFromHandle = (InternalEObject)inheritsFromHandle;
+			inheritsFromHandle = (ITimeout)eResolveProxy(oldInheritsFromHandle);
+			if (inheritsFromHandle != oldInheritsFromHandle) {
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.ITIMEOUT__INHERITS_FROM_HANDLE, oldInheritsFromHandle, inheritsFromHandle));
+			}
+		}
+		return inheritsFromHandle;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public ITimeout basicGetInheritsFromHandle() {
+		return inheritsFromHandle;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setInheritsFromHandle(ITimeout newInheritsFromHandle) {
+		ITimeout oldInheritsFromHandle = inheritsFromHandle;
+		inheritsFromHandle = newInheritsFromHandle;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.ITIMEOUT__INHERITS_FROM_HANDLE, oldInheritsFromHandle, inheritsFromHandle));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object eGet(int featureID, boolean resolve, boolean coreType) {
+		switch (featureID) {
+			case UMLRpyPackage.ITIMEOUT__TIME:
+				return getTime();
+			case UMLRpyPackage.ITIMEOUT__INHERITS_FROM_HANDLE:
+				if (resolve) return getInheritsFromHandle();
+				return basicGetInheritsFromHandle();
+		}
+		return super.eGet(featureID, resolve, coreType);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void eSet(int featureID, Object newValue) {
+		switch (featureID) {
+			case UMLRpyPackage.ITIMEOUT__TIME:
+				setTime((String)newValue);
+				return;
+			case UMLRpyPackage.ITIMEOUT__INHERITS_FROM_HANDLE:
+				setInheritsFromHandle((ITimeout)newValue);
+				return;
+		}
+		super.eSet(featureID, newValue);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void eUnset(int featureID) {
+		switch (featureID) {
+			case UMLRpyPackage.ITIMEOUT__TIME:
+				setTime(TIME_EDEFAULT);
+				return;
+			case UMLRpyPackage.ITIMEOUT__INHERITS_FROM_HANDLE:
+				setInheritsFromHandle((ITimeout)null);
+				return;
+		}
+		super.eUnset(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public boolean eIsSet(int featureID) {
+		switch (featureID) {
+			case UMLRpyPackage.ITIMEOUT__TIME:
+				return TIME_EDEFAULT == null ? time != null : !TIME_EDEFAULT.equals(time);
+			case UMLRpyPackage.ITIMEOUT__INHERITS_FROM_HANDLE:
+				return inheritsFromHandle != null;
+		}
+		return super.eIsSet(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String toString() {
+		if (eIsProxy()) return super.toString();
+
+		StringBuffer result = new StringBuffer(super.toString());
+		result.append(" (time: "); //$NON-NLS-1$
+		result.append(time);
+		result.append(')');
+		return result.toString();
+	}
+
+} //ITimeoutImpl
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/ITransitionImpl.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/ITransitionImpl.java
new file mode 100755
index 0000000..9ea70c0
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/ITransitionImpl.java
@@ -0,0 +1,1140 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl;
+
+import java.util.Collection;
+
+import org.eclipse.emf.common.notify.Notification;
+import org.eclipse.emf.common.notify.NotificationChain;
+
+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.EDataTypeEList;
+import org.eclipse.emf.ecore.util.EObjectContainmentEList;
+import org.eclipse.emf.ecore.util.InternalEList;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.DependsOnType;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ElementsType;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IClassifier;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IDependency;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IDescription;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITransition;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ItsLabelType;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ItsTargetType;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.TargetType;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.TransitionsType;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>ITransition</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * </p>
+ * <ul>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.ITransitionImpl#getModifiedTimeWeak <em>Modified Time Weak</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.ITransitionImpl#getStaticReaction <em>Static Reaction</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.ITransitionImpl#getItsTarget <em>Its Target</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.ITransitionImpl#getId <em>Id</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.ITransitionImpl#getCodeUpdateCGTime <em>Code Update CG Time</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.ITransitionImpl#getRequiremenTracabilityHandle <em>Requiremen Tracability Handle</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.ITransitionImpl#getDescription <em>Description</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.ITransitionImpl#getItsLabel <em>Its Label</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.ITransitionImpl#getUmlDependencyID <em>Uml Dependency ID</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.ITransitionImpl#getMyState <em>My State</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.ITransitionImpl#getObjectCreation <em>Object Creation</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.ITransitionImpl#getName <em>Name</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.ITransitionImpl#getItsSource <em>Its Source</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.ITransitionImpl#getInheritsFromHandle <em>Inherits From Handle</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.ITransitionImpl#getDependencies <em>Dependencies</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.ITransitionImpl#getStereotypes <em>Stereotypes</em>}</li>
+ * </ul>
+ *
+ * @generated
+ */
+public class ITransitionImpl extends IModelElementImpl implements ITransition {
+	/**
+	 * The cached value of the '{@link #getModifiedTimeWeak() <em>Modified Time Weak</em>}' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getModifiedTimeWeak()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<String> modifiedTimeWeak;
+
+	/**
+	 * The default value of the '{@link #getStaticReaction() <em>Static Reaction</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getStaticReaction()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String STATIC_REACTION_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getStaticReaction() <em>Static Reaction</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getStaticReaction()
+	 * @generated
+	 * @ordered
+	 */
+	protected String staticReaction = STATIC_REACTION_EDEFAULT;
+
+	/**
+	 * The cached value of the '{@link #getItsTarget() <em>Its Target</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getItsTarget()
+	 * @generated
+	 * @ordered
+	 */
+	protected ItsTargetType itsTarget;
+
+	/**
+	 * The default value of the '{@link #getId() <em>Id</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getId()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String ID_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getId() <em>Id</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getId()
+	 * @generated
+	 * @ordered
+	 */
+	protected String id = ID_EDEFAULT;
+
+	/**
+	 * The cached value of the '{@link #getCodeUpdateCGTime() <em>Code Update CG Time</em>}' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getCodeUpdateCGTime()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<String> codeUpdateCGTime;
+
+	/**
+	 * The default value of the '{@link #getRequiremenTracabilityHandle() <em>Requiremen Tracability Handle</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getRequiremenTracabilityHandle()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String REQUIREMEN_TRACABILITY_HANDLE_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getRequiremenTracabilityHandle() <em>Requiremen Tracability Handle</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getRequiremenTracabilityHandle()
+	 * @generated
+	 * @ordered
+	 */
+	protected String requiremenTracabilityHandle = REQUIREMEN_TRACABILITY_HANDLE_EDEFAULT;
+
+	/**
+	 * The cached value of the '{@link #getDescription() <em>Description</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getDescription()
+	 * @generated
+	 * @ordered
+	 */
+	protected IDescription description;
+
+	/**
+	 * The cached value of the '{@link #getItsLabel() <em>Its Label</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getItsLabel()
+	 * @generated
+	 * @ordered
+	 */
+	protected ItsLabelType itsLabel;
+
+	/**
+	 * The default value of the '{@link #getUmlDependencyID() <em>Uml Dependency ID</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getUmlDependencyID()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String UML_DEPENDENCY_ID_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getUmlDependencyID() <em>Uml Dependency ID</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getUmlDependencyID()
+	 * @generated
+	 * @ordered
+	 */
+	protected String umlDependencyID = UML_DEPENDENCY_ID_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getMyState() <em>My State</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getMyState()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String MY_STATE_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getMyState() <em>My State</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getMyState()
+	 * @generated
+	 * @ordered
+	 */
+	protected String myState = MY_STATE_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getObjectCreation() <em>Object Creation</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getObjectCreation()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String OBJECT_CREATION_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getObjectCreation() <em>Object Creation</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getObjectCreation()
+	 * @generated
+	 * @ordered
+	 */
+	protected String objectCreation = OBJECT_CREATION_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getName() <em>Name</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getName()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String NAME_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getName() <em>Name</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getName()
+	 * @generated
+	 * @ordered
+	 */
+	protected String name = NAME_EDEFAULT;
+
+	/**
+	 * The cached value of the '{@link #getItsSource() <em>Its Source</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getItsSource()
+	 * @generated
+	 * @ordered
+	 */
+	protected ItsTargetType itsSource;
+
+	/**
+	 * The cached value of the '{@link #getInheritsFromHandle() <em>Inherits From Handle</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getInheritsFromHandle()
+	 * @generated
+	 * @ordered
+	 */
+	protected ITransition inheritsFromHandle;
+
+	/**
+	 * The cached value of the '{@link #getDependencies() <em>Dependencies</em>}' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getDependencies()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<IDependency> dependencies;
+
+	/**
+	 * The cached value of the '{@link #getStereotypes() <em>Stereotypes</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getStereotypes()
+	 * @generated
+	 * @ordered
+	 */
+	protected IClassifier stereotypes;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected ITransitionImpl() {
+		super();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EClass eStaticClass() {
+		return UMLRpyPackage.eINSTANCE.getITransition();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<String> getModifiedTimeWeak() {
+		if (modifiedTimeWeak == null) {
+			modifiedTimeWeak = new EDataTypeEList<String>(String.class, this, UMLRpyPackage.ITRANSITION__MODIFIED_TIME_WEAK);
+		}
+		return modifiedTimeWeak;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getStaticReaction() {
+		return staticReaction;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setStaticReaction(String newStaticReaction) {
+		String oldStaticReaction = staticReaction;
+		staticReaction = newStaticReaction;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.ITRANSITION__STATIC_REACTION, oldStaticReaction, staticReaction));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public ItsTargetType getItsTarget() {
+		if (itsTarget != null && itsTarget.eIsProxy()) {
+			InternalEObject oldItsTarget = (InternalEObject)itsTarget;
+			itsTarget = (ItsTargetType)eResolveProxy(oldItsTarget);
+			if (itsTarget != oldItsTarget) {
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.ITRANSITION__ITS_TARGET, oldItsTarget, itsTarget));
+			}
+		}
+		return itsTarget;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public ItsTargetType basicGetItsTarget() {
+		return itsTarget;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setItsTarget(ItsTargetType newItsTarget) {
+		ItsTargetType oldItsTarget = itsTarget;
+		itsTarget = newItsTarget;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.ITRANSITION__ITS_TARGET, oldItsTarget, itsTarget));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getId() {
+		return id;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setId(String newId) {
+		String oldId = id;
+		id = newId;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.ITRANSITION__ID, oldId, id));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<String> getCodeUpdateCGTime() {
+		if (codeUpdateCGTime == null) {
+			codeUpdateCGTime = new EDataTypeEList<String>(String.class, this, UMLRpyPackage.ITRANSITION__CODE_UPDATE_CG_TIME);
+		}
+		return codeUpdateCGTime;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getRequiremenTracabilityHandle() {
+		return requiremenTracabilityHandle;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setRequiremenTracabilityHandle(String newRequiremenTracabilityHandle) {
+		String oldRequiremenTracabilityHandle = requiremenTracabilityHandle;
+		requiremenTracabilityHandle = newRequiremenTracabilityHandle;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.ITRANSITION__REQUIREMEN_TRACABILITY_HANDLE, oldRequiremenTracabilityHandle, requiremenTracabilityHandle));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IDescription getDescription() {
+		if (description != null && description.eIsProxy()) {
+			InternalEObject oldDescription = (InternalEObject)description;
+			description = (IDescription)eResolveProxy(oldDescription);
+			if (description != oldDescription) {
+				InternalEObject newDescription = (InternalEObject)description;
+				NotificationChain msgs = oldDescription.eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.ITRANSITION__DESCRIPTION, null, null);
+				if (newDescription.eInternalContainer() == null) {
+					msgs = newDescription.eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.ITRANSITION__DESCRIPTION, null, msgs);
+				}
+				if (msgs != null) msgs.dispatch();
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.ITRANSITION__DESCRIPTION, oldDescription, description));
+			}
+		}
+		return description;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IDescription basicGetDescription() {
+		return description;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public NotificationChain basicSetDescription(IDescription newDescription, NotificationChain msgs) {
+		IDescription oldDescription = description;
+		description = newDescription;
+		if (eNotificationRequired()) {
+			ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, UMLRpyPackage.ITRANSITION__DESCRIPTION, oldDescription, newDescription);
+			if (msgs == null) msgs = notification; else msgs.add(notification);
+		}
+		return msgs;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setDescription(IDescription newDescription) {
+		if (newDescription != description) {
+			NotificationChain msgs = null;
+			if (description != null)
+				msgs = ((InternalEObject)description).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.ITRANSITION__DESCRIPTION, null, msgs);
+			if (newDescription != null)
+				msgs = ((InternalEObject)newDescription).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.ITRANSITION__DESCRIPTION, null, msgs);
+			msgs = basicSetDescription(newDescription, msgs);
+			if (msgs != null) msgs.dispatch();
+		}
+		else if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.ITRANSITION__DESCRIPTION, newDescription, newDescription));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public ItsLabelType getItsLabel() {
+		if (itsLabel != null && itsLabel.eIsProxy()) {
+			InternalEObject oldItsLabel = (InternalEObject)itsLabel;
+			itsLabel = (ItsLabelType)eResolveProxy(oldItsLabel);
+			if (itsLabel != oldItsLabel) {
+				InternalEObject newItsLabel = (InternalEObject)itsLabel;
+				NotificationChain msgs = oldItsLabel.eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.ITRANSITION__ITS_LABEL, null, null);
+				if (newItsLabel.eInternalContainer() == null) {
+					msgs = newItsLabel.eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.ITRANSITION__ITS_LABEL, null, msgs);
+				}
+				if (msgs != null) msgs.dispatch();
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.ITRANSITION__ITS_LABEL, oldItsLabel, itsLabel));
+			}
+		}
+		return itsLabel;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public ItsLabelType basicGetItsLabel() {
+		return itsLabel;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public NotificationChain basicSetItsLabel(ItsLabelType newItsLabel, NotificationChain msgs) {
+		ItsLabelType oldItsLabel = itsLabel;
+		itsLabel = newItsLabel;
+		if (eNotificationRequired()) {
+			ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, UMLRpyPackage.ITRANSITION__ITS_LABEL, oldItsLabel, newItsLabel);
+			if (msgs == null) msgs = notification; else msgs.add(notification);
+		}
+		return msgs;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setItsLabel(ItsLabelType newItsLabel) {
+		if (newItsLabel != itsLabel) {
+			NotificationChain msgs = null;
+			if (itsLabel != null)
+				msgs = ((InternalEObject)itsLabel).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.ITRANSITION__ITS_LABEL, null, msgs);
+			if (newItsLabel != null)
+				msgs = ((InternalEObject)newItsLabel).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.ITRANSITION__ITS_LABEL, null, msgs);
+			msgs = basicSetItsLabel(newItsLabel, msgs);
+			if (msgs != null) msgs.dispatch();
+		}
+		else if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.ITRANSITION__ITS_LABEL, newItsLabel, newItsLabel));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getUmlDependencyID() {
+		return umlDependencyID;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setUmlDependencyID(String newUmlDependencyID) {
+		String oldUmlDependencyID = umlDependencyID;
+		umlDependencyID = newUmlDependencyID;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.ITRANSITION__UML_DEPENDENCY_ID, oldUmlDependencyID, umlDependencyID));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getMyState() {
+		return myState;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setMyState(String newMyState) {
+		String oldMyState = myState;
+		myState = newMyState;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.ITRANSITION__MY_STATE, oldMyState, myState));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getObjectCreation() {
+		return objectCreation;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setObjectCreation(String newObjectCreation) {
+		String oldObjectCreation = objectCreation;
+		objectCreation = newObjectCreation;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.ITRANSITION__OBJECT_CREATION, oldObjectCreation, objectCreation));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getName() {
+		return name;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setName(String newName) {
+		String oldName = name;
+		name = newName;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.ITRANSITION__NAME, oldName, name));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public ItsTargetType getItsSource() {
+		if (itsSource != null && itsSource.eIsProxy()) {
+			InternalEObject oldItsSource = (InternalEObject)itsSource;
+			itsSource = (ItsTargetType)eResolveProxy(oldItsSource);
+			if (itsSource != oldItsSource) {
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.ITRANSITION__ITS_SOURCE, oldItsSource, itsSource));
+			}
+		}
+		return itsSource;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public ItsTargetType basicGetItsSource() {
+		return itsSource;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setItsSource(ItsTargetType newItsSource) {
+		ItsTargetType oldItsSource = itsSource;
+		itsSource = newItsSource;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.ITRANSITION__ITS_SOURCE, oldItsSource, itsSource));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public ITransition getInheritsFromHandle() {
+		if (inheritsFromHandle != null && inheritsFromHandle.eIsProxy()) {
+			InternalEObject oldInheritsFromHandle = (InternalEObject)inheritsFromHandle;
+			inheritsFromHandle = (ITransition)eResolveProxy(oldInheritsFromHandle);
+			if (inheritsFromHandle != oldInheritsFromHandle) {
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.ITRANSITION__INHERITS_FROM_HANDLE, oldInheritsFromHandle, inheritsFromHandle));
+			}
+		}
+		return inheritsFromHandle;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public ITransition basicGetInheritsFromHandle() {
+		return inheritsFromHandle;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setInheritsFromHandle(ITransition newInheritsFromHandle) {
+		ITransition oldInheritsFromHandle = inheritsFromHandle;
+		inheritsFromHandle = newInheritsFromHandle;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.ITRANSITION__INHERITS_FROM_HANDLE, oldInheritsFromHandle, inheritsFromHandle));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<IDependency> getDependencies() {
+		if (dependencies == null) {
+			dependencies = new EObjectContainmentEList.Resolving<IDependency>(IDependency.class, this, UMLRpyPackage.ITRANSITION__DEPENDENCIES);
+		}
+		return dependencies;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IClassifier getStereotypes() {
+		if (stereotypes != null && stereotypes.eIsProxy()) {
+			InternalEObject oldStereotypes = (InternalEObject)stereotypes;
+			stereotypes = (IClassifier)eResolveProxy(oldStereotypes);
+			if (stereotypes != oldStereotypes) {
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.ITRANSITION__STEREOTYPES, oldStereotypes, stereotypes));
+			}
+		}
+		return stereotypes;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IClassifier basicGetStereotypes() {
+		return stereotypes;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setStereotypes(IClassifier newStereotypes) {
+		IClassifier oldStereotypes = stereotypes;
+		stereotypes = newStereotypes;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.ITRANSITION__STEREOTYPES, oldStereotypes, stereotypes));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
+		switch (featureID) {
+			case UMLRpyPackage.ITRANSITION__DESCRIPTION:
+				return basicSetDescription(null, msgs);
+			case UMLRpyPackage.ITRANSITION__ITS_LABEL:
+				return basicSetItsLabel(null, msgs);
+			case UMLRpyPackage.ITRANSITION__DEPENDENCIES:
+				return ((InternalEList<?>)getDependencies()).basicRemove(otherEnd, msgs);
+		}
+		return super.eInverseRemove(otherEnd, featureID, msgs);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object eGet(int featureID, boolean resolve, boolean coreType) {
+		switch (featureID) {
+			case UMLRpyPackage.ITRANSITION__MODIFIED_TIME_WEAK:
+				return getModifiedTimeWeak();
+			case UMLRpyPackage.ITRANSITION__STATIC_REACTION:
+				return getStaticReaction();
+			case UMLRpyPackage.ITRANSITION__ITS_TARGET:
+				if (resolve) return getItsTarget();
+				return basicGetItsTarget();
+			case UMLRpyPackage.ITRANSITION__ID:
+				return getId();
+			case UMLRpyPackage.ITRANSITION__CODE_UPDATE_CG_TIME:
+				return getCodeUpdateCGTime();
+			case UMLRpyPackage.ITRANSITION__REQUIREMEN_TRACABILITY_HANDLE:
+				return getRequiremenTracabilityHandle();
+			case UMLRpyPackage.ITRANSITION__DESCRIPTION:
+				if (resolve) return getDescription();
+				return basicGetDescription();
+			case UMLRpyPackage.ITRANSITION__ITS_LABEL:
+				if (resolve) return getItsLabel();
+				return basicGetItsLabel();
+			case UMLRpyPackage.ITRANSITION__UML_DEPENDENCY_ID:
+				return getUmlDependencyID();
+			case UMLRpyPackage.ITRANSITION__MY_STATE:
+				return getMyState();
+			case UMLRpyPackage.ITRANSITION__OBJECT_CREATION:
+				return getObjectCreation();
+			case UMLRpyPackage.ITRANSITION__NAME:
+				return getName();
+			case UMLRpyPackage.ITRANSITION__ITS_SOURCE:
+				if (resolve) return getItsSource();
+				return basicGetItsSource();
+			case UMLRpyPackage.ITRANSITION__INHERITS_FROM_HANDLE:
+				if (resolve) return getInheritsFromHandle();
+				return basicGetInheritsFromHandle();
+			case UMLRpyPackage.ITRANSITION__DEPENDENCIES:
+				return getDependencies();
+			case UMLRpyPackage.ITRANSITION__STEREOTYPES:
+				if (resolve) return getStereotypes();
+				return basicGetStereotypes();
+		}
+		return super.eGet(featureID, resolve, coreType);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@SuppressWarnings("unchecked")
+	@Override
+	public void eSet(int featureID, Object newValue) {
+		switch (featureID) {
+			case UMLRpyPackage.ITRANSITION__MODIFIED_TIME_WEAK:
+				getModifiedTimeWeak().clear();
+				getModifiedTimeWeak().addAll((Collection<? extends String>)newValue);
+				return;
+			case UMLRpyPackage.ITRANSITION__STATIC_REACTION:
+				setStaticReaction((String)newValue);
+				return;
+			case UMLRpyPackage.ITRANSITION__ITS_TARGET:
+				setItsTarget((ItsTargetType)newValue);
+				return;
+			case UMLRpyPackage.ITRANSITION__ID:
+				setId((String)newValue);
+				return;
+			case UMLRpyPackage.ITRANSITION__CODE_UPDATE_CG_TIME:
+				getCodeUpdateCGTime().clear();
+				getCodeUpdateCGTime().addAll((Collection<? extends String>)newValue);
+				return;
+			case UMLRpyPackage.ITRANSITION__REQUIREMEN_TRACABILITY_HANDLE:
+				setRequiremenTracabilityHandle((String)newValue);
+				return;
+			case UMLRpyPackage.ITRANSITION__DESCRIPTION:
+				setDescription((IDescription)newValue);
+				return;
+			case UMLRpyPackage.ITRANSITION__ITS_LABEL:
+				setItsLabel((ItsLabelType)newValue);
+				return;
+			case UMLRpyPackage.ITRANSITION__UML_DEPENDENCY_ID:
+				setUmlDependencyID((String)newValue);
+				return;
+			case UMLRpyPackage.ITRANSITION__MY_STATE:
+				setMyState((String)newValue);
+				return;
+			case UMLRpyPackage.ITRANSITION__OBJECT_CREATION:
+				setObjectCreation((String)newValue);
+				return;
+			case UMLRpyPackage.ITRANSITION__NAME:
+				setName((String)newValue);
+				return;
+			case UMLRpyPackage.ITRANSITION__ITS_SOURCE:
+				setItsSource((ItsTargetType)newValue);
+				return;
+			case UMLRpyPackage.ITRANSITION__INHERITS_FROM_HANDLE:
+				setInheritsFromHandle((ITransition)newValue);
+				return;
+			case UMLRpyPackage.ITRANSITION__DEPENDENCIES:
+				getDependencies().clear();
+				getDependencies().addAll((Collection<? extends IDependency>)newValue);
+				return;
+			case UMLRpyPackage.ITRANSITION__STEREOTYPES:
+				setStereotypes((IClassifier)newValue);
+				return;
+		}
+		super.eSet(featureID, newValue);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void eUnset(int featureID) {
+		switch (featureID) {
+			case UMLRpyPackage.ITRANSITION__MODIFIED_TIME_WEAK:
+				getModifiedTimeWeak().clear();
+				return;
+			case UMLRpyPackage.ITRANSITION__STATIC_REACTION:
+				setStaticReaction(STATIC_REACTION_EDEFAULT);
+				return;
+			case UMLRpyPackage.ITRANSITION__ITS_TARGET:
+				setItsTarget((ItsTargetType)null);
+				return;
+			case UMLRpyPackage.ITRANSITION__ID:
+				setId(ID_EDEFAULT);
+				return;
+			case UMLRpyPackage.ITRANSITION__CODE_UPDATE_CG_TIME:
+				getCodeUpdateCGTime().clear();
+				return;
+			case UMLRpyPackage.ITRANSITION__REQUIREMEN_TRACABILITY_HANDLE:
+				setRequiremenTracabilityHandle(REQUIREMEN_TRACABILITY_HANDLE_EDEFAULT);
+				return;
+			case UMLRpyPackage.ITRANSITION__DESCRIPTION:
+				setDescription((IDescription)null);
+				return;
+			case UMLRpyPackage.ITRANSITION__ITS_LABEL:
+				setItsLabel((ItsLabelType)null);
+				return;
+			case UMLRpyPackage.ITRANSITION__UML_DEPENDENCY_ID:
+				setUmlDependencyID(UML_DEPENDENCY_ID_EDEFAULT);
+				return;
+			case UMLRpyPackage.ITRANSITION__MY_STATE:
+				setMyState(MY_STATE_EDEFAULT);
+				return;
+			case UMLRpyPackage.ITRANSITION__OBJECT_CREATION:
+				setObjectCreation(OBJECT_CREATION_EDEFAULT);
+				return;
+			case UMLRpyPackage.ITRANSITION__NAME:
+				setName(NAME_EDEFAULT);
+				return;
+			case UMLRpyPackage.ITRANSITION__ITS_SOURCE:
+				setItsSource((ItsTargetType)null);
+				return;
+			case UMLRpyPackage.ITRANSITION__INHERITS_FROM_HANDLE:
+				setInheritsFromHandle((ITransition)null);
+				return;
+			case UMLRpyPackage.ITRANSITION__DEPENDENCIES:
+				getDependencies().clear();
+				return;
+			case UMLRpyPackage.ITRANSITION__STEREOTYPES:
+				setStereotypes((IClassifier)null);
+				return;
+		}
+		super.eUnset(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public boolean eIsSet(int featureID) {
+		switch (featureID) {
+			case UMLRpyPackage.ITRANSITION__MODIFIED_TIME_WEAK:
+				return modifiedTimeWeak != null && !modifiedTimeWeak.isEmpty();
+			case UMLRpyPackage.ITRANSITION__STATIC_REACTION:
+				return STATIC_REACTION_EDEFAULT == null ? staticReaction != null : !STATIC_REACTION_EDEFAULT.equals(staticReaction);
+			case UMLRpyPackage.ITRANSITION__ITS_TARGET:
+				return itsTarget != null;
+			case UMLRpyPackage.ITRANSITION__ID:
+				return ID_EDEFAULT == null ? id != null : !ID_EDEFAULT.equals(id);
+			case UMLRpyPackage.ITRANSITION__CODE_UPDATE_CG_TIME:
+				return codeUpdateCGTime != null && !codeUpdateCGTime.isEmpty();
+			case UMLRpyPackage.ITRANSITION__REQUIREMEN_TRACABILITY_HANDLE:
+				return REQUIREMEN_TRACABILITY_HANDLE_EDEFAULT == null ? requiremenTracabilityHandle != null : !REQUIREMEN_TRACABILITY_HANDLE_EDEFAULT.equals(requiremenTracabilityHandle);
+			case UMLRpyPackage.ITRANSITION__DESCRIPTION:
+				return description != null;
+			case UMLRpyPackage.ITRANSITION__ITS_LABEL:
+				return itsLabel != null;
+			case UMLRpyPackage.ITRANSITION__UML_DEPENDENCY_ID:
+				return UML_DEPENDENCY_ID_EDEFAULT == null ? umlDependencyID != null : !UML_DEPENDENCY_ID_EDEFAULT.equals(umlDependencyID);
+			case UMLRpyPackage.ITRANSITION__MY_STATE:
+				return MY_STATE_EDEFAULT == null ? myState != null : !MY_STATE_EDEFAULT.equals(myState);
+			case UMLRpyPackage.ITRANSITION__OBJECT_CREATION:
+				return OBJECT_CREATION_EDEFAULT == null ? objectCreation != null : !OBJECT_CREATION_EDEFAULT.equals(objectCreation);
+			case UMLRpyPackage.ITRANSITION__NAME:
+				return NAME_EDEFAULT == null ? name != null : !NAME_EDEFAULT.equals(name);
+			case UMLRpyPackage.ITRANSITION__ITS_SOURCE:
+				return itsSource != null;
+			case UMLRpyPackage.ITRANSITION__INHERITS_FROM_HANDLE:
+				return inheritsFromHandle != null;
+			case UMLRpyPackage.ITRANSITION__DEPENDENCIES:
+				return dependencies != null && !dependencies.isEmpty();
+			case UMLRpyPackage.ITRANSITION__STEREOTYPES:
+				return stereotypes != null;
+		}
+		return super.eIsSet(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public int eBaseStructuralFeatureID(int derivedFeatureID, Class<?> baseClass) {
+		if (baseClass == TransitionsType.class) {
+			switch (derivedFeatureID) {
+				case UMLRpyPackage.ITRANSITION__MODIFIED_TIME_WEAK: return UMLRpyPackage.TRANSITIONS_TYPE__MODIFIED_TIME_WEAK;
+				case UMLRpyPackage.ITRANSITION__STATIC_REACTION: return UMLRpyPackage.TRANSITIONS_TYPE__STATIC_REACTION;
+				case UMLRpyPackage.ITRANSITION__ITS_TARGET: return UMLRpyPackage.TRANSITIONS_TYPE__ITS_TARGET;
+				case UMLRpyPackage.ITRANSITION__ID: return UMLRpyPackage.TRANSITIONS_TYPE__ID;
+				case UMLRpyPackage.ITRANSITION__CODE_UPDATE_CG_TIME: return UMLRpyPackage.TRANSITIONS_TYPE__CODE_UPDATE_CG_TIME;
+				case UMLRpyPackage.ITRANSITION__REQUIREMEN_TRACABILITY_HANDLE: return UMLRpyPackage.TRANSITIONS_TYPE__REQUIREMEN_TRACABILITY_HANDLE;
+				case UMLRpyPackage.ITRANSITION__DESCRIPTION: return UMLRpyPackage.TRANSITIONS_TYPE__DESCRIPTION;
+				case UMLRpyPackage.ITRANSITION__ITS_LABEL: return UMLRpyPackage.TRANSITIONS_TYPE__ITS_LABEL;
+				case UMLRpyPackage.ITRANSITION__UML_DEPENDENCY_ID: return UMLRpyPackage.TRANSITIONS_TYPE__UML_DEPENDENCY_ID;
+				case UMLRpyPackage.ITRANSITION__MY_STATE: return UMLRpyPackage.TRANSITIONS_TYPE__MY_STATE;
+				case UMLRpyPackage.ITRANSITION__OBJECT_CREATION: return UMLRpyPackage.TRANSITIONS_TYPE__OBJECT_CREATION;
+				case UMLRpyPackage.ITRANSITION__NAME: return UMLRpyPackage.TRANSITIONS_TYPE__NAME;
+				default: return -1;
+			}
+		}
+		if (baseClass == ElementsType.class) {
+			switch (derivedFeatureID) {
+				default: return -1;
+			}
+		}
+		if (baseClass == DependsOnType.class) {
+			switch (derivedFeatureID) {
+				default: return -1;
+			}
+		}
+		if (baseClass == TargetType.class) {
+			switch (derivedFeatureID) {
+				default: return -1;
+			}
+		}
+		return super.eBaseStructuralFeatureID(derivedFeatureID, baseClass);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public int eDerivedStructuralFeatureID(int baseFeatureID, Class<?> baseClass) {
+		if (baseClass == TransitionsType.class) {
+			switch (baseFeatureID) {
+				case UMLRpyPackage.TRANSITIONS_TYPE__MODIFIED_TIME_WEAK: return UMLRpyPackage.ITRANSITION__MODIFIED_TIME_WEAK;
+				case UMLRpyPackage.TRANSITIONS_TYPE__STATIC_REACTION: return UMLRpyPackage.ITRANSITION__STATIC_REACTION;
+				case UMLRpyPackage.TRANSITIONS_TYPE__ITS_TARGET: return UMLRpyPackage.ITRANSITION__ITS_TARGET;
+				case UMLRpyPackage.TRANSITIONS_TYPE__ID: return UMLRpyPackage.ITRANSITION__ID;
+				case UMLRpyPackage.TRANSITIONS_TYPE__CODE_UPDATE_CG_TIME: return UMLRpyPackage.ITRANSITION__CODE_UPDATE_CG_TIME;
+				case UMLRpyPackage.TRANSITIONS_TYPE__REQUIREMEN_TRACABILITY_HANDLE: return UMLRpyPackage.ITRANSITION__REQUIREMEN_TRACABILITY_HANDLE;
+				case UMLRpyPackage.TRANSITIONS_TYPE__DESCRIPTION: return UMLRpyPackage.ITRANSITION__DESCRIPTION;
+				case UMLRpyPackage.TRANSITIONS_TYPE__ITS_LABEL: return UMLRpyPackage.ITRANSITION__ITS_LABEL;
+				case UMLRpyPackage.TRANSITIONS_TYPE__UML_DEPENDENCY_ID: return UMLRpyPackage.ITRANSITION__UML_DEPENDENCY_ID;
+				case UMLRpyPackage.TRANSITIONS_TYPE__MY_STATE: return UMLRpyPackage.ITRANSITION__MY_STATE;
+				case UMLRpyPackage.TRANSITIONS_TYPE__OBJECT_CREATION: return UMLRpyPackage.ITRANSITION__OBJECT_CREATION;
+				case UMLRpyPackage.TRANSITIONS_TYPE__NAME: return UMLRpyPackage.ITRANSITION__NAME;
+				default: return -1;
+			}
+		}
+		if (baseClass == ElementsType.class) {
+			switch (baseFeatureID) {
+				default: return -1;
+			}
+		}
+		if (baseClass == DependsOnType.class) {
+			switch (baseFeatureID) {
+				default: return -1;
+			}
+		}
+		if (baseClass == TargetType.class) {
+			switch (baseFeatureID) {
+				default: return -1;
+			}
+		}
+		return super.eDerivedStructuralFeatureID(baseFeatureID, baseClass);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String toString() {
+		if (eIsProxy()) return super.toString();
+
+		StringBuffer result = new StringBuffer(super.toString());
+		result.append(" (modifiedTimeWeak: "); //$NON-NLS-1$
+		result.append(modifiedTimeWeak);
+		result.append(", staticReaction: "); //$NON-NLS-1$
+		result.append(staticReaction);
+		result.append(", id: "); //$NON-NLS-1$
+		result.append(id);
+		result.append(", codeUpdateCGTime: "); //$NON-NLS-1$
+		result.append(codeUpdateCGTime);
+		result.append(", requiremenTracabilityHandle: "); //$NON-NLS-1$
+		result.append(requiremenTracabilityHandle);
+		result.append(", umlDependencyID: "); //$NON-NLS-1$
+		result.append(umlDependencyID);
+		result.append(", myState: "); //$NON-NLS-1$
+		result.append(myState);
+		result.append(", objectCreation: "); //$NON-NLS-1$
+		result.append(objectCreation);
+		result.append(", name: "); //$NON-NLS-1$
+		result.append(name);
+		result.append(')');
+		return result.toString();
+	}
+
+} //ITransitionImpl
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/ITriggerImpl.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/ITriggerImpl.java
new file mode 100755
index 0000000..3101791
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/ITriggerImpl.java
@@ -0,0 +1,47 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl;
+
+import org.eclipse.emf.ecore.EClass;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITrigger;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>ITrigger</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+public class ITriggerImpl extends IModelElementImpl implements ITrigger {
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected ITriggerImpl() {
+		super();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EClass eStaticClass() {
+		return UMLRpyPackage.eINSTANCE.getITrigger();
+	}
+
+} //ITriggerImpl
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/ITriggeredImpl.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/ITriggeredImpl.java
new file mode 100755
index 0000000..f1a2e9b
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/ITriggeredImpl.java
@@ -0,0 +1,885 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl;
+
+import java.lang.reflect.InvocationTargetException;
+import java.util.Collection;
+
+import org.eclipse.emf.common.notify.Notification;
+import org.eclipse.emf.common.notify.NotificationChain;
+
+import org.eclipse.emf.common.util.EList;
+import org.eclipse.emf.ecore.EAnnotation;
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.EModelElement;
+import org.eclipse.emf.ecore.EcorePackage;
+import org.eclipse.emf.ecore.InternalEObject;
+
+import org.eclipse.emf.ecore.impl.ENotificationImpl;
+
+import org.eclipse.emf.ecore.util.EDataTypeEList;
+import org.eclipse.emf.ecore.util.EObjectContainmentEList;
+import org.eclipse.emf.ecore.util.EObjectContainmentWithInverseEList;
+import org.eclipse.emf.ecore.util.InternalEList;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IModelElement;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITriggered;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IType;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IVariable;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ItemsType;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.M_pFormalMessageType;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>ITriggered</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * </p>
+ * <ul>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.ITriggeredImpl#getEAnnotations <em>EAnnotations</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.ITriggeredImpl#getDisplayName <em>Display Name</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.ITriggeredImpl#getId <em>Id</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.ITriggeredImpl#getName <em>Name</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.ITriggeredImpl#getArgs <em>Args</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.ITriggeredImpl#getReturnType <em>Return Type</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.ITriggeredImpl#getAbstract <em>Abstract</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.ITriggeredImpl#getFinal <em>Final</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.ITriggeredImpl#getConcurrency <em>Concurrency</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.ITriggeredImpl#getProtection <em>Protection</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.ITriggeredImpl#getModifiedTimeWeak <em>Modified Time Weak</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.ITriggeredImpl#getMyState <em>My State</em>}</li>
+ * </ul>
+ *
+ * @generated
+ */
+public class ITriggeredImpl extends OperationsTypeImpl implements ITriggered {
+	/**
+	 * The cached value of the '{@link #getEAnnotations() <em>EAnnotations</em>}' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getEAnnotations()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<EAnnotation> eAnnotations;
+
+	/**
+	 * The default value of the '{@link #getDisplayName() <em>Display Name</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getDisplayName()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String DISPLAY_NAME_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getDisplayName() <em>Display Name</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getDisplayName()
+	 * @generated
+	 * @ordered
+	 */
+	protected String displayName = DISPLAY_NAME_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getId() <em>Id</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getId()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String ID_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getId() <em>Id</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getId()
+	 * @generated
+	 * @ordered
+	 */
+	protected String id = ID_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getName() <em>Name</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getName()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String NAME_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getName() <em>Name</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getName()
+	 * @generated
+	 * @ordered
+	 */
+	protected String name = NAME_EDEFAULT;
+
+	/**
+	 * The cached value of the '{@link #getArgs() <em>Args</em>}' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getArgs()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<IVariable> args;
+
+	/**
+	 * The cached value of the '{@link #getReturnType() <em>Return Type</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getReturnType()
+	 * @generated
+	 * @ordered
+	 */
+	protected IType returnType;
+
+	/**
+	 * The default value of the '{@link #getAbstract() <em>Abstract</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getAbstract()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String ABSTRACT_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getAbstract() <em>Abstract</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getAbstract()
+	 * @generated
+	 * @ordered
+	 */
+	protected String abstract_ = ABSTRACT_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getFinal() <em>Final</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getFinal()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String FINAL_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getFinal() <em>Final</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getFinal()
+	 * @generated
+	 * @ordered
+	 */
+	protected String final_ = FINAL_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getConcurrency() <em>Concurrency</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getConcurrency()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String CONCURRENCY_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getConcurrency() <em>Concurrency</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getConcurrency()
+	 * @generated
+	 * @ordered
+	 */
+	protected String concurrency = CONCURRENCY_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getProtection() <em>Protection</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getProtection()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String PROTECTION_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getProtection() <em>Protection</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getProtection()
+	 * @generated
+	 * @ordered
+	 */
+	protected String protection = PROTECTION_EDEFAULT;
+
+	/**
+	 * The cached value of the '{@link #getModifiedTimeWeak() <em>Modified Time Weak</em>}' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getModifiedTimeWeak()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<String> modifiedTimeWeak;
+
+	/**
+	 * The default value of the '{@link #getMyState() <em>My State</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getMyState()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String MY_STATE_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getMyState() <em>My State</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getMyState()
+	 * @generated
+	 * @ordered
+	 */
+	protected String myState = MY_STATE_EDEFAULT;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected ITriggeredImpl() {
+		super();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EClass eStaticClass() {
+		return UMLRpyPackage.eINSTANCE.getITriggered();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<EAnnotation> getEAnnotations() {
+		if (eAnnotations == null) {
+			eAnnotations = new EObjectContainmentWithInverseEList<EAnnotation>(EAnnotation.class, this, UMLRpyPackage.ITRIGGERED__EANNOTATIONS, EcorePackage.EANNOTATION__EMODEL_ELEMENT);
+		}
+		return eAnnotations;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getDisplayName() {
+		return displayName;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setDisplayName(String newDisplayName) {
+		String oldDisplayName = displayName;
+		displayName = newDisplayName;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.ITRIGGERED__DISPLAY_NAME, oldDisplayName, displayName));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getId() {
+		return id;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setId(String newId) {
+		String oldId = id;
+		id = newId;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.ITRIGGERED__ID, oldId, id));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getName() {
+		return name;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setName(String newName) {
+		String oldName = name;
+		name = newName;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.ITRIGGERED__NAME, oldName, name));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<IVariable> getArgs() {
+		if (args == null) {
+			args = new EObjectContainmentEList.Resolving<IVariable>(IVariable.class, this, UMLRpyPackage.ITRIGGERED__ARGS);
+		}
+		return args;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IType getReturnType() {
+		if (returnType != null && returnType.eIsProxy()) {
+			InternalEObject oldReturnType = (InternalEObject)returnType;
+			returnType = (IType)eResolveProxy(oldReturnType);
+			if (returnType != oldReturnType) {
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.ITRIGGERED__RETURN_TYPE, oldReturnType, returnType));
+			}
+		}
+		return returnType;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IType basicGetReturnType() {
+		return returnType;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setReturnType(IType newReturnType) {
+		IType oldReturnType = returnType;
+		returnType = newReturnType;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.ITRIGGERED__RETURN_TYPE, oldReturnType, returnType));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getAbstract() {
+		return abstract_;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setAbstract(String newAbstract) {
+		String oldAbstract = abstract_;
+		abstract_ = newAbstract;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.ITRIGGERED__ABSTRACT, oldAbstract, abstract_));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getFinal() {
+		return final_;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setFinal(String newFinal) {
+		String oldFinal = final_;
+		final_ = newFinal;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.ITRIGGERED__FINAL, oldFinal, final_));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getConcurrency() {
+		return concurrency;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setConcurrency(String newConcurrency) {
+		String oldConcurrency = concurrency;
+		concurrency = newConcurrency;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.ITRIGGERED__CONCURRENCY, oldConcurrency, concurrency));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getProtection() {
+		return protection;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setProtection(String newProtection) {
+		String oldProtection = protection;
+		protection = newProtection;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.ITRIGGERED__PROTECTION, oldProtection, protection));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<String> getModifiedTimeWeak() {
+		if (modifiedTimeWeak == null) {
+			modifiedTimeWeak = new EDataTypeEList<String>(String.class, this, UMLRpyPackage.ITRIGGERED__MODIFIED_TIME_WEAK);
+		}
+		return modifiedTimeWeak;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getMyState() {
+		return myState;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setMyState(String newMyState) {
+		String oldMyState = myState;
+		myState = newMyState;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.ITRIGGERED__MY_STATE, oldMyState, myState));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAnnotation getEAnnotation(String source) {
+		// TODO: implement this method
+		// Ensure that you remove @generated or mark it @generated NOT
+		throw new UnsupportedOperationException();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@SuppressWarnings("unchecked")
+	@Override
+	public NotificationChain eInverseAdd(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
+		switch (featureID) {
+			case UMLRpyPackage.ITRIGGERED__EANNOTATIONS:
+				return ((InternalEList<InternalEObject>)(InternalEList<?>)getEAnnotations()).basicAdd(otherEnd, msgs);
+		}
+		return super.eInverseAdd(otherEnd, featureID, msgs);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
+		switch (featureID) {
+			case UMLRpyPackage.ITRIGGERED__EANNOTATIONS:
+				return ((InternalEList<?>)getEAnnotations()).basicRemove(otherEnd, msgs);
+			case UMLRpyPackage.ITRIGGERED__ARGS:
+				return ((InternalEList<?>)getArgs()).basicRemove(otherEnd, msgs);
+		}
+		return super.eInverseRemove(otherEnd, featureID, msgs);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object eGet(int featureID, boolean resolve, boolean coreType) {
+		switch (featureID) {
+			case UMLRpyPackage.ITRIGGERED__EANNOTATIONS:
+				return getEAnnotations();
+			case UMLRpyPackage.ITRIGGERED__DISPLAY_NAME:
+				return getDisplayName();
+			case UMLRpyPackage.ITRIGGERED__ID:
+				return getId();
+			case UMLRpyPackage.ITRIGGERED__NAME:
+				return getName();
+			case UMLRpyPackage.ITRIGGERED__ARGS:
+				return getArgs();
+			case UMLRpyPackage.ITRIGGERED__RETURN_TYPE:
+				if (resolve) return getReturnType();
+				return basicGetReturnType();
+			case UMLRpyPackage.ITRIGGERED__ABSTRACT:
+				return getAbstract();
+			case UMLRpyPackage.ITRIGGERED__FINAL:
+				return getFinal();
+			case UMLRpyPackage.ITRIGGERED__CONCURRENCY:
+				return getConcurrency();
+			case UMLRpyPackage.ITRIGGERED__PROTECTION:
+				return getProtection();
+			case UMLRpyPackage.ITRIGGERED__MODIFIED_TIME_WEAK:
+				return getModifiedTimeWeak();
+			case UMLRpyPackage.ITRIGGERED__MY_STATE:
+				return getMyState();
+		}
+		return super.eGet(featureID, resolve, coreType);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@SuppressWarnings("unchecked")
+	@Override
+	public void eSet(int featureID, Object newValue) {
+		switch (featureID) {
+			case UMLRpyPackage.ITRIGGERED__EANNOTATIONS:
+				getEAnnotations().clear();
+				getEAnnotations().addAll((Collection<? extends EAnnotation>)newValue);
+				return;
+			case UMLRpyPackage.ITRIGGERED__DISPLAY_NAME:
+				setDisplayName((String)newValue);
+				return;
+			case UMLRpyPackage.ITRIGGERED__ID:
+				setId((String)newValue);
+				return;
+			case UMLRpyPackage.ITRIGGERED__NAME:
+				setName((String)newValue);
+				return;
+			case UMLRpyPackage.ITRIGGERED__ARGS:
+				getArgs().clear();
+				getArgs().addAll((Collection<? extends IVariable>)newValue);
+				return;
+			case UMLRpyPackage.ITRIGGERED__RETURN_TYPE:
+				setReturnType((IType)newValue);
+				return;
+			case UMLRpyPackage.ITRIGGERED__ABSTRACT:
+				setAbstract((String)newValue);
+				return;
+			case UMLRpyPackage.ITRIGGERED__FINAL:
+				setFinal((String)newValue);
+				return;
+			case UMLRpyPackage.ITRIGGERED__CONCURRENCY:
+				setConcurrency((String)newValue);
+				return;
+			case UMLRpyPackage.ITRIGGERED__PROTECTION:
+				setProtection((String)newValue);
+				return;
+			case UMLRpyPackage.ITRIGGERED__MODIFIED_TIME_WEAK:
+				getModifiedTimeWeak().clear();
+				getModifiedTimeWeak().addAll((Collection<? extends String>)newValue);
+				return;
+			case UMLRpyPackage.ITRIGGERED__MY_STATE:
+				setMyState((String)newValue);
+				return;
+		}
+		super.eSet(featureID, newValue);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void eUnset(int featureID) {
+		switch (featureID) {
+			case UMLRpyPackage.ITRIGGERED__EANNOTATIONS:
+				getEAnnotations().clear();
+				return;
+			case UMLRpyPackage.ITRIGGERED__DISPLAY_NAME:
+				setDisplayName(DISPLAY_NAME_EDEFAULT);
+				return;
+			case UMLRpyPackage.ITRIGGERED__ID:
+				setId(ID_EDEFAULT);
+				return;
+			case UMLRpyPackage.ITRIGGERED__NAME:
+				setName(NAME_EDEFAULT);
+				return;
+			case UMLRpyPackage.ITRIGGERED__ARGS:
+				getArgs().clear();
+				return;
+			case UMLRpyPackage.ITRIGGERED__RETURN_TYPE:
+				setReturnType((IType)null);
+				return;
+			case UMLRpyPackage.ITRIGGERED__ABSTRACT:
+				setAbstract(ABSTRACT_EDEFAULT);
+				return;
+			case UMLRpyPackage.ITRIGGERED__FINAL:
+				setFinal(FINAL_EDEFAULT);
+				return;
+			case UMLRpyPackage.ITRIGGERED__CONCURRENCY:
+				setConcurrency(CONCURRENCY_EDEFAULT);
+				return;
+			case UMLRpyPackage.ITRIGGERED__PROTECTION:
+				setProtection(PROTECTION_EDEFAULT);
+				return;
+			case UMLRpyPackage.ITRIGGERED__MODIFIED_TIME_WEAK:
+				getModifiedTimeWeak().clear();
+				return;
+			case UMLRpyPackage.ITRIGGERED__MY_STATE:
+				setMyState(MY_STATE_EDEFAULT);
+				return;
+		}
+		super.eUnset(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public boolean eIsSet(int featureID) {
+		switch (featureID) {
+			case UMLRpyPackage.ITRIGGERED__EANNOTATIONS:
+				return eAnnotations != null && !eAnnotations.isEmpty();
+			case UMLRpyPackage.ITRIGGERED__DISPLAY_NAME:
+				return DISPLAY_NAME_EDEFAULT == null ? displayName != null : !DISPLAY_NAME_EDEFAULT.equals(displayName);
+			case UMLRpyPackage.ITRIGGERED__ID:
+				return ID_EDEFAULT == null ? id != null : !ID_EDEFAULT.equals(id);
+			case UMLRpyPackage.ITRIGGERED__NAME:
+				return NAME_EDEFAULT == null ? name != null : !NAME_EDEFAULT.equals(name);
+			case UMLRpyPackage.ITRIGGERED__ARGS:
+				return args != null && !args.isEmpty();
+			case UMLRpyPackage.ITRIGGERED__RETURN_TYPE:
+				return returnType != null;
+			case UMLRpyPackage.ITRIGGERED__ABSTRACT:
+				return ABSTRACT_EDEFAULT == null ? abstract_ != null : !ABSTRACT_EDEFAULT.equals(abstract_);
+			case UMLRpyPackage.ITRIGGERED__FINAL:
+				return FINAL_EDEFAULT == null ? final_ != null : !FINAL_EDEFAULT.equals(final_);
+			case UMLRpyPackage.ITRIGGERED__CONCURRENCY:
+				return CONCURRENCY_EDEFAULT == null ? concurrency != null : !CONCURRENCY_EDEFAULT.equals(concurrency);
+			case UMLRpyPackage.ITRIGGERED__PROTECTION:
+				return PROTECTION_EDEFAULT == null ? protection != null : !PROTECTION_EDEFAULT.equals(protection);
+			case UMLRpyPackage.ITRIGGERED__MODIFIED_TIME_WEAK:
+				return modifiedTimeWeak != null && !modifiedTimeWeak.isEmpty();
+			case UMLRpyPackage.ITRIGGERED__MY_STATE:
+				return MY_STATE_EDEFAULT == null ? myState != null : !MY_STATE_EDEFAULT.equals(myState);
+		}
+		return super.eIsSet(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public int eBaseStructuralFeatureID(int derivedFeatureID, Class<?> baseClass) {
+		if (baseClass == M_pFormalMessageType.class) {
+			switch (derivedFeatureID) {
+				default: return -1;
+			}
+		}
+		if (baseClass == ItemsType.class) {
+			switch (derivedFeatureID) {
+				default: return -1;
+			}
+		}
+		if (baseClass == EModelElement.class) {
+			switch (derivedFeatureID) {
+				case UMLRpyPackage.ITRIGGERED__EANNOTATIONS: return EcorePackage.EMODEL_ELEMENT__EANNOTATIONS;
+				default: return -1;
+			}
+		}
+		if (baseClass == IModelElement.class) {
+			switch (derivedFeatureID) {
+				case UMLRpyPackage.ITRIGGERED__DISPLAY_NAME: return UMLRpyPackage.IMODEL_ELEMENT__DISPLAY_NAME;
+				default: return -1;
+			}
+		}
+		return super.eBaseStructuralFeatureID(derivedFeatureID, baseClass);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public int eDerivedStructuralFeatureID(int baseFeatureID, Class<?> baseClass) {
+		if (baseClass == M_pFormalMessageType.class) {
+			switch (baseFeatureID) {
+				default: return -1;
+			}
+		}
+		if (baseClass == ItemsType.class) {
+			switch (baseFeatureID) {
+				default: return -1;
+			}
+		}
+		if (baseClass == EModelElement.class) {
+			switch (baseFeatureID) {
+				case EcorePackage.EMODEL_ELEMENT__EANNOTATIONS: return UMLRpyPackage.ITRIGGERED__EANNOTATIONS;
+				default: return -1;
+			}
+		}
+		if (baseClass == IModelElement.class) {
+			switch (baseFeatureID) {
+				case UMLRpyPackage.IMODEL_ELEMENT__DISPLAY_NAME: return UMLRpyPackage.ITRIGGERED__DISPLAY_NAME;
+				default: return -1;
+			}
+		}
+		return super.eDerivedStructuralFeatureID(baseFeatureID, baseClass);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public int eDerivedOperationID(int baseOperationID, Class<?> baseClass) {
+		if (baseClass == M_pFormalMessageType.class) {
+			switch (baseOperationID) {
+				default: return -1;
+			}
+		}
+		if (baseClass == ItemsType.class) {
+			switch (baseOperationID) {
+				default: return -1;
+			}
+		}
+		if (baseClass == EModelElement.class) {
+			switch (baseOperationID) {
+				case EcorePackage.EMODEL_ELEMENT___GET_EANNOTATION__STRING: return UMLRpyPackage.ITRIGGERED___GET_EANNOTATION__STRING;
+				default: return -1;
+			}
+		}
+		if (baseClass == IModelElement.class) {
+			switch (baseOperationID) {
+				default: return -1;
+			}
+		}
+		return super.eDerivedOperationID(baseOperationID, baseClass);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object eInvoke(int operationID, EList<?> arguments) throws InvocationTargetException {
+		switch (operationID) {
+			case UMLRpyPackage.ITRIGGERED___GET_EANNOTATION__STRING:
+				return getEAnnotation((String)arguments.get(0));
+		}
+		return super.eInvoke(operationID, arguments);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String toString() {
+		if (eIsProxy()) return super.toString();
+
+		StringBuffer result = new StringBuffer(super.toString());
+		result.append(" (displayName: "); //$NON-NLS-1$
+		result.append(displayName);
+		result.append(", id: "); //$NON-NLS-1$
+		result.append(id);
+		result.append(", name: "); //$NON-NLS-1$
+		result.append(name);
+		result.append(", abstract: "); //$NON-NLS-1$
+		result.append(abstract_);
+		result.append(", final: "); //$NON-NLS-1$
+		result.append(final_);
+		result.append(", concurrency: "); //$NON-NLS-1$
+		result.append(concurrency);
+		result.append(", protection: "); //$NON-NLS-1$
+		result.append(protection);
+		result.append(", modifiedTimeWeak: "); //$NON-NLS-1$
+		result.append(modifiedTimeWeak);
+		result.append(", myState: "); //$NON-NLS-1$
+		result.append(myState);
+		result.append(')');
+		return result.toString();
+	}
+
+} //ITriggeredImpl
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/ITypeImpl.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/ITypeImpl.java
new file mode 100755
index 0000000..d02b072
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/ITypeImpl.java
@@ -0,0 +1,1535 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl;
+
+import java.util.Collection;
+
+import org.eclipse.emf.common.notify.Notification;
+import org.eclipse.emf.common.notify.NotificationChain;
+
+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.EDataTypeEList;
+import org.eclipse.emf.ecore.util.EObjectContainmentEList;
+import org.eclipse.emf.ecore.util.EObjectResolvingEList;
+import org.eclipse.emf.ecore.util.InternalEList;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.DeclarativesType;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.DependsOnType;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ElementsType;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IAttribute;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IDescription;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IDiagram;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IEnumerationLiteral;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IPropertyContainer;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITag;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IType;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IUnit;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.M_pModelObjectType;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.M_subjectType;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.TargetType;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UnknownType;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ValueType;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>IType</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * </p>
+ * <ul>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.ITypeImpl#getUmlDependencyID <em>Uml Dependency ID</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.ITypeImpl#getObjectCreation <em>Object Creation</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.ITypeImpl#getModifiedTimeWeak <em>Modified Time Weak</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.ITypeImpl#getId <em>Id</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.ITypeImpl#getMyState <em>My State</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.ITypeImpl#getName <em>Name</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.ITypeImpl#getLastID <em>Last ID</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.ITypeImpl#getLiterals <em>Literals</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.ITypeImpl#getKind <em>Kind</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.ITypeImpl#getProperties <em>Properties</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.ITypeImpl#getDescription <em>Description</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.ITypeImpl#getDeclaration <em>Declaration</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.ITypeImpl#getStereotypes <em>Stereotypes</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.ITypeImpl#getAttrs <em>Attrs</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.ITypeImpl#getAssociationElements <em>Association Elements</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.ITypeImpl#getTags <em>Tags</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.ITypeImpl#getTypedefBaseType <em>Typedef Base Type</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.ITypeImpl#getTypedefMultiplicity <em>Typedef Multiplicity</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.ITypeImpl#getTypedefIsOrdered <em>Typedef Is Ordered</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.ITypeImpl#getTypedefIsReference <em>Typedef Is Reference</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.ITypeImpl#getTypedefIsConstant <em>Typedef Is Constant</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.ITypeImpl#getRequiremenTracabilityHandle <em>Requiremen Tracability Handle</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.ITypeImpl#getCodeUpdateCGTime <em>Code Update CG Time</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.ITypeImpl#getTheMainDiagram <em>The Main Diagram</em>}</li>
+ * </ul>
+ *
+ * @generated
+ */
+public class ITypeImpl extends IClassifierImpl implements IType {
+	/**
+	 * The default value of the '{@link #getUmlDependencyID() <em>Uml Dependency ID</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getUmlDependencyID()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String UML_DEPENDENCY_ID_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getUmlDependencyID() <em>Uml Dependency ID</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getUmlDependencyID()
+	 * @generated
+	 * @ordered
+	 */
+	protected String umlDependencyID = UML_DEPENDENCY_ID_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getObjectCreation() <em>Object Creation</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getObjectCreation()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String OBJECT_CREATION_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getObjectCreation() <em>Object Creation</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getObjectCreation()
+	 * @generated
+	 * @ordered
+	 */
+	protected String objectCreation = OBJECT_CREATION_EDEFAULT;
+
+	/**
+	 * The cached value of the '{@link #getModifiedTimeWeak() <em>Modified Time Weak</em>}' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getModifiedTimeWeak()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<String> modifiedTimeWeak;
+
+	/**
+	 * The default value of the '{@link #getId() <em>Id</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getId()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String ID_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getId() <em>Id</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getId()
+	 * @generated
+	 * @ordered
+	 */
+	protected String id = ID_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getMyState() <em>My State</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getMyState()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String MY_STATE_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getMyState() <em>My State</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getMyState()
+	 * @generated
+	 * @ordered
+	 */
+	protected String myState = MY_STATE_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getName() <em>Name</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getName()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String NAME_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getName() <em>Name</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getName()
+	 * @generated
+	 * @ordered
+	 */
+	protected String name = NAME_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getLastID() <em>Last ID</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getLastID()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String LAST_ID_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getLastID() <em>Last ID</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getLastID()
+	 * @generated
+	 * @ordered
+	 */
+	protected String lastID = LAST_ID_EDEFAULT;
+
+	/**
+	 * The cached value of the '{@link #getLiterals() <em>Literals</em>}' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getLiterals()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<IEnumerationLiteral> literals;
+
+	/**
+	 * The default value of the '{@link #getKind() <em>Kind</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getKind()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String KIND_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getKind() <em>Kind</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getKind()
+	 * @generated
+	 * @ordered
+	 */
+	protected String kind = KIND_EDEFAULT;
+
+	/**
+	 * The cached value of the '{@link #getProperties() <em>Properties</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getProperties()
+	 * @generated
+	 * @ordered
+	 */
+	protected IPropertyContainer properties;
+
+	/**
+	 * The cached value of the '{@link #getDescription() <em>Description</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getDescription()
+	 * @generated
+	 * @ordered
+	 */
+	protected IDescription description;
+
+	/**
+	 * The default value of the '{@link #getDeclaration() <em>Declaration</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getDeclaration()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String DECLARATION_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getDeclaration() <em>Declaration</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getDeclaration()
+	 * @generated
+	 * @ordered
+	 */
+	protected String declaration = DECLARATION_EDEFAULT;
+
+	/**
+	 * The cached value of the '{@link #getStereotypes() <em>Stereotypes</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getStereotypes()
+	 * @generated
+	 * @ordered
+	 */
+	protected IUnit stereotypes;
+
+	/**
+	 * The cached value of the '{@link #getAttrs() <em>Attrs</em>}' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getAttrs()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<IAttribute> attrs;
+
+	/**
+	 * The cached value of the '{@link #getAssociationElements() <em>Association Elements</em>}' reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getAssociationElements()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<UnknownType> associationElements;
+
+	/**
+	 * The cached value of the '{@link #getTags() <em>Tags</em>}' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getTags()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<ITag> tags;
+
+	/**
+	 * The cached value of the '{@link #getTypedefBaseType() <em>Typedef Base Type</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getTypedefBaseType()
+	 * @generated
+	 * @ordered
+	 */
+	protected IUnit typedefBaseType;
+
+	/**
+	 * The default value of the '{@link #getTypedefMultiplicity() <em>Typedef Multiplicity</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getTypedefMultiplicity()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String TYPEDEF_MULTIPLICITY_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getTypedefMultiplicity() <em>Typedef Multiplicity</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getTypedefMultiplicity()
+	 * @generated
+	 * @ordered
+	 */
+	protected String typedefMultiplicity = TYPEDEF_MULTIPLICITY_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getTypedefIsOrdered() <em>Typedef Is Ordered</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getTypedefIsOrdered()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String TYPEDEF_IS_ORDERED_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getTypedefIsOrdered() <em>Typedef Is Ordered</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getTypedefIsOrdered()
+	 * @generated
+	 * @ordered
+	 */
+	protected String typedefIsOrdered = TYPEDEF_IS_ORDERED_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getTypedefIsReference() <em>Typedef Is Reference</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getTypedefIsReference()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String TYPEDEF_IS_REFERENCE_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getTypedefIsReference() <em>Typedef Is Reference</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getTypedefIsReference()
+	 * @generated
+	 * @ordered
+	 */
+	protected String typedefIsReference = TYPEDEF_IS_REFERENCE_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getTypedefIsConstant() <em>Typedef Is Constant</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getTypedefIsConstant()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String TYPEDEF_IS_CONSTANT_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getTypedefIsConstant() <em>Typedef Is Constant</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getTypedefIsConstant()
+	 * @generated
+	 * @ordered
+	 */
+	protected String typedefIsConstant = TYPEDEF_IS_CONSTANT_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getRequiremenTracabilityHandle() <em>Requiremen Tracability Handle</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getRequiremenTracabilityHandle()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String REQUIREMEN_TRACABILITY_HANDLE_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getRequiremenTracabilityHandle() <em>Requiremen Tracability Handle</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getRequiremenTracabilityHandle()
+	 * @generated
+	 * @ordered
+	 */
+	protected String requiremenTracabilityHandle = REQUIREMEN_TRACABILITY_HANDLE_EDEFAULT;
+
+	/**
+	 * The cached value of the '{@link #getCodeUpdateCGTime() <em>Code Update CG Time</em>}' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getCodeUpdateCGTime()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<String> codeUpdateCGTime;
+
+	/**
+	 * The cached value of the '{@link #getTheMainDiagram() <em>The Main Diagram</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getTheMainDiagram()
+	 * @generated
+	 * @ordered
+	 */
+	protected IDiagram theMainDiagram;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected ITypeImpl() {
+		super();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EClass eStaticClass() {
+		return UMLRpyPackage.eINSTANCE.getIType();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getUmlDependencyID() {
+		return umlDependencyID;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setUmlDependencyID(String newUmlDependencyID) {
+		String oldUmlDependencyID = umlDependencyID;
+		umlDependencyID = newUmlDependencyID;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.ITYPE__UML_DEPENDENCY_ID, oldUmlDependencyID, umlDependencyID));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getObjectCreation() {
+		return objectCreation;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setObjectCreation(String newObjectCreation) {
+		String oldObjectCreation = objectCreation;
+		objectCreation = newObjectCreation;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.ITYPE__OBJECT_CREATION, oldObjectCreation, objectCreation));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<String> getModifiedTimeWeak() {
+		if (modifiedTimeWeak == null) {
+			modifiedTimeWeak = new EDataTypeEList<String>(String.class, this, UMLRpyPackage.ITYPE__MODIFIED_TIME_WEAK);
+		}
+		return modifiedTimeWeak;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getId() {
+		return id;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setId(String newId) {
+		String oldId = id;
+		id = newId;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.ITYPE__ID, oldId, id));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getMyState() {
+		return myState;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setMyState(String newMyState) {
+		String oldMyState = myState;
+		myState = newMyState;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.ITYPE__MY_STATE, oldMyState, myState));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getName() {
+		return name;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setName(String newName) {
+		String oldName = name;
+		name = newName;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.ITYPE__NAME, oldName, name));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getLastID() {
+		return lastID;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setLastID(String newLastID) {
+		String oldLastID = lastID;
+		lastID = newLastID;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.ITYPE__LAST_ID, oldLastID, lastID));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<IEnumerationLiteral> getLiterals() {
+		if (literals == null) {
+			literals = new EObjectContainmentEList.Resolving<IEnumerationLiteral>(IEnumerationLiteral.class, this, UMLRpyPackage.ITYPE__LITERALS);
+		}
+		return literals;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getKind() {
+		return kind;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setKind(String newKind) {
+		String oldKind = kind;
+		kind = newKind;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.ITYPE__KIND, oldKind, kind));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IPropertyContainer getProperties() {
+		if (properties != null && properties.eIsProxy()) {
+			InternalEObject oldProperties = (InternalEObject)properties;
+			properties = (IPropertyContainer)eResolveProxy(oldProperties);
+			if (properties != oldProperties) {
+				InternalEObject newProperties = (InternalEObject)properties;
+				NotificationChain msgs = oldProperties.eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.ITYPE__PROPERTIES, null, null);
+				if (newProperties.eInternalContainer() == null) {
+					msgs = newProperties.eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.ITYPE__PROPERTIES, null, msgs);
+				}
+				if (msgs != null) msgs.dispatch();
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.ITYPE__PROPERTIES, oldProperties, properties));
+			}
+		}
+		return properties;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IPropertyContainer basicGetProperties() {
+		return properties;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public NotificationChain basicSetProperties(IPropertyContainer newProperties, NotificationChain msgs) {
+		IPropertyContainer oldProperties = properties;
+		properties = newProperties;
+		if (eNotificationRequired()) {
+			ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, UMLRpyPackage.ITYPE__PROPERTIES, oldProperties, newProperties);
+			if (msgs == null) msgs = notification; else msgs.add(notification);
+		}
+		return msgs;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setProperties(IPropertyContainer newProperties) {
+		if (newProperties != properties) {
+			NotificationChain msgs = null;
+			if (properties != null)
+				msgs = ((InternalEObject)properties).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.ITYPE__PROPERTIES, null, msgs);
+			if (newProperties != null)
+				msgs = ((InternalEObject)newProperties).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.ITYPE__PROPERTIES, null, msgs);
+			msgs = basicSetProperties(newProperties, msgs);
+			if (msgs != null) msgs.dispatch();
+		}
+		else if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.ITYPE__PROPERTIES, newProperties, newProperties));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IDescription getDescription() {
+		if (description != null && description.eIsProxy()) {
+			InternalEObject oldDescription = (InternalEObject)description;
+			description = (IDescription)eResolveProxy(oldDescription);
+			if (description != oldDescription) {
+				InternalEObject newDescription = (InternalEObject)description;
+				NotificationChain msgs = oldDescription.eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.ITYPE__DESCRIPTION, null, null);
+				if (newDescription.eInternalContainer() == null) {
+					msgs = newDescription.eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.ITYPE__DESCRIPTION, null, msgs);
+				}
+				if (msgs != null) msgs.dispatch();
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.ITYPE__DESCRIPTION, oldDescription, description));
+			}
+		}
+		return description;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IDescription basicGetDescription() {
+		return description;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public NotificationChain basicSetDescription(IDescription newDescription, NotificationChain msgs) {
+		IDescription oldDescription = description;
+		description = newDescription;
+		if (eNotificationRequired()) {
+			ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, UMLRpyPackage.ITYPE__DESCRIPTION, oldDescription, newDescription);
+			if (msgs == null) msgs = notification; else msgs.add(notification);
+		}
+		return msgs;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setDescription(IDescription newDescription) {
+		if (newDescription != description) {
+			NotificationChain msgs = null;
+			if (description != null)
+				msgs = ((InternalEObject)description).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.ITYPE__DESCRIPTION, null, msgs);
+			if (newDescription != null)
+				msgs = ((InternalEObject)newDescription).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.ITYPE__DESCRIPTION, null, msgs);
+			msgs = basicSetDescription(newDescription, msgs);
+			if (msgs != null) msgs.dispatch();
+		}
+		else if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.ITYPE__DESCRIPTION, newDescription, newDescription));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getDeclaration() {
+		return declaration;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setDeclaration(String newDeclaration) {
+		String oldDeclaration = declaration;
+		declaration = newDeclaration;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.ITYPE__DECLARATION, oldDeclaration, declaration));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IUnit getStereotypes() {
+		if (stereotypes != null && stereotypes.eIsProxy()) {
+			InternalEObject oldStereotypes = (InternalEObject)stereotypes;
+			stereotypes = (IUnit)eResolveProxy(oldStereotypes);
+			if (stereotypes != oldStereotypes) {
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.ITYPE__STEREOTYPES, oldStereotypes, stereotypes));
+			}
+		}
+		return stereotypes;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IUnit basicGetStereotypes() {
+		return stereotypes;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setStereotypes(IUnit newStereotypes) {
+		IUnit oldStereotypes = stereotypes;
+		stereotypes = newStereotypes;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.ITYPE__STEREOTYPES, oldStereotypes, stereotypes));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<IAttribute> getAttrs() {
+		if (attrs == null) {
+			attrs = new EObjectContainmentEList.Resolving<IAttribute>(IAttribute.class, this, UMLRpyPackage.ITYPE__ATTRS);
+		}
+		return attrs;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<UnknownType> getAssociationElements() {
+		if (associationElements == null) {
+			associationElements = new EObjectResolvingEList<UnknownType>(UnknownType.class, this, UMLRpyPackage.ITYPE__ASSOCIATION_ELEMENTS);
+		}
+		return associationElements;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<ITag> getTags() {
+		if (tags == null) {
+			tags = new EObjectContainmentEList.Resolving<ITag>(ITag.class, this, UMLRpyPackage.ITYPE__TAGS);
+		}
+		return tags;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IUnit getTypedefBaseType() {
+		if (typedefBaseType != null && typedefBaseType.eIsProxy()) {
+			InternalEObject oldTypedefBaseType = (InternalEObject)typedefBaseType;
+			typedefBaseType = (IUnit)eResolveProxy(oldTypedefBaseType);
+			if (typedefBaseType != oldTypedefBaseType) {
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.ITYPE__TYPEDEF_BASE_TYPE, oldTypedefBaseType, typedefBaseType));
+			}
+		}
+		return typedefBaseType;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IUnit basicGetTypedefBaseType() {
+		return typedefBaseType;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setTypedefBaseType(IUnit newTypedefBaseType) {
+		IUnit oldTypedefBaseType = typedefBaseType;
+		typedefBaseType = newTypedefBaseType;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.ITYPE__TYPEDEF_BASE_TYPE, oldTypedefBaseType, typedefBaseType));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getTypedefMultiplicity() {
+		return typedefMultiplicity;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setTypedefMultiplicity(String newTypedefMultiplicity) {
+		String oldTypedefMultiplicity = typedefMultiplicity;
+		typedefMultiplicity = newTypedefMultiplicity;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.ITYPE__TYPEDEF_MULTIPLICITY, oldTypedefMultiplicity, typedefMultiplicity));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getTypedefIsOrdered() {
+		return typedefIsOrdered;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setTypedefIsOrdered(String newTypedefIsOrdered) {
+		String oldTypedefIsOrdered = typedefIsOrdered;
+		typedefIsOrdered = newTypedefIsOrdered;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.ITYPE__TYPEDEF_IS_ORDERED, oldTypedefIsOrdered, typedefIsOrdered));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getTypedefIsReference() {
+		return typedefIsReference;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setTypedefIsReference(String newTypedefIsReference) {
+		String oldTypedefIsReference = typedefIsReference;
+		typedefIsReference = newTypedefIsReference;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.ITYPE__TYPEDEF_IS_REFERENCE, oldTypedefIsReference, typedefIsReference));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getTypedefIsConstant() {
+		return typedefIsConstant;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setTypedefIsConstant(String newTypedefIsConstant) {
+		String oldTypedefIsConstant = typedefIsConstant;
+		typedefIsConstant = newTypedefIsConstant;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.ITYPE__TYPEDEF_IS_CONSTANT, oldTypedefIsConstant, typedefIsConstant));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getRequiremenTracabilityHandle() {
+		return requiremenTracabilityHandle;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setRequiremenTracabilityHandle(String newRequiremenTracabilityHandle) {
+		String oldRequiremenTracabilityHandle = requiremenTracabilityHandle;
+		requiremenTracabilityHandle = newRequiremenTracabilityHandle;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.ITYPE__REQUIREMEN_TRACABILITY_HANDLE, oldRequiremenTracabilityHandle, requiremenTracabilityHandle));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<String> getCodeUpdateCGTime() {
+		if (codeUpdateCGTime == null) {
+			codeUpdateCGTime = new EDataTypeEList<String>(String.class, this, UMLRpyPackage.ITYPE__CODE_UPDATE_CG_TIME);
+		}
+		return codeUpdateCGTime;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IDiagram getTheMainDiagram() {
+		if (theMainDiagram != null && theMainDiagram.eIsProxy()) {
+			InternalEObject oldTheMainDiagram = (InternalEObject)theMainDiagram;
+			theMainDiagram = (IDiagram)eResolveProxy(oldTheMainDiagram);
+			if (theMainDiagram != oldTheMainDiagram) {
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.ITYPE__THE_MAIN_DIAGRAM, oldTheMainDiagram, theMainDiagram));
+			}
+		}
+		return theMainDiagram;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IDiagram basicGetTheMainDiagram() {
+		return theMainDiagram;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setTheMainDiagram(IDiagram newTheMainDiagram) {
+		IDiagram oldTheMainDiagram = theMainDiagram;
+		theMainDiagram = newTheMainDiagram;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.ITYPE__THE_MAIN_DIAGRAM, oldTheMainDiagram, theMainDiagram));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
+		switch (featureID) {
+			case UMLRpyPackage.ITYPE__LITERALS:
+				return ((InternalEList<?>)getLiterals()).basicRemove(otherEnd, msgs);
+			case UMLRpyPackage.ITYPE__PROPERTIES:
+				return basicSetProperties(null, msgs);
+			case UMLRpyPackage.ITYPE__DESCRIPTION:
+				return basicSetDescription(null, msgs);
+			case UMLRpyPackage.ITYPE__ATTRS:
+				return ((InternalEList<?>)getAttrs()).basicRemove(otherEnd, msgs);
+			case UMLRpyPackage.ITYPE__TAGS:
+				return ((InternalEList<?>)getTags()).basicRemove(otherEnd, msgs);
+		}
+		return super.eInverseRemove(otherEnd, featureID, msgs);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object eGet(int featureID, boolean resolve, boolean coreType) {
+		switch (featureID) {
+			case UMLRpyPackage.ITYPE__UML_DEPENDENCY_ID:
+				return getUmlDependencyID();
+			case UMLRpyPackage.ITYPE__OBJECT_CREATION:
+				return getObjectCreation();
+			case UMLRpyPackage.ITYPE__MODIFIED_TIME_WEAK:
+				return getModifiedTimeWeak();
+			case UMLRpyPackage.ITYPE__ID:
+				return getId();
+			case UMLRpyPackage.ITYPE__MY_STATE:
+				return getMyState();
+			case UMLRpyPackage.ITYPE__NAME:
+				return getName();
+			case UMLRpyPackage.ITYPE__LAST_ID:
+				return getLastID();
+			case UMLRpyPackage.ITYPE__LITERALS:
+				return getLiterals();
+			case UMLRpyPackage.ITYPE__KIND:
+				return getKind();
+			case UMLRpyPackage.ITYPE__PROPERTIES:
+				if (resolve) return getProperties();
+				return basicGetProperties();
+			case UMLRpyPackage.ITYPE__DESCRIPTION:
+				if (resolve) return getDescription();
+				return basicGetDescription();
+			case UMLRpyPackage.ITYPE__DECLARATION:
+				return getDeclaration();
+			case UMLRpyPackage.ITYPE__STEREOTYPES:
+				if (resolve) return getStereotypes();
+				return basicGetStereotypes();
+			case UMLRpyPackage.ITYPE__ATTRS:
+				return getAttrs();
+			case UMLRpyPackage.ITYPE__ASSOCIATION_ELEMENTS:
+				return getAssociationElements();
+			case UMLRpyPackage.ITYPE__TAGS:
+				return getTags();
+			case UMLRpyPackage.ITYPE__TYPEDEF_BASE_TYPE:
+				if (resolve) return getTypedefBaseType();
+				return basicGetTypedefBaseType();
+			case UMLRpyPackage.ITYPE__TYPEDEF_MULTIPLICITY:
+				return getTypedefMultiplicity();
+			case UMLRpyPackage.ITYPE__TYPEDEF_IS_ORDERED:
+				return getTypedefIsOrdered();
+			case UMLRpyPackage.ITYPE__TYPEDEF_IS_REFERENCE:
+				return getTypedefIsReference();
+			case UMLRpyPackage.ITYPE__TYPEDEF_IS_CONSTANT:
+				return getTypedefIsConstant();
+			case UMLRpyPackage.ITYPE__REQUIREMEN_TRACABILITY_HANDLE:
+				return getRequiremenTracabilityHandle();
+			case UMLRpyPackage.ITYPE__CODE_UPDATE_CG_TIME:
+				return getCodeUpdateCGTime();
+			case UMLRpyPackage.ITYPE__THE_MAIN_DIAGRAM:
+				if (resolve) return getTheMainDiagram();
+				return basicGetTheMainDiagram();
+		}
+		return super.eGet(featureID, resolve, coreType);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@SuppressWarnings("unchecked")
+	@Override
+	public void eSet(int featureID, Object newValue) {
+		switch (featureID) {
+			case UMLRpyPackage.ITYPE__UML_DEPENDENCY_ID:
+				setUmlDependencyID((String)newValue);
+				return;
+			case UMLRpyPackage.ITYPE__OBJECT_CREATION:
+				setObjectCreation((String)newValue);
+				return;
+			case UMLRpyPackage.ITYPE__MODIFIED_TIME_WEAK:
+				getModifiedTimeWeak().clear();
+				getModifiedTimeWeak().addAll((Collection<? extends String>)newValue);
+				return;
+			case UMLRpyPackage.ITYPE__ID:
+				setId((String)newValue);
+				return;
+			case UMLRpyPackage.ITYPE__MY_STATE:
+				setMyState((String)newValue);
+				return;
+			case UMLRpyPackage.ITYPE__NAME:
+				setName((String)newValue);
+				return;
+			case UMLRpyPackage.ITYPE__LAST_ID:
+				setLastID((String)newValue);
+				return;
+			case UMLRpyPackage.ITYPE__LITERALS:
+				getLiterals().clear();
+				getLiterals().addAll((Collection<? extends IEnumerationLiteral>)newValue);
+				return;
+			case UMLRpyPackage.ITYPE__KIND:
+				setKind((String)newValue);
+				return;
+			case UMLRpyPackage.ITYPE__PROPERTIES:
+				setProperties((IPropertyContainer)newValue);
+				return;
+			case UMLRpyPackage.ITYPE__DESCRIPTION:
+				setDescription((IDescription)newValue);
+				return;
+			case UMLRpyPackage.ITYPE__DECLARATION:
+				setDeclaration((String)newValue);
+				return;
+			case UMLRpyPackage.ITYPE__STEREOTYPES:
+				setStereotypes((IUnit)newValue);
+				return;
+			case UMLRpyPackage.ITYPE__ATTRS:
+				getAttrs().clear();
+				getAttrs().addAll((Collection<? extends IAttribute>)newValue);
+				return;
+			case UMLRpyPackage.ITYPE__ASSOCIATION_ELEMENTS:
+				getAssociationElements().clear();
+				getAssociationElements().addAll((Collection<? extends UnknownType>)newValue);
+				return;
+			case UMLRpyPackage.ITYPE__TAGS:
+				getTags().clear();
+				getTags().addAll((Collection<? extends ITag>)newValue);
+				return;
+			case UMLRpyPackage.ITYPE__TYPEDEF_BASE_TYPE:
+				setTypedefBaseType((IUnit)newValue);
+				return;
+			case UMLRpyPackage.ITYPE__TYPEDEF_MULTIPLICITY:
+				setTypedefMultiplicity((String)newValue);
+				return;
+			case UMLRpyPackage.ITYPE__TYPEDEF_IS_ORDERED:
+				setTypedefIsOrdered((String)newValue);
+				return;
+			case UMLRpyPackage.ITYPE__TYPEDEF_IS_REFERENCE:
+				setTypedefIsReference((String)newValue);
+				return;
+			case UMLRpyPackage.ITYPE__TYPEDEF_IS_CONSTANT:
+				setTypedefIsConstant((String)newValue);
+				return;
+			case UMLRpyPackage.ITYPE__REQUIREMEN_TRACABILITY_HANDLE:
+				setRequiremenTracabilityHandle((String)newValue);
+				return;
+			case UMLRpyPackage.ITYPE__CODE_UPDATE_CG_TIME:
+				getCodeUpdateCGTime().clear();
+				getCodeUpdateCGTime().addAll((Collection<? extends String>)newValue);
+				return;
+			case UMLRpyPackage.ITYPE__THE_MAIN_DIAGRAM:
+				setTheMainDiagram((IDiagram)newValue);
+				return;
+		}
+		super.eSet(featureID, newValue);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void eUnset(int featureID) {
+		switch (featureID) {
+			case UMLRpyPackage.ITYPE__UML_DEPENDENCY_ID:
+				setUmlDependencyID(UML_DEPENDENCY_ID_EDEFAULT);
+				return;
+			case UMLRpyPackage.ITYPE__OBJECT_CREATION:
+				setObjectCreation(OBJECT_CREATION_EDEFAULT);
+				return;
+			case UMLRpyPackage.ITYPE__MODIFIED_TIME_WEAK:
+				getModifiedTimeWeak().clear();
+				return;
+			case UMLRpyPackage.ITYPE__ID:
+				setId(ID_EDEFAULT);
+				return;
+			case UMLRpyPackage.ITYPE__MY_STATE:
+				setMyState(MY_STATE_EDEFAULT);
+				return;
+			case UMLRpyPackage.ITYPE__NAME:
+				setName(NAME_EDEFAULT);
+				return;
+			case UMLRpyPackage.ITYPE__LAST_ID:
+				setLastID(LAST_ID_EDEFAULT);
+				return;
+			case UMLRpyPackage.ITYPE__LITERALS:
+				getLiterals().clear();
+				return;
+			case UMLRpyPackage.ITYPE__KIND:
+				setKind(KIND_EDEFAULT);
+				return;
+			case UMLRpyPackage.ITYPE__PROPERTIES:
+				setProperties((IPropertyContainer)null);
+				return;
+			case UMLRpyPackage.ITYPE__DESCRIPTION:
+				setDescription((IDescription)null);
+				return;
+			case UMLRpyPackage.ITYPE__DECLARATION:
+				setDeclaration(DECLARATION_EDEFAULT);
+				return;
+			case UMLRpyPackage.ITYPE__STEREOTYPES:
+				setStereotypes((IUnit)null);
+				return;
+			case UMLRpyPackage.ITYPE__ATTRS:
+				getAttrs().clear();
+				return;
+			case UMLRpyPackage.ITYPE__ASSOCIATION_ELEMENTS:
+				getAssociationElements().clear();
+				return;
+			case UMLRpyPackage.ITYPE__TAGS:
+				getTags().clear();
+				return;
+			case UMLRpyPackage.ITYPE__TYPEDEF_BASE_TYPE:
+				setTypedefBaseType((IUnit)null);
+				return;
+			case UMLRpyPackage.ITYPE__TYPEDEF_MULTIPLICITY:
+				setTypedefMultiplicity(TYPEDEF_MULTIPLICITY_EDEFAULT);
+				return;
+			case UMLRpyPackage.ITYPE__TYPEDEF_IS_ORDERED:
+				setTypedefIsOrdered(TYPEDEF_IS_ORDERED_EDEFAULT);
+				return;
+			case UMLRpyPackage.ITYPE__TYPEDEF_IS_REFERENCE:
+				setTypedefIsReference(TYPEDEF_IS_REFERENCE_EDEFAULT);
+				return;
+			case UMLRpyPackage.ITYPE__TYPEDEF_IS_CONSTANT:
+				setTypedefIsConstant(TYPEDEF_IS_CONSTANT_EDEFAULT);
+				return;
+			case UMLRpyPackage.ITYPE__REQUIREMEN_TRACABILITY_HANDLE:
+				setRequiremenTracabilityHandle(REQUIREMEN_TRACABILITY_HANDLE_EDEFAULT);
+				return;
+			case UMLRpyPackage.ITYPE__CODE_UPDATE_CG_TIME:
+				getCodeUpdateCGTime().clear();
+				return;
+			case UMLRpyPackage.ITYPE__THE_MAIN_DIAGRAM:
+				setTheMainDiagram((IDiagram)null);
+				return;
+		}
+		super.eUnset(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public boolean eIsSet(int featureID) {
+		switch (featureID) {
+			case UMLRpyPackage.ITYPE__UML_DEPENDENCY_ID:
+				return UML_DEPENDENCY_ID_EDEFAULT == null ? umlDependencyID != null : !UML_DEPENDENCY_ID_EDEFAULT.equals(umlDependencyID);
+			case UMLRpyPackage.ITYPE__OBJECT_CREATION:
+				return OBJECT_CREATION_EDEFAULT == null ? objectCreation != null : !OBJECT_CREATION_EDEFAULT.equals(objectCreation);
+			case UMLRpyPackage.ITYPE__MODIFIED_TIME_WEAK:
+				return modifiedTimeWeak != null && !modifiedTimeWeak.isEmpty();
+			case UMLRpyPackage.ITYPE__ID:
+				return ID_EDEFAULT == null ? id != null : !ID_EDEFAULT.equals(id);
+			case UMLRpyPackage.ITYPE__MY_STATE:
+				return MY_STATE_EDEFAULT == null ? myState != null : !MY_STATE_EDEFAULT.equals(myState);
+			case UMLRpyPackage.ITYPE__NAME:
+				return NAME_EDEFAULT == null ? name != null : !NAME_EDEFAULT.equals(name);
+			case UMLRpyPackage.ITYPE__LAST_ID:
+				return LAST_ID_EDEFAULT == null ? lastID != null : !LAST_ID_EDEFAULT.equals(lastID);
+			case UMLRpyPackage.ITYPE__LITERALS:
+				return literals != null && !literals.isEmpty();
+			case UMLRpyPackage.ITYPE__KIND:
+				return KIND_EDEFAULT == null ? kind != null : !KIND_EDEFAULT.equals(kind);
+			case UMLRpyPackage.ITYPE__PROPERTIES:
+				return properties != null;
+			case UMLRpyPackage.ITYPE__DESCRIPTION:
+				return description != null;
+			case UMLRpyPackage.ITYPE__DECLARATION:
+				return DECLARATION_EDEFAULT == null ? declaration != null : !DECLARATION_EDEFAULT.equals(declaration);
+			case UMLRpyPackage.ITYPE__STEREOTYPES:
+				return stereotypes != null;
+			case UMLRpyPackage.ITYPE__ATTRS:
+				return attrs != null && !attrs.isEmpty();
+			case UMLRpyPackage.ITYPE__ASSOCIATION_ELEMENTS:
+				return associationElements != null && !associationElements.isEmpty();
+			case UMLRpyPackage.ITYPE__TAGS:
+				return tags != null && !tags.isEmpty();
+			case UMLRpyPackage.ITYPE__TYPEDEF_BASE_TYPE:
+				return typedefBaseType != null;
+			case UMLRpyPackage.ITYPE__TYPEDEF_MULTIPLICITY:
+				return TYPEDEF_MULTIPLICITY_EDEFAULT == null ? typedefMultiplicity != null : !TYPEDEF_MULTIPLICITY_EDEFAULT.equals(typedefMultiplicity);
+			case UMLRpyPackage.ITYPE__TYPEDEF_IS_ORDERED:
+				return TYPEDEF_IS_ORDERED_EDEFAULT == null ? typedefIsOrdered != null : !TYPEDEF_IS_ORDERED_EDEFAULT.equals(typedefIsOrdered);
+			case UMLRpyPackage.ITYPE__TYPEDEF_IS_REFERENCE:
+				return TYPEDEF_IS_REFERENCE_EDEFAULT == null ? typedefIsReference != null : !TYPEDEF_IS_REFERENCE_EDEFAULT.equals(typedefIsReference);
+			case UMLRpyPackage.ITYPE__TYPEDEF_IS_CONSTANT:
+				return TYPEDEF_IS_CONSTANT_EDEFAULT == null ? typedefIsConstant != null : !TYPEDEF_IS_CONSTANT_EDEFAULT.equals(typedefIsConstant);
+			case UMLRpyPackage.ITYPE__REQUIREMEN_TRACABILITY_HANDLE:
+				return REQUIREMEN_TRACABILITY_HANDLE_EDEFAULT == null ? requiremenTracabilityHandle != null : !REQUIREMEN_TRACABILITY_HANDLE_EDEFAULT.equals(requiremenTracabilityHandle);
+			case UMLRpyPackage.ITYPE__CODE_UPDATE_CG_TIME:
+				return codeUpdateCGTime != null && !codeUpdateCGTime.isEmpty();
+			case UMLRpyPackage.ITYPE__THE_MAIN_DIAGRAM:
+				return theMainDiagram != null;
+		}
+		return super.eIsSet(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public int eBaseStructuralFeatureID(int derivedFeatureID, Class<?> baseClass) {
+		if (baseClass == DeclarativesType.class) {
+			switch (derivedFeatureID) {
+				default: return -1;
+			}
+		}
+		if (baseClass == ElementsType.class) {
+			switch (derivedFeatureID) {
+				default: return -1;
+			}
+		}
+		if (baseClass == DependsOnType.class) {
+			switch (derivedFeatureID) {
+				default: return -1;
+			}
+		}
+		if (baseClass == M_subjectType.class) {
+			switch (derivedFeatureID) {
+				case UMLRpyPackage.ITYPE__UML_DEPENDENCY_ID: return UMLRpyPackage.MSUBJECT_TYPE__UML_DEPENDENCY_ID;
+				case UMLRpyPackage.ITYPE__OBJECT_CREATION: return UMLRpyPackage.MSUBJECT_TYPE__OBJECT_CREATION;
+				default: return -1;
+			}
+		}
+		if (baseClass == ValueType.class) {
+			switch (derivedFeatureID) {
+				case UMLRpyPackage.ITYPE__MODIFIED_TIME_WEAK: return UMLRpyPackage.VALUE_TYPE__MODIFIED_TIME_WEAK;
+				case UMLRpyPackage.ITYPE__ID: return UMLRpyPackage.VALUE_TYPE__ID;
+				case UMLRpyPackage.ITYPE__MY_STATE: return UMLRpyPackage.VALUE_TYPE__MY_STATE;
+				case UMLRpyPackage.ITYPE__NAME: return UMLRpyPackage.VALUE_TYPE__NAME;
+				default: return -1;
+			}
+		}
+		if (baseClass == TargetType.class) {
+			switch (derivedFeatureID) {
+				default: return -1;
+			}
+		}
+		if (baseClass == M_pModelObjectType.class) {
+			switch (derivedFeatureID) {
+				default: return -1;
+			}
+		}
+		return super.eBaseStructuralFeatureID(derivedFeatureID, baseClass);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public int eDerivedStructuralFeatureID(int baseFeatureID, Class<?> baseClass) {
+		if (baseClass == DeclarativesType.class) {
+			switch (baseFeatureID) {
+				default: return -1;
+			}
+		}
+		if (baseClass == ElementsType.class) {
+			switch (baseFeatureID) {
+				default: return -1;
+			}
+		}
+		if (baseClass == DependsOnType.class) {
+			switch (baseFeatureID) {
+				default: return -1;
+			}
+		}
+		if (baseClass == M_subjectType.class) {
+			switch (baseFeatureID) {
+				case UMLRpyPackage.MSUBJECT_TYPE__UML_DEPENDENCY_ID: return UMLRpyPackage.ITYPE__UML_DEPENDENCY_ID;
+				case UMLRpyPackage.MSUBJECT_TYPE__OBJECT_CREATION: return UMLRpyPackage.ITYPE__OBJECT_CREATION;
+				default: return -1;
+			}
+		}
+		if (baseClass == ValueType.class) {
+			switch (baseFeatureID) {
+				case UMLRpyPackage.VALUE_TYPE__MODIFIED_TIME_WEAK: return UMLRpyPackage.ITYPE__MODIFIED_TIME_WEAK;
+				case UMLRpyPackage.VALUE_TYPE__ID: return UMLRpyPackage.ITYPE__ID;
+				case UMLRpyPackage.VALUE_TYPE__MY_STATE: return UMLRpyPackage.ITYPE__MY_STATE;
+				case UMLRpyPackage.VALUE_TYPE__NAME: return UMLRpyPackage.ITYPE__NAME;
+				default: return -1;
+			}
+		}
+		if (baseClass == TargetType.class) {
+			switch (baseFeatureID) {
+				default: return -1;
+			}
+		}
+		if (baseClass == M_pModelObjectType.class) {
+			switch (baseFeatureID) {
+				default: return -1;
+			}
+		}
+		return super.eDerivedStructuralFeatureID(baseFeatureID, baseClass);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String toString() {
+		if (eIsProxy()) return super.toString();
+
+		StringBuffer result = new StringBuffer(super.toString());
+		result.append(" (umlDependencyID: "); //$NON-NLS-1$
+		result.append(umlDependencyID);
+		result.append(", objectCreation: "); //$NON-NLS-1$
+		result.append(objectCreation);
+		result.append(", modifiedTimeWeak: "); //$NON-NLS-1$
+		result.append(modifiedTimeWeak);
+		result.append(", id: "); //$NON-NLS-1$
+		result.append(id);
+		result.append(", myState: "); //$NON-NLS-1$
+		result.append(myState);
+		result.append(", name: "); //$NON-NLS-1$
+		result.append(name);
+		result.append(", lastID: "); //$NON-NLS-1$
+		result.append(lastID);
+		result.append(", kind: "); //$NON-NLS-1$
+		result.append(kind);
+		result.append(", declaration: "); //$NON-NLS-1$
+		result.append(declaration);
+		result.append(", typedefMultiplicity: "); //$NON-NLS-1$
+		result.append(typedefMultiplicity);
+		result.append(", typedefIsOrdered: "); //$NON-NLS-1$
+		result.append(typedefIsOrdered);
+		result.append(", typedefIsReference: "); //$NON-NLS-1$
+		result.append(typedefIsReference);
+		result.append(", typedefIsConstant: "); //$NON-NLS-1$
+		result.append(typedefIsConstant);
+		result.append(", requiremenTracabilityHandle: "); //$NON-NLS-1$
+		result.append(requiremenTracabilityHandle);
+		result.append(", codeUpdateCGTime: "); //$NON-NLS-1$
+		result.append(codeUpdateCGTime);
+		result.append(')');
+		return result.toString();
+	}
+
+} //ITypeImpl
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/IUCDiagramImpl.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/IUCDiagramImpl.java
new file mode 100755
index 0000000..8edd01e
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/IUCDiagramImpl.java
@@ -0,0 +1,368 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl;
+
+import org.eclipse.emf.common.notify.Notification;
+import org.eclipse.emf.common.notify.NotificationChain;
+
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.InternalEObject;
+
+import org.eclipse.emf.ecore.impl.ENotificationImpl;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIClassChart;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IPropertyContainer;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IUCDiagram;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>IUC Diagram</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * </p>
+ * <ul>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IUCDiagramImpl#getProperties <em>Properties</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IUCDiagramImpl#getGraphicChart <em>Graphic Chart</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IUCDiagramImpl#getModifiedTimeWeak <em>Modified Time Weak</em>}</li>
+ * </ul>
+ *
+ * @generated
+ */
+public class IUCDiagramImpl extends TheMainDiagramTypeImpl implements IUCDiagram {
+	/**
+	 * The cached value of the '{@link #getProperties() <em>Properties</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getProperties()
+	 * @generated
+	 * @ordered
+	 */
+	protected IPropertyContainer properties;
+
+	/**
+	 * The cached value of the '{@link #getGraphicChart() <em>Graphic Chart</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getGraphicChart()
+	 * @generated
+	 * @ordered
+	 */
+	protected CGIClassChart graphicChart;
+
+	/**
+	 * The default value of the '{@link #getModifiedTimeWeak() <em>Modified Time Weak</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getModifiedTimeWeak()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String MODIFIED_TIME_WEAK_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getModifiedTimeWeak() <em>Modified Time Weak</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getModifiedTimeWeak()
+	 * @generated
+	 * @ordered
+	 */
+	protected String modifiedTimeWeak = MODIFIED_TIME_WEAK_EDEFAULT;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected IUCDiagramImpl() {
+		super();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EClass eStaticClass() {
+		return UMLRpyPackage.eINSTANCE.getIUCDiagram();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IPropertyContainer getProperties() {
+		if (properties != null && properties.eIsProxy()) {
+			InternalEObject oldProperties = (InternalEObject)properties;
+			properties = (IPropertyContainer)eResolveProxy(oldProperties);
+			if (properties != oldProperties) {
+				InternalEObject newProperties = (InternalEObject)properties;
+				NotificationChain msgs = oldProperties.eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IUC_DIAGRAM__PROPERTIES, null, null);
+				if (newProperties.eInternalContainer() == null) {
+					msgs = newProperties.eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IUC_DIAGRAM__PROPERTIES, null, msgs);
+				}
+				if (msgs != null) msgs.dispatch();
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.IUC_DIAGRAM__PROPERTIES, oldProperties, properties));
+			}
+		}
+		return properties;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IPropertyContainer basicGetProperties() {
+		return properties;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public NotificationChain basicSetProperties(IPropertyContainer newProperties, NotificationChain msgs) {
+		IPropertyContainer oldProperties = properties;
+		properties = newProperties;
+		if (eNotificationRequired()) {
+			ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IUC_DIAGRAM__PROPERTIES, oldProperties, newProperties);
+			if (msgs == null) msgs = notification; else msgs.add(notification);
+		}
+		return msgs;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setProperties(IPropertyContainer newProperties) {
+		if (newProperties != properties) {
+			NotificationChain msgs = null;
+			if (properties != null)
+				msgs = ((InternalEObject)properties).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IUC_DIAGRAM__PROPERTIES, null, msgs);
+			if (newProperties != null)
+				msgs = ((InternalEObject)newProperties).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IUC_DIAGRAM__PROPERTIES, null, msgs);
+			msgs = basicSetProperties(newProperties, msgs);
+			if (msgs != null) msgs.dispatch();
+		}
+		else if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IUC_DIAGRAM__PROPERTIES, newProperties, newProperties));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public CGIClassChart getGraphicChart() {
+		if (graphicChart != null && graphicChart.eIsProxy()) {
+			InternalEObject oldGraphicChart = (InternalEObject)graphicChart;
+			graphicChart = (CGIClassChart)eResolveProxy(oldGraphicChart);
+			if (graphicChart != oldGraphicChart) {
+				InternalEObject newGraphicChart = (InternalEObject)graphicChart;
+				NotificationChain msgs = oldGraphicChart.eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IUC_DIAGRAM__GRAPHIC_CHART, null, null);
+				if (newGraphicChart.eInternalContainer() == null) {
+					msgs = newGraphicChart.eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IUC_DIAGRAM__GRAPHIC_CHART, null, msgs);
+				}
+				if (msgs != null) msgs.dispatch();
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.IUC_DIAGRAM__GRAPHIC_CHART, oldGraphicChart, graphicChart));
+			}
+		}
+		return graphicChart;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public CGIClassChart basicGetGraphicChart() {
+		return graphicChart;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public NotificationChain basicSetGraphicChart(CGIClassChart newGraphicChart, NotificationChain msgs) {
+		CGIClassChart oldGraphicChart = graphicChart;
+		graphicChart = newGraphicChart;
+		if (eNotificationRequired()) {
+			ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IUC_DIAGRAM__GRAPHIC_CHART, oldGraphicChart, newGraphicChart);
+			if (msgs == null) msgs = notification; else msgs.add(notification);
+		}
+		return msgs;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setGraphicChart(CGIClassChart newGraphicChart) {
+		if (newGraphicChart != graphicChart) {
+			NotificationChain msgs = null;
+			if (graphicChart != null)
+				msgs = ((InternalEObject)graphicChart).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IUC_DIAGRAM__GRAPHIC_CHART, null, msgs);
+			if (newGraphicChart != null)
+				msgs = ((InternalEObject)newGraphicChart).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IUC_DIAGRAM__GRAPHIC_CHART, null, msgs);
+			msgs = basicSetGraphicChart(newGraphicChart, msgs);
+			if (msgs != null) msgs.dispatch();
+		}
+		else if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IUC_DIAGRAM__GRAPHIC_CHART, newGraphicChart, newGraphicChart));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getModifiedTimeWeak() {
+		return modifiedTimeWeak;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setModifiedTimeWeak(String newModifiedTimeWeak) {
+		String oldModifiedTimeWeak = modifiedTimeWeak;
+		modifiedTimeWeak = newModifiedTimeWeak;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IUC_DIAGRAM__MODIFIED_TIME_WEAK, oldModifiedTimeWeak, modifiedTimeWeak));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
+		switch (featureID) {
+			case UMLRpyPackage.IUC_DIAGRAM__PROPERTIES:
+				return basicSetProperties(null, msgs);
+			case UMLRpyPackage.IUC_DIAGRAM__GRAPHIC_CHART:
+				return basicSetGraphicChart(null, msgs);
+		}
+		return super.eInverseRemove(otherEnd, featureID, msgs);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object eGet(int featureID, boolean resolve, boolean coreType) {
+		switch (featureID) {
+			case UMLRpyPackage.IUC_DIAGRAM__PROPERTIES:
+				if (resolve) return getProperties();
+				return basicGetProperties();
+			case UMLRpyPackage.IUC_DIAGRAM__GRAPHIC_CHART:
+				if (resolve) return getGraphicChart();
+				return basicGetGraphicChart();
+			case UMLRpyPackage.IUC_DIAGRAM__MODIFIED_TIME_WEAK:
+				return getModifiedTimeWeak();
+		}
+		return super.eGet(featureID, resolve, coreType);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void eSet(int featureID, Object newValue) {
+		switch (featureID) {
+			case UMLRpyPackage.IUC_DIAGRAM__PROPERTIES:
+				setProperties((IPropertyContainer)newValue);
+				return;
+			case UMLRpyPackage.IUC_DIAGRAM__GRAPHIC_CHART:
+				setGraphicChart((CGIClassChart)newValue);
+				return;
+			case UMLRpyPackage.IUC_DIAGRAM__MODIFIED_TIME_WEAK:
+				setModifiedTimeWeak((String)newValue);
+				return;
+		}
+		super.eSet(featureID, newValue);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void eUnset(int featureID) {
+		switch (featureID) {
+			case UMLRpyPackage.IUC_DIAGRAM__PROPERTIES:
+				setProperties((IPropertyContainer)null);
+				return;
+			case UMLRpyPackage.IUC_DIAGRAM__GRAPHIC_CHART:
+				setGraphicChart((CGIClassChart)null);
+				return;
+			case UMLRpyPackage.IUC_DIAGRAM__MODIFIED_TIME_WEAK:
+				setModifiedTimeWeak(MODIFIED_TIME_WEAK_EDEFAULT);
+				return;
+		}
+		super.eUnset(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public boolean eIsSet(int featureID) {
+		switch (featureID) {
+			case UMLRpyPackage.IUC_DIAGRAM__PROPERTIES:
+				return properties != null;
+			case UMLRpyPackage.IUC_DIAGRAM__GRAPHIC_CHART:
+				return graphicChart != null;
+			case UMLRpyPackage.IUC_DIAGRAM__MODIFIED_TIME_WEAK:
+				return MODIFIED_TIME_WEAK_EDEFAULT == null ? modifiedTimeWeak != null : !MODIFIED_TIME_WEAK_EDEFAULT.equals(modifiedTimeWeak);
+		}
+		return super.eIsSet(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String toString() {
+		if (eIsProxy()) return super.toString();
+
+		StringBuffer result = new StringBuffer(super.toString());
+		result.append(" (modifiedTimeWeak: "); //$NON-NLS-1$
+		result.append(modifiedTimeWeak);
+		result.append(')');
+		return result.toString();
+	}
+
+} //IUCDiagramImpl
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/IUnitImpl.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/IUnitImpl.java
new file mode 100755
index 0000000..f7244e4
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/IUnitImpl.java
@@ -0,0 +1,47 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl;
+
+import org.eclipse.emf.ecore.EClass;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IUnit;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>IUnit</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+public class IUnitImpl extends IModelElementImpl implements IUnit {
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected IUnitImpl() {
+		super();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EClass eStaticClass() {
+		return UMLRpyPackage.eINSTANCE.getIUnit();
+	}
+
+} //IUnitImpl
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/IUseCaseDiagramImpl.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/IUseCaseDiagramImpl.java
new file mode 100755
index 0000000..6b0d885
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/IUseCaseDiagramImpl.java
@@ -0,0 +1,47 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl;
+
+import org.eclipse.emf.ecore.EClass;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IUseCaseDiagram;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>IUse Case Diagram</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+public class IUseCaseDiagramImpl extends IDiagramImpl implements IUseCaseDiagram {
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected IUseCaseDiagramImpl() {
+		super();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EClass eStaticClass() {
+		return UMLRpyPackage.eINSTANCE.getIUseCaseDiagram();
+	}
+
+} //IUseCaseDiagramImpl
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/IUseCaseImpl.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/IUseCaseImpl.java
new file mode 100755
index 0000000..e3559a3
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/IUseCaseImpl.java
@@ -0,0 +1,1818 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl;
+
+import java.util.Collection;
+
+import org.eclipse.emf.common.notify.Notification;
+import org.eclipse.emf.common.notify.NotificationChain;
+
+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.EDataTypeEList;
+import org.eclipse.emf.ecore.util.EObjectContainmentEList;
+import org.eclipse.emf.ecore.util.EObjectResolvingEList;
+import org.eclipse.emf.ecore.util.InternalEList;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.AssociationsType;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.DeclarativesType;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.DependsOnType;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ElementsType;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.End1_Type;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.End2_Type;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IActivityGraph;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IAnnotation;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IAttribute;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IDependency;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IDescription;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IEmbededFile;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IGeneralization;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMHyperLink;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IObjectLink;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IPropertyContainer;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ISubsystem;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IUseCase;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IUseCaseStereoType;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.NestedStateChartType;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.OperationsType;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.TargetType;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.TheMainDiagramType;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>IUse Case</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * </p>
+ * <ul>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IUseCaseImpl#getMultiplicity <em>Multiplicity</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IUseCaseImpl#getId <em>Id</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IUseCaseImpl#getMyState <em>My State</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IUseCaseImpl#getName <em>Name</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IUseCaseImpl#getTheMainDiagram <em>The Main Diagram</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IUseCaseImpl#getHyperLinks <em>Hyper Links</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IUseCaseImpl#getWeakCGTime <em>Weak CG Time</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IUseCaseImpl#getStrongCGTime <em>Strong CG Time</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IUseCaseImpl#getClassModifier <em>Class Modifier</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IUseCaseImpl#getDescription <em>Description</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IUseCaseImpl#getInheritances <em>Inheritances</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IUseCaseImpl#getAssociations <em>Associations</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IUseCaseImpl#getUseCaseStereoTypes <em>Use Case Stereo Types</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IUseCaseImpl#getEntryPoints <em>Entry Points</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IUseCaseImpl#getDependencies <em>Dependencies</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IUseCaseImpl#getLastID <em>Last ID</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IUseCaseImpl#getDiagrams <em>Diagrams</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IUseCaseImpl#getModifiedTimeWeak <em>Modified Time Weak</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IUseCaseImpl#getRequiremenTracabilityHandle <em>Requiremen Tracability Handle</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IUseCaseImpl#getCmheader <em>Cmheader</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IUseCaseImpl#getOwnerHandle <em>Owner Handle</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IUseCaseImpl#getDeclaratives <em>Declaratives</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IUseCaseImpl#getOperations <em>Operations</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IUseCaseImpl#getStateCharts <em>State Charts</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IUseCaseImpl#getItsStateChart <em>Its State Chart</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IUseCaseImpl#getAttrs <em>Attrs</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IUseCaseImpl#getAnnotations <em>Annotations</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IUseCaseImpl#getEmbededFiles <em>Embeded Files</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IUseCaseImpl#getObjectCreation <em>Object Creation</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IUseCaseImpl#getUmlDependencyID <em>Uml Dependency ID</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IUseCaseImpl#getObjectLinks <em>Object Links</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IUseCaseImpl#getProperties <em>Properties</em>}</li>
+ * </ul>
+ *
+ * @generated
+ */
+public class IUseCaseImpl extends IClassifierImpl implements IUseCase {
+	/**
+	 * The default value of the '{@link #getMultiplicity() <em>Multiplicity</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getMultiplicity()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String MULTIPLICITY_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getMultiplicity() <em>Multiplicity</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getMultiplicity()
+	 * @generated
+	 * @ordered
+	 */
+	protected String multiplicity = MULTIPLICITY_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getId() <em>Id</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getId()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String ID_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getId() <em>Id</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getId()
+	 * @generated
+	 * @ordered
+	 */
+	protected String id = ID_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getMyState() <em>My State</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getMyState()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String MY_STATE_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getMyState() <em>My State</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getMyState()
+	 * @generated
+	 * @ordered
+	 */
+	protected String myState = MY_STATE_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getName() <em>Name</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getName()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String NAME_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getName() <em>Name</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getName()
+	 * @generated
+	 * @ordered
+	 */
+	protected String name = NAME_EDEFAULT;
+
+	/**
+	 * The cached value of the '{@link #getTheMainDiagram() <em>The Main Diagram</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getTheMainDiagram()
+	 * @generated
+	 * @ordered
+	 */
+	protected TheMainDiagramType theMainDiagram;
+
+	/**
+	 * The cached value of the '{@link #getHyperLinks() <em>Hyper Links</em>}' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getHyperLinks()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<IMHyperLink> hyperLinks;
+
+	/**
+	 * The cached value of the '{@link #getWeakCGTime() <em>Weak CG Time</em>}' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getWeakCGTime()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<String> weakCGTime;
+
+	/**
+	 * The cached value of the '{@link #getStrongCGTime() <em>Strong CG Time</em>}' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getStrongCGTime()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<String> strongCGTime;
+
+	/**
+	 * The default value of the '{@link #getClassModifier() <em>Class Modifier</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getClassModifier()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String CLASS_MODIFIER_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getClassModifier() <em>Class Modifier</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getClassModifier()
+	 * @generated
+	 * @ordered
+	 */
+	protected String classModifier = CLASS_MODIFIER_EDEFAULT;
+
+	/**
+	 * The cached value of the '{@link #getDescription() <em>Description</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getDescription()
+	 * @generated
+	 * @ordered
+	 */
+	protected IDescription description;
+
+	/**
+	 * The cached value of the '{@link #getInheritances() <em>Inheritances</em>}' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getInheritances()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<IGeneralization> inheritances;
+
+	/**
+	 * The cached value of the '{@link #getAssociations() <em>Associations</em>}' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getAssociations()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<AssociationsType> associations;
+
+	/**
+	 * The cached value of the '{@link #getUseCaseStereoTypes() <em>Use Case Stereo Types</em>}' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getUseCaseStereoTypes()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<IUseCaseStereoType> useCaseStereoTypes;
+
+	/**
+	 * The default value of the '{@link #getEntryPoints() <em>Entry Points</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getEntryPoints()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String ENTRY_POINTS_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getEntryPoints() <em>Entry Points</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getEntryPoints()
+	 * @generated
+	 * @ordered
+	 */
+	protected String entryPoints = ENTRY_POINTS_EDEFAULT;
+
+	/**
+	 * The cached value of the '{@link #getDependencies() <em>Dependencies</em>}' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getDependencies()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<IDependency> dependencies;
+
+	/**
+	 * The default value of the '{@link #getLastID() <em>Last ID</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getLastID()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String LAST_ID_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getLastID() <em>Last ID</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getLastID()
+	 * @generated
+	 * @ordered
+	 */
+	protected String lastID = LAST_ID_EDEFAULT;
+
+	/**
+	 * The cached value of the '{@link #getDiagrams() <em>Diagrams</em>}' reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getDiagrams()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<DeclarativesType> diagrams;
+
+	/**
+	 * The cached value of the '{@link #getModifiedTimeWeak() <em>Modified Time Weak</em>}' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getModifiedTimeWeak()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<String> modifiedTimeWeak;
+
+	/**
+	 * The default value of the '{@link #getRequiremenTracabilityHandle() <em>Requiremen Tracability Handle</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getRequiremenTracabilityHandle()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String REQUIREMEN_TRACABILITY_HANDLE_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getRequiremenTracabilityHandle() <em>Requiremen Tracability Handle</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getRequiremenTracabilityHandle()
+	 * @generated
+	 * @ordered
+	 */
+	protected String requiremenTracabilityHandle = REQUIREMEN_TRACABILITY_HANDLE_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getCmheader() <em>Cmheader</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getCmheader()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String CMHEADER_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getCmheader() <em>Cmheader</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getCmheader()
+	 * @generated
+	 * @ordered
+	 */
+	protected String cmheader = CMHEADER_EDEFAULT;
+
+	/**
+	 * The cached value of the '{@link #getOwnerHandle() <em>Owner Handle</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getOwnerHandle()
+	 * @generated
+	 * @ordered
+	 */
+	protected ISubsystem ownerHandle;
+
+	/**
+	 * The cached value of the '{@link #getDeclaratives() <em>Declaratives</em>}' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getDeclaratives()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<DependsOnType> declaratives;
+
+	/**
+	 * The cached value of the '{@link #getOperations() <em>Operations</em>}' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getOperations()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<OperationsType> operations;
+
+	/**
+	 * The cached value of the '{@link #getStateCharts() <em>State Charts</em>}' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getStateCharts()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<IActivityGraph> stateCharts;
+
+	/**
+	 * The cached value of the '{@link #getItsStateChart() <em>Its State Chart</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getItsStateChart()
+	 * @generated
+	 * @ordered
+	 */
+	protected NestedStateChartType itsStateChart;
+
+	/**
+	 * The cached value of the '{@link #getAttrs() <em>Attrs</em>}' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getAttrs()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<IAttribute> attrs;
+
+	/**
+	 * The cached value of the '{@link #getAnnotations() <em>Annotations</em>}' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getAnnotations()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<IAnnotation> annotations;
+
+	/**
+	 * The cached value of the '{@link #getEmbededFiles() <em>Embeded Files</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getEmbededFiles()
+	 * @generated
+	 * @ordered
+	 */
+	protected IEmbededFile embededFiles;
+
+	/**
+	 * The default value of the '{@link #getObjectCreation() <em>Object Creation</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getObjectCreation()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String OBJECT_CREATION_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getObjectCreation() <em>Object Creation</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getObjectCreation()
+	 * @generated
+	 * @ordered
+	 */
+	protected String objectCreation = OBJECT_CREATION_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getUmlDependencyID() <em>Uml Dependency ID</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getUmlDependencyID()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String UML_DEPENDENCY_ID_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getUmlDependencyID() <em>Uml Dependency ID</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getUmlDependencyID()
+	 * @generated
+	 * @ordered
+	 */
+	protected String umlDependencyID = UML_DEPENDENCY_ID_EDEFAULT;
+
+	/**
+	 * The cached value of the '{@link #getObjectLinks() <em>Object Links</em>}' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getObjectLinks()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<IObjectLink> objectLinks;
+
+	/**
+	 * The cached value of the '{@link #getProperties() <em>Properties</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getProperties()
+	 * @generated
+	 * @ordered
+	 */
+	protected IPropertyContainer properties;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected IUseCaseImpl() {
+		super();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EClass eStaticClass() {
+		return UMLRpyPackage.eINSTANCE.getIUseCase();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getMultiplicity() {
+		return multiplicity;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setMultiplicity(String newMultiplicity) {
+		String oldMultiplicity = multiplicity;
+		multiplicity = newMultiplicity;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IUSE_CASE__MULTIPLICITY, oldMultiplicity, multiplicity));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getId() {
+		return id;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setId(String newId) {
+		String oldId = id;
+		id = newId;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IUSE_CASE__ID, oldId, id));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getMyState() {
+		return myState;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setMyState(String newMyState) {
+		String oldMyState = myState;
+		myState = newMyState;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IUSE_CASE__MY_STATE, oldMyState, myState));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getName() {
+		return name;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setName(String newName) {
+		String oldName = name;
+		name = newName;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IUSE_CASE__NAME, oldName, name));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public TheMainDiagramType getTheMainDiagram() {
+		if (theMainDiagram != null && theMainDiagram.eIsProxy()) {
+			InternalEObject oldTheMainDiagram = (InternalEObject)theMainDiagram;
+			theMainDiagram = (TheMainDiagramType)eResolveProxy(oldTheMainDiagram);
+			if (theMainDiagram != oldTheMainDiagram) {
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.IUSE_CASE__THE_MAIN_DIAGRAM, oldTheMainDiagram, theMainDiagram));
+			}
+		}
+		return theMainDiagram;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public TheMainDiagramType basicGetTheMainDiagram() {
+		return theMainDiagram;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setTheMainDiagram(TheMainDiagramType newTheMainDiagram) {
+		TheMainDiagramType oldTheMainDiagram = theMainDiagram;
+		theMainDiagram = newTheMainDiagram;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IUSE_CASE__THE_MAIN_DIAGRAM, oldTheMainDiagram, theMainDiagram));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<IMHyperLink> getHyperLinks() {
+		if (hyperLinks == null) {
+			hyperLinks = new EObjectContainmentEList.Resolving<IMHyperLink>(IMHyperLink.class, this, UMLRpyPackage.IUSE_CASE__HYPER_LINKS);
+		}
+		return hyperLinks;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<String> getWeakCGTime() {
+		if (weakCGTime == null) {
+			weakCGTime = new EDataTypeEList<String>(String.class, this, UMLRpyPackage.IUSE_CASE__WEAK_CG_TIME);
+		}
+		return weakCGTime;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<String> getStrongCGTime() {
+		if (strongCGTime == null) {
+			strongCGTime = new EDataTypeEList<String>(String.class, this, UMLRpyPackage.IUSE_CASE__STRONG_CG_TIME);
+		}
+		return strongCGTime;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getClassModifier() {
+		return classModifier;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setClassModifier(String newClassModifier) {
+		String oldClassModifier = classModifier;
+		classModifier = newClassModifier;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IUSE_CASE__CLASS_MODIFIER, oldClassModifier, classModifier));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IDescription getDescription() {
+		if (description != null && description.eIsProxy()) {
+			InternalEObject oldDescription = (InternalEObject)description;
+			description = (IDescription)eResolveProxy(oldDescription);
+			if (description != oldDescription) {
+				InternalEObject newDescription = (InternalEObject)description;
+				NotificationChain msgs = oldDescription.eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IUSE_CASE__DESCRIPTION, null, null);
+				if (newDescription.eInternalContainer() == null) {
+					msgs = newDescription.eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IUSE_CASE__DESCRIPTION, null, msgs);
+				}
+				if (msgs != null) msgs.dispatch();
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.IUSE_CASE__DESCRIPTION, oldDescription, description));
+			}
+		}
+		return description;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IDescription basicGetDescription() {
+		return description;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public NotificationChain basicSetDescription(IDescription newDescription, NotificationChain msgs) {
+		IDescription oldDescription = description;
+		description = newDescription;
+		if (eNotificationRequired()) {
+			ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IUSE_CASE__DESCRIPTION, oldDescription, newDescription);
+			if (msgs == null) msgs = notification; else msgs.add(notification);
+		}
+		return msgs;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setDescription(IDescription newDescription) {
+		if (newDescription != description) {
+			NotificationChain msgs = null;
+			if (description != null)
+				msgs = ((InternalEObject)description).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IUSE_CASE__DESCRIPTION, null, msgs);
+			if (newDescription != null)
+				msgs = ((InternalEObject)newDescription).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IUSE_CASE__DESCRIPTION, null, msgs);
+			msgs = basicSetDescription(newDescription, msgs);
+			if (msgs != null) msgs.dispatch();
+		}
+		else if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IUSE_CASE__DESCRIPTION, newDescription, newDescription));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<IGeneralization> getInheritances() {
+		if (inheritances == null) {
+			inheritances = new EObjectContainmentEList.Resolving<IGeneralization>(IGeneralization.class, this, UMLRpyPackage.IUSE_CASE__INHERITANCES);
+		}
+		return inheritances;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<AssociationsType> getAssociations() {
+		if (associations == null) {
+			associations = new EObjectContainmentEList.Resolving<AssociationsType>(AssociationsType.class, this, UMLRpyPackage.IUSE_CASE__ASSOCIATIONS);
+		}
+		return associations;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<IUseCaseStereoType> getUseCaseStereoTypes() {
+		if (useCaseStereoTypes == null) {
+			useCaseStereoTypes = new EObjectContainmentEList.Resolving<IUseCaseStereoType>(IUseCaseStereoType.class, this, UMLRpyPackage.IUSE_CASE__USE_CASE_STEREO_TYPES);
+		}
+		return useCaseStereoTypes;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getEntryPoints() {
+		return entryPoints;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setEntryPoints(String newEntryPoints) {
+		String oldEntryPoints = entryPoints;
+		entryPoints = newEntryPoints;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IUSE_CASE__ENTRY_POINTS, oldEntryPoints, entryPoints));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<IDependency> getDependencies() {
+		if (dependencies == null) {
+			dependencies = new EObjectContainmentEList.Resolving<IDependency>(IDependency.class, this, UMLRpyPackage.IUSE_CASE__DEPENDENCIES);
+		}
+		return dependencies;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getLastID() {
+		return lastID;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setLastID(String newLastID) {
+		String oldLastID = lastID;
+		lastID = newLastID;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IUSE_CASE__LAST_ID, oldLastID, lastID));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<DeclarativesType> getDiagrams() {
+		if (diagrams == null) {
+			diagrams = new EObjectResolvingEList<DeclarativesType>(DeclarativesType.class, this, UMLRpyPackage.IUSE_CASE__DIAGRAMS);
+		}
+		return diagrams;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<String> getModifiedTimeWeak() {
+		if (modifiedTimeWeak == null) {
+			modifiedTimeWeak = new EDataTypeEList<String>(String.class, this, UMLRpyPackage.IUSE_CASE__MODIFIED_TIME_WEAK);
+		}
+		return modifiedTimeWeak;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getRequiremenTracabilityHandle() {
+		return requiremenTracabilityHandle;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setRequiremenTracabilityHandle(String newRequiremenTracabilityHandle) {
+		String oldRequiremenTracabilityHandle = requiremenTracabilityHandle;
+		requiremenTracabilityHandle = newRequiremenTracabilityHandle;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IUSE_CASE__REQUIREMEN_TRACABILITY_HANDLE, oldRequiremenTracabilityHandle, requiremenTracabilityHandle));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getCmheader() {
+		return cmheader;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setCmheader(String newCmheader) {
+		String oldCmheader = cmheader;
+		cmheader = newCmheader;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IUSE_CASE__CMHEADER, oldCmheader, cmheader));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public ISubsystem getOwnerHandle() {
+		if (ownerHandle != null && ownerHandle.eIsProxy()) {
+			InternalEObject oldOwnerHandle = (InternalEObject)ownerHandle;
+			ownerHandle = (ISubsystem)eResolveProxy(oldOwnerHandle);
+			if (ownerHandle != oldOwnerHandle) {
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.IUSE_CASE__OWNER_HANDLE, oldOwnerHandle, ownerHandle));
+			}
+		}
+		return ownerHandle;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public ISubsystem basicGetOwnerHandle() {
+		return ownerHandle;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setOwnerHandle(ISubsystem newOwnerHandle) {
+		ISubsystem oldOwnerHandle = ownerHandle;
+		ownerHandle = newOwnerHandle;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IUSE_CASE__OWNER_HANDLE, oldOwnerHandle, ownerHandle));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<DependsOnType> getDeclaratives() {
+		if (declaratives == null) {
+			declaratives = new EObjectContainmentEList.Resolving<DependsOnType>(DependsOnType.class, this, UMLRpyPackage.IUSE_CASE__DECLARATIVES);
+		}
+		return declaratives;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<OperationsType> getOperations() {
+		if (operations == null) {
+			operations = new EObjectContainmentEList.Resolving<OperationsType>(OperationsType.class, this, UMLRpyPackage.IUSE_CASE__OPERATIONS);
+		}
+		return operations;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<IActivityGraph> getStateCharts() {
+		if (stateCharts == null) {
+			stateCharts = new EObjectContainmentEList.Resolving<IActivityGraph>(IActivityGraph.class, this, UMLRpyPackage.IUSE_CASE__STATE_CHARTS);
+		}
+		return stateCharts;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public NestedStateChartType getItsStateChart() {
+		if (itsStateChart != null && itsStateChart.eIsProxy()) {
+			InternalEObject oldItsStateChart = (InternalEObject)itsStateChart;
+			itsStateChart = (NestedStateChartType)eResolveProxy(oldItsStateChart);
+			if (itsStateChart != oldItsStateChart) {
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.IUSE_CASE__ITS_STATE_CHART, oldItsStateChart, itsStateChart));
+			}
+		}
+		return itsStateChart;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public NestedStateChartType basicGetItsStateChart() {
+		return itsStateChart;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setItsStateChart(NestedStateChartType newItsStateChart) {
+		NestedStateChartType oldItsStateChart = itsStateChart;
+		itsStateChart = newItsStateChart;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IUSE_CASE__ITS_STATE_CHART, oldItsStateChart, itsStateChart));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<IAttribute> getAttrs() {
+		if (attrs == null) {
+			attrs = new EObjectContainmentEList.Resolving<IAttribute>(IAttribute.class, this, UMLRpyPackage.IUSE_CASE__ATTRS);
+		}
+		return attrs;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<IAnnotation> getAnnotations() {
+		if (annotations == null) {
+			annotations = new EObjectContainmentEList.Resolving<IAnnotation>(IAnnotation.class, this, UMLRpyPackage.IUSE_CASE__ANNOTATIONS);
+		}
+		return annotations;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IEmbededFile getEmbededFiles() {
+		if (embededFiles != null && embededFiles.eIsProxy()) {
+			InternalEObject oldEmbededFiles = (InternalEObject)embededFiles;
+			embededFiles = (IEmbededFile)eResolveProxy(oldEmbededFiles);
+			if (embededFiles != oldEmbededFiles) {
+				InternalEObject newEmbededFiles = (InternalEObject)embededFiles;
+				NotificationChain msgs = oldEmbededFiles.eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IUSE_CASE__EMBEDED_FILES, null, null);
+				if (newEmbededFiles.eInternalContainer() == null) {
+					msgs = newEmbededFiles.eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IUSE_CASE__EMBEDED_FILES, null, msgs);
+				}
+				if (msgs != null) msgs.dispatch();
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.IUSE_CASE__EMBEDED_FILES, oldEmbededFiles, embededFiles));
+			}
+		}
+		return embededFiles;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IEmbededFile basicGetEmbededFiles() {
+		return embededFiles;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public NotificationChain basicSetEmbededFiles(IEmbededFile newEmbededFiles, NotificationChain msgs) {
+		IEmbededFile oldEmbededFiles = embededFiles;
+		embededFiles = newEmbededFiles;
+		if (eNotificationRequired()) {
+			ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IUSE_CASE__EMBEDED_FILES, oldEmbededFiles, newEmbededFiles);
+			if (msgs == null) msgs = notification; else msgs.add(notification);
+		}
+		return msgs;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setEmbededFiles(IEmbededFile newEmbededFiles) {
+		if (newEmbededFiles != embededFiles) {
+			NotificationChain msgs = null;
+			if (embededFiles != null)
+				msgs = ((InternalEObject)embededFiles).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IUSE_CASE__EMBEDED_FILES, null, msgs);
+			if (newEmbededFiles != null)
+				msgs = ((InternalEObject)newEmbededFiles).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IUSE_CASE__EMBEDED_FILES, null, msgs);
+			msgs = basicSetEmbededFiles(newEmbededFiles, msgs);
+			if (msgs != null) msgs.dispatch();
+		}
+		else if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IUSE_CASE__EMBEDED_FILES, newEmbededFiles, newEmbededFiles));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getObjectCreation() {
+		return objectCreation;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setObjectCreation(String newObjectCreation) {
+		String oldObjectCreation = objectCreation;
+		objectCreation = newObjectCreation;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IUSE_CASE__OBJECT_CREATION, oldObjectCreation, objectCreation));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getUmlDependencyID() {
+		return umlDependencyID;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setUmlDependencyID(String newUmlDependencyID) {
+		String oldUmlDependencyID = umlDependencyID;
+		umlDependencyID = newUmlDependencyID;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IUSE_CASE__UML_DEPENDENCY_ID, oldUmlDependencyID, umlDependencyID));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<IObjectLink> getObjectLinks() {
+		if (objectLinks == null) {
+			objectLinks = new EObjectContainmentEList.Resolving<IObjectLink>(IObjectLink.class, this, UMLRpyPackage.IUSE_CASE__OBJECT_LINKS);
+		}
+		return objectLinks;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IPropertyContainer getProperties() {
+		if (properties != null && properties.eIsProxy()) {
+			InternalEObject oldProperties = (InternalEObject)properties;
+			properties = (IPropertyContainer)eResolveProxy(oldProperties);
+			if (properties != oldProperties) {
+				InternalEObject newProperties = (InternalEObject)properties;
+				NotificationChain msgs = oldProperties.eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IUSE_CASE__PROPERTIES, null, null);
+				if (newProperties.eInternalContainer() == null) {
+					msgs = newProperties.eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IUSE_CASE__PROPERTIES, null, msgs);
+				}
+				if (msgs != null) msgs.dispatch();
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.IUSE_CASE__PROPERTIES, oldProperties, properties));
+			}
+		}
+		return properties;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IPropertyContainer basicGetProperties() {
+		return properties;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public NotificationChain basicSetProperties(IPropertyContainer newProperties, NotificationChain msgs) {
+		IPropertyContainer oldProperties = properties;
+		properties = newProperties;
+		if (eNotificationRequired()) {
+			ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IUSE_CASE__PROPERTIES, oldProperties, newProperties);
+			if (msgs == null) msgs = notification; else msgs.add(notification);
+		}
+		return msgs;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setProperties(IPropertyContainer newProperties) {
+		if (newProperties != properties) {
+			NotificationChain msgs = null;
+			if (properties != null)
+				msgs = ((InternalEObject)properties).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IUSE_CASE__PROPERTIES, null, msgs);
+			if (newProperties != null)
+				msgs = ((InternalEObject)newProperties).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IUSE_CASE__PROPERTIES, null, msgs);
+			msgs = basicSetProperties(newProperties, msgs);
+			if (msgs != null) msgs.dispatch();
+		}
+		else if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IUSE_CASE__PROPERTIES, newProperties, newProperties));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
+		switch (featureID) {
+			case UMLRpyPackage.IUSE_CASE__HYPER_LINKS:
+				return ((InternalEList<?>)getHyperLinks()).basicRemove(otherEnd, msgs);
+			case UMLRpyPackage.IUSE_CASE__DESCRIPTION:
+				return basicSetDescription(null, msgs);
+			case UMLRpyPackage.IUSE_CASE__INHERITANCES:
+				return ((InternalEList<?>)getInheritances()).basicRemove(otherEnd, msgs);
+			case UMLRpyPackage.IUSE_CASE__ASSOCIATIONS:
+				return ((InternalEList<?>)getAssociations()).basicRemove(otherEnd, msgs);
+			case UMLRpyPackage.IUSE_CASE__USE_CASE_STEREO_TYPES:
+				return ((InternalEList<?>)getUseCaseStereoTypes()).basicRemove(otherEnd, msgs);
+			case UMLRpyPackage.IUSE_CASE__DEPENDENCIES:
+				return ((InternalEList<?>)getDependencies()).basicRemove(otherEnd, msgs);
+			case UMLRpyPackage.IUSE_CASE__DECLARATIVES:
+				return ((InternalEList<?>)getDeclaratives()).basicRemove(otherEnd, msgs);
+			case UMLRpyPackage.IUSE_CASE__OPERATIONS:
+				return ((InternalEList<?>)getOperations()).basicRemove(otherEnd, msgs);
+			case UMLRpyPackage.IUSE_CASE__STATE_CHARTS:
+				return ((InternalEList<?>)getStateCharts()).basicRemove(otherEnd, msgs);
+			case UMLRpyPackage.IUSE_CASE__ATTRS:
+				return ((InternalEList<?>)getAttrs()).basicRemove(otherEnd, msgs);
+			case UMLRpyPackage.IUSE_CASE__ANNOTATIONS:
+				return ((InternalEList<?>)getAnnotations()).basicRemove(otherEnd, msgs);
+			case UMLRpyPackage.IUSE_CASE__EMBEDED_FILES:
+				return basicSetEmbededFiles(null, msgs);
+			case UMLRpyPackage.IUSE_CASE__OBJECT_LINKS:
+				return ((InternalEList<?>)getObjectLinks()).basicRemove(otherEnd, msgs);
+			case UMLRpyPackage.IUSE_CASE__PROPERTIES:
+				return basicSetProperties(null, msgs);
+		}
+		return super.eInverseRemove(otherEnd, featureID, msgs);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object eGet(int featureID, boolean resolve, boolean coreType) {
+		switch (featureID) {
+			case UMLRpyPackage.IUSE_CASE__MULTIPLICITY:
+				return getMultiplicity();
+			case UMLRpyPackage.IUSE_CASE__ID:
+				return getId();
+			case UMLRpyPackage.IUSE_CASE__MY_STATE:
+				return getMyState();
+			case UMLRpyPackage.IUSE_CASE__NAME:
+				return getName();
+			case UMLRpyPackage.IUSE_CASE__THE_MAIN_DIAGRAM:
+				if (resolve) return getTheMainDiagram();
+				return basicGetTheMainDiagram();
+			case UMLRpyPackage.IUSE_CASE__HYPER_LINKS:
+				return getHyperLinks();
+			case UMLRpyPackage.IUSE_CASE__WEAK_CG_TIME:
+				return getWeakCGTime();
+			case UMLRpyPackage.IUSE_CASE__STRONG_CG_TIME:
+				return getStrongCGTime();
+			case UMLRpyPackage.IUSE_CASE__CLASS_MODIFIER:
+				return getClassModifier();
+			case UMLRpyPackage.IUSE_CASE__DESCRIPTION:
+				if (resolve) return getDescription();
+				return basicGetDescription();
+			case UMLRpyPackage.IUSE_CASE__INHERITANCES:
+				return getInheritances();
+			case UMLRpyPackage.IUSE_CASE__ASSOCIATIONS:
+				return getAssociations();
+			case UMLRpyPackage.IUSE_CASE__USE_CASE_STEREO_TYPES:
+				return getUseCaseStereoTypes();
+			case UMLRpyPackage.IUSE_CASE__ENTRY_POINTS:
+				return getEntryPoints();
+			case UMLRpyPackage.IUSE_CASE__DEPENDENCIES:
+				return getDependencies();
+			case UMLRpyPackage.IUSE_CASE__LAST_ID:
+				return getLastID();
+			case UMLRpyPackage.IUSE_CASE__DIAGRAMS:
+				return getDiagrams();
+			case UMLRpyPackage.IUSE_CASE__MODIFIED_TIME_WEAK:
+				return getModifiedTimeWeak();
+			case UMLRpyPackage.IUSE_CASE__REQUIREMEN_TRACABILITY_HANDLE:
+				return getRequiremenTracabilityHandle();
+			case UMLRpyPackage.IUSE_CASE__CMHEADER:
+				return getCmheader();
+			case UMLRpyPackage.IUSE_CASE__OWNER_HANDLE:
+				if (resolve) return getOwnerHandle();
+				return basicGetOwnerHandle();
+			case UMLRpyPackage.IUSE_CASE__DECLARATIVES:
+				return getDeclaratives();
+			case UMLRpyPackage.IUSE_CASE__OPERATIONS:
+				return getOperations();
+			case UMLRpyPackage.IUSE_CASE__STATE_CHARTS:
+				return getStateCharts();
+			case UMLRpyPackage.IUSE_CASE__ITS_STATE_CHART:
+				if (resolve) return getItsStateChart();
+				return basicGetItsStateChart();
+			case UMLRpyPackage.IUSE_CASE__ATTRS:
+				return getAttrs();
+			case UMLRpyPackage.IUSE_CASE__ANNOTATIONS:
+				return getAnnotations();
+			case UMLRpyPackage.IUSE_CASE__EMBEDED_FILES:
+				if (resolve) return getEmbededFiles();
+				return basicGetEmbededFiles();
+			case UMLRpyPackage.IUSE_CASE__OBJECT_CREATION:
+				return getObjectCreation();
+			case UMLRpyPackage.IUSE_CASE__UML_DEPENDENCY_ID:
+				return getUmlDependencyID();
+			case UMLRpyPackage.IUSE_CASE__OBJECT_LINKS:
+				return getObjectLinks();
+			case UMLRpyPackage.IUSE_CASE__PROPERTIES:
+				if (resolve) return getProperties();
+				return basicGetProperties();
+		}
+		return super.eGet(featureID, resolve, coreType);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@SuppressWarnings("unchecked")
+	@Override
+	public void eSet(int featureID, Object newValue) {
+		switch (featureID) {
+			case UMLRpyPackage.IUSE_CASE__MULTIPLICITY:
+				setMultiplicity((String)newValue);
+				return;
+			case UMLRpyPackage.IUSE_CASE__ID:
+				setId((String)newValue);
+				return;
+			case UMLRpyPackage.IUSE_CASE__MY_STATE:
+				setMyState((String)newValue);
+				return;
+			case UMLRpyPackage.IUSE_CASE__NAME:
+				setName((String)newValue);
+				return;
+			case UMLRpyPackage.IUSE_CASE__THE_MAIN_DIAGRAM:
+				setTheMainDiagram((TheMainDiagramType)newValue);
+				return;
+			case UMLRpyPackage.IUSE_CASE__HYPER_LINKS:
+				getHyperLinks().clear();
+				getHyperLinks().addAll((Collection<? extends IMHyperLink>)newValue);
+				return;
+			case UMLRpyPackage.IUSE_CASE__WEAK_CG_TIME:
+				getWeakCGTime().clear();
+				getWeakCGTime().addAll((Collection<? extends String>)newValue);
+				return;
+			case UMLRpyPackage.IUSE_CASE__STRONG_CG_TIME:
+				getStrongCGTime().clear();
+				getStrongCGTime().addAll((Collection<? extends String>)newValue);
+				return;
+			case UMLRpyPackage.IUSE_CASE__CLASS_MODIFIER:
+				setClassModifier((String)newValue);
+				return;
+			case UMLRpyPackage.IUSE_CASE__DESCRIPTION:
+				setDescription((IDescription)newValue);
+				return;
+			case UMLRpyPackage.IUSE_CASE__INHERITANCES:
+				getInheritances().clear();
+				getInheritances().addAll((Collection<? extends IGeneralization>)newValue);
+				return;
+			case UMLRpyPackage.IUSE_CASE__ASSOCIATIONS:
+				getAssociations().clear();
+				getAssociations().addAll((Collection<? extends AssociationsType>)newValue);
+				return;
+			case UMLRpyPackage.IUSE_CASE__USE_CASE_STEREO_TYPES:
+				getUseCaseStereoTypes().clear();
+				getUseCaseStereoTypes().addAll((Collection<? extends IUseCaseStereoType>)newValue);
+				return;
+			case UMLRpyPackage.IUSE_CASE__ENTRY_POINTS:
+				setEntryPoints((String)newValue);
+				return;
+			case UMLRpyPackage.IUSE_CASE__DEPENDENCIES:
+				getDependencies().clear();
+				getDependencies().addAll((Collection<? extends IDependency>)newValue);
+				return;
+			case UMLRpyPackage.IUSE_CASE__LAST_ID:
+				setLastID((String)newValue);
+				return;
+			case UMLRpyPackage.IUSE_CASE__DIAGRAMS:
+				getDiagrams().clear();
+				getDiagrams().addAll((Collection<? extends DeclarativesType>)newValue);
+				return;
+			case UMLRpyPackage.IUSE_CASE__MODIFIED_TIME_WEAK:
+				getModifiedTimeWeak().clear();
+				getModifiedTimeWeak().addAll((Collection<? extends String>)newValue);
+				return;
+			case UMLRpyPackage.IUSE_CASE__REQUIREMEN_TRACABILITY_HANDLE:
+				setRequiremenTracabilityHandle((String)newValue);
+				return;
+			case UMLRpyPackage.IUSE_CASE__CMHEADER:
+				setCmheader((String)newValue);
+				return;
+			case UMLRpyPackage.IUSE_CASE__OWNER_HANDLE:
+				setOwnerHandle((ISubsystem)newValue);
+				return;
+			case UMLRpyPackage.IUSE_CASE__DECLARATIVES:
+				getDeclaratives().clear();
+				getDeclaratives().addAll((Collection<? extends DependsOnType>)newValue);
+				return;
+			case UMLRpyPackage.IUSE_CASE__OPERATIONS:
+				getOperations().clear();
+				getOperations().addAll((Collection<? extends OperationsType>)newValue);
+				return;
+			case UMLRpyPackage.IUSE_CASE__STATE_CHARTS:
+				getStateCharts().clear();
+				getStateCharts().addAll((Collection<? extends IActivityGraph>)newValue);
+				return;
+			case UMLRpyPackage.IUSE_CASE__ITS_STATE_CHART:
+				setItsStateChart((NestedStateChartType)newValue);
+				return;
+			case UMLRpyPackage.IUSE_CASE__ATTRS:
+				getAttrs().clear();
+				getAttrs().addAll((Collection<? extends IAttribute>)newValue);
+				return;
+			case UMLRpyPackage.IUSE_CASE__ANNOTATIONS:
+				getAnnotations().clear();
+				getAnnotations().addAll((Collection<? extends IAnnotation>)newValue);
+				return;
+			case UMLRpyPackage.IUSE_CASE__EMBEDED_FILES:
+				setEmbededFiles((IEmbededFile)newValue);
+				return;
+			case UMLRpyPackage.IUSE_CASE__OBJECT_CREATION:
+				setObjectCreation((String)newValue);
+				return;
+			case UMLRpyPackage.IUSE_CASE__UML_DEPENDENCY_ID:
+				setUmlDependencyID((String)newValue);
+				return;
+			case UMLRpyPackage.IUSE_CASE__OBJECT_LINKS:
+				getObjectLinks().clear();
+				getObjectLinks().addAll((Collection<? extends IObjectLink>)newValue);
+				return;
+			case UMLRpyPackage.IUSE_CASE__PROPERTIES:
+				setProperties((IPropertyContainer)newValue);
+				return;
+		}
+		super.eSet(featureID, newValue);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void eUnset(int featureID) {
+		switch (featureID) {
+			case UMLRpyPackage.IUSE_CASE__MULTIPLICITY:
+				setMultiplicity(MULTIPLICITY_EDEFAULT);
+				return;
+			case UMLRpyPackage.IUSE_CASE__ID:
+				setId(ID_EDEFAULT);
+				return;
+			case UMLRpyPackage.IUSE_CASE__MY_STATE:
+				setMyState(MY_STATE_EDEFAULT);
+				return;
+			case UMLRpyPackage.IUSE_CASE__NAME:
+				setName(NAME_EDEFAULT);
+				return;
+			case UMLRpyPackage.IUSE_CASE__THE_MAIN_DIAGRAM:
+				setTheMainDiagram((TheMainDiagramType)null);
+				return;
+			case UMLRpyPackage.IUSE_CASE__HYPER_LINKS:
+				getHyperLinks().clear();
+				return;
+			case UMLRpyPackage.IUSE_CASE__WEAK_CG_TIME:
+				getWeakCGTime().clear();
+				return;
+			case UMLRpyPackage.IUSE_CASE__STRONG_CG_TIME:
+				getStrongCGTime().clear();
+				return;
+			case UMLRpyPackage.IUSE_CASE__CLASS_MODIFIER:
+				setClassModifier(CLASS_MODIFIER_EDEFAULT);
+				return;
+			case UMLRpyPackage.IUSE_CASE__DESCRIPTION:
+				setDescription((IDescription)null);
+				return;
+			case UMLRpyPackage.IUSE_CASE__INHERITANCES:
+				getInheritances().clear();
+				return;
+			case UMLRpyPackage.IUSE_CASE__ASSOCIATIONS:
+				getAssociations().clear();
+				return;
+			case UMLRpyPackage.IUSE_CASE__USE_CASE_STEREO_TYPES:
+				getUseCaseStereoTypes().clear();
+				return;
+			case UMLRpyPackage.IUSE_CASE__ENTRY_POINTS:
+				setEntryPoints(ENTRY_POINTS_EDEFAULT);
+				return;
+			case UMLRpyPackage.IUSE_CASE__DEPENDENCIES:
+				getDependencies().clear();
+				return;
+			case UMLRpyPackage.IUSE_CASE__LAST_ID:
+				setLastID(LAST_ID_EDEFAULT);
+				return;
+			case UMLRpyPackage.IUSE_CASE__DIAGRAMS:
+				getDiagrams().clear();
+				return;
+			case UMLRpyPackage.IUSE_CASE__MODIFIED_TIME_WEAK:
+				getModifiedTimeWeak().clear();
+				return;
+			case UMLRpyPackage.IUSE_CASE__REQUIREMEN_TRACABILITY_HANDLE:
+				setRequiremenTracabilityHandle(REQUIREMEN_TRACABILITY_HANDLE_EDEFAULT);
+				return;
+			case UMLRpyPackage.IUSE_CASE__CMHEADER:
+				setCmheader(CMHEADER_EDEFAULT);
+				return;
+			case UMLRpyPackage.IUSE_CASE__OWNER_HANDLE:
+				setOwnerHandle((ISubsystem)null);
+				return;
+			case UMLRpyPackage.IUSE_CASE__DECLARATIVES:
+				getDeclaratives().clear();
+				return;
+			case UMLRpyPackage.IUSE_CASE__OPERATIONS:
+				getOperations().clear();
+				return;
+			case UMLRpyPackage.IUSE_CASE__STATE_CHARTS:
+				getStateCharts().clear();
+				return;
+			case UMLRpyPackage.IUSE_CASE__ITS_STATE_CHART:
+				setItsStateChart((NestedStateChartType)null);
+				return;
+			case UMLRpyPackage.IUSE_CASE__ATTRS:
+				getAttrs().clear();
+				return;
+			case UMLRpyPackage.IUSE_CASE__ANNOTATIONS:
+				getAnnotations().clear();
+				return;
+			case UMLRpyPackage.IUSE_CASE__EMBEDED_FILES:
+				setEmbededFiles((IEmbededFile)null);
+				return;
+			case UMLRpyPackage.IUSE_CASE__OBJECT_CREATION:
+				setObjectCreation(OBJECT_CREATION_EDEFAULT);
+				return;
+			case UMLRpyPackage.IUSE_CASE__UML_DEPENDENCY_ID:
+				setUmlDependencyID(UML_DEPENDENCY_ID_EDEFAULT);
+				return;
+			case UMLRpyPackage.IUSE_CASE__OBJECT_LINKS:
+				getObjectLinks().clear();
+				return;
+			case UMLRpyPackage.IUSE_CASE__PROPERTIES:
+				setProperties((IPropertyContainer)null);
+				return;
+		}
+		super.eUnset(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public boolean eIsSet(int featureID) {
+		switch (featureID) {
+			case UMLRpyPackage.IUSE_CASE__MULTIPLICITY:
+				return MULTIPLICITY_EDEFAULT == null ? multiplicity != null : !MULTIPLICITY_EDEFAULT.equals(multiplicity);
+			case UMLRpyPackage.IUSE_CASE__ID:
+				return ID_EDEFAULT == null ? id != null : !ID_EDEFAULT.equals(id);
+			case UMLRpyPackage.IUSE_CASE__MY_STATE:
+				return MY_STATE_EDEFAULT == null ? myState != null : !MY_STATE_EDEFAULT.equals(myState);
+			case UMLRpyPackage.IUSE_CASE__NAME:
+				return NAME_EDEFAULT == null ? name != null : !NAME_EDEFAULT.equals(name);
+			case UMLRpyPackage.IUSE_CASE__THE_MAIN_DIAGRAM:
+				return theMainDiagram != null;
+			case UMLRpyPackage.IUSE_CASE__HYPER_LINKS:
+				return hyperLinks != null && !hyperLinks.isEmpty();
+			case UMLRpyPackage.IUSE_CASE__WEAK_CG_TIME:
+				return weakCGTime != null && !weakCGTime.isEmpty();
+			case UMLRpyPackage.IUSE_CASE__STRONG_CG_TIME:
+				return strongCGTime != null && !strongCGTime.isEmpty();
+			case UMLRpyPackage.IUSE_CASE__CLASS_MODIFIER:
+				return CLASS_MODIFIER_EDEFAULT == null ? classModifier != null : !CLASS_MODIFIER_EDEFAULT.equals(classModifier);
+			case UMLRpyPackage.IUSE_CASE__DESCRIPTION:
+				return description != null;
+			case UMLRpyPackage.IUSE_CASE__INHERITANCES:
+				return inheritances != null && !inheritances.isEmpty();
+			case UMLRpyPackage.IUSE_CASE__ASSOCIATIONS:
+				return associations != null && !associations.isEmpty();
+			case UMLRpyPackage.IUSE_CASE__USE_CASE_STEREO_TYPES:
+				return useCaseStereoTypes != null && !useCaseStereoTypes.isEmpty();
+			case UMLRpyPackage.IUSE_CASE__ENTRY_POINTS:
+				return ENTRY_POINTS_EDEFAULT == null ? entryPoints != null : !ENTRY_POINTS_EDEFAULT.equals(entryPoints);
+			case UMLRpyPackage.IUSE_CASE__DEPENDENCIES:
+				return dependencies != null && !dependencies.isEmpty();
+			case UMLRpyPackage.IUSE_CASE__LAST_ID:
+				return LAST_ID_EDEFAULT == null ? lastID != null : !LAST_ID_EDEFAULT.equals(lastID);
+			case UMLRpyPackage.IUSE_CASE__DIAGRAMS:
+				return diagrams != null && !diagrams.isEmpty();
+			case UMLRpyPackage.IUSE_CASE__MODIFIED_TIME_WEAK:
+				return modifiedTimeWeak != null && !modifiedTimeWeak.isEmpty();
+			case UMLRpyPackage.IUSE_CASE__REQUIREMEN_TRACABILITY_HANDLE:
+				return REQUIREMEN_TRACABILITY_HANDLE_EDEFAULT == null ? requiremenTracabilityHandle != null : !REQUIREMEN_TRACABILITY_HANDLE_EDEFAULT.equals(requiremenTracabilityHandle);
+			case UMLRpyPackage.IUSE_CASE__CMHEADER:
+				return CMHEADER_EDEFAULT == null ? cmheader != null : !CMHEADER_EDEFAULT.equals(cmheader);
+			case UMLRpyPackage.IUSE_CASE__OWNER_HANDLE:
+				return ownerHandle != null;
+			case UMLRpyPackage.IUSE_CASE__DECLARATIVES:
+				return declaratives != null && !declaratives.isEmpty();
+			case UMLRpyPackage.IUSE_CASE__OPERATIONS:
+				return operations != null && !operations.isEmpty();
+			case UMLRpyPackage.IUSE_CASE__STATE_CHARTS:
+				return stateCharts != null && !stateCharts.isEmpty();
+			case UMLRpyPackage.IUSE_CASE__ITS_STATE_CHART:
+				return itsStateChart != null;
+			case UMLRpyPackage.IUSE_CASE__ATTRS:
+				return attrs != null && !attrs.isEmpty();
+			case UMLRpyPackage.IUSE_CASE__ANNOTATIONS:
+				return annotations != null && !annotations.isEmpty();
+			case UMLRpyPackage.IUSE_CASE__EMBEDED_FILES:
+				return embededFiles != null;
+			case UMLRpyPackage.IUSE_CASE__OBJECT_CREATION:
+				return OBJECT_CREATION_EDEFAULT == null ? objectCreation != null : !OBJECT_CREATION_EDEFAULT.equals(objectCreation);
+			case UMLRpyPackage.IUSE_CASE__UML_DEPENDENCY_ID:
+				return UML_DEPENDENCY_ID_EDEFAULT == null ? umlDependencyID != null : !UML_DEPENDENCY_ID_EDEFAULT.equals(umlDependencyID);
+			case UMLRpyPackage.IUSE_CASE__OBJECT_LINKS:
+				return objectLinks != null && !objectLinks.isEmpty();
+			case UMLRpyPackage.IUSE_CASE__PROPERTIES:
+				return properties != null;
+		}
+		return super.eIsSet(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public int eBaseStructuralFeatureID(int derivedFeatureID, Class<?> baseClass) {
+		if (baseClass == ElementsType.class) {
+			switch (derivedFeatureID) {
+				default: return -1;
+			}
+		}
+		if (baseClass == DependsOnType.class) {
+			switch (derivedFeatureID) {
+				default: return -1;
+			}
+		}
+		if (baseClass == End1_Type.class) {
+			switch (derivedFeatureID) {
+				default: return -1;
+			}
+		}
+		if (baseClass == End2_Type.class) {
+			switch (derivedFeatureID) {
+				case UMLRpyPackage.IUSE_CASE__MULTIPLICITY: return UMLRpyPackage.END2_TYPE__MULTIPLICITY;
+				default: return -1;
+			}
+		}
+		if (baseClass == TargetType.class) {
+			switch (derivedFeatureID) {
+				default: return -1;
+			}
+		}
+		return super.eBaseStructuralFeatureID(derivedFeatureID, baseClass);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public int eDerivedStructuralFeatureID(int baseFeatureID, Class<?> baseClass) {
+		if (baseClass == ElementsType.class) {
+			switch (baseFeatureID) {
+				default: return -1;
+			}
+		}
+		if (baseClass == DependsOnType.class) {
+			switch (baseFeatureID) {
+				default: return -1;
+			}
+		}
+		if (baseClass == End1_Type.class) {
+			switch (baseFeatureID) {
+				default: return -1;
+			}
+		}
+		if (baseClass == End2_Type.class) {
+			switch (baseFeatureID) {
+				case UMLRpyPackage.END2_TYPE__MULTIPLICITY: return UMLRpyPackage.IUSE_CASE__MULTIPLICITY;
+				default: return -1;
+			}
+		}
+		if (baseClass == TargetType.class) {
+			switch (baseFeatureID) {
+				default: return -1;
+			}
+		}
+		return super.eDerivedStructuralFeatureID(baseFeatureID, baseClass);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String toString() {
+		if (eIsProxy()) return super.toString();
+
+		StringBuffer result = new StringBuffer(super.toString());
+		result.append(" (multiplicity: "); //$NON-NLS-1$
+		result.append(multiplicity);
+		result.append(", id: "); //$NON-NLS-1$
+		result.append(id);
+		result.append(", myState: "); //$NON-NLS-1$
+		result.append(myState);
+		result.append(", name: "); //$NON-NLS-1$
+		result.append(name);
+		result.append(", weakCGTime: "); //$NON-NLS-1$
+		result.append(weakCGTime);
+		result.append(", strongCGTime: "); //$NON-NLS-1$
+		result.append(strongCGTime);
+		result.append(", classModifier: "); //$NON-NLS-1$
+		result.append(classModifier);
+		result.append(", EntryPoints: "); //$NON-NLS-1$
+		result.append(entryPoints);
+		result.append(", lastID: "); //$NON-NLS-1$
+		result.append(lastID);
+		result.append(", modifiedTimeWeak: "); //$NON-NLS-1$
+		result.append(modifiedTimeWeak);
+		result.append(", requiremenTracabilityHandle: "); //$NON-NLS-1$
+		result.append(requiremenTracabilityHandle);
+		result.append(", cmheader: "); //$NON-NLS-1$
+		result.append(cmheader);
+		result.append(", objectCreation: "); //$NON-NLS-1$
+		result.append(objectCreation);
+		result.append(", umlDependencyID: "); //$NON-NLS-1$
+		result.append(umlDependencyID);
+		result.append(')');
+		return result.toString();
+	}
+
+} //IUseCaseImpl
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/IUseCaseStereoTypeImpl.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/IUseCaseStereoTypeImpl.java
new file mode 100755
index 0000000..0739c8f
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/IUseCaseStereoTypeImpl.java
@@ -0,0 +1,289 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.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.emf.ecore.impl.MinimalEObjectImpl;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IUseCase;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IUseCaseStereoType;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>IUse Case Stereo Type</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * </p>
+ * <ul>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IUseCaseStereoTypeImpl#getUseCase <em>Use Case</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IUseCaseStereoTypeImpl#getStereoType <em>Stereo Type</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IUseCaseStereoTypeImpl#getEntryPoint <em>Entry Point</em>}</li>
+ * </ul>
+ *
+ * @generated
+ */
+public class IUseCaseStereoTypeImpl extends MinimalEObjectImpl.Container implements IUseCaseStereoType {
+	/**
+	 * The cached value of the '{@link #getUseCase() <em>Use Case</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getUseCase()
+	 * @generated
+	 * @ordered
+	 */
+	protected IUseCase useCase;
+
+	/**
+	 * The default value of the '{@link #getStereoType() <em>Stereo Type</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getStereoType()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String STEREO_TYPE_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getStereoType() <em>Stereo Type</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getStereoType()
+	 * @generated
+	 * @ordered
+	 */
+	protected String stereoType = STEREO_TYPE_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getEntryPoint() <em>Entry Point</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getEntryPoint()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String ENTRY_POINT_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getEntryPoint() <em>Entry Point</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getEntryPoint()
+	 * @generated
+	 * @ordered
+	 */
+	protected String entryPoint = ENTRY_POINT_EDEFAULT;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected IUseCaseStereoTypeImpl() {
+		super();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EClass eStaticClass() {
+		return UMLRpyPackage.eINSTANCE.getIUseCaseStereoType();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IUseCase getUseCase() {
+		if (useCase != null && useCase.eIsProxy()) {
+			InternalEObject oldUseCase = (InternalEObject)useCase;
+			useCase = (IUseCase)eResolveProxy(oldUseCase);
+			if (useCase != oldUseCase) {
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.IUSE_CASE_STEREO_TYPE__USE_CASE, oldUseCase, useCase));
+			}
+		}
+		return useCase;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IUseCase basicGetUseCase() {
+		return useCase;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setUseCase(IUseCase newUseCase) {
+		IUseCase oldUseCase = useCase;
+		useCase = newUseCase;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IUSE_CASE_STEREO_TYPE__USE_CASE, oldUseCase, useCase));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getStereoType() {
+		return stereoType;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setStereoType(String newStereoType) {
+		String oldStereoType = stereoType;
+		stereoType = newStereoType;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IUSE_CASE_STEREO_TYPE__STEREO_TYPE, oldStereoType, stereoType));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getEntryPoint() {
+		return entryPoint;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setEntryPoint(String newEntryPoint) {
+		String oldEntryPoint = entryPoint;
+		entryPoint = newEntryPoint;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IUSE_CASE_STEREO_TYPE__ENTRY_POINT, oldEntryPoint, entryPoint));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object eGet(int featureID, boolean resolve, boolean coreType) {
+		switch (featureID) {
+			case UMLRpyPackage.IUSE_CASE_STEREO_TYPE__USE_CASE:
+				if (resolve) return getUseCase();
+				return basicGetUseCase();
+			case UMLRpyPackage.IUSE_CASE_STEREO_TYPE__STEREO_TYPE:
+				return getStereoType();
+			case UMLRpyPackage.IUSE_CASE_STEREO_TYPE__ENTRY_POINT:
+				return getEntryPoint();
+		}
+		return super.eGet(featureID, resolve, coreType);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void eSet(int featureID, Object newValue) {
+		switch (featureID) {
+			case UMLRpyPackage.IUSE_CASE_STEREO_TYPE__USE_CASE:
+				setUseCase((IUseCase)newValue);
+				return;
+			case UMLRpyPackage.IUSE_CASE_STEREO_TYPE__STEREO_TYPE:
+				setStereoType((String)newValue);
+				return;
+			case UMLRpyPackage.IUSE_CASE_STEREO_TYPE__ENTRY_POINT:
+				setEntryPoint((String)newValue);
+				return;
+		}
+		super.eSet(featureID, newValue);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void eUnset(int featureID) {
+		switch (featureID) {
+			case UMLRpyPackage.IUSE_CASE_STEREO_TYPE__USE_CASE:
+				setUseCase((IUseCase)null);
+				return;
+			case UMLRpyPackage.IUSE_CASE_STEREO_TYPE__STEREO_TYPE:
+				setStereoType(STEREO_TYPE_EDEFAULT);
+				return;
+			case UMLRpyPackage.IUSE_CASE_STEREO_TYPE__ENTRY_POINT:
+				setEntryPoint(ENTRY_POINT_EDEFAULT);
+				return;
+		}
+		super.eUnset(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public boolean eIsSet(int featureID) {
+		switch (featureID) {
+			case UMLRpyPackage.IUSE_CASE_STEREO_TYPE__USE_CASE:
+				return useCase != null;
+			case UMLRpyPackage.IUSE_CASE_STEREO_TYPE__STEREO_TYPE:
+				return STEREO_TYPE_EDEFAULT == null ? stereoType != null : !STEREO_TYPE_EDEFAULT.equals(stereoType);
+			case UMLRpyPackage.IUSE_CASE_STEREO_TYPE__ENTRY_POINT:
+				return ENTRY_POINT_EDEFAULT == null ? entryPoint != null : !ENTRY_POINT_EDEFAULT.equals(entryPoint);
+		}
+		return super.eIsSet(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String toString() {
+		if (eIsProxy()) return super.toString();
+
+		StringBuffer result = new StringBuffer(super.toString());
+		result.append(" (stereoType: "); //$NON-NLS-1$
+		result.append(stereoType);
+		result.append(", entryPoint: "); //$NON-NLS-1$
+		result.append(entryPoint);
+		result.append(')');
+		return result.toString();
+	}
+
+} //IUseCaseStereoTypeImpl
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/IValueSpecificationImpl.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/IValueSpecificationImpl.java
new file mode 100755
index 0000000..79d3a68
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/IValueSpecificationImpl.java
@@ -0,0 +1,47 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl;
+
+import org.eclipse.emf.ecore.EClass;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IValueSpecification;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>IValue Specification</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+public class IValueSpecificationImpl extends IModelElementImpl implements IValueSpecification {
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected IValueSpecificationImpl() {
+		super();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EClass eStaticClass() {
+		return UMLRpyPackage.eINSTANCE.getIValueSpecification();
+	}
+
+} //IValueSpecificationImpl
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/IVariableImpl.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/IVariableImpl.java
new file mode 100755
index 0000000..50558ac
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/IVariableImpl.java
@@ -0,0 +1,277 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl;
+
+import org.eclipse.emf.common.notify.Notification;
+import org.eclipse.emf.common.notify.NotificationChain;
+
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.InternalEObject;
+
+import org.eclipse.emf.ecore.impl.ENotificationImpl;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IType;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IVariable;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>IVariable</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * </p>
+ * <ul>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IVariableImpl#getIsOrdered <em>Is Ordered</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.IVariableImpl#getMyTypeOf <em>My Type Of</em>}</li>
+ * </ul>
+ *
+ * @generated
+ */
+public class IVariableImpl extends IUnitImpl implements IVariable {
+	/**
+	 * The default value of the '{@link #getIsOrdered() <em>Is Ordered</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getIsOrdered()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String IS_ORDERED_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getIsOrdered() <em>Is Ordered</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getIsOrdered()
+	 * @generated
+	 * @ordered
+	 */
+	protected String isOrdered = IS_ORDERED_EDEFAULT;
+
+	/**
+	 * The cached value of the '{@link #getMyTypeOf() <em>My Type Of</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getMyTypeOf()
+	 * @generated
+	 * @ordered
+	 */
+	protected IType myTypeOf;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected IVariableImpl() {
+		super();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EClass eStaticClass() {
+		return UMLRpyPackage.eINSTANCE.getIVariable();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getIsOrdered() {
+		return isOrdered;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setIsOrdered(String newIsOrdered) {
+		String oldIsOrdered = isOrdered;
+		isOrdered = newIsOrdered;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IVARIABLE__IS_ORDERED, oldIsOrdered, isOrdered));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IType getMyTypeOf() {
+		if (myTypeOf != null && myTypeOf.eIsProxy()) {
+			InternalEObject oldMyTypeOf = (InternalEObject)myTypeOf;
+			myTypeOf = (IType)eResolveProxy(oldMyTypeOf);
+			if (myTypeOf != oldMyTypeOf) {
+				InternalEObject newMyTypeOf = (InternalEObject)myTypeOf;
+				NotificationChain msgs = oldMyTypeOf.eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IVARIABLE__MY_TYPE_OF, null, null);
+				if (newMyTypeOf.eInternalContainer() == null) {
+					msgs = newMyTypeOf.eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IVARIABLE__MY_TYPE_OF, null, msgs);
+				}
+				if (msgs != null) msgs.dispatch();
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.IVARIABLE__MY_TYPE_OF, oldMyTypeOf, myTypeOf));
+			}
+		}
+		return myTypeOf;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IType basicGetMyTypeOf() {
+		return myTypeOf;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public NotificationChain basicSetMyTypeOf(IType newMyTypeOf, NotificationChain msgs) {
+		IType oldMyTypeOf = myTypeOf;
+		myTypeOf = newMyTypeOf;
+		if (eNotificationRequired()) {
+			ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IVARIABLE__MY_TYPE_OF, oldMyTypeOf, newMyTypeOf);
+			if (msgs == null) msgs = notification; else msgs.add(notification);
+		}
+		return msgs;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setMyTypeOf(IType newMyTypeOf) {
+		if (newMyTypeOf != myTypeOf) {
+			NotificationChain msgs = null;
+			if (myTypeOf != null)
+				msgs = ((InternalEObject)myTypeOf).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IVARIABLE__MY_TYPE_OF, null, msgs);
+			if (newMyTypeOf != null)
+				msgs = ((InternalEObject)newMyTypeOf).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.IVARIABLE__MY_TYPE_OF, null, msgs);
+			msgs = basicSetMyTypeOf(newMyTypeOf, msgs);
+			if (msgs != null) msgs.dispatch();
+		}
+		else if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.IVARIABLE__MY_TYPE_OF, newMyTypeOf, newMyTypeOf));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
+		switch (featureID) {
+			case UMLRpyPackage.IVARIABLE__MY_TYPE_OF:
+				return basicSetMyTypeOf(null, msgs);
+		}
+		return super.eInverseRemove(otherEnd, featureID, msgs);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object eGet(int featureID, boolean resolve, boolean coreType) {
+		switch (featureID) {
+			case UMLRpyPackage.IVARIABLE__IS_ORDERED:
+				return getIsOrdered();
+			case UMLRpyPackage.IVARIABLE__MY_TYPE_OF:
+				if (resolve) return getMyTypeOf();
+				return basicGetMyTypeOf();
+		}
+		return super.eGet(featureID, resolve, coreType);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void eSet(int featureID, Object newValue) {
+		switch (featureID) {
+			case UMLRpyPackage.IVARIABLE__IS_ORDERED:
+				setIsOrdered((String)newValue);
+				return;
+			case UMLRpyPackage.IVARIABLE__MY_TYPE_OF:
+				setMyTypeOf((IType)newValue);
+				return;
+		}
+		super.eSet(featureID, newValue);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void eUnset(int featureID) {
+		switch (featureID) {
+			case UMLRpyPackage.IVARIABLE__IS_ORDERED:
+				setIsOrdered(IS_ORDERED_EDEFAULT);
+				return;
+			case UMLRpyPackage.IVARIABLE__MY_TYPE_OF:
+				setMyTypeOf((IType)null);
+				return;
+		}
+		super.eUnset(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public boolean eIsSet(int featureID) {
+		switch (featureID) {
+			case UMLRpyPackage.IVARIABLE__IS_ORDERED:
+				return IS_ORDERED_EDEFAULT == null ? isOrdered != null : !IS_ORDERED_EDEFAULT.equals(isOrdered);
+			case UMLRpyPackage.IVARIABLE__MY_TYPE_OF:
+				return myTypeOf != null;
+		}
+		return super.eIsSet(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String toString() {
+		if (eIsProxy()) return super.toString();
+
+		StringBuffer result = new StringBuffer(super.toString());
+		result.append(" (isOrdered: "); //$NON-NLS-1$
+		result.append(isOrdered);
+		result.append(')');
+		return result.toString();
+	}
+
+} //IVariableImpl
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/InverseTypeImpl.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/InverseTypeImpl.java
new file mode 100755
index 0000000..c02ca63
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/InverseTypeImpl.java
@@ -0,0 +1,49 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl;
+
+import org.eclipse.emf.ecore.EClass;
+
+import org.eclipse.emf.ecore.impl.MinimalEObjectImpl;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.InverseType;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Inverse Type</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+public abstract class InverseTypeImpl extends MinimalEObjectImpl.Container implements InverseType {
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected InverseTypeImpl() {
+		super();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EClass eStaticClass() {
+		return UMLRpyPackage.eINSTANCE.getInverseType();
+	}
+
+} //InverseTypeImpl
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/ItemsTypeImpl.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/ItemsTypeImpl.java
new file mode 100755
index 0000000..ee756e4
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/ItemsTypeImpl.java
@@ -0,0 +1,49 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl;
+
+import org.eclipse.emf.ecore.EClass;
+
+import org.eclipse.emf.ecore.impl.MinimalEObjectImpl;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ItemsType;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Items Type</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+public abstract class ItemsTypeImpl extends MinimalEObjectImpl.Container implements ItemsType {
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected ItemsTypeImpl() {
+		super();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EClass eStaticClass() {
+		return UMLRpyPackage.eINSTANCE.getItemsType();
+	}
+
+} //ItemsTypeImpl
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/ItsLabelTypeImpl.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/ItsLabelTypeImpl.java
new file mode 100755
index 0000000..d125246
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/ItsLabelTypeImpl.java
@@ -0,0 +1,49 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl;
+
+import org.eclipse.emf.ecore.EClass;
+
+import org.eclipse.emf.ecore.impl.MinimalEObjectImpl;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ItsLabelType;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Its Label Type</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+public abstract class ItsLabelTypeImpl extends MinimalEObjectImpl.Container implements ItsLabelType {
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected ItsLabelTypeImpl() {
+		super();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EClass eStaticClass() {
+		return UMLRpyPackage.eINSTANCE.getItsLabelType();
+	}
+
+} //ItsLabelTypeImpl
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/ItsStateChartTypeImpl.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/ItsStateChartTypeImpl.java
new file mode 100755
index 0000000..8e545a7
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/ItsStateChartTypeImpl.java
@@ -0,0 +1,49 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl;
+
+import org.eclipse.emf.ecore.EClass;
+
+import org.eclipse.emf.ecore.impl.MinimalEObjectImpl;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ItsStateChartType;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Its State Chart Type</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+public abstract class ItsStateChartTypeImpl extends MinimalEObjectImpl.Container implements ItsStateChartType {
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected ItsStateChartTypeImpl() {
+		super();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EClass eStaticClass() {
+		return UMLRpyPackage.eINSTANCE.getItsStateChartType();
+	}
+
+} //ItsStateChartTypeImpl
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/ItsTargetTypeImpl.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/ItsTargetTypeImpl.java
new file mode 100755
index 0000000..655aee0
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/ItsTargetTypeImpl.java
@@ -0,0 +1,49 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl;
+
+import org.eclipse.emf.ecore.EClass;
+
+import org.eclipse.emf.ecore.impl.MinimalEObjectImpl;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ItsTargetType;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Its Target Type</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+public abstract class ItsTargetTypeImpl extends MinimalEObjectImpl.Container implements ItsTargetType {
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected ItsTargetTypeImpl() {
+		super();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EClass eStaticClass() {
+		return UMLRpyPackage.eINSTANCE.getItsTargetType();
+	}
+
+} //ItsTargetTypeImpl
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/ItsTriggerTypeImpl.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/ItsTriggerTypeImpl.java
new file mode 100755
index 0000000..491a2fb
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/ItsTriggerTypeImpl.java
@@ -0,0 +1,486 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl;
+
+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.impl.ENotificationImpl;
+import org.eclipse.emf.ecore.impl.MinimalEObjectImpl;
+
+import org.eclipse.emf.ecore.util.EDataTypeEList;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ItsTriggerType;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Its Trigger Type</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * </p>
+ * <ul>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.ItsTriggerTypeImpl#getModifiedTimeWeak <em>Modified Time Weak</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.ItsTriggerTypeImpl#getId <em>Id</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.ItsTriggerTypeImpl#getInfo <em>Info</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.ItsTriggerTypeImpl#getUmlDependencyID <em>Uml Dependency ID</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.ItsTriggerTypeImpl#getMyState <em>My State</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.ItsTriggerTypeImpl#getObjectCreation <em>Object Creation</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.ItsTriggerTypeImpl#getBody <em>Body</em>}</li>
+ * </ul>
+ *
+ * @generated
+ */
+public abstract class ItsTriggerTypeImpl extends MinimalEObjectImpl.Container implements ItsTriggerType {
+	/**
+	 * The cached value of the '{@link #getModifiedTimeWeak() <em>Modified Time Weak</em>}' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getModifiedTimeWeak()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<String> modifiedTimeWeak;
+
+	/**
+	 * The default value of the '{@link #getId() <em>Id</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getId()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String ID_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getId() <em>Id</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getId()
+	 * @generated
+	 * @ordered
+	 */
+	protected String id = ID_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getInfo() <em>Info</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getInfo()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String INFO_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getInfo() <em>Info</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getInfo()
+	 * @generated
+	 * @ordered
+	 */
+	protected String info = INFO_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getUmlDependencyID() <em>Uml Dependency ID</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getUmlDependencyID()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String UML_DEPENDENCY_ID_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getUmlDependencyID() <em>Uml Dependency ID</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getUmlDependencyID()
+	 * @generated
+	 * @ordered
+	 */
+	protected String umlDependencyID = UML_DEPENDENCY_ID_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getMyState() <em>My State</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getMyState()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String MY_STATE_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getMyState() <em>My State</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getMyState()
+	 * @generated
+	 * @ordered
+	 */
+	protected String myState = MY_STATE_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getObjectCreation() <em>Object Creation</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getObjectCreation()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String OBJECT_CREATION_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getObjectCreation() <em>Object Creation</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getObjectCreation()
+	 * @generated
+	 * @ordered
+	 */
+	protected String objectCreation = OBJECT_CREATION_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getBody() <em>Body</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getBody()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String BODY_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getBody() <em>Body</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getBody()
+	 * @generated
+	 * @ordered
+	 */
+	protected String body = BODY_EDEFAULT;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected ItsTriggerTypeImpl() {
+		super();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EClass eStaticClass() {
+		return UMLRpyPackage.eINSTANCE.getItsTriggerType();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<String> getModifiedTimeWeak() {
+		if (modifiedTimeWeak == null) {
+			modifiedTimeWeak = new EDataTypeEList<String>(String.class, this, UMLRpyPackage.ITS_TRIGGER_TYPE__MODIFIED_TIME_WEAK);
+		}
+		return modifiedTimeWeak;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getId() {
+		return id;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setId(String newId) {
+		String oldId = id;
+		id = newId;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.ITS_TRIGGER_TYPE__ID, oldId, id));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getInfo() {
+		return info;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setInfo(String newInfo) {
+		String oldInfo = info;
+		info = newInfo;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.ITS_TRIGGER_TYPE__INFO, oldInfo, info));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getUmlDependencyID() {
+		return umlDependencyID;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setUmlDependencyID(String newUmlDependencyID) {
+		String oldUmlDependencyID = umlDependencyID;
+		umlDependencyID = newUmlDependencyID;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.ITS_TRIGGER_TYPE__UML_DEPENDENCY_ID, oldUmlDependencyID, umlDependencyID));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getMyState() {
+		return myState;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setMyState(String newMyState) {
+		String oldMyState = myState;
+		myState = newMyState;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.ITS_TRIGGER_TYPE__MY_STATE, oldMyState, myState));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getObjectCreation() {
+		return objectCreation;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setObjectCreation(String newObjectCreation) {
+		String oldObjectCreation = objectCreation;
+		objectCreation = newObjectCreation;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.ITS_TRIGGER_TYPE__OBJECT_CREATION, oldObjectCreation, objectCreation));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getBody() {
+		return body;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setBody(String newBody) {
+		String oldBody = body;
+		body = newBody;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.ITS_TRIGGER_TYPE__BODY, oldBody, body));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object eGet(int featureID, boolean resolve, boolean coreType) {
+		switch (featureID) {
+			case UMLRpyPackage.ITS_TRIGGER_TYPE__MODIFIED_TIME_WEAK:
+				return getModifiedTimeWeak();
+			case UMLRpyPackage.ITS_TRIGGER_TYPE__ID:
+				return getId();
+			case UMLRpyPackage.ITS_TRIGGER_TYPE__INFO:
+				return getInfo();
+			case UMLRpyPackage.ITS_TRIGGER_TYPE__UML_DEPENDENCY_ID:
+				return getUmlDependencyID();
+			case UMLRpyPackage.ITS_TRIGGER_TYPE__MY_STATE:
+				return getMyState();
+			case UMLRpyPackage.ITS_TRIGGER_TYPE__OBJECT_CREATION:
+				return getObjectCreation();
+			case UMLRpyPackage.ITS_TRIGGER_TYPE__BODY:
+				return getBody();
+		}
+		return super.eGet(featureID, resolve, coreType);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@SuppressWarnings("unchecked")
+	@Override
+	public void eSet(int featureID, Object newValue) {
+		switch (featureID) {
+			case UMLRpyPackage.ITS_TRIGGER_TYPE__MODIFIED_TIME_WEAK:
+				getModifiedTimeWeak().clear();
+				getModifiedTimeWeak().addAll((Collection<? extends String>)newValue);
+				return;
+			case UMLRpyPackage.ITS_TRIGGER_TYPE__ID:
+				setId((String)newValue);
+				return;
+			case UMLRpyPackage.ITS_TRIGGER_TYPE__INFO:
+				setInfo((String)newValue);
+				return;
+			case UMLRpyPackage.ITS_TRIGGER_TYPE__UML_DEPENDENCY_ID:
+				setUmlDependencyID((String)newValue);
+				return;
+			case UMLRpyPackage.ITS_TRIGGER_TYPE__MY_STATE:
+				setMyState((String)newValue);
+				return;
+			case UMLRpyPackage.ITS_TRIGGER_TYPE__OBJECT_CREATION:
+				setObjectCreation((String)newValue);
+				return;
+			case UMLRpyPackage.ITS_TRIGGER_TYPE__BODY:
+				setBody((String)newValue);
+				return;
+		}
+		super.eSet(featureID, newValue);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void eUnset(int featureID) {
+		switch (featureID) {
+			case UMLRpyPackage.ITS_TRIGGER_TYPE__MODIFIED_TIME_WEAK:
+				getModifiedTimeWeak().clear();
+				return;
+			case UMLRpyPackage.ITS_TRIGGER_TYPE__ID:
+				setId(ID_EDEFAULT);
+				return;
+			case UMLRpyPackage.ITS_TRIGGER_TYPE__INFO:
+				setInfo(INFO_EDEFAULT);
+				return;
+			case UMLRpyPackage.ITS_TRIGGER_TYPE__UML_DEPENDENCY_ID:
+				setUmlDependencyID(UML_DEPENDENCY_ID_EDEFAULT);
+				return;
+			case UMLRpyPackage.ITS_TRIGGER_TYPE__MY_STATE:
+				setMyState(MY_STATE_EDEFAULT);
+				return;
+			case UMLRpyPackage.ITS_TRIGGER_TYPE__OBJECT_CREATION:
+				setObjectCreation(OBJECT_CREATION_EDEFAULT);
+				return;
+			case UMLRpyPackage.ITS_TRIGGER_TYPE__BODY:
+				setBody(BODY_EDEFAULT);
+				return;
+		}
+		super.eUnset(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public boolean eIsSet(int featureID) {
+		switch (featureID) {
+			case UMLRpyPackage.ITS_TRIGGER_TYPE__MODIFIED_TIME_WEAK:
+				return modifiedTimeWeak != null && !modifiedTimeWeak.isEmpty();
+			case UMLRpyPackage.ITS_TRIGGER_TYPE__ID:
+				return ID_EDEFAULT == null ? id != null : !ID_EDEFAULT.equals(id);
+			case UMLRpyPackage.ITS_TRIGGER_TYPE__INFO:
+				return INFO_EDEFAULT == null ? info != null : !INFO_EDEFAULT.equals(info);
+			case UMLRpyPackage.ITS_TRIGGER_TYPE__UML_DEPENDENCY_ID:
+				return UML_DEPENDENCY_ID_EDEFAULT == null ? umlDependencyID != null : !UML_DEPENDENCY_ID_EDEFAULT.equals(umlDependencyID);
+			case UMLRpyPackage.ITS_TRIGGER_TYPE__MY_STATE:
+				return MY_STATE_EDEFAULT == null ? myState != null : !MY_STATE_EDEFAULT.equals(myState);
+			case UMLRpyPackage.ITS_TRIGGER_TYPE__OBJECT_CREATION:
+				return OBJECT_CREATION_EDEFAULT == null ? objectCreation != null : !OBJECT_CREATION_EDEFAULT.equals(objectCreation);
+			case UMLRpyPackage.ITS_TRIGGER_TYPE__BODY:
+				return BODY_EDEFAULT == null ? body != null : !BODY_EDEFAULT.equals(body);
+		}
+		return super.eIsSet(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String toString() {
+		if (eIsProxy()) return super.toString();
+
+		StringBuffer result = new StringBuffer(super.toString());
+		result.append(" (modifiedTimeWeak: "); //$NON-NLS-1$
+		result.append(modifiedTimeWeak);
+		result.append(", id: "); //$NON-NLS-1$
+		result.append(id);
+		result.append(", info: "); //$NON-NLS-1$
+		result.append(info);
+		result.append(", umlDependencyID: "); //$NON-NLS-1$
+		result.append(umlDependencyID);
+		result.append(", myState: "); //$NON-NLS-1$
+		result.append(myState);
+		result.append(", objectCreation: "); //$NON-NLS-1$
+		result.append(objectCreation);
+		result.append(", body: "); //$NON-NLS-1$
+		result.append(body);
+		result.append(')');
+		return result.toString();
+	}
+
+} //ItsTriggerTypeImpl
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/LinksTypeImpl.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/LinksTypeImpl.java
new file mode 100755
index 0000000..5630bb9
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/LinksTypeImpl.java
@@ -0,0 +1,386 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl;
+
+import org.eclipse.emf.common.notify.Notification;
+import org.eclipse.emf.common.notify.NotificationChain;
+
+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.papyrus.interoperability.rpy.rpymetamodel.IClassHandle;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.LinksType;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Links Type</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * </p>
+ * <ul>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.LinksTypeImpl#getId <em>Id</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.LinksTypeImpl#getMultiplicity <em>Multiplicity</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.LinksTypeImpl#getName <em>Name</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.LinksTypeImpl#getOtherClass <em>Other Class</em>}</li>
+ * </ul>
+ *
+ * @generated
+ */
+public abstract class LinksTypeImpl extends MinimalEObjectImpl.Container implements LinksType {
+	/**
+	 * The default value of the '{@link #getId() <em>Id</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getId()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String ID_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getId() <em>Id</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getId()
+	 * @generated
+	 * @ordered
+	 */
+	protected String id = ID_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getMultiplicity() <em>Multiplicity</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getMultiplicity()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String MULTIPLICITY_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getMultiplicity() <em>Multiplicity</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getMultiplicity()
+	 * @generated
+	 * @ordered
+	 */
+	protected String multiplicity = MULTIPLICITY_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getName() <em>Name</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getName()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String NAME_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getName() <em>Name</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getName()
+	 * @generated
+	 * @ordered
+	 */
+	protected String name = NAME_EDEFAULT;
+
+	/**
+	 * The cached value of the '{@link #getOtherClass() <em>Other Class</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getOtherClass()
+	 * @generated
+	 * @ordered
+	 */
+	protected IClassHandle otherClass;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected LinksTypeImpl() {
+		super();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EClass eStaticClass() {
+		return UMLRpyPackage.eINSTANCE.getLinksType();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getId() {
+		return id;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setId(String newId) {
+		String oldId = id;
+		id = newId;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.LINKS_TYPE__ID, oldId, id));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getMultiplicity() {
+		return multiplicity;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setMultiplicity(String newMultiplicity) {
+		String oldMultiplicity = multiplicity;
+		multiplicity = newMultiplicity;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.LINKS_TYPE__MULTIPLICITY, oldMultiplicity, multiplicity));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getName() {
+		return name;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setName(String newName) {
+		String oldName = name;
+		name = newName;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.LINKS_TYPE__NAME, oldName, name));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IClassHandle getOtherClass() {
+		if (otherClass != null && otherClass.eIsProxy()) {
+			InternalEObject oldOtherClass = (InternalEObject)otherClass;
+			otherClass = (IClassHandle)eResolveProxy(oldOtherClass);
+			if (otherClass != oldOtherClass) {
+				InternalEObject newOtherClass = (InternalEObject)otherClass;
+				NotificationChain msgs = oldOtherClass.eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.LINKS_TYPE__OTHER_CLASS, null, null);
+				if (newOtherClass.eInternalContainer() == null) {
+					msgs = newOtherClass.eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.LINKS_TYPE__OTHER_CLASS, null, msgs);
+				}
+				if (msgs != null) msgs.dispatch();
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.LINKS_TYPE__OTHER_CLASS, oldOtherClass, otherClass));
+			}
+		}
+		return otherClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IClassHandle basicGetOtherClass() {
+		return otherClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public NotificationChain basicSetOtherClass(IClassHandle newOtherClass, NotificationChain msgs) {
+		IClassHandle oldOtherClass = otherClass;
+		otherClass = newOtherClass;
+		if (eNotificationRequired()) {
+			ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, UMLRpyPackage.LINKS_TYPE__OTHER_CLASS, oldOtherClass, newOtherClass);
+			if (msgs == null) msgs = notification; else msgs.add(notification);
+		}
+		return msgs;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setOtherClass(IClassHandle newOtherClass) {
+		if (newOtherClass != otherClass) {
+			NotificationChain msgs = null;
+			if (otherClass != null)
+				msgs = ((InternalEObject)otherClass).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.LINKS_TYPE__OTHER_CLASS, null, msgs);
+			if (newOtherClass != null)
+				msgs = ((InternalEObject)newOtherClass).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.LINKS_TYPE__OTHER_CLASS, null, msgs);
+			msgs = basicSetOtherClass(newOtherClass, msgs);
+			if (msgs != null) msgs.dispatch();
+		}
+		else if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.LINKS_TYPE__OTHER_CLASS, newOtherClass, newOtherClass));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
+		switch (featureID) {
+			case UMLRpyPackage.LINKS_TYPE__OTHER_CLASS:
+				return basicSetOtherClass(null, msgs);
+		}
+		return super.eInverseRemove(otherEnd, featureID, msgs);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object eGet(int featureID, boolean resolve, boolean coreType) {
+		switch (featureID) {
+			case UMLRpyPackage.LINKS_TYPE__ID:
+				return getId();
+			case UMLRpyPackage.LINKS_TYPE__MULTIPLICITY:
+				return getMultiplicity();
+			case UMLRpyPackage.LINKS_TYPE__NAME:
+				return getName();
+			case UMLRpyPackage.LINKS_TYPE__OTHER_CLASS:
+				if (resolve) return getOtherClass();
+				return basicGetOtherClass();
+		}
+		return super.eGet(featureID, resolve, coreType);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void eSet(int featureID, Object newValue) {
+		switch (featureID) {
+			case UMLRpyPackage.LINKS_TYPE__ID:
+				setId((String)newValue);
+				return;
+			case UMLRpyPackage.LINKS_TYPE__MULTIPLICITY:
+				setMultiplicity((String)newValue);
+				return;
+			case UMLRpyPackage.LINKS_TYPE__NAME:
+				setName((String)newValue);
+				return;
+			case UMLRpyPackage.LINKS_TYPE__OTHER_CLASS:
+				setOtherClass((IClassHandle)newValue);
+				return;
+		}
+		super.eSet(featureID, newValue);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void eUnset(int featureID) {
+		switch (featureID) {
+			case UMLRpyPackage.LINKS_TYPE__ID:
+				setId(ID_EDEFAULT);
+				return;
+			case UMLRpyPackage.LINKS_TYPE__MULTIPLICITY:
+				setMultiplicity(MULTIPLICITY_EDEFAULT);
+				return;
+			case UMLRpyPackage.LINKS_TYPE__NAME:
+				setName(NAME_EDEFAULT);
+				return;
+			case UMLRpyPackage.LINKS_TYPE__OTHER_CLASS:
+				setOtherClass((IClassHandle)null);
+				return;
+		}
+		super.eUnset(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public boolean eIsSet(int featureID) {
+		switch (featureID) {
+			case UMLRpyPackage.LINKS_TYPE__ID:
+				return ID_EDEFAULT == null ? id != null : !ID_EDEFAULT.equals(id);
+			case UMLRpyPackage.LINKS_TYPE__MULTIPLICITY:
+				return MULTIPLICITY_EDEFAULT == null ? multiplicity != null : !MULTIPLICITY_EDEFAULT.equals(multiplicity);
+			case UMLRpyPackage.LINKS_TYPE__NAME:
+				return NAME_EDEFAULT == null ? name != null : !NAME_EDEFAULT.equals(name);
+			case UMLRpyPackage.LINKS_TYPE__OTHER_CLASS:
+				return otherClass != null;
+		}
+		return super.eIsSet(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String toString() {
+		if (eIsProxy()) return super.toString();
+
+		StringBuffer result = new StringBuffer(super.toString());
+		result.append(" (id: "); //$NON-NLS-1$
+		result.append(id);
+		result.append(", multiplicity: "); //$NON-NLS-1$
+		result.append(multiplicity);
+		result.append(", name: "); //$NON-NLS-1$
+		result.append(name);
+		result.append(')');
+		return result.toString();
+	}
+
+} //LinksTypeImpl
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/M_hTargetTypeImpl.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/M_hTargetTypeImpl.java
new file mode 100755
index 0000000..ab898e5
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/M_hTargetTypeImpl.java
@@ -0,0 +1,369 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl;
+
+import org.eclipse.emf.common.notify.Notification;
+import org.eclipse.emf.common.notify.NotificationChain;
+
+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.papyrus.interoperability.rpy.rpymetamodel.IDescription;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IPropertyContainer;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.M_hTargetType;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>MhTarget Type</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * </p>
+ * <ul>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.M_hTargetTypeImpl#getRequiremenTracabilityHandle <em>Requiremen Tracability Handle</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.M_hTargetTypeImpl#getDescription <em>Description</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.M_hTargetTypeImpl#getProperties <em>Properties</em>}</li>
+ * </ul>
+ *
+ * @generated
+ */
+public abstract class M_hTargetTypeImpl extends MinimalEObjectImpl.Container implements M_hTargetType {
+	/**
+	 * The default value of the '{@link #getRequiremenTracabilityHandle() <em>Requiremen Tracability Handle</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getRequiremenTracabilityHandle()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String REQUIREMEN_TRACABILITY_HANDLE_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getRequiremenTracabilityHandle() <em>Requiremen Tracability Handle</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getRequiremenTracabilityHandle()
+	 * @generated
+	 * @ordered
+	 */
+	protected String requiremenTracabilityHandle = REQUIREMEN_TRACABILITY_HANDLE_EDEFAULT;
+
+	/**
+	 * The cached value of the '{@link #getDescription() <em>Description</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getDescription()
+	 * @generated
+	 * @ordered
+	 */
+	protected IDescription description;
+
+	/**
+	 * The cached value of the '{@link #getProperties() <em>Properties</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getProperties()
+	 * @generated
+	 * @ordered
+	 */
+	protected IPropertyContainer properties;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected M_hTargetTypeImpl() {
+		super();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EClass eStaticClass() {
+		return UMLRpyPackage.eINSTANCE.getM_hTargetType();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getRequiremenTracabilityHandle() {
+		return requiremenTracabilityHandle;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setRequiremenTracabilityHandle(String newRequiremenTracabilityHandle) {
+		String oldRequiremenTracabilityHandle = requiremenTracabilityHandle;
+		requiremenTracabilityHandle = newRequiremenTracabilityHandle;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.MHTARGET_TYPE__REQUIREMEN_TRACABILITY_HANDLE, oldRequiremenTracabilityHandle, requiremenTracabilityHandle));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IDescription getDescription() {
+		if (description != null && description.eIsProxy()) {
+			InternalEObject oldDescription = (InternalEObject)description;
+			description = (IDescription)eResolveProxy(oldDescription);
+			if (description != oldDescription) {
+				InternalEObject newDescription = (InternalEObject)description;
+				NotificationChain msgs = oldDescription.eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.MHTARGET_TYPE__DESCRIPTION, null, null);
+				if (newDescription.eInternalContainer() == null) {
+					msgs = newDescription.eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.MHTARGET_TYPE__DESCRIPTION, null, msgs);
+				}
+				if (msgs != null) msgs.dispatch();
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.MHTARGET_TYPE__DESCRIPTION, oldDescription, description));
+			}
+		}
+		return description;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IDescription basicGetDescription() {
+		return description;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public NotificationChain basicSetDescription(IDescription newDescription, NotificationChain msgs) {
+		IDescription oldDescription = description;
+		description = newDescription;
+		if (eNotificationRequired()) {
+			ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, UMLRpyPackage.MHTARGET_TYPE__DESCRIPTION, oldDescription, newDescription);
+			if (msgs == null) msgs = notification; else msgs.add(notification);
+		}
+		return msgs;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setDescription(IDescription newDescription) {
+		if (newDescription != description) {
+			NotificationChain msgs = null;
+			if (description != null)
+				msgs = ((InternalEObject)description).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.MHTARGET_TYPE__DESCRIPTION, null, msgs);
+			if (newDescription != null)
+				msgs = ((InternalEObject)newDescription).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.MHTARGET_TYPE__DESCRIPTION, null, msgs);
+			msgs = basicSetDescription(newDescription, msgs);
+			if (msgs != null) msgs.dispatch();
+		}
+		else if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.MHTARGET_TYPE__DESCRIPTION, newDescription, newDescription));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IPropertyContainer getProperties() {
+		if (properties != null && properties.eIsProxy()) {
+			InternalEObject oldProperties = (InternalEObject)properties;
+			properties = (IPropertyContainer)eResolveProxy(oldProperties);
+			if (properties != oldProperties) {
+				InternalEObject newProperties = (InternalEObject)properties;
+				NotificationChain msgs = oldProperties.eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.MHTARGET_TYPE__PROPERTIES, null, null);
+				if (newProperties.eInternalContainer() == null) {
+					msgs = newProperties.eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.MHTARGET_TYPE__PROPERTIES, null, msgs);
+				}
+				if (msgs != null) msgs.dispatch();
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.MHTARGET_TYPE__PROPERTIES, oldProperties, properties));
+			}
+		}
+		return properties;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IPropertyContainer basicGetProperties() {
+		return properties;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public NotificationChain basicSetProperties(IPropertyContainer newProperties, NotificationChain msgs) {
+		IPropertyContainer oldProperties = properties;
+		properties = newProperties;
+		if (eNotificationRequired()) {
+			ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, UMLRpyPackage.MHTARGET_TYPE__PROPERTIES, oldProperties, newProperties);
+			if (msgs == null) msgs = notification; else msgs.add(notification);
+		}
+		return msgs;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setProperties(IPropertyContainer newProperties) {
+		if (newProperties != properties) {
+			NotificationChain msgs = null;
+			if (properties != null)
+				msgs = ((InternalEObject)properties).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.MHTARGET_TYPE__PROPERTIES, null, msgs);
+			if (newProperties != null)
+				msgs = ((InternalEObject)newProperties).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.MHTARGET_TYPE__PROPERTIES, null, msgs);
+			msgs = basicSetProperties(newProperties, msgs);
+			if (msgs != null) msgs.dispatch();
+		}
+		else if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.MHTARGET_TYPE__PROPERTIES, newProperties, newProperties));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
+		switch (featureID) {
+			case UMLRpyPackage.MHTARGET_TYPE__DESCRIPTION:
+				return basicSetDescription(null, msgs);
+			case UMLRpyPackage.MHTARGET_TYPE__PROPERTIES:
+				return basicSetProperties(null, msgs);
+		}
+		return super.eInverseRemove(otherEnd, featureID, msgs);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object eGet(int featureID, boolean resolve, boolean coreType) {
+		switch (featureID) {
+			case UMLRpyPackage.MHTARGET_TYPE__REQUIREMEN_TRACABILITY_HANDLE:
+				return getRequiremenTracabilityHandle();
+			case UMLRpyPackage.MHTARGET_TYPE__DESCRIPTION:
+				if (resolve) return getDescription();
+				return basicGetDescription();
+			case UMLRpyPackage.MHTARGET_TYPE__PROPERTIES:
+				if (resolve) return getProperties();
+				return basicGetProperties();
+		}
+		return super.eGet(featureID, resolve, coreType);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void eSet(int featureID, Object newValue) {
+		switch (featureID) {
+			case UMLRpyPackage.MHTARGET_TYPE__REQUIREMEN_TRACABILITY_HANDLE:
+				setRequiremenTracabilityHandle((String)newValue);
+				return;
+			case UMLRpyPackage.MHTARGET_TYPE__DESCRIPTION:
+				setDescription((IDescription)newValue);
+				return;
+			case UMLRpyPackage.MHTARGET_TYPE__PROPERTIES:
+				setProperties((IPropertyContainer)newValue);
+				return;
+		}
+		super.eSet(featureID, newValue);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void eUnset(int featureID) {
+		switch (featureID) {
+			case UMLRpyPackage.MHTARGET_TYPE__REQUIREMEN_TRACABILITY_HANDLE:
+				setRequiremenTracabilityHandle(REQUIREMEN_TRACABILITY_HANDLE_EDEFAULT);
+				return;
+			case UMLRpyPackage.MHTARGET_TYPE__DESCRIPTION:
+				setDescription((IDescription)null);
+				return;
+			case UMLRpyPackage.MHTARGET_TYPE__PROPERTIES:
+				setProperties((IPropertyContainer)null);
+				return;
+		}
+		super.eUnset(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public boolean eIsSet(int featureID) {
+		switch (featureID) {
+			case UMLRpyPackage.MHTARGET_TYPE__REQUIREMEN_TRACABILITY_HANDLE:
+				return REQUIREMEN_TRACABILITY_HANDLE_EDEFAULT == null ? requiremenTracabilityHandle != null : !REQUIREMEN_TRACABILITY_HANDLE_EDEFAULT.equals(requiremenTracabilityHandle);
+			case UMLRpyPackage.MHTARGET_TYPE__DESCRIPTION:
+				return description != null;
+			case UMLRpyPackage.MHTARGET_TYPE__PROPERTIES:
+				return properties != null;
+		}
+		return super.eIsSet(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String toString() {
+		if (eIsProxy()) return super.toString();
+
+		StringBuffer result = new StringBuffer(super.toString());
+		result.append(" (requiremenTracabilityHandle: "); //$NON-NLS-1$
+		result.append(requiremenTracabilityHandle);
+		result.append(')');
+		return result.toString();
+	}
+
+} //M_hTargetTypeImpl
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/M_pBaseTypeImpl.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/M_pBaseTypeImpl.java
new file mode 100755
index 0000000..ecf685b
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/M_pBaseTypeImpl.java
@@ -0,0 +1,47 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl;
+
+import org.eclipse.emf.ecore.EClass;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.M_pBaseType;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>MpBase Type</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+public abstract class M_pBaseTypeImpl extends M_pModelObjectTypeImpl implements M_pBaseType {
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected M_pBaseTypeImpl() {
+		super();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EClass eStaticClass() {
+		return UMLRpyPackage.eINSTANCE.getM_pBaseType();
+	}
+
+} //M_pBaseTypeImpl
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/M_pFormalMessageTypeImpl.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/M_pFormalMessageTypeImpl.java
new file mode 100755
index 0000000..28c8a82
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/M_pFormalMessageTypeImpl.java
@@ -0,0 +1,49 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl;
+
+import org.eclipse.emf.ecore.EClass;
+
+import org.eclipse.emf.ecore.impl.MinimalEObjectImpl;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.M_pFormalMessageType;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>MpFormal Message Type</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+public abstract class M_pFormalMessageTypeImpl extends MinimalEObjectImpl.Container implements M_pFormalMessageType {
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected M_pFormalMessageTypeImpl() {
+		super();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EClass eStaticClass() {
+		return UMLRpyPackage.eINSTANCE.getM_pFormalMessageType();
+	}
+
+} //M_pFormalMessageTypeImpl
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/M_pModelObjectTypeImpl.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/M_pModelObjectTypeImpl.java
new file mode 100755
index 0000000..773afde
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/M_pModelObjectTypeImpl.java
@@ -0,0 +1,49 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl;
+
+import org.eclipse.emf.ecore.EClass;
+
+import org.eclipse.emf.ecore.impl.MinimalEObjectImpl;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.M_pModelObjectType;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>MpModel Object Type</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+public abstract class M_pModelObjectTypeImpl extends MinimalEObjectImpl.Container implements M_pModelObjectType {
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected M_pModelObjectTypeImpl() {
+		super();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EClass eStaticClass() {
+		return UMLRpyPackage.eINSTANCE.getM_pModelObjectType();
+	}
+
+} //M_pModelObjectTypeImpl
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/M_pRootTypeImpl.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/M_pRootTypeImpl.java
new file mode 100755
index 0000000..cce6a11
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/M_pRootTypeImpl.java
@@ -0,0 +1,49 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl;
+
+import org.eclipse.emf.ecore.EClass;
+
+import org.eclipse.emf.ecore.impl.MinimalEObjectImpl;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.M_pRootType;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>MpRoot Type</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+public abstract class M_pRootTypeImpl extends MinimalEObjectImpl.Container implements M_pRootType {
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected M_pRootTypeImpl() {
+		super();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EClass eStaticClass() {
+		return UMLRpyPackage.eINSTANCE.getM_pRootType();
+	}
+
+} //M_pRootTypeImpl
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/M_subjectTypeImpl.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/M_subjectTypeImpl.java
new file mode 100755
index 0000000..84922f8
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/M_subjectTypeImpl.java
@@ -0,0 +1,227 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl;
+
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.ecore.EClass;
+
+import org.eclipse.emf.ecore.impl.ENotificationImpl;
+import org.eclipse.emf.ecore.impl.MinimalEObjectImpl;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.M_subjectType;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Msubject Type</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * </p>
+ * <ul>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.M_subjectTypeImpl#getUmlDependencyID <em>Uml Dependency ID</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.M_subjectTypeImpl#getObjectCreation <em>Object Creation</em>}</li>
+ * </ul>
+ *
+ * @generated
+ */
+public abstract class M_subjectTypeImpl extends MinimalEObjectImpl.Container implements M_subjectType {
+	/**
+	 * The default value of the '{@link #getUmlDependencyID() <em>Uml Dependency ID</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getUmlDependencyID()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String UML_DEPENDENCY_ID_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getUmlDependencyID() <em>Uml Dependency ID</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getUmlDependencyID()
+	 * @generated
+	 * @ordered
+	 */
+	protected String umlDependencyID = UML_DEPENDENCY_ID_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getObjectCreation() <em>Object Creation</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getObjectCreation()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String OBJECT_CREATION_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getObjectCreation() <em>Object Creation</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getObjectCreation()
+	 * @generated
+	 * @ordered
+	 */
+	protected String objectCreation = OBJECT_CREATION_EDEFAULT;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected M_subjectTypeImpl() {
+		super();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EClass eStaticClass() {
+		return UMLRpyPackage.eINSTANCE.getM_subjectType();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getUmlDependencyID() {
+		return umlDependencyID;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setUmlDependencyID(String newUmlDependencyID) {
+		String oldUmlDependencyID = umlDependencyID;
+		umlDependencyID = newUmlDependencyID;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.MSUBJECT_TYPE__UML_DEPENDENCY_ID, oldUmlDependencyID, umlDependencyID));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getObjectCreation() {
+		return objectCreation;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setObjectCreation(String newObjectCreation) {
+		String oldObjectCreation = objectCreation;
+		objectCreation = newObjectCreation;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.MSUBJECT_TYPE__OBJECT_CREATION, oldObjectCreation, objectCreation));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object eGet(int featureID, boolean resolve, boolean coreType) {
+		switch (featureID) {
+			case UMLRpyPackage.MSUBJECT_TYPE__UML_DEPENDENCY_ID:
+				return getUmlDependencyID();
+			case UMLRpyPackage.MSUBJECT_TYPE__OBJECT_CREATION:
+				return getObjectCreation();
+		}
+		return super.eGet(featureID, resolve, coreType);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void eSet(int featureID, Object newValue) {
+		switch (featureID) {
+			case UMLRpyPackage.MSUBJECT_TYPE__UML_DEPENDENCY_ID:
+				setUmlDependencyID((String)newValue);
+				return;
+			case UMLRpyPackage.MSUBJECT_TYPE__OBJECT_CREATION:
+				setObjectCreation((String)newValue);
+				return;
+		}
+		super.eSet(featureID, newValue);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void eUnset(int featureID) {
+		switch (featureID) {
+			case UMLRpyPackage.MSUBJECT_TYPE__UML_DEPENDENCY_ID:
+				setUmlDependencyID(UML_DEPENDENCY_ID_EDEFAULT);
+				return;
+			case UMLRpyPackage.MSUBJECT_TYPE__OBJECT_CREATION:
+				setObjectCreation(OBJECT_CREATION_EDEFAULT);
+				return;
+		}
+		super.eUnset(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public boolean eIsSet(int featureID) {
+		switch (featureID) {
+			case UMLRpyPackage.MSUBJECT_TYPE__UML_DEPENDENCY_ID:
+				return UML_DEPENDENCY_ID_EDEFAULT == null ? umlDependencyID != null : !UML_DEPENDENCY_ID_EDEFAULT.equals(umlDependencyID);
+			case UMLRpyPackage.MSUBJECT_TYPE__OBJECT_CREATION:
+				return OBJECT_CREATION_EDEFAULT == null ? objectCreation != null : !OBJECT_CREATION_EDEFAULT.equals(objectCreation);
+		}
+		return super.eIsSet(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String toString() {
+		if (eIsProxy()) return super.toString();
+
+		StringBuffer result = new StringBuffer(super.toString());
+		result.append(" (umlDependencyID: "); //$NON-NLS-1$
+		result.append(umlDependencyID);
+		result.append(", objectCreation: "); //$NON-NLS-1$
+		result.append(objectCreation);
+		result.append(')');
+		return result.toString();
+	}
+
+} //M_subjectTypeImpl
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/MatrixInstancesTypeImpl.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/MatrixInstancesTypeImpl.java
new file mode 100755
index 0000000..ec43069
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/MatrixInstancesTypeImpl.java
@@ -0,0 +1,49 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl;
+
+import org.eclipse.emf.ecore.EClass;
+
+import org.eclipse.emf.ecore.impl.MinimalEObjectImpl;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.MatrixInstancesType;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Matrix Instances Type</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+public abstract class MatrixInstancesTypeImpl extends MinimalEObjectImpl.Container implements MatrixInstancesType {
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected MatrixInstancesTypeImpl() {
+		super();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EClass eStaticClass() {
+		return UMLRpyPackage.eINSTANCE.getMatrixInstancesType();
+	}
+
+} //MatrixInstancesTypeImpl
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/NestedStateChartTypeImpl.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/NestedStateChartTypeImpl.java
new file mode 100755
index 0000000..2559d8b
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/NestedStateChartTypeImpl.java
@@ -0,0 +1,450 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl;
+
+import java.util.Collection;
+
+import org.eclipse.emf.common.notify.Notification;
+import org.eclipse.emf.common.notify.NotificationChain;
+
+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.EDataTypeEList;
+import org.eclipse.emf.ecore.util.EObjectContainmentEList;
+import org.eclipse.emf.ecore.util.InternalEList;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIStateChart;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ItsTargetType;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.NestedStateChartType;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.TransitionsType;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Nested State Chart Type</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * </p>
+ * <ul>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.NestedStateChartTypeImpl#getDefNumber <em>Def Number</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.NestedStateChartTypeImpl#getGraphicChart <em>Graphic Chart</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.NestedStateChartTypeImpl#getLastModifiedTime <em>Last Modified Time</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.NestedStateChartTypeImpl#getTransitions <em>Transitions</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.NestedStateChartTypeImpl#getConnectors <em>Connectors</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.NestedStateChartTypeImpl#getVersion <em>Version</em>}</li>
+ * </ul>
+ *
+ * @generated
+ */
+public abstract class NestedStateChartTypeImpl extends ItsStateChartTypeImpl implements NestedStateChartType {
+	/**
+	 * The default value of the '{@link #getDefNumber() <em>Def Number</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getDefNumber()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String DEF_NUMBER_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getDefNumber() <em>Def Number</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getDefNumber()
+	 * @generated
+	 * @ordered
+	 */
+	protected String defNumber = DEF_NUMBER_EDEFAULT;
+
+	/**
+	 * The cached value of the '{@link #getGraphicChart() <em>Graphic Chart</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getGraphicChart()
+	 * @generated
+	 * @ordered
+	 */
+	protected CGIStateChart graphicChart;
+
+	/**
+	 * The default value of the '{@link #getLastModifiedTime() <em>Last Modified Time</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getLastModifiedTime()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String LAST_MODIFIED_TIME_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getLastModifiedTime() <em>Last Modified Time</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getLastModifiedTime()
+	 * @generated
+	 * @ordered
+	 */
+	protected String lastModifiedTime = LAST_MODIFIED_TIME_EDEFAULT;
+
+	/**
+	 * The cached value of the '{@link #getTransitions() <em>Transitions</em>}' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getTransitions()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<TransitionsType> transitions;
+
+	/**
+	 * The cached value of the '{@link #getConnectors() <em>Connectors</em>}' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getConnectors()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<ItsTargetType> connectors;
+
+	/**
+	 * The cached value of the '{@link #getVersion() <em>Version</em>}' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getVersion()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<String> version;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected NestedStateChartTypeImpl() {
+		super();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EClass eStaticClass() {
+		return UMLRpyPackage.eINSTANCE.getNestedStateChartType();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getDefNumber() {
+		return defNumber;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setDefNumber(String newDefNumber) {
+		String oldDefNumber = defNumber;
+		defNumber = newDefNumber;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.NESTED_STATE_CHART_TYPE__DEF_NUMBER, oldDefNumber, defNumber));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public CGIStateChart getGraphicChart() {
+		if (graphicChart != null && graphicChart.eIsProxy()) {
+			InternalEObject oldGraphicChart = (InternalEObject)graphicChart;
+			graphicChart = (CGIStateChart)eResolveProxy(oldGraphicChart);
+			if (graphicChart != oldGraphicChart) {
+				InternalEObject newGraphicChart = (InternalEObject)graphicChart;
+				NotificationChain msgs = oldGraphicChart.eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.NESTED_STATE_CHART_TYPE__GRAPHIC_CHART, null, null);
+				if (newGraphicChart.eInternalContainer() == null) {
+					msgs = newGraphicChart.eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.NESTED_STATE_CHART_TYPE__GRAPHIC_CHART, null, msgs);
+				}
+				if (msgs != null) msgs.dispatch();
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.NESTED_STATE_CHART_TYPE__GRAPHIC_CHART, oldGraphicChart, graphicChart));
+			}
+		}
+		return graphicChart;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public CGIStateChart basicGetGraphicChart() {
+		return graphicChart;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public NotificationChain basicSetGraphicChart(CGIStateChart newGraphicChart, NotificationChain msgs) {
+		CGIStateChart oldGraphicChart = graphicChart;
+		graphicChart = newGraphicChart;
+		if (eNotificationRequired()) {
+			ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, UMLRpyPackage.NESTED_STATE_CHART_TYPE__GRAPHIC_CHART, oldGraphicChart, newGraphicChart);
+			if (msgs == null) msgs = notification; else msgs.add(notification);
+		}
+		return msgs;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setGraphicChart(CGIStateChart newGraphicChart) {
+		if (newGraphicChart != graphicChart) {
+			NotificationChain msgs = null;
+			if (graphicChart != null)
+				msgs = ((InternalEObject)graphicChart).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.NESTED_STATE_CHART_TYPE__GRAPHIC_CHART, null, msgs);
+			if (newGraphicChart != null)
+				msgs = ((InternalEObject)newGraphicChart).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.NESTED_STATE_CHART_TYPE__GRAPHIC_CHART, null, msgs);
+			msgs = basicSetGraphicChart(newGraphicChart, msgs);
+			if (msgs != null) msgs.dispatch();
+		}
+		else if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.NESTED_STATE_CHART_TYPE__GRAPHIC_CHART, newGraphicChart, newGraphicChart));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getLastModifiedTime() {
+		return lastModifiedTime;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setLastModifiedTime(String newLastModifiedTime) {
+		String oldLastModifiedTime = lastModifiedTime;
+		lastModifiedTime = newLastModifiedTime;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.NESTED_STATE_CHART_TYPE__LAST_MODIFIED_TIME, oldLastModifiedTime, lastModifiedTime));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<TransitionsType> getTransitions() {
+		if (transitions == null) {
+			transitions = new EObjectContainmentEList.Resolving<TransitionsType>(TransitionsType.class, this, UMLRpyPackage.NESTED_STATE_CHART_TYPE__TRANSITIONS);
+		}
+		return transitions;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<ItsTargetType> getConnectors() {
+		if (connectors == null) {
+			connectors = new EObjectContainmentEList.Resolving<ItsTargetType>(ItsTargetType.class, this, UMLRpyPackage.NESTED_STATE_CHART_TYPE__CONNECTORS);
+		}
+		return connectors;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<String> getVersion() {
+		if (version == null) {
+			version = new EDataTypeEList<String>(String.class, this, UMLRpyPackage.NESTED_STATE_CHART_TYPE__VERSION);
+		}
+		return version;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
+		switch (featureID) {
+			case UMLRpyPackage.NESTED_STATE_CHART_TYPE__GRAPHIC_CHART:
+				return basicSetGraphicChart(null, msgs);
+			case UMLRpyPackage.NESTED_STATE_CHART_TYPE__TRANSITIONS:
+				return ((InternalEList<?>)getTransitions()).basicRemove(otherEnd, msgs);
+			case UMLRpyPackage.NESTED_STATE_CHART_TYPE__CONNECTORS:
+				return ((InternalEList<?>)getConnectors()).basicRemove(otherEnd, msgs);
+		}
+		return super.eInverseRemove(otherEnd, featureID, msgs);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object eGet(int featureID, boolean resolve, boolean coreType) {
+		switch (featureID) {
+			case UMLRpyPackage.NESTED_STATE_CHART_TYPE__DEF_NUMBER:
+				return getDefNumber();
+			case UMLRpyPackage.NESTED_STATE_CHART_TYPE__GRAPHIC_CHART:
+				if (resolve) return getGraphicChart();
+				return basicGetGraphicChart();
+			case UMLRpyPackage.NESTED_STATE_CHART_TYPE__LAST_MODIFIED_TIME:
+				return getLastModifiedTime();
+			case UMLRpyPackage.NESTED_STATE_CHART_TYPE__TRANSITIONS:
+				return getTransitions();
+			case UMLRpyPackage.NESTED_STATE_CHART_TYPE__CONNECTORS:
+				return getConnectors();
+			case UMLRpyPackage.NESTED_STATE_CHART_TYPE__VERSION:
+				return getVersion();
+		}
+		return super.eGet(featureID, resolve, coreType);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@SuppressWarnings("unchecked")
+	@Override
+	public void eSet(int featureID, Object newValue) {
+		switch (featureID) {
+			case UMLRpyPackage.NESTED_STATE_CHART_TYPE__DEF_NUMBER:
+				setDefNumber((String)newValue);
+				return;
+			case UMLRpyPackage.NESTED_STATE_CHART_TYPE__GRAPHIC_CHART:
+				setGraphicChart((CGIStateChart)newValue);
+				return;
+			case UMLRpyPackage.NESTED_STATE_CHART_TYPE__LAST_MODIFIED_TIME:
+				setLastModifiedTime((String)newValue);
+				return;
+			case UMLRpyPackage.NESTED_STATE_CHART_TYPE__TRANSITIONS:
+				getTransitions().clear();
+				getTransitions().addAll((Collection<? extends TransitionsType>)newValue);
+				return;
+			case UMLRpyPackage.NESTED_STATE_CHART_TYPE__CONNECTORS:
+				getConnectors().clear();
+				getConnectors().addAll((Collection<? extends ItsTargetType>)newValue);
+				return;
+			case UMLRpyPackage.NESTED_STATE_CHART_TYPE__VERSION:
+				getVersion().clear();
+				getVersion().addAll((Collection<? extends String>)newValue);
+				return;
+		}
+		super.eSet(featureID, newValue);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void eUnset(int featureID) {
+		switch (featureID) {
+			case UMLRpyPackage.NESTED_STATE_CHART_TYPE__DEF_NUMBER:
+				setDefNumber(DEF_NUMBER_EDEFAULT);
+				return;
+			case UMLRpyPackage.NESTED_STATE_CHART_TYPE__GRAPHIC_CHART:
+				setGraphicChart((CGIStateChart)null);
+				return;
+			case UMLRpyPackage.NESTED_STATE_CHART_TYPE__LAST_MODIFIED_TIME:
+				setLastModifiedTime(LAST_MODIFIED_TIME_EDEFAULT);
+				return;
+			case UMLRpyPackage.NESTED_STATE_CHART_TYPE__TRANSITIONS:
+				getTransitions().clear();
+				return;
+			case UMLRpyPackage.NESTED_STATE_CHART_TYPE__CONNECTORS:
+				getConnectors().clear();
+				return;
+			case UMLRpyPackage.NESTED_STATE_CHART_TYPE__VERSION:
+				getVersion().clear();
+				return;
+		}
+		super.eUnset(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public boolean eIsSet(int featureID) {
+		switch (featureID) {
+			case UMLRpyPackage.NESTED_STATE_CHART_TYPE__DEF_NUMBER:
+				return DEF_NUMBER_EDEFAULT == null ? defNumber != null : !DEF_NUMBER_EDEFAULT.equals(defNumber);
+			case UMLRpyPackage.NESTED_STATE_CHART_TYPE__GRAPHIC_CHART:
+				return graphicChart != null;
+			case UMLRpyPackage.NESTED_STATE_CHART_TYPE__LAST_MODIFIED_TIME:
+				return LAST_MODIFIED_TIME_EDEFAULT == null ? lastModifiedTime != null : !LAST_MODIFIED_TIME_EDEFAULT.equals(lastModifiedTime);
+			case UMLRpyPackage.NESTED_STATE_CHART_TYPE__TRANSITIONS:
+				return transitions != null && !transitions.isEmpty();
+			case UMLRpyPackage.NESTED_STATE_CHART_TYPE__CONNECTORS:
+				return connectors != null && !connectors.isEmpty();
+			case UMLRpyPackage.NESTED_STATE_CHART_TYPE__VERSION:
+				return version != null && !version.isEmpty();
+		}
+		return super.eIsSet(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String toString() {
+		if (eIsProxy()) return super.toString();
+
+		StringBuffer result = new StringBuffer(super.toString());
+		result.append(" (defNumber: "); //$NON-NLS-1$
+		result.append(defNumber);
+		result.append(", lastModifiedTime: "); //$NON-NLS-1$
+		result.append(lastModifiedTime);
+		result.append(", version: "); //$NON-NLS-1$
+		result.append(version);
+		result.append(')');
+		return result.toString();
+	}
+
+} //NestedStateChartTypeImpl
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/ObjectLinksTypeImpl.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/ObjectLinksTypeImpl.java
new file mode 100755
index 0000000..87f4af7
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/ObjectLinksTypeImpl.java
@@ -0,0 +1,49 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl;
+
+import org.eclipse.emf.ecore.EClass;
+
+import org.eclipse.emf.ecore.impl.MinimalEObjectImpl;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ObjectLinksType;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Object Links Type</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+public abstract class ObjectLinksTypeImpl extends MinimalEObjectImpl.Container implements ObjectLinksType {
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected ObjectLinksTypeImpl() {
+		super();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EClass eStaticClass() {
+		return UMLRpyPackage.eINSTANCE.getObjectLinksType();
+	}
+
+} //ObjectLinksTypeImpl
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/OperationsTypeImpl.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/OperationsTypeImpl.java
new file mode 100755
index 0000000..586d171
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/OperationsTypeImpl.java
@@ -0,0 +1,173 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl;
+
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.ecore.EClass;
+
+import org.eclipse.emf.ecore.impl.ENotificationImpl;
+import org.eclipse.emf.ecore.impl.MinimalEObjectImpl;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.OperationsType;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Operations Type</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * </p>
+ * <ul>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.OperationsTypeImpl#getVirtual <em>Virtual</em>}</li>
+ * </ul>
+ *
+ * @generated
+ */
+public abstract class OperationsTypeImpl extends MinimalEObjectImpl.Container implements OperationsType {
+	/**
+	 * The default value of the '{@link #getVirtual() <em>Virtual</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getVirtual()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String VIRTUAL_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getVirtual() <em>Virtual</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getVirtual()
+	 * @generated
+	 * @ordered
+	 */
+	protected String virtual = VIRTUAL_EDEFAULT;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected OperationsTypeImpl() {
+		super();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EClass eStaticClass() {
+		return UMLRpyPackage.eINSTANCE.getOperationsType();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getVirtual() {
+		return virtual;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setVirtual(String newVirtual) {
+		String oldVirtual = virtual;
+		virtual = newVirtual;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.OPERATIONS_TYPE__VIRTUAL, oldVirtual, virtual));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object eGet(int featureID, boolean resolve, boolean coreType) {
+		switch (featureID) {
+			case UMLRpyPackage.OPERATIONS_TYPE__VIRTUAL:
+				return getVirtual();
+		}
+		return super.eGet(featureID, resolve, coreType);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void eSet(int featureID, Object newValue) {
+		switch (featureID) {
+			case UMLRpyPackage.OPERATIONS_TYPE__VIRTUAL:
+				setVirtual((String)newValue);
+				return;
+		}
+		super.eSet(featureID, newValue);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void eUnset(int featureID) {
+		switch (featureID) {
+			case UMLRpyPackage.OPERATIONS_TYPE__VIRTUAL:
+				setVirtual(VIRTUAL_EDEFAULT);
+				return;
+		}
+		super.eUnset(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public boolean eIsSet(int featureID) {
+		switch (featureID) {
+			case UMLRpyPackage.OPERATIONS_TYPE__VIRTUAL:
+				return VIRTUAL_EDEFAULT == null ? virtual != null : !VIRTUAL_EDEFAULT.equals(virtual);
+		}
+		return super.eIsSet(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String toString() {
+		if (eIsProxy()) return super.toString();
+
+		StringBuffer result = new StringBuffer(super.toString());
+		result.append(" (virtual: "); //$NON-NLS-1$
+		result.append(virtual);
+		result.append(')');
+		return result.toString();
+	}
+
+} //OperationsTypeImpl
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/OwnerHandleTypeImpl.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/OwnerHandleTypeImpl.java
new file mode 100755
index 0000000..aaa9369
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/OwnerHandleTypeImpl.java
@@ -0,0 +1,193 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl;
+
+import java.util.Collection;
+
+import org.eclipse.emf.common.util.EList;
+
+import org.eclipse.emf.ecore.EClass;
+
+import org.eclipse.emf.ecore.util.EDataTypeEList;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.OwnerHandleType;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Owner Handle Type</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * </p>
+ * <ul>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.OwnerHandleTypeImpl#getWeakCGTime <em>Weak CG Time</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.OwnerHandleTypeImpl#getStrongCGTime <em>Strong CG Time</em>}</li>
+ * </ul>
+ *
+ * @generated
+ */
+public abstract class OwnerHandleTypeImpl extends DefaultSubsystemTypeImpl implements OwnerHandleType {
+	/**
+	 * The cached value of the '{@link #getWeakCGTime() <em>Weak CG Time</em>}' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getWeakCGTime()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<String> weakCGTime;
+
+	/**
+	 * The cached value of the '{@link #getStrongCGTime() <em>Strong CG Time</em>}' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getStrongCGTime()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<String> strongCGTime;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected OwnerHandleTypeImpl() {
+		super();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EClass eStaticClass() {
+		return UMLRpyPackage.eINSTANCE.getOwnerHandleType();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<String> getWeakCGTime() {
+		if (weakCGTime == null) {
+			weakCGTime = new EDataTypeEList<String>(String.class, this, UMLRpyPackage.OWNER_HANDLE_TYPE__WEAK_CG_TIME);
+		}
+		return weakCGTime;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<String> getStrongCGTime() {
+		if (strongCGTime == null) {
+			strongCGTime = new EDataTypeEList<String>(String.class, this, UMLRpyPackage.OWNER_HANDLE_TYPE__STRONG_CG_TIME);
+		}
+		return strongCGTime;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object eGet(int featureID, boolean resolve, boolean coreType) {
+		switch (featureID) {
+			case UMLRpyPackage.OWNER_HANDLE_TYPE__WEAK_CG_TIME:
+				return getWeakCGTime();
+			case UMLRpyPackage.OWNER_HANDLE_TYPE__STRONG_CG_TIME:
+				return getStrongCGTime();
+		}
+		return super.eGet(featureID, resolve, coreType);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@SuppressWarnings("unchecked")
+	@Override
+	public void eSet(int featureID, Object newValue) {
+		switch (featureID) {
+			case UMLRpyPackage.OWNER_HANDLE_TYPE__WEAK_CG_TIME:
+				getWeakCGTime().clear();
+				getWeakCGTime().addAll((Collection<? extends String>)newValue);
+				return;
+			case UMLRpyPackage.OWNER_HANDLE_TYPE__STRONG_CG_TIME:
+				getStrongCGTime().clear();
+				getStrongCGTime().addAll((Collection<? extends String>)newValue);
+				return;
+		}
+		super.eSet(featureID, newValue);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void eUnset(int featureID) {
+		switch (featureID) {
+			case UMLRpyPackage.OWNER_HANDLE_TYPE__WEAK_CG_TIME:
+				getWeakCGTime().clear();
+				return;
+			case UMLRpyPackage.OWNER_HANDLE_TYPE__STRONG_CG_TIME:
+				getStrongCGTime().clear();
+				return;
+		}
+		super.eUnset(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public boolean eIsSet(int featureID) {
+		switch (featureID) {
+			case UMLRpyPackage.OWNER_HANDLE_TYPE__WEAK_CG_TIME:
+				return weakCGTime != null && !weakCGTime.isEmpty();
+			case UMLRpyPackage.OWNER_HANDLE_TYPE__STRONG_CG_TIME:
+				return strongCGTime != null && !strongCGTime.isEmpty();
+		}
+		return super.eIsSet(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String toString() {
+		if (eIsProxy()) return super.toString();
+
+		StringBuffer result = new StringBuffer(super.toString());
+		result.append(" (weakCGTime: "); //$NON-NLS-1$
+		result.append(weakCGTime);
+		result.append(", strongCGTime: "); //$NON-NLS-1$
+		result.append(strongCGTime);
+		result.append(')');
+		return result.toString();
+	}
+
+} //OwnerHandleTypeImpl
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/P_MessageHandlerTypeImpl.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/P_MessageHandlerTypeImpl.java
new file mode 100755
index 0000000..6ec0655
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/P_MessageHandlerTypeImpl.java
@@ -0,0 +1,49 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl;
+
+import org.eclipse.emf.ecore.EClass;
+
+import org.eclipse.emf.ecore.impl.MinimalEObjectImpl;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.P_MessageHandlerType;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>PMessage Handler Type</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+public abstract class P_MessageHandlerTypeImpl extends MinimalEObjectImpl.Container implements P_MessageHandlerType {
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected P_MessageHandlerTypeImpl() {
+		super();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EClass eStaticClass() {
+		return UMLRpyPackage.eINSTANCE.getP_MessageHandlerType();
+	}
+
+} //P_MessageHandlerTypeImpl
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/ParentTypeImpl.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/ParentTypeImpl.java
new file mode 100755
index 0000000..98108dd
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/ParentTypeImpl.java
@@ -0,0 +1,49 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl;
+
+import org.eclipse.emf.ecore.EClass;
+
+import org.eclipse.emf.ecore.impl.MinimalEObjectImpl;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ParentType;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Parent Type</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+public abstract class ParentTypeImpl extends MinimalEObjectImpl.Container implements ParentType {
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected ParentTypeImpl() {
+		super();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EClass eStaticClass() {
+		return UMLRpyPackage.eINSTANCE.getParentType();
+	}
+
+} //ParentTypeImpl
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/PropertiesTypeImpl.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/PropertiesTypeImpl.java
new file mode 100755
index 0000000..4db00e6
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/PropertiesTypeImpl.java
@@ -0,0 +1,49 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl;
+
+import org.eclipse.emf.ecore.EClass;
+
+import org.eclipse.emf.ecore.impl.MinimalEObjectImpl;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.PropertiesType;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Properties Type</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+public abstract class PropertiesTypeImpl extends MinimalEObjectImpl.Container implements PropertiesType {
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected PropertiesTypeImpl() {
+		super();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EClass eStaticClass() {
+		return UMLRpyPackage.eINSTANCE.getPropertiesType();
+	}
+
+} //PropertiesTypeImpl
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/TableDataDefinitionImpl.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/TableDataDefinitionImpl.java
new file mode 100755
index 0000000..4db51ab
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/TableDataDefinitionImpl.java
@@ -0,0 +1,404 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.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.emf.ecore.impl.MinimalEObjectImpl;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IModelElement;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IUnit;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.TableDataDefinition;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Table Data Definition</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * </p>
+ * <ul>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.TableDataDefinitionImpl#getMyTable <em>My Table</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.TableDataDefinitionImpl#getName <em>Name</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.TableDataDefinitionImpl#getDataType <em>Data Type</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.TableDataDefinitionImpl#getColumnName <em>Column Name</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.TableDataDefinitionImpl#getModelElement <em>Model Element</em>}</li>
+ * </ul>
+ *
+ * @generated
+ */
+public class TableDataDefinitionImpl extends MinimalEObjectImpl.Container implements TableDataDefinition {
+	/**
+	 * The cached value of the '{@link #getMyTable() <em>My Table</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getMyTable()
+	 * @generated
+	 * @ordered
+	 */
+	protected IModelElement myTable;
+
+	/**
+	 * The default value of the '{@link #getName() <em>Name</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getName()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String NAME_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getName() <em>Name</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getName()
+	 * @generated
+	 * @ordered
+	 */
+	protected String name = NAME_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getDataType() <em>Data Type</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getDataType()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String DATA_TYPE_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getDataType() <em>Data Type</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getDataType()
+	 * @generated
+	 * @ordered
+	 */
+	protected String dataType = DATA_TYPE_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getColumnName() <em>Column Name</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getColumnName()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String COLUMN_NAME_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getColumnName() <em>Column Name</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getColumnName()
+	 * @generated
+	 * @ordered
+	 */
+	protected String columnName = COLUMN_NAME_EDEFAULT;
+
+	/**
+	 * The cached value of the '{@link #getModelElement() <em>Model Element</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getModelElement()
+	 * @generated
+	 * @ordered
+	 */
+	protected IUnit modelElement;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected TableDataDefinitionImpl() {
+		super();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EClass eStaticClass() {
+		return UMLRpyPackage.eINSTANCE.getTableDataDefinition();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IModelElement getMyTable() {
+		if (myTable != null && myTable.eIsProxy()) {
+			InternalEObject oldMyTable = (InternalEObject)myTable;
+			myTable = (IModelElement)eResolveProxy(oldMyTable);
+			if (myTable != oldMyTable) {
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.TABLE_DATA_DEFINITION__MY_TABLE, oldMyTable, myTable));
+			}
+		}
+		return myTable;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IModelElement basicGetMyTable() {
+		return myTable;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setMyTable(IModelElement newMyTable) {
+		IModelElement oldMyTable = myTable;
+		myTable = newMyTable;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.TABLE_DATA_DEFINITION__MY_TABLE, oldMyTable, myTable));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getName() {
+		return name;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setName(String newName) {
+		String oldName = name;
+		name = newName;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.TABLE_DATA_DEFINITION__NAME, oldName, name));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getDataType() {
+		return dataType;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setDataType(String newDataType) {
+		String oldDataType = dataType;
+		dataType = newDataType;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.TABLE_DATA_DEFINITION__DATA_TYPE, oldDataType, dataType));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getColumnName() {
+		return columnName;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setColumnName(String newColumnName) {
+		String oldColumnName = columnName;
+		columnName = newColumnName;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.TABLE_DATA_DEFINITION__COLUMN_NAME, oldColumnName, columnName));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IUnit getModelElement() {
+		if (modelElement != null && modelElement.eIsProxy()) {
+			InternalEObject oldModelElement = (InternalEObject)modelElement;
+			modelElement = (IUnit)eResolveProxy(oldModelElement);
+			if (modelElement != oldModelElement) {
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.TABLE_DATA_DEFINITION__MODEL_ELEMENT, oldModelElement, modelElement));
+			}
+		}
+		return modelElement;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IUnit basicGetModelElement() {
+		return modelElement;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setModelElement(IUnit newModelElement) {
+		IUnit oldModelElement = modelElement;
+		modelElement = newModelElement;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.TABLE_DATA_DEFINITION__MODEL_ELEMENT, oldModelElement, modelElement));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object eGet(int featureID, boolean resolve, boolean coreType) {
+		switch (featureID) {
+			case UMLRpyPackage.TABLE_DATA_DEFINITION__MY_TABLE:
+				if (resolve) return getMyTable();
+				return basicGetMyTable();
+			case UMLRpyPackage.TABLE_DATA_DEFINITION__NAME:
+				return getName();
+			case UMLRpyPackage.TABLE_DATA_DEFINITION__DATA_TYPE:
+				return getDataType();
+			case UMLRpyPackage.TABLE_DATA_DEFINITION__COLUMN_NAME:
+				return getColumnName();
+			case UMLRpyPackage.TABLE_DATA_DEFINITION__MODEL_ELEMENT:
+				if (resolve) return getModelElement();
+				return basicGetModelElement();
+		}
+		return super.eGet(featureID, resolve, coreType);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void eSet(int featureID, Object newValue) {
+		switch (featureID) {
+			case UMLRpyPackage.TABLE_DATA_DEFINITION__MY_TABLE:
+				setMyTable((IModelElement)newValue);
+				return;
+			case UMLRpyPackage.TABLE_DATA_DEFINITION__NAME:
+				setName((String)newValue);
+				return;
+			case UMLRpyPackage.TABLE_DATA_DEFINITION__DATA_TYPE:
+				setDataType((String)newValue);
+				return;
+			case UMLRpyPackage.TABLE_DATA_DEFINITION__COLUMN_NAME:
+				setColumnName((String)newValue);
+				return;
+			case UMLRpyPackage.TABLE_DATA_DEFINITION__MODEL_ELEMENT:
+				setModelElement((IUnit)newValue);
+				return;
+		}
+		super.eSet(featureID, newValue);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void eUnset(int featureID) {
+		switch (featureID) {
+			case UMLRpyPackage.TABLE_DATA_DEFINITION__MY_TABLE:
+				setMyTable((IModelElement)null);
+				return;
+			case UMLRpyPackage.TABLE_DATA_DEFINITION__NAME:
+				setName(NAME_EDEFAULT);
+				return;
+			case UMLRpyPackage.TABLE_DATA_DEFINITION__DATA_TYPE:
+				setDataType(DATA_TYPE_EDEFAULT);
+				return;
+			case UMLRpyPackage.TABLE_DATA_DEFINITION__COLUMN_NAME:
+				setColumnName(COLUMN_NAME_EDEFAULT);
+				return;
+			case UMLRpyPackage.TABLE_DATA_DEFINITION__MODEL_ELEMENT:
+				setModelElement((IUnit)null);
+				return;
+		}
+		super.eUnset(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public boolean eIsSet(int featureID) {
+		switch (featureID) {
+			case UMLRpyPackage.TABLE_DATA_DEFINITION__MY_TABLE:
+				return myTable != null;
+			case UMLRpyPackage.TABLE_DATA_DEFINITION__NAME:
+				return NAME_EDEFAULT == null ? name != null : !NAME_EDEFAULT.equals(name);
+			case UMLRpyPackage.TABLE_DATA_DEFINITION__DATA_TYPE:
+				return DATA_TYPE_EDEFAULT == null ? dataType != null : !DATA_TYPE_EDEFAULT.equals(dataType);
+			case UMLRpyPackage.TABLE_DATA_DEFINITION__COLUMN_NAME:
+				return COLUMN_NAME_EDEFAULT == null ? columnName != null : !COLUMN_NAME_EDEFAULT.equals(columnName);
+			case UMLRpyPackage.TABLE_DATA_DEFINITION__MODEL_ELEMENT:
+				return modelElement != null;
+		}
+		return super.eIsSet(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String toString() {
+		if (eIsProxy()) return super.toString();
+
+		StringBuffer result = new StringBuffer(super.toString());
+		result.append(" (name: "); //$NON-NLS-1$
+		result.append(name);
+		result.append(", DataType: "); //$NON-NLS-1$
+		result.append(dataType);
+		result.append(", columnName: "); //$NON-NLS-1$
+		result.append(columnName);
+		result.append(')');
+		return result.toString();
+	}
+
+} //TableDataDefinitionImpl
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/TableInstancesTypeImpl.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/TableInstancesTypeImpl.java
new file mode 100755
index 0000000..9594ddb
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/TableInstancesTypeImpl.java
@@ -0,0 +1,49 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl;
+
+import org.eclipse.emf.ecore.EClass;
+
+import org.eclipse.emf.ecore.impl.MinimalEObjectImpl;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.TableInstancesType;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Table Instances Type</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+public abstract class TableInstancesTypeImpl extends MinimalEObjectImpl.Container implements TableInstancesType {
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected TableInstancesTypeImpl() {
+		super();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EClass eStaticClass() {
+		return UMLRpyPackage.eINSTANCE.getTableInstancesType();
+	}
+
+} //TableInstancesTypeImpl
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/TargetTypeImpl.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/TargetTypeImpl.java
new file mode 100755
index 0000000..d553df1
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/TargetTypeImpl.java
@@ -0,0 +1,49 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl;
+
+import org.eclipse.emf.ecore.EClass;
+
+import org.eclipse.emf.ecore.impl.MinimalEObjectImpl;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.TargetType;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Target Type</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+public abstract class TargetTypeImpl extends MinimalEObjectImpl.Container implements TargetType {
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected TargetTypeImpl() {
+		super();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EClass eStaticClass() {
+		return UMLRpyPackage.eINSTANCE.getTargetType();
+	}
+
+} //TargetTypeImpl
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/TheMainDiagramTypeImpl.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/TheMainDiagramTypeImpl.java
new file mode 100755
index 0000000..8347d90
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/TheMainDiagramTypeImpl.java
@@ -0,0 +1,831 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl;
+
+import org.eclipse.emf.common.notify.Notification;
+import org.eclipse.emf.common.notify.NotificationChain;
+
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.InternalEObject;
+
+import org.eclipse.emf.ecore.impl.ENotificationImpl;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.DefaultSubsystemType;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IDescription;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.OwnerHandleType;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.TheMainDiagramType;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>The Main Diagram Type</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * </p>
+ * <ul>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.TheMainDiagramTypeImpl#getId <em>Id</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.TheMainDiagramTypeImpl#getLastModifiedTime <em>Last Modified Time</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.TheMainDiagramTypeImpl#getRequiremenTracabilityHandle <em>Requiremen Tracability Handle</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.TheMainDiagramTypeImpl#getDefaultSubsystem <em>Default Subsystem</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.TheMainDiagramTypeImpl#getDescription <em>Description</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.TheMainDiagramTypeImpl#getUmlDependencyID <em>Uml Dependency ID</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.TheMainDiagramTypeImpl#getLastID <em>Last ID</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.TheMainDiagramTypeImpl#getMyState <em>My State</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.TheMainDiagramTypeImpl#getOwnerHandle <em>Owner Handle</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.TheMainDiagramTypeImpl#getObjectCreation <em>Object Creation</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.TheMainDiagramTypeImpl#getName <em>Name</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.TheMainDiagramTypeImpl#getCmheader <em>Cmheader</em>}</li>
+ * </ul>
+ *
+ * @generated
+ */
+public abstract class TheMainDiagramTypeImpl extends M_pModelObjectTypeImpl implements TheMainDiagramType {
+	/**
+	 * The default value of the '{@link #getId() <em>Id</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getId()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String ID_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getId() <em>Id</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getId()
+	 * @generated
+	 * @ordered
+	 */
+	protected String id = ID_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getLastModifiedTime() <em>Last Modified Time</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getLastModifiedTime()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String LAST_MODIFIED_TIME_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getLastModifiedTime() <em>Last Modified Time</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getLastModifiedTime()
+	 * @generated
+	 * @ordered
+	 */
+	protected String lastModifiedTime = LAST_MODIFIED_TIME_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getRequiremenTracabilityHandle() <em>Requiremen Tracability Handle</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getRequiremenTracabilityHandle()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String REQUIREMEN_TRACABILITY_HANDLE_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getRequiremenTracabilityHandle() <em>Requiremen Tracability Handle</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getRequiremenTracabilityHandle()
+	 * @generated
+	 * @ordered
+	 */
+	protected String requiremenTracabilityHandle = REQUIREMEN_TRACABILITY_HANDLE_EDEFAULT;
+
+	/**
+	 * The cached value of the '{@link #getDefaultSubsystem() <em>Default Subsystem</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getDefaultSubsystem()
+	 * @generated
+	 * @ordered
+	 */
+	protected DefaultSubsystemType defaultSubsystem;
+
+	/**
+	 * The cached value of the '{@link #getDescription() <em>Description</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getDescription()
+	 * @generated
+	 * @ordered
+	 */
+	protected IDescription description;
+
+	/**
+	 * The default value of the '{@link #getUmlDependencyID() <em>Uml Dependency ID</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getUmlDependencyID()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String UML_DEPENDENCY_ID_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getUmlDependencyID() <em>Uml Dependency ID</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getUmlDependencyID()
+	 * @generated
+	 * @ordered
+	 */
+	protected String umlDependencyID = UML_DEPENDENCY_ID_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getLastID() <em>Last ID</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getLastID()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String LAST_ID_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getLastID() <em>Last ID</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getLastID()
+	 * @generated
+	 * @ordered
+	 */
+	protected String lastID = LAST_ID_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getMyState() <em>My State</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getMyState()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String MY_STATE_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getMyState() <em>My State</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getMyState()
+	 * @generated
+	 * @ordered
+	 */
+	protected String myState = MY_STATE_EDEFAULT;
+
+	/**
+	 * The cached value of the '{@link #getOwnerHandle() <em>Owner Handle</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getOwnerHandle()
+	 * @generated
+	 * @ordered
+	 */
+	protected OwnerHandleType ownerHandle;
+
+	/**
+	 * The default value of the '{@link #getObjectCreation() <em>Object Creation</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getObjectCreation()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String OBJECT_CREATION_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getObjectCreation() <em>Object Creation</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getObjectCreation()
+	 * @generated
+	 * @ordered
+	 */
+	protected String objectCreation = OBJECT_CREATION_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getName() <em>Name</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getName()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String NAME_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getName() <em>Name</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getName()
+	 * @generated
+	 * @ordered
+	 */
+	protected String name = NAME_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getCmheader() <em>Cmheader</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getCmheader()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String CMHEADER_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getCmheader() <em>Cmheader</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getCmheader()
+	 * @generated
+	 * @ordered
+	 */
+	protected String cmheader = CMHEADER_EDEFAULT;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected TheMainDiagramTypeImpl() {
+		super();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EClass eStaticClass() {
+		return UMLRpyPackage.eINSTANCE.getTheMainDiagramType();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getId() {
+		return id;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setId(String newId) {
+		String oldId = id;
+		id = newId;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.THE_MAIN_DIAGRAM_TYPE__ID, oldId, id));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getLastModifiedTime() {
+		return lastModifiedTime;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setLastModifiedTime(String newLastModifiedTime) {
+		String oldLastModifiedTime = lastModifiedTime;
+		lastModifiedTime = newLastModifiedTime;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.THE_MAIN_DIAGRAM_TYPE__LAST_MODIFIED_TIME, oldLastModifiedTime, lastModifiedTime));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getRequiremenTracabilityHandle() {
+		return requiremenTracabilityHandle;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setRequiremenTracabilityHandle(String newRequiremenTracabilityHandle) {
+		String oldRequiremenTracabilityHandle = requiremenTracabilityHandle;
+		requiremenTracabilityHandle = newRequiremenTracabilityHandle;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.THE_MAIN_DIAGRAM_TYPE__REQUIREMEN_TRACABILITY_HANDLE, oldRequiremenTracabilityHandle, requiremenTracabilityHandle));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public DefaultSubsystemType getDefaultSubsystem() {
+		if (defaultSubsystem != null && defaultSubsystem.eIsProxy()) {
+			InternalEObject oldDefaultSubsystem = (InternalEObject)defaultSubsystem;
+			defaultSubsystem = (DefaultSubsystemType)eResolveProxy(oldDefaultSubsystem);
+			if (defaultSubsystem != oldDefaultSubsystem) {
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.THE_MAIN_DIAGRAM_TYPE__DEFAULT_SUBSYSTEM, oldDefaultSubsystem, defaultSubsystem));
+			}
+		}
+		return defaultSubsystem;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public DefaultSubsystemType basicGetDefaultSubsystem() {
+		return defaultSubsystem;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setDefaultSubsystem(DefaultSubsystemType newDefaultSubsystem) {
+		DefaultSubsystemType oldDefaultSubsystem = defaultSubsystem;
+		defaultSubsystem = newDefaultSubsystem;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.THE_MAIN_DIAGRAM_TYPE__DEFAULT_SUBSYSTEM, oldDefaultSubsystem, defaultSubsystem));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IDescription getDescription() {
+		if (description != null && description.eIsProxy()) {
+			InternalEObject oldDescription = (InternalEObject)description;
+			description = (IDescription)eResolveProxy(oldDescription);
+			if (description != oldDescription) {
+				InternalEObject newDescription = (InternalEObject)description;
+				NotificationChain msgs = oldDescription.eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.THE_MAIN_DIAGRAM_TYPE__DESCRIPTION, null, null);
+				if (newDescription.eInternalContainer() == null) {
+					msgs = newDescription.eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.THE_MAIN_DIAGRAM_TYPE__DESCRIPTION, null, msgs);
+				}
+				if (msgs != null) msgs.dispatch();
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.THE_MAIN_DIAGRAM_TYPE__DESCRIPTION, oldDescription, description));
+			}
+		}
+		return description;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IDescription basicGetDescription() {
+		return description;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public NotificationChain basicSetDescription(IDescription newDescription, NotificationChain msgs) {
+		IDescription oldDescription = description;
+		description = newDescription;
+		if (eNotificationRequired()) {
+			ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, UMLRpyPackage.THE_MAIN_DIAGRAM_TYPE__DESCRIPTION, oldDescription, newDescription);
+			if (msgs == null) msgs = notification; else msgs.add(notification);
+		}
+		return msgs;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setDescription(IDescription newDescription) {
+		if (newDescription != description) {
+			NotificationChain msgs = null;
+			if (description != null)
+				msgs = ((InternalEObject)description).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.THE_MAIN_DIAGRAM_TYPE__DESCRIPTION, null, msgs);
+			if (newDescription != null)
+				msgs = ((InternalEObject)newDescription).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.THE_MAIN_DIAGRAM_TYPE__DESCRIPTION, null, msgs);
+			msgs = basicSetDescription(newDescription, msgs);
+			if (msgs != null) msgs.dispatch();
+		}
+		else if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.THE_MAIN_DIAGRAM_TYPE__DESCRIPTION, newDescription, newDescription));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getUmlDependencyID() {
+		return umlDependencyID;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setUmlDependencyID(String newUmlDependencyID) {
+		String oldUmlDependencyID = umlDependencyID;
+		umlDependencyID = newUmlDependencyID;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.THE_MAIN_DIAGRAM_TYPE__UML_DEPENDENCY_ID, oldUmlDependencyID, umlDependencyID));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getLastID() {
+		return lastID;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setLastID(String newLastID) {
+		String oldLastID = lastID;
+		lastID = newLastID;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.THE_MAIN_DIAGRAM_TYPE__LAST_ID, oldLastID, lastID));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getMyState() {
+		return myState;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setMyState(String newMyState) {
+		String oldMyState = myState;
+		myState = newMyState;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.THE_MAIN_DIAGRAM_TYPE__MY_STATE, oldMyState, myState));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public OwnerHandleType getOwnerHandle() {
+		if (ownerHandle != null && ownerHandle.eIsProxy()) {
+			InternalEObject oldOwnerHandle = (InternalEObject)ownerHandle;
+			ownerHandle = (OwnerHandleType)eResolveProxy(oldOwnerHandle);
+			if (ownerHandle != oldOwnerHandle) {
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.THE_MAIN_DIAGRAM_TYPE__OWNER_HANDLE, oldOwnerHandle, ownerHandle));
+			}
+		}
+		return ownerHandle;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public OwnerHandleType basicGetOwnerHandle() {
+		return ownerHandle;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setOwnerHandle(OwnerHandleType newOwnerHandle) {
+		OwnerHandleType oldOwnerHandle = ownerHandle;
+		ownerHandle = newOwnerHandle;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.THE_MAIN_DIAGRAM_TYPE__OWNER_HANDLE, oldOwnerHandle, ownerHandle));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getObjectCreation() {
+		return objectCreation;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setObjectCreation(String newObjectCreation) {
+		String oldObjectCreation = objectCreation;
+		objectCreation = newObjectCreation;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.THE_MAIN_DIAGRAM_TYPE__OBJECT_CREATION, oldObjectCreation, objectCreation));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getName() {
+		return name;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setName(String newName) {
+		String oldName = name;
+		name = newName;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.THE_MAIN_DIAGRAM_TYPE__NAME, oldName, name));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getCmheader() {
+		return cmheader;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setCmheader(String newCmheader) {
+		String oldCmheader = cmheader;
+		cmheader = newCmheader;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.THE_MAIN_DIAGRAM_TYPE__CMHEADER, oldCmheader, cmheader));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
+		switch (featureID) {
+			case UMLRpyPackage.THE_MAIN_DIAGRAM_TYPE__DESCRIPTION:
+				return basicSetDescription(null, msgs);
+		}
+		return super.eInverseRemove(otherEnd, featureID, msgs);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object eGet(int featureID, boolean resolve, boolean coreType) {
+		switch (featureID) {
+			case UMLRpyPackage.THE_MAIN_DIAGRAM_TYPE__ID:
+				return getId();
+			case UMLRpyPackage.THE_MAIN_DIAGRAM_TYPE__LAST_MODIFIED_TIME:
+				return getLastModifiedTime();
+			case UMLRpyPackage.THE_MAIN_DIAGRAM_TYPE__REQUIREMEN_TRACABILITY_HANDLE:
+				return getRequiremenTracabilityHandle();
+			case UMLRpyPackage.THE_MAIN_DIAGRAM_TYPE__DEFAULT_SUBSYSTEM:
+				if (resolve) return getDefaultSubsystem();
+				return basicGetDefaultSubsystem();
+			case UMLRpyPackage.THE_MAIN_DIAGRAM_TYPE__DESCRIPTION:
+				if (resolve) return getDescription();
+				return basicGetDescription();
+			case UMLRpyPackage.THE_MAIN_DIAGRAM_TYPE__UML_DEPENDENCY_ID:
+				return getUmlDependencyID();
+			case UMLRpyPackage.THE_MAIN_DIAGRAM_TYPE__LAST_ID:
+				return getLastID();
+			case UMLRpyPackage.THE_MAIN_DIAGRAM_TYPE__MY_STATE:
+				return getMyState();
+			case UMLRpyPackage.THE_MAIN_DIAGRAM_TYPE__OWNER_HANDLE:
+				if (resolve) return getOwnerHandle();
+				return basicGetOwnerHandle();
+			case UMLRpyPackage.THE_MAIN_DIAGRAM_TYPE__OBJECT_CREATION:
+				return getObjectCreation();
+			case UMLRpyPackage.THE_MAIN_DIAGRAM_TYPE__NAME:
+				return getName();
+			case UMLRpyPackage.THE_MAIN_DIAGRAM_TYPE__CMHEADER:
+				return getCmheader();
+		}
+		return super.eGet(featureID, resolve, coreType);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void eSet(int featureID, Object newValue) {
+		switch (featureID) {
+			case UMLRpyPackage.THE_MAIN_DIAGRAM_TYPE__ID:
+				setId((String)newValue);
+				return;
+			case UMLRpyPackage.THE_MAIN_DIAGRAM_TYPE__LAST_MODIFIED_TIME:
+				setLastModifiedTime((String)newValue);
+				return;
+			case UMLRpyPackage.THE_MAIN_DIAGRAM_TYPE__REQUIREMEN_TRACABILITY_HANDLE:
+				setRequiremenTracabilityHandle((String)newValue);
+				return;
+			case UMLRpyPackage.THE_MAIN_DIAGRAM_TYPE__DEFAULT_SUBSYSTEM:
+				setDefaultSubsystem((DefaultSubsystemType)newValue);
+				return;
+			case UMLRpyPackage.THE_MAIN_DIAGRAM_TYPE__DESCRIPTION:
+				setDescription((IDescription)newValue);
+				return;
+			case UMLRpyPackage.THE_MAIN_DIAGRAM_TYPE__UML_DEPENDENCY_ID:
+				setUmlDependencyID((String)newValue);
+				return;
+			case UMLRpyPackage.THE_MAIN_DIAGRAM_TYPE__LAST_ID:
+				setLastID((String)newValue);
+				return;
+			case UMLRpyPackage.THE_MAIN_DIAGRAM_TYPE__MY_STATE:
+				setMyState((String)newValue);
+				return;
+			case UMLRpyPackage.THE_MAIN_DIAGRAM_TYPE__OWNER_HANDLE:
+				setOwnerHandle((OwnerHandleType)newValue);
+				return;
+			case UMLRpyPackage.THE_MAIN_DIAGRAM_TYPE__OBJECT_CREATION:
+				setObjectCreation((String)newValue);
+				return;
+			case UMLRpyPackage.THE_MAIN_DIAGRAM_TYPE__NAME:
+				setName((String)newValue);
+				return;
+			case UMLRpyPackage.THE_MAIN_DIAGRAM_TYPE__CMHEADER:
+				setCmheader((String)newValue);
+				return;
+		}
+		super.eSet(featureID, newValue);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void eUnset(int featureID) {
+		switch (featureID) {
+			case UMLRpyPackage.THE_MAIN_DIAGRAM_TYPE__ID:
+				setId(ID_EDEFAULT);
+				return;
+			case UMLRpyPackage.THE_MAIN_DIAGRAM_TYPE__LAST_MODIFIED_TIME:
+				setLastModifiedTime(LAST_MODIFIED_TIME_EDEFAULT);
+				return;
+			case UMLRpyPackage.THE_MAIN_DIAGRAM_TYPE__REQUIREMEN_TRACABILITY_HANDLE:
+				setRequiremenTracabilityHandle(REQUIREMEN_TRACABILITY_HANDLE_EDEFAULT);
+				return;
+			case UMLRpyPackage.THE_MAIN_DIAGRAM_TYPE__DEFAULT_SUBSYSTEM:
+				setDefaultSubsystem((DefaultSubsystemType)null);
+				return;
+			case UMLRpyPackage.THE_MAIN_DIAGRAM_TYPE__DESCRIPTION:
+				setDescription((IDescription)null);
+				return;
+			case UMLRpyPackage.THE_MAIN_DIAGRAM_TYPE__UML_DEPENDENCY_ID:
+				setUmlDependencyID(UML_DEPENDENCY_ID_EDEFAULT);
+				return;
+			case UMLRpyPackage.THE_MAIN_DIAGRAM_TYPE__LAST_ID:
+				setLastID(LAST_ID_EDEFAULT);
+				return;
+			case UMLRpyPackage.THE_MAIN_DIAGRAM_TYPE__MY_STATE:
+				setMyState(MY_STATE_EDEFAULT);
+				return;
+			case UMLRpyPackage.THE_MAIN_DIAGRAM_TYPE__OWNER_HANDLE:
+				setOwnerHandle((OwnerHandleType)null);
+				return;
+			case UMLRpyPackage.THE_MAIN_DIAGRAM_TYPE__OBJECT_CREATION:
+				setObjectCreation(OBJECT_CREATION_EDEFAULT);
+				return;
+			case UMLRpyPackage.THE_MAIN_DIAGRAM_TYPE__NAME:
+				setName(NAME_EDEFAULT);
+				return;
+			case UMLRpyPackage.THE_MAIN_DIAGRAM_TYPE__CMHEADER:
+				setCmheader(CMHEADER_EDEFAULT);
+				return;
+		}
+		super.eUnset(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public boolean eIsSet(int featureID) {
+		switch (featureID) {
+			case UMLRpyPackage.THE_MAIN_DIAGRAM_TYPE__ID:
+				return ID_EDEFAULT == null ? id != null : !ID_EDEFAULT.equals(id);
+			case UMLRpyPackage.THE_MAIN_DIAGRAM_TYPE__LAST_MODIFIED_TIME:
+				return LAST_MODIFIED_TIME_EDEFAULT == null ? lastModifiedTime != null : !LAST_MODIFIED_TIME_EDEFAULT.equals(lastModifiedTime);
+			case UMLRpyPackage.THE_MAIN_DIAGRAM_TYPE__REQUIREMEN_TRACABILITY_HANDLE:
+				return REQUIREMEN_TRACABILITY_HANDLE_EDEFAULT == null ? requiremenTracabilityHandle != null : !REQUIREMEN_TRACABILITY_HANDLE_EDEFAULT.equals(requiremenTracabilityHandle);
+			case UMLRpyPackage.THE_MAIN_DIAGRAM_TYPE__DEFAULT_SUBSYSTEM:
+				return defaultSubsystem != null;
+			case UMLRpyPackage.THE_MAIN_DIAGRAM_TYPE__DESCRIPTION:
+				return description != null;
+			case UMLRpyPackage.THE_MAIN_DIAGRAM_TYPE__UML_DEPENDENCY_ID:
+				return UML_DEPENDENCY_ID_EDEFAULT == null ? umlDependencyID != null : !UML_DEPENDENCY_ID_EDEFAULT.equals(umlDependencyID);
+			case UMLRpyPackage.THE_MAIN_DIAGRAM_TYPE__LAST_ID:
+				return LAST_ID_EDEFAULT == null ? lastID != null : !LAST_ID_EDEFAULT.equals(lastID);
+			case UMLRpyPackage.THE_MAIN_DIAGRAM_TYPE__MY_STATE:
+				return MY_STATE_EDEFAULT == null ? myState != null : !MY_STATE_EDEFAULT.equals(myState);
+			case UMLRpyPackage.THE_MAIN_DIAGRAM_TYPE__OWNER_HANDLE:
+				return ownerHandle != null;
+			case UMLRpyPackage.THE_MAIN_DIAGRAM_TYPE__OBJECT_CREATION:
+				return OBJECT_CREATION_EDEFAULT == null ? objectCreation != null : !OBJECT_CREATION_EDEFAULT.equals(objectCreation);
+			case UMLRpyPackage.THE_MAIN_DIAGRAM_TYPE__NAME:
+				return NAME_EDEFAULT == null ? name != null : !NAME_EDEFAULT.equals(name);
+			case UMLRpyPackage.THE_MAIN_DIAGRAM_TYPE__CMHEADER:
+				return CMHEADER_EDEFAULT == null ? cmheader != null : !CMHEADER_EDEFAULT.equals(cmheader);
+		}
+		return super.eIsSet(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String toString() {
+		if (eIsProxy()) return super.toString();
+
+		StringBuffer result = new StringBuffer(super.toString());
+		result.append(" (id: "); //$NON-NLS-1$
+		result.append(id);
+		result.append(", lastModifiedTime: "); //$NON-NLS-1$
+		result.append(lastModifiedTime);
+		result.append(", requiremenTracabilityHandle: "); //$NON-NLS-1$
+		result.append(requiremenTracabilityHandle);
+		result.append(", umlDependencyID: "); //$NON-NLS-1$
+		result.append(umlDependencyID);
+		result.append(", lastID: "); //$NON-NLS-1$
+		result.append(lastID);
+		result.append(", myState: "); //$NON-NLS-1$
+		result.append(myState);
+		result.append(", objectCreation: "); //$NON-NLS-1$
+		result.append(objectCreation);
+		result.append(", name: "); //$NON-NLS-1$
+		result.append(name);
+		result.append(", cmheader: "); //$NON-NLS-1$
+		result.append(cmheader);
+		result.append(')');
+		return result.toString();
+	}
+
+} //TheMainDiagramTypeImpl
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/ToLinkTypeImpl.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/ToLinkTypeImpl.java
new file mode 100755
index 0000000..143e2a9
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/ToLinkTypeImpl.java
@@ -0,0 +1,209 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl;
+
+import org.eclipse.emf.common.notify.Notification;
+import org.eclipse.emf.common.notify.NotificationChain;
+
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.InternalEObject;
+
+import org.eclipse.emf.ecore.impl.ENotificationImpl;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IClass;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ToLinkType;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>To Link Type</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * </p>
+ * <ul>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.ToLinkTypeImpl#getImplicitClass <em>Implicit Class</em>}</li>
+ * </ul>
+ *
+ * @generated
+ */
+public abstract class ToLinkTypeImpl extends FromLinkTypeImpl implements ToLinkType {
+	/**
+	 * The cached value of the '{@link #getImplicitClass() <em>Implicit Class</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getImplicitClass()
+	 * @generated
+	 * @ordered
+	 */
+	protected IClass implicitClass;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected ToLinkTypeImpl() {
+		super();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EClass eStaticClass() {
+		return UMLRpyPackage.eINSTANCE.getToLinkType();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IClass getImplicitClass() {
+		if (implicitClass != null && implicitClass.eIsProxy()) {
+			InternalEObject oldImplicitClass = (InternalEObject)implicitClass;
+			implicitClass = (IClass)eResolveProxy(oldImplicitClass);
+			if (implicitClass != oldImplicitClass) {
+				InternalEObject newImplicitClass = (InternalEObject)implicitClass;
+				NotificationChain msgs = oldImplicitClass.eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.TO_LINK_TYPE__IMPLICIT_CLASS, null, null);
+				if (newImplicitClass.eInternalContainer() == null) {
+					msgs = newImplicitClass.eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.TO_LINK_TYPE__IMPLICIT_CLASS, null, msgs);
+				}
+				if (msgs != null) msgs.dispatch();
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.TO_LINK_TYPE__IMPLICIT_CLASS, oldImplicitClass, implicitClass));
+			}
+		}
+		return implicitClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IClass basicGetImplicitClass() {
+		return implicitClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public NotificationChain basicSetImplicitClass(IClass newImplicitClass, NotificationChain msgs) {
+		IClass oldImplicitClass = implicitClass;
+		implicitClass = newImplicitClass;
+		if (eNotificationRequired()) {
+			ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, UMLRpyPackage.TO_LINK_TYPE__IMPLICIT_CLASS, oldImplicitClass, newImplicitClass);
+			if (msgs == null) msgs = notification; else msgs.add(notification);
+		}
+		return msgs;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setImplicitClass(IClass newImplicitClass) {
+		if (newImplicitClass != implicitClass) {
+			NotificationChain msgs = null;
+			if (implicitClass != null)
+				msgs = ((InternalEObject)implicitClass).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.TO_LINK_TYPE__IMPLICIT_CLASS, null, msgs);
+			if (newImplicitClass != null)
+				msgs = ((InternalEObject)newImplicitClass).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.TO_LINK_TYPE__IMPLICIT_CLASS, null, msgs);
+			msgs = basicSetImplicitClass(newImplicitClass, msgs);
+			if (msgs != null) msgs.dispatch();
+		}
+		else if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.TO_LINK_TYPE__IMPLICIT_CLASS, newImplicitClass, newImplicitClass));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
+		switch (featureID) {
+			case UMLRpyPackage.TO_LINK_TYPE__IMPLICIT_CLASS:
+				return basicSetImplicitClass(null, msgs);
+		}
+		return super.eInverseRemove(otherEnd, featureID, msgs);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object eGet(int featureID, boolean resolve, boolean coreType) {
+		switch (featureID) {
+			case UMLRpyPackage.TO_LINK_TYPE__IMPLICIT_CLASS:
+				if (resolve) return getImplicitClass();
+				return basicGetImplicitClass();
+		}
+		return super.eGet(featureID, resolve, coreType);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void eSet(int featureID, Object newValue) {
+		switch (featureID) {
+			case UMLRpyPackage.TO_LINK_TYPE__IMPLICIT_CLASS:
+				setImplicitClass((IClass)newValue);
+				return;
+		}
+		super.eSet(featureID, newValue);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void eUnset(int featureID) {
+		switch (featureID) {
+			case UMLRpyPackage.TO_LINK_TYPE__IMPLICIT_CLASS:
+				setImplicitClass((IClass)null);
+				return;
+		}
+		super.eUnset(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public boolean eIsSet(int featureID) {
+		switch (featureID) {
+			case UMLRpyPackage.TO_LINK_TYPE__IMPLICIT_CLASS:
+				return implicitClass != null;
+		}
+		return super.eIsSet(featureID);
+	}
+
+} //ToLinkTypeImpl
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/TransitionsTypeImpl.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/TransitionsTypeImpl.java
new file mode 100755
index 0000000..f95cd97
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/TransitionsTypeImpl.java
@@ -0,0 +1,833 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl;
+
+import java.util.Collection;
+
+import org.eclipse.emf.common.notify.Notification;
+import org.eclipse.emf.common.notify.NotificationChain;
+
+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.impl.MinimalEObjectImpl;
+
+import org.eclipse.emf.ecore.util.EDataTypeEList;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IDescription;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ItsLabelType;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ItsTargetType;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.TransitionsType;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Transitions Type</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * </p>
+ * <ul>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.TransitionsTypeImpl#getModifiedTimeWeak <em>Modified Time Weak</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.TransitionsTypeImpl#getStaticReaction <em>Static Reaction</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.TransitionsTypeImpl#getItsTarget <em>Its Target</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.TransitionsTypeImpl#getId <em>Id</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.TransitionsTypeImpl#getCodeUpdateCGTime <em>Code Update CG Time</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.TransitionsTypeImpl#getRequiremenTracabilityHandle <em>Requiremen Tracability Handle</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.TransitionsTypeImpl#getDescription <em>Description</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.TransitionsTypeImpl#getItsLabel <em>Its Label</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.TransitionsTypeImpl#getUmlDependencyID <em>Uml Dependency ID</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.TransitionsTypeImpl#getMyState <em>My State</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.TransitionsTypeImpl#getObjectCreation <em>Object Creation</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.TransitionsTypeImpl#getName <em>Name</em>}</li>
+ * </ul>
+ *
+ * @generated
+ */
+public abstract class TransitionsTypeImpl extends MinimalEObjectImpl.Container implements TransitionsType {
+	/**
+	 * The cached value of the '{@link #getModifiedTimeWeak() <em>Modified Time Weak</em>}' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getModifiedTimeWeak()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<String> modifiedTimeWeak;
+
+	/**
+	 * The default value of the '{@link #getStaticReaction() <em>Static Reaction</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getStaticReaction()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String STATIC_REACTION_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getStaticReaction() <em>Static Reaction</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getStaticReaction()
+	 * @generated
+	 * @ordered
+	 */
+	protected String staticReaction = STATIC_REACTION_EDEFAULT;
+
+	/**
+	 * The cached value of the '{@link #getItsTarget() <em>Its Target</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getItsTarget()
+	 * @generated
+	 * @ordered
+	 */
+	protected ItsTargetType itsTarget;
+
+	/**
+	 * The default value of the '{@link #getId() <em>Id</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getId()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String ID_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getId() <em>Id</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getId()
+	 * @generated
+	 * @ordered
+	 */
+	protected String id = ID_EDEFAULT;
+
+	/**
+	 * The cached value of the '{@link #getCodeUpdateCGTime() <em>Code Update CG Time</em>}' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getCodeUpdateCGTime()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<String> codeUpdateCGTime;
+
+	/**
+	 * The default value of the '{@link #getRequiremenTracabilityHandle() <em>Requiremen Tracability Handle</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getRequiremenTracabilityHandle()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String REQUIREMEN_TRACABILITY_HANDLE_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getRequiremenTracabilityHandle() <em>Requiremen Tracability Handle</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getRequiremenTracabilityHandle()
+	 * @generated
+	 * @ordered
+	 */
+	protected String requiremenTracabilityHandle = REQUIREMEN_TRACABILITY_HANDLE_EDEFAULT;
+
+	/**
+	 * The cached value of the '{@link #getDescription() <em>Description</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getDescription()
+	 * @generated
+	 * @ordered
+	 */
+	protected IDescription description;
+
+	/**
+	 * The cached value of the '{@link #getItsLabel() <em>Its Label</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getItsLabel()
+	 * @generated
+	 * @ordered
+	 */
+	protected ItsLabelType itsLabel;
+
+	/**
+	 * The default value of the '{@link #getUmlDependencyID() <em>Uml Dependency ID</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getUmlDependencyID()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String UML_DEPENDENCY_ID_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getUmlDependencyID() <em>Uml Dependency ID</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getUmlDependencyID()
+	 * @generated
+	 * @ordered
+	 */
+	protected String umlDependencyID = UML_DEPENDENCY_ID_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getMyState() <em>My State</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getMyState()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String MY_STATE_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getMyState() <em>My State</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getMyState()
+	 * @generated
+	 * @ordered
+	 */
+	protected String myState = MY_STATE_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getObjectCreation() <em>Object Creation</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getObjectCreation()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String OBJECT_CREATION_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getObjectCreation() <em>Object Creation</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getObjectCreation()
+	 * @generated
+	 * @ordered
+	 */
+	protected String objectCreation = OBJECT_CREATION_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getName() <em>Name</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getName()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String NAME_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getName() <em>Name</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getName()
+	 * @generated
+	 * @ordered
+	 */
+	protected String name = NAME_EDEFAULT;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected TransitionsTypeImpl() {
+		super();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EClass eStaticClass() {
+		return UMLRpyPackage.eINSTANCE.getTransitionsType();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<String> getModifiedTimeWeak() {
+		if (modifiedTimeWeak == null) {
+			modifiedTimeWeak = new EDataTypeEList<String>(String.class, this, UMLRpyPackage.TRANSITIONS_TYPE__MODIFIED_TIME_WEAK);
+		}
+		return modifiedTimeWeak;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getStaticReaction() {
+		return staticReaction;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setStaticReaction(String newStaticReaction) {
+		String oldStaticReaction = staticReaction;
+		staticReaction = newStaticReaction;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.TRANSITIONS_TYPE__STATIC_REACTION, oldStaticReaction, staticReaction));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public ItsTargetType getItsTarget() {
+		if (itsTarget != null && itsTarget.eIsProxy()) {
+			InternalEObject oldItsTarget = (InternalEObject)itsTarget;
+			itsTarget = (ItsTargetType)eResolveProxy(oldItsTarget);
+			if (itsTarget != oldItsTarget) {
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.TRANSITIONS_TYPE__ITS_TARGET, oldItsTarget, itsTarget));
+			}
+		}
+		return itsTarget;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public ItsTargetType basicGetItsTarget() {
+		return itsTarget;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setItsTarget(ItsTargetType newItsTarget) {
+		ItsTargetType oldItsTarget = itsTarget;
+		itsTarget = newItsTarget;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.TRANSITIONS_TYPE__ITS_TARGET, oldItsTarget, itsTarget));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getId() {
+		return id;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setId(String newId) {
+		String oldId = id;
+		id = newId;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.TRANSITIONS_TYPE__ID, oldId, id));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<String> getCodeUpdateCGTime() {
+		if (codeUpdateCGTime == null) {
+			codeUpdateCGTime = new EDataTypeEList<String>(String.class, this, UMLRpyPackage.TRANSITIONS_TYPE__CODE_UPDATE_CG_TIME);
+		}
+		return codeUpdateCGTime;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getRequiremenTracabilityHandle() {
+		return requiremenTracabilityHandle;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setRequiremenTracabilityHandle(String newRequiremenTracabilityHandle) {
+		String oldRequiremenTracabilityHandle = requiremenTracabilityHandle;
+		requiremenTracabilityHandle = newRequiremenTracabilityHandle;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.TRANSITIONS_TYPE__REQUIREMEN_TRACABILITY_HANDLE, oldRequiremenTracabilityHandle, requiremenTracabilityHandle));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IDescription getDescription() {
+		if (description != null && description.eIsProxy()) {
+			InternalEObject oldDescription = (InternalEObject)description;
+			description = (IDescription)eResolveProxy(oldDescription);
+			if (description != oldDescription) {
+				InternalEObject newDescription = (InternalEObject)description;
+				NotificationChain msgs = oldDescription.eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.TRANSITIONS_TYPE__DESCRIPTION, null, null);
+				if (newDescription.eInternalContainer() == null) {
+					msgs = newDescription.eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.TRANSITIONS_TYPE__DESCRIPTION, null, msgs);
+				}
+				if (msgs != null) msgs.dispatch();
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.TRANSITIONS_TYPE__DESCRIPTION, oldDescription, description));
+			}
+		}
+		return description;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IDescription basicGetDescription() {
+		return description;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public NotificationChain basicSetDescription(IDescription newDescription, NotificationChain msgs) {
+		IDescription oldDescription = description;
+		description = newDescription;
+		if (eNotificationRequired()) {
+			ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, UMLRpyPackage.TRANSITIONS_TYPE__DESCRIPTION, oldDescription, newDescription);
+			if (msgs == null) msgs = notification; else msgs.add(notification);
+		}
+		return msgs;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setDescription(IDescription newDescription) {
+		if (newDescription != description) {
+			NotificationChain msgs = null;
+			if (description != null)
+				msgs = ((InternalEObject)description).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.TRANSITIONS_TYPE__DESCRIPTION, null, msgs);
+			if (newDescription != null)
+				msgs = ((InternalEObject)newDescription).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.TRANSITIONS_TYPE__DESCRIPTION, null, msgs);
+			msgs = basicSetDescription(newDescription, msgs);
+			if (msgs != null) msgs.dispatch();
+		}
+		else if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.TRANSITIONS_TYPE__DESCRIPTION, newDescription, newDescription));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public ItsLabelType getItsLabel() {
+		if (itsLabel != null && itsLabel.eIsProxy()) {
+			InternalEObject oldItsLabel = (InternalEObject)itsLabel;
+			itsLabel = (ItsLabelType)eResolveProxy(oldItsLabel);
+			if (itsLabel != oldItsLabel) {
+				InternalEObject newItsLabel = (InternalEObject)itsLabel;
+				NotificationChain msgs = oldItsLabel.eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.TRANSITIONS_TYPE__ITS_LABEL, null, null);
+				if (newItsLabel.eInternalContainer() == null) {
+					msgs = newItsLabel.eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.TRANSITIONS_TYPE__ITS_LABEL, null, msgs);
+				}
+				if (msgs != null) msgs.dispatch();
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, UMLRpyPackage.TRANSITIONS_TYPE__ITS_LABEL, oldItsLabel, itsLabel));
+			}
+		}
+		return itsLabel;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public ItsLabelType basicGetItsLabel() {
+		return itsLabel;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public NotificationChain basicSetItsLabel(ItsLabelType newItsLabel, NotificationChain msgs) {
+		ItsLabelType oldItsLabel = itsLabel;
+		itsLabel = newItsLabel;
+		if (eNotificationRequired()) {
+			ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, UMLRpyPackage.TRANSITIONS_TYPE__ITS_LABEL, oldItsLabel, newItsLabel);
+			if (msgs == null) msgs = notification; else msgs.add(notification);
+		}
+		return msgs;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setItsLabel(ItsLabelType newItsLabel) {
+		if (newItsLabel != itsLabel) {
+			NotificationChain msgs = null;
+			if (itsLabel != null)
+				msgs = ((InternalEObject)itsLabel).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.TRANSITIONS_TYPE__ITS_LABEL, null, msgs);
+			if (newItsLabel != null)
+				msgs = ((InternalEObject)newItsLabel).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - UMLRpyPackage.TRANSITIONS_TYPE__ITS_LABEL, null, msgs);
+			msgs = basicSetItsLabel(newItsLabel, msgs);
+			if (msgs != null) msgs.dispatch();
+		}
+		else if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.TRANSITIONS_TYPE__ITS_LABEL, newItsLabel, newItsLabel));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getUmlDependencyID() {
+		return umlDependencyID;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setUmlDependencyID(String newUmlDependencyID) {
+		String oldUmlDependencyID = umlDependencyID;
+		umlDependencyID = newUmlDependencyID;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.TRANSITIONS_TYPE__UML_DEPENDENCY_ID, oldUmlDependencyID, umlDependencyID));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getMyState() {
+		return myState;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setMyState(String newMyState) {
+		String oldMyState = myState;
+		myState = newMyState;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.TRANSITIONS_TYPE__MY_STATE, oldMyState, myState));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getObjectCreation() {
+		return objectCreation;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setObjectCreation(String newObjectCreation) {
+		String oldObjectCreation = objectCreation;
+		objectCreation = newObjectCreation;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.TRANSITIONS_TYPE__OBJECT_CREATION, oldObjectCreation, objectCreation));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getName() {
+		return name;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setName(String newName) {
+		String oldName = name;
+		name = newName;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.TRANSITIONS_TYPE__NAME, oldName, name));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
+		switch (featureID) {
+			case UMLRpyPackage.TRANSITIONS_TYPE__DESCRIPTION:
+				return basicSetDescription(null, msgs);
+			case UMLRpyPackage.TRANSITIONS_TYPE__ITS_LABEL:
+				return basicSetItsLabel(null, msgs);
+		}
+		return super.eInverseRemove(otherEnd, featureID, msgs);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object eGet(int featureID, boolean resolve, boolean coreType) {
+		switch (featureID) {
+			case UMLRpyPackage.TRANSITIONS_TYPE__MODIFIED_TIME_WEAK:
+				return getModifiedTimeWeak();
+			case UMLRpyPackage.TRANSITIONS_TYPE__STATIC_REACTION:
+				return getStaticReaction();
+			case UMLRpyPackage.TRANSITIONS_TYPE__ITS_TARGET:
+				if (resolve) return getItsTarget();
+				return basicGetItsTarget();
+			case UMLRpyPackage.TRANSITIONS_TYPE__ID:
+				return getId();
+			case UMLRpyPackage.TRANSITIONS_TYPE__CODE_UPDATE_CG_TIME:
+				return getCodeUpdateCGTime();
+			case UMLRpyPackage.TRANSITIONS_TYPE__REQUIREMEN_TRACABILITY_HANDLE:
+				return getRequiremenTracabilityHandle();
+			case UMLRpyPackage.TRANSITIONS_TYPE__DESCRIPTION:
+				if (resolve) return getDescription();
+				return basicGetDescription();
+			case UMLRpyPackage.TRANSITIONS_TYPE__ITS_LABEL:
+				if (resolve) return getItsLabel();
+				return basicGetItsLabel();
+			case UMLRpyPackage.TRANSITIONS_TYPE__UML_DEPENDENCY_ID:
+				return getUmlDependencyID();
+			case UMLRpyPackage.TRANSITIONS_TYPE__MY_STATE:
+				return getMyState();
+			case UMLRpyPackage.TRANSITIONS_TYPE__OBJECT_CREATION:
+				return getObjectCreation();
+			case UMLRpyPackage.TRANSITIONS_TYPE__NAME:
+				return getName();
+		}
+		return super.eGet(featureID, resolve, coreType);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@SuppressWarnings("unchecked")
+	@Override
+	public void eSet(int featureID, Object newValue) {
+		switch (featureID) {
+			case UMLRpyPackage.TRANSITIONS_TYPE__MODIFIED_TIME_WEAK:
+				getModifiedTimeWeak().clear();
+				getModifiedTimeWeak().addAll((Collection<? extends String>)newValue);
+				return;
+			case UMLRpyPackage.TRANSITIONS_TYPE__STATIC_REACTION:
+				setStaticReaction((String)newValue);
+				return;
+			case UMLRpyPackage.TRANSITIONS_TYPE__ITS_TARGET:
+				setItsTarget((ItsTargetType)newValue);
+				return;
+			case UMLRpyPackage.TRANSITIONS_TYPE__ID:
+				setId((String)newValue);
+				return;
+			case UMLRpyPackage.TRANSITIONS_TYPE__CODE_UPDATE_CG_TIME:
+				getCodeUpdateCGTime().clear();
+				getCodeUpdateCGTime().addAll((Collection<? extends String>)newValue);
+				return;
+			case UMLRpyPackage.TRANSITIONS_TYPE__REQUIREMEN_TRACABILITY_HANDLE:
+				setRequiremenTracabilityHandle((String)newValue);
+				return;
+			case UMLRpyPackage.TRANSITIONS_TYPE__DESCRIPTION:
+				setDescription((IDescription)newValue);
+				return;
+			case UMLRpyPackage.TRANSITIONS_TYPE__ITS_LABEL:
+				setItsLabel((ItsLabelType)newValue);
+				return;
+			case UMLRpyPackage.TRANSITIONS_TYPE__UML_DEPENDENCY_ID:
+				setUmlDependencyID((String)newValue);
+				return;
+			case UMLRpyPackage.TRANSITIONS_TYPE__MY_STATE:
+				setMyState((String)newValue);
+				return;
+			case UMLRpyPackage.TRANSITIONS_TYPE__OBJECT_CREATION:
+				setObjectCreation((String)newValue);
+				return;
+			case UMLRpyPackage.TRANSITIONS_TYPE__NAME:
+				setName((String)newValue);
+				return;
+		}
+		super.eSet(featureID, newValue);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void eUnset(int featureID) {
+		switch (featureID) {
+			case UMLRpyPackage.TRANSITIONS_TYPE__MODIFIED_TIME_WEAK:
+				getModifiedTimeWeak().clear();
+				return;
+			case UMLRpyPackage.TRANSITIONS_TYPE__STATIC_REACTION:
+				setStaticReaction(STATIC_REACTION_EDEFAULT);
+				return;
+			case UMLRpyPackage.TRANSITIONS_TYPE__ITS_TARGET:
+				setItsTarget((ItsTargetType)null);
+				return;
+			case UMLRpyPackage.TRANSITIONS_TYPE__ID:
+				setId(ID_EDEFAULT);
+				return;
+			case UMLRpyPackage.TRANSITIONS_TYPE__CODE_UPDATE_CG_TIME:
+				getCodeUpdateCGTime().clear();
+				return;
+			case UMLRpyPackage.TRANSITIONS_TYPE__REQUIREMEN_TRACABILITY_HANDLE:
+				setRequiremenTracabilityHandle(REQUIREMEN_TRACABILITY_HANDLE_EDEFAULT);
+				return;
+			case UMLRpyPackage.TRANSITIONS_TYPE__DESCRIPTION:
+				setDescription((IDescription)null);
+				return;
+			case UMLRpyPackage.TRANSITIONS_TYPE__ITS_LABEL:
+				setItsLabel((ItsLabelType)null);
+				return;
+			case UMLRpyPackage.TRANSITIONS_TYPE__UML_DEPENDENCY_ID:
+				setUmlDependencyID(UML_DEPENDENCY_ID_EDEFAULT);
+				return;
+			case UMLRpyPackage.TRANSITIONS_TYPE__MY_STATE:
+				setMyState(MY_STATE_EDEFAULT);
+				return;
+			case UMLRpyPackage.TRANSITIONS_TYPE__OBJECT_CREATION:
+				setObjectCreation(OBJECT_CREATION_EDEFAULT);
+				return;
+			case UMLRpyPackage.TRANSITIONS_TYPE__NAME:
+				setName(NAME_EDEFAULT);
+				return;
+		}
+		super.eUnset(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public boolean eIsSet(int featureID) {
+		switch (featureID) {
+			case UMLRpyPackage.TRANSITIONS_TYPE__MODIFIED_TIME_WEAK:
+				return modifiedTimeWeak != null && !modifiedTimeWeak.isEmpty();
+			case UMLRpyPackage.TRANSITIONS_TYPE__STATIC_REACTION:
+				return STATIC_REACTION_EDEFAULT == null ? staticReaction != null : !STATIC_REACTION_EDEFAULT.equals(staticReaction);
+			case UMLRpyPackage.TRANSITIONS_TYPE__ITS_TARGET:
+				return itsTarget != null;
+			case UMLRpyPackage.TRANSITIONS_TYPE__ID:
+				return ID_EDEFAULT == null ? id != null : !ID_EDEFAULT.equals(id);
+			case UMLRpyPackage.TRANSITIONS_TYPE__CODE_UPDATE_CG_TIME:
+				return codeUpdateCGTime != null && !codeUpdateCGTime.isEmpty();
+			case UMLRpyPackage.TRANSITIONS_TYPE__REQUIREMEN_TRACABILITY_HANDLE:
+				return REQUIREMEN_TRACABILITY_HANDLE_EDEFAULT == null ? requiremenTracabilityHandle != null : !REQUIREMEN_TRACABILITY_HANDLE_EDEFAULT.equals(requiremenTracabilityHandle);
+			case UMLRpyPackage.TRANSITIONS_TYPE__DESCRIPTION:
+				return description != null;
+			case UMLRpyPackage.TRANSITIONS_TYPE__ITS_LABEL:
+				return itsLabel != null;
+			case UMLRpyPackage.TRANSITIONS_TYPE__UML_DEPENDENCY_ID:
+				return UML_DEPENDENCY_ID_EDEFAULT == null ? umlDependencyID != null : !UML_DEPENDENCY_ID_EDEFAULT.equals(umlDependencyID);
+			case UMLRpyPackage.TRANSITIONS_TYPE__MY_STATE:
+				return MY_STATE_EDEFAULT == null ? myState != null : !MY_STATE_EDEFAULT.equals(myState);
+			case UMLRpyPackage.TRANSITIONS_TYPE__OBJECT_CREATION:
+				return OBJECT_CREATION_EDEFAULT == null ? objectCreation != null : !OBJECT_CREATION_EDEFAULT.equals(objectCreation);
+			case UMLRpyPackage.TRANSITIONS_TYPE__NAME:
+				return NAME_EDEFAULT == null ? name != null : !NAME_EDEFAULT.equals(name);
+		}
+		return super.eIsSet(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String toString() {
+		if (eIsProxy()) return super.toString();
+
+		StringBuffer result = new StringBuffer(super.toString());
+		result.append(" (modifiedTimeWeak: "); //$NON-NLS-1$
+		result.append(modifiedTimeWeak);
+		result.append(", staticReaction: "); //$NON-NLS-1$
+		result.append(staticReaction);
+		result.append(", id: "); //$NON-NLS-1$
+		result.append(id);
+		result.append(", codeUpdateCGTime: "); //$NON-NLS-1$
+		result.append(codeUpdateCGTime);
+		result.append(", requiremenTracabilityHandle: "); //$NON-NLS-1$
+		result.append(requiremenTracabilityHandle);
+		result.append(", umlDependencyID: "); //$NON-NLS-1$
+		result.append(umlDependencyID);
+		result.append(", myState: "); //$NON-NLS-1$
+		result.append(myState);
+		result.append(", objectCreation: "); //$NON-NLS-1$
+		result.append(objectCreation);
+		result.append(", name: "); //$NON-NLS-1$
+		result.append(name);
+		result.append(')');
+		return result.toString();
+	}
+
+} //TransitionsTypeImpl
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/UMLRpyFactoryImpl.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/UMLRpyFactoryImpl.java
new file mode 100755
index 0000000..723fab6
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/UMLRpyFactoryImpl.java
@@ -0,0 +1,2294 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl;
+
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.emf.ecore.EPackage;
+
+import org.eclipse.emf.ecore.impl.EFactoryImpl;
+
+import org.eclipse.emf.ecore.plugin.EcorePlugin;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.*;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model <b>Factory</b>.
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class UMLRpyFactoryImpl extends EFactoryImpl implements UMLRpyFactory {
+	/**
+	 * Creates the default factory implementation.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public static UMLRpyFactory init() {
+		try {
+			UMLRpyFactory theUMLRpyFactory = (UMLRpyFactory)EPackage.Registry.INSTANCE.getEFactory(UMLRpyPackage.eNS_URI);
+			if (theUMLRpyFactory != null) {
+				return theUMLRpyFactory;
+			}
+		}
+		catch (Exception exception) {
+			EcorePlugin.INSTANCE.log(exception);
+		}
+		return new UMLRpyFactoryImpl();
+	}
+
+	/**
+	 * Creates an instance of the factory.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public UMLRpyFactoryImpl() {
+		super();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public EObject create(EClass eClass) {
+		switch (eClass.getClassifierID()) {
+			case UMLRpyPackage.CCOLLABORATION_CHART: return createCCollaborationChart();
+			case UMLRpyPackage.CGI_ACTION_STATE: return createCGIActionState();
+			case UMLRpyPackage.CGI_ACTIVE_X: return createCGIActiveX();
+			case UMLRpyPackage.CGI_ANCHOR: return createCGIAnchor();
+			case UMLRpyPackage.CGI_ANNOTATION: return createCGIAnnotation();
+			case UMLRpyPackage.CGI_ARROW: return createCGIArrow();
+			case UMLRpyPackage.CGI_ASSOCIATION_END: return createCGIAssociationEnd();
+			case UMLRpyPackage.CGI_ASSOCIATION_ROLE: return createCGIAssociationRole();
+			case UMLRpyPackage.CGI_BASIC_CLASS: return createCGIBasicClass();
+			case UMLRpyPackage.CGI_BLOCK_STATE: return createCGIBlockState();
+			case UMLRpyPackage.CGI_BOX: return createCGIBox();
+			case UMLRpyPackage.CGI_BUTTON_ARRAY: return createCGIButtonArray();
+			case UMLRpyPackage.CGI_CLASS: return createCGIClass();
+			case UMLRpyPackage.CGI_CLASS_CHART: return createCGIClassChart();
+			case UMLRpyPackage.CGI_CLASSIFIER_ROLE: return createCGIClassifierRole();
+			case UMLRpyPackage.CGI_COMPARTMENT: return createCGICompartment();
+			case UMLRpyPackage.CGI_COMPONENT: return createCGIComponent();
+			case UMLRpyPackage.CGI_COMPOSITE_CLASS: return createCGICompositeClass();
+			case UMLRpyPackage.CGI_CONNECTOR: return createCGIConnector();
+			case UMLRpyPackage.CGI_CONTAIN_ARROW: return createCGIContainArrow();
+			case UMLRpyPackage.CGI_DIAGRAM_FRAME: return createCGIDiagramFrame();
+			case UMLRpyPackage.CGI_FREE_SHAPE: return createCGIFreeShape();
+			case UMLRpyPackage.CGI_FREE_TEXT: return createCGIFreeText();
+			case UMLRpyPackage.CGI_GENERIC_ELEMENT: return createCGIGenericElement();
+			case UMLRpyPackage.CGI_IMAGE: return createCGIImage();
+			case UMLRpyPackage.CGI_IMAGE_DATA: return createCGIImageData();
+			case UMLRpyPackage.CGI_INFORMATION_FLOW: return createCGIInformationFlow();
+			case UMLRpyPackage.CGI_INHERITANCE: return createCGIInheritance();
+			case UMLRpyPackage.CGIMFC_CTRL: return createCGIMFCCtrl();
+			case UMLRpyPackage.CGI_MESSAGE_LABEL: return createCGIMessageLabel();
+			case UMLRpyPackage.CGI_MSC_CHART: return createCGIMscChart();
+			case UMLRpyPackage.CGI_MSC_COLUMN_CR: return createCGIMscColumnCR();
+			case UMLRpyPackage.CGI_MSC_CONDITION_MARK: return createCGIMscConditionMark();
+			case UMLRpyPackage.CGI_MSC_EXECUTION_OCCURRENCE: return createCGIMscExecutionOccurrence();
+			case UMLRpyPackage.CGI_MSC_INTERACTION_OCCURRENCE: return createCGIMscInteractionOccurrence();
+			case UMLRpyPackage.CGI_MSC_INTERACTION_OPERAND: return createCGIMscInteractionOperand();
+			case UMLRpyPackage.CGI_MSC_INTERACTION_OPERATOR: return createCGIMscInteractionOperator();
+			case UMLRpyPackage.CGI_MSC_MESSAGE: return createCGIMscMessage();
+			case UMLRpyPackage.CGI_OBJECT_INSTANCE: return createCGIObjectInstance();
+			case UMLRpyPackage.CGI_OBJECT_LINK: return createCGIObjectLink();
+			case UMLRpyPackage.CGI_PACKAGE: return createCGIPackage();
+			case UMLRpyPackage.CGI_PARTITION: return createCGIPartition();
+			case UMLRpyPackage.CGI_PORT_CONNECTOR: return createCGIPortConnector();
+			case UMLRpyPackage.CGI_STATE: return createCGIState();
+			case UMLRpyPackage.CGI_STATE_CHART: return createCGIStateChart();
+			case UMLRpyPackage.CGI_SWIMLANE_FRAME: return createCGISwimlaneFrame();
+			case UMLRpyPackage.CGI_TEXT: return createCGIText();
+			case UMLRpyPackage.CGI_TEXT_BOX: return createCGITextBox();
+			case UMLRpyPackage.CGI_TRANS: return createCGITrans();
+			case UMLRpyPackage.COLL_EVENT: return createCollEvent();
+			case UMLRpyPackage.IACCEPT_EVENT_ACTION: return createIAcceptEventAction();
+			case UMLRpyPackage.IACCEPT_TIME_EVENT: return createIAcceptTimeEvent();
+			case UMLRpyPackage.IACTION: return createIAction();
+			case UMLRpyPackage.IACTIVITY_DIAGRAM: return createIActivityDiagram();
+			case UMLRpyPackage.IACTIVITY_GRAPH: return createIActivityGraph();
+			case UMLRpyPackage.IACTOR: return createIActor();
+			case UMLRpyPackage.IANCHOR: return createIAnchor();
+			case UMLRpyPackage.IANNOTATION: return createIAnnotation();
+			case UMLRpyPackage.IARGUMENT: return createIArgument();
+			case UMLRpyPackage.IASSOCIATION_CLASS: return createIAssociationClass();
+			case UMLRpyPackage.IASSOCIATION_END: return createIAssociationEnd();
+			case UMLRpyPackage.IASSOCIATION_END_HANDLE: return createIAssociationEndHandle();
+			case UMLRpyPackage.IASSOCIATION_ROLE: return createIAssociationRole();
+			case UMLRpyPackage.IATTRIBUTE: return createIAttribute();
+			case UMLRpyPackage.IBLOCK: return createIBlock();
+			case UMLRpyPackage.IBODY: return createIBody();
+			case UMLRpyPackage.IBRANCH: return createIBranch();
+			case UMLRpyPackage.ICALL_ACTION: return createICallAction();
+			case UMLRpyPackage.ICALL_OPERATION: return createICallOperation();
+			case UMLRpyPackage.ICLASS: return createIClass();
+			case UMLRpyPackage.ICLASS_HANDLE: return createIClassHandle();
+			case UMLRpyPackage.ICLASS_INSTANCE: return createIClassInstance();
+			case UMLRpyPackage.ICLASSIFIER: return createIClassifier();
+			case UMLRpyPackage.ICLASSIFIER_ROLE: return createIClassifierRole();
+			case UMLRpyPackage.ICODE_GEN_CONFIG_INFO: return createICodeGenConfigInfo();
+			case UMLRpyPackage.ICODE_GEN_CONFIG_INFO_HANDLE: return createICodeGenConfigInfoHandle();
+			case UMLRpyPackage.ICOLLABORATION: return createICollaboration();
+			case UMLRpyPackage.ICOLLABORATION_DIAGRAM: return createICollaborationDiagram();
+			case UMLRpyPackage.ICOLOR: return createIColor();
+			case UMLRpyPackage.ICOMBINED_FRAGMENT: return createICombinedFragment();
+			case UMLRpyPackage.ICOMMENT: return createIComment();
+			case UMLRpyPackage.ICOMPONENT: return createIComponent();
+			case UMLRpyPackage.ICOMPONENT_DIAGRAM: return createIComponentDiagram();
+			case UMLRpyPackage.ICOMPONENT_INSTANCE: return createIComponentInstance();
+			case UMLRpyPackage.ICONFIGURATION: return createIConfiguration();
+			case UMLRpyPackage.ICONNECTOR: return createIConnector();
+			case UMLRpyPackage.ICONSTRAINT: return createIConstraint();
+			case UMLRpyPackage.ICONSTRUCTOR: return createIConstructor();
+			case UMLRpyPackage.ICONTEXT_SPECIFICATION: return createIContextSpecification();
+			case UMLRpyPackage.ICONTROLLED_FILE: return createIControlledFile();
+			case UMLRpyPackage.IDEFAULT_DRVD_TRANS: return createIDefaultDrvdTrans();
+			case UMLRpyPackage.IDEPENDENCY: return createIDependency();
+			case UMLRpyPackage.IDEPLOYMENT_DIAGRAM: return createIDeploymentDiagram();
+			case UMLRpyPackage.IDESCRIPTION: return createIDescription();
+			case UMLRpyPackage.IDESTRUCTOR: return createIDestructor();
+			case UMLRpyPackage.IDIAGRAM: return createIDiagram();
+			case UMLRpyPackage.IEMBEDED_FILE: return createIEmbededFile();
+			case UMLRpyPackage.IENUMERATION_LITERAL: return createIEnumerationLiteral();
+			case UMLRpyPackage.IEVENT: return createIEvent();
+			case UMLRpyPackage.IEVENT_HANDLE: return createIEventHandle();
+			case UMLRpyPackage.IEVENT_RECEPTION: return createIEventReception();
+			case UMLRpyPackage.IEXECUTION_OCCURRENCE: return createIExecutionOccurrence();
+			case UMLRpyPackage.IEXTERNAL_HYPERLINK: return createIExternalHyperlink();
+			case UMLRpyPackage.IFILE: return createIFile();
+			case UMLRpyPackage.IFILE_FRAGMENT: return createIFileFragment();
+			case UMLRpyPackage.IFLOW: return createIFlow();
+			case UMLRpyPackage.IFLOW_ITEM: return createIFlowItem();
+			case UMLRpyPackage.IFLOWCHART: return createIFlowchart();
+			case UMLRpyPackage.IFOLDER: return createIFolder();
+			case UMLRpyPackage.IFORK: return createIFork();
+			case UMLRpyPackage.IGENERALIZATION: return createIGeneralization();
+			case UMLRpyPackage.IGUARD: return createIGuard();
+			case UMLRpyPackage.IHANDLE_WITH_DATA: return createIHandleWithData();
+			case UMLRpyPackage.IHISTORY_CONNECTOR: return createIHistoryConnector();
+			case UMLRpyPackage.IHYPER_LINK: return createIHyperLink();
+			case UMLRpyPackage.IINFORMATION_FLOW: return createIInformationFlow();
+			case UMLRpyPackage.IINFORMATION_ITEM: return createIInformationItem();
+			case UMLRpyPackage.IINSTANCE: return createIInstance();
+			case UMLRpyPackage.IINSTANCE_SLOT: return createIInstanceSlot();
+			case UMLRpyPackage.IINSTANCE_SPECIFICATION: return createIInstanceSpecification();
+			case UMLRpyPackage.IINSTANCE_VALUE: return createIInstanceValue();
+			case UMLRpyPackage.IINTERACTION_OCCURRENCE: return createIInteractionOccurrence();
+			case UMLRpyPackage.IINTERACTION_OPERAND: return createIInteractionOperand();
+			case UMLRpyPackage.IINTERACTION_OPERATOR: return createIInteractionOperator();
+			case UMLRpyPackage.IINTERFACE_ITEM: return createIInterfaceItem();
+			case UMLRpyPackage.IINTERFACE_ITEM_TRIGGER: return createIInterfaceItemTrigger();
+			case UMLRpyPackage.IINTERNAL_HYPERLINK: return createIInternalHyperlink();
+			case UMLRpyPackage.ILABEL: return createILabel();
+			case UMLRpyPackage.ILINK: return createILink();
+			case UMLRpyPackage.ILINK_INSTANCE: return createILinkInstance();
+			case UMLRpyPackage.ILITERAL_SPECIFICATION: return createILiteralSpecification();
+			case UMLRpyPackage.IM_HYPER_LINK: return createIMHyperLink();
+			case UMLRpyPackage.IMSC: return createIMSC();
+			case UMLRpyPackage.IMATRIX_INSTANCE: return createIMatrixInstance();
+			case UMLRpyPackage.IMATRIX_LAYOUT: return createIMatrixLayout();
+			case UMLRpyPackage.IMATRIX_VIEW: return createIMatrixView();
+			case UMLRpyPackage.IMESSAGE: return createIMessage();
+			case UMLRpyPackage.IMESSAGE_POINT: return createIMessagePoint();
+			case UMLRpyPackage.IMETA_LINK_HANDLE: return createIMetaLinkHandle();
+			case UMLRpyPackage.IMODEL_ELEMENT: return createIModelElement();
+			case UMLRpyPackage.IMODULE: return createIModule();
+			case UMLRpyPackage.IMULTIPLICITY_ITEM: return createIMultiplicityItem();
+			case UMLRpyPackage.INODE: return createINode();
+			case UMLRpyPackage.IOBJECT_LINK: return createIObjectLink();
+			case UMLRpyPackage.IOBJECT_LINK_HANDLE: return createIObjectLinkHandle();
+			case UMLRpyPackage.IOBJECT_MODEL_DIAGRAM: return createIObjectModelDiagram();
+			case UMLRpyPackage.IOBJECT_NODE: return createIObjectNode();
+			case UMLRpyPackage.IOPERATION: return createIOperation();
+			case UMLRpyPackage.IPACKAGE: return createIPackage();
+			case UMLRpyPackage.IPANEL_DIAGRAM: return createIPanelDiagram();
+			case UMLRpyPackage.IPART: return createIPart();
+			case UMLRpyPackage.IPIN: return createIPin();
+			case UMLRpyPackage.IPORT: return createIPort();
+			case UMLRpyPackage.IPRIMITIVE_OPERATION: return createIPrimitiveOperation();
+			case UMLRpyPackage.IPROFILE: return createIProfile();
+			case UMLRpyPackage.IPROJECT: return createIProject();
+			case UMLRpyPackage.IPROPERTY: return createIProperty();
+			case UMLRpyPackage.IPROPERTY_CONTAINER: return createIPropertyContainer();
+			case UMLRpyPackage.IPROPERTY_METACLASS: return createIPropertyMetaclass();
+			case UMLRpyPackage.IPROPERTY_SUBJECT: return createIPropertySubject();
+			case UMLRpyPackage.IRECEPTION: return createIReception();
+			case UMLRpyPackage.IREFERENCE_ACTIVITY: return createIReferenceActivity();
+			case UMLRpyPackage.IRELATION: return createIRelation();
+			case UMLRpyPackage.IREQUIREMENT: return createIRequirement();
+			case UMLRpyPackage.ISEND_ACTION: return createISendAction();
+			case UMLRpyPackage.ISEQUENCE_DIAGRAM: return createISequenceDiagram();
+			case UMLRpyPackage.ISLOT: return createISlot();
+			case UMLRpyPackage.ISTATE: return createIState();
+			case UMLRpyPackage.ISTATE_CHART: return createIStateChart();
+			case UMLRpyPackage.ISTATE_CHART_DIAGRAM: return createIStateChartDiagram();
+			case UMLRpyPackage.ISTATE_VERTEX: return createIStateVertex();
+			case UMLRpyPackage.ISTEREOTYPE: return createIStereotype();
+			case UMLRpyPackage.ISTRUCTURE_DIAGRAM: return createIStructureDiagram();
+			case UMLRpyPackage.ISUBSYSTEM: return createISubsystem();
+			case UMLRpyPackage.ISWIMLANE: return createISwimlane();
+			case UMLRpyPackage.ISYS_ML_PORT: return createISysMLPort();
+			case UMLRpyPackage.ITABLE_INSTANCE: return createITableInstance();
+			case UMLRpyPackage.ITABLE_LAYOUT: return createITableLayout();
+			case UMLRpyPackage.ITABLE_VIEW: return createITableView();
+			case UMLRpyPackage.ITAG: return createITag();
+			case UMLRpyPackage.ITEMPLATE_INST: return createITemplateInst();
+			case UMLRpyPackage.ITEMPLATE_INST_PARAM: return createITemplateInstParam();
+			case UMLRpyPackage.ITEMPLATE_INSTANTIATION: return createITemplateInstantiation();
+			case UMLRpyPackage.ITEMPLATE_INSTANTIATION_PARAMETER: return createITemplateInstantiationParameter();
+			case UMLRpyPackage.ITEMPLATE_PARAMETER: return createITemplateParameter();
+			case UMLRpyPackage.ITIME_EVENT: return createITimeEvent();
+			case UMLRpyPackage.ITIMEOUT: return createITimeout();
+			case UMLRpyPackage.ITRANSITION: return createITransition();
+			case UMLRpyPackage.ITRIGGER: return createITrigger();
+			case UMLRpyPackage.ITRIGGERED: return createITriggered();
+			case UMLRpyPackage.ITYPE: return createIType();
+			case UMLRpyPackage.IUC_DIAGRAM: return createIUCDiagram();
+			case UMLRpyPackage.IUNIT: return createIUnit();
+			case UMLRpyPackage.IUSE_CASE: return createIUseCase();
+			case UMLRpyPackage.IUSE_CASE_DIAGRAM: return createIUseCaseDiagram();
+			case UMLRpyPackage.IUSE_CASE_STEREO_TYPE: return createIUseCaseStereoType();
+			case UMLRpyPackage.IVALUE_SPECIFICATION: return createIValueSpecification();
+			case UMLRpyPackage.IVARIABLE: return createIVariable();
+			case UMLRpyPackage.TABLE_DATA_DEFINITION: return createTableDataDefinition();
+			case UMLRpyPackage.UNKNOWN_TYPE: return createUnknownType();
+			default:
+				throw new IllegalArgumentException("The class '" + eClass.getName() + "' is not a valid classifier"); //$NON-NLS-1$ //$NON-NLS-2$
+		}
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public CCollaborationChart createCCollaborationChart() {
+		CCollaborationChartImpl cCollaborationChart = new CCollaborationChartImpl();
+		return cCollaborationChart;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public CGIActionState createCGIActionState() {
+		CGIActionStateImpl cgiActionState = new CGIActionStateImpl();
+		return cgiActionState;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public CGIActiveX createCGIActiveX() {
+		CGIActiveXImpl cgiActiveX = new CGIActiveXImpl();
+		return cgiActiveX;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public CGIAnchor createCGIAnchor() {
+		CGIAnchorImpl cgiAnchor = new CGIAnchorImpl();
+		return cgiAnchor;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public CGIAnnotation createCGIAnnotation() {
+		CGIAnnotationImpl cgiAnnotation = new CGIAnnotationImpl();
+		return cgiAnnotation;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public CGIArrow createCGIArrow() {
+		CGIArrowImpl cgiArrow = new CGIArrowImpl();
+		return cgiArrow;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public CGIAssociationEnd createCGIAssociationEnd() {
+		CGIAssociationEndImpl cgiAssociationEnd = new CGIAssociationEndImpl();
+		return cgiAssociationEnd;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public CGIAssociationRole createCGIAssociationRole() {
+		CGIAssociationRoleImpl cgiAssociationRole = new CGIAssociationRoleImpl();
+		return cgiAssociationRole;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public CGIBasicClass createCGIBasicClass() {
+		CGIBasicClassImpl cgiBasicClass = new CGIBasicClassImpl();
+		return cgiBasicClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public CGIBlockState createCGIBlockState() {
+		CGIBlockStateImpl cgiBlockState = new CGIBlockStateImpl();
+		return cgiBlockState;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public CGIBox createCGIBox() {
+		CGIBoxImpl cgiBox = new CGIBoxImpl();
+		return cgiBox;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public CGIButtonArray createCGIButtonArray() {
+		CGIButtonArrayImpl cgiButtonArray = new CGIButtonArrayImpl();
+		return cgiButtonArray;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public CGIClass createCGIClass() {
+		CGIClassImpl cgiClass = new CGIClassImpl();
+		return cgiClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public CGIClassChart createCGIClassChart() {
+		CGIClassChartImpl cgiClassChart = new CGIClassChartImpl();
+		return cgiClassChart;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public CGIClassifierRole createCGIClassifierRole() {
+		CGIClassifierRoleImpl cgiClassifierRole = new CGIClassifierRoleImpl();
+		return cgiClassifierRole;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public CGICompartment createCGICompartment() {
+		CGICompartmentImpl cgiCompartment = new CGICompartmentImpl();
+		return cgiCompartment;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public CGIComponent createCGIComponent() {
+		CGIComponentImpl cgiComponent = new CGIComponentImpl();
+		return cgiComponent;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public CGICompositeClass createCGICompositeClass() {
+		CGICompositeClassImpl cgiCompositeClass = new CGICompositeClassImpl();
+		return cgiCompositeClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public CGIConnector createCGIConnector() {
+		CGIConnectorImpl cgiConnector = new CGIConnectorImpl();
+		return cgiConnector;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public CGIContainArrow createCGIContainArrow() {
+		CGIContainArrowImpl cgiContainArrow = new CGIContainArrowImpl();
+		return cgiContainArrow;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public CGIDiagramFrame createCGIDiagramFrame() {
+		CGIDiagramFrameImpl cgiDiagramFrame = new CGIDiagramFrameImpl();
+		return cgiDiagramFrame;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public CGIFreeShape createCGIFreeShape() {
+		CGIFreeShapeImpl cgiFreeShape = new CGIFreeShapeImpl();
+		return cgiFreeShape;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public CGIFreeText createCGIFreeText() {
+		CGIFreeTextImpl cgiFreeText = new CGIFreeTextImpl();
+		return cgiFreeText;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public CGIGenericElement createCGIGenericElement() {
+		CGIGenericElementImpl cgiGenericElement = new CGIGenericElementImpl();
+		return cgiGenericElement;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public CGIImage createCGIImage() {
+		CGIImageImpl cgiImage = new CGIImageImpl();
+		return cgiImage;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public CGIImageData createCGIImageData() {
+		CGIImageDataImpl cgiImageData = new CGIImageDataImpl();
+		return cgiImageData;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public CGIInformationFlow createCGIInformationFlow() {
+		CGIInformationFlowImpl cgiInformationFlow = new CGIInformationFlowImpl();
+		return cgiInformationFlow;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public CGIInheritance createCGIInheritance() {
+		CGIInheritanceImpl cgiInheritance = new CGIInheritanceImpl();
+		return cgiInheritance;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public CGIMFCCtrl createCGIMFCCtrl() {
+		CGIMFCCtrlImpl cgimfcCtrl = new CGIMFCCtrlImpl();
+		return cgimfcCtrl;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public CGIMessageLabel createCGIMessageLabel() {
+		CGIMessageLabelImpl cgiMessageLabel = new CGIMessageLabelImpl();
+		return cgiMessageLabel;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public CGIMscChart createCGIMscChart() {
+		CGIMscChartImpl cgiMscChart = new CGIMscChartImpl();
+		return cgiMscChart;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public CGIMscColumnCR createCGIMscColumnCR() {
+		CGIMscColumnCRImpl cgiMscColumnCR = new CGIMscColumnCRImpl();
+		return cgiMscColumnCR;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public CGIMscConditionMark createCGIMscConditionMark() {
+		CGIMscConditionMarkImpl cgiMscConditionMark = new CGIMscConditionMarkImpl();
+		return cgiMscConditionMark;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public CGIMscExecutionOccurrence createCGIMscExecutionOccurrence() {
+		CGIMscExecutionOccurrenceImpl cgiMscExecutionOccurrence = new CGIMscExecutionOccurrenceImpl();
+		return cgiMscExecutionOccurrence;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public CGIMscInteractionOccurrence createCGIMscInteractionOccurrence() {
+		CGIMscInteractionOccurrenceImpl cgiMscInteractionOccurrence = new CGIMscInteractionOccurrenceImpl();
+		return cgiMscInteractionOccurrence;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public CGIMscInteractionOperand createCGIMscInteractionOperand() {
+		CGIMscInteractionOperandImpl cgiMscInteractionOperand = new CGIMscInteractionOperandImpl();
+		return cgiMscInteractionOperand;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public CGIMscInteractionOperator createCGIMscInteractionOperator() {
+		CGIMscInteractionOperatorImpl cgiMscInteractionOperator = new CGIMscInteractionOperatorImpl();
+		return cgiMscInteractionOperator;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public CGIMscMessage createCGIMscMessage() {
+		CGIMscMessageImpl cgiMscMessage = new CGIMscMessageImpl();
+		return cgiMscMessage;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public CGIObjectInstance createCGIObjectInstance() {
+		CGIObjectInstanceImpl cgiObjectInstance = new CGIObjectInstanceImpl();
+		return cgiObjectInstance;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public CGIObjectLink createCGIObjectLink() {
+		CGIObjectLinkImpl cgiObjectLink = new CGIObjectLinkImpl();
+		return cgiObjectLink;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public CGIPackage createCGIPackage() {
+		CGIPackageImpl cgiPackage = new CGIPackageImpl();
+		return cgiPackage;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public CGIPartition createCGIPartition() {
+		CGIPartitionImpl cgiPartition = new CGIPartitionImpl();
+		return cgiPartition;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public CGIPortConnector createCGIPortConnector() {
+		CGIPortConnectorImpl cgiPortConnector = new CGIPortConnectorImpl();
+		return cgiPortConnector;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public CGIState createCGIState() {
+		CGIStateImpl cgiState = new CGIStateImpl();
+		return cgiState;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public CGIStateChart createCGIStateChart() {
+		CGIStateChartImpl cgiStateChart = new CGIStateChartImpl();
+		return cgiStateChart;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public CGISwimlaneFrame createCGISwimlaneFrame() {
+		CGISwimlaneFrameImpl cgiSwimlaneFrame = new CGISwimlaneFrameImpl();
+		return cgiSwimlaneFrame;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public CGIText createCGIText() {
+		CGITextImpl cgiText = new CGITextImpl();
+		return cgiText;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public CGITextBox createCGITextBox() {
+		CGITextBoxImpl cgiTextBox = new CGITextBoxImpl();
+		return cgiTextBox;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public CGITrans createCGITrans() {
+		CGITransImpl cgiTrans = new CGITransImpl();
+		return cgiTrans;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public CollEvent createCollEvent() {
+		CollEventImpl collEvent = new CollEventImpl();
+		return collEvent;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IAcceptEventAction createIAcceptEventAction() {
+		IAcceptEventActionImpl iAcceptEventAction = new IAcceptEventActionImpl();
+		return iAcceptEventAction;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IAcceptTimeEvent createIAcceptTimeEvent() {
+		IAcceptTimeEventImpl iAcceptTimeEvent = new IAcceptTimeEventImpl();
+		return iAcceptTimeEvent;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IAction createIAction() {
+		IActionImpl iAction = new IActionImpl();
+		return iAction;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IActivityDiagram createIActivityDiagram() {
+		IActivityDiagramImpl iActivityDiagram = new IActivityDiagramImpl();
+		return iActivityDiagram;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IActivityGraph createIActivityGraph() {
+		IActivityGraphImpl iActivityGraph = new IActivityGraphImpl();
+		return iActivityGraph;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IActor createIActor() {
+		IActorImpl iActor = new IActorImpl();
+		return iActor;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IAnchor createIAnchor() {
+		IAnchorImpl iAnchor = new IAnchorImpl();
+		return iAnchor;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IAnnotation createIAnnotation() {
+		IAnnotationImpl iAnnotation = new IAnnotationImpl();
+		return iAnnotation;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IArgument createIArgument() {
+		IArgumentImpl iArgument = new IArgumentImpl();
+		return iArgument;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IAssociationClass createIAssociationClass() {
+		IAssociationClassImpl iAssociationClass = new IAssociationClassImpl();
+		return iAssociationClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IAssociationEnd createIAssociationEnd() {
+		IAssociationEndImpl iAssociationEnd = new IAssociationEndImpl();
+		return iAssociationEnd;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IAssociationEndHandle createIAssociationEndHandle() {
+		IAssociationEndHandleImpl iAssociationEndHandle = new IAssociationEndHandleImpl();
+		return iAssociationEndHandle;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IAssociationRole createIAssociationRole() {
+		IAssociationRoleImpl iAssociationRole = new IAssociationRoleImpl();
+		return iAssociationRole;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IAttribute createIAttribute() {
+		IAttributeImpl iAttribute = new IAttributeImpl();
+		return iAttribute;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IBlock createIBlock() {
+		IBlockImpl iBlock = new IBlockImpl();
+		return iBlock;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IBody createIBody() {
+		IBodyImpl iBody = new IBodyImpl();
+		return iBody;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IBranch createIBranch() {
+		IBranchImpl iBranch = new IBranchImpl();
+		return iBranch;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public ICallAction createICallAction() {
+		ICallActionImpl iCallAction = new ICallActionImpl();
+		return iCallAction;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public ICallOperation createICallOperation() {
+		ICallOperationImpl iCallOperation = new ICallOperationImpl();
+		return iCallOperation;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IClass createIClass() {
+		IClassImpl iClass = new IClassImpl();
+		return iClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IClassHandle createIClassHandle() {
+		IClassHandleImpl iClassHandle = new IClassHandleImpl();
+		return iClassHandle;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IClassInstance createIClassInstance() {
+		IClassInstanceImpl iClassInstance = new IClassInstanceImpl();
+		return iClassInstance;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IClassifier createIClassifier() {
+		IClassifierImpl iClassifier = new IClassifierImpl();
+		return iClassifier;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IClassifierRole createIClassifierRole() {
+		IClassifierRoleImpl iClassifierRole = new IClassifierRoleImpl();
+		return iClassifierRole;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public ICodeGenConfigInfo createICodeGenConfigInfo() {
+		ICodeGenConfigInfoImpl iCodeGenConfigInfo = new ICodeGenConfigInfoImpl();
+		return iCodeGenConfigInfo;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public ICodeGenConfigInfoHandle createICodeGenConfigInfoHandle() {
+		ICodeGenConfigInfoHandleImpl iCodeGenConfigInfoHandle = new ICodeGenConfigInfoHandleImpl();
+		return iCodeGenConfigInfoHandle;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public ICollaboration createICollaboration() {
+		ICollaborationImpl iCollaboration = new ICollaborationImpl();
+		return iCollaboration;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public ICollaborationDiagram createICollaborationDiagram() {
+		ICollaborationDiagramImpl iCollaborationDiagram = new ICollaborationDiagramImpl();
+		return iCollaborationDiagram;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IColor createIColor() {
+		IColorImpl iColor = new IColorImpl();
+		return iColor;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public ICombinedFragment createICombinedFragment() {
+		ICombinedFragmentImpl iCombinedFragment = new ICombinedFragmentImpl();
+		return iCombinedFragment;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IComment createIComment() {
+		ICommentImpl iComment = new ICommentImpl();
+		return iComment;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IComponent createIComponent() {
+		IComponentImpl iComponent = new IComponentImpl();
+		return iComponent;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IComponentDiagram createIComponentDiagram() {
+		IComponentDiagramImpl iComponentDiagram = new IComponentDiagramImpl();
+		return iComponentDiagram;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IComponentInstance createIComponentInstance() {
+		IComponentInstanceImpl iComponentInstance = new IComponentInstanceImpl();
+		return iComponentInstance;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IConfiguration createIConfiguration() {
+		IConfigurationImpl iConfiguration = new IConfigurationImpl();
+		return iConfiguration;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IConnector createIConnector() {
+		IConnectorImpl iConnector = new IConnectorImpl();
+		return iConnector;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IConstraint createIConstraint() {
+		IConstraintImpl iConstraint = new IConstraintImpl();
+		return iConstraint;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IConstructor createIConstructor() {
+		IConstructorImpl iConstructor = new IConstructorImpl();
+		return iConstructor;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IContextSpecification createIContextSpecification() {
+		IContextSpecificationImpl iContextSpecification = new IContextSpecificationImpl();
+		return iContextSpecification;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IControlledFile createIControlledFile() {
+		IControlledFileImpl iControlledFile = new IControlledFileImpl();
+		return iControlledFile;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IDefaultDrvdTrans createIDefaultDrvdTrans() {
+		IDefaultDrvdTransImpl iDefaultDrvdTrans = new IDefaultDrvdTransImpl();
+		return iDefaultDrvdTrans;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IDependency createIDependency() {
+		IDependencyImpl iDependency = new IDependencyImpl();
+		return iDependency;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IDeploymentDiagram createIDeploymentDiagram() {
+		IDeploymentDiagramImpl iDeploymentDiagram = new IDeploymentDiagramImpl();
+		return iDeploymentDiagram;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IDescription createIDescription() {
+		IDescriptionImpl iDescription = new IDescriptionImpl();
+		return iDescription;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IDestructor createIDestructor() {
+		IDestructorImpl iDestructor = new IDestructorImpl();
+		return iDestructor;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IDiagram createIDiagram() {
+		IDiagramImpl iDiagram = new IDiagramImpl();
+		return iDiagram;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IEmbededFile createIEmbededFile() {
+		IEmbededFileImpl iEmbededFile = new IEmbededFileImpl();
+		return iEmbededFile;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IEnumerationLiteral createIEnumerationLiteral() {
+		IEnumerationLiteralImpl iEnumerationLiteral = new IEnumerationLiteralImpl();
+		return iEnumerationLiteral;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IEvent createIEvent() {
+		IEventImpl iEvent = new IEventImpl();
+		return iEvent;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IEventHandle createIEventHandle() {
+		IEventHandleImpl iEventHandle = new IEventHandleImpl();
+		return iEventHandle;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IEventReception createIEventReception() {
+		IEventReceptionImpl iEventReception = new IEventReceptionImpl();
+		return iEventReception;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IExecutionOccurrence createIExecutionOccurrence() {
+		IExecutionOccurrenceImpl iExecutionOccurrence = new IExecutionOccurrenceImpl();
+		return iExecutionOccurrence;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IExternalHyperlink createIExternalHyperlink() {
+		IExternalHyperlinkImpl iExternalHyperlink = new IExternalHyperlinkImpl();
+		return iExternalHyperlink;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IFile createIFile() {
+		IFileImpl iFile = new IFileImpl();
+		return iFile;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IFileFragment createIFileFragment() {
+		IFileFragmentImpl iFileFragment = new IFileFragmentImpl();
+		return iFileFragment;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IFlow createIFlow() {
+		IFlowImpl iFlow = new IFlowImpl();
+		return iFlow;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IFlowItem createIFlowItem() {
+		IFlowItemImpl iFlowItem = new IFlowItemImpl();
+		return iFlowItem;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IFlowchart createIFlowchart() {
+		IFlowchartImpl iFlowchart = new IFlowchartImpl();
+		return iFlowchart;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IFolder createIFolder() {
+		IFolderImpl iFolder = new IFolderImpl();
+		return iFolder;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IFork createIFork() {
+		IForkImpl iFork = new IForkImpl();
+		return iFork;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IGeneralization createIGeneralization() {
+		IGeneralizationImpl iGeneralization = new IGeneralizationImpl();
+		return iGeneralization;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IGuard createIGuard() {
+		IGuardImpl iGuard = new IGuardImpl();
+		return iGuard;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IHandleWithData createIHandleWithData() {
+		IHandleWithDataImpl iHandleWithData = new IHandleWithDataImpl();
+		return iHandleWithData;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IHistoryConnector createIHistoryConnector() {
+		IHistoryConnectorImpl iHistoryConnector = new IHistoryConnectorImpl();
+		return iHistoryConnector;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IHyperLink createIHyperLink() {
+		IHyperLinkImpl iHyperLink = new IHyperLinkImpl();
+		return iHyperLink;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IInformationFlow createIInformationFlow() {
+		IInformationFlowImpl iInformationFlow = new IInformationFlowImpl();
+		return iInformationFlow;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IInformationItem createIInformationItem() {
+		IInformationItemImpl iInformationItem = new IInformationItemImpl();
+		return iInformationItem;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IInstance createIInstance() {
+		IInstanceImpl iInstance = new IInstanceImpl();
+		return iInstance;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IInstanceSlot createIInstanceSlot() {
+		IInstanceSlotImpl iInstanceSlot = new IInstanceSlotImpl();
+		return iInstanceSlot;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IInstanceSpecification createIInstanceSpecification() {
+		IInstanceSpecificationImpl iInstanceSpecification = new IInstanceSpecificationImpl();
+		return iInstanceSpecification;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IInstanceValue createIInstanceValue() {
+		IInstanceValueImpl iInstanceValue = new IInstanceValueImpl();
+		return iInstanceValue;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IInteractionOccurrence createIInteractionOccurrence() {
+		IInteractionOccurrenceImpl iInteractionOccurrence = new IInteractionOccurrenceImpl();
+		return iInteractionOccurrence;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IInteractionOperand createIInteractionOperand() {
+		IInteractionOperandImpl iInteractionOperand = new IInteractionOperandImpl();
+		return iInteractionOperand;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IInteractionOperator createIInteractionOperator() {
+		IInteractionOperatorImpl iInteractionOperator = new IInteractionOperatorImpl();
+		return iInteractionOperator;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IInterfaceItem createIInterfaceItem() {
+		IInterfaceItemImpl iInterfaceItem = new IInterfaceItemImpl();
+		return iInterfaceItem;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IInterfaceItemTrigger createIInterfaceItemTrigger() {
+		IInterfaceItemTriggerImpl iInterfaceItemTrigger = new IInterfaceItemTriggerImpl();
+		return iInterfaceItemTrigger;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IInternalHyperlink createIInternalHyperlink() {
+		IInternalHyperlinkImpl iInternalHyperlink = new IInternalHyperlinkImpl();
+		return iInternalHyperlink;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public ILabel createILabel() {
+		ILabelImpl iLabel = new ILabelImpl();
+		return iLabel;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public ILink createILink() {
+		ILinkImpl iLink = new ILinkImpl();
+		return iLink;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public ILinkInstance createILinkInstance() {
+		ILinkInstanceImpl iLinkInstance = new ILinkInstanceImpl();
+		return iLinkInstance;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public ILiteralSpecification createILiteralSpecification() {
+		ILiteralSpecificationImpl iLiteralSpecification = new ILiteralSpecificationImpl();
+		return iLiteralSpecification;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IMHyperLink createIMHyperLink() {
+		IMHyperLinkImpl imHyperLink = new IMHyperLinkImpl();
+		return imHyperLink;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IMSC createIMSC() {
+		IMSCImpl imsc = new IMSCImpl();
+		return imsc;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IMatrixInstance createIMatrixInstance() {
+		IMatrixInstanceImpl iMatrixInstance = new IMatrixInstanceImpl();
+		return iMatrixInstance;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IMatrixLayout createIMatrixLayout() {
+		IMatrixLayoutImpl iMatrixLayout = new IMatrixLayoutImpl();
+		return iMatrixLayout;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IMatrixView createIMatrixView() {
+		IMatrixViewImpl iMatrixView = new IMatrixViewImpl();
+		return iMatrixView;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IMessage createIMessage() {
+		IMessageImpl iMessage = new IMessageImpl();
+		return iMessage;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IMessagePoint createIMessagePoint() {
+		IMessagePointImpl iMessagePoint = new IMessagePointImpl();
+		return iMessagePoint;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IMetaLinkHandle createIMetaLinkHandle() {
+		IMetaLinkHandleImpl iMetaLinkHandle = new IMetaLinkHandleImpl();
+		return iMetaLinkHandle;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IModelElement createIModelElement() {
+		IModelElementImpl iModelElement = new IModelElementImpl();
+		return iModelElement;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IModule createIModule() {
+		IModuleImpl iModule = new IModuleImpl();
+		return iModule;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IMultiplicityItem createIMultiplicityItem() {
+		IMultiplicityItemImpl iMultiplicityItem = new IMultiplicityItemImpl();
+		return iMultiplicityItem;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public INode createINode() {
+		INodeImpl iNode = new INodeImpl();
+		return iNode;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IObjectLink createIObjectLink() {
+		IObjectLinkImpl iObjectLink = new IObjectLinkImpl();
+		return iObjectLink;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IObjectLinkHandle createIObjectLinkHandle() {
+		IObjectLinkHandleImpl iObjectLinkHandle = new IObjectLinkHandleImpl();
+		return iObjectLinkHandle;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IObjectModelDiagram createIObjectModelDiagram() {
+		IObjectModelDiagramImpl iObjectModelDiagram = new IObjectModelDiagramImpl();
+		return iObjectModelDiagram;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IObjectNode createIObjectNode() {
+		IObjectNodeImpl iObjectNode = new IObjectNodeImpl();
+		return iObjectNode;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IOperation createIOperation() {
+		IOperationImpl iOperation = new IOperationImpl();
+		return iOperation;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IPackage createIPackage() {
+		IPackageImpl iPackage = new IPackageImpl();
+		return iPackage;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IPanelDiagram createIPanelDiagram() {
+		IPanelDiagramImpl iPanelDiagram = new IPanelDiagramImpl();
+		return iPanelDiagram;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IPart createIPart() {
+		IPartImpl iPart = new IPartImpl();
+		return iPart;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IPin createIPin() {
+		IPinImpl iPin = new IPinImpl();
+		return iPin;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IPort createIPort() {
+		IPortImpl iPort = new IPortImpl();
+		return iPort;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IPrimitiveOperation createIPrimitiveOperation() {
+		IPrimitiveOperationImpl iPrimitiveOperation = new IPrimitiveOperationImpl();
+		return iPrimitiveOperation;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IProfile createIProfile() {
+		IProfileImpl iProfile = new IProfileImpl();
+		return iProfile;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IProject createIProject() {
+		IProjectImpl iProject = new IProjectImpl();
+		return iProject;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IProperty createIProperty() {
+		IPropertyImpl iProperty = new IPropertyImpl();
+		return iProperty;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IPropertyContainer createIPropertyContainer() {
+		IPropertyContainerImpl iPropertyContainer = new IPropertyContainerImpl();
+		return iPropertyContainer;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IPropertyMetaclass createIPropertyMetaclass() {
+		IPropertyMetaclassImpl iPropertyMetaclass = new IPropertyMetaclassImpl();
+		return iPropertyMetaclass;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IPropertySubject createIPropertySubject() {
+		IPropertySubjectImpl iPropertySubject = new IPropertySubjectImpl();
+		return iPropertySubject;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IReception createIReception() {
+		IReceptionImpl iReception = new IReceptionImpl();
+		return iReception;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IReferenceActivity createIReferenceActivity() {
+		IReferenceActivityImpl iReferenceActivity = new IReferenceActivityImpl();
+		return iReferenceActivity;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IRelation createIRelation() {
+		IRelationImpl iRelation = new IRelationImpl();
+		return iRelation;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IRequirement createIRequirement() {
+		IRequirementImpl iRequirement = new IRequirementImpl();
+		return iRequirement;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public ISendAction createISendAction() {
+		ISendActionImpl iSendAction = new ISendActionImpl();
+		return iSendAction;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public ISequenceDiagram createISequenceDiagram() {
+		ISequenceDiagramImpl iSequenceDiagram = new ISequenceDiagramImpl();
+		return iSequenceDiagram;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public ISlot createISlot() {
+		ISlotImpl iSlot = new ISlotImpl();
+		return iSlot;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IState createIState() {
+		IStateImpl iState = new IStateImpl();
+		return iState;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IStateChart createIStateChart() {
+		IStateChartImpl iStateChart = new IStateChartImpl();
+		return iStateChart;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IStateChartDiagram createIStateChartDiagram() {
+		IStateChartDiagramImpl iStateChartDiagram = new IStateChartDiagramImpl();
+		return iStateChartDiagram;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IStateVertex createIStateVertex() {
+		IStateVertexImpl iStateVertex = new IStateVertexImpl();
+		return iStateVertex;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IStereotype createIStereotype() {
+		IStereotypeImpl iStereotype = new IStereotypeImpl();
+		return iStereotype;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IStructureDiagram createIStructureDiagram() {
+		IStructureDiagramImpl iStructureDiagram = new IStructureDiagramImpl();
+		return iStructureDiagram;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public ISubsystem createISubsystem() {
+		ISubsystemImpl iSubsystem = new ISubsystemImpl();
+		return iSubsystem;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public ISwimlane createISwimlane() {
+		ISwimlaneImpl iSwimlane = new ISwimlaneImpl();
+		return iSwimlane;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public ISysMLPort createISysMLPort() {
+		ISysMLPortImpl iSysMLPort = new ISysMLPortImpl();
+		return iSysMLPort;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public ITableInstance createITableInstance() {
+		ITableInstanceImpl iTableInstance = new ITableInstanceImpl();
+		return iTableInstance;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public ITableLayout createITableLayout() {
+		ITableLayoutImpl iTableLayout = new ITableLayoutImpl();
+		return iTableLayout;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public ITableView createITableView() {
+		ITableViewImpl iTableView = new ITableViewImpl();
+		return iTableView;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public ITag createITag() {
+		ITagImpl iTag = new ITagImpl();
+		return iTag;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public ITemplateInst createITemplateInst() {
+		ITemplateInstImpl iTemplateInst = new ITemplateInstImpl();
+		return iTemplateInst;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public ITemplateInstParam createITemplateInstParam() {
+		ITemplateInstParamImpl iTemplateInstParam = new ITemplateInstParamImpl();
+		return iTemplateInstParam;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public ITemplateInstantiation createITemplateInstantiation() {
+		ITemplateInstantiationImpl iTemplateInstantiation = new ITemplateInstantiationImpl();
+		return iTemplateInstantiation;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public ITemplateInstantiationParameter createITemplateInstantiationParameter() {
+		ITemplateInstantiationParameterImpl iTemplateInstantiationParameter = new ITemplateInstantiationParameterImpl();
+		return iTemplateInstantiationParameter;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public ITemplateParameter createITemplateParameter() {
+		ITemplateParameterImpl iTemplateParameter = new ITemplateParameterImpl();
+		return iTemplateParameter;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public ITimeEvent createITimeEvent() {
+		ITimeEventImpl iTimeEvent = new ITimeEventImpl();
+		return iTimeEvent;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public ITimeout createITimeout() {
+		ITimeoutImpl iTimeout = new ITimeoutImpl();
+		return iTimeout;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public ITransition createITransition() {
+		ITransitionImpl iTransition = new ITransitionImpl();
+		return iTransition;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public ITrigger createITrigger() {
+		ITriggerImpl iTrigger = new ITriggerImpl();
+		return iTrigger;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public ITriggered createITriggered() {
+		ITriggeredImpl iTriggered = new ITriggeredImpl();
+		return iTriggered;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IType createIType() {
+		ITypeImpl iType = new ITypeImpl();
+		return iType;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IUCDiagram createIUCDiagram() {
+		IUCDiagramImpl iucDiagram = new IUCDiagramImpl();
+		return iucDiagram;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IUnit createIUnit() {
+		IUnitImpl iUnit = new IUnitImpl();
+		return iUnit;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IUseCase createIUseCase() {
+		IUseCaseImpl iUseCase = new IUseCaseImpl();
+		return iUseCase;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IUseCaseDiagram createIUseCaseDiagram() {
+		IUseCaseDiagramImpl iUseCaseDiagram = new IUseCaseDiagramImpl();
+		return iUseCaseDiagram;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IUseCaseStereoType createIUseCaseStereoType() {
+		IUseCaseStereoTypeImpl iUseCaseStereoType = new IUseCaseStereoTypeImpl();
+		return iUseCaseStereoType;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IValueSpecification createIValueSpecification() {
+		IValueSpecificationImpl iValueSpecification = new IValueSpecificationImpl();
+		return iValueSpecification;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IVariable createIVariable() {
+		IVariableImpl iVariable = new IVariableImpl();
+		return iVariable;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public TableDataDefinition createTableDataDefinition() {
+		TableDataDefinitionImpl tableDataDefinition = new TableDataDefinitionImpl();
+		return tableDataDefinition;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public UnknownType createUnknownType() {
+		UnknownTypeImpl unknownType = new UnknownTypeImpl();
+		return unknownType;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public UMLRpyPackage getUMLRpyPackage() {
+		return (UMLRpyPackage)getEPackage();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @deprecated
+	 * @generated
+	 */
+	@Deprecated
+	public static UMLRpyPackage getPackage() {
+		return UMLRpyPackage.eINSTANCE;
+	}
+
+} //UMLRpyFactoryImpl
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/UMLRpyPackageImpl.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/UMLRpyPackageImpl.java
new file mode 100755
index 0000000..c1d7b7b
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/UMLRpyPackageImpl.java
@@ -0,0 +1,20379 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl;
+
+import java.io.IOException;
+
+import java.net.URL;
+
+import org.eclipse.emf.common.util.URI;
+import org.eclipse.emf.common.util.WrappedException;
+
+import org.eclipse.emf.ecore.EAttribute;
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.EClassifier;
+import org.eclipse.emf.ecore.EPackage;
+import org.eclipse.emf.ecore.EReference;
+
+import org.eclipse.emf.ecore.EcorePackage;
+import org.eclipse.emf.ecore.impl.EPackageImpl;
+
+import org.eclipse.emf.ecore.resource.Resource;
+
+import org.eclipse.emf.ecore.xmi.impl.EcoreResourceFactoryImpl;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyFactory;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model <b>Package</b>.
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class UMLRpyPackageImpl extends EPackageImpl implements UMLRpyPackage {
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected String packageFilename = "rpymetamodel.ecore"; //$NON-NLS-1$
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	private EClass associationsTypeEClass = null;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	private EClass cCollaborationChartEClass = null;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	private EClass cgiActionStateEClass = null;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	private EClass cgiActiveXEClass = null;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	private EClass cgiAnchorEClass = null;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	private EClass cgiAnnotationEClass = null;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	private EClass cgiArrowEClass = null;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	private EClass cgiAssociationEndEClass = null;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	private EClass cgiAssociationRoleEClass = null;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	private EClass cgiBasicClassEClass = null;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	private EClass cgiBlockStateEClass = null;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	private EClass cgiBoxEClass = null;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	private EClass cgiButtonArrayEClass = null;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	private EClass cgiClassEClass = null;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	private EClass cgiClassChartEClass = null;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	private EClass cgiClassifierRoleEClass = null;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	private EClass cgiCompartmentEClass = null;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	private EClass cgiComponentEClass = null;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	private EClass cgiCompositeClassEClass = null;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	private EClass cgiConnectorEClass = null;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	private EClass cgiContainArrowEClass = null;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	private EClass cgiDiagramFrameEClass = null;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	private EClass cgiFreeShapeEClass = null;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	private EClass cgiFreeTextEClass = null;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	private EClass cgiGenericElementEClass = null;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	private EClass cgiImageEClass = null;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	private EClass cgiImageDataEClass = null;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	private EClass cgiInformationFlowEClass = null;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	private EClass cgiInheritanceEClass = null;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	private EClass cgimfcCtrlEClass = null;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	private EClass cgiMessageLabelEClass = null;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	private EClass cgiMscChartEClass = null;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	private EClass cgiMscColumnCREClass = null;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	private EClass cgiMscConditionMarkEClass = null;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	private EClass cgiMscExecutionOccurrenceEClass = null;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	private EClass cgiMscInteractionOccurrenceEClass = null;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	private EClass cgiMscInteractionOperandEClass = null;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	private EClass cgiMscInteractionOperatorEClass = null;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	private EClass cgiMscMessageEClass = null;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	private EClass cgiObjectInstanceEClass = null;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	private EClass cgiObjectLinkEClass = null;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	private EClass cgiPackageEClass = null;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	private EClass cgiPartitionEClass = null;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	private EClass cgiPortConnectorEClass = null;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	private EClass cgiStateEClass = null;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	private EClass cgiStateChartEClass = null;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	private EClass cgiSwimlaneFrameEClass = null;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	private EClass cgiTextEClass = null;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	private EClass cgiTextBoxEClass = null;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	private EClass cgiTransEClass = null;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	private EClass collEventEClass = null;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	private EClass compartmentsTypeEClass = null;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	private EClass componentsTypeEClass = null;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	private EClass conveyedTypeEClass = null;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	private EClass declarativesTypeEClass = null;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	private EClass defaultSubsystemTypeEClass = null;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	private EClass defaultTransTypeEClass = null;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	private EClass dependsOnTypeEClass = null;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	private EClass descriptionTypeEClass = null;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	private EClass elementsTypeEClass = null;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	private EClass embededFilesTypeEClass = null;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	private EClass end1_TypeEClass = null;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	private EClass end2_TypeEClass = null;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	private EClass filesTypeEClass = null;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	private EClass fromLinkTypeEClass = null;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	private EClass graphElementsTypeEClass = null;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	private EClass graphicChartTypeEClass = null;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	private EClass hyperLinksTypeEClass = null;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	private EClass iAcceptEventActionEClass = null;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	private EClass iAcceptTimeEventEClass = null;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	private EClass iActionEClass = null;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	private EClass iActivityDiagramEClass = null;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	private EClass iActivityGraphEClass = null;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	private EClass iActorEClass = null;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	private EClass iAnchorEClass = null;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	private EClass iAnnotationEClass = null;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	private EClass iArgumentEClass = null;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	private EClass iAssociationClassEClass = null;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	private EClass iAssociationEndEClass = null;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	private EClass iAssociationEndHandleEClass = null;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	private EClass iAssociationRoleEClass = null;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	private EClass iAttributeEClass = null;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	private EClass iBlockEClass = null;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	private EClass iBodyEClass = null;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	private EClass iBranchEClass = null;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	private EClass iCallActionEClass = null;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	private EClass iCallOperationEClass = null;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	private EClass iClassEClass = null;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	private EClass iClassHandleEClass = null;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	private EClass iClassInstanceEClass = null;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	private EClass iClassifierEClass = null;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	private EClass iClassifierRoleEClass = null;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	private EClass iCodeGenConfigInfoEClass = null;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	private EClass iCodeGenConfigInfoHandleEClass = null;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	private EClass iCollaborationEClass = null;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	private EClass iCollaborationDiagramEClass = null;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	private EClass iColorEClass = null;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	private EClass iCombinedFragmentEClass = null;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	private EClass iCommentEClass = null;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	private EClass iComponentEClass = null;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	private EClass iComponentDiagramEClass = null;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	private EClass iComponentInstanceEClass = null;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	private EClass iConfigurationEClass = null;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	private EClass iConnectorEClass = null;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	private EClass iConstraintEClass = null;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	private EClass iConstructorEClass = null;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	private EClass iContextSpecificationEClass = null;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	private EClass iControlledFileEClass = null;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	private EClass iDefaultDrvdTransEClass = null;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	private EClass iDependencyEClass = null;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	private EClass iDeploymentDiagramEClass = null;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	private EClass iDescriptionEClass = null;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	private EClass iDestructorEClass = null;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	private EClass iDiagramEClass = null;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	private EClass iEmbededFileEClass = null;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	private EClass iEnumerationLiteralEClass = null;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	private EClass iEventEClass = null;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	private EClass iEventHandleEClass = null;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	private EClass iEventReceptionEClass = null;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	private EClass iExecutionOccurrenceEClass = null;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	private EClass iExternalHyperlinkEClass = null;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	private EClass iFileEClass = null;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	private EClass iFileFragmentEClass = null;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	private EClass iFlowEClass = null;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	private EClass iFlowItemEClass = null;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	private EClass iFlowchartEClass = null;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	private EClass iFolderEClass = null;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	private EClass iForkEClass = null;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	private EClass iGeneralizationEClass = null;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	private EClass iGuardEClass = null;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	private EClass iHandleWithDataEClass = null;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	private EClass iHistoryConnectorEClass = null;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	private EClass iHyperLinkEClass = null;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	private EClass iInformationFlowEClass = null;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	private EClass iInformationItemEClass = null;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	private EClass iInstanceEClass = null;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	private EClass iInstanceSlotEClass = null;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	private EClass iInstanceSpecificationEClass = null;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	private EClass iInstanceValueEClass = null;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	private EClass iInteractionOccurrenceEClass = null;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	private EClass iInteractionOperandEClass = null;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	private EClass iInteractionOperatorEClass = null;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	private EClass iInterfaceItemEClass = null;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	private EClass iInterfaceItemTriggerEClass = null;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	private EClass iInternalHyperlinkEClass = null;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	private EClass iLabelEClass = null;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	private EClass iLinkEClass = null;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	private EClass iLinkInstanceEClass = null;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	private EClass iLiteralSpecificationEClass = null;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	private EClass imHyperLinkEClass = null;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	private EClass imscEClass = null;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	private EClass iMatrixInstanceEClass = null;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	private EClass iMatrixLayoutEClass = null;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	private EClass iMatrixViewEClass = null;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	private EClass iMessageEClass = null;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	private EClass iMessagePointEClass = null;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	private EClass iMetaLinkHandleEClass = null;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	private EClass iModelElementEClass = null;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	private EClass iModuleEClass = null;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	private EClass iMultiplicityItemEClass = null;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	private EClass iNodeEClass = null;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	private EClass iObjectLinkEClass = null;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	private EClass iObjectLinkHandleEClass = null;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	private EClass iObjectModelDiagramEClass = null;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	private EClass iObjectNodeEClass = null;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	private EClass iOperationEClass = null;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	private EClass iPackageEClass = null;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	private EClass iPanelDiagramEClass = null;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	private EClass iPartEClass = null;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	private EClass iPinEClass = null;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	private EClass iPortEClass = null;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	private EClass iPrimitiveOperationEClass = null;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	private EClass iProfileEClass = null;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	private EClass iProjectEClass = null;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	private EClass iPropertyEClass = null;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	private EClass iPropertyContainerEClass = null;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	private EClass iPropertyMetaclassEClass = null;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	private EClass iPropertySubjectEClass = null;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	private EClass iReceptionEClass = null;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	private EClass iReferenceActivityEClass = null;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	private EClass iRelationEClass = null;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	private EClass iRequirementEClass = null;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	private EClass iSendActionEClass = null;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	private EClass iSequenceDiagramEClass = null;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	private EClass iSlotEClass = null;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	private EClass iStateEClass = null;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	private EClass iStateChartEClass = null;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	private EClass iStateChartDiagramEClass = null;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	private EClass iStateVertexEClass = null;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	private EClass iStereotypeEClass = null;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	private EClass iStructureDiagramEClass = null;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	private EClass iSubsystemEClass = null;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	private EClass iSwimlaneEClass = null;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	private EClass iSysMLPortEClass = null;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	private EClass iTableInstanceEClass = null;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	private EClass iTableLayoutEClass = null;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	private EClass iTableViewEClass = null;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	private EClass iTagEClass = null;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	private EClass iTemplateInstEClass = null;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	private EClass iTemplateInstParamEClass = null;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	private EClass iTemplateInstantiationEClass = null;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	private EClass iTemplateInstantiationParameterEClass = null;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	private EClass iTemplateParameterEClass = null;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	private EClass iTimeEventEClass = null;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	private EClass iTimeoutEClass = null;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	private EClass iTransitionEClass = null;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	private EClass iTriggerEClass = null;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	private EClass iTriggeredEClass = null;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	private EClass iTypeEClass = null;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	private EClass iucDiagramEClass = null;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	private EClass iUnitEClass = null;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	private EClass iUseCaseEClass = null;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	private EClass iUseCaseDiagramEClass = null;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	private EClass iUseCaseStereoTypeEClass = null;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	private EClass iValueSpecificationEClass = null;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	private EClass iVariableEClass = null;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	private EClass inverseTypeEClass = null;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	private EClass itemsTypeEClass = null;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	private EClass itsLabelTypeEClass = null;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	private EClass itsStateChartTypeEClass = null;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	private EClass itsTargetTypeEClass = null;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	private EClass itsTriggerTypeEClass = null;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	private EClass linksTypeEClass = null;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	private EClass m_hTargetTypeEClass = null;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	private EClass m_pBaseTypeEClass = null;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	private EClass m_pFormalMessageTypeEClass = null;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	private EClass m_pModelObjectTypeEClass = null;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	private EClass m_pRootTypeEClass = null;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	private EClass m_subjectTypeEClass = null;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	private EClass matrixInstancesTypeEClass = null;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	private EClass nestedStateChartTypeEClass = null;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	private EClass objectLinksTypeEClass = null;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	private EClass operationsTypeEClass = null;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	private EClass ownerHandleTypeEClass = null;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	private EClass p_MessageHandlerTypeEClass = null;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	private EClass parentTypeEClass = null;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	private EClass propertiesTypeEClass = null;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	private EClass tableDataDefinitionEClass = null;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	private EClass tableInstancesTypeEClass = null;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	private EClass targetTypeEClass = null;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	private EClass theMainDiagramTypeEClass = null;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	private EClass toLinkTypeEClass = null;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	private EClass transitionsTypeEClass = null;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	private EClass unknownTypeEClass = null;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	private EClass valueTypeEClass = null;
+
+	/**
+	 * Creates an instance of the model <b>Package</b>, registered with
+	 * {@link org.eclipse.emf.ecore.EPackage.Registry EPackage.Registry} by the package
+	 * package URI value.
+	 * <p>Note: the correct way to create the package is via the static
+	 * factory method {@link #init init()}, which also performs
+	 * initialization of the package, or returns the registered package,
+	 * if one already exists.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see org.eclipse.emf.ecore.EPackage.Registry
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage#eNS_URI
+	 * @see #init()
+	 * @generated
+	 */
+	private UMLRpyPackageImpl() {
+		super(eNS_URI, UMLRpyFactory.eINSTANCE);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	private static boolean isInited = false;
+
+	/**
+	 * Creates, registers, and initializes the <b>Package</b> for this model, and for any others upon which it depends.
+	 * 
+	 * <p>This method is used to initialize {@link UMLRpyPackage#eINSTANCE} when that field is accessed.
+	 * Clients should not invoke it directly. Instead, they should simply access that field to obtain the package.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #eNS_URI
+	 * @generated
+	 */
+	public static UMLRpyPackage init() {
+		if (isInited) return (UMLRpyPackage)EPackage.Registry.INSTANCE.getEPackage(UMLRpyPackage.eNS_URI);
+
+		// Obtain or create and register package
+		UMLRpyPackageImpl theUMLRpyPackage = (UMLRpyPackageImpl)(EPackage.Registry.INSTANCE.get(eNS_URI) instanceof UMLRpyPackageImpl ? EPackage.Registry.INSTANCE.get(eNS_URI) : new UMLRpyPackageImpl());
+
+		isInited = true;
+
+		// Initialize simple dependencies
+		EcorePackage.eINSTANCE.eClass();
+
+		// Load packages
+		theUMLRpyPackage.loadPackage();
+
+		// Fix loaded packages
+		theUMLRpyPackage.fixPackageContents();
+
+		// Mark meta-data to indicate it can't be changed
+		theUMLRpyPackage.freeze();
+
+  
+		// Update the registry and return the package
+		EPackage.Registry.INSTANCE.put(UMLRpyPackage.eNS_URI, theUMLRpyPackage);
+		return theUMLRpyPackage;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EClass getAssociationsType() {
+		if (associationsTypeEClass == null) {
+			associationsTypeEClass = (EClass)EPackage.Registry.INSTANCE.getEPackage(UMLRpyPackage.eNS_URI).getEClassifiers().get(0);
+		}
+		return associationsTypeEClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EClass getCCollaborationChart() {
+		if (cCollaborationChartEClass == null) {
+			cCollaborationChartEClass = (EClass)EPackage.Registry.INSTANCE.getEPackage(UMLRpyPackage.eNS_URI).getEClassifiers().get(1);
+		}
+		return cCollaborationChartEClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getCCollaborationChart_M_pModelObject() {
+        return (EReference)getCCollaborationChart().getEStructuralFeatures().get(0);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getCCollaborationChart_M_pRoot() {
+        return (EReference)getCCollaborationChart().getEStructuralFeatures().get(1);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EClass getCGIActionState() {
+		if (cgiActionStateEClass == null) {
+			cgiActionStateEClass = (EClass)EPackage.Registry.INSTANCE.getEPackage(UMLRpyPackage.eNS_URI).getEClassifiers().get(2);
+		}
+		return cgiActionStateEClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getCGIActionState_Properties() {
+        return (EReference)getCGIActionState().getEStructuralFeatures().get(0);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getCGIActionState_M_pModelObject() {
+        return (EReference)getCGIActionState().getEStructuralFeatures().get(1);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getCGIActionState_M_pParent() {
+        return (EReference)getCGIActionState().getEStructuralFeatures().get(2);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getCGIActionState_M_transform() {
+        return (EAttribute)getCGIActionState().getEStructuralFeatures().get(3);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getCGIActionState_M_AdditionalLabel() {
+        return (EReference)getCGIActionState().getEStructuralFeatures().get(4);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getCGIActionState_M_polygon() {
+        return (EAttribute)getCGIActionState().getEStructuralFeatures().get(5);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getCGIActionState_M_nNameFormat() {
+        return (EAttribute)getCGIActionState().getEStructuralFeatures().get(6);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getCGIActionState_M_nIsNameFormat() {
+        return (EAttribute)getCGIActionState().getEStructuralFeatures().get(7);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getCGIActionState_Compartments() {
+        return (EReference)getCGIActionState().getEStructuralFeatures().get(8);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getCGIActionState_NAndLineCount() {
+        return (EAttribute)getCGIActionState().getEStructuralFeatures().get(9);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getCGIActionState_M_pInheritsFrom() {
+        return (EReference)getCGIActionState().getEStructuralFeatures().get(10);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getCGIActionState_M_nInheritanceMask() {
+        return (EAttribute)getCGIActionState().getEStructuralFeatures().get(11);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getCGIActionState_M_pDefaultComponentRelation() {
+        return (EAttribute)getCGIActionState().getEStructuralFeatures().get(12);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getCGIActionState_M_NameDisplayMode() {
+        return (EAttribute)getCGIActionState().getEStructuralFeatures().get(13);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getCGIActionState_M_ActDescLablDiaplayMode() {
+        return (EAttribute)getCGIActionState().getEStructuralFeatures().get(14);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getCGIActionState_M_moveAndLineTimeStamp() {
+        return (EAttribute)getCGIActionState().getEStructuralFeatures().get(15);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EClass getCGIActiveX() {
+		if (cgiActiveXEClass == null) {
+			cgiActiveXEClass = (EClass)EPackage.Registry.INSTANCE.getEPackage(UMLRpyPackage.eNS_URI).getEClassifiers().get(3);
+		}
+		return cgiActiveXEClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getCGIActiveX_Properties() {
+        return (EReference)getCGIActiveX().getEStructuralFeatures().get(0);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getCGIActiveX_M_pModelObject() {
+        return (EReference)getCGIActiveX().getEStructuralFeatures().get(1);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getCGIActiveX_M_pParent() {
+        return (EReference)getCGIActiveX().getEStructuralFeatures().get(2);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getCGIActiveX_M_transform() {
+        return (EAttribute)getCGIActiveX().getEStructuralFeatures().get(3);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getCGIActiveX_M_polygon() {
+        return (EAttribute)getCGIActiveX().getEStructuralFeatures().get(4);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getCGIActiveX_M_nNameFormat() {
+        return (EAttribute)getCGIActiveX().getEStructuralFeatures().get(5);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getCGIActiveX_M_nIsNameFormat() {
+        return (EAttribute)getCGIActiveX().getEStructuralFeatures().get(6);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getCGIActiveX_Compartments() {
+        return (EReference)getCGIActiveX().getEStructuralFeatures().get(7);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getCGIActiveX_M_csModelObjPath() {
+        return (EAttribute)getCGIActiveX().getEStructuralFeatures().get(8);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getCGIActiveX_M_csName() {
+        return (EAttribute)getCGIActiveX().getEStructuralFeatures().get(9);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getCGIActiveX_M_PartsArray() {
+        return (EReference)getCGIActiveX().getEStructuralFeatures().get(10);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EClass getCGIAnchor() {
+		if (cgiAnchorEClass == null) {
+			cgiAnchorEClass = (EClass)EPackage.Registry.INSTANCE.getEPackage(UMLRpyPackage.eNS_URI).getEClassifiers().get(4);
+		}
+		return cgiAnchorEClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getCGIAnchor_M_pModelObject() {
+        return (EReference)getCGIAnchor().getEStructuralFeatures().get(0);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getCGIAnchor_M_pParent() {
+        return (EAttribute)getCGIAnchor().getEStructuralFeatures().get(1);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getCGIAnchor_M_pSource() {
+        return (EReference)getCGIAnchor().getEStructuralFeatures().get(2);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getCGIAnchor_M_sourceType() {
+        return (EAttribute)getCGIAnchor().getEStructuralFeatures().get(3);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getCGIAnchor_M_pTarget() {
+        return (EReference)getCGIAnchor().getEStructuralFeatures().get(4);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getCGIAnchor_M_targetType() {
+        return (EAttribute)getCGIAnchor().getEStructuralFeatures().get(5);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getCGIAnchor_M_direction() {
+        return (EAttribute)getCGIAnchor().getEStructuralFeatures().get(6);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getCGIAnchor_M_rpn() {
+        return (EReference)getCGIAnchor().getEStructuralFeatures().get(7);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getCGIAnchor_M_anglePoint1() {
+        return (EAttribute)getCGIAnchor().getEStructuralFeatures().get(8);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getCGIAnchor_M_anglePoint2() {
+        return (EAttribute)getCGIAnchor().getEStructuralFeatures().get(9);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getCGIAnchor_M_line_style() {
+        return (EAttribute)getCGIAnchor().getEStructuralFeatures().get(10);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getCGIAnchor_M_SourcePort() {
+        return (EAttribute)getCGIAnchor().getEStructuralFeatures().get(11);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getCGIAnchor_M_TargetPort() {
+        return (EAttribute)getCGIAnchor().getEStructuralFeatures().get(12);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getCGIAnchor_Properties() {
+        return (EReference)getCGIAnchor().getEStructuralFeatures().get(13);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getCGIAnchor_M_color() {
+        return (EReference)getCGIAnchor().getEStructuralFeatures().get(14);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getCGIAnchor_M_lineWidth() {
+        return (EAttribute)getCGIAnchor().getEStructuralFeatures().get(15);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getCGIAnchor_M_arrow() {
+        return (EAttribute)getCGIAnchor().getEStructuralFeatures().get(16);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EClass getCGIAnnotation() {
+		if (cgiAnnotationEClass == null) {
+			cgiAnnotationEClass = (EClass)EPackage.Registry.INSTANCE.getEPackage(UMLRpyPackage.eNS_URI).getEClassifiers().get(5);
+		}
+		return cgiAnnotationEClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getCGIAnnotation_Properties() {
+        return (EReference)getCGIAnnotation().getEStructuralFeatures().get(0);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getCGIAnnotation_M_pParent() {
+        return (EReference)getCGIAnnotation().getEStructuralFeatures().get(1);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getCGIAnnotation_M_transform() {
+        return (EAttribute)getCGIAnnotation().getEStructuralFeatures().get(2);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getCGIAnnotation_M_AdditionalLabel() {
+        return (EReference)getCGIAnnotation().getEStructuralFeatures().get(3);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getCGIAnnotation_M_polygon() {
+        return (EAttribute)getCGIAnnotation().getEStructuralFeatures().get(4);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getCGIAnnotation_M_nNameFormat() {
+        return (EAttribute)getCGIAnnotation().getEStructuralFeatures().get(5);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getCGIAnnotation_M_nIsNameFormat() {
+        return (EAttribute)getCGIAnnotation().getEStructuralFeatures().get(6);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getCGIAnnotation_ITempdisplayTextFlag() {
+        return (EAttribute)getCGIAnnotation().getEStructuralFeatures().get(7);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getCGIAnnotation_M_bIsBoxStyle() {
+        return (EAttribute)getCGIAnnotation().getEStructuralFeatures().get(8);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getCGIAnnotation_M_pModelObject() {
+        return (EReference)getCGIAnnotation().getEStructuralFeatures().get(9);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getCGIAnnotation_M_color() {
+        return (EReference)getCGIAnnotation().getEStructuralFeatures().get(10);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getCGIAnnotation_M_lineWidth() {
+        return (EAttribute)getCGIAnnotation().getEStructuralFeatures().get(11);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getCGIAnnotation_Frameset() {
+        return (EAttribute)getCGIAnnotation().getEStructuralFeatures().get(12);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getCGIAnnotation_Compartments() {
+        return (EReference)getCGIAnnotation().getEStructuralFeatures().get(13);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getCGIAnnotation_M_bIsStructured() {
+        return (EAttribute)getCGIAnnotation().getEStructuralFeatures().get(14);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getCGIAnnotation_M_bFramesetModified() {
+        return (EAttribute)getCGIAnnotation().getEStructuralFeatures().get(15);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EClass getCGIArrow() {
+		if (cgiArrowEClass == null) {
+			cgiArrowEClass = (EClass)EPackage.Registry.INSTANCE.getEPackage(UMLRpyPackage.eNS_URI).getEClassifiers().get(6);
+		}
+		return cgiArrowEClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getCGIArrow_M_pModelObject() {
+        return (EReference)getCGIArrow().getEStructuralFeatures().get(0);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getCGIArrow_M_pParent() {
+        return (EAttribute)getCGIArrow().getEStructuralFeatures().get(1);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getCGIArrow_M_pSource() {
+        return (EReference)getCGIArrow().getEStructuralFeatures().get(2);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getCGIArrow_M_sourceType() {
+        return (EAttribute)getCGIArrow().getEStructuralFeatures().get(3);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getCGIArrow_M_pTarget() {
+        return (EReference)getCGIArrow().getEStructuralFeatures().get(4);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getCGIArrow_M_targetType() {
+        return (EAttribute)getCGIArrow().getEStructuralFeatures().get(5);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getCGIArrow_M_direction() {
+        return (EAttribute)getCGIArrow().getEStructuralFeatures().get(6);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getCGIArrow_M_rpn() {
+        return (EReference)getCGIArrow().getEStructuralFeatures().get(7);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getCGIArrow_M_anglePoint1() {
+        return (EAttribute)getCGIArrow().getEStructuralFeatures().get(8);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getCGIArrow_M_anglePoint2() {
+        return (EAttribute)getCGIArrow().getEStructuralFeatures().get(9);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getCGIArrow_M_line_style() {
+        return (EAttribute)getCGIArrow().getEStructuralFeatures().get(10);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getCGIArrow_M_SourcePort() {
+        return (EAttribute)getCGIArrow().getEStructuralFeatures().get(11);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getCGIArrow_M_TargetPort() {
+        return (EAttribute)getCGIArrow().getEStructuralFeatures().get(12);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EClass getCGIAssociationEnd() {
+		if (cgiAssociationEndEClass == null) {
+			cgiAssociationEndEClass = (EClass)EPackage.Registry.INSTANCE.getEPackage(UMLRpyPackage.eNS_URI).getEClassifiers().get(7);
+		}
+		return cgiAssociationEndEClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getCGIAssociationEnd_Properties() {
+        return (EReference)getCGIAssociationEnd().getEStructuralFeatures().get(0);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getCGIAssociationEnd_M_pModelObject() {
+        return (EReference)getCGIAssociationEnd().getEStructuralFeatures().get(1);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getCGIAssociationEnd_M_pParent() {
+        return (EAttribute)getCGIAssociationEnd().getEStructuralFeatures().get(2);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getCGIAssociationEnd_M_pSource() {
+        return (EReference)getCGIAssociationEnd().getEStructuralFeatures().get(3);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getCGIAssociationEnd_M_sourceType() {
+        return (EAttribute)getCGIAssociationEnd().getEStructuralFeatures().get(4);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getCGIAssociationEnd_M_pTarget() {
+        return (EReference)getCGIAssociationEnd().getEStructuralFeatures().get(5);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getCGIAssociationEnd_M_targetType() {
+        return (EAttribute)getCGIAssociationEnd().getEStructuralFeatures().get(6);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getCGIAssociationEnd_M_direction() {
+        return (EAttribute)getCGIAssociationEnd().getEStructuralFeatures().get(7);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getCGIAssociationEnd_M_rpn() {
+        return (EReference)getCGIAssociationEnd().getEStructuralFeatures().get(8);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getCGIAssociationEnd_M_anglePoint1() {
+        return (EAttribute)getCGIAssociationEnd().getEStructuralFeatures().get(9);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getCGIAssociationEnd_M_anglePoint2() {
+        return (EAttribute)getCGIAssociationEnd().getEStructuralFeatures().get(10);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getCGIAssociationEnd_M_line_style() {
+        return (EAttribute)getCGIAssociationEnd().getEStructuralFeatures().get(11);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getCGIAssociationEnd_M_SourcePort() {
+        return (EAttribute)getCGIAssociationEnd().getEStructuralFeatures().get(12);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getCGIAssociationEnd_M_TargetPort() {
+        return (EAttribute)getCGIAssociationEnd().getEStructuralFeatures().get(13);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getCGIAssociationEnd_M_pInverseModelObject() {
+        return (EReference)getCGIAssociationEnd().getEStructuralFeatures().get(14);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getCGIAssociationEnd_M_pInstance() {
+        return (EReference)getCGIAssociationEnd().getEStructuralFeatures().get(15);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getCGIAssociationEnd_M_pInverseInstance() {
+        return (EReference)getCGIAssociationEnd().getEStructuralFeatures().get(16);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getCGIAssociationEnd_M_bShowSourceMultiplicity() {
+        return (EAttribute)getCGIAssociationEnd().getEStructuralFeatures().get(17);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getCGIAssociationEnd_M_bShowSourceRole() {
+        return (EAttribute)getCGIAssociationEnd().getEStructuralFeatures().get(18);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getCGIAssociationEnd_M_bShowTargetMultiplicity() {
+        return (EAttribute)getCGIAssociationEnd().getEStructuralFeatures().get(19);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getCGIAssociationEnd_M_bShowTargetRole() {
+        return (EAttribute)getCGIAssociationEnd().getEStructuralFeatures().get(20);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getCGIAssociationEnd_M_bShowLinkName() {
+        return (EAttribute)getCGIAssociationEnd().getEStructuralFeatures().get(21);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getCGIAssociationEnd_M_bShowSpecificType() {
+        return (EAttribute)getCGIAssociationEnd().getEStructuralFeatures().get(22);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getCGIAssociationEnd_M_bInstance() {
+        return (EAttribute)getCGIAssociationEnd().getEStructuralFeatures().get(23);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getCGIAssociationEnd_M_bShowQualifier1() {
+        return (EAttribute)getCGIAssociationEnd().getEStructuralFeatures().get(24);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getCGIAssociationEnd_M_bShowQualifier2() {
+        return (EAttribute)getCGIAssociationEnd().getEStructuralFeatures().get(25);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getCGIAssociationEnd_M_sourceRole() {
+        return (EReference)getCGIAssociationEnd().getEStructuralFeatures().get(26);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getCGIAssociationEnd_M_targetRole() {
+        return (EReference)getCGIAssociationEnd().getEStructuralFeatures().get(27);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getCGIAssociationEnd_M_sourceMultiplicity() {
+        return (EReference)getCGIAssociationEnd().getEStructuralFeatures().get(28);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getCGIAssociationEnd_M_targetMultiplicity() {
+        return (EReference)getCGIAssociationEnd().getEStructuralFeatures().get(29);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getCGIAssociationEnd_M_sourceQualifier() {
+        return (EReference)getCGIAssociationEnd().getEStructuralFeatures().get(30);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getCGIAssociationEnd_M_targetQualifier() {
+        return (EReference)getCGIAssociationEnd().getEStructuralFeatures().get(31);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getCGIAssociationEnd_M_specificType() {
+        return (EAttribute)getCGIAssociationEnd().getEStructuralFeatures().get(32);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getCGIAssociationEnd_M_arrow() {
+        return (EAttribute)getCGIAssociationEnd().getEStructuralFeatures().get(33);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EClass getCGIAssociationRole() {
+		if (cgiAssociationRoleEClass == null) {
+			cgiAssociationRoleEClass = (EClass)EPackage.Registry.INSTANCE.getEPackage(UMLRpyPackage.eNS_URI).getEClassifiers().get(8);
+		}
+		return cgiAssociationRoleEClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getCGIAssociationRole_M_pModelObject() {
+        return (EReference)getCGIAssociationRole().getEStructuralFeatures().get(0);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getCGIAssociationRole_M_pParent() {
+        return (EAttribute)getCGIAssociationRole().getEStructuralFeatures().get(1);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getCGIAssociationRole_M_pSource() {
+        return (EReference)getCGIAssociationRole().getEStructuralFeatures().get(2);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getCGIAssociationRole_M_sourceType() {
+        return (EAttribute)getCGIAssociationRole().getEStructuralFeatures().get(3);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getCGIAssociationRole_M_pTarget() {
+        return (EReference)getCGIAssociationRole().getEStructuralFeatures().get(4);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getCGIAssociationRole_M_targetType() {
+        return (EAttribute)getCGIAssociationRole().getEStructuralFeatures().get(5);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getCGIAssociationRole_M_direction() {
+        return (EAttribute)getCGIAssociationRole().getEStructuralFeatures().get(6);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getCGIAssociationRole_M_rpn() {
+        return (EReference)getCGIAssociationRole().getEStructuralFeatures().get(7);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getCGIAssociationRole_M_anglePoint1() {
+        return (EAttribute)getCGIAssociationRole().getEStructuralFeatures().get(8);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getCGIAssociationRole_M_anglePoint2() {
+        return (EAttribute)getCGIAssociationRole().getEStructuralFeatures().get(9);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getCGIAssociationRole_M_line_style() {
+        return (EAttribute)getCGIAssociationRole().getEStructuralFeatures().get(10);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getCGIAssociationRole_M_SourcePort() {
+        return (EAttribute)getCGIAssociationRole().getEStructuralFeatures().get(11);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getCGIAssociationRole_M_TargetPort() {
+        return (EAttribute)getCGIAssociationRole().getEStructuralFeatures().get(12);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getCGIAssociationRole_M_arrow() {
+        return (EAttribute)getCGIAssociationRole().getEStructuralFeatures().get(13);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getCGIAssociationRole_Properties() {
+        return (EReference)getCGIAssociationRole().getEStructuralFeatures().get(14);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EClass getCGIBasicClass() {
+		if (cgiBasicClassEClass == null) {
+			cgiBasicClassEClass = (EClass)EPackage.Registry.INSTANCE.getEPackage(UMLRpyPackage.eNS_URI).getEClassifiers().get(9);
+		}
+		return cgiBasicClassEClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getCGIBasicClass_M_pModelObject() {
+        return (EReference)getCGIBasicClass().getEStructuralFeatures().get(0);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getCGIBasicClass_M_pParent() {
+        return (EReference)getCGIBasicClass().getEStructuralFeatures().get(1);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getCGIBasicClass_M_transform() {
+        return (EAttribute)getCGIBasicClass().getEStructuralFeatures().get(2);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getCGIBasicClass_M_AdditionalLabel() {
+        return (EReference)getCGIBasicClass().getEStructuralFeatures().get(3);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getCGIBasicClass_M_polygon() {
+        return (EAttribute)getCGIBasicClass().getEStructuralFeatures().get(4);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getCGIBasicClass_M_nNameFormat() {
+        return (EAttribute)getCGIBasicClass().getEStructuralFeatures().get(5);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getCGIBasicClass_M_nIsNameFormat() {
+        return (EAttribute)getCGIBasicClass().getEStructuralFeatures().get(6);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getCGIBasicClass_Compartments() {
+        return (EReference)getCGIBasicClass().getEStructuralFeatures().get(7);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getCGIBasicClass_Properties() {
+        return (EReference)getCGIBasicClass().getEStructuralFeatures().get(8);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getCGIBasicClass_M_pImageViewData() {
+        return (EReference)getCGIBasicClass().getEStructuralFeatures().get(9);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EClass getCGIBlockState() {
+		if (cgiBlockStateEClass == null) {
+			cgiBlockStateEClass = (EClass)EPackage.Registry.INSTANCE.getEPackage(UMLRpyPackage.eNS_URI).getEClassifiers().get(10);
+		}
+		return cgiBlockStateEClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getCGIBlockState_M_pModelObject() {
+        return (EReference)getCGIBlockState().getEStructuralFeatures().get(0);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getCGIBlockState_M_pParent() {
+        return (EReference)getCGIBlockState().getEStructuralFeatures().get(1);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getCGIBlockState_M_transform() {
+        return (EAttribute)getCGIBlockState().getEStructuralFeatures().get(2);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getCGIBlockState_M_polygon() {
+        return (EAttribute)getCGIBlockState().getEStructuralFeatures().get(3);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getCGIBlockState_M_nNameFormat() {
+        return (EAttribute)getCGIBlockState().getEStructuralFeatures().get(4);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getCGIBlockState_M_nIsNameFormat() {
+        return (EAttribute)getCGIBlockState().getEStructuralFeatures().get(5);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getCGIBlockState_NAndLineCount() {
+        return (EAttribute)getCGIBlockState().getEStructuralFeatures().get(6);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getCGIBlockState_M_pInheritsFrom() {
+        return (EReference)getCGIBlockState().getEStructuralFeatures().get(7);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getCGIBlockState_M_nInheritanceMask() {
+        return (EAttribute)getCGIBlockState().getEStructuralFeatures().get(8);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getCGIBlockState_M_pDefaultComponentRelation() {
+        return (EAttribute)getCGIBlockState().getEStructuralFeatures().get(9);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getCGIBlockState_M_NameDisplayMode() {
+        return (EAttribute)getCGIBlockState().getEStructuralFeatures().get(10);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getCGIBlockState_M_ActDescLablDiaplayMode() {
+        return (EAttribute)getCGIBlockState().getEStructuralFeatures().get(11);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getCGIBlockState_Properties() {
+        return (EReference)getCGIBlockState().getEStructuralFeatures().get(12);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getCGIBlockState_M_AdditionalLabel() {
+        return (EReference)getCGIBlockState().getEStructuralFeatures().get(13);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getCGIBlockState_M_moveAndLineTimeStamp() {
+        return (EAttribute)getCGIBlockState().getEStructuralFeatures().get(14);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getCGIBlockState_Compartments() {
+        return (EReference)getCGIBlockState().getEStructuralFeatures().get(15);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getCGIBlockState_Frameset() {
+        return (EAttribute)getCGIBlockState().getEStructuralFeatures().get(16);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EClass getCGIBox() {
+		if (cgiBoxEClass == null) {
+			cgiBoxEClass = (EClass)EPackage.Registry.INSTANCE.getEPackage(UMLRpyPackage.eNS_URI).getEClassifiers().get(11);
+		}
+		return cgiBoxEClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getCGIBox_M_pModelObject() {
+        return (EReference)getCGIBox().getEStructuralFeatures().get(0);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getCGIBox_M_polygon() {
+        return (EAttribute)getCGIBox().getEStructuralFeatures().get(1);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getCGIBox_M_nNameFormat() {
+        return (EAttribute)getCGIBox().getEStructuralFeatures().get(2);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getCGIBox_M_nIsNameFormat() {
+        return (EAttribute)getCGIBox().getEStructuralFeatures().get(3);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getCGIBox_Compartments() {
+        return (EReference)getCGIBox().getEStructuralFeatures().get(4);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getCGIBox_M_pParent() {
+        return (EReference)getCGIBox().getEStructuralFeatures().get(5);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getCGIBox_M_transform() {
+        return (EAttribute)getCGIBox().getEStructuralFeatures().get(6);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getCGIBox_Properties() {
+        return (EReference)getCGIBox().getEStructuralFeatures().get(7);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EClass getCGIButtonArray() {
+		if (cgiButtonArrayEClass == null) {
+			cgiButtonArrayEClass = (EClass)EPackage.Registry.INSTANCE.getEPackage(UMLRpyPackage.eNS_URI).getEClassifiers().get(12);
+		}
+		return cgiButtonArrayEClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getCGIButtonArray_Properties() {
+        return (EReference)getCGIButtonArray().getEStructuralFeatures().get(0);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getCGIButtonArray_M_pModelObject() {
+        return (EReference)getCGIButtonArray().getEStructuralFeatures().get(1);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getCGIButtonArray_M_pParent() {
+        return (EReference)getCGIButtonArray().getEStructuralFeatures().get(2);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getCGIButtonArray_M_transform() {
+        return (EAttribute)getCGIButtonArray().getEStructuralFeatures().get(3);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getCGIButtonArray_M_polygon() {
+        return (EAttribute)getCGIButtonArray().getEStructuralFeatures().get(4);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getCGIButtonArray_M_nNameFormat() {
+        return (EAttribute)getCGIButtonArray().getEStructuralFeatures().get(5);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getCGIButtonArray_M_nIsNameFormat() {
+        return (EAttribute)getCGIButtonArray().getEStructuralFeatures().get(6);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getCGIButtonArray_Frameset() {
+        return (EAttribute)getCGIButtonArray().getEStructuralFeatures().get(7);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getCGIButtonArray_Compartments() {
+        return (EReference)getCGIButtonArray().getEStructuralFeatures().get(8);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getCGIButtonArray_M_csModelObjPath() {
+        return (EAttribute)getCGIButtonArray().getEStructuralFeatures().get(9);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getCGIButtonArray_M_csName() {
+        return (EAttribute)getCGIButtonArray().getEStructuralFeatures().get(10);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getCGIButtonArray_M_PartsArray() {
+        return (EReference)getCGIButtonArray().getEStructuralFeatures().get(11);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getCGIButtonArray_M_liButtonNames() {
+        return (EAttribute)getCGIButtonArray().getEStructuralFeatures().get(12);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getCGIButtonArray_M_liButtonValues() {
+        return (EAttribute)getCGIButtonArray().getEStructuralFeatures().get(13);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EClass getCGIClass() {
+		if (cgiClassEClass == null) {
+			cgiClassEClass = (EClass)EPackage.Registry.INSTANCE.getEPackage(UMLRpyPackage.eNS_URI).getEClassifiers().get(13);
+		}
+		return cgiClassEClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getCGIClass_M_pModelObject() {
+        return (EReference)getCGIClass().getEStructuralFeatures().get(0);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getCGIClass_M_AdditionalLabel() {
+        return (EReference)getCGIClass().getEStructuralFeatures().get(1);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getCGIClass_M_polygon() {
+        return (EAttribute)getCGIClass().getEStructuralFeatures().get(2);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getCGIClass_M_nNameFormat() {
+        return (EAttribute)getCGIClass().getEStructuralFeatures().get(3);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getCGIClass_M_nIsNameFormat() {
+        return (EAttribute)getCGIClass().getEStructuralFeatures().get(4);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getCGIClass_Compartments() {
+        return (EReference)getCGIClass().getEStructuralFeatures().get(5);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getCGIClass_M_pParent() {
+        return (EReference)getCGIClass().getEStructuralFeatures().get(6);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getCGIClass_M_transform() {
+        return (EAttribute)getCGIClass().getEStructuralFeatures().get(7);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getCGIClass_Frameset() {
+        return (EAttribute)getCGIClass().getEStructuralFeatures().get(8);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getCGIClass_Properties() {
+        return (EReference)getCGIClass().getEStructuralFeatures().get(9);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getCGIClass_Attrs() {
+        return (EReference)getCGIClass().getEStructuralFeatures().get(10);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getCGIClass_Operations() {
+        return (EReference)getCGIClass().getEStructuralFeatures().get(11);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getCGIClass_M_color() {
+        return (EReference)getCGIClass().getEStructuralFeatures().get(12);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getCGIClass_M_lineWidth() {
+        return (EAttribute)getCGIClass().getEStructuralFeatures().get(13);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getCGIClass_M_dSeparatorPosition() {
+        return (EAttribute)getCGIClass().getEStructuralFeatures().get(14);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getCGIClass_M_bIsMisplaced() {
+        return (EAttribute)getCGIClass().getEStructuralFeatures().get(15);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getCGIClass_M_pImageViewData() {
+        return (EReference)getCGIClass().getEStructuralFeatures().get(16);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getCGIClass_M_bFramesetModified() {
+        return (EAttribute)getCGIClass().getEStructuralFeatures().get(17);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EClass getCGIClassChart() {
+		if (cgiClassChartEClass == null) {
+			cgiClassChartEClass = (EClass)EPackage.Registry.INSTANCE.getEPackage(UMLRpyPackage.eNS_URI).getEClassifiers().get(14);
+		}
+		return cgiClassChartEClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getCGIClassChart_M_pModelObject() {
+        return (EReference)getCGIClassChart().getEStructuralFeatures().get(0);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getCGIClassChart_M_pRoot() {
+        return (EReference)getCGIClassChart().getEStructuralFeatures().get(1);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EClass getCGIClassifierRole() {
+		if (cgiClassifierRoleEClass == null) {
+			cgiClassifierRoleEClass = (EClass)EPackage.Registry.INSTANCE.getEPackage(UMLRpyPackage.eNS_URI).getEClassifiers().get(15);
+		}
+		return cgiClassifierRoleEClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getCGIClassifierRole_M_pModelObject() {
+        return (EReference)getCGIClassifierRole().getEStructuralFeatures().get(0);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getCGIClassifierRole_M_pParent() {
+        return (EReference)getCGIClassifierRole().getEStructuralFeatures().get(1);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getCGIClassifierRole_M_transform() {
+        return (EAttribute)getCGIClassifierRole().getEStructuralFeatures().get(2);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getCGIClassifierRole_M_polygon() {
+        return (EAttribute)getCGIClassifierRole().getEStructuralFeatures().get(3);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getCGIClassifierRole_M_nNameFormat() {
+        return (EAttribute)getCGIClassifierRole().getEStructuralFeatures().get(4);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getCGIClassifierRole_M_nIsNameFormat() {
+        return (EAttribute)getCGIClassifierRole().getEStructuralFeatures().get(5);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getCGIClassifierRole_Compartments() {
+        return (EReference)getCGIClassifierRole().getEStructuralFeatures().get(6);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getCGIClassifierRole_Properties() {
+        return (EReference)getCGIClassifierRole().getEStructuralFeatures().get(7);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EClass getCGICompartment() {
+		if (cgiCompartmentEClass == null) {
+			cgiCompartmentEClass = (EClass)EPackage.Registry.INSTANCE.getEPackage(UMLRpyPackage.eNS_URI).getEClassifiers().get(16);
+		}
+		return cgiCompartmentEClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getCGICompartment_Id() {
+        return (EAttribute)getCGICompartment().getEStructuralFeatures().get(0);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getCGICompartment_M_name() {
+        return (EAttribute)getCGICompartment().getEStructuralFeatures().get(1);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getCGICompartment_M_displayOption() {
+        return (EAttribute)getCGICompartment().getEStructuralFeatures().get(2);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getCGICompartment_M_bShowInherited() {
+        return (EAttribute)getCGICompartment().getEStructuralFeatures().get(3);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getCGICompartment_M_bOrdered() {
+        return (EAttribute)getCGICompartment().getEStructuralFeatures().get(4);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getCGICompartment_Items() {
+        return (EReference)getCGICompartment().getEStructuralFeatures().get(5);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EClass getCGIComponent() {
+		if (cgiComponentEClass == null) {
+			cgiComponentEClass = (EClass)EPackage.Registry.INSTANCE.getEPackage(UMLRpyPackage.eNS_URI).getEClassifiers().get(17);
+		}
+		return cgiComponentEClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getCGIComponent_M_pModelObject() {
+        return (EReference)getCGIComponent().getEStructuralFeatures().get(0);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getCGIComponent_M_pParent() {
+        return (EReference)getCGIComponent().getEStructuralFeatures().get(1);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getCGIComponent_M_transform() {
+        return (EAttribute)getCGIComponent().getEStructuralFeatures().get(2);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getCGIComponent_M_polygon() {
+        return (EAttribute)getCGIComponent().getEStructuralFeatures().get(3);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getCGIComponent_M_nNameFormat() {
+        return (EAttribute)getCGIComponent().getEStructuralFeatures().get(4);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getCGIComponent_M_nIsNameFormat() {
+        return (EAttribute)getCGIComponent().getEStructuralFeatures().get(5);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getCGIComponent_Compartments() {
+        return (EReference)getCGIComponent().getEStructuralFeatures().get(6);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getCGIComponent_Properties() {
+        return (EReference)getCGIComponent().getEStructuralFeatures().get(7);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getCGIComponent_M_AdditionalLabel() {
+        return (EReference)getCGIComponent().getEStructuralFeatures().get(8);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EClass getCGICompositeClass() {
+		if (cgiCompositeClassEClass == null) {
+			cgiCompositeClassEClass = (EClass)EPackage.Registry.INSTANCE.getEPackage(UMLRpyPackage.eNS_URI).getEClassifiers().get(18);
+		}
+		return cgiCompositeClassEClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getCGICompositeClass_M_pModelObject() {
+        return (EReference)getCGICompositeClass().getEStructuralFeatures().get(0);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getCGICompositeClass_M_pParent() {
+        return (EAttribute)getCGICompositeClass().getEStructuralFeatures().get(1);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getCGICompositeClass_M_AdditionalLabel() {
+        return (EReference)getCGICompositeClass().getEStructuralFeatures().get(2);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getCGICompositeClass_M_polygon() {
+        return (EAttribute)getCGICompositeClass().getEStructuralFeatures().get(3);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getCGICompositeClass_M_nNameFormat() {
+        return (EAttribute)getCGICompositeClass().getEStructuralFeatures().get(4);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getCGICompositeClass_M_nIsNameFormat() {
+        return (EAttribute)getCGICompositeClass().getEStructuralFeatures().get(5);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getCGICompositeClass_Compartments() {
+        return (EReference)getCGICompositeClass().getEStructuralFeatures().get(6);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getCGICompositeClass_Properties() {
+        return (EReference)getCGICompositeClass().getEStructuralFeatures().get(7);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getCGICompositeClass_M_color() {
+        return (EReference)getCGICompositeClass().getEStructuralFeatures().get(8);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getCGICompositeClass_M_lineWidth() {
+        return (EAttribute)getCGICompositeClass().getEStructuralFeatures().get(9);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EClass getCGIConnector() {
+		if (cgiConnectorEClass == null) {
+			cgiConnectorEClass = (EClass)EPackage.Registry.INSTANCE.getEPackage(UMLRpyPackage.eNS_URI).getEClassifiers().get(19);
+		}
+		return cgiConnectorEClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getCGIConnector_M_pModelObject() {
+        return (EReference)getCGIConnector().getEStructuralFeatures().get(0);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getCGIConnector_M_pParent() {
+        return (EReference)getCGIConnector().getEStructuralFeatures().get(1);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getCGIConnector_M_transform() {
+        return (EAttribute)getCGIConnector().getEStructuralFeatures().get(2);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getCGIConnector_M_position() {
+        return (EAttribute)getCGIConnector().getEStructuralFeatures().get(3);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getCGIConnector_M_nInheritanceMask() {
+        return (EAttribute)getCGIConnector().getEStructuralFeatures().get(4);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getCGIConnector_M_SubType() {
+        return (EAttribute)getCGIConnector().getEStructuralFeatures().get(5);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getCGIConnector_Properties() {
+        return (EReference)getCGIConnector().getEStructuralFeatures().get(6);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getCGIConnector_M_AdditionalLabel() {
+        return (EReference)getCGIConnector().getEStructuralFeatures().get(7);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getCGIConnector_MyState() {
+        return (EAttribute)getCGIConnector().getEStructuralFeatures().get(8);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getCGIConnector_M_pInheritsFrom() {
+        return (EReference)getCGIConnector().getEStructuralFeatures().get(9);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EClass getCGIContainArrow() {
+		if (cgiContainArrowEClass == null) {
+			cgiContainArrowEClass = (EClass)EPackage.Registry.INSTANCE.getEPackage(UMLRpyPackage.eNS_URI).getEClassifiers().get(20);
+		}
+		return cgiContainArrowEClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getCGIContainArrow_M_pModelObject() {
+        return (EReference)getCGIContainArrow().getEStructuralFeatures().get(0);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getCGIContainArrow_M_pParent() {
+        return (EAttribute)getCGIContainArrow().getEStructuralFeatures().get(1);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getCGIContainArrow_M_pSource() {
+        return (EReference)getCGIContainArrow().getEStructuralFeatures().get(2);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getCGIContainArrow_M_sourceType() {
+        return (EAttribute)getCGIContainArrow().getEStructuralFeatures().get(3);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getCGIContainArrow_M_pTarget() {
+        return (EReference)getCGIContainArrow().getEStructuralFeatures().get(4);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getCGIContainArrow_M_targetType() {
+        return (EAttribute)getCGIContainArrow().getEStructuralFeatures().get(5);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getCGIContainArrow_M_direction() {
+        return (EAttribute)getCGIContainArrow().getEStructuralFeatures().get(6);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getCGIContainArrow_M_rpn() {
+        return (EReference)getCGIContainArrow().getEStructuralFeatures().get(7);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getCGIContainArrow_M_arrow() {
+        return (EAttribute)getCGIContainArrow().getEStructuralFeatures().get(8);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getCGIContainArrow_M_anglePoint1() {
+        return (EAttribute)getCGIContainArrow().getEStructuralFeatures().get(9);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getCGIContainArrow_M_anglePoint2() {
+        return (EAttribute)getCGIContainArrow().getEStructuralFeatures().get(10);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getCGIContainArrow_M_line_style() {
+        return (EAttribute)getCGIContainArrow().getEStructuralFeatures().get(11);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getCGIContainArrow_M_SourcePort() {
+        return (EAttribute)getCGIContainArrow().getEStructuralFeatures().get(12);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getCGIContainArrow_M_TargetPort() {
+        return (EAttribute)getCGIContainArrow().getEStructuralFeatures().get(13);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EClass getCGIDiagramFrame() {
+		if (cgiDiagramFrameEClass == null) {
+			cgiDiagramFrameEClass = (EClass)EPackage.Registry.INSTANCE.getEPackage(UMLRpyPackage.eNS_URI).getEClassifiers().get(21);
+		}
+		return cgiDiagramFrameEClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getCGIDiagramFrame_M_pModelObject() {
+        return (EReference)getCGIDiagramFrame().getEStructuralFeatures().get(0);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getCGIDiagramFrame_M_pParent() {
+        return (EReference)getCGIDiagramFrame().getEStructuralFeatures().get(1);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getCGIDiagramFrame_M_transform() {
+        return (EAttribute)getCGIDiagramFrame().getEStructuralFeatures().get(2);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getCGIDiagramFrame_M_AdditionalLabel() {
+        return (EReference)getCGIDiagramFrame().getEStructuralFeatures().get(3);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getCGIDiagramFrame_M_polygon() {
+        return (EAttribute)getCGIDiagramFrame().getEStructuralFeatures().get(4);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getCGIDiagramFrame_M_nNameFormat() {
+        return (EAttribute)getCGIDiagramFrame().getEStructuralFeatures().get(5);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getCGIDiagramFrame_M_nIsNameFormat() {
+        return (EAttribute)getCGIDiagramFrame().getEStructuralFeatures().get(6);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getCGIDiagramFrame_M_bVisible() {
+        return (EAttribute)getCGIDiagramFrame().getEStructuralFeatures().get(7);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getCGIDiagramFrame_Frameset() {
+        return (EAttribute)getCGIDiagramFrame().getEStructuralFeatures().get(8);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getCGIDiagramFrame_Compartments() {
+        return (EReference)getCGIDiagramFrame().getEStructuralFeatures().get(9);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EClass getCGIFreeShape() {
+		if (cgiFreeShapeEClass == null) {
+			cgiFreeShapeEClass = (EClass)EPackage.Registry.INSTANCE.getEPackage(UMLRpyPackage.eNS_URI).getEClassifiers().get(22);
+		}
+		return cgiFreeShapeEClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getCGIFreeShape_Properties() {
+        return (EReference)getCGIFreeShape().getEStructuralFeatures().get(0);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getCGIFreeShape_M_pModelObject() {
+        return (EReference)getCGIFreeShape().getEStructuralFeatures().get(1);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getCGIFreeShape_M_pParent() {
+        return (EReference)getCGIFreeShape().getEStructuralFeatures().get(2);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getCGIFreeShape_M_transform() {
+        return (EAttribute)getCGIFreeShape().getEStructuralFeatures().get(3);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getCGIFreeShape_M_points() {
+        return (EAttribute)getCGIFreeShape().getEStructuralFeatures().get(4);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EClass getCGIFreeText() {
+		if (cgiFreeTextEClass == null) {
+			cgiFreeTextEClass = (EClass)EPackage.Registry.INSTANCE.getEPackage(UMLRpyPackage.eNS_URI).getEClassifiers().get(23);
+		}
+		return cgiFreeTextEClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getCGIFreeText_M_pModelObject() {
+        return (EReference)getCGIFreeText().getEStructuralFeatures().get(0);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getCGIFreeText_M_pParent() {
+        return (EReference)getCGIFreeText().getEStructuralFeatures().get(1);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getCGIFreeText_M_transform() {
+        return (EAttribute)getCGIFreeText().getEStructuralFeatures().get(2);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getCGIFreeText_M_points() {
+        return (EAttribute)getCGIFreeText().getEStructuralFeatures().get(3);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getCGIFreeText_M_text() {
+        return (EAttribute)getCGIFreeText().getEStructuralFeatures().get(4);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getCGIFreeText_Properties() {
+        return (EReference)getCGIFreeText().getEStructuralFeatures().get(5);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EClass getCGIGenericElement() {
+		if (cgiGenericElementEClass == null) {
+			cgiGenericElementEClass = (EClass)EPackage.Registry.INSTANCE.getEPackage(UMLRpyPackage.eNS_URI).getEClassifiers().get(24);
+		}
+		return cgiGenericElementEClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getCGIGenericElement_M_pModelObject() {
+        return (EReference)getCGIGenericElement().getEStructuralFeatures().get(0);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getCGIGenericElement_M_pParent() {
+        return (EReference)getCGIGenericElement().getEStructuralFeatures().get(1);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getCGIGenericElement_M_transform() {
+        return (EAttribute)getCGIGenericElement().getEStructuralFeatures().get(2);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getCGIGenericElement_M_AdditionalLabel() {
+        return (EReference)getCGIGenericElement().getEStructuralFeatures().get(3);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getCGIGenericElement_M_polygon() {
+        return (EAttribute)getCGIGenericElement().getEStructuralFeatures().get(4);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getCGIGenericElement_M_nNameFormat() {
+        return (EAttribute)getCGIGenericElement().getEStructuralFeatures().get(5);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getCGIGenericElement_M_nIsNameFormat() {
+        return (EAttribute)getCGIGenericElement().getEStructuralFeatures().get(6);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getCGIGenericElement_Frameset() {
+        return (EAttribute)getCGIGenericElement().getEStructuralFeatures().get(7);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getCGIGenericElement_Compartments() {
+        return (EReference)getCGIGenericElement().getEStructuralFeatures().get(8);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getCGIGenericElement_Properties() {
+        return (EReference)getCGIGenericElement().getEStructuralFeatures().get(9);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getCGIGenericElement_M_pImageViewData() {
+        return (EReference)getCGIGenericElement().getEStructuralFeatures().get(10);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getCGIGenericElement_M_csContext() {
+        return (EAttribute)getCGIGenericElement().getEStructuralFeatures().get(11);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getCGIGenericElement_M_csPartsArray() {
+        return (EAttribute)getCGIGenericElement().getEStructuralFeatures().get(12);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getCGIGenericElement_M_bIsStructured() {
+        return (EAttribute)getCGIGenericElement().getEStructuralFeatures().get(13);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EClass getCGIImage() {
+		if (cgiImageEClass == null) {
+			cgiImageEClass = (EClass)EPackage.Registry.INSTANCE.getEPackage(UMLRpyPackage.eNS_URI).getEClassifiers().get(25);
+		}
+		return cgiImageEClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getCGIImage_M_pModelObject() {
+        return (EReference)getCGIImage().getEStructuralFeatures().get(0);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getCGIImage_M_pParent() {
+        return (EReference)getCGIImage().getEStructuralFeatures().get(1);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getCGIImage_M_transform() {
+        return (EAttribute)getCGIImage().getEStructuralFeatures().get(2);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getCGIImage_M_pImageViewData() {
+        return (EReference)getCGIImage().getEStructuralFeatures().get(3);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getCGIImage_M_points() {
+        return (EAttribute)getCGIImage().getEStructuralFeatures().get(4);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EClass getCGIImageData() {
+		if (cgiImageDataEClass == null) {
+			cgiImageDataEClass = (EClass)EPackage.Registry.INSTANCE.getEPackage(UMLRpyPackage.eNS_URI).getEClassifiers().get(26);
+		}
+		return cgiImageDataEClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getCGIImageData_M_pModelObject() {
+        return (EReference)getCGIImageData().getEStructuralFeatures().get(0);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getCGIImageData_M_pParent() {
+        return (EReference)getCGIImageData().getEStructuralFeatures().get(1);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getCGIImageData_M_dataSize() {
+        return (EAttribute)getCGIImageData().getEStructuralFeatures().get(2);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getCGIImageData_M_data() {
+        return (EAttribute)getCGIImageData().getEStructuralFeatures().get(3);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getCGIImageData_M_srcFile() {
+        return (EAttribute)getCGIImageData().getEStructuralFeatures().get(4);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getCGIImageData_M_fileModifiedTime() {
+        return (EAttribute)getCGIImageData().getEStructuralFeatures().get(5);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EClass getCGIInformationFlow() {
+		if (cgiInformationFlowEClass == null) {
+			cgiInformationFlowEClass = (EClass)EPackage.Registry.INSTANCE.getEPackage(UMLRpyPackage.eNS_URI).getEClassifiers().get(27);
+		}
+		return cgiInformationFlowEClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getCGIInformationFlow_M_pModelObject() {
+        return (EReference)getCGIInformationFlow().getEStructuralFeatures().get(0);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getCGIInformationFlow_M_pParent() {
+        return (EAttribute)getCGIInformationFlow().getEStructuralFeatures().get(1);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getCGIInformationFlow_M_pSource() {
+        return (EReference)getCGIInformationFlow().getEStructuralFeatures().get(2);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getCGIInformationFlow_M_sourceType() {
+        return (EAttribute)getCGIInformationFlow().getEStructuralFeatures().get(3);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getCGIInformationFlow_M_pTarget() {
+        return (EReference)getCGIInformationFlow().getEStructuralFeatures().get(4);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getCGIInformationFlow_M_targetType() {
+        return (EAttribute)getCGIInformationFlow().getEStructuralFeatures().get(5);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getCGIInformationFlow_M_direction() {
+        return (EAttribute)getCGIInformationFlow().getEStructuralFeatures().get(6);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getCGIInformationFlow_M_rpn() {
+        return (EReference)getCGIInformationFlow().getEStructuralFeatures().get(7);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getCGIInformationFlow_M_anglePoint1() {
+        return (EAttribute)getCGIInformationFlow().getEStructuralFeatures().get(8);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getCGIInformationFlow_M_anglePoint2() {
+        return (EAttribute)getCGIInformationFlow().getEStructuralFeatures().get(9);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getCGIInformationFlow_M_line_style() {
+        return (EAttribute)getCGIInformationFlow().getEStructuralFeatures().get(10);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getCGIInformationFlow_M_SourcePort() {
+        return (EAttribute)getCGIInformationFlow().getEStructuralFeatures().get(11);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getCGIInformationFlow_M_TargetPort() {
+        return (EAttribute)getCGIInformationFlow().getEStructuralFeatures().get(12);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getCGIInformationFlow_M_bShowKeyword() {
+        return (EAttribute)getCGIInformationFlow().getEStructuralFeatures().get(13);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getCGIInformationFlow_M_showConveyed() {
+        return (EAttribute)getCGIInformationFlow().getEStructuralFeatures().get(14);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getCGIInformationFlow_M_keyword() {
+        return (EReference)getCGIInformationFlow().getEStructuralFeatures().get(15);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getCGIInformationFlow_M_conveyed() {
+        return (EReference)getCGIInformationFlow().getEStructuralFeatures().get(16);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getCGIInformationFlow_M_arrow() {
+        return (EAttribute)getCGIInformationFlow().getEStructuralFeatures().get(17);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getCGIInformationFlow_Properties() {
+        return (EReference)getCGIInformationFlow().getEStructuralFeatures().get(18);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EClass getCGIInheritance() {
+		if (cgiInheritanceEClass == null) {
+			cgiInheritanceEClass = (EClass)EPackage.Registry.INSTANCE.getEPackage(UMLRpyPackage.eNS_URI).getEClassifiers().get(28);
+		}
+		return cgiInheritanceEClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getCGIInheritance_M_pModelObject() {
+        return (EReference)getCGIInheritance().getEStructuralFeatures().get(0);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getCGIInheritance_M_pParent() {
+        return (EAttribute)getCGIInheritance().getEStructuralFeatures().get(1);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getCGIInheritance_M_pSource() {
+        return (EReference)getCGIInheritance().getEStructuralFeatures().get(2);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getCGIInheritance_M_sourceType() {
+        return (EAttribute)getCGIInheritance().getEStructuralFeatures().get(3);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getCGIInheritance_M_pTarget() {
+        return (EReference)getCGIInheritance().getEStructuralFeatures().get(4);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getCGIInheritance_M_targetType() {
+        return (EAttribute)getCGIInheritance().getEStructuralFeatures().get(5);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getCGIInheritance_M_direction() {
+        return (EAttribute)getCGIInheritance().getEStructuralFeatures().get(6);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getCGIInheritance_M_rpn() {
+        return (EReference)getCGIInheritance().getEStructuralFeatures().get(7);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getCGIInheritance_M_anglePoint1() {
+        return (EAttribute)getCGIInheritance().getEStructuralFeatures().get(8);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getCGIInheritance_M_anglePoint2() {
+        return (EAttribute)getCGIInheritance().getEStructuralFeatures().get(9);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getCGIInheritance_M_line_style() {
+        return (EAttribute)getCGIInheritance().getEStructuralFeatures().get(10);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getCGIInheritance_M_SourcePort() {
+        return (EAttribute)getCGIInheritance().getEStructuralFeatures().get(11);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getCGIInheritance_M_TargetPort() {
+        return (EAttribute)getCGIInheritance().getEStructuralFeatures().get(12);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getCGIInheritance_M_ShowName() {
+        return (EAttribute)getCGIInheritance().getEStructuralFeatures().get(13);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getCGIInheritance_M_ShowStereotype() {
+        return (EAttribute)getCGIInheritance().getEStructuralFeatures().get(14);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getCGIInheritance_Properties() {
+        return (EReference)getCGIInheritance().getEStructuralFeatures().get(15);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getCGIInheritance_M_color() {
+        return (EReference)getCGIInheritance().getEStructuralFeatures().get(16);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getCGIInheritance_M_lineWidth() {
+        return (EAttribute)getCGIInheritance().getEStructuralFeatures().get(17);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getCGIInheritance_M_arrow() {
+        return (EAttribute)getCGIInheritance().getEStructuralFeatures().get(18);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EClass getCGIMFCCtrl() {
+		if (cgimfcCtrlEClass == null) {
+			cgimfcCtrlEClass = (EClass)EPackage.Registry.INSTANCE.getEPackage(UMLRpyPackage.eNS_URI).getEClassifiers().get(29);
+		}
+		return cgimfcCtrlEClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getCGIMFCCtrl_Properties() {
+        return (EReference)getCGIMFCCtrl().getEStructuralFeatures().get(0);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getCGIMFCCtrl_M_pModelObject() {
+        return (EReference)getCGIMFCCtrl().getEStructuralFeatures().get(1);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getCGIMFCCtrl_M_pParent() {
+        return (EReference)getCGIMFCCtrl().getEStructuralFeatures().get(2);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getCGIMFCCtrl_M_transform() {
+        return (EAttribute)getCGIMFCCtrl().getEStructuralFeatures().get(3);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getCGIMFCCtrl_M_polygon() {
+        return (EAttribute)getCGIMFCCtrl().getEStructuralFeatures().get(4);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getCGIMFCCtrl_M_nNameFormat() {
+        return (EAttribute)getCGIMFCCtrl().getEStructuralFeatures().get(5);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getCGIMFCCtrl_M_nIsNameFormat() {
+        return (EAttribute)getCGIMFCCtrl().getEStructuralFeatures().get(6);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getCGIMFCCtrl_Compartments() {
+        return (EReference)getCGIMFCCtrl().getEStructuralFeatures().get(7);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getCGIMFCCtrl_M_csModelObjPath() {
+        return (EAttribute)getCGIMFCCtrl().getEStructuralFeatures().get(8);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getCGIMFCCtrl_M_csName() {
+        return (EAttribute)getCGIMFCCtrl().getEStructuralFeatures().get(9);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getCGIMFCCtrl_M_PartsArray() {
+        return (EReference)getCGIMFCCtrl().getEStructuralFeatures().get(10);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getCGIMFCCtrl_M_csButtonCaption() {
+        return (EAttribute)getCGIMFCCtrl().getEStructuralFeatures().get(11);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EClass getCGIMessageLabel() {
+		if (cgiMessageLabelEClass == null) {
+			cgiMessageLabelEClass = (EClass)EPackage.Registry.INSTANCE.getEPackage(UMLRpyPackage.eNS_URI).getEClassifiers().get(30);
+		}
+		return cgiMessageLabelEClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getCGIMessageLabel_M_pModelObject() {
+        return (EReference)getCGIMessageLabel().getEStructuralFeatures().get(0);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getCGIMessageLabel_M_pParent() {
+        return (EAttribute)getCGIMessageLabel().getEStructuralFeatures().get(1);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getCGIMessageLabel_M_pCommunicationConnection() {
+        return (EReference)getCGIMessageLabel().getEStructuralFeatures().get(2);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getCGIMessageLabel_Percent() {
+        return (EAttribute)getCGIMessageLabel().getEStructuralFeatures().get(3);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EClass getCGIMscChart() {
+		if (cgiMscChartEClass == null) {
+			cgiMscChartEClass = (EClass)EPackage.Registry.INSTANCE.getEPackage(UMLRpyPackage.eNS_URI).getEClassifiers().get(31);
+		}
+		return cgiMscChartEClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getCGIMscChart_VLadderMargin() {
+        return (EAttribute)getCGIMscChart().getEStructuralFeatures().get(0);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getCGIMscChart_M_usingActivationBar() {
+        return (EAttribute)getCGIMscChart().getEStructuralFeatures().get(1);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getCGIMscChart_Id() {
+        return (EAttribute)getCGIMscChart().getEStructuralFeatures().get(2);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getCGIMscChart_M_type() {
+        return (EAttribute)getCGIMscChart().getEStructuralFeatures().get(3);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getCGIMscChart_M_pModelObject() {
+        return (EReference)getCGIMscChart().getEStructuralFeatures().get(4);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getCGIMscChart_M_pParent() {
+        return (EAttribute)getCGIMscChart().getEStructuralFeatures().get(5);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getCGIMscChart_M_name() {
+        return (EReference)getCGIMscChart().getEStructuralFeatures().get(6);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getCGIMscChart_M_drawBehavior() {
+        return (EAttribute)getCGIMscChart().getEStructuralFeatures().get(7);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getCGIMscChart_M_bIsPreferencesInitialized() {
+        return (EAttribute)getCGIMscChart().getEStructuralFeatures().get(8);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getCGIMscChart_ElementList() {
+        return (EAttribute)getCGIMscChart().getEStructuralFeatures().get(9);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getCGIMscChart_GraphElements() {
+        return (EReference)getCGIMscChart().getEStructuralFeatures().get(10);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getCGIMscChart_M_access() {
+        return (EAttribute)getCGIMscChart().getEStructuralFeatures().get(11);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getCGIMscChart_M_modified() {
+        return (EAttribute)getCGIMscChart().getEStructuralFeatures().get(12);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getCGIMscChart_M_fileVersion() {
+        return (EAttribute)getCGIMscChart().getEStructuralFeatures().get(13);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getCGIMscChart_M_nModifyDate() {
+        return (EAttribute)getCGIMscChart().getEStructuralFeatures().get(14);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getCGIMscChart_M_nCreateDate() {
+        return (EAttribute)getCGIMscChart().getEStructuralFeatures().get(15);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getCGIMscChart_M_creator() {
+        return (EAttribute)getCGIMscChart().getEStructuralFeatures().get(16);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getCGIMscChart_M_bScaleWithZoom() {
+        return (EAttribute)getCGIMscChart().getEStructuralFeatures().get(17);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getCGIMscChart_M_arrowStyle() {
+        return (EAttribute)getCGIMscChart().getEStructuralFeatures().get(18);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getCGIMscChart_M_pRoot() {
+        return (EReference)getCGIMscChart().getEStructuralFeatures().get(19);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getCGIMscChart_M_currentLeftTop() {
+        return (EAttribute)getCGIMscChart().getEStructuralFeatures().get(20);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getCGIMscChart_M_currentRightBottom() {
+        return (EAttribute)getCGIMscChart().getEStructuralFeatures().get(21);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EClass getCGIMscColumnCR() {
+		if (cgiMscColumnCREClass == null) {
+			cgiMscColumnCREClass = (EClass)EPackage.Registry.INSTANCE.getEPackage(UMLRpyPackage.eNS_URI).getEClassifiers().get(32);
+		}
+		return cgiMscColumnCREClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getCGIMscColumnCR_M_pModelObject() {
+        return (EReference)getCGIMscColumnCR().getEStructuralFeatures().get(0);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getCGIMscColumnCR_M_pParent() {
+        return (EReference)getCGIMscColumnCR().getEStructuralFeatures().get(1);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getCGIMscColumnCR_M_transform() {
+        return (EAttribute)getCGIMscColumnCR().getEStructuralFeatures().get(2);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getCGIMscColumnCR_M_AdditionalLabel() {
+        return (EReference)getCGIMscColumnCR().getEStructuralFeatures().get(3);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getCGIMscColumnCR_M_position() {
+        return (EAttribute)getCGIMscColumnCR().getEStructuralFeatures().get(4);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getCGIMscColumnCR_M_pInheritsFrom() {
+        return (EReference)getCGIMscColumnCR().getEStructuralFeatures().get(5);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getCGIMscColumnCR_M_nInheritanceMask() {
+        return (EAttribute)getCGIMscColumnCR().getEStructuralFeatures().get(6);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getCGIMscColumnCR_M_SubType() {
+        return (EAttribute)getCGIMscColumnCR().getEStructuralFeatures().get(7);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getCGIMscColumnCR_Properties() {
+        return (EReference)getCGIMscColumnCR().getEStructuralFeatures().get(8);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EClass getCGIMscConditionMark() {
+		if (cgiMscConditionMarkEClass == null) {
+			cgiMscConditionMarkEClass = (EClass)EPackage.Registry.INSTANCE.getEPackage(UMLRpyPackage.eNS_URI).getEClassifiers().get(33);
+		}
+		return cgiMscConditionMarkEClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getCGIMscConditionMark_Properties() {
+        return (EReference)getCGIMscConditionMark().getEStructuralFeatures().get(0);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getCGIMscConditionMark_M_pModelObject() {
+        return (EReference)getCGIMscConditionMark().getEStructuralFeatures().get(1);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getCGIMscConditionMark_M_pParent() {
+        return (EReference)getCGIMscConditionMark().getEStructuralFeatures().get(2);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getCGIMscConditionMark_M_transform() {
+        return (EAttribute)getCGIMscConditionMark().getEStructuralFeatures().get(3);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getCGIMscConditionMark_M_polygon() {
+        return (EAttribute)getCGIMscConditionMark().getEStructuralFeatures().get(4);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getCGIMscConditionMark_M_nNameFormat() {
+        return (EAttribute)getCGIMscConditionMark().getEStructuralFeatures().get(5);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getCGIMscConditionMark_M_nIsNameFormat() {
+        return (EAttribute)getCGIMscConditionMark().getEStructuralFeatures().get(6);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getCGIMscConditionMark_Compartments() {
+        return (EReference)getCGIMscConditionMark().getEStructuralFeatures().get(7);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EClass getCGIMscExecutionOccurrence() {
+		if (cgiMscExecutionOccurrenceEClass == null) {
+			cgiMscExecutionOccurrenceEClass = (EClass)EPackage.Registry.INSTANCE.getEPackage(UMLRpyPackage.eNS_URI).getEClassifiers().get(34);
+		}
+		return cgiMscExecutionOccurrenceEClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getCGIMscExecutionOccurrence_M_pModelObject() {
+        return (EReference)getCGIMscExecutionOccurrence().getEStructuralFeatures().get(0);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getCGIMscExecutionOccurrence_M_pParent() {
+        return (EReference)getCGIMscExecutionOccurrence().getEStructuralFeatures().get(1);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getCGIMscExecutionOccurrence_M_transform() {
+        return (EAttribute)getCGIMscExecutionOccurrence().getEStructuralFeatures().get(2);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getCGIMscExecutionOccurrence_M_position() {
+        return (EAttribute)getCGIMscExecutionOccurrence().getEStructuralFeatures().get(3);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getCGIMscExecutionOccurrence_M_pInheritsFrom() {
+        return (EReference)getCGIMscExecutionOccurrence().getEStructuralFeatures().get(4);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getCGIMscExecutionOccurrence_M_nInheritanceMask() {
+        return (EAttribute)getCGIMscExecutionOccurrence().getEStructuralFeatures().get(5);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getCGIMscExecutionOccurrence_M_SubType() {
+        return (EAttribute)getCGIMscExecutionOccurrence().getEStructuralFeatures().get(6);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getCGIMscExecutionOccurrence_M_pStartMessage() {
+        return (EReference)getCGIMscExecutionOccurrence().getEStructuralFeatures().get(7);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EClass getCGIMscInteractionOccurrence() {
+		if (cgiMscInteractionOccurrenceEClass == null) {
+			cgiMscInteractionOccurrenceEClass = (EClass)EPackage.Registry.INSTANCE.getEPackage(UMLRpyPackage.eNS_URI).getEClassifiers().get(35);
+		}
+		return cgiMscInteractionOccurrenceEClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getCGIMscInteractionOccurrence_M_pModelObject() {
+        return (EReference)getCGIMscInteractionOccurrence().getEStructuralFeatures().get(0);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getCGIMscInteractionOccurrence_M_pParent() {
+        return (EReference)getCGIMscInteractionOccurrence().getEStructuralFeatures().get(1);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getCGIMscInteractionOccurrence_M_transform() {
+        return (EAttribute)getCGIMscInteractionOccurrence().getEStructuralFeatures().get(2);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getCGIMscInteractionOccurrence_M_polygon() {
+        return (EAttribute)getCGIMscInteractionOccurrence().getEStructuralFeatures().get(3);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getCGIMscInteractionOccurrence_M_nNameFormat() {
+        return (EAttribute)getCGIMscInteractionOccurrence().getEStructuralFeatures().get(4);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getCGIMscInteractionOccurrence_M_nIsNameFormat() {
+        return (EAttribute)getCGIMscInteractionOccurrence().getEStructuralFeatures().get(5);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getCGIMscInteractionOccurrence_Compartments() {
+        return (EReference)getCGIMscInteractionOccurrence().getEStructuralFeatures().get(6);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getCGIMscInteractionOccurrence_Properties() {
+        return (EReference)getCGIMscInteractionOccurrence().getEStructuralFeatures().get(7);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EClass getCGIMscInteractionOperand() {
+		if (cgiMscInteractionOperandEClass == null) {
+			cgiMscInteractionOperandEClass = (EClass)EPackage.Registry.INSTANCE.getEPackage(UMLRpyPackage.eNS_URI).getEClassifiers().get(36);
+		}
+		return cgiMscInteractionOperandEClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getCGIMscInteractionOperand_Properties() {
+        return (EReference)getCGIMscInteractionOperand().getEStructuralFeatures().get(0);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getCGIMscInteractionOperand_M_pModelObject() {
+        return (EReference)getCGIMscInteractionOperand().getEStructuralFeatures().get(1);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getCGIMscInteractionOperand_M_pParent() {
+        return (EReference)getCGIMscInteractionOperand().getEStructuralFeatures().get(2);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getCGIMscInteractionOperand_M_AdditionalLabel() {
+        return (EReference)getCGIMscInteractionOperand().getEStructuralFeatures().get(3);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getCGIMscInteractionOperand_M_polygon() {
+        return (EAttribute)getCGIMscInteractionOperand().getEStructuralFeatures().get(4);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getCGIMscInteractionOperand_M_nNameFormat() {
+        return (EAttribute)getCGIMscInteractionOperand().getEStructuralFeatures().get(5);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getCGIMscInteractionOperand_M_nIsNameFormat() {
+        return (EAttribute)getCGIMscInteractionOperand().getEStructuralFeatures().get(6);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getCGIMscInteractionOperand_Compartments() {
+        return (EReference)getCGIMscInteractionOperand().getEStructuralFeatures().get(7);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getCGIMscInteractionOperand_M_transform() {
+        return (EAttribute)getCGIMscInteractionOperand().getEStructuralFeatures().get(8);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EClass getCGIMscInteractionOperator() {
+		if (cgiMscInteractionOperatorEClass == null) {
+			cgiMscInteractionOperatorEClass = (EClass)EPackage.Registry.INSTANCE.getEPackage(UMLRpyPackage.eNS_URI).getEClassifiers().get(37);
+		}
+		return cgiMscInteractionOperatorEClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getCGIMscInteractionOperator_M_operatorType() {
+        return (EAttribute)getCGIMscInteractionOperator().getEStructuralFeatures().get(0);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getCGIMscInteractionOperator_Properties() {
+        return (EReference)getCGIMscInteractionOperator().getEStructuralFeatures().get(1);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getCGIMscInteractionOperator_M_pModelObject() {
+        return (EReference)getCGIMscInteractionOperator().getEStructuralFeatures().get(2);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getCGIMscInteractionOperator_M_pParent() {
+        return (EReference)getCGIMscInteractionOperator().getEStructuralFeatures().get(3);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getCGIMscInteractionOperator_M_transform() {
+        return (EAttribute)getCGIMscInteractionOperator().getEStructuralFeatures().get(4);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getCGIMscInteractionOperator_M_polygon() {
+        return (EAttribute)getCGIMscInteractionOperator().getEStructuralFeatures().get(5);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getCGIMscInteractionOperator_M_nNameFormat() {
+        return (EAttribute)getCGIMscInteractionOperator().getEStructuralFeatures().get(6);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getCGIMscInteractionOperator_M_nIsNameFormat() {
+        return (EAttribute)getCGIMscInteractionOperator().getEStructuralFeatures().get(7);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getCGIMscInteractionOperator_Frameset() {
+        return (EAttribute)getCGIMscInteractionOperator().getEStructuralFeatures().get(8);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getCGIMscInteractionOperator_Compartments() {
+        return (EReference)getCGIMscInteractionOperator().getEStructuralFeatures().get(9);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getCGIMscInteractionOperator_M_bFramesetModified() {
+        return (EAttribute)getCGIMscInteractionOperator().getEStructuralFeatures().get(10);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EClass getCGIMscMessage() {
+		if (cgiMscMessageEClass == null) {
+			cgiMscMessageEClass = (EClass)EPackage.Registry.INSTANCE.getEPackage(UMLRpyPackage.eNS_URI).getEClassifiers().get(38);
+		}
+		return cgiMscMessageEClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getCGIMscMessage_M_pModelObject() {
+        return (EReference)getCGIMscMessage().getEStructuralFeatures().get(0);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getCGIMscMessage_M_pParent() {
+        return (EAttribute)getCGIMscMessage().getEStructuralFeatures().get(1);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getCGIMscMessage_M_pSource() {
+        return (EReference)getCGIMscMessage().getEStructuralFeatures().get(2);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getCGIMscMessage_M_sourceType() {
+        return (EAttribute)getCGIMscMessage().getEStructuralFeatures().get(3);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getCGIMscMessage_M_pTarget() {
+        return (EReference)getCGIMscMessage().getEStructuralFeatures().get(4);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getCGIMscMessage_M_targetType() {
+        return (EAttribute)getCGIMscMessage().getEStructuralFeatures().get(5);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getCGIMscMessage_M_direction() {
+        return (EAttribute)getCGIMscMessage().getEStructuralFeatures().get(6);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getCGIMscMessage_M_rpn() {
+        return (EReference)getCGIMscMessage().getEStructuralFeatures().get(7);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getCGIMscMessage_M_anglePoint1() {
+        return (EAttribute)getCGIMscMessage().getEStructuralFeatures().get(8);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getCGIMscMessage_M_anglePoint2() {
+        return (EAttribute)getCGIMscMessage().getEStructuralFeatures().get(9);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getCGIMscMessage_M_line_style() {
+        return (EAttribute)getCGIMscMessage().getEStructuralFeatures().get(10);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getCGIMscMessage_M_SourcePort() {
+        return (EAttribute)getCGIMscMessage().getEStructuralFeatures().get(11);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getCGIMscMessage_M_TargetPort() {
+        return (EAttribute)getCGIMscMessage().getEStructuralFeatures().get(12);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getCGIMscMessage_M_bLeft() {
+        return (EAttribute)getCGIMscMessage().getEStructuralFeatures().get(13);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getCGIMscMessage_M_arrow() {
+        return (EAttribute)getCGIMscMessage().getEStructuralFeatures().get(14);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getCGIMscMessage_Properties() {
+        return (EReference)getCGIMscMessage().getEStructuralFeatures().get(15);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getCGIMscMessage_MyState() {
+        return (EAttribute)getCGIMscMessage().getEStructuralFeatures().get(16);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getCGIMscMessage_M_pSourceExec() {
+        return (EReference)getCGIMscMessage().getEStructuralFeatures().get(17);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getCGIMscMessage_M_pTargetExec() {
+        return (EReference)getCGIMscMessage().getEStructuralFeatures().get(18);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EClass getCGIObjectInstance() {
+		if (cgiObjectInstanceEClass == null) {
+			cgiObjectInstanceEClass = (EClass)EPackage.Registry.INSTANCE.getEPackage(UMLRpyPackage.eNS_URI).getEClassifiers().get(39);
+		}
+		return cgiObjectInstanceEClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getCGIObjectInstance_M_pModelObject() {
+        return (EReference)getCGIObjectInstance().getEStructuralFeatures().get(0);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getCGIObjectInstance_M_pParent() {
+        return (EReference)getCGIObjectInstance().getEStructuralFeatures().get(1);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getCGIObjectInstance_M_transform() {
+        return (EAttribute)getCGIObjectInstance().getEStructuralFeatures().get(2);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getCGIObjectInstance_M_AdditionalLabel() {
+        return (EReference)getCGIObjectInstance().getEStructuralFeatures().get(3);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getCGIObjectInstance_M_polygon() {
+        return (EAttribute)getCGIObjectInstance().getEStructuralFeatures().get(4);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getCGIObjectInstance_M_nNameFormat() {
+        return (EAttribute)getCGIObjectInstance().getEStructuralFeatures().get(5);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getCGIObjectInstance_M_nIsNameFormat() {
+        return (EAttribute)getCGIObjectInstance().getEStructuralFeatures().get(6);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getCGIObjectInstance_Frameset() {
+        return (EAttribute)getCGIObjectInstance().getEStructuralFeatures().get(7);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getCGIObjectInstance_Compartments() {
+        return (EReference)getCGIObjectInstance().getEStructuralFeatures().get(8);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getCGIObjectInstance_M_multiplicity() {
+        return (EReference)getCGIObjectInstance().getEStructuralFeatures().get(9);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getCGIObjectInstance_Properties() {
+        return (EReference)getCGIObjectInstance().getEStructuralFeatures().get(10);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getCGIObjectInstance_Operations() {
+        return (EReference)getCGIObjectInstance().getEStructuralFeatures().get(11);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getCGIObjectInstance_Attrs() {
+        return (EReference)getCGIObjectInstance().getEStructuralFeatures().get(12);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getCGIObjectInstance_M_bFramesetModified() {
+        return (EAttribute)getCGIObjectInstance().getEStructuralFeatures().get(13);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getCGIObjectInstance_M_pImageViewData() {
+        return (EReference)getCGIObjectInstance().getEStructuralFeatures().get(14);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getCGIObjectInstance_M_bIsMisplaced() {
+        return (EAttribute)getCGIObjectInstance().getEStructuralFeatures().get(15);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EClass getCGIObjectLink() {
+		if (cgiObjectLinkEClass == null) {
+			cgiObjectLinkEClass = (EClass)EPackage.Registry.INSTANCE.getEPackage(UMLRpyPackage.eNS_URI).getEClassifiers().get(40);
+		}
+		return cgiObjectLinkEClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getCGIObjectLink_Properties() {
+        return (EReference)getCGIObjectLink().getEStructuralFeatures().get(0);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getCGIObjectLink_M_pModelObject() {
+        return (EReference)getCGIObjectLink().getEStructuralFeatures().get(1);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getCGIObjectLink_M_pParent() {
+        return (EAttribute)getCGIObjectLink().getEStructuralFeatures().get(2);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getCGIObjectLink_M_pSource() {
+        return (EReference)getCGIObjectLink().getEStructuralFeatures().get(3);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getCGIObjectLink_M_sourceType() {
+        return (EAttribute)getCGIObjectLink().getEStructuralFeatures().get(4);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getCGIObjectLink_M_pTarget() {
+        return (EReference)getCGIObjectLink().getEStructuralFeatures().get(5);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getCGIObjectLink_M_targetType() {
+        return (EAttribute)getCGIObjectLink().getEStructuralFeatures().get(6);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getCGIObjectLink_M_direction() {
+        return (EAttribute)getCGIObjectLink().getEStructuralFeatures().get(7);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getCGIObjectLink_M_rpn() {
+        return (EReference)getCGIObjectLink().getEStructuralFeatures().get(8);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getCGIObjectLink_M_arrow() {
+        return (EAttribute)getCGIObjectLink().getEStructuralFeatures().get(9);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getCGIObjectLink_M_anglePoint1() {
+        return (EAttribute)getCGIObjectLink().getEStructuralFeatures().get(10);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getCGIObjectLink_M_anglePoint2() {
+        return (EAttribute)getCGIObjectLink().getEStructuralFeatures().get(11);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getCGIObjectLink_M_line_style() {
+        return (EAttribute)getCGIObjectLink().getEStructuralFeatures().get(12);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getCGIObjectLink_M_SourcePort() {
+        return (EAttribute)getCGIObjectLink().getEStructuralFeatures().get(13);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getCGIObjectLink_M_TargetPort() {
+        return (EAttribute)getCGIObjectLink().getEStructuralFeatures().get(14);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getCGIObjectLink_M_bShowSourceMultiplicity() {
+        return (EAttribute)getCGIObjectLink().getEStructuralFeatures().get(15);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getCGIObjectLink_M_bShowSourceRole() {
+        return (EAttribute)getCGIObjectLink().getEStructuralFeatures().get(16);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getCGIObjectLink_M_bShowTargetMultiplicity() {
+        return (EAttribute)getCGIObjectLink().getEStructuralFeatures().get(17);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getCGIObjectLink_M_bShowTargetRole() {
+        return (EAttribute)getCGIObjectLink().getEStructuralFeatures().get(18);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getCGIObjectLink_M_bShowLinkName() {
+        return (EAttribute)getCGIObjectLink().getEStructuralFeatures().get(19);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getCGIObjectLink_M_sourceRole() {
+        return (EReference)getCGIObjectLink().getEStructuralFeatures().get(20);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getCGIObjectLink_M_targetRole() {
+        return (EReference)getCGIObjectLink().getEStructuralFeatures().get(21);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getCGIObjectLink_M_sourceMultiplicity() {
+        return (EReference)getCGIObjectLink().getEStructuralFeatures().get(22);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getCGIObjectLink_M_targetMultiplicity() {
+        return (EReference)getCGIObjectLink().getEStructuralFeatures().get(23);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EClass getCGIPackage() {
+		if (cgiPackageEClass == null) {
+			cgiPackageEClass = (EClass)EPackage.Registry.INSTANCE.getEPackage(UMLRpyPackage.eNS_URI).getEClassifiers().get(41);
+		}
+		return cgiPackageEClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getCGIPackage_M_pModelObject() {
+        return (EReference)getCGIPackage().getEStructuralFeatures().get(0);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getCGIPackage_M_pParent() {
+        return (EReference)getCGIPackage().getEStructuralFeatures().get(1);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getCGIPackage_M_transform() {
+        return (EAttribute)getCGIPackage().getEStructuralFeatures().get(2);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getCGIPackage_M_polygon() {
+        return (EAttribute)getCGIPackage().getEStructuralFeatures().get(3);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getCGIPackage_M_nNameFormat() {
+        return (EAttribute)getCGIPackage().getEStructuralFeatures().get(4);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getCGIPackage_M_nIsNameFormat() {
+        return (EAttribute)getCGIPackage().getEStructuralFeatures().get(5);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getCGIPackage_Compartments() {
+        return (EReference)getCGIPackage().getEStructuralFeatures().get(6);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getCGIPackage_Properties() {
+        return (EReference)getCGIPackage().getEStructuralFeatures().get(7);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getCGIPackage_M_color() {
+        return (EReference)getCGIPackage().getEStructuralFeatures().get(8);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getCGIPackage_M_lineWidth() {
+        return (EAttribute)getCGIPackage().getEStructuralFeatures().get(9);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getCGIPackage_M_AdditionalLabel() {
+        return (EReference)getCGIPackage().getEStructuralFeatures().get(10);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getCGIPackage_Frameset() {
+        return (EAttribute)getCGIPackage().getEStructuralFeatures().get(11);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getCGIPackage_M_bIsStructured() {
+        return (EAttribute)getCGIPackage().getEStructuralFeatures().get(12);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EClass getCGIPartition() {
+		if (cgiPartitionEClass == null) {
+			cgiPartitionEClass = (EClass)EPackage.Registry.INSTANCE.getEPackage(UMLRpyPackage.eNS_URI).getEClassifiers().get(42);
+		}
+		return cgiPartitionEClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getCGIPartition_M_pModelObject() {
+        return (EReference)getCGIPartition().getEStructuralFeatures().get(0);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getCGIPartition_M_pParent() {
+        return (EReference)getCGIPartition().getEStructuralFeatures().get(1);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getCGIPartition_M_polygon() {
+        return (EAttribute)getCGIPartition().getEStructuralFeatures().get(2);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getCGIPartition_M_nNameFormat() {
+        return (EAttribute)getCGIPartition().getEStructuralFeatures().get(3);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getCGIPartition_M_nIsNameFormat() {
+        return (EAttribute)getCGIPartition().getEStructuralFeatures().get(4);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getCGIPartition_Frameset() {
+        return (EAttribute)getCGIPartition().getEStructuralFeatures().get(5);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getCGIPartition_M_AdditionalLabel() {
+        return (EReference)getCGIPartition().getEStructuralFeatures().get(6);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getCGIPartition_Properties() {
+        return (EReference)getCGIPartition().getEStructuralFeatures().get(7);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getCGIPartition_Compartments() {
+        return (EReference)getCGIPartition().getEStructuralFeatures().get(8);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EClass getCGIPortConnector() {
+		if (cgiPortConnectorEClass == null) {
+			cgiPortConnectorEClass = (EClass)EPackage.Registry.INSTANCE.getEPackage(UMLRpyPackage.eNS_URI).getEClassifiers().get(43);
+		}
+		return cgiPortConnectorEClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getCGIPortConnector_M_pModelObject() {
+        return (EReference)getCGIPortConnector().getEStructuralFeatures().get(0);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getCGIPortConnector_M_pParent() {
+        return (EReference)getCGIPortConnector().getEStructuralFeatures().get(1);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getCGIPortConnector_M_transform() {
+        return (EAttribute)getCGIPortConnector().getEStructuralFeatures().get(2);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getCGIPortConnector_M_AdditionalLabel() {
+        return (EReference)getCGIPortConnector().getEStructuralFeatures().get(3);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getCGIPortConnector_M_position() {
+        return (EAttribute)getCGIPortConnector().getEStructuralFeatures().get(4);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getCGIPortConnector_M_pInheritsFrom() {
+        return (EReference)getCGIPortConnector().getEStructuralFeatures().get(5);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getCGIPortConnector_M_nInheritanceMask() {
+        return (EAttribute)getCGIPortConnector().getEStructuralFeatures().get(6);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getCGIPortConnector_M_SubType() {
+        return (EAttribute)getCGIPortConnector().getEStructuralFeatures().get(7);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getCGIPortConnector_M_providedInterfaceLabel() {
+        return (EReference)getCGIPortConnector().getEStructuralFeatures().get(8);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getCGIPortConnector_M_requiredInterfaceLabel() {
+        return (EReference)getCGIPortConnector().getEStructuralFeatures().get(9);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getCGIPortConnector_Properties() {
+        return (EReference)getCGIPortConnector().getEStructuralFeatures().get(10);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getCGIPortConnector_M_bVisible() {
+        return (EAttribute)getCGIPortConnector().getEStructuralFeatures().get(11);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getCGIPortConnector_M_nAngle() {
+        return (EAttribute)getCGIPortConnector().getEStructuralFeatures().get(12);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EClass getCGIState() {
+		if (cgiStateEClass == null) {
+			cgiStateEClass = (EClass)EPackage.Registry.INSTANCE.getEPackage(UMLRpyPackage.eNS_URI).getEClassifiers().get(44);
+		}
+		return cgiStateEClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getCGIState_M_pModelObject() {
+        return (EReference)getCGIState().getEStructuralFeatures().get(0);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getCGIState_M_AdditionalLabel() {
+        return (EReference)getCGIState().getEStructuralFeatures().get(1);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getCGIState_M_polygon() {
+        return (EAttribute)getCGIState().getEStructuralFeatures().get(2);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getCGIState_M_nNameFormat() {
+        return (EAttribute)getCGIState().getEStructuralFeatures().get(3);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getCGIState_M_nIsNameFormat() {
+        return (EAttribute)getCGIState().getEStructuralFeatures().get(4);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getCGIState_NAndLineCount() {
+        return (EAttribute)getCGIState().getEStructuralFeatures().get(5);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getCGIState_M_nInheritanceMask() {
+        return (EAttribute)getCGIState().getEStructuralFeatures().get(6);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getCGIState_M_pDefaultComponentRelation() {
+        return (EAttribute)getCGIState().getEStructuralFeatures().get(7);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getCGIState_Properties() {
+        return (EReference)getCGIState().getEStructuralFeatures().get(8);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getCGIState_M_pParent() {
+        return (EReference)getCGIState().getEStructuralFeatures().get(9);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getCGIState_M_transform() {
+        return (EAttribute)getCGIState().getEStructuralFeatures().get(10);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getCGIState_AndLinePoly() {
+        return (EAttribute)getCGIState().getEStructuralFeatures().get(11);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getCGIState_M_pVirtualParent() {
+        return (EReference)getCGIState().getEStructuralFeatures().get(12);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getCGIState_M_moveAndLineTimeStamp() {
+        return (EAttribute)getCGIState().getEStructuralFeatures().get(13);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getCGIState_MyState() {
+        return (EAttribute)getCGIState().getEStructuralFeatures().get(14);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getCGIState_M_pInheritsFrom() {
+        return (EReference)getCGIState().getEStructuralFeatures().get(15);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getCGIState_Frameset() {
+        return (EAttribute)getCGIState().getEStructuralFeatures().get(16);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getCGIState_M_bFramesetModified() {
+        return (EAttribute)getCGIState().getEStructuralFeatures().get(17);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getCGIState_M_bIsMisplaced() {
+        return (EAttribute)getCGIState().getEStructuralFeatures().get(18);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getCGIState_M_color() {
+        return (EReference)getCGIState().getEStructuralFeatures().get(19);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getCGIState_M_lineWidth() {
+        return (EAttribute)getCGIState().getEStructuralFeatures().get(20);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getCGIState_Compartments() {
+        return (EReference)getCGIState().getEStructuralFeatures().get(21);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EClass getCGIStateChart() {
+		if (cgiStateChartEClass == null) {
+			cgiStateChartEClass = (EClass)EPackage.Registry.INSTANCE.getEPackage(UMLRpyPackage.eNS_URI).getEClassifiers().get(45);
+		}
+		return cgiStateChartEClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getCGIStateChart_M_pModelObject() {
+        return (EReference)getCGIStateChart().getEStructuralFeatures().get(0);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getCGIStateChart_M_pRoot() {
+        return (EReference)getCGIStateChart().getEStructuralFeatures().get(1);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getCGIStateChart_MyState() {
+        return (EAttribute)getCGIStateChart().getEStructuralFeatures().get(2);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getCGIStateChart_M_pInheritsFrom() {
+        return (EReference)getCGIStateChart().getEStructuralFeatures().get(3);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getCGIStateChart_DiagramList() {
+        return (EReference)getCGIStateChart().getEStructuralFeatures().get(4);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getCGIStateChart_Properties() {
+        return (EReference)getCGIStateChart().getEStructuralFeatures().get(5);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EClass getCGISwimlaneFrame() {
+		if (cgiSwimlaneFrameEClass == null) {
+			cgiSwimlaneFrameEClass = (EClass)EPackage.Registry.INSTANCE.getEPackage(UMLRpyPackage.eNS_URI).getEClassifiers().get(46);
+		}
+		return cgiSwimlaneFrameEClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getCGISwimlaneFrame_M_pModelObject() {
+        return (EReference)getCGISwimlaneFrame().getEStructuralFeatures().get(0);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getCGISwimlaneFrame_M_pParent() {
+        return (EReference)getCGISwimlaneFrame().getEStructuralFeatures().get(1);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getCGISwimlaneFrame_M_polygon() {
+        return (EAttribute)getCGISwimlaneFrame().getEStructuralFeatures().get(2);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getCGISwimlaneFrame_M_nNameFormat() {
+        return (EAttribute)getCGISwimlaneFrame().getEStructuralFeatures().get(3);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getCGISwimlaneFrame_M_nIsNameFormat() {
+        return (EAttribute)getCGISwimlaneFrame().getEStructuralFeatures().get(4);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getCGISwimlaneFrame_Frameset() {
+        return (EAttribute)getCGISwimlaneFrame().getEStructuralFeatures().get(5);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getCGISwimlaneFrame_M_transform() {
+        return (EAttribute)getCGISwimlaneFrame().getEStructuralFeatures().get(6);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getCGISwimlaneFrame_M_bFramesetModified() {
+        return (EAttribute)getCGISwimlaneFrame().getEStructuralFeatures().get(7);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getCGISwimlaneFrame_Compartments() {
+        return (EReference)getCGISwimlaneFrame().getEStructuralFeatures().get(8);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EClass getCGIText() {
+		if (cgiTextEClass == null) {
+			cgiTextEClass = (EClass)EPackage.Registry.INSTANCE.getEPackage(UMLRpyPackage.eNS_URI).getEClassifiers().get(47);
+		}
+		return cgiTextEClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getCGIText_M_str() {
+        return (EAttribute)getCGIText().getEStructuralFeatures().get(0);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getCGIText_M_style() {
+        return (EAttribute)getCGIText().getEStructuralFeatures().get(1);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getCGIText_M_color() {
+        return (EReference)getCGIText().getEStructuralFeatures().get(2);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getCGIText_M_position() {
+        return (EAttribute)getCGIText().getEStructuralFeatures().get(3);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getCGIText_M_nIdent() {
+        return (EAttribute)getCGIText().getEStructuralFeatures().get(4);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getCGIText_M_bImplicitSetRectPoints() {
+        return (EAttribute)getCGIText().getEStructuralFeatures().get(5);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getCGIText_M_nOrientationCtrlPt() {
+        return (EAttribute)getCGIText().getEStructuralFeatures().get(6);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getCGIText_M_nVerticalSpacing() {
+        return (EAttribute)getCGIText().getEStructuralFeatures().get(7);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getCGIText_M_nHorizontalSpacing() {
+        return (EAttribute)getCGIText().getEStructuralFeatures().get(8);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getCGIText_M_transform() {
+        return (EAttribute)getCGIText().getEStructuralFeatures().get(9);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EClass getCGITextBox() {
+		if (cgiTextBoxEClass == null) {
+			cgiTextBoxEClass = (EClass)EPackage.Registry.INSTANCE.getEPackage(UMLRpyPackage.eNS_URI).getEClassifiers().get(48);
+		}
+		return cgiTextBoxEClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getCGITextBox_Properties() {
+        return (EReference)getCGITextBox().getEStructuralFeatures().get(0);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getCGITextBox_M_pModelObject() {
+        return (EReference)getCGITextBox().getEStructuralFeatures().get(1);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getCGITextBox_M_pParent() {
+        return (EReference)getCGITextBox().getEStructuralFeatures().get(2);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getCGITextBox_M_transform() {
+        return (EAttribute)getCGITextBox().getEStructuralFeatures().get(3);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getCGITextBox_M_polygon() {
+        return (EAttribute)getCGITextBox().getEStructuralFeatures().get(4);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getCGITextBox_M_nNameFormat() {
+        return (EAttribute)getCGITextBox().getEStructuralFeatures().get(5);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getCGITextBox_M_nIsNameFormat() {
+        return (EAttribute)getCGITextBox().getEStructuralFeatures().get(6);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getCGITextBox_Compartments() {
+        return (EReference)getCGITextBox().getEStructuralFeatures().get(7);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getCGITextBox_M_csModelObjPath() {
+        return (EAttribute)getCGITextBox().getEStructuralFeatures().get(8);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getCGITextBox_M_csName() {
+        return (EAttribute)getCGITextBox().getEStructuralFeatures().get(9);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getCGITextBox_M_PartsArray() {
+        return (EReference)getCGITextBox().getEStructuralFeatures().get(10);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EClass getCGITrans() {
+		if (cgiTransEClass == null) {
+			cgiTransEClass = (EClass)EPackage.Registry.INSTANCE.getEPackage(UMLRpyPackage.eNS_URI).getEClassifiers().get(49);
+		}
+		return cgiTransEClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getCGITrans_Properties() {
+        return (EReference)getCGITrans().getEStructuralFeatures().get(0);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getCGITrans_M_pModelObject() {
+        return (EReference)getCGITrans().getEStructuralFeatures().get(1);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getCGITrans_M_pParent() {
+        return (EAttribute)getCGITrans().getEStructuralFeatures().get(2);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getCGITrans_M_pSource() {
+        return (EReference)getCGITrans().getEStructuralFeatures().get(3);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getCGITrans_M_sourceType() {
+        return (EAttribute)getCGITrans().getEStructuralFeatures().get(4);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getCGITrans_M_pTarget() {
+        return (EReference)getCGITrans().getEStructuralFeatures().get(5);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getCGITrans_M_targetType() {
+        return (EAttribute)getCGITrans().getEStructuralFeatures().get(6);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getCGITrans_M_direction() {
+        return (EAttribute)getCGITrans().getEStructuralFeatures().get(7);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getCGITrans_M_rpn() {
+        return (EReference)getCGITrans().getEStructuralFeatures().get(8);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getCGITrans_M_anglePoint1() {
+        return (EAttribute)getCGITrans().getEStructuralFeatures().get(9);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getCGITrans_M_anglePoint2() {
+        return (EAttribute)getCGITrans().getEStructuralFeatures().get(10);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getCGITrans_M_line_style() {
+        return (EAttribute)getCGITrans().getEStructuralFeatures().get(11);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getCGITrans_M_SourcePort() {
+        return (EAttribute)getCGITrans().getEStructuralFeatures().get(12);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getCGITrans_M_TargetPort() {
+        return (EAttribute)getCGITrans().getEStructuralFeatures().get(13);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getCGITrans_M_nInheritanceMask() {
+        return (EAttribute)getCGITrans().getEStructuralFeatures().get(14);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getCGITrans_M_bShowName() {
+        return (EAttribute)getCGITrans().getEStructuralFeatures().get(15);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getCGITrans_M_arrow() {
+        return (EAttribute)getCGITrans().getEStructuralFeatures().get(16);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getCGITrans_MyState() {
+        return (EAttribute)getCGITrans().getEStructuralFeatures().get(17);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getCGITrans_M_pInheritsFrom() {
+        return (EReference)getCGITrans().getEStructuralFeatures().get(18);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getCGITrans_M_color() {
+        return (EReference)getCGITrans().getEStructuralFeatures().get(19);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getCGITrans_M_lineWidth() {
+        return (EAttribute)getCGITrans().getEStructuralFeatures().get(20);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EClass getCollEvent() {
+		if (collEventEClass == null) {
+			collEventEClass = (EClass)EPackage.Registry.INSTANCE.getEPackage(UMLRpyPackage.eNS_URI).getEClassifiers().get(50);
+		}
+		return collEventEClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getCollEvent_Id() {
+        return (EAttribute)getCollEvent().getEStructuralFeatures().get(0);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getCollEvent_First() {
+        return (EAttribute)getCollEvent().getEStructuralFeatures().get(1);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getCollEvent_Second() {
+        return (EReference)getCollEvent().getEStructuralFeatures().get(2);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getCollEvent_ObjectCreation() {
+        return (EAttribute)getCollEvent().getEStructuralFeatures().get(3);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getCollEvent_UmlDependencyID() {
+        return (EAttribute)getCollEvent().getEStructuralFeatures().get(4);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EClass getCompartmentsType() {
+		if (compartmentsTypeEClass == null) {
+			compartmentsTypeEClass = (EClass)EPackage.Registry.INSTANCE.getEPackage(UMLRpyPackage.eNS_URI).getEClassifiers().get(51);
+		}
+		return compartmentsTypeEClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EClass getComponentsType() {
+		if (componentsTypeEClass == null) {
+			componentsTypeEClass = (EClass)EPackage.Registry.INSTANCE.getEPackage(UMLRpyPackage.eNS_URI).getEClassifiers().get(52);
+		}
+		return componentsTypeEClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EClass getConveyedType() {
+		if (conveyedTypeEClass == null) {
+			conveyedTypeEClass = (EClass)EPackage.Registry.INSTANCE.getEPackage(UMLRpyPackage.eNS_URI).getEClassifiers().get(53);
+		}
+		return conveyedTypeEClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getConveyedType_LastID() {
+        return (EAttribute)getConveyedType().getEStructuralFeatures().get(0);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EClass getDeclarativesType() {
+		if (declarativesTypeEClass == null) {
+			declarativesTypeEClass = (EClass)EPackage.Registry.INSTANCE.getEPackage(UMLRpyPackage.eNS_URI).getEClassifiers().get(54);
+		}
+		return declarativesTypeEClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EClass getDefaultSubsystemType() {
+		if (defaultSubsystemTypeEClass == null) {
+			defaultSubsystemTypeEClass = (EClass)EPackage.Registry.INSTANCE.getEPackage(UMLRpyPackage.eNS_URI).getEClassifiers().get(55);
+		}
+		return defaultSubsystemTypeEClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EClass getDefaultTransType() {
+		if (defaultTransTypeEClass == null) {
+			defaultTransTypeEClass = (EClass)EPackage.Registry.INSTANCE.getEPackage(UMLRpyPackage.eNS_URI).getEClassifiers().get(56);
+		}
+		return defaultTransTypeEClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EClass getDependsOnType() {
+		if (dependsOnTypeEClass == null) {
+			dependsOnTypeEClass = (EClass)EPackage.Registry.INSTANCE.getEPackage(UMLRpyPackage.eNS_URI).getEClassifiers().get(57);
+		}
+		return dependsOnTypeEClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EClass getDescriptionType() {
+		if (descriptionTypeEClass == null) {
+			descriptionTypeEClass = (EClass)EPackage.Registry.INSTANCE.getEPackage(UMLRpyPackage.eNS_URI).getEClassifiers().get(58);
+		}
+		return descriptionTypeEClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EClass getElementsType() {
+		if (elementsTypeEClass == null) {
+			elementsTypeEClass = (EClass)EPackage.Registry.INSTANCE.getEPackage(UMLRpyPackage.eNS_URI).getEClassifiers().get(59);
+		}
+		return elementsTypeEClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EClass getEmbededFilesType() {
+		if (embededFilesTypeEClass == null) {
+			embededFilesTypeEClass = (EClass)EPackage.Registry.INSTANCE.getEPackage(UMLRpyPackage.eNS_URI).getEClassifiers().get(60);
+		}
+		return embededFilesTypeEClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EClass getEnd1_Type() {
+		if (end1_TypeEClass == null) {
+			end1_TypeEClass = (EClass)EPackage.Registry.INSTANCE.getEPackage(UMLRpyPackage.eNS_URI).getEClassifiers().get(61);
+		}
+		return end1_TypeEClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EClass getEnd2_Type() {
+		if (end2_TypeEClass == null) {
+			end2_TypeEClass = (EClass)EPackage.Registry.INSTANCE.getEPackage(UMLRpyPackage.eNS_URI).getEClassifiers().get(62);
+		}
+		return end2_TypeEClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getEnd2_Type_Multiplicity() {
+        return (EAttribute)getEnd2_Type().getEStructuralFeatures().get(0);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EClass getFilesType() {
+		if (filesTypeEClass == null) {
+			filesTypeEClass = (EClass)EPackage.Registry.INSTANCE.getEPackage(UMLRpyPackage.eNS_URI).getEClassifiers().get(63);
+		}
+		return filesTypeEClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getFilesType_ModifiedTimeWeak() {
+        return (EAttribute)getFilesType().getEStructuralFeatures().get(0);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getFilesType_Id() {
+        return (EAttribute)getFilesType().getEStructuralFeatures().get(1);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getFilesType_UmlDependencyID() {
+        return (EAttribute)getFilesType().getEStructuralFeatures().get(2);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getFilesType_LastID() {
+        return (EAttribute)getFilesType().getEStructuralFeatures().get(3);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getFilesType_MyState() {
+        return (EAttribute)getFilesType().getEStructuralFeatures().get(4);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getFilesType_M_path() {
+        return (EAttribute)getFilesType().getEStructuralFeatures().get(5);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getFilesType_ObjectCreation() {
+        return (EAttribute)getFilesType().getEStructuralFeatures().get(6);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getFilesType_Name() {
+        return (EAttribute)getFilesType().getEStructuralFeatures().get(7);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EClass getFromLinkType() {
+		if (fromLinkTypeEClass == null) {
+			fromLinkTypeEClass = (EClass)EPackage.Registry.INSTANCE.getEPackage(UMLRpyPackage.eNS_URI).getEClassifiers().get(64);
+		}
+		return fromLinkTypeEClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EClass getGraphElementsType() {
+		if (graphElementsTypeEClass == null) {
+			graphElementsTypeEClass = (EClass)EPackage.Registry.INSTANCE.getEPackage(UMLRpyPackage.eNS_URI).getEClassifiers().get(65);
+		}
+		return graphElementsTypeEClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getGraphElementsType_Id() {
+        return (EAttribute)getGraphElementsType().getEStructuralFeatures().get(0);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getGraphElementsType_M_drawBehavior() {
+        return (EAttribute)getGraphElementsType().getEStructuralFeatures().get(1);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getGraphElementsType_M_type() {
+        return (EAttribute)getGraphElementsType().getEStructuralFeatures().get(2);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getGraphElementsType_M_name() {
+        return (EReference)getGraphElementsType().getEStructuralFeatures().get(3);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getGraphElementsType_M_bIsPreferencesInitialized() {
+        return (EAttribute)getGraphElementsType().getEStructuralFeatures().get(4);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EClass getGraphicChartType() {
+		if (graphicChartTypeEClass == null) {
+			graphicChartTypeEClass = (EClass)EPackage.Registry.INSTANCE.getEPackage(UMLRpyPackage.eNS_URI).getEClassifiers().get(66);
+		}
+		return graphicChartTypeEClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getGraphicChartType_Id() {
+        return (EAttribute)getGraphicChartType().getEStructuralFeatures().get(0);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getGraphicChartType_M_access() {
+        return (EAttribute)getGraphicChartType().getEStructuralFeatures().get(1);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getGraphicChartType_ElementList() {
+        return (EAttribute)getGraphicChartType().getEStructuralFeatures().get(2);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getGraphicChartType_M_nModifyDate() {
+        return (EAttribute)getGraphicChartType().getEStructuralFeatures().get(3);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getGraphicChartType_M_currentLeftTop() {
+        return (EAttribute)getGraphicChartType().getEStructuralFeatures().get(4);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getGraphicChartType_M_modified() {
+        return (EAttribute)getGraphicChartType().getEStructuralFeatures().get(5);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getGraphicChartType_M_nCreateDate() {
+        return (EAttribute)getGraphicChartType().getEStructuralFeatures().get(6);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getGraphicChartType_M_pParent() {
+        return (EAttribute)getGraphicChartType().getEStructuralFeatures().get(7);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getGraphicChartType_M_arrowStyle() {
+        return (EAttribute)getGraphicChartType().getEStructuralFeatures().get(8);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getGraphicChartType_M_drawBehavior() {
+        return (EAttribute)getGraphicChartType().getEStructuralFeatures().get(9);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getGraphicChartType_M_currentRightBottom() {
+        return (EAttribute)getGraphicChartType().getEStructuralFeatures().get(10);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getGraphicChartType_M_creator() {
+        return (EAttribute)getGraphicChartType().getEStructuralFeatures().get(11);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getGraphicChartType_M_bScaleWithZoom() {
+        return (EAttribute)getGraphicChartType().getEStructuralFeatures().get(12);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getGraphicChartType_M_type() {
+        return (EAttribute)getGraphicChartType().getEStructuralFeatures().get(13);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getGraphicChartType_GraphElements() {
+        return (EReference)getGraphicChartType().getEStructuralFeatures().get(14);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getGraphicChartType_M_name() {
+        return (EReference)getGraphicChartType().getEStructuralFeatures().get(15);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getGraphicChartType_M_fileVersion() {
+        return (EAttribute)getGraphicChartType().getEStructuralFeatures().get(16);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getGraphicChartType_M_bIsPreferencesInitialized() {
+        return (EAttribute)getGraphicChartType().getEStructuralFeatures().get(17);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EClass getHyperLinksType() {
+		if (hyperLinksTypeEClass == null) {
+			hyperLinksTypeEClass = (EClass)EPackage.Registry.INSTANCE.getEPackage(UMLRpyPackage.eNS_URI).getEClassifiers().get(67);
+		}
+		return hyperLinksTypeEClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EClass getIAcceptEventAction() {
+		if (iAcceptEventActionEClass == null) {
+			iAcceptEventActionEClass = (EClass)EPackage.Registry.INSTANCE.getEPackage(UMLRpyPackage.eNS_URI).getEClassifiers().get(68);
+		}
+		return iAcceptEventActionEClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getIAcceptEventAction_Event() {
+        return (EReference)getIAcceptEventAction().getEStructuralFeatures().get(0);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EClass getIAcceptTimeEvent() {
+		if (iAcceptTimeEventEClass == null) {
+			iAcceptTimeEventEClass = (EClass)EPackage.Registry.INSTANCE.getEPackage(UMLRpyPackage.eNS_URI).getEClassifiers().get(69);
+		}
+		return iAcceptTimeEventEClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EClass getIAction() {
+		if (iActionEClass == null) {
+			iActionEClass = (EClass)EPackage.Registry.INSTANCE.getEPackage(UMLRpyPackage.eNS_URI).getEClassifiers().get(70);
+		}
+		return iActionEClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIAction_Id() {
+        return (EAttribute)getIAction().getEStructuralFeatures().get(0);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIAction_MyState() {
+        return (EAttribute)getIAction().getEStructuralFeatures().get(1);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIAction_Body() {
+        return (EAttribute)getIAction().getEStructuralFeatures().get(2);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIAction_ModifiedTimeWeak() {
+        return (EAttribute)getIAction().getEStructuralFeatures().get(3);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIAction_ObjectCreation() {
+        return (EAttribute)getIAction().getEStructuralFeatures().get(4);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIAction_UmlDependencyID() {
+        return (EAttribute)getIAction().getEStructuralFeatures().get(5);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EClass getIActivityDiagram() {
+		if (iActivityDiagramEClass == null) {
+			iActivityDiagramEClass = (EClass)EPackage.Registry.INSTANCE.getEPackage(UMLRpyPackage.eNS_URI).getEClassifiers().get(71);
+		}
+		return iActivityDiagramEClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getIActivityDiagram_GraphicChart() {
+        return (EReference)getIActivityDiagram().getEStructuralFeatures().get(0);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIActivityDiagram_CodeUpdateCGTime() {
+        return (EAttribute)getIActivityDiagram().getEStructuralFeatures().get(1);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EClass getIActivityGraph() {
+		if (iActivityGraphEClass == null) {
+			iActivityGraphEClass = (EClass)EPackage.Registry.INSTANCE.getEPackage(UMLRpyPackage.eNS_URI).getEClassifiers().get(72);
+		}
+		return iActivityGraphEClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIActivityGraph_LastID() {
+        return (EAttribute)getIActivityGraph().getEStructuralFeatures().get(0);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIActivityGraph_WeakCGTime() {
+        return (EAttribute)getIActivityGraph().getEStructuralFeatures().get(1);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIActivityGraph_StrongCGTime() {
+        return (EAttribute)getIActivityGraph().getEStructuralFeatures().get(2);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIActivityGraph_Multiplicity() {
+        return (EAttribute)getIActivityGraph().getEStructuralFeatures().get(3);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getIActivityGraph_ItsStateChart() {
+        return (EReference)getIActivityGraph().getEStructuralFeatures().get(4);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIActivityGraph_ClassModifier() {
+        return (EAttribute)getIActivityGraph().getEStructuralFeatures().get(5);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getIActivityGraph_States() {
+        return (EReference)getIActivityGraph().getEStructuralFeatures().get(6);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIActivityGraph_BaseVersion() {
+        return (EAttribute)getIActivityGraph().getEStructuralFeatures().get(7);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getIActivityGraph_Diagram() {
+        return (EReference)getIActivityGraph().getEStructuralFeatures().get(8);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getIActivityGraph_Views() {
+        return (EReference)getIActivityGraph().getEStructuralFeatures().get(9);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getIActivityGraph_Properties() {
+        return (EReference)getIActivityGraph().getEStructuralFeatures().get(10);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIActivityGraph_RequiremenTracabilityHandle() {
+        return (EAttribute)getIActivityGraph().getEStructuralFeatures().get(11);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getIActivityGraph_Description() {
+        return (EReference)getIActivityGraph().getEStructuralFeatures().get(12);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getIActivityGraph_Swimlanes() {
+        return (EReference)getIActivityGraph().getEStructuralFeatures().get(13);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getIActivityGraph_Stereotypes() {
+        return (EReference)getIActivityGraph().getEStructuralFeatures().get(14);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIActivityGraph_AnalysisMode() {
+        return (EAttribute)getIActivityGraph().getEStructuralFeatures().get(15);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getIActivityGraph_Annotations() {
+        return (EReference)getIActivityGraph().getEStructuralFeatures().get(16);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIActivityGraph_CodeUpdateCGTime() {
+        return (EAttribute)getIActivityGraph().getEStructuralFeatures().get(17);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIActivityGraph_ObjectCreation() {
+        return (EAttribute)getIActivityGraph().getEStructuralFeatures().get(18);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIActivityGraph_UmlDependencyID() {
+        return (EAttribute)getIActivityGraph().getEStructuralFeatures().get(19);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getIActivityGraph_HyperLinks() {
+        return (EReference)getIActivityGraph().getEStructuralFeatures().get(20);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getIActivityGraph_Dependencies() {
+        return (EReference)getIActivityGraph().getEStructuralFeatures().get(21);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getIActivityGraph_TheMainDiagram() {
+        return (EReference)getIActivityGraph().getEStructuralFeatures().get(22);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getIActivityGraph_Associations() {
+        return (EReference)getIActivityGraph().getEStructuralFeatures().get(23);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getIActivityGraph_Tags() {
+        return (EReference)getIActivityGraph().getEStructuralFeatures().get(24);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EClass getIActor() {
+		if (iActorEClass == null) {
+			iActorEClass = (EClass)EPackage.Registry.INSTANCE.getEPackage(UMLRpyPackage.eNS_URI).getEClassifiers().get(73);
+		}
+		return iActorEClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIActor_Id() {
+        return (EAttribute)getIActor().getEStructuralFeatures().get(0);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIActor_MyState() {
+        return (EAttribute)getIActor().getEStructuralFeatures().get(1);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIActor_Name() {
+        return (EAttribute)getIActor().getEStructuralFeatures().get(2);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getIActor_TheMainDiagram() {
+        return (EReference)getIActor().getEStructuralFeatures().get(3);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getIActor_Dependencies() {
+        return (EReference)getIActor().getEStructuralFeatures().get(4);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIActor_LastID() {
+        return (EAttribute)getIActor().getEStructuralFeatures().get(5);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIActor_WeakCGTime() {
+        return (EAttribute)getIActor().getEStructuralFeatures().get(6);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIActor_StrongCGTime() {
+        return (EAttribute)getIActor().getEStructuralFeatures().get(7);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getIActor_Operations() {
+        return (EReference)getIActor().getEStructuralFeatures().get(8);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getIActor_StateCharts() {
+        return (EReference)getIActor().getEStructuralFeatures().get(9);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getIActor_ItsStateChart() {
+        return (EReference)getIActor().getEStructuralFeatures().get(10);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getIActor_Associations() {
+        return (EReference)getIActor().getEStructuralFeatures().get(11);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIActor_ClassModifier() {
+        return (EAttribute)getIActor().getEStructuralFeatures().get(12);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getIActor_HyperLinks() {
+        return (EReference)getIActor().getEStructuralFeatures().get(13);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIActor_ModifiedTimeWeak() {
+        return (EAttribute)getIActor().getEStructuralFeatures().get(14);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getIActor_Ports() {
+        return (EReference)getIActor().getEStructuralFeatures().get(15);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getIActor_Inheritances() {
+        return (EReference)getIActor().getEStructuralFeatures().get(16);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getIActor_Attrs() {
+        return (EReference)getIActor().getEStructuralFeatures().get(17);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIActor_RequiremenTracabilityHandle() {
+        return (EAttribute)getIActor().getEStructuralFeatures().get(18);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getIActor_Description() {
+        return (EReference)getIActor().getEStructuralFeatures().get(19);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getIActor_Annotations() {
+        return (EReference)getIActor().getEStructuralFeatures().get(20);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getIActor_ComponentFiles() {
+        return (EReference)getIActor().getEStructuralFeatures().get(21);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getIActor_Properties() {
+        return (EReference)getIActor().getEStructuralFeatures().get(22);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EClass getIAnchor() {
+		if (iAnchorEClass == null) {
+			iAnchorEClass = (EClass)EPackage.Registry.INSTANCE.getEPackage(UMLRpyPackage.eNS_URI).getEClassifiers().get(74);
+		}
+		return iAnchorEClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIAnchor_Id() {
+        return (EAttribute)getIAnchor().getEStructuralFeatures().get(0);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIAnchor_MyState() {
+        return (EAttribute)getIAnchor().getEStructuralFeatures().get(1);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIAnchor_Name() {
+        return (EAttribute)getIAnchor().getEStructuralFeatures().get(2);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getIAnchor_DependsOn() {
+        return (EReference)getIAnchor().getEStructuralFeatures().get(3);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIAnchor_ModifiedTimeWeak() {
+        return (EAttribute)getIAnchor().getEStructuralFeatures().get(4);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EClass getIAnnotation() {
+		if (iAnnotationEClass == null) {
+			iAnnotationEClass = (EClass)EPackage.Registry.INSTANCE.getEPackage(UMLRpyPackage.eNS_URI).getEClassifiers().get(75);
+		}
+		return iAnnotationEClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIAnnotation_RequiremenTracabilityHandle() {
+        return (EAttribute)getIAnnotation().getEStructuralFeatures().get(0);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getIAnnotation_Description() {
+        return (EReference)getIAnnotation().getEStructuralFeatures().get(1);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIAnnotation_UmlDependencyID() {
+        return (EAttribute)getIAnnotation().getEStructuralFeatures().get(2);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIAnnotation_ObjectCreation() {
+        return (EAttribute)getIAnnotation().getEStructuralFeatures().get(3);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getIAnnotation_Tags() {
+        return (EReference)getIAnnotation().getEStructuralFeatures().get(4);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIAnnotation_Body() {
+        return (EAttribute)getIAnnotation().getEStructuralFeatures().get(5);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EClass getIArgument() {
+		if (iArgumentEClass == null) {
+			iArgumentEClass = (EClass)EPackage.Registry.INSTANCE.getEPackage(UMLRpyPackage.eNS_URI).getEClassifiers().get(76);
+		}
+		return iArgumentEClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIArgument_Id() {
+        return (EAttribute)getIArgument().getEStructuralFeatures().get(0);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIArgument_MyState() {
+        return (EAttribute)getIArgument().getEStructuralFeatures().get(1);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getIArgument_Properties() {
+        return (EReference)getIArgument().getEStructuralFeatures().get(2);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIArgument_Name() {
+        return (EAttribute)getIArgument().getEStructuralFeatures().get(3);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIArgument_ModifiedTimeWeak() {
+        return (EAttribute)getIArgument().getEStructuralFeatures().get(4);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getIArgument_TypeOf() {
+        return (EReference)getIArgument().getEStructuralFeatures().get(5);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIArgument_ArgumentDirection() {
+        return (EAttribute)getIArgument().getEStructuralFeatures().get(6);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIArgument_DefaultValue() {
+        return (EAttribute)getIArgument().getEStructuralFeatures().get(7);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getIArgument_ValueSpecifications() {
+        return (EReference)getIArgument().getEStructuralFeatures().get(8);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getIArgument_Description() {
+        return (EReference)getIArgument().getEStructuralFeatures().get(9);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIArgument_CodeUpdateCGTime() {
+        return (EAttribute)getIArgument().getEStructuralFeatures().get(10);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIArgument_ObjectCreation() {
+        return (EAttribute)getIArgument().getEStructuralFeatures().get(11);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIArgument_UmlDependencyID() {
+        return (EAttribute)getIArgument().getEStructuralFeatures().get(12);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EClass getIAssociationClass() {
+		if (iAssociationClassEClass == null) {
+			iAssociationClassEClass = (EClass)EPackage.Registry.INSTANCE.getEPackage(UMLRpyPackage.eNS_URI).getEClassifiers().get(77);
+		}
+		return iAssociationClassEClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIAssociationClass_IsClass() {
+        return (EAttribute)getIAssociationClass().getEStructuralFeatures().get(0);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getIAssociationClass_M_end1() {
+        return (EReference)getIAssociationClass().getEStructuralFeatures().get(1);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getIAssociationClass_M_end2() {
+        return (EReference)getIAssociationClass().getEStructuralFeatures().get(2);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EClass getIAssociationEnd() {
+		if (iAssociationEndEClass == null) {
+			iAssociationEndEClass = (EClass)EPackage.Registry.INSTANCE.getEPackage(UMLRpyPackage.eNS_URI).getEClassifiers().get(78);
+		}
+		return iAssociationEndEClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIAssociationEnd_Id() {
+        return (EAttribute)getIAssociationEnd().getEStructuralFeatures().get(0);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIAssociationEnd_MyState() {
+        return (EAttribute)getIAssociationEnd().getEStructuralFeatures().get(1);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIAssociationEnd_Name() {
+        return (EAttribute)getIAssociationEnd().getEStructuralFeatures().get(2);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIAssociationEnd_Multiplicity() {
+        return (EAttribute)getIAssociationEnd().getEStructuralFeatures().get(3);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getIAssociationEnd_OtherClass() {
+        return (EReference)getIAssociationEnd().getEStructuralFeatures().get(4);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIAssociationEnd_LinkName() {
+        return (EAttribute)getIAssociationEnd().getEStructuralFeatures().get(5);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIAssociationEnd_LinkType() {
+        return (EAttribute)getIAssociationEnd().getEStructuralFeatures().get(6);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIAssociationEnd_Navigability() {
+        return (EAttribute)getIAssociationEnd().getEStructuralFeatures().get(7);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getIAssociationEnd_Inverse() {
+        return (EReference)getIAssociationEnd().getEStructuralFeatures().get(8);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIAssociationEnd_ModifiedTimeWeak() {
+        return (EAttribute)getIAssociationEnd().getEStructuralFeatures().get(9);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getIAssociationEnd_Qualifiers() {
+        return (EReference)getIAssociationEnd().getEStructuralFeatures().get(10);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getIAssociationEnd_Stereotypes() {
+        return (EReference)getIAssociationEnd().getEStructuralFeatures().get(11);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIAssociationEnd_CodeUpdateCGTime() {
+        return (EAttribute)getIAssociationEnd().getEStructuralFeatures().get(12);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getIAssociationEnd_QualifierType() {
+        return (EReference)getIAssociationEnd().getEStructuralFeatures().get(13);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getIAssociationEnd_M_associationClass() {
+        return (EReference)getIAssociationEnd().getEStructuralFeatures().get(14);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EClass getIAssociationEndHandle() {
+		if (iAssociationEndHandleEClass == null) {
+			iAssociationEndHandleEClass = (EClass)EPackage.Registry.INSTANCE.getEPackage(UMLRpyPackage.eNS_URI).getEClassifiers().get(79);
+		}
+		return iAssociationEndHandleEClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIAssociationEndHandle_M2Class() {
+        return (EAttribute)getIAssociationEndHandle().getEStructuralFeatures().get(0);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIAssociationEndHandle_Filename() {
+        return (EAttribute)getIAssociationEndHandle().getEStructuralFeatures().get(1);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIAssociationEndHandle_Subsystem() {
+        return (EAttribute)getIAssociationEndHandle().getEStructuralFeatures().get(2);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIAssociationEndHandle_Class() {
+        return (EAttribute)getIAssociationEndHandle().getEStructuralFeatures().get(3);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIAssociationEndHandle_Name() {
+        return (EAttribute)getIAssociationEndHandle().getEStructuralFeatures().get(4);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIAssociationEndHandle_Id() {
+        return (EAttribute)getIAssociationEndHandle().getEStructuralFeatures().get(5);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EClass getIAssociationRole() {
+		if (iAssociationRoleEClass == null) {
+			iAssociationRoleEClass = (EClass)EPackage.Registry.INSTANCE.getEPackage(UMLRpyPackage.eNS_URI).getEClassifiers().get(80);
+		}
+		return iAssociationRoleEClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIAssociationRole_Id() {
+        return (EAttribute)getIAssociationRole().getEStructuralFeatures().get(0);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIAssociationRole_MyState() {
+        return (EAttribute)getIAssociationRole().getEStructuralFeatures().get(1);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIAssociationRole_M_fAssocType1() {
+        return (EAttribute)getIAssociationRole().getEStructuralFeatures().get(2);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIAssociationRole_M_fAssocType2() {
+        return (EAttribute)getIAssociationRole().getEStructuralFeatures().get(3);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getIAssociationRole_M_pSource() {
+        return (EReference)getIAssociationRole().getEStructuralFeatures().get(4);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getIAssociationRole_M_pTarget() {
+        return (EReference)getIAssociationRole().getEStructuralFeatures().get(5);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getIAssociationRole_M_pFormalAssoc1() {
+        return (EReference)getIAssociationRole().getEStructuralFeatures().get(6);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getIAssociationRole_M_pFormalAssoc2() {
+        return (EReference)getIAssociationRole().getEStructuralFeatures().get(7);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIAssociationRole_Name() {
+        return (EAttribute)getIAssociationRole().getEStructuralFeatures().get(8);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIAssociationRole_ModifiedTimeWeak() {
+        return (EAttribute)getIAssociationRole().getEStructuralFeatures().get(9);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIAssociationRole_ObjectCreation() {
+        return (EAttribute)getIAssociationRole().getEStructuralFeatures().get(10);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIAssociationRole_UmlDependencyID() {
+        return (EAttribute)getIAssociationRole().getEStructuralFeatures().get(11);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EClass getIAttribute() {
+		if (iAttributeEClass == null) {
+			iAttributeEClass = (EClass)EPackage.Registry.INSTANCE.getEPackage(UMLRpyPackage.eNS_URI).getEClassifiers().get(81);
+		}
+		return iAttributeEClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getIAttribute_TypeOf() {
+        return (EReference)getIAttribute().getEStructuralFeatures().get(0);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIAttribute_Protection() {
+        return (EAttribute)getIAttribute().getEStructuralFeatures().get(1);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIAttribute_Static() {
+        return (EAttribute)getIAttribute().getEStructuralFeatures().get(2);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIAttribute_IsReference() {
+        return (EAttribute)getIAttribute().getEStructuralFeatures().get(3);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIAttribute_IsConstant() {
+        return (EAttribute)getIAttribute().getEStructuralFeatures().get(4);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getIAttribute_Stereotypes() {
+        return (EReference)getIAttribute().getEStructuralFeatures().get(5);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getIAttribute_ValueSpecifications() {
+        return (EReference)getIAttribute().getEStructuralFeatures().get(6);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getIAttribute_Properties() {
+        return (EReference)getIAttribute().getEStructuralFeatures().get(7);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getIAttribute_Description() {
+        return (EReference)getIAttribute().getEStructuralFeatures().get(8);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getIAttribute_Tags() {
+        return (EReference)getIAttribute().getEStructuralFeatures().get(9);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIAttribute_DefaultValue() {
+        return (EAttribute)getIAttribute().getEStructuralFeatures().get(10);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getIAttribute_Dependencies() {
+        return (EReference)getIAttribute().getEStructuralFeatures().get(11);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIAttribute_LastID() {
+        return (EAttribute)getIAttribute().getEStructuralFeatures().get(12);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getIAttribute_Annotations() {
+        return (EReference)getIAttribute().getEStructuralFeatures().get(13);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIAttribute_RequiremenTracabilityHandle() {
+        return (EAttribute)getIAttribute().getEStructuralFeatures().get(14);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIAttribute_CodeUpdateCGTime() {
+        return (EAttribute)getIAttribute().getEStructuralFeatures().get(15);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getIAttribute_TheMainDiagram() {
+        return (EReference)getIAttribute().getEStructuralFeatures().get(16);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EClass getIBlock() {
+		if (iBlockEClass == null) {
+			iBlockEClass = (EClass)EPackage.Registry.INSTANCE.getEPackage(UMLRpyPackage.eNS_URI).getEClassifiers().get(82);
+		}
+		return iBlockEClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIBlock_Id() {
+        return (EAttribute)getIBlock().getEStructuralFeatures().get(0);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIBlock_MyState() {
+        return (EAttribute)getIBlock().getEStructuralFeatures().get(1);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIBlock_Name() {
+        return (EAttribute)getIBlock().getEStructuralFeatures().get(2);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIBlock_ObjectCreation() {
+        return (EAttribute)getIBlock().getEStructuralFeatures().get(3);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIBlock_UmlDependencyID() {
+        return (EAttribute)getIBlock().getEStructuralFeatures().get(4);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getIBlock_OtherClass() {
+        return (EReference)getIBlock().getEStructuralFeatures().get(5);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getIBlock_Inverse() {
+        return (EReference)getIBlock().getEStructuralFeatures().get(6);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIBlock_PartKind() {
+        return (EAttribute)getIBlock().getEStructuralFeatures().get(7);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EClass getIBody() {
+		if (iBodyEClass == null) {
+			iBodyEClass = (EClass)EPackage.Registry.INSTANCE.getEPackage(UMLRpyPackage.eNS_URI).getEClassifiers().get(83);
+		}
+		return iBodyEClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIBody_BodyData() {
+        return (EAttribute)getIBody().getEStructuralFeatures().get(0);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EClass getIBranch() {
+		if (iBranchEClass == null) {
+			iBranchEClass = (EClass)EPackage.Registry.INSTANCE.getEPackage(UMLRpyPackage.eNS_URI).getEClassifiers().get(84);
+		}
+		return iBranchEClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIBranch_Id() {
+        return (EAttribute)getIBranch().getEStructuralFeatures().get(0);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIBranch_Name() {
+        return (EAttribute)getIBranch().getEStructuralFeatures().get(1);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIBranch_ModifiedTimeWeak() {
+        return (EAttribute)getIBranch().getEStructuralFeatures().get(2);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getIBranch_Parent() {
+        return (EReference)getIBranch().getEStructuralFeatures().get(3);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIBranch_ConnectorType() {
+        return (EAttribute)getIBranch().getEStructuralFeatures().get(4);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIBranch_MyState() {
+        return (EAttribute)getIBranch().getEStructuralFeatures().get(5);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getIBranch_Stereotypes() {
+        return (EReference)getIBranch().getEStructuralFeatures().get(6);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIBranch_CodeUpdateCGTime() {
+        return (EAttribute)getIBranch().getEStructuralFeatures().get(7);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIBranch_ObjectCreation() {
+        return (EAttribute)getIBranch().getEStructuralFeatures().get(8);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIBranch_UmlDependencyID() {
+        return (EAttribute)getIBranch().getEStructuralFeatures().get(9);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EClass getICallAction() {
+		if (iCallActionEClass == null) {
+			iCallActionEClass = (EClass)EPackage.Registry.INSTANCE.getEPackage(UMLRpyPackage.eNS_URI).getEClassifiers().get(85);
+		}
+		return iCallActionEClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getICallAction_Id() {
+        return (EAttribute)getICallAction().getEStructuralFeatures().get(0);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getICallAction_ModifiedTimeWeak() {
+        return (EAttribute)getICallAction().getEStructuralFeatures().get(1);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getICallAction_InterfaceItem() {
+        return (EReference)getICallAction().getEStructuralFeatures().get(2);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getICallAction_ArgumentNames() {
+        return (EAttribute)getICallAction().getEStructuralFeatures().get(3);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getICallAction_ArgumentValues() {
+        return (EAttribute)getICallAction().getEStructuralFeatures().get(4);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EClass getICallOperation() {
+		if (iCallOperationEClass == null) {
+			iCallOperationEClass = (EClass)EPackage.Registry.INSTANCE.getEPackage(UMLRpyPackage.eNS_URI).getEClassifiers().get(86);
+		}
+		return iCallOperationEClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getICallOperation_Operation() {
+        return (EReference)getICallOperation().getEStructuralFeatures().get(0);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getICallOperation_Target() {
+        return (EReference)getICallOperation().getEStructuralFeatures().get(1);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EClass getIClass() {
+		if (iClassEClass == null) {
+			iClassEClass = (EClass)EPackage.Registry.INSTANCE.getEPackage(UMLRpyPackage.eNS_URI).getEClassifiers().get(87);
+		}
+		return iClassEClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIClass_WeakCGTime() {
+        return (EAttribute)getIClass().getEStructuralFeatures().get(0);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIClass_StrongCGTime() {
+        return (EAttribute)getIClass().getEStructuralFeatures().get(1);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIClass_Multiplicity() {
+        return (EAttribute)getIClass().getEStructuralFeatures().get(2);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIClass_ClassModifier() {
+        return (EAttribute)getIClass().getEStructuralFeatures().get(3);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getIClass_Properties() {
+        return (EReference)getIClass().getEStructuralFeatures().get(4);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getIClass_Stereotypes() {
+        return (EReference)getIClass().getEStructuralFeatures().get(5);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getIClass_Operations() {
+        return (EReference)getIClass().getEStructuralFeatures().get(6);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getIClass_Inheritances() {
+        return (EReference)getIClass().getEStructuralFeatures().get(7);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getIClass_TheMainDiagram() {
+        return (EReference)getIClass().getEStructuralFeatures().get(8);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getIClass_Attrs() {
+        return (EReference)getIClass().getEStructuralFeatures().get(9);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getIClass_Tags() {
+        return (EReference)getIClass().getEStructuralFeatures().get(10);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getIClass_Associations() {
+        return (EReference)getIClass().getEStructuralFeatures().get(11);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getIClass_Dependencies() {
+        return (EReference)getIClass().getEStructuralFeatures().get(12);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getIClass_Ports() {
+        return (EReference)getIClass().getEStructuralFeatures().get(13);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getIClass_ObjectLinks() {
+        return (EReference)getIClass().getEStructuralFeatures().get(14);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getIClass_StateCharts() {
+        return (EReference)getIClass().getEStructuralFeatures().get(15);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getIClass_ItsStateChart() {
+        return (EReference)getIClass().getEStructuralFeatures().get(16);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getIClass_TriggeredOperations() {
+        return (EReference)getIClass().getEStructuralFeatures().get(17);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getIClass_Receptions() {
+        return (EReference)getIClass().getEStructuralFeatures().get(18);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getIClass_PrimitiveOperations() {
+        return (EReference)getIClass().getEStructuralFeatures().get(19);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getIClass_Annotations() {
+        return (EReference)getIClass().getEStructuralFeatures().get(20);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getIClass_Description() {
+        return (EReference)getIClass().getEStructuralFeatures().get(21);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getIClass_Declaratives() {
+        return (EReference)getIClass().getEStructuralFeatures().get(22);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getIClass_AssociationElements() {
+        return (EReference)getIClass().getEStructuralFeatures().get(23);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getIClass_OwnerHandle() {
+        return (EReference)getIClass().getEStructuralFeatures().get(24);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getIClass_HyperLinks() {
+        return (EReference)getIClass().getEStructuralFeatures().get(25);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIClass_RequiremenTracabilityHandle() {
+        return (EAttribute)getIClass().getEStructuralFeatures().get(26);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getIClass_ComponentFiles() {
+        return (EReference)getIClass().getEStructuralFeatures().get(27);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getIClass_Links() {
+        return (EReference)getIClass().getEStructuralFeatures().get(28);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getIClass_Components() {
+        return (EReference)getIClass().getEStructuralFeatures().get(29);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getIClass_EventHandles() {
+        return (EReference)getIClass().getEStructuralFeatures().get(30);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getIClass_TemplateParameters() {
+        return (EReference)getIClass().getEStructuralFeatures().get(31);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIClass_CodeUpdateCGTime() {
+        return (EAttribute)getIClass().getEStructuralFeatures().get(32);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIClass_Cmheader() {
+        return (EAttribute)getIClass().getEStructuralFeatures().get(33);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EClass getIClassHandle() {
+		if (iClassHandleEClass == null) {
+			iClassHandleEClass = (EClass)EPackage.Registry.INSTANCE.getEPackage(UMLRpyPackage.eNS_URI).getEClassifiers().get(88);
+		}
+		return iClassHandleEClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIClassHandle_M2Class() {
+        return (EAttribute)getIClassHandle().getEStructuralFeatures().get(0);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIClassHandle_Id() {
+        return (EAttribute)getIClassHandle().getEStructuralFeatures().get(1);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIClassHandle_Filename() {
+        return (EAttribute)getIClassHandle().getEStructuralFeatures().get(2);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIClassHandle_Subsystem() {
+        return (EAttribute)getIClassHandle().getEStructuralFeatures().get(3);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIClassHandle_Class() {
+        return (EAttribute)getIClassHandle().getEStructuralFeatures().get(4);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIClassHandle_Name() {
+        return (EAttribute)getIClassHandle().getEStructuralFeatures().get(5);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EClass getIClassInstance() {
+		if (iClassInstanceEClass == null) {
+			iClassInstanceEClass = (EClass)EPackage.Registry.INSTANCE.getEPackage(UMLRpyPackage.eNS_URI).getEClassifiers().get(89);
+		}
+		return iClassInstanceEClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getIClassInstance_Inverse() {
+        return (EReference)getIClassInstance().getEStructuralFeatures().get(0);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EClass getIClassifier() {
+		if (iClassifierEClass == null) {
+			iClassifierEClass = (EClass)EPackage.Registry.INSTANCE.getEPackage(UMLRpyPackage.eNS_URI).getEClassifiers().get(90);
+		}
+		return iClassifierEClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EClass getIClassifierRole() {
+		if (iClassifierRoleEClass == null) {
+			iClassifierRoleEClass = (EClass)EPackage.Registry.INSTANCE.getEPackage(UMLRpyPackage.eNS_URI).getEClassifiers().get(91);
+		}
+		return iClassifierRoleEClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIClassifierRole_Id() {
+        return (EAttribute)getIClassifierRole().getEStructuralFeatures().get(0);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIClassifierRole_Name() {
+        return (EAttribute)getIClassifierRole().getEStructuralFeatures().get(1);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIClassifierRole_M_eRoleType() {
+        return (EAttribute)getIClassifierRole().getEStructuralFeatures().get(2);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIClassifierRole_MyState() {
+        return (EAttribute)getIClassifierRole().getEStructuralFeatures().get(3);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getIClassifierRole_M_pBase() {
+        return (EReference)getIClassifierRole().getEStructuralFeatures().get(4);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getIClassifierRole_M_instance() {
+        return (EReference)getIClassifierRole().getEStructuralFeatures().get(5);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getIClassifierRole_Properties() {
+        return (EReference)getIClassifierRole().getEStructuralFeatures().get(6);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIClassifierRole_ModifiedTimeWeak() {
+        return (EAttribute)getIClassifierRole().getEStructuralFeatures().get(7);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getIClassifierRole_M_pRefSD() {
+        return (EReference)getIClassifierRole().getEStructuralFeatures().get(8);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIClassifierRole_CodeUpdateCGTime() {
+        return (EAttribute)getIClassifierRole().getEStructuralFeatures().get(9);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getIClassifierRole_Stereotypes() {
+        return (EReference)getIClassifierRole().getEStructuralFeatures().get(10);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIClassifierRole_ObjectCreation() {
+        return (EAttribute)getIClassifierRole().getEStructuralFeatures().get(11);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIClassifierRole_UmlDependencyID() {
+        return (EAttribute)getIClassifierRole().getEStructuralFeatures().get(12);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EClass getICodeGenConfigInfo() {
+		if (iCodeGenConfigInfoEClass == null) {
+			iCodeGenConfigInfoEClass = (EClass)EPackage.Registry.INSTANCE.getEPackage(UMLRpyPackage.eNS_URI).getEClassifiers().get(92);
+		}
+		return iCodeGenConfigInfoEClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getICodeGenConfigInfo_Id() {
+        return (EAttribute)getICodeGenConfigInfo().getEStructuralFeatures().get(0);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getICodeGenConfigInfo_MyState() {
+        return (EAttribute)getICodeGenConfigInfo().getEStructuralFeatures().get(1);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getICodeGenConfigInfo_Name() {
+        return (EAttribute)getICodeGenConfigInfo().getEStructuralFeatures().get(2);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getICodeGenConfigInfo_ModifiedTimeWeak() {
+        return (EAttribute)getICodeGenConfigInfo().getEStructuralFeatures().get(3);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getICodeGenConfigInfo_HyperLinks() {
+        return (EReference)getICodeGenConfigInfo().getEStructuralFeatures().get(4);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getICodeGenConfigInfo_ScopeType() {
+        return (EAttribute)getICodeGenConfigInfo().getEStructuralFeatures().get(5);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getICodeGenConfigInfo_Libraries() {
+        return (EAttribute)getICodeGenConfigInfo().getEStructuralFeatures().get(6);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getICodeGenConfigInfo_AdditionalSources() {
+        return (EAttribute)getICodeGenConfigInfo().getEStructuralFeatures().get(7);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getICodeGenConfigInfo_StandardHeaders() {
+        return (EAttribute)getICodeGenConfigInfo().getEStructuralFeatures().get(8);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getICodeGenConfigInfo_IncludePath() {
+        return (EAttribute)getICodeGenConfigInfo().getEStructuralFeatures().get(9);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getICodeGenConfigInfo_TargetMain() {
+        return (EAttribute)getICodeGenConfigInfo().getEStructuralFeatures().get(10);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getICodeGenConfigInfo_Instrumentation() {
+        return (EAttribute)getICodeGenConfigInfo().getEStructuralFeatures().get(11);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getICodeGenConfigInfo_TimeModel() {
+        return (EAttribute)getICodeGenConfigInfo().getEStructuralFeatures().get(12);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getICodeGenConfigInfo_M_generateActors() {
+        return (EAttribute)getICodeGenConfigInfo().getEStructuralFeatures().get(13);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getICodeGenConfigInfo_StatechartImplementation() {
+        return (EAttribute)getICodeGenConfigInfo().getEStructuralFeatures().get(14);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getICodeGenConfigInfo_InitializationCode() {
+        return (EAttribute)getICodeGenConfigInfo().getEStructuralFeatures().get(15);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getICodeGenConfigInfo_ChecksList() {
+        return (EAttribute)getICodeGenConfigInfo().getEStructuralFeatures().get(16);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getICodeGenConfigInfo_ScopeElements() {
+        return (EReference)getICodeGenConfigInfo().getEStructuralFeatures().get(17);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getICodeGenConfigInfo_Root() {
+        return (EReference)getICodeGenConfigInfo().getEStructuralFeatures().get(18);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getICodeGenConfigInfo_WeakCGTime() {
+        return (EAttribute)getICodeGenConfigInfo().getEStructuralFeatures().get(19);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getICodeGenConfigInfo_StrongCGTime() {
+        return (EAttribute)getICodeGenConfigInfo().getEStructuralFeatures().get(20);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getICodeGenConfigInfo_M_allInAnimScope() {
+        return (EAttribute)getICodeGenConfigInfo().getEStructuralFeatures().get(21);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getICodeGenConfigInfo_M_generateUsecases() {
+        return (EAttribute)getICodeGenConfigInfo().getEStructuralFeatures().get(22);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getICodeGenConfigInfo_Dependencies() {
+        return (EReference)getICodeGenConfigInfo().getEStructuralFeatures().get(23);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getICodeGenConfigInfo_InitialInstances() {
+        return (EReference)getICodeGenConfigInfo().getEStructuralFeatures().get(24);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getICodeGenConfigInfo_Properties() {
+        return (EReference)getICodeGenConfigInfo().getEStructuralFeatures().get(25);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getICodeGenConfigInfo_Annotations() {
+        return (EReference)getICodeGenConfigInfo().getEStructuralFeatures().get(26);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getICodeGenConfigInfo_LastID() {
+        return (EAttribute)getICodeGenConfigInfo().getEStructuralFeatures().get(27);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getICodeGenConfigInfo_Description() {
+        return (EReference)getICodeGenConfigInfo().getEStructuralFeatures().get(28);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getICodeGenConfigInfo_Tags() {
+        return (EReference)getICodeGenConfigInfo().getEStructuralFeatures().get(29);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getICodeGenConfigInfo_Cmheader() {
+        return (EAttribute)getICodeGenConfigInfo().getEStructuralFeatures().get(30);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getICodeGenConfigInfo_RequiremenTracabilityHandle() {
+        return (EAttribute)getICodeGenConfigInfo().getEStructuralFeatures().get(31);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getICodeGenConfigInfo_Stereotypes() {
+        return (EReference)getICodeGenConfigInfo().getEStructuralFeatures().get(32);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getICodeGenConfigInfo_CodeUpdateCGTime() {
+        return (EAttribute)getICodeGenConfigInfo().getEStructuralFeatures().get(33);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getICodeGenConfigInfo_AnimScopeElements() {
+        return (EReference)getICodeGenConfigInfo().getEStructuralFeatures().get(34);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getICodeGenConfigInfo_EmbededFiles() {
+        return (EReference)getICodeGenConfigInfo().getEStructuralFeatures().get(35);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getICodeGenConfigInfo_ObjectCreation() {
+        return (EAttribute)getICodeGenConfigInfo().getEStructuralFeatures().get(36);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getICodeGenConfigInfo_UmlDependencyID() {
+        return (EAttribute)getICodeGenConfigInfo().getEStructuralFeatures().get(37);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EClass getICodeGenConfigInfoHandle() {
+		if (iCodeGenConfigInfoHandleEClass == null) {
+			iCodeGenConfigInfoHandleEClass = (EClass)EPackage.Registry.INSTANCE.getEPackage(UMLRpyPackage.eNS_URI).getEClassifiers().get(93);
+		}
+		return iCodeGenConfigInfoHandleEClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getICodeGenConfigInfoHandle_M2Class() {
+        return (EAttribute)getICodeGenConfigInfoHandle().getEStructuralFeatures().get(0);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getICodeGenConfigInfoHandle_Id() {
+        return (EAttribute)getICodeGenConfigInfoHandle().getEStructuralFeatures().get(1);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EClass getICollaboration() {
+		if (iCollaborationEClass == null) {
+			iCollaborationEClass = (EClass)EPackage.Registry.INSTANCE.getEPackage(UMLRpyPackage.eNS_URI).getEClassifiers().get(94);
+		}
+		return iCollaborationEClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getICollaboration_Id() {
+        return (EAttribute)getICollaboration().getEStructuralFeatures().get(0);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getICollaboration_ClassifierRoles() {
+        return (EReference)getICollaboration().getEStructuralFeatures().get(1);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getICollaboration_Messages() {
+        return (EReference)getICollaboration().getEStructuralFeatures().get(2);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getICollaboration_Annotations() {
+        return (EReference)getICollaboration().getEStructuralFeatures().get(3);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getICollaboration_AssociationRoles() {
+        return (EReference)getICollaboration().getEStructuralFeatures().get(4);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getICollaboration_ModifiedTimeWeak() {
+        return (EAttribute)getICollaboration().getEStructuralFeatures().get(5);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getICollaboration_CombinedFragments() {
+        return (EReference)getICollaboration().getEStructuralFeatures().get(6);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getICollaboration_P_MessageHandler() {
+        return (EReference)getICollaboration().getEStructuralFeatures().get(7);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getICollaboration_InteractionOccurrences() {
+        return (EReference)getICollaboration().getEStructuralFeatures().get(8);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getICollaboration_ExecutionOccurrences() {
+        return (EReference)getICollaboration().getEStructuralFeatures().get(9);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getICollaboration_ObjectCreation() {
+        return (EAttribute)getICollaboration().getEStructuralFeatures().get(10);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getICollaboration_UmlDependencyID() {
+        return (EAttribute)getICollaboration().getEStructuralFeatures().get(11);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EClass getICollaborationDiagram() {
+		if (iCollaborationDiagramEClass == null) {
+			iCollaborationDiagramEClass = (EClass)EPackage.Registry.INSTANCE.getEPackage(UMLRpyPackage.eNS_URI).getEClassifiers().get(95);
+		}
+		return iCollaborationDiagramEClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getICollaborationDiagram_M_pICollaboration() {
+        return (EReference)getICollaborationDiagram().getEStructuralFeatures().get(0);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EClass getIColor() {
+		if (iColorEClass == null) {
+			iColorEClass = (EClass)EPackage.Registry.INSTANCE.getEPackage(UMLRpyPackage.eNS_URI).getEClassifiers().get(96);
+		}
+		return iColorEClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIColor_M_fgColor() {
+        return (EAttribute)getIColor().getEStructuralFeatures().get(0);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIColor_M_bgColor() {
+        return (EAttribute)getIColor().getEStructuralFeatures().get(1);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIColor_M_bgFlag() {
+        return (EAttribute)getIColor().getEStructuralFeatures().get(2);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EClass getICombinedFragment() {
+		if (iCombinedFragmentEClass == null) {
+			iCombinedFragmentEClass = (EClass)EPackage.Registry.INSTANCE.getEPackage(UMLRpyPackage.eNS_URI).getEClassifiers().get(97);
+		}
+		return iCombinedFragmentEClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getICombinedFragment_Id() {
+        return (EAttribute)getICombinedFragment().getEStructuralFeatures().get(0);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getICombinedFragment_MyState() {
+        return (EAttribute)getICombinedFragment().getEStructuralFeatures().get(1);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getICombinedFragment_Name() {
+        return (EAttribute)getICombinedFragment().getEStructuralFeatures().get(2);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getICombinedFragment_ModifiedTimeWeak() {
+        return (EAttribute)getICombinedFragment().getEStructuralFeatures().get(3);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getICombinedFragment_InteractionOperator() {
+        return (EAttribute)getICombinedFragment().getEStructuralFeatures().get(4);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getICombinedFragment_InteractionOperands() {
+        return (EReference)getICombinedFragment().getEStructuralFeatures().get(5);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getICombinedFragment_Stereotypes() {
+        return (EReference)getICombinedFragment().getEStructuralFeatures().get(6);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getICombinedFragment_Tags() {
+        return (EReference)getICombinedFragment().getEStructuralFeatures().get(7);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EClass getIComment() {
+		if (iCommentEClass == null) {
+			iCommentEClass = (EClass)EPackage.Registry.INSTANCE.getEPackage(UMLRpyPackage.eNS_URI).getEClassifiers().get(98);
+		}
+		return iCommentEClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getIComment_HyperLinks() {
+        return (EReference)getIComment().getEStructuralFeatures().get(0);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getIComment_Anchors() {
+        return (EReference)getIComment().getEStructuralFeatures().get(1);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getIComment_Dependencies() {
+        return (EReference)getIComment().getEStructuralFeatures().get(2);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getIComment_Stereotypes() {
+        return (EReference)getIComment().getEStructuralFeatures().get(3);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIComment_LastID() {
+        return (EAttribute)getIComment().getEStructuralFeatures().get(4);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIComment_CodeUpdateCGTime() {
+        return (EAttribute)getIComment().getEStructuralFeatures().get(5);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getIComment_TheMainDiagram() {
+        return (EReference)getIComment().getEStructuralFeatures().get(6);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getIComment_Properties() {
+        return (EReference)getIComment().getEStructuralFeatures().get(7);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EClass getIComponent() {
+		if (iComponentEClass == null) {
+			iComponentEClass = (EClass)EPackage.Registry.INSTANCE.getEPackage(UMLRpyPackage.eNS_URI).getEClassifiers().get(99);
+		}
+		return iComponentEClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getIComponent_OwnerHandle() {
+        return (EReference)getIComponent().getEStructuralFeatures().get(0);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIComponent_Id() {
+        return (EAttribute)getIComponent().getEStructuralFeatures().get(1);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIComponent_MyState() {
+        return (EAttribute)getIComponent().getEStructuralFeatures().get(2);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIComponent_Name() {
+        return (EAttribute)getIComponent().getEStructuralFeatures().get(3);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getIComponent_Stereotypes() {
+        return (EReference)getIComponent().getEStructuralFeatures().get(4);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIComponent_ModifiedTimeWeak() {
+        return (EAttribute)getIComponent().getEStructuralFeatures().get(5);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIComponent_M_buildType() {
+        return (EAttribute)getIComponent().getEStructuralFeatures().get(6);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIComponent_M_libraries() {
+        return (EAttribute)getIComponent().getEStructuralFeatures().get(7);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIComponent_M_additionalSources() {
+        return (EAttribute)getIComponent().getEStructuralFeatures().get(8);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIComponent_M_standardHeaders() {
+        return (EAttribute)getIComponent().getEStructuralFeatures().get(9);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIComponent_M_includePath() {
+        return (EAttribute)getIComponent().getEStructuralFeatures().get(10);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIComponent_M_initializationCode() {
+        return (EAttribute)getIComponent().getEStructuralFeatures().get(11);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getIComponent_M_folder() {
+        return (EReference)getIComponent().getEStructuralFeatures().get(12);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getIComponent_M_configActive() {
+        return (EReference)getIComponent().getEStructuralFeatures().get(13);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getIComponent_Configs() {
+        return (EReference)getIComponent().getEStructuralFeatures().get(14);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getIComponent_Dependencies() {
+        return (EReference)getIComponent().getEStructuralFeatures().get(15);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getIComponent_HandlesInMe() {
+        return (EReference)getIComponent().getEStructuralFeatures().get(16);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getIComponent_Properties() {
+        return (EReference)getIComponent().getEStructuralFeatures().get(17);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIComponent_LastID() {
+        return (EAttribute)getIComponent().getEStructuralFeatures().get(18);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getIComponent_Description() {
+        return (EReference)getIComponent().getEStructuralFeatures().get(19);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIComponent_RequiremenTracabilityHandle() {
+        return (EAttribute)getIComponent().getEStructuralFeatures().get(20);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getIComponent_HyperLinks() {
+        return (EReference)getIComponent().getEStructuralFeatures().get(21);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIComponent_CodeUpdateCGTime() {
+        return (EAttribute)getIComponent().getEStructuralFeatures().get(22);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getIComponent_Declaratives() {
+        return (EReference)getIComponent().getEStructuralFeatures().get(23);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getIComponent_VariationPoints() {
+        return (EReference)getIComponent().getEStructuralFeatures().get(24);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getIComponent_SelectedVariants() {
+        return (EReference)getIComponent().getEStructuralFeatures().get(25);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIComponent_ObjectCreation() {
+        return (EAttribute)getIComponent().getEStructuralFeatures().get(26);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIComponent_UmlDependencyID() {
+        return (EAttribute)getIComponent().getEStructuralFeatures().get(27);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIComponent_Cmheader() {
+        return (EAttribute)getIComponent().getEStructuralFeatures().get(28);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EClass getIComponentDiagram() {
+		if (iComponentDiagramEClass == null) {
+			iComponentDiagramEClass = (EClass)EPackage.Registry.INSTANCE.getEPackage(UMLRpyPackage.eNS_URI).getEClassifiers().get(100);
+		}
+		return iComponentDiagramEClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EClass getIComponentInstance() {
+		if (iComponentInstanceEClass == null) {
+			iComponentInstanceEClass = (EClass)EPackage.Registry.INSTANCE.getEPackage(UMLRpyPackage.eNS_URI).getEClassifiers().get(101);
+		}
+		return iComponentInstanceEClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EClass getIConfiguration() {
+		if (iConfigurationEClass == null) {
+			iConfigurationEClass = (EClass)EPackage.Registry.INSTANCE.getEPackage(UMLRpyPackage.eNS_URI).getEClassifiers().get(102);
+		}
+		return iConfigurationEClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EClass getIConnector() {
+		if (iConnectorEClass == null) {
+			iConnectorEClass = (EClass)EPackage.Registry.INSTANCE.getEPackage(UMLRpyPackage.eNS_URI).getEClassifiers().get(103);
+		}
+		return iConnectorEClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getIConnector_Parent() {
+        return (EReference)getIConnector().getEStructuralFeatures().get(0);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIConnector_ConnectorType() {
+        return (EAttribute)getIConnector().getEStructuralFeatures().get(1);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EClass getIConstraint() {
+		if (iConstraintEClass == null) {
+			iConstraintEClass = (EClass)EPackage.Registry.INSTANCE.getEPackage(UMLRpyPackage.eNS_URI).getEClassifiers().get(104);
+		}
+		return iConstraintEClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIConstraint_Id() {
+        return (EAttribute)getIConstraint().getEStructuralFeatures().get(0);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIConstraint_MyState() {
+        return (EAttribute)getIConstraint().getEStructuralFeatures().get(1);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIConstraint_Name() {
+        return (EAttribute)getIConstraint().getEStructuralFeatures().get(2);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIConstraint_ModifiedTimeWeak() {
+        return (EAttribute)getIConstraint().getEStructuralFeatures().get(3);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getIConstraint_Stereotypes() {
+        return (EReference)getIConstraint().getEStructuralFeatures().get(4);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getIConstraint_Properties() {
+        return (EReference)getIConstraint().getEStructuralFeatures().get(5);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getIConstraint_Anchors() {
+        return (EReference)getIConstraint().getEStructuralFeatures().get(6);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EClass getIConstructor() {
+		if (iConstructorEClass == null) {
+			iConstructorEClass = (EClass)EPackage.Registry.INSTANCE.getEPackage(UMLRpyPackage.eNS_URI).getEClassifiers().get(105);
+		}
+		return iConstructorEClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIConstructor_Id() {
+        return (EAttribute)getIConstructor().getEStructuralFeatures().get(0);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIConstructor_MyState() {
+        return (EAttribute)getIConstructor().getEStructuralFeatures().get(1);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIConstructor_ModifiedTimeWeak() {
+        return (EAttribute)getIConstructor().getEStructuralFeatures().get(2);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getIConstructor_ReturnType() {
+        return (EReference)getIConstructor().getEStructuralFeatures().get(3);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIConstructor_Abstract() {
+        return (EAttribute)getIConstructor().getEStructuralFeatures().get(4);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIConstructor_Final() {
+        return (EAttribute)getIConstructor().getEStructuralFeatures().get(5);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIConstructor_Concurrency() {
+        return (EAttribute)getIConstructor().getEStructuralFeatures().get(6);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIConstructor_Protection() {
+        return (EAttribute)getIConstructor().getEStructuralFeatures().get(7);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIConstructor_Static() {
+        return (EAttribute)getIConstructor().getEStructuralFeatures().get(8);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIConstructor_Constant() {
+        return (EAttribute)getIConstructor().getEStructuralFeatures().get(9);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getIConstructor_ItsBody() {
+        return (EReference)getIConstructor().getEStructuralFeatures().get(10);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIConstructor_Initializer() {
+        return (EAttribute)getIConstructor().getEStructuralFeatures().get(11);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getIConstructor_Args() {
+        return (EReference)getIConstructor().getEStructuralFeatures().get(12);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIConstructor_Name() {
+        return (EAttribute)getIConstructor().getEStructuralFeatures().get(13);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getIConstructor_Description() {
+        return (EReference)getIConstructor().getEStructuralFeatures().get(14);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIConstructor_RequiremenTracabilityHandle() {
+        return (EAttribute)getIConstructor().getEStructuralFeatures().get(15);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIConstructor_CodeUpdateCGTime() {
+        return (EAttribute)getIConstructor().getEStructuralFeatures().get(16);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getIConstructor_Tags() {
+        return (EReference)getIConstructor().getEStructuralFeatures().get(17);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIConstructor_LastID() {
+        return (EAttribute)getIConstructor().getEStructuralFeatures().get(18);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EClass getIContextSpecification() {
+		if (iContextSpecificationEClass == null) {
+			iContextSpecificationEClass = (EClass)EPackage.Registry.INSTANCE.getEPackage(UMLRpyPackage.eNS_URI).getEClassifiers().get(106);
+		}
+		return iContextSpecificationEClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EClass getIControlledFile() {
+		if (iControlledFileEClass == null) {
+			iControlledFileEClass = (EClass)EPackage.Registry.INSTANCE.getEPackage(UMLRpyPackage.eNS_URI).getEClassifiers().get(107);
+		}
+		return iControlledFileEClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EClass getIDefaultDrvdTrans() {
+		if (iDefaultDrvdTransEClass == null) {
+			iDefaultDrvdTransEClass = (EClass)EPackage.Registry.INSTANCE.getEPackage(UMLRpyPackage.eNS_URI).getEClassifiers().get(108);
+		}
+		return iDefaultDrvdTransEClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIDefaultDrvdTrans_ItsSource() {
+        return (EAttribute)getIDefaultDrvdTrans().getEStructuralFeatures().get(0);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getIDefaultDrvdTrans_OfState() {
+        return (EReference)getIDefaultDrvdTrans().getEStructuralFeatures().get(1);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIDefaultDrvdTrans_ErrorStatus() {
+        return (EAttribute)getIDefaultDrvdTrans().getEStructuralFeatures().get(2);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getIDefaultDrvdTrans_InheritsFromHandle() {
+        return (EReference)getIDefaultDrvdTrans().getEStructuralFeatures().get(3);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getIDefaultDrvdTrans_Annotations() {
+        return (EReference)getIDefaultDrvdTrans().getEStructuralFeatures().get(4);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getIDefaultDrvdTrans_Stereotypes() {
+        return (EReference)getIDefaultDrvdTrans().getEStructuralFeatures().get(5);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EClass getIDependency() {
+		if (iDependencyEClass == null) {
+			iDependencyEClass = (EClass)EPackage.Registry.INSTANCE.getEPackage(UMLRpyPackage.eNS_URI).getEClassifiers().get(109);
+		}
+		return iDependencyEClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIDependency_Id() {
+        return (EAttribute)getIDependency().getEStructuralFeatures().get(0);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIDependency_MyState() {
+        return (EAttribute)getIDependency().getEStructuralFeatures().get(1);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getIDependency_Properties() {
+        return (EReference)getIDependency().getEStructuralFeatures().get(2);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIDependency_Name() {
+        return (EAttribute)getIDependency().getEStructuralFeatures().get(3);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getIDependency_Stereotypes() {
+        return (EReference)getIDependency().getEStructuralFeatures().get(4);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIDependency_ModifiedTimeWeak() {
+        return (EAttribute)getIDependency().getEStructuralFeatures().get(5);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getIDependency_DependsOn() {
+        return (EReference)getIDependency().getEStructuralFeatures().get(6);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getIDependency_Tags() {
+        return (EReference)getIDependency().getEStructuralFeatures().get(7);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getIDependency_Annotations() {
+        return (EReference)getIDependency().getEStructuralFeatures().get(8);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getIDependency_Dependencies() {
+        return (EReference)getIDependency().getEStructuralFeatures().get(9);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getIDependency_Description() {
+        return (EReference)getIDependency().getEStructuralFeatures().get(10);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIDependency_RequiremenTracabilityHandle() {
+        return (EAttribute)getIDependency().getEStructuralFeatures().get(11);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIDependency_CodeUpdateCGTime() {
+        return (EAttribute)getIDependency().getEStructuralFeatures().get(12);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EClass getIDeploymentDiagram() {
+		if (iDeploymentDiagramEClass == null) {
+			iDeploymentDiagramEClass = (EClass)EPackage.Registry.INSTANCE.getEPackage(UMLRpyPackage.eNS_URI).getEClassifiers().get(110);
+		}
+		return iDeploymentDiagramEClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EClass getIDescription() {
+		if (iDescriptionEClass == null) {
+			iDescriptionEClass = (EClass)EPackage.Registry.INSTANCE.getEPackage(UMLRpyPackage.eNS_URI).getEClassifiers().get(111);
+		}
+		return iDescriptionEClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIDescription_TextRTF() {
+        return (EAttribute)getIDescription().getEStructuralFeatures().get(0);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIDescription_Text() {
+        return (EAttribute)getIDescription().getEStructuralFeatures().get(1);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getIDescription_Hyperlinks() {
+        return (EReference)getIDescription().getEStructuralFeatures().get(2);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EClass getIDestructor() {
+		if (iDestructorEClass == null) {
+			iDestructorEClass = (EClass)EPackage.Registry.INSTANCE.getEPackage(UMLRpyPackage.eNS_URI).getEClassifiers().get(112);
+		}
+		return iDestructorEClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIDestructor_Id() {
+        return (EAttribute)getIDestructor().getEStructuralFeatures().get(0);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIDestructor_Name() {
+        return (EAttribute)getIDestructor().getEStructuralFeatures().get(1);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getIDestructor_Args() {
+        return (EReference)getIDestructor().getEStructuralFeatures().get(2);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIDestructor_Abstract() {
+        return (EAttribute)getIDestructor().getEStructuralFeatures().get(3);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIDestructor_Final() {
+        return (EAttribute)getIDestructor().getEStructuralFeatures().get(4);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIDestructor_Concurrency() {
+        return (EAttribute)getIDestructor().getEStructuralFeatures().get(5);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIDestructor_Protection() {
+        return (EAttribute)getIDestructor().getEStructuralFeatures().get(6);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIDestructor_Static() {
+        return (EAttribute)getIDestructor().getEStructuralFeatures().get(7);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIDestructor_Constant() {
+        return (EAttribute)getIDestructor().getEStructuralFeatures().get(8);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getIDestructor_ItsBody() {
+        return (EReference)getIDestructor().getEStructuralFeatures().get(9);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIDestructor_ModifiedTimeWeak() {
+        return (EAttribute)getIDestructor().getEStructuralFeatures().get(10);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getIDestructor_Description() {
+        return (EReference)getIDestructor().getEStructuralFeatures().get(11);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getIDestructor_Properties() {
+        return (EReference)getIDestructor().getEStructuralFeatures().get(12);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIDestructor_MyState() {
+        return (EAttribute)getIDestructor().getEStructuralFeatures().get(13);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getIDestructor_ReturnType() {
+        return (EReference)getIDestructor().getEStructuralFeatures().get(14);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EClass getIDiagram() {
+		if (iDiagramEClass == null) {
+			iDiagramEClass = (EClass)EPackage.Registry.INSTANCE.getEPackage(UMLRpyPackage.eNS_URI).getEClassifiers().get(113);
+		}
+		return iDiagramEClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getIDiagram_Properties() {
+        return (EReference)getIDiagram().getEStructuralFeatures().get(0);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getIDiagram_Stereotypes() {
+        return (EReference)getIDiagram().getEStructuralFeatures().get(1);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIDiagram_ModifiedTimeWeak() {
+        return (EAttribute)getIDiagram().getEStructuralFeatures().get(2);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getIDiagram_GraphicChart() {
+        return (EReference)getIDiagram().getEStructuralFeatures().get(3);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getIDiagram_Annotations() {
+        return (EReference)getIDiagram().getEStructuralFeatures().get(4);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIDiagram_CodeUpdateCGTime() {
+        return (EAttribute)getIDiagram().getEStructuralFeatures().get(5);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getIDiagram_HyperLinks() {
+        return (EReference)getIDiagram().getEStructuralFeatures().get(6);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EClass getIEmbededFile() {
+		if (iEmbededFileEClass == null) {
+			iEmbededFileEClass = (EClass)EPackage.Registry.INSTANCE.getEPackage(UMLRpyPackage.eNS_URI).getEClassifiers().get(114);
+		}
+		return iEmbededFileEClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIEmbededFile_Id() {
+        return (EAttribute)getIEmbededFile().getEStructuralFeatures().get(0);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIEmbededFile_Name() {
+        return (EAttribute)getIEmbededFile().getEStructuralFeatures().get(1);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIEmbededFile_ModifiedTimeWeak() {
+        return (EAttribute)getIEmbededFile().getEStructuralFeatures().get(2);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIEmbededFile_MayNeedToRelocate() {
+        return (EAttribute)getIEmbededFile().getEStructuralFeatures().get(3);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIEmbededFile_LastKnownFullPath() {
+        return (EAttribute)getIEmbededFile().getEStructuralFeatures().get(4);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getIEmbededFile_Stereotypes() {
+        return (EReference)getIEmbededFile().getEStructuralFeatures().get(5);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getIEmbededFile_Tags() {
+        return (EReference)getIEmbededFile().getEStructuralFeatures().get(6);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EClass getIEnumerationLiteral() {
+		if (iEnumerationLiteralEClass == null) {
+			iEnumerationLiteralEClass = (EClass)EPackage.Registry.INSTANCE.getEPackage(UMLRpyPackage.eNS_URI).getEClassifiers().get(115);
+		}
+		return iEnumerationLiteralEClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIEnumerationLiteral_Id() {
+        return (EAttribute)getIEnumerationLiteral().getEStructuralFeatures().get(0);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIEnumerationLiteral_Name() {
+        return (EAttribute)getIEnumerationLiteral().getEStructuralFeatures().get(1);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIEnumerationLiteral_ModifiedTimeWeak() {
+        return (EAttribute)getIEnumerationLiteral().getEStructuralFeatures().get(2);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIEnumerationLiteral_Value() {
+        return (EAttribute)getIEnumerationLiteral().getEStructuralFeatures().get(3);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getIEnumerationLiteral_Properties() {
+        return (EReference)getIEnumerationLiteral().getEStructuralFeatures().get(4);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getIEnumerationLiteral_Tags() {
+        return (EReference)getIEnumerationLiteral().getEStructuralFeatures().get(5);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIEnumerationLiteral_CodeUpdateCGTime() {
+        return (EAttribute)getIEnumerationLiteral().getEStructuralFeatures().get(6);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getIEnumerationLiteral_Description() {
+        return (EReference)getIEnumerationLiteral().getEStructuralFeatures().get(7);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EClass getIEvent() {
+		if (iEventEClass == null) {
+			iEventEClass = (EClass)EPackage.Registry.INSTANCE.getEPackage(UMLRpyPackage.eNS_URI).getEClassifiers().get(116);
+		}
+		return iEventEClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIEvent_Id() {
+        return (EAttribute)getIEvent().getEStructuralFeatures().get(0);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIEvent_MyState() {
+        return (EAttribute)getIEvent().getEStructuralFeatures().get(1);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIEvent_Name() {
+        return (EAttribute)getIEvent().getEStructuralFeatures().get(2);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIEvent_Virtual() {
+        return (EAttribute)getIEvent().getEStructuralFeatures().get(3);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIEvent_ModifiedTimeWeak() {
+        return (EAttribute)getIEvent().getEStructuralFeatures().get(4);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getIEvent_Args() {
+        return (EReference)getIEvent().getEStructuralFeatures().get(5);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getIEvent_Stereotypes() {
+        return (EReference)getIEvent().getEStructuralFeatures().get(6);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getIEvent_Description() {
+        return (EReference)getIEvent().getEStructuralFeatures().get(7);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getIEvent_Properties() {
+        return (EReference)getIEvent().getEStructuralFeatures().get(8);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getIEvent_Dependencies() {
+        return (EReference)getIEvent().getEStructuralFeatures().get(9);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getIEvent_Tags() {
+        return (EReference)getIEvent().getEStructuralFeatures().get(10);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getIEvent_SuperEvent() {
+        return (EReference)getIEvent().getEStructuralFeatures().get(11);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIEvent_RequiremenTracabilityHandle() {
+        return (EAttribute)getIEvent().getEStructuralFeatures().get(12);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getIEvent_Annotations() {
+        return (EReference)getIEvent().getEStructuralFeatures().get(13);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EClass getIEventHandle() {
+		if (iEventHandleEClass == null) {
+			iEventHandleEClass = (EClass)EPackage.Registry.INSTANCE.getEPackage(UMLRpyPackage.eNS_URI).getEClassifiers().get(117);
+		}
+		return iEventHandleEClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIEventHandle_M2Class() {
+        return (EAttribute)getIEventHandle().getEStructuralFeatures().get(0);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIEventHandle_Filename() {
+        return (EAttribute)getIEventHandle().getEStructuralFeatures().get(1);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIEventHandle_Subsystem() {
+        return (EAttribute)getIEventHandle().getEStructuralFeatures().get(2);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIEventHandle_Class() {
+        return (EAttribute)getIEventHandle().getEStructuralFeatures().get(3);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIEventHandle_Name() {
+        return (EAttribute)getIEventHandle().getEStructuralFeatures().get(4);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIEventHandle_Id() {
+        return (EAttribute)getIEventHandle().getEStructuralFeatures().get(5);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EClass getIEventReception() {
+		if (iEventReceptionEClass == null) {
+			iEventReceptionEClass = (EClass)EPackage.Registry.INSTANCE.getEPackage(UMLRpyPackage.eNS_URI).getEClassifiers().get(118);
+		}
+		return iEventReceptionEClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EClass getIExecutionOccurrence() {
+		if (iExecutionOccurrenceEClass == null) {
+			iExecutionOccurrenceEClass = (EClass)EPackage.Registry.INSTANCE.getEPackage(UMLRpyPackage.eNS_URI).getEClassifiers().get(119);
+		}
+		return iExecutionOccurrenceEClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIExecutionOccurrence_Id() {
+        return (EAttribute)getIExecutionOccurrence().getEStructuralFeatures().get(0);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getIExecutionOccurrence_M_startMessage() {
+        return (EReference)getIExecutionOccurrence().getEStructuralFeatures().get(1);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getIExecutionOccurrence_M_endMessage() {
+        return (EReference)getIExecutionOccurrence().getEStructuralFeatures().get(2);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIExecutionOccurrence_M_length() {
+        return (EAttribute)getIExecutionOccurrence().getEStructuralFeatures().get(3);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EClass getIExternalHyperlink() {
+		if (iExternalHyperlinkEClass == null) {
+			iExternalHyperlinkEClass = (EClass)EPackage.Registry.INSTANCE.getEPackage(UMLRpyPackage.eNS_URI).getEClassifiers().get(120);
+		}
+		return iExternalHyperlinkEClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIExternalHyperlink_Target() {
+        return (EAttribute)getIExternalHyperlink().getEStructuralFeatures().get(0);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EClass getIFile() {
+		if (iFileEClass == null) {
+			iFileEClass = (EClass)EPackage.Registry.INSTANCE.getEPackage(UMLRpyPackage.eNS_URI).getEClassifiers().get(121);
+		}
+		return iFileEClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getIFile_Properties() {
+        return (EReference)getIFile().getEStructuralFeatures().get(0);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIFile_M_type() {
+        return (EAttribute)getIFile().getEStructuralFeatures().get(1);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getIFile_Fragments() {
+        return (EReference)getIFile().getEStructuralFeatures().get(2);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getIFile_Description() {
+        return (EReference)getIFile().getEStructuralFeatures().get(3);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getIFile_Dependencies() {
+        return (EReference)getIFile().getEStructuralFeatures().get(4);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EClass getIFileFragment() {
+		if (iFileFragmentEClass == null) {
+			iFileFragmentEClass = (EClass)EPackage.Registry.INSTANCE.getEPackage(UMLRpyPackage.eNS_URI).getEClassifiers().get(122);
+		}
+		return iFileFragmentEClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIFileFragment_Id() {
+        return (EAttribute)getIFileFragment().getEStructuralFeatures().get(0);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIFileFragment_Name() {
+        return (EAttribute)getIFileFragment().getEStructuralFeatures().get(1);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIFileFragment_M_type() {
+        return (EAttribute)getIFileFragment().getEStructuralFeatures().get(2);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIFileFragment_M_text() {
+        return (EAttribute)getIFileFragment().getEStructuralFeatures().get(3);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIFileFragment_M_startRow() {
+        return (EAttribute)getIFileFragment().getEStructuralFeatures().get(4);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIFileFragment_M_startCol() {
+        return (EAttribute)getIFileFragment().getEStructuralFeatures().get(5);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getIFileFragment_Description() {
+        return (EReference)getIFileFragment().getEStructuralFeatures().get(6);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIFileFragment_M_startCol_Short() {
+        return (EAttribute)getIFileFragment().getEStructuralFeatures().get(7);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIFileFragment_M_endRow() {
+        return (EAttribute)getIFileFragment().getEStructuralFeatures().get(8);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIFileFragment_M_endCol_Short() {
+        return (EAttribute)getIFileFragment().getEStructuralFeatures().get(9);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getIFileFragment_M_subject() {
+        return (EReference)getIFileFragment().getEStructuralFeatures().get(10);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getIFileFragment_Tags() {
+        return (EReference)getIFileFragment().getEStructuralFeatures().get(11);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getIFileFragment_Fragments() {
+        return (EReference)getIFileFragment().getEStructuralFeatures().get(12);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIFileFragment_ModifiedTimeWeak() {
+        return (EAttribute)getIFileFragment().getEStructuralFeatures().get(13);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIFileFragment_ObjectCreation() {
+        return (EAttribute)getIFileFragment().getEStructuralFeatures().get(14);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIFileFragment_UmlDependencyID() {
+        return (EAttribute)getIFileFragment().getEStructuralFeatures().get(15);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EClass getIFlow() {
+		if (iFlowEClass == null) {
+			iFlowEClass = (EClass)EPackage.Registry.INSTANCE.getEPackage(UMLRpyPackage.eNS_URI).getEClassifiers().get(123);
+		}
+		return iFlowEClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EClass getIFlowItem() {
+		if (iFlowItemEClass == null) {
+			iFlowItemEClass = (EClass)EPackage.Registry.INSTANCE.getEPackage(UMLRpyPackage.eNS_URI).getEClassifiers().get(124);
+		}
+		return iFlowItemEClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EClass getIFlowchart() {
+		if (iFlowchartEClass == null) {
+			iFlowchartEClass = (EClass)EPackage.Registry.INSTANCE.getEPackage(UMLRpyPackage.eNS_URI).getEClassifiers().get(125);
+		}
+		return iFlowchartEClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EClass getIFolder() {
+		if (iFolderEClass == null) {
+			iFolderEClass = (EClass)EPackage.Registry.INSTANCE.getEPackage(UMLRpyPackage.eNS_URI).getEClassifiers().get(126);
+		}
+		return iFolderEClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getIFolder_Elements() {
+        return (EReference)getIFolder().getEStructuralFeatures().get(0);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getIFolder_Files() {
+        return (EReference)getIFolder().getEStructuralFeatures().get(1);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIFolder_RequiremenTracabilityHandle() {
+        return (EAttribute)getIFolder().getEStructuralFeatures().get(2);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIFolder_CodeUpdateCGTime() {
+        return (EAttribute)getIFolder().getEStructuralFeatures().get(3);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EClass getIFork() {
+		if (iForkEClass == null) {
+			iForkEClass = (EClass)EPackage.Registry.INSTANCE.getEPackage(UMLRpyPackage.eNS_URI).getEClassifiers().get(127);
+		}
+		return iForkEClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIFork_Id() {
+        return (EAttribute)getIFork().getEStructuralFeatures().get(0);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIFork_MyState() {
+        return (EAttribute)getIFork().getEStructuralFeatures().get(1);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIFork_Name() {
+        return (EAttribute)getIFork().getEStructuralFeatures().get(2);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIFork_ModifiedTimeWeak() {
+        return (EAttribute)getIFork().getEStructuralFeatures().get(3);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getIFork_Description() {
+        return (EReference)getIFork().getEStructuralFeatures().get(4);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getIFork_Parent() {
+        return (EReference)getIFork().getEStructuralFeatures().get(5);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIFork_ConnectorType() {
+        return (EAttribute)getIFork().getEStructuralFeatures().get(6);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIFork_ObjectCreation() {
+        return (EAttribute)getIFork().getEStructuralFeatures().get(7);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIFork_UmlDependencyID() {
+        return (EAttribute)getIFork().getEStructuralFeatures().get(8);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EClass getIGeneralization() {
+		if (iGeneralizationEClass == null) {
+			iGeneralizationEClass = (EClass)EPackage.Registry.INSTANCE.getEPackage(UMLRpyPackage.eNS_URI).getEClassifiers().get(128);
+		}
+		return iGeneralizationEClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIGeneralization_Id() {
+        return (EAttribute)getIGeneralization().getEStructuralFeatures().get(0);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIGeneralization_ModifiedTimeWeak() {
+        return (EAttribute)getIGeneralization().getEStructuralFeatures().get(1);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getIGeneralization_DependsOn() {
+        return (EReference)getIGeneralization().getEStructuralFeatures().get(2);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIGeneralization_InheritanceType() {
+        return (EAttribute)getIGeneralization().getEStructuralFeatures().get(3);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIGeneralization_IsVirtual() {
+        return (EAttribute)getIGeneralization().getEStructuralFeatures().get(4);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getIGeneralization_Stereotypes() {
+        return (EReference)getIGeneralization().getEStructuralFeatures().get(5);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getIGeneralization_Description() {
+        return (EReference)getIGeneralization().getEStructuralFeatures().get(6);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIGeneralization_ObjectCreation() {
+        return (EAttribute)getIGeneralization().getEStructuralFeatures().get(7);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIGeneralization_UmlDependencyID() {
+        return (EAttribute)getIGeneralization().getEStructuralFeatures().get(8);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getIGeneralization_Ti() {
+        return (EReference)getIGeneralization().getEStructuralFeatures().get(9);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getIGeneralization_Annotations() {
+        return (EReference)getIGeneralization().getEStructuralFeatures().get(10);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EClass getIGuard() {
+		if (iGuardEClass == null) {
+			iGuardEClass = (EClass)EPackage.Registry.INSTANCE.getEPackage(UMLRpyPackage.eNS_URI).getEClassifiers().get(129);
+		}
+		return iGuardEClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIGuard_Id() {
+        return (EAttribute)getIGuard().getEStructuralFeatures().get(0);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIGuard_Body() {
+        return (EAttribute)getIGuard().getEStructuralFeatures().get(1);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIGuard_ModifiedTimeWeak() {
+        return (EAttribute)getIGuard().getEStructuralFeatures().get(2);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIGuard_ObjectCreation() {
+        return (EAttribute)getIGuard().getEStructuralFeatures().get(3);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIGuard_UmlDependencyID() {
+        return (EAttribute)getIGuard().getEStructuralFeatures().get(4);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EClass getIHandleWithData() {
+		if (iHandleWithDataEClass == null) {
+			iHandleWithDataEClass = (EClass)EPackage.Registry.INSTANCE.getEPackage(UMLRpyPackage.eNS_URI).getEClassifiers().get(130);
+		}
+		return iHandleWithDataEClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIHandleWithData_M2Class() {
+        return (EAttribute)getIHandleWithData().getEStructuralFeatures().get(0);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIHandleWithData_Filename() {
+        return (EAttribute)getIHandleWithData().getEStructuralFeatures().get(1);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIHandleWithData_Subsystem() {
+        return (EAttribute)getIHandleWithData().getEStructuralFeatures().get(2);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIHandleWithData_Class() {
+        return (EAttribute)getIHandleWithData().getEStructuralFeatures().get(3);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIHandleWithData_Name() {
+        return (EAttribute)getIHandleWithData().getEStructuralFeatures().get(4);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIHandleWithData_Id() {
+        return (EAttribute)getIHandleWithData().getEStructuralFeatures().get(5);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIHandleWithData_Data() {
+        return (EAttribute)getIHandleWithData().getEStructuralFeatures().get(6);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EClass getIHistoryConnector() {
+		if (iHistoryConnectorEClass == null) {
+			iHistoryConnectorEClass = (EClass)EPackage.Registry.INSTANCE.getEPackage(UMLRpyPackage.eNS_URI).getEClassifiers().get(131);
+		}
+		return iHistoryConnectorEClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIHistoryConnector_Id() {
+        return (EAttribute)getIHistoryConnector().getEStructuralFeatures().get(0);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIHistoryConnector_Name() {
+        return (EAttribute)getIHistoryConnector().getEStructuralFeatures().get(1);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getIHistoryConnector_Parent() {
+        return (EReference)getIHistoryConnector().getEStructuralFeatures().get(2);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIHistoryConnector_ConnectorType() {
+        return (EAttribute)getIHistoryConnector().getEStructuralFeatures().get(3);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIHistoryConnector_MyState() {
+        return (EAttribute)getIHistoryConnector().getEStructuralFeatures().get(4);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIHistoryConnector_ModifiedTimeWeak() {
+        return (EAttribute)getIHistoryConnector().getEStructuralFeatures().get(5);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIHistoryConnector_ObjectCreation() {
+        return (EAttribute)getIHistoryConnector().getEStructuralFeatures().get(6);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIHistoryConnector_UmlDependencyID() {
+        return (EAttribute)getIHistoryConnector().getEStructuralFeatures().get(7);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EClass getIHyperLink() {
+		if (iHyperLinkEClass == null) {
+			iHyperLinkEClass = (EClass)EPackage.Registry.INSTANCE.getEPackage(UMLRpyPackage.eNS_URI).getEClassifiers().get(132);
+		}
+		return iHyperLinkEClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EClass getIInformationFlow() {
+		if (iInformationFlowEClass == null) {
+			iInformationFlowEClass = (EClass)EPackage.Registry.INSTANCE.getEPackage(UMLRpyPackage.eNS_URI).getEClassifiers().get(133);
+		}
+		return iInformationFlowEClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIInformationFlow_Id() {
+        return (EAttribute)getIInformationFlow().getEStructuralFeatures().get(0);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIInformationFlow_MyState() {
+        return (EAttribute)getIInformationFlow().getEStructuralFeatures().get(1);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIInformationFlow_Name() {
+        return (EAttribute)getIInformationFlow().getEStructuralFeatures().get(2);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getIInformationFlow_Conveyed() {
+        return (EReference)getIInformationFlow().getEStructuralFeatures().get(3);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getIInformationFlow_End1_() {
+        return (EReference)getIInformationFlow().getEStructuralFeatures().get(4);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getIInformationFlow_End2_() {
+        return (EReference)getIInformationFlow().getEStructuralFeatures().get(5);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIInformationFlow_Direction_() {
+        return (EAttribute)getIInformationFlow().getEStructuralFeatures().get(6);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIInformationFlow_ModifiedTimeWeak() {
+        return (EAttribute)getIInformationFlow().getEStructuralFeatures().get(7);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getIInformationFlow_Description() {
+        return (EReference)getIInformationFlow().getEStructuralFeatures().get(8);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getIInformationFlow_End1ObjectPort_() {
+        return (EReference)getIInformationFlow().getEStructuralFeatures().get(9);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getIInformationFlow_End2ObjectPort_() {
+        return (EReference)getIInformationFlow().getEStructuralFeatures().get(10);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIInformationFlow_RequiremenTracabilityHandle() {
+        return (EAttribute)getIInformationFlow().getEStructuralFeatures().get(11);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getIInformationFlow_HyperLinks() {
+        return (EReference)getIInformationFlow().getEStructuralFeatures().get(12);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getIInformationFlow_Dependencies() {
+        return (EReference)getIInformationFlow().getEStructuralFeatures().get(13);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getIInformationFlow_Annotations() {
+        return (EReference)getIInformationFlow().getEStructuralFeatures().get(14);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIInformationFlow_ObjectCreation() {
+        return (EAttribute)getIInformationFlow().getEStructuralFeatures().get(15);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIInformationFlow_UmlDependencyID() {
+        return (EAttribute)getIInformationFlow().getEStructuralFeatures().get(16);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getIInformationFlow_Stereotypes() {
+        return (EReference)getIInformationFlow().getEStructuralFeatures().get(17);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getIInformationFlow_Tags() {
+        return (EReference)getIInformationFlow().getEStructuralFeatures().get(18);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EClass getIInformationItem() {
+		if (iInformationItemEClass == null) {
+			iInformationItemEClass = (EClass)EPackage.Registry.INSTANCE.getEPackage(UMLRpyPackage.eNS_URI).getEClassifiers().get(134);
+		}
+		return iInformationItemEClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIInformationItem_Id() {
+        return (EAttribute)getIInformationItem().getEStructuralFeatures().get(0);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIInformationItem_MyState() {
+        return (EAttribute)getIInformationItem().getEStructuralFeatures().get(1);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIInformationItem_Name() {
+        return (EAttribute)getIInformationItem().getEStructuralFeatures().get(2);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIInformationItem_RequiremenTracabilityHandle() {
+        return (EAttribute)getIInformationItem().getEStructuralFeatures().get(3);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIInformationItem_ModifiedTimeWeak() {
+        return (EAttribute)getIInformationItem().getEStructuralFeatures().get(4);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getIInformationItem_Description() {
+        return (EReference)getIInformationItem().getEStructuralFeatures().get(5);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getIInformationItem_Represented() {
+        return (EReference)getIInformationItem().getEStructuralFeatures().get(6);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getIInformationItem_Annotations() {
+        return (EReference)getIInformationItem().getEStructuralFeatures().get(7);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIInformationItem_ObjectCreation() {
+        return (EAttribute)getIInformationItem().getEStructuralFeatures().get(8);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIInformationItem_UmlDependencyID() {
+        return (EAttribute)getIInformationItem().getEStructuralFeatures().get(9);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EClass getIInstance() {
+		if (iInstanceEClass == null) {
+			iInstanceEClass = (EClass)EPackage.Registry.INSTANCE.getEPackage(UMLRpyPackage.eNS_URI).getEClassifiers().get(135);
+		}
+		return iInstanceEClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIInstance_ModifiedTimeWeak() {
+        return (EAttribute)getIInstance().getEStructuralFeatures().get(0);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIInstance_Id() {
+        return (EAttribute)getIInstance().getEStructuralFeatures().get(1);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getIInstance_Inverse() {
+        return (EReference)getIInstance().getEStructuralFeatures().get(2);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIInstance_MyState() {
+        return (EAttribute)getIInstance().getEStructuralFeatures().get(3);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIInstance_Name() {
+        return (EAttribute)getIInstance().getEStructuralFeatures().get(4);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EClass getIInstanceSlot() {
+		if (iInstanceSlotEClass == null) {
+			iInstanceSlotEClass = (EClass)EPackage.Registry.INSTANCE.getEPackage(UMLRpyPackage.eNS_URI).getEClassifiers().get(136);
+		}
+		return iInstanceSlotEClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EClass getIInstanceSpecification() {
+		if (iInstanceSpecificationEClass == null) {
+			iInstanceSpecificationEClass = (EClass)EPackage.Registry.INSTANCE.getEPackage(UMLRpyPackage.eNS_URI).getEClassifiers().get(137);
+		}
+		return iInstanceSpecificationEClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EClass getIInstanceValue() {
+		if (iInstanceValueEClass == null) {
+			iInstanceValueEClass = (EClass)EPackage.Registry.INSTANCE.getEPackage(UMLRpyPackage.eNS_URI).getEClassifiers().get(138);
+		}
+		return iInstanceValueEClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIInstanceValue_Id() {
+        return (EAttribute)getIInstanceValue().getEStructuralFeatures().get(0);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIInstanceValue_ModifiedTimeWeak() {
+        return (EAttribute)getIInstanceValue().getEStructuralFeatures().get(1);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getIInstanceValue_Value() {
+        return (EReference)getIInstanceValue().getEStructuralFeatures().get(2);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EClass getIInteractionOccurrence() {
+		if (iInteractionOccurrenceEClass == null) {
+			iInteractionOccurrenceEClass = (EClass)EPackage.Registry.INSTANCE.getEPackage(UMLRpyPackage.eNS_URI).getEClassifiers().get(139);
+		}
+		return iInteractionOccurrenceEClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIInteractionOccurrence_Id() {
+        return (EAttribute)getIInteractionOccurrence().getEStructuralFeatures().get(0);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIInteractionOccurrence_Name() {
+        return (EAttribute)getIInteractionOccurrence().getEStructuralFeatures().get(1);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIInteractionOccurrence_ModifiedTimeWeak() {
+        return (EAttribute)getIInteractionOccurrence().getEStructuralFeatures().get(2);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getIInteractionOccurrence_M_pRefSD() {
+        return (EReference)getIInteractionOccurrence().getEStructuralFeatures().get(3);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getIInteractionOccurrence_Stereotypes() {
+        return (EReference)getIInteractionOccurrence().getEStructuralFeatures().get(4);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getIInteractionOccurrence_Tags() {
+        return (EReference)getIInteractionOccurrence().getEStructuralFeatures().get(5);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIInteractionOccurrence_ObjectCreation() {
+        return (EAttribute)getIInteractionOccurrence().getEStructuralFeatures().get(6);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIInteractionOccurrence_UmlDependencyID() {
+        return (EAttribute)getIInteractionOccurrence().getEStructuralFeatures().get(7);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EClass getIInteractionOperand() {
+		if (iInteractionOperandEClass == null) {
+			iInteractionOperandEClass = (EClass)EPackage.Registry.INSTANCE.getEPackage(UMLRpyPackage.eNS_URI).getEClassifiers().get(140);
+		}
+		return iInteractionOperandEClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIInteractionOperand_MyState() {
+        return (EAttribute)getIInteractionOperand().getEStructuralFeatures().get(0);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIInteractionOperand_Name() {
+        return (EAttribute)getIInteractionOperand().getEStructuralFeatures().get(1);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIInteractionOperand_InteractionConstraint() {
+        return (EAttribute)getIInteractionOperand().getEStructuralFeatures().get(2);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EClass getIInteractionOperator() {
+		if (iInteractionOperatorEClass == null) {
+			iInteractionOperatorEClass = (EClass)EPackage.Registry.INSTANCE.getEPackage(UMLRpyPackage.eNS_URI).getEClassifiers().get(141);
+		}
+		return iInteractionOperatorEClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EClass getIInterfaceItem() {
+		if (iInterfaceItemEClass == null) {
+			iInterfaceItemEClass = (EClass)EPackage.Registry.INSTANCE.getEPackage(UMLRpyPackage.eNS_URI).getEClassifiers().get(142);
+		}
+		return iInterfaceItemEClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EClass getIInterfaceItemTrigger() {
+		if (iInterfaceItemTriggerEClass == null) {
+			iInterfaceItemTriggerEClass = (EClass)EPackage.Registry.INSTANCE.getEPackage(UMLRpyPackage.eNS_URI).getEClassifiers().get(143);
+		}
+		return iInterfaceItemTriggerEClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getIInterfaceItemTrigger_ItsInterfaceItem() {
+        return (EReference)getIInterfaceItemTrigger().getEStructuralFeatures().get(0);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getIInterfaceItemTrigger_InheritsFromHandle() {
+        return (EReference)getIInterfaceItemTrigger().getEStructuralFeatures().get(1);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EClass getIInternalHyperlink() {
+		if (iInternalHyperlinkEClass == null) {
+			iInternalHyperlinkEClass = (EClass)EPackage.Registry.INSTANCE.getEPackage(UMLRpyPackage.eNS_URI).getEClassifiers().get(144);
+		}
+		return iInternalHyperlinkEClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getIInternalHyperlink_Target() {
+        return (EReference)getIInternalHyperlink().getEStructuralFeatures().get(0);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EClass getILabel() {
+		if (iLabelEClass == null) {
+			iLabelEClass = (EClass)EPackage.Registry.INSTANCE.getEPackage(UMLRpyPackage.eNS_URI).getEClassifiers().get(145);
+		}
+		return iLabelEClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getILabel_Id() {
+        return (EAttribute)getILabel().getEStructuralFeatures().get(0);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getILabel_ItsTrigger() {
+        return (EReference)getILabel().getEStructuralFeatures().get(1);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getILabel_ItsAction() {
+        return (EReference)getILabel().getEStructuralFeatures().get(2);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getILabel_ItsGuard() {
+        return (EReference)getILabel().getEStructuralFeatures().get(3);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getILabel_ModifiedTimeWeak() {
+        return (EAttribute)getILabel().getEStructuralFeatures().get(4);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getILabel_MyState() {
+        return (EAttribute)getILabel().getEStructuralFeatures().get(5);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getILabel_InheritsFromHandle() {
+        return (EReference)getILabel().getEStructuralFeatures().get(6);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getILabel_CodeUpdateCGTime() {
+        return (EAttribute)getILabel().getEStructuralFeatures().get(7);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getILabel_ObjectCreation() {
+        return (EAttribute)getILabel().getEStructuralFeatures().get(8);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getILabel_UmlDependencyID() {
+        return (EAttribute)getILabel().getEStructuralFeatures().get(9);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EClass getILink() {
+		if (iLinkEClass == null) {
+			iLinkEClass = (EClass)EPackage.Registry.INSTANCE.getEPackage(UMLRpyPackage.eNS_URI).getEClassifiers().get(146);
+		}
+		return iLinkEClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getILink_Inverse() {
+        return (EReference)getILink().getEStructuralFeatures().get(0);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getILink_LinkName() {
+        return (EAttribute)getILink().getEStructuralFeatures().get(1);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getILink_LinkType() {
+        return (EAttribute)getILink().getEStructuralFeatures().get(2);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getILink_MyState() {
+        return (EAttribute)getILink().getEStructuralFeatures().get(3);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EClass getILinkInstance() {
+		if (iLinkInstanceEClass == null) {
+			iLinkInstanceEClass = (EClass)EPackage.Registry.INSTANCE.getEPackage(UMLRpyPackage.eNS_URI).getEClassifiers().get(147);
+		}
+		return iLinkInstanceEClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getILinkInstance_Id() {
+        return (EAttribute)getILinkInstance().getEStructuralFeatures().get(0);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getILinkInstance_Name() {
+        return (EAttribute)getILinkInstance().getEStructuralFeatures().get(1);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getILinkInstance_ToLink() {
+        return (EReference)getILinkInstance().getEStructuralFeatures().get(2);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getILinkInstance_FromLink() {
+        return (EReference)getILinkInstance().getEStructuralFeatures().get(3);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getILinkInstance_Instantiates() {
+        return (EReference)getILinkInstance().getEStructuralFeatures().get(4);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EClass getILiteralSpecification() {
+		if (iLiteralSpecificationEClass == null) {
+			iLiteralSpecificationEClass = (EClass)EPackage.Registry.INSTANCE.getEPackage(UMLRpyPackage.eNS_URI).getEClassifiers().get(148);
+		}
+		return iLiteralSpecificationEClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getILiteralSpecification_Id() {
+        return (EAttribute)getILiteralSpecification().getEStructuralFeatures().get(0);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getILiteralSpecification_ModifiedTimeWeak() {
+        return (EAttribute)getILiteralSpecification().getEStructuralFeatures().get(1);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getILiteralSpecification_Value() {
+        return (EAttribute)getILiteralSpecification().getEStructuralFeatures().get(2);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getILiteralSpecification_MyState() {
+        return (EAttribute)getILiteralSpecification().getEStructuralFeatures().get(3);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getILiteralSpecification_Name() {
+        return (EAttribute)getILiteralSpecification().getEStructuralFeatures().get(4);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getILiteralSpecification_CodeUpdateCGTime() {
+        return (EAttribute)getILiteralSpecification().getEStructuralFeatures().get(5);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EClass getIMHyperLink() {
+		if (imHyperLinkEClass == null) {
+			imHyperLinkEClass = (EClass)EPackage.Registry.INSTANCE.getEPackage(UMLRpyPackage.eNS_URI).getEClassifiers().get(149);
+		}
+		return imHyperLinkEClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIMHyperLink_Id() {
+        return (EAttribute)getIMHyperLink().getEStructuralFeatures().get(0);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getIMHyperLink_Properties() {
+        return (EReference)getIMHyperLink().getEStructuralFeatures().get(1);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIMHyperLink_ModifiedTimeWeak() {
+        return (EAttribute)getIMHyperLink().getEStructuralFeatures().get(2);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getIMHyperLink_DependsOn() {
+        return (EReference)getIMHyperLink().getEStructuralFeatures().get(3);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIMHyperLink_LinkDispName() {
+        return (EAttribute)getIMHyperLink().getEStructuralFeatures().get(4);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIMHyperLink_LinkType() {
+        return (EAttribute)getIMHyperLink().getEStructuralFeatures().get(5);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIMHyperLink_IsConfigurationFileHyperLink() {
+        return (EAttribute)getIMHyperLink().getEStructuralFeatures().get(6);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIMHyperLink_LinkTarget() {
+        return (EAttribute)getIMHyperLink().getEStructuralFeatures().get(7);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getIMHyperLink_Description() {
+        return (EReference)getIMHyperLink().getEStructuralFeatures().get(8);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIMHyperLink_RequiremenTracabilityHandle() {
+        return (EAttribute)getIMHyperLink().getEStructuralFeatures().get(9);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIMHyperLink_ObjectCreation() {
+        return (EAttribute)getIMHyperLink().getEStructuralFeatures().get(10);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIMHyperLink_UmlDependencyID() {
+        return (EAttribute)getIMHyperLink().getEStructuralFeatures().get(11);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EClass getIMSC() {
+		if (imscEClass == null) {
+			imscEClass = (EClass)EPackage.Registry.INSTANCE.getEPackage(UMLRpyPackage.eNS_URI).getEClassifiers().get(150);
+		}
+		return imscEClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIMSC_Id() {
+        return (EAttribute)getIMSC().getEStructuralFeatures().get(0);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIMSC_MyState() {
+        return (EAttribute)getIMSC().getEStructuralFeatures().get(1);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getIMSC_Properties() {
+        return (EReference)getIMSC().getEStructuralFeatures().get(2);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIMSC_Name() {
+        return (EAttribute)getIMSC().getEStructuralFeatures().get(3);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIMSC_LastModifiedTime() {
+        return (EAttribute)getIMSC().getEStructuralFeatures().get(4);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getIMSC_GraphicChart() {
+        return (EReference)getIMSC().getEStructuralFeatures().get(5);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getIMSC_DefaultSubsystem() {
+        return (EReference)getIMSC().getEStructuralFeatures().get(6);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getIMSC_M_pICollaboration() {
+        return (EReference)getIMSC().getEStructuralFeatures().get(7);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIMSC_Cmheader() {
+        return (EAttribute)getIMSC().getEStructuralFeatures().get(8);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIMSC_LastID() {
+        return (EAttribute)getIMSC().getEStructuralFeatures().get(9);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getIMSC_OwnerHandle() {
+        return (EReference)getIMSC().getEStructuralFeatures().get(10);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getIMSC_Description() {
+        return (EReference)getIMSC().getEStructuralFeatures().get(11);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIMSC_ModifiedTimeWeak() {
+        return (EAttribute)getIMSC().getEStructuralFeatures().get(12);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getIMSC_Stereotypes() {
+        return (EReference)getIMSC().getEStructuralFeatures().get(13);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getIMSC_Tags() {
+        return (EReference)getIMSC().getEStructuralFeatures().get(14);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIMSC_RequiremenTracabilityHandle() {
+        return (EAttribute)getIMSC().getEStructuralFeatures().get(15);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getIMSC_Annotations() {
+        return (EReference)getIMSC().getEStructuralFeatures().get(16);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIMSC_ObjectCreation() {
+        return (EAttribute)getIMSC().getEStructuralFeatures().get(17);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIMSC_UmlDependencyID() {
+        return (EAttribute)getIMSC().getEStructuralFeatures().get(18);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EClass getIMatrixInstance() {
+		if (iMatrixInstanceEClass == null) {
+			iMatrixInstanceEClass = (EClass)EPackage.Registry.INSTANCE.getEPackage(UMLRpyPackage.eNS_URI).getEClassifiers().get(151);
+		}
+		return iMatrixInstanceEClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIMatrixInstance_Id() {
+        return (EAttribute)getIMatrixInstance().getEStructuralFeatures().get(0);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIMatrixInstance_MyState() {
+        return (EAttribute)getIMatrixInstance().getEStructuralFeatures().get(1);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIMatrixInstance_Name() {
+        return (EAttribute)getIMatrixInstance().getEStructuralFeatures().get(2);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIMatrixInstance_ModifiedTimeWeak() {
+        return (EAttribute)getIMatrixInstance().getEStructuralFeatures().get(3);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getIMatrixInstance_LayoutHandle() {
+        return (EReference)getIMatrixInstance().getEStructuralFeatures().get(4);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getIMatrixInstance_FromScopeHandles() {
+        return (EReference)getIMatrixInstance().getEStructuralFeatures().get(5);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getIMatrixInstance_ToScopeHandles() {
+        return (EReference)getIMatrixInstance().getEStructuralFeatures().get(6);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getIMatrixInstance_Stereotypes() {
+        return (EReference)getIMatrixInstance().getEStructuralFeatures().get(7);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIMatrixInstance_M_IncludeDescendants_to() {
+        return (EAttribute)getIMatrixInstance().getEStructuralFeatures().get(8);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getIMatrixInstance_Properties() {
+        return (EReference)getIMatrixInstance().getEStructuralFeatures().get(9);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EClass getIMatrixLayout() {
+		if (iMatrixLayoutEClass == null) {
+			iMatrixLayoutEClass = (EClass)EPackage.Registry.INSTANCE.getEPackage(UMLRpyPackage.eNS_URI).getEClassifiers().get(152);
+		}
+		return iMatrixLayoutEClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIMatrixLayout_Id() {
+        return (EAttribute)getIMatrixLayout().getEStructuralFeatures().get(0);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIMatrixLayout_MyState() {
+        return (EAttribute)getIMatrixLayout().getEStructuralFeatures().get(1);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIMatrixLayout_Name() {
+        return (EAttribute)getIMatrixLayout().getEStructuralFeatures().get(2);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIMatrixLayout_ModifiedTimeWeak() {
+        return (EAttribute)getIMatrixLayout().getEStructuralFeatures().get(3);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getIMatrixLayout_FromElementTypes() {
+        return (EReference)getIMatrixLayout().getEStructuralFeatures().get(4);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getIMatrixLayout_ToElementTypes() {
+        return (EReference)getIMatrixLayout().getEStructuralFeatures().get(5);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getIMatrixLayout_CellElementTypes() {
+        return (EReference)getIMatrixLayout().getEStructuralFeatures().get(6);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getIMatrixLayout_Description() {
+        return (EReference)getIMatrixLayout().getEStructuralFeatures().get(7);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EClass getIMatrixView() {
+		if (iMatrixViewEClass == null) {
+			iMatrixViewEClass = (EClass)EPackage.Registry.INSTANCE.getEPackage(UMLRpyPackage.eNS_URI).getEClassifiers().get(153);
+		}
+		return iMatrixViewEClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EClass getIMessage() {
+		if (iMessageEClass == null) {
+			iMessageEClass = (EClass)EPackage.Registry.INSTANCE.getEPackage(UMLRpyPackage.eNS_URI).getEClassifiers().get(154);
+		}
+		return iMessageEClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIMessage_Id() {
+        return (EAttribute)getIMessage().getEStructuralFeatures().get(0);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIMessage_MyState() {
+        return (EAttribute)getIMessage().getEStructuralFeatures().get(1);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIMessage_Name() {
+        return (EAttribute)getIMessage().getEStructuralFeatures().get(2);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIMessage_M_szSequence() {
+        return (EAttribute)getIMessage().getEStructuralFeatures().get(3);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIMessage_M_szActualArgs() {
+        return (EAttribute)getIMessage().getEStructuralFeatures().get(4);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIMessage_M_szReturnVal() {
+        return (EAttribute)getIMessage().getEStructuralFeatures().get(5);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getIMessage_M_pReceiver() {
+        return (EReference)getIMessage().getEStructuralFeatures().get(6);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getIMessage_M_pSender() {
+        return (EReference)getIMessage().getEStructuralFeatures().get(7);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getIMessage_M_pFormalMessage() {
+        return (EReference)getIMessage().getEStructuralFeatures().get(8);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIMessage_M_eType() {
+        return (EAttribute)getIMessage().getEStructuralFeatures().get(9);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getIMessage_M_pCommunicationConnection() {
+        return (EReference)getIMessage().getEStructuralFeatures().get(10);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIMessage_M_freeText() {
+        return (EAttribute)getIMessage().getEStructuralFeatures().get(11);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIMessage_ModifiedTimeWeak() {
+        return (EAttribute)getIMessage().getEStructuralFeatures().get(12);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getIMessage_Stereotypes() {
+        return (EReference)getIMessage().getEStructuralFeatures().get(13);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getIMessage_Tags() {
+        return (EReference)getIMessage().getEStructuralFeatures().get(14);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getIMessage_Properties() {
+        return (EReference)getIMessage().getEStructuralFeatures().get(15);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getIMessage_M_targetExec() {
+        return (EReference)getIMessage().getEStructuralFeatures().get(16);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getIMessage_M_srcExec() {
+        return (EReference)getIMessage().getEStructuralFeatures().get(17);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIMessage_ObjectCreation() {
+        return (EAttribute)getIMessage().getEStructuralFeatures().get(18);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIMessage_UmlDependencyID() {
+        return (EAttribute)getIMessage().getEStructuralFeatures().get(19);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EClass getIMessagePoint() {
+		if (iMessagePointEClass == null) {
+			iMessagePointEClass = (EClass)EPackage.Registry.INSTANCE.getEPackage(UMLRpyPackage.eNS_URI).getEClassifiers().get(155);
+		}
+		return iMessagePointEClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EClass getIMetaLinkHandle() {
+		if (iMetaLinkHandleEClass == null) {
+			iMetaLinkHandleEClass = (EClass)EPackage.Registry.INSTANCE.getEPackage(UMLRpyPackage.eNS_URI).getEClassifiers().get(156);
+		}
+		return iMetaLinkHandleEClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIMetaLinkHandle_M2Class() {
+        return (EAttribute)getIMetaLinkHandle().getEStructuralFeatures().get(0);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIMetaLinkHandle_Filename() {
+        return (EAttribute)getIMetaLinkHandle().getEStructuralFeatures().get(1);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIMetaLinkHandle_Subsystem() {
+        return (EAttribute)getIMetaLinkHandle().getEStructuralFeatures().get(2);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIMetaLinkHandle_Class() {
+        return (EAttribute)getIMetaLinkHandle().getEStructuralFeatures().get(3);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIMetaLinkHandle_Name() {
+        return (EAttribute)getIMetaLinkHandle().getEStructuralFeatures().get(4);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIMetaLinkHandle_Id() {
+        return (EAttribute)getIMetaLinkHandle().getEStructuralFeatures().get(5);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EClass getIModelElement() {
+		if (iModelElementEClass == null) {
+			iModelElementEClass = (EClass)EPackage.Registry.INSTANCE.getEPackage(UMLRpyPackage.eNS_URI).getEClassifiers().get(157);
+		}
+		return iModelElementEClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIModelElement_DisplayName() {
+        return (EAttribute)getIModelElement().getEStructuralFeatures().get(0);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EClass getIModule() {
+		if (iModuleEClass == null) {
+			iModuleEClass = (EClass)EPackage.Registry.INSTANCE.getEPackage(UMLRpyPackage.eNS_URI).getEClassifiers().get(158);
+		}
+		return iModuleEClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getIModule_Stereotypes() {
+        return (EReference)getIModule().getEStructuralFeatures().get(0);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getIModule_Description() {
+        return (EReference)getIModule().getEStructuralFeatures().get(1);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getIModule_HyperLinks() {
+        return (EReference)getIModule().getEStructuralFeatures().get(2);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getIModule_OtherClass() {
+        return (EReference)getIModule().getEStructuralFeatures().get(3);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getIModule_ImplicitClass() {
+        return (EReference)getIModule().getEStructuralFeatures().get(4);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getIModule_Properties() {
+        return (EReference)getIModule().getEStructuralFeatures().get(5);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIModule_RequiremenTracabilityHandle() {
+        return (EAttribute)getIModule().getEStructuralFeatures().get(6);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIModule_PartKind() {
+        return (EAttribute)getIModule().getEStructuralFeatures().get(7);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EClass getIMultiplicityItem() {
+		if (iMultiplicityItemEClass == null) {
+			iMultiplicityItemEClass = (EClass)EPackage.Registry.INSTANCE.getEPackage(UMLRpyPackage.eNS_URI).getEClassifiers().get(159);
+		}
+		return iMultiplicityItemEClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIMultiplicityItem_Name() {
+        return (EAttribute)getIMultiplicityItem().getEStructuralFeatures().get(0);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIMultiplicityItem_Count() {
+        return (EAttribute)getIMultiplicityItem().getEStructuralFeatures().get(1);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EClass getINode() {
+		if (iNodeEClass == null) {
+			iNodeEClass = (EClass)EPackage.Registry.INSTANCE.getEPackage(UMLRpyPackage.eNS_URI).getEClassifiers().get(160);
+		}
+		return iNodeEClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EClass getIObjectLink() {
+		if (iObjectLinkEClass == null) {
+			iObjectLinkEClass = (EClass)EPackage.Registry.INSTANCE.getEPackage(UMLRpyPackage.eNS_URI).getEClassifiers().get(161);
+		}
+		return iObjectLinkEClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getIObjectLink_Stereotypes() {
+        return (EReference)getIObjectLink().getEStructuralFeatures().get(0);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getIObjectLink_Tags() {
+        return (EReference)getIObjectLink().getEStructuralFeatures().get(1);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getIObjectLink_ToLink() {
+        return (EReference)getIObjectLink().getEStructuralFeatures().get(2);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getIObjectLink_FromLink() {
+        return (EReference)getIObjectLink().getEStructuralFeatures().get(3);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getIObjectLink_Instantiates() {
+        return (EReference)getIObjectLink().getEStructuralFeatures().get(4);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIObjectLink_End1Multiplicity() {
+        return (EAttribute)getIObjectLink().getEStructuralFeatures().get(5);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIObjectLink_End2Multiplicity() {
+        return (EAttribute)getIObjectLink().getEStructuralFeatures().get(6);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getIObjectLink_ToPort() {
+        return (EReference)getIObjectLink().getEStructuralFeatures().get(7);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getIObjectLink_FromPort() {
+        return (EReference)getIObjectLink().getEStructuralFeatures().get(8);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getIObjectLink_Description() {
+        return (EReference)getIObjectLink().getEStructuralFeatures().get(9);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIObjectLink_RequiremenTracabilityHandle() {
+        return (EAttribute)getIObjectLink().getEStructuralFeatures().get(10);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIObjectLink_CodeUpdateCGTime() {
+        return (EAttribute)getIObjectLink().getEStructuralFeatures().get(11);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIObjectLink_ObjectCreation() {
+        return (EAttribute)getIObjectLink().getEStructuralFeatures().get(12);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIObjectLink_UmlDependencyID() {
+        return (EAttribute)getIObjectLink().getEStructuralFeatures().get(13);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EClass getIObjectLinkHandle() {
+		if (iObjectLinkHandleEClass == null) {
+			iObjectLinkHandleEClass = (EClass)EPackage.Registry.INSTANCE.getEPackage(UMLRpyPackage.eNS_URI).getEClassifiers().get(162);
+		}
+		return iObjectLinkHandleEClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIObjectLinkHandle_M2Class() {
+        return (EAttribute)getIObjectLinkHandle().getEStructuralFeatures().get(0);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIObjectLinkHandle_Filename() {
+        return (EAttribute)getIObjectLinkHandle().getEStructuralFeatures().get(1);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIObjectLinkHandle_Subsystem() {
+        return (EAttribute)getIObjectLinkHandle().getEStructuralFeatures().get(2);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIObjectLinkHandle_Class() {
+        return (EAttribute)getIObjectLinkHandle().getEStructuralFeatures().get(3);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIObjectLinkHandle_Name() {
+        return (EAttribute)getIObjectLinkHandle().getEStructuralFeatures().get(4);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIObjectLinkHandle_Id() {
+        return (EAttribute)getIObjectLinkHandle().getEStructuralFeatures().get(5);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EClass getIObjectModelDiagram() {
+		if (iObjectModelDiagramEClass == null) {
+			iObjectModelDiagramEClass = (EClass)EPackage.Registry.INSTANCE.getEPackage(UMLRpyPackage.eNS_URI).getEClassifiers().get(163);
+		}
+		return iObjectModelDiagramEClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EClass getIObjectNode() {
+		if (iObjectNodeEClass == null) {
+			iObjectNodeEClass = (EClass)EPackage.Registry.INSTANCE.getEPackage(UMLRpyPackage.eNS_URI).getEClassifiers().get(164);
+		}
+		return iObjectNodeEClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getIObjectNode_Represents() {
+        return (EReference)getIObjectNode().getEStructuralFeatures().get(0);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getIObjectNode_TheInState() {
+        return (EReference)getIObjectNode().getEStructuralFeatures().get(1);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIObjectNode_InState() {
+        return (EAttribute)getIObjectNode().getEStructuralFeatures().get(2);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EClass getIOperation() {
+		if (iOperationEClass == null) {
+			iOperationEClass = (EClass)EPackage.Registry.INSTANCE.getEPackage(UMLRpyPackage.eNS_URI).getEClassifiers().get(165);
+		}
+		return iOperationEClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EClass getIPackage() {
+		if (iPackageEClass == null) {
+			iPackageEClass = (EClass)EPackage.Registry.INSTANCE.getEPackage(UMLRpyPackage.eNS_URI).getEClassifiers().get(166);
+		}
+		return iPackageEClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIPackage_ModifiedTimeWeak() {
+        return (EAttribute)getIPackage().getEStructuralFeatures().get(0);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIPackage_Id() {
+        return (EAttribute)getIPackage().getEStructuralFeatures().get(1);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getIPackage_Description() {
+        return (EReference)getIPackage().getEStructuralFeatures().get(2);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIPackage_UmlDependencyID() {
+        return (EAttribute)getIPackage().getEStructuralFeatures().get(3);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIPackage_LastID() {
+        return (EAttribute)getIPackage().getEStructuralFeatures().get(4);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIPackage_MyState() {
+        return (EAttribute)getIPackage().getEStructuralFeatures().get(5);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getIPackage_Annotations() {
+        return (EReference)getIPackage().getEStructuralFeatures().get(6);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIPackage_ObjectCreation() {
+        return (EAttribute)getIPackage().getEStructuralFeatures().get(7);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getIPackage_Stereotypes() {
+        return (EReference)getIPackage().getEStructuralFeatures().get(8);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIPackage_Name() {
+        return (EAttribute)getIPackage().getEStructuralFeatures().get(9);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getIPackage_Properties() {
+        return (EReference)getIPackage().getEStructuralFeatures().get(10);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIPackage_Cmheader() {
+        return (EAttribute)getIPackage().getEStructuralFeatures().get(11);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EClass getIPanelDiagram() {
+		if (iPanelDiagramEClass == null) {
+			iPanelDiagramEClass = (EClass)EPackage.Registry.INSTANCE.getEPackage(UMLRpyPackage.eNS_URI).getEClassifiers().get(167);
+		}
+		return iPanelDiagramEClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EClass getIPart() {
+		if (iPartEClass == null) {
+			iPartEClass = (EClass)EPackage.Registry.INSTANCE.getEPackage(UMLRpyPackage.eNS_URI).getEClassifiers().get(168);
+		}
+		return iPartEClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getIPart_Stereotypes() {
+        return (EReference)getIPart().getEStructuralFeatures().get(0);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getIPart_OtherClass() {
+        return (EReference)getIPart().getEStructuralFeatures().get(1);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getIPart_Inverse() {
+        return (EReference)getIPart().getEStructuralFeatures().get(2);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getIPart_Dependencies() {
+        return (EReference)getIPart().getEStructuralFeatures().get(3);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getIPart_Tags() {
+        return (EReference)getIPart().getEStructuralFeatures().get(4);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getIPart_InitialCallAction() {
+        return (EReference)getIPart().getEStructuralFeatures().get(5);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIPart_CodeUpdateCGTime() {
+        return (EAttribute)getIPart().getEStructuralFeatures().get(6);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getIPart_TheMainDiagram() {
+        return (EReference)getIPart().getEStructuralFeatures().get(7);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getIPart_Slots() {
+        return (EReference)getIPart().getEStructuralFeatures().get(8);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getIPart_HyperLinks() {
+        return (EReference)getIPart().getEStructuralFeatures().get(9);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EClass getIPin() {
+		if (iPinEClass == null) {
+			iPinEClass = (EClass)EPackage.Registry.INSTANCE.getEPackage(UMLRpyPackage.eNS_URI).getEClassifiers().get(169);
+		}
+		return iPinEClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getIPin_M_type() {
+        return (EReference)getIPin().getEStructuralFeatures().get(0);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIPin_M_isParameterPin() {
+        return (EAttribute)getIPin().getEStructuralFeatures().get(1);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getIPin_M_corePin() {
+        return (EReference)getIPin().getEStructuralFeatures().get(2);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EClass getIPort() {
+		if (iPortEClass == null) {
+			iPortEClass = (EClass)EPackage.Registry.INSTANCE.getEPackage(UMLRpyPackage.eNS_URI).getEClassifiers().get(170);
+		}
+		return iPortEClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getIPort_OtherClass() {
+        return (EReference)getIPort().getEStructuralFeatures().get(0);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIPort_Behavioral() {
+        return (EAttribute)getIPort().getEStructuralFeatures().get(1);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIPort_Reversed() {
+        return (EAttribute)getIPort().getEStructuralFeatures().get(2);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getIPort_Stereotypes() {
+        return (EReference)getIPort().getEStructuralFeatures().get(3);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getIPort_Tags() {
+        return (EReference)getIPort().getEStructuralFeatures().get(4);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIPort_ObjectCreation() {
+        return (EAttribute)getIPort().getEStructuralFeatures().get(5);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIPort_UmlDependencyID() {
+        return (EAttribute)getIPort().getEStructuralFeatures().get(6);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIPort_LastID() {
+        return (EAttribute)getIPort().getEStructuralFeatures().get(7);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getIPort_Dependencies() {
+        return (EReference)getIPort().getEStructuralFeatures().get(8);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getIPort_Annotations() {
+        return (EReference)getIPort().getEStructuralFeatures().get(9);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EClass getIPrimitiveOperation() {
+		if (iPrimitiveOperationEClass == null) {
+			iPrimitiveOperationEClass = (EClass)EPackage.Registry.INSTANCE.getEPackage(UMLRpyPackage.eNS_URI).getEClassifiers().get(171);
+		}
+		return iPrimitiveOperationEClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getIPrimitiveOperation_Properties() {
+        return (EReference)getIPrimitiveOperation().getEStructuralFeatures().get(0);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIPrimitiveOperation_LastID() {
+        return (EAttribute)getIPrimitiveOperation().getEStructuralFeatures().get(1);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getIPrimitiveOperation_Args() {
+        return (EReference)getIPrimitiveOperation().getEStructuralFeatures().get(2);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getIPrimitiveOperation_ReturnType() {
+        return (EReference)getIPrimitiveOperation().getEStructuralFeatures().get(3);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIPrimitiveOperation_Abstract() {
+        return (EAttribute)getIPrimitiveOperation().getEStructuralFeatures().get(4);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIPrimitiveOperation_Final() {
+        return (EAttribute)getIPrimitiveOperation().getEStructuralFeatures().get(5);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIPrimitiveOperation_Concurrency() {
+        return (EAttribute)getIPrimitiveOperation().getEStructuralFeatures().get(6);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIPrimitiveOperation_Protection() {
+        return (EAttribute)getIPrimitiveOperation().getEStructuralFeatures().get(7);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIPrimitiveOperation_Static() {
+        return (EAttribute)getIPrimitiveOperation().getEStructuralFeatures().get(8);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIPrimitiveOperation_Constant() {
+        return (EAttribute)getIPrimitiveOperation().getEStructuralFeatures().get(9);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getIPrimitiveOperation_ItsBody() {
+        return (EReference)getIPrimitiveOperation().getEStructuralFeatures().get(10);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getIPrimitiveOperation_Tags() {
+        return (EReference)getIPrimitiveOperation().getEStructuralFeatures().get(11);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getIPrimitiveOperation_Annotations() {
+        return (EReference)getIPrimitiveOperation().getEStructuralFeatures().get(12);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getIPrimitiveOperation_Dependencies() {
+        return (EReference)getIPrimitiveOperation().getEStructuralFeatures().get(13);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getIPrimitiveOperation_Stereotypes() {
+        return (EReference)getIPrimitiveOperation().getEStructuralFeatures().get(14);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getIPrimitiveOperation_MyReturnType() {
+        return (EReference)getIPrimitiveOperation().getEStructuralFeatures().get(15);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getIPrimitiveOperation_Description() {
+        return (EReference)getIPrimitiveOperation().getEStructuralFeatures().get(16);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIPrimitiveOperation_RequiremenTracabilityHandle() {
+        return (EAttribute)getIPrimitiveOperation().getEStructuralFeatures().get(17);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getIPrimitiveOperation_Declaratives() {
+        return (EReference)getIPrimitiveOperation().getEStructuralFeatures().get(18);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getIPrimitiveOperation_ItsActivityGraph() {
+        return (EReference)getIPrimitiveOperation().getEStructuralFeatures().get(19);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getIPrimitiveOperation_EmbededFiles() {
+        return (EReference)getIPrimitiveOperation().getEStructuralFeatures().get(20);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIPrimitiveOperation_CodeUpdateCGTime() {
+        return (EAttribute)getIPrimitiveOperation().getEStructuralFeatures().get(21);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getIPrimitiveOperation_TemplateParameters() {
+        return (EReference)getIPrimitiveOperation().getEStructuralFeatures().get(22);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EClass getIProfile() {
+		if (iProfileEClass == null) {
+			iProfileEClass = (EClass)EPackage.Registry.INSTANCE.getEPackage(UMLRpyPackage.eNS_URI).getEClassifiers().get(172);
+		}
+		return iProfileEClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getIProfile_Declaratives() {
+        return (EReference)getIProfile().getEStructuralFeatures().get(0);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getIProfile_DefaultComposite() {
+        return (EReference)getIProfile().getEStructuralFeatures().get(1);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIProfile_EventsBaseID() {
+        return (EAttribute)getIProfile().getEStructuralFeatures().get(2);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getIProfile_Classes() {
+        return (EReference)getIProfile().getEStructuralFeatures().get(3);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIProfile_ConfigurationRelatedTime() {
+        return (EAttribute)getIProfile().getEStructuralFeatures().get(4);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getIProfile_Tags() {
+        return (EReference)getIProfile().getEStructuralFeatures().get(5);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getIProfile_Types() {
+        return (EReference)getIProfile().getEStructuralFeatures().get(6);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getIProfile_MatrixLayouts() {
+        return (EReference)getIProfile().getEStructuralFeatures().get(7);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIProfile_License() {
+        return (EAttribute)getIProfile().getEStructuralFeatures().get(8);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EClass getIProject() {
+		if (iProjectEClass == null) {
+			iProjectEClass = (EClass)EPackage.Registry.INSTANCE.getEPackage(UMLRpyPackage.eNS_URI).getEClassifiers().get(173);
+		}
+		return iProjectEClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIProject_UserColors() {
+        return (EAttribute)getIProject().getEStructuralFeatures().get(0);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getIProject_DefaultSubsystem() {
+        return (EReference)getIProject().getEStructuralFeatures().get(1);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getIProject_Component() {
+        return (EReference)getIProject().getEStructuralFeatures().get(2);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getIProject_Multiplicities() {
+        return (EReference)getIProject().getEStructuralFeatures().get(3);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getIProject_Subsystems() {
+        return (EReference)getIProject().getEStructuralFeatures().get(4);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getIProject_Diagrams() {
+        return (EReference)getIProject().getEStructuralFeatures().get(5);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getIProject_Components() {
+        return (EReference)getIProject().getEStructuralFeatures().get(6);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getIProject_PanelDiagrams() {
+        return (EReference)getIProject().getEStructuralFeatures().get(7);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getIProject_HyperLinks() {
+        return (EReference)getIProject().getEStructuralFeatures().get(8);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getIProject_MSCS() {
+        return (EReference)getIProject().getEStructuralFeatures().get(9);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getIProject_UCDiagrams() {
+        return (EReference)getIProject().getEStructuralFeatures().get(10);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getIProject_CollaborationDiagrams() {
+        return (EReference)getIProject().getEStructuralFeatures().get(11);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getIProject_Declaratives() {
+        return (EReference)getIProject().getEStructuralFeatures().get(12);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getIProject_ComponentDiagrams() {
+        return (EReference)getIProject().getEStructuralFeatures().get(13);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIProject_UnitSccProjName() {
+        return (EAttribute)getIProject().getEStructuralFeatures().get(14);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIProject_UnitSccProjPath() {
+        return (EAttribute)getIProject().getEStructuralFeatures().get(15);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getIProject_Dependencies() {
+        return (EReference)getIProject().getEStructuralFeatures().get(16);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIProject_CodeUpdateCGTime() {
+        return (EAttribute)getIProject().getEStructuralFeatures().get(17);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIProject_Version() {
+        return (EAttribute)getIProject().getEStructuralFeatures().get(18);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EClass getIProperty() {
+		if (iPropertyEClass == null) {
+			iPropertyEClass = (EClass)EPackage.Registry.INSTANCE.getEPackage(UMLRpyPackage.eNS_URI).getEClassifiers().get(174);
+		}
+		return iPropertyEClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIProperty_Name() {
+        return (EAttribute)getIProperty().getEStructuralFeatures().get(0);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIProperty_Value() {
+        return (EAttribute)getIProperty().getEStructuralFeatures().get(1);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIProperty_Type() {
+        return (EAttribute)getIProperty().getEStructuralFeatures().get(2);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIProperty_ExtraTypeInfo() {
+        return (EAttribute)getIProperty().getEStructuralFeatures().get(3);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EClass getIPropertyContainer() {
+		if (iPropertyContainerEClass == null) {
+			iPropertyContainerEClass = (EClass)EPackage.Registry.INSTANCE.getEPackage(UMLRpyPackage.eNS_URI).getEClassifiers().get(175);
+		}
+		return iPropertyContainerEClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getIPropertyContainer_Subjects() {
+        return (EReference)getIPropertyContainer().getEStructuralFeatures().get(0);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EClass getIPropertyMetaclass() {
+		if (iPropertyMetaclassEClass == null) {
+			iPropertyMetaclassEClass = (EClass)EPackage.Registry.INSTANCE.getEPackage(UMLRpyPackage.eNS_URI).getEClassifiers().get(176);
+		}
+		return iPropertyMetaclassEClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIPropertyMetaclass_Name() {
+        return (EAttribute)getIPropertyMetaclass().getEStructuralFeatures().get(0);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getIPropertyMetaclass_Properties() {
+        return (EReference)getIPropertyMetaclass().getEStructuralFeatures().get(1);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EClass getIPropertySubject() {
+		if (iPropertySubjectEClass == null) {
+			iPropertySubjectEClass = (EClass)EPackage.Registry.INSTANCE.getEPackage(UMLRpyPackage.eNS_URI).getEClassifiers().get(177);
+		}
+		return iPropertySubjectEClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIPropertySubject_Name() {
+        return (EAttribute)getIPropertySubject().getEStructuralFeatures().get(0);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getIPropertySubject_Metaclasses() {
+        return (EReference)getIPropertySubject().getEStructuralFeatures().get(1);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EClass getIReception() {
+		if (iReceptionEClass == null) {
+			iReceptionEClass = (EClass)EPackage.Registry.INSTANCE.getEPackage(UMLRpyPackage.eNS_URI).getEClassifiers().get(178);
+		}
+		return iReceptionEClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIReception_Id() {
+        return (EAttribute)getIReception().getEStructuralFeatures().get(0);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIReception_MyState() {
+        return (EAttribute)getIReception().getEStructuralFeatures().get(1);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getIReception_Args() {
+        return (EReference)getIReception().getEStructuralFeatures().get(2);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getIReception_Event() {
+        return (EReference)getIReception().getEStructuralFeatures().get(3);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIReception_ModifiedTimeWeak() {
+        return (EAttribute)getIReception().getEStructuralFeatures().get(4);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getIReception_Dependencies() {
+        return (EReference)getIReception().getEStructuralFeatures().get(5);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIReception_LastID() {
+        return (EAttribute)getIReception().getEStructuralFeatures().get(6);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIReception_RequiremenTracabilityHandle() {
+        return (EAttribute)getIReception().getEStructuralFeatures().get(7);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getIReception_Description() {
+        return (EReference)getIReception().getEStructuralFeatures().get(8);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIReception_ObjectCreation() {
+        return (EAttribute)getIReception().getEStructuralFeatures().get(9);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIReception_UmlDependencyID() {
+        return (EAttribute)getIReception().getEStructuralFeatures().get(10);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EClass getIReferenceActivity() {
+		if (iReferenceActivityEClass == null) {
+			iReferenceActivityEClass = (EClass)EPackage.Registry.INSTANCE.getEPackage(UMLRpyPackage.eNS_URI).getEClassifiers().get(179);
+		}
+		return iReferenceActivityEClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIReferenceActivity_Id() {
+        return (EAttribute)getIReferenceActivity().getEStructuralFeatures().get(0);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIReferenceActivity_Name() {
+        return (EAttribute)getIReferenceActivity().getEStructuralFeatures().get(1);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getIReferenceActivity_Stereotypes() {
+        return (EReference)getIReferenceActivity().getEStructuralFeatures().get(2);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIReferenceActivity_ModifiedTimeWeak() {
+        return (EAttribute)getIReferenceActivity().getEStructuralFeatures().get(3);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getIReferenceActivity_Parent() {
+        return (EReference)getIReferenceActivity().getEStructuralFeatures().get(4);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIReferenceActivity_StateType() {
+        return (EAttribute)getIReferenceActivity().getEStructuralFeatures().get(5);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIReferenceActivity_DefaultTrans() {
+        return (EAttribute)getIReferenceActivity().getEStructuralFeatures().get(6);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getIReferenceActivity_Swimlane() {
+        return (EReference)getIReferenceActivity().getEStructuralFeatures().get(7);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getIReferenceActivity_ReferencedActivity() {
+        return (EReference)getIReferenceActivity().getEStructuralFeatures().get(8);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIReferenceActivity_MyState() {
+        return (EAttribute)getIReferenceActivity().getEStructuralFeatures().get(9);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EClass getIRelation() {
+		if (iRelationEClass == null) {
+			iRelationEClass = (EClass)EPackage.Registry.INSTANCE.getEPackage(UMLRpyPackage.eNS_URI).getEClassifiers().get(180);
+		}
+		return iRelationEClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EClass getIRequirement() {
+		if (iRequirementEClass == null) {
+			iRequirementEClass = (EClass)EPackage.Registry.INSTANCE.getEPackage(UMLRpyPackage.eNS_URI).getEClassifiers().get(181);
+		}
+		return iRequirementEClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIRequirement_Id() {
+        return (EAttribute)getIRequirement().getEStructuralFeatures().get(0);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIRequirement_Name() {
+        return (EAttribute)getIRequirement().getEStructuralFeatures().get(1);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getIRequirement_Annotations() {
+        return (EReference)getIRequirement().getEStructuralFeatures().get(2);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIRequirement_MyState() {
+        return (EAttribute)getIRequirement().getEStructuralFeatures().get(3);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIRequirement_LastID() {
+        return (EAttribute)getIRequirement().getEStructuralFeatures().get(4);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getIRequirement_Stereotypes() {
+        return (EReference)getIRequirement().getEStructuralFeatures().get(5);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIRequirement_ModifiedTimeWeak() {
+        return (EAttribute)getIRequirement().getEStructuralFeatures().get(6);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIRequirement_ReqID() {
+        return (EAttribute)getIRequirement().getEStructuralFeatures().get(7);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getIRequirement_Dependencies() {
+        return (EReference)getIRequirement().getEStructuralFeatures().get(8);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getIRequirement_Anchors() {
+        return (EReference)getIRequirement().getEStructuralFeatures().get(9);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getIRequirement_HyperLinks() {
+        return (EReference)getIRequirement().getEStructuralFeatures().get(10);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getIRequirement_TheMainDiagram() {
+        return (EReference)getIRequirement().getEStructuralFeatures().get(11);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EClass getISendAction() {
+		if (iSendActionEClass == null) {
+			iSendActionEClass = (EClass)EPackage.Registry.INSTANCE.getEPackage(UMLRpyPackage.eNS_URI).getEClassifiers().get(182);
+		}
+		return iSendActionEClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getISendAction_M_hTarget() {
+        return (EReference)getISendAction().getEStructuralFeatures().get(0);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getISendAction_M_hEvent() {
+        return (EReference)getISendAction().getEStructuralFeatures().get(1);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getISendAction_ArgValCount() {
+        return (EAttribute)getISendAction().getEStructuralFeatures().get(2);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getISendAction_GraphElements() {
+        return (EReference)getISendAction().getEStructuralFeatures().get(3);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EClass getISequenceDiagram() {
+		if (iSequenceDiagramEClass == null) {
+			iSequenceDiagramEClass = (EClass)EPackage.Registry.INSTANCE.getEPackage(UMLRpyPackage.eNS_URI).getEClassifiers().get(183);
+		}
+		return iSequenceDiagramEClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EClass getISlot() {
+		if (iSlotEClass == null) {
+			iSlotEClass = (EClass)EPackage.Registry.INSTANCE.getEPackage(UMLRpyPackage.eNS_URI).getEClassifiers().get(184);
+		}
+		return iSlotEClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getISlot_Id() {
+        return (EAttribute)getISlot().getEStructuralFeatures().get(0);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getISlot_Name() {
+        return (EAttribute)getISlot().getEStructuralFeatures().get(1);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getISlot_Value() {
+        return (EAttribute)getISlot().getEStructuralFeatures().get(2);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getISlot_DefiningVar() {
+        return (EReference)getISlot().getEStructuralFeatures().get(3);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EClass getIState() {
+		if (iStateEClass == null) {
+			iStateEClass = (EClass)EPackage.Registry.INSTANCE.getEPackage(UMLRpyPackage.eNS_URI).getEClassifiers().get(185);
+		}
+		return iStateEClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getIState_Parent() {
+        return (EReference)getIState().getEStructuralFeatures().get(0);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIState_StateType() {
+        return (EAttribute)getIState().getEStructuralFeatures().get(1);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getIState_DefaultTrans() {
+        return (EReference)getIState().getEStructuralFeatures().get(2);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getIState_EntryAction() {
+        return (EReference)getIState().getEStructuralFeatures().get(3);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getIState_InheritsFromHandle() {
+        return (EReference)getIState().getEStructuralFeatures().get(4);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getIState_ExitAction() {
+        return (EReference)getIState().getEStructuralFeatures().get(5);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getIState_NestedStateChart() {
+        return (EReference)getIState().getEStructuralFeatures().get(6);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIState_RequiremenTracabilityHandle() {
+        return (EAttribute)getIState().getEStructuralFeatures().get(7);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getIState_Annotations() {
+        return (EReference)getIState().getEStructuralFeatures().get(8);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getIState_Dependencies() {
+        return (EReference)getIState().getEStructuralFeatures().get(9);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getIState_TheMainDiagram() {
+        return (EReference)getIState().getEStructuralFeatures().get(10);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getIState_Swimlane() {
+        return (EReference)getIState().getEStructuralFeatures().get(11);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIState_CodeUpdateCGTime() {
+        return (EAttribute)getIState().getEStructuralFeatures().get(12);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EClass getIStateChart() {
+		if (iStateChartEClass == null) {
+			iStateChartEClass = (EClass)EPackage.Registry.INSTANCE.getEPackage(UMLRpyPackage.eNS_URI).getEClassifiers().get(186);
+		}
+		return iStateChartEClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getIStateChart_States() {
+        return (EReference)getIStateChart().getEStructuralFeatures().get(0);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIStateChart_BaseVersion() {
+        return (EAttribute)getIStateChart().getEStructuralFeatures().get(1);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getIStateChart_Diagram() {
+        return (EReference)getIStateChart().getEStructuralFeatures().get(2);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getIStateChart_Views() {
+        return (EReference)getIStateChart().getEStructuralFeatures().get(3);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getIStateChart_InheritsFromHandle() {
+        return (EReference)getIStateChart().getEStructuralFeatures().get(4);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EClass getIStateChartDiagram() {
+		if (iStateChartDiagramEClass == null) {
+			iStateChartDiagramEClass = (EClass)EPackage.Registry.INSTANCE.getEPackage(UMLRpyPackage.eNS_URI).getEClassifiers().get(187);
+		}
+		return iStateChartDiagramEClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EClass getIStateVertex() {
+		if (iStateVertexEClass == null) {
+			iStateVertexEClass = (EClass)EPackage.Registry.INSTANCE.getEPackage(UMLRpyPackage.eNS_URI).getEClassifiers().get(188);
+		}
+		return iStateVertexEClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIStateVertex_ModifiedTimeWeak() {
+        return (EAttribute)getIStateVertex().getEStructuralFeatures().get(0);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIStateVertex_Id() {
+        return (EAttribute)getIStateVertex().getEStructuralFeatures().get(1);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getIStateVertex_Description() {
+        return (EReference)getIStateVertex().getEStructuralFeatures().get(2);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIStateVertex_UmlDependencyID() {
+        return (EAttribute)getIStateVertex().getEStructuralFeatures().get(3);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIStateVertex_MyState() {
+        return (EAttribute)getIStateVertex().getEStructuralFeatures().get(4);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getIStateVertex_Stereotypes() {
+        return (EReference)getIStateVertex().getEStructuralFeatures().get(5);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIStateVertex_ObjectCreation() {
+        return (EAttribute)getIStateVertex().getEStructuralFeatures().get(6);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIStateVertex_Name() {
+        return (EAttribute)getIStateVertex().getEStructuralFeatures().get(7);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EClass getIStereotype() {
+		if (iStereotypeEClass == null) {
+			iStereotypeEClass = (EClass)EPackage.Registry.INSTANCE.getEPackage(UMLRpyPackage.eNS_URI).getEClassifiers().get(189);
+		}
+		return iStereotypeEClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getIStereotype_Properties() {
+        return (EReference)getIStereotype().getEStructuralFeatures().get(0);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIStereotype_M2Classes() {
+        return (EAttribute)getIStereotype().getEStructuralFeatures().get(1);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIStereotype_NewTerm() {
+        return (EAttribute)getIStereotype().getEStructuralFeatures().get(2);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getIStereotype_Description() {
+        return (EReference)getIStereotype().getEStructuralFeatures().get(3);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getIStereotype_Tags() {
+        return (EReference)getIStereotype().getEStructuralFeatures().get(4);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIStereotype_LastID() {
+        return (EAttribute)getIStereotype().getEStructuralFeatures().get(5);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getIStereotype_Inheritances() {
+        return (EReference)getIStereotype().getEStructuralFeatures().get(6);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getIStereotype_Dependencies() {
+        return (EReference)getIStereotype().getEStructuralFeatures().get(7);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIStereotype_RequiremenTracabilityHandle() {
+        return (EAttribute)getIStereotype().getEStructuralFeatures().get(8);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIStereotype_ObjectCreation() {
+        return (EAttribute)getIStereotype().getEStructuralFeatures().get(9);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIStereotype_UmlDependencyID() {
+        return (EAttribute)getIStereotype().getEStructuralFeatures().get(10);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getIStereotype_TheMainDiagram() {
+        return (EReference)getIStereotype().getEStructuralFeatures().get(11);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getIStereotype_Annotations() {
+        return (EReference)getIStereotype().getEStructuralFeatures().get(12);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EClass getIStructureDiagram() {
+		if (iStructureDiagramEClass == null) {
+			iStructureDiagramEClass = (EClass)EPackage.Registry.INSTANCE.getEPackage(UMLRpyPackage.eNS_URI).getEClassifiers().get(190);
+		}
+		return iStructureDiagramEClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EClass getISubsystem() {
+		if (iSubsystemEClass == null) {
+			iSubsystemEClass = (EClass)EPackage.Registry.INSTANCE.getEPackage(UMLRpyPackage.eNS_URI).getEClassifiers().get(191);
+		}
+		return iSubsystemEClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getISubsystem_Id() {
+        return (EAttribute)getISubsystem().getEStructuralFeatures().get(0);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getISubsystem_MyState() {
+        return (EAttribute)getISubsystem().getEStructuralFeatures().get(1);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getISubsystem_Name() {
+        return (EAttribute)getISubsystem().getEStructuralFeatures().get(2);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getISubsystem_ModifiedTimeWeak() {
+        return (EAttribute)getISubsystem().getEStructuralFeatures().get(3);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getISubsystem_DefaultComposite() {
+        return (EReference)getISubsystem().getEStructuralFeatures().get(4);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getISubsystem_EventsBaseID() {
+        return (EAttribute)getISubsystem().getEStructuralFeatures().get(5);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getISubsystem_Classes() {
+        return (EReference)getISubsystem().getEStructuralFeatures().get(6);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getISubsystem_ConfigurationRelatedTime() {
+        return (EAttribute)getISubsystem().getEStructuralFeatures().get(7);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getISubsystem_Properties() {
+        return (EReference)getISubsystem().getEStructuralFeatures().get(8);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getISubsystem_LastID() {
+        return (EAttribute)getISubsystem().getEStructuralFeatures().get(9);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getISubsystem_Cmheader() {
+        return (EAttribute)getISubsystem().getEStructuralFeatures().get(10);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getISubsystem_Declaratives() {
+        return (EReference)getISubsystem().getEStructuralFeatures().get(11);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getISubsystem_Types() {
+        return (EReference)getISubsystem().getEStructuralFeatures().get(12);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getISubsystem_Stereotypes() {
+        return (EReference)getISubsystem().getEStructuralFeatures().get(13);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getISubsystem_PredefinedTypes() {
+        return (EAttribute)getISubsystem().getEStructuralFeatures().get(14);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getISubsystem_Events() {
+        return (EReference)getISubsystem().getEStructuralFeatures().get(15);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getISubsystem_Annotations() {
+        return (EReference)getISubsystem().getEStructuralFeatures().get(16);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getISubsystem_UseCases() {
+        return (EReference)getISubsystem().getEStructuralFeatures().get(17);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getISubsystem_Actors() {
+        return (EReference)getISubsystem().getEStructuralFeatures().get(18);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getISubsystem_Description() {
+        return (EReference)getISubsystem().getEStructuralFeatures().get(19);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getISubsystem_Tags() {
+        return (EReference)getISubsystem().getEStructuralFeatures().get(20);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getISubsystem_Dependencies() {
+        return (EReference)getISubsystem().getEStructuralFeatures().get(21);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getISubsystem_OwnerHandle() {
+        return (EReference)getISubsystem().getEStructuralFeatures().get(22);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getISubsystem_TheMainDiagram() {
+        return (EReference)getISubsystem().getEStructuralFeatures().get(23);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getISubsystem_HyperLinks() {
+        return (EReference)getISubsystem().getEStructuralFeatures().get(24);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getISubsystem_TableLayouts() {
+        return (EReference)getISubsystem().getEStructuralFeatures().get(25);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getISubsystem_MatrixLayouts() {
+        return (EReference)getISubsystem().getEStructuralFeatures().get(26);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getISubsystem_TableInstances() {
+        return (EReference)getISubsystem().getEStructuralFeatures().get(27);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getISubsystem_MatrixInstances() {
+        return (EReference)getISubsystem().getEStructuralFeatures().get(28);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getISubsystem_EmbededFiles() {
+        return (EReference)getISubsystem().getEStructuralFeatures().get(29);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getISubsystem_ComponentFiles() {
+        return (EReference)getISubsystem().getEStructuralFeatures().get(30);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getISubsystem_RequiremenTracabilityHandle() {
+        return (EAttribute)getISubsystem().getEStructuralFeatures().get(31);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getISubsystem_CodeUpdateCGTime() {
+        return (EAttribute)getISubsystem().getEStructuralFeatures().get(32);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getISubsystem_ObjectCreation() {
+        return (EAttribute)getISubsystem().getEStructuralFeatures().get(33);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getISubsystem_UmlDependencyID() {
+        return (EAttribute)getISubsystem().getEStructuralFeatures().get(34);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getISubsystem_AssociationElements() {
+        return (EReference)getISubsystem().getEStructuralFeatures().get(35);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EClass getISwimlane() {
+		if (iSwimlaneEClass == null) {
+			iSwimlaneEClass = (EClass)EPackage.Registry.INSTANCE.getEPackage(UMLRpyPackage.eNS_URI).getEClassifiers().get(192);
+		}
+		return iSwimlaneEClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getISwimlane_Id() {
+        return (EAttribute)getISwimlane().getEStructuralFeatures().get(0);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getISwimlane_Name() {
+        return (EAttribute)getISwimlane().getEStructuralFeatures().get(1);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getISwimlane_ModifiedTimeWeak() {
+        return (EAttribute)getISwimlane().getEStructuralFeatures().get(2);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getISwimlane_Description() {
+        return (EReference)getISwimlane().getEStructuralFeatures().get(3);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getISwimlane_Represents() {
+        return (EReference)getISwimlane().getEStructuralFeatures().get(4);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getISwimlane_MyState() {
+        return (EAttribute)getISwimlane().getEStructuralFeatures().get(5);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getISwimlane_ObjectCreation() {
+        return (EAttribute)getISwimlane().getEStructuralFeatures().get(6);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getISwimlane_UmlDependencyID() {
+        return (EAttribute)getISwimlane().getEStructuralFeatures().get(7);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getISwimlane_Swimlanes() {
+        return (EReference)getISwimlane().getEStructuralFeatures().get(8);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getISwimlane_Stereotypes() {
+        return (EReference)getISwimlane().getEStructuralFeatures().get(9);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EClass getISysMLPort() {
+		if (iSysMLPortEClass == null) {
+			iSysMLPortEClass = (EClass)EPackage.Registry.INSTANCE.getEPackage(UMLRpyPackage.eNS_URI).getEClassifiers().get(193);
+		}
+		return iSysMLPortEClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getISysMLPort_Dependencies() {
+        return (EReference)getISysMLPort().getEStructuralFeatures().get(0);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getISysMLPort_Stereotypes() {
+        return (EReference)getISysMLPort().getEStructuralFeatures().get(1);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getISysMLPort_Tags() {
+        return (EReference)getISysMLPort().getEStructuralFeatures().get(2);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getISysMLPort_OtherClass() {
+        return (EReference)getISysMLPort().getEStructuralFeatures().get(3);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getISysMLPort_Direction() {
+        return (EAttribute)getISysMLPort().getEStructuralFeatures().get(4);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getISysMLPort_Description() {
+        return (EReference)getISysMLPort().getEStructuralFeatures().get(5);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getISysMLPort_LastID() {
+        return (EAttribute)getISysMLPort().getEStructuralFeatures().get(6);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getISysMLPort_Reversed() {
+        return (EAttribute)getISysMLPort().getEStructuralFeatures().get(7);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EClass getITableInstance() {
+		if (iTableInstanceEClass == null) {
+			iTableInstanceEClass = (EClass)EPackage.Registry.INSTANCE.getEPackage(UMLRpyPackage.eNS_URI).getEClassifiers().get(194);
+		}
+		return iTableInstanceEClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getITableInstance_Id() {
+        return (EAttribute)getITableInstance().getEStructuralFeatures().get(0);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getITableInstance_MyState() {
+        return (EAttribute)getITableInstance().getEStructuralFeatures().get(1);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getITableInstance_Properties() {
+        return (EReference)getITableInstance().getEStructuralFeatures().get(2);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getITableInstance_Name() {
+        return (EAttribute)getITableInstance().getEStructuralFeatures().get(3);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getITableInstance_ModifiedTimeWeak() {
+        return (EAttribute)getITableInstance().getEStructuralFeatures().get(4);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getITableInstance_LayoutHandle() {
+        return (EReference)getITableInstance().getEStructuralFeatures().get(5);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getITableInstance_ScopeHandles() {
+        return (EReference)getITableInstance().getEStructuralFeatures().get(6);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getITableInstance_Stereotypes() {
+        return (EReference)getITableInstance().getEStructuralFeatures().get(7);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EClass getITableLayout() {
+		if (iTableLayoutEClass == null) {
+			iTableLayoutEClass = (EClass)EPackage.Registry.INSTANCE.getEPackage(UMLRpyPackage.eNS_URI).getEClassifiers().get(195);
+		}
+		return iTableLayoutEClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getITableLayout_Properties() {
+        return (EReference)getITableLayout().getEStructuralFeatures().get(0);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getITableLayout_Stereotypes() {
+        return (EReference)getITableLayout().getEStructuralFeatures().get(1);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getITableLayout_Tags() {
+        return (EReference)getITableLayout().getEStructuralFeatures().get(2);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getITableLayout_TableElementTypes() {
+        return (EReference)getITableLayout().getEStructuralFeatures().get(3);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getITableLayout_DataColumns() {
+        return (EReference)getITableLayout().getEStructuralFeatures().get(4);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getITableLayout_Description() {
+        return (EReference)getITableLayout().getEStructuralFeatures().get(5);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EClass getITableView() {
+		if (iTableViewEClass == null) {
+			iTableViewEClass = (EClass)EPackage.Registry.INSTANCE.getEPackage(UMLRpyPackage.eNS_URI).getEClassifiers().get(196);
+		}
+		return iTableViewEClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EClass getITag() {
+		if (iTagEClass == null) {
+			iTagEClass = (EClass)EPackage.Registry.INSTANCE.getEPackage(UMLRpyPackage.eNS_URI).getEClassifiers().get(197);
+		}
+		return iTagEClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getITag_Id() {
+        return (EAttribute)getITag().getEStructuralFeatures().get(0);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getITag_Name() {
+        return (EAttribute)getITag().getEStructuralFeatures().get(1);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getITag_ModifiedTimeWeak() {
+        return (EAttribute)getITag().getEStructuralFeatures().get(2);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getITag_ValueSpecifications() {
+        return (EReference)getITag().getEStructuralFeatures().get(3);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getITag_TypeOf() {
+        return (EReference)getITag().getEStructuralFeatures().get(4);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getITag_MyState() {
+        return (EAttribute)getITag().getEStructuralFeatures().get(5);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getITag_Multiplicity() {
+        return (EAttribute)getITag().getEStructuralFeatures().get(6);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getITag_Properties() {
+        return (EReference)getITag().getEStructuralFeatures().get(7);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getITag_Description() {
+        return (EReference)getITag().getEStructuralFeatures().get(8);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getITag_HyperLinks() {
+        return (EReference)getITag().getEStructuralFeatures().get(9);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getITag_Base() {
+        return (EReference)getITag().getEStructuralFeatures().get(10);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getITag_MetaClass() {
+        return (EAttribute)getITag().getEStructuralFeatures().get(11);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getITag_DefaultValue() {
+        return (EAttribute)getITag().getEStructuralFeatures().get(12);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getITag_CodeUpdateCGTime() {
+        return (EAttribute)getITag().getEStructuralFeatures().get(13);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EClass getITemplateInst() {
+		if (iTemplateInstEClass == null) {
+			iTemplateInstEClass = (EClass)EPackage.Registry.INSTANCE.getEPackage(UMLRpyPackage.eNS_URI).getEClassifiers().get(198);
+		}
+		return iTemplateInstEClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getITemplateInst_Id() {
+        return (EAttribute)getITemplateInst().getEStructuralFeatures().get(0);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getITemplateInst_ModifiedTimeWeak() {
+        return (EAttribute)getITemplateInst().getEStructuralFeatures().get(1);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getITemplateInst_TemplateInstParams() {
+        return (EReference)getITemplateInst().getEStructuralFeatures().get(2);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getITemplateInst_OfTemplate() {
+        return (EReference)getITemplateInst().getEStructuralFeatures().get(3);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EClass getITemplateInstParam() {
+		if (iTemplateInstParamEClass == null) {
+			iTemplateInstParamEClass = (EClass)EPackage.Registry.INSTANCE.getEPackage(UMLRpyPackage.eNS_URI).getEClassifiers().get(199);
+		}
+		return iTemplateInstParamEClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getITemplateInstParam_Id() {
+        return (EAttribute)getITemplateInstParam().getEStructuralFeatures().get(0);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getITemplateInstParam_Name() {
+        return (EAttribute)getITemplateInstParam().getEStructuralFeatures().get(1);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getITemplateInstParam_ModifiedTimeWeak() {
+        return (EAttribute)getITemplateInstParam().getEStructuralFeatures().get(2);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getITemplateInstParam_Value() {
+        return (EReference)getITemplateInstParam().getEStructuralFeatures().get(3);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getITemplateInstParam_ArgValue() {
+        return (EAttribute)getITemplateInstParam().getEStructuralFeatures().get(4);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getITemplateInstParam_OnTheFlyValue() {
+        return (EAttribute)getITemplateInstParam().getEStructuralFeatures().get(5);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EClass getITemplateInstantiation() {
+		if (iTemplateInstantiationEClass == null) {
+			iTemplateInstantiationEClass = (EClass)EPackage.Registry.INSTANCE.getEPackage(UMLRpyPackage.eNS_URI).getEClassifiers().get(200);
+		}
+		return iTemplateInstantiationEClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EClass getITemplateInstantiationParameter() {
+		if (iTemplateInstantiationParameterEClass == null) {
+			iTemplateInstantiationParameterEClass = (EClass)EPackage.Registry.INSTANCE.getEPackage(UMLRpyPackage.eNS_URI).getEClassifiers().get(201);
+		}
+		return iTemplateInstantiationParameterEClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EClass getITemplateParameter() {
+		if (iTemplateParameterEClass == null) {
+			iTemplateParameterEClass = (EClass)EPackage.Registry.INSTANCE.getEPackage(UMLRpyPackage.eNS_URI).getEClassifiers().get(202);
+		}
+		return iTemplateParameterEClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getITemplateParameter_Id() {
+        return (EAttribute)getITemplateParameter().getEStructuralFeatures().get(0);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getITemplateParameter_Name() {
+        return (EAttribute)getITemplateParameter().getEStructuralFeatures().get(1);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getITemplateParameter_MyState() {
+        return (EAttribute)getITemplateParameter().getEStructuralFeatures().get(2);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getITemplateParameter_ModifiedTimeWeak() {
+        return (EAttribute)getITemplateParameter().getEStructuralFeatures().get(3);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getITemplateParameter_Representative() {
+        return (EReference)getITemplateParameter().getEStructuralFeatures().get(4);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EClass getITimeEvent() {
+		if (iTimeEventEClass == null) {
+			iTimeEventEClass = (EClass)EPackage.Registry.INSTANCE.getEPackage(UMLRpyPackage.eNS_URI).getEClassifiers().get(203);
+		}
+		return iTimeEventEClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getITimeEvent_Id() {
+        return (EAttribute)getITimeEvent().getEStructuralFeatures().get(0);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getITimeEvent_MyState() {
+        return (EAttribute)getITimeEvent().getEStructuralFeatures().get(1);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getITimeEvent_Name() {
+        return (EAttribute)getITimeEvent().getEStructuralFeatures().get(2);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getITimeEvent_ModifiedTimeWeak() {
+        return (EAttribute)getITimeEvent().getEStructuralFeatures().get(3);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getITimeEvent_Parent() {
+        return (EReference)getITimeEvent().getEStructuralFeatures().get(4);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getITimeEvent_StateType() {
+        return (EAttribute)getITimeEvent().getEStructuralFeatures().get(5);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getITimeEvent_DefaultTrans() {
+        return (EAttribute)getITimeEvent().getEStructuralFeatures().get(6);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getITimeEvent_DurationTime() {
+        return (EAttribute)getITimeEvent().getEStructuralFeatures().get(7);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getITimeEvent_Swimlane() {
+        return (EReference)getITimeEvent().getEStructuralFeatures().get(8);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EClass getITimeout() {
+		if (iTimeoutEClass == null) {
+			iTimeoutEClass = (EClass)EPackage.Registry.INSTANCE.getEPackage(UMLRpyPackage.eNS_URI).getEClassifiers().get(204);
+		}
+		return iTimeoutEClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getITimeout_Time() {
+        return (EAttribute)getITimeout().getEStructuralFeatures().get(0);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getITimeout_InheritsFromHandle() {
+        return (EReference)getITimeout().getEStructuralFeatures().get(1);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EClass getITransition() {
+		if (iTransitionEClass == null) {
+			iTransitionEClass = (EClass)EPackage.Registry.INSTANCE.getEPackage(UMLRpyPackage.eNS_URI).getEClassifiers().get(205);
+		}
+		return iTransitionEClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getITransition_ItsSource() {
+        return (EReference)getITransition().getEStructuralFeatures().get(0);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getITransition_InheritsFromHandle() {
+        return (EReference)getITransition().getEStructuralFeatures().get(1);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getITransition_Dependencies() {
+        return (EReference)getITransition().getEStructuralFeatures().get(2);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getITransition_Stereotypes() {
+        return (EReference)getITransition().getEStructuralFeatures().get(3);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EClass getITrigger() {
+		if (iTriggerEClass == null) {
+			iTriggerEClass = (EClass)EPackage.Registry.INSTANCE.getEPackage(UMLRpyPackage.eNS_URI).getEClassifiers().get(206);
+		}
+		return iTriggerEClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EClass getITriggered() {
+		if (iTriggeredEClass == null) {
+			iTriggeredEClass = (EClass)EPackage.Registry.INSTANCE.getEPackage(UMLRpyPackage.eNS_URI).getEClassifiers().get(207);
+		}
+		return iTriggeredEClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getITriggered_Id() {
+        return (EAttribute)getITriggered().getEStructuralFeatures().get(0);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getITriggered_Name() {
+        return (EAttribute)getITriggered().getEStructuralFeatures().get(1);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getITriggered_Args() {
+        return (EReference)getITriggered().getEStructuralFeatures().get(2);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getITriggered_ReturnType() {
+        return (EReference)getITriggered().getEStructuralFeatures().get(3);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getITriggered_Abstract() {
+        return (EAttribute)getITriggered().getEStructuralFeatures().get(4);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getITriggered_Final() {
+        return (EAttribute)getITriggered().getEStructuralFeatures().get(5);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getITriggered_Concurrency() {
+        return (EAttribute)getITriggered().getEStructuralFeatures().get(6);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getITriggered_Protection() {
+        return (EAttribute)getITriggered().getEStructuralFeatures().get(7);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getITriggered_ModifiedTimeWeak() {
+        return (EAttribute)getITriggered().getEStructuralFeatures().get(8);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getITriggered_MyState() {
+        return (EAttribute)getITriggered().getEStructuralFeatures().get(9);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EClass getIType() {
+		if (iTypeEClass == null) {
+			iTypeEClass = (EClass)EPackage.Registry.INSTANCE.getEPackage(UMLRpyPackage.eNS_URI).getEClassifiers().get(208);
+		}
+		return iTypeEClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIType_LastID() {
+        return (EAttribute)getIType().getEStructuralFeatures().get(0);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getIType_Literals() {
+        return (EReference)getIType().getEStructuralFeatures().get(1);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIType_Kind() {
+        return (EAttribute)getIType().getEStructuralFeatures().get(2);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getIType_Properties() {
+        return (EReference)getIType().getEStructuralFeatures().get(3);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getIType_Description() {
+        return (EReference)getIType().getEStructuralFeatures().get(4);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIType_Declaration() {
+        return (EAttribute)getIType().getEStructuralFeatures().get(5);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getIType_Stereotypes() {
+        return (EReference)getIType().getEStructuralFeatures().get(6);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getIType_Attrs() {
+        return (EReference)getIType().getEStructuralFeatures().get(7);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getIType_AssociationElements() {
+        return (EReference)getIType().getEStructuralFeatures().get(8);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getIType_Tags() {
+        return (EReference)getIType().getEStructuralFeatures().get(9);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getIType_TypedefBaseType() {
+        return (EReference)getIType().getEStructuralFeatures().get(10);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIType_TypedefMultiplicity() {
+        return (EAttribute)getIType().getEStructuralFeatures().get(11);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIType_TypedefIsOrdered() {
+        return (EAttribute)getIType().getEStructuralFeatures().get(12);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIType_TypedefIsReference() {
+        return (EAttribute)getIType().getEStructuralFeatures().get(13);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIType_TypedefIsConstant() {
+        return (EAttribute)getIType().getEStructuralFeatures().get(14);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIType_RequiremenTracabilityHandle() {
+        return (EAttribute)getIType().getEStructuralFeatures().get(15);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIType_CodeUpdateCGTime() {
+        return (EAttribute)getIType().getEStructuralFeatures().get(16);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getIType_TheMainDiagram() {
+        return (EReference)getIType().getEStructuralFeatures().get(17);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EClass getIUCDiagram() {
+		if (iucDiagramEClass == null) {
+			iucDiagramEClass = (EClass)EPackage.Registry.INSTANCE.getEPackage(UMLRpyPackage.eNS_URI).getEClassifiers().get(209);
+		}
+		return iucDiagramEClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getIUCDiagram_Properties() {
+        return (EReference)getIUCDiagram().getEStructuralFeatures().get(0);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getIUCDiagram_GraphicChart() {
+        return (EReference)getIUCDiagram().getEStructuralFeatures().get(1);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIUCDiagram_ModifiedTimeWeak() {
+        return (EAttribute)getIUCDiagram().getEStructuralFeatures().get(2);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EClass getIUnit() {
+		if (iUnitEClass == null) {
+			iUnitEClass = (EClass)EPackage.Registry.INSTANCE.getEPackage(UMLRpyPackage.eNS_URI).getEClassifiers().get(210);
+		}
+		return iUnitEClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EClass getIUseCase() {
+		if (iUseCaseEClass == null) {
+			iUseCaseEClass = (EClass)EPackage.Registry.INSTANCE.getEPackage(UMLRpyPackage.eNS_URI).getEClassifiers().get(211);
+		}
+		return iUseCaseEClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIUseCase_Id() {
+        return (EAttribute)getIUseCase().getEStructuralFeatures().get(0);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIUseCase_MyState() {
+        return (EAttribute)getIUseCase().getEStructuralFeatures().get(1);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIUseCase_Name() {
+        return (EAttribute)getIUseCase().getEStructuralFeatures().get(2);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getIUseCase_TheMainDiagram() {
+        return (EReference)getIUseCase().getEStructuralFeatures().get(3);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getIUseCase_HyperLinks() {
+        return (EReference)getIUseCase().getEStructuralFeatures().get(4);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIUseCase_WeakCGTime() {
+        return (EAttribute)getIUseCase().getEStructuralFeatures().get(5);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIUseCase_StrongCGTime() {
+        return (EAttribute)getIUseCase().getEStructuralFeatures().get(6);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIUseCase_ClassModifier() {
+        return (EAttribute)getIUseCase().getEStructuralFeatures().get(7);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getIUseCase_Description() {
+        return (EReference)getIUseCase().getEStructuralFeatures().get(8);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getIUseCase_Inheritances() {
+        return (EReference)getIUseCase().getEStructuralFeatures().get(9);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getIUseCase_Associations() {
+        return (EReference)getIUseCase().getEStructuralFeatures().get(10);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getIUseCase_UseCaseStereoTypes() {
+        return (EReference)getIUseCase().getEStructuralFeatures().get(11);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIUseCase_EntryPoints() {
+        return (EAttribute)getIUseCase().getEStructuralFeatures().get(12);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getIUseCase_Dependencies() {
+        return (EReference)getIUseCase().getEStructuralFeatures().get(13);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIUseCase_LastID() {
+        return (EAttribute)getIUseCase().getEStructuralFeatures().get(14);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getIUseCase_Diagrams() {
+        return (EReference)getIUseCase().getEStructuralFeatures().get(15);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIUseCase_ModifiedTimeWeak() {
+        return (EAttribute)getIUseCase().getEStructuralFeatures().get(16);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIUseCase_RequiremenTracabilityHandle() {
+        return (EAttribute)getIUseCase().getEStructuralFeatures().get(17);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIUseCase_Cmheader() {
+        return (EAttribute)getIUseCase().getEStructuralFeatures().get(18);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getIUseCase_OwnerHandle() {
+        return (EReference)getIUseCase().getEStructuralFeatures().get(19);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getIUseCase_Declaratives() {
+        return (EReference)getIUseCase().getEStructuralFeatures().get(20);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getIUseCase_Operations() {
+        return (EReference)getIUseCase().getEStructuralFeatures().get(21);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getIUseCase_StateCharts() {
+        return (EReference)getIUseCase().getEStructuralFeatures().get(22);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getIUseCase_ItsStateChart() {
+        return (EReference)getIUseCase().getEStructuralFeatures().get(23);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getIUseCase_Attrs() {
+        return (EReference)getIUseCase().getEStructuralFeatures().get(24);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getIUseCase_Annotations() {
+        return (EReference)getIUseCase().getEStructuralFeatures().get(25);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getIUseCase_EmbededFiles() {
+        return (EReference)getIUseCase().getEStructuralFeatures().get(26);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIUseCase_ObjectCreation() {
+        return (EAttribute)getIUseCase().getEStructuralFeatures().get(27);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIUseCase_UmlDependencyID() {
+        return (EAttribute)getIUseCase().getEStructuralFeatures().get(28);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getIUseCase_ObjectLinks() {
+        return (EReference)getIUseCase().getEStructuralFeatures().get(29);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getIUseCase_Properties() {
+        return (EReference)getIUseCase().getEStructuralFeatures().get(30);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EClass getIUseCaseDiagram() {
+		if (iUseCaseDiagramEClass == null) {
+			iUseCaseDiagramEClass = (EClass)EPackage.Registry.INSTANCE.getEPackage(UMLRpyPackage.eNS_URI).getEClassifiers().get(212);
+		}
+		return iUseCaseDiagramEClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EClass getIUseCaseStereoType() {
+		if (iUseCaseStereoTypeEClass == null) {
+			iUseCaseStereoTypeEClass = (EClass)EPackage.Registry.INSTANCE.getEPackage(UMLRpyPackage.eNS_URI).getEClassifiers().get(213);
+		}
+		return iUseCaseStereoTypeEClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getIUseCaseStereoType_UseCase() {
+        return (EReference)getIUseCaseStereoType().getEStructuralFeatures().get(0);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIUseCaseStereoType_StereoType() {
+        return (EAttribute)getIUseCaseStereoType().getEStructuralFeatures().get(1);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIUseCaseStereoType_EntryPoint() {
+        return (EAttribute)getIUseCaseStereoType().getEStructuralFeatures().get(2);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EClass getIValueSpecification() {
+		if (iValueSpecificationEClass == null) {
+			iValueSpecificationEClass = (EClass)EPackage.Registry.INSTANCE.getEPackage(UMLRpyPackage.eNS_URI).getEClassifiers().get(214);
+		}
+		return iValueSpecificationEClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EClass getIVariable() {
+		if (iVariableEClass == null) {
+			iVariableEClass = (EClass)EPackage.Registry.INSTANCE.getEPackage(UMLRpyPackage.eNS_URI).getEClassifiers().get(215);
+		}
+		return iVariableEClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIVariable_IsOrdered() {
+        return (EAttribute)getIVariable().getEStructuralFeatures().get(0);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getIVariable_MyTypeOf() {
+        return (EReference)getIVariable().getEStructuralFeatures().get(1);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EClass getInverseType() {
+		if (inverseTypeEClass == null) {
+			inverseTypeEClass = (EClass)EPackage.Registry.INSTANCE.getEPackage(UMLRpyPackage.eNS_URI).getEClassifiers().get(216);
+		}
+		return inverseTypeEClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EClass getItemsType() {
+		if (itemsTypeEClass == null) {
+			itemsTypeEClass = (EClass)EPackage.Registry.INSTANCE.getEPackage(UMLRpyPackage.eNS_URI).getEClassifiers().get(217);
+		}
+		return itemsTypeEClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EClass getItsLabelType() {
+		if (itsLabelTypeEClass == null) {
+			itsLabelTypeEClass = (EClass)EPackage.Registry.INSTANCE.getEPackage(UMLRpyPackage.eNS_URI).getEClassifiers().get(218);
+		}
+		return itsLabelTypeEClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EClass getItsStateChartType() {
+		if (itsStateChartTypeEClass == null) {
+			itsStateChartTypeEClass = (EClass)EPackage.Registry.INSTANCE.getEPackage(UMLRpyPackage.eNS_URI).getEClassifiers().get(219);
+		}
+		return itsStateChartTypeEClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EClass getItsTargetType() {
+		if (itsTargetTypeEClass == null) {
+			itsTargetTypeEClass = (EClass)EPackage.Registry.INSTANCE.getEPackage(UMLRpyPackage.eNS_URI).getEClassifiers().get(220);
+		}
+		return itsTargetTypeEClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EClass getItsTriggerType() {
+		if (itsTriggerTypeEClass == null) {
+			itsTriggerTypeEClass = (EClass)EPackage.Registry.INSTANCE.getEPackage(UMLRpyPackage.eNS_URI).getEClassifiers().get(221);
+		}
+		return itsTriggerTypeEClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getItsTriggerType_ModifiedTimeWeak() {
+        return (EAttribute)getItsTriggerType().getEStructuralFeatures().get(0);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getItsTriggerType_Id() {
+        return (EAttribute)getItsTriggerType().getEStructuralFeatures().get(1);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getItsTriggerType_Info() {
+        return (EAttribute)getItsTriggerType().getEStructuralFeatures().get(2);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getItsTriggerType_UmlDependencyID() {
+        return (EAttribute)getItsTriggerType().getEStructuralFeatures().get(3);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getItsTriggerType_MyState() {
+        return (EAttribute)getItsTriggerType().getEStructuralFeatures().get(4);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getItsTriggerType_ObjectCreation() {
+        return (EAttribute)getItsTriggerType().getEStructuralFeatures().get(5);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getItsTriggerType_Body() {
+        return (EAttribute)getItsTriggerType().getEStructuralFeatures().get(6);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EClass getLinksType() {
+		if (linksTypeEClass == null) {
+			linksTypeEClass = (EClass)EPackage.Registry.INSTANCE.getEPackage(UMLRpyPackage.eNS_URI).getEClassifiers().get(222);
+		}
+		return linksTypeEClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getLinksType_Id() {
+        return (EAttribute)getLinksType().getEStructuralFeatures().get(0);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getLinksType_Multiplicity() {
+        return (EAttribute)getLinksType().getEStructuralFeatures().get(1);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getLinksType_Name() {
+        return (EAttribute)getLinksType().getEStructuralFeatures().get(2);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getLinksType_OtherClass() {
+        return (EReference)getLinksType().getEStructuralFeatures().get(3);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EClass getM_hTargetType() {
+		if (m_hTargetTypeEClass == null) {
+			m_hTargetTypeEClass = (EClass)EPackage.Registry.INSTANCE.getEPackage(UMLRpyPackage.eNS_URI).getEClassifiers().get(223);
+		}
+		return m_hTargetTypeEClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getM_hTargetType_RequiremenTracabilityHandle() {
+        return (EAttribute)getM_hTargetType().getEStructuralFeatures().get(0);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getM_hTargetType_Description() {
+        return (EReference)getM_hTargetType().getEStructuralFeatures().get(1);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getM_hTargetType_Properties() {
+        return (EReference)getM_hTargetType().getEStructuralFeatures().get(2);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EClass getM_pBaseType() {
+		if (m_pBaseTypeEClass == null) {
+			m_pBaseTypeEClass = (EClass)EPackage.Registry.INSTANCE.getEPackage(UMLRpyPackage.eNS_URI).getEClassifiers().get(224);
+		}
+		return m_pBaseTypeEClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EClass getM_pFormalMessageType() {
+		if (m_pFormalMessageTypeEClass == null) {
+			m_pFormalMessageTypeEClass = (EClass)EPackage.Registry.INSTANCE.getEPackage(UMLRpyPackage.eNS_URI).getEClassifiers().get(225);
+		}
+		return m_pFormalMessageTypeEClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EClass getM_pModelObjectType() {
+		if (m_pModelObjectTypeEClass == null) {
+			m_pModelObjectTypeEClass = (EClass)EPackage.Registry.INSTANCE.getEPackage(UMLRpyPackage.eNS_URI).getEClassifiers().get(226);
+		}
+		return m_pModelObjectTypeEClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EClass getM_pRootType() {
+		if (m_pRootTypeEClass == null) {
+			m_pRootTypeEClass = (EClass)EPackage.Registry.INSTANCE.getEPackage(UMLRpyPackage.eNS_URI).getEClassifiers().get(227);
+		}
+		return m_pRootTypeEClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EClass getM_subjectType() {
+		if (m_subjectTypeEClass == null) {
+			m_subjectTypeEClass = (EClass)EPackage.Registry.INSTANCE.getEPackage(UMLRpyPackage.eNS_URI).getEClassifiers().get(228);
+		}
+		return m_subjectTypeEClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getM_subjectType_UmlDependencyID() {
+        return (EAttribute)getM_subjectType().getEStructuralFeatures().get(0);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getM_subjectType_ObjectCreation() {
+        return (EAttribute)getM_subjectType().getEStructuralFeatures().get(1);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EClass getMatrixInstancesType() {
+		if (matrixInstancesTypeEClass == null) {
+			matrixInstancesTypeEClass = (EClass)EPackage.Registry.INSTANCE.getEPackage(UMLRpyPackage.eNS_URI).getEClassifiers().get(229);
+		}
+		return matrixInstancesTypeEClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EClass getNestedStateChartType() {
+		if (nestedStateChartTypeEClass == null) {
+			nestedStateChartTypeEClass = (EClass)EPackage.Registry.INSTANCE.getEPackage(UMLRpyPackage.eNS_URI).getEClassifiers().get(230);
+		}
+		return nestedStateChartTypeEClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getNestedStateChartType_DefNumber() {
+        return (EAttribute)getNestedStateChartType().getEStructuralFeatures().get(0);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getNestedStateChartType_GraphicChart() {
+        return (EReference)getNestedStateChartType().getEStructuralFeatures().get(1);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getNestedStateChartType_LastModifiedTime() {
+        return (EAttribute)getNestedStateChartType().getEStructuralFeatures().get(2);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getNestedStateChartType_Transitions() {
+        return (EReference)getNestedStateChartType().getEStructuralFeatures().get(3);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getNestedStateChartType_Connectors() {
+        return (EReference)getNestedStateChartType().getEStructuralFeatures().get(4);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getNestedStateChartType_Version() {
+        return (EAttribute)getNestedStateChartType().getEStructuralFeatures().get(5);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EClass getObjectLinksType() {
+		if (objectLinksTypeEClass == null) {
+			objectLinksTypeEClass = (EClass)EPackage.Registry.INSTANCE.getEPackage(UMLRpyPackage.eNS_URI).getEClassifiers().get(231);
+		}
+		return objectLinksTypeEClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EClass getOperationsType() {
+		if (operationsTypeEClass == null) {
+			operationsTypeEClass = (EClass)EPackage.Registry.INSTANCE.getEPackage(UMLRpyPackage.eNS_URI).getEClassifiers().get(232);
+		}
+		return operationsTypeEClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getOperationsType_Virtual() {
+        return (EAttribute)getOperationsType().getEStructuralFeatures().get(0);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EClass getOwnerHandleType() {
+		if (ownerHandleTypeEClass == null) {
+			ownerHandleTypeEClass = (EClass)EPackage.Registry.INSTANCE.getEPackage(UMLRpyPackage.eNS_URI).getEClassifiers().get(233);
+		}
+		return ownerHandleTypeEClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getOwnerHandleType_WeakCGTime() {
+        return (EAttribute)getOwnerHandleType().getEStructuralFeatures().get(0);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getOwnerHandleType_StrongCGTime() {
+        return (EAttribute)getOwnerHandleType().getEStructuralFeatures().get(1);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EClass getP_MessageHandlerType() {
+		if (p_MessageHandlerTypeEClass == null) {
+			p_MessageHandlerTypeEClass = (EClass)EPackage.Registry.INSTANCE.getEPackage(UMLRpyPackage.eNS_URI).getEClassifiers().get(234);
+		}
+		return p_MessageHandlerTypeEClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EClass getParentType() {
+		if (parentTypeEClass == null) {
+			parentTypeEClass = (EClass)EPackage.Registry.INSTANCE.getEPackage(UMLRpyPackage.eNS_URI).getEClassifiers().get(235);
+		}
+		return parentTypeEClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EClass getPropertiesType() {
+		if (propertiesTypeEClass == null) {
+			propertiesTypeEClass = (EClass)EPackage.Registry.INSTANCE.getEPackage(UMLRpyPackage.eNS_URI).getEClassifiers().get(236);
+		}
+		return propertiesTypeEClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EClass getTableDataDefinition() {
+		if (tableDataDefinitionEClass == null) {
+			tableDataDefinitionEClass = (EClass)EPackage.Registry.INSTANCE.getEPackage(UMLRpyPackage.eNS_URI).getEClassifiers().get(237);
+		}
+		return tableDataDefinitionEClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getTableDataDefinition_MyTable() {
+        return (EReference)getTableDataDefinition().getEStructuralFeatures().get(0);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getTableDataDefinition_Name() {
+        return (EAttribute)getTableDataDefinition().getEStructuralFeatures().get(1);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getTableDataDefinition_DataType() {
+        return (EAttribute)getTableDataDefinition().getEStructuralFeatures().get(2);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getTableDataDefinition_ColumnName() {
+        return (EAttribute)getTableDataDefinition().getEStructuralFeatures().get(3);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getTableDataDefinition_ModelElement() {
+        return (EReference)getTableDataDefinition().getEStructuralFeatures().get(4);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EClass getTableInstancesType() {
+		if (tableInstancesTypeEClass == null) {
+			tableInstancesTypeEClass = (EClass)EPackage.Registry.INSTANCE.getEPackage(UMLRpyPackage.eNS_URI).getEClassifiers().get(238);
+		}
+		return tableInstancesTypeEClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EClass getTargetType() {
+		if (targetTypeEClass == null) {
+			targetTypeEClass = (EClass)EPackage.Registry.INSTANCE.getEPackage(UMLRpyPackage.eNS_URI).getEClassifiers().get(239);
+		}
+		return targetTypeEClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EClass getTheMainDiagramType() {
+		if (theMainDiagramTypeEClass == null) {
+			theMainDiagramTypeEClass = (EClass)EPackage.Registry.INSTANCE.getEPackage(UMLRpyPackage.eNS_URI).getEClassifiers().get(240);
+		}
+		return theMainDiagramTypeEClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getTheMainDiagramType_Id() {
+        return (EAttribute)getTheMainDiagramType().getEStructuralFeatures().get(0);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getTheMainDiagramType_LastModifiedTime() {
+        return (EAttribute)getTheMainDiagramType().getEStructuralFeatures().get(1);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getTheMainDiagramType_RequiremenTracabilityHandle() {
+        return (EAttribute)getTheMainDiagramType().getEStructuralFeatures().get(2);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getTheMainDiagramType_DefaultSubsystem() {
+        return (EReference)getTheMainDiagramType().getEStructuralFeatures().get(3);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getTheMainDiagramType_Description() {
+        return (EReference)getTheMainDiagramType().getEStructuralFeatures().get(4);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getTheMainDiagramType_UmlDependencyID() {
+        return (EAttribute)getTheMainDiagramType().getEStructuralFeatures().get(5);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getTheMainDiagramType_LastID() {
+        return (EAttribute)getTheMainDiagramType().getEStructuralFeatures().get(6);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getTheMainDiagramType_MyState() {
+        return (EAttribute)getTheMainDiagramType().getEStructuralFeatures().get(7);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getTheMainDiagramType_OwnerHandle() {
+        return (EReference)getTheMainDiagramType().getEStructuralFeatures().get(8);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getTheMainDiagramType_ObjectCreation() {
+        return (EAttribute)getTheMainDiagramType().getEStructuralFeatures().get(9);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getTheMainDiagramType_Name() {
+        return (EAttribute)getTheMainDiagramType().getEStructuralFeatures().get(10);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getTheMainDiagramType_Cmheader() {
+        return (EAttribute)getTheMainDiagramType().getEStructuralFeatures().get(11);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EClass getToLinkType() {
+		if (toLinkTypeEClass == null) {
+			toLinkTypeEClass = (EClass)EPackage.Registry.INSTANCE.getEPackage(UMLRpyPackage.eNS_URI).getEClassifiers().get(241);
+		}
+		return toLinkTypeEClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getToLinkType_ImplicitClass() {
+        return (EReference)getToLinkType().getEStructuralFeatures().get(0);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EClass getTransitionsType() {
+		if (transitionsTypeEClass == null) {
+			transitionsTypeEClass = (EClass)EPackage.Registry.INSTANCE.getEPackage(UMLRpyPackage.eNS_URI).getEClassifiers().get(242);
+		}
+		return transitionsTypeEClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getTransitionsType_ModifiedTimeWeak() {
+        return (EAttribute)getTransitionsType().getEStructuralFeatures().get(0);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getTransitionsType_StaticReaction() {
+        return (EAttribute)getTransitionsType().getEStructuralFeatures().get(1);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getTransitionsType_ItsTarget() {
+        return (EReference)getTransitionsType().getEStructuralFeatures().get(2);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getTransitionsType_Id() {
+        return (EAttribute)getTransitionsType().getEStructuralFeatures().get(3);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getTransitionsType_CodeUpdateCGTime() {
+        return (EAttribute)getTransitionsType().getEStructuralFeatures().get(4);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getTransitionsType_RequiremenTracabilityHandle() {
+        return (EAttribute)getTransitionsType().getEStructuralFeatures().get(5);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getTransitionsType_Description() {
+        return (EReference)getTransitionsType().getEStructuralFeatures().get(6);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getTransitionsType_ItsLabel() {
+        return (EReference)getTransitionsType().getEStructuralFeatures().get(7);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getTransitionsType_UmlDependencyID() {
+        return (EAttribute)getTransitionsType().getEStructuralFeatures().get(8);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getTransitionsType_MyState() {
+        return (EAttribute)getTransitionsType().getEStructuralFeatures().get(9);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getTransitionsType_ObjectCreation() {
+        return (EAttribute)getTransitionsType().getEStructuralFeatures().get(10);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getTransitionsType_Name() {
+        return (EAttribute)getTransitionsType().getEStructuralFeatures().get(11);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EClass getUnknownType() {
+		if (unknownTypeEClass == null) {
+			unknownTypeEClass = (EClass)EPackage.Registry.INSTANCE.getEPackage(UMLRpyPackage.eNS_URI).getEClassifiers().get(243);
+		}
+		return unknownTypeEClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EClass getValueType() {
+		if (valueTypeEClass == null) {
+			valueTypeEClass = (EClass)EPackage.Registry.INSTANCE.getEPackage(UMLRpyPackage.eNS_URI).getEClassifiers().get(244);
+		}
+		return valueTypeEClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getValueType_ModifiedTimeWeak() {
+        return (EAttribute)getValueType().getEStructuralFeatures().get(0);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getValueType_Id() {
+        return (EAttribute)getValueType().getEStructuralFeatures().get(1);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getValueType_MyState() {
+        return (EAttribute)getValueType().getEStructuralFeatures().get(2);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getValueType_Name() {
+        return (EAttribute)getValueType().getEStructuralFeatures().get(3);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public UMLRpyFactory getUMLRpyFactory() {
+		return (UMLRpyFactory)getEFactoryInstance();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	private boolean isLoaded = false;
+
+	/**
+	 * Laods the package and any sub-packages from their serialized form.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void loadPackage() {
+		if (isLoaded) return;
+		isLoaded = true;
+
+		URL url = getClass().getResource(packageFilename);
+		if (url == null) {
+			throw new RuntimeException("Missing serialized package: " + packageFilename); //$NON-NLS-1$
+		}
+		URI uri = URI.createURI(url.toString());
+		Resource resource = new EcoreResourceFactoryImpl().createResource(uri);
+		try {
+			resource.load(null);
+		}
+		catch (IOException exception) {
+			throw new WrappedException(exception);
+		}
+		initializeFromLoadedEPackage(this, (EPackage)resource.getContents().get(0));
+		createResource(eNS_URI);
+	}
+
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	private boolean isFixed = false;
+
+	/**
+	 * Fixes up the loaded package, to make it appear as if it had been programmatically built.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void fixPackageContents() {
+		if (isFixed) return;
+		isFixed = true;
+		fixEClassifiers();
+	}
+
+	/**
+	 * Sets the instance class on the given classifier.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected void fixInstanceClass(EClassifier eClassifier) {
+		if (eClassifier.getInstanceClassName() == null) {
+			eClassifier.setInstanceClassName("org.eclipse.papyrus.interoperability.rpy.rpymetamodel." + eClassifier.getName()); //$NON-NLS-1$
+			setGeneratedClassName(eClassifier);
+		}
+	}
+
+} //UMLRpyPackageImpl
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/UnknownTypeImpl.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/UnknownTypeImpl.java
new file mode 100755
index 0000000..224c674
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/UnknownTypeImpl.java
@@ -0,0 +1,49 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl;
+
+import org.eclipse.emf.ecore.EClass;
+
+import org.eclipse.emf.ecore.impl.MinimalEObjectImpl;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UnknownType;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Unknown Type</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+public class UnknownTypeImpl extends MinimalEObjectImpl.Container implements UnknownType {
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected UnknownTypeImpl() {
+		super();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EClass eStaticClass() {
+		return UMLRpyPackage.eINSTANCE.getUnknownType();
+	}
+
+} //UnknownTypeImpl
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/ValueTypeImpl.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/ValueTypeImpl.java
new file mode 100755
index 0000000..67ca26d
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/ValueTypeImpl.java
@@ -0,0 +1,324 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl;
+
+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.impl.ENotificationImpl;
+import org.eclipse.emf.ecore.impl.MinimalEObjectImpl;
+
+import org.eclipse.emf.ecore.util.EDataTypeEList;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ValueType;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Value Type</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * </p>
+ * <ul>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.ValueTypeImpl#getModifiedTimeWeak <em>Modified Time Weak</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.ValueTypeImpl#getId <em>Id</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.ValueTypeImpl#getMyState <em>My State</em>}</li>
+ *   <li>{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.impl.ValueTypeImpl#getName <em>Name</em>}</li>
+ * </ul>
+ *
+ * @generated
+ */
+public abstract class ValueTypeImpl extends MinimalEObjectImpl.Container implements ValueType {
+	/**
+	 * The cached value of the '{@link #getModifiedTimeWeak() <em>Modified Time Weak</em>}' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getModifiedTimeWeak()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<String> modifiedTimeWeak;
+
+	/**
+	 * The default value of the '{@link #getId() <em>Id</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getId()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String ID_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getId() <em>Id</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getId()
+	 * @generated
+	 * @ordered
+	 */
+	protected String id = ID_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getMyState() <em>My State</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getMyState()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String MY_STATE_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getMyState() <em>My State</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getMyState()
+	 * @generated
+	 * @ordered
+	 */
+	protected String myState = MY_STATE_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getName() <em>Name</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getName()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String NAME_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getName() <em>Name</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getName()
+	 * @generated
+	 * @ordered
+	 */
+	protected String name = NAME_EDEFAULT;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected ValueTypeImpl() {
+		super();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EClass eStaticClass() {
+		return UMLRpyPackage.eINSTANCE.getValueType();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<String> getModifiedTimeWeak() {
+		if (modifiedTimeWeak == null) {
+			modifiedTimeWeak = new EDataTypeEList<String>(String.class, this, UMLRpyPackage.VALUE_TYPE__MODIFIED_TIME_WEAK);
+		}
+		return modifiedTimeWeak;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getId() {
+		return id;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setId(String newId) {
+		String oldId = id;
+		id = newId;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.VALUE_TYPE__ID, oldId, id));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getMyState() {
+		return myState;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setMyState(String newMyState) {
+		String oldMyState = myState;
+		myState = newMyState;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.VALUE_TYPE__MY_STATE, oldMyState, myState));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getName() {
+		return name;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setName(String newName) {
+		String oldName = name;
+		name = newName;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, UMLRpyPackage.VALUE_TYPE__NAME, oldName, name));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object eGet(int featureID, boolean resolve, boolean coreType) {
+		switch (featureID) {
+			case UMLRpyPackage.VALUE_TYPE__MODIFIED_TIME_WEAK:
+				return getModifiedTimeWeak();
+			case UMLRpyPackage.VALUE_TYPE__ID:
+				return getId();
+			case UMLRpyPackage.VALUE_TYPE__MY_STATE:
+				return getMyState();
+			case UMLRpyPackage.VALUE_TYPE__NAME:
+				return getName();
+		}
+		return super.eGet(featureID, resolve, coreType);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@SuppressWarnings("unchecked")
+	@Override
+	public void eSet(int featureID, Object newValue) {
+		switch (featureID) {
+			case UMLRpyPackage.VALUE_TYPE__MODIFIED_TIME_WEAK:
+				getModifiedTimeWeak().clear();
+				getModifiedTimeWeak().addAll((Collection<? extends String>)newValue);
+				return;
+			case UMLRpyPackage.VALUE_TYPE__ID:
+				setId((String)newValue);
+				return;
+			case UMLRpyPackage.VALUE_TYPE__MY_STATE:
+				setMyState((String)newValue);
+				return;
+			case UMLRpyPackage.VALUE_TYPE__NAME:
+				setName((String)newValue);
+				return;
+		}
+		super.eSet(featureID, newValue);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void eUnset(int featureID) {
+		switch (featureID) {
+			case UMLRpyPackage.VALUE_TYPE__MODIFIED_TIME_WEAK:
+				getModifiedTimeWeak().clear();
+				return;
+			case UMLRpyPackage.VALUE_TYPE__ID:
+				setId(ID_EDEFAULT);
+				return;
+			case UMLRpyPackage.VALUE_TYPE__MY_STATE:
+				setMyState(MY_STATE_EDEFAULT);
+				return;
+			case UMLRpyPackage.VALUE_TYPE__NAME:
+				setName(NAME_EDEFAULT);
+				return;
+		}
+		super.eUnset(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public boolean eIsSet(int featureID) {
+		switch (featureID) {
+			case UMLRpyPackage.VALUE_TYPE__MODIFIED_TIME_WEAK:
+				return modifiedTimeWeak != null && !modifiedTimeWeak.isEmpty();
+			case UMLRpyPackage.VALUE_TYPE__ID:
+				return ID_EDEFAULT == null ? id != null : !ID_EDEFAULT.equals(id);
+			case UMLRpyPackage.VALUE_TYPE__MY_STATE:
+				return MY_STATE_EDEFAULT == null ? myState != null : !MY_STATE_EDEFAULT.equals(myState);
+			case UMLRpyPackage.VALUE_TYPE__NAME:
+				return NAME_EDEFAULT == null ? name != null : !NAME_EDEFAULT.equals(name);
+		}
+		return super.eIsSet(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String toString() {
+		if (eIsProxy()) return super.toString();
+
+		StringBuffer result = new StringBuffer(super.toString());
+		result.append(" (modifiedTimeWeak: "); //$NON-NLS-1$
+		result.append(modifiedTimeWeak);
+		result.append(", id: "); //$NON-NLS-1$
+		result.append(id);
+		result.append(", myState: "); //$NON-NLS-1$
+		result.append(myState);
+		result.append(", name: "); //$NON-NLS-1$
+		result.append(name);
+		result.append(')');
+		return result.toString();
+	}
+
+} //ValueTypeImpl
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/rpymetamodel.ecore b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/rpymetamodel.ecore
new file mode 100755
index 0000000..876f305
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/impl/rpymetamodel.ecore
@@ -0,0 +1,2869 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<ecore:EPackage 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" name="rpymetamodel" nsURI="http://www.eclipse.org/Papyrus/UMLRpy/1.0.0"
+    nsPrefix="rhyuml">
+  <eClassifiers xsi:type="ecore:EClass" name="AssociationsType" abstract="true" eSuperTypes="#//InverseType"/>
+  <eClassifiers xsi:type="ecore:EClass" name="CCollaborationChart" eSuperTypes="#//GraphicChartType">
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_pModelObject" eType="#//ICollaboration"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_pRoot" eType="#//CGIBox"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="CGIActionState" eSuperTypes="#//GraphElementsType">
+    <eStructuralFeatures xsi:type="ecore:EReference" name="properties" eType="#//IPropertyContainer"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_pModelObject" eType="#//IStateVertex"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_pParent" eType="#//GraphElementsType"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_transform" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_AdditionalLabel" eType="#//CGIText"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_polygon" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_nNameFormat" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_nIsNameFormat" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="Compartments" upperBound="-1"
+        eType="#//UnknownType"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="nAndLineCount" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_pInheritsFrom" upperBound="-1"
+        eType="#//UnknownType"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_nInheritanceMask" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_pDefaultComponentRelation"
+        eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_NameDisplayMode" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_ActDescLablDiaplayMode"
+        eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_moveAndLineTimeStamp"
+        eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="CGIActiveX" eSuperTypes="#//GraphElementsType">
+    <eStructuralFeatures xsi:type="ecore:EReference" name="properties" eType="#//IPropertyContainer"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_pModelObject" eType="#//M_pModelObjectType"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_pParent" eType="#//GraphElementsType"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_transform" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_polygon" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_nNameFormat" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_nIsNameFormat" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="Compartments" upperBound="-1"
+        eType="#//UnknownType"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_csModelObjPath" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_csName" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_PartsArray" upperBound="-1"
+        eType="#//DependsOnType"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="CGIAnchor" eSuperTypes="#//GraphElementsType">
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_pModelObject" eType="#//M_pModelObjectType"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_pParent" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_pSource" eType="#//M_pRootType"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_sourceType" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_pTarget" eType="#//M_pRootType"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_targetType" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_direction" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_rpn" eType="#//CGIText"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_anglePoint1" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_anglePoint2" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_line_style" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_SourcePort" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_TargetPort" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="properties" eType="#//IPropertyContainer"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_color" eType="#//IColor"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_lineWidth" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_arrow" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="CGIAnnotation" eSuperTypes="#//GraphElementsType">
+    <eStructuralFeatures xsi:type="ecore:EReference" name="properties" eType="#//IPropertyContainer"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_pParent" eType="#//M_pRootType"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_transform" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_AdditionalLabel" eType="#//CGIText"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_polygon" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_nNameFormat" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_nIsNameFormat" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="iTempdisplayTextFlag" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_bIsBoxStyle" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_pModelObject" eType="#//IUnit"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_color" eType="#//IColor"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_lineWidth" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="frameset" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="Compartments" eType="#//CompartmentsType"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_bIsStructured" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_bFramesetModified" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="CGIArrow" eSuperTypes="#//GraphElementsType">
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_pModelObject" upperBound="-1"
+        eType="#//UnknownType"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_pParent" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_pSource" eType="#//CGIComponent"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_sourceType" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_pTarget" eType="#//CGIComponent"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_targetType" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_direction" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_rpn" eType="#//CGIText"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_anglePoint1" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_anglePoint2" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_line_style" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_SourcePort" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_TargetPort" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="CGIAssociationEnd" eSuperTypes="#//GraphElementsType">
+    <eStructuralFeatures xsi:type="ecore:EReference" name="properties" eType="#//IPropertyContainer"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_pModelObject" eType="#//M_pModelObjectType"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_pParent" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_pSource" eType="#//M_pRootType"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_sourceType" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_pTarget" eType="#//M_pRootType"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_targetType" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_direction" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_rpn" eType="#//CGIText"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_anglePoint1" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_anglePoint2" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_line_style" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_SourcePort" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_TargetPort" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_pInverseModelObject"
+        eType="#//IAssociationEndHandle" containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_pInstance" eType="#//IObjectLinkHandle"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_pInverseInstance" eType="#//IObjectLinkHandle"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_bShowSourceMultiplicity"
+        eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_bShowSourceRole" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_bShowTargetMultiplicity"
+        eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_bShowTargetRole" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_bShowLinkName" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_bShowSpecificType" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_bInstance" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_bShowQualifier1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_bShowQualifier2" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_sourceRole" eType="#//CGIText"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_targetRole" eType="#//CGIText"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_sourceMultiplicity" eType="#//CGIText"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_targetMultiplicity" eType="#//CGIText"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_sourceQualifier" eType="#//CGIText"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_targetQualifier" eType="#//CGIText"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_specificType" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_arrow" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="CGIAssociationRole" eSuperTypes="#//GraphElementsType">
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_pModelObject" eType="#//IAssociationRole"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_pParent" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_pSource" eType="#//CGIClassifierRole"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_sourceType" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_pTarget" eType="#//CGIClassifierRole"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_targetType" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_direction" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_rpn" eType="#//CGIText"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_anglePoint1" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_anglePoint2" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_line_style" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_SourcePort" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_TargetPort" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_arrow" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="properties" eType="#//IPropertyContainer"
+        containment="true"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="CGIBasicClass" eSuperTypes="#//GraphElementsType">
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_pModelObject" eType="#//IClassifier"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_pParent" eType="#//GraphElementsType"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_transform" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_AdditionalLabel" eType="#//CGIText"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_polygon" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_nNameFormat" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_nIsNameFormat" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="Compartments" upperBound="-1"
+        eType="#//UnknownType"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="properties" eType="#//IPropertyContainer"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_pImageViewData" eType="#//CGIImageData"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="CGIBlockState" eSuperTypes="#//GraphElementsType">
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_pModelObject" eType="#//ItsTargetType"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_pParent" eType="#//GraphElementsType"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_transform" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_polygon" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_nNameFormat" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_nIsNameFormat" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="nAndLineCount" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_pInheritsFrom" upperBound="-1"
+        eType="#//UnknownType"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_nInheritanceMask" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_pDefaultComponentRelation"
+        eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_NameDisplayMode" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_ActDescLablDiaplayMode"
+        eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="properties" eType="#//IPropertyContainer"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_AdditionalLabel" eType="#//CGIText"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_moveAndLineTimeStamp"
+        eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="Compartments" eType="#//CompartmentsType"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="frameset" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="CGIBox" eSuperTypes="#//GraphElementsType">
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_pModelObject" eType="#//M_pModelObjectType"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_polygon" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_nNameFormat" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_nIsNameFormat" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="Compartments" upperBound="-1"
+        eType="#//UnknownType"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_pParent" eType="#//GraphElementsType"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_transform" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="properties" eType="#//IPropertyContainer"
+        containment="true"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="CGIButtonArray" eSuperTypes="#//GraphElementsType">
+    <eStructuralFeatures xsi:type="ecore:EReference" name="properties" eType="#//IPropertyContainer"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_pModelObject" eType="#//IAttribute"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_pParent" eType="#//GraphElementsType"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_transform" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_polygon" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_nNameFormat" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_nIsNameFormat" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="frameset" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="Compartments" upperBound="-1"
+        eType="#//CGICompartment" containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_csModelObjPath" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_csName" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_PartsArray" upperBound="-1"
+        eType="#//DependsOnType"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_liButtonNames" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_liButtonValues" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="CGIClass" eSuperTypes="#//GraphElementsType #//M_pRootType">
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_pModelObject" eType="#//M_pModelObjectType"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_AdditionalLabel" eType="#//CGIText"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_polygon" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_nNameFormat" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_nIsNameFormat" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="Compartments" upperBound="-1"
+        eType="#//CompartmentsType" containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_pParent" eType="#//M_pRootType"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_transform" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="frameset" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="properties" eType="#//IPropertyContainer"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="Attrs" upperBound="-1"
+        eType="#//IUnit"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="Operations" upperBound="-1"
+        eType="#//OperationsType"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_color" eType="#//IColor"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_lineWidth" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_dSeparatorPosition" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_bIsMisplaced" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_pImageViewData" eType="#//CGIImageData"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_bFramesetModified" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="CGIClassChart" eSuperTypes="#//GraphicChartType">
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_pModelObject" eType="#//M_pModelObjectType"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_pRoot" eType="#//M_pRootType"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="CGIClassifierRole" eSuperTypes="#//GraphElementsType">
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_pModelObject" eType="#//IClassifierRole"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_pParent" eType="#//CGIBox"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_transform" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_polygon" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_nNameFormat" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_nIsNameFormat" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="Compartments" upperBound="-1"
+        eType="#//UnknownType"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="properties" eType="#//IPropertyContainer"
+        containment="true"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="CGICompartment" eSuperTypes="#//CompartmentsType">
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="id" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_name" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_displayOption" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_bShowInherited" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_bOrdered" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="Items" upperBound="-1"
+        eType="#//ItemsType"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="CGIComponent" eSuperTypes="#//GraphElementsType">
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_pModelObject" eType="#//IComponent"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_pParent" eType="#//GraphElementsType"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_transform" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_polygon" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_nNameFormat" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_nIsNameFormat" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="Compartments" upperBound="-1"
+        eType="#//UnknownType"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="properties" eType="#//IPropertyContainer"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_AdditionalLabel" eType="#//CGIText"
+        containment="true"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="CGICompositeClass" eSuperTypes="#//GraphElementsType">
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_pModelObject" eType="#//IClassifier"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_pParent" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_AdditionalLabel" eType="#//CGIText"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_polygon" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_nNameFormat" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_nIsNameFormat" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="Compartments" upperBound="-1"
+        eType="#//UnknownType"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="properties" eType="#//IPropertyContainer"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_color" eType="#//IColor"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_lineWidth" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="CGIConnector" eSuperTypes="#//GraphElementsType">
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_pModelObject" eType="#//ItsTargetType"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_pParent" eType="#//GraphElementsType"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_transform" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_position" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_nInheritanceMask" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_SubType" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="properties" eType="#//IPropertyContainer"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_AdditionalLabel" eType="#//CGIText"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="myState" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_pInheritsFrom" eType="#//GraphElementsType"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="CGIContainArrow" eSuperTypes="#//GraphElementsType">
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_pModelObject" upperBound="-1"
+        eType="#//UnknownType"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_pParent" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_pSource" eType="#//GraphElementsType"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_sourceType" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_pTarget" eType="#//GraphElementsType"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_targetType" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_direction" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_rpn" eType="#//CGIText"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_arrow" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_anglePoint1" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_anglePoint2" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_line_style" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_SourcePort" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_TargetPort" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="CGIDiagramFrame" eSuperTypes="#//GraphElementsType">
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_pModelObject" upperBound="-1"
+        eType="#//UnknownType"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_pParent" eType="#//M_pRootType"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_transform" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_AdditionalLabel" eType="#//CGIText"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_polygon" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_nNameFormat" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_nIsNameFormat" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_bVisible" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="frameset" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="Compartments" eType="#//CompartmentsType"
+        containment="true"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="CGIFreeShape" eSuperTypes="#//GraphElementsType">
+    <eStructuralFeatures xsi:type="ecore:EReference" name="properties" eType="#//IPropertyContainer"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_pModelObject" upperBound="-1"
+        eType="#//UnknownType"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_pParent" eType="#//GraphElementsType"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_transform" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_points" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="CGIFreeText" eSuperTypes="#//GraphElementsType">
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_pModelObject" upperBound="-1"
+        eType="#//UnknownType"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_pParent" eType="#//GraphElementsType"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_transform" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_points" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_text" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="properties" eType="#//IPropertyContainer"
+        containment="true"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="CGIGenericElement" eSuperTypes="#//GraphElementsType">
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_pModelObject" eType="#//M_pModelObjectType"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_pParent" eType="#//M_pRootType"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_transform" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_AdditionalLabel" eType="#//CGIText"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_polygon" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_nNameFormat" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_nIsNameFormat" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="frameset" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="Compartments" eType="#//CompartmentsType"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="properties" eType="#//IPropertyContainer"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_pImageViewData" eType="#//CGIImageData"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_csContext" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_csPartsArray" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_bIsStructured" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="CGIImage" eSuperTypes="#//GraphElementsType">
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_pModelObject" upperBound="-1"
+        eType="#//UnknownType"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_pParent" eType="#//GraphElementsType"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_transform" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_pImageViewData" eType="#//CGIImageData"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_points" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="CGIImageData" eSuperTypes="#//GraphElementsType">
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_pModelObject" upperBound="-1"
+        eType="#//UnknownType"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_pParent" eType="#//GraphElementsType"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_dataSize" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_data" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_srcFile" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_fileModifiedTime" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="CGIInformationFlow" eSuperTypes="#//GraphElementsType">
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_pModelObject" eType="#//IInformationFlow"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_pParent" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_pSource" eType="#//M_pRootType"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_sourceType" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_pTarget" eType="#//M_pRootType"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_targetType" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_direction" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_rpn" eType="#//CGIText"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_anglePoint1" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_anglePoint2" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_line_style" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_SourcePort" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_TargetPort" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_bShowKeyword" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_showConveyed" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_keyword" eType="#//CGIText"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_conveyed" eType="#//CGIText"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_arrow" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="properties" eType="#//IPropertyContainer"
+        containment="true"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="CGIInheritance" eSuperTypes="#//GraphElementsType">
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_pModelObject" eType="#//IModelElement"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_pParent" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_pSource" eType="#//GraphElementsType"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_sourceType" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_pTarget" eType="#//GraphElementsType"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_targetType" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_direction" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_rpn" eType="#//CGIText"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_anglePoint1" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_anglePoint2" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_line_style" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_SourcePort" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_TargetPort" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_ShowName" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_ShowStereotype" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="properties" eType="#//IPropertyContainer"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_color" eType="#//IColor"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_lineWidth" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_arrow" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="CGIMFCCtrl" eSuperTypes="#//GraphElementsType">
+    <eStructuralFeatures xsi:type="ecore:EReference" name="properties" eType="#//IPropertyContainer"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_pModelObject" eType="#//IReception"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_pParent" eType="#//GraphElementsType"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_transform" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_polygon" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_nNameFormat" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_nIsNameFormat" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="Compartments" upperBound="-1"
+        eType="#//UnknownType"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_csModelObjPath" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_csName" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_PartsArray" upperBound="-1"
+        eType="#//DependsOnType"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_csButtonCaption" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="CGIMessageLabel" eSuperTypes="#//GraphElementsType">
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_pModelObject" eType="#//IMessage"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_pParent" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_pCommunicationConnection"
+        eType="#//CGIAssociationRole"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="percent" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="CGIMscChart">
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="vLadderMargin" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_usingActivationBar" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="id" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_type" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_pModelObject" eType="#//IMSC"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_pParent" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_name" eType="#//CGIText"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_drawBehavior" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_bIsPreferencesInitialized"
+        eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="elementList" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="graphElements" upperBound="-1"
+        eType="#//GraphElementsType" containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_access" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_modified" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_fileVersion" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_nModifyDate" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_nCreateDate" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_creator" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_bScaleWithZoom" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_arrowStyle" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_pRoot" eType="#//CGIBox"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_currentLeftTop" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_currentRightBottom" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="CGIMscColumnCR" eSuperTypes="#//GraphElementsType">
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_pModelObject" eType="#//IModelElement"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_pParent" eType="#//CGIBox"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_transform" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_AdditionalLabel" eType="#//CGIText"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_position" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_pInheritsFrom" upperBound="-1"
+        eType="#//UnknownType"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_nInheritanceMask" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_SubType" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="properties" eType="#//IPropertyContainer"
+        containment="true"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="CGIMscConditionMark" eSuperTypes="#//GraphElementsType">
+    <eStructuralFeatures xsi:type="ecore:EReference" name="properties" eType="#//IPropertyContainer"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_pModelObject" eType="#//IMessage"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_pParent" eType="#//CGIMscColumnCR"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_transform" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_polygon" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_nNameFormat" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_nIsNameFormat" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="Compartments" upperBound="-1"
+        eType="#//UnknownType"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="CGIMscExecutionOccurrence" eSuperTypes="#//GraphElementsType">
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_pModelObject" eType="#//IExecutionOccurrence"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_pParent" eType="#//CGIMscColumnCR"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_transform" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_position" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_pInheritsFrom" upperBound="-1"
+        eType="#//UnknownType"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_nInheritanceMask" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_SubType" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_pStartMessage" eType="#//CGIMscMessage"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="CGIMscInteractionOccurrence" eSuperTypes="#//GraphElementsType">
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_pModelObject" eType="#//IInteractionOccurrence"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_pParent" eType="#//CGIBox"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_transform" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_polygon" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_nNameFormat" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_nIsNameFormat" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="Compartments" upperBound="-1"
+        eType="#//UnknownType"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="properties" eType="#//IPropertyContainer"
+        containment="true"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="CGIMscInteractionOperand" eSuperTypes="#//GraphElementsType">
+    <eStructuralFeatures xsi:type="ecore:EReference" name="properties" eType="#//IPropertyContainer"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_pModelObject" eType="#//IInteractionOperand"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_pParent" eType="#//CGIMscInteractionOperator"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_AdditionalLabel" eType="#//CGIText"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_polygon" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_nNameFormat" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_nIsNameFormat" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="Compartments" upperBound="-1"
+        eType="#//UnknownType"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_transform" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="CGIMscInteractionOperator" eSuperTypes="#//GraphElementsType">
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_operatorType" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="properties" eType="#//IPropertyContainer"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_pModelObject" eType="#//ICombinedFragment"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_pParent" eType="#//GraphElementsType"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_transform" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_polygon" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_nNameFormat" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_nIsNameFormat" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="frameset" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="Compartments" upperBound="-1"
+        eType="#//UnknownType"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_bFramesetModified" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="CGIMscMessage" eSuperTypes="#//GraphElementsType">
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_pModelObject" eType="#//IMessage"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_pParent" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_pSource" eType="#//CGIMscColumnCR"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_sourceType" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_pTarget" eType="#//CGIMscColumnCR"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_targetType" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_direction" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_rpn" eType="#//CGIText"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_anglePoint1" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_anglePoint2" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_line_style" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_SourcePort" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_TargetPort" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_bLeft" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_arrow" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="properties" eType="#//IPropertyContainer"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="myState" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_pSourceExec" eType="#//CGIMscExecutionOccurrence"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_pTargetExec" eType="#//CGIMscExecutionOccurrence"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="CGIObjectInstance" eSuperTypes="#//GraphElementsType">
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_pModelObject" eType="#//M_pModelObjectType"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_pParent" eType="#//M_pRootType"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_transform" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_AdditionalLabel" eType="#//CGIText"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_polygon" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_nNameFormat" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_nIsNameFormat" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="frameset" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="Compartments" upperBound="-1"
+        eType="#//CompartmentsType" containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_multiplicity" eType="#//CGIText"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="properties" eType="#//IPropertyContainer"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="Operations" upperBound="-1"
+        eType="#//OperationsType"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="Attrs" upperBound="-1"
+        eType="#//IUnit"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_bFramesetModified" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_pImageViewData" eType="#//CGIImageData"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_bIsMisplaced" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="CGIObjectLink" eSuperTypes="#//GraphElementsType">
+    <eStructuralFeatures xsi:type="ecore:EReference" name="properties" eType="#//IPropertyContainer"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_pModelObject" eType="#//M_pModelObjectType"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_pParent" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_pSource" eType="#//M_pRootType"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_sourceType" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_pTarget" eType="#//M_pRootType"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_targetType" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_direction" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_rpn" eType="#//CGIText"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_arrow" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_anglePoint1" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_anglePoint2" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_line_style" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_SourcePort" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_TargetPort" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_bShowSourceMultiplicity"
+        eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_bShowSourceRole" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_bShowTargetMultiplicity"
+        eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_bShowTargetRole" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_bShowLinkName" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_sourceRole" eType="#//CGIText"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_targetRole" eType="#//CGIText"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_sourceMultiplicity" eType="#//CGIText"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_targetMultiplicity" eType="#//CGIText"
+        containment="true"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="CGIPackage" eSuperTypes="#//GraphElementsType">
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_pModelObject" eType="#//DefaultSubsystemType"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_pParent" eType="#//M_pRootType"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_transform" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_polygon" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_nNameFormat" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_nIsNameFormat" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="Compartments" upperBound="-1"
+        eType="#//UnknownType"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="properties" eType="#//IPropertyContainer"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_color" eType="#//IColor"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_lineWidth" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_AdditionalLabel" eType="#//CGIText"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="frameset" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_bIsStructured" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="CGIPartition" eSuperTypes="#//GraphElementsType">
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_pModelObject" eType="#//ISwimlane"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_pParent" eType="#//CGISwimlaneFrame"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_polygon" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_nNameFormat" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_nIsNameFormat" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="frameset" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_AdditionalLabel" eType="#//CGIText"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="properties" eType="#//IPropertyContainer"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="Compartments" eType="#//CompartmentsType"
+        containment="true"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="CGIPortConnector" eSuperTypes="#//GraphElementsType">
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_pModelObject" eType="#//IRelation"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_pParent" eType="#//M_pRootType"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_transform" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_AdditionalLabel" eType="#//CGIText"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_position" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_pInheritsFrom" upperBound="-1"
+        eType="#//UnknownType"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_nInheritanceMask" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_SubType" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_providedInterfaceLabel"
+        eType="#//CGIText" containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_requiredInterfaceLabel"
+        eType="#//CGIText" containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="properties" eType="#//IPropertyContainer"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_bVisible" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_nAngle" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="CGIState" eSuperTypes="#//GraphElementsType">
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_pModelObject" eType="#//ItsTargetType"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_AdditionalLabel" eType="#//CGIText"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_polygon" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_nNameFormat" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_nIsNameFormat" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="nAndLineCount" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_nInheritanceMask" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_pDefaultComponentRelation"
+        eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="properties" eType="#//IPropertyContainer"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_pParent" eType="#//GraphElementsType"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_transform" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="andLinePoly" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_pVirtualParent" eType="#//GraphElementsType"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_moveAndLineTimeStamp"
+        unique="false" upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="myState" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_pInheritsFrom" eType="#//GraphElementsType"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="frameset" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_bFramesetModified" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_bIsMisplaced" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_color" eType="#//IColor"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_lineWidth" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="Compartments" eType="#//CompartmentsType"
+        containment="true"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="CGIStateChart" eSuperTypes="#//GraphicChartType">
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_pModelObject" eType="#//NestedStateChartType"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_pRoot" eType="#//CGIState"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="myState" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_pInheritsFrom" eType="#//GraphicChartType"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="DiagramList" upperBound="-1"
+        eType="#//UnknownType"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="properties" eType="#//IPropertyContainer"
+        containment="true"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="CGISwimlaneFrame" eSuperTypes="#//GraphElementsType">
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_pModelObject" upperBound="-1"
+        eType="#//UnknownType"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_pParent" eType="#//GraphElementsType"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_polygon" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_nNameFormat" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_nIsNameFormat" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="frameset" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_transform" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_bFramesetModified" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="Compartments" eType="#//CompartmentsType"
+        containment="true"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="CGIText">
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_str" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_style" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_color" eType="#//IColor"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_position" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_nIdent" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_bImplicitSetRectPoints"
+        eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_nOrientationCtrlPt" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_nVerticalSpacing" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_nHorizontalSpacing" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_transform" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="CGITextBox" eSuperTypes="#//GraphElementsType">
+    <eStructuralFeatures xsi:type="ecore:EReference" name="properties" eType="#//IPropertyContainer"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_pModelObject" eType="#//IAttribute"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_pParent" eType="#//GraphElementsType"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_transform" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_polygon" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_nNameFormat" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_nIsNameFormat" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="Compartments" upperBound="-1"
+        eType="#//UnknownType"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_csModelObjPath" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_csName" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_PartsArray" upperBound="-1"
+        eType="#//DependsOnType"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="CGITrans" eSuperTypes="#//GraphElementsType">
+    <eStructuralFeatures xsi:type="ecore:EReference" name="properties" eType="#//IPropertyContainer"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_pModelObject" eType="#//TransitionsType"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_pParent" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_pSource" eType="#//GraphElementsType"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_sourceType" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_pTarget" eType="#//GraphElementsType"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_targetType" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_direction" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_rpn" eType="#//CGIText"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_anglePoint1" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_anglePoint2" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_line_style" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_SourcePort" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_TargetPort" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_nInheritanceMask" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_bShowName" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_arrow" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="myState" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_pInheritsFrom" eType="#//GraphElementsType"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_color" eType="#//IColor"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_lineWidth" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="CollEvent" eSuperTypes="#//P_MessageHandlerType">
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="id" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="first" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="second" eType="#//IMessage"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="objectCreation" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="umlDependencyID" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="CompartmentsType" abstract="true"/>
+  <eClassifiers xsi:type="ecore:EClass" name="ComponentsType" abstract="true"/>
+  <eClassifiers xsi:type="ecore:EClass" name="ConveyedType" abstract="true">
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="lastID" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="DeclarativesType" abstract="true"/>
+  <eClassifiers xsi:type="ecore:EClass" name="DefaultSubsystemType" abstract="true"
+      eSuperTypes="#//IModelElement"/>
+  <eClassifiers xsi:type="ecore:EClass" name="DefaultTransType" abstract="true"/>
+  <eClassifiers xsi:type="ecore:EClass" name="DependsOnType" abstract="true" eSuperTypes="#//ElementsType"/>
+  <eClassifiers xsi:type="ecore:EClass" name="DescriptionType" abstract="true"/>
+  <eClassifiers xsi:type="ecore:EClass" name="ElementsType" abstract="true"/>
+  <eClassifiers xsi:type="ecore:EClass" name="EmbededFilesType" abstract="true"/>
+  <eClassifiers xsi:type="ecore:EClass" name="End1_Type" abstract="true"/>
+  <eClassifiers xsi:type="ecore:EClass" name="End2_Type" abstract="true" eSuperTypes="#//End1_Type">
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="multiplicity" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="FilesType" abstract="true">
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="modifiedTimeWeak" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="id" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="umlDependencyID" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="lastID" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="myState" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_path" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="objectCreation" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="name" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="FromLinkType" abstract="true"/>
+  <eClassifiers xsi:type="ecore:EClass" name="GraphElementsType" abstract="true" eSuperTypes="#//M_pRootType">
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="id" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_drawBehavior" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_type" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_name" eType="#//CGIText"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_bIsPreferencesInitialized"
+        eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="GraphicChartType" abstract="true">
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="id" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_access" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="elementList" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_nModifyDate" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_currentLeftTop" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_modified" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_nCreateDate" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_pParent" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_arrowStyle" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_drawBehavior" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_currentRightBottom" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_creator" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_bScaleWithZoom" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_type" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="graphElements" upperBound="-1"
+        eType="#//GraphElementsType" containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_name" eType="#//CGIText"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_fileVersion" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_bIsPreferencesInitialized"
+        eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="HyperLinksType" abstract="true" eSuperTypes="#//IModelElement"/>
+  <eClassifiers xsi:type="ecore:EClass" name="IAcceptEventAction" eSuperTypes="#//IState #//ParentType #//ItsTargetType">
+    <eStructuralFeatures xsi:type="ecore:EReference" name="event" eType="#//IEvent"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="IAcceptTimeEvent" eSuperTypes="#//IState"/>
+  <eClassifiers xsi:type="ecore:EClass" name="IAction" eSuperTypes="#//IModelElement">
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="id" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="myState" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="body" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="modifiedTimeWeak" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="objectCreation" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="umlDependencyID" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="IActivityDiagram" eSuperTypes="#//DependsOnType #//TargetType">
+    <eStructuralFeatures xsi:type="ecore:EReference" name="graphicChart" eType="#//CGIStateChart"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="codeUpdateCGTime" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="IActivityGraph" eSuperTypes="#//NestedStateChartType #//DependsOnType #//ValueType #//TargetType #//M_pModelObjectType #//IModelElement">
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="lastID" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="weakCGTime" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="strongCGTime" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="multiplicity" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="itsStateChart" upperBound="-1"
+        eType="#//UnknownType"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="classModifier" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="States" upperBound="-1"
+        eType="#//ItsTargetType" containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="baseVersion" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="diagram" eType="#//IActivityDiagram"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="Views" eType="#//IActivityDiagram"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="properties" eType="#//IPropertyContainer"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="requiremenTracabilityHandle"
+        eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="description" eType="#//IDescription"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="Swimlanes" upperBound="-1"
+        eType="#//ISwimlane" containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="Stereotypes" eType="#//IClassifier"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="AnalysisMode" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="Annotations" eType="#//IComment"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="codeUpdateCGTime" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="objectCreation" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="umlDependencyID" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="HyperLinks" eType="#//IMHyperLink"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="Dependencies" upperBound="-1"
+        eType="#//IDependency" containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="theMainDiagram" eType="#//IDiagram"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="Associations" upperBound="-1"
+        eType="#//IAssociationEnd" containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="Tags" eType="#//ITag" containment="true"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="IActor" eSuperTypes="#//IClassifier #//M_pBaseType #//DependsOnType #//M_subjectType #//End2_Type">
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="id" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="myState" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="name" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="theMainDiagram" eType="#//TheMainDiagramType"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="Dependencies" upperBound="-1"
+        eType="#//IDependency" containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="lastID" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="weakCGTime" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="strongCGTime" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="Operations" upperBound="-1"
+        eType="#//OperationsType" containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="StateCharts" eType="#//IStateChart"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="itsStateChart" eType="#//IClass"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="Associations" upperBound="-1"
+        eType="#//IAssociationEnd" containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="classModifier" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="HyperLinks" eType="#//IMHyperLink"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="modifiedTimeWeak" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="Ports" eType="#//IPort"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="Inheritances" eType="#//IGeneralization"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="Attrs" upperBound="-1"
+        eType="#//IAttribute" containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="requiremenTracabilityHandle"
+        eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="description" eType="#//IDescription"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="Annotations" upperBound="-1"
+        eType="#//IRequirement" containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="ComponentFiles" upperBound="-1"
+        eType="#//IFile" containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="properties" eType="#//IPropertyContainer"
+        containment="true"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="IAnchor" eSuperTypes="#//M_pModelObjectType">
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="id" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="myState" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="name" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="dependsOn" eType="#//DependsOnType"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="modifiedTimeWeak" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="IAnnotation" eSuperTypes="#//IUnit">
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="requiremenTracabilityHandle"
+        eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="description" eType="#//IDescription"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="umlDependencyID" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="objectCreation" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="Tags" upperBound="-1" eType="#//ITag"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="body" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="IArgument" eSuperTypes="#//IVariable">
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="id" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="myState" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="properties" eType="#//IPropertyContainer"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="name" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="modifiedTimeWeak" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="typeOf" eType="#//IClassifier"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="argumentDirection" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="defaultValue" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="ValueSpecifications" eType="#//ILiteralSpecification"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="description" eType="#//IDescription"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="codeUpdateCGTime" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="objectCreation" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="umlDependencyID" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="IAssociationClass" eSuperTypes="#//IClass">
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="isClass" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_end1" eType="#//IAssociationEnd"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_end2" eType="#//IAssociationEnd"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="IAssociationEnd" eSuperTypes="#//AssociationsType #//M_subjectType #//M_hTargetType #//InverseType #//M_pModelObjectType #//ToLinkType #//IModelElement">
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="id" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="myState" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="name" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="multiplicity" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="otherClass" eType="#//ElementsType"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="linkName" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="linkType" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="navigability" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="inverse" eType="#//InverseType"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="modifiedTimeWeak" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="Qualifiers" eType="#//IAttribute"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="Stereotypes" eType="#//IStereotype"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="codeUpdateCGTime" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="qualifierType" eType="#//IType"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_associationClass" eType="#//IAssociationClass"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="IAssociationEndHandle">
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m2Class" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="filename" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="subsystem" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="class" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="name" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="id" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="IAssociationRole" eSuperTypes="#//IModelElement">
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="id" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="myState" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_fAssocType1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_fAssocType2" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_pSource" eType="#//IClassifierRole"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_pTarget" eType="#//IClassifierRole"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_pFormalAssoc1" eType="#//AssociationsType"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_pFormalAssoc2" eType="#//AssociationsType"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="name" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="modifiedTimeWeak" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="objectCreation" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="umlDependencyID" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="IAttribute" eSuperTypes="#//IVariable #//DependsOnType #//M_subjectType #//ValueType #//ItemsType #//M_pModelObjectType #//End2_Type #//End1_Type">
+    <eStructuralFeatures xsi:type="ecore:EReference" name="typeOf" eType="#//IUnit"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="protection" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="static" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="isReference" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="isConstant" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="Stereotypes" eType="#//IUnit"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="ValueSpecifications" eType="#//ILiteralSpecification"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="properties" eType="#//IPropertyContainer"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="description" eType="#//IDescription"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="Tags" upperBound="-1" eType="#//ITag"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="defaultValue" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="Dependencies" upperBound="-1"
+        eType="#//IDependency" containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="lastID" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="Annotations" eType="#//IComment"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="requiremenTracabilityHandle"
+        eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="codeUpdateCGTime" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="theMainDiagram" eType="#//IDiagram"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="IBlock" eSuperTypes="#//AssociationsType #//M_pModelObjectType #//ToLinkType #//End2_Type">
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="id" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="myState" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="name" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="objectCreation" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="umlDependencyID" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="otherClass" eType="#//IClass"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="inverse" upperBound="-1"
+        eType="#//UnknownType"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="partKind" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="IBody">
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="bodyData" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="IBranch" eSuperTypes="#//ItsTargetType">
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="id" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="name" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="modifiedTimeWeak" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="parent" eType="#//IStateVertex"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="connectorType" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="myState" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="Stereotypes" eType="#//IStereotype"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="codeUpdateCGTime" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="objectCreation" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="umlDependencyID" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="ICallAction">
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="id" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="modifiedTimeWeak" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="interfaceItem" eType="#//IConstructor"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="argumentNames" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="argumentValues" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="ICallOperation" eSuperTypes="#//IState #//ParentType #//ItsTargetType #//DependsOnType">
+    <eStructuralFeatures xsi:type="ecore:EReference" name="operation" eType="#//OperationsType"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="target" eType="#//AssociationsType"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="IClass" eSuperTypes="#//IClassifier #//DeclarativesType #//M_pBaseType #//DependsOnType #//M_subjectType #//ValueType #//ConveyedType #//TargetType #//M_pModelObjectType">
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="weakCGTime" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="strongCGTime" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="multiplicity" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="classModifier" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="properties" eType="#//PropertiesType"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="Stereotypes" upperBound="-1"
+        eType="#//IUnit"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="Operations" upperBound="-1"
+        eType="#//OperationsType" containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="Inheritances" upperBound="-1"
+        eType="#//IModelElement" containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="theMainDiagram" eType="#//TheMainDiagramType"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="Attrs" upperBound="-1"
+        eType="#//IUnit" containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="Tags" upperBound="-1" eType="#//ITag"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="Associations" upperBound="-1"
+        eType="#//AssociationsType" containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="Dependencies" upperBound="-1"
+        eType="#//IDependency" containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="Ports" upperBound="-1"
+        eType="#//IRelation" containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="ObjectLinks" upperBound="-1"
+        eType="#//ObjectLinksType" containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="StateCharts" upperBound="-1"
+        eType="#//NestedStateChartType" containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="itsStateChart" eType="#//ItsStateChartType"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="TriggeredOperations" upperBound="-1"
+        eType="#//UnknownType"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="Receptions" upperBound="-1"
+        eType="#//UnknownType"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="PrimitiveOperations" upperBound="-1"
+        eType="#//OperationsType" containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="Annotations" upperBound="-1"
+        eType="#//IUnit" containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="description" eType="#//DescriptionType"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="Declaratives" upperBound="-1"
+        eType="#//DeclarativesType" containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="AssociationElements" upperBound="-1"
+        eType="#//UnknownType"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="ownerHandle" eType="#//ISubsystem"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="HyperLinks" upperBound="-1"
+        eType="#//IMHyperLink" containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="requiremenTracabilityHandle"
+        eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="ComponentFiles" upperBound="-1"
+        eType="#//IFile" containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="Links" upperBound="-1"
+        eType="#//LinksType" containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="Components" upperBound="-1"
+        eType="#//ComponentsType" containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="EventHandles" eType="#//IInterfaceItem"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="TemplateParameters" upperBound="-1"
+        eType="#//ITemplateParameter" containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="codeUpdateCGTime" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="cmheader" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="IClassHandle" eSuperTypes="#//M_pBaseType">
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m2Class" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="id" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="filename" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="subsystem" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="class" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="name" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="IClassInstance" eSuperTypes="#//LinksType #//M_pModelObjectType">
+    <eStructuralFeatures xsi:type="ecore:EReference" name="inverse" upperBound="-1"
+        eType="#//UnknownType"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="IClassifier" eSuperTypes="#//IUnit"/>
+  <eClassifiers xsi:type="ecore:EClass" name="IClassifierRole" eSuperTypes="#//IModelElement">
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="id" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="name" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_eRoleType" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="myState" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_pBase" eType="#//M_pBaseType"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_instance" eType="#//AssociationsType"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="properties" eType="#//IPropertyContainer"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="modifiedTimeWeak" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_pRefSD" eType="#//IMSC"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="codeUpdateCGTime" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="Stereotypes" eType="#//IStereotype"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="objectCreation" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="umlDependencyID" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="ICodeGenConfigInfo" eSuperTypes="#//DependsOnType">
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="id" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="myState" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="name" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="modifiedTimeWeak" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="HyperLinks" upperBound="-1"
+        eType="#//IMHyperLink" containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="scopeType" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="libraries" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="additionalSources" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="standardHeaders" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="includePath" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="targetMain" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="instrumentation" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="timeModel" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_generateActors" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="statechartImplementation"
+        eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="initializationCode" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="checksList" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="ScopeElements" upperBound="-1"
+        eType="#//UnknownType"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="root" eType="#//IFolder"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="weakCGTime" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="strongCGTime" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_allInAnimScope" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_generateUsecases" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="Dependencies" eType="#//IDependency"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="InitialInstances" upperBound="-1"
+        eType="#//IUnit"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="properties" eType="#//IPropertyContainer"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="Annotations" eType="#//IComment"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="lastID" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="description" eType="#//IDescription"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="Tags" upperBound="-1" eType="#//ITag"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="cmheader" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="requiremenTracabilityHandle"
+        eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="Stereotypes" upperBound="-1"
+        eType="#//IClassifier"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="codeUpdateCGTime" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="AnimScopeElements" upperBound="-1"
+        eType="#//ElementsType"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="EmbededFiles" eType="#//IEmbededFile"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="objectCreation" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="umlDependencyID" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="ICodeGenConfigInfoHandle">
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m2Class" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="id" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="ICollaboration" eSuperTypes="#//IModelElement #//M_pModelObjectType">
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="id" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="ClassifierRoles" upperBound="-1"
+        eType="#//IClassifierRole" containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="Messages" upperBound="-1"
+        eType="#//IMessage" containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="Annotations" eType="#//IConstraint"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="AssociationRoles" upperBound="-1"
+        eType="#//IAssociationRole" containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="modifiedTimeWeak" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="CombinedFragments" upperBound="-1"
+        eType="#//ICombinedFragment" containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="p_MessageHandler" upperBound="-1"
+        eType="#//P_MessageHandlerType" containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="InteractionOccurrences"
+        eType="#//IInteractionOccurrence" containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="ExecutionOccurrences" upperBound="-1"
+        eType="#//IExecutionOccurrence" containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="objectCreation" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="umlDependencyID" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="ICollaborationDiagram" eSuperTypes="#//IDiagram">
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_pICollaboration" eType="#//ICollaboration"
+        containment="true"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="IColor">
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_fgColor" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_bgColor" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_bgFlag" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="ICombinedFragment">
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="id" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="myState" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="name" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="modifiedTimeWeak" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="interactionOperator" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="InteractionOperands" upperBound="-1"
+        eType="#//IInteractionOperand" containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="Stereotypes" eType="#//IStereotype"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="Tags" eType="#//ITag" containment="true"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="IComment" eSuperTypes="#//IAnnotation #//ValueType">
+    <eStructuralFeatures xsi:type="ecore:EReference" name="HyperLinks" upperBound="-1"
+        eType="#//IMHyperLink" containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="Anchors" upperBound="-1"
+        eType="#//IAnchor" containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="Dependencies" upperBound="-1"
+        eType="#//IDependency" containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="Stereotypes" eType="#//IClassifier"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="lastID" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="codeUpdateCGTime" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="theMainDiagram" eType="#//IDiagram"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="properties" eType="#//IPropertyContainer"
+        containment="true"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="IComponent" eSuperTypes="#//IUnit #//OwnerHandleType #//DependsOnType #//DeclarativesType #//M_pModelObjectType">
+    <eStructuralFeatures xsi:type="ecore:EReference" name="ownerHandle" eType="#//OwnerHandleType"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="id" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="myState" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="name" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="Stereotypes" upperBound="-1"
+        eType="#//IClassifier"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="modifiedTimeWeak" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_buildType" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_libraries" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_additionalSources" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_standardHeaders" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_includePath" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_initializationCode" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_folder" eType="#//IFolder"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_configActive" eType="#//ICodeGenConfigInfoHandle"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="Configs" upperBound="-1"
+        eType="#//ICodeGenConfigInfo" containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="Dependencies" upperBound="-1"
+        eType="#//IDependency" containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="HandlesInMe" upperBound="-1"
+        eType="#//DefaultSubsystemType"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="properties" eType="#//IPropertyContainer"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="lastID" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="description" eType="#//IDescription"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="requiremenTracabilityHandle"
+        eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="HyperLinks" eType="#//IMHyperLink"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="codeUpdateCGTime" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="Declaratives" upperBound="-1"
+        eType="#//IUnit" containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="VariationPoints" eType="#//IUnit"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="SelectedVariants" eType="#//IUnit"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="objectCreation" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="umlDependencyID" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="cmheader" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="IComponentDiagram" eSuperTypes="#//IDiagram #//DeclarativesType #//DependsOnType"/>
+  <eClassifiers xsi:type="ecore:EClass" name="IComponentInstance" eSuperTypes="#//IModelElement"/>
+  <eClassifiers xsi:type="ecore:EClass" name="IConfiguration" eSuperTypes="#//IModelElement"/>
+  <eClassifiers xsi:type="ecore:EClass" name="IConnector" eSuperTypes="#//IStateVertex #//ItsTargetType">
+    <eStructuralFeatures xsi:type="ecore:EReference" name="parent" eType="#//ParentType"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="connectorType" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="IConstraint" eSuperTypes="#//IAnnotation">
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="id" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="myState" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="name" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="modifiedTimeWeak" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="Stereotypes" eType="#//IClassifier"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="properties" eType="#//IPropertyContainer"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="Anchors" eType="#//IAnchor"
+        containment="true"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="IConstructor" eSuperTypes="#//OperationsType #//M_subjectType #//ItemsType">
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="id" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="myState" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="modifiedTimeWeak" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="returnType" upperBound="-1"
+        eType="#//UnknownType"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="abstract" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="final" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="concurrency" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="protection" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="static" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="constant" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="itsBody" eType="#//IBody"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="initializer" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="Args" upperBound="-1" eType="#//IVariable"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="name" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="description" eType="#//IDescription"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="requiremenTracabilityHandle"
+        eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="codeUpdateCGTime" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="Tags" eType="#//ITag" containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="lastID" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="IContextSpecification" eSuperTypes="#//IValueSpecification"/>
+  <eClassifiers xsi:type="ecore:EClass" name="IControlledFile" eSuperTypes="#//IUnit"/>
+  <eClassifiers xsi:type="ecore:EClass" name="IDefaultDrvdTrans" eSuperTypes="#//DefaultTransType #//TransitionsType #//DependsOnType">
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="itsSource" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="ofState" eType="#//IState"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="errorStatus" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="inheritsFromHandle" eType="#//IDefaultDrvdTrans"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="Annotations" eType="#//IRequirement"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="Stereotypes" eType="#//IStereotype"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="IDependency" eSuperTypes="#//IModelElement #//DependsOnType #//M_subjectType">
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="id" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="myState" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="properties" eType="#//IPropertyContainer"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="name" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="Stereotypes" eType="#//IUnit"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="modifiedTimeWeak" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="dependsOn" eType="#//DependsOnType"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="Tags" eType="#//ITag" containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="Annotations" eType="#//IComment"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="Dependencies" eType="#//IDependency"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="description" eType="#//IDescription"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="requiremenTracabilityHandle"
+        eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="codeUpdateCGTime" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="IDeploymentDiagram" eSuperTypes="#//IDiagram"/>
+  <eClassifiers xsi:type="ecore:EClass" name="IDescription" eSuperTypes="#//DescriptionType">
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="textRTF" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="text" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="Hyperlinks" upperBound="-1"
+        eType="#//HyperLinksType" containment="true"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="IDestructor" eSuperTypes="#//OperationsType #//M_subjectType">
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="id" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="name" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="Args" upperBound="-1" eType="#//UnknownType"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="abstract" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="final" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="concurrency" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="protection" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="static" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="constant" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="itsBody" eType="#//IBody"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="modifiedTimeWeak" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="description" eType="#//IDescription"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="properties" eType="#//IPropertyContainer"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="myState" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="returnType" eType="#//IClassifier"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="IDiagram" eSuperTypes="#//IUnit #//TheMainDiagramType #//DeclarativesType #//DependsOnType #//TargetType #//M_pModelObjectType">
+    <eStructuralFeatures xsi:type="ecore:EReference" name="properties" eType="#//PropertiesType"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="Stereotypes" eType="#//IModelElement"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="modifiedTimeWeak" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="graphicChart" eType="#//GraphicChartType"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="Annotations" upperBound="-1"
+        eType="#//IAnnotation" containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="codeUpdateCGTime" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="HyperLinks" upperBound="-1"
+        eType="#//IMHyperLink" containment="true"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="IEmbededFile" eSuperTypes="#//EmbededFilesType">
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="id" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="name" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="modifiedTimeWeak" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="MayNeedToRelocate" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="LastKnownFullPath" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="Stereotypes" upperBound="-1"
+        eType="#//UnknownType"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="Tags" eType="#//ITag" containment="true"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="IEnumerationLiteral" eSuperTypes="#//IModelElement #//ItemsType">
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="id" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="name" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="modifiedTimeWeak" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="value" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="properties" eType="#//IPropertyContainer"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="Tags" eType="#//ITag" containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="codeUpdateCGTime" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="description" eType="#//IDescription"
+        containment="true"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="IEvent" eSuperTypes="#//IInterfaceItem #//M_subjectType #//M_pFormalMessageType #//ConveyedType #//TargetType #//M_pModelObjectType">
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="id" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="myState" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="name" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="virtual" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="modifiedTimeWeak" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="Args" upperBound="-1" eType="#//IVariable"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="Stereotypes" eType="#//IClassifier"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="description" eType="#//IDescription"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="properties" eType="#//IPropertyContainer"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="Dependencies" upperBound="-1"
+        eType="#//IDependency" containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="Tags" eType="#//ITag" containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="superEvent" upperBound="-1"
+        eType="#//UnknownType"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="requiremenTracabilityHandle"
+        eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="Annotations" eType="#//IConstraint"
+        containment="true"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="IEventHandle">
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m2Class" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="filename" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="subsystem" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="class" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="name" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="id" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="IEventReception" eSuperTypes="#//IInterfaceItem"/>
+  <eClassifiers xsi:type="ecore:EClass" name="IExecutionOccurrence" eSuperTypes="#//IModelElement">
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="id" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_startMessage" eType="#//IMessage"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_endMessage" upperBound="-1"
+        eType="#//UnknownType"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_length" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="IExternalHyperlink" eSuperTypes="#//HyperLinksType">
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="target" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="IFile" eSuperTypes="#//IUnit #//FilesType">
+    <eStructuralFeatures xsi:type="ecore:EReference" name="properties" eType="#//IPropertyContainer"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_type" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="Fragments" upperBound="-1"
+        eType="#//IModelElement" containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="description" eType="#//IDescription"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="Dependencies" upperBound="-1"
+        eType="#//IDependency" containment="true"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="IFileFragment" eSuperTypes="#//IModelElement">
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="id" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="name" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_type" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_text" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_startRow" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_startCol" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="description" eType="#//IDescription"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_startCol_Short" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_endRow" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_endCol_Short" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_subject" eType="#//M_subjectType"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="Tags" upperBound="-1" eType="#//ITag"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="Fragments" upperBound="-1"
+        eType="#//IFileFragment" containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="modifiedTimeWeak" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="objectCreation" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="umlDependencyID" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="IFlow" eSuperTypes="#//IModelElement"/>
+  <eClassifiers xsi:type="ecore:EClass" name="IFlowItem" eSuperTypes="#//IClassifier"/>
+  <eClassifiers xsi:type="ecore:EClass" name="IFlowchart"/>
+  <eClassifiers xsi:type="ecore:EClass" name="IFolder" eSuperTypes="#//FilesType">
+    <eStructuralFeatures xsi:type="ecore:EReference" name="Elements" upperBound="-1"
+        eType="#//ElementsType"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="Files" upperBound="-1"
+        eType="#//FilesType" containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="requiremenTracabilityHandle"
+        eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="codeUpdateCGTime" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="IFork" eSuperTypes="#//ItsTargetType">
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="id" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="myState" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="name" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="modifiedTimeWeak" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="description" eType="#//IDescription"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="parent" eType="#//IState"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="connectorType" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="objectCreation" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="umlDependencyID" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="IGeneralization" eSuperTypes="#//IModelElement">
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="id" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="modifiedTimeWeak" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="dependsOn" eType="#//IUnit"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="inheritanceType" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="isVirtual" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="Stereotypes" eType="#//IStereotype"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="description" eType="#//IDescription"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="objectCreation" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="umlDependencyID" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="ti" eType="#//ITemplateInst"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="Annotations" upperBound="-1"
+        eType="#//IConstraint" containment="true"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="IGuard" eSuperTypes="#//IModelElement">
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="id" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="body" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="modifiedTimeWeak" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="objectCreation" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="umlDependencyID" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="IHandleWithData">
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m2Class" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="filename" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="subsystem" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="class" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="name" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="id" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="data" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="IHistoryConnector" eSuperTypes="#//ItsTargetType">
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="id" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="name" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="parent" eType="#//IState"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="connectorType" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="myState" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="modifiedTimeWeak" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="objectCreation" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="umlDependencyID" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="IHyperLink" eSuperTypes="#//IDependency"/>
+  <eClassifiers xsi:type="ecore:EClass" name="IInformationFlow" eSuperTypes="#//DeclarativesType #//DependsOnType #//IModelElement">
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="id" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="myState" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="name" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="Conveyed" upperBound="-1"
+        eType="#//ConveyedType"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="end1_" eType="#//End1_Type"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="end2_" eType="#//End2_Type"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="direction_" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="modifiedTimeWeak" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="description" eType="#//IDescription"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="end1ObjectPort_" eType="#//IInstance"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="end2ObjectPort_" eType="#//IInstance"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="requiremenTracabilityHandle"
+        eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="HyperLinks" eType="#//IMHyperLink"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="Dependencies" eType="#//IDependency"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="Annotations" eType="#//IRequirement"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="objectCreation" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="umlDependencyID" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="Stereotypes" eType="#//IUnit"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="Tags" upperBound="-1" eType="#//ITag"
+        containment="true"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="IInformationItem" eSuperTypes="#//DeclarativesType #//DependsOnType #//ConveyedType">
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="id" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="myState" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="name" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="requiremenTracabilityHandle"
+        eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="modifiedTimeWeak" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="description" eType="#//IDescription"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="Represented" upperBound="-1"
+        eType="#//IEvent"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="Annotations" upperBound="-1"
+        eType="#//IRequirement" containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="objectCreation" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="umlDependencyID" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="IInstance" eSuperTypes="#//IRelation">
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="modifiedTimeWeak" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="id" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="inverse" upperBound="-1"
+        eType="#//UnknownType"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="myState" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="name" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="IInstanceSlot" eSuperTypes="#//IModelElement"/>
+  <eClassifiers xsi:type="ecore:EClass" name="IInstanceSpecification" eSuperTypes="#//IModelElement"/>
+  <eClassifiers xsi:type="ecore:EClass" name="IInstanceValue" eSuperTypes="#//IValueSpecification">
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="id" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="modifiedTimeWeak" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="value" eType="#//ValueType"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="IInteractionOccurrence" eSuperTypes="#//IModelElement">
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="id" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="name" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="modifiedTimeWeak" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_pRefSD" eType="#//IMSC"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="Stereotypes" eType="#//IStereotype"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="Tags" eType="#//ITag" containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="objectCreation" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="umlDependencyID" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="IInteractionOperand" eSuperTypes="#//ICollaboration">
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="myState" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="name" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="interactionConstraint"
+        eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="IInteractionOperator" eSuperTypes="#//IModelElement"/>
+  <eClassifiers xsi:type="ecore:EClass" name="IInterfaceItem" eSuperTypes="#//IClassifier"/>
+  <eClassifiers xsi:type="ecore:EClass" name="IInterfaceItemTrigger" eSuperTypes="#//ItsTriggerType">
+    <eStructuralFeatures xsi:type="ecore:EReference" name="itsInterfaceItem" eType="#//M_pFormalMessageType"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="inheritsFromHandle" eType="#//IInterfaceItemTrigger"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="IInternalHyperlink" eSuperTypes="#//HyperLinksType">
+    <eStructuralFeatures xsi:type="ecore:EReference" name="target" eType="#//TargetType"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="ILabel" eSuperTypes="#//ItsLabelType">
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="id" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="itsTrigger" eType="#//ItsTriggerType"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="itsAction" eType="#//IModelElement"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="itsGuard" eType="#//IModelElement"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="modifiedTimeWeak" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="myState" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="inheritsFromHandle" eType="#//ILabel"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="codeUpdateCGTime" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="objectCreation" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="umlDependencyID" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="ILink" eSuperTypes="#//IUnit #//LinksType #//M_pModelObjectType">
+    <eStructuralFeatures xsi:type="ecore:EReference" name="inverse" eType="#//IUnit"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="linkName" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="linkType" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="myState" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="ILinkInstance" eSuperTypes="#//ComponentsType #//M_pModelObjectType">
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="id" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="name" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="toLink" eType="#//IClassInstance"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="fromLink" eType="#//IClassInstance"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="instantiates" eType="#//IMetaLinkHandle"
+        containment="true"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="ILiteralSpecification" eSuperTypes="#//IValueSpecification">
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="id" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="modifiedTimeWeak" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="value" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="myState" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="name" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="codeUpdateCGTime" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="IMHyperLink" eSuperTypes="#//HyperLinksType">
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="id" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="properties" eType="#//IPropertyContainer"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="modifiedTimeWeak" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="dependsOn" eType="#//DependsOnType"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="linkDispName" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="linkType" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="isConfigurationFileHyperLink"
+        eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="linkTarget" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="description" eType="#//IDescription"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="requiremenTracabilityHandle"
+        eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="objectCreation" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="umlDependencyID" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="IMSC" eSuperTypes="#//DeclarativesType #//DependsOnType #//TargetType">
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="id" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="myState" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="properties" eType="#//IPropertyContainer"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="name" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="lastModifiedTime" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="graphicChart" eType="#//CGIMscChart"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="defaultSubsystem" eType="#//OwnerHandleType"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_pICollaboration" eType="#//ICollaboration"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="cmheader" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="lastID" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="ownerHandle" eType="#//ISubsystem"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="description" eType="#//IDescription"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="modifiedTimeWeak" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="Stereotypes" upperBound="-1"
+        eType="#//IClassifier"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="Tags" upperBound="-1" eType="#//ITag"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="requiremenTracabilityHandle"
+        eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="Annotations" eType="#//IAnnotation"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="objectCreation" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="umlDependencyID" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="IMatrixInstance" eSuperTypes="#//MatrixInstancesType #//DependsOnType">
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="id" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="myState" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="name" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="modifiedTimeWeak" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="LayoutHandle" eType="#//IUnit"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="FromScopeHandles" eType="#//M_pModelObjectType"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="ToScopeHandles" eType="#//M_pModelObjectType"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="Stereotypes" eType="#//IClassifier"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_IncludeDescendants_to"
+        eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="properties" eType="#//IPropertyContainer"
+        containment="true"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="IMatrixLayout" eSuperTypes="#//IUnit">
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="id" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="myState" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="name" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="modifiedTimeWeak" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="FromElementTypes" upperBound="-1"
+        eType="#//TableDataDefinition" containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="ToElementTypes" eType="#//TableDataDefinition"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="CellElementTypes" eType="#//TableDataDefinition"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="description" eType="#//IDescription"
+        containment="true"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="IMatrixView" eSuperTypes="#//IUnit"/>
+  <eClassifiers xsi:type="ecore:EClass" name="IMessage" eSuperTypes="#//IModelElement #//DependsOnType">
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="id" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="myState" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="name" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_szSequence" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_szActualArgs" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_szReturnVal" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_pReceiver" eType="#//IClassifierRole"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_pSender" eType="#//IClassifierRole"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_pFormalMessage" eType="#//M_pFormalMessageType"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_eType" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_pCommunicationConnection"
+        eType="#//IModelElement"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_freeText" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="modifiedTimeWeak" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="Stereotypes" eType="#//IClassifier"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="Tags" upperBound="-1" eType="#//ITag"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="properties" eType="#//IPropertyContainer"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_targetExec" eType="#//IModelElement"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_srcExec" eType="#//IModelElement"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="objectCreation" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="umlDependencyID" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="IMessagePoint" eSuperTypes="#//IModelElement"/>
+  <eClassifiers xsi:type="ecore:EClass" name="IMetaLinkHandle" eSuperTypes="#//InverseType #//M_pModelObjectType">
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m2Class" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="filename" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="subsystem" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="class" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="name" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="id" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="IModelElement" eSuperTypes="http://www.eclipse.org/emf/2002/Ecore#//EModelElement">
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="displayName" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="IModule" eSuperTypes="#//IInstance #//AssociationsType #//DependsOnType #//M_pModelObjectType #//End2_Type">
+    <eStructuralFeatures xsi:type="ecore:EReference" name="Stereotypes" eType="#//IStereotype"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="description" eType="#//IDescription"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="HyperLinks" upperBound="-1"
+        eType="#//IMHyperLink" containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="otherClass" eType="#//IClass"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="implicitClass" eType="#//IClass"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="properties" eType="#//IPropertyContainer"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="requiremenTracabilityHandle"
+        eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="partKind" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="IMultiplicityItem">
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="name" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="count" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="INode" eSuperTypes="#//IClassifier"/>
+  <eClassifiers xsi:type="ecore:EClass" name="IObjectLink" eSuperTypes="#//ObjectLinksType #//ValueType #//M_pModelObjectType #//DependsOnType #//IModelElement">
+    <eStructuralFeatures xsi:type="ecore:EReference" name="Stereotypes" eType="#//IUnit"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="Tags" eType="#//ITag" containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="toLink" eType="#//ToLinkType"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="fromLink" eType="#//FromLinkType"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="instantiates" eType="#//IMetaLinkHandle"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="end1Multiplicity" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="end2Multiplicity" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="toPort" eType="#//IRelation"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="fromPort" eType="#//IRelation"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="description" eType="#//IDescription"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="requiremenTracabilityHandle"
+        eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="codeUpdateCGTime" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="objectCreation" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="umlDependencyID" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="IObjectLinkHandle">
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m2Class" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="filename" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="subsystem" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="class" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="name" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="id" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="IObjectModelDiagram" eSuperTypes="#//IDiagram"/>
+  <eClassifiers xsi:type="ecore:EClass" name="IObjectNode" eSuperTypes="#//IState #//ItsTargetType">
+    <eStructuralFeatures xsi:type="ecore:EReference" name="represents" eType="#//IClass"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="TheInState" eType="#//IState"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="inState" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="IOperation" eSuperTypes="#//IInterfaceItem"/>
+  <eClassifiers xsi:type="ecore:EClass" name="IPackage" eSuperTypes="#//IUnit">
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="modifiedTimeWeak" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="id" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="description" eType="#//IDescription"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="umlDependencyID" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="lastID" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="myState" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="Annotations" eType="#//IComment"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="objectCreation" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="Stereotypes" eType="#//IModelElement"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="name" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="properties" eType="#//IPropertyContainer"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="cmheader" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="IPanelDiagram" eSuperTypes="#//IDiagram #//DeclarativesType #//TargetType"/>
+  <eClassifiers xsi:type="ecore:EClass" name="IPart" eSuperTypes="#//AssociationsType #//DependsOnType #//M_subjectType #//ValueType #//M_hTargetType #//M_pModelObjectType #//ToLinkType #//InverseType #//ConveyedType #//End2_Type #//TargetType #//FromLinkType #//End1_Type #//IModelElement">
+    <eStructuralFeatures xsi:type="ecore:EReference" name="Stereotypes" eType="#//IUnit"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="otherClass" eType="#//IUnit"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="inverse" eType="#//InverseType"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="Dependencies" upperBound="-1"
+        eType="#//IDependency" containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="Tags" eType="#//ITag" containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="initialCallAction" eType="#//ICallAction"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="codeUpdateCGTime" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="theMainDiagram" eType="#//DependsOnType"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="Slots" eType="#//ISlot"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="HyperLinks" upperBound="-1"
+        eType="#//IMHyperLink" containment="true"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="IPin" eSuperTypes="#//IConnector #//ItsTargetType">
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_type" eType="#//IClassifier"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m_isParameterPin" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_corePin" eType="#//IConnector"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="IPort" eSuperTypes="#//IInstance #//M_hTargetType #//ToLinkType #//End2_Type">
+    <eStructuralFeatures xsi:type="ecore:EReference" name="otherClass" eType="#//IClass"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="behavioral" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="reversed" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="Stereotypes" upperBound="-1"
+        eType="#//IClassifier"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="Tags" eType="#//ITag" containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="objectCreation" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="umlDependencyID" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="lastID" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="Dependencies" eType="#//IDependency"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="Annotations" eType="#//IRequirement"
+        containment="true"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="IPrimitiveOperation" eSuperTypes="#//OperationsType #//DependsOnType #//M_subjectType #//ValueType #//M_pFormalMessageType #//ItemsType #//TargetType #//M_pModelObjectType #//IModelElement">
+    <eStructuralFeatures xsi:type="ecore:EReference" name="properties" eType="#//IPropertyContainer"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="lastID" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="Args" upperBound="-1" eType="#//IVariable"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="returnType" eType="#//IClassifier"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="abstract" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="final" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="concurrency" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="protection" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="static" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="constant" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="itsBody" eType="#//IBody"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="Tags" upperBound="-1" eType="#//ITag"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="Annotations" eType="#//IComment"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="Dependencies" upperBound="-1"
+        eType="#//IDependency" containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="Stereotypes" eType="#//IClassifier"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="myReturnType" eType="#//IType"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="description" eType="#//IDescription"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="requiremenTracabilityHandle"
+        eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="Declaratives" upperBound="-1"
+        eType="#//IMSC" containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="itsActivityGraph" eType="#//IActivityGraph"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="EmbededFiles" eType="#//EmbededFilesType"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="codeUpdateCGTime" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="TemplateParameters" eType="#//ITemplateParameter"
+        containment="true"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="IProfile" eSuperTypes="#//IPackage #//OwnerHandleType #//DependsOnType #//DefaultSubsystemType">
+    <eStructuralFeatures xsi:type="ecore:EReference" name="Declaratives" upperBound="-1"
+        eType="#//DeclarativesType" containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="defaultComposite" eType="#//IClass"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="eventsBaseID" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="Classes" upperBound="-1"
+        eType="#//IClass" containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="configurationRelatedTime"
+        unique="false" upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="Tags" upperBound="-1" eType="#//ITag"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="Types" upperBound="-1"
+        eType="#//IType" containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="MatrixLayouts" eType="#//IMatrixLayout"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="license" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="IProject" eSuperTypes="#//IPackage #//M_pModelObjectType">
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="UserColors" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="defaultSubsystem" eType="#//DefaultSubsystemType"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="component" eType="#//IComponent"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="Multiplicities" upperBound="-1"
+        eType="#//IMultiplicityItem" containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="Subsystems" upperBound="-1"
+        eType="#//DefaultSubsystemType" containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="Diagrams" upperBound="-1"
+        eType="#//IModelElement" containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="Components" upperBound="-1"
+        eType="#//IModelElement" containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="PanelDiagrams" eType="#//IPanelDiagram"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="HyperLinks" upperBound="-1"
+        eType="#//IMHyperLink" containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="MSCS" upperBound="-1" eType="#//DeclarativesType"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="UCDiagrams" upperBound="-1"
+        eType="#//IUCDiagram" containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="CollaborationDiagrams"
+        upperBound="-1" eType="#//ICollaborationDiagram" containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="Declaratives" eType="#//IStereotype"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="ComponentDiagrams" eType="#//IComponentDiagram"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="unitSccProjName" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="unitSccProjPath" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="Dependencies" eType="#//IDependency"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="codeUpdateCGTime" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="version" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="IProperty">
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="Name" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="Value" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="Type" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="ExtraTypeInfo" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="IPropertyContainer" eSuperTypes="#//PropertiesType">
+    <eStructuralFeatures xsi:type="ecore:EReference" name="Subjects" upperBound="-1"
+        eType="#//IPropertySubject" containment="true"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="IPropertyMetaclass">
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="Name" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="Properties" upperBound="-1"
+        eType="#//IProperty" containment="true"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="IPropertySubject">
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="Name" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="Metaclasses" upperBound="-1"
+        eType="#//IPropertyMetaclass" containment="true"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="IReception" eSuperTypes="#//OperationsType #//ItemsType #//DependsOnType">
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="id" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="myState" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="Args" upperBound="-1" eType="#//UnknownType"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="event" eType="#//IEvent"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="modifiedTimeWeak" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="Dependencies" upperBound="-1"
+        eType="#//IDependency" containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="lastID" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="requiremenTracabilityHandle"
+        eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="description" eType="#//IDescription"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="objectCreation" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="umlDependencyID" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="IReferenceActivity" eSuperTypes="#//DependsOnType #//ParentType #//ItsTargetType">
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="id" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="name" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="Stereotypes" eType="#//IClassifier"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="modifiedTimeWeak" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="parent" eType="#//IState"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="stateType" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="defaultTrans" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="swimlane" eType="#//ISwimlane"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="referencedActivity" eType="#//IActivityGraph"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="myState" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="IRelation" eSuperTypes="#//IUnit"/>
+  <eClassifiers xsi:type="ecore:EClass" name="IRequirement" eSuperTypes="#//IAnnotation #//DependsOnType">
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="id" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="name" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="Annotations" upperBound="-1"
+        eType="#//IRequirement" containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="myState" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="lastID" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="Stereotypes" eType="#//IStereotype"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="modifiedTimeWeak" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="reqID" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="Dependencies" upperBound="-1"
+        eType="#//IDependency" containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="Anchors" upperBound="-1"
+        eType="#//IAnchor" containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="HyperLinks" upperBound="-1"
+        eType="#//IMHyperLink" containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="theMainDiagram" eType="#//IDiagram"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="ISendAction" eSuperTypes="#//IAction">
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_hTarget" eType="#//M_hTargetType"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="m_hEvent" eType="#//IEventHandle"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="ArgValCount" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="graphElements" upperBound="-1"
+        eType="#//IHandleWithData" containment="true"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="ISequenceDiagram" eSuperTypes="#//IDiagram"/>
+  <eClassifiers xsi:type="ecore:EClass" name="ISlot">
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="id" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="name" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="value" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="definingVar" eType="#//IAttribute"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="IState" eSuperTypes="#//IStateVertex #//ItsTargetType #//M_pModelObjectType #//DependsOnType #//TargetType">
+    <eStructuralFeatures xsi:type="ecore:EReference" name="parent" eType="#//IStateVertex"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="stateType" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="defaultTrans" eType="#//DefaultTransType"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="entryAction" eType="#//IModelElement"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="inheritsFromHandle" eType="#//IState"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="exitAction" eType="#//IAction"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="nestedStateChart" eType="#//NestedStateChartType"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="requiremenTracabilityHandle"
+        eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="Annotations" upperBound="-1"
+        eType="#//IAnnotation" containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="Dependencies" eType="#//IDependency"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="theMainDiagram" eType="#//IDiagram"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="swimlane" eType="#//ISwimlane"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="codeUpdateCGTime" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="IStateChart" eSuperTypes="#//IClass #//NestedStateChartType #//TargetType">
+    <eStructuralFeatures xsi:type="ecore:EReference" name="States" upperBound="-1"
+        eType="#//IState" containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="baseVersion" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="diagram" eType="#//IStateChartDiagram"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="Views" eType="#//IStateChartDiagram"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="inheritsFromHandle" eType="#//IStateChart"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="IStateChartDiagram" eSuperTypes="#//IDiagram"/>
+  <eClassifiers xsi:type="ecore:EClass" name="IStateVertex" eSuperTypes="#//IModelElement #//ParentType">
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="modifiedTimeWeak" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="id" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="description" eType="#//IDescription"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="umlDependencyID" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="myState" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="Stereotypes" eType="#//IStereotype"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="objectCreation" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="name" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="IStereotype" eSuperTypes="#//IClassifier #//ValueType #//DeclarativesType #//DependsOnType #//M_pModelObjectType">
+    <eStructuralFeatures xsi:type="ecore:EReference" name="properties" eType="#//IPropertyContainer"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="m2Classes" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="newTerm" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="description" eType="#//IDescription"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="Tags" upperBound="-1" eType="#//ITag"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="lastID" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="Inheritances" upperBound="-1"
+        eType="#//IGeneralization" containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="Dependencies" eType="#//IDependency"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="requiremenTracabilityHandle"
+        eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="objectCreation" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="umlDependencyID" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="theMainDiagram" eType="#//IUnit"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="Annotations" eType="#//IComment"
+        containment="true"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="IStructureDiagram" eSuperTypes="#//IDiagram #//DeclarativesType #//DependsOnType #//TargetType #//TheMainDiagramType #//M_pModelObjectType"/>
+  <eClassifiers xsi:type="ecore:EClass" name="ISubsystem" eSuperTypes="#//OwnerHandleType #//DependsOnType #//DeclarativesType #//M_pModelObjectType #//TargetType #//DefaultSubsystemType">
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="id" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="myState" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="name" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="modifiedTimeWeak" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="defaultComposite" eType="#//IClass"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="eventsBaseID" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="Classes" upperBound="-1"
+        eType="#//IClass" containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="configurationRelatedTime"
+        unique="false" upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="properties" eType="#//IPropertyContainer"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="lastID" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="cmheader" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="Declaratives" upperBound="-1"
+        eType="#//DeclarativesType" containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="Types" upperBound="-1"
+        eType="#//IUnit" containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="Stereotypes" eType="#//IUnit"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="PredefinedTypes" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="Events" upperBound="-1"
+        eType="#//IInterfaceItem" containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="Annotations" upperBound="-1"
+        eType="#//IUnit" containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="UseCases" upperBound="-1"
+        eType="#//IClassifier" containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="Actors" upperBound="-1"
+        eType="#//IClassifier" containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="description" eType="#//IDescription"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="Tags" upperBound="-1" eType="#//ITag"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="Dependencies" upperBound="-1"
+        eType="#//IDependency" containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="ownerHandle" eType="#//OwnerHandleType"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="theMainDiagram" eType="#//TheMainDiagramType"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="HyperLinks" eType="#//HyperLinksType"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="TableLayouts" upperBound="-1"
+        eType="#//IModelElement" containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="MatrixLayouts" upperBound="-1"
+        eType="#//IMatrixLayout" containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="TableInstances" upperBound="-1"
+        eType="#//TableInstancesType" containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="MatrixInstances" upperBound="-1"
+        eType="#//MatrixInstancesType" containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="EmbededFiles" upperBound="-1"
+        eType="#//EmbededFilesType" containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="ComponentFiles" upperBound="-1"
+        eType="#//IFile" containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="requiremenTracabilityHandle"
+        eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="codeUpdateCGTime" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="objectCreation" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="umlDependencyID" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="AssociationElements" upperBound="-1"
+        eType="#//IAssociationClass" containment="true"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="ISwimlane" eSuperTypes="#//IModelElement">
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="id" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="name" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="modifiedTimeWeak" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="description" eType="#//IDescription"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="represents" eType="#//M_subjectType"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="myState" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="objectCreation" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="umlDependencyID" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="Swimlanes" upperBound="-1"
+        eType="#//ISwimlane" containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="Stereotypes" eType="#//IStereotype"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="ISysMLPort" eSuperTypes="#//IInstance #//DependsOnType #//M_pFormalMessageType #//ToLinkType #//End2_Type #//FromLinkType #//End1_Type">
+    <eStructuralFeatures xsi:type="ecore:EReference" name="Dependencies" upperBound="-1"
+        eType="#//IDependency" containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="Stereotypes" eType="#//IUnit"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="Tags" eType="#//ITag" containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="otherClass" eType="#//IUnit"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="direction" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="description" eType="#//IDescription"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="lastID" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="reversed" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="ITableInstance" eSuperTypes="#//TableInstancesType #//DependsOnType">
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="id" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="myState" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="properties" eType="#//IPropertyContainer"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="name" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="modifiedTimeWeak" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="LayoutHandle" eType="#//IUnit"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="ScopeHandles" eType="#//M_pModelObjectType"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="Stereotypes" eType="#//IClassifier"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="ITableLayout" eSuperTypes="#//IUnit #//ValueType">
+    <eStructuralFeatures xsi:type="ecore:EReference" name="properties" eType="#//IPropertyContainer"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="Stereotypes" eType="#//IStereotype"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="Tags" upperBound="-1" eType="#//ITag"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="TableElementTypes" upperBound="-1"
+        eType="#//TableDataDefinition" containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="DataColumns" upperBound="-1"
+        eType="#//TableDataDefinition" containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="description" eType="#//IDescription"
+        containment="true"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="ITableView" eSuperTypes="#//IUnit"/>
+  <eClassifiers xsi:type="ecore:EClass" name="ITag" eSuperTypes="#//IVariable #//M_pModelObjectType">
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="id" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="name" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="modifiedTimeWeak" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="ValueSpecifications" upperBound="-1"
+        eType="#//IModelElement" containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="typeOf" eType="#//IUnit"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="myState" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="multiplicity" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="properties" eType="#//IPropertyContainer"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="description" eType="#//IDescription"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="HyperLinks" eType="#//IMHyperLink"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="base" eType="#//IUnit"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="metaClass" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="defaultValue" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="codeUpdateCGTime" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="ITemplateInst">
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="id" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="modifiedTimeWeak" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="TemplateInstParams" eType="#//ITemplateInstParam"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="ofTemplate" eType="#//IClass"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="ITemplateInstParam">
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="id" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="name" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="modifiedTimeWeak" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="value" eType="#//IClass"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="argValue" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="onTheFlyValue" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="ITemplateInstantiation" eSuperTypes="#//IModelElement"/>
+  <eClassifiers xsi:type="ecore:EClass" name="ITemplateInstantiationParameter" eSuperTypes="#//IModelElement"/>
+  <eClassifiers xsi:type="ecore:EClass" name="ITemplateParameter" eSuperTypes="#//IVariable">
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="id" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="name" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="myState" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="modifiedTimeWeak" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="representative" eType="#//IClass"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="ITimeEvent" eSuperTypes="#//ItsTargetType">
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="id" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="myState" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="name" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="modifiedTimeWeak" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="parent" eType="#//IState"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="stateType" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="defaultTrans" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="durationTime" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="swimlane" eType="#//ISwimlane"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="ITimeout" eSuperTypes="#//ItsTriggerType">
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="time" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="inheritsFromHandle" eType="#//ITimeout"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="ITransition" eSuperTypes="#//IModelElement #//TransitionsType #//DependsOnType #//TargetType">
+    <eStructuralFeatures xsi:type="ecore:EReference" name="itsSource" eType="#//ItsTargetType"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="inheritsFromHandle" eType="#//ITransition"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="Dependencies" upperBound="-1"
+        eType="#//IDependency" containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="Stereotypes" eType="#//IClassifier"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="ITrigger" eSuperTypes="#//IModelElement"/>
+  <eClassifiers xsi:type="ecore:EClass" name="ITriggered" eSuperTypes="#//OperationsType #//M_pFormalMessageType #//ItemsType #//IModelElement">
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="id" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="name" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="Args" upperBound="-1" eType="#//IVariable"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="returnType" eType="#//IType"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="abstract" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="final" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="concurrency" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="protection" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="modifiedTimeWeak" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="myState" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="IType" eSuperTypes="#//IClassifier #//DeclarativesType #//DependsOnType #//M_subjectType #//ValueType #//TargetType #//M_pModelObjectType">
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="lastID" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="Literals" upperBound="-1"
+        eType="#//IEnumerationLiteral" containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="kind" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="properties" eType="#//IPropertyContainer"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="description" eType="#//IDescription"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="declaration" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="Stereotypes" eType="#//IUnit"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="Attrs" upperBound="-1"
+        eType="#//IAttribute" containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="AssociationElements" upperBound="-1"
+        eType="#//UnknownType"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="Tags" upperBound="-1" eType="#//ITag"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="typedefBaseType" eType="#//IUnit"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="typedefMultiplicity" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="typedefIsOrdered" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="typedefIsReference" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="typedefIsConstant" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="requiremenTracabilityHandle"
+        eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="codeUpdateCGTime" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="theMainDiagram" eType="#//IDiagram"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="IUCDiagram" eSuperTypes="#//TheMainDiagramType #//DependsOnType #//DeclarativesType">
+    <eStructuralFeatures xsi:type="ecore:EReference" name="properties" eType="#//IPropertyContainer"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="graphicChart" eType="#//CGIClassChart"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="modifiedTimeWeak" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="IUnit" eSuperTypes="#//IModelElement"/>
+  <eClassifiers xsi:type="ecore:EClass" name="IUseCase" eSuperTypes="#//IClassifier #//DependsOnType #//End2_Type #//TargetType">
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="id" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="myState" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="name" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="theMainDiagram" eType="#//TheMainDiagramType"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="HyperLinks" upperBound="-1"
+        eType="#//IMHyperLink" containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="weakCGTime" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="strongCGTime" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="classModifier" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="description" eType="#//IDescription"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="Inheritances" upperBound="-1"
+        eType="#//IGeneralization" containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="Associations" upperBound="-1"
+        eType="#//AssociationsType" containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="UseCaseStereoTypes" upperBound="-1"
+        eType="#//IUseCaseStereoType" containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="EntryPoints" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="Dependencies" upperBound="-1"
+        eType="#//IDependency" containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="lastID" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="Diagrams" upperBound="-1"
+        eType="#//DeclarativesType"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="modifiedTimeWeak" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="requiremenTracabilityHandle"
+        eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="cmheader" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="ownerHandle" eType="#//ISubsystem"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="Declaratives" upperBound="-1"
+        eType="#//DependsOnType" containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="Operations" upperBound="-1"
+        eType="#//OperationsType" containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="StateCharts" upperBound="-1"
+        eType="#//IActivityGraph" containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="itsStateChart" eType="#//NestedStateChartType"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="Attrs" upperBound="-1"
+        eType="#//IAttribute" containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="Annotations" upperBound="-1"
+        eType="#//IAnnotation" containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="EmbededFiles" eType="#//IEmbededFile"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="objectCreation" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="umlDependencyID" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="ObjectLinks" upperBound="-1"
+        eType="#//IObjectLink" containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="properties" eType="#//IPropertyContainer"
+        containment="true"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="IUseCaseDiagram" eSuperTypes="#//IDiagram"/>
+  <eClassifiers xsi:type="ecore:EClass" name="IUseCaseStereoType">
+    <eStructuralFeatures xsi:type="ecore:EReference" name="useCase" eType="#//IUseCase"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="stereoType" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="entryPoint" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="IValueSpecification" eSuperTypes="#//IModelElement"/>
+  <eClassifiers xsi:type="ecore:EClass" name="IVariable" eSuperTypes="#//IUnit">
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="isOrdered" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="myTypeOf" eType="#//IType"
+        containment="true"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="InverseType" abstract="true"/>
+  <eClassifiers xsi:type="ecore:EClass" name="ItemsType" abstract="true"/>
+  <eClassifiers xsi:type="ecore:EClass" name="ItsLabelType" abstract="true"/>
+  <eClassifiers xsi:type="ecore:EClass" name="ItsStateChartType" abstract="true"/>
+  <eClassifiers xsi:type="ecore:EClass" name="ItsTargetType" abstract="true"/>
+  <eClassifiers xsi:type="ecore:EClass" name="ItsTriggerType" abstract="true">
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="modifiedTimeWeak" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="id" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="info" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="umlDependencyID" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="myState" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="objectCreation" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="body" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="LinksType" abstract="true">
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="id" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="multiplicity" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="name" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="otherClass" eType="#//IClassHandle"
+        containment="true"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="M_hTargetType" abstract="true">
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="requiremenTracabilityHandle"
+        eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="description" eType="#//IDescription"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="properties" eType="#//IPropertyContainer"
+        containment="true"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="M_pBaseType" abstract="true" eSuperTypes="#//M_pModelObjectType"/>
+  <eClassifiers xsi:type="ecore:EClass" name="M_pFormalMessageType" abstract="true"/>
+  <eClassifiers xsi:type="ecore:EClass" name="M_pModelObjectType" abstract="true"/>
+  <eClassifiers xsi:type="ecore:EClass" name="M_pRootType" abstract="true"/>
+  <eClassifiers xsi:type="ecore:EClass" name="M_subjectType" abstract="true">
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="umlDependencyID" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="objectCreation" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="MatrixInstancesType" abstract="true"/>
+  <eClassifiers xsi:type="ecore:EClass" name="NestedStateChartType" abstract="true"
+      eSuperTypes="#//ItsStateChartType">
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="defNumber" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="graphicChart" eType="#//CGIStateChart"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="lastModifiedTime" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="Transitions" upperBound="-1"
+        eType="#//TransitionsType" containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="Connectors" upperBound="-1"
+        eType="#//ItsTargetType" containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="version" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="ObjectLinksType" abstract="true"/>
+  <eClassifiers xsi:type="ecore:EClass" name="OperationsType" abstract="true">
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="virtual" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="OwnerHandleType" abstract="true" eSuperTypes="#//DefaultSubsystemType">
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="weakCGTime" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="strongCGTime" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="P_MessageHandlerType" abstract="true"/>
+  <eClassifiers xsi:type="ecore:EClass" name="ParentType" abstract="true"/>
+  <eClassifiers xsi:type="ecore:EClass" name="PropertiesType" abstract="true"/>
+  <eClassifiers xsi:type="ecore:EClass" name="TableDataDefinition">
+    <eStructuralFeatures xsi:type="ecore:EReference" name="myTable" eType="#//IModelElement"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="name" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="DataType" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="columnName" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="modelElement" eType="#//IUnit"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="TableInstancesType" abstract="true"/>
+  <eClassifiers xsi:type="ecore:EClass" name="TargetType" abstract="true"/>
+  <eClassifiers xsi:type="ecore:EClass" name="TheMainDiagramType" abstract="true"
+      eSuperTypes="#//M_pModelObjectType">
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="id" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="lastModifiedTime" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="requiremenTracabilityHandle"
+        eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="defaultSubsystem" eType="#//DefaultSubsystemType"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="description" eType="#//IDescription"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="umlDependencyID" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="lastID" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="myState" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="ownerHandle" eType="#//OwnerHandleType"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="objectCreation" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="name" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="cmheader" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="ToLinkType" abstract="true" eSuperTypes="#//FromLinkType">
+    <eStructuralFeatures xsi:type="ecore:EReference" name="implicitClass" eType="#//IClass"
+        containment="true"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="TransitionsType" abstract="true">
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="modifiedTimeWeak" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="staticReaction" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="itsTarget" eType="#//ItsTargetType"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="id" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="codeUpdateCGTime" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="requiremenTracabilityHandle"
+        eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="description" eType="#//IDescription"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="itsLabel" eType="#//ItsLabelType"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="umlDependencyID" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="myState" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="objectCreation" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="name" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="UnknownType"/>
+  <eClassifiers xsi:type="ecore:EClass" name="ValueType" abstract="true">
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="modifiedTimeWeak" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="id" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="myState" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="name" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+  </eClassifiers>
+</ecore:EPackage>
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/util/UMLRpyAdapterFactory.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/util/UMLRpyAdapterFactory.java
new file mode 100755
index 0000000..8b1d96f
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/util/UMLRpyAdapterFactory.java
@@ -0,0 +1,4540 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.util;
+
+import org.eclipse.emf.common.notify.Adapter;
+import org.eclipse.emf.common.notify.Notifier;
+
+import org.eclipse.emf.common.notify.impl.AdapterFactoryImpl;
+import org.eclipse.emf.ecore.EModelElement;
+import org.eclipse.emf.ecore.EObject;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.*;
+
+/**
+ * <!-- begin-user-doc -->
+ * The <b>Adapter Factory</b> for the model.
+ * It provides an adapter <code>createXXX</code> method for each class of the model.
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage
+ * @generated
+ */
+public class UMLRpyAdapterFactory extends AdapterFactoryImpl {
+	/**
+	 * The cached model package.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected static UMLRpyPackage modelPackage;
+
+	/**
+	 * Creates an instance of the adapter factory.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public UMLRpyAdapterFactory() {
+		if (modelPackage == null) {
+			modelPackage = UMLRpyPackage.eINSTANCE;
+		}
+	}
+
+	/**
+	 * Returns whether this factory is applicable for the type of the object.
+	 * <!-- begin-user-doc -->
+	 * This implementation returns <code>true</code> if the object is either the model's package or is an instance object of the model.
+	 * <!-- end-user-doc -->
+	 * @return whether this factory is applicable for the type of the object.
+	 * @generated
+	 */
+	@Override
+	public boolean isFactoryForType(Object object) {
+		if (object == modelPackage) {
+			return true;
+		}
+		if (object instanceof EObject) {
+			return ((EObject)object).eClass().getEPackage() == modelPackage;
+		}
+		return false;
+	}
+
+	/**
+	 * The switch that delegates to the <code>createXXX</code> methods.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected UMLRpySwitch<Adapter> modelSwitch =
+		new UMLRpySwitch<Adapter>() {
+			@Override
+			public Adapter caseAssociationsType(AssociationsType object) {
+				return createAssociationsTypeAdapter();
+			}
+			@Override
+			public Adapter caseCCollaborationChart(CCollaborationChart object) {
+				return createCCollaborationChartAdapter();
+			}
+			@Override
+			public Adapter caseCGIActionState(CGIActionState object) {
+				return createCGIActionStateAdapter();
+			}
+			@Override
+			public Adapter caseCGIActiveX(CGIActiveX object) {
+				return createCGIActiveXAdapter();
+			}
+			@Override
+			public Adapter caseCGIAnchor(CGIAnchor object) {
+				return createCGIAnchorAdapter();
+			}
+			@Override
+			public Adapter caseCGIAnnotation(CGIAnnotation object) {
+				return createCGIAnnotationAdapter();
+			}
+			@Override
+			public Adapter caseCGIArrow(CGIArrow object) {
+				return createCGIArrowAdapter();
+			}
+			@Override
+			public Adapter caseCGIAssociationEnd(CGIAssociationEnd object) {
+				return createCGIAssociationEndAdapter();
+			}
+			@Override
+			public Adapter caseCGIAssociationRole(CGIAssociationRole object) {
+				return createCGIAssociationRoleAdapter();
+			}
+			@Override
+			public Adapter caseCGIBasicClass(CGIBasicClass object) {
+				return createCGIBasicClassAdapter();
+			}
+			@Override
+			public Adapter caseCGIBlockState(CGIBlockState object) {
+				return createCGIBlockStateAdapter();
+			}
+			@Override
+			public Adapter caseCGIBox(CGIBox object) {
+				return createCGIBoxAdapter();
+			}
+			@Override
+			public Adapter caseCGIButtonArray(CGIButtonArray object) {
+				return createCGIButtonArrayAdapter();
+			}
+			@Override
+			public Adapter caseCGIClass(CGIClass object) {
+				return createCGIClassAdapter();
+			}
+			@Override
+			public Adapter caseCGIClassChart(CGIClassChart object) {
+				return createCGIClassChartAdapter();
+			}
+			@Override
+			public Adapter caseCGIClassifierRole(CGIClassifierRole object) {
+				return createCGIClassifierRoleAdapter();
+			}
+			@Override
+			public Adapter caseCGICompartment(CGICompartment object) {
+				return createCGICompartmentAdapter();
+			}
+			@Override
+			public Adapter caseCGIComponent(CGIComponent object) {
+				return createCGIComponentAdapter();
+			}
+			@Override
+			public Adapter caseCGICompositeClass(CGICompositeClass object) {
+				return createCGICompositeClassAdapter();
+			}
+			@Override
+			public Adapter caseCGIConnector(CGIConnector object) {
+				return createCGIConnectorAdapter();
+			}
+			@Override
+			public Adapter caseCGIContainArrow(CGIContainArrow object) {
+				return createCGIContainArrowAdapter();
+			}
+			@Override
+			public Adapter caseCGIDiagramFrame(CGIDiagramFrame object) {
+				return createCGIDiagramFrameAdapter();
+			}
+			@Override
+			public Adapter caseCGIFreeShape(CGIFreeShape object) {
+				return createCGIFreeShapeAdapter();
+			}
+			@Override
+			public Adapter caseCGIFreeText(CGIFreeText object) {
+				return createCGIFreeTextAdapter();
+			}
+			@Override
+			public Adapter caseCGIGenericElement(CGIGenericElement object) {
+				return createCGIGenericElementAdapter();
+			}
+			@Override
+			public Adapter caseCGIImage(CGIImage object) {
+				return createCGIImageAdapter();
+			}
+			@Override
+			public Adapter caseCGIImageData(CGIImageData object) {
+				return createCGIImageDataAdapter();
+			}
+			@Override
+			public Adapter caseCGIInformationFlow(CGIInformationFlow object) {
+				return createCGIInformationFlowAdapter();
+			}
+			@Override
+			public Adapter caseCGIInheritance(CGIInheritance object) {
+				return createCGIInheritanceAdapter();
+			}
+			@Override
+			public Adapter caseCGIMFCCtrl(CGIMFCCtrl object) {
+				return createCGIMFCCtrlAdapter();
+			}
+			@Override
+			public Adapter caseCGIMessageLabel(CGIMessageLabel object) {
+				return createCGIMessageLabelAdapter();
+			}
+			@Override
+			public Adapter caseCGIMscChart(CGIMscChart object) {
+				return createCGIMscChartAdapter();
+			}
+			@Override
+			public Adapter caseCGIMscColumnCR(CGIMscColumnCR object) {
+				return createCGIMscColumnCRAdapter();
+			}
+			@Override
+			public Adapter caseCGIMscConditionMark(CGIMscConditionMark object) {
+				return createCGIMscConditionMarkAdapter();
+			}
+			@Override
+			public Adapter caseCGIMscExecutionOccurrence(CGIMscExecutionOccurrence object) {
+				return createCGIMscExecutionOccurrenceAdapter();
+			}
+			@Override
+			public Adapter caseCGIMscInteractionOccurrence(CGIMscInteractionOccurrence object) {
+				return createCGIMscInteractionOccurrenceAdapter();
+			}
+			@Override
+			public Adapter caseCGIMscInteractionOperand(CGIMscInteractionOperand object) {
+				return createCGIMscInteractionOperandAdapter();
+			}
+			@Override
+			public Adapter caseCGIMscInteractionOperator(CGIMscInteractionOperator object) {
+				return createCGIMscInteractionOperatorAdapter();
+			}
+			@Override
+			public Adapter caseCGIMscMessage(CGIMscMessage object) {
+				return createCGIMscMessageAdapter();
+			}
+			@Override
+			public Adapter caseCGIObjectInstance(CGIObjectInstance object) {
+				return createCGIObjectInstanceAdapter();
+			}
+			@Override
+			public Adapter caseCGIObjectLink(CGIObjectLink object) {
+				return createCGIObjectLinkAdapter();
+			}
+			@Override
+			public Adapter caseCGIPackage(CGIPackage object) {
+				return createCGIPackageAdapter();
+			}
+			@Override
+			public Adapter caseCGIPartition(CGIPartition object) {
+				return createCGIPartitionAdapter();
+			}
+			@Override
+			public Adapter caseCGIPortConnector(CGIPortConnector object) {
+				return createCGIPortConnectorAdapter();
+			}
+			@Override
+			public Adapter caseCGIState(CGIState object) {
+				return createCGIStateAdapter();
+			}
+			@Override
+			public Adapter caseCGIStateChart(CGIStateChart object) {
+				return createCGIStateChartAdapter();
+			}
+			@Override
+			public Adapter caseCGISwimlaneFrame(CGISwimlaneFrame object) {
+				return createCGISwimlaneFrameAdapter();
+			}
+			@Override
+			public Adapter caseCGIText(CGIText object) {
+				return createCGITextAdapter();
+			}
+			@Override
+			public Adapter caseCGITextBox(CGITextBox object) {
+				return createCGITextBoxAdapter();
+			}
+			@Override
+			public Adapter caseCGITrans(CGITrans object) {
+				return createCGITransAdapter();
+			}
+			@Override
+			public Adapter caseCollEvent(CollEvent object) {
+				return createCollEventAdapter();
+			}
+			@Override
+			public Adapter caseCompartmentsType(CompartmentsType object) {
+				return createCompartmentsTypeAdapter();
+			}
+			@Override
+			public Adapter caseComponentsType(ComponentsType object) {
+				return createComponentsTypeAdapter();
+			}
+			@Override
+			public Adapter caseConveyedType(ConveyedType object) {
+				return createConveyedTypeAdapter();
+			}
+			@Override
+			public Adapter caseDeclarativesType(DeclarativesType object) {
+				return createDeclarativesTypeAdapter();
+			}
+			@Override
+			public Adapter caseDefaultSubsystemType(DefaultSubsystemType object) {
+				return createDefaultSubsystemTypeAdapter();
+			}
+			@Override
+			public Adapter caseDefaultTransType(DefaultTransType object) {
+				return createDefaultTransTypeAdapter();
+			}
+			@Override
+			public Adapter caseDependsOnType(DependsOnType object) {
+				return createDependsOnTypeAdapter();
+			}
+			@Override
+			public Adapter caseDescriptionType(DescriptionType object) {
+				return createDescriptionTypeAdapter();
+			}
+			@Override
+			public Adapter caseElementsType(ElementsType object) {
+				return createElementsTypeAdapter();
+			}
+			@Override
+			public Adapter caseEmbededFilesType(EmbededFilesType object) {
+				return createEmbededFilesTypeAdapter();
+			}
+			@Override
+			public Adapter caseEnd1_Type(End1_Type object) {
+				return createEnd1_TypeAdapter();
+			}
+			@Override
+			public Adapter caseEnd2_Type(End2_Type object) {
+				return createEnd2_TypeAdapter();
+			}
+			@Override
+			public Adapter caseFilesType(FilesType object) {
+				return createFilesTypeAdapter();
+			}
+			@Override
+			public Adapter caseFromLinkType(FromLinkType object) {
+				return createFromLinkTypeAdapter();
+			}
+			@Override
+			public Adapter caseGraphElementsType(GraphElementsType object) {
+				return createGraphElementsTypeAdapter();
+			}
+			@Override
+			public Adapter caseGraphicChartType(GraphicChartType object) {
+				return createGraphicChartTypeAdapter();
+			}
+			@Override
+			public Adapter caseHyperLinksType(HyperLinksType object) {
+				return createHyperLinksTypeAdapter();
+			}
+			@Override
+			public Adapter caseIAcceptEventAction(IAcceptEventAction object) {
+				return createIAcceptEventActionAdapter();
+			}
+			@Override
+			public Adapter caseIAcceptTimeEvent(IAcceptTimeEvent object) {
+				return createIAcceptTimeEventAdapter();
+			}
+			@Override
+			public Adapter caseIAction(IAction object) {
+				return createIActionAdapter();
+			}
+			@Override
+			public Adapter caseIActivityDiagram(IActivityDiagram object) {
+				return createIActivityDiagramAdapter();
+			}
+			@Override
+			public Adapter caseIActivityGraph(IActivityGraph object) {
+				return createIActivityGraphAdapter();
+			}
+			@Override
+			public Adapter caseIActor(IActor object) {
+				return createIActorAdapter();
+			}
+			@Override
+			public Adapter caseIAnchor(IAnchor object) {
+				return createIAnchorAdapter();
+			}
+			@Override
+			public Adapter caseIAnnotation(IAnnotation object) {
+				return createIAnnotationAdapter();
+			}
+			@Override
+			public Adapter caseIArgument(IArgument object) {
+				return createIArgumentAdapter();
+			}
+			@Override
+			public Adapter caseIAssociationClass(IAssociationClass object) {
+				return createIAssociationClassAdapter();
+			}
+			@Override
+			public Adapter caseIAssociationEnd(IAssociationEnd object) {
+				return createIAssociationEndAdapter();
+			}
+			@Override
+			public Adapter caseIAssociationEndHandle(IAssociationEndHandle object) {
+				return createIAssociationEndHandleAdapter();
+			}
+			@Override
+			public Adapter caseIAssociationRole(IAssociationRole object) {
+				return createIAssociationRoleAdapter();
+			}
+			@Override
+			public Adapter caseIAttribute(IAttribute object) {
+				return createIAttributeAdapter();
+			}
+			@Override
+			public Adapter caseIBlock(IBlock object) {
+				return createIBlockAdapter();
+			}
+			@Override
+			public Adapter caseIBody(IBody object) {
+				return createIBodyAdapter();
+			}
+			@Override
+			public Adapter caseIBranch(IBranch object) {
+				return createIBranchAdapter();
+			}
+			@Override
+			public Adapter caseICallAction(ICallAction object) {
+				return createICallActionAdapter();
+			}
+			@Override
+			public Adapter caseICallOperation(ICallOperation object) {
+				return createICallOperationAdapter();
+			}
+			@Override
+			public Adapter caseIClass(IClass object) {
+				return createIClassAdapter();
+			}
+			@Override
+			public Adapter caseIClassHandle(IClassHandle object) {
+				return createIClassHandleAdapter();
+			}
+			@Override
+			public Adapter caseIClassInstance(IClassInstance object) {
+				return createIClassInstanceAdapter();
+			}
+			@Override
+			public Adapter caseIClassifier(IClassifier object) {
+				return createIClassifierAdapter();
+			}
+			@Override
+			public Adapter caseIClassifierRole(IClassifierRole object) {
+				return createIClassifierRoleAdapter();
+			}
+			@Override
+			public Adapter caseICodeGenConfigInfo(ICodeGenConfigInfo object) {
+				return createICodeGenConfigInfoAdapter();
+			}
+			@Override
+			public Adapter caseICodeGenConfigInfoHandle(ICodeGenConfigInfoHandle object) {
+				return createICodeGenConfigInfoHandleAdapter();
+			}
+			@Override
+			public Adapter caseICollaboration(ICollaboration object) {
+				return createICollaborationAdapter();
+			}
+			@Override
+			public Adapter caseICollaborationDiagram(ICollaborationDiagram object) {
+				return createICollaborationDiagramAdapter();
+			}
+			@Override
+			public Adapter caseIColor(IColor object) {
+				return createIColorAdapter();
+			}
+			@Override
+			public Adapter caseICombinedFragment(ICombinedFragment object) {
+				return createICombinedFragmentAdapter();
+			}
+			@Override
+			public Adapter caseIComment(IComment object) {
+				return createICommentAdapter();
+			}
+			@Override
+			public Adapter caseIComponent(IComponent object) {
+				return createIComponentAdapter();
+			}
+			@Override
+			public Adapter caseIComponentDiagram(IComponentDiagram object) {
+				return createIComponentDiagramAdapter();
+			}
+			@Override
+			public Adapter caseIComponentInstance(IComponentInstance object) {
+				return createIComponentInstanceAdapter();
+			}
+			@Override
+			public Adapter caseIConfiguration(IConfiguration object) {
+				return createIConfigurationAdapter();
+			}
+			@Override
+			public Adapter caseIConnector(IConnector object) {
+				return createIConnectorAdapter();
+			}
+			@Override
+			public Adapter caseIConstraint(IConstraint object) {
+				return createIConstraintAdapter();
+			}
+			@Override
+			public Adapter caseIConstructor(IConstructor object) {
+				return createIConstructorAdapter();
+			}
+			@Override
+			public Adapter caseIContextSpecification(IContextSpecification object) {
+				return createIContextSpecificationAdapter();
+			}
+			@Override
+			public Adapter caseIControlledFile(IControlledFile object) {
+				return createIControlledFileAdapter();
+			}
+			@Override
+			public Adapter caseIDefaultDrvdTrans(IDefaultDrvdTrans object) {
+				return createIDefaultDrvdTransAdapter();
+			}
+			@Override
+			public Adapter caseIDependency(IDependency object) {
+				return createIDependencyAdapter();
+			}
+			@Override
+			public Adapter caseIDeploymentDiagram(IDeploymentDiagram object) {
+				return createIDeploymentDiagramAdapter();
+			}
+			@Override
+			public Adapter caseIDescription(IDescription object) {
+				return createIDescriptionAdapter();
+			}
+			@Override
+			public Adapter caseIDestructor(IDestructor object) {
+				return createIDestructorAdapter();
+			}
+			@Override
+			public Adapter caseIDiagram(IDiagram object) {
+				return createIDiagramAdapter();
+			}
+			@Override
+			public Adapter caseIEmbededFile(IEmbededFile object) {
+				return createIEmbededFileAdapter();
+			}
+			@Override
+			public Adapter caseIEnumerationLiteral(IEnumerationLiteral object) {
+				return createIEnumerationLiteralAdapter();
+			}
+			@Override
+			public Adapter caseIEvent(IEvent object) {
+				return createIEventAdapter();
+			}
+			@Override
+			public Adapter caseIEventHandle(IEventHandle object) {
+				return createIEventHandleAdapter();
+			}
+			@Override
+			public Adapter caseIEventReception(IEventReception object) {
+				return createIEventReceptionAdapter();
+			}
+			@Override
+			public Adapter caseIExecutionOccurrence(IExecutionOccurrence object) {
+				return createIExecutionOccurrenceAdapter();
+			}
+			@Override
+			public Adapter caseIExternalHyperlink(IExternalHyperlink object) {
+				return createIExternalHyperlinkAdapter();
+			}
+			@Override
+			public Adapter caseIFile(IFile object) {
+				return createIFileAdapter();
+			}
+			@Override
+			public Adapter caseIFileFragment(IFileFragment object) {
+				return createIFileFragmentAdapter();
+			}
+			@Override
+			public Adapter caseIFlow(IFlow object) {
+				return createIFlowAdapter();
+			}
+			@Override
+			public Adapter caseIFlowItem(IFlowItem object) {
+				return createIFlowItemAdapter();
+			}
+			@Override
+			public Adapter caseIFlowchart(IFlowchart object) {
+				return createIFlowchartAdapter();
+			}
+			@Override
+			public Adapter caseIFolder(IFolder object) {
+				return createIFolderAdapter();
+			}
+			@Override
+			public Adapter caseIFork(IFork object) {
+				return createIForkAdapter();
+			}
+			@Override
+			public Adapter caseIGeneralization(IGeneralization object) {
+				return createIGeneralizationAdapter();
+			}
+			@Override
+			public Adapter caseIGuard(IGuard object) {
+				return createIGuardAdapter();
+			}
+			@Override
+			public Adapter caseIHandleWithData(IHandleWithData object) {
+				return createIHandleWithDataAdapter();
+			}
+			@Override
+			public Adapter caseIHistoryConnector(IHistoryConnector object) {
+				return createIHistoryConnectorAdapter();
+			}
+			@Override
+			public Adapter caseIHyperLink(IHyperLink object) {
+				return createIHyperLinkAdapter();
+			}
+			@Override
+			public Adapter caseIInformationFlow(IInformationFlow object) {
+				return createIInformationFlowAdapter();
+			}
+			@Override
+			public Adapter caseIInformationItem(IInformationItem object) {
+				return createIInformationItemAdapter();
+			}
+			@Override
+			public Adapter caseIInstance(IInstance object) {
+				return createIInstanceAdapter();
+			}
+			@Override
+			public Adapter caseIInstanceSlot(IInstanceSlot object) {
+				return createIInstanceSlotAdapter();
+			}
+			@Override
+			public Adapter caseIInstanceSpecification(IInstanceSpecification object) {
+				return createIInstanceSpecificationAdapter();
+			}
+			@Override
+			public Adapter caseIInstanceValue(IInstanceValue object) {
+				return createIInstanceValueAdapter();
+			}
+			@Override
+			public Adapter caseIInteractionOccurrence(IInteractionOccurrence object) {
+				return createIInteractionOccurrenceAdapter();
+			}
+			@Override
+			public Adapter caseIInteractionOperand(IInteractionOperand object) {
+				return createIInteractionOperandAdapter();
+			}
+			@Override
+			public Adapter caseIInteractionOperator(IInteractionOperator object) {
+				return createIInteractionOperatorAdapter();
+			}
+			@Override
+			public Adapter caseIInterfaceItem(IInterfaceItem object) {
+				return createIInterfaceItemAdapter();
+			}
+			@Override
+			public Adapter caseIInterfaceItemTrigger(IInterfaceItemTrigger object) {
+				return createIInterfaceItemTriggerAdapter();
+			}
+			@Override
+			public Adapter caseIInternalHyperlink(IInternalHyperlink object) {
+				return createIInternalHyperlinkAdapter();
+			}
+			@Override
+			public Adapter caseILabel(ILabel object) {
+				return createILabelAdapter();
+			}
+			@Override
+			public Adapter caseILink(ILink object) {
+				return createILinkAdapter();
+			}
+			@Override
+			public Adapter caseILinkInstance(ILinkInstance object) {
+				return createILinkInstanceAdapter();
+			}
+			@Override
+			public Adapter caseILiteralSpecification(ILiteralSpecification object) {
+				return createILiteralSpecificationAdapter();
+			}
+			@Override
+			public Adapter caseIMHyperLink(IMHyperLink object) {
+				return createIMHyperLinkAdapter();
+			}
+			@Override
+			public Adapter caseIMSC(IMSC object) {
+				return createIMSCAdapter();
+			}
+			@Override
+			public Adapter caseIMatrixInstance(IMatrixInstance object) {
+				return createIMatrixInstanceAdapter();
+			}
+			@Override
+			public Adapter caseIMatrixLayout(IMatrixLayout object) {
+				return createIMatrixLayoutAdapter();
+			}
+			@Override
+			public Adapter caseIMatrixView(IMatrixView object) {
+				return createIMatrixViewAdapter();
+			}
+			@Override
+			public Adapter caseIMessage(IMessage object) {
+				return createIMessageAdapter();
+			}
+			@Override
+			public Adapter caseIMessagePoint(IMessagePoint object) {
+				return createIMessagePointAdapter();
+			}
+			@Override
+			public Adapter caseIMetaLinkHandle(IMetaLinkHandle object) {
+				return createIMetaLinkHandleAdapter();
+			}
+			@Override
+			public Adapter caseIModelElement(IModelElement object) {
+				return createIModelElementAdapter();
+			}
+			@Override
+			public Adapter caseIModule(IModule object) {
+				return createIModuleAdapter();
+			}
+			@Override
+			public Adapter caseIMultiplicityItem(IMultiplicityItem object) {
+				return createIMultiplicityItemAdapter();
+			}
+			@Override
+			public Adapter caseINode(INode object) {
+				return createINodeAdapter();
+			}
+			@Override
+			public Adapter caseIObjectLink(IObjectLink object) {
+				return createIObjectLinkAdapter();
+			}
+			@Override
+			public Adapter caseIObjectLinkHandle(IObjectLinkHandle object) {
+				return createIObjectLinkHandleAdapter();
+			}
+			@Override
+			public Adapter caseIObjectModelDiagram(IObjectModelDiagram object) {
+				return createIObjectModelDiagramAdapter();
+			}
+			@Override
+			public Adapter caseIObjectNode(IObjectNode object) {
+				return createIObjectNodeAdapter();
+			}
+			@Override
+			public Adapter caseIOperation(IOperation object) {
+				return createIOperationAdapter();
+			}
+			@Override
+			public Adapter caseIPackage(IPackage object) {
+				return createIPackageAdapter();
+			}
+			@Override
+			public Adapter caseIPanelDiagram(IPanelDiagram object) {
+				return createIPanelDiagramAdapter();
+			}
+			@Override
+			public Adapter caseIPart(IPart object) {
+				return createIPartAdapter();
+			}
+			@Override
+			public Adapter caseIPin(IPin object) {
+				return createIPinAdapter();
+			}
+			@Override
+			public Adapter caseIPort(IPort object) {
+				return createIPortAdapter();
+			}
+			@Override
+			public Adapter caseIPrimitiveOperation(IPrimitiveOperation object) {
+				return createIPrimitiveOperationAdapter();
+			}
+			@Override
+			public Adapter caseIProfile(IProfile object) {
+				return createIProfileAdapter();
+			}
+			@Override
+			public Adapter caseIProject(IProject object) {
+				return createIProjectAdapter();
+			}
+			@Override
+			public Adapter caseIProperty(IProperty object) {
+				return createIPropertyAdapter();
+			}
+			@Override
+			public Adapter caseIPropertyContainer(IPropertyContainer object) {
+				return createIPropertyContainerAdapter();
+			}
+			@Override
+			public Adapter caseIPropertyMetaclass(IPropertyMetaclass object) {
+				return createIPropertyMetaclassAdapter();
+			}
+			@Override
+			public Adapter caseIPropertySubject(IPropertySubject object) {
+				return createIPropertySubjectAdapter();
+			}
+			@Override
+			public Adapter caseIReception(IReception object) {
+				return createIReceptionAdapter();
+			}
+			@Override
+			public Adapter caseIReferenceActivity(IReferenceActivity object) {
+				return createIReferenceActivityAdapter();
+			}
+			@Override
+			public Adapter caseIRelation(IRelation object) {
+				return createIRelationAdapter();
+			}
+			@Override
+			public Adapter caseIRequirement(IRequirement object) {
+				return createIRequirementAdapter();
+			}
+			@Override
+			public Adapter caseISendAction(ISendAction object) {
+				return createISendActionAdapter();
+			}
+			@Override
+			public Adapter caseISequenceDiagram(ISequenceDiagram object) {
+				return createISequenceDiagramAdapter();
+			}
+			@Override
+			public Adapter caseISlot(ISlot object) {
+				return createISlotAdapter();
+			}
+			@Override
+			public Adapter caseIState(IState object) {
+				return createIStateAdapter();
+			}
+			@Override
+			public Adapter caseIStateChart(IStateChart object) {
+				return createIStateChartAdapter();
+			}
+			@Override
+			public Adapter caseIStateChartDiagram(IStateChartDiagram object) {
+				return createIStateChartDiagramAdapter();
+			}
+			@Override
+			public Adapter caseIStateVertex(IStateVertex object) {
+				return createIStateVertexAdapter();
+			}
+			@Override
+			public Adapter caseIStereotype(IStereotype object) {
+				return createIStereotypeAdapter();
+			}
+			@Override
+			public Adapter caseIStructureDiagram(IStructureDiagram object) {
+				return createIStructureDiagramAdapter();
+			}
+			@Override
+			public Adapter caseISubsystem(ISubsystem object) {
+				return createISubsystemAdapter();
+			}
+			@Override
+			public Adapter caseISwimlane(ISwimlane object) {
+				return createISwimlaneAdapter();
+			}
+			@Override
+			public Adapter caseISysMLPort(ISysMLPort object) {
+				return createISysMLPortAdapter();
+			}
+			@Override
+			public Adapter caseITableInstance(ITableInstance object) {
+				return createITableInstanceAdapter();
+			}
+			@Override
+			public Adapter caseITableLayout(ITableLayout object) {
+				return createITableLayoutAdapter();
+			}
+			@Override
+			public Adapter caseITableView(ITableView object) {
+				return createITableViewAdapter();
+			}
+			@Override
+			public Adapter caseITag(ITag object) {
+				return createITagAdapter();
+			}
+			@Override
+			public Adapter caseITemplateInst(ITemplateInst object) {
+				return createITemplateInstAdapter();
+			}
+			@Override
+			public Adapter caseITemplateInstParam(ITemplateInstParam object) {
+				return createITemplateInstParamAdapter();
+			}
+			@Override
+			public Adapter caseITemplateInstantiation(ITemplateInstantiation object) {
+				return createITemplateInstantiationAdapter();
+			}
+			@Override
+			public Adapter caseITemplateInstantiationParameter(ITemplateInstantiationParameter object) {
+				return createITemplateInstantiationParameterAdapter();
+			}
+			@Override
+			public Adapter caseITemplateParameter(ITemplateParameter object) {
+				return createITemplateParameterAdapter();
+			}
+			@Override
+			public Adapter caseITimeEvent(ITimeEvent object) {
+				return createITimeEventAdapter();
+			}
+			@Override
+			public Adapter caseITimeout(ITimeout object) {
+				return createITimeoutAdapter();
+			}
+			@Override
+			public Adapter caseITransition(ITransition object) {
+				return createITransitionAdapter();
+			}
+			@Override
+			public Adapter caseITrigger(ITrigger object) {
+				return createITriggerAdapter();
+			}
+			@Override
+			public Adapter caseITriggered(ITriggered object) {
+				return createITriggeredAdapter();
+			}
+			@Override
+			public Adapter caseIType(IType object) {
+				return createITypeAdapter();
+			}
+			@Override
+			public Adapter caseIUCDiagram(IUCDiagram object) {
+				return createIUCDiagramAdapter();
+			}
+			@Override
+			public Adapter caseIUnit(IUnit object) {
+				return createIUnitAdapter();
+			}
+			@Override
+			public Adapter caseIUseCase(IUseCase object) {
+				return createIUseCaseAdapter();
+			}
+			@Override
+			public Adapter caseIUseCaseDiagram(IUseCaseDiagram object) {
+				return createIUseCaseDiagramAdapter();
+			}
+			@Override
+			public Adapter caseIUseCaseStereoType(IUseCaseStereoType object) {
+				return createIUseCaseStereoTypeAdapter();
+			}
+			@Override
+			public Adapter caseIValueSpecification(IValueSpecification object) {
+				return createIValueSpecificationAdapter();
+			}
+			@Override
+			public Adapter caseIVariable(IVariable object) {
+				return createIVariableAdapter();
+			}
+			@Override
+			public Adapter caseInverseType(InverseType object) {
+				return createInverseTypeAdapter();
+			}
+			@Override
+			public Adapter caseItemsType(ItemsType object) {
+				return createItemsTypeAdapter();
+			}
+			@Override
+			public Adapter caseItsLabelType(ItsLabelType object) {
+				return createItsLabelTypeAdapter();
+			}
+			@Override
+			public Adapter caseItsStateChartType(ItsStateChartType object) {
+				return createItsStateChartTypeAdapter();
+			}
+			@Override
+			public Adapter caseItsTargetType(ItsTargetType object) {
+				return createItsTargetTypeAdapter();
+			}
+			@Override
+			public Adapter caseItsTriggerType(ItsTriggerType object) {
+				return createItsTriggerTypeAdapter();
+			}
+			@Override
+			public Adapter caseLinksType(LinksType object) {
+				return createLinksTypeAdapter();
+			}
+			@Override
+			public Adapter caseM_hTargetType(M_hTargetType object) {
+				return createM_hTargetTypeAdapter();
+			}
+			@Override
+			public Adapter caseM_pBaseType(M_pBaseType object) {
+				return createM_pBaseTypeAdapter();
+			}
+			@Override
+			public Adapter caseM_pFormalMessageType(M_pFormalMessageType object) {
+				return createM_pFormalMessageTypeAdapter();
+			}
+			@Override
+			public Adapter caseM_pModelObjectType(M_pModelObjectType object) {
+				return createM_pModelObjectTypeAdapter();
+			}
+			@Override
+			public Adapter caseM_pRootType(M_pRootType object) {
+				return createM_pRootTypeAdapter();
+			}
+			@Override
+			public Adapter caseM_subjectType(M_subjectType object) {
+				return createM_subjectTypeAdapter();
+			}
+			@Override
+			public Adapter caseMatrixInstancesType(MatrixInstancesType object) {
+				return createMatrixInstancesTypeAdapter();
+			}
+			@Override
+			public Adapter caseNestedStateChartType(NestedStateChartType object) {
+				return createNestedStateChartTypeAdapter();
+			}
+			@Override
+			public Adapter caseObjectLinksType(ObjectLinksType object) {
+				return createObjectLinksTypeAdapter();
+			}
+			@Override
+			public Adapter caseOperationsType(OperationsType object) {
+				return createOperationsTypeAdapter();
+			}
+			@Override
+			public Adapter caseOwnerHandleType(OwnerHandleType object) {
+				return createOwnerHandleTypeAdapter();
+			}
+			@Override
+			public Adapter caseP_MessageHandlerType(P_MessageHandlerType object) {
+				return createP_MessageHandlerTypeAdapter();
+			}
+			@Override
+			public Adapter caseParentType(ParentType object) {
+				return createParentTypeAdapter();
+			}
+			@Override
+			public Adapter casePropertiesType(PropertiesType object) {
+				return createPropertiesTypeAdapter();
+			}
+			@Override
+			public Adapter caseTableDataDefinition(TableDataDefinition object) {
+				return createTableDataDefinitionAdapter();
+			}
+			@Override
+			public Adapter caseTableInstancesType(TableInstancesType object) {
+				return createTableInstancesTypeAdapter();
+			}
+			@Override
+			public Adapter caseTargetType(TargetType object) {
+				return createTargetTypeAdapter();
+			}
+			@Override
+			public Adapter caseTheMainDiagramType(TheMainDiagramType object) {
+				return createTheMainDiagramTypeAdapter();
+			}
+			@Override
+			public Adapter caseToLinkType(ToLinkType object) {
+				return createToLinkTypeAdapter();
+			}
+			@Override
+			public Adapter caseTransitionsType(TransitionsType object) {
+				return createTransitionsTypeAdapter();
+			}
+			@Override
+			public Adapter caseUnknownType(UnknownType object) {
+				return createUnknownTypeAdapter();
+			}
+			@Override
+			public Adapter caseValueType(ValueType object) {
+				return createValueTypeAdapter();
+			}
+			@Override
+			public Adapter caseEModelElement(EModelElement object) {
+				return createEModelElementAdapter();
+			}
+			@Override
+			public Adapter defaultCase(EObject object) {
+				return createEObjectAdapter();
+			}
+		};
+
+	/**
+	 * Creates an adapter for the <code>target</code>.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param target the object to adapt.
+	 * @return the adapter for the <code>target</code>.
+	 * @generated
+	 */
+	@Override
+	public Adapter createAdapter(Notifier target) {
+		return modelSwitch.doSwitch((EObject)target);
+	}
+
+
+	/**
+	 * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.AssociationsType <em>Associations Type</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.interoperability.rpy.rpymetamodel.AssociationsType
+	 * @generated
+	 */
+	public Adapter createAssociationsTypeAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CCollaborationChart <em>CCollaboration Chart</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.interoperability.rpy.rpymetamodel.CCollaborationChart
+	 * @generated
+	 */
+	public Adapter createCCollaborationChartAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIActionState <em>CGI Action State</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.interoperability.rpy.rpymetamodel.CGIActionState
+	 * @generated
+	 */
+	public Adapter createCGIActionStateAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIActiveX <em>CGI Active X</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.interoperability.rpy.rpymetamodel.CGIActiveX
+	 * @generated
+	 */
+	public Adapter createCGIActiveXAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIAnchor <em>CGI Anchor</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.interoperability.rpy.rpymetamodel.CGIAnchor
+	 * @generated
+	 */
+	public Adapter createCGIAnchorAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIAnnotation <em>CGI Annotation</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.interoperability.rpy.rpymetamodel.CGIAnnotation
+	 * @generated
+	 */
+	public Adapter createCGIAnnotationAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIArrow <em>CGI Arrow</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.interoperability.rpy.rpymetamodel.CGIArrow
+	 * @generated
+	 */
+	public Adapter createCGIArrowAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIAssociationEnd <em>CGI Association End</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.interoperability.rpy.rpymetamodel.CGIAssociationEnd
+	 * @generated
+	 */
+	public Adapter createCGIAssociationEndAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIAssociationRole <em>CGI Association Role</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.interoperability.rpy.rpymetamodel.CGIAssociationRole
+	 * @generated
+	 */
+	public Adapter createCGIAssociationRoleAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIBasicClass <em>CGI Basic Class</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.interoperability.rpy.rpymetamodel.CGIBasicClass
+	 * @generated
+	 */
+	public Adapter createCGIBasicClassAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIBlockState <em>CGI Block State</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.interoperability.rpy.rpymetamodel.CGIBlockState
+	 * @generated
+	 */
+	public Adapter createCGIBlockStateAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIBox <em>CGI Box</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.interoperability.rpy.rpymetamodel.CGIBox
+	 * @generated
+	 */
+	public Adapter createCGIBoxAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIButtonArray <em>CGI Button Array</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.interoperability.rpy.rpymetamodel.CGIButtonArray
+	 * @generated
+	 */
+	public Adapter createCGIButtonArrayAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIClass <em>CGI Class</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.interoperability.rpy.rpymetamodel.CGIClass
+	 * @generated
+	 */
+	public Adapter createCGIClassAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIClassChart <em>CGI Class Chart</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.interoperability.rpy.rpymetamodel.CGIClassChart
+	 * @generated
+	 */
+	public Adapter createCGIClassChartAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIClassifierRole <em>CGI Classifier Role</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.interoperability.rpy.rpymetamodel.CGIClassifierRole
+	 * @generated
+	 */
+	public Adapter createCGIClassifierRoleAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGICompartment <em>CGI Compartment</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.interoperability.rpy.rpymetamodel.CGICompartment
+	 * @generated
+	 */
+	public Adapter createCGICompartmentAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIComponent <em>CGI Component</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.interoperability.rpy.rpymetamodel.CGIComponent
+	 * @generated
+	 */
+	public Adapter createCGIComponentAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGICompositeClass <em>CGI Composite Class</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.interoperability.rpy.rpymetamodel.CGICompositeClass
+	 * @generated
+	 */
+	public Adapter createCGICompositeClassAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIConnector <em>CGI Connector</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.interoperability.rpy.rpymetamodel.CGIConnector
+	 * @generated
+	 */
+	public Adapter createCGIConnectorAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIContainArrow <em>CGI Contain Arrow</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.interoperability.rpy.rpymetamodel.CGIContainArrow
+	 * @generated
+	 */
+	public Adapter createCGIContainArrowAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIDiagramFrame <em>CGI Diagram Frame</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.interoperability.rpy.rpymetamodel.CGIDiagramFrame
+	 * @generated
+	 */
+	public Adapter createCGIDiagramFrameAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIFreeShape <em>CGI Free Shape</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.interoperability.rpy.rpymetamodel.CGIFreeShape
+	 * @generated
+	 */
+	public Adapter createCGIFreeShapeAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIFreeText <em>CGI Free Text</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.interoperability.rpy.rpymetamodel.CGIFreeText
+	 * @generated
+	 */
+	public Adapter createCGIFreeTextAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIGenericElement <em>CGI Generic Element</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.interoperability.rpy.rpymetamodel.CGIGenericElement
+	 * @generated
+	 */
+	public Adapter createCGIGenericElementAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIImage <em>CGI Image</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.interoperability.rpy.rpymetamodel.CGIImage
+	 * @generated
+	 */
+	public Adapter createCGIImageAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIImageData <em>CGI Image Data</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.interoperability.rpy.rpymetamodel.CGIImageData
+	 * @generated
+	 */
+	public Adapter createCGIImageDataAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIInformationFlow <em>CGI Information Flow</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.interoperability.rpy.rpymetamodel.CGIInformationFlow
+	 * @generated
+	 */
+	public Adapter createCGIInformationFlowAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIInheritance <em>CGI Inheritance</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.interoperability.rpy.rpymetamodel.CGIInheritance
+	 * @generated
+	 */
+	public Adapter createCGIInheritanceAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMFCCtrl <em>CGIMFC Ctrl</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.interoperability.rpy.rpymetamodel.CGIMFCCtrl
+	 * @generated
+	 */
+	public Adapter createCGIMFCCtrlAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMessageLabel <em>CGI Message Label</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.interoperability.rpy.rpymetamodel.CGIMessageLabel
+	 * @generated
+	 */
+	public Adapter createCGIMessageLabelAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscChart <em>CGI Msc Chart</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.interoperability.rpy.rpymetamodel.CGIMscChart
+	 * @generated
+	 */
+	public Adapter createCGIMscChartAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscColumnCR <em>CGI Msc Column CR</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.interoperability.rpy.rpymetamodel.CGIMscColumnCR
+	 * @generated
+	 */
+	public Adapter createCGIMscColumnCRAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscConditionMark <em>CGI Msc Condition Mark</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.interoperability.rpy.rpymetamodel.CGIMscConditionMark
+	 * @generated
+	 */
+	public Adapter createCGIMscConditionMarkAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscExecutionOccurrence <em>CGI Msc Execution Occurrence</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.interoperability.rpy.rpymetamodel.CGIMscExecutionOccurrence
+	 * @generated
+	 */
+	public Adapter createCGIMscExecutionOccurrenceAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscInteractionOccurrence <em>CGI Msc Interaction Occurrence</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.interoperability.rpy.rpymetamodel.CGIMscInteractionOccurrence
+	 * @generated
+	 */
+	public Adapter createCGIMscInteractionOccurrenceAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscInteractionOperand <em>CGI Msc Interaction Operand</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.interoperability.rpy.rpymetamodel.CGIMscInteractionOperand
+	 * @generated
+	 */
+	public Adapter createCGIMscInteractionOperandAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscInteractionOperator <em>CGI Msc Interaction Operator</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.interoperability.rpy.rpymetamodel.CGIMscInteractionOperator
+	 * @generated
+	 */
+	public Adapter createCGIMscInteractionOperatorAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIMscMessage <em>CGI Msc Message</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.interoperability.rpy.rpymetamodel.CGIMscMessage
+	 * @generated
+	 */
+	public Adapter createCGIMscMessageAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIObjectInstance <em>CGI Object Instance</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.interoperability.rpy.rpymetamodel.CGIObjectInstance
+	 * @generated
+	 */
+	public Adapter createCGIObjectInstanceAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIObjectLink <em>CGI Object Link</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.interoperability.rpy.rpymetamodel.CGIObjectLink
+	 * @generated
+	 */
+	public Adapter createCGIObjectLinkAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIPackage <em>CGI Package</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.interoperability.rpy.rpymetamodel.CGIPackage
+	 * @generated
+	 */
+	public Adapter createCGIPackageAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIPartition <em>CGI Partition</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.interoperability.rpy.rpymetamodel.CGIPartition
+	 * @generated
+	 */
+	public Adapter createCGIPartitionAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIPortConnector <em>CGI Port Connector</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.interoperability.rpy.rpymetamodel.CGIPortConnector
+	 * @generated
+	 */
+	public Adapter createCGIPortConnectorAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIState <em>CGI State</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.interoperability.rpy.rpymetamodel.CGIState
+	 * @generated
+	 */
+	public Adapter createCGIStateAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIStateChart <em>CGI State Chart</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.interoperability.rpy.rpymetamodel.CGIStateChart
+	 * @generated
+	 */
+	public Adapter createCGIStateChartAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGISwimlaneFrame <em>CGI Swimlane Frame</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.interoperability.rpy.rpymetamodel.CGISwimlaneFrame
+	 * @generated
+	 */
+	public Adapter createCGISwimlaneFrameAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGIText <em>CGI Text</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.interoperability.rpy.rpymetamodel.CGIText
+	 * @generated
+	 */
+	public Adapter createCGITextAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGITextBox <em>CGI Text Box</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.interoperability.rpy.rpymetamodel.CGITextBox
+	 * @generated
+	 */
+	public Adapter createCGITextBoxAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CGITrans <em>CGI Trans</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.interoperability.rpy.rpymetamodel.CGITrans
+	 * @generated
+	 */
+	public Adapter createCGITransAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CollEvent <em>Coll Event</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.interoperability.rpy.rpymetamodel.CollEvent
+	 * @generated
+	 */
+	public Adapter createCollEventAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.CompartmentsType <em>Compartments Type</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.interoperability.rpy.rpymetamodel.CompartmentsType
+	 * @generated
+	 */
+	public Adapter createCompartmentsTypeAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ComponentsType <em>Components Type</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.interoperability.rpy.rpymetamodel.ComponentsType
+	 * @generated
+	 */
+	public Adapter createComponentsTypeAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ConveyedType <em>Conveyed Type</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.interoperability.rpy.rpymetamodel.ConveyedType
+	 * @generated
+	 */
+	public Adapter createConveyedTypeAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.DeclarativesType <em>Declaratives Type</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.interoperability.rpy.rpymetamodel.DeclarativesType
+	 * @generated
+	 */
+	public Adapter createDeclarativesTypeAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.DefaultSubsystemType <em>Default Subsystem Type</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.interoperability.rpy.rpymetamodel.DefaultSubsystemType
+	 * @generated
+	 */
+	public Adapter createDefaultSubsystemTypeAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.DefaultTransType <em>Default Trans Type</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.interoperability.rpy.rpymetamodel.DefaultTransType
+	 * @generated
+	 */
+	public Adapter createDefaultTransTypeAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.DependsOnType <em>Depends On Type</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.interoperability.rpy.rpymetamodel.DependsOnType
+	 * @generated
+	 */
+	public Adapter createDependsOnTypeAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.DescriptionType <em>Description Type</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.interoperability.rpy.rpymetamodel.DescriptionType
+	 * @generated
+	 */
+	public Adapter createDescriptionTypeAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ElementsType <em>Elements Type</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.interoperability.rpy.rpymetamodel.ElementsType
+	 * @generated
+	 */
+	public Adapter createElementsTypeAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.EmbededFilesType <em>Embeded Files Type</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.interoperability.rpy.rpymetamodel.EmbededFilesType
+	 * @generated
+	 */
+	public Adapter createEmbededFilesTypeAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.End1_Type <em>End1 Type</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.interoperability.rpy.rpymetamodel.End1_Type
+	 * @generated
+	 */
+	public Adapter createEnd1_TypeAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.End2_Type <em>End2 Type</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.interoperability.rpy.rpymetamodel.End2_Type
+	 * @generated
+	 */
+	public Adapter createEnd2_TypeAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.FilesType <em>Files Type</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.interoperability.rpy.rpymetamodel.FilesType
+	 * @generated
+	 */
+	public Adapter createFilesTypeAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.FromLinkType <em>From Link Type</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.interoperability.rpy.rpymetamodel.FromLinkType
+	 * @generated
+	 */
+	public Adapter createFromLinkTypeAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.GraphElementsType <em>Graph Elements Type</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.interoperability.rpy.rpymetamodel.GraphElementsType
+	 * @generated
+	 */
+	public Adapter createGraphElementsTypeAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.GraphicChartType <em>Graphic Chart Type</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.interoperability.rpy.rpymetamodel.GraphicChartType
+	 * @generated
+	 */
+	public Adapter createGraphicChartTypeAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.HyperLinksType <em>Hyper Links Type</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.interoperability.rpy.rpymetamodel.HyperLinksType
+	 * @generated
+	 */
+	public Adapter createHyperLinksTypeAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IAcceptEventAction <em>IAccept Event Action</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.interoperability.rpy.rpymetamodel.IAcceptEventAction
+	 * @generated
+	 */
+	public Adapter createIAcceptEventActionAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IAcceptTimeEvent <em>IAccept Time Event</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.interoperability.rpy.rpymetamodel.IAcceptTimeEvent
+	 * @generated
+	 */
+	public Adapter createIAcceptTimeEventAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IAction <em>IAction</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.interoperability.rpy.rpymetamodel.IAction
+	 * @generated
+	 */
+	public Adapter createIActionAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IActivityDiagram <em>IActivity Diagram</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.interoperability.rpy.rpymetamodel.IActivityDiagram
+	 * @generated
+	 */
+	public Adapter createIActivityDiagramAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IActivityGraph <em>IActivity Graph</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.interoperability.rpy.rpymetamodel.IActivityGraph
+	 * @generated
+	 */
+	public Adapter createIActivityGraphAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IActor <em>IActor</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.interoperability.rpy.rpymetamodel.IActor
+	 * @generated
+	 */
+	public Adapter createIActorAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IAnchor <em>IAnchor</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.interoperability.rpy.rpymetamodel.IAnchor
+	 * @generated
+	 */
+	public Adapter createIAnchorAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IAnnotation <em>IAnnotation</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.interoperability.rpy.rpymetamodel.IAnnotation
+	 * @generated
+	 */
+	public Adapter createIAnnotationAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IArgument <em>IArgument</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.interoperability.rpy.rpymetamodel.IArgument
+	 * @generated
+	 */
+	public Adapter createIArgumentAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IAssociationClass <em>IAssociation Class</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.interoperability.rpy.rpymetamodel.IAssociationClass
+	 * @generated
+	 */
+	public Adapter createIAssociationClassAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IAssociationEnd <em>IAssociation End</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.interoperability.rpy.rpymetamodel.IAssociationEnd
+	 * @generated
+	 */
+	public Adapter createIAssociationEndAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IAssociationEndHandle <em>IAssociation End Handle</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.interoperability.rpy.rpymetamodel.IAssociationEndHandle
+	 * @generated
+	 */
+	public Adapter createIAssociationEndHandleAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IAssociationRole <em>IAssociation Role</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.interoperability.rpy.rpymetamodel.IAssociationRole
+	 * @generated
+	 */
+	public Adapter createIAssociationRoleAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IAttribute <em>IAttribute</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.interoperability.rpy.rpymetamodel.IAttribute
+	 * @generated
+	 */
+	public Adapter createIAttributeAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IBlock <em>IBlock</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.interoperability.rpy.rpymetamodel.IBlock
+	 * @generated
+	 */
+	public Adapter createIBlockAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IBody <em>IBody</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.interoperability.rpy.rpymetamodel.IBody
+	 * @generated
+	 */
+	public Adapter createIBodyAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IBranch <em>IBranch</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.interoperability.rpy.rpymetamodel.IBranch
+	 * @generated
+	 */
+	public Adapter createIBranchAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ICallAction <em>ICall Action</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.interoperability.rpy.rpymetamodel.ICallAction
+	 * @generated
+	 */
+	public Adapter createICallActionAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ICallOperation <em>ICall Operation</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.interoperability.rpy.rpymetamodel.ICallOperation
+	 * @generated
+	 */
+	public Adapter createICallOperationAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IClass <em>IClass</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.interoperability.rpy.rpymetamodel.IClass
+	 * @generated
+	 */
+	public Adapter createIClassAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IClassHandle <em>IClass Handle</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.interoperability.rpy.rpymetamodel.IClassHandle
+	 * @generated
+	 */
+	public Adapter createIClassHandleAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IClassInstance <em>IClass Instance</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.interoperability.rpy.rpymetamodel.IClassInstance
+	 * @generated
+	 */
+	public Adapter createIClassInstanceAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IClassifier <em>IClassifier</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.interoperability.rpy.rpymetamodel.IClassifier
+	 * @generated
+	 */
+	public Adapter createIClassifierAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IClassifierRole <em>IClassifier Role</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.interoperability.rpy.rpymetamodel.IClassifierRole
+	 * @generated
+	 */
+	public Adapter createIClassifierRoleAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ICodeGenConfigInfo <em>ICode Gen Config Info</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.interoperability.rpy.rpymetamodel.ICodeGenConfigInfo
+	 * @generated
+	 */
+	public Adapter createICodeGenConfigInfoAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ICodeGenConfigInfoHandle <em>ICode Gen Config Info Handle</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.interoperability.rpy.rpymetamodel.ICodeGenConfigInfoHandle
+	 * @generated
+	 */
+	public Adapter createICodeGenConfigInfoHandleAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ICollaboration <em>ICollaboration</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.interoperability.rpy.rpymetamodel.ICollaboration
+	 * @generated
+	 */
+	public Adapter createICollaborationAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ICollaborationDiagram <em>ICollaboration Diagram</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.interoperability.rpy.rpymetamodel.ICollaborationDiagram
+	 * @generated
+	 */
+	public Adapter createICollaborationDiagramAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IColor <em>IColor</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.interoperability.rpy.rpymetamodel.IColor
+	 * @generated
+	 */
+	public Adapter createIColorAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ICombinedFragment <em>ICombined Fragment</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.interoperability.rpy.rpymetamodel.ICombinedFragment
+	 * @generated
+	 */
+	public Adapter createICombinedFragmentAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IComment <em>IComment</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.interoperability.rpy.rpymetamodel.IComment
+	 * @generated
+	 */
+	public Adapter createICommentAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IComponent <em>IComponent</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.interoperability.rpy.rpymetamodel.IComponent
+	 * @generated
+	 */
+	public Adapter createIComponentAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IComponentDiagram <em>IComponent Diagram</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.interoperability.rpy.rpymetamodel.IComponentDiagram
+	 * @generated
+	 */
+	public Adapter createIComponentDiagramAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IComponentInstance <em>IComponent Instance</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.interoperability.rpy.rpymetamodel.IComponentInstance
+	 * @generated
+	 */
+	public Adapter createIComponentInstanceAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IConfiguration <em>IConfiguration</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.interoperability.rpy.rpymetamodel.IConfiguration
+	 * @generated
+	 */
+	public Adapter createIConfigurationAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IConnector <em>IConnector</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.interoperability.rpy.rpymetamodel.IConnector
+	 * @generated
+	 */
+	public Adapter createIConnectorAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IConstraint <em>IConstraint</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.interoperability.rpy.rpymetamodel.IConstraint
+	 * @generated
+	 */
+	public Adapter createIConstraintAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IConstructor <em>IConstructor</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.interoperability.rpy.rpymetamodel.IConstructor
+	 * @generated
+	 */
+	public Adapter createIConstructorAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IContextSpecification <em>IContext 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.interoperability.rpy.rpymetamodel.IContextSpecification
+	 * @generated
+	 */
+	public Adapter createIContextSpecificationAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IControlledFile <em>IControlled File</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.interoperability.rpy.rpymetamodel.IControlledFile
+	 * @generated
+	 */
+	public Adapter createIControlledFileAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IDefaultDrvdTrans <em>IDefault Drvd Trans</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.interoperability.rpy.rpymetamodel.IDefaultDrvdTrans
+	 * @generated
+	 */
+	public Adapter createIDefaultDrvdTransAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IDependency <em>IDependency</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.interoperability.rpy.rpymetamodel.IDependency
+	 * @generated
+	 */
+	public Adapter createIDependencyAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IDeploymentDiagram <em>IDeployment Diagram</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.interoperability.rpy.rpymetamodel.IDeploymentDiagram
+	 * @generated
+	 */
+	public Adapter createIDeploymentDiagramAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IDescription <em>IDescription</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.interoperability.rpy.rpymetamodel.IDescription
+	 * @generated
+	 */
+	public Adapter createIDescriptionAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IDestructor <em>IDestructor</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.interoperability.rpy.rpymetamodel.IDestructor
+	 * @generated
+	 */
+	public Adapter createIDestructorAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IDiagram <em>IDiagram</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.interoperability.rpy.rpymetamodel.IDiagram
+	 * @generated
+	 */
+	public Adapter createIDiagramAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IEmbededFile <em>IEmbeded File</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.interoperability.rpy.rpymetamodel.IEmbededFile
+	 * @generated
+	 */
+	public Adapter createIEmbededFileAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IEnumerationLiteral <em>IEnumeration Literal</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.interoperability.rpy.rpymetamodel.IEnumerationLiteral
+	 * @generated
+	 */
+	public Adapter createIEnumerationLiteralAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IEvent <em>IEvent</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.interoperability.rpy.rpymetamodel.IEvent
+	 * @generated
+	 */
+	public Adapter createIEventAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IEventHandle <em>IEvent Handle</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.interoperability.rpy.rpymetamodel.IEventHandle
+	 * @generated
+	 */
+	public Adapter createIEventHandleAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IEventReception <em>IEvent Reception</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.interoperability.rpy.rpymetamodel.IEventReception
+	 * @generated
+	 */
+	public Adapter createIEventReceptionAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IExecutionOccurrence <em>IExecution Occurrence</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.interoperability.rpy.rpymetamodel.IExecutionOccurrence
+	 * @generated
+	 */
+	public Adapter createIExecutionOccurrenceAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IExternalHyperlink <em>IExternal Hyperlink</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.interoperability.rpy.rpymetamodel.IExternalHyperlink
+	 * @generated
+	 */
+	public Adapter createIExternalHyperlinkAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IFile <em>IFile</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.interoperability.rpy.rpymetamodel.IFile
+	 * @generated
+	 */
+	public Adapter createIFileAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IFileFragment <em>IFile Fragment</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.interoperability.rpy.rpymetamodel.IFileFragment
+	 * @generated
+	 */
+	public Adapter createIFileFragmentAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IFlow <em>IFlow</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.interoperability.rpy.rpymetamodel.IFlow
+	 * @generated
+	 */
+	public Adapter createIFlowAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IFlowItem <em>IFlow Item</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.interoperability.rpy.rpymetamodel.IFlowItem
+	 * @generated
+	 */
+	public Adapter createIFlowItemAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IFlowchart <em>IFlowchart</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.interoperability.rpy.rpymetamodel.IFlowchart
+	 * @generated
+	 */
+	public Adapter createIFlowchartAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IFolder <em>IFolder</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.interoperability.rpy.rpymetamodel.IFolder
+	 * @generated
+	 */
+	public Adapter createIFolderAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IFork <em>IFork</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.interoperability.rpy.rpymetamodel.IFork
+	 * @generated
+	 */
+	public Adapter createIForkAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IGeneralization <em>IGeneralization</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.interoperability.rpy.rpymetamodel.IGeneralization
+	 * @generated
+	 */
+	public Adapter createIGeneralizationAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IGuard <em>IGuard</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.interoperability.rpy.rpymetamodel.IGuard
+	 * @generated
+	 */
+	public Adapter createIGuardAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IHandleWithData <em>IHandle With Data</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.interoperability.rpy.rpymetamodel.IHandleWithData
+	 * @generated
+	 */
+	public Adapter createIHandleWithDataAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IHistoryConnector <em>IHistory Connector</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.interoperability.rpy.rpymetamodel.IHistoryConnector
+	 * @generated
+	 */
+	public Adapter createIHistoryConnectorAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IHyperLink <em>IHyper Link</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.interoperability.rpy.rpymetamodel.IHyperLink
+	 * @generated
+	 */
+	public Adapter createIHyperLinkAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IInformationFlow <em>IInformation Flow</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.interoperability.rpy.rpymetamodel.IInformationFlow
+	 * @generated
+	 */
+	public Adapter createIInformationFlowAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IInformationItem <em>IInformation Item</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.interoperability.rpy.rpymetamodel.IInformationItem
+	 * @generated
+	 */
+	public Adapter createIInformationItemAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IInstance <em>IInstance</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.interoperability.rpy.rpymetamodel.IInstance
+	 * @generated
+	 */
+	public Adapter createIInstanceAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IInstanceSlot <em>IInstance Slot</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.interoperability.rpy.rpymetamodel.IInstanceSlot
+	 * @generated
+	 */
+	public Adapter createIInstanceSlotAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IInstanceSpecification <em>IInstance 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.interoperability.rpy.rpymetamodel.IInstanceSpecification
+	 * @generated
+	 */
+	public Adapter createIInstanceSpecificationAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IInstanceValue <em>IInstance Value</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.interoperability.rpy.rpymetamodel.IInstanceValue
+	 * @generated
+	 */
+	public Adapter createIInstanceValueAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IInteractionOccurrence <em>IInteraction Occurrence</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.interoperability.rpy.rpymetamodel.IInteractionOccurrence
+	 * @generated
+	 */
+	public Adapter createIInteractionOccurrenceAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IInteractionOperand <em>IInteraction Operand</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.interoperability.rpy.rpymetamodel.IInteractionOperand
+	 * @generated
+	 */
+	public Adapter createIInteractionOperandAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IInteractionOperator <em>IInteraction Operator</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.interoperability.rpy.rpymetamodel.IInteractionOperator
+	 * @generated
+	 */
+	public Adapter createIInteractionOperatorAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IInterfaceItem <em>IInterface Item</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.interoperability.rpy.rpymetamodel.IInterfaceItem
+	 * @generated
+	 */
+	public Adapter createIInterfaceItemAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IInterfaceItemTrigger <em>IInterface Item Trigger</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.interoperability.rpy.rpymetamodel.IInterfaceItemTrigger
+	 * @generated
+	 */
+	public Adapter createIInterfaceItemTriggerAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IInternalHyperlink <em>IInternal Hyperlink</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.interoperability.rpy.rpymetamodel.IInternalHyperlink
+	 * @generated
+	 */
+	public Adapter createIInternalHyperlinkAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ILabel <em>ILabel</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.interoperability.rpy.rpymetamodel.ILabel
+	 * @generated
+	 */
+	public Adapter createILabelAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ILink <em>ILink</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.interoperability.rpy.rpymetamodel.ILink
+	 * @generated
+	 */
+	public Adapter createILinkAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ILinkInstance <em>ILink Instance</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.interoperability.rpy.rpymetamodel.ILinkInstance
+	 * @generated
+	 */
+	public Adapter createILinkInstanceAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ILiteralSpecification <em>ILiteral 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.interoperability.rpy.rpymetamodel.ILiteralSpecification
+	 * @generated
+	 */
+	public Adapter createILiteralSpecificationAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMHyperLink <em>IM Hyper Link</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.interoperability.rpy.rpymetamodel.IMHyperLink
+	 * @generated
+	 */
+	public Adapter createIMHyperLinkAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMSC <em>IMSC</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.interoperability.rpy.rpymetamodel.IMSC
+	 * @generated
+	 */
+	public Adapter createIMSCAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMatrixInstance <em>IMatrix Instance</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.interoperability.rpy.rpymetamodel.IMatrixInstance
+	 * @generated
+	 */
+	public Adapter createIMatrixInstanceAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMatrixLayout <em>IMatrix Layout</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.interoperability.rpy.rpymetamodel.IMatrixLayout
+	 * @generated
+	 */
+	public Adapter createIMatrixLayoutAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMatrixView <em>IMatrix View</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.interoperability.rpy.rpymetamodel.IMatrixView
+	 * @generated
+	 */
+	public Adapter createIMatrixViewAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMessage <em>IMessage</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.interoperability.rpy.rpymetamodel.IMessage
+	 * @generated
+	 */
+	public Adapter createIMessageAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMessagePoint <em>IMessage Point</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.interoperability.rpy.rpymetamodel.IMessagePoint
+	 * @generated
+	 */
+	public Adapter createIMessagePointAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMetaLinkHandle <em>IMeta Link Handle</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.interoperability.rpy.rpymetamodel.IMetaLinkHandle
+	 * @generated
+	 */
+	public Adapter createIMetaLinkHandleAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IModelElement <em>IModel Element</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.interoperability.rpy.rpymetamodel.IModelElement
+	 * @generated
+	 */
+	public Adapter createIModelElementAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IModule <em>IModule</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.interoperability.rpy.rpymetamodel.IModule
+	 * @generated
+	 */
+	public Adapter createIModuleAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IMultiplicityItem <em>IMultiplicity Item</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.interoperability.rpy.rpymetamodel.IMultiplicityItem
+	 * @generated
+	 */
+	public Adapter createIMultiplicityItemAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.INode <em>INode</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.interoperability.rpy.rpymetamodel.INode
+	 * @generated
+	 */
+	public Adapter createINodeAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IObjectLink <em>IObject Link</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.interoperability.rpy.rpymetamodel.IObjectLink
+	 * @generated
+	 */
+	public Adapter createIObjectLinkAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IObjectLinkHandle <em>IObject Link Handle</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.interoperability.rpy.rpymetamodel.IObjectLinkHandle
+	 * @generated
+	 */
+	public Adapter createIObjectLinkHandleAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IObjectModelDiagram <em>IObject Model Diagram</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.interoperability.rpy.rpymetamodel.IObjectModelDiagram
+	 * @generated
+	 */
+	public Adapter createIObjectModelDiagramAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IObjectNode <em>IObject Node</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.interoperability.rpy.rpymetamodel.IObjectNode
+	 * @generated
+	 */
+	public Adapter createIObjectNodeAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IOperation <em>IOperation</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.interoperability.rpy.rpymetamodel.IOperation
+	 * @generated
+	 */
+	public Adapter createIOperationAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IPackage <em>IPackage</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.interoperability.rpy.rpymetamodel.IPackage
+	 * @generated
+	 */
+	public Adapter createIPackageAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IPanelDiagram <em>IPanel Diagram</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.interoperability.rpy.rpymetamodel.IPanelDiagram
+	 * @generated
+	 */
+	public Adapter createIPanelDiagramAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IPart <em>IPart</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.interoperability.rpy.rpymetamodel.IPart
+	 * @generated
+	 */
+	public Adapter createIPartAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IPin <em>IPin</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.interoperability.rpy.rpymetamodel.IPin
+	 * @generated
+	 */
+	public Adapter createIPinAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IPort <em>IPort</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.interoperability.rpy.rpymetamodel.IPort
+	 * @generated
+	 */
+	public Adapter createIPortAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IPrimitiveOperation <em>IPrimitive Operation</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.interoperability.rpy.rpymetamodel.IPrimitiveOperation
+	 * @generated
+	 */
+	public Adapter createIPrimitiveOperationAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IProfile <em>IProfile</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.interoperability.rpy.rpymetamodel.IProfile
+	 * @generated
+	 */
+	public Adapter createIProfileAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IProject <em>IProject</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.interoperability.rpy.rpymetamodel.IProject
+	 * @generated
+	 */
+	public Adapter createIProjectAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IProperty <em>IProperty</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.interoperability.rpy.rpymetamodel.IProperty
+	 * @generated
+	 */
+	public Adapter createIPropertyAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IPropertyContainer <em>IProperty Container</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.interoperability.rpy.rpymetamodel.IPropertyContainer
+	 * @generated
+	 */
+	public Adapter createIPropertyContainerAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IPropertyMetaclass <em>IProperty Metaclass</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.interoperability.rpy.rpymetamodel.IPropertyMetaclass
+	 * @generated
+	 */
+	public Adapter createIPropertyMetaclassAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IPropertySubject <em>IProperty Subject</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.interoperability.rpy.rpymetamodel.IPropertySubject
+	 * @generated
+	 */
+	public Adapter createIPropertySubjectAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IReception <em>IReception</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.interoperability.rpy.rpymetamodel.IReception
+	 * @generated
+	 */
+	public Adapter createIReceptionAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IReferenceActivity <em>IReference Activity</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.interoperability.rpy.rpymetamodel.IReferenceActivity
+	 * @generated
+	 */
+	public Adapter createIReferenceActivityAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IRelation <em>IRelation</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.interoperability.rpy.rpymetamodel.IRelation
+	 * @generated
+	 */
+	public Adapter createIRelationAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IRequirement <em>IRequirement</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.interoperability.rpy.rpymetamodel.IRequirement
+	 * @generated
+	 */
+	public Adapter createIRequirementAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ISendAction <em>ISend Action</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.interoperability.rpy.rpymetamodel.ISendAction
+	 * @generated
+	 */
+	public Adapter createISendActionAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ISequenceDiagram <em>ISequence Diagram</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.interoperability.rpy.rpymetamodel.ISequenceDiagram
+	 * @generated
+	 */
+	public Adapter createISequenceDiagramAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ISlot <em>ISlot</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.interoperability.rpy.rpymetamodel.ISlot
+	 * @generated
+	 */
+	public Adapter createISlotAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IState <em>IState</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.interoperability.rpy.rpymetamodel.IState
+	 * @generated
+	 */
+	public Adapter createIStateAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IStateChart <em>IState Chart</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.interoperability.rpy.rpymetamodel.IStateChart
+	 * @generated
+	 */
+	public Adapter createIStateChartAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IStateChartDiagram <em>IState Chart Diagram</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.interoperability.rpy.rpymetamodel.IStateChartDiagram
+	 * @generated
+	 */
+	public Adapter createIStateChartDiagramAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IStateVertex <em>IState Vertex</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.interoperability.rpy.rpymetamodel.IStateVertex
+	 * @generated
+	 */
+	public Adapter createIStateVertexAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IStereotype <em>IStereotype</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.interoperability.rpy.rpymetamodel.IStereotype
+	 * @generated
+	 */
+	public Adapter createIStereotypeAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IStructureDiagram <em>IStructure Diagram</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.interoperability.rpy.rpymetamodel.IStructureDiagram
+	 * @generated
+	 */
+	public Adapter createIStructureDiagramAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ISubsystem <em>ISubsystem</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.interoperability.rpy.rpymetamodel.ISubsystem
+	 * @generated
+	 */
+	public Adapter createISubsystemAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ISwimlane <em>ISwimlane</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.interoperability.rpy.rpymetamodel.ISwimlane
+	 * @generated
+	 */
+	public Adapter createISwimlaneAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ISysMLPort <em>ISys ML Port</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.interoperability.rpy.rpymetamodel.ISysMLPort
+	 * @generated
+	 */
+	public Adapter createISysMLPortAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITableInstance <em>ITable Instance</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.interoperability.rpy.rpymetamodel.ITableInstance
+	 * @generated
+	 */
+	public Adapter createITableInstanceAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITableLayout <em>ITable Layout</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.interoperability.rpy.rpymetamodel.ITableLayout
+	 * @generated
+	 */
+	public Adapter createITableLayoutAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITableView <em>ITable View</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.interoperability.rpy.rpymetamodel.ITableView
+	 * @generated
+	 */
+	public Adapter createITableViewAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITag <em>ITag</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.interoperability.rpy.rpymetamodel.ITag
+	 * @generated
+	 */
+	public Adapter createITagAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITemplateInst <em>ITemplate Inst</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.interoperability.rpy.rpymetamodel.ITemplateInst
+	 * @generated
+	 */
+	public Adapter createITemplateInstAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITemplateInstParam <em>ITemplate Inst Param</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.interoperability.rpy.rpymetamodel.ITemplateInstParam
+	 * @generated
+	 */
+	public Adapter createITemplateInstParamAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITemplateInstantiation <em>ITemplate Instantiation</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.interoperability.rpy.rpymetamodel.ITemplateInstantiation
+	 * @generated
+	 */
+	public Adapter createITemplateInstantiationAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITemplateInstantiationParameter <em>ITemplate Instantiation Parameter</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.interoperability.rpy.rpymetamodel.ITemplateInstantiationParameter
+	 * @generated
+	 */
+	public Adapter createITemplateInstantiationParameterAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITemplateParameter <em>ITemplate Parameter</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.interoperability.rpy.rpymetamodel.ITemplateParameter
+	 * @generated
+	 */
+	public Adapter createITemplateParameterAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITimeEvent <em>ITime Event</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.interoperability.rpy.rpymetamodel.ITimeEvent
+	 * @generated
+	 */
+	public Adapter createITimeEventAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITimeout <em>ITimeout</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.interoperability.rpy.rpymetamodel.ITimeout
+	 * @generated
+	 */
+	public Adapter createITimeoutAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITransition <em>ITransition</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.interoperability.rpy.rpymetamodel.ITransition
+	 * @generated
+	 */
+	public Adapter createITransitionAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITrigger <em>ITrigger</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.interoperability.rpy.rpymetamodel.ITrigger
+	 * @generated
+	 */
+	public Adapter createITriggerAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ITriggered <em>ITriggered</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.interoperability.rpy.rpymetamodel.ITriggered
+	 * @generated
+	 */
+	public Adapter createITriggeredAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IType <em>IType</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.interoperability.rpy.rpymetamodel.IType
+	 * @generated
+	 */
+	public Adapter createITypeAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IUCDiagram <em>IUC Diagram</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.interoperability.rpy.rpymetamodel.IUCDiagram
+	 * @generated
+	 */
+	public Adapter createIUCDiagramAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IUnit <em>IUnit</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.interoperability.rpy.rpymetamodel.IUnit
+	 * @generated
+	 */
+	public Adapter createIUnitAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IUseCase <em>IUse Case</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.interoperability.rpy.rpymetamodel.IUseCase
+	 * @generated
+	 */
+	public Adapter createIUseCaseAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IUseCaseDiagram <em>IUse Case Diagram</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.interoperability.rpy.rpymetamodel.IUseCaseDiagram
+	 * @generated
+	 */
+	public Adapter createIUseCaseDiagramAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IUseCaseStereoType <em>IUse Case Stereo Type</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.interoperability.rpy.rpymetamodel.IUseCaseStereoType
+	 * @generated
+	 */
+	public Adapter createIUseCaseStereoTypeAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IValueSpecification <em>IValue 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.interoperability.rpy.rpymetamodel.IValueSpecification
+	 * @generated
+	 */
+	public Adapter createIValueSpecificationAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.IVariable <em>IVariable</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.interoperability.rpy.rpymetamodel.IVariable
+	 * @generated
+	 */
+	public Adapter createIVariableAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.InverseType <em>Inverse Type</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.interoperability.rpy.rpymetamodel.InverseType
+	 * @generated
+	 */
+	public Adapter createInverseTypeAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ItemsType <em>Items Type</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.interoperability.rpy.rpymetamodel.ItemsType
+	 * @generated
+	 */
+	public Adapter createItemsTypeAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ItsLabelType <em>Its Label Type</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.interoperability.rpy.rpymetamodel.ItsLabelType
+	 * @generated
+	 */
+	public Adapter createItsLabelTypeAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ItsStateChartType <em>Its State Chart Type</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.interoperability.rpy.rpymetamodel.ItsStateChartType
+	 * @generated
+	 */
+	public Adapter createItsStateChartTypeAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ItsTargetType <em>Its Target Type</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.interoperability.rpy.rpymetamodel.ItsTargetType
+	 * @generated
+	 */
+	public Adapter createItsTargetTypeAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ItsTriggerType <em>Its Trigger Type</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.interoperability.rpy.rpymetamodel.ItsTriggerType
+	 * @generated
+	 */
+	public Adapter createItsTriggerTypeAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.LinksType <em>Links Type</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.interoperability.rpy.rpymetamodel.LinksType
+	 * @generated
+	 */
+	public Adapter createLinksTypeAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.M_hTargetType <em>MhTarget Type</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.interoperability.rpy.rpymetamodel.M_hTargetType
+	 * @generated
+	 */
+	public Adapter createM_hTargetTypeAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.M_pBaseType <em>MpBase Type</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.interoperability.rpy.rpymetamodel.M_pBaseType
+	 * @generated
+	 */
+	public Adapter createM_pBaseTypeAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.M_pFormalMessageType <em>MpFormal Message Type</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.interoperability.rpy.rpymetamodel.M_pFormalMessageType
+	 * @generated
+	 */
+	public Adapter createM_pFormalMessageTypeAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.M_pModelObjectType <em>MpModel Object Type</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.interoperability.rpy.rpymetamodel.M_pModelObjectType
+	 * @generated
+	 */
+	public Adapter createM_pModelObjectTypeAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.M_pRootType <em>MpRoot Type</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.interoperability.rpy.rpymetamodel.M_pRootType
+	 * @generated
+	 */
+	public Adapter createM_pRootTypeAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.M_subjectType <em>Msubject Type</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.interoperability.rpy.rpymetamodel.M_subjectType
+	 * @generated
+	 */
+	public Adapter createM_subjectTypeAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.MatrixInstancesType <em>Matrix Instances Type</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.interoperability.rpy.rpymetamodel.MatrixInstancesType
+	 * @generated
+	 */
+	public Adapter createMatrixInstancesTypeAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.NestedStateChartType <em>Nested State Chart Type</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.interoperability.rpy.rpymetamodel.NestedStateChartType
+	 * @generated
+	 */
+	public Adapter createNestedStateChartTypeAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ObjectLinksType <em>Object Links Type</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.interoperability.rpy.rpymetamodel.ObjectLinksType
+	 * @generated
+	 */
+	public Adapter createObjectLinksTypeAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.OperationsType <em>Operations Type</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.interoperability.rpy.rpymetamodel.OperationsType
+	 * @generated
+	 */
+	public Adapter createOperationsTypeAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.OwnerHandleType <em>Owner Handle Type</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.interoperability.rpy.rpymetamodel.OwnerHandleType
+	 * @generated
+	 */
+	public Adapter createOwnerHandleTypeAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.P_MessageHandlerType <em>PMessage Handler Type</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.interoperability.rpy.rpymetamodel.P_MessageHandlerType
+	 * @generated
+	 */
+	public Adapter createP_MessageHandlerTypeAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ParentType <em>Parent Type</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.interoperability.rpy.rpymetamodel.ParentType
+	 * @generated
+	 */
+	public Adapter createParentTypeAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.PropertiesType <em>Properties Type</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.interoperability.rpy.rpymetamodel.PropertiesType
+	 * @generated
+	 */
+	public Adapter createPropertiesTypeAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.TableDataDefinition <em>Table Data Definition</em>}'.
+	 * <!-- begin-user-doc -->
+	 * This default implementation returns null so that we can easily ignore cases;
+	 * it's useful to ignore a case when inheritance will catch all the cases anyway.
+	 * <!-- end-user-doc -->
+	 * @return the new adapter.
+	 * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.TableDataDefinition
+	 * @generated
+	 */
+	public Adapter createTableDataDefinitionAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.TableInstancesType <em>Table Instances Type</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.interoperability.rpy.rpymetamodel.TableInstancesType
+	 * @generated
+	 */
+	public Adapter createTableInstancesTypeAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.TargetType <em>Target Type</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.interoperability.rpy.rpymetamodel.TargetType
+	 * @generated
+	 */
+	public Adapter createTargetTypeAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.TheMainDiagramType <em>The Main Diagram Type</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.interoperability.rpy.rpymetamodel.TheMainDiagramType
+	 * @generated
+	 */
+	public Adapter createTheMainDiagramTypeAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ToLinkType <em>To Link Type</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.interoperability.rpy.rpymetamodel.ToLinkType
+	 * @generated
+	 */
+	public Adapter createToLinkTypeAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.TransitionsType <em>Transitions Type</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.interoperability.rpy.rpymetamodel.TransitionsType
+	 * @generated
+	 */
+	public Adapter createTransitionsTypeAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UnknownType <em>Unknown Type</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.interoperability.rpy.rpymetamodel.UnknownType
+	 * @generated
+	 */
+	public Adapter createUnknownTypeAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.interoperability.rpy.rpymetamodel.ValueType <em>Value Type</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.interoperability.rpy.rpymetamodel.ValueType
+	 * @generated
+	 */
+	public Adapter createValueTypeAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class '{@link org.eclipse.emf.ecore.EModelElement <em>EModel Element</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.emf.ecore.EModelElement
+	 * @generated
+	 */
+	public Adapter createEModelElementAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for the default case.
+	 * <!-- begin-user-doc -->
+	 * This default implementation returns null.
+	 * <!-- end-user-doc -->
+	 * @return the new adapter.
+	 * @generated
+	 */
+	public Adapter createEObjectAdapter() {
+		return null;
+	}
+
+} //UMLRpyAdapterFactory
diff --git a/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/util/UMLRpySwitch.java b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/util/UMLRpySwitch.java
new file mode 100755
index 0000000..2e0630e
--- /dev/null
+++ b/rpy/plugins/org.eclipse.papyrus.interoperability.rpy.metamodel/src-gen/org/eclipse/papyrus/interoperability/rpy/rpymetamodel/util/UMLRpySwitch.java
@@ -0,0 +1,6017 @@
+/**
+ *   Copyright (c) 2016 CEA LIST and others.
+ *   
+ *   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:
+ *     CEA LIST - Initial API and implementation
+ * 
+ */
+package org.eclipse.papyrus.interoperability.rpy.rpymetamodel.util;
+
+import org.eclipse.emf.ecore.EModelElement;
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.emf.ecore.EPackage;
+
+import org.eclipse.emf.ecore.util.Switch;
+
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.*;
+
+/**
+ * <!-- begin-user-doc -->
+ * The <b>Switch</b> for the model's inheritance hierarchy.
+ * It supports the call {@link #doSwitch(EObject) doSwitch(object)}
+ * to invoke the <code>caseXXX</code> method for each class of the model,
+ * starting with the actual class of the object
+ * and proceeding up the inheritance hierarchy
+ * until a non-null result is returned,
+ * which is the result of the switch.
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage
+ * @generated
+ */
+public class UMLRpySwitch<T> extends Switch<T> {
+	/**
+	 * The cached model package
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected static UMLRpyPackage modelPackage;
+
+	/**
+	 * Creates an instance of the switch.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public UMLRpySwitch() {
+		if (modelPackage == null) {
+			modelPackage = UMLRpyPackage.eINSTANCE;
+		}
+	}
+
+	/**
+	 * Checks whether this is a switch for the given package.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param ePackage the package in question.
+	 * @return whether this is a switch for the given package.
+	 * @generated
+	 */
+	@Override
+	protected boolean isSwitchFor(EPackage ePackage) {
+		return ePackage == modelPackage;
+	}
+
+	/**
+	 * Calls <code>caseXXX</code> for each class of the model until one returns a non null result; it yields that result.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the first non-null result returned by a <code>caseXXX</code> call.
+	 * @generated
+	 */
+	@Override
+	protected T doSwitch(int classifierID, EObject theEObject) {
+		switch (classifierID) {
+			case UMLRpyPackage.ASSOCIATIONS_TYPE: {
+				AssociationsType associationsType = (AssociationsType)theEObject;
+				T result = caseAssociationsType(associationsType);
+				if (result == null) result = caseInverseType(associationsType);
+				if (result == null) result = defaultCase(theEObject);
+				return result;
+			}
+			case UMLRpyPackage.CCOLLABORATION_CHART: {
+				CCollaborationChart cCollaborationChart = (CCollaborationChart)theEObject;
+				T result = caseCCollaborationChart(cCollaborationChart);
+				if (result == null) result = caseGraphicChartType(cCollaborationChart);
+				if (result == null) result = defaultCase(theEObject);
+				return result;
+			}
+			case UMLRpyPackage.CGI_ACTION_STATE: {
+				CGIActionState cgiActionState = (CGIActionState)theEObject;
+				T result = caseCGIActionState(cgiActionState);
+				if (result == null) result = caseGraphElementsType(cgiActionState);
+				if (result == null) result = caseM_pRootType(cgiActionState);
+				if (result == null) result = defaultCase(theEObject);
+				return result;
+			}
+			case UMLRpyPackage.CGI_ACTIVE_X: {
+				CGIActiveX cgiActiveX = (CGIActiveX)theEObject;
+				T result = caseCGIActiveX(cgiActiveX);
+				if (result == null) result = caseGraphElementsType(cgiActiveX);
+				if (result == null) result = caseM_pRootType(cgiActiveX);
+				if (result == null) result = defaultCase(theEObject);
+				return result;
+			}
+			case UMLRpyPackage.CGI_ANCHOR: {
+				CGIAnchor cgiAnchor = (CGIAnchor)theEObject;
+				T result = caseCGIAnchor(cgiAnchor);
+				if (result == null) result = caseGraphElementsType(cgiAnchor);
+				if (result == null) result = caseM_pRootType(cgiAnchor);
+				if (result == null) result = defaultCase(theEObject);
+				return result;
+			}
+			case UMLRpyPackage.CGI_ANNOTATION: {
+				CGIAnnotation cgiAnnotation = (CGIAnnotation)theEObject;
+				T result = caseCGIAnnotation(cgiAnnotation);
+				if (result == null) result = caseGraphElementsType(cgiAnnotation);
+				if (result == null) result = caseM_pRootType(cgiAnnotation);
+				if (result == null) result = defaultCase(theEObject);
+				return result;
+			}
+			case UMLRpyPackage.CGI_ARROW: {
+				CGIArrow cgiArrow = (CGIArrow)theEObject;
+				T result = caseCGIArrow(cgiArrow);
+				if (result == null) result = caseGraphElementsType(cgiArrow);
+				if (result == null) result = caseM_pRootType(cgiArrow);
+				if (result == null) result = defaultCase(theEObject);
+				return result;
+			}
+			case UMLRpyPackage.CGI_ASSOCIATION_END: {
+				CGIAssociationEnd cgiAssociationEnd = (CGIAssociationEnd)theEObject;
+				T result = caseCGIAssociationEnd(cgiAssociationEnd);
+				if (result == null) result = caseGraphElementsType(cgiAssociationEnd);
+				if (result == null) result = caseM_pRootType(cgiAssociationEnd);
+				if (result == null) result = defaultCase(theEObject);
+				return result;
+			}
+			case UMLRpyPackage.CGI_ASSOCIATION_ROLE: {
+				CGIAssociationRole cgiAssociationRole = (CGIAssociationRole)theEObject;
+				T result = caseCGIAssociationRole(cgiAssociationRole);
+				if (result == null) result = caseGraphElementsType(cgiAssociationRole);
+				if (result == null) result = caseM_pRootType(cgiAssociationRole);
+				if (result == null) result = defaultCase(theEObject);
+				return result;
+			}
+			case UMLRpyPackage.CGI_BASIC_CLASS: {
+				CGIBasicClass cgiBasicClass = (CGIBasicClass)theEObject;
+				T result = caseCGIBasicClass(cgiBasicClass);
+				if (result == null) result = caseGraphElementsType(cgiBasicClass);
+				if (result == null) result = caseM_pRootType(cgiBasicClass);
+				if (result == null) result = defaultCase(theEObject);
+				return result;
+			}
+			case UMLRpyPackage.CGI_BLOCK_STATE: {
+				CGIBlockState cgiBlockState = (CGIBlockState)theEObject;
+				T result = caseCGIBlockState(cgiBlockState);
+				if (result == null) result = caseGraphElementsType(cgiBlockState);
+				if (result == null) result = caseM_pRootType(cgiBlockState);
+				if (result == null) result = defaultCase(theEObject);
+				return result;
+			}
+			case UMLRpyPackage.CGI_BOX: {
+				CGIBox cgiBox = (CGIBox)theEObject;
+				T result = caseCGIBox(cgiBox);
+				if (result == null) result = caseGraphElementsType(cgiBox);
+				if (result == null) result = caseM_pRootType(cgiBox);
+				if (result == null) result = defaultCase(theEObject);
+				return result;
+			}
+			case UMLRpyPackage.CGI_BUTTON_ARRAY: {
+				CGIButtonArray cgiButtonArray = (CGIButtonArray)theEObject;
+				T result = caseCGIButtonArray(cgiButtonArray);
+				if (result == null) result = caseGraphElementsType(cgiButtonArray);
+				if (result == null) result = caseM_pRootType(cgiButtonArray);
+				if (result == null) result = defaultCase(theEObject);
+				return result;
+			}
+			case UMLRpyPackage.CGI_CLASS: {
+				CGIClass cgiClass = (CGIClass)theEObject;
+				T result = caseCGIClass(cgiClass);
+				if (result == null) result = caseGraphElementsType(cgiClass);
+				if (result == null) result = caseM_pRootType(cgiClass);
+				if (result == null) result = defaultCase(theEObject);
+				return result;
+			}
+			case UMLRpyPackage.CGI_CLASS_CHART: {
+				CGIClassChart cgiClassChart = (CGIClassChart)theEObject;
+				T result = caseCGIClassChart(cgiClassChart);
+				if (result == null) result = caseGraphicChartType(cgiClassChart);
+				if (result == null) result = defaultCase(theEObject);
+				return result;
+			}
+			case UMLRpyPackage.CGI_CLASSIFIER_ROLE: {
+				CGIClassifierRole cgiClassifierRole = (CGIClassifierRole)theEObject;
+				T result = caseCGIClassifierRole(cgiClassifierRole);
+				if (result == null) result = caseGraphElementsType(cgiClassifierRole);
+				if (result == null) result = caseM_pRootType(cgiClassifierRole);
+				if (result == null) result = defaultCase(theEObject);
+				return result;
+			}
+			case UMLRpyPackage.CGI_COMPARTMENT: {
+				CGICompartment cgiCompartment = (CGICompartment)theEObject;
+				T result = caseCGICompartment(cgiCompartment);
+				if (result == null) result = caseCompartmentsType(cgiCompartment);
+				if (result == null) result = defaultCase(theEObject);
+				return result;
+			}
+			case UMLRpyPackage.CGI_COMPONENT: {
+				CGIComponent cgiComponent = (CGIComponent)theEObject;
+				T result = caseCGIComponent(cgiComponent);
+				if (result == null) result = caseGraphElementsType(cgiComponent);
+				if (result == null) result = caseM_pRootType(cgiComponent);
+				if (result == null) result = defaultCase(theEObject);
+				return result;
+			}
+			case UMLRpyPackage.CGI_COMPOSITE_CLASS: {
+				CGICompositeClass cgiCompositeClass = (CGICompositeClass)theEObject;
+				T result = caseCGICompositeClass(cgiCompositeClass);
+				if (result == null) result = caseGraphElementsType(cgiCompositeClass);
+				if (result == null) result = caseM_pRootType(cgiCompositeClass);
+				if (result == null) result = defaultCase(theEObject);
+				return result;
+			}
+			case UMLRpyPackage.CGI_CONNECTOR: {
+				CGIConnector cgiConnector = (CGIConnector)theEObject;
+				T result = caseCGIConnector(cgiConnector);
+				if (result == null) result = caseGraphElementsType(cgiConnector);
+				if (result == null) result = caseM_pRootType(cgiConnector);
+				if (result == null) result = defaultCase(theEObject);
+				return result;
+			}
+			case UMLRpyPackage.CGI_CONTAIN_ARROW: {
+				CGIContainArrow cgiContainArrow = (CGIContainArrow)theEObject;
+				T result = caseCGIContainArrow(cgiContainArrow);
+				if (result == null) result = caseGraphElementsType(cgiContainArrow);
+				if (result == null) result = caseM_pRootType(cgiContainArrow);
+				if (result == null) result = defaultCase(theEObject);
+				return result;
+			}
+			case UMLRpyPackage.CGI_DIAGRAM_FRAME: {
+				CGIDiagramFrame cgiDiagramFrame = (CGIDiagramFrame)theEObject;
+				T result = caseCGIDiagramFrame(cgiDiagramFrame);
+				if (result == null) result = caseGraphElementsType(cgiDiagramFrame);
+				if (result == null) result = caseM_pRootType(cgiDiagramFrame);
+				if (result == null) result = defaultCase(theEObject);
+				return result;
+			}
+			case UMLRpyPackage.CGI_FREE_SHAPE: {
+				CGIFreeShape cgiFreeShape = (CGIFreeShape)theEObject;
+				T result = caseCGIFreeShape(cgiFreeShape);
+				if (result == null) result = caseGraphElementsType(cgiFreeShape);
+				if (result == null) result = caseM_pRootType(cgiFreeShape);
+				if (result == null) result = defaultCase(theEObject);
+				return result;
+			}
+			case UMLRpyPackage.CGI_FREE_TEXT: {
+				CGIFreeText cgiFreeText = (CGIFreeText)theEObject;
+				T result = caseCGIFreeText(cgiFreeText);
+				if (result == null) result = caseGraphElementsType(cgiFreeText);
+				if (result == null) result = caseM_pRootType(cgiFreeText);
+				if (result == null) result = defaultCase(theEObject);
+				return result;
+			}
+			case UMLRpyPackage.CGI_GENERIC_ELEMENT: {
+				CGIGenericElement cgiGenericElement = (CGIGenericElement)theEObject;
+				T result = caseCGIGenericElement(cgiGenericElement);
+				if (result == null) result = caseGraphElementsType(cgiGenericElement);
+				if (result == null) result = caseM_pRootType(cgiGenericElement);
+				if (result == null) result = defaultCase(theEObject);
+				return result;
+			}
+			case UMLRpyPackage.CGI_IMAGE: {
+				CGIImage cgiImage = (CGIImage)theEObject;
+				T result = caseCGIImage(cgiImage);
+				if (result == null) result = caseGraphElementsType(cgiImage);
+				if (result == null) result = caseM_pRootType(cgiImage);
+				if (result == null) result = defaultCase(theEObject);
+				return result;
+			}
+			case UMLRpyPackage.CGI_IMAGE_DATA: {
+				CGIImageData cgiImageData = (CGIImageData)theEObject;
+				T result = caseCGIImageData(cgiImageData);
+				if (result == null) result = caseGraphElementsType(cgiImageData);
+				if (result == null) result = caseM_pRootType(cgiImageData);
+				if (result == null) result = defaultCase(theEObject);
+				return result;
+			}
+			case UMLRpyPackage.CGI_INFORMATION_FLOW: {
+				CGIInformationFlow cgiInformationFlow = (CGIInformationFlow)theEObject;
+				T result = caseCGIInformationFlow(cgiInformationFlow);
+				if (result == null) result = caseGraphElementsType(cgiInformationFlow);
+				if (result == null) result = caseM_pRootType(cgiInformationFlow);
+				if (result == null) result = defaultCase(theEObject);
+				return result;
+			}
+			case UMLRpyPackage.CGI_INHERITANCE: {
+				CGIInheritance cgiInheritance = (CGIInheritance)theEObject;
+				T result = caseCGIInheritance(cgiInheritance);
+				if (result == null) result = caseGraphElementsType(cgiInheritance);
+				if (result == null) result = caseM_pRootType(cgiInheritance);
+				if (result == null) result = defaultCase(theEObject);
+				return result;
+			}
+			case UMLRpyPackage.CGIMFC_CTRL: {
+				CGIMFCCtrl cgimfcCtrl = (CGIMFCCtrl)theEObject;
+				T result = caseCGIMFCCtrl(cgimfcCtrl);
+				if (result == null) result = caseGraphElementsType(cgimfcCtrl);
+				if (result == null) result = caseM_pRootType(cgimfcCtrl);
+				if (result == null) result = defaultCase(theEObject);
+				return result;
+			}
+			case UMLRpyPackage.CGI_MESSAGE_LABEL: {
+				CGIMessageLabel cgiMessageLabel = (CGIMessageLabel)theEObject;
+				T result = caseCGIMessageLabel(cgiMessageLabel);
+				if (result == null) result = caseGraphElementsType(cgiMessageLabel);
+				if (result == null) result = caseM_pRootType(cgiMessageLabel);
+				if (result == null) result = defaultCase(theEObject);
+				return result;
+			}
+			case UMLRpyPackage.CGI_MSC_CHART: {
+				CGIMscChart cgiMscChart = (CGIMscChart)theEObject;
+				T result = caseCGIMscChart(cgiMscChart);
+				if (result == null) result = defaultCase(theEObject);
+				return result;
+			}
+			case UMLRpyPackage.CGI_MSC_COLUMN_CR: {
+				CGIMscColumnCR cgiMscColumnCR = (CGIMscColumnCR)theEObject;
+				T result = caseCGIMscColumnCR(cgiMscColumnCR);
+				if (result == null) result = caseGraphElementsType(cgiMscColumnCR);
+				if (result == null) result = caseM_pRootType(cgiMscColumnCR);
+				if (result == null) result = defaultCase(theEObject);
+				return result;
+			}
+			case UMLRpyPackage.CGI_MSC_CONDITION_MARK: {
+				CGIMscConditionMark cgiMscConditionMark = (CGIMscConditionMark)theEObject;
+				T result = caseCGIMscConditionMark(cgiMscConditionMark);
+				if (result == null) result = caseGraphElementsType(cgiMscConditionMark);
+				if (result == null) result = caseM_pRootType(cgiMscConditionMark);
+				if (result == null) result = defaultCase(theEObject);
+				return result;
+			}
+			case UMLRpyPackage.CGI_MSC_EXECUTION_OCCURRENCE: {
+				CGIMscExecutionOccurrence cgiMscExecutionOccurrence = (CGIMscExecutionOccurrence)theEObject;
+				T result = caseCGIMscExecutionOccurrence(cgiMscExecutionOccurrence);
+				if (result == null) result = caseGraphElementsType(cgiMscExecutionOccurrence);
+				if (result == null) result = caseM_pRootType(cgiMscExecutionOccurrence);
+				if (result == null) result = defaultCase(theEObject);
+				return result;
+			}
+			case UMLRpyPackage.CGI_MSC_INTERACTION_OCCURRENCE: {
+				CGIMscInteractionOccurrence cgiMscInteractionOccurrence = (CGIMscInteractionOccurrence)theEObject;
+				T result = caseCGIMscInteractionOccurrence(cgiMscInteractionOccurrence);
+				if (result == null) result = caseGraphElementsType(cgiMscInteractionOccurrence);
+				if (result == null) result = caseM_pRootType(cgiMscInteractionOccurrence);
+				if (result == null) result = defaultCase(theEObject);
+				return result;
+			}
+			case UMLRpyPackage.CGI_MSC_INTERACTION_OPERAND: {
+				CGIMscInteractionOperand cgiMscInteractionOperand = (CGIMscInteractionOperand)theEObject;
+				T result = caseCGIMscInteractionOperand(cgiMscInteractionOperand);
+				if (result == null) result = caseGraphElementsType(cgiMscInteractionOperand);
+				if (result == null) result = caseM_pRootType(cgiMscInteractionOperand);
+				if (result == null) result = defaultCase(theEObject);
+				return result;
+			}
+			case UMLRpyPackage.CGI_MSC_INTERACTION_OPERATOR: {
+				CGIMscInteractionOperator cgiMscInteractionOperator = (CGIMscInteractionOperator)theEObject;
+				T result = caseCGIMscInteractionOperator(cgiMscInteractionOperator);
+				if (result == null) result = caseGraphElementsType(cgiMscInteractionOperator);
+				if (result == null) result = caseM_pRootType(cgiMscInteractionOperator);
+				if (result == null) result = defaultCase(theEObject);
+				return result;
+			}
+			case UMLRpyPackage.CGI_MSC_MESSAGE: {
+				CGIMscMessage cgiMscMessage = (CGIMscMessage)theEObject;
+				T result = caseCGIMscMessage(cgiMscMessage);
+				if (result == null) result = caseGraphElementsType(cgiMscMessage);
+				if (result == null) result = caseM_pRootType(cgiMscMessage);
+				if (result == null) result = defaultCase(theEObject);
+				return result;
+			}
+			case UMLRpyPackage.CGI_OBJECT_INSTANCE: {
+				CGIObjectInstance cgiObjectInstance = (CGIObjectInstance)theEObject;
+				T result = caseCGIObjectInstance(cgiObjectInstance);
+				if (result == null) result = caseGraphElementsType(cgiObjectInstance);
+				if (result == null) result = caseM_pRootType(cgiObjectInstance);
+				if (result == null) result = defaultCase(theEObject);
+				return result;
+			}
+			case UMLRpyPackage.CGI_OBJECT_LINK: {
+				CGIObjectLink cgiObjectLink = (CGIObjectLink)theEObject;
+				T result = caseCGIObjectLink(cgiObjectLink);
+				if (result == null) result = caseGraphElementsType(cgiObjectLink);
+				if (result == null) result = caseM_pRootType(cgiObjectLink);
+				if (result == null) result = defaultCase(theEObject);
+				return result;
+			}
+			case UMLRpyPackage.CGI_PACKAGE: {
+				CGIPackage cgiPackage = (CGIPackage)theEObject;
+				T result = caseCGIPackage(cgiPackage);
+				if (result == null) result = caseGraphElementsType(cgiPackage);
+				if (result == null) result = caseM_pRootType(cgiPackage);
+				if (result == null) result = defaultCase(theEObject);
+				return result;
+			}
+			case UMLRpyPackage.CGI_PARTITION: {
+				CGIPartition cgiPartition = (CGIPartition)theEObject;
+				T result = caseCGIPartition(cgiPartition);
+				if (result == null) result = caseGraphElementsType(cgiPartition);
+				if (result == null) result = caseM_pRootType(cgiPartition);
+				if (result == null) result = defaultCase(theEObject);
+				return result;
+			}
+			case UMLRpyPackage.CGI_PORT_CONNECTOR: {
+				CGIPortConnector cgiPortConnector = (CGIPortConnector)theEObject;
+				T result = caseCGIPortConnector(cgiPortConnector);
+				if (result == null) result = caseGraphElementsType(cgiPortConnector);
+				if (result == null) result = caseM_pRootType(cgiPortConnector);
+				if (result == null) result = defaultCase(theEObject);
+				return result;
+			}
+			case UMLRpyPackage.CGI_STATE: {
+				CGIState cgiState = (CGIState)theEObject;
+				T result = caseCGIState(cgiState);
+				if (result == null) result = caseGraphElementsType(cgiState);
+				if (result == null) result = caseM_pRootType(cgiState);
+				if (result == null) result = defaultCase(theEObject);
+				return result;
+			}
+			case UMLRpyPackage.CGI_STATE_CHART: {
+				CGIStateChart cgiStateChart = (CGIStateChart)theEObject;
+				T result = caseCGIStateChart(cgiStateChart);
+				if (result == null) result = caseGraphicChartType(cgiStateChart);
+				if (result == null) result = defaultCase(theEObject);
+				return result;
+			}
+			case UMLRpyPackage.CGI_SWIMLANE_FRAME: {
+				CGISwimlaneFrame cgiSwimlaneFrame = (CGISwimlaneFrame)theEObject;
+				T result = caseCGISwimlaneFrame(cgiSwimlaneFrame);
+				if (result == null) result = caseGraphElementsType(cgiSwimlaneFrame);
+				if (result == null) result = caseM_pRootType(cgiSwimlaneFrame);
+				if (result == null) result = defaultCase(theEObject);
+				return result;
+			}
+			case UMLRpyPackage.CGI_TEXT: {
+				CGIText cgiText = (CGIText)theEObject;
+				T result = caseCGIText(cgiText);
+				if (result == null) result = defaultCase(theEObject);
+				return result;
+			}
+			case UMLRpyPackage.CGI_TEXT_BOX: {
+				CGITextBox cgiTextBox = (CGITextBox)theEObject;
+				T result = caseCGITextBox(cgiTextBox);
+				if (result == null) result = caseGraphElementsType(cgiTextBox);
+				if (result == null) result = caseM_pRootType(cgiTextBox);
+				if (result == null) result = defaultCase(theEObject);
+				return result;
+			}
+			case UMLRpyPackage.CGI_TRANS: {
+				CGITrans cgiTrans = (CGITrans)theEObject;
+				T result = caseCGITrans(cgiTrans);
+				if (result == null) result = caseGraphElementsType(cgiTrans);
+				if (result == null) result = caseM_pRootType(cgiTrans);
+				if (result == null) result = defaultCase(theEObject);
+				return result;
+			}
+			case UMLRpyPackage.COLL_EVENT: {
+				CollEvent collEvent = (CollEvent)theEObject;
+				T result = caseCollEvent(collEvent);
+				if (result == null) result = caseP_MessageHandlerType(collEvent);
+				if (result == null) result = defaultCase(theEObject);
+				return result;
+			}
+			case UMLRpyPackage.COMPARTMENTS_TYPE: {
+				CompartmentsType compartmentsType = (CompartmentsType)theEObject;
+				T result = caseCompartmentsType(compartmentsType);
+				if (result == null) result = defaultCase(theEObject);
+				return result;
+			}
+			case UMLRpyPackage.COMPONENTS_TYPE: {
+				ComponentsType componentsType = (ComponentsType)theEObject;
+				T result = caseComponentsType(componentsType);
+				if (result == null) result = defaultCase(theEObject);
+				return result;
+			}
+			case UMLRpyPackage.CONVEYED_TYPE: {
+				ConveyedType conveyedType = (ConveyedType)theEObject;
+				T result = caseConveyedType(conveyedType);
+				if (result == null) result = defaultCase(theEObject);
+				return result;
+			}
+			case UMLRpyPackage.DECLARATIVES_TYPE: {
+				DeclarativesType declarativesType = (DeclarativesType)theEObject;
+				T result = caseDeclarativesType(declarativesType);
+				if (result == null) result = defaultCase(theEObject);
+				return result;
+			}
+			case UMLRpyPackage.DEFAULT_SUBSYSTEM_TYPE: {
+				DefaultSubsystemType defaultSubsystemType = (DefaultSubsystemType)theEObject;
+				T result = caseDefaultSubsystemType(defaultSubsystemType);
+				if (result == null) result = caseIModelElement(defaultSubsystemType);
+				if (result == null) result = caseEModelElement(defaultSubsystemType);
+				if (result == null) result = defaultCase(theEObject);
+				return result;
+			}
+			case UMLRpyPackage.DEFAULT_TRANS_TYPE: {
+				DefaultTransType defaultTransType = (DefaultTransType)theEObject;
+				T result = caseDefaultTransType(defaultTransType);
+				if (result == null) result = defaultCase(theEObject);
+				return result;
+			}
+			case UMLRpyPackage.DEPENDS_ON_TYPE: {
+				DependsOnType dependsOnType = (DependsOnType)theEObject;
+				T result = caseDependsOnType(dependsOnType);
+				if (result == null) result = caseElementsType(dependsOnType);
+				if (result == null) result = defaultCase(theEObject);
+				return result;
+			}
+			case UMLRpyPackage.DESCRIPTION_TYPE: {
+				DescriptionType descriptionType = (DescriptionType)theEObject;
+				T result = caseDescriptionType(descriptionType);
+				if (result == null) result = defaultCase(theEObject);
+				return result;
+			}
+			case UMLRpyPackage.ELEMENTS_TYPE: {
+				ElementsType elementsType = (ElementsType)theEObject;
+				T result = caseElementsType(elementsType);
+				if (result == null) result = defaultCase(theEObject);
+				return result;
+			}
+			case UMLRpyPackage.EMBEDED_FILES_TYPE: {
+				EmbededFilesType embededFilesType = (EmbededFilesType)theEObject;
+				T result = caseEmbededFilesType(embededFilesType);
+				if (result == null) result = defaultCase(theEObject);
+				return result;
+			}
+			case UMLRpyPackage.END1_TYPE: {
+				End1_Type end1_Type = (End1_Type)theEObject;
+				T result = caseEnd1_Type(end1_Type);
+				if (result == null) result = defaultCase(theEObject);
+				return result;
+			}
+			case UMLRpyPackage.END2_TYPE: {
+				End2_Type end2_Type = (End2_Type)theEObject;
+				T result = caseEnd2_Type(end2_Type);
+				if (result == null) result = caseEnd1_Type(end2_Type);
+				if (result == null) result = defaultCase(theEObject);
+				return result;
+			}
+			case UMLRpyPackage.FILES_TYPE: {
+				FilesType filesType = (FilesType)theEObject;
+				T result = caseFilesType(filesType);
+				if (result == null) result = defaultCase(theEObject);
+				return result;
+			}
+			case UMLRpyPackage.FROM_LINK_TYPE: {
+				FromLinkType fromLinkType = (FromLinkType)theEObject;
+				T result = caseFromLinkType(fromLinkType);
+				if (result == null) result = defaultCase(theEObject);
+				return result;
+			}
+			case UMLRpyPackage.GRAPH_ELEMENTS_TYPE: {
+				GraphElementsType graphElementsType = (GraphElementsType)theEObject;
+				T result = caseGraphElementsType(graphElementsType);
+				if (result == null) result = caseM_pRootType(graphElementsType);
+				if (result == null) result = defaultCase(theEObject);
+				return result;
+			}
+			case UMLRpyPackage.GRAPHIC_CHART_TYPE: {
+				GraphicChartType graphicChartType = (GraphicChartType)theEObject;
+				T result = caseGraphicChartType(graphicChartType);
+				if (result == null) result = defaultCase(theEObject);
+				return result;
+			}
+			case UMLRpyPackage.HYPER_LINKS_TYPE: {
+				HyperLinksType hyperLinksType = (HyperLinksType)theEObject;
+				T result = caseHyperLinksType(hyperLinksType);
+				if (result == null) result = caseIModelElement(hyperLinksType);
+				if (result == null) result = caseEModelElement(hyperLinksType);
+				if (result == null) result = defaultCase(theEObject);
+				return result;
+			}
+			case UMLRpyPackage.IACCEPT_EVENT_ACTION: {
+				IAcceptEventAction iAcceptEventAction = (IAcceptEventAction)theEObject;
+				T result = caseIAcceptEventAction(iAcceptEventAction);
+				if (result == null) result = caseIState(iAcceptEventAction);
+				if (result == null) result = caseIStateVertex(iAcceptEventAction);
+				if (result == null) result = caseItsTargetType(iAcceptEventAction);
+				if (result == null) result = caseM_pModelObjectType(iAcceptEventAction);
+				if (result == null) result = caseDependsOnType(iAcceptEventAction);
+				if (result == null) result = caseTargetType(iAcceptEventAction);
+				if (result == null) result = caseIModelElement(iAcceptEventAction);
+				if (result == null) result = caseParentType(iAcceptEventAction);
+				if (result == null) result = caseElementsType(iAcceptEventAction);
+				if (result == null) result = caseEModelElement(iAcceptEventAction);
+				if (result == null) result = defaultCase(theEObject);
+				return result;
+			}
+			case UMLRpyPackage.IACCEPT_TIME_EVENT: {
+				IAcceptTimeEvent iAcceptTimeEvent = (IAcceptTimeEvent)theEObject;
+				T result = caseIAcceptTimeEvent(iAcceptTimeEvent);
+				if (result == null) result = caseIState(iAcceptTimeEvent);
+				if (result == null) result = caseIStateVertex(iAcceptTimeEvent);
+				if (result == null) result = caseItsTargetType(iAcceptTimeEvent);
+				if (result == null) result = caseM_pModelObjectType(iAcceptTimeEvent);
+				if (result == null) result = caseDependsOnType(iAcceptTimeEvent);
+				if (result == null) result = caseTargetType(iAcceptTimeEvent);
+				if (result == null) result = caseIModelElement(iAcceptTimeEvent);
+				if (result == null) result = caseParentType(iAcceptTimeEvent);
+				if (result == null) result = caseElementsType(iAcceptTimeEvent);
+				if (result == null) result = caseEModelElement(iAcceptTimeEvent);
+				if (result == null) result = defaultCase(theEObject);
+				return result;
+			}
+			case UMLRpyPackage.IACTION: {
+				IAction iAction = (IAction)theEObject;
+				T result = caseIAction(iAction);
+				if (result == null) result = caseIModelElement(iAction);
+				if (result == null) result = caseEModelElement(iAction);
+				if (result == null) result = defaultCase(theEObject);
+				return result;
+			}
+			case UMLRpyPackage.IACTIVITY_DIAGRAM: {
+				IActivityDiagram iActivityDiagram = (IActivityDiagram)theEObject;
+				T result = caseIActivityDiagram(iActivityDiagram);
+				if (result == null) result = caseDependsOnType(iActivityDiagram);
+				if (result == null) result = caseTargetType(iActivityDiagram);
+				if (result == null) result = caseElementsType(iActivityDiagram);
+				if (result == null) result = defaultCase(theEObject);
+				return result;
+			}
+			case UMLRpyPackage.IACTIVITY_GRAPH: {
+				IActivityGraph iActivityGraph = (IActivityGraph)theEObject;
+				T result = caseIActivityGraph(iActivityGraph);
+				if (result == null) result = caseNestedStateChartType(iActivityGraph);
+				if (result == null) result = caseDependsOnType(iActivityGraph);
+				if (result == null) result = caseValueType(iActivityGraph);
+				if (result == null) result = caseTargetType(iActivityGraph);
+				if (result == null) result = caseM_pModelObjectType(iActivityGraph);
+				if (result == null) result = caseIModelElement(iActivityGraph);
+				if (result == null) result = caseItsStateChartType(iActivityGraph);
+				if (result == null) result = caseElementsType(iActivityGraph);
+				if (result == null) result = caseEModelElement(iActivityGraph);
+				if (result == null) result = defaultCase(theEObject);
+				return result;
+			}
+			case UMLRpyPackage.IACTOR: {
+				IActor iActor = (IActor)theEObject;
+				T result = caseIActor(iActor);
+				if (result == null) result = caseIClassifier(iActor);
+				if (result == null) result = caseM_pBaseType(iActor);
+				if (result == null) result = caseDependsOnType(iActor);
+				if (result == null) result = caseM_subjectType(iActor);
+				if (result == null) result = caseEnd2_Type(iActor);
+				if (result == null) result = caseIUnit(iActor);
+				if (result == null) result = caseM_pModelObjectType(iActor);
+				if (result == null) result = caseElementsType(iActor);
+				if (result == null) result = caseEnd1_Type(iActor);
+				if (result == null) result = caseIModelElement(iActor);
+				if (result == null) result = caseEModelElement(iActor);
+				if (result == null) result = defaultCase(theEObject);
+				return result;
+			}
+			case UMLRpyPackage.IANCHOR: {
+				IAnchor iAnchor = (IAnchor)theEObject;
+				T result = caseIAnchor(iAnchor);
+				if (result == null) result = caseM_pModelObjectType(iAnchor);
+				if (result == null) result = defaultCase(theEObject);
+				return result;
+			}
+			case UMLRpyPackage.IANNOTATION: {
+				IAnnotation iAnnotation = (IAnnotation)theEObject;
+				T result = caseIAnnotation(iAnnotation);
+				if (result == null) result = caseIUnit(iAnnotation);
+				if (result == null) result = caseIModelElement(iAnnotation);
+				if (result == null) result = caseEModelElement(iAnnotation);
+				if (result == null) result = defaultCase(theEObject);
+				return result;
+			}
+			case UMLRpyPackage.IARGUMENT: {
+				IArgument iArgument = (IArgument)theEObject;
+				T result = caseIArgument(iArgument);
+				if (result == null) result = caseIVariable(iArgument);
+				if (result == null) result = caseIUnit(iArgument);
+				if (result == null) result = caseIModelElement(iArgument);
+				if (result == null) result = caseEModelElement(iArgument);
+				if (result == null) result = defaultCase(theEObject);
+				return result;
+			}
+			case UMLRpyPackage.IASSOCIATION_CLASS: {
+				IAssociationClass iAssociationClass = (IAssociationClass)theEObject;
+				T result = caseIAssociationClass(iAssociationClass);
+				if (result == null) result = caseIClass(iAssociationClass);
+				if (result == null) result = caseIClassifier(iAssociationClass);
+				if (result == null) result = caseDeclarativesType(iAssociationClass);
+				if (result == null) result = caseM_pBaseType(iAssociationClass);
+				if (result == null) result = caseDependsOnType(iAssociationClass);
+				if (result == null) result = caseM_subjectType(iAssociationClass);
+				if (result == null) result = caseValueType(iAssociationClass);
+				if (result == null) result = caseConveyedType(iAssociationClass);
+				if (result == null) result = caseTargetType(iAssociationClass);
+				if (result == null) result = caseIUnit(iAssociationClass);
+				if (result == null) result = caseM_pModelObjectType(iAssociationClass);
+				if (result == null) result = caseElementsType(iAssociationClass);
+				if (result == null) result = caseIModelElement(iAssociationClass);
+				if (result == null) result = caseEModelElement(iAssociationClass);
+				if (result == null) result = defaultCase(theEObject);
+				return result;
+			}
+			case UMLRpyPackage.IASSOCIATION_END: {
+				IAssociationEnd iAssociationEnd = (IAssociationEnd)theEObject;
+				T result = caseIAssociationEnd(iAssociationEnd);
+				if (result == null) result = caseAssociationsType(iAssociationEnd);
+				if (result == null) result = caseM_subjectType(iAssociationEnd);
+				if (result == null) result = caseM_hTargetType(iAssociationEnd);
+				if (result == null) result = caseM_pModelObjectType(iAssociationEnd);
+				if (result == null) result = caseToLinkType(iAssociationEnd);
+				if (result == null) result = caseIModelElement(iAssociationEnd);
+				if (result == null) result = caseInverseType(iAssociationEnd);
+				if (result == null) result = caseFromLinkType(iAssociationEnd);
+				if (result == null) result = caseEModelElement(iAssociationEnd);
+				if (result == null) result = defaultCase(theEObject);
+				return result;
+			}
+			case UMLRpyPackage.IASSOCIATION_END_HANDLE: {
+				IAssociationEndHandle iAssociationEndHandle = (IAssociationEndHandle)theEObject;
+				T result = caseIAssociationEndHandle(iAssociationEndHandle);
+				if (result == null) result = defaultCase(theEObject);
+				return result;
+			}
+			case UMLRpyPackage.IASSOCIATION_ROLE: {
+				IAssociationRole iAssociationRole = (IAssociationRole)theEObject;
+				T result = caseIAssociationRole(iAssociationRole);
+				if (result == null) result = caseIModelElement(iAssociationRole);
+				if (result == null) result = caseEModelElement(iAssociationRole);
+				if (result == null) result = defaultCase(theEObject);
+				return result;
+			}
+			case UMLRpyPackage.IATTRIBUTE: {
+				IAttribute iAttribute = (IAttribute)theEObject;
+				T result = caseIAttribute(iAttribute);
+				if (result == null) result = caseIVariable(iAttribute);
+				if (result == null) result = caseDependsOnType(iAttribute);
+				if (result == null) result = caseM_subjectType(iAttribute);
+				if (result == null) result = caseValueType(iAttribute);
+				if (result == null) result = caseItemsType(iAttribute);
+				if (result == null) result = caseM_pModelObjectType(iAttribute);
+				if (result == null) result = caseEnd2_Type(iAttribute);
+				if (result == null) result = caseIUnit(iAttribute);
+				if (result == null) result = caseElementsType(iAttribute);
+				if (result == null) result = caseEnd1_Type(iAttribute);
+				if (result == null) result = caseIModelElement(iAttribute);
+				if (result == null) result = caseEModelElement(iAttribute);
+				if (result == null) result = defaultCase(theEObject);
+				return result;
+			}
+			case UMLRpyPackage.IBLOCK: {
+				IBlock iBlock = (IBlock)theEObject;
+				T result = caseIBlock(iBlock);
+				if (result == null) result = caseAssociationsType(iBlock);
+				if (result == null) result = caseM_pModelObjectType(iBlock);
+				if (result == null) result = caseToLinkType(iBlock);
+				if (result == null) result = caseEnd2_Type(iBlock);
+				if (result == null) result = caseInverseType(iBlock);
+				if (result == null) result = caseFromLinkType(iBlock);
+				if (result == null) result = caseEnd1_Type(iBlock);
+				if (result == null) result = defaultCase(theEObject);
+				return result;
+			}
+			case UMLRpyPackage.IBODY: {
+				IBody iBody = (IBody)theEObject;
+				T result = caseIBody(iBody);
+				if (result == null) result = defaultCase(theEObject);
+				return result;
+			}
+			case UMLRpyPackage.IBRANCH: {
+				IBranch iBranch = (IBranch)theEObject;
+				T result = caseIBranch(iBranch);
+				if (result == null) result = caseItsTargetType(iBranch);
+				if (result == null) result = defaultCase(theEObject);
+				return result;
+			}
+			case UMLRpyPackage.ICALL_ACTION: {
+				ICallAction iCallAction = (ICallAction)theEObject;
+				T result = caseICallAction(iCallAction);
+				if (result == null) result = defaultCase(theEObject);
+				return result;
+			}
+			case UMLRpyPackage.ICALL_OPERATION: {
+				ICallOperation iCallOperation = (ICallOperation)theEObject;
+				T result = caseICallOperation(iCallOperation);
+				if (result == null) result = caseIState(iCallOperation);
+				if (result == null) result = caseIStateVertex(iCallOperation);
+				if (result == null) result = caseItsTargetType(iCallOperation);
+				if (result == null) result = caseM_pModelObjectType(iCallOperation);
+				if (result == null) result = caseDependsOnType(iCallOperation);
+				if (result == null) result = caseTargetType(iCallOperation);
+				if (result == null) result = caseIModelElement(iCallOperation);
+				if (result == null) result = caseParentType(iCallOperation);
+				if (result == null) result = caseElementsType(iCallOperation);
+				if (result == null) result = caseEModelElement(iCallOperation);
+				if (result == null) result = defaultCase(theEObject);
+				return result;
+			}
+			case UMLRpyPackage.ICLASS: {
+				IClass iClass = (IClass)theEObject;
+				T result = caseIClass(iClass);
+				if (result == null) result = caseIClassifier(iClass);
+				if (result == null) result = caseDeclarativesType(iClass);
+				if (result == null) result = caseM_pBaseType(iClass);
+				if (result == null) result = caseDependsOnType(iClass);
+				if (result == null) result = caseM_subjectType(iClass);
+				if (result == null) result = caseValueType(iClass);
+				if (result == null) result = caseConveyedType(iClass);
+				if (result == null) result = caseTargetType(iClass);
+				if (result == null) result = caseIUnit(iClass);
+				if (result == null) result = caseM_pModelObjectType(iClass);
+				if (result == null) result = caseElementsType(iClass);
+				if (result == null) result = caseIModelElement(iClass);
+				if (result == null) result = caseEModelElement(iClass);
+				if (result == null) result = defaultCase(theEObject);
+				return result;
+			}
+			case UMLRpyPackage.ICLASS_HANDLE: {
+				IClassHandle iClassHandle = (IClassHandle)theEObject;
+				T result = caseIClassHandle(iClassHandle);
+				if (result == null) result = caseM_pBaseType(iClassHandle);
+				if (result == null) result = caseM_pModelObjectType(iClassHandle);
+				if (result == null) result = defaultCase(theEObject);
+				return result;
+			}
+			case UMLRpyPackage.ICLASS_INSTANCE: {
+				IClassInstance iClassInstance = (IClassInstance)theEObject;
+				T result = caseIClassInstance(iClassInstance);
+				if (result == null) result = caseLinksType(iClassInstance);
+				if (result == null) result = caseM_pModelObjectType(iClassInstance);
+				if (result == null) result = defaultCase(theEObject);
+				return result;
+			}
+			case UMLRpyPackage.ICLASSIFIER: {
+				IClassifier iClassifier = (IClassifier)theEObject;
+				T result = caseIClassifier(iClassifier);
+				if (result == null) result = caseIUnit(iClassifier);
+				if (result == null) result = caseIModelElement(iClassifier);
+				if (result == null) result = caseEModelElement(iClassifier);
+				if (result == null) result = defaultCase(theEObject);
+				return result;
+			}
+			case UMLRpyPackage.ICLASSIFIER_ROLE: {
+				IClassifierRole iClassifierRole = (IClassifierRole)theEObject;
+				T result = caseIClassifierRole(iClassifierRole);
+				if (result == null) result = caseIModelElement(iClassifierRole);
+				if (result == null) result = caseEModelElement(iClassifierRole);
+				if (result == null) result = defaultCase(theEObject);
+				return result;
+			}
+			case UMLRpyPackage.ICODE_GEN_CONFIG_INFO: {
+				ICodeGenConfigInfo iCodeGenConfigInfo = (ICodeGenConfigInfo)theEObject;
+				T result = caseICodeGenConfigInfo(iCodeGenConfigInfo);
+				if (result == null) result = caseDependsOnType(iCodeGenConfigInfo);
+				if (result == null) result = caseElementsType(iCodeGenConfigInfo);
+				if (result == null) result = defaultCase(theEObject);
+				return result;
+			}
+			case UMLRpyPackage.ICODE_GEN_CONFIG_INFO_HANDLE: {
+				ICodeGenConfigInfoHandle iCodeGenConfigInfoHandle = (ICodeGenConfigInfoHandle)theEObject;
+				T result = caseICodeGenConfigInfoHandle(iCodeGenConfigInfoHandle);
+				if (result == null) result = defaultCase(theEObject);
+				return result;
+			}
+			case UMLRpyPackage.ICOLLABORATION: {
+				ICollaboration iCollaboration = (ICollaboration)theEObject;
+				T result = caseICollaboration(iCollaboration);
+				if (result == null) result = caseIModelElement(iCollaboration);
+				if (result == null) result = caseM_pModelObjectType(iCollaboration);
+				if (result == null) result = caseEModelElement(iCollaboration);
+				if (result == null) result = defaultCase(theEObject);
+				return result;
+			}
+			case UMLRpyPackage.ICOLLABORATION_DIAGRAM: {
+				ICollaborationDiagram iCollaborationDiagram = (ICollaborationDiagram)theEObject;
+				T result = caseICollaborationDiagram(iCollaborationDiagram);
+				if (result == null) result = caseIDiagram(iCollaborationDiagram);
+				if (result == null) result = caseIUnit(iCollaborationDiagram);
+				if (result == null) result = caseTheMainDiagramType(iCollaborationDiagram);
+				if (result == null) result = caseDeclarativesType(iCollaborationDiagram);
+				if (result == null) result = caseDependsOnType(iCollaborationDiagram);
+				if (result == null) result = caseTargetType(iCollaborationDiagram);
+				if (result == null) result = caseIModelElement(iCollaborationDiagram);
+				if (result == null) result = caseM_pModelObjectType(iCollaborationDiagram);
+				if (result == null) result = caseElementsType(iCollaborationDiagram);
+				if (result == null) result = caseEModelElement(iCollaborationDiagram);
+				if (result == null) result = defaultCase(theEObject);
+				return result;
+			}
+			case UMLRpyPackage.ICOLOR: {
+				IColor iColor = (IColor)theEObject;
+				T result = caseIColor(iColor);
+				if (result == null) result = defaultCase(theEObject);
+				return result;
+			}
+			case UMLRpyPackage.ICOMBINED_FRAGMENT: {
+				ICombinedFragment iCombinedFragment = (ICombinedFragment)theEObject;
+				T result = caseICombinedFragment(iCombinedFragment);
+				if (result == null) result = defaultCase(theEObject);
+				return result;
+			}
+			case UMLRpyPackage.ICOMMENT: {
+				IComment iComment = (IComment)theEObject;
+				T result = caseIComment(iComment);
+				if (result == null) result = caseIAnnotation(iComment);
+				if (result == null) result = caseValueType(iComment);
+				if (result == null) result = caseIUnit(iComment);
+				if (result == null) result = caseIModelElement(iComment);
+				if (result == null) result = caseEModelElement(iComment);
+				if (result == null) result = defaultCase(theEObject);
+				return result;
+			}
+			case UMLRpyPackage.ICOMPONENT: {
+				IComponent iComponent = (IComponent)theEObject;
+				T result = caseIComponent(iComponent);
+				if (result == null) result = caseIUnit(iComponent);
+				if (result == null) result = caseOwnerHandleType(iComponent);
+				if (result == null) result = caseDependsOnType(iComponent);
+				if (result == null) result = caseDeclarativesType(iComponent);
+				if (result == null) result = caseM_pModelObjectType(iComponent);
+				if (result == null) result = caseDefaultSubsystemType(iComponent);
+				if (result == null) result = caseElementsType(iComponent);
+				if (result == null) result = caseIModelElement(iComponent);
+				if (result == null) result = caseEModelElement(iComponent);
+				if (result == null) result = defaultCase(theEObject);
+				return result;
+			}
+			case UMLRpyPackage.ICOMPONENT_DIAGRAM: {
+				IComponentDiagram iComponentDiagram = (IComponentDiagram)theEObject;
+				T result = caseIComponentDiagram(iComponentDiagram);
+				if (result == null) result = caseIDiagram(iComponentDiagram);
+				if (result == null) result = caseIUnit(iComponentDiagram);
+				if (result == null) result = caseTheMainDiagramType(iComponentDiagram);
+				if (result == null) result = caseDeclarativesType(iComponentDiagram);
+				if (result == null) result = caseDependsOnType(iComponentDiagram);
+				if (result == null) result = caseTargetType(iComponentDiagram);
+				if (result == null) result = caseIModelElement(iComponentDiagram);
+				if (result == null) result = caseM_pModelObjectType(iComponentDiagram);
+				if (result == null) result = caseElementsType(iComponentDiagram);
+				if (result == null) result = caseEModelElement(iComponentDiagram);
+				if (result == null) result = defaultCase(theEObject);
+				return result;
+			}
+			case UMLRpyPackage.ICOMPONENT_INSTANCE: {
+				IComponentInstance iComponentInstance = (IComponentInstance)theEObject;
+				T result = caseIComponentInstance(iComponentInstance);
+				if (result == null) result = caseIModelElement(iComponentInstance);
+				if (result == null) result = caseEModelElement(iComponentInstance);
+				if (result == null) result = defaultCase(theEObject);
+				return result;
+			}
+			case UMLRpyPackage.ICONFIGURATION: {
+				IConfiguration iConfiguration = (IConfiguration)theEObject;
+				T result = caseIConfiguration(iConfiguration);
+				if (result == null) result = caseIModelElement(iConfiguration);
+				if (result == null) result = caseEModelElement(iConfiguration);
+				if (result == null) result = defaultCase(theEObject);
+				return result;
+			}
+			case UMLRpyPackage.ICONNECTOR: {
+				IConnector iConnector = (IConnector)theEObject;
+				T result = caseIConnector(iConnector);
+				if (result == null) result = caseIStateVertex(iConnector);
+				if (result == null) result = caseItsTargetType(iConnector);
+				if (result == null) result = caseIModelElement(iConnector);
+				if (result == null) result = caseParentType(iConnector);
+				if (result == null) result = caseEModelElement(iConnector);
+				if (result == null) result = defaultCase(theEObject);
+				return result;
+			}
+			case UMLRpyPackage.ICONSTRAINT: {
+				IConstraint iConstraint = (IConstraint)theEObject;
+				T result = caseIConstraint(iConstraint);
+				if (result == null) result = caseIAnnotation(iConstraint);
+				if (result == null) result = caseIUnit(iConstraint);
+				if (result == null) result = caseIModelElement(iConstraint);
+				if (result == null) result = caseEModelElement(iConstraint);
+				if (result == null) result = defaultCase(theEObject);
+				return result;
+			}
+			case UMLRpyPackage.ICONSTRUCTOR: {
+				IConstructor iConstructor = (IConstructor)theEObject;
+				T result = caseIConstructor(iConstructor);
+				if (result == null) result = caseOperationsType(iConstructor);
+				if (result == null) result = caseM_subjectType(iConstructor);
+				if (result == null) result = caseItemsType(iConstructor);
+				if (result == null) result = defaultCase(theEObject);
+				return result;
+			}
+			case UMLRpyPackage.ICONTEXT_SPECIFICATION: {
+				IContextSpecification iContextSpecification = (IContextSpecification)theEObject;
+				T result = caseIContextSpecification(iContextSpecification);
+				if (result == null) result = caseIValueSpecification(iContextSpecification);
+				if (result == null) result = caseIModelElement(iContextSpecification);
+				if (result == null) result = caseEModelElement(iContextSpecification);
+				if (result == null) result = defaultCase(theEObject);
+				return result;
+			}
+			case UMLRpyPackage.ICONTROLLED_FILE: {
+				IControlledFile iControlledFile = (IControlledFile)theEObject;
+				T result = caseIControlledFile(iControlledFile);
+				if (result == null) result = caseIUnit(iControlledFile);
+				if (result == null) result = caseIModelElement(iControlledFile);
+				if (result == null) result = caseEModelElement(iControlledFile);
+				if (result == null) result = defaultCase(theEObject);
+				return result;
+			}
+			case UMLRpyPackage.IDEFAULT_DRVD_TRANS: {
+				IDefaultDrvdTrans iDefaultDrvdTrans = (IDefaultDrvdTrans)theEObject;
+				T result = caseIDefaultDrvdTrans(iDefaultDrvdTrans);
+				if (result == null) result = caseDefaultTransType(iDefaultDrvdTrans);
+				if (result == null) result = caseTransitionsType(iDefaultDrvdTrans);
+				if (result == null) result = caseDependsOnType(iDefaultDrvdTrans);
+				if (result == null) result = caseElementsType(iDefaultDrvdTrans);
+				if (result == null) result = defaultCase(theEObject);
+				return result;
+			}
+			case UMLRpyPackage.IDEPENDENCY: {
+				IDependency iDependency = (IDependency)theEObject;
+				T result = caseIDependency(iDependency);
+				if (result == null) result = caseIModelElement(iDependency);
+				if (result == null) result = caseDependsOnType(iDependency);
+				if (result == null) result = caseM_subjectType(iDependency);
+				if (result == null) result = caseEModelElement(iDependency);
+				if (result == null) result = caseElementsType(iDependency);
+				if (result == null) result = defaultCase(theEObject);
+				return result;
+			}
+			case UMLRpyPackage.IDEPLOYMENT_DIAGRAM: {
+				IDeploymentDiagram iDeploymentDiagram = (IDeploymentDiagram)theEObject;
+				T result = caseIDeploymentDiagram(iDeploymentDiagram);
+				if (result == null) result = caseIDiagram(iDeploymentDiagram);
+				if (result == null) result = caseIUnit(iDeploymentDiagram);
+				if (result == null) result = caseTheMainDiagramType(iDeploymentDiagram);
+				if (result == null) result = caseDeclarativesType(iDeploymentDiagram);
+				if (result == null) result = caseDependsOnType(iDeploymentDiagram);
+				if (result == null) result = caseTargetType(iDeploymentDiagram);
+				if (result == null) result = caseIModelElement(iDeploymentDiagram);
+				if (result == null) result = caseM_pModelObjectType(iDeploymentDiagram);
+				if (result == null) result = caseElementsType(iDeploymentDiagram);
+				if (result == null) result = caseEModelElement(iDeploymentDiagram);
+				if (result == null) result = defaultCase(theEObject);
+				return result;
+			}
+			case UMLRpyPackage.IDESCRIPTION: {
+				IDescription iDescription = (IDescription)theEObject;
+				T result = caseIDescription(iDescription);
+				if (result == null) result = caseDescriptionType(iDescription);
+				if (result == null) result = defaultCase(theEObject);
+				return result;
+			}
+			case UMLRpyPackage.IDESTRUCTOR: {
+				IDestructor iDestructor = (IDestructor)theEObject;
+				T result = caseIDestructor(iDestructor);
+				if (result == null) result = caseOperationsType(iDestructor);
+				if (result == null) result = caseM_subjectType(iDestructor);
+				if (result == null) result = defaultCase(theEObject);
+				return result;
+			}
+			case UMLRpyPackage.IDIAGRAM: {
+				IDiagram iDiagram = (IDiagram)theEObject;
+				T result = caseIDiagram(iDiagram);
+				if (result == null) result = caseIUnit(iDiagram);
+				if (result == null) result = caseTheMainDiagramType(iDiagram);
+				if (result == null) result = caseDeclarativesType(iDiagram);
+				if (result == null) result = caseDependsOnType(iDiagram);
+				if (result == null) result = caseTargetType(iDiagram);
+				if (result == null) result = caseIModelElement(iDiagram);
+				if (result == null) result = caseM_pModelObjectType(iDiagram);
+				if (result == null) result = caseElementsType(iDiagram);
+				if (result == null) result = caseEModelElement(iDiagram);
+				if (result == null) result = defaultCase(theEObject);
+				return result;
+			}
+			case UMLRpyPackage.IEMBEDED_FILE: {
+				IEmbededFile iEmbededFile = (IEmbededFile)theEObject;
+				T result = caseIEmbededFile(iEmbededFile);
+				if (result == null) result = caseEmbededFilesType(iEmbededFile);
+				if (result == null) result = defaultCase(theEObject);
+				return result;
+			}
+			case UMLRpyPackage.IENUMERATION_LITERAL: {
+				IEnumerationLiteral iEnumerationLiteral = (IEnumerationLiteral)theEObject;
+				T result = caseIEnumerationLiteral(iEnumerationLiteral);
+				if (result == null) result = caseIModelElement(iEnumerationLiteral);
+				if (result == null) result = caseItemsType(iEnumerationLiteral);
+				if (result == null) result = caseEModelElement(iEnumerationLiteral);
+				if (result == null) result = defaultCase(theEObject);
+				return result;
+			}
+			case UMLRpyPackage.IEVENT: {
+				IEvent iEvent = (IEvent)theEObject;
+				T result = caseIEvent(iEvent);
+				if (result == null) result = caseIInterfaceItem(iEvent);
+				if (result == null) result = caseM_subjectType(iEvent);
+				if (result == null) result = caseM_pFormalMessageType(iEvent);
+				if (result == null) result = caseConveyedType(iEvent);
+				if (result == null) result = caseTargetType(iEvent);
+				if (result == null) result = caseM_pModelObjectType(iEvent);
+				if (result == null) result = caseIClassifier(iEvent);
+				if (result == null) result = caseIUnit(iEvent);
+				if (result == null) result = caseIModelElement(iEvent);
+				if (result == null) result = caseEModelElement(iEvent);
+				if (result == null) result = defaultCase(theEObject);
+				return result;
+			}
+			case UMLRpyPackage.IEVENT_HANDLE: {
+				IEventHandle iEventHandle = (IEventHandle)theEObject;
+				T result = caseIEventHandle(iEventHandle);
+				if (result == null) result = defaultCase(theEObject);
+				return result;
+			}
+			case UMLRpyPackage.IEVENT_RECEPTION: {
+				IEventReception iEventReception = (IEventReception)theEObject;
+				T result = caseIEventReception(iEventReception);
+				if (result == null) result = caseIInterfaceItem(iEventReception);
+				if (result == null) result = caseIClassifier(iEventReception);
+				if (result == null) result = caseIUnit(iEventReception);
+				if (result == null) result = caseIModelElement(iEventReception);
+				if (result == null) result = caseEModelElement(iEventReception);
+				if (result == null) result = defaultCase(theEObject);
+				return result;
+			}
+			case UMLRpyPackage.IEXECUTION_OCCURRENCE: {
+				IExecutionOccurrence iExecutionOccurrence = (IExecutionOccurrence)theEObject;
+				T result = caseIExecutionOccurrence(iExecutionOccurrence);
+				if (result == null) result = caseIModelElement(iExecutionOccurrence);
+				if (result == null) result = caseEModelElement(iExecutionOccurrence);
+				if (result == null) result = defaultCase(theEObject);
+				return result;
+			}
+			case UMLRpyPackage.IEXTERNAL_HYPERLINK: {
+				IExternalHyperlink iExternalHyperlink = (IExternalHyperlink)theEObject;
+				T result = caseIExternalHyperlink(iExternalHyperlink);
+				if (result == null) result = caseHyperLinksType(iExternalHyperlink);
+				if (result == null) result = caseIModelElement(iExternalHyperlink);
+				if (result == null) result = caseEModelElement(iExternalHyperlink);
+				if (result == null) result = defaultCase(theEObject);
+				return result;
+			}
+			case UMLRpyPackage.IFILE: {
+				IFile iFile = (IFile)theEObject;
+				T result = caseIFile(iFile);
+				if (result == null) result = caseIUnit(iFile);
+				if (result == null) result = caseFilesType(iFile);
+				if (result == null) result = caseIModelElement(iFile);
+				if (result == null) result = caseEModelElement(iFile);
+				if (result == null) result = defaultCase(theEObject);
+				return result;
+			}
+			case UMLRpyPackage.IFILE_FRAGMENT: {
+				IFileFragment iFileFragment = (IFileFragment)theEObject;
+				T result = caseIFileFragment(iFileFragment);
+				if (result == null) result = caseIModelElement(iFileFragment);
+				if (result == null) result = caseEModelElement(iFileFragment);
+				if (result == null) result = defaultCase(theEObject);
+				return result;
+			}
+			case UMLRpyPackage.IFLOW: {
+				IFlow iFlow = (IFlow)theEObject;
+				T result = caseIFlow(iFlow);
+				if (result == null) result = caseIModelElement(iFlow);
+				if (result == null) result = caseEModelElement(iFlow);
+				if (result == null) result = defaultCase(theEObject);
+				return result;
+			}
+			case UMLRpyPackage.IFLOW_ITEM: {
+				IFlowItem iFlowItem = (IFlowItem)theEObject;
+				T result = caseIFlowItem(iFlowItem);
+				if (result == null) result = caseIClassifier(iFlowItem);
+				if (result == null) result = caseIUnit(iFlowItem);
+				if (result == null) result = caseIModelElement(iFlowItem);
+				if (result == null) result = caseEModelElement(iFlowItem);
+				if (result == null) result = defaultCase(theEObject);
+				return result;
+			}
+			case UMLRpyPackage.IFLOWCHART: {
+				IFlowchart iFlowchart = (IFlowchart)theEObject;
+				T result = caseIFlowchart(iFlowchart);
+				if (result == null) result = defaultCase(theEObject);
+				return result;
+			}
+			case UMLRpyPackage.IFOLDER: {
+				IFolder iFolder = (IFolder)theEObject;
+				T result = caseIFolder(iFolder);
+				if (result == null) result = caseFilesType(iFolder);
+				if (result == null) result = defaultCase(theEObject);
+				return result;
+			}
+			case UMLRpyPackage.IFORK: {
+				IFork iFork = (IFork)theEObject;
+				T result = caseIFork(iFork);
+				if (result == null) result = caseItsTargetType(iFork);
+				if (result == null) result = defaultCase(theEObject);
+				return result;
+			}
+			case UMLRpyPackage.IGENERALIZATION: {
+				IGeneralization iGeneralization = (IGeneralization)theEObject;
+				T result = caseIGeneralization(iGeneralization);
+				if (result == null) result = caseIModelElement(iGeneralization);
+				if (result == null) result = caseEModelElement(iGeneralization);
+				if (result == null) result = defaultCase(theEObject);
+				return result;
+			}
+			case UMLRpyPackage.IGUARD: {
+				IGuard iGuard = (IGuard)theEObject;
+				T result = caseIGuard(iGuard);
+				if (result == null) result = caseIModelElement(iGuard);
+				if (result == null) result = caseEModelElement(iGuard);
+				if (result == null) result = defaultCase(theEObject);
+				return result;
+			}
+			case UMLRpyPackage.IHANDLE_WITH_DATA: {
+				IHandleWithData iHandleWithData = (IHandleWithData)theEObject;
+				T result = caseIHandleWithData(iHandleWithData);
+				if (result == null) result = defaultCase(theEObject);
+				return result;
+			}
+			case UMLRpyPackage.IHISTORY_CONNECTOR: {
+				IHistoryConnector iHistoryConnector = (IHistoryConnector)theEObject;
+				T result = caseIHistoryConnector(iHistoryConnector);
+				if (result == null) result = caseItsTargetType(iHistoryConnector);
+				if (result == null) result = defaultCase(theEObject);
+				return result;
+			}
+			case UMLRpyPackage.IHYPER_LINK: {
+				IHyperLink iHyperLink = (IHyperLink)theEObject;
+				T result = caseIHyperLink(iHyperLink);
+				if (result == null) result = caseIDependency(iHyperLink);
+				if (result == null) result = caseIModelElement(iHyperLink);
+				if (result == null) result = caseDependsOnType(iHyperLink);
+				if (result == null) result = caseM_subjectType(iHyperLink);
+				if (result == null) result = caseEModelElement(iHyperLink);
+				if (result == null) result = caseElementsType(iHyperLink);
+				if (result == null) result = defaultCase(theEObject);
+				return result;
+			}
+			case UMLRpyPackage.IINFORMATION_FLOW: {
+				IInformationFlow iInformationFlow = (IInformationFlow)theEObject;
+				T result = caseIInformationFlow(iInformationFlow);
+				if (result == null) result = caseDeclarativesType(iInformationFlow);
+				if (result == null) result = caseDependsOnType(iInformationFlow);
+				if (result == null) result = caseIModelElement(iInformationFlow);
+				if (result == null) result = caseElementsType(iInformationFlow);
+				if (result == null) result = caseEModelElement(iInformationFlow);
+				if (result == null) result = defaultCase(theEObject);
+				return result;
+			}
+			case UMLRpyPackage.IINFORMATION_ITEM: {
+				IInformationItem iInformationItem = (IInformationItem)theEObject;
+				T result = caseIInformationItem(iInformationItem);
+				if (result == null) result = caseDeclarativesType(iInformationItem);
+				if (result == null) result = caseDependsOnType(iInformationItem);
+				if (result == null) result = caseConveyedType(iInformationItem);
+				if (result == null) result = caseElementsType(iInformationItem);
+				if (result == null) result = defaultCase(theEObject);
+				return result;
+			}
+			case UMLRpyPackage.IINSTANCE: {
+				IInstance iInstance = (IInstance)theEObject;
+				T result = caseIInstance(iInstance);
+				if (result == null) result = caseIRelation(iInstance);
+				if (result == null) result = caseIUnit(iInstance);
+				if (result == null) result = caseIModelElement(iInstance);
+				if (result == null) result = caseEModelElement(iInstance);
+				if (result == null) result = defaultCase(theEObject);
+				return result;
+			}
+			case UMLRpyPackage.IINSTANCE_SLOT: {
+				IInstanceSlot iInstanceSlot = (IInstanceSlot)theEObject;
+				T result = caseIInstanceSlot(iInstanceSlot);
+				if (result == null) result = caseIModelElement(iInstanceSlot);
+				if (result == null) result = caseEModelElement(iInstanceSlot);
+				if (result == null) result = defaultCase(theEObject);
+				return result;
+			}
+			case UMLRpyPackage.IINSTANCE_SPECIFICATION: {
+				IInstanceSpecification iInstanceSpecification = (IInstanceSpecification)theEObject;
+				T result = caseIInstanceSpecification(iInstanceSpecification);
+				if (result == null) result = caseIModelElement(iInstanceSpecification);
+				if (result == null) result = caseEModelElement(iInstanceSpecification);
+				if (result == null) result = defaultCase(theEObject);
+				return result;
+			}
+			case UMLRpyPackage.IINSTANCE_VALUE: {
+				IInstanceValue iInstanceValue = (IInstanceValue)theEObject;
+				T result = caseIInstanceValue(iInstanceValue);
+				if (result == null) result = caseIValueSpecification(iInstanceValue);
+				if (result == null) result = caseIModelElement(iInstanceValue);
+				if (result == null) result = caseEModelElement(iInstanceValue);
+				if (result == null) result = defaultCase(theEObject);
+				return result;
+			}
+			case UMLRpyPackage.IINTERACTION_OCCURRENCE: {
+				IInteractionOccurrence iInteractionOccurrence = (IInteractionOccurrence)theEObject;
+				T result = caseIInteractionOccurrence(iInteractionOccurrence);
+				if (result == null) result = caseIModelElement(iInteractionOccurrence);
+				if (result == null) result = caseEModelElement(iInteractionOccurrence);
+				if (result == null) result = defaultCase(theEObject);
+				return result;
+			}
+			case UMLRpyPackage.IINTERACTION_OPERAND: {
+				IInteractionOperand iInteractionOperand = (IInteractionOperand)theEObject;
+				T result = caseIInteractionOperand(iInteractionOperand);
+				if (result == null) result = caseICollaboration(iInteractionOperand);
+				if (result == null) result = caseIModelElement(iInteractionOperand);
+				if (result == null) result = caseM_pModelObjectType(iInteractionOperand);
+				if (result == null) result = caseEModelElement(iInteractionOperand);
+				if (result == null) result = defaultCase(theEObject);
+				return result;
+			}
+			case UMLRpyPackage.IINTERACTION_OPERATOR: {
+				IInteractionOperator iInteractionOperator = (IInteractionOperator)theEObject;
+				T result = caseIInteractionOperator(iInteractionOperator);
+				if (result == null) result = caseIModelElement(iInteractionOperator);
+				if (result == null) result = caseEModelElement(iInteractionOperator);
+				if (result == null) result = defaultCase(theEObject);
+				return result;
+			}
+			case UMLRpyPackage.IINTERFACE_ITEM: {
+				IInterfaceItem iInterfaceItem = (IInterfaceItem)theEObject;
+				T result = caseIInterfaceItem(iInterfaceItem);
+				if (result == null) result = caseIClassifier(iInterfaceItem);
+				if (result == null) result = caseIUnit(iInterfaceItem);
+				if (result == null) result = caseIModelElement(iInterfaceItem);
+				if (result == null) result = caseEModelElement(iInterfaceItem);
+				if (result == null) result = defaultCase(theEObject);
+				return result;
+			}
+			case UMLRpyPackage.IINTERFACE_ITEM_TRIGGER: {
+				IInterfaceItemTrigger iInterfaceItemTrigger = (IInterfaceItemTrigger)theEObject;
+				T result = caseIInterfaceItemTrigger(iInterfaceItemTrigger);
+				if (result == null) result = caseItsTriggerType(iInterfaceItemTrigger);
+				if (result == null) result = defaultCase(theEObject);
+				return result;
+			}
+			case UMLRpyPackage.IINTERNAL_HYPERLINK: {
+				IInternalHyperlink iInternalHyperlink = (IInternalHyperlink)theEObject;
+				T result = caseIInternalHyperlink(iInternalHyperlink);
+				if (result == null) result = caseHyperLinksType(iInternalHyperlink);
+				if (result == null) result = caseIModelElement(iInternalHyperlink);
+				if (result == null) result = caseEModelElement(iInternalHyperlink);
+				if (result == null) result = defaultCase(theEObject);
+				return result;
+			}
+			case UMLRpyPackage.ILABEL: {
+				ILabel iLabel = (ILabel)theEObject;
+				T result = caseILabel(iLabel);
+				if (result == null) result = caseItsLabelType(iLabel);
+				if (result == null) result = defaultCase(theEObject);
+				return result;
+			}
+			case UMLRpyPackage.ILINK: {
+				ILink iLink = (ILink)theEObject;
+				T result = caseILink(iLink);
+				if (result == null) result = caseIUnit(iLink);
+				if (result == null) result = caseLinksType(iLink);
+				if (result == null) result = caseM_pModelObjectType(iLink);
+				if (result == null) result = caseIModelElement(iLink);
+				if (result == null) result = caseEModelElement(iLink);
+				if (result == null) result = defaultCase(theEObject);
+				return result;
+			}
+			case UMLRpyPackage.ILINK_INSTANCE: {
+				ILinkInstance iLinkInstance = (ILinkInstance)theEObject;
+				T result = caseILinkInstance(iLinkInstance);
+				if (result == null) result = caseComponentsType(iLinkInstance);
+				if (result == null) result = caseM_pModelObjectType(iLinkInstance);
+				if (result == null) result = defaultCase(theEObject);
+				return result;
+			}
+			case UMLRpyPackage.ILITERAL_SPECIFICATION: {
+				ILiteralSpecification iLiteralSpecification = (ILiteralSpecification)theEObject;
+				T result = caseILiteralSpecification(iLiteralSpecification);
+				if (result == null) result = caseIValueSpecification(iLiteralSpecification);
+				if (result == null) result = caseIModelElement(iLiteralSpecification);
+				if (result == null) result = caseEModelElement(iLiteralSpecification);
+				if (result == null) result = defaultCase(theEObject);
+				return result;
+			}
+			case UMLRpyPackage.IM_HYPER_LINK: {
+				IMHyperLink imHyperLink = (IMHyperLink)theEObject;
+				T result = caseIMHyperLink(imHyperLink);
+				if (result == null) result = caseHyperLinksType(imHyperLink);
+				if (result == null) result = caseIModelElement(imHyperLink);
+				if (result == null) result = caseEModelElement(imHyperLink);
+				if (result == null) result = defaultCase(theEObject);
+				return result;
+			}
+			case UMLRpyPackage.IMSC: {
+				IMSC imsc = (IMSC)theEObject;
+				T result = caseIMSC(imsc);
+				if (result == null) result = caseDeclarativesType(imsc);
+				if (result == null) result = caseDependsOnType(imsc);
+				if (result == null) result = caseTargetType(imsc);
+				if (result == null) result = caseElementsType(imsc);
+				if (result == null) result = defaultCase(theEObject);
+				return result;
+			}
+			case UMLRpyPackage.IMATRIX_INSTANCE: {
+				IMatrixInstance iMatrixInstance = (IMatrixInstance)theEObject;
+				T result = caseIMatrixInstance(iMatrixInstance);
+				if (result == null) result = caseMatrixInstancesType(iMatrixInstance);
+				if (result == null) result = caseDependsOnType(iMatrixInstance);
+				if (result == null) result = caseElementsType(iMatrixInstance);
+				if (result == null) result = defaultCase(theEObject);
+				return result;
+			}
+			case UMLRpyPackage.IMATRIX_LAYOUT: {
+				IMatrixLayout iMatrixLayout = (IMatrixLayout)theEObject;
+				T result = caseIMatrixLayout(iMatrixLayout);
+				if (result == null) result = caseIUnit(iMatrixLayout);
+				if (result == null) result = caseIModelElement(iMatrixLayout);
+				if (result == null) result = caseEModelElement(iMatrixLayout);
+				if (result == null) result = defaultCase(theEObject);
+				return result;
+			}
+			case UMLRpyPackage.IMATRIX_VIEW: {
+				IMatrixView iMatrixView = (IMatrixView)theEObject;
+				T result = caseIMatrixView(iMatrixView);
+				if (result == null) result = caseIUnit(iMatrixView);
+				if (result == null) result = caseIModelElement(iMatrixView);
+				if (result == null) result = caseEModelElement(iMatrixView);
+				if (result == null) result = defaultCase(theEObject);
+				return result;
+			}
+			case UMLRpyPackage.IMESSAGE: {
+				IMessage iMessage = (IMessage)theEObject;
+				T result = caseIMessage(iMessage);
+				if (result == null) result = caseIModelElement(iMessage);
+				if (result == null) result = caseDependsOnType(iMessage);
+				if (result == null) result = caseEModelElement(iMessage);
+				if (result == null) result = caseElementsType(iMessage);
+				if (result == null) result = defaultCase(theEObject);
+				return result;
+			}
+			case UMLRpyPackage.IMESSAGE_POINT: {
+				IMessagePoint iMessagePoint = (IMessagePoint)theEObject;
+				T result = caseIMessagePoint(iMessagePoint);
+				if (result == null) result = caseIModelElement(iMessagePoint);
+				if (result == null) result = caseEModelElement(iMessagePoint);
+				if (result == null) result = defaultCase(theEObject);
+				return result;
+			}
+			case UMLRpyPackage.IMETA_LINK_HANDLE: {
+				IMetaLinkHandle iMetaLinkHandle = (IMetaLinkHandle)theEObject;
+				T result = caseIMetaLinkHandle(iMetaLinkHandle);
+				if (result == null) result = caseInverseType(iMetaLinkHandle);
+				if (result == null) result = caseM_pModelObjectType(iMetaLinkHandle);
+				if (result == null) result = defaultCase(theEObject);
+				return result;
+			}
+			case UMLRpyPackage.IMODEL_ELEMENT: {
+				IModelElement iModelElement = (IModelElement)theEObject;
+				T result = caseIModelElement(iModelElement);
+				if (result == null) result = caseEModelElement(iModelElement);
+				if (result == null) result = defaultCase(theEObject);
+				return result;
+			}
+			case UMLRpyPackage.IMODULE: {
+				IModule iModule = (IModule)theEObject;
+				T result = caseIModule(iModule);
+				if (result == null) result = caseIInstance(iModule);
+				if (result == null) result = caseAssociationsType(iModule);
+				if (result == null) result = caseDependsOnType(iModule);
+				if (result == null) result = caseM_pModelObjectType(iModule);
+				if (result == null) result = caseEnd2_Type(iModule);
+				if (result == null) result = caseIRelation(iModule);
+				if (result == null) result = caseInverseType(iModule);
+				if (result == null) result = caseElementsType(iModule);
+				if (result == null) result = caseEnd1_Type(iModule);
+				if (result == null) result = caseIUnit(iModule);
+				if (result == null) result = caseIModelElement(iModule);
+				if (result == null) result = caseEModelElement(iModule);
+				if (result == null) result = defaultCase(theEObject);
+				return result;
+			}
+			case UMLRpyPackage.IMULTIPLICITY_ITEM: {
+				IMultiplicityItem iMultiplicityItem = (IMultiplicityItem)theEObject;
+				T result = caseIMultiplicityItem(iMultiplicityItem);
+				if (result == null) result = defaultCase(theEObject);
+				return result;
+			}
+			case UMLRpyPackage.INODE: {
+				INode iNode = (INode)theEObject;
+				T result = caseINode(iNode);
+				if (result == null) result = caseIClassifier(iNode);
+				if (result == null) result = caseIUnit(iNode);
+				if (result == null) result = caseIModelElement(iNode);
+				if (result == null) result = caseEModelElement(iNode);
+				if (result == null) result = defaultCase(theEObject);
+				return result;
+			}
+			case UMLRpyPackage.IOBJECT_LINK: {
+				IObjectLink iObjectLink = (IObjectLink)theEObject;
+				T result = caseIObjectLink(iObjectLink);
+				if (result == null) result = caseObjectLinksType(iObjectLink);
+				if (result == null) result = caseValueType(iObjectLink);
+				if (result == null) result = caseM_pModelObjectType(iObjectLink);
+				if (result == null) result = caseDependsOnType(iObjectLink);
+				if (result == null) result = caseIModelElement(iObjectLink);
+				if (result == null) result = caseElementsType(iObjectLink);
+				if (result == null) result = caseEModelElement(iObjectLink);
+				if (result == null) result = defaultCase(theEObject);
+				return result;
+			}
+			case UMLRpyPackage.IOBJECT_LINK_HANDLE: {
+				IObjectLinkHandle iObjectLinkHandle = (IObjectLinkHandle)theEObject;
+				T result = caseIObjectLinkHandle(iObjectLinkHandle);
+				if (result == null) result = defaultCase(theEObject);
+				return result;
+			}
+			case UMLRpyPackage.IOBJECT_MODEL_DIAGRAM: {
+				IObjectModelDiagram iObjectModelDiagram = (IObjectModelDiagram)theEObject;
+				T result = caseIObjectModelDiagram(iObjectModelDiagram);
+				if (result == null) result = caseIDiagram(iObjectModelDiagram);
+				if (result == null) result = caseIUnit(iObjectModelDiagram);
+				if (result == null) result = caseTheMainDiagramType(iObjectModelDiagram);
+				if (result == null) result = caseDeclarativesType(iObjectModelDiagram);
+				if (result == null) result = caseDependsOnType(iObjectModelDiagram);
+				if (result == null) result = caseTargetType(iObjectModelDiagram);
+				if (result == null) result = caseIModelElement(iObjectModelDiagram);
+				if (result == null) result = caseM_pModelObjectType(iObjectModelDiagram);
+				if (result == null) result = caseElementsType(iObjectModelDiagram);
+				if (result == null) result = caseEModelElement(iObjectModelDiagram);
+				if (result == null) result = defaultCase(theEObject);
+				return result;
+			}
+			case UMLRpyPackage.IOBJECT_NODE: {
+				IObjectNode iObjectNode = (IObjectNode)theEObject;
+				T result = caseIObjectNode(iObjectNode);
+				if (result == null) result = caseIState(iObjectNode);
+				if (result == null) result = caseIStateVertex(iObjectNode);
+				if (result == null) result = caseItsTargetType(iObjectNode);
+				if (result == null) result = caseM_pModelObjectType(iObjectNode);
+				if (result == null) result = caseDependsOnType(iObjectNode);
+				if (result == null) result = caseTargetType(iObjectNode);
+				if (result == null) result = caseIModelElement(iObjectNode);
+				if (result == null) result = caseParentType(iObjectNode);
+				if (result == null) result = caseElementsType(iObjectNode);
+				if (result == null) result = caseEModelElement(iObjectNode);
+				if (result == null) result = defaultCase(theEObject);
+				return result;
+			}
+			case UMLRpyPackage.IOPERATION: {
+				IOperation iOperation = (IOperation)theEObject;
+				T result = caseIOperation(iOperation);
+				if (result == null) result = caseIInterfaceItem(iOperation);
+				if (result == null) result = caseIClassifier(iOperation);
+				if (result == null) result = caseIUnit(iOperation);
+				if (result == null) result = caseIModelElement(iOperation);
+				if (result == null) result = caseEModelElement(iOperation);
+				if (result == null) result = defaultCase(theEObject);
+				return result;
+			}
+			case UMLRpyPackage.IPACKAGE: {
+				IPackage iPackage = (IPackage)theEObject;
+				T result = caseIPackage(iPackage);
+				if (result == null) result = caseIUnit(iPackage);
+				if (result == null) result = caseIModelElement(iPackage);
+				if (result == null) result = caseEModelElement(iPackage);
+				if (result == null) result = defaultCase(theEObject);
+				return result;
+			}
+			case UMLRpyPackage.IPANEL_DIAGRAM: {
+				IPanelDiagram iPanelDiagram = (IPanelDiagram)theEObject;
+				T result = caseIPanelDiagram(iPanelDiagram);
+				if (result == null) result = caseIDiagram(iPanelDiagram);
+				if (result == null) result = caseIUnit(iPanelDiagram);
+				if (result == null) result = caseTheMainDiagramType(iPanelDiagram);
+				if (result == null) result = caseDeclarativesType(iPanelDiagram);
+				if (result == null) result = caseDependsOnType(iPanelDiagram);
+				if (result == null) result = caseTargetType(iPanelDiagram);
+				if (result == null) result = caseIModelElement(iPanelDiagram);
+				if (result == null) result = caseM_pModelObjectType(iPanelDiagram);
+				if (result == null) result = caseElementsType(iPanelDiagram);
+				if (result == null) result = caseEModelElement(iPanelDiagram);
+				if (result == null) result = defaultCase(theEObject);
+				return result;
+			}
+			case UMLRpyPackage.IPART: {
+				IPart iPart = (IPart)theEObject;
+				T result = caseIPart(iPart);
+				if (result == null) result = caseAssociationsType(iPart);
+				if (result == null) result = caseDependsOnType(iPart);
+				if (result == null) result = caseM_subjectType(iPart);
+				if (result == null) result = caseValueType(iPart);
+				if (result == null) result = caseM_hTargetType(iPart);
+				if (result == null) result = caseM_pModelObjectType(iPart);
+				if (result == null) result = caseToLinkType(iPart);
+				if (result == null) result = caseConveyedType(iPart);
+				if (result == null) result = caseEnd2_Type(iPart);
+				if (result == null) result = caseTargetType(iPart);
+				if (result == null) result = caseIModelElement(iPart);
+				if (result == null) result = caseInverseType(iPart);
+				if (result == null) result = caseElementsType(iPart);
+				if (result == null) result = caseFromLinkType(iPart);
+				if (result == null) result = caseEnd1_Type(iPart);
+				if (result == null) result = caseEModelElement(iPart);
+				if (result == null) result = defaultCase(theEObject);
+				return result;
+			}
+			case UMLRpyPackage.IPIN: {
+				IPin iPin = (IPin)theEObject;
+				T result = caseIPin(iPin);
+				if (result == null) result = caseIConnector(iPin);
+				if (result == null) result = caseIStateVertex(iPin);
+				if (result == null) result = caseItsTargetType(iPin);
+				if (result == null) result = caseIModelElement(iPin);
+				if (result == null) result = caseParentType(iPin);
+				if (result == null) result = caseEModelElement(iPin);
+				if (result == null) result = defaultCase(theEObject);
+				return result;
+			}
+			case UMLRpyPackage.IPORT: {
+				IPort iPort = (IPort)theEObject;
+				T result = caseIPort(iPort);
+				if (result == null) result = caseIInstance(iPort);
+				if (result == null) result = caseM_hTargetType(iPort);
+				if (result == null) result = caseToLinkType(iPort);
+				if (result == null) result = caseEnd2_Type(iPort);
+				if (result == null) result = caseIRelation(iPort);
+				if (result == null) result = caseFromLinkType(iPort);
+				if (result == null) result = caseEnd1_Type(iPort);
+				if (result == null) result = caseIUnit(iPort);
+				if (result == null) result = caseIModelElement(iPort);
+				if (result == null) result = caseEModelElement(iPort);
+				if (result == null) result = defaultCase(theEObject);
+				return result;
+			}
+			case UMLRpyPackage.IPRIMITIVE_OPERATION: {
+				IPrimitiveOperation iPrimitiveOperation = (IPrimitiveOperation)theEObject;
+				T result = caseIPrimitiveOperation(iPrimitiveOperation);
+				if (result == null) result = caseOperationsType(iPrimitiveOperation);
+				if (result == null) result = caseDependsOnType(iPrimitiveOperation);
+				if (result == null) result = caseM_subjectType(iPrimitiveOperation);
+				if (result == null) result = caseValueType(iPrimitiveOperation);
+				if (result == null) result = caseM_pFormalMessageType(iPrimitiveOperation);
+				if (result == null) result = caseItemsType(iPrimitiveOperation);
+				if (result == null) result = caseTargetType(iPrimitiveOperation);
+				if (result == null) result = caseM_pModelObjectType(iPrimitiveOperation);
+				if (result == null) result = caseIModelElement(iPrimitiveOperation);
+				if (result == null) result = caseElementsType(iPrimitiveOperation);
+				if (result == null) result = caseEModelElement(iPrimitiveOperation);
+				if (result == null) result = defaultCase(theEObject);
+				return result;
+			}
+			case UMLRpyPackage.IPROFILE: {
+				IProfile iProfile = (IProfile)theEObject;
+				T result = caseIProfile(iProfile);
+				if (result == null) result = caseIPackage(iProfile);
+				if (result == null) result = caseOwnerHandleType(iProfile);
+				if (result == null) result = caseDependsOnType(iProfile);
+				if (result == null) result = caseIUnit(iProfile);
+				if (result == null) result = caseDefaultSubsystemType(iProfile);
+				if (result == null) result = caseElementsType(iProfile);
+				if (result == null) result = caseIModelElement(iProfile);
+				if (result == null) result = caseEModelElement(iProfile);
+				if (result == null) result = defaultCase(theEObject);
+				return result;
+			}
+			case UMLRpyPackage.IPROJECT: {
+				IProject iProject = (IProject)theEObject;
+				T result = caseIProject(iProject);
+				if (result == null) result = caseIPackage(iProject);
+				if (result == null) result = caseM_pModelObjectType(iProject);
+				if (result == null) result = caseIUnit(iProject);
+				if (result == null) result = caseIModelElement(iProject);
+				if (result == null) result = caseEModelElement(iProject);
+				if (result == null) result = defaultCase(theEObject);
+				return result;
+			}
+			case UMLRpyPackage.IPROPERTY: {
+				IProperty iProperty = (IProperty)theEObject;
+				T result = caseIProperty(iProperty);
+				if (result == null) result = defaultCase(theEObject);
+				return result;
+			}
+			case UMLRpyPackage.IPROPERTY_CONTAINER: {
+				IPropertyContainer iPropertyContainer = (IPropertyContainer)theEObject;
+				T result = caseIPropertyContainer(iPropertyContainer);
+				if (result == null) result = casePropertiesType(iPropertyContainer);
+				if (result == null) result = defaultCase(theEObject);
+				return result;
+			}
+			case UMLRpyPackage.IPROPERTY_METACLASS: {
+				IPropertyMetaclass iPropertyMetaclass = (IPropertyMetaclass)theEObject;
+				T result = caseIPropertyMetaclass(iPropertyMetaclass);
+				if (result == null) result = defaultCase(theEObject);
+				return result;
+			}
+			case UMLRpyPackage.IPROPERTY_SUBJECT: {
+				IPropertySubject iPropertySubject = (IPropertySubject)theEObject;
+				T result = caseIPropertySubject(iPropertySubject);
+				if (result == null) result = defaultCase(theEObject);
+				return result;
+			}
+			case UMLRpyPackage.IRECEPTION: {
+				IReception iReception = (IReception)theEObject;
+				T result = caseIReception(iReception);
+				if (result == null) result = caseOperationsType(iReception);
+				if (result == null) result = caseItemsType(iReception);
+				if (result == null) result = caseDependsOnType(iReception);
+				if (result == null) result = caseElementsType(iReception);
+				if (result == null) result = defaultCase(theEObject);
+				return result;
+			}
+			case UMLRpyPackage.IREFERENCE_ACTIVITY: {
+				IReferenceActivity iReferenceActivity = (IReferenceActivity)theEObject;
+				T result = caseIReferenceActivity(iReferenceActivity);
+				if (result == null) result = caseDependsOnType(iReferenceActivity);
+				if (result == null) result = caseParentType(iReferenceActivity);
+				if (result == null) result = caseItsTargetType(iReferenceActivity);
+				if (result == null) result = caseElementsType(iReferenceActivity);
+				if (result == null) result = defaultCase(theEObject);
+				return result;
+			}
+			case UMLRpyPackage.IRELATION: {
+				IRelation iRelation = (IRelation)theEObject;
+				T result = caseIRelation(iRelation);
+				if (result == null) result = caseIUnit(iRelation);
+				if (result == null) result = caseIModelElement(iRelation);
+				if (result == null) result = caseEModelElement(iRelation);
+				if (result == null) result = defaultCase(theEObject);
+				return result;
+			}
+			case UMLRpyPackage.IREQUIREMENT: {
+				IRequirement iRequirement = (IRequirement)theEObject;
+				T result = caseIRequirement(iRequirement);
+				if (result == null) result = caseIAnnotation(iRequirement);
+				if (result == null) result = caseDependsOnType(iRequirement);
+				if (result == null) result = caseIUnit(iRequirement);
+				if (result == null) result = caseElementsType(iRequirement);
+				if (result == null) result = caseIModelElement(iRequirement);
+				if (result == null) result = caseEModelElement(iRequirement);
+				if (result == null) result = defaultCase(theEObject);
+				return result;
+			}
+			case UMLRpyPackage.ISEND_ACTION: {
+				ISendAction iSendAction = (ISendAction)theEObject;
+				T result = caseISendAction(iSendAction);
+				if (result == null) result = caseIAction(iSendAction);
+				if (result == null) result = caseIModelElement(iSendAction);
+				if (result == null) result = caseEModelElement(iSendAction);
+				if (result == null) result = defaultCase(theEObject);
+				return result;
+			}
+			case UMLRpyPackage.ISEQUENCE_DIAGRAM: {
+				ISequenceDiagram iSequenceDiagram = (ISequenceDiagram)theEObject;
+				T result = caseISequenceDiagram(iSequenceDiagram);
+				if (result == null) result = caseIDiagram(iSequenceDiagram);
+				if (result == null) result = caseIUnit(iSequenceDiagram);
+				if (result == null) result = caseTheMainDiagramType(iSequenceDiagram);
+				if (result == null) result = caseDeclarativesType(iSequenceDiagram);
+				if (result == null) result = caseDependsOnType(iSequenceDiagram);
+				if (result == null) result = caseTargetType(iSequenceDiagram);
+				if (result == null) result = caseIModelElement(iSequenceDiagram);
+				if (result == null) result = caseM_pModelObjectType(iSequenceDiagram);
+				if (result == null) result = caseElementsType(iSequenceDiagram);
+				if (result == null) result = caseEModelElement(iSequenceDiagram);
+				if (result == null) result = defaultCase(theEObject);
+				return result;
+			}
+			case UMLRpyPackage.ISLOT: {
+				ISlot iSlot = (ISlot)theEObject;
+				T result = caseISlot(iSlot);
+				if (result == null) result = defaultCase(theEObject);
+				return result;
+			}
+			case UMLRpyPackage.ISTATE: {
+				IState iState = (IState)theEObject;
+				T result = caseIState(iState);
+				if (result == null) result = caseIStateVertex(iState);
+				if (result == null) result = caseItsTargetType(iState);
+				if (result == null) result = caseM_pModelObjectType(iState);
+				if (result == null) result = caseDependsOnType(iState);
+				if (result == null) result = caseTargetType(iState);
+				if (result == null) result = caseIModelElement(iState);
+				if (result == null) result = caseParentType(iState);
+				if (result == null) result = caseElementsType(iState);
+				if (result == null) result = caseEModelElement(iState);
+				if (result == null) result = defaultCase(theEObject);
+				return result;
+			}
+			case UMLRpyPackage.ISTATE_CHART: {
+				IStateChart iStateChart = (IStateChart)theEObject;
+				T result = caseIStateChart(iStateChart);
+				if (result == null) result = caseIClass(iStateChart);
+				if (result == null) result = caseNestedStateChartType(iStateChart);
+				if (result == null) result = caseIClassifier(iStateChart);
+				if (result == null) result = caseDeclarativesType(iStateChart);
+				if (result == null) result = caseM_pBaseType(iStateChart);
+				if (result == null) result = caseDependsOnType(iStateChart);
+				if (result == null) result = caseM_subjectType(iStateChart);
+				if (result == null) result = caseValueType(iStateChart);
+				if (result == null) result = caseConveyedType(iStateChart);
+				if (result == null) result = caseTargetType(iStateChart);
+				if (result == null) result = caseItsStateChartType(iStateChart);
+				if (result == null) result = caseIUnit(iStateChart);
+				if (result == null) result = caseM_pModelObjectType(iStateChart);
+				if (result == null) result = caseElementsType(iStateChart);
+				if (result == null) result = caseIModelElement(iStateChart);
+				if (result == null) result = caseEModelElement(iStateChart);
+				if (result == null) result = defaultCase(theEObject);
+				return result;
+			}
+			case UMLRpyPackage.ISTATE_CHART_DIAGRAM: {
+				IStateChartDiagram iStateChartDiagram = (IStateChartDiagram)theEObject;
+				T result = caseIStateChartDiagram(iStateChartDiagram);
+				if (result == null) result = caseIDiagram(iStateChartDiagram);
+				if (result == null) result = caseIUnit(iStateChartDiagram);
+				if (result == null) result = caseTheMainDiagramType(iStateChartDiagram);
+				if (result == null) result = caseDeclarativesType(iStateChartDiagram);
+				if (result == null) result = caseDependsOnType(iStateChartDiagram);
+				if (result == null) result = caseTargetType(iStateChartDiagram);
+				if (result == null) result = caseIModelElement(iStateChartDiagram);
+				if (result == null) result = caseM_pModelObjectType(iStateChartDiagram);
+				if (result == null) result = caseElementsType(iStateChartDiagram);
+				if (result == null) result = caseEModelElement(iStateChartDiagram);
+				if (result == null) result = defaultCase(theEObject);
+				return result;
+			}
+			case UMLRpyPackage.ISTATE_VERTEX: {
+				IStateVertex iStateVertex = (IStateVertex)theEObject;
+				T result = caseIStateVertex(iStateVertex);
+				if (result == null) result = caseIModelElement(iStateVertex);
+				if (result == null) result = caseParentType(iStateVertex);
+				if (result == null) result = caseEModelElement(iStateVertex);
+				if (result == null) result = defaultCase(theEObject);
+				return result;
+			}
+			case UMLRpyPackage.ISTEREOTYPE: {
+				IStereotype iStereotype = (IStereotype)theEObject;
+				T result = caseIStereotype(iStereotype);
+				if (result == null) result = caseIClassifier(iStereotype);
+				if (result == null) result = caseValueType(iStereotype);
+				if (result == null) result = caseDeclarativesType(iStereotype);
+				if (result == null) result = caseDependsOnType(iStereotype);
+				if (result == null) result = caseM_pModelObjectType(iStereotype);
+				if (result == null) result = caseIUnit(iStereotype);
+				if (result == null) result = caseElementsType(iStereotype);
+				if (result == null) result = caseIModelElement(iStereotype);
+				if (result == null) result = caseEModelElement(iStereotype);
+				if (result == null) result = defaultCase(theEObject);
+				return result;
+			}
+			case UMLRpyPackage.ISTRUCTURE_DIAGRAM: {
+				IStructureDiagram iStructureDiagram = (IStructureDiagram)theEObject;
+				T result = caseIStructureDiagram(iStructureDiagram);
+				if (result == null) result = caseIDiagram(iStructureDiagram);
+				if (result == null) result = caseIUnit(iStructureDiagram);
+				if (result == null) result = caseTheMainDiagramType(iStructureDiagram);
+				if (result == null) result = caseDeclarativesType(iStructureDiagram);
+				if (result == null) result = caseDependsOnType(iStructureDiagram);
+				if (result == null) result = caseTargetType(iStructureDiagram);
+				if (result == null) result = caseIModelElement(iStructureDiagram);
+				if (result == null) result = caseM_pModelObjectType(iStructureDiagram);
+				if (result == null) result = caseElementsType(iStructureDiagram);
+				if (result == null) result = caseEModelElement(iStructureDiagram);
+				if (result == null) result = defaultCase(theEObject);
+				return result;
+			}
+			case UMLRpyPackage.ISUBSYSTEM: {
+				ISubsystem iSubsystem = (ISubsystem)theEObject;
+				T result = caseISubsystem(iSubsystem);
+				if (result == null) result = caseOwnerHandleType(iSubsystem);
+				if (result == null) result = caseDependsOnType(iSubsystem);
+				if (result == null) result = caseDeclarativesType(iSubsystem);
+				if (result == null) result = caseM_pModelObjectType(iSubsystem);
+				if (result == null) result = caseTargetType(iSubsystem);
+				if (result == null) result = caseDefaultSubsystemType(iSubsystem);
+				if (result == null) result = caseElementsType(iSubsystem);
+				if (result == null) result = caseIModelElement(iSubsystem);
+				if (result == null) result = caseEModelElement(iSubsystem);
+				if (result == null) result = defaultCase(theEObject);
+				return result;
+			}
+			case UMLRpyPackage.ISWIMLANE: {
+				ISwimlane iSwimlane = (ISwimlane)theEObject;
+				T result = caseISwimlane(iSwimlane);
+				if (result == null) result = caseIModelElement(iSwimlane);
+				if (result == null) result = caseEModelElement(iSwimlane);
+				if (result == null) result = defaultCase(theEObject);
+				return result;
+			}
+			case UMLRpyPackage.ISYS_ML_PORT: {
+				ISysMLPort iSysMLPort = (ISysMLPort)theEObject;
+				T result = caseISysMLPort(iSysMLPort);
+				if (result == null) result = caseIInstance(iSysMLPort);
+				if (result == null) result = caseDependsOnType(iSysMLPort);
+				if (result == null) result = caseM_pFormalMessageType(iSysMLPort);
+				if (result == null) result = caseToLinkType(iSysMLPort);
+				if (result == null) result = caseEnd2_Type(iSysMLPort);
+				if (result == null) result = caseIRelation(iSysMLPort);
+				if (result == null) result = caseElementsType(iSysMLPort);
+				if (result == null) result = caseFromLinkType(iSysMLPort);
+				if (result == null) result = caseEnd1_Type(iSysMLPort);
+				if (result == null) result = caseIUnit(iSysMLPort);
+				if (result == null) result = caseIModelElement(iSysMLPort);
+				if (result == null) result = caseEModelElement(iSysMLPort);
+				if (result == null) result = defaultCase(theEObject);
+				return result;
+			}
+			case UMLRpyPackage.ITABLE_INSTANCE: {
+				ITableInstance iTableInstance = (ITableInstance)theEObject;
+				T result = caseITableInstance(iTableInstance);
+				if (result == null) result = caseTableInstancesType(iTableInstance);
+				if (result == null) result = caseDependsOnType(iTableInstance);
+				if (result == null) result = caseElementsType(iTableInstance);
+				if (result == null) result = defaultCase(theEObject);
+				return result;
+			}
+			case UMLRpyPackage.ITABLE_LAYOUT: {
+				ITableLayout iTableLayout = (ITableLayout)theEObject;
+				T result = caseITableLayout(iTableLayout);
+				if (result == null) result = caseIUnit(iTableLayout);
+				if (result == null) result = caseValueType(iTableLayout);
+				if (result == null) result = caseIModelElement(iTableLayout);
+				if (result == null) result = caseEModelElement(iTableLayout);
+				if (result == null) result = defaultCase(theEObject);
+				return result;
+			}
+			case UMLRpyPackage.ITABLE_VIEW: {
+				ITableView iTableView = (ITableView)theEObject;
+				T result = caseITableView(iTableView);
+				if (result == null) result = caseIUnit(iTableView);
+				if (result == null) result = caseIModelElement(iTableView);
+				if (result == null) result = caseEModelElement(iTableView);
+				if (result == null) result = defaultCase(theEObject);
+				return result;
+			}
+			case UMLRpyPackage.ITAG: {
+				ITag iTag = (ITag)theEObject;
+				T result = caseITag(iTag);
+				if (result == null) result = caseIVariable(iTag);
+				if (result == null) result = caseM_pModelObjectType(iTag);
+				if (result == null) result = caseIUnit(iTag);
+				if (result == null) result = caseIModelElement(iTag);
+				if (result == null) result = caseEModelElement(iTag);
+				if (result == null) result = defaultCase(theEObject);
+				return result;
+			}
+			case UMLRpyPackage.ITEMPLATE_INST: {
+				ITemplateInst iTemplateInst = (ITemplateInst)theEObject;
+				T result = caseITemplateInst(iTemplateInst);
+				if (result == null) result = defaultCase(theEObject);
+				return result;
+			}
+			case UMLRpyPackage.ITEMPLATE_INST_PARAM: {
+				ITemplateInstParam iTemplateInstParam = (ITemplateInstParam)theEObject;
+				T result = caseITemplateInstParam(iTemplateInstParam);
+				if (result == null) result = defaultCase(theEObject);
+				return result;
+			}
+			case UMLRpyPackage.ITEMPLATE_INSTANTIATION: {
+				ITemplateInstantiation iTemplateInstantiation = (ITemplateInstantiation)theEObject;
+				T result = caseITemplateInstantiation(iTemplateInstantiation);
+				if (result == null) result = caseIModelElement(iTemplateInstantiation);
+				if (result == null) result = caseEModelElement(iTemplateInstantiation);
+				if (result == null) result = defaultCase(theEObject);
+				return result;
+			}
+			case UMLRpyPackage.ITEMPLATE_INSTANTIATION_PARAMETER: {
+				ITemplateInstantiationParameter iTemplateInstantiationParameter = (ITemplateInstantiationParameter)theEObject;
+				T result = caseITemplateInstantiationParameter(iTemplateInstantiationParameter);
+				if (result == null) result = caseIModelElement(iTemplateInstantiationParameter);
+				if (result == null) result = caseEModelElement(iTemplateInstantiationParameter);
+				if (result == null) result = defaultCase(theEObject);
+				return result;
+			}
+			case UMLRpyPackage.ITEMPLATE_PARAMETER: {
+				ITemplateParameter iTemplateParameter = (ITemplateParameter)theEObject;
+				T result = caseITemplateParameter(iTemplateParameter);
+				if (result == null) result = caseIVariable(iTemplateParameter);
+				if (result == null) result = caseIUnit(iTemplateParameter);
+				if (result == null) result = caseIModelElement(iTemplateParameter);
+				if (result == null) result = caseEModelElement(iTemplateParameter);
+				if (result == null) result = defaultCase(theEObject);
+				return result;
+			}
+			case UMLRpyPackage.ITIME_EVENT: {
+				ITimeEvent iTimeEvent = (ITimeEvent)theEObject;
+				T result = caseITimeEvent(iTimeEvent);
+				if (result == null) result = caseItsTargetType(iTimeEvent);
+				if (result == null) result = defaultCase(theEObject);
+				return result;
+			}
+			case UMLRpyPackage.ITIMEOUT: {
+				ITimeout iTimeout = (ITimeout)theEObject;
+				T result = caseITimeout(iTimeout);
+				if (result == null) result = caseItsTriggerType(iTimeout);
+				if (result == null) result = defaultCase(theEObject);
+				return result;
+			}
+			case UMLRpyPackage.ITRANSITION: {
+				ITransition iTransition = (ITransition)theEObject;
+				T result = caseITransition(iTransition);
+				if (result == null) result = caseIModelElement(iTransition);
+				if (result == null) result = caseTransitionsType(iTransition);
+				if (result == null) result = caseDependsOnType(iTransition);
+				if (result == null) result = caseTargetType(iTransition);
+				if (result == null) result = caseEModelElement(iTransition);
+				if (result == null) result = caseElementsType(iTransition);
+				if (result == null) result = defaultCase(theEObject);
+				return result;
+			}
+			case UMLRpyPackage.ITRIGGER: {
+				ITrigger iTrigger = (ITrigger)theEObject;
+				T result = caseITrigger(iTrigger);
+				if (result == null) result = caseIModelElement(iTrigger);
+				if (result == null) result = caseEModelElement(iTrigger);
+				if (result == null) result = defaultCase(theEObject);
+				return result;
+			}
+			case UMLRpyPackage.ITRIGGERED: {
+				ITriggered iTriggered = (ITriggered)theEObject;
+				T result = caseITriggered(iTriggered);
+				if (result == null) result = caseOperationsType(iTriggered);
+				if (result == null) result = caseM_pFormalMessageType(iTriggered);
+				if (result == null) result = caseItemsType(iTriggered);
+				if (result == null) result = caseIModelElement(iTriggered);
+				if (result == null) result = caseEModelElement(iTriggered);
+				if (result == null) result = defaultCase(theEObject);
+				return result;
+			}
+			case UMLRpyPackage.ITYPE: {
+				IType iType = (IType)theEObject;
+				T result = caseIType(iType);
+				if (result == null) result = caseIClassifier(iType);
+				if (result == null) result = caseDeclarativesType(iType);
+				if (result == null) result = caseDependsOnType(iType);
+				if (result == null) result = caseM_subjectType(iType);
+				if (result == null) result = caseValueType(iType);
+				if (result == null) result = caseTargetType(iType);
+				if (result == null) result = caseM_pModelObjectType(iType);
+				if (result == null) result = caseIUnit(iType);
+				if (result == null) result = caseElementsType(iType);
+				if (result == null) result = caseIModelElement(iType);
+				if (result == null) result = caseEModelElement(iType);
+				if (result == null) result = defaultCase(theEObject);
+				return result;
+			}
+			case UMLRpyPackage.IUC_DIAGRAM: {
+				IUCDiagram iucDiagram = (IUCDiagram)theEObject;
+				T result = caseIUCDiagram(iucDiagram);
+				if (result == null) result = caseTheMainDiagramType(iucDiagram);
+				if (result == null) result = caseDependsOnType(iucDiagram);
+				if (result == null) result = caseDeclarativesType(iucDiagram);
+				if (result == null) result = caseM_pModelObjectType(iucDiagram);
+				if (result == null) result = caseElementsType(iucDiagram);
+				if (result == null) result = defaultCase(theEObject);
+				return result;
+			}
+			case UMLRpyPackage.IUNIT: {
+				IUnit iUnit = (IUnit)theEObject;
+				T result = caseIUnit(iUnit);
+				if (result == null) result = caseIModelElement(iUnit);
+				if (result == null) result = caseEModelElement(iUnit);
+				if (result == null) result = defaultCase(theEObject);
+				return result;
+			}
+			case UMLRpyPackage.IUSE_CASE: {
+				IUseCase iUseCase = (IUseCase)theEObject;
+				T result = caseIUseCase(iUseCase);
+				if (result == null) result = caseIClassifier(iUseCase);
+				if (result == null) result = caseDependsOnType(iUseCase);
+				if (result == null) result = caseEnd2_Type(iUseCase);
+				if (result == null) result = caseTargetType(iUseCase);
+				if (result == null) result = caseIUnit(iUseCase);
+				if (result == null) result = caseElementsType(iUseCase);
+				if (result == null) result = caseEnd1_Type(iUseCase);
+				if (result == null) result = caseIModelElement(iUseCase);
+				if (result == null) result = caseEModelElement(iUseCase);
+				if (result == null) result = defaultCase(theEObject);
+				return result;
+			}
+			case UMLRpyPackage.IUSE_CASE_DIAGRAM: {
+				IUseCaseDiagram iUseCaseDiagram = (IUseCaseDiagram)theEObject;
+				T result = caseIUseCaseDiagram(iUseCaseDiagram);
+				if (result == null) result = caseIDiagram(iUseCaseDiagram);
+				if (result == null) result = caseIUnit(iUseCaseDiagram);
+				if (result == null) result = caseTheMainDiagramType(iUseCaseDiagram);
+				if (result == null) result = caseDeclarativesType(iUseCaseDiagram);
+				if (result == null) result = caseDependsOnType(iUseCaseDiagram);
+				if (result == null) result = caseTargetType(iUseCaseDiagram);
+				if (result == null) result = caseIModelElement(iUseCaseDiagram);
+				if (result == null) result = caseM_pModelObjectType(iUseCaseDiagram);
+				if (result == null) result = caseElementsType(iUseCaseDiagram);
+				if (result == null) result = caseEModelElement(iUseCaseDiagram);
+				if (result == null) result = defaultCase(theEObject);
+				return result;
+			}
+			case UMLRpyPackage.IUSE_CASE_STEREO_TYPE: {
+				IUseCaseStereoType iUseCaseStereoType = (IUseCaseStereoType)theEObject;
+				T result = caseIUseCaseStereoType(iUseCaseStereoType);
+				if (result == null) result = defaultCase(theEObject);
+				return result;
+			}
+			case UMLRpyPackage.IVALUE_SPECIFICATION: {
+				IValueSpecification iValueSpecification = (IValueSpecification)theEObject;
+				T result = caseIValueSpecification(iValueSpecification);
+				if (result == null) result = caseIModelElement(iValueSpecification);
+				if (result == null) result = caseEModelElement(iValueSpecification);
+				if (result == null) result = defaultCase(theEObject);
+				return result;
+			}
+			case UMLRpyPackage.IVARIABLE: {
+				IVariable iVariable = (IVariable)theEObject;
+				T result = caseIVariable(iVariable);
+				if (result == null) result = caseIUnit(iVariable);
+				if (result == null) result = caseIModelElement(iVariable);
+				if (result == null) result = caseEModelElement(iVariable);
+				if (result == null) result = defaultCase(theEObject);
+				return result;
+			}
+			case UMLRpyPackage.INVERSE_TYPE: {
+				InverseType inverseType = (InverseType)theEObject;
+				T result = caseInverseType(inverseType);
+				if (result == null) result = defaultCase(theEObject);
+				return result;
+			}
+			case UMLRpyPackage.ITEMS_TYPE: {
+				ItemsType itemsType = (ItemsType)theEObject;
+				T result = caseItemsType(itemsType);
+				if (result == null) result = defaultCase(theEObject);
+				return result;
+			}
+			case UMLRpyPackage.ITS_LABEL_TYPE: {
+				ItsLabelType itsLabelType = (ItsLabelType)theEObject;
+				T result = caseItsLabelType(itsLabelType);
+				if (result == null) result = defaultCase(theEObject);
+				return result;
+			}
+			case UMLRpyPackage.ITS_STATE_CHART_TYPE: {
+				ItsStateChartType itsStateChartType = (ItsStateChartType)theEObject;
+				T result = caseItsStateChartType(itsStateChartType);
+				if (result == null) result = defaultCase(theEObject);
+				return result;
+			}
+			case UMLRpyPackage.ITS_TARGET_TYPE: {
+				ItsTargetType itsTargetType = (ItsTargetType)theEObject;
+				T result = caseItsTargetType(itsTargetType);
+				if (result == null) result = defaultCase(theEObject);
+				return result;
+			}
+			case UMLRpyPackage.ITS_TRIGGER_TYPE: {
+				ItsTriggerType itsTriggerType = (ItsTriggerType)theEObject;
+				T result = caseItsTriggerType(itsTriggerType);
+				if (result == null) result = defaultCase(theEObject);
+				return result;
+			}
+			case UMLRpyPackage.LINKS_TYPE: {
+				LinksType linksType = (LinksType)theEObject;
+				T result = caseLinksType(linksType);
+				if (result == null) result = defaultCase(theEObject);
+				return result;
+			}
+			case UMLRpyPackage.MHTARGET_TYPE: {
+				M_hTargetType m_hTargetType = (M_hTargetType)theEObject;
+				T result = caseM_hTargetType(m_hTargetType);
+				if (result == null) result = defaultCase(theEObject);
+				return result;
+			}
+			case UMLRpyPackage.MPBASE_TYPE: {
+				M_pBaseType m_pBaseType = (M_pBaseType)theEObject;
+				T result = caseM_pBaseType(m_pBaseType);
+				if (result == null) result = caseM_pModelObjectType(m_pBaseType);
+				if (result == null) result = defaultCase(theEObject);
+				return result;
+			}
+			case UMLRpyPackage.MPFORMAL_MESSAGE_TYPE: {
+				M_pFormalMessageType m_pFormalMessageType = (M_pFormalMessageType)theEObject;
+				T result = caseM_pFormalMessageType(m_pFormalMessageType);
+				if (result == null) result = defaultCase(theEObject);
+				return result;
+			}
+			case UMLRpyPackage.MPMODEL_OBJECT_TYPE: {
+				M_pModelObjectType m_pModelObjectType = (M_pModelObjectType)theEObject;
+				T result = caseM_pModelObjectType(m_pModelObjectType);
+				if (result == null) result = defaultCase(theEObject);
+				return result;
+			}
+			case UMLRpyPackage.MPROOT_TYPE: {
+				M_pRootType m_pRootType = (M_pRootType)theEObject;
+				T result = caseM_pRootType(m_pRootType);
+				if (result == null) result = defaultCase(theEObject);
+				return result;
+			}
+			case UMLRpyPackage.MSUBJECT_TYPE: {
+				M_subjectType m_subjectType = (M_subjectType)theEObject;
+				T result = caseM_subjectType(m_subjectType);
+				if (result == null) result = defaultCase(theEObject);
+				return result;
+			}
+			case UMLRpyPackage.MATRIX_INSTANCES_TYPE: {
+				MatrixInstancesType matrixInstancesType = (MatrixInstancesType)theEObject;
+				T result = caseMatrixInstancesType(matrixInstancesType);
+				if (result == null) result = defaultCase(theEObject);
+				return result;
+			}
+			case UMLRpyPackage.NESTED_STATE_CHART_TYPE: {
+				NestedStateChartType nestedStateChartType = (NestedStateChartType)theEObject;
+				T result = caseNestedStateChartType(nestedStateChartType);
+				if (result == null) result = caseItsStateChartType(nestedStateChartType);
+				if (result == null) result = defaultCase(theEObject);
+				return result;
+			}
+			case UMLRpyPackage.OBJECT_LINKS_TYPE: {
+				ObjectLinksType objectLinksType = (ObjectLinksType)theEObject;
+				T result = caseObjectLinksType(objectLinksType);
+				if (result == null) result = defaultCase(theEObject);
+				return result;
+			}
+			case UMLRpyPackage.OPERATIONS_TYPE: {
+				OperationsType operationsType = (OperationsType)theEObject;
+				T result = caseOperationsType(operationsType);
+				if (result == null) result = defaultCase(theEObject);
+				return result;
+			}
+			case UMLRpyPackage.OWNER_HANDLE_TYPE: {
+				OwnerHandleType ownerHandleType = (OwnerHandleType)theEObject;
+				T result = caseOwnerHandleType(ownerHandleType);
+				if (result == null) result = caseDefaultSubsystemType(ownerHandleType);
+				if (result == null) result = caseIModelElement(ownerHandleType);
+				if (result == null) result = caseEModelElement(ownerHandleType);
+				if (result == null) result = defaultCase(theEObject);
+				return result;
+			}
+			case UMLRpyPackage.PMESSAGE_HANDLER_TYPE: {
+				P_MessageHandlerType p_MessageHandlerType = (P_MessageHandlerType)theEObject;
+				T result = caseP_MessageHandlerType(p_MessageHandlerType);
+				if (result == null) result = defaultCase(theEObject);
+				return result;
+			}
+			case UMLRpyPackage.PARENT_TYPE: {
+				ParentType parentType = (ParentType)theEObject;
+				T result = caseParentType(parentType);
+				if (result == null) result = defaultCase(theEObject);
+				return result;
+			}
+			case UMLRpyPackage.PROPERTIES_TYPE: {
+				PropertiesType propertiesType = (PropertiesType)theEObject;
+				T result = casePropertiesType(propertiesType);
+				if (result == null) result = defaultCase(theEObject);
+				return result;
+			}
+			case UMLRpyPackage.TABLE_DATA_DEFINITION: {
+				TableDataDefinition tableDataDefinition = (TableDataDefinition)theEObject;
+				T result = caseTableDataDefinition(tableDataDefinition);
+				if (result == null) result = defaultCase(theEObject);
+				return result;
+			}
+			case UMLRpyPackage.TABLE_INSTANCES_TYPE: {
+				TableInstancesType tableInstancesType = (TableInstancesType)theEObject;
+				T result = caseTableInstancesType(tableInstancesType);
+				if (result == null) result = defaultCase(theEObject);
+				return result;
+			}
+			case UMLRpyPackage.TARGET_TYPE: {
+				TargetType targetType = (TargetType)theEObject;
+				T result = caseTargetType(targetType);
+				if (result == null) result = defaultCase(theEObject);
+				return result;
+			}
+			case UMLRpyPackage.THE_MAIN_DIAGRAM_TYPE: {
+				TheMainDiagramType theMainDiagramType = (TheMainDiagramType)theEObject;
+				T result = caseTheMainDiagramType(theMainDiagramType);
+				if (result == null) result = caseM_pModelObjectType(theMainDiagramType);
+				if (result == null) result = defaultCase(theEObject);
+				return result;
+			}
+			case UMLRpyPackage.TO_LINK_TYPE: {
+				ToLinkType toLinkType = (ToLinkType)theEObject;
+				T result = caseToLinkType(toLinkType);
+				if (result == null) result = caseFromLinkType(toLinkType);
+				if (result == null) result = defaultCase(theEObject);
+				return result;
+			}
+			case UMLRpyPackage.TRANSITIONS_TYPE: {
+				TransitionsType transitionsType = (TransitionsType)theEObject;
+				T result = caseTransitionsType(transitionsType);
+				if (result == null) result = defaultCase(theEObject);
+				return result;
+			}
+			case UMLRpyPackage.UNKNOWN_TYPE: {
+				UnknownType unknownType = (UnknownType)theEObject;
+				T result = caseUnknownType(unknownType);
+				if (result == null) result = defaultCase(theEObject);
+				return result;
+			}
+			case UMLRpyPackage.VALUE_TYPE: {
+				ValueType valueType = (ValueType)theEObject;
+				T result = caseValueType(valueType);
+				if (result == null) result = defaultCase(theEObject);
+				return result;
+			}
+			default: return defaultCase(theEObject);
+		}
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>Associations Type</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>Associations Type</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseAssociationsType(AssociationsType object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>CCollaboration Chart</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>CCollaboration Chart</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseCCollaborationChart(CCollaborationChart object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>CGI Action State</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>CGI Action State</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseCGIActionState(CGIActionState object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>CGI Active X</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>CGI Active X</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseCGIActiveX(CGIActiveX object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>CGI Anchor</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>CGI Anchor</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseCGIAnchor(CGIAnchor object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>CGI Annotation</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>CGI Annotation</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseCGIAnnotation(CGIAnnotation object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>CGI Arrow</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>CGI Arrow</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseCGIArrow(CGIArrow object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>CGI Association End</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>CGI Association End</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseCGIAssociationEnd(CGIAssociationEnd object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>CGI Association Role</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>CGI Association Role</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseCGIAssociationRole(CGIAssociationRole object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>CGI Basic Class</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>CGI Basic Class</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseCGIBasicClass(CGIBasicClass object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>CGI Block State</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>CGI Block State</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseCGIBlockState(CGIBlockState object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>CGI Box</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>CGI Box</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseCGIBox(CGIBox object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>CGI Button Array</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>CGI Button Array</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseCGIButtonArray(CGIButtonArray object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>CGI Class</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>CGI Class</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseCGIClass(CGIClass object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>CGI Class Chart</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>CGI Class Chart</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseCGIClassChart(CGIClassChart object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>CGI Classifier Role</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>CGI Classifier Role</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseCGIClassifierRole(CGIClassifierRole object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>CGI Compartment</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>CGI Compartment</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseCGICompartment(CGICompartment object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>CGI Component</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>CGI Component</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseCGIComponent(CGIComponent object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>CGI Composite Class</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>CGI Composite Class</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseCGICompositeClass(CGICompositeClass object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>CGI Connector</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>CGI Connector</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseCGIConnector(CGIConnector object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>CGI Contain Arrow</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>CGI Contain Arrow</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseCGIContainArrow(CGIContainArrow object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>CGI Diagram Frame</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>CGI Diagram Frame</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseCGIDiagramFrame(CGIDiagramFrame object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>CGI Free Shape</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>CGI Free Shape</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseCGIFreeShape(CGIFreeShape object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>CGI Free Text</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>CGI Free Text</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseCGIFreeText(CGIFreeText object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>CGI Generic Element</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>CGI Generic Element</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseCGIGenericElement(CGIGenericElement object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>CGI Image</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>CGI Image</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseCGIImage(CGIImage object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>CGI Image Data</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>CGI Image Data</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseCGIImageData(CGIImageData object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>CGI Information Flow</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>CGI Information Flow</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseCGIInformationFlow(CGIInformationFlow object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>CGI Inheritance</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>CGI Inheritance</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseCGIInheritance(CGIInheritance object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>CGIMFC Ctrl</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>CGIMFC Ctrl</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseCGIMFCCtrl(CGIMFCCtrl object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>CGI Message Label</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>CGI Message Label</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseCGIMessageLabel(CGIMessageLabel object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>CGI Msc Chart</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>CGI Msc Chart</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseCGIMscChart(CGIMscChart object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>CGI Msc Column CR</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>CGI Msc Column CR</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseCGIMscColumnCR(CGIMscColumnCR object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>CGI Msc Condition Mark</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>CGI Msc Condition Mark</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseCGIMscConditionMark(CGIMscConditionMark object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>CGI Msc Execution Occurrence</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>CGI Msc Execution Occurrence</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseCGIMscExecutionOccurrence(CGIMscExecutionOccurrence object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>CGI Msc Interaction Occurrence</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>CGI Msc Interaction Occurrence</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseCGIMscInteractionOccurrence(CGIMscInteractionOccurrence object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>CGI Msc Interaction Operand</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>CGI Msc Interaction Operand</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseCGIMscInteractionOperand(CGIMscInteractionOperand object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>CGI Msc Interaction Operator</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>CGI Msc Interaction Operator</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseCGIMscInteractionOperator(CGIMscInteractionOperator object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>CGI Msc Message</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>CGI Msc Message</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseCGIMscMessage(CGIMscMessage object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>CGI Object Instance</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>CGI Object Instance</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseCGIObjectInstance(CGIObjectInstance object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>CGI Object Link</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>CGI Object Link</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseCGIObjectLink(CGIObjectLink object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>CGI Package</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>CGI Package</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseCGIPackage(CGIPackage object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>CGI Partition</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>CGI Partition</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseCGIPartition(CGIPartition object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>CGI Port Connector</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>CGI Port Connector</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseCGIPortConnector(CGIPortConnector object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>CGI State</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>CGI State</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseCGIState(CGIState object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>CGI State Chart</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>CGI State Chart</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseCGIStateChart(CGIStateChart object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>CGI Swimlane Frame</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>CGI Swimlane Frame</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseCGISwimlaneFrame(CGISwimlaneFrame object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>CGI Text</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>CGI Text</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseCGIText(CGIText object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>CGI Text Box</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>CGI Text Box</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseCGITextBox(CGITextBox object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>CGI Trans</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>CGI Trans</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseCGITrans(CGITrans object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>Coll Event</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>Coll Event</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseCollEvent(CollEvent object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>Compartments Type</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>Compartments Type</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseCompartmentsType(CompartmentsType object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>Components Type</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>Components Type</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseComponentsType(ComponentsType object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>Conveyed Type</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>Conveyed Type</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseConveyedType(ConveyedType object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>Declaratives Type</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>Declaratives Type</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseDeclarativesType(DeclarativesType object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>Default Subsystem Type</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>Default Subsystem Type</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseDefaultSubsystemType(DefaultSubsystemType object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>Default Trans Type</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>Default Trans Type</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseDefaultTransType(DefaultTransType object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>Depends On Type</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>Depends On Type</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseDependsOnType(DependsOnType object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>Description Type</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>Description Type</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseDescriptionType(DescriptionType object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>Elements Type</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>Elements Type</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseElementsType(ElementsType object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>Embeded Files Type</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>Embeded Files Type</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseEmbededFilesType(EmbededFilesType object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>End1 Type</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>End1 Type</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseEnd1_Type(End1_Type object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>End2 Type</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>End2 Type</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseEnd2_Type(End2_Type object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>Files Type</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>Files Type</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseFilesType(FilesType object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>From Link Type</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>From Link Type</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseFromLinkType(FromLinkType object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>Graph Elements Type</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>Graph Elements Type</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseGraphElementsType(GraphElementsType object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>Graphic Chart Type</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>Graphic Chart Type</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseGraphicChartType(GraphicChartType object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>Hyper Links Type</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>Hyper Links Type</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseHyperLinksType(HyperLinksType object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>IAccept Event Action</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>IAccept Event Action</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseIAcceptEventAction(IAcceptEventAction object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>IAccept Time Event</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>IAccept Time Event</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseIAcceptTimeEvent(IAcceptTimeEvent object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>IAction</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>IAction</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseIAction(IAction object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>IActivity Diagram</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>IActivity Diagram</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseIActivityDiagram(IActivityDiagram object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>IActivity Graph</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>IActivity Graph</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseIActivityGraph(IActivityGraph object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>IActor</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>IActor</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseIActor(IActor object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>IAnchor</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>IAnchor</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseIAnchor(IAnchor object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>IAnnotation</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>IAnnotation</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseIAnnotation(IAnnotation object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>IArgument</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>IArgument</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseIArgument(IArgument object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>IAssociation Class</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>IAssociation Class</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseIAssociationClass(IAssociationClass object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>IAssociation End</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>IAssociation End</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseIAssociationEnd(IAssociationEnd object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>IAssociation End Handle</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>IAssociation End Handle</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseIAssociationEndHandle(IAssociationEndHandle object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>IAssociation Role</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>IAssociation Role</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseIAssociationRole(IAssociationRole object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>IAttribute</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>IAttribute</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseIAttribute(IAttribute object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>IBlock</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>IBlock</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseIBlock(IBlock object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>IBody</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>IBody</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseIBody(IBody object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>IBranch</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>IBranch</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseIBranch(IBranch object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>ICall Action</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>ICall Action</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseICallAction(ICallAction object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>ICall Operation</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>ICall Operation</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseICallOperation(ICallOperation object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>IClass</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>IClass</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseIClass(IClass object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>IClass Handle</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>IClass Handle</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseIClassHandle(IClassHandle object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>IClass Instance</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>IClass Instance</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseIClassInstance(IClassInstance object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>IClassifier</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>IClassifier</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseIClassifier(IClassifier object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>IClassifier Role</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>IClassifier Role</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseIClassifierRole(IClassifierRole object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>ICode Gen Config Info</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>ICode Gen Config Info</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseICodeGenConfigInfo(ICodeGenConfigInfo object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>ICode Gen Config Info Handle</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>ICode Gen Config Info Handle</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseICodeGenConfigInfoHandle(ICodeGenConfigInfoHandle object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>ICollaboration</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>ICollaboration</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseICollaboration(ICollaboration object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>ICollaboration Diagram</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>ICollaboration Diagram</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseICollaborationDiagram(ICollaborationDiagram object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>IColor</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>IColor</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseIColor(IColor object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>ICombined Fragment</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>ICombined Fragment</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseICombinedFragment(ICombinedFragment object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>IComment</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>IComment</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseIComment(IComment object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>IComponent</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>IComponent</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseIComponent(IComponent object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>IComponent Diagram</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>IComponent Diagram</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseIComponentDiagram(IComponentDiagram object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>IComponent Instance</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>IComponent Instance</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseIComponentInstance(IComponentInstance object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>IConfiguration</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>IConfiguration</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseIConfiguration(IConfiguration object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>IConnector</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>IConnector</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseIConnector(IConnector object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>IConstraint</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>IConstraint</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseIConstraint(IConstraint object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>IConstructor</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>IConstructor</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseIConstructor(IConstructor object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>IContext 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>IContext Specification</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseIContextSpecification(IContextSpecification object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>IControlled File</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>IControlled File</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseIControlledFile(IControlledFile object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>IDefault Drvd Trans</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>IDefault Drvd Trans</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseIDefaultDrvdTrans(IDefaultDrvdTrans object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>IDependency</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>IDependency</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseIDependency(IDependency object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>IDeployment Diagram</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>IDeployment Diagram</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseIDeploymentDiagram(IDeploymentDiagram object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>IDescription</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>IDescription</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseIDescription(IDescription object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>IDestructor</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>IDestructor</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseIDestructor(IDestructor object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>IDiagram</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>IDiagram</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseIDiagram(IDiagram object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>IEmbeded File</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>IEmbeded File</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseIEmbededFile(IEmbededFile object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>IEnumeration Literal</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>IEnumeration Literal</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseIEnumerationLiteral(IEnumerationLiteral object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>IEvent</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>IEvent</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseIEvent(IEvent object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>IEvent Handle</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>IEvent Handle</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseIEventHandle(IEventHandle object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>IEvent Reception</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>IEvent Reception</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseIEventReception(IEventReception object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>IExecution Occurrence</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>IExecution Occurrence</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseIExecutionOccurrence(IExecutionOccurrence object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>IExternal Hyperlink</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>IExternal Hyperlink</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseIExternalHyperlink(IExternalHyperlink object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>IFile</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>IFile</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseIFile(IFile object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>IFile Fragment</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>IFile Fragment</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseIFileFragment(IFileFragment object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>IFlow</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>IFlow</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseIFlow(IFlow object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>IFlow Item</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>IFlow Item</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseIFlowItem(IFlowItem object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>IFlowchart</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>IFlowchart</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseIFlowchart(IFlowchart object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>IFolder</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>IFolder</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseIFolder(IFolder object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>IFork</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>IFork</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseIFork(IFork object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>IGeneralization</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>IGeneralization</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseIGeneralization(IGeneralization object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>IGuard</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>IGuard</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseIGuard(IGuard object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>IHandle With Data</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>IHandle With Data</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseIHandleWithData(IHandleWithData object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>IHistory Connector</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>IHistory Connector</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseIHistoryConnector(IHistoryConnector object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>IHyper Link</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>IHyper Link</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseIHyperLink(IHyperLink object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>IInformation Flow</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>IInformation Flow</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseIInformationFlow(IInformationFlow object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>IInformation Item</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>IInformation Item</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseIInformationItem(IInformationItem object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>IInstance</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>IInstance</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseIInstance(IInstance object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>IInstance Slot</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>IInstance Slot</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseIInstanceSlot(IInstanceSlot object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>IInstance 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>IInstance Specification</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseIInstanceSpecification(IInstanceSpecification object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>IInstance Value</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>IInstance Value</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseIInstanceValue(IInstanceValue object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>IInteraction Occurrence</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>IInteraction Occurrence</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseIInteractionOccurrence(IInteractionOccurrence object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>IInteraction Operand</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>IInteraction Operand</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseIInteractionOperand(IInteractionOperand object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>IInteraction Operator</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>IInteraction Operator</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseIInteractionOperator(IInteractionOperator object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>IInterface Item</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>IInterface Item</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseIInterfaceItem(IInterfaceItem object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>IInterface Item Trigger</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>IInterface Item Trigger</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseIInterfaceItemTrigger(IInterfaceItemTrigger object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>IInternal Hyperlink</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>IInternal Hyperlink</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseIInternalHyperlink(IInternalHyperlink object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>ILabel</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>ILabel</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseILabel(ILabel object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>ILink</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>ILink</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseILink(ILink object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>ILink Instance</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>ILink Instance</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseILinkInstance(ILinkInstance object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>ILiteral 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>ILiteral Specification</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseILiteralSpecification(ILiteralSpecification object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>IM Hyper Link</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>IM Hyper Link</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseIMHyperLink(IMHyperLink object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>IMSC</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>IMSC</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseIMSC(IMSC object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>IMatrix Instance</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>IMatrix Instance</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseIMatrixInstance(IMatrixInstance object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>IMatrix Layout</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>IMatrix Layout</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseIMatrixLayout(IMatrixLayout object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>IMatrix View</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>IMatrix View</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseIMatrixView(IMatrixView object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>IMessage</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>IMessage</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseIMessage(IMessage object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>IMessage Point</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>IMessage Point</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseIMessagePoint(IMessagePoint object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>IMeta Link Handle</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>IMeta Link Handle</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseIMetaLinkHandle(IMetaLinkHandle object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>IModel Element</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>IModel Element</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseIModelElement(IModelElement object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>IModule</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>IModule</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseIModule(IModule object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>IMultiplicity Item</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>IMultiplicity Item</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseIMultiplicityItem(IMultiplicityItem object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>INode</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>INode</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseINode(INode object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>IObject Link</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>IObject Link</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseIObjectLink(IObjectLink object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>IObject Link Handle</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>IObject Link Handle</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseIObjectLinkHandle(IObjectLinkHandle object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>IObject Model Diagram</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>IObject Model Diagram</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseIObjectModelDiagram(IObjectModelDiagram object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>IObject Node</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>IObject Node</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseIObjectNode(IObjectNode object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>IOperation</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>IOperation</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseIOperation(IOperation object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>IPackage</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>IPackage</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseIPackage(IPackage object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>IPanel Diagram</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>IPanel Diagram</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseIPanelDiagram(IPanelDiagram object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>IPart</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>IPart</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseIPart(IPart object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>IPin</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>IPin</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseIPin(IPin object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>IPort</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>IPort</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseIPort(IPort object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>IPrimitive Operation</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>IPrimitive Operation</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseIPrimitiveOperation(IPrimitiveOperation object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>IProfile</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>IProfile</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseIProfile(IProfile object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>IProject</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>IProject</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseIProject(IProject object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>IProperty</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>IProperty</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseIProperty(IProperty object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>IProperty Container</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>IProperty Container</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseIPropertyContainer(IPropertyContainer object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>IProperty Metaclass</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>IProperty Metaclass</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseIPropertyMetaclass(IPropertyMetaclass object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>IProperty Subject</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>IProperty Subject</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseIPropertySubject(IPropertySubject object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>IReception</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>IReception</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseIReception(IReception object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>IReference Activity</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>IReference Activity</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseIReferenceActivity(IReferenceActivity object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>IRelation</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>IRelation</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseIRelation(IRelation object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>IRequirement</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>IRequirement</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseIRequirement(IRequirement object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>ISend Action</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>ISend Action</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseISendAction(ISendAction object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>ISequence Diagram</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>ISequence Diagram</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseISequenceDiagram(ISequenceDiagram object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>ISlot</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>ISlot</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseISlot(ISlot object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>IState</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>IState</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseIState(IState object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>IState Chart</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>IState Chart</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseIStateChart(IStateChart object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>IState Chart Diagram</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>IState Chart Diagram</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseIStateChartDiagram(IStateChartDiagram object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>IState Vertex</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>IState Vertex</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseIStateVertex(IStateVertex object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>IStereotype</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>IStereotype</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseIStereotype(IStereotype object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>IStructure Diagram</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>IStructure Diagram</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseIStructureDiagram(IStructureDiagram object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>ISubsystem</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>ISubsystem</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseISubsystem(ISubsystem object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>ISwimlane</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>ISwimlane</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseISwimlane(ISwimlane object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>ISys ML Port</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>ISys ML Port</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseISysMLPort(ISysMLPort object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>ITable Instance</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>ITable Instance</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseITableInstance(ITableInstance object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>ITable Layout</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>ITable Layout</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseITableLayout(ITableLayout object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>ITable View</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>ITable View</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseITableView(ITableView object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>ITag</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>ITag</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseITag(ITag object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>ITemplate Inst</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>ITemplate Inst</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseITemplateInst(ITemplateInst object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>ITemplate Inst Param</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>ITemplate Inst Param</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseITemplateInstParam(ITemplateInstParam object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>ITemplate Instantiation</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>ITemplate Instantiation</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseITemplateInstantiation(ITemplateInstantiation object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>ITemplate Instantiation Parameter</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>ITemplate Instantiation Parameter</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseITemplateInstantiationParameter(ITemplateInstantiationParameter object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>ITemplate Parameter</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>ITemplate Parameter</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseITemplateParameter(ITemplateParameter object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>ITime Event</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>ITime Event</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseITimeEvent(ITimeEvent object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>ITimeout</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>ITimeout</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseITimeout(ITimeout object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>ITransition</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>ITransition</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseITransition(ITransition object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>ITrigger</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>ITrigger</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseITrigger(ITrigger object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>ITriggered</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>ITriggered</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseITriggered(ITriggered object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>IType</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>IType</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseIType(IType object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>IUC Diagram</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>IUC Diagram</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseIUCDiagram(IUCDiagram object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>IUnit</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>IUnit</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseIUnit(IUnit object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>IUse Case</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>IUse Case</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseIUseCase(IUseCase object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>IUse Case Diagram</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>IUse Case Diagram</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseIUseCaseDiagram(IUseCaseDiagram object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>IUse Case Stereo Type</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>IUse Case Stereo Type</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseIUseCaseStereoType(IUseCaseStereoType object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>IValue 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>IValue Specification</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseIValueSpecification(IValueSpecification object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>IVariable</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>IVariable</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseIVariable(IVariable object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>Inverse Type</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>Inverse Type</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseInverseType(InverseType object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>Items Type</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>Items Type</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseItemsType(ItemsType object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>Its Label Type</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>Its Label Type</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseItsLabelType(ItsLabelType object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>Its State Chart Type</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>Its State Chart Type</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseItsStateChartType(ItsStateChartType object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>Its Target Type</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>Its Target Type</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseItsTargetType(ItsTargetType object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>Its Trigger Type</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>Its Trigger Type</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseItsTriggerType(ItsTriggerType object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>Links Type</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>Links Type</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseLinksType(LinksType object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>MhTarget Type</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>MhTarget Type</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseM_hTargetType(M_hTargetType object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>MpBase Type</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>MpBase Type</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseM_pBaseType(M_pBaseType object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>MpFormal Message Type</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>MpFormal Message Type</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseM_pFormalMessageType(M_pFormalMessageType object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>MpModel Object Type</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>MpModel Object Type</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseM_pModelObjectType(M_pModelObjectType object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>MpRoot Type</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>MpRoot Type</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseM_pRootType(M_pRootType object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>Msubject Type</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>Msubject Type</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseM_subjectType(M_subjectType object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>Matrix Instances Type</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>Matrix Instances Type</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseMatrixInstancesType(MatrixInstancesType object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>Nested State Chart Type</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>Nested State Chart Type</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseNestedStateChartType(NestedStateChartType object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>Object Links Type</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>Object Links Type</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseObjectLinksType(ObjectLinksType object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>Operations Type</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>Operations Type</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseOperationsType(OperationsType object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>Owner Handle Type</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>Owner Handle Type</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseOwnerHandleType(OwnerHandleType object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>PMessage Handler Type</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>PMessage Handler Type</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseP_MessageHandlerType(P_MessageHandlerType object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>Parent Type</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>Parent Type</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseParentType(ParentType object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>Properties Type</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>Properties Type</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T casePropertiesType(PropertiesType object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>Table Data Definition</em>'.
+	 * <!-- begin-user-doc -->
+	 * This implementation returns null;
+	 * returning a non-null result will terminate the switch.
+	 * <!-- end-user-doc -->
+	 * @param object the target of the switch.
+	 * @return the result of interpreting the object as an instance of '<em>Table Data Definition</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseTableDataDefinition(TableDataDefinition object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>Table Instances Type</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>Table Instances Type</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseTableInstancesType(TableInstancesType object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>Target Type</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>Target Type</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseTargetType(TargetType object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>The Main Diagram Type</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>The Main Diagram Type</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseTheMainDiagramType(TheMainDiagramType object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>To Link Type</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>To Link Type</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseToLinkType(ToLinkType object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>Transitions Type</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>Transitions Type</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseTransitionsType(TransitionsType object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>Unknown Type</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>Unknown Type</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseUnknownType(UnknownType object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>Value Type</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>Value Type</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseValueType(ValueType object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>EModel Element</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>EModel Element</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseEModelElement(EModelElement object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>EObject</em>'.
+	 * <!-- begin-user-doc -->
+	 * This implementation returns null;
+	 * returning a non-null result will terminate the switch, but this is the last case anyway.
+	 * <!-- end-user-doc -->
+	 * @param object the target of the switch.
+	 * @return the result of interpreting the object as an instance of '<em>EObject</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject)
+	 * @generated
+	 */
+	@Override
+	public T defaultCase(EObject object) {
+		return null;
+	}
+
+} //UMLRpySwitch
diff --git a/rpy/tests/org.eclipse.papyrus.interoperability.rpy.tests/.classpath b/rpy/tests/org.eclipse.papyrus.interoperability.rpy.tests/.classpath
new file mode 100644
index 0000000..eca7bdb
--- /dev/null
+++ b/rpy/tests/org.eclipse.papyrus.interoperability.rpy.tests/.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/rpy/tests/org.eclipse.papyrus.interoperability.rpy.tests/.gitignore b/rpy/tests/org.eclipse.papyrus.interoperability.rpy.tests/.gitignore
new file mode 100644
index 0000000..ae3c172
--- /dev/null
+++ b/rpy/tests/org.eclipse.papyrus.interoperability.rpy.tests/.gitignore
@@ -0,0 +1 @@
+/bin/
diff --git a/rpy/tests/org.eclipse.papyrus.interoperability.rpy.tests/.project b/rpy/tests/org.eclipse.papyrus.interoperability.rpy.tests/.project
new file mode 100644
index 0000000..2bc7765
--- /dev/null
+++ b/rpy/tests/org.eclipse.papyrus.interoperability.rpy.tests/.project
@@ -0,0 +1,28 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<projectDescription>
+	<name>org.eclipse.papyrus.interoperability.rpy.tests</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/rpy/tests/org.eclipse.papyrus.interoperability.rpy.tests/.settings/org.eclipse.jdt.core.prefs b/rpy/tests/org.eclipse.papyrus.interoperability.rpy.tests/.settings/org.eclipse.jdt.core.prefs
new file mode 100644
index 0000000..b3aa6d6
--- /dev/null
+++ b/rpy/tests/org.eclipse.papyrus.interoperability.rpy.tests/.settings/org.eclipse.jdt.core.prefs
@@ -0,0 +1,291 @@
+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
+org.eclipse.jdt.core.formatter.align_type_members_on_columns=false
+org.eclipse.jdt.core.formatter.alignment_for_arguments_in_allocation_expression=16
+org.eclipse.jdt.core.formatter.alignment_for_arguments_in_annotation=0
+org.eclipse.jdt.core.formatter.alignment_for_arguments_in_enum_constant=16
+org.eclipse.jdt.core.formatter.alignment_for_arguments_in_explicit_constructor_call=16
+org.eclipse.jdt.core.formatter.alignment_for_arguments_in_method_invocation=16
+org.eclipse.jdt.core.formatter.alignment_for_arguments_in_qualified_allocation_expression=16
+org.eclipse.jdt.core.formatter.alignment_for_assignment=0
+org.eclipse.jdt.core.formatter.alignment_for_binary_expression=16
+org.eclipse.jdt.core.formatter.alignment_for_compact_if=16
+org.eclipse.jdt.core.formatter.alignment_for_conditional_expression=80
+org.eclipse.jdt.core.formatter.alignment_for_enum_constants=0
+org.eclipse.jdt.core.formatter.alignment_for_expressions_in_array_initializer=16
+org.eclipse.jdt.core.formatter.alignment_for_method_declaration=0
+org.eclipse.jdt.core.formatter.alignment_for_multiple_fields=16
+org.eclipse.jdt.core.formatter.alignment_for_parameters_in_constructor_declaration=16
+org.eclipse.jdt.core.formatter.alignment_for_parameters_in_method_declaration=16
+org.eclipse.jdt.core.formatter.alignment_for_resources_in_try=80
+org.eclipse.jdt.core.formatter.alignment_for_selector_in_method_invocation=16
+org.eclipse.jdt.core.formatter.alignment_for_superclass_in_type_declaration=16
+org.eclipse.jdt.core.formatter.alignment_for_superinterfaces_in_enum_declaration=16
+org.eclipse.jdt.core.formatter.alignment_for_superinterfaces_in_type_declaration=16
+org.eclipse.jdt.core.formatter.alignment_for_throws_clause_in_constructor_declaration=16
+org.eclipse.jdt.core.formatter.alignment_for_throws_clause_in_method_declaration=16
+org.eclipse.jdt.core.formatter.alignment_for_union_type_in_multicatch=16
+org.eclipse.jdt.core.formatter.blank_lines_after_imports=1
+org.eclipse.jdt.core.formatter.blank_lines_after_package=1
+org.eclipse.jdt.core.formatter.blank_lines_before_field=0
+org.eclipse.jdt.core.formatter.blank_lines_before_first_class_body_declaration=0
+org.eclipse.jdt.core.formatter.blank_lines_before_imports=1
+org.eclipse.jdt.core.formatter.blank_lines_before_member_type=1
+org.eclipse.jdt.core.formatter.blank_lines_before_method=1
+org.eclipse.jdt.core.formatter.blank_lines_before_new_chunk=1
+org.eclipse.jdt.core.formatter.blank_lines_before_package=0
+org.eclipse.jdt.core.formatter.blank_lines_between_import_groups=1
+org.eclipse.jdt.core.formatter.blank_lines_between_type_declarations=1
+org.eclipse.jdt.core.formatter.brace_position_for_annotation_type_declaration=end_of_line
+org.eclipse.jdt.core.formatter.brace_position_for_anonymous_type_declaration=end_of_line
+org.eclipse.jdt.core.formatter.brace_position_for_array_initializer=end_of_line
+org.eclipse.jdt.core.formatter.brace_position_for_block=end_of_line
+org.eclipse.jdt.core.formatter.brace_position_for_block_in_case=end_of_line
+org.eclipse.jdt.core.formatter.brace_position_for_constructor_declaration=end_of_line
+org.eclipse.jdt.core.formatter.brace_position_for_enum_constant=end_of_line
+org.eclipse.jdt.core.formatter.brace_position_for_enum_declaration=end_of_line
+org.eclipse.jdt.core.formatter.brace_position_for_lambda_body=end_of_line
+org.eclipse.jdt.core.formatter.brace_position_for_method_declaration=end_of_line
+org.eclipse.jdt.core.formatter.brace_position_for_switch=end_of_line
+org.eclipse.jdt.core.formatter.brace_position_for_type_declaration=end_of_line
+org.eclipse.jdt.core.formatter.comment.clear_blank_lines_in_block_comment=false
+org.eclipse.jdt.core.formatter.comment.clear_blank_lines_in_javadoc_comment=false
+org.eclipse.jdt.core.formatter.comment.format_block_comments=true
+org.eclipse.jdt.core.formatter.comment.format_header=false
+org.eclipse.jdt.core.formatter.comment.format_html=true
+org.eclipse.jdt.core.formatter.comment.format_javadoc_comments=true
+org.eclipse.jdt.core.formatter.comment.format_line_comments=true
+org.eclipse.jdt.core.formatter.comment.format_source_code=true
+org.eclipse.jdt.core.formatter.comment.indent_parameter_description=true
+org.eclipse.jdt.core.formatter.comment.indent_root_tags=true
+org.eclipse.jdt.core.formatter.comment.insert_new_line_before_root_tags=insert
+org.eclipse.jdt.core.formatter.comment.insert_new_line_for_parameter=insert
+org.eclipse.jdt.core.formatter.comment.line_length=260
+org.eclipse.jdt.core.formatter.comment.new_lines_at_block_boundaries=true
+org.eclipse.jdt.core.formatter.comment.new_lines_at_javadoc_boundaries=true
+org.eclipse.jdt.core.formatter.comment.preserve_white_space_between_code_and_line_comments=false
+org.eclipse.jdt.core.formatter.compact_else_if=true
+org.eclipse.jdt.core.formatter.continuation_indentation=2
+org.eclipse.jdt.core.formatter.continuation_indentation_for_array_initializer=2
+org.eclipse.jdt.core.formatter.disabling_tag=@formatter\:off
+org.eclipse.jdt.core.formatter.enabling_tag=@formatter\:on
+org.eclipse.jdt.core.formatter.format_guardian_clause_on_one_line=false
+org.eclipse.jdt.core.formatter.format_line_comment_starting_on_first_column=true
+org.eclipse.jdt.core.formatter.indent_body_declarations_compare_to_annotation_declaration_header=true
+org.eclipse.jdt.core.formatter.indent_body_declarations_compare_to_enum_constant_header=true
+org.eclipse.jdt.core.formatter.indent_body_declarations_compare_to_enum_declaration_header=true
+org.eclipse.jdt.core.formatter.indent_body_declarations_compare_to_type_header=true
+org.eclipse.jdt.core.formatter.indent_breaks_compare_to_cases=true
+org.eclipse.jdt.core.formatter.indent_empty_lines=false
+org.eclipse.jdt.core.formatter.indent_statements_compare_to_block=true
+org.eclipse.jdt.core.formatter.indent_statements_compare_to_body=true
+org.eclipse.jdt.core.formatter.indent_switchstatements_compare_to_cases=true
+org.eclipse.jdt.core.formatter.indent_switchstatements_compare_to_switch=false
+org.eclipse.jdt.core.formatter.indentation.size=4
+org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_field=insert
+org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_local_variable=insert
+org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_method=insert
+org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_package=insert
+org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_parameter=do not insert
+org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_type=insert
+org.eclipse.jdt.core.formatter.insert_new_line_after_label=do not insert
+org.eclipse.jdt.core.formatter.insert_new_line_after_opening_brace_in_array_initializer=do not insert
+org.eclipse.jdt.core.formatter.insert_new_line_after_type_annotation=do not insert
+org.eclipse.jdt.core.formatter.insert_new_line_at_end_of_file_if_missing=do not insert
+org.eclipse.jdt.core.formatter.insert_new_line_before_catch_in_try_statement=do not insert
+org.eclipse.jdt.core.formatter.insert_new_line_before_closing_brace_in_array_initializer=do not insert
+org.eclipse.jdt.core.formatter.insert_new_line_before_else_in_if_statement=do not insert
+org.eclipse.jdt.core.formatter.insert_new_line_before_finally_in_try_statement=do not insert
+org.eclipse.jdt.core.formatter.insert_new_line_before_while_in_do_statement=do not insert
+org.eclipse.jdt.core.formatter.insert_new_line_in_empty_annotation_declaration=insert
+org.eclipse.jdt.core.formatter.insert_new_line_in_empty_anonymous_type_declaration=insert
+org.eclipse.jdt.core.formatter.insert_new_line_in_empty_block=insert
+org.eclipse.jdt.core.formatter.insert_new_line_in_empty_enum_constant=insert
+org.eclipse.jdt.core.formatter.insert_new_line_in_empty_enum_declaration=insert
+org.eclipse.jdt.core.formatter.insert_new_line_in_empty_method_body=insert
+org.eclipse.jdt.core.formatter.insert_new_line_in_empty_type_declaration=insert
+org.eclipse.jdt.core.formatter.insert_space_after_and_in_type_parameter=insert
+org.eclipse.jdt.core.formatter.insert_space_after_assignment_operator=insert
+org.eclipse.jdt.core.formatter.insert_space_after_at_in_annotation=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_at_in_annotation_type_declaration=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_binary_operator=insert
+org.eclipse.jdt.core.formatter.insert_space_after_closing_angle_bracket_in_type_arguments=insert
+org.eclipse.jdt.core.formatter.insert_space_after_closing_angle_bracket_in_type_parameters=insert
+org.eclipse.jdt.core.formatter.insert_space_after_closing_brace_in_block=insert
+org.eclipse.jdt.core.formatter.insert_space_after_closing_paren_in_cast=insert
+org.eclipse.jdt.core.formatter.insert_space_after_colon_in_assert=insert
+org.eclipse.jdt.core.formatter.insert_space_after_colon_in_case=insert
+org.eclipse.jdt.core.formatter.insert_space_after_colon_in_conditional=insert
+org.eclipse.jdt.core.formatter.insert_space_after_colon_in_for=insert
+org.eclipse.jdt.core.formatter.insert_space_after_colon_in_labeled_statement=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_allocation_expression=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_annotation=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_array_initializer=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_constructor_declaration_parameters=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_constructor_declaration_throws=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_enum_constant_arguments=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_enum_declarations=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_explicitconstructorcall_arguments=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_for_increments=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_for_inits=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_method_declaration_parameters=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_method_declaration_throws=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_method_invocation_arguments=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_multiple_field_declarations=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_multiple_local_declarations=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_parameterized_type_reference=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_superinterfaces=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_type_arguments=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_type_parameters=insert
+org.eclipse.jdt.core.formatter.insert_space_after_ellipsis=insert
+org.eclipse.jdt.core.formatter.insert_space_after_lambda_arrow=insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_angle_bracket_in_parameterized_type_reference=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_angle_bracket_in_type_arguments=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_angle_bracket_in_type_parameters=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_brace_in_array_initializer=insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_bracket_in_array_allocation_expression=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_bracket_in_array_reference=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_annotation=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_cast=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_catch=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_constructor_declaration=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_enum_constant=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_for=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_if=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_method_declaration=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_method_invocation=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_parenthesized_expression=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_switch=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_synchronized=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_try=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_while=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_postfix_operator=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_prefix_operator=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_question_in_conditional=insert
+org.eclipse.jdt.core.formatter.insert_space_after_question_in_wildcard=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_semicolon_in_for=insert
+org.eclipse.jdt.core.formatter.insert_space_after_semicolon_in_try_resources=insert
+org.eclipse.jdt.core.formatter.insert_space_after_unary_operator=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_and_in_type_parameter=insert
+org.eclipse.jdt.core.formatter.insert_space_before_assignment_operator=insert
+org.eclipse.jdt.core.formatter.insert_space_before_at_in_annotation_type_declaration=insert
+org.eclipse.jdt.core.formatter.insert_space_before_binary_operator=insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_angle_bracket_in_parameterized_type_reference=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_angle_bracket_in_type_arguments=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_angle_bracket_in_type_parameters=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_brace_in_array_initializer=insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_bracket_in_array_allocation_expression=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_bracket_in_array_reference=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_annotation=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_cast=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_catch=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_constructor_declaration=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_enum_constant=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_for=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_if=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_method_declaration=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_method_invocation=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_parenthesized_expression=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_switch=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_synchronized=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_try=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_while=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_colon_in_assert=insert
+org.eclipse.jdt.core.formatter.insert_space_before_colon_in_case=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_colon_in_conditional=insert
+org.eclipse.jdt.core.formatter.insert_space_before_colon_in_default=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_colon_in_for=insert
+org.eclipse.jdt.core.formatter.insert_space_before_colon_in_labeled_statement=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_allocation_expression=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_annotation=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_array_initializer=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_constructor_declaration_parameters=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_constructor_declaration_throws=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_enum_constant_arguments=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_enum_declarations=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_explicitconstructorcall_arguments=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_for_increments=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_for_inits=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_method_declaration_parameters=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_method_declaration_throws=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_method_invocation_arguments=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_multiple_field_declarations=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_multiple_local_declarations=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_parameterized_type_reference=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_superinterfaces=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_type_arguments=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_type_parameters=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_ellipsis=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_lambda_arrow=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_angle_bracket_in_parameterized_type_reference=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_angle_bracket_in_type_arguments=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_angle_bracket_in_type_parameters=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_annotation_type_declaration=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_anonymous_type_declaration=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_array_initializer=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_block=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_constructor_declaration=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_enum_constant=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_enum_declaration=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_method_declaration=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_switch=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_type_declaration=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_bracket_in_array_allocation_expression=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_bracket_in_array_reference=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_bracket_in_array_type_reference=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_annotation=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_annotation_type_member_declaration=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_catch=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_constructor_declaration=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_enum_constant=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_for=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_if=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_method_declaration=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_method_invocation=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_parenthesized_expression=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_switch=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_synchronized=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_try=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_while=insert
+org.eclipse.jdt.core.formatter.insert_space_before_parenthesized_expression_in_return=insert
+org.eclipse.jdt.core.formatter.insert_space_before_parenthesized_expression_in_throw=insert
+org.eclipse.jdt.core.formatter.insert_space_before_postfix_operator=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_prefix_operator=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_question_in_conditional=insert
+org.eclipse.jdt.core.formatter.insert_space_before_question_in_wildcard=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_semicolon=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_semicolon_in_for=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_semicolon_in_try_resources=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_unary_operator=do not insert
+org.eclipse.jdt.core.formatter.insert_space_between_brackets_in_array_type_reference=do not insert
+org.eclipse.jdt.core.formatter.insert_space_between_empty_braces_in_array_initializer=do not insert
+org.eclipse.jdt.core.formatter.insert_space_between_empty_brackets_in_array_allocation_expression=do not insert
+org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_annotation_type_member_declaration=do not insert
+org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_constructor_declaration=do not insert
+org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_enum_constant=do not insert
+org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_method_declaration=do not insert
+org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_method_invocation=do not insert
+org.eclipse.jdt.core.formatter.join_lines_in_comments=false
+org.eclipse.jdt.core.formatter.join_wrapped_lines=false
+org.eclipse.jdt.core.formatter.keep_else_statement_on_same_line=false
+org.eclipse.jdt.core.formatter.keep_empty_array_initializer_on_one_line=false
+org.eclipse.jdt.core.formatter.keep_imple_if_on_one_line=false
+org.eclipse.jdt.core.formatter.keep_then_statement_on_same_line=false
+org.eclipse.jdt.core.formatter.lineSplit=260
+org.eclipse.jdt.core.formatter.never_indent_block_comments_on_first_column=false
+org.eclipse.jdt.core.formatter.never_indent_line_comments_on_first_column=false
+org.eclipse.jdt.core.formatter.number_of_blank_lines_at_beginning_of_method_body=0
+org.eclipse.jdt.core.formatter.number_of_empty_lines_to_preserve=5
+org.eclipse.jdt.core.formatter.put_empty_statement_on_new_line=true
+org.eclipse.jdt.core.formatter.tabulation.char=tab
+org.eclipse.jdt.core.formatter.tabulation.size=4
+org.eclipse.jdt.core.formatter.use_on_off_tags=false
+org.eclipse.jdt.core.formatter.use_tabs_only_for_leading_indentations=false
+org.eclipse.jdt.core.formatter.wrap_before_binary_operator=true
+org.eclipse.jdt.core.formatter.wrap_before_or_operator_multicatch=true
+org.eclipse.jdt.core.formatter.wrap_outer_expressions_when_nested=true
diff --git a/rpy/tests/org.eclipse.papyrus.interoperability.rpy.tests/.settings/org.eclipse.jdt.ui.prefs b/rpy/tests/org.eclipse.papyrus.interoperability.rpy.tests/.settings/org.eclipse.jdt.ui.prefs
new file mode 100644
index 0000000..954281d
--- /dev/null
+++ b/rpy/tests/org.eclipse.papyrus.interoperability.rpy.tests/.settings/org.eclipse.jdt.ui.prefs
@@ -0,0 +1,68 @@
+cleanup.add_default_serial_version_id=true
+cleanup.add_generated_serial_version_id=false
+cleanup.add_missing_annotations=true
+cleanup.add_missing_deprecated_annotations=true
+cleanup.add_missing_methods=false
+cleanup.add_missing_nls_tags=false
+cleanup.add_missing_override_annotations=true
+cleanup.add_missing_override_annotations_interface_methods=true
+cleanup.add_serial_version_id=false
+cleanup.always_use_blocks=true
+cleanup.always_use_parentheses_in_expressions=false
+cleanup.always_use_this_for_non_static_field_access=false
+cleanup.always_use_this_for_non_static_method_access=false
+cleanup.convert_functional_interfaces=false
+cleanup.convert_to_enhanced_for_loop=false
+cleanup.correct_indentation=false
+cleanup.format_source_code=false
+cleanup.format_source_code_changes_only=false
+cleanup.insert_inferred_type_arguments=false
+cleanup.make_local_variable_final=true
+cleanup.make_parameters_final=false
+cleanup.make_private_fields_final=true
+cleanup.make_type_abstract_if_missing_method=false
+cleanup.make_variable_declarations_final=false
+cleanup.never_use_blocks=false
+cleanup.never_use_parentheses_in_expressions=true
+cleanup.organize_imports=false
+cleanup.qualify_static_field_accesses_with_declaring_class=false
+cleanup.qualify_static_member_accesses_through_instances_with_declaring_class=true
+cleanup.qualify_static_member_accesses_through_subtypes_with_declaring_class=true
+cleanup.qualify_static_member_accesses_with_declaring_class=true
+cleanup.qualify_static_method_accesses_with_declaring_class=false
+cleanup.remove_private_constructors=true
+cleanup.remove_redundant_type_arguments=true
+cleanup.remove_trailing_whitespaces=true
+cleanup.remove_trailing_whitespaces_all=true
+cleanup.remove_trailing_whitespaces_ignore_empty=false
+cleanup.remove_unnecessary_casts=true
+cleanup.remove_unnecessary_nls_tags=true
+cleanup.remove_unused_imports=true
+cleanup.remove_unused_local_variables=false
+cleanup.remove_unused_private_fields=true
+cleanup.remove_unused_private_members=false
+cleanup.remove_unused_private_methods=true
+cleanup.remove_unused_private_types=true
+cleanup.sort_members=false
+cleanup.sort_members_all=false
+cleanup.use_anonymous_class_creation=false
+cleanup.use_blocks=true
+cleanup.use_blocks_only_for_return_and_throw=false
+cleanup.use_lambda=true
+cleanup.use_parentheses_in_expressions=false
+cleanup.use_this_for_non_static_field_access=false
+cleanup.use_this_for_non_static_field_access_only_if_necessary=true
+cleanup.use_this_for_non_static_method_access=false
+cleanup.use_this_for_non_static_method_access_only_if_necessary=true
+cleanup.use_type_arguments=false
+cleanup_profile=_Papyrus
+cleanup_settings_version=2
+eclipse.preferences.version=1
+formatter_profile=_Papyrus
+formatter_settings_version=12
+org.eclipse.jdt.ui.ignorelowercasenames=true
+org.eclipse.jdt.ui.importorder=java;javax;org;com;
+org.eclipse.jdt.ui.javadoc=true
+org.eclipse.jdt.ui.ondemandthreshold=99
+org.eclipse.jdt.ui.staticondemandthreshold=99
+org.eclipse.jdt.ui.text.custom_code_templates=<?xml version\="1.0" encoding\="UTF-8" standalone\="no"?><templates><template autoinsert\="true" context\="gettercomment_context" deleted\="false" description\="Comment for getter method" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.gettercomment" name\="gettercomment">/**\n * @return the ${bare_field_name}\n */</template><template autoinsert\="true" context\="settercomment_context" deleted\="false" description\="Comment for setter method" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.settercomment" name\="settercomment">/**\n * @param ${param} the ${bare_field_name} to set\n */</template><template autoinsert\="false" context\="constructorcomment_context" deleted\="false" description\="Comment for created constructors" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.constructorcomment" name\="constructorcomment">/**\n * Constructor.\n *\n * ${tags}\n */</template><template autoinsert\="false" context\="filecomment_context" deleted\="false" description\="Comment for created Java files" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.filecomment" name\="filecomment">/*****************************************************************************\n * Copyright (c) ${year} CEA LIST and others.\n * \n * All rights reserved. This program and the accompanying materials\n * are made available under the terms of the Eclipse Public License v1.0\n * which accompanies this distribution, and is available at\n * http\://www.eclipse.org/legal/epl-v10.html\n *\n * Contributors\:\n *   CEA LIST - Initial API and implementation\n *   \n *****************************************************************************/\n</template><template autoinsert\="true" context\="typecomment_context" deleted\="false" description\="Comment for created types" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.typecomment" name\="typecomment">/**\n * @author ${user}\n *\n * ${tags}\n */</template><template autoinsert\="true" context\="fieldcomment_context" deleted\="false" description\="Comment for fields" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.fieldcomment" name\="fieldcomment">/**\n * \n */</template><template autoinsert\="true" context\="methodcomment_context" deleted\="false" description\="Comment for non-overriding methods" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.methodcomment" name\="methodcomment">/**\n * ${tags}\n */</template><template autoinsert\="false" context\="overridecomment_context" deleted\="false" description\="Comment for overriding methods" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.overridecomment" name\="overridecomment">/**\n * ${see_to_overridden}\n *\n * ${tags}\n */</template><template autoinsert\="false" context\="delegatecomment_context" deleted\="false" description\="Comment for delegate methods" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.delegatecomment" name\="delegatecomment">/**\n * ${see_to_target}\n *\n * ${tags}\n */</template><template autoinsert\="true" context\="newtype_context" deleted\="false" description\="Newly created files" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.newtype" name\="newtype">${filecomment}\n${package_declaration}\n\n${typecomment}\n${type_declaration}</template><template autoinsert\="true" context\="classbody_context" deleted\="false" description\="Code in new class type bodies" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.classbody" name\="classbody">\n</template><template autoinsert\="true" context\="interfacebody_context" deleted\="false" description\="Code in new interface type bodies" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.interfacebody" name\="interfacebody">\n</template><template autoinsert\="true" context\="enumbody_context" deleted\="false" description\="Code in new enum type bodies" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.enumbody" name\="enumbody">\n</template><template autoinsert\="true" context\="annotationbody_context" deleted\="false" description\="Code in new annotation type bodies" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.annotationbody" name\="annotationbody">\n</template><template autoinsert\="true" context\="catchblock_context" deleted\="false" description\="Code in new catch blocks" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.catchblock" name\="catchblock">// ${todo} Auto-generated catch block\n${exception_var}.printStackTrace();</template><template autoinsert\="true" context\="methodbody_context" deleted\="false" description\="Code in created method stubs" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.methodbody" name\="methodbody">// ${todo} Auto-generated method stub\n${body_statement}</template><template autoinsert\="true" context\="constructorbody_context" deleted\="false" description\="Code in created constructor stubs" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.constructorbody" name\="constructorbody">${body_statement}\n// ${todo} Auto-generated constructor stub</template><template autoinsert\="true" context\="getterbody_context" deleted\="false" description\="Code in created getters" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.getterbody" name\="getterbody">return ${field};</template><template autoinsert\="true" context\="setterbody_context" deleted\="false" description\="Code in created setters" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.setterbody" name\="setterbody">${field} \= ${param};</template></templates>
diff --git a/rpy/tests/org.eclipse.papyrus.interoperability.rpy.tests/.settings/org.eclipse.pde.api.tools.prefs b/rpy/tests/org.eclipse.papyrus.interoperability.rpy.tests/.settings/org.eclipse.pde.api.tools.prefs
new file mode 100644
index 0000000..23fb95e
--- /dev/null
+++ b/rpy/tests/org.eclipse.papyrus.interoperability.rpy.tests/.settings/org.eclipse.pde.api.tools.prefs
@@ -0,0 +1,98 @@
+ANNOTATION_ELEMENT_TYPE_ADDED_METHOD_WITHOUT_DEFAULT_VALUE=Error
+ANNOTATION_ELEMENT_TYPE_CHANGED_TYPE_CONVERSION=Error
+ANNOTATION_ELEMENT_TYPE_REMOVED_FIELD=Error
+ANNOTATION_ELEMENT_TYPE_REMOVED_METHOD=Error
+ANNOTATION_ELEMENT_TYPE_REMOVED_TYPE_MEMBER=Error
+API_COMPONENT_ELEMENT_TYPE_REMOVED_API_TYPE=Error
+API_COMPONENT_ELEMENT_TYPE_REMOVED_REEXPORTED_API_TYPE=Error
+API_COMPONENT_ELEMENT_TYPE_REMOVED_REEXPORTED_TYPE=Error
+API_COMPONENT_ELEMENT_TYPE_REMOVED_TYPE=Error
+API_USE_SCAN_FIELD_SEVERITY=Error
+API_USE_SCAN_METHOD_SEVERITY=Error
+API_USE_SCAN_TYPE_SEVERITY=Error
+CLASS_ELEMENT_TYPE_ADDED_METHOD=Error
+CLASS_ELEMENT_TYPE_ADDED_RESTRICTIONS=Error
+CLASS_ELEMENT_TYPE_ADDED_TYPE_PARAMETER=Error
+CLASS_ELEMENT_TYPE_CHANGED_CONTRACTED_SUPERINTERFACES_SET=Error
+CLASS_ELEMENT_TYPE_CHANGED_DECREASE_ACCESS=Error
+CLASS_ELEMENT_TYPE_CHANGED_NON_ABSTRACT_TO_ABSTRACT=Error
+CLASS_ELEMENT_TYPE_CHANGED_NON_FINAL_TO_FINAL=Error
+CLASS_ELEMENT_TYPE_CHANGED_TYPE_CONVERSION=Error
+CLASS_ELEMENT_TYPE_REMOVED_CONSTRUCTOR=Error
+CLASS_ELEMENT_TYPE_REMOVED_FIELD=Error
+CLASS_ELEMENT_TYPE_REMOVED_METHOD=Error
+CLASS_ELEMENT_TYPE_REMOVED_SUPERCLASS=Error
+CLASS_ELEMENT_TYPE_REMOVED_TYPE_MEMBER=Error
+CLASS_ELEMENT_TYPE_REMOVED_TYPE_PARAMETER=Error
+CONSTRUCTOR_ELEMENT_TYPE_ADDED_TYPE_PARAMETER=Error
+CONSTRUCTOR_ELEMENT_TYPE_CHANGED_DECREASE_ACCESS=Error
+CONSTRUCTOR_ELEMENT_TYPE_CHANGED_VARARGS_TO_ARRAY=Error
+CONSTRUCTOR_ELEMENT_TYPE_REMOVED_TYPE_PARAMETER=Error
+ENUM_ELEMENT_TYPE_CHANGED_CONTRACTED_SUPERINTERFACES_SET=Error
+ENUM_ELEMENT_TYPE_CHANGED_TYPE_CONVERSION=Error
+ENUM_ELEMENT_TYPE_REMOVED_ENUM_CONSTANT=Error
+ENUM_ELEMENT_TYPE_REMOVED_FIELD=Error
+ENUM_ELEMENT_TYPE_REMOVED_METHOD=Error
+ENUM_ELEMENT_TYPE_REMOVED_TYPE_MEMBER=Error
+FIELD_ELEMENT_TYPE_ADDED_VALUE=Error
+FIELD_ELEMENT_TYPE_CHANGED_DECREASE_ACCESS=Error
+FIELD_ELEMENT_TYPE_CHANGED_FINAL_TO_NON_FINAL_STATIC_CONSTANT=Error
+FIELD_ELEMENT_TYPE_CHANGED_NON_FINAL_TO_FINAL=Error
+FIELD_ELEMENT_TYPE_CHANGED_NON_STATIC_TO_STATIC=Error
+FIELD_ELEMENT_TYPE_CHANGED_STATIC_TO_NON_STATIC=Error
+FIELD_ELEMENT_TYPE_CHANGED_TYPE=Error
+FIELD_ELEMENT_TYPE_CHANGED_VALUE=Error
+FIELD_ELEMENT_TYPE_REMOVED_TYPE_ARGUMENT=Error
+FIELD_ELEMENT_TYPE_REMOVED_VALUE=Error
+ILLEGAL_EXTEND=Warning
+ILLEGAL_IMPLEMENT=Warning
+ILLEGAL_INSTANTIATE=Warning
+ILLEGAL_OVERRIDE=Warning
+ILLEGAL_REFERENCE=Warning
+INTERFACE_ELEMENT_TYPE_ADDED_FIELD=Ignore
+INTERFACE_ELEMENT_TYPE_ADDED_METHOD=Error
+INTERFACE_ELEMENT_TYPE_ADDED_RESTRICTIONS=Error
+INTERFACE_ELEMENT_TYPE_ADDED_SUPER_INTERFACE_WITH_METHODS=Error
+INTERFACE_ELEMENT_TYPE_ADDED_TYPE_PARAMETER=Error
+INTERFACE_ELEMENT_TYPE_CHANGED_CONTRACTED_SUPERINTERFACES_SET=Error
+INTERFACE_ELEMENT_TYPE_CHANGED_TYPE_CONVERSION=Error
+INTERFACE_ELEMENT_TYPE_REMOVED_FIELD=Error
+INTERFACE_ELEMENT_TYPE_REMOVED_METHOD=Error
+INTERFACE_ELEMENT_TYPE_REMOVED_TYPE_MEMBER=Error
+INTERFACE_ELEMENT_TYPE_REMOVED_TYPE_PARAMETER=Error
+INVALID_ANNOTATION=Ignore
+INVALID_JAVADOC_TAG=Ignore
+INVALID_REFERENCE_IN_SYSTEM_LIBRARIES=Ignore
+LEAK_EXTEND=Warning
+LEAK_FIELD_DECL=Warning
+LEAK_IMPLEMENT=Warning
+LEAK_METHOD_PARAM=Warning
+LEAK_METHOD_RETURN_TYPE=Warning
+METHOD_ELEMENT_TYPE_ADDED_RESTRICTIONS=Error
+METHOD_ELEMENT_TYPE_ADDED_TYPE_PARAMETER=Error
+METHOD_ELEMENT_TYPE_CHANGED_DECREASE_ACCESS=Error
+METHOD_ELEMENT_TYPE_CHANGED_NON_ABSTRACT_TO_ABSTRACT=Error
+METHOD_ELEMENT_TYPE_CHANGED_NON_FINAL_TO_FINAL=Error
+METHOD_ELEMENT_TYPE_CHANGED_NON_STATIC_TO_STATIC=Error
+METHOD_ELEMENT_TYPE_CHANGED_STATIC_TO_NON_STATIC=Error
+METHOD_ELEMENT_TYPE_CHANGED_VARARGS_TO_ARRAY=Error
+METHOD_ELEMENT_TYPE_REMOVED_ANNOTATION_DEFAULT_VALUE=Error
+METHOD_ELEMENT_TYPE_REMOVED_TYPE_PARAMETER=Error
+MISSING_EE_DESCRIPTIONS=Error
+TYPE_PARAMETER_ELEMENT_TYPE_ADDED_CLASS_BOUND=Error
+TYPE_PARAMETER_ELEMENT_TYPE_ADDED_INTERFACE_BOUND=Error
+TYPE_PARAMETER_ELEMENT_TYPE_CHANGED_CLASS_BOUND=Error
+TYPE_PARAMETER_ELEMENT_TYPE_CHANGED_INTERFACE_BOUND=Error
+TYPE_PARAMETER_ELEMENT_TYPE_REMOVED_CLASS_BOUND=Error
+TYPE_PARAMETER_ELEMENT_TYPE_REMOVED_INTERFACE_BOUND=Error
+UNUSED_PROBLEM_FILTERS=Warning
+automatically_removed_unused_problem_filters=Enabled
+eclipse.preferences.version=1
+incompatible_api_component_version=Error
+incompatible_api_component_version_include_major_without_breaking_change=Disabled
+incompatible_api_component_version_include_minor_without_api_change=Disabled
+invalid_since_tag_version=Error
+malformed_since_tag=Error
+missing_since_tag=Warning
+report_api_breakage_when_major_version_incremented=Disabled
+report_resolution_errors_api_component=Warning
diff --git a/rpy/tests/org.eclipse.papyrus.interoperability.rpy.tests/AllTests.launch b/rpy/tests/org.eclipse.papyrus.interoperability.rpy.tests/AllTests.launch
new file mode 100755
index 0000000..2dbfdbc
--- /dev/null
+++ b/rpy/tests/org.eclipse.papyrus.interoperability.rpy.tests/AllTests.launch
@@ -0,0 +1,45 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<launchConfiguration type="org.eclipse.pde.ui.JunitLaunchConfig">
+<booleanAttribute key="append.args" value="true"/>
+<booleanAttribute key="askclear" value="false"/>
+<booleanAttribute key="automaticAdd" value="true"/>
+<booleanAttribute key="automaticValidate" value="true"/>
+<stringAttribute key="bootstrap" value=""/>
+<stringAttribute key="checked" value="[NONE]"/>
+<booleanAttribute key="clearConfig" value="true"/>
+<booleanAttribute key="clearws" value="true"/>
+<booleanAttribute key="clearwslog" value="false"/>
+<stringAttribute key="configLocation" value="${workspace_loc}/.metadata/.plugins/org.eclipse.pde.core/pde-junit"/>
+<booleanAttribute key="default" value="true"/>
+<booleanAttribute key="includeOptional" value="true"/>
+<stringAttribute key="location" value="${workspace_loc}/../junit-workspace"/>
+<listAttribute key="org.eclipse.debug.core.MAPPED_RESOURCE_PATHS">
+<listEntry value="/org.eclipse.papyrus.interoperability.rpy.tests/src/org/eclipse/papyrus/interoperability/rpy/tests/AllTests.java"/>
+</listAttribute>
+<listAttribute key="org.eclipse.debug.core.MAPPED_RESOURCE_TYPES">
+<listEntry value="1"/>
+</listAttribute>
+<listAttribute key="org.eclipse.debug.ui.favoriteGroups">
+<listEntry value="org.eclipse.debug.ui.launchGroup.debug"/>
+<listEntry value="org.eclipse.debug.ui.launchGroup.run"/>
+</listAttribute>
+<stringAttribute key="org.eclipse.jdt.junit.CONTAINER" value=""/>
+<booleanAttribute key="org.eclipse.jdt.junit.KEEPRUNNING_ATTR" value="false"/>
+<stringAttribute key="org.eclipse.jdt.junit.TESTNAME" value=""/>
+<stringAttribute key="org.eclipse.jdt.junit.TEST_KIND" value="org.eclipse.jdt.junit.loader.junit4"/>
+<stringAttribute key="org.eclipse.jdt.launching.JRE_CONTAINER" value="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-1.8"/>
+<stringAttribute key="org.eclipse.jdt.launching.MAIN_TYPE" value="org.eclipse.papyrus.interoperability.rpy.tests.AllTests"/>
+<stringAttribute key="org.eclipse.jdt.launching.PROGRAM_ARGUMENTS" value="-os ${target.os} -ws ${target.ws} -arch ${target.arch} -nl ${target.nl} -consoleLog"/>
+<stringAttribute key="org.eclipse.jdt.launching.PROJECT_ATTR" value="org.eclipse.papyrus.interoperability.rpy.tests"/>
+<stringAttribute key="org.eclipse.jdt.launching.SOURCE_PATH_PROVIDER" value="org.eclipse.pde.ui.workbenchClasspathProvider"/>
+<stringAttribute key="org.eclipse.jdt.launching.VM_ARGUMENTS" value="-DRpyHome=-ea"/>
+<stringAttribute key="pde.version" value="3.3"/>
+<stringAttribute key="product" value="org.eclipse.platform.ide"/>
+<booleanAttribute key="run_in_ui_thread" value="true"/>
+<booleanAttribute key="show_selected_only" value="false"/>
+<booleanAttribute key="tracing" value="false"/>
+<booleanAttribute key="useCustomFeatures" value="false"/>
+<booleanAttribute key="useDefaultConfig" value="true"/>
+<booleanAttribute key="useDefaultConfigArea" value="false"/>
+<booleanAttribute key="useProduct" value="true"/>
+</launchConfiguration>
diff --git a/rpy/tests/org.eclipse.papyrus.interoperability.rpy.tests/META-INF/MANIFEST.MF b/rpy/tests/org.eclipse.papyrus.interoperability.rpy.tests/META-INF/MANIFEST.MF
new file mode 100755
index 0000000..e1fc6d1
--- /dev/null
+++ b/rpy/tests/org.eclipse.papyrus.interoperability.rpy.tests/META-INF/MANIFEST.MF
@@ -0,0 +1,22 @@
+Manifest-Version: 1.0
+Bundle-ManifestVersion: 2
+Bundle-Name: %Bundle-Name
+Bundle-SymbolicName: org.eclipse.papyrus.interoperability.rpy.tests;singleton:=true
+Bundle-Version: 0.7.0.qualifier
+Bundle-Vendor: %Bundle-Vendor
+Bundle-RequiredExecutionEnvironment: JavaSE-1.8
+Require-Bundle: org.eclipse.papyrus.infra.core.log;bundle-version="1.2.0",
+ org.eclipse.papyrus.junit.framework;bundle-version="1.2.0",
+ org.eclipse.core.commands,
+ org.eclipse.emf.ecore,
+ org.eclipse.papyrus.interoperability.rpy;bundle-version="0.7.0",
+ org.eclipse.uml2.uml;bundle-version="5.3.0",
+ org.eclipse.papyrus.junit.utils;bundle-version="2.0.0",
+ org.eclipse.emf.compare;bundle-version="3.4.0",
+ org.eclipse.papyrus.interoperability.rpy.blackboxes;bundle-version="0.7.0",
+ org.eclipse.papyrus.interoperability.common;bundle-version="0.7.0",
+ org.eclipse.papyrus.interoperability.rpy.metamodel;bundle-version="0.7.0"
+Bundle-Activator: org.eclipse.papyrus.interoperability.rpy.tests.Activator
+Bundle-ActivationPolicy: lazy
+Export-Package: org.eclipse.papyrus.interoperability.rpy.tests,
+ org.eclipse.papyrus.interoperability.rpy.tests.tests
diff --git a/rpy/tests/org.eclipse.papyrus.interoperability.rpy.tests/OSGI-INF/l10n/bundle.properties b/rpy/tests/org.eclipse.papyrus.interoperability.rpy.tests/OSGI-INF/l10n/bundle.properties
new file mode 100644
index 0000000..c8dd7c7
--- /dev/null
+++ b/rpy/tests/org.eclipse.papyrus.interoperability.rpy.tests/OSGI-INF/l10n/bundle.properties
@@ -0,0 +1,3 @@
+#Properties file for org.eclipse.papyrus.interoperability.rpy.tests
+Bundle-Vendor = Eclipse Modeling Project
+Bundle-Name = Papyrus Interoperability Rpy Tests
\ No newline at end of file
diff --git a/rpy/tests/org.eclipse.papyrus.interoperability.rpy.tests/about.html b/rpy/tests/org.eclipse.papyrus.interoperability.rpy.tests/about.html
new file mode 100644
index 0000000..dd3c089
--- /dev/null
+++ b/rpy/tests/org.eclipse.papyrus.interoperability.rpy.tests/about.html
@@ -0,0 +1,28 @@
+<!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>About</title>
+</head>
+<body lang="EN-US">
+<h2>About This Content</h2>
+ 
+<p>November 14, 2008</p>	
+<h3>License</h3>
+
+<p>The Eclipse Foundation makes available all content in this plug-in (&quot;Content&quot;).  Unless otherwise 
+indicated below, the Content is provided to you under the terms and conditions of the
+Eclipse Public License Version 1.0 (&quot;EPL&quot;).  A copy of the EPL is 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, &quot;Program&quot; will mean the Content.</p>
+
+<p>If you did not receive this Content directly from the Eclipse Foundation, the Content is 
+being redistributed by another party (&quot;Redistributor&quot;) and different terms and conditions may
+apply to your use of any object code in the Content.  Check the Redistributor's license that was 
+provided with the Content.  If no such license exists, contact the Redistributor.  Unless otherwise
+indicated below, the terms and conditions of the EPL still apply to any source code in the Content
+and such source code may be obtained at <a href="http://www.eclipse.org">http://www.eclipse.org</a>.</p>
+
+</body>
+</html>
\ No newline at end of file
diff --git a/rpy/tests/org.eclipse.papyrus.interoperability.rpy.tests/build.properties b/rpy/tests/org.eclipse.papyrus.interoperability.rpy.tests/build.properties
new file mode 100644
index 0000000..27571f5
--- /dev/null
+++ b/rpy/tests/org.eclipse.papyrus.interoperability.rpy.tests/build.properties
@@ -0,0 +1,8 @@
+source.. = src/
+output.. = bin/
+bin.includes = META-INF/,\
+               .,\
+               about.html,\
+               OSGI-INF/l10n/bundle.properties,\
+               plugin.xml
+src.includes = about.html
diff --git a/rpy/tests/org.eclipse.papyrus.interoperability.rpy.tests/plugin.xml b/rpy/tests/org.eclipse.papyrus.interoperability.rpy.tests/plugin.xml
new file mode 100755
index 0000000..ccd6216
--- /dev/null
+++ b/rpy/tests/org.eclipse.papyrus.interoperability.rpy.tests/plugin.xml
@@ -0,0 +1,25 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?eclipse version="3.4"?>
+<plugin>
+   <extension
+         point="org.eclipse.ui.menus">
+      <menuContribution
+            allPopups="true"
+            locationURI="popup:org.eclipse.ui.navigator.ProjectExplorer#PopupMenu?after=additions">
+         <command
+               commandId="org.eclipse.papyrus.compare.ignoringXMiID"
+               label="Compare As JUnit Imported Rpy Model"
+               style="push">
+         </command>
+      </menuContribution>
+   </extension>
+   <extension
+         point="org.eclipse.ui.commands">
+      <command
+            defaultHandler="org.eclipse.papyrus.interoperability.rpy.tests.handlers.CompareAsPapyrusJUnitHandler"
+            id="org.eclipse.papyrus.compare.ignoringXMiID"
+            name="Compare As JUnit Imported Rpy Model">
+      </command>
+   </extension>
+
+</plugin>
diff --git a/rpy/tests/org.eclipse.papyrus.interoperability.rpy.tests/src/org/eclipse/papyrus/interoperability/rpy/tests/Activator.java b/rpy/tests/org.eclipse.papyrus.interoperability.rpy.tests/src/org/eclipse/papyrus/interoperability/rpy/tests/Activator.java
new file mode 100644
index 0000000..c739ef6
--- /dev/null
+++ b/rpy/tests/org.eclipse.papyrus.interoperability.rpy.tests/src/org/eclipse/papyrus/interoperability/rpy/tests/Activator.java
@@ -0,0 +1,71 @@
+/*****************************************************************************
+ * Copyright (c) 2016 CEA LIST.
+ *
+ *    
+ * 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:
+ *  Vincent Lorenzo (CEA LIST) vincent.lorenzo@cea.fr - Initial API and implementation
+ *
+ *****************************************************************************/
+package org.eclipse.papyrus.interoperability.rpy.tests;
+
+import org.eclipse.core.runtime.Plugin;
+import org.eclipse.papyrus.infra.core.log.LogHelper;
+import org.osgi.framework.BundleContext;
+
+/**
+ * The activator class controls the plug-in life cycle
+ */
+public class Activator extends Plugin {
+
+	/** Plug-in ID */
+	public static final String PLUGIN_ID = "org.eclipse.papyrus.interoperability.rpy.tests"; //$NON-NLS-1$
+
+	/** The plug-in shared instance */
+	private static Activator plugin;
+
+	/** The log service */
+	public static LogHelper log;
+
+
+	/** Default Constructor */
+	public Activator() {
+
+	}
+	/*
+	 * (non-Javadoc)
+	 * 
+	 * @see org.eclipse.core.runtime.Plugins#start(org.osgi.framework.BundleContext)
+	 */
+	@Override
+	public void start(BundleContext context) throws Exception {
+		super.start(context);
+		plugin = this;
+		log = new LogHelper(plugin);
+	}
+
+	/*
+	 * (non-Javadoc)
+	 * 
+	 * @see org.eclipse.core.runtime.Plugin#stop(org.osgi.framework.BundleContext)
+	 */
+	@Override
+	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/rpy/tests/org.eclipse.papyrus.interoperability.rpy.tests/src/org/eclipse/papyrus/interoperability/rpy/tests/AllTests.java b/rpy/tests/org.eclipse.papyrus.interoperability.rpy.tests/src/org/eclipse/papyrus/interoperability/rpy/tests/AllTests.java
new file mode 100644
index 0000000..ff4de99
--- /dev/null
+++ b/rpy/tests/org.eclipse.papyrus.interoperability.rpy.tests/src/org/eclipse/papyrus/interoperability/rpy/tests/AllTests.java
@@ -0,0 +1,30 @@
+package org.eclipse.papyrus.interoperability.rpy.tests;
+/*****************************************************************************
+ * Copyright (c) 2016 CEA LIST.
+ *
+ *    
+ * 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:
+ *  Vincent Lorenzo (CEA LIST) vincent.lorenzo@cea.fr - Initial API and implementation
+ *
+ *****************************************************************************/
+
+import org.eclipse.papyrus.interoperability.rpy.tests.tests.TestRpyMetamodel;
+import org.eclipse.papyrus.junit.framework.classification.ClassificationSuite;
+import org.junit.runner.RunWith;
+import org.junit.runners.Suite.SuiteClasses;
+
+/**
+ * Master test suite for this test fragment.
+ */
+@RunWith(ClassificationSuite.class)
+@SuiteClasses({
+	TestRpyMetamodel.class
+})
+public class AllTests {
+
+}
diff --git a/rpy/tests/org.eclipse.papyrus.interoperability.rpy.tests/src/org/eclipse/papyrus/interoperability/rpy/tests/handlers/CompareAsPapyrusJUnitHandler.java b/rpy/tests/org.eclipse.papyrus.interoperability.rpy.tests/src/org/eclipse/papyrus/interoperability/rpy/tests/handlers/CompareAsPapyrusJUnitHandler.java
new file mode 100755
index 0000000..0398f84
--- /dev/null
+++ b/rpy/tests/org.eclipse.papyrus.interoperability.rpy.tests/src/org/eclipse/papyrus/interoperability/rpy/tests/handlers/CompareAsPapyrusJUnitHandler.java
@@ -0,0 +1,195 @@
+/*****************************************************************************
+ * Copyright (c) 2016 CEA LIST and others.
+ * 
+ * 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:
+ *   CEA LIST - Initial API and implementation
+ *   
+ *****************************************************************************/
+
+package org.eclipse.papyrus.interoperability.rpy.tests.handlers;
+
+import java.io.IOException;
+import java.util.ArrayList;
+import java.util.Collections;
+import java.util.List;
+import java.util.Map;
+
+import org.eclipse.core.commands.AbstractHandler;
+import org.eclipse.core.commands.ExecutionEvent;
+import org.eclipse.core.commands.ExecutionException;
+import org.eclipse.core.resources.IFile;
+import org.eclipse.core.runtime.IAdaptable;
+import org.eclipse.emf.common.util.URI;
+import org.eclipse.emf.compare.Comparison;
+import org.eclipse.emf.compare.EMFCompare;
+import org.eclipse.emf.compare.scope.DefaultComparisonScope;
+import org.eclipse.emf.compare.scope.IComparisonScope;
+import org.eclipse.emf.ecore.resource.Resource;
+import org.eclipse.emf.ecore.resource.ResourceSet;
+import org.eclipse.emf.ecore.resource.impl.ResourceSetImpl;
+import org.eclipse.emf.ecore.util.EcoreUtil;
+import org.eclipse.emf.ecore.xmi.impl.XMIResourceFactoryImpl;
+import org.eclipse.jface.viewers.ISelection;
+import org.eclipse.jface.viewers.IStructuredSelection;
+import org.eclipse.papyrus.interoperability.rpy.tests.tests.EMFCompareUtils;
+import org.eclipse.ui.handlers.HandlerUtil;
+
+/**
+ * @author VL222926
+ *
+ */
+public class CompareAsPapyrusJUnitHandler extends AbstractHandler {
+
+	
+
+	private static final String MATCHES = "matches"; //$NON-NLS-1$
+
+	private static final String DIFFERENCES = "differences"; //$NON-NLS-1$
+
+	private static final String CONFLICTS = "conflicts"; //$NON-NLS-1$
+
+	private static final String COMPARISON = "comparison"; //$NON-NLS-1$
+
+	private static final String DIFF_RESULT_FOLDER = "diffResult"; //$NON-NLS-1$
+
+	/**
+	 * @see org.eclipse.core.commands.IHandler#execute(org.eclipse.core.commands.ExecutionEvent)
+	 *
+	 * @param event
+	 * @return
+	 * @throws ExecutionException
+	 */
+	@Override
+	public Object execute(ExecutionEvent event) throws ExecutionException {
+		final List<URI> selectedFiles = getSelectedFileURIs(event);
+		if (selectedFiles.size() == 2) {
+
+			final URI currentVersionURI = selectedFiles.get(0);
+			final URI expectedVersionURI = selectedFiles.get(1);
+			final EMFCompare compare = EMFCompareUtils.createEMFCompare();
+			final ResourceSet left = new ResourceSetImpl();
+			final ResourceSet right = new ResourceSetImpl();
+
+			left.getResource(currentVersionURI, true); // the first one is the edited model
+			right.getResource(expectedVersionURI, true); // the second one is the expected model
+			final IComparisonScope scope = new DefaultComparisonScope(left, right, null);
+			final Comparison comparison = compare.compare(scope);
+
+			URI baseURI = currentVersionURI.trimFileExtension();
+			String lastSeg = baseURI.lastSegment();
+			baseURI = baseURI.appendSegment(DIFF_RESULT_FOLDER);
+			baseURI = baseURI.appendSegment(lastSeg);
+			saveResult(baseURI, comparison);
+		}
+		return null;
+	}
+
+	protected void saveResult(final URI baseURI, final Comparison comparison) {
+		final Resource.Factory.Registry reg = Resource.Factory.Registry.INSTANCE;
+		final Map<String, Object> m = reg.getExtensionToFactoryMap();
+		m.put(DIFFERENCES, new XMIResourceFactoryImpl());
+		m.put(COMPARISON, new XMIResourceFactoryImpl());
+		m.put(MATCHES, new XMIResourceFactoryImpl());
+		m.put(CONFLICTS, new XMIResourceFactoryImpl());
+
+		final ResourceSet savedSet = new ResourceSetImpl();
+
+		final URI comparisonURI = baseURI.appendFileExtension(COMPARISON);
+		final URI differencesURI = baseURI.appendFileExtension(DIFFERENCES);
+		final URI conflictsURI = baseURI.appendFileExtension(CONFLICTS);
+		final URI matchesURI = baseURI.appendFileExtension(MATCHES);
+
+		final Resource comparisonResource = savedSet.createResource(comparisonURI);
+		final Resource differencesResource = savedSet.createResource(differencesURI);
+		final Resource conflictsResource = savedSet.createResource(conflictsURI);
+		final Resource matchesResource = savedSet.createResource(matchesURI);
+
+
+		comparisonResource.getContents().add(comparison);
+
+		EcoreUtil.copy(comparison);
+		differencesResource.getContents().addAll(EcoreUtil.copy(comparison).getDifferences());
+		conflictsResource.getContents().addAll(EcoreUtil.copy(comparison).getConflicts());
+		matchesResource.getContents().addAll(EcoreUtil.copy(comparison).getMatches());
+
+		for (Resource current : savedSet.getResources()) {
+			try {
+				current.save(Collections.EMPTY_MAP);
+			} catch (IOException e) {
+				// TODO Auto-generated catch block
+				e.printStackTrace();
+			}
+		}
+	}
+
+	/**
+	 * @see org.eclipse.core.commands.AbstractHandler#setEnabled(java.lang.Object)
+	 *
+	 * @param evaluationContext
+	 */
+	@Override
+	public void setEnabled(Object evaluationContext) {
+		// TODO Auto-generated method stub
+		super.setEnabled(evaluationContext);
+	}
+
+	/**
+	 * 
+	 * @param event
+	 * @return
+	 * 		an empty list or a list with 2 URI. The first one should be the current version of the file and the second one should be the expected version of the file
+	 * 
+	 */
+	protected List<URI> getSelectedFileURIs(final ExecutionEvent event) {
+		final ISelection selection = HandlerUtil.getCurrentSelection(event);
+		final List<URI> selectedURI = new ArrayList<>();
+		if (selection instanceof IStructuredSelection) {
+			List<?> selectedElement = ((IStructuredSelection) selection).toList();
+			if (selectedElement.size() == 2) {
+				final Object element1 = selectedElement.get(0);
+				final Object element2 = selectedElement.get(1);
+				if (element1 instanceof IAdaptable) {
+					final IFile file = ((IAdaptable) element1).getAdapter(IFile.class);
+					URI uri = getUMLFileURI(file);
+					if (uri != null) {
+						selectedURI.add(uri);
+					}
+				}
+				if (element2 instanceof IAdaptable) {
+					final IFile file = ((IAdaptable) element2).getAdapter(IFile.class);
+					URI uri = getUMLFileURI(file);
+					if (uri != null) {
+						selectedURI.add(uri);
+					}
+				}
+			}
+		}
+		if (selectedURI.size() != 2) {
+			selectedURI.clear();
+		}
+		return selectedURI;
+	}
+
+
+	/**
+	 * 
+	 * @param file
+	 *            an ifile, must not be null
+	 * @return
+	 * 		the file URI in case of uml file and <code>null</code> in other case
+	 */
+	protected URI getUMLFileURI(final IFile file) {
+		String path = file.getFullPath().toPortableString();
+		URI uri = URI.createURI(path);
+		if ("uml".equals(uri.fileExtension())) { //$NON-NLS-1$
+			return uri;
+		}
+		return null;
+	}
+
+}
diff --git a/rpy/tests/org.eclipse.papyrus.interoperability.rpy.tests/src/org/eclipse/papyrus/interoperability/rpy/tests/tests/AbstractImportRpyModelTests.java b/rpy/tests/org.eclipse.papyrus.interoperability.rpy.tests/src/org/eclipse/papyrus/interoperability/rpy/tests/tests/AbstractImportRpyModelTests.java
new file mode 100644
index 0000000..628c936
--- /dev/null
+++ b/rpy/tests/org.eclipse.papyrus.interoperability.rpy.tests/src/org/eclipse/papyrus/interoperability/rpy/tests/tests/AbstractImportRpyModelTests.java
@@ -0,0 +1,811 @@
+/*****************************************************************************
+ * Copyright (c) 2016 CEA LIST and others.
+ * 
+ * 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:
+ *   CEA LIST - Initial API and implementation
+ *   
+ *****************************************************************************/
+
+package org.eclipse.papyrus.interoperability.rpy.tests.tests;
+
+import java.io.File;
+import java.io.IOException;
+import java.net.URISyntaxException;
+import java.net.URL;
+import java.util.ArrayList;
+import java.util.Comparator;
+import java.util.HashSet;
+import java.util.Iterator;
+import java.util.List;
+import java.util.Set;
+import java.util.function.Consumer;
+
+import javax.xml.parsers.DocumentBuilder;
+import javax.xml.parsers.DocumentBuilderFactory;
+
+import org.eclipse.core.internal.jobs.Worker;
+import org.eclipse.core.resources.IFile;
+import org.eclipse.core.resources.IProject;
+import org.eclipse.core.resources.IResource;
+import org.eclipse.core.resources.IWorkspace;
+import org.eclipse.core.resources.ResourcesPlugin;
+import org.eclipse.core.runtime.CoreException;
+import org.eclipse.core.runtime.FileLocator;
+import org.eclipse.core.runtime.IPath;
+import org.eclipse.core.runtime.NullProgressMonitor;
+import org.eclipse.core.runtime.Path;
+import org.eclipse.core.runtime.jobs.Job;
+import org.eclipse.emf.common.util.TreeIterator;
+import org.eclipse.emf.common.util.URI;
+import org.eclipse.emf.compare.Comparison;
+import org.eclipse.emf.compare.Conflict;
+import org.eclipse.emf.compare.Diff;
+import org.eclipse.emf.compare.DifferenceKind;
+import org.eclipse.emf.compare.internal.spec.ReferenceChangeSpec;
+import org.eclipse.emf.compare.scope.DefaultComparisonScope;
+import org.eclipse.emf.ecore.EAnnotation;
+import org.eclipse.emf.ecore.EModelElement;
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.emf.ecore.impl.EStringToStringMapEntryImpl;
+import org.eclipse.emf.ecore.resource.Resource;
+import org.eclipse.emf.ecore.resource.ResourceSet;
+import org.eclipse.emf.ecore.resource.impl.ResourceSetImpl;
+import org.eclipse.emf.ecore.xmi.XMIResource;
+import org.eclipse.gmf.runtime.notation.Bounds;
+import org.eclipse.gmf.runtime.notation.Diagram;
+import org.eclipse.gmf.runtime.notation.NotationPackage;
+import org.eclipse.gmf.runtime.notation.Shape;
+import org.eclipse.gmf.runtime.notation.StringValueStyle;
+import org.eclipse.osgi.util.NLS;
+import org.eclipse.papyrus.infra.constraints.Activator;
+import org.eclipse.papyrus.interoperability.common.MigrationParameters.MigrationParametersFactory;
+import org.eclipse.papyrus.interoperability.common.MigrationParameters.ThreadConfig;
+import org.eclipse.papyrus.interoperability.common.transformation.AbstractImportTransformationLauncher;
+import org.eclipse.papyrus.interoperability.rpy.blackboxes.VersioningBlackboxes;
+import org.eclipse.papyrus.interoperability.rpy.importer.SelectedRpyFilesImporter;
+import org.eclipse.papyrus.interoperability.rpy.importer.utils.RpyProjectHandler;
+import org.eclipse.papyrus.interoperability.rpy.importer.utils.RpyUtil;
+import org.eclipse.papyrus.interoperability.rpy.transformations.RpyImportTransformationLauncher;
+import org.eclipse.papyrus.junit.framework.classification.tests.AbstractPapyrusTest;
+import org.eclipse.papyrus.junit.utils.DisplayUtils;
+import org.eclipse.papyrus.junit.utils.ProjectUtils;
+import org.eclipse.papyrus.junit.utils.rules.ModelSetFixture;
+import org.eclipse.uml2.uml.NamedElement;
+import org.eclipse.uml2.uml.Package;
+import org.eclipse.uml2.uml.Port;
+import org.junit.Assert;
+import org.junit.Ignore;
+import org.junit.Rule;
+import org.junit.Test;
+import org.osgi.framework.Bundle;
+import org.w3c.dom.Document;
+import org.w3c.dom.Node;
+import org.w3c.dom.NodeList;
+
+/**
+ * @author VL222926
+ *
+ *         abstract class used to test the import of Rpy Model into Papyrus
+ */
+@SuppressWarnings("nls")
+public class AbstractImportRpyModelTests extends AbstractPapyrusTest {
+
+	/**
+	 * the rpy file to import in Papyrus
+	 */
+	protected Set<IFile> rpyFilesToImport = new HashSet<IFile>();
+
+	/**
+	 * the papyrus editor fixture used to load the expected model
+	 */
+	@Rule
+	public final ModelSetFixture expectedResultFixture = new ModelSetFixture();
+
+	/**
+	 * This resource set contains the files created by the transformation
+	 */
+	protected final ResourceSet resultingResourceSet = new ResourceSetImpl();
+
+	/**
+	 * the resources created by the import
+	 */
+	protected Resource diResource = null;
+	protected Resource notationResource = null;
+	protected Resource umlResource = null;
+
+	/**
+	 * the created project used for the tests
+	 */
+	protected IProject project;
+
+	/**
+	 * the name of the rpy model to import
+	 */
+	protected String rpyModelName;
+
+	protected String resourcePath;
+
+	protected IFile outputUmlFile = null;
+	protected IFile outputNotationFile = null;
+	protected IFile outputDiFile = null;
+
+
+	/**
+	 * 
+	 * This method allows to create the project
+	 * 
+	 * @param projectName
+	 *            the name of the project to create for the JUnit test
+	 * @param resourcePath
+	 *            the path where are stored the file to copy/load to execute the tests
+	 * @param bundle
+	 *            the bundle
+	 * @throws CoreException
+	 * @throws IOException
+	 * @throws URISyntaxException
+	 * 
+	 */
+	public void initTest(final String projectName, final String rpyModelName, final String resourcePath, Bundle bundle) throws CoreException, IOException, URISyntaxException {
+		this.rpyModelName = rpyModelName;
+		this.project = ProjectUtils.createProject(projectName);
+
+		importRpyModelIntoProject(rpyModelName, resourcePath, bundle, this.project);
+		executeTransformation(this.rpyFilesToImport);
+		DisplayUtils.flushEventLoop();
+		waitEndOfImportThread();
+		DisplayUtils.flushEventLoop();
+		initOutputIFilesFields();
+	}
+
+
+	protected void initOutputIFilesFields() {
+		if (this.outputUmlFile == null) {
+			this.outputUmlFile = checkUMLFileCreationAndGetIt();
+		}
+		if (this.outputNotationFile == null) {
+			this.outputNotationFile = checkNotationFileCreationAndGetIt();
+		}
+		if (this.outputDiFile == null) {
+			this.outputDiFile = checkDiFileCreationAndGetIt();
+		}
+	}
+
+
+	protected void initOutputResourcesFields() {
+		initOutputIFilesFields();
+		if (this.umlResource == null) {
+			this.umlResource = addFileToResourceSet(resultingResourceSet, outputUmlFile);
+		}
+		if (this.notationResource == null) {
+			this.notationResource = addFileToResourceSet(resultingResourceSet, outputNotationFile);
+		}
+		if (this.diResource == null) {
+			this.diResource = addFileToResourceSet(resultingResourceSet, outputDiFile);
+		}
+	}
+
+	/**
+	 * This method import the Rpy project into the workspace
+	 * 
+	 * @throws IOException
+	 * @throws URISyntaxException
+	 */
+	public final void importRpyModelIntoProject(final String rpyModelName, final String sourcePath, final Bundle sourceBundle, final IProject targetProject) throws URISyntaxException, IOException {
+		// TODO improve all this path with url, uri, string, ... emf URI will be a good solution
+		final String currentRpyPath = sourcePath + rpyModelName + "." + "rpy";
+		URL url = sourceBundle.getResource(currentRpyPath);
+		java.net.URI uri = FileLocator.resolve(url).toURI();
+		RpyProjectHandler handler = new RpyProjectHandler(uri.getRawPath());
+		URI rpyURI = handler.copyRpyProjectToNewFolder(URI.createFileURI(targetProject.getLocationURI().getRawPath()));
+		try {
+			this.project.refreshLocal(IProject.DEPTH_INFINITE, new NullProgressMonitor());
+		} catch (CoreException e) {
+			// TODO Auto-generated catch block
+			e.printStackTrace();
+		}
+		IWorkspace workspace = ResourcesPlugin.getWorkspace();
+		IPath location = Path.fromOSString(rpyURI.toFileString());
+		IFile ifile = workspace.getRoot().getFileForLocation(location);
+		rpyFilesToImport.add(ifile);
+	}
+
+	private RpyImportTransformationLauncher launcher;
+
+	/**
+	 * 
+	 * @param rpyFiles
+	 *            the list of file to import
+	 */
+	protected void executeTransformation(final Set<IFile> rpyFiles) {
+		// TODO change the parameters of this method
+		List<URI> urisToImport = new ArrayList<URI>();
+		for (IFile current : rpyFiles) {
+			String path = null;
+			if (current instanceof IFile) {
+				path = ((IFile) current).getFullPath().toString();
+			}
+			if (path != null) {
+				URI uri = URI.createPlatformResourceURI(path, true);
+				urisToImport.add(uri);
+			}
+		}
+
+		// SelectedRpyFilesImporter importer = new SelectedRpyFilesImporter(urisToImport);
+		ThreadConfig config = MigrationParametersFactory.eINSTANCE.createThreadConfig();
+		// List<URI> createdFilesURI = importer.getRpyFilesToImportURI();
+		launcher = new RpyImportTransformationLauncher(config);
+		// launcher.run(createdFilesURI);
+		launcher.run(urisToImport);
+
+
+	}
+
+	/**
+	 * 
+	 * @return
+	 * 		the uml file created by the QVTO tranformation if it exists
+	 */
+	protected IFile checkUMLFileCreationAndGetIt() {
+		// TODO refactore this line!
+		String outputFolder = /* project.getLocation().toOSString() + File.separator + */SelectedRpyFilesImporter.OUTPUT_FOLDER + File.separator + rpyModelName; // TODO output folder must be a parameter of the tranformation, it could be a project too
+		// TODO : the SelectedFile importer must provide a method to get the target folder/project
+		final IFile umlFile = project.getFile(outputFolder + File.separator + rpyModelName + ".uml");
+		try {
+			umlFile.getProject().refreshLocal(IResource.DEPTH_INFINITE, new NullProgressMonitor());
+		} catch (CoreException e) {
+			// TODO Auto-generated catch block
+			e.printStackTrace();
+		}
+		Assert.assertTrue("The uml file has not been created." + umlFile.getFullPath(), umlFile.exists());
+		return umlFile;
+	}
+
+	/**
+	 * This method allows to wait the end of the import thread
+	 * 
+	 * TODO : refactore API to have a direct access to the import thread!
+	 */
+	@SuppressWarnings("restriction")
+	protected void waitEndOfImportThread() {
+		Set<Thread> threads = Thread.getAllStackTraces().keySet();
+		for (Thread thread : threads) {
+			if (thread instanceof Worker) {
+				Job job = ((Worker) thread).currentJob();
+				if (null != job) {
+					if (job.getName().equals(AbstractImportTransformationLauncher.IMPORT_MODELS_JOB_NAME)) {
+						try {
+							job.join();
+						} catch (InterruptedException e1) {
+							Activator.log.error(e1);
+						}
+					}
+				}
+			}
+		}
+	}
+
+	/**
+	 * 
+	 * @return
+	 * 		the notation file created by the QVTO tranformation if it exists
+	 */
+	protected IFile checkNotationFileCreationAndGetIt() {
+		// TODO refactore this line!
+		String outputFolder = /* project.getLocation().toOSString() + File.separator + */SelectedRpyFilesImporter.OUTPUT_FOLDER + File.separator + rpyModelName; // TODO output folder must be a parameter of the tranformation, it could be a project too
+		// TODO : the SelectedFile imported must provide a method to get the target folder/project
+		final IFile notationFile = project.getFile(outputFolder + File.separator + rpyModelName + ".notation");
+		Assert.assertTrue("The notation file has not been created.", notationFile.exists());
+
+		return notationFile;
+	}
+
+	/**
+	 * 
+	 * @return
+	 * 		the notation file created by the QVTO tranformation if it exists
+	 */
+	protected IFile checkDiFileCreationAndGetIt() {
+		// TODO refactore this line!
+		String outputFolder = /* project.getLocation().toOSString() + File.separator + */SelectedRpyFilesImporter.OUTPUT_FOLDER + File.separator + rpyModelName; // TODO output folder must be a parameter of the tranformation, it could be a project too
+		// TODO : the SelectedFile imported must provide a method to get the target folder/project
+		final IFile diFile = project.getFile(outputFolder + File.separator + rpyModelName + ".di");
+		Assert.assertTrue("The di file has not been created.", diFile.exists());
+		return diFile;
+	}
+
+
+	/**
+	 * 
+	 * @param resourceSet
+	 *            a resource set
+	 * @param fileToAdd
+	 *            the file to add to the resource set
+	 * @return
+	 * 		the resource represented the added file
+	 */
+	protected Resource addFileToResourceSet(final ResourceSet resourceSet, final IFile fileToAdd) {
+		String path = fileToAdd.getFullPath().toPortableString();
+		URI umlURI = URI.createURI(path);
+		boolean exist = resourceSet.getURIConverter().exists(umlURI, null);
+		Assert.assertTrue(exist);
+		return resourceSet.getResource(umlURI, true);
+	}
+
+	/**
+	 * This test check the annotation added to the imported model
+	 */
+	@Test
+	@Ignore
+	public void checkUMLModel_ImportRpyVersioning() {
+		initOutputResourcesFields();
+		Assert.assertTrue("The created uml resource is empty.", this.umlResource.getContents().size() > 0); //$NON-NLS-1$
+		final Iterator<EObject> iter = this.umlResource.getContents().iterator();
+		Package root = null;
+		while (root == null && iter.hasNext()) {
+			final EObject tmp = iter.next();
+			if (tmp instanceof Package) {
+				root = (Package) tmp;
+			}
+		}
+		Assert.assertNotNull("The root of the imported model has not been found", root); //$NON-NLS-1$
+
+		checkEAnnotationUsedForImportRpyModelVersioning(root);
+	}
+
+	@Test
+	@Ignore
+	public void checkNotationModel_ImportRpyVersioning() {
+		initOutputResourcesFields();
+		Assert.assertTrue("The created notation resource is empty.", this.notationResource.getContents().size() > 0); //$NON-NLS-1$
+		for (final EObject current : this.notationResource.getContents()) {
+			if (current instanceof Diagram) {
+				checkEAnnotationUsedForImportRpyModelVersioning((Diagram) current);
+			}
+		}
+	}
+
+	/**
+	 * This method check that the EObject owns the required EAnnotation indicating the model Model or Diagram has been created from a Rpy Model
+	 * 
+	 * @param objectToTest
+	 *            an object
+	 */
+	protected void checkEAnnotationUsedForImportRpyModelVersioning(final EModelElement objectToTest) {
+		Assert.assertTrue("Internal test checking that tested object is a NamedElement or a Diagram failed", objectToTest instanceof NamedElement || objectToTest instanceof Diagram); //$NON-NLS-1$
+		String objectName = ""; //$NON-NLS-1$
+		if (objectToTest instanceof NamedElement) {
+			objectName = ((NamedElement) objectToTest).getName();
+		} else {
+			objectName = ((Diagram) objectToTest).getName();
+		}
+		final String eClassName = objectToTest.eClass().getName();
+		final EAnnotation annotation = objectToTest.getEAnnotation(VersioningBlackboxes.VERSIONING_EANNOTATION_SOURCE);
+		Assert.assertNotNull(NLS.bind("{0}:{1} : The EAnnotation used for versioning has not been found.", objectName, eClassName), annotation); //$NON-NLS-1$
+
+		// we check the Papyrus Bundle version used for the import
+		final String papyrusImportBundleVersion = annotation.getDetails().get(VersioningBlackboxes.VERSIONING_EANNOTATION_DETAIL_KEY_PAPYRUS_RPY_IMPORT_BUNDLE_VERSION);
+		Assert.assertNotNull(NLS.bind("{0}:{1} : The string indicating the Papyrus import version has not been found.", objectName, eClassName), papyrusImportBundleVersion); //$NON-NLS-1$
+		Assert.assertTrue(NLS.bind("{0}:{1} : The string indicating the Papyrus version is empty.", objectName, eClassName), !papyrusImportBundleVersion.isEmpty()); //$NON-NLS-1$
+
+		final String RpyVersion = annotation.getDetails().get(VersioningBlackboxes.VERSIONING_EANNOTATION_DETAIL_KEY_RPY_VERSION);
+		Assert.assertNotNull(NLS.bind("{0}:{1} : The string indicating the Rpy version has not been found.", objectName, eClassName), RpyVersion); //$NON-NLS-1$
+		Assert.assertTrue(NLS.bind("{0}:{1} : The string indicating the Rpy version is empty.", objectName, eClassName), !RpyVersion.isEmpty()); //$NON-NLS-1$
+
+		final String rpyModelName = annotation.getDetails().get(VersioningBlackboxes.VERSIONING_EANNOTATION_DETAIL_KEY_RPY_PROJECT_NAME);
+		Assert.assertNotNull(NLS.bind("{0}:{1} : The string indicating the name of the Rpy model has not been found.", objectName, eClassName), rpyModelName); //$NON-NLS-1$
+		Assert.assertTrue(NLS.bind("{0}:{1} : The string indicating the name of the Rpy model.", objectName, eClassName), !rpyModelName.isEmpty()); //$NON-NLS-1$
+	}
+
+	/**
+	 * Check the compatibility diagram version for all imported diagrams
+	 */
+	@Test
+	@Ignore
+	public void checkImportedDiagramCompatibilityVersion() {
+		initOutputResourcesFields();
+		Assert.assertTrue("The created notation resource is empty.", this.notationResource.getContents().size() > 0); //$NON-NLS-1$
+		for (final EObject current : this.notationResource.getContents()) {
+			if (current instanceof Diagram) {
+				final StringValueStyle style = (StringValueStyle) ((Diagram) current).getNamedStyle(NotationPackage.eINSTANCE.getStringValueStyle(), VersioningBlackboxes.COMPATIBILITY_VERSION);
+				Assert.assertNotNull(NLS.bind("{0}:Diagram : The compatibility diagram version has not been found", ((Diagram) current).getName()), style); //$NON-NLS-1$
+				Assert.assertTrue(NLS.bind("{0}:Diagram : The compatibility diagram version is empty", ((Diagram) current).getName()), style.getStringValue().length() > 0); //$NON-NLS-1$
+			}
+		}
+	}
+
+	/**
+	 * This method allows to check the created UML Model with the expected one
+	 * 
+	 * FIXME : in some case, the result is wrong, we detect diff between PackageImport
+	 */
+	@Test
+	public void checkSemanticWithEMFCompare() {
+		initOutputResourcesFields();
+		final ResourceSet resultSet = new ResourceSetImpl();
+		Resource currentResultResource = resultSet.getResource(this.umlResource.getURI(), true);
+		List<EObject> currentContents = new ArrayList<EObject>( currentResultResource.getContents());
+		currentContents.sort(new XMI_ID_Sorter());
+		currentResultResource.getContents().clear();
+		currentResultResource.getContents().addAll(currentContents);
+		
+		final ResourceSet expectedSet = new ResourceSetImpl();
+		Resource expectedResource = expectedSet.getResource(expectedResultFixture.getModelResource().getURI(), true);
+		List<EObject> expectedContents = new ArrayList<EObject>(expectedResource.getContents());
+		expectedContents.sort(new XMI_ID_Sorter());
+		expectedResource.getContents().clear();
+		expectedResource.getContents().addAll(expectedContents);
+		
+		final DefaultComparisonScope scope = new DefaultComparisonScope(resultSet, expectedSet, null);
+		final Comparison result = EMFCompareUtils.createEMFCompare().compare(scope);
+		final List<Conflict> conflicts = result.getConflicts();
+		Assert.assertEquals("Conflicts have been detected", 0, conflicts.size()); //$NON-NLS-1$
+
+		final List<Diff> differences = getFilteredDiff(new ArrayList<Diff>(result.getDifferences()));
+
+		if (!differences.isEmpty()) {
+			final StringBuilder builder = new StringBuilder(NLS.bind("{0} differences have been detected: \n", differences.size())); //$NON-NLS-1$
+			final Iterator<Diff> iter = differences.iterator();
+			while (iter.hasNext()) {
+				final Diff current = iter.next();
+				builder.append(current.toString());
+				if (iter.hasNext()) {
+					builder.append("\n"); //$NON-NLS-1$
+				}
+			}
+			Assert.assertEquals(builder.toString(), 0, differences.size());
+		}
+	}
+
+	public class XMI_ID_Sorter implements Comparator<EObject>{
+
+		/**
+		 * @see java.util.Comparator#compare(java.lang.Object, java.lang.Object)
+		 *
+		 * @param o1
+		 * @param o2
+		 * @return
+		 */
+		@Override
+		public int compare(EObject o1, EObject o2) {
+			XMIResource res1 = (XMIResource) o1.eResource();
+			XMIResource res2 = (XMIResource) o2.eResource();
+			String id1 = res1.getID(o1);
+			String id2 = res2.getID(o2);
+			return id1.compareTo(id2);
+		}
+		
+	}
+
+	protected List<Diff> getFilteredDiff(final List<Diff> diff) {
+		List<Diff> returnedDiffs = new ArrayList<>(diff);
+		for (Diff current : diff) {
+			if (current instanceof ReferenceChangeSpec) {
+				if (current.getKind() == DifferenceKind.ADD || current.getKind() == DifferenceKind.DELETE) {
+					EObject value = ((ReferenceChangeSpec) current).getValue();
+					if (value instanceof EStringToStringMapEntryImpl) {
+						EStringToStringMapEntryImpl map = (EStringToStringMapEntryImpl) value;
+						String key = map.getKey();
+						if ("Rpy Version".equals(key) || "Papyrus Rpy Import Bundle Version".equals(key)) { //TODO use const here
+							returnedDiffs.remove(current);
+						}
+					}
+				}
+			}
+		}
+		return returnedDiffs;
+	}
+
+
+	/**
+	 * This method allows to check the created UML Model with the expected one
+	 */
+	@Test
+	@Ignore // doesn't work yet
+	public void checkNotationWithEMFCompare() {
+		final ResourceSet resultSet = new ResourceSetImpl();
+		resultSet.getResource(this.umlResource.getURI(), true);
+		resultSet.getResource(this.notationResource.getURI(), true);
+
+
+		final ResourceSet expectedSet = new ResourceSetImpl();
+
+		expectedSet.getResource(expectedResultFixture.getModelResource().getURI(), true);
+		expectedSet.getResource(expectedResultFixture.getModelResource().getURI().trimFileExtension().appendFileExtension("notation"), true);
+
+
+		final DefaultComparisonScope scope = new DefaultComparisonScope(resultSet, expectedSet, null);
+		final Comparison result = EMFCompareUtils.createEMFCompare().compare(scope);
+		final List<Conflict> conflicts = result.getConflicts();
+		Assert.assertEquals("Conflicts have been detected", 0, conflicts.size()); //$NON-NLS-1$
+
+		final List<Diff> differences = result.getDifferences();
+		if (!differences.isEmpty()) {
+			final StringBuilder builder = new StringBuilder(NLS.bind("{0} differences have been detected: \n", differences.size())); //$NON-NLS-1$
+			final Iterator<Diff> iter = differences.iterator();
+			while (iter.hasNext()) {
+				final Diff current = iter.next();
+				builder.append(current.toString());
+				if (iter.hasNext()) {
+					builder.append("\n"); //$NON-NLS-1$
+				}
+			}
+			Assert.assertEquals(builder.toString(), 0, differences.size());
+		}
+	}
+
+	/** relative path for some interesting folder to check */
+
+
+	private static final String XMI_ID_ATTRIBUTE_NAME = "xmi:id"; // $NON-NLS-0$
+
+	/**
+	 * Checks that the XMI_ID are unique in the uml file
+	 */
+	@Test
+	public void checkUnicityOfXMI_ID_In_UML_File() throws Exception {
+		DocumentBuilder dBuilder;
+		Document document = null;
+		dBuilder = DocumentBuilderFactory.newInstance().newDocumentBuilder();
+		document = dBuilder.parse(getUMLOutputFile());
+		List<String> ids = new ArrayList<String>();
+		List<Node> nodes = flattenDocument(document);
+		for (Node node : nodes) {
+			if (node.getAttributes() != null) {
+				Node item = node.getAttributes().getNamedItem(XMI_ID_ATTRIBUTE_NAME);
+				if (item != null) {
+					String value = item.getNodeValue();
+					ids.add(value);
+				}
+			}
+		}
+		Set<String> uniqueIds = new HashSet<>(ids);
+		for (String t : uniqueIds) {
+			// remove all method remove all instance, so it can't be used here
+			ids.remove(t);
+		}
+		Assert.assertEquals("Some ids are duplicated in the UML model: " + ids.toString(), 0, ids.size());
+	}
+
+	/**
+	 * Checks that the XMI_ID are unique in the uml file
+	 */
+	@Test
+	@Ignore
+	public void checkUnicityOfXMI_ID_In_Notation_File() throws Exception {
+		DocumentBuilder dBuilder;
+		Document document = null;
+		dBuilder = DocumentBuilderFactory.newInstance().newDocumentBuilder();
+		document = dBuilder.parse(getNotationOutputFile());
+		List<String> ids = new ArrayList<String>();
+		List<Node> nodes = flattenDocument(document);
+		for (Node node : nodes) {
+			if (node.getAttributes() != null) {
+				Node item = node.getAttributes().getNamedItem(XMI_ID_ATTRIBUTE_NAME);
+				if (item != null) {
+					String value = item.getNodeValue();
+					ids.add(value);
+				}
+			}
+		}
+		Set<String> uniqueIds = new HashSet<>(ids);
+		for (String t : uniqueIds) {
+			// remove all method remove all instance, so it can't be used here
+			ids.remove(t);
+		}
+		Assert.assertEquals("Some ids are duplicated in the Notation model: " + ids.toString(), 0, ids.size());
+	}
+
+	/**
+	 * Checks that all IDS contains the string GUID
+	 */
+	@Test
+	public void checkIds_In_UML_File() throws Exception {
+		DocumentBuilder dBuilder;
+		Document document = null;
+		dBuilder = DocumentBuilderFactory.newInstance().newDocumentBuilder();
+		document = dBuilder.parse(getUMLOutputFile());
+		List<String> ids = new ArrayList<String>();
+		List<Node> nodes = flattenDocument(document);
+		for (Node node : nodes) {
+			if (node.getAttributes() != null) {
+				Node item = node.getAttributes().getNamedItem(XMI_ID_ATTRIBUTE_NAME);
+				if (item != null) {
+					String value = item.getNodeValue();
+					ids.add(value);
+				}
+			}
+		}
+		List<String> errorsIds = new ArrayList<String>();
+		Consumer<? super String> action = (String param) -> {
+			if (!param.contains(RpyUtil.GUID_STRING) && !param.contains(RpyUtil.OLDID_STRING)) {
+				errorsIds.add(param);
+			}
+		};
+		ids.forEach(action);
+		Assert.assertEquals("Some ids doesn't contains the required string \"GUID\" or \"OLDID\":" + errorsIds.toString(), 0, errorsIds.size());
+	}
+
+	/**
+	 * Checks that all IDS contains the string GUID
+	 */
+	@Test
+	@Ignore // doesn't work yet
+	public void checkIds_In_Notation_File() throws Exception {
+		DocumentBuilder dBuilder;
+		Document document = null;
+		dBuilder = DocumentBuilderFactory.newInstance().newDocumentBuilder();
+		document = dBuilder.parse(getNotationOutputFile());
+		List<String> ids = new ArrayList<String>();
+		List<Node> nodes = flattenDocument(document);
+		for (Node node : nodes) {
+			if (node.getAttributes() != null) {
+				Node item = node.getAttributes().getNamedItem(XMI_ID_ATTRIBUTE_NAME);
+				if (item != null) {
+					String value = item.getNodeValue();
+					ids.add(value);
+				}
+			}
+		}
+		List<String> errorsIds = new ArrayList<String>();
+		Consumer<? super String> action = (String param) -> {
+			if (!param.contains("GUID")) { // TODO reuse me
+				errorsIds.add(param);
+			}
+		};
+		ids.forEach(action);
+		Assert.assertEquals("Some ids doesn't contains the required string \"GUID\":" + errorsIds.toString(), 0, errorsIds.size());
+	}
+
+	@Test
+	public void checkAllElementInUMLFileHaveAnID() throws Exception {
+		DocumentBuilder dBuilder;
+		Document document = null;
+		dBuilder = DocumentBuilderFactory.newInstance().newDocumentBuilder();
+		document = dBuilder.parse(getUMLOutputFile());
+		List<String> ids = new ArrayList<String>();
+		List<Node> nodes = flattenDocument(document);
+		for (Node node : nodes) {
+			if (node.getAttributes() != null) {
+				Node item = node.getAttributes().getNamedItem(XMI_ID_ATTRIBUTE_NAME);
+				if (item != null) {
+					String value = item.getNodeValue();
+					ids.add(value);
+				}
+			}
+		}
+		int nbElements = 0;
+
+		// here we need to load the umlResource to know how elements there are in the model.
+		// it can fail if several elements have the same IDs and incompatible type
+		initOutputResourcesFields();
+		Iterator<EObject> iter = this.umlResource.getAllContents();
+		while (iter.hasNext()) {
+			iter.next();
+			nbElements++;
+		}
+		Assert.assertEquals("I don't found the same number of XMI_ID than the number of element in the file", nbElements, ids.size());
+
+	}
+
+	@Test
+	@Ignore // doesn't work yet
+	public void checkAllElementInNotationFileHaveAnID() throws Exception {
+		DocumentBuilder dBuilder;
+		Document document = null;
+		dBuilder = DocumentBuilderFactory.newInstance().newDocumentBuilder();
+		document = dBuilder.parse(getNotationOutputFile());
+		List<String> ids = new ArrayList<String>();
+		List<Node> nodes = flattenDocument(document);
+		for (Node node : nodes) {
+			if (node.getAttributes() != null) {
+				Node item = node.getAttributes().getNamedItem(XMI_ID_ATTRIBUTE_NAME);
+				if (item != null) {
+					String value = item.getNodeValue();
+					ids.add(value);
+				}
+			}
+		}
+		int nbElements = 0;
+
+		// here we need to load the umlResource to know how elements there are in the model.
+		// it can fail if several elements have the same IDs and incompatible type
+		initOutputResourcesFields();
+		Iterator<EObject> iter = this.notationResource.getAllContents();
+		while (iter.hasNext()) {
+			iter.next();
+			nbElements++;
+		}
+		Assert.assertEquals("I don't found the same number of XMI_ID than the number of element in the file", nbElements, ids.size());
+
+	}
+
+	private static final int DEFAULT_PORT_HEIGHT = 20;
+	private static final int DEFAULT_PORT_WIDTH = 20;
+
+
+	/**
+	 * check the size of the port
+	 * 
+	 * This test must at least be valid for "shape_sysml_flowport_as_affixed"
+	 */
+	@Test
+	@Ignore
+	public void checkPortSize() {
+		initOutputResourcesFields();
+		final TreeIterator<EObject> iter = this.notationResource.getAllContents();
+		while (iter.hasNext()) {
+			final EObject current = iter.next();
+			if (current instanceof Shape) {
+				final Shape view = (Shape) current;
+				final EObject eobject = view.getElement();
+				if (eobject instanceof Port) {
+					if (view.getLayoutConstraint() instanceof Bounds) {
+						final Bounds bounds = (Bounds) view.getLayoutConstraint();
+						Assert.assertEquals("The height of the port is not the expected one", DEFAULT_PORT_HEIGHT, bounds.getHeight());
+						Assert.assertEquals("The width of the port is not the expected one", DEFAULT_PORT_WIDTH, bounds.getWidth());
+					}
+				}
+			}
+		}
+	}
+
+	/**
+	 * 
+	 * @param document
+	 *            a document
+	 * @return
+	 * 		all the nodes of the document
+	 */
+	public List<Node> flattenDocument(final Document document) {
+		List<Node> nodes = new ArrayList<Node>();
+		nodes = getAllChildren(document.getChildNodes());
+		return nodes;
+	}
+
+	/**
+	 * 
+	 * @param nodeList
+	 *            a node list
+	 * @return
+	 * 		all nodes and sub-nodes of the node list
+	 */
+	public List<Node> getAllChildren(NodeList nodeList) {
+		List<Node> objects = new ArrayList<>();
+		for (int i = 0; i < nodeList.getLength(); i++) {
+			Node node = nodeList.item(i);
+			objects.add(node);
+			objects.addAll(getAllChildren(node.getChildNodes()));
+		}
+		return objects;
+	}
+
+
+
+	/**
+	 * 
+	 * @return
+	 * 		the UML output file
+	 */
+	protected File getUMLOutputFile() {
+		final IPath path = this.outputUmlFile.getRawLocation();
+		final File file = path.toFile();
+		return file;
+	}
+
+	/**
+	 * 
+	 * @return
+	 * 		the Notation output file
+	 */
+	protected File getNotationOutputFile() {
+		final IPath path = this.outputNotationFile.getRawLocation();
+		final File file = path.toFile();
+		return file;
+	}
+
+}
diff --git a/rpy/tests/org.eclipse.papyrus.interoperability.rpy.tests/src/org/eclipse/papyrus/interoperability/rpy/tests/tests/EMFCompareUtils.java b/rpy/tests/org.eclipse.papyrus.interoperability.rpy.tests/src/org/eclipse/papyrus/interoperability/rpy/tests/tests/EMFCompareUtils.java
new file mode 100755
index 0000000..65ca96c
--- /dev/null
+++ b/rpy/tests/org.eclipse.papyrus.interoperability.rpy.tests/src/org/eclipse/papyrus/interoperability/rpy/tests/tests/EMFCompareUtils.java
@@ -0,0 +1,232 @@
+/*****************************************************************************
+ * Copyright (c) 2016 CEA LIST and others.
+ * 
+ * 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:
+ *  Vincent Lorenzo (CEA LIST) vincent.lorenzo@cea.fr - Initial API and implementation
+ *   
+ *****************************************************************************/
+
+package org.eclipse.papyrus.interoperability.rpy.tests.tests;
+
+import org.eclipse.emf.common.util.URI;
+import org.eclipse.emf.compare.EMFCompare;
+import org.eclipse.emf.compare.diff.DefaultDiffEngine;
+import org.eclipse.emf.compare.diff.DiffBuilder;
+import org.eclipse.emf.compare.diff.FeatureFilter;
+import org.eclipse.emf.compare.diff.IDiffEngine;
+import org.eclipse.emf.compare.diff.IDiffProcessor;
+import org.eclipse.emf.compare.match.DefaultComparisonFactory;
+import org.eclipse.emf.compare.match.DefaultEqualityHelperFactory;
+import org.eclipse.emf.compare.match.DefaultMatchEngine;
+import org.eclipse.emf.compare.match.IComparisonFactory;
+import org.eclipse.emf.compare.match.IEqualityHelperFactory;
+import org.eclipse.emf.compare.match.IMatchEngine;
+import org.eclipse.emf.compare.match.eobject.IEObjectMatcher;
+import org.eclipse.emf.compare.match.eobject.WeightProviderDescriptorRegistryImpl;
+import org.eclipse.emf.compare.match.impl.MatchEngineFactoryImpl;
+import org.eclipse.emf.compare.match.impl.MatchEngineFactoryRegistryImpl;
+import org.eclipse.emf.compare.utils.EqualityHelper;
+import org.eclipse.emf.compare.utils.IEqualityHelper;
+import org.eclipse.emf.compare.utils.UseIdentifiers;
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.emf.ecore.EStructuralFeature;
+import org.eclipse.emf.ecore.EcorePackage;
+
+import com.google.common.cache.LoadingCache;
+
+/**
+ * @author VL222926
+ *
+ */
+public class EMFCompareUtils {
+
+//	/**
+//	 * 
+//	 * @return
+//	 * 		an EMF Compare ready for comparison and configured as follow:
+//	 *         <ul>
+//	 *         <li>comparison USE XMI_ID (UseIdentifiers.NEVER)</li>
+//	 *         <li>redefining EqualityHelper to be able to match some UML Element not matching by default</li>
+//	 *         <li>redefining the DiffEngine to ignore differences on features which are not ordered in UML</li>
+//	 *         </ul>
+//	 */
+//	public static final EMFCompare createEMFCompare() {
+//		// testing equality helper
+//
+//		// we override the equality helper to be able to match some objects which didn't match with the default one
+		//final IEqualityHelperFactory helperFactory = createUMLEqualityHelper();
+//		final IComparisonFactory comparisonFactory = new DefaultComparisonFactory(helperFactory);
+//
+//		// we override the DiffEngine to ignore differences for non ordered feature
+//		final IDiffProcessor diffProcessor = new DiffBuilder();
+//		final IDiffEngine diffEngine = createDiffEngineIgnoringNonOrderedFeature(diffProcessor);
+//
+//		final IMatchEngine.Factory.Registry registry = MatchEngineFactoryRegistryImpl.createStandaloneInstance();
+//
+//		final IEObjectMatcher matcher = DefaultMatchEngine.createDefaultEObjectMatcher(UseIdentifiers.NEVER, WeightProviderDescriptorRegistryImpl.createStandaloneInstance());
+//		final MatchEngineFactoryImpl mathEnginefactory = new MatchEngineFactoryImpl(matcher, comparisonFactory);
+//		registry.add(mathEnginefactory);
+//		mathEnginefactory.setRanking(30); // default engine ranking is 10, must be higher to override.
+//
+//		// TODO : override the post processor too ?
+//		return EMFCompare.builder().setDiffEngine(diffEngine).setMatchEngineFactoryRegistry(registry).build();
+//	}
+
+
+	public static final EMFCompare createEMFCompare() {
+		// testing equality helper
+
+		// we override the equality helper to be able to match some objects which didn't match with the default one
+		//final IEqualityHelperFactory helperFactory = createUMLEqualityHelper();
+		final IEqualityHelperFactory helperFactory = new DefaultEqualityHelperFactory();
+		final IComparisonFactory comparisonFactory = new DefaultComparisonFactory(helperFactory);
+
+		// we override the DiffEngine to ignore differences for non ordered feature
+		final IDiffProcessor diffProcessor = new DiffBuilder();
+		final IDiffEngine diffEngine = createDiffEngineIgnoringNonOrderedFeature(diffProcessor);
+
+		final IMatchEngine.Factory.Registry registry = MatchEngineFactoryRegistryImpl.createStandaloneInstance();
+
+//		final IEObjectMatcher matcher = DefaultMatchEngine.createDefaultEObjectMatcher(UseIdentifiers.NEVER, WeightProviderDescriptorRegistryImpl.createStandaloneInstance());
+		final IEObjectMatcher matcher = DefaultMatchEngine.createDefaultEObjectMatcher(UseIdentifiers.ONLY, WeightProviderDescriptorRegistryImpl.createStandaloneInstance());
+		final MatchEngineFactoryImpl mathEnginefactory = new MatchEngineFactoryImpl(matcher, comparisonFactory);
+		registry.add(mathEnginefactory);
+		mathEnginefactory.setRanking(30); // default engine ranking is 10, must be higher to override.
+
+		// TODO : override the post processor too ?
+		return EMFCompare.builder().setDiffEngine(diffEngine).setMatchEngineFactoryRegistry(registry).build();
+	}
+	
+	// /**
+	// *
+	// * @return
+	// * an EMF Compare ready for comparison and configured as follow:
+	// * <ul>
+	// * <li>comparison ignoring XMI_ID (UseIdentifiers.NEVER)</li>
+	// * <li>redefining EqualityHelper to be able to match some UML Element not matching by default</li>
+	// * <li>redefining the DiffEngine to ignore differences on features which are not ordered in UML</li>
+	// * </ul>
+	// */
+	// public static final EMFCompare createEMFCompareV2() {
+	// // testing equality helper
+	//
+	// // we override the equality helper to be able to match some objects which didn't match with the default one
+	// final IEqualityHelperFactory helperFactory = createUMLEqualityHelper();
+	// final IComparisonFactory comparisonFactory = new DefaultComparisonFactory(helperFactory);
+	//
+	// // we override the DiffEngine to ignore differences for non ordered feature
+	// final IDiffProcessor diffProcessor = new DiffBuilder();
+	// final IDiffEngine diffEngine = createDiffEngineIgnoringNonOrderedFeature(diffProcessor);
+	//
+	//
+	// final IMatchEngine.Factory.Registry registry = MatchEngineFactoryRegistryImpl.createStandaloneInstance();
+	// final EditionDistance editionDistance = new EditionDistance(WeightProviderDescriptorRegistryImpl.createStandaloneInstance());
+	// final CachingDistance cachedDistance = new CachingDistance(editionDistance);
+	//
+	//
+	// IEObjectMatcher matcher = new PapyrusProximityEObjectMatcher(cachedDistance){
+	//
+	// };
+	//
+	//// final IEObjectMatcher matcher = DefaultMatchEngine.createDefaultEObjectMatcher(UseIdentifiers.NEVER, WeightProviderDescriptorRegistryImpl.createStandaloneInstance());
+	// final MatchEngineFactoryImpl mathEnginefactory = new MatchEngineFactoryImpl(matcher, comparisonFactory);
+	// registry.add(mathEnginefactory);
+	// mathEnginefactory.setRanking(30); // default engine ranking is 10, must be higher to override.
+	// return EMFCompare.builder().setDiffEngine(diffEngine).setMatchEngineFactoryRegistry(registry).build();
+	// }
+	//
+	// /**
+	// *
+	// * @return
+	// * an EMF Compare ready for comparison and configured as follow:
+	// * <ul>
+	// * <li>comparison ignoring XMI_ID (UseIdentifiers.NEVER)</li>
+	// * <li>redefining EqualityHelper to be able to match some UML Element not matching by default</li>
+	// * <li>redefining the DiffEngine to ignore differences on features which are not ordered in UML</li>
+	// * </ul>
+	// */
+	// public static final EMFCompare createEMFCompareV3() {
+	// // testing equality helper
+	//
+	// // we override the equality helper to be able to match some objects which didn't match with the default one
+	//// final IEqualityHelperFactory helperFactory = createUMLEqualityHelper();
+	//// final IComparisonFactory comparisonFactory = new DefaultComparisonFactory(helperFactory);
+	//
+	// // we override the DiffEngine to ignore differences for non ordered feature
+	// final IDiffProcessor diffProcessor = new DiffBuilder();
+	// final IDiffEngine diffEngine = createDiffEngineIgnoringNonOrderedFeature(diffProcessor);
+	//
+	//
+	// final IMatchEngine.Factory.Registry registry = MatchEngineFactoryRegistryImpl.createStandaloneInstance();
+	// final EditionDistance editionDistance = new EditionDistance(WeightProviderDescriptorRegistryImpl.createStandaloneInstance());
+	// final CachingDistance cachedDistance = new CachingDistance(editionDistance);
+	//
+	//
+	// IEObjectMatcher matcher = new PapyrusProximityEObjectMatcher(cachedDistance);
+	//
+	//// final IEObjectMatcher matcher = DefaultMatchEngine.createDefaultEObjectMatcher(UseIdentifiers.NEVER, WeightProviderDescriptorRegistryImpl.createStandaloneInstance());
+	// final MatchEngineFactoryImpl mathEnginefactory = new MatchEngineFactoryImpl(matcher, new DefaultComparisonFactory(new DefaultEqualityHelperFactory()));
+	// registry.add(mathEnginefactory);
+	// mathEnginefactory.setRanking(30); // default engine ranking is 10, must be higher to override.
+	// return EMFCompare.builder().setDiffEngine(diffEngine).setMatchEngineFactoryRegistry(registry).build();
+	// }
+
+
+	/**
+	 * 
+	 * @return
+	 * 		a new equality helper used for UML
+	 */
+	protected static final IEqualityHelperFactory createUMLEqualityHelper() {
+		// we override the equality helper to be able to match some objects which didn't match with the default one
+		final IEqualityHelperFactory helperFactory = new DefaultEqualityHelperFactory() {
+			@Override
+			public IEqualityHelper createEqualityHelper() {
+				final LoadingCache<EObject, URI> cache = EqualityHelper.createDefaultCache(getCacheBuilder());
+				return new UMLIgnoringIdentifiedEqualityHelper(cache);
+			}
+		};
+		return helperFactory;
+	}
+
+	/**
+	 * 
+	 * @param diffProcessor
+	 *            the diff processor
+	 * @return
+	 * 		a DiffEngine ignoring the feature where isOrdered() return false;s
+	 */
+	protected static final IDiffEngine createDiffEngineIgnoringNonOrderedFeature(IDiffProcessor diffProcessor) {
+		return new DefaultDiffEngine(diffProcessor) {
+			@Override
+			protected FeatureFilter createFeatureFilter() {
+				return new FeatureFilter() {
+
+
+					/**
+					 * 
+					 * @see org.eclipse.emf.compare.diff.FeatureFilter#checkForOrderingChanges(org.eclipse.emf.ecore.EStructuralFeature)
+					 *
+					 * @param feature
+					 * @return
+					 */
+					@Override
+					public boolean checkForOrderingChanges(EStructuralFeature feature) {
+						if (feature.isOrdered()) {
+							if (feature.eClass().getEPackage() == EcorePackage.eINSTANCE) {
+								return false;
+							}
+							System.out.println("ORDERED_FEATURE:  " + feature.getName());
+						}
+						return feature.isOrdered();
+					}
+				};
+			}
+		};
+	}
+}
diff --git a/rpy/tests/org.eclipse.papyrus.interoperability.rpy.tests/src/org/eclipse/papyrus/interoperability/rpy/tests/tests/PapyrusProximityEObjectMatcher.java b/rpy/tests/org.eclipse.papyrus.interoperability.rpy.tests/src/org/eclipse/papyrus/interoperability/rpy/tests/tests/PapyrusProximityEObjectMatcher.java
new file mode 100755
index 0000000..a7ec7e8
--- /dev/null
+++ b/rpy/tests/org.eclipse.papyrus.interoperability.rpy.tests/src/org/eclipse/papyrus/interoperability/rpy/tests/tests/PapyrusProximityEObjectMatcher.java
@@ -0,0 +1,493 @@
+package org.eclipse.papyrus.interoperability.rpy.tests.tests;
+
+import com.google.common.collect.ImmutableList;
+import com.google.common.collect.Iterators;
+import com.google.common.collect.Lists;
+import com.google.common.collect.Maps;
+import com.google.common.collect.Sets;
+
+import java.util.HashMap;
+import java.util.Iterator;
+import java.util.List;
+import java.util.Map;
+import java.util.Set;
+
+import org.eclipse.core.runtime.QualifiedName;
+import org.eclipse.emf.common.util.BasicEList;
+import org.eclipse.emf.common.util.Monitor;
+import org.eclipse.emf.compare.CompareFactory;
+import org.eclipse.emf.compare.Comparison;
+import org.eclipse.emf.compare.ComparisonCanceledException;
+import org.eclipse.emf.compare.EMFCompareMessages;
+import org.eclipse.emf.compare.Match;
+import org.eclipse.emf.compare.match.eobject.EObjectIndex;
+import org.eclipse.emf.compare.match.eobject.EObjectIndex.Side;
+import org.eclipse.emf.compare.match.eobject.IEObjectMatcher;
+import org.eclipse.emf.compare.match.eobject.ProximityEObjectMatcher;
+import org.eclipse.emf.compare.match.eobject.ProximityEObjectMatcher.DistanceFunction;
+import org.eclipse.emf.compare.match.eobject.ScopeQuery;
+import org.eclipse.emf.compare.match.eobject.internal.ByTypeIndex;
+import org.eclipse.emf.compare.match.eobject.internal.MatchAheadOfTime;
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.uml2.uml.NamedElement;
+import org.eclipse.uml2.uml.PackageImport;
+import org.eclipse.uml2.uml.ProfileApplication;
+
+/**
+ * This matcher is using a distance function to match EObject. It guarantees that elements are matched with
+ * the other EObject having the lowest distance. If two elements have the same distance regarding the other
+ * EObject it will arbitrary pick one. (You should probably not rely on this and make sure your distance only
+ * return 0 if both EObject have the very same content). The matcher will try to use the fact that it is a
+ * distance to achieve a suitable scalability. It is also build on the following assumptions :
+ * <ul>
+ * <li>Most EObjects have no difference and have their corresponding EObject on the other sides of the model
+ * (right and origins)</li>
+ * <li>Two consecutive calls on the distance function with the same parameters will give the same distance.
+ * </li>
+ * </ul>
+ * The scalability you'll get will highly depend on the complexity of the distance function. The
+ * implementation is not caching any distance result from two EObjects.
+ * 
+ * @author <a href="mailto:cedric.brun@obeo.fr">Cedric Brun</a>
+ */
+
+
+//TODO : not yet used and seems don't enough to be able to match properly PackageImport!
+public class PapyrusProximityEObjectMatcher implements IEObjectMatcher, ScopeQuery {
+	/**
+	 * Number of elements to index before a starting a match ahead step.
+	 */
+	private static final int NB_ELEMENTS_BETWEEN_MATCH_AHEAD = 10000;
+
+	/**
+	 * The index which keep the EObjects.
+	 */
+	private EObjectIndex index;
+
+	/**
+	 * Keeps track of which side was the EObject from.
+	 */
+	private Map<EObject, Side> eObjectsToSide = Maps.newHashMap();
+
+	/**
+	 * Create the matcher using the given distance function.
+	 * 
+	 * @param meter
+	 *            a function to measure the distance between two {@link EObject}s.
+	 */
+	public PapyrusProximityEObjectMatcher(DistanceFunction meter) {
+		this.index = new ByTypeIndex(meter, this);
+	}
+
+	Map<String, EObject> leftMap = new HashMap<String, EObject>();
+	Map<String, EObject> rightMap = new HashMap<String, EObject>();
+
+	Map<String, EObject> leftPackageImportMap = new HashMap<String, EObject>();
+	Map<String, EObject> rightPackageImportMap = new HashMap<String, EObject>();
+
+
+	Map<String, EObject> leftProfileApplicationImportMap = new HashMap<String, EObject>();
+	Map<String, EObject> rightProfileApplicationImportMap = new HashMap<String, EObject>();
+
+	private void addToLeftNamedElementMap(EObject object) {
+		if (object instanceof NamedElement) {
+			leftMap.put(((NamedElement) object).getQualifiedName(), object);
+		} else if (object instanceof PackageImport) {
+			leftPackageImportMap.put(((PackageImport) object).getImportedPackage().getQualifiedName(), object);
+		} else if (object instanceof ProfileApplication) {
+			leftProfileApplicationImportMap.put(((ProfileApplication) object).getAppliedProfile().getQualifiedName(), object);
+		}
+
+	}
+
+	private void addToRightNamedElementMap(EObject object) {
+		if (object instanceof NamedElement) {
+			rightMap.put(((NamedElement) object).getQualifiedName(), object);
+		} else if (object instanceof PackageImport) {
+			rightPackageImportMap.put(((PackageImport) object).getImportedPackage().getQualifiedName(), object);
+		} else if (object instanceof ProfileApplication) {
+			rightProfileApplicationImportMap.put(((ProfileApplication) object).getAppliedProfile().getQualifiedName(), object);
+		}
+	}
+
+
+
+	/**
+	 * {@inheritDoc}
+	 */
+	public void createMatches(Comparison comparison, Iterator<? extends EObject> leftEObjects,
+			Iterator<? extends EObject> rightEObjects, Iterator<? extends EObject> originEObjects,
+			Monitor monitor) {
+		if (!leftEObjects.hasNext() && !rightEObjects.hasNext() && !originEObjects.hasNext()) {
+			return;
+		}
+
+		monitor.subTask(EMFCompareMessages.getString("ProximityEObjectMatcher.monitor.indexing")); //$NON-NLS-1$
+		int nbElements = 0;
+		int lastSegment = 0;
+		/*
+		 * We are iterating through the three sides of the scope at the same time so that index might apply
+		 * pre-matching strategies elements if they wish.
+		 */
+		while (leftEObjects.hasNext() || rightEObjects.hasNext() || originEObjects.hasNext()) {
+			if (monitor.isCanceled()) {
+				throw new ComparisonCanceledException();
+			}
+
+			if (leftEObjects.hasNext()) {
+				EObject next = leftEObjects.next();
+				nbElements++;
+				index.index(next, Side.LEFT);
+				eObjectsToSide.put(next, Side.LEFT);
+				addToLeftNamedElementMap(next);
+			}
+
+			if (rightEObjects.hasNext()) {
+				EObject next = rightEObjects.next();
+				index.index(next, Side.RIGHT);
+				eObjectsToSide.put(next, Side.RIGHT);
+				addToRightNamedElementMap(next);
+			}
+
+			if (originEObjects.hasNext()) {
+				EObject next = originEObjects.next();
+				index.index(next, Side.ORIGIN);
+				eObjectsToSide.put(next, Side.ORIGIN);
+			}
+			if (nbElements / NB_ELEMENTS_BETWEEN_MATCH_AHEAD > lastSegment) {
+				matchAheadOfTime(comparison, monitor);
+				lastSegment++;
+			}
+
+		}
+
+		monitor.subTask(EMFCompareMessages.getString("ProximityEObjectMatcher.monitor.matching")); //$NON-NLS-1$
+		createMatch(comparison);
+		matchIndexedObjects(comparison, monitor);
+
+		createUnmatchesForRemainingObjects(comparison);
+		restructureMatchModel(comparison);
+
+	}
+
+	/**
+	 * 
+	 */
+	private void createMatch(Comparison comparison) {
+		Iterator<String> iter = leftMap.keySet().iterator();
+		while (iter.hasNext()) {
+			String current = iter.next();
+			EObject leftValue = leftMap.get(current);
+			EObject rightValue = rightMap.get(current);
+			if (leftValue != null && rightValue != null) {
+				areMatching(comparison, leftValue, rightValue, null);
+			}
+		}
+		iter = leftPackageImportMap.keySet().iterator();
+		while (iter.hasNext()) {
+			String current = iter.next();
+			EObject leftValue = leftPackageImportMap.get(current);
+			EObject rightValue = rightPackageImportMap.get(current);
+			if (leftValue != null && rightValue != null) {
+				areMatching(comparison, leftValue, rightValue, null);
+			}
+		}
+
+		iter = leftProfileApplicationImportMap.keySet().iterator();
+		while (iter.hasNext()) {
+			String current = iter.next();
+			EObject leftValue = leftProfileApplicationImportMap.get(current);
+			EObject rightValue = rightProfileApplicationImportMap.get(current);
+			if (leftValue != null && rightValue != null) {
+				areMatching(comparison, leftValue, rightValue, null);
+			}
+		}
+	}
+
+	/**
+	 * If the index supports it, match element ahead of time, in case of failure the elements are kept and
+	 * will be processed again later on.
+	 * 
+	 * @param comparison
+	 *            the current comoparison.
+	 * @param monitor
+	 *            monitor to track progress.
+	 */
+	private void matchAheadOfTime(Comparison comparison, Monitor monitor) {
+		if (index instanceof MatchAheadOfTime) {
+			matchList(comparison, ((MatchAheadOfTime) index).getValuesToMatchAhead(Side.LEFT), false, monitor);
+			matchList(comparison, ((MatchAheadOfTime) index).getValuesToMatchAhead(Side.RIGHT), false,
+					monitor);
+		}
+	}
+
+	/**
+	 * Match elements for real, if no match is found for an element, an object will be created to represent
+	 * this unmatch and the element will not be processed again.
+	 * 
+	 * @param comparison
+	 *            the current comparison.
+	 * @param monitor
+	 *            monitor to track progress.
+	 */
+	private void matchIndexedObjects(Comparison comparison, Monitor monitor) {
+		Iterable<EObject> todo = index.getValuesStillThere(Side.LEFT);
+		while (todo.iterator().hasNext()) {
+			if (monitor.isCanceled()) {
+				throw new ComparisonCanceledException();
+			}
+			todo = matchList(comparison, todo, true, monitor);
+		}
+		todo = index.getValuesStillThere(Side.RIGHT);
+		while (todo.iterator().hasNext()) {
+			if (monitor.isCanceled()) {
+				throw new ComparisonCanceledException();
+			}
+			todo = matchList(comparison, todo, true, monitor);
+		}
+
+	}
+
+	/**
+	 * Create all the Match objects for the remaining EObjects.
+	 * 
+	 * @param comparison
+	 *            the current comparison.
+	 */
+	private void createUnmatchesForRemainingObjects(Comparison comparison) {
+		for (EObject notFound : index.getValuesStillThere(Side.RIGHT)) {
+			areMatching(comparison, null, notFound, null);
+		}
+		for (EObject notFound : index.getValuesStillThere(Side.LEFT)) {
+			areMatching(comparison, notFound, null, null);
+		}
+		for (EObject notFound : index.getValuesStillThere(Side.ORIGIN)) {
+			areMatching(comparison, null, null, notFound);
+		}
+	}
+
+	/**
+	 * Process the list of objects matching them. This method might not be able to process all the EObjects if
+	 * - for instance, their container has not been matched already. Every object which could not be matched
+	 * is returned in the list.
+	 * 
+	 * @param comparison
+	 *            the comparison being built.
+	 * @param todoList
+	 *            the list of objects to process.
+	 * @param createUnmatches
+	 *            whether elements which have no match should trigger the creation of a Match object (meaning
+	 *            we won't try to match them afterwards) or not.
+	 * @param monitor
+	 *            a monitor to track progress.
+	 * @return the list of EObjects which could not be processed for some reason.
+	 */
+	private Iterable<EObject> matchList(Comparison comparison, Iterable<EObject> todoList,
+			boolean createUnmatches, Monitor monitor) {
+		Set<EObject> remainingResult = Sets.newLinkedHashSet();
+		List<EObject> requiredContainers = Lists.newArrayList();
+		Iterator<EObject> todo = todoList.iterator();
+		while (todo.hasNext()) {
+			if (monitor.isCanceled()) {
+				throw new ComparisonCanceledException();
+			}
+			EObject next = todo.next();
+			/*
+			 * Let's first add every container which is in scope
+			 */
+			EObject container = next.eContainer();
+			while (container != null && isInScope(container)) {
+				if (comparison.getMatch(container) == null) {
+					requiredContainers.add(0, container);
+				}
+				container = container.eContainer();
+			}
+		}
+		Iterator<EObject> containersAndTodo = Iterators.concat(requiredContainers.iterator(),
+				todoList.iterator());
+		while (containersAndTodo.hasNext()) {
+			if (monitor.isCanceled()) {
+				throw new ComparisonCanceledException();
+			}
+			EObject next = containersAndTodo.next();
+			/*
+			 * At this point you need to be sure the element has not been matched in any other way before.
+			 */
+			if (comparison.getMatch(next) == null) {
+				if (!tryToMatch(comparison, next, createUnmatches)) {
+					remainingResult.add(next);
+				}
+			}
+		}
+		return remainingResult;
+	}
+
+	/**
+	 * Try to create a Match. If the match got created, register it (having actual left/right/origin matches
+	 * or not), if not, then return false. Cases where it might not create the match : if some required data
+	 * has not been computed yet (for instance if the container of an object has not been matched and if the
+	 * distance need to know if it's match to find the children matches).
+	 * 
+	 * @param comparison
+	 *            the comparison under construction, it will be updated with the new match.
+	 * @param a
+	 *            object to match.
+	 * @param createUnmatches
+	 *            whether elements which have no match should trigger the creation of a Match object (meaning
+	 *            we won't try to match them afterwards) or not.
+	 * @return false if the conditions are not fulfilled to create the match, true otherwhise.
+	 */
+	private boolean tryToMatch(Comparison comparison, EObject a, boolean createUnmatches) {
+		boolean okToMatch = false;
+		Side aSide = eObjectsToSide.get(a);
+		assert aSide != null;
+		Side bSide = Side.LEFT;
+		Side cSide = Side.RIGHT;
+		if (aSide == Side.RIGHT) {
+			bSide = Side.LEFT;
+			cSide = Side.ORIGIN;
+		} else if (aSide == Side.LEFT) {
+			bSide = Side.RIGHT;
+			cSide = Side.ORIGIN;
+		} else if (aSide == Side.ORIGIN) {
+			bSide = Side.LEFT;
+			cSide = Side.RIGHT;
+		}
+		assert aSide != bSide;
+		assert bSide != cSide;
+		assert cSide != aSide;
+		Map<Side, EObject> closests = index.findClosests(comparison, a, aSide);
+		if (closests != null) {
+			EObject lObj = closests.get(bSide);
+			EObject aObj = closests.get(cSide);
+			if (lObj != null || aObj != null) {
+				// we have at least one other match
+				areMatching(comparison, closests.get(Side.LEFT), closests.get(Side.RIGHT),
+						closests.get(Side.ORIGIN));
+				okToMatch = true;
+			} else if (createUnmatches) {
+				areMatching(comparison, closests.get(Side.LEFT), closests.get(Side.RIGHT),
+						closests.get(Side.ORIGIN));
+				okToMatch = true;
+			}
+		}
+		return okToMatch;
+	}
+
+	/**
+	 * Process all the matches of the given comparison and re-attach them to their parent if one is found.
+	 * 
+	 * @param comparison
+	 *            the comparison to restructure.
+	 */
+	private void restructureMatchModel(Comparison comparison) {
+		Iterator<Match> it = ImmutableList.copyOf(Iterators.filter(comparison.eAllContents(), Match.class))
+				.iterator();
+
+		while (it.hasNext()) {
+			Match cur = it.next();
+			EObject possibleContainer = null;
+			if (cur.getLeft() != null) {
+				possibleContainer = cur.getLeft().eContainer();
+			}
+			if (possibleContainer == null && cur.getRight() != null) {
+				possibleContainer = cur.getRight().eContainer();
+			}
+			if (possibleContainer == null && cur.getOrigin() != null) {
+				possibleContainer = cur.getOrigin().eContainer();
+			}
+			Match possibleContainerMatch = comparison.getMatch(possibleContainer);
+			if (possibleContainerMatch != null) {
+				((BasicEList<Match>) possibleContainerMatch.getSubmatches()).addUnique(cur);
+			}
+		}
+	}
+
+	/**
+	 * Register the given object as a match and add it in the comparison.
+	 * 
+	 * @param comparison
+	 *            container for the Match.
+	 * @param left
+	 *            left element.
+	 * @param right
+	 *            right element
+	 * @param origin
+	 *            origin element.
+	 * @return the created match.
+	 */
+	private Match areMatching(Comparison comparison, EObject left, EObject right, EObject origin) {
+		Match result = CompareFactory.eINSTANCE.createMatch();
+		result.setLeft(left);
+		result.setRight(right);
+		result.setOrigin(origin);
+		((BasicEList<Match>) comparison.getMatches()).addUnique(result);
+		if (left != null) {
+			index.remove(left, Side.LEFT);
+		}
+		if (right != null) {
+			index.remove(right, Side.RIGHT);
+		}
+		if (origin != null) {
+			index.remove(origin, Side.ORIGIN);
+		}
+		return result;
+	}
+
+	// /**
+	// * This represent a distance function used by the {@link PapyrusProximityEObjectMatcher} to compare EObjects and
+	// * retrieve the closest EObject from one side to another. Axioms of the distance are supposed to be
+	// * respected more especially :
+	// * <ul>
+	// * <li>symetry : dist(a,b) == dist(b,a)</li>
+	// * <li>separation :dist(a,a) == 0</li>
+	// * </ul>
+	// * Triangular inequality is not leveraged with the current implementation but might be at some point to
+	// * speed up the indexing. <br/>
+	// * computing the distance between two EObjects should be a <b> fast operation</b> or the scalability of
+	// * the whole matching phase will be poor.
+	// *
+	// * @author cedric brun <cedric.brun@obeo.fr>
+	// */
+	// public interface DistanceFunction {
+	// /**
+	// * Return the distance between two EObjects. When the two objects should considered as completely
+	// * different the implementation is expected to return Double.MAX_VALUE.
+	// *
+	// * @param inProgress
+	// * the comparison being processed right now. This might be used for the distance to
+	// * retrieve other matches for instance.
+	// * @param a
+	// * first object.
+	// * @param b
+	// * second object.
+	// * @return the distance between the two EObjects or Double.MAX_VALUE when the objects are considered
+	// * too different to be the same.
+	// */
+	// double distance(Comparison inProgress, EObject a, EObject b);
+	//
+	// /**
+	// * Check that two objects are equals from the distance function point of view (distance should be 0)
+	// * You should prefer this method when you just want to check objects are not equals enabling the
+	// * distance to stop sooner.
+	// *
+	// * @param inProgress
+	// * the comparison being processed right now. This might be used for the distance to
+	// * retrieve other matches for instance.
+	// * @param a
+	// * first object.
+	// * @param b
+	// * second object.
+	// * @return true of the two objects are equals, false otherwise.
+	// */
+	// boolean areIdentic(Comparison inProgress, EObject a, EObject b);
+	//
+	// }
+
+	/**
+	 * {@inheritDoc}
+	 */
+	public boolean isInScope(EObject eContainer) {
+		return eObjectsToSide.get(eContainer) != null;
+	}
+}
diff --git a/rpy/tests/org.eclipse.papyrus.interoperability.rpy.tests/src/org/eclipse/papyrus/interoperability/rpy/tests/tests/TestRpyMetamodel.java b/rpy/tests/org.eclipse.papyrus.interoperability.rpy.tests/src/org/eclipse/papyrus/interoperability/rpy/tests/tests/TestRpyMetamodel.java
new file mode 100755
index 0000000..58c0656
--- /dev/null
+++ b/rpy/tests/org.eclipse.papyrus.interoperability.rpy.tests/src/org/eclipse/papyrus/interoperability/rpy/tests/tests/TestRpyMetamodel.java
@@ -0,0 +1,122 @@
+/*****************************************************************************
+ * Copyright (c) 2017 CEA LIST and others.
+ * 
+ * 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:
+ *   CEA LIST - Initial API and implementation
+ *   
+ *****************************************************************************/
+
+package org.eclipse.papyrus.interoperability.rpy.tests.tests;
+
+import java.util.ArrayList;
+import java.util.Iterator;
+import java.util.List;
+
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.emf.ecore.EcorePackage;
+import org.eclipse.papyrus.interoperability.rpy.rpymetamodel.UMLRpyPackage;
+import org.junit.Assert;
+import org.junit.Test;
+
+/**
+ * This class tests Rpy metamodel properties for which we are sure of them
+ *
+ */
+@SuppressWarnings("nls")
+public class TestRpyMetamodel {
+
+	/**
+	 * the list of the elements which must not have the displayName feature (partial list)
+	 */
+	private static final List<EClass> withoutDisplayNameFeature = new ArrayList<EClass>();
+
+	/**
+	 * the list of the elements which must not have the displayName feature (partial list)
+	 */
+	private static final List<EClass> withDisplayNameFeature = new ArrayList<EClass>();
+
+
+	static {
+		// withoutDisplayNameFeature.add(UMLRpyPackage.eINSTANCE.getIAssociationEnd());
+
+		withDisplayNameFeature.add(UMLRpyPackage.eINSTANCE.getIAssociationEnd());
+		withDisplayNameFeature.add(UMLRpyPackage.eINSTANCE.getIObjectLink());
+		withDisplayNameFeature.add(UMLRpyPackage.eINSTANCE.getIInformationFlow());
+		withDisplayNameFeature.add(UMLRpyPackage.eINSTANCE.getIType());
+	}
+
+	/**
+	 * Check objects for which we are sure they must not have the displayName feature
+	 */
+	@Test
+	public void testObjectWithoutDisplayNameFeature() {
+		for (EClass current : withoutDisplayNameFeature) {
+			Assert.assertFalse("The eClass " + current.getName() + " must not contain a feature called " + UMLRpyPackage.eINSTANCE.getIModelElement_DisplayName().getName() + ".",
+					current.getEAllStructuralFeatures().contains(UMLRpyPackage.eINSTANCE.getIModelElement_DisplayName()));
+		}
+	}
+
+	/**
+	 * Check objects for which we are sure they must have the displayName feature
+	 */
+	@Test
+	public void textObjectWithDisplayNameFeature() {
+		for (EClass current : withDisplayNameFeature) {
+			Assert.assertTrue("The eClass " + current.getName() + " must contain a feature called " + UMLRpyPackage.eINSTANCE.getIModelElement_DisplayName().getName() + ".",
+					current.getEAllStructuralFeatures().contains(UMLRpyPackage.eINSTANCE.getIModelElement_DisplayName()));
+		}
+	}
+
+	/**
+	 * Check than all Papyrus Rpy metamodel inherits from EMF EModelElement.
+	 * This inheritance is required to be able to add EAnnotation to them (to indicate element coming for RPY licenced files)
+	 */
+	// @Test //to many elements doesn't validate this name, and we are not yet sure that all element needs to extend EModelElement
+	public void testEModelElementInheritanceForSemanticRpyObjects() {
+		final List<String> eClassWithBadSuperType = new ArrayList<String>();
+		for (final EObject current : UMLRpyPackage.eINSTANCE.eContents()) {
+			if (current instanceof EClass) {
+				final EClass eClass = (EClass) current;
+				final String name = eClass.getName();
+				if (!name.startsWith("CGI")) {
+					if (!eClass.getEAllSuperTypes().contains(EcorePackage.eINSTANCE.getEModelElement())) {
+						eClassWithBadSuperType.add(name);
+					}
+				}
+			}
+		}
+		if (!eClassWithBadSuperType.isEmpty()) {
+			StringBuffer buffer = new StringBuffer("Some semantic Papyrus Rpy Metamodel EClass doesn't extends EMF EModelElement:");
+			Iterator<String> iter = eClassWithBadSuperType.iterator();
+			while (iter.hasNext()) {
+				buffer.append(iter.next());
+				if (iter.hasNext()) {
+					buffer.append(", ");
+				}
+			}
+			buffer.append(".");
+			Assert.assertEquals(buffer.toString(), 0, eClassWithBadSuperType.size());
+		}
+	}
+
+	@Test
+	public void testEModelElementInheritanceFor_IModelElement() {
+		Assert.assertTrue(UMLRpyPackage.eINSTANCE.getIModelElement().getEAllSuperTypes().contains(EcorePackage.eINSTANCE.getEModelElement()));
+	}
+	
+	@Test
+	public void testEModelElementInheritanceFor_IStereotype() {
+		Assert.assertTrue(UMLRpyPackage.eINSTANCE.getIStereotype().getEAllSuperTypes().contains(EcorePackage.eINSTANCE.getEModelElement()));
+	}
+	
+	@Test
+	public void testEModelElementInheritanceFor_IType() {
+		Assert.assertTrue(UMLRpyPackage.eINSTANCE.getIType().getEAllSuperTypes().contains(EcorePackage.eINSTANCE.getEModelElement()));
+	}
+}
diff --git a/rpy/tests/org.eclipse.papyrus.interoperability.rpy.tests/src/org/eclipse/papyrus/interoperability/rpy/tests/tests/UMLIgnoringIdentifiedEqualityHelper.java b/rpy/tests/org.eclipse.papyrus.interoperability.rpy.tests/src/org/eclipse/papyrus/interoperability/rpy/tests/tests/UMLIgnoringIdentifiedEqualityHelper.java
new file mode 100755
index 0000000..5c969a8
--- /dev/null
+++ b/rpy/tests/org.eclipse.papyrus.interoperability.rpy.tests/src/org/eclipse/papyrus/interoperability/rpy/tests/tests/UMLIgnoringIdentifiedEqualityHelper.java
@@ -0,0 +1,177 @@
+/*****************************************************************************
+ * Copyright (c) 2016 CEA LIST and others.
+ * 
+ * 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:
+ *   CEA LIST - Initial API and implementation
+ *   
+ *****************************************************************************/
+
+package org.eclipse.papyrus.interoperability.rpy.tests.tests;
+
+import org.eclipse.emf.common.util.URI;
+import org.eclipse.emf.compare.utils.EqualityHelper;
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.emf.ecore.EcorePackage;
+import org.eclipse.emf.ecore.impl.DynamicEObjectImpl;
+import org.eclipse.papyrus.infra.constraints.constraints.TrueConstraint;
+import org.eclipse.uml2.uml.Comment;
+import org.eclipse.uml2.uml.ConnectorEnd;
+import org.eclipse.uml2.uml.Element;
+import org.eclipse.uml2.uml.NamedElement;
+import org.eclipse.uml2.uml.Package;
+import org.eclipse.uml2.uml.PackageImport;
+import org.eclipse.uml2.uml.Profile;
+import org.eclipse.uml2.uml.ProfileApplication;
+import org.eclipse.uml2.uml.TemplateBinding;
+import org.eclipse.uml2.uml.TemplateParameterSubstitution;
+import org.eclipse.uml2.uml.util.UMLUtil;
+
+import com.google.common.cache.LoadingCache;
+
+/**
+ * @author VL222926
+ *
+ */
+public class UMLIgnoringIdentifiedEqualityHelper extends EqualityHelper {
+
+	/**
+	 * Constructor.
+	 *
+	 * @param uriCache
+	 */
+	//TODO the cache is ignored from this implementation
+	public UMLIgnoringIdentifiedEqualityHelper(LoadingCache<EObject, URI> uriCache) {
+		super(uriCache);
+	}
+
+	/**
+	 * 
+	 * @see org.eclipse.emf.compare.utils.EqualityHelper#matchingValues(java.lang.Object, java.lang.Object)
+	 *
+	 * @param object1
+	 * @param object2
+	 * @return
+	 */
+	@Override
+	public boolean matchingValues(Object object1, Object object2) {
+		boolean result = super.matchingValues(object1, object2);
+		return result;
+	}
+
+	/**
+	 * @see org.eclipse.emf.compare.utils.EqualityHelper#matchingEObjects(org.eclipse.emf.ecore.EObject, org.eclipse.emf.ecore.EObject)
+	 *
+	 * @param object1
+	 * @param object2
+	 * @return
+	 */
+	@Override
+	protected boolean matchingEObjects(EObject object1, EObject object2) {
+		final EClass eClass1 = object1.eClass();
+		final EClass eClass2 = object2.eClass();
+
+		boolean result = false;
+		if (eClass1 == eClass2) {
+			if (object1.eIsProxy() && object2.eIsProxy()) {
+				result = super.matchingEObjects(object1, object2);
+			} else if (object1 instanceof NamedElement && object2 instanceof NamedElement) {
+				result = matchingNamedElement((NamedElement) object1, (NamedElement) object2);
+			} else if (object1 instanceof Element && object2 instanceof Element) {
+				result = matchingElement((Element) object1, (Element) object2);
+			} else if (object1.eClass().getEPackage() == EcorePackage.eINSTANCE) {
+				result = super.matchingEObjects(object1, object2);
+			} else {
+				// TODO ?
+				result = super.matchingEObjects(object1, object2);
+			}
+		}
+		return result;
+	}
+
+	/**
+	 * 
+	 * @param object1
+	 * @param object2
+	 * @return
+	 * 		{@link TrueConstraint} if the 2 named element have the same qualified name
+	 */
+	protected boolean matchingNamedElement(final NamedElement object1, final NamedElement object2) {
+		boolean result = false;
+		final String qn1 = ((NamedElement) object1).getQualifiedName();
+		final String qn2 = ((NamedElement) object2).getQualifiedName();
+		if (qn1 == null && qn2 == null) {
+			// when there is no name on a named element
+			result = matchingValues(object1.eContainer(), object2.eContainer());
+		}
+		if (null != qn1 && null != qn2) {
+			result = qn1.equals(qn2);
+		}
+		return result;
+	}
+
+	/**
+	 * 
+	 * @param object1
+	 * @param object2
+	 * @return
+	 * 
+	 */
+	protected boolean matchingElement(final Element object1, final Element object2) {
+		boolean result = false;
+		final EObject parent1 = object1.eContainer();
+		final EObject parent2 = object2.eContainer();
+
+		// we check owner
+		if (matchingValues(parent1, parent2)) {
+			if (object1 instanceof PackageImport && object2 instanceof PackageImport) {
+				final Package importedPackage1 = ((PackageImport) object1).getImportedPackage();
+				final Package importedPackage2 = ((PackageImport) object2).getImportedPackage();
+				result = importedPackage1.getQualifiedName().equals(importedPackage2.getQualifiedName());
+			} else if (object1 instanceof ProfileApplication && object2 instanceof ProfileApplication) {
+				final ProfileApplication prof1 = (ProfileApplication) object1;
+				final ProfileApplication prof2 = (ProfileApplication) object2;
+				final Profile p1 = prof1.getAppliedProfile();
+				final Profile p2 = prof2.getAppliedProfile();
+				final String p1Qname = p1.getQualifiedName();
+				final String p2Qname = p2.getQualifiedName();
+				if (p1Qname != null) {
+					result = p1Qname.equals(p2Qname);
+				}
+			} else if (object1 instanceof ConnectorEnd && object2 instanceof ConnectorEnd) {
+				final ConnectorEnd conn1 = (ConnectorEnd) object1;
+				final ConnectorEnd conn2 = (ConnectorEnd) object2;
+				final Element role1 = conn1.getRole();
+				final Element role2 = conn2.getRole();
+				boolean roleMatching = matchingValues(role1, role2);
+				if (roleMatching) {
+					final Element partWithPort1 = conn1.getPartWithPort();
+					final Element partWithPort2 = conn2.getPartWithPort();
+					result = matchingValues(partWithPort1, partWithPort2);
+				}
+				// }
+			} else if (object1 instanceof Comment && object2 instanceof Comment) {
+				final String body1 = ((Comment) object1).getBody();
+				final String body2 = ((Comment) object2).getBody();
+				if (body1 != null) {
+					result = body1.equals(body2);
+				}
+			} else if (object1 instanceof TemplateBinding && object2 instanceof TemplateBinding) {
+				// owner already checked
+				result = true;
+			} else if (object1 instanceof TemplateParameterSubstitution && object2 instanceof TemplateParameterSubstitution) {
+				// owner already checked
+				result = true;
+			} else {
+				// ?
+			}
+		}
+		return result;
+	}
+
+}